summaryrefslogtreecommitdiffstats
path: root/source/l
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2018-05-28 19:12:29 +0000
committer Eric Hameleers <alien@slackware.com>2018-05-31 23:39:35 +0200
commit646a5c1cbfd95873950a87b5f75d52073a967023 (patch)
treeb8b8d2ab3b0d432ea69ad1a64d1c789649d65020 /source/l
parentd31c50870d0bee042ce660e445c9294a59a3a65b (diff)
downloadcurrent-646a5c1cbfd95873950a87b5f75d52073a967023.tar.gz
current-646a5c1cbfd95873950a87b5f75d52073a967023.tar.xz
Mon May 28 19:12:29 UTC 201820180528191229
a/pkgtools-15.0-noarch-13.txz: Rebuilt. installpkg: default line length for --terselength is the number of columns. removepkg: added --terse mode. upgradepkg: default line length for --terselength is the number of columns. upgradepkg: accept -option in addition to --option. ap/vim-8.1.0026-x86_64-1.txz: Upgraded. d/bison-3.0.5-x86_64-1.txz: Upgraded. e/emacs-26.1-x86_64-1.txz: Upgraded. kde/kopete-4.14.3-x86_64-8.txz: Rebuilt. Recompiled against libidn-1.35. n/conntrack-tools-1.4.5-x86_64-1.txz: Upgraded. n/libnetfilter_conntrack-1.0.7-x86_64-1.txz: Upgraded. n/libnftnl-1.1.0-x86_64-1.txz: Upgraded. n/links-2.16-x86_64-2.txz: Rebuilt. Rebuilt to enable X driver for -g mode. n/lynx-2.8.9dev.19-x86_64-1.txz: Upgraded. n/nftables-0.8.5-x86_64-1.txz: Upgraded. n/p11-kit-0.23.11-x86_64-1.txz: Upgraded. n/ulogd-2.0.7-x86_64-1.txz: Upgraded. n/whois-5.3.1-x86_64-1.txz: Upgraded. xap/network-manager-applet-1.8.12-x86_64-1.txz: Upgraded. xap/vim-gvim-8.1.0026-x86_64-1.txz: Upgraded.
Diffstat (limited to 'source/l')
-rwxr-xr-xsource/l/ConsoleKit2/ConsoleKit2.SlackBuild24
-rw-r--r--source/l/ConsoleKit2/slack-desc6
-rw-r--r--source/l/FTBFSlog36
-rwxr-xr-xsource/l/GConf/GConf.SlackBuild15
-rw-r--r--source/l/GConf/slack-desc10
-rwxr-xr-xsource/l/LibRaw/LibRaw.SlackBuild40
-rw-r--r--source/l/LibRaw/slack-desc2
-rwxr-xr-xsource/l/M2Crypto/M2Crypto.SlackBuild51
-rw-r--r--source/l/M2Crypto/slack-desc10
-rwxr-xr-xsource/l/Mako/Mako.SlackBuild82
-rw-r--r--source/l/Mako/slack-desc19
-rwxr-xr-xsource/l/PyQt/PyQt.SlackBuild51
-rw-r--r--source/l/PyQt/slack-desc6
-rwxr-xr-xsource/l/QScintilla/QScintilla.SlackBuild57
-rw-r--r--source/l/QScintilla/QScintilla.url1
-rw-r--r--source/l/QScintilla/slack-desc12
-rwxr-xr-xsource/l/SDL2/SDL2.SlackBuild147
-rw-r--r--source/l/SDL2/slack-desc19
-rwxr-xr-xsource/l/SDL2_gfx/SDL2_gfx.SlackBuild149
-rw-r--r--source/l/SDL2_gfx/slack-desc19
-rwxr-xr-xsource/l/SDL2_image/SDL2_image.SlackBuild150
-rw-r--r--source/l/SDL2_image/slack-desc19
-rwxr-xr-xsource/l/SDL2_mixer/SDL2_mixer.SlackBuild146
-rw-r--r--source/l/SDL2_mixer/slack-desc19
-rwxr-xr-xsource/l/SDL2_net/SDL2_net.SlackBuild146
-rw-r--r--source/l/SDL2_net/slack-desc19
-rwxr-xr-xsource/l/SDL2_ttf/SDL2_ttf.SlackBuild146
-rw-r--r--source/l/SDL2_ttf/slack-desc19
-rwxr-xr-xsource/l/a52dec/a52dec.SlackBuild24
-rw-r--r--source/l/a52dec/slack-desc6
-rwxr-xr-xsource/l/aalib/aalib.SlackBuild27
-rw-r--r--source/l/aalib/slack-desc20
-rw-r--r--source/l/aalib/slack-desc.11line14
-rwxr-xr-xsource/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild20
-rw-r--r--source/l/adwaita-icon-theme/inherit-hicolor-theme.diff10
-rw-r--r--source/l/adwaita-icon-theme/slack-desc6
-rw-r--r--source/l/akonadi/akonadi-mariadb-10.2.patch65
-rwxr-xr-xsource/l/akonadi/akonadi.SlackBuild20
-rw-r--r--source/l/akonadi/mysql-global.conf.patch21
-rw-r--r--source/l/akonadi/slack-desc8
-rwxr-xr-xsource/l/alsa-lib/alsa-lib.SlackBuild47
-rw-r--r--source/l/alsa-lib/alsa-lib.fdba9e1bad8f769a6137e565471f0227f23a3132.diff102
-rw-r--r--source/l/alsa-lib/asound.conf.alsa1
-rw-r--r--source/l/alsa-lib/asound.conf.pulse (renamed from source/l/alsa-lib/asound.conf)0
-rw-r--r--source/l/alsa-lib/slack-desc8
-rw-r--r--source/l/alsa-lib/smixer.conf13
-rwxr-xr-xsource/l/alsa-oss/alsa-oss.SlackBuild35
-rw-r--r--source/l/alsa-oss/slack-desc10
-rwxr-xr-xsource/l/alsa-plugins/alsa-plugins.SlackBuild28
-rw-r--r--source/l/alsa-plugins/slack-desc4
-rw-r--r--source/l/apr-util/apr-util-mariadb-upstream.patch128
-rwxr-xr-xsource/l/apr-util/apr-util.SlackBuild40
-rw-r--r--source/l/apr-util/apr-util.url4
-rw-r--r--source/l/apr-util/slack-desc6
-rwxr-xr-xsource/l/apr/apr.SlackBuild24
-rw-r--r--source/l/apr/apr.url4
-rw-r--r--source/l/apr/slack-desc6
-rwxr-xr-xsource/l/aspell-dict/aspell-dict.SlackBuild79
-rw-r--r--source/l/aspell-dict/build/aspell-af1
-rw-r--r--source/l/aspell-dict/build/aspell-br1
-rw-r--r--source/l/aspell-dict/build/aspell-cy1
-rw-r--r--source/l/aspell-dict/build/aspell-el1
-rw-r--r--source/l/aspell-dict/build/aspell-fr1
-rw-r--r--source/l/aspell-dict/build/aspell-gv1
-rw-r--r--source/l/aspell-dict/build/aspell-hr1
-rw-r--r--source/l/aspell-dict/build/aspell-ia1
-rw-r--r--source/l/aspell-dict/build/aspell-is1
-rw-r--r--source/l/aspell-dict/build/aspell-mi1
-rw-r--r--source/l/aspell-dict/build/aspell-mk1
-rw-r--r--source/l/aspell-dict/build/aspell-ms1
-rw-r--r--source/l/aspell-dict/build/aspell-mt1
-rw-r--r--source/l/aspell-dict/build/aspell-nb1
-rw-r--r--source/l/aspell-dict/build/aspell-nl1
-rw-r--r--source/l/aspell-dict/build/aspell-nn1
-rw-r--r--source/l/aspell-dict/build/aspell-no1
-rw-r--r--source/l/aspell-dict/build/aspell-pt1
-rw-r--r--source/l/aspell-dict/build/aspell-rw1
-rw-r--r--source/l/aspell-dict/build/aspell-sl1
-rw-r--r--source/l/aspell-dict/build/aspell-sv1
-rw-r--r--source/l/aspell-dict/build/aspell-sw1
-rw-r--r--source/l/aspell-dict/build/aspell-tr1
-rw-r--r--source/l/aspell-dict/build/aspell-wa1
-rw-r--r--source/l/aspell-dict/build/aspell-zu1
-rw-r--r--source/l/aspell-dict/build/aspell5-be1
-rw-r--r--source/l/aspell-dict/build/aspell5-da1
-rw-r--r--source/l/aspell-dict/build/aspell5-fo1
-rw-r--r--source/l/aspell-dict/build/aspell5-gd1
-rw-r--r--source/l/aspell-dict/build/aspell5-hil1
-rw-r--r--source/l/aspell-dict/build/aspell5-id1
-rw-r--r--source/l/aspell-dict/build/aspell5-mg1
-rw-r--r--source/l/aspell-dict/build/aspell5-ny1
-rw-r--r--source/l/aspell-dict/build/aspell5-sc1
-rw-r--r--source/l/aspell-dict/build/aspell5-tet1
-rw-r--r--source/l/aspell-dict/build/aspell5-tl1
-rw-r--r--source/l/aspell-dict/build/aspell5-tn1
-rw-r--r--source/l/aspell-dict/build/aspell6-am1
-rw-r--r--source/l/aspell-dict/build/aspell6-az1
-rw-r--r--source/l/aspell-dict/build/aspell6-bn1
-rw-r--r--source/l/aspell-dict/build/aspell6-ca1
-rw-r--r--source/l/aspell-dict/build/aspell6-cs1
-rw-r--r--source/l/aspell-dict/build/aspell6-csb1
-rw-r--r--source/l/aspell-dict/build/aspell6-de1
-rw-r--r--source/l/aspell-dict/build/aspell6-et1
-rw-r--r--source/l/aspell-dict/build/aspell6-fi1
-rw-r--r--source/l/aspell-dict/build/aspell6-he1
-rw-r--r--source/l/aspell-dict/build/aspell6-hu1
-rw-r--r--source/l/aspell-dict/build/aspell6-it1
-rw-r--r--source/l/aspell-dict/build/aspell6-la1
-rw-r--r--source/l/aspell-dict/build/aspell6-lv1
-rw-r--r--source/l/aspell-dict/build/aspell6-mr1
-rw-r--r--source/l/aspell-dict/build/aspell6-nds1
-rw-r--r--source/l/aspell-dict/build/aspell6-or1
-rw-r--r--source/l/aspell-dict/build/aspell6-pa1
-rw-r--r--source/l/aspell-dict/build/aspell6-qu1
-rw-r--r--source/l/aspell-dict/build/aspell6-ru1
-rw-r--r--source/l/aspell-dict/build/aspell6-sr1
-rw-r--r--source/l/aspell-dict/build/aspell6-ta1
-rw-r--r--source/l/aspell-dict/build/aspell6-te1
-rw-r--r--source/l/aspell-dict/build/aspell6-vi1
-rw-r--r--source/l/aspell-dict/build/aspell6-yi1
-rwxr-xr-xsource/l/aspell-dict/build/increment-all-dict.sh12
-rwxr-xr-xsource/l/aspell-dict/build/increment.sh17
-rwxr-xr-xsource/l/aspell/aspell.SlackBuild33
-rw-r--r--source/l/aspell/slack-desc6
-rwxr-xr-xsource/l/at-spi2-atk/at-spi2-atk.SlackBuild23
-rw-r--r--source/l/at-spi2-atk/slack-desc2
-rwxr-xr-xsource/l/at-spi2-core/at-spi2-core.SlackBuild38
-rw-r--r--source/l/at-spi2-core/doinst.sh15
-rw-r--r--source/l/at-spi2-core/slack-desc4
-rwxr-xr-xsource/l/atk/atk.SlackBuild25
-rw-r--r--source/l/atk/slack-desc6
-rwxr-xr-xsource/l/atkmm/atkmm.SlackBuild20
-rw-r--r--source/l/atkmm/slack-desc4
-rwxr-xr-xsource/l/attica/attica.SlackBuild22
-rw-r--r--source/l/attica/slack-desc6
-rwxr-xr-xsource/l/audiofile/audiofile.SlackBuild30
-rw-r--r--source/l/audiofile/slack-desc8
-rwxr-xr-xsource/l/automoc4/automoc4.SlackBuild20
-rw-r--r--source/l/automoc4/slack-desc6
-rwxr-xr-xsource/l/babl/babl.SlackBuild25
-rw-r--r--source/l/babl/babl.url1
-rw-r--r--source/l/babl/slack-desc6
-rwxr-xr-xsource/l/boost/boost.SlackBuild128
-rw-r--r--source/l/boost/slack-desc10
-rwxr-xr-xsource/l/cairo/cairo.SlackBuild25
-rw-r--r--source/l/cairo/cairo.c088ba1faab9579efdaed7a524124901a17801b0.diff60
-rw-r--r--source/l/cairo/slack-desc8
-rwxr-xr-xsource/l/cairomm/cairomm.SlackBuild20
-rw-r--r--source/l/cairomm/slack-desc6
-rwxr-xr-xsource/l/chmlib/chmlib.SlackBuild27
-rw-r--r--source/l/chmlib/slack-desc8
-rwxr-xr-xsource/l/clucene/clucene.SlackBuild22
-rw-r--r--source/l/clucene/slack-desc10
-rwxr-xr-xsource/l/db42/db42.SlackBuild38
-rw-r--r--source/l/db42/slack-desc6
-rwxr-xr-xsource/l/db44/db44.SlackBuild42
-rw-r--r--source/l/db44/slack-desc6
-rwxr-xr-xsource/l/db48/db48.SlackBuild36
-rw-r--r--source/l/db48/db48.no.broken.doc.install.diff14
-rw-r--r--source/l/db48/slack-desc6
-rwxr-xr-xsource/l/dbus-glib/dbus-glib.SlackBuild21
-rw-r--r--source/l/dbus-glib/dbus-glib.url1
-rw-r--r--source/l/dbus-glib/slack-desc6
-rwxr-xr-xsource/l/dbus-python/dbus-python.SlackBuild43
-rw-r--r--source/l/dbus-python/dbus-python.url1
-rw-r--r--source/l/dbus-python/slack-desc6
-rwxr-xr-xsource/l/dconf-editor/dconf-editor.SlackBuild17
-rw-r--r--source/l/dconf-editor/slack-desc8
-rwxr-xr-xsource/l/dconf/dconf.SlackBuild17
-rw-r--r--source/l/dconf/slack-desc6
-rwxr-xr-xsource/l/desktop-file-utils/desktop-file-utils.SlackBuild26
-rw-r--r--source/l/desktop-file-utils/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch177
-rw-r--r--source/l/desktop-file-utils/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch28
-rw-r--r--source/l/desktop-file-utils/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch26
-rw-r--r--source/l/desktop-file-utils/slack-desc18
-rwxr-xr-xsource/l/djvulibre/djvulibre.SlackBuild21
-rw-r--r--source/l/djvulibre/slack-desc12
-rwxr-xr-xsource/l/ebook-tools/ebook-tools.SlackBuild16
-rw-r--r--source/l/ebook-tools/slack-desc6
-rwxr-xr-xsource/l/eigen2/eigen2.SlackBuild17
-rw-r--r--source/l/eigen2/slack-desc8
-rwxr-xr-xsource/l/eigen3/eigen3.SlackBuild21
-rw-r--r--source/l/eigen3/slack-desc4
-rw-r--r--source/l/elfutils/elfutils-0.163-unstrip-shf_info_link.patch91
-rw-r--r--source/l/elfutils/elfutils-portability-0.163.patch2108
-rwxr-xr-xsource/l/elfutils/elfutils.SlackBuild31
-rw-r--r--source/l/elfutils/slack-desc8
-rwxr-xr-xsource/l/enchant/enchant.SlackBuild28
-rw-r--r--source/l/enchant/slack-desc18
-rw-r--r--source/l/esound/esound-0.2.38-drain.patch11
-rw-r--r--source/l/esound/esound-0.2.38-fix-open-macro.patch10
-rw-r--r--source/l/esound/esound-0.2.41-libm.patch12
-rw-r--r--source/l/esound/esound-nospawn.patch12
-rwxr-xr-xsource/l/esound/esound.SlackBuild41
-rw-r--r--source/l/esound/remove-confusing-spew.patch11
-rw-r--r--source/l/esound/slack-desc8
-rwxr-xr-xsource/l/exiv2/exiv2.SlackBuild38
-rw-r--r--source/l/exiv2/exiv2.url1
-rwxr-xr-xsource/l/exiv2/paredown.sh51
-rw-r--r--source/l/exiv2/slack-desc8
-rwxr-xr-xsource/l/expat/expat.SlackBuild43
-rw-r--r--source/l/expat/slack-desc6
-rwxr-xr-xsource/l/ffmpeg/ffmpeg.SlackBuild275
-rw-r--r--source/l/ffmpeg/slack-desc19
-rwxr-xr-xsource/l/fftw/fftw.SlackBuild55
-rw-r--r--source/l/fftw/slack-desc10
-rwxr-xr-xsource/l/fluidsynth/fluidsynth.SlackBuild138
-rw-r--r--source/l/fluidsynth/fluidsynth.url1
-rw-r--r--source/l/fluidsynth/slack-desc19
-rw-r--r--source/l/freetype/doinst.sh14
-rwxr-xr-xsource/l/freetype/freetype.SlackBuild45
-rw-r--r--source/l/freetype/freetype.compile.both.subpixel.hinting.methods.diff13
-rw-r--r--source/l/freetype/freetype.csh19
-rw-r--r--source/l/freetype/freetype.sh19
-rw-r--r--source/l/freetype/slack-desc10
-rwxr-xr-xsource/l/fribidi/fribidi.SlackBuild25
-rw-r--r--source/l/fribidi/slack-desc10
-rwxr-xr-xsource/l/fuse/fuse.SlackBuild27
-rw-r--r--source/l/fuse/slack-desc8
-rwxr-xr-xsource/l/gamin/gamin.SlackBuild27
-rw-r--r--source/l/gamin/slack-desc8
-rwxr-xr-xsource/l/gc/gc.SlackBuild48
-rw-r--r--source/l/gc/noelision.patch127
-rw-r--r--source/l/gc/refer_to_GC_setup_mark_lock_only_in_PARALLEL_MARK_code.patch26
-rw-r--r--source/l/gc/slack-desc8
-rwxr-xr-xsource/l/gcr/gcr.SlackBuild13
-rw-r--r--source/l/gcr/slack-desc2
-rwxr-xr-xsource/l/gd/gd.SlackBuild21
-rw-r--r--source/l/gd/slack-desc14
-rwxr-xr-xsource/l/gdbm/gdbm.SlackBuild36
-rw-r--r--source/l/gdbm/gdbm.zeroheaders.patch36
-rw-r--r--source/l/gdbm/slack-desc6
-rwxr-xr-xsource/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild22
-rw-r--r--source/l/gdk-pixbuf2/slack-desc8
-rw-r--r--source/l/gdk-pixbuf2/update-gdk-pixbuf-loaders16
-rwxr-xr-xsource/l/gegl/gegl.SlackBuild30
-rw-r--r--source/l/gegl/slack-desc6
-rwxr-xr-xsource/l/gexiv2/gexiv2.SlackBuild113
-rw-r--r--source/l/gexiv2/slack-desc19
-rwxr-xr-xsource/l/giflib/giflib.SlackBuild29
-rw-r--r--source/l/giflib/slack-desc8
-rwxr-xr-xsource/l/glade3/glade3.SlackBuild14
-rw-r--r--source/l/glade3/slack-desc6
-rwxr-xr-xsource/l/glib-networking/glib-networking.SlackBuild35
-rw-r--r--source/l/glib-networking/slack-desc6
-rw-r--r--source/l/glib/glib-1.2.10-autotools.patch1112
-rw-r--r--source/l/glib/glib-1.2.10-format.patch29
-rw-r--r--source/l/glib/glib-1.2.10-gcc34.patch11
-rw-r--r--source/l/glib/glib-1.2.10-gcc5.patch11
-rw-r--r--source/l/glib/glib-1.2.10-isowarning.patch16
-rw-r--r--source/l/glib/glib-1.2.10-multilib.patch31
-rw-r--r--source/l/glib/glib-1.2.10-no_undefined.patch48
-rw-r--r--source/l/glib/glib-1.2.10-underquoted.patch11
-rw-r--r--source/l/glib/glib-1.2.10-unused-dep.patch13
-rwxr-xr-xsource/l/glib/glib.SlackBuild58
-rw-r--r--source/l/glib/glib1.2_1.2.10-17.diff19776
-rw-r--r--source/l/glib/slack-desc6
-rw-r--r--source/l/glib2/0001-GDBusProxy-Fix-a-memory-leak-during-initialization.patch25
-rwxr-xr-xsource/l/glib2/glib2.SlackBuild20
-rw-r--r--source/l/glib2/slack-desc6
-rw-r--r--source/l/glibc/doinst.sh-glibc5
-rw-r--r--source/l/glibc/glibc-2.10-dns-no-gethostbyname4.diff26
-rw-r--r--source/l/glibc/glibc-c-utf8-locale.patch53
-rwxr-xr-xsource/l/glibc/glibc.SlackBuild47
-rw-r--r--source/l/glibc/glibc.ldd.trace.through.dynamic.linker.diff49
-rw-r--r--source/l/glibc/glibc.locale.no-archive.diff14
-rw-r--r--source/l/glibc/glibc.make-3.82.diff28
-rw-r--r--source/l/glibc/glibc.pkey_get.56170e0.diff28
-rw-r--r--source/l/glibc/glibc.revert.to.fix.build.breakages.diff13
-rw-r--r--source/l/glibc/is_IS.diff19
-rw-r--r--source/l/glibc/slack-desc.glibc10
-rw-r--r--source/l/glibc/slack-desc.glibc-debug14
-rw-r--r--source/l/glibc/slack-desc.glibc-i18n6
-rw-r--r--source/l/glibc/slack-desc.glibc-profile8
-rw-r--r--source/l/glibc/slack-desc.glibc-solibs6
-rw-r--r--source/l/glibc/slack-desc.glibc-solibs-linuxthreads11
-rwxr-xr-xsource/l/glibmm/glibmm.SlackBuild18
-rw-r--r--source/l/glibmm/slack-desc4
-rwxr-xr-xsource/l/gmime/gmime.SlackBuild27
-rw-r--r--source/l/gmime/slack-desc6
-rwxr-xr-xsource/l/gmm/gmm.SlackBuild20
-rw-r--r--source/l/gmm/gmm.info2
-rw-r--r--source/l/gmm/gmm.url2
-rw-r--r--source/l/gmm/slack-desc12
-rwxr-xr-xsource/l/gmp/gmp.SlackBuild21
-rw-r--r--source/l/gmp/slack-desc8
-rwxr-xr-xsource/l/gnome-keyring/gnome-keyring.SlackBuild17
-rw-r--r--source/l/gnome-keyring/slack-desc8
-rwxr-xr-xsource/l/gnome-themes-standard/gnome-themes-standard.SlackBuild17
-rw-r--r--source/l/gnome-themes-standard/slack-desc6
-rwxr-xr-xsource/l/gnu-efi/gnu-efi.SlackBuild17
-rw-r--r--source/l/gnu-efi/gnu-efi.url1
-rw-r--r--source/l/gnu-efi/slack-desc6
-rwxr-xr-xsource/l/gobject-introspection/gobject-introspection.SlackBuild22
-rw-r--r--source/l/gobject-introspection/slack-desc8
-rwxr-xr-xsource/l/grantlee/grantlee.SlackBuild22
-rw-r--r--source/l/grantlee/slack-desc8
-rwxr-xr-xsource/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild15
-rw-r--r--source/l/gsettings-desktop-schemas/slack-desc6
-rwxr-xr-xsource/l/gsl/gsl.SlackBuild20
-rw-r--r--source/l/gsl/slack-desc2
-rwxr-xr-xsource/l/gst-plugins-base/gst-plugins-base.SlackBuild26
-rw-r--r--source/l/gst-plugins-base/gst-plugins-base.url1
-rw-r--r--source/l/gst-plugins-base/slack-desc10
-rw-r--r--source/l/gst-plugins-base0/gst-plugins-base-0.10.36-gcc_4_9_0_i686-1.patch37
-rwxr-xr-xsource/l/gst-plugins-base0/gst-plugins-base0.SlackBuild36
-rw-r--r--source/l/gst-plugins-base0/slack-desc10
-rwxr-xr-xsource/l/gst-plugins-good/gst-plugins-good.SlackBuild25
-rw-r--r--source/l/gst-plugins-good/gst-plugins-good.url1
-rw-r--r--source/l/gst-plugins-good/slack-desc6
-rwxr-xr-xsource/l/gst-plugins-good0/gst-plugins-good0.SlackBuild25
-rw-r--r--source/l/gst-plugins-good0/slack-desc6
-rwxr-xr-xsource/l/gst-plugins-libav/gst-plugins-libav.SlackBuild137
-rw-r--r--source/l/gst-plugins-libav/gst-plugins-libav.url1
-rwxr-xr-xsource/l/gst-plugins-libav/paredown.sh61
-rw-r--r--source/l/gst-plugins-libav/slack-desc19
-rwxr-xr-xsource/l/gstreamer/gstreamer.SlackBuild25
-rw-r--r--source/l/gstreamer/gstreamer.url1
-rw-r--r--source/l/gstreamer/slack-desc6
-rw-r--r--source/l/gstreamer0/gstreamer-0.10.36-bison3.patch31
-rwxr-xr-xsource/l/gstreamer0/gstreamer0.SlackBuild33
-rw-r--r--source/l/gstreamer0/slack-desc6
-rw-r--r--source/l/gtk+/gtk+-1.2.10-ahiguti.patch557
-rw-r--r--source/l/gtk+/gtk+-1.2.10-alignment.patch29
-rw-r--r--source/l/gtk+/gtk+-1.2.10-autotools.patch4374
-rw-r--r--source/l/gtk+/gtk+-1.2.10-bellvolume.patch11
-rw-r--r--source/l/gtk+/gtk+-1.2.10-clistfocusrow.patch30
-rw-r--r--source/l/gtk+/gtk+-1.2.10-ctext.patch140
-rw-r--r--source/l/gtk+/gtk+-1.2.10-deletedir.patch188
-rw-r--r--source/l/gtk+/gtk+-1.2.10-dndorder.patch30
-rw-r--r--source/l/gtk+/gtk+-1.2.10-encoding.patch298
-rw-r--r--source/l/gtk+/gtk+-1.2.10-expose.patch42
-rw-r--r--source/l/gtk+/gtk+-1.2.10-focus.patch17
-rw-r--r--source/l/gtk+/gtk+-1.2.10-fontwarning.patch24
-rw-r--r--source/l/gtk+/gtk+-1.2.10-format.patch20
-rw-r--r--source/l/gtk+/gtk+-1.2.10-gtkgdkdep.patch13
-rw-r--r--source/l/gtk+/gtk+-1.2.10-kpenter.patch52
-rw-r--r--source/l/gtk+/gtk+-1.2.10-libtool.patch52
-rw-r--r--source/l/gtk+/gtk+-1.2.10-localecrash.patch20
-rw-r--r--source/l/gtk+/gtk+-1.2.10-missingchar.patch33
-rw-r--r--source/l/gtk+/gtk+-1.2.10-multilib.patch52
-rw-r--r--source/l/gtk+/gtk+-1.2.10-no_undefined.patch20
-rw-r--r--source/l/gtk+/gtk+-1.2.10-pixmapref.patch14
-rw-r--r--source/l/gtk+/gtk+-1.2.10-ppc64.patch11
-rw-r--r--source/l/gtk+/gtk+-1.2.10-themeswitch.patch88
-rw-r--r--source/l/gtk+/gtk+-1.2.10-troughpaint.patch19
-rw-r--r--source/l/gtk+/gtk+-1.2.10-ukfont.patch27
-rw-r--r--source/l/gtk+/gtk+-1.2.10-unused-deps.patch28
-rw-r--r--source/l/gtk+/gtk+-1.2.10-utf8fontset.patch38
-rw-r--r--source/l/gtk+/gtk+-1.2.8-wrap-alnum.patch16
-rw-r--r--source/l/gtk+/gtk+-underquoted.patch11
-rwxr-xr-xsource/l/gtk+/gtk+.SlackBuild84
-rw-r--r--source/l/gtk+/gtk+1.2_1.2.10-18.diff29031
-rw-r--r--source/l/gtk+/slack-desc6
-rwxr-xr-xsource/l/gtk+2/gtk+2.SlackBuild33
-rw-r--r--source/l/gtk+2/slack-desc8
-rwxr-xr-xsource/l/gtk+3/gtk+3.SlackBuild28
-rw-r--r--source/l/gtk+3/slack-desc8
-rwxr-xr-xsource/l/gtkmm2/gtkmm2.SlackBuild22
-rw-r--r--source/l/gtkmm2/slack-desc6
-rwxr-xr-xsource/l/gtkmm3/gtkmm3.SlackBuild22
-rw-r--r--source/l/gtkmm3/slack-desc6
-rwxr-xr-xsource/l/gtkspell/gtkspell.SlackBuild23
-rw-r--r--source/l/gtkspell/slack-desc8
-rwxr-xr-xsource/l/gvfs/gvfs.SlackBuild32
-rw-r--r--source/l/gvfs/slack-desc8
-rwxr-xr-xsource/l/harfbuzz/harfbuzz.SlackBuild26
-rw-r--r--source/l/harfbuzz/slack-desc6
-rw-r--r--source/l/herqq/slack-desc19
-rwxr-xr-xsource/l/hicolor-icon-theme/hicolor-icon-theme.SlackBuild19
-rw-r--r--source/l/hicolor-icon-theme/slack-desc12
-rwxr-xr-xsource/l/hunspell/hunspell.SlackBuild29
-rw-r--r--source/l/hunspell/slack-desc6
-rwxr-xr-xsource/l/icon-naming-utils/icon-naming-utils.SlackBuild18
-rwxr-xr-xsource/l/icu4c/icu4c.SlackBuild21
-rw-r--r--source/l/icu4c/icu4c.closenull.patch48
-rw-r--r--source/l/icu4c/icu4c.url1
-rw-r--r--source/l/icu4c/slack-desc6
-rwxr-xr-xsource/l/id3lib/id3lib.SlackBuild171
-rw-r--r--source/l/id3lib/patches/id3lib.c_wrapper.patch58
-rw-r--r--source/l/id3lib/patches/id3lib.cppheaders.patch22
-rw-r--r--source/l/id3lib/patches/id3lib.manpages.patch198
-rw-r--r--source/l/id3lib/patches/id3lib.mkstemp.patch54
-rw-r--r--source/l/id3lib/patches/id3lib.nullpointer_check.patch12
-rw-r--r--source/l/id3lib/patches/id3lib.utf8_writing.patch38
-rw-r--r--source/l/id3lib/patches/id3lib.vbr_stack_smash.patch19
-rw-r--r--source/l/id3lib/slack-desc19
-rwxr-xr-xsource/l/ilmbase/ilmbase.SlackBuild27
-rw-r--r--source/l/ilmbase/slack-desc8
-rw-r--r--source/l/imagemagick/doinst.sh17
-rwxr-xr-xsource/l/imagemagick/imagemagick.SlackBuild225
-rw-r--r--source/l/imagemagick/policy.xml.diff30
-rw-r--r--source/l/imagemagick/slack-desc19
-rwxr-xr-xsource/l/iso-codes/iso-codes.SlackBuild16
-rwxr-xr-xsource/l/jansson/jansson.SlackBuild131
-rw-r--r--source/l/jansson/slack-desc19
-rwxr-xr-xsource/l/jasper/jasper.SlackBuild116
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-CVE-2008-3520.patch928
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-CVE-2008-3522.patch14
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-CVE-2011-4516-CVE-2011-4517-CERT-VU-887409.patch23
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-Coverity-BAD_SIZEOF.patch17
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-Coverity-CHECKED_RETURN.patch141
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-Coverity-FORWARD_NULL.patch44
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-Coverity-NULL_RETURNS.patch61
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-Coverity-RESOURCE_LEAK.patch202
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-Coverity-UNREACHABLE.patch37
-rw-r--r--source/l/jasper/patches/jasper-1.900.1-Coverity-UNUSED_VALUE.patch41
-rw-r--r--source/l/jasper/patches/jasper-CVE-2014-8137.patch57
-rw-r--r--source/l/jasper/patches/jasper-CVE-2014-8138.patch14
-rw-r--r--source/l/jasper/patches/jasper-CVE-2014-8157.patch12
-rw-r--r--source/l/jasper/patches/jasper-CVE-2014-8158.patch329
-rw-r--r--source/l/jasper/patches/jasper-CVE-2014-9029.patch29
-rw-r--r--source/l/jasper/patches/jpc_dec.c.patch18
-rw-r--r--source/l/jasper/patches/patch-libjasper-stepsizes-overflow.diff14
-rw-r--r--source/l/jasper/slack-desc8
-rwxr-xr-xsource/l/jemalloc/jemalloc.SlackBuild37
-rw-r--r--source/l/jemalloc/slack-desc4
-rwxr-xr-xsource/l/js185/js185.SlackBuild23
-rw-r--r--source/l/js185/slack-desc6
-rwxr-xr-xsource/l/json-c/json-c.SlackBuild29
-rw-r--r--source/l/json-c/slack-desc12
-rw-r--r--source/l/json-c/unset-vars-build-fix.diff16
-rwxr-xr-xsource/l/json-glib/json-glib.SlackBuild147
-rw-r--r--source/l/json-glib/slack-desc (renamed from source/l/libmowgli/slack-desc)22
-rwxr-xr-xsource/l/judy/judy.SlackBuild28
-rw-r--r--source/l/judy/slack-desc6
-rwxr-xr-xsource/l/keybinder/keybinder.SlackBuild17
-rw-r--r--source/l/keybinder/slack-desc8
-rwxr-xr-xsource/l/keyutils/keyutils.SlackBuild16
-rw-r--r--source/l/keyutils/slack-desc8
-rwxr-xr-xsource/l/lame/lame.SlackBuild162
-rw-r--r--source/l/lame/slack-desc19
-rwxr-xr-xsource/l/lcms/lcms.SlackBuild30
-rw-r--r--source/l/lcms/slack-desc6
-rwxr-xr-xsource/l/lcms2/lcms2.SlackBuild23
-rw-r--r--source/l/lcms2/slack-desc8
-rw-r--r--source/l/libaio/libaio-0.3.109.tar.sign8
-rwxr-xr-xsource/l/libaio/libaio.SlackBuild20
-rw-r--r--source/l/libaio/libaio.url1
-rw-r--r--source/l/libaio/slack-desc8
-rwxr-xr-xsource/l/libao/libao.SlackBuild34
-rw-r--r--source/l/libao/slack-desc10
-rwxr-xr-xsource/l/libarchive/libarchive.SlackBuild20
-rw-r--r--source/l/libarchive/slack-desc10
-rwxr-xr-xsource/l/libart_lgpl/libart_lgpl.SlackBuild27
-rw-r--r--source/l/libart_lgpl/slack-desc10
-rwxr-xr-xsource/l/libasyncns/libasyncns.SlackBuild20
-rw-r--r--source/l/libasyncns/slack-desc4
-rwxr-xr-xsource/l/libatasmart/libatasmart.SlackBuild18
-rw-r--r--source/l/libatasmart/slack-desc8
-rwxr-xr-xsource/l/libbluedevil/libbluedevil.SlackBuild22
-rw-r--r--source/l/libbluedevil/slack-desc6
-rwxr-xr-xsource/l/libbluray/libbluray.SlackBuild118
-rw-r--r--source/l/libbluray/slack-desc19
-rwxr-xr-xsource/l/libcaca/libcaca.SlackBuild37
-rw-r--r--source/l/libcaca/slack-desc6
-rwxr-xr-xsource/l/libcanberra/libcanberra.SlackBuild21
-rw-r--r--source/l/libcanberra/slack-desc6
-rwxr-xr-xsource/l/libcap-ng/libcap-ng.SlackBuild23
-rw-r--r--source/l/libcap-ng/python3.patch12
-rw-r--r--source/l/libcap-ng/slack-desc10
-rw-r--r--source/l/libcap/libcap-2.22.tar.bz2.sign8
-rw-r--r--source/l/libcap/libcap-2.25.tar.sign17
-rwxr-xr-xsource/l/libcap/libcap.SlackBuild30
-rw-r--r--source/l/libcap/slack-desc6
-rwxr-xr-xsource/l/libcddb/libcddb.SlackBuild33
-rw-r--r--source/l/libcddb/slack-desc8
-rwxr-xr-xsource/l/libcdio-paranoia/libcdio-paranoia.SlackBuild30
-rw-r--r--source/l/libcdio-paranoia/slack-desc6
-rwxr-xr-xsource/l/libcdio/libcdio.SlackBuild29
-rw-r--r--source/l/libcdio/libcdio.url1
-rw-r--r--source/l/libcdio/slack-desc10
-rwxr-xr-xsource/l/libclc/fetch-libclc.sh47
-rwxr-xr-xsource/l/libclc/libclc.SlackBuild (renamed from source/l/libmsn/libmsn.SlackBuild)82
-rw-r--r--source/l/libclc/slack-desc19
-rw-r--r--source/l/libcroco/898e3a8c8c03.patch58
-rwxr-xr-xsource/l/libcroco/libcroco.SlackBuild35
-rw-r--r--source/l/libcroco/slack-desc2
-rwxr-xr-xsource/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild22
-rw-r--r--source/l/libdbusmenu-qt/slack-desc8
-rwxr-xr-xsource/l/libdiscid/libdiscid.SlackBuild24
-rw-r--r--source/l/libdiscid/slack-desc6
-rwxr-xr-xsource/l/libdvdnav/libdvdnav.SlackBuild32
-rw-r--r--source/l/libdvdnav/slack-desc4
-rwxr-xr-xsource/l/libdvdread/libdvdread.SlackBuild32
-rw-r--r--source/l/libdvdread/libdvdread.url1
-rw-r--r--source/l/libdvdread/slack-desc10
-rwxr-xr-xsource/l/libedit/libedit.SlackBuild127
-rw-r--r--source/l/libedit/slack-desc19
-rwxr-xr-xsource/l/libevent/libevent.SlackBuild18
-rw-r--r--source/l/libevent/slack-desc12
-rwxr-xr-xsource/l/libexif/libexif.SlackBuild30
-rw-r--r--source/l/libexif/slack-desc8
-rwxr-xr-xsource/l/libfakekey/libfakekey.SlackBuild32
-rw-r--r--source/l/libfakekey/slack-desc8
-rwxr-xr-xsource/l/libffi/libffi.SlackBuild28
-rw-r--r--source/l/libffi/slack-desc10
-rwxr-xr-xsource/l/libglade/libglade.SlackBuild32
-rw-r--r--source/l/libglade/slack-desc10
-rwxr-xr-xsource/l/libgnome-keyring/libgnome-keyring.SlackBuild21
-rw-r--r--source/l/libgnome-keyring/slack-desc8
-rwxr-xr-xsource/l/libgphoto2/libgphoto2.SlackBuild33
-rw-r--r--source/l/libgphoto2/slack-desc6
-rwxr-xr-xsource/l/libgpod/libgpod.SlackBuild21
-rw-r--r--source/l/libgpod/slack-desc8
-rwxr-xr-xsource/l/libgsf/libgsf.SlackBuild21
-rw-r--r--source/l/libgsf/slack-desc6
-rwxr-xr-xsource/l/libical/libical.SlackBuild23
-rw-r--r--source/l/libical/slack-desc8
-rwxr-xr-xsource/l/libid3tag/libid3tag.SlackBuild29
-rw-r--r--source/l/libid3tag/slack-desc6
-rwxr-xr-xsource/l/libidl/libidl.SlackBuild30
-rw-r--r--source/l/libidl/slack-desc6
-rwxr-xr-xsource/l/libidn/libidn.SlackBuild32
-rw-r--r--source/l/libidn/slack-desc6
-rwxr-xr-xsource/l/libidn2/libidn2.SlackBuild (renamed from source/l/libmcs/libmcs.SlackBuild)85
-rw-r--r--source/l/libidn2/slack-desc19
-rwxr-xr-xsource/l/libieee1284/libieee1284.SlackBuild29
-rw-r--r--source/l/libieee1284/slack-desc8
-rw-r--r--source/l/libimobiledevice/02a0e03e24bc96bba2e5ea2438c30baf803fd137.patch89
-rwxr-xr-xsource/l/libimobiledevice/libimobiledevice.SlackBuild35
-rw-r--r--source/l/libimobiledevice/libimobiledevice.use_tlsv1_instead_of_sslv3.diff13
-rw-r--r--source/l/libimobiledevice/slack-desc8
-rwxr-xr-xsource/l/libiodbc/libiodbc.SlackBuild21
-rw-r--r--source/l/libiodbc/slack-desc8
-rwxr-xr-xsource/l/libjpeg-turbo/libjpeg-turbo.SlackBuild25
-rw-r--r--source/l/libjpeg-turbo/slack-desc18
-rwxr-xr-xsource/l/libkarma/libkarma.SlackBuild22
-rw-r--r--source/l/libkarma/slack-desc6
-rwxr-xr-xsource/l/liblastfm/liblastfm.SlackBuild19
-rw-r--r--source/l/liblastfm/slack-desc6
-rwxr-xr-xsource/l/libmad/libmad.SlackBuild32
-rw-r--r--source/l/libmad/slack-desc12
-rwxr-xr-xsource/l/libmcrypt/libmcrypt.SlackBuild29
-rw-r--r--source/l/libmcrypt/slack-desc6
-rw-r--r--source/l/libmcs/slack-desc19
-rwxr-xr-xsource/l/libmng/libmng.SlackBuild23
-rw-r--r--source/l/libmng/slack-desc12
-rwxr-xr-xsource/l/libmpc/libmpc.SlackBuild33
-rw-r--r--source/l/libmpc/slack-desc10
-rw-r--r--source/l/libmsn/libmsn.gcc47.diff10
-rw-r--r--source/l/libmsn/slack-desc19
-rwxr-xr-xsource/l/libmtp/libmtp.SlackBuild45
-rw-r--r--source/l/libmtp/slack-desc14
-rwxr-xr-xsource/l/libnih/libnih.SlackBuild17
-rw-r--r--source/l/libnih/slack-desc8
-rwxr-xr-xsource/l/libnjb/libnjb.SlackBuild33
-rw-r--r--source/l/libnjb/slack-desc10
-rwxr-xr-xsource/l/libnl/libnl.SlackBuild23
-rw-r--r--source/l/libnl/slack-desc6
-rwxr-xr-xsource/l/libnl3/libnl3.SlackBuild22
-rw-r--r--source/l/libnl3/slack-desc6
-rwxr-xr-xsource/l/libnotify/libnotify.SlackBuild42
-rw-r--r--source/l/libnotify/slack-desc6
-rwxr-xr-xsource/l/libodfgen/libodfgen.SlackBuild21
-rw-r--r--source/l/libodfgen/slack-desc6
-rwxr-xr-xsource/l/libogg/libogg.SlackBuild35
-rw-r--r--source/l/libogg/slack-desc8
-rwxr-xr-xsource/l/liboggz/liboggz.SlackBuild34
-rw-r--r--source/l/liboggz/slack-desc12
-rwxr-xr-xsource/l/liboil/liboil.SlackBuild29
-rw-r--r--source/l/liboil/slack-desc10
-rwxr-xr-xsource/l/libpcap/libpcap.SlackBuild24
-rw-r--r--source/l/libpcap/slack-desc14
-rwxr-xr-xsource/l/libplist/libplist.SlackBuild33
-rw-r--r--source/l/libplist/slack-desc10
-rwxr-xr-xsource/l/libpng/libpng.SlackBuild21
-rw-r--r--source/l/libpng/slack-desc12
-rwxr-xr-xsource/l/libproxy/libproxy.SlackBuild29
-rw-r--r--source/l/libproxy/libproxy.url2
-rw-r--r--source/l/libproxy/slack-desc12
-rw-r--r--source/l/libraw1394/libraw1394-2.1.1.tar.sign17
-rw-r--r--source/l/libraw1394/libraw1394-2.1.2.tar.sign17
-rwxr-xr-xsource/l/libraw1394/libraw1394.SlackBuild22
-rw-r--r--source/l/libraw1394/slack-desc8
-rwxr-xr-xsource/l/librevenge/librevenge.SlackBuild24
-rw-r--r--source/l/librevenge/slack-desc6
-rwxr-xr-xsource/l/librsvg/librsvg.SlackBuild27
-rw-r--r--source/l/librsvg/slack-desc6
-rwxr-xr-xsource/l/libsamplerate/libsamplerate.SlackBuild35
-rw-r--r--source/l/libsamplerate/slack-desc12
-rwxr-xr-xsource/l/libsecret/libsecret.SlackBuild15
-rw-r--r--source/l/libsecret/slack-desc6
-rwxr-xr-xsource/l/libsigc++/libsigc++.SlackBuild20
-rw-r--r--source/l/libsigc++/slack-desc4
-rwxr-xr-xsource/l/libsigsegv/libsigsegv.SlackBuild43
-rw-r--r--source/l/libsigsegv/slack-desc10
-rwxr-xr-xsource/l/libsndfile/libsndfile.SlackBuild24
-rw-r--r--source/l/libsndfile/slack-desc8
-rwxr-xr-xsource/l/libsodium/libsodium.SlackBuild146
-rw-r--r--source/l/libsodium/slack-desc19
-rwxr-xr-xsource/l/libsoup/libsoup.SlackBuild24
-rw-r--r--source/l/libsoup/slack-desc8
-rwxr-xr-xsource/l/libspectre/libspectre.SlackBuild28
-rw-r--r--source/l/libspectre/slack-desc8
-rwxr-xr-xsource/l/libssh/libssh.SlackBuild18
-rw-r--r--source/l/libssh/slack-desc8
-rwxr-xr-xsource/l/libssh2/libssh2.SlackBuild18
-rw-r--r--source/l/libssh2/slack-desc8
-rwxr-xr-xsource/l/libtasn1/libtasn1.SlackBuild19
-rw-r--r--source/l/libtasn1/slack-desc8
-rwxr-xr-xsource/l/libtermcap/libtermcap.SlackBuild87
-rw-r--r--source/l/libtermcap/slack-desc19
-rw-r--r--source/l/libtermcap/termcap-compat_1.2.3.diff12
-rw-r--r--source/l/libtermcap/termcap-compat_1.2.3.dsc22
-rw-r--r--source/l/libtermcap/termcap.bufsize.diff11
-rw-r--r--source/l/libtermcap/termcap.h.diff29
-rw-r--r--source/l/libtheora/libtheora-1.1.1-libpng16.patch17
-rw-r--r--source/l/libtheora/libtheora-1.1.1.latex.patch54
-rwxr-xr-xsource/l/libtheora/libtheora.SlackBuild32
-rw-r--r--source/l/libtheora/slack-desc8
-rw-r--r--source/l/libtiff/libtiff-make-check.patch26
-rwxr-xr-xsource/l/libtiff/libtiff.SlackBuild29
-rw-r--r--source/l/libtiff/slack-desc10
-rwxr-xr-xsource/l/libunistring/libunistring.SlackBuild24
-rw-r--r--source/l/libunistring/slack-desc8
-rwxr-xr-xsource/l/libunwind/libunwind.SlackBuild161
-rw-r--r--source/l/libunwind/slack-desc19
-rwxr-xr-xsource/l/libusb-compat/libusb-compat.SlackBuild23
-rw-r--r--source/l/libusb-compat/slack-desc10
-rwxr-xr-xsource/l/libusb/libusb.SlackBuild37
-rw-r--r--source/l/libusb/slack-desc10
-rwxr-xr-xsource/l/libusbmuxd/libusbmuxd.SlackBuild27
-rw-r--r--source/l/libusbmuxd/slack-desc8
-rwxr-xr-xsource/l/libvisio/libvisio.SlackBuild27
-rw-r--r--source/l/libvisio/slack-desc2
-rwxr-xr-xsource/l/libvisual-plugins/libvisual-plugins.SlackBuild28
-rw-r--r--source/l/libvisual-plugins/slack-desc12
-rwxr-xr-xsource/l/libvisual/libvisual.SlackBuild29
-rw-r--r--source/l/libvisual/slack-desc8
-rwxr-xr-xsource/l/libvncserver/libvncserver.SlackBuild28
-rw-r--r--source/l/libvncserver/slack-desc6
-rwxr-xr-xsource/l/libvorbis/libvorbis.SlackBuild32
-rw-r--r--source/l/libvorbis/slack-desc10
-rwxr-xr-xsource/l/libvpx/libvpx.SlackBuild30
-rw-r--r--source/l/libvpx/slack-desc4
-rwxr-xr-xsource/l/libwebp/libwebp.SlackBuild173
-rw-r--r--source/l/libwebp/slack-desc19
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2004-0941.patch17
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2006-3376.patch27
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2007-0455.patch11
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2007-2756.patch16
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3472.patch61
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3473.patch13
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3477.patch38
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2009-3546.patch13
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2015-0848+CVE-2015-4588.patch118
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2015-4695.patch56
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2015-4696.patch23
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2016-10167.patch30
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2016-10168.patch14
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2016-9011.patch36
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2016-9317.patch21
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-CVE-2017-6362.patch32
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-fallbackfont.patch18
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-pixbufloaderdir.patch14
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-reducesymbols.patch520
-rw-r--r--source/l/libwmf/libwmf-0.2.8.4-useafterfree.patch10
-rwxr-xr-xsource/l/libwmf/libwmf.SlackBuild102
-rw-r--r--source/l/libwmf/slack-desc6
-rw-r--r--source/l/libwmf/slack-desc-docs19
-rwxr-xr-xsource/l/libwnck/libwnck.SlackBuild23
-rw-r--r--source/l/libwnck/slack-desc8
-rwxr-xr-xsource/l/libwpd/libwpd.SlackBuild24
-rw-r--r--source/l/libwpd/slack-desc6
-rwxr-xr-xsource/l/libwpg/libwpg.SlackBuild20
-rw-r--r--source/l/libwpg/slack-desc2
-rwxr-xr-xsource/l/libxklavier/libxklavier.SlackBuild29
-rw-r--r--source/l/libxklavier/slack-desc8
-rw-r--r--source/l/libxml2/0001-Fix-attribute-decoding-during-XML-schema-validation.diff67
-rwxr-xr-xsource/l/libxml2/libxml2.SlackBuild60
-rw-r--r--source/l/libxml2/slack-desc14
-rwxr-xr-xsource/l/libxslt/libxslt.SlackBuild32
-rw-r--r--source/l/libxslt/libxslt.xsltMaxDepth.diff11
-rw-r--r--source/l/libxslt/slack-desc8
-rwxr-xr-xsource/l/libyaml/libyaml.SlackBuild27
-rw-r--r--source/l/libyaml/slack-desc6
-rwxr-xr-xsource/l/libzip/libzip.SlackBuild69
-rw-r--r--source/l/libzip/slack-desc12
-rwxr-xr-xsource/l/loudmouth/loudmouth.SlackBuild24
-rw-r--r--source/l/loudmouth/slack-desc10
-rwxr-xr-xsource/l/lzo/lzo.SlackBuild28
-rw-r--r--source/l/lzo/slack-desc8
-rwxr-xr-xsource/l/media-player-info/media-player-info.SlackBuild15
-rw-r--r--source/l/media-player-info/media-player-info.url1
-rw-r--r--source/l/media-player-info/slack-desc8
-rwxr-xr-xsource/l/mhash/mhash.SlackBuild29
-rw-r--r--source/l/mhash/slack-desc6
-rwxr-xr-xsource/l/mm/mm.SlackBuild27
-rw-r--r--source/l/mm/slack-desc10
-rwxr-xr-xsource/l/mozilla-nss/mozilla-nss.SlackBuild30
-rw-r--r--source/l/mozilla-nss/slack-desc6
-rwxr-xr-xsource/l/mpfr/mpfr.SlackBuild30
-rw-r--r--source/l/mpfr/slack-desc8
-rw-r--r--source/l/ncurses/Eterm.ti150
-rwxr-xr-xsource/l/ncurses/aaa_terminfo.SlackBuild105
-rw-r--r--source/l/ncurses/doinst.sh3
-rw-r--r--source/l/ncurses/ncurses-5.9-20141206-patch.sh235455
-rwxr-xr-xsource/l/ncurses/ncurses.SlackBuild175
-rw-r--r--source/l/ncurses/rxvt.terminfo55
-rw-r--r--source/l/ncurses/screeninfo.src73
-rw-r--r--source/l/ncurses/slack-desc10
-rw-r--r--source/l/ncurses/slack-desc.aaa_terminfo19
-rw-r--r--source/l/ncurses/terminfo/tmux.terminfo7
-rw-r--r--source/l/ncurses/terminfo/tmux.terminfo.README2
-rw-r--r--source/l/ncurses/terminfo/xterm.terminfo (renamed from source/l/ncurses/xterm.terminfo)681
-rw-r--r--source/l/ncurses/terminfo/xterm.terminfo.README6
-rw-r--r--source/l/ncurses/terminfo/xterm.terminfo.diff25
-rw-r--r--source/l/ncurses/terminfo/xterm.terminfo.orig2447
-rwxr-xr-xsource/l/neon/neon.SlackBuild23
-rw-r--r--source/l/neon/neon.url1
-rw-r--r--source/l/neon/slack-desc8
-rwxr-xr-xsource/l/netpbm/netpbm.SlackBuild16
-rw-r--r--source/l/netpbm/slack-desc6
-rwxr-xr-xsource/l/newt/newt.SlackBuild26
-rw-r--r--source/l/newt/slack-desc2
-rw-r--r--source/l/notify-python/libnotify07.patch38
-rw-r--r--source/l/notify-python/notify-python-0.1.1-fix-GTK-symbols.patch25
-rwxr-xr-xsource/l/notify-python/notify-python.SlackBuild105
-rw-r--r--source/l/notify-python/slack-desc19
-rwxr-xr-xsource/l/ocl-icd/ocl-icd.SlackBuild128
-rw-r--r--source/l/ocl-icd/slack-desc19
-rw-r--r--source/l/openexr/openexr.CVE-2017-9110-to-9116.patch82
-rwxr-xr-xsource/l/openexr/openexr.SlackBuild32
-rw-r--r--source/l/openexr/slack-desc8
-rwxr-xr-xsource/l/openjpeg/openjpeg.SlackBuild29
-rw-r--r--source/l/openjpeg/openjpeg2_remove-thirdparty.patch11
-rw-r--r--source/l/openjpeg/slack-desc6
-rwxr-xr-xsource/l/opus/opus.SlackBuild152
-rw-r--r--source/l/opus/slack-desc19
-rwxr-xr-xsource/l/opusfile/opusfile.SlackBuild148
-rw-r--r--source/l/opusfile/slack-desc19
-rwxr-xr-xsource/l/orc/orc.SlackBuild23
-rw-r--r--source/l/orc/slack-desc4
-rwxr-xr-xsource/l/pango/pango.SlackBuild25
-rw-r--r--source/l/pango/slack-desc6
-rwxr-xr-xsource/l/pangomm/pangomm.SlackBuild20
-rw-r--r--source/l/pangomm/slack-desc5
-rwxr-xr-xsource/l/parted/parted.SlackBuild25
-rwxr-xr-xsource/l/parted/parted.SlackBuild.static2
-rw-r--r--source/l/parted/slack-desc8
-rwxr-xr-xsource/l/pcre/pcre.SlackBuild25
-rw-r--r--source/l/pcre/slack-desc6
-rwxr-xr-xsource/l/pcre2/pcre2.SlackBuild139
-rw-r--r--source/l/pcre2/pcre2.url1
-rw-r--r--source/l/pcre2/slack-desc19
-rwxr-xr-xsource/l/phonon-gstreamer/phonon-gstreamer.SlackBuild34
-rw-r--r--source/l/phonon-gstreamer/slack-desc6
-rwxr-xr-xsource/l/phonon/phonon.SlackBuild26
-rw-r--r--source/l/phonon/slack-desc10
-rwxr-xr-xsource/l/pilot-link/pilot-link.SlackBuild29
-rw-r--r--source/l/pilot-link/slack-desc8
-rwxr-xr-xsource/l/polkit-gnome/polkit-gnome.SlackBuild21
-rw-r--r--source/l/polkit-gnome/slack-desc6
-rwxr-xr-xsource/l/polkit-qt-1/polkit-qt-1.SlackBuild24
-rw-r--r--source/l/polkit-qt-1/slack-desc8
-rw-r--r--source/l/polkit/0001-Fix-a-memory-leak-of-PolkitAgentListener-s-Server-ob.patch27
-rw-r--r--source/l/polkit/0004-polkit-Add-g_autoptr-support-for-GObject-derived-pol.patch49
-rw-r--r--source/l/polkit/0005-data-Set-GIO_USE_VFS-local-in-the-environment.patch127
-rw-r--r--source/l/polkit/0015-polkitpermission-Fix-a-memory-leak-on-authority-chan.patch28
-rwxr-xr-xsource/l/polkit/polkit.SlackBuild27
-rw-r--r--source/l/polkit/slack-desc8
-rwxr-xr-xsource/l/poppler-data/poppler-data.SlackBuild22
-rw-r--r--source/l/poppler-data/slack-desc12
-rwxr-xr-xsource/l/poppler/poppler.SlackBuild56
-rw-r--r--source/l/poppler/poppler.remove.qt4.frontend.diff26533
-rw-r--r--source/l/poppler/poppler.splashpath.h.revert.diff42
-rw-r--r--source/l/poppler/slack-desc12
-rwxr-xr-xsource/l/popt/popt.SlackBuild29
-rw-r--r--source/l/popt/slack-desc12
-rw-r--r--source/l/pulseaudio/0001-memfd-wrappers-only-define-memfd_create-if-not-alrea.patch63
-rwxr-xr-xsource/l/pulseaudio/pulseaudio.SlackBuild24
-rw-r--r--source/l/pulseaudio/slack-desc4
-rwxr-xr-xsource/l/pycairo/pycairo.SlackBuild62
-rw-r--r--source/l/pycairo/pycairo.url4
-rw-r--r--source/l/pycairo/slack-desc8
-rwxr-xr-xsource/l/pycups/pycups.SlackBuild24
-rw-r--r--source/l/pycups/pycups.info2
-rw-r--r--source/l/pycups/slack-desc8
-rwxr-xr-xsource/l/pycurl/pycurl.SlackBuild21
-rw-r--r--source/l/pycurl/slack-desc12
-rwxr-xr-xsource/l/pygobject/pygobject.SlackBuild47
-rw-r--r--source/l/pygobject/pygobject.flags.diff49
-rw-r--r--source/l/pygobject/slack-desc8
-rwxr-xr-xsource/l/pygobject3/pygobject3.SlackBuild36
-rw-r--r--source/l/pygobject3/slack-desc6
-rw-r--r--source/l/pygtk/pygtk-fix-pango-object-leaks.patch63
-rwxr-xr-xsource/l/pygtk/pygtk.SlackBuild19
-rw-r--r--source/l/pygtk/slack-desc8
-rwxr-xr-xsource/l/pyparsing/pyparsing.SlackBuild80
-rw-r--r--source/l/pyparsing/slack-desc19
-rw-r--r--source/l/pyrex/Pyrex.url1
-rw-r--r--source/l/pyrex/slack-desc19
-rwxr-xr-xsource/l/python-appdirs/python-appdirs.SlackBuild84
-rw-r--r--source/l/python-appdirs/slack-desc19
-rwxr-xr-xsource/l/python-certifi/python-certifi.SlackBuild76
-rw-r--r--source/l/python-certifi/python-certifi.url1
-rw-r--r--source/l/python-certifi/slack-desc19
-rwxr-xr-xsource/l/python-chardet/python-chardet.SlackBuild79
-rw-r--r--source/l/python-chardet/slack-desc19
-rwxr-xr-xsource/l/python-docutils/python-docutils.SlackBuild93
-rw-r--r--source/l/python-docutils/slack-desc19
-rwxr-xr-xsource/l/python-idna/python-idna.SlackBuild84
-rw-r--r--source/l/python-idna/slack-desc19
-rwxr-xr-xsource/l/python-notify2/python-notify2.SlackBuild76
-rw-r--r--source/l/python-notify2/python-notify2.url1
-rw-r--r--source/l/python-notify2/slack-desc19
-rwxr-xr-xsource/l/python-packaging/python-packaging.SlackBuild84
-rw-r--r--source/l/python-packaging/slack-desc19
-rwxr-xr-xsource/l/python-pillow/python-pillow.SlackBuild50
-rw-r--r--source/l/python-pillow/slack-desc10
-rwxr-xr-xsource/l/python-requests/python-requests.SlackBuild84
-rw-r--r--source/l/python-requests/slack-desc19
-rwxr-xr-xsource/l/python-sane/python-sane.SlackBuild (renamed from source/l/pyrex/pyrex.SlackBuild)54
-rw-r--r--source/l/python-sane/slack-desc19
-rwxr-xr-xsource/l/python-six/python-six.SlackBuild (renamed from source/l/herqq/herqq.SlackBuild)86
-rw-r--r--source/l/python-six/slack-desc19
-rwxr-xr-xsource/l/python-urllib3/python-urllib3.SlackBuild84
-rw-r--r--source/l/python-urllib3/slack-desc19
-rw-r--r--source/l/qca/0011-use-_DEFAULT_SOURCE-instead-of-_BSD_SOURCE.patch27
-rw-r--r--source/l/qca/Add_support_for_OpenSSL_1.1.0.diff1720
-rwxr-xr-xsource/l/qca/qca.SlackBuild27
-rw-r--r--source/l/qca/qca.tlsunittest.cpp.diff58
-rw-r--r--source/l/qca/slack-desc12
-rwxr-xr-xsource/l/qimageblitz/qimageblitz.SlackBuild23
-rw-r--r--source/l/qimageblitz/slack-desc6
-rwxr-xr-xsource/l/qjson/qjson.SlackBuild22
-rw-r--r--source/l/qjson/slack-desc6
-rwxr-xr-xsource/l/qt-gstreamer/qt-gstreamer.SlackBuild20
-rw-r--r--source/l/qt-gstreamer/slack-desc8
-rwxr-xr-xsource/l/qt/qt-nowebkit.SlackBuild57
-rw-r--r--source/l/qt/qt.QTBUG-22829.diff17
-rw-r--r--source/l/qt/qt.QTBUG-35459.diff12
-rw-r--r--source/l/qt/qt.QT_VERSION_CHECK.diff12
-rwxr-xr-xsource/l/qt/qt.SlackBuild28
-rw-r--r--source/l/qt/qt.alsa-1.1.diff12
-rw-r--r--source/l/qt/qt.gcc6.diff35
-rw-r--r--source/l/qt/qt.icu4c.nodebug.diff23
-rw-r--r--source/l/qt/qt.icu59.c++11.diff28
-rw-r--r--source/l/qt/qt.icu59.patch11
-rw-r--r--source/l/qt/qt.qtreeview.crash.diff12
-rw-r--r--source/l/qt/qt4.openssl-1.1.diff646
-rwxr-xr-xsource/l/qt/qtwebkit/qtwebkit.SlackBuild15
-rw-r--r--source/l/qt/qtwebkit/slack-desc8
-rwxr-xr-xsource/l/qt/slack-desc6
-rwxr-xr-xsource/l/qtscriptgenerator/qtscriptgenerator.SlackBuild60
-rw-r--r--source/l/qtscriptgenerator/slack-desc10
-rwxr-xr-xsource/l/raptor2/raptor2.SlackBuild21
-rw-r--r--source/l/raptor2/slack-desc10
-rwxr-xr-xsource/l/rasqal/rasqal.SlackBuild28
-rw-r--r--source/l/rasqal/slack-desc8
-rw-r--r--source/l/readline/readline-6.3-patches/readline63-00143
-rw-r--r--source/l/readline/readline-6.3-patches/readline63-00244
-rw-r--r--source/l/readline/readline-6.3-patches/readline63-00347
-rw-r--r--source/l/readline/readline-6.3-patches/readline63-00445
-rw-r--r--source/l/readline/readline-6.3-patches/readline63-00558
-rw-r--r--source/l/readline/readline-6.3-patches/readline63-00663
-rw-r--r--source/l/readline/readline-6.3-patches/readline63-00747
-rw-r--r--source/l/readline/readline-6.3-patches/readline63-00847
-rw-r--r--source/l/readline/readline-7.0-patches/readline70-00157
-rw-r--r--source/l/readline/readline-7.0-patches/readline70-002103
-rw-r--r--source/l/readline/readline-7.0-patches/readline70-00340
-rwxr-xr-xsource/l/readline/readline.SlackBuild42
-rw-r--r--source/l/readline/slack-desc10
-rwxr-xr-xsource/l/redland/redland.SlackBuild25
-rw-r--r--source/l/redland/slack-desc10
-rwxr-xr-xsource/l/sbc/sbc.SlackBuild18
-rw-r--r--source/l/sbc/slack-desc6
-rwxr-xr-xsource/l/sdl/sdl.SlackBuild58
-rw-r--r--source/l/sdl/slack-desc12
-rwxr-xr-xsource/l/serf/serf.SlackBuild17
-rw-r--r--source/l/serf/slack-desc4
-rwxr-xr-xsource/l/sg3_utils/sg3_utils.SlackBuild22
-rw-r--r--source/l/sg3_utils/slack-desc6
-rwxr-xr-xsource/l/shared-desktop-ontologies/shared-desktop-ontologies.SlackBuild22
-rw-r--r--source/l/shared-desktop-ontologies/slack-desc6
-rwxr-xr-xsource/l/shared-mime-info/shared-mime-info.SlackBuild16
-rw-r--r--source/l/shared-mime-info/slack-desc8
-rwxr-xr-xsource/l/sip/sip.SlackBuild39
-rw-r--r--source/l/sip/slack-desc10
-rw-r--r--source/l/slang/slack-desc12
-rwxr-xr-xsource/l/slang/slang.SlackBuild32
-rw-r--r--source/l/slang1/slack-desc10
-rwxr-xr-xsource/l/slang1/slang1.SlackBuild23
-rw-r--r--source/l/soprano/slack-desc10
-rwxr-xr-xsource/l/soprano/soprano.SlackBuild22
-rw-r--r--source/l/sound-theme-freedesktop/slack-desc6
-rwxr-xr-xsource/l/sound-theme-freedesktop/sound-theme-freedesktop.SlackBuild15
-rw-r--r--source/l/speex/slack-desc19
-rwxr-xr-xsource/l/speex/speex.SlackBuild149
-rw-r--r--source/l/speexdsp/slack-desc4
-rwxr-xr-xsource/l/speexdsp/speexdsp.SlackBuild20
-rw-r--r--source/l/startup-notification/slack-desc6
-rwxr-xr-xsource/l/startup-notification/startup-notification.SlackBuild29
-rw-r--r--source/l/strigi/slack-desc14
-rwxr-xr-xsource/l/strigi/strigi.SlackBuild27
-rw-r--r--source/l/svgalib/slack-desc8
-rw-r--r--source/l/svgalib/svgalib-1.9.25-quickmath-h-redefinitions.patch91
-rwxr-xr-xsource/l/svgalib/svgalib.SlackBuild23
-rw-r--r--source/l/system-config-printer/slack-desc12
-rwxr-xr-xsource/l/system-config-printer/system-config-printer.SlackBuild35
-rw-r--r--source/l/system-config-printer/system-config-printer.auth.dialog.2766d74a.patch28
-rw-r--r--source/l/t1lib/slack-desc8
-rwxr-xr-xsource/l/t1lib/t1lib.SlackBuild29
-rw-r--r--source/l/taglib-extras/slack-desc6
-rw-r--r--source/l/taglib-extras/taglib-extras-0.1-multilib-1.patch20
-rw-r--r--source/l/taglib-extras/taglib-extras-1.0.1-taglib_ver.patch25
-rw-r--r--source/l/taglib-extras/taglib-extras-1.0.1-version.patch12
-rwxr-xr-xsource/l/taglib-extras/taglib-extras.SlackBuild31
-rw-r--r--source/l/taglib/slack-desc8
-rwxr-xr-xsource/l/taglib/taglib.SlackBuild19
-rw-r--r--source/l/talloc/slack-desc19
-rwxr-xr-xsource/l/talloc/talloc.SlackBuild153
-rw-r--r--source/l/tango-icon-theme-extras/slack-desc10
-rwxr-xr-xsource/l/tango-icon-theme-extras/tango-icon-theme-extras.SlackBuild32
-rw-r--r--source/l/tango-icon-theme/slack-desc11
-rwxr-xr-xsource/l/tango-icon-theme/tango-icon-theme.SlackBuild17
-rw-r--r--source/l/tdb/slack-desc19
-rwxr-xr-xsource/l/tdb/tdb.SlackBuild (renamed from source/l/libmowgli/libmowgli.SlackBuild)94
-rw-r--r--source/l/tevent/slack-desc19
-rwxr-xr-xsource/l/tevent/tevent.SlackBuild151
-rw-r--r--source/l/urwid/slack-desc6
-rwxr-xr-xsource/l/urwid/urwid.SlackBuild22
-rw-r--r--source/l/utf8proc/slack-desc19
-rwxr-xr-xsource/l/utf8proc/utf8proc.SlackBuild144
-rw-r--r--source/l/v4l-utils/slack-desc12
-rwxr-xr-xsource/l/v4l-utils/v4l-utils.SlackBuild36
-rw-r--r--source/l/v4l-utils/v4l-utils.url1
-rw-r--r--source/l/virtuoso-ose/slack-desc6
-rwxr-xr-xsource/l/virtuoso-ose/virtuoso-ose.SlackBuild29
-rw-r--r--source/l/vte/fix_meta_alt_keybinding.patch74
-rw-r--r--source/l/vte/slack-desc8
-rwxr-xr-xsource/l/vte/vte.SlackBuild36
-rw-r--r--source/l/vte/vte.escape.cpu.usage.diff89
-rw-r--r--source/l/wavpack/slack-desc12
-rwxr-xr-xsource/l/wavpack/wavpack.SlackBuild19
-rw-r--r--source/l/xapian-core/slack-desc6
-rwxr-xr-xsource/l/xapian-core/xapian-core.SlackBuild24
-rw-r--r--source/l/zlib/slack-desc10
-rwxr-xr-xsource/l/zlib/zlib.SlackBuild62
940 files changed, 56212 insertions, 294728 deletions
diff --git a/source/l/ConsoleKit2/ConsoleKit2.SlackBuild b/source/l/ConsoleKit2/ConsoleKit2.SlackBuild
index 4f4e39490..e61433e7b 100755
--- a/source/l/ConsoleKit2/ConsoleKit2.SlackBuild
+++ b/source/l/ConsoleKit2/ConsoleKit2.SlackBuild
@@ -1,10 +1,10 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ConsoleKit
# Copyright 2009, 2015 Robby Workman, Northport, Alabama, USA
# Copyright 2010, 2015 Eric Hameleers, Eindhoven, NL
-# Copyright 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,13 +24,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=ConsoleKit2
VERSION=${VERSION:-1.0.0}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -45,6 +46,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
SLKLDFLAGS=""
@@ -108,10 +117,13 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-pam-module=no \
--enable-udev-acl \
--disable-static \
- --build=$TARGET
+ --build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
# Let's not clobber config files
mv $PKG/etc/ConsoleKit/seats.d/00-primary.seat \
diff --git a/source/l/ConsoleKit2/slack-desc b/source/l/ConsoleKit2/slack-desc
index 508b73205..6b51ea7df 100644
--- a/source/l/ConsoleKit2/slack-desc
+++ b/source/l/ConsoleKit2/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
diff --git a/source/l/FTBFSlog b/source/l/FTBFSlog
new file mode 100644
index 000000000..f18c27b50
--- /dev/null
+++ b/source/l/FTBFSlog
@@ -0,0 +1,36 @@
+Mon Apr 9 17:01:51 UTC 2018
+ db48: patch docs install out of Makefile, as it's causing a build failure
+ and they would just be deleted before packaging anyway.
++--------------------------+
+Thu Mar 29 17:26:28 UTC 2018
+ apr-util: merged upstream patch to fix httpd build.
+ Thanks to nobodino.
++--------------------------+
+Sat Mar 24 17:44:29 UTC 2018
+ gst-plugins-base: --disable-examples (they aren't installed anyway).
+ Thanks to nobodino.
++--------------------------+
+Sat Feb 24 20:44:54 UTC 2018
+ Fix all packages that fail to build from source:
+ gst-plugins-base0: fix build on 32-bit x86
++--------------------------+
+Mon Feb 12 02:25:34 UTC 2018
+ Fix all packages that fail to build from source:
+ pulseaudio: patch to prevent collision with glibc-2.27's memfd_create()
++--------------------------+
+Fri Feb 2 19:06:56 UTC 2018
+ Fix all packages that fail to build from source:
+ aspell: build with -fpermissive
+ audiofile: build with -fpermissive
+ glib: patches to fix libtool breakage
+ gtk+: merge patches from Fedora
+ gstreamer0: patched to build with bison-3.x.
+ js185: build with -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks
+ libcap: disable broken gperf support
+ libmad: remove obsolete --force-mem optimization
+ librevenge: --disable-werror
+ libtheora: patch for libpng1.6 and new LaTeX.
+ libvisio: kludge build to work around doxygen segfault
+ svgalib: fix math redefinitions
+ taglib-extras: patched to allow newer taglib version
+ qt: Fix building with gcc-7.3.0 and against icu4c-59+
diff --git a/source/l/GConf/GConf.SlackBuild b/source/l/GConf/GConf.SlackBuild
index 727160c33..50ee3ce0e 100755
--- a/source/l/GConf/GConf.SlackBuild
+++ b/source/l/GConf/GConf.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for GConf
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=GConf
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
NUMJOBS=${NUMJOBS:--j6}
@@ -36,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/GConf/slack-desc b/source/l/GConf/slack-desc
index 7994adc8f..03d8b14c9 100644
--- a/source/l/GConf/slack-desc
+++ b/source/l/GConf/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-------------------------------------------------------|
GConf: GConf (GNOME configuration library)
GConf:
GConf: GConf is a configuration database system designed for the GNOME project
-GConf: and applications based on GTK+. It is conceptually similar to the
+GConf: and applications based on GTK+. It is conceptually similar to the
GConf: Windows registry.
GConf:
-GConf: For information, see: http://projects.gnome.org/gconf/
+GConf: For information, see: http://projects.gnome.org/gconf/
GConf:
GConf:
GConf:
diff --git a/source/l/LibRaw/LibRaw.SlackBuild b/source/l/LibRaw/LibRaw.SlackBuild
index 35498aa27..750193563 100755
--- a/source/l/LibRaw/LibRaw.SlackBuild
+++ b/source/l/LibRaw/LibRaw.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2013, 2015, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2013 Eric Hameleers, Eindhoven, NL
# All rights reserved.
@@ -21,8 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=LibRaw
-VERSION=${VERSION:-0.17.2}
+VERSION=${VERSION:-0.18.10}
+DEMOSAIC=${DEMOSAIC:-0.18.8}
BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:--j7}
@@ -39,6 +42,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -61,7 +72,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -71,9 +81,9 @@ cd $TMP
rm -rf $PKGNAM-$VERSION-build
mkdir $PKGNAM-$VERSION-build
cd $PKGNAM-$VERSION-build
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
-tar xvf $CWD/$PKGNAM-demosaic-pack-GPL2-$VERSION.tar.xz || exit 1
-tar xvf $CWD/$PKGNAM-demosaic-pack-GPL3-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+tar xvf $CWD/$PKGNAM-demosaic-pack-GPL2-$DEMOSAIC.tar.?z || exit 1
+tar xvf $CWD/$PKGNAM-demosaic-pack-GPL3-$DEMOSAIC.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
@@ -93,28 +103,26 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
- --enable-demosaic-pack-gpl2=../LibRaw-demosaic-pack-GPL2-$VERSION \
- --enable-demosaic-pack-gpl3=../LibRaw-demosaic-pack-GPL3-$VERSION \
+ --enable-demosaic-pack-gpl2=../LibRaw-demosaic-pack-GPL2-$DEMOSAIC \
+ --enable-demosaic-pack-gpl3=../LibRaw-demosaic-pack-GPL3-$DEMOSAIC \
--enable-jasper \
--enable-lcms \
--disable-examples \
- --build=$TARGET \
- || exit 1
+ --build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-pdftotext LICENSE.LibRaw.pdf
cp -a \
- COPYRIGHT Changelog.txt LICENSE.* README* doc \
+ COPYRIGHT Changelog.txt LICENSE* README* doc \
$PKG/usr/doc/$PKGNAM-$VERSION
-if [ -r $PKG/usr/doc/$PKGNAM-$VERSION/LICENSE.LibRaw.txt ]; then # package weight loss program
- rm -f $PKG/usr/doc/$PKGNAM-$VERSION/LICENSE.LibRaw.pdf
-fi
mv $PKG/usr/doc/$PKGNAM-$VERSION/doc $PKG/usr/doc/$PKGNAM-$VERSION/html
find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
diff --git a/source/l/LibRaw/slack-desc b/source/l/LibRaw/slack-desc
index 28f09f6a5..9f5e73e85 100644
--- a/source/l/LibRaw/slack-desc
+++ b/source/l/LibRaw/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/M2Crypto/M2Crypto.SlackBuild b/source/l/M2Crypto/M2Crypto.SlackBuild
index 359ba2b2b..ab134c786 100755
--- a/source/l/M2Crypto/M2Crypto.SlackBuild
+++ b/source/l/M2Crypto/M2Crypto.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009 Robby Workman, Northport, Alabama, USA
-# Copyright 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=M2Crypto
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,20 +37,17 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=${PKG:-$TMP/package-M2Crypto}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
-else
- SLKCFLAGS="-O2"
-fi
-
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
@@ -65,6 +63,28 @@ find . \
python setup.py install --root=$PKG || exit 1
+mkdir -p $PKG/usr/doc/M2Crypto-$VERSION
+cp -a \
+ CHANGES INSTALL* LICENCE* PKG-INFO README* doc/* \
+ $PKG/usr/doc/M2Crypto-$VERSION
+
+# Embed required dep typing module:
+cd $TMP
+rm -rf typing-3.6.4
+tar xvf $CWD/typing-3.6.4.tar.xz || exit 1
+cd typing-3.6.4 || exit 1
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+python setup.py install --root=$PKG || exit 1
+mkdir -p $PKG/usr/doc/typing-3.6.4
+cp -a \
+ CHANGES INSTALL* LICENCE* PKG-INFO README* doc/* \
+ $PKG/usr/doc/typing-3.6.4
+
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \
xargs strip --strip-unneeded 2> /dev/null || true
@@ -74,7 +94,7 @@ python setup.py install --root=$PKG || exit 1
mkdir -p $PKG/usr/doc/M2Crypto-$VERSION
cp -a \
- CHANGES INSTALL LICENCE PKG-INFO README* doc/* \
+ CHANGES INSTALL* LICENCE* PKG-INFO README* doc/* \
$PKG/usr/doc/M2Crypto-$VERSION
mkdir -p $PKG/install
@@ -82,4 +102,3 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/M2Crypto-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/M2Crypto/slack-desc b/source/l/M2Crypto/slack-desc
index 4886b94f5..87edbbcb6 100644
--- a/source/l/M2Crypto/slack-desc
+++ b/source/l/M2Crypto/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
M2Crypto: M2Crypto (cryptography toolkit for Python)
M2Crypto:
-M2Crypto: M2Crypto is a crypto and SSL toolkit for Python. It includes:
+M2Crypto: M2Crypto is a crypto and SSL toolkit for Python. It includes:
M2Crypto: - RSA, DSA, DH, HMACs, message digests, symmetric ciphers (e.g. AES)
M2Crypto: - SSL functionality to implement clients and servers
M2Crypto: - HTTPS extensions to Python's httplib, urllib, and xmlrpclib
M2Crypto: - Unforgeable HMAC'ing AuthCookies for web session management
M2Crypto: - FTP/TLS client and server, S/MIME v2, ZServerSSL, ZSmime
M2Crypto:
-M2Crypto: Homepage: https://gitlab.com/m2crypto/m2crypto
+M2Crypto: Homepage: https://gitlab.com/m2crypto/m2crypto
M2Crypto:
diff --git a/source/l/Mako/Mako.SlackBuild b/source/l/Mako/Mako.SlackBuild
new file mode 100755
index 000000000..987627271
--- /dev/null
+++ b/source/l/Mako/Mako.SlackBuild
@@ -0,0 +1,82 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=Mako
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+cd $PKGNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst *.txt PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+# If there's a CHANGES.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGES.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGES.rst | head -n 1000 > $DOCSDIR/CHANGES.rst
+ touch -r CHANGES.rst $DOCSDIR/CHANGES.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/Mako/slack-desc b/source/l/Mako/slack-desc
new file mode 100644
index 000000000..9b1c1eace
--- /dev/null
+++ b/source/l/Mako/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+Mako: Mako (template library written in Python)
+Mako:
+Mako: Mako is a template library written in Python. It provides a familiar,
+Mako: non-XML syntax which compiles into Python modules for maximum
+Mako: performance. Mako's syntax and API borrows from the best ideas of many
+Mako: others, including Django and Jinja2 templates, Cheetah, Myghty, and
+Mako: Genshi. Conceptually, Mako is an embedded Python language.
+Mako:
+Mako: Homepage: http://www.makotemplates.org
+Mako:
+Mako:
diff --git a/source/l/PyQt/PyQt.SlackBuild b/source/l/PyQt/PyQt.SlackBuild
index 16e955621..7ca9a037e 100755
--- a/source/l/PyQt/PyQt.SlackBuild
+++ b/source/l/PyQt/PyQt.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for PyQt
# Copyright 2008 Aleksandar Samardzic <asamardzic@gmail.com>
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,11 +26,11 @@
# Modified by Robby Workman <rworkman@slackware.com>
# Modified by Eric Hameleers <alien@slackware.com>
-PKGNAM=PyQt
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+cd $(dirname $0) ; CWD=$(pwd)
-NUMJOBS=${NUMJOBS:--j7}
+PKGNAM=PyQt
+VERSION=${VERSION:-$(echo ${PKGNAM}4_gpl_x11-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
@@ -44,7 +44,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION |tr - _)-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -60,12 +69,15 @@ else
SLKCFLAGS="-O2"
fi
+PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PKGNAM-x11-gpl-$VERSION
-tar xvf $CWD/$PKGNAM-x11-gpl-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-x11-gpl-$VERSION || exit 1
+rm -rf ${PKGNAM}4_gpl_x11-$VERSION
+tar xvf $CWD/${PKGNAM}4_gpl_x11-$VERSION.tar.xz || exit 1
+cd ${PKGNAM}4_gpl_x11-$VERSION || exit 1
# Fix phonon detection:
zcat $CWD/$PKGNAM.phonon.diff.gz | patch -p1 --verbose || exit 1
@@ -83,14 +95,33 @@ export QTDIR=/usr/lib${LIBDIRSUFFIX}/qt
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
+python3 configure.py --confirm-license --verbose
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG INSTALL_ROOT=$PKG || exit 1
+
+mv $PKG/usr/bin/pyuic4 $PKG/usr/bin/pyuic4-py3
+
+make clean
+
python configure.py --confirm-license --verbose
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG INSTALL_ROOT=$PKG || exit 1
+rm -rf $PKG/$PYTHON3LIB/PyQt4/uic/port_v2/
+rm -rf $PKG/$PYTHONLIB/PyQt4/uic/port_v3/
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+# Remove rpaths:
+for file in $(find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : 2> /dev/null) ; do
+ if [ ! "$(patchelf --print-rpath $file 2> /dev/null)" = "" ]; then
+ patchelf --remove-rpath $file
+ fi
+done
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
GPL_EXCEPTION*.TXT LICENSE.* NEWS OPENSOURCE-NOTICE.TXT README THANKS doc/* \
diff --git a/source/l/PyQt/slack-desc b/source/l/PyQt/slack-desc
index f713c87c3..9aa7ae94e 100644
--- a/source/l/PyQt/slack-desc
+++ b/source/l/PyQt/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/QScintilla/QScintilla.SlackBuild b/source/l/QScintilla/QScintilla.SlackBuild
index 2e2d9654a..6b70950e1 100755
--- a/source/l/QScintilla/QScintilla.SlackBuild
+++ b/source/l/QScintilla/QScintilla.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for QScintilla
# Copyright 2008 Robby Workman <rworkman@slackware.com> Northport, AL, USA
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,13 +23,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=QScintilla
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo ${PKGNAM}_*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:--j7}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -45,6 +46,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -65,9 +74,9 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PKGNAM-gpl-$VERSION
-tar xvf $CWD/$PKGNAM-gpl-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-gpl-$VERSION || exit 1
+rm -rf ${PKGNAM}_gpl-$VERSION
+tar xvf $CWD/${PKGNAM}_gpl-$VERSION.tar.?z || exit 1
+cd ${PKGNAM}_gpl-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -76,23 +85,37 @@ find . \
-exec chmod 644 {} \;
cd Qt4Qt5
- qmake -o Makefile qscintilla.pro
- make $NUMJOBS
- make install INSTALL_ROOT=$PKG
+ qmake \
+ -o Makefile \
+ QMAKE_CFLAGS+="$SLKCFLAGS" \
+ QMAKE_CXXFLAGS+="$SLKCFLAGS -std=c++11" \
+ qscintilla.pro || exit 1
+ make $NUMJOBS || exit 1
+ make install INSTALL_ROOT=$PKG || exit 1
# Yes, we'll spam the dev environment so we can build the other parts.
- make install
+ make install || exit 1
cd -
cd designer-Qt4Qt5
- qmake -o Makefile designer.pro
- make $NUMJOBS
- make install INSTALL_ROOT=$PKG
+ qmake \
+ -o Makefile \
+ QMAKE_CFLAGS+="$SLKCFLAGS" \
+ QMAKE_CXXFLAGS+="$SLKCFLAGS -std=c++11" \
+ designer.pro || exit 1
+ make $NUMJOBS || exit 1
+ make install INSTALL_ROOT=$PKG || exit 1
cd -
cd Python
- python configure.py
- make $NUMJOBS
- make install INSTALL_ROOT=$PKG
+ python3 configure.py || exit 1
+ make $NUMJOBS || exit 1
+ make install INSTALL_ROOT=$PKG || exit 1
+
+ make clean || exit 1
+
+ python configure.py || exit 1
+ make $NUMJOBS || exit 1
+ make install INSTALL_ROOT=$PKG || exit 1
cd -
# Link the shared libraries into /usr/lib${LIBDIRSUFFIX}:
diff --git a/source/l/QScintilla/QScintilla.url b/source/l/QScintilla/QScintilla.url
new file mode 100644
index 000000000..ef3134ccd
--- /dev/null
+++ b/source/l/QScintilla/QScintilla.url
@@ -0,0 +1 @@
+http://www.riverbankcomputing.co.uk/software/qscintilla/
diff --git a/source/l/QScintilla/slack-desc b/source/l/QScintilla/slack-desc
index f6edc094a..cb3fdd3e0 100644
--- a/source/l/QScintilla/slack-desc
+++ b/source/l/QScintilla/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler--------------------------------------------------|
QScintilla: QScintilla (Qt port of the Scintilla C++ editor control)
QScintilla:
QScintilla: QScintilla includes features especially useful when editing and
-QScintilla: debugging source code. These include support for syntax styling,
-QScintilla: error indicators, code completion, and call tips. The selection
+QScintilla: debugging source code. These include support for syntax styling,
+QScintilla: error indicators, code completion, and call tips. The selection
QScintilla: margin can contain markers like those used in debuggers to
-QScintilla: indicate breakpoints and the current line. Styling choices are
+QScintilla: indicate breakpoints and the current line. Styling choices are
QScintilla: more open than with many editors, allowing the use of
QScintilla: proportional fonts, bold and italics, multiple foreground and
QScintilla: background colours, and multiple fonts.
diff --git a/source/l/SDL2/SDL2.SlackBuild b/source/l/SDL2/SDL2.SlackBuild
new file mode 100755
index 000000000..a9f5ddde8
--- /dev/null
+++ b/source/l/SDL2/SDL2.SlackBuild
@@ -0,0 +1,147 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=SDL2
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't package the static libraries:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
+
+# Don't package .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/SDL2/slack-desc b/source/l/SDL2/slack-desc
new file mode 100644
index 000000000..149d83fe4
--- /dev/null
+++ b/source/l/SDL2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+SDL2: SDL2 (Simple DirectMedia Layer Version 2)
+SDL2:
+SDL2: Simple DirectMedia Layer is a cross-platform development library
+SDL2: designed to provide low-level access to audio, keyboard, mouse,
+SDL2: joystick, and graphics hardware ia via OpenGL. It is used by
+SDL2: video playback software, emulators, and games.
+SDL2:
+SDL2: Homepage: http://www.libsdl.org
+SDL2:
+SDL2:
+SDL2:
diff --git a/source/l/SDL2_gfx/SDL2_gfx.SlackBuild b/source/l/SDL2_gfx/SDL2_gfx.SlackBuild
new file mode 100755
index 000000000..6702751de
--- /dev/null
+++ b/source/l/SDL2_gfx/SDL2_gfx.SlackBuild
@@ -0,0 +1,149 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=SDL2_gfx
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+ MMX="--disable-mmx"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+ MMX="--disable-mmx"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+ MMX="--disable-mmx"
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --disable-static \
+ $MMX \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't package .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/SDL2_gfx/slack-desc b/source/l/SDL2_gfx/slack-desc
new file mode 100644
index 000000000..5ae0e9324
--- /dev/null
+++ b/source/l/SDL2_gfx/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+SDL2_gfx: SDL2_gfx (SDL2 graphics primitives and surface functions)
+SDL2_gfx:
+SDL2_gfx: The SDL2_gfx library provides the basic drawing functions such as
+SDL2_gfx: lines, circles or polygons.
+SDL2_gfx:
+SDL2_gfx: Homepage: http://www.ferzkopp.net/Software/SDL2_gfx/Docs/html/
+SDL2_gfx:
+SDL2_gfx:
+SDL2_gfx:
+SDL2_gfx:
+SDL2_gfx:
diff --git a/source/l/SDL2_image/SDL2_image.SlackBuild b/source/l/SDL2_image/SDL2_image.SlackBuild
new file mode 100755
index 000000000..dd4ffc974
--- /dev/null
+++ b/source/l/SDL2_image/SDL2_image.SlackBuild
@@ -0,0 +1,150 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=SDL2_image
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --disable-static \
+ --disable-dependency-tracking \
+ --disable-jpg-shared \
+ --disable-png-shared \
+ --disable-tif-shared \
+ --disable-webp-shared \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't package .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/SDL2_image/slack-desc b/source/l/SDL2_image/slack-desc
new file mode 100644
index 000000000..191162629
--- /dev/null
+++ b/source/l/SDL2_image/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+SDL2_image: SDL2_image (SDL2 image loading library)
+SDL2_image:
+SDL2_image: This is a simple library to load images of various formats as SDL
+SDL2_image: surfaces. This library supports BMP, PNM (PPM/PGM/PBM), XPM, LBM,
+SDL2_image: PCX, GIF, JPEG, PNG, TGA, and TIFF formats.
+SDL2_image:
+SDL2_image: Homepage: http://www.libsdl.org/projects/SDL_image/
+SDL2_image:
+SDL2_image:
+SDL2_image:
+SDL2_image:
diff --git a/source/l/SDL2_mixer/SDL2_mixer.SlackBuild b/source/l/SDL2_mixer/SDL2_mixer.SlackBuild
new file mode 100755
index 000000000..2e4879456
--- /dev/null
+++ b/source/l/SDL2_mixer/SDL2_mixer.SlackBuild
@@ -0,0 +1,146 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=SDL2_mixer
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --disable-static \
+ --disable-dependency-tracking \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't package .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/SDL2_mixer/slack-desc b/source/l/SDL2_mixer/slack-desc
new file mode 100644
index 000000000..267f6fe77
--- /dev/null
+++ b/source/l/SDL2_mixer/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+SDL2_mixer: SDL2_mixer (SDL2 multi-channel audio mixer library)
+SDL2_mixer:
+SDL2_mixer: SDL_mixer is a simple multi-channel audio mixer library. It supports
+SDL2_mixer: any number of simultaneously playing channels of 16 bit stereo audio,
+SDL2_mixer: plus a single channel of music.
+SDL2_mixer:
+SDL2_mixer: Homepage: http://www.libsdl.org/projects/SDL_mixer/
+SDL2_mixer:
+SDL2_mixer:
+SDL2_mixer:
+SDL2_mixer:
diff --git a/source/l/SDL2_net/SDL2_net.SlackBuild b/source/l/SDL2_net/SDL2_net.SlackBuild
new file mode 100755
index 000000000..822a47fd5
--- /dev/null
+++ b/source/l/SDL2_net/SDL2_net.SlackBuild
@@ -0,0 +1,146 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=SDL2_net
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --disable-static \
+ --disable-gui \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't package .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/SDL2_net/slack-desc b/source/l/SDL2_net/slack-desc
new file mode 100644
index 000000000..5a31ec314
--- /dev/null
+++ b/source/l/SDL2_net/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+SDL2_net: SDL2_net (SDL2 network library)
+SDL2_net:
+SDL2_net: This is an example portable network library for use with SDL.
+SDL2_net:
+SDL2_net: Homepage: http://www.libsdl.org/projects/SDL_net/
+SDL2_net:
+SDL2_net:
+SDL2_net:
+SDL2_net:
+SDL2_net:
+SDL2_net:
diff --git a/source/l/SDL2_ttf/SDL2_ttf.SlackBuild b/source/l/SDL2_ttf/SDL2_ttf.SlackBuild
new file mode 100755
index 000000000..32d6b7385
--- /dev/null
+++ b/source/l/SDL2_ttf/SDL2_ttf.SlackBuild
@@ -0,0 +1,146 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=SDL2_ttf
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --disable-static \
+ --disable-dependency-tracking \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't package .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* BUGS* COPYING* CHANGES* CREDITS* NEWS* README* TODO* WhatsNew* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/SDL2_ttf/slack-desc b/source/l/SDL2_ttf/slack-desc
new file mode 100644
index 000000000..6231947ed
--- /dev/null
+++ b/source/l/SDL2_ttf/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+SDL2_ttf: SDL2_ttf (SDL2 TrueType font library)
+SDL2_ttf:
+SDL2_ttf: This library allows you to use TrueType fonts to render text in SDL2
+SDL2_ttf: applications.
+SDL2_ttf:
+SDL2_ttf: Homepage: http://www.libsdl.org/projects/SDL_ttf/
+SDL2_ttf:
+SDL2_ttf:
+SDL2_ttf:
+SDL2_ttf:
+SDL2_ttf:
diff --git a/source/l/a52dec/a52dec.SlackBuild b/source/l/a52dec/a52dec.SlackBuild
index 0153daff8..4e8b70de8 100755
--- a/source/l/a52dec/a52dec.SlackBuild
+++ b/source/l/a52dec/a52dec.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for a52dec
#
# Copyright 2007 Niklas "Nille" Åkerström
-# Copyright 2014, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2014 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -24,9 +24,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=a52dec
VERSION=${VERSION:-$(echo a52dec*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d- | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,6 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
if [ "$ARCH" = "i586" ]; then
@@ -52,7 +62,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -61,7 +70,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION || exit
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -76,11 +85,14 @@ CXXFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--enable-shared \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# This header is needed by xine-lib:
cp -a liba52/a52_internal.h $PKG/usr/include/a52dec
diff --git a/source/l/a52dec/slack-desc b/source/l/a52dec/slack-desc
index e4de56fb7..998e1ec58 100644
--- a/source/l/a52dec/slack-desc
+++ b/source/l/a52dec/slack-desc
@@ -1,10 +1,10 @@
|-----handy-ruler------------------------------------------------------|
a52dec: a52dec (test program for liba52)
a52dec:
-a52dec: a52dec is a test program for liba52. It decodes ATSC A/52 streams
+a52dec: a52dec is a test program for liba52. It decodes ATSC A/52 streams
a52dec: and also includes a demultiplexer for mpeg-1 and mpeg-2 program
-a52dec: streams. This package also includes liba52, which is a free
-a52dec: library for decoding ATSC A/52 streams. The A/52 standard is used
+a52dec: streams. This package also includes liba52, which is a free
+a52dec: library for decoding ATSC A/52 streams. The A/52 standard is used
a52dec: in a variety of applications, including digital television and DVD.
a52dec: It is also known as AC-3.
a52dec:
diff --git a/source/l/aalib/aalib.SlackBuild b/source/l/aalib/aalib.SlackBuild
index 2da339e5f..14a8d41aa 100755
--- a/source/l/aalib/aalib.SlackBuild
+++ b/source/l/aalib/aalib.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,32 +20,40 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=aalib
VERSION=1.4rc5
SRCVER=1.4.0
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-6}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -86,12 +94,15 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/aalib/slack-desc b/source/l/aalib/slack-desc
index fed222b05..531e7e041 100644
--- a/source/l/aalib/slack-desc
+++ b/source/l/aalib/slack-desc
@@ -1,21 +1,21 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
aalib: aalib (ASCII Art library) _1l1vlvlvlvlvlvlvlvlvvl=.
-aalib: __111llvl+' __...._ +1lv11=.
+aalib: __111llvl+' __...._ +1lv11=.
aalib: AA-lib is an ASCII art graphics _11vllvlv+ =vlvlvl1= /1vlvv1i=_
-aalib: library. Internally, the AA-lib _vvllvlvlv= -+vlvlvlvlvlvlvlvdvl=_
-aalib: API is similar to other graphics _:lvlvlvlvlv=. --^-^1lvlvlrlvv1s
-aalib: libraries, but it renders the =llvlvvlvlvv11lvl=.... -lvlevlvlvv
+aalib: library. Internally, the AA-lib _vvllvlvlv= -+vlvlvlvlvlvlvlvdvl=_
+aalib: API is similar to other graphics _:lvlvlvlvlv=. --^-^1lvlvlrlvv1s
+aalib: libraries, but it renders the =llvlvvlvlvv11lvl=.... -lvlevlvlvv
aalib: the output into ASCII art (like =lvlvlvlvll-^+1vv11111v_ vlkllvllvl
aalib: the example to the right :^) =lvlvlvlvl1 +1vv1v1lv _llvlvlvlvl
aalib: The developers of AA-lib are +1lv |vlvl' -^-^- _1olvlvlvlv'
aalib: Jan Hubicka, Thomas A. K. Kjaer, -1vl |lvlvlvlvlvlvlvlvv1vlvlvlvlv+.
-aalib: Tim Newsome, and Kamil Toman. +1 ^^^^^^^^^^^^^^^^^^^^^^^^vlv-
-aalib: -+uvlvlvlvlvlvlvlvlvlvlvlvl+_
-aalib: -vlvlvlvlvlvlvlvllvlvl-'
+aalib: Tim Newsome, and Kamil Toman. +1 ^^^^^^^^^^^^^^^^^^^^^^^^vlv-
+aalib: -+uvlvlvlvlvlvlvlvlvlvlvlvl+_
+aalib: -vlvlvlvlvlvlvlvllvlvl-'
diff --git a/source/l/aalib/slack-desc.11line b/source/l/aalib/slack-desc.11line
index 9a9a14777..e5b45c855 100644
--- a/source/l/aalib/slack-desc.11line
+++ b/source/l/aalib/slack-desc.11line
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
aalib: aalib (ASCII Art library) __111llvl+' __...._ +1lv11=.
-aalib: _11vllvlv+ =vlvlvl1= /1vlvv1i=_
+aalib: _11vllvlv+ =vlvlvl1= /1vlvv1i=_
aalib: AA-lib is an ASCII art graphics _vvllvlvlv= -+vlvlvlvlvlvlvlvdvl=_
-aalib: library. Internally, the AA-lib _:lvlvlvlvlv=. --^-^1lvlvlrlvv1s
-aalib: API is similar to other graphics =llvlvvlvlvv11lvl=.... -lvlevlvlvv
+aalib: library. Internally, the AA-lib _:lvlvlvlvlv=. --^-^1lvlvlrlvv1s
+aalib: API is similar to other graphics =llvlvvlvlvv11lvl=.... -lvlevlvlvv
aalib: libraries, but it renders the =lvlvlvlvll-^+1vv11111v_ vlkllvllvl
aalib: the output into ASCII art (like =lvlvlvlvl1 +1vv1v1lv _llvlvlvlvl
aalib: the example to the right :^) +1lv |vlvl' -^-^- _1olvlvlvlv'
aalib: The developers of AA-lib are -1vl |lvlvlvlvlvlvlvlvv1vlvlvlvlv+.
aalib: Jan Hubicka, Thomas A. K. Kjaer, +1 ^^^^^^^^^^^^^^^^^^^^^^^^vlv-
-aalib: Tim Newsome, and Kamil Toman. -+uvlvlvlvlvlvlvlvlvlvlvlvl+_
+aalib: Tim Newsome, and Kamil Toman. -+uvlvlvlvlvlvlvlvlvlvlvlvl+_
diff --git a/source/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild b/source/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild
index 87a34784c..f3fe2b19c 100755
--- a/source/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild
+++ b/source/l/adwaita-icon-theme/adwaita-icon-theme.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012, 2013 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2013, 2018 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=adwaita-icon-theme
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -37,13 +38,20 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-noarch-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "x86_64" ]; then
LIBDIRSUFFIX="64"
else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -52,7 +60,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
# Add Inherits=hicolor to the index.theme
diff --git a/source/l/adwaita-icon-theme/inherit-hicolor-theme.diff b/source/l/adwaita-icon-theme/inherit-hicolor-theme.diff
index 15c990bd1..8221c4912 100644
--- a/source/l/adwaita-icon-theme/inherit-hicolor-theme.diff
+++ b/source/l/adwaita-icon-theme/inherit-hicolor-theme.diff
@@ -1,9 +1,9 @@
-diff -Nur adwaita-icon-theme-3.14.0.orig/index.theme.in.in adwaita-icon-theme-3.14.0/index.theme.in.in
---- adwaita-icon-theme-3.14.0.orig/index.theme.in.in 2014-04-26 09:09:02.000000000 -0500
-+++ adwaita-icon-theme-3.14.0/index.theme.in.in 2014-09-23 00:18:46.390551084 -0500
+diff -Nur adwaita-icon-theme-3.20.orig/index.theme.in adwaita-icon-theme-3.20/index.theme.in
+--- adwaita-icon-theme-3.20.orig/index.theme.in 2016-01-11 04:58:10.000000000 -0600
++++ adwaita-icon-theme-3.20/index.theme.in 2016-07-07 00:22:56.380442071 -0500
@@ -2,6 +2,7 @@
- _Name=Adwaita
- _Comment=The Only One
+ Name=Adwaita
+ Comment=The Only One
Example=folder
+Inherits=hicolor
diff --git a/source/l/adwaita-icon-theme/slack-desc b/source/l/adwaita-icon-theme/slack-desc
index 6b30df3f8..1414ab79d 100644
--- a/source/l/adwaita-icon-theme/slack-desc
+++ b/source/l/adwaita-icon-theme/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/akonadi/akonadi-mariadb-10.2.patch b/source/l/akonadi/akonadi-mariadb-10.2.patch
new file mode 100644
index 000000000..99b096fb3
--- /dev/null
+++ b/source/l/akonadi/akonadi-mariadb-10.2.patch
@@ -0,0 +1,65 @@
+commit 22c53fa2aa97c7f0b5d7a1947821c5b3aef9de0f
+Author: Heinz Wiesinger <pprkut@liwjatan.at>
+Date: Sun Sep 17 15:55:48 2017 +0200
+
+ Only remove init connections to the database on server shutdown.
+
+ With MariaDB 10.2 libmysqlclient was replaced with libmariadb that
+ changed how establishing database connections behaves. The MySQL
+ QSQL driver calls mysql_server_end() on QSqlDatabase::removeDatabase()
+ if the overall connection count dropped to 0 (which it does when
+ the init connection is removed).
+ A future QSqlDatabase:addDatabase() would call mysql_server_init()
+ again, but this no longer works with libmariadb as that one only
+ allows calling mysql_server_init() once. Future calls are simply
+ ignored.
+
+ In order to prevent this from happening we have to keep the
+ init connection open until the server shuts down, so the connection
+ count only drops to 0 at shutdown and mysql_server_end() isn't
+ called before.
+
+ This is a workaround for QTBUG-63108
+
+diff --git a/server/src/akonadi.cpp b/server/src/akonadi.cpp
+index 5369320c8..6d31f6ff4 100644
+--- a/server/src/akonadi.cpp
++++ b/server/src/akonadi.cpp
+@@ -370,12 +370,13 @@ void AkonadiServer::createDatabase()
+ db.close();
+ }
+ }
+- QSqlDatabase::removeDatabase( initCon );
+ }
+
+ void AkonadiServer::stopDatabaseProcess()
+ {
+ if ( !DbConfig::configuredDatabase()->useInternalServer() ) {
++ // closing initConnection this late to work around QTBUG-63108
++ QSqlDatabase::removeDatabase(QLatin1String("initConnection"));
+ return;
+ }
+
+diff --git a/server/src/storage/dbconfigmysql.cpp b/server/src/storage/dbconfigmysql.cpp
+index 10f99db70..36f1f3a42 100644
+--- a/server/src/storage/dbconfigmysql.cpp
++++ b/server/src/storage/dbconfigmysql.cpp
+@@ -395,8 +395,6 @@ void DbConfigMysql::startInternalServer()
+ db.close();
+ }
+ }
+-
+- QSqlDatabase::removeDatabase( initCon );
+ }
+
+ void DbConfigMysql::stopInternalServer()
+@@ -405,6 +403,9 @@ void DbConfigMysql::stopInternalServer()
+ return;
+ }
+
++ // closing initConnection this late to work around QTBUG-63108
++ QSqlDatabase::removeDatabase(QLatin1String("initConnection"));
++
+ // first, try the nicest approach
+ if ( !mCleanServerShutdownCommand.isEmpty() ) {
+ QProcess::execute( mCleanServerShutdownCommand );
diff --git a/source/l/akonadi/akonadi.SlackBuild b/source/l/akonadi/akonadi.SlackBuild
index 83a6b0a20..2f0fbe4db 100755
--- a/source/l/akonadi/akonadi.SlackBuild
+++ b/source/l/akonadi/akonadi.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for akonadi
# Copyright 2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009, 2010, 2011, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=akonadi
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-9}
NUMJOBS=${NUMJOBS:--j7}
@@ -42,6 +43,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -59,7 +68,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -76,6 +84,12 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Update mysql configuration
+zcat $CWD/mysql-global.conf.patch.gz | patch -p1 --verbose || exit 1
+
+# Work around problems with MariaDB 10.2
+zcat $CWD/akonadi-mariadb-10.2.patch.gz | patch -p1 --verbose || exit 1
+
# If we do not specify the correct QT_PLUGINS_DIR, then the application
# decides on using $QT4DIR/qt4/plugins instead.
mkdir -p build
diff --git a/source/l/akonadi/mysql-global.conf.patch b/source/l/akonadi/mysql-global.conf.patch
new file mode 100644
index 000000000..24bf6ea0c
--- /dev/null
+++ b/source/l/akonadi/mysql-global.conf.patch
@@ -0,0 +1,21 @@
+diff -r -u akonadi-1.13.0.orig/server/src/storage/mysql-global.conf akonadi-1.13.0/server/src/storage/mysql-global.conf
+--- akonadi-1.13.0.orig/server/src/storage/mysql-global.conf 2014-08-10 12:38:58.000000000 +0200
++++ akonadi-1.13.0/server/src/storage/mysql-global.conf 2017-08-31 19:43:35.000000000 +0200
+@@ -37,13 +37,13 @@
+ # use InnoDB for transactions and better crash recovery
+ default_storage_engine=innodb
+
+-# memory pool InnoDB uses to store data dictionary information and other internal data structures (default:1M)
+-# Deprecated in MySQL >= 5.6.3
+-innodb_additional_mem_pool_size=1M
++# memory pool InnoDB uses to store data dictionary information and other internal data structures (default:8M)
++# Deprecated in MySQL >= 5.6.3, removed in 5.7 (works in MariaDB)
++# innodb_additional_mem_pool_size=8M
+
+ # memory buffer InnoDB uses to cache data and indexes of its tables (default:128M)
+ # Larger values means less I/O
+-innodb_buffer_pool_size=80M
++innodb_buffer_pool_size=128M
+
+ # Create a .ibd file for each table (default:0)
+ innodb_file_per_table=1
diff --git a/source/l/akonadi/slack-desc b/source/l/akonadi/slack-desc
index d0c26bb62..e046a8876 100644
--- a/source/l/akonadi/slack-desc
+++ b/source/l/akonadi/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
@@ -13,7 +13,7 @@ akonadi: and meta data providing concurrent read, write, and query access.
akonadi: It will provide a unique desktop wide object identification and
akonadi: retrieval.
akonadi:
-akonadi: Homepage: http://www.kdepim.org/akonadi/
+akonadi: Homepage: http://www.kdepim.org/akonadi/
akonadi:
akonadi:
akonadi:
diff --git a/source/l/alsa-lib/alsa-lib.SlackBuild b/source/l/alsa-lib/alsa-lib.SlackBuild
index 1a94182f2..44a216e04 100755
--- a/source/l/alsa-lib/alsa-lib.SlackBuild
+++ b/source/l/alsa-lib/alsa-lib.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
-VERSION=${VERSION:-$(echo alsa-lib-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+PKGNAM=alsa-lib
+VERSION=${VERSION:-$(echo alsa-lib-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -36,7 +38,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-alsa-lib
@@ -54,15 +55,31 @@ else
LIBDIRSUFFIX=""
fi
+# If this package is being built for ALSA (no PulseAudio), use the _alsa $TAG:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf alsa-lib-$VERSION
-tar xvf $CWD/alsa-lib-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/alsa-lib-$VERSION.tar.?z || exit 1
cd alsa-lib-$VERSION || exit 1
-zcat $CWD/alsa-lib.fdba9e1bad8f769a6137e565471f0227f23a3132.diff.gz | patch -p1 --verbose || exit 1
+# Fix file missing in 1.1.6:
+if [ ! -r src/conf/smixer.conf ]; then
+ cp -a $CWD/smixer.conf src/conf
+fi
chown -R root:root .
find . \
@@ -74,17 +91,27 @@ find . \
CFLAGS="$SLKCFLAGS" \
./configure \
--libdir=/usr/lib${LIBDIRSUFFIX} \
+ --enable-mixer-modules \
+ --enable-mixer-pymods \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-# Redirect to PulseAudio:
mkdir $PKG/etc
-cp -a $CWD/asound.conf $PKG/etc/asound.conf.new
+if [ "$TAG" = "_alsa" ]; then
+ # Ship an empty asound.conf for ALSA-only system:
+ cp -a $CWD/asound.conf.alsa $PKG/etc/asound.conf.new
+else
+ # Redirect to PulseAudio:
+ cp -a $CWD/asound.conf.pulse $PKG/etc/asound.conf.new
+fi
chmod 644 $PKG/etc/asound.conf.new
chown root:root $PKG/etc/asound.conf.new
@@ -113,5 +140,5 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $TMP/alsa-lib-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/alsa-lib-$VERSION-$ARCH-$BUILD$TAG.txz
diff --git a/source/l/alsa-lib/alsa-lib.fdba9e1bad8f769a6137e565471f0227f23a3132.diff b/source/l/alsa-lib/alsa-lib.fdba9e1bad8f769a6137e565471f0227f23a3132.diff
deleted file mode 100644
index b5aad2bbb..000000000
--- a/source/l/alsa-lib/alsa-lib.fdba9e1bad8f769a6137e565471f0227f23a3132.diff
+++ /dev/null
@@ -1,102 +0,0 @@
-From: Takashi Iwai <tiwai@suse.de>
-Date: Thu, 14 Apr 2016 15:33:03 +0000 (+0200)
-Subject: pcm: Fallback open as the first instance for dmix & co
-X-Git-Url: http://git.alsa-project.org/?p=alsa-lib.git;a=commitdiff_plain;h=fdba9e1bad8f769a6137e565471f0227f23a3132;hp=e57b521c61f0df14b660ce6ba8c5009a63f5b115
-
-pcm: Fallback open as the first instance for dmix & co
-
-dmix and other PCM plugins tries to open a secondary stream with
-O_APPEND flag when the shmem was already attached by another.
-However, when another streams have been already closed after the
-shmem check, this open may return the error EBADFD, since the kernel
-accepts O_APPEND only for the secondary streams.
-
-This patch adds a workaround for such a case. It just retries opening
-the stream as the first instance (i.e. without O_APPEND flag).
-This is basically safe behavior (the kernel takes care of races), even
-we may do this even unconditionally. But it's bad from the
-performance POV, so we do it only when really needed.
-
-Reported-by: Lars Lindqvist <lars.lindqvist@yandex.ru>
-Signed-off-by: Takashi Iwai <tiwai@suse.de>
----
-
-diff --git a/src/pcm/pcm_dmix.c b/src/pcm/pcm_dmix.c
-index b26a5c7..007d356 100644
---- a/src/pcm/pcm_dmix.c
-+++ b/src/pcm/pcm_dmix.c
-@@ -1020,6 +1020,7 @@ int snd_pcm_dmix_open(snd_pcm_t **pcmp, const char *name,
- dmix->max_periods = opts->max_periods;
- dmix->sync_ptr = snd_pcm_dmix_sync_ptr;
-
-+ retry:
- if (first_instance) {
- /* recursion is already checked in
- snd_pcm_direct_get_slave_ipc_offset() */
-@@ -1076,6 +1077,13 @@ int snd_pcm_dmix_open(snd_pcm_t **pcmp, const char *name,
- SND_PCM_APPEND,
- NULL);
- if (ret < 0) {
-+ /* all other streams have been closed;
-+ * retry as the first instance
-+ */
-+ if (ret == -EBADFD) {
-+ first_instance = 1;
-+ goto retry;
-+ }
- SNDERR("unable to open slave");
- goto _err;
- }
-diff --git a/src/pcm/pcm_dshare.c b/src/pcm/pcm_dshare.c
-index 58e47bb..adb3587 100644
---- a/src/pcm/pcm_dshare.c
-+++ b/src/pcm/pcm_dshare.c
-@@ -690,6 +690,7 @@ int snd_pcm_dshare_open(snd_pcm_t **pcmp, const char *name,
- break;
- }
-
-+ retry:
- first_instance = ret = snd_pcm_direct_shm_create_or_connect(dshare);
- if (ret < 0) {
- SNDERR("unable to create IPC shm instance");
-@@ -758,6 +759,13 @@ int snd_pcm_dshare_open(snd_pcm_t **pcmp, const char *name,
- SND_PCM_APPEND,
- NULL);
- if (ret < 0) {
-+ /* all other streams have been closed;
-+ * retry as the first instance
-+ */
-+ if (ret == -EBADFD) {
-+ first_instance = 1;
-+ goto retry;
-+ }
- SNDERR("unable to open slave");
- goto _err;
- }
-diff --git a/src/pcm/pcm_dsnoop.c b/src/pcm/pcm_dsnoop.c
-index 576c35b..8ff0ba5 100644
---- a/src/pcm/pcm_dsnoop.c
-+++ b/src/pcm/pcm_dsnoop.c
-@@ -583,6 +583,7 @@ int snd_pcm_dsnoop_open(snd_pcm_t **pcmp, const char *name,
- break;
- }
-
-+ retry:
- first_instance = ret = snd_pcm_direct_shm_create_or_connect(dsnoop);
- if (ret < 0) {
- SNDERR("unable to create IPC shm instance");
-@@ -651,6 +652,13 @@ int snd_pcm_dsnoop_open(snd_pcm_t **pcmp, const char *name,
- SND_PCM_APPEND,
- NULL);
- if (ret < 0) {
-+ /* all other streams have been closed;
-+ * retry as the first instance
-+ */
-+ if (ret == -EBADFD) {
-+ first_instance = 1;
-+ goto retry;
-+ }
- SNDERR("unable to open slave");
- goto _err;
- }
-
diff --git a/source/l/alsa-lib/asound.conf.alsa b/source/l/alsa-lib/asound.conf.alsa
new file mode 100644
index 000000000..4d81f4306
--- /dev/null
+++ b/source/l/alsa-lib/asound.conf.alsa
@@ -0,0 +1 @@
+# ALSA system-wide config file
diff --git a/source/l/alsa-lib/asound.conf b/source/l/alsa-lib/asound.conf.pulse
index d8c8c317d..d8c8c317d 100644
--- a/source/l/alsa-lib/asound.conf
+++ b/source/l/alsa-lib/asound.conf.pulse
diff --git a/source/l/alsa-lib/slack-desc b/source/l/alsa-lib/slack-desc
index 11afb8366..07ec7cfac 100644
--- a/source/l/alsa-lib/slack-desc
+++ b/source/l/alsa-lib/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
alsa-lib: alsa-lib (Advanced Linux Sound Architecture library)
alsa-lib:
alsa-lib: The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI
-alsa-lib: functionality to the Linux operating system. This is the ALSA library
+alsa-lib: functionality to the Linux operating system. This is the ALSA library
alsa-lib: (libasound) which is used by audio applications.
alsa-lib:
alsa-lib: For more information, see http://alsa-project.org
diff --git a/source/l/alsa-lib/smixer.conf b/source/l/alsa-lib/smixer.conf
new file mode 100644
index 000000000..f215661ec
--- /dev/null
+++ b/source/l/alsa-lib/smixer.conf
@@ -0,0 +1,13 @@
+_full smixer-python.so
+usb {
+ searchl "USB"
+ lib smixer-usb.so
+}
+ac97 {
+ searchl "AC97a:"
+ lib smixer-ac97.so
+}
+hda {
+ searchl "HDA:"
+ lib smixer-hda.so
+}
diff --git a/source/l/alsa-oss/alsa-oss.SlackBuild b/source/l/alsa-oss/alsa-oss.SlackBuild
index b6073ebcc..5f938fd09 100755
--- a/source/l/alsa-oss/alsa-oss.SlackBuild
+++ b/source/l/alsa-oss/alsa-oss.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=alsa-oss
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-alsa-oss
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,8 +67,8 @@ fi
cd $TMP
rm -rf alsa-oss-$VERSION
-tar xvf $CWD/alsa-oss-$VERSION.tar.?z* || exit 1
-cd alsa-oss-$VERSION
+tar xvf $CWD/alsa-oss-$VERSION.tar.?z || exit 1
+cd alsa-oss-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -75,10 +83,13 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--sysconfdir=/etc \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
gzip -9 $PKG/usr/man/man?/*.?
( cd $PKG
diff --git a/source/l/alsa-oss/slack-desc b/source/l/alsa-oss/slack-desc
index 0a1258e3a..258ba475a 100644
--- a/source/l/alsa-oss/slack-desc
+++ b/source/l/alsa-oss/slack-desc
@@ -1,16 +1,16 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
alsa-oss: alsa-oss (library/wrapper to use OSS programs with ALSA)
alsa-oss:
alsa-oss: The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI
-alsa-oss: functionality to the Linux operating system. OSS (Open Sound System)
-alsa-oss: is an older sound system for Linux that ALSA is replacing. Using
+alsa-oss: functionality to the Linux operating system. OSS (Open Sound System)
+alsa-oss: is an older sound system for Linux that ALSA is replacing. Using
alsa-oss: the aoss wrapper you can use programs that only support OSS with ALSA
alsa-oss: without having to load the OSS compatibility kernel modules.
alsa-oss:
diff --git a/source/l/alsa-plugins/alsa-plugins.SlackBuild b/source/l/alsa-plugins/alsa-plugins.SlackBuild
index 5f14bdbca..188663ea5 100755
--- a/source/l/alsa-plugins/alsa-plugins.SlackBuild
+++ b/source/l/alsa-plugins/alsa-plugins.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,13 +20,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=alsa-plugins
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -56,11 +57,24 @@ else
LIBDIRSUFFIX=""
fi
+# If this package is being built for ALSA (no PulseAudio), use the _alsa $TAG:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find -L . \
@@ -94,4 +108,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz
diff --git a/source/l/alsa-plugins/slack-desc b/source/l/alsa-plugins/slack-desc
index 734e3a264..da81f4e34 100644
--- a/source/l/alsa-plugins/slack-desc
+++ b/source/l/alsa-plugins/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -12,7 +12,7 @@ alsa-plugins: The Advanced Linux Sound Architecture (ALSA) provides audio and MI
alsa-plugins: functionality to the Linux operating system.
alsa-plugins: This package includes plugins for ALSA.
alsa-plugins:
-alsa-plugins: Website: http://www.alsa-project.org
+alsa-plugins: Website: http://www.alsa-project.org
alsa-plugins:
alsa-plugins:
alsa-plugins:
diff --git a/source/l/apr-util/apr-util-mariadb-upstream.patch b/source/l/apr-util/apr-util-mariadb-upstream.patch
new file mode 100644
index 000000000..dd1c5a3aa
--- /dev/null
+++ b/source/l/apr-util/apr-util-mariadb-upstream.patch
@@ -0,0 +1,128 @@
+Upstream patch for building with mariadb:
+Taken from https://bz.apache.org/bugzilla/show_bug.cgi?id=61517
+BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1494093
+
+--- a/build/dbd.m4 2017-05-03 19:18:52.000000000 -0400
++++ a/build/dbd.m4 2017-09-13 16:58:07.369546391 -0400
+@@ -163,10 +163,15 @@
+ old_cppflags="$CPPFLAGS"
+ old_ldflags="$LDFLAGS"
+
++ my_library="mysqlclient"
++
+ AC_ARG_WITH([mysql], APR_HELP_STRING([--with-mysql=DIR], [enable MySQL DBD driver]),
+ [
+ if test "$withval" = "yes"; then
+ AC_PATH_PROG([MYSQL_CONFIG],[mysql_config])
++ if test "x$MYSQL_CONFIG" = "x"; then
++ AC_PATH_PROG([MYSQL_CONFIG],[mariadb_config])
++ fi
+ if test "x$MYSQL_CONFIG" != 'x'; then
+ mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
+ mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
+@@ -174,32 +179,40 @@
+
+ APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
+ APR_ADDTO(LIBS, [$mysql_LIBS])
++
++ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
++ my_library="mariadb"
++ fi
+ fi
+
+- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
+- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
+- [apu_have_mysql=0; break],
+- [#include <my_global.h>])
+- if test "$apu_have_mysql" = "0"; then
+- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
+- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
+- [apu_have_mysql=0; break],
+- [#include <mysql/my_global.h>])
++ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
++ if test "$apr_have_mysql" = "0"; then
++ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
+ fi
+- if test "$apu_have_mysql" != "0" && test "x$MYSQL_CONFIG" != 'x'; then
+- APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
++ if test "$apr_have_mysql" = "1"; then
++ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
++ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
++ fi
++ if test "$apu_have_mysql" = "1" && test "x$MYSQL_CONFIG" != 'x'; then
++ APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
+ fi
+ elif test "$withval" = "no"; then
+ :
+ else
+ AC_PATH_PROG([MYSQL_CONFIG],[mysql_config],,[$withval/bin])
++ if test "x$MYSQL_CONFIG" = "x"; then
++ AC_PATH_PROG([MYSQL_CONFIG],[mariadb_config],,[$withval/bin])
++ fi
+ if test "x$MYSQL_CONFIG" != 'x'; then
+- mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
+- mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
+- mysql_LIBS="`$MYSQL_CONFIG --libs_r`"
++ mysql_CPPFLAGS="`$MYSQL_CONFIG --include`"
++ mysql_LDFLAGS="`$MYSQL_CONFIG --libs_r | sed -e 's/-l[[^ ]]\+//g'`"
++ mysql_LIBS="`$MYSQL_CONFIG --libs_r`"
++ if $MYSQL_CONFIG --libs_r | grep -q mariadb; then
++ my_library="mariadb"
++ fi
+ else
+- mysql_CPPFLAGS="-I$withval/include"
+- mysql_LDFLAGS="-L$withval/lib "
++ mysql_CPPFLAGS="-I$withval/include"
++ mysql_LDFLAGS="-L$withval/lib "
+ fi
+
+ APR_ADDTO(CPPFLAGS, [$mysql_CPPFLAGS])
+@@ -207,18 +220,15 @@
+ APR_ADDTO(LIBS, [$mysql_LIBS])
+
+ AC_MSG_NOTICE(checking for mysql in $withval)
+- AC_CHECK_HEADERS([mysql.h my_global.h my_sys.h],
+- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
+- [apu_have_mysql=0; break],
+- [#include <my_global.h>])
+-
+- if test "$apu_have_mysql" != "1"; then
+- AC_CHECK_HEADERS([mysql/mysql.h mysql/my_global.h mysql/my_sys.h],
+- AC_CHECK_LIB(mysqlclient, mysql_init, [apu_have_mysql=1]),
+- [apu_have_mysql=0; break],
+- [#include <mysql/my_global.h>])
++ AC_CHECK_HEADERS([mysql.h errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
++ if test "$apr_have_mysql" = "0"; then
++ AC_CHECK_HEADERS([mysql/mysql.h mysql/errmsg.h], [apu_have_mysql=1], [apu_have_mysql=0; break])
++ fi
++ if test "$apr_have_mysql" = "1"; then
++ AC_CHECK_HEADERS([my_global.h my_sys.h mysql/my_global.h mysql/my_sys.h])
++ AC_CHECK_LIB($my_library, mysql_init,, [apu_have_mysql=0])
+ fi
+- if test "$apu_have_mysql" != "0"; then
++ if test "$apu_have_mysql" = "1"; then
+ APR_ADDTO(APRUTIL_PRIV_INCLUDES, [$mysql_CPPFLAGS])
+ fi
+ fi
+@@ -229,7 +239,7 @@
+ dnl Since we have already done the AC_CHECK_LIB tests, if we have it,
+ dnl we know the library is there.
+ if test "$apu_have_mysql" = "1"; then
+- APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -lmysqlclient $mysql_LIBS])
++ APR_ADDTO(LDADD_dbd_mysql, [$mysql_LDFLAGS -l$my_library $mysql_LIBS])
+ fi
+ AC_SUBST(LDADD_dbd_mysql)
+
+--- a/dbd/apr_dbd_mysql.c 2017-05-03 19:18:52.000000000 -0400
++++ a/dbd/apr_dbd_mysql.c 2017-09-13 19:15:20.894368809 -0400
+@@ -1262,7 +1262,9 @@
+
+ static void dbd_mysql_init(apr_pool_t *pool)
+ {
++#if MYSQL_VERSION_ID < 100000
+ my_init();
++#endif
+ mysql_thread_init();
+
+ /* FIXME: this is a guess; find out what it really does */
+
diff --git a/source/l/apr-util/apr-util.SlackBuild b/source/l/apr-util/apr-util.SlackBuild
index 74fae2496..267c72ceb 100755
--- a/source/l/apr-util/apr-util.SlackBuild
+++ b/source/l/apr-util/apr-util.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=apr-util
VERSION=${VERSION:-$(echo apr-util-*.tar.bz2 | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-7}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -34,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -50,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-apr-util
@@ -60,16 +69,10 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf apr-util-$VERSION
tar xvf $CWD/apr-util-$VERSION.tar.bz2 || exit 1
-cd apr-util-$VERSION
-
-# For now, this isn't working with svn (here, anyway) and is probably
-# more trouble than it's worth. Could be a grey area in regards to
-# licensing, too -- the Apache people say it's fine for third parties
-# to link this and distribute the result, but there are usually some
-# differing opinions when it comes to this sort of thing...
-#( cd dbd ; lftpget http://apache.webthing.com/svn/apache/apr/apr_dbd_mysql.c )
-# --with-mysql=/usr \
-#
+cd apr-util-$VERSION || exit 1
+
+# Fix issues using recent mariadb:
+zcat $CWD/apr-util-mariadb-upstream.patch.gz | patch -p1 --verbose || exit 1
chown -R root:root .
find . \
@@ -85,16 +88,19 @@ CFLAGS="$SLKCFLAGS" \
--with-apr=/usr \
--with-dbm=db44 \
--with-berkeley-db \
+ --with-mysql=/usr \
--disable-util-dso \
--without-gdbm \
--with-ldap \
- --disable-static \
--without-sqlite2 \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make dox || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/apr-util/apr-util.url b/source/l/apr-util/apr-util.url
index d2237c51d..6a5299df2 100644
--- a/source/l/apr-util/apr-util.url
+++ b/source/l/apr-util/apr-util.url
@@ -1,2 +1,2 @@
-http://www.apache.org/dist/apr/apr-util-1.5.4.tar.bz2
-http://www.apache.org/dist/apr/apr-util-1.5.4.tar.bz2.asc
+http://www.apache.org/dist/apr/apr-util-1.6.1.tar.bz2
+http://www.apache.org/dist/apr/apr-util-1.6.1.tar.bz2.asc
diff --git a/source/l/apr-util/slack-desc b/source/l/apr-util/slack-desc
index cec19063e..0e5f1009d 100644
--- a/source/l/apr-util/slack-desc
+++ b/source/l/apr-util/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/apr/apr.SlackBuild b/source/l/apr/apr.SlackBuild
index e9fdb3612..b43764b98 100755
--- a/source/l/apr/apr.SlackBuild
+++ b/source/l/apr/apr.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=apr
VERSION=${VERSION:-$(echo apr-*.tar.bz2 | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -34,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -50,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-apr
@@ -60,7 +69,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf apr-$VERSION
tar xvf $CWD/apr-$VERSION.tar.bz2 || exit 1
-cd apr-$VERSION
+cd apr-$VERSION || exit 1
chown -R root:root .
find . \
@@ -76,12 +85,15 @@ CFLAGS="$SLKCFLAGS" \
--with-installbuilddir=/usr/lib${LIBDIRSUFFIX}/apr-${VERSION}/build-1 \
--disable-static \
--with-devrandom=/dev/urandom \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make dox || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/apr/apr.url b/source/l/apr/apr.url
index 9bb253929..2a3c19d10 100644
--- a/source/l/apr/apr.url
+++ b/source/l/apr/apr.url
@@ -1,2 +1,2 @@
-http://www.apache.org/dist/apr/apr-1.5.2.tar.bz2
-http://www.apache.org/dist/apr/apr-1.5.2.tar.bz2.asc
+http://www.apache.org/dist/apr/apr-1.6.3.tar.bz2
+http://www.apache.org/dist/apr/apr-1.6.3.tar.bz2.asc
diff --git a/source/l/apr/slack-desc b/source/l/apr/slack-desc
index 2e52660d5..bc9236870 100644
--- a/source/l/apr/slack-desc
+++ b/source/l/apr/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/aspell-dict/aspell-dict.SlackBuild b/source/l/aspell-dict/aspell-dict.SlackBuild
deleted file mode 100755
index f2333eb5e..000000000
--- a/source/l/aspell-dict/aspell-dict.SlackBuild
+++ /dev/null
@@ -1,79 +0,0 @@
-#!/bin/sh
-
-# Copyright 2008, 2009, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-aspell-dict
-
-# Automatically determine the architecture we're building on:
-if [ -z "$ARCH" ]; then
- case "$(uname -m)" in
- i?86) ARCH=i586 ;;
- arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) ARCH=$(uname -m) ;;
- esac
- export ARCH
-fi
-
-cd src
-for file in aspell*bz2 ; do
- NAME=$(echo $file | cut -f 1-2 -d -)-$(echo $file | cut -f 3- -d - | rev | cut -b9- | rev | tr '[\-]' '[_]')
- if [ -r $CWD/build/$(basename $file | cut -f 1,2 -d -) ]; then
- BUILD="$(cat $CWD/build/$(basename $file | cut -f 1,2 -d -))"
- else
- BUILD=1
- fi
- rm -rf $PKG
- mkdir -p $TMP $PKG
- cd $TMP
- rm -rf $(basename $file .tar.bz2)
- tar xjf $CWD/src/$file
- cd $(basename $file .tar.bz2)
- chown -R root:root .
- ./configure || exit 1
- make || exit 1
- make install DESTDIR=$PKG || exit 1
- # Use a uniform package name.
- NAME=$(echo $NAME | sed 's/aspell5/aspell/' | sed 's/aspell6/aspell/')
- mkdir -p $PKG/usr/doc/${NAME}
- cp -a \
- README Copyright \
- $PKG/usr/doc/${NAME}
- chmod 644 $PKG/usr/doc/${NAME}/*
- mkdir $PKG/install
- SLACKDESC=$(echo $NAME | cut -f 1-2 -d -)
- echo "${SLACKDESC}: ${SLACKDESC}" > $PKG/install/slack-desc
- echo "${SLACKDESC}:" >> $PKG/install/slack-desc
- echo "${SLACKDESC}: $(head -n 1 README)." >> $PKG/install/slack-desc
- echo "${SLACKDESC}:" >> $PKG/install/slack-desc
- echo "${SLACKDESC}:" >> $PKG/install/slack-desc
- echo "${SLACKDESC}:" >> $PKG/install/slack-desc
- echo "${SLACKDESC}:" >> $PKG/install/slack-desc
- echo "${SLACKDESC}:" >> $PKG/install/slack-desc
- echo "${SLACKDESC}:" >> $PKG/install/slack-desc
- echo "${SLACKDESC}:" >> $PKG/install/slack-desc
- echo "${SLACKDESC}:" >> $PKG/install/slack-desc
- cd $PKG
- makepkg -l y -c n $TMP/${NAME}-$ARCH-$BUILD.txz
-done || exit 1
diff --git a/source/l/aspell-dict/build/aspell-af b/source/l/aspell-dict/build/aspell-af
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-af
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-br b/source/l/aspell-dict/build/aspell-br
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-br
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-cy b/source/l/aspell-dict/build/aspell-cy
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-cy
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-el b/source/l/aspell-dict/build/aspell-el
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-el
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-fr b/source/l/aspell-dict/build/aspell-fr
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-fr
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-gv b/source/l/aspell-dict/build/aspell-gv
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-gv
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-hr b/source/l/aspell-dict/build/aspell-hr
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-hr
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-ia b/source/l/aspell-dict/build/aspell-ia
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-ia
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-is b/source/l/aspell-dict/build/aspell-is
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-is
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-mi b/source/l/aspell-dict/build/aspell-mi
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-mi
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-mk b/source/l/aspell-dict/build/aspell-mk
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-mk
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-ms b/source/l/aspell-dict/build/aspell-ms
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-ms
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-mt b/source/l/aspell-dict/build/aspell-mt
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-mt
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-nb b/source/l/aspell-dict/build/aspell-nb
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-nb
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-nl b/source/l/aspell-dict/build/aspell-nl
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-nl
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-nn b/source/l/aspell-dict/build/aspell-nn
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-nn
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-no b/source/l/aspell-dict/build/aspell-no
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-no
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-pt b/source/l/aspell-dict/build/aspell-pt
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-pt
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-rw b/source/l/aspell-dict/build/aspell-rw
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-rw
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-sl b/source/l/aspell-dict/build/aspell-sl
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-sl
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-sv b/source/l/aspell-dict/build/aspell-sv
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-sv
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-sw b/source/l/aspell-dict/build/aspell-sw
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-sw
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-tr b/source/l/aspell-dict/build/aspell-tr
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-tr
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-wa b/source/l/aspell-dict/build/aspell-wa
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-wa
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell-zu b/source/l/aspell-dict/build/aspell-zu
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell-zu
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-be b/source/l/aspell-dict/build/aspell5-be
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-be
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-da b/source/l/aspell-dict/build/aspell5-da
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-da
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-fo b/source/l/aspell-dict/build/aspell5-fo
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-fo
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-gd b/source/l/aspell-dict/build/aspell5-gd
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-gd
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-hil b/source/l/aspell-dict/build/aspell5-hil
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-hil
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-id b/source/l/aspell-dict/build/aspell5-id
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-id
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-mg b/source/l/aspell-dict/build/aspell5-mg
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-mg
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-ny b/source/l/aspell-dict/build/aspell5-ny
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-ny
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-sc b/source/l/aspell-dict/build/aspell5-sc
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-sc
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-tet b/source/l/aspell-dict/build/aspell5-tet
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-tet
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-tl b/source/l/aspell-dict/build/aspell5-tl
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-tl
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell5-tn b/source/l/aspell-dict/build/aspell5-tn
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell5-tn
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-am b/source/l/aspell-dict/build/aspell6-am
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-am
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-az b/source/l/aspell-dict/build/aspell6-az
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-az
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-bn b/source/l/aspell-dict/build/aspell6-bn
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-bn
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-ca b/source/l/aspell-dict/build/aspell6-ca
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-ca
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-cs b/source/l/aspell-dict/build/aspell6-cs
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-cs
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-csb b/source/l/aspell-dict/build/aspell6-csb
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-csb
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-de b/source/l/aspell-dict/build/aspell6-de
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-de
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-et b/source/l/aspell-dict/build/aspell6-et
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-et
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-fi b/source/l/aspell-dict/build/aspell6-fi
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-fi
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-he b/source/l/aspell-dict/build/aspell6-he
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-he
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-hu b/source/l/aspell-dict/build/aspell6-hu
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-hu
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-it b/source/l/aspell-dict/build/aspell6-it
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-it
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-la b/source/l/aspell-dict/build/aspell6-la
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-la
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-lv b/source/l/aspell-dict/build/aspell6-lv
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-lv
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-mr b/source/l/aspell-dict/build/aspell6-mr
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-mr
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-nds b/source/l/aspell-dict/build/aspell6-nds
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-nds
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-or b/source/l/aspell-dict/build/aspell6-or
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-or
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-pa b/source/l/aspell-dict/build/aspell6-pa
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-pa
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-qu b/source/l/aspell-dict/build/aspell6-qu
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-qu
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-ru b/source/l/aspell-dict/build/aspell6-ru
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-ru
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-sr b/source/l/aspell-dict/build/aspell6-sr
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-sr
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-ta b/source/l/aspell-dict/build/aspell6-ta
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-ta
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-te b/source/l/aspell-dict/build/aspell6-te
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-te
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-vi b/source/l/aspell-dict/build/aspell6-vi
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-vi
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/aspell6-yi b/source/l/aspell-dict/build/aspell6-yi
deleted file mode 100644
index 7ed6ff82d..000000000
--- a/source/l/aspell-dict/build/aspell6-yi
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/source/l/aspell-dict/build/increment-all-dict.sh b/source/l/aspell-dict/build/increment-all-dict.sh
deleted file mode 100755
index 99861dc62..000000000
--- a/source/l/aspell-dict/build/increment-all-dict.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-# A script to increment build numbers of all the dictionaries.
-#
-# Any that are newly added should not have a build file in
-# here (or it should contain "1"). The usual method is to run this
-# script and then remove the build files for any new driver versions.
-
-for DICTSRC in ../src/* ; do
- DICTBASENAME=$(basename $DICTSRC | cut -f 1,2 -d -)
- ./increment.sh $DICTBASENAME
-done
-
diff --git a/source/l/aspell-dict/build/increment.sh b/source/l/aspell-dict/build/increment.sh
deleted file mode 100755
index eff1356f0..000000000
--- a/source/l/aspell-dict/build/increment.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-# A script to increment build numbers.
-# Call it with the list of the build numbers to increase by one:
-#
-# ./increment.sh aspell6-pt_BR aspell6-qu
-#
-# If a build file does not exist, it will be created with a value of 2.
-
-for build in $* ; do
- if [ ! -r $build ]; then
- echo "Creating $build with value 2"
- echo 2 > $build
- else
- echo "Incrementing $build $(cat $build) -> $(expr $(cat $build) + 1)"
- echo $(expr $(cat $build) + 1) > $build
- fi
-done
diff --git a/source/l/aspell/aspell.SlackBuild b/source/l/aspell/aspell.SlackBuild
index 71c814616..02cd5a4d8 100755
--- a/source/l/aspell/aspell.SlackBuild
+++ b/source/l/aspell/aspell.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=aspell
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-aspell
@@ -70,7 +78,7 @@ find . \
-exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -80,17 +88,22 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-data-dir=/usr/lib${LIBDIRSUFFIX}/aspell \
--enable-pkglibdir=/usr/lib${LIBDIRSUFFIX}/aspell \
--enable-dict-dir=/usr/lib${LIBDIRSUFFIX}/aspell \
- --build=$ARCH-slackware-linux
-make $NUMJOBS || exit 1
-make install
-ldconfig
-make install DESTDIR=$PKG
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
( cd $PKG
find . | xargs file | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded
)
+
## This looks like crap clutter to me
## ... turns out to be required. How ugly...
#rm -f $PKG/usr/bin/pre*
+
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*
gzip -9 $PKG/usr/man/man?/*.?
diff --git a/source/l/aspell/slack-desc b/source/l/aspell/slack-desc
index abd31522e..4a120dd87 100644
--- a/source/l/aspell/slack-desc
+++ b/source/l/aspell/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/at-spi2-atk/at-spi2-atk.SlackBuild b/source/l/at-spi2-atk/at-spi2-atk.SlackBuild
index fd26fc634..b43316d91 100755
--- a/source/l/at-spi2-atk/at-spi2-atk.SlackBuild
+++ b/source/l/at-spi2-atk/at-spi2-atk.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=at-spi2-atk
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -60,7 +68,7 @@ mkdir -p $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -78,11 +86,14 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
AUTHORS COPYING* INSTALL NEWS README* \
diff --git a/source/l/at-spi2-atk/slack-desc b/source/l/at-spi2-atk/slack-desc
index e3d1a82d9..a2dd0e960 100644
--- a/source/l/at-spi2-atk/slack-desc
+++ b/source/l/at-spi2-atk/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/at-spi2-core/at-spi2-core.SlackBuild b/source/l/at-spi2-core/at-spi2-core.SlackBuild
index 7985010b5..39e640f8e 100755
--- a/source/l/at-spi2-core/at-spi2-core.SlackBuild
+++ b/source/l/at-spi2-core/at-spi2-core.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=at-spi2-core
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -69,21 +77,20 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir build
+cd build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-mv $PKG/etc/at-spi2/accessibility.conf $PKG/etc/at-spi2/accessibility.conf.new
+ .. || exit 1
+ ninja || exit 1
+ DESTDIR=$PKG ninja install || exit 1
+cd ..
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
@@ -100,7 +107,6 @@ fi
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
-zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/at-spi2-core/doinst.sh b/source/l/at-spi2-core/doinst.sh
deleted file mode 100644
index 6a1207c1f..000000000
--- a/source/l/at-spi2-core/doinst.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-config() {
- NEW="$1"
- OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
- if [ ! -r $OLD ]; then
- mv $NEW $OLD
- elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
- rm $NEW
- fi
- # Otherwise, we leave the .new copy for the admin to consider...
-}
-
-config etc/at-spi2/accessibility.conf.new
-
diff --git a/source/l/at-spi2-core/slack-desc b/source/l/at-spi2-core/slack-desc
index fa2cc4869..0a27bd046 100644
--- a/source/l/at-spi2-core/slack-desc
+++ b/source/l/at-spi2-core/slack-desc
@@ -2,14 +2,14 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
at-spi2-core: at-spi2-core (Assistive Technology Service Provider Interface core)
at-spi2-core:
at-spi2-core: The At-Spi2 Core package is a part of the GNOME Accessibility
-at-spi2-core: Project. It provides a service provider interface for the
+at-spi2-core: Project. It provides a service provider interface for the
at-spi2-core: assistive technologies available on the GNOME platform and a
at-spi2-core: library against which applications can be linked.
at-spi2-core:
diff --git a/source/l/atk/atk.SlackBuild b/source/l/atk/atk.SlackBuild
index 497c698e3..696a5a6ac 100755
--- a/source/l/atk/atk.SlackBuild
+++ b/source/l/atk/atk.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=atk
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -37,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-atk
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG/usr
cd $TMP
rm -rf atk-$VERSION
tar xvf $CWD/atk-$VERSION.tar.xz || exit 1
-cd atk-$VERSION
+cd atk-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -74,10 +82,13 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--mandir=/usr/man \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/atk/slack-desc b/source/l/atk/slack-desc
index a52cc81eb..2f08aef3f 100644
--- a/source/l/atk/slack-desc
+++ b/source/l/atk/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/atkmm/atkmm.SlackBuild b/source/l/atkmm/atkmm.SlackBuild
index e8c29988c..3eb76e62d 100755
--- a/source/l/atkmm/atkmm.SlackBuild
+++ b/source/l/atkmm/atkmm.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=atkmm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -32,9 +34,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -79,6 +88,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS libdocdir=/usr/doc/$PKGNAM-$VERSION || make libdocdir=/usr/doc/$PKGNAM-$VERSION || exit 1
make install libdocdir=/usr/doc/$PKGNAM-$VERSION DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/atkmm/slack-desc b/source/l/atkmm/slack-desc
index 351d0770c..a931ac446 100644
--- a/source/l/atkmm/slack-desc
+++ b/source/l/atkmm/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ atkmm:
atkmm: atkmm is the C++ binding for the ATK library.
atkmm: This module is part of the GNOME C++ bindings effort.
atkmm:
-atkmm: Homepage: http://www.gtkmm.org/
+atkmm: Homepage: http://www.gtkmm.org/
atkmm:
atkmm:
atkmm:
diff --git a/source/l/attica/attica.SlackBuild b/source/l/attica/attica.SlackBuild
index 9b9868557..29caa7f13 100755
--- a/source/l/attica/attica.SlackBuild
+++ b/source/l/attica/attica.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009, 2010, 2011 Eric Hameleers, Eindhoven, NL
-# Copyright 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=attica
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -32,7 +33,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -40,8 +41,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -57,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/attica/slack-desc b/source/l/attica/slack-desc
index 18aedb8eb..b9a96f33a 100644
--- a/source/l/attica/slack-desc
+++ b/source/l/attica/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-------------------------------------------------------|
diff --git a/source/l/audiofile/audiofile.SlackBuild b/source/l/audiofile/audiofile.SlackBuild
index 43b136a1e..47200047a 100755
--- a/source/l/audiofile/audiofile.SlackBuild
+++ b/source/l/audiofile/audiofile.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=audiofile
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -60,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -72,6 +80,7 @@ find . \
# Configure:
CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -79,12 +88,15 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/audiofile/slack-desc b/source/l/audiofile/slack-desc
index 5ef0b37d0..4375d81a9 100644
--- a/source/l/audiofile/slack-desc
+++ b/source/l/audiofile/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
audiofile: audiofile (audio support library)
audiofile:
audiofile: Audiofile is a library to handle various audio file formats, and is
-audiofile: used by the esound daemon. You can also use it to develop your own
+audiofile: used by the esound daemon. You can also use it to develop your own
audiofile: audiofile applications.
audiofile:
audiofile:
diff --git a/source/l/automoc4/automoc4.SlackBuild b/source/l/automoc4/automoc4.SlackBuild
index 455d2e482..9696f390f 100755
--- a/source/l/automoc4/automoc4.SlackBuild
+++ b/source/l/automoc4/automoc4.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,29 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=automoc4
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-automoc4
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/source/l/automoc4/slack-desc b/source/l/automoc4/slack-desc
index e4fbc8a23..892792ffe 100644
--- a/source/l/automoc4/slack-desc
+++ b/source/l/automoc4/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
diff --git a/source/l/babl/babl.SlackBuild b/source/l/babl/babl.SlackBuild
index 9bf937bbe..5122aa880 100755
--- a/source/l/babl/babl.SlackBuild
+++ b/source/l/babl/babl.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2008, 2009 Robby Workman, Northport, Alabama, USA
# All rights reserved.
#
@@ -21,9 +21,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=babl
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -36,9 +37,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-babl
@@ -60,7 +68,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf babl-$VERSION
-tar xvf $CWD/babl-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/babl-$VERSION.tar.?z || exit 1
cd babl-$VERSION || exit 1
chown -R root:root .
@@ -75,14 +83,17 @@ CFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--docdir=/usr/doc/babl-$VERSION \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Trust defaults:
#--enable-mmx \
#--disable-sse \
#--enable-introspection \
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/babl/babl.url b/source/l/babl/babl.url
new file mode 100644
index 000000000..6b66f8e81
--- /dev/null
+++ b/source/l/babl/babl.url
@@ -0,0 +1 @@
+https://download.gimp.org/pub/babl/
diff --git a/source/l/babl/slack-desc b/source/l/babl/slack-desc
index 1fa63fb58..fd09c3b9a 100644
--- a/source/l/babl/slack-desc
+++ b/source/l/babl/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler---------------------------------------------------------|
diff --git a/source/l/boost/boost.SlackBuild b/source/l/boost/boost.SlackBuild
index d3c906563..a25c555d6 100755
--- a/source/l/boost/boost.SlackBuild
+++ b/source/l/boost/boost.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2008, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2007-2008, 2013, 2014 Heinz Wiesinger, Amsterdam, NL
-# Copyright 2008, 2009, 2010, 2013, 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2007-2008, 2013, 2014, 2017 Heinz Wiesinger, Amsterdam, NL
+# Copyright 2008, 2009, 2010, 2013, 2014, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,9 +26,10 @@
# Script modified by Robby Workman - no copyright claims or added terms
# Modified 2012 by Eric Hameleers <alien at slackware.com> for ARM port.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=boost
-VERSION=${VERSION:-$(echo $PKGNAM_*.tar.?z* | rev | cut -f 3- -d . | rev | cut -f 2- -d _)}
+VERSION=${VERSION:-$(echo $PKGNAM_*.tar.?z | rev | cut -f 3- -d . | rev | cut -f 2- -d _)}
BUILD=${BUILD:-1}
PKG_VERSION=$(echo $VERSION | tr _ .) # Leave this alone
@@ -46,6 +47,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$PKG_VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -63,7 +72,9 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
+PYTHON_VERSION=$(python -c 'import sys; print(sys.version[:3])')
+PYTHON3_VERSION=$(python3 -c 'import sys; print(sys.version[:3])')
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-boost
@@ -71,7 +82,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf boost_$VERSION
-tar xvf $CWD/boost_$VERSION.tar.?z* || exit 1
+tar xvf $CWD/boost_$VERSION.tar.?z || exit 1
cd boost_$VERSION || exit 1
chown -R root:root .
@@ -81,72 +92,91 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# Don't allow MOC to process this incompatible header:
-sed -e '1 i#ifndef Q_MOC_RUN' \
- -e '$ a#endif' \
- -i boost/type_traits/detail/has_binary_operator.hpp
-
-# This is the python we build against:
-PYTHON_VERSION=$(python -c 'import sys; print sys.version[:3]')
-PYTHON_FLAGS="-sPYTHON_ROOT=/usr -sPYTHON_VERSION=$PYTHON_VERSION"
-
# First build bjam, the boost build system:
-cd tools/build/src/engine
- CFLAGS="$SLKCFLAGS -fno-strict-aliasing" CC=gcc ./build.sh cc
-cd -
-
-BJAM=$(find tools/build/src/engine/ -name b2 -a -type f)
-
-# Create build subdirectory
-mkdir obj
-
-# Next, we build boost using bjam
-$BJAM \
- release \
- $NUMJOBS \
- "-sNO_COMPRESSION=0" \
- "-sZLIB_INCLUDE=/usr/include" \
- "-sZLIB_LIBPATH=/usr/lib${LIBDIRSUFFIX}" \
- "-sBZIP2_INCLUDE=/usr/include" \
- "-sBZIP2_LIBPATH=/usr/lib${LIBDIRSUFFIX}" \
- "-sEXPAT_INCLUDE=/usr/include" \
- "-sEXPAT_LIBPATH=/usr/lib${LIBDIRSUFFIX}" \
+./bootstrap.sh \
+ --with-toolset=gcc \
+ --with-icu \
+ --with-python=/usr/bin/python2 || exit 1
+
+# # Next, we build boost using bjam
+./b2 \
--layout=system \
- --builddir=obj \
+ --build-dir=build-python2 \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=/usr/lib$LIBDIRSUFFIX \
--build-type=minimal \
toolset=gcc \
variant=release \
+ debug-symbols=off \
link=shared \
threading=multi \
runtime-link=shared \
+ python=$PYTHON_VERSION \
cflags="$SLKCFLAGS" \
cxxflags="$SLKCFLAGS $EXTRA_CXXFLAGS" \
- $PYTHON_FLAGS \
- stage
+ stage || exit 1
-# And then install boost..
-mkdir -p $PKG/usr/{lib$LIBDIRSUFFIX,include}
+# # And then install boost..
+./b2 \
+ --layout=system \
+ --build-dir=build-python2 \
+ --prefix=$PKG/usr \
+ --libdir=$PKG/usr/lib$LIBDIRSUFFIX \
+ --build-type=minimal \
+ toolset=gcc \
+ variant=release \
+ debug-symbols=off \
+ link=shared \
+ threading=multi \
+ runtime-link=shared \
+ python=$PYTHON_VERSION \
+ cflags="$SLKCFLAGS" \
+ cxxflags="$SLKCFLAGS $EXTRA_CXXFLAGS" \
+ install || exit 1
+
+# one more run to build libboost_python3..
+sed -e '/using python/ s@;@: /usr/include/python${PYTHON_VERSION/3*/${PYTHON_VERSION}m} ;@' \
+ -i bootstrap.sh
+
+./bootstrap.sh \
+ --with-toolset=gcc \
+ --with-icu \
+ --with-python=/usr/bin/python3 \
+ --with-libraries=python || exit 1
+
+./b2 \
+ --layout=system \
+ --build-dir=build-python3 \
+ --prefix=/usr \
+ --libdir=/usr/lib$LIBDIRSUFFIX \
+ --build-type=minimal \
+ toolset=gcc \
+ variant=release \
+ debug-symbols=off \
+ link=shared \
+ threading=multi \
+ runtime-link=shared \
+ python=$PYTHON3_VERSION \
+ cflags="$SLKCFLAGS" \
+ cxxflags="$SLKCFLAGS $EXTRA_CXXFLAGS" \
+ stage || exit 1
-$BJAM \
- release \
- "-sEXPAT_INCLUDE=/usr/include" \
- "-sEXPAT_LIBPATH=/usr/lib${LIBDIRSUFFIX}" \
+./b2 \
--layout=system \
- --builddir=obj \
+ --build-dir=build-python3 \
--prefix=$PKG/usr \
- --libdir=$PKG/usr/lib${LIBDIRSUFFIX} \
+ --libdir=$PKG/usr/lib$LIBDIRSUFFIX \
--build-type=minimal \
toolset=gcc \
variant=release \
+ debug-symbols=off \
link=shared \
threading=multi \
runtime-link=shared \
+ python=$PYTHON3_VERSION \
cflags="$SLKCFLAGS" \
cxxflags="$SLKCFLAGS $EXTRA_CXXFLAGS" \
- $PYTHON_FLAGS \
- install
+ install || exit 1
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/boost/slack-desc b/source/l/boost/slack-desc
index 1b3142ace..28fe3b49b 100644
--- a/source/l/boost/slack-desc
+++ b/source/l/boost/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,10 +10,10 @@ boost: boost (Boost C++ Libraries)
boost:
boost: Boost provides free peer-reviewed portable C++ source libraries.
boost: The emphasis is on libraries that work well with the C++ Standard
-boost: Library. One goal is to establish "existing practice" and provide
+boost: Library. One goal is to establish "existing practice" and provide
boost: reference implementations so that the Boost libraries are suitable
boost: for eventual standardization.
boost:
-boost: Homepage: http://www.boost.org/
+boost: Homepage: http://www.boost.org/
boost:
boost:
diff --git a/source/l/cairo/cairo.SlackBuild b/source/l/cairo/cairo.SlackBuild
index 79170d358..faed7d184 100755
--- a/source/l/cairo/cairo.SlackBuild
+++ b/source/l/cairo/cairo.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2015, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,6 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=cairo
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
@@ -35,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
rm -rf $PKG
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -68,8 +76,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-zcat $CWD/cairo.c088ba1faab9579efdaed7a524124901a17801b0.diff.gz | patch -p1 --verbose || exit 1
-
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -91,7 +97,7 @@ CFLAGS="$SLKCFLAGS" \
--enable-gl \
--enable-gobject \
--enable-xml \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# None of these are 'stable' yet...
# --enable-qt \
@@ -108,7 +114,10 @@ CFLAGS="$SLKCFLAGS" \
# --enable-trace
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/cairo/cairo.c088ba1faab9579efdaed7a524124901a17801b0.diff b/source/l/cairo/cairo.c088ba1faab9579efdaed7a524124901a17801b0.diff
deleted file mode 100644
index c954cc7dd..000000000
--- a/source/l/cairo/cairo.c088ba1faab9579efdaed7a524124901a17801b0.diff
+++ /dev/null
@@ -1,60 +0,0 @@
-From c088ba1faab9579efdaed7a524124901a17801b0 Mon Sep 17 00:00:00 2001
-From: Uli Schlachter <psychon@znc.in>
-Date: Sat, 18 Jun 2016 15:08:52 +0200
-Subject: [PATCH] xlib: Fix double free in _get_image_surface()
-
-If XShmGetImage() fails, the code tries to continue with its normal,
-non-shared-memory path. However, the image variable, which was previously set to
-NULL, now points to an already-destroyed surface, causing a double-free when the
-function cleans up after itself (actually, its an assertion failure because the
-reference count of the surface is zero, but technically this is still a double
-free).
-
-Fix this by setting image=NULL after destroying the surface that this refers to,
-to make sure this surface will not be destroyed again.
-
-While we are here (multiple changes in a single commit are bad...), also fix the
-cleanup done in bail. In practice, &image->base should be safe when image==NULL,
-because this just adds some offset to the pointer (the offset here is actually
-zero, so this doesn't do anything at all). However, the C standard does not
-require this to be safe, so let's handle this case specially.
-
-Note that anything that is fixed by this change is still buggy, because the only
-reason why XShmGetImage() could fail would be BadDrawable, meaning that the
-target we draw to does not exist or was already destroyed. This patch will
-likely just cause X11 errors elsewhere and drawing to (possible) invalid
-drawables is not supported by cairo anyway. This means that if SHM fails, the
-following fallback code has a high chance of failing, too.
-
-Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=91967
-Signed-off-by: Uli Schlachter <psychon@znc.in>
----
- src/cairo-xlib-surface.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/cairo-xlib-surface.c b/src/cairo-xlib-surface.c
-index 3f407c3..555c1fe 100644
---- a/src/cairo-xlib-surface.c
-+++ b/src/cairo-xlib-surface.c
-@@ -807,6 +807,7 @@ _get_image_surface (cairo_xlib_surface_t *surface,
- }
-
- cairo_surface_destroy (&image->base);
-+ image = NULL;
- }
- }
-
-@@ -1011,7 +1012,8 @@ _get_image_surface (cairo_xlib_surface_t *surface,
- cairo_device_release (&display->base);
-
- if (unlikely (status)) {
-- cairo_surface_destroy (&image->base);
-+ if (image)
-+ cairo_surface_destroy (&image->base);
- return _cairo_surface_create_in_error (status);
- }
-
---
-2.8.1
-
-
diff --git a/source/l/cairo/slack-desc b/source/l/cairo/slack-desc
index b70ae035b..6f09629ba 100644
--- a/source/l/cairo/slack-desc
+++ b/source/l/cairo/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -14,7 +14,7 @@ cairo: identical output on all output media while taking advantage of display
cairo: hardware acceleration when available (eg. through the X Render
cairo: Extension or OpenGL).
cairo:
-cairo:
+cairo: Homepage: https://cairographics.org
cairo:
cairo:
diff --git a/source/l/cairomm/cairomm.SlackBuild b/source/l/cairomm/cairomm.SlackBuild
index 9f7c0325b..824240562 100755
--- a/source/l/cairomm/cairomm.SlackBuild
+++ b/source/l/cairomm/cairomm.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=cairomm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -32,9 +34,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -79,6 +88,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS libdocdir=/usr/doc/$PKGNAM-$VERSION || make libdocdir=/usr/doc/$PKGNAM-$VERSION || exit 1
make install libdocdir=/usr/doc/$PKGNAM-$VERSION DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/cairomm/slack-desc b/source/l/cairomm/slack-desc
index ed9754901..5e2fa0e16 100644
--- a/source/l/cairomm/slack-desc
+++ b/source/l/cairomm/slack-desc
@@ -2,17 +2,17 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
cairomm: cairomm (C++ wrapper for the cairo graphics library)
cairomm:
-cairomm: cairomm is a C++ wrapper for the cairo graphics library. It offers
+cairomm: cairomm is a C++ wrapper for the cairo graphics library. It offers
cairomm: all the power of cairo with an interface familiar to C++ developers,
cairomm: including use of the Standard Template Library where it makes sense.
cairomm:
-cairomm: Homepage: http://cairographics.org/cairomm/
+cairomm: Homepage: http://cairographics.org/cairomm/
cairomm:
cairomm:
cairomm:
diff --git a/source/l/chmlib/chmlib.SlackBuild b/source/l/chmlib/chmlib.SlackBuild
index 17b7ee732..cf5bf8e55 100755
--- a/source/l/chmlib/chmlib.SlackBuild
+++ b/source/l/chmlib/chmlib.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007-2008 Robby Workman, Northport, Alabama, 35475
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -21,29 +21,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=chmlib
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-chmlib
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -77,11 +85,14 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/chmlib-$VERSION \
--enable-examples \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
rmdir $PKG/usr/bin # Kill unused directory
find $PKG | xargs file | grep -e "executable" -e "shared object" \
diff --git a/source/l/chmlib/slack-desc b/source/l/chmlib/slack-desc
index 8d84d6343..22048bd73 100644
--- a/source/l/chmlib/slack-desc
+++ b/source/l/chmlib/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler----------------------------------------------------|
@@ -14,6 +14,6 @@ chmlib: which have been the predominant medium for software documentation
chmlib: from Microsoft during the past several years, having superseded
chmlib: the previously used .hlp file format.
chmlib:
-chmlib: Homepage: http://www.jedrea.com/chmlib/
+chmlib: Homepage: http://www.jedrea.com/chmlib/
chmlib:
chmlib:
diff --git a/source/l/clucene/clucene.SlackBuild b/source/l/clucene/clucene.SlackBuild
index 1b8e351d1..c1290d696 100755
--- a/source/l/clucene/clucene.SlackBuild
+++ b/source/l/clucene/clucene.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007 Heinz Wiesinger <hmwiesinger@gmx.at>
-# Copyright 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,10 +25,11 @@
# Modified by Eric Hameleers <alien@slackware.com>
# No added terms or copyright claims
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=clucene
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j7}
@@ -36,7 +37,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -44,8 +45,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -61,7 +70,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-clucene
diff --git a/source/l/clucene/slack-desc b/source/l/clucene/slack-desc
index 4d20e0ad5..8f48a5e25 100644
--- a/source/l/clucene/slack-desc
+++ b/source/l/clucene/slack-desc
@@ -1,17 +1,17 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler----------------------------------------------------|
clucene: clucene (Text-Search Engine)
clucene:
-clucene: CLucene is a C++ port of Lucene. It is a high-performance,
+clucene: CLucene is a C++ port of Lucene. It is a high-performance,
clucene: full-featured text search engine written in C++.
clucene:
-clucene: Homepage: http://clucene.sourceforge.net
+clucene: Homepage: http://clucene.sourceforge.net
clucene:
clucene:
clucene:
diff --git a/source/l/db42/db42.SlackBuild b/source/l/db42/db42.SlackBuild
index 18bf989c0..960485862 100755
--- a/source/l/db42/db42.SlackBuild
+++ b/source/l/db42/db42.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,28 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=db42
VERSION=4.2.52
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-db42
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
CONFIGURE_ARGS=""
elif [ "$ARCH" = "s390" ]; then
@@ -62,8 +71,8 @@ fi
cd $TMP
rm -rf db-$VERSION
-tar xjvf $CWD/db-$VERSION.tar.bz2
-cd db-$VERSION
+tar xvf $CWD/db-$VERSION.tar.bz2 || exit 1
+cd db-$VERSION || exit 1
zcat $CWD/patch.4.2.52.1.gz | patch -p0 --verbose || exit 1
zcat $CWD/patch.4.2.52.2.gz | patch -p0 --verbose || exit 1
zcat $CWD/patch.4.2.52.3.gz | patch -p0 --verbose || exit 1
@@ -87,9 +96,14 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-rpc \
--enable-compat185 \
$CONFIGURE_ARGS \
- $ARCH-slackware-linux
-make -j3
-make install DESTDIR=$PKG
+ --build=$ARCH-slackware-linux || exit 1
+
+make -j3 || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/db42/slack-desc b/source/l/db42/slack-desc
index 2e40e09c4..e6fbbf561 100644
--- a/source/l/db42/slack-desc
+++ b/source/l/db42/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/db44/db44.SlackBuild b/source/l/db44/db44.SlackBuild
index 58aa279ac..fb6fe1f94 100755
--- a/source/l/db44/db44.SlackBuild
+++ b/source/l/db44/db44.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,28 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=db44
VERSION=4.4.20
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-db44
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -56,12 +65,12 @@ fi
cd $TMP
rm -rf db-$VERSION
-tar xjvf $CWD/db-$VERSION.tar.bz2
-cd db-$VERSION
+tar xvf $CWD/db-$VERSION.tar.bz2 || exit 1
+cd db-$VERSION || exit 1
# Official patches:
-zcat $CWD/patch.4.4.20.1.gz | patch -p0 --verbose
-zcat $CWD/patch.4.4.20.2.gz | patch -p0 --verbose
+zcat $CWD/patch.4.4.20.1.gz | patch -p0 --verbose || exit 1
+zcat $CWD/patch.4.4.20.2.gz | patch -p0 --verbose || exit 1
chown -R root:root .
find . \
@@ -73,6 +82,7 @@ find . \
rm -rf build-dir
mkdir build-dir
cd build-dir
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
../dist/configure \
@@ -82,10 +92,14 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-rpc \
--enable-cxx \
--enable-compat185 \
- $ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
+
+make -j3 || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
-make -j3
-make install DESTDIR=$PKG
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/db44/slack-desc b/source/l/db44/slack-desc
index fcb8418ca..dfc00b22e 100644
--- a/source/l/db44/slack-desc
+++ b/source/l/db44/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/db48/db48.SlackBuild b/source/l/db48/db48.SlackBuild
index 2a6c29eb1..3b3ce45ae 100755
--- a/source/l/db48/db48.SlackBuild
+++ b/source/l/db48/db48.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,28 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=db48
VERSION=4.8.30
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j7}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -58,8 +67,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf db-$VERSION
-tar xvf $CWD/db-$VERSION.tar.xz
-cd db-$VERSION
+tar xvf $CWD/db-$VERSION.tar.xz || exit 1
+cd db-$VERSION || exit 1
chown -R root:root .
find . \
@@ -68,9 +77,13 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# We aren't installing the docs anyway so let's not let them break the build:
+zcat $CWD/db48.no.broken.doc.install.diff.gz | patch -p1 --verbose || exit 1
+
rm -rf build-dir
mkdir build-dir
cd build-dir
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
../dist/configure \
@@ -83,7 +96,10 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make -i install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/db48/db48.no.broken.doc.install.diff b/source/l/db48/db48.no.broken.doc.install.diff
new file mode 100644
index 000000000..829e8636d
--- /dev/null
+++ b/source/l/db48/db48.no.broken.doc.install.diff
@@ -0,0 +1,14 @@
+--- ./dist/Makefile.in.orig 2010-04-12 15:25:22.000000000 -0500
++++ ./dist/Makefile.in 2018-04-09 11:58:49.634283283 -0500
+@@ -1001,11 +1001,6 @@
+
+ install_docs:
+ @echo "Installing documentation: $(DESTDIR)$(docdir) ..."
+- @test -d $(DESTDIR)$(docdir) || \
+- ($(MKDIR) -p $(DESTDIR)$(docdir) && \
+- $(CHMOD) $(dmode) $(DESTDIR)$(docdir))
+- @cd $(DESTDIR)$(docdir) && $(RM) -r $(DOCLIST)
+- @cd $(srcdir)/docs && $(CP) -pr $(DOCLIST) $(DESTDIR)$(docdir)/
+
+ uninstall_docs:
+ @cd $(DESTDIR)$(docdir) && $(RM) -r $(DOCLIST)
diff --git a/source/l/db48/slack-desc b/source/l/db48/slack-desc
index e792b8606..285251303 100644
--- a/source/l/db48/slack-desc
+++ b/source/l/db48/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/dbus-glib/dbus-glib.SlackBuild b/source/l/dbus-glib/dbus-glib.SlackBuild
index 3f2fd7260..42e603a06 100755
--- a/source/l/dbus-glib/dbus-glib.SlackBuild
+++ b/source/l/dbus-glib/dbus-glib.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2006, 2007, 2008 Robby Workman http://rlworkman.net
-# Copyright 2007, 2008, 2009, 2010 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2007, 2008, 2009, 2010, 2018 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=dbus-glib
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,9 +37,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j7}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -79,11 +87,14 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--enable-shared=yes \
--enable-static=no \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/dbus-glib/dbus-glib.url b/source/l/dbus-glib/dbus-glib.url
new file mode 100644
index 000000000..d5d7524d6
--- /dev/null
+++ b/source/l/dbus-glib/dbus-glib.url
@@ -0,0 +1 @@
+https://dbus.freedesktop.org/releases/dbus-glib
diff --git a/source/l/dbus-glib/slack-desc b/source/l/dbus-glib/slack-desc
index b1688f698..853c13b85 100644
--- a/source/l/dbus-glib/slack-desc
+++ b/source/l/dbus-glib/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
dbus-glib: dbus-glib (Glib bindings for dbus)
diff --git a/source/l/dbus-python/dbus-python.SlackBuild b/source/l/dbus-python/dbus-python.SlackBuild
index 6139ae232..d4ea42fc1 100755
--- a/source/l/dbus-python/dbus-python.SlackBuild
+++ b/source/l/dbus-python/dbus-python.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# http://dbus.freedesktop.org/releases/dbus-python/
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=dbus-python
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -39,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -61,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP || exit 1
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -70,6 +79,27 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+PYTHON_VERSION=3 \
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --disable-html-docs \
+ --enable-shared=yes \
+ --enable-static=no \
+ --build=$ARCH-slackware-linux \
+ --host=$ARCH-slackware-linux \
+ || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+make clean
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -78,6 +108,7 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--docdir=/usr/doc/$PKGNAM-$VERSION \
+ --disable-html-docs \
--enable-shared=yes \
--enable-static=no \
--build=$ARCH-slackware-linux \
diff --git a/source/l/dbus-python/dbus-python.url b/source/l/dbus-python/dbus-python.url
new file mode 100644
index 000000000..802634223
--- /dev/null
+++ b/source/l/dbus-python/dbus-python.url
@@ -0,0 +1 @@
+http://dbus.freedesktop.org/releases/dbus-python/
diff --git a/source/l/dbus-python/slack-desc b/source/l/dbus-python/slack-desc
index 14042b78c..54ab189d5 100644
--- a/source/l/dbus-python/slack-desc
+++ b/source/l/dbus-python/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------|
diff --git a/source/l/dconf-editor/dconf-editor.SlackBuild b/source/l/dconf-editor/dconf-editor.SlackBuild
index 455450076..f200c39b0 100755
--- a/source/l/dconf-editor/dconf-editor.SlackBuild
+++ b/source/l/dconf-editor/dconf-editor.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2013, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2013, 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# Copyright 2011 David Somero (dsomero@hotmail.com) Athens, TN, USA
# All rights reserved.
#
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=dconf-editor
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,9 +38,16 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/dconf-editor/slack-desc b/source/l/dconf-editor/slack-desc
index 08a81ec23..da3517784 100644
--- a/source/l/dconf-editor/slack-desc
+++ b/source/l/dconf-editor/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
dconf-editor: dconf-editor (graphical editor for dconf)
dconf-editor:
dconf-editor: The dconf-editor program provides a graphical interface for editing
-dconf-editor: settings that are stored in the dconf database. The gsettings utility
+dconf-editor: settings that are stored in the dconf database. The gsettings utility
dconf-editor: provides similar functionality on the command line.
dconf-editor:
dconf-editor:
diff --git a/source/l/dconf/dconf.SlackBuild b/source/l/dconf/dconf.SlackBuild
index e8bbccda3..7696405a1 100755
--- a/source/l/dconf/dconf.SlackBuild
+++ b/source/l/dconf/dconf.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2013, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# Copyright 2011 David Somero (dsomero@hotmail.com) Athens, TN, USA
# All rights reserved.
#
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=dconf
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,9 +38,16 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/dconf/slack-desc b/source/l/dconf/slack-desc
index 4ab563a88..244468909 100644
--- a/source/l/dconf/slack-desc
+++ b/source/l/dconf/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/desktop-file-utils/desktop-file-utils.SlackBuild b/source/l/desktop-file-utils/desktop-file-utils.SlackBuild
index 12804bb4d..f9af84aaf 100755
--- a/source/l/desktop-file-utils/desktop-file-utils.SlackBuild
+++ b/source/l/desktop-file-utils/desktop-file-utils.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,29 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=desktop-file-utils
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
elif [ "$ARCH" = "x86_64" ]; then
@@ -60,10 +68,6 @@ cd ${PKGNAM}-$VERSION || exit 1
zcat $CWD/desktop-file-utils.quiet.warnings.diff.gz | patch -p1 --verbose || exit 1
-patch -p1 < $CWD/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch || exit 1
-patch -p1 < $CWD/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch || exit 1
-patch -p1 < $CWD/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch || exit 1
-
# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
diff --git a/source/l/desktop-file-utils/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch b/source/l/desktop-file-utils/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch
deleted file mode 100644
index e3be90d90..000000000
--- a/source/l/desktop-file-utils/gitpatches/0001-desktop-file-validate-Trailing-semicolons-have-been-.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-From 9e279cc3fac9a7e92bf426867fa83c0c7aec5711 Mon Sep 17 00:00:00 2001
-From: Jerome Leclanche <jerome@leclan.ch>
-Date: Tue, 1 Apr 2014 15:33:16 +0200
-Subject: [PATCH 1/3] desktop-file-validate: Trailing semicolons have been
- downgraded to optional
-
-https://bugs.freedesktop.org/show_bug.cgi?id=76902
-Approved by David Faure and Ryan Lortie
----
- src/validate.c | 105 ---------------------------------------------------------
- 1 file changed, 105 deletions(-)
-
-diff --git a/src/validate.c b/src/validate.c
-index 68fd6f0..77a5fda 100644
---- a/src/validate.c
-+++ b/src/validate.c
-@@ -765,9 +765,6 @@ validate_numeric_key (kf_validator *kf,
- /* + Values of type string may contain all ASCII characters except for control
- * characters.
- * Checked.
-- * + The multiple values should be separated by a semicolon. Those keys which
-- * have several values should have a semicolon as the trailing character.
-- * Checked.
- * + FIXME: how should an empty list be handled?
- */
- static gboolean
-@@ -799,24 +796,6 @@ validate_string_regexp_list_key (kf_validator *kf,
- return FALSE;
- }
-
-- if (i > 0 && value[i - 1] != ';') {
-- print_fatal (kf, "value \"%s\" for %s list key \"%s\" in group \"%s\" "
-- "does not have a semicolon (';') as trailing "
-- "character\n",
-- value, type, key, kf->current_group);
--
-- return FALSE;
-- }
--
-- if (i > 1 && value[i - 1] == ';' && value[i - 2] == '\\' &&
-- (i < 3 || value[i - 3] != '\\')) {
-- print_fatal (kf, "value \"%s\" for %s list key \"%s\" in group \"%s\" "
-- "has an escaped semicolon (';') as trailing character\n",
-- value, type, key, kf->current_group);
--
-- return FALSE;
-- }
--
- return TRUE;
- }
-
-@@ -845,10 +824,6 @@ validate_regexp_list_key (kf_validator *kf,
- * + If a postfixed key occurs, the same key must be also present without the
- * postfix.
- * Checked.
-- * + The multiple values should be separated by a semicolon. Those keys which
-- * have several values should have a semicolon as the trailing character.
-- * FIXME: partly checked. We use checks that work for sure for ascii
-- * characters, but that could possibly fail in some weird UTF-8 strings.
- * + FIXME: how should an empty list be handled?
- */
- static gboolean
-@@ -858,7 +833,6 @@ validate_localestring_list_key (kf_validator *kf,
- const char *value)
- {
- char *locale_key;
-- int len;
-
- if (locale)
- locale_key = g_strdup_printf ("%s[%s]", key, locale);
-@@ -876,27 +850,6 @@ validate_localestring_list_key (kf_validator *kf,
- return FALSE;
- }
-
-- len = strlen (value);
--
-- if (len > 0 && value[len - 1] != ';') {
-- print_fatal (kf, "value \"%s\" for locale string list key \"%s\" in group "
-- "\"%s\" does not have a semicolon (';') as trailing "
-- "character\n",
-- value, locale_key, kf->current_group);
--
-- return FALSE;
-- }
--
-- if (len > 1 && value[len - 1] == ';' && value[len - 2] == '\\' &&
-- (len < 3 || value[len - 3] != '\\')) {
-- print_fatal (kf, "value \"%s\" for locale string list key \"%s\" in group "
-- "\"%s\" has an escaped semicolon (';') as trailing "
-- "character\n",
-- value, locale_key, kf->current_group);
--
-- return FALSE;
-- }
--
- if (!g_hash_table_lookup (kf->current_keys, key)) {
- print_fatal (kf, "key \"%s\" in group \"%s\" is a localized key, but "
- "there is no non-localized key \"%s\"\n",
-@@ -3109,45 +3062,11 @@ desktop_file_validate (const char *filename,
- return (!kf.fatal_error);
- }
-
--static void
--fixup_list (GKeyFile *keyfile,
-- const gchar *filename,
-- const gchar *key)
--{
-- char *value;
-- int len;
--
-- value = g_key_file_get_value (keyfile, GROUP_DESKTOP_ENTRY, key, NULL);
-- if (!value)
-- return;
--
-- len = strlen (value);
--
-- if (len > 0 && (value[len - 1] != ';' ||
-- (len > 1 && value[len - 2] == '\\' &&
-- (len < 3 || value[len - 3] != '\\')))) {
-- char *str;
--
-- g_printerr ("%s: warning: key \"%s\" is a list and does not have a "
-- "semicolon as trailing character, fixing\n",
-- filename, key);
--
-- str = g_strconcat (value, ";", NULL);
-- g_key_file_set_value (keyfile, GROUP_DESKTOP_ENTRY,
-- key, str);
-- g_free (str);
-- }
--}
--
- /* return FALSE if we were unable to fix the file */
- gboolean
- desktop_file_fixup (GKeyFile *keyfile,
- const char *filename)
- {
-- gchar **keys;
-- gsize keys_nb;
-- unsigned int i;
--
- if (g_key_file_has_group (keyfile, GROUP_KDE_DESKTOP_ENTRY)) {
- g_printerr ("%s: warning: renaming deprecated \"%s\" group to \"%s\"\n",
- filename, GROUP_KDE_DESKTOP_ENTRY, GROUP_DESKTOP_ENTRY);
-@@ -3155,29 +3074,5 @@ desktop_file_fixup (GKeyFile *keyfile,
- GROUP_KDE_DESKTOP_ENTRY, GROUP_DESKTOP_ENTRY);
- }
-
-- keys = g_key_file_get_keys (keyfile, GROUP_DESKTOP_ENTRY, &keys_nb, NULL);
--
-- /* Fix lists to have a ';' at the end if they don't */
-- for (i = 0; i < G_N_ELEMENTS (registered_desktop_keys); i++) {
-- if (registered_desktop_keys[i].type == DESKTOP_STRING_LIST_TYPE ||
-- registered_desktop_keys[i].type == DESKTOP_REGEXP_LIST_TYPE)
-- fixup_list (keyfile, filename, registered_desktop_keys[i].name);
--
-- if (registered_desktop_keys[i].type == DESKTOP_LOCALESTRING_LIST_TYPE) {
-- gsize keylen;
-- guint j;
--
-- keylen = strlen (registered_desktop_keys[i].name);
-- for (j = 0; j < keys_nb; j++) {
-- if (g_str_has_prefix (keys[j], registered_desktop_keys[i].name) &&
-- (keys[j][keylen] == '[' || keys[j][keylen] == '\0')) {
-- fixup_list (keyfile, filename, keys[j]);
-- }
-- }
-- }
-- }
--
-- g_strfreev (keys);
--
- return TRUE;
- }
---
-2.2.0
-
diff --git a/source/l/desktop-file-utils/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch b/source/l/desktop-file-utils/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch
deleted file mode 100644
index 132d16a41..000000000
--- a/source/l/desktop-file-utils/gitpatches/0002-Add-Cinnamon-to-list-of-registered-environments.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 848c82b2332d0556c22c10a9c64d1f39850271fe Mon Sep 17 00:00:00 2001
-From: Michael Webster <miketwebster@gmail.com>
-Date: Fri, 7 Mar 2014 20:16:52 -0500
-Subject: [PATCH 2/3] Add Cinnamon to list of registered environments.
-
-https://github.com/linuxmint/Cinnamon
-
-https://bugs.freedesktop.org/show_bug.cgi?id=73497
----
- src/validate.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/validate.c b/src/validate.c
-index 77a5fda..6859c1b 100644
---- a/src/validate.c
-+++ b/src/validate.c
-@@ -363,7 +363,7 @@ static DesktopKeyDefinition registered_action_keys[] = {
- };
-
- static const char *show_in_registered[] = {
-- "GNOME", "KDE", "LXDE", "MATE", "Razor", "ROX", "TDE", "Unity", "XFCE", "Old"
-+ "Cinnamon", "GNOME", "KDE", "LXDE", "MATE", "Razor", "ROX", "TDE", "Unity", "XFCE", "Old"
- };
-
- static struct {
---
-2.2.0
-
diff --git a/source/l/desktop-file-utils/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch b/source/l/desktop-file-utils/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch
deleted file mode 100644
index 0f1d70acb..000000000
--- a/source/l/desktop-file-utils/gitpatches/0003-Add-EDE-to-the-list-of-desktop-environments.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From be0c630a19aa1788ef731def911770ce497d6ba3 Mon Sep 17 00:00:00 2001
-From: David Faure <faure@kde.org>
-Date: Tue, 1 Apr 2014 22:29:08 +0200
-Subject: [PATCH 3/3] Add EDE to the list of desktop environments
-
-https://bugs.freedesktop.org/show_bug.cgi?id=56353
----
- src/validate.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/validate.c b/src/validate.c
-index 6859c1b..b4b752e 100644
---- a/src/validate.c
-+++ b/src/validate.c
-@@ -363,7 +363,7 @@ static DesktopKeyDefinition registered_action_keys[] = {
- };
-
- static const char *show_in_registered[] = {
-- "Cinnamon", "GNOME", "KDE", "LXDE", "MATE", "Razor", "ROX", "TDE", "Unity", "XFCE", "Old"
-+ "GNOME", "KDE", "LXDE", "MATE", "Razor", "ROX", "TDE", "Unity", "XFCE", "Cinnamon", "EDE", "Old"
- };
-
- static struct {
---
-2.2.0
-
diff --git a/source/l/desktop-file-utils/slack-desc b/source/l/desktop-file-utils/slack-desc
index 5b92e4dcf..e70b268ec 100644
--- a/source/l/desktop-file-utils/slack-desc
+++ b/source/l/desktop-file-utils/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,10 +10,10 @@ desktop-file-utils: desktop-file-utils (Utilities for manipulating desktop files
desktop-file-utils:
desktop-file-utils: Some utilities from freedesktop.org for handling .desktop files:
desktop-file-utils:
-desktop-file-utils: desktop-file-validate: validates a desktop file and prints
-desktop-file-utils: warnings/errors about spec violations.
-desktop-file-utils: desktop-file-install: installs a desktop file to the applications
-desktop-file-utils: directory, optionally munging it a bit in transit.
-desktop-file-utils: desktop-menu-tool: loads .vfolder-info and .menu files and does
-desktop-file-utils: operations on them.
+desktop-file-utils: desktop-file-validate: validates a desktop file and prints
+desktop-file-utils: warnings/errors about spec violations.
+desktop-file-utils: desktop-file-install: installs a desktop file to the applications
+desktop-file-utils: directory, optionally munging it a bit in transit.
+desktop-file-utils: desktop-menu-tool: loads .vfolder-info and .menu files and does
+desktop-file-utils: operations on them.
desktop-file-utils:
diff --git a/source/l/djvulibre/djvulibre.SlackBuild b/source/l/djvulibre/djvulibre.SlackBuild
index 706e45efd..e77376388 100755
--- a/source/l/djvulibre/djvulibre.SlackBuild
+++ b/source/l/djvulibre/djvulibre.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=djvulibre
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,7 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -77,12 +85,15 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--infodir=/usr/info \
--docdir=/usr/doc/$PKGNAM-$VERSION \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make clean || exit 1
make || exit 1 # This isn't fully compatible with threaded make
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# This plugin *should* work with Mozilla-based browsers
if [ -d $PKG/usr/lib${LIBDIRSUFFIX}/netscape ]; then
mv $PKG/usr/lib${LIBDIRSUFFIX}/{netscape,mozilla}
diff --git a/source/l/djvulibre/slack-desc b/source/l/djvulibre/slack-desc
index f0b3291ad..f2a0ee0a8 100644
--- a/source/l/djvulibre/slack-desc
+++ b/source/l/djvulibre/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler----------------------------------------------------|
djvulibre: djvulibre (web-centric document and image format)
djvulibre:
djvulibre: DjVu is a web-centric format and software platform for distributing
-djvulibre: documents and images. DjVu content downloads faster, displays and
+djvulibre: documents and images. DjVu content downloads faster, displays and
djvulibre: renders faster, looks nicer on a screen, and consume less client
-djvulibre: resources than competing formats. DjVu was originally developed at
+djvulibre: resources than competing formats. DjVu was originally developed at
djvulibre: AT&T Labs-Research by Leon Bottou, Yann LeCun, Patrick Haffner, and
djvulibre: many others.
djvulibre:
-djvulibre: Homepage: http://djvu.sourceforge.net
+djvulibre: Homepage: http://djvu.sourceforge.net
djvulibre:
diff --git a/source/l/ebook-tools/ebook-tools.SlackBuild b/source/l/ebook-tools/ebook-tools.SlackBuild
index 7e590df23..8ffdb27ee 100755
--- a/source/l/ebook-tools/ebook-tools.SlackBuild
+++ b/source/l/ebook-tools/ebook-tools.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2010 Eric Hameleers, Eindhoven, NL
-# Copyright 2010, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=ebook-tools
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-5}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -40,6 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -57,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
diff --git a/source/l/ebook-tools/slack-desc b/source/l/ebook-tools/slack-desc
index 9833019be..e6378cc58 100644
--- a/source/l/ebook-tools/slack-desc
+++ b/source/l/ebook-tools/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/eigen2/eigen2.SlackBuild b/source/l/eigen2/eigen2.SlackBuild
index a645425c9..c8500bcd2 100755
--- a/source/l/eigen2/eigen2.SlackBuild
+++ b/source/l/eigen2/eigen2.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=eigen2
VERSION=2.0.17
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,7 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-eigen2
diff --git a/source/l/eigen2/slack-desc b/source/l/eigen2/slack-desc
index fab941031..e8f7bc9e6 100644
--- a/source/l/eigen2/slack-desc
+++ b/source/l/eigen2/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler----------------------------------------------------|
@@ -11,7 +11,7 @@ eigen2:
eigen2: Eigen 2 is a lightweight C++ template library for vector and matrix
eigen2: math, a.k.a. linear algebra.
eigen2:
-eigen2: See the website: http://eigen.tuxfamily.org
+eigen2: See the website: http://eigen.tuxfamily.org
eigen2:
eigen2:
eigen2:
diff --git a/source/l/eigen3/eigen3.SlackBuild b/source/l/eigen3/eigen3.SlackBuild
index 54fa69975..d9d3a1c7a 100755
--- a/source/l/eigen3/eigen3.SlackBuild
+++ b/source/l/eigen3/eigen3.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2014 Eric Hameleers, Eindhoven, NL
# All rights reserved.
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=eigen
-VERSION=3.2.7
-SRCVER="eigen-b30b87236a1b"
+VERSION=3.2.10
+SRCVER="eigen-b9cd8366d4e8"
BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
@@ -38,6 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "${PKGNAM}3-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -55,7 +65,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -83,7 +92,7 @@ cd build
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DEIGEN_INCLUDE_INSTALL_DIR=/usr/include/eigen3 \
- ..
+ .. || exit 1
make || exit 1
make install DESTDIR=$PKG || exit 1
cd ..
diff --git a/source/l/eigen3/slack-desc b/source/l/eigen3/slack-desc
index 8670031cf..49a865975 100644
--- a/source/l/eigen3/slack-desc
+++ b/source/l/eigen3/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -11,9 +11,9 @@ eigen3:
eigen3: Eigen is a C++ template library for linear algebra: matrices, vectors,
eigen3: numerical solvers, and related algorithms.
eigen3:
+eigen3: Homepage: http://eigen.tuxfamily.org
eigen3:
eigen3:
eigen3:
eigen3:
-eigen3: Homepage: http://eigen.tuxfamily.org
eigen3:
diff --git a/source/l/elfutils/elfutils-0.163-unstrip-shf_info_link.patch b/source/l/elfutils/elfutils-0.163-unstrip-shf_info_link.patch
deleted file mode 100644
index e3a27ff0e..000000000
--- a/source/l/elfutils/elfutils-0.163-unstrip-shf_info_link.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-commit f9fc50c3eced243c0648fb0fbfe2c9877c25e1e4
-Author: Mark Wielaard <mjw@redhat.com>
-Date: Wed Jul 29 17:51:27 2015 +0200
-
- unstrip: Handle debuginfo files with missing SHF_INFO_LINK section flags.
-
- With GCC 5 there might be a .rela.plt section with SHF_INFO_LINK set.
- Buggy binutils objdump might strip it from the section in the debug file.
- Ignore such differences for relocation sections and put the flag back
- if necessary.
-
- Also improve the error message a little by only discarding the already
- matched sections if there is an prelink undo section. Otherwise we will
- report all sections as not matching if the file wasn't prelinked instead
- of just the non-matching sections.
-
- New testfiles generated by gcc5 and binutils objdump added.
-
- Signed-off-by: Mark Wielaard <mjw@redhat.com>
-
-diff --git a/src/unstrip.c b/src/unstrip.c
-index 4a8e5fa..8833094 100644
---- a/src/unstrip.c
-+++ b/src/unstrip.c
-@@ -867,12 +867,28 @@ compare_symbols_output (const void *a, const void *b)
-
- #undef CMP
-
-+/* Return true if the flags of the sections match, ignoring the SHF_INFO_LINK
-+ flag if the section contains relocation information. */
-+static bool
-+sections_flags_match (Elf64_Xword sh_flags1, Elf64_Xword sh_flags2,
-+ Elf64_Word sh_type)
-+{
-+ if (sh_type == SHT_REL || sh_type == SHT_RELA)
-+ {
-+ sh_flags1 &= ~SHF_INFO_LINK;
-+ sh_flags2 &= ~SHF_INFO_LINK;
-+ }
-+
-+ return sh_flags1 == sh_flags2;
-+}
-+
- /* Return true iff the flags, size, and name match. */
- static bool
- sections_match (const struct section *sections, size_t i,
- const GElf_Shdr *shdr, const char *name)
- {
-- return (sections[i].shdr.sh_flags == shdr->sh_flags
-+ return (sections_flags_match (sections[i].shdr.sh_flags, shdr->sh_flags,
-+ sections[i].shdr.sh_type)
- && (sections[i].shdr.sh_size == shdr->sh_size
- || (sections[i].shdr.sh_size < shdr->sh_size
- && section_can_shrink (&sections[i].shdr)))
-@@ -930,10 +946,6 @@ find_alloc_sections_prelink (Elf *debug, Elf_Data *debug_shstrtab,
- struct section *sections,
- size_t nalloc, size_t nsections)
- {
-- /* Clear assignments that might have been bogus. */
-- for (size_t i = 0; i < nalloc; ++i)
-- sections[i].outscn = NULL;
--
- Elf_Scn *undo = NULL;
- for (size_t i = nalloc; i < nsections; ++i)
- {
-@@ -952,6 +964,10 @@ find_alloc_sections_prelink (Elf *debug, Elf_Data *debug_shstrtab,
- size_t undo_nalloc = 0;
- if (undo != NULL)
- {
-+ /* Clear assignments that might have been bogus. */
-+ for (size_t i = 0; i < nalloc; ++i)
-+ sections[i].outscn = NULL;
-+
- Elf_Data *undodata = elf_rawdata (undo, NULL);
- ELF_CHECK (undodata != NULL,
- _("cannot read '.gnu.prelink_undo' section: %s"));
-@@ -1500,6 +1516,14 @@ more sections in stripped file than debug file -- arguments reversed?"));
- shdr_mem.sh_size = sec->shdr.sh_size;
- shdr_mem.sh_info = sec->shdr.sh_info;
- shdr_mem.sh_link = sec->shdr.sh_link;
-+
-+ /* Buggy binutils objdump might have stripped the SHF_INFO_LINK
-+ put it back if necessary. */
-+ if ((sec->shdr.sh_type == SHT_REL || sec->shdr.sh_type == SHT_RELA)
-+ && sec->shdr.sh_flags != shdr_mem.sh_flags
-+ && (sec->shdr.sh_flags & SHF_INFO_LINK) != 0)
-+ shdr_mem.sh_flags |= SHF_INFO_LINK;
-+
- if (sec->shdr.sh_link != SHN_UNDEF)
- shdr_mem.sh_link = ndx_section[sec->shdr.sh_link - 1];
- if (shdr_mem.sh_flags & SHF_INFO_LINK)
diff --git a/source/l/elfutils/elfutils-portability-0.163.patch b/source/l/elfutils/elfutils-portability-0.163.patch
deleted file mode 100644
index f347ed1a8..000000000
--- a/source/l/elfutils/elfutils-portability-0.163.patch
+++ /dev/null
@@ -1,2108 +0,0 @@
-diffelfutils/backends/ChangeLog git-portable/backends/ChangeLog
---- elfutils/backends/ChangeLog
-+++ elfutils/backends/ChangeLog
-@@ -498,6 +498,10 @@
- * ppc_attrs.c (ppc_check_object_attribute): Handle tag
- GNU_Power_ABI_Struct_Return.
-
-+2009-01-23 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (libebl_%.so): Use $(LD_AS_NEEDED).
-+
- 2008-10-04 Ulrich Drepper <drepper@redhat.com>
-
- * i386_reloc.def: Fix entries for TLS_GOTDESC, TLS_DESC_CALL, and
-@@ -825,6 +829,11 @@
- * sparc_init.c: Likewise.
- * x86_64_init.c: Likewise.
-
-+2005-11-22 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (LD_AS_NEEDED): New variable, substituted by configure.
-+ (libebl_%.so rule): Use it in place of -Wl,--as-needed.
-+
- 2005-11-19 Roland McGrath <roland@redhat.com>
-
- * ppc64_reloc.def: REL30 -> ADDR30.
-@@ -847,6 +856,9 @@
- * Makefile.am (uninstall): Don't try to remove $(pkgincludedir).
- (CLEANFILES): Add libebl_$(m).so.
-
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- * ppc_reloc.def: Update bits per Alan Modra <amodra@bigpond.net.au>.
- * ppc64_reloc.def: Likewise.
-
-diffelfutils/backends/Makefile.am git-portable/backends/Makefile.am
---- elfutils/backends/Makefile.am
-+++ elfutils/backends/Makefile.am
-@@ -119,7 +119,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a
- $(LINK) -shared -o $(@:.map=.so) \
- -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \
- -Wl,--version-script,$(@:.so=.map) \
-- -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw)
-+ -Wl,-z,defs $(LD_AS_NEEDED) $(libelf) $(libdw)
- @$(textrel_check)
-
- libebl_i386.so: $(cpu_i386)
-diffelfutils/backends/Makefile.in git-portable/backends/Makefile.in
---- elfutils/backends/Makefile.in
-+++ elfutils/backends/Makefile.in
-@@ -90,7 +90,8 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
- subdir = backends
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \
-@@ -300,6 +301,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -331,6 +333,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = @VERSION@
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -398,14 +401,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
-- $(if $($(*F)_no_Werror),,-Werror) \
-- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
-- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS)
--
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
-+ $($(*F)_no_Werror),,-Werror) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
-+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-+ $($(*F)_CFLAGS) $(am__append_1)
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda $(foreach m,$(modules), libebl_$(m).map \
- libebl_$(m).so $(am_libebl_$(m)_pic_a_OBJECTS))
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
-@@ -912,7 +915,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a
- $(LINK) -shared -o $(@:.map=.so) \
- -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \
- -Wl,--version-script,$(@:.so=.map) \
-- -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw)
-+ -Wl,-z,defs $(LD_AS_NEEDED) $(libelf) $(libdw)
- @$(textrel_check)
-
- libebl_i386.so: $(cpu_i386)
-diffelfutils/ChangeLog git-portable/ChangeLog
---- elfutils/ChangeLog
-+++ elfutils/ChangeLog
-@@ -258,6 +258,8 @@
-
- 2012-01-24 Mark Wielaard <mjw@redhat.com>
-
-+ * configure.ac: Wrap AC_COMPILE_IFELSE sources in AC_LANG_SOURCE.
-+
- * COPYING: Fix address. Updated version from gnulib.
-
- 2012-01-23 Mark Wielaard <mjw@redhat.com>
-@@ -276,6 +278,9 @@
-
- 2011-10-08 Mike Frysinger <vapier@gentoo.org>
-
-+ * configure.ac (--disable-werror): Handle it, controlling BUILD_WERROR
-+ automake option.
-+
- * configure.ac: Fix use of AC_ARG_ENABLE to handle $enableval correctly.
-
- 2011-10-02 Ulrich Drepper <drepper@gmail.com>
-@@ -297,6 +302,10 @@
-
- * configure.ac (LOCALEDIR, DATADIRNAME): Removed.
-
-+2009-11-22 Roland McGrath <roland@redhat.com>
-+
-+ * configure.ac: Use sed and expr instead of modern bash extensions.
-+
- 2009-09-21 Ulrich Drepper <drepper@redhat.com>
-
- * configure.ac: Update for more modern autoconf.
-@@ -305,6 +314,10 @@
-
- * configure.ac (zip_LIBS): Check for liblzma too.
-
-+2009-08-17 Roland McGrath <roland@redhat.com>
-+
-+ * configure.ac: Check for -fgnu89-inline; add it to WEXTRA if it works.
-+
- 2009-04-19 Roland McGrath <roland@redhat.com>
-
- * configure.ac (eu_version): Round down here, not in version.h macros.
-@@ -316,6 +329,8 @@
-
- 2009-01-23 Roland McGrath <roland@redhat.com>
-
-+ * configure.ac: Check for __builtin_popcount.
-+
- * configure.ac (zlib check): Check for gzdirect, need zlib >= 1.2.2.3.
-
- * configure.ac (__thread check): Use AC_LINK_IFELSE, in case of
-@@ -396,6 +411,10 @@
- * configure.ac: Add dummy automake conditional to get dependencies
- for non-generic linker right. See src/Makefile.am.
-
-+2005-11-22 Roland McGrath <roland@redhat.com>
-+
-+ * configure.ac: Check for --as-needed linker option.
-+
- 2005-11-18 Roland McGrath <roland@redhat.com>
-
- * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New variable.
-@@ -443,6 +462,17 @@
- * Makefile.am (all_SUBDIRS): Add libdwfl.
- * configure.ac: Write libdwfl/Makefile.
-
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
-+ * configure.ac (WEXTRA): Check for -Wextra and set this substitution.
-+
-+ * configure.ac: Check for struct stat st_?tim members.
-+ * src/strip.c (process_file): Use st_?time if st_?tim are not there.
-+
-+ * configure.ac: Check for futimes function.
-+ * src/strip.c (handle_elf) [! HAVE_FUTIMES]: Use utimes instead.
-+ (handle_ar) [! HAVE_FUTIMES]: Likewise.
-+
- 2005-05-19 Roland McGrath <roland@redhat.com>
-
- * configure.ac [AH_BOTTOM] (INTDECL, _INTDECL): New macros.
-diffelfutils/config/ChangeLog git-portable/config/ChangeLog
---- elfutils/config/ChangeLog
-+++ elfutils/config/ChangeLog
-@@ -110,6 +110,10 @@
-
- * known-dwarf.awk: Use gawk.
-
-+2011-10-08 Mike Frysinger <vapier@gentoo.org>
-+
-+ * eu.am [BUILD_WERROR]: Conditionalize -Werror use on this.
-+
- 2010-07-02 Ulrich Drepper <drepper@redhat.com>
-
- * elfutils.spec.in: Add more BuildRequires.
-diffelfutils/config/eu.am git-portable/config/eu.am
---- elfutils/config/eu.am
-+++ elfutils/config/eu.am
-@@ -1,6 +1,6 @@
- ## Common automake fragments for elfutils subdirectory makefiles.
- ##
--## Copyright (C) 2010, 2014 Red Hat, Inc.
-+## Copyright (C) 2010-2011, 2014 Red Hat, Inc.
- ##
- ## This file is part of elfutils.
- ##
-@@ -29,6 +29,9 @@
- ## not, see <http://www.gnu.org/licenses/>.
- ##
-
-+WEXTRA = @WEXTRA@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
-+
- DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"'
- AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I..
-
-@@ -38,12 +41,17 @@ STACK_USAGE_WARNING=-Wstack-usage=262144
- else
- STACK_USAGE_WARNING=
- endif
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow \
- $(if $($(*F)_no_Werror),,-Werror) \
-- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
-+ $(if $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) \
-+ $(if $($(*F)_no_Wformat),-Wno-format,-Wformat=2) \
- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
- $($(*F)_CFLAGS)
-
-+if BUILD_WERROR
-+AM_CFLAGS += $(if $($(*F)_no_Werror),,-Werror)
-+endif
-+
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
-
- DEFS.os = -DPIC -DSHARED
-diffelfutils/config/Makefile.in git-portable/config/Makefile.in
---- elfutils/config/Makefile.in
-+++ elfutils/config/Makefile.in
-@@ -160,6 +160,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -191,6 +192,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = @VERSION@
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-diffelfutils/config.h.in git-portable/config.h.in
---- elfutils/config.h.in
-+++ elfutils/config.h.in
-@@ -6,6 +6,12 @@
- /* Should ar and ranlib use -D behavior by default? */
- #undef DEFAULT_AR_DETERMINISTIC
-
-+/* Have __builtin_popcount. */
-+#undef HAVE_BUILTIN_POPCOUNT
-+
-+/* Define to 1 if you have the `futimens' function. */
-+#undef HAVE_FUTIMENS
-+
- /* Define to 1 if you have the <inttypes.h> header file. */
- #undef HAVE_INTTYPES_H
-
-@@ -105,4 +111,7 @@
- /* Define for large files, on AIX-style hosts. */
- #undef _LARGE_FILES
-
-+/* Stubbed out if missing compiler support. */
-+#undef __thread
-+
- #include <eu-config.h>
-diffelfutils/configure git-portable/configure
---- elfutils/configure
-+++ elfutils/configure
-@@ -672,6 +672,8 @@ ZLIB_TRUE
- LIBEBL_SUBDIR
- TESTS_RPATH_FALSE
- TESTS_RPATH_TRUE
-+BUILD_WERROR_FALSE
-+BUILD_WERROR_TRUE
- BUILD_STATIC_FALSE
- BUILD_STATIC_TRUE
- USE_VALGRIND_FALSE
-@@ -687,6 +689,8 @@ NEVER_TRUE
- base_cpu
- NATIVE_LD_FALSE
- NATIVE_LD_TRUE
-+LD_AS_NEEDED
-+WEXTRA
- NM
- READELF
- ac_ct_AR
-@@ -807,6 +811,7 @@ enable_gprof
- enable_gcov
- enable_sanitize_undefined
- enable_valgrind
-+enable_werror
- enable_tests_rpath
- enable_libebl_subdir
- with_zlib
-@@ -1467,6 +1472,7 @@ Optional Features:
- --enable-sanitize-undefined
- Use gcc undefined behaviour sanitizer
- --enable-valgrind run all tests under valgrind
-+ --disable-werror do not build with -Werror
- --enable-tests-rpath build $ORIGIN-using rpath into tests
- --enable-libebl-subdir=DIR
- install libebl_CPU modules in $(libdir)/DIR
-@@ -1665,6 +1671,73 @@ fi
-
- } # ac_fn_c_try_link
-
-+# ac_fn_c_check_func LINENO FUNC VAR
-+# ----------------------------------
-+# Tests whether FUNC exists, setting the cache variable VAR accordingly
-+ac_fn_c_check_func ()
-+{
-+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-+$as_echo_n "checking for $2... " >&6; }
-+if eval \${$3+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
-+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
-+#define $2 innocuous_$2
-+
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char $2 (); below.
-+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-+ <limits.h> exists even on freestanding compilers. */
-+
-+#ifdef __STDC__
-+# include <limits.h>
-+#else
-+# include <assert.h>
-+#endif
-+
-+#undef $2
-+
-+/* Override any GCC internal prototype to avoid an error.
-+ Use char because int might match the return type of a GCC
-+ builtin and then its argument prototype would still apply. */
-+#ifdef __cplusplus
-+extern "C"
-+#endif
-+char $2 ();
-+/* The GNU C library defines this 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_$2 || defined __stub___$2
-+choke me
-+#endif
-+
-+int
-+main ()
-+{
-+return $2 ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+if ac_fn_c_try_link "$LINENO"; then :
-+ eval "$3=yes"
-+else
-+ eval "$3=no"
-+fi
-+rm -f core conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
-+fi
-+eval ac_res=\$$3
-+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-+$as_echo "$ac_res" >&6; }
-+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-+
-+} # ac_fn_c_check_func
-+
- # ac_fn_c_try_run LINENO
- # ----------------------
- # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-@@ -4825,6 +4898,18 @@ else
- fi
-
-
-+for ac_func in futimens
-+do :
-+ ac_fn_c_check_func "$LINENO" "futimens" "ac_cv_func_futimens"
-+if test "x$ac_cv_func_futimens" = xyes; then :
-+ cat >>confdefs.h <<_ACEOF
-+#define HAVE_FUTIMENS 1
-+_ACEOF
-+
-+fi
-+done
-+
-+
- # We use -std=gnu99 but have explicit checks for some language constructs
- # and GNU extensions since some compilers claim GNU99 support, but don't
- # really support all language extensions. In particular we need
-@@ -4873,6 +4958,130 @@ if test "x$ac_cv_c99" != xyes; then :
- as_fn_error $? "gcc with GNU99 support required" "$LINENO" 5
- fi
-
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -Wextra option to $CC" >&5
-+$as_echo_n "checking for -Wextra option to $CC... " >&6; }
-+if ${ac_cv_cc_wextra+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ old_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -Wextra"
-+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+void foo (void) { }
-+_ACEOF
-+if ac_fn_c_try_compile "$LINENO"; then :
-+ ac_cv_cc_wextra=yes
-+else
-+ ac_cv_cc_wextra=no
-+fi
-+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-+CFLAGS="$old_CFLAGS"
-+fi
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_wextra" >&5
-+$as_echo "$ac_cv_cc_wextra" >&6; }
-+
-+if test "x$ac_cv_cc_wextra" = xyes; then :
-+ WEXTRA=-Wextra
-+else
-+ WEXTRA=-W
-+fi
-+
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fgnu89-inline option to $CC" >&5
-+$as_echo_n "checking for -fgnu89-inline option to $CC... " >&6; }
-+if ${ac_cv_cc_gnu89_inline+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ old_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -fgnu89-inline -Werror"
-+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+
-+void foo (void)
-+{
-+ inline void bar (void) {}
-+ bar ();
-+}
-+extern inline void baz (void) {}
-+
-+_ACEOF
-+if ac_fn_c_try_compile "$LINENO"; then :
-+ ac_cv_cc_gnu89_inline=yes
-+else
-+ ac_cv_cc_gnu89_inline=no
-+fi
-+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-+CFLAGS="$old_CFLAGS"
-+fi
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_gnu89_inline" >&5
-+$as_echo "$ac_cv_cc_gnu89_inline" >&6; }
-+if test "x$ac_cv_cc_gnu89_inline" = xyes; then :
-+ WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline"
-+fi
-+
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --as-needed linker option" >&5
-+$as_echo_n "checking for --as-needed linker option... " >&6; }
-+if ${ac_cv_as_needed+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ cat > conftest.c <<EOF
-+int main (void) { return 0; }
-+EOF
-+if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
-+ -fPIC -shared -o conftest.so conftest.c
-+ -Wl,--as-needed 1>&5'
-+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-+ test $ac_status = 0; }; }
-+then
-+ ac_cv_as_needed=yes
-+else
-+ ac_cv_as_needed=no
-+fi
-+rm -f conftest*
-+fi
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_as_needed" >&5
-+$as_echo "$ac_cv_as_needed" >&6; }
-+if test "x$ac_cv_as_needed" = xyes; then :
-+ LD_AS_NEEDED=-Wl,--as-needed
-+else
-+ LD_AS_NEEDED=
-+fi
-+
-+
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __builtin_popcount" >&5
-+$as_echo_n "checking for __builtin_popcount... " >&6; }
-+if ${ac_cv_popcount+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+
-+int
-+main ()
-+{
-+exit (__builtin_popcount (127));
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+if ac_fn_c_try_link "$LINENO"; then :
-+ ac_cv_popcount=yes
-+else
-+ ac_cv_popcount=no
-+fi
-+rm -f core conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
-+fi
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_popcount" >&5
-+$as_echo "$ac_cv_popcount" >&6; }
-+if test "x$ac_cv_popcount" = xyes; then :
-+
-+$as_echo "#define HAVE_BUILTIN_POPCOUNT 1" >>confdefs.h
-+
-+fi
-+
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __thread support" >&5
- $as_echo_n "checking for __thread support... " >&6; }
- if ${ac_cv_tls+:} false; then :
-@@ -4910,7 +5119,13 @@ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_tls" >&5
- $as_echo "$ac_cv_tls" >&6; }
- if test "x$ac_cv_tls" != xyes; then :
-- as_fn_error $? "__thread support required" "$LINENO" 5
-+ if test "$use_locks" = yes; then :
-+ as_fn_error $? "--enable-thread-safety requires __thread support" "$LINENO" 5
-+else
-+
-+$as_echo "#define __thread /* empty: no multi-thread support */" >>confdefs.h
-+
-+fi
- fi
-
- # Check whether --enable-largefile was given.
-@@ -5318,6 +5533,22 @@ else
- fi
-
-
-+# Check whether --enable-werror was given.
-+if test "${enable_werror+set}" = set; then :
-+ enableval=$enable_werror; enable_werror=$enableval
-+else
-+ enable_werror=yes
-+fi
-+
-+ if test "$enable_werror" = yes; then
-+ BUILD_WERROR_TRUE=
-+ BUILD_WERROR_FALSE='#'
-+else
-+ BUILD_WERROR_TRUE='#'
-+ BUILD_WERROR_FALSE=
-+fi
-+
-+
- # Check whether --enable-tests-rpath was given.
- if test "${enable_tests_rpath+set}" = set; then :
- enableval=$enable_tests_rpath; tests_use_rpath=$enableval
-@@ -6199,7 +6430,7 @@ case "$eu_version" in
- esac
-
- # Round up to the next release API (x.y) version.
--eu_version=$(( (eu_version + 999) / 1000 ))
-+eu_version=`expr \( $eu_version + 999 \) / 1000`
-
- MODVERSION="Build for ${LIBEBL_SUBDIR} ${eu_version} ${ac_cv_build}"
-
-@@ -7088,6 +7319,10 @@ if test -z "${BUILD_STATIC_TRUE}" && tes
- as_fn_error $? "conditional \"BUILD_STATIC\" was never defined.
- Usually this means the macro was only invoked conditionally." "$LINENO" 5
- fi
-+if test -z "${BUILD_WERROR_TRUE}" && test -z "${BUILD_WERROR_FALSE}"; then
-+ as_fn_error $? "conditional \"BUILD_WERROR\" was never defined.
-+Usually this means the macro was only invoked conditionally." "$LINENO" 5
-+fi
- if test -z "${TESTS_RPATH_TRUE}" && test -z "${TESTS_RPATH_FALSE}"; then
- as_fn_error $? "conditional \"TESTS_RPATH\" was never defined.
- Usually this means the macro was only invoked conditionally." "$LINENO" 5
-diffelfutils/configure.ac git-portable/configure.ac
---- elfutils/configure.ac
-+++ elfutils/configure.ac
-@@ -73,6 +73,8 @@ m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
- AC_CHECK_TOOL([READELF], [readelf])
- AC_CHECK_TOOL([NM], [nm])
-
-+AC_CHECK_FUNCS([futimens])
-+
- # We use -std=gnu99 but have explicit checks for some language constructs
- # and GNU extensions since some compilers claim GNU99 support, but don't
- # really support all language extensions. In particular we need
-@@ -106,6 +108,54 @@ CFLAGS="$old_CFLAGS"])
- AS_IF([test "x$ac_cv_c99" != xyes],
- AC_MSG_ERROR([gcc with GNU99 support required]))
-
-+AC_CACHE_CHECK([for -Wextra option to $CC], ac_cv_cc_wextra, [dnl
-+old_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -Wextra"
-+AC_COMPILE_IFELSE([AC_LANG_SOURCE([void foo (void) { }])],
-+ ac_cv_cc_wextra=yes, ac_cv_cc_wextra=no)
-+CFLAGS="$old_CFLAGS"])
-+AC_SUBST(WEXTRA)
-+AS_IF([test "x$ac_cv_cc_wextra" = xyes], [WEXTRA=-Wextra], [WEXTRA=-W])
-+
-+AC_CACHE_CHECK([for -fgnu89-inline option to $CC], ac_cv_cc_gnu89_inline, [dnl
-+old_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -fgnu89-inline -Werror"
-+AC_COMPILE_IFELSE([AC_LANG_SOURCE([
-+void foo (void)
-+{
-+ inline void bar (void) {}
-+ bar ();
-+}
-+extern inline void baz (void) {}
-+])], ac_cv_cc_gnu89_inline=yes, ac_cv_cc_gnu89_inline=no)
-+CFLAGS="$old_CFLAGS"])
-+AS_IF([test "x$ac_cv_cc_gnu89_inline" = xyes],
-+ [WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline"])
-+
-+AC_CACHE_CHECK([for --as-needed linker option],
-+ ac_cv_as_needed, [dnl
-+cat > conftest.c <<EOF
-+int main (void) { return 0; }
-+EOF
-+if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
-+ -fPIC -shared -o conftest.so conftest.c
-+ -Wl,--as-needed 1>&AS_MESSAGE_LOG_FD])
-+then
-+ ac_cv_as_needed=yes
-+else
-+ ac_cv_as_needed=no
-+fi
-+rm -f conftest*])
-+AS_IF([test "x$ac_cv_as_needed" = xyes],
-+ [LD_AS_NEEDED=-Wl,--as-needed], [LD_AS_NEEDED=])
-+AC_SUBST(LD_AS_NEEDED)
-+
-+AC_CACHE_CHECK([for __builtin_popcount], ac_cv_popcount, [dnl
-+AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[exit (__builtin_popcount (127));]])],
-+ ac_cv_popcount=yes, ac_cv_popcount=no)])
-+AS_IF([test "x$ac_cv_popcount" = xyes],
-+ [AC_DEFINE([HAVE_BUILTIN_POPCOUNT], [1], [Have __builtin_popcount.])])
-+
- AC_CACHE_CHECK([for __thread support], ac_cv_tls, [dnl
- # Use the same flags that we use for our DSOs, so the test is representative.
- # Some old compiler/linker/libc combinations fail some ways and not others.
-@@ -122,7 +172,10 @@ static __thread int a; int foo (int b) {
- CFLAGS="$save_CFLAGS"
- LDFLAGS="$save_LDFLAGS"])
- AS_IF([test "x$ac_cv_tls" != xyes],
-- AC_MSG_ERROR([__thread support required]))
-+ [AS_IF([test "$use_locks" = yes],
-+ [AC_MSG_ERROR([--enable-thread-safety requires __thread support])],
-+ [AC_DEFINE([__thread], [/* empty: no multi-thread support */],
-+ [Stubbed out if missing compiler support.])])])
-
- dnl This test must come as early as possible after the compiler configuration
- dnl tests, because the choice of the file model can (in principle) affect
-@@ -224,6 +277,11 @@ AM_CONDITIONAL(USE_VALGRIND, test "$use_
- AM_CONDITIONAL(BUILD_STATIC, [dnl
- test "$use_gprof" = yes -o "$use_gcov" = yes])
-
-+AC_ARG_ENABLE([werror],
-+AS_HELP_STRING([--disable-werror],[do not build with -Werror]),
-+ [enable_werror=$enableval], [enable_werror=yes])
-+AM_CONDITIONAL(BUILD_WERROR, test "$enable_werror" = yes)
-+
- AC_ARG_ENABLE([tests-rpath],
- AS_HELP_STRING([--enable-tests-rpath],[build $ORIGIN-using rpath into tests]),
- [tests_use_rpath=$enableval], [tests_use_rpath=no])
-@@ -388,7 +446,7 @@ case "$eu_version" in
- esac
-
- # Round up to the next release API (x.y) version.
--eu_version=$(( (eu_version + 999) / 1000 ))
-+eu_version=`expr \( $eu_version + 999 \) / 1000`
-
- dnl Unique ID for this build.
- MODVERSION="Build for ${LIBEBL_SUBDIR} ${eu_version} ${ac_cv_build}"
-diffelfutils/lib/ChangeLog git-portable/lib/ChangeLog
---- elfutils/lib/ChangeLog
-+++ elfutils/lib/ChangeLog
-@@ -73,6 +73,9 @@
-
- 2009-01-23 Roland McGrath <roland@redhat.com>
-
-+ * eu-config.h [! HAVE_BUILTIN_POPCOUNT]
-+ (__builtin_popcount): New inline function.
-+
- * eu-config.h: Add multiple inclusion protection.
-
- 2009-01-17 Ulrich Drepper <drepper@redhat.com>
-@@ -129,6 +132,11 @@
- * Makefile.am (libeu_a_SOURCES): Add it.
- * system.h: Declare crc32_file.
-
-+2005-02-07 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- 2005-04-30 Ulrich Drepper <drepper@redhat.com>
-
- * Makefile.am: Use -ffunction-sections for xmalloc.c.
-diffelfutils/lib/eu-config.h git-portable/lib/eu-config.h
---- elfutils/lib/eu-config.h
-+++ elfutils/lib/eu-config.h
-@@ -163,6 +163,17 @@ asm (".section predict_data, \"aw\"; .pr
- /* This macro is used by the tests conditionalize for standalone building. */
- #define ELFUTILS_HEADER(name) <lib##name.h>
-
-+#ifndef HAVE_BUILTIN_POPCOUNT
-+# define __builtin_popcount hakmem_popcount
-+static inline unsigned int __attribute__ ((unused))
-+hakmem_popcount (unsigned int x)
-+{
-+ /* HAKMEM 169 */
-+ unsigned int n = x - ((x >> 1) & 033333333333) - ((x >> 2) & 011111111111);
-+ return ((n + (n >> 3)) & 030707070707) % 63;
-+}
-+#endif /* HAVE_BUILTIN_POPCOUNT */
-+
-
- #ifdef SYMBOL_VERSIONING
- # define OLD_VERSION(name, version) \
-diffelfutils/lib/Makefile.in git-portable/lib/Makefile.in
---- elfutils/lib/Makefile.in
-+++ elfutils/lib/Makefile.in
-@@ -89,7 +89,8 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
- subdir = lib
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \
-@@ -212,6 +213,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -243,6 +245,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = @VERSION@
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -309,13 +312,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
- $($(*F)_no_Werror),,-Werror) $(if \
-- $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
- $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS) -fpic
-+ $($(*F)_CFLAGS) $(am__append_1) -fpic
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
- @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg)
-diffelfutils/libasm/ChangeLog git-portable/libasm/ChangeLog
---- elfutils/libasm/ChangeLog
-+++ elfutils/libasm/ChangeLog
-@@ -87,6 +87,11 @@
- * asm_error.c: Add new error ASM_E_IOERROR.
- * libasmP.h: Add ASM_E_IOERROR definition.
-
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- 2005-02-15 Ulrich Drepper <drepper@redhat.com>
-
- * Makefile.am (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
-diffelfutils/libasm/Makefile.in git-portable/libasm/Makefile.in
---- elfutils/libasm/Makefile.in
-+++ elfutils/libasm/Makefile.in
-@@ -90,9 +90,10 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
- noinst_PROGRAMS = $(am__EXEEXT_1)
--@USE_LOCKS_TRUE@am__append_2 = -lpthread
-+@USE_LOCKS_TRUE@am__append_3 = -lpthread
- subdir = libasm
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \
-@@ -263,6 +264,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -294,6 +296,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = 1
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -361,14 +364,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
-- $(if $($(*F)_no_Werror),,-Werror) \
-- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
-- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS)
--
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
-+ $($(*F)_no_Werror),,-Werror) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
-+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-+ $($(*F)_CFLAGS) $(am__append_1)
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda $(am_libasm_pic_a_OBJECTS) \
- libasm.so.$(VERSION)
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
-@@ -395,7 +398,7 @@ libasm_a_SOURCES = asm_begin.c asm_abort
-
- libasm_pic_a_SOURCES =
- am_libasm_pic_a_OBJECTS = $(libasm_a_SOURCES:.c=.os)
--libasm_so_LDLIBS = $(am__append_2)
-+libasm_so_LDLIBS = $(am__append_3)
- libasm_so_SOURCES =
- noinst_HEADERS = libasmP.h symbolhash.h
- EXTRA_DIST = libasm.map
-diffelfutils/libcpu/ChangeLog git-portable/libcpu/ChangeLog
---- elfutils/libcpu/ChangeLog
-+++ elfutils/libcpu/ChangeLog
-@@ -51,6 +51,9 @@
-
- 2009-01-23 Roland McGrath <roland@redhat.com>
-
-+ * i386_disasm.c (i386_disasm): Add abort after assert-constant for old
-+ compilers that don't realize it's noreturn.
-+
- * Makefile.am (i386_parse_CFLAGS): Use quotes around command
- substitution that can produce leading whitespace.
-
-@@ -380,6 +383,11 @@
- * defs/i386.doc: New file.
- * defs/x86_64: New file.
-
-+2005-04-04 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it instead of -Wextra.
-+
- 2005-02-15 Ulrich Drepper <drepper@redhat.com>
-
- * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
-diffelfutils/libcpu/i386_disasm.c git-portable/libcpu/i386_disasm.c
---- elfutils/libcpu/i386_disasm.c
-+++ elfutils/libcpu/i386_disasm.c
-@@ -822,6 +822,7 @@ i386_disasm (const uint8_t **startp, con
-
- default:
- assert (! "INVALID not handled");
-+ abort ();
- }
- }
- else
-diffelfutils/libcpu/Makefile.in git-portable/libcpu/Makefile.in
---- elfutils/libcpu/Makefile.in
-+++ elfutils/libcpu/Makefile.in
-@@ -90,7 +90,8 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
- @MAINTAINER_MODE_TRUE@noinst_PROGRAMS = i386_gendis$(EXEEXT)
- subdir = libcpu
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-@@ -238,6 +239,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = lex.$(<F:lex.l=)
-@@ -269,6 +271,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = @VERSION@
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -336,13 +339,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
- $($(*F)_no_Werror),,-Werror) $(if \
-- $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
- $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS) -fpic -fdollars-in-identifiers
-+ $($(*F)_CFLAGS) $(am__append_1) -fpic -fdollars-in-identifiers
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda $(foreach P,i386 x86_64,$P_defs \
- $P.mnemonics)
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
-diffelfutils/libdw/ChangeLog git-portable/libdw/ChangeLog
---- elfutils/libdw/ChangeLog
-+++ elfutils/libdw/ChangeLog
-@@ -904,6 +904,10 @@
-
- * Makefile.am (known-dwarf.h): Run gawk on config/known-dwarf.awk.
-
-+2011-07-20 Mark Wielaard <mjw@redhat.com>
-+
-+ * dwarf_begin_elf.c: Add fallback for be64toh if not defined.
-+
- 2011-07-14 Mark Wielaard <mjw@redhat.com>
-
- * libdw.h (dwarf_offdie): Fix documentation to mention .debug_info.
-@@ -1263,6 +1267,10 @@
-
- * dwarf_hasattr_integrate.c: Integrate DW_AT_specification too.
-
-+2009-08-17 Roland McGrath <roland@redhat.com>
-+
-+ * libdw.h: Disable extern inlines for GCC 4.2.
-+
- 2009-08-10 Roland McGrath <roland@redhat.com>
-
- * dwarf_getscopevar.c: Use dwarf_diename.
-@@ -2031,6 +2039,11 @@
-
- 2005-05-31 Roland McGrath <roland@redhat.com>
-
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
- * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to
- formref offset.
-
-diffelfutils/libdw/dwarf_begin_elf.c git-portable/libdw/dwarf_begin_elf.c
---- elfutils/libdw/dwarf_begin_elf.c
-+++ elfutils/libdw/dwarf_begin_elf.c
-@@ -47,6 +47,14 @@
- #if USE_ZLIB
- # include <endian.h>
- # define crc32 loser_crc32
-+# ifndef be64toh
-+# include <byteswap.h>
-+# if __BYTE_ORDER == __LITTLE_ENDIAN
-+# define be64toh(x) bswap_64 (x)
-+# else
-+# define be64toh(x) (x)
-+# endif
-+# endif
- # include <zlib.h>
- # undef crc32
- #endif
-diffelfutils/libdw/libdw.h git-portable/libdw/libdw.h
---- elfutils/libdw/libdw.h
-+++ elfutils/libdw/libdw.h
-@@ -1004,7 +1004,7 @@ extern Dwarf_OOM dwarf_new_oom_handler (
-
-
- /* Inline optimizations. */
--#ifdef __OPTIMIZE__
-+#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2)
- /* Return attribute code of given attribute. */
- __libdw_extern_inline unsigned int
- dwarf_whatattr (Dwarf_Attribute *attr)
-diffelfutils/libdw/Makefile.in git-portable/libdw/Makefile.in
---- elfutils/libdw/Makefile.in
-+++ elfutils/libdw/Makefile.in
-@@ -90,8 +90,9 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
--@BUILD_STATIC_TRUE@am__append_2 = -fpic
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
-+@BUILD_STATIC_TRUE@am__append_3 = -fpic
- noinst_PROGRAMS = $(am__EXEEXT_1)
- subdir = libdw
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-@@ -312,6 +313,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -343,6 +345,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = 1
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -409,13 +412,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
- $($(*F)_no_Werror),,-Werror) $(if \
-- $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
- $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS) $(am__append_2)
-+ $($(*F)_CFLAGS) $(am__append_1) $(am__append_3)
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
- @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg)
-diffelfutils/libdwelf/Makefile.in git-portable/libdwelf/Makefile.in
---- elfutils/libdwelf/Makefile.in
-+++ elfutils/libdwelf/Makefile.in
-@@ -89,7 +89,8 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
- subdir = libdwelf
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \
-@@ -242,6 +243,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -273,6 +275,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = 1
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -340,14 +343,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
-- $(if $($(*F)_no_Werror),,-Werror) \
-- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
-- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS)
--
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
-+ $($(*F)_no_Werror),,-Werror) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
-+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-+ $($(*F)_CFLAGS) $(am__append_1)
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda $(am_libdwelf_pic_a_OBJECTS)
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
- @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg)
-diffelfutils/libdwfl/ChangeLog git-portable/libdwfl/ChangeLog
---- elfutils/libdwfl/ChangeLog
-+++ elfutils/libdwfl/ChangeLog
-@@ -713,6 +713,21 @@
- (dwfl_module_addrsym) (i_to_symfile): New function.
- (dwfl_module_addrsym) (search_table): Use it.
-
-+2013-11-09 Jan Kratochvil <jan.kratochvil@redhat.com>
-+
-+ Older OS compatibility bits.
-+ * linux-core-attach.c (be64toh, le64toh, be32toh, le32toh): Provide
-+ fallbacks if not defined by system.
-+
-+2013-11-09 Jan Kratochvil <jan.kratochvil@redhat.com>
-+
-+ Handle T-stopped detach for old kernels.
-+ * linux-pid-attach.c (struct pid_arg): New field stopped.
-+ (ptrace_attach): New parameter stoppedp. Set it appropriately.
-+ (pid_set_initial_registers): Pass the new field.
-+ (pid_thread_detach): Handle the case of STOPPED for old kernels.
-+ (__libdwfl_attach_state_for_pid): Initialize STOPPED.
-+
- 2013-11-07 Jan Kratochvil <jan.kratochvil@redhat.com>
- Mark Wielaard <mjw@redhat.com>
-
-@@ -2478,6 +2493,11 @@
-
- 2005-07-21 Roland McGrath <roland@redhat.com>
-
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
-+2005-07-21 Roland McGrath <roland@redhat.com>
-+
- * Makefile.am (noinst_HEADERS): Add loc2c.c.
-
- * test2.c (main): Check sscanf result to quiet warning.
-diffelfutils/libdwfl/linux-core-attach.c git-portable/libdwfl/linux-core-attach.c
---- elfutils/libdwfl/linux-core-attach.c
-+++ elfutils/libdwfl/linux-core-attach.c
-@@ -29,6 +29,35 @@
- #include "libdwflP.h"
- #include <fcntl.h>
- #include "system.h"
-+#include <endian.h>
-+#include <byteswap.h>
-+#if __BYTE_ORDER == __LITTLE_ENDIAN
-+# ifndef be64toh
-+# define be64toh(x) bswap_64 (x)
-+# endif
-+# ifndef le64toh
-+# define le64toh(x) (x)
-+# endif
-+# ifndef be32toh
-+# define be32toh(x) bswap_32 (x)
-+# endif
-+# ifndef le32toh
-+# define le32toh(x) (x)
-+# endif
-+#else
-+# ifndef be64toh
-+# define be64toh(x) (x)
-+# endif
-+# ifndef le64toh
-+# define le64toh(x) bswap_64 (x)
-+# endif
-+# ifndef be32toh
-+# define be32toh(x) (x)
-+# endif
-+# ifndef le32toh
-+# define le32toh(x) bswap_32 (x)
-+# endif
-+#endif
-
- #include "../libdw/memory-access.h"
-
-diffelfutils/libdwfl/linux-pid-attach.c git-portable/libdwfl/linux-pid-attach.c
---- elfutils/libdwfl/linux-pid-attach.c
-+++ elfutils/libdwfl/linux-pid-attach.c
-@@ -255,6 +255,11 @@ void
- internal_function
- __libdwfl_ptrace_detach (pid_t tid, bool tid_was_stopped)
- {
-+ // Older kernels (tested kernel-2.6.18-348.12.1.el5.x86_64) need special
-+ // handling of the detachment to keep the process State: T (stopped).
-+ if (tid_was_stopped)
-+ syscall (__NR_tkill, tid, SIGSTOP);
-+
- /* This handling is needed only on older Linux kernels such as
- 2.6.32-358.23.2.el6.ppc64. Later kernels such as
- 3.11.7-200.fc19.x86_64 remember the T (stopped) state
-@@ -262,6 +267,15 @@ __libdwfl_ptrace_detach (pid_t tid, bool
- PTRACE_DETACH. */
- ptrace (PTRACE_DETACH, tid, NULL,
- (void *) (intptr_t) (tid_was_stopped ? SIGSTOP : 0));
-+
-+ if (tid_was_stopped)
-+ {
-+ // Wait till the SIGSTOP settles down.
-+ int i;
-+ for (i = 0; i < 100000; i++)
-+ if (linux_proc_pid_is_stopped (tid))
-+ break;
-+ }
- }
-
- static void
-diffelfutils/libdwfl/Makefile.in git-portable/libdwfl/Makefile.in
---- elfutils/libdwfl/Makefile.in
-+++ elfutils/libdwfl/Makefile.in
-@@ -89,10 +89,11 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
--@ZLIB_TRUE@am__append_2 = gzip.c
--@BZLIB_TRUE@am__append_3 = bzip2.c
--@LZMA_TRUE@am__append_4 = lzma.c
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
-+@ZLIB_TRUE@am__append_3 = gzip.c
-+@BZLIB_TRUE@am__append_4 = bzip2.c
-+@LZMA_TRUE@am__append_5 = lzma.c
- subdir = libdwfl
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \
-@@ -301,6 +302,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -332,6 +334,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = 1
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -399,14 +402,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
-- $(if $($(*F)_no_Werror),,-Werror) \
-- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
-- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS)
--
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
-+ $($(*F)_no_Werror),,-Werror) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
-+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-+ $($(*F)_CFLAGS) $(am__append_1)
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda $(am_libdwfl_pic_a_OBJECTS)
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
- @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg)
-@@ -435,8 +438,8 @@ libdwfl_a_SOURCES = dwfl_begin.c dwfl_en
- dwfl_module_register_names.c dwfl_segment_report_module.c \
- link_map.c core-file.c open.c image-header.c dwfl_frame.c \
- frame_unwind.c dwfl_frame_pc.c linux-pid-attach.c \
-- linux-core-attach.c dwfl_frame_regs.c $(am__append_2) \
-- $(am__append_3) $(am__append_4)
-+ linux-core-attach.c dwfl_frame_regs.c $(am__append_3) \
-+ $(am__append_4) $(am__append_5)
- libdwfl = $(libdw)
- libdw = ../libdw/libdw.so
- libelf = ../libelf/libelf.so
-diffelfutils/libebl/ChangeLog git-portable/libebl/ChangeLog
---- elfutils/libebl/ChangeLog
-+++ elfutils/libebl/ChangeLog
-@@ -785,6 +785,11 @@
- * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency
- tracking works right.
-
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- 2005-05-21 Ulrich Drepper <drepper@redhat.com>
-
- * libebl_x86_64.map: Add x86_64_core_note.
-diffelfutils/libebl/Makefile.in git-portable/libebl/Makefile.in
---- elfutils/libebl/Makefile.in
-+++ elfutils/libebl/Makefile.in
-@@ -89,7 +89,8 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
- subdir = libebl
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \
-@@ -264,6 +265,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -295,6 +297,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = 1
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -362,13 +365,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
- $($(*F)_no_Werror),,-Werror) $(if \
-- $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
- $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS) -fpic
-+ $($(*F)_CFLAGS) $(am__append_1) -fpic
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda $(am_libebl_pic_a_OBJECTS)
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
- @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg)
-diffelfutils/libelf/ChangeLog git-portable/libelf/ChangeLog
---- elfutils/libelf/ChangeLog
-+++ elfutils/libelf/ChangeLog
-@@ -412,6 +412,11 @@
-
- * elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check.
-
-+2011-03-10 Roland McGrath <roland@redhat.com>
-+
-+ * gnuhash_xlate.h (elf_cvt_gnuhash): Avoid post-increment in bswap_32
-+ argument, since some implementations are buggy macros.
-+
- 2011-02-26 Mark Wielaard <mjw@redhat.com>
-
- * elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini.
-@@ -1089,6 +1094,11 @@
-
- * elf.h: Update from glibc.
-
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- 2005-05-08 Roland McGrath <roland@redhat.com>
-
- * elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now.
-diffelfutils/libelf/common.h git-portable/libelf/common.h
---- elfutils/libelf/common.h
-+++ elfutils/libelf/common.h
-@@ -139,7 +139,7 @@ libelf_release_all (Elf *elf)
- (Var) = (sizeof (Var) == 1 \
- ? (unsigned char) (Var) \
- : (sizeof (Var) == 2 \
-- ? bswap_16 (Var) \
-+ ? (unsigned short int) bswap_16 (Var) \
- : (sizeof (Var) == 4 \
- ? bswap_32 (Var) \
- : bswap_64 (Var))))
-@@ -148,7 +148,7 @@ libelf_release_all (Elf *elf)
- (Dst) = (sizeof (Var) == 1 \
- ? (unsigned char) (Var) \
- : (sizeof (Var) == 2 \
-- ? bswap_16 (Var) \
-+ ? (unsigned short int) bswap_16 (Var) \
- : (sizeof (Var) == 4 \
- ? bswap_32 (Var) \
- : bswap_64 (Var))))
-diffelfutils/libelf/gnuhash_xlate.h git-portable/libelf/gnuhash_xlate.h
---- elfutils/libelf/gnuhash_xlate.h
-+++ elfutils/libelf/gnuhash_xlate.h
-@@ -1,5 +1,5 @@
- /* Conversion functions for versioning information.
-- Copyright (C) 2006, 2007 Red Hat, Inc.
-+ Copyright (C) 2006-2011 Red Hat, Inc.
- This file is part of elfutils.
- Written by Ulrich Drepper <drepper@redhat.com>, 2006.
-
-@@ -68,7 +68,9 @@ elf_cvt_gnuhash (void *dest, const void
- dest32 = (Elf32_Word *) &dest64[bitmask_words];
- while (len >= 4)
- {
-- *dest32++ = bswap_32 (*src32++);
-+ *dest32 = bswap_32 (*src32);
-+ ++dest32;
-+ ++src32;
- len -= 4;
- }
- }
-diffelfutils/libelf/Makefile.in git-portable/libelf/Makefile.in
---- elfutils/libelf/Makefile.in
-+++ elfutils/libelf/Makefile.in
-@@ -90,10 +90,11 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
--@BUILD_STATIC_TRUE@am__append_2 = -fpic
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
-+@BUILD_STATIC_TRUE@am__append_3 = -fpic
- noinst_PROGRAMS = $(am__EXEEXT_1)
--@USE_LOCKS_TRUE@am__append_3 = -lpthread
-+@USE_LOCKS_TRUE@am__append_4 = -lpthread
- subdir = libelf
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \
-@@ -305,6 +306,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -336,6 +338,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = 1
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -401,13 +404,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
- $($(*F)_no_Werror),,-Werror) $(if \
-- $($(*F)_no_Wunused),,-Wunused -Wextra) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
- $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS) $(am__append_2)
-+ $($(*F)_CFLAGS) $(am__append_1) $(am__append_3)
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda $(am_libelf_pic_a_OBJECTS) \
- libelf.so.$(VERSION)
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
-@@ -470,7 +474,7 @@ libelf_a_SOURCES = elf_version.c elf_has
-
- libelf_pic_a_SOURCES =
- am_libelf_pic_a_OBJECTS = $(libelf_a_SOURCES:.c=.os)
--libelf_so_LDLIBS = $(am__append_3)
-+libelf_so_LDLIBS = $(am__append_4)
- libelf_so_SOURCES =
- noinst_HEADERS = elf.h abstract.h common.h exttypes.h gelf_xlate.h libelfP.h \
- version_xlate.h gnuhash_xlate.h note_xlate.h dl-hash.h
-diffelfutils/m4/Makefile.in git-portable/m4/Makefile.in
---- elfutils/m4/Makefile.in
-+++ elfutils/m4/Makefile.in
-@@ -159,6 +159,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -190,6 +191,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = @VERSION@
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-diffelfutils/Makefile.in git-portable/Makefile.in
---- elfutils/Makefile.in
-+++ elfutils/Makefile.in
-@@ -277,6 +277,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -308,6 +309,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = @VERSION@
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-diffelfutils/src/addr2line.c git-portable/src/addr2line.c
---- elfutils/src/addr2line.c
-+++ elfutils/src/addr2line.c
-@@ -622,10 +622,10 @@ handle_address (const char *string, Dwfl
- bool parsed = false;
- int i, j;
- char *name = NULL;
-- if (sscanf (string, "(%m[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2
-+ if (sscanf (string, "(%a[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2
- && string[i] == '\0')
- parsed = adjust_to_section (name, &addr, dwfl);
-- switch (sscanf (string, "%m[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j))
-+ switch (sscanf (string, "%a[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j))
- {
- default:
- break;
-diffelfutils/src/ar.c git-portable/src/ar.c
---- elfutils/src/ar.c
-+++ elfutils/src/ar.c
-@@ -685,7 +685,14 @@ do_oper_extract (int oper, const char *a
- tv[1].tv_sec = arhdr->ar_date;
- tv[1].tv_nsec = 0;
-
-+#ifdef HAVE_FUTIMENS
- if (unlikely (futimens (xfd, tv) != 0))
-+#else
-+ struct timeval times[2];
-+ TIMESPEC_TO_TIMEVAL (&times[0], &tv[0]);
-+ TIMESPEC_TO_TIMEVAL (&times[1], &tv[1]);
-+ if (unlikely (futimes (xfd, times) != 0))
-+#endif
- {
- error (0, errno,
- gettext ("cannot change modification time of %s"),
-diffelfutils/src/ChangeLog git-portable/src/ChangeLog
---- elfutils/src/ChangeLog
-+++ elfutils/src/ChangeLog
-@@ -1626,8 +1626,16 @@
- * readelf.c (attr_callback): Use print_block only when we don't use
- print_ops.
-
-+2009-08-17 Roland McGrath <roland@redhat.com>
-+
-+ * ld.h: Disable extern inlines for GCC 4.2.
-+
- 2009-08-14 Roland McGrath <roland@redhat.com>
-
-+ * strings.c (read_block): Conditionalize posix_fadvise use
-+ on [POSIX_FADV_SEQUENTIAL].
-+ From Petr Salinger <Petr.Salinger@seznam.cz>.
-+
- * ar.c (do_oper_extract): Use pathconf instead of statfs.
-
- 2009-08-01 Ulrich Drepper <drepper@redhat.com>
-@@ -1791,6 +1799,8 @@
- * readelf.c (print_debug_frame_section): Use t instead of j formats
- for ptrdiff_t OFFSET.
-
-+ * addr2line.c (handle_address): Use %a instead of %m for compatibility.
-+
- 2009-01-21 Ulrich Drepper <drepper@redhat.com>
-
- * elflint.c (check_program_header): Fix typo in .eh_frame_hdr section
-@@ -1974,6 +1984,11 @@
- that matches its PT_LOAD's p_flags &~ PF_W. On sparc, PF_X really
- is valid in RELRO.
-
-+2008-03-01 Roland McGrath <roland@redhat.com>
-+
-+ * readelf.c (dump_archive_index): Tweak portability hack
-+ to match [__GNUC__ < 4] too.
-+
- 2008-02-29 Roland McGrath <roland@redhat.com>
-
- * readelf.c (print_attributes): Add a cast.
-@@ -2225,6 +2240,8 @@
-
- * readelf.c (hex_dump): Fix rounding error in whitespace calculation.
-
-+ * Makefile.am (readelf_no_Werror): New variable.
-+
- 2007-10-15 Roland McGrath <roland@redhat.com>
-
- * make-debug-archive.in: New file.
-@@ -2664,6 +2681,10 @@
- * elflint.c (valid_e_machine): Add EM_ALPHA.
- Reported by Christian Aichinger <Greek0@gmx.net>.
-
-+ * strings.c (map_file): Define POSIX_MADV_SEQUENTIAL to
-+ MADV_SEQUENTIAL if undefined. Don't call posix_madvise
-+ if neither is defined.
-+
- 2006-08-08 Ulrich Drepper <drepper@redhat.com>
-
- * elflint.c (check_dynamic): Don't require DT_HASH for DT_SYMTAB.
-@@ -2740,6 +2761,10 @@
- * Makefile.am: Add hacks to create dependency files for non-generic
- linker.
-
-+2006-04-05 Roland McGrath <roland@redhat.com>
-+
-+ * strings.c (MAP_POPULATE): Define to 0 if undefined.
-+
- 2006-06-12 Ulrich Drepper <drepper@redhat.com>
-
- * ldgeneric.c (ld_generic_generate_sections): Don't create .interp
-@@ -3088,6 +3113,11 @@
- * readelf.c (print_debug_loc_section): Fix indentation for larger
- address size.
-
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- 2005-05-30 Roland McGrath <roland@redhat.com>
-
- * readelf.c (print_debug_line_section): Print section offset of each
-diffelfutils/src/findtextrel.c git-portable/src/findtextrel.c
---- elfutils/src/findtextrel.c
-+++ elfutils/src/findtextrel.c
-@@ -503,7 +503,11 @@ ptrcompare (const void *p1, const void *
-
-
- static void
--check_rel (size_t nsegments, struct segments segments[nsegments],
-+check_rel (size_t nsegments, struct segments segments[
-+#if __GNUC__ >= 4
-+ nsegments
-+#endif
-+ ],
- GElf_Addr addr, Elf *elf, Elf_Scn *symscn, Dwarf *dw,
- const char *fname, bool more_than_one, void **knownsrcs)
- {
-diffelfutils/src/ld.h git-portable/src/ld.h
---- elfutils/src/ld.h
-+++ elfutils/src/ld.h
-@@ -1114,6 +1114,7 @@ extern bool dynamically_linked_p (void);
-
- /* Checked whether the symbol is undefined and referenced from a DSO. */
- extern bool linked_from_dso_p (struct scninfo *scninfo, size_t symidx);
-+#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2)
- #ifdef __GNUC_STDC_INLINE__
- __attribute__ ((__gnu_inline__))
- #endif
-@@ -1131,5 +1132,6 @@ linked_from_dso_p (struct scninfo *scnin
-
- return sym->defined && sym->in_dso;
- }
-+#endif /* Optimizing and not GCC 4.2. */
-
- #endif /* ld.h */
-diffelfutils/src/Makefile.am git-portable/src/Makefile.am
---- elfutils/src/Makefile.am
-+++ elfutils/src/Makefile.am
-@@ -90,6 +90,11 @@ endif
- ldgeneric_no_Wunused = yes
- ldgeneric_no_Wstack_usage = yes
-
-+# Buggy old compilers or libc headers.
-+readelf_no_Werror = yes
-+strings_no_Werror = yes
-+addr2line_no_Wformat = yes
-+
- # Bad, bad stack usage...
- readelf_no_Wstack_usage = yes
- nm_no_Wstack_usage = yes
-diffelfutils/src/Makefile.in git-portable/src/Makefile.in
---- elfutils/src/Makefile.in
-+++ elfutils/src/Makefile.in
-@@ -91,7 +91,8 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
- bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEEXT) size$(EXEEXT) \
- strip$(EXEEXT) ld$(EXEEXT) elflint$(EXEEXT) \
- findtextrel$(EXEEXT) addr2line$(EXEEXT) elfcmp$(EXEEXT) \
-@@ -100,9 +101,9 @@ bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEE
- @NATIVE_LD_FALSE@noinst_PROGRAMS = $(am__EXEEXT_1)
- # We never build this library but we need to get the dependency files
- # of all the linker backends that might be used in a non-generic linker.
--@NEVER_TRUE@am__append_2 = libdummy.a
-+@NEVER_TRUE@am__append_3 = libdummy.a
- # -ldl is always needed for libebl.
--@NATIVE_LD_TRUE@am__append_3 = libld_elf.a
-+@NATIVE_LD_TRUE@am__append_4 = libld_elf.a
- @NATIVE_LD_TRUE@am_libld_elf_i386_pic_a_OBJECTS =
- subdir = src
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-@@ -172,7 +173,7 @@ am_ld_OBJECTS = ld.$(OBJEXT) ldgeneric.$
- versionhash.$(OBJEXT)
- ld_OBJECTS = $(am_ld_OBJECTS)
- ld_DEPENDENCIES = $(libebl) $(libelf) $(libeu) $(am__DEPENDENCIES_1) \
-- $(am__append_3)
-+ $(am__append_4)
- ld_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(ld_LDFLAGS) $(LDFLAGS) -o \
- $@
- am_libld_elf_i386_so_OBJECTS =
-@@ -361,6 +362,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -392,6 +394,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = @VERSION@
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -460,14 +463,14 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
-- $(if $($(*F)_no_Werror),,-Werror) \
-- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
-- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS)
--
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
-+ $($(*F)_no_Werror),,-Werror) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
-+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-+ $($(*F)_CFLAGS) $(am__append_1)
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda make-debug-archive none_ld.os \
- $(ld_modules:.c=.os) *.gconv
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
-@@ -480,8 +483,8 @@ AM_LFLAGS = -Pld -olex.yy.c
- native_ld = @native_ld@
- ld_dsos = libld_elf_i386_pic.a
- @NATIVE_LD_FALSE@noinst_LIBRARIES = libld_elf.a libar.a $(ld_dsos) \
--@NATIVE_LD_FALSE@ $(am__append_2)
--@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_2)
-+@NATIVE_LD_FALSE@ $(am__append_3)
-+@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_3)
- @NATIVE_LD_TRUE@native_ld_cflags = -DBASE_ELF_NAME=elf_$(base_cpu)
- @NEVER_TRUE@libdummy_a_SOURCES = i386_ld.c
- ld_SOURCES = ld.c ldgeneric.c ldlex.l ldscript.y symbolhash.c sectionhash.c \
-@@ -509,6 +512,11 @@ libeu = ../lib/libeu.a
- ldgeneric_no_Wunused = yes
- ldgeneric_no_Wstack_usage = yes
-
-+# Buggy old compilers or libc headers.
-+readelf_no_Werror = yes
-+strings_no_Werror = yes
-+addr2line_no_Wformat = yes
-+
- # Bad, bad stack usage...
- readelf_no_Wstack_usage = yes
- nm_no_Wstack_usage = yes
-@@ -528,7 +536,7 @@ nm_LDADD = $(libdw) $(libebl) $(libelf)
- size_LDADD = $(libelf) $(libeu) $(argp_LDADD)
- strip_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
- ld_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl \
-- $(am__append_3)
-+ $(am__append_4)
- ld_LDFLAGS = -rdynamic
- elflint_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
- findtextrel_LDADD = $(libdw) $(libelf) $(argp_LDADD)
-diffelfutils/src/readelf.c git-portable/src/readelf.c
---- elfutils/src/readelf.c
-+++ elfutils/src/readelf.c
-@@ -4366,10 +4366,12 @@ listptr_base (struct listptr *p)
- return base;
- }
-
-+static const char *listptr_name;
-+
- static int
--compare_listptr (const void *a, const void *b, void *arg)
-+compare_listptr (const void *a, const void *b)
- {
-- const char *name = arg;
-+ const char *const name = listptr_name;
- struct listptr *p1 = (void *) a;
- struct listptr *p2 = (void *) b;
-
-@@ -4465,8 +4467,11 @@ static void
- sort_listptr (struct listptr_table *table, const char *name)
- {
- if (table->n > 0)
-- qsort_r (table->table, table->n, sizeof table->table[0],
-- &compare_listptr, (void *) name);
-+ {
-+ listptr_name = name;
-+ qsort (table->table, table->n, sizeof table->table[0],
-+ &compare_listptr);
-+ }
- }
-
- static bool
-@@ -9563,7 +9568,7 @@ dump_archive_index (Elf *elf, const char
- if (unlikely (elf_rand (elf, as_off) == 0)
- || unlikely ((subelf = elf_begin (-1, ELF_C_READ_MMAP, elf))
- == NULL))
--#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7)
-+#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) || __GNUC__ < 4
- while (1)
- #endif
- error (EXIT_FAILURE, 0,
-diffelfutils/src/strings.c git-portable/src/strings.c
---- elfutils/src/strings.c
-+++ elfutils/src/strings.c
-@@ -43,6 +43,10 @@
-
- #include <system.h>
-
-+#ifndef MAP_POPULATE
-+# define MAP_POPULATE 0
-+#endif
-+
-
- /* Prototypes of local functions. */
- static int read_fd (int fd, const char *fname, off64_t fdlen);
-@@ -489,8 +493,13 @@ map_file (int fd, off64_t start_off, off
- fd, start_off);
- if (mem != MAP_FAILED)
- {
-+#if !defined POSIX_MADV_SEQUENTIAL && defined MADV_SEQUENTIAL
-+# define POSIX_MADV_SEQUENTIAL MADV_SEQUENTIAL
-+#endif
-+#ifdef POSIX_MADV_SEQUENTIAL
- /* We will go through the mapping sequentially. */
- (void) posix_madvise (mem, map_size, POSIX_MADV_SEQUENTIAL);
-+#endif
- break;
- }
- if (errno != EINVAL && errno != ENOMEM)
-@@ -581,9 +590,11 @@ read_block (int fd, const char *fname, o
- elfmap_off = from & ~(ps - 1);
- elfmap_base = elfmap = map_file (fd, elfmap_off, fdlen, &elfmap_size);
-
-+#ifdef POSIX_FADV_SEQUENTIAL
- if (unlikely (elfmap == MAP_FAILED))
- /* Let the kernel know we are going to read everything in sequence. */
- (void) posix_fadvise (fd, 0, 0, POSIX_FADV_SEQUENTIAL);
-+#endif
- }
-
- if (unlikely (elfmap == MAP_FAILED))
-diffelfutils/src/strip.c git-portable/src/strip.c
---- elfutils/src/strip.c
-+++ elfutils/src/strip.c
-@@ -2191,7 +2191,14 @@ while computing checksum for debug infor
- /* If requested, preserve the timestamp. */
- if (tvp != NULL)
- {
-+#ifdef HAVE_FUTIMENS
- if (futimens (fd, tvp) != 0)
-+#else
-+ struct timeval times[2];
-+ TIMESPEC_TO_TIMEVAL (&times[0], &tvp[0]);
-+ TIMESPEC_TO_TIMEVAL (&times[1], &tvp[1]);
-+ if (futimes (fd, times) != 0)
-+#endif
- {
- error (0, errno, gettext ("\
- cannot set access and modification date of '%s'"),
-@@ -2263,7 +2270,14 @@ handle_ar (int fd, Elf *elf, const char
-
- if (tvp != NULL)
- {
-+#ifdef HAVE_FUTIMENS
- if (unlikely (futimens (fd, tvp) != 0))
-+#else
-+ struct timeval times[2];
-+ TIMESPEC_TO_TIMEVAL (&times[0], &tvp[0]);
-+ TIMESPEC_TO_TIMEVAL (&times[1], &tvp[1]);
-+ if (unlikely (futimes (fd, times) != 0))
-+#endif
- {
- error (0, errno, gettext ("\
- cannot set access and modification date of '%s'"), fname);
-diffelfutils/tests/backtrace.c git-portable/tests/backtrace.c
---- elfutils/tests/backtrace.c
-+++ elfutils/tests/backtrace.c
-@@ -36,6 +36,7 @@
- #include <fcntl.h>
- #include <string.h>
- #include <argp.h>
-+#include <sys/syscall.h>
- #include ELFUTILS_HEADER(dwfl)
-
- #ifndef __linux__
-diffelfutils/tests/ChangeLog git-portable/tests/ChangeLog
---- elfutils/tests/ChangeLog
-+++ elfutils/tests/ChangeLog
-@@ -614,6 +614,13 @@
-
- 2013-12-02 Jan Kratochvil <jan.kratochvil@redhat.com>
-
-+ Handle T-stopped detach for old kernels.
-+ * backtrace.c: Include sys/syscall.h.
-+ (linux_proc_pid_is_stopped): New function.
-+ (ptrace_detach_stopped): Handle old kernels.
-+
-+2013-12-02 Jan Kratochvil <jan.kratochvil@redhat.com>
-+
- * Makefile.am (check_PROGRAMS): Add backtrace, backtrace-child,
- backtrace-data and backtrace-dwarf.
- (BUILT_SOURCES, clean-local, backtrace-child-biarch): New.
-@@ -1478,6 +1485,8 @@
-
- 2008-01-21 Roland McGrath <roland@redhat.com>
-
-+ * line2addr.c (main): Revert last change.
-+
- * testfile45.S.bz2: Add tests for cltq, cqto.
- * testfile45.expect.bz2: Adjust.
-
-@@ -2186,6 +2195,11 @@
- * Makefile.am (TESTS): Add run-elflint-test.sh.
- (EXTRA_DIST): Add run-elflint-test.sh and testfile18.bz2.
-
-+2005-05-31 Roland McGrath <roland@redhat.com>
-+
-+ * Makefile.am (WEXTRA): New variable, substituted by configure.
-+ (AM_CFLAGS): Use it in place of -Wextra.
-+
- 2005-05-24 Ulrich Drepper <drepper@redhat.com>
-
- * get-files.c (main): Use correct format specifier.
-diffelfutils/tests/line2addr.c git-portable/tests/line2addr.c
---- elfutils/tests/line2addr.c
-+++ elfutils/tests/line2addr.c
-@@ -124,7 +124,7 @@ main (int argc, char *argv[])
- {
- struct args a = { .arg = argv[cnt] };
-
-- switch (sscanf (a.arg, "%m[^:]:%d", &a.file, &a.line))
-+ switch (sscanf (a.arg, "%a[^:]:%d", &a.file, &a.line))
- {
- default:
- case 0:
-diffelfutils/tests/Makefile.am git-portable/tests/Makefile.am
---- elfutils/tests/Makefile.am
-+++ elfutils/tests/Makefile.am
-@@ -382,6 +382,7 @@ get_lines_LDADD = $(libdw) $(libelf)
- get_files_LDADD = $(libdw) $(libelf)
- get_aranges_LDADD = $(libdw) $(libelf)
- allfcts_LDADD = $(libdw) $(libelf)
-+line2addr_no_Wformat = yes
- line2addr_LDADD = $(libdw) $(argp_LDADD)
- addrscopes_LDADD = $(libdw) $(argp_LDADD)
- funcscopes_LDADD = $(libdw) $(argp_LDADD)
-diffelfutils/tests/Makefile.in git-portable/tests/Makefile.in
---- elfutils/tests/Makefile.in
-+++ elfutils/tests/Makefile.in
-@@ -87,14 +87,15 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--@SYMBOL_VERSIONING_TRUE@am__append_1 = -DSYMBOL_VERSIONING
--@STANDALONE_FALSE@am__append_2 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \
-+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror)
-+@SYMBOL_VERSIONING_TRUE@am__append_2 = -DSYMBOL_VERSIONING
-+@STANDALONE_FALSE@am__append_3 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \
- @STANDALONE_FALSE@ -I$(top_srcdir)/libdwfl -I$(top_srcdir)/libdwelf \
- @STANDALONE_FALSE@ -I$(top_srcdir)/libebl -I$(top_srcdir)/libelf \
- @STANDALONE_FALSE@ -I$(top_srcdir)/lib -I..
-
--@STANDALONE_FALSE@am__append_3 = -Wl,-rpath-link,../libasm:../libdw:../libelf
--@TESTS_RPATH_TRUE@am__append_4 = -Wl,-rpath,$(BUILD_RPATH)
-+@STANDALONE_FALSE@am__append_4 = -Wl,-rpath-link,../libasm:../libdw:../libelf
-+@TESTS_RPATH_TRUE@am__append_5 = -Wl,-rpath,$(BUILD_RPATH)
- check_PROGRAMS = arextract$(EXEEXT) arsymtest$(EXEEXT) \
- newfile$(EXEEXT) saridx$(EXEEXT) scnnames$(EXEEXT) \
- sectiondump$(EXEEXT) showptable$(EXEEXT) update1$(EXEEXT) \
-@@ -123,7 +124,7 @@ check_PROGRAMS = arextract$(EXEEXT) arsy
- aggregate_size$(EXEEXT) vdsosyms$(EXEEXT) getsrc_die$(EXEEXT) \
- strptr$(EXEEXT) newdata$(EXEEXT) elfstrtab$(EXEEXT) \
- $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_4)
--@BIARCH_TRUE@am__append_5 = backtrace-child-biarch
-+@BIARCH_TRUE@am__append_6 = backtrace-child-biarch
- TESTS = run-arextract.sh run-arsymtest.sh newfile$(EXEEXT) \
- test-nlist$(EXEEXT) update1$(EXEEXT) update2$(EXEEXT) \
- update3$(EXEEXT) update4$(EXEEXT) run-show-die-info.sh \
-@@ -173,14 +174,14 @@ TESTS = run-arextract.sh run-arsymtest.s
- run-allfcts-multi.sh run-deleted.sh run-linkmap-cut.sh \
- run-aggregate-size.sh vdsosyms$(EXEEXT) run-readelf-A.sh \
- run-getsrc-die.sh run-strptr.sh newdata$(EXEEXT) \
-- elfstrtab$(EXEEXT) $(am__EXEEXT_2) $(am__append_8) \
-- $(am__append_9) $(am__EXEEXT_4)
--@STANDALONE_FALSE@am__append_6 = msg_tst md5-sha1-test
-+ elfstrtab$(EXEEXT) $(am__EXEEXT_2) $(am__append_9) \
-+ $(am__append_10) $(am__EXEEXT_4)
- @STANDALONE_FALSE@am__append_7 = msg_tst md5-sha1-test
--@LZMA_TRUE@am__append_8 = run-readelf-s.sh run-dwflsyms.sh
--@ZLIB_TRUE@am__append_9 = run-readelf-zdebug.sh
--@HAVE_LIBASM_TRUE@am__append_10 = $(asm_TESTS)
-+@STANDALONE_FALSE@am__append_8 = msg_tst md5-sha1-test
-+@LZMA_TRUE@am__append_9 = run-readelf-s.sh run-dwflsyms.sh
-+@ZLIB_TRUE@am__append_10 = run-readelf-zdebug.sh
- @HAVE_LIBASM_TRUE@am__append_11 = $(asm_TESTS)
-+@HAVE_LIBASM_TRUE@am__append_12 = $(asm_TESTS)
- subdir = tests
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \
-@@ -830,6 +831,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_SCRIPT = @INSTALL_SCRIPT@
- INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
- LDFLAGS = @LDFLAGS@
-+LD_AS_NEEDED = @LD_AS_NEEDED@
- LEX = @LEX@
- LEXLIB = @LEXLIB@
- LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-@@ -861,6 +863,7 @@ SHELL = @SHELL@
- STRIP = @STRIP@
- USE_NLS = @USE_NLS@
- VERSION = @VERSION@
-+WEXTRA = @WEXTRA@
- XGETTEXT = @XGETTEXT@
- XGETTEXT_015 = @XGETTEXT_015@
- XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
-@@ -921,26 +924,26 @@ top_build_prefix = @top_build_prefix@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
- zip_LIBS = @zip_LIBS@
--AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_2)
-+AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_3)
- @ADD_STACK_USAGE_WARNING_FALSE@STACK_USAGE_WARNING =
-
- # Warn about stack usage of more than 256K = 262144 bytes.
- @ADD_STACK_USAGE_WARNING_TRUE@STACK_USAGE_WARNING = -Wstack-usage=262144
--AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
-- $(if $($(*F)_no_Werror),,-Werror) \
-- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
-- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-- $($(*F)_CFLAGS)
--
-+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \
-+ $($(*F)_no_Werror),,-Werror) $(if \
-+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \
-+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $(if \
-+ $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
-+ $($(*F)_CFLAGS) $(am__append_1)
- COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE))
--DEFS.os = -DPIC -DSHARED $(am__append_1)
-+DEFS.os = -DPIC -DSHARED $(am__append_2)
- CLEANFILES = *.gcno *.gcda
- textrel_msg = echo "WARNING: TEXTREL found in '$@'"
- @FATAL_TEXTREL_FALSE@textrel_found = $(textrel_msg)
- @FATAL_TEXTREL_TRUE@textrel_found = $(textrel_msg); exit 1
- textrel_check = if $(READELF) -d $@ | fgrep -q TEXTREL; then $(textrel_found); fi
- BUILD_RPATH = \$$ORIGIN/../libasm:\$$ORIGIN/../libdw:\$$ORIGIN/../backends:\$$ORIGIN/../libelf
--AM_LDFLAGS = $(am__append_3) $(am__append_4)
-+AM_LDFLAGS = $(am__append_4) $(am__append_5)
- @TESTS_RPATH_FALSE@tests_rpath = no
- @TESTS_RPATH_TRUE@tests_rpath = yes
- asm_TESTS = asm-tst1 asm-tst2 asm-tst3 asm-tst4 asm-tst5 \
-@@ -1167,6 +1170,7 @@ get_lines_LDADD = $(libdw) $(libelf)
- get_files_LDADD = $(libdw) $(libelf)
- get_aranges_LDADD = $(libdw) $(libelf)
- allfcts_LDADD = $(libdw) $(libelf)
-+line2addr_no_Wformat = yes
- line2addr_LDADD = $(libdw) $(argp_LDADD)
- addrscopes_LDADD = $(libdw) $(argp_LDADD)
- funcscopes_LDADD = $(libdw) $(argp_LDADD)
diff --git a/source/l/elfutils/elfutils.SlackBuild b/source/l/elfutils/elfutils.SlackBuild
index d7853d066..82d3e8e5c 100755
--- a/source/l/elfutils/elfutils.SlackBuild
+++ b/source/l/elfutils/elfutils.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2010, 2011, 2014, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2010, 2011, 2014, 2015, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=elfutils
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -63,9 +71,6 @@ rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
cd $PKGNAM-$VERSION
-zcat $CWD/elfutils-0.163-unstrip-shf_info_link.patch | patch -p1 --verbose || exit 1
-zcat $CWD/elfutils-portability-0.163.patch | patch -p1 --verbose || exit 1
-
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -82,7 +87,7 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--infodir=/usr/info \
--program-prefix=eu- \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build:
make $NUMJOBS || make || exit 1
@@ -90,6 +95,16 @@ make $NUMJOBS || make || exit 1
# Install:
make install DESTDIR=$PKG || exit 1
+# Move the shared library to $PKG/lib${LIBDIRSUFFIX}:
+mkdir -p $PKG/lib${LIBDIRSUFFIX}
+( cd $PKG/usr/lib${LIBDIRSUFFIX}
+ for file in lib*-*.so ; do
+ mv $file ../../lib${LIBDIRSUFFIX}
+ ln -sf ../../lib${LIBDIRSUFFIX}/$file .
+ done
+ cp -a lib*.so.? ../../lib${LIBDIRSUFFIX}
+)
+
# Strip binaries:
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/elfutils/slack-desc b/source/l/elfutils/slack-desc
index ad242d720..7a7a3628b 100644
--- a/source/l/elfutils/slack-desc
+++ b/source/l/elfutils/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -14,6 +14,6 @@ elfutils: (for listing the section sizes of an object or archive file),
elfutils: strip (for discarding symbols), readelf (to see the raw ELF file
elfutils: structures), and elflint (to check for well-formed ELF files).
elfutils:
-elfutils: Project home: http://fedorahosted.org/releases/e/l/elfutils/
+elfutils: Project home: ftp://sourceware.org/pub/elfutils/
elfutils:
elfutils:
diff --git a/source/l/enchant/enchant.SlackBuild b/source/l/enchant/enchant.SlackBuild
index 245a9506d..7be0abd17 100755
--- a/source/l/enchant/enchant.SlackBuild
+++ b/source/l/enchant/enchant.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007 Alex Elliott <alex@alex-elliott.co.uk>
-# Copyright 2008, 2009, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2013, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,28 +23,37 @@
# Modified by Robby Workman <rworkman at slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=enchant
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j6 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -80,11 +89,14 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--with-aspell-prefix=/usr \
--enable-static=no \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/enchant/slack-desc b/source/l/enchant/slack-desc
index e973fcb44..a102d02f7 100644
--- a/source/l/enchant/slack-desc
+++ b/source/l/enchant/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
- |---handy-ruler------------------------------------------------------|
+ |-----handy-ruler------------------------------------------------------|
enchant: Enchant (a wrapper for spellcheck libraries)
enchant:
enchant: Enchant supports:
-enchant: * Aspell/Pspell
-enchant: * Ispell
-enchant: * MySpell/HunSpell
-enchant: * Uspell (Yiddish, Hebrew and Eastern European languages)
-enchant: * Hspell (Hebrew) and others
+enchant: * Aspell/Pspell
+enchant: * Ispell
+enchant: * MySpell/HunSpell
+enchant: * Uspell (Yiddish, Hebrew and Eastern European languages)
+enchant: * Hspell (Hebrew) and others
enchant:
enchant: http://www.abisource.com/projects/enchant/
enchant:
diff --git a/source/l/esound/esound-0.2.38-drain.patch b/source/l/esound/esound-0.2.38-drain.patch
new file mode 100644
index 000000000..f2fb716ba
--- /dev/null
+++ b/source/l/esound/esound-0.2.38-drain.patch
@@ -0,0 +1,11 @@
+--- esound-0.2.38/audio_alsa09.c.old 2007-06-11 12:22:24.000000000 +0200
++++ esound-0.2.38/audio_alsa09.c 2007-06-11 12:22:49.000000000 +0200
+@@ -486,7 +486,7 @@ void esd_audio_flush(void)
+ }
+
+ if (alsa_playback_handle != NULL)
+- snd_pcm_drain( alsa_playback_handle );
++ snd_pcm_drop( alsa_playback_handle );
+
+ if (alsadbg)
+ print_state();
diff --git a/source/l/esound/esound-0.2.38-fix-open-macro.patch b/source/l/esound/esound-0.2.38-fix-open-macro.patch
new file mode 100644
index 000000000..412eb9b6d
--- /dev/null
+++ b/source/l/esound/esound-0.2.38-fix-open-macro.patch
@@ -0,0 +1,10 @@
+--- esound-0.2.38/esddsp.c 2007-04-19 16:43:59.000000000 +0200
++++ esound-0.2.38.lennart/esddsp.c 2007-08-09 17:47:11.000000000 +0200
+@@ -252,6 +252,7 @@
+ return (*func) (pathname, flags, mode);
+ }
+
++#undef open
+ int
+ open (const char *pathname, int flags, ...)
+ {
diff --git a/source/l/esound/esound-0.2.41-libm.patch b/source/l/esound/esound-0.2.41-libm.patch
new file mode 100644
index 000000000..cd30322f3
--- /dev/null
+++ b/source/l/esound/esound-0.2.41-libm.patch
@@ -0,0 +1,12 @@
+diff -up esound-0.2.41/Makefile.am.jx esound-0.2.41/Makefile.am
+--- esound-0.2.41/Makefile.am.jx 2008-11-18 12:33:39.000000000 -0500
++++ esound-0.2.41/Makefile.am 2012-11-07 13:00:47.095346842 -0500
+@@ -125,7 +125,7 @@ esdplay_SOURCES = \
+
+ LDADD = libesd.la $(AUDIOFILE_LIBS)
+
+-esd_LDADD = $(WRAP_LIB) $(LDADD)
++esd_LDADD = $(WRAP_LIB) $(LDADD) -lm
+
+ m4datadir = $(datadir)/aclocal
+ m4data_DATA = esd.m4
diff --git a/source/l/esound/esound-nospawn.patch b/source/l/esound/esound-nospawn.patch
new file mode 100644
index 000000000..3d5b6463d
--- /dev/null
+++ b/source/l/esound/esound-nospawn.patch
@@ -0,0 +1,12 @@
+diff -up esound-0.2.41/esd_config.c.nospawn esound-0.2.41/esd_config.c
+--- esound-0.2.41/esd_config.c.nospawn 2009-03-31 23:57:35.860368388 -0400
++++ esound-0.2.41/esd_config.c 2009-03-31 23:57:51.032658859 -0400
+@@ -6,7 +6,7 @@
+ #include <ctype.h>
+ #include <string.h>
+
+-int esd_no_spawn=0; /* If we can't even find the system config file,
++int esd_no_spawn=1; /* If we can't even find the system config file,
+ things are screwed up - don't try to make things
+ worse. */
+ int esd_spawn_wait_ms=100; /* Time to wait trying to connect to an
diff --git a/source/l/esound/esound.SlackBuild b/source/l/esound/esound.SlackBuild
index c7894fcd0..b3261e5c8 100755
--- a/source/l/esound/esound.SlackBuild
+++ b/source/l/esound/esound.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=esound
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,8 +67,8 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.bz2 || exit 1
-cd ${PKGNAM}-$VERSION
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -70,6 +78,14 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+zcat $CWD/esound-0.2.38-drain.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/esound-0.2.38-fix-open-macro.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/esound-0.2.41-libm.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/esound-nospawn.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/remove-confusing-spew.patch.gz | patch -p1 --verbose || exit 1
+
+autoreconf -vif
+
# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
@@ -79,12 +95,15 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Don't clobber an existing esd.conf
mv $PKG/etc/esd.conf $PKG/etc/esd.conf.new
diff --git a/source/l/esound/remove-confusing-spew.patch b/source/l/esound/remove-confusing-spew.patch
new file mode 100644
index 000000000..ac46cb954
--- /dev/null
+++ b/source/l/esound/remove-confusing-spew.patch
@@ -0,0 +1,11 @@
+diff -up esound-0.2.38/esdlib.c.spew esound-0.2.38/esdlib.c
+--- esound-0.2.38/esdlib.c.spew 2007-04-19 10:43:59.000000000 -0400
++++ esound-0.2.38/esdlib.c 2007-09-19 08:45:44.000000000 -0400
+@@ -479,7 +479,6 @@ esd_connect_tcpip(const char *host)
+ strcpy ( connect_host, "localhost" );
+
+ if ( getaddrinfo ( connect_host, NULL, &hints, &result ) != 0 ) {
+- printf ("Usage:program_name [address][:port]");
+ return (-1);
+ }
+
diff --git a/source/l/esound/slack-desc b/source/l/esound/slack-desc
index 74da12178..e9e63631c 100644
--- a/source/l/esound/slack-desc
+++ b/source/l/esound/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -12,7 +12,7 @@ esound: EsounD, the Enlightened Sound Daemon, is a server process that mixes
esound: several audio streams for playback by a single audio device. For
esound: example, if you're listening to music on a CD and you receive a
esound: sound-related event from ICQ, the two applications won't have to
-esound: jockey for the use of your sound card. Install esound if you'd like
+esound: jockey for the use of your sound card. Install esound if you'd like
esound: to let sound applications share your audio device.
esound:
esound:
diff --git a/source/l/exiv2/exiv2.SlackBuild b/source/l/exiv2/exiv2.SlackBuild
index 1292eb189..072bbfd91 100755
--- a/source/l/exiv2/exiv2.SlackBuild
+++ b/source/l/exiv2/exiv2.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007 Frank Caraballo <fecaraballo{at}gmail{dot}com>
-# Copyright 2008, 2009, 2011, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2011, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,12 @@
# Modified by Robby Workman <rworkman at slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=exiv2
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+#VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*-trunk.tar.xz | rev | cut -f 3- -d . | cut -f 2 -d - | rev)}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-exiv2
NUMJOBS=${NUMJOBS:--j6}
@@ -59,9 +69,13 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf exiv2-$VERSION
-tar xvf $CWD/exiv2-$VERSION.tar.?z* || exit 1
-cd exiv2-$VERSION || exit 1
+rm -rf exiv2-$VERSION exiv2-trunk
+
+#tar xvf $CWD/exiv2-$VERSION.tar.?z* || exit 1
+#cd exiv2-$VERSION || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION-trunk.tar.xz || exit 1
+cd exiv2-trunk || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -82,11 +96,17 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-xmp \
--enable-video \
--enable-webready \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Make sure shared libraries are executable:
+chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/lib*.so.*
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/exiv2/exiv2.url b/source/l/exiv2/exiv2.url
new file mode 100644
index 000000000..61e8fe546
--- /dev/null
+++ b/source/l/exiv2/exiv2.url
@@ -0,0 +1 @@
+http://www.exiv2.org/builds/exiv2-0.26-trunk.tar.gz
diff --git a/source/l/exiv2/paredown.sh b/source/l/exiv2/paredown.sh
new file mode 100755
index 000000000..cebe54f5b
--- /dev/null
+++ b/source/l/exiv2/paredown.sh
@@ -0,0 +1,51 @@
+#!/bin/sh
+
+# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Convert github release in vX.XX.tar.gz format to exiv2-X.XX.tar.xz format
+# and remove useless cruft.
+
+
+GITHUB_RELEASE=$(echo v*.tar.gz)
+if [ ! -r $GITHUB_RELEASE ]; then
+ echo "$GITHUB_RELEASE is not a libwebp tarball. Exiting."
+ exit 1
+fi
+SRCDIR=$(tar tf v*.tar.gz | head -n 1 | cut -f 1 -d /)
+
+# Untar github sources:
+rm -rf $SRCDIR
+tar xvf $GITHUB_RELEASE
+
+# HERE'S WHERE WE WOULD REMOVE STUFF FROM $SRCDIR, BUT WE AREN'T ACTUALLY
+# USING THIS SCRIPT YET UNTIL WE SWITCH TO DOWNLOADING FROM GITHUB'S RELEASES
+
+# Package it back up as a .tar.xz:
+rm -f $SRCDIR.tar $SRCDIR.tar.xz
+tar cf $SRCDIR.tar $SRCDIR
+xz -9 $SRCDIR.tar
+touch -d "$(tar tvf $GITHUB_RELEASE | head -n 1 | cut -f 2- -d 0 | cut -f 2,3 -d ' ')" $SRCDIR.tar.xz
+
+# Cleanup:
+rm -rf $SRCDIR
+
+echo "Repacking of $SRCDIR.tar.xz complete."
+
diff --git a/source/l/exiv2/slack-desc b/source/l/exiv2/slack-desc
index c01035a1c..a0cd1ff2e 100644
--- a/source/l/exiv2/slack-desc
+++ b/source/l/exiv2/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ exiv2:
exiv2: Exiv2 is a C++ library and a command line utility to read and write
exiv2: Exif and IPTC image metadata.
exiv2:
-exiv2: Homepage: http://www.exiv2.org/
+exiv2: Homepage: http://www.exiv2.org/
exiv2:
exiv2:
exiv2:
diff --git a/source/l/expat/expat.SlackBuild b/source/l/expat/expat.SlackBuild
index 87f1462e2..182fa82d6 100755
--- a/source/l/expat/expat.SlackBuild
+++ b/source/l/expat/expat.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,22 +20,32 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=expat
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -48,7 +58,8 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-expat
@@ -57,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf expat-$VERSION
tar xvf $CWD/expat-$VERSION.tar.?z* || exit 1
-cd expat-$VERSION
+cd expat-$VERSION || exit 1
chown -R root:root .
find . -perm 777 -exec chmod 755 {} \;
@@ -67,16 +78,24 @@ CFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
- --build=$ARCH-slackware-linux
-make -j4 || exit 1
-make install DESTDIR=$PKG
+ --docdir=/usr/doc/expat-$VERSION \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
)
+
mkdir -p $PKG/usr/doc/expat-$VERSION
cp -a \
- COPYING* Changes README* doc/reference.html \
+ COPYING* README* doc/reference.html \
$PKG/usr/doc/expat-$VERSION
gzip -9 $PKG/usr/man/man?/*.?
mkdir -p $PKG/install
diff --git a/source/l/expat/slack-desc b/source/l/expat/slack-desc
index 348df3c3b..f25823173 100644
--- a/source/l/expat/slack-desc
+++ b/source/l/expat/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/ffmpeg/ffmpeg.SlackBuild b/source/l/ffmpeg/ffmpeg.SlackBuild
new file mode 100755
index 000000000..cced84807
--- /dev/null
+++ b/source/l/ffmpeg/ffmpeg.SlackBuild
@@ -0,0 +1,275 @@
+#!/bin/bash
+
+# Slackware build script for ffmpeg
+
+# Copyright 2010-2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Originally written by core (eroc@linuxmail.org)
+# Modified by Robby Workman <rworkman@slackbuilds.org>
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=ffmpeg
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+# If PulseAudio is not found, use the _alsa $TAG and disable it in the build:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+ PULSEAUDIO=no
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
+# Configure ffmpeg features not autodetected by default.
+# You can enable a lot of optional (not-autodetected) features by
+# passing variables to the script (VAR=yes/no ./ffmpeg.SlackBuild).
+# Unfortunately ffmpeg's configure doesn't support --enable-feature=yes
+# syntax, so we have to do it the complicated way :/
+# Additional optional (autodetected) dependencies are:
+# - jack-audio-connection-kit
+# - libva
+# - libvdpau
+# - libX11
+# - libxcb
+# - sdl2
+# - xz
+# - zlib
+
+libx264="" ; [ "${X264:-no}" != "no" ] && libx264="--enable-libx264"
+libcelt="" ; [ "${CELT:-no}" != "no" ] && libcelt="--enable-libcelt"
+libdc1394="" ; [ "${DC1394:-no}" != "no" ] && libdc1394="--enable-libdc1394"
+libfrei0r="" ; [ "${FREI0R:-no}" != "no" ] && libfrei0r="--enable-frei0r"
+libgsm="" ; [ "${GSM:-no}" != "no" ] && libgsm="--enable-libgsm"
+librtmp="" ; [ "${RTMP:-no}" != "no" ] && librtmp="--enable-librtmp"
+libspeex="" ; [ "${SPEEX:-yes}" != "no" ] && libspeex="--enable-libspeex"
+libxvid="" ; [ "${XVID:-no}" != "no" ] && libxvid="--enable-libxvid"
+libass="" ; [ "${ASS:-no}" != "no" ] && libass="--enable-libass"
+libopenal="" ; [ "${OPENAL:-no}" != "no" ] && libopenal="--enable-openal"
+libiec61883=""; [ "${IEC61883:-no}" != "no" ] && libiec61883="--enable-libiec61883"
+libilbc="" ; [ "${ILBC:-no}" != "no" ] && libilbc="--enable-libilbc"
+libmodplug="" ; [ "${MODPLUG:-no}" != "no" ] && libmodplug="--enable-libmodplug"
+libopus="" ; [ "${OPUS:-yes}" != "no" ] && libopus="--enable-libopus"
+libtwolame="" ; [ "${TWOLAME:-no}" != "no" ] && libtwolame="--enable-libtwolame"
+ladspa="" ; [ "${LADSPA:-no}" != "no" ] && ladspa="--enable-ladspa"
+libflite="" ; [ "${FLITE:-no}" != "no" ] && libflite="--enable-libflite"
+libvidstab="" ; [ "${VIDSTAB:-no}" != "no" ] && libvidstab="--enable-libvidstab"
+libx265="" ; [ "${X265:-no}" != "no" ] && libx265="--enable-libx265"
+libzvbi="" ; [ "${ZVBI:-no}" != "no" ] && libzvbi="--enable-libzvbi"
+libopencv="" ; [ "${OPENCV:-no}" != "no" ] && libopencv="--enable-libopencv"
+libgme="" ; [ "${GME:-no}" != "no" ] && libgme="--enable-libgme"
+libsnappy="" ; [ "${SNAPPY:-no}" != "no" ] && libsnappy="--enable-libsnappy"
+libzmq="" ; [ "${ZMQ:-no}" != "no" ] && libzmq="--enable-libzmq"
+libbs2b="" ; [ "${BS2B:-no}" != "no" ] && libbs2b="--enable-libbs2b"
+libebur128="" ; [ "${EBUR128:-no}" != "no" ] && libebur128="--enable-libebur128"
+rubberband="" ; [ "${RUBBERBAND:-no}" != "no" ] && rubberband="--enable-librubberband"
+tesseract="" ; [ "${TESSERACT:-no}" != "no" ] && tesseract="--enable-libtesseract"
+netcdf="" ; [ "${NETCDF:-no}" != "no" ] && netcdf="--enable-netcdf"
+chromaprint="" ; [ "${CHROMAPRINT:-no}" != "no" ] && chromaprint="--enable-chromaprint"
+opencore_amr="" ; [ "${OPENCORE:-no}" != "no" ] && \
+ opencore_amr="--enable-libopencore-amrnb --enable-libopencore-amrwb"
+fdk="" ; [ "${FDK_AAC:-no}" != "no" ] && \
+ { fdk="--enable-libfdk-aac"; non_free="--enable-nonfree" ; }
+ssl="" ; [ "${OPENSSL:-no}" != "no" ] && \
+ { ssl="--enable-openssl" ; non_free="--enable-nonfree" ; }
+decklink="" ; [ "${DECKLINK:-no}" != "no" ] && \
+ { decklink="--enable-decklink" ; \
+ SLKCFLAGS="$SLKCFLAGS -I/usr/include/decklink" ; }
+
+# Default enabled features:
+fontconfig="" ; [ "${FONTCONFIG:-yes}" != "no" ] && fontconfig="--enable-libfontconfig"
+freetype="" ; [ "${FREETYPE:-yes}" != "no" ] && freetype="--enable-libfreetype"
+fribidi="" ; [ "${FRIBIDI:-yes}" != "no" ] && fribidi="--enable-libfribidi"
+gnutls="" ; [ "${GNUTLS:-yes}" != "no" ] && gnutls="--enable-gnutls"
+libbluray="" ; [ "${BLURAY:-yes}" != "no" ] && libbluray="--enable-libbluray"
+libcaca="" ; [ "${CACA:-yes}" != "no" ] && libcaca="--enable-libcaca"
+libcdio="" ; [ "${LIBCDIO:-yes}" != "no" ] && libcdio="--enable-libcdio"
+libssh="" ; [ "${LIBSSH:-yes}" != "no" ] && libssh="--enable-libssh"
+libtheora="" ; [ "${THEORA:-yes}" != "no" ] && libtheora="--enable-libtheora"
+libv4l2="" ; [ "${V4L2:-yes}" != "no" ] && libv4l2="--enable-libv4l2"
+libvorbis="" ; [ "${VORBIS:-yes}" != "no" ] && libvorbis="--enable-libvorbis"
+libvpx="" ; [ "${VPX:-yes}" != "no" ] && libvpx="--enable-libvpx"
+libwebp="" ; [ "${WEBP:-yes}" != "no" ] && libwebp="--enable-libwebp"
+mp3lame="" ; [ "${LAME:-yes}" != "no" ] && mp3lame="--enable-libmp3lame"
+opencl="" ; [ "${OPENCL:-yes}" != "no" ] && opencl="--enable-opencl"
+opengl="" ; [ "${OPENGL:-yes}" != "no" ] && opengl="--enable-opengl"
+openjpeg="" ; [ "${JP2:-yes}" != "no" ] && openjpeg="--enable-libopenjpeg"
+pulse="" ; [ "${PULSEAUDIO:-yes}" != "no" ] && pulse="--enable-libpulse"
+samba="" ; [ "${SAMBA:-yes}" != "no" ] && samba="--enable-libsmbclient"
+wavpack="" ; [ "${WAVPACK:-yes}" != "no" ] && wavpack="--enable-libwavpack"
+
+# No default patent encumbered features:
+aac="" ; [ "${AAC:-no}" = "no" ] && aac="--disable-encoder=aac"
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Fix linking with flite:
+sed -i "s| -lflite\"| -lflite -lm -lasound\"|" \
+ ./configure
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --shlibdir=/usr/lib${LIBDIRSUFFIX} \
+ --docdir=/usr/doc/$PKGNAM-$VERSION/html \
+ --mandir=/usr/man \
+ --disable-debug \
+ --enable-shared \
+ --disable-static \
+ --enable-gpl \
+ --enable-version3 \
+ --enable-avresample \
+ --arch=$ARCH \
+ $non_free \
+ $aac \
+ $chromaprint \
+ $decklink \
+ $fdk \
+ $fontconfig \
+ $freetype \
+ $fribidi \
+ $gnutls \
+ $ladspa \
+ $libass \
+ $libbluray \
+ $libbs2b \
+ $libcaca \
+ $libcdio \
+ $libcelt \
+ $libdc1394 \
+ $libebur128 \
+ $libflite \
+ $libfrei0r \
+ $libgme \
+ $libgsm \
+ $libiec61883 \
+ $libilbc \
+ $libmodplug \
+ $libopenal \
+ $libopencv \
+ $libopus \
+ $librtmp \
+ $libsnappy \
+ $libspeex \
+ $libssh \
+ $libtheora \
+ $libtwolame \
+ $libv4l2 \
+ $libvidstab \
+ $libvorbis \
+ $libvpx \
+ $libwebp \
+ $libx264 \
+ $libx265 \
+ $libxvid \
+ $libzmq \
+ $libzvbi \
+ $mp3lame \
+ $netcdf \
+ $opencl \
+ $opencore_amr \
+ $opengl \
+ $openjpeg \
+ $pulse \
+ $rubberband \
+ $samba \
+ $ssl \
+ $tesseract \
+ $wavpack || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+make install-man DESTDIR=$PKG || exit 1
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
+ grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/txt
+cp -a \
+ Changelog COPYING* CREDITS INSTALL* LICENSE* MAINTAINERS README* \
+ RELEASE VERSION \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a doc/*.txt $PKG/usr/doc/$PKGNAM-$VERSION/txt/
+find . -name "RELEASE_NOTES" -exec cp -a {} $PKG/usr/doc/$PKGNAM-$VERSION/ \;
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz
diff --git a/source/l/ffmpeg/slack-desc b/source/l/ffmpeg/slack-desc
new file mode 100644
index 000000000..502d1410e
--- /dev/null
+++ b/source/l/ffmpeg/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+ffmpeg: ffmpeg (software to record, convert and stream audio and video)
+ffmpeg:
+ffmpeg: FFmpeg is the leading multimedia framework, able to decode, encode,
+ffmpeg: transcode, mux, demux, stream, filter and play pretty much anything
+ffmpeg: that humans and machines have created. It supports the most obscure
+ffmpeg: ancient formats up to the cutting edge. It includes libavcodec, the
+ffmpeg: leading audio/video codec library.
+ffmpeg:
+ffmpeg: ffmpeg home: https://ffmpeg.org/
+ffmpeg:
+ffmpeg:
diff --git a/source/l/fftw/fftw.SlackBuild b/source/l/fftw/fftw.SlackBuild
index 216c68999..9f360111e 100755
--- a/source/l/fftw/fftw.SlackBuild
+++ b/source/l/fftw/fftw.SlackBuild
@@ -1,30 +1,58 @@
-#!/bin/sh
+#!/bin/bash
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Slackware build script for fftw
# Written by Kyle Guinn <elyk03@gmail.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=fftw
-VERSION=${VERSION:-3.3.4}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | cut -f 2- -d - | rev | cut -f 3- -d . | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION |tr - _)-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM-$VERSION
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
SIMD="--enable-sse2 --enable-avx"
elif [ "$ARCH" = "i686" ]; then
@@ -67,7 +95,7 @@ sed -i "s|-mtune=native|$SLKCFLAGS|" configure
--enable-threads \
--enable-openmp \
$SIMD \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
@@ -88,7 +116,7 @@ make clean
--enable-openmp \
--enable-float \
$SIMD \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
@@ -108,7 +136,7 @@ make clean
--enable-threads \
--enable-openmp \
--enable-long-double \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
@@ -128,11 +156,14 @@ make clean
--enable-threads \
--enable-openmp \
--enable-quad-precision \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
( cd $PKG/usr/man
find . -type f -exec gzip -9 {} \;
for i in $(find . -type l); do \
@@ -153,4 +184,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$(echo $VERSION |tr - _)-$ARCH-$BUILD.txz
diff --git a/source/l/fftw/slack-desc b/source/l/fftw/slack-desc
index f1fcfe34f..6eda0d457 100644
--- a/source/l/fftw/slack-desc
+++ b/source/l/fftw/slack-desc
@@ -1,17 +1,17 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
fftw: fftw (Fastest Fourier Transform in the West)
fftw:
fftw: FFTW is a free collection of fast C routines for computing the
-fftw: Discrete Fourier Transform in one or more dimensions. It includes
+fftw: Discrete Fourier Transform in one or more dimensions. It includes
fftw: complex, real, symmetric, and parallel transforms, and can handle
-fftw: arbitrary array sizes efficiently. FFTW is typically faster than
+fftw: arbitrary array sizes efficiently. FFTW is typically faster than
fftw: other publicly-available FFT implementations, and is even
fftw: competitive with vendor-tuned libraries.
fftw:
diff --git a/source/l/fluidsynth/fluidsynth.SlackBuild b/source/l/fluidsynth/fluidsynth.SlackBuild
new file mode 100755
index 000000000..2ce8c3f8e
--- /dev/null
+++ b/source/l/fluidsynth/fluidsynth.SlackBuild
@@ -0,0 +1,138 @@
+#!/bin/bash
+
+# Slackware build script for fluidsynth
+
+# Copyright 2008-2013 Heinz Wiesinger, Amsterdam, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=fluidsynth
+VERSION=$(printf ${PKGNAM}-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
+BUILD=${BUILD:-2}
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+# If this package is being built for ALSA (no PulseAudio), use the _alsa $TAG:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_EXE_LINKER_FLAGS="-ltermcap" \
+ -DCMAKE_SHARED_LINKER_FLAGS="-ltermcap" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DMAN_INSTALL_DIR="man/man1" \
+ -Denable-ladspa=no \
+ .. || exit 1
+
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a AUTHORS* COPYING* INSTALL LICENSE NEWS* README* THANKS* TODO* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz
diff --git a/source/l/fluidsynth/fluidsynth.url b/source/l/fluidsynth/fluidsynth.url
new file mode 100644
index 000000000..c52a48063
--- /dev/null
+++ b/source/l/fluidsynth/fluidsynth.url
@@ -0,0 +1 @@
+https://www.github.com/FluidSynth/fluidsynth
diff --git a/source/l/fluidsynth/slack-desc b/source/l/fluidsynth/slack-desc
new file mode 100644
index 000000000..e878d04c8
--- /dev/null
+++ b/source/l/fluidsynth/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+fluidsynth: fluidsynth (real-time software synthesizer)
+fluidsynth:
+fluidsynth: FluidSynth is a real-time software synthesizer based on the Soundfont
+fluidsynth: 2 specifications. FluidSynth reads and handles MIDI events from the
+fluidsynth: MIDI input device. It is the software analogue of a MIDI synthesizer.
+fluidsynth: FluidSynth can also play midifiles using a Soundfont.
+fluidsynth:
+fluidsynth: Homepage: http://www.fluidsynth.org/
+fluidsynth:
+fluidsynth:
+fluidsynth:
diff --git a/source/l/freetype/doinst.sh b/source/l/freetype/doinst.sh
new file mode 100644
index 000000000..b6bb2a124
--- /dev/null
+++ b/source/l/freetype/doinst.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+config() {
+ NEW="$1"
+ OLD="`dirname $NEW`/`basename $NEW .new`"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+config etc/profile.d/freetype.csh.new
+config etc/profile.d/freetype.sh.new
diff --git a/source/l/freetype/freetype.SlackBuild b/source/l/freetype/freetype.SlackBuild
index 6c1d60fff..ffe814215 100755
--- a/source/l/freetype/freetype.SlackBuild
+++ b/source/l/freetype/freetype.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2005-2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2005-2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=freetype
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -37,6 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-freetype
@@ -59,7 +67,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf freetype-$VERSION
-tar xvf $CWD/freetype-$VERSION.tar.xz || exit 1
+tar xvf $CWD/freetype-$VERSION.tar.?z || exit 1
cd freetype-$VERSION
chown -R root:root .
@@ -75,15 +83,35 @@ zcat $CWD/freetype.illadvisederror.diff.gz | patch -p1 --verbose || exit 1
# The line below enables code patented by Microsoft, so don't uncomment it
# unless you have a license to use the code and take all legal responsibility
-# for doing so.
+# for doing so. With the new subpixel hinting modes there's not much reason
+# to want to use this anyway.
# Please see this web site for more details:
# http://www.freetype.org/patents.html
#zcat $CWD/freetype.subpixel.rendering.diff.gz | patch -p1 --verbose || exit 1
+# Compile support into the Freetype library for both the Infinality and
+# new 2.7.x (default) subpixel hinting modes. To adjust your preferences
+# (the classic hinting mode is also available), see the freetype profile
+# scripts in /etc/profile.d/.
+zcat $CWD/freetype.compile.both.subpixel.hinting.methods.diff.gz | patch -p1 --verbose || exit 1
+
chown -R root:root .
CFLAGS="$SLKCFLAGS" make setup CFG="--prefix=/usr --libdir=/usr/lib${LIBDIRSUFFIX} --build=$ARCH-slackware-linux"
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Install runtime profile configuration scripts, used to set hinting defaults:
+mkdir -p $PKG/etc/profile.d
+cp -a $CWD/freetype.csh.gz $PKG/etc/profile.d
+cp -a $CWD/freetype.sh.gz $PKG/etc/profile.d
+gzip -d $PKG/etc/profile.d/*
+chown root:root $PKG/etc/profile.d/*
+chmod 755 $PKG/etc/profile.d/*
+mv $PKG/etc/profile.d/freetype.csh $PKG/etc/profile.d/freetype.csh.new
+mv $PKG/etc/profile.d/freetype.sh $PKG/etc/profile.d/freetype.sh.new
# This shouldn't be needed (apps should pick up -I/usr/include/freetype2 from
# `freetype-config --cflags` while compiling), but it's so often reported as
@@ -113,6 +141,7 @@ cp -a \
rm -rf $PKG/usr/doc/freetype-$VERSION/docs/reference
mkdir $PKG/install
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
diff --git a/source/l/freetype/freetype.compile.both.subpixel.hinting.methods.diff b/source/l/freetype/freetype.compile.both.subpixel.hinting.methods.diff
new file mode 100644
index 000000000..d7a52dbf2
--- /dev/null
+++ b/source/l/freetype/freetype.compile.both.subpixel.hinting.methods.diff
@@ -0,0 +1,13 @@
+--- ./include/freetype/config/ftoption.h.orig 2016-12-11 00:53:49.000000000 -0600
++++ ./include/freetype/config/ftoption.h 2017-04-26 16:14:07.214503123 -0500
+@@ -675,8 +675,8 @@
+ /* [1] http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx */
+ /* */
+ /* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING 1 */
+-#define TT_CONFIG_OPTION_SUBPIXEL_HINTING 2
+-/* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING ( 1 | 2 ) */
++/* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING 2 */
++#define TT_CONFIG_OPTION_SUBPIXEL_HINTING ( 1 | 2 )
+
+
+ /*************************************************************************/
diff --git a/source/l/freetype/freetype.csh b/source/l/freetype/freetype.csh
new file mode 100644
index 000000000..d39e8e213
--- /dev/null
+++ b/source/l/freetype/freetype.csh
@@ -0,0 +1,19 @@
+#!/bin/csh
+# Configure Freetype properties. Here this is used to set the default mode
+# for font hinting. Other controllable properties are listed in the section
+# 'Controlling FreeType Modules' in the reference's table of contents.
+#
+# Three hinting settings are available:
+
+# This is the classic hinting mode used in Freetype 2.6.x:
+#setenv FREETYPE_PROPERTIES "truetype:interpreter-version=35"
+
+# This is Infinality mode, which was never enabled by default. It is slower
+# than the new subpixel hinting mode, but said to be more accurate:
+#setenv FREETYPE_PROPERTIES "truetype:interpreter-version=38"
+
+# This is the new default subpixel hinting mode used in Freetype 2.7.x. It is
+# derived from the Infinality code base stripped to the bare minimum with all
+# configurability removed in the name of speed and simplicity:
+#setenv FREETYPE_PROPERTIES "truetype:interpreter-version=40"
+
diff --git a/source/l/freetype/freetype.sh b/source/l/freetype/freetype.sh
new file mode 100644
index 000000000..e304a9f56
--- /dev/null
+++ b/source/l/freetype/freetype.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+# Configure Freetype properties. Here this is used to set the default mode
+# for font hinting. Other controllable properties are listed in the section
+# 'Controlling FreeType Modules' in the reference's table of contents.
+#
+# Three hinting settings are available:
+
+# This is the classic hinting mode used in Freetype 2.6.x:
+#export FREETYPE_PROPERTIES="truetype:interpreter-version=35"
+
+# This is Infinality mode, which was never enabled by default. It is slower
+# than the new subpixel hinting mode, but said to be more accurate:
+#export FREETYPE_PROPERTIES="truetype:interpreter-version=38"
+
+# This is the new default subpixel hinting mode used in Freetype 2.7.x. It is
+# derived from the Infinality code base stripped to the bare minimum with all
+# configurability removed in the name of speed and simplicity:
+#export FREETYPE_PROPERTIES="truetype:interpreter-version=40"
+
diff --git a/source/l/freetype/slack-desc b/source/l/freetype/slack-desc
index d70b3e756..780b6ba8f 100644
--- a/source/l/freetype/slack-desc
+++ b/source/l/freetype/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
freetype: freetype (A free, high-quality, and portable font engine)
freetype:
-freetype: FreeType is a free and portable font rendering engine. It has been
+freetype: FreeType is a free and portable font rendering engine. It has been
freetype: developed to provide support for a number of font formats, including
freetype: TrueType, Type 1, and OpenType, and is designed to be small,
freetype: efficient, highly customizable, and portable while capable of
freetype: producing high-quality output.
freetype:
-freetype: Homepage: http://www.freetype.org
+freetype: Homepage: http://www.freetype.org
freetype:
freetype:
diff --git a/source/l/fribidi/fribidi.SlackBuild b/source/l/fribidi/fribidi.SlackBuild
index 4fe3e3226..c0933e632 100755
--- a/source/l/fribidi/fribidi.SlackBuild
+++ b/source/l/fribidi/fribidi.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=fribidi
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=/tmp/package-fribidi
rm -rf $PKG
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf fribidi-$VERSION
tar xvf $CWD/fribidi-$VERSION.tar.?z* || exit 1
-cd fribidi-$VERSION
+cd fribidi-$VERSION || exit 1
chown -R root:root .
find . -perm 777 -exec chmod 755 {} \;
@@ -75,10 +83,13 @@ CFLAGS="$SLKCFLAGS" \
--disable-static \
--with-pic \
--docdir=/usr/doc/fribidi-$VERSION \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/fribidi/slack-desc b/source/l/fribidi/slack-desc
index 453ad8a30..41e0a3798 100644
--- a/source/l/fribidi/slack-desc
+++ b/source/l/fribidi/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,9 +10,9 @@ fribidi: fribidi (Unicode BiDirectional algorithm library)
fribidi:
fribidi: This library implements the Unicode BiDirectional algorithm, which
fribidi: is needed in order to support right-to-left languages such as Arabic
-fribidi: and Hebrew. It is used in display software like KDE's SVG modules.
+fribidi: and Hebrew. It is used in display software like KDE's SVG modules.
fribidi:
-fribidi: Homepage: http://fribidi.org
+fribidi: Homepage: http://fribidi.org
fribidi:
fribidi:
fribidi:
diff --git a/source/l/fuse/fuse.SlackBuild b/source/l/fuse/fuse.SlackBuild
index 9ad128bff..daead1229 100755
--- a/source/l/fuse/fuse.SlackBuild
+++ b/source/l/fuse/fuse.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright (c) 2008, Antonio Hernandez Blas <hba.nihilismus@gmail.com>
-# Copyright 2008, 2009, 2010, 2011, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -23,9 +23,11 @@
# Modified by Robby Workman <rworkman@slackware.com>
# Modified by Eric Hameleers <alien@slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=fuse
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -39,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -62,7 +71,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -85,11 +94,13 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-lib \
--enable-util \
--disable-static \
- --build=${ARCH}-slackware-linux \
- || exit 1
+ --build=${ARCH}-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/fuse/slack-desc b/source/l/fuse/slack-desc
index 0241a29bf..b3f87e442 100644
--- a/source/l/fuse/slack-desc
+++ b/source/l/fuse/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
fuse: FUSE (Filesystem in Userspace)
fuse:
fuse: FUSE is a simple interface for userspace programs to export a virtual
-fuse: filesystem to the Linux kernel. FUSE also aims to provide a secure
+fuse: filesystem to the Linux kernel. FUSE also aims to provide a secure
fuse: method for non privileged users to create and mount their own
fuse: filesystem implementations.
fuse:
diff --git a/source/l/gamin/gamin.SlackBuild b/source/l/gamin/gamin.SlackBuild
index fb51e9254..ad1f08a95 100755
--- a/source/l/gamin/gamin.SlackBuild
+++ b/source/l/gamin/gamin.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2006, 2007, 2009 Robby Workman, Northport, AL, USA
-# Copyright 2007, 2008, 2009, 2010, 2011 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2007, 2008, 2009, 2010, 2011, 2018 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,25 +21,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gamin
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-6}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -52,7 +61,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -90,11 +98,14 @@ CXXFLAGS="$SLKCFLAGS" \
--disable-dnotify \
--enable-docs \
--build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux
+ --host=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
mkdir -p $PKG/etc/gamin
zcat $CWD/gaminrc.gz > $PKG/etc/gamin/gaminrc.new
diff --git a/source/l/gamin/slack-desc b/source/l/gamin/slack-desc
index 35774907e..0d4d257f3 100644
--- a/source/l/gamin/slack-desc
+++ b/source/l/gamin/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ gamin:
gamin: Gamin is a file and directory monitoring system defined to be a subset
gamin: of the FAM (File Alteration Monitor) system.
gamin:
-gamin: The homepage for Gamin is: http://www.gnome.org/~veillard/gamin/
+gamin: The homepage for Gamin is: http://www.gnome.org/~veillard/gamin/
gamin:
gamin:
gamin:
diff --git a/source/l/gc/gc.SlackBuild b/source/l/gc/gc.SlackBuild
index 186f39872..d3dba1ccd 100755
--- a/source/l/gc/gc.SlackBuild
+++ b/source/l/gc/gc.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2013, 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2014 Heinz Wiesinger, Amsterdam, NL
# All rights reserved.
#
@@ -21,10 +21,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gc
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+LAO_VERSION="7.6.2" # libatomic_ops version
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,9 +39,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
rm -rf $PKG
@@ -60,10 +70,10 @@ fi
cd $TMP
rm -rf $PKGNAM-$VERSION $PKGNAM-$(echo $VERSION | cut -b 1-3)
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION 2> /dev/null || cd $PKGNAM-$(echo $VERSION | cut -b 1-3) || exit 1
-tar xvf $CWD/libatomic_ops-$VERSION.tar.xz || exit 1
-mv libatomic_ops-$VERSION libatomic_ops
+tar xvf $CWD/libatomic_ops-$LAO_VERSION.tar.?z || exit 1
+mv libatomic_ops-$LAO_VERSION libatomic_ops
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -71,13 +81,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# https://github.com/ivmai/bdwgc/pull/51
-zcat $CWD/noelision.patch.gz | patch -p1 --verbose || exit 1
-
-# Guarding GC_setup_mark_lock usage with PARALLEL_MARK is required to avoid
-# an undefined reference in non-PARALLEL_MARK configurations:
-zcat $CWD/refer_to_GC_setup_mark_lock_only_in_PARALLEL_MARK_code.patch.gz | patch -p0 --verbose || exit 1
-
sed -i 's#pkgdata#doc#' doc/doc.am
sed -i 's#pkgdata#doc#' libatomic_ops/Makefile.am
sed -i 's#pkgdata#doc#' libatomic_ops/doc/Makefile.am
@@ -99,7 +102,7 @@ CFLAGS="$SLKCFLAGS -DUSE_GET_STACKBASE_FOR_MAIN" \
--enable-parallel-mark \
--enable-threads=posix \
--with-libatomic-ops=no \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# NOTE: Using --disable-static exports a subset of symbols, and has caused
# some things that use gc to break. So it is recommended to build the static
@@ -118,14 +121,11 @@ cd libatomic_ops
make install DESTDIR=$PKG || exit 1
cd -
-# Remove static libraries that we don't want in the package, and fix the
-# .la files to remove the references to them:
-( cd $PKG/usr/lib${LIBDIRSUFFIX}
- for static in libcord libgc libgccpp ; do
- rm --verbose ${static}.a
- sed -i "s#old_library='.*'#old_library=''#g" ${static}.la
- done
-)
+# Remove static libraries that we don't want in the package:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/{libcord,libgc,libgccpp}.a
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/gc/noelision.patch b/source/l/gc/noelision.patch
deleted file mode 100644
index 0e1515ea1..000000000
--- a/source/l/gc/noelision.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-diff --git c/include/private/gc_priv.h w/include/private/gc_priv.h
-index 0ad92fc..b877fac 100644
---- c/include/private/gc_priv.h
-+++ w/include/private/gc_priv.h
-@@ -2368,6 +2368,7 @@ GC_INNER ptr_t GC_store_debug_info(ptr_t p, word sz, const char *str,
- /* GC_notify_all_builder() is called when GC_fl_builder_count */
- /* reaches 0. */
-
-+ GC_INNER void GC_setup_mark_lock(void);
- GC_INNER void GC_acquire_mark_lock(void);
- GC_INNER void GC_release_mark_lock(void);
- GC_INNER void GC_notify_all_builder(void);
-diff --git c/include/private/gcconfig.h w/include/private/gcconfig.h
-index c753cc2..b5ed075 100644
---- c/include/private/gcconfig.h
-+++ w/include/private/gcconfig.h
-@@ -1357,6 +1357,11 @@
- # define PREFETCH_FOR_WRITE(x) \
- __asm__ __volatile__ ("prefetchw %0" : : "m"(*(char *)(x)))
- # endif
-+# if defined(__GLIBC__)
-+ /* Workaround lock elision implementation for some glibc. */
-+# define GLIBC_2_19_TSX_BUG
-+# include <gnu/libc-version.h> /* for gnu_get_libc_version() */
-+# endif
- # endif
- # ifdef CYGWIN32
- # define OS_TYPE "CYGWIN32"
-@@ -2257,6 +2262,11 @@
- /* FIXME: This seems to be fixed in GLibc v2.14. */
- # define GETCONTEXT_FPU_EXCMASK_BUG
- # endif
-+# if defined(__GLIBC__)
-+ /* Workaround lock elision implementation for some glibc. */
-+# define GLIBC_2_19_TSX_BUG
-+# include <gnu/libc-version.h> /* for gnu_get_libc_version() */
-+# endif
- # endif
- # ifdef DARWIN
- # define OS_TYPE "DARWIN"
-diff --git c/include/private/pthread_support.h w/include/private/pthread_support.h
-index 525a9aa..017f194 100644
---- c/include/private/pthread_support.h
-+++ w/include/private/pthread_support.h
-@@ -148,6 +148,8 @@ GC_INNER_PTHRSTART GC_thread GC_start_rtn_prepare_thread(
- struct GC_stack_base *sb, void *arg);
- GC_INNER_PTHRSTART void GC_thread_exit_proc(void *);
-
-+GC_INNER void GC_setup_mark_lock(void);
-+
- #endif /* GC_PTHREADS && !GC_WIN32_THREADS */
-
- #endif /* GC_PTHREAD_SUPPORT_H */
-diff --git c/misc.c w/misc.c
-index df434a1..3aca41d 100644
---- c/misc.c
-+++ w/misc.c
-@@ -875,6 +875,9 @@ GC_API void GC_CALL GC_init(void)
- /* else */ InitializeCriticalSection (&GC_allocate_ml);
- }
- # endif /* GC_WIN32_THREADS */
-+# if defined(GC_PTHREADS) && !defined(GC_WIN32_THREADS)
-+ GC_setup_mark_lock();
-+# endif /* GC_PTHREADS */
- # if (defined(MSWIN32) || defined(MSWINCE)) && defined(THREADS)
- InitializeCriticalSection(&GC_write_cs);
- # endif
-diff --git c/pthread_support.c w/pthread_support.c
-index c00b93d..8a7c50b 100644
---- c/pthread_support.c
-+++ w/pthread_support.c
-@@ -1979,6 +1979,55 @@ GC_INNER void GC_lock(void)
-
- static pthread_cond_t builder_cv = PTHREAD_COND_INITIALIZER;
-
-+#ifdef GLIBC_2_19_TSX_BUG
-+ /* Parse string like <major>[.<minor>[<tail>]] and return major value. */
-+ static int parse_version(int *pminor, const char *pverstr) {
-+ char *endp;
-+ unsigned long value = strtoul(pverstr, &endp, 10);
-+ int major = (int)value;
-+
-+ if (major < 0 || (char *)pverstr == endp || (unsigned)major != value) {
-+ /* Parse error */
-+ return -1;
-+ }
-+ if (*endp != '.') {
-+ /* No minor part. */
-+ *pminor = -1;
-+ } else {
-+ value = strtoul(endp + 1, &endp, 10);
-+ *pminor = (int)value;
-+ if (*pminor < 0 || (unsigned)(*pminor) != value) {
-+ return -1;
-+ }
-+ }
-+ return major;
-+ }
-+#endif /* GLIBC_2_19_TSX_BUG */
-+
-+GC_INNER void GC_setup_mark_lock(void)
-+{
-+# ifdef GLIBC_2_19_TSX_BUG
-+ pthread_mutexattr_t mattr;
-+ int glibc_minor = -1;
-+ int glibc_major = parse_version(&glibc_minor, gnu_get_libc_version());
-+
-+ if (glibc_major > 2 || (glibc_major == 2 && glibc_minor >= 19)) {
-+ /* TODO: disable this workaround for glibc with fixed TSX */
-+ /* This disables lock elision to workaround a bug in glibc 2.19+ */
-+ if (0 != pthread_mutexattr_init(&mattr)) {
-+ ABORT("pthread_mutexattr_init failed");
-+ }
-+ if (0 != pthread_mutexattr_settype(&mattr, PTHREAD_MUTEX_NORMAL)) {
-+ ABORT("pthread_mutexattr_settype failed");
-+ }
-+ if (0 != pthread_mutex_init(&mark_mutex, &mattr)) {
-+ ABORT("pthread_mutex_init failed");
-+ }
-+ pthread_mutexattr_destroy(&mattr);
-+ }
-+# endif
-+}
-+
- GC_INNER void GC_acquire_mark_lock(void)
- {
- GC_ASSERT(GC_mark_lock_holder != NUMERIC_THREAD_ID(pthread_self()));
diff --git a/source/l/gc/refer_to_GC_setup_mark_lock_only_in_PARALLEL_MARK_code.patch b/source/l/gc/refer_to_GC_setup_mark_lock_only_in_PARALLEL_MARK_code.patch
deleted file mode 100644
index 6e63c777e..000000000
--- a/source/l/gc/refer_to_GC_setup_mark_lock_only_in_PARALLEL_MARK_code.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Guarding GC_setup_mark_lock usage with PARALLEL_MARK is required to avoid
-an undefined reference in non-PARALLEL_MARK configurations:
-commit 4c8e0dc234e671c4d64ffab9d4f94b6cd8cc2f63
-Author: Thomas Schwinge < thomas at codesourcery.com >
-Date: Mon Sep 22 13:36:00 2014 +0200
- Refer to GC_setup_mark_lock only in PARALLEL_MARK code.
-
- ./.libs/libgc.so: undefined reference to `GC_setup_mark_lock'
-
- * misc.c (GC_init): Guard GC_setup_mark_lock usage.
----
- misc.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git misc.c misc.c
-index 41bd3f4..721a999 100644
---- misc.c
-+++ misc.c
-@@ -889,7 +889,7 @@ GC_API void GC_CALL GC_init(void)
- /* else */ InitializeCriticalSection (&GC_allocate_ml);
- }
- # endif /* GC_WIN32_THREADS */
--# if defined(GC_PTHREADS) && !defined(GC_WIN32_THREADS)
-+# if defined(PARALLEL_MARK) && defined(GC_PTHREADS) && !defined(GC_WIN32_THREADS)
- GC_setup_mark_lock();
- # endif /* GC_PTHREADS */
- # if (defined(MSWIN32) || defined(MSWINCE)) && defined(THREADS)
diff --git a/source/l/gc/slack-desc b/source/l/gc/slack-desc
index 9fce3ef0f..0bbcac9cb 100644
--- a/source/l/gc/slack-desc
+++ b/source/l/gc/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ gc:
gc: The Boehm-Demers-Weiser conservative garbage collector can be used as
gc: a garbage collecting replacement for C malloc or C++ new.
gc:
-gc: Homepage: http://www.hboehm.info/gc/
+gc: Homepage: http://www.hboehm.info/gc/
gc:
gc:
gc:
diff --git a/source/l/gcr/gcr.SlackBuild b/source/l/gcr/gcr.SlackBuild
index 0428e20ce..310968857 100755
--- a/source/l/gcr/gcr.SlackBuild
+++ b/source/l/gcr/gcr.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gcr
@@ -22,6 +22,8 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=gcr
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
@@ -34,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/gcr/slack-desc b/source/l/gcr/slack-desc
index 2cddcf476..114d1504c 100644
--- a/source/l/gcr/slack-desc
+++ b/source/l/gcr/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/gd/gd.SlackBuild b/source/l/gd/gd.SlackBuild
index f998436a8..6629857f6 100755
--- a/source/l/gd/gd.SlackBuild
+++ b/source/l/gd/gd.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,6 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gd
VERSION=${VERSION:-$(echo libgd-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
@@ -35,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
@@ -81,12 +89,15 @@ CFLAGS="$SLKCFLAGS" \
--disable-static \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -109,7 +120,7 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- COPYING INSTALL README-JPEG.TXT README.TXT index.html \
+ CHANGELOG* CONTRIBUTORS* COPYING* README* \
$PKG/usr/doc/${PKGNAM}-$VERSION
# Fix stupid permissions:
chmod 644 $PKG/usr/doc/${PKGNAM}-$VERSION/*
diff --git a/source/l/gd/slack-desc b/source/l/gd/slack-desc
index 8285aa934..895f9ce1d 100644
--- a/source/l/gd/slack-desc
+++ b/source/l/gd/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
gd: gd (a graphics library)
gd:
-gd: gd is a graphics library. It allows your code to quickly draw images
+gd: gd is a graphics library. It allows your code to quickly draw images
gd: complete with lines, arcs, text, multiple colors, cut and paste from
gd: other images, and flood fills, and write out the result as a PNG or
-gd: JPEG file. This is particularly useful in web applications, where
+gd: JPEG file. This is particularly useful in web applications, where
gd: PNG and JPEG are two of the formats accepted for inline images by
-gd: most browsers.
+gd: most browsers. The gd library was written by Thomas Boutell.
gd:
-gd: The gd library was written by Thomas Boutell.
+gd: Homepage: https://www.libgd.org
gd:
diff --git a/source/l/gdbm/gdbm.SlackBuild b/source/l/gdbm/gdbm.SlackBuild
index 24630d653..3e3a386a1 100755
--- a/source/l/gdbm/gdbm.SlackBuild
+++ b/source/l/gdbm/gdbm.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,11 @@
# Build gdbm-$VERSION for Slackware
# by volkerdi@slackware.com, 2/2001
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gdbm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -38,7 +39,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-gdbm
rm -rf $PKG
@@ -69,25 +79,21 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# Prevent gdbm from storing uninitialized memory content
-# to database files. This patch improves security, as the
-# uninitialized memory might contain sensitive informations
-# from other applications.
-# https://bugzilla.redhat.com/show_bug.cgi?id=4457
-# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=208927
-zcat $CWD/gdbm.zeroheaders.patch.gz | patch -p1 --verbose || exit 1
-
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--infodir=/usr/info \
--mandir=/usr/man \
- --build=$ARCH-slackware-linux
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
-make -j4 || exit 1
+make install DESTDIR=$PKG || exit 1
-make install DESTDIR=$PKG
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
# I'm not sure what out there would need the "libgdbm_compat" library,
# but it causes versions of ndbm.h and dbm.h to be installed that break
diff --git a/source/l/gdbm/gdbm.zeroheaders.patch b/source/l/gdbm/gdbm.zeroheaders.patch
deleted file mode 100644
index 7d2f06560..000000000
--- a/source/l/gdbm/gdbm.zeroheaders.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Don't let gdbm allocate memory and then write it to files without
-clearing it first. See: https://bugzilla.redhat.com/show_bug.cgi?id=4457
-
-diff -up gdbm-1.10/src/falloc.c.zeroheaders gdbm-1.10/src/falloc.c
---- gdbm-1.10/src/falloc.c.zeroheaders 2011-11-11 11:59:11.000000000 +0100
-+++ gdbm-1.10/src/falloc.c 2011-11-14 17:34:32.487604027 +0100
-@@ -255,7 +255,7 @@ push_avail_block (GDBM_FILE dbf)
-
-
- /* Split the header block. */
-- temp = (avail_block *) malloc (av_size);
-+ temp = (avail_block *) calloc (1, av_size);
- if (temp == NULL) _gdbm_fatal (dbf, _("malloc error"));
- /* Set the size to be correct AFTER the pop_avail_block. */
- temp->size = dbf->header->avail.size;
-diff -up gdbm-1.10/src/gdbmopen.c.zeroheaders gdbm-1.10/src/gdbmopen.c
---- gdbm-1.10/src/gdbmopen.c.zeroheaders 2011-11-11 19:39:42.000000000 +0100
-+++ gdbm-1.10/src/gdbmopen.c 2011-11-14 17:33:24.867608650 +0100
-@@ -264,7 +264,7 @@ gdbm_open (const char *file, int block_s
- (dbf->header->block_size - sizeof (hash_bucket))
- / sizeof (bucket_element) + 1;
- dbf->header->bucket_size = dbf->header->block_size;
-- dbf->bucket = (hash_bucket *) malloc (dbf->header->bucket_size);
-+ dbf->bucket = (hash_bucket *) calloc (1, dbf->header->bucket_size);
- if (dbf->bucket == NULL)
- {
- gdbm_close (dbf);
-@@ -456,7 +456,7 @@ _gdbm_init_cache(GDBM_FILE dbf, size_t s
- for(index = 0; index < size; index++)
- {
- (dbf->bucket_cache[index]).ca_bucket
-- = (hash_bucket *) malloc (dbf->header->bucket_size);
-+ = (hash_bucket *) calloc (1, dbf->header->bucket_size);
- if ((dbf->bucket_cache[index]).ca_bucket == NULL)
- {
- gdbm_errno = GDBM_MALLOC_ERROR;
diff --git a/source/l/gdbm/slack-desc b/source/l/gdbm/slack-desc
index d668d9544..a6b57fdc9 100644
--- a/source/l/gdbm/slack-desc
+++ b/source/l/gdbm/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild b/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild
index 505469de5..9587f2bd7 100755
--- a/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild
+++ b/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2010, 2011 Robby Workman, Northport, Alabama, USA
-# Copyright 2010, 2011 Patrick Volkerding, Sebeka, Minnesota, USA
+# Copyright 2010, 2011, 2018 Patrick Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=gdk-pixbuf
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +37,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "${PKGNAM}2-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -83,11 +92,14 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--enable-introspection \
--with-x11 \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# We need to have separate 32-bit and 64-bit binaries
# for places where we have two copies of the GTK+ package installed.
# (we might have x86_64 and i486 packages on the same system, for example.)
diff --git a/source/l/gdk-pixbuf2/slack-desc b/source/l/gdk-pixbuf2/slack-desc
index 2fed0a6af..2fcd4ce5f 100644
--- a/source/l/gdk-pixbuf2/slack-desc
+++ b/source/l/gdk-pixbuf2/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -12,7 +12,7 @@ gdk-pixbuf2: The gdk-pixbuf library provides a number of features:
gdk-pixbuf2: - GdkPixbuf structure for representing images.
gdk-pixbuf2: - Image loading facilities, both synchronous and progressive.
gdk-pixbuf2: - Rendering of a GdkPixbuf into various formats:
-gdk-pixbuf2: drawables (windows, pixmaps), GdkRGB buffers.
+gdk-pixbuf2: drawables (windows, pixmaps), GdkRGB buffers.
gdk-pixbuf2: - Fast scaling and compositing of pixbufs.
gdk-pixbuf2: - Simple animation loading (ie. animated gifs).
gdk-pixbuf2:
diff --git a/source/l/gdk-pixbuf2/update-gdk-pixbuf-loaders b/source/l/gdk-pixbuf2/update-gdk-pixbuf-loaders
index 5848db838..4bfda6f3f 100644
--- a/source/l/gdk-pixbuf2/update-gdk-pixbuf-loaders
+++ b/source/l/gdk-pixbuf2/update-gdk-pixbuf-loaders
@@ -20,18 +20,12 @@ case "$host" in
fi
/usr/bin/gdk-pixbuf-query-loaders-64 --update-cache
# Check for x86_64 multilib:
- if ls -d /etc/gtk-2.0/i?86* 1> /dev/null 2> /dev/null ; then
- for d in $(ls -d /etc/pango/i?86*); do
- mlhost=$(basename $d)
- break
- done
- if [ -x /usr/bin/gdk-pixbuf-query-loaders-32 ]; then
- if [ "$1" = "--verbose" ]; then
- echo "Updating gdk-pixbuf.loaders for ${mlhost}:"
- echo " /usr/bin/gdk-pixbuf-query-loaders-32 --update-cache"
- fi
- /usr/bin/gdk-pixbuf-query-loaders-32 --update-cache
+ if [ -x /usr/bin/gdk-pixbuf-query-loaders-32 ]; then
+ if [ "$1" = "--verbose" ]; then
+ echo "Updating gdk-pixbuf.loaders for 32-bit:"
+ echo " /usr/bin/gdk-pixbuf-query-loaders-32 --update-cache"
fi
+ /usr/bin/gdk-pixbuf-query-loaders-32 --update-cache
fi
else
if [ "$1" = "--verbose" ]; then
diff --git a/source/l/gegl/gegl.SlackBuild b/source/l/gegl/gegl.SlackBuild
index 72a47349d..5a2d91ded 100755
--- a/source/l/gegl/gegl.SlackBuild
+++ b/source/l/gegl/gegl.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2008, 2009 Robby Workman, Northport, Alabama, USA
# All rights reserved.
#
@@ -21,28 +21,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
-VERSION=${VERSION:-$(echo gegl-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+PKGNAM=gegl
+VERSION=${VERSION:-$(echo gegl-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-gegl
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,7 +68,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf gegl-$VERSION
-tar xvf $CWD/gegl-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/gegl-$VERSION.tar.?z || exit 1
cd gegl-$VERSION || exit 1
chown -R root:root .
find . \
@@ -84,6 +93,9 @@ CFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/gegl/slack-desc b/source/l/gegl/slack-desc
index 75eea8ad7..73756be9e 100644
--- a/source/l/gegl/slack-desc
+++ b/source/l/gegl/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler--------------------------------------------------------|
diff --git a/source/l/gexiv2/gexiv2.SlackBuild b/source/l/gexiv2/gexiv2.SlackBuild
new file mode 100755
index 000000000..6db9ce166
--- /dev/null
+++ b/source/l/gexiv2/gexiv2.SlackBuild
@@ -0,0 +1,113 @@
+#!/bin/bash
+
+# Copyright 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=gexiv2
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+cd $PKGNAM-$VERSION
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir build
+cd build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ .. || exit 1
+ ninja || exit 1
+ DESTDIR=$PKG ninja install || exit 1
+cd ..
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ AUTHORS COPYING ChangeLog INSTALL NEWS README \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/gexiv2/slack-desc b/source/l/gexiv2/slack-desc
new file mode 100644
index 000000000..8f99e6f77
--- /dev/null
+++ b/source/l/gexiv2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gexiv2: gexiv2 (GObject-based Exiv2 wrapper)
+gexiv2:
+gexiv2: gexiv2 is a GObject-based wrapper around the Exiv2 library. It makes
+gexiv2: the basic features of Exiv2 available to GNOME applications.
+gexiv2:
+gexiv2: Homepage: https://wiki.gnome.org/gexiv2
+gexiv2:
+gexiv2:
+gexiv2:
+gexiv2:
+gexiv2:
diff --git a/source/l/giflib/giflib.SlackBuild b/source/l/giflib/giflib.SlackBuild
index 80196ed3f..07cb6a066 100755
--- a/source/l/giflib/giflib.SlackBuild
+++ b/source/l/giflib/giflib.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,23 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=giflib
VERSION=${VERSION:-$(echo giflib-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -49,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-giflib
@@ -73,11 +83,14 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--with-x=no \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Make some compatibility symlinks
( cd $PKG/usr/lib${LIBDIRSUFFIX}
ln -s libgif.so.7 libungif.so.7
diff --git a/source/l/giflib/slack-desc b/source/l/giflib/slack-desc
index 04fb287ec..102b69070 100644
--- a/source/l/giflib/slack-desc
+++ b/source/l/giflib/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
giflib: giflib (GIF image format library)
giflib:
giflib: A library to load and save (uncompressed only) images using GIF,
-giflib: or Graphics Interchange Format. GIF was introduced by CompuServe
+giflib: or Graphics Interchange Format. GIF was introduced by CompuServe
giflib: in 1987, but is still widely used today (especially on web pages.)
giflib:
giflib:
diff --git a/source/l/glade3/glade3.SlackBuild b/source/l/glade3/glade3.SlackBuild
index 56c7de5ec..987807888 100755
--- a/source/l/glade3/glade3.SlackBuild
+++ b/source/l/glade3/glade3.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for glade3
@@ -22,6 +22,8 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=glade3
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
@@ -34,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -79,7 +88,6 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
- --disable-scrollkeeper \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
diff --git a/source/l/glade3/slack-desc b/source/l/glade3/slack-desc
index f31e2ebe5..3805b1c04 100644
--- a/source/l/glade3/slack-desc
+++ b/source/l/glade3/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/glib-networking/glib-networking.SlackBuild b/source/l/glib-networking/glib-networking.SlackBuild
index 8d29a4aff..4a08b3773 100755
--- a/source/l/glib-networking/glib-networking.SlackBuild
+++ b/source/l/glib-networking/glib-networking.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for glib-networking
@@ -22,11 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=glib-networking
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
-NUMJOBS=${NUMJOBS:--j6}
+NUMJOBS=${NUMJOBS:-" -j7 "}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -67,20 +76,20 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir build
+cd build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
- --enable-static=no \
--mandir=/usr/man \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --build=$ARCH-slackware-linux || exit 1
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
+ .. || exit 1
+ ninja || exit 1
+ DESTDIR=$PKG ninja install || exit 1
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/glib-networking/slack-desc b/source/l/glib-networking/slack-desc
index d06e69254..3fb5cba5f 100644
--- a/source/l/glib-networking/slack-desc
+++ b/source/l/glib-networking/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/glib/glib-1.2.10-autotools.patch b/source/l/glib/glib-1.2.10-autotools.patch
new file mode 100644
index 000000000..ebf50abe6
--- /dev/null
+++ b/source/l/glib/glib-1.2.10-autotools.patch
@@ -0,0 +1,1112 @@
+--- Makefile.in
++++ Makefile.in
+@@ -1,6 +1,6 @@
+-# Makefile.in generated automatically by automake 1.4 from Makefile.am
++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+
+-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+@@ -106,24 +106,70 @@ BUILT_SOURCES = stamp-gc-h #note: not gl
+
+ INCLUDES = -DG_LOG_DOMAIN=g_log_domain_glib @GLIB_DEBUG_FLAGS@
+
+-EXTRA_DIST = glib.m4 glib.spec.in acglib.m4 sanity_check README.win32 glib.def makefile.msc.in makefile.msc giowin32.c glibconfig.h.win32 glibconfig.h.win32.in config.h.win32 config.h.win32.in glib.pc.in gmodule.pc.in gthread.pc.in
++EXTRA_DIST = \
++ glib.m4 \
++ glib.spec.in \
++ acglib.m4 \
++ sanity_check \
++ README.win32 \
++ glib.def \
++ makefile.msc.in \
++ makefile.msc \
++ giowin32.c \
++ glibconfig.h.win32 \
++ glibconfig.h.win32.in \
++ config.h.win32 \
++ config.h.win32.in \
++ glib.pc.in \
++ gmodule.pc.in \
++ gthread.pc.in
+
+
+ lib_LTLIBRARIES = libglib.la
+
+-libglib_la_SOURCES = garray.c gcache.c gcompletion.c gdataset.c gdate.c gerror.c ghash.c ghook.c giochannel.c giounix.c glist.c gmain.c gmem.c gmessages.c gmutex.c gnode.c gprimes.c grel.c gscanner.c gslist.c gstrfuncs.c gstring.c gtimer.c gtree.c gutils.c
++libglib_la_SOURCES = \
++ garray.c \
++ gcache.c \
++ gcompletion.c \
++ gdataset.c \
++ gdate.c \
++ gerror.c \
++ ghash.c \
++ ghook.c \
++ giochannel.c \
++ giounix.c \
++ glist.c \
++ gmain.c \
++ gmem.c \
++ gmessages.c \
++ gmutex.c \
++ gnode.c \
++ gprimes.c \
++ grel.c \
++ gscanner.c \
++ gslist.c \
++ gstrfuncs.c \
++ gstring.c \
++ gtimer.c \
++ gtree.c \
++ gutils.c
+
+
+ glibincludedir = $(includedir)/glib-1.2
+-glibinclude_HEADERS = glib.h
++glibinclude_HEADERS = \
++ glib.h
+
+
+-configinclude_DATA = glibconfig.h
++configinclude_DATA = \
++ glibconfig.h
+
+
+ CONFIGURE_DEPENDENCIES = acglib.m4
+
+-libglib_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic
++libglib_la_LDFLAGS = \
++ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
++ -release $(LT_RELEASE) \
++ -export-dynamic
+
+
+ noinst_PROGRAMS = testglib testgdate testgdateparser
+@@ -190,6 +236,14 @@ DISTFILES = $(DIST_COMMON) $(SOURCES) $(
+
+ TAR = gtar
+ GZIP_ENV = --best
++DEP_FILES = .deps/garray.P .deps/gcache.P .deps/gcompletion.P \
++.deps/gdataset.P .deps/gdate.P .deps/gerror.P .deps/ghash.P \
++.deps/ghook.P .deps/giochannel.P .deps/giounix.P .deps/glist.P \
++.deps/gmain.P .deps/gmem.P .deps/gmessages.P .deps/gmutex.P \
++.deps/gnode.P .deps/gprimes.P .deps/grel.P .deps/gscanner.P \
++.deps/gslist.P .deps/gstrfuncs.P .deps/gstring.P .deps/gtimer.P \
++.deps/gtree.P .deps/gutils.P .deps/testgdate.P .deps/testgdateparser.P \
++.deps/testglib.P
+ SOURCES = $(libglib_la_SOURCES) testglib.c testgdate.c testgdateparser.c
+ OBJECTS = $(libglib_la_OBJECTS) testglib.o testgdate.o testgdateparser.o
+
+@@ -197,9 +251,9 @@ all: all-redirect
+ .SUFFIXES:
+ .SUFFIXES: .S .c .lo .o .s
+ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile
++ cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile
+
+-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+@@ -274,9 +328,6 @@ uninstall-libLTLIBRARIES:
+ $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
+ done
+
+-.c.o:
+- $(COMPILE) -c $<
+-
+ .s.o:
+ $(COMPILE) -c $<
+
+@@ -293,9 +344,6 @@ distclean-compile:
+
+ maintainer-clean-compile:
+
+-.c.lo:
+- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+-
+ .s.lo:
+ $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+
+@@ -439,7 +487,7 @@ uninstall-glibincludeHEADERS:
+ all-recursive install-data-recursive install-exec-recursive \
+ installdirs-recursive install-recursive uninstall-recursive \
+ check-recursive installcheck-recursive info-recursive dvi-recursive:
+- @set fnord $(MAKEFLAGS); amf=$$2; \
++ @set fnord $$MAKEFLAGS; amf=$$2; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+@@ -459,11 +507,11 @@ check-recursive installcheck-recursive i
+
+ mostlyclean-recursive clean-recursive distclean-recursive \
+ maintainer-clean-recursive:
+- @set fnord $(MAKEFLAGS); amf=$$2; \
++ @set fnord $$MAKEFLAGS; amf=$$2; \
+ dot_seen=no; \
+ rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
+ rev="$$subdir $$rev"; \
+- test "$$subdir" = "." && dot_seen=yes; \
++ test "$$subdir" != "." || dot_seen=yes; \
+ done; \
+ test "$$dot_seen" = "no" && rev=". $$rev"; \
+ target=`echo $@ | sed s/-recursive//`; \
+@@ -553,7 +601,12 @@ dist-all: distdir
+ distdir: $(DISTFILES)
+ -rm -rf $(distdir)
+ mkdir $(distdir)
+- -chmod 777 $(distdir)
++ -chmod 755 $(distdir)
++ here=`cd $(top_builddir) && pwd`; \
++ top_distdir=`cd $(distdir) && pwd`; \
++ distdir=`cd $(distdir) && pwd`; \
++ cd $(top_srcdir) \
++ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ if test -d $$d/$$file; then \
+@@ -569,41 +622,44 @@ distdir: $(DISTFILES)
+ test -d $(distdir)/$$subdir \
+ || mkdir $(distdir)/$$subdir \
+ || exit 1; \
+- chmod 777 $(distdir)/$$subdir; \
++ chmod 755 $(distdir)/$$subdir; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
+ || exit 1; \
+ fi; \
+ done
+ $(MAKE) $(AM_MAKEFLAGS) top_distdir="$(top_distdir)" distdir="$(distdir)" dist-hook
+-garray.lo garray.o : garray.c glib.h glibconfig.h
+-gcache.lo gcache.o : gcache.c glib.h glibconfig.h
+-gcompletion.lo gcompletion.o : gcompletion.c glib.h glibconfig.h
+-gdataset.lo gdataset.o : gdataset.c glib.h glibconfig.h
+-gdate.lo gdate.o : gdate.c config.h glib.h glibconfig.h
+-gerror.lo gerror.o : gerror.c config.h glib.h glibconfig.h
+-ghash.lo ghash.o : ghash.c glib.h glibconfig.h
+-ghook.lo ghook.o : ghook.c glib.h glibconfig.h
+-giochannel.lo giochannel.o : giochannel.c config.h glib.h glibconfig.h
+-giounix.lo giounix.o : giounix.c glib.h glibconfig.h
+-glist.lo glist.o : glist.c glib.h glibconfig.h
+-gmain.lo gmain.o : gmain.c config.h glib.h glibconfig.h
+-gmem.lo gmem.o : gmem.c config.h glib.h glibconfig.h
+-gmessages.lo gmessages.o : gmessages.c config.h glib.h glibconfig.h
+-gmutex.lo gmutex.o : gmutex.c glib.h glibconfig.h
+-gnode.lo gnode.o : gnode.c glib.h glibconfig.h
+-gprimes.lo gprimes.o : gprimes.c glib.h glibconfig.h
+-grel.lo grel.o : grel.c glib.h glibconfig.h
+-gscanner.lo gscanner.o : gscanner.c config.h glib.h glibconfig.h
+-gslist.lo gslist.o : gslist.c glib.h glibconfig.h
+-gstrfuncs.lo gstrfuncs.o : gstrfuncs.c config.h glib.h glibconfig.h
+-gstring.lo gstring.o : gstring.c glib.h glibconfig.h
+-gtimer.lo gtimer.o : gtimer.c config.h glib.h glibconfig.h
+-gtree.lo gtree.o : gtree.c glib.h glibconfig.h
+-gutils.lo gutils.o : gutils.c config.h glibconfig.h glib.h
+-testgdate.o: testgdate.c glib.h glibconfig.h
+-testgdateparser.o: testgdateparser.c glib.h glibconfig.h
+-testglib.o: testglib.c glib.h glibconfig.h
+
++DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
++
++-include $(DEP_FILES)
++
++mostlyclean-depend:
++
++clean-depend:
++
++distclean-depend:
++ -rm -rf .deps
++
++maintainer-clean-depend:
++
++%.o: %.c
++ @echo '$(COMPILE) -c $<'; \
++ $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-cp .deps/$(*F).pp .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm .deps/$(*F).pp
++
++%.lo: %.c
++ @echo '$(LTCOMPILE) -c $<'; \
++ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
++ < .deps/$(*F).pp > .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm -f .deps/$(*F).pp
+ info-am:
+ info: info-recursive
+ dvi-am:
+@@ -654,19 +710,20 @@ maintainer-clean-generic:
+ mostlyclean-am: mostlyclean-hdr mostlyclean-libLTLIBRARIES \
+ mostlyclean-compile mostlyclean-libtool \
+ mostlyclean-noinstPROGRAMS mostlyclean-tags \
+- mostlyclean-generic
++ mostlyclean-depend mostlyclean-generic
+
+ mostlyclean: mostlyclean-recursive
+
+ clean-am: clean-hdr clean-libLTLIBRARIES clean-compile clean-libtool \
+- clean-noinstPROGRAMS clean-tags clean-generic \
+- mostlyclean-am
++ clean-noinstPROGRAMS clean-tags clean-depend \
++ clean-generic mostlyclean-am
+
+ clean: clean-recursive
+
+ distclean-am: distclean-hdr distclean-libLTLIBRARIES distclean-compile \
+ distclean-libtool distclean-noinstPROGRAMS \
+- distclean-tags distclean-generic clean-am
++ distclean-tags distclean-depend distclean-generic \
++ clean-am
+ -rm -f libtool
+
+ distclean: distclean-recursive
+@@ -676,7 +733,8 @@ maintainer-clean-am: maintainer-clean-h
+ maintainer-clean-libLTLIBRARIES \
+ maintainer-clean-compile maintainer-clean-libtool \
+ maintainer-clean-noinstPROGRAMS maintainer-clean-tags \
+- maintainer-clean-generic distclean-am
++ maintainer-clean-depend maintainer-clean-generic \
++ distclean-am
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+
+@@ -701,10 +759,12 @@ uninstall-exec-recursive installdirs-rec
+ all-recursive check-recursive installcheck-recursive info-recursive \
+ dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \
+ maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
+-distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
+-dvi-am dvi check check-am installcheck-am installcheck all-recursive-am \
+-install-exec-am install-exec install-data-am install-data install-am \
+-install uninstall-am uninstall all-redirect all-am all installdirs-am \
++distclean-tags clean-tags maintainer-clean-tags distdir \
++mostlyclean-depend distclean-depend clean-depend \
++maintainer-clean-depend info-am info dvi-am dvi check check-am \
++installcheck-am installcheck all-recursive-am install-exec-am \
++install-exec install-data-am install-data install-am install \
++uninstall-am uninstall all-redirect all-am all installdirs-am \
+ installdirs mostlyclean-generic distclean-generic clean-generic \
+ maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+
+--- docs/Makefile.in
++++ docs/Makefile.in
+@@ -1,6 +1,6 @@
+-# Makefile.in generated automatically by automake 1.4 from Makefile.am
++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+
+-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+@@ -96,7 +96,9 @@ info_TEXINFOS = glib.texi
+
+ man_MANS = glib-config.1
+
+-EXTRA_DIST = glib-config.1.in glib.html glib_toc.html
++EXTRA_DIST = glib-config.1.in \
++ glib.html \
++ glib_toc.html
+
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = ../config.h
+@@ -120,9 +122,9 @@ all: all-redirect
+ .SUFFIXES:
+ .SUFFIXES: .dvi .info .ps .texi .texinfo .txi
+ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps docs/Makefile
++ cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/Makefile
+
+-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+@@ -208,7 +210,7 @@ uninstall-info:
+ else ii=; fi; \
+ list='$(INFO_DEPS)'; \
+ for file in $$list; do \
+- test -z "$ii" \
++ test -z "$$ii" \
+ || install-info --info-dir=$(DESTDIR)$(infodir) --remove $$file; \
+ done
+ @$(NORMAL_UNINSTALL)
+@@ -292,6 +294,11 @@ distdir = $(top_builddir)/$(PACKAGE)-$(V
+ subdir = docs
+
+ distdir: $(DISTFILES)
++ here=`cd $(top_builddir) && pwd`; \
++ top_distdir=`cd $(top_distdir) && pwd`; \
++ distdir=`cd $(distdir) && pwd`; \
++ cd $(top_srcdir) \
++ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ if test -d $$d/$$file; then \
+--- gmodule/Makefile.in
++++ gmodule/Makefile.in
+@@ -1,6 +1,6 @@
+-# Makefile.in generated automatically by automake 1.4 from Makefile.am
++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+
+-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+@@ -92,16 +92,24 @@ PACKAGE = @PACKAGE@
+ RANLIB = @RANLIB@
+ VERSION = @VERSION@
+
+-INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/gmodule -DG_LOG_DOMAIN=\"GModule\" @GLIB_DEBUG_FLAGS@
++INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/gmodule \
++ -DG_LOG_DOMAIN=\"GModule\" @GLIB_DEBUG_FLAGS@
+
+
+-EXTRA_DIST = gmoduleconf.h.in gmodule.def gmodule-dl.c gmodule-dld.c gmodule-win32.c gmoduleconf.h.win32
++EXTRA_DIST = \
++ gmoduleconf.h.in \
++ gmodule.def \
++ gmodule-dl.c \
++ gmodule-dld.c \
++ gmodule-win32.c \
++ gmoduleconf.h.win32
+
+
+ BUILT_SOURCES = gmoduleconf.h
+
+ glibincludedir = $(includedir)/glib-1.2
+-glibinclude_HEADERS = gmodule.h
++glibinclude_HEADERS = \
++ gmodule.h
+
+
+ libglib = $(top_builddir)/libglib.la # -lglib
+@@ -109,24 +117,30 @@ libglib = $(top_builddir)/libglib.la # -
+ lib_LTLIBRARIES = libgmodule.la libgplugin_a.la libgplugin_b.la
+
+ libgmodule_la_SOURCES = gmodule.c
+-libgmodule_la_LDFLAGS = @G_MODULE_LDFLAGS@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic
++libgmodule_la_LDFLAGS = \
++ @G_MODULE_LDFLAGS@ \
++ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
++ -release $(LT_RELEASE) \
++ -no-undefined -Wl,--no-undefined \
++ -export-dynamic
+
+
+-libgmodule_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
++libgmodule_la_DEPENDENCIES = $(libglib)
++libgmodule_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
+ # we should really depend on $(libglib) for libgmodule.la, but libtool has a
+ # problem with this ;(
+
+ libgplugin_a_la_SOURCES = libgplugin_a.c
+ libgplugin_a_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module
+-libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
++libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
+
+ libgplugin_b_la_SOURCES = libgplugin_b.c
+ libgplugin_b_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module
+-libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
++libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
+
+ noinst_PROGRAMS = testgmodule
+ testgmodule_LDFLAGS = @G_MODULE_LDFLAGS@
+-testgmodule_LDADD = libgmodule.la $(libglib) @G_MODULE_LIBS@
++testgmodule_LDADD = libgmodule.la @G_MODULE_LIBS@
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = ../config.h
+ CONFIG_CLEAN_FILES = gmoduleconf.h
+@@ -137,17 +151,16 @@ DEFS = @DEFS@ -I. -I$(srcdir) -I..
+ CPPFLAGS = @CPPFLAGS@
+ LDFLAGS = @LDFLAGS@
+ LIBS = @LIBS@
+-libgmodule_la_DEPENDENCIES =
+ libgmodule_la_OBJECTS = gmodule.lo
+-libgplugin_a_la_DEPENDENCIES =
++libgplugin_a_la_DEPENDENCIES = $(top_builddir)/libglib.la
+ libgplugin_a_la_OBJECTS = libgplugin_a.lo
+-libgplugin_b_la_DEPENDENCIES =
++libgplugin_b_la_DEPENDENCIES = $(top_builddir)/libglib.la
+ libgplugin_b_la_OBJECTS = libgplugin_b.lo
+ PROGRAMS = $(noinst_PROGRAMS)
+
+ testgmodule_SOURCES = testgmodule.c
+ testgmodule_OBJECTS = testgmodule.o
+-testgmodule_DEPENDENCIES = libgmodule.la $(top_builddir)/libglib.la
++testgmodule_DEPENDENCIES = libgmodule.la
+ CFLAGS = @CFLAGS@
+ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+ LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+@@ -163,6 +176,8 @@ DISTFILES = $(DIST_COMMON) $(SOURCES) $(
+
+ TAR = gtar
+ GZIP_ENV = --best
++DEP_FILES = .deps/gmodule.P .deps/libgplugin_a.P .deps/libgplugin_b.P \
++.deps/testgmodule.P
+ SOURCES = $(libgmodule_la_SOURCES) $(libgplugin_a_la_SOURCES) $(libgplugin_b_la_SOURCES) testgmodule.c
+ OBJECTS = $(libgmodule_la_OBJECTS) $(libgplugin_a_la_OBJECTS) $(libgplugin_b_la_OBJECTS) testgmodule.o
+
+@@ -170,9 +185,9 @@ all: all-redirect
+ .SUFFIXES:
+ .SUFFIXES: .S .c .lo .o .s
+ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps gmodule/Makefile
++ cd $(top_srcdir) && $(AUTOMAKE) --gnu gmodule/Makefile
+
+-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+@@ -194,9 +209,6 @@ uninstall-libLTLIBRARIES:
+ $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
+ done
+
+-.c.o:
+- $(COMPILE) -c $<
+-
+ .s.o:
+ $(COMPILE) -c $<
+
+@@ -213,9 +225,6 @@ distclean-compile:
+
+ maintainer-clean-compile:
+
+-.c.lo:
+- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+-
+ .s.lo:
+ $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+
+@@ -303,6 +312,11 @@ distdir = $(top_builddir)/$(PACKAGE)-$(V
+ subdir = gmodule
+
+ distdir: $(DISTFILES)
++ here=`cd $(top_builddir) && pwd`; \
++ top_distdir=`cd $(top_distdir) && pwd`; \
++ distdir=`cd $(distdir) && pwd`; \
++ cd $(top_srcdir) \
++ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu gmodule/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ if test -d $$d/$$file; then \
+@@ -313,15 +327,38 @@ distdir: $(DISTFILES)
+ || cp -p $$d/$$file $(distdir)/$$file || :; \
+ fi; \
+ done
+-gmodule.lo gmodule.o : gmodule.c gmodule.h ../glib.h ../glibconfig.h \
+- gmoduleconf.h gmodule-dl.c
+-libgplugin_a.lo libgplugin_a.o : libgplugin_a.c gmodule.h ../glib.h \
+- ../glibconfig.h
+-libgplugin_b.lo libgplugin_b.o : libgplugin_b.c gmodule.h ../glib.h \
+- ../glibconfig.h
+-testgmodule.o: testgmodule.c gmodule.h ../glib.h ../glibconfig.h \
+- gmoduleconf.h
+
++DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
++
++-include $(DEP_FILES)
++
++mostlyclean-depend:
++
++clean-depend:
++
++distclean-depend:
++ -rm -rf .deps
++
++maintainer-clean-depend:
++
++%.o: %.c
++ @echo '$(COMPILE) -c $<'; \
++ $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-cp .deps/$(*F).pp .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm .deps/$(*F).pp
++
++%.lo: %.c
++ @echo '$(LTCOMPILE) -c $<'; \
++ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
++ < .deps/$(*F).pp > .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm -f .deps/$(*F).pp
+ info-am:
+ info: info-am
+ dvi-am:
+@@ -361,19 +398,20 @@ maintainer-clean-generic:
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+ mostlyclean-am: mostlyclean-libLTLIBRARIES mostlyclean-compile \
+ mostlyclean-libtool mostlyclean-noinstPROGRAMS \
+- mostlyclean-tags mostlyclean-generic
++ mostlyclean-tags mostlyclean-depend mostlyclean-generic
+
+ mostlyclean: mostlyclean-am
+
+ clean-am: clean-libLTLIBRARIES clean-compile clean-libtool \
+- clean-noinstPROGRAMS clean-tags clean-generic \
+- mostlyclean-am
++ clean-noinstPROGRAMS clean-tags clean-depend \
++ clean-generic mostlyclean-am
+
+ clean: clean-am
+
+ distclean-am: distclean-libLTLIBRARIES distclean-compile \
+ distclean-libtool distclean-noinstPROGRAMS \
+- distclean-tags distclean-generic clean-am
++ distclean-tags distclean-depend distclean-generic \
++ clean-am
+ -rm -f libtool
+
+ distclean: distclean-am
+@@ -381,7 +419,8 @@ distclean: distclean-am
+ maintainer-clean-am: maintainer-clean-libLTLIBRARIES \
+ maintainer-clean-compile maintainer-clean-libtool \
+ maintainer-clean-noinstPROGRAMS maintainer-clean-tags \
+- maintainer-clean-generic distclean-am
++ maintainer-clean-depend maintainer-clean-generic \
++ distclean-am
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+
+@@ -396,12 +435,13 @@ maintainer-clean-libtool mostlyclean-noi
+ distclean-noinstPROGRAMS clean-noinstPROGRAMS \
+ maintainer-clean-noinstPROGRAMS uninstall-glibincludeHEADERS \
+ install-glibincludeHEADERS tags mostlyclean-tags distclean-tags \
+-clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
+-check-am installcheck-am installcheck install-exec-am install-exec \
+-install-data-am install-data install-am install uninstall-am uninstall \
+-all-redirect all-am all installdirs mostlyclean-generic \
+-distclean-generic clean-generic maintainer-clean-generic clean \
+-mostlyclean distclean maintainer-clean
++clean-tags maintainer-clean-tags distdir mostlyclean-depend \
++distclean-depend clean-depend maintainer-clean-depend info-am info \
++dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
++install-exec install-data-am install-data install-am install \
++uninstall-am uninstall all-redirect all-am all installdirs \
++mostlyclean-generic distclean-generic clean-generic \
++maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+
+ gmoduleconf.h: gmoduleconf.h.in
+
+--- gthread/Makefile.in
++++ gthread/Makefile.in
+@@ -1,6 +1,6 @@
+-# Makefile.in generated automatically by automake 1.4 from Makefile.am
++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+
+-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+@@ -94,7 +94,12 @@ VERSION = @VERSION@
+
+ INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/gthread -DG_LOG_DOMAIN=\"GThread\"
+
+-EXTRA_DIST = gthread-posix.c gthread-solaris.c gthread-nspr.c gthread-none.c gthread.def
++EXTRA_DIST = \
++ gthread-posix.c \
++ gthread-solaris.c \
++ gthread-nspr.c \
++ gthread-none.c \
++ gthread.def
+
+
+ libglib = $(top_builddir)/libglib.la # -lglib
+@@ -102,13 +107,18 @@ libglib = $(top_builddir)/libglib.la # -
+ lib_LTLIBRARIES = libgthread.la
+
+ libgthread_la_SOURCES = gthread.c
+-libgthread_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic
++libgthread_la_LDFLAGS = \
++ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
++ -release $(LT_RELEASE) \
++ -no-undefined -Wl,--no-undefined \
++ -export-dynamic
+
+
+-libgthread_la_LIBADD = @G_THREAD_LIBS@
++libgthread_la_DEPENDENCIES = $(libglib)
++libgthread_la_LIBADD = @G_THREAD_LIBS@ $(libglib)
+
+ noinst_PROGRAMS = testgthread
+-testgthread_LDADD = ../libglib.la libgthread.la
++testgthread_LDADD = libgthread.la
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = ../config.h
+ CONFIG_CLEAN_FILES =
+@@ -119,13 +129,12 @@ DEFS = @DEFS@ -I. -I$(srcdir) -I..
+ CPPFLAGS = @CPPFLAGS@
+ LDFLAGS = @LDFLAGS@
+ LIBS = @LIBS@
+-libgthread_la_DEPENDENCIES =
+ libgthread_la_OBJECTS = gthread.lo
+ PROGRAMS = $(noinst_PROGRAMS)
+
+ testgthread_SOURCES = testgthread.c
+ testgthread_OBJECTS = testgthread.o
+-testgthread_DEPENDENCIES = ../libglib.la libgthread.la
++testgthread_DEPENDENCIES = libgthread.la
+ testgthread_LDFLAGS =
+ CFLAGS = @CFLAGS@
+ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+@@ -139,6 +148,7 @@ DISTFILES = $(DIST_COMMON) $(SOURCES) $(
+
+ TAR = gtar
+ GZIP_ENV = --best
++DEP_FILES = .deps/gthread.P .deps/testgthread.P
+ SOURCES = $(libgthread_la_SOURCES) testgthread.c
+ OBJECTS = $(libgthread_la_OBJECTS) testgthread.o
+
+@@ -146,9 +156,9 @@ all: all-redirect
+ .SUFFIXES:
+ .SUFFIXES: .S .c .lo .o .s
+ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps gthread/Makefile
++ cd $(top_srcdir) && $(AUTOMAKE) --gnu gthread/Makefile
+
+-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+@@ -178,9 +188,6 @@ uninstall-libLTLIBRARIES:
+ $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
+ done
+
+-.c.o:
+- $(COMPILE) -c $<
+-
+ .s.o:
+ $(COMPILE) -c $<
+
+@@ -197,9 +204,6 @@ distclean-compile:
+
+ maintainer-clean-compile:
+
+-.c.lo:
+- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+-
+ .s.lo:
+ $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+
+@@ -266,6 +270,11 @@ distdir = $(top_builddir)/$(PACKAGE)-$(V
+ subdir = gthread
+
+ distdir: $(DISTFILES)
++ here=`cd $(top_builddir) && pwd`; \
++ top_distdir=`cd $(top_distdir) && pwd`; \
++ distdir=`cd $(distdir) && pwd`; \
++ cd $(top_srcdir) \
++ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu gthread/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ if test -d $$d/$$file; then \
+@@ -276,11 +285,38 @@ distdir: $(DISTFILES)
+ || cp -p $$d/$$file $(distdir)/$$file || :; \
+ fi; \
+ done
+-gthread.lo gthread.o : gthread.c ../config.h ../glib.h ../glibconfig.h \
+- gthread-posix.c
+-testgthread.o: testgthread.c ../config.h ../testglib.c ../glib.h \
+- ../glibconfig.h
+
++DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
++
++-include $(DEP_FILES)
++
++mostlyclean-depend:
++
++clean-depend:
++
++distclean-depend:
++ -rm -rf .deps
++
++maintainer-clean-depend:
++
++%.o: %.c
++ @echo '$(COMPILE) -c $<'; \
++ $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-cp .deps/$(*F).pp .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm .deps/$(*F).pp
++
++%.lo: %.c
++ @echo '$(LTCOMPILE) -c $<'; \
++ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
++ < .deps/$(*F).pp > .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm -f .deps/$(*F).pp
+ info-am:
+ info: info-am
+ dvi-am:
+@@ -319,19 +355,20 @@ distclean-generic:
+ maintainer-clean-generic:
+ mostlyclean-am: mostlyclean-libLTLIBRARIES mostlyclean-compile \
+ mostlyclean-libtool mostlyclean-noinstPROGRAMS \
+- mostlyclean-tags mostlyclean-generic
++ mostlyclean-tags mostlyclean-depend mostlyclean-generic
+
+ mostlyclean: mostlyclean-am
+
+ clean-am: clean-libLTLIBRARIES clean-compile clean-libtool \
+- clean-noinstPROGRAMS clean-tags clean-generic \
+- mostlyclean-am
++ clean-noinstPROGRAMS clean-tags clean-depend \
++ clean-generic mostlyclean-am
+
+ clean: clean-am
+
+ distclean-am: distclean-libLTLIBRARIES distclean-compile \
+ distclean-libtool distclean-noinstPROGRAMS \
+- distclean-tags distclean-generic clean-am
++ distclean-tags distclean-depend distclean-generic \
++ clean-am
+ -rm -f libtool
+
+ distclean: distclean-am
+@@ -339,7 +376,8 @@ distclean: distclean-am
+ maintainer-clean-am: maintainer-clean-libLTLIBRARIES \
+ maintainer-clean-compile maintainer-clean-libtool \
+ maintainer-clean-noinstPROGRAMS maintainer-clean-tags \
+- maintainer-clean-generic distclean-am
++ maintainer-clean-depend maintainer-clean-generic \
++ distclean-am
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+
+@@ -353,12 +391,13 @@ mostlyclean-libtool distclean-libtool cl
+ maintainer-clean-libtool mostlyclean-noinstPROGRAMS \
+ distclean-noinstPROGRAMS clean-noinstPROGRAMS \
+ maintainer-clean-noinstPROGRAMS tags mostlyclean-tags distclean-tags \
+-clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
+-check-am installcheck-am installcheck install-exec-am install-exec \
+-install-data-am install-data install-am install uninstall-am uninstall \
+-all-redirect all-am all installdirs mostlyclean-generic \
+-distclean-generic clean-generic maintainer-clean-generic clean \
+-mostlyclean distclean maintainer-clean
++clean-tags maintainer-clean-tags distdir mostlyclean-depend \
++distclean-depend clean-depend maintainer-clean-depend info-am info \
++dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
++install-exec install-data-am install-data install-am install \
++uninstall-am uninstall all-redirect all-am all installdirs \
++mostlyclean-generic distclean-generic clean-generic \
++maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+
+
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+--- tests/Makefile.in
++++ tests/Makefile.in
+@@ -1,6 +1,6 @@
+-# Makefile.in generated automatically by automake 1.4 from Makefile.am
++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+
+-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+@@ -94,10 +94,23 @@ VERSION = @VERSION@
+
+ INCLUDES = -I$(top_srcdir)
+
+-EXTRA_DIST = makefile.msc makefile.msc.in
+-
+-
+-TESTS = array-test dirname-test hash-test list-test node-test relation-test slist-test string-test strfunc-test tree-test type-test
++EXTRA_DIST = \
++ makefile.msc \
++ makefile.msc.in
++
++
++TESTS = \
++ array-test \
++ dirname-test \
++ hash-test \
++ list-test \
++ node-test \
++ relation-test \
++ slist-test \
++ string-test \
++ strfunc-test \
++ tree-test \
++ type-test
+
+
+ noinst_PROGRAMS = $(TESTS)
+@@ -179,6 +192,10 @@ DISTFILES = $(DIST_COMMON) $(SOURCES) $(
+
+ TAR = gtar
+ GZIP_ENV = --best
++DEP_FILES = .deps/array-test.P .deps/dirname-test.P .deps/hash-test.P \
++.deps/list-test.P .deps/node-test.P .deps/relation-test.P \
++.deps/slist-test.P .deps/strfunc-test.P .deps/string-test.P \
++.deps/tree-test.P .deps/type-test.P
+ SOURCES = array-test.c dirname-test.c hash-test.c list-test.c node-test.c relation-test.c slist-test.c string-test.c strfunc-test.c tree-test.c type-test.c
+ OBJECTS = array-test.o dirname-test.o hash-test.o list-test.o node-test.o relation-test.o slist-test.o string-test.o strfunc-test.o tree-test.o type-test.o
+
+@@ -186,9 +203,9 @@ all: all-redirect
+ .SUFFIXES:
+ .SUFFIXES: .S .c .lo .o .s
+ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps tests/Makefile
++ cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/Makefile
+
+-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+@@ -202,9 +219,6 @@ distclean-noinstPROGRAMS:
+
+ maintainer-clean-noinstPROGRAMS:
+
+-.c.o:
+- $(COMPILE) -c $<
+-
+ .s.o:
+ $(COMPILE) -c $<
+
+@@ -221,9 +235,6 @@ distclean-compile:
+
+ maintainer-clean-compile:
+
+-.c.lo:
+- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+-
+ .s.lo:
+ $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+
+@@ -318,6 +329,11 @@ distdir = $(top_builddir)/$(PACKAGE)-$(V
+ subdir = tests
+
+ distdir: $(DISTFILES)
++ here=`cd $(top_builddir) && pwd`; \
++ top_distdir=`cd $(top_distdir) && pwd`; \
++ distdir=`cd $(distdir) && pwd`; \
++ cd $(top_srcdir) \
++ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu tests/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ if test -d $$d/$$file; then \
+@@ -328,18 +344,38 @@ distdir: $(DISTFILES)
+ || cp -p $$d/$$file $(distdir)/$$file || :; \
+ fi; \
+ done
+-array-test.o: array-test.c ../glib.h ../glibconfig.h
+-dirname-test.o: dirname-test.c ../glib.h ../glibconfig.h
+-hash-test.o: hash-test.c ../config.h ../glib.h ../glibconfig.h
+-list-test.o: list-test.c ../glib.h ../glibconfig.h
+-node-test.o: node-test.c ../config.h ../glib.h ../glibconfig.h
+-relation-test.o: relation-test.c ../glib.h ../glibconfig.h
+-slist-test.o: slist-test.c ../glib.h ../glibconfig.h
+-strfunc-test.o: strfunc-test.c ../glib.h ../glibconfig.h
+-string-test.o: string-test.c ../glib.h ../glibconfig.h
+-tree-test.o: tree-test.c ../glib.h ../glibconfig.h
+-type-test.o: type-test.c ../glib.h ../glibconfig.h
+
++DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
++
++-include $(DEP_FILES)
++
++mostlyclean-depend:
++
++clean-depend:
++
++distclean-depend:
++ -rm -rf .deps
++
++maintainer-clean-depend:
++
++%.o: %.c
++ @echo '$(COMPILE) -c $<'; \
++ $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-cp .deps/$(*F).pp .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm .deps/$(*F).pp
++
++%.lo: %.c
++ @echo '$(LTCOMPILE) -c $<'; \
++ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
++ < .deps/$(*F).pp > .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm -f .deps/$(*F).pp
+ check-TESTS: $(TESTS)
+ @failed=0; all=0; \
+ srcdir=$(srcdir); export srcdir; \
+@@ -402,27 +438,27 @@ distclean-generic:
+
+ maintainer-clean-generic:
+ mostlyclean-am: mostlyclean-noinstPROGRAMS mostlyclean-compile \
+- mostlyclean-libtool mostlyclean-tags \
++ mostlyclean-libtool mostlyclean-tags mostlyclean-depend \
+ mostlyclean-generic
+
+ mostlyclean: mostlyclean-am
+
+ clean-am: clean-noinstPROGRAMS clean-compile clean-libtool clean-tags \
+- clean-generic mostlyclean-am
++ clean-depend clean-generic mostlyclean-am
+
+ clean: clean-am
+
+ distclean-am: distclean-noinstPROGRAMS distclean-compile \
+- distclean-libtool distclean-tags distclean-generic \
+- clean-am
++ distclean-libtool distclean-tags distclean-depend \
++ distclean-generic clean-am
+ -rm -f libtool
+
+ distclean: distclean-am
+
+ maintainer-clean-am: maintainer-clean-noinstPROGRAMS \
+ maintainer-clean-compile maintainer-clean-libtool \
+- maintainer-clean-tags maintainer-clean-generic \
+- distclean-am
++ maintainer-clean-tags maintainer-clean-depend \
++ maintainer-clean-generic distclean-am
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+
+@@ -433,12 +469,14 @@ clean-noinstPROGRAMS maintainer-clean-no
+ mostlyclean-compile distclean-compile clean-compile \
+ maintainer-clean-compile mostlyclean-libtool distclean-libtool \
+ clean-libtool maintainer-clean-libtool tags mostlyclean-tags \
+-distclean-tags clean-tags maintainer-clean-tags distdir check-TESTS \
+-info-am info dvi-am dvi check check-am installcheck-am installcheck \
+-install-exec-am install-exec install-data-am install-data install-am \
+-install uninstall-am uninstall all-redirect all-am all installdirs \
+-mostlyclean-generic distclean-generic clean-generic \
+-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
++distclean-tags clean-tags maintainer-clean-tags distdir \
++mostlyclean-depend distclean-depend clean-depend \
++maintainer-clean-depend check-TESTS info-am info dvi-am dvi check \
++check-am installcheck-am installcheck install-exec-am install-exec \
++install-data-am install-data install-am install uninstall-am uninstall \
++all-redirect all-am all installdirs mostlyclean-generic \
++distclean-generic clean-generic maintainer-clean-generic clean \
++mostlyclean distclean maintainer-clean
+
+
+ makefile.msc: $(top_builddir)/config.status $(top_srcdir)/tests/makefile.msc.in
+--- configure
++++ configure
+@@ -2550,12 +2550,12 @@ else
+ #line 2551 "configure"
+ #include "confdefs.h"
+ #include <stdio.h>
+-main()
++int main()
+ {
+ FILE *f=fopen("conftestval", "w");
+- if (!f) exit(1);
++ if (!f) return(1);
+ fprintf(f, "%d\n", sizeof(char));
+- exit(0);
++ return(0);
+ }
+ EOF
+ if { (eval echo configure:2562: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+@@ -2589,12 +2589,12 @@ else
+ #line 2590 "configure"
+ #include "confdefs.h"
+ #include <stdio.h>
+-main()
++int main()
+ {
+ FILE *f=fopen("conftestval", "w");
+- if (!f) exit(1);
++ if (!f) return(1);
+ fprintf(f, "%d\n", sizeof(short));
+- exit(0);
++ return(0);
+ }
+ EOF
+ if { (eval echo configure:2601: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+@@ -2628,12 +2628,12 @@ else
+ #line 2629 "configure"
+ #include "confdefs.h"
+ #include <stdio.h>
+-main()
++int main()
+ {
+ FILE *f=fopen("conftestval", "w");
+- if (!f) exit(1);
++ if (!f) return(1);
+ fprintf(f, "%d\n", sizeof(long));
+- exit(0);
++ return(0);
+ }
+ EOF
+ if { (eval echo configure:2640: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+@@ -2667,12 +2667,12 @@ else
+ #line 2668 "configure"
+ #include "confdefs.h"
+ #include <stdio.h>
+-main()
++int main()
+ {
+ FILE *f=fopen("conftestval", "w");
+- if (!f) exit(1);
++ if (!f) return(1);
+ fprintf(f, "%d\n", sizeof(int));
+- exit(0);
++ return(0);
+ }
+ EOF
+ if { (eval echo configure:2679: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+@@ -2706,12 +2706,12 @@ else
+ #line 2707 "configure"
+ #include "confdefs.h"
+ #include <stdio.h>
+-main()
++int main()
+ {
+ FILE *f=fopen("conftestval", "w");
+- if (!f) exit(1);
++ if (!f) return(1);
+ fprintf(f, "%d\n", sizeof(void *));
+- exit(0);
++ return(0);
+ }
+ EOF
+ if { (eval echo configure:2718: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+@@ -2745,12 +2745,12 @@ else
+ #line 2746 "configure"
+ #include "confdefs.h"
+ #include <stdio.h>
+-main()
++int main()
+ {
+ FILE *f=fopen("conftestval", "w");
+- if (!f) exit(1);
++ if (!f) return(1);
+ fprintf(f, "%d\n", sizeof(long long));
+- exit(0);
++ return(0);
+ }
+ EOF
+ if { (eval echo configure:2757: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
diff --git a/source/l/glib/glib-1.2.10-format.patch b/source/l/glib/glib-1.2.10-format.patch
new file mode 100644
index 000000000..e4812534e
--- /dev/null
+++ b/source/l/glib/glib-1.2.10-format.patch
@@ -0,0 +1,29 @@
+--- grel.c
++++ grel.c
+@@ -413,7 +413,7 @@ g_relation_print_one (gpointer tuple_key
+ }
+
+ g_string_append (gstring, "]");
+- g_log (g_log_domain_glib, G_LOG_LEVEL_INFO, gstring->str);
++ g_log (g_log_domain_glib, G_LOG_LEVEL_INFO, "%s", gstring->str);
+ g_string_free (gstring, TRUE);
+ }
+
+--- testglib.c
++++ testglib.c
+@@ -277,6 +277,9 @@ my_traverse (gpointer key,
+ return FALSE;
+ }
+
++/* This program explicitly tests for a NULL format string */
++#pragma GCC diagnostic push
++#pragma GCC diagnostic warning "-Wformat-security"
+ int
+ main (int argc,
+ char *argv[])
+@@ -918,4 +921,5 @@ main (int argc,
+
+ return 0;
+ }
++#pragma GCC diagnostic pop
+
diff --git a/source/l/glib/glib-1.2.10-gcc34.patch b/source/l/glib/glib-1.2.10-gcc34.patch
new file mode 100644
index 000000000..bb02628cd
--- /dev/null
+++ b/source/l/glib/glib-1.2.10-gcc34.patch
@@ -0,0 +1,11 @@
+--- glib-1.2.10/glib.h.gcc34 2004-06-21 09:15:12.000000000 -0400
++++ glib-1.2.10/glib.h 2004-06-21 09:15:22.000000000 -0400
+@@ -272,7 +272,7 @@
+ /* Wrap the gcc __PRETTY_FUNCTION__ and __FUNCTION__ variables with
+ * macros, so we can refer to them as strings unconditionally.
+ */
+-#ifdef __GNUC__
++#if defined (__GNUC__) && (__GNUC__ < 3)
+ #define G_GNUC_FUNCTION __FUNCTION__
+ #define G_GNUC_PRETTY_FUNCTION __PRETTY_FUNCTION__
+ #else /* !__GNUC__ */
diff --git a/source/l/glib/glib-1.2.10-gcc5.patch b/source/l/glib/glib-1.2.10-gcc5.patch
new file mode 100644
index 000000000..9e16b80fe
--- /dev/null
+++ b/source/l/glib/glib-1.2.10-gcc5.patch
@@ -0,0 +1,11 @@
+--- glib.h
++++ glib.h
+@@ -204,7 +204,7 @@ extern "C" {
+ #ifndef G_INLINE_FUNC
+ # ifdef __GNUC__
+ # ifdef __OPTIMIZE__
+-# define G_INLINE_FUNC extern inline
++# define G_INLINE_FUNC extern inline __attribute__ ((__gnu_inline__))
+ # else
+ # undef G_CAN_INLINE
+ # define G_INLINE_FUNC extern
diff --git a/source/l/glib/glib-1.2.10-isowarning.patch b/source/l/glib/glib-1.2.10-isowarning.patch
new file mode 100644
index 000000000..a676b2467
--- /dev/null
+++ b/source/l/glib/glib-1.2.10-isowarning.patch
@@ -0,0 +1,16 @@
+--- glib-1.2.10/glib.h.isowarning Mon Feb 26 22:44:38 2001
++++ glib-1.2.10/glib.h Sat Jul 21 19:36:31 2001
+@@ -1291,6 +1291,13 @@
+ #ifndef G_LOG_DOMAIN
+ #define G_LOG_DOMAIN ((gchar*) 0)
+ #endif /* G_LOG_DOMAIN */
++
++/* Suppress warnings when GCC is in -pedantic mode and not -std=c99
++ */
++#if (__GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
++#pragma GCC system_header
++#endif
++
+ #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+ #define g_error(...) g_log (G_LOG_DOMAIN, \
+ G_LOG_LEVEL_ERROR, \
diff --git a/source/l/glib/glib-1.2.10-multilib.patch b/source/l/glib/glib-1.2.10-multilib.patch
new file mode 100644
index 000000000..208a60159
--- /dev/null
+++ b/source/l/glib/glib-1.2.10-multilib.patch
@@ -0,0 +1,31 @@
+--- glib-1.2.10/glib-config.in.multilib 2007-01-11 10:00:48.000000000 -0500
++++ glib-1.2.10/glib-config.in 2007-01-11 10:13:25.000000000 -0500
+@@ -1,7 +1,10 @@
+ #!/bin/sh
+
+-prefix=@prefix@
+-exec_prefix=@exec_prefix@
++[ -z "$PKG_CONFIG" ] && PKG_CONFIG="pkg-config"
++prefix=`${PKG_CONFIG} --variable prefix glib`
++exec_prefix=`${PKG_CONFIG} --variable exec_prefix glib`
++libdir=`${PKG_CONFIG} --variable libdir glib`
++includedir=`${PKG_CONFIG} --variable includedir glib`
+ exec_prefix_set=no
+
+ usage()
+@@ -88,7 +91,7 @@
+ if test "$lib_gthread" = "yes"; then
+ cflags="$cflags @G_THREAD_CFLAGS@"
+ fi
+- echo -I@includedir@/glib-1.2 -I@libdir@/glib/include $includes $cflags
++ echo -I${includedir}/glib-1.2 -I${libdir}/glib/include $includes $cflags
+ fi
+ if test "$echo_libs" = "yes"; then
+ libsp=""
+@@ -104,5 +107,5 @@
+ libsp="@G_MODULE_LDFLAGS@ -lgmodule $libsp"
+ libsa="$libsa @G_MODULE_LIBS@"
+ fi
+- echo -L@libdir@ $libsp $libsa
++ echo -L${libdir} $libsp $libsa
+ fi
diff --git a/source/l/glib/glib-1.2.10-no_undefined.patch b/source/l/glib/glib-1.2.10-no_undefined.patch
new file mode 100644
index 000000000..971650dec
--- /dev/null
+++ b/source/l/glib/glib-1.2.10-no_undefined.patch
@@ -0,0 +1,48 @@
+--- glib-1.2.10/gthread/Makefile.am.no_undefined 1999-08-26 08:09:43.000000000 -0500
++++ glib-1.2.10/gthread/Makefile.am 2006-05-04 08:38:36.000000000 -0500
+@@ -17,9 +17,11 @@
+ libgthread_la_LDFLAGS = \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+ -release $(LT_RELEASE) \
++ -no-undefined -Wl,--no-undefined \
+ -export-dynamic
+
+-libgthread_la_LIBADD = @G_THREAD_LIBS@
++libgthread_la_DEPENDENCIES = $(libglib) $(top_builddir)/gmodule/libgmodule.la
++libgthread_la_LIBADD = @G_THREAD_LIBS@ $(libglib) $(top_builddir)/gmodule/libgmodule.la
+
+ noinst_PROGRAMS = testgthread
+-testgthread_LDADD = ../libglib.la libgthread.la
++testgthread_LDADD = libgthread.la
+--- glib-1.2.10/gmodule/Makefile.am.no_undefined 2001-03-15 09:33:10.000000000 -0600
++++ glib-1.2.10/gmodule/Makefile.am 2006-05-04 08:33:22.000000000 -0500
+@@ -27,23 +27,25 @@
+ @G_MODULE_LDFLAGS@ \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+ -release $(LT_RELEASE) \
++ -no-undefined -Wl,--no-undefined \
+ -export-dynamic
+
+-libgmodule_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
++libgmodule_la_DEPENDENCIES = $(libglib)
++libgmodule_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
+ # we should really depend on $(libglib) for libgmodule.la, but libtool has a
+ # problem with this ;(
+
+ libgplugin_a_la_SOURCES = libgplugin_a.c
+ libgplugin_a_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module
+-libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
++libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
+
+ libgplugin_b_la_SOURCES = libgplugin_b.c
+ libgplugin_b_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module
+-libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
++libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
+
+ noinst_PROGRAMS = testgmodule
+ testgmodule_LDFLAGS += @G_MODULE_LDFLAGS@
+-testgmodule_LDADD = libgmodule.la $(libglib) @G_MODULE_LIBS@
++testgmodule_LDADD = libgmodule.la @G_MODULE_LIBS@
+
+ .PHONY: files release
+
diff --git a/source/l/glib/glib-1.2.10-underquoted.patch b/source/l/glib/glib-1.2.10-underquoted.patch
new file mode 100644
index 000000000..380928f0a
--- /dev/null
+++ b/source/l/glib/glib-1.2.10-underquoted.patch
@@ -0,0 +1,11 @@
+--- glib-1.2.10/glib.m4.underquoted 2004-08-09 09:10:44.497000620 +0100
++++ glib-1.2.10/glib.m4 2004-08-09 09:11:01.446759680 +0100
+@@ -5,7 +5,7 @@
+ dnl Test for GLIB, and define GLIB_CFLAGS and GLIB_LIBS, if "gmodule" or
+ dnl gthread is specified in MODULES, pass to glib-config
+ dnl
+-AC_DEFUN(AM_PATH_GLIB,
++AC_DEFUN([AM_PATH_GLIB],
+ [dnl
+ dnl Get the cflags and libraries from the glib-config script
+ dnl
diff --git a/source/l/glib/glib-1.2.10-unused-dep.patch b/source/l/glib/glib-1.2.10-unused-dep.patch
new file mode 100644
index 000000000..278914734
--- /dev/null
+++ b/source/l/glib/glib-1.2.10-unused-dep.patch
@@ -0,0 +1,13 @@
+--- glib-1.2.10/gthread/Makefile.am 2009-04-17 15:47:42.000000000 +0100
++++ glib-1.2.10/gthread/Makefile.am 2009-04-17 15:49:26.000000000 +0100
+@@ -20,8 +20,8 @@
+ -no-undefined -Wl,--no-undefined \
+ -export-dynamic
+
+-libgthread_la_DEPENDENCIES = $(libglib) $(top_builddir)/gmodule/libgmodule.la
+-libgthread_la_LIBADD = @G_THREAD_LIBS@ $(libglib) $(top_builddir)/gmodule/libgmodule.la
++libgthread_la_DEPENDENCIES = $(libglib)
++libgthread_la_LIBADD = @G_THREAD_LIBS@ $(libglib)
+
+ noinst_PROGRAMS = testgthread
+ testgthread_LDADD = libgthread.la
diff --git a/source/l/glib/glib.SlackBuild b/source/l/glib/glib.SlackBuild
index 62afbdfd9..afefe9e4c 100755
--- a/source/l/glib/glib.SlackBuild
+++ b/source/l/glib/glib.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,29 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=glib
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-6}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -58,9 +66,20 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
-bzcat $CWD/glib1.2_1.2.10-17.diff.bz2 | patch -p1 --verbose || exit 1
+zcat $CWD/glib-1.2.10-isowarning.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/glib-1.2.10-gcc34.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/glib-1.2.10-underquoted.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/glib-1.2.10-no_undefined.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/glib-1.2.10-multilib.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/glib-1.2.10-unused-dep.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/glib-1.2.10-autotools.patch.gz | patch -p0 --verbose || exit 1
+zcat $CWD/glib-1.2.10-format.patch.gz | patch -p0 --verbose || exit 1
+zcat $CWD/glib-1.2.10-gcc5.patch.gz | patch -p0 --verbose || exit 1
+
+# The original config.{guess,sub} do not work on x86_64 and some other $ARCH:
+cp -p /usr/share/libtool/build-aux/config.{guess,sub} .
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -76,21 +95,38 @@ CFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
+ --disable-static \
--mandir=/usr/man \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
-make -j4 CFLAGS="$SLKCFLAGS" || exit 1
+make -j4 CFLAGS="$SLKCFLAGS" LIBTOOL=/usr/bin/libtool || exit 1
make CFLAGS="$SLKCFLAGS" install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Throw away the static libraries that shouldn't have been built:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
+
+# Make sure shared libraries are executable:
+chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/lib*.so.*
+
# Strip binaries:
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
)
+# Remove rpaths:
+for file in $(find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : 2> /dev/null) ; do
+ if [ ! "$(patchelf --print-rpath $file 2> /dev/null)" = "" ]; then
+ patchelf --remove-rpath $file
+ fi
+done
+
# Compress and link manpages, if any:
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
diff --git a/source/l/glib/glib1.2_1.2.10-17.diff b/source/l/glib/glib1.2_1.2.10-17.diff
deleted file mode 100644
index efd7dc668..000000000
--- a/source/l/glib/glib1.2_1.2.10-17.diff
+++ /dev/null
@@ -1,19776 +0,0 @@
---- glib1.2-1.2.10.orig/tests/Makefile.in
-+++ glib1.2-1.2.10/tests/Makefile.in
-@@ -1,6 +1,6 @@
--# Makefile.in generated automatically by automake 1.4 from Makefile.am
-+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
--# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -62,8 +62,10 @@
- AS = @AS@
- CC = @CC@
- DLLTOOL = @DLLTOOL@
-+ECHO = @ECHO@
- ENABLE_MEM_CHECK = @ENABLE_MEM_CHECK@
- ENABLE_MEM_PROFILE = @ENABLE_MEM_PROFILE@
-+EXEEXT = @EXEEXT@
- GLIB_BINARY_AGE = @GLIB_BINARY_AGE@
- GLIB_DEBUG_FLAGS = @GLIB_DEBUG_FLAGS@
- GLIB_INTERFACE_AGE = @GLIB_INTERFACE_AGE@
-@@ -88,8 +90,10 @@
- MAINT = @MAINT@
- MAKEINFO = @MAKEINFO@
- OBJDUMP = @OBJDUMP@
-+OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- RANLIB = @RANLIB@
-+STRIP = @STRIP@
- VERSION = @VERSION@
-
- INCLUDES = -I$(top_srcdir)
-@@ -116,6 +120,10 @@
- mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
- CONFIG_HEADER = ../config.h
- CONFIG_CLEAN_FILES =
-+noinst_PROGRAMS = array-test$(EXEEXT) dirname-test$(EXEEXT) \
-+hash-test$(EXEEXT) list-test$(EXEEXT) node-test$(EXEEXT) \
-+relation-test$(EXEEXT) slist-test$(EXEEXT) string-test$(EXEEXT) \
-+strfunc-test$(EXEEXT) tree-test$(EXEEXT) type-test$(EXEEXT)
- PROGRAMS = $(noinst_PROGRAMS)
-
-
-@@ -124,47 +132,47 @@
- LDFLAGS = @LDFLAGS@
- LIBS = @LIBS@
- array_test_SOURCES = array-test.c
--array_test_OBJECTS = array-test.o
-+array_test_OBJECTS = array-test.$(OBJEXT)
- array_test_DEPENDENCIES = $(top_builddir)/libglib.la
- array_test_LDFLAGS =
- dirname_test_SOURCES = dirname-test.c
--dirname_test_OBJECTS = dirname-test.o
-+dirname_test_OBJECTS = dirname-test.$(OBJEXT)
- dirname_test_DEPENDENCIES = $(top_builddir)/libglib.la
- dirname_test_LDFLAGS =
- hash_test_SOURCES = hash-test.c
--hash_test_OBJECTS = hash-test.o
-+hash_test_OBJECTS = hash-test.$(OBJEXT)
- hash_test_DEPENDENCIES = $(top_builddir)/libglib.la
- hash_test_LDFLAGS =
- list_test_SOURCES = list-test.c
--list_test_OBJECTS = list-test.o
-+list_test_OBJECTS = list-test.$(OBJEXT)
- list_test_DEPENDENCIES = $(top_builddir)/libglib.la
- list_test_LDFLAGS =
- node_test_SOURCES = node-test.c
--node_test_OBJECTS = node-test.o
-+node_test_OBJECTS = node-test.$(OBJEXT)
- node_test_DEPENDENCIES = $(top_builddir)/libglib.la
- node_test_LDFLAGS =
- relation_test_SOURCES = relation-test.c
--relation_test_OBJECTS = relation-test.o
-+relation_test_OBJECTS = relation-test.$(OBJEXT)
- relation_test_DEPENDENCIES = $(top_builddir)/libglib.la
- relation_test_LDFLAGS =
- slist_test_SOURCES = slist-test.c
--slist_test_OBJECTS = slist-test.o
-+slist_test_OBJECTS = slist-test.$(OBJEXT)
- slist_test_DEPENDENCIES = $(top_builddir)/libglib.la
- slist_test_LDFLAGS =
- string_test_SOURCES = string-test.c
--string_test_OBJECTS = string-test.o
-+string_test_OBJECTS = string-test.$(OBJEXT)
- string_test_DEPENDENCIES = $(top_builddir)/libglib.la
- string_test_LDFLAGS =
- strfunc_test_SOURCES = strfunc-test.c
--strfunc_test_OBJECTS = strfunc-test.o
-+strfunc_test_OBJECTS = strfunc-test.$(OBJEXT)
- strfunc_test_DEPENDENCIES = $(top_builddir)/libglib.la
- strfunc_test_LDFLAGS =
- tree_test_SOURCES = tree-test.c
--tree_test_OBJECTS = tree-test.o
-+tree_test_OBJECTS = tree-test.$(OBJEXT)
- tree_test_DEPENDENCIES = $(top_builddir)/libglib.la
- tree_test_LDFLAGS =
- type_test_SOURCES = type-test.c
--type_test_OBJECTS = type-test.o
-+type_test_OBJECTS = type-test.$(OBJEXT)
- type_test_DEPENDENCIES = $(top_builddir)/libglib.la
- type_test_LDFLAGS =
- CFLAGS = @CFLAGS@
-@@ -177,14 +185,14 @@
-
- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
--TAR = gtar
-+TAR = tar
- GZIP_ENV = --best
- SOURCES = array-test.c dirname-test.c hash-test.c list-test.c node-test.c relation-test.c slist-test.c string-test.c strfunc-test.c tree-test.c type-test.c
--OBJECTS = array-test.o dirname-test.o hash-test.o list-test.o node-test.o relation-test.o slist-test.o string-test.o strfunc-test.o tree-test.o type-test.o
-+OBJECTS = array-test.$(OBJEXT) dirname-test.$(OBJEXT) hash-test.$(OBJEXT) list-test.$(OBJEXT) node-test.$(OBJEXT) relation-test.$(OBJEXT) slist-test.$(OBJEXT) string-test.$(OBJEXT) strfunc-test.$(OBJEXT) tree-test.$(OBJEXT) type-test.$(OBJEXT)
-
- all: all-redirect
- .SUFFIXES:
--.SUFFIXES: .S .c .lo .o .s
-+.SUFFIXES: .S .c .lo .o .obj .s
- $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps tests/Makefile
-
-@@ -205,6 +213,11 @@
- .c.o:
- $(COMPILE) -c $<
-
-+# FIXME: We should only use cygpath when building on Windows,
-+# and only if it is available.
-+.c.obj:
-+ $(COMPILE) -c `cygpath -w $<`
-+
- .s.o:
- $(COMPILE) -c $<
-
-@@ -213,6 +226,7 @@
-
- mostlyclean-compile:
- -rm -f *.o core *.core
-+ -rm -f *.$(OBJEXT)
-
- clean-compile:
-
-@@ -240,48 +254,48 @@
-
- maintainer-clean-libtool:
-
--array-test: $(array_test_OBJECTS) $(array_test_DEPENDENCIES)
-- @rm -f array-test
-+array-test$(EXEEXT): $(array_test_OBJECTS) $(array_test_DEPENDENCIES)
-+ @rm -f array-test$(EXEEXT)
- $(LINK) $(array_test_LDFLAGS) $(array_test_OBJECTS) $(array_test_LDADD) $(LIBS)
-
--dirname-test: $(dirname_test_OBJECTS) $(dirname_test_DEPENDENCIES)
-- @rm -f dirname-test
-+dirname-test$(EXEEXT): $(dirname_test_OBJECTS) $(dirname_test_DEPENDENCIES)
-+ @rm -f dirname-test$(EXEEXT)
- $(LINK) $(dirname_test_LDFLAGS) $(dirname_test_OBJECTS) $(dirname_test_LDADD) $(LIBS)
-
--hash-test: $(hash_test_OBJECTS) $(hash_test_DEPENDENCIES)
-- @rm -f hash-test
-+hash-test$(EXEEXT): $(hash_test_OBJECTS) $(hash_test_DEPENDENCIES)
-+ @rm -f hash-test$(EXEEXT)
- $(LINK) $(hash_test_LDFLAGS) $(hash_test_OBJECTS) $(hash_test_LDADD) $(LIBS)
-
--list-test: $(list_test_OBJECTS) $(list_test_DEPENDENCIES)
-- @rm -f list-test
-+list-test$(EXEEXT): $(list_test_OBJECTS) $(list_test_DEPENDENCIES)
-+ @rm -f list-test$(EXEEXT)
- $(LINK) $(list_test_LDFLAGS) $(list_test_OBJECTS) $(list_test_LDADD) $(LIBS)
-
--node-test: $(node_test_OBJECTS) $(node_test_DEPENDENCIES)
-- @rm -f node-test
-+node-test$(EXEEXT): $(node_test_OBJECTS) $(node_test_DEPENDENCIES)
-+ @rm -f node-test$(EXEEXT)
- $(LINK) $(node_test_LDFLAGS) $(node_test_OBJECTS) $(node_test_LDADD) $(LIBS)
-
--relation-test: $(relation_test_OBJECTS) $(relation_test_DEPENDENCIES)
-- @rm -f relation-test
-+relation-test$(EXEEXT): $(relation_test_OBJECTS) $(relation_test_DEPENDENCIES)
-+ @rm -f relation-test$(EXEEXT)
- $(LINK) $(relation_test_LDFLAGS) $(relation_test_OBJECTS) $(relation_test_LDADD) $(LIBS)
-
--slist-test: $(slist_test_OBJECTS) $(slist_test_DEPENDENCIES)
-- @rm -f slist-test
-+slist-test$(EXEEXT): $(slist_test_OBJECTS) $(slist_test_DEPENDENCIES)
-+ @rm -f slist-test$(EXEEXT)
- $(LINK) $(slist_test_LDFLAGS) $(slist_test_OBJECTS) $(slist_test_LDADD) $(LIBS)
-
--string-test: $(string_test_OBJECTS) $(string_test_DEPENDENCIES)
-- @rm -f string-test
-+string-test$(EXEEXT): $(string_test_OBJECTS) $(string_test_DEPENDENCIES)
-+ @rm -f string-test$(EXEEXT)
- $(LINK) $(string_test_LDFLAGS) $(string_test_OBJECTS) $(string_test_LDADD) $(LIBS)
-
--strfunc-test: $(strfunc_test_OBJECTS) $(strfunc_test_DEPENDENCIES)
-- @rm -f strfunc-test
-+strfunc-test$(EXEEXT): $(strfunc_test_OBJECTS) $(strfunc_test_DEPENDENCIES)
-+ @rm -f strfunc-test$(EXEEXT)
- $(LINK) $(strfunc_test_LDFLAGS) $(strfunc_test_OBJECTS) $(strfunc_test_LDADD) $(LIBS)
-
--tree-test: $(tree_test_OBJECTS) $(tree_test_DEPENDENCIES)
-- @rm -f tree-test
-+tree-test$(EXEEXT): $(tree_test_OBJECTS) $(tree_test_DEPENDENCIES)
-+ @rm -f tree-test$(EXEEXT)
- $(LINK) $(tree_test_LDFLAGS) $(tree_test_OBJECTS) $(tree_test_LDADD) $(LIBS)
-
--type-test: $(type_test_OBJECTS) $(type_test_DEPENDENCIES)
-- @rm -f type-test
-+type-test$(EXEEXT): $(type_test_OBJECTS) $(type_test_DEPENDENCIES)
-+ @rm -f type-test$(EXEEXT)
- $(LINK) $(type_test_LDFLAGS) $(type_test_OBJECTS) $(type_test_LDADD) $(LIBS)
-
- tags: TAGS
-@@ -302,7 +316,7 @@
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-+ || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP))
-
- mostlyclean-tags:
-
-@@ -328,18 +342,6 @@
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
--array-test.o: array-test.c ../glib.h ../glibconfig.h
--dirname-test.o: dirname-test.c ../glib.h ../glibconfig.h
--hash-test.o: hash-test.c ../config.h ../glib.h ../glibconfig.h
--list-test.o: list-test.c ../glib.h ../glibconfig.h
--node-test.o: node-test.c ../config.h ../glib.h ../glibconfig.h
--relation-test.o: relation-test.c ../glib.h ../glibconfig.h
--slist-test.o: slist-test.c ../glib.h ../glibconfig.h
--strfunc-test.o: strfunc-test.c ../glib.h ../glibconfig.h
--string-test.o: string-test.c ../glib.h ../glibconfig.h
--tree-test.o: tree-test.c ../glib.h ../glibconfig.h
--type-test.o: type-test.c ../glib.h ../glibconfig.h
--
- check-TESTS: $(TESTS)
- @failed=0; all=0; \
- srcdir=$(srcdir); export srcdir; \
---- glib1.2-1.2.10.orig/configure
-+++ glib1.2-1.2.10/configure
-@@ -38,9 +38,170 @@
- --enable-fast-install[=PKGS] optimize for fast installation [default=yes]"
- ac_help="$ac_help
- --with-gnu-ld assume the C compiler uses GNU ld [default=no]"
-+
-+# Find the correct PATH separator. Usually this is `:', but
-+# DJGPP uses `;' like DOS.
-+if test "X${PATH_SEPARATOR+set}" != Xset; then
-+ UNAME=${UNAME-`uname 2>/dev/null`}
-+ case X$UNAME in
-+ *-DOS) lt_cv_sys_path_separator=';' ;;
-+ *) lt_cv_sys_path_separator=':' ;;
-+ esac
-+ PATH_SEPARATOR=$lt_cv_sys_path_separator
-+fi
-+
-+
-+# Check that we are running under the correct shell.
-+SHELL=${CONFIG_SHELL-/bin/sh}
-+
-+case X$ECHO in
-+X*--fallback-echo)
-+ # Remove one level of quotation (which was required for Make).
-+ ECHO=`echo "$ECHO" | sed 's,\\\\\$\\$0,'$0','`
-+ ;;
-+esac
-+
-+echo=${ECHO-echo}
-+if test "X$1" = X--no-reexec; then
-+ # Discard the --no-reexec flag, and continue.
-+ shift
-+elif test "X$1" = X--fallback-echo; then
-+ # Avoid inline document here, it may be left over
-+ :
-+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
-+ # Yippee, $echo works!
-+ :
-+else
-+ # Restart under the correct shell.
-+ exec $SHELL "$0" --no-reexec ${1+"$@"}
-+fi
-+
-+if test "X$1" = X--fallback-echo; then
-+ # used as fallback echo
-+ shift
-+ cat <<EOF
-+
-+EOF
-+ exit 0
-+fi
-+
-+# The HP-UX ksh and POSIX shell print the target directory to stdout
-+# if CDPATH is set.
-+if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-+
-+if test -z "$ECHO"; then
-+if test "X${echo_test_string+set}" != Xset; then
-+# find a string as large as possible, as long as the shell can cope with it
-+ for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
-+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
-+ if (echo_test_string="`eval $cmd`") 2>/dev/null &&
-+ echo_test_string="`eval $cmd`" &&
-+ (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
-+ then
-+ break
-+ fi
-+ done
-+fi
-+
-+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ :
-+else
-+ # The Solaris, AIX, and Digital Unix default echo programs unquote
-+ # backslashes. This makes it impossible to quote backslashes using
-+ # echo "$something" | sed 's/\\/\\\\/g'
-+ #
-+ # So, first we look for a working echo in the user's PATH.
-+
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-+ for dir in $PATH /usr/ucb; do
-+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
-+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ echo="$dir/echo"
-+ break
-+ fi
-+ done
-+ IFS="$save_ifs"
-+
-+ if test "X$echo" = Xecho; then
-+ # We didn't find a better echo, so look for alternatives.
-+ if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ # This shell has a builtin print -r that does the trick.
-+ echo='print -r'
-+ elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
-+ test "X$CONFIG_SHELL" != X/bin/ksh; then
-+ # If we have ksh, try running configure again with it.
-+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-+ export ORIGINAL_CONFIG_SHELL
-+ CONFIG_SHELL=/bin/ksh
-+ export CONFIG_SHELL
-+ exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"}
-+ else
-+ # Try using printf.
-+ echo='printf %s\n'
-+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ # Cool, printf works
-+ :
-+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
-+ test "X$echo_testing_string" = 'X\t' &&
-+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
-+ export CONFIG_SHELL
-+ SHELL="$CONFIG_SHELL"
-+ export SHELL
-+ echo="$CONFIG_SHELL $0 --fallback-echo"
-+ elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
-+ test "X$echo_testing_string" = 'X\t' &&
-+ echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ echo="$CONFIG_SHELL $0 --fallback-echo"
-+ else
-+ # maybe with a smaller string...
-+ prev=:
-+
-+ for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
-+ if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
-+ then
-+ break
-+ fi
-+ prev="$cmd"
-+ done
-+
-+ if test "$prev" != 'sed 50q "$0"'; then
-+ echo_test_string=`eval $prev`
-+ export echo_test_string
-+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"}
-+ else
-+ # Oops. We lost completely, so just stick with echo.
-+ echo=echo
-+ fi
-+ fi
-+ fi
-+ fi
-+fi
-+fi
-+
-+# Copy echo and quote the copy suitably for passing to libtool from
-+# the Makefile, instead of quoting the original, which is used later.
-+ECHO=$echo
-+if test "X$ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then
-+ ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo"
-+fi
-+
-+
- ac_help="$ac_help
- --disable-libtool-lock avoid locking (might break parallel builds)"
- ac_help="$ac_help
-+ --with-pic try to use only PIC/non-PIC objects [default=use both]"
-+ac_help="$ac_help
- --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer"
- if test `expr $GLIB_MINOR_VERSION \% 2` = 1 ; then
-@@ -618,6 +779,7 @@
- ac_config_sub=$ac_aux_dir/config.sub
- ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-+am__api_version="1.4"
- # 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:
-@@ -630,7 +792,7 @@
- # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
- # ./install, which can be erroneously created by make from ./install.sh.
- echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
--echo "configure:634: checking for a BSD compatible install" >&5
-+echo "configure:796: checking for a BSD compatible install" >&5
- if test -z "$INSTALL"; then
- if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -683,7 +845,7 @@
- test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
- echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
--echo "configure:687: checking whether build environment is sane" >&5
-+echo "configure:849: checking whether build environment is sane" >&5
- # Just in case
- sleep 1
- echo timestamp > conftestfile
-@@ -740,7 +902,7 @@
- test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
- echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
--echo "configure:744: checking whether ${MAKE-make} sets \${MAKE}" >&5
-+echo "configure:906: checking whether ${MAKE-make} sets \${MAKE}" >&5
- set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -778,21 +940,21 @@
-
-
- missing_dir=`cd $ac_aux_dir && pwd`
--echo $ac_n "checking for working aclocal""... $ac_c" 1>&6
--echo "configure:783: checking for working aclocal" >&5
-+echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-+echo "configure:945: checking for working aclocal-${am__api_version}" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
--if (aclocal --version) < /dev/null > /dev/null 2>&1; then
-- ACLOCAL=aclocal
-+if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
-+ ACLOCAL=aclocal-${am__api_version}
- echo "$ac_t""found" 1>&6
- else
-- ACLOCAL="$missing_dir/missing aclocal"
-+ ACLOCAL="$missing_dir/missing aclocal-${am__api_version}"
- echo "$ac_t""missing" 1>&6
- fi
-
- echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
--echo "configure:796: checking for working autoconf" >&5
-+echo "configure:958: checking for working autoconf" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
-@@ -804,21 +966,21 @@
- echo "$ac_t""missing" 1>&6
- fi
-
--echo $ac_n "checking for working automake""... $ac_c" 1>&6
--echo "configure:809: checking for working automake" >&5
-+echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-+echo "configure:971: checking for working automake-${am__api_version}" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
--if (automake --version) < /dev/null > /dev/null 2>&1; then
-- AUTOMAKE=automake
-+if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
-+ AUTOMAKE=automake-${am__api_version}
- echo "$ac_t""found" 1>&6
- else
-- AUTOMAKE="$missing_dir/missing automake"
-+ AUTOMAKE="$missing_dir/missing automake-${am__api_version}"
- echo "$ac_t""missing" 1>&6
- fi
-
- echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
--echo "configure:822: checking for working autoheader" >&5
-+echo "configure:984: checking for working autoheader" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
-@@ -831,7 +993,7 @@
- fi
-
- echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
--echo "configure:835: checking for working makeinfo" >&5
-+echo "configure:997: checking for working makeinfo" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
-@@ -871,11 +1033,164 @@
- EOF
-
-
-+# Find the correct PATH separator. Usually this is `:', but
-+# DJGPP uses `;' like DOS.
-+if test "X${PATH_SEPARATOR+set}" != Xset; then
-+ UNAME=${UNAME-`uname 2>/dev/null`}
-+ case X$UNAME in
-+ *-DOS) lt_cv_sys_path_separator=';' ;;
-+ *) lt_cv_sys_path_separator=':' ;;
-+ esac
-+ PATH_SEPARATOR=$lt_cv_sys_path_separator
-+fi
-+
-+echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-+echo "configure:1049: checking for Cygwin environment" >&5
-+if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 1054 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+
-+#ifndef __CYGWIN__
-+#define __CYGWIN__ __CYGWIN32__
-+#endif
-+return __CYGWIN__;
-+; return 0; }
-+EOF
-+if { (eval echo configure:1065: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ ac_cv_cygwin=yes
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ ac_cv_cygwin=no
-+fi
-+rm -f conftest*
-+rm -f conftest*
-+fi
-+
-+echo "$ac_t""$ac_cv_cygwin" 1>&6
-+CYGWIN=
-+test "$ac_cv_cygwin" = yes && CYGWIN=yes
-+echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-+echo "configure:1082: checking for mingw32 environment" >&5
-+if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 1087 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+return __MINGW32__;
-+; return 0; }
-+EOF
-+if { (eval echo configure:1094: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ ac_cv_mingw32=yes
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ ac_cv_mingw32=no
-+fi
-+rm -f conftest*
-+rm -f conftest*
-+fi
-+
-+echo "$ac_t""$ac_cv_mingw32" 1>&6
-+MINGW32=
-+test "$ac_cv_mingw32" = yes && MINGW32=yes
-+echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-+echo "configure:1111: checking how to run the C preprocessor" >&5
-+# On Suns, sometimes $CPP names a directory.
-+if test -n "$CPP" && test -d "$CPP"; then
-+ CPP=
-+fi
-+if test -z "$CPP"; then
-+if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ # This must be in double quotes, not single quotes, because CPP may get
-+ # substituted into the Makefile and "${CC-cc}" will confuse make.
-+ CPP="${CC-cc} -E"
-+ # On the NeXT, cc -E runs the code through the compiler's parser,
-+ # not just through cpp.
-+ cat > conftest.$ac_ext <<EOF
-+#line 1126 "configure"
-+#include "confdefs.h"
-+#include <assert.h>
-+Syntax Error
-+EOF
-+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-+{ (eval echo configure:1132: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-+if test -z "$ac_err"; then
-+ :
-+else
-+ echo "$ac_err" >&5
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ CPP="${CC-cc} -E -traditional-cpp"
-+ cat > conftest.$ac_ext <<EOF
-+#line 1143 "configure"
-+#include "confdefs.h"
-+#include <assert.h>
-+Syntax Error
-+EOF
-+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-+{ (eval echo configure:1149: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-+if test -z "$ac_err"; then
-+ :
-+else
-+ echo "$ac_err" >&5
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ CPP="${CC-cc} -nologo -E"
-+ cat > conftest.$ac_ext <<EOF
-+#line 1160 "configure"
-+#include "confdefs.h"
-+#include <assert.h>
-+Syntax Error
-+EOF
-+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-+{ (eval echo configure:1166: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-+if test -z "$ac_err"; then
-+ :
-+else
-+ echo "$ac_err" >&5
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ CPP=/lib/cpp
-+fi
-+rm -f conftest*
-+fi
-+rm -f conftest*
-+fi
-+rm -f conftest*
-+ ac_cv_prog_CPP="$CPP"
-+fi
-+ CPP="$ac_cv_prog_CPP"
-+else
-+ ac_cv_prog_CPP="$CPP"
-+fi
-+echo "$ac_t""$CPP" 1>&6
-+
- # Check whether --enable-shared or --disable-shared was given.
- if test "${enable_shared+set}" = set; then
- enableval="$enable_shared"
- p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
-@@ -898,7 +1213,7 @@
- if test "${enable_static+set}" = set; then
- enableval="$enable_static"
- p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
-@@ -921,7 +1236,7 @@
- if test "${enable_fast_install+set}" = set; then
- enableval="$enable_fast_install"
- p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
-@@ -947,7 +1262,7 @@
- fi
-
- echo $ac_n "checking host system type""... $ac_c" 1>&6
--echo "configure:951: checking host system type" >&5
-+echo "configure:1266: checking host system type" >&5
-
- host_alias=$host
- case "$host_alias" in
-@@ -968,7 +1283,7 @@
- echo "$ac_t""$host" 1>&6
-
- echo $ac_n "checking build system type""... $ac_c" 1>&6
--echo "configure:972: checking build system type" >&5
-+echo "configure:1287: checking build system type" >&5
-
- build_alias=$build
- case "$build_alias" in
-@@ -985,40 +1300,10 @@
- build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
- echo "$ac_t""$build" 1>&6
-
--# Extract the first word of "ranlib", so it can be a program name with args.
--set dummy ranlib; ac_word=$2
--echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:992: checking for $ac_word" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
-- echo $ac_n "(cached) $ac_c" 1>&6
--else
-- if test -n "$RANLIB"; then
-- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
--else
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-- ac_dummy="$PATH"
-- for ac_dir in $ac_dummy; do
-- test -z "$ac_dir" && ac_dir=.
-- if test -f $ac_dir/$ac_word; then
-- ac_cv_prog_RANLIB="ranlib"
-- break
-- fi
-- done
-- IFS="$ac_save_ifs"
-- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
--fi
--fi
--RANLIB="$ac_cv_prog_RANLIB"
--if test -n "$RANLIB"; then
-- echo "$ac_t""$RANLIB" 1>&6
--else
-- echo "$ac_t""no" 1>&6
--fi
--
- # Extract the first word of "gcc", so it can be a program name with args.
- set dummy gcc; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1022: checking for $ac_word" >&5
-+echo "configure:1307: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1048,7 +1333,7 @@
- # Extract the first word of "cc", so it can be a program name with args.
- set dummy cc; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1052: checking for $ac_word" >&5
-+echo "configure:1337: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1099,7 +1384,7 @@
- # Extract the first word of "cl", so it can be a program name with args.
- set dummy cl; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1103: checking for $ac_word" >&5
-+echo "configure:1388: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1131,7 +1416,7 @@
- fi
-
- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
--echo "configure:1135: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-+echo "configure:1420: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-
- ac_ext=c
- # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-@@ -1142,12 +1427,12 @@
-
- cat > conftest.$ac_ext << EOF
-
--#line 1146 "configure"
-+#line 1431 "configure"
- #include "confdefs.h"
-
- main(){return(0);}
- EOF
--if { (eval echo configure:1151: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:1436: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- ac_cv_prog_cc_works=yes
- # If we can't run a trivial program, we are probably using a cross compiler.
- if (./conftest; exit) 2>/dev/null; then
-@@ -1173,12 +1458,12 @@
- { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
- fi
- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
--echo "configure:1177: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
-+echo "configure:1462: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
- echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
- cross_compiling=$ac_cv_prog_cc_cross
-
- echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
--echo "configure:1182: checking whether we are using GNU C" >&5
-+echo "configure:1467: checking whether we are using GNU C" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1187,7 +1472,7 @@
- yes;
- #endif
- EOF
--if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1191: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
-+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1476: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
- else
- ac_cv_prog_gcc=no
-@@ -1206,7 +1491,7 @@
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
--echo "configure:1210: checking whether ${CC-cc} accepts -g" >&5
-+echo "configure:1495: checking whether ${CC-cc} accepts -g" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1246,12 +1531,18 @@
- fi
-
- ac_prog=ld
--if test "$ac_cv_prog_gcc" = yes; then
-+if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
--echo "configure:1253: checking for ld used by GCC" >&5
-- ac_prog=`($CC -print-prog-name=ld) 2>&5`
-- case "$ac_prog" in
-+echo "configure:1538: checking for ld used by GCC" >&5
-+ case $host in
-+ *-*-mingw*)
-+ # gcc leaves a trailing carriage return which upsets mingw
-+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-+ *)
-+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-+ esac
-+ case $ac_prog in
- # Accept absolute paths.
- [\\/]* | [A-Za-z]:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
-@@ -1273,24 +1564,24 @@
- esac
- elif test "$with_gnu_ld" = yes; then
- echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
--echo "configure:1277: checking for GNU ld" >&5
-+echo "configure:1568: checking for GNU ld" >&5
- else
- echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
--echo "configure:1280: checking for non-GNU ld" >&5
-+echo "configure:1571: checking for non-GNU ld" >&5
- fi
--if eval "test \"`echo '$''{'ac_cv_path_LD'+set}'`\" = set"; then
-+if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- if test -z "$LD"; then
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-- ac_cv_path_LD="$ac_dir/$ac_prog"
-+ lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
-- if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
-+ if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
- test "$with_gnu_ld" != no && break
- else
- test "$with_gnu_ld" != yes && break
-@@ -1299,11 +1590,11 @@
- done
- IFS="$ac_save_ifs"
- else
-- ac_cv_path_LD="$LD" # Let the user override the test with a path.
-+ lt_cv_path_LD="$LD" # Let the user override the test with a path.
- fi
- fi
-
--LD="$ac_cv_path_LD"
-+LD="$lt_cv_path_LD"
- if test -n "$LD"; then
- echo "$ac_t""$LD" 1>&6
- else
-@@ -1311,245 +1602,3880 @@
- fi
- test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
- echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
--echo "configure:1315: checking if the linker ($LD) is GNU ld" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_gnu_ld'+set}'`\" = set"; then
-+echo "configure:1606: checking if the linker ($LD) is GNU ld" >&5
-+if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- # I'd rather use --version here, but apparently some GNU ld's only accept -v.
- if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-- ac_cv_prog_gnu_ld=yes
-+ lt_cv_prog_gnu_ld=yes
- else
-- ac_cv_prog_gnu_ld=no
-+ lt_cv_prog_gnu_ld=no
- fi
- fi
-
--echo "$ac_t""$ac_cv_prog_gnu_ld" 1>&6
-+echo "$ac_t""$lt_cv_prog_gnu_ld" 1>&6
-+with_gnu_ld=$lt_cv_prog_gnu_ld
-+
-+
-+echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-+echo "configure:1623: checking for $LD option to reload object files" >&5
-+if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ lt_cv_ld_reload_flag='-r'
-+fi
-
-+echo "$ac_t""$lt_cv_ld_reload_flag" 1>&6
-+reload_flag=$lt_cv_ld_reload_flag
-+test -n "$reload_flag" && reload_flag=" $reload_flag"
-
- echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
--echo "configure:1331: checking for BSD-compatible nm" >&5
--if eval "test \"`echo '$''{'ac_cv_path_NM'+set}'`\" = set"; then
-+echo "configure:1635: checking for BSD-compatible nm" >&5
-+if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- if test -n "$NM"; then
- # Let the user override the test.
-- ac_cv_path_NM="$NM"
-+ lt_cv_path_NM="$NM"
- else
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
- test -z "$ac_dir" && ac_dir=.
-- if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
-+ tmp_nm=$ac_dir/${ac_tool_prefix}nm
-+ if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
-- if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-- ac_cv_path_NM="$ac_dir/nm -B"
-+ # Tru64's nm complains that /dev/null is an invalid object file
-+ if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
-+ lt_cv_path_NM="$tmp_nm -B"
- break
-- elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-- ac_cv_path_NM="$ac_dir/nm -p"
-+ elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-+ lt_cv_path_NM="$tmp_nm -p"
- break
- else
-- ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
-+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- fi
- fi
- done
- IFS="$ac_save_ifs"
-- test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
-+ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
-+fi
-+fi
-+
-+NM="$lt_cv_path_NM"
-+echo "$ac_t""$NM" 1>&6
-+
-+echo $ac_n "checking for a sed that does not truncate output""... $ac_c" 1>&6
-+echo "configure:1673: checking for a sed that does not truncate output" >&5
-+if eval "test \"`echo '$''{'lt_cv_path_SED'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ # Loop through the user's path and test for sed and gsed.
-+# Then use that list of sed's as ones to test for truncation.
-+as_executable_p="test -f"
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+ IFS=$as_save_IFS
-+ test -z "$as_dir" && as_dir=.
-+ for ac_prog in sed gsed; do
-+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
-+ _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
-+ fi
-+ done
-+ done
-+done
-+
-+ # Create a temporary directory, and hook for its removal unless debugging.
-+$debug ||
-+{
-+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
-+ trap '{ (exit 1); exit 1; }' 1 2 13 15
-+}
-+
-+# Create a (secure) tmp directory for tmp files.
-+: ${TMPDIR=/tmp}
-+{
-+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
-+ test -n "$tmp" && test -d "$tmp"
-+} ||
-+{
-+ tmp=$TMPDIR/sed$$-$RANDOM
-+ (umask 077 && mkdir $tmp)
-+} ||
-+{
-+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2
-+ { (exit 1); exit 1; }
-+}
-+ _max=0
-+ _count=0
-+ # Add /usr/xpg4/bin/sed as it is typically found on Solaris
-+ # along with /bin/sed that truncates output.
-+ for _sed in $_sed_list /usr/xpg4/bin/sed; do
-+ test ! -f ${_sed} && break
-+ cat /dev/null > "$tmp/sed.in"
-+ _count=0
-+ echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
-+ # Check for GNU sed and select it if it is found.
-+ if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
-+ lt_cv_path_SED=${_sed}
-+ break
-+ fi
-+ while true; do
-+ cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
-+ mv "$tmp/sed.tmp" "$tmp/sed.in"
-+ cp "$tmp/sed.in" "$tmp/sed.nl"
-+ echo >>"$tmp/sed.nl"
-+ ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
-+ cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
-+ # 40000 chars as input seems more than enough
-+ test $_count -gt 10 && break
-+ _count=`expr $_count + 1`
-+ if test $_count -gt $_max; then
-+ _max=$_count
-+ lt_cv_path_SED=$_sed
-+ fi
-+ done
-+ done
-+ rm -rf "$tmp"
-+
-+fi
-+
-+if test "X$SED" != "X"; then
-+ lt_cv_path_SED=$SED
-+else
-+ SED=$lt_cv_path_SED
-+fi
-+echo "$ac_t""$SED" 1>&6
-+
-+echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-+echo "configure:1757: checking whether ln -s works" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ rm -f conftestdata
-+if ln -s X conftestdata 2>/dev/null
-+then
-+ rm -f conftestdata
-+ ac_cv_prog_LN_S="ln -s"
-+else
-+ ac_cv_prog_LN_S=ln
- fi
- fi
-+LN_S="$ac_cv_prog_LN_S"
-+if test "$ac_cv_prog_LN_S" = "ln -s"; then
-+ echo "$ac_t""yes" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+echo $ac_n "checking how to recognise dependent libraries""... $ac_c" 1>&6
-+echo "configure:1778: checking how to recognise dependent libraries" >&5
-+if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ lt_cv_file_magic_cmd='$MAGIC_CMD'
-+lt_cv_file_magic_test_file=
-+lt_cv_deplibs_check_method='unknown'
-+# Need to set the preceding variable on all platforms that support
-+# interlibrary dependencies.
-+# 'none' -- dependencies not supported.
-+# `unknown' -- same as none, but documents that we really don't know.
-+# 'pass_all' -- all dependencies passed with no checks.
-+# 'test_compile' -- check by making test program.
-+# 'file_magic [[regex]]' -- check by looking for files in library path
-+# which responds to the $file_magic_cmd with a given egrep regex.
-+# If you have `file' or equivalent on your system and you're not sure
-+# whether `pass_all' will *always* work, you probably want this one.
-+
-+case $host_os in
-+aix4* | aix5*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+beos*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+bsdi4*)
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
-+ lt_cv_file_magic_cmd='/usr/bin/file -L'
-+ lt_cv_file_magic_test_file=/shlib/libc.so
-+ ;;
-+
-+cygwin* | mingw* | pw32*)
-+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
-+ lt_cv_file_magic_cmd='$OBJDUMP -f'
-+ ;;
-+
-+darwin* | rhapsody*)
-+ lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
-+ lt_cv_file_magic_cmd='/usr/bin/file -L'
-+ case "$host_os" in
-+ rhapsody* | darwin1.[012])
-+ lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
-+ ;;
-+ *) # Darwin 1.3 on
-+ lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
-+ ;;
-+ esac
-+ ;;
-+
-+freebsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
-+ case $host_cpu in
-+ i*86 )
-+ # Not sure whether the presence of OpenBSD here was a mistake.
-+ # Let's accept both of them until this is cleared up.
-+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-+ ;;
-+ esac
-+ else
-+ lt_cv_deplibs_check_method=pass_all
-+ fi
-+ ;;
-+
-+gnu*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+hpux10.20*|hpux11*)
-+ lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
-+ ;;
-+
-+irix5* | irix6* | nonstopux*)
-+ case $host_os in
-+ irix5* | nonstopux*)
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
-+ ;;
-+ *)
-+ case $LD in
-+ *-32|*"-32 ") libmagic=32-bit;;
-+ *-n32|*"-n32 ") libmagic=N32;;
-+ *-64|*"-64 ") libmagic=64-bit;;
-+ *) libmagic=never-match;;
-+ esac
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"
-+ ;;
-+ esac
-+ lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+# This must be Linux ELF.
-+linux-gnu*|kfreebsd*-gnu)
-+ case $host_cpu in
-+ alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*)
-+ lt_cv_deplibs_check_method=pass_all ;;
-+ *)
-+ # glibc up to 2.1.1 does not perform some relocations on ARM
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;;
-+ esac
-+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
-+ ;;
-+
-+netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
-+ lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
-+ else
-+ lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$'
-+ fi
-+ ;;
-+
-+newos6*)
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
-+ ;;
-+
-+openbsd*)
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
-+ else
-+ lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
-+ fi
-+ ;;
-+
-+osf3* | osf4* | osf5*)
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
-+ lt_cv_file_magic_test_file=/shlib/libc.so
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+sco3.2v5*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+solaris*)
-+ lt_cv_deplibs_check_method=pass_all
-+ lt_cv_file_magic_test_file=/lib/libc.so
-+ ;;
-+
-+sysv5uw[78]* | sysv4*uw2*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ case $host_vendor in
-+ motorola)
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
-+ ;;
-+ ncr)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+ sequent)
-+ lt_cv_file_magic_cmd='/bin/file'
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
-+ ;;
-+ sni)
-+ lt_cv_file_magic_cmd='/bin/file'
-+ lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
-+ lt_cv_file_magic_test_file=/lib/libc.so
-+ ;;
-+ siemens)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+ esac
-+ ;;
-+esac
-+
-+fi
-+
-+echo "$ac_t""$lt_cv_deplibs_check_method" 1>&6
-+file_magic_cmd=$lt_cv_file_magic_cmd
-+deplibs_check_method=$lt_cv_deplibs_check_method
-+
-+echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-+echo "configure:1964: checking for object suffix" >&5
-+if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ rm -f conftest*
-+echo 'int i = 1;' > conftest.$ac_ext
-+if { (eval echo configure:1970: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ for ac_file in conftest.*; do
-+ case $ac_file in
-+ *.c) ;;
-+ *) ac_cv_objext=`echo $ac_file | sed -e s/conftest.//` ;;
-+ esac
-+ done
-+else
-+ { echo "configure: error: installation or configuration problem; compiler does not work" 1>&2; exit 1; }
-+fi
-+rm -f conftest*
-+fi
-+
-+echo "$ac_t""$ac_cv_objext" 1>&6
-+OBJEXT=$ac_cv_objext
-+ac_objext=$ac_cv_objext
-+
-+
-+
-+echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-+echo "configure:1990: checking for executable suffix" >&5
-+if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test "$CYGWIN" = yes || test "$MINGW32" = yes; then
-+ ac_cv_exeext=.exe
-+else
-+ rm -f conftest*
-+ echo 'int main () { return 0; }' > conftest.$ac_ext
-+ ac_cv_exeext=
-+ if { (eval echo configure:2000: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
-+ for file in conftest.*; do
-+ case $file in
-+ *.$ac_ext | *.c | *.o | *.obj) ;;
-+ *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
-+ esac
-+ done
-+ else
-+ { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; }
-+ fi
-+ rm -f conftest*
-+ test x"${ac_cv_exeext}" = x && ac_cv_exeext=no
-+fi
-+fi
-+
-+EXEEXT=""
-+test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext}
-+echo "$ac_t""${ac_cv_exeext}" 1>&6
-+ac_exeext=$EXEEXT
-+
-+if test $host != $build; then
-+ ac_tool_prefix=${host_alias}-
-+else
-+ ac_tool_prefix=
-+fi
-+
-+
-+
-+
-+# Check for command to grab the raw symbol name followed by C symbol from nm.
-+echo $ac_n "checking command to parse $NM output""... $ac_c" 1>&6
-+echo "configure:2031: checking command to parse $NM output" >&5
-+if eval "test \"`echo '$''{'lt_cv_sys_global_symbol_pipe'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+
-+# These are sane defaults that work on at least a few old systems.
-+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-+
-+# Character class describing NM global symbol codes.
-+symcode='[BCDEGRST]'
-+
-+# Regexp to match symbols that can be accessed directly from C.
-+sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
-+
-+# Transform the above into a raw symbol and a C symbol.
-+symxfrm='\1 \2\3 \3'
-+
-+# Transform an extracted symbol line into a proper C declaration
-+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
-+
-+# Transform an extracted symbol line into symbol name and symbol address
-+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
-+
-+# Define system-specific variables.
-+case $host_os in
-+aix*)
-+ symcode='[BCDT]'
-+ ;;
-+cygwin* | mingw* | pw32*)
-+ symcode='[ABCDGISTW]'
-+ ;;
-+hpux*) # Its linker distinguishes data from code symbols
-+ lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-+ lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
-+ ;;
-+irix* | nonstopux*)
-+ symcode='[BCDEGRST]'
-+ ;;
-+osf*)
-+ symcode='[BCDEGQRST]'
-+ ;;
-+solaris* | sysv5*)
-+ symcode='[BDT]'
-+ ;;
-+sysv4)
-+ symcode='[DFNSTU]'
-+ ;;
-+esac
-+
-+# Handle CRLF in mingw tool chain
-+opt_cr=
-+case $host_os in
-+mingw*)
-+ opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
-+ ;;
-+esac
-+
-+# If we're using GNU nm, then use its standard symbol codes.
-+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
-+ symcode='[ABCDGISTW]'
-+fi
-+
-+# Try without a prefix undercore, then with it.
-+for ac_symprfx in "" "_"; do
-+
-+ # Write the raw and C identifiers.
-+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
-+
-+ # Check to see that the pipe works correctly.
-+ pipe_works=no
-+ rm -f conftest*
-+ cat > conftest.$ac_ext <<EOF
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+char nm_test_var;
-+void nm_test_func(){}
-+#ifdef __cplusplus
-+}
-+#endif
-+int main(){nm_test_var='a';nm_test_func();return(0);}
-+EOF
-+
-+ if { (eval echo configure:2114: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ # Now try to grab the symbols.
-+ nlist=conftest.nm
-+ if { (eval echo configure:2117: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\") 1>&5; (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5; } && test -s "$nlist"; then
-+ # Try sorting and uniquifying the output.
-+ if sort "$nlist" | uniq > "$nlist"T; then
-+ mv -f "$nlist"T "$nlist"
-+ else
-+ rm -f "$nlist"T
-+ fi
-+
-+ # Make sure that we snagged all the symbols we need.
-+ if egrep ' nm_test_var$' "$nlist" >/dev/null; then
-+ if egrep ' nm_test_func$' "$nlist" >/dev/null; then
-+ cat <<EOF > conftest.$ac_ext
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
-+EOF
-+ # Now generate the symbol file.
-+ eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
-+
-+ cat <<EOF >> conftest.$ac_ext
-+#if defined (__STDC__) && __STDC__
-+# define lt_ptr void *
-+#else
-+# define lt_ptr char *
-+# define const
-+#endif
-+
-+/* The mapping between symbol names and symbols. */
-+const struct {
-+ const char *name;
-+ lt_ptr address;
-+}
-+lt_preloaded_symbols[] =
-+{
-+EOF
-+ sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
-+ cat <<\EOF >> conftest.$ac_ext
-+ {0, (lt_ptr) 0}
-+};
-+
-+#ifdef __cplusplus
-+}
-+#endif
-+EOF
-+ # Now try linking the two files.
-+ mv conftest.$ac_objext conftstm.$ac_objext
-+ save_LIBS="$LIBS"
-+ save_CFLAGS="$CFLAGS"
-+ LIBS="conftstm.$ac_objext"
-+ CFLAGS="$CFLAGS$no_builtin_flag"
-+ if { (eval echo configure:2168: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest$ac_exeext; then
-+ pipe_works=yes
-+ fi
-+ LIBS="$save_LIBS"
-+ CFLAGS="$save_CFLAGS"
-+ else
-+ echo "cannot find nm_test_func in $nlist" >&5
-+ fi
-+ else
-+ echo "cannot find nm_test_var in $nlist" >&5
-+ fi
-+ else
-+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
-+ fi
-+ else
-+ echo "$progname: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ fi
-+ rm -f conftest* conftst*
-+
-+ # Do not use the global_symbol_pipe unless it works.
-+ if test "$pipe_works" = yes; then
-+ break
-+ else
-+ lt_cv_sys_global_symbol_pipe=
-+ fi
-+done
-+
-+fi
-+
-+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
-+if test -z "$lt_cv_sys_global_symbol_pipe"; then
-+ global_symbol_to_cdecl=
-+ global_symbol_to_c_name_address=
-+else
-+ global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
-+ global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
-+fi
-+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
-+then
-+ echo "$ac_t""failed" 1>&6
-+else
-+ echo "$ac_t""ok" 1>&6
-+fi
-+
-+for ac_hdr in dlfcn.h
-+do
-+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-+echo "configure:2217: checking for $ac_hdr" >&5
-+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 2222 "configure"
-+#include "confdefs.h"
-+#include <$ac_hdr>
-+EOF
-+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-+{ (eval echo configure:2227: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-+if test -z "$ac_err"; then
-+ rm -rf conftest*
-+ eval "ac_cv_header_$ac_safe=yes"
-+else
-+ echo "$ac_err" >&5
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_header_$ac_safe=no"
-+fi
-+rm -f conftest*
-+fi
-+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-+ cat >> confdefs.h <<EOF
-+#define $ac_tr_hdr 1
-+EOF
-+
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+done
-+
-+
-+
-+
-+
-+
-+# Only perform the check for file, if the check method requires it
-+case $deplibs_check_method in
-+file_magic*)
-+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-+ echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-+echo "configure:2263: checking for ${ac_tool_prefix}file" >&5
-+if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ case $MAGIC_CMD in
-+ /*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-+ ;;
-+ ?:/*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
-+ ;;
-+ *)
-+ ac_save_MAGIC_CMD="$MAGIC_CMD"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="/usr/bin:$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/${ac_tool_prefix}file; then
-+ lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
-+ if test -n "$file_magic_test_file"; then
-+ case $deplibs_check_method in
-+ "file_magic "*)
-+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
-+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-+ egrep "$file_magic_regex" > /dev/null; then
-+ :
-+ else
-+ cat <<EOF 1>&2
-+
-+*** Warning: the command libtool uses to detect shared libraries,
-+*** $file_magic_cmd, produces output that libtool cannot recognize.
-+*** The result is that libtool may fail to recognize shared libraries
-+*** as such. This will affect the creation of libtool libraries that
-+*** depend on shared libraries, but programs linked with such libtool
-+*** libraries will work regardless of this problem. Nevertheless, you
-+*** may want to report the problem to your system manager and/or to
-+*** bug-libtool@gnu.org
-+
-+EOF
-+ fi ;;
-+ esac
-+ fi
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ MAGIC_CMD="$ac_save_MAGIC_CMD"
-+ ;;
-+esac
-+fi
-+
-+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+if test -n "$MAGIC_CMD"; then
-+ echo "$ac_t""$MAGIC_CMD" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+if test -z "$lt_cv_path_MAGIC_CMD"; then
-+ if test -n "$ac_tool_prefix"; then
-+ echo $ac_n "checking for file""... $ac_c" 1>&6
-+echo "configure:2325: checking for file" >&5
-+if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ case $MAGIC_CMD in
-+ /*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-+ ;;
-+ ?:/*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
-+ ;;
-+ *)
-+ ac_save_MAGIC_CMD="$MAGIC_CMD"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="/usr/bin:$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/file; then
-+ lt_cv_path_MAGIC_CMD="$ac_dir/file"
-+ if test -n "$file_magic_test_file"; then
-+ case $deplibs_check_method in
-+ "file_magic "*)
-+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
-+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-+ egrep "$file_magic_regex" > /dev/null; then
-+ :
-+ else
-+ cat <<EOF 1>&2
-+
-+*** Warning: the command libtool uses to detect shared libraries,
-+*** $file_magic_cmd, produces output that libtool cannot recognize.
-+*** The result is that libtool may fail to recognize shared libraries
-+*** as such. This will affect the creation of libtool libraries that
-+*** depend on shared libraries, but programs linked with such libtool
-+*** libraries will work regardless of this problem. Nevertheless, you
-+*** may want to report the problem to your system manager and/or to
-+*** bug-libtool@gnu.org
-+
-+EOF
-+ fi ;;
-+ esac
-+ fi
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ MAGIC_CMD="$ac_save_MAGIC_CMD"
-+ ;;
-+esac
-+fi
-+
-+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+if test -n "$MAGIC_CMD"; then
-+ echo "$ac_t""$MAGIC_CMD" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+ else
-+ MAGIC_CMD=:
-+ fi
-+fi
-+
-+ fi
-+ ;;
-+esac
-+
-+# 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6
-+echo "configure:2396: checking for $ac_word" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test -n "$RANLIB"; then
-+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-+else
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$ac_word; then
-+ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+fi
-+fi
-+RANLIB="$ac_cv_prog_RANLIB"
-+if test -n "$RANLIB"; then
-+ echo "$ac_t""$RANLIB" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+
-+if test -z "$ac_cv_prog_RANLIB"; then
-+if test -n "$ac_tool_prefix"; then
-+ # Extract the first word of "ranlib", so it can be a program name with args.
-+set dummy ranlib; ac_word=$2
-+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-+echo "configure:2428: checking for $ac_word" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test -n "$RANLIB"; then
-+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-+else
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$ac_word; then
-+ ac_cv_prog_RANLIB="ranlib"
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-+fi
-+fi
-+RANLIB="$ac_cv_prog_RANLIB"
-+if test -n "$RANLIB"; then
-+ echo "$ac_t""$RANLIB" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+else
-+ RANLIB=":"
-+fi
-+fi
-+
-+# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-+set dummy ${ac_tool_prefix}strip; ac_word=$2
-+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-+echo "configure:2463: checking for $ac_word" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test -n "$STRIP"; then
-+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-+else
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$ac_word; then
-+ ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+fi
-+fi
-+STRIP="$ac_cv_prog_STRIP"
-+if test -n "$STRIP"; then
-+ echo "$ac_t""$STRIP" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+
-+if test -z "$ac_cv_prog_STRIP"; then
-+if test -n "$ac_tool_prefix"; then
-+ # Extract the first word of "strip", so it can be a program name with args.
-+set dummy strip; ac_word=$2
-+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-+echo "configure:2495: checking for $ac_word" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test -n "$STRIP"; then
-+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-+else
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$ac_word; then
-+ ac_cv_prog_STRIP="strip"
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ test -z "$ac_cv_prog_STRIP" && ac_cv_prog_STRIP=":"
-+fi
-+fi
-+STRIP="$ac_cv_prog_STRIP"
-+if test -n "$STRIP"; then
-+ echo "$ac_t""$STRIP" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+else
-+ STRIP=":"
-+fi
-+fi
-+
-+
-+enable_dlopen=no
-+enable_win32_dll=no
-+
-+# Check whether --enable-libtool-lock or --disable-libtool-lock was given.
-+if test "${enable_libtool_lock+set}" = set; then
-+ enableval="$enable_libtool_lock"
-+ :
-+fi
-+
-+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-+
-+# Some flags need to be propagated to the compiler or linker for good
-+# libtool support.
-+case $host in
-+*-*-irix6*)
-+ # Find out which ABI we are using.
-+ echo '#line 2544 "configure"' > conftest.$ac_ext
-+ if { (eval echo configure:2545: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ case `/usr/bin/file conftest.$ac_objext` in
-+ *32-bit*)
-+ LD="${LD-ld} -32"
-+ ;;
-+ *N32*)
-+ LD="${LD-ld} -n32"
-+ ;;
-+ *64-bit*)
-+ LD="${LD-ld} -64"
-+ ;;
-+ esac
-+ fi
-+ rm -rf conftest*
-+ ;;
-+
-+*-*-sco3.2v5*)
-+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-+ SAVE_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -belf"
-+ echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-+echo "configure:2566: checking whether the C compiler needs -belf" >&5
-+if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+
-+ ac_ext=c
-+# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-+ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-+cross_compiling=$ac_cv_prog_cc_cross
-+
-+ cat > conftest.$ac_ext <<EOF
-+#line 2579 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:2586: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ lt_cv_cc_needs_belf=yes
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ lt_cv_cc_needs_belf=no
-+fi
-+rm -f conftest*
-+ ac_ext=c
-+# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-+ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-+cross_compiling=$ac_cv_prog_cc_cross
-+
-+fi
-+
-+echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
-+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-+ CFLAGS="$SAVE_CFLAGS"
-+ fi
-+ ;;
-+
-+
-+esac
-+
-+# Sed substitution that helps us do robust quoting. It backslashifies
-+# metacharacters that are still active within double-quoted strings.
-+Xsed='sed -e s/^X//'
-+sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
-+
-+# Same as above, but do not quote variable references.
-+double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
-+
-+# Sed substitution to delay expansion of an escaped shell variable in a
-+# double_quote_subst'ed string.
-+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-+
-+# Constants:
-+rm="rm -f"
-+
-+# Global variables:
-+default_ofile=libtool
-+can_build_shared=yes
-+
-+# All known linkers require a `.a' archive for static linking (except M$VC,
-+# which needs '.lib').
-+libext=a
-+ltmain="$ac_aux_dir/ltmain.sh"
-+ofile="$default_ofile"
-+with_gnu_ld="$lt_cv_prog_gnu_ld"
-+need_locks="$enable_libtool_lock"
-+
-+old_CC="$CC"
-+old_CFLAGS="$CFLAGS"
-+
-+# Set sane defaults for various variables
-+test -z "$AR" && AR=ar
-+test -z "$AR_FLAGS" && AR_FLAGS=cru
-+test -z "$AS" && AS=as
-+test -z "$CC" && CC=cc
-+test -z "$DLLTOOL" && DLLTOOL=dlltool
-+test -z "$LD" && LD=ld
-+test -z "$LN_S" && LN_S="ln -s"
-+test -z "$MAGIC_CMD" && MAGIC_CMD=file
-+test -z "$NM" && NM=nm
-+test -z "$OBJDUMP" && OBJDUMP=objdump
-+test -z "$RANLIB" && RANLIB=:
-+test -z "$STRIP" && STRIP=:
-+test -z "$ac_objext" && ac_objext=o
-+
-+if test x"$host" != x"$build"; then
-+ ac_tool_prefix=${host_alias}-
-+else
-+ ac_tool_prefix=
-+fi
-+
-+# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
-+case $host_os in
-+linux-gnu*) ;;
-+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
-+esac
-+
-+case $host_os in
-+aix3*)
-+ # AIX sometimes has problems with the GCC collect2 program. For some
-+ # reason, if we set the COLLECT_NAMES environment variable, the problems
-+ # vanish in a puff of smoke.
-+ if test "X${COLLECT_NAMES+set}" != Xset; then
-+ COLLECT_NAMES=
-+ export COLLECT_NAMES
-+ fi
-+ ;;
-+esac
-+
-+# Determine commands to create old-style static archives.
-+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
-+old_postinstall_cmds='chmod 644 $oldlib'
-+old_postuninstall_cmds=
-+
-+if test -n "$RANLIB"; then
-+ case $host_os in
-+ openbsd*)
-+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
-+ ;;
-+ *)
-+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
-+ ;;
-+ esac
-+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-+fi
-+
-+# Allow CC to be a program name with arguments.
-+set dummy $CC
-+compiler="$2"
-+
-+echo $ac_n "checking for objdir""... $ac_c" 1>&6
-+echo "configure:2706: checking for objdir" >&5
-+rm -f .libs 2>/dev/null
-+mkdir .libs 2>/dev/null
-+if test -d .libs; then
-+ objdir=.libs
-+else
-+ # MS-DOS does not allow filenames that begin with a dot.
-+ objdir=_libs
-+fi
-+rmdir .libs 2>/dev/null
-+echo "$ac_t""$objdir" 1>&6
-+
-+
-+# Check whether --with-pic or --without-pic was given.
-+if test "${with_pic+set}" = set; then
-+ withval="$with_pic"
-+ pic_mode="$withval"
-+else
-+ pic_mode=default
-+fi
-+
-+test -z "$pic_mode" && pic_mode=default
-+
-+# We assume here that the value for lt_cv_prog_cc_pic will not be cached
-+# in isolation, and that seeing it set (from the cache) indicates that
-+# the associated values are set (in the cache) correctly too.
-+echo $ac_n "checking for $compiler option to produce PIC""... $ac_c" 1>&6
-+echo "configure:2733: checking for $compiler option to produce PIC" >&5
-+if eval "test \"`echo '$''{'lt_cv_prog_cc_pic'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ lt_cv_prog_cc_pic=
-+ lt_cv_prog_cc_shlib=
-+ lt_cv_prog_cc_wl=
-+ lt_cv_prog_cc_static=
-+ lt_cv_prog_cc_no_builtin=
-+ lt_cv_prog_cc_can_build_shared=$can_build_shared
-+
-+ if test "$GCC" = yes; then
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-static'
-+
-+ case $host_os in
-+ aix*)
-+ # Below there is a dirty hack to force normal static linking with -ldl
-+ # The problem is because libdl dynamically linked with both libc and
-+ # libC (AIX C++ library), which obviously doesn't included in libraries
-+ # list by gcc. This cause undefined symbols with -static flags.
-+ # This hack allows C programs to be linked with "-static -ldl", but
-+ # not sure about C++ programs.
-+ lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
-+ ;;
-+ amigaos*)
-+ # FIXME: we need at least 68020 code to build shared libraries, but
-+ # adding the `-m68020' flag to GCC prevents building anything better,
-+ # like `-m68040'.
-+ lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
-+ ;;
-+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-+ # PIC is the default for these OSes.
-+ ;;
-+ darwin* | rhapsody*)
-+ # PIC is the default on this platform
-+ # Common symbols not allowed in MH_DYLIB files
-+ lt_cv_prog_cc_pic='-fno-common'
-+ ;;
-+ cygwin* | mingw* | pw32* | os2*)
-+ # This hack is so that the source file can tell whether it is being
-+ # built for inclusion in a dll (and should export symbols for example).
-+ lt_cv_prog_cc_pic='-DDLL_EXPORT'
-+ ;;
-+ sysv4*MP*)
-+ if test -d /usr/nec; then
-+ lt_cv_prog_cc_pic=-Kconform_pic
-+ fi
-+ ;;
-+ *)
-+ lt_cv_prog_cc_pic='-fPIC'
-+ ;;
-+ esac
-+ else
-+ # PORTME Check for PIC flags for the system compiler.
-+ case $host_os in
-+ aix3* | aix4* | aix5*)
-+ lt_cv_prog_cc_wl='-Wl,'
-+ # All AIX code is PIC.
-+ if test "$host_cpu" = ia64; then
-+ # AIX 5 now supports IA64 processor
-+ lt_cv_prog_cc_static='-Bstatic'
-+ else
-+ lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
-+ fi
-+ ;;
-+
-+ hpux9* | hpux10* | hpux11*)
-+ # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
-+ lt_cv_prog_cc_pic='+Z'
-+ ;;
-+
-+ irix5* | irix6* | nonstopux*)
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-non_shared'
-+ # PIC (with -KPIC) is the default.
-+ ;;
-+
-+ cygwin* | mingw* | pw32* | os2*)
-+ # This hack is so that the source file can tell whether it is being
-+ # built for inclusion in a dll (and should export symbols for example).
-+ lt_cv_prog_cc_pic='-DDLL_EXPORT'
-+ ;;
-+
-+ newsos6)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ ;;
-+
-+ osf3* | osf4* | osf5*)
-+ # All OSF/1 code is PIC.
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-non_shared'
-+ ;;
-+
-+ sco3.2v5*)
-+ lt_cv_prog_cc_pic='-Kpic'
-+ lt_cv_prog_cc_static='-dn'
-+ lt_cv_prog_cc_shlib='-belf'
-+ ;;
-+
-+ solaris*)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Wl,'
-+ ;;
-+
-+ sunos4*)
-+ lt_cv_prog_cc_pic='-PIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Qoption ld '
-+ ;;
-+
-+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Wl,'
-+ ;;
-+
-+ uts4*)
-+ lt_cv_prog_cc_pic='-pic'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ ;;
-+
-+ sysv4*MP*)
-+ if test -d /usr/nec ;then
-+ lt_cv_prog_cc_pic='-Kconform_pic'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ fi
-+ ;;
-+
-+ *)
-+ lt_cv_prog_cc_can_build_shared=no
-+ ;;
-+ esac
-+ fi
-+
-+fi
-+
-+if test -z "$lt_cv_prog_cc_pic"; then
-+ echo "$ac_t""none" 1>&6
-+else
-+ echo "$ac_t""$lt_cv_prog_cc_pic" 1>&6
-+
-+ # Check to make sure the pic_flag actually works.
-+ echo $ac_n "checking if $compiler PIC flag $lt_cv_prog_cc_pic works""... $ac_c" 1>&6
-+echo "configure:2881: checking if $compiler PIC flag $lt_cv_prog_cc_pic works" >&5
-+ if eval "test \"`echo '$''{'lt_cv_prog_cc_pic_works'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
-+ cat > conftest.$ac_ext <<EOF
-+#line 2888 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:2895: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ case $host_os in
-+ hpux9* | hpux10* | hpux11*)
-+ # On HP-UX, both CC and GCC only warn that PIC is supported... then
-+ # they create non-PIC objects. So, if there were any warnings, we
-+ # assume that PIC is not supported.
-+ if test -s conftest.err; then
-+ lt_cv_prog_cc_pic_works=no
-+ else
-+ lt_cv_prog_cc_pic_works=yes
-+ fi
-+ ;;
-+ *)
-+ lt_cv_prog_cc_pic_works=yes
-+ ;;
-+ esac
-+
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ lt_cv_prog_cc_pic_works=no
-+
-+fi
-+rm -f conftest*
-+ CFLAGS="$save_CFLAGS"
-+
-+fi
-+
-+
-+ if test "X$lt_cv_prog_cc_pic_works" = Xno; then
-+ lt_cv_prog_cc_pic=
-+ lt_cv_prog_cc_can_build_shared=no
-+ else
-+ lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
-+ fi
-+
-+ echo "$ac_t""$lt_cv_prog_cc_pic_works" 1>&6
-+fi
-+
-+# Check for any special shared library compilation flags.
-+if test -n "$lt_cv_prog_cc_shlib"; then
-+ echo "configure: warning: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" 1>&2
-+ if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$lt_cv_prog_cc_shlib[ ]" >/dev/null; then :
-+ else
-+ echo "configure: warning: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" 1>&2
-+ lt_cv_prog_cc_can_build_shared=no
-+ fi
-+fi
-+
-+echo $ac_n "checking if $compiler static flag $lt_cv_prog_cc_static works""... $ac_c" 1>&6
-+echo "configure:2947: checking if $compiler static flag $lt_cv_prog_cc_static works" >&5
-+if eval "test \"`echo '$''{'lt_cv_prog_cc_static_works'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ lt_cv_prog_cc_static_works=no
-+ save_LDFLAGS="$LDFLAGS"
-+ LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
-+ cat > conftest.$ac_ext <<EOF
-+#line 2955 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:2962: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ lt_cv_prog_cc_static_works=yes
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest*
-+ LDFLAGS="$save_LDFLAGS"
-+
-+fi
-+
-+
-+# Belt *and* braces to stop my trousers falling down:
-+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
-+echo "$ac_t""$lt_cv_prog_cc_static_works" 1>&6
-+
-+pic_flag="$lt_cv_prog_cc_pic"
-+special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
-+wl="$lt_cv_prog_cc_wl"
-+link_static_flag="$lt_cv_prog_cc_static"
-+no_builtin_flag="$lt_cv_prog_cc_no_builtin"
-+can_build_shared="$lt_cv_prog_cc_can_build_shared"
-+
-+
-+# Check to see if options -o and -c are simultaneously supported by compiler
-+echo $ac_n "checking if $compiler supports -c -o file.$ac_objext""... $ac_c" 1>&6
-+echo "configure:2989: checking if $compiler supports -c -o file.$ac_objext" >&5
-+if eval "test \"`echo '$''{'lt_cv_compiler_c_o'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+
-+$rm -r conftest 2>/dev/null
-+mkdir conftest
-+cd conftest
-+echo "int some_variable = 0;" > conftest.$ac_ext
-+mkdir out
-+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
-+# that will create temporary files in the current directory regardless of
-+# the output directory. Thus, making CWD read-only will cause this test
-+# to fail, enabling locking or at least warning the user not to do parallel
-+# builds.
-+chmod -w .
-+save_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
-+compiler_c_o=no
-+if { (eval echo configure:3008: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s out/conftest.err; then
-+ lt_cv_compiler_c_o=no
-+ else
-+ lt_cv_compiler_c_o=yes
-+ fi
-+else
-+ # Append any errors to the config.log.
-+ cat out/conftest.err 1>&5
-+ lt_cv_compiler_c_o=no
-+fi
-+CFLAGS="$save_CFLAGS"
-+chmod u+w .
-+$rm conftest* out/*
-+rmdir out
-+cd ..
-+rmdir conftest
-+$rm -r conftest 2>/dev/null
-+
-+fi
-+
-+compiler_c_o=$lt_cv_compiler_c_o
-+echo "$ac_t""$compiler_c_o" 1>&6
-+
-+if test x"$compiler_c_o" = x"yes"; then
-+ # Check to see if we can write to a .lo
-+ echo $ac_n "checking if $compiler supports -c -o file.lo""... $ac_c" 1>&6
-+echo "configure:3037: checking if $compiler supports -c -o file.lo" >&5
-+ if eval "test \"`echo '$''{'lt_cv_compiler_o_lo'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+
-+ lt_cv_compiler_o_lo=no
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -c -o conftest.lo"
-+ save_objext="$ac_objext"
-+ ac_objext=lo
-+ cat > conftest.$ac_ext <<EOF
-+#line 3048 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+int some_variable = 0;
-+; return 0; }
-+EOF
-+if { (eval echo configure:3055: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s conftest.err; then
-+ lt_cv_compiler_o_lo=no
-+ else
-+ lt_cv_compiler_o_lo=yes
-+ fi
-+
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest*
-+ ac_objext="$save_objext"
-+ CFLAGS="$save_CFLAGS"
-+
-+fi
-+
-+ compiler_o_lo=$lt_cv_compiler_o_lo
-+ echo "$ac_t""$compiler_o_lo" 1>&6
-+else
-+ compiler_o_lo=no
-+fi
-+
-+# Check to see if we can do hard links to lock some files if needed
-+hard_links="nottested"
-+if test "$compiler_c_o" = no && test "$need_locks" != no; then
-+ # do not overwrite the value of need_locks provided by the user
-+ echo $ac_n "checking if we can lock with hard links""... $ac_c" 1>&6
-+echo "configure:3086: checking if we can lock with hard links" >&5
-+ hard_links=yes
-+ $rm conftest*
-+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
-+ touch conftest.a
-+ ln conftest.a conftest.b 2>&5 || hard_links=no
-+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
-+ echo "$ac_t""$hard_links" 1>&6
-+ if test "$hard_links" = no; then
-+ echo "configure: warning: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" 1>&2
-+ need_locks=warn
-+ fi
-+else
-+ need_locks=no
-+fi
-+
-+if test "$GCC" = yes; then
-+ # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
-+ echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions""... $ac_c" 1>&6
-+echo "configure:3105: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-+ echo "int some_variable = 0;" > conftest.$ac_ext
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
-+ compiler_rtti_exceptions=no
-+ cat > conftest.$ac_ext <<EOF
-+#line 3111 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+int some_variable = 0;
-+; return 0; }
-+EOF
-+if { (eval echo configure:3118: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s conftest.err; then
-+ compiler_rtti_exceptions=no
-+ else
-+ compiler_rtti_exceptions=yes
-+ fi
-+
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest*
-+ CFLAGS="$save_CFLAGS"
-+ echo "$ac_t""$compiler_rtti_exceptions" 1>&6
-+
-+ if test "$compiler_rtti_exceptions" = "yes"; then
-+ no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
-+ else
-+ no_builtin_flag=' -fno-builtin'
-+ fi
-+fi
-+
-+# See if the linker supports building shared libraries.
-+echo $ac_n "checking whether the linker ($LD) supports shared libraries""... $ac_c" 1>&6
-+echo "configure:3145: checking whether the linker ($LD) supports shared libraries" >&5
-+
-+allow_undefined_flag=
-+no_undefined_flag=
-+need_lib_prefix=unknown
-+need_version=unknown
-+# when you set need_version to no, make sure it does not cause -set_version
-+# flags to be left without arguments
-+archive_cmds=
-+archive_expsym_cmds=
-+old_archive_from_new_cmds=
-+old_archive_from_expsyms_cmds=
-+export_dynamic_flag_spec=
-+whole_archive_flag_spec=
-+thread_safe_flag_spec=
-+hardcode_into_libs=no
-+hardcode_libdir_flag_spec=
-+hardcode_libdir_separator=
-+hardcode_direct=no
-+hardcode_minus_L=no
-+hardcode_shlibpath_var=unsupported
-+runpath_var=
-+link_all_deplibs=unknown
-+always_export_symbols=no
-+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
-+# include_expsyms should be a list of space-separated symbols to be *always*
-+# included in the symbol list
-+include_expsyms=
-+# exclude_expsyms can be an egrep regular expression of symbols to exclude
-+# it will be wrapped by ` (' and `)$', so one must not match beginning or
-+# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-+# as well as any symbol that contains `d'.
-+exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
-+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-+# platforms (ab)use it in PIC code, but their linkers get confused if
-+# the symbol is explicitly referenced. Since portable code cannot
-+# rely on this symbol name, it's probably fine to never include it in
-+# preloaded symbol tables.
-+extract_expsyms_cmds=
-+
-+case $host_os in
-+cygwin* | mingw* | pw32*)
-+ # FIXME: the MSVC++ port hasn't been tested in a loooong time
-+ # When not using gcc, we currently assume that we are using
-+ # Microsoft Visual C++.
-+ if test "$GCC" != yes; then
-+ with_gnu_ld=no
-+ fi
-+ ;;
-+openbsd*)
-+ with_gnu_ld=no
-+ ;;
-+esac
-+
-+ld_shlibs=yes
-+if test "$with_gnu_ld" = yes; then
-+ # If archive_cmds runs LD, not CC, wlarc should be empty
-+ wlarc='${wl}'
-+
-+ # See if GNU ld supports shared libraries.
-+ case $host_os in
-+ aix3* | aix4* | aix5*)
-+ # On AIX, the GNU linker is very broken
-+ # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
-+ ld_shlibs=no
-+ cat <<EOF 1>&2
-+
-+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-+*** to be unable to reliably create shared libraries on AIX.
-+*** Therefore, libtool is disabling shared libraries support. If you
-+*** really care for shared libraries, you may want to modify your PATH
-+*** so that a non-GNU linker is found, and then restart.
-+
-+EOF
-+ ;;
-+
-+ amigaos*)
-+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+
-+ # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-+ # that the semantics of dynamic libraries on AmigaOS, at least up
-+ # to version 4, is to share data among multiple programs linked
-+ # with the same dynamic library. Since this doesn't match the
-+ # behavior of shared libraries on other platforms, we can use
-+ # them.
-+ ld_shlibs=no
-+ ;;
-+
-+ beos*)
-+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ allow_undefined_flag=unsupported
-+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
-+ # support --undefined. This deserves some investigation. FIXME
-+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ # hardcode_libdir_flag_spec is actually meaningless, as there is
-+ # no search path for DLLs.
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ allow_undefined_flag=unsupported
-+ always_export_symbols=yes
-+
-+ extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
-+ sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
-+ test -f $output_objdir/impgen.exe || (cd $output_objdir && \
-+ if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
-+ else $CC -o impgen impgen.c ; fi)~
-+ $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
-+
-+ old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
-+
-+ # cygwin and mingw dlls have different entry points and sets of symbols
-+ # to exclude.
-+ # FIXME: what about values for MSVC?
-+ dll_entry=__cygwin_dll_entry@12
-+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
-+ case $host_os in
-+ mingw*)
-+ # mingw values
-+ dll_entry=_DllMainCRTStartup@12
-+ dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
-+ ;;
-+ esac
-+
-+ # mingw and cygwin differ, and it's simplest to just exclude the union
-+ # of the two symbol sets.
-+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
-+
-+ # recent cygwin and mingw systems supply a stub DllMain which the user
-+ # can override, but on older systems we have to supply one (in ltdll.c)
-+ if test "x$lt_cv_need_dllmain" = "xyes"; then
-+ ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
-+ ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
-+ test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
-+ else
-+ ltdll_obj=
-+ ltdll_cmds=
-+ fi
-+
-+ # Extract the symbol export list from an `--export-all' def file,
-+ # then regenerate the def file from the symbol export list, so that
-+ # the compiled dll only exports the symbol export list.
-+ # Be careful not to strip the DATA tag left be newer dlltools.
-+ export_symbols_cmds="$ltdll_cmds"'
-+ $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
-+ sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
-+
-+ # If the export-symbols file already is a .def file (1st line
-+ # is EXPORTS), use it as is.
-+ # If DATA tags from a recent dlltool are present, honour them!
-+ archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
-+ cp $export_symbols $output_objdir/$soname-def;
-+ else
-+ echo EXPORTS > $output_objdir/$soname-def;
-+ _lt_hint=1;
-+ cat $export_symbols | while read symbol; do
-+ set dummy \$symbol;
-+ case \$# in
-+ 2) echo " \$2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
-+ 4) echo " \$2 \$3 \$4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
-+ *) echo " \$2 @ \$_lt_hint \$3 ; " >> $output_objdir/$soname-def;;
-+ esac;
-+ _lt_hint=`expr 1 + \$_lt_hint`;
-+ done;
-+ fi~
-+ '"$ltdll_cmds"'
-+ $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
-+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
-+ $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
-+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
-+ $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
-+ ;;
-+
-+ netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-+ wlarc=
-+ else
-+ archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ fi
-+ ;;
-+
-+ solaris* | sysv5*)
-+ if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
-+ ld_shlibs=no
-+ cat <<EOF 1>&2
-+
-+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-+*** create shared libraries on Solaris systems. Therefore, libtool
-+*** is disabling shared libraries support. We urge you to upgrade GNU
-+*** binutils to release 2.9.1 or newer. Another option is to modify
-+*** your PATH or compiler configuration so that the native linker is
-+*** used, and then restart.
-+
-+EOF
-+ elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+
-+ sunos4*)
-+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ wlarc=
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ *)
-+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+ esac
-+
-+ if test "$ld_shlibs" = yes; then
-+ runpath_var=LD_RUN_PATH
-+ hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
-+ export_dynamic_flag_spec='${wl}--export-dynamic'
-+ case $host_os in
-+ cygwin* | mingw* | pw32*)
-+ # dlltool doesn't understand --whole-archive et. al.
-+ whole_archive_flag_spec=
-+ ;;
-+ *)
-+ # ancient GNU ld didn't support --whole-archive et. al.
-+ if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
-+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-+ else
-+ whole_archive_flag_spec=
-+ fi
-+ ;;
-+ esac
-+ fi
-+else
-+ # PORTME fill in a description of your system's linker (not GNU ld)
-+ case $host_os in
-+ aix3*)
-+ allow_undefined_flag=unsupported
-+ always_export_symbols=yes
-+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
-+ # Note: this linker hardcodes the directories in LIBPATH if there
-+ # are no directories specified by -L.
-+ hardcode_minus_L=yes
-+ if test "$GCC" = yes && test -z "$link_static_flag"; then
-+ # Neither direct hardcoding nor static linking is supported with a
-+ # broken collect2.
-+ hardcode_direct=unsupported
-+ fi
-+ ;;
-+
-+ aix4* | aix5*)
-+ if test "$host_cpu" = ia64; then
-+ # On IA64, the linker does run time linking by default, so we don't
-+ # have to do anything special.
-+ aix_use_runtimelinking=no
-+ exp_sym_flag='-Bexport'
-+ no_entry_flag=""
-+ else
-+ aix_use_runtimelinking=no
-+
-+ # Test if we are trying to use run time linking or normal
-+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-+ # need to do runtime linking.
-+ case $host_os in aix4.[23]|aix4.[23].*|aix5*)
-+ for ld_flag in $LDFLAGS; do
-+ case $ld_flag in
-+ *-brtl*)
-+ aix_use_runtimelinking=yes
-+ break
-+ ;;
-+ esac
-+ done
-+ esac
-+
-+ exp_sym_flag='-bexport'
-+ no_entry_flag='-bnoentry'
-+ fi
-+
-+ # When large executables or shared objects are built, AIX ld can
-+ # have problems creating the table of contents. If linking a library
-+ # or program results in "error TOC overflow" add -mminimal-toc to
-+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
-+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-+
-+ hardcode_direct=yes
-+ archive_cmds=''
-+ hardcode_libdir_separator=':'
-+ if test "$GCC" = yes; then
-+ case $host_os in aix4.[012]|aix4.[012].*)
-+ collect2name=`${CC} -print-prog-name=collect2`
-+ if test -f "$collect2name" && \
-+ strings "$collect2name" | grep resolve_lib_name >/dev/null
-+ then
-+ # We have reworked collect2
-+ hardcode_direct=yes
-+ else
-+ # We have old collect2
-+ hardcode_direct=unsupported
-+ # It fails to find uninstalled libraries when the uninstalled
-+ # path is not listed in the libpath. Setting hardcode_minus_L
-+ # to unsupported forces relinking
-+ hardcode_minus_L=yes
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_libdir_separator=
-+ fi
-+ esac
-+
-+ shared_flag='-shared'
-+ else
-+ # not using gcc
-+ if test "$host_cpu" = ia64; then
-+ shared_flag='${wl}-G'
-+ else
-+ if test "$aix_use_runtimelinking" = yes; then
-+ shared_flag='${wl}-G'
-+ else
-+ shared_flag='${wl}-bM:SRE'
-+ fi
-+ fi
-+ fi
-+
-+ # It seems that -bexpall can do strange things, so it is better to
-+ # generate a list of symbols to export.
-+ always_export_symbols=yes
-+ if test "$aix_use_runtimelinking" = yes; then
-+ # Warning - without using the other runtime loading flags (-brtl),
-+ # -berok will link without error, but may produce a broken library.
-+ allow_undefined_flag='-berok'
-+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
-+ archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-+ else
-+ if test "$host_cpu" = ia64; then
-+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
-+ allow_undefined_flag="-z nodefs"
-+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
-+ else
-+ hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
-+ # Warning - without using the other run time loading flags,
-+ # -berok will link without error, but may produce a broken library.
-+ allow_undefined_flag='${wl}-berok'
-+ # This is a bit strange, but is similar to how AIX traditionally builds
-+ # it's shared libraries.
-+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname'
-+ fi
-+ fi
-+ ;;
-+
-+ amigaos*)
-+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+ # see comment about different semantics on the GNU ld section
-+ ld_shlibs=no
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ # When not using gcc, we currently assume that we are using
-+ # Microsoft Visual C++.
-+ # hardcode_libdir_flag_spec is actually meaningless, as there is
-+ # no search path for DLLs.
-+ hardcode_libdir_flag_spec=' '
-+ allow_undefined_flag=unsupported
-+ # Tell ltmain to make .lib files, not .a files.
-+ libext=lib
-+ # FIXME: Setting linknames here is a bad hack.
-+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
-+ # The linker will automatically build a .lib file if we build a DLL.
-+ old_archive_from_new_cmds='true'
-+ # FIXME: Should let the user specify the lib program.
-+ old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
-+ fix_srcfile_path='`cygpath -w "$srcfile"`'
-+ ;;
-+
-+ darwin* | rhapsody*)
-+ case "$host_os" in
-+ rhapsody* | darwin1.[012])
-+ allow_undefined_flag='-undefined suppress'
-+ ;;
-+ *) # Darwin 1.3 on
-+ allow_undefined_flag='-flat_namespace -undefined suppress'
-+ ;;
-+ esac
-+ # FIXME: Relying on posixy $() will cause problems for
-+ # cross-compilation, but unfortunately the echo tests do not
-+ # yet detect zsh echo's removal of \ escapes. Also zsh mangles
-+ # `"' quotes if we put them in here... so don't!
-+ archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
-+ # We need to add '_' to the symbols in $export_symbols first
-+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ whole_archive_flag_spec='-all_load $convenience'
-+ ;;
-+
-+ freebsd1*)
-+ ld_shlibs=no
-+ ;;
-+
-+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
-+ # support. Future versions do this automatically, but an explicit c++rt0.o
-+ # does not break anything, and helps significantly (at the cost of a little
-+ # extra space).
-+ freebsd2.2*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
-+ freebsd2*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-+ freebsd*)
-+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ hpux9* | hpux10* | hpux11*)
-+ case $host_os in
-+ hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
-+ *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
-+ esac
-+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes # Not in the search PATH, but as the default
-+ # location of the library.
-+ export_dynamic_flag_spec='${wl}-E'
-+ ;;
-+
-+ irix5* | irix6* | nonstopux*)
-+ if test "$GCC" = yes; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ else
-+ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='-rpath $libdir'
-+ fi
-+ hardcode_libdir_separator=:
-+ link_all_deplibs=yes
-+ ;;
-+
-+ netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
-+ else
-+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
-+ fi
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ newsos6)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ openbsd*)
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-+ export_dynamic_flag_spec='${wl}-E'
-+ else
-+ case "$host_os" in
-+ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ ;;
-+ *)
-+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-+ ;;
-+ esac
-+ fi
-+ ;;
-+
-+ os2*)
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+ allow_undefined_flag=unsupported
-+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
-+ ;;
-+
-+ osf3*)
-+ if test "$GCC" = yes; then
-+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ else
-+ allow_undefined_flag=' -expect_unresolved \*'
-+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ fi
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ ;;
-+
-+ osf4* | osf5*) # as osf3* with the addition of -msym flag
-+ if test "$GCC" = yes; then
-+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ else
-+ allow_undefined_flag=' -expect_unresolved \*'
-+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
-+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
-+
-+ #Both c and cxx compiler support -rpath directly
-+ hardcode_libdir_flag_spec='-rpath $libdir'
-+ fi
-+ hardcode_libdir_separator=:
-+ ;;
-+
-+ sco3.2v5*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ runpath_var=LD_RUN_PATH
-+ hardcode_runpath_var=yes
-+ export_dynamic_flag_spec='${wl}-Bexport'
-+ ;;
-+
-+ solaris*)
-+ # gcc --version < 3.0 without binutils cannot create self contained
-+ # shared libraries reliably, requiring libgcc.a to resolve some of
-+ # the object symbols generated in some cases. Libraries that use
-+ # assert need libgcc.a to resolve __eprintf, for example. Linking
-+ # a copy of libgcc.a into every shared library to guarantee resolving
-+ # such symbols causes other problems: According to Tim Van Holder
-+ # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
-+ # (to the application) exception stack for one thing.
-+ no_undefined_flag=' -z defs'
-+ if test "$GCC" = yes; then
-+ case `$CC --version 2>/dev/null` in
-+ [12].*)
-+ cat <<EOF 1>&2
-+
-+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
-+*** create self contained shared libraries on Solaris systems, without
-+*** introducing a dependency on libgcc.a. Therefore, libtool is disabling
-+*** -no-undefined support, which will at least allow you to build shared
-+*** libraries. However, you may find that when you link such libraries
-+*** into an application without using GCC, you have to manually add
-+*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to
-+*** upgrade to a newer version of GCC. Another option is to rebuild your
-+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
-+
-+EOF
-+ no_undefined_flag=
-+ ;;
-+ esac
-+ fi
-+ # $CC -shared without GNU ld will not create a library from C++
-+ # object files and a static libstdc++, better avoid it by now
-+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_shlibpath_var=no
-+ case $host_os in
-+ solaris2.[0-5] | solaris2.[0-5].*) ;;
-+ *) # Supported since Solaris 2.6 (maybe 2.5.1?)
-+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
-+ esac
-+ link_all_deplibs=yes
-+ ;;
-+
-+ sunos4*)
-+ if test "x$host_vendor" = xsequent; then
-+ # Use $CC to link under sequent, because it throws in some extra .o
-+ # files that make .init and .fini sections work.
-+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
-+ else
-+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
-+ fi
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4)
-+ case $host_vendor in
-+ sni)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes # is this really true???
-+ ;;
-+ siemens)
-+ ## LD is ld it makes a PLAMLIB
-+ ## CC just makes a GrossModule.
-+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-+ reload_cmds='$CC -r -o $output$reload_objs'
-+ hardcode_direct=no
-+ ;;
-+ motorola)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie
-+ ;;
-+ esac
-+ runpath_var='LD_RUN_PATH'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4.3*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ export_dynamic_flag_spec='-Bexport'
-+ ;;
-+
-+ sysv5*)
-+ no_undefined_flag=' -z text'
-+ # $CC -shared without GNU ld will not create a library from C++
-+ # object files and a static libstdc++, better avoid it by now
-+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
-+ hardcode_libdir_flag_spec=
-+ hardcode_shlibpath_var=no
-+ runpath_var='LD_RUN_PATH'
-+ ;;
-+
-+ uts4*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ dgux*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4*MP*)
-+ if test -d /usr/nec; then
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ runpath_var=LD_RUN_PATH
-+ hardcode_runpath_var=yes
-+ ld_shlibs=yes
-+ fi
-+ ;;
-+
-+ sysv4.2uw2*)
-+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_minus_L=no
-+ hardcode_shlibpath_var=no
-+ hardcode_runpath_var=yes
-+ runpath_var=LD_RUN_PATH
-+ ;;
-+
-+ sysv5uw7* | unixware7*)
-+ no_undefined_flag='${wl}-z ${wl}text'
-+ if test "$GCC" = yes; then
-+ archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-+ else
-+ archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-+ fi
-+ runpath_var='LD_RUN_PATH'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ *)
-+ ld_shlibs=no
-+ ;;
-+ esac
-+fi
-+echo "$ac_t""$ld_shlibs" 1>&6
-+test "$ld_shlibs" = no && can_build_shared=no
-+
-+# Check hardcoding attributes.
-+echo $ac_n "checking how to hardcode library paths into programs""... $ac_c" 1>&6
-+echo "configure:3844: checking how to hardcode library paths into programs" >&5
-+hardcode_action=
-+if test -n "$hardcode_libdir_flag_spec" || \
-+ test -n "$runpath_var"; then
-+
-+ # We can hardcode non-existant directories.
-+ if test "$hardcode_direct" != no &&
-+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
-+ # have to relink, otherwise we might link with an installed library
-+ # when we should be linking with a yet-to-be-installed one
-+ ## test "$hardcode_shlibpath_var" != no &&
-+ test "$hardcode_minus_L" != no; then
-+ # Linking always hardcodes the temporary library directory.
-+ hardcode_action=relink
-+ else
-+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
-+ hardcode_action=immediate
-+ fi
-+else
-+ # We cannot hardcode anything, or else we can only hardcode existing
-+ # directories.
-+ hardcode_action=unsupported
-+fi
-+echo "$ac_t""$hardcode_action" 1>&6
-+
-+striplib=
-+old_striplib=
-+echo $ac_n "checking whether stripping libraries is possible""... $ac_c" 1>&6
-+echo "configure:3872: checking whether stripping libraries is possible" >&5
-+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
-+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-+ echo "$ac_t""yes" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+reload_cmds='$LD$reload_flag -o $output$reload_objs'
-+test -z "$deplibs_check_method" && deplibs_check_method=unknown
-+
-+# PORTME Fill in your ld.so characteristics
-+echo $ac_n "checking dynamic linker characteristics""... $ac_c" 1>&6
-+echo "configure:3886: checking dynamic linker characteristics" >&5
-+library_names_spec=
-+libname_spec='lib$name'
-+soname_spec=
-+postinstall_cmds=
-+postuninstall_cmds=
-+finish_cmds=
-+finish_eval=
-+shlibpath_var=
-+shlibpath_overrides_runpath=unknown
-+version_type=none
-+dynamic_linker="$host_os ld.so"
-+sys_lib_dlsearch_path_spec="/lib /usr/lib"
-+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-+
-+case $host_os in
-+aix3*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix $libname.a'
-+ shlibpath_var=LIBPATH
-+
-+ # AIX has no versioning support, so we append a major version to the name.
-+ soname_spec='${libname}${release}.so$major'
-+ ;;
-+
-+aix4* | aix5*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ hardcode_into_libs=yes
-+ if test "$host_cpu" = ia64; then
-+ # AIX 5 supports IA64
-+ library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ else
-+ # With GCC up to 2.95.x, collect2 would create an import file
-+ # for dependence libraries. The import file would start with
-+ # the line `#! .'. This would cause the generated library to
-+ # depend on `.', always an invalid library. This was fixed in
-+ # development snapshots of GCC prior to 3.0.
-+ case $host_os in
-+ aix4 | aix4.[01] | aix4.[01].*)
-+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
-+ echo ' yes '
-+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
-+ :
-+ else
-+ can_build_shared=no
-+ fi
-+ ;;
-+ esac
-+ # AIX (on Power*) has no versioning support, so currently we can
-+ # not hardcode correct soname into executable. Probably we can
-+ # add versioning support to collect2, so additional links can
-+ # be useful in future.
-+ if test "$aix_use_runtimelinking" = yes; then
-+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
-+ # instead of lib<name>.a to let people know that these are not
-+ # typical AIX shared libraries.
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ else
-+ # We preserve .a as extension for shared libraries through AIX4.2
-+ # and later when we are not doing run time linking.
-+ library_names_spec='${libname}${release}.a $libname.a'
-+ soname_spec='${libname}${release}.so$major'
-+ fi
-+ shlibpath_var=LIBPATH
-+ fi
-+ hardcode_into_libs=yes
-+ ;;
-+
-+amigaos*)
-+ library_names_spec='$libname.ixlibrary $libname.a'
-+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
-+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
-+ ;;
-+
-+beos*)
-+ library_names_spec='${libname}.so'
-+ dynamic_linker="$host_os ld.so"
-+ shlibpath_var=LIBRARY_PATH
-+ ;;
-+
-+bsdi4*)
-+ version_type=linux
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
-+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
-+ export_dynamic_flag_spec=-rdynamic
-+ # the default ld.so.conf also contains /usr/contrib/lib and
-+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
-+ # libtool to hard-code these into programs
-+ ;;
-+
-+cygwin* | mingw* | pw32*)
-+ version_type=windows
-+ need_version=no
-+ need_lib_prefix=no
-+ case $GCC,$host_os in
-+ yes,cygwin*)
-+ library_names_spec='$libname.dll.a'
-+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
-+ postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
-+ dldir=$destdir/`dirname \$dlpath`~
-+ test -d \$dldir || mkdir -p \$dldir~
-+ $install_prog .libs/$dlname \$dldir/$dlname'
-+ postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
-+ dlpath=$dir/\$dldll~
-+ $rm \$dlpath'
-+ ;;
-+ yes,mingw*)
-+ library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
-+ sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"`
-+ ;;
-+ yes,pw32*)
-+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/./-/g'`${versuffix}.dll'
-+ ;;
-+ *)
-+ library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib'
-+ ;;
-+ esac
-+ dynamic_linker='Win32 ld.exe'
-+ # FIXME: first we should search . and the directory the executable is in
-+ shlibpath_var=PATH
-+ ;;
-+
-+darwin* | rhapsody*)
-+ dynamic_linker="$host_os dyld"
-+ version_type=darwin
-+ need_lib_prefix=no
-+ need_version=no
-+ # FIXME: Relying on posixy $() will cause problems for
-+ # cross-compilation, but unfortunately the echo tests do not
-+ # yet detect zsh echo's removal of \ escapes.
-+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
-+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
-+ shlibpath_overrides_runpath=yes
-+ shlibpath_var=DYLD_LIBRARY_PATH
-+ ;;
-+
-+freebsd1*)
-+ dynamic_linker=no
-+ ;;
-+
-+freebsd*-gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=no
-+ hardcode_into_libs=yes
-+ dynamic_linker='GNU/FreeBSD ld.so'
-+ ;;
-+
-+freebsd*)
-+ objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
-+ version_type=freebsd-$objformat
-+ case $version_type in
-+ freebsd-elf*)
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
-+ need_version=no
-+ need_lib_prefix=no
-+ ;;
-+ freebsd-*)
-+ library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
-+ need_version=yes
-+ ;;
-+ esac
-+ shlibpath_var=LD_LIBRARY_PATH
-+ case $host_os in
-+ freebsd2*)
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+ *)
-+ shlibpath_overrides_runpath=no
-+ hardcode_into_libs=yes
-+ ;;
-+ esac
-+ ;;
-+
-+gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ hardcode_into_libs=yes
-+ ;;
-+
-+hpux9* | hpux10* | hpux11*)
-+ # Give a soname corresponding to the major version so that dld.sl refuses to
-+ # link against other versions.
-+ dynamic_linker="$host_os dld.sl"
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ shlibpath_var=SHLIB_PATH
-+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-+ library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
-+ soname_spec='${libname}${release}.sl$major'
-+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
-+ postinstall_cmds='chmod 555 $lib'
-+ ;;
-+
-+irix5* | irix6* | nonstopux*)
-+ case $host_os in
-+ nonstopux*) version_type=nonstopux ;;
-+ *) version_type=irix ;;
-+ esac
-+ need_lib_prefix=no
-+ need_version=no
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
-+ case $host_os in
-+ irix5* | nonstopux*)
-+ libsuff= shlibsuff=
-+ ;;
-+ *)
-+ case $LD in # libtool.m4 will add one of these switches to LD
-+ *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
-+ *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
-+ *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
-+ *) libsuff= shlibsuff= libmagic=never-match;;
-+ esac
-+ ;;
-+ esac
-+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
-+ shlibpath_overrides_runpath=no
-+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
-+ ;;
-+
-+# No shared lib support for Linux oldld, aout, or coff.
-+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
-+ dynamic_linker=no
-+ ;;
-+
-+# This must be Linux ELF.
-+linux-gnu*|kfreebsd*-gnu)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=no
-+ # This implies no fast_install, which is unacceptable.
-+ # Some rework will be needed to allow for fast_install
-+ # before this can be enabled.
-+ hardcode_into_libs=yes
-+
-+ # We used to test for /lib/ld.so.1 and disable shared libraries on
-+ # powerpc, because MkLinux only supported shared libraries with the
-+ # GNU dynamic linker. Since this was broken with cross compilers,
-+ # most powerpc-linux boxes support dynamic linking these days and
-+ # people can always --disable-shared, the test was removed, and we
-+ # assume the GNU/Linux dynamic linker is in use.
-+ dynamic_linker='GNU/Linux ld.so'
-+ ;;
-+
-+netbsd*)
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-+ dynamic_linker='NetBSD (a.out) ld.so'
-+ else
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
-+ soname_spec='${libname}${release}.so$major'
-+ dynamic_linker='NetBSD ld.elf_so'
-+ fi
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ hardcode_into_libs=yes
-+ ;;
-+
-+newsos6)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+
-+openbsd*)
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ case "$host_os" in
-+ openbsd2.[89] | openbsd2.[89].*)
-+ shlibpath_overrides_runpath=no
-+ ;;
-+ *)
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+ esac
-+ else
-+ shlibpath_overrides_runpath=yes
-+ fi
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+os2*)
-+ libname_spec='$name'
-+ need_lib_prefix=no
-+ library_names_spec='$libname.dll $libname.a'
-+ dynamic_linker='OS/2 ld.exe'
-+ shlibpath_var=LIBPATH
-+ ;;
-+
-+osf3* | osf4* | osf5*)
-+ version_type=osf
-+ need_version=no
-+ need_lib_prefix=no
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
-+ hardcode_into_libs=yes
-+ ;;
-+
-+sco3.2v5*)
-+ version_type=osf
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+solaris*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ hardcode_into_libs=yes
-+ # ldd complains unless libraries are executable
-+ postinstall_cmds='chmod +x $lib'
-+ ;;
-+
-+sunos4*)
-+ version_type=sunos
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ if test "$with_gnu_ld" = yes; then
-+ need_lib_prefix=no
-+ fi
-+ need_version=yes
-+ ;;
-+
-+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ case $host_vendor in
-+ sni)
-+ shlibpath_overrides_runpath=no
-+ need_lib_prefix=no
-+ export_dynamic_flag_spec='${wl}-Blargedynsym'
-+ runpath_var=LD_RUN_PATH
-+ ;;
-+ siemens)
-+ need_lib_prefix=no
-+ ;;
-+ motorola)
-+ need_lib_prefix=no
-+ need_version=no
-+ shlibpath_overrides_runpath=no
-+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
-+ ;;
-+ esac
-+ ;;
-+
-+uts4*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+dgux*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+sysv4*MP*)
-+ if test -d /usr/nec ;then
-+ version_type=linux
-+ library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
-+ soname_spec='$libname.so.$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ fi
-+ ;;
-+
-+*)
-+ dynamic_linker=no
-+ ;;
-+esac
-+echo "$ac_t""$dynamic_linker" 1>&6
-+test "$dynamic_linker" = no && can_build_shared=no
-+
-+# Report the final consequences.
-+echo $ac_n "checking if libtool supports shared libraries""... $ac_c" 1>&6
-+echo "configure:4310: checking if libtool supports shared libraries" >&5
-+echo "$ac_t""$can_build_shared" 1>&6
-+
-+echo $ac_n "checking whether to build shared libraries""... $ac_c" 1>&6
-+echo "configure:4314: checking whether to build shared libraries" >&5
-+test "$can_build_shared" = "no" && enable_shared=no
-+
-+# On AIX, shared libraries and static libraries use the same namespace, and
-+# are all built from PIC.
-+case "$host_os" in
-+aix3*)
-+ test "$enable_shared" = yes && enable_static=no
-+ if test -n "$RANLIB"; then
-+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
-+ postinstall_cmds='$RANLIB $lib'
-+ fi
-+ ;;
-+
-+aix4*)
-+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-+ test "$enable_shared" = yes && enable_static=no
-+ fi
-+ ;;
-+esac
-+echo "$ac_t""$enable_shared" 1>&6
-+
-+echo $ac_n "checking whether to build static libraries""... $ac_c" 1>&6
-+echo "configure:4337: checking whether to build static libraries" >&5
-+# Make sure either enable_shared or enable_static is yes.
-+test "$enable_shared" = yes || enable_static=yes
-+echo "$ac_t""$enable_static" 1>&6
-+
-+if test "$hardcode_action" = relink; then
-+ # Fast installation is not supported
-+ enable_fast_install=no
-+elif test "$shlibpath_overrides_runpath" = yes ||
-+ test "$enable_shared" = no; then
-+ # Fast installation is not necessary
-+ enable_fast_install=needless
-+fi
-+
-+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-+if test "$GCC" = yes; then
-+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-+fi
-+
-+if test "x$enable_dlopen" != xyes; then
-+ enable_dlopen=unknown
-+ enable_dlopen_self=unknown
-+ enable_dlopen_self_static=unknown
-+else
-+ lt_cv_dlopen=no
-+ lt_cv_dlopen_libs=
-+
-+ case $host_os in
-+ beos*)
-+ lt_cv_dlopen="load_add_on"
-+ lt_cv_dlopen_libs=
-+ lt_cv_dlopen_self=yes
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ lt_cv_dlopen="LoadLibrary"
-+ lt_cv_dlopen_libs=
-+ ;;
-+
-+ *)
-+ echo $ac_n "checking for shl_load""... $ac_c" 1>&6
-+echo "configure:4378: checking for shl_load" >&5
-+if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 4383 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char shl_load(); below. */
-+#include <assert.h>
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char shl_load();
-+
-+int main() {
-+
-+/* The GNU C library defines this 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_shl_load) || defined (__stub___shl_load)
-+choke me
-+#else
-+shl_load();
-+#endif
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:4406: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_func_shl_load=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_func_shl_load=no"
-+fi
-+rm -f conftest*
-+fi
-+
-+if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="shl_load"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
-+echo "configure:4424: checking for shl_load in -ldld" >&5
-+ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'`
-+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ ac_save_LIBS="$LIBS"
-+LIBS="-ldld $LIBS"
-+cat > conftest.$ac_ext <<EOF
-+#line 4432 "configure"
-+#include "confdefs.h"
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char shl_load();
-+
-+int main() {
-+shl_load()
-+; return 0; }
-+EOF
-+if { (eval echo configure:4443: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=no"
-+fi
-+rm -f conftest*
-+LIBS="$ac_save_LIBS"
-+
-+fi
-+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for dlopen""... $ac_c" 1>&6
-+echo "configure:4462: checking for dlopen" >&5
-+if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 4467 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char dlopen(); below. */
-+#include <assert.h>
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char dlopen();
-+
-+int main() {
-+
-+/* The GNU C library defines this 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_dlopen) || defined (__stub___dlopen)
-+choke me
-+#else
-+dlopen();
-+#endif
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:4490: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_func_dlopen=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_func_dlopen=no"
-+fi
-+rm -f conftest*
-+fi
-+
-+if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="dlopen"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
-+echo "configure:4508: checking for dlopen in -ldl" >&5
-+ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
-+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ ac_save_LIBS="$LIBS"
-+LIBS="-ldl $LIBS"
-+cat > conftest.$ac_ext <<EOF
-+#line 4516 "configure"
-+#include "confdefs.h"
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char dlopen();
-+
-+int main() {
-+dlopen()
-+; return 0; }
-+EOF
-+if { (eval echo configure:4527: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=no"
-+fi
-+rm -f conftest*
-+LIBS="$ac_save_LIBS"
-+
-+fi
-+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for dlopen in -lsvld""... $ac_c" 1>&6
-+echo "configure:4546: checking for dlopen in -lsvld" >&5
-+ac_lib_var=`echo svld'_'dlopen | sed 'y%./+-%__p_%'`
-+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ ac_save_LIBS="$LIBS"
-+LIBS="-lsvld $LIBS"
-+cat > conftest.$ac_ext <<EOF
-+#line 4554 "configure"
-+#include "confdefs.h"
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char dlopen();
-+
-+int main() {
-+dlopen()
-+; return 0; }
-+EOF
-+if { (eval echo configure:4565: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=no"
-+fi
-+rm -f conftest*
-+LIBS="$ac_save_LIBS"
-+
-+fi
-+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6
-+echo "configure:4584: checking for dld_link in -ldld" >&5
-+ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'`
-+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ ac_save_LIBS="$LIBS"
-+LIBS="-ldld $LIBS"
-+cat > conftest.$ac_ext <<EOF
-+#line 4592 "configure"
-+#include "confdefs.h"
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char dld_link();
-+
-+int main() {
-+dld_link()
-+; return 0; }
-+EOF
-+if { (eval echo configure:4603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=no"
-+fi
-+rm -f conftest*
-+LIBS="$ac_save_LIBS"
-+
-+fi
-+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+
-+fi
-+
-+
-+fi
-+
-+
-+fi
-+
-+
-+fi
-+
-+
-+fi
-+
-+ ;;
-+ esac
-+
-+ if test "x$lt_cv_dlopen" != xno; then
-+ enable_dlopen=yes
-+ else
-+ enable_dlopen=no
-+ fi
-+
-+ case $lt_cv_dlopen in
-+ dlopen)
-+ save_CPPFLAGS="$CPPFLAGS"
-+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-+
-+ save_LDFLAGS="$LDFLAGS"
-+ eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-+
-+ save_LIBS="$LIBS"
-+ LIBS="$lt_cv_dlopen_libs $LIBS"
-+
-+ echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6
-+echo "configure:4659: checking whether a program can dlopen itself" >&5
-+if eval "test \"`echo '$''{'lt_cv_dlopen_self'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test "$cross_compiling" = yes; then :
-+ lt_cv_dlopen_self=cross
-+else
-+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-+ lt_status=$lt_dlunknown
-+ cat > conftest.$ac_ext <<EOF
-+#line 4669 "configure"
-+#include "confdefs.h"
-+
-+#if HAVE_DLFCN_H
-+#include <dlfcn.h>
-+#endif
-+
-+#include <stdio.h>
-+
-+#ifdef RTLD_GLOBAL
-+# define LT_DLGLOBAL RTLD_GLOBAL
-+#else
-+# ifdef DL_GLOBAL
-+# define LT_DLGLOBAL DL_GLOBAL
-+# else
-+# define LT_DLGLOBAL 0
-+# endif
-+#endif
-+
-+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-+ find out it does not work in some platform. */
-+#ifndef LT_DLLAZY_OR_NOW
-+# ifdef RTLD_LAZY
-+# define LT_DLLAZY_OR_NOW RTLD_LAZY
-+# else
-+# ifdef DL_LAZY
-+# define LT_DLLAZY_OR_NOW DL_LAZY
-+# else
-+# ifdef RTLD_NOW
-+# define LT_DLLAZY_OR_NOW RTLD_NOW
-+# else
-+# ifdef DL_NOW
-+# define LT_DLLAZY_OR_NOW DL_NOW
-+# else
-+# define LT_DLLAZY_OR_NOW 0
-+# endif
-+# endif
-+# endif
-+# endif
-+#endif
-+
-+#ifdef __cplusplus
-+extern "C" void exit (int);
-+#endif
-+
-+void fnord() { int i=42;}
-+int main ()
-+{
-+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-+ int status = $lt_dlunknown;
-+
-+ if (self)
-+ {
-+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
-+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
-+ /* dlclose (self); */
-+ }
-+
-+ exit (status);
-+}
-+EOF
-+ if { (eval echo configure:4730: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} 2>/dev/null; then
-+ (./conftest; exit; ) 2>/dev/null
-+ lt_status=$?
-+ case x$lt_status in
-+ x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
-+ x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
-+ x$lt_unknown|x*) lt_cv_dlopen_self=no ;;
-+ esac
-+ else :
-+ # compilation failed
-+ lt_cv_dlopen_self=no
-+ fi
-+fi
-+rm -fr conftest*
-+
-+
-+fi
-+
-+echo "$ac_t""$lt_cv_dlopen_self" 1>&6
-+
-+ if test "x$lt_cv_dlopen_self" = xyes; then
-+ LDFLAGS="$LDFLAGS $link_static_flag"
-+ echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6
-+echo "configure:4753: checking whether a statically linked program can dlopen itself" >&5
-+if eval "test \"`echo '$''{'lt_cv_dlopen_self_static'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test "$cross_compiling" = yes; then :
-+ lt_cv_dlopen_self_static=cross
-+else
-+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-+ lt_status=$lt_dlunknown
-+ cat > conftest.$ac_ext <<EOF
-+#line 4763 "configure"
-+#include "confdefs.h"
-+
-+#if HAVE_DLFCN_H
-+#include <dlfcn.h>
-+#endif
-+
-+#include <stdio.h>
-+
-+#ifdef RTLD_GLOBAL
-+# define LT_DLGLOBAL RTLD_GLOBAL
-+#else
-+# ifdef DL_GLOBAL
-+# define LT_DLGLOBAL DL_GLOBAL
-+# else
-+# define LT_DLGLOBAL 0
-+# endif
-+#endif
-+
-+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-+ find out it does not work in some platform. */
-+#ifndef LT_DLLAZY_OR_NOW
-+# ifdef RTLD_LAZY
-+# define LT_DLLAZY_OR_NOW RTLD_LAZY
-+# else
-+# ifdef DL_LAZY
-+# define LT_DLLAZY_OR_NOW DL_LAZY
-+# else
-+# ifdef RTLD_NOW
-+# define LT_DLLAZY_OR_NOW RTLD_NOW
-+# else
-+# ifdef DL_NOW
-+# define LT_DLLAZY_OR_NOW DL_NOW
-+# else
-+# define LT_DLLAZY_OR_NOW 0
-+# endif
-+# endif
-+# endif
-+# endif
-+#endif
-+
-+#ifdef __cplusplus
-+extern "C" void exit (int);
-+#endif
-+
-+void fnord() { int i=42;}
-+int main ()
-+{
-+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-+ int status = $lt_dlunknown;
-+
-+ if (self)
-+ {
-+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
-+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
-+ /* dlclose (self); */
-+ }
-+
-+ exit (status);
-+}
-+EOF
-+ if { (eval echo configure:4824: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} 2>/dev/null; then
-+ (./conftest; exit; ) 2>/dev/null
-+ lt_status=$?
-+ case x$lt_status in
-+ x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
-+ x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
-+ x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;;
-+ esac
-+ else :
-+ # compilation failed
-+ lt_cv_dlopen_self_static=no
-+ fi
-+fi
-+rm -fr conftest*
-+
-+
-+fi
-+
-+echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6
-+ fi
-+
-+ CPPFLAGS="$save_CPPFLAGS"
-+ LDFLAGS="$save_LDFLAGS"
-+ LIBS="$save_LIBS"
-+ ;;
-+ esac
-+
-+ case $lt_cv_dlopen_self in
-+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
-+ *) enable_dlopen_self=unknown ;;
-+ esac
-+
-+ case $lt_cv_dlopen_self_static in
-+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
-+ *) enable_dlopen_self_static=unknown ;;
-+ esac
-+fi
-+
-+
-+if test "$enable_shared" = yes && test "$GCC" = yes; then
-+ case $archive_cmds in
-+ *'~'*)
-+ # FIXME: we may have to deal with multi-command sequences.
-+ ;;
-+ '$CC '*)
-+ # Test whether the compiler implicitly links with -lc since on some
-+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
-+ # to ld, don't add -lc before -lgcc.
-+ echo $ac_n "checking whether -lc should be explicitly linked in""... $ac_c" 1>&6
-+echo "configure:4873: checking whether -lc should be explicitly linked in" >&5
-+ if eval "test \"`echo '$''{'lt_cv_archive_cmds_need_lc'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ $rm conftest*
-+ echo 'static int dummy;' > conftest.$ac_ext
-+
-+ if { (eval echo configure:4880: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ soname=conftest
-+ lib=conftest
-+ libobjs=conftest.$ac_objext
-+ deplibs=
-+ wl=$lt_cv_prog_cc_wl
-+ compiler_flags=-v
-+ linker_flags=-v
-+ verstring=
-+ output_objdir=.
-+ libname=conftest
-+ save_allow_undefined_flag=$allow_undefined_flag
-+ allow_undefined_flag=
-+ if { (eval echo configure:4893: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\") 1>&5; (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5; }
-+ then
-+ lt_cv_archive_cmds_need_lc=no
-+ else
-+ lt_cv_archive_cmds_need_lc=yes
-+ fi
-+ allow_undefined_flag=$save_allow_undefined_flag
-+ else
-+ cat conftest.err 1>&5
-+ fi
-+fi
-+
-+ echo "$ac_t""$lt_cv_archive_cmds_need_lc" 1>&6
-+ ;;
-+ esac
-+fi
-+need_lc=${lt_cv_archive_cmds_need_lc-yes}
-+
-+# The second clause should only fire when bootstrapping the
-+# libtool distribution, otherwise you forgot to ship ltmain.sh
-+# with your package, and you will get complaints that there are
-+# no rules to generate ltmain.sh.
-+if test -f "$ltmain"; then
-+ :
-+else
-+ # If there is no Makefile yet, we rely on a make rule to execute
-+ # `config.status --recheck' to rerun these tests and create the
-+ # libtool script then.
-+ test -f Makefile && make "$ltmain"
-+fi
-+
-+if test -f "$ltmain"; then
-+ trap "$rm \"${ofile}T\"; exit 1" 1 2 15
-+ $rm -f "${ofile}T"
-+
-+ echo creating $ofile
-+
-+ # Now quote all the things that may contain metacharacters while being
-+ # careful not to overquote the AC_SUBSTed values. We take copies of the
-+ # variables and quote the copies for generation of the libtool script.
-+ for var in echo old_CC old_CFLAGS SED \
-+ AR AR_FLAGS CC LD LN_S NM SHELL \
-+ reload_flag reload_cmds wl \
-+ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
-+ thread_safe_flag_spec whole_archive_flag_spec libname_spec \
-+ library_names_spec soname_spec \
-+ RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
-+ old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
-+ postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
-+ old_striplib striplib file_magic_cmd export_symbols_cmds \
-+ deplibs_check_method allow_undefined_flag no_undefined_flag \
-+ finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
-+ global_symbol_to_c_name_address \
-+ hardcode_libdir_flag_spec hardcode_libdir_separator \
-+ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
-+ compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
-+
-+ case $var in
-+ reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
-+ old_postinstall_cmds | old_postuninstall_cmds | \
-+ export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
-+ extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
-+ postinstall_cmds | postuninstall_cmds | \
-+ finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
-+ # Double-quote double-evaled strings.
-+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
-+ ;;
-+ *)
-+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
-+ ;;
-+ esac
-+ done
-+
-+ cat <<__EOF__ > "${ofile}T"
-+#! $SHELL
-+
-+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
-+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-+#
-+# Copyright (C) 1996-2000 Free Software Foundation, Inc.
-+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful, but
-+# WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+# General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+#
-+# As a special exception to the GNU General Public License, if you
-+# distribute this file as part of a program that contains a
-+# configuration script generated by Autoconf, you may include it under
-+# the same distribution terms that you use for the rest of that program.
-+
-+# A sed that does not truncate output.
-+SED=$lt_SED
-+
-+# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-+Xsed="${SED} -e s/^X//"
-+
-+# The HP-UX ksh and POSIX shell print the target directory to stdout
-+# if CDPATH is set.
-+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-+
-+# ### BEGIN LIBTOOL CONFIG
-+
-+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-+
-+# Shell to use when invoking shell scripts.
-+SHELL=$lt_SHELL
-+
-+# Whether or not to build shared libraries.
-+build_libtool_libs=$enable_shared
-+
-+# Whether or not to build static libraries.
-+build_old_libs=$enable_static
-+
-+# Whether or not to add -lc for building shared libraries.
-+build_libtool_need_lc=$need_lc
-+
-+# Whether or not to optimize for fast installation.
-+fast_install=$enable_fast_install
-+
-+# The host system.
-+host_alias=$host_alias
-+host=$host
-+
-+# An echo program that does not interpret backslashes.
-+echo=$lt_echo
-+
-+# The archiver.
-+AR=$lt_AR
-+AR_FLAGS=$lt_AR_FLAGS
-+
-+# The default C compiler.
-+CC=$lt_CC
-+
-+# Is the compiler the GNU C compiler?
-+with_gcc=$GCC
-+
-+# The linker used to build libraries.
-+LD=$lt_LD
-+
-+# Whether we need hard or soft links.
-+LN_S=$lt_LN_S
-+
-+# A BSD-compatible nm program.
-+NM=$lt_NM
-+
-+# A symbol stripping program
-+STRIP=$STRIP
-+
-+# Used to examine libraries when file_magic_cmd begins "file"
-+MAGIC_CMD=$MAGIC_CMD
-+
-+# Used on cygwin: DLL creation program.
-+DLLTOOL="$DLLTOOL"
-+
-+# Used on cygwin: object dumper.
-+OBJDUMP="$OBJDUMP"
-+
-+# Used on cygwin: assembler.
-+AS="$AS"
-+
-+# The name of the directory that contains temporary libtool files.
-+objdir=$objdir
-+
-+# How to create reloadable object files.
-+reload_flag=$lt_reload_flag
-+reload_cmds=$lt_reload_cmds
-+
-+# How to pass a linker flag through the compiler.
-+wl=$lt_wl
-+
-+# Object file suffix (normally "o").
-+objext="$ac_objext"
-+
-+# Old archive suffix (normally "a").
-+libext="$libext"
-+
-+# Executable file suffix (normally "").
-+exeext="$exeext"
-+
-+# Additional compiler flags for building library objects.
-+pic_flag=$lt_pic_flag
-+pic_mode=$pic_mode
-+
-+# Does compiler simultaneously support -c and -o options?
-+compiler_c_o=$lt_compiler_c_o
-+
-+# Can we write directly to a .lo ?
-+compiler_o_lo=$lt_compiler_o_lo
-+
-+# Must we lock files when doing compilation ?
-+need_locks=$lt_need_locks
-+
-+# Do we need the lib prefix for modules?
-+need_lib_prefix=$need_lib_prefix
-+
-+# Do we need a version for libraries?
-+need_version=$need_version
-+
-+# Whether dlopen is supported.
-+dlopen_support=$enable_dlopen
-+
-+# Whether dlopen of programs is supported.
-+dlopen_self=$enable_dlopen_self
-+
-+# Whether dlopen of statically linked programs is supported.
-+dlopen_self_static=$enable_dlopen_self_static
-+
-+# Compiler flag to prevent dynamic linking.
-+link_static_flag=$lt_link_static_flag
-+
-+# Compiler flag to turn off builtin functions.
-+no_builtin_flag=$lt_no_builtin_flag
-+
-+# Compiler flag to allow reflexive dlopens.
-+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
-+
-+# Compiler flag to generate shared objects directly from archives.
-+whole_archive_flag_spec=$lt_whole_archive_flag_spec
-+
-+# Compiler flag to generate thread-safe objects.
-+thread_safe_flag_spec=$lt_thread_safe_flag_spec
-+
-+# Library versioning type.
-+version_type=$version_type
-+
-+# Format of library name prefix.
-+libname_spec=$lt_libname_spec
-+
-+# List of archive names. First name is the real one, the rest are links.
-+# The last name is the one that the linker finds with -lNAME.
-+library_names_spec=$lt_library_names_spec
-+
-+# The coded name of the library, if different from the real name.
-+soname_spec=$lt_soname_spec
-+
-+# Commands used to build and install an old-style archive.
-+RANLIB=$lt_RANLIB
-+old_archive_cmds=$lt_old_archive_cmds
-+old_postinstall_cmds=$lt_old_postinstall_cmds
-+old_postuninstall_cmds=$lt_old_postuninstall_cmds
-+
-+# Create an old-style archive from a shared archive.
-+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
-
--NM="$ac_cv_path_NM"
--echo "$ac_t""$NM" 1>&6
-+# Create a temporary old-style archive to link instead of a shared archive.
-+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
-
--echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
--echo "configure:1367: checking whether ln -s works" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
-- echo $ac_n "(cached) $ac_c" 1>&6
--else
-- rm -f conftestdata
--if ln -s X conftestdata 2>/dev/null
--then
-- rm -f conftestdata
-- ac_cv_prog_LN_S="ln -s"
--else
-- ac_cv_prog_LN_S=ln
--fi
--fi
--LN_S="$ac_cv_prog_LN_S"
--if test "$ac_cv_prog_LN_S" = "ln -s"; then
-- echo "$ac_t""yes" 1>&6
--else
-- echo "$ac_t""no" 1>&6
--fi
-+# Commands used to build and install a shared archive.
-+archive_cmds=$lt_archive_cmds
-+archive_expsym_cmds=$lt_archive_expsym_cmds
-+postinstall_cmds=$lt_postinstall_cmds
-+postuninstall_cmds=$lt_postuninstall_cmds
-
-+# Commands to strip libraries.
-+old_striplib=$lt_old_striplib
-+striplib=$lt_striplib
-
--case "$target" in
--NONE) lt_target="$host" ;;
--*) lt_target="$target" ;;
--esac
-+# Method to check whether dependent libraries are shared objects.
-+deplibs_check_method=$lt_deplibs_check_method
-
--# Check for any special flags to pass to ltconfig.
--libtool_flags="--cache-file=$cache_file"
--test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
--test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
--test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
--test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
--test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
-+# Command to use when deplibs_check_method == file_magic.
-+file_magic_cmd=$lt_file_magic_cmd
-
-+# Flag that allows shared libraries with undefined symbols to be built.
-+allow_undefined_flag=$lt_allow_undefined_flag
-
--# Check whether --enable-libtool-lock or --disable-libtool-lock was given.
--if test "${enable_libtool_lock+set}" = set; then
-- enableval="$enable_libtool_lock"
-- :
--fi
-+# Flag that forces no undefined symbols.
-+no_undefined_flag=$lt_no_undefined_flag
-
--test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
--test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
-+# Commands used to finish a libtool library installation in a directory.
-+finish_cmds=$lt_finish_cmds
-
--# Some flags need to be propagated to the compiler or linker for good
--# libtool support.
--case "$lt_target" in
--*-*-irix6*)
-- # Find out which ABI we are using.
-- echo '#line 1416 "configure"' > conftest.$ac_ext
-- if { (eval echo configure:1417: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-- case "`/usr/bin/file conftest.o`" in
-- *32-bit*)
-- LD="${LD-ld} -32"
-- ;;
-- *N32*)
-- LD="${LD-ld} -n32"
-- ;;
-- *64-bit*)
-- LD="${LD-ld} -64"
-- ;;
-- esac
-- fi
-- rm -rf conftest*
-- ;;
-+# Same as above, but a single script fragment to be evaled but not shown.
-+finish_eval=$lt_finish_eval
-
--*-*-sco3.2v5*)
-- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-- SAVE_CFLAGS="$CFLAGS"
-- CFLAGS="$CFLAGS -belf"
-- echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
--echo "configure:1438: checking whether the C compiler needs -belf" >&5
--if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
-- echo $ac_n "(cached) $ac_c" 1>&6
--else
-- cat > conftest.$ac_ext <<EOF
--#line 1443 "configure"
--#include "confdefs.h"
-+# Take the output of nm and produce a listing of raw symbols and C names.
-+global_symbol_pipe=$lt_global_symbol_pipe
-
--int main() {
-+# Transform the output of nm in a proper C declaration
-+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
-
--; return 0; }
--EOF
--if { (eval echo configure:1450: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-- rm -rf conftest*
-- lt_cv_cc_needs_belf=yes
--else
-- echo "configure: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- rm -rf conftest*
-- lt_cv_cc_needs_belf=no
--fi
--rm -f conftest*
--fi
-+# Transform the output of nm in a C name address pair
-+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
-
--echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
-- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-- CFLAGS="$SAVE_CFLAGS"
-- fi
-- ;;
-+# This is the shared library runtime path variable.
-+runpath_var=$runpath_var
-
-+# This is the shared library path variable.
-+shlibpath_var=$shlibpath_var
-
--esac
-+# Is shlibpath searched before the hard-coded library search path?
-+shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-
-+# How to hardcode a shared library path into an executable.
-+hardcode_action=$hardcode_action
-
--# Save cache, so that ltconfig can load it
--cat > confcache <<\EOF
--# This file is a shell script that caches the results of configure
--# tests run on this system so they can be shared between configure
--# scripts and configure runs. It is not useful on other systems.
--# If it contains results you don't want to keep, you may remove or edit it.
-+# Whether we should hardcode library paths into libraries.
-+hardcode_into_libs=$hardcode_into_libs
-+
-+# Flag to hardcode \$libdir into a binary during linking.
-+# This must work even if \$libdir does not exist.
-+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
-+
-+# Whether we need a single -rpath flag with a separated argument.
-+hardcode_libdir_separator=$lt_hardcode_libdir_separator
-+
-+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_direct=$hardcode_direct
-+
-+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_minus_L=$hardcode_minus_L
-+
-+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
-+# the resulting binary.
-+hardcode_shlibpath_var=$hardcode_shlibpath_var
-+
-+# Variables whose values should be saved in libtool wrapper scripts and
-+# restored at relink time.
-+variables_saved_for_relink="$variables_saved_for_relink"
-+
-+# Whether libtool must link a program against all its dependency libraries.
-+link_all_deplibs=$link_all_deplibs
-+
-+# Compile-time system search path for libraries
-+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
-+
-+# Run-time system search path for libraries
-+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-+
-+# Fix the shell variable \$srcfile for the compiler.
-+fix_srcfile_path="$fix_srcfile_path"
-+
-+# Set to yes if exported symbols are required.
-+always_export_symbols=$always_export_symbols
-+
-+# The commands to list exported symbols.
-+export_symbols_cmds=$lt_export_symbols_cmds
-+
-+# The commands to extract the exported symbol list from a shared archive.
-+extract_expsyms_cmds=$lt_extract_expsyms_cmds
-+
-+# Symbols that should not be listed in the preloaded symbols.
-+exclude_expsyms=$lt_exclude_expsyms
-+
-+# Symbols that must always be exported.
-+include_expsyms=$lt_include_expsyms
-+
-+# ### END LIBTOOL CONFIG
-+
-+__EOF__
-+
-+ case $host_os in
-+ aix3*)
-+ cat <<\EOF >> "${ofile}T"
-+
-+# AIX sometimes has problems with the GCC collect2 program. For some
-+# reason, if we set the COLLECT_NAMES environment variable, the problems
-+# vanish in a puff of smoke.
-+if test "X${COLLECT_NAMES+set}" != Xset; then
-+ COLLECT_NAMES=
-+ export COLLECT_NAMES
-+fi
-+EOF
-+ ;;
-+ esac
-+
-+ case $host_os in
-+ cygwin* | mingw* | pw32* | os2*)
-+ cat <<'EOF' >> "${ofile}T"
-+ # This is a source program that is used to create dlls on Windows
-+ # Don't remove nor modify the starting and closing comments
-+# /* ltdll.c starts here */
-+# #define WIN32_LEAN_AND_MEAN
-+# #include <windows.h>
-+# #undef WIN32_LEAN_AND_MEAN
-+# #include <stdio.h>
- #
--# By default, configure uses ./config.cache as the cache file,
--# creating it if it does not exist already. You can give configure
--# the --cache-file=FILE option to use a different cache file; that is
--# what configure does when it calls configure scripts in
--# subdirectories, so they share the cache.
--# Giving --cache-file=/dev/null disables caching, for debugging configure.
--# config.status only pays attention to the cache file if you give it the
--# --recheck option to rerun configure.
-+# #ifndef __CYGWIN__
-+# # ifdef __CYGWIN32__
-+# # define __CYGWIN__ __CYGWIN32__
-+# # endif
-+# #endif
-+#
-+# #ifdef __cplusplus
-+# extern "C" {
-+# #endif
-+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
-+# #ifdef __cplusplus
-+# }
-+# #endif
-+#
-+# #ifdef __CYGWIN__
-+# #include <cygwin/cygwin_dll.h>
-+# DECLARE_CYGWIN_DLL( DllMain );
-+# #endif
-+# HINSTANCE __hDllInstance_base;
-+#
-+# BOOL APIENTRY
-+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
-+# {
-+# __hDllInstance_base = hInst;
-+# return TRUE;
-+# }
-+# /* ltdll.c ends here */
-+ # This is a source program that is used to create import libraries
-+ # on Windows for dlls which lack them. Don't remove nor modify the
-+ # starting and closing comments
-+# /* impgen.c starts here */
-+# /* Copyright (C) 1999-2000 Free Software Foundation, Inc.
-+#
-+# This file is part of GNU libtool.
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+# */
-+#
-+# #include <stdio.h> /* for printf() */
-+# #include <unistd.h> /* for open(), lseek(), read() */
-+# #include <fcntl.h> /* for O_RDONLY, O_BINARY */
-+# #include <string.h> /* for strdup() */
-+#
-+# /* O_BINARY isn't required (or even defined sometimes) under Unix */
-+# #ifndef O_BINARY
-+# #define O_BINARY 0
-+# #endif
-+#
-+# static unsigned int
-+# pe_get16 (fd, offset)
-+# int fd;
-+# int offset;
-+# {
-+# unsigned char b[2];
-+# lseek (fd, offset, SEEK_SET);
-+# read (fd, b, 2);
-+# return b[0] + (b[1]<<8);
-+# }
-+#
-+# static unsigned int
-+# pe_get32 (fd, offset)
-+# int fd;
-+# int offset;
-+# {
-+# unsigned char b[4];
-+# lseek (fd, offset, SEEK_SET);
-+# read (fd, b, 4);
-+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-+# }
-+#
-+# static unsigned int
-+# pe_as32 (ptr)
-+# void *ptr;
-+# {
-+# unsigned char *b = ptr;
-+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-+# }
-+#
-+# int
-+# main (argc, argv)
-+# int argc;
-+# char *argv[];
-+# {
-+# int dll;
-+# unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
-+# unsigned long export_rva, export_size, nsections, secptr, expptr;
-+# unsigned long name_rvas, nexp;
-+# unsigned char *expdata, *erva;
-+# char *filename, *dll_name;
-+#
-+# filename = argv[1];
-+#
-+# dll = open(filename, O_RDONLY|O_BINARY);
-+# if (dll < 1)
-+# return 1;
-+#
-+# dll_name = filename;
-+#
-+# for (i=0; filename[i]; i++)
-+# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
-+# dll_name = filename + i +1;
-+#
-+# pe_header_offset = pe_get32 (dll, 0x3c);
-+# opthdr_ofs = pe_header_offset + 4 + 20;
-+# num_entries = pe_get32 (dll, opthdr_ofs + 92);
- #
-+# if (num_entries < 1) /* no exports */
-+# return 1;
-+#
-+# export_rva = pe_get32 (dll, opthdr_ofs + 96);
-+# export_size = pe_get32 (dll, opthdr_ofs + 100);
-+# nsections = pe_get16 (dll, pe_header_offset + 4 +2);
-+# secptr = (pe_header_offset + 4 + 20 +
-+# pe_get16 (dll, pe_header_offset + 4 + 16));
-+#
-+# expptr = 0;
-+# for (i = 0; i < nsections; i++)
-+# {
-+# char sname[8];
-+# unsigned long secptr1 = secptr + 40 * i;
-+# unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
-+# unsigned long vsize = pe_get32 (dll, secptr1 + 16);
-+# unsigned long fptr = pe_get32 (dll, secptr1 + 20);
-+# lseek(dll, secptr1, SEEK_SET);
-+# read(dll, sname, 8);
-+# if (vaddr <= export_rva && vaddr+vsize > export_rva)
-+# {
-+# expptr = fptr + (export_rva - vaddr);
-+# if (export_rva + export_size > vaddr + vsize)
-+# export_size = vsize - (export_rva - vaddr);
-+# break;
-+# }
-+# }
-+#
-+# expdata = (unsigned char*)malloc(export_size);
-+# lseek (dll, expptr, SEEK_SET);
-+# read (dll, expdata, export_size);
-+# erva = expdata - export_rva;
-+#
-+# nexp = pe_as32 (expdata+24);
-+# name_rvas = pe_as32 (expdata+32);
-+#
-+# printf ("EXPORTS\n");
-+# for (i = 0; i<nexp; i++)
-+# {
-+# unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
-+# printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
-+# }
-+#
-+# return 0;
-+# }
-+# /* impgen.c ends here */
-+
- EOF
--# The following way of writing the cache mishandles newlines in values,
--# but we know of no workaround that is simple, portable, and efficient.
--# So, don't put newlines in cache variables' values.
--# Ultrix sh set writes to stderr and can't be redirected directly,
--# and sets the high bit in the cache file unless we assign to the vars.
--(set) 2>&1 |
-- case `(ac_space=' '; set | grep ac_space) 2>&1` in
-- *ac_space=\ *)
-- # `set' does not quote correctly, so add quotes (double-quote substitution
-- # turns \\\\ into \\, and sed turns \\ into \).
-- sed -n \
-- -e "s/'/'\\\\''/g" \
-- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
-- ;;
-- *)
-- # `set' quotes correctly as required by POSIX, so do not add quotes.
-- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
-- esac >> confcache
--if cmp -s $cache_file confcache; then
-- :
--else
-- if test -w $cache_file; then
-- echo "updating cache $cache_file"
-- cat confcache > $cache_file
-- else
-- echo "not updating unwritable cache $cache_file"
-- fi
-+ esac
-+
-+ # We use sed instead of cat because bash on DJGPP gets confused if
-+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
-+ # text mode, it properly converts lines to CR/LF. This bash problem
-+ # is reportedly fixed, but why not run on old versions too?
-+ sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
-+
-+ mv -f "${ofile}T" "$ofile" || \
-+ (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
-+ chmod +x "$ofile"
- fi
--rm -f confcache
-
-
--# Actually configure libtool. ac_aux_dir is where install-sh is found.
--CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
--LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
--LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
--DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
--${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
--$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
--|| { echo "configure: error: libtool configure failed" 1>&2; exit 1; }
-
--# Reload cache, that may have been modified by ltconfig
--if test -r "$cache_file"; then
-- echo "loading cache $cache_file"
-- . $cache_file
--else
-- echo "creating cache $cache_file"
-- > $cache_file
--fi
-
-
- # This can be used to rebuild libtool when needed
--LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
-+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
-
- # Always use our own libtool.
- LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-
--# Redirect the config.log output again, so that the ltconfig log is not
--# clobbered by the next message.
--exec 5>>./config.log
-+# Prevent multiple expansion
-+
-
-
- echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
--echo "configure:1553: checking whether to enable maintainer-specific portions of Makefiles" >&5
-+echo "configure:5479: checking whether to enable maintainer-specific portions of Makefiles" >&5
- # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
- if test "${enable_maintainer_mode+set}" = set; then
- enableval="$enable_maintainer_mode"
-@@ -1579,7 +5505,7 @@
- fi
-
- echo $ac_n "checking host system type""... $ac_c" 1>&6
--echo "configure:1583: checking host system type" >&5
-+echo "configure:5509: checking host system type" >&5
-
- host_alias=$host
- case "$host_alias" in
-@@ -1649,7 +5575,7 @@
- mem_warn=false
-
- echo $ac_n "checking whether to enable memory checking""... $ac_c" 1>&6
--echo "configure:1653: checking whether to enable memory checking" >&5
-+echo "configure:5579: checking whether to enable memory checking" >&5
- if test "x$enable_mem_check" = "xyes"; then
- cat >> confdefs.h <<\EOF
- #define ENABLE_MEM_CHECK 1
-@@ -1663,7 +5589,7 @@
- fi
-
- echo $ac_n "checking whether to enable memory profiling""... $ac_c" 1>&6
--echo "configure:1667: checking whether to enable memory profiling" >&5
-+echo "configure:5593: checking whether to enable memory profiling" >&5
- if test "x$enable_mem_profile" = "xyes"; then
- cat >> confdefs.h <<\EOF
- #define ENABLE_MEM_PROFILE 1
-@@ -1711,7 +5637,7 @@
- # Extract the first word of "gcc", so it can be a program name with args.
- set dummy gcc; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1715: checking for $ac_word" >&5
-+echo "configure:5641: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1741,7 +5667,7 @@
- # Extract the first word of "cc", so it can be a program name with args.
- set dummy cc; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1745: checking for $ac_word" >&5
-+echo "configure:5671: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1792,7 +5718,7 @@
- # Extract the first word of "cl", so it can be a program name with args.
- set dummy cl; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1796: checking for $ac_word" >&5
-+echo "configure:5722: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1824,7 +5750,7 @@
- fi
-
- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
--echo "configure:1828: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-+echo "configure:5754: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-
- ac_ext=c
- # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-@@ -1835,12 +5761,12 @@
-
- cat > conftest.$ac_ext << EOF
-
--#line 1839 "configure"
-+#line 5765 "configure"
- #include "confdefs.h"
-
- main(){return(0);}
- EOF
--if { (eval echo configure:1844: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:5770: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- ac_cv_prog_cc_works=yes
- # If we can't run a trivial program, we are probably using a cross compiler.
- if (./conftest; exit) 2>/dev/null; then
-@@ -1866,12 +5792,12 @@
- { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
- fi
- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
--echo "configure:1870: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
-+echo "configure:5796: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
- echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
- cross_compiling=$ac_cv_prog_cc_cross
-
- echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
--echo "configure:1875: checking whether we are using GNU C" >&5
-+echo "configure:5801: checking whether we are using GNU C" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1880,7 +5806,7 @@
- yes;
- #endif
- EOF
--if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1884: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
-+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:5810: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
- else
- ac_cv_prog_gcc=no
-@@ -1899,7 +5825,7 @@
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
--echo "configure:1903: checking whether ${CC-cc} accepts -g" >&5
-+echo "configure:5829: checking whether ${CC-cc} accepts -g" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1934,7 +5860,7 @@
-
-
- echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
--echo "configure:1938: checking for ${CC-cc} option to accept ANSI C" >&5
-+echo "configure:5864: checking for ${CC-cc} option to accept ANSI C" >&5
- if eval "test \"`echo '$''{'am_cv_prog_cc_stdc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1950,7 +5876,7 @@
- do
- CC="$ac_save_CC $ac_arg"
- cat > conftest.$ac_ext <<EOF
--#line 1954 "configure"
-+#line 5880 "configure"
- #include "confdefs.h"
- #include <stdarg.h>
- #include <stdio.h>
-@@ -1987,7 +5913,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:1991: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:5917: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- am_cv_prog_cc_stdc="$ac_arg"; break
- else
-@@ -2022,7 +5948,7 @@
- # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
- # ./install, which can be erroneously created by make from ./install.sh.
- echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
--echo "configure:2026: checking for a BSD compatible install" >&5
-+echo "configure:5952: checking for a BSD compatible install" >&5
- if test -z "$INSTALL"; then
- if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -2095,19 +6021,19 @@
- fi
-
- echo $ac_n "checking for extra flags to get ANSI library prototypes""... $ac_c" 1>&6
--echo "configure:2099: checking for extra flags to get ANSI library prototypes" >&5
-+echo "configure:6025: checking for extra flags to get ANSI library prototypes" >&5
- glib_save_LIBS=$LIBS
- LIBS="$LIBS -lm"
- if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2106 "configure"
-+#line 6032 "configure"
- #include "confdefs.h"
- #include <math.h>
- int main (void) { return (log(1) != log(1.)); }
- EOF
--if { (eval echo configure:2111: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6037: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- echo "$ac_t""none needed" 1>&6
- else
-@@ -2120,12 +6046,12 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2124 "configure"
-+#line 6050 "configure"
- #include "confdefs.h"
- #include <math.h>
- int main (void) { return (log(1) != log(1.)); }
- EOF
--if { (eval echo configure:2129: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6055: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- echo "$ac_t""-std1" 1>&6
- else
-@@ -2148,16 +6074,16 @@
- LIBS=$glib_save_LIBS
-
- echo $ac_n "checking for extra flags for POSIX compliance""... $ac_c" 1>&6
--echo "configure:2152: checking for extra flags for POSIX compliance" >&5
-+echo "configure:6078: checking for extra flags for POSIX compliance" >&5
- cat > conftest.$ac_ext <<EOF
--#line 2154 "configure"
-+#line 6080 "configure"
- #include "confdefs.h"
- #include <dirent.h>
- int main() {
- DIR *dir;
- ; return 0; }
- EOF
--if { (eval echo configure:2161: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:6087: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- echo "$ac_t""none needed" 1>&6
- else
-@@ -2167,14 +6093,14 @@
- glib_save_CFLAGS=$CFLAGS
- CFLAGS="$CFLAGS -posix"
- cat > conftest.$ac_ext <<EOF
--#line 2171 "configure"
-+#line 6097 "configure"
- #include "confdefs.h"
- #include <dirent.h>
- int main() {
- DIR *dir;
- ; return 0; }
- EOF
--if { (eval echo configure:2178: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:6104: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- echo "$ac_t""-posix" 1>&6
- else
-@@ -2190,93 +6116,13 @@
- rm -f conftest*
-
- # Checks for header files.
--echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
--echo "configure:2195: checking how to run the C preprocessor" >&5
--# On Suns, sometimes $CPP names a directory.
--if test -n "$CPP" && test -d "$CPP"; then
-- CPP=
--fi
--if test -z "$CPP"; then
--if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
-- echo $ac_n "(cached) $ac_c" 1>&6
--else
-- # This must be in double quotes, not single quotes, because CPP may get
-- # substituted into the Makefile and "${CC-cc}" will confuse make.
-- CPP="${CC-cc} -E"
-- # On the NeXT, cc -E runs the code through the compiler's parser,
-- # not just through cpp.
-- cat > conftest.$ac_ext <<EOF
--#line 2210 "configure"
--#include "confdefs.h"
--#include <assert.h>
--Syntax Error
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:2216: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
-- :
--else
-- echo "$ac_err" >&5
-- echo "configure: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- rm -rf conftest*
-- CPP="${CC-cc} -E -traditional-cpp"
-- cat > conftest.$ac_ext <<EOF
--#line 2227 "configure"
--#include "confdefs.h"
--#include <assert.h>
--Syntax Error
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:2233: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
-- :
--else
-- echo "$ac_err" >&5
-- echo "configure: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- rm -rf conftest*
-- CPP="${CC-cc} -nologo -E"
-- cat > conftest.$ac_ext <<EOF
--#line 2244 "configure"
--#include "confdefs.h"
--#include <assert.h>
--Syntax Error
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:2250: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
-- :
--else
-- echo "$ac_err" >&5
-- echo "configure: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- rm -rf conftest*
-- CPP=/lib/cpp
--fi
--rm -f conftest*
--fi
--rm -f conftest*
--fi
--rm -f conftest*
-- ac_cv_prog_CPP="$CPP"
--fi
-- CPP="$ac_cv_prog_CPP"
--else
-- ac_cv_prog_CPP="$CPP"
--fi
--echo "$ac_t""$CPP" 1>&6
--
- echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
--echo "configure:2275: checking for ANSI C header files" >&5
-+echo "configure:6121: checking for ANSI C header files" >&5
- if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2280 "configure"
-+#line 6126 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- #include <stdarg.h>
-@@ -2284,7 +6130,7 @@
- #include <float.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:2288: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:6134: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -2301,7 +6147,7 @@
- if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat > conftest.$ac_ext <<EOF
--#line 2305 "configure"
-+#line 6151 "configure"
- #include "confdefs.h"
- #include <string.h>
- EOF
-@@ -2319,7 +6165,7 @@
- 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 <<EOF
--#line 2323 "configure"
-+#line 6169 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- EOF
-@@ -2340,7 +6186,7 @@
- :
- else
- cat > conftest.$ac_ext <<EOF
--#line 2344 "configure"
-+#line 6190 "configure"
- #include "confdefs.h"
- #include <ctype.h>
- #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-@@ -2351,7 +6197,7 @@
- exit (0); }
-
- EOF
--if { (eval echo configure:2355: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6201: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- :
- else
-@@ -2377,12 +6223,12 @@
-
- # Checks for library functions.
- echo $ac_n "checking for vprintf""... $ac_c" 1>&6
--echo "configure:2381: checking for vprintf" >&5
-+echo "configure:6227: checking for vprintf" >&5
- if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2386 "configure"
-+#line 6232 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char vprintf(); below. */
-@@ -2405,7 +6251,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:2409: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:6255: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_vprintf=yes"
- else
-@@ -2429,12 +6275,12 @@
-
- if test "$ac_cv_func_vprintf" != yes; then
- echo $ac_n "checking for _doprnt""... $ac_c" 1>&6
--echo "configure:2433: checking for _doprnt" >&5
-+echo "configure:6279: checking for _doprnt" >&5
- if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2438 "configure"
-+#line 6284 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char _doprnt(); below. */
-@@ -2457,7 +6303,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:2461: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:6307: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func__doprnt=yes"
- else
-@@ -2485,12 +6331,12 @@
- for ac_func in atexit on_exit
- do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:2489: checking for $ac_func" >&5
-+echo "configure:6335: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2494 "configure"
-+#line 6340 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -2513,7 +6359,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:2517: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:6363: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -2539,7 +6385,7 @@
-
-
- echo $ac_n "checking size of char""... $ac_c" 1>&6
--echo "configure:2543: checking size of char" >&5
-+echo "configure:6389: checking size of char" >&5
- if eval "test \"`echo '$''{'ac_cv_sizeof_char'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2547,9 +6393,10 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2551 "configure"
-+#line 6397 "configure"
- #include "confdefs.h"
- #include <stdio.h>
-+#include <sys/types.h>
- main()
- {
- FILE *f=fopen("conftestval", "w");
-@@ -2558,7 +6405,7 @@
- exit(0);
- }
- EOF
--if { (eval echo configure:2562: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6409: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_sizeof_char=`cat conftestval`
- else
-@@ -2578,7 +6425,7 @@
-
-
- echo $ac_n "checking size of short""... $ac_c" 1>&6
--echo "configure:2582: checking size of short" >&5
-+echo "configure:6429: checking size of short" >&5
- if eval "test \"`echo '$''{'ac_cv_sizeof_short'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2586,9 +6433,10 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2590 "configure"
-+#line 6437 "configure"
- #include "confdefs.h"
- #include <stdio.h>
-+#include <sys/types.h>
- main()
- {
- FILE *f=fopen("conftestval", "w");
-@@ -2597,7 +6445,7 @@
- exit(0);
- }
- EOF
--if { (eval echo configure:2601: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6449: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_sizeof_short=`cat conftestval`
- else
-@@ -2617,7 +6465,7 @@
-
-
- echo $ac_n "checking size of long""... $ac_c" 1>&6
--echo "configure:2621: checking size of long" >&5
-+echo "configure:6469: checking size of long" >&5
- if eval "test \"`echo '$''{'ac_cv_sizeof_long'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2625,9 +6473,10 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2629 "configure"
-+#line 6477 "configure"
- #include "confdefs.h"
- #include <stdio.h>
-+#include <sys/types.h>
- main()
- {
- FILE *f=fopen("conftestval", "w");
-@@ -2636,7 +6485,7 @@
- exit(0);
- }
- EOF
--if { (eval echo configure:2640: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6489: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_sizeof_long=`cat conftestval`
- else
-@@ -2656,7 +6505,7 @@
-
-
- echo $ac_n "checking size of int""... $ac_c" 1>&6
--echo "configure:2660: checking size of int" >&5
-+echo "configure:6509: checking size of int" >&5
- if eval "test \"`echo '$''{'ac_cv_sizeof_int'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2664,9 +6513,10 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2668 "configure"
-+#line 6517 "configure"
- #include "confdefs.h"
- #include <stdio.h>
-+#include <sys/types.h>
- main()
- {
- FILE *f=fopen("conftestval", "w");
-@@ -2675,7 +6525,7 @@
- exit(0);
- }
- EOF
--if { (eval echo configure:2679: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6529: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_sizeof_int=`cat conftestval`
- else
-@@ -2695,7 +6545,7 @@
-
-
- echo $ac_n "checking size of void *""... $ac_c" 1>&6
--echo "configure:2699: checking size of void *" >&5
-+echo "configure:6549: checking size of void *" >&5
- if eval "test \"`echo '$''{'ac_cv_sizeof_void_p'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2703,9 +6553,10 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2707 "configure"
-+#line 6557 "configure"
- #include "confdefs.h"
- #include <stdio.h>
-+#include <sys/types.h>
- main()
- {
- FILE *f=fopen("conftestval", "w");
-@@ -2714,7 +6565,7 @@
- exit(0);
- }
- EOF
--if { (eval echo configure:2718: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6569: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_sizeof_void_p=`cat conftestval`
- else
-@@ -2734,7 +6585,7 @@
-
-
- echo $ac_n "checking size of long long""... $ac_c" 1>&6
--echo "configure:2738: checking size of long long" >&5
-+echo "configure:6589: checking size of long long" >&5
- if eval "test \"`echo '$''{'ac_cv_sizeof_long_long'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2742,9 +6593,10 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2746 "configure"
-+#line 6597 "configure"
- #include "confdefs.h"
- #include <stdio.h>
-+#include <sys/types.h>
- main()
- {
- FILE *f=fopen("conftestval", "w");
-@@ -2753,7 +6605,7 @@
- exit(0);
- }
- EOF
--if { (eval echo configure:2757: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6609: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_sizeof_long_long=`cat conftestval`
- else
-@@ -2774,12 +6626,12 @@
-
-
- echo $ac_n "checking for working const""... $ac_c" 1>&6
--echo "configure:2778: checking for working const" >&5
-+echo "configure:6630: checking for working const" >&5
- if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2783 "configure"
-+#line 6635 "configure"
- #include "confdefs.h"
-
- int main() {
-@@ -2828,7 +6680,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:2832: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:6684: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_c_const=yes
- else
-@@ -2850,7 +6702,7 @@
-
-
- echo $ac_n "checking for __inline""... $ac_c" 1>&6
--echo "configure:2854: checking for __inline" >&5
-+echo "configure:6706: checking for __inline" >&5
- if eval "test \"`echo '$''{'glib_cv_has__inline'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2859,14 +6711,14 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2863 "configure"
-+#line 6715 "configure"
- #include "confdefs.h"
-
- __inline int foo () { return 0; }
- int main () { return foo (); }
-
- EOF
--if { (eval echo configure:2870: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6722: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_has__inline=yes
-
-@@ -2891,7 +6743,7 @@
-
- esac
- echo $ac_n "checking for __inline__""... $ac_c" 1>&6
--echo "configure:2895: checking for __inline__" >&5
-+echo "configure:6747: checking for __inline__" >&5
- if eval "test \"`echo '$''{'glib_cv_has__inline__'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2900,14 +6752,14 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2904 "configure"
-+#line 6756 "configure"
- #include "confdefs.h"
-
- __inline__ int foo () { return 0; }
- int main () { return foo (); }
-
- EOF
--if { (eval echo configure:2911: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6763: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_has__inline__=yes
-
-@@ -2932,7 +6784,7 @@
-
- esac
- echo $ac_n "checking for inline""... $ac_c" 1>&6
--echo "configure:2936: checking for inline" >&5
-+echo "configure:6788: checking for inline" >&5
- if eval "test \"`echo '$''{'glib_cv_hasinline'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2941,14 +6793,14 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 2945 "configure"
-+#line 6797 "configure"
- #include "confdefs.h"
-
- inline int foo () { return 0; }
- int main () { return foo (); }
-
- EOF
--if { (eval echo configure:2952: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6804: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_hasinline=yes
-
-@@ -2974,14 +6826,14 @@
- esac
-
- echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6
--echo "configure:2978: checking whether byte ordering is bigendian" >&5
-+echo "configure:6830: checking whether byte ordering is bigendian" >&5
- if eval "test \"`echo '$''{'ac_cv_c_bigendian'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- ac_cv_c_bigendian=unknown
- # See if sys/param.h defines the BYTE_ORDER macro.
- cat > conftest.$ac_ext <<EOF
--#line 2985 "configure"
-+#line 6837 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #include <sys/param.h>
-@@ -2992,11 +6844,11 @@
- #endif
- ; return 0; }
- EOF
--if { (eval echo configure:2996: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:6848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- # It does; now see whether it defined to BIG_ENDIAN or not.
- cat > conftest.$ac_ext <<EOF
--#line 3000 "configure"
-+#line 6852 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #include <sys/param.h>
-@@ -3007,7 +6859,7 @@
- #endif
- ; return 0; }
- EOF
--if { (eval echo configure:3011: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:6863: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_c_bigendian=yes
- else
-@@ -3027,7 +6879,7 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 3031 "configure"
-+#line 6883 "configure"
- #include "confdefs.h"
- main () {
- /* Are we little or big endian? From Harbison&Steele. */
-@@ -3040,7 +6892,7 @@
- exit (u.c[sizeof (long) - 1] == 1);
- }
- EOF
--if { (eval echo configure:3044: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6896: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_c_bigendian=no
- else
-@@ -3068,17 +6920,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3072: checking for $ac_hdr" >&5
-+echo "configure:6924: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3077 "configure"
-+#line 6929 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3082: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:6934: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3111,17 +6963,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3115: checking for $ac_hdr" >&5
-+echo "configure:6967: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3120 "configure"
-+#line 6972 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3125: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:6977: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3154,17 +7006,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3158: checking for $ac_hdr" >&5
-+echo "configure:7010: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3163 "configure"
-+#line 7015 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3168: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7020: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3197,17 +7049,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3201: checking for $ac_hdr" >&5
-+echo "configure:7053: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3206 "configure"
-+#line 7058 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3211: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7063: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3240,17 +7092,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3244: checking for $ac_hdr" >&5
-+echo "configure:7096: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3249 "configure"
-+#line 7101 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3254: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7106: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3283,17 +7135,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3287: checking for $ac_hdr" >&5
-+echo "configure:7139: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3292 "configure"
-+#line 7144 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3297: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7149: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3326,17 +7178,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3330: checking for $ac_hdr" >&5
-+echo "configure:7182: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3335 "configure"
-+#line 7187 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3340: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7192: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3369,17 +7221,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3373: checking for $ac_hdr" >&5
-+echo "configure:7225: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3378 "configure"
-+#line 7230 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3383: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7235: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3412,17 +7264,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3416: checking for $ac_hdr" >&5
-+echo "configure:7268: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3421 "configure"
-+#line 7273 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3426: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7278: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3455,17 +7307,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3459: checking for $ac_hdr" >&5
-+echo "configure:7311: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3464 "configure"
-+#line 7316 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3469: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7321: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3499,12 +7351,12 @@
- for ac_func in lstat strerror strsignal memmove vsnprintf strcasecmp strncasecmp poll
- do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:3503: checking for $ac_func" >&5
-+echo "configure:7355: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3508 "configure"
-+#line 7360 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -3527,7 +7379,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3531: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7383: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -3554,9 +7406,9 @@
-
- # Check for sys_errlist
- echo $ac_n "checking for sys_errlist""... $ac_c" 1>&6
--echo "configure:3558: checking for sys_errlist" >&5
-+echo "configure:7410: checking for sys_errlist" >&5
- cat > conftest.$ac_ext <<EOF
--#line 3560 "configure"
-+#line 7412 "configure"
- #include "confdefs.h"
-
- int main() {
-@@ -3567,7 +7419,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3571: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7423: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- glib_ok=yes
- else
-@@ -3587,9 +7439,9 @@
-
- # Check for sys_siglist
- echo $ac_n "checking for sys_siglist""... $ac_c" 1>&6
--echo "configure:3591: checking for sys_siglist" >&5
-+echo "configure:7443: checking for sys_siglist" >&5
- cat > conftest.$ac_ext <<EOF
--#line 3593 "configure"
-+#line 7445 "configure"
- #include "confdefs.h"
-
- int main() {
-@@ -3599,7 +7451,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7455: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- glib_ok=yes
- else
-@@ -3619,9 +7471,9 @@
-
- # Check for sys_siglist decl (see Tue Jan 19 00:44:24 1999 in changelog)
- echo $ac_n "checking for sys_siglist declaration""... $ac_c" 1>&6
--echo "configure:3623: checking for sys_siglist declaration" >&5
-+echo "configure:7475: checking for sys_siglist declaration" >&5
- cat > conftest.$ac_ext <<EOF
--#line 3625 "configure"
-+#line 7477 "configure"
- #include "confdefs.h"
- #include <signal.h>
- int main() {
-@@ -3630,7 +7482,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3634: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:7486: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- glib_ok=yes
- else
-@@ -3650,16 +7502,16 @@
-
- # Check if <sys/select.h> needs to be included for fd_set
- echo $ac_n "checking for fd_set""... $ac_c" 1>&6
--echo "configure:3654: checking for fd_set" >&5
-+echo "configure:7506: checking for fd_set" >&5
- cat > conftest.$ac_ext <<EOF
--#line 3656 "configure"
-+#line 7508 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int main() {
- fd_set readMask, writeMask;
- ; return 0; }
- EOF
--if { (eval echo configure:3663: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:7515: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- gtk_ok=yes
- else
-@@ -3673,7 +7525,7 @@
- echo "$ac_t""yes, found in sys/types.h" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3677 "configure"
-+#line 7529 "configure"
- #include "confdefs.h"
- #include <sys/select.h>
- EOF
-@@ -3707,14 +7559,14 @@
- # Check for wchar.h
-
- echo $ac_n "checking for wchar.h""... $ac_c" 1>&6
--echo "configure:3711: checking for wchar.h" >&5
-+echo "configure:7563: checking for wchar.h" >&5
- cat > conftest.$ac_ext <<EOF
--#line 3713 "configure"
-+#line 7565 "configure"
- #include "confdefs.h"
- #include <wchar.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3718: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7570: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3738,14 +7590,14 @@
- # Check for wctype.h (for iswalnum)
-
- echo $ac_n "checking for wctype.h""... $ac_c" 1>&6
--echo "configure:3742: checking for wctype.h" >&5
-+echo "configure:7594: checking for wctype.h" >&5
- cat > conftest.$ac_ext <<EOF
--#line 3744 "configure"
-+#line 7596 "configure"
- #include "confdefs.h"
- #include <wctype.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3749: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7601: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3769,12 +7621,12 @@
- oLIBS="$LIBS"
- # in Solaris 2.5, `iswalnum' is in -lw
- echo $ac_n "checking for iswalnum""... $ac_c" 1>&6
--echo "configure:3773: checking for iswalnum" >&5
-+echo "configure:7625: checking for iswalnum" >&5
- if eval "test \"`echo '$''{'ac_cv_func_iswalnum'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3778 "configure"
-+#line 7630 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char iswalnum(); below. */
-@@ -3797,7 +7649,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3801: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7653: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_iswalnum=yes"
- else
-@@ -3815,7 +7667,7 @@
- else
- echo "$ac_t""no" 1>&6
- echo $ac_n "checking for iswalnum in -lw""... $ac_c" 1>&6
--echo "configure:3819: checking for iswalnum in -lw" >&5
-+echo "configure:7671: checking for iswalnum in -lw" >&5
- ac_lib_var=`echo w'_'iswalnum | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -3823,7 +7675,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lw $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 3827 "configure"
-+#line 7679 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -3834,7 +7686,7 @@
- iswalnum()
- ; return 0; }
- EOF
--if { (eval echo configure:3838: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7690: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -3866,9 +7718,9 @@
-
- # The following is necessary for Linux libc-5.4.38
- echo $ac_n "checking if iswalnum() and friends are properly defined""... $ac_c" 1>&6
--echo "configure:3870: checking if iswalnum() and friends are properly defined" >&5
-+echo "configure:7722: checking if iswalnum() and friends are properly defined" >&5
- cat > conftest.$ac_ext <<EOF
--#line 3872 "configure"
-+#line 7724 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- int main() {
-@@ -3888,7 +7740,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3892: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7744: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- glib_working_wctype=yes
- else
-@@ -3909,7 +7761,7 @@
- echo "$ac_t""$glib_working_wctype" 1>&6
-
- echo $ac_n "checking whether realloc (NULL,) will work""... $ac_c" 1>&6
--echo "configure:3913: checking whether realloc (NULL,) will work" >&5
-+echo "configure:7765: checking whether realloc (NULL,) will work" >&5
- if eval "test \"`echo '$''{'glib_cv_sane_realloc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -3918,7 +7770,7 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 3922 "configure"
-+#line 7774 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -3926,7 +7778,7 @@
- return realloc (0, sizeof (int)) == 0;
- }
- EOF
--if { (eval echo configure:3930: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:7782: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_sane_realloc=yes
- cat >> confdefs.h <<\EOF
-@@ -3951,7 +7803,7 @@
-
-
- echo $ac_n "checking for an implementation of va_copy()""... $ac_c" 1>&6
--echo "configure:3955: checking for an implementation of va_copy()" >&5
-+echo "configure:7807: checking for an implementation of va_copy()" >&5
- if eval "test \"`echo '$''{'glib_cv_va_copy'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -3960,7 +7812,7 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 3964 "configure"
-+#line 7816 "configure"
- #include "confdefs.h"
-
- #include <stdarg.h>
-@@ -3977,7 +7829,7 @@
- return 0;
- }
- EOF
--if { (eval echo configure:3981: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:7833: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_va_copy=yes
-
-@@ -3996,7 +7848,7 @@
-
- echo "$ac_t""$glib_cv_va_copy" 1>&6
- echo $ac_n "checking for an implementation of __va_copy()""... $ac_c" 1>&6
--echo "configure:4000: checking for an implementation of __va_copy()" >&5
-+echo "configure:7852: checking for an implementation of __va_copy()" >&5
- if eval "test \"`echo '$''{'glib_cv___va_copy'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -4005,7 +7857,7 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 4009 "configure"
-+#line 7861 "configure"
- #include "confdefs.h"
-
- #include <stdarg.h>
-@@ -4022,7 +7874,7 @@
- return 0;
- }
- EOF
--if { (eval echo configure:4026: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:7878: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv___va_copy=yes
-
-@@ -4041,7 +7893,7 @@
-
- echo "$ac_t""$glib_cv___va_copy" 1>&6
- echo $ac_n "checking whether va_lists can be copied by value""... $ac_c" 1>&6
--echo "configure:4045: checking whether va_lists can be copied by value" >&5
-+echo "configure:7897: checking whether va_lists can be copied by value" >&5
- if eval "test \"`echo '$''{'glib_cv_va_val_copy'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -4050,7 +7902,7 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 4054 "configure"
-+#line 7906 "configure"
- #include "confdefs.h"
-
- #include <stdarg.h>
-@@ -4067,7 +7919,7 @@
- return 0;
- }
- EOF
--if { (eval echo configure:4071: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:7923: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_va_val_copy=yes
-
-@@ -4112,12 +7964,12 @@
- G_MODULE_HAVE_DLERROR=0
- if test -z "$G_MODULE_IMPL"; then
- echo $ac_n "checking for dlopen""... $ac_c" 1>&6
--echo "configure:4116: checking for dlopen" >&5
-+echo "configure:7968: checking for dlopen" >&5
- if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 4121 "configure"
-+#line 7973 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char dlopen(); below. */
-@@ -4140,7 +7992,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:4144: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7996: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_dlopen=yes"
- else
-@@ -4155,12 +8007,12 @@
- if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- echo $ac_n "checking for dlsym""... $ac_c" 1>&6
--echo "configure:4159: checking for dlsym" >&5
-+echo "configure:8011: checking for dlsym" >&5
- if eval "test \"`echo '$''{'ac_cv_func_dlsym'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 4164 "configure"
-+#line 8016 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char dlsym(); below. */
-@@ -4183,7 +8035,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:4187: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8039: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_dlsym=yes"
- else
-@@ -4211,7 +8063,7 @@
- fi
- if test -z "$G_MODULE_IMPL"; then
- echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
--echo "configure:4215: checking for dlopen in -ldl" >&5
-+echo "configure:8067: checking for dlopen in -ldl" >&5
- ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4219,7 +8071,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-ldl $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4223 "configure"
-+#line 8075 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4230,7 +8082,7 @@
- dlopen()
- ; return 0; }
- EOF
--if { (eval echo configure:4234: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8086: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4246,7 +8098,7 @@
- if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- echo $ac_n "checking for dlsym in -ldl""... $ac_c" 1>&6
--echo "configure:4250: checking for dlsym in -ldl" >&5
-+echo "configure:8102: checking for dlsym in -ldl" >&5
- ac_lib_var=`echo dl'_'dlsym | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4254,7 +8106,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-ldl $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4258 "configure"
-+#line 8110 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4265,7 +8117,7 @@
- dlsym()
- ; return 0; }
- EOF
--if { (eval echo configure:4269: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8121: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4295,18 +8147,18 @@
- fi
- if test -z "$G_MODULE_IMPL"; then
- echo $ac_n "checking how to export all symbols""... $ac_c" 1>&6
--echo "configure:4299: checking how to export all symbols" >&5
-+echo "configure:8151: checking how to export all symbols" >&5
- SAVED_LDFLAGS=$LDFLAGS
- LDFLAGS="$LDFLAGS -Wl,-E"
- cat > conftest.$ac_ext <<EOF
--#line 4303 "configure"
-+#line 8155 "configure"
- #include "confdefs.h"
-
- int main() {
- return 0;
- ; return 0; }
- EOF
--if { (eval echo configure:4310: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8162: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- G_MODULE_LDFLAGS="-Wl,-E"
- else
-@@ -4316,14 +8168,14 @@
-
- LDFLAGS="$SAVED_LDFLAGS -bexpall"
- cat > conftest.$ac_ext <<EOF
--#line 4320 "configure"
-+#line 8172 "configure"
- #include "confdefs.h"
-
- int main() {
- return 0;
- ; return 0; }
- EOF
--if { (eval echo configure:4327: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8179: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- G_MODULE_LDFLAGS="-bexpall"
- else
-@@ -4343,7 +8195,7 @@
- G_MODULE_LDFLAGS=
- fi
- echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
--echo "configure:4347: checking for shl_load in -ldld" >&5
-+echo "configure:8199: checking for shl_load in -ldld" >&5
- ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4351,7 +8203,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-ldld $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4355 "configure"
-+#line 8207 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4362,7 +8214,7 @@
- shl_load()
- ; return 0; }
- EOF
--if { (eval echo configure:4366: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8218: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4396,7 +8248,7 @@
- LIBS="$LIBS $G_MODULE_LIBS"
- LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS"
- echo $ac_n "checking for RTLD_GLOBAL brokenness""... $ac_c" 1>&6
--echo "configure:4400: checking for RTLD_GLOBAL brokenness" >&5
-+echo "configure:8252: checking for RTLD_GLOBAL brokenness" >&5
- if eval "test \"`echo '$''{'glib_cv_rtldglobal_broken'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -4405,7 +8257,7 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 4409 "configure"
-+#line 8261 "configure"
- #include "confdefs.h"
-
- #include <dlfcn.h>
-@@ -4425,7 +8277,7 @@
- return global == local;
- }
- EOF
--if { (eval echo configure:4429: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:8281: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_rtldglobal_broken=no
- else
-@@ -4448,7 +8300,7 @@
- G_MODULE_BROKEN_RTLD_GLOBAL=0
- fi
- echo $ac_n "checking for preceeding underscore in symbols""... $ac_c" 1>&6
--echo "configure:4452: checking for preceeding underscore in symbols" >&5
-+echo "configure:8304: checking for preceeding underscore in symbols" >&5
- if eval "test \"`echo '$''{'glib_cv_uscore'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -4457,7 +8309,7 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 4461 "configure"
-+#line 8313 "configure"
- #include "confdefs.h"
-
- #include <dlfcn.h>
-@@ -4471,7 +8323,7 @@
- } return (!f2 || f1);
- }
- EOF
--if { (eval echo configure:4475: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:8327: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_uscore=yes
- else
-@@ -4496,12 +8348,12 @@
-
- LDFLAGS="$LDFLAGS_orig"
- echo $ac_n "checking for dlerror""... $ac_c" 1>&6
--echo "configure:4500: checking for dlerror" >&5
-+echo "configure:8352: checking for dlerror" >&5
- if eval "test \"`echo '$''{'ac_cv_func_dlerror'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 4505 "configure"
-+#line 8357 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char dlerror(); below. */
-@@ -4524,7 +8376,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:4528: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8380: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_dlerror=yes"
- else
-@@ -4608,7 +8460,7 @@
- case $host in
- *-*-solaris*)
- echo $ac_n "checking for cond_init in -lthread""... $ac_c" 1>&6
--echo "configure:4612: checking for cond_init in -lthread" >&5
-+echo "configure:8464: checking for cond_init in -lthread" >&5
- ac_lib_var=`echo thread'_'cond_init | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4616,7 +8468,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lthread $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4620 "configure"
-+#line 8472 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4627,7 +8479,7 @@
- cond_init()
- ; return 0; }
- EOF
--if { (eval echo configure:4631: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4654,17 +8506,17 @@
- if test "x$have_threads" = xnone; then
- ac_safe=`echo "pthread.h" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for pthread.h""... $ac_c" 1>&6
--echo "configure:4658: checking for pthread.h" >&5
-+echo "configure:8510: checking for pthread.h" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 4663 "configure"
-+#line 8515 "configure"
- #include "confdefs.h"
- #include <pthread.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:4668: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:8520: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -4690,7 +8542,7 @@
- if test "x$want_threads" = xyes || test "x$want_threads" = xnspr; then
- if test "x$have_threads" = xnone; then
- echo $ac_n "checking for PRP_NewNakedCondVar in -lnspr21""... $ac_c" 1>&6
--echo "configure:4694: checking for PRP_NewNakedCondVar in -lnspr21" >&5
-+echo "configure:8546: checking for PRP_NewNakedCondVar in -lnspr21" >&5
- ac_lib_var=`echo nspr21'_'PRP_NewNakedCondVar | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4698,7 +8550,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lnspr21 $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4702 "configure"
-+#line 8554 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4709,7 +8561,7 @@
- PRP_NewNakedCondVar()
- ; return 0; }
- EOF
--if { (eval echo configure:4713: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8565: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4733,7 +8585,7 @@
- fi
-
- echo $ac_n "checking for thread implementation""... $ac_c" 1>&6
--echo "configure:4737: checking for thread implementation" >&5
-+echo "configure:8589: checking for thread implementation" >&5
-
- if test "x$have_threads" = xnone && test "x$want_threads" != xno; then
- echo "$ac_t""none available" 1>&6
-@@ -4752,7 +8604,7 @@
- posix)
- G_THREAD_LIBS=error
- echo $ac_n "checking for pthread_attr_init in -lpthread""... $ac_c" 1>&6
--echo "configure:4756: checking for pthread_attr_init in -lpthread" >&5
-+echo "configure:8608: checking for pthread_attr_init in -lpthread" >&5
- ac_lib_var=`echo pthread'_'pthread_attr_init | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4760,7 +8612,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lpthread $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4764 "configure"
-+#line 8616 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4771,7 +8623,7 @@
- pthread_attr_init()
- ; return 0; }
- EOF
--if { (eval echo configure:4775: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8627: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4793,7 +8645,7 @@
-
- if test "x$G_THREAD_LIBS" = xerror; then
- echo $ac_n "checking for pthread_attr_init in -lpthreads""... $ac_c" 1>&6
--echo "configure:4797: checking for pthread_attr_init in -lpthreads" >&5
-+echo "configure:8649: checking for pthread_attr_init in -lpthreads" >&5
- ac_lib_var=`echo pthreads'_'pthread_attr_init | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4801,7 +8653,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lpthreads $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4805 "configure"
-+#line 8657 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4812,7 +8664,7 @@
- pthread_attr_init()
- ; return 0; }
- EOF
--if { (eval echo configure:4816: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8668: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4835,7 +8687,7 @@
- fi
- if test "x$G_THREAD_LIBS" = xerror; then
- echo $ac_n "checking for pthread_attr_init in -lthread""... $ac_c" 1>&6
--echo "configure:4839: checking for pthread_attr_init in -lthread" >&5
-+echo "configure:8691: checking for pthread_attr_init in -lthread" >&5
- ac_lib_var=`echo thread'_'pthread_attr_init | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4843,7 +8695,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lthread $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4847 "configure"
-+#line 8699 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4854,7 +8706,7 @@
- pthread_attr_init()
- ; return 0; }
- EOF
--if { (eval echo configure:4858: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8710: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4877,7 +8729,7 @@
- fi
- if test "x$G_THREAD_LIBS" = xerror; then
- echo $ac_n "checking for pthread_attr_init in -lc_r""... $ac_c" 1>&6
--echo "configure:4881: checking for pthread_attr_init in -lc_r" >&5
-+echo "configure:8733: checking for pthread_attr_init in -lc_r" >&5
- ac_lib_var=`echo c_r'_'pthread_attr_init | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4885,7 +8737,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lc_r $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4889 "configure"
-+#line 8741 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4896,7 +8748,7 @@
- pthread_attr_init()
- ; return 0; }
- EOF
--if { (eval echo configure:4900: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8752: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4919,12 +8771,12 @@
- fi
- if test "x$G_THREAD_LIBS" = xerror; then
- echo $ac_n "checking for pthread_attr_init""... $ac_c" 1>&6
--echo "configure:4923: checking for pthread_attr_init" >&5
-+echo "configure:8775: checking for pthread_attr_init" >&5
- if eval "test \"`echo '$''{'ac_cv_func_pthread_attr_init'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 4928 "configure"
-+#line 8780 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char pthread_attr_init(); below. */
-@@ -4947,7 +8799,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:4951: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8803: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_pthread_attr_init=yes"
- else
-@@ -4969,7 +8821,7 @@
- fi
- if test "x$G_THREAD_LIBS" = xerror; then
- echo $ac_n "checking for __d10_pthread_attr_init in -lthread""... $ac_c" 1>&6
--echo "configure:4973: checking for __d10_pthread_attr_init in -lthread" >&5
-+echo "configure:8825: checking for __d10_pthread_attr_init in -lthread" >&5
- ac_lib_var=`echo thread'_'__d10_pthread_attr_init | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4977,7 +8829,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lthread $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4981 "configure"
-+#line 8833 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4988,7 +8840,7 @@
- __d10_pthread_attr_init()
- ; return 0; }
- EOF
--if { (eval echo configure:4992: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8844: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5012,7 +8864,7 @@
- fi
- if test "x$G_THREAD_LIBS" = xerror; then
- echo $ac_n "checking for __pthread_attr_init_system in -lpthread""... $ac_c" 1>&6
--echo "configure:5016: checking for __pthread_attr_init_system in -lpthread" >&5
-+echo "configure:8868: checking for __pthread_attr_init_system in -lpthread" >&5
- ac_lib_var=`echo pthread'_'__pthread_attr_init_system | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5020,7 +8872,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lpthread $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5024 "configure"
-+#line 8876 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5031,7 +8883,7 @@
- __pthread_attr_init_system()
- ; return 0; }
- EOF
--if { (eval echo configure:5035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8887: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5061,7 +8913,7 @@
- solaris)
- G_THREAD_LIBS=error
- echo $ac_n "checking for cond_init in -lthread""... $ac_c" 1>&6
--echo "configure:5065: checking for cond_init in -lthread" >&5
-+echo "configure:8917: checking for cond_init in -lthread" >&5
- ac_lib_var=`echo thread'_'cond_init | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5069,7 +8921,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lthread $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5073 "configure"
-+#line 8925 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5080,7 +8932,7 @@
- cond_init()
- ; return 0; }
- EOF
--if { (eval echo configure:5084: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8936: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5108,7 +8960,7 @@
- ;;
- nspr)
- echo $ac_n "checking for PRP_NewNakedCondVar in -lnspr21""... $ac_c" 1>&6
--echo "configure:5112: checking for PRP_NewNakedCondVar in -lnspr21" >&5
-+echo "configure:8964: checking for PRP_NewNakedCondVar in -lnspr21" >&5
- ac_lib_var=`echo nspr21'_'PRP_NewNakedCondVar | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5116,7 +8968,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lnspr21 $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5120 "configure"
-+#line 8972 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5127,7 +8979,7 @@
- PRP_NewNakedCondVar()
- ; return 0; }
- EOF
--if { (eval echo configure:5131: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8983: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5163,7 +9015,7 @@
- fi
-
- echo $ac_n "checking necessary linker options""... $ac_c" 1>&6
--echo "configure:5167: checking necessary linker options" >&5
-+echo "configure:9019: checking necessary linker options" >&5
- echo "$ac_t""$G_THREAD_LIBS" 1>&6
-
-
-@@ -5191,7 +9043,7 @@
- old_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS $G_THREAD_CFLAGS"
- cat > conftest.$ac_ext <<EOF
--#line 5195 "configure"
-+#line 9047 "configure"
- #include "confdefs.h"
- #include <time.h>
- EOF
-@@ -5208,7 +9060,7 @@
- CPPFLAGS=$old_CPPFLAGS
-
- echo $ac_n "checking necessary compiler options""... $ac_c" 1>&6
--echo "configure:5212: checking necessary compiler options" >&5
-+echo "configure:9064: checking necessary compiler options" >&5
-
- echo "$ac_t""$G_THREAD_CFLAGS" 1>&6
- else
-@@ -5226,12 +9078,12 @@
- for ac_func in localtime_r rand_r
- do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:5230: checking for $ac_func" >&5
-+echo "configure:9082: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 5235 "configure"
-+#line 9087 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -5254,7 +9106,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:5258: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9110: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -5280,7 +9132,7 @@
-
- if test "$ac_cv_header_pwd_h" = "yes"; then
- echo $ac_n "checking for getpwuid_r""... $ac_c" 1>&6
--echo "configure:5284: checking for getpwuid_r" >&5
-+echo "configure:9136: checking for getpwuid_r" >&5
- if eval "test \"`echo '$''{'ac_cv_func_getpwuid_r'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -5288,7 +9140,7 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 5292 "configure"
-+#line 9144 "configure"
- #include "confdefs.h"
- #include <errno.h>
- int main () { char buffer[10000], *pointer;
-@@ -5300,7 +9152,7 @@
- sizeof (buffer), &pointer);
- return errno == ENOSYS || error == ENOSYS;}
- EOF
--if { (eval echo configure:5304: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:9156: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_func_getpwuid_r=yes
- else
-@@ -5325,11 +9177,11 @@
- fi
- if test "$ac_cv_func_getpwuid_r" = "yes"; then
- echo $ac_n "checking whether getpwuid_r is posix like""... $ac_c" 1>&6
--echo "configure:5329: checking whether getpwuid_r is posix like" >&5
-+echo "configure:9181: checking whether getpwuid_r is posix like" >&5
- # The signature for the POSIX version is:
- # int getpwuid_r(uid_t, struct passwd *, char *, size_t, struct passwd **)
- cat > conftest.$ac_ext <<EOF
--#line 5333 "configure"
-+#line 9185 "configure"
- #include "confdefs.h"
- #include <pwd.h>
- #include <sys/types.h>
-@@ -5338,7 +9190,7 @@
- getpwuid_r((uid_t)0, NULL, NULL, (size_t)0, NULL);
- ; return 0; }
- EOF
--if { (eval echo configure:5342: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:9194: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- cat >> confdefs.h <<\EOF
- #define HAVE_GETPWUID_R_POSIX 1
-@@ -5357,17 +9209,17 @@
- if test x"$have_threads" = xposix; then
- LIBS="$LIBS $G_THREAD_LIBS"
- echo $ac_n "checking whether pthread_getspecific is posix like""... $ac_c" 1>&6
--echo "configure:5361: checking whether pthread_getspecific is posix like" >&5
-+echo "configure:9213: checking whether pthread_getspecific is posix like" >&5
- # PCThreads has pthread_getspecific(pthread_key_t, void **);
- cat > conftest.$ac_ext <<EOF
--#line 5364 "configure"
-+#line 9216 "configure"
- #include "confdefs.h"
- #include <pthread.h>
- int main() {
- pthread_getspecific(0,NULL);
- ; return 0; }
- EOF
--if { (eval echo configure:5371: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:9223: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- echo "$ac_t""no" 1>&6
- else
-@@ -5382,20 +9234,20 @@
- fi
- rm -f conftest*
- echo $ac_n "checking whether pthread_mutex_trylock is posix like""... $ac_c" 1>&6
--echo "configure:5386: checking whether pthread_mutex_trylock is posix like" >&5
-+echo "configure:9238: checking whether pthread_mutex_trylock is posix like" >&5
- # DCE Threads return 1 as success, posix 0. what a mess.
- if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 5392 "configure"
-+#line 9244 "configure"
- #include "confdefs.h"
- #include <pthread.h>
- pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
- int main () {
- return !pthread_mutex_trylock (&mutex); }
- EOF
--if { (eval echo configure:5399: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:9251: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- echo "$ac_t""no" 1>&6
- else
-@@ -5412,13 +9264,13 @@
- fi
-
- echo $ac_n "checking whether pthread_cond_timedwait is posix like""... $ac_c" 1>&6
--echo "configure:5416: checking whether pthread_cond_timedwait is posix like" >&5
-+echo "configure:9268: checking whether pthread_cond_timedwait is posix like" >&5
- # DCE Threads return -1 as failure, posix ETIMEDOUT.
- if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 5422 "configure"
-+#line 9274 "configure"
- #include "confdefs.h"
- #include <pthread.h>
- int main () {
-@@ -5432,7 +9284,7 @@
- return pthread_cond_timedwait (&cond,&mutex,&tspec)
- != -1;}
- EOF
--if { (eval echo configure:5436: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:9288: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- echo "$ac_t""no" 1>&6
- else
-@@ -5475,7 +9327,7 @@
- case "$mutex_has_default" in
- "yes")
- echo $ac_n "checking size of $mutex_default_type""... $ac_c" 1>&6
--echo "configure:5479: checking size of $mutex_default_type" >&5
-+echo "configure:9331: checking size of $mutex_default_type" >&5
- if eval "test \"`echo '$''{'glib_cv_sizeof_gmutex'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -5483,7 +9335,7 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 5487 "configure"
-+#line 9339 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- #include <$mutex_header_file>
-@@ -5495,7 +9347,7 @@
- exit(0);
- }
- EOF
--if { (eval echo configure:5499: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:9351: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_sizeof_gmutex=`cat conftestval`
- else
-@@ -5515,7 +9367,7 @@
-
-
- echo $ac_n "checking byte contents of $mutex_default_type""... $ac_c" 1>&6
--echo "configure:5519: checking byte contents of $mutex_default_type" >&5
-+echo "configure:9371: checking byte contents of $mutex_default_type" >&5
- if eval "test \"`echo '$''{'glib_cv_byte_contents_gmutex'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -5523,7 +9375,7 @@
- glib_cv_byte_contents_gmutex=0
- else
- cat > conftest.$ac_ext <<EOF
--#line 5527 "configure"
-+#line 9379 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- #include <$mutex_header_file>
-@@ -5540,7 +9392,7 @@
- exit(0);
- }
- EOF
--if { (eval echo configure:5544: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:9396: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- glib_cv_byte_contents_gmutex=`cat conftestval`
- else
-@@ -5576,7 +9428,7 @@
- glib_nl='\n'
- fi
- echo $ac_n "checking system definitions for $glib_sysdef_msg""... $ac_c" 1>&6
--echo "configure:5580: checking system definitions for $glib_sysdef_msg" >&5
-+echo "configure:9432: checking system definitions for $glib_sysdef_msg" >&5
- cat >confrun.c <<_______EOF
- #include <stdio.h>
- #include <sys/types.h>
-@@ -5603,11 +9455,11 @@
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
- else
- cat > conftest.$ac_ext <<EOF
--#line 5607 "configure"
-+#line 9459 "configure"
- #include "confdefs.h"
- `cat confrun.c`
- EOF
--if { (eval echo configure:5611: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:9463: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- echo "$ac_t""done" 1>&6
- else
-@@ -5813,16 +9665,20 @@
- s%@build_cpu@%$build_cpu%g
- s%@build_vendor@%$build_vendor%g
- s%@build_os@%$build_os%g
--s%@RANLIB@%$RANLIB%g
- s%@CC@%$CC%g
- s%@LN_S@%$LN_S%g
-+s%@OBJEXT@%$OBJEXT%g
-+s%@EXEEXT@%$EXEEXT%g
-+s%@ECHO@%$ECHO%g
-+s%@RANLIB@%$RANLIB%g
-+s%@STRIP@%$STRIP%g
-+s%@CPP@%$CPP%g
- s%@LIBTOOL@%$LIBTOOL%g
- s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g
- s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g
- s%@MAINT@%$MAINT%g
- s%@ENABLE_MEM_CHECK@%$ENABLE_MEM_CHECK%g
- s%@ENABLE_MEM_PROFILE@%$ENABLE_MEM_PROFILE%g
--s%@CPP@%$CPP%g
- s%@G_MODULE_IMPL@%$G_MODULE_IMPL%g
- s%@G_MODULE_LIBS@%$G_MODULE_LIBS%g
- s%@G_MODULE_LDFLAGS@%$G_MODULE_LDFLAGS%g
---- glib1.2-1.2.10.orig/gmodule/Makefile.in
-+++ glib1.2-1.2.10/gmodule/Makefile.in
-@@ -1,6 +1,6 @@
--# Makefile.in generated automatically by automake 1.4 from Makefile.am
-+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
--# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -62,8 +62,10 @@
- AS = @AS@
- CC = @CC@
- DLLTOOL = @DLLTOOL@
-+ECHO = @ECHO@
- ENABLE_MEM_CHECK = @ENABLE_MEM_CHECK@
- ENABLE_MEM_PROFILE = @ENABLE_MEM_PROFILE@
-+EXEEXT = @EXEEXT@
- GLIB_BINARY_AGE = @GLIB_BINARY_AGE@
- GLIB_DEBUG_FLAGS = @GLIB_DEBUG_FLAGS@
- GLIB_INTERFACE_AGE = @GLIB_INTERFACE_AGE@
-@@ -88,8 +90,10 @@
- MAINT = @MAINT@
- MAKEINFO = @MAKEINFO@
- OBJDUMP = @OBJDUMP@
-+OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- RANLIB = @RANLIB@
-+STRIP = @STRIP@
- VERSION = @VERSION@
-
- INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/gmodule -DG_LOG_DOMAIN=\"GModule\" @GLIB_DEBUG_FLAGS@
-@@ -112,17 +116,17 @@
- libgmodule_la_LDFLAGS = @G_MODULE_LDFLAGS@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic
-
-
--libgmodule_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
-+libgmodule_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
- # we should really depend on $(libglib) for libgmodule.la, but libtool has a
- # problem with this ;(
-
- libgplugin_a_la_SOURCES = libgplugin_a.c
- libgplugin_a_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module
--libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
-+libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
-
- libgplugin_b_la_SOURCES = libgplugin_b.c
- libgplugin_b_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module
--libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
-+libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
-
- noinst_PROGRAMS = testgmodule
- testgmodule_LDFLAGS = @G_MODULE_LDFLAGS@
-@@ -143,10 +147,11 @@
- libgplugin_a_la_OBJECTS = libgplugin_a.lo
- libgplugin_b_la_DEPENDENCIES =
- libgplugin_b_la_OBJECTS = libgplugin_b.lo
-+noinst_PROGRAMS = testgmodule$(EXEEXT)
- PROGRAMS = $(noinst_PROGRAMS)
-
- testgmodule_SOURCES = testgmodule.c
--testgmodule_OBJECTS = testgmodule.o
-+testgmodule_OBJECTS = testgmodule.$(OBJEXT)
- testgmodule_DEPENDENCIES = libgmodule.la $(top_builddir)/libglib.la
- CFLAGS = @CFLAGS@
- COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-@@ -161,14 +166,14 @@
-
- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
--TAR = gtar
-+TAR = tar
- GZIP_ENV = --best
- SOURCES = $(libgmodule_la_SOURCES) $(libgplugin_a_la_SOURCES) $(libgplugin_b_la_SOURCES) testgmodule.c
--OBJECTS = $(libgmodule_la_OBJECTS) $(libgplugin_a_la_OBJECTS) $(libgplugin_b_la_OBJECTS) testgmodule.o
-+OBJECTS = $(libgmodule_la_OBJECTS) $(libgplugin_a_la_OBJECTS) $(libgplugin_b_la_OBJECTS) testgmodule.$(OBJEXT)
-
- all: all-redirect
- .SUFFIXES:
--.SUFFIXES: .S .c .lo .o .s
-+.SUFFIXES: .S .c .lo .o .obj .s
- $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps gmodule/Makefile
-
-@@ -197,6 +202,11 @@
- .c.o:
- $(COMPILE) -c $<
-
-+# FIXME: We should only use cygpath when building on Windows,
-+# and only if it is available.
-+.c.obj:
-+ $(COMPILE) -c `cygpath -w $<`
-+
- .s.o:
- $(COMPILE) -c $<
-
-@@ -205,6 +215,7 @@
-
- mostlyclean-compile:
- -rm -f *.o core *.core
-+ -rm -f *.$(OBJEXT)
-
- clean-compile:
-
-@@ -250,8 +261,8 @@
-
- maintainer-clean-noinstPROGRAMS:
-
--testgmodule: $(testgmodule_OBJECTS) $(testgmodule_DEPENDENCIES)
-- @rm -f testgmodule
-+testgmodule$(EXEEXT): $(testgmodule_OBJECTS) $(testgmodule_DEPENDENCIES)
-+ @rm -f testgmodule$(EXEEXT)
- $(LINK) $(testgmodule_LDFLAGS) $(testgmodule_OBJECTS) $(testgmodule_LDADD) $(LIBS)
-
- install-glibincludeHEADERS: $(glibinclude_HEADERS)
-@@ -287,7 +298,7 @@
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-+ || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP))
-
- mostlyclean-tags:
-
-@@ -313,15 +324,6 @@
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
--gmodule.lo gmodule.o : gmodule.c gmodule.h ../glib.h ../glibconfig.h \
-- gmoduleconf.h gmodule-dl.c
--libgplugin_a.lo libgplugin_a.o : libgplugin_a.c gmodule.h ../glib.h \
-- ../glibconfig.h
--libgplugin_b.lo libgplugin_b.o : libgplugin_b.c gmodule.h ../glib.h \
-- ../glibconfig.h
--testgmodule.o: testgmodule.c gmodule.h ../glib.h ../glibconfig.h \
-- gmoduleconf.h
--
- info-am:
- info: info-am
- dvi-am:
---- glib1.2-1.2.10.orig/gmodule/Makefile.am
-+++ glib1.2-1.2.10/gmodule/Makefile.am
-@@ -29,17 +29,17 @@
- -release $(LT_RELEASE) \
- -export-dynamic
-
--libgmodule_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
-+libgmodule_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
- # we should really depend on $(libglib) for libgmodule.la, but libtool has a
- # problem with this ;(
-
- libgplugin_a_la_SOURCES = libgplugin_a.c
- libgplugin_a_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module
--libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
-+libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
-
- libgplugin_b_la_SOURCES = libgplugin_b.c
- libgplugin_b_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module
--libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
-+libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ $(libglib)
-
- noinst_PROGRAMS = testgmodule
- testgmodule_LDFLAGS += @G_MODULE_LDFLAGS@
---- glib1.2-1.2.10.orig/config.sub
-+++ glib1.2-1.2.10/config.sub
-@@ -1,6 +1,11 @@
- #! /bin/sh
--# Configuration validation subroutine script, version 1.1.
--# Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc.
-+# Configuration validation subroutine script.
-+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-+# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
-+# Inc.
-+
-+timestamp='2006-09-20'
-+
- # This file is (in principle) common to ALL GNU software.
- # The presence of a machine in this file suggests that SOME GNU software
- # can handle that machine. It does not imply ALL GNU software can.
-@@ -17,14 +22,18 @@
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
--# Foundation, Inc., 59 Temple Place - Suite 330,
--# Boston, MA 02111-1307, USA.
--
-+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-+# 02110-1301, USA.
-+#
- # As a special exception to the GNU General Public License, if you
- # distribute this file as part of a program that contains a
- # configuration script generated by Autoconf, you may include it under
- # the same distribution terms that you use for the rest of that program.
-
-+
-+# Please send patches to <config-patches@gnu.org>. Submit a context
-+# diff and a properly formatted ChangeLog entry.
-+#
- # Configuration subroutine to validate and canonicalize a configuration type.
- # Supply the specified configuration type as an argument.
- # If it is invalid, we print an error message on stderr and exit with code 1.
-@@ -45,30 +54,75 @@
- # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
- # It is wrong to echo any other type of specification.
-
--if [ x$1 = x ]
--then
-- echo Configuration name missing. 1>&2
-- echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
-- echo "or $0 ALIAS" 1>&2
-- echo where ALIAS is a recognized configuration type. 1>&2
-- exit 1
--fi
-+me=`echo "$0" | sed -e 's,.*/,,'`
-
--# First pass through any local machine types.
--case $1 in
-- *local*)
-- echo $1
-- exit 0
-- ;;
-- *)
-- ;;
-+usage="\
-+Usage: $0 [OPTION] CPU-MFR-OPSYS
-+ $0 [OPTION] ALIAS
-+
-+Canonicalize a configuration name.
-+
-+Operation modes:
-+ -h, --help print this help, then exit
-+ -t, --time-stamp print date of last modification, then exit
-+ -v, --version print version number, then exit
-+
-+Report bugs and patches to <config-patches@gnu.org>."
-+
-+version="\
-+GNU config.sub ($timestamp)
-+
-+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-+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."
-+
-+help="
-+Try \`$me --help' for more information."
-+
-+# Parse command line
-+while test $# -gt 0 ; do
-+ case $1 in
-+ --time-stamp | --time* | -t )
-+ echo "$timestamp" ; exit ;;
-+ --version | -v )
-+ echo "$version" ; exit ;;
-+ --help | --h* | -h )
-+ echo "$usage"; exit ;;
-+ -- ) # Stop option processing
-+ shift; break ;;
-+ - ) # Use stdin as input.
-+ break ;;
-+ -* )
-+ echo "$me: invalid option $1$help"
-+ exit 1 ;;
-+
-+ *local*)
-+ # First pass through any local machine types.
-+ echo $1
-+ exit ;;
-+
-+ * )
-+ break ;;
-+ esac
-+done
-+
-+case $# in
-+ 0) echo "$me: missing argument$help" >&2
-+ exit 1;;
-+ 1) ;;
-+ *) echo "$me: too many arguments$help" >&2
-+ exit 1;;
- esac
-
- # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
- # Here we must recognize all the valid KERNEL-OS combinations.
- maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
- case $maybe_os in
-- linux-gnu*)
-+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
-+ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
-+ storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
-@@ -94,7 +148,7 @@
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-- -apple)
-+ -apple | -axis | -knuth | -cray)
- os=
- basic_machine=$1
- ;;
-@@ -108,9 +162,21 @@
- os=-vxworks
- basic_machine=$1
- ;;
-+ -chorusos*)
-+ os=-chorusos
-+ basic_machine=$1
-+ ;;
-+ -chorusrdb)
-+ os=-chorusrdb
-+ basic_machine=$1
-+ ;;
- -hiux*)
- os=-hiuxwe2
- ;;
-+ -sco6)
-+ os=-sco5v6
-+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-+ ;;
- -sco5)
- os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-@@ -127,6 +193,10 @@
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
-+ -sco5v6*)
-+ # Don't forget version if it is 3.2v4 or newer.
-+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-+ ;;
- -sco*)
- os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-@@ -166,27 +236,74 @@
- case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
-- tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
-- | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
-- | 580 | i960 | h8300 \
-- | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
-- | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \
-- | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
-- | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
-- | mips64orion | mips64orionel | mipstx39 | mipstx39el \
-- | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
-- | mips64vr5000 | miprs64vr5000el | mcore \
-- | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
-- | thumb | d10v | fr30)
-+ 1750a | 580 \
-+ | a29k \
-+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-+ | am33_2.0 \
-+ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
-+ | bfin \
-+ | c4x | clipper \
-+ | d10v | d30v | dlx | dsp16xx \
-+ | fr30 | frv \
-+ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-+ | i370 | i860 | i960 | ia64 \
-+ | ip2k | iq2000 \
-+ | m32c | m32r | m32rle | m68000 | m68k | m88k \
-+ | maxq | mb | microblaze | mcore \
-+ | mips | mipsbe | mipseb | mipsel | mipsle \
-+ | mips16 \
-+ | mips64 | mips64el \
-+ | mips64vr | mips64vrel \
-+ | mips64orion | mips64orionel \
-+ | mips64vr4100 | mips64vr4100el \
-+ | mips64vr4300 | mips64vr4300el \
-+ | mips64vr5000 | mips64vr5000el \
-+ | mips64vr5900 | mips64vr5900el \
-+ | mipsisa32 | mipsisa32el \
-+ | mipsisa32r2 | mipsisa32r2el \
-+ | mipsisa64 | mipsisa64el \
-+ | mipsisa64r2 | mipsisa64r2el \
-+ | mipsisa64sb1 | mipsisa64sb1el \
-+ | mipsisa64sr71k | mipsisa64sr71kel \
-+ | mipstx39 | mipstx39el \
-+ | mn10200 | mn10300 \
-+ | mt \
-+ | msp430 \
-+ | nios | nios2 \
-+ | ns16k | ns32k \
-+ | or32 \
-+ | pdp10 | pdp11 | pj | pjl \
-+ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
-+ | pyramid \
-+ | score \
-+ | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
-+ | sh64 | sh64le \
-+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
-+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
-+ | spu | strongarm \
-+ | tahoe | thumb | tic4x | tic80 | tron \
-+ | v850 | v850e \
-+ | we32k \
-+ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
-+ | z8k)
- basic_machine=$basic_machine-unknown
- ;;
-- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl)
-+ m6811 | m68hc11 | m6812 | m68hc12)
-+ # Motorola 68HC11/12.
-+ basic_machine=$basic_machine-unknown
-+ os=-none
-+ ;;
-+ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
-+ ;;
-+ ms1)
-+ basic_machine=mt-unknown
- ;;
-
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
-- i[34567]86)
-+ i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
-@@ -195,24 +312,66 @@
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
-- # FIXME: clean up the formatting here.
-- vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
-- | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
-- | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
-- | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
-- | xmp-* | ymp-* \
-- | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \
-- | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \
-- | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
-- | clipper-* | orion-* \
-- | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
-- | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \
-- | mips64el-* | mips64orion-* | mips64orionel-* \
-- | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
-- | mipstx39-* | mipstx39el-* | mcore-* \
-- | f301-* | armv*-* | t3e-* \
-- | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
-- | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* )
-+ 580-* \
-+ | a29k-* \
-+ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-+ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
-+ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
-+ | avr-* | avr32-* \
-+ | bfin-* | bs2000-* \
-+ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
-+ | clipper-* | craynv-* | cydra-* \
-+ | d10v-* | d30v-* | dlx-* \
-+ | elxsi-* \
-+ | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
-+ | h8300-* | h8500-* \
-+ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-+ | i*86-* | i860-* | i960-* | ia64-* \
-+ | ip2k-* | iq2000-* \
-+ | m32c-* | m32r-* | m32rle-* \
-+ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-+ | m88110-* | m88k-* | maxq-* | mcore-* \
-+ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-+ | mips16-* \
-+ | mips64-* | mips64el-* \
-+ | mips64vr-* | mips64vrel-* \
-+ | mips64orion-* | mips64orionel-* \
-+ | mips64vr4100-* | mips64vr4100el-* \
-+ | mips64vr4300-* | mips64vr4300el-* \
-+ | mips64vr5000-* | mips64vr5000el-* \
-+ | mips64vr5900-* | mips64vr5900el-* \
-+ | mipsisa32-* | mipsisa32el-* \
-+ | mipsisa32r2-* | mipsisa32r2el-* \
-+ | mipsisa64-* | mipsisa64el-* \
-+ | mipsisa64r2-* | mipsisa64r2el-* \
-+ | mipsisa64sb1-* | mipsisa64sb1el-* \
-+ | mipsisa64sr71k-* | mipsisa64sr71kel-* \
-+ | mipstx39-* | mipstx39el-* \
-+ | mmix-* \
-+ | mt-* \
-+ | msp430-* \
-+ | nios-* | nios2-* \
-+ | none-* | np1-* | ns16k-* | ns32k-* \
-+ | orion-* \
-+ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
-+ | pyramid-* \
-+ | romp-* | rs6000-* \
-+ | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
-+ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-+ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
-+ | sparclite-* \
-+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
-+ | tahoe-* | thumb-* \
-+ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
-+ | tron-* \
-+ | v850-* | v850e-* | vax-* \
-+ | we32k-* \
-+ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
-+ | xstormy16-* | xtensa-* \
-+ | ymp-* \
-+ | z8k-*)
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
-@@ -230,6 +389,9 @@
- basic_machine=a29k-amd
- os=-udi
- ;;
-+ abacus)
-+ basic_machine=abacus-unknown
-+ ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
-@@ -244,19 +406,25 @@
- basic_machine=a29k-none
- os=-bsd
- ;;
-+ amd64)
-+ basic_machine=x86_64-pc
-+ ;;
-+ amd64-*)
-+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
-- basic_machine=m68k-cbm
-+ basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
-- basic_machine=m68k-cbm
-+ basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
-- basic_machine=m68k-cbm
-+ basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
-@@ -275,6 +443,10 @@
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
-+ c90)
-+ basic_machine=c90-cray
-+ os=-unicos
-+ ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
-@@ -295,27 +467,45 @@
- basic_machine=c38-convex
- os=-bsd
- ;;
-- cray | ymp)
-- basic_machine=ymp-cray
-+ cray | j90)
-+ basic_machine=j90-cray
- os=-unicos
- ;;
-- cray2)
-- basic_machine=cray2-cray
-- os=-unicos
-+ craynv)
-+ basic_machine=craynv-cray
-+ os=-unicosmp
- ;;
-- [ctj]90-cray)
-- basic_machine=c90-cray
-- os=-unicos
-+ cr16c)
-+ basic_machine=cr16c-unknown
-+ os=-elf
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
-+ crisv32 | crisv32-* | etraxfs*)
-+ basic_machine=crisv32-axis
-+ ;;
-+ cris | cris-* | etrax*)
-+ basic_machine=cris-axis
-+ ;;
-+ crx)
-+ basic_machine=crx-unknown
-+ os=-elf
-+ ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
- ;;
-+ decsystem10* | dec10*)
-+ basic_machine=pdp10-dec
-+ os=-tops10
-+ ;;
-+ decsystem20* | dec20*)
-+ basic_machine=pdp10-dec
-+ os=-tops20
-+ ;;
- delta | 3300 | motorola-3300 | motorola-delta \
- | 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
-@@ -324,6 +514,10 @@
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
-+ djgpp)
-+ basic_machine=i586-pc
-+ os=-msdosdjgpp
-+ ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
-@@ -357,6 +551,10 @@
- basic_machine=tron-gmicro
- os=-sysv
- ;;
-+ go32)
-+ basic_machine=i386-pc
-+ os=-go32
-+ ;;
- h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
-@@ -432,19 +630,19 @@
- basic_machine=i370-ibm
- ;;
- # I'm not sure what "Sysv32" means. Should this be sysv3.2?
-- i[34567]86v32)
-+ i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
- ;;
-- i[34567]86v4*)
-+ i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
- ;;
-- i[34567]86v)
-+ i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
- ;;
-- i[34567]86sol2)
-+ i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
-@@ -456,17 +654,6 @@
- basic_machine=i386-unknown
- os=-vsta
- ;;
-- i386-go32 | go32)
-- basic_machine=i386-unknown
-- os=-go32
-- ;;
-- i386-mingw32 | mingw32)
-- basic_machine=i386-unknown
-- os=-mingw32
-- ;;
-- i386-qnx | qnx)
-- basic_machine=i386-qnx
-- ;;
- iris | iris4d)
- basic_machine=mips-sgi
- case $os in
-@@ -492,6 +679,10 @@
- basic_machine=ns32k-utek
- os=-sysv
- ;;
-+ mingw32)
-+ basic_machine=i386-pc
-+ os=-mingw32
-+ ;;
- miniframe)
- basic_machine=m68000-convergent
- ;;
-@@ -499,14 +690,6 @@
- basic_machine=m68k-atari
- os=-mint
- ;;
-- mipsel*-linux*)
-- basic_machine=mipsel-unknown
-- os=-linux-gnu
-- ;;
-- mips*-linux*)
-- basic_machine=mips-unknown
-- os=-linux-gnu
-- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
-@@ -517,10 +700,17 @@
- basic_machine=m68k-rom68k
- os=-coff
- ;;
-+ morphos)
-+ basic_machine=powerpc-unknown
-+ os=-morphos
-+ ;;
- msdos)
-- basic_machine=i386-unknown
-+ basic_machine=i386-pc
- os=-msdos
- ;;
-+ ms1-*)
-+ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
-+ ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
-@@ -582,13 +772,27 @@
- basic_machine=i960-intel
- os=-mon960
- ;;
-+ nonstopux)
-+ basic_machine=mips-compaq
-+ os=-nonstopux
-+ ;;
- np1)
- basic_machine=np1-gould
- ;;
-+ nsr-tandem)
-+ basic_machine=nsr-tandem
-+ ;;
- op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
-+ openrisc | openrisc-*)
-+ basic_machine=or32-unknown
-+ ;;
-+ os400)
-+ basic_machine=powerpc-ibm
-+ os=-os400
-+ ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
-@@ -611,45 +815,75 @@
- pbb)
- basic_machine=m68k-tti
- ;;
-- pc532 | pc532-*)
-+ pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
-- pentium | p5 | k5 | k6 | nexen)
-+ pc98)
-+ basic_machine=i386-pc
-+ ;;
-+ pc98-*)
-+ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
-+ pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
-- pentiumpro | p6 | 6x86)
-+ pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
-- pentiumii | pentium2)
-+ pentiumii | pentium2 | pentiumiii | pentium3)
-+ basic_machine=i686-pc
-+ ;;
-+ pentium4)
- basic_machine=i786-pc
- ;;
-- pentium-* | p5-* | k5-* | k6-* | nexen-*)
-+ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
-- pentiumpro-* | p6-* | 6x86-*)
-+ pentiumpro-* | p6-* | 6x86-* | athlon-*)
-+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
-+ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
-- pentiumii-* | pentium2-*)
-+ pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
- ;;
-- power) basic_machine=rs6000-ibm
-+ power) basic_machine=power-ibm
- ;;
- ppc) basic_machine=powerpc-unknown
-- ;;
-+ ;;
- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
-- ;;
-+ ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
-+ ppc64) basic_machine=powerpc64-unknown
-+ ;;
-+ ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
-+ ppc64le | powerpc64little | ppc64-le | powerpc64-little)
-+ basic_machine=powerpc64le-unknown
-+ ;;
-+ ppc64le-* | powerpc64little-*)
-+ basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
- ps2)
- basic_machine=i386-ibm
- ;;
-+ pw32)
-+ basic_machine=i586-unknown
-+ os=-pw32
-+ ;;
-+ rdos)
-+ basic_machine=i386-pc
-+ os=-rdos
-+ ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=-coff
-@@ -660,10 +894,30 @@
- rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
-+ s390 | s390-*)
-+ basic_machine=s390-ibm
-+ ;;
-+ s390x | s390x-*)
-+ basic_machine=s390x-ibm
-+ ;;
- sa29200)
- basic_machine=a29k-amd
- os=-udi
- ;;
-+ sb1)
-+ basic_machine=mipsisa64sb1-unknown
-+ ;;
-+ sb1el)
-+ basic_machine=mipsisa64sb1el-unknown
-+ ;;
-+ sde)
-+ basic_machine=mipsisa32-sde
-+ os=-elf
-+ ;;
-+ sei)
-+ basic_machine=mips-sei
-+ os=-seiux
-+ ;;
- sequent)
- basic_machine=i386-sequent
- ;;
-@@ -671,7 +925,10 @@
- basic_machine=sh-hitachi
- os=-hms
- ;;
-- sparclite-wrs)
-+ sh64)
-+ basic_machine=sh64-unknown
-+ ;;
-+ sparclite-wrs | simso-wrs)
- basic_machine=sparclite-wrs
- os=-vxworks
- ;;
-@@ -729,23 +986,51 @@
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
- ;;
-+ sv1)
-+ basic_machine=sv1-cray
-+ os=-unicos
-+ ;;
- symmetry)
- basic_machine=i386-sequent
- os=-dynix
- ;;
- t3e)
-- basic_machine=t3e-cray
-+ basic_machine=alphaev5-cray
-+ os=-unicos
-+ ;;
-+ t90)
-+ basic_machine=t90-cray
- os=-unicos
- ;;
-+ tic54x | c54x*)
-+ basic_machine=tic54x-unknown
-+ os=-coff
-+ ;;
-+ tic55x | c55x*)
-+ basic_machine=tic55x-unknown
-+ os=-coff
-+ ;;
-+ tic6x | c6x*)
-+ basic_machine=tic6x-unknown
-+ os=-coff
-+ ;;
- tx39)
- basic_machine=mipstx39-unknown
- ;;
- tx39el)
- basic_machine=mipstx39el-unknown
- ;;
-+ toad1)
-+ basic_machine=pdp10-xkl
-+ os=-tops20
-+ ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
-+ tpf)
-+ basic_machine=s390x-ibm
-+ os=-tpf
-+ ;;
- udi29k)
- basic_machine=a29k-amd
- os=-udi
-@@ -767,8 +1052,8 @@
- os=-vms
- ;;
- vpp*|vx|vx-*)
-- basic_machine=f301-fujitsu
-- ;;
-+ basic_machine=f301-fujitsu
-+ ;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
-@@ -789,13 +1074,17 @@
- basic_machine=hppa1.1-winbond
- os=-proelf
- ;;
-- xmp)
-- basic_machine=xmp-cray
-- os=-unicos
-+ xbox)
-+ basic_machine=i686-pc
-+ os=-mingw32
- ;;
-- xps | xps100)
-+ xps | xps100)
- basic_machine=xps100-honeywell
- ;;
-+ ymp)
-+ basic_machine=ymp-cray
-+ os=-unicos
-+ ;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
-@@ -816,32 +1105,35 @@
- op60c)
- basic_machine=hppa1.1-oki
- ;;
-- mips)
-- if [ x$os = x-linux-gnu ]; then
-- basic_machine=mips-unknown
-- else
-- basic_machine=mips-mips
-- fi
-- ;;
- romp)
- basic_machine=romp-ibm
- ;;
-+ mmix)
-+ basic_machine=mmix-knuth
-+ ;;
- rs6000)
- basic_machine=rs6000-ibm
- ;;
- vax)
- basic_machine=vax-dec
- ;;
-+ pdp10)
-+ # there are many clones, so DEC is not a safe bet
-+ basic_machine=pdp10-unknown
-+ ;;
- pdp11)
- basic_machine=pdp11-dec
- ;;
- we32k)
- basic_machine=we32k-att
- ;;
-- sparc | sparcv9)
-+ sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
-+ basic_machine=sh-unknown
-+ ;;
-+ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
- basic_machine=sparc-sun
- ;;
-- cydra)
-+ cydra)
- basic_machine=cydra-cydrome
- ;;
- orion)
-@@ -856,9 +1148,8 @@
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
- ;;
-- c4x*)
-- basic_machine=c4x-none
-- os=-coff
-+ *-unknown)
-+ # Make sure to match an already-canonicalized machine name.
- ;;
- *)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-@@ -912,22 +1203,49 @@
- | -aos* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-- | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
-- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
-+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-+ | -openbsd* | -solidbsd* \
-+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
-+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-+ | -chorusos* | -chorusrdb* \
- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-- | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
-- | -interix* | -uwin* | -rhapsody* | -opened* | -openstep* | -oskit*)
-+ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
-+ | -uxpv* | -beos* | -mpeix* | -udk* \
-+ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
-+ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
-+ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-+ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-+ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-+ | -skyos* | -haiku* | -rdos* | -toppers*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
-+ -qnx*)
-+ case $basic_machine in
-+ x86-* | i*86-*)
-+ ;;
-+ *)
-+ os=-nto$os
-+ ;;
-+ esac
-+ ;;
-+ -nto-qnx*)
-+ ;;
-+ -nto*)
-+ os=`echo $os | sed -e 's|nto|nto-qnx|'`
-+ ;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-- | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
-- | -macos* | -mpw* | -magic* | -mon960* | -lnews*)
-+ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
-+ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
- ;;
- -mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
- ;;
-+ -linux-dietlibc)
-+ os=-linux-dietlibc
-+ ;;
- -linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
-@@ -940,6 +1258,12 @@
- -opened*)
- os=-openedition
- ;;
-+ -os400*)
-+ os=-os400
-+ ;;
-+ -wince*)
-+ os=-wince
-+ ;;
- -osfrose*)
- os=-osfrose
- ;;
-@@ -955,14 +1279,26 @@
- -acis*)
- os=-aos
- ;;
-+ -atheos*)
-+ os=-atheos
-+ ;;
-+ -syllable*)
-+ os=-syllable
-+ ;;
- -386bsd)
- os=-bsd
- ;;
- -ctix* | -uts*)
- os=-sysv
- ;;
-+ -nova*)
-+ os=-rtmk-nova
-+ ;;
- -ns2 )
-- os=-nextstep2
-+ os=-nextstep2
-+ ;;
-+ -nsk*)
-+ os=-nsk
- ;;
- # Preserve the version number of sinix5.
- -sinix5.*)
-@@ -971,15 +1307,15 @@
- -sinix*)
- os=-sysv4
- ;;
-+ -tpf*)
-+ os=-tpf
-+ ;;
- -triton*)
- os=-sysv3
- ;;
- -oss*)
- os=-sysv3
- ;;
-- -qnx)
-- os=-qnx4
-- ;;
- -svr4)
- os=-sysv4
- ;;
-@@ -1001,8 +1337,17 @@
- -xenix)
- os=-xenix
- ;;
-- -*mint | -*MiNT)
-- os=-mint
-+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-+ os=-mint
-+ ;;
-+ -aros*)
-+ os=-aros
-+ ;;
-+ -kaos*)
-+ os=-kaos
-+ ;;
-+ -zvmoe)
-+ os=-zvmoe
- ;;
- -none)
- ;;
-@@ -1026,6 +1371,12 @@
- # system, and we'll never get to this point.
-
- case $basic_machine in
-+ score-*)
-+ os=-elf
-+ ;;
-+ spu-*)
-+ os=-elf
-+ ;;
- *-acorn)
- os=-riscix1.2
- ;;
-@@ -1035,7 +1386,14 @@
- arm*-semi)
- os=-aout
- ;;
-- pdp11-*)
-+ c4x-* | tic4x-*)
-+ os=-coff
-+ ;;
-+ # This must come before the *-dec entry.
-+ pdp10-*)
-+ os=-tops20
-+ ;;
-+ pdp11-*)
- os=-none
- ;;
- *-dec | vax-*)
-@@ -1062,6 +1420,9 @@
- mips*-*)
- os=-elf
- ;;
-+ or32-*)
-+ os=-coff
-+ ;;
- *-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
- ;;
-@@ -1071,9 +1432,15 @@
- *-be)
- os=-beos
- ;;
-+ *-haiku)
-+ os=-haiku
-+ ;;
- *-ibm)
- os=-aix
- ;;
-+ *-knuth)
-+ os=-mmixware
-+ ;;
- *-wec)
- os=-proelf
- ;;
-@@ -1125,25 +1492,25 @@
- *-next)
- os=-nextstep3
- ;;
-- *-gould)
-+ *-gould)
- os=-sysv
- ;;
-- *-highlevel)
-+ *-highlevel)
- os=-bsd
- ;;
- *-encore)
- os=-bsd
- ;;
-- *-sgi)
-+ *-sgi)
- os=-irix
- ;;
-- *-siemens)
-+ *-siemens)
- os=-sysv4
- ;;
- *-masscomp)
- os=-rtu
- ;;
-- f301-fujitsu)
-+ f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
- ;;
- *-rom68k)
-@@ -1206,10 +1573,16 @@
- -mvs* | -opened*)
- vendor=ibm
- ;;
-+ -os400*)
-+ vendor=ibm
-+ ;;
- -ptx*)
- vendor=sequent
- ;;
-- -vxsim* | -vxworks*)
-+ -tpf*)
-+ vendor=ibm
-+ ;;
-+ -vxsim* | -vxworks* | -windiss*)
- vendor=wrs
- ;;
- -aux*)
-@@ -1221,12 +1594,23 @@
- -mpw* | -macos*)
- vendor=apple
- ;;
-- -*mint | -*MiNT)
-+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- vendor=atari
- ;;
-+ -vos*)
-+ vendor=stratus
-+ ;;
- esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- ;;
- esac
-
- echo $basic_machine$os
-+exit
-+
-+# Local variables:
-+# eval: (add-hook 'write-file-hooks 'time-stamp)
-+# time-stamp-start: "timestamp='"
-+# time-stamp-format: "%:y-%02m-%02d"
-+# time-stamp-end: "'"
-+# End:
---- glib1.2-1.2.10.orig/config.guess
-+++ glib1.2-1.2.10/config.guess
-@@ -1,8 +1,11 @@
- #! /bin/sh
- # Attempt to guess a canonical system name.
--# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999
--# Free Software Foundation, Inc.
--#
-+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-+# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
-+# Inc.
-+
-+timestamp='2006-07-02'
-+
- # 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
- # the Free Software Foundation; either version 2 of the License, or
-@@ -15,159 +18,293 @@
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
--# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-+# 02110-1301, USA.
- #
- # As a special exception to the GNU General Public License, if you
- # distribute this file as part of a program that contains a
- # configuration script generated by Autoconf, you may include it under
- # the same distribution terms that you use for the rest of that program.
-
--# Written by Per Bothner <bothner@cygnus.com>.
--# The master version of this file is at the FSF in /home/gd/gnu/lib.
--# Please send patches to <autoconf-patches@gnu.org>.
-+
-+# Originally written by Per Bothner <per@bothner.com>.
-+# Please send patches to <config-patches@gnu.org>. Submit a context
-+# diff and a properly formatted ChangeLog entry.
- #
- # This script attempts to guess a canonical system name similar to
- # config.sub. If it succeeds, it prints the system name on stdout, and
- # exits with 0. Otherwise, it exits with 1.
- #
- # The plan is that this can be called by configure scripts if you
--# don't specify an explicit system type (host/target name).
--#
--# Only a few systems have been added to this list; please add others
--# (but try to keep the structure clean).
--#
-+# don't specify an explicit build system type.
-
--# Use $HOST_CC if defined. $CC may point to a cross-compiler
--if test x"$CC_FOR_BUILD" = x; then
-- if test x"$HOST_CC" != x; then
-- CC_FOR_BUILD="$HOST_CC"
-- else
-- if test x"$CC" != x; then
-- CC_FOR_BUILD="$CC"
-- else
-- CC_FOR_BUILD=cc
-- fi
-- fi
-+me=`echo "$0" | sed -e 's,.*/,,'`
-+
-+usage="\
-+Usage: $0 [OPTION]
-+
-+Output the configuration name of the system \`$me' is run on.
-+
-+Operation modes:
-+ -h, --help print this help, then exit
-+ -t, --time-stamp print date of last modification, then exit
-+ -v, --version print version number, then exit
-+
-+Report bugs and patches to <config-patches@gnu.org>."
-+
-+version="\
-+GNU config.guess ($timestamp)
-+
-+Originally written by Per Bothner.
-+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-+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."
-+
-+help="
-+Try \`$me --help' for more information."
-+
-+# Parse command line
-+while test $# -gt 0 ; do
-+ case $1 in
-+ --time-stamp | --time* | -t )
-+ echo "$timestamp" ; exit ;;
-+ --version | -v )
-+ echo "$version" ; exit ;;
-+ --help | --h* | -h )
-+ echo "$usage"; exit ;;
-+ -- ) # Stop option processing
-+ shift; break ;;
-+ - ) # Use stdin as input.
-+ break ;;
-+ -* )
-+ echo "$me: invalid option $1$help" >&2
-+ exit 1 ;;
-+ * )
-+ break ;;
-+ esac
-+done
-+
-+if test $# != 0; then
-+ echo "$me: too many arguments$help" >&2
-+ exit 1
- fi
-
-+trap 'exit 1' 1 2 15
-+
-+# 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
-+# headache to deal with in a portable fashion.
-+
-+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-+# use `HOST_CC' if defined, but it is deprecated.
-+
-+# Portable tmp directory creation inspired by the Autoconf team.
-+
-+set_cc_for_build='
-+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-+: ${TMPDIR=/tmp} ;
-+ { 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) ; } ||
-+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
-+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-+dummy=$tmp/dummy ;
-+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-+case $CC_FOR_BUILD,$HOST_CC,$CC in
-+ ,,) echo "int x;" > $dummy.c ;
-+ for c in cc gcc c89 c99 ; do
-+ if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
-+ CC_FOR_BUILD="$c"; break ;
-+ fi ;
-+ done ;
-+ if test x"$CC_FOR_BUILD" = x ; then
-+ CC_FOR_BUILD=no_compiler_found ;
-+ fi
-+ ;;
-+ ,,*) CC_FOR_BUILD=$CC ;;
-+ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-+esac ; set_cc_for_build= ;'
-
- # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
--# (ghazi@noc.rutgers.edu 8/24/94.)
-+# (ghazi@noc.rutgers.edu 1994-08-24)
- if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
- PATH=$PATH:/.attbin ; export PATH
- 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
-
--dummy=dummy-$$
--trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
--
- # Note: order is significant - the case branches are not exclusive.
-
- case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-+ *:NetBSD:*:*)
-+ # NetBSD (nbsd) targets should (where applicable) match one or
-+ # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
-+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
-+ # switched to ELF, *-*-netbsd* would select the old
-+ # object file format. This provides both forward
-+ # compatibility and a consistent mechanism for selecting the
-+ # object file format.
-+ #
-+ # 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=`(/sbin/$sysctl 2>/dev/null || \
-+ /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
-+ case "${UNAME_MACHINE_ARCH}" in
-+ armeb) machine=armeb-unknown ;;
-+ arm*) machine=arm-unknown ;;
-+ sh3el) machine=shl-unknown ;;
-+ sh3eb) machine=sh-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.
-+ case "${UNAME_MACHINE_ARCH}" in
-+ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-+ eval $set_cc_for_build
-+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-+ | grep __ELF__ >/dev/null
-+ then
-+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
-+ # Return netbsd for either. FIX?
-+ os=netbsd
-+ else
-+ os=netbsdelf
-+ fi
-+ ;;
-+ *)
-+ os=netbsd
-+ ;;
-+ esac
-+ # The OS release
-+ # Debian GNU/NetBSD machines have a different userland, and
-+ # 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
-+ Debian*)
-+ release='-gnu'
-+ ;;
-+ *)
-+ release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-+ ;;
-+ esac
-+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
-+ # contains redundant information, the shorter form:
-+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-+ echo "${machine}-${os}${release}"
-+ exit ;;
-+ *:OpenBSD:*:*)
-+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-+ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-+ exit ;;
-+ *:ekkoBSD:*:*)
-+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-+ exit ;;
-+ *:SolidBSD:*:*)
-+ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
-+ exit ;;
-+ macppc:MirBSD:*:*)
-+ echo powerpc-unknown-mirbsd${UNAME_RELEASE}
-+ exit ;;
-+ *:MirBSD:*:*)
-+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-+ exit ;;
- alpha:OSF1:*:*)
-- if test $UNAME_RELEASE = "V4.0"; then
-+ case $UNAME_RELEASE in
-+ *4.0)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
-- fi
-+ ;;
-+ *5.*)
-+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
-+ ;;
-+ esac
-+ # According to Compaq, /usr/sbin/psrinfo has been available on
-+ # OSF/1 and Tru64 systems produced since 1995. I hope that
-+ # 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
-+ "EV4 (21064)")
-+ UNAME_MACHINE="alpha" ;;
-+ "EV4.5 (21064)")
-+ UNAME_MACHINE="alpha" ;;
-+ "LCA4 (21066/21068)")
-+ UNAME_MACHINE="alpha" ;;
-+ "EV5 (21164)")
-+ UNAME_MACHINE="alphaev5" ;;
-+ "EV5.6 (21164A)")
-+ UNAME_MACHINE="alphaev56" ;;
-+ "EV5.6 (21164PC)")
-+ UNAME_MACHINE="alphapca56" ;;
-+ "EV5.7 (21164PC)")
-+ UNAME_MACHINE="alphapca57" ;;
-+ "EV6 (21264)")
-+ UNAME_MACHINE="alphaev6" ;;
-+ "EV6.7 (21264A)")
-+ UNAME_MACHINE="alphaev67" ;;
-+ "EV6.8CB (21264C)")
-+ UNAME_MACHINE="alphaev68" ;;
-+ "EV6.8AL (21264B)")
-+ UNAME_MACHINE="alphaev68" ;;
-+ "EV6.8CX (21264D)")
-+ UNAME_MACHINE="alphaev68" ;;
-+ "EV6.9A (21264/EV69A)")
-+ UNAME_MACHINE="alphaev69" ;;
-+ "EV7 (21364)")
-+ UNAME_MACHINE="alphaev7" ;;
-+ "EV7.9 (21364A)")
-+ UNAME_MACHINE="alphaev79" ;;
-+ esac
-+ # A Pn.n version is a patched version.
- # A Vn.n version is a released version.
- # 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.
-- cat <<EOF >$dummy.s
-- .globl main
-- .ent main
--main:
-- .frame \$30,0,\$26,0
-- .prologue 0
-- .long 0x47e03d80 # implver $0
-- lda \$2,259
-- .long 0x47e20c21 # amask $2,$1
-- srl \$1,8,\$2
-- sll \$2,2,\$2
-- sll \$0,3,\$0
-- addl \$1,\$0,\$0
-- addl \$2,\$0,\$0
-- ret \$31,(\$26),1
-- .end main
--EOF
-- $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
-- if test "$?" = 0 ; then
-- ./$dummy
-- case "$?" in
-- 7)
-- UNAME_MACHINE="alpha"
-- ;;
-- 15)
-- UNAME_MACHINE="alphaev5"
-- ;;
-- 14)
-- UNAME_MACHINE="alphaev56"
-- ;;
-- 10)
-- UNAME_MACHINE="alphapca56"
-- ;;
-- 16)
-- UNAME_MACHINE="alphaev6"
-- ;;
-- esac
-- fi
-- rm -f $dummy.s $dummy
-- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-- exit 0 ;;
-+ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-+ exit ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
-- exit 0 ;;
-+ exit ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
-- exit 0 ;;
-+ exit ;;
- Amiga*:UNIX_System_V:4.0:*)
-- echo m68k-cbm-sysv4
-- exit 0;;
-- amiga:NetBSD:*:*)
-- echo m68k-cbm-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- amiga:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ echo m68k-unknown-sysv4
-+ exit ;;
- *:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
-- exit 0 ;;
-- arc64:OpenBSD:*:*)
-- echo mips64el-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- arc:OpenBSD:*:*)
-- echo mipsel-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- hkmips:OpenBSD:*:*)
-- echo mips-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- pmax:OpenBSD:*:*)
-- echo mipsel-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- sgi:OpenBSD:*:*)
-- echo mips-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- wgrisc:OpenBSD:*:*)
-- echo mipsel-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ *:[Mm]orph[Oo][Ss]:*:*)
-+ echo ${UNAME_MACHINE}-unknown-morphos
-+ exit ;;
- *:OS/390:*:*)
- echo i370-ibm-openedition
-- exit 0 ;;
-+ exit ;;
-+ *:z/VM:*:*)
-+ echo s390-ibm-zvmoe
-+ exit ;;
-+ *:OS400:*:*)
-+ echo powerpc-ibm-os400
-+ exit ;;
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
-- exit 0;;
-- arm32:NetBSD:*:*)
-- echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-- exit 0 ;;
-- SR2?01:HI-UX/MPP:*:*)
-+ exit ;;
-+ arm:riscos:*:*|arm:RISCOS:*:*)
-+ echo arm-unknown-riscos
-+ exit ;;
-+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- echo hppa1.1-hitachi-hiuxmpp
-- exit 0;;
-+ exit ;;
- 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
-@@ -175,25 +312,32 @@
- else
- echo pyramid-pyramid-bsd
- fi
-- exit 0 ;;
-+ exit ;;
- NILE*:*:*:dcosx)
- echo pyramid-pyramid-svr4
-- exit 0 ;;
-+ exit ;;
-+ DRS?6000:unix:4.0:6*)
-+ echo sparc-icl-nx6
-+ exit ;;
-+ 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 ;;
- sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-- exit 0 ;;
-+ exit ;;
- sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-- exit 0 ;;
-+ exit ;;
- i86pc:SunOS:5.*:*)
- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-- exit 0 ;;
-+ exit ;;
- 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 0 ;;
-+ exit ;;
- sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
- Series*|S4*)
-@@ -202,12 +346,12 @@
- esac
- # Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-- exit 0 ;;
-+ exit ;;
- sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- sun*:*:4.2BSD:*)
-- UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-+ 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
- sun3)
-@@ -217,19 +361,13 @@
- echo sparc-sun-sunos${UNAME_RELEASE}
- ;;
- esac
-- exit 0 ;;
-+ exit ;;
- aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
-- exit 0 ;;
-- atari*:NetBSD:*:*)
-- echo m68k-atari-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- atari*:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- # 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
-+ # "atarist" or "atariste" at least should have a processor
- # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
- # to the lowercase version "mint" (or "freemint"). Finally
- # the system name "TOS" denotes a system which is actually not
-@@ -237,61 +375,45 @@
- # be no problem.
- atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
-- exit 0 ;;
-- sun3*:NetBSD:*:*)
-- echo m68k-sun-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- sun3*:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- mac68k:NetBSD:*:*)
-- echo m68k-apple-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- mac68k:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- mvme68k:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- mvme88k:OpenBSD:*:*)
-- echo m88k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ m68k:machten:*:*)
-+ echo m68k-apple-machten${UNAME_RELEASE}
-+ exit ;;
- powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
-- exit 0 ;;
-- macppc:NetBSD:*:*)
-- echo powerpc-apple-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- RISC*:Mach:*:*)
- echo mips-dec-mach_bsd4.3
-- exit 0 ;;
-+ exit ;;
- RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- 2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- mips:*:*:UMIPS | mips:*:*:RISCos)
-+ eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #ifdef __cplusplus
-+#include <stdio.h> /* for printf() prototype */
- int main (int argc, char *argv[]) {
- #else
- int main (argc, argv) int argc; char *argv[]; {
-@@ -310,28 +432,37 @@
- exit (-1);
- }
- EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy \
-- && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-- && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-+ $CC_FOR_BUILD -o $dummy $dummy.c &&
-+ 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 0 ;;
-+ exit ;;
-+ Motorola:PowerMAX_OS:*:*)
-+ echo powerpc-motorola-powermax
-+ exit ;;
-+ Motorola:*:4.3:PL8-*)
-+ echo powerpc-harris-powermax
-+ exit ;;
-+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
-+ echo powerpc-harris-powermax
-+ exit ;;
- Night_Hawk:Power_UNIX:*:*)
- echo powerpc-harris-powerunix
-- exit 0 ;;
-+ exit ;;
- m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
-- exit 0 ;;
-+ exit ;;
- m88k:*:4*:R4*)
- echo m88k-motorola-sysv4
-- exit 0 ;;
-+ exit ;;
- m88k:*:3*:R3*)
- echo m88k-motorola-sysv3
-- exit 0 ;;
-+ exit ;;
- AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
-- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110]
-+ if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
- then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
-@@ -343,31 +474,40 @@
- else
- echo i586-dg-dgux${UNAME_RELEASE}
- fi
-- exit 0 ;;
-+ exit ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
-- exit 0 ;;
-+ exit ;;
- M88*:*:R3*:*)
- # Delta 88k system running SVR3
- echo m88k-motorola-sysv3
-- exit 0 ;;
-+ exit ;;
- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
- echo m88k-tektronix-sysv3
-- exit 0 ;;
-+ exit ;;
- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
- echo m68k-tektronix-bsd
-- exit 0 ;;
-+ exit ;;
- *:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-- exit 0 ;;
-+ exit ;;
- ????????: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 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
-- i?86:AIX:*:*)
-+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
-+ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
-+ i*86:AIX:*:*)
- echo i386-ibm-aix
-- exit 0 ;;
-+ exit ;;
-+ ia64:AIX:*:*)
-+ if [ -x /usr/bin/oslevel ] ; then
-+ IBM_REV=`/usr/bin/oslevel`
-+ else
-+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-+ fi
-+ echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-+ exit ;;
- *:AIX:2:3)
- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-+ eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <sys/systemcfg.h>
-
-@@ -379,18 +519,21 @@
- exit(0);
- }
- EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-- echo rs6000-ibm-aix3.2.5
-+ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
-+ then
-+ echo "$SYSTEM_NAME"
-+ else
-+ echo rs6000-ibm-aix3.2.5
-+ fi
- elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- echo rs6000-ibm-aix3.2.4
- else
- echo rs6000-ibm-aix3.2
- fi
-- exit 0 ;;
-- *:AIX:*:4)
-- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
-- if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
-+ exit ;;
-+ *:AIX:*:[45])
-+ 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
- IBM_ARCH=rs6000
- else
- IBM_ARCH=powerpc
-@@ -398,37 +541,56 @@
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
-- IBM_REV=4.${UNAME_RELEASE}
-+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-- exit 0 ;;
-+ exit ;;
- *:AIX:*:*)
- echo rs6000-ibm-aix
-- exit 0 ;;
-+ exit ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
- echo romp-ibm-bsd4.4
-- exit 0 ;;
-- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and
-+ exit ;;
-+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
-- exit 0 ;; # report: romp-ibm BSD 4.3
-+ exit ;; # report: romp-ibm BSD 4.3
- *:BOSX:*:*)
- echo rs6000-bull-bosx
-- exit 0 ;;
-+ exit ;;
- DPX/2?00:B.O.S.:*:*)
- echo m68k-bull-sysv3
-- exit 0 ;;
-+ exit ;;
- 9000/[34]??:4.3bsd:1.*:*)
- echo m68k-hp-bsd
-- exit 0 ;;
-+ exit ;;
- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- echo m68k-hp-bsd4.4
-- exit 0 ;;
-+ exit ;;
- 9000/[34678]??:HP-UX:*:*)
-+ 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])
-- sed 's/^ //' << EOF >$dummy.c
-+ if [ -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
-+ 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
-+ 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
-+ eval $set_cc_for_build
-+ sed 's/^ //' << EOF >$dummy.c
-+
-+ #define _HPUX_SOURCE
- #include <stdlib.h>
- #include <unistd.h>
-
-@@ -459,13 +621,39 @@
- exit (0);
- }
- EOF
-- (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
-- rm -f $dummy.c $dummy
-+ (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
-+ test -z "$HP_ARCH" && HP_ARCH=hppa
-+ fi ;;
- esac
-- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-+ if [ ${HP_ARCH} = "hppa2.0w" ]
-+ then
-+ eval $set_cc_for_build
-+
-+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
-+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
-+ # generating 64-bit code. GNU and HP use different nomenclature:
-+ #
-+ # $ CC_FOR_BUILD=cc ./config.guess
-+ # => hppa2.0w-hp-hpux11.23
-+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
-+ # => hppa64-hp-hpux11.23
-+
-+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-+ grep __LP64__ >/dev/null
-+ then
-+ HP_ARCH="hppa2.0w"
-+ else
-+ HP_ARCH="hppa64"
-+ fi
-+ fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
-- exit 0 ;;
-+ exit ;;
-+ ia64:HP-UX:*:*)
-+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-+ echo ia64-hp-hpux${HPUX_REV}
-+ exit ;;
- 3050*:HI-UX:*:*)
-+ eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <unistd.h>
- int
-@@ -491,434 +679,475 @@
- exit (0);
- }
- EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-+ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
-+ { echo "$SYSTEM_NAME"; exit; }
- echo unknown-hitachi-hiuxwe2
-- exit 0 ;;
-+ exit ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
- echo hppa1.1-hp-bsd
-- exit 0 ;;
-+ exit ;;
- 9000/8??:4.3bsd:*:*)
- echo hppa1.0-hp-bsd
-- exit 0 ;;
-- *9??*:MPE/iX:*:*)
-+ exit ;;
-+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
- echo hppa1.0-hp-mpeix
-- exit 0 ;;
-+ exit ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
- echo hppa1.1-hp-osf
-- exit 0 ;;
-+ exit ;;
- hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
-- exit 0 ;;
-- i?86:OSF1:*:*)
-+ exit ;;
-+ i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
- else
- echo ${UNAME_MACHINE}-unknown-osf1
- fi
-- exit 0 ;;
-+ exit ;;
- parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
-- exit 0 ;;
-- hppa*:OpenBSD:*:*)
-- echo hppa-unknown-openbsd
-- exit 0 ;;
-+ exit ;;
- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
- echo c1-convex-bsd
-- exit 0 ;;
-+ exit ;;
- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
-- exit 0 ;;
-+ exit ;;
- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
- echo c34-convex-bsd
-- exit 0 ;;
-+ exit ;;
- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
- echo c38-convex-bsd
-- exit 0 ;;
-+ exit ;;
- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- echo c4-convex-bsd
-- exit 0 ;;
-- CRAY*X-MP:*:*:*)
-- echo xmp-cray-unicos
-- exit 0 ;;
-+ exit ;;
- CRAY*Y-MP:*:*:*)
-- echo ymp-cray-unicos${UNAME_RELEASE}
-- exit 0 ;;
-+ echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
- CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
- | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
-- exit 0 ;;
-+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-+ -e 's/\.[^.]*$/.X/'
-+ exit ;;
- CRAY*TS:*:*:*)
-- echo t90-cray-unicos${UNAME_RELEASE}
-- exit 0 ;;
-+ echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
- CRAY*T3E:*:*:*)
-- echo alpha-cray-unicosmk${UNAME_RELEASE}
-- exit 0 ;;
-- CRAY-2:*:*:*)
-- echo cray2-cray-unicos
-- exit 0 ;;
-- F300:UNIX_System_V:*:*)
-+ echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
-+ CRAY*SV1:*:*:*)
-+ echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
-+ *:UNICOS/mp:*:*)
-+ echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
-+ 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 "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-- exit 0 ;;
-- F301:UNIX_System_V:*:*)
-- echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
-- exit 0 ;;
-- hp3[0-9][05]:NetBSD:*:*)
-- echo m68k-hp-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- hp300:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- i?86:BSD/386:*:* | i?86:BSD/OS:*:*)
-+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-+ exit ;;
-+ 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 ;;
-+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *:FreeBSD:*:*)
-- if test -x /usr/bin/objformat; then
-- if test "elf" = "`/usr/bin/objformat`"; then
-- echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
-- exit 0
-- fi
-- fi
-- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-- exit 0 ;;
-- *:NetBSD:*:*)
-- echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
-- exit 0 ;;
-- *:OpenBSD:*:*)
-- echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-- exit 0 ;;
-+ case ${UNAME_MACHINE} in
-+ pc98)
-+ echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-+ amd64)
-+ echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-+ *)
-+ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-+ esac
-+ exit ;;
- i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
-- exit 0 ;;
-+ exit ;;
- i*:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
-- exit 0 ;;
-+ exit ;;
-+ i*:windows32*:*)
-+ # uname -m includes "-pc" on this system.
-+ echo ${UNAME_MACHINE}-mingw32
-+ exit ;;
-+ i*:PW*:*)
-+ echo ${UNAME_MACHINE}-pc-pw32
-+ exit ;;
-+ x86:Interix*:[3456]*)
-+ echo i586-pc-interix${UNAME_RELEASE}
-+ exit ;;
-+ EM64T:Interix*:[3456]*)
-+ echo x86_64-unknown-interix${UNAME_RELEASE}
-+ exit ;;
-+ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-+ echo i${UNAME_MACHINE}-pc-mks
-+ exit ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
-- echo i386-pc-interix
-- exit 0 ;;
-+ echo i586-pc-interix
-+ exit ;;
- i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
-- exit 0 ;;
-+ exit ;;
-+ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-+ echo x86_64-unknown-cygwin
-+ exit ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
-- exit 0 ;;
-+ exit ;;
- prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-- exit 0 ;;
-+ exit ;;
- *:GNU:*:*)
-+ # the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-- exit 0 ;;
-- *:Linux:*:*)
--
-+ exit ;;
-+ *:GNU/*:*:*)
-+ # other systems with GNU libc and userland
-+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-+ exit ;;
-+ i*86:Minix:*:*)
-+ echo ${UNAME_MACHINE}-pc-minix
-+ exit ;;
-+ arm*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ avr32*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ cris:Linux:*:*)
-+ echo cris-axis-linux-gnu
-+ exit ;;
-+ crisv32:Linux:*:*)
-+ echo crisv32-axis-linux-gnu
-+ exit ;;
-+ frv:Linux:*:*)
-+ echo frv-unknown-linux-gnu
-+ exit ;;
-+ ia64:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ m32r*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ m68*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ mips:Linux:*:*)
-+ eval $set_cc_for_build
-+ sed 's/^ //' << EOF >$dummy.c
-+ #undef CPU
-+ #undef mips
-+ #undef mipsel
-+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-+ CPU=mipsel
-+ #else
-+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-+ CPU=mips
-+ #else
-+ CPU=
-+ #endif
-+ #endif
-+EOF
-+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-+ /^CPU/{
-+ s: ::g
-+ p
-+ }'`"
-+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-+ ;;
-+ mips64:Linux:*:*)
-+ eval $set_cc_for_build
-+ sed 's/^ //' << EOF >$dummy.c
-+ #undef CPU
-+ #undef mips64
-+ #undef mips64el
-+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-+ CPU=mips64el
-+ #else
-+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-+ CPU=mips64
-+ #else
-+ CPU=
-+ #endif
-+ #endif
-+EOF
-+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-+ /^CPU/{
-+ s: ::g
-+ p
-+ }'`"
-+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-+ ;;
-+ or32:Linux:*:*)
-+ echo or32-unknown-linux-gnu
-+ exit ;;
-+ ppc:Linux:*:*)
-+ echo powerpc-unknown-linux-gnu
-+ exit ;;
-+ ppc64:Linux:*:*)
-+ echo powerpc64-unknown-linux-gnu
-+ exit ;;
-+ alpha:Linux:*:*)
-+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-+ EV5) UNAME_MACHINE=alphaev5 ;;
-+ EV56) UNAME_MACHINE=alphaev56 ;;
-+ PCA56) UNAME_MACHINE=alphapca56 ;;
-+ PCA57) UNAME_MACHINE=alphapca56 ;;
-+ EV6) UNAME_MACHINE=alphaev6 ;;
-+ EV67) UNAME_MACHINE=alphaev67 ;;
-+ EV68*) UNAME_MACHINE=alphaev68 ;;
-+ esac
-+ objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
-+ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-+ exit ;;
-+ 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-gnu ;;
-+ PA8*) echo hppa2.0-unknown-linux-gnu ;;
-+ *) echo hppa-unknown-linux-gnu ;;
-+ esac
-+ exit ;;
-+ parisc64:Linux:*:* | hppa64:Linux:*:*)
-+ echo hppa64-unknown-linux-gnu
-+ exit ;;
-+ s390:Linux:*:* | s390x:Linux:*:*)
-+ echo ${UNAME_MACHINE}-ibm-linux
-+ exit ;;
-+ sh64*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ sh*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ sparc:Linux:*:* | sparc64:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ vax:Linux:*:*)
-+ echo ${UNAME_MACHINE}-dec-linux-gnu
-+ exit ;;
-+ x86_64:Linux:*:*)
-+ echo x86_64-unknown-linux-gnu
-+ exit ;;
-+ i*86:Linux:*:*)
- # The BFD linker knows what the default object file format is, so
- # first see if it will tell us. cd to the root directory to prevent
- # problems with other programs or directories called `ld' in the path.
-- ld_help_string=`cd /; ld --help 2>&1`
-- ld_supported_emulations=`echo $ld_help_string \
-- | sed -ne '/supported emulations:/!d
-+ # Set LC_ALL=C to ensure ld outputs messages in English.
-+ ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
-+ | sed -ne '/supported targets:/!d
- s/[ ][ ]*/ /g
-- s/.*supported emulations: *//
-+ s/.*supported targets: *//
- s/ .*//
- p'`
-- case "$ld_supported_emulations" in
-- *ia64)
-- echo "${UNAME_MACHINE}-unknown-linux"
-- exit 0
-+ case "$ld_supported_targets" in
-+ elf32-i386)
-+ TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
- ;;
-- i?86linux)
-+ a.out-i386-linux)
- echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-- exit 0
-- ;;
-- i?86coff)
-+ exit ;;
-+ coff-i386)
- echo "${UNAME_MACHINE}-pc-linux-gnucoff"
-- exit 0
-- ;;
-- sparclinux)
-- echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
-- exit 0
-- ;;
-- armlinux)
-- echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
-- exit 0
-- ;;
-- elf32arm*)
-- echo "${UNAME_MACHINE}-unknown-linux-gnu"
-- exit 0
-- ;;
-- armelf_linux*)
-- echo "${UNAME_MACHINE}-unknown-linux-gnu"
-- exit 0
-- ;;
-- m68klinux)
-- echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
-- exit 0
-- ;;
-- elf32ppc)
-- # Determine Lib Version
-- cat >$dummy.c <<EOF
--#include <features.h>
--#if defined(__GLIBC__)
--extern char __libc_version[];
--extern char __libc_release[];
--#endif
--main(argc, argv)
-- int argc;
-- char *argv[];
--{
--#if defined(__GLIBC__)
-- printf("%s %s\n", __libc_version, __libc_release);
--#else
-- printf("unkown\n");
--#endif
-- return 0;
--}
--EOF
-- LIBC=""
-- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
-- if test "$?" = 0 ; then
-- ./$dummy | grep 1\.99 > /dev/null
-- if test "$?" = 0 ; then
-- LIBC="libc1"
-- fi
-- fi
-- rm -f $dummy.c $dummy
-- echo powerpc-unknown-linux-gnu${LIBC}
-- exit 0
-- ;;
-+ exit ;;
-+ "")
-+ # Either a pre-BFD a.out linker (linux-gnuoldld) or
-+ # one that does not give us useful --help.
-+ echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
-+ exit ;;
- esac
--
-- if test "${UNAME_MACHINE}" = "alpha" ; then
-- sed 's/^ //' <<EOF >$dummy.s
-- .globl main
-- .ent main
-- main:
-- .frame \$30,0,\$26,0
-- .prologue 0
-- .long 0x47e03d80 # implver $0
-- lda \$2,259
-- .long 0x47e20c21 # amask $2,$1
-- srl \$1,8,\$2
-- sll \$2,2,\$2
-- sll \$0,3,\$0
-- addl \$1,\$0,\$0
-- addl \$2,\$0,\$0
-- ret \$31,(\$26),1
-- .end main
--EOF
-- LIBC=""
-- $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
-- if test "$?" = 0 ; then
-- ./$dummy
-- case "$?" in
-- 7)
-- UNAME_MACHINE="alpha"
-- ;;
-- 15)
-- UNAME_MACHINE="alphaev5"
-- ;;
-- 14)
-- UNAME_MACHINE="alphaev56"
-- ;;
-- 10)
-- UNAME_MACHINE="alphapca56"
-- ;;
-- 16)
-- UNAME_MACHINE="alphaev6"
-- ;;
-- esac
--
-- objdump --private-headers $dummy | \
-- grep ld.so.1 > /dev/null
-- if test "$?" = 0 ; then
-- LIBC="libc1"
-- fi
-- fi
-- rm -f $dummy.s $dummy
-- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
-- elif test "${UNAME_MACHINE}" = "mips" ; then
-- cat >$dummy.c <<EOF
--#ifdef __cplusplus
-- int main (int argc, char *argv[]) {
--#else
-- int main (argc, argv) int argc; char *argv[]; {
--#endif
--#ifdef __MIPSEB__
-- printf ("%s-unknown-linux-gnu\n", argv[1]);
--#endif
--#ifdef __MIPSEL__
-- printf ("%sel-unknown-linux-gnu\n", argv[1]);
--#endif
-- return 0;
--}
--EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-- else
-- # Either a pre-BFD a.out linker (linux-gnuoldld)
-- # or one that does not give us useful --help.
-- # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
-- # If ld does not provide *any* "supported emulations:"
-- # that means it is gnuoldld.
-- echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
-- test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
--
-- case "${UNAME_MACHINE}" in
-- i?86)
-- VENDOR=pc;
-- ;;
-- *)
-- VENDOR=unknown;
-- ;;
-- esac
-- # Determine whether the default compiler is a.out or elf
-- cat >$dummy.c <<EOF
--#include <features.h>
--#ifdef __cplusplus
-- int main (int argc, char *argv[]) {
--#else
-- int main (argc, argv) int argc; char *argv[]; {
--#endif
--#ifdef __ELF__
--# ifdef __GLIBC__
--# if __GLIBC__ >= 2
-- printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
--# else
-- printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
--# endif
--# else
-- printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
--# endif
--#else
-- printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
--#endif
-- return 0;
--}
-+ # Determine whether the default compiler is a.out or elf
-+ eval $set_cc_for_build
-+ sed 's/^ //' << EOF >$dummy.c
-+ #include <features.h>
-+ #ifdef __ELF__
-+ # ifdef __GLIBC__
-+ # if __GLIBC__ >= 2
-+ LIBC=gnu
-+ # else
-+ LIBC=gnulibc1
-+ # endif
-+ # else
-+ LIBC=gnulibc1
-+ # endif
-+ #else
-+ #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
-+ LIBC=gnu
-+ #else
-+ LIBC=gnuaout
-+ #endif
-+ #endif
-+ #ifdef __dietlibc__
-+ LIBC=dietlibc
-+ #endif
- EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-- fi ;;
--# 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.
-- i?86:DYNIX/ptx:4*:*)
-+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-+ /^LIBC/{
-+ s: ::g
-+ p
-+ }'`"
-+ test x"${LIBC}" != x && {
-+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
-+ exit
-+ }
-+ test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
-+ ;;
-+ 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 0 ;;
-- i?86:UNIX_SV:4.2MP:2.*)
-+ exit ;;
-+ 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 0 ;;
-- i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
-+ exit ;;
-+ 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 ;;
-+ i*86:XTS-300:*:STOP)
-+ echo ${UNAME_MACHINE}-unknown-stop
-+ exit ;;
-+ i*86:atheos:*:*)
-+ echo ${UNAME_MACHINE}-unknown-atheos
-+ exit ;;
-+ i*86:syllable:*:*)
-+ echo ${UNAME_MACHINE}-pc-syllable
-+ exit ;;
-+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
-+ echo i386-unknown-lynxos${UNAME_RELEASE}
-+ exit ;;
-+ i*86:*DOS:*:*)
-+ echo ${UNAME_MACHINE}-pc-msdosdjgpp
-+ exit ;;
-+ i*86:*:4.*:* | i*86:SYSTEM_V: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}
- else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
- fi
-- exit 0 ;;
-- i?86:*:5:7*)
-- # Fixed at (any) Pentium or better
-- UNAME_MACHINE=i586
-- if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
-- echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
-- else
-- echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
-- fi
-- exit 0 ;;
-- i?86:*:3.2:*)
-+ exit ;;
-+ i*86:*:5:[678]*)
-+ # UnixWare 7.x, OpenUNIX and OpenServer 6.
-+ case `/bin/uname -X | grep "^Machine"` in
-+ *486*) UNAME_MACHINE=i486 ;;
-+ *Pentium) UNAME_MACHINE=i586 ;;
-+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
-+ esac
-+ echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-+ exit ;;
-+ 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
- elif /bin/uname -X 2>/dev/null >/dev/null ; then
-- UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
-- (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
-- (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
-+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
-+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
-+ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
- && UNAME_MACHINE=i586
-- (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
-+ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
- && UNAME_MACHINE=i686
-- (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
-+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
- && UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
- else
- echo ${UNAME_MACHINE}-pc-sysv32
- fi
-- exit 0 ;;
-+ exit ;;
- pc:*:*:*)
-+ # Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i386.
- echo i386-pc-msdosdjgpp
-- exit 0 ;;
-+ exit ;;
- Intel:Mach:3*:*)
- echo i386-pc-mach3
-- exit 0 ;;
-+ exit ;;
- paragon:*:*:*)
- echo i860-intel-osf1
-- exit 0 ;;
-+ exit ;;
- 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
- else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
- fi
-- exit 0 ;;
-+ exit ;;
- mini*:CTIX:SYS*5:*)
- # "miniframe"
- echo m68010-convergent-sysv
-- exit 0 ;;
-- M68*:*:R3V[567]*:*)
-- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
-- 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
-+ exit ;;
-+ mc68k:UNIX:SYSTEM5:3.51m)
-+ echo m68k-convergent-sysv
-+ exit ;;
-+ M680?0:D-NIX:5.3:*)
-+ echo m68k-diab-dnix
-+ exit ;;
-+ 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)
- OS_REL=''
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-- && echo i486-ncr-sysv4.3${OS_REL} && exit 0
-+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
-+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-- && echo i486-ncr-sysv4 && exit 0 ;;
-- m68*:LynxOS:2.*:*)
-+ && { echo i486-ncr-sysv4; exit; } ;;
-+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
-- exit 0 ;;
-- i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
-- echo i386-unknown-lynxos${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
-- exit 0 ;;
-- rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
-+ exit ;;
-+ rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
-+ echo powerpc-unknown-lynxos${UNAME_RELEASE}
-+ exit ;;
- SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- RM*:ReliantUNIX-*:*:*)
- echo mips-sni-sysv4
-- exit 0 ;;
-+ exit ;;
- RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
-- exit 0 ;;
-+ exit ;;
- *:SINIX-*:*:*)
- if uname -p 2>/dev/null >/dev/null ; then
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
-@@ -926,62 +1155,155 @@
- else
- echo ns32k-sni-sysv
- fi
-- exit 0 ;;
-- PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-- # says <Richard.M.Bartel@ccMail.Census.GOV>
-+ exit ;;
-+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-+ # says <Richard.M.Bartel@ccMail.Census.GOV>
- echo i586-unisys-sysv4
-- exit 0 ;;
-+ exit ;;
- *:UNIX_System_V:4*:FTX*)
- # From Gerald Hewes <hewes@openmarket.com>.
- # How about differentiating between stratus architectures? -djm
- echo hppa1.1-stratus-sysv4
-- exit 0 ;;
-+ exit ;;
- *:*:*:FTX*)
- # From seanf@swdc.stratus.com.
- echo i860-stratus-sysv4
-- exit 0 ;;
-+ exit ;;
-+ i*86:VOS:*:*)
-+ # From Paul.Green@stratus.com.
-+ echo ${UNAME_MACHINE}-stratus-vos
-+ exit ;;
-+ *:VOS:*:*)
-+ # From Paul.Green@stratus.com.
-+ echo hppa1.1-stratus-vos
-+ exit ;;
- mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
-- exit 0 ;;
-- news*:NEWS-OS:*:6*)
-+ exit ;;
-+ news*:NEWS-OS:6*:*)
- echo mips-sony-newsos6
-- exit 0 ;;
-+ exit ;;
- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
- else
- echo mips-unknown-sysv${UNAME_RELEASE}
- fi
-- exit 0 ;;
-+ exit ;;
- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
- echo powerpc-be-beos
-- exit 0 ;;
-+ exit ;;
- BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
- echo powerpc-apple-beos
-- exit 0 ;;
-+ exit ;;
- BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
- echo i586-pc-beos
-- exit 0 ;;
-+ exit ;;
- SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ SX-6:SUPER-UX:*:*)
-+ echo sx6-nec-superux${UNAME_RELEASE}
-+ exit ;;
- Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ *:Darwin:*:*)
-+ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-+ case $UNAME_PROCESSOR in
-+ unknown) UNAME_PROCESSOR=powerpc ;;
-+ esac
-+ echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-+ exit ;;
-+ *: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 ;;
- *:QNX:*:4*)
-- echo i386-qnx-qnx${UNAME_VERSION}
-- exit 0 ;;
-+ echo i386-pc-qnx
-+ exit ;;
-+ NSE-?:NONSTOP_KERNEL:*:*)
-+ echo nse-tandem-nsk${UNAME_RELEASE}
-+ exit ;;
-+ NSR-?:NONSTOP_KERNEL:*:*)
-+ echo nsr-tandem-nsk${UNAME_RELEASE}
-+ exit ;;
-+ *:NonStop-UX:*:*)
-+ echo mips-compaq-nonstopux
-+ exit ;;
-+ BS2000:POSIX*:*:*)
-+ echo bs2000-siemens-sysv
-+ exit ;;
-+ DS/*:UNIX_System_V:*:*)
-+ echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-+ exit ;;
-+ *:Plan9:*:*)
-+ # "uname -m" is not consistent, so use $cputype instead. 386
-+ # is converted to i386 for consistency with other x86
-+ # operating systems.
-+ if test "$cputype" = "386"; then
-+ UNAME_MACHINE=i386
-+ else
-+ UNAME_MACHINE="$cputype"
-+ fi
-+ echo ${UNAME_MACHINE}-unknown-plan9
-+ exit ;;
-+ *:TOPS-10:*:*)
-+ echo pdp10-unknown-tops10
-+ exit ;;
-+ *:TENEX:*:*)
-+ echo pdp10-unknown-tenex
-+ exit ;;
-+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
-+ echo pdp10-dec-tops20
-+ exit ;;
-+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
-+ echo pdp10-xkl-tops20
-+ exit ;;
-+ *:TOPS-20:*:*)
-+ echo pdp10-unknown-tops20
-+ exit ;;
-+ *:ITS:*:*)
-+ echo pdp10-unknown-its
-+ exit ;;
-+ SEI:*:*:SEIUX)
-+ echo mips-sei-seiux${UNAME_RELEASE}
-+ exit ;;
-+ *:DragonFly:*:*)
-+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-+ exit ;;
-+ *:*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 ;;
-+ esac ;;
-+ *:XENIX:*:SysV)
-+ echo i386-pc-xenix
-+ exit ;;
-+ i*86:skyos:*:*)
-+ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
-+ exit ;;
-+ i*86:rdos:*:*)
-+ echo ${UNAME_MACHINE}-pc-rdos
-+ exit ;;
- esac
-
- #echo '(No uname command or uname output not recognized.)' 1>&2
- #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-+eval $set_cc_for_build
- cat >$dummy.c <<EOF
- #ifdef _SEQUENT_
- # include <sys/types.h>
-@@ -1007,7 +1329,7 @@
- #endif
-
- #if defined (__arm) && defined (__acorn) && defined (__unix)
-- printf ("arm-acorn-riscix"); exit (0);
-+ printf ("arm-acorn-riscix\n"); exit (0);
- #endif
-
- #if defined (hp300) && !defined (hpux)
-@@ -1068,11 +1390,24 @@
- #endif
-
- #if defined (vax)
--#if !defined (ultrix)
-- printf ("vax-dec-bsd\n"); exit (0);
--#else
-- printf ("vax-dec-ultrix\n"); exit (0);
--#endif
-+# if !defined (ultrix)
-+# include <sys/param.h>
-+# if defined (BSD)
-+# if BSD == 43
-+ printf ("vax-dec-bsd4.3\n"); exit (0);
-+# else
-+# if BSD == 199006
-+ printf ("vax-dec-bsd4.3reno\n"); exit (0);
-+# else
-+ printf ("vax-dec-bsd\n"); exit (0);
-+# endif
-+# endif
-+# else
-+ printf ("vax-dec-bsd\n"); exit (0);
-+# endif
-+# else
-+ printf ("vax-dec-ultrix\n"); exit (0);
-+# endif
- #endif
-
- #if defined (alliant) && defined (i860)
-@@ -1083,12 +1418,12 @@
- }
- EOF
-
--$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0
--rm -f $dummy.c $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.
-
--test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
-+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
- # Convex versions that predate uname can use getsysinfo(1)
-
-@@ -1097,25 +1432,69 @@
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
-- exit 0 ;;
-+ exit ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
-- exit 0 ;;
-+ exit ;;
- c34*)
- echo c34-convex-bsd
-- exit 0 ;;
-+ exit ;;
- c38*)
- echo c38-convex-bsd
-- exit 0 ;;
-+ exit ;;
- c4*)
- echo c4-convex-bsd
-- exit 0 ;;
-+ exit ;;
- esac
- fi
-
--#echo '(Unable to guess system type)' 1>&2
-+cat >&2 <<EOF
-+$0: unable to guess system type
-+
-+This script, last modified $timestamp, has failed to recognize
-+the operating system you are using. It is advised that you
-+download the most up to date version of the config scripts from
-+
-+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
-+and
-+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
-+
-+If the version you run ($0) is already up to date, please
-+send the following data and any information you think might be
-+pertinent to <config-patches@gnu.org> in order to provide the needed
-+information to handle your system.
-+
-+config.guess timestamp = $timestamp
-+
-+uname -m = `(uname -m) 2>/dev/null || echo unknown`
-+uname -r = `(uname -r) 2>/dev/null || echo unknown`
-+uname -s = `(uname -s) 2>/dev/null || echo unknown`
-+uname -v = `(uname -v) 2>/dev/null || echo unknown`
-+
-+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-+/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
-+
-+hostinfo = `(hostinfo) 2>/dev/null`
-+/bin/universe = `(/bin/universe) 2>/dev/null`
-+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
-+/bin/arch = `(/bin/arch) 2>/dev/null`
-+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
-+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-+
-+UNAME_MACHINE = ${UNAME_MACHINE}
-+UNAME_RELEASE = ${UNAME_RELEASE}
-+UNAME_SYSTEM = ${UNAME_SYSTEM}
-+UNAME_VERSION = ${UNAME_VERSION}
-+EOF
-
- exit 1
-+
-+# Local variables:
-+# eval: (add-hook 'write-file-hooks 'time-stamp)
-+# time-stamp-start: "timestamp='"
-+# time-stamp-format: "%:y-%02m-%02d"
-+# time-stamp-end: "'"
-+# End:
---- glib1.2-1.2.10.orig/stamp-gc-h
-+++ glib1.2-1.2.10/stamp-gc-h
-@@ -0,0 +1 @@
-+timestamp
---- glib1.2-1.2.10.orig/docs/Makefile.in
-+++ glib1.2-1.2.10/docs/Makefile.in
-@@ -1,6 +1,6 @@
--# Makefile.in generated automatically by automake 1.4 from Makefile.am
-+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
--# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -62,8 +62,10 @@
- AS = @AS@
- CC = @CC@
- DLLTOOL = @DLLTOOL@
-+ECHO = @ECHO@
- ENABLE_MEM_CHECK = @ENABLE_MEM_CHECK@
- ENABLE_MEM_PROFILE = @ENABLE_MEM_PROFILE@
-+EXEEXT = @EXEEXT@
- GLIB_BINARY_AGE = @GLIB_BINARY_AGE@
- GLIB_DEBUG_FLAGS = @GLIB_DEBUG_FLAGS@
- GLIB_INTERFACE_AGE = @GLIB_INTERFACE_AGE@
-@@ -88,8 +90,10 @@
- MAINT = @MAINT@
- MAKEINFO = @MAKEINFO@
- OBJDUMP = @OBJDUMP@
-+OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- RANLIB = @RANLIB@
-+STRIP = @STRIP@
- VERSION = @VERSION@
-
- info_TEXINFOS = glib.texi
-@@ -114,7 +118,7 @@
-
- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
--TAR = gtar
-+TAR = tar
- GZIP_ENV = --best
- all: all-redirect
- .SUFFIXES:
-@@ -208,7 +212,7 @@
- else ii=; fi; \
- list='$(INFO_DEPS)'; \
- for file in $$list; do \
-- test -z "$ii" \
-+ test -z "$$ii" \
- || install-info --info-dir=$(DESTDIR)$(infodir) --remove $$file; \
- done
- @$(NORMAL_UNINSTALL)
---- glib1.2-1.2.10.orig/ltconfig
-+++ glib1.2-1.2.10/ltconfig
-@@ -1957,7 +1957,7 @@
- ;;
-
- # This must be Linux ELF.
--linux-gnu*)
-+linux-gnu*|kfreebsd*-gnu)
- version_type=linux
- need_lib_prefix=no
- need_version=no
---- glib1.2-1.2.10.orig/patch
-+++ glib1.2-1.2.10/patch
-@@ -0,0 +1,47 @@
-+diff -urN ../tmp-orig/glib1.2-1.2.10/gstrfuncs.c ./gstrfuncs.c
-+--- ../tmp-orig/glib1.2-1.2.10/gstrfuncs.c 2001-02-27 07:00:22.000000000 +0100
-++++ ./gstrfuncs.c 2004-08-02 21:35:44.323958675 +0200
-+@@ -867,8 +867,8 @@
-+ /* beware of positional parameters
-+ */
-+ case '$':
-+- g_warning (G_GNUC_PRETTY_FUNCTION
-+- "(): unable to handle positional parameters (%%n$)");
-++ g_warning ("%s(): unable to handle positional parameters (%%n$)",
-++ G_GNUC_PRETTY_FUNCTION );
-+ len += 1024; /* try adding some safety padding */
-+ break;
-+
-+@@ -1034,8 +1034,8 @@
-+ /* n . dddddddddddddddddddddddd E +- eeee */
-+ conv_len += 1 + 1 + MAX (24, spec.precision) + 1 + 1 + 4;
-+ if (spec.mod_extra_long)
-+- g_warning (G_GNUC_PRETTY_FUNCTION
-+- "(): unable to handle long double, collecting double only");
-++ g_warning ("%s(): unable to handle long double, collecting double only",
-++ G_GNUC_PRETTY_FUNCTION);
-+ #ifdef HAVE_LONG_DOUBLE
-+ #error need to implement special handling for long double
-+ #endif
-+@@ -1077,8 +1077,8 @@
-+ conv_done = TRUE;
-+ if (spec.mod_long)
-+ {
-+- g_warning (G_GNUC_PRETTY_FUNCTION
-+- "(): unable to handle wide char strings");
-++ g_warning ("%s(): unable to handle wide char strings",
-++ G_GNUC_PRETTY_FUNCTION);
-+ len += 1024; /* try adding some safety padding */
-+ }
-+ break;
-+@@ -1108,8 +1108,8 @@
-+ conv_len += format - spec_start;
-+ break;
-+ default:
-+- g_warning (G_GNUC_PRETTY_FUNCTION
-+- "(): unable to handle `%c' while parsing format",
-++ g_warning ("%s(): unable to handle `%c' while parsing format",
-++ G_GNUC_PRETTY_FUNCTION,
-+ c);
-+ break;
-+ }
---- glib1.2-1.2.10.orig/Makefile.in
-+++ glib1.2-1.2.10/Makefile.in
-@@ -1,6 +1,6 @@
--# Makefile.in generated automatically by automake 1.4 from Makefile.am
-+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
--# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -64,8 +64,10 @@
- AS = @AS@
- CC = @CC@
- DLLTOOL = @DLLTOOL@
-+ECHO = @ECHO@
- ENABLE_MEM_CHECK = @ENABLE_MEM_CHECK@
- ENABLE_MEM_PROFILE = @ENABLE_MEM_PROFILE@
-+EXEEXT = @EXEEXT@
- GLIB_BINARY_AGE = @GLIB_BINARY_AGE@
- GLIB_DEBUG_FLAGS = @GLIB_DEBUG_FLAGS@
- GLIB_INTERFACE_AGE = @GLIB_INTERFACE_AGE@
-@@ -90,8 +92,10 @@
- MAINT = @MAINT@
- MAKEINFO = @MAKEINFO@
- OBJDUMP = @OBJDUMP@
-+OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- RANLIB = @RANLIB@
-+STRIP = @STRIP@
- VERSION = @VERSION@
-
- AUTOMAKE_OPTIONS = 1.4
-@@ -154,18 +158,20 @@
- gmain.lo gmem.lo gmessages.lo gmutex.lo gnode.lo gprimes.lo grel.lo \
- gscanner.lo gslist.lo gstrfuncs.lo gstring.lo gtimer.lo gtree.lo \
- gutils.lo
-+noinst_PROGRAMS = testglib$(EXEEXT) testgdate$(EXEEXT) \
-+testgdateparser$(EXEEXT)
- PROGRAMS = $(noinst_PROGRAMS)
-
- testglib_SOURCES = testglib.c
--testglib_OBJECTS = testglib.o
-+testglib_OBJECTS = testglib.$(OBJEXT)
- testglib_DEPENDENCIES = libglib.la
- testglib_LDFLAGS =
- testgdate_SOURCES = testgdate.c
--testgdate_OBJECTS = testgdate.o
-+testgdate_OBJECTS = testgdate.$(OBJEXT)
- testgdate_DEPENDENCIES = libglib.la
- testgdate_LDFLAGS =
- testgdateparser_SOURCES = testgdateparser.c
--testgdateparser_OBJECTS = testgdateparser.o
-+testgdateparser_OBJECTS = testgdateparser.$(OBJEXT)
- testgdateparser_DEPENDENCIES = libglib.la
- testgdateparser_LDFLAGS =
- SCRIPTS = $(bin_SCRIPTS)
-@@ -180,22 +186,22 @@
- HEADERS = $(glibinclude_HEADERS)
-
- DIST_COMMON = README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \
--Makefile.am Makefile.in NEWS acconfig.h acinclude.m4 aclocal.m4 \
--config.guess config.h.in config.sub configure configure.in \
--glib-config.in glib.pc.in glib.spec.in gmodule.pc.in gthread.pc.in \
--install-sh ltconfig ltmain.sh missing mkinstalldirs
-+Makefile.am Makefile.in NEWS acconfig.h aclocal.m4 config.guess \
-+config.h.in config.sub configure configure.in glib-config.in glib.pc.in \
-+glib.spec.in gmodule.pc.in gthread.pc.in install-sh ltmain.sh missing \
-+mkinstalldirs
-
-
- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
--TAR = gtar
-+TAR = tar
- GZIP_ENV = --best
- SOURCES = $(libglib_la_SOURCES) testglib.c testgdate.c testgdateparser.c
--OBJECTS = $(libglib_la_OBJECTS) testglib.o testgdate.o testgdateparser.o
-+OBJECTS = $(libglib_la_OBJECTS) testglib.$(OBJEXT) testgdate.$(OBJEXT) testgdateparser.$(OBJEXT)
-
- all: all-redirect
- .SUFFIXES:
--.SUFFIXES: .S .c .lo .o .s
-+.SUFFIXES: .S .c .lo .o .obj .s
- $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile
-
-@@ -203,7 +209,7 @@
- cd $(top_builddir) \
- && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
--$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4
-+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in
- cd $(srcdir) && $(ACLOCAL)
-
- config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-@@ -277,6 +283,11 @@
- .c.o:
- $(COMPILE) -c $<
-
-+# FIXME: We should only use cygpath when building on Windows,
-+# and only if it is available.
-+.c.obj:
-+ $(COMPILE) -c `cygpath -w $<`
-+
- .s.o:
- $(COMPILE) -c $<
-
-@@ -285,6 +296,7 @@
-
- mostlyclean-compile:
- -rm -f *.o core *.core
-+ -rm -f *.$(OBJEXT)
-
- clean-compile:
-
-@@ -324,16 +336,16 @@
-
- maintainer-clean-noinstPROGRAMS:
-
--testglib: $(testglib_OBJECTS) $(testglib_DEPENDENCIES)
-- @rm -f testglib
-+testglib$(EXEEXT): $(testglib_OBJECTS) $(testglib_DEPENDENCIES)
-+ @rm -f testglib$(EXEEXT)
- $(LINK) $(testglib_LDFLAGS) $(testglib_OBJECTS) $(testglib_LDADD) $(LIBS)
-
--testgdate: $(testgdate_OBJECTS) $(testgdate_DEPENDENCIES)
-- @rm -f testgdate
-+testgdate$(EXEEXT): $(testgdate_OBJECTS) $(testgdate_DEPENDENCIES)
-+ @rm -f testgdate$(EXEEXT)
- $(LINK) $(testgdate_LDFLAGS) $(testgdate_OBJECTS) $(testgdate_LDADD) $(LIBS)
-
--testgdateparser: $(testgdateparser_OBJECTS) $(testgdateparser_DEPENDENCIES)
-- @rm -f testgdateparser
-+testgdateparser$(EXEEXT): $(testgdateparser_OBJECTS) $(testgdateparser_DEPENDENCIES)
-+ @rm -f testgdateparser$(EXEEXT)
- $(LINK) $(testgdateparser_LDFLAGS) $(testgdateparser_OBJECTS) $(testgdateparser_LDADD) $(LIBS)
-
- install-binSCRIPTS: $(bin_SCRIPTS)
-@@ -463,7 +475,7 @@
- dot_seen=no; \
- rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
- rev="$$subdir $$rev"; \
-- test "$$subdir" = "." && dot_seen=yes; \
-+ test "$$subdir" != "." || dot_seen=yes; \
- done; \
- test "$$dot_seen" = "no" && rev=". $$rev"; \
- target=`echo $@ | sed s/-recursive//`; \
-@@ -505,7 +517,7 @@
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \
-- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS)
-+ || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP))
-
- mostlyclean-tags:
-
-@@ -575,35 +587,6 @@
- fi; \
- done
- $(MAKE) $(AM_MAKEFLAGS) top_distdir="$(top_distdir)" distdir="$(distdir)" dist-hook
--garray.lo garray.o : garray.c glib.h glibconfig.h
--gcache.lo gcache.o : gcache.c glib.h glibconfig.h
--gcompletion.lo gcompletion.o : gcompletion.c glib.h glibconfig.h
--gdataset.lo gdataset.o : gdataset.c glib.h glibconfig.h
--gdate.lo gdate.o : gdate.c config.h glib.h glibconfig.h
--gerror.lo gerror.o : gerror.c config.h glib.h glibconfig.h
--ghash.lo ghash.o : ghash.c glib.h glibconfig.h
--ghook.lo ghook.o : ghook.c glib.h glibconfig.h
--giochannel.lo giochannel.o : giochannel.c config.h glib.h glibconfig.h
--giounix.lo giounix.o : giounix.c glib.h glibconfig.h
--glist.lo glist.o : glist.c glib.h glibconfig.h
--gmain.lo gmain.o : gmain.c config.h glib.h glibconfig.h
--gmem.lo gmem.o : gmem.c config.h glib.h glibconfig.h
--gmessages.lo gmessages.o : gmessages.c config.h glib.h glibconfig.h
--gmutex.lo gmutex.o : gmutex.c glib.h glibconfig.h
--gnode.lo gnode.o : gnode.c glib.h glibconfig.h
--gprimes.lo gprimes.o : gprimes.c glib.h glibconfig.h
--grel.lo grel.o : grel.c glib.h glibconfig.h
--gscanner.lo gscanner.o : gscanner.c config.h glib.h glibconfig.h
--gslist.lo gslist.o : gslist.c glib.h glibconfig.h
--gstrfuncs.lo gstrfuncs.o : gstrfuncs.c config.h glib.h glibconfig.h
--gstring.lo gstring.o : gstring.c glib.h glibconfig.h
--gtimer.lo gtimer.o : gtimer.c config.h glib.h glibconfig.h
--gtree.lo gtree.o : gtree.c glib.h glibconfig.h
--gutils.lo gutils.o : gutils.c config.h glibconfig.h glib.h
--testgdate.o: testgdate.c glib.h glibconfig.h
--testgdateparser.o: testgdateparser.c glib.h glibconfig.h
--testglib.o: testglib.c glib.h glibconfig.h
--
- info-am:
- info: info-recursive
- dvi-am:
---- glib1.2-1.2.10.orig/gthread/Makefile.in
-+++ glib1.2-1.2.10/gthread/Makefile.in
-@@ -1,6 +1,6 @@
--# Makefile.in generated automatically by automake 1.4 from Makefile.am
-+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
--# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -62,8 +62,10 @@
- AS = @AS@
- CC = @CC@
- DLLTOOL = @DLLTOOL@
-+ECHO = @ECHO@
- ENABLE_MEM_CHECK = @ENABLE_MEM_CHECK@
- ENABLE_MEM_PROFILE = @ENABLE_MEM_PROFILE@
-+EXEEXT = @EXEEXT@
- GLIB_BINARY_AGE = @GLIB_BINARY_AGE@
- GLIB_DEBUG_FLAGS = @GLIB_DEBUG_FLAGS@
- GLIB_INTERFACE_AGE = @GLIB_INTERFACE_AGE@
-@@ -88,8 +90,10 @@
- MAINT = @MAINT@
- MAKEINFO = @MAKEINFO@
- OBJDUMP = @OBJDUMP@
-+OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- RANLIB = @RANLIB@
-+STRIP = @STRIP@
- VERSION = @VERSION@
-
- INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/gthread -DG_LOG_DOMAIN=\"GThread\"
-@@ -105,7 +109,7 @@
- libgthread_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic
-
-
--libgthread_la_LIBADD = @G_THREAD_LIBS@
-+libgthread_la_LIBADD = @G_THREAD_LIBS@ $(libglib)
-
- noinst_PROGRAMS = testgthread
- testgthread_LDADD = ../libglib.la libgthread.la
-@@ -121,10 +125,11 @@
- LIBS = @LIBS@
- libgthread_la_DEPENDENCIES =
- libgthread_la_OBJECTS = gthread.lo
-+noinst_PROGRAMS = testgthread$(EXEEXT)
- PROGRAMS = $(noinst_PROGRAMS)
-
- testgthread_SOURCES = testgthread.c
--testgthread_OBJECTS = testgthread.o
-+testgthread_OBJECTS = testgthread.$(OBJEXT)
- testgthread_DEPENDENCIES = ../libglib.la libgthread.la
- testgthread_LDFLAGS =
- CFLAGS = @CFLAGS@
-@@ -137,14 +142,14 @@
-
- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
--TAR = gtar
-+TAR = tar
- GZIP_ENV = --best
- SOURCES = $(libgthread_la_SOURCES) testgthread.c
--OBJECTS = $(libgthread_la_OBJECTS) testgthread.o
-+OBJECTS = $(libgthread_la_OBJECTS) testgthread.$(OBJEXT)
-
- all: all-redirect
- .SUFFIXES:
--.SUFFIXES: .S .c .lo .o .s
-+.SUFFIXES: .S .c .lo .o .obj .s
- $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps gthread/Makefile
-
-@@ -181,6 +186,11 @@
- .c.o:
- $(COMPILE) -c $<
-
-+# FIXME: We should only use cygpath when building on Windows,
-+# and only if it is available.
-+.c.obj:
-+ $(COMPILE) -c `cygpath -w $<`
-+
- .s.o:
- $(COMPILE) -c $<
-
-@@ -189,6 +199,7 @@
-
- mostlyclean-compile:
- -rm -f *.o core *.core
-+ -rm -f *.$(OBJEXT)
-
- clean-compile:
-
-@@ -228,8 +239,8 @@
-
- maintainer-clean-noinstPROGRAMS:
-
--testgthread: $(testgthread_OBJECTS) $(testgthread_DEPENDENCIES)
-- @rm -f testgthread
-+testgthread$(EXEEXT): $(testgthread_OBJECTS) $(testgthread_DEPENDENCIES)
-+ @rm -f testgthread$(EXEEXT)
- $(LINK) $(testgthread_LDFLAGS) $(testgthread_OBJECTS) $(testgthread_LDADD) $(LIBS)
-
- tags: TAGS
-@@ -250,7 +261,7 @@
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-+ || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP))
-
- mostlyclean-tags:
-
-@@ -276,11 +287,6 @@
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
--gthread.lo gthread.o : gthread.c ../config.h ../glib.h ../glibconfig.h \
-- gthread-posix.c
--testgthread.o: testgthread.c ../config.h ../testglib.c ../glib.h \
-- ../glibconfig.h
--
- info-am:
- info: info-am
- dvi-am:
---- glib1.2-1.2.10.orig/gthread/Makefile.am
-+++ glib1.2-1.2.10/gthread/Makefile.am
-@@ -19,7 +19,7 @@
- -release $(LT_RELEASE) \
- -export-dynamic
-
--libgthread_la_LIBADD = @G_THREAD_LIBS@
-+libgthread_la_LIBADD = @G_THREAD_LIBS@ $(libglib)
-
- noinst_PROGRAMS = testgthread
- testgthread_LDADD = ../libglib.la libgthread.la
---- glib1.2-1.2.10.orig/glibconfig.h
-+++ glib1.2-1.2.10/glibconfig.h
-@@ -0,0 +1,131 @@
-+/* glibconfig.h
-+ *
-+ * This is a generated file. Please modify `configure.in'
-+ */
-+
-+#ifndef GLIBCONFIG_H
-+#define GLIBCONFIG_H
-+
-+#include <limits.h>
-+#include <float.h>
-+#define GLIB_HAVE_SYS_POLL_H
-+
-+#ifdef __cplusplus
-+extern "C" {
-+#endif /* __cplusplus */
-+
-+#define G_MINFLOAT FLT_MIN
-+#define G_MAXFLOAT FLT_MAX
-+#define G_MINDOUBLE DBL_MIN
-+#define G_MAXDOUBLE DBL_MAX
-+#define G_MINSHORT SHRT_MIN
-+#define G_MAXSHORT SHRT_MAX
-+#define G_MININT INT_MIN
-+#define G_MAXINT INT_MAX
-+#define G_MINLONG LONG_MIN
-+#define G_MAXLONG LONG_MAX
-+
-+typedef signed char gint8;
-+typedef unsigned char guint8;
-+typedef signed short gint16;
-+typedef unsigned short guint16;
-+typedef signed int gint32;
-+typedef unsigned int guint32;
-+
-+#if defined (__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 8))
-+# define G_GNUC_EXTENSION __extension__
-+#else
-+# define G_GNUC_EXTENSION
-+#endif
-+
-+#define G_HAVE_GINT64 1
-+
-+G_GNUC_EXTENSION typedef signed long long gint64;
-+G_GNUC_EXTENSION typedef unsigned long long guint64;
-+
-+#define G_GINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##LL))
-+
-+#define GPOINTER_TO_INT(p) ((gint) (p))
-+#define GPOINTER_TO_UINT(p) ((guint) (p))
-+
-+#define GINT_TO_POINTER(i) ((gpointer) (i))
-+#define GUINT_TO_POINTER(u) ((gpointer) (u))
-+
-+#ifdef NeXT /* @#%@! NeXTStep */
-+# define g_ATEXIT(proc) (!atexit (proc))
-+#else
-+# define g_ATEXIT(proc) (atexit (proc))
-+#endif
-+
-+#define g_memmove(d,s,n) G_STMT_START { memmove ((d), (s), (n)); } G_STMT_END
-+
-+#define GLIB_MAJOR_VERSION 1
-+#define GLIB_MINOR_VERSION 2
-+#define GLIB_MICRO_VERSION 10
-+
-+
-+#define G_VA_COPY __va_copy
-+
-+#ifdef __cplusplus
-+#define G_HAVE_INLINE 1
-+#else /* !__cplusplus */
-+#define G_HAVE_INLINE 1
-+#define G_HAVE___INLINE 1
-+#define G_HAVE___INLINE__ 1
-+#endif /* !__cplusplus */
-+
-+#define G_THREADS_ENABLED
-+#define G_THREADS_IMPL_POSIX
-+typedef struct _GStaticMutex GStaticMutex;
-+struct _GStaticMutex
-+{
-+ struct _GMutex *runtime_mutex;
-+ union {
-+ char pad[24];
-+ double dummy_double;
-+ void *dummy_pointer;
-+ long dummy_long;
-+ } aligned_pad_u;
-+};
-+#define G_STATIC_MUTEX_INIT { NULL, { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0} } }
-+#define g_static_mutex_get_mutex(mutex) (g_thread_use_default_impl ? ((GMutex*) &((mutex)->aligned_pad_u)) : g_static_mutex_get_mutex_impl (&((mutex)->runtime_mutex)))
-+
-+#define GINT16_TO_LE(val) ((gint16) (val))
-+#define GUINT16_TO_LE(val) ((guint16) (val))
-+#define GINT16_TO_BE(val) ((gint16) GUINT16_SWAP_LE_BE (val))
-+#define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
-+#define GINT32_TO_LE(val) ((gint32) (val))
-+#define GUINT32_TO_LE(val) ((guint32) (val))
-+#define GINT32_TO_BE(val) ((gint32) GUINT32_SWAP_LE_BE (val))
-+#define GUINT32_TO_BE(val) (GUINT32_SWAP_LE_BE (val))
-+#define GINT64_TO_LE(val) ((gint64) (val))
-+#define GUINT64_TO_LE(val) ((guint64) (val))
-+#define GINT64_TO_BE(val) ((gint64) GUINT64_SWAP_LE_BE (val))
-+#define GUINT64_TO_BE(val) (GUINT64_SWAP_LE_BE (val))
-+#define GLONG_TO_LE(val) ((glong) GINT32_TO_LE (val))
-+#define GULONG_TO_LE(val) ((gulong) GUINT32_TO_LE (val))
-+#define GLONG_TO_BE(val) ((glong) GINT32_TO_BE (val))
-+#define GULONG_TO_BE(val) ((gulong) GUINT32_TO_BE (val))
-+#define GINT_TO_LE(val) ((gint) GINT32_TO_LE (val))
-+#define GUINT_TO_LE(val) ((guint) GUINT32_TO_LE (val))
-+#define GINT_TO_BE(val) ((gint) GINT32_TO_BE (val))
-+#define GUINT_TO_BE(val) ((guint) GUINT32_TO_BE (val))
-+#define G_BYTE_ORDER G_LITTLE_ENDIAN
-+
-+#define GLIB_SYSDEF_POLLIN =1
-+#define GLIB_SYSDEF_POLLOUT =4
-+#define GLIB_SYSDEF_POLLPRI =2
-+#define GLIB_SYSDEF_POLLERR =8
-+#define GLIB_SYSDEF_POLLHUP =16
-+#define GLIB_SYSDEF_POLLNVAL =32
-+
-+
-+#define G_HAVE_WCHAR_H 1
-+#define G_HAVE_WCTYPE_H 1
-+
-+
-+#ifdef __cplusplus
-+}
-+#endif /* __cplusplus */
-+
-+#endif /* GLIBCONFIG_H */
---- glib1.2-1.2.10.orig/glib.m4
-+++ glib1.2-1.2.10/glib.m4
-@@ -5,7 +5,7 @@
- dnl Test for GLIB, and define GLIB_CFLAGS and GLIB_LIBS, if "gmodule" or
- dnl gthread is specified in MODULES, pass to glib-config
- dnl
--AC_DEFUN(AM_PATH_GLIB,
-+AC_DEFUN([AM_PATH_GLIB],
- [dnl
- dnl Get the cflags and libraries from the glib-config script
- dnl
---- glib1.2-1.2.10.orig/ltmain.sh
-+++ glib1.2-1.2.10/ltmain.sh
-@@ -1,7 +1,8 @@
- # ltmain.sh - Provide generalized library-building support services.
--# NOTE: Changing this file will not affect anything until you rerun ltconfig.
-+# NOTE: Changing this file will not affect anything until you rerun configure.
- #
--# Copyright (C) 1996-1999 Free Software Foundation, Inc.
-+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
-+# Free Software Foundation, Inc.
- # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
- #
- # This program is free software; you can redistribute it and/or modify
-@@ -48,14 +49,14 @@
- fi
-
- # The name of this program.
--progname=`$echo "$0" | sed 's%^.*/%%'`
-+progname=`$echo "$0" | ${SED} 's%^.*/%%'`
- modename="$progname"
-
- # Constants.
- PROGRAM=ltmain.sh
- PACKAGE=libtool
--VERSION=1.3.4
--TIMESTAMP=" (1.385.2.196 1999/12/07 21:47:57)"
-+VERSION=1.4.3
-+TIMESTAMP=" (1.922.2.111 2002/10/23 02:54:36)"
-
- default_mode=
- help="Try \`$progname --help' for more information."
-@@ -66,10 +67,19 @@
-
- # Sed substitution that helps us do robust quoting. It backslashifies
- # metacharacters that are still active within double-quoted strings.
--Xsed='sed -e 1s/^X//'
-+Xsed="${SED}"' -e 1s/^X//'
- sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
--SP2NL='tr \040 \012'
--NL2SP='tr \015\012 \040\040'
-+# test EBCDIC or ASCII
-+case `echo A|od -x` in
-+ *[Cc]1*) # EBCDIC based system
-+ SP2NL="tr '\100' '\n'"
-+ NL2SP="tr '\r\n' '\100\100'"
-+ ;;
-+ *) # Assume ASCII based system
-+ SP2NL="tr '\040' '\012'"
-+ NL2SP="tr '\015\012' '\040\040'"
-+ ;;
-+esac
-
- # NLS nuisances.
- # Only set LANG and LC_ALL to C if already set.
-@@ -83,11 +93,8 @@
- save_LANG="$LANG"; LANG=C; export LANG
- fi
-
--if test "$LTCONFIG_VERSION" != "$VERSION"; then
-- echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
-- echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
-- exit 1
--fi
-+# Make sure IFS has a sensible default
-+: ${IFS=" "}
-
- if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
- echo "$modename: not configured to build any kind of library" 1>&2
-@@ -113,16 +120,16 @@
- arg="$1"
- shift
-
-- case "$arg" in
-+ case $arg in
- -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;;
- *) optarg= ;;
- esac
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
-- case "$prev" in
-+ case $prev in
- execute_dlfiles)
-- eval "$prev=\"\$$prev \$arg\""
-+ execute_dlfiles="$execute_dlfiles $arg"
- ;;
- *)
- eval "$prev=\$arg"
-@@ -135,7 +142,7 @@
- fi
-
- # Have we seen a non-optional argument yet?
-- case "$arg" in
-+ case $arg in
- --help)
- show_help=yes
- ;;
-@@ -146,7 +153,7 @@
- ;;
-
- --config)
-- sed -e '1,/^### BEGIN LIBTOOL CONFIG/d' -e '/^### END LIBTOOL CONFIG/,$d' $0
-+ ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
- exit 0
- ;;
-
-@@ -179,6 +186,8 @@
- --mode) prevopt="--mode" prev=mode ;;
- --mode=*) mode="$optarg" ;;
-
-+ --preserve-dup-deps) duplicate_deps="yes" ;;
-+
- --quiet | --silent)
- show=:
- ;;
-@@ -207,16 +216,21 @@
- exit 1
- fi
-
-+# If this variable is set in any of the actions, the command in it
-+# will be execed at the end. This prevents here-documents from being
-+# left over by shells.
-+exec_cmd=
-+
- if test -z "$show_help"; then
-
- # Infer the operation mode.
- if test -z "$mode"; then
-- case "$nonopt" in
-- *cc | *++ | gcc* | *-gcc*)
-+ case $nonopt in
-+ *cc | *++ | gcc* | *-gcc* | g++* | xlc*)
- mode=link
- for arg
- do
-- case "$arg" in
-+ case $arg in
- -c)
- mode=compile
- break
-@@ -261,12 +275,13 @@
- help="Try \`$modename --help --mode=$mode' for more information."
-
- # These modes are in order of execution frequency so that they run quickly.
-- case "$mode" in
-+ case $mode in
- # libtool compile mode
- compile)
- modename="$modename: compile"
- # Get the compilation command and the source file.
- base_compile=
-+ prev=
- lastarg=
- srcfile="$nonopt"
- suppress_output=
-@@ -274,8 +289,34 @@
- user_target=no
- for arg
- do
-+ case $prev in
-+ "") ;;
-+ xcompiler)
-+ # Aesthetically quote the previous argument.
-+ prev=
-+ lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-+
-+ case $arg in
-+ # Double-quote args containing other shell metacharacters.
-+ # Many Bourne shells cannot handle close brackets correctly
-+ # in scan sets, so we specify it separately.
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+
-+ # Add the previous argument to base_compile.
-+ if test -z "$base_compile"; then
-+ base_compile="$lastarg"
-+ else
-+ base_compile="$base_compile $lastarg"
-+ fi
-+ continue
-+ ;;
-+ esac
-+
- # Accept any command-line options.
-- case "$arg" in
-+ case $arg in
- -o)
- if test "$user_target" != "no"; then
- $echo "$modename: you cannot specify \`-o' more than once" 1>&2
-@@ -288,9 +329,53 @@
- build_old_libs=yes
- continue
- ;;
-+
-+ -prefer-pic)
-+ pic_mode=yes
-+ continue
-+ ;;
-+
-+ -prefer-non-pic)
-+ pic_mode=no
-+ continue
-+ ;;
-+
-+ -Xcompiler)
-+ prev=xcompiler
-+ continue
-+ ;;
-+
-+ -Wc,*)
-+ args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
-+ lastarg=
-+ save_ifs="$IFS"; IFS=','
-+ for arg in $args; do
-+ IFS="$save_ifs"
-+
-+ # Double-quote args containing other shell metacharacters.
-+ # Many Bourne shells cannot handle close brackets correctly
-+ # in scan sets, so we specify it separately.
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ lastarg="$lastarg $arg"
-+ done
-+ IFS="$save_ifs"
-+ lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"`
-+
-+ # Add the arguments to base_compile.
-+ if test -z "$base_compile"; then
-+ base_compile="$lastarg"
-+ else
-+ base_compile="$base_compile $lastarg"
-+ fi
-+ continue
-+ ;;
- esac
-
-- case "$user_target" in
-+ case $user_target in
- next)
- # The next one is the -o target name
- user_target=yes
-@@ -316,10 +401,10 @@
- lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"`
-
- # Double-quote args containing other shell metacharacters.
-- # Many Bourne shells cannot handle close brackets correctly in scan
-- # sets, so we specify it separately.
-- case "$lastarg" in
-- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ # Many Bourne shells cannot handle close brackets correctly
-+ # in scan sets, so we specify it separately.
-+ case $lastarg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- lastarg="\"$lastarg\""
- ;;
- esac
-@@ -332,7 +417,7 @@
- fi
- done
-
-- case "$user_target" in
-+ case $user_target in
- set)
- ;;
- no)
-@@ -348,7 +433,7 @@
- # Recognize several different file suffixes.
- # If the user specifies -o file.o, it is replaced with file.lo
- xform='[cCFSfmso]'
-- case "$libobj" in
-+ case $libobj in
- *.ada) xform=ada ;;
- *.adb) xform=adb ;;
- *.ads) xform=ads ;;
-@@ -363,7 +448,7 @@
-
- libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
-
-- case "$libobj" in
-+ case $libobj in
- *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
- *)
- $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
-@@ -387,10 +472,21 @@
- $run $rm $removelist
- trap "$run $rm $removelist; exit 1" 1 2 15
-
-+ # On Cygwin there's no "real" PIC flag so we must build both object types
-+ case $host_os in
-+ cygwin* | mingw* | pw32* | os2*)
-+ pic_mode=default
-+ ;;
-+ esac
-+ if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
-+ # non-PIC code in shared libraries is not supported
-+ pic_mode=default
-+ fi
-+
- # Calculate the filename of the output object if compiler does
- # not support -o with -c
- if test "$compiler_c_o" = no; then
-- output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\..*$%%'`.${objext}
-+ output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
- lockfile="$output_obj.lock"
- removelist="$removelist $output_obj $lockfile"
- trap "$run $rm $removelist; exit 1" 1 2 15
-@@ -402,7 +498,7 @@
- # Lock this critical section if it is needed
- # We use this script file to make the link, it avoids creating a new file
- if test "$need_locks" = yes; then
-- until ln "$0" "$lockfile" 2>/dev/null; do
-+ until $run ln "$0" "$lockfile" 2>/dev/null; do
- $show "Waiting for $lockfile to be removed"
- sleep 2
- done
-@@ -434,8 +530,13 @@
- # Without this assignment, base_compile gets emptied.
- fbsd_hideous_sh_bug=$base_compile
-
-- # All platforms use -DPIC, to notify preprocessed assembler code.
-- command="$base_compile $srcfile $pic_flag -DPIC"
-+ if test "$pic_mode" != no; then
-+ # All platforms use -DPIC, to notify preprocessed assembler code.
-+ command="$base_compile $srcfile $pic_flag -DPIC"
-+ else
-+ # Don't build PIC code
-+ command="$base_compile $srcfile"
-+ fi
- if test "$build_old_libs" = yes; then
- lo_libobj="$libobj"
- dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
-@@ -506,7 +607,8 @@
- fi
-
- # If we have no pic_flag, then copy the object into place and finish.
-- if test -z "$pic_flag" && test "$build_old_libs" = yes; then
-+ if (test -z "$pic_flag" || test "$pic_mode" != default) &&
-+ test "$build_old_libs" = yes; then
- # Rename the .lo from within objdir to obj
- if test -f $obj; then
- $show $rm $obj
-@@ -532,6 +634,10 @@
- # Now arrange that obj and lo_libobj become the same file
- $show "(cd $xdir && $LN_S $baseobj $libobj)"
- if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
-+ # Unlock the critical section if it was locked
-+ if test "$need_locks" != no; then
-+ $run $rm "$lockfile"
-+ fi
- exit 0
- else
- error=$?
-@@ -546,7 +652,13 @@
-
- # Only build a position-dependent object if we build old libraries.
- if test "$build_old_libs" = yes; then
-- command="$base_compile $srcfile"
-+ if test "$pic_mode" != yes; then
-+ # Don't build PIC code
-+ command="$base_compile $srcfile"
-+ else
-+ # All platforms use -DPIC, to notify preprocessed assembler code.
-+ command="$base_compile $srcfile $pic_flag -DPIC"
-+ fi
- if test "$compiler_c_o" = yes; then
- command="$command -o $obj"
- output_obj="$obj"
-@@ -612,17 +724,17 @@
-
- # Unlock the critical section if it was locked
- if test "$need_locks" != no; then
-- $rm "$lockfile"
-+ $run $rm "$lockfile"
- fi
-
- exit 0
- ;;
-
- # libtool link mode
-- link)
-+ link | relink)
- modename="$modename: link"
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2*)
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- # It is impossible to link a dll without this setting, and
- # we shouldn't force the makefile maintainer to figure out
- # which system we are compiling for in order to pass an extra
-@@ -635,179 +747,12 @@
- # -no-undefined on the libtool link line when we can be certain
- # that all symbols are satisfied, otherwise we get a static library.
- allow_undefined=yes
--
-- # This is a source program that is used to create dlls on Windows
-- # Don't remove nor modify the starting and closing comments
--# /* ltdll.c starts here */
--# #define WIN32_LEAN_AND_MEAN
--# #include <windows.h>
--# #undef WIN32_LEAN_AND_MEAN
--# #include <stdio.h>
--#
--# #ifndef __CYGWIN__
--# # ifdef __CYGWIN32__
--# # define __CYGWIN__ __CYGWIN32__
--# # endif
--# #endif
--#
--# #ifdef __cplusplus
--# extern "C" {
--# #endif
--# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
--# #ifdef __cplusplus
--# }
--# #endif
--#
--# #ifdef __CYGWIN__
--# #include <cygwin/cygwin_dll.h>
--# DECLARE_CYGWIN_DLL( DllMain );
--# #endif
--# HINSTANCE __hDllInstance_base;
--#
--# BOOL APIENTRY
--# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
--# {
--# __hDllInstance_base = hInst;
--# return TRUE;
--# }
--# /* ltdll.c ends here */
-- # This is a source program that is used to create import libraries
-- # on Windows for dlls which lack them. Don't remove nor modify the
-- # starting and closing comments
--# /* impgen.c starts here */
--# /* Copyright (C) 1999 Free Software Foundation, Inc.
--#
--# This file is part of GNU libtool.
--#
--# This program is free software; you can redistribute it and/or modify
--# it under the terms of the GNU General Public License as published by
--# the Free Software Foundation; either version 2 of the License, or
--# (at your option) any later version.
--#
--# This program is distributed in the hope that it will be useful,
--# but WITHOUT ANY WARRANTY; without even the implied warranty of
--# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--# GNU General Public License for more details.
--#
--# You should have received a copy of the GNU General Public License
--# along with this program; if not, write to the Free Software
--# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
--# */
--#
--# #include <stdio.h> /* for printf() */
--# #include <unistd.h> /* for open(), lseek(), read() */
--# #include <fcntl.h> /* for O_RDONLY, O_BINARY */
--# #include <string.h> /* for strdup() */
--#
--# static unsigned int
--# pe_get16 (fd, offset)
--# int fd;
--# int offset;
--# {
--# unsigned char b[2];
--# lseek (fd, offset, SEEK_SET);
--# read (fd, b, 2);
--# return b[0] + (b[1]<<8);
--# }
--#
--# static unsigned int
--# pe_get32 (fd, offset)
--# int fd;
--# int offset;
--# {
--# unsigned char b[4];
--# lseek (fd, offset, SEEK_SET);
--# read (fd, b, 4);
--# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
--# }
--#
--# static unsigned int
--# pe_as32 (ptr)
--# void *ptr;
--# {
--# unsigned char *b = ptr;
--# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
--# }
--#
--# int
--# main (argc, argv)
--# int argc;
--# char *argv[];
--# {
--# int dll;
--# unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
--# unsigned long export_rva, export_size, nsections, secptr, expptr;
--# unsigned long name_rvas, nexp;
--# unsigned char *expdata, *erva;
--# char *filename, *dll_name;
--#
--# filename = argv[1];
--#
--# dll = open(filename, O_RDONLY|O_BINARY);
--# if (!dll)
--# return 1;
--#
--# dll_name = filename;
--#
--# for (i=0; filename[i]; i++)
--# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
--# dll_name = filename + i +1;
--#
--# pe_header_offset = pe_get32 (dll, 0x3c);
--# opthdr_ofs = pe_header_offset + 4 + 20;
--# num_entries = pe_get32 (dll, opthdr_ofs + 92);
--#
--# if (num_entries < 1) /* no exports */
--# return 1;
--#
--# export_rva = pe_get32 (dll, opthdr_ofs + 96);
--# export_size = pe_get32 (dll, opthdr_ofs + 100);
--# nsections = pe_get16 (dll, pe_header_offset + 4 +2);
--# secptr = (pe_header_offset + 4 + 20 +
--# pe_get16 (dll, pe_header_offset + 4 + 16));
--#
--# expptr = 0;
--# for (i = 0; i < nsections; i++)
--# {
--# char sname[8];
--# unsigned long secptr1 = secptr + 40 * i;
--# unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
--# unsigned long vsize = pe_get32 (dll, secptr1 + 16);
--# unsigned long fptr = pe_get32 (dll, secptr1 + 20);
--# lseek(dll, secptr1, SEEK_SET);
--# read(dll, sname, 8);
--# if (vaddr <= export_rva && vaddr+vsize > export_rva)
--# {
--# expptr = fptr + (export_rva - vaddr);
--# if (export_rva + export_size > vaddr + vsize)
--# export_size = vsize - (export_rva - vaddr);
--# break;
--# }
--# }
--#
--# expdata = (unsigned char*)malloc(export_size);
--# lseek (dll, expptr, SEEK_SET);
--# read (dll, expdata, export_size);
--# erva = expdata - export_rva;
--#
--# nexp = pe_as32 (expdata+24);
--# name_rvas = pe_as32 (expdata+32);
--#
--# printf ("EXPORTS\n");
--# for (i = 0; i<nexp; i++)
--# {
--# unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
--# printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
--# }
--#
--# return 0;
--# }
--# /* impgen.c ends here */
- ;;
- *)
- allow_undefined=yes
- ;;
- esac
-+ libtool_args="$nonopt"
- compile_command="$nonopt"
- finalize_command="$nonopt"
-
-@@ -818,18 +763,13 @@
- convenience=
- old_convenience=
- deplibs=
-- linkopts=
-+ old_deplibs=
-+ compiler_flags=
-+ linker_flags=
-+ dllsearchpath=
-+ lib_search_path=`pwd`
-+ inst_prefix_dir=
-
-- if test -n "$shlibpath_var"; then
-- # get the directories listed in $shlibpath_var
-- eval lib_search_path=\`\$echo \"X \${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
-- else
-- lib_search_path=
-- fi
-- # now prepend the system-specific ones
-- eval lib_search_path=\"$sys_lib_search_path_spec\$lib_search_path\"
-- eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
--
- avoid_version=no
- dlfiles=
- dlprefiles=
-@@ -839,9 +779,9 @@
- export_symbols_regex=
- generated=
- libobjs=
-- link_against_libtool_libs=
- ltlibs=
- module=no
-+ no_install=no
- objs=
- prefer_static_libs=no
- preload=no
-@@ -858,7 +798,7 @@
- # We need to know -static, to get the right output filenames.
- for arg
- do
-- case "$arg" in
-+ case $arg in
- -all-static | -static)
- if test "X$arg" = "X-all-static"; then
- if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
-@@ -887,17 +827,24 @@
- while test $# -gt 0; do
- arg="$1"
- shift
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test
-+ ;;
-+ *) qarg=$arg ;;
-+ esac
-+ libtool_args="$libtool_args $qarg"
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
-- case "$prev" in
-+ case $prev in
- output)
- compile_command="$compile_command @OUTPUT@"
- finalize_command="$finalize_command @OUTPUT@"
- ;;
- esac
-
-- case "$prev" in
-+ case $prev in
- dlfiles|dlprefiles)
- if test "$preload" = no; then
- # Add the symbol object into the linking commands.
-@@ -905,7 +852,7 @@
- finalize_command="$finalize_command @SYMFILE@"
- preload=yes
- fi
-- case "$arg" in
-+ case $arg in
- *.la | *.lo) ;; # We handle these cases below.
- force)
- if test "$dlself" = no; then
-@@ -934,6 +881,7 @@
- dlprefiles="$dlprefiles $arg"
- fi
- prev=
-+ continue
- ;;
- esac
- ;;
-@@ -951,6 +899,11 @@
- prev=
- continue
- ;;
-+ inst_prefix)
-+ inst_prefix_dir="$arg"
-+ prev=
-+ continue
-+ ;;
- release)
- release="-$arg"
- prev=
-@@ -958,7 +911,7 @@
- ;;
- rpath | xrpath)
- # We need an absolute path.
-- case "$arg" in
-+ case $arg in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
-@@ -979,17 +932,32 @@
- prev=
- continue
- ;;
-+ xcompiler)
-+ compiler_flags="$compiler_flags $qarg"
-+ prev=
-+ compile_command="$compile_command $qarg"
-+ finalize_command="$finalize_command $qarg"
-+ continue
-+ ;;
-+ xlinker)
-+ linker_flags="$linker_flags $qarg"
-+ compiler_flags="$compiler_flags $wl$qarg"
-+ prev=
-+ compile_command="$compile_command $wl$qarg"
-+ finalize_command="$finalize_command $wl$qarg"
-+ continue
-+ ;;
- *)
- eval "$prev=\"\$arg\""
- prev=
- continue
- ;;
- esac
-- fi
-+ fi # test -n $prev
-
- prevarg="$arg"
-
-- case "$arg" in
-+ case $arg in
- -all-static)
- if test -n "$link_static_flag"; then
- compile_command="$compile_command $link_static_flag"
-@@ -1026,7 +994,7 @@
-
- -export-symbols | -export-symbols-regex)
- if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
-- $echo "$modename: not more than one -exported-symbols argument allowed"
-+ $echo "$modename: more than one -exported-symbols argument is not allowed"
- exit 1
- fi
- if test "X$arg" = "X-export-symbols"; then
-@@ -1037,58 +1005,81 @@
- continue
- ;;
-
-+ -inst-prefix-dir)
-+ prev=inst_prefix
-+ continue
-+ ;;
-+
-+ # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
-+ # so, if we see these flags be careful not to treat them like -L
-+ -L[A-Z][A-Z]*:*)
-+ case $with_gcc/$host in
-+ no/*-*-irix* | no/*-*-nonstopux*)
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ ;;
-+ esac
-+ continue
-+ ;;
-+
- -L*)
- dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
- # We need an absolute path.
-- case "$dir" in
-+ case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- absdir=`cd "$dir" && pwd`
- if test -z "$absdir"; then
-- $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
-- $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
-- absdir="$dir"
-+ $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
-+ exit 1
- fi
- dir="$absdir"
- ;;
- esac
-- case " $deplibs " in
-- *" $arg "*) ;;
-- *) deplibs="$deplibs $arg";;
-- esac
-- case " $lib_search_path " in
-- *" $dir "*) ;;
-- *) lib_search_path="$lib_search_path $dir";;
-+ case "$deplibs " in
-+ *" -L$dir "*) ;;
-+ *)
-+ deplibs="$deplibs -L$dir"
-+ lib_search_path="$lib_search_path $dir"
-+ ;;
- esac
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2*)
-- dllsearchdir=`cd "$dir" && pwd || echo "$dir"`
-- case ":$dllsearchpath:" in
-- ::) dllsearchpath="$dllsearchdir";;
-- *":$dllsearchdir:"*) ;;
-- *) dllsearchpath="$dllsearchpath:$dllsearchdir";;
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ case :$dllsearchpath: in
-+ *":$dir:"*) ;;
-+ *) dllsearchpath="$dllsearchpath:$dir";;
- esac
- ;;
- esac
-+ continue
- ;;
-
- -l*)
-- if test "$arg" = "-lc"; then
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
-- # These systems don't actually have c library (as such)
-+ if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
-+ case $host in
-+ *-*-cygwin* | *-*-pw32* | *-*-beos*)
-+ # These systems don't actually have a C or math library (as such)
- continue
- ;;
-+ *-*-mingw* | *-*-os2*)
-+ # These systems don't actually have a C library (as such)
-+ test "X$arg" = "X-lc" && continue
-+ ;;
-+ *-*-openbsd* | *-*-freebsd*)
-+ # Do not include libc due to us having libc/libc_r.
-+ test "X$arg" = "X-lc" && continue
-+ ;;
- esac
-- elif test "$arg" = "-lm"; then
-- case "$host" in
-- *-*-cygwin* | *-*-beos*)
-- # These systems don't actually have math library (as such)
-+ elif test "X$arg" = "X-lc_r"; then
-+ case $host in
-+ *-*-openbsd* | *-*-freebsd*)
-+ # Do not include libc_r directly, use -pthread flag.
- continue
- ;;
- esac
- fi
- deplibs="$deplibs $arg"
-+ continue
- ;;
-
- -module)
-@@ -1096,6 +1087,25 @@
- continue
- ;;
-
-+ -no-fast-install)
-+ fast_install=no
-+ continue
-+ ;;
-+
-+ -no-install)
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ # The PATH hackery in wrapper scripts is required on Windows
-+ # in order for the loader to find any dlls it needs.
-+ $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
-+ $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
-+ fast_install=no
-+ ;;
-+ *) no_install=yes ;;
-+ esac
-+ continue
-+ ;;
-+
- -no-undefined)
- allow_undefined=no
- continue
-@@ -1121,7 +1131,7 @@
- -R*)
- dir=`$echo "X$arg" | $Xsed -e 's/^-R//'`
- # We need an absolute path.
-- case "$dir" in
-+ case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
-@@ -1136,11 +1146,11 @@
- ;;
-
- -static)
-- # If we have no pic_flag, then this is the same as -all-static.
-- if test -z "$pic_flag" && test -n "$link_static_flag"; then
-- compile_command="$compile_command $link_static_flag"
-- finalize_command="$finalize_command $link_static_flag"
-- fi
-+ # The effects of -static are defined in a previous loop.
-+ # We used to do the same as -all-static on platforms that
-+ # didn't have a PIC flag, but the assumption that the effects
-+ # would be equivalent was wrong. It would break on at least
-+ # Digital Unix and AIX.
- continue
- ;;
-
-@@ -1154,28 +1164,71 @@
- continue
- ;;
-
-+ -Wc,*)
-+ args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'`
-+ arg=
-+ save_ifs="$IFS"; IFS=','
-+ for flag in $args; do
-+ IFS="$save_ifs"
-+ case $flag in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ flag="\"$flag\""
-+ ;;
-+ esac
-+ arg="$arg $wl$flag"
-+ compiler_flags="$compiler_flags $flag"
-+ done
-+ IFS="$save_ifs"
-+ arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
-+ ;;
-+
-+ -Wl,*)
-+ args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
-+ arg=
-+ save_ifs="$IFS"; IFS=','
-+ for flag in $args; do
-+ IFS="$save_ifs"
-+ case $flag in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ flag="\"$flag\""
-+ ;;
-+ esac
-+ arg="$arg $wl$flag"
-+ compiler_flags="$compiler_flags $wl$flag"
-+ linker_flags="$linker_flags $flag"
-+ done
-+ IFS="$save_ifs"
-+ arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
-+ ;;
-+
-+ -Xcompiler)
-+ prev=xcompiler
-+ continue
-+ ;;
-+
-+ -Xlinker)
-+ prev=xlinker
-+ continue
-+ ;;
-+
- # Some other compiler flag.
- -* | +*)
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- ;;
-
-- *.o | *.obj | *.a | *.lib)
-- # A standard object.
-- objs="$objs $arg"
-- ;;
--
-- *.lo)
-- # A library object.
-+ *.lo | *.$objext)
-+ # A library or standard object.
- if test "$prev" = dlfiles; then
-- dlfiles="$dlfiles $arg"
-- if test "$build_libtool_libs" = yes && test "$dlopen" = yes; then
-+ # This file was specified with -dlopen.
-+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
-+ dlfiles="$dlfiles $arg"
- prev=
- continue
- else
-@@ -1188,357 +1241,917 @@
- # Preload the old-style object.
- dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"`
- prev=
-+ else
-+ case $arg in
-+ *.lo) libobjs="$libobjs $arg" ;;
-+ *) objs="$objs $arg" ;;
-+ esac
- fi
-- libobjs="$libobjs $arg"
-+ ;;
-+
-+ *.$libext)
-+ # An archive.
-+ deplibs="$deplibs $arg"
-+ old_deplibs="$old_deplibs $arg"
-+ continue
- ;;
-
- *.la)
- # A libtool-controlled library.
-
-- dlname=
-- libdir=
-- library_names=
-- old_library=
--
-- # Check to see that this really is a libtool archive.
-- if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ if test "$prev" = dlfiles; then
-+ # This library was specified with -dlopen.
-+ dlfiles="$dlfiles $arg"
-+ prev=
-+ elif test "$prev" = dlprefiles; then
-+ # The library was specified with -dlpreopen.
-+ dlprefiles="$dlprefiles $arg"
-+ prev=
- else
-- $echo "$modename: \`$arg' is not a valid libtool archive" 1>&2
-- exit 1
-+ deplibs="$deplibs $arg"
- fi
-+ continue
-+ ;;
-
-- # If the library was installed with an old release of libtool,
-- # it will not redefine variable installed.
-- installed=yes
--
-- # Read the .la file
-- # If there is no directory component, then add one.
-- case "$arg" in
-- */* | *\\*) . $arg ;;
-- *) . ./$arg ;;
-+ # Some other compiler argument.
-+ *)
-+ # Unknown arguments in both finalize_command and compile_command need
-+ # to be aesthetically quoted because they are evaled later.
-+ arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
- esac
-+ ;;
-+ esac # arg
-
-- # Get the name of the library we link against.
-- linklib=
-- for l in $old_library $library_names; do
-- linklib="$l"
-- done
--
-- if test -z "$linklib"; then
-- $echo "$modename: cannot find name of link library for \`$arg'" 1>&2
-- exit 1
-- fi
--
-- # Find the relevant object directory and library name.
-- name=`$echo "X$arg" | $Xsed -e 's%^.*/%%' -e 's/\.la$//' -e 's/^lib//'`
--
-- if test "X$installed" = Xyes; then
-- dir="$libdir"
-- else
-- dir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
-- if test "X$dir" = "X$arg"; then
-- dir="$objdir"
-- else
-- dir="$dir/$objdir"
-- fi
-- fi
-+ # Now actually substitute the argument into the commands.
-+ if test -n "$arg"; then
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ fi
-+ done # argument parsing loop
-
-- if test -n "$dependency_libs"; then
-- # Extract -R and -L from dependency_libs
-- temp_deplibs=
-- for deplib in $dependency_libs; do
-- case "$deplib" in
-- -R*) temp_xrpath=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
-- case " $rpath $xrpath " in
-- *" $temp_xrpath "*) ;;
-- *) xrpath="$xrpath $temp_xrpath";;
-- esac;;
-- -L*) case "$compile_command $temp_deplibs " in
-- *" $deplib "*) ;;
-- *) temp_deplibs="$temp_deplibs $deplib";;
-- esac
-- temp_dir=`$echo "X$deplib" | $Xsed -e 's/^-L//'`
-- case " $lib_search_path " in
-- *" $temp_dir "*) ;;
-- *) lib_search_path="$lib_search_path $temp_dir";;
-- esac
-- ;;
-- *) temp_deplibs="$temp_deplibs $deplib";;
-- esac
-- done
-- dependency_libs="$temp_deplibs"
-- fi
-+ if test -n "$prev"; then
-+ $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-
-- if test -z "$libdir"; then
-- # It is a libtool convenience library, so add in its objects.
-- convenience="$convenience $dir/$old_library"
-- old_convenience="$old_convenience $dir/$old_library"
-- deplibs="$deplibs$dependency_libs"
-- compile_command="$compile_command $dir/$old_library$dependency_libs"
-- finalize_command="$finalize_command $dir/$old_library$dependency_libs"
-- continue
-- fi
-+ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
-+ eval arg=\"$export_dynamic_flag_spec\"
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ fi
-
-- # This library was specified with -dlopen.
-- if test "$prev" = dlfiles; then
-- dlfiles="$dlfiles $arg"
-- if test -z "$dlname" || test "$dlopen" != yes || test "$build_libtool_libs" = no; then
-- # If there is no dlname, no dlopen support or we're linking statically,
-- # we need to preload.
-- prev=dlprefiles
-- else
-- # We should not create a dependency on this library, but we
-- # may need any libraries it requires.
-- compile_command="$compile_command$dependency_libs"
-- finalize_command="$finalize_command$dependency_libs"
-- prev=
-- continue
-- fi
-- fi
-+ # calculate the name of the file, without its directory
-+ outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
-+ libobjs_save="$libobjs"
-
-- # The library was specified with -dlpreopen.
-- if test "$prev" = dlprefiles; then
-- # Prefer using a static library (so that no silly _DYNAMIC symbols
-- # are required to link).
-- if test -n "$old_library"; then
-- dlprefiles="$dlprefiles $dir/$old_library"
-- else
-- dlprefiles="$dlprefiles $dir/$linklib"
-- fi
-- prev=
-- fi
-+ if test -n "$shlibpath_var"; then
-+ # get the directories listed in $shlibpath_var
-+ eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
-+ else
-+ shlib_search_path=
-+ fi
-+ eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
-+ eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
-
-- if test -n "$library_names" &&
-- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
-- link_against_libtool_libs="$link_against_libtool_libs $arg"
-- if test -n "$shlibpath_var"; then
-- # Make sure the rpath contains only unique directories.
-- case "$temp_rpath " in
-- *" $dir "*) ;;
-- *) temp_rpath="$temp_rpath $dir" ;;
-- esac
-- fi
-+ output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
-+ if test "X$output_objdir" = "X$output"; then
-+ output_objdir="$objdir"
-+ else
-+ output_objdir="$output_objdir/$objdir"
-+ fi
-+ # Create the object directory.
-+ if test ! -d $output_objdir; then
-+ $show "$mkdir $output_objdir"
-+ $run $mkdir $output_objdir
-+ status=$?
-+ if test $status -ne 0 && test ! -d $output_objdir; then
-+ exit $status
-+ fi
-+ fi
-
-- # We need an absolute path.
-- case "$dir" in
-- [\\/] | [A-Za-z]:[\\/]*) absdir="$dir" ;;
-- *)
-- absdir=`cd "$dir" && pwd`
-- if test -z "$absdir"; then
-- $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
-- $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
-- absdir="$dir"
-- fi
-- ;;
-- esac
--
-- # This is the magic to use -rpath.
-- # Skip directories that are in the system default run-time
-- # search path, unless they have been requested with -R.
-- case " $sys_lib_dlsearch_path " in
-- *" $absdir "*) ;;
-- *)
-- case "$compile_rpath " in
-- *" $absdir "*) ;;
-- *) compile_rpath="$compile_rpath $absdir"
-- esac
-- ;;
-- esac
-+ # Determine the type of output
-+ case $output in
-+ "")
-+ $echo "$modename: you must specify an output file" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ ;;
-+ *.$libext) linkmode=oldlib ;;
-+ *.lo | *.$objext) linkmode=obj ;;
-+ *.la) linkmode=lib ;;
-+ *) linkmode=prog ;; # Anything else should be a program.
-+ esac
-
-- case " $sys_lib_dlsearch_path " in
-- *" $libdir "*) ;;
-+ specialdeplibs=
-+ libs=
-+ # Find all interdependent deplibs by searching for libraries
-+ # that are linked more than once (e.g. -la -lb -la)
-+ for deplib in $deplibs; do
-+ if test "X$duplicate_deps" = "Xyes" ; then
-+ case "$libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ fi
-+ libs="$libs $deplib"
-+ done
-+ deplibs=
-+ newdependency_libs=
-+ newlib_search_path=
-+ need_relink=no # whether we're linking any uninstalled libtool libraries
-+ notinst_deplibs= # not-installed libtool libraries
-+ notinst_path= # paths that contain not-installed libtool libraries
-+ case $linkmode in
-+ lib)
-+ passes="conv link"
-+ for file in $dlfiles $dlprefiles; do
-+ case $file in
-+ *.la) ;;
- *)
-- case "$finalize_rpath " in
-- *" $libdir "*) ;;
-- *) finalize_rpath="$finalize_rpath $libdir"
-- esac
-+ $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
-+ exit 1
- ;;
- esac
--
-- lib_linked=yes
-- case "$hardcode_action" in
-- immediate | unsupported)
-- if test "$hardcode_direct" = no; then
-- compile_command="$compile_command $dir/$linklib"
-- deplibs="$deplibs $dir/$linklib"
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2*)
-- dllsearchdir=`cd "$dir" && pwd || echo "$dir"`
-- if test -n "$dllsearchpath"; then
-- dllsearchpath="$dllsearchpath:$dllsearchdir"
-- else
-- dllsearchpath="$dllsearchdir"
-- fi
-- ;;
-- esac
-- elif test "$hardcode_minus_L" = no; then
-- case "$host" in
-- *-*-sunos*)
-- compile_shlibpath="$compile_shlibpath$dir:"
-- ;;
-- esac
-- case "$compile_command " in
-- *" -L$dir "*) ;;
-- *) compile_command="$compile_command -L$dir";;
-- esac
-- compile_command="$compile_command -l$name"
-- deplibs="$deplibs -L$dir -l$name"
-- elif test "$hardcode_shlibpath_var" = no; then
-- case ":$compile_shlibpath:" in
-- *":$dir:"*) ;;
-- *) compile_shlibpath="$compile_shlibpath$dir:";;
-- esac
-- compile_command="$compile_command -l$name"
-- deplibs="$deplibs -l$name"
-+ done
-+ ;;
-+ prog)
-+ compile_deplibs=
-+ finalize_deplibs=
-+ alldeplibs=no
-+ newdlfiles=
-+ newdlprefiles=
-+ passes="conv scan dlopen dlpreopen link"
-+ ;;
-+ *) passes="conv"
-+ ;;
-+ esac
-+ for pass in $passes; do
-+ if test $linkmode = prog; then
-+ # Determine which files to process
-+ case $pass in
-+ dlopen)
-+ libs="$dlfiles"
-+ save_deplibs="$deplibs" # Collect dlpreopened libraries
-+ deplibs=
-+ ;;
-+ dlpreopen) libs="$dlprefiles" ;;
-+ link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
-+ esac
-+ fi
-+ for deplib in $libs; do
-+ lib=
-+ found=no
-+ case $deplib in
-+ -l*)
-+ if test $linkmode = oldlib && test $linkmode = obj; then
-+ $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2
-+ continue
-+ fi
-+ if test $pass = conv; then
-+ deplibs="$deplib $deplibs"
-+ continue
-+ fi
-+ name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
-+ for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
-+ # Search the libtool library
-+ lib="$searchdir/lib${name}.la"
-+ if test -f "$lib"; then
-+ found=yes
-+ break
-+ fi
-+ done
-+ if test "$found" != yes; then
-+ # deplib doesn't seem to be a libtool library
-+ if test "$linkmode,$pass" = "prog,link"; then
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
- else
-- lib_linked=no
-+ deplibs="$deplib $deplibs"
-+ test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs"
- fi
-+ continue
-+ fi
-+ ;; # -l
-+ -L*)
-+ case $linkmode in
-+ lib)
-+ deplibs="$deplib $deplibs"
-+ test $pass = conv && continue
-+ newdependency_libs="$deplib $newdependency_libs"
-+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- ;;
--
-- relink)
-- if test "$hardcode_direct" = yes; then
-- compile_command="$compile_command $absdir/$linklib"
-- deplibs="$deplibs $absdir/$linklib"
-- elif test "$hardcode_minus_L" = yes; then
-- case "$compile_command " in
-- *" -L$absdir "*) ;;
-- *) compile_command="$compile_command -L$absdir";;
-- esac
-- compile_command="$compile_command -l$name"
-- deplibs="$deplibs -L$absdir -l$name"
-- elif test "$hardcode_shlibpath_var" = yes; then
-- case ":$compile_shlibpath:" in
-- *":$absdir:"*) ;;
-- *) compile_shlibpath="$compile_shlibpath$absdir:";;
-- esac
-- compile_command="$compile_command -l$name"
-- deplibs="$deplibs -l$name"
-+ prog)
-+ if test $pass = conv; then
-+ deplibs="$deplib $deplibs"
-+ continue
-+ fi
-+ if test $pass = scan; then
-+ deplibs="$deplib $deplibs"
-+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- else
-- lib_linked=no
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
- fi
- ;;
--
- *)
-- lib_linked=no
-+ $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2
- ;;
-- esac
-+ esac # linkmode
-+ continue
-+ ;; # -L
-+ -R*)
-+ if test $pass = link; then
-+ dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
-+ # Make sure the xrpath contains only unique directories.
-+ case "$xrpath " in
-+ *" $dir "*) ;;
-+ *) xrpath="$xrpath $dir" ;;
-+ esac
-+ fi
-+ deplibs="$deplib $deplibs"
-+ continue
-+ ;;
-+ *.la) lib="$deplib" ;;
-+ *.$libext)
-+ if test $pass = conv; then
-+ deplibs="$deplib $deplibs"
-+ continue
-+ fi
-+ case $linkmode in
-+ lib)
-+ if test "$deplibs_check_method" != pass_all; then
-+ echo
-+ echo "*** Warning: Trying to link with static lib archive $deplib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have"
-+ echo "*** because the file extensions .$libext of this argument makes me believe"
-+ echo "*** that it is just a static archive that I should not used here."
-+ else
-+ echo
-+ echo "*** Warning: Linking the shared library $output against the"
-+ echo "*** static library $deplib is not portable!"
-+ deplibs="$deplib $deplibs"
-+ fi
-+ continue
-+ ;;
-+ prog)
-+ if test $pass != link; then
-+ deplibs="$deplib $deplibs"
-+ else
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
-+ fi
-+ continue
-+ ;;
-+ esac # linkmode
-+ ;; # *.$libext
-+ *.lo | *.$objext)
-+ if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
-+ # If there is no dlopen support or we're linking statically,
-+ # we need to preload.
-+ newdlprefiles="$newdlprefiles $deplib"
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
-+ else
-+ newdlfiles="$newdlfiles $deplib"
-+ fi
-+ continue
-+ ;;
-+ %DEPLIBS%)
-+ alldeplibs=yes
-+ continue
-+ ;;
-+ esac # case $deplib
-+ if test $found = yes || test -f "$lib"; then :
-+ else
-+ $echo "$modename: cannot find the library \`$lib'" 1>&2
-+ exit 1
-+ fi
-+
-+ # Check to see that this really is a libtool archive.
-+ if (${SED} -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ else
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+
-+ ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
-+ test "X$ladir" = "X$lib" && ladir="."
-+
-+ dlname=
-+ dlopen=
-+ dlpreopen=
-+ libdir=
-+ library_names=
-+ old_library=
-+ # If the library was installed with an old release of libtool,
-+ # it will not redefine variable installed.
-+ installed=yes
-+
-+ # Read the .la file
-+ case $lib in
-+ */* | *\\*) . $lib ;;
-+ *) . ./$lib ;;
-+ esac
-+
-+ if test "$linkmode,$pass" = "lib,link" ||
-+ test "$linkmode,$pass" = "prog,scan" ||
-+ { test $linkmode = oldlib && test $linkmode = obj; }; then
-+ # Add dl[pre]opened files of deplib
-+ test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
-+ test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
-+ fi
-
-- if test "$lib_linked" != yes; then
-- $echo "$modename: configuration error: unsupported hardcode properties"
-+ if test $pass = conv; then
-+ # Only check for convenience libraries
-+ deplibs="$lib $deplibs"
-+ if test -z "$libdir"; then
-+ if test -z "$old_library"; then
-+ $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
-+ exit 1
-+ fi
-+ # It is a libtool convenience library, so add in its objects.
-+ convenience="$convenience $ladir/$objdir/$old_library"
-+ old_convenience="$old_convenience $ladir/$objdir/$old_library"
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ deplibs="$deplib $deplibs"
-+ if test "X$duplicate_deps" = "Xyes" ; then
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ fi
-+ tmp_libs="$tmp_libs $deplib"
-+ done
-+ elif test $linkmode != prog && test $linkmode != lib; then
-+ $echo "$modename: \`$lib' is not a convenience library" 1>&2
- exit 1
- fi
-+ continue
-+ fi # $pass = conv
-
-- # Finalize command for both is simple: just hardcode it.
-- if test "$hardcode_direct" = yes; then
-- finalize_command="$finalize_command $libdir/$linklib"
-- elif test "$hardcode_minus_L" = yes; then
-- case "$finalize_command " in
-- *" -L$libdir "*) ;;
-- *) finalize_command="$finalize_command -L$libdir";;
-- esac
-- finalize_command="$finalize_command -l$name"
-- elif test "$hardcode_shlibpath_var" = yes; then
-- case ":$finalize_shlibpath:" in
-- *":$libdir:"*) ;;
-- *) finalize_shlibpath="$finalize_shlibpath$libdir:";;
-- esac
-- finalize_command="$finalize_command -l$name"
-+ # Get the name of the library we link against.
-+ linklib=
-+ for l in $old_library $library_names; do
-+ linklib="$l"
-+ done
-+ if test -z "$linklib"; then
-+ $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
-+ exit 1
-+ fi
-+
-+ # This library was specified with -dlopen.
-+ if test $pass = dlopen; then
-+ if test -z "$libdir"; then
-+ $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
-+ exit 1
-+ fi
-+ if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
-+ # If there is no dlname, no dlopen support or we're linking
-+ # statically, we need to preload.
-+ dlprefiles="$dlprefiles $lib"
- else
-- # We cannot seem to hardcode it, guess we'll fake it.
-- case "$finalize_command " in
-- *" -L$dir "*) ;;
-- *) finalize_command="$finalize_command -L$libdir";;
-- esac
-- finalize_command="$finalize_command -l$name"
-+ newdlfiles="$newdlfiles $lib"
-+ fi
-+ continue
-+ fi # $pass = dlopen
-+
-+ # We need an absolute path.
-+ case $ladir in
-+ [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
-+ *)
-+ abs_ladir=`cd "$ladir" && pwd`
-+ if test -z "$abs_ladir"; then
-+ $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2
-+ $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
-+ abs_ladir="$ladir"
-+ fi
-+ ;;
-+ esac
-+ laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-+
-+ # Find the relevant object directory and library name.
-+ if test "X$installed" = Xyes; then
-+ if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
-+ $echo "$modename: warning: library \`$lib' was moved." 1>&2
-+ dir="$ladir"
-+ absdir="$abs_ladir"
-+ libdir="$abs_ladir"
-+ else
-+ dir="$libdir"
-+ absdir="$libdir"
- fi
- else
-- # Transform directly to old archives if we don't build new libraries.
-- if test -n "$pic_flag" && test -z "$old_library"; then
-- $echo "$modename: cannot find static library for \`$arg'" 1>&2
-+ dir="$ladir/$objdir"
-+ absdir="$abs_ladir/$objdir"
-+ # Remove this search path later
-+ notinst_path="$notinst_path $abs_ladir"
-+ fi # $installed = yes
-+ name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
-+
-+ # This library was specified with -dlpreopen.
-+ if test $pass = dlpreopen; then
-+ if test -z "$libdir"; then
-+ $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
- exit 1
- fi
-+ # Prefer using a static library (so that no silly _DYNAMIC symbols
-+ # are required to link).
-+ if test -n "$old_library"; then
-+ newdlprefiles="$newdlprefiles $dir/$old_library"
-+ # Otherwise, use the dlname, so that lt_dlopen finds it.
-+ elif test -n "$dlname"; then
-+ newdlprefiles="$newdlprefiles $dir/$dlname"
-+ else
-+ newdlprefiles="$newdlprefiles $dir/$linklib"
-+ fi
-+ fi # $pass = dlpreopen
-
-- # Here we assume that one of hardcode_direct or hardcode_minus_L
-- # is not unsupported. This is valid on all known static and
-- # shared platforms.
-- if test "$hardcode_direct" != unsupported; then
-- test -n "$old_library" && linklib="$old_library"
-- compile_command="$compile_command $dir/$linklib"
-- finalize_command="$finalize_command $dir/$linklib"
-+ if test -z "$libdir"; then
-+ # Link the convenience library
-+ if test $linkmode = lib; then
-+ deplibs="$dir/$old_library $deplibs"
-+ elif test "$linkmode,$pass" = "prog,link"; then
-+ compile_deplibs="$dir/$old_library $compile_deplibs"
-+ finalize_deplibs="$dir/$old_library $finalize_deplibs"
- else
-- case "$compile_command " in
-- *" -L$dir "*) ;;
-- *) compile_command="$compile_command -L$dir";;
-+ deplibs="$lib $deplibs"
-+ fi
-+ continue
-+ fi
-+
-+ if test $linkmode = prog && test $pass != link; then
-+ newlib_search_path="$newlib_search_path $ladir"
-+ deplibs="$lib $deplibs"
-+
-+ linkalldeplibs=no
-+ if test "$link_all_deplibs" != no || test -z "$library_names" ||
-+ test "$build_libtool_libs" = no; then
-+ linkalldeplibs=yes
-+ fi
-+
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ case $deplib in
-+ -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
- esac
-- compile_command="$compile_command -l$name"
-- case "$finalize_command " in
-- *" -L$dir "*) ;;
-- *) finalize_command="$finalize_command -L$dir";;
-+ # Need to link against all dependency_libs?
-+ if test $linkalldeplibs = yes; then
-+ deplibs="$deplib $deplibs"
-+ else
-+ # Need to hardcode shared library paths
-+ # or/and link against static libraries
-+ newdependency_libs="$deplib $newdependency_libs"
-+ fi
-+ if test "X$duplicate_deps" = "Xyes" ; then
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ fi
-+ tmp_libs="$tmp_libs $deplib"
-+ done # for deplib
-+ continue
-+ fi # $linkmode = prog...
-+
-+ link_static=no # Whether the deplib will be linked statically
-+ if test -n "$library_names" &&
-+ { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
-+ # Link against this shared library
-+
-+ if test "$linkmode,$pass" = "prog,link" ||
-+ { test $linkmode = lib && test $hardcode_into_libs = yes; }; then
-+ # Hardcode the library path.
-+ # Skip directories that are in the system default run-time
-+ # search path.
-+ case " $sys_lib_dlsearch_path " in
-+ *" $absdir "*) ;;
-+ *)
-+ case "$compile_rpath " in
-+ *" $absdir "*) ;;
-+ *) compile_rpath="$compile_rpath $absdir"
-+ esac
-+ ;;
- esac
-- finalize_command="$finalize_command -l$name"
-+ case " $sys_lib_dlsearch_path " in
-+ *" $libdir "*) ;;
-+ *)
-+ case "$finalize_rpath " in
-+ *" $libdir "*) ;;
-+ *) finalize_rpath="$finalize_rpath $libdir"
-+ esac
-+ ;;
-+ esac
-+ if test $linkmode = prog; then
-+ # We need to hardcode the library path
-+ if test -n "$shlibpath_var"; then
-+ # Make sure the rpath contains only unique directories.
-+ case "$temp_rpath " in
-+ *" $dir "*) ;;
-+ *" $absdir "*) ;;
-+ *) temp_rpath="$temp_rpath $dir" ;;
-+ esac
-+ fi
-+ fi
-+ fi # $linkmode,$pass = prog,link...
-+
-+ if test "$alldeplibs" = yes &&
-+ { test "$deplibs_check_method" = pass_all ||
-+ { test "$build_libtool_libs" = yes &&
-+ test -n "$library_names"; }; }; then
-+ # We only need to search for static libraries
-+ continue
- fi
-- fi
-
-- # Add in any libraries that this one depends upon.
-- compile_command="$compile_command$dependency_libs"
-- finalize_command="$finalize_command$dependency_libs"
-- continue
-- ;;
-+ if test "$installed" = no; then
-+ notinst_deplibs="$notinst_deplibs $lib"
-+ need_relink=yes
-+ fi
-+
-+ if test -n "$old_archive_from_expsyms_cmds"; then
-+ # figure out the soname
-+ set dummy $library_names
-+ realname="$2"
-+ shift; shift
-+ libname=`eval \\$echo \"$libname_spec\"`
-+ # use dlname if we got it. it's perfectly good, no?
-+ if test -n "$dlname"; then
-+ soname="$dlname"
-+ elif test -n "$soname_spec"; then
-+ # bleh windows
-+ case $host in
-+ *cygwin*)
-+ major=`expr $current - $age`
-+ versuffix="-$major"
-+ ;;
-+ esac
-+ eval soname=\"$soname_spec\"
-+ else
-+ soname="$realname"
-+ fi
-
-- # Some other compiler argument.
-- *)
-- # Unknown arguments in both finalize_command and compile_command need
-- # to be aesthetically quoted because they are evaled later.
-- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-- arg="\"$arg\""
-- ;;
-- esac
-- ;;
-- esac
-+ # Make a new name for the extract_expsyms_cmds to use
-+ soroot="$soname"
-+ soname=`echo $soroot | ${SED} -e 's/^.*\///'`
-+ newlib="libimp-`echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a"
-
-- # Now actually substitute the argument into the commands.
-- if test -n "$arg"; then
-- compile_command="$compile_command $arg"
-- finalize_command="$finalize_command $arg"
-- fi
-- done
-+ # If the library has no export list, then create one now
-+ if test -f "$output_objdir/$soname-def"; then :
-+ else
-+ $show "extracting exported symbol list from \`$soname'"
-+ save_ifs="$IFS"; IFS='~'
-+ eval cmds=\"$extract_expsyms_cmds\"
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ fi
-
-- if test -n "$prev"; then
-- $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
-- $echo "$help" 1>&2
-- exit 1
-- fi
-+ # Create $newlib
-+ if test -f "$output_objdir/$newlib"; then :; else
-+ $show "generating import library for \`$soname'"
-+ save_ifs="$IFS"; IFS='~'
-+ eval cmds=\"$old_archive_from_expsyms_cmds\"
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ fi
-+ # make sure the library variables are pointing to the new library
-+ dir=$output_objdir
-+ linklib=$newlib
-+ fi # test -n $old_archive_from_expsyms_cmds
-+
-+ if test $linkmode = prog || test "$mode" != relink; then
-+ add_shlibpath=
-+ add_dir=
-+ add=
-+ lib_linked=yes
-+ case $hardcode_action in
-+ immediate | unsupported)
-+ if test "$hardcode_direct" = no; then
-+ add="$dir/$linklib"
-+ elif test "$hardcode_minus_L" = no; then
-+ case $host in
-+ *-*-sunos*) add_shlibpath="$dir" ;;
-+ esac
-+ add_dir="-L$dir"
-+ add="-l$name"
-+ elif test "$hardcode_shlibpath_var" = no; then
-+ add_shlibpath="$dir"
-+ add="-l$name"
-+ else
-+ lib_linked=no
-+ fi
-+ ;;
-+ relink)
-+ if test "$hardcode_direct" = yes; then
-+ add="$dir/$linklib"
-+ elif test "$hardcode_minus_L" = yes; then
-+ add_dir="-L$dir"
-+ # Try looking first in the location we're being installed to.
-+ if test -n "$inst_prefix_dir"; then
-+ case "$libdir" in
-+ [\/]*)
-+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
-+ ;;
-+ esac
-+ fi
-+ add="-l$name"
-+ elif test "$hardcode_shlibpath_var" = yes; then
-+ add_shlibpath="$dir"
-+ add="-l$name"
-+ else
-+ lib_linked=no
-+ fi
-+ ;;
-+ *) lib_linked=no ;;
-+ esac
-
-- if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
-- eval arg=\"$export_dynamic_flag_spec\"
-- compile_command="$compile_command $arg"
-- finalize_command="$finalize_command $arg"
-- fi
-+ if test "$lib_linked" != yes; then
-+ $echo "$modename: configuration error: unsupported hardcode properties"
-+ exit 1
-+ fi
-
-- oldlibs=
-- # calculate the name of the file, without its directory
-- outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
-- libobjs_save="$libobjs"
-+ if test -n "$add_shlibpath"; then
-+ case :$compile_shlibpath: in
-+ *":$add_shlibpath:"*) ;;
-+ *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
-+ esac
-+ fi
-+ if test $linkmode = prog; then
-+ test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
-+ test -n "$add" && compile_deplibs="$add $compile_deplibs"
-+ else
-+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
-+ test -n "$add" && deplibs="$add $deplibs"
-+ if test "$hardcode_direct" != yes && \
-+ test "$hardcode_minus_L" != yes && \
-+ test "$hardcode_shlibpath_var" = yes; then
-+ case :$finalize_shlibpath: in
-+ *":$libdir:"*) ;;
-+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
-+ esac
-+ fi
-+ fi
-+ fi
-
-- case "$output" in
-- "")
-- $echo "$modename: you must specify an output file" 1>&2
-- $echo "$help" 1>&2
-- exit 1
-- ;;
-+ if test $linkmode = prog || test "$mode" = relink; then
-+ add_shlibpath=
-+ add_dir=
-+ add=
-+ # Finalize command for both is simple: just hardcode it.
-+ if test "$hardcode_direct" = yes; then
-+ add="$libdir/$linklib"
-+ elif test "$hardcode_minus_L" = yes; then
-+ add_dir="-L$libdir"
-+ add="-l$name"
-+ elif test "$hardcode_shlibpath_var" = yes; then
-+ case :$finalize_shlibpath: in
-+ *":$libdir:"*) ;;
-+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
-+ esac
-+ add="-l$name"
-+ else
-+ # We cannot seem to hardcode it, guess we'll fake it.
-+ add_dir="-L$libdir"
-+ # Try looking first in the location we're being installed to.
-+ if test -n "$inst_prefix_dir"; then
-+ case "$libdir" in
-+ [\/]*)
-+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
-+ ;;
-+ esac
-+ fi
-+ add="-l$name"
-+ fi
-
-- *.a | *.lib)
-- if test -n "$link_against_libtool_libs"; then
-- $echo "$modename: error: cannot link libtool libraries into archives" 1>&2
-- exit 1
-+ if test $linkmode = prog; then
-+ test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
-+ test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
-+ else
-+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
-+ test -n "$add" && deplibs="$add $deplibs"
-+ fi
-+ fi
-+ elif test $linkmode = prog; then
-+ if test "$alldeplibs" = yes &&
-+ { test "$deplibs_check_method" = pass_all ||
-+ { test "$build_libtool_libs" = yes &&
-+ test -n "$library_names"; }; }; then
-+ # We only need to search for static libraries
-+ continue
-+ fi
-+
-+ # Try to link the static library
-+ # Here we assume that one of hardcode_direct or hardcode_minus_L
-+ # is not unsupported. This is valid on all known static and
-+ # shared platforms.
-+ if test "$hardcode_direct" != unsupported; then
-+ test -n "$old_library" && linklib="$old_library"
-+ compile_deplibs="$dir/$linklib $compile_deplibs"
-+ finalize_deplibs="$dir/$linklib $finalize_deplibs"
-+ else
-+ compile_deplibs="-l$name -L$dir $compile_deplibs"
-+ finalize_deplibs="-l$name -L$dir $finalize_deplibs"
-+ fi
-+ elif test "$build_libtool_libs" = yes; then
-+ # Not a shared library
-+ if test "$deplibs_check_method" != pass_all; then
-+ # We're trying link a shared library against a static one
-+ # but the system doesn't support it.
-+
-+ # Just print a warning and add the library to dependency_libs so
-+ # that the program can be linked against the static library.
-+ echo
-+ echo "*** Warning: This system can not link to static lib archive $lib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have."
-+ if test "$module" = yes; then
-+ echo "*** But as you try to build a module library, libtool will still create "
-+ echo "*** a static module, that should work as long as the dlopening application"
-+ echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
-+ if test -z "$global_symbol_pipe"; then
-+ echo
-+ echo "*** However, this would only work if libtool was able to extract symbol"
-+ echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
-+ echo "*** not find such a program. So, this module is probably useless."
-+ echo "*** \`nm' from GNU binutils and a full rebuild may help."
-+ fi
-+ if test "$build_old_libs" = no; then
-+ build_libtool_libs=module
-+ build_old_libs=yes
-+ else
-+ build_libtool_libs=no
-+ fi
-+ fi
-+ else
-+ convenience="$convenience $dir/$old_library"
-+ old_convenience="$old_convenience $dir/$old_library"
-+ deplibs="$dir/$old_library $deplibs"
-+ link_static=yes
-+ fi
-+ fi # link shared/static library?
-+
-+ if test $linkmode = lib; then
-+ if test -n "$dependency_libs" &&
-+ { test $hardcode_into_libs != yes || test $build_old_libs = yes ||
-+ test $link_static = yes; }; then
-+ # Extract -R from dependency_libs
-+ temp_deplibs=
-+ for libdir in $dependency_libs; do
-+ case $libdir in
-+ -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`
-+ case " $xrpath " in
-+ *" $temp_xrpath "*) ;;
-+ *) xrpath="$xrpath $temp_xrpath";;
-+ esac;;
-+ *) temp_deplibs="$temp_deplibs $libdir";;
-+ esac
-+ done
-+ dependency_libs="$temp_deplibs"
-+ fi
-+
-+ newlib_search_path="$newlib_search_path $absdir"
-+ # Link against this library
-+ test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
-+ # ... and its dependency_libs
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ newdependency_libs="$deplib $newdependency_libs"
-+ if test "X$duplicate_deps" = "Xyes" ; then
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ fi
-+ tmp_libs="$tmp_libs $deplib"
-+ done
-+
-+ if test $link_all_deplibs != no; then
-+ # Add the search paths of all dependency libraries
-+ for deplib in $dependency_libs; do
-+ case $deplib in
-+ -L*) path="$deplib" ;;
-+ *.la)
-+ dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
-+ test "X$dir" = "X$deplib" && dir="."
-+ # We need an absolute path.
-+ case $dir in
-+ [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
-+ *)
-+ absdir=`cd "$dir" && pwd`
-+ if test -z "$absdir"; then
-+ $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
-+ absdir="$dir"
-+ fi
-+ ;;
-+ esac
-+ if grep "^installed=no" $deplib > /dev/null; then
-+ path="-L$absdir/$objdir"
-+ else
-+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ if test "$absdir" != "$libdir"; then
-+ $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
-+ fi
-+ path="-L$absdir"
-+ fi
-+ ;;
-+ *) continue ;;
-+ esac
-+ case " $deplibs " in
-+ *" $path "*) ;;
-+ *) deplibs="$deplibs $path" ;;
-+ esac
-+ done
-+ fi # link_all_deplibs != no
-+ fi # linkmode = lib
-+ done # for deplib in $libs
-+ if test $pass = dlpreopen; then
-+ # Link the dlpreopened libraries before other libraries
-+ for deplib in $save_deplibs; do
-+ deplibs="$deplib $deplibs"
-+ done
- fi
-+ if test $pass != dlopen; then
-+ test $pass != scan && dependency_libs="$newdependency_libs"
-+ if test $pass != conv; then
-+ # Make sure lib_search_path contains only unique directories.
-+ lib_search_path=
-+ for dir in $newlib_search_path; do
-+ case "$lib_search_path " in
-+ *" $dir "*) ;;
-+ *) lib_search_path="$lib_search_path $dir" ;;
-+ esac
-+ done
-+ newlib_search_path=
-+ fi
-
-- if test -n "$deplibs"; then
-- $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2
-+ if test "$linkmode,$pass" != "prog,link"; then
-+ vars="deplibs"
-+ else
-+ vars="compile_deplibs finalize_deplibs"
-+ fi
-+ for var in $vars dependency_libs; do
-+ # Add libraries to $var in reverse order
-+ eval tmp_libs=\"\$$var\"
-+ new_libs=
-+ for deplib in $tmp_libs; do
-+ case $deplib in
-+ -L*) new_libs="$deplib $new_libs" ;;
-+ *)
-+ case " $specialdeplibs " in
-+ *" $deplib "*) new_libs="$deplib $new_libs" ;;
-+ *)
-+ case " $new_libs " in
-+ *" $deplib "*) ;;
-+ *) new_libs="$deplib $new_libs" ;;
-+ esac
-+ ;;
-+ esac
-+ ;;
-+ esac
-+ done
-+ tmp_libs=
-+ for deplib in $new_libs; do
-+ case $deplib in
-+ -L*)
-+ case " $tmp_libs " in
-+ *" $deplib "*) ;;
-+ *) tmp_libs="$tmp_libs $deplib" ;;
-+ esac
-+ ;;
-+ *) tmp_libs="$tmp_libs $deplib" ;;
-+ esac
-+ done
-+ eval $var=\"$tmp_libs\"
-+ done # for var
- fi
-+ if test "$pass" = "conv" &&
-+ { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then
-+ libs="$deplibs" # reset libs
-+ deplibs=
-+ fi
-+ done # for pass
-+ if test $linkmode = prog; then
-+ dlfiles="$newdlfiles"
-+ dlprefiles="$newdlprefiles"
-+ fi
-
-+ case $linkmode in
-+ oldlib)
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
- fi
-@@ -1566,11 +2179,12 @@
- # Now set the variables for building old libraries.
- build_libtool_libs=no
- oldlibs="$output"
-+ objs="$objs$old_deplibs"
- ;;
-
-- *.la)
-+ lib)
- # Make sure we only generate libraries of the form `libNAME.la'.
-- case "$outputname" in
-+ case $outputname in
- lib*)
- name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
- eval libname=\"$libname_spec\"
-@@ -1591,26 +2205,20 @@
- ;;
- esac
-
-- output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
-- if test "X$output_objdir" = "X$output"; then
-- output_objdir="$objdir"
-- else
-- output_objdir="$output_objdir/$objdir"
-- fi
--
- if test -n "$objs"; then
-- $echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
-- exit 1
-- fi
--
-- # How the heck are we supposed to write a wrapper for a shared library?
-- if test -n "$link_against_libtool_libs"; then
-- $echo "$modename: error: cannot link shared libraries into libtool libraries" 1>&2
-- exit 1
-+ if test "$deplibs_check_method" != pass_all; then
-+ $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
-+ exit 1
-+ else
-+ echo
-+ echo "*** Warning: Linking the shared library $output against the non-libtool"
-+ echo "*** objects $objs is not portable!"
-+ libobjs="$libobjs $objs"
-+ fi
- fi
-
-- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-- $echo "$modename: warning: \`-dlopen' is ignored for libtool libraries" 1>&2
-+ if test "$dlself" != no; then
-+ $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2
- fi
-
- set dummy $rpath
-@@ -1628,7 +2236,6 @@
- build_libtool_libs=convenience
- build_old_libs=yes
- fi
-- dependency_libs="$deplibs"
-
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2
-@@ -1640,7 +2247,7 @@
- else
-
- # Parse the version information argument.
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS=':'
-+ save_ifs="$IFS"; IFS=':'
- set dummy $vinfo 0 0 0
- IFS="$save_ifs"
-
-@@ -1655,8 +2262,8 @@
- age="$4"
-
- # Check that each of the things are valid numbers.
-- case "$current" in
-- 0 | [1-9] | [1-9][0-9]*) ;;
-+ case $current in
-+ 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
- *)
- $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-@@ -1664,8 +2271,8 @@
- ;;
- esac
-
-- case "$revision" in
-- 0 | [1-9] | [1-9][0-9]*) ;;
-+ case $revision in
-+ 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
- *)
- $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-@@ -1673,8 +2280,8 @@
- ;;
- esac
-
-- case "$age" in
-- 0 | [1-9] | [1-9][0-9]*) ;;
-+ case $age in
-+ 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
- *)
- $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-@@ -1692,21 +2299,49 @@
- major=
- versuffix=
- verstring=
-- case "$version_type" in
-+ case $version_type in
- none) ;;
-
-- irix)
-+ darwin)
-+ # Like Linux, but with the current version available in
-+ # verstring for coding it into the library header
-+ major=.`expr $current - $age`
-+ versuffix="$major.$age.$revision"
-+ # Darwin ld doesn't like 0 for these options...
-+ minor_current=`expr $current + 1`
-+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
-+ ;;
-+
-+ freebsd-aout)
-+ major=".$current"
-+ versuffix=".$current.$revision";
-+ ;;
-+
-+ freebsd-elf)
-+ major=".$current"
-+ versuffix=".$current";
-+ ;;
-+
-+ irix | nonstopux)
- major=`expr $current - $age + 1`
-- versuffix="$major.$revision"
-- verstring="sgi$major.$revision"
-+
-+ case $version_type in
-+ nonstopux) verstring_prefix=nonstopux ;;
-+ *) verstring_prefix=sgi ;;
-+ esac
-+ verstring="$verstring_prefix$major.$revision"
-
- # Add in all the interfaces that we are compatible with.
- loop=$revision
- while test $loop != 0; do
- iface=`expr $revision - $loop`
- loop=`expr $loop - 1`
-- verstring="sgi$major.$iface:$verstring"
-+ verstring="$verstring_prefix$major.$iface:$verstring"
- done
-+
-+ # Before this point, $major must not contain `.'.
-+ major=.$major
-+ versuffix="$major.$revision"
- ;;
-
- linux)
-@@ -1715,7 +2350,7 @@
- ;;
-
- osf)
-- major=`expr $current - $age`
-+ major=.`expr $current - $age`
- versuffix=".$current.$age.$revision"
- verstring="$current.$age.$revision"
-
-@@ -1736,21 +2371,11 @@
- versuffix=".$current.$revision"
- ;;
-
-- freebsd-aout)
-- major=".$current"
-- versuffix=".$current.$revision";
-- ;;
--
-- freebsd-elf)
-- major=".$current"
-- versuffix=".$current";
-- ;;
--
- windows)
-- # Like Linux, but with '-' rather than '.', since we only
-- # want one extension on Windows 95.
-+ # Use '-' rather than '.', since we only want one
-+ # extension on DOS 8.3 filesystems.
- major=`expr $current - $age`
-- versuffix="-$major-$age-$revision"
-+ versuffix="-$major"
- ;;
-
- *)
-@@ -1764,6 +2389,16 @@
- if test -z "$vinfo" && test -n "$release"; then
- major=
- verstring="0.0"
-+ case $version_type in
-+ darwin)
-+ # we can't check for "0.0" in archive_cmds due to quoting
-+ # problems, so we reset it completely
-+ verstring=""
-+ ;;
-+ *)
-+ verstring="0.0"
-+ ;;
-+ esac
- if test "$need_version" = no; then
- versuffix=
- else
-@@ -1777,7 +2412,7 @@
- versuffix=
- verstring=""
- fi
--
-+
- # Check to see if the archive will have undefined symbols.
- if test "$allow_undefined" = yes; then
- if test "$allow_undefined_flag" = unsupported; then
-@@ -1785,34 +2420,16 @@
- build_libtool_libs=no
- build_old_libs=yes
- fi
-- else
-- # Don't allow undefined symbols.
-- allow_undefined_flag="$no_undefined_flag"
-- fi
--
-- dependency_libs="$deplibs"
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
-- # these systems don't actually have a c library (as such)!
-- ;;
-- *)
-- # Add libc to deplibs on all other systems.
-- deplibs="$deplibs -lc"
-- ;;
-- esac
-+ else
-+ # Don't allow undefined symbols.
-+ allow_undefined_flag="$no_undefined_flag"
-+ fi
- fi
-
-- # Create the output directory, or remove our outputs if we need to.
-- if test -d $output_objdir; then
-+ if test "$mode" != relink; then
-+ # Remove our outputs.
- $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*"
- $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*
-- else
-- $show "$mkdir $output_objdir"
-- $run $mkdir $output_objdir
-- status=$?
-- if test $status -ne 0 && test ! -d $output_objdir; then
-- exit $status
-- fi
- fi
-
- # Now set the variables for building old libraries.
-@@ -1823,7 +2440,73 @@
- oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
- fi
-
-+ # Eliminate all temporary directories.
-+ for path in $notinst_path; do
-+ lib_search_path=`echo "$lib_search_path " | ${SED} -e 's% $path % %g'`
-+ deplibs=`echo "$deplibs " | ${SED} -e 's% -L$path % %g'`
-+ dependency_libs=`echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'`
-+ done
-+
-+ if test -n "$xrpath"; then
-+ # If the user specified any rpath flags, then add them.
-+ temp_xrpath=
-+ for libdir in $xrpath; do
-+ temp_xrpath="$temp_xrpath -R$libdir"
-+ case "$finalize_rpath " in
-+ *" $libdir "*) ;;
-+ *) finalize_rpath="$finalize_rpath $libdir" ;;
-+ esac
-+ done
-+ if test $hardcode_into_libs != yes || test $build_old_libs = yes; then
-+ dependency_libs="$temp_xrpath $dependency_libs"
-+ fi
-+ fi
-+
-+ # Make sure dlfiles contains only unique files that won't be dlpreopened
-+ old_dlfiles="$dlfiles"
-+ dlfiles=
-+ for lib in $old_dlfiles; do
-+ case " $dlprefiles $dlfiles " in
-+ *" $lib "*) ;;
-+ *) dlfiles="$dlfiles $lib" ;;
-+ esac
-+ done
-+
-+ # Make sure dlprefiles contains only unique files
-+ old_dlprefiles="$dlprefiles"
-+ dlprefiles=
-+ for lib in $old_dlprefiles; do
-+ case "$dlprefiles " in
-+ *" $lib "*) ;;
-+ *) dlprefiles="$dlprefiles $lib" ;;
-+ esac
-+ done
-+
- if test "$build_libtool_libs" = yes; then
-+ if test -n "$rpath"; then
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
-+ # these systems don't actually have a c library (as such)!
-+ ;;
-+ *-*-rhapsody* | *-*-darwin1.[012])
-+ # Rhapsody C library is in the System framework
-+ deplibs="$deplibs -framework System"
-+ ;;
-+ *-*-netbsd*)
-+ # Don't link with libc until the a.out ld.so is fixed.
-+ ;;
-+ *-*-openbsd* | *-*-freebsd*)
-+ # Do not include libc due to us having libc/libc_r.
-+ ;;
-+ *)
-+ # Add libc to deplibs on all other systems if necessary.
-+ if test $build_libtool_need_lc = "yes"; then
-+ deplibs="$deplibs -lc"
-+ fi
-+ ;;
-+ esac
-+ fi
-+
- # Transform deplibs into only deplibs that can be linked in shared.
- name_save=$name
- libname_save=$libname
-@@ -1838,7 +2521,7 @@
- major=""
- newdeplibs=
- droppeddeps=no
-- case "$deplibs_check_method" in
-+ case $deplibs_check_method in
- pass_all)
- # Don't check for shared/static. Everything works.
- # This might be a little naive. We might want to check
-@@ -1863,7 +2546,7 @@
- for i in $deplibs; do
- name="`expr $i : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
-- if test "$name" != "" ; then
-+ if test -n "$name" && test "$name" != "0"; then
- libname=`eval \\$echo \"$libname_spec\"`
- deplib_matches=`eval \\$echo \"$library_names_spec\"`
- set dummy $deplib_matches
-@@ -1873,22 +2556,24 @@
- else
- droppeddeps=yes
- echo
-- echo "*** Warning: This library needs some functionality provided by $i."
-+ echo "*** Warning: dynamic linker does not accept needed library $i."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
-- echo "*** shared version of the library, which you do not appear to have."
-+ echo "*** shared version of the library, which I believe you do not have"
-+ echo "*** because a test_compile did reveal that the linker did not use it for"
-+ echo "*** its dynamic dependency list that programs get resolved with at runtime."
- fi
- else
- newdeplibs="$newdeplibs $i"
- fi
- done
- else
-- # Error occured in the first compile. Let's try to salvage the situation:
-- # Compile a seperate program for each library.
-+ # Error occured in the first compile. Let's try to salvage
-+ # the situation: Compile a separate program for each library.
- for i in $deplibs; do
- name="`expr $i : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
-- if test "$name" != "" ; then
-+ if test -n "$name" && test "$name" != "0"; then
- $rm conftest
- $CC -o conftest conftest.c $i
- # Did it work?
-@@ -1903,10 +2588,12 @@
- else
- droppeddeps=yes
- echo
-- echo "*** Warning: This library needs some functionality provided by $i."
-+ echo "*** Warning: dynamic linker does not accept needed library $i."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
-- echo "*** shared version of the library, which you do not appear to have."
-+ echo "*** shared version of the library, which you do not appear to have"
-+ echo "*** because a test_compile did reveal that the linker did not use this one"
-+ echo "*** as a dynamic dependency that programs can get resolved with at runtime."
- fi
- else
- droppeddeps=yes
-@@ -1924,19 +2611,19 @@
- ;;
- file_magic*)
- set dummy $deplibs_check_method
-- file_magic_regex="`expr \"$deplibs_check_method\" : \"$2 \(.*\)\"`"
-+ file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
- for a_deplib in $deplibs; do
- name="`expr $a_deplib : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
-- if test "$name" != "" ; then
-+ if test -n "$name" && test "$name" != "0"; then
- libname=`eval \\$echo \"$libname_spec\"`
-- for i in $lib_search_path; do
-+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
- for potent_lib in $potential_libs; do
- # Follow soft links.
- if ls -lLd "$potent_lib" 2>/dev/null \
- | grep " -> " >/dev/null; then
-- continue
-+ continue
- fi
- # The statement above tries to avoid entering an
- # endless loop below, in case of cyclic links.
-@@ -1945,14 +2632,14 @@
- # but so what?
- potlib="$potent_lib"
- while test -h "$potlib" 2>/dev/null; do
-- potliblink=`ls -ld $potlib | sed 's/.* -> //'`
-- case "$potliblink" in
-+ potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
-+ case $potliblink in
- [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
- *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
- esac
- done
- if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
-- | sed 10q \
-+ | ${SED} 10q \
- | egrep "$file_magic_regex" > /dev/null; then
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
-@@ -1963,10 +2650,59 @@
- if test -n "$a_deplib" ; then
- droppeddeps=yes
- echo
-- echo "*** Warning: This library needs some functionality provided by $a_deplib."
-+ echo "*** Warning: linker path does not have real file for library $a_deplib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have"
-+ echo "*** because I did check the linker path looking for a file starting"
-+ if test -z "$potlib" ; then
-+ echo "*** with $libname but no candidates were found. (...for file magic test)"
-+ else
-+ echo "*** with $libname and none of the candidates passed a file format test"
-+ echo "*** using a file magic. Last file checked: $potlib"
-+ fi
-+ fi
-+ else
-+ # Add a -L argument.
-+ newdeplibs="$newdeplibs $a_deplib"
-+ fi
-+ done # Gone through all deplibs.
-+ ;;
-+ match_pattern*)
-+ set dummy $deplibs_check_method
-+ match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
-+ for a_deplib in $deplibs; do
-+ name="`expr $a_deplib : '-l\(.*\)'`"
-+ # If $name is empty we are operating on a -L argument.
-+ if test -n "$name" && test "$name" != "0"; then
-+ libname=`eval \\$echo \"$libname_spec\"`
-+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
-+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
-+ for potent_lib in $potential_libs; do
-+ potlib="$potent_lib" # see symlink-check below in file_magic test
-+ if eval echo \"$potent_lib\" 2>/dev/null \
-+ | ${SED} 10q \
-+ | egrep "$match_pattern_regex" > /dev/null; then
-+ newdeplibs="$newdeplibs $a_deplib"
-+ a_deplib=""
-+ break 2
-+ fi
-+ done
-+ done
-+ if test -n "$a_deplib" ; then
-+ droppeddeps=yes
-+ echo
-+ echo "*** Warning: linker path does not have real file for library $a_deplib."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
-- echo "*** shared version of the library, which you do not appear to have."
-+ echo "*** shared version of the library, which you do not appear to have"
-+ echo "*** because I did check the linker path looking for a file starting"
-+ if test -z "$potlib" ; then
-+ echo "*** with $libname but no candidates were found. (...for regex pattern test)"
-+ else
-+ echo "*** with $libname and none of the candidates passed a file format test"
-+ echo "*** using a regex pattern. Last file checked: $potlib"
-+ fi
- fi
- else
- # Add a -L argument.
-@@ -1996,6 +2732,13 @@
- libname=$libname_save
- name=$name_save
-
-+ case $host in
-+ *-*-rhapsody* | *-*-darwin1.[012])
-+ # On Rhapsody replace the C library is the System framework
-+ newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ ;;
-+ esac
-+
- if test "$droppeddeps" = yes; then
- if test "$module" = yes; then
- echo
-@@ -2021,6 +2764,21 @@
- echo "*** The inter-library dependencies that have been dropped here will be"
- echo "*** automatically added whenever a program is linked with this library"
- echo "*** or is declared to -dlopen it."
-+
-+ if test $allow_undefined = no; then
-+ echo
-+ echo "*** Since this library must not contain undefined symbols,"
-+ echo "*** because either the platform does not support them or"
-+ echo "*** it was explicitly requested with -no-undefined,"
-+ echo "*** libtool will only create a static version of it."
-+ if test "$build_old_libs" = no; then
-+ oldlibs="$output_objdir/$libname.$libext"
-+ build_libtool_libs=module
-+ build_old_libs=yes
-+ else
-+ build_libtool_libs=no
-+ fi
-+ fi
- fi
- fi
- # Done checking deplibs!
-@@ -2031,9 +2789,64 @@
- library_names=
- old_library=
- dlname=
--
-+
- # Test again, we may have decided not to build it any more
- if test "$build_libtool_libs" = yes; then
-+ if test $hardcode_into_libs = yes; then
-+ # Hardcode the library paths
-+ hardcode_libdirs=
-+ dep_rpath=
-+ rpath="$finalize_rpath"
-+ test "$mode" != relink && rpath="$compile_rpath$rpath"
-+ for libdir in $rpath; do
-+ if test -n "$hardcode_libdir_flag_spec"; then
-+ if test -n "$hardcode_libdir_separator"; then
-+ if test -z "$hardcode_libdirs"; then
-+ hardcode_libdirs="$libdir"
-+ else
-+ # Just accumulate the unique libdirs.
-+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
-+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
-+ ;;
-+ *)
-+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
-+ ;;
-+ esac
-+ fi
-+ else
-+ eval flag=\"$hardcode_libdir_flag_spec\"
-+ dep_rpath="$dep_rpath $flag"
-+ fi
-+ elif test -n "$runpath_var"; then
-+ case "$perm_rpath " in
-+ *" $libdir "*) ;;
-+ *) perm_rpath="$perm_rpath $libdir" ;;
-+ esac
-+ fi
-+ done
-+ # Substitute the hardcoded libdirs into the rpath.
-+ if test -n "$hardcode_libdir_separator" &&
-+ test -n "$hardcode_libdirs"; then
-+ libdir="$hardcode_libdirs"
-+ eval dep_rpath=\"$hardcode_libdir_flag_spec\"
-+ fi
-+ if test -n "$runpath_var" && test -n "$perm_rpath"; then
-+ # We should set the runpath_var.
-+ rpath=
-+ for dir in $perm_rpath; do
-+ rpath="$rpath$dir:"
-+ done
-+ eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
-+ fi
-+ test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
-+ fi
-+
-+ shlibpath="$finalize_shlibpath"
-+ test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
-+ if test -n "$shlibpath"; then
-+ eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
-+ fi
-+
- # Get the real and link names of the library.
- eval library_names=\"$library_names_spec\"
- set dummy $library_names
-@@ -2045,6 +2858,7 @@
- else
- soname="$realname"
- fi
-+ test -z "$dlname" && dlname=$soname
-
- lib="$output_objdir/$realname"
- for link
-@@ -2079,7 +2893,7 @@
- export_symbols="$output_objdir/$libname.exp"
- $run $rm $export_symbols
- eval cmds=\"$export_symbols_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -2116,7 +2930,7 @@
-
- for xlib in $convenience; do
- # Extract the objects.
-- case "$xlib" in
-+ case $xlib in
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
- *) xabs=`pwd`"/$xlib" ;;
- esac
-@@ -2141,16 +2955,32 @@
-
- if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
- eval flag=\"$thread_safe_flag_spec\"
-- linkopts="$linkopts $flag"
-+ linker_flags="$linker_flags $flag"
-+ fi
-+
-+ # Make a backup of the uninstalled library when relinking
-+ if test "$mode" = relink; then
-+ $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
- fi
-
- # Do each of the archive commands.
- if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
- eval cmds=\"$archive_expsym_cmds\"
- else
-+ save_deplibs="$deplibs"
-+ for conv in $convenience; do
-+ tmp_deplibs=
-+ for test_deplib in $deplibs; do
-+ if test "$test_deplib" != "$conv"; then
-+ tmp_deplibs="$tmp_deplibs $test_deplib"
-+ fi
-+ done
-+ deplibs="$tmp_deplibs"
-+ done
- eval cmds=\"$archive_cmds\"
-+ deplibs="$save_deplibs"
- fi
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -2158,6 +2988,12 @@
- done
- IFS="$save_ifs"
-
-+ # Restore the uninstalled library and exit
-+ if test "$mode" = relink; then
-+ $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
-+ exit 0
-+ fi
-+
- # Create links to the real library.
- for linkname in $linknames; do
- if test "$realname" != "$linkname"; then
-@@ -2174,12 +3010,7 @@
- fi
- ;;
-
-- *.lo | *.o | *.obj)
-- if test -n "$link_against_libtool_libs"; then
-- $echo "$modename: error: cannot link libtool libraries into objects" 1>&2
-- exit 1
-- fi
--
-+ obj)
- if test -n "$deplibs"; then
- $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
- fi
-@@ -2204,9 +3035,9 @@
- $echo "$modename: warning: \`-release' is ignored for objects" 1>&2
- fi
-
-- case "$output" in
-+ case $output in
- *.lo)
-- if test -n "$objs"; then
-+ if test -n "$objs$old_deplibs"; then
- $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
- exit 1
- fi
-@@ -2230,7 +3061,7 @@
- gentop=
- # reload_cmds runs $LD directly, so let us get rid of
- # -Wl from whole_archive_flag_spec
-- wl=
-+ wl=
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
-@@ -2249,7 +3080,7 @@
-
- for xlib in $convenience; do
- # Extract the objects.
-- case "$xlib" in
-+ case $xlib in
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
- *) xabs=`pwd`"/$xlib" ;;
- esac
-@@ -2273,11 +3104,11 @@
- fi
-
- # Create the old-style object.
-- reload_objs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs"
-+ reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
-
- output="$obj"
- eval cmds=\"$reload_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -2308,12 +3139,12 @@
- exit 0
- fi
-
-- if test -n "$pic_flag"; then
-+ if test -n "$pic_flag" || test "$pic_mode" != default; then
- # Only do commands if we really have different PIC objects.
- reload_objs="$libobjs $reload_conv_objs"
- output="$libobj"
- eval cmds=\"$reload_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -2344,8 +3175,10 @@
- exit 0
- ;;
-
-- # Anything else should be a program.
-- *)
-+ prog)
-+ case $host in
-+ *cygwin*) output=`echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;;
-+ esac
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
- fi
-@@ -2355,20 +3188,34 @@
- fi
-
- if test "$preload" = yes; then
-- if test "$dlopen" = unknown && test "$dlopen_self" = unknown &&
-+ if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown &&
- test "$dlopen_self_static" = unknown; then
- $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support."
-- fi
-+ fi
- fi
--
-+
-+ case $host in
-+ *-*-rhapsody* | *-*-darwin1.[012])
-+ # On Rhapsody replace the C library is the System framework
-+ compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ case $host in
-+ *darwin*)
-+ # Don't allow lazy linking, it breaks C++ global constructors
-+ compile_command="$compile_command ${wl}-bind_at_load"
-+ finalize_command="$finalize_command ${wl}-bind_at_load"
-+ ;;
-+ esac
-+ ;;
-+ esac
-+
-+ compile_command="$compile_command $compile_deplibs"
-+ finalize_command="$finalize_command $finalize_deplibs"
-+
- if test -n "$rpath$xrpath"; then
- # If the user specified any rpath flags, then add them.
- for libdir in $rpath $xrpath; do
- # This is the magic to use -rpath.
-- case "$compile_rpath " in
-- *" $libdir "*) ;;
-- *) compile_rpath="$compile_rpath $libdir" ;;
-- esac
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir" ;;
-@@ -2386,7 +3233,7 @@
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
-- case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
-+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
-@@ -2404,6 +3251,14 @@
- *) perm_rpath="$perm_rpath $libdir" ;;
- esac
- fi
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ case :$dllsearchpath: in
-+ *":$libdir:"*) ;;
-+ *) dllsearchpath="$dllsearchpath:$libdir";;
-+ esac
-+ ;;
-+ esac
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
-@@ -2422,7 +3277,7 @@
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
-- case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
-+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
-@@ -2449,23 +3304,6 @@
- fi
- finalize_rpath="$rpath"
-
-- output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
-- if test "X$output_objdir" = "X$output"; then
-- output_objdir="$objdir"
-- else
-- output_objdir="$output_objdir/$objdir"
-- fi
--
-- # Create the binary in the object directory, then wrap it.
-- if test ! -d $output_objdir; then
-- $show "$mkdir $output_objdir"
-- $run $mkdir $output_objdir
-- status=$?
-- if test $status -ne 0 && test ! -d $output_objdir; then
-- exit $status
-- fi
-- fi
--
- if test -n "$libobjs" && test "$build_old_libs" = yes; then
- # Transform all the library objects into standard objects.
- compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-@@ -2482,7 +3320,7 @@
- fi
-
- if test -n "$dlsyms"; then
-- case "$dlsyms" in
-+ case $dlsyms in
- "") ;;
- *.c)
- # Discover the nlist of each of the dlfiles.
-@@ -2514,7 +3352,7 @@
- test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist"
-
- # Add our own program objects to the symbol list.
-- progfiles=`$echo "X$objs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-+ progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- for arg in $progfiles; do
- $show "extracting global C symbols from \`$arg'"
- $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
-@@ -2524,7 +3362,7 @@
- $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
- $run eval '$mv "$nlist"T "$nlist"'
- fi
--
-+
- if test -n "$export_symbols_regex"; then
- $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T'
- $run eval '$mv "$nlist"T "$nlist"'
-@@ -2534,9 +3372,9 @@
- if test -z "$export_symbols"; then
- export_symbols="$output_objdir/$output.exp"
- $run $rm $export_symbols
-- $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
-+ $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
- else
-- $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
-+ $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
- $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
- $run eval 'mv "$nlist"T "$nlist"'
- fi
-@@ -2544,7 +3382,7 @@
-
- for arg in $dlprefiles; do
- $show "extracting global C symbols from \`$arg'"
-- name=`echo "$arg" | sed -e 's%^.*/%%'`
-+ name=`echo "$arg" | ${SED} -e 's%^.*/%%'`
- $run eval 'echo ": $name " >> "$nlist"'
- $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
- done
-@@ -2559,7 +3397,13 @@
- fi
-
- # Try sorting and uniquifying the output.
-- if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then
-+ if grep -v "^: " < "$nlist" |
-+ if sort -k 3 </dev/null >/dev/null 2>&1; then
-+ sort -k 3
-+ else
-+ sort +2
-+ fi |
-+ uniq > "$nlist"S; then
- :
- else
- grep -v "^: " < "$nlist" > "$nlist"S
-@@ -2576,27 +3420,25 @@
- #undef lt_preloaded_symbols
-
- #if defined (__STDC__) && __STDC__
--# define lt_ptr_t void *
-+# define lt_ptr void *
- #else
--# define lt_ptr_t char *
-+# define lt_ptr char *
- # define const
- #endif
-
- /* The mapping between symbol names and symbols. */
- const struct {
- const char *name;
-- lt_ptr_t address;
-+ lt_ptr address;
- }
- lt_preloaded_symbols[] =
- {\
- "
-
-- sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \
-- -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \
-- < "$nlist" >> "$output_objdir/$dlsyms"
-+ eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms"
-
- $echo >> "$output_objdir/$dlsyms" "\
-- {0, (lt_ptr_t) 0}
-+ {0, (lt_ptr) 0}
- };
-
- /* This works around a problem in FreeBSD linker */
-@@ -2613,13 +3455,13 @@
- fi
-
- pic_flag_for_symtable=
-- case "$host" in
-+ case $host in
- # compiling the symbol table file with pic_flag works around
- # a FreeBSD bug that causes programs to crash when -lm is
- # linked before any other PIC object. But we must not use
- # pic_flag when linking with -static. The problem exists in
- # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
-- *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
-+ *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
- case "$compile_command " in
- *" -static "*) ;;
- *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";;
-@@ -2658,7 +3500,7 @@
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
- fi
-
-- if test -z "$link_against_libtool_libs" || test "$build_libtool_libs" != yes; then
-+ if test $need_relink = no || test "$build_libtool_libs" != yes; then
- # Replace the output file specification.
- compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
- link_command="$compile_command$compile_rpath"
-@@ -2667,7 +3509,7 @@
- $show "$link_command"
- $run eval "$link_command"
- status=$?
--
-+
- # Delete the generated files.
- if test -n "$dlsyms"; then
- $show "$rm $output_objdir/${outputname}S.${objext}"
-@@ -2681,7 +3523,7 @@
- # We should set the shlibpath_var
- rpath=
- for dir in $temp_rpath; do
-- case "$dir" in
-+ case $dir in
- [\\/]* | [A-Za-z]:[\\/]*)
- # Absolute path.
- rpath="$rpath$dir:"
-@@ -2723,11 +3565,24 @@
- fi
- fi
-
-+ if test "$no_install" = yes; then
-+ # We don't need to create a wrapper script.
-+ link_command="$compile_var$compile_command$compile_rpath"
-+ # Replace the output file specification.
-+ link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
-+ # Delete the old output file.
-+ $run $rm $output
-+ # Link the executable and exit
-+ $show "$link_command"
-+ $run eval "$link_command" || exit $?
-+ exit 0
-+ fi
-+
- if test "$hardcode_action" = relink; then
- # Fast installation is not supported
- link_command="$compile_var$compile_command$compile_rpath"
- relink_command="$finalize_var$finalize_command$finalize_rpath"
--
-+
- $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2
- $echo "$modename: \`$output' will be relinked during installation" 1>&2
- else
-@@ -2747,7 +3602,7 @@
-
- # Replace the output file specification.
- link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
--
-+
- # Delete the old output files.
- $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname
-
-@@ -2759,12 +3614,24 @@
-
- # Quote the relink command for shipping.
- if test -n "$relink_command"; then
-+ # Preserve any variables that may affect compiler behavior
-+ for var in $variables_saved_for_relink; do
-+ if eval test -z \"\${$var+set}\"; then
-+ relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
-+ elif eval var_value=\$$var; test -z "$var_value"; then
-+ relink_command="$var=; export $var; $relink_command"
-+ else
-+ var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
-+ relink_command="$var=\"$var_value\"; export $var; $relink_command"
-+ fi
-+ done
-+ relink_command="(cd `pwd`; $relink_command)"
- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
- fi
-
- # Quote $echo for shipping.
- if test "X$echo" = "X$SHELL $0 --fallback-echo"; then
-- case "$0" in
-+ case $0 in
- [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";;
- *) qecho="$SHELL `pwd`/$0 --fallback-echo";;
- esac
-@@ -2778,7 +3645,12 @@
- # win32 will think the script is a binary if it has
- # a .exe suffix, so we strip it off here.
- case $output in
-- *.exe) output=`echo $output|sed 's,.exe$,,'` ;;
-+ *.exe) output=`echo $output|${SED} 's,.exe$,,'` ;;
-+ esac
-+ # test for cygwin because mv fails w/o .exe extensions
-+ case $host in
-+ *cygwin*) exeext=.exe ;;
-+ *) exeext= ;;
- esac
- $rm $output
- trap "$rm $output; exit 1" 1 2 15
-@@ -2797,7 +3669,7 @@
-
- # Sed substitution that helps us do robust quoting. It backslashifies
- # metacharacters that are still active within double-quoted strings.
--Xsed='sed -e 1s/^X//'
-+Xsed="${SED}"' -e 1s/^X//'
- sed_quote_subst='$sed_quote_subst'
-
- # The HP-UX ksh and POSIX shell print the target directory to stdout
-@@ -2809,7 +3681,7 @@
- # This environment variable determines our operation mode.
- if test \"\$libtool_install_magic\" = \"$magic\"; then
- # install mode needs the following variable:
-- link_against_libtool_libs='$link_against_libtool_libs'
-+ notinst_deplibs='$notinst_deplibs'
- else
- # When we are sourced in execute mode, \$file and \$echo are already set.
- if test \"\$libtool_execute_magic\" != \"$magic\"; then
-@@ -2835,20 +3707,20 @@
- test \"x\$thisdir\" = \"x\$file\" && thisdir=.
-
- # Follow symbolic links until we get to the real thisdir.
-- file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\`
-+ file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
- while test -n \"\$file\"; do
- destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
-
- # If there was a directory component, then change thisdir.
- if test \"x\$destdir\" != \"x\$file\"; then
- case \"\$destdir\" in
-- [\\/]* | [A-Za-z]:[\\/]*) thisdir=\"\$destdir\" ;;
-+ [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
- *) thisdir=\"\$thisdir/\$destdir\" ;;
- esac
- fi
-
- file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
-- file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\`
-+ file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
- done
-
- # Try to get the absolute directory name.
-@@ -2858,11 +3730,11 @@
-
- if test "$fast_install" = yes; then
- echo >> $output "\
-- program=lt-'$outputname'
-+ program=lt-'$outputname'$exeext
- progdir=\"\$thisdir/$objdir\"
--
-+
- if test ! -f \"\$progdir/\$program\" || \\
-- { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\
-+ { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
- test \"X\$file\" != \"X\$progdir/\$program\"; }; then
-
- file=\"\$\$-\$program\"
-@@ -2877,8 +3749,9 @@
-
- # relink executable if necessary
- if test -n \"\$relink_command\"; then
-- if (cd \"\$thisdir\" && eval \$relink_command); then :
-+ if relink_command_output=\`eval \$relink_command 2>&1\`; then :
- else
-+ $echo \"\$relink_command_output\" >&2
- $rm \"\$progdir/\$file\"
- exit 1
- fi
-@@ -2907,7 +3780,7 @@
- $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
-
- # Some systems cannot cope with colon-terminated $shlibpath_var
-- # The second colon is a workaround for a bug in BeOS R4 sed
-+ # The second colon is a workaround for a bug in BeOS R4 ${SED}
- $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
-
- export $shlibpath_var
-@@ -2927,13 +3800,21 @@
- # Run the actual program with our arguments.
- "
- case $host in
-- *-*-cygwin* | *-*-mingw | *-*-os2*)
-- # win32 systems need to use the prog path for dll
-- # lookup to work
-+ # win32 systems need to use the prog path for dll
-+ # lookup to work
-+ *-*-cygwin* | *-*-pw32*)
-+ $echo >> $output "\
-+ exec \$progdir/\$program \${1+\"\$@\"}
-+"
-+ ;;
-+
-+ # Backslashes separate directories on plain windows
-+ *-*-mingw | *-*-os2*)
- $echo >> $output "\
- exec \$progdir\\\\\$program \${1+\"\$@\"}
- "
- ;;
-+
- *)
- $echo >> $output "\
- # Export the path to the program.
-@@ -2975,7 +3856,7 @@
- oldobjs="$libobjs_save"
- build_libtool_libs=no
- else
-- oldobjs="$objs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
-+ oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
- fi
- addlibs="$old_convenience"
- fi
-@@ -2991,11 +3872,11 @@
- exit $status
- fi
- generated="$generated $gentop"
--
-+
- # Add in members from convenience archives.
- for xlib in $addlibs; do
- # Extract the objects.
-- case "$xlib" in
-+ case $xlib in
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
- *) xabs=`pwd`"/$xlib" ;;
- esac
-@@ -3041,7 +3922,7 @@
-
- eval cmds=\"$old_archive_cmds\"
- fi
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -3056,19 +3937,26 @@
- fi
-
- # Now create the libtool archive.
-- case "$output" in
-+ case $output in
- *.la)
- old_library=
- test "$build_old_libs" = yes && old_library="$libname.$libext"
- $show "creating $output"
-
-- if test -n "$xrpath"; then
-- temp_xrpath=
-- for libdir in $xrpath; do
-- temp_xrpath="$temp_xrpath -R$libdir"
-- done
-- dependency_libs="$temp_xrpath $dependency_libs"
-- fi
-+ # Preserve any variables that may affect compiler behavior
-+ for var in $variables_saved_for_relink; do
-+ if eval test -z \"\${$var+set}\"; then
-+ relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
-+ elif eval var_value=\$$var; test -z "$var_value"; then
-+ relink_command="$var=; export $var; $relink_command"
-+ else
-+ var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
-+ relink_command="$var=\"$var_value\"; export $var; $relink_command"
-+ fi
-+ done
-+ # Quote the link command for shipping.
-+ relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)"
-+ relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
-
- # Only create the output if not a dry run.
- if test -z "$run"; then
-@@ -3078,8 +3966,52 @@
- break
- fi
- output="$output_objdir/$outputname"i
-+ # Replace all uninstalled libtool libraries with the installed ones
-+ newdependency_libs=
-+ for deplib in $dependency_libs; do
-+ case $deplib in
-+ *.la)
-+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
-+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ newdependency_libs="$newdependency_libs $libdir/$name"
-+ ;;
-+ *) newdependency_libs="$newdependency_libs $deplib" ;;
-+ esac
-+ done
-+ dependency_libs="$newdependency_libs"
-+ newdlfiles=
-+ for lib in $dlfiles; do
-+ name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ newdlfiles="$newdlfiles $libdir/$name"
-+ done
-+ dlfiles="$newdlfiles"
-+ newdlprefiles=
-+ for lib in $dlprefiles; do
-+ name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ newdlprefiles="$newdlprefiles $libdir/$name"
-+ done
-+ dlprefiles="$newdlprefiles"
- fi
- $rm $output
-+ # place dlname in correct position for cygwin
-+ tdlname=$dlname
-+ case $host,$output,$installed,$module,$dlname in
-+ *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
-+ esac
- $echo > $output "\
- # $outputname - a libtool library file
- # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-@@ -3088,7 +4020,7 @@
- # It is necessary for linking the library.
-
- # The name that we can dlopen(3).
--dlname='$dlname'
-+dlname='$tdlname'
-
- # Names of this library.
- library_names='$library_names'
-@@ -3107,16 +4039,23 @@
- # Is this an already installed library?
- installed=$installed
-
-+# Files to dlopen/dlpreopen
-+dlopen='$dlfiles'
-+dlpreopen='$dlprefiles'
-+
- # Directory that this library needs to be installed in:
--libdir='$install_libdir'\
--"
-+libdir='$install_libdir'"
-+ if test "$installed" = no && test $need_relink = yes; then
-+ $echo >> $output "\
-+relink_command=\"$relink_command\""
-+ fi
- done
- fi
-
- # Do a symbolic link so that the libtool archive can be found in
- # LD_LIBRARY_PATH before the program is installed.
- $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
-- $run eval "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" || exit $?
-+ $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
- ;;
- esac
- exit 0
-@@ -3128,10 +4067,12 @@
-
- # There may be an optional sh(1) argument at the beginning of
- # install_prog (especially on Windows NT).
-- if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh; then
-+ if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
-+ # Allow the use of GNU shtool's install command.
-+ $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then
- # Aesthetically quote it.
- arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-+ case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
- arg="\"$arg\""
- ;;
-@@ -3147,7 +4088,7 @@
- # The real first argument should be the name of the installation program.
- # Aesthetically quote it.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-+ case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
- arg="\"$arg\""
- ;;
-@@ -3170,7 +4111,7 @@
- continue
- fi
-
-- case "$arg" in
-+ case $arg in
- -d) isdir=yes ;;
- -f) prev="-f" ;;
- -g) prev="-g" ;;
-@@ -3195,7 +4136,7 @@
-
- # Aesthetically quote the argument.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-+ case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
- arg="\"$arg\""
- ;;
-@@ -3246,11 +4187,11 @@
- exit 1
- fi
- fi
-- case "$destdir" in
-+ case $destdir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- for file in $files; do
-- case "$file" in
-+ case $file in
- *.lo) ;;
- *)
- $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
-@@ -3272,15 +4213,15 @@
- for file in $files; do
-
- # Do each installation.
-- case "$file" in
-- *.a | *.lib)
-+ case $file in
-+ *.$libext)
- # Do the static libraries later.
- staticlibs="$staticlibs $file"
- ;;
-
- *.la)
- # Check to see that this really is a libtool archive.
-- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
-@@ -3289,8 +4230,9 @@
-
- library_names=
- old_library=
-+ relink_command=
- # If there is no directory component, then add one.
-- case "$file" in
-+ case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-@@ -3309,10 +4251,38 @@
- esac
- fi
-
-- dir="`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/"
-+ dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/
- test "X$dir" = "X$file/" && dir=
- dir="$dir$objdir"
-
-+ if test -n "$relink_command"; then
-+ # Determine the prefix the user has applied to our future dir.
-+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
-+
-+ # Don't allow the user to place us outside of our expected
-+ # location b/c this prevents finding dependent libraries that
-+ # are installed to the same prefix.
-+ if test "$inst_prefix_dir" = "$destdir"; then
-+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
-+ exit 1
-+ fi
-+
-+ if test -n "$inst_prefix_dir"; then
-+ # Stick the inst_prefix_dir data into the link command.
-+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
-+ else
-+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
-+ fi
-+
-+ $echo "$modename: warning: relinking \`$file'" 1>&2
-+ $show "$relink_command"
-+ if $run eval "$relink_command"; then :
-+ else
-+ $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
-+ exit 1
-+ fi
-+ fi
-+
- # See the names of the shared library.
- set dummy $library_names
- if test -n "$2"; then
-@@ -3320,9 +4290,16 @@
- shift
- shift
-
-+ srcname="$realname"
-+ test -n "$relink_command" && srcname="$realname"T
-+
- # Install the shared library and build the symlinks.
-- $show "$install_prog $dir/$realname $destdir/$realname"
-- $run eval "$install_prog $dir/$realname $destdir/$realname" || exit $?
-+ $show "$install_prog $dir/$srcname $destdir/$realname"
-+ $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $?
-+ if test -n "$stripme" && test -n "$striplib"; then
-+ $show "$striplib $destdir/$realname"
-+ $run eval "$striplib $destdir/$realname" || exit $?
-+ fi
-
- if test $# -gt 0; then
- # Delete the old symlinks, and create new ones.
-@@ -3338,7 +4315,7 @@
- # Do each command in the postinstall commands.
- lib="$destdir/$realname"
- eval cmds=\"$postinstall_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -3369,11 +4346,11 @@
- fi
-
- # Deduce the name of the destination old-style object file.
-- case "$destfile" in
-+ case $destfile in
- *.lo)
- staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"`
- ;;
-- *.o | *.obj)
-+ *.$objext)
- staticdest="$destfile"
- destfile=
- ;;
-@@ -3411,40 +4388,55 @@
- fi
-
- # Do a test to see if this is really a libtool program.
-- if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-- link_against_libtool_libs=
-+ case $host in
-+ *cygwin*|*mingw*)
-+ wrapper=`echo $file | ${SED} -e 's,.exe$,,'`
-+ ;;
-+ *)
-+ wrapper=$file
-+ ;;
-+ esac
-+ if (${SED} -e '4q' $wrapper | egrep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then
-+ notinst_deplibs=
- relink_command=
-
- # If there is no directory component, then add one.
-- case "$file" in
-- */* | *\\*) . $file ;;
-- *) . ./$file ;;
-+ case $file in
-+ */* | *\\*) . $wrapper ;;
-+ *) . ./$wrapper ;;
- esac
-
- # Check the variables that should have been set.
-- if test -z "$link_against_libtool_libs"; then
-- $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
-+ if test -z "$notinst_deplibs"; then
-+ $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
- exit 1
- fi
-
- finalize=yes
-- for lib in $link_against_libtool_libs; do
-+ for lib in $notinst_deplibs; do
- # Check to see that each library is installed.
- libdir=
- if test -f "$lib"; then
- # If there is no directory component, then add one.
-- case "$lib" in
-+ case $lib in
- */* | *\\*) . $lib ;;
- *) . ./$lib ;;
- esac
- fi
-- libfile="$libdir/`$echo "X$lib" | $Xsed -e 's%^.*/%%g'`"
-+ libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
- if test -n "$libdir" && test ! -f "$libfile"; then
- $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
- finalize=no
- fi
- done
-
-+ relink_command=
-+ # If there is no directory component, then add one.
-+ case $file in
-+ */* | *\\*) . $wrapper ;;
-+ *) . ./$wrapper ;;
-+ esac
-+
- outputname=
- if test "$fast_install" = no && test -n "$relink_command"; then
- if test "$finalize" = yes && test -z "$run"; then
-@@ -3456,6 +4448,7 @@
- $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
- continue
- fi
-+ file=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- outputname="$tmpdir/$file"
- # Replace the output file specification.
- relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
-@@ -3477,6 +4470,23 @@
- fi
- fi
-
-+ # remove .exe since cygwin /usr/bin/install will append another
-+ # one anyways
-+ case $install_prog,$host in
-+ /usr/bin/install*,*cygwin*)
-+ case $file:$destfile in
-+ *.exe:*.exe)
-+ # this is ok
-+ ;;
-+ *.exe:*)
-+ destfile=$destfile.exe
-+ ;;
-+ *:*.exe)
-+ destfile=`echo $destfile | ${SED} -e 's,.exe$,,'`
-+ ;;
-+ esac
-+ ;;
-+ esac
- $show "$install_prog$stripme $file $destfile"
- $run eval "$install_prog\$stripme \$file \$destfile" || exit $?
- test -n "$outputname" && ${rm}r "$tmpdir"
-@@ -3493,9 +4503,14 @@
- $show "$install_prog $file $oldlib"
- $run eval "$install_prog \$file \$oldlib" || exit $?
-
-+ if test -n "$stripme" && test -n "$striplib"; then
-+ $show "$old_striplib $oldlib"
-+ $run eval "$old_striplib $oldlib" || exit $?
-+ fi
-+
- # Do each command in the postinstall commands.
- eval cmds=\"$old_postinstall_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -3511,11 +4526,10 @@
- if test -n "$current_libdirs"; then
- # Maybe just do a dry run.
- test -n "$run" && current_libdirs=" -n$current_libdirs"
-- exec $SHELL $0 --finish$current_libdirs
-- exit 1
-+ exec_cmd='$SHELL $0 --finish$current_libdirs'
-+ else
-+ exit 0
- fi
--
-- exit 0
- ;;
-
- # libtool finish mode
-@@ -3534,7 +4548,7 @@
- if test -n "$finish_cmds"; then
- # Do each command in the finish commands.
- eval cmds=\"$finish_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -3553,7 +4567,7 @@
- fi
-
- # Exit here if they wanted silent mode.
-- test "$show" = : && exit 0
-+ test "$show" = ":" && exit 0
-
- echo "----------------------------------------------------------------------"
- echo "Libraries have been installed in:"
-@@ -3563,7 +4577,7 @@
- echo
- echo "If you ever happen to want to link against installed libraries"
- echo "in a given directory, LIBDIR, you must either use libtool, and"
-- echo "specify the full pathname of the library, or use \`-LLIBDIR'"
-+ echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
- echo "flag during linking and do at least one of the following:"
- if test -n "$shlibpath_var"; then
- echo " - add LIBDIR to the \`$shlibpath_var' environment variable"
-@@ -3613,10 +4627,10 @@
- fi
-
- dir=
-- case "$file" in
-+ case $file in
- *.la)
- # Check to see that this really is a libtool archive.
-- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
-@@ -3628,7 +4642,7 @@
- library_names=
-
- # If there is no directory component, then add one.
-- case "$file" in
-+ case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-@@ -3683,13 +4697,13 @@
- args=
- for file
- do
-- case "$file" in
-+ case $file in
- -*) ;;
- *)
- # Do a test to see if this is really a libtool program.
-- if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ if (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- # If there is no directory component, then add one.
-- case "$file" in
-+ case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-@@ -3706,8 +4720,8 @@
-
- if test -z "$run"; then
- if test -n "$shlibpath_var"; then
-- # Export the shlibpath_var.
-- eval "export $shlibpath_var"
-+ # Export the shlibpath_var.
-+ eval "export $shlibpath_var"
- fi
-
- # Restore saved enviroment variables
-@@ -3718,31 +4732,35 @@
- LANG="$save_LANG"; export LANG
- fi
-
-- # Now actually exec the command.
-- eval "exec \$cmd$args"
--
-- $echo "$modename: cannot exec \$cmd$args"
-- exit 1
-+ # Now prepare to actually exec the command.
-+ exec_cmd="\$cmd$args"
- else
- # Display what would be done.
- if test -n "$shlibpath_var"; then
-- eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
-- $echo "export $shlibpath_var"
-+ eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
-+ $echo "export $shlibpath_var"
- fi
- $echo "$cmd$args"
- exit 0
- fi
- ;;
-
-- # libtool uninstall mode
-- uninstall)
-- modename="$modename: uninstall"
-+ # libtool clean and uninstall mode
-+ clean | uninstall)
-+ modename="$modename: $mode"
- rm="$nonopt"
- files=
-+ rmforce=
-+ exit_status=0
-+
-+ # This variable tells wrapper scripts just to set variables rather
-+ # than running their programs.
-+ libtool_install_magic="$magic"
-
- for arg
- do
-- case "$arg" in
-+ case $arg in
-+ -f) rm="$rm $arg"; rmforce=yes ;;
- -*) rm="$rm $arg" ;;
- *) files="$files $arg" ;;
- esac
-@@ -3754,53 +4772,86 @@
- exit 1
- fi
-
-+ rmdirs=
-+
- for file in $files; do
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
-- test "X$dir" = "X$file" && dir=.
-+ if test "X$dir" = "X$file"; then
-+ dir=.
-+ objdir="$objdir"
-+ else
-+ objdir="$dir/$objdir"
-+ fi
- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-+ test $mode = uninstall && objdir="$dir"
-+
-+ # Remember objdir for removal later, being careful to avoid duplicates
-+ if test $mode = clean; then
-+ case " $rmdirs " in
-+ *" $objdir "*) ;;
-+ *) rmdirs="$rmdirs $objdir" ;;
-+ esac
-+ fi
-+
-+ # Don't error if the file doesn't exist and rm -f was used.
-+ if (test -L "$file") >/dev/null 2>&1 \
-+ || (test -h "$file") >/dev/null 2>&1 \
-+ || test -f "$file"; then
-+ :
-+ elif test -d "$file"; then
-+ exit_status=1
-+ continue
-+ elif test "$rmforce" = yes; then
-+ continue
-+ fi
-
- rmfiles="$file"
-
-- case "$name" in
-+ case $name in
- *.la)
- # Possibly a libtool archive, so verify it.
-- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- . $dir/$name
-
- # Delete the libtool libraries and symlinks.
- for n in $library_names; do
-- rmfiles="$rmfiles $dir/$n"
-+ rmfiles="$rmfiles $objdir/$n"
- done
-- test -n "$old_library" && rmfiles="$rmfiles $dir/$old_library"
-+ test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
-+ test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
-
-- $show "$rm $rmfiles"
-- $run $rm $rmfiles
--
-- if test -n "$library_names"; then
-- # Do each command in the postuninstall commands.
-- eval cmds=\"$postuninstall_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-- for cmd in $cmds; do
-+ if test $mode = uninstall; then
-+ if test -n "$library_names"; then
-+ # Do each command in the postuninstall commands.
-+ eval cmds=\"$postuninstall_cmds\"
-+ save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd"
-+ if test $? != 0 && test "$rmforce" != yes; then
-+ exit_status=1
-+ fi
-+ done
- IFS="$save_ifs"
-- $show "$cmd"
-- $run eval "$cmd"
-- done
-- IFS="$save_ifs"
-- fi
-+ fi
-
-- if test -n "$old_library"; then
-- # Do each command in the old_postuninstall commands.
-- eval cmds=\"$old_postuninstall_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-- for cmd in $cmds; do
-+ if test -n "$old_library"; then
-+ # Do each command in the old_postuninstall commands.
-+ eval cmds=\"$old_postuninstall_cmds\"
-+ save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd"
-+ if test $? != 0 && test "$rmforce" != yes; then
-+ exit_status=1
-+ fi
-+ done
- IFS="$save_ifs"
-- $show "$cmd"
-- $run eval "$cmd"
-- done
-- IFS="$save_ifs"
-+ fi
-+ # FIXME: should reinstall the best remaining shared library.
- fi
--
-- # FIXME: should reinstall the best remaining shared library.
- fi
- ;;
-
-@@ -3809,17 +4860,35 @@
- oldobj=`$echo "X$name" | $Xsed -e "$lo2o"`
- rmfiles="$rmfiles $dir/$oldobj"
- fi
-- $show "$rm $rmfiles"
-- $run $rm $rmfiles
- ;;
-
- *)
-- $show "$rm $rmfiles"
-- $run $rm $rmfiles
-+ # Do a test to see if this is a libtool program.
-+ if test $mode = clean &&
-+ (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ relink_command=
-+ . $dir/$file
-+
-+ rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
-+ if test "$fast_install" = yes && test -n "$relink_command"; then
-+ rmfiles="$rmfiles $objdir/lt-$name"
-+ fi
-+ fi
- ;;
- esac
-+ $show "$rm $rmfiles"
-+ $run $rm $rmfiles || exit_status=1
- done
-- exit 0
-+
-+ # Try to remove the ${objdir}s in the directories where we deleted files
-+ for dir in $rmdirs; do
-+ if test -d "$dir"; then
-+ $show "rmdir $dir"
-+ $run rmdir $dir >/dev/null 2>&1
-+ fi
-+ done
-+
-+ exit $exit_status
- ;;
-
- "")
-@@ -3829,13 +4898,20 @@
- ;;
- esac
-
-- $echo "$modename: invalid operation mode \`$mode'" 1>&2
-- $echo "$generic_help" 1>&2
-- exit 1
-+ if test -z "$exec_cmd"; then
-+ $echo "$modename: invalid operation mode \`$mode'" 1>&2
-+ $echo "$generic_help" 1>&2
-+ exit 1
-+ fi
- fi # test -z "$show_help"
-
-+if test -n "$exec_cmd"; then
-+ eval exec $exec_cmd
-+ exit 1
-+fi
-+
- # We need to display help for each of the modes.
--case "$mode" in
-+case $mode in
- "") $echo \
- "Usage: $modename [OPTION]... [MODE-ARG]...
-
-@@ -3854,6 +4930,7 @@
-
- MODE must be one of the following:
-
-+ clean remove files from the build directory
- compile compile a source file into a libtool object
- execute automatically set library path, then run a program
- finish complete the installation of libtool libraries
-@@ -3866,6 +4943,20 @@
- exit 0
- ;;
-
-+clean)
-+ $echo \
-+"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
-+
-+Remove files from the build directory.
-+
-+RM is the name of the program to use to delete files associated with each FILE
-+(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-+to RM.
-+
-+If FILE is a libtool library, object or program, all the files associated
-+with it are deleted. Otherwise, only FILE itself is deleted using RM."
-+ ;;
-+
- compile)
- $echo \
- "Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
-@@ -3875,6 +4966,8 @@
- This mode accepts the following additional options:
-
- -o OUTPUT-FILE set the output file name to OUTPUT-FILE
-+ -prefer-pic try to building PIC objects only
-+ -prefer-non-pic try to building non-PIC objects only
- -static always build a \`.o' file suitable for static linking
-
- COMPILE-COMMAND is a command to be used in creating a \`standard' object file
-@@ -3954,6 +5047,8 @@
- -LLIBDIR search LIBDIR for required installed libraries
- -lNAME OUTPUT-FILE requires the installed library libNAME
- -module build a library that can dlopened
-+ -no-fast-install disable the fast-install mode
-+ -no-install link a not-installable executable
- -no-undefined declare that a library does not refer to external symbols
- -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
- -release RELEASE specify package release information
---- glib1.2-1.2.10.orig/aclocal.m4
-+++ glib1.2-1.2.10/aclocal.m4
-@@ -1,6 +1,6 @@
--dnl aclocal.m4 generated automatically by aclocal 1.4
-+dnl aclocal.m4 generated automatically by aclocal 1.4-p6
-
--dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- dnl This file is free software; the Free Software Foundation
- dnl gives unlimited permission to copy and/or distribute it,
- dnl with or without modifications, as long as this notice is preserved.
-@@ -10,135 +10,3114 @@
- dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- dnl PARTICULAR PURPOSE.
-
-+# Do all the work for Automake. This macro actually does too much --
-+# some checks are only needed if your package does certain things.
-+# But this isn't really a big deal.
-
--# serial 40 AC_PROG_LIBTOOL
--AC_DEFUN(AC_PROG_LIBTOOL,
--[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
-+# serial 1
-+
-+dnl Usage:
-+dnl AM_INIT_AUTOMAKE(package,version, [no-define])
-+
-+AC_DEFUN([AM_INIT_AUTOMAKE],
-+[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-+AC_REQUIRE([AC_PROG_INSTALL])
-+PACKAGE=[$1]
-+AC_SUBST(PACKAGE)
-+VERSION=[$2]
-+AC_SUBST(VERSION)
-+dnl test to see if srcdir already configured
-+if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
-+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-+fi
-+ifelse([$3],,
-+AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
-+AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
-+AC_REQUIRE([AM_SANITY_CHECK])
-+AC_REQUIRE([AC_ARG_PROGRAM])
-+dnl FIXME This is truly gross.
-+missing_dir=`cd $ac_aux_dir && pwd`
-+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir)
-+AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
-+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir)
-+AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
-+AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
-+AC_REQUIRE([AC_PROG_MAKE_SET])])
-+
-+# Copyright 2002 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2, or (at your option)
-+# any later version.
-+
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-+
-+# AM_AUTOMAKE_VERSION(VERSION)
-+# ----------------------------
-+# Automake X.Y traces this macro to ensure aclocal.m4 has been
-+# generated from the m4 files accompanying Automake X.Y.
-+AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"])
-+
-+# AM_SET_CURRENT_AUTOMAKE_VERSION
-+# -------------------------------
-+# Call AM_AUTOMAKE_VERSION so it can be traced.
-+# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
-+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-+ [AM_AUTOMAKE_VERSION([1.4-p6])])
-+
-+#
-+# Check to make sure that the build environment is sane.
-+#
-+
-+AC_DEFUN([AM_SANITY_CHECK],
-+[AC_MSG_CHECKING([whether build environment is sane])
-+# Just in case
-+sleep 1
-+echo timestamp > conftestfile
-+# Do `set' in a subshell so we don't clobber the current shell's
-+# arguments. Must try -L first in case configure is actually a
-+# symlink; some systems play weird games with the mod time of symlinks
-+# (eg FreeBSD returns the mod time of the symlink's containing
-+# directory).
-+if (
-+ set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
-+ if test "[$]*" = "X"; then
-+ # -L didn't work.
-+ set X `ls -t $srcdir/configure conftestfile`
-+ fi
-+ if test "[$]*" != "X $srcdir/configure conftestfile" \
-+ && test "[$]*" != "X conftestfile $srcdir/configure"; then
-+
-+ # If neither matched, then we have a broken ls. This can happen
-+ # if, for instance, CONFIG_SHELL is bash and it inherits a
-+ # broken ls alias from the environment. This has actually
-+ # happened. Such a system could not be considered "sane".
-+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-+alias in your environment])
-+ fi
-+
-+ test "[$]2" = conftestfile
-+ )
-+then
-+ # Ok.
-+ :
-+else
-+ AC_MSG_ERROR([newly created file is older than distributed files!
-+Check your system clock])
-+fi
-+rm -f conftest*
-+AC_MSG_RESULT(yes)])
-+
-+dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
-+dnl The program must properly implement --version.
-+AC_DEFUN([AM_MISSING_PROG],
-+[AC_MSG_CHECKING(for working $2)
-+# Run test in a subshell; some versions of sh will print an error if
-+# an executable is not found, even if stderr is redirected.
-+# Redirect stdin to placate older versions of autoconf. Sigh.
-+if ($2 --version) < /dev/null > /dev/null 2>&1; then
-+ $1=$2
-+ AC_MSG_RESULT(found)
-+else
-+ $1="$3/missing $2"
-+ AC_MSG_RESULT(missing)
-+fi
-+AC_SUBST($1)])
-+
-+# Like AC_CONFIG_HEADER, but automatically create stamp file.
-+
-+AC_DEFUN([AM_CONFIG_HEADER],
-+[AC_PREREQ([2.12])
-+AC_CONFIG_HEADER([$1])
-+dnl When config.status generates a header, we must update the stamp-h file.
-+dnl This file resides in the same directory as the config header
-+dnl that is generated. We must strip everything past the first ":",
-+dnl and everything past the last "/".
-+AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
-+ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
-+<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
-+<<am_indx=1
-+for am_file in <<$1>>; do
-+ case " <<$>>CONFIG_HEADERS " in
-+ *" <<$>>am_file "*<<)>>
-+ echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
-+ ;;
-+ esac
-+ am_indx=`expr "<<$>>am_indx" + 1`
-+done<<>>dnl>>)
-+changequote([,]))])
-
--# Save cache, so that ltconfig can load it
--AC_CACHE_SAVE
-+# libtool.m4 - Configure libtool for the host system. -*-Shell-script-*-
-
--# Actually configure libtool. ac_aux_dir is where install-sh is found.
--CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
--LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
--LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
--DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
--${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
--$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
--|| AC_MSG_ERROR([libtool configure failed])
-+# serial 46 AC_PROG_LIBTOOL
-
--# Reload cache, that may have been modified by ltconfig
--AC_CACHE_LOAD
-+AC_DEFUN([AC_PROG_LIBTOOL],
-+[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
-
- # This can be used to rebuild libtool when needed
--LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
-+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
-
- # Always use our own libtool.
- LIBTOOL='$(SHELL) $(top_builddir)/libtool'
- AC_SUBST(LIBTOOL)dnl
-
--# Redirect the config.log output again, so that the ltconfig log is not
--# clobbered by the next message.
--exec 5>>./config.log
-+# Prevent multiple expansion
-+define([AC_PROG_LIBTOOL], [])
- ])
-
--AC_DEFUN(AC_LIBTOOL_SETUP,
-+AC_DEFUN([AC_LIBTOOL_SETUP],
- [AC_PREREQ(2.13)dnl
- AC_REQUIRE([AC_ENABLE_SHARED])dnl
- AC_REQUIRE([AC_ENABLE_STATIC])dnl
- AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
- AC_REQUIRE([AC_CANONICAL_HOST])dnl
- AC_REQUIRE([AC_CANONICAL_BUILD])dnl
--AC_REQUIRE([AC_PROG_RANLIB])dnl
- AC_REQUIRE([AC_PROG_CC])dnl
- AC_REQUIRE([AC_PROG_LD])dnl
-+AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
- AC_REQUIRE([AC_PROG_NM])dnl
-+AC_REQUIRE([LT_AC_PROG_SED])dnl
-+
- AC_REQUIRE([AC_PROG_LN_S])dnl
-+AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
-+AC_REQUIRE([AC_OBJEXT])dnl
-+AC_REQUIRE([AC_EXEEXT])dnl
- dnl
-
--case "$target" in
--NONE) lt_target="$host" ;;
--*) lt_target="$target" ;;
-+_LT_AC_PROG_ECHO_BACKSLASH
-+# Only perform the check for file, if the check method requires it
-+case $deplibs_check_method in
-+file_magic*)
-+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-+ AC_PATH_MAGIC
-+ fi
-+ ;;
- esac
-
--# Check for any special flags to pass to ltconfig.
--libtool_flags="--cache-file=$cache_file"
--test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
--test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
--test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
--test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
--test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
--ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
--[libtool_flags="$libtool_flags --enable-dlopen"])
-+AC_CHECK_TOOL(RANLIB, ranlib, :)
-+AC_CHECK_TOOL(STRIP, strip, :)
-+
-+ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
- ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
--[libtool_flags="$libtool_flags --enable-win32-dll"])
-+enable_win32_dll=yes, enable_win32_dll=no)
-+
- AC_ARG_ENABLE(libtool-lock,
- [ --disable-libtool-lock avoid locking (might break parallel builds)])
--test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
--test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
-+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-+
-+# Some flags need to be propagated to the compiler or linker for good
-+# libtool support.
-+case $host in
-+*-*-irix6*)
-+ # Find out which ABI we are using.
-+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext
-+ if AC_TRY_EVAL(ac_compile); then
-+ case `/usr/bin/file conftest.$ac_objext` in
-+ *32-bit*)
-+ LD="${LD-ld} -32"
-+ ;;
-+ *N32*)
-+ LD="${LD-ld} -n32"
-+ ;;
-+ *64-bit*)
-+ LD="${LD-ld} -64"
-+ ;;
-+ esac
-+ fi
-+ rm -rf conftest*
-+ ;;
-+
-+*-*-sco3.2v5*)
-+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-+ SAVE_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -belf"
-+ AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
-+ [AC_LANG_SAVE
-+ AC_LANG_C
-+ AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
-+ AC_LANG_RESTORE])
-+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-+ CFLAGS="$SAVE_CFLAGS"
-+ fi
-+ ;;
-+
-+ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
-+[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
-+ AC_CHECK_TOOL(DLLTOOL, dlltool, false)
-+ AC_CHECK_TOOL(AS, as, false)
-+ AC_CHECK_TOOL(OBJDUMP, objdump, false)
-+
-+ # recent cygwin and mingw systems supply a stub DllMain which the user
-+ # can override, but on older systems we have to supply one
-+ AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
-+ [AC_TRY_LINK([],
-+ [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
-+ DllMain (0, 0, 0);],
-+ [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
-+
-+ case $host/$CC in
-+ *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
-+ # old mingw systems require "-dll" to link a DLL, while more recent ones
-+ # require "-mdll"
-+ SAVE_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -mdll"
-+ AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
-+ [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
-+ CFLAGS="$SAVE_CFLAGS" ;;
-+ *-*-cygwin* | *-*-pw32*)
-+ # cygwin systems need to pass --dll to the linker, and not link
-+ # crt.o which will require a WinMain@16 definition.
-+ lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
-+ esac
-+ ;;
-+ ])
-+esac
-+
-+_LT_AC_LTCONFIG_HACK
-+
-+])
-+
-+# AC_LIBTOOL_HEADER_ASSERT
-+# ------------------------
-+AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT],
-+[AC_CACHE_CHECK([whether $CC supports assert without backlinking],
-+ [lt_cv_func_assert_works],
-+ [case $host in
-+ *-*-solaris*)
-+ if test "$GCC" = yes && test "$with_gnu_ld" != yes; then
-+ case `$CC --version 2>/dev/null` in
-+ [[12]].*) lt_cv_func_assert_works=no ;;
-+ *) lt_cv_func_assert_works=yes ;;
-+ esac
-+ fi
-+ ;;
-+ esac])
-+
-+if test "x$lt_cv_func_assert_works" = xyes; then
-+ AC_CHECK_HEADERS(assert.h)
-+fi
-+])# AC_LIBTOOL_HEADER_ASSERT
-+
-+# _LT_AC_CHECK_DLFCN
-+# --------------------
-+AC_DEFUN([_LT_AC_CHECK_DLFCN],
-+[AC_CHECK_HEADERS(dlfcn.h)
-+])# _LT_AC_CHECK_DLFCN
-+
-+# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
-+# ---------------------------------
-+AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
-+[AC_REQUIRE([AC_CANONICAL_HOST])
-+AC_REQUIRE([AC_PROG_NM])
-+AC_REQUIRE([AC_OBJEXT])
-+# Check for command to grab the raw symbol name followed by C symbol from nm.
-+AC_MSG_CHECKING([command to parse $NM output])
-+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl
-+
-+# These are sane defaults that work on at least a few old systems.
-+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-+
-+# Character class describing NM global symbol codes.
-+symcode='[[BCDEGRST]]'
-+
-+# Regexp to match symbols that can be accessed directly from C.
-+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
-+
-+# Transform the above into a raw symbol and a C symbol.
-+symxfrm='\1 \2\3 \3'
-+
-+# Transform an extracted symbol line into a proper C declaration
-+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
-+
-+# Transform an extracted symbol line into symbol name and symbol address
-+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
-+
-+# Define system-specific variables.
-+case $host_os in
-+aix*)
-+ symcode='[[BCDT]]'
-+ ;;
-+cygwin* | mingw* | pw32*)
-+ symcode='[[ABCDGISTW]]'
-+ ;;
-+hpux*) # Its linker distinguishes data from code symbols
-+ lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-+ lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
-+ ;;
-+irix* | nonstopux*)
-+ symcode='[[BCDEGRST]]'
-+ ;;
-+osf*)
-+ symcode='[[BCDEGQRST]]'
-+ ;;
-+solaris* | sysv5*)
-+ symcode='[[BDT]]'
-+ ;;
-+sysv4)
-+ symcode='[[DFNSTU]]'
-+ ;;
-+esac
-+
-+# Handle CRLF in mingw tool chain
-+opt_cr=
-+case $host_os in
-+mingw*)
-+ opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
-+ ;;
-+esac
-+
-+# If we're using GNU nm, then use its standard symbol codes.
-+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
-+ symcode='[[ABCDGISTW]]'
-+fi
-+
-+# Try without a prefix undercore, then with it.
-+for ac_symprfx in "" "_"; do
-+
-+ # Write the raw and C identifiers.
-+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
-+
-+ # Check to see that the pipe works correctly.
-+ pipe_works=no
-+ rm -f conftest*
-+ cat > conftest.$ac_ext <<EOF
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+char nm_test_var;
-+void nm_test_func(){}
-+#ifdef __cplusplus
-+}
-+#endif
-+int main(){nm_test_var='a';nm_test_func();return(0);}
-+EOF
-+
-+ if AC_TRY_EVAL(ac_compile); then
-+ # Now try to grab the symbols.
-+ nlist=conftest.nm
-+ if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
-+ # Try sorting and uniquifying the output.
-+ if sort "$nlist" | uniq > "$nlist"T; then
-+ mv -f "$nlist"T "$nlist"
-+ else
-+ rm -f "$nlist"T
-+ fi
-+
-+ # Make sure that we snagged all the symbols we need.
-+ if egrep ' nm_test_var$' "$nlist" >/dev/null; then
-+ if egrep ' nm_test_func$' "$nlist" >/dev/null; then
-+ cat <<EOF > conftest.$ac_ext
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
-+EOF
-+ # Now generate the symbol file.
-+ eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
-+
-+ cat <<EOF >> conftest.$ac_ext
-+#if defined (__STDC__) && __STDC__
-+# define lt_ptr void *
-+#else
-+# define lt_ptr char *
-+# define const
-+#endif
-+
-+/* The mapping between symbol names and symbols. */
-+const struct {
-+ const char *name;
-+ lt_ptr address;
-+}
-+lt_preloaded_symbols[[]] =
-+{
-+EOF
-+ sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
-+ cat <<\EOF >> conftest.$ac_ext
-+ {0, (lt_ptr) 0}
-+};
-+
-+#ifdef __cplusplus
-+}
-+#endif
-+EOF
-+ # Now try linking the two files.
-+ mv conftest.$ac_objext conftstm.$ac_objext
-+ save_LIBS="$LIBS"
-+ save_CFLAGS="$CFLAGS"
-+ LIBS="conftstm.$ac_objext"
-+ CFLAGS="$CFLAGS$no_builtin_flag"
-+ if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
-+ pipe_works=yes
-+ fi
-+ LIBS="$save_LIBS"
-+ CFLAGS="$save_CFLAGS"
-+ else
-+ echo "cannot find nm_test_func in $nlist" >&AC_FD_CC
-+ fi
-+ else
-+ echo "cannot find nm_test_var in $nlist" >&AC_FD_CC
-+ fi
-+ else
-+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC
-+ fi
-+ else
-+ echo "$progname: failed program was:" >&AC_FD_CC
-+ cat conftest.$ac_ext >&5
-+ fi
-+ rm -f conftest* conftst*
-+
-+ # Do not use the global_symbol_pipe unless it works.
-+ if test "$pipe_works" = yes; then
-+ break
-+ else
-+ lt_cv_sys_global_symbol_pipe=
-+ fi
-+done
-+])
-+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
-+if test -z "$lt_cv_sys_global_symbol_pipe"; then
-+ global_symbol_to_cdecl=
-+ global_symbol_to_c_name_address=
-+else
-+ global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
-+ global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
-+fi
-+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
-+then
-+ AC_MSG_RESULT(failed)
-+else
-+ AC_MSG_RESULT(ok)
-+fi
-+]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
-+
-+# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
-+# ---------------------------------
-+AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
-+[# Find the correct PATH separator. Usually this is `:', but
-+# DJGPP uses `;' like DOS.
-+if test "X${PATH_SEPARATOR+set}" != Xset; then
-+ UNAME=${UNAME-`uname 2>/dev/null`}
-+ case X$UNAME in
-+ *-DOS) lt_cv_sys_path_separator=';' ;;
-+ *) lt_cv_sys_path_separator=':' ;;
-+ esac
-+ PATH_SEPARATOR=$lt_cv_sys_path_separator
-+fi
-+])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
-+
-+# _LT_AC_PROG_ECHO_BACKSLASH
-+# --------------------------
-+# Add some code to the start of the generated configure script which
-+# will find an echo command which doesn't interpret backslashes.
-+AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
-+[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
-+ [AC_DIVERT_PUSH(NOTICE)])
-+_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
-+
-+# Check that we are running under the correct shell.
-+SHELL=${CONFIG_SHELL-/bin/sh}
-+
-+case X$ECHO in
-+X*--fallback-echo)
-+ # Remove one level of quotation (which was required for Make).
-+ ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
-+ ;;
-+esac
-+
-+echo=${ECHO-echo}
-+if test "X[$]1" = X--no-reexec; then
-+ # Discard the --no-reexec flag, and continue.
-+ shift
-+elif test "X[$]1" = X--fallback-echo; then
-+ # Avoid inline document here, it may be left over
-+ :
-+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
-+ # Yippee, $echo works!
-+ :
-+else
-+ # Restart under the correct shell.
-+ exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
-+fi
-+
-+if test "X[$]1" = X--fallback-echo; then
-+ # used as fallback echo
-+ shift
-+ cat <<EOF
-+$*
-+EOF
-+ exit 0
-+fi
-+
-+# The HP-UX ksh and POSIX shell print the target directory to stdout
-+# if CDPATH is set.
-+if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-+
-+if test -z "$ECHO"; then
-+if test "X${echo_test_string+set}" != Xset; then
-+# find a string as large as possible, as long as the shell can cope with it
-+ for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
-+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
-+ if (echo_test_string="`eval $cmd`") 2>/dev/null &&
-+ echo_test_string="`eval $cmd`" &&
-+ (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
-+ then
-+ break
-+ fi
-+ done
-+fi
-+
-+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ :
-+else
-+ # The Solaris, AIX, and Digital Unix default echo programs unquote
-+ # backslashes. This makes it impossible to quote backslashes using
-+ # echo "$something" | sed 's/\\/\\\\/g'
-+ #
-+ # So, first we look for a working echo in the user's PATH.
-+
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-+ for dir in $PATH /usr/ucb; do
-+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
-+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ echo="$dir/echo"
-+ break
-+ fi
-+ done
-+ IFS="$save_ifs"
-+
-+ if test "X$echo" = Xecho; then
-+ # We didn't find a better echo, so look for alternatives.
-+ if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ # This shell has a builtin print -r that does the trick.
-+ echo='print -r'
-+ elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
-+ test "X$CONFIG_SHELL" != X/bin/ksh; then
-+ # If we have ksh, try running configure again with it.
-+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-+ export ORIGINAL_CONFIG_SHELL
-+ CONFIG_SHELL=/bin/ksh
-+ export CONFIG_SHELL
-+ exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
-+ else
-+ # Try using printf.
-+ echo='printf %s\n'
-+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ # Cool, printf works
-+ :
-+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
-+ test "X$echo_testing_string" = 'X\t' &&
-+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
-+ export CONFIG_SHELL
-+ SHELL="$CONFIG_SHELL"
-+ export SHELL
-+ echo="$CONFIG_SHELL [$]0 --fallback-echo"
-+ elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
-+ test "X$echo_testing_string" = 'X\t' &&
-+ echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ echo="$CONFIG_SHELL [$]0 --fallback-echo"
-+ else
-+ # maybe with a smaller string...
-+ prev=:
-+
-+ for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
-+ if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
-+ then
-+ break
-+ fi
-+ prev="$cmd"
-+ done
-+
-+ if test "$prev" != 'sed 50q "[$]0"'; then
-+ echo_test_string=`eval $prev`
-+ export echo_test_string
-+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
-+ else
-+ # Oops. We lost completely, so just stick with echo.
-+ echo=echo
-+ fi
-+ fi
-+ fi
-+ fi
-+fi
-+fi
-+
-+# Copy echo and quote the copy suitably for passing to libtool from
-+# the Makefile, instead of quoting the original, which is used later.
-+ECHO=$echo
-+if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
-+ ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
-+fi
-+
-+AC_SUBST(ECHO)
-+AC_DIVERT_POP
-+])# _LT_AC_PROG_ECHO_BACKSLASH
-+
-+# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
-+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-+# ------------------------------------------------------------------
-+AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
-+[if test "$cross_compiling" = yes; then :
-+ [$4]
-+else
-+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
-+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-+ lt_status=$lt_dlunknown
-+ cat > conftest.$ac_ext <<EOF
-+[#line __oline__ "configure"
-+#include "confdefs.h"
-+
-+#if HAVE_DLFCN_H
-+#include <dlfcn.h>
-+#endif
-+
-+#include <stdio.h>
-+
-+#ifdef RTLD_GLOBAL
-+# define LT_DLGLOBAL RTLD_GLOBAL
-+#else
-+# ifdef DL_GLOBAL
-+# define LT_DLGLOBAL DL_GLOBAL
-+# else
-+# define LT_DLGLOBAL 0
-+# endif
-+#endif
-+
-+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-+ find out it does not work in some platform. */
-+#ifndef LT_DLLAZY_OR_NOW
-+# ifdef RTLD_LAZY
-+# define LT_DLLAZY_OR_NOW RTLD_LAZY
-+# else
-+# ifdef DL_LAZY
-+# define LT_DLLAZY_OR_NOW DL_LAZY
-+# else
-+# ifdef RTLD_NOW
-+# define LT_DLLAZY_OR_NOW RTLD_NOW
-+# else
-+# ifdef DL_NOW
-+# define LT_DLLAZY_OR_NOW DL_NOW
-+# else
-+# define LT_DLLAZY_OR_NOW 0
-+# endif
-+# endif
-+# endif
-+# endif
-+#endif
-+
-+#ifdef __cplusplus
-+extern "C" void exit (int);
-+#endif
-+
-+void fnord() { int i=42;}
-+int main ()
-+{
-+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-+ int status = $lt_dlunknown;
-+
-+ if (self)
-+ {
-+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
-+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
-+ /* dlclose (self); */
-+ }
-+
-+ exit (status);
-+}]
-+EOF
-+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
-+ (./conftest; exit; ) 2>/dev/null
-+ lt_status=$?
-+ case x$lt_status in
-+ x$lt_dlno_uscore) $1 ;;
-+ x$lt_dlneed_uscore) $2 ;;
-+ x$lt_unknown|x*) $3 ;;
-+ esac
-+ else :
-+ # compilation failed
-+ $3
-+ fi
-+fi
-+rm -fr conftest*
-+])# _LT_AC_TRY_DLOPEN_SELF
-+
-+# AC_LIBTOOL_DLOPEN_SELF
-+# -------------------
-+AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
-+[if test "x$enable_dlopen" != xyes; then
-+ enable_dlopen=unknown
-+ enable_dlopen_self=unknown
-+ enable_dlopen_self_static=unknown
-+else
-+ lt_cv_dlopen=no
-+ lt_cv_dlopen_libs=
-+
-+ case $host_os in
-+ beos*)
-+ lt_cv_dlopen="load_add_on"
-+ lt_cv_dlopen_libs=
-+ lt_cv_dlopen_self=yes
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ lt_cv_dlopen="LoadLibrary"
-+ lt_cv_dlopen_libs=
-+ ;;
-+
-+ *)
-+ AC_CHECK_FUNC([shl_load],
-+ [lt_cv_dlopen="shl_load"],
-+ [AC_CHECK_LIB([dld], [shl_load],
-+ [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
-+ [AC_CHECK_FUNC([dlopen],
-+ [lt_cv_dlopen="dlopen"],
-+ [AC_CHECK_LIB([dl], [dlopen],
-+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
-+ [AC_CHECK_LIB([svld], [dlopen],
-+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
-+ [AC_CHECK_LIB([dld], [dld_link],
-+ [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
-+ ])
-+ ])
-+ ])
-+ ])
-+ ])
-+ ;;
-+ esac
-+
-+ if test "x$lt_cv_dlopen" != xno; then
-+ enable_dlopen=yes
-+ else
-+ enable_dlopen=no
-+ fi
-+
-+ case $lt_cv_dlopen in
-+ dlopen)
-+ save_CPPFLAGS="$CPPFLAGS"
-+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
-+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-+
-+ save_LDFLAGS="$LDFLAGS"
-+ eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-+
-+ save_LIBS="$LIBS"
-+ LIBS="$lt_cv_dlopen_libs $LIBS"
-+
-+ AC_CACHE_CHECK([whether a program can dlopen itself],
-+ lt_cv_dlopen_self, [dnl
-+ _LT_AC_TRY_DLOPEN_SELF(
-+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
-+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
-+ ])
-+
-+ if test "x$lt_cv_dlopen_self" = xyes; then
-+ LDFLAGS="$LDFLAGS $link_static_flag"
-+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
-+ lt_cv_dlopen_self_static, [dnl
-+ _LT_AC_TRY_DLOPEN_SELF(
-+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
-+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
-+ ])
-+ fi
-+
-+ CPPFLAGS="$save_CPPFLAGS"
-+ LDFLAGS="$save_LDFLAGS"
-+ LIBS="$save_LIBS"
-+ ;;
-+ esac
-+
-+ case $lt_cv_dlopen_self in
-+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
-+ *) enable_dlopen_self=unknown ;;
-+ esac
-+
-+ case $lt_cv_dlopen_self_static in
-+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
-+ *) enable_dlopen_self_static=unknown ;;
-+ esac
-+fi
-+])# AC_LIBTOOL_DLOPEN_SELF
-+
-+AC_DEFUN([_LT_AC_LTCONFIG_HACK],
-+[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
-+# Sed substitution that helps us do robust quoting. It backslashifies
-+# metacharacters that are still active within double-quoted strings.
-+Xsed='sed -e s/^X//'
-+sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g'
-+
-+# Same as above, but do not quote variable references.
-+double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g'
-+
-+# Sed substitution to delay expansion of an escaped shell variable in a
-+# double_quote_subst'ed string.
-+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-+
-+# Constants:
-+rm="rm -f"
-+
-+# Global variables:
-+default_ofile=libtool
-+can_build_shared=yes
-+
-+# All known linkers require a `.a' archive for static linking (except M$VC,
-+# which needs '.lib').
-+libext=a
-+ltmain="$ac_aux_dir/ltmain.sh"
-+ofile="$default_ofile"
-+with_gnu_ld="$lt_cv_prog_gnu_ld"
-+need_locks="$enable_libtool_lock"
-+
-+old_CC="$CC"
-+old_CFLAGS="$CFLAGS"
-+
-+# Set sane defaults for various variables
-+test -z "$AR" && AR=ar
-+test -z "$AR_FLAGS" && AR_FLAGS=cru
-+test -z "$AS" && AS=as
-+test -z "$CC" && CC=cc
-+test -z "$DLLTOOL" && DLLTOOL=dlltool
-+test -z "$LD" && LD=ld
-+test -z "$LN_S" && LN_S="ln -s"
-+test -z "$MAGIC_CMD" && MAGIC_CMD=file
-+test -z "$NM" && NM=nm
-+test -z "$OBJDUMP" && OBJDUMP=objdump
-+test -z "$RANLIB" && RANLIB=:
-+test -z "$STRIP" && STRIP=:
-+test -z "$ac_objext" && ac_objext=o
-+
-+if test x"$host" != x"$build"; then
-+ ac_tool_prefix=${host_alias}-
-+else
-+ ac_tool_prefix=
-+fi
-+
-+# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
-+case $host_os in
-+linux-gnu*) ;;
-+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
-+esac
-+
-+case $host_os in
-+aix3*)
-+ # AIX sometimes has problems with the GCC collect2 program. For some
-+ # reason, if we set the COLLECT_NAMES environment variable, the problems
-+ # vanish in a puff of smoke.
-+ if test "X${COLLECT_NAMES+set}" != Xset; then
-+ COLLECT_NAMES=
-+ export COLLECT_NAMES
-+ fi
-+ ;;
-+esac
-+
-+# Determine commands to create old-style static archives.
-+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
-+old_postinstall_cmds='chmod 644 $oldlib'
-+old_postuninstall_cmds=
-+
-+if test -n "$RANLIB"; then
-+ case $host_os in
-+ openbsd*)
-+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
-+ ;;
-+ *)
-+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
-+ ;;
-+ esac
-+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-+fi
-+
-+# Allow CC to be a program name with arguments.
-+set dummy $CC
-+compiler="[$]2"
-+
-+AC_MSG_CHECKING([for objdir])
-+rm -f .libs 2>/dev/null
-+mkdir .libs 2>/dev/null
-+if test -d .libs; then
-+ objdir=.libs
-+else
-+ # MS-DOS does not allow filenames that begin with a dot.
-+ objdir=_libs
-+fi
-+rmdir .libs 2>/dev/null
-+AC_MSG_RESULT($objdir)
-+
-+
-+AC_ARG_WITH(pic,
-+[ --with-pic try to use only PIC/non-PIC objects [default=use both]],
-+pic_mode="$withval", pic_mode=default)
-+test -z "$pic_mode" && pic_mode=default
-+
-+# We assume here that the value for lt_cv_prog_cc_pic will not be cached
-+# in isolation, and that seeing it set (from the cache) indicates that
-+# the associated values are set (in the cache) correctly too.
-+AC_MSG_CHECKING([for $compiler option to produce PIC])
-+AC_CACHE_VAL(lt_cv_prog_cc_pic,
-+[ lt_cv_prog_cc_pic=
-+ lt_cv_prog_cc_shlib=
-+ lt_cv_prog_cc_wl=
-+ lt_cv_prog_cc_static=
-+ lt_cv_prog_cc_no_builtin=
-+ lt_cv_prog_cc_can_build_shared=$can_build_shared
-+
-+ if test "$GCC" = yes; then
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-static'
-+
-+ case $host_os in
-+ aix*)
-+ # Below there is a dirty hack to force normal static linking with -ldl
-+ # The problem is because libdl dynamically linked with both libc and
-+ # libC (AIX C++ library), which obviously doesn't included in libraries
-+ # list by gcc. This cause undefined symbols with -static flags.
-+ # This hack allows C programs to be linked with "-static -ldl", but
-+ # not sure about C++ programs.
-+ lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
-+ ;;
-+ amigaos*)
-+ # FIXME: we need at least 68020 code to build shared libraries, but
-+ # adding the `-m68020' flag to GCC prevents building anything better,
-+ # like `-m68040'.
-+ lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
-+ ;;
-+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-+ # PIC is the default for these OSes.
-+ ;;
-+ darwin* | rhapsody*)
-+ # PIC is the default on this platform
-+ # Common symbols not allowed in MH_DYLIB files
-+ lt_cv_prog_cc_pic='-fno-common'
-+ ;;
-+ cygwin* | mingw* | pw32* | os2*)
-+ # This hack is so that the source file can tell whether it is being
-+ # built for inclusion in a dll (and should export symbols for example).
-+ lt_cv_prog_cc_pic='-DDLL_EXPORT'
-+ ;;
-+ sysv4*MP*)
-+ if test -d /usr/nec; then
-+ lt_cv_prog_cc_pic=-Kconform_pic
-+ fi
-+ ;;
-+ *)
-+ lt_cv_prog_cc_pic='-fPIC'
-+ ;;
-+ esac
-+ else
-+ # PORTME Check for PIC flags for the system compiler.
-+ case $host_os in
-+ aix3* | aix4* | aix5*)
-+ lt_cv_prog_cc_wl='-Wl,'
-+ # All AIX code is PIC.
-+ if test "$host_cpu" = ia64; then
-+ # AIX 5 now supports IA64 processor
-+ lt_cv_prog_cc_static='-Bstatic'
-+ else
-+ lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
-+ fi
-+ ;;
-+
-+ hpux9* | hpux10* | hpux11*)
-+ # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
-+ lt_cv_prog_cc_pic='+Z'
-+ ;;
-+
-+ irix5* | irix6* | nonstopux*)
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-non_shared'
-+ # PIC (with -KPIC) is the default.
-+ ;;
-+
-+ cygwin* | mingw* | pw32* | os2*)
-+ # This hack is so that the source file can tell whether it is being
-+ # built for inclusion in a dll (and should export symbols for example).
-+ lt_cv_prog_cc_pic='-DDLL_EXPORT'
-+ ;;
-+
-+ newsos6)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ ;;
-+
-+ osf3* | osf4* | osf5*)
-+ # All OSF/1 code is PIC.
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-non_shared'
-+ ;;
-+
-+ sco3.2v5*)
-+ lt_cv_prog_cc_pic='-Kpic'
-+ lt_cv_prog_cc_static='-dn'
-+ lt_cv_prog_cc_shlib='-belf'
-+ ;;
-+
-+ solaris*)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Wl,'
-+ ;;
-+
-+ sunos4*)
-+ lt_cv_prog_cc_pic='-PIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Qoption ld '
-+ ;;
-+
-+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Wl,'
-+ ;;
-+
-+ uts4*)
-+ lt_cv_prog_cc_pic='-pic'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ ;;
-+
-+ sysv4*MP*)
-+ if test -d /usr/nec ;then
-+ lt_cv_prog_cc_pic='-Kconform_pic'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ fi
-+ ;;
-+
-+ *)
-+ lt_cv_prog_cc_can_build_shared=no
-+ ;;
-+ esac
-+ fi
-+])
-+if test -z "$lt_cv_prog_cc_pic"; then
-+ AC_MSG_RESULT([none])
-+else
-+ AC_MSG_RESULT([$lt_cv_prog_cc_pic])
-+
-+ # Check to make sure the pic_flag actually works.
-+ AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works])
-+ AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
-+ AC_TRY_COMPILE([], [], [dnl
-+ case $host_os in
-+ hpux9* | hpux10* | hpux11*)
-+ # On HP-UX, both CC and GCC only warn that PIC is supported... then
-+ # they create non-PIC objects. So, if there were any warnings, we
-+ # assume that PIC is not supported.
-+ if test -s conftest.err; then
-+ lt_cv_prog_cc_pic_works=no
-+ else
-+ lt_cv_prog_cc_pic_works=yes
-+ fi
-+ ;;
-+ *)
-+ lt_cv_prog_cc_pic_works=yes
-+ ;;
-+ esac
-+ ], [dnl
-+ lt_cv_prog_cc_pic_works=no
-+ ])
-+ CFLAGS="$save_CFLAGS"
-+ ])
-+
-+ if test "X$lt_cv_prog_cc_pic_works" = Xno; then
-+ lt_cv_prog_cc_pic=
-+ lt_cv_prog_cc_can_build_shared=no
-+ else
-+ lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
-+ fi
-+
-+ AC_MSG_RESULT([$lt_cv_prog_cc_pic_works])
-+fi
-+
-+# Check for any special shared library compilation flags.
-+if test -n "$lt_cv_prog_cc_shlib"; then
-+ AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries])
-+ if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then :
-+ else
-+ AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure])
-+ lt_cv_prog_cc_can_build_shared=no
-+ fi
-+fi
-+
-+AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works])
-+AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl
-+ lt_cv_prog_cc_static_works=no
-+ save_LDFLAGS="$LDFLAGS"
-+ LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
-+ AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes])
-+ LDFLAGS="$save_LDFLAGS"
-+])
-+
-+# Belt *and* braces to stop my trousers falling down:
-+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
-+AC_MSG_RESULT([$lt_cv_prog_cc_static_works])
-+
-+pic_flag="$lt_cv_prog_cc_pic"
-+special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
-+wl="$lt_cv_prog_cc_wl"
-+link_static_flag="$lt_cv_prog_cc_static"
-+no_builtin_flag="$lt_cv_prog_cc_no_builtin"
-+can_build_shared="$lt_cv_prog_cc_can_build_shared"
-+
-+
-+# Check to see if options -o and -c are simultaneously supported by compiler
-+AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext])
-+AC_CACHE_VAL([lt_cv_compiler_c_o], [
-+$rm -r conftest 2>/dev/null
-+mkdir conftest
-+cd conftest
-+echo "int some_variable = 0;" > conftest.$ac_ext
-+mkdir out
-+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
-+# that will create temporary files in the current directory regardless of
-+# the output directory. Thus, making CWD read-only will cause this test
-+# to fail, enabling locking or at least warning the user not to do parallel
-+# builds.
-+chmod -w .
-+save_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
-+compiler_c_o=no
-+if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s out/conftest.err; then
-+ lt_cv_compiler_c_o=no
-+ else
-+ lt_cv_compiler_c_o=yes
-+ fi
-+else
-+ # Append any errors to the config.log.
-+ cat out/conftest.err 1>&AC_FD_CC
-+ lt_cv_compiler_c_o=no
-+fi
-+CFLAGS="$save_CFLAGS"
-+chmod u+w .
-+$rm conftest* out/*
-+rmdir out
-+cd ..
-+rmdir conftest
-+$rm -r conftest 2>/dev/null
-+])
-+compiler_c_o=$lt_cv_compiler_c_o
-+AC_MSG_RESULT([$compiler_c_o])
-+
-+if test x"$compiler_c_o" = x"yes"; then
-+ # Check to see if we can write to a .lo
-+ AC_MSG_CHECKING([if $compiler supports -c -o file.lo])
-+ AC_CACHE_VAL([lt_cv_compiler_o_lo], [
-+ lt_cv_compiler_o_lo=no
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -c -o conftest.lo"
-+ save_objext="$ac_objext"
-+ ac_objext=lo
-+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s conftest.err; then
-+ lt_cv_compiler_o_lo=no
-+ else
-+ lt_cv_compiler_o_lo=yes
-+ fi
-+ ])
-+ ac_objext="$save_objext"
-+ CFLAGS="$save_CFLAGS"
-+ ])
-+ compiler_o_lo=$lt_cv_compiler_o_lo
-+ AC_MSG_RESULT([$compiler_o_lo])
-+else
-+ compiler_o_lo=no
-+fi
-+
-+# Check to see if we can do hard links to lock some files if needed
-+hard_links="nottested"
-+if test "$compiler_c_o" = no && test "$need_locks" != no; then
-+ # do not overwrite the value of need_locks provided by the user
-+ AC_MSG_CHECKING([if we can lock with hard links])
-+ hard_links=yes
-+ $rm conftest*
-+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
-+ touch conftest.a
-+ ln conftest.a conftest.b 2>&5 || hard_links=no
-+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
-+ AC_MSG_RESULT([$hard_links])
-+ if test "$hard_links" = no; then
-+ AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe])
-+ need_locks=warn
-+ fi
-+else
-+ need_locks=no
-+fi
-+
-+if test "$GCC" = yes; then
-+ # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
-+ AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions])
-+ echo "int some_variable = 0;" > conftest.$ac_ext
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
-+ compiler_rtti_exceptions=no
-+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s conftest.err; then
-+ compiler_rtti_exceptions=no
-+ else
-+ compiler_rtti_exceptions=yes
-+ fi
-+ ])
-+ CFLAGS="$save_CFLAGS"
-+ AC_MSG_RESULT([$compiler_rtti_exceptions])
-+
-+ if test "$compiler_rtti_exceptions" = "yes"; then
-+ no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
-+ else
-+ no_builtin_flag=' -fno-builtin'
-+ fi
-+fi
-+
-+# See if the linker supports building shared libraries.
-+AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries])
-+
-+allow_undefined_flag=
-+no_undefined_flag=
-+need_lib_prefix=unknown
-+need_version=unknown
-+# when you set need_version to no, make sure it does not cause -set_version
-+# flags to be left without arguments
-+archive_cmds=
-+archive_expsym_cmds=
-+old_archive_from_new_cmds=
-+old_archive_from_expsyms_cmds=
-+export_dynamic_flag_spec=
-+whole_archive_flag_spec=
-+thread_safe_flag_spec=
-+hardcode_into_libs=no
-+hardcode_libdir_flag_spec=
-+hardcode_libdir_separator=
-+hardcode_direct=no
-+hardcode_minus_L=no
-+hardcode_shlibpath_var=unsupported
-+runpath_var=
-+link_all_deplibs=unknown
-+always_export_symbols=no
-+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
-+# include_expsyms should be a list of space-separated symbols to be *always*
-+# included in the symbol list
-+include_expsyms=
-+# exclude_expsyms can be an egrep regular expression of symbols to exclude
-+# it will be wrapped by ` (' and `)$', so one must not match beginning or
-+# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-+# as well as any symbol that contains `d'.
-+exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
-+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-+# platforms (ab)use it in PIC code, but their linkers get confused if
-+# the symbol is explicitly referenced. Since portable code cannot
-+# rely on this symbol name, it's probably fine to never include it in
-+# preloaded symbol tables.
-+extract_expsyms_cmds=
-+
-+case $host_os in
-+cygwin* | mingw* | pw32*)
-+ # FIXME: the MSVC++ port hasn't been tested in a loooong time
-+ # When not using gcc, we currently assume that we are using
-+ # Microsoft Visual C++.
-+ if test "$GCC" != yes; then
-+ with_gnu_ld=no
-+ fi
-+ ;;
-+openbsd*)
-+ with_gnu_ld=no
-+ ;;
-+esac
-+
-+ld_shlibs=yes
-+if test "$with_gnu_ld" = yes; then
-+ # If archive_cmds runs LD, not CC, wlarc should be empty
-+ wlarc='${wl}'
-+
-+ # See if GNU ld supports shared libraries.
-+ case $host_os in
-+ aix3* | aix4* | aix5*)
-+ # On AIX, the GNU linker is very broken
-+ # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
-+ ld_shlibs=no
-+ cat <<EOF 1>&2
-+
-+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-+*** to be unable to reliably create shared libraries on AIX.
-+*** Therefore, libtool is disabling shared libraries support. If you
-+*** really care for shared libraries, you may want to modify your PATH
-+*** so that a non-GNU linker is found, and then restart.
-+
-+EOF
-+ ;;
-+
-+ amigaos*)
-+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+
-+ # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-+ # that the semantics of dynamic libraries on AmigaOS, at least up
-+ # to version 4, is to share data among multiple programs linked
-+ # with the same dynamic library. Since this doesn't match the
-+ # behavior of shared libraries on other platforms, we can use
-+ # them.
-+ ld_shlibs=no
-+ ;;
-+
-+ beos*)
-+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ allow_undefined_flag=unsupported
-+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
-+ # support --undefined. This deserves some investigation. FIXME
-+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ # hardcode_libdir_flag_spec is actually meaningless, as there is
-+ # no search path for DLLs.
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ allow_undefined_flag=unsupported
-+ always_export_symbols=yes
-+
-+ extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
-+ sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
-+ test -f $output_objdir/impgen.exe || (cd $output_objdir && \
-+ if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
-+ else $CC -o impgen impgen.c ; fi)~
-+ $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
-+
-+ old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
-+
-+ # cygwin and mingw dlls have different entry points and sets of symbols
-+ # to exclude.
-+ # FIXME: what about values for MSVC?
-+ dll_entry=__cygwin_dll_entry@12
-+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
-+ case $host_os in
-+ mingw*)
-+ # mingw values
-+ dll_entry=_DllMainCRTStartup@12
-+ dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
-+ ;;
-+ esac
-+
-+ # mingw and cygwin differ, and it's simplest to just exclude the union
-+ # of the two symbol sets.
-+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
-+
-+ # recent cygwin and mingw systems supply a stub DllMain which the user
-+ # can override, but on older systems we have to supply one (in ltdll.c)
-+ if test "x$lt_cv_need_dllmain" = "xyes"; then
-+ ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
-+ ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
-+ test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
-+ else
-+ ltdll_obj=
-+ ltdll_cmds=
-+ fi
-+
-+ # Extract the symbol export list from an `--export-all' def file,
-+ # then regenerate the def file from the symbol export list, so that
-+ # the compiled dll only exports the symbol export list.
-+ # Be careful not to strip the DATA tag left be newer dlltools.
-+ export_symbols_cmds="$ltdll_cmds"'
-+ $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
-+ sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
-+
-+ # If the export-symbols file already is a .def file (1st line
-+ # is EXPORTS), use it as is.
-+ # If DATA tags from a recent dlltool are present, honour them!
-+ archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
-+ cp $export_symbols $output_objdir/$soname-def;
-+ else
-+ echo EXPORTS > $output_objdir/$soname-def;
-+ _lt_hint=1;
-+ cat $export_symbols | while read symbol; do
-+ set dummy \$symbol;
-+ case \[$]# in
-+ 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
-+ 4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
-+ *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
-+ esac;
-+ _lt_hint=`expr 1 + \$_lt_hint`;
-+ done;
-+ fi~
-+ '"$ltdll_cmds"'
-+ $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
-+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
-+ $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
-+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
-+ $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
-+ ;;
-+
-+ netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-+ wlarc=
-+ else
-+ archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ fi
-+ ;;
-+
-+ solaris* | sysv5*)
-+ if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
-+ ld_shlibs=no
-+ cat <<EOF 1>&2
-+
-+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-+*** create shared libraries on Solaris systems. Therefore, libtool
-+*** is disabling shared libraries support. We urge you to upgrade GNU
-+*** binutils to release 2.9.1 or newer. Another option is to modify
-+*** your PATH or compiler configuration so that the native linker is
-+*** used, and then restart.
-+
-+EOF
-+ elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+
-+ sunos4*)
-+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ wlarc=
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ *)
-+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+ esac
-+
-+ if test "$ld_shlibs" = yes; then
-+ runpath_var=LD_RUN_PATH
-+ hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
-+ export_dynamic_flag_spec='${wl}--export-dynamic'
-+ case $host_os in
-+ cygwin* | mingw* | pw32*)
-+ # dlltool doesn't understand --whole-archive et. al.
-+ whole_archive_flag_spec=
-+ ;;
-+ *)
-+ # ancient GNU ld didn't support --whole-archive et. al.
-+ if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
-+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-+ else
-+ whole_archive_flag_spec=
-+ fi
-+ ;;
-+ esac
-+ fi
-+else
-+ # PORTME fill in a description of your system's linker (not GNU ld)
-+ case $host_os in
-+ aix3*)
-+ allow_undefined_flag=unsupported
-+ always_export_symbols=yes
-+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
-+ # Note: this linker hardcodes the directories in LIBPATH if there
-+ # are no directories specified by -L.
-+ hardcode_minus_L=yes
-+ if test "$GCC" = yes && test -z "$link_static_flag"; then
-+ # Neither direct hardcoding nor static linking is supported with a
-+ # broken collect2.
-+ hardcode_direct=unsupported
-+ fi
-+ ;;
-+
-+ aix4* | aix5*)
-+ if test "$host_cpu" = ia64; then
-+ # On IA64, the linker does run time linking by default, so we don't
-+ # have to do anything special.
-+ aix_use_runtimelinking=no
-+ exp_sym_flag='-Bexport'
-+ no_entry_flag=""
-+ else
-+ aix_use_runtimelinking=no
-+
-+ # Test if we are trying to use run time linking or normal
-+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-+ # need to do runtime linking.
-+ case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
-+ for ld_flag in $LDFLAGS; do
-+ case $ld_flag in
-+ *-brtl*)
-+ aix_use_runtimelinking=yes
-+ break
-+ ;;
-+ esac
-+ done
-+ esac
-+
-+ exp_sym_flag='-bexport'
-+ no_entry_flag='-bnoentry'
-+ fi
-+
-+ # When large executables or shared objects are built, AIX ld can
-+ # have problems creating the table of contents. If linking a library
-+ # or program results in "error TOC overflow" add -mminimal-toc to
-+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
-+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-+
-+ hardcode_direct=yes
-+ archive_cmds=''
-+ hardcode_libdir_separator=':'
-+ if test "$GCC" = yes; then
-+ case $host_os in aix4.[[012]]|aix4.[[012]].*)
-+ collect2name=`${CC} -print-prog-name=collect2`
-+ if test -f "$collect2name" && \
-+ strings "$collect2name" | grep resolve_lib_name >/dev/null
-+ then
-+ # We have reworked collect2
-+ hardcode_direct=yes
-+ else
-+ # We have old collect2
-+ hardcode_direct=unsupported
-+ # It fails to find uninstalled libraries when the uninstalled
-+ # path is not listed in the libpath. Setting hardcode_minus_L
-+ # to unsupported forces relinking
-+ hardcode_minus_L=yes
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_libdir_separator=
-+ fi
-+ esac
-+
-+ shared_flag='-shared'
-+ else
-+ # not using gcc
-+ if test "$host_cpu" = ia64; then
-+ shared_flag='${wl}-G'
-+ else
-+ if test "$aix_use_runtimelinking" = yes; then
-+ shared_flag='${wl}-G'
-+ else
-+ shared_flag='${wl}-bM:SRE'
-+ fi
-+ fi
-+ fi
-+
-+ # It seems that -bexpall can do strange things, so it is better to
-+ # generate a list of symbols to export.
-+ always_export_symbols=yes
-+ if test "$aix_use_runtimelinking" = yes; then
-+ # Warning - without using the other runtime loading flags (-brtl),
-+ # -berok will link without error, but may produce a broken library.
-+ allow_undefined_flag='-berok'
-+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
-+ archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-+ else
-+ if test "$host_cpu" = ia64; then
-+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
-+ allow_undefined_flag="-z nodefs"
-+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
-+ else
-+ hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
-+ # Warning - without using the other run time loading flags,
-+ # -berok will link without error, but may produce a broken library.
-+ allow_undefined_flag='${wl}-berok'
-+ # This is a bit strange, but is similar to how AIX traditionally builds
-+ # it's shared libraries.
-+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname'
-+ fi
-+ fi
-+ ;;
-+
-+ amigaos*)
-+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+ # see comment about different semantics on the GNU ld section
-+ ld_shlibs=no
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ # When not using gcc, we currently assume that we are using
-+ # Microsoft Visual C++.
-+ # hardcode_libdir_flag_spec is actually meaningless, as there is
-+ # no search path for DLLs.
-+ hardcode_libdir_flag_spec=' '
-+ allow_undefined_flag=unsupported
-+ # Tell ltmain to make .lib files, not .a files.
-+ libext=lib
-+ # FIXME: Setting linknames here is a bad hack.
-+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
-+ # The linker will automatically build a .lib file if we build a DLL.
-+ old_archive_from_new_cmds='true'
-+ # FIXME: Should let the user specify the lib program.
-+ old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
-+ fix_srcfile_path='`cygpath -w "$srcfile"`'
-+ ;;
-+
-+ darwin* | rhapsody*)
-+ case "$host_os" in
-+ rhapsody* | darwin1.[[012]])
-+ allow_undefined_flag='-undefined suppress'
-+ ;;
-+ *) # Darwin 1.3 on
-+ allow_undefined_flag='-flat_namespace -undefined suppress'
-+ ;;
-+ esac
-+ # FIXME: Relying on posixy $() will cause problems for
-+ # cross-compilation, but unfortunately the echo tests do not
-+ # yet detect zsh echo's removal of \ escapes. Also zsh mangles
-+ # `"' quotes if we put them in here... so don't!
-+ archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
-+ # We need to add '_' to the symbols in $export_symbols first
-+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ whole_archive_flag_spec='-all_load $convenience'
-+ ;;
-+
-+ freebsd1*)
-+ ld_shlibs=no
-+ ;;
-+
-+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
-+ # support. Future versions do this automatically, but an explicit c++rt0.o
-+ # does not break anything, and helps significantly (at the cost of a little
-+ # extra space).
-+ freebsd2.2*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
-+ freebsd2*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-+ freebsd*)
-+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ hpux9* | hpux10* | hpux11*)
-+ case $host_os in
-+ hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
-+ *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
-+ esac
-+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes # Not in the search PATH, but as the default
-+ # location of the library.
-+ export_dynamic_flag_spec='${wl}-E'
-+ ;;
-+
-+ irix5* | irix6* | nonstopux*)
-+ if test "$GCC" = yes; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ else
-+ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='-rpath $libdir'
-+ fi
-+ hardcode_libdir_separator=:
-+ link_all_deplibs=yes
-+ ;;
-+
-+ netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
-+ else
-+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
-+ fi
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ newsos6)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ openbsd*)
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-+ export_dynamic_flag_spec='${wl}-E'
-+ else
-+ case "$host_os" in
-+ openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ ;;
-+ *)
-+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-+ ;;
-+ esac
-+ fi
-+ ;;
-+
-+ os2*)
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+ allow_undefined_flag=unsupported
-+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
-+ ;;
-+
-+ osf3*)
-+ if test "$GCC" = yes; then
-+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ else
-+ allow_undefined_flag=' -expect_unresolved \*'
-+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ fi
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ ;;
-+
-+ osf4* | osf5*) # as osf3* with the addition of -msym flag
-+ if test "$GCC" = yes; then
-+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ else
-+ allow_undefined_flag=' -expect_unresolved \*'
-+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
-+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
-+
-+ #Both c and cxx compiler support -rpath directly
-+ hardcode_libdir_flag_spec='-rpath $libdir'
-+ fi
-+ hardcode_libdir_separator=:
-+ ;;
-+
-+ sco3.2v5*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ runpath_var=LD_RUN_PATH
-+ hardcode_runpath_var=yes
-+ export_dynamic_flag_spec='${wl}-Bexport'
-+ ;;
-+
-+ solaris*)
-+ # gcc --version < 3.0 without binutils cannot create self contained
-+ # shared libraries reliably, requiring libgcc.a to resolve some of
-+ # the object symbols generated in some cases. Libraries that use
-+ # assert need libgcc.a to resolve __eprintf, for example. Linking
-+ # a copy of libgcc.a into every shared library to guarantee resolving
-+ # such symbols causes other problems: According to Tim Van Holder
-+ # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
-+ # (to the application) exception stack for one thing.
-+ no_undefined_flag=' -z defs'
-+ if test "$GCC" = yes; then
-+ case `$CC --version 2>/dev/null` in
-+ [[12]].*)
-+ cat <<EOF 1>&2
-+
-+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
-+*** create self contained shared libraries on Solaris systems, without
-+*** introducing a dependency on libgcc.a. Therefore, libtool is disabling
-+*** -no-undefined support, which will at least allow you to build shared
-+*** libraries. However, you may find that when you link such libraries
-+*** into an application without using GCC, you have to manually add
-+*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to
-+*** upgrade to a newer version of GCC. Another option is to rebuild your
-+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
-+
-+EOF
-+ no_undefined_flag=
-+ ;;
-+ esac
-+ fi
-+ # $CC -shared without GNU ld will not create a library from C++
-+ # object files and a static libstdc++, better avoid it by now
-+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_shlibpath_var=no
-+ case $host_os in
-+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
-+ *) # Supported since Solaris 2.6 (maybe 2.5.1?)
-+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
-+ esac
-+ link_all_deplibs=yes
-+ ;;
-+
-+ sunos4*)
-+ if test "x$host_vendor" = xsequent; then
-+ # Use $CC to link under sequent, because it throws in some extra .o
-+ # files that make .init and .fini sections work.
-+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
-+ else
-+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
-+ fi
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4)
-+ case $host_vendor in
-+ sni)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes # is this really true???
-+ ;;
-+ siemens)
-+ ## LD is ld it makes a PLAMLIB
-+ ## CC just makes a GrossModule.
-+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-+ reload_cmds='$CC -r -o $output$reload_objs'
-+ hardcode_direct=no
-+ ;;
-+ motorola)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie
-+ ;;
-+ esac
-+ runpath_var='LD_RUN_PATH'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4.3*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ export_dynamic_flag_spec='-Bexport'
-+ ;;
-+
-+ sysv5*)
-+ no_undefined_flag=' -z text'
-+ # $CC -shared without GNU ld will not create a library from C++
-+ # object files and a static libstdc++, better avoid it by now
-+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
-+ hardcode_libdir_flag_spec=
-+ hardcode_shlibpath_var=no
-+ runpath_var='LD_RUN_PATH'
-+ ;;
-+
-+ uts4*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ dgux*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4*MP*)
-+ if test -d /usr/nec; then
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ runpath_var=LD_RUN_PATH
-+ hardcode_runpath_var=yes
-+ ld_shlibs=yes
-+ fi
-+ ;;
-+
-+ sysv4.2uw2*)
-+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_minus_L=no
-+ hardcode_shlibpath_var=no
-+ hardcode_runpath_var=yes
-+ runpath_var=LD_RUN_PATH
-+ ;;
-+
-+ sysv5uw7* | unixware7*)
-+ no_undefined_flag='${wl}-z ${wl}text'
-+ if test "$GCC" = yes; then
-+ archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-+ else
-+ archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-+ fi
-+ runpath_var='LD_RUN_PATH'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ *)
-+ ld_shlibs=no
-+ ;;
-+ esac
-+fi
-+AC_MSG_RESULT([$ld_shlibs])
-+test "$ld_shlibs" = no && can_build_shared=no
-+
-+# Check hardcoding attributes.
-+AC_MSG_CHECKING([how to hardcode library paths into programs])
-+hardcode_action=
-+if test -n "$hardcode_libdir_flag_spec" || \
-+ test -n "$runpath_var"; then
-+
-+ # We can hardcode non-existant directories.
-+ if test "$hardcode_direct" != no &&
-+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
-+ # have to relink, otherwise we might link with an installed library
-+ # when we should be linking with a yet-to-be-installed one
-+ ## test "$hardcode_shlibpath_var" != no &&
-+ test "$hardcode_minus_L" != no; then
-+ # Linking always hardcodes the temporary library directory.
-+ hardcode_action=relink
-+ else
-+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
-+ hardcode_action=immediate
-+ fi
-+else
-+ # We cannot hardcode anything, or else we can only hardcode existing
-+ # directories.
-+ hardcode_action=unsupported
-+fi
-+AC_MSG_RESULT([$hardcode_action])
-+
-+striplib=
-+old_striplib=
-+AC_MSG_CHECKING([whether stripping libraries is possible])
-+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
-+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-+ AC_MSG_RESULT([yes])
-+else
-+ AC_MSG_RESULT([no])
-+fi
-+
-+reload_cmds='$LD$reload_flag -o $output$reload_objs'
-+test -z "$deplibs_check_method" && deplibs_check_method=unknown
-+
-+# PORTME Fill in your ld.so characteristics
-+AC_MSG_CHECKING([dynamic linker characteristics])
-+library_names_spec=
-+libname_spec='lib$name'
-+soname_spec=
-+postinstall_cmds=
-+postuninstall_cmds=
-+finish_cmds=
-+finish_eval=
-+shlibpath_var=
-+shlibpath_overrides_runpath=unknown
-+version_type=none
-+dynamic_linker="$host_os ld.so"
-+sys_lib_dlsearch_path_spec="/lib /usr/lib"
-+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-+
-+case $host_os in
-+aix3*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix $libname.a'
-+ shlibpath_var=LIBPATH
-+
-+ # AIX has no versioning support, so we append a major version to the name.
-+ soname_spec='${libname}${release}.so$major'
-+ ;;
-+
-+aix4* | aix5*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ hardcode_into_libs=yes
-+ if test "$host_cpu" = ia64; then
-+ # AIX 5 supports IA64
-+ library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ else
-+ # With GCC up to 2.95.x, collect2 would create an import file
-+ # for dependence libraries. The import file would start with
-+ # the line `#! .'. This would cause the generated library to
-+ # depend on `.', always an invalid library. This was fixed in
-+ # development snapshots of GCC prior to 3.0.
-+ case $host_os in
-+ aix4 | aix4.[[01]] | aix4.[[01]].*)
-+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
-+ echo ' yes '
-+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
-+ :
-+ else
-+ can_build_shared=no
-+ fi
-+ ;;
-+ esac
-+ # AIX (on Power*) has no versioning support, so currently we can
-+ # not hardcode correct soname into executable. Probably we can
-+ # add versioning support to collect2, so additional links can
-+ # be useful in future.
-+ if test "$aix_use_runtimelinking" = yes; then
-+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
-+ # instead of lib<name>.a to let people know that these are not
-+ # typical AIX shared libraries.
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ else
-+ # We preserve .a as extension for shared libraries through AIX4.2
-+ # and later when we are not doing run time linking.
-+ library_names_spec='${libname}${release}.a $libname.a'
-+ soname_spec='${libname}${release}.so$major'
-+ fi
-+ shlibpath_var=LIBPATH
-+ fi
-+ hardcode_into_libs=yes
-+ ;;
-+
-+amigaos*)
-+ library_names_spec='$libname.ixlibrary $libname.a'
-+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
-+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
-+ ;;
-+
-+beos*)
-+ library_names_spec='${libname}.so'
-+ dynamic_linker="$host_os ld.so"
-+ shlibpath_var=LIBRARY_PATH
-+ ;;
-+
-+bsdi4*)
-+ version_type=linux
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
-+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
-+ export_dynamic_flag_spec=-rdynamic
-+ # the default ld.so.conf also contains /usr/contrib/lib and
-+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
-+ # libtool to hard-code these into programs
-+ ;;
-+
-+cygwin* | mingw* | pw32*)
-+ version_type=windows
-+ need_version=no
-+ need_lib_prefix=no
-+ case $GCC,$host_os in
-+ yes,cygwin*)
-+ library_names_spec='$libname.dll.a'
-+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
-+ postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
-+ dldir=$destdir/`dirname \$dlpath`~
-+ test -d \$dldir || mkdir -p \$dldir~
-+ $install_prog .libs/$dlname \$dldir/$dlname'
-+ postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
-+ dlpath=$dir/\$dldll~
-+ $rm \$dlpath'
-+ ;;
-+ yes,mingw*)
-+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
-+ sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"`
-+ ;;
-+ yes,pw32*)
-+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
-+ ;;
-+ *)
-+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib'
-+ ;;
-+ esac
-+ dynamic_linker='Win32 ld.exe'
-+ # FIXME: first we should search . and the directory the executable is in
-+ shlibpath_var=PATH
-+ ;;
-+
-+darwin* | rhapsody*)
-+ dynamic_linker="$host_os dyld"
-+ version_type=darwin
-+ need_lib_prefix=no
-+ need_version=no
-+ # FIXME: Relying on posixy $() will cause problems for
-+ # cross-compilation, but unfortunately the echo tests do not
-+ # yet detect zsh echo's removal of \ escapes.
-+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
-+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
-+ shlibpath_overrides_runpath=yes
-+ shlibpath_var=DYLD_LIBRARY_PATH
-+ ;;
-+
-+freebsd1*)
-+ dynamic_linker=no
-+ ;;
-+
-+freebsd*-gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=no
-+ hardcode_into_libs=yes
-+ dynamic_linker='GNU/FreeBSD ld.so'
-+ ;;
-+
-+freebsd*)
-+ objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
-+ version_type=freebsd-$objformat
-+ case $version_type in
-+ freebsd-elf*)
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
-+ need_version=no
-+ need_lib_prefix=no
-+ ;;
-+ freebsd-*)
-+ library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
-+ need_version=yes
-+ ;;
-+ esac
-+ shlibpath_var=LD_LIBRARY_PATH
-+ case $host_os in
-+ freebsd2*)
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+ *)
-+ shlibpath_overrides_runpath=no
-+ hardcode_into_libs=yes
-+ ;;
-+ esac
-+ ;;
-+
-+gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ hardcode_into_libs=yes
-+ ;;
-+
-+hpux9* | hpux10* | hpux11*)
-+ # Give a soname corresponding to the major version so that dld.sl refuses to
-+ # link against other versions.
-+ dynamic_linker="$host_os dld.sl"
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ shlibpath_var=SHLIB_PATH
-+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-+ library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
-+ soname_spec='${libname}${release}.sl$major'
-+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
-+ postinstall_cmds='chmod 555 $lib'
-+ ;;
-+
-+irix5* | irix6* | nonstopux*)
-+ case $host_os in
-+ nonstopux*) version_type=nonstopux ;;
-+ *) version_type=irix ;;
-+ esac
-+ need_lib_prefix=no
-+ need_version=no
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
-+ case $host_os in
-+ irix5* | nonstopux*)
-+ libsuff= shlibsuff=
-+ ;;
-+ *)
-+ case $LD in # libtool.m4 will add one of these switches to LD
-+ *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
-+ *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
-+ *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
-+ *) libsuff= shlibsuff= libmagic=never-match;;
-+ esac
-+ ;;
-+ esac
-+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
-+ shlibpath_overrides_runpath=no
-+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
-+ ;;
-+
-+# No shared lib support for Linux oldld, aout, or coff.
-+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
-+ dynamic_linker=no
-+ ;;
-+
-+# This must be Linux ELF.
-+linux-gnu*|kfreebsd*-gnu)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=no
-+ # This implies no fast_install, which is unacceptable.
-+ # Some rework will be needed to allow for fast_install
-+ # before this can be enabled.
-+ hardcode_into_libs=yes
-+
-+ # We used to test for /lib/ld.so.1 and disable shared libraries on
-+ # powerpc, because MkLinux only supported shared libraries with the
-+ # GNU dynamic linker. Since this was broken with cross compilers,
-+ # most powerpc-linux boxes support dynamic linking these days and
-+ # people can always --disable-shared, the test was removed, and we
-+ # assume the GNU/Linux dynamic linker is in use.
-+ dynamic_linker='GNU/Linux ld.so'
-+ ;;
-+
-+netbsd*)
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-+ dynamic_linker='NetBSD (a.out) ld.so'
-+ else
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
-+ soname_spec='${libname}${release}.so$major'
-+ dynamic_linker='NetBSD ld.elf_so'
-+ fi
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ hardcode_into_libs=yes
-+ ;;
-+
-+newsos6)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+
-+openbsd*)
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ case "$host_os" in
-+ openbsd2.[[89]] | openbsd2.[[89]].*)
-+ shlibpath_overrides_runpath=no
-+ ;;
-+ *)
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+ esac
-+ else
-+ shlibpath_overrides_runpath=yes
-+ fi
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+os2*)
-+ libname_spec='$name'
-+ need_lib_prefix=no
-+ library_names_spec='$libname.dll $libname.a'
-+ dynamic_linker='OS/2 ld.exe'
-+ shlibpath_var=LIBPATH
-+ ;;
-+
-+osf3* | osf4* | osf5*)
-+ version_type=osf
-+ need_version=no
-+ need_lib_prefix=no
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
-+ hardcode_into_libs=yes
-+ ;;
-+
-+sco3.2v5*)
-+ version_type=osf
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+solaris*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ hardcode_into_libs=yes
-+ # ldd complains unless libraries are executable
-+ postinstall_cmds='chmod +x $lib'
-+ ;;
-+
-+sunos4*)
-+ version_type=sunos
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ if test "$with_gnu_ld" = yes; then
-+ need_lib_prefix=no
-+ fi
-+ need_version=yes
-+ ;;
-+
-+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ case $host_vendor in
-+ sni)
-+ shlibpath_overrides_runpath=no
-+ need_lib_prefix=no
-+ export_dynamic_flag_spec='${wl}-Blargedynsym'
-+ runpath_var=LD_RUN_PATH
-+ ;;
-+ siemens)
-+ need_lib_prefix=no
-+ ;;
-+ motorola)
-+ need_lib_prefix=no
-+ need_version=no
-+ shlibpath_overrides_runpath=no
-+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
-+ ;;
-+ esac
-+ ;;
-+
-+uts4*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+dgux*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+sysv4*MP*)
-+ if test -d /usr/nec ;then
-+ version_type=linux
-+ library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
-+ soname_spec='$libname.so.$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ fi
-+ ;;
-+
-+*)
-+ dynamic_linker=no
-+ ;;
-+esac
-+AC_MSG_RESULT([$dynamic_linker])
-+test "$dynamic_linker" = no && can_build_shared=no
-+
-+# Report the final consequences.
-+AC_MSG_CHECKING([if libtool supports shared libraries])
-+AC_MSG_RESULT([$can_build_shared])
-+
-+AC_MSG_CHECKING([whether to build shared libraries])
-+test "$can_build_shared" = "no" && enable_shared=no
-+
-+# On AIX, shared libraries and static libraries use the same namespace, and
-+# are all built from PIC.
-+case "$host_os" in
-+aix3*)
-+ test "$enable_shared" = yes && enable_static=no
-+ if test -n "$RANLIB"; then
-+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
-+ postinstall_cmds='$RANLIB $lib'
-+ fi
-+ ;;
-+
-+aix4*)
-+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-+ test "$enable_shared" = yes && enable_static=no
-+ fi
-+ ;;
-+esac
-+AC_MSG_RESULT([$enable_shared])
-+
-+AC_MSG_CHECKING([whether to build static libraries])
-+# Make sure either enable_shared or enable_static is yes.
-+test "$enable_shared" = yes || enable_static=yes
-+AC_MSG_RESULT([$enable_static])
-+
-+if test "$hardcode_action" = relink; then
-+ # Fast installation is not supported
-+ enable_fast_install=no
-+elif test "$shlibpath_overrides_runpath" = yes ||
-+ test "$enable_shared" = no; then
-+ # Fast installation is not necessary
-+ enable_fast_install=needless
-+fi
-+
-+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-+if test "$GCC" = yes; then
-+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-+fi
-+
-+AC_LIBTOOL_DLOPEN_SELF
-+
-+if test "$enable_shared" = yes && test "$GCC" = yes; then
-+ case $archive_cmds in
-+ *'~'*)
-+ # FIXME: we may have to deal with multi-command sequences.
-+ ;;
-+ '$CC '*)
-+ # Test whether the compiler implicitly links with -lc since on some
-+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
-+ # to ld, don't add -lc before -lgcc.
-+ AC_MSG_CHECKING([whether -lc should be explicitly linked in])
-+ AC_CACHE_VAL([lt_cv_archive_cmds_need_lc],
-+ [$rm conftest*
-+ echo 'static int dummy;' > conftest.$ac_ext
-+
-+ if AC_TRY_EVAL(ac_compile); then
-+ soname=conftest
-+ lib=conftest
-+ libobjs=conftest.$ac_objext
-+ deplibs=
-+ wl=$lt_cv_prog_cc_wl
-+ compiler_flags=-v
-+ linker_flags=-v
-+ verstring=
-+ output_objdir=.
-+ libname=conftest
-+ save_allow_undefined_flag=$allow_undefined_flag
-+ allow_undefined_flag=
-+ if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
-+ then
-+ lt_cv_archive_cmds_need_lc=no
-+ else
-+ lt_cv_archive_cmds_need_lc=yes
-+ fi
-+ allow_undefined_flag=$save_allow_undefined_flag
-+ else
-+ cat conftest.err 1>&5
-+ fi])
-+ AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc])
-+ ;;
-+ esac
-+fi
-+need_lc=${lt_cv_archive_cmds_need_lc-yes}
-+
-+# The second clause should only fire when bootstrapping the
-+# libtool distribution, otherwise you forgot to ship ltmain.sh
-+# with your package, and you will get complaints that there are
-+# no rules to generate ltmain.sh.
-+if test -f "$ltmain"; then
-+ :
-+else
-+ # If there is no Makefile yet, we rely on a make rule to execute
-+ # `config.status --recheck' to rerun these tests and create the
-+ # libtool script then.
-+ test -f Makefile && make "$ltmain"
-+fi
-+
-+if test -f "$ltmain"; then
-+ trap "$rm \"${ofile}T\"; exit 1" 1 2 15
-+ $rm -f "${ofile}T"
-+
-+ echo creating $ofile
-+
-+ # Now quote all the things that may contain metacharacters while being
-+ # careful not to overquote the AC_SUBSTed values. We take copies of the
-+ # variables and quote the copies for generation of the libtool script.
-+ for var in echo old_CC old_CFLAGS SED \
-+ AR AR_FLAGS CC LD LN_S NM SHELL \
-+ reload_flag reload_cmds wl \
-+ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
-+ thread_safe_flag_spec whole_archive_flag_spec libname_spec \
-+ library_names_spec soname_spec \
-+ RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
-+ old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
-+ postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
-+ old_striplib striplib file_magic_cmd export_symbols_cmds \
-+ deplibs_check_method allow_undefined_flag no_undefined_flag \
-+ finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
-+ global_symbol_to_c_name_address \
-+ hardcode_libdir_flag_spec hardcode_libdir_separator \
-+ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
-+ compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
-+
-+ case $var in
-+ reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
-+ old_postinstall_cmds | old_postuninstall_cmds | \
-+ export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
-+ extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
-+ postinstall_cmds | postuninstall_cmds | \
-+ finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
-+ # Double-quote double-evaled strings.
-+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
-+ ;;
-+ *)
-+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
-+ ;;
-+ esac
-+ done
-+
-+ cat <<__EOF__ > "${ofile}T"
-+#! $SHELL
-+
-+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
-+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-+#
-+# Copyright (C) 1996-2000 Free Software Foundation, Inc.
-+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful, but
-+# WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+# General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+#
-+# As a special exception to the GNU General Public License, if you
-+# distribute this file as part of a program that contains a
-+# configuration script generated by Autoconf, you may include it under
-+# the same distribution terms that you use for the rest of that program.
-+
-+# A sed that does not truncate output.
-+SED=$lt_SED
-+
-+# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-+Xsed="${SED} -e s/^X//"
-+
-+# The HP-UX ksh and POSIX shell print the target directory to stdout
-+# if CDPATH is set.
-+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-+
-+# ### BEGIN LIBTOOL CONFIG
-+
-+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-+
-+# Shell to use when invoking shell scripts.
-+SHELL=$lt_SHELL
-+
-+# Whether or not to build shared libraries.
-+build_libtool_libs=$enable_shared
-+
-+# Whether or not to build static libraries.
-+build_old_libs=$enable_static
-+
-+# Whether or not to add -lc for building shared libraries.
-+build_libtool_need_lc=$need_lc
-+
-+# Whether or not to optimize for fast installation.
-+fast_install=$enable_fast_install
-+
-+# The host system.
-+host_alias=$host_alias
-+host=$host
-+
-+# An echo program that does not interpret backslashes.
-+echo=$lt_echo
-+
-+# The archiver.
-+AR=$lt_AR
-+AR_FLAGS=$lt_AR_FLAGS
-+
-+# The default C compiler.
-+CC=$lt_CC
-+
-+# Is the compiler the GNU C compiler?
-+with_gcc=$GCC
-+
-+# The linker used to build libraries.
-+LD=$lt_LD
-+
-+# Whether we need hard or soft links.
-+LN_S=$lt_LN_S
-+
-+# A BSD-compatible nm program.
-+NM=$lt_NM
-+
-+# A symbol stripping program
-+STRIP=$STRIP
-+
-+# Used to examine libraries when file_magic_cmd begins "file"
-+MAGIC_CMD=$MAGIC_CMD
-+
-+# Used on cygwin: DLL creation program.
-+DLLTOOL="$DLLTOOL"
-+
-+# Used on cygwin: object dumper.
-+OBJDUMP="$OBJDUMP"
-+
-+# Used on cygwin: assembler.
-+AS="$AS"
-+
-+# The name of the directory that contains temporary libtool files.
-+objdir=$objdir
-+
-+# How to create reloadable object files.
-+reload_flag=$lt_reload_flag
-+reload_cmds=$lt_reload_cmds
-+
-+# How to pass a linker flag through the compiler.
-+wl=$lt_wl
-+
-+# Object file suffix (normally "o").
-+objext="$ac_objext"
-+
-+# Old archive suffix (normally "a").
-+libext="$libext"
-+
-+# Executable file suffix (normally "").
-+exeext="$exeext"
-+
-+# Additional compiler flags for building library objects.
-+pic_flag=$lt_pic_flag
-+pic_mode=$pic_mode
-+
-+# Does compiler simultaneously support -c and -o options?
-+compiler_c_o=$lt_compiler_c_o
-+
-+# Can we write directly to a .lo ?
-+compiler_o_lo=$lt_compiler_o_lo
-+
-+# Must we lock files when doing compilation ?
-+need_locks=$lt_need_locks
-+
-+# Do we need the lib prefix for modules?
-+need_lib_prefix=$need_lib_prefix
-+
-+# Do we need a version for libraries?
-+need_version=$need_version
-+
-+# Whether dlopen is supported.
-+dlopen_support=$enable_dlopen
-+
-+# Whether dlopen of programs is supported.
-+dlopen_self=$enable_dlopen_self
-+
-+# Whether dlopen of statically linked programs is supported.
-+dlopen_self_static=$enable_dlopen_self_static
-+
-+# Compiler flag to prevent dynamic linking.
-+link_static_flag=$lt_link_static_flag
-+
-+# Compiler flag to turn off builtin functions.
-+no_builtin_flag=$lt_no_builtin_flag
-+
-+# Compiler flag to allow reflexive dlopens.
-+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
-+
-+# Compiler flag to generate shared objects directly from archives.
-+whole_archive_flag_spec=$lt_whole_archive_flag_spec
-+
-+# Compiler flag to generate thread-safe objects.
-+thread_safe_flag_spec=$lt_thread_safe_flag_spec
-+
-+# Library versioning type.
-+version_type=$version_type
-+
-+# Format of library name prefix.
-+libname_spec=$lt_libname_spec
-+
-+# List of archive names. First name is the real one, the rest are links.
-+# The last name is the one that the linker finds with -lNAME.
-+library_names_spec=$lt_library_names_spec
-+
-+# The coded name of the library, if different from the real name.
-+soname_spec=$lt_soname_spec
-+
-+# Commands used to build and install an old-style archive.
-+RANLIB=$lt_RANLIB
-+old_archive_cmds=$lt_old_archive_cmds
-+old_postinstall_cmds=$lt_old_postinstall_cmds
-+old_postuninstall_cmds=$lt_old_postuninstall_cmds
-+
-+# Create an old-style archive from a shared archive.
-+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
-+
-+# Create a temporary old-style archive to link instead of a shared archive.
-+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
-+
-+# Commands used to build and install a shared archive.
-+archive_cmds=$lt_archive_cmds
-+archive_expsym_cmds=$lt_archive_expsym_cmds
-+postinstall_cmds=$lt_postinstall_cmds
-+postuninstall_cmds=$lt_postuninstall_cmds
-+
-+# Commands to strip libraries.
-+old_striplib=$lt_old_striplib
-+striplib=$lt_striplib
-+
-+# Method to check whether dependent libraries are shared objects.
-+deplibs_check_method=$lt_deplibs_check_method
-+
-+# Command to use when deplibs_check_method == file_magic.
-+file_magic_cmd=$lt_file_magic_cmd
-+
-+# Flag that allows shared libraries with undefined symbols to be built.
-+allow_undefined_flag=$lt_allow_undefined_flag
-+
-+# Flag that forces no undefined symbols.
-+no_undefined_flag=$lt_no_undefined_flag
-+
-+# Commands used to finish a libtool library installation in a directory.
-+finish_cmds=$lt_finish_cmds
-+
-+# Same as above, but a single script fragment to be evaled but not shown.
-+finish_eval=$lt_finish_eval
-+
-+# Take the output of nm and produce a listing of raw symbols and C names.
-+global_symbol_pipe=$lt_global_symbol_pipe
-+
-+# Transform the output of nm in a proper C declaration
-+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
-+
-+# Transform the output of nm in a C name address pair
-+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
-+
-+# This is the shared library runtime path variable.
-+runpath_var=$runpath_var
-+
-+# This is the shared library path variable.
-+shlibpath_var=$shlibpath_var
-+
-+# Is shlibpath searched before the hard-coded library search path?
-+shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-+
-+# How to hardcode a shared library path into an executable.
-+hardcode_action=$hardcode_action
-+
-+# Whether we should hardcode library paths into libraries.
-+hardcode_into_libs=$hardcode_into_libs
-+
-+# Flag to hardcode \$libdir into a binary during linking.
-+# This must work even if \$libdir does not exist.
-+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
-+
-+# Whether we need a single -rpath flag with a separated argument.
-+hardcode_libdir_separator=$lt_hardcode_libdir_separator
-+
-+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_direct=$hardcode_direct
-+
-+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_minus_L=$hardcode_minus_L
-+
-+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
-+# the resulting binary.
-+hardcode_shlibpath_var=$hardcode_shlibpath_var
-+
-+# Variables whose values should be saved in libtool wrapper scripts and
-+# restored at relink time.
-+variables_saved_for_relink="$variables_saved_for_relink"
-+
-+# Whether libtool must link a program against all its dependency libraries.
-+link_all_deplibs=$link_all_deplibs
-+
-+# Compile-time system search path for libraries
-+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
-+
-+# Run-time system search path for libraries
-+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-+
-+# Fix the shell variable \$srcfile for the compiler.
-+fix_srcfile_path="$fix_srcfile_path"
-+
-+# Set to yes if exported symbols are required.
-+always_export_symbols=$always_export_symbols
-+
-+# The commands to list exported symbols.
-+export_symbols_cmds=$lt_export_symbols_cmds
-+
-+# The commands to extract the exported symbol list from a shared archive.
-+extract_expsyms_cmds=$lt_extract_expsyms_cmds
-+
-+# Symbols that should not be listed in the preloaded symbols.
-+exclude_expsyms=$lt_exclude_expsyms
-+
-+# Symbols that must always be exported.
-+include_expsyms=$lt_include_expsyms
-+
-+# ### END LIBTOOL CONFIG
-+
-+__EOF__
-+
-+ case $host_os in
-+ aix3*)
-+ cat <<\EOF >> "${ofile}T"
-+
-+# AIX sometimes has problems with the GCC collect2 program. For some
-+# reason, if we set the COLLECT_NAMES environment variable, the problems
-+# vanish in a puff of smoke.
-+if test "X${COLLECT_NAMES+set}" != Xset; then
-+ COLLECT_NAMES=
-+ export COLLECT_NAMES
-+fi
-+EOF
-+ ;;
-+ esac
-+
-+ case $host_os in
-+ cygwin* | mingw* | pw32* | os2*)
-+ cat <<'EOF' >> "${ofile}T"
-+ # This is a source program that is used to create dlls on Windows
-+ # Don't remove nor modify the starting and closing comments
-+# /* ltdll.c starts here */
-+# #define WIN32_LEAN_AND_MEAN
-+# #include <windows.h>
-+# #undef WIN32_LEAN_AND_MEAN
-+# #include <stdio.h>
-+#
-+# #ifndef __CYGWIN__
-+# # ifdef __CYGWIN32__
-+# # define __CYGWIN__ __CYGWIN32__
-+# # endif
-+# #endif
-+#
-+# #ifdef __cplusplus
-+# extern "C" {
-+# #endif
-+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
-+# #ifdef __cplusplus
-+# }
-+# #endif
-+#
-+# #ifdef __CYGWIN__
-+# #include <cygwin/cygwin_dll.h>
-+# DECLARE_CYGWIN_DLL( DllMain );
-+# #endif
-+# HINSTANCE __hDllInstance_base;
-+#
-+# BOOL APIENTRY
-+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
-+# {
-+# __hDllInstance_base = hInst;
-+# return TRUE;
-+# }
-+# /* ltdll.c ends here */
-+ # This is a source program that is used to create import libraries
-+ # on Windows for dlls which lack them. Don't remove nor modify the
-+ # starting and closing comments
-+# /* impgen.c starts here */
-+# /* Copyright (C) 1999-2000 Free Software Foundation, Inc.
-+#
-+# This file is part of GNU libtool.
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+# */
-+#
-+# #include <stdio.h> /* for printf() */
-+# #include <unistd.h> /* for open(), lseek(), read() */
-+# #include <fcntl.h> /* for O_RDONLY, O_BINARY */
-+# #include <string.h> /* for strdup() */
-+#
-+# /* O_BINARY isn't required (or even defined sometimes) under Unix */
-+# #ifndef O_BINARY
-+# #define O_BINARY 0
-+# #endif
-+#
-+# static unsigned int
-+# pe_get16 (fd, offset)
-+# int fd;
-+# int offset;
-+# {
-+# unsigned char b[2];
-+# lseek (fd, offset, SEEK_SET);
-+# read (fd, b, 2);
-+# return b[0] + (b[1]<<8);
-+# }
-+#
-+# static unsigned int
-+# pe_get32 (fd, offset)
-+# int fd;
-+# int offset;
-+# {
-+# unsigned char b[4];
-+# lseek (fd, offset, SEEK_SET);
-+# read (fd, b, 4);
-+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-+# }
-+#
-+# static unsigned int
-+# pe_as32 (ptr)
-+# void *ptr;
-+# {
-+# unsigned char *b = ptr;
-+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-+# }
-+#
-+# int
-+# main (argc, argv)
-+# int argc;
-+# char *argv[];
-+# {
-+# int dll;
-+# unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
-+# unsigned long export_rva, export_size, nsections, secptr, expptr;
-+# unsigned long name_rvas, nexp;
-+# unsigned char *expdata, *erva;
-+# char *filename, *dll_name;
-+#
-+# filename = argv[1];
-+#
-+# dll = open(filename, O_RDONLY|O_BINARY);
-+# if (dll < 1)
-+# return 1;
-+#
-+# dll_name = filename;
-+#
-+# for (i=0; filename[i]; i++)
-+# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
-+# dll_name = filename + i +1;
-+#
-+# pe_header_offset = pe_get32 (dll, 0x3c);
-+# opthdr_ofs = pe_header_offset + 4 + 20;
-+# num_entries = pe_get32 (dll, opthdr_ofs + 92);
-+#
-+# if (num_entries < 1) /* no exports */
-+# return 1;
-+#
-+# export_rva = pe_get32 (dll, opthdr_ofs + 96);
-+# export_size = pe_get32 (dll, opthdr_ofs + 100);
-+# nsections = pe_get16 (dll, pe_header_offset + 4 +2);
-+# secptr = (pe_header_offset + 4 + 20 +
-+# pe_get16 (dll, pe_header_offset + 4 + 16));
-+#
-+# expptr = 0;
-+# for (i = 0; i < nsections; i++)
-+# {
-+# char sname[8];
-+# unsigned long secptr1 = secptr + 40 * i;
-+# unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
-+# unsigned long vsize = pe_get32 (dll, secptr1 + 16);
-+# unsigned long fptr = pe_get32 (dll, secptr1 + 20);
-+# lseek(dll, secptr1, SEEK_SET);
-+# read(dll, sname, 8);
-+# if (vaddr <= export_rva && vaddr+vsize > export_rva)
-+# {
-+# expptr = fptr + (export_rva - vaddr);
-+# if (export_rva + export_size > vaddr + vsize)
-+# export_size = vsize - (export_rva - vaddr);
-+# break;
-+# }
-+# }
-+#
-+# expdata = (unsigned char*)malloc(export_size);
-+# lseek (dll, expptr, SEEK_SET);
-+# read (dll, expdata, export_size);
-+# erva = expdata - export_rva;
-+#
-+# nexp = pe_as32 (expdata+24);
-+# name_rvas = pe_as32 (expdata+32);
-+#
-+# printf ("EXPORTS\n");
-+# for (i = 0; i<nexp; i++)
-+# {
-+# unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
-+# printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
-+# }
-+#
-+# return 0;
-+# }
-+# /* impgen.c ends here */
-
--# Some flags need to be propagated to the compiler or linker for good
--# libtool support.
--case "$lt_target" in
--*-*-irix6*)
-- # Find out which ABI we are using.
-- echo '[#]line __oline__ "configure"' > conftest.$ac_ext
-- if AC_TRY_EVAL(ac_compile); then
-- case "`/usr/bin/file conftest.o`" in
-- *32-bit*)
-- LD="${LD-ld} -32"
-- ;;
-- *N32*)
-- LD="${LD-ld} -n32"
-- ;;
-- *64-bit*)
-- LD="${LD-ld} -64"
-- ;;
-- esac
-- fi
-- rm -rf conftest*
-- ;;
-+EOF
-+ ;;
-+ esac
-
--*-*-sco3.2v5*)
-- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-- SAVE_CFLAGS="$CFLAGS"
-- CFLAGS="$CFLAGS -belf"
-- AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
-- [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
-- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-- CFLAGS="$SAVE_CFLAGS"
-- fi
-- ;;
-+ # We use sed instead of cat because bash on DJGPP gets confused if
-+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
-+ # text mode, it properly converts lines to CR/LF. This bash problem
-+ # is reportedly fixed, but why not run on old versions too?
-+ sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
-+
-+ mv -f "${ofile}T" "$ofile" || \
-+ (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
-+ chmod +x "$ofile"
-+fi
-
--ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
--[*-*-cygwin* | *-*-mingw*)
-- AC_CHECK_TOOL(DLLTOOL, dlltool, false)
-- AC_CHECK_TOOL(AS, as, false)
-- AC_CHECK_TOOL(OBJDUMP, objdump, false)
-- ;;
--])
--esac
--])
-+])# _LT_AC_LTCONFIG_HACK
-
- # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
--AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
-+AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
-
- # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
--AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
-+AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
-
- # AC_ENABLE_SHARED - implement the --enable-shared flag
- # Usage: AC_ENABLE_SHARED[(DEFAULT)]
- # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
- # `yes'.
--AC_DEFUN(AC_ENABLE_SHARED, [dnl
--define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
-+AC_DEFUN([AC_ENABLE_SHARED],
-+[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
- AC_ARG_ENABLE(shared,
- changequote(<<, >>)dnl
- << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
- changequote([, ])dnl
- [p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
-@@ -157,21 +3136,22 @@
- ])
-
- # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
--AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+AC_DEFUN([AC_DISABLE_SHARED],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- AC_ENABLE_SHARED(no)])
-
- # AC_ENABLE_STATIC - implement the --enable-static flag
- # Usage: AC_ENABLE_STATIC[(DEFAULT)]
- # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
- # `yes'.
--AC_DEFUN(AC_ENABLE_STATIC, [dnl
--define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
-+AC_DEFUN([AC_ENABLE_STATIC],
-+[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
- AC_ARG_ENABLE(static,
- changequote(<<, >>)dnl
- << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
- changequote([, ])dnl
- [p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
-@@ -190,7 +3170,8 @@
- ])
-
- # AC_DISABLE_STATIC - set the default static flag to --disable-static
--AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+AC_DEFUN([AC_DISABLE_STATIC],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- AC_ENABLE_STATIC(no)])
-
-
-@@ -198,14 +3179,14 @@
- # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
- # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
- # `yes'.
--AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
--define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
-+AC_DEFUN([AC_ENABLE_FAST_INSTALL],
-+[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
- AC_ARG_ENABLE(fast-install,
- changequote(<<, >>)dnl
- << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
- changequote([, ])dnl
- [p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
-@@ -223,29 +3204,120 @@
- enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
- ])
-
--# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
--AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
-+AC_DEFUN([AC_DISABLE_FAST_INSTALL],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- AC_ENABLE_FAST_INSTALL(no)])
-
-+# AC_LIBTOOL_PICMODE - implement the --with-pic flag
-+# Usage: AC_LIBTOOL_PICMODE[(MODE)]
-+# Where MODE is either `yes' or `no'. If omitted, it defaults to
-+# `both'.
-+AC_DEFUN([AC_LIBTOOL_PICMODE],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+pic_mode=ifelse($#,1,$1,default)])
-+
-+
-+# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
-+AC_DEFUN([AC_PATH_TOOL_PREFIX],
-+[AC_MSG_CHECKING([for $1])
-+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-+[case $MAGIC_CMD in
-+ /*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-+ ;;
-+ ?:/*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
-+ ;;
-+ *)
-+ ac_save_MAGIC_CMD="$MAGIC_CMD"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+dnl $ac_dummy forces splitting on constant user-supplied paths.
-+dnl POSIX.2 word splitting is done only on the output of word expansions,
-+dnl not every word. This closes a longstanding sh security hole.
-+ ac_dummy="ifelse([$2], , $PATH, [$2])"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$1; then
-+ lt_cv_path_MAGIC_CMD="$ac_dir/$1"
-+ if test -n "$file_magic_test_file"; then
-+ case $deplibs_check_method in
-+ "file_magic "*)
-+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
-+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-+ egrep "$file_magic_regex" > /dev/null; then
-+ :
-+ else
-+ cat <<EOF 1>&2
-+
-+*** Warning: the command libtool uses to detect shared libraries,
-+*** $file_magic_cmd, produces output that libtool cannot recognize.
-+*** The result is that libtool may fail to recognize shared libraries
-+*** as such. This will affect the creation of libtool libraries that
-+*** depend on shared libraries, but programs linked with such libtool
-+*** libraries will work regardless of this problem. Nevertheless, you
-+*** may want to report the problem to your system manager and/or to
-+*** bug-libtool@gnu.org
-+
-+EOF
-+ fi ;;
-+ esac
-+ fi
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ MAGIC_CMD="$ac_save_MAGIC_CMD"
-+ ;;
-+esac])
-+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+if test -n "$MAGIC_CMD"; then
-+ AC_MSG_RESULT($MAGIC_CMD)
-+else
-+ AC_MSG_RESULT(no)
-+fi
-+])
-+
-+
-+# AC_PATH_MAGIC - find a file program which can recognise a shared library
-+AC_DEFUN([AC_PATH_MAGIC],
-+[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
-+AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
-+if test -z "$lt_cv_path_MAGIC_CMD"; then
-+ if test -n "$ac_tool_prefix"; then
-+ AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
-+ else
-+ MAGIC_CMD=:
-+ fi
-+fi
-+])
-+
-+
- # AC_PROG_LD - find the path to the GNU or non-GNU linker
--AC_DEFUN(AC_PROG_LD,
-+AC_DEFUN([AC_PROG_LD],
- [AC_ARG_WITH(gnu-ld,
- [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
- test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
- AC_REQUIRE([AC_PROG_CC])dnl
- AC_REQUIRE([AC_CANONICAL_HOST])dnl
- AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-+AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
- ac_prog=ld
--if test "$ac_cv_prog_gcc" = yes; then
-+if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- AC_MSG_CHECKING([for ld used by GCC])
-- ac_prog=`($CC -print-prog-name=ld) 2>&5`
-- case "$ac_prog" in
-+ case $host in
-+ *-*-mingw*)
-+ # gcc leaves a trailing carriage return which upsets mingw
-+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-+ *)
-+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-+ esac
-+ case $ac_prog in
- # Accept absolute paths.
--changequote(,)dnl
-- [\\/]* | [A-Za-z]:[\\/]*)
-- re_direlt='/[^/][^/]*/\.\./'
--changequote([,])dnl
-+ [[\\/]]* | [[A-Za-z]]:[[\\/]]*)
-+ re_direlt='/[[^/]][[^/]]*/\.\./'
- # Canonicalize the path of ld
- ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
- while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
-@@ -267,17 +3339,17 @@
- else
- AC_MSG_CHECKING([for non-GNU ld])
- fi
--AC_CACHE_VAL(ac_cv_path_LD,
-+AC_CACHE_VAL(lt_cv_path_LD,
- [if test -z "$LD"; then
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-- ac_cv_path_LD="$ac_dir/$ac_prog"
-+ lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
-- if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
-+ if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
- test "$with_gnu_ld" != no && break
- else
- test "$with_gnu_ld" != yes && break
-@@ -286,9 +3358,9 @@
- done
- IFS="$ac_save_ifs"
- else
-- ac_cv_path_LD="$LD" # Let the user override the test with a path.
-+ lt_cv_path_LD="$LD" # Let the user override the test with a path.
- fi])
--LD="$ac_cv_path_LD"
-+LD="$lt_cv_path_LD"
- if test -n "$LD"; then
- AC_MSG_RESULT($LD)
- else
-@@ -298,56 +3370,255 @@
- AC_PROG_LD_GNU
- ])
-
--AC_DEFUN(AC_PROG_LD_GNU,
--[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
-+# AC_PROG_LD_GNU -
-+AC_DEFUN([AC_PROG_LD_GNU],
-+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
- [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
- if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-- ac_cv_prog_gnu_ld=yes
-+ lt_cv_prog_gnu_ld=yes
- else
-- ac_cv_prog_gnu_ld=no
-+ lt_cv_prog_gnu_ld=no
- fi])
-+with_gnu_ld=$lt_cv_prog_gnu_ld
-+])
-+
-+# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
-+# -- PORTME Some linkers may need a different reload flag.
-+AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
-+[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
-+[lt_cv_ld_reload_flag='-r'])
-+reload_flag=$lt_cv_ld_reload_flag
-+test -n "$reload_flag" && reload_flag=" $reload_flag"
-+])
-+
-+# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
-+# -- PORTME fill in with the dynamic library characteristics
-+AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
-+[AC_CACHE_CHECK([how to recognise dependent libraries],
-+lt_cv_deplibs_check_method,
-+[lt_cv_file_magic_cmd='$MAGIC_CMD'
-+lt_cv_file_magic_test_file=
-+lt_cv_deplibs_check_method='unknown'
-+# Need to set the preceding variable on all platforms that support
-+# interlibrary dependencies.
-+# 'none' -- dependencies not supported.
-+# `unknown' -- same as none, but documents that we really don't know.
-+# 'pass_all' -- all dependencies passed with no checks.
-+# 'test_compile' -- check by making test program.
-+# 'file_magic [[regex]]' -- check by looking for files in library path
-+# which responds to the $file_magic_cmd with a given egrep regex.
-+# If you have `file' or equivalent on your system and you're not sure
-+# whether `pass_all' will *always* work, you probably want this one.
-+
-+case $host_os in
-+aix4* | aix5*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+beos*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+bsdi4*)
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
-+ lt_cv_file_magic_cmd='/usr/bin/file -L'
-+ lt_cv_file_magic_test_file=/shlib/libc.so
-+ ;;
-+
-+cygwin* | mingw* | pw32*)
-+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
-+ lt_cv_file_magic_cmd='$OBJDUMP -f'
-+ ;;
-+
-+darwin* | rhapsody*)
-+ lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
-+ lt_cv_file_magic_cmd='/usr/bin/file -L'
-+ case "$host_os" in
-+ rhapsody* | darwin1.[[012]])
-+ lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
-+ ;;
-+ *) # Darwin 1.3 on
-+ lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
-+ ;;
-+ esac
-+ ;;
-+
-+freebsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
-+ case $host_cpu in
-+ i*86 )
-+ # Not sure whether the presence of OpenBSD here was a mistake.
-+ # Let's accept both of them until this is cleared up.
-+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-+ ;;
-+ esac
-+ else
-+ lt_cv_deplibs_check_method=pass_all
-+ fi
-+ ;;
-+
-+gnu*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+hpux10.20*|hpux11*)
-+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
-+ ;;
-+
-+irix5* | irix6* | nonstopux*)
-+ case $host_os in
-+ irix5* | nonstopux*)
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
-+ ;;
-+ *)
-+ case $LD in
-+ *-32|*"-32 ") libmagic=32-bit;;
-+ *-n32|*"-n32 ") libmagic=N32;;
-+ *-64|*"-64 ") libmagic=64-bit;;
-+ *) libmagic=never-match;;
-+ esac
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
-+ ;;
-+ esac
-+ lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+# This must be Linux ELF.
-+linux-gnu*|kfreebsd*-gnu)
-+ case $host_cpu in
-+ alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*)
-+ lt_cv_deplibs_check_method=pass_all ;;
-+ *)
-+ # glibc up to 2.1.1 does not perform some relocations on ARM
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
-+ esac
-+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
-+ ;;
-+
-+netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
-+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$'
-+ else
-+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$'
-+ fi
-+ ;;
-+
-+newos6*)
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
-+ ;;
-+
-+openbsd*)
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
-+ else
-+ lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
-+ fi
-+ ;;
-+
-+osf3* | osf4* | osf5*)
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
-+ lt_cv_file_magic_test_file=/shlib/libc.so
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+sco3.2v5*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+solaris*)
-+ lt_cv_deplibs_check_method=pass_all
-+ lt_cv_file_magic_test_file=/lib/libc.so
-+ ;;
-+
-+sysv5uw[[78]]* | sysv4*uw2*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ case $host_vendor in
-+ motorola)
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
-+ ;;
-+ ncr)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+ sequent)
-+ lt_cv_file_magic_cmd='/bin/file'
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
-+ ;;
-+ sni)
-+ lt_cv_file_magic_cmd='/bin/file'
-+ lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
-+ lt_cv_file_magic_test_file=/lib/libc.so
-+ ;;
-+ siemens)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+ esac
-+ ;;
-+esac
- ])
-+file_magic_cmd=$lt_cv_file_magic_cmd
-+deplibs_check_method=$lt_cv_deplibs_check_method
-+])
-+
-
- # AC_PROG_NM - find the path to a BSD-compatible name lister
--AC_DEFUN(AC_PROG_NM,
--[AC_MSG_CHECKING([for BSD-compatible nm])
--AC_CACHE_VAL(ac_cv_path_NM,
-+AC_DEFUN([AC_PROG_NM],
-+[AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
-+AC_MSG_CHECKING([for BSD-compatible nm])
-+AC_CACHE_VAL(lt_cv_path_NM,
- [if test -n "$NM"; then
- # Let the user override the test.
-- ac_cv_path_NM="$NM"
-+ lt_cv_path_NM="$NM"
- else
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
- test -z "$ac_dir" && ac_dir=.
-- if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
-+ tmp_nm=$ac_dir/${ac_tool_prefix}nm
-+ if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
-- if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-- ac_cv_path_NM="$ac_dir/nm -B"
-+ # Tru64's nm complains that /dev/null is an invalid object file
-+ if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
-+ lt_cv_path_NM="$tmp_nm -B"
- break
-- elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-- ac_cv_path_NM="$ac_dir/nm -p"
-+ elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-+ lt_cv_path_NM="$tmp_nm -p"
- break
- else
-- ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
-+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- fi
- fi
- done
- IFS="$ac_save_ifs"
-- test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
-+ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
- fi])
--NM="$ac_cv_path_NM"
-+NM="$lt_cv_path_NM"
- AC_MSG_RESULT([$NM])
- ])
-
- # AC_CHECK_LIBM - check for math library
--AC_DEFUN(AC_CHECK_LIBM,
-+AC_DEFUN([AC_CHECK_LIBM],
- [AC_REQUIRE([AC_CANONICAL_HOST])dnl
- LIBM=
--case "$lt_target" in
--*-*-beos* | *-*-cygwin*)
-+case $host in
-+*-*-beos* | *-*-cygwin* | *-*-pw32*)
- # These system don't have libm
- ;;
- *-ncr-sysv4.3*)
-@@ -361,33 +3632,41 @@
- ])
-
- # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
--# the libltdl convenience library, adds --enable-ltdl-convenience to
--# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
--# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
--# to be `${top_builddir}/libltdl'. Make sure you start DIR with
--# '${top_builddir}/' (note the single quotes!) if your package is not
--# flat, and, if you're not using automake, define top_builddir as
--# appropriate in the Makefiles.
--AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-- case "$enable_ltdl_convenience" in
-+# the libltdl convenience library and LTDLINCL to the include flags for
-+# the libltdl header and adds --enable-ltdl-convenience to the
-+# configure arguments. Note that LIBLTDL and LTDLINCL are not
-+# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
-+# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
-+# with '${top_builddir}/' and LTDLINCL will be prefixed with
-+# '${top_srcdir}/' (note the single quotes!). If your package is not
-+# flat and you're not using automake, define top_builddir and
-+# top_srcdir appropriately in the Makefiles.
-+AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+ case $enable_ltdl_convenience in
- no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
- "") enable_ltdl_convenience=yes
- ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
- esac
-- LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
-- INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
-+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
-+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
-+ # For backwards non-gettext consistent compatibility...
-+ INCLTDL="$LTDLINCL"
- ])
-
- # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
--# the libltdl installable library, and adds --enable-ltdl-install to
--# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
--# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
--# to be `${top_builddir}/libltdl'. Make sure you start DIR with
--# '${top_builddir}/' (note the single quotes!) if your package is not
--# flat, and, if you're not using automake, define top_builddir as
--# appropriate in the Makefiles.
-+# the libltdl installable library and LTDLINCL to the include flags for
-+# the libltdl header and adds --enable-ltdl-install to the configure
-+# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is
-+# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
-+# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
-+# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed
-+# with '${top_srcdir}/' (note the single quotes!). If your package is
-+# not flat and you're not using automake, define top_builddir and
-+# top_srcdir appropriately in the Makefiles.
- # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
--AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- AC_CHECK_LIB(ltdl, main,
- [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
- [if test x"$enable_ltdl_install" = xno; then
-@@ -398,148 +3677,124 @@
- ])
- if test x"$enable_ltdl_install" = x"yes"; then
- ac_configure_args="$ac_configure_args --enable-ltdl-install"
-- LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
-- INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
-+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
-+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
- else
- ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
- LIBLTDL="-lltdl"
-- INCLTDL=
-+ LTDLINCL=
- fi
-+ # For backwards non-gettext consistent compatibility...
-+ INCLTDL="$LTDLINCL"
- ])
-
--dnl old names
--AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
--AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
--AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
--AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
--AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
--AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
--AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
--
--dnl This is just to silence aclocal about the macro not being used
--ifelse([AC_DISABLE_FAST_INSTALL])dnl
--
--# Do all the work for Automake. This macro actually does too much --
--# some checks are only needed if your package does certain things.
--# But this isn't really a big deal.
--
--# serial 1
--
--dnl Usage:
--dnl AM_INIT_AUTOMAKE(package,version, [no-define])
--
--AC_DEFUN(AM_INIT_AUTOMAKE,
--[AC_REQUIRE([AC_PROG_INSTALL])
--PACKAGE=[$1]
--AC_SUBST(PACKAGE)
--VERSION=[$2]
--AC_SUBST(VERSION)
--dnl test to see if srcdir already configured
--if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
-- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
--fi
--ifelse([$3],,
--AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
--AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
--AC_REQUIRE([AM_SANITY_CHECK])
--AC_REQUIRE([AC_ARG_PROGRAM])
--dnl FIXME This is truly gross.
--missing_dir=`cd $ac_aux_dir && pwd`
--AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
--AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
--AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
--AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
--AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
--AC_REQUIRE([AC_PROG_MAKE_SET])])
--
--#
--# Check to make sure that the build environment is sane.
--#
--
--AC_DEFUN(AM_SANITY_CHECK,
--[AC_MSG_CHECKING([whether build environment is sane])
--# Just in case
--sleep 1
--echo timestamp > conftestfile
--# Do `set' in a subshell so we don't clobber the current shell's
--# arguments. Must try -L first in case configure is actually a
--# symlink; some systems play weird games with the mod time of symlinks
--# (eg FreeBSD returns the mod time of the symlink's containing
--# directory).
--if (
-- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
-- if test "[$]*" = "X"; then
-- # -L didn't work.
-- set X `ls -t $srcdir/configure conftestfile`
-- fi
-- if test "[$]*" != "X $srcdir/configure conftestfile" \
-- && test "[$]*" != "X conftestfile $srcdir/configure"; then
--
-- # If neither matched, then we have a broken ls. This can happen
-- # if, for instance, CONFIG_SHELL is bash and it inherits a
-- # broken ls alias from the environment. This has actually
-- # happened. Such a system could not be considered "sane".
-- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
--alias in your environment])
-- fi
-+# old names
-+AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])
-+AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-+AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-+AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-+AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-+AC_DEFUN([AM_PROG_LD], [AC_PROG_LD])
-+AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
-+
-+# This is just to silence aclocal about the macro not being used
-+ifelse([AC_DISABLE_FAST_INSTALL])
-+
-+# NOTE: This macro has been submitted for inclusion into #
-+# GNU Autoconf as AC_PROG_SED. When it is available in #
-+# a released version of Autoconf we should remove this #
-+# macro and use it instead. #
-+# LT_AC_PROG_SED
-+# --------------
-+# Check for a fully-functional sed program, that truncates
-+# as few characters as possible. Prefer GNU sed if found.
-+AC_DEFUN([LT_AC_PROG_SED],
-+[AC_MSG_CHECKING([for a sed that does not truncate output])
-+AC_CACHE_VAL(lt_cv_path_SED,
-+[# Loop through the user's path and test for sed and gsed.
-+# Then use that list of sed's as ones to test for truncation.
-+as_executable_p="test -f"
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+ IFS=$as_save_IFS
-+ test -z "$as_dir" && as_dir=.
-+ for ac_prog in sed gsed; do
-+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
-+ _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
-+ fi
-+ done
-+ done
-+done
-
-- test "[$]2" = conftestfile
-- )
--then
-- # Ok.
-- :
--else
-- AC_MSG_ERROR([newly created file is older than distributed files!
--Check your system clock])
--fi
--rm -f conftest*
--AC_MSG_RESULT(yes)])
-+ # Create a temporary directory, and hook for its removal unless debugging.
-+$debug ||
-+{
-+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
-+ trap '{ (exit 1); exit 1; }' 1 2 13 15
-+}
-
--dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
--dnl The program must properly implement --version.
--AC_DEFUN(AM_MISSING_PROG,
--[AC_MSG_CHECKING(for working $2)
--# Run test in a subshell; some versions of sh will print an error if
--# an executable is not found, even if stderr is redirected.
--# Redirect stdin to placate older versions of autoconf. Sigh.
--if ($2 --version) < /dev/null > /dev/null 2>&1; then
-- $1=$2
-- AC_MSG_RESULT(found)
-+# Create a (secure) tmp directory for tmp files.
-+: ${TMPDIR=/tmp}
-+{
-+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
-+ test -n "$tmp" && test -d "$tmp"
-+} ||
-+{
-+ tmp=$TMPDIR/sed$$-$RANDOM
-+ (umask 077 && mkdir $tmp)
-+} ||
-+{
-+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2
-+ { (exit 1); exit 1; }
-+}
-+ _max=0
-+ _count=0
-+ # Add /usr/xpg4/bin/sed as it is typically found on Solaris
-+ # along with /bin/sed that truncates output.
-+ for _sed in $_sed_list /usr/xpg4/bin/sed; do
-+ test ! -f ${_sed} && break
-+ cat /dev/null > "$tmp/sed.in"
-+ _count=0
-+ echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
-+ # Check for GNU sed and select it if it is found.
-+ if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
-+ lt_cv_path_SED=${_sed}
-+ break
-+ fi
-+ while true; do
-+ cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
-+ mv "$tmp/sed.tmp" "$tmp/sed.in"
-+ cp "$tmp/sed.in" "$tmp/sed.nl"
-+ echo >>"$tmp/sed.nl"
-+ ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
-+ cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
-+ # 40000 chars as input seems more than enough
-+ test $_count -gt 10 && break
-+ _count=`expr $_count + 1`
-+ if test $_count -gt $_max; then
-+ _max=$_count
-+ lt_cv_path_SED=$_sed
-+ fi
-+ done
-+ done
-+ rm -rf "$tmp"
-+])
-+if test "X$SED" != "X"; then
-+ lt_cv_path_SED=$SED
- else
-- $1="$3/missing $2"
-- AC_MSG_RESULT(missing)
-+ SED=$lt_cv_path_SED
- fi
--AC_SUBST($1)])
--
--# Like AC_CONFIG_HEADER, but automatically create stamp file.
--
--AC_DEFUN(AM_CONFIG_HEADER,
--[AC_PREREQ([2.12])
--AC_CONFIG_HEADER([$1])
--dnl When config.status generates a header, we must update the stamp-h file.
--dnl This file resides in the same directory as the config header
--dnl that is generated. We must strip everything past the first ":",
--dnl and everything past the last "/".
--AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
--ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
--<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
--<<am_indx=1
--for am_file in <<$1>>; do
-- case " <<$>>CONFIG_HEADERS " in
-- *" <<$>>am_file "*<<)>>
-- echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
-- ;;
-- esac
-- am_indx=`expr "<<$>>am_indx" + 1`
--done<<>>dnl>>)
--changequote([,]))])
-+AC_MSG_RESULT([$SED])
-+])
-
- # Add --enable-maintainer-mode option to configure.
- # From Jim Meyering
-
- # serial 1
-
--AC_DEFUN(AM_MAINTAINER_MODE,
-+AC_DEFUN([AM_MAINTAINER_MODE],
- [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
- dnl maintainer-mode is disabled by default
- AC_ARG_ENABLE(maintainer-mode,
-@@ -556,7 +3811,7 @@
-
- # Define a conditional.
-
--AC_DEFUN(AM_CONDITIONAL,
-+AC_DEFUN([AM_CONDITIONAL],
- [AC_SUBST($1_TRUE)
- AC_SUBST($1_FALSE)
- if $2; then
-@@ -585,7 +3840,7 @@
- # program @code{ansi2knr}, which comes with Ghostscript.
- # @end defmac
-
--AC_DEFUN(AM_PROG_CC_STDC,
-+AC_DEFUN([AM_PROG_CC_STDC],
- [AC_REQUIRE([AC_PROG_CC])
- AC_BEFORE([$0], [AC_C_INLINE])
- AC_BEFORE([$0], [AC_C_CONST])
---- glib1.2-1.2.10.orig/gstrfuncs.c
-+++ glib1.2-1.2.10/gstrfuncs.c
-@@ -867,8 +867,8 @@
- /* beware of positional parameters
- */
- case '$':
-- g_warning (G_GNUC_PRETTY_FUNCTION
-- "(): unable to handle positional parameters (%%n$)");
-+ g_warning ("%s(): unable to handle positional parameters (%%n$)",
-+ G_GNUC_PRETTY_FUNCTION );
- len += 1024; /* try adding some safety padding */
- break;
-
-@@ -1034,8 +1034,8 @@
- /* n . dddddddddddddddddddddddd E +- eeee */
- conv_len += 1 + 1 + MAX (24, spec.precision) + 1 + 1 + 4;
- if (spec.mod_extra_long)
-- g_warning (G_GNUC_PRETTY_FUNCTION
-- "(): unable to handle long double, collecting double only");
-+ g_warning ("%s(): unable to handle long double, collecting double only",
-+ G_GNUC_PRETTY_FUNCTION);
- #ifdef HAVE_LONG_DOUBLE
- #error need to implement special handling for long double
- #endif
-@@ -1047,7 +1047,7 @@
- gint exp = u_double.mpn.biased_exponent;
-
- exp -= G_IEEE754_DOUBLE_BIAS;
-- exp = exp * G_LOG_2_BASE_10 + 1;
-+ exp = abs(exp * G_LOG_2_BASE_10) + 1;
- conv_len += exp;
- }
- /* some printf() implementations require extra padding for rounding */
-@@ -1077,8 +1077,8 @@
- conv_done = TRUE;
- if (spec.mod_long)
- {
-- g_warning (G_GNUC_PRETTY_FUNCTION
-- "(): unable to handle wide char strings");
-+ g_warning ("%s(): unable to handle wide char strings",
-+ G_GNUC_PRETTY_FUNCTION);
- len += 1024; /* try adding some safety padding */
- }
- break;
-@@ -1108,8 +1108,8 @@
- conv_len += format - spec_start;
- break;
- default:
-- g_warning (G_GNUC_PRETTY_FUNCTION
-- "(): unable to handle `%c' while parsing format",
-+ g_warning ("%s(): unable to handle `%c' while parsing format",
-+ G_GNUC_PRETTY_FUNCTION,
- c);
- break;
- }
---- glib1.2-1.2.10.orig/debian/libglib1.2-dev.doc-base
-+++ glib1.2-1.2.10/debian/libglib1.2-dev.doc-base
-@@ -0,0 +1,11 @@
-+Document: libglib1.2-dev
-+Title: GLib C library documentation
-+Author: Gregory McLean
-+Abstract: Library reference for GLib C library of useful functions
-+ This document goes into detail on each function of the GLib C library of useful
-+ functions to deal with common structures like lists, trees, et cetera.
-+Section: Apps/Programming
-+
-+Format: HTML
-+Index: /usr/share/doc/libglib1.2-dev/glib_toc.html
-+Files: /usr/share/doc/libglib1.2-dev/glib.html
---- glib1.2-1.2.10.orig/debian/libglib1.2-dbg.docs
-+++ glib1.2-1.2.10/debian/libglib1.2-dbg.docs
-@@ -0,0 +1,2 @@
-+AUTHORS
-+NEWS
---- glib1.2-1.2.10.orig/debian/watch
-+++ glib1.2-1.2.10/debian/watch
-@@ -0,0 +1,4 @@
-+# watch control file for uscan
-+
-+version=3
-+http://ftp.gnome.org/pub/gnome/sources/glib/1.2/glib-(.*)\.tar\.gz
---- glib1.2-1.2.10.orig/debian/libglib1.2-dev.install
-+++ glib1.2-1.2.10/debian/libglib1.2-dev.install
-@@ -0,0 +1,10 @@
-+/usr/bin
-+/usr/include/*
-+/usr/lib/*.a
-+/usr/lib/*.la
-+/usr/lib/*.so
-+/usr/lib/glib
-+/usr/lib/pkgconfig/*
-+/usr/share/aclocal
-+/usr/share/info
-+/usr/share/man
---- glib1.2-1.2.10.orig/debian/copyright
-+++ glib1.2-1.2.10/debian/copyright
-@@ -0,0 +1,31 @@
-+This package was first debianized by Ben Gertzfield <che@debian.org> on
-+Mon, 27 Jul 1998 14:11:04 -0700.
-+
-+It was downloaded from <http://ftp.gnome.org/pub/gnome/sources/glib/1.2/>.
-+
-+Copyright Holder: Peter Mattis <petm@xcf.berkeley.edu>,
-+ Spencer Kimball <spencer@xcf.berkeley.edu>,
-+ Josh MacDonald <jmacd@xcf.berkeley.edu>.
-+
-+License:
-+
-+ Copyright (C) Peter Mattis <petm@xcf.berkeley.edu>
-+ Copyright (C) Spencer Kimball <spencer@xcf.berkeley.edu>
-+ Copyright (C) Josh MacDonald <jmacd@xcf.berkeley.edu>
-+
-+ This library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2 of the License, or (at your option) any later version.
-+
-+ This library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with this library; if not, write to the Free Software
-+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-+
-+On Debian systems, the complete text of the GNU Lesser General Public License
-+can be found in /usr/share/common-licenses/LGPL file.
---- glib1.2-1.2.10.orig/debian/libglib1.2.install
-+++ glib1.2-1.2.10/debian/libglib1.2.install
-@@ -0,0 +1 @@
-+/usr/lib/*.so.*
---- glib1.2-1.2.10.orig/debian/compat
-+++ glib1.2-1.2.10/debian/compat
-@@ -0,0 +1 @@
-+5
---- glib1.2-1.2.10.orig/debian/libglib1.2.docs
-+++ glib1.2-1.2.10/debian/libglib1.2.docs
-@@ -0,0 +1,2 @@
-+AUTHORS
-+NEWS
---- glib1.2-1.2.10.orig/debian/control
-+++ glib1.2-1.2.10/debian/control
-@@ -0,0 +1,37 @@
-+Source: glib1.2
-+Section: oldlibs
-+Priority: optional
-+Maintainer: Daniel Baumann <daniel@debian.org>
-+Build-Depends: debhelper (>= 5), autotools-dev
-+Standards-Version: 3.7.2
-+
-+Package: libglib1.2
-+Architecture: any
-+Depends: ${shlibs:Depends}
-+Description: The GLib library of C routines
-+ GLib is a library containing many useful C routines for things such as trees,
-+ hashes, and lists. GLib was previously distributed with the GTK+ toolkit, but
-+ has been split off as of version 1.1.0.
-+
-+Package: libglib1.2-dev
-+Architecture: any
-+Depends: libglib1.2 (= ${Source-Version}), pkg-config
-+Conflicts: libglib1.2-doc
-+Replaces: libglib1.2-doc
-+Provides: libglib-dev
-+Description: The GLib library of C routines (development)
-+ GLib is a library containing many useful C routines for things such as trees,
-+ hashes, and lists. GLib was previously distributed with the GTK+ toolkit, but
-+ has been split off as of version 1.1.0.
-+ .
-+ This package contains the development files.
-+
-+Package: libglib1.2-dbg
-+Priority: extra
-+Architecture: any
-+Description: The GLib library of C routines (debug)
-+ GLib is a library containing many useful C routines for things such as trees,
-+ hashes, and lists. GLib was previously distributed with the GTK+ toolkit, but
-+ has been split off as of version 1.1.0.
-+ .
-+ This package contains the debug symbols.
---- glib1.2-1.2.10.orig/debian/rules
-+++ glib1.2-1.2.10/debian/rules
-@@ -0,0 +1,85 @@
-+#!/usr/bin/make -f
-+
-+# Uncomment this to turn on verbose mode.
-+#export DH_VERBOSE=1
-+
-+# These are used for cross-compiling and for saving the configure script
-+# from having to guess our platform (since we know it already)
-+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
-+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
-+
-+CFLAGS = -Wall -g
-+
-+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
-+ CFLAGS += -O0
-+else
-+ CFLAGS += -O2
-+endif
-+
-+config.status: configure
-+ dh_testdir
-+
-+ # Configuring package
-+ CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --enable-debug=yes
-+
-+build: build-stamp
-+build-stamp: config.status
-+ dh_testdir
-+
-+ # Building package
-+ $(MAKE)
-+
-+ touch build-stamp
-+
-+clean:
-+ dh_testdir
-+ dh_testroot
-+ rm -f build-stamp
-+
-+ # Cleaning package
-+ -$(MAKE) distclean
-+ifneq "$(wildcard /usr/share/misc/config.sub)" ""
-+ cp -f /usr/share/misc/config.sub config.sub
-+endif
-+ifneq "$(wildcard /usr/share/misc/config.guess)" ""
-+ cp -f /usr/share/misc/config.guess config.guess
-+endif
-+
-+ dh_clean
-+
-+install: build
-+ dh_testdir
-+ dh_testroot
-+ dh_clean -k
-+ dh_installdirs
-+
-+ # Installing package
-+ $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
-+
-+ # Installing lintian overrides
-+ for LINTIAN in debian/lintian/*; \
-+ do \
-+ install -D -m 0644 $$LINTIAN debian/`basename $$LINTIAN`/usr/share/lintian/overrides/`basename $$LINTIAN` || exit 1; \
-+ done
-+
-+binary-indep: build install
-+
-+binary-arch: build install
-+ dh_testdir
-+ dh_testroot
-+ dh_installchangelogs ChangeLog
-+ dh_installdocs
-+ dh_install --sourcedir=debian/tmp
-+ dh_link
-+ dh_strip --dbg-package=libglib1.2-dbg
-+ dh_compress
-+ dh_fixperms
-+ dh_makeshlibs
-+ dh_installdeb
-+ dh_shlibdeps
-+ dh_gencontrol
-+ dh_md5sums
-+ dh_builddeb
-+
-+binary: binary-indep binary-arch
-+.PHONY: build clean binary-indep binary-arch binary install
---- glib1.2-1.2.10.orig/debian/lintian/libglib1.2
-+++ glib1.2-1.2.10/debian/lintian/libglib1.2
-@@ -0,0 +1 @@
-+libglib1.2: package-name-doesnt-match-sonames libgmodule-1.2-0 libglib-1.2-0 libgthread-1.2-0
---- glib1.2-1.2.10.orig/debian/libglib1.2.shlibs
-+++ glib1.2-1.2.10/debian/libglib1.2.shlibs
-@@ -0,0 +1,3 @@
-+libglib-1.2 0 libglib1.2 (>= 1.2.0)
-+libgmodule-1.2 0 libglib1.2 (>= 1.2.0)
-+libgthread-1.2 0 libglib1.2 (>= 1.2.0)
---- glib1.2-1.2.10.orig/debian/changelog
-+++ glib1.2-1.2.10/debian/changelog
-@@ -0,0 +1,365 @@
-+glib1.2 (1.2.10-17) unstable; urgency=low
-+
-+ * Added patch from Petr Salinger <Petr.Salinger@seznam.cz> for proper
-+ libtoolizing (Closes: #261315).
-+ * Moved sections to oldlib.
-+
-+ -- Daniel Baumann <daniel@debian.org> Fri, 1 Dec 2006 10:01:00 +0100
-+
-+glib1.2 (1.2.10-16) unstable; urgency=low
-+
-+ * Fixed underquoted glib.m4 (Closes: #396667).
-+
-+ -- Daniel Baumann <daniel@debian.org> Wed, 29 Nov 2006 09:33:00 +0100
-+
-+glib1.2 (1.2.10-15) unstable; urgency=low
-+
-+ * Relibtoolized in order to make it build on kfreebsd (Closes: #261315).
-+
-+ -- Daniel Baumann <daniel@debian.org> Tue, 28 Nov 2006 17:29:00 +0100
-+
-+glib1.2 (1.2.10-14) unstable; urgency=medium
-+
-+ * Added patch from Roland Stigge <stigge@antcom.de> to add check for
-+ negative values in g_printf_string_upper_bound() (Closes: #387582).
-+
-+ -- Daniel Baumann <daniel@debian.org> Sun, 29 Oct 2006 15:43:00 +0200
-+
-+glib1.2 (1.2.10-13) unstable; urgency=low
-+
-+ * Readded temporary libglib-dev provides to libglib1.2-dev (Closes: #391239).
-+
-+ -- Daniel Baumann <daniel@debian.org> Thu, 5 Oct 2006 21:01:00 +0200
-+
-+glib1.2 (1.2.10-12) unstable; urgency=low
-+
-+ * New maintainer (Closes: #390845).
-+ * Acknoledge NMU (Closes: #222892, #263042, #323511).
-+ * Redone debian directory based on current debhelper templates, additionally:
-+ - added lintian overrides.
-+ - dropping useless README.Debian.
-+ - fixed conflicts (Closes: #356895).
-+ - merged libglib1.2-doc into libglib1.2-dev (useless micropackaging for two
-+ html files; no other package has a relation to libglib1.2-doc).
-+ - removed pre-sarge conflicts/replaces.
-+
-+ -- Daniel Baumann <daniel@debian.org> Tue, 3 Oct 2006 15:14:00 +0200
-+
-+glib1.2 (1.2.10-11) unstable; urgency=low
-+
-+ * Orphan this package.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Tue, 3 Oct 2006 18:50:20 +0900
-+
-+glib1.2 (1.2.10-10.1) unstable; urgency=high
-+
-+ * Non-maintainer upload.
-+ * High-urgency upload for RC bugfix.
-+ * Remove __const__ from __asm__ declarations in glib.h. This makes gcc
-+ happier and should make gabber buildable; thanks to Tollef Fog Heen for
-+ the patch. Closes: #323511.
-+
-+ -- Steve Langasek <vorlon@debian.org> Wed, 11 Jan 2006 03:06:34 -0800
-+
-+glib1.2 (1.2.10-10) unstable; urgency=low
-+
-+ * gstrfuncs.c:
-+ - patch from Andreas Jochens <aj@andaco.de> to fix the build with gcc4
-+ (Closes: #263042).
-+
-+ -- Sebastien Bacher <seb128@debian.org> Wed, 4 May 2005 12:10:14 +0200
-+
-+glib1.2 (1.2.10-9) unstable; urgency=low
-+
-+ * debian/control:
-+ - bumped Standards-Version to 3.5.10.0.
-+ - changed the sections for libglib1.2-dev and libglib1.2-dbg to libdevel.
-+ * debian/compat:
-+ - use it instead of DH_COMPAT.
-+ * gmodule/Makefile.in, gthread/Makefile.in:
-+ fix the undefined non-weak symbols. (closes: Bug#193347)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Sun, 18 May 2003 00:00:17 +0900
-+
-+glib1.2 (1.2.10-8) unstable; urgency=low
-+
-+ * Fixed libtool issue on mispel. (closes: Bug#183793)
-+ * acinclude.m4, ltconfig:
-+ - removed. it contained the old libtool stuff.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Tue, 11 Mar 2003 23:36:10 +0900
-+
-+glib1.2 (1.2.10-7) unstable; urgency=low
-+
-+ * debian/rules:
-+ - fix twice modified the maintainer script for dh_installdocs.
-+ - support DEB_HOST_GNU_TYPE and DEB_BUILD_GNU_TYPE.
-+ - support noopt and nostrip for DEB_BUILD_OPTIONS.
-+ - copy the latest config.sub and config.guess. (closes: Bug#181942)
-+ - don't call ldconfig for -dbg package.
-+ * debian/control:
-+ - bumped Standards-Version to 3.5.8.
-+ - updated Build-Depends.
-+ - split the documentation files into libglib1.2-doc.
-+ * debian/libglib1.2-doc.info: add glib.info. (closes: Bug#159677)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Thu, 27 Feb 2003 00:12:39 +0900
-+
-+glib1.2 (1.2.10-6) unstable; urgency=low
-+
-+ * debian/control:
-+ - removed libc6-dev from Build-Depends.
-+ - changed libc6-dev to libc6-dev | libc-dev in -dev's Depends.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Thu, 22 Aug 2002 02:02:32 +0900
-+
-+glib1.2 (1.2.10-5) unstable; urgency=low
-+
-+ * debian/control: add libc6-dev to Depends for -dev (closes: Bug#147653)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Wed, 22 May 2002 23:58:14 +0900
-+
-+glib1.2 (1.2.10-4) unstable; urgency=low
-+
-+ * debian/control: Fixed build-depends for NetBSD/i386 (closes: Bug#133443)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Wed, 13 Feb 2002 02:22:20 +0900
-+
-+glib1.2 (1.2.10-3) unstable; urgency=low
-+
-+ * Closed a NMU bug. (closes: Bug#93932)
-+ * Fixed description typo (closes: Bug#102988)
-+ * -dbg package contains shared libraries for debugging. so if you
-+ need static link, add -static to compiler option and use
-+ static libraries which is included in libglib1.2-dev.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Sat, 24 Nov 2001 20:54:25 +0900
-+
-+glib1.2 (1.2.10-2) unstable; urgency=low
-+
-+ * I took over this package from Ben.
-+ * Closed a bug because it is already fixed in the latest release.
-+ (closes: Bug#62463)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Sat, 10 Nov 2001 19:49:14 +0900
-+
-+glib1.2 (1.2.10-1.2) unstable; urgency=low
-+
-+ * Non-Maintainer Upload, approved by Ben.
-+ * Updated config.sub and config.guess for ia64 (closes: #93932).
-+ * If -dev's postinst fails at install-info, have a look at Bug#99816.
-+
-+ -- Jordi Mallach <jordi@debian.org> Sat, 23 Jun 2001 05:28:15 +0200
-+
-+glib1.2 (1.2.10-1.1) unstable; urgency=low
-+
-+ * Binary-only rebuild because of gcc 2.95 atexit() problem on i386.
-+ (Closes: #93052)
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 11 Apr 2001 19:46:27 -0700
-+
-+glib1.2 (1.2.10-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Patch config.sub for s390 architecture. (Closes: #88553)
-+
-+ -- Ben Gertzfield <che@debian.org> Sun, 1 Apr 2001 21:44:47 -0700
-+
-+glib1.2 (1.2.9-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Include upstream changelog. (Closes: #59744)
-+ * Note that the include files have been moved (according to
-+ upstream) to /usr/include/glib-1.2/, but this should not be a
-+ problem for anything using glib-config. Please, PLEASE, don't
-+ submit bugs on my poor packages because your program isn't using
-+ glib-config!
-+ * Fix bashisms in debian/rules. (Hah, caught 'em on my own..)
-+
-+ -- Ben Gertzfield <che@debian.org> Fri, 2 Mar 2001 16:18:36 -0800
-+
-+glib1.2 (1.2.8-2) unstable; urgency=low
-+
-+ * Bump Standards-Version to 3.2.1.
-+
-+ -- Ben Gertzfield <che@debian.org> Sat, 23 Dec 2000 01:31:39 -0800
-+
-+glib1.2 (1.2.8-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 24 May 2000 19:41:54 -0700
-+
-+glib1.2 (1.2.7-2) frozen unstable; urgency=medium
-+
-+ * Fix "guard code" in configure.in that tests for gcc version
-+ greater than 2.8 (will fail when 3.0 comes out.) This fixes
-+ *half* of the release-critical bug report #55246.
-+ * The other half of RC bug #55246 is not really a glib problem;
-+ G_GNUC_EXTENSION arguably should be defined on all platforms, but
-+ that's up to upstream to change this. It's been reported upstream as
-+ gnome bug #6328, http://bugs.gnome.org/db/63/6328.html. In any case,
-+ gentoo should be using G_GINT64_CONSTANT(12345) for portably declaring
-+ 64-bit constants, instead of the undocumented, internal,
-+ not-defined-on-all-platforms G_GNUC_EXTENSION. I will be reassigning
-+ the remainder of RC bug #55246 to gentoo.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 28 Feb 2000 12:33:57 -0800
-+
-+glib1.2 (1.2.7-1) frozen unstable; urgency=low
-+
-+ * To fix i18n problems with GTK+, glib 1.2.7 and gtk+ 1.2.7
-+ must both make it into frozen.
-+ * (New upstream version, too. :)
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 17 Feb 2000 09:12:20 -0800
-+
-+glib1.2 (1.2.6-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Make sure docs are in /usr/share/doc/libglib1.2 etc.
-+
-+ -- Ben Gertzfield <che@debian.org> Fri, 15 Oct 1999 09:44:19 -0700
-+
-+glib1.2 (1.2.5-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Fri, 24 Sep 1999 09:27:25 -0700
-+
-+glib1.2 (1.2.4-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 24 Aug 1999 11:10:11 -0700
-+
-+glib1.2 (1.2.3-2) unstable; urgency=low
-+
-+ * Erg. Make sure -dev depends on exact version of lib, and -dbg
-+ depends on exact version of -dev and lib.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 27 Jul 1999 15:24:33 -0700
-+
-+glib1.2 (1.2.3-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 11 May 1999 20:55:00 -0700
-+
-+glib1.2 (1.2.2-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 26 Apr 1999 18:15:06 -0700
-+
-+glib1.2 (1.2.1-2) unstable; urgency=low
-+
-+ * Recompile with GNU libc 2.1.
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 15 Apr 1999 13:26:50 -0700
-+
-+glib1.2 (1.2.1-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Make the shlibs looser; now packages depend on libglib1.2 (>= 1.2.0)
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 25 Mar 1999 10:33:26 -0800
-+
-+glib1.2 (1.2.0-1) unstable; urgency=low
-+
-+ * Hallelujah! :) We made it.
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 25 Feb 1999 22:17:36 -0800
-+
-+glib1.1.16 (1.1.16-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 16 Feb 1999 16:55:07 -0800
-+
-+glib1.1.13 (1.1.13-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 20 Jan 1999 18:25:48 -0800
-+
-+glib1.1.12 (1.1.12-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 4 Jan 1999 14:13:59 -0800
-+
-+glib1.1.11 (1.1.11-1) unstable; urgency=low
-+
-+ * New upstream version. (They skipped .10.)
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 30 Dec 1998 21:46:40 -0800
-+
-+glib1.1.9 (1.1.9-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Now debian/rules uses a $(version) variable to make my life easier.
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 17 Dec 1998 10:36:27 -0800
-+
-+glib1.1.6 (1.1.6-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 8 Dec 1998 20:54:59 -0800
-+
-+glib1.1.5 (1.1.5-2) unstable; urgency=low
-+
-+ * Now libglib1.1.5-dev Provides: libglib-dev and libglib1.1-dev.
-+
-+ -- Ben Gertzfield <che@debian.org> Sun, 29 Nov 1998 17:59:52 -0800
-+
-+glib1.1.5 (1.1.5-1) unstable; urgency=low
-+
-+ * Now the source and binary packages *all* specifically have the version
-+ number in them. This is so a new release of glib or gtk+ does not break
-+ all apps dependant upon glib or gtk+'s unstable branch.
-+ * Removed --enable-debug=no from libglib1.1 build; it was causing problems
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 24 Nov 1998 14:25:15 -0800
-+
-+glib (1.1.4-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * debian/control: libglib-dev and libglib-dbg now depend on ${Source-Version}
-+ of libglib1.1 to make upgrades force you to have one version of the library
-+ and -dev and -dbg, no more multiple versions allowed.
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 5 Nov 1998 10:50:03 -0800
-+
-+glib (1.1.3-2) unstable; urgency=low
-+
-+ * Rebuild with new clean-dbg target to fix my error helped along by
-+ an old broken debhelper.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 29 Sep 1998 13:01:24 -0700
-+
-+glib (1.1.3-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * New libglib-dbg package.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 21 Sep 1998 22:30:46 -0700
-+
-+glib (1.1.2-1) unstable; urgency=low
-+
-+ * New upstream version (that was fast!).
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 5 Aug 1998 12:13:59 -0700
-+
-+glib (1.1.1-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 4 Aug 1998 22:42:09 -0700
-+
-+glib (1.1.0-1) unstable; urgency=low
-+
-+ * Split off of GTK+ package upstream. New package.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 27 Jul 1998 14:11:04 -0700
---- glib1.2-1.2.10.orig/debian/libglib1.2-dev.docs
-+++ glib1.2-1.2.10/debian/libglib1.2-dev.docs
-@@ -0,0 +1,4 @@
-+AUTHORS
-+NEWS
-+docs/*.html
-+docs/*.texi
---- glib1.2-1.2.10.orig/glibconfig-sysdefs.h
-+++ glib1.2-1.2.10/glibconfig-sysdefs.h
-@@ -0,0 +1,6 @@
-+#define GLIB_SYSDEF_POLLIN =1
-+#define GLIB_SYSDEF_POLLOUT =4
-+#define GLIB_SYSDEF_POLLPRI =2
-+#define GLIB_SYSDEF_POLLERR =8
-+#define GLIB_SYSDEF_POLLHUP =16
-+#define GLIB_SYSDEF_POLLNVAL =32
---- glib1.2-1.2.10.orig/glib.h
-+++ glib1.2-1.2.10/glib.h
-@@ -535,7 +535,7 @@
- if (__builtin_constant_p (val)) \
- __v = GUINT16_SWAP_LE_BE_CONSTANT (val); \
- else \
-- __asm__ __const__ ("rorw $8, %w0" \
-+ __asm__ ("rorw $8, %w0" \
- : "=r" (__v) \
- : "0" ((guint16) (val))); \
- __v; }))
-@@ -548,7 +548,7 @@
- if (__builtin_constant_p (val)) \
- __v = GUINT32_SWAP_LE_BE_CONSTANT (val); \
- else \
-- __asm__ __const__ ("rorw $8, %w0\n\t" \
-+ __asm__ ("rorw $8, %w0\n\t" \
- "rorl $16, %0\n\t" \
- "rorw $8, %w0" \
- : "=r" (__v) \
-@@ -561,7 +561,7 @@
- if (__builtin_constant_p (val)) \
- __v = GUINT32_SWAP_LE_BE_CONSTANT (val); \
- else \
-- __asm__ __const__ ("bswap %0" \
-+ __asm__ ("bswap %0" \
- : "=r" (__v) \
- : "0" ((guint32) (val))); \
- __v; }))
diff --git a/source/l/glib/slack-desc b/source/l/glib/slack-desc
index 12c64008e..fd36b3eec 100644
--- a/source/l/glib/slack-desc
+++ b/source/l/glib/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/glib2/0001-GDBusProxy-Fix-a-memory-leak-during-initialization.patch b/source/l/glib2/0001-GDBusProxy-Fix-a-memory-leak-during-initialization.patch
deleted file mode 100644
index a315a01b0..000000000
--- a/source/l/glib2/0001-GDBusProxy-Fix-a-memory-leak-during-initialization.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From db641e32920ee8b553ab6f2d318aafa156e4390c Mon Sep 17 00:00:00 2001
-From: Evangelos Foutras <evangelos@foutrelis.com>
-Date: Wed, 25 Nov 2015 23:29:18 +0200
-Subject: [PATCH] GDBusProxy: Fix a memory leak during initialization
-
-https://bugzilla.gnome.org/show_bug.cgi?id=758641
----
- gio/gdbusproxy.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/gio/gdbusproxy.c b/gio/gdbusproxy.c
-index 52a22fb..7b1140f 100644
---- a/gio/gdbusproxy.c
-+++ b/gio/gdbusproxy.c
-@@ -1720,6 +1720,7 @@ async_initable_init_second_finish (GAsyncInitable *initable,
- if (result != NULL)
- {
- process_get_all_reply (proxy, result);
-+ g_variant_unref (result);
- }
-
- proxy->priv->initialized = TRUE;
---
-2.6.3
-
diff --git a/source/l/glib2/glib2.SlackBuild b/source/l/glib2/glib2.SlackBuild
index ae01163fc..0c67e84fd 100755
--- a/source/l/glib2/glib2.SlackBuild
+++ b/source/l/glib2/glib2.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,7 +20,9 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=glib2
VERSION=${VERSION:-$(echo glib-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
@@ -36,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-glib2
@@ -71,8 +80,6 @@ find . \
# Silly upstream, using the bleeding edge. Reconf:
#autoreconf --force --install
-patch -p1 < $CWD/0001-GDBusProxy-Fix-a-memory-leak-during-initialization.patch || exit 1
-
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -85,6 +92,9 @@ CFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Install profile scripts:
mkdir -p $PKG/etc/profile.d/
cp -a $CWD/libglib2.{csh,sh} $PKG/etc/profile.d/
diff --git a/source/l/glib2/slack-desc b/source/l/glib2/slack-desc
index 1633f2f7a..66ba82834 100644
--- a/source/l/glib2/slack-desc
+++ b/source/l/glib2/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/glibc/doinst.sh-glibc b/source/l/glibc/doinst.sh-glibc
index 472ab31a3..fc947587e 100644
--- a/source/l/glibc/doinst.sh-glibc
+++ b/source/l/glibc/doinst.sh-glibc
@@ -145,8 +145,9 @@ fi
( cd usr/lib ; ln -sf ../../lib/libnss_hesiod.so.2 libnss_hesiod.so )
( cd usr/lib ; rm -rf libnss_files.so )
( cd usr/lib ; ln -sf ../../lib/libnss_files.so.2 libnss_files.so )
-( cd usr/lib ; rm -rf libm.so )
-( cd usr/lib ; ln -sf ../../lib/libm.so.6 libm.so )
+# This is now a linker script:
+#( cd usr/lib ; rm -rf libm.so )
+#( cd usr/lib ; ln -sf ../../lib/libm.so.6 libm.so )
( cd usr/lib ; rm -rf libutil.so )
( cd usr/lib ; ln -sf ../../lib/libutil.so.1 libutil.so )
( cd usr/lib ; rm -rf libnss_compat.so )
diff --git a/source/l/glibc/glibc-2.10-dns-no-gethostbyname4.diff b/source/l/glibc/glibc-2.10-dns-no-gethostbyname4.diff
deleted file mode 100644
index 3fa365afa..000000000
--- a/source/l/glibc/glibc-2.10-dns-no-gethostbyname4.diff
+++ /dev/null
@@ -1,26 +0,0 @@
-The gethostbyname4() lookup method is problematic since it fires out both
-the A and AAAA DNS queries in parallel and over the same socket. This
-should work in theory, but it turns out that many cheap DSL modems and
-similar devices have buggy DNS servers - if the AAAA query arrives too
-quickly after the A query, the server will generate only a single reply
-with the A query id but returning an error for the AAAA query; we get
-stuck waiting for the second reply.
-
-For gethostbyname4() users affected, disabling IPv6 in the system might
-work around the issue, unfortunately it only helps with applications
-using AI_ADDRCONFIG (e.g. Firefox); some (notably e.g. Pidgin) neglect
-to do that.
-
-Real fix should be using separate ports for the A and AAAA queries.
-
---- resolv/Versions 2008-08-02 10:26:09.000000000 +0200
-+++ resolv/Versions 2008-12-08 12:51:53.000000000 +0100
-@@ -102,7 +102,7 @@ libnss_dns {
- _nss_dns_gethostbyname_r; _nss_dns_getnetbyaddr_r;
- _nss_dns_getnetbyname_r; _nss_dns_getcanonname_r;
- _nss_dns_gethostbyaddr2_r;
-- _nss_dns_gethostbyname4_r;
-+# _nss_dns_gethostbyname4_r;
- }
- }
-
diff --git a/source/l/glibc/glibc-c-utf8-locale.patch b/source/l/glibc/glibc-c-utf8-locale.patch
index 70c92a986..7fabf303f 100644
--- a/source/l/glibc/glibc-c-utf8-locale.patch
+++ b/source/l/glibc/glibc-c-utf8-locale.patch
@@ -1,5 +1,18 @@
---- ./localedata/SUPPORTED.orig 2015-08-05 01:42:21.000000000 -0500
-+++ ./localedata/SUPPORTED 2015-12-17 17:07:08.053200616 -0600
+From 2eda7b462b415105f5a05c1323372d4e39d46439 Mon Sep 17 00:00:00 2001
+From: Mike FABIAN <mfabian@redhat.com>
+Date: Mon, 10 Aug 2015 15:58:12 +0200
+Subject: [PATCH] Add a C.UTF-8 locale
+
+---
+ localedata/SUPPORTED | 1 +
+ localedata/locales/C | 238 +++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 239 insertions(+)
+ create mode 100644 localedata/locales/C
+
+diff --git a/localedata/SUPPORTED b/localedata/SUPPORTED
+index 8ca023e..2a78391 100644
+--- a/localedata/SUPPORTED
++++ b/localedata/SUPPORTED
@@ -1,6 +1,7 @@
# This file names the currently supported and somewhat tested locales.
# If you have any additions please file a glibc bug report.
@@ -8,8 +21,11 @@
aa_DJ.UTF-8/UTF-8 \
aa_DJ/ISO-8859-1 \
aa_ER/UTF-8 \
---- ./localedata/locales/C.orig 2015-12-17 17:07:08.053200616 -0600
-+++ ./localedata/locales/C 2015-12-17 17:07:08.053200616 -0600
+diff --git a/localedata/locales/C b/localedata/locales/C
+new file mode 100644
+index 0000000..fdf460e
+--- /dev/null
++++ b/localedata/locales/C
@@ -0,0 +1,238 @@
+escape_char /
+comment_char %
@@ -20,7 +36,7 @@
+source ""
+address ""
+contact ""
-+email ""
++email "mfabian@redhat.com"
+tel ""
+fax ""
+language "C"
@@ -28,18 +44,18 @@
+revision "1.0"
+date "2015-08-10"
+%
-+category "C:2015";LC_IDENTIFICATION
-+category "C:2015";LC_CTYPE
-+category "C:2015";LC_COLLATE
-+category "C:2015";LC_TIME
-+category "C:2015";LC_NUMERIC
-+category "C:2015";LC_MONETARY
-+category "C:2015";LC_MESSAGES
-+category "C:2015";LC_PAPER
-+category "C:2015";LC_NAME
-+category "C:2015";LC_ADDRESS
-+category "C:2015";LC_TELEPHONE
-+category "C:2015";LC_MEASUREMENT
++category "i18n:2012";LC_IDENTIFICATION
++category "i18n:2012";LC_CTYPE
++category "i18n:2012";LC_COLLATE
++category "i18n:2012";LC_TIME
++category "i18n:2012";LC_NUMERIC
++category "i18n:2012";LC_MONETARY
++category "i18n:2012";LC_MESSAGES
++category "i18n:2012";LC_PAPER
++category "i18n:2012";LC_NAME
++category "i18n:2012";LC_ADDRESS
++category "i18n:2012";LC_TELEPHONE
++category "i18n:2012";LC_MEASUREMENT
+END LC_IDENTIFICATION
+
+LC_CTYPE
@@ -249,3 +265,6 @@
+measurement 1
+END LC_MEASUREMENT
+
+--
+2.4.3
+
diff --git a/source/l/glibc/glibc.SlackBuild b/source/l/glibc/glibc.SlackBuild
index 9418e6692..b5fdf021a 100755
--- a/source/l/glibc/glibc.SlackBuild
+++ b/source/l/glibc/glibc.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,12 @@
## build glibc-$VERSION for Slackware
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=glibc
VERSION=${VERSION:-$(echo glibc-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
CHECKOUT=${CHECKOUT:-""}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# I was considering disabling NSCD, but MoZes talked me out of it. :)
#DISABLE_NSCD=" --disable-nscd "
@@ -40,6 +43,17 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "glibc-$VERSION-$ARCH-$BUILD.txz"
+ echo "glibc-i18n-$VERSION-$ARCH-$BUILD.txz"
+ echo "glibc-profile-$VERSION-$ARCH-$BUILD.txz"
+ echo "glibc-solibs-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
# I'll break this out as an option for fun :-)
case $ARCH in
i386)
@@ -97,10 +111,7 @@ CVSVER=${VERSION}${CHECKOUT}
# Be sure the correct version of the headers package is installed BEFORE
# building glibc!
-CWD=$(pwd)
-# Temporary build location. This should not be a directory
-# path a non-root user could create later...
-TMP=${TMP:-/glibc-tmp-$(mcookie)}
+TMP=${TMP:-/tmp}
mkdir -p $TMP
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -129,21 +140,12 @@ apply_patches() {
# Use old-style locale directories rather than a single (and strangely
# formatted) /usr/lib/locale/locale-archive file:
zcat $CWD/glibc.locale.no-archive.diff.gz | patch -p1 --verbose || exit 1
- # The is_IS locale is causing a strange error about the "echn" command
- # not existing. This patch reverts is_IS to the version shipped in
- # glibc-2.5:
- zcat $CWD/is_IS.diff.gz | patch -p1 --verbose || exit 1
# Support ru_RU.CP1251 locale:
zcat $CWD/glibc.ru_RU.CP1251.diff.gz | patch -p1 --verbose || exit 1
- # Fix resolver problem with glibc-2.9:
- zcat $CWD/glibc-2.10-dns-no-gethostbyname4.diff.gz | patch -p0 --verbose || exit 1
- # This reverts a patch that was made to glibc to fix "namespace leakage",
- # which seems to cause some build failures (e.g. with conntrack):
- zcat $CWD/glibc.revert.to.fix.build.breakages.diff.gz | patch -p1 -l --verbose || exit 1
- # Make it harder for people to trick ldd into running code:
- zcat $CWD/glibc.ldd.trace.through.dynamic.linker.diff.gz | patch -p1 --verbose || exit 1
# Add a C.UTF-8 locale:
zcat $CWD/glibc-c-utf8-locale.patch.gz | patch -p1 --verbose || exit 1
+ # Linux: use reserved name __key in pkey_get [BZ #22797]:
+ zcat $CWD/glibc.pkey_get.56170e0.diff.gz | patch -p1 --verbose || exit 1
}
# This is going to be the initial $DESTDIR:
@@ -220,6 +222,7 @@ CFLAGS="-g $OPTIMIZ" \
--enable-kernel=2.6.32 \
--with-headers=/usr/include \
--enable-add-ons \
+ --enable-obsolete-nsl \
--enable-obsolete-rpc \
--enable-profile \
$DISABLE_NSCD \
@@ -335,7 +338,8 @@ mkdir -p usr/lib${LIBDIRSUFFIX}
mv $PKG/usr/lib${LIBDIRSUFFIX}/debug usr/lib${LIBDIRSUFFIX}
mkdir install
cp -a $CWD/slack-desc.glibc-debug install/slack-desc
-makepkg -l y -c n $TMP/glibc-debug-$VERSION-$SLACKWARE_ARCH-$BUILD.txz
+## Don't package this:
+#makepkg -l y -c n $TMP/glibc-debug-$VERSION-$SLACKWARE_ARCH-$BUILD.txz
## INSTEAD, NUKE THESE LIBS
#rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/debug
@@ -406,6 +410,11 @@ chown -R root:root etc
chmod 755 etc/profile.d/*
# Ditch links (these are in doinst.sh-glibc):
find . -type l -exec rm {} \;
+# libm.so is *not* a linker script on all $ARCH.
+# If it's missing now, replace the symlink:
+if [ ! -r usr/lib${LIBDIRSUFFIX}/libm.so ]; then
+ ( cd usr/lib${LIBDIRSUFFIX} ; ln -sf ../../lib${LIBDIRSUFFIX}/libm.so.6 libm.so )
+fi
mkdir install
cp -a $CWD/slack-desc.glibc install/slack-desc
cp -a $CWD/doinst.sh-glibc install/doinst.sh
diff --git a/source/l/glibc/glibc.ldd.trace.through.dynamic.linker.diff b/source/l/glibc/glibc.ldd.trace.through.dynamic.linker.diff
deleted file mode 100644
index 6b1f5c843..000000000
--- a/source/l/glibc/glibc.ldd.trace.through.dynamic.linker.diff
+++ /dev/null
@@ -1,49 +0,0 @@
-2009-11-08 Aurelien Jarno <aurelien@aurel32.net>
-
- * elf/ldd.bash.in: also handle error code 126 (ld.so non
- executable). Always trace dynamic library dependencies through
- the dynamic linker.
-
---- a/elf/ldd.bash.in
-+++ b/elf/ldd.bash.in
-@@ -153,8 +153,6 @@ for file do
- echo "ldd: ${file}:" $"not regular file" >&2
- result=1
- elif test -r "$file"; then
-- test -x "$file" || echo 'ldd:' $"\
--warning: you do not have execution permission for" "\`$file'" >&2
- RTLD=
- ret=1
- for rtld in ${RTLDLIST}; do
-@@ -167,28 +165,16 @@ warning: you do not have execution permission for" "\`$file'" >&2
- fi
- done
- case $ret in
-- 0)
-- # If the program exits with exit code 5, it means the process has been
-- # invoked with __libc_enable_secure. Fall back to running it through
-- # the dynamic linker.
-- try_trace "$file"
-- rc=$?
-- if [ $rc = 5 ]; then
-- try_trace "$RTLD" "$file"
-- rc=$?
-- fi
-- [ $rc = 0 ] || result=1
-+ 0|2)
-+ try_trace "$RTLD" "$file" || result=1
- ;;
-- 1)
-+ 1|126)
- # This can be a non-ELF binary or no binary at all.
- nonelf "$file" || {
- echo $" not a dynamic executable"
- result=1
- }
- ;;
-- 2)
-- try_trace "$RTLD" "$file" || result=1
-- ;;
- *)
- echo 'ldd:' ${RTLD} $"exited with unknown exit code" "($ret)" >&2
- exit 1
diff --git a/source/l/glibc/glibc.locale.no-archive.diff b/source/l/glibc/glibc.locale.no-archive.diff
index bf1a83b71..4b2828ba7 100644
--- a/source/l/glibc/glibc.locale.no-archive.diff
+++ b/source/l/glibc/glibc.locale.no-archive.diff
@@ -1,10 +1,10 @@
---- ./localedata/Makefile.orig 2003-11-20 15:31:38.000000000 -0800
-+++ ./localedata/Makefile 2004-08-03 17:20:54.000000000 -0700
-@@ -222,6 +222,7 @@
+--- ./localedata/Makefile.orig 2018-02-04 23:06:03.700212576 -0600
++++ ./localedata/Makefile 2018-02-04 23:07:10.102218076 -0600
+@@ -223,6 +223,7 @@
echo -n '...'; \
input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \
- $(LOCALEDEF) --alias-file=../intl/locale.alias \
+ $(LOCALEDEF) $$flags --alias-file=../intl/locale.alias \
+ --no-archive \
- -i locales/$$input -c -f charmaps/$$charset \
- $(addprefix --prefix=,$(install_root)) $$locale; \
- echo ' done'; \
+ -i locales/$$input -f charmaps/$$charset \
+ $(addprefix --prefix=,$(install_root)) $$locale \
+ && echo ' done'; \
diff --git a/source/l/glibc/glibc.make-3.82.diff b/source/l/glibc/glibc.make-3.82.diff
deleted file mode 100644
index 56b0675b3..000000000
--- a/source/l/glibc/glibc.make-3.82.diff
+++ /dev/null
@@ -1,28 +0,0 @@
-Submitted By: Matt Burgess <matthew_at_linuxfromscratch_dot_org>
-Date: 2010-07-26
-Initial Package Version: 2.11.2
-Upstream Status: Not submitted
-Origin: Denis Onischenko
- (http://www.mail-archive.com/help-make@gnu.org/msg08847.html)
-Description: Fixes an incompatibility with Make-3.82.
-
-diff -Naur glibc-2.11.2.orig/manual/Makefile glibc-2.11.2/manual/Makefile
---- glibc-2.11.2.orig/manual/Makefile 2010-05-19 20:38:20.000000000 +0000
-+++ glibc-2.11.2/manual/Makefile 2010-07-26 06:51:27.049899308 +0000
-@@ -232,9 +232,13 @@
- .PHONY: stubs
- stubs: $(objpfx)stubs
- endif
--$(objpfx)stubs ../po/manual.pot $(objpfx)stamp%:
-- $(make-target-directory)
-- touch $@
-+$(objpfx)stubs ../po/manual.pot:
-+ $(make-target-directory)
-+ touch $@
-+
-+$(objpfx)stamp%:
-+ $(make-target-directory)
-+ touch $@
-
- # Make the target directory if it doesn't exist, using the `mkinstalldirs'
- # script that does `mkdir -p' even if `mkdir' doesn't support that flag.
diff --git a/source/l/glibc/glibc.pkey_get.56170e0.diff b/source/l/glibc/glibc.pkey_get.56170e0.diff
new file mode 100644
index 000000000..d7111fbae
--- /dev/null
+++ b/source/l/glibc/glibc.pkey_get.56170e0.diff
@@ -0,0 +1,28 @@
+From 56170e064e2b21ce204f0817733e92f1730541ea Mon Sep 17 00:00:00 2001
+From: Igor Gnatenko <ignatenko@redhat.com>
+Date: Wed, 7 Feb 2018 13:53:10 +0100
+Subject: [PATCH] Linux: use reserved name __key in pkey_get [BZ #22797]
+
+_key is not reserved name and we should avoid using that. It seems that
+it was simple typo when pkey_* was implemented.
+
+(cherry picked from commit 388ff7bd0d57d7061fdd39a2f26f65687e8058da)
+---
+ sysdeps/unix/sysv/linux/bits/mman-shared.h | 2 +-
+ 1 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/sysdeps/unix/sysv/linux/bits/mman-shared.h b/sysdeps/unix/sysv/linux/bits/mman-shared.h
+index 7715e68..d15ba95 100644
+--- a/sysdeps/unix/sysv/linux/bits/mman-shared.h
++++ b/sysdeps/unix/sysv/linux/bits/mman-shared.h
+@@ -61,7 +61,7 @@ int pkey_set (int __key, unsigned int __access_rights) __THROW;
+
+ /* Return the access rights for the current thread for KEY, which must
+ have been allocated using pkey_alloc. */
+-int pkey_get (int _key) __THROW;
++int pkey_get (int __key) __THROW;
+
+ /* Free an allocated protection key, which must have been allocated
+ using pkey_alloc. */
+--
+2.9.3
diff --git a/source/l/glibc/glibc.revert.to.fix.build.breakages.diff b/source/l/glibc/glibc.revert.to.fix.build.breakages.diff
deleted file mode 100644
index 9c8e93b9b..000000000
--- a/source/l/glibc/glibc.revert.to.fix.build.breakages.diff
+++ /dev/null
@@ -1,13 +0,0 @@
---- ./sysdeps/unix/sysv/linux/bits/socket.h.orig 2008-07-27 03:25:30.000000000 -0500
-+++ ./sysdeps/unix/sysv/linux/bits/socket.h 2009-02-24 17:38:52.000000000 -0600
-@@ -26,8 +26,9 @@
- #endif
-
- #define __need_size_t
-+#define __need_NULL
- #include <stddef.h>
--
-+#include <limits.h>
- #include <sys/types.h>
-
- /* Type for length arguments in socket calls. */
diff --git a/source/l/glibc/is_IS.diff b/source/l/glibc/is_IS.diff
deleted file mode 100644
index 52a99696c..000000000
--- a/source/l/glibc/is_IS.diff
+++ /dev/null
@@ -1,19 +0,0 @@
---- ./localedata/locales/is_IS.orig 2007-09-30 17:30:17.000000000 -0500
-+++ ./localedata/locales/is_IS 2006-07-30 17:19:43.000000000 -0500
-@@ -947,6 +947,7 @@
- <UE00D> IGNORE;IGNORE;IGNORE;<UE00D>
- <UE00E> IGNORE;IGNORE;IGNORE;<UE00E>
- <UE00F> IGNORE;IGNORE;IGNORE;<UE00F>
-+<"=> IGNORE;IGNORE;IGNORE;<"=>
- <UE011> IGNORE;IGNORE;IGNORE;<UE011>
- <UE012> IGNORE;IGNORE;IGNORE;<UE012>
- <UE013> IGNORE;IGNORE;IGNORE;<UE013>
-@@ -955,6 +956,8 @@
- <UE017> IGNORE;IGNORE;IGNORE;<UE017>
- <UE018> IGNORE;IGNORE;IGNORE;<UE018>
- <UE019> IGNORE;IGNORE;IGNORE;<UE019>
-+<Mc> IGNORE;IGNORE;IGNORE;<Mc>
-+<Fl> IGNORE;IGNORE;IGNORE;<Fl>
- UNDEFINED IGNORE;IGNORE;IGNORE
-
- <U0030> <U0030>;<U0030>;IGNORE;IGNORE
diff --git a/source/l/glibc/slack-desc.glibc b/source/l/glibc/slack-desc.glibc
index c9c35c2da..0deb19d19 100644
--- a/source/l/glibc/slack-desc.glibc
+++ b/source/l/glibc/slack-desc.glibc
@@ -1,16 +1,16 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
glibc: glibc (GNU C libraries)
glibc:
-glibc: This package contains the GNU C libraries and header files. The GNU
+glibc: This package contains the GNU C libraries and header files. The GNU
glibc: C library was written originally by Roland McGrath, and is currently
-glibc: maintained by Ulrich Drepper. Some parts of the library were
+glibc: maintained by Ulrich Drepper. Some parts of the library were
glibc: contributed or worked on by other people.
glibc:
glibc: You'll need this package to compile programs.
diff --git a/source/l/glibc/slack-desc.glibc-debug b/source/l/glibc/slack-desc.glibc-debug
index 79398d0b6..8cb64d59a 100644
--- a/source/l/glibc/slack-desc.glibc-debug
+++ b/source/l/glibc/slack-desc.glibc-debug
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
glibc-debug: glibc-debug (GNU C libraries with debugging symbols)
glibc-debug:
glibc-debug: This package contains versions of the GNU C libraries with debugging
-glibc-debug: information. These are needed only if you wish to be able to step
-glibc-debug: through C library routines while debugging programs. Most debugging
+glibc-debug: information. These are needed only if you wish to be able to step
+glibc-debug: through C library routines while debugging programs. Most debugging
glibc-debug: efforts will not require these.
glibc-debug: To use these libraries, set LD_LIBRARY_PATH when calling the debugger:
-glibc-debug: LD_LIBRARY_PATH=/usr/lib/debug gdb <executable>
+glibc-debug: LD_LIBRARY_PATH=/usr/lib/debug gdb <executable>
glibc-debug:
glibc-debug: Or, use this approach if you need to debug a setuid binary:
-glibc-debug: su user -c "LD_LIBRARY_PATH=/usr/lib/debug gdb <executable>"
+glibc-debug: su user -c "LD_LIBRARY_PATH=/usr/lib/debug gdb <executable>"
diff --git a/source/l/glibc/slack-desc.glibc-i18n b/source/l/glibc/slack-desc.glibc-i18n
index 1a678d98a..a697bc3db 100644
--- a/source/l/glibc/slack-desc.glibc-i18n
+++ b/source/l/glibc/slack-desc.glibc-i18n
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/glibc/slack-desc.glibc-profile b/source/l/glibc/slack-desc.glibc-profile
index 8c873fd92..4b4100e08 100644
--- a/source/l/glibc/slack-desc.glibc-profile
+++ b/source/l/glibc/slack-desc.glibc-profile
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
glibc-profile: glibc-profile (GNU C libraries with profiling support)
glibc-profile:
glibc-profile: This package contains static versions of the GNU C libraries with
-glibc-profile: support for profiling binaries using gprof. gprof calculates how
+glibc-profile: support for profiling binaries using gprof. gprof calculates how
glibc-profile: much time a program spends in each routine which can suggest where
glibc-profile: to concentrate efforts to improve performance.
glibc-profile:
diff --git a/source/l/glibc/slack-desc.glibc-solibs b/source/l/glibc/slack-desc.glibc-solibs
index 807df645a..a538452f7 100644
--- a/source/l/glibc/slack-desc.glibc-solibs
+++ b/source/l/glibc/slack-desc.glibc-solibs
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/glibc/slack-desc.glibc-solibs-linuxthreads b/source/l/glibc/slack-desc.glibc-solibs-linuxthreads
index 9efe3bf1d..fd91f4c5b 100644
--- a/source/l/glibc/slack-desc.glibc-solibs-linuxthreads
+++ b/source/l/glibc/slack-desc.glibc-solibs-linuxthreads
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,9 +10,10 @@ glibc-solibs-linuxthreads: glibc-solibs-linuxthreads (LinuxThreads shared GNU C
glibc-solibs-linuxthreads:
glibc-solibs-linuxthreads: This package contains the shared libraries for glibc that uses
glibc-solibs-linuxthreads: LinuxThreads, the threading implementation in Linux 2.4.x and
-glibc-solibs-linuxthreads: earlier kernels. In some cases you'll need to use these libraries
+glibc-solibs-linuxthreads: earlier kernels. In some cases you'll need to use these libraries
glibc-solibs-linuxthreads: to run old binaries by setting these environment variables:
glibc-solibs-linuxthreads: export LD_ASSUME_KERNEL=2.4.33
glibc-solibs-linuxthreads: export LD_LIBRARY_PATH=/lib/obsolete/linuxthreads
glibc-solibs-linuxthreads: old-program
-glibc-solibs-linuxthreads: Most users should have no need for this package. Recompile. :-)
+glibc-solibs-linuxthreads: Most users should have no need for this package. Recompile. :-)
+glibc-solibs-linuxthreads:
diff --git a/source/l/glibmm/glibmm.SlackBuild b/source/l/glibmm/glibmm.SlackBuild
index 7639f0541..b0878202d 100755
--- a/source/l/glibmm/glibmm.SlackBuild
+++ b/source/l/glibmm/glibmm.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,6 +20,8 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=glibmm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
@@ -32,9 +34,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -79,6 +88,9 @@ CXXFLAGS="$SLKCFLAGS -std=c++11" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/glibmm/slack-desc b/source/l/glibmm/slack-desc
index ab49e5da4..cdf94173d 100644
--- a/source/l/glibmm/slack-desc
+++ b/source/l/glibmm/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -13,7 +13,7 @@ glibmm: APIs such as a std::string-like UTF8 string class, string utility
glibmm: methods, such as a text encoding converter API, file access,
glibmm: and threads.
glibmm:
-glibmm: Homepage: http://www.gtkmm.org/
+glibmm: Homepage: http://www.gtkmm.org/
glibmm:
glibmm:
glibmm:
diff --git a/source/l/gmime/gmime.SlackBuild b/source/l/gmime/gmime.SlackBuild
index b7d6bb7ca..81824a3dd 100755
--- a/source/l/gmime/gmime.SlackBuild
+++ b/source/l/gmime/gmime.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,30 +20,38 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gmime
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
NUMJOBS=${NUMJOBS:-" -j7 "}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -80,12 +88,15 @@ CFLAGS="$SLKCFLAGS" \
--disable-static \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/gmime/slack-desc b/source/l/gmime/slack-desc
index f61c6e04a..5ac153e8c 100644
--- a/source/l/gmime/slack-desc
+++ b/source/l/gmime/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/gmm/gmm.SlackBuild b/source/l/gmm/gmm.SlackBuild
index 2742fd106..cc803afc0 100755
--- a/source/l/gmm/gmm.SlackBuild
+++ b/source/l/gmm/gmm.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Heinz Wiesinger <hmwiesinger@gmx.at>
-# Copyright 2008, 2009, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,14 +23,22 @@
# Modified by Robby Workman <rworkman@slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gmm
-VERSION=4.2
+VERSION=4.3
ARCH=noarch
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,7 +55,7 @@ chmod -R u+w,go+r-w,a-s .
./configure \
--prefix=/usr \
--sysconfdir=/etc \
- --localstatedir=/var
+ --localstatedir=/var || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/l/gmm/gmm.info b/source/l/gmm/gmm.info
deleted file mode 100644
index 0d193be21..000000000
--- a/source/l/gmm/gmm.info
+++ /dev/null
@@ -1,2 +0,0 @@
-HOMEPAGE="http://home.gna.org/getfem/gmm_intro.html"
-DOWNLOAD="http://download.gna.org/getfem/stable/gmm-3.0.tar.gz"
diff --git a/source/l/gmm/gmm.url b/source/l/gmm/gmm.url
new file mode 100644
index 000000000..86398a109
--- /dev/null
+++ b/source/l/gmm/gmm.url
@@ -0,0 +1,2 @@
+http://getfem.org/gmm/index.html
+http://download-mirror.savannah.gnu.org/releases/getfem/stable/gmm-4.3.tar.gz
diff --git a/source/l/gmm/slack-desc b/source/l/gmm/slack-desc
index af0b80903..5b01f19a0 100644
--- a/source/l/gmm/slack-desc
+++ b/source/l/gmm/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler--------------------------------------------------------|
gmm: gmm (C++ generic matrix template library)
gmm:
gmm: Gmm++ is a generic C++ template library for sparse, dense and skyline
-gmm: matrices. It is built as a set of generic algorithms (mult, add, copy,
+gmm: matrices. It is built as a set of generic algorithms (mult, add, copy,
gmm: sub-matrices, dense and sparse solvers, etc.) for any interfaced vector
-gmm: type or matrix type. It can be viewed as a glue library that allows
-gmm: cooperation between several vector and matrix types. However, basic
+gmm: type or matrix type. It can be viewed as a glue library that allows
+gmm: cooperation between several vector and matrix types. However, basic
gmm: sparse, dense and skyline matrix/vector types are built in Gmm++, so
gmm: it can be used as a standalone linear algebra library.
gmm:
diff --git a/source/l/gmp/gmp.SlackBuild b/source/l/gmp/gmp.SlackBuild
index 6c58428df..c9f0f793c 100755
--- a/source/l/gmp/gmp.SlackBuild
+++ b/source/l/gmp/gmp.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,8 +22,11 @@
# Modified 2011 by Eric Hameleers <alien at slackware.com> for ARM port.
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=gmp
VERSION=${VERSION:-$(echo gmp-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
MARCH=$( uname -m )
@@ -37,9 +40,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=/$TMP/package-gmp
rm -rf $PKG
@@ -97,6 +107,9 @@ CFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
rm $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*
diff --git a/source/l/gmp/slack-desc b/source/l/gmp/slack-desc
index 503e0ff16..d51ab1317 100644
--- a/source/l/gmp/slack-desc
+++ b/source/l/gmp/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
gmp: gmp (GNU multiple precision arithmetic library)
gmp:
gmp: GNU MP is a library for arbitrary precision arithmetic, operating on
-gmp: signed integers, rational numbers, and floating point numbers. It has
+gmp: signed integers, rational numbers, and floating point numbers. It has
gmp: a rich set of functions, and the functions have a regular interface.
gmp:
gmp:
diff --git a/source/l/gnome-keyring/gnome-keyring.SlackBuild b/source/l/gnome-keyring/gnome-keyring.SlackBuild
index f6cfffb3f..4374d8773 100755
--- a/source/l/gnome-keyring/gnome-keyring.SlackBuild
+++ b/source/l/gnome-keyring/gnome-keyring.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gnome-keyring
# Copyright 2010, 2011 Robby Workman, Northport, Alabama, USA
-# Copyright 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=gnome-keyring
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/gnome-keyring/slack-desc b/source/l/gnome-keyring/slack-desc
index 33e06ef94..64a1eb6aa 100644
--- a/source/l/gnome-keyring/slack-desc
+++ b/source/l/gnome-keyring/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ gnome-keyring: GNOME Keyring (a tool to handle security credentials)
gnome-keyring:
gnome-keyring: GNOME Keyring is a program designed to take care of the user's
gnome-keyring: security credentials, such as user names and passwords, in an
-gnome-keyring: easy to access manner. The keyring is implemented as a daemon
+gnome-keyring: easy to access manner. The keyring is implemented as a daemon
gnome-keyring: and uses the process name gnome-keyring-daemon.
gnome-keyring:
gnome-keyring:
diff --git a/source/l/gnome-themes-standard/gnome-themes-standard.SlackBuild b/source/l/gnome-themes-standard/gnome-themes-standard.SlackBuild
index c3d537aa1..c527377d5 100755
--- a/source/l/gnome-themes-standard/gnome-themes-standard.SlackBuild
+++ b/source/l/gnome-themes-standard/gnome-themes-standard.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gnome-themes-standard
# Copyright 2013 Robby Workman, Northport, Alabama, USA
-# Copyright 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013i, 2018 Patrick J. Volkerding, Sebeka, MN, USA
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=gnome-themes-standard
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/gnome-themes-standard/slack-desc b/source/l/gnome-themes-standard/slack-desc
index d16605679..654f0c35b 100644
--- a/source/l/gnome-themes-standard/slack-desc
+++ b/source/l/gnome-themes-standard/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/gnu-efi/gnu-efi.SlackBuild b/source/l/gnu-efi/gnu-efi.SlackBuild
index b17a59537..ec5967dd8 100755
--- a/source/l/gnu-efi/gnu-efi.SlackBuild
+++ b/source/l/gnu-efi/gnu-efi.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gnu-efi
# Copyright 2009-2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2013, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=gnu-efi
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/gnu-efi/gnu-efi.url b/source/l/gnu-efi/gnu-efi.url
new file mode 100644
index 000000000..bcc8aa9f5
--- /dev/null
+++ b/source/l/gnu-efi/gnu-efi.url
@@ -0,0 +1 @@
+https://downloads.sourceforge.net/gnu-efi/gnu-efi-3.0.6.tar.bz2
diff --git a/source/l/gnu-efi/slack-desc b/source/l/gnu-efi/slack-desc
index 7bc2f0721..f15c214bd 100644
--- a/source/l/gnu-efi/slack-desc
+++ b/source/l/gnu-efi/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
diff --git a/source/l/gobject-introspection/gobject-introspection.SlackBuild b/source/l/gobject-introspection/gobject-introspection.SlackBuild
index cf7207844..07bc55e6e 100755
--- a/source/l/gobject-introspection/gobject-introspection.SlackBuild
+++ b/source/l/gobject-introspection/gobject-introspection.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gobject-introspection
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=gobject-introspection
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,9 +38,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -69,8 +78,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz
-cd $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -91,6 +100,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/gobject-introspection/slack-desc b/source/l/gobject-introspection/slack-desc
index ca41d8c88..0826a8cd8 100644
--- a/source/l/gobject-introspection/slack-desc
+++ b/source/l/gobject-introspection/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -14,6 +14,6 @@ gobject-introspection: can be used for automatic code generation for bindings, A
gobject-introspection: verification, and documentation generation.
gobject-introspection:
gobject-introspection: For more information, check out:
-gobject-introspection: http://live.gnome.org/GObjectIntrospection
+gobject-introspection: http://live.gnome.org/GObjectIntrospection
gobject-introspection:
gobject-introspection:
diff --git a/source/l/grantlee/grantlee.SlackBuild b/source/l/grantlee/grantlee.SlackBuild
index 086478237..599cb746c 100755
--- a/source/l/grantlee/grantlee.SlackBuild
+++ b/source/l/grantlee/grantlee.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2010, 2011 Eric Hameleers, Eindhoven, NL
-# Copyright 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=grantlee
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -32,7 +33,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -40,8 +41,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -57,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/grantlee/slack-desc b/source/l/grantlee/slack-desc
index 445d14191..8acc268cc 100644
--- a/source/l/grantlee/slack-desc
+++ b/source/l/grantlee/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-------------------------------------------------------|
grantlee: grantlee (string template engine)
grantlee:
grantlee: Grantlee is a plugin based String Template system written using the
-grantlee: Qt framework. The goals of the project are to make it easier for
+grantlee: Qt framework. The goals of the project are to make it easier for
grantlee: application developers to separate the structure of documents from
grantlee: the data they contain, opening the door for theming.
grantlee:
diff --git a/source/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild b/source/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild
index 5ad31e5c2..5a92e8676 100755
--- a/source/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild
+++ b/source/l/gsettings-desktop-schemas/gsettings-desktop-schemas.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gsettings-desktop-schemas
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=gsettings-desktop-schemas
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -37,7 +39,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/gsettings-desktop-schemas/slack-desc b/source/l/gsettings-desktop-schemas/slack-desc
index 4d0d3b953..d9cfc7e22 100644
--- a/source/l/gsettings-desktop-schemas/slack-desc
+++ b/source/l/gsettings-desktop-schemas/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/gsl/gsl.SlackBuild b/source/l/gsl/gsl.SlackBuild
index 274755615..3adc11c56 100755
--- a/source/l/gsl/gsl.SlackBuild
+++ b/source/l/gsl/gsl.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for GSL
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,9 +24,11 @@
# Originally written by Aleksandar Samardzic <asamardzic@gmail.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=gsl
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -42,6 +44,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -59,7 +69,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-gsl
@@ -93,6 +102,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't package .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/gsl/slack-desc b/source/l/gsl/slack-desc
index 0b52c0219..5c5ea27df 100644
--- a/source/l/gsl/slack-desc
+++ b/source/l/gsl/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/gst-plugins-base/gst-plugins-base.SlackBuild b/source/l/gst-plugins-base/gst-plugins-base.SlackBuild
index 747fec2a4..7c3c26ecf 100755
--- a/source/l/gst-plugins-base/gst-plugins-base.SlackBuild
+++ b/source/l/gst-plugins-base/gst-plugins-base.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -23,9 +23,10 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gst-plugins-base
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -38,9 +39,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -65,8 +73,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -84,11 +92,15 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--disable-debug \
--disable-static \
- --build=$ARCH-slackware-linux
+ --disable-examples \
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/gst-plugins-base/gst-plugins-base.url b/source/l/gst-plugins-base/gst-plugins-base.url
new file mode 100644
index 000000000..06dd75495
--- /dev/null
+++ b/source/l/gst-plugins-base/gst-plugins-base.url
@@ -0,0 +1 @@
+https://gstreamer.freedesktop.org/src/
diff --git a/source/l/gst-plugins-base/slack-desc b/source/l/gst-plugins-base/slack-desc
index de737776f..cbcd05cdb 100644
--- a/source/l/gst-plugins-base/slack-desc
+++ b/source/l/gst-plugins-base/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler---------------------------------------------|
@@ -11,8 +11,8 @@ gst-plugins-base:
gst-plugins-base: GStreamer Base Plug-ins is a well-groomed and well-maintained
gst-plugins-base: collection of GStreamer plug-ins and elements, spanning the
gst-plugins-base: range of possible types of elements one would want to write
-gst-plugins-base: for GStreamer. It also contains helper libraries and base
-gst-plugins-base: classes useful for writing elements. A wide range of video
+gst-plugins-base: for GStreamer. It also contains helper libraries and base
+gst-plugins-base: classes useful for writing elements. A wide range of video
gst-plugins-base: and audio decoders, encoders, and filters are included.
gst-plugins-base:
gst-plugins-base:
diff --git a/source/l/gst-plugins-base0/gst-plugins-base-0.10.36-gcc_4_9_0_i686-1.patch b/source/l/gst-plugins-base0/gst-plugins-base-0.10.36-gcc_4_9_0_i686-1.patch
new file mode 100644
index 000000000..9f57e6506
--- /dev/null
+++ b/source/l/gst-plugins-base0/gst-plugins-base-0.10.36-gcc_4_9_0_i686-1.patch
@@ -0,0 +1,37 @@
+Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
+Date: 2014-05-26
+Initial Package Version: 0.10.36
+Upstream Status: Not offered, this is a workaround for gcc-4.9.0.
+Origin: Fernando, based on
+ https://github.com/HandBrake/HandBrake/blob/master/contrib/lame/P00-darwin-xmmintrin.patch
+Description: Works around inlining failure on i686 with gcc-4.9.0.
+Rediffed to apply without fuzz and massive offset which caused
+configure.orig to get generated.
+
+Do Not Apply to x86_64.
+
+Note: there seems to still be a problem somewhere in the gst-0.10 audio
+on i686, I can get working video, but no audio.
+
+diff -Naur a/configure b/configure
+--- a/configure 2012-02-20 23:33:09.000000000 +0000
++++ b/configure 2014-05-24 21:53:29.510695504 +0100
+@@ -21876,18 +21876,6 @@
+ done
+
+
+-for ac_header in xmmintrin.h emmintrin.h
+-do :
+- as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+- cat >>confdefs.h <<_ACEOF
+-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+-_ACEOF
+-
+-fi
+-
+-done
+
+
+ # ------ AX CREATE STDINT H -------------------------------------
diff --git a/source/l/gst-plugins-base0/gst-plugins-base0.SlackBuild b/source/l/gst-plugins-base0/gst-plugins-base0.SlackBuild
index 9b2008901..b768046a8 100755
--- a/source/l/gst-plugins-base0/gst-plugins-base0.SlackBuild
+++ b/source/l/gst-plugins-base0/gst-plugins-base0.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -23,29 +23,37 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gst-plugins-base
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "${PKGNAM}0-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
+PKG=$TMP/package-${PKGNAM}0
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -66,7 +74,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -74,6 +82,11 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Fix build on 32-bit x86:
+if [ "$ARCH" = "i586" -o "$ARCH" = "i686" ]; then
+ zcat $CWD/gst-plugins-base-0.10.36-gcc_4_9_0_i686-1.patch.gz | patch -p1 --verbose || exit 1
+fi
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -84,11 +97,14 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--disable-debug \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/gst-plugins-base0/slack-desc b/source/l/gst-plugins-base0/slack-desc
index c8fb96d77..073222be8 100644
--- a/source/l/gst-plugins-base0/slack-desc
+++ b/source/l/gst-plugins-base0/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler---------------------------------------------|
@@ -11,8 +11,8 @@ gst-plugins-base0:
gst-plugins-base0: GStreamer Base Plug-ins is a well-groomed and well-maintained
gst-plugins-base0: collection of GStreamer plug-ins and elements, spanning the
gst-plugins-base0: range of possible types of elements one would want to write
-gst-plugins-base0: for GStreamer. It also contains helper libraries and base
-gst-plugins-base0: classes useful for writing elements. A wide range of video
+gst-plugins-base0: for GStreamer. It also contains helper libraries and base
+gst-plugins-base0: classes useful for writing elements. A wide range of video
gst-plugins-base0: and audio decoders, encoders, and filters are included.
gst-plugins-base0:
gst-plugins-base0:
diff --git a/source/l/gst-plugins-good/gst-plugins-good.SlackBuild b/source/l/gst-plugins-good/gst-plugins-good.SlackBuild
index 280c9cbd0..255b6e279 100755
--- a/source/l/gst-plugins-good/gst-plugins-good.SlackBuild
+++ b/source/l/gst-plugins-good/gst-plugins-good.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
-# Copyright 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -23,9 +23,10 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gst-plugins-good
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -40,7 +41,6 @@ fi
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -61,11 +61,24 @@ else
LIBDIRSUFFIX=""
fi
+# If this package is being built for ALSA (no PulseAudio), use the _alsa $TAG:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION
chown -R root:root .
@@ -125,5 +138,5 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz
diff --git a/source/l/gst-plugins-good/gst-plugins-good.url b/source/l/gst-plugins-good/gst-plugins-good.url
new file mode 100644
index 000000000..06dd75495
--- /dev/null
+++ b/source/l/gst-plugins-good/gst-plugins-good.url
@@ -0,0 +1 @@
+https://gstreamer.freedesktop.org/src/
diff --git a/source/l/gst-plugins-good/slack-desc b/source/l/gst-plugins-good/slack-desc
index 7738d275b..6698c01fb 100644
--- a/source/l/gst-plugins-good/slack-desc
+++ b/source/l/gst-plugins-good/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler---------------------------------------------|
diff --git a/source/l/gst-plugins-good0/gst-plugins-good0.SlackBuild b/source/l/gst-plugins-good0/gst-plugins-good0.SlackBuild
index deea4a900..bfe228808 100755
--- a/source/l/gst-plugins-good0/gst-plugins-good0.SlackBuild
+++ b/source/l/gst-plugins-good0/gst-plugins-good0.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
-# Copyright 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -23,10 +23,11 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gst-plugins-good
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -40,9 +41,8 @@ fi
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
+PKG=$TMP/package-${PKGNAM}0
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -61,6 +61,19 @@ else
LIBDIRSUFFIX=""
fi
+# If this package is being built for ALSA (no PulseAudio), use the _alsa $TAG:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "${PKGNAM}0-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
@@ -127,5 +140,5 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/${PKGNAM}0-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/${PKGNAM}0-$VERSION-$ARCH-$BUILD$TAG.txz
diff --git a/source/l/gst-plugins-good0/slack-desc b/source/l/gst-plugins-good0/slack-desc
index 97aa4bd9d..ed08cbecd 100644
--- a/source/l/gst-plugins-good0/slack-desc
+++ b/source/l/gst-plugins-good0/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler---------------------------------------------|
diff --git a/source/l/gst-plugins-libav/gst-plugins-libav.SlackBuild b/source/l/gst-plugins-libav/gst-plugins-libav.SlackBuild
new file mode 100755
index 000000000..5e5445890
--- /dev/null
+++ b/source/l/gst-plugins-libav/gst-plugins-libav.SlackBuild
@@ -0,0 +1,137 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=gst-plugins-libav
+VERSION=${VERSION:-$(echo gst-libav-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf gst-libav-$VERSION
+tar xvf $CWD/gst-libav-$VERSION.tar.?z || exit 1
+cd gst-libav-$VERSION
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --disable-static \
+ --with-system-libav \
+ --with-libav-extra-configure=\"--enable-runtime-cpudetect\" \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress and if needed symlink the man pages:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ AUTHORS COPYING* INSTALL NEWS README* TODO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/gst-plugins-libav/gst-plugins-libav.url b/source/l/gst-plugins-libav/gst-plugins-libav.url
new file mode 100644
index 000000000..06dd75495
--- /dev/null
+++ b/source/l/gst-plugins-libav/gst-plugins-libav.url
@@ -0,0 +1 @@
+https://gstreamer.freedesktop.org/src/
diff --git a/source/l/gst-plugins-libav/paredown.sh b/source/l/gst-plugins-libav/paredown.sh
new file mode 100755
index 000000000..9d8957e5c
--- /dev/null
+++ b/source/l/gst-plugins-libav/paredown.sh
@@ -0,0 +1,61 @@
+#!/bin/sh
+
+# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Remove the stale libav sources from the tarball, since we use the system
+# ffmpeg libraries. Also trim or dump a few other things.
+#
+# If you really need them for some reason, you can fetch the original tarball
+# from https://gstreamer.freedesktop.org/src/gst-libav
+#
+# Removing these files reduces the size of the source tarball by 94%.
+
+PKGNAM=gst-libav
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+
+if [ ! -r $PKGNAM-$VERSION.tar.xz ]; then
+ echo "$PKGNAM-$VERSION.tar.xz is not a gst-libav tarball. Exiting."
+ exit 1
+fi
+
+# This won't verify after repacking, so if it exists get rid of it:
+rm -f $PKGNAM-$VERSION.tar.xz.asc
+
+touch -r $PKGNAM-$VERSION.tar.xz tmp-timestamp || exit 1
+
+rm -rf $PKGNAM-$VERSION
+tar xvf $PKGNAM-$VERSION.tar.xz || exit 1
+
+rm -rf $PKGNAM-$VERSION/gst-libs/ext/libav
+cat $PKGNAM-$VERSION/ChangeLog | head -n 1000 > $PKGNAM-$VERSION/ChangeLog.pared
+touch -r $PKGNAM-$VERSION/ChangeLog $PKGNAM-$VERSION/ChangeLog.pared
+mv $PKGNAM-$VERSION/ChangeLog.pared $PKGNAM-$VERSION/ChangeLog
+rm -f $PKGNAM-$VERSION/docs/plugins/inspect/plugin-libav.xml
+rm -f $PKGNAM-$VERSION/docs/plugins/gst-libav-plugins.args
+
+rm -f $PKGNAM-$VERSION.tar.xz
+tar cvf $PKGNAM-$VERSION.tar $PKGNAM-$VERSION
+touch -r tmp-timestamp $PKGNAM-$VERSION.tar
+xz -9 -v $PKGNAM-$VERSION.tar
+rm -rf $PKGNAM-$VERSION tmp-timestamp
+
+echo "Repacking of $PKGNAM-$VERSION.tar.xz complete."
+
diff --git a/source/l/gst-plugins-libav/slack-desc b/source/l/gst-plugins-libav/slack-desc
new file mode 100644
index 000000000..67d7f9a26
--- /dev/null
+++ b/source/l/gst-plugins-libav/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+gst-plugins-libav: gst-plugins-libav (GStreamer FFmpeg/Libav plugin)
+gst-plugins-libav:
+gst-plugins-libav: GStreamer Libav plugin contains one plugin with a set of elements
+gst-plugins-libav: using the FFmpeg/Libav library code. It contains many popular
+gst-plugins-libav: decoders and encoders.
+gst-plugins-libav:
+gst-plugins-libav: Home: http://gstreamer.freedesktop.org/modules/gst-libav.html
+gst-plugins-libav:
+gst-plugins-libav:
+gst-plugins-libav:
+gst-plugins-libav:
diff --git a/source/l/gstreamer/gstreamer.SlackBuild b/source/l/gstreamer/gstreamer.SlackBuild
index 9d7ab4ff5..dcedece92 100755
--- a/source/l/gstreamer/gstreamer.SlackBuild
+++ b/source/l/gstreamer/gstreamer.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Robby Workman, Northport, Alabama, USA
# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
-# Copyright 2008, 2009, 2010, 2013, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2013, 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gstreamer
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -37,6 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -56,7 +65,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -65,8 +73,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -85,11 +93,14 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
--disable-debug \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/gstreamer/gstreamer.url b/source/l/gstreamer/gstreamer.url
new file mode 100644
index 000000000..06dd75495
--- /dev/null
+++ b/source/l/gstreamer/gstreamer.url
@@ -0,0 +1 @@
+https://gstreamer.freedesktop.org/src/
diff --git a/source/l/gstreamer/slack-desc b/source/l/gstreamer/slack-desc
index eeb1592f3..3615bd8b7 100644
--- a/source/l/gstreamer/slack-desc
+++ b/source/l/gstreamer/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler----------------------------------------------------|
diff --git a/source/l/gstreamer0/gstreamer-0.10.36-bison3.patch b/source/l/gstreamer0/gstreamer-0.10.36-bison3.patch
new file mode 100644
index 000000000..f569b1d85
--- /dev/null
+++ b/source/l/gstreamer0/gstreamer-0.10.36-bison3.patch
@@ -0,0 +1,31 @@
+From 60516f4798894f958fc53b470e1283318d0f8706 Mon Sep 17 00:00:00 2001
+From: Kerrick Staley <kerrick@kerrickstaley.com>
+Date: Wed, 21 Aug 2013 06:59:29 +0000
+Subject: parse: make grammar.y work with Bison 3
+
+YYLEX_PARAM is no longer supported in Bison 3.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=706462
+---
+diff --git a/gst/parse/grammar.y b/gst/parse/grammar.y
+index 24fc87b..7f9dd16 100644
+--- a/gst/parse/grammar.y
++++ b/gst/parse/grammar.y
+@@ -26,7 +26,6 @@
+ */
+
+ #define YYERROR_VERBOSE 1
+-#define YYLEX_PARAM scanner
+
+ #define YYENABLE_NLS 0
+
+@@ -648,6 +647,7 @@ static int yyerror (void *scanner, graph_t *graph, const char *s);
+ %right '.'
+ %left '!' '='
+
++%lex-param { void *scanner }
+ %parse-param { void *scanner }
+ %parse-param { graph_t *graph }
+ %pure-parser
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/source/l/gstreamer0/gstreamer0.SlackBuild b/source/l/gstreamer0/gstreamer0.SlackBuild
index bef440201..cbc9e4b43 100755
--- a/source/l/gstreamer0/gstreamer0.SlackBuild
+++ b/source/l/gstreamer0/gstreamer0.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Robby Workman, Northport, Alabama, USA
# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
-# Copyright 2008, 2009, 2010, 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2013, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,25 +22,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gstreamer
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "${PKGNAM}0-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -56,9 +65,8 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
+PKG=$TMP/package-${PKGNAM}0
rm -rf $PKG
mkdir -p $TMP $PKG
@@ -66,7 +74,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -74,6 +82,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+zcat $CWD/gstreamer-0.10.36-bison3.patch.gz | patch -p1 --verbose || exit 1
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -89,7 +99,7 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-glib-asserts=no \
--with-package-name='gstreamer' \
--with-package-origin='http://gstreamer.freedesktop.org' \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# --disable-gst-debug was always used before, but now the option prevents
# gstreamer (10.22) from compiling. Check again with future releases.
@@ -98,6 +108,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/gstreamer0/slack-desc b/source/l/gstreamer0/slack-desc
index f59f462fe..8cd55686c 100644
--- a/source/l/gstreamer0/slack-desc
+++ b/source/l/gstreamer0/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler----------------------------------------------------|
diff --git a/source/l/gtk+/gtk+-1.2.10-ahiguti.patch b/source/l/gtk+/gtk+-1.2.10-ahiguti.patch
new file mode 100644
index 000000000..68f091c5f
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-ahiguti.patch
@@ -0,0 +1,557 @@
+Return-Path: a-higuti@math.sci.hokudai.ac.jp
+Delivery-Date: Thu Sep 23 14:52:43 1999
+Return-Path: <a-higuti@math.sci.hokudai.ac.jp>
+Received: from localhost (IDENT:otaylor@localhost [127.0.0.1])
+ by fresnel.labs.redhat.com (8.9.3/8.9.3) with ESMTP id OAA00891
+ for <otaylor@localhost>; Thu, 23 Sep 1999 14:52:41 -0400
+Received: from lacrosse.redhat.com
+ by localhost with POP3 (fetchmail-5.0.0)
+ for otaylor@localhost (single-drop); Thu, 23 Sep 1999 14:52:42 -0400 (EDT)
+Received: from mail.redhat.com (mail.redhat.com [199.183.24.239])
+ by lacrosse.corp.redhat.com (8.9.3/8.9.3) with ESMTP id OAA19205
+ for <otaylor@lacrosse.redhat.com>; Thu, 23 Sep 1999 14:01:27 -0400
+Received: from math.sci.hokudai.ac.jp (seki.math.sci.hokudai.ac.jp [133.50.152.8])
+ by mail.redhat.com (8.8.7/8.8.7) with ESMTP id OAA13383
+ for <otaylor@redhat.com>; Thu, 23 Sep 1999 14:01:49 -0400
+Received: from heathcliff (a-higuti@hilbert.math.sci.hokudai.ac.jp [133.50.152.11])
+ by math.sci.hokudai.ac.jp (8.8.8/3.6W01/06/98) with SMTP id DAA23889
+ for <otaylor@redhat.com>; Fri, 24 Sep 1999 03:01:10 +0900 (JST)
+Date: Fri, 24 Sep 1999 03:01:10 +0900 (JST)
+Message-Id: <199909231801.DAA23889@math.sci.hokudai.ac.jp>
+From: a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi)
+To: otaylor@redhat.com
+Subject: Adding more gdk_isw* macros
+Mime-Version: 1.0
+Content-Type: text/plain; charset=US-ASCII
+Status: O
+Lines: 528
+Xref: fresnel.labs.redhat.com prog-gtk:648
+
+Hello Owen,
+
+I'm working on adding CJK support to gnome apps, and I need your advice.
+
+As you know, gtk+-1.2 has some support for CJK. It's sufficient for most
+gnome apps to be internationalized, but some problems remain. The most
+problem is that there is no way of doing word wrapping for CJK strings.
+
+For example, gtk-xmhtml shows Japanese text very uglily, because Japanese
+sentences are recognized as very long words. (a Japanese sentence
+contain any spaces in most cases.) The same problem is in gtk+ itself, too;
+Word wrapping in GtkLabel and GtkText doesn't work correctly for CJK text,
+because of the same reason as above.
+
+In order to fix it, we need more gdk_isw* functions than we already have
+in gdki18n.h. (I regret I didn't add them before gtk+-1.2 was released.)
+I attach herewith a patch which fixes it, but I think it's not acceptable
+to adding a new macro to a stable version of gtk+. (is it?)
+
+The question I want to ask you is: what's the best way of fixing the
+problem without adding these macros to gdki18n.h? A solution is to add
+these macros to each *.c files (in GtkLabel, GtkText, and gtkxmhtml etc.)
+rather than gtki18n.h, but it's very ugly I think.
+
+Please don't say "wait until gscript is completed" ;-( I don't want to
+wait for a long time. (Please let me know if I can help you with gscript
+BTW. I've not hacked gscript yet, because it seems to be too early to be
+hacked by other than you.)
+
+Thanks,
+Akira Higuchi
+---------------- x8 ---------------- x8 ---------------- x8 ----------------
+diff -up gtk+-1.2.10/gdk/gdki18n.h.ahiguti gtk+-1.2.10/gdk/gdki18n.h
+--- gtk+-1.2.10/gdk/gdki18n.h.ahiguti 2000-01-24 03:58:21.000000000 +0100
++++ gtk+-1.2.10/gdk/gdki18n.h 2008-10-02 10:43:26.000000000 +0200
+@@ -51,4 +51,32 @@
+ # define gdk_iswspace(c) ((wchar_t)(c) <= 0xFF && isspace(c))
+ #endif
+
++/* The following 9 macros are added in gtk+ 1.2.X. Don't use them without
++ * checking GTK_CHECK_VERSION. For example,
++ * #if GTK_CHECK_VERSION (1,2,X)
++ * ... code which uses gdk_iswalpha(), gdk_iswcntrl(), etc. ...
++ * #endif
++ */
++#if !defined(G_HAVE_BROKEN_WCTYPE) && (defined(G_HAVE_WCTYPE_H) || defined(G_HAVE_WCHAR_H)) && !defined(X_LOCALE)
++# define gdk_iswalpha(c) iswalpha(c)
++# define gdk_iswcntrl(c) iswcntrl(c)
++# define gdk_iswdigit(c) iswdigit(c)
++# define gdk_iswlower(c) iswlower(c)
++# define gdk_iswgraph(c) iswgraph(c)
++# define gdk_iswprint(c) iswprint(c)
++# define gdk_iswpunct(c) iswpunct(c)
++# define gdk_iswupper(c) iswupper(c)
++# define gdk_iswxdigit(c) iswxdigit(c)
++#else
++# define gdk_iswalpha(c) ((wchar_t)(c) <= 0xFF && isalpha(c))
++# define gdk_iswcntrl(c) ((wchar_t)(c) <= 0xFF && iscntrl(c))
++# define gdk_iswdigit(c) ((wchar_t)(c) <= 0xFF && isdigit(c))
++# define gdk_iswlower(c) ((wchar_t)(c) <= 0xFF && islower(c))
++# define gdk_iswgraph(c) ((wchar_t)(c) > 0xFF || isgraph(c))
++# define gdk_iswprint(c) ((wchar_t)(c) > 0xFF || isprint(c))
++# define gdk_iswpunct(c) ((wchar_t)(c) <= 0xFF && ispunct(c))
++# define gdk_iswupper(c) ((wchar_t)(c) <= 0xFF && isupper(c))
++# define gdk_iswxdigit(c) ((wchar_t)(c) <= 0xFF && isxdigit(c))
++#endif
++
+ #endif /* __GDK_I18N_H__ */
+diff -up gtk+-1.2.10/gtk/gtkentry.c.ahiguti gtk+-1.2.10/gtk/gtkentry.c
+--- gtk+-1.2.10/gtk/gtkentry.c.ahiguti 2001-04-02 04:14:54.000000000 +0200
++++ gtk+-1.2.10/gtk/gtkentry.c 2008-10-02 10:43:26.000000000 +0200
+@@ -2036,11 +2036,21 @@ gtk_entry_move_word (GtkEditable *editab
+ }
+ }
+
++static gboolean
++alnum_or_ideogram (GtkEntry *entry, guint index)
++{
++ GdkWChar ch;
++ ch = entry->text[index];
++ if (entry->use_wchar)
++ return !(gdk_iswpunct (ch) || gdk_iswcntrl (ch) || gdk_iswspace (ch));
++ else
++ return !(ispunct (ch) || iscntrl (ch) || isspace (ch));
++}
++
+ static void
+ gtk_move_forward_word (GtkEntry *entry)
+ {
+ GtkEditable *editable;
+- GdkWChar *text;
+ gint i;
+
+ editable = GTK_EDITABLE (entry);
+@@ -2054,21 +2064,12 @@ gtk_move_forward_word (GtkEntry *entry)
+
+ if (entry->text && (editable->current_pos < entry->text_length))
+ {
+- text = entry->text;
+- i = editable->current_pos;
+-
+- if ((entry->use_wchar) ? (!gdk_iswalnum (text[i])) : (!isalnum (text[i])))
+- for (; i < entry->text_length; i++)
+- {
+- if ((entry->use_wchar) ? gdk_iswalnum (text[i]) : isalnum (text[i]))
+- break;
+- }
+-
++ for (i = editable->current_pos; i < entry->text_length; i++)
++ if (alnum_or_ideogram (entry, i))
++ break;
+ for (; i < entry->text_length; i++)
+- {
+- if ((entry->use_wchar) ? (!gdk_iswalnum (text[i])) : (!isalnum (text[i])))
+- break;
+- }
++ if (!alnum_or_ideogram (entry, i))
++ break;
+
+ editable->current_pos = i;
+ }
+@@ -2078,7 +2079,6 @@ static void
+ gtk_move_backward_word (GtkEntry *entry)
+ {
+ GtkEditable *editable;
+- GdkWChar *text;
+ gint i;
+
+ editable = GTK_EDITABLE (entry);
+@@ -2092,26 +2092,19 @@ gtk_move_backward_word (GtkEntry *entry)
+
+ if (entry->text && editable->current_pos > 0)
+ {
+- text = entry->text;
+- i = editable->current_pos - 1;
+- if ((entry->use_wchar) ? (!gdk_iswalnum (text[i])) : (!isalnum (text[i])))
+- for (; i >= 0; i--)
++ for (i = editable->current_pos - 1; i >= 0; i--)
++ if (alnum_or_ideogram (entry, i))
++ break;
++ for (; i >= 0; i--)
++ if (!alnum_or_ideogram (entry, i))
+ {
+- if ((entry->use_wchar) ? gdk_iswalnum (text[i]) : isalnum (text[i]))
+- break;
++ i++;
++ break;
+ }
+- for (; i >= 0; i--)
+- {
+- if ((entry->use_wchar) ? (!gdk_iswalnum (text[i])) : (!isalnum (text[i])))
+- {
+- i++;
+- break;
+- }
+- }
+-
++
+ if (i < 0)
+ i = 0;
+-
++
+ editable->current_pos = i;
+ }
+ }
+diff -up gtk+-1.2.10/gtk/gtklabel.c.ahiguti gtk+-1.2.10/gtk/gtklabel.c
+--- gtk+-1.2.10/gtk/gtklabel.c.ahiguti 2001-04-02 05:12:38.000000000 +0200
++++ gtk+-1.2.10/gtk/gtklabel.c 2008-10-02 10:43:26.000000000 +0200
+@@ -56,6 +56,7 @@ struct _GtkLabelWord
+ GtkLabelWord *next;
+ gint uline_y;
+ GtkLabelULine *uline;
++ gboolean paragraph_break;
+ };
+
+ struct _GtkLabelULine
+@@ -396,6 +397,7 @@ gtk_label_word_alloc (void)
+ word->beginning = NULL;
+ word->next = NULL;
+ word->uline = NULL;
++ word->paragraph_break = FALSE;
+
+ return word;
+ }
+@@ -441,6 +443,7 @@ gtk_label_split_text (GtkLabel *label)
+ if (str == label->label_wc || str[-1] == '\n')
+ {
+ /* Paragraph break */
++ word->paragraph_break = TRUE;
+ word->space = 0;
+
+ max_line_width = MAX (line_width, max_line_width);
+@@ -488,6 +491,7 @@ gtk_label_split_text (GtkLabel *label)
+ {
+ word = gtk_label_word_alloc ();
+
++ word->paragraph_break = TRUE;
+ word->space = 0;
+ word->beginning = str;
+ word->length = 0;
+@@ -500,6 +504,13 @@ gtk_label_split_text (GtkLabel *label)
+ return MAX (line_width, max_line_width);
+ }
+
++static gboolean
++is_ideogram (GdkWChar wc)
++{
++ return !(gdk_iswalnum (wc) || gdk_iswspace (wc) ||
++ gdk_iswpunct (wc) || gdk_iswcntrl (wc));
++}
++
+ /* this needs to handle white space better. */
+ static gint
+ gtk_label_split_text_wrapped (GtkLabel *label)
+@@ -526,6 +537,7 @@ gtk_label_split_text_wrapped (GtkLabel *
+ if (str == label->label_wc || str[-1] == '\n')
+ {
+ /* Paragraph break */
++ word->paragraph_break = TRUE;
+ word->space = 0;
+
+ max_line_width = MAX (line_width, max_line_width);
+@@ -546,24 +558,30 @@ gtk_label_split_text_wrapped (GtkLabel *
+ else
+ word->space = space_width * nspaces;
+ }
+- else
++ else if (gdk_iswspace (str[-1]))
+ {
+ /* Regular inter-word space */
+ word->space = space_width;
+ }
++ else
++ {
++ word->space = 0;
++ }
+
+ word->beginning = str;
+ word->length = 0;
+ p = word->beginning;
+ while (*p && !gdk_iswspace (*p))
+ {
++ if (word->length > 0 && (is_ideogram (p[-1]) || is_ideogram (*p)))
++ break;
+ word->length++;
+ p++;
+ }
+ word->width = gdk_text_width_wc (GTK_WIDGET (label)->style->font, str, word->length);
+
+ str += word->length;
+- if (*str)
++ if (*str && gdk_iswspace (*str))
+ str++;
+
+ line_width += word->space + word->width;
+@@ -600,7 +618,7 @@ gtk_label_pick_width (GtkLabel *label,
+ width = 0;
+ for (word = label->words; word; word = word->next)
+ {
+- if (word->space == 0
++ if (word->paragraph_break
+ || (line_width
+ && (line_width >= min_width
+ || line_width + word->width + word->space > max_width)))
+@@ -716,7 +734,8 @@ gtk_label_finalize_lines_wrap (GtkLabel
+ GtkLabelWord *word, *line, *next_line;
+ GtkWidget *widget;
+ gchar *ptrn;
+- gint x, y, space, extra_width, add_space, baseline_skip;
++ gint x, y, space, num_words, extra_width, add_space, baseline_skip;
++ gboolean deliver_equivalently;
+
+ g_return_if_fail (label->wrap);
+
+@@ -724,20 +743,24 @@ gtk_label_finalize_lines_wrap (GtkLabel
+ y = 0;
+ baseline_skip = (GTK_WIDGET (label)->style->font->ascent +
+ GTK_WIDGET (label)->style->font->descent + 1);
++ deliver_equivalently = FALSE;
+
+ for (line = label->words; line != 0; line = next_line)
+ {
+- space = 0;
++ space = num_words = 0;
+ extra_width = max_line_width - line->width;
+
+ for (next_line = line->next; next_line; next_line = next_line->next)
+ {
+- if (next_line->space == 0)
++ if (next_line->paragraph_break)
+ break; /* New paragraph */
+ if (next_line->space + next_line->width > extra_width)
+ break;
++ if (next_line->space == 0)
++ deliver_equivalently = TRUE; /* An ideogram is found. */
+ extra_width -= next_line->space + next_line->width;
+ space += next_line->space;
++ num_words++;
+ }
+
+ line->x = 0;
+@@ -747,14 +770,18 @@ gtk_label_finalize_lines_wrap (GtkLabel
+
+ for (word = line->next; word != next_line; word = word->next)
+ {
+- if (next_line && next_line->space)
++ if (next_line && !next_line->paragraph_break &&
++ label->jtype == GTK_JUSTIFY_FILL &&
++ (deliver_equivalently ? num_words : space) > 0)
+ {
+- /* Not last line of paragraph --- fill line if needed */
+- if (label->jtype == GTK_JUSTIFY_FILL) {
++ /* Not last line of paragraph --- fill line */
++ if (deliver_equivalently)
++ add_space = (extra_width + num_words / 2) / num_words;
++ else
+ add_space = (extra_width * word->space + space / 2) / space;
+- extra_width -= add_space;
+- space -= word->space;
+- }
++ extra_width -= add_space;
++ space -= word->space;
++ num_words--;
+ }
+
+ word->x = x + word->space + add_space;
+@@ -925,7 +952,7 @@ gtk_label_expose (GtkWidget *widget
+
+ for (word = label->words; word; word = word->next)
+ {
+- gchar save = word->beginning[word->length];
++ GdkWChar save = word->beginning[word->length];
+ word->beginning[word->length] = '\0';
+ gtk_label_paint_word (label, x, y, word, &event->area);
+ word->beginning[word->length] = save;
+diff -up gtk+-1.2.10/gtk/gtktext.c.ahiguti gtk+-1.2.10/gtk/gtktext.c
+--- gtk+-1.2.10/gtk/gtktext.c.ahiguti 2001-03-15 21:15:12.000000000 +0100
++++ gtk+-1.2.10/gtk/gtktext.c 2008-10-02 10:43:27.000000000 +0200
+@@ -101,6 +101,13 @@ enum {
+ ARG_WORD_WRAP
+ };
+
++typedef enum {
++ CHAR_CLASS_SPACE,
++ CHAR_CLASS_ALNUM,
++ CHAR_CLASS_IDEOGRAM,
++ CHAR_CLASS_OTHERS /* punct, cntrl */
++} CharClass;
++
+ typedef struct _TextProperty TextProperty;
+ typedef struct _TabStopMark TabStopMark;
+ typedef struct _PrevTabCont PrevTabCont;
+@@ -300,6 +307,8 @@ static LineParams find_line_params (GtkT
+ const GtkPropertyMark *mark,
+ const PrevTabCont *tab_cont,
+ PrevTabCont *next_cont);
++static void find_word_wrap_position (GtkText* text, LineParams *lp);
++static CharClass char_class (GtkText* text, guint index);
+ static void recompute_geometry (GtkText* text);
+ static void insert_expose (GtkText* text, guint old_pixels, gint nchars, guint new_line_count);
+ static void delete_expose (GtkText* text,
+@@ -4111,27 +4120,21 @@ gtk_text_move_forward_word (GtkText *tex
+
+ undraw_cursor (text, FALSE);
+
+- if (text->use_wchar)
++ while (!LAST_INDEX (text, text->cursor_mark))
+ {
+- while (!LAST_INDEX (text, text->cursor_mark) &&
+- !gdk_iswalnum (GTK_TEXT_INDEX(text, text->cursor_mark.index)))
+- advance_mark (&text->cursor_mark);
+-
+- while (!LAST_INDEX (text, text->cursor_mark) &&
+- gdk_iswalnum (GTK_TEXT_INDEX(text, text->cursor_mark.index)))
+- advance_mark (&text->cursor_mark);
++ CharClass cc = char_class (text, text->cursor_mark.index);
++ if (cc == CHAR_CLASS_ALNUM || cc == CHAR_CLASS_IDEOGRAM)
++ break;
++ advance_mark (&text->cursor_mark);
+ }
+- else
++ while (!LAST_INDEX (text, text->cursor_mark))
+ {
+- while (!LAST_INDEX (text, text->cursor_mark) &&
+- !isalnum (GTK_TEXT_INDEX(text, text->cursor_mark.index)))
+- advance_mark (&text->cursor_mark);
+-
+- while (!LAST_INDEX (text, text->cursor_mark) &&
+- isalnum (GTK_TEXT_INDEX(text, text->cursor_mark.index)))
+- advance_mark (&text->cursor_mark);
++ CharClass cc = char_class (text, text->cursor_mark.index);
++ if (cc != CHAR_CLASS_ALNUM && cc != CHAR_CLASS_IDEOGRAM)
++ break;
++ advance_mark (&text->cursor_mark);
+ }
+-
++
+ find_cursor (text, TRUE);
+ draw_cursor (text, FALSE);
+ }
+@@ -4143,25 +4146,19 @@ gtk_text_move_backward_word (GtkText *te
+
+ undraw_cursor (text, FALSE);
+
+- if (text->use_wchar)
++ while (text->cursor_mark.index > 0)
+ {
+- while ((text->cursor_mark.index > 0) &&
+- !gdk_iswalnum (GTK_TEXT_INDEX(text, text->cursor_mark.index-1)))
+- decrement_mark (&text->cursor_mark);
+-
+- while ((text->cursor_mark.index > 0) &&
+- gdk_iswalnum (GTK_TEXT_INDEX(text, text->cursor_mark.index-1)))
+- decrement_mark (&text->cursor_mark);
++ CharClass cc = char_class (text, text->cursor_mark.index - 1);
++ if (cc == CHAR_CLASS_ALNUM || cc == CHAR_CLASS_IDEOGRAM)
++ break;
++ decrement_mark (&text->cursor_mark);
+ }
+- else
++ while (text->cursor_mark.index > 0)
+ {
+- while ((text->cursor_mark.index > 0) &&
+- !isalnum (GTK_TEXT_INDEX(text, text->cursor_mark.index-1)))
+- decrement_mark (&text->cursor_mark);
+-
+- while ((text->cursor_mark.index > 0) &&
+- isalnum (GTK_TEXT_INDEX(text, text->cursor_mark.index-1)))
+- decrement_mark (&text->cursor_mark);
++ CharClass cc = char_class (text, text->cursor_mark.index - 1);
++ if (cc != CHAR_CLASS_ALNUM && cc != CHAR_CLASS_IDEOGRAM)
++ break;
++ decrement_mark (&text->cursor_mark);
+ }
+
+ find_cursor (text, TRUE);
+@@ -4782,27 +4779,8 @@ find_line_params (GtkText* text,
+ GtkPropertyMark saved_mark = lp.end;
+ guint saved_characters = lp.displayable_chars;
+
+- lp.displayable_chars += 1;
+-
+- if (text->use_wchar)
+- {
+- while (!gdk_iswspace (GTK_TEXT_INDEX (text, lp.end.index)) &&
+- (lp.end.index > lp.start.index))
+- {
+- decrement_mark (&lp.end);
+- lp.displayable_chars -= 1;
+- }
+- }
+- else
+- {
+- while (!isspace(GTK_TEXT_INDEX (text, lp.end.index)) &&
+- (lp.end.index > lp.start.index))
+- {
+- decrement_mark (&lp.end);
+- lp.displayable_chars -= 1;
+- }
+- }
+-
++ find_word_wrap_position (text, &lp);
++
+ /* If whole line is one word, revert to char wrapping */
+ if (lp.end.index == lp.start.index)
+ {
+@@ -4850,6 +4828,54 @@ find_line_params (GtkText* text,
+ return lp;
+ }
+
++static CharClass
++char_class (GtkText* text, guint index)
++{
++ GdkWChar wc;
++ wc = GTK_TEXT_INDEX (text, index);
++ if (text->use_wchar)
++ {
++ if (gdk_iswspace (wc))
++ return CHAR_CLASS_SPACE;
++ else if (gdk_iswalnum (wc))
++ return CHAR_CLASS_ALNUM;
++ else if (gdk_iswpunct (wc) || gdk_iswcntrl (wc))
++ return CHAR_CLASS_OTHERS;
++ else
++ return CHAR_CLASS_IDEOGRAM;
++ }
++ else
++ {
++ if (isspace (wc))
++ return CHAR_CLASS_SPACE;
++ else if (isalnum (wc))
++ return CHAR_CLASS_ALNUM;
++ else if (ispunct (wc) || iscntrl (wc))
++ return CHAR_CLASS_OTHERS;
++ else
++ return CHAR_CLASS_IDEOGRAM;
++ }
++}
++
++static void
++find_word_wrap_position (GtkText* text, LineParams *lp)
++{
++ while (lp->end.index > lp->start.index &&
++ char_class (text, lp->end.index) != CHAR_CLASS_SPACE &&
++ char_class (text, lp->end.index) != CHAR_CLASS_IDEOGRAM &&
++ char_class (text, lp->end.index - 1) != CHAR_CLASS_IDEOGRAM)
++ {
++ decrement_mark (&lp->end);
++ lp->displayable_chars -= 1;
++ }
++
++ /* lp->end.index points the position to be cut just now. If it's not a
++ * space, move it to the next display line. */
++ if (lp->end.index > lp->start.index &&
++ char_class (text, lp->end.index) != CHAR_CLASS_SPACE)
++ decrement_mark (&lp->end);
++}
++
+ static void
+ expand_scratch_buffer (GtkText* text, guint len)
+ {
+---------------- x8 ---------------- x8 ---------------- x8 ----------------
+
+--------------------------------------
+Akira Higuchi
+Dept. of Mathematics, Hokkaido Univ.
+Hokkaido, Japan
+Email: a-higuti@math.sci.hokudai.ac.jp
diff --git a/source/l/gtk+/gtk+-1.2.10-alignment.patch b/source/l/gtk+/gtk+-1.2.10-alignment.patch
new file mode 100644
index 000000000..7d90898aa
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-alignment.patch
@@ -0,0 +1,29 @@
+--- gtk+-1.2.10/gtk/gtktypeutils.h.alignment Fri Aug 18 17:36:34 2000
++++ gtk+-1.2.10/gtk/gtktypeutils.h Tue Jul 3 21:07:40 2001
+@@ -191,6 +191,13 @@
+ GtkTypeClass *klass;
+ };
+
++#ifdef __GNUC__
++struct _GtkTypeClassDummyAlign
++{
++ GtkType type;
++ guint *signals;
++};
++#endif /* __GNUC__ */
+
+ /* A GtkTypeClass defines the minimum structure requirements for
+ * a types class. Classes returned from gtk_type_class () and
+@@ -203,7 +210,11 @@
+ * one unique identifier per class.
+ */
+ GtkType type;
+-};
++}
++#ifdef __GNUC__
++__attribute__ ((aligned (__alignof (struct _GtkTypeClassDummyAlign))))
++#endif /* __GNUC__ */
++;
+
+
+ struct _GtkArg
diff --git a/source/l/gtk+/gtk+-1.2.10-autotools.patch b/source/l/gtk+/gtk+-1.2.10-autotools.patch
new file mode 100644
index 000000000..fefc5cbf1
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-autotools.patch
@@ -0,0 +1,4374 @@
+--- Makefile.in
++++ Makefile.in
+@@ -1,6 +1,6 @@
+-# Makefile.in generated automatically by automake 1.4 from Makefile.am
++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+
+-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+@@ -133,7 +133,98 @@ bin_SCRIPTS = gtk-config
+ # require automake 1.4
+ AUTOMAKE_OPTIONS = 1.4
+
+-EXTRA_DIST = HACKING gtk+.spec.in gtk.m4 makecopyright TODO NEWS.pre-1-0 ChangeLog.pre-1-0 README.cvs-commits intl/libgettext.h intl/po2tbl.sed.in examples/aspectframe/Makefile examples/aspectframe/aspectframe.c examples/Makefile examples/README.1ST examples/extract.awk examples/extract.sh examples/base/Makefile examples/base/base.c examples/buttons/Makefile examples/buttons/buttons.c examples/buttons/info.xpm examples/calendar/Makefile examples/calendar/calendar.c examples/clist/Makefile examples/clist/clist.c examples/entry/Makefile examples/entry/entry.c examples/eventbox/Makefile examples/eventbox/eventbox.c examples/filesel/Makefile examples/filesel/filesel.c examples/gtkdial/Makefile examples/gtkdial/dial_test.c examples/gtkdial/gtkdial.c examples/gtkdial/gtkdial.h examples/helloworld/Makefile examples/helloworld/helloworld.c examples/helloworld2/Makefile examples/helloworld2/helloworld2.c examples/list/Makefile examples/list/list.c examples/menu/Makefile examples/menu/menu.c examples/menu/itemfactory.c examples/notebook/Makefile examples/notebook/notebook.c examples/packbox/Makefile examples/packbox/packbox.c examples/packer/Makefile examples/packer/pack.c examples/paned/Makefile examples/paned/paned.c examples/pixmap/Makefile examples/pixmap/pixmap.c examples/progressbar/Makefile examples/progressbar/progressbar.c examples/radiobuttons/Makefile examples/radiobuttons/radiobuttons.c examples/rangewidgets/Makefile examples/rangewidgets/rangewidgets.c examples/rulers/Makefile examples/rulers/rulers.c examples/scribble-simple/Makefile examples/scribble-simple/scribble-simple.c examples/scrolledwin/Makefile examples/scrolledwin/scrolledwin.c examples/selection/Makefile examples/selection/gettargets.c examples/selection/setselection.c examples/statusbar/Makefile examples/statusbar/statusbar.c examples/table/Makefile examples/table/table.c examples/text/Makefile examples/text/text.c examples/tictactoe/Makefile examples/tictactoe/tictactoe.c examples/tictactoe/tictactoe.h examples/tictactoe/ttt_test.c examples/tree/Makefile examples/tree/tree.c examples/wheelbarrow/Makefile examples/wheelbarrow/wheelbarrow.c examples/fixed/fixed.c examples/fixed/Makefile examples/frame/frame.c examples/frame/Makefile examples/spinbutton/spinbutton.c examples/spinbutton/Makefile examples/find-examples.sh gdk.pc.in gtk+.pc.in
++EXTRA_DIST = \
++ HACKING \
++ gtk+.spec.in \
++ gtk.m4 \
++ makecopyright \
++ TODO \
++ NEWS.pre-1-0 \
++ ChangeLog.pre-1-0 \
++ README.cvs-commits \
++ intl/libgettext.h \
++ intl/po2tbl.sed.in \
++ examples/aspectframe/Makefile \
++ examples/aspectframe/aspectframe.c \
++ examples/Makefile \
++ examples/README.1ST \
++ examples/extract.awk \
++ examples/extract.sh \
++ examples/base/Makefile \
++ examples/base/base.c \
++ examples/buttons/Makefile \
++ examples/buttons/buttons.c \
++ examples/buttons/info.xpm \
++ examples/calendar/Makefile \
++ examples/calendar/calendar.c \
++ examples/clist/Makefile \
++ examples/clist/clist.c \
++ examples/entry/Makefile \
++ examples/entry/entry.c \
++ examples/eventbox/Makefile \
++ examples/eventbox/eventbox.c \
++ examples/filesel/Makefile \
++ examples/filesel/filesel.c \
++ examples/gtkdial/Makefile \
++ examples/gtkdial/dial_test.c \
++ examples/gtkdial/gtkdial.c \
++ examples/gtkdial/gtkdial.h \
++ examples/helloworld/Makefile \
++ examples/helloworld/helloworld.c \
++ examples/helloworld2/Makefile \
++ examples/helloworld2/helloworld2.c \
++ examples/list/Makefile \
++ examples/list/list.c \
++ examples/menu/Makefile \
++ examples/menu/menu.c \
++ examples/menu/itemfactory.c \
++ examples/notebook/Makefile \
++ examples/notebook/notebook.c \
++ examples/packbox/Makefile \
++ examples/packbox/packbox.c \
++ examples/packer/Makefile \
++ examples/packer/pack.c \
++ examples/paned/Makefile \
++ examples/paned/paned.c \
++ examples/pixmap/Makefile \
++ examples/pixmap/pixmap.c \
++ examples/progressbar/Makefile \
++ examples/progressbar/progressbar.c \
++ examples/radiobuttons/Makefile \
++ examples/radiobuttons/radiobuttons.c \
++ examples/rangewidgets/Makefile \
++ examples/rangewidgets/rangewidgets.c \
++ examples/rulers/Makefile \
++ examples/rulers/rulers.c \
++ examples/scribble-simple/Makefile \
++ examples/scribble-simple/scribble-simple.c \
++ examples/scrolledwin/Makefile \
++ examples/scrolledwin/scrolledwin.c \
++ examples/selection/Makefile \
++ examples/selection/gettargets.c \
++ examples/selection/setselection.c \
++ examples/statusbar/Makefile \
++ examples/statusbar/statusbar.c \
++ examples/table/Makefile \
++ examples/table/table.c \
++ examples/text/Makefile \
++ examples/text/text.c \
++ examples/tictactoe/Makefile \
++ examples/tictactoe/tictactoe.c \
++ examples/tictactoe/tictactoe.h \
++ examples/tictactoe/ttt_test.c \
++ examples/tree/Makefile \
++ examples/tree/tree.c \
++ examples/wheelbarrow/Makefile \
++ examples/wheelbarrow/wheelbarrow.c \
++ examples/fixed/fixed.c \
++ examples/fixed/Makefile \
++ examples/frame/frame.c \
++ examples/frame/Makefile \
++ examples/spinbutton/spinbutton.c \
++ examples/spinbutton/Makefile \
++ examples/find-examples.sh \
++ gdk.pc.in gtk+.pc.in
+
+
+ pkgconfigdir = $(libdir)/pkgconfig
+@@ -163,9 +254,9 @@ GZIP_ENV = --best
+ all: all-redirect
+ .SUFFIXES:
+ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile
++ cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile
+
+-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+@@ -282,7 +373,7 @@ uninstall-pkgconfigDATA:
+ all-recursive install-data-recursive install-exec-recursive \
+ installdirs-recursive install-recursive uninstall-recursive \
+ check-recursive installcheck-recursive info-recursive dvi-recursive:
+- @set fnord $(MAKEFLAGS); amf=$$2; \
++ @set fnord $$MAKEFLAGS; amf=$$2; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+@@ -302,11 +393,11 @@ check-recursive installcheck-recursive i
+
+ mostlyclean-recursive clean-recursive distclean-recursive \
+ maintainer-clean-recursive:
+- @set fnord $(MAKEFLAGS); amf=$$2; \
++ @set fnord $$MAKEFLAGS; amf=$$2; \
+ dot_seen=no; \
+ rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
+ rev="$$subdir $$rev"; \
+- test "$$subdir" = "." && dot_seen=yes; \
++ test "$$subdir" != "." || dot_seen=yes; \
+ done; \
+ test "$$dot_seen" = "no" && rev=". $$rev"; \
+ target=`echo $@ | sed s/-recursive//`; \
+@@ -396,7 +487,12 @@ dist-all: distdir
+ distdir: $(DISTFILES)
+ -rm -rf $(distdir)
+ mkdir $(distdir)
+- -chmod 777 $(distdir)
++ -chmod 755 $(distdir)
++ here=`cd $(top_builddir) && pwd`; \
++ top_distdir=`cd $(distdir) && pwd`; \
++ distdir=`cd $(distdir) && pwd`; \
++ cd $(top_srcdir) \
++ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile
+ $(mkinstalldirs) $(distdir)/examples $(distdir)/examples/aspectframe \
+ $(distdir)/examples/base $(distdir)/examples/buttons \
+ $(distdir)/examples/calendar $(distdir)/examples/clist \
+@@ -433,7 +529,7 @@ distdir: $(DISTFILES)
+ test -d $(distdir)/$$subdir \
+ || mkdir $(distdir)/$$subdir \
+ || exit 1; \
+- chmod 777 $(distdir)/$$subdir; \
++ chmod 755 $(distdir)/$$subdir; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
+ || exit 1; \
+ fi; \
+--- docs/Makefile.in
++++ docs/Makefile.in
+@@ -1,6 +1,6 @@
+-# Makefile.in generated automatically by automake 1.4 from Makefile.am
++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+
+-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+@@ -129,19 +129,135 @@ info_TEXINFOS = gdk.texi gtk.texi
+
+ man_MANS = gtk-config.1
+
+-TUTORIAL_FR_FILES = html/gtk_tut_fr-1.html html/gtk_tut_fr-2.html html/gtk_tut_fr-3.html html/gtk_tut_fr-4.html html/gtk_tut_fr-5.html html/gtk_tut_fr-6.html html/gtk_tut_fr-7.html html/gtk_tut_fr-8.html html/gtk_tut_fr-9.html html/gtk_tut_fr-10.html html/gtk_tut_fr-11.html html/gtk_tut_fr-12.html html/gtk_tut_fr-13.html html/gtk_tut_fr-14.html html/gtk_tut_fr-15.html html/gtk_tut_fr-16.html html/gtk_tut_fr-17.html html/gtk_tut_fr-18.html html/gtk_tut_fr-19.html html/gtk_tut_fr-20.html html/gtk_tut_fr-21.html html/gtk_tut_fr-22.html html/gtk_tut_fr-23.html html/gtk_tut_fr-24.html html/gtk_tut_fr.html text/gtk_tut_fr.txt
+-
+-
+-TUTORIAL_FILES = text/gtk_tut.txt html/gtk_tut.html html/gtk_tut.html html/gtk_tut-1.html html/gtk_tut-2.html html/gtk_tut-3.html html/gtk_tut-4.html html/gtk_tut-5.html html/gtk_tut-6.html html/gtk_tut-7.html html/gtk_tut-8.html html/gtk_tut-9.html html/gtk_tut-10.html html/gtk_tut-11.html html/gtk_tut-12.html html/gtk_tut-13.html html/gtk_tut-14.html html/gtk_tut-15.html html/gtk_tut-16.html html/gtk_tut-17.html html/gtk_tut-18.html html/gtk_tut-19.html html/gtk_tut-20.html html/gtk_tut-21.html html/gtk_tut-22.html html/gtk_tut-23.html html/gtk_tut-24.html html/gtk_tut-25.html html/gtk_tut-26.html html/gtk_tut-27.html html/gtk_tut-28.html html/gtk_tut-29.html html/gtk_tut-30.html html/gtk_tut-31.html
+-
+-
+-TUTORIAL_IT_FILES = html/gtk_tut_it.html html/gtk_tut_it-1.html html/gtk_tut_it-2.html html/gtk_tut_it-3.html html/gtk_tut_it-4.html html/gtk_tut_it-5.html html/gtk_tut_it-6.html html/gtk_tut_it-7.html html/gtk_tut_it-8.html html/gtk_tut_it-9.html html/gtk_tut_it-10.html html/gtk_tut_it-11.html html/gtk_tut_it-12.html html/gtk_tut_it-13.html html/gtk_tut_it-14.html html/gtk_tut_it-15.html html/gtk_tut_it-16.html html/gtk_tut_it-17.html html/gtk_tut_it-18.html html/gtk_tut_it-19.html html/gtk_tut_it-20.html html/gtk_tut_it-21.html html/gtk_tut_it-22.html html/gtk_tut_it-23.html html/gtk_tut_it-24.html text/gtk_tut_it.txt
+-
+-
+-FAQ_FILES = html/gtkfaq.html html/gtkfaq-1.html html/gtkfaq-2.html html/gtkfaq-3.html html/gtkfaq-4.html html/gtkfaq-5.html html/gtkfaq-6.html html/gtkfaq-7.html text/gtkfaq.txt
+-
+-
+-EXTRA_DIST = Changes-1.2.txt debugging.txt developers.txt refcounting.txt styles.txt text_widget.txt widget_system.txt generation.txt gtk-config.txt gtk-config.1.in texinfo.tex macros.texi gtkdocs_fix gtkfaq.sgml gtk_tut.sgml gtk_tut_it.sgml gtk_tut_fr.sgml gtk_tut_packbox1.gif gtk_tut_packbox2.gif html/gtk_tut_table.gif html/gtk_tut_packbox1.gif html/gtk_tut_packbox2.gif gtk_tut_table.gif $(TUTORIAL_FILES) $(TUTORIAL_FR_FILES) $(TUTORIAL_IT_FILES) $(FAQ_FILES)
++TUTORIAL_FR_FILES = html/gtk_tut_fr-1.html \
++html/gtk_tut_fr-2.html \
++html/gtk_tut_fr-3.html \
++html/gtk_tut_fr-4.html \
++html/gtk_tut_fr-5.html \
++html/gtk_tut_fr-6.html \
++html/gtk_tut_fr-7.html \
++html/gtk_tut_fr-8.html \
++html/gtk_tut_fr-9.html \
++html/gtk_tut_fr-10.html \
++html/gtk_tut_fr-11.html \
++html/gtk_tut_fr-12.html \
++html/gtk_tut_fr-13.html \
++html/gtk_tut_fr-14.html \
++html/gtk_tut_fr-15.html \
++html/gtk_tut_fr-16.html \
++html/gtk_tut_fr-17.html \
++html/gtk_tut_fr-18.html \
++html/gtk_tut_fr-19.html \
++html/gtk_tut_fr-20.html \
++html/gtk_tut_fr-21.html \
++html/gtk_tut_fr-22.html \
++html/gtk_tut_fr-23.html \
++html/gtk_tut_fr-24.html \
++html/gtk_tut_fr.html text/gtk_tut_fr.txt
++
++
++TUTORIAL_FILES = text/gtk_tut.txt html/gtk_tut.html \
++html/gtk_tut.html \
++html/gtk_tut-1.html \
++html/gtk_tut-2.html \
++html/gtk_tut-3.html \
++html/gtk_tut-4.html \
++html/gtk_tut-5.html \
++html/gtk_tut-6.html \
++html/gtk_tut-7.html \
++html/gtk_tut-8.html \
++html/gtk_tut-9.html \
++html/gtk_tut-10.html \
++html/gtk_tut-11.html \
++html/gtk_tut-12.html \
++html/gtk_tut-13.html \
++html/gtk_tut-14.html \
++html/gtk_tut-15.html \
++html/gtk_tut-16.html \
++html/gtk_tut-17.html \
++html/gtk_tut-18.html \
++html/gtk_tut-19.html \
++html/gtk_tut-20.html \
++html/gtk_tut-21.html \
++html/gtk_tut-22.html \
++html/gtk_tut-23.html \
++html/gtk_tut-24.html \
++html/gtk_tut-25.html \
++html/gtk_tut-26.html \
++html/gtk_tut-27.html \
++html/gtk_tut-28.html \
++html/gtk_tut-29.html \
++html/gtk_tut-30.html \
++html/gtk_tut-31.html
++
++
++TUTORIAL_IT_FILES = html/gtk_tut_it.html \
++ html/gtk_tut_it-1.html \
++ html/gtk_tut_it-2.html \
++ html/gtk_tut_it-3.html \
++ html/gtk_tut_it-4.html \
++ html/gtk_tut_it-5.html \
++ html/gtk_tut_it-6.html \
++ html/gtk_tut_it-7.html \
++ html/gtk_tut_it-8.html \
++ html/gtk_tut_it-9.html \
++ html/gtk_tut_it-10.html \
++ html/gtk_tut_it-11.html \
++ html/gtk_tut_it-12.html \
++ html/gtk_tut_it-13.html \
++ html/gtk_tut_it-14.html \
++ html/gtk_tut_it-15.html \
++ html/gtk_tut_it-16.html \
++ html/gtk_tut_it-17.html \
++ html/gtk_tut_it-18.html \
++ html/gtk_tut_it-19.html \
++ html/gtk_tut_it-20.html \
++ html/gtk_tut_it-21.html \
++ html/gtk_tut_it-22.html \
++ html/gtk_tut_it-23.html \
++ html/gtk_tut_it-24.html \
++ text/gtk_tut_it.txt
++
++
++FAQ_FILES = html/gtkfaq.html \
++ html/gtkfaq-1.html \
++ html/gtkfaq-2.html \
++ html/gtkfaq-3.html \
++ html/gtkfaq-4.html \
++ html/gtkfaq-5.html \
++ html/gtkfaq-6.html \
++ html/gtkfaq-7.html \
++ text/gtkfaq.txt
++
++
++EXTRA_DIST = \
++ Changes-1.2.txt \
++ debugging.txt \
++ developers.txt \
++ refcounting.txt \
++ styles.txt \
++ text_widget.txt \
++ widget_system.txt \
++ generation.txt \
++ gtk-config.txt \
++ gtk-config.1.in \
++ texinfo.tex \
++ macros.texi \
++ gtkdocs_fix \
++ gtkfaq.sgml \
++ gtk_tut.sgml \
++ gtk_tut_it.sgml \
++ gtk_tut_fr.sgml \
++ gtk_tut_packbox1.gif \
++ gtk_tut_packbox2.gif \
++ html/gtk_tut_table.gif \
++ html/gtk_tut_packbox1.gif \
++ html/gtk_tut_packbox2.gif \
++ gtk_tut_table.gif \
++ $(TUTORIAL_FILES) \
++ $(TUTORIAL_FR_FILES) \
++ $(TUTORIAL_IT_FILES) \
++ $(FAQ_FILES)
+
+ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+ CONFIG_HEADER = ../config.h
+@@ -165,9 +281,9 @@ all: all-redirect
+ .SUFFIXES:
+ .SUFFIXES: .dvi .info .ps .texi .texinfo .txi
+ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps docs/Makefile
++ cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/Makefile
+
+-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+@@ -257,7 +373,7 @@ uninstall-info:
+ else ii=; fi; \
+ list='$(INFO_DEPS)'; \
+ for file in $$list; do \
+- test -z "$ii" \
++ test -z "$$ii" \
+ || install-info --info-dir=$(DESTDIR)$(infodir) --remove $$file; \
+ done
+ @$(NORMAL_UNINSTALL)
+@@ -343,6 +459,11 @@ distdir = $(top_builddir)/$(PACKAGE)-$(V
+ subdir = docs
+
+ distdir: $(DISTFILES)
++ here=`cd $(top_builddir) && pwd`; \
++ top_distdir=`cd $(top_distdir) && pwd`; \
++ distdir=`cd $(distdir) && pwd`; \
++ cd $(top_srcdir) \
++ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/Makefile
+ $(mkinstalldirs) $(distdir)/html $(distdir)/text
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+--- gdk/Makefile.in
++++ gdk/Makefile.in
+@@ -1,6 +1,6 @@
+-# Makefile.in generated automatically by automake 1.4 from Makefile.am
++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+
+-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+@@ -125,7 +125,15 @@ x_ldflags = @x_ldflags@
+ x_libs = @x_libs@
+ xinput_progs = @xinput_progs@
+
+-INCLUDES = @STRIP_BEGIN@ -DG_LOG_DOMAIN=\"Gdk\" -I$(top_srcdir) @GTK_DEBUG_FLAGS@ @GTK_XIM_FLAGS@ @GTK_LOCALE_FLAGS@ @GLIB_CFLAGS@ @x_cflags@ @STRIP_END@
++INCLUDES = @STRIP_BEGIN@ \
++ -DG_LOG_DOMAIN=\"Gdk\" \
++ -I$(top_srcdir) \
++ @GTK_DEBUG_FLAGS@ \
++ @GTK_XIM_FLAGS@ \
++ @GTK_LOCALE_FLAGS@ \
++ @GLIB_CFLAGS@ \
++ @x_cflags@ \
++@STRIP_END@
+
+
+ #
+@@ -135,16 +143,65 @@ lib_LTLIBRARIES = libgdk.la
+
+ # libtool stuff: set version and export symbols for resolving
+ libgdkincludedir = $(includedir)/gtk-1.2/gdk
+-libgdk_la_LDFLAGS = @STRIP_BEGIN@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic @GLIB_DEPLIBS@ @x_ldflags@ @x_libs@ -lm @STRIP_END@
++libgdk_la_LDFLAGS = @STRIP_BEGIN@ \
++ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
++ -release $(LT_RELEASE) \
++ -export-dynamic \
++ -no-undefined -Wl,--no-undefined \
++ $(filter-out -lgmodule -ldl, @GLIB_DEPLIBS@) \
++ @x_ldflags@ \
++ @x_libs@ \
++@STRIP_END@
+
+
+ #
+ # setup source file variables
+ #
+ # GDK header files for public installation (non-generated)
+-gdk_public_h_sources = @STRIP_BEGIN@ gdk.h gdkcursors.h gdkrgb.h gdki18n.h gdkkeysyms.h gdkprivate.h gdktypes.h gdkx.h @STRIP_END@
+-
+-gdk_c_sources = @STRIP_BEGIN@ gdk.c gdkcc.c gdkcolor.c gdkcursor.c gdkdnd.c gdkdraw.c gdkevents.c gdkfont.c gdkgc.c gdkglobals.c gdkim.c gdkimage.c gdkinput.c gdkinput.h gdkinputnone.h gdkinputcommon.h gdkinputgxi.h gdkinputxfree.h gdkpixmap.c gdkproperty.c gdkrgb.c gdkrectangle.c gdkregion.c gdkselection.c gdkvisual.c gdkwindow.c gdkxid.c MwmUtil.h gxid_lib.h gxid_proto.h gxid_lib.c @STRIP_END@
++gdk_public_h_sources = @STRIP_BEGIN@ \
++ gdk.h \
++ gdkcursors.h \
++ gdkrgb.h \
++ gdki18n.h \
++ gdkkeysyms.h \
++ gdkprivate.h \
++ gdktypes.h \
++ gdkx.h \
++@STRIP_END@
++
++gdk_c_sources = @STRIP_BEGIN@ \
++ gdk.c \
++ gdkcc.c \
++ gdkcolor.c \
++ gdkcursor.c \
++ gdkdnd.c \
++ gdkdraw.c \
++ gdkevents.c \
++ gdkfont.c \
++ gdkgc.c \
++ gdkglobals.c \
++ gdkim.c \
++ gdkimage.c \
++ gdkinput.c \
++ gdkinput.h \
++ gdkinputnone.h \
++ gdkinputcommon.h\
++ gdkinputgxi.h \
++ gdkinputxfree.h \
++ gdkpixmap.c \
++ gdkproperty.c \
++ gdkrgb.c \
++ gdkrectangle.c \
++ gdkregion.c \
++ gdkselection.c \
++ gdkvisual.c \
++ gdkwindow.c \
++ gdkxid.c \
++ MwmUtil.h \
++ gxid_lib.h \
++ gxid_proto.h \
++ gxid_lib.c \
++@STRIP_END@
+
+
+ #
+@@ -161,7 +218,12 @@ EXTRA_DIST =
+ #
+ EXTRA_PROGRAMS = gxid
+ bin_PROGRAMS = @xinput_progs@
+-LDADDS = @STRIP_BEGIN@ @x_ldflags@ @x_libs@ @GLIB_LIBS@ -lm @STRIP_END@
++LDADDS = @STRIP_BEGIN@ \
++ @x_ldflags@ \
++ @x_libs@ \
++ @GLIB_LIBS@ \
++ -lm \
++@STRIP_END@
+
+ gxid_SOURCES = gxid.c
+ gxid_LDADD = $(LDADDS)
+@@ -204,6 +266,13 @@ DISTFILES = $(DIST_COMMON) $(SOURCES) $(
+
+ TAR = gtar
+ GZIP_ENV = --best
++DEP_FILES = .deps/gdk.P .deps/gdkcc.P .deps/gdkcolor.P \
++.deps/gdkcursor.P .deps/gdkdnd.P .deps/gdkdraw.P .deps/gdkevents.P \
++.deps/gdkfont.P .deps/gdkgc.P .deps/gdkglobals.P .deps/gdkim.P \
++.deps/gdkimage.P .deps/gdkinput.P .deps/gdkpixmap.P .deps/gdkproperty.P \
++.deps/gdkrectangle.P .deps/gdkregion.P .deps/gdkrgb.P \
++.deps/gdkselection.P .deps/gdkvisual.P .deps/gdkwindow.P .deps/gdkxid.P \
++.deps/gxid.P .deps/gxid_lib.P
+ SOURCES = $(libgdk_la_SOURCES) $(gxid_SOURCES)
+ OBJECTS = $(libgdk_la_OBJECTS) $(gxid_OBJECTS)
+
+@@ -211,9 +280,9 @@ all: all-redirect
+ .SUFFIXES:
+ .SUFFIXES: .S .c .lo .o .s
+ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps gdk/Makefile
++ cd $(top_srcdir) && $(AUTOMAKE) --gnu gdk/Makefile
+
+-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+@@ -243,9 +312,6 @@ uninstall-libLTLIBRARIES:
+ $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
+ done
+
+-.c.o:
+- $(COMPILE) -c $<
+-
+ .s.o:
+ $(COMPILE) -c $<
+
+@@ -262,9 +328,6 @@ distclean-compile:
+
+ maintainer-clean-compile:
+
+-.c.lo:
+- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+-
+ .s.lo:
+ $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+
+@@ -362,6 +425,11 @@ distdir = $(top_builddir)/$(PACKAGE)-$(V
+ subdir = gdk
+
+ distdir: $(DISTFILES)
++ here=`cd $(top_builddir) && pwd`; \
++ top_distdir=`cd $(top_distdir) && pwd`; \
++ distdir=`cd $(distdir) && pwd`; \
++ cd $(top_srcdir) \
++ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu gdk/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ if test -d $$d/$$file; then \
+@@ -372,55 +440,38 @@ distdir: $(DISTFILES)
+ || cp -p $$d/$$file $(distdir)/$$file || :; \
+ fi; \
+ done
+-gdk.lo gdk.o : gdk.c ../config.h gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
+- gdkprivate.h gdkinput.h gdkx.h gdkprivate.h gdki18n.h \
+- gdkkeysyms.h
+-gdkcc.lo gdkcc.o : gdkcc.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
+- gdkprivate.h gdkx.h gdkprivate.h
+-gdkcolor.lo gdkcolor.o : gdkcolor.c gdk.h gdktypes.h gdkcursors.h \
+- gdkrgb.h gdkprivate.h gdkx.h gdkprivate.h
+-gdkcursor.lo gdkcursor.o : gdkcursor.c gdk.h gdktypes.h gdkcursors.h \
+- gdkrgb.h gdkprivate.h
+-gdkdnd.lo gdkdnd.o : gdkdnd.c gdkx.h gdkprivate.h gdktypes.h \
+- gdkcursors.h gdk.h gdkrgb.h
+-gdkdraw.lo gdkdraw.o : gdkdraw.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
+- gdkprivate.h
+-gdkevents.lo gdkevents.o : gdkevents.c gdk.h gdktypes.h gdkcursors.h \
+- gdkrgb.h gdkx.h gdkprivate.h gdkprivate.h gdkkeysyms.h \
+- ../config.h gdkinput.h
+-gdkfont.lo gdkfont.o : gdkfont.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
+- gdkprivate.h ../config.h
+-gdkgc.lo gdkgc.o : gdkgc.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
+- gdkprivate.h
+-gdkglobals.lo gdkglobals.o : gdkglobals.c gdktypes.h gdkcursors.h \
+- gdkprivate.h gdktypes.h ../config.h
+-gdkim.lo gdkim.o : gdkim.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
+- gdkprivate.h gdki18n.h gdkx.h gdkprivate.h ../config.h
+-gdkimage.lo gdkimage.o : gdkimage.c ../config.h gdk.h gdktypes.h \
+- gdkcursors.h gdkrgb.h gdkprivate.h
+-gdkinput.lo gdkinput.o : gdkinput.c ../config.h gdk.h gdktypes.h \
+- gdkcursors.h gdkrgb.h gdkx.h gdkprivate.h gdkprivate.h \
+- gdkinput.h gdkinputnone.h gdkinputcommon.h gdkinputxfree.h \
+- gdkinputgxi.h
+-gdkpixmap.lo gdkpixmap.o : gdkpixmap.c ../config.h gdk.h gdktypes.h \
+- gdkcursors.h gdkrgb.h gdkprivate.h
+-gdkproperty.lo gdkproperty.o : gdkproperty.c gdk.h gdktypes.h \
+- gdkcursors.h gdkrgb.h gdkprivate.h
+-gdkrectangle.lo gdkrectangle.o : gdkrectangle.c gdk.h gdktypes.h \
+- gdkcursors.h gdkrgb.h
+-gdkregion.lo gdkregion.o : gdkregion.c gdk.h gdktypes.h gdkcursors.h \
+- gdkrgb.h gdkprivate.h
+-gdkrgb.lo gdkrgb.o : gdkrgb.c ../config.h gdk.h gdktypes.h gdkcursors.h \
+- gdkrgb.h gdkprivate.h gdkrgb.h
+-gdkselection.lo gdkselection.o : gdkselection.c gdk.h gdktypes.h \
+- gdkcursors.h gdkrgb.h gdkprivate.h gdkx.h gdkprivate.h
+-gdkvisual.lo gdkvisual.o : gdkvisual.c gdk.h gdktypes.h gdkcursors.h \
+- gdkrgb.h gdkprivate.h gdkx.h gdkprivate.h
+-gdkwindow.lo gdkwindow.o : gdkwindow.c gdk.h gdktypes.h gdkcursors.h \
+- gdkrgb.h ../config.h gdkinput.h gdkprivate.h MwmUtil.h
+-gdkxid.lo gdkxid.o : gdkxid.c gdkprivate.h gdktypes.h gdkcursors.h
+-gxid_lib.lo gxid_lib.o : gxid_lib.c ../config.h gxid_lib.h gxid_proto.h
+
++DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
++
++-include $(DEP_FILES)
++
++mostlyclean-depend:
++
++clean-depend:
++
++distclean-depend:
++ -rm -rf .deps
++
++maintainer-clean-depend:
++
++%.o: %.c
++ @echo '$(COMPILE) -c $<'; \
++ $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-cp .deps/$(*F).pp .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm .deps/$(*F).pp
++
++%.lo: %.c
++ @echo '$(LTCOMPILE) -c $<'; \
++ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
++ < .deps/$(*F).pp > .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm -f .deps/$(*F).pp
+ info-am:
+ info: info-am
+ dvi-am:
+@@ -462,19 +513,19 @@ maintainer-clean-generic:
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+ mostlyclean-am: mostlyclean-libLTLIBRARIES mostlyclean-compile \
+ mostlyclean-libtool mostlyclean-binPROGRAMS \
+- mostlyclean-tags mostlyclean-generic
++ mostlyclean-tags mostlyclean-depend mostlyclean-generic
+
+ mostlyclean: mostlyclean-am
+
+ clean-am: clean-libLTLIBRARIES clean-compile clean-libtool \
+- clean-binPROGRAMS clean-tags clean-generic \
++ clean-binPROGRAMS clean-tags clean-depend clean-generic \
+ mostlyclean-am
+
+ clean: clean-am
+
+ distclean-am: distclean-libLTLIBRARIES distclean-compile \
+ distclean-libtool distclean-binPROGRAMS distclean-tags \
+- distclean-generic clean-am
++ distclean-depend distclean-generic clean-am
+ -rm -f libtool
+
+ distclean: distclean-am
+@@ -482,7 +533,8 @@ distclean: distclean-am
+ maintainer-clean-am: maintainer-clean-libLTLIBRARIES \
+ maintainer-clean-compile maintainer-clean-libtool \
+ maintainer-clean-binPROGRAMS maintainer-clean-tags \
+- maintainer-clean-generic distclean-am
++ maintainer-clean-depend maintainer-clean-generic \
++ distclean-am
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+
+@@ -497,12 +549,13 @@ maintainer-clean-libtool mostlyclean-bin
+ clean-binPROGRAMS maintainer-clean-binPROGRAMS uninstall-binPROGRAMS \
+ install-binPROGRAMS uninstall-libgdkincludeHEADERS \
+ install-libgdkincludeHEADERS tags mostlyclean-tags distclean-tags \
+-clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
+-check-am installcheck-am installcheck install-exec-am install-exec \
+-install-data-am install-data install-am install uninstall-am uninstall \
+-all-redirect all-am all installdirs mostlyclean-generic \
+-distclean-generic clean-generic maintainer-clean-generic clean \
+-mostlyclean distclean maintainer-clean
++clean-tags maintainer-clean-tags distdir mostlyclean-depend \
++distclean-depend clean-depend maintainer-clean-depend info-am info \
++dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
++install-exec install-data-am install-data install-am install \
++uninstall-am uninstall all-redirect all-am all installdirs \
++mostlyclean-generic distclean-generic clean-generic \
++maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+
+
+ #
+--- gtk/Makefile.in
++++ gtk/Makefile.in
+@@ -1,6 +1,6 @@
+-# Makefile.in generated automatically by automake 1.4 from Makefile.am
++# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
+
+-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
++# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
+ # This Makefile.in is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+@@ -125,7 +125,20 @@ x_ldflags = @x_ldflags@
+ x_libs = @x_libs@
+ xinput_progs = @xinput_progs@
+
+-INCLUDES = @STRIP_BEGIN@ -DG_LOG_DOMAIN=\"Gtk\" -DGTK_DISABLE_COMPAT_H -DGTK_LIBDIR=\"$(libdir)\" -DGTK_DATA_PREFIX=\"$(prefix)\" -DGTK_SYSCONFDIR=\"$(sysconfdir)\" -DGTK_LOCALEDIR=\"$(gtklocaledir)\" -I$(top_srcdir) @GTK_DEBUG_FLAGS@ @GTK_XIM_FLAGS@ @GTK_LOCALE_FLAGS@ @GLIB_CFLAGS@ @x_cflags@ @STRIP_END@
++INCLUDES = @STRIP_BEGIN@ \
++ -DG_LOG_DOMAIN=\"Gtk\" \
++ -DGTK_DISABLE_COMPAT_H \
++ -DGTK_LIBDIR=\"$(libdir)\" \
++ -DGTK_DATA_PREFIX=\"$(prefix)\" \
++ -DGTK_SYSCONFDIR=\"$(sysconfdir)\" \
++ -DGTK_LOCALEDIR=\"$(gtklocaledir)\" \
++ -I$(top_srcdir) \
++ @GTK_DEBUG_FLAGS@ \
++ @GTK_XIM_FLAGS@ \
++ @GTK_LOCALE_FLAGS@ \
++ @GLIB_CFLAGS@ \
++ @x_cflags@ \
++@STRIP_END@
+
+
+ #
+@@ -135,7 +148,20 @@ lib_LTLIBRARIES = libgtk.la
+
+ # libtool stuff: set version and export symbols for resolving
+ libgtkincludedir = $(includedir)/gtk-1.2/gtk
+-libgtk_la_LDFLAGS = @STRIP_BEGIN@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic @GLIB_DEPLIBS@ @x_ldflags@ @x_libs@ -lm @STRIP_END@
++
++libgtk_la_DEPENDENCIES = $(top_builddir)/gdk/libgdk.la
++libgtk_la_LIBADD = $(top_builddir)/gdk/libgdk.la
++
++libgtk_la_LDFLAGS = @STRIP_BEGIN@ \
++ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
++ -release $(LT_RELEASE) \
++ -export-dynamic \
++ -no-undefined -Wl,--no-undefined \
++ $(filter-out -ldl, @GLIB_DEPLIBS@) \
++ @x_ldflags@ \
++ $(filter-out -lXi -lXext, @x_libs@) \
++ -lm \
++@STRIP_END@
+
+ # $(top_builddir)/gdk/libgdk.la
+
+@@ -143,13 +169,233 @@ libgtk_la_LDFLAGS = @STRIP_BEGIN@ -vers
+ # setup source file variables
+ #
+ # GTK+ header files for public installation (non-generated)
+-gtk_public_h_sources = @STRIP_BEGIN@ gtk.h gtkaccelgroup.h gtkaccellabel.h gtkadjustment.h gtkalignment.h gtkarg.h gtkarrow.h gtkaspectframe.h gtkbin.h gtkbindings.h gtkbbox.h gtkbox.h gtkbutton.h gtkcalendar.h gtkcheckbutton.h gtkcheckmenuitem.h gtkclist.h gtkcolorsel.h gtkcombo.h gtkcompat.h gtkcontainer.h gtkctree.h gtkcurve.h gtkdata.h gtkdebug.h gtkdialog.h gtkdnd.h gtkdrawingarea.h gtkeditable.h gtkentry.h gtkenums.h gtkeventbox.h gtkfilesel.h gtkfixed.h gtkfontsel.h gtkframe.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h gtkhbox.h gtkhpaned.h gtkhruler.h gtkhscale.h gtkhscrollbar.h gtkhseparator.h gtkimage.h gtkinputdialog.h gtkinvisible.h gtkitem.h gtkitemfactory.h gtklabel.h gtklayout.h gtklist.h gtklistitem.h gtkmain.h gtkmenu.h gtkmenubar.h gtkmenufactory.h gtkmenuitem.h gtkmenushell.h gtkmisc.h gtknotebook.h gtkobject.h gtkoptionmenu.h gtkpacker.h gtkpaned.h gtkpixmap.h gtkplug.h gtkpreview.h gtkprivate.h gtkprogress.h gtkprogressbar.h gtkradiobutton.h gtkradiomenuitem.h gtkrange.h gtkrc.h gtkruler.h gtkscale.h gtkscrollbar.h gtkscrolledwindow.h gtkselection.h gtkseparator.h gtksignal.h gtksocket.h gtkspinbutton.h gtkstyle.h gtkstatusbar.h gtktable.h gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h gtktogglebutton.h gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtktypeutils.h gtkvbbox.h gtkvbox.h gtkviewport.h gtkvpaned.h gtkvruler.h gtkvscale.h gtkvscrollbar.h gtkvseparator.h gtkwidget.h gtkwindow.h @STRIP_END@
++gtk_public_h_sources = @STRIP_BEGIN@ \
++ gtk.h \
++ gtkaccelgroup.h \
++ gtkaccellabel.h \
++ gtkadjustment.h \
++ gtkalignment.h \
++ gtkarg.h \
++ gtkarrow.h \
++ gtkaspectframe.h \
++ gtkbin.h \
++ gtkbindings.h \
++ gtkbbox.h \
++ gtkbox.h \
++ gtkbutton.h \
++ gtkcalendar.h \
++ gtkcheckbutton.h \
++ gtkcheckmenuitem.h \
++ gtkclist.h \
++ gtkcolorsel.h \
++ gtkcombo.h \
++ gtkcompat.h \
++ gtkcontainer.h \
++ gtkctree.h \
++ gtkcurve.h \
++ gtkdata.h \
++ gtkdebug.h \
++ gtkdialog.h \
++ gtkdnd.h \
++ gtkdrawingarea.h \
++ gtkeditable.h \
++ gtkentry.h \
++ gtkenums.h \
++ gtkeventbox.h \
++ gtkfilesel.h \
++ gtkfixed.h \
++ gtkfontsel.h \
++ gtkframe.h \
++ gtkgamma.h \
++ gtkgc.h \
++ gtkhandlebox.h \
++ gtkhbbox.h \
++ gtkhbox.h \
++ gtkhpaned.h \
++ gtkhruler.h \
++ gtkhscale.h \
++ gtkhscrollbar.h \
++ gtkhseparator.h \
++ gtkimage.h \
++ gtkinputdialog.h \
++ gtkinvisible.h \
++ gtkitem.h \
++ gtkitemfactory.h \
++ gtklabel.h \
++ gtklayout.h \
++ gtklist.h \
++ gtklistitem.h \
++ gtkmain.h \
++ gtkmenu.h \
++ gtkmenubar.h \
++ gtkmenufactory.h \
++ gtkmenuitem.h \
++ gtkmenushell.h \
++ gtkmisc.h \
++ gtknotebook.h \
++ gtkobject.h \
++ gtkoptionmenu.h \
++ gtkpacker.h \
++ gtkpaned.h \
++ gtkpixmap.h \
++ gtkplug.h \
++ gtkpreview.h \
++ gtkprivate.h \
++ gtkprogress.h \
++ gtkprogressbar.h \
++ gtkradiobutton.h \
++ gtkradiomenuitem.h \
++ gtkrange.h \
++ gtkrc.h \
++ gtkruler.h \
++ gtkscale.h \
++ gtkscrollbar.h \
++ gtkscrolledwindow.h \
++ gtkselection.h \
++ gtkseparator.h \
++ gtksignal.h \
++ gtksocket.h \
++ gtkspinbutton.h \
++ gtkstyle.h \
++ gtkstatusbar.h \
++ gtktable.h \
++ gtktearoffmenuitem.h \
++ gtktext.h \
++ gtkthemes.h \
++ gtktipsquery.h \
++ gtktogglebutton.h \
++ gtktoolbar.h \
++ gtktooltips.h \
++ gtktree.h \
++ gtktreeitem.h \
++ gtktypeutils.h \
++ gtkvbbox.h \
++ gtkvbox.h \
++ gtkviewport.h \
++ gtkvpaned.h \
++ gtkvruler.h \
++ gtkvscale.h \
++ gtkvscrollbar.h \
++ gtkvseparator.h \
++ gtkwidget.h \
++ gtkwindow.h \
++@STRIP_END@
+
+ # GTK+ header files that don't get installed
+-gtk_private_h_sources = @STRIP_BEGIN@ @STRIP_END@
++gtk_private_h_sources = @STRIP_BEGIN@ \
++@STRIP_END@
+
+ # GTK+ C sources to build the library from
+-gtk_c_sources = @STRIP_BEGIN@ gtkaccelgroup.c gtkaccellabel.c gtkadjustment.c gtkalignment.c gtkarg.c gtkarrow.c gtkaspectframe.c gtkbin.c gtkbindings.c gtkbbox.c gtkbox.c gtkbutton.c gtkcalendar.c gtkcheckbutton.c gtkcheckmenuitem.c gtkclist.c gtkcolorsel.c gtkcombo.c gtkcontainer.c gtkctree.c gtkcurve.c gtkdata.c gtkdialog.c gtkdnd.c gtkdrawingarea.c gtkeditable.c gtkentry.c gtkeventbox.c gtkfilesel.c gtkfixed.c gtkfontsel.c gtkframe.c gtkgamma.c gtkgc.c gtkhandlebox.c gtkhbbox.c gtkhbox.c gtkhpaned.c gtkhruler.c gtkhscale.c gtkhscrollbar.c gtkhseparator.c gtkimage.c gtkinputdialog.c gtkintl.h gtkinvisible.c gtkitem.c gtkitemfactory.c gtklabel.c gtklayout.c gtklist.c gtklistitem.c gtkmain.c gtkmarshal.c gtkmenu.c gtkmenubar.c gtkmenufactory.c gtkmenuitem.c gtkmenushell.c gtkmisc.c gtknotebook.c gtkobject.c gtkoptionmenu.c gtkpacker.c gtkpaned.c gtkpixmap.c gtkplug.c gtkpreview.c gtkprogress.c gtkprogressbar.c gtkradiobutton.c gtkradiomenuitem.c gtkrange.c gtkrc.c gtkruler.c gtkscale.c gtkscrollbar.c gtkscrolledwindow.c gtkselection.c gtkseparator.c gtksignal.c gtksocket.c gtkspinbutton.c gtkstyle.c gtkstatusbar.c gtktable.c gtktearoffmenuitem.c gtktext.c gtkthemes.c gtktipsquery.c gtktogglebutton.c gtktoolbar.c gtktooltips.c gtktree.c gtktreeitem.c gtktypeutils.c gtkvbbox.c gtkvbox.c gtkviewport.c gtkvpaned.c gtkvruler.c gtkvscale.c gtkvscrollbar.c gtkvseparator.c gtkwidget.c gtkwindow.c fnmatch.c fnmatch.h @STRIP_END@
++gtk_c_sources = @STRIP_BEGIN@ \
++ gtkaccelgroup.c \
++ gtkaccellabel.c \
++ gtkadjustment.c \
++ gtkalignment.c \
++ gtkarg.c \
++ gtkarrow.c \
++ gtkaspectframe.c \
++ gtkbin.c \
++ gtkbindings.c \
++ gtkbbox.c \
++ gtkbox.c \
++ gtkbutton.c \
++ gtkcalendar.c \
++ gtkcheckbutton.c \
++ gtkcheckmenuitem.c \
++ gtkclist.c \
++ gtkcolorsel.c \
++ gtkcombo.c \
++ gtkcontainer.c \
++ gtkctree.c \
++ gtkcurve.c \
++ gtkdata.c \
++ gtkdialog.c \
++ gtkdnd.c \
++ gtkdrawingarea.c \
++ gtkeditable.c \
++ gtkentry.c \
++ gtkeventbox.c \
++ gtkfilesel.c \
++ gtkfixed.c \
++ gtkfontsel.c \
++ gtkframe.c \
++ gtkgamma.c \
++ gtkgc.c \
++ gtkhandlebox.c \
++ gtkhbbox.c \
++ gtkhbox.c \
++ gtkhpaned.c \
++ gtkhruler.c \
++ gtkhscale.c \
++ gtkhscrollbar.c \
++ gtkhseparator.c \
++ gtkimage.c \
++ gtkinputdialog.c \
++ gtkintl.h \
++ gtkinvisible.c \
++ gtkitem.c \
++ gtkitemfactory.c \
++ gtklabel.c \
++ gtklayout.c \
++ gtklist.c \
++ gtklistitem.c \
++ gtkmain.c \
++ gtkmarshal.c \
++ gtkmenu.c \
++ gtkmenubar.c \
++ gtkmenufactory.c \
++ gtkmenuitem.c \
++ gtkmenushell.c \
++ gtkmisc.c \
++ gtknotebook.c \
++ gtkobject.c \
++ gtkoptionmenu.c \
++ gtkpacker.c \
++ gtkpaned.c \
++ gtkpixmap.c \
++ gtkplug.c \
++ gtkpreview.c \
++ gtkprogress.c \
++ gtkprogressbar.c \
++ gtkradiobutton.c \
++ gtkradiomenuitem.c \
++ gtkrange.c \
++ gtkrc.c \
++ gtkruler.c \
++ gtkscale.c \
++ gtkscrollbar.c \
++ gtkscrolledwindow.c \
++ gtkselection.c \
++ gtkseparator.c \
++ gtksignal.c \
++ gtksocket.c \
++ gtkspinbutton.c \
++ gtkstyle.c \
++ gtkstatusbar.c \
++ gtktable.c \
++ gtktearoffmenuitem.c \
++ gtktext.c \
++ gtkthemes.c \
++ gtktipsquery.c \
++ gtktogglebutton.c \
++ gtktoolbar.c \
++ gtktooltips.c \
++ gtktree.c \
++ gtktreeitem.c \
++ gtktypeutils.c \
++ gtkvbbox.c \
++ gtkvbox.c \
++ gtkviewport.c \
++ gtkvpaned.c \
++ gtkvruler.c \
++ gtkvscale.c \
++ gtkvscrollbar.c \
++ gtkvseparator.c \
++ gtkwidget.c \
++ gtkwindow.c \
++ fnmatch.c \
++ fnmatch.h \
++@STRIP_END@
+
+ # we use our own built_sources variable rules to avoid automake's
+ # BUILT_SOURCES oddities
+@@ -158,18 +404,43 @@ gtk_c_sources = @STRIP_BEGIN@ gtkaccelg
+ # content
+ #
+ # built sources that don't get installed
+-gtk_built_sources = @STRIP_BEGIN@ stamp-gtk.defs stamp-gtktypebuiltins.h stamp-gtkmarshal.h gtktypebuiltins_vars.c gtktypebuiltins_ids.c gtktypebuiltins_evals.c gtkmarshal.c gtk.defs @STRIP_END@
++gtk_built_sources = @STRIP_BEGIN@ \
++ stamp-gtk.defs \
++ stamp-gtktypebuiltins.h \
++ stamp-gtkmarshal.h \
++ gtktypebuiltins_vars.c \
++ gtktypebuiltins_ids.c \
++ gtktypebuiltins_evals.c \
++ gtkmarshal.c \
++ gtk.defs \
++@STRIP_END@
+
+ # built sources that get installed with the header files
+-gtk_built_public_sources = @STRIP_BEGIN@ gtkmarshal.h gtktypebuiltins.h @STRIP_END@
++gtk_built_public_sources = @STRIP_BEGIN@ \
++ gtkmarshal.h \
++ gtktypebuiltins.h \
++@STRIP_END@
+
+ # non-header sources (headers should be specified in the above variables)
+ # that don't serve as direct make target sources, i.e. they don't have
+ # their own .lo rules and don't get publically installed
+-gtk_extra_sources = @STRIP_BEGIN@ gtkfeatures.h.in makeenums.pl makeenums.awk maketypes.awk makeenums.h gtkargcollector.c gtk-boxed.defs genmarshal.pl gtkmarshal.list @STRIP_END@
++gtk_extra_sources = @STRIP_BEGIN@ \
++ gtkfeatures.h.in \
++ makeenums.pl \
++ makeenums.awk \
++ maketypes.awk \
++ makeenums.h \
++ gtkargcollector.c \
++ gtk-boxed.defs \
++ genmarshal.pl \
++ gtkmarshal.list \
++@STRIP_END@
+
+ # Extra headers that are used for enum type array/id generation
+-gdk_headers = @STRIP_BEGIN@ ../gdk/gdktypes.h ../gdk/gdkrgb.h @STRIP_END@
++gdk_headers = @STRIP_BEGIN@ \
++ ../gdk/gdktypes.h \
++ ../gdk/gdkrgb.h \
++@STRIP_END@
+
+
+ #
+@@ -180,7 +451,29 @@ libgtk_la_SOURCES = $(gtk_c_sources)
+ MAINTAINERCLEANFILES = $(gtk_built_public_sources) $(gtk_built_sources)
+ EXTRA_HEADERS =
+
+-EXTRA_DIST = $(gtk_private_h_sources) $(gtk_built_sources) $(gtk_built_public_sources) $(gtk_extra_sources) @STRIP_BEGIN@ testgtk.1 testgtkrc testgtkrc2 circles.xbm line-arrow.xbm line-wrap.xbm tree_plus.xbm tree_minus.xbm 3DRings.xpm FilesQueue.xpm Modeller.xpm check-y.xpm check-n.xpm marble.xpm tree_minus.xpm tree_plus.xpm test.xpm check-y.xpm check-n.xpm test.xpm $(gtkconf_DATA) @STRIP_END@
++EXTRA_DIST = $(gtk_private_h_sources) $(gtk_built_sources) $(gtk_built_public_sources) $(gtk_extra_sources) @STRIP_BEGIN@ \
++ testgtk.1 \
++ testgtkrc \
++ testgtkrc2 \
++ circles.xbm \
++ line-arrow.xbm \
++ line-wrap.xbm \
++ tree_plus.xbm \
++ tree_minus.xbm \
++ 3DRings.xpm \
++ FilesQueue.xpm \
++ Modeller.xpm \
++ check-y.xpm \
++ check-n.xpm \
++ marble.xpm \
++ tree_minus.xpm \
++ tree_plus.xpm \
++ test.xpm \
++ check-y.xpm \
++ check-n.xpm \
++ test.xpm \
++ $(gtkconf_DATA) \
++@STRIP_END@
+
+
+ #
+@@ -191,7 +484,14 @@ gen_sources = xgen-gdef xgen-gtbh xgen-g
+ CLEANFILES = $(gen_sources)
+
+ gtkconfdir = $(sysconfdir)/gtk
+-gtkconf_DATA = gtkrc.az gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255
++gtkconf_DATA = gtkrc.az gtkrc.he gtkrc.hy gtkrc.ja \
++ gtkrc.ko gtkrc.ru gtkrc.th gtkrc.uk \
++ gtkrc.utf8 gtkrc.iso88592 \
++ gtkrc.iso88593 gtkrc.iso88595 gtkrc.iso88597 \
++ gtkrc.iso88599 gtkrc.iso885913 gtkrc.iso885914 \
++ gtkrc.iso885915 gtkrc.zh_CN gtkrc.zh_TW.big5 \
++ gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps \
++ gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255
+
+
+ #
+@@ -199,7 +499,15 @@ gtkconf_DATA = gtkrc.az gtkrc.el gtkrc.e
+ #
+ noinst_PROGRAMS = testgtk testinput testselection testrgb testdnd simple # testthreads
+ DEPS = libgtk.la $(top_builddir)/gdk/libgdk.la
+-LDADDS = @STRIP_BEGIN@ libgtk.la $(top_builddir)/gdk/libgdk.la @x_ldflags@ @x_libs@ @GDK_WLIBS@ @GLIB_LIBS@ -lm @STRIP_END@
++LDADDS = @STRIP_BEGIN@ \
++ libgtk.la \
++ $(top_builddir)/gdk/libgdk.la \
++ @x_ldflags@ \
++ @x_libs@ \
++ @GDK_WLIBS@ \
++ @GLIB_LIBS@ \
++ -lm \
++@STRIP_END@
+
+ testgtk_DEPENDENCIES = $(DEPS)
+ testinput_DEPENDENCIES = $(DEPS)
+@@ -228,7 +536,6 @@ X_CFLAGS = @X_CFLAGS@
+ X_LIBS = @X_LIBS@
+ X_EXTRA_LIBS = @X_EXTRA_LIBS@
+ X_PRE_LIBS = @X_PRE_LIBS@
+-libgtk_la_LIBADD =
+ libgtk_la_OBJECTS = gtkaccelgroup.lo gtkaccellabel.lo gtkadjustment.lo \
+ gtkalignment.lo gtkarg.lo gtkarrow.lo gtkaspectframe.lo gtkbin.lo \
+ gtkbindings.lo gtkbbox.lo gtkbox.lo gtkbutton.lo gtkcalendar.lo \
+@@ -288,6 +595,40 @@ DISTFILES = $(DIST_COMMON) $(SOURCES) $(
+
+ TAR = gtar
+ GZIP_ENV = --best
++DEP_FILES = .deps/fnmatch.P .deps/gtkaccelgroup.P .deps/gtkaccellabel.P \
++.deps/gtkadjustment.P .deps/gtkalignment.P .deps/gtkarg.P \
++.deps/gtkarrow.P .deps/gtkaspectframe.P .deps/gtkbbox.P .deps/gtkbin.P \
++.deps/gtkbindings.P .deps/gtkbox.P .deps/gtkbutton.P \
++.deps/gtkcalendar.P .deps/gtkcheckbutton.P .deps/gtkcheckmenuitem.P \
++.deps/gtkclist.P .deps/gtkcolorsel.P .deps/gtkcombo.P \
++.deps/gtkcontainer.P .deps/gtkctree.P .deps/gtkcurve.P .deps/gtkdata.P \
++.deps/gtkdialog.P .deps/gtkdnd.P .deps/gtkdrawingarea.P \
++.deps/gtkeditable.P .deps/gtkentry.P .deps/gtkeventbox.P \
++.deps/gtkfilesel.P .deps/gtkfixed.P .deps/gtkfontsel.P .deps/gtkframe.P \
++.deps/gtkgamma.P .deps/gtkgc.P .deps/gtkhandlebox.P .deps/gtkhbbox.P \
++.deps/gtkhbox.P .deps/gtkhpaned.P .deps/gtkhruler.P .deps/gtkhscale.P \
++.deps/gtkhscrollbar.P .deps/gtkhseparator.P .deps/gtkimage.P \
++.deps/gtkinputdialog.P .deps/gtkinvisible.P .deps/gtkitem.P \
++.deps/gtkitemfactory.P .deps/gtklabel.P .deps/gtklayout.P \
++.deps/gtklist.P .deps/gtklistitem.P .deps/gtkmain.P .deps/gtkmarshal.P \
++.deps/gtkmenu.P .deps/gtkmenubar.P .deps/gtkmenufactory.P \
++.deps/gtkmenuitem.P .deps/gtkmenushell.P .deps/gtkmisc.P \
++.deps/gtknotebook.P .deps/gtkobject.P .deps/gtkoptionmenu.P \
++.deps/gtkpacker.P .deps/gtkpaned.P .deps/gtkpixmap.P .deps/gtkplug.P \
++.deps/gtkpreview.P .deps/gtkprogress.P .deps/gtkprogressbar.P \
++.deps/gtkradiobutton.P .deps/gtkradiomenuitem.P .deps/gtkrange.P \
++.deps/gtkrc.P .deps/gtkruler.P .deps/gtkscale.P .deps/gtkscrollbar.P \
++.deps/gtkscrolledwindow.P .deps/gtkselection.P .deps/gtkseparator.P \
++.deps/gtksignal.P .deps/gtksocket.P .deps/gtkspinbutton.P \
++.deps/gtkstatusbar.P .deps/gtkstyle.P .deps/gtktable.P \
++.deps/gtktearoffmenuitem.P .deps/gtktext.P .deps/gtkthemes.P \
++.deps/gtktipsquery.P .deps/gtktogglebutton.P .deps/gtktoolbar.P \
++.deps/gtktooltips.P .deps/gtktree.P .deps/gtktreeitem.P \
++.deps/gtktypeutils.P .deps/gtkvbbox.P .deps/gtkvbox.P \
++.deps/gtkviewport.P .deps/gtkvpaned.P .deps/gtkvruler.P \
++.deps/gtkvscale.P .deps/gtkvscrollbar.P .deps/gtkvseparator.P \
++.deps/gtkwidget.P .deps/gtkwindow.P .deps/simple.P .deps/testdnd.P \
++.deps/testgtk.P .deps/testinput.P .deps/testrgb.P .deps/testselection.P
+ SOURCES = $(libgtk_la_SOURCES) testgtk.c testinput.c testselection.c testrgb.c testdnd.c simple.c
+ OBJECTS = $(libgtk_la_OBJECTS) testgtk.o testinput.o testselection.o testrgb.o testdnd.o simple.o
+
+@@ -295,9 +636,9 @@ all: all-redirect
+ .SUFFIXES:
+ .SUFFIXES: .S .c .lo .o .s
+ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps gtk/Makefile
++ cd $(top_srcdir) && $(AUTOMAKE) --gnu gtk/Makefile
+
+-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+@@ -329,9 +670,6 @@ uninstall-libLTLIBRARIES:
+ $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
+ done
+
+-.c.o:
+- $(COMPILE) -c $<
+-
+ .s.o:
+ $(COMPILE) -c $<
+
+@@ -348,9 +686,6 @@ distclean-compile:
+
+ maintainer-clean-compile:
+
+-.c.lo:
+- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+-
+ .s.lo:
+ $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+
+@@ -471,6 +806,11 @@ distdir = $(top_builddir)/$(PACKAGE)-$(V
+ subdir = gtk
+
+ distdir: $(DISTFILES)
++ here=`cd $(top_builddir) && pwd`; \
++ top_distdir=`cd $(top_distdir) && pwd`; \
++ distdir=`cd $(distdir) && pwd`; \
++ cd $(top_srcdir) \
++ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu gtk/Makefile
+ @for file in $(DISTFILES); do \
+ d=$(srcdir); \
+ if test -d $$d/$$file; then \
+@@ -481,866 +821,38 @@ distdir: $(DISTFILES)
+ || cp -p $$d/$$file $(distdir)/$$file || :; \
+ fi; \
+ done
+-fnmatch.lo fnmatch.o : fnmatch.c ../config.h fnmatch.h
+-gtkaccelgroup.lo gtkaccelgroup.o : gtkaccelgroup.c gtkaccelgroup.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h ../gdk/gdkkeysyms.h \
+- gtksignal.h gtkmarshal.h gtkwidget.h gtkaccelgroup.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkaccellabel.lo gtkaccellabel.o : gtkaccellabel.c gtkmain.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h \
+- gtkaccellabel.h gtklabel.h gtkmisc.h
+-gtkadjustment.lo gtkadjustment.o : gtkadjustment.c gtkadjustment.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkdata.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtksignal.h \
+- gtkmarshal.h
+-gtkalignment.lo gtkalignment.o : gtkalignment.c gtkalignment.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h
+-gtkarg.lo gtkarg.o : gtkarg.c gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkargcollector.c
+-gtkarrow.lo gtkarrow.o : gtkarrow.c gtkarrow.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h
+-gtkaspectframe.lo gtkaspectframe.o : gtkaspectframe.c gtkaspectframe.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h gtkframe.h
+-gtkbbox.lo gtkbbox.o : gtkbbox.c gtkbbox.h gtkbox.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkbin.lo gtkbin.o : gtkbin.c gtkbin.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkcontainer.h gtkenums.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h
+-gtkbindings.lo gtkbindings.o : gtkbindings.c gtkbindings.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtksignal.h gtkmarshal.h gtkwidget.h \
+- gtkaccelgroup.h gtkadjustment.h gtkdata.h gtkstyle.h gtkrc.h \
+- gtkwidget.h
+-gtkbox.lo gtkbox.o : gtkbox.c gtkbox.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkcontainer.h gtkenums.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h
+-gtkbutton.lo gtkbutton.o : gtkbutton.c gtkbutton.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtklabel.h \
+- gtkmisc.h gtkmain.h gtksignal.h gtkmarshal.h
+-gtkcalendar.lo gtkcalendar.o : gtkcalendar.c gtkcalendar.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtksignal.h gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkwidget.h \
+- gtkaccelgroup.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- ../gdk/gdkkeysyms.h
+-gtkcheckbutton.lo gtkcheckbutton.o : gtkcheckbutton.c gtkcheckbutton.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtktogglebutton.h gtkbutton.h gtkbin.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtklabel.h \
+- gtkmisc.h
+-gtkcheckmenuitem.lo gtkcheckmenuitem.o : gtkcheckmenuitem.c \
+- gtkcheckmenuitem.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmenuitem.h gtkitem.h \
+- gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkaccellabel.h \
+- gtklabel.h gtkmisc.h gtksignal.h gtkmarshal.h
+-gtkclist.lo gtkclist.o : gtkclist.c ../config.h gtkmain.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkclist.h gtksignal.h gtkmarshal.h \
+- gtkalignment.h gtkbin.h gtkcontainer.h gtklabel.h gtkmisc.h \
+- gtkbutton.h gtkhscrollbar.h gtkscrollbar.h gtkrange.h \
+- gtkvscrollbar.h gtkbindings.h gtkdnd.h gtkselection.h \
+- gtkwindow.h ../gdk/gdkx.h ../gdk/gdkprivate.h \
+- ../gdk/gdkkeysyms.h
+-gtkcolorsel.lo gtkcolorsel.o : gtkcolorsel.c ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkcolorsel.h gtkwindow.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h gtkbin.h \
+- gtkcontainer.h gtkwidget.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtkvbox.h gtkbox.h gtkframe.h gtkpreview.h gtkbutton.h \
+- gtkentry.h gtkeditable.h gtkhbox.h gtklabel.h gtkmisc.h \
+- gtkmain.h gtksignal.h gtkmarshal.h gtkrange.h gtkscale.h \
+- gtkhscale.h gtktable.h gtkeventbox.h gtkwindow.h gtkhbbox.h \
+- gtkbbox.h gtkintl.h ../config.h gtkdnd.h gtkselection.h \
+- gtkselection.h
+-gtkcombo.lo gtkcombo.o : gtkcombo.c gtkarrow.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtklabel.h gtklist.h gtkcontainer.h \
+- gtklistitem.h gtkitem.h gtkbin.h gtkentry.h gtkeditable.h \
+- gtkeventbox.h gtkbutton.h gtklistitem.h gtkscrolledwindow.h \
+- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
+- gtkviewport.h gtkmain.h gtksignal.h gtkmarshal.h gtkwindow.h \
+- ../gdk/gdkkeysyms.h gtkcombo.h gtkhbox.h gtkbox.h gtkframe.h
+-gtkcontainer.lo gtkcontainer.o : gtkcontainer.c gtkcontainer.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkprivate.h \
+- gtksignal.h gtkmarshal.h gtkmain.h
+-gtkctree.lo gtkctree.o : gtkctree.c gtkctree.h gtkclist.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtksignal.h gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkalignment.h \
+- gtkbin.h gtkcontainer.h gtkwidget.h gtkaccelgroup.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtklabel.h gtkmisc.h \
+- gtkbutton.h gtkhscrollbar.h gtkscrollbar.h gtkrange.h \
+- gtkvscrollbar.h gtkbindings.h gtkmain.h gtkdnd.h gtkselection.h \
+- ../gdk/gdkx.h ../gdk/gdkprivate.h ../gdk/gdkkeysyms.h
+-gtkcurve.lo gtkcurve.o : gtkcurve.c gtkcurve.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkdrawingarea.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkdrawingarea.h gtkmain.h \
+- gtkradiobutton.h gtkcheckbutton.h gtktogglebutton.h gtkbutton.h \
+- gtkbin.h gtkcontainer.h gtksignal.h gtkmarshal.h gtktable.h
+-gtkdata.lo gtkdata.o : gtkdata.c gtkdata.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtksignal.h gtkmarshal.h
+-gtkdialog.lo gtkdialog.o : gtkdialog.c gtkbutton.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkdialog.h \
+- gtkwindow.h gtkhbox.h gtkbox.h gtkhseparator.h gtkseparator.h \
+- gtkvbox.h
+-gtkdnd.lo gtkdnd.o : gtkdnd.c ../gdk/gdkx.h ../gdk/gdkprivate.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkkeysyms.h \
+- gtkdnd.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkenums.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h gtkselection.h gtkinvisible.h gtkbin.h \
+- gtkcontainer.h gtkmain.h gtksignal.h gtkmarshal.h gtkwindow.h
+-gtkdrawingarea.lo gtkdrawingarea.o : gtkdrawingarea.c gtkdrawingarea.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkeditable.lo gtkeditable.o : gtkeditable.c ../gdk/gdkx.h \
+- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkkeysyms.h ../gdk/gdki18n.h gtkeditable.h ../gdk/gdk.h \
+- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkmain.h gtkselection.h \
+- gtksignal.h gtkmarshal.h
+-gtkentry.lo gtkentry.o : gtkentry.c ../gdk/gdkkeysyms.h ../gdk/gdki18n.h \
+- gtkentry.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkeditable.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtkmain.h gtkselection.h gtksignal.h gtkmarshal.h gtkstyle.h
+-gtkeventbox.lo gtkeventbox.o : gtkeventbox.c gtksignal.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkeventbox.h \
+- gtkbin.h gtkcontainer.h gtkwidget.h gtkaccelgroup.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkfilesel.lo gtkfilesel.o : gtkfilesel.c fnmatch.h ../gdk/gdkkeysyms.h \
+- gtkbutton.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h gtkentry.h gtkeditable.h gtkfilesel.h gtkwindow.h \
+- gtkhbox.h gtkbox.h gtkhbbox.h gtkbbox.h gtklabel.h gtkmisc.h \
+- gtklist.h gtklistitem.h gtkitem.h gtklistitem.h gtkmain.h \
+- gtkscrolledwindow.h gtkhscrollbar.h gtkscrollbar.h gtkrange.h \
+- gtkvscrollbar.h gtkviewport.h gtksignal.h gtkmarshal.h \
+- gtkvbox.h gtkmenu.h gtkmenushell.h gtkmenuitem.h \
+- gtkoptionmenu.h gtkbutton.h gtkclist.h gtksignal.h \
+- gtkalignment.h gtklabel.h gtkdialog.h gtkintl.h ../config.h
+-gtkfixed.lo gtkfixed.o : gtkfixed.c gtkfixed.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkfontsel.lo gtkfontsel.o : gtkfontsel.c ../gdk/gdkx.h \
+- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkkeysyms.h gtkbutton.h ../gdk/gdk.h ../gdk/gdkrgb.h \
+- gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtkcheckbutton.h gtktogglebutton.h gtkbutton.h gtkclist.h \
+- gtksignal.h gtkmarshal.h gtkalignment.h gtklabel.h gtkmisc.h \
+- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
+- gtkentry.h gtkeditable.h gtkfontsel.h gtkwindow.h gtknotebook.h \
+- gtkframe.h gtkhbbox.h gtkbbox.h gtkbox.h gtkhbox.h gtklabel.h \
+- gtknotebook.h gtkradiobutton.h gtkcheckbutton.h gtksignal.h \
+- gtktable.h gtkvbox.h gtkscrolledwindow.h gtkviewport.h \
+- gtkintl.h ../config.h
+-gtkframe.lo gtkframe.o : gtkframe.c gtkframe.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkgamma.lo gtkgamma.o : gtkgamma.c gtkgamma.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkvbox.h \
+- gtkbox.h gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkcurve.h \
+- gtkdrawingarea.h gtkdialog.h gtkwindow.h gtkbin.h \
+- gtkdrawingarea.h gtkentry.h gtkeditable.h gtkhbox.h gtklabel.h \
+- gtkmisc.h gtkmain.h gtkpixmap.h gtkradiobutton.h \
+- gtkcheckbutton.h gtktogglebutton.h gtkbutton.h gtksignal.h \
+- gtkmarshal.h gtktable.h gtkvbox.h gtkwindow.h gtkintl.h \
+- ../config.h
+-gtkgc.lo gtkgc.o : gtkgc.c gtkgc.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h
+-gtkhandlebox.lo gtkhandlebox.o : gtkhandlebox.c ../gdk/gdkx.h \
+- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- gtkhandlebox.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkbin.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkinvisible.h \
+- gtkmain.h gtksignal.h gtkmarshal.h gtkwindow.h
+-gtkhbbox.lo gtkhbbox.o : gtkhbbox.c gtkhbbox.h gtkbbox.h gtkbox.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkcontainer.h gtkenums.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h
+-gtkhbox.lo gtkhbox.o : gtkhbox.c gtkhbox.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbox.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkhpaned.lo gtkhpaned.o : gtkhpaned.c gtkhpaned.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkpaned.h gtkcontainer.h gtkenums.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h gtkmain.h gtksignal.h gtkmarshal.h
+-gtkhruler.lo gtkhruler.o : gtkhruler.c gtkhruler.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkruler.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkhscale.lo gtkhscale.o : gtkhscale.c gtkhscale.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkscale.h gtkrange.h gtkadjustment.h gtkdata.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkwidget.h gtkaccelgroup.h gtkstyle.h gtksignal.h gtkmarshal.h \
+- ../gdk/gdkkeysyms.h
+-gtkhscrollbar.lo gtkhscrollbar.o : gtkhscrollbar.c gtkhscrollbar.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkscrollbar.h gtkrange.h gtkadjustment.h \
+- gtkdata.h gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkwidget.h gtkaccelgroup.h gtkstyle.h \
+- gtksignal.h gtkmarshal.h ../gdk/gdkkeysyms.h
+-gtkhseparator.lo gtkhseparator.o : gtkhseparator.c gtkhseparator.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkseparator.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkimage.lo gtkimage.o : gtkimage.c gtkcontainer.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkimage.h gtkmisc.h
+-gtkinputdialog.lo gtkinputdialog.o : gtkinputdialog.c \
+- ../gdk/gdkkeysyms.h gtkbutton.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h gtkcontainer.h \
+- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkentry.h gtkeditable.h gtkhbox.h \
+- gtkbox.h gtkhseparator.h gtkseparator.h gtkinputdialog.h \
+- gtkdialog.h gtkwindow.h gtklabel.h gtkmisc.h gtklistitem.h \
+- gtkitem.h gtkmain.h gtkmenu.h gtkmenushell.h gtkmenuitem.h \
+- gtknotebook.h gtkoptionmenu.h gtkbutton.h gtkscrolledwindow.h \
+- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
+- gtkviewport.h gtksignal.h gtkmarshal.h gtktable.h gtkvbox.h \
+- gtkintl.h ../config.h
+-gtkinvisible.lo gtkinvisible.o : gtkinvisible.c gtksignal.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkinvisible.h \
+- gtkbin.h gtkcontainer.h gtkwidget.h gtkaccelgroup.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkitem.lo gtkitem.o : gtkitem.c gtkitem.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h \
+- gtkmarshal.h
+-gtkitemfactory.lo gtkitemfactory.o : gtkitemfactory.c gtkitemfactory.h \
+- gtkwidget.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkmenufactory.h \
+- gtkbindings.h gtksignal.h gtkmarshal.h gtkoptionmenu.h \
+- gtkbutton.h gtkbin.h gtkcontainer.h gtkmenubar.h gtkmenushell.h \
+- gtkmenu.h gtkmenuitem.h gtkitem.h gtkradiomenuitem.h \
+- gtkcheckmenuitem.h gtktearoffmenuitem.h gtkaccellabel.h \
+- gtklabel.h gtkmisc.h ../gdk/gdkkeysyms.h
+-gtklabel.lo gtklabel.o : gtklabel.c gtklabel.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h ../gdk/gdkkeysyms.h ../gdk/gdki18n.h
+-gtklayout.lo gtklayout.o : gtklayout.c gtklayout.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h \
+- gtkmarshal.h gtkprivate.h ../gdk/gdkx.h ../gdk/gdkprivate.h
+-gtklist.lo gtklist.o : gtklist.c gtklist.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkcontainer.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtklistitem.h \
+- gtkitem.h gtkbin.h gtklistitem.h gtkmain.h gtksignal.h \
+- gtkmarshal.h gtklabel.h gtkmisc.h
+-gtklistitem.lo gtklistitem.o : gtklistitem.c gtkbindings.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtklabel.h gtkmisc.h gtkwidget.h \
+- gtkaccelgroup.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtklistitem.h gtkitem.h gtkbin.h gtkcontainer.h gtklist.h \
+- gtklistitem.h gtksignal.h gtkmarshal.h ../gdk/gdkkeysyms.h
+-gtkmain.lo gtkmain.o : gtkmain.c gtkbutton.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkdnd.h \
+- gtkselection.h gtkfeatures.h gtkhscrollbar.h gtkscrollbar.h \
+- gtkrange.h gtkhseparator.h gtkseparator.h gtkmain.h \
+- gtkpreview.h gtkrc.h gtkscrolledwindow.h gtkhscrollbar.h \
+- gtkvscrollbar.h gtkviewport.h gtkselection.h gtksignal.h \
+- gtkmarshal.h gtktable.h gtktext.h gtkeditable.h gtkvbox.h \
+- gtkbox.h gtkvscrollbar.h gtkwidget.h gtkwindow.h gtkprivate.h \
+- ../gdk/gdki18n.h ../config.h gtkdebug.h gtkintl.h
+-gtkmarshal.lo gtkmarshal.o : gtkmarshal.c gtkmarshal.h gtktypeutils.h \
+- gtktypebuiltins.h gtkobject.h gtkarg.h gtkenums.h gtkdebug.h
+-gtkmenu.lo gtkmenu.o : gtkmenu.c ../gdk/gdkkeysyms.h gtkbindings.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtklabel.h gtkmisc.h \
+- gtkwidget.h gtkaccelgroup.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h gtkmain.h gtkmenu.h gtkmenushell.h gtkcontainer.h \
+- gtkmenuitem.h gtkitem.h gtkbin.h gtksignal.h gtkmarshal.h \
+- gtkwindow.h
+-gtkmenubar.lo gtkmenubar.o : gtkmenubar.c ../gdk/gdkkeysyms.h \
+- gtkbindings.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkmain.h gtkwidget.h gtkaccelgroup.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h gtkmenubar.h gtkmenushell.h gtkcontainer.h \
+- gtkmenuitem.h gtkitem.h gtkbin.h
+-gtkmenufactory.lo gtkmenufactory.o : gtkmenufactory.c gtkcheckmenuitem.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkmenuitem.h gtkitem.h gtkbin.h gtkcontainer.h \
+- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkmenu.h gtkmenushell.h gtkmenubar.h \
+- gtkmenufactory.h gtkmenuitem.h gtksignal.h gtkmarshal.h
+-gtkmenuitem.lo gtkmenuitem.o : gtkmenuitem.c gtkaccellabel.h gtklabel.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtkmain.h gtkmenu.h gtkmenushell.h gtkcontainer.h gtkmenubar.h \
+- gtkmenuitem.h gtkitem.h gtkbin.h gtksignal.h gtkmarshal.h
+-gtkmenushell.lo gtkmenushell.o : gtkmenushell.c ../gdk/gdkkeysyms.h \
+- gtkbindings.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkmain.h gtkwidget.h gtkaccelgroup.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h gtkmenuitem.h gtkitem.h gtkbin.h gtkcontainer.h \
+- gtktearoffmenuitem.h gtkmenuitem.h gtkmenushell.h gtksignal.h \
+- gtkmarshal.h
+-gtkmisc.lo gtkmisc.o : gtkmisc.c gtkcontainer.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkmisc.h
+-gtknotebook.lo gtknotebook.o : gtknotebook.c gtknotebook.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h \
+- gtkmarshal.h gtkmain.h gtkmenu.h gtkmenushell.h gtkmenuitem.h \
+- gtkitem.h gtkbin.h gtklabel.h gtkmisc.h ../gdk/gdkkeysyms.h \
+- gtkintl.h ../config.h
+-gtkobject.lo gtkobject.o : gtkobject.c gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtksignal.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkobject.h gtkmarshal.h
+-gtkoptionmenu.lo gtkoptionmenu.o : gtkoptionmenu.c gtkmenu.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkmenushell.h gtkcontainer.h gtkwidget.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkmenuitem.h gtkitem.h gtkbin.h \
+- gtkoptionmenu.h gtkbutton.h gtksignal.h gtkmarshal.h \
+- ../gdk/gdkkeysyms.h
+-gtkpacker.lo gtkpacker.o : gtkpacker.c gtkpacker.h gtkcontainer.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkpaned.lo gtkpaned.o : gtkpaned.c gtkpaned.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkhpaned.h \
+- gtkpaned.h
+-gtkpixmap.lo gtkpixmap.o : gtkpixmap.c gtkcontainer.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkpixmap.h gtkmisc.h
+-gtkplug.lo gtkplug.o : gtkplug.c ../gdk/gdkx.h ../gdk/gdkprivate.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkkeysyms.h \
+- gtkplug.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkwindow.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkbin.h gtkcontainer.h \
+- gtkwidget.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkpreview.lo gtkpreview.o : gtkpreview.c ../gdk/gdkx.h \
+- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkpreview.h gtkwidget.h ../gdk/gdk.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h
+-gtkprogress.lo gtkprogress.o : gtkprogress.c gtkprogress.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h
+-gtkprogressbar.lo gtkprogressbar.o : gtkprogressbar.c ../config.h \
+- gtkprogressbar.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkprogress.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h
+-gtkradiobutton.lo gtkradiobutton.o : gtkradiobutton.c gtklabel.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtkradiobutton.h gtkcheckbutton.h gtktogglebutton.h gtkbutton.h \
+- gtkbin.h gtkcontainer.h gtksignal.h gtkmarshal.h
+-gtkradiomenuitem.lo gtkradiomenuitem.o : gtkradiomenuitem.c \
+- gtkaccellabel.h gtklabel.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkradiomenuitem.h gtkcheckmenuitem.h \
+- gtkmenuitem.h gtkitem.h gtkbin.h gtkcontainer.h
+-gtkrange.lo gtkrange.o : gtkrange.c gtkmain.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkrange.h gtksignal.h gtkmarshal.h
+-gtkrc.lo gtkrc.o : gtkrc.c gtkrc.h gtkstyle.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkbindings.h gtkthemes.h gtkintl.h ../config.h
+-gtkruler.lo gtkruler.o : gtkruler.c gtkruler.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h
+-gtkscale.lo gtkscale.o : gtkscale.c gtkcontainer.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkscale.h gtkrange.h
+-gtkscrollbar.lo gtkscrollbar.o : gtkscrollbar.c gtkscrollbar.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkrange.h gtkadjustment.h gtkdata.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkwidget.h gtkaccelgroup.h gtkstyle.h
+-gtkscrolledwindow.lo gtkscrolledwindow.o : gtkscrolledwindow.c \
+- gtkscrolledwindow.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkhscrollbar.h \
+- gtkscrollbar.h gtkrange.h gtkadjustment.h gtkdata.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkwidget.h gtkaccelgroup.h gtkstyle.h gtkvscrollbar.h \
+- gtkviewport.h gtkbin.h gtkcontainer.h gtksignal.h gtkmarshal.h
+-gtkselection.lo gtkselection.o : gtkselection.c ../gdk/gdkx.h \
+- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- gtkmain.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkselection.h gtksignal.h gtkmarshal.h
+-gtkseparator.lo gtkseparator.o : gtkseparator.c gtkseparator.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h
+-gtksignal.lo gtksignal.o : gtksignal.c gtksignal.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkargcollector.c
+-gtksocket.lo gtksocket.o : gtksocket.c ../gdk/gdkx.h ../gdk/gdkprivate.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkkeysyms.h \
+- gtkwindow.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkbin.h gtkcontainer.h gtkwidget.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h \
+- gtksocket.h gtkdnd.h gtkselection.h
+-gtkspinbutton.lo gtkspinbutton.o : gtkspinbutton.c ../gdk/gdkkeysyms.h \
+- gtkspinbutton.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkentry.h gtkeditable.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkmain.h gtksignal.h gtkmarshal.h
+-gtkstatusbar.lo gtkstatusbar.o : gtkstatusbar.c gtkframe.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtklabel.h \
+- gtkmisc.h gtksignal.h gtkmarshal.h gtkstatusbar.h gtkhbox.h \
+- gtkbox.h
+-gtkstyle.lo gtkstyle.o : gtkstyle.c gtkgc.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkrc.h \
+- gtkstyle.h gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkwidget.h gtkthemes.h \
+- ../gdk/gdkprivate.h
+-gtktable.lo gtktable.o : gtktable.c gtktable.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtktearoffmenuitem.lo gtktearoffmenuitem.o : gtktearoffmenuitem.c \
+- gtkmenu.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkmenushell.h gtkcontainer.h gtkwidget.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h \
+- gtktearoffmenuitem.h gtkmenuitem.h gtkitem.h gtkbin.h
+-gtktext.lo gtktext.o : gtktext.c ../gdk/gdkkeysyms.h ../gdk/gdki18n.h \
+- gtkmain.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkselection.h gtksignal.h \
+- gtkmarshal.h gtktext.h gtkeditable.h line-wrap.xbm \
+- line-arrow.xbm
+-gtkthemes.lo gtkthemes.o : gtkthemes.c gtkthemes.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkstyle.h gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkmain.h gtkrc.h gtkselection.h \
+- gtksignal.h gtkmarshal.h gtkwidget.h ../config.h gtkintl.h
+-gtktipsquery.lo gtktipsquery.o : gtktipsquery.c gtktipsquery.h \
+- gtklabel.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtksignal.h gtkmarshal.h gtktooltips.h gtkmain.h gtkintl.h \
+- ../config.h
+-gtktogglebutton.lo gtktogglebutton.o : gtktogglebutton.c gtklabel.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtkmain.h gtksignal.h gtkmarshal.h gtktogglebutton.h \
+- gtkbutton.h gtkbin.h gtkcontainer.h
+-gtktoolbar.lo gtktoolbar.o : gtktoolbar.c gtkbutton.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtktogglebutton.h gtkbutton.h gtkradiobutton.h gtkcheckbutton.h \
+- gtktogglebutton.h gtklabel.h gtkmisc.h gtkvbox.h gtkbox.h \
+- gtktoolbar.h gtkpixmap.h gtksignal.h gtkmarshal.h gtktooltips.h
+-gtktooltips.lo gtktooltips.o : gtktooltips.c gtkmain.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkwidget.h gtkwindow.h gtkbin.h \
+- gtkcontainer.h gtksignal.h gtkmarshal.h gtkstyle.h \
+- gtktooltips.h
+-gtktree.lo gtktree.o : gtktree.c gtktree.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtktreeitem.h \
+- gtkitem.h gtkbin.h gtkmain.h gtksignal.h gtkmarshal.h gtklist.h \
+- gtklistitem.h
+-gtktreeitem.lo gtktreeitem.o : gtktreeitem.c gtklabel.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h \
+- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtktree.h gtkcontainer.h gtktreeitem.h \
+- gtkitem.h gtkbin.h gtkeventbox.h gtkpixmap.h gtkmain.h \
+- gtksignal.h gtkmarshal.h tree_plus.xpm tree_minus.xpm
+-gtktypeutils.lo gtktypeutils.o : gtktypeutils.c gtktypeutils.h \
+- gtktypebuiltins.h makeenums.h ../gdk/gdkprivate.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdk.h \
+- ../gdk/gdkrgb.h gtk.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtkenums.h gtkdebug.h gtkaccellabel.h gtklabel.h \
+- gtkmisc.h gtkwidget.h gtkadjustment.h gtkdata.h gtkstyle.h \
+- gtkalignment.h gtkbin.h gtkcontainer.h gtkaspectframe.h \
+- gtkframe.h gtkarrow.h gtkbindings.h gtkbox.h gtkbbox.h \
+- gtkbutton.h gtkcalendar.h gtksignal.h gtkmarshal.h \
+- gtkcheckbutton.h gtktogglebutton.h gtkcheckmenuitem.h \
+- gtkmenuitem.h gtkitem.h gtkclist.h gtkhscrollbar.h \
+- gtkscrollbar.h gtkrange.h gtkvscrollbar.h gtkcolorsel.h \
+- gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h gtkeditable.h \
+- gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h gtktable.h \
+- gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h gtkcurve.h \
+- gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
+- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
+- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
+- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
+- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
+- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
+- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
+- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
+- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
+- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
+- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
+- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
+- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h \
+- gtkprivate.h gtktypebuiltins_vars.c gtktypebuiltins_evals.c \
+- gtktypebuiltins_ids.c
+-gtkvbbox.lo gtkvbbox.o : gtkvbbox.c gtkvbbox.h gtkbbox.h gtkbox.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkcontainer.h gtkenums.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h
+-gtkvbox.lo gtkvbox.o : gtkvbox.c gtkvbox.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbox.h \
+- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkviewport.lo gtkviewport.o : gtkviewport.c gtksignal.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkviewport.h \
+- gtkadjustment.h gtkdata.h gtkbin.h gtkcontainer.h gtkwidget.h \
+- gtkaccelgroup.h gtkstyle.h
+-gtkvpaned.lo gtkvpaned.o : gtkvpaned.c gtkvpaned.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkpaned.h gtkcontainer.h gtkenums.h gtkwidget.h \
+- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
+- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h gtkmain.h gtksignal.h gtkmarshal.h
+-gtkvruler.lo gtkvruler.o : gtkvruler.c gtkvruler.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkruler.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkvscale.lo gtkvscale.o : gtkvscale.c gtkvscale.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkscale.h gtkrange.h gtkadjustment.h gtkdata.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkwidget.h gtkaccelgroup.h gtkstyle.h gtksignal.h gtkmarshal.h \
+- ../gdk/gdkkeysyms.h
+-gtkvscrollbar.lo gtkvscrollbar.o : gtkvscrollbar.c gtkvscrollbar.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkscrollbar.h gtkrange.h gtkadjustment.h \
+- gtkdata.h gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkwidget.h gtkaccelgroup.h gtkstyle.h \
+- gtksignal.h gtkmarshal.h ../gdk/gdkkeysyms.h
+-gtkvseparator.lo gtkvseparator.o : gtkvseparator.c gtkvseparator.h \
+- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
+- ../gdk/gdkrgb.h gtkseparator.h gtkwidget.h gtkaccelgroup.h \
+- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
+- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
+-gtkwidget.lo gtkwidget.o : gtkwidget.c gtkcontainer.h ../gdk/gdk.h \
+- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
+- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
+- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
+- gtkdata.h gtkstyle.h gtkmain.h gtkrc.h gtkselection.h \
+- gtksignal.h gtkmarshal.h gtkwidget.h gtkwindow.h gtkbin.h \
+- gtkcontainer.h gtkbindings.h gtkprivate.h ../gdk/gdkx.h \
+- ../gdk/gdkprivate.h
+-gtkwindow.lo gtkwindow.o : gtkwindow.c ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h ../gdk/gdkkeysyms.h \
+- ../gdk/gdkx.h ../gdk/gdkprivate.h gtkprivate.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkwidget.h gtkaccelgroup.h gtkadjustment.h gtkdata.h \
+- gtkstyle.h gtkrc.h gtksignal.h gtkmarshal.h gtkwindow.h \
+- gtkbin.h gtkcontainer.h gtkbindings.h gtkmain.h
+-simple.o: simple.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
+- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
+- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
+- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
+- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
+- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
+- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
+- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
+- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
+- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
+- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
+- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
+- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
+- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
+- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
+- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
+- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
+- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
+- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
+- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
+- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
+- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h \
+- ../gdk/gdkprivate.h
+-testdnd.o: testdnd.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
+- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
+- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
+- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
+- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
+- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
+- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
+- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
+- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
+- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
+- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
+- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
+- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
+- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
+- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
+- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
+- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
+- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
+- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
+- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
+- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
+- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h
+-testgtk.o: testgtk.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
+- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
+- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
+- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
+- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
+- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
+- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
+- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
+- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
+- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
+- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
+- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
+- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
+- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
+- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
+- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
+- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
+- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
+- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
+- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
+- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
+- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h \
+- ../gdk/gdkx.h ../gdk/gdkprivate.h ../gdk/gdkkeysyms.h \
+- circles.xbm
+-testinput.o: testinput.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
+- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
+- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
+- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
+- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
+- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
+- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
+- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
+- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
+- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
+- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
+- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
+- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
+- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
+- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
+- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
+- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
+- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
+- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
+- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
+- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
+- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h
+-testrgb.o: testrgb.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
+- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
+- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
+- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
+- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
+- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
+- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
+- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
+- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
+- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
+- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
+- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
+- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
+- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
+- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
+- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
+- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
+- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
+- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
+- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
+- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
+- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h
+-testselection.o: testselection.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
+- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
+- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
+- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
+- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
+- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
+- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
+- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
+- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
+- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
+- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
+- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
+- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
+- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
+- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
+- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
+- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
+- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
+- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
+- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
+- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
+- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
+- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
+- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
+- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
+- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h
+
++DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
++
++-include $(DEP_FILES)
++
++mostlyclean-depend:
++
++clean-depend:
++
++distclean-depend:
++ -rm -rf .deps
++
++maintainer-clean-depend:
++
++%.o: %.c
++ @echo '$(COMPILE) -c $<'; \
++ $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-cp .deps/$(*F).pp .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm .deps/$(*F).pp
++
++%.lo: %.c
++ @echo '$(LTCOMPILE) -c $<'; \
++ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
++ @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
++ < .deps/$(*F).pp > .deps/$(*F).P; \
++ tr ' ' '\012' < .deps/$(*F).pp \
++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
++ >> .deps/$(*F).P; \
++ rm -f .deps/$(*F).pp
+ info-am:
+ info: info-am
+ dvi-am:
+@@ -1384,19 +896,20 @@ maintainer-clean-generic:
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+ mostlyclean-am: mostlyclean-libLTLIBRARIES mostlyclean-compile \
+ mostlyclean-libtool mostlyclean-noinstPROGRAMS \
+- mostlyclean-tags mostlyclean-generic
++ mostlyclean-tags mostlyclean-depend mostlyclean-generic
+
+ mostlyclean: mostlyclean-am
+
+ clean-am: clean-libLTLIBRARIES clean-compile clean-libtool \
+- clean-noinstPROGRAMS clean-tags clean-generic \
+- mostlyclean-am
++ clean-noinstPROGRAMS clean-tags clean-depend \
++ clean-generic mostlyclean-am
+
+ clean: clean-am
+
+ distclean-am: distclean-libLTLIBRARIES distclean-compile \
+ distclean-libtool distclean-noinstPROGRAMS \
+- distclean-tags distclean-generic clean-am
++ distclean-tags distclean-depend distclean-generic \
++ clean-am
+ -rm -f libtool
+
+ distclean: distclean-am
+@@ -1404,7 +917,8 @@ distclean: distclean-am
+ maintainer-clean-am: maintainer-clean-libLTLIBRARIES \
+ maintainer-clean-compile maintainer-clean-libtool \
+ maintainer-clean-noinstPROGRAMS maintainer-clean-tags \
+- maintainer-clean-generic distclean-am
++ maintainer-clean-depend maintainer-clean-generic \
++ distclean-am
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+
+@@ -1420,10 +934,11 @@ distclean-noinstPROGRAMS clean-noinstPRO
+ maintainer-clean-noinstPROGRAMS uninstall-gtkconfDATA \
+ install-gtkconfDATA uninstall-libgtkincludeHEADERS \
+ install-libgtkincludeHEADERS tags mostlyclean-tags distclean-tags \
+-clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
+-check-am installcheck-am installcheck install-exec-am install-exec \
+-install-data-local install-data-am install-data install-am install \
+-uninstall-local uninstall-am uninstall all-redirect all-am all \
++clean-tags maintainer-clean-tags distdir mostlyclean-depend \
++distclean-depend clean-depend maintainer-clean-depend info-am info \
++dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
++install-exec install-data-local install-data-am install-data install-am \
++install uninstall-local uninstall-am uninstall all-redirect all-am all \
+ installdirs mostlyclean-generic distclean-generic clean-generic \
+ maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+
+@@ -1486,11 +1001,11 @@ install-data-local:
+ cd $(DESTDIR)$(gtkconfdir) && \
+ for i in cs hr hu pl ro sk sl sq sr ; do \
+ rm -f gtkrc.$$i ; \
+- ln -s gtkrc.iso-8859-2 gtkrc.$$i ; \
++ ln -s gtkrc.iso88592 gtkrc.$$i ; \
+ done ; \
+ for i in bg_BG.iso88595 mk sp ru_RU.iso88595 ; do \
+ rm -f gtkrc.$$i ; \
+- ln -s gtkrc.iso-8859-5 gtkrc.$$i ; \
++ ln -s gtkrc.iso88595 gtkrc.$$i ; \
+ done ; \
+ for i in he_IL.cp1255 he_IL.microsoftcp1255 yi ; do \
+ rm -f gtkrc.$$i ; \
+@@ -1499,12 +1014,12 @@ install-data-local:
+ rm -f gtkrc.lt gtkrc.lv gtkrc.cy gtkrc.ga gtkrc.et gtkrc.ka \
+ gtkrc.vi_VN.viscii111 gtkrc.vi_VN.tcvn5712 gtkrc.vi \
+ gtkrc.be gtkrc.bg gtkrc.mi ; \
+- ln -s gtkrc.iso-8859-13 gtkrc.mi ; \
+- ln -s gtkrc.iso-8859-13 gtkrc.lt ; \
+- ln -s gtkrc.iso-8859-13 gtkrc.lv ; \
+- ln -s gtkrc.iso-8859-14 gtkrc.cy ; \
+- ln -s gtkrc.iso-8859-14 gtkrc.ga ; \
+- ln -s gtkrc.iso-8859-15 gtkrc.et ; \
++ ln -s gtkrc.iso885913 gtkrc.mi ; \
++ ln -s gtkrc.iso885913 gtkrc.lt ; \
++ ln -s gtkrc.iso885913 gtkrc.lv ; \
++ ln -s gtkrc.iso885914 gtkrc.cy ; \
++ ln -s gtkrc.iso885914 gtkrc.ga ; \
++ ln -s gtkrc.iso885915 gtkrc.et ; \
+ ln -s gtkrc.ka_GE.georgianps gtkrc.ka ; \
+ ln -s gtkrc.vi_VN.viscii gtkrc.vi_VN.viscii111 ; \
+ ln -s gtkrc.vi_VN.tcvn gtkrc.vi ; \
+--- config.h.in
++++ config.h.in
+@@ -146,12 +146,21 @@
+ /* Define if you have the <nl_types.h> header file. */
+ #undef HAVE_NL_TYPES_H
+
++/* Define if you have the <stdlib.h> header file. */
++#undef HAVE_STDLIB_H
++
+ /* Define if you have the <string.h> header file. */
+ #undef HAVE_STRING_H
+
+ /* Define if you have the <sys/param.h> header file. */
+ #undef HAVE_SYS_PARAM_H
+
++/* Define if you have the <sys/stat.h> header file. */
++#undef HAVE_SYS_STAT_H
++
++/* Define if you have the <sys/types.h> header file. */
++#undef HAVE_SYS_TYPES_H
++
+ /* Define if you have the <unistd.h> header file. */
+ #undef HAVE_UNISTD_H
+
+--- configure
++++ configure
+@@ -1389,6 +1389,7 @@ else
+ echo "$ac_t""no" 1>&6
+ fi
+
++
+ lt_target="$host"
+
+ # Check for any special flags to pass to ltconfig.
+@@ -1414,8 +1415,8 @@ test x"$silent" = xyes && libtool_flags=
+ case "$lt_target" in
+ *-*-irix6*)
+ # Find out which ABI we are using.
+- echo '#line 1422 "configure"' > conftest.$ac_ext
+- if { (eval echo configure:1423: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++ echo '#line 1419 "configure"' > conftest.$ac_ext
++ if { (eval echo configure:1420: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ case "`/usr/bin/file conftest.o`" in
+ *32-bit*)
+ LD="${LD-ld} -32"
+@@ -1436,19 +1437,19 @@ case "$lt_target" in
+ SAVE_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -belf"
+ echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
+-echo "configure:1444: checking whether the C compiler needs -belf" >&5
++echo "configure:1441: checking whether the C compiler needs -belf" >&5
+ if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 1449 "configure"
++#line 1446 "configure"
+ #include "confdefs.h"
+
+ int main() {
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:1456: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:1453: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ lt_cv_cc_needs_belf=yes
+ else
+@@ -1551,7 +1552,7 @@ exec 5>>./config.log
+
+
+ echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
+-echo "configure:1559: checking whether to enable maintainer-specific portions of Makefiles" >&5
++echo "configure:1556: checking whether to enable maintainer-specific portions of Makefiles" >&5
+ # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
+ if test "${enable_maintainer_mode+set}" = set; then
+ enableval="$enable_maintainer_mode"
+@@ -1581,7 +1582,7 @@ else { echo "configure: error: can not r
+ fi
+
+ echo $ac_n "checking host system type""... $ac_c" 1>&6
+-echo "configure:1589: checking host system type" >&5
++echo "configure:1586: checking host system type" >&5
+
+ host_alias=$host
+ case "$host_alias" in
+@@ -1697,7 +1698,7 @@ EOF
+
+ # Build time sanity check...
+ echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
+-echo "configure:1705: checking whether build environment is sane" >&5
++echo "configure:1702: checking whether build environment is sane" >&5
+ # Just in case
+ sleep 1
+ echo timestamp > conftestfile
+@@ -1739,7 +1740,7 @@ echo "$ac_t""yes" 1>&6
+ # Extract the first word of "gcc", so it can be a program name with args.
+ set dummy gcc; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1747: checking for $ac_word" >&5
++echo "configure:1744: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1769,7 +1770,7 @@ 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1777: checking for $ac_word" >&5
++echo "configure:1774: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1820,7 +1821,7 @@ fi
+ # Extract the first word of "cl", so it can be a program name with args.
+ set dummy cl; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1828: checking for $ac_word" >&5
++echo "configure:1825: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1852,7 +1853,7 @@ fi
+ fi
+
+ echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
+-echo "configure:1860: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
++echo "configure:1857: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+
+ ac_ext=c
+ # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
+@@ -1863,12 +1864,12 @@ cross_compiling=$ac_cv_prog_cc_cross
+
+ cat > conftest.$ac_ext << EOF
+
+-#line 1871 "configure"
++#line 1868 "configure"
+ #include "confdefs.h"
+
+ main(){return(0);}
+ EOF
+-if { (eval echo configure:1876: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:1873: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ ac_cv_prog_cc_works=yes
+ # If we can't run a trivial program, we are probably using a cross compiler.
+ if (./conftest; exit) 2>/dev/null; then
+@@ -1894,12 +1895,12 @@ if test $ac_cv_prog_cc_works = no; then
+ { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
+ fi
+ echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
+-echo "configure:1902: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
++echo "configure:1899: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+ echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
+ cross_compiling=$ac_cv_prog_cc_cross
+
+ echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
+-echo "configure:1907: checking whether we are using GNU C" >&5
++echo "configure:1904: checking whether we are using GNU C" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1908,7 +1909,7 @@ else
+ yes;
+ #endif
+ EOF
+-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1916: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
++if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1913: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+ ac_cv_prog_gcc=yes
+ else
+ ac_cv_prog_gcc=no
+@@ -1927,7 +1928,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
+ ac_save_CFLAGS="$CFLAGS"
+ CFLAGS=
+ echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
+-echo "configure:1935: checking whether ${CC-cc} accepts -g" >&5
++echo "configure:1932: checking whether ${CC-cc} accepts -g" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1959,7 +1960,7 @@ else
+ fi
+
+ echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6
+-echo "configure:1967: checking for POSIXized ISC" >&5
++echo "configure:1964: checking for POSIXized ISC" >&5
+ if test -d /etc/conf/kconfig.d &&
+ grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
+ then
+@@ -1983,7 +1984,7 @@ fi
+
+
+ echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
+-echo "configure:1991: checking for ${CC-cc} option to accept ANSI C" >&5
++echo "configure:1988: checking for ${CC-cc} option to accept ANSI C" >&5
+ if eval "test \"`echo '$''{'am_cv_prog_cc_stdc'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -1999,7 +2000,7 @@ for ac_arg in "" -qlanglvl=ansi -std1 "-
+ do
+ CC="$ac_save_CC $ac_arg"
+ cat > conftest.$ac_ext <<EOF
+-#line 2007 "configure"
++#line 2004 "configure"
+ #include "confdefs.h"
+ #include <stdarg.h>
+ #include <stdio.h>
+@@ -2036,7 +2037,7 @@ return f (e, argv, 0) != argv[0] || f
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2044: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2041: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ am_cv_prog_cc_stdc="$ac_arg"; break
+ else
+@@ -2071,7 +2072,7 @@ esac
+ # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+ # ./install, which can be erroneously created by make from ./install.sh.
+ echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
+-echo "configure:2079: checking for a BSD compatible install" >&5
++echo "configure:2076: checking for a BSD compatible install" >&5
+ if test -z "$INSTALL"; then
+ if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -2124,7 +2125,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCR
+ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+ echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
+-echo "configure:2132: checking whether ${MAKE-make} sets \${MAKE}" >&5
++echo "configure:2129: checking whether ${MAKE-make} sets \${MAKE}" >&5
+ set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -2181,7 +2182,7 @@ 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:2189: checking for $ac_word" >&5
++echo "configure:2186: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -2215,7 +2216,7 @@ 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:2223: checking for $ac_word" >&5
++echo "configure:2220: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_PERL'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -2249,7 +2250,7 @@ done
+ # Extract the first word of "indent", so it can be a program name with args.
+ set dummy indent; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:2257: checking for $ac_word" >&5
++echo "configure:2254: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_prog_INDENT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -2286,7 +2287,7 @@ fi
+
+
+ echo $ac_n "checking whether make is GNU Make""... $ac_c" 1>&6
+-echo "configure:2294: checking whether make is GNU Make" >&5
++echo "configure:2291: checking whether make is GNU Make" >&5
+ STRIP_BEGIN=
+ STRIP_END=
+ if $ac_make --version 2>/dev/null | grep '^GNU Make ' >/dev/null ; then
+@@ -2304,7 +2305,7 @@ STRIP_DUMMY=
+ # i18n stuff
+ ALL_LINGUAS="az ca cs da de el es et eu fi fr ga gl hr hu it ja ko lt nl no nn pl pt pt_BR ro ru sk sl sp sr sv tr uk vi wa zh_CN.GB2312 zh_TW.Big5"
+ echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
+-echo "configure:2312: checking how to run the C preprocessor" >&5
++echo "configure:2309: checking how to run the C preprocessor" >&5
+ # On Suns, sometimes $CPP names a directory.
+ if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+@@ -2319,13 +2320,13 @@ else
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp.
+ cat > conftest.$ac_ext <<EOF
+-#line 2327 "configure"
++#line 2324 "configure"
+ #include "confdefs.h"
+ #include <assert.h>
+ Syntax Error
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:2333: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:2330: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ :
+@@ -2336,13 +2337,13 @@ else
+ rm -rf conftest*
+ CPP="${CC-cc} -E -traditional-cpp"
+ cat > conftest.$ac_ext <<EOF
+-#line 2344 "configure"
++#line 2341 "configure"
+ #include "confdefs.h"
+ #include <assert.h>
+ Syntax Error
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:2350: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:2347: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ :
+@@ -2353,13 +2354,13 @@ else
+ rm -rf conftest*
+ CPP="${CC-cc} -nologo -E"
+ cat > conftest.$ac_ext <<EOF
+-#line 2361 "configure"
++#line 2358 "configure"
+ #include "confdefs.h"
+ #include <assert.h>
+ Syntax Error
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:2367: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:2364: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ :
+@@ -2384,12 +2385,12 @@ fi
+ echo "$ac_t""$CPP" 1>&6
+
+ echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
+-echo "configure:2392: checking for ANSI C header files" >&5
++echo "configure:2389: checking for ANSI C header files" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2397 "configure"
++#line 2394 "configure"
+ #include "confdefs.h"
+ #include <stdlib.h>
+ #include <stdarg.h>
+@@ -2397,7 +2398,7 @@ else
+ #include <float.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:2405: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:2402: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -2414,7 +2415,7 @@ rm -f conftest*
+ if test $ac_cv_header_stdc = yes; then
+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+ cat > conftest.$ac_ext <<EOF
+-#line 2422 "configure"
++#line 2419 "configure"
+ #include "confdefs.h"
+ #include <string.h>
+ EOF
+@@ -2432,7 +2433,7 @@ 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 <<EOF
+-#line 2440 "configure"
++#line 2437 "configure"
+ #include "confdefs.h"
+ #include <stdlib.h>
+ EOF
+@@ -2453,7 +2454,7 @@ if test "$cross_compiling" = yes; then
+ :
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2461 "configure"
++#line 2458 "configure"
+ #include "confdefs.h"
+ #include <ctype.h>
+ #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+@@ -2464,7 +2465,7 @@ if (XOR (islower (i), ISLOWER (i)) || to
+ exit (0); }
+
+ EOF
+-if { (eval echo configure:2472: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:2469: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ :
+ else
+@@ -2488,12 +2489,12 @@ EOF
+ fi
+
+ echo $ac_n "checking for working const""... $ac_c" 1>&6
+-echo "configure:2496: checking for working const" >&5
++echo "configure:2493: checking for working const" >&5
+ if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2501 "configure"
++#line 2498 "configure"
+ #include "confdefs.h"
+
+ int main() {
+@@ -2542,7 +2543,7 @@ ccp = (char const *const *) p;
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2550: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2547: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_c_const=yes
+ else
+@@ -2563,21 +2564,21 @@ EOF
+ fi
+
+ echo $ac_n "checking for inline""... $ac_c" 1>&6
+-echo "configure:2571: checking for inline" >&5
++echo "configure:2568: checking for inline" >&5
+ if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ ac_cv_c_inline=no
+ for ac_kw in inline __inline__ __inline; do
+ cat > conftest.$ac_ext <<EOF
+-#line 2578 "configure"
++#line 2575 "configure"
+ #include "confdefs.h"
+
+ int main() {
+ } $ac_kw foo() {
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2585: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2582: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_c_inline=$ac_kw; break
+ else
+@@ -2603,12 +2604,12 @@ EOF
+ esac
+
+ echo $ac_n "checking for off_t""... $ac_c" 1>&6
+-echo "configure:2611: checking for off_t" >&5
++echo "configure:2608: checking for off_t" >&5
+ if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2616 "configure"
++#line 2613 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #if STDC_HEADERS
+@@ -2636,12 +2637,12 @@ EOF
+ fi
+
+ echo $ac_n "checking for size_t""... $ac_c" 1>&6
+-echo "configure:2644: checking for size_t" >&5
++echo "configure:2641: checking for size_t" >&5
+ if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2649 "configure"
++#line 2646 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #if STDC_HEADERS
+@@ -2671,19 +2672,19 @@ fi
+ # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
+ # for constant arguments. Useless!
+ echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
+-echo "configure:2679: checking for working alloca.h" >&5
++echo "configure:2676: checking for working alloca.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2684 "configure"
++#line 2681 "configure"
+ #include "confdefs.h"
+ #include <alloca.h>
+ int main() {
+ char *p = alloca(2 * sizeof(int));
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2691: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:2688: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ ac_cv_header_alloca_h=yes
+ else
+@@ -2704,12 +2705,12 @@ EOF
+ fi
+
+ echo $ac_n "checking for alloca""... $ac_c" 1>&6
+-echo "configure:2712: checking for alloca" >&5
++echo "configure:2709: checking for alloca" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2717 "configure"
++#line 2714 "configure"
+ #include "confdefs.h"
+
+ #ifdef __GNUC__
+@@ -2737,7 +2738,7 @@ int main() {
+ char *p = (char *) alloca(1);
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2745: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:2742: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ ac_cv_func_alloca_works=yes
+ else
+@@ -2769,12 +2770,12 @@ EOF
+
+
+ echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
+-echo "configure:2777: checking whether alloca needs Cray hooks" >&5
++echo "configure:2774: checking whether alloca needs Cray hooks" >&5
+ if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2782 "configure"
++#line 2779 "configure"
+ #include "confdefs.h"
+ #if defined(CRAY) && ! defined(CRAY2)
+ webecray
+@@ -2799,12 +2800,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6
+ if test $ac_cv_os_cray = yes; then
+ for ac_func in _getb67 GETB67 getb67; do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:2807: checking for $ac_func" >&5
++echo "configure:2804: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2812 "configure"
++#line 2809 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -2827,7 +2828,7 @@ $ac_func();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2835: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:2832: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -2854,7 +2855,7 @@ done
+ fi
+
+ echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
+-echo "configure:2862: checking stack direction for C alloca" >&5
++echo "configure:2859: checking stack direction for C alloca" >&5
+ if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -2862,7 +2863,7 @@ else
+ ac_cv_c_stack_direction=0
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2870 "configure"
++#line 2867 "configure"
+ #include "confdefs.h"
+ find_stack_direction ()
+ {
+@@ -2881,7 +2882,7 @@ main ()
+ exit (find_stack_direction() < 0);
+ }
+ EOF
+-if { (eval echo configure:2889: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:2886: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ ac_cv_c_stack_direction=1
+ else
+@@ -2902,21 +2903,21 @@ EOF
+
+ fi
+
+-for ac_hdr in unistd.h
++for ac_hdr in stdlib.h unistd.h sys/stat.h sys/types.h
+ do
+ ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+-echo "configure:2914: checking for $ac_hdr" >&5
++echo "configure:2911: checking for $ac_hdr" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2919 "configure"
++#line 2916 "configure"
+ #include "confdefs.h"
+ #include <$ac_hdr>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:2924: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:2921: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -2945,12 +2946,12 @@ done
+ for ac_func in getpagesize
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:2953: checking for $ac_func" >&5
++echo "configure:2950: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 2958 "configure"
++#line 2955 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -2973,7 +2974,7 @@ $ac_func();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2981: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:2978: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -2998,7 +2999,7 @@ fi
+ done
+
+ echo $ac_n "checking for working mmap""... $ac_c" 1>&6
+-echo "configure:3006: checking for working mmap" >&5
++echo "configure:3003: checking for working mmap" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -3006,7 +3007,7 @@ else
+ ac_cv_func_mmap_fixed_mapped=no
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 3014 "configure"
++#line 3011 "configure"
+ #include "confdefs.h"
+
+ /* Thanks to Mike Haertel and Jim Avera for this test.
+@@ -3034,11 +3035,24 @@ else
+ #include <fcntl.h>
+ #include <sys/mman.h>
+
++#if HAVE_SYS_TYPES_H
++# include <sys/types.h>
++#endif
++
++#if HAVE_STDLIB_H
++# include <stdlib.h>
++#endif
++
++#if HAVE_SYS_STAT_H
++# include <sys/stat.h>
++#endif
++
++#if HAVE_UNISTD_H
++# include <unistd.h>
++#endif
++
+ /* This mess was copied from the GNU getpagesize.h. */
+ #ifndef HAVE_GETPAGESIZE
+-# ifdef HAVE_UNISTD_H
+-# include <unistd.h>
+-# endif
+
+ /* Assume that all systems that can run configure have sys/param.h. */
+ # ifndef HAVE_SYS_PARAM_H
+@@ -3146,7 +3160,7 @@ main()
+ }
+
+ EOF
+-if { (eval echo configure:3154: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:3164: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ ac_cv_func_mmap_fixed_mapped=yes
+ else
+@@ -3174,17 +3188,17 @@ unistd.h sys/param.h
+ do
+ ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+-echo "configure:3182: checking for $ac_hdr" >&5
++echo "configure:3192: checking for $ac_hdr" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 3187 "configure"
++#line 3197 "configure"
+ #include "confdefs.h"
+ #include <$ac_hdr>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:3192: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:3202: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -3214,12 +3228,12 @@ done
+ strdup __argz_count __argz_stringify __argz_next
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:3222: checking for $ac_func" >&5
++echo "configure:3232: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 3227 "configure"
++#line 3237 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -3242,7 +3256,7 @@ $ac_func();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3250: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3260: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -3271,12 +3285,12 @@ done
+ for ac_func in stpcpy
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:3279: checking for $ac_func" >&5
++echo "configure:3289: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 3284 "configure"
++#line 3294 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -3299,7 +3313,7 @@ $ac_func();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3307: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3317: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -3333,19 +3347,19 @@ EOF
+
+ if test $ac_cv_header_locale_h = yes; then
+ echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
+-echo "configure:3341: checking for LC_MESSAGES" >&5
++echo "configure:3351: checking for LC_MESSAGES" >&5
+ if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 3346 "configure"
++#line 3356 "configure"
+ #include "confdefs.h"
+ #include <locale.h>
+ int main() {
+ return LC_MESSAGES
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3353: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3363: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ am_cv_val_LC_MESSAGES=yes
+ else
+@@ -3366,7 +3380,7 @@ EOF
+ fi
+ fi
+ echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6
+-echo "configure:3374: checking whether NLS is requested" >&5
++echo "configure:3384: checking whether NLS is requested" >&5
+ # Check whether --enable-nls or --disable-nls was given.
+ if test "${enable_nls+set}" = set; then
+ enableval="$enable_nls"
+@@ -3398,17 +3412,17 @@ fi
+
+ ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for libintl.h""... $ac_c" 1>&6
+-echo "configure:3406: checking for libintl.h" >&5
++echo "configure:3416: checking for libintl.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 3411 "configure"
++#line 3421 "configure"
+ #include "confdefs.h"
+ #include <libintl.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:3416: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:3426: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -3425,19 +3439,19 @@ fi
+ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ echo $ac_n "checking for dgettext in libc""... $ac_c" 1>&6
+-echo "configure:3433: checking for dgettext in libc" >&5
++echo "configure:3443: checking for dgettext in libc" >&5
+ if eval "test \"`echo '$''{'gt_cv_func_dgettext_libc'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 3438 "configure"
++#line 3448 "configure"
+ #include "confdefs.h"
+ #include <libintl.h>
+ int main() {
+ return (int) dgettext ("","")
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3445: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3455: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ gt_cv_func_dgettext_libc=yes
+ else
+@@ -3453,7 +3467,7 @@ echo "$ac_t""$gt_cv_func_dgettext_libc"
+
+ if test "$gt_cv_func_dgettext_libc" != "yes"; then
+ echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6
+-echo "configure:3461: checking for bindtextdomain in -lintl" >&5
++echo "configure:3471: checking for bindtextdomain in -lintl" >&5
+ ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -3461,7 +3475,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lintl $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 3469 "configure"
++#line 3479 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -3472,7 +3486,7 @@ int main() {
+ bindtextdomain()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3490: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -3488,12 +3502,12 @@ fi
+ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ echo $ac_n "checking for dgettext in libintl""... $ac_c" 1>&6
+-echo "configure:3496: checking for dgettext in libintl" >&5
++echo "configure:3506: checking for dgettext in libintl" >&5
+ if eval "test \"`echo '$''{'gt_cv_func_dgettext_libintl'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ echo $ac_n "checking for dgettext in -lintl""... $ac_c" 1>&6
+-echo "configure:3501: checking for dgettext in -lintl" >&5
++echo "configure:3511: checking for dgettext in -lintl" >&5
+ ac_lib_var=`echo intl'_'dgettext | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -3501,7 +3515,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lintl $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 3509 "configure"
++#line 3519 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -3512,7 +3526,7 @@ int main() {
+ dgettext()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3520: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3530: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -3555,7 +3569,7 @@ EOF
+ # Extract the first word of "msgfmt", so it can be a program name with args.
+ set dummy msgfmt; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:3563: checking for $ac_word" >&5
++echo "configure:3573: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -3589,12 +3603,12 @@ fi
+ for ac_func in dcgettext
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:3597: checking for $ac_func" >&5
++echo "configure:3607: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 3602 "configure"
++#line 3612 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -3617,7 +3631,7 @@ $ac_func();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3625: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3635: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -3644,7 +3658,7 @@ done
+ # Extract the first word of "gmsgfmt", so it can be a program name with args.
+ set dummy gmsgfmt; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:3652: checking for $ac_word" >&5
++echo "configure:3662: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -3680,7 +3694,7 @@ fi
+ # Extract the first word of "xgettext", so it can be a program name with args.
+ set dummy xgettext; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:3688: checking for $ac_word" >&5
++echo "configure:3698: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -3712,7 +3726,7 @@ else
+ fi
+
+ cat > conftest.$ac_ext <<EOF
+-#line 3720 "configure"
++#line 3730 "configure"
+ #include "confdefs.h"
+
+ int main() {
+@@ -3720,7 +3734,7 @@ extern int _nl_msg_cat_cntr;
+ return _nl_msg_cat_cntr
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3728: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3738: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ CATOBJEXT=.gmo
+ DATADIRNAME=share
+@@ -3750,7 +3764,7 @@ fi
+
+ if test "$CATOBJEXT" = "NONE"; then
+ echo $ac_n "checking whether catgets can be used""... $ac_c" 1>&6
+-echo "configure:3758: checking whether catgets can be used" >&5
++echo "configure:3768: checking whether catgets can be used" >&5
+ # Check whether --with-catgets or --without-catgets was given.
+ if test "${with_catgets+set}" = set; then
+ withval="$with_catgets"
+@@ -3763,7 +3777,7 @@ fi
+
+ if test "$nls_cv_use_catgets" = "yes"; then
+ echo $ac_n "checking for main in -li""... $ac_c" 1>&6
+-echo "configure:3771: checking for main in -li" >&5
++echo "configure:3781: checking for main in -li" >&5
+ ac_lib_var=`echo i'_'main | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -3771,14 +3785,14 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-li $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 3779 "configure"
++#line 3789 "configure"
+ #include "confdefs.h"
+
+ int main() {
+ main()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3786: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3796: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -3806,12 +3820,12 @@ else
+ fi
+
+ echo $ac_n "checking for catgets""... $ac_c" 1>&6
+-echo "configure:3814: checking for catgets" >&5
++echo "configure:3824: checking for catgets" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_catgets'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 3819 "configure"
++#line 3829 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char catgets(); below. */
+@@ -3834,7 +3848,7 @@ catgets();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:3842: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:3852: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_catgets=yes"
+ else
+@@ -3856,7 +3870,7 @@ EOF
+ # Extract the first word of "gencat", so it can be a program name with args.
+ set dummy gencat; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:3864: checking for $ac_word" >&5
++echo "configure:3874: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_GENCAT'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -3996,7 +4010,7 @@ EOF
+ LINGUAS=
+ else
+ echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6
+-echo "configure:4004: checking for catalogs to be installed" >&5
++echo "configure:4014: checking for catalogs to be installed" >&5
+ NEW_LINGUAS=
+ for lang in ${LINGUAS=$ALL_LINGUAS}; do
+ case "$ALL_LINGUAS" in
+@@ -4024,17 +4038,17 @@ echo "configure:4004: checking for catal
+ if test "$CATOBJEXT" = ".cat"; then
+ ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6
+-echo "configure:4032: checking for linux/version.h" >&5
++echo "configure:4042: checking for linux/version.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 4037 "configure"
++#line 4047 "configure"
+ #include "confdefs.h"
+ #include <linux/version.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:4042: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:4052: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -4106,7 +4120,7 @@ gtklocaledir='${prefix}/${DATADIRNAME}/l
+
+
+ echo $ac_n "checking for extra flags to get ANSI library prototypes""... $ac_c" 1>&6
+-echo "configure:4114: checking for extra flags to get ANSI library prototypes" >&5
++echo "configure:4124: checking for extra flags to get ANSI library prototypes" >&5
+
+ gtk_save_LIBS=$LIBS
+ LIBS="$LIBS -lm"
+@@ -4115,12 +4129,12 @@ if test "$cross_compiling" = yes; then
+
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 4123 "configure"
++#line 4133 "configure"
+ #include "confdefs.h"
+ #include <math.h>
+ int main (void) { return (log(1) != log(1.)); }
+ EOF
+-if { (eval echo configure:4128: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:4138: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ echo "$ac_t""none needed" 1>&6
+ else
+@@ -4134,12 +4148,12 @@ else
+
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 4142 "configure"
++#line 4152 "configure"
+ #include "confdefs.h"
+ #include <math.h>
+ int main (void) { return (log(1) != log(1.)); }
+ EOF
+-if { (eval echo configure:4147: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:4157: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ echo "$ac_t""-std1" 1>&6
+ else
+@@ -4160,16 +4174,16 @@ fi
+ LIBS=$gtk_save_LIBS
+
+ echo $ac_n "checking for extra flags for POSIX compliance""... $ac_c" 1>&6
+-echo "configure:4168: checking for extra flags for POSIX compliance" >&5
++echo "configure:4178: checking for extra flags for POSIX compliance" >&5
+ cat > conftest.$ac_ext <<EOF
+-#line 4170 "configure"
++#line 4180 "configure"
+ #include "confdefs.h"
+ #include <dirent.h>
+ int main() {
+ DIR *dir;
+ ; return 0; }
+ EOF
+-if { (eval echo configure:4177: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:4187: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ echo "$ac_t""none needed" 1>&6
+ else
+@@ -4179,14 +4193,14 @@ else
+ gtk_save_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS -posix"
+ cat > conftest.$ac_ext <<EOF
+-#line 4187 "configure"
++#line 4197 "configure"
+ #include "confdefs.h"
+ #include <dirent.h>
+ int main() {
+ DIR *dir;
+ ; return 0; }
+ EOF
+-if { (eval echo configure:4194: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:4204: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ echo "$ac_t""-posix" 1>&6
+ else
+@@ -4262,7 +4276,7 @@ fi
+ # Extract the first word of "glib-config", so it can be a program name with args.
+ set dummy glib-config; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:4270: checking for $ac_word" >&5
++echo "configure:4280: checking for $ac_word" >&5
+ if eval "test \"`echo '$''{'ac_cv_path_GLIB_CONFIG'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -4297,7 +4311,7 @@ fi
+
+ min_glib_version=1.2.8
+ echo $ac_n "checking for GLIB - version >= $min_glib_version""... $ac_c" 1>&6
+-echo "configure:4305: checking for GLIB - version >= $min_glib_version" >&5
++echo "configure:4315: checking for GLIB - version >= $min_glib_version" >&5
+ no_glib=""
+ if test "$GLIB_CONFIG" = "no" ; then
+ no_glib=yes
+@@ -4320,7 +4334,7 @@ echo "configure:4305: checking for GLIB
+ echo $ac_n "cross compiling; assumed OK... $ac_c"
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 4328 "configure"
++#line 4338 "configure"
+ #include "confdefs.h"
+
+ #include <glib.h>
+@@ -4396,7 +4410,7 @@ main ()
+ }
+
+ EOF
+-if { (eval echo configure:4404: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:4414: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ :
+ else
+@@ -4430,7 +4444,7 @@ fi
+ CFLAGS="$CFLAGS $GLIB_CFLAGS"
+ LIBS="$LIBS $GLIB_LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 4438 "configure"
++#line 4448 "configure"
+ #include "confdefs.h"
+
+ #include <glib.h>
+@@ -4440,7 +4454,7 @@ int main() {
+ return ((glib_major_version) || (glib_minor_version) || (glib_micro_version));
+ ; return 0; }
+ EOF
+-if { (eval echo configure:4448: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:4458: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ echo "*** The test program compiled, but did not run. This usually means"
+ echo "*** that the run-time linker is not finding GLIB or finding the wrong"
+@@ -4536,7 +4550,7 @@ fi
+ # Uses ac_ vars as temps to allow command line to override cache and checks.
+ # --without-x overrides everything else, but does not touch the cache.
+ echo $ac_n "checking for X""... $ac_c" 1>&6
+-echo "configure:4544: checking for X" >&5
++echo "configure:4554: checking for X" >&5
+
+ # Check whether --with-x or --without-x was given.
+ if test "${with_x+set}" = set; then
+@@ -4598,12 +4612,12 @@ if test "$ac_x_includes" = NO; then
+
+ # First, try using that file with no special directory specified.
+ cat > conftest.$ac_ext <<EOF
+-#line 4606 "configure"
++#line 4616 "configure"
+ #include "confdefs.h"
+ #include <$x_direct_test_include>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:4611: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:4621: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -4672,14 +4686,14 @@ if test "$ac_x_libraries" = NO; then
+ ac_save_LIBS="$LIBS"
+ LIBS="-l$x_direct_test_library $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 4680 "configure"
++#line 4690 "configure"
+ #include "confdefs.h"
+
+ int main() {
+ ${x_direct_test_function}()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:4687: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:4697: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ LIBS="$ac_save_LIBS"
+ # We can link X programs with no special library path.
+@@ -4785,17 +4799,17 @@ else
+ case "`(uname -sr) 2>/dev/null`" in
+ "SunOS 5"*)
+ echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6
+-echo "configure:4793: checking whether -R must be followed by a space" >&5
++echo "configure:4803: checking whether -R must be followed by a space" >&5
+ ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries"
+ cat > conftest.$ac_ext <<EOF
+-#line 4796 "configure"
++#line 4806 "configure"
+ #include "confdefs.h"
+
+ int main() {
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:4803: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:4813: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ ac_R_nospace=yes
+ else
+@@ -4811,14 +4825,14 @@ rm -f conftest*
+ else
+ LIBS="$ac_xsave_LIBS -R $x_libraries"
+ cat > conftest.$ac_ext <<EOF
+-#line 4819 "configure"
++#line 4829 "configure"
+ #include "confdefs.h"
+
+ int main() {
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:4826: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:4836: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ ac_R_space=yes
+ else
+@@ -4850,7 +4864,7 @@ rm -f conftest*
+ # libraries were built with DECnet support. And karl@cs.umb.edu says
+ # the Alpha needs dnet_stub (dnet does not exist).
+ echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6
+-echo "configure:4858: checking for dnet_ntoa in -ldnet" >&5
++echo "configure:4868: checking for dnet_ntoa in -ldnet" >&5
+ ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -4858,7 +4872,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-ldnet $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 4866 "configure"
++#line 4876 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -4869,7 +4883,7 @@ int main() {
+ dnet_ntoa()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:4877: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:4887: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -4891,7 +4905,7 @@ fi
+
+ if test $ac_cv_lib_dnet_dnet_ntoa = no; then
+ echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6
+-echo "configure:4899: checking for dnet_ntoa in -ldnet_stub" >&5
++echo "configure:4909: checking for dnet_ntoa in -ldnet_stub" >&5
+ ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -4899,7 +4913,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-ldnet_stub $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 4907 "configure"
++#line 4917 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -4910,7 +4924,7 @@ int main() {
+ dnet_ntoa()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:4918: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:4928: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -4939,12 +4953,12 @@ fi
+ # The nsl library prevents programs from opening the X display
+ # on Irix 5.2, according to dickey@clark.net.
+ echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
+-echo "configure:4947: checking for gethostbyname" >&5
++echo "configure:4957: checking for gethostbyname" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 4952 "configure"
++#line 4962 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char gethostbyname(); below. */
+@@ -4967,7 +4981,7 @@ gethostbyname();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:4975: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:4985: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_gethostbyname=yes"
+ else
+@@ -4988,7 +5002,7 @@ fi
+
+ if test $ac_cv_func_gethostbyname = no; then
+ echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
+-echo "configure:4996: checking for gethostbyname in -lnsl" >&5
++echo "configure:5006: checking for gethostbyname in -lnsl" >&5
+ ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -4996,7 +5010,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lnsl $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5004 "configure"
++#line 5014 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5007,7 +5021,7 @@ int main() {
+ gethostbyname()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5015: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5025: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5037,12 +5051,12 @@ fi
+ # -lsocket must be given before -lnsl if both are needed.
+ # We assume that if connect needs -lnsl, so does gethostbyname.
+ echo $ac_n "checking for connect""... $ac_c" 1>&6
+-echo "configure:5045: checking for connect" >&5
++echo "configure:5055: checking for connect" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5050 "configure"
++#line 5060 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char connect(); below. */
+@@ -5065,7 +5079,7 @@ connect();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5073: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5083: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_connect=yes"
+ else
+@@ -5086,7 +5100,7 @@ fi
+
+ if test $ac_cv_func_connect = no; then
+ echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6
+-echo "configure:5094: checking for connect in -lsocket" >&5
++echo "configure:5104: checking for connect in -lsocket" >&5
+ ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5094,7 +5108,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5102 "configure"
++#line 5112 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5105,7 +5119,7 @@ int main() {
+ connect()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5113: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5123: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5129,12 +5143,12 @@ fi
+
+ # gomez@mi.uni-erlangen.de says -lposix is necessary on A/UX.
+ echo $ac_n "checking for remove""... $ac_c" 1>&6
+-echo "configure:5137: checking for remove" >&5
++echo "configure:5147: checking for remove" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5142 "configure"
++#line 5152 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char remove(); below. */
+@@ -5157,7 +5171,7 @@ remove();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5175: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_remove=yes"
+ else
+@@ -5178,7 +5192,7 @@ fi
+
+ if test $ac_cv_func_remove = no; then
+ echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6
+-echo "configure:5186: checking for remove in -lposix" >&5
++echo "configure:5196: checking for remove in -lposix" >&5
+ ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5186,7 +5200,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lposix $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5194 "configure"
++#line 5204 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5197,7 +5211,7 @@ int main() {
+ remove()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5205: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5215: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5221,12 +5235,12 @@ fi
+
+ # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
+ echo $ac_n "checking for shmat""... $ac_c" 1>&6
+-echo "configure:5229: checking for shmat" >&5
++echo "configure:5239: checking for shmat" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5234 "configure"
++#line 5244 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char shmat(); below. */
+@@ -5249,7 +5263,7 @@ shmat();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5257: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5267: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_shmat=yes"
+ else
+@@ -5270,7 +5284,7 @@ fi
+
+ if test $ac_cv_func_shmat = no; then
+ echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6
+-echo "configure:5278: checking for shmat in -lipc" >&5
++echo "configure:5288: checking for shmat in -lipc" >&5
+ ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5278,7 +5292,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lipc $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5286 "configure"
++#line 5296 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5289,7 +5303,7 @@ int main() {
+ shmat()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5297: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5307: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5322,7 +5336,7 @@ fi
+ # libraries we check for below, so use a different variable.
+ # --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
+ echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6
+-echo "configure:5330: checking for IceConnectionNumber in -lICE" >&5
++echo "configure:5340: checking for IceConnectionNumber in -lICE" >&5
+ ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5330,7 +5344,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lICE $X_EXTRA_LIBS $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5338 "configure"
++#line 5348 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5341,7 +5355,7 @@ int main() {
+ IceConnectionNumber()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5349: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5359: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5385,7 +5399,7 @@ fi
+ # Checks for libraries.
+ # Check for the X11 library
+ echo $ac_n "checking for XOpenDisplay in -lX11""... $ac_c" 1>&6
+-echo "configure:5393: checking for XOpenDisplay in -lX11" >&5
++echo "configure:5403: checking for XOpenDisplay in -lX11" >&5
+ ac_lib_var=`echo X11'_'XOpenDisplay | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5393,7 +5407,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lX11 $X_EXTRA_LIBS $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5401 "configure"
++#line 5411 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5404,7 +5418,7 @@ int main() {
+ XOpenDisplay()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5412: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5422: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5429,7 +5443,7 @@ fi
+ if test "x$enable_shm" = "xyes"; then
+ # Check for the Xext library (needed for XShm extention)
+ echo $ac_n "checking for XShmAttach in -lXext""... $ac_c" 1>&6
+-echo "configure:5437: checking for XShmAttach in -lXext" >&5
++echo "configure:5447: checking for XShmAttach in -lXext" >&5
+ ac_lib_var=`echo Xext'_'XShmAttach | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5437,7 +5451,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lXext $x_libs $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5445 "configure"
++#line 5455 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5448,7 +5462,7 @@ int main() {
+ XShmAttach()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5456: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5466: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5468,7 +5482,7 @@ else
+ echo "$ac_t""no" 1>&6
+ # On AIX, it is in XextSam instead, but we still need -lXext
+ echo $ac_n "checking for XShmAttach in -lXextSam""... $ac_c" 1>&6
+-echo "configure:5476: checking for XShmAttach in -lXextSam" >&5
++echo "configure:5486: checking for XShmAttach in -lXextSam" >&5
+ ac_lib_var=`echo XextSam'_'XShmAttach | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5476,7 +5490,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lXextSam $x_libs $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5484 "configure"
++#line 5494 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5487,7 +5501,7 @@ int main() {
+ XShmAttach()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5495: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5505: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5515,7 +5529,7 @@ fi
+ # Check for shaped window extension
+
+ echo $ac_n "checking for XShapeCombineMask in -lXext""... $ac_c" 1>&6
+-echo "configure:5523: checking for XShapeCombineMask in -lXext" >&5
++echo "configure:5533: checking for XShapeCombineMask in -lXext" >&5
+ ac_lib_var=`echo Xext'_'XShapeCombineMask | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5523,7 +5537,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lXext $x_libs $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5531 "configure"
++#line 5541 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5534,7 +5548,7 @@ int main() {
+ XShapeCombineMask()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5542: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5552: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5564,7 +5578,7 @@ fi
+ # Check for XConvertCase (X11R6 specific)
+
+ echo $ac_n "checking for XConvertCase in -lX11""... $ac_c" 1>&6
+-echo "configure:5572: checking for XConvertCase in -lX11" >&5
++echo "configure:5582: checking for XConvertCase in -lX11" >&5
+ ac_lib_var=`echo X11'_'XConvertCase | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5572,7 +5586,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lX11 $x_libs $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5580 "configure"
++#line 5590 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5583,7 +5597,7 @@ int main() {
+ XConvertCase()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5591: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5601: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5610,7 +5624,7 @@ fi
+ # Check for XIM support.
+
+ echo $ac_n "checking for XUnregisterIMInstantiateCallback in -lX11""... $ac_c" 1>&6
+-echo "configure:5618: checking for XUnregisterIMInstantiateCallback in -lX11" >&5
++echo "configure:5628: checking for XUnregisterIMInstantiateCallback in -lX11" >&5
+ ac_lib_var=`echo X11'_'XUnregisterIMInstantiateCallback | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -5618,7 +5632,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lX11 $x_libs $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 5626 "configure"
++#line 5636 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -5629,7 +5643,7 @@ int main() {
+ XUnregisterIMInstantiateCallback()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5637: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:5647: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -5717,17 +5731,17 @@ if test "x$enable_shm" = "xyes"; then
+ # Check for shared memory
+ ac_safe=`echo "sys/ipc.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for sys/ipc.h""... $ac_c" 1>&6
+-echo "configure:5725: checking for sys/ipc.h" >&5
++echo "configure:5735: checking for sys/ipc.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5730 "configure"
++#line 5740 "configure"
+ #include "confdefs.h"
+ #include <sys/ipc.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:5735: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:5745: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -5754,17 +5768,17 @@ fi
+
+ ac_safe=`echo "sys/shm.h" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for sys/shm.h""... $ac_c" 1>&6
+-echo "configure:5762: checking for sys/shm.h" >&5
++echo "configure:5772: checking for sys/shm.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5767 "configure"
++#line 5777 "configure"
+ #include "confdefs.h"
+ #include <sys/shm.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:5772: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:5782: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -5792,7 +5806,7 @@ fi
+
+ # Check for the X shared memory extension header file
+ echo $ac_n "checking X11/extensions/XShm.h""... $ac_c" 1>&6
+-echo "configure:5800: checking X11/extensions/XShm.h" >&5
++echo "configure:5810: checking X11/extensions/XShm.h" >&5
+ if test "x$no_xext_lib" = "xyes"; then
+ echo "$ac_t""no" 1>&6
+ no_xshm=yes
+@@ -5813,13 +5827,13 @@ fi
+ # Check if X_LOCALE definition is necessary
+
+ echo $ac_n "checking need -DX_LOCALE""... $ac_c" 1>&6
+-echo "configure:5821: checking need -DX_LOCALE" >&5
++echo "configure:5831: checking need -DX_LOCALE" >&5
+
+ if test "$cross_compiling" = yes; then
+ need_x_locale=no
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5827 "configure"
++#line 5837 "configure"
+ #include "confdefs.h"
+
+ #include <stdio.h>
+@@ -5831,7 +5845,7 @@ main ()
+ return setlocale (LC_ALL, "${with_locale}") == NULL;
+ }
+ EOF
+-if { (eval echo configure:5839: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:5849: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ need_x_locale=no
+ else
+@@ -5851,10 +5865,10 @@ if test $need_x_locale = yes; then
+ else
+ if test x$with_native_locale = xyes ; then
+ echo $ac_n "checking functioning locale support""... $ac_c" 1>&6
+-echo "configure:5859: checking functioning locale support" >&5
++echo "configure:5869: checking functioning locale support" >&5
+
+ cat > conftest.$ac_ext <<EOF
+-#line 5862 "configure"
++#line 5872 "configure"
+ #include "confdefs.h"
+ #include <stdlib.h>
+ int main() {
+@@ -5866,7 +5880,7 @@ int main() {
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:5874: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:5884: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ use_native_locale=yes
+ else
+@@ -5881,13 +5895,13 @@ fi
+
+ if test x$use_native_locale = xyes ; then
+ echo $ac_n "checking if sizeof(wchar_t) == 4""... $ac_c" 1>&6
+-echo "configure:5889: checking if sizeof(wchar_t) == 4" >&5
++echo "configure:5899: checking if sizeof(wchar_t) == 4" >&5
+
+ if test "$cross_compiling" = yes; then
+ :
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5895 "configure"
++#line 5905 "configure"
+ #include "confdefs.h"
+
+ #include <stdlib.h>
+@@ -5898,7 +5912,7 @@ else
+ return (sizeof(wchar_t) == 4) ? 0 : 1;
+ }
+ EOF
+-if { (eval echo configure:5906: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:5916: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ :
+ else
+@@ -5922,12 +5936,12 @@ fi
+
+ # Checks for header files.
+ echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
+-echo "configure:5930: checking for ANSI C header files" >&5
++echo "configure:5940: checking for ANSI C header files" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5935 "configure"
++#line 5945 "configure"
+ #include "confdefs.h"
+ #include <stdlib.h>
+ #include <stdarg.h>
+@@ -5935,7 +5949,7 @@ else
+ #include <float.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:5943: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:5953: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -5952,7 +5966,7 @@ rm -f conftest*
+ if test $ac_cv_header_stdc = yes; then
+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+ cat > conftest.$ac_ext <<EOF
+-#line 5960 "configure"
++#line 5970 "configure"
+ #include "confdefs.h"
+ #include <string.h>
+ EOF
+@@ -5970,7 +5984,7 @@ 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 <<EOF
+-#line 5978 "configure"
++#line 5988 "configure"
+ #include "confdefs.h"
+ #include <stdlib.h>
+ EOF
+@@ -5991,7 +6005,7 @@ if test "$cross_compiling" = yes; then
+ :
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 5999 "configure"
++#line 6009 "configure"
+ #include "confdefs.h"
+ #include <ctype.h>
+ #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+@@ -6002,7 +6016,7 @@ if (XOR (islower (i), ISLOWER (i)) || to
+ exit (0); }
+
+ EOF
+-if { (eval echo configure:6010: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:6020: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ :
+ else
+@@ -6028,12 +6042,12 @@ fi
+
+ # Checks for typedefs, structures, and compiler characteristics.
+ echo $ac_n "checking for working const""... $ac_c" 1>&6
+-echo "configure:6036: checking for working const" >&5
++echo "configure:6046: checking for working const" >&5
+ if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6041 "configure"
++#line 6051 "configure"
+ #include "confdefs.h"
+
+ int main() {
+@@ -6082,7 +6096,7 @@ ccp = (char const *const *) p;
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6090: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:6100: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_c_const=yes
+ else
+@@ -6105,12 +6119,12 @@ fi
+
+ # Checks for library functions.
+ echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
+-echo "configure:6113: checking return type of signal handlers" >&5
++echo "configure:6123: checking return type of signal handlers" >&5
+ if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6118 "configure"
++#line 6128 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ #include <signal.h>
+@@ -6127,7 +6141,7 @@ int main() {
+ int i;
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6135: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:6145: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_type_signal=void
+ else
+@@ -6145,21 +6159,21 @@ cat >> confdefs.h <<EOF
+ EOF
+
+
+-for ac_hdr in unistd.h
++for ac_hdr in stdlib.h unistd.h sys/stat.h sys/types.h
+ do
+ ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+ echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+-echo "configure:6157: checking for $ac_hdr" >&5
++echo "configure:6167: checking for $ac_hdr" >&5
+ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6162 "configure"
++#line 6172 "configure"
+ #include "confdefs.h"
+ #include <$ac_hdr>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:6167: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:6177: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -6188,12 +6202,12 @@ done
+ for ac_func in getpagesize
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:6196: checking for $ac_func" >&5
++echo "configure:6206: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6201 "configure"
++#line 6211 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -6216,7 +6230,7 @@ $ac_func();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6224: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6234: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -6241,7 +6255,7 @@ fi
+ done
+
+ echo $ac_n "checking for working mmap""... $ac_c" 1>&6
+-echo "configure:6249: checking for working mmap" >&5
++echo "configure:6259: checking for working mmap" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+@@ -6249,7 +6263,7 @@ else
+ ac_cv_func_mmap_fixed_mapped=no
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6257 "configure"
++#line 6267 "configure"
+ #include "confdefs.h"
+
+ /* Thanks to Mike Haertel and Jim Avera for this test.
+@@ -6277,11 +6291,24 @@ else
+ #include <fcntl.h>
+ #include <sys/mman.h>
+
++#if HAVE_SYS_TYPES_H
++# include <sys/types.h>
++#endif
++
++#if HAVE_STDLIB_H
++# include <stdlib.h>
++#endif
++
++#if HAVE_SYS_STAT_H
++# include <sys/stat.h>
++#endif
++
++#if HAVE_UNISTD_H
++# include <unistd.h>
++#endif
++
+ /* This mess was copied from the GNU getpagesize.h. */
+ #ifndef HAVE_GETPAGESIZE
+-# ifdef HAVE_UNISTD_H
+-# include <unistd.h>
+-# endif
+
+ /* Assume that all systems that can run configure have sys/param.h. */
+ # ifndef HAVE_SYS_PARAM_H
+@@ -6389,7 +6416,7 @@ main()
+ }
+
+ EOF
+-if { (eval echo configure:6397: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
++if { (eval echo configure:6420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+ then
+ ac_cv_func_mmap_fixed_mapped=yes
+ else
+@@ -6415,12 +6442,12 @@ fi
+ for ac_func in getresuid
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:6423: checking for $ac_func" >&5
++echo "configure:6446: checking for $ac_func" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6428 "configure"
++#line 6451 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+@@ -6443,7 +6470,7 @@ $ac_func();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6451: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6474: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+ else
+@@ -6468,12 +6495,12 @@ fi
+ done
+
+ echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
+-echo "configure:6476: checking for uid_t in sys/types.h" >&5
++echo "configure:6499: checking for uid_t in sys/types.h" >&5
+ if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6481 "configure"
++#line 6504 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ EOF
+@@ -6504,16 +6531,16 @@ fi
+
+ # Check if <sys/select.h> needs to be included for fd_set
+ echo $ac_n "checking for fd_set""... $ac_c" 1>&6
+-echo "configure:6512: checking for fd_set" >&5
++echo "configure:6535: checking for fd_set" >&5
+ cat > conftest.$ac_ext <<EOF
+-#line 6514 "configure"
++#line 6537 "configure"
+ #include "confdefs.h"
+ #include <sys/types.h>
+ int main() {
+ fd_set readMask, writeMask;
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6521: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:6544: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ gtk_ok=yes
+ else
+@@ -6527,7 +6554,7 @@ if test $gtk_ok = yes; then
+ echo "$ac_t""yes, found in sys/types.h" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6535 "configure"
++#line 6558 "configure"
+ #include "confdefs.h"
+ #include <sys/select.h>
+ EOF
+@@ -6556,14 +6583,14 @@ fi
+ # Duplicate `widechar' tests from `glib'.
+ # Check for wchar.h
+ echo $ac_n "checking for wchar.h""... $ac_c" 1>&6
+-echo "configure:6564: checking for wchar.h" >&5
++echo "configure:6587: checking for wchar.h" >&5
+ cat > conftest.$ac_ext <<EOF
+-#line 6566 "configure"
++#line 6589 "configure"
+ #include "confdefs.h"
+ #include <wchar.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:6571: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:6594: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -6586,14 +6613,14 @@ echo "$ac_t""$gtk_ok" 1>&6
+
+ # Check for wctype.h (for iswalnum)
+ echo $ac_n "checking for wctype.h""... $ac_c" 1>&6
+-echo "configure:6594: checking for wctype.h" >&5
++echo "configure:6617: checking for wctype.h" >&5
+ cat > conftest.$ac_ext <<EOF
+-#line 6596 "configure"
++#line 6619 "configure"
+ #include "confdefs.h"
+ #include <wctype.h>
+ EOF
+ ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:6601: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
++{ (eval echo configure:6624: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+ if test -z "$ac_err"; then
+ rm -rf conftest*
+@@ -6617,12 +6644,12 @@ echo "$ac_t""$gtk_ok" 1>&6
+ # in Solaris 2.5, `iswalnum' is in -lw
+ GDK_WLIBS=
+ echo $ac_n "checking for iswalnum""... $ac_c" 1>&6
+-echo "configure:6625: checking for iswalnum" >&5
++echo "configure:6648: checking for iswalnum" >&5
+ if eval "test \"`echo '$''{'ac_cv_func_iswalnum'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+ else
+ cat > conftest.$ac_ext <<EOF
+-#line 6630 "configure"
++#line 6653 "configure"
+ #include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char iswalnum(); below. */
+@@ -6645,7 +6672,7 @@ iswalnum();
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6653: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6676: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_iswalnum=yes"
+ else
+@@ -6663,7 +6690,7 @@ if eval "test \"`echo '$ac_cv_func_'iswa
+ else
+ echo "$ac_t""no" 1>&6
+ echo $ac_n "checking for iswalnum in -lw""... $ac_c" 1>&6
+-echo "configure:6671: checking for iswalnum in -lw" >&5
++echo "configure:6694: checking for iswalnum in -lw" >&5
+ ac_lib_var=`echo w'_'iswalnum | sed 'y%./+-%__p_%'`
+ if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+@@ -6671,7 +6698,7 @@ else
+ ac_save_LIBS="$LIBS"
+ LIBS="-lw $LIBS"
+ cat > conftest.$ac_ext <<EOF
+-#line 6679 "configure"
++#line 6702 "configure"
+ #include "confdefs.h"
+ /* Override any gcc2 internal prototype to avoid an error. */
+ /* We use char because int might match the return type of a gcc2
+@@ -6682,7 +6709,7 @@ int main() {
+ iswalnum()
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6690: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6713: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+ else
+@@ -6709,9 +6736,9 @@ fi
+ oLIBS="$LIBS"
+ LIBS="$LIBS $GDK_WLIBS"
+ echo $ac_n "checking if iswalnum() and friends are properly defined""... $ac_c" 1>&6
+-echo "configure:6717: checking if iswalnum() and friends are properly defined" >&5
++echo "configure:6740: checking if iswalnum() and friends are properly defined" >&5
+ cat > conftest.$ac_ext <<EOF
+-#line 6719 "configure"
++#line 6742 "configure"
+ #include "confdefs.h"
+ #include <stdlib.h>
+ int main() {
+@@ -6731,7 +6758,7 @@ iswalnum((wchar_t) 0);
+
+ ; return 0; }
+ EOF
+-if { (eval echo configure:6739: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
++if { (eval echo configure:6762: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ gtk_ok=yes
+ else
diff --git a/source/l/gtk+/gtk+-1.2.10-bellvolume.patch b/source/l/gtk+/gtk+-1.2.10-bellvolume.patch
new file mode 100644
index 000000000..c64293c25
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-bellvolume.patch
@@ -0,0 +1,11 @@
+--- gtk+-1.2.10/gdk/gdk.c.bellvolume Wed Jan 15 12:32:25 2003
++++ gtk+-1.2.10/gdk/gdk.c Wed Jan 15 12:32:28 2003
+@@ -989,7 +989,7 @@
+ void
+ gdk_beep (void)
+ {
+- XBell(gdk_display, 100);
++ XBell(gdk_display, 0);
+ }
+
+ /*
diff --git a/source/l/gtk+/gtk+-1.2.10-clistfocusrow.patch b/source/l/gtk+/gtk+-1.2.10-clistfocusrow.patch
new file mode 100644
index 000000000..afae023ab
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-clistfocusrow.patch
@@ -0,0 +1,30 @@
+Index: gtk/gtkclist.c
+===================================================================
+RCS file: /cvs/gnome/gtk+/gtk/gtkclist.c,v
+retrieving revision 1.156.2.25
+retrieving revision 1.156.2.26
+diff -u -p -r1.156.2.25 -r1.156.2.26
+--- gtk/gtkclist.c 1 Mar 2001 00:18:20 -0000 1.156.2.25
++++ gtk/gtkclist.c 14 Dec 2002 04:17:03 -0000 1.156.2.26
+@@ -2800,10 +2800,6 @@ real_remove_row (GtkCList *clist,
+ clist->row_list_end = g_list_previous (list);
+ g_list_remove (list, clist_row);
+
+- /*if (clist->focus_row >=0 &&
+- (row <= clist->focus_row || clist->focus_row >= clist->rows))
+- clist->focus_row--;*/
+-
+ if (row < ROW_FROM_YPIXEL (clist, 0))
+ clist->voffset += clist->row_height + CELL_SPACING;
+
+@@ -4331,7 +4327,9 @@ sync_selection (GtkCList *clist,
+ clist->focus_row += d;
+ if (clist->focus_row == -1 && clist->rows >= 1)
+ clist->focus_row = 0;
+- else if (clist->focus_row >= clist->rows)
++ else if (d < 0 && clist->focus_row >= clist->rows - 1)
++ clist->focus_row = clist->rows - 2;
++ else if (clist->focus_row >= clist->rows) /* Paranoia */
+ clist->focus_row = clist->rows - 1;
+ }
+
diff --git a/source/l/gtk+/gtk+-1.2.10-ctext.patch b/source/l/gtk+/gtk+-1.2.10-ctext.patch
new file mode 100644
index 000000000..28fca0cdf
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-ctext.patch
@@ -0,0 +1,140 @@
+--- gtk+-1.2.10/gdk/gdkselection.c.ctext Thu Jul 5 12:41:42 2001
++++ gtk+-1.2.10/gdk/gdkselection.c Thu Jul 5 12:45:25 2001
+@@ -191,73 +191,6 @@
+ gdk_send_xevent (requestor, False, NoEventMask, (XEvent*) &xevent);
+ }
+
+-
+-/* The output of XmbTextPropertyToTextList may include stuff not valid
+- * for COMPOUND_TEXT. This routine tries to correct this by:
+- *
+- * a) Canonicalizing CR LF and CR to LF
+- * b) Stripping out all other non-allowed control characters
+- *
+- * See the COMPOUND_TEXT spec distributed with X for explanations
+- * what is allowed.
+- */
+-static gchar *
+-sanitize_ctext (const char *str,
+- gint *length)
+-{
+- gchar *result = g_malloc (*length + 1);
+- gint out_length = 0;
+- gint i;
+- const guchar *ustr = (const guchar *)str;
+-
+- for (i=0; i < *length; i++)
+- {
+- guchar c = ustr[i];
+-
+- if (c == '\r')
+- {
+- result[out_length++] = '\n';
+- if (i + 1 < *length && ustr[i + 1] == '\n')
+- i++;
+- }
+- else if (c == 27 /* ESC */)
+- {
+- /* Check for "extended segments, which can contain arbitrary
+- * octets. See CTEXT spec, section 6.
+- */
+-
+- if (i + 5 < *length &&
+- ustr[i + 1] == '%' &&
+- ustr[i + 2] == '/' &&
+- (ustr[i + 3] >= 48 && ustr[i + 3] <= 52) &&
+- ustr[i + 4] >= 128 &&
+- ustr[i + 5] >= 128)
+- {
+- int extra_len = 6 + (ustr[i + 4] - 128) * 128 + ustr[i + 5] - 128;
+- extra_len = MAX (extra_len, *length - i);
+-
+- memcpy (result + out_length, ustr + i, extra_len);
+- out_length += extra_len;
+- i += extra_len - 1;
+- }
+- else
+- result[out_length++] = c;
+- }
+- else if (c == '\n' || c == '\t' || c == 27 /* ESC */ ||
+- (c >= 32 && c <= 127) || /* GL */
+- c == 155 /* CONTROL SEQUENCE INTRODUCER */ ||
+- (c >= 160 && c <= 255)) /* GR */
+- {
+- result[out_length++] = c;
+- }
+- }
+-
+- result[out_length] = '\0';
+- *length = out_length;
+-
+- return result;
+-}
+-
+ gint
+ gdk_text_property_to_text_list (GdkAtom encoding, gint format,
+ guchar *text, gint length,
+@@ -266,32 +199,16 @@
+ XTextProperty property;
+ gint count = 0;
+ gint res;
+- gchar *sanitized_text = NULL;
+
+ if (!list)
+ return 0;
+
+ property.encoding = encoding;
+ property.format = format;
+-
+- if (encoding == gdk_atom_intern ("COMPOUND_TEXT", FALSE) && format == 8)
+- {
+- gint sanitized_text_length = length;
+-
+- property.value = sanitized_text = sanitize_ctext (text, &sanitized_text_length);
+- property.nitems = sanitized_text_length;
+- }
+- else
+- {
+- property.value = text;
+- property.nitems = length;
+- }
+-
++ property.value = text;
++ property.nitems = length;
+ res = XmbTextPropertyToTextList (GDK_DISPLAY(), &property, list, &count);
+
+- if (sanitized_text)
+- g_free (sanitized_text);
+-
+ if (res == XNoMemory || res == XLocaleNotSupported ||
+ res == XConverterNotFound)
+ return 0;
+@@ -314,8 +231,6 @@
+ {
+ gint res;
+ XTextProperty property;
+- gint sanitized_text_length;
+- gchar *sanitized_text;
+
+ res = XmbTextListToTextProperty (GDK_DISPLAY(),
+ (char **)&str, 1, XCompoundTextStyle,
+@@ -334,17 +249,10 @@
+ *encoding = property.encoding;
+ if (format)
+ *format = property.format;
+-
+- sanitized_text_length = property.nitems;
+- sanitized_text = sanitize_ctext (property.value, &sanitized_text_length);
+-
+ if (ctext)
+- *ctext = sanitized_text;
+- else
+- g_free (sanitized_text);
+-
++ *ctext = g_strdup (property.value);
+ if (length)
+- *length = sanitized_text_length;
++ *length = property.nitems;
+
+ if (property.value)
+ XFree (property.value);
diff --git a/source/l/gtk+/gtk+-1.2.10-deletedir.patch b/source/l/gtk+/gtk+-1.2.10-deletedir.patch
new file mode 100644
index 000000000..7a1151c96
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-deletedir.patch
@@ -0,0 +1,188 @@
+--- gtk+-1.2.10/gtk/gtkfilesel.c.deletedir Thu Feb 15 23:36:19 2001
++++ gtk+-1.2.10/gtk/gtkfilesel.c Wed Apr 17 20:36:25 2002
+@@ -325,7 +325,8 @@
+
+ static void gtk_file_selection_populate (GtkFileSelection *fs,
+ gchar *rel_path,
+- gint try_complete);
++ gboolean try_complete,
++ gboolean reset_entry);
+ static void gtk_file_selection_abort (GtkFileSelection *fs);
+
+ static void gtk_file_selection_update_history_menu (GtkFileSelection *fs,
+@@ -522,7 +523,7 @@
+ }
+ else
+ {
+- gtk_file_selection_populate (filesel, "", FALSE);
++ gtk_file_selection_populate (filesel, "", FALSE, TRUE);
+ }
+
+ gtk_widget_grab_focus (filesel->selection_entry);
+@@ -637,7 +638,7 @@
+ name = last_slash + 1;
+ }
+
+- gtk_file_selection_populate (filesel, buf, FALSE);
++ gtk_file_selection_populate (filesel, buf, FALSE, TRUE);
+
+ if (filesel->selection_entry)
+ gtk_entry_set_text (GTK_ENTRY (filesel->selection_entry), name);
+@@ -673,7 +674,7 @@
+
+ if (filesel->selection_entry)
+ gtk_entry_set_text (GTK_ENTRY (filesel->selection_entry), pattern);
+- gtk_file_selection_populate (filesel, (gchar*) pattern, TRUE);
++ gtk_file_selection_populate (filesel, (gchar*) pattern, TRUE, TRUE);
+ }
+
+ static void
+@@ -806,7 +807,7 @@
+ g_free (full_path);
+
+ gtk_widget_destroy (fs->fileop_dialog);
+- gtk_file_selection_populate (fs, "", FALSE);
++ gtk_file_selection_populate (fs, "", FALSE, FALSE);
+ }
+
+ static void
+@@ -903,7 +904,7 @@
+ g_free (full_path);
+
+ gtk_widget_destroy (fs->fileop_dialog);
+- gtk_file_selection_populate (fs, "", FALSE);
++ gtk_file_selection_populate (fs, "", FALSE, TRUE);
+ }
+
+ static void
+@@ -1009,8 +1010,9 @@
+ g_free (new_filename);
+ g_free (old_filename);
+
++ gtk_file_selection_populate (fs, "", FALSE, FALSE);
++ gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), file);
+ gtk_widget_destroy (fs->fileop_dialog);
+- gtk_file_selection_populate (fs, "", FALSE);
+ }
+
+ static void
+@@ -1112,7 +1114,7 @@
+
+ text = g_strdup (text);
+
+- gtk_file_selection_populate (fs, text, TRUE);
++ gtk_file_selection_populate (fs, text, TRUE, TRUE);
+
+ g_free (text);
+
+@@ -1124,7 +1126,6 @@
+ return FALSE;
+ }
+
+-
+ static void
+ gtk_file_selection_history_callback (GtkWidget *widget, gpointer data)
+ {
+@@ -1142,7 +1143,7 @@
+
+ if (callback_arg->menu_item == widget)
+ {
+- gtk_file_selection_populate (fs, callback_arg->directory, FALSE);
++ gtk_file_selection_populate (fs, callback_arg->directory, FALSE, FALSE);
+ break;
+ }
+
+@@ -1272,7 +1273,7 @@
+ gpointer user_data)
+ {
+ GtkFileSelection *fs = NULL;
+- gchar *filename, *temp = NULL;
++ gchar *filename = NULL;
+
+ g_return_if_fail (GTK_IS_CLIST (widget));
+
+@@ -1280,39 +1281,23 @@
+ g_return_if_fail (fs != NULL);
+ g_return_if_fail (GTK_IS_FILE_SELECTION (fs));
+
+- gtk_clist_get_text (GTK_CLIST (fs->dir_list), row, 0, &temp);
+- filename = g_strdup (temp);
+-
+- if (filename)
+- {
+- if (bevent)
+- switch (bevent->type)
+- {
+- case GDK_2BUTTON_PRESS:
+- gtk_file_selection_populate (fs, filename, FALSE);
+- break;
+-
+- default:
+- gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename);
+- break;
+- }
+- else
+- gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename);
+-
+- g_free (filename);
+- }
++ gtk_clist_get_text (GTK_CLIST (fs->dir_list), row, 0, &filename);
++
++ if (filename && bevent && bevent->type == GDK_2BUTTON_PRESS)
++ gtk_file_selection_populate (fs, filename, FALSE, FALSE);
+ }
+
+ static void
+ gtk_file_selection_populate (GtkFileSelection *fs,
+ gchar *rel_path,
+- gint try_complete)
++ gboolean try_complete,
++ gboolean reset_entry)
+ {
+ CompletionState *cmpl_state;
+ PossibleCompletion* poss;
+ gchar* filename;
+ gint row;
+- gchar* rem_path = rel_path;
++ gchar* rem_path;
+ gchar* sel_text;
+ gchar* text[2];
+ gint did_recurse = FALSE;
+@@ -1323,6 +1308,8 @@
+
+ g_return_if_fail (fs != NULL);
+ g_return_if_fail (GTK_IS_FILE_SELECTION (fs));
++
++ rem_path = rel_path = g_strdup (rel_path);
+
+ cmpl_state = (CompletionState*) fs->cmpl_state;
+ poss = cmpl_completion_matches (rel_path, &rem_path, cmpl_state);
+@@ -1422,7 +1409,7 @@
+
+ did_recurse = TRUE;
+
+- gtk_file_selection_populate (fs, dir_name, TRUE);
++ gtk_file_selection_populate (fs, dir_name, TRUE, TRUE);
+
+ g_free (dir_name);
+ }
+@@ -1441,7 +1428,7 @@
+ gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), rem_path);
+ }
+ }
+- else
++ else if (reset_entry)
+ {
+ if (fs->selection_entry)
+ gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), "");
+@@ -1466,8 +1453,9 @@
+ {
+ gtk_file_selection_update_history_menu (fs, cmpl_reference_position (cmpl_state));
+ }
+-
+ }
++
++ g_free (rel_path);
+ }
+
+ static void
diff --git a/source/l/gtk+/gtk+-1.2.10-dndorder.patch b/source/l/gtk+/gtk+-1.2.10-dndorder.patch
new file mode 100644
index 000000000..58a9c9219
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-dndorder.patch
@@ -0,0 +1,30 @@
+Index: gdk/gdkdnd.c
+===================================================================
+RCS file: /cvs/gnome/gtk+/gdk/gdkdnd.c,v
+retrieving revision 1.25.2.7
+retrieving revision 1.25.2.9
+diff -u -p -r1.25.2.7 -r1.25.2.9
+--- gdk/gdkdnd.c 13 Mar 2000 23:41:53 -0000 1.25.2.7
++++ gdk/gdkdnd.c 14 May 2002 22:14:15 -0000 1.25.2.9
+@@ -275,12 +275,16 @@ gdk_window_cache_filter (GdkXEvent *xev,
+ GUINT_TO_POINTER (xce->above));
+ if (above_node && node->prev != above_node)
+ {
++ /* Put the window above (before in the list) above_node
++ */
+ cache->children = g_list_remove_link (cache->children, node);
+- node->next = above_node->next;
+- if (node->next)
+- node->next->prev = node;
+- node->prev = above_node;
+- above_node->next = node;
++ node->prev = above_node->prev;
++ if (node->prev)
++ node->prev->next = node;
++ else
++ cache->children = node;
++ node->next = above_node;
++ above_node->prev = node;
+ }
+ }
+ }
diff --git a/source/l/gtk+/gtk+-1.2.10-encoding.patch b/source/l/gtk+/gtk+-1.2.10-encoding.patch
new file mode 100644
index 000000000..5b784a8da
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-encoding.patch
@@ -0,0 +1,298 @@
+--- gtk+-1.2.10/gtk/gtkrc.iso88593.encoding Fri Jul 26 16:47:04 2002
++++ gtk+-1.2.10/gtk/gtkrc.iso88593 Fri Jul 26 16:47:04 2002
+@@ -0,0 +1,8 @@
++style "gtk-default-iso-8859-3" {
++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-3,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-3,*-r-*"
++}
++class "GtkWidget" style "gtk-default-iso-8859-3"
++
+--- gtk+-1.2.10/gtk/Makefile.am.encoding Fri Feb 2 12:09:02 2001
++++ gtk+-1.2.10/gtk/Makefile.am Fri Jul 26 16:47:04 2002
+@@ -374,10 +374,12 @@
+
+
+ gtkconfdir = $(sysconfdir)/gtk
+-gtkconf_DATA = gtkrc.az gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja \
+- gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 \
+- gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 \
+- gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 \
++gtkconf_DATA = gtkrc.az gtkrc.he gtkrc.hy gtkrc.ja \
++ gtkrc.ko gtkrc.ru gtkrc.th gtkrc.uk \
++ gtkrc.utf8 gtkrc.iso88592 \
++ gtkrc.iso88593 gtkrc.iso88595 gtkrc.iso88597 \
++ gtkrc.iso88599 gtkrc.iso885913 gtkrc.iso885914 \
++ gtkrc.iso885915 gtkrc.zh_CN gtkrc.zh_TW.big5 \
+ gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps \
+ gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255
+
+@@ -390,11 +392,11 @@
+ cd $(DESTDIR)$(gtkconfdir) && \
+ for i in cs hr hu pl ro sk sl sq sr ; do \
+ rm -f gtkrc.$$i ; \
+- ln -s gtkrc.iso-8859-2 gtkrc.$$i ; \
++ ln -s gtkrc.iso88592 gtkrc.$$i ; \
+ done ; \
+ for i in bg_BG.iso88595 mk sp ru_RU.iso88595 ; do \
+ rm -f gtkrc.$$i ; \
+- ln -s gtkrc.iso-8859-5 gtkrc.$$i ; \
++ ln -s gtkrc.iso88595 gtkrc.$$i ; \
+ done ; \
+ for i in he_IL.cp1255 he_IL.microsoftcp1255 yi ; do \
+ rm -f gtkrc.$$i ; \
+@@ -403,12 +405,12 @@
+ rm -f gtkrc.lt gtkrc.lv gtkrc.cy gtkrc.ga gtkrc.et gtkrc.ka \
+ gtkrc.vi_VN.viscii111 gtkrc.vi_VN.tcvn5712 gtkrc.vi \
+ gtkrc.be gtkrc.bg gtkrc.mi ; \
+- ln -s gtkrc.iso-8859-13 gtkrc.mi ; \
+- ln -s gtkrc.iso-8859-13 gtkrc.lt ; \
+- ln -s gtkrc.iso-8859-13 gtkrc.lv ; \
+- ln -s gtkrc.iso-8859-14 gtkrc.cy ; \
+- ln -s gtkrc.iso-8859-14 gtkrc.ga ; \
+- ln -s gtkrc.iso-8859-15 gtkrc.et ; \
++ ln -s gtkrc.iso885913 gtkrc.mi ; \
++ ln -s gtkrc.iso885913 gtkrc.lt ; \
++ ln -s gtkrc.iso885913 gtkrc.lv ; \
++ ln -s gtkrc.iso885914 gtkrc.cy ; \
++ ln -s gtkrc.iso885914 gtkrc.ga ; \
++ ln -s gtkrc.iso885915 gtkrc.et ; \
+ ln -s gtkrc.ka_GE.georgianps gtkrc.ka ; \
+ ln -s gtkrc.vi_VN.viscii gtkrc.vi_VN.viscii111 ; \
+ ln -s gtkrc.vi_VN.tcvn gtkrc.vi ; \
+--- gtk+-1.2.10/gtk/gtkrc.c.encoding Thu Mar 15 13:41:40 2001
++++ gtk+-1.2.10/gtk/gtkrc.c Fri Jul 26 16:49:24 2002
+@@ -33,6 +33,7 @@
+ #include <string.h>
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <langinfo.h>
+
+ #include "gtkrc.h"
+ #include "gtkbindings.h"
+@@ -440,7 +441,7 @@
+ void
+ gtk_rc_init (void)
+ {
+- static gchar *locale_suffixes[3];
++ static gchar *locale_suffixes[8];
+ static gint n_locale_suffixes = 0;
+
+ gint i, j;
+@@ -449,9 +450,7 @@
+
+ if (!initted)
+ {
+- gint length;
+-
+- char *locale = setlocale (LC_CTYPE, NULL);
++ char *locale = g_strdup (setlocale (LC_CTYPE, NULL));
+ char *p;
+
+ initted = TRUE;
+@@ -470,39 +469,88 @@
+ * We normalize the charset into a standard form,
+ * which has all '-' and '_' characters removed,
+ * and is lowercase.
++ *
++ * the search is done in that order:
++ * gtkrc.ll_cc.lowercasecodeset
++ * gtkrc.ll_cc.normalizedcodeset
++ * gtkrc.ll.lowercasecodeset
++ * gtkrc.ll.normalizedcodeset
++ * gtkrc.lowercasecodeset
++ * gtkrc.normalizedcodeset
++ * gtkrc.ll_cc
++ * gtkrc.ll
++ *
+ */
+- gchar *normalized_locale;
++ char *codeset = NULL;
++ char *normalized_codeset = NULL;
++ char *cc = NULL;
++ char *ll;
+
+ p = strchr (locale, '@');
+- length = p ? (p -locale) : strlen (locale);
++ if (p)
++ *p = '\0';
+
++ codeset = nl_langinfo (CODESET);
++
+ p = strchr (locale, '.');
++ if (!codeset && p)
++ codeset = p + 1;
+ if (p)
++ *p = '\0';
++
++ if (codeset)
+ {
+- gchar *tmp1 = g_strndup (locale, p - locale + 1);
+- gchar *tmp2 = _gtk_normalize_codeset (p + 1, length - (p - locale + 1));
++ codeset = g_strdup (codeset);
+
+- normalized_locale = g_strconcat (tmp1, tmp2, NULL);
+- g_free (tmp1);
+- g_free (tmp2);
+-
+- locale_suffixes[n_locale_suffixes++] = g_strdup (normalized_locale);
+- length = p - locale;
++ p = codeset;
++ while (*p)
++ {
++ /* tolower not used, because some locales are not
++ * compatible with C locale in lowercasing ascii
++ */
++ if (*p >= 'A' && *p <= 'Z')
++ *p = (*p) - 'A' + 'a';
++ p++;
++ }
++
++ normalized_codeset = _gtk_normalize_codeset(codeset, strlen (codeset));
++ if (strcmp (normalized_codeset, codeset) == 0)
++ {
++ g_free (normalized_codeset);
++ normalized_codeset = NULL;
++ }
+ }
+- else
+- normalized_locale = g_strndup (locale, length);
+
+- p = strchr (normalized_locale, '_');
++ p = strchr (locale, '_');
+ if (p)
+ {
+- locale_suffixes[n_locale_suffixes++] = g_strndup (normalized_locale, length);
+- length = p - normalized_locale;
++ cc = p + 1;
++ *p = '\0';
+ }
+-
+- locale_suffixes[n_locale_suffixes++] = g_strndup (normalized_locale, length);
+
+- g_free (normalized_locale);
++ ll = locale;
++
++ if (cc && codeset)
++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, "_", cc, ".", codeset, NULL);
++ if (cc && normalized_codeset)
++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, "_", cc, ".", normalized_codeset, NULL);
++ if (codeset)
++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, ".", codeset, NULL);
++ if (normalized_codeset)
++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, ".", normalized_codeset, NULL);
++ if (codeset)
++ locale_suffixes[n_locale_suffixes++] = g_strdup (codeset);
++ if (normalized_codeset)
++ locale_suffixes[n_locale_suffixes++] = g_strdup (normalized_codeset);
++ if (cc)
++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, "_", cc, NULL);
++ locale_suffixes[n_locale_suffixes++] = g_strdup (ll);
++
++ g_free (normalized_codeset);
++ g_free (codeset);
+ }
++
++ g_free (locale);
+ }
+
+ i = 0;
+--- gtk+-1.2.10/gtk/gtkrc.iso88599.encoding Fri Jul 26 16:47:04 2002
++++ gtk+-1.2.10/gtk/gtkrc.iso88599 Fri Jul 26 16:47:04 2002
+@@ -0,0 +1,8 @@
++style "gtk-default-iso-8859-9" {
++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-9,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-9,*-r-*"
++}
++class "GtkWidget" style "gtk-default-iso-8859-9"
++
+--- gtk+-1.2.10/gtk/gtkrc.utf8.encoding Fri Jul 26 16:47:04 2002
++++ gtk+-1.2.10/gtk/gtkrc.utf8 Fri Jul 26 16:47:04 2002
+@@ -0,0 +1,7 @@
++style "default-text" {
++ fontset = "-*-helvetica-medium-r-normal--*-120-*-*-p-*-*-*"
++
++}
++
++class "GtkWidget" style "default-text"
++
+--- gtk+-1.2.10/gtk/gtkrc.iso885913.encoding Fri Jul 26 16:47:04 2002
++++ gtk+-1.2.10/gtk/gtkrc.iso885913 Fri Jul 26 16:47:04 2002
+@@ -0,0 +1,7 @@
++style "gtk-default-iso-8859-13" {
++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-13,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-13,*-r-*"
++}
++class "GtkWidget" style "gtk-default-iso-8859-13"
+--- gtk+-1.2.10/gtk/gtkrc.iso885914.encoding Fri Jul 26 16:47:04 2002
++++ gtk+-1.2.10/gtk/gtkrc.iso885914 Fri Jul 26 16:47:04 2002
+@@ -0,0 +1,8 @@
++style "gtk-default-iso-8859-14" {
++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-14,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-14,*-r-*"
++}
++class "GtkWidget" style "gtk-default-iso-8859-14"
++
+--- gtk+-1.2.10/gtk/gtkrc.iso885915.encoding Fri Jul 26 16:47:04 2002
++++ gtk+-1.2.10/gtk/gtkrc.iso885915 Fri Jul 26 16:47:04 2002
+@@ -0,0 +1,8 @@
++style "gtk-default-iso-8859-15" {
++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-15,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-15,*-r-*"
++}
++class "GtkWidget" style "gtk-default-iso-8859-15"
++
+--- gtk+-1.2.10/gtk/gtkrc.iso88592.encoding Fri Jul 26 16:47:04 2002
++++ gtk+-1.2.10/gtk/gtkrc.iso88592 Fri Jul 26 16:47:04 2002
+@@ -0,0 +1,14 @@
++#$(gtkconfigdir)/gtkrc.iso-8859-2
++#
++# This file defines the fontsets for iso-8859-2 encoding
++# make symliks or hardlinks to gtkrc.$LANG if your language uses iso-8859-2
++# and a gtkrc.$LANG doesn't exist yet.
++
++style "gtk-default-iso-8859-2" {
++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-2,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-2,*-r-*"
++}
++class "GtkWidget" style "gtk-default-iso-8859-2"
++
+--- gtk+-1.2.10/gtk/gtkrc.iso88595.encoding Fri Jul 26 16:47:04 2002
++++ gtk+-1.2.10/gtk/gtkrc.iso88595 Fri Jul 26 16:47:04 2002
+@@ -0,0 +1,14 @@
++#$(gtkconfigdir)/gtkrc.iso-8859-5
++#
++# This file defines the fontsets for iso-8859-5 encoding
++# make symliks or hardlinks to gtkrc.$LANG if your language uses iso-8859-5
++# and a gtkrc.$LANG doesn't exist yet.
++
++style "gtk-default-iso-8859-5" {
++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-5,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-5,*-r-*"
++}
++class "GtkWidget" style "gtk-default-iso-8859-5"
++
+--- gtk+-1.2.10/gtk/gtkrc.iso88597.encoding Fri Jul 26 16:47:04 2002
++++ gtk+-1.2.10/gtk/gtkrc.iso88597 Fri Jul 26 16:47:04 2002
+@@ -0,0 +1,8 @@
++style "gtk-default-iso-8859-7" {
++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-7,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-7,*-r-*"
++}
++class "GtkWidget" style "gtk-default-iso-8859-7"
++
diff --git a/source/l/gtk+/gtk+-1.2.10-expose.patch b/source/l/gtk+/gtk+-1.2.10-expose.patch
new file mode 100644
index 000000000..f8fe8cdb8
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-expose.patch
@@ -0,0 +1,42 @@
+--- gtk+-1.2.10/gdk/gdkevents.c.expose Sun Dec 3 11:02:49 2000
++++ gtk+-1.2.10/gdk/gdkevents.c Wed Jul 11 15:54:18 2001
+@@ -383,6 +383,7 @@
+ struct _GdkExposeInfo
+ {
+ Window window;
++ GdkWindowPrivate *toplevel_window;
+ gboolean seen_nonmatching;
+ };
+
+@@ -400,10 +401,21 @@
+ * we'll get a whole bunch of them interspersed with
+ * expose events.
+ */
+- if (xevent->xany.type != Expose &&
+- xevent->xany.type != GravityNotify)
++ switch (xevent->xany.type)
+ {
++ case Expose:
++ case GravityNotify:
++ break;
++ case ConfigureNotify:
++ if (xevent->xconfigure.window != info->toplevel_window->xwindow)
++ break;
++ if (xevent->xconfigure.width == info->toplevel_window->width &&
++ xevent->xconfigure.height == info->toplevel_window->height)
++ break;
++ /* Fall through */
++ default:
+ info->seen_nonmatching = TRUE;
++ break;
+ }
+
+ if (info->seen_nonmatching ||
+@@ -429,6 +441,7 @@
+ GdkEvent event;
+
+ info.window = xevent->xany.window;
++ info.toplevel_window = (GdkWindowPrivate *) gdk_window_get_toplevel (window);
+ info.seen_nonmatching = FALSE;
+
+ rect1.x = xevent->xexpose.x;
diff --git a/source/l/gtk+/gtk+-1.2.10-focus.patch b/source/l/gtk+/gtk+-1.2.10-focus.patch
new file mode 100644
index 000000000..f7fad1def
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-focus.patch
@@ -0,0 +1,17 @@
+--- gtk+-1.2.10/gtk/gtkwindow.c.focus Fri Mar 9 18:39:16 2001
++++ gtk+-1.2.10/gtk/gtkwindow.c Thu Jul 5 10:34:00 2001
+@@ -985,7 +985,13 @@
+ break;
+ case EnterNotify:
+ case LeaveNotify:
+- if (xev->xcrossing.detail != NotifyInferior &&
++ /* We only track the actual destination of keyboard events for real
++ * toplevels, not for embedded toplevels such as GtkPlug. The reason for
++ * this is that GtkPlug redirects events so the widget may effectively not
++ * have the focus even if it actually has the focus.
++ */
++ if (gdk_window_get_parent (GTK_WIDGET (window)->window) == GDK_ROOT_PARENT () &&
++ xev->xcrossing.detail != NotifyInferior &&
+ xev->xcrossing.focus && !window->window_has_focus)
+ {
+ window->window_has_pointer_focus = (xev->xany.type == EnterNotify) ? TRUE : FALSE;
diff --git a/source/l/gtk+/gtk+-1.2.10-fontwarning.patch b/source/l/gtk+/gtk+-1.2.10-fontwarning.patch
new file mode 100644
index 000000000..bf540bb05
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-fontwarning.patch
@@ -0,0 +1,24 @@
+--- gtk+-1.2.10/gdk/gdkfont.c.fontwarning Fri Apr 12 17:33:55 2002
++++ gtk+-1.2.10/gdk/gdkfont.c Fri Apr 12 17:36:52 2002
+@@ -27,6 +27,7 @@
+ #include <X11/Xlib.h>
+ #include <X11/Xos.h>
+ #include <langinfo.h>
++#include <locale.h>
+ #include "gdk.h"
+ #include "gdkprivate.h"
+
+@@ -187,9 +188,11 @@
+ if (g_strcasecmp (codeset, "utf-8") != 0 &&
+ g_strcasecmp (codeset, "utf8") != 0)
+ {
+- g_warning ("Missing charsets in FontSet creation\n");
++ g_printerr ("The font \"%s\" does not support all the required character sets for the current locale \"%s\"\n",
++ fontset_name, setlocale (LC_ALL, NULL));
+ for (i=0;i<missing_charset_count;i++)
+- g_warning (" %s\n", missing_charset_list[i]);
++ g_printerr (" (Missing character set \"%s\")\n",
++ missing_charset_list[i]);
+ }
+
+ XFreeStringList (missing_charset_list);
diff --git a/source/l/gtk+/gtk+-1.2.10-format.patch b/source/l/gtk+/gtk+-1.2.10-format.patch
new file mode 100644
index 000000000..0fdf513a0
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-format.patch
@@ -0,0 +1,20 @@
+--- gtk/gtkthemes.c
++++ gtk/gtkthemes.c
+@@ -90,7 +90,7 @@ gtk_theme_engine_get (const gchar *name)
+ g_free(engine_path);
+ if (!library)
+ {
+- g_warning (g_module_error());
++ g_warning ("%s", g_module_error());
+ return NULL;
+ }
+ else
+@@ -107,7 +107,7 @@ gtk_theme_engine_get (const gchar *name)
+ !g_module_symbol (library, "theme_exit",
+ (gpointer *)&result->exit))
+ {
+- g_warning (g_module_error());
++ g_warning ("%s", g_module_error());
+ g_free (result);
+ return NULL;
+ }
diff --git a/source/l/gtk+/gtk+-1.2.10-gtkgdkdep.patch b/source/l/gtk+/gtk+-1.2.10-gtkgdkdep.patch
new file mode 100644
index 000000000..acee05a7f
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-gtkgdkdep.patch
@@ -0,0 +1,13 @@
+--- gtk+-1.2.10/gtk/Makefile.am.gtkgdkdep 2003-10-15 15:20:27.000000000 -0400
++++ gtk+-1.2.10/gtk/Makefile.am 2003-10-15 15:22:50.000000000 -0400
+@@ -23,6 +23,10 @@
+
+ # libtool stuff: set version and export symbols for resolving
+ libgtkincludedir = $(includedir)/gtk-1.2/gtk
++
++libgtk_la_DEPENDENCIES = $(top_builddir)/gdk/libgdk.la
++libgtk_la_LIBADD = $(top_builddir)/gdk/libgdk.la
++
+ libgtk_la_LDFLAGS = @STRIP_BEGIN@ \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+ -release $(LT_RELEASE) \
diff --git a/source/l/gtk+/gtk+-1.2.10-kpenter.patch b/source/l/gtk+/gtk+-1.2.10-kpenter.patch
new file mode 100644
index 000000000..a72fcb28e
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-kpenter.patch
@@ -0,0 +1,52 @@
+--- gtk+-1.2.10/gtk/gtkentry.c.kpenter Sat Jul 21 20:27:08 2001
++++ gtk+-1.2.10/gtk/gtkentry.c Sat Jul 21 20:27:16 2001
+@@ -1184,6 +1184,7 @@
+ }
+ break;
+ case GDK_Return:
++ case GDK_KP_Enter:
+ return_val = TRUE;
+ gtk_widget_activate (widget);
+ break;
+--- gtk+-1.2.10/gtk/gtktext.c.kpenter Sat Jul 21 20:28:56 2001
++++ gtk+-1.2.10/gtk/gtktext.c Sat Jul 21 20:29:17 2001
+@@ -2055,6 +2055,7 @@
+ case GDK_Up: scroll_int (text, -KEY_SCROLL_PIXELS); break;
+ case GDK_Down: scroll_int (text, +KEY_SCROLL_PIXELS); break;
+ case GDK_Return:
++ case GDK_KP_Enter:
+ if (event->state & GDK_CONTROL_MASK)
+ gtk_signal_emit_by_name (GTK_OBJECT (text), "activate");
+ else
+@@ -2161,6 +2162,7 @@
+ gtk_editable_insert_text (editable, "\t", 1, &position);
+ break;
+ case GDK_Return:
++ case GDK_KP_Enter:
+ if (event->state & GDK_CONTROL_MASK)
+ gtk_signal_emit_by_name (GTK_OBJECT (text), "activate");
+ else
+--- gtk+-1.2.10/gtk/gtkmenushell.c.kpenter Sat Jul 21 20:27:59 2001
++++ gtk+-1.2.10/gtk/gtkmenushell.c Sat Jul 21 20:28:05 2001
+@@ -258,6 +258,11 @@
+ GTK_TYPE_BOOL,
+ TRUE);
+ gtk_binding_entry_add_signal (binding_set,
++ GDK_KP_Enter, 0,
++ "activate_current", 1,
++ GTK_TYPE_BOOL,
++ TRUE);
++ gtk_binding_entry_add_signal (binding_set,
+ GDK_space, 0,
+ "activate_current", 1,
+ GTK_TYPE_BOOL,
+--- gtk+-1.2.10/gtk/gtknotebook.c.kpenter Sat Jul 21 20:28:30 2001
++++ gtk+-1.2.10/gtk/gtknotebook.c Sat Jul 21 20:28:38 2001
+@@ -1369,6 +1369,7 @@
+ gtk_notebook_switch_focus_tab (notebook, list);
+ return TRUE;
+ case GDK_Return:
++ case GDK_KP_Enter:
+ case GDK_space:
+ gtk_notebook_page_select (GTK_NOTEBOOK (widget));
+ return TRUE;
diff --git a/source/l/gtk+/gtk+-1.2.10-libtool.patch b/source/l/gtk+/gtk+-1.2.10-libtool.patch
new file mode 100644
index 000000000..92a15528e
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-libtool.patch
@@ -0,0 +1,52 @@
+--- gtk+-1.2.10/configure.libtool Wed Jan 15 12:44:35 2003
++++ gtk+-1.2.10/configure Wed Jan 15 12:45:29 2003
+@@ -1389,11 +1389,7 @@
+ echo "$ac_t""no" 1>&6
+ fi
+
+-
+-case "$target" in
+-NONE) lt_target="$host" ;;
+-*) lt_target="$target" ;;
+-esac
++lt_target="$host"
+
+ # Check for any special flags to pass to ltconfig.
+ libtool_flags="--cache-file=$cache_file"
+--- gtk+-1.2.10/aclocal.m4.libtool Wed Jan 15 12:44:47 2003
++++ gtk+-1.2.10/aclocal.m4 Wed Jan 15 12:45:42 2003
+@@ -56,10 +56,7 @@
+ AC_REQUIRE([AC_PROG_LN_S])dnl
+ dnl
+
+-case "$target" in
+-NONE) lt_target="$host" ;;
+-*) lt_target="$target" ;;
+-esac
++lt_target="$host"
+
+ # Check for any special flags to pass to ltconfig.
+ libtool_flags="--cache-file=$cache_file"
+--- gtk+-1.2.10/ltconfig.libtool Wed Jan 15 12:44:58 2003
++++ gtk+-1.2.10/ltconfig Wed Jan 15 12:46:15 2003
+@@ -447,16 +447,16 @@
+ host_alias=$host
+ fi
+
++host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
++host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
++host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
++
+ # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
+ case "$host_os" in
+ linux-gnu*) ;;
+ linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
+ esac
+
+-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+-
+ case "$host_os" in
+ aix3*)
+ # AIX sometimes has problems with the GCC collect2 program. For some
diff --git a/source/l/gtk+/gtk+-1.2.10-localecrash.patch b/source/l/gtk+/gtk+-1.2.10-localecrash.patch
new file mode 100644
index 000000000..368380b28
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-localecrash.patch
@@ -0,0 +1,20 @@
+--- gtk+-1.2.10/gdk/gdkselection.c.localecrash Thu Aug 22 16:50:01 2002
++++ gtk+-1.2.10/gdk/gdkselection.c Thu Aug 22 17:50:46 2002
+@@ -238,12 +238,14 @@
+ if (res != Success)
+ {
+ property.encoding = None;
+- property.format = None;
++ property.format = 8;
+ property.value = NULL;
+ property.nitems = 0;
+- }
+
+- g_assert (property.encoding == gdk_atom_intern ("COMPOUND_TEXT", FALSE) && property.format == 8);
++ g_warning ("Error converting string to compound text.\n"
++ "This might mean that your locale setting is supported\n"
++ "by the C library but not by Xlib.");
++ }
+
+ if (encoding)
+ *encoding = property.encoding;
diff --git a/source/l/gtk+/gtk+-1.2.10-missingchar.patch b/source/l/gtk+/gtk+-1.2.10-missingchar.patch
new file mode 100644
index 000000000..0d76f93af
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-missingchar.patch
@@ -0,0 +1,33 @@
+--- gtk+-1.2.10/gdk/gdkfont.c.missingchar Mon Aug 13 13:37:52 2001
++++ gtk+-1.2.10/gdk/gdkfont.c Mon Aug 13 13:39:30 2001
+@@ -461,7 +461,6 @@
+ GdkFontPrivate *private;
+ XCharStruct *chars;
+ gint width;
+- guint ch = character & 0xff; /* get rid of sign-extension */
+ XFontStruct *xfont;
+ XFontSet fontset;
+
+@@ -474,21 +473,7 @@
+ case GDK_FONT_FONT:
+ /* only 8 bits characters are considered here */
+ xfont = (XFontStruct *) private->xfont;
+- if ((xfont->min_byte1 == 0) &&
+- (xfont->max_byte1 == 0) &&
+- (ch >= xfont->min_char_or_byte2) &&
+- (ch <= xfont->max_char_or_byte2))
+- {
+- chars = xfont->per_char;
+- if (chars)
+- width = chars[ch - xfont->min_char_or_byte2].width;
+- else
+- width = xfont->min_bounds.width;
+- }
+- else
+- {
+- width = XTextWidth (xfont, &character, 1);
+- }
++ width = XTextWidth (xfont, &character, 1);
+ break;
+ case GDK_FONT_FONTSET:
+ fontset = (XFontSet) private->xfont;
diff --git a/source/l/gtk+/gtk+-1.2.10-multilib.patch b/source/l/gtk+/gtk+-1.2.10-multilib.patch
new file mode 100644
index 000000000..d0c3ad5d9
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-multilib.patch
@@ -0,0 +1,52 @@
+diff -up gtk+-1.2.10/gtk-config.in.multilib gtk+-1.2.10/gtk-config.in
+--- gtk+-1.2.10/gtk-config.in.multilib 2000-10-21 20:20:40.000000000 +0200
++++ gtk+-1.2.10/gtk-config.in 2008-10-02 09:52:59.000000000 +0200
+@@ -1,12 +1,16 @@
+ #!/bin/sh
+
+-glib_libs="@glib_libs@"
+-glib_cflags="@glib_cflags@"
+-glib_thread_libs="@glib_thread_libs@"
+-glib_thread_cflags="@glib_thread_cflags@"
++[ -z "$PKG_CONFIG" ] && PKG_CONFIG="pkg-config"
+
+-prefix=@prefix@
+-exec_prefix=@exec_prefix@
++glib_libs=`${PKG_CONFIG} --libs glib gmodule`
++glib_cflags=`${PKG_CONFIG} --cflags glib gmodule`
++glib_thread_libs=`${PKG_CONFIG} --libs gthread`
++glib_thread_cflags=`${PKG_CONFIG} --cflags gthread`
++
++prefix=`${PKG_CONFIG} --variable prefix gtk+`
++exec_prefix=`${PKG_CONFIG} --variable exec_prefix gtk+`
++libdir=`${PKG_CONFIG} --variable libdir gtk+`
++includedir=`${PKG_CONFIG} --variable includedir gtk+`
+ exec_prefix_set=no
+
+ usage()
+@@ -91,14 +95,14 @@ if test "$lib_gthread" = "yes"; then
+ fi
+
+ if test "$echo_cflags" = "yes"; then
+- echo -I@includedir@/gtk-1.2 $glib_cflags @x_cflags@
++ echo -I${includedir}/gtk-1.2 $glib_cflags @x_cflags@
+ fi
+
+ if test "$echo_libs" = "yes"; then
+ my_glib_libs=
+- libdirs=-L@libdir@
++ libdirs=-L${libdir}
+ for i in $glib_libs ; do
+- if test $i != -L@libdir@ ; then
++ if test $i != -L${libdir} ; then
+ if test -z "$my_glib_libs" ; then
+ my_glib_libs="$i"
+ else
+@@ -107,6 +111,6 @@ if test "$echo_libs" = "yes"; then
+ fi
+ done
+
+- echo $libdirs @x_ldflags@ -lgtk -lgdk $my_glib_libs @INTLLIBS@ @x_libs@ @GDK_WLIBS@ -lm
++ echo $libdirs -lgtk -lgdk $my_glib_libs @INTLLIBS@ @x_libs@ @GDK_WLIBS@ -lm
+ fi
+
diff --git a/source/l/gtk+/gtk+-1.2.10-no_undefined.patch b/source/l/gtk+/gtk+-1.2.10-no_undefined.patch
new file mode 100644
index 000000000..34e9d497c
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-no_undefined.patch
@@ -0,0 +1,20 @@
+--- gtk+-1.2.10/gtk/Makefile.am.no_undefined 2006-04-08 20:58:18.000000000 -0500
++++ gtk+-1.2.10/gtk/Makefile.am 2006-04-08 20:58:59.000000000 -0500
+@@ -31,6 +31,7 @@
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+ -release $(LT_RELEASE) \
+ -export-dynamic \
++ -no-undefined -Wl,--no-undefined \
+ @GLIB_DEPLIBS@ \
+ @x_ldflags@ \
+ @x_libs@ \
+--- gtk+-1.2.10/gdk/Makefile.am.no_undefined 2000-10-21 13:20:40.000000000 -0500
++++ gtk+-1.2.10/gdk/Makefile.am 2006-04-08 20:58:18.000000000 -0500
+@@ -21,6 +21,7 @@
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+ -release $(LT_RELEASE) \
+ -export-dynamic \
++ -no-undefined -Wl,--no-undefined \
+ @GLIB_DEPLIBS@ \
+ @x_ldflags@ \
+ @x_libs@ \
diff --git a/source/l/gtk+/gtk+-1.2.10-pixmapref.patch b/source/l/gtk+/gtk+-1.2.10-pixmapref.patch
new file mode 100644
index 000000000..0a6c3b2bb
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-pixmapref.patch
@@ -0,0 +1,14 @@
+--- gtk+-1.2.10/gtk/gtkstyle.c.pixmapref Tue Feb 20 11:46:58 2001
++++ gtk+-1.2.10/gtk/gtkstyle.c Sun Aug 12 15:42:06 2001
+@@ -348,8 +348,9 @@
+ new_style->bg[i] = style->bg[i];
+ new_style->text[i] = style->text[i];
+ new_style->base[i] = style->base[i];
+-
+- new_style->bg_pixmap[i] = style->bg_pixmap[i];
++
++ if (style->bg_pixmap[i] && !(style->rc_style && style->rc_style->bg_pixmap_name[i]))
++ new_style->bg_pixmap[i] = gdk_pixmap_ref (style->bg_pixmap[i]);
+ }
+
+ gdk_font_unref (new_style->font);
diff --git a/source/l/gtk+/gtk+-1.2.10-ppc64.patch b/source/l/gtk+/gtk+-1.2.10-ppc64.patch
new file mode 100644
index 000000000..dcfe29156
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-ppc64.patch
@@ -0,0 +1,11 @@
+--- gtk+-1.2.10/ltconfig.ppc64 2005-11-01 11:11:27.000000000 -0500
++++ gtk+-1.2.10/ltconfig 2005-11-01 11:12:42.000000000 -0500
+@@ -1968,7 +1968,7 @@
+ shlibpath_overrides_runpath=no
+ deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
+ file_magic_cmd=/usr/bin/file
+- file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
++ file_magic_test_file=`echo /lib{,64}/libc.so* /lib{,64}/libc-*.so`
+
+ if test -f /lib/ld.so.1; then
+ dynamic_linker='GNU ld.so'
diff --git a/source/l/gtk+/gtk+-1.2.10-themeswitch.patch b/source/l/gtk+/gtk+-1.2.10-themeswitch.patch
new file mode 100644
index 000000000..5bf849032
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-themeswitch.patch
@@ -0,0 +1,88 @@
+--- gtk+-1.2.10/gtk/gtkwindow.c.themeswitch Mon Aug 13 13:42:05 2001
++++ gtk+-1.2.10/gtk/gtkwindow.c Mon Aug 13 13:42:05 2001
+@@ -859,13 +859,60 @@
+ GTK_OBJECT_CLASS(parent_class)->finalize (object);
+ }
+
++
++static void
++reread_rc_files ()
++{
++ if (gtk_rc_reparse_all ())
++ {
++ /* If the above returned true, some of our RC files are out
++ * of date, so we need to reset all our widgets. Our other
++ * toplevel windows will also get the message, but by
++ * then, the RC file will up to date, so we have to tell
++ * them now.
++ */
++ GList *toplevels;
++
++ toplevels = gtk_container_get_toplevels();
++ while (toplevels)
++ {
++ gtk_widget_reset_rc_styles (toplevels->data);
++ toplevels = toplevels->next;
++ }
++ }
++}
++
+ static void
+ gtk_window_show (GtkWidget *widget)
+ {
+ GtkWindow *window = GTK_WINDOW (widget);
+ GtkContainer *container = GTK_CONTAINER (window);
+ gboolean need_resize;
++ GList *toplevels;
++ gboolean had_visible = FALSE;
+
++ /* If we have no windows shown at this point, then check for
++ * theme changes before showing the window. We really should
++ * be checking realized, not shown, but shown => realized,
++ * and checking in realize might cause reentrancy problems.
++ *
++ * Plus, this allows us to get the new size right before
++ * realizing.
++ */
++ toplevels = gtk_container_get_toplevels ();
++ while (toplevels)
++ {
++ if (GTK_WIDGET_VISIBLE (toplevels->data))
++ {
++ had_visible = TRUE;
++ break;
++ }
++ toplevels = toplevels->next;
++ }
++
++ if (!had_visible)
++ reread_rc_files ();
++
+ GTK_WIDGET_SET_FLAGS (widget, GTK_VISIBLE);
+
+ need_resize = container->need_resize || !GTK_WIDGET_REALIZED (widget);
+@@ -1480,23 +1527,7 @@
+ }
+ }
+
+- if (gtk_rc_reparse_all ())
+- {
+- /* If the above returned true, some of our RC files are out
+- * of date, so we need to reset all our widgets. Our other
+- * toplevel windows will also get the message, but by
+- * then, the RC file will up to date, so we have to tell
+- * them now.
+- */
+- GList *toplevels;
+-
+- toplevels = gtk_container_get_toplevels();
+- while (toplevels)
+- {
+- gtk_widget_reset_rc_styles (toplevels->data);
+- toplevels = toplevels->next;
+- }
+- }
++ reread_rc_files ();
+ }
+
+ static gint
diff --git a/source/l/gtk+/gtk+-1.2.10-troughpaint.patch b/source/l/gtk+/gtk+-1.2.10-troughpaint.patch
new file mode 100644
index 000000000..28c902e1f
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-troughpaint.patch
@@ -0,0 +1,19 @@
+Index: gtk/gtkrange.c
+===================================================================
+RCS file: /cvs/gnome/gtk+/gtk/gtkrange.c,v
+retrieving revision 1.26.2.3
+diff -u -p -r1.26.2.3 gtkrange.c
+--- gtk/gtkrange.c 22 Feb 2001 20:38:14 -0000 1.26.2.3
++++ gtk/gtkrange.c 19 Jul 2002 15:41:58 -0000
+@@ -829,7 +828,10 @@ gtk_range_expose (GtkWidget *widget
+ (event->area.x + event->area.width <=
+ widget->allocation.width - trough_border) &&
+ (event->area.y + event->area.height <=
+- widget->allocation.height - trough_border)))
++ widget->allocation.height - trough_border)) ||
++ gtk_style_get_prop_experimental (widget->style,
++ "GtkRange::always_draw_trough",
++ 0))
+ gtk_range_draw_trough (range);
+ }
+ else if (event->window == widget->window)
diff --git a/source/l/gtk+/gtk+-1.2.10-ukfont.patch b/source/l/gtk+/gtk+-1.2.10-ukfont.patch
new file mode 100644
index 000000000..369be5038
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-ukfont.patch
@@ -0,0 +1,27 @@
+--- gtk+-1.2.10/gtk/gtkrc.uk.ukfont Wed Apr 10 19:20:40 2002
++++ gtk+-1.2.10/gtk/gtkrc.uk Wed Apr 10 19:20:56 2002
+@@ -7,10 +7,10 @@
+ #
+
+ style "gtk-default-uk" {
+- fontset = "-adobe-helvetica-medium-r-normal--14-*-*-*-*-*-iso8859-*,\
++ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-*,\
+ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
+- -*-helvetica-medium-r-normal--14-*-*-*-*-*-koi8-u,\
+- -*-arial-medium-r-normal--14-*-*-*-*-*-koi8-u,*-r-*"
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-koi8-u,\
++ -*-arial-medium-r-normal--12-*-*-*-*-*-koi8-u,*-r-*"
+ }
+ class "GtkWidget" style "gtk-default-uk"
+
+--- gtk+-1.2.10/gtk/gtkrc.ru.ukfont Thu Apr 11 10:22:15 2002
++++ gtk+-1.2.10/gtk/gtkrc.ru Mon May 8 14:49:18 2000
+@@ -1,7 +1,7 @@
+ style "gtk-default-ru" {
+ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-*,\
+ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
+- -cronyx-helvetica-medium-r-normal--12-*-*-*-*-*-koi8-r,\
++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-koi8-r,\
+ -*-arial-medium-r-normal--12-*-*-*-*-*-koi8-r,*-r-*"
+ }
+ class "GtkWidget" style "gtk-default-ru"
diff --git a/source/l/gtk+/gtk+-1.2.10-unused-deps.patch b/source/l/gtk+/gtk+-1.2.10-unused-deps.patch
new file mode 100644
index 000000000..3d90f2a2b
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-unused-deps.patch
@@ -0,0 +1,28 @@
+--- gtk+-1.2.10/gdk/Makefile.am 2009-04-17 17:02:02.000000000 +0100
++++ gtk+-1.2.10/gdk/Makefile.am 2009-04-17 17:05:49.000000000 +0100
+@@ -22,10 +22,9 @@
+ -release $(LT_RELEASE) \
+ -export-dynamic \
+ -no-undefined -Wl,--no-undefined \
+- @GLIB_DEPLIBS@ \
++ $(filter-out -lgmodule -ldl, @GLIB_DEPLIBS@) \
+ @x_ldflags@ \
+ @x_libs@ \
+- -lm \
+ @STRIP_END@
+
+ #
+--- gtk+-1.2.10/gtk/Makefile.am 2009-04-17 20:46:56.000000000 +0100
++++ gtk+-1.2.10/gtk/Makefile.am 2009-04-17 20:52:24.000000000 +0100
+@@ -32,9 +32,9 @@
+ -release $(LT_RELEASE) \
+ -export-dynamic \
+ -no-undefined -Wl,--no-undefined \
+- @GLIB_DEPLIBS@ \
++ $(filter-out -ldl, @GLIB_DEPLIBS@) \
+ @x_ldflags@ \
+- @x_libs@ \
++ $(filter-out -lXi -lXext, @x_libs@) \
+ -lm \
+ @STRIP_END@
+ # $(top_builddir)/gdk/libgdk.la
diff --git a/source/l/gtk+/gtk+-1.2.10-utf8fontset.patch b/source/l/gtk+/gtk+-1.2.10-utf8fontset.patch
new file mode 100644
index 000000000..fbf829aa5
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.10-utf8fontset.patch
@@ -0,0 +1,38 @@
+--- gtk+-1.2.10/gdk/gdkfont.c.utf8fontset Sun Apr 1 22:31:25 2001
++++ gtk+-1.2.10/gdk/gdkfont.c Tue Jul 10 11:31:54 2001
+@@ -26,6 +26,7 @@
+
+ #include <X11/Xlib.h>
+ #include <X11/Xos.h>
++#include <langinfo.h>
+ #include "gdk.h"
+ #include "gdkprivate.h"
+
+@@ -173,9 +174,24 @@
+ if (missing_charset_count)
+ {
+ gint i;
+- g_warning ("Missing charsets in FontSet creation\n");
+- for (i=0;i<missing_charset_count;i++)
+- g_warning (" %s\n", missing_charset_list[i]);
++ const char *codeset;
++
++ codeset = nl_langinfo (CODESET);
++
++ /* Hack - UTF-8 is likely to be rendered with a list of
++ * possible legacy fallback charsets, so a failure here
++ * shouldn't be warned about. But we don't want to suppress
++ * this warning in general, since for other character sets
++ * it gives a useful indication of what went wrong.
++ */
++ if (g_strcasecmp (codeset, "utf-8") != 0 &&
++ g_strcasecmp (codeset, "utf8") != 0)
++ {
++ g_warning ("Missing charsets in FontSet creation\n");
++ for (i=0;i<missing_charset_count;i++)
++ g_warning (" %s\n", missing_charset_list[i]);
++ }
++
+ XFreeStringList (missing_charset_list);
+ }
+
diff --git a/source/l/gtk+/gtk+-1.2.8-wrap-alnum.patch b/source/l/gtk+/gtk+-1.2.8-wrap-alnum.patch
new file mode 100644
index 000000000..ddbd29bbc
--- /dev/null
+++ b/source/l/gtk+/gtk+-1.2.8-wrap-alnum.patch
@@ -0,0 +1,16 @@
+--- gtk+-1.2.8/gtk/gtklabel.c.alnum Wed Jan 24 05:56:00 2001
++++ gtk+-1.2.8/gtk/gtklabel.c Wed Jan 24 07:44:22 2001
+@@ -507,8 +507,11 @@
+ static gboolean
+ is_ideogram (GdkWChar wc)
+ {
+- return !(gdk_iswalnum (wc) || gdk_iswspace (wc) ||
+- gdk_iswpunct (wc) || gdk_iswcntrl (wc));
++ if (gdk_iswalpha (wc) && (!gdk_iswupper (wc) && !gdk_iswlower (wc)))
++ return TRUE;
++
++ return !(gdk_iswspace (wc) || gdk_iswalnum (wc) ||
++ gdk_iswpunct (wc) || gdk_iswcntrl (wc));
+ }
+
+ /* this needs to handle white space better. */
diff --git a/source/l/gtk+/gtk+-underquoted.patch b/source/l/gtk+/gtk+-underquoted.patch
new file mode 100644
index 000000000..3e7ae1550
--- /dev/null
+++ b/source/l/gtk+/gtk+-underquoted.patch
@@ -0,0 +1,11 @@
+--- gtk+-1.2.10/gtk.m4.underquoted 2004-08-15 22:20:34.253447389 +0100
++++ gtk+-1.2.10/gtk.m4 2004-08-15 22:20:47.874844660 +0100
+@@ -4,7 +4,7 @@
+ dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]])
+ dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
+ dnl
+-AC_DEFUN(AM_PATH_GTK,
++AC_DEFUN([AM_PATH_GTK],
+ [dnl
+ dnl Get the cflags and libraries from the gtk-config script
+ dnl
diff --git a/source/l/gtk+/gtk+.SlackBuild b/source/l/gtk+/gtk+.SlackBuild
index 8ac394127..25a7ad8d0 100755
--- a/source/l/gtk+/gtk+.SlackBuild
+++ b/source/l/gtk+/gtk+.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gtk+
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-7}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -60,9 +68,40 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
-
-bzcat $CWD/gtk+1.2_1.2.10-18.diff.bz2 | patch -p1 --verbose || exit 1
+cd ${PKGNAM}-$VERSION || exit 1
+
+zcat $CWD/gtk+-1.2.10-ahiguti.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.8-wrap-alnum.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-alignment.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-expose.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-focus.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-encoding.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-ctext.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-utf8fontset.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-kpenter.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-themeswitch.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-pixmapref.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-missingchar.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-ukfont.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-deletedir.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-fontwarning.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-troughpaint.patch.gz | patch -p0 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-localecrash.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-dndorder.patch.gz | patch -p0 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-clistfocusrow.patch.gz | patch -p0 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-bellvolume.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-libtool.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-gtkgdkdep.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-underquoted.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-ppc64.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-no_undefined.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-multilib.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-unused-deps.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-autotools.patch.gz | patch -p0 --verbose || exit 1
+zcat $CWD/gtk+-1.2.10-format.patch.gz | patch -p0 --verbose || exit 1
+
+# The original config.{guess,sub} do not work on x86_64 and some other $ARCH:
+cp -p /usr/share/libtool/build-aux/config.{guess,sub} .
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -72,11 +111,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# The original config.{guess,sub} do not work on x86_64
-#cp /usr/share/libtool/config.{guess,sub} . # libtool-1.x
-cp /usr/share/libtool/config/config.{guess,sub} . # libtool-2.x
-
# Configure:
+LIBTOOL=/usr/bin/libtool \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -84,19 +120,35 @@ CXXFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--with-glib-prefix=/usr \
+ --with-xinput=xfree \
+ --with-native-locale \
+ --disable-static \
--mandir=/usr/man \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
-make $NUMJOBS || make || exit 1
+make $NUMJOBS LIBTOOL=/usr/bin/libtool || make LIBTOOL=/usr/bin/libtool || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Throw away the static libraries that shouldn't have been built:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+# Remove rpaths:
+for file in $(find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : 2> /dev/null) ; do
+ if [ ! "$(patchelf --print-rpath $file 2> /dev/null)" = "" ]; then
+ patchelf --remove-rpath $file
+ fi
+done
+
# Compress and link manpages, if any:
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
diff --git a/source/l/gtk+/gtk+1.2_1.2.10-18.diff b/source/l/gtk+/gtk+1.2_1.2.10-18.diff
deleted file mode 100644
index e3e71deb9..000000000
--- a/source/l/gtk+/gtk+1.2_1.2.10-18.diff
+++ /dev/null
@@ -1,29031 +0,0 @@
---- gtk+1.2-1.2.10.orig/Makefile.in
-+++ gtk+1.2-1.2.10/Makefile.in
-@@ -1,6 +1,6 @@
--# Makefile.in generated automatically by automake 1.4 from Makefile.am
-+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
--# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -66,6 +66,8 @@
- CC = @CC@
- DATADIRNAME = @DATADIRNAME@
- DLLTOOL = @DLLTOOL@
-+ECHO = @ECHO@
-+EXEEXT = @EXEEXT@
- GDK_WLIBS = @GDK_WLIBS@
- GENCAT = @GENCAT@
- GLIB_CFLAGS = @GLIB_CFLAGS@
-@@ -101,12 +103,14 @@
- MAKEINFO = @MAKEINFO@
- MKINSTALLDIRS = @MKINSTALLDIRS@
- OBJDUMP = @OBJDUMP@
-+OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- PERL = @PERL@
- POFILES = @POFILES@
- POSUB = @POSUB@
- RANLIB = @RANLIB@
- REBUILD = @REBUILD@
-+STRIP = @STRIP@
- STRIP_BEGIN = @STRIP_BEGIN@
- STRIP_DUMMY = @STRIP_DUMMY@
- STRIP_END = @STRIP_END@
-@@ -125,6 +129,8 @@
- x_libs = @x_libs@
- xinput_progs = @xinput_progs@
-
-+CONFIGURE_DEPENDENCIES = acgtk.m4
-+
- SRC_SUBDIRS = gdk gtk
- SUBDIRS = po $(SRC_SUBDIRS) docs
-
-@@ -133,7 +139,7 @@
- # require automake 1.4
- AUTOMAKE_OPTIONS = 1.4
-
--EXTRA_DIST = HACKING gtk+.spec.in gtk.m4 makecopyright TODO NEWS.pre-1-0 ChangeLog.pre-1-0 README.cvs-commits intl/libgettext.h intl/po2tbl.sed.in examples/aspectframe/Makefile examples/aspectframe/aspectframe.c examples/Makefile examples/README.1ST examples/extract.awk examples/extract.sh examples/base/Makefile examples/base/base.c examples/buttons/Makefile examples/buttons/buttons.c examples/buttons/info.xpm examples/calendar/Makefile examples/calendar/calendar.c examples/clist/Makefile examples/clist/clist.c examples/entry/Makefile examples/entry/entry.c examples/eventbox/Makefile examples/eventbox/eventbox.c examples/filesel/Makefile examples/filesel/filesel.c examples/gtkdial/Makefile examples/gtkdial/dial_test.c examples/gtkdial/gtkdial.c examples/gtkdial/gtkdial.h examples/helloworld/Makefile examples/helloworld/helloworld.c examples/helloworld2/Makefile examples/helloworld2/helloworld2.c examples/list/Makefile examples/list/list.c examples/menu/Makefile examples/menu/menu.c examples/menu/itemfactory.c examples/notebook/Makefile examples/notebook/notebook.c examples/packbox/Makefile examples/packbox/packbox.c examples/packer/Makefile examples/packer/pack.c examples/paned/Makefile examples/paned/paned.c examples/pixmap/Makefile examples/pixmap/pixmap.c examples/progressbar/Makefile examples/progressbar/progressbar.c examples/radiobuttons/Makefile examples/radiobuttons/radiobuttons.c examples/rangewidgets/Makefile examples/rangewidgets/rangewidgets.c examples/rulers/Makefile examples/rulers/rulers.c examples/scribble-simple/Makefile examples/scribble-simple/scribble-simple.c examples/scrolledwin/Makefile examples/scrolledwin/scrolledwin.c examples/selection/Makefile examples/selection/gettargets.c examples/selection/setselection.c examples/statusbar/Makefile examples/statusbar/statusbar.c examples/table/Makefile examples/table/table.c examples/text/Makefile examples/text/text.c examples/tictactoe/Makefile examples/tictactoe/tictactoe.c examples/tictactoe/tictactoe.h examples/tictactoe/ttt_test.c examples/tree/Makefile examples/tree/tree.c examples/wheelbarrow/Makefile examples/wheelbarrow/wheelbarrow.c examples/fixed/fixed.c examples/fixed/Makefile examples/frame/frame.c examples/frame/Makefile examples/spinbutton/spinbutton.c examples/spinbutton/Makefile examples/find-examples.sh gdk.pc.in gtk+.pc.in
-+EXTRA_DIST = HACKING gtk+.spec.in acgtk.m4 gtk.m4 makecopyright TODO NEWS.pre-1-0 ChangeLog.pre-1-0 README.cvs-commits intl/libgettext.h intl/po2tbl.sed.in examples/aspectframe/Makefile examples/aspectframe/aspectframe.c examples/Makefile examples/README.1ST examples/extract.awk examples/extract.sh examples/base/Makefile examples/base/base.c examples/buttons/Makefile examples/buttons/buttons.c examples/buttons/info.xpm examples/calendar/Makefile examples/calendar/calendar.c examples/clist/Makefile examples/clist/clist.c examples/entry/Makefile examples/entry/entry.c examples/eventbox/Makefile examples/eventbox/eventbox.c examples/filesel/Makefile examples/filesel/filesel.c examples/gtkdial/Makefile examples/gtkdial/dial_test.c examples/gtkdial/gtkdial.c examples/gtkdial/gtkdial.h examples/helloworld/Makefile examples/helloworld/helloworld.c examples/helloworld2/Makefile examples/helloworld2/helloworld2.c examples/list/Makefile examples/list/list.c examples/menu/Makefile examples/menu/menu.c examples/menu/itemfactory.c examples/notebook/Makefile examples/notebook/notebook.c examples/packbox/Makefile examples/packbox/packbox.c examples/packer/Makefile examples/packer/pack.c examples/paned/Makefile examples/paned/paned.c examples/pixmap/Makefile examples/pixmap/pixmap.c examples/progressbar/Makefile examples/progressbar/progressbar.c examples/radiobuttons/Makefile examples/radiobuttons/radiobuttons.c examples/rangewidgets/Makefile examples/rangewidgets/rangewidgets.c examples/rulers/Makefile examples/rulers/rulers.c examples/scribble-simple/Makefile examples/scribble-simple/scribble-simple.c examples/scrolledwin/Makefile examples/scrolledwin/scrolledwin.c examples/selection/Makefile examples/selection/gettargets.c examples/selection/setselection.c examples/statusbar/Makefile examples/statusbar/statusbar.c examples/table/Makefile examples/table/table.c examples/text/Makefile examples/text/text.c examples/tictactoe/Makefile examples/tictactoe/tictactoe.c examples/tictactoe/tictactoe.h examples/tictactoe/ttt_test.c examples/tree/Makefile examples/tree/tree.c examples/wheelbarrow/Makefile examples/wheelbarrow/wheelbarrow.c examples/fixed/fixed.c examples/fixed/Makefile examples/frame/frame.c examples/frame/Makefile examples/spinbutton/spinbutton.c examples/spinbutton/Makefile examples/find-examples.sh gdk.pc.in gtk+.pc.in
-
-
- pkgconfigdir = $(libdir)/pkgconfig
-@@ -150,26 +156,26 @@
- DATA = $(m4data_DATA) $(pkgconfig_DATA)
-
- DIST_COMMON = README ./stamp-h.in ABOUT-NLS AUTHORS COPYING ChangeLog \
--INSTALL Makefile.am Makefile.in NEWS TODO acconfig.h acinclude.m4 \
--aclocal.m4 config.guess config.h.in config.sub configure configure.in \
--gdk.pc.in gtk+.pc.in gtk+.spec.in gtk-config.in install-sh ltconfig \
--ltmain.sh missing mkinstalldirs
-+INSTALL Makefile.am Makefile.in NEWS TODO acconfig.h aclocal.m4 \
-+config.guess config.h.in config.sub configure configure.in gdk.pc.in \
-+gtk+.pc.in gtk+.spec.in gtk-config.in install-sh ltmain.sh missing \
-+mkinstalldirs
-
-
- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
--TAR = gtar
-+TAR = tar
- GZIP_ENV = --best
- all: all-redirect
- .SUFFIXES:
- $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
-- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile
-+ cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile
-
--Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
- cd $(top_builddir) \
- && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
--$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4
-+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in
- cd $(srcdir) && $(ACLOCAL)
-
- config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-@@ -306,7 +312,7 @@
- dot_seen=no; \
- rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
- rev="$$subdir $$rev"; \
-- test "$$subdir" = "." && dot_seen=yes; \
-+ test "$$subdir" != "." || dot_seen=yes; \
- done; \
- test "$$dot_seen" = "no" && rev=". $$rev"; \
- target=`echo $@ | sed s/-recursive//`; \
-@@ -348,7 +354,7 @@
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \
-- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS)
-+ || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP))
-
- mostlyclean-tags:
-
-@@ -397,6 +403,11 @@
- -rm -rf $(distdir)
- mkdir $(distdir)
- -chmod 777 $(distdir)
-+ here=`cd $(top_builddir) && pwd`; \
-+ top_distdir=`cd $(distdir) && pwd`; \
-+ distdir=`cd $(distdir) && pwd`; \
-+ cd $(top_srcdir) \
-+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile
- $(mkinstalldirs) $(distdir)/examples $(distdir)/examples/aspectframe \
- $(distdir)/examples/base $(distdir)/examples/buttons \
- $(distdir)/examples/calendar $(distdir)/examples/clist \
---- gtk+1.2-1.2.10.orig/intl/po2tbl.sed
-+++ gtk+1.2-1.2.10/intl/po2tbl.sed
-@@ -0,0 +1,60 @@
-+1 {
-+ i\
-+/* Automatically generated by po2tbl.sed from @PACKAGE NAME@.pot. */\
-+\
-+#if HAVE_CONFIG_H\
-+# include <config.h>\
-+#endif\
-+\
-+#include "libgettext.h"\
-+\
-+const struct _msg_ent _msg_tbl[] = {
-+ h
-+ s/.*/0/
-+ x
-+}
-+/^msgid/ {
-+ s/msgid[ ]*\(".*"\)/ {\1/
-+ tb
-+ :b
-+ N
-+ s/\(.*\)"\(\n\)"\(.*"\)/\1\2\3/
-+ ta
-+ s/\(.*\)\n.*/\1/
-+ bc
-+ :a
-+ s/\(.*\)\(\n.*\)/\1\\\2/
-+ P
-+ s/.*\n\(.*\)/\1/
-+ tb
-+ :c
-+ x
-+ td
-+ :d
-+ s/9\(_*\)$/_\1/
-+ td
-+ s/^\(_*\)$/0\1/
-+ s/8\(_*\)$/9\1/
-+ s/7\(_*\)$/8\1/
-+ s/6\(_*\)$/7\1/
-+ s/5\(_*\)$/6\1/
-+ s/4\(_*\)$/5\1/
-+ s/3\(_*\)$/4\1/
-+ s/2\(_*\)$/3\1/
-+ s/1\(_*\)$/2\1/
-+ s/0\(_*\)$/1\1/
-+ s/_/0/g
-+ x
-+ G
-+ s/\(.*\)\n\([0-9]*\)/\1, \2},/
-+ s/\(.*\)"$/\1/
-+ p
-+}
-+$ {
-+ i\
-+};\
-+
-+ g
-+ s/0*\(.*\)/int _msg_tbl_length = \1;/p
-+}
-+d
---- gtk+1.2-1.2.10.orig/Makefile.am
-+++ gtk+1.2-1.2.10/Makefile.am
-@@ -1,5 +1,7 @@
- ## Makefile.am for GTK+
-
-+CONFIGURE_DEPENDENCIES = acgtk.m4
-+
- SRC_SUBDIRS = gdk gtk
- SUBDIRS = po $(SRC_SUBDIRS) docs
-
-@@ -11,6 +13,7 @@
- EXTRA_DIST = \
- HACKING \
- gtk+.spec.in \
-+ acgtk.m4 \
- gtk.m4 \
- makecopyright \
- TODO \
---- gtk+1.2-1.2.10.orig/acconfig.h
-+++ gtk+1.2-1.2.10/acconfig.h
-@@ -28,6 +28,7 @@
- #undef HAVE_SHAPE_EXT
- #undef HAVE_SYS_SELECT_H
- #undef HAVE_XCONVERTCASE
-+#undef HAVE_CODESET
-
- #undef NO_FD_SET
-
---- gtk+1.2-1.2.10.orig/aclocal.m4
-+++ gtk+1.2-1.2.10/aclocal.m4
-@@ -1,6 +1,6 @@
--dnl aclocal.m4 generated automatically by aclocal 1.4
-+dnl aclocal.m4 generated automatically by aclocal 1.4-p6
-
--dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- dnl This file is free software; the Free Software Foundation
- dnl gives unlimited permission to copy and/or distribute it,
- dnl with or without modifications, as long as this notice is preserved.
-@@ -10,81 +10,217 @@
- dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- dnl PARTICULAR PURPOSE.
-
-+# Do all the work for Automake. This macro actually does too much --
-+# some checks are only needed if your package does certain things.
-+# But this isn't really a big deal.
-
--# serial 40 AC_PROG_LIBTOOL
--AC_DEFUN(AC_PROG_LIBTOOL,
--[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
-+# serial 1
-+
-+dnl Usage:
-+dnl AM_INIT_AUTOMAKE(package,version, [no-define])
-+
-+AC_DEFUN([AM_INIT_AUTOMAKE],
-+[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-+AC_REQUIRE([AC_PROG_INSTALL])
-+PACKAGE=[$1]
-+AC_SUBST(PACKAGE)
-+VERSION=[$2]
-+AC_SUBST(VERSION)
-+dnl test to see if srcdir already configured
-+if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
-+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-+fi
-+ifelse([$3],,
-+AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
-+AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
-+AC_REQUIRE([AM_SANITY_CHECK])
-+AC_REQUIRE([AC_ARG_PROGRAM])
-+dnl FIXME This is truly gross.
-+missing_dir=`cd $ac_aux_dir && pwd`
-+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir)
-+AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
-+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir)
-+AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
-+AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
-+AC_REQUIRE([AC_PROG_MAKE_SET])])
-+
-+# Copyright 2002 Free Software Foundation, Inc.
-+
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2, or (at your option)
-+# any later version.
-+
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-+
-+# AM_AUTOMAKE_VERSION(VERSION)
-+# ----------------------------
-+# Automake X.Y traces this macro to ensure aclocal.m4 has been
-+# generated from the m4 files accompanying Automake X.Y.
-+AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"])
-+
-+# AM_SET_CURRENT_AUTOMAKE_VERSION
-+# -------------------------------
-+# Call AM_AUTOMAKE_VERSION so it can be traced.
-+# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
-+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-+ [AM_AUTOMAKE_VERSION([1.4-p6])])
-+
-+#
-+# Check to make sure that the build environment is sane.
-+#
-+
-+AC_DEFUN([AM_SANITY_CHECK],
-+[AC_MSG_CHECKING([whether build environment is sane])
-+# Just in case
-+sleep 1
-+echo timestamp > conftestfile
-+# Do `set' in a subshell so we don't clobber the current shell's
-+# arguments. Must try -L first in case configure is actually a
-+# symlink; some systems play weird games with the mod time of symlinks
-+# (eg FreeBSD returns the mod time of the symlink's containing
-+# directory).
-+if (
-+ set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
-+ if test "[$]*" = "X"; then
-+ # -L didn't work.
-+ set X `ls -t $srcdir/configure conftestfile`
-+ fi
-+ if test "[$]*" != "X $srcdir/configure conftestfile" \
-+ && test "[$]*" != "X conftestfile $srcdir/configure"; then
-+
-+ # If neither matched, then we have a broken ls. This can happen
-+ # if, for instance, CONFIG_SHELL is bash and it inherits a
-+ # broken ls alias from the environment. This has actually
-+ # happened. Such a system could not be considered "sane".
-+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-+alias in your environment])
-+ fi
-+
-+ test "[$]2" = conftestfile
-+ )
-+then
-+ # Ok.
-+ :
-+else
-+ AC_MSG_ERROR([newly created file is older than distributed files!
-+Check your system clock])
-+fi
-+rm -f conftest*
-+AC_MSG_RESULT(yes)])
-+
-+dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
-+dnl The program must properly implement --version.
-+AC_DEFUN([AM_MISSING_PROG],
-+[AC_MSG_CHECKING(for working $2)
-+# Run test in a subshell; some versions of sh will print an error if
-+# an executable is not found, even if stderr is redirected.
-+# Redirect stdin to placate older versions of autoconf. Sigh.
-+if ($2 --version) < /dev/null > /dev/null 2>&1; then
-+ $1=$2
-+ AC_MSG_RESULT(found)
-+else
-+ $1="$3/missing $2"
-+ AC_MSG_RESULT(missing)
-+fi
-+AC_SUBST($1)])
-+
-+# Like AC_CONFIG_HEADER, but automatically create stamp file.
-+
-+AC_DEFUN([AM_CONFIG_HEADER],
-+[AC_PREREQ([2.12])
-+AC_CONFIG_HEADER([$1])
-+dnl When config.status generates a header, we must update the stamp-h file.
-+dnl This file resides in the same directory as the config header
-+dnl that is generated. We must strip everything past the first ":",
-+dnl and everything past the last "/".
-+AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
-+ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
-+<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
-+<<am_indx=1
-+for am_file in <<$1>>; do
-+ case " <<$>>CONFIG_HEADERS " in
-+ *" <<$>>am_file "*<<)>>
-+ echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
-+ ;;
-+ esac
-+ am_indx=`expr "<<$>>am_indx" + 1`
-+done<<>>dnl>>)
-+changequote([,]))])
-
--# Save cache, so that ltconfig can load it
--AC_CACHE_SAVE
-+# libtool.m4 - Configure libtool for the host system. -*-Shell-script-*-
-
--# Actually configure libtool. ac_aux_dir is where install-sh is found.
--CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
--LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
--LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
--DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
--${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
--$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
--|| AC_MSG_ERROR([libtool configure failed])
-+# serial 46 AC_PROG_LIBTOOL
-
--# Reload cache, that may have been modified by ltconfig
--AC_CACHE_LOAD
-+AC_DEFUN([AC_PROG_LIBTOOL],
-+[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
-
- # This can be used to rebuild libtool when needed
--LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
-+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
-
- # Always use our own libtool.
- LIBTOOL='$(SHELL) $(top_builddir)/libtool'
- AC_SUBST(LIBTOOL)dnl
-
--# Redirect the config.log output again, so that the ltconfig log is not
--# clobbered by the next message.
--exec 5>>./config.log
-+# Prevent multiple expansion
-+define([AC_PROG_LIBTOOL], [])
- ])
-
--AC_DEFUN(AC_LIBTOOL_SETUP,
-+AC_DEFUN([AC_LIBTOOL_SETUP],
- [AC_PREREQ(2.13)dnl
- AC_REQUIRE([AC_ENABLE_SHARED])dnl
- AC_REQUIRE([AC_ENABLE_STATIC])dnl
- AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
- AC_REQUIRE([AC_CANONICAL_HOST])dnl
- AC_REQUIRE([AC_CANONICAL_BUILD])dnl
--AC_REQUIRE([AC_PROG_RANLIB])dnl
- AC_REQUIRE([AC_PROG_CC])dnl
- AC_REQUIRE([AC_PROG_LD])dnl
-+AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
- AC_REQUIRE([AC_PROG_NM])dnl
-+AC_REQUIRE([LT_AC_PROG_SED])dnl
-+
- AC_REQUIRE([AC_PROG_LN_S])dnl
-+AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
-+AC_REQUIRE([AC_OBJEXT])dnl
-+AC_REQUIRE([AC_EXEEXT])dnl
- dnl
-
--case "$target" in
--NONE) lt_target="$host" ;;
--*) lt_target="$target" ;;
-+_LT_AC_PROG_ECHO_BACKSLASH
-+# Only perform the check for file, if the check method requires it
-+case $deplibs_check_method in
-+file_magic*)
-+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-+ AC_PATH_MAGIC
-+ fi
-+ ;;
- esac
-
--# Check for any special flags to pass to ltconfig.
--libtool_flags="--cache-file=$cache_file"
--test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
--test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
--test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
--test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
--test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
--ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
--[libtool_flags="$libtool_flags --enable-dlopen"])
-+AC_CHECK_TOOL(RANLIB, ranlib, :)
-+AC_CHECK_TOOL(STRIP, strip, :)
-+
-+ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
- ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
--[libtool_flags="$libtool_flags --enable-win32-dll"])
-+enable_win32_dll=yes, enable_win32_dll=no)
-+
- AC_ARG_ENABLE(libtool-lock,
- [ --disable-libtool-lock avoid locking (might break parallel builds)])
--test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
--test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
-+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-
- # Some flags need to be propagated to the compiler or linker for good
- # libtool support.
--case "$lt_target" in
-+case $host in
- *-*-irix6*)
- # Find out which ABI we are using.
- echo '[#]line __oline__ "configure"' > conftest.$ac_ext
- if AC_TRY_EVAL(ac_compile); then
-- case "`/usr/bin/file conftest.o`" in
-+ case `/usr/bin/file conftest.$ac_objext` in
- *32-bit*)
- LD="${LD-ld} -32"
- ;;
-@@ -99,46 +235,2889 @@
- rm -rf conftest*
- ;;
-
--*-*-sco3.2v5*)
-- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-- SAVE_CFLAGS="$CFLAGS"
-- CFLAGS="$CFLAGS -belf"
-- AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
-- [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
-- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-- CFLAGS="$SAVE_CFLAGS"
-- fi
-- ;;
-+*-*-sco3.2v5*)
-+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-+ SAVE_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -belf"
-+ AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
-+ [AC_LANG_SAVE
-+ AC_LANG_C
-+ AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
-+ AC_LANG_RESTORE])
-+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-+ CFLAGS="$SAVE_CFLAGS"
-+ fi
-+ ;;
-+
-+ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
-+[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
-+ AC_CHECK_TOOL(DLLTOOL, dlltool, false)
-+ AC_CHECK_TOOL(AS, as, false)
-+ AC_CHECK_TOOL(OBJDUMP, objdump, false)
-+
-+ # recent cygwin and mingw systems supply a stub DllMain which the user
-+ # can override, but on older systems we have to supply one
-+ AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
-+ [AC_TRY_LINK([],
-+ [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
-+ DllMain (0, 0, 0);],
-+ [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
-+
-+ case $host/$CC in
-+ *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
-+ # old mingw systems require "-dll" to link a DLL, while more recent ones
-+ # require "-mdll"
-+ SAVE_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -mdll"
-+ AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
-+ [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
-+ CFLAGS="$SAVE_CFLAGS" ;;
-+ *-*-cygwin* | *-*-pw32*)
-+ # cygwin systems need to pass --dll to the linker, and not link
-+ # crt.o which will require a WinMain@16 definition.
-+ lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
-+ esac
-+ ;;
-+ ])
-+esac
-+
-+_LT_AC_LTCONFIG_HACK
-+
-+])
-+
-+# AC_LIBTOOL_HEADER_ASSERT
-+# ------------------------
-+AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT],
-+[AC_CACHE_CHECK([whether $CC supports assert without backlinking],
-+ [lt_cv_func_assert_works],
-+ [case $host in
-+ *-*-solaris*)
-+ if test "$GCC" = yes && test "$with_gnu_ld" != yes; then
-+ case `$CC --version 2>/dev/null` in
-+ [[12]].*) lt_cv_func_assert_works=no ;;
-+ *) lt_cv_func_assert_works=yes ;;
-+ esac
-+ fi
-+ ;;
-+ esac])
-+
-+if test "x$lt_cv_func_assert_works" = xyes; then
-+ AC_CHECK_HEADERS(assert.h)
-+fi
-+])# AC_LIBTOOL_HEADER_ASSERT
-+
-+# _LT_AC_CHECK_DLFCN
-+# --------------------
-+AC_DEFUN([_LT_AC_CHECK_DLFCN],
-+[AC_CHECK_HEADERS(dlfcn.h)
-+])# _LT_AC_CHECK_DLFCN
-+
-+# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
-+# ---------------------------------
-+AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
-+[AC_REQUIRE([AC_CANONICAL_HOST])
-+AC_REQUIRE([AC_PROG_NM])
-+AC_REQUIRE([AC_OBJEXT])
-+# Check for command to grab the raw symbol name followed by C symbol from nm.
-+AC_MSG_CHECKING([command to parse $NM output])
-+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl
-+
-+# These are sane defaults that work on at least a few old systems.
-+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-+
-+# Character class describing NM global symbol codes.
-+symcode='[[BCDEGRST]]'
-+
-+# Regexp to match symbols that can be accessed directly from C.
-+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
-+
-+# Transform the above into a raw symbol and a C symbol.
-+symxfrm='\1 \2\3 \3'
-+
-+# Transform an extracted symbol line into a proper C declaration
-+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
-+
-+# Transform an extracted symbol line into symbol name and symbol address
-+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
-+
-+# Define system-specific variables.
-+case $host_os in
-+aix*)
-+ symcode='[[BCDT]]'
-+ ;;
-+cygwin* | mingw* | pw32*)
-+ symcode='[[ABCDGISTW]]'
-+ ;;
-+hpux*) # Its linker distinguishes data from code symbols
-+ lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-+ lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
-+ ;;
-+irix* | nonstopux*)
-+ symcode='[[BCDEGRST]]'
-+ ;;
-+osf*)
-+ symcode='[[BCDEGQRST]]'
-+ ;;
-+solaris* | sysv5*)
-+ symcode='[[BDT]]'
-+ ;;
-+sysv4)
-+ symcode='[[DFNSTU]]'
-+ ;;
-+esac
-+
-+# Handle CRLF in mingw tool chain
-+opt_cr=
-+case $host_os in
-+mingw*)
-+ opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
-+ ;;
-+esac
-+
-+# If we're using GNU nm, then use its standard symbol codes.
-+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
-+ symcode='[[ABCDGISTW]]'
-+fi
-+
-+# Try without a prefix undercore, then with it.
-+for ac_symprfx in "" "_"; do
-+
-+ # Write the raw and C identifiers.
-+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
-+
-+ # Check to see that the pipe works correctly.
-+ pipe_works=no
-+ rm -f conftest*
-+ cat > conftest.$ac_ext <<EOF
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+char nm_test_var;
-+void nm_test_func(){}
-+#ifdef __cplusplus
-+}
-+#endif
-+int main(){nm_test_var='a';nm_test_func();return(0);}
-+EOF
-+
-+ if AC_TRY_EVAL(ac_compile); then
-+ # Now try to grab the symbols.
-+ nlist=conftest.nm
-+ if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
-+ # Try sorting and uniquifying the output.
-+ if sort "$nlist" | uniq > "$nlist"T; then
-+ mv -f "$nlist"T "$nlist"
-+ else
-+ rm -f "$nlist"T
-+ fi
-+
-+ # Make sure that we snagged all the symbols we need.
-+ if egrep ' nm_test_var$' "$nlist" >/dev/null; then
-+ if egrep ' nm_test_func$' "$nlist" >/dev/null; then
-+ cat <<EOF > conftest.$ac_ext
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
-+EOF
-+ # Now generate the symbol file.
-+ eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
-+
-+ cat <<EOF >> conftest.$ac_ext
-+#if defined (__STDC__) && __STDC__
-+# define lt_ptr void *
-+#else
-+# define lt_ptr char *
-+# define const
-+#endif
-+
-+/* The mapping between symbol names and symbols. */
-+const struct {
-+ const char *name;
-+ lt_ptr address;
-+}
-+lt_preloaded_symbols[[]] =
-+{
-+EOF
-+ sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
-+ cat <<\EOF >> conftest.$ac_ext
-+ {0, (lt_ptr) 0}
-+};
-+
-+#ifdef __cplusplus
-+}
-+#endif
-+EOF
-+ # Now try linking the two files.
-+ mv conftest.$ac_objext conftstm.$ac_objext
-+ save_LIBS="$LIBS"
-+ save_CFLAGS="$CFLAGS"
-+ LIBS="conftstm.$ac_objext"
-+ CFLAGS="$CFLAGS$no_builtin_flag"
-+ if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
-+ pipe_works=yes
-+ fi
-+ LIBS="$save_LIBS"
-+ CFLAGS="$save_CFLAGS"
-+ else
-+ echo "cannot find nm_test_func in $nlist" >&AC_FD_CC
-+ fi
-+ else
-+ echo "cannot find nm_test_var in $nlist" >&AC_FD_CC
-+ fi
-+ else
-+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC
-+ fi
-+ else
-+ echo "$progname: failed program was:" >&AC_FD_CC
-+ cat conftest.$ac_ext >&5
-+ fi
-+ rm -f conftest* conftst*
-+
-+ # Do not use the global_symbol_pipe unless it works.
-+ if test "$pipe_works" = yes; then
-+ break
-+ else
-+ lt_cv_sys_global_symbol_pipe=
-+ fi
-+done
-+])
-+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
-+if test -z "$lt_cv_sys_global_symbol_pipe"; then
-+ global_symbol_to_cdecl=
-+ global_symbol_to_c_name_address=
-+else
-+ global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
-+ global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
-+fi
-+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
-+then
-+ AC_MSG_RESULT(failed)
-+else
-+ AC_MSG_RESULT(ok)
-+fi
-+]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
-+
-+# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
-+# ---------------------------------
-+AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
-+[# Find the correct PATH separator. Usually this is `:', but
-+# DJGPP uses `;' like DOS.
-+if test "X${PATH_SEPARATOR+set}" != Xset; then
-+ UNAME=${UNAME-`uname 2>/dev/null`}
-+ case X$UNAME in
-+ *-DOS) lt_cv_sys_path_separator=';' ;;
-+ *) lt_cv_sys_path_separator=':' ;;
-+ esac
-+ PATH_SEPARATOR=$lt_cv_sys_path_separator
-+fi
-+])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
-+
-+# _LT_AC_PROG_ECHO_BACKSLASH
-+# --------------------------
-+# Add some code to the start of the generated configure script which
-+# will find an echo command which doesn't interpret backslashes.
-+AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
-+[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
-+ [AC_DIVERT_PUSH(NOTICE)])
-+_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
-+
-+# Check that we are running under the correct shell.
-+SHELL=${CONFIG_SHELL-/bin/sh}
-+
-+case X$ECHO in
-+X*--fallback-echo)
-+ # Remove one level of quotation (which was required for Make).
-+ ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
-+ ;;
-+esac
-+
-+echo=${ECHO-echo}
-+if test "X[$]1" = X--no-reexec; then
-+ # Discard the --no-reexec flag, and continue.
-+ shift
-+elif test "X[$]1" = X--fallback-echo; then
-+ # Avoid inline document here, it may be left over
-+ :
-+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
-+ # Yippee, $echo works!
-+ :
-+else
-+ # Restart under the correct shell.
-+ exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
-+fi
-+
-+if test "X[$]1" = X--fallback-echo; then
-+ # used as fallback echo
-+ shift
-+ cat <<EOF
-+$*
-+EOF
-+ exit 0
-+fi
-+
-+# The HP-UX ksh and POSIX shell print the target directory to stdout
-+# if CDPATH is set.
-+if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-+
-+if test -z "$ECHO"; then
-+if test "X${echo_test_string+set}" != Xset; then
-+# find a string as large as possible, as long as the shell can cope with it
-+ for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
-+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
-+ if (echo_test_string="`eval $cmd`") 2>/dev/null &&
-+ echo_test_string="`eval $cmd`" &&
-+ (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
-+ then
-+ break
-+ fi
-+ done
-+fi
-+
-+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ :
-+else
-+ # The Solaris, AIX, and Digital Unix default echo programs unquote
-+ # backslashes. This makes it impossible to quote backslashes using
-+ # echo "$something" | sed 's/\\/\\\\/g'
-+ #
-+ # So, first we look for a working echo in the user's PATH.
-+
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-+ for dir in $PATH /usr/ucb; do
-+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
-+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ echo="$dir/echo"
-+ break
-+ fi
-+ done
-+ IFS="$save_ifs"
-+
-+ if test "X$echo" = Xecho; then
-+ # We didn't find a better echo, so look for alternatives.
-+ if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ # This shell has a builtin print -r that does the trick.
-+ echo='print -r'
-+ elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
-+ test "X$CONFIG_SHELL" != X/bin/ksh; then
-+ # If we have ksh, try running configure again with it.
-+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-+ export ORIGINAL_CONFIG_SHELL
-+ CONFIG_SHELL=/bin/ksh
-+ export CONFIG_SHELL
-+ exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
-+ else
-+ # Try using printf.
-+ echo='printf %s\n'
-+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ # Cool, printf works
-+ :
-+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
-+ test "X$echo_testing_string" = 'X\t' &&
-+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
-+ export CONFIG_SHELL
-+ SHELL="$CONFIG_SHELL"
-+ export SHELL
-+ echo="$CONFIG_SHELL [$]0 --fallback-echo"
-+ elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
-+ test "X$echo_testing_string" = 'X\t' &&
-+ echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ echo="$CONFIG_SHELL [$]0 --fallback-echo"
-+ else
-+ # maybe with a smaller string...
-+ prev=:
-+
-+ for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
-+ if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
-+ then
-+ break
-+ fi
-+ prev="$cmd"
-+ done
-+
-+ if test "$prev" != 'sed 50q "[$]0"'; then
-+ echo_test_string=`eval $prev`
-+ export echo_test_string
-+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
-+ else
-+ # Oops. We lost completely, so just stick with echo.
-+ echo=echo
-+ fi
-+ fi
-+ fi
-+ fi
-+fi
-+fi
-+
-+# Copy echo and quote the copy suitably for passing to libtool from
-+# the Makefile, instead of quoting the original, which is used later.
-+ECHO=$echo
-+if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
-+ ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
-+fi
-+
-+AC_SUBST(ECHO)
-+AC_DIVERT_POP
-+])# _LT_AC_PROG_ECHO_BACKSLASH
-+
-+# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
-+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
-+# ------------------------------------------------------------------
-+AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
-+[if test "$cross_compiling" = yes; then :
-+ [$4]
-+else
-+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
-+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-+ lt_status=$lt_dlunknown
-+ cat > conftest.$ac_ext <<EOF
-+[#line __oline__ "configure"
-+#include "confdefs.h"
-+
-+#if HAVE_DLFCN_H
-+#include <dlfcn.h>
-+#endif
-+
-+#include <stdio.h>
-+
-+#ifdef RTLD_GLOBAL
-+# define LT_DLGLOBAL RTLD_GLOBAL
-+#else
-+# ifdef DL_GLOBAL
-+# define LT_DLGLOBAL DL_GLOBAL
-+# else
-+# define LT_DLGLOBAL 0
-+# endif
-+#endif
-+
-+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-+ find out it does not work in some platform. */
-+#ifndef LT_DLLAZY_OR_NOW
-+# ifdef RTLD_LAZY
-+# define LT_DLLAZY_OR_NOW RTLD_LAZY
-+# else
-+# ifdef DL_LAZY
-+# define LT_DLLAZY_OR_NOW DL_LAZY
-+# else
-+# ifdef RTLD_NOW
-+# define LT_DLLAZY_OR_NOW RTLD_NOW
-+# else
-+# ifdef DL_NOW
-+# define LT_DLLAZY_OR_NOW DL_NOW
-+# else
-+# define LT_DLLAZY_OR_NOW 0
-+# endif
-+# endif
-+# endif
-+# endif
-+#endif
-+
-+#ifdef __cplusplus
-+extern "C" void exit (int);
-+#endif
-+
-+void fnord() { int i=42;}
-+int main ()
-+{
-+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-+ int status = $lt_dlunknown;
-+
-+ if (self)
-+ {
-+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
-+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
-+ /* dlclose (self); */
-+ }
-+
-+ exit (status);
-+}]
-+EOF
-+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
-+ (./conftest; exit; ) 2>/dev/null
-+ lt_status=$?
-+ case x$lt_status in
-+ x$lt_dlno_uscore) $1 ;;
-+ x$lt_dlneed_uscore) $2 ;;
-+ x$lt_unknown|x*) $3 ;;
-+ esac
-+ else :
-+ # compilation failed
-+ $3
-+ fi
-+fi
-+rm -fr conftest*
-+])# _LT_AC_TRY_DLOPEN_SELF
-+
-+# AC_LIBTOOL_DLOPEN_SELF
-+# -------------------
-+AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
-+[if test "x$enable_dlopen" != xyes; then
-+ enable_dlopen=unknown
-+ enable_dlopen_self=unknown
-+ enable_dlopen_self_static=unknown
-+else
-+ lt_cv_dlopen=no
-+ lt_cv_dlopen_libs=
-+
-+ case $host_os in
-+ beos*)
-+ lt_cv_dlopen="load_add_on"
-+ lt_cv_dlopen_libs=
-+ lt_cv_dlopen_self=yes
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ lt_cv_dlopen="LoadLibrary"
-+ lt_cv_dlopen_libs=
-+ ;;
-+
-+ *)
-+ AC_CHECK_FUNC([shl_load],
-+ [lt_cv_dlopen="shl_load"],
-+ [AC_CHECK_LIB([dld], [shl_load],
-+ [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
-+ [AC_CHECK_FUNC([dlopen],
-+ [lt_cv_dlopen="dlopen"],
-+ [AC_CHECK_LIB([dl], [dlopen],
-+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
-+ [AC_CHECK_LIB([svld], [dlopen],
-+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
-+ [AC_CHECK_LIB([dld], [dld_link],
-+ [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
-+ ])
-+ ])
-+ ])
-+ ])
-+ ])
-+ ;;
-+ esac
-+
-+ if test "x$lt_cv_dlopen" != xno; then
-+ enable_dlopen=yes
-+ else
-+ enable_dlopen=no
-+ fi
-+
-+ case $lt_cv_dlopen in
-+ dlopen)
-+ save_CPPFLAGS="$CPPFLAGS"
-+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
-+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-+
-+ save_LDFLAGS="$LDFLAGS"
-+ eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-+
-+ save_LIBS="$LIBS"
-+ LIBS="$lt_cv_dlopen_libs $LIBS"
-+
-+ AC_CACHE_CHECK([whether a program can dlopen itself],
-+ lt_cv_dlopen_self, [dnl
-+ _LT_AC_TRY_DLOPEN_SELF(
-+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
-+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
-+ ])
-+
-+ if test "x$lt_cv_dlopen_self" = xyes; then
-+ LDFLAGS="$LDFLAGS $link_static_flag"
-+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
-+ lt_cv_dlopen_self_static, [dnl
-+ _LT_AC_TRY_DLOPEN_SELF(
-+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
-+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
-+ ])
-+ fi
-+
-+ CPPFLAGS="$save_CPPFLAGS"
-+ LDFLAGS="$save_LDFLAGS"
-+ LIBS="$save_LIBS"
-+ ;;
-+ esac
-+
-+ case $lt_cv_dlopen_self in
-+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
-+ *) enable_dlopen_self=unknown ;;
-+ esac
-+
-+ case $lt_cv_dlopen_self_static in
-+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
-+ *) enable_dlopen_self_static=unknown ;;
-+ esac
-+fi
-+])# AC_LIBTOOL_DLOPEN_SELF
-+
-+AC_DEFUN([_LT_AC_LTCONFIG_HACK],
-+[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
-+# Sed substitution that helps us do robust quoting. It backslashifies
-+# metacharacters that are still active within double-quoted strings.
-+Xsed='sed -e s/^X//'
-+sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g'
-+
-+# Same as above, but do not quote variable references.
-+double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g'
-+
-+# Sed substitution to delay expansion of an escaped shell variable in a
-+# double_quote_subst'ed string.
-+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-+
-+# Constants:
-+rm="rm -f"
-+
-+# Global variables:
-+default_ofile=libtool
-+can_build_shared=yes
-+
-+# All known linkers require a `.a' archive for static linking (except M$VC,
-+# which needs '.lib').
-+libext=a
-+ltmain="$ac_aux_dir/ltmain.sh"
-+ofile="$default_ofile"
-+with_gnu_ld="$lt_cv_prog_gnu_ld"
-+need_locks="$enable_libtool_lock"
-+
-+old_CC="$CC"
-+old_CFLAGS="$CFLAGS"
-+
-+# Set sane defaults for various variables
-+test -z "$AR" && AR=ar
-+test -z "$AR_FLAGS" && AR_FLAGS=cru
-+test -z "$AS" && AS=as
-+test -z "$CC" && CC=cc
-+test -z "$DLLTOOL" && DLLTOOL=dlltool
-+test -z "$LD" && LD=ld
-+test -z "$LN_S" && LN_S="ln -s"
-+test -z "$MAGIC_CMD" && MAGIC_CMD=file
-+test -z "$NM" && NM=nm
-+test -z "$OBJDUMP" && OBJDUMP=objdump
-+test -z "$RANLIB" && RANLIB=:
-+test -z "$STRIP" && STRIP=:
-+test -z "$ac_objext" && ac_objext=o
-+
-+if test x"$host" != x"$build"; then
-+ ac_tool_prefix=${host_alias}-
-+else
-+ ac_tool_prefix=
-+fi
-+
-+# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
-+case $host_os in
-+linux-gnu*) ;;
-+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
-+esac
-+
-+case $host_os in
-+aix3*)
-+ # AIX sometimes has problems with the GCC collect2 program. For some
-+ # reason, if we set the COLLECT_NAMES environment variable, the problems
-+ # vanish in a puff of smoke.
-+ if test "X${COLLECT_NAMES+set}" != Xset; then
-+ COLLECT_NAMES=
-+ export COLLECT_NAMES
-+ fi
-+ ;;
-+esac
-+
-+# Determine commands to create old-style static archives.
-+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
-+old_postinstall_cmds='chmod 644 $oldlib'
-+old_postuninstall_cmds=
-+
-+if test -n "$RANLIB"; then
-+ case $host_os in
-+ openbsd*)
-+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
-+ ;;
-+ *)
-+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
-+ ;;
-+ esac
-+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-+fi
-+
-+# Allow CC to be a program name with arguments.
-+set dummy $CC
-+compiler="[$]2"
-+
-+AC_MSG_CHECKING([for objdir])
-+rm -f .libs 2>/dev/null
-+mkdir .libs 2>/dev/null
-+if test -d .libs; then
-+ objdir=.libs
-+else
-+ # MS-DOS does not allow filenames that begin with a dot.
-+ objdir=_libs
-+fi
-+rmdir .libs 2>/dev/null
-+AC_MSG_RESULT($objdir)
-+
-+
-+AC_ARG_WITH(pic,
-+[ --with-pic try to use only PIC/non-PIC objects [default=use both]],
-+pic_mode="$withval", pic_mode=default)
-+test -z "$pic_mode" && pic_mode=default
-+
-+# We assume here that the value for lt_cv_prog_cc_pic will not be cached
-+# in isolation, and that seeing it set (from the cache) indicates that
-+# the associated values are set (in the cache) correctly too.
-+AC_MSG_CHECKING([for $compiler option to produce PIC])
-+AC_CACHE_VAL(lt_cv_prog_cc_pic,
-+[ lt_cv_prog_cc_pic=
-+ lt_cv_prog_cc_shlib=
-+ lt_cv_prog_cc_wl=
-+ lt_cv_prog_cc_static=
-+ lt_cv_prog_cc_no_builtin=
-+ lt_cv_prog_cc_can_build_shared=$can_build_shared
-+
-+ if test "$GCC" = yes; then
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-static'
-+
-+ case $host_os in
-+ aix*)
-+ # Below there is a dirty hack to force normal static linking with -ldl
-+ # The problem is because libdl dynamically linked with both libc and
-+ # libC (AIX C++ library), which obviously doesn't included in libraries
-+ # list by gcc. This cause undefined symbols with -static flags.
-+ # This hack allows C programs to be linked with "-static -ldl", but
-+ # not sure about C++ programs.
-+ lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
-+ ;;
-+ amigaos*)
-+ # FIXME: we need at least 68020 code to build shared libraries, but
-+ # adding the `-m68020' flag to GCC prevents building anything better,
-+ # like `-m68040'.
-+ lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
-+ ;;
-+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-+ # PIC is the default for these OSes.
-+ ;;
-+ darwin* | rhapsody*)
-+ # PIC is the default on this platform
-+ # Common symbols not allowed in MH_DYLIB files
-+ lt_cv_prog_cc_pic='-fno-common'
-+ ;;
-+ cygwin* | mingw* | pw32* | os2*)
-+ # This hack is so that the source file can tell whether it is being
-+ # built for inclusion in a dll (and should export symbols for example).
-+ lt_cv_prog_cc_pic='-DDLL_EXPORT'
-+ ;;
-+ sysv4*MP*)
-+ if test -d /usr/nec; then
-+ lt_cv_prog_cc_pic=-Kconform_pic
-+ fi
-+ ;;
-+ *)
-+ lt_cv_prog_cc_pic='-fPIC'
-+ ;;
-+ esac
-+ else
-+ # PORTME Check for PIC flags for the system compiler.
-+ case $host_os in
-+ aix3* | aix4* | aix5*)
-+ lt_cv_prog_cc_wl='-Wl,'
-+ # All AIX code is PIC.
-+ if test "$host_cpu" = ia64; then
-+ # AIX 5 now supports IA64 processor
-+ lt_cv_prog_cc_static='-Bstatic'
-+ else
-+ lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
-+ fi
-+ ;;
-+
-+ hpux9* | hpux10* | hpux11*)
-+ # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
-+ lt_cv_prog_cc_pic='+Z'
-+ ;;
-+
-+ irix5* | irix6* | nonstopux*)
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-non_shared'
-+ # PIC (with -KPIC) is the default.
-+ ;;
-+
-+ cygwin* | mingw* | pw32* | os2*)
-+ # This hack is so that the source file can tell whether it is being
-+ # built for inclusion in a dll (and should export symbols for example).
-+ lt_cv_prog_cc_pic='-DDLL_EXPORT'
-+ ;;
-+
-+ newsos6)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ ;;
-+
-+ osf3* | osf4* | osf5*)
-+ # All OSF/1 code is PIC.
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-non_shared'
-+ ;;
-+
-+ sco3.2v5*)
-+ lt_cv_prog_cc_pic='-Kpic'
-+ lt_cv_prog_cc_static='-dn'
-+ lt_cv_prog_cc_shlib='-belf'
-+ ;;
-+
-+ solaris*)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Wl,'
-+ ;;
-+
-+ sunos4*)
-+ lt_cv_prog_cc_pic='-PIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Qoption ld '
-+ ;;
-+
-+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Wl,'
-+ ;;
-+
-+ uts4*)
-+ lt_cv_prog_cc_pic='-pic'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ ;;
-+
-+ sysv4*MP*)
-+ if test -d /usr/nec ;then
-+ lt_cv_prog_cc_pic='-Kconform_pic'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ fi
-+ ;;
-+
-+ *)
-+ lt_cv_prog_cc_can_build_shared=no
-+ ;;
-+ esac
-+ fi
-+])
-+if test -z "$lt_cv_prog_cc_pic"; then
-+ AC_MSG_RESULT([none])
-+else
-+ AC_MSG_RESULT([$lt_cv_prog_cc_pic])
-+
-+ # Check to make sure the pic_flag actually works.
-+ AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works])
-+ AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
-+ AC_TRY_COMPILE([], [], [dnl
-+ case $host_os in
-+ hpux9* | hpux10* | hpux11*)
-+ # On HP-UX, both CC and GCC only warn that PIC is supported... then
-+ # they create non-PIC objects. So, if there were any warnings, we
-+ # assume that PIC is not supported.
-+ if test -s conftest.err; then
-+ lt_cv_prog_cc_pic_works=no
-+ else
-+ lt_cv_prog_cc_pic_works=yes
-+ fi
-+ ;;
-+ *)
-+ lt_cv_prog_cc_pic_works=yes
-+ ;;
-+ esac
-+ ], [dnl
-+ lt_cv_prog_cc_pic_works=no
-+ ])
-+ CFLAGS="$save_CFLAGS"
-+ ])
-+
-+ if test "X$lt_cv_prog_cc_pic_works" = Xno; then
-+ lt_cv_prog_cc_pic=
-+ lt_cv_prog_cc_can_build_shared=no
-+ else
-+ lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
-+ fi
-+
-+ AC_MSG_RESULT([$lt_cv_prog_cc_pic_works])
-+fi
-+
-+# Check for any special shared library compilation flags.
-+if test -n "$lt_cv_prog_cc_shlib"; then
-+ AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries])
-+ if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then :
-+ else
-+ AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure])
-+ lt_cv_prog_cc_can_build_shared=no
-+ fi
-+fi
-+
-+AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works])
-+AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl
-+ lt_cv_prog_cc_static_works=no
-+ save_LDFLAGS="$LDFLAGS"
-+ LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
-+ AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes])
-+ LDFLAGS="$save_LDFLAGS"
-+])
-+
-+# Belt *and* braces to stop my trousers falling down:
-+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
-+AC_MSG_RESULT([$lt_cv_prog_cc_static_works])
-+
-+pic_flag="$lt_cv_prog_cc_pic"
-+special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
-+wl="$lt_cv_prog_cc_wl"
-+link_static_flag="$lt_cv_prog_cc_static"
-+no_builtin_flag="$lt_cv_prog_cc_no_builtin"
-+can_build_shared="$lt_cv_prog_cc_can_build_shared"
-+
-+
-+# Check to see if options -o and -c are simultaneously supported by compiler
-+AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext])
-+AC_CACHE_VAL([lt_cv_compiler_c_o], [
-+$rm -r conftest 2>/dev/null
-+mkdir conftest
-+cd conftest
-+echo "int some_variable = 0;" > conftest.$ac_ext
-+mkdir out
-+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
-+# that will create temporary files in the current directory regardless of
-+# the output directory. Thus, making CWD read-only will cause this test
-+# to fail, enabling locking or at least warning the user not to do parallel
-+# builds.
-+chmod -w .
-+save_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
-+compiler_c_o=no
-+if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s out/conftest.err; then
-+ lt_cv_compiler_c_o=no
-+ else
-+ lt_cv_compiler_c_o=yes
-+ fi
-+else
-+ # Append any errors to the config.log.
-+ cat out/conftest.err 1>&AC_FD_CC
-+ lt_cv_compiler_c_o=no
-+fi
-+CFLAGS="$save_CFLAGS"
-+chmod u+w .
-+$rm conftest* out/*
-+rmdir out
-+cd ..
-+rmdir conftest
-+$rm -r conftest 2>/dev/null
-+])
-+compiler_c_o=$lt_cv_compiler_c_o
-+AC_MSG_RESULT([$compiler_c_o])
-+
-+if test x"$compiler_c_o" = x"yes"; then
-+ # Check to see if we can write to a .lo
-+ AC_MSG_CHECKING([if $compiler supports -c -o file.lo])
-+ AC_CACHE_VAL([lt_cv_compiler_o_lo], [
-+ lt_cv_compiler_o_lo=no
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -c -o conftest.lo"
-+ save_objext="$ac_objext"
-+ ac_objext=lo
-+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s conftest.err; then
-+ lt_cv_compiler_o_lo=no
-+ else
-+ lt_cv_compiler_o_lo=yes
-+ fi
-+ ])
-+ ac_objext="$save_objext"
-+ CFLAGS="$save_CFLAGS"
-+ ])
-+ compiler_o_lo=$lt_cv_compiler_o_lo
-+ AC_MSG_RESULT([$compiler_o_lo])
-+else
-+ compiler_o_lo=no
-+fi
-+
-+# Check to see if we can do hard links to lock some files if needed
-+hard_links="nottested"
-+if test "$compiler_c_o" = no && test "$need_locks" != no; then
-+ # do not overwrite the value of need_locks provided by the user
-+ AC_MSG_CHECKING([if we can lock with hard links])
-+ hard_links=yes
-+ $rm conftest*
-+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
-+ touch conftest.a
-+ ln conftest.a conftest.b 2>&5 || hard_links=no
-+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
-+ AC_MSG_RESULT([$hard_links])
-+ if test "$hard_links" = no; then
-+ AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe])
-+ need_locks=warn
-+ fi
-+else
-+ need_locks=no
-+fi
-+
-+if test "$GCC" = yes; then
-+ # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
-+ AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions])
-+ echo "int some_variable = 0;" > conftest.$ac_ext
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
-+ compiler_rtti_exceptions=no
-+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s conftest.err; then
-+ compiler_rtti_exceptions=no
-+ else
-+ compiler_rtti_exceptions=yes
-+ fi
-+ ])
-+ CFLAGS="$save_CFLAGS"
-+ AC_MSG_RESULT([$compiler_rtti_exceptions])
-+
-+ if test "$compiler_rtti_exceptions" = "yes"; then
-+ no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
-+ else
-+ no_builtin_flag=' -fno-builtin'
-+ fi
-+fi
-+
-+# See if the linker supports building shared libraries.
-+AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries])
-+
-+allow_undefined_flag=
-+no_undefined_flag=
-+need_lib_prefix=unknown
-+need_version=unknown
-+# when you set need_version to no, make sure it does not cause -set_version
-+# flags to be left without arguments
-+archive_cmds=
-+archive_expsym_cmds=
-+old_archive_from_new_cmds=
-+old_archive_from_expsyms_cmds=
-+export_dynamic_flag_spec=
-+whole_archive_flag_spec=
-+thread_safe_flag_spec=
-+hardcode_into_libs=no
-+hardcode_libdir_flag_spec=
-+hardcode_libdir_separator=
-+hardcode_direct=no
-+hardcode_minus_L=no
-+hardcode_shlibpath_var=unsupported
-+runpath_var=
-+link_all_deplibs=unknown
-+always_export_symbols=no
-+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
-+# include_expsyms should be a list of space-separated symbols to be *always*
-+# included in the symbol list
-+include_expsyms=
-+# exclude_expsyms can be an egrep regular expression of symbols to exclude
-+# it will be wrapped by ` (' and `)$', so one must not match beginning or
-+# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-+# as well as any symbol that contains `d'.
-+exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
-+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-+# platforms (ab)use it in PIC code, but their linkers get confused if
-+# the symbol is explicitly referenced. Since portable code cannot
-+# rely on this symbol name, it's probably fine to never include it in
-+# preloaded symbol tables.
-+extract_expsyms_cmds=
-+
-+case $host_os in
-+cygwin* | mingw* | pw32*)
-+ # FIXME: the MSVC++ port hasn't been tested in a loooong time
-+ # When not using gcc, we currently assume that we are using
-+ # Microsoft Visual C++.
-+ if test "$GCC" != yes; then
-+ with_gnu_ld=no
-+ fi
-+ ;;
-+openbsd*)
-+ with_gnu_ld=no
-+ ;;
-+esac
-+
-+ld_shlibs=yes
-+if test "$with_gnu_ld" = yes; then
-+ # If archive_cmds runs LD, not CC, wlarc should be empty
-+ wlarc='${wl}'
-+
-+ # See if GNU ld supports shared libraries.
-+ case $host_os in
-+ aix3* | aix4* | aix5*)
-+ # On AIX, the GNU linker is very broken
-+ # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
-+ ld_shlibs=no
-+ cat <<EOF 1>&2
-+
-+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-+*** to be unable to reliably create shared libraries on AIX.
-+*** Therefore, libtool is disabling shared libraries support. If you
-+*** really care for shared libraries, you may want to modify your PATH
-+*** so that a non-GNU linker is found, and then restart.
-+
-+EOF
-+ ;;
-+
-+ amigaos*)
-+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+
-+ # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-+ # that the semantics of dynamic libraries on AmigaOS, at least up
-+ # to version 4, is to share data among multiple programs linked
-+ # with the same dynamic library. Since this doesn't match the
-+ # behavior of shared libraries on other platforms, we can use
-+ # them.
-+ ld_shlibs=no
-+ ;;
-+
-+ beos*)
-+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ allow_undefined_flag=unsupported
-+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
-+ # support --undefined. This deserves some investigation. FIXME
-+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ # hardcode_libdir_flag_spec is actually meaningless, as there is
-+ # no search path for DLLs.
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ allow_undefined_flag=unsupported
-+ always_export_symbols=yes
-+
-+ extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
-+ sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
-+ test -f $output_objdir/impgen.exe || (cd $output_objdir && \
-+ if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
-+ else $CC -o impgen impgen.c ; fi)~
-+ $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
-+
-+ old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
-+
-+ # cygwin and mingw dlls have different entry points and sets of symbols
-+ # to exclude.
-+ # FIXME: what about values for MSVC?
-+ dll_entry=__cygwin_dll_entry@12
-+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
-+ case $host_os in
-+ mingw*)
-+ # mingw values
-+ dll_entry=_DllMainCRTStartup@12
-+ dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
-+ ;;
-+ esac
-+
-+ # mingw and cygwin differ, and it's simplest to just exclude the union
-+ # of the two symbol sets.
-+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
-+
-+ # recent cygwin and mingw systems supply a stub DllMain which the user
-+ # can override, but on older systems we have to supply one (in ltdll.c)
-+ if test "x$lt_cv_need_dllmain" = "xyes"; then
-+ ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
-+ ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
-+ test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
-+ else
-+ ltdll_obj=
-+ ltdll_cmds=
-+ fi
-+
-+ # Extract the symbol export list from an `--export-all' def file,
-+ # then regenerate the def file from the symbol export list, so that
-+ # the compiled dll only exports the symbol export list.
-+ # Be careful not to strip the DATA tag left be newer dlltools.
-+ export_symbols_cmds="$ltdll_cmds"'
-+ $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
-+ sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
-+
-+ # If the export-symbols file already is a .def file (1st line
-+ # is EXPORTS), use it as is.
-+ # If DATA tags from a recent dlltool are present, honour them!
-+ archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
-+ cp $export_symbols $output_objdir/$soname-def;
-+ else
-+ echo EXPORTS > $output_objdir/$soname-def;
-+ _lt_hint=1;
-+ cat $export_symbols | while read symbol; do
-+ set dummy \$symbol;
-+ case \[$]# in
-+ 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
-+ 4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
-+ *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
-+ esac;
-+ _lt_hint=`expr 1 + \$_lt_hint`;
-+ done;
-+ fi~
-+ '"$ltdll_cmds"'
-+ $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
-+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
-+ $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
-+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
-+ $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
-+ ;;
-+
-+ netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-+ wlarc=
-+ else
-+ archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ fi
-+ ;;
-+
-+ solaris* | sysv5*)
-+ if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
-+ ld_shlibs=no
-+ cat <<EOF 1>&2
-+
-+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-+*** create shared libraries on Solaris systems. Therefore, libtool
-+*** is disabling shared libraries support. We urge you to upgrade GNU
-+*** binutils to release 2.9.1 or newer. Another option is to modify
-+*** your PATH or compiler configuration so that the native linker is
-+*** used, and then restart.
-+
-+EOF
-+ elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+
-+ sunos4*)
-+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ wlarc=
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ *)
-+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+ esac
-+
-+ if test "$ld_shlibs" = yes; then
-+ runpath_var=LD_RUN_PATH
-+ hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
-+ export_dynamic_flag_spec='${wl}--export-dynamic'
-+ case $host_os in
-+ cygwin* | mingw* | pw32*)
-+ # dlltool doesn't understand --whole-archive et. al.
-+ whole_archive_flag_spec=
-+ ;;
-+ *)
-+ # ancient GNU ld didn't support --whole-archive et. al.
-+ if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
-+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-+ else
-+ whole_archive_flag_spec=
-+ fi
-+ ;;
-+ esac
-+ fi
-+else
-+ # PORTME fill in a description of your system's linker (not GNU ld)
-+ case $host_os in
-+ aix3*)
-+ allow_undefined_flag=unsupported
-+ always_export_symbols=yes
-+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
-+ # Note: this linker hardcodes the directories in LIBPATH if there
-+ # are no directories specified by -L.
-+ hardcode_minus_L=yes
-+ if test "$GCC" = yes && test -z "$link_static_flag"; then
-+ # Neither direct hardcoding nor static linking is supported with a
-+ # broken collect2.
-+ hardcode_direct=unsupported
-+ fi
-+ ;;
-+
-+ aix4* | aix5*)
-+ if test "$host_cpu" = ia64; then
-+ # On IA64, the linker does run time linking by default, so we don't
-+ # have to do anything special.
-+ aix_use_runtimelinking=no
-+ exp_sym_flag='-Bexport'
-+ no_entry_flag=""
-+ else
-+ aix_use_runtimelinking=no
-+
-+ # Test if we are trying to use run time linking or normal
-+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-+ # need to do runtime linking.
-+ case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
-+ for ld_flag in $LDFLAGS; do
-+ case $ld_flag in
-+ *-brtl*)
-+ aix_use_runtimelinking=yes
-+ break
-+ ;;
-+ esac
-+ done
-+ esac
-+
-+ exp_sym_flag='-bexport'
-+ no_entry_flag='-bnoentry'
-+ fi
-+
-+ # When large executables or shared objects are built, AIX ld can
-+ # have problems creating the table of contents. If linking a library
-+ # or program results in "error TOC overflow" add -mminimal-toc to
-+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
-+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-+
-+ hardcode_direct=yes
-+ archive_cmds=''
-+ hardcode_libdir_separator=':'
-+ if test "$GCC" = yes; then
-+ case $host_os in aix4.[[012]]|aix4.[[012]].*)
-+ collect2name=`${CC} -print-prog-name=collect2`
-+ if test -f "$collect2name" && \
-+ strings "$collect2name" | grep resolve_lib_name >/dev/null
-+ then
-+ # We have reworked collect2
-+ hardcode_direct=yes
-+ else
-+ # We have old collect2
-+ hardcode_direct=unsupported
-+ # It fails to find uninstalled libraries when the uninstalled
-+ # path is not listed in the libpath. Setting hardcode_minus_L
-+ # to unsupported forces relinking
-+ hardcode_minus_L=yes
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_libdir_separator=
-+ fi
-+ esac
-+
-+ shared_flag='-shared'
-+ else
-+ # not using gcc
-+ if test "$host_cpu" = ia64; then
-+ shared_flag='${wl}-G'
-+ else
-+ if test "$aix_use_runtimelinking" = yes; then
-+ shared_flag='${wl}-G'
-+ else
-+ shared_flag='${wl}-bM:SRE'
-+ fi
-+ fi
-+ fi
-+
-+ # It seems that -bexpall can do strange things, so it is better to
-+ # generate a list of symbols to export.
-+ always_export_symbols=yes
-+ if test "$aix_use_runtimelinking" = yes; then
-+ # Warning - without using the other runtime loading flags (-brtl),
-+ # -berok will link without error, but may produce a broken library.
-+ allow_undefined_flag='-berok'
-+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
-+ archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-+ else
-+ if test "$host_cpu" = ia64; then
-+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
-+ allow_undefined_flag="-z nodefs"
-+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
-+ else
-+ hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
-+ # Warning - without using the other run time loading flags,
-+ # -berok will link without error, but may produce a broken library.
-+ allow_undefined_flag='${wl}-berok'
-+ # This is a bit strange, but is similar to how AIX traditionally builds
-+ # it's shared libraries.
-+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname'
-+ fi
-+ fi
-+ ;;
-+
-+ amigaos*)
-+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+ # see comment about different semantics on the GNU ld section
-+ ld_shlibs=no
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ # When not using gcc, we currently assume that we are using
-+ # Microsoft Visual C++.
-+ # hardcode_libdir_flag_spec is actually meaningless, as there is
-+ # no search path for DLLs.
-+ hardcode_libdir_flag_spec=' '
-+ allow_undefined_flag=unsupported
-+ # Tell ltmain to make .lib files, not .a files.
-+ libext=lib
-+ # FIXME: Setting linknames here is a bad hack.
-+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
-+ # The linker will automatically build a .lib file if we build a DLL.
-+ old_archive_from_new_cmds='true'
-+ # FIXME: Should let the user specify the lib program.
-+ old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
-+ fix_srcfile_path='`cygpath -w "$srcfile"`'
-+ ;;
-+
-+ darwin* | rhapsody*)
-+ case "$host_os" in
-+ rhapsody* | darwin1.[[012]])
-+ allow_undefined_flag='-undefined suppress'
-+ ;;
-+ *) # Darwin 1.3 on
-+ allow_undefined_flag='-flat_namespace -undefined suppress'
-+ ;;
-+ esac
-+ # FIXME: Relying on posixy $() will cause problems for
-+ # cross-compilation, but unfortunately the echo tests do not
-+ # yet detect zsh echo's removal of \ escapes. Also zsh mangles
-+ # `"' quotes if we put them in here... so don't!
-+ archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
-+ # We need to add '_' to the symbols in $export_symbols first
-+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ whole_archive_flag_spec='-all_load $convenience'
-+ ;;
-+
-+ freebsd1*)
-+ ld_shlibs=no
-+ ;;
-+
-+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
-+ # support. Future versions do this automatically, but an explicit c++rt0.o
-+ # does not break anything, and helps significantly (at the cost of a little
-+ # extra space).
-+ freebsd2.2*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
-+ freebsd2*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-+ freebsd*)
-+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ hpux9* | hpux10* | hpux11*)
-+ case $host_os in
-+ hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
-+ *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
-+ esac
-+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes # Not in the search PATH, but as the default
-+ # location of the library.
-+ export_dynamic_flag_spec='${wl}-E'
-+ ;;
-+
-+ irix5* | irix6* | nonstopux*)
-+ if test "$GCC" = yes; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ else
-+ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='-rpath $libdir'
-+ fi
-+ hardcode_libdir_separator=:
-+ link_all_deplibs=yes
-+ ;;
-+
-+ netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
-+ else
-+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
-+ fi
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ newsos6)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ openbsd*)
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-+ export_dynamic_flag_spec='${wl}-E'
-+ else
-+ case "$host_os" in
-+ openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ ;;
-+ *)
-+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-+ ;;
-+ esac
-+ fi
-+ ;;
-+
-+ os2*)
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+ allow_undefined_flag=unsupported
-+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
-+ ;;
-+
-+ osf3*)
-+ if test "$GCC" = yes; then
-+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ else
-+ allow_undefined_flag=' -expect_unresolved \*'
-+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ fi
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ ;;
-+
-+ osf4* | osf5*) # as osf3* with the addition of -msym flag
-+ if test "$GCC" = yes; then
-+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ else
-+ allow_undefined_flag=' -expect_unresolved \*'
-+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
-+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
-+
-+ #Both c and cxx compiler support -rpath directly
-+ hardcode_libdir_flag_spec='-rpath $libdir'
-+ fi
-+ hardcode_libdir_separator=:
-+ ;;
-+
-+ sco3.2v5*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ runpath_var=LD_RUN_PATH
-+ hardcode_runpath_var=yes
-+ export_dynamic_flag_spec='${wl}-Bexport'
-+ ;;
-+
-+ solaris*)
-+ # gcc --version < 3.0 without binutils cannot create self contained
-+ # shared libraries reliably, requiring libgcc.a to resolve some of
-+ # the object symbols generated in some cases. Libraries that use
-+ # assert need libgcc.a to resolve __eprintf, for example. Linking
-+ # a copy of libgcc.a into every shared library to guarantee resolving
-+ # such symbols causes other problems: According to Tim Van Holder
-+ # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
-+ # (to the application) exception stack for one thing.
-+ no_undefined_flag=' -z defs'
-+ if test "$GCC" = yes; then
-+ case `$CC --version 2>/dev/null` in
-+ [[12]].*)
-+ cat <<EOF 1>&2
-+
-+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
-+*** create self contained shared libraries on Solaris systems, without
-+*** introducing a dependency on libgcc.a. Therefore, libtool is disabling
-+*** -no-undefined support, which will at least allow you to build shared
-+*** libraries. However, you may find that when you link such libraries
-+*** into an application without using GCC, you have to manually add
-+*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to
-+*** upgrade to a newer version of GCC. Another option is to rebuild your
-+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
-+
-+EOF
-+ no_undefined_flag=
-+ ;;
-+ esac
-+ fi
-+ # $CC -shared without GNU ld will not create a library from C++
-+ # object files and a static libstdc++, better avoid it by now
-+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_shlibpath_var=no
-+ case $host_os in
-+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
-+ *) # Supported since Solaris 2.6 (maybe 2.5.1?)
-+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
-+ esac
-+ link_all_deplibs=yes
-+ ;;
-+
-+ sunos4*)
-+ if test "x$host_vendor" = xsequent; then
-+ # Use $CC to link under sequent, because it throws in some extra .o
-+ # files that make .init and .fini sections work.
-+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
-+ else
-+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
-+ fi
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4)
-+ case $host_vendor in
-+ sni)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes # is this really true???
-+ ;;
-+ siemens)
-+ ## LD is ld it makes a PLAMLIB
-+ ## CC just makes a GrossModule.
-+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-+ reload_cmds='$CC -r -o $output$reload_objs'
-+ hardcode_direct=no
-+ ;;
-+ motorola)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie
-+ ;;
-+ esac
-+ runpath_var='LD_RUN_PATH'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4.3*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ export_dynamic_flag_spec='-Bexport'
-+ ;;
-+
-+ sysv5*)
-+ no_undefined_flag=' -z text'
-+ # $CC -shared without GNU ld will not create a library from C++
-+ # object files and a static libstdc++, better avoid it by now
-+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
-+ hardcode_libdir_flag_spec=
-+ hardcode_shlibpath_var=no
-+ runpath_var='LD_RUN_PATH'
-+ ;;
-+
-+ uts4*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ dgux*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4*MP*)
-+ if test -d /usr/nec; then
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ runpath_var=LD_RUN_PATH
-+ hardcode_runpath_var=yes
-+ ld_shlibs=yes
-+ fi
-+ ;;
-+
-+ sysv4.2uw2*)
-+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_minus_L=no
-+ hardcode_shlibpath_var=no
-+ hardcode_runpath_var=yes
-+ runpath_var=LD_RUN_PATH
-+ ;;
-+
-+ sysv5uw7* | unixware7*)
-+ no_undefined_flag='${wl}-z ${wl}text'
-+ if test "$GCC" = yes; then
-+ archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-+ else
-+ archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-+ fi
-+ runpath_var='LD_RUN_PATH'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ *)
-+ ld_shlibs=no
-+ ;;
-+ esac
-+fi
-+AC_MSG_RESULT([$ld_shlibs])
-+test "$ld_shlibs" = no && can_build_shared=no
-+
-+# Check hardcoding attributes.
-+AC_MSG_CHECKING([how to hardcode library paths into programs])
-+hardcode_action=
-+if test -n "$hardcode_libdir_flag_spec" || \
-+ test -n "$runpath_var"; then
-+
-+ # We can hardcode non-existant directories.
-+ if test "$hardcode_direct" != no &&
-+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
-+ # have to relink, otherwise we might link with an installed library
-+ # when we should be linking with a yet-to-be-installed one
-+ ## test "$hardcode_shlibpath_var" != no &&
-+ test "$hardcode_minus_L" != no; then
-+ # Linking always hardcodes the temporary library directory.
-+ hardcode_action=relink
-+ else
-+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
-+ hardcode_action=immediate
-+ fi
-+else
-+ # We cannot hardcode anything, or else we can only hardcode existing
-+ # directories.
-+ hardcode_action=unsupported
-+fi
-+AC_MSG_RESULT([$hardcode_action])
-+
-+striplib=
-+old_striplib=
-+AC_MSG_CHECKING([whether stripping libraries is possible])
-+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
-+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-+ AC_MSG_RESULT([yes])
-+else
-+ AC_MSG_RESULT([no])
-+fi
-+
-+reload_cmds='$LD$reload_flag -o $output$reload_objs'
-+test -z "$deplibs_check_method" && deplibs_check_method=unknown
-+
-+# PORTME Fill in your ld.so characteristics
-+AC_MSG_CHECKING([dynamic linker characteristics])
-+library_names_spec=
-+libname_spec='lib$name'
-+soname_spec=
-+postinstall_cmds=
-+postuninstall_cmds=
-+finish_cmds=
-+finish_eval=
-+shlibpath_var=
-+shlibpath_overrides_runpath=unknown
-+version_type=none
-+dynamic_linker="$host_os ld.so"
-+sys_lib_dlsearch_path_spec="/lib /usr/lib"
-+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-+
-+case $host_os in
-+aix3*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix $libname.a'
-+ shlibpath_var=LIBPATH
-+
-+ # AIX has no versioning support, so we append a major version to the name.
-+ soname_spec='${libname}${release}.so$major'
-+ ;;
-+
-+aix4* | aix5*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ hardcode_into_libs=yes
-+ if test "$host_cpu" = ia64; then
-+ # AIX 5 supports IA64
-+ library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ else
-+ # With GCC up to 2.95.x, collect2 would create an import file
-+ # for dependence libraries. The import file would start with
-+ # the line `#! .'. This would cause the generated library to
-+ # depend on `.', always an invalid library. This was fixed in
-+ # development snapshots of GCC prior to 3.0.
-+ case $host_os in
-+ aix4 | aix4.[[01]] | aix4.[[01]].*)
-+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
-+ echo ' yes '
-+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
-+ :
-+ else
-+ can_build_shared=no
-+ fi
-+ ;;
-+ esac
-+ # AIX (on Power*) has no versioning support, so currently we can
-+ # not hardcode correct soname into executable. Probably we can
-+ # add versioning support to collect2, so additional links can
-+ # be useful in future.
-+ if test "$aix_use_runtimelinking" = yes; then
-+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
-+ # instead of lib<name>.a to let people know that these are not
-+ # typical AIX shared libraries.
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ else
-+ # We preserve .a as extension for shared libraries through AIX4.2
-+ # and later when we are not doing run time linking.
-+ library_names_spec='${libname}${release}.a $libname.a'
-+ soname_spec='${libname}${release}.so$major'
-+ fi
-+ shlibpath_var=LIBPATH
-+ fi
-+ hardcode_into_libs=yes
-+ ;;
-+
-+amigaos*)
-+ library_names_spec='$libname.ixlibrary $libname.a'
-+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
-+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
-+ ;;
-+
-+beos*)
-+ library_names_spec='${libname}.so'
-+ dynamic_linker="$host_os ld.so"
-+ shlibpath_var=LIBRARY_PATH
-+ ;;
-+
-+bsdi4*)
-+ version_type=linux
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
-+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
-+ export_dynamic_flag_spec=-rdynamic
-+ # the default ld.so.conf also contains /usr/contrib/lib and
-+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
-+ # libtool to hard-code these into programs
-+ ;;
-+
-+cygwin* | mingw* | pw32*)
-+ version_type=windows
-+ need_version=no
-+ need_lib_prefix=no
-+ case $GCC,$host_os in
-+ yes,cygwin*)
-+ library_names_spec='$libname.dll.a'
-+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
-+ postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
-+ dldir=$destdir/`dirname \$dlpath`~
-+ test -d \$dldir || mkdir -p \$dldir~
-+ $install_prog .libs/$dlname \$dldir/$dlname'
-+ postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
-+ dlpath=$dir/\$dldll~
-+ $rm \$dlpath'
-+ ;;
-+ yes,mingw*)
-+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
-+ sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"`
-+ ;;
-+ yes,pw32*)
-+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
-+ ;;
-+ *)
-+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib'
-+ ;;
-+ esac
-+ dynamic_linker='Win32 ld.exe'
-+ # FIXME: first we should search . and the directory the executable is in
-+ shlibpath_var=PATH
-+ ;;
-+
-+darwin* | rhapsody*)
-+ dynamic_linker="$host_os dyld"
-+ version_type=darwin
-+ need_lib_prefix=no
-+ need_version=no
-+ # FIXME: Relying on posixy $() will cause problems for
-+ # cross-compilation, but unfortunately the echo tests do not
-+ # yet detect zsh echo's removal of \ escapes.
-+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
-+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
-+ shlibpath_overrides_runpath=yes
-+ shlibpath_var=DYLD_LIBRARY_PATH
-+ ;;
-+
-+freebsd1*)
-+ dynamic_linker=no
-+ ;;
-+
-+freebsd*-gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=no
-+ hardcode_into_libs=yes
-+ dynamic_linker='GNU/FreeBSD ld.so'
-+ ;;
-+
-+freebsd*)
-+ objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
-+ version_type=freebsd-$objformat
-+ case $version_type in
-+ freebsd-elf*)
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
-+ need_version=no
-+ need_lib_prefix=no
-+ ;;
-+ freebsd-*)
-+ library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
-+ need_version=yes
-+ ;;
-+ esac
-+ shlibpath_var=LD_LIBRARY_PATH
-+ case $host_os in
-+ freebsd2*)
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+ *)
-+ shlibpath_overrides_runpath=no
-+ hardcode_into_libs=yes
-+ ;;
-+ esac
-+ ;;
-+
-+gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ hardcode_into_libs=yes
-+ ;;
-+
-+hpux9* | hpux10* | hpux11*)
-+ # Give a soname corresponding to the major version so that dld.sl refuses to
-+ # link against other versions.
-+ dynamic_linker="$host_os dld.sl"
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ shlibpath_var=SHLIB_PATH
-+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-+ library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
-+ soname_spec='${libname}${release}.sl$major'
-+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
-+ postinstall_cmds='chmod 555 $lib'
-+ ;;
-+
-+irix5* | irix6* | nonstopux*)
-+ case $host_os in
-+ nonstopux*) version_type=nonstopux ;;
-+ *) version_type=irix ;;
-+ esac
-+ need_lib_prefix=no
-+ need_version=no
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
-+ case $host_os in
-+ irix5* | nonstopux*)
-+ libsuff= shlibsuff=
-+ ;;
-+ *)
-+ case $LD in # libtool.m4 will add one of these switches to LD
-+ *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
-+ *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
-+ *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
-+ *) libsuff= shlibsuff= libmagic=never-match;;
-+ esac
-+ ;;
-+ esac
-+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
-+ shlibpath_overrides_runpath=no
-+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
-+ ;;
-+
-+# No shared lib support for Linux oldld, aout, or coff.
-+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
-+ dynamic_linker=no
-+ ;;
-+
-+# This must be Linux ELF.
-+linux-gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=no
-+ # This implies no fast_install, which is unacceptable.
-+ # Some rework will be needed to allow for fast_install
-+ # before this can be enabled.
-+ hardcode_into_libs=yes
-+
-+ # We used to test for /lib/ld.so.1 and disable shared libraries on
-+ # powerpc, because MkLinux only supported shared libraries with the
-+ # GNU dynamic linker. Since this was broken with cross compilers,
-+ # most powerpc-linux boxes support dynamic linking these days and
-+ # people can always --disable-shared, the test was removed, and we
-+ # assume the GNU/Linux dynamic linker is in use.
-+ dynamic_linker='GNU/Linux ld.so'
-+ ;;
-+
-+netbsd*)
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-+ dynamic_linker='NetBSD (a.out) ld.so'
-+ else
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
-+ soname_spec='${libname}${release}.so$major'
-+ dynamic_linker='NetBSD ld.elf_so'
-+ fi
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ hardcode_into_libs=yes
-+ ;;
-+
-+newsos6)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+
-+openbsd*)
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ case "$host_os" in
-+ openbsd2.[[89]] | openbsd2.[[89]].*)
-+ shlibpath_overrides_runpath=no
-+ ;;
-+ *)
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+ esac
-+ else
-+ shlibpath_overrides_runpath=yes
-+ fi
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+os2*)
-+ libname_spec='$name'
-+ need_lib_prefix=no
-+ library_names_spec='$libname.dll $libname.a'
-+ dynamic_linker='OS/2 ld.exe'
-+ shlibpath_var=LIBPATH
-+ ;;
-+
-+osf3* | osf4* | osf5*)
-+ version_type=osf
-+ need_version=no
-+ need_lib_prefix=no
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
-+ hardcode_into_libs=yes
-+ ;;
-+
-+sco3.2v5*)
-+ version_type=osf
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+solaris*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ hardcode_into_libs=yes
-+ # ldd complains unless libraries are executable
-+ postinstall_cmds='chmod +x $lib'
-+ ;;
-+
-+sunos4*)
-+ version_type=sunos
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ if test "$with_gnu_ld" = yes; then
-+ need_lib_prefix=no
-+ fi
-+ need_version=yes
-+ ;;
-+
-+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ case $host_vendor in
-+ sni)
-+ shlibpath_overrides_runpath=no
-+ need_lib_prefix=no
-+ export_dynamic_flag_spec='${wl}-Blargedynsym'
-+ runpath_var=LD_RUN_PATH
-+ ;;
-+ siemens)
-+ need_lib_prefix=no
-+ ;;
-+ motorola)
-+ need_lib_prefix=no
-+ need_version=no
-+ shlibpath_overrides_runpath=no
-+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
-+ ;;
-+ esac
-+ ;;
-+
-+uts4*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+dgux*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+sysv4*MP*)
-+ if test -d /usr/nec ;then
-+ version_type=linux
-+ library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
-+ soname_spec='$libname.so.$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ fi
-+ ;;
-+
-+*)
-+ dynamic_linker=no
-+ ;;
-+esac
-+AC_MSG_RESULT([$dynamic_linker])
-+test "$dynamic_linker" = no && can_build_shared=no
-+
-+# Report the final consequences.
-+AC_MSG_CHECKING([if libtool supports shared libraries])
-+AC_MSG_RESULT([$can_build_shared])
-+
-+AC_MSG_CHECKING([whether to build shared libraries])
-+test "$can_build_shared" = "no" && enable_shared=no
-+
-+# On AIX, shared libraries and static libraries use the same namespace, and
-+# are all built from PIC.
-+case "$host_os" in
-+aix3*)
-+ test "$enable_shared" = yes && enable_static=no
-+ if test -n "$RANLIB"; then
-+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
-+ postinstall_cmds='$RANLIB $lib'
-+ fi
-+ ;;
-+
-+aix4*)
-+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-+ test "$enable_shared" = yes && enable_static=no
-+ fi
-+ ;;
-+esac
-+AC_MSG_RESULT([$enable_shared])
-+
-+AC_MSG_CHECKING([whether to build static libraries])
-+# Make sure either enable_shared or enable_static is yes.
-+test "$enable_shared" = yes || enable_static=yes
-+AC_MSG_RESULT([$enable_static])
-+
-+if test "$hardcode_action" = relink; then
-+ # Fast installation is not supported
-+ enable_fast_install=no
-+elif test "$shlibpath_overrides_runpath" = yes ||
-+ test "$enable_shared" = no; then
-+ # Fast installation is not necessary
-+ enable_fast_install=needless
-+fi
-+
-+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-+if test "$GCC" = yes; then
-+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-+fi
-+
-+AC_LIBTOOL_DLOPEN_SELF
-+
-+if test "$enable_shared" = yes && test "$GCC" = yes; then
-+ case $archive_cmds in
-+ *'~'*)
-+ # FIXME: we may have to deal with multi-command sequences.
-+ ;;
-+ '$CC '*)
-+ # Test whether the compiler implicitly links with -lc since on some
-+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
-+ # to ld, don't add -lc before -lgcc.
-+ AC_MSG_CHECKING([whether -lc should be explicitly linked in])
-+ AC_CACHE_VAL([lt_cv_archive_cmds_need_lc],
-+ [$rm conftest*
-+ echo 'static int dummy;' > conftest.$ac_ext
-+
-+ if AC_TRY_EVAL(ac_compile); then
-+ soname=conftest
-+ lib=conftest
-+ libobjs=conftest.$ac_objext
-+ deplibs=
-+ wl=$lt_cv_prog_cc_wl
-+ compiler_flags=-v
-+ linker_flags=-v
-+ verstring=
-+ output_objdir=.
-+ libname=conftest
-+ save_allow_undefined_flag=$allow_undefined_flag
-+ allow_undefined_flag=
-+ if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
-+ then
-+ lt_cv_archive_cmds_need_lc=no
-+ else
-+ lt_cv_archive_cmds_need_lc=yes
-+ fi
-+ allow_undefined_flag=$save_allow_undefined_flag
-+ else
-+ cat conftest.err 1>&5
-+ fi])
-+ AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc])
-+ ;;
-+ esac
-+fi
-+need_lc=${lt_cv_archive_cmds_need_lc-yes}
-+
-+# The second clause should only fire when bootstrapping the
-+# libtool distribution, otherwise you forgot to ship ltmain.sh
-+# with your package, and you will get complaints that there are
-+# no rules to generate ltmain.sh.
-+if test -f "$ltmain"; then
-+ :
-+else
-+ # If there is no Makefile yet, we rely on a make rule to execute
-+ # `config.status --recheck' to rerun these tests and create the
-+ # libtool script then.
-+ test -f Makefile && make "$ltmain"
-+fi
-+
-+if test -f "$ltmain"; then
-+ trap "$rm \"${ofile}T\"; exit 1" 1 2 15
-+ $rm -f "${ofile}T"
-+
-+ echo creating $ofile
-+
-+ # Now quote all the things that may contain metacharacters while being
-+ # careful not to overquote the AC_SUBSTed values. We take copies of the
-+ # variables and quote the copies for generation of the libtool script.
-+ for var in echo old_CC old_CFLAGS SED \
-+ AR AR_FLAGS CC LD LN_S NM SHELL \
-+ reload_flag reload_cmds wl \
-+ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
-+ thread_safe_flag_spec whole_archive_flag_spec libname_spec \
-+ library_names_spec soname_spec \
-+ RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
-+ old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
-+ postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
-+ old_striplib striplib file_magic_cmd export_symbols_cmds \
-+ deplibs_check_method allow_undefined_flag no_undefined_flag \
-+ finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
-+ global_symbol_to_c_name_address \
-+ hardcode_libdir_flag_spec hardcode_libdir_separator \
-+ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
-+ compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
-+
-+ case $var in
-+ reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
-+ old_postinstall_cmds | old_postuninstall_cmds | \
-+ export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
-+ extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
-+ postinstall_cmds | postuninstall_cmds | \
-+ finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
-+ # Double-quote double-evaled strings.
-+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
-+ ;;
-+ *)
-+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
-+ ;;
-+ esac
-+ done
-+
-+ cat <<__EOF__ > "${ofile}T"
-+#! $SHELL
-+
-+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
-+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-+#
-+# Copyright (C) 1996-2000 Free Software Foundation, Inc.
-+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful, but
-+# WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+# General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+#
-+# As a special exception to the GNU General Public License, if you
-+# distribute this file as part of a program that contains a
-+# configuration script generated by Autoconf, you may include it under
-+# the same distribution terms that you use for the rest of that program.
-+
-+# A sed that does not truncate output.
-+SED=$lt_SED
-+
-+# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-+Xsed="${SED} -e s/^X//"
-+
-+# The HP-UX ksh and POSIX shell print the target directory to stdout
-+# if CDPATH is set.
-+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-+
-+# ### BEGIN LIBTOOL CONFIG
-+
-+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-+
-+# Shell to use when invoking shell scripts.
-+SHELL=$lt_SHELL
-+
-+# Whether or not to build shared libraries.
-+build_libtool_libs=$enable_shared
-+
-+# Whether or not to build static libraries.
-+build_old_libs=$enable_static
-+
-+# Whether or not to add -lc for building shared libraries.
-+build_libtool_need_lc=$need_lc
-+
-+# Whether or not to optimize for fast installation.
-+fast_install=$enable_fast_install
-+
-+# The host system.
-+host_alias=$host_alias
-+host=$host
-+
-+# An echo program that does not interpret backslashes.
-+echo=$lt_echo
-+
-+# The archiver.
-+AR=$lt_AR
-+AR_FLAGS=$lt_AR_FLAGS
-+
-+# The default C compiler.
-+CC=$lt_CC
-+
-+# Is the compiler the GNU C compiler?
-+with_gcc=$GCC
-+
-+# The linker used to build libraries.
-+LD=$lt_LD
-+
-+# Whether we need hard or soft links.
-+LN_S=$lt_LN_S
-+
-+# A BSD-compatible nm program.
-+NM=$lt_NM
-+
-+# A symbol stripping program
-+STRIP=$STRIP
-+
-+# Used to examine libraries when file_magic_cmd begins "file"
-+MAGIC_CMD=$MAGIC_CMD
-+
-+# Used on cygwin: DLL creation program.
-+DLLTOOL="$DLLTOOL"
-+
-+# Used on cygwin: object dumper.
-+OBJDUMP="$OBJDUMP"
-+
-+# Used on cygwin: assembler.
-+AS="$AS"
-+
-+# The name of the directory that contains temporary libtool files.
-+objdir=$objdir
-+
-+# How to create reloadable object files.
-+reload_flag=$lt_reload_flag
-+reload_cmds=$lt_reload_cmds
-+
-+# How to pass a linker flag through the compiler.
-+wl=$lt_wl
-+
-+# Object file suffix (normally "o").
-+objext="$ac_objext"
-+
-+# Old archive suffix (normally "a").
-+libext="$libext"
-+
-+# Executable file suffix (normally "").
-+exeext="$exeext"
-+
-+# Additional compiler flags for building library objects.
-+pic_flag=$lt_pic_flag
-+pic_mode=$pic_mode
-+
-+# Does compiler simultaneously support -c and -o options?
-+compiler_c_o=$lt_compiler_c_o
-+
-+# Can we write directly to a .lo ?
-+compiler_o_lo=$lt_compiler_o_lo
-+
-+# Must we lock files when doing compilation ?
-+need_locks=$lt_need_locks
-+
-+# Do we need the lib prefix for modules?
-+need_lib_prefix=$need_lib_prefix
-+
-+# Do we need a version for libraries?
-+need_version=$need_version
-+
-+# Whether dlopen is supported.
-+dlopen_support=$enable_dlopen
-+
-+# Whether dlopen of programs is supported.
-+dlopen_self=$enable_dlopen_self
-+
-+# Whether dlopen of statically linked programs is supported.
-+dlopen_self_static=$enable_dlopen_self_static
-+
-+# Compiler flag to prevent dynamic linking.
-+link_static_flag=$lt_link_static_flag
-+
-+# Compiler flag to turn off builtin functions.
-+no_builtin_flag=$lt_no_builtin_flag
-+
-+# Compiler flag to allow reflexive dlopens.
-+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
-+
-+# Compiler flag to generate shared objects directly from archives.
-+whole_archive_flag_spec=$lt_whole_archive_flag_spec
-+
-+# Compiler flag to generate thread-safe objects.
-+thread_safe_flag_spec=$lt_thread_safe_flag_spec
-+
-+# Library versioning type.
-+version_type=$version_type
-+
-+# Format of library name prefix.
-+libname_spec=$lt_libname_spec
-+
-+# List of archive names. First name is the real one, the rest are links.
-+# The last name is the one that the linker finds with -lNAME.
-+library_names_spec=$lt_library_names_spec
-+
-+# The coded name of the library, if different from the real name.
-+soname_spec=$lt_soname_spec
-+
-+# Commands used to build and install an old-style archive.
-+RANLIB=$lt_RANLIB
-+old_archive_cmds=$lt_old_archive_cmds
-+old_postinstall_cmds=$lt_old_postinstall_cmds
-+old_postuninstall_cmds=$lt_old_postuninstall_cmds
-+
-+# Create an old-style archive from a shared archive.
-+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
-+
-+# Create a temporary old-style archive to link instead of a shared archive.
-+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
-+
-+# Commands used to build and install a shared archive.
-+archive_cmds=$lt_archive_cmds
-+archive_expsym_cmds=$lt_archive_expsym_cmds
-+postinstall_cmds=$lt_postinstall_cmds
-+postuninstall_cmds=$lt_postuninstall_cmds
-+
-+# Commands to strip libraries.
-+old_striplib=$lt_old_striplib
-+striplib=$lt_striplib
-+
-+# Method to check whether dependent libraries are shared objects.
-+deplibs_check_method=$lt_deplibs_check_method
-+
-+# Command to use when deplibs_check_method == file_magic.
-+file_magic_cmd=$lt_file_magic_cmd
-+
-+# Flag that allows shared libraries with undefined symbols to be built.
-+allow_undefined_flag=$lt_allow_undefined_flag
-+
-+# Flag that forces no undefined symbols.
-+no_undefined_flag=$lt_no_undefined_flag
-+
-+# Commands used to finish a libtool library installation in a directory.
-+finish_cmds=$lt_finish_cmds
-+
-+# Same as above, but a single script fragment to be evaled but not shown.
-+finish_eval=$lt_finish_eval
-+
-+# Take the output of nm and produce a listing of raw symbols and C names.
-+global_symbol_pipe=$lt_global_symbol_pipe
-+
-+# Transform the output of nm in a proper C declaration
-+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
-+
-+# Transform the output of nm in a C name address pair
-+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
-+
-+# This is the shared library runtime path variable.
-+runpath_var=$runpath_var
-+
-+# This is the shared library path variable.
-+shlibpath_var=$shlibpath_var
-+
-+# Is shlibpath searched before the hard-coded library search path?
-+shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-+
-+# How to hardcode a shared library path into an executable.
-+hardcode_action=$hardcode_action
-+
-+# Whether we should hardcode library paths into libraries.
-+hardcode_into_libs=$hardcode_into_libs
-+
-+# Flag to hardcode \$libdir into a binary during linking.
-+# This must work even if \$libdir does not exist.
-+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
-+
-+# Whether we need a single -rpath flag with a separated argument.
-+hardcode_libdir_separator=$lt_hardcode_libdir_separator
-+
-+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_direct=$hardcode_direct
-+
-+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_minus_L=$hardcode_minus_L
-+
-+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
-+# the resulting binary.
-+hardcode_shlibpath_var=$hardcode_shlibpath_var
-+
-+# Variables whose values should be saved in libtool wrapper scripts and
-+# restored at relink time.
-+variables_saved_for_relink="$variables_saved_for_relink"
-+
-+# Whether libtool must link a program against all its dependency libraries.
-+link_all_deplibs=$link_all_deplibs
-+
-+# Compile-time system search path for libraries
-+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
-+
-+# Run-time system search path for libraries
-+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-+
-+# Fix the shell variable \$srcfile for the compiler.
-+fix_srcfile_path="$fix_srcfile_path"
-+
-+# Set to yes if exported symbols are required.
-+always_export_symbols=$always_export_symbols
-+
-+# The commands to list exported symbols.
-+export_symbols_cmds=$lt_export_symbols_cmds
-+
-+# The commands to extract the exported symbol list from a shared archive.
-+extract_expsyms_cmds=$lt_extract_expsyms_cmds
-+
-+# Symbols that should not be listed in the preloaded symbols.
-+exclude_expsyms=$lt_exclude_expsyms
-+
-+# Symbols that must always be exported.
-+include_expsyms=$lt_include_expsyms
-+
-+# ### END LIBTOOL CONFIG
-+
-+__EOF__
-+
-+ case $host_os in
-+ aix3*)
-+ cat <<\EOF >> "${ofile}T"
-+
-+# AIX sometimes has problems with the GCC collect2 program. For some
-+# reason, if we set the COLLECT_NAMES environment variable, the problems
-+# vanish in a puff of smoke.
-+if test "X${COLLECT_NAMES+set}" != Xset; then
-+ COLLECT_NAMES=
-+ export COLLECT_NAMES
-+fi
-+EOF
-+ ;;
-+ esac
-+
-+ case $host_os in
-+ cygwin* | mingw* | pw32* | os2*)
-+ cat <<'EOF' >> "${ofile}T"
-+ # This is a source program that is used to create dlls on Windows
-+ # Don't remove nor modify the starting and closing comments
-+# /* ltdll.c starts here */
-+# #define WIN32_LEAN_AND_MEAN
-+# #include <windows.h>
-+# #undef WIN32_LEAN_AND_MEAN
-+# #include <stdio.h>
-+#
-+# #ifndef __CYGWIN__
-+# # ifdef __CYGWIN32__
-+# # define __CYGWIN__ __CYGWIN32__
-+# # endif
-+# #endif
-+#
-+# #ifdef __cplusplus
-+# extern "C" {
-+# #endif
-+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
-+# #ifdef __cplusplus
-+# }
-+# #endif
-+#
-+# #ifdef __CYGWIN__
-+# #include <cygwin/cygwin_dll.h>
-+# DECLARE_CYGWIN_DLL( DllMain );
-+# #endif
-+# HINSTANCE __hDllInstance_base;
-+#
-+# BOOL APIENTRY
-+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
-+# {
-+# __hDllInstance_base = hInst;
-+# return TRUE;
-+# }
-+# /* ltdll.c ends here */
-+ # This is a source program that is used to create import libraries
-+ # on Windows for dlls which lack them. Don't remove nor modify the
-+ # starting and closing comments
-+# /* impgen.c starts here */
-+# /* Copyright (C) 1999-2000 Free Software Foundation, Inc.
-+#
-+# This file is part of GNU libtool.
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+# */
-+#
-+# #include <stdio.h> /* for printf() */
-+# #include <unistd.h> /* for open(), lseek(), read() */
-+# #include <fcntl.h> /* for O_RDONLY, O_BINARY */
-+# #include <string.h> /* for strdup() */
-+#
-+# /* O_BINARY isn't required (or even defined sometimes) under Unix */
-+# #ifndef O_BINARY
-+# #define O_BINARY 0
-+# #endif
-+#
-+# static unsigned int
-+# pe_get16 (fd, offset)
-+# int fd;
-+# int offset;
-+# {
-+# unsigned char b[2];
-+# lseek (fd, offset, SEEK_SET);
-+# read (fd, b, 2);
-+# return b[0] + (b[1]<<8);
-+# }
-+#
-+# static unsigned int
-+# pe_get32 (fd, offset)
-+# int fd;
-+# int offset;
-+# {
-+# unsigned char b[4];
-+# lseek (fd, offset, SEEK_SET);
-+# read (fd, b, 4);
-+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-+# }
-+#
-+# static unsigned int
-+# pe_as32 (ptr)
-+# void *ptr;
-+# {
-+# unsigned char *b = ptr;
-+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-+# }
-+#
-+# int
-+# main (argc, argv)
-+# int argc;
-+# char *argv[];
-+# {
-+# int dll;
-+# unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
-+# unsigned long export_rva, export_size, nsections, secptr, expptr;
-+# unsigned long name_rvas, nexp;
-+# unsigned char *expdata, *erva;
-+# char *filename, *dll_name;
-+#
-+# filename = argv[1];
-+#
-+# dll = open(filename, O_RDONLY|O_BINARY);
-+# if (dll < 1)
-+# return 1;
-+#
-+# dll_name = filename;
-+#
-+# for (i=0; filename[i]; i++)
-+# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
-+# dll_name = filename + i +1;
-+#
-+# pe_header_offset = pe_get32 (dll, 0x3c);
-+# opthdr_ofs = pe_header_offset + 4 + 20;
-+# num_entries = pe_get32 (dll, opthdr_ofs + 92);
-+#
-+# if (num_entries < 1) /* no exports */
-+# return 1;
-+#
-+# export_rva = pe_get32 (dll, opthdr_ofs + 96);
-+# export_size = pe_get32 (dll, opthdr_ofs + 100);
-+# nsections = pe_get16 (dll, pe_header_offset + 4 +2);
-+# secptr = (pe_header_offset + 4 + 20 +
-+# pe_get16 (dll, pe_header_offset + 4 + 16));
-+#
-+# expptr = 0;
-+# for (i = 0; i < nsections; i++)
-+# {
-+# char sname[8];
-+# unsigned long secptr1 = secptr + 40 * i;
-+# unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
-+# unsigned long vsize = pe_get32 (dll, secptr1 + 16);
-+# unsigned long fptr = pe_get32 (dll, secptr1 + 20);
-+# lseek(dll, secptr1, SEEK_SET);
-+# read(dll, sname, 8);
-+# if (vaddr <= export_rva && vaddr+vsize > export_rva)
-+# {
-+# expptr = fptr + (export_rva - vaddr);
-+# if (export_rva + export_size > vaddr + vsize)
-+# export_size = vsize - (export_rva - vaddr);
-+# break;
-+# }
-+# }
-+#
-+# expdata = (unsigned char*)malloc(export_size);
-+# lseek (dll, expptr, SEEK_SET);
-+# read (dll, expdata, export_size);
-+# erva = expdata - export_rva;
-+#
-+# nexp = pe_as32 (expdata+24);
-+# name_rvas = pe_as32 (expdata+32);
-+#
-+# printf ("EXPORTS\n");
-+# for (i = 0; i<nexp; i++)
-+# {
-+# unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
-+# printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
-+# }
-+#
-+# return 0;
-+# }
-+# /* impgen.c ends here */
-+
-+EOF
-+ ;;
-+ esac
-
--ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
--[*-*-cygwin* | *-*-mingw*)
-- AC_CHECK_TOOL(DLLTOOL, dlltool, false)
-- AC_CHECK_TOOL(AS, as, false)
-- AC_CHECK_TOOL(OBJDUMP, objdump, false)
-- ;;
--])
--esac
--])
-+ # We use sed instead of cat because bash on DJGPP gets confused if
-+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
-+ # text mode, it properly converts lines to CR/LF. This bash problem
-+ # is reportedly fixed, but why not run on old versions too?
-+ sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
-+
-+ mv -f "${ofile}T" "$ofile" || \
-+ (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
-+ chmod +x "$ofile"
-+fi
-+
-+])# _LT_AC_LTCONFIG_HACK
-
- # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
--AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
-+AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
-
- # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
--AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
-+AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
-
- # AC_ENABLE_SHARED - implement the --enable-shared flag
- # Usage: AC_ENABLE_SHARED[(DEFAULT)]
- # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
- # `yes'.
--AC_DEFUN(AC_ENABLE_SHARED, [dnl
--define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
-+AC_DEFUN([AC_ENABLE_SHARED],
-+[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
- AC_ARG_ENABLE(shared,
- changequote(<<, >>)dnl
- << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
- changequote([, ])dnl
- [p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
-@@ -157,21 +3136,22 @@
- ])
-
- # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
--AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+AC_DEFUN([AC_DISABLE_SHARED],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- AC_ENABLE_SHARED(no)])
-
- # AC_ENABLE_STATIC - implement the --enable-static flag
- # Usage: AC_ENABLE_STATIC[(DEFAULT)]
- # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
- # `yes'.
--AC_DEFUN(AC_ENABLE_STATIC, [dnl
--define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
-+AC_DEFUN([AC_ENABLE_STATIC],
-+[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
- AC_ARG_ENABLE(static,
- changequote(<<, >>)dnl
- << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
- changequote([, ])dnl
- [p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
-@@ -190,7 +3170,8 @@
- ])
-
- # AC_DISABLE_STATIC - set the default static flag to --disable-static
--AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+AC_DEFUN([AC_DISABLE_STATIC],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- AC_ENABLE_STATIC(no)])
-
-
-@@ -198,14 +3179,14 @@
- # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
- # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
- # `yes'.
--AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
--define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
-+AC_DEFUN([AC_ENABLE_FAST_INSTALL],
-+[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
- AC_ARG_ENABLE(fast-install,
- changequote(<<, >>)dnl
- << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
- changequote([, ])dnl
- [p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
-@@ -223,29 +3204,120 @@
- enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
- ])
-
--# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
--AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
-+AC_DEFUN([AC_DISABLE_FAST_INSTALL],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- AC_ENABLE_FAST_INSTALL(no)])
-
-+# AC_LIBTOOL_PICMODE - implement the --with-pic flag
-+# Usage: AC_LIBTOOL_PICMODE[(MODE)]
-+# Where MODE is either `yes' or `no'. If omitted, it defaults to
-+# `both'.
-+AC_DEFUN([AC_LIBTOOL_PICMODE],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+pic_mode=ifelse($#,1,$1,default)])
-+
-+
-+# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
-+AC_DEFUN([AC_PATH_TOOL_PREFIX],
-+[AC_MSG_CHECKING([for $1])
-+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
-+[case $MAGIC_CMD in
-+ /*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-+ ;;
-+ ?:/*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
-+ ;;
-+ *)
-+ ac_save_MAGIC_CMD="$MAGIC_CMD"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+dnl $ac_dummy forces splitting on constant user-supplied paths.
-+dnl POSIX.2 word splitting is done only on the output of word expansions,
-+dnl not every word. This closes a longstanding sh security hole.
-+ ac_dummy="ifelse([$2], , $PATH, [$2])"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$1; then
-+ lt_cv_path_MAGIC_CMD="$ac_dir/$1"
-+ if test -n "$file_magic_test_file"; then
-+ case $deplibs_check_method in
-+ "file_magic "*)
-+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
-+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-+ egrep "$file_magic_regex" > /dev/null; then
-+ :
-+ else
-+ cat <<EOF 1>&2
-+
-+*** Warning: the command libtool uses to detect shared libraries,
-+*** $file_magic_cmd, produces output that libtool cannot recognize.
-+*** The result is that libtool may fail to recognize shared libraries
-+*** as such. This will affect the creation of libtool libraries that
-+*** depend on shared libraries, but programs linked with such libtool
-+*** libraries will work regardless of this problem. Nevertheless, you
-+*** may want to report the problem to your system manager and/or to
-+*** bug-libtool@gnu.org
-+
-+EOF
-+ fi ;;
-+ esac
-+ fi
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ MAGIC_CMD="$ac_save_MAGIC_CMD"
-+ ;;
-+esac])
-+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+if test -n "$MAGIC_CMD"; then
-+ AC_MSG_RESULT($MAGIC_CMD)
-+else
-+ AC_MSG_RESULT(no)
-+fi
-+])
-+
-+
-+# AC_PATH_MAGIC - find a file program which can recognise a shared library
-+AC_DEFUN([AC_PATH_MAGIC],
-+[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
-+AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
-+if test -z "$lt_cv_path_MAGIC_CMD"; then
-+ if test -n "$ac_tool_prefix"; then
-+ AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
-+ else
-+ MAGIC_CMD=:
-+ fi
-+fi
-+])
-+
-+
- # AC_PROG_LD - find the path to the GNU or non-GNU linker
--AC_DEFUN(AC_PROG_LD,
-+AC_DEFUN([AC_PROG_LD],
- [AC_ARG_WITH(gnu-ld,
- [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
- test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
- AC_REQUIRE([AC_PROG_CC])dnl
- AC_REQUIRE([AC_CANONICAL_HOST])dnl
- AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-+AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
- ac_prog=ld
--if test "$ac_cv_prog_gcc" = yes; then
-+if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- AC_MSG_CHECKING([for ld used by GCC])
-- ac_prog=`($CC -print-prog-name=ld) 2>&5`
-- case "$ac_prog" in
-+ case $host in
-+ *-*-mingw*)
-+ # gcc leaves a trailing carriage return which upsets mingw
-+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-+ *)
-+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-+ esac
-+ case $ac_prog in
- # Accept absolute paths.
--changequote(,)dnl
-- [\\/]* | [A-Za-z]:[\\/]*)
-- re_direlt='/[^/][^/]*/\.\./'
--changequote([,])dnl
-+ [[\\/]]* | [[A-Za-z]]:[[\\/]]*)
-+ re_direlt='/[[^/]][[^/]]*/\.\./'
- # Canonicalize the path of ld
- ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
- while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
-@@ -267,17 +3339,17 @@
- else
- AC_MSG_CHECKING([for non-GNU ld])
- fi
--AC_CACHE_VAL(ac_cv_path_LD,
-+AC_CACHE_VAL(lt_cv_path_LD,
- [if test -z "$LD"; then
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-- ac_cv_path_LD="$ac_dir/$ac_prog"
-+ lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
-- if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
-+ if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
- test "$with_gnu_ld" != no && break
- else
- test "$with_gnu_ld" != yes && break
-@@ -286,9 +3358,9 @@
- done
- IFS="$ac_save_ifs"
- else
-- ac_cv_path_LD="$LD" # Let the user override the test with a path.
-+ lt_cv_path_LD="$LD" # Let the user override the test with a path.
- fi])
--LD="$ac_cv_path_LD"
-+LD="$lt_cv_path_LD"
- if test -n "$LD"; then
- AC_MSG_RESULT($LD)
- else
-@@ -298,56 +3370,255 @@
- AC_PROG_LD_GNU
- ])
-
--AC_DEFUN(AC_PROG_LD_GNU,
--[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
-+# AC_PROG_LD_GNU -
-+AC_DEFUN([AC_PROG_LD_GNU],
-+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
- [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
- if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-- ac_cv_prog_gnu_ld=yes
-+ lt_cv_prog_gnu_ld=yes
- else
-- ac_cv_prog_gnu_ld=no
-+ lt_cv_prog_gnu_ld=no
- fi])
-+with_gnu_ld=$lt_cv_prog_gnu_ld
-+])
-+
-+# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
-+# -- PORTME Some linkers may need a different reload flag.
-+AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
-+[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
-+[lt_cv_ld_reload_flag='-r'])
-+reload_flag=$lt_cv_ld_reload_flag
-+test -n "$reload_flag" && reload_flag=" $reload_flag"
-+])
-+
-+# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
-+# -- PORTME fill in with the dynamic library characteristics
-+AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
-+[AC_CACHE_CHECK([how to recognise dependent libraries],
-+lt_cv_deplibs_check_method,
-+[lt_cv_file_magic_cmd='$MAGIC_CMD'
-+lt_cv_file_magic_test_file=
-+lt_cv_deplibs_check_method='unknown'
-+# Need to set the preceding variable on all platforms that support
-+# interlibrary dependencies.
-+# 'none' -- dependencies not supported.
-+# `unknown' -- same as none, but documents that we really don't know.
-+# 'pass_all' -- all dependencies passed with no checks.
-+# 'test_compile' -- check by making test program.
-+# 'file_magic [[regex]]' -- check by looking for files in library path
-+# which responds to the $file_magic_cmd with a given egrep regex.
-+# If you have `file' or equivalent on your system and you're not sure
-+# whether `pass_all' will *always* work, you probably want this one.
-+
-+case $host_os in
-+aix4* | aix5*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+beos*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+bsdi4*)
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
-+ lt_cv_file_magic_cmd='/usr/bin/file -L'
-+ lt_cv_file_magic_test_file=/shlib/libc.so
-+ ;;
-+
-+cygwin* | mingw* | pw32*)
-+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
-+ lt_cv_file_magic_cmd='$OBJDUMP -f'
-+ ;;
-+
-+darwin* | rhapsody*)
-+ lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
-+ lt_cv_file_magic_cmd='/usr/bin/file -L'
-+ case "$host_os" in
-+ rhapsody* | darwin1.[[012]])
-+ lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
-+ ;;
-+ *) # Darwin 1.3 on
-+ lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
-+ ;;
-+ esac
-+ ;;
-+
-+freebsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
-+ case $host_cpu in
-+ i*86 )
-+ # Not sure whether the presence of OpenBSD here was a mistake.
-+ # Let's accept both of them until this is cleared up.
-+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-+ ;;
-+ esac
-+ else
-+ lt_cv_deplibs_check_method=pass_all
-+ fi
-+ ;;
-+
-+gnu*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+hpux10.20*|hpux11*)
-+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
-+ ;;
-+
-+irix5* | irix6* | nonstopux*)
-+ case $host_os in
-+ irix5* | nonstopux*)
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
-+ ;;
-+ *)
-+ case $LD in
-+ *-32|*"-32 ") libmagic=32-bit;;
-+ *-n32|*"-n32 ") libmagic=N32;;
-+ *-64|*"-64 ") libmagic=64-bit;;
-+ *) libmagic=never-match;;
-+ esac
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
-+ ;;
-+ esac
-+ lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+# This must be Linux ELF.
-+linux-gnu*)
-+ case $host_cpu in
-+ alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | arm* | m68k)
-+ lt_cv_deplibs_check_method=pass_all ;;
-+ *)
-+ # glibc up to 2.1.1 does not perform some relocations on ARM
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
-+ esac
-+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
-+ ;;
-+
-+netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
-+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$'
-+ else
-+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$'
-+ fi
-+ ;;
-+
-+newos6*)
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
-+ ;;
-+
-+openbsd*)
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
-+ else
-+ lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
-+ fi
-+ ;;
-+
-+osf3* | osf4* | osf5*)
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
-+ lt_cv_file_magic_test_file=/shlib/libc.so
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+sco3.2v5*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+solaris*)
-+ lt_cv_deplibs_check_method=pass_all
-+ lt_cv_file_magic_test_file=/lib/libc.so
-+ ;;
-+
-+sysv5uw[[78]]* | sysv4*uw2*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ case $host_vendor in
-+ motorola)
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
-+ ;;
-+ ncr)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+ sequent)
-+ lt_cv_file_magic_cmd='/bin/file'
-+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
-+ ;;
-+ sni)
-+ lt_cv_file_magic_cmd='/bin/file'
-+ lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
-+ lt_cv_file_magic_test_file=/lib/libc.so
-+ ;;
-+ siemens)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+ esac
-+ ;;
-+esac
-+])
-+file_magic_cmd=$lt_cv_file_magic_cmd
-+deplibs_check_method=$lt_cv_deplibs_check_method
- ])
-
-+
- # AC_PROG_NM - find the path to a BSD-compatible name lister
--AC_DEFUN(AC_PROG_NM,
--[AC_MSG_CHECKING([for BSD-compatible nm])
--AC_CACHE_VAL(ac_cv_path_NM,
-+AC_DEFUN([AC_PROG_NM],
-+[AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
-+AC_MSG_CHECKING([for BSD-compatible nm])
-+AC_CACHE_VAL(lt_cv_path_NM,
- [if test -n "$NM"; then
- # Let the user override the test.
-- ac_cv_path_NM="$NM"
-+ lt_cv_path_NM="$NM"
- else
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
- test -z "$ac_dir" && ac_dir=.
-- if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
-+ tmp_nm=$ac_dir/${ac_tool_prefix}nm
-+ if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
-- if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-- ac_cv_path_NM="$ac_dir/nm -B"
-+ # Tru64's nm complains that /dev/null is an invalid object file
-+ if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
-+ lt_cv_path_NM="$tmp_nm -B"
- break
-- elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-- ac_cv_path_NM="$ac_dir/nm -p"
-+ elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-+ lt_cv_path_NM="$tmp_nm -p"
- break
- else
-- ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
-+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- fi
- fi
- done
- IFS="$ac_save_ifs"
-- test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
-+ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
- fi])
--NM="$ac_cv_path_NM"
-+NM="$lt_cv_path_NM"
- AC_MSG_RESULT([$NM])
- ])
-
- # AC_CHECK_LIBM - check for math library
--AC_DEFUN(AC_CHECK_LIBM,
-+AC_DEFUN([AC_CHECK_LIBM],
- [AC_REQUIRE([AC_CANONICAL_HOST])dnl
- LIBM=
--case "$lt_target" in
--*-*-beos* | *-*-cygwin*)
-+case $host in
-+*-*-beos* | *-*-cygwin* | *-*-pw32*)
- # These system don't have libm
- ;;
- *-ncr-sysv4.3*)
-@@ -361,33 +3632,41 @@
- ])
-
- # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
--# the libltdl convenience library, adds --enable-ltdl-convenience to
--# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
--# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
--# to be `${top_builddir}/libltdl'. Make sure you start DIR with
--# '${top_builddir}/' (note the single quotes!) if your package is not
--# flat, and, if you're not using automake, define top_builddir as
--# appropriate in the Makefiles.
--AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-- case "$enable_ltdl_convenience" in
-+# the libltdl convenience library and LTDLINCL to the include flags for
-+# the libltdl header and adds --enable-ltdl-convenience to the
-+# configure arguments. Note that LIBLTDL and LTDLINCL are not
-+# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
-+# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
-+# with '${top_builddir}/' and LTDLINCL will be prefixed with
-+# '${top_srcdir}/' (note the single quotes!). If your package is not
-+# flat and you're not using automake, define top_builddir and
-+# top_srcdir appropriately in the Makefiles.
-+AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+ case $enable_ltdl_convenience in
- no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
- "") enable_ltdl_convenience=yes
- ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
- esac
-- LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
-- INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
-+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
-+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
-+ # For backwards non-gettext consistent compatibility...
-+ INCLTDL="$LTDLINCL"
- ])
-
- # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
--# the libltdl installable library, and adds --enable-ltdl-install to
--# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
--# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
--# to be `${top_builddir}/libltdl'. Make sure you start DIR with
--# '${top_builddir}/' (note the single quotes!) if your package is not
--# flat, and, if you're not using automake, define top_builddir as
--# appropriate in the Makefiles.
-+# the libltdl installable library and LTDLINCL to the include flags for
-+# the libltdl header and adds --enable-ltdl-install to the configure
-+# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is
-+# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
-+# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
-+# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed
-+# with '${top_srcdir}/' (note the single quotes!). If your package is
-+# not flat and you're not using automake, define top_builddir and
-+# top_srcdir appropriately in the Makefiles.
- # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
--AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-+AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
-+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
- AC_CHECK_LIB(ltdl, main,
- [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
- [if test x"$enable_ltdl_install" = xno; then
-@@ -398,27 +3677,266 @@
- ])
- if test x"$enable_ltdl_install" = x"yes"; then
- ac_configure_args="$ac_configure_args --enable-ltdl-install"
-- LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
-- INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
-+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
-+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
- else
- ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
- LIBLTDL="-lltdl"
-- INCLTDL=
-+ LTDLINCL=
- fi
-+ # For backwards non-gettext consistent compatibility...
-+ INCLTDL="$LTDLINCL"
-+])
-+
-+# old names
-+AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])
-+AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
-+AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
-+AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
-+AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
-+AC_DEFUN([AM_PROG_LD], [AC_PROG_LD])
-+AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
-+
-+# This is just to silence aclocal about the macro not being used
-+ifelse([AC_DISABLE_FAST_INSTALL])
-+
-+# NOTE: This macro has been submitted for inclusion into #
-+# GNU Autoconf as AC_PROG_SED. When it is available in #
-+# a released version of Autoconf we should remove this #
-+# macro and use it instead. #
-+# LT_AC_PROG_SED
-+# --------------
-+# Check for a fully-functional sed program, that truncates
-+# as few characters as possible. Prefer GNU sed if found.
-+AC_DEFUN([LT_AC_PROG_SED],
-+[AC_MSG_CHECKING([for a sed that does not truncate output])
-+AC_CACHE_VAL(lt_cv_path_SED,
-+[# Loop through the user's path and test for sed and gsed.
-+# Then use that list of sed's as ones to test for truncation.
-+as_executable_p="test -f"
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+ IFS=$as_save_IFS
-+ test -z "$as_dir" && as_dir=.
-+ for ac_prog in sed gsed; do
-+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
-+ _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
-+ fi
-+ done
-+ done
-+done
-+
-+ # Create a temporary directory, and hook for its removal unless debugging.
-+$debug ||
-+{
-+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
-+ trap '{ (exit 1); exit 1; }' 1 2 13 15
-+}
-+
-+# Create a (secure) tmp directory for tmp files.
-+: ${TMPDIR=/tmp}
-+{
-+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
-+ test -n "$tmp" && test -d "$tmp"
-+} ||
-+{
-+ tmp=$TMPDIR/sed$$-$RANDOM
-+ (umask 077 && mkdir $tmp)
-+} ||
-+{
-+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2
-+ { (exit 1); exit 1; }
-+}
-+ _max=0
-+ _count=0
-+ # Add /usr/xpg4/bin/sed as it is typically found on Solaris
-+ # along with /bin/sed that truncates output.
-+ for _sed in $_sed_list /usr/xpg4/bin/sed; do
-+ test ! -f ${_sed} && break
-+ cat /dev/null > "$tmp/sed.in"
-+ _count=0
-+ echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
-+ # Check for GNU sed and select it if it is found.
-+ if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
-+ lt_cv_path_SED=${_sed}
-+ break
-+ fi
-+ while true; do
-+ cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
-+ mv "$tmp/sed.tmp" "$tmp/sed.in"
-+ cp "$tmp/sed.in" "$tmp/sed.nl"
-+ echo >>"$tmp/sed.nl"
-+ ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
-+ cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
-+ # 40000 chars as input seems more than enough
-+ test $_count -gt 10 && break
-+ _count=`expr $_count + 1`
-+ if test $_count -gt $_max; then
-+ _max=$_count
-+ lt_cv_path_SED=$_sed
-+ fi
-+ done
-+ done
-+ rm -rf "$tmp"
-+])
-+if test "X$SED" != "X"; then
-+ lt_cv_path_SED=$SED
-+else
-+ SED=$lt_cv_path_SED
-+fi
-+AC_MSG_RESULT([$SED])
-+])
-+
-+# Add --enable-maintainer-mode option to configure.
-+# From Jim Meyering
-+
-+# serial 1
-+
-+AC_DEFUN([AM_MAINTAINER_MODE],
-+[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
-+ dnl maintainer-mode is disabled by default
-+ AC_ARG_ENABLE(maintainer-mode,
-+[ --enable-maintainer-mode enable make rules and dependencies not useful
-+ (and sometimes confusing) to the casual installer],
-+ USE_MAINTAINER_MODE=$enableval,
-+ USE_MAINTAINER_MODE=no)
-+ AC_MSG_RESULT($USE_MAINTAINER_MODE)
-+ AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
-+ MAINT=$MAINTAINER_MODE_TRUE
-+ AC_SUBST(MAINT)dnl
-+]
-+)
-+
-+# Define a conditional.
-+
-+AC_DEFUN([AM_CONDITIONAL],
-+[AC_SUBST($1_TRUE)
-+AC_SUBST($1_FALSE)
-+if $2; then
-+ $1_TRUE=
-+ $1_FALSE='#'
-+else
-+ $1_TRUE='#'
-+ $1_FALSE=
-+fi])
-+
-+# isc-posix.m4 serial 2 (gettext-0.11.2)
-+dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
-+dnl This file is free software, distributed under the terms of the GNU
-+dnl General Public License. As a special exception to the GNU General
-+dnl Public License, this file may be distributed as part of a program
-+dnl that contains a configuration script generated by Autoconf, under
-+dnl the same distribution terms as the rest of that program.
-+
-+# This file is not needed with autoconf-2.53 and newer. Remove it in 2005.
-+
-+# This test replaces the one in autoconf.
-+# Currently this macro should have the same name as the autoconf macro
-+# because gettext's gettext.m4 (distributed in the automake package)
-+# still uses it. Otherwise, the use in gettext.m4 makes autoheader
-+# give these diagnostics:
-+# configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX
-+# configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX
-+
-+undefine([AC_ISC_POSIX])
-+
-+AC_DEFUN([AC_ISC_POSIX],
-+ [
-+ dnl This test replaces the obsolescent AC_ISC_POSIX kludge.
-+ AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"])
-+ ]
-+)
-+
-+
-+# serial 1
-+
-+# @defmac AC_PROG_CC_STDC
-+# @maindex PROG_CC_STDC
-+# @ovindex CC
-+# If the C compiler in not in ANSI C mode by default, try to add an option
-+# to output variable @code{CC} to make it so. This macro tries various
-+# options that select ANSI C on some system or another. It considers the
-+# compiler to be in ANSI C mode if it handles function prototypes correctly.
-+#
-+# If you use this macro, you should check after calling it whether the C
-+# compiler has been set to accept ANSI C; if not, the shell variable
-+# @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source
-+# code in ANSI C, you can make an un-ANSIfied copy of it by using the
-+# program @code{ansi2knr}, which comes with Ghostscript.
-+# @end defmac
-+
-+AC_DEFUN([AM_PROG_CC_STDC],
-+[AC_REQUIRE([AC_PROG_CC])
-+AC_BEFORE([$0], [AC_C_INLINE])
-+AC_BEFORE([$0], [AC_C_CONST])
-+dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require
-+dnl a magic option to avoid problems with ANSI preprocessor commands
-+dnl like #elif.
-+dnl FIXME: can't do this because then AC_AIX won't work due to a
-+dnl circular dependency.
-+dnl AC_BEFORE([$0], [AC_PROG_CPP])
-+AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C)
-+AC_CACHE_VAL(am_cv_prog_cc_stdc,
-+[am_cv_prog_cc_stdc=no
-+ac_save_CC="$CC"
-+# Don't try gcc -ansi; that turns off useful extensions and
-+# breaks some systems' header files.
-+# AIX -qlanglvl=ansi
-+# Ultrix and OSF/1 -std1
-+# HP-UX -Aa -D_HPUX_SOURCE
-+# SVR4 -Xc -D__EXTENSIONS__
-+for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-+do
-+ CC="$ac_save_CC $ac_arg"
-+ AC_TRY_COMPILE(
-+[#include <stdarg.h>
-+#include <stdio.h>
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-+struct buf { int x; };
-+FILE * (*rcsopen) (struct buf *, struct stat *, int);
-+static char *e (p, i)
-+ char **p;
-+ int i;
-+{
-+ return p[i];
-+}
-+static char *f (char * (*g) (char **, int), char **p, ...)
-+{
-+ char *s;
-+ va_list v;
-+ va_start (v,p);
-+ s = g (p, va_arg (v,int));
-+ va_end (v);
-+ return s;
-+}
-+int test (int i, double x);
-+struct s1 {int (*f) (int a);};
-+struct s2 {int (*f) (double a);};
-+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-+int argc;
-+char **argv;
-+], [
-+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
-+],
-+[am_cv_prog_cc_stdc="$ac_arg"; break])
-+done
-+CC="$ac_save_CC"
-+])
-+if test -z "$am_cv_prog_cc_stdc"; then
-+ AC_MSG_RESULT([none needed])
-+else
-+ AC_MSG_RESULT($am_cv_prog_cc_stdc)
-+fi
-+case "x$am_cv_prog_cc_stdc" in
-+ x|xno) ;;
-+ *) CC="$CC $am_cv_prog_cc_stdc" ;;
-+esac
- ])
-
--dnl old names
--AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
--AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
--AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
--AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
--AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
--AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
--AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
--
--dnl This is just to silence aclocal about the macro not being used
--ifelse([AC_DISABLE_FAST_INSTALL])dnl
--
- # Macro to add for using GNU gettext.
- # Ulrich Drepper <drepper@cygnus.com>, 1995.
- #
-@@ -756,20 +4274,31 @@
- < $srcdir/po/POTFILES.in > po/POTFILES
- ])
-
-+# progtest.m4 serial 2 (gettext-0.10.40)
-+dnl Copyright (C) 1996-2002 Free Software Foundation, Inc.
-+dnl This file is free software, distributed under the terms of the GNU
-+dnl General Public License. As a special exception to the GNU General
-+dnl Public License, this file may be distributed as part of a program
-+dnl that contains a configuration script generated by Autoconf, under
-+dnl the same distribution terms as the rest of that program.
-+dnl
-+dnl This file can can be used in projects which are not available under
-+dnl the GNU General Public License or the GNU Library General Public
-+dnl License but which still want to provide support for the GNU gettext
-+dnl functionality.
-+dnl Please note that the actual code of the GNU gettext library is covered
-+dnl by the GNU Library General Public License, and the rest of the GNU
-+dnl gettext package package is covered by the GNU General Public License.
-+dnl They are *not* in the public domain.
-
--# Search path for a program which passes the given test.
--# Ulrich Drepper <drepper@cygnus.com>, 1996.
--#
--# This file can be copied and used freely without restrictions. It can
--# be used in projects which are not available under the GNU Public License
--# but which still want to provide support for the GNU gettext functionality.
--# Please note that the actual code is *not* freely available.
-+dnl Authors:
-+dnl Ulrich Drepper <drepper@cygnus.com>, 1996.
-
--# serial 1
-+# Search path for a program which passes the given test.
-
- dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
- dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
--AC_DEFUN(AM_PATH_PROG_WITH_TEST,
-+AC_DEFUN([AM_PATH_PROG_WITH_TEST],
- [# Extract the first word of "$2", so it can be a program name with args.
- set dummy $2; ac_word=[$]2
- AC_MSG_CHECKING([for $ac_word])
-@@ -797,7 +4326,7 @@
- ;;
- esac])dnl
- $1="$ac_cv_path_$1"
--if test -n "[$]$1"; then
-+if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
- AC_MSG_RESULT([$]$1)
- else
- AC_MSG_RESULT(no)
-@@ -805,260 +4334,37 @@
- AC_SUBST($1)dnl
- ])
-
--# Check whether LC_MESSAGES is available in <locale.h>.
--# Ulrich Drepper <drepper@cygnus.com>, 1995.
--#
--# This file can be copied and used freely without restrictions. It can
--# be used in projects which are not available under the GNU Public License
--# but which still want to provide support for the GNU gettext functionality.
--# Please note that the actual code is *not* freely available.
--
--# serial 1
--
--AC_DEFUN(AM_LC_MESSAGES,
-- [if test $ac_cv_header_locale_h = yes; then
-- AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
-- [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
-- am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
-- if test $am_cv_val_LC_MESSAGES = yes; then
-- AC_DEFINE(HAVE_LC_MESSAGES)
-- fi
-- fi])
--
--# Do all the work for Automake. This macro actually does too much --
--# some checks are only needed if your package does certain things.
--# But this isn't really a big deal.
--
--# serial 1
--
--dnl Usage:
--dnl AM_INIT_AUTOMAKE(package,version, [no-define])
--
--AC_DEFUN(AM_INIT_AUTOMAKE,
--[AC_REQUIRE([AC_PROG_INSTALL])
--PACKAGE=[$1]
--AC_SUBST(PACKAGE)
--VERSION=[$2]
--AC_SUBST(VERSION)
--dnl test to see if srcdir already configured
--if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
-- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
--fi
--ifelse([$3],,
--AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
--AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
--AC_REQUIRE([AM_SANITY_CHECK])
--AC_REQUIRE([AC_ARG_PROGRAM])
--dnl FIXME This is truly gross.
--missing_dir=`cd $ac_aux_dir && pwd`
--AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
--AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
--AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
--AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
--AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
--AC_REQUIRE([AC_PROG_MAKE_SET])])
--
--#
--# Check to make sure that the build environment is sane.
--#
--
--AC_DEFUN(AM_SANITY_CHECK,
--[AC_MSG_CHECKING([whether build environment is sane])
--# Just in case
--sleep 1
--echo timestamp > conftestfile
--# Do `set' in a subshell so we don't clobber the current shell's
--# arguments. Must try -L first in case configure is actually a
--# symlink; some systems play weird games with the mod time of symlinks
--# (eg FreeBSD returns the mod time of the symlink's containing
--# directory).
--if (
-- set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
-- if test "[$]*" = "X"; then
-- # -L didn't work.
-- set X `ls -t $srcdir/configure conftestfile`
-- fi
-- if test "[$]*" != "X $srcdir/configure conftestfile" \
-- && test "[$]*" != "X conftestfile $srcdir/configure"; then
--
-- # If neither matched, then we have a broken ls. This can happen
-- # if, for instance, CONFIG_SHELL is bash and it inherits a
-- # broken ls alias from the environment. This has actually
-- # happened. Such a system could not be considered "sane".
-- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
--alias in your environment])
-- fi
--
-- test "[$]2" = conftestfile
-- )
--then
-- # Ok.
-- :
--else
-- AC_MSG_ERROR([newly created file is older than distributed files!
--Check your system clock])
--fi
--rm -f conftest*
--AC_MSG_RESULT(yes)])
--
--dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
--dnl The program must properly implement --version.
--AC_DEFUN(AM_MISSING_PROG,
--[AC_MSG_CHECKING(for working $2)
--# Run test in a subshell; some versions of sh will print an error if
--# an executable is not found, even if stderr is redirected.
--# Redirect stdin to placate older versions of autoconf. Sigh.
--if ($2 --version) < /dev/null > /dev/null 2>&1; then
-- $1=$2
-- AC_MSG_RESULT(found)
--else
-- $1="$3/missing $2"
-- AC_MSG_RESULT(missing)
--fi
--AC_SUBST($1)])
--
--# Like AC_CONFIG_HEADER, but automatically create stamp file.
--
--AC_DEFUN(AM_CONFIG_HEADER,
--[AC_PREREQ([2.12])
--AC_CONFIG_HEADER([$1])
--dnl When config.status generates a header, we must update the stamp-h file.
--dnl This file resides in the same directory as the config header
--dnl that is generated. We must strip everything past the first ":",
--dnl and everything past the last "/".
--AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
--ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
--<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
--<<am_indx=1
--for am_file in <<$1>>; do
-- case " <<$>>CONFIG_HEADERS " in
-- *" <<$>>am_file "*<<)>>
-- echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
-- ;;
-- esac
-- am_indx=`expr "<<$>>am_indx" + 1`
--done<<>>dnl>>)
--changequote([,]))])
--
--# Add --enable-maintainer-mode option to configure.
--# From Jim Meyering
--
--# serial 1
--
--AC_DEFUN(AM_MAINTAINER_MODE,
--[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
-- dnl maintainer-mode is disabled by default
-- AC_ARG_ENABLE(maintainer-mode,
--[ --enable-maintainer-mode enable make rules and dependencies not useful
-- (and sometimes confusing) to the casual installer],
-- USE_MAINTAINER_MODE=$enableval,
-- USE_MAINTAINER_MODE=no)
-- AC_MSG_RESULT($USE_MAINTAINER_MODE)
-- AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
-- MAINT=$MAINTAINER_MODE_TRUE
-- AC_SUBST(MAINT)dnl
--]
--)
--
--# Define a conditional.
--
--AC_DEFUN(AM_CONDITIONAL,
--[AC_SUBST($1_TRUE)
--AC_SUBST($1_FALSE)
--if $2; then
-- $1_TRUE=
-- $1_FALSE='#'
--else
-- $1_TRUE='#'
-- $1_FALSE=
--fi])
--
-+# lcmessage.m4 serial 3 (gettext-0.11.3)
-+dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
-+dnl This file is free software, distributed under the terms of the GNU
-+dnl General Public License. As a special exception to the GNU General
-+dnl Public License, this file may be distributed as part of a program
-+dnl that contains a configuration script generated by Autoconf, under
-+dnl the same distribution terms as the rest of that program.
-+dnl
-+dnl This file can can be used in projects which are not available under
-+dnl the GNU General Public License or the GNU Library General Public
-+dnl License but which still want to provide support for the GNU gettext
-+dnl functionality.
-+dnl Please note that the actual code of the GNU gettext library is covered
-+dnl by the GNU Library General Public License, and the rest of the GNU
-+dnl gettext package package is covered by the GNU General Public License.
-+dnl They are *not* in the public domain.
-
--# serial 1
-+dnl Authors:
-+dnl Ulrich Drepper <drepper@cygnus.com>, 1995.
-
--# @defmac AC_PROG_CC_STDC
--# @maindex PROG_CC_STDC
--# @ovindex CC
--# If the C compiler in not in ANSI C mode by default, try to add an option
--# to output variable @code{CC} to make it so. This macro tries various
--# options that select ANSI C on some system or another. It considers the
--# compiler to be in ANSI C mode if it handles function prototypes correctly.
--#
--# If you use this macro, you should check after calling it whether the C
--# compiler has been set to accept ANSI C; if not, the shell variable
--# @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source
--# code in ANSI C, you can make an un-ANSIfied copy of it by using the
--# program @code{ansi2knr}, which comes with Ghostscript.
--# @end defmac
-+# Check whether LC_MESSAGES is available in <locale.h>.
-
--AC_DEFUN(AM_PROG_CC_STDC,
--[AC_REQUIRE([AC_PROG_CC])
--AC_BEFORE([$0], [AC_C_INLINE])
--AC_BEFORE([$0], [AC_C_CONST])
--dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require
--dnl a magic option to avoid problems with ANSI preprocessor commands
--dnl like #elif.
--dnl FIXME: can't do this because then AC_AIX won't work due to a
--dnl circular dependency.
--dnl AC_BEFORE([$0], [AC_PROG_CPP])
--AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C)
--AC_CACHE_VAL(am_cv_prog_cc_stdc,
--[am_cv_prog_cc_stdc=no
--ac_save_CC="$CC"
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX -Aa -D_HPUX_SOURCE
--# SVR4 -Xc -D__EXTENSIONS__
--for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
--do
-- CC="$ac_save_CC $ac_arg"
-- AC_TRY_COMPILE(
--[#include <stdarg.h>
--#include <stdio.h>
--#include <sys/types.h>
--#include <sys/stat.h>
--/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
--struct buf { int x; };
--FILE * (*rcsopen) (struct buf *, struct stat *, int);
--static char *e (p, i)
-- char **p;
-- int i;
--{
-- return p[i];
--}
--static char *f (char * (*g) (char **, int), char **p, ...)
--{
-- char *s;
-- va_list v;
-- va_start (v,p);
-- s = g (p, va_arg (v,int));
-- va_end (v);
-- return s;
--}
--int test (int i, double x);
--struct s1 {int (*f) (int a);};
--struct s2 {int (*f) (double a);};
--int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
--int argc;
--char **argv;
--], [
--return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
--],
--[am_cv_prog_cc_stdc="$ac_arg"; break])
--done
--CC="$ac_save_CC"
--])
--if test -z "$am_cv_prog_cc_stdc"; then
-- AC_MSG_RESULT([none needed])
--else
-- AC_MSG_RESULT($am_cv_prog_cc_stdc)
--fi
--case "x$am_cv_prog_cc_stdc" in
-- x|xno) ;;
-- *) CC="$CC $am_cv_prog_cc_stdc" ;;
--esac
-+AC_DEFUN([AM_LC_MESSAGES],
-+[
-+ AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
-+ [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
-+ am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
-+ if test $am_cv_val_LC_MESSAGES = yes; then
-+ AC_DEFINE(HAVE_LC_MESSAGES, 1,
-+ [Define if your <locale.h> file defines LC_MESSAGES.])
-+ fi
- ])
-
- # Configure paths for GLIB
---- gtk+1.2-1.2.10.orig/config.guess
-+++ gtk+1.2-1.2.10/config.guess
-@@ -1,8 +1,10 @@
- #! /bin/sh
- # Attempt to guess a canonical system name.
--# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999
--# Free Software Foundation, Inc.
--#
-+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-+# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
-+
-+timestamp='2005-08-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
- # the Free Software Foundation; either version 2 of the License, or
-@@ -15,159 +17,290 @@
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
--# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-+# 02110-1301, USA.
- #
- # As a special exception to the GNU General Public License, if you
- # distribute this file as part of a program that contains a
- # configuration script generated by Autoconf, you may include it under
- # the same distribution terms that you use for the rest of that program.
-
--# Written by Per Bothner <bothner@cygnus.com>.
--# The master version of this file is at the FSF in /home/gd/gnu/lib.
--# Please send patches to <autoconf-patches@gnu.org>.
-+
-+# Originally written by Per Bothner <per@bothner.com>.
-+# Please send patches to <config-patches@gnu.org>. Submit a context
-+# diff and a properly formatted ChangeLog entry.
- #
- # This script attempts to guess a canonical system name similar to
- # config.sub. If it succeeds, it prints the system name on stdout, and
- # exits with 0. Otherwise, it exits with 1.
- #
- # The plan is that this can be called by configure scripts if you
--# don't specify an explicit system type (host/target name).
--#
--# Only a few systems have been added to this list; please add others
--# (but try to keep the structure clean).
--#
-+# don't specify an explicit build system type.
-
--# Use $HOST_CC if defined. $CC may point to a cross-compiler
--if test x"$CC_FOR_BUILD" = x; then
-- if test x"$HOST_CC" != x; then
-- CC_FOR_BUILD="$HOST_CC"
-- else
-- if test x"$CC" != x; then
-- CC_FOR_BUILD="$CC"
-- else
-- CC_FOR_BUILD=cc
-- fi
-- fi
-+me=`echo "$0" | sed -e 's,.*/,,'`
-+
-+usage="\
-+Usage: $0 [OPTION]
-+
-+Output the configuration name of the system \`$me' is run on.
-+
-+Operation modes:
-+ -h, --help print this help, then exit
-+ -t, --time-stamp print date of last modification, then exit
-+ -v, --version print version number, then exit
-+
-+Report bugs and patches to <config-patches@gnu.org>."
-+
-+version="\
-+GNU config.guess ($timestamp)
-+
-+Originally written by Per Bothner.
-+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-+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."
-+
-+help="
-+Try \`$me --help' for more information."
-+
-+# Parse command line
-+while test $# -gt 0 ; do
-+ case $1 in
-+ --time-stamp | --time* | -t )
-+ echo "$timestamp" ; exit ;;
-+ --version | -v )
-+ echo "$version" ; exit ;;
-+ --help | --h* | -h )
-+ echo "$usage"; exit ;;
-+ -- ) # Stop option processing
-+ shift; break ;;
-+ - ) # Use stdin as input.
-+ break ;;
-+ -* )
-+ echo "$me: invalid option $1$help" >&2
-+ exit 1 ;;
-+ * )
-+ break ;;
-+ esac
-+done
-+
-+if test $# != 0; then
-+ echo "$me: too many arguments$help" >&2
-+ exit 1
- fi
-
-+trap 'exit 1' 1 2 15
-+
-+# 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
-+# headache to deal with in a portable fashion.
-+
-+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-+# use `HOST_CC' if defined, but it is deprecated.
-+
-+# Portable tmp directory creation inspired by the Autoconf team.
-+
-+set_cc_for_build='
-+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-+: ${TMPDIR=/tmp} ;
-+ { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
-+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
-+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
-+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-+dummy=$tmp/dummy ;
-+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-+case $CC_FOR_BUILD,$HOST_CC,$CC in
-+ ,,) echo "int x;" > $dummy.c ;
-+ for c in cc gcc c89 c99 ; do
-+ if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
-+ CC_FOR_BUILD="$c"; break ;
-+ fi ;
-+ done ;
-+ if test x"$CC_FOR_BUILD" = x ; then
-+ CC_FOR_BUILD=no_compiler_found ;
-+ fi
-+ ;;
-+ ,,*) CC_FOR_BUILD=$CC ;;
-+ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-+esac ; set_cc_for_build= ;'
-
- # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
--# (ghazi@noc.rutgers.edu 8/24/94.)
-+# (ghazi@noc.rutgers.edu 1994-08-24)
- if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
- PATH=$PATH:/.attbin ; export PATH
- 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
-
--dummy=dummy-$$
--trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
--
- # Note: order is significant - the case branches are not exclusive.
-
- case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-+ *:NetBSD:*:*)
-+ # NetBSD (nbsd) targets should (where applicable) match one or
-+ # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
-+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
-+ # switched to ELF, *-*-netbsd* would select the old
-+ # object file format. This provides both forward
-+ # compatibility and a consistent mechanism for selecting the
-+ # object file format.
-+ #
-+ # 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=`(/sbin/$sysctl 2>/dev/null || \
-+ /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
-+ case "${UNAME_MACHINE_ARCH}" in
-+ armeb) machine=armeb-unknown ;;
-+ arm*) machine=arm-unknown ;;
-+ sh3el) machine=shl-unknown ;;
-+ sh3eb) machine=sh-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.
-+ case "${UNAME_MACHINE_ARCH}" in
-+ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-+ eval $set_cc_for_build
-+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-+ | grep __ELF__ >/dev/null
-+ then
-+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
-+ # Return netbsd for either. FIX?
-+ os=netbsd
-+ else
-+ os=netbsdelf
-+ fi
-+ ;;
-+ *)
-+ os=netbsd
-+ ;;
-+ esac
-+ # The OS release
-+ # Debian GNU/NetBSD machines have a different userland, and
-+ # 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
-+ Debian*)
-+ release='-gnu'
-+ ;;
-+ *)
-+ release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-+ ;;
-+ esac
-+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
-+ # contains redundant information, the shorter form:
-+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-+ echo "${machine}-${os}${release}"
-+ exit ;;
-+ *:OpenBSD:*:*)
-+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-+ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-+ exit ;;
-+ *:ekkoBSD:*:*)
-+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-+ exit ;;
-+ macppc:MirBSD:*:*)
-+ echo powerppc-unknown-mirbsd${UNAME_RELEASE}
-+ exit ;;
-+ *:MirBSD:*:*)
-+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-+ exit ;;
- alpha:OSF1:*:*)
-- if test $UNAME_RELEASE = "V4.0"; then
-+ case $UNAME_RELEASE in
-+ *4.0)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
-- fi
-+ ;;
-+ *5.*)
-+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
-+ ;;
-+ esac
-+ # According to Compaq, /usr/sbin/psrinfo has been available on
-+ # OSF/1 and Tru64 systems produced since 1995. I hope that
-+ # 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
-+ "EV4 (21064)")
-+ UNAME_MACHINE="alpha" ;;
-+ "EV4.5 (21064)")
-+ UNAME_MACHINE="alpha" ;;
-+ "LCA4 (21066/21068)")
-+ UNAME_MACHINE="alpha" ;;
-+ "EV5 (21164)")
-+ UNAME_MACHINE="alphaev5" ;;
-+ "EV5.6 (21164A)")
-+ UNAME_MACHINE="alphaev56" ;;
-+ "EV5.6 (21164PC)")
-+ UNAME_MACHINE="alphapca56" ;;
-+ "EV5.7 (21164PC)")
-+ UNAME_MACHINE="alphapca57" ;;
-+ "EV6 (21264)")
-+ UNAME_MACHINE="alphaev6" ;;
-+ "EV6.7 (21264A)")
-+ UNAME_MACHINE="alphaev67" ;;
-+ "EV6.8CB (21264C)")
-+ UNAME_MACHINE="alphaev68" ;;
-+ "EV6.8AL (21264B)")
-+ UNAME_MACHINE="alphaev68" ;;
-+ "EV6.8CX (21264D)")
-+ UNAME_MACHINE="alphaev68" ;;
-+ "EV6.9A (21264/EV69A)")
-+ UNAME_MACHINE="alphaev69" ;;
-+ "EV7 (21364)")
-+ UNAME_MACHINE="alphaev7" ;;
-+ "EV7.9 (21364A)")
-+ UNAME_MACHINE="alphaev79" ;;
-+ esac
-+ # A Pn.n version is a patched version.
- # A Vn.n version is a released version.
- # 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.
-- cat <<EOF >$dummy.s
-- .globl main
-- .ent main
--main:
-- .frame \$30,0,\$26,0
-- .prologue 0
-- .long 0x47e03d80 # implver $0
-- lda \$2,259
-- .long 0x47e20c21 # amask $2,$1
-- srl \$1,8,\$2
-- sll \$2,2,\$2
-- sll \$0,3,\$0
-- addl \$1,\$0,\$0
-- addl \$2,\$0,\$0
-- ret \$31,(\$26),1
-- .end main
--EOF
-- $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
-- if test "$?" = 0 ; then
-- ./$dummy
-- case "$?" in
-- 7)
-- UNAME_MACHINE="alpha"
-- ;;
-- 15)
-- UNAME_MACHINE="alphaev5"
-- ;;
-- 14)
-- UNAME_MACHINE="alphaev56"
-- ;;
-- 10)
-- UNAME_MACHINE="alphapca56"
-- ;;
-- 16)
-- UNAME_MACHINE="alphaev6"
-- ;;
-- esac
-- fi
-- rm -f $dummy.s $dummy
-- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-- exit 0 ;;
-+ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-+ exit ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
-- exit 0 ;;
-+ exit ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
-- exit 0 ;;
-+ exit ;;
- Amiga*:UNIX_System_V:4.0:*)
-- echo m68k-cbm-sysv4
-- exit 0;;
-- amiga:NetBSD:*:*)
-- echo m68k-cbm-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- amiga:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ echo m68k-unknown-sysv4
-+ exit ;;
- *:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
-- exit 0 ;;
-- arc64:OpenBSD:*:*)
-- echo mips64el-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- arc:OpenBSD:*:*)
-- echo mipsel-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- hkmips:OpenBSD:*:*)
-- echo mips-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- pmax:OpenBSD:*:*)
-- echo mipsel-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- sgi:OpenBSD:*:*)
-- echo mips-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- wgrisc:OpenBSD:*:*)
-- echo mipsel-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ *:[Mm]orph[Oo][Ss]:*:*)
-+ echo ${UNAME_MACHINE}-unknown-morphos
-+ exit ;;
- *:OS/390:*:*)
- echo i370-ibm-openedition
-- exit 0 ;;
-+ exit ;;
-+ *:z/VM:*:*)
-+ echo s390-ibm-zvmoe
-+ exit ;;
-+ *:OS400:*:*)
-+ echo powerpc-ibm-os400
-+ exit ;;
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
-- exit 0;;
-- arm32:NetBSD:*:*)
-- echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-- exit 0 ;;
-- SR2?01:HI-UX/MPP:*:*)
-+ exit ;;
-+ arm:riscos:*:*|arm:RISCOS:*:*)
-+ echo arm-unknown-riscos
-+ exit ;;
-+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- echo hppa1.1-hitachi-hiuxmpp
-- exit 0;;
-+ exit ;;
- 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
-@@ -175,25 +308,32 @@
- else
- echo pyramid-pyramid-bsd
- fi
-- exit 0 ;;
-+ exit ;;
- NILE*:*:*:dcosx)
- echo pyramid-pyramid-svr4
-- exit 0 ;;
-+ exit ;;
-+ DRS?6000:unix:4.0:6*)
-+ echo sparc-icl-nx6
-+ exit ;;
-+ 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 ;;
- sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-- exit 0 ;;
-+ exit ;;
- sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-- exit 0 ;;
-+ exit ;;
- i86pc:SunOS:5.*:*)
- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-- exit 0 ;;
-+ exit ;;
- 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 0 ;;
-+ exit ;;
- sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
- Series*|S4*)
-@@ -202,12 +342,12 @@
- esac
- # Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-- exit 0 ;;
-+ exit ;;
- sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- sun*:*:4.2BSD:*)
-- UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-+ 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
- sun3)
-@@ -217,19 +357,13 @@
- echo sparc-sun-sunos${UNAME_RELEASE}
- ;;
- esac
-- exit 0 ;;
-+ exit ;;
- aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
-- exit 0 ;;
-- atari*:NetBSD:*:*)
-- echo m68k-atari-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- atari*:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- # 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
-+ # "atarist" or "atariste" at least should have a processor
- # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
- # to the lowercase version "mint" (or "freemint"). Finally
- # the system name "TOS" denotes a system which is actually not
-@@ -237,61 +371,45 @@
- # be no problem.
- atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
-- exit 0 ;;
-- sun3*:NetBSD:*:*)
-- echo m68k-sun-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- sun3*:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- mac68k:NetBSD:*:*)
-- echo m68k-apple-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- mac68k:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- mvme68k:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- mvme88k:OpenBSD:*:*)
-- echo m88k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ m68k:machten:*:*)
-+ echo m68k-apple-machten${UNAME_RELEASE}
-+ exit ;;
- powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
-- exit 0 ;;
-- macppc:NetBSD:*:*)
-- echo powerpc-apple-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- RISC*:Mach:*:*)
- echo mips-dec-mach_bsd4.3
-- exit 0 ;;
-+ exit ;;
- RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- 2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- mips:*:*:UMIPS | mips:*:*:RISCos)
-+ eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #ifdef __cplusplus
-+#include <stdio.h> /* for printf() prototype */
- int main (int argc, char *argv[]) {
- #else
- int main (argc, argv) int argc; char *argv[]; {
-@@ -310,28 +428,37 @@
- exit (-1);
- }
- EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy \
-- && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-- && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-+ $CC_FOR_BUILD -o $dummy $dummy.c &&
-+ 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 0 ;;
-+ exit ;;
-+ Motorola:PowerMAX_OS:*:*)
-+ echo powerpc-motorola-powermax
-+ exit ;;
-+ Motorola:*:4.3:PL8-*)
-+ echo powerpc-harris-powermax
-+ exit ;;
-+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
-+ echo powerpc-harris-powermax
-+ exit ;;
- Night_Hawk:Power_UNIX:*:*)
- echo powerpc-harris-powerunix
-- exit 0 ;;
-+ exit ;;
- m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
-- exit 0 ;;
-+ exit ;;
- m88k:*:4*:R4*)
- echo m88k-motorola-sysv4
-- exit 0 ;;
-+ exit ;;
- m88k:*:3*:R3*)
- echo m88k-motorola-sysv3
-- exit 0 ;;
-+ exit ;;
- AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
-- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110]
-+ if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
- then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
-@@ -343,31 +470,40 @@
- else
- echo i586-dg-dgux${UNAME_RELEASE}
- fi
-- exit 0 ;;
-+ exit ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
-- exit 0 ;;
-+ exit ;;
- M88*:*:R3*:*)
- # Delta 88k system running SVR3
- echo m88k-motorola-sysv3
-- exit 0 ;;
-+ exit ;;
- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
- echo m88k-tektronix-sysv3
-- exit 0 ;;
-+ exit ;;
- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
- echo m68k-tektronix-bsd
-- exit 0 ;;
-+ exit ;;
- *:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-- exit 0 ;;
-+ exit ;;
- ????????: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 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
-- i?86:AIX:*:*)
-+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
-+ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
-+ i*86:AIX:*:*)
- echo i386-ibm-aix
-- exit 0 ;;
-+ exit ;;
-+ ia64:AIX:*:*)
-+ if [ -x /usr/bin/oslevel ] ; then
-+ IBM_REV=`/usr/bin/oslevel`
-+ else
-+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-+ fi
-+ echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-+ exit ;;
- *:AIX:2:3)
- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-+ eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <sys/systemcfg.h>
-
-@@ -379,18 +515,21 @@
- exit(0);
- }
- EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-- echo rs6000-ibm-aix3.2.5
-+ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
-+ then
-+ echo "$SYSTEM_NAME"
-+ else
-+ echo rs6000-ibm-aix3.2.5
-+ fi
- elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- echo rs6000-ibm-aix3.2.4
- else
- echo rs6000-ibm-aix3.2
- fi
-- exit 0 ;;
-- *:AIX:*:4)
-- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
-- if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
-+ exit ;;
-+ *:AIX:*:[45])
-+ 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
- IBM_ARCH=rs6000
- else
- IBM_ARCH=powerpc
-@@ -398,37 +537,56 @@
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
-- IBM_REV=4.${UNAME_RELEASE}
-+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-- exit 0 ;;
-+ exit ;;
- *:AIX:*:*)
- echo rs6000-ibm-aix
-- exit 0 ;;
-+ exit ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
- echo romp-ibm-bsd4.4
-- exit 0 ;;
-- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and
-+ exit ;;
-+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
-- exit 0 ;; # report: romp-ibm BSD 4.3
-+ exit ;; # report: romp-ibm BSD 4.3
- *:BOSX:*:*)
- echo rs6000-bull-bosx
-- exit 0 ;;
-+ exit ;;
- DPX/2?00:B.O.S.:*:*)
- echo m68k-bull-sysv3
-- exit 0 ;;
-+ exit ;;
- 9000/[34]??:4.3bsd:1.*:*)
- echo m68k-hp-bsd
-- exit 0 ;;
-+ exit ;;
- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- echo m68k-hp-bsd4.4
-- exit 0 ;;
-+ exit ;;
- 9000/[34678]??:HP-UX:*:*)
-+ 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])
-- sed 's/^ //' << EOF >$dummy.c
-+ if [ -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
-+ 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
-+ 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
-+ eval $set_cc_for_build
-+ sed 's/^ //' << EOF >$dummy.c
-+
-+ #define _HPUX_SOURCE
- #include <stdlib.h>
- #include <unistd.h>
-
-@@ -459,13 +617,39 @@
- exit (0);
- }
- EOF
-- (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
-- rm -f $dummy.c $dummy
-+ (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
-+ test -z "$HP_ARCH" && HP_ARCH=hppa
-+ fi ;;
- esac
-- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-+ if [ ${HP_ARCH} = "hppa2.0w" ]
-+ then
-+ eval $set_cc_for_build
-+
-+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
-+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
-+ # generating 64-bit code. GNU and HP use different nomenclature:
-+ #
-+ # $ CC_FOR_BUILD=cc ./config.guess
-+ # => hppa2.0w-hp-hpux11.23
-+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
-+ # => hppa64-hp-hpux11.23
-+
-+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-+ grep __LP64__ >/dev/null
-+ then
-+ HP_ARCH="hppa2.0w"
-+ else
-+ HP_ARCH="hppa64"
-+ fi
-+ fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
-- exit 0 ;;
-+ exit ;;
-+ ia64:HP-UX:*:*)
-+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-+ echo ia64-hp-hpux${HPUX_REV}
-+ exit ;;
- 3050*:HI-UX:*:*)
-+ eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <unistd.h>
- int
-@@ -491,434 +675,447 @@
- exit (0);
- }
- EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-+ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
-+ { echo "$SYSTEM_NAME"; exit; }
- echo unknown-hitachi-hiuxwe2
-- exit 0 ;;
-+ exit ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
- echo hppa1.1-hp-bsd
-- exit 0 ;;
-+ exit ;;
- 9000/8??:4.3bsd:*:*)
- echo hppa1.0-hp-bsd
-- exit 0 ;;
-- *9??*:MPE/iX:*:*)
-+ exit ;;
-+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
- echo hppa1.0-hp-mpeix
-- exit 0 ;;
-+ exit ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
- echo hppa1.1-hp-osf
-- exit 0 ;;
-+ exit ;;
- hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
-- exit 0 ;;
-- i?86:OSF1:*:*)
-+ exit ;;
-+ i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
- else
- echo ${UNAME_MACHINE}-unknown-osf1
- fi
-- exit 0 ;;
-+ exit ;;
- parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
-- exit 0 ;;
-- hppa*:OpenBSD:*:*)
-- echo hppa-unknown-openbsd
-- exit 0 ;;
-+ exit ;;
- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
- echo c1-convex-bsd
-- exit 0 ;;
-+ exit ;;
- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
-- exit 0 ;;
-+ exit ;;
- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
- echo c34-convex-bsd
-- exit 0 ;;
-+ exit ;;
- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
- echo c38-convex-bsd
-- exit 0 ;;
-+ exit ;;
- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- echo c4-convex-bsd
-- exit 0 ;;
-- CRAY*X-MP:*:*:*)
-- echo xmp-cray-unicos
-- exit 0 ;;
-+ exit ;;
- CRAY*Y-MP:*:*:*)
-- echo ymp-cray-unicos${UNAME_RELEASE}
-- exit 0 ;;
-+ echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
- CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
- | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
-- exit 0 ;;
-+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-+ -e 's/\.[^.]*$/.X/'
-+ exit ;;
- CRAY*TS:*:*:*)
-- echo t90-cray-unicos${UNAME_RELEASE}
-- exit 0 ;;
-+ echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
- CRAY*T3E:*:*:*)
-- echo alpha-cray-unicosmk${UNAME_RELEASE}
-- exit 0 ;;
-- CRAY-2:*:*:*)
-- echo cray2-cray-unicos
-- exit 0 ;;
-- F300:UNIX_System_V:*:*)
-+ echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
-+ CRAY*SV1:*:*:*)
-+ echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
-+ *:UNICOS/mp:*:*)
-+ echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-+ exit ;;
-+ 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 "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-- exit 0 ;;
-- F301:UNIX_System_V:*:*)
-- echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
-- exit 0 ;;
-- hp3[0-9][05]:NetBSD:*:*)
-- echo m68k-hp-netbsd${UNAME_RELEASE}
-- exit 0 ;;
-- hp300:OpenBSD:*:*)
-- echo m68k-unknown-openbsd${UNAME_RELEASE}
-- exit 0 ;;
-- i?86:BSD/386:*:* | i?86:BSD/OS:*:*)
-+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-+ exit ;;
-+ 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 ;;
-+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *:FreeBSD:*:*)
-- if test -x /usr/bin/objformat; then
-- if test "elf" = "`/usr/bin/objformat`"; then
-- echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
-- exit 0
-- fi
-- fi
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-- exit 0 ;;
-- *:NetBSD:*:*)
-- echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
-- exit 0 ;;
-- *:OpenBSD:*:*)
-- echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-- exit 0 ;;
-+ exit ;;
- i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
-- exit 0 ;;
-+ exit ;;
- i*:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
-- exit 0 ;;
-+ exit ;;
-+ i*:windows32*:*)
-+ # uname -m includes "-pc" on this system.
-+ echo ${UNAME_MACHINE}-mingw32
-+ exit ;;
-+ i*:PW*:*)
-+ echo ${UNAME_MACHINE}-pc-pw32
-+ exit ;;
-+ x86:Interix*:[34]*)
-+ echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
-+ exit ;;
-+ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-+ echo i${UNAME_MACHINE}-pc-mks
-+ exit ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
-- echo i386-pc-interix
-- exit 0 ;;
-+ echo i586-pc-interix
-+ exit ;;
- i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
-- exit 0 ;;
-+ exit ;;
-+ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-+ echo x86_64-unknown-cygwin
-+ exit ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
-- exit 0 ;;
-+ exit ;;
- prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-- exit 0 ;;
-+ exit ;;
- *:GNU:*:*)
-+ # the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-- exit 0 ;;
-- *:Linux:*:*)
--
-+ exit ;;
-+ *:GNU/*:*:*)
-+ # other systems with GNU libc and userland
-+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-+ exit ;;
-+ i*86:Minix:*:*)
-+ echo ${UNAME_MACHINE}-pc-minix
-+ exit ;;
-+ arm*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ cris:Linux:*:*)
-+ echo cris-axis-linux-gnu
-+ exit ;;
-+ crisv32:Linux:*:*)
-+ echo crisv32-axis-linux-gnu
-+ exit ;;
-+ frv:Linux:*:*)
-+ echo frv-unknown-linux-gnu
-+ exit ;;
-+ ia64:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ m32r*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ m68*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ mips:Linux:*:*)
-+ eval $set_cc_for_build
-+ sed 's/^ //' << EOF >$dummy.c
-+ #undef CPU
-+ #undef mips
-+ #undef mipsel
-+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-+ CPU=mipsel
-+ #else
-+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-+ CPU=mips
-+ #else
-+ CPU=
-+ #endif
-+ #endif
-+EOF
-+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
-+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-+ ;;
-+ mips64:Linux:*:*)
-+ eval $set_cc_for_build
-+ sed 's/^ //' << EOF >$dummy.c
-+ #undef CPU
-+ #undef mips64
-+ #undef mips64el
-+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-+ CPU=mips64el
-+ #else
-+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-+ CPU=mips64
-+ #else
-+ CPU=
-+ #endif
-+ #endif
-+EOF
-+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
-+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-+ ;;
-+ or32:Linux:*:*)
-+ echo or32-unknown-linux-gnu
-+ exit ;;
-+ ppc:Linux:*:*)
-+ echo powerpc-unknown-linux-gnu
-+ exit ;;
-+ ppc64:Linux:*:*)
-+ echo powerpc64-unknown-linux-gnu
-+ exit ;;
-+ alpha:Linux:*:*)
-+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-+ EV5) UNAME_MACHINE=alphaev5 ;;
-+ EV56) UNAME_MACHINE=alphaev56 ;;
-+ PCA56) UNAME_MACHINE=alphapca56 ;;
-+ PCA57) UNAME_MACHINE=alphapca56 ;;
-+ EV6) UNAME_MACHINE=alphaev6 ;;
-+ EV67) UNAME_MACHINE=alphaev67 ;;
-+ EV68*) UNAME_MACHINE=alphaev68 ;;
-+ esac
-+ objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
-+ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-+ exit ;;
-+ 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-gnu ;;
-+ PA8*) echo hppa2.0-unknown-linux-gnu ;;
-+ *) echo hppa-unknown-linux-gnu ;;
-+ esac
-+ exit ;;
-+ parisc64:Linux:*:* | hppa64:Linux:*:*)
-+ echo hppa64-unknown-linux-gnu
-+ exit ;;
-+ s390:Linux:*:* | s390x:Linux:*:*)
-+ echo ${UNAME_MACHINE}-ibm-linux
-+ exit ;;
-+ sh64*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ sh*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ sparc:Linux:*:* | sparc64:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ exit ;;
-+ x86_64:Linux:*:*)
-+ echo x86_64-unknown-linux-gnu
-+ exit ;;
-+ i*86:Linux:*:*)
- # The BFD linker knows what the default object file format is, so
- # first see if it will tell us. cd to the root directory to prevent
- # problems with other programs or directories called `ld' in the path.
-- ld_help_string=`cd /; ld --help 2>&1`
-- ld_supported_emulations=`echo $ld_help_string \
-- | sed -ne '/supported emulations:/!d
-+ # Set LC_ALL=C to ensure ld outputs messages in English.
-+ ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
-+ | sed -ne '/supported targets:/!d
- s/[ ][ ]*/ /g
-- s/.*supported emulations: *//
-+ s/.*supported targets: *//
- s/ .*//
- p'`
-- case "$ld_supported_emulations" in
-- *ia64)
-- echo "${UNAME_MACHINE}-unknown-linux"
-- exit 0
-+ case "$ld_supported_targets" in
-+ elf32-i386)
-+ TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
- ;;
-- i?86linux)
-+ a.out-i386-linux)
- echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-- exit 0
-- ;;
-- i?86coff)
-+ exit ;;
-+ coff-i386)
- echo "${UNAME_MACHINE}-pc-linux-gnucoff"
-- exit 0
-- ;;
-- sparclinux)
-- echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
-- exit 0
-- ;;
-- armlinux)
-- echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
-- exit 0
-- ;;
-- elf32arm*)
-- echo "${UNAME_MACHINE}-unknown-linux-gnu"
-- exit 0
-- ;;
-- armelf_linux*)
-- echo "${UNAME_MACHINE}-unknown-linux-gnu"
-- exit 0
-- ;;
-- m68klinux)
-- echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
-- exit 0
-- ;;
-- elf32ppc)
-- # Determine Lib Version
-- cat >$dummy.c <<EOF
--#include <features.h>
--#if defined(__GLIBC__)
--extern char __libc_version[];
--extern char __libc_release[];
--#endif
--main(argc, argv)
-- int argc;
-- char *argv[];
--{
--#if defined(__GLIBC__)
-- printf("%s %s\n", __libc_version, __libc_release);
--#else
-- printf("unkown\n");
--#endif
-- return 0;
--}
--EOF
-- LIBC=""
-- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
-- if test "$?" = 0 ; then
-- ./$dummy | grep 1\.99 > /dev/null
-- if test "$?" = 0 ; then
-- LIBC="libc1"
-- fi
-- fi
-- rm -f $dummy.c $dummy
-- echo powerpc-unknown-linux-gnu${LIBC}
-- exit 0
-- ;;
-+ exit ;;
-+ "")
-+ # Either a pre-BFD a.out linker (linux-gnuoldld) or
-+ # one that does not give us useful --help.
-+ echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
-+ exit ;;
- esac
--
-- if test "${UNAME_MACHINE}" = "alpha" ; then
-- sed 's/^ //' <<EOF >$dummy.s
-- .globl main
-- .ent main
-- main:
-- .frame \$30,0,\$26,0
-- .prologue 0
-- .long 0x47e03d80 # implver $0
-- lda \$2,259
-- .long 0x47e20c21 # amask $2,$1
-- srl \$1,8,\$2
-- sll \$2,2,\$2
-- sll \$0,3,\$0
-- addl \$1,\$0,\$0
-- addl \$2,\$0,\$0
-- ret \$31,(\$26),1
-- .end main
--EOF
-- LIBC=""
-- $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
-- if test "$?" = 0 ; then
-- ./$dummy
-- case "$?" in
-- 7)
-- UNAME_MACHINE="alpha"
-- ;;
-- 15)
-- UNAME_MACHINE="alphaev5"
-- ;;
-- 14)
-- UNAME_MACHINE="alphaev56"
-- ;;
-- 10)
-- UNAME_MACHINE="alphapca56"
-- ;;
-- 16)
-- UNAME_MACHINE="alphaev6"
-- ;;
-- esac
--
-- objdump --private-headers $dummy | \
-- grep ld.so.1 > /dev/null
-- if test "$?" = 0 ; then
-- LIBC="libc1"
-- fi
-- fi
-- rm -f $dummy.s $dummy
-- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
-- elif test "${UNAME_MACHINE}" = "mips" ; then
-- cat >$dummy.c <<EOF
--#ifdef __cplusplus
-- int main (int argc, char *argv[]) {
--#else
-- int main (argc, argv) int argc; char *argv[]; {
--#endif
--#ifdef __MIPSEB__
-- printf ("%s-unknown-linux-gnu\n", argv[1]);
--#endif
--#ifdef __MIPSEL__
-- printf ("%sel-unknown-linux-gnu\n", argv[1]);
--#endif
-- return 0;
--}
--EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-- else
-- # Either a pre-BFD a.out linker (linux-gnuoldld)
-- # or one that does not give us useful --help.
-- # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
-- # If ld does not provide *any* "supported emulations:"
-- # that means it is gnuoldld.
-- echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
-- test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
--
-- case "${UNAME_MACHINE}" in
-- i?86)
-- VENDOR=pc;
-- ;;
-- *)
-- VENDOR=unknown;
-- ;;
-- esac
-- # Determine whether the default compiler is a.out or elf
-- cat >$dummy.c <<EOF
--#include <features.h>
--#ifdef __cplusplus
-- int main (int argc, char *argv[]) {
--#else
-- int main (argc, argv) int argc; char *argv[]; {
--#endif
--#ifdef __ELF__
--# ifdef __GLIBC__
--# if __GLIBC__ >= 2
-- printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
--# else
-- printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
--# endif
--# else
-- printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
--# endif
--#else
-- printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
--#endif
-- return 0;
--}
-+ # Determine whether the default compiler is a.out or elf
-+ eval $set_cc_for_build
-+ sed 's/^ //' << EOF >$dummy.c
-+ #include <features.h>
-+ #ifdef __ELF__
-+ # ifdef __GLIBC__
-+ # if __GLIBC__ >= 2
-+ LIBC=gnu
-+ # else
-+ LIBC=gnulibc1
-+ # endif
-+ # else
-+ LIBC=gnulibc1
-+ # endif
-+ #else
-+ #ifdef __INTEL_COMPILER
-+ LIBC=gnu
-+ #else
-+ LIBC=gnuaout
-+ #endif
-+ #endif
-+ #ifdef __dietlibc__
-+ LIBC=dietlibc
-+ #endif
- EOF
-- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
-- rm -f $dummy.c $dummy
-- fi ;;
--# 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.
-- i?86:DYNIX/ptx:4*:*)
-+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
-+ test x"${LIBC}" != x && {
-+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
-+ exit
-+ }
-+ test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
-+ ;;
-+ 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 0 ;;
-- i?86:UNIX_SV:4.2MP:2.*)
-+ exit ;;
-+ 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 0 ;;
-- i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
-+ exit ;;
-+ 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 ;;
-+ i*86:XTS-300:*:STOP)
-+ echo ${UNAME_MACHINE}-unknown-stop
-+ exit ;;
-+ i*86:atheos:*:*)
-+ echo ${UNAME_MACHINE}-unknown-atheos
-+ exit ;;
-+ i*86:syllable:*:*)
-+ echo ${UNAME_MACHINE}-pc-syllable
-+ exit ;;
-+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
-+ echo i386-unknown-lynxos${UNAME_RELEASE}
-+ exit ;;
-+ i*86:*DOS:*:*)
-+ echo ${UNAME_MACHINE}-pc-msdosdjgpp
-+ exit ;;
-+ i*86:*:4.*:* | i*86:SYSTEM_V: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}
- else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
- fi
-- exit 0 ;;
-- i?86:*:5:7*)
-- # Fixed at (any) Pentium or better
-- UNAME_MACHINE=i586
-- if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
-- echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
-- else
-- echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
-- fi
-- exit 0 ;;
-- i?86:*:3.2:*)
-+ exit ;;
-+ i*86:*:5:[678]*)
-+ # UnixWare 7.x, OpenUNIX and OpenServer 6.
-+ case `/bin/uname -X | grep "^Machine"` in
-+ *486*) UNAME_MACHINE=i486 ;;
-+ *Pentium) UNAME_MACHINE=i586 ;;
-+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
-+ esac
-+ echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-+ exit ;;
-+ 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
- elif /bin/uname -X 2>/dev/null >/dev/null ; then
-- UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
-- (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
-- (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
-+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
-+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
-+ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
- && UNAME_MACHINE=i586
-- (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
-+ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
- && UNAME_MACHINE=i686
-- (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
-+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
- && UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
- else
- echo ${UNAME_MACHINE}-pc-sysv32
- fi
-- exit 0 ;;
-+ exit ;;
- pc:*:*:*)
-+ # Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i386.
- echo i386-pc-msdosdjgpp
-- exit 0 ;;
-+ exit ;;
- Intel:Mach:3*:*)
- echo i386-pc-mach3
-- exit 0 ;;
-+ exit ;;
- paragon:*:*:*)
- echo i860-intel-osf1
-- exit 0 ;;
-+ exit ;;
- 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
- else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
- fi
-- exit 0 ;;
-+ exit ;;
- mini*:CTIX:SYS*5:*)
- # "miniframe"
- echo m68010-convergent-sysv
-- exit 0 ;;
-- M68*:*:R3V[567]*:*)
-- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
-- 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
-+ exit ;;
-+ mc68k:UNIX:SYSTEM5:3.51m)
-+ echo m68k-convergent-sysv
-+ exit ;;
-+ M680?0:D-NIX:5.3:*)
-+ echo m68k-diab-dnix
-+ exit ;;
-+ 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)
- OS_REL=''
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-- && echo i486-ncr-sysv4.3${OS_REL} && exit 0
-+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
-+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-- && echo i486-ncr-sysv4 && exit 0 ;;
-- m68*:LynxOS:2.*:*)
-+ && { echo i486-ncr-sysv4; exit; } ;;
-+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
-- exit 0 ;;
-- i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
-- echo i386-unknown-lynxos${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
-- exit 0 ;;
-- rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
-+ exit ;;
-+ rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
-+ echo powerpc-unknown-lynxos${UNAME_RELEASE}
-+ exit ;;
- SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- RM*:ReliantUNIX-*:*:*)
- echo mips-sni-sysv4
-- exit 0 ;;
-+ exit ;;
- RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
-- exit 0 ;;
-+ exit ;;
- *:SINIX-*:*:*)
- if uname -p 2>/dev/null >/dev/null ; then
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
-@@ -926,62 +1123,153 @@
- else
- echo ns32k-sni-sysv
- fi
-- exit 0 ;;
-- PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-- # says <Richard.M.Bartel@ccMail.Census.GOV>
-+ exit ;;
-+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-+ # says <Richard.M.Bartel@ccMail.Census.GOV>
- echo i586-unisys-sysv4
-- exit 0 ;;
-+ exit ;;
- *:UNIX_System_V:4*:FTX*)
- # From Gerald Hewes <hewes@openmarket.com>.
- # How about differentiating between stratus architectures? -djm
- echo hppa1.1-stratus-sysv4
-- exit 0 ;;
-+ exit ;;
- *:*:*:FTX*)
- # From seanf@swdc.stratus.com.
- echo i860-stratus-sysv4
-- exit 0 ;;
-+ exit ;;
-+ i*86:VOS:*:*)
-+ # From Paul.Green@stratus.com.
-+ echo ${UNAME_MACHINE}-stratus-vos
-+ exit ;;
-+ *:VOS:*:*)
-+ # From Paul.Green@stratus.com.
-+ echo hppa1.1-stratus-vos
-+ exit ;;
- mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
-- exit 0 ;;
-- news*:NEWS-OS:*:6*)
-+ exit ;;
-+ news*:NEWS-OS:6*:*)
- echo mips-sony-newsos6
-- exit 0 ;;
-+ exit ;;
- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
- else
- echo mips-unknown-sysv${UNAME_RELEASE}
- fi
-- exit 0 ;;
-+ exit ;;
- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
- echo powerpc-be-beos
-- exit 0 ;;
-+ exit ;;
- BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
- echo powerpc-apple-beos
-- exit 0 ;;
-+ exit ;;
- BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
- echo i586-pc-beos
-- exit 0 ;;
-+ exit ;;
- SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ SX-6:SUPER-UX:*:*)
-+ echo sx6-nec-superux${UNAME_RELEASE}
-+ exit ;;
- Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
- *:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-- exit 0 ;;
-+ exit ;;
-+ *:Darwin:*:*)
-+ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-+ case $UNAME_PROCESSOR in
-+ *86) UNAME_PROCESSOR=i686 ;;
-+ unknown) UNAME_PROCESSOR=powerpc ;;
-+ esac
-+ echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-+ exit ;;
-+ *: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 ;;
- *:QNX:*:4*)
-- echo i386-qnx-qnx${UNAME_VERSION}
-- exit 0 ;;
-+ echo i386-pc-qnx
-+ exit ;;
-+ NSE-?:NONSTOP_KERNEL:*:*)
-+ echo nse-tandem-nsk${UNAME_RELEASE}
-+ exit ;;
-+ NSR-?:NONSTOP_KERNEL:*:*)
-+ echo nsr-tandem-nsk${UNAME_RELEASE}
-+ exit ;;
-+ *:NonStop-UX:*:*)
-+ echo mips-compaq-nonstopux
-+ exit ;;
-+ BS2000:POSIX*:*:*)
-+ echo bs2000-siemens-sysv
-+ exit ;;
-+ DS/*:UNIX_System_V:*:*)
-+ echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-+ exit ;;
-+ *:Plan9:*:*)
-+ # "uname -m" is not consistent, so use $cputype instead. 386
-+ # is converted to i386 for consistency with other x86
-+ # operating systems.
-+ if test "$cputype" = "386"; then
-+ UNAME_MACHINE=i386
-+ else
-+ UNAME_MACHINE="$cputype"
-+ fi
-+ echo ${UNAME_MACHINE}-unknown-plan9
-+ exit ;;
-+ *:TOPS-10:*:*)
-+ echo pdp10-unknown-tops10
-+ exit ;;
-+ *:TENEX:*:*)
-+ echo pdp10-unknown-tenex
-+ exit ;;
-+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
-+ echo pdp10-dec-tops20
-+ exit ;;
-+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
-+ echo pdp10-xkl-tops20
-+ exit ;;
-+ *:TOPS-20:*:*)
-+ echo pdp10-unknown-tops20
-+ exit ;;
-+ *:ITS:*:*)
-+ echo pdp10-unknown-its
-+ exit ;;
-+ SEI:*:*:SEIUX)
-+ echo mips-sei-seiux${UNAME_RELEASE}
-+ exit ;;
-+ *:DragonFly:*:*)
-+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-+ exit ;;
-+ *:*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 ;;
-+ esac ;;
-+ *:XENIX:*:SysV)
-+ echo i386-pc-xenix
-+ exit ;;
-+ i*86:skyos:*:*)
-+ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
-+ exit ;;
- esac
-
- #echo '(No uname command or uname output not recognized.)' 1>&2
- #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-+eval $set_cc_for_build
- cat >$dummy.c <<EOF
- #ifdef _SEQUENT_
- # include <sys/types.h>
-@@ -1007,7 +1295,7 @@
- #endif
-
- #if defined (__arm) && defined (__acorn) && defined (__unix)
-- printf ("arm-acorn-riscix"); exit (0);
-+ printf ("arm-acorn-riscix\n"); exit (0);
- #endif
-
- #if defined (hp300) && !defined (hpux)
-@@ -1068,11 +1356,24 @@
- #endif
-
- #if defined (vax)
--#if !defined (ultrix)
-- printf ("vax-dec-bsd\n"); exit (0);
--#else
-- printf ("vax-dec-ultrix\n"); exit (0);
--#endif
-+# if !defined (ultrix)
-+# include <sys/param.h>
-+# if defined (BSD)
-+# if BSD == 43
-+ printf ("vax-dec-bsd4.3\n"); exit (0);
-+# else
-+# if BSD == 199006
-+ printf ("vax-dec-bsd4.3reno\n"); exit (0);
-+# else
-+ printf ("vax-dec-bsd\n"); exit (0);
-+# endif
-+# endif
-+# else
-+ printf ("vax-dec-bsd\n"); exit (0);
-+# endif
-+# else
-+ printf ("vax-dec-ultrix\n"); exit (0);
-+# endif
- #endif
-
- #if defined (alliant) && defined (i860)
-@@ -1083,12 +1384,12 @@
- }
- EOF
-
--$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0
--rm -f $dummy.c $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.
-
--test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
-+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
- # Convex versions that predate uname can use getsysinfo(1)
-
-@@ -1097,25 +1398,69 @@
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
-- exit 0 ;;
-+ exit ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
-- exit 0 ;;
-+ exit ;;
- c34*)
- echo c34-convex-bsd
-- exit 0 ;;
-+ exit ;;
- c38*)
- echo c38-convex-bsd
-- exit 0 ;;
-+ exit ;;
- c4*)
- echo c4-convex-bsd
-- exit 0 ;;
-+ exit ;;
- esac
- fi
-
--#echo '(Unable to guess system type)' 1>&2
-+cat >&2 <<EOF
-+$0: unable to guess system type
-+
-+This script, last modified $timestamp, has failed to recognize
-+the operating system you are using. It is advised that you
-+download the most up to date version of the config scripts from
-+
-+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
-+and
-+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
-+
-+If the version you run ($0) is already up to date, please
-+send the following data and any information you think might be
-+pertinent to <config-patches@gnu.org> in order to provide the needed
-+information to handle your system.
-+
-+config.guess timestamp = $timestamp
-+
-+uname -m = `(uname -m) 2>/dev/null || echo unknown`
-+uname -r = `(uname -r) 2>/dev/null || echo unknown`
-+uname -s = `(uname -s) 2>/dev/null || echo unknown`
-+uname -v = `(uname -v) 2>/dev/null || echo unknown`
-+
-+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-+/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
-+
-+hostinfo = `(hostinfo) 2>/dev/null`
-+/bin/universe = `(/bin/universe) 2>/dev/null`
-+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
-+/bin/arch = `(/bin/arch) 2>/dev/null`
-+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
-+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-+
-+UNAME_MACHINE = ${UNAME_MACHINE}
-+UNAME_RELEASE = ${UNAME_RELEASE}
-+UNAME_SYSTEM = ${UNAME_SYSTEM}
-+UNAME_VERSION = ${UNAME_VERSION}
-+EOF
-
- exit 1
-+
-+# Local variables:
-+# eval: (add-hook 'write-file-hooks 'time-stamp)
-+# time-stamp-start: "timestamp='"
-+# time-stamp-format: "%:y-%02m-%02d"
-+# time-stamp-end: "'"
-+# End:
---- gtk+1.2-1.2.10.orig/config.h.in
-+++ gtk+1.2-1.2.10/config.h.in
-@@ -1,4 +1,4 @@
--/* config.h.in. Generated automatically from configure.in by autoheader. */
-+/* config.h.in. Generated automatically from configure.in by autoheader 2.13. */
-
- /* Define if using alloca.c. */
- #undef C_ALLOCA
-@@ -28,9 +28,6 @@
- /* Define to `long' if <sys/types.h> doesn't define. */
- #undef off_t
-
--/* Define if you need to in order for stat and other things to work. */
--#undef _POSIX_SOURCE
--
- /* Define as the return type of signal handlers (int or void). */
- #undef RETSIGTYPE
-
-@@ -69,6 +66,7 @@
- #undef HAVE_SHAPE_EXT
- #undef HAVE_SYS_SELECT_H
- #undef HAVE_XCONVERTCASE
-+#undef HAVE_CODESET
-
- #undef NO_FD_SET
-
-@@ -134,6 +132,9 @@
- /* Define if you have the <argz.h> header file. */
- #undef HAVE_ARGZ_H
-
-+/* Define if you have the <dlfcn.h> header file. */
-+#undef HAVE_DLFCN_H
-+
- /* Define if you have the <limits.h> header file. */
- #undef HAVE_LIMITS_H
-
-@@ -158,6 +159,12 @@
- /* Define if you have the i library (-li). */
- #undef HAVE_LIBI
-
-+/* Define if your <locale.h> file defines LC_MESSAGES. */
-+#undef HAVE_LC_MESSAGES
-+
-+/* Have nl_langinfo (CODESET) */
-+#undef HAVE_CODESET
-+
- /* Define if wchar.h exists */
- #undef HAVE_WCHAR_H
-
---- gtk+1.2-1.2.10.orig/config.sub
-+++ gtk+1.2-1.2.10/config.sub
-@@ -1,6 +1,10 @@
- #! /bin/sh
--# Configuration validation subroutine script, version 1.1.
--# Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc.
-+# Configuration validation subroutine script.
-+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-+# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
-+
-+timestamp='2005-07-08'
-+
- # This file is (in principle) common to ALL GNU software.
- # The presence of a machine in this file suggests that SOME GNU software
- # can handle that machine. It does not imply ALL GNU software can.
-@@ -17,14 +21,18 @@
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
--# Foundation, Inc., 59 Temple Place - Suite 330,
--# Boston, MA 02111-1307, USA.
--
-+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-+# 02110-1301, USA.
-+#
- # As a special exception to the GNU General Public License, if you
- # distribute this file as part of a program that contains a
- # configuration script generated by Autoconf, you may include it under
- # the same distribution terms that you use for the rest of that program.
-
-+
-+# Please send patches to <config-patches@gnu.org>. Submit a context
-+# diff and a properly formatted ChangeLog entry.
-+#
- # Configuration subroutine to validate and canonicalize a configuration type.
- # Supply the specified configuration type as an argument.
- # If it is invalid, we print an error message on stderr and exit with code 1.
-@@ -45,30 +53,74 @@
- # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
- # It is wrong to echo any other type of specification.
-
--if [ x$1 = x ]
--then
-- echo Configuration name missing. 1>&2
-- echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
-- echo "or $0 ALIAS" 1>&2
-- echo where ALIAS is a recognized configuration type. 1>&2
-- exit 1
--fi
-+me=`echo "$0" | sed -e 's,.*/,,'`
-
--# First pass through any local machine types.
--case $1 in
-- *local*)
-- echo $1
-- exit 0
-- ;;
-- *)
-- ;;
-+usage="\
-+Usage: $0 [OPTION] CPU-MFR-OPSYS
-+ $0 [OPTION] ALIAS
-+
-+Canonicalize a configuration name.
-+
-+Operation modes:
-+ -h, --help print this help, then exit
-+ -t, --time-stamp print date of last modification, then exit
-+ -v, --version print version number, then exit
-+
-+Report bugs and patches to <config-patches@gnu.org>."
-+
-+version="\
-+GNU config.sub ($timestamp)
-+
-+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-+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."
-+
-+help="
-+Try \`$me --help' for more information."
-+
-+# Parse command line
-+while test $# -gt 0 ; do
-+ case $1 in
-+ --time-stamp | --time* | -t )
-+ echo "$timestamp" ; exit ;;
-+ --version | -v )
-+ echo "$version" ; exit ;;
-+ --help | --h* | -h )
-+ echo "$usage"; exit ;;
-+ -- ) # Stop option processing
-+ shift; break ;;
-+ - ) # Use stdin as input.
-+ break ;;
-+ -* )
-+ echo "$me: invalid option $1$help"
-+ exit 1 ;;
-+
-+ *local*)
-+ # First pass through any local machine types.
-+ echo $1
-+ exit ;;
-+
-+ * )
-+ break ;;
-+ esac
-+done
-+
-+case $# in
-+ 0) echo "$me: missing argument$help" >&2
-+ exit 1;;
-+ 1) ;;
-+ *) echo "$me: too many arguments$help" >&2
-+ exit 1;;
- esac
-
- # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
- # Here we must recognize all the valid KERNEL-OS combinations.
- maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
- case $maybe_os in
-- linux-gnu*)
-+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
-+ kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
-@@ -94,7 +146,7 @@
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-- -apple)
-+ -apple | -axis | -knuth | -cray)
- os=
- basic_machine=$1
- ;;
-@@ -108,6 +160,14 @@
- os=-vxworks
- basic_machine=$1
- ;;
-+ -chorusos*)
-+ os=-chorusos
-+ basic_machine=$1
-+ ;;
-+ -chorusrdb)
-+ os=-chorusrdb
-+ basic_machine=$1
-+ ;;
- -hiux*)
- os=-hiuxwe2
- ;;
-@@ -166,27 +226,71 @@
- case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
-- tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
-- | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
-- | 580 | i960 | h8300 \
-- | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
-- | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \
-- | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
-- | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
-- | mips64orion | mips64orionel | mipstx39 | mipstx39el \
-- | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
-- | mips64vr5000 | miprs64vr5000el | mcore \
-- | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
-- | thumb | d10v | fr30)
-+ 1750a | 580 \
-+ | a29k \
-+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-+ | am33_2.0 \
-+ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
-+ | bfin \
-+ | c4x | clipper \
-+ | d10v | d30v | dlx | dsp16xx \
-+ | fr30 | frv \
-+ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-+ | i370 | i860 | i960 | ia64 \
-+ | ip2k | iq2000 \
-+ | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
-+ | mips | mipsbe | mipseb | mipsel | mipsle \
-+ | mips16 \
-+ | mips64 | mips64el \
-+ | mips64vr | mips64vrel \
-+ | mips64orion | mips64orionel \
-+ | mips64vr4100 | mips64vr4100el \
-+ | mips64vr4300 | mips64vr4300el \
-+ | mips64vr5000 | mips64vr5000el \
-+ | mips64vr5900 | mips64vr5900el \
-+ | mipsisa32 | mipsisa32el \
-+ | mipsisa32r2 | mipsisa32r2el \
-+ | mipsisa64 | mipsisa64el \
-+ | mipsisa64r2 | mipsisa64r2el \
-+ | mipsisa64sb1 | mipsisa64sb1el \
-+ | mipsisa64sr71k | mipsisa64sr71kel \
-+ | mipstx39 | mipstx39el \
-+ | mn10200 | mn10300 \
-+ | ms1 \
-+ | msp430 \
-+ | ns16k | ns32k \
-+ | or32 \
-+ | pdp10 | pdp11 | pj | pjl \
-+ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
-+ | pyramid \
-+ | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
-+ | sh64 | sh64le \
-+ | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
-+ | sparcv8 | sparcv9 | sparcv9b \
-+ | strongarm \
-+ | tahoe | thumb | tic4x | tic80 | tron \
-+ | v850 | v850e \
-+ | we32k \
-+ | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
-+ | z8k)
- basic_machine=$basic_machine-unknown
- ;;
-- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl)
-+ m32c)
-+ basic_machine=$basic_machine-unknown
-+ ;;
-+ m6811 | m68hc11 | m6812 | m68hc12)
-+ # Motorola 68HC11/12.
-+ basic_machine=$basic_machine-unknown
-+ os=-none
-+ ;;
-+ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
- ;;
-
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
-- i[34567]86)
-+ i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
-@@ -195,24 +299,67 @@
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
-- # FIXME: clean up the formatting here.
-- vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
-- | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
-- | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
-- | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
-- | xmp-* | ymp-* \
-- | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \
-- | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \
-- | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
-- | clipper-* | orion-* \
-- | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
-- | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \
-- | mips64el-* | mips64orion-* | mips64orionel-* \
-- | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
-- | mipstx39-* | mipstx39el-* | mcore-* \
-- | f301-* | armv*-* | t3e-* \
-- | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
-- | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* )
-+ 580-* \
-+ | a29k-* \
-+ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-+ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
-+ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
-+ | avr-* \
-+ | bfin-* | bs2000-* \
-+ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
-+ | clipper-* | craynv-* | cydra-* \
-+ | d10v-* | d30v-* | dlx-* \
-+ | elxsi-* \
-+ | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
-+ | h8300-* | h8500-* \
-+ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-+ | i*86-* | i860-* | i960-* | ia64-* \
-+ | ip2k-* | iq2000-* \
-+ | m32r-* | m32rle-* \
-+ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-+ | m88110-* | m88k-* | maxq-* | mcore-* \
-+ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-+ | mips16-* \
-+ | mips64-* | mips64el-* \
-+ | mips64vr-* | mips64vrel-* \
-+ | mips64orion-* | mips64orionel-* \
-+ | mips64vr4100-* | mips64vr4100el-* \
-+ | mips64vr4300-* | mips64vr4300el-* \
-+ | mips64vr5000-* | mips64vr5000el-* \
-+ | mips64vr5900-* | mips64vr5900el-* \
-+ | mipsisa32-* | mipsisa32el-* \
-+ | mipsisa32r2-* | mipsisa32r2el-* \
-+ | mipsisa64-* | mipsisa64el-* \
-+ | mipsisa64r2-* | mipsisa64r2el-* \
-+ | mipsisa64sb1-* | mipsisa64sb1el-* \
-+ | mipsisa64sr71k-* | mipsisa64sr71kel-* \
-+ | mipstx39-* | mipstx39el-* \
-+ | mmix-* \
-+ | ms1-* \
-+ | msp430-* \
-+ | none-* | np1-* | ns16k-* | ns32k-* \
-+ | orion-* \
-+ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
-+ | pyramid-* \
-+ | romp-* | rs6000-* \
-+ | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \
-+ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-+ | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
-+ | sparclite-* \
-+ | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
-+ | tahoe-* | thumb-* \
-+ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
-+ | tron-* \
-+ | v850-* | v850e-* | vax-* \
-+ | we32k-* \
-+ | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
-+ | xstormy16-* | xtensa-* \
-+ | ymp-* \
-+ | z8k-*)
-+ ;;
-+ m32c-*)
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
-@@ -230,6 +377,9 @@
- basic_machine=a29k-amd
- os=-udi
- ;;
-+ abacus)
-+ basic_machine=abacus-unknown
-+ ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
-@@ -244,19 +394,25 @@
- basic_machine=a29k-none
- os=-bsd
- ;;
-+ amd64)
-+ basic_machine=x86_64-pc
-+ ;;
-+ amd64-*)
-+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
-- basic_machine=m68k-cbm
-+ basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
-- basic_machine=m68k-cbm
-+ basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
-- basic_machine=m68k-cbm
-+ basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
-@@ -275,6 +431,10 @@
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
-+ c90)
-+ basic_machine=c90-cray
-+ os=-unicos
-+ ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
-@@ -295,27 +455,45 @@
- basic_machine=c38-convex
- os=-bsd
- ;;
-- cray | ymp)
-- basic_machine=ymp-cray
-+ cray | j90)
-+ basic_machine=j90-cray
- os=-unicos
- ;;
-- cray2)
-- basic_machine=cray2-cray
-- os=-unicos
-+ craynv)
-+ basic_machine=craynv-cray
-+ os=-unicosmp
- ;;
-- [ctj]90-cray)
-- basic_machine=c90-cray
-- os=-unicos
-+ cr16c)
-+ basic_machine=cr16c-unknown
-+ os=-elf
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
-+ crisv32 | crisv32-* | etraxfs*)
-+ basic_machine=crisv32-axis
-+ ;;
-+ cris | cris-* | etrax*)
-+ basic_machine=cris-axis
-+ ;;
-+ crx)
-+ basic_machine=crx-unknown
-+ os=-elf
-+ ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
- ;;
-+ decsystem10* | dec10*)
-+ basic_machine=pdp10-dec
-+ os=-tops10
-+ ;;
-+ decsystem20* | dec20*)
-+ basic_machine=pdp10-dec
-+ os=-tops20
-+ ;;
- delta | 3300 | motorola-3300 | motorola-delta \
- | 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
-@@ -324,6 +502,10 @@
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
-+ djgpp)
-+ basic_machine=i586-pc
-+ os=-msdosdjgpp
-+ ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
-@@ -357,6 +539,10 @@
- basic_machine=tron-gmicro
- os=-sysv
- ;;
-+ go32)
-+ basic_machine=i386-pc
-+ os=-go32
-+ ;;
- h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
-@@ -432,19 +618,19 @@
- basic_machine=i370-ibm
- ;;
- # I'm not sure what "Sysv32" means. Should this be sysv3.2?
-- i[34567]86v32)
-+ i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
- ;;
-- i[34567]86v4*)
-+ i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
- ;;
-- i[34567]86v)
-+ i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
- ;;
-- i[34567]86sol2)
-+ i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
-@@ -456,17 +642,6 @@
- basic_machine=i386-unknown
- os=-vsta
- ;;
-- i386-go32 | go32)
-- basic_machine=i386-unknown
-- os=-go32
-- ;;
-- i386-mingw32 | mingw32)
-- basic_machine=i386-unknown
-- os=-mingw32
-- ;;
-- i386-qnx | qnx)
-- basic_machine=i386-qnx
-- ;;
- iris | iris4d)
- basic_machine=mips-sgi
- case $os in
-@@ -492,6 +667,10 @@
- basic_machine=ns32k-utek
- os=-sysv
- ;;
-+ mingw32)
-+ basic_machine=i386-pc
-+ os=-mingw32
-+ ;;
- miniframe)
- basic_machine=m68000-convergent
- ;;
-@@ -499,14 +678,6 @@
- basic_machine=m68k-atari
- os=-mint
- ;;
-- mipsel*-linux*)
-- basic_machine=mipsel-unknown
-- os=-linux-gnu
-- ;;
-- mips*-linux*)
-- basic_machine=mips-unknown
-- os=-linux-gnu
-- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
-@@ -517,8 +688,12 @@
- basic_machine=m68k-rom68k
- os=-coff
- ;;
-+ morphos)
-+ basic_machine=powerpc-unknown
-+ os=-morphos
-+ ;;
- msdos)
-- basic_machine=i386-unknown
-+ basic_machine=i386-pc
- os=-msdos
- ;;
- mvs)
-@@ -582,13 +757,27 @@
- basic_machine=i960-intel
- os=-mon960
- ;;
-+ nonstopux)
-+ basic_machine=mips-compaq
-+ os=-nonstopux
-+ ;;
- np1)
- basic_machine=np1-gould
- ;;
-+ nsr-tandem)
-+ basic_machine=nsr-tandem
-+ ;;
- op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
-+ openrisc | openrisc-*)
-+ basic_machine=or32-unknown
-+ ;;
-+ os400)
-+ basic_machine=powerpc-ibm
-+ os=-os400
-+ ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
-@@ -611,45 +800,65 @@
- pbb)
- basic_machine=m68k-tti
- ;;
-- pc532 | pc532-*)
-+ pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
-- pentium | p5 | k5 | k6 | nexen)
-+ pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
-- pentiumpro | p6 | 6x86)
-+ pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
-- pentiumii | pentium2)
-+ pentiumii | pentium2 | pentiumiii | pentium3)
-+ basic_machine=i686-pc
-+ ;;
-+ pentium4)
- basic_machine=i786-pc
- ;;
-- pentium-* | p5-* | k5-* | k6-* | nexen-*)
-+ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
-- pentiumpro-* | p6-* | 6x86-*)
-+ pentiumpro-* | p6-* | 6x86-* | athlon-*)
-+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
-+ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
-- pentiumii-* | pentium2-*)
-+ pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
- ;;
-- power) basic_machine=rs6000-ibm
-+ power) basic_machine=power-ibm
- ;;
- ppc) basic_machine=powerpc-unknown
-- ;;
-+ ;;
- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
-- ;;
-+ ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
-+ ppc64) basic_machine=powerpc64-unknown
-+ ;;
-+ ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
-+ ppc64le | powerpc64little | ppc64-le | powerpc64-little)
-+ basic_machine=powerpc64le-unknown
-+ ;;
-+ ppc64le-* | powerpc64little-*)
-+ basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
- ps2)
- basic_machine=i386-ibm
- ;;
-+ pw32)
-+ basic_machine=i586-unknown
-+ os=-pw32
-+ ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=-coff
-@@ -660,10 +869,26 @@
- rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
-+ s390 | s390-*)
-+ basic_machine=s390-ibm
-+ ;;
-+ s390x | s390x-*)
-+ basic_machine=s390x-ibm
-+ ;;
- sa29200)
- basic_machine=a29k-amd
- os=-udi
- ;;
-+ sb1)
-+ basic_machine=mipsisa64sb1-unknown
-+ ;;
-+ sb1el)
-+ basic_machine=mipsisa64sb1el-unknown
-+ ;;
-+ sei)
-+ basic_machine=mips-sei
-+ os=-seiux
-+ ;;
- sequent)
- basic_machine=i386-sequent
- ;;
-@@ -671,7 +896,10 @@
- basic_machine=sh-hitachi
- os=-hms
- ;;
-- sparclite-wrs)
-+ sh64)
-+ basic_machine=sh64-unknown
-+ ;;
-+ sparclite-wrs | simso-wrs)
- basic_machine=sparclite-wrs
- os=-vxworks
- ;;
-@@ -729,23 +957,51 @@
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
- ;;
-+ sv1)
-+ basic_machine=sv1-cray
-+ os=-unicos
-+ ;;
- symmetry)
- basic_machine=i386-sequent
- os=-dynix
- ;;
- t3e)
-- basic_machine=t3e-cray
-+ basic_machine=alphaev5-cray
-+ os=-unicos
-+ ;;
-+ t90)
-+ basic_machine=t90-cray
- os=-unicos
- ;;
-+ tic54x | c54x*)
-+ basic_machine=tic54x-unknown
-+ os=-coff
-+ ;;
-+ tic55x | c55x*)
-+ basic_machine=tic55x-unknown
-+ os=-coff
-+ ;;
-+ tic6x | c6x*)
-+ basic_machine=tic6x-unknown
-+ os=-coff
-+ ;;
- tx39)
- basic_machine=mipstx39-unknown
- ;;
- tx39el)
- basic_machine=mipstx39el-unknown
- ;;
-+ toad1)
-+ basic_machine=pdp10-xkl
-+ os=-tops20
-+ ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
-+ tpf)
-+ basic_machine=s390x-ibm
-+ os=-tpf
-+ ;;
- udi29k)
- basic_machine=a29k-amd
- os=-udi
-@@ -767,8 +1023,8 @@
- os=-vms
- ;;
- vpp*|vx|vx-*)
-- basic_machine=f301-fujitsu
-- ;;
-+ basic_machine=f301-fujitsu
-+ ;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
-@@ -789,13 +1045,17 @@
- basic_machine=hppa1.1-winbond
- os=-proelf
- ;;
-- xmp)
-- basic_machine=xmp-cray
-- os=-unicos
-+ xbox)
-+ basic_machine=i686-pc
-+ os=-mingw32
- ;;
-- xps | xps100)
-+ xps | xps100)
- basic_machine=xps100-honeywell
- ;;
-+ ymp)
-+ basic_machine=ymp-cray
-+ os=-unicos
-+ ;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
-@@ -816,32 +1076,35 @@
- op60c)
- basic_machine=hppa1.1-oki
- ;;
-- mips)
-- if [ x$os = x-linux-gnu ]; then
-- basic_machine=mips-unknown
-- else
-- basic_machine=mips-mips
-- fi
-- ;;
- romp)
- basic_machine=romp-ibm
- ;;
-+ mmix)
-+ basic_machine=mmix-knuth
-+ ;;
- rs6000)
- basic_machine=rs6000-ibm
- ;;
- vax)
- basic_machine=vax-dec
- ;;
-+ pdp10)
-+ # there are many clones, so DEC is not a safe bet
-+ basic_machine=pdp10-unknown
-+ ;;
- pdp11)
- basic_machine=pdp11-dec
- ;;
- we32k)
- basic_machine=we32k-att
- ;;
-- sparc | sparcv9)
-+ sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
-+ basic_machine=sh-unknown
-+ ;;
-+ sparc | sparcv8 | sparcv9 | sparcv9b)
- basic_machine=sparc-sun
- ;;
-- cydra)
-+ cydra)
- basic_machine=cydra-cydrome
- ;;
- orion)
-@@ -856,9 +1119,8 @@
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
- ;;
-- c4x*)
-- basic_machine=c4x-none
-- os=-coff
-+ *-unknown)
-+ # Make sure to match an already-canonicalized machine name.
- ;;
- *)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-@@ -912,22 +1174,47 @@
- | -aos* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-- | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
-- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
-+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
-+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
-+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-+ | -chorusos* | -chorusrdb* \
- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-- | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
-- | -interix* | -uwin* | -rhapsody* | -opened* | -openstep* | -oskit*)
-+ | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
-+ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
-+ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
-+ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-+ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-+ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-+ | -skyos* | -haiku*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
-+ -qnx*)
-+ case $basic_machine in
-+ x86-* | i*86-*)
-+ ;;
-+ *)
-+ os=-nto$os
-+ ;;
-+ esac
-+ ;;
-+ -nto-qnx*)
-+ ;;
-+ -nto*)
-+ os=`echo $os | sed -e 's|nto|nto-qnx|'`
-+ ;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-- | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
-- | -macos* | -mpw* | -magic* | -mon960* | -lnews*)
-+ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
-+ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
- ;;
- -mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
- ;;
-+ -linux-dietlibc)
-+ os=-linux-dietlibc
-+ ;;
- -linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
-@@ -940,6 +1227,12 @@
- -opened*)
- os=-openedition
- ;;
-+ -os400*)
-+ os=-os400
-+ ;;
-+ -wince*)
-+ os=-wince
-+ ;;
- -osfrose*)
- os=-osfrose
- ;;
-@@ -955,14 +1248,26 @@
- -acis*)
- os=-aos
- ;;
-+ -atheos*)
-+ os=-atheos
-+ ;;
-+ -syllable*)
-+ os=-syllable
-+ ;;
- -386bsd)
- os=-bsd
- ;;
- -ctix* | -uts*)
- os=-sysv
- ;;
-+ -nova*)
-+ os=-rtmk-nova
-+ ;;
- -ns2 )
-- os=-nextstep2
-+ os=-nextstep2
-+ ;;
-+ -nsk*)
-+ os=-nsk
- ;;
- # Preserve the version number of sinix5.
- -sinix5.*)
-@@ -971,15 +1276,15 @@
- -sinix*)
- os=-sysv4
- ;;
-+ -tpf*)
-+ os=-tpf
-+ ;;
- -triton*)
- os=-sysv3
- ;;
- -oss*)
- os=-sysv3
- ;;
-- -qnx)
-- os=-qnx4
-- ;;
- -svr4)
- os=-sysv4
- ;;
-@@ -1001,8 +1306,17 @@
- -xenix)
- os=-xenix
- ;;
-- -*mint | -*MiNT)
-- os=-mint
-+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-+ os=-mint
-+ ;;
-+ -aros*)
-+ os=-aros
-+ ;;
-+ -kaos*)
-+ os=-kaos
-+ ;;
-+ -zvmoe)
-+ os=-zvmoe
- ;;
- -none)
- ;;
-@@ -1035,7 +1349,14 @@
- arm*-semi)
- os=-aout
- ;;
-- pdp11-*)
-+ c4x-* | tic4x-*)
-+ os=-coff
-+ ;;
-+ # This must come before the *-dec entry.
-+ pdp10-*)
-+ os=-tops20
-+ ;;
-+ pdp11-*)
- os=-none
- ;;
- *-dec | vax-*)
-@@ -1062,6 +1383,9 @@
- mips*-*)
- os=-elf
- ;;
-+ or32-*)
-+ os=-coff
-+ ;;
- *-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
- ;;
-@@ -1071,9 +1395,15 @@
- *-be)
- os=-beos
- ;;
-+ *-haiku)
-+ os=-haiku
-+ ;;
- *-ibm)
- os=-aix
- ;;
-+ *-knuth)
-+ os=-mmixware
-+ ;;
- *-wec)
- os=-proelf
- ;;
-@@ -1125,25 +1455,25 @@
- *-next)
- os=-nextstep3
- ;;
-- *-gould)
-+ *-gould)
- os=-sysv
- ;;
-- *-highlevel)
-+ *-highlevel)
- os=-bsd
- ;;
- *-encore)
- os=-bsd
- ;;
-- *-sgi)
-+ *-sgi)
- os=-irix
- ;;
-- *-siemens)
-+ *-siemens)
- os=-sysv4
- ;;
- *-masscomp)
- os=-rtu
- ;;
-- f301-fujitsu)
-+ f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
- ;;
- *-rom68k)
-@@ -1206,10 +1536,16 @@
- -mvs* | -opened*)
- vendor=ibm
- ;;
-+ -os400*)
-+ vendor=ibm
-+ ;;
- -ptx*)
- vendor=sequent
- ;;
-- -vxsim* | -vxworks*)
-+ -tpf*)
-+ vendor=ibm
-+ ;;
-+ -vxsim* | -vxworks* | -windiss*)
- vendor=wrs
- ;;
- -aux*)
-@@ -1221,12 +1557,23 @@
- -mpw* | -macos*)
- vendor=apple
- ;;
-- -*mint | -*MiNT)
-+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- vendor=atari
- ;;
-+ -vos*)
-+ vendor=stratus
-+ ;;
- esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- ;;
- esac
-
- echo $basic_machine$os
-+exit
-+
-+# Local variables:
-+# eval: (add-hook 'write-file-hooks 'time-stamp)
-+# time-stamp-start: "timestamp='"
-+# time-stamp-format: "%:y-%02m-%02d"
-+# time-stamp-end: "'"
-+# End:
---- gtk+1.2-1.2.10.orig/configure
-+++ gtk+1.2-1.2.10/configure
-@@ -34,9 +34,170 @@
- --enable-fast-install[=PKGS] optimize for fast installation [default=yes]"
- ac_help="$ac_help
- --with-gnu-ld assume the C compiler uses GNU ld [default=no]"
-+
-+# Find the correct PATH separator. Usually this is `:', but
-+# DJGPP uses `;' like DOS.
-+if test "X${PATH_SEPARATOR+set}" != Xset; then
-+ UNAME=${UNAME-`uname 2>/dev/null`}
-+ case X$UNAME in
-+ *-DOS) lt_cv_sys_path_separator=';' ;;
-+ *) lt_cv_sys_path_separator=':' ;;
-+ esac
-+ PATH_SEPARATOR=$lt_cv_sys_path_separator
-+fi
-+
-+
-+# Check that we are running under the correct shell.
-+SHELL=${CONFIG_SHELL-/bin/sh}
-+
-+case X$ECHO in
-+X*--fallback-echo)
-+ # Remove one level of quotation (which was required for Make).
-+ ECHO=`echo "$ECHO" | sed 's,\\\\\$\\$0,'$0','`
-+ ;;
-+esac
-+
-+echo=${ECHO-echo}
-+if test "X$1" = X--no-reexec; then
-+ # Discard the --no-reexec flag, and continue.
-+ shift
-+elif test "X$1" = X--fallback-echo; then
-+ # Avoid inline document here, it may be left over
-+ :
-+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
-+ # Yippee, $echo works!
-+ :
-+else
-+ # Restart under the correct shell.
-+ exec $SHELL "$0" --no-reexec ${1+"$@"}
-+fi
-+
-+if test "X$1" = X--fallback-echo; then
-+ # used as fallback echo
-+ shift
-+ cat <<EOF
-+
-+EOF
-+ exit 0
-+fi
-+
-+# The HP-UX ksh and POSIX shell print the target directory to stdout
-+# if CDPATH is set.
-+if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-+
-+if test -z "$ECHO"; then
-+if test "X${echo_test_string+set}" != Xset; then
-+# find a string as large as possible, as long as the shell can cope with it
-+ for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
-+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
-+ if (echo_test_string="`eval $cmd`") 2>/dev/null &&
-+ echo_test_string="`eval $cmd`" &&
-+ (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
-+ then
-+ break
-+ fi
-+ done
-+fi
-+
-+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ :
-+else
-+ # The Solaris, AIX, and Digital Unix default echo programs unquote
-+ # backslashes. This makes it impossible to quote backslashes using
-+ # echo "$something" | sed 's/\\/\\\\/g'
-+ #
-+ # So, first we look for a working echo in the user's PATH.
-+
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
-+ for dir in $PATH /usr/ucb; do
-+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
-+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ echo="$dir/echo"
-+ break
-+ fi
-+ done
-+ IFS="$save_ifs"
-+
-+ if test "X$echo" = Xecho; then
-+ # We didn't find a better echo, so look for alternatives.
-+ if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ # This shell has a builtin print -r that does the trick.
-+ echo='print -r'
-+ elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
-+ test "X$CONFIG_SHELL" != X/bin/ksh; then
-+ # If we have ksh, try running configure again with it.
-+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
-+ export ORIGINAL_CONFIG_SHELL
-+ CONFIG_SHELL=/bin/ksh
-+ export CONFIG_SHELL
-+ exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"}
-+ else
-+ # Try using printf.
-+ echo='printf %s\n'
-+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
-+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ # Cool, printf works
-+ :
-+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
-+ test "X$echo_testing_string" = 'X\t' &&
-+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
-+ export CONFIG_SHELL
-+ SHELL="$CONFIG_SHELL"
-+ export SHELL
-+ echo="$CONFIG_SHELL $0 --fallback-echo"
-+ elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
-+ test "X$echo_testing_string" = 'X\t' &&
-+ echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
-+ test "X$echo_testing_string" = "X$echo_test_string"; then
-+ echo="$CONFIG_SHELL $0 --fallback-echo"
-+ else
-+ # maybe with a smaller string...
-+ prev=:
-+
-+ for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
-+ if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
-+ then
-+ break
-+ fi
-+ prev="$cmd"
-+ done
-+
-+ if test "$prev" != 'sed 50q "$0"'; then
-+ echo_test_string=`eval $prev`
-+ export echo_test_string
-+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"}
-+ else
-+ # Oops. We lost completely, so just stick with echo.
-+ echo=echo
-+ fi
-+ fi
-+ fi
-+ fi
-+fi
-+fi
-+
-+# Copy echo and quote the copy suitably for passing to libtool from
-+# the Makefile, instead of quoting the original, which is used later.
-+ECHO=$echo
-+if test "X$ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then
-+ ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo"
-+fi
-+
-+
- ac_help="$ac_help
- --disable-libtool-lock avoid locking (might break parallel builds)"
- ac_help="$ac_help
-+ --with-pic try to use only PIC/non-PIC objects [default=use both]"
-+ac_help="$ac_help
- --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer"
- if test `expr $GTK_MINOR_VERSION \% 2` = 1 ; then
-@@ -587,6 +748,7 @@
-
-
-
-+
- # In the following, there are a the following variants
- # of GLib cflags and libs variables
- #
-@@ -645,6 +807,7 @@
- ac_config_sub=$ac_aux_dir/config.sub
- ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
-+am__api_version="1.4"
- # 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:
-@@ -657,7 +820,7 @@
- # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
- # ./install, which can be erroneously created by make from ./install.sh.
- echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
--echo "configure:661: checking for a BSD compatible install" >&5
-+echo "configure:824: checking for a BSD compatible install" >&5
- if test -z "$INSTALL"; then
- if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -710,7 +873,7 @@
- test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
- echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
--echo "configure:714: checking whether build environment is sane" >&5
-+echo "configure:877: checking whether build environment is sane" >&5
- # Just in case
- sleep 1
- echo timestamp > conftestfile
-@@ -767,7 +930,7 @@
- test "$program_transform_name" = "" && program_transform_name="s,x,x,"
-
- echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
--echo "configure:771: checking whether ${MAKE-make} sets \${MAKE}" >&5
-+echo "configure:934: checking whether ${MAKE-make} sets \${MAKE}" >&5
- set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -805,21 +968,21 @@
-
-
- missing_dir=`cd $ac_aux_dir && pwd`
--echo $ac_n "checking for working aclocal""... $ac_c" 1>&6
--echo "configure:810: checking for working aclocal" >&5
-+echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6
-+echo "configure:973: checking for working aclocal-${am__api_version}" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
--if (aclocal --version) < /dev/null > /dev/null 2>&1; then
-- ACLOCAL=aclocal
-+if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
-+ ACLOCAL=aclocal-${am__api_version}
- echo "$ac_t""found" 1>&6
- else
-- ACLOCAL="$missing_dir/missing aclocal"
-+ ACLOCAL="$missing_dir/missing aclocal-${am__api_version}"
- echo "$ac_t""missing" 1>&6
- fi
-
- echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
--echo "configure:823: checking for working autoconf" >&5
-+echo "configure:986: checking for working autoconf" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
-@@ -831,21 +994,21 @@
- echo "$ac_t""missing" 1>&6
- fi
-
--echo $ac_n "checking for working automake""... $ac_c" 1>&6
--echo "configure:836: checking for working automake" >&5
-+echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6
-+echo "configure:999: checking for working automake-${am__api_version}" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
--if (automake --version) < /dev/null > /dev/null 2>&1; then
-- AUTOMAKE=automake
-+if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
-+ AUTOMAKE=automake-${am__api_version}
- echo "$ac_t""found" 1>&6
- else
-- AUTOMAKE="$missing_dir/missing automake"
-+ AUTOMAKE="$missing_dir/missing automake-${am__api_version}"
- echo "$ac_t""missing" 1>&6
- fi
-
- echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
--echo "configure:849: checking for working autoheader" >&5
-+echo "configure:1012: checking for working autoheader" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
-@@ -858,7 +1021,7 @@
- fi
-
- echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
--echo "configure:862: checking for working makeinfo" >&5
-+echo "configure:1025: checking for working makeinfo" >&5
- # Run test in a subshell; some versions of sh will print an error if
- # an executable is not found, even if stderr is redirected.
- # Redirect stdin to placate older versions of autoconf. Sigh.
-@@ -877,11 +1040,164 @@
-
-
-
-+# Find the correct PATH separator. Usually this is `:', but
-+# DJGPP uses `;' like DOS.
-+if test "X${PATH_SEPARATOR+set}" != Xset; then
-+ UNAME=${UNAME-`uname 2>/dev/null`}
-+ case X$UNAME in
-+ *-DOS) lt_cv_sys_path_separator=';' ;;
-+ *) lt_cv_sys_path_separator=':' ;;
-+ esac
-+ PATH_SEPARATOR=$lt_cv_sys_path_separator
-+fi
-+
-+echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-+echo "configure:1056: checking for Cygwin environment" >&5
-+if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 1061 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+
-+#ifndef __CYGWIN__
-+#define __CYGWIN__ __CYGWIN32__
-+#endif
-+return __CYGWIN__;
-+; return 0; }
-+EOF
-+if { (eval echo configure:1072: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ ac_cv_cygwin=yes
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ ac_cv_cygwin=no
-+fi
-+rm -f conftest*
-+rm -f conftest*
-+fi
-+
-+echo "$ac_t""$ac_cv_cygwin" 1>&6
-+CYGWIN=
-+test "$ac_cv_cygwin" = yes && CYGWIN=yes
-+echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-+echo "configure:1089: checking for mingw32 environment" >&5
-+if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 1094 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+return __MINGW32__;
-+; return 0; }
-+EOF
-+if { (eval echo configure:1101: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ ac_cv_mingw32=yes
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ ac_cv_mingw32=no
-+fi
-+rm -f conftest*
-+rm -f conftest*
-+fi
-+
-+echo "$ac_t""$ac_cv_mingw32" 1>&6
-+MINGW32=
-+test "$ac_cv_mingw32" = yes && MINGW32=yes
-+echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-+echo "configure:1118: checking how to run the C preprocessor" >&5
-+# On Suns, sometimes $CPP names a directory.
-+if test -n "$CPP" && test -d "$CPP"; then
-+ CPP=
-+fi
-+if test -z "$CPP"; then
-+if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ # This must be in double quotes, not single quotes, because CPP may get
-+ # substituted into the Makefile and "${CC-cc}" will confuse make.
-+ CPP="${CC-cc} -E"
-+ # On the NeXT, cc -E runs the code through the compiler's parser,
-+ # not just through cpp.
-+ cat > conftest.$ac_ext <<EOF
-+#line 1133 "configure"
-+#include "confdefs.h"
-+#include <assert.h>
-+Syntax Error
-+EOF
-+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-+{ (eval echo configure:1139: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-+if test -z "$ac_err"; then
-+ :
-+else
-+ echo "$ac_err" >&5
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ CPP="${CC-cc} -E -traditional-cpp"
-+ cat > conftest.$ac_ext <<EOF
-+#line 1150 "configure"
-+#include "confdefs.h"
-+#include <assert.h>
-+Syntax Error
-+EOF
-+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-+{ (eval echo configure:1156: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-+if test -z "$ac_err"; then
-+ :
-+else
-+ echo "$ac_err" >&5
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ CPP="${CC-cc} -nologo -E"
-+ cat > conftest.$ac_ext <<EOF
-+#line 1167 "configure"
-+#include "confdefs.h"
-+#include <assert.h>
-+Syntax Error
-+EOF
-+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-+{ (eval echo configure:1173: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-+if test -z "$ac_err"; then
-+ :
-+else
-+ echo "$ac_err" >&5
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ CPP=/lib/cpp
-+fi
-+rm -f conftest*
-+fi
-+rm -f conftest*
-+fi
-+rm -f conftest*
-+ ac_cv_prog_CPP="$CPP"
-+fi
-+ CPP="$ac_cv_prog_CPP"
-+else
-+ ac_cv_prog_CPP="$CPP"
-+fi
-+echo "$ac_t""$CPP" 1>&6
-+
- # Check whether --enable-shared or --disable-shared was given.
- if test "${enable_shared+set}" = set; then
- enableval="$enable_shared"
- p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_shared=yes ;;
- no) enable_shared=no ;;
- *)
-@@ -904,7 +1220,7 @@
- if test "${enable_static+set}" = set; then
- enableval="$enable_static"
- p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_static=yes ;;
- no) enable_static=no ;;
- *)
-@@ -927,7 +1243,7 @@
- if test "${enable_fast_install+set}" = set; then
- enableval="$enable_fast_install"
- p=${PACKAGE-default}
--case "$enableval" in
-+case $enableval in
- yes) enable_fast_install=yes ;;
- no) enable_fast_install=no ;;
- *)
-@@ -953,7 +1269,7 @@
- fi
-
- echo $ac_n "checking host system type""... $ac_c" 1>&6
--echo "configure:957: checking host system type" >&5
-+echo "configure:1273: checking host system type" >&5
-
- host_alias=$host
- case "$host_alias" in
-@@ -974,7 +1290,7 @@
- echo "$ac_t""$host" 1>&6
-
- echo $ac_n "checking build system type""... $ac_c" 1>&6
--echo "configure:978: checking build system type" >&5
-+echo "configure:1294: checking build system type" >&5
-
- build_alias=$build
- case "$build_alias" in
-@@ -991,40 +1307,10 @@
- build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
- echo "$ac_t""$build" 1>&6
-
--# Extract the first word of "ranlib", so it can be a program name with args.
--set dummy ranlib; ac_word=$2
--echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:998: checking for $ac_word" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
-- echo $ac_n "(cached) $ac_c" 1>&6
--else
-- if test -n "$RANLIB"; then
-- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
--else
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-- ac_dummy="$PATH"
-- for ac_dir in $ac_dummy; do
-- test -z "$ac_dir" && ac_dir=.
-- if test -f $ac_dir/$ac_word; then
-- ac_cv_prog_RANLIB="ranlib"
-- break
-- fi
-- done
-- IFS="$ac_save_ifs"
-- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
--fi
--fi
--RANLIB="$ac_cv_prog_RANLIB"
--if test -n "$RANLIB"; then
-- echo "$ac_t""$RANLIB" 1>&6
--else
-- echo "$ac_t""no" 1>&6
--fi
--
- # Extract the first word of "gcc", so it can be a program name with args.
- set dummy gcc; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1028: checking for $ac_word" >&5
-+echo "configure:1314: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1054,7 +1340,7 @@
- # Extract the first word of "cc", so it can be a program name with args.
- set dummy cc; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1058: checking for $ac_word" >&5
-+echo "configure:1344: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1105,7 +1391,7 @@
- # Extract the first word of "cl", so it can be a program name with args.
- set dummy cl; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1109: checking for $ac_word" >&5
-+echo "configure:1395: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1137,7 +1423,7 @@
- fi
-
- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
--echo "configure:1141: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-+echo "configure:1427: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-
- ac_ext=c
- # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-@@ -1148,12 +1434,12 @@
-
- cat > conftest.$ac_ext << EOF
-
--#line 1152 "configure"
-+#line 1438 "configure"
- #include "confdefs.h"
-
- main(){return(0);}
- EOF
--if { (eval echo configure:1157: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:1443: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- ac_cv_prog_cc_works=yes
- # If we can't run a trivial program, we are probably using a cross compiler.
- if (./conftest; exit) 2>/dev/null; then
-@@ -1179,12 +1465,12 @@
- { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
- fi
- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
--echo "configure:1183: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
-+echo "configure:1469: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
- echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
- cross_compiling=$ac_cv_prog_cc_cross
-
- echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
--echo "configure:1188: checking whether we are using GNU C" >&5
-+echo "configure:1474: checking whether we are using GNU C" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1193,7 +1479,7 @@
- yes;
- #endif
- EOF
--if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1197: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
-+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1483: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
- else
- ac_cv_prog_gcc=no
-@@ -1212,7 +1498,7 @@
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
--echo "configure:1216: checking whether ${CC-cc} accepts -g" >&5
-+echo "configure:1502: checking whether ${CC-cc} accepts -g" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1252,12 +1538,18 @@
- fi
-
- ac_prog=ld
--if test "$ac_cv_prog_gcc" = yes; then
-+if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
--echo "configure:1259: checking for ld used by GCC" >&5
-- ac_prog=`($CC -print-prog-name=ld) 2>&5`
-- case "$ac_prog" in
-+echo "configure:1545: checking for ld used by GCC" >&5
-+ case $host in
-+ *-*-mingw*)
-+ # gcc leaves a trailing carriage return which upsets mingw
-+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
-+ *)
-+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
-+ esac
-+ case $ac_prog in
- # Accept absolute paths.
- [\\/]* | [A-Za-z]:[\\/]*)
- re_direlt='/[^/][^/]*/\.\./'
-@@ -1279,24 +1571,24 @@
- esac
- elif test "$with_gnu_ld" = yes; then
- echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
--echo "configure:1283: checking for GNU ld" >&5
-+echo "configure:1575: checking for GNU ld" >&5
- else
- echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
--echo "configure:1286: checking for non-GNU ld" >&5
-+echo "configure:1578: checking for non-GNU ld" >&5
- fi
--if eval "test \"`echo '$''{'ac_cv_path_LD'+set}'`\" = set"; then
-+if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- if test -z "$LD"; then
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH; do
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-- ac_cv_path_LD="$ac_dir/$ac_prog"
-+ lt_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
-- if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
-+ if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
- test "$with_gnu_ld" != no && break
- else
- test "$with_gnu_ld" != yes && break
-@@ -1305,11 +1597,11 @@
- done
- IFS="$ac_save_ifs"
- else
-- ac_cv_path_LD="$LD" # Let the user override the test with a path.
-+ lt_cv_path_LD="$LD" # Let the user override the test with a path.
- fi
- fi
-
--LD="$ac_cv_path_LD"
-+LD="$lt_cv_path_LD"
- if test -n "$LD"; then
- echo "$ac_t""$LD" 1>&6
- else
-@@ -1317,59 +1609,158 @@
- fi
- test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
- echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
--echo "configure:1321: checking if the linker ($LD) is GNU ld" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_gnu_ld'+set}'`\" = set"; then
-+echo "configure:1613: checking if the linker ($LD) is GNU ld" >&5
-+if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- # I'd rather use --version here, but apparently some GNU ld's only accept -v.
- if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-- ac_cv_prog_gnu_ld=yes
-+ lt_cv_prog_gnu_ld=yes
- else
-- ac_cv_prog_gnu_ld=no
-+ lt_cv_prog_gnu_ld=no
- fi
- fi
-
--echo "$ac_t""$ac_cv_prog_gnu_ld" 1>&6
-+echo "$ac_t""$lt_cv_prog_gnu_ld" 1>&6
-+with_gnu_ld=$lt_cv_prog_gnu_ld
-+
-+
-+echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6
-+echo "configure:1630: checking for $LD option to reload object files" >&5
-+if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ lt_cv_ld_reload_flag='-r'
-+fi
-
-+echo "$ac_t""$lt_cv_ld_reload_flag" 1>&6
-+reload_flag=$lt_cv_ld_reload_flag
-+test -n "$reload_flag" && reload_flag=" $reload_flag"
-
- echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
--echo "configure:1337: checking for BSD-compatible nm" >&5
--if eval "test \"`echo '$''{'ac_cv_path_NM'+set}'`\" = set"; then
-+echo "configure:1642: checking for BSD-compatible nm" >&5
-+if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- if test -n "$NM"; then
- # Let the user override the test.
-- ac_cv_path_NM="$NM"
-+ lt_cv_path_NM="$NM"
- else
-- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
- for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
- test -z "$ac_dir" && ac_dir=.
-- if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
-+ tmp_nm=$ac_dir/${ac_tool_prefix}nm
-+ if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
- # Check to see if the nm accepts a BSD-compat flag.
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
- # nm: unknown option "B" ignored
-- if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-- ac_cv_path_NM="$ac_dir/nm -B"
-+ # Tru64's nm complains that /dev/null is an invalid object file
-+ if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
-+ lt_cv_path_NM="$tmp_nm -B"
- break
-- elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-- ac_cv_path_NM="$ac_dir/nm -p"
-+ elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-+ lt_cv_path_NM="$tmp_nm -p"
- break
- else
-- ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
-+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
- continue # so that we can try to find one that supports BSD flags
- fi
- fi
- done
- IFS="$ac_save_ifs"
-- test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
-+ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
- fi
- fi
-
--NM="$ac_cv_path_NM"
-+NM="$lt_cv_path_NM"
- echo "$ac_t""$NM" 1>&6
-
-+echo $ac_n "checking for a sed that does not truncate output""... $ac_c" 1>&6
-+echo "configure:1680: checking for a sed that does not truncate output" >&5
-+if eval "test \"`echo '$''{'lt_cv_path_SED'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ # Loop through the user's path and test for sed and gsed.
-+# Then use that list of sed's as ones to test for truncation.
-+as_executable_p="test -f"
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+ IFS=$as_save_IFS
-+ test -z "$as_dir" && as_dir=.
-+ for ac_prog in sed gsed; do
-+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
-+ _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
-+ fi
-+ done
-+ done
-+done
-+
-+ # Create a temporary directory, and hook for its removal unless debugging.
-+$debug ||
-+{
-+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
-+ trap '{ (exit 1); exit 1; }' 1 2 13 15
-+}
-+
-+# Create a (secure) tmp directory for tmp files.
-+: ${TMPDIR=/tmp}
-+{
-+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
-+ test -n "$tmp" && test -d "$tmp"
-+} ||
-+{
-+ tmp=$TMPDIR/sed$$-$RANDOM
-+ (umask 077 && mkdir $tmp)
-+} ||
-+{
-+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2
-+ { (exit 1); exit 1; }
-+}
-+ _max=0
-+ _count=0
-+ # Add /usr/xpg4/bin/sed as it is typically found on Solaris
-+ # along with /bin/sed that truncates output.
-+ for _sed in $_sed_list /usr/xpg4/bin/sed; do
-+ test ! -f ${_sed} && break
-+ cat /dev/null > "$tmp/sed.in"
-+ _count=0
-+ echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
-+ # Check for GNU sed and select it if it is found.
-+ if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
-+ lt_cv_path_SED=${_sed}
-+ break
-+ fi
-+ while true; do
-+ cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
-+ mv "$tmp/sed.tmp" "$tmp/sed.in"
-+ cp "$tmp/sed.in" "$tmp/sed.nl"
-+ echo >>"$tmp/sed.nl"
-+ ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
-+ cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
-+ # 40000 chars as input seems more than enough
-+ test $_count -gt 10 && break
-+ _count=`expr $_count + 1`
-+ if test $_count -gt $_max; then
-+ _max=$_count
-+ lt_cv_path_SED=$_sed
-+ fi
-+ done
-+ done
-+ rm -rf "$tmp"
-+
-+fi
-+
-+if test "X$SED" != "X"; then
-+ lt_cv_path_SED=$SED
-+else
-+ SED=$lt_cv_path_SED
-+fi
-+echo "$ac_t""$SED" 1>&6
-+
- echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
--echo "configure:1373: checking whether ln -s works" >&5
-+echo "configure:1764: checking whether ln -s works" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1389,173 +1780,3709 @@
- echo "$ac_t""no" 1>&6
- fi
-
-+echo $ac_n "checking how to recognise dependent libraries""... $ac_c" 1>&6
-+echo "configure:1785: checking how to recognise dependent libraries" >&5
-+if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ lt_cv_file_magic_cmd='$MAGIC_CMD'
-+lt_cv_file_magic_test_file=
-+lt_cv_deplibs_check_method='unknown'
-+# Need to set the preceding variable on all platforms that support
-+# interlibrary dependencies.
-+# 'none' -- dependencies not supported.
-+# `unknown' -- same as none, but documents that we really don't know.
-+# 'pass_all' -- all dependencies passed with no checks.
-+# 'test_compile' -- check by making test program.
-+# 'file_magic [[regex]]' -- check by looking for files in library path
-+# which responds to the $file_magic_cmd with a given egrep regex.
-+# If you have `file' or equivalent on your system and you're not sure
-+# whether `pass_all' will *always* work, you probably want this one.
-+
-+case $host_os in
-+aix4* | aix5*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-
--case "$target" in
--NONE) lt_target="$host" ;;
--*) lt_target="$target" ;;
--esac
--
--# Check for any special flags to pass to ltconfig.
--libtool_flags="--cache-file=$cache_file"
--test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
--test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
--test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
--test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
--test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
-+beos*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-
-+bsdi4*)
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
-+ lt_cv_file_magic_cmd='/usr/bin/file -L'
-+ lt_cv_file_magic_test_file=/shlib/libc.so
-+ ;;
-
--# Check whether --enable-libtool-lock or --disable-libtool-lock was given.
--if test "${enable_libtool_lock+set}" = set; then
-- enableval="$enable_libtool_lock"
-- :
--fi
-+cygwin* | mingw* | pw32*)
-+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
-+ lt_cv_file_magic_cmd='$OBJDUMP -f'
-+ ;;
-
--test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
--test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
-+darwin* | rhapsody*)
-+ lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
-+ lt_cv_file_magic_cmd='/usr/bin/file -L'
-+ case "$host_os" in
-+ rhapsody* | darwin1.[012])
-+ lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
-+ ;;
-+ *) # Darwin 1.3 on
-+ lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
-+ ;;
-+ esac
-+ ;;
-
--# Some flags need to be propagated to the compiler or linker for good
--# libtool support.
--case "$lt_target" in
--*-*-irix6*)
-- # Find out which ABI we are using.
-- echo '#line 1422 "configure"' > conftest.$ac_ext
-- if { (eval echo configure:1423: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-- case "`/usr/bin/file conftest.o`" in
-- *32-bit*)
-- LD="${LD-ld} -32"
-- ;;
-- *N32*)
-- LD="${LD-ld} -n32"
-- ;;
-- *64-bit*)
-- LD="${LD-ld} -64"
-+freebsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
-+ case $host_cpu in
-+ i*86 )
-+ # Not sure whether the presence of OpenBSD here was a mistake.
-+ # Let's accept both of them until this is cleared up.
-+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
- ;;
- esac
-+ else
-+ lt_cv_deplibs_check_method=pass_all
- fi
-- rm -rf conftest*
- ;;
-
--*-*-sco3.2v5*)
-- # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-- SAVE_CFLAGS="$CFLAGS"
-- CFLAGS="$CFLAGS -belf"
-- echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
--echo "configure:1444: checking whether the C compiler needs -belf" >&5
--if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
-- echo $ac_n "(cached) $ac_c" 1>&6
--else
-- cat > conftest.$ac_ext <<EOF
--#line 1449 "configure"
--#include "confdefs.h"
-+gnu*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+hpux10.20*|hpux11*)
-+ lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=/usr/lib/libc.sl
-+ ;;
-+
-+irix5* | irix6* | nonstopux*)
-+ case $host_os in
-+ irix5* | nonstopux*)
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
-+ ;;
-+ *)
-+ case $LD in
-+ *-32|*"-32 ") libmagic=32-bit;;
-+ *-n32|*"-n32 ") libmagic=N32;;
-+ *-64|*"-64 ") libmagic=64-bit;;
-+ *) libmagic=never-match;;
-+ esac
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"
-+ ;;
-+ esac
-+ lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+# This must be Linux ELF.
-+linux-gnu*)
-+ case $host_cpu in
-+ alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | arm* | m68k)
-+ lt_cv_deplibs_check_method=pass_all ;;
-+ *)
-+ # glibc up to 2.1.1 does not perform some relocations on ARM
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;;
-+ esac
-+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
-+ ;;
-+
-+netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
-+ lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
-+ else
-+ lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$'
-+ fi
-+ ;;
-+
-+newos6*)
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=/usr/lib/libnls.so
-+ ;;
-+
-+openbsd*)
-+ lt_cv_file_magic_cmd=/usr/bin/file
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
-+ else
-+ lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
-+ fi
-+ ;;
-+
-+osf3* | osf4* | osf5*)
-+ # this will be overridden with pass_all, but let us keep it just in case
-+ lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
-+ lt_cv_file_magic_test_file=/shlib/libc.so
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+sco3.2v5*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+solaris*)
-+ lt_cv_deplibs_check_method=pass_all
-+ lt_cv_file_magic_test_file=/lib/libc.so
-+ ;;
-+
-+sysv5uw[78]* | sysv4*uw2*)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+
-+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ case $host_vendor in
-+ motorola)
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
-+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
-+ ;;
-+ ncr)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+ sequent)
-+ lt_cv_file_magic_cmd='/bin/file'
-+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
-+ ;;
-+ sni)
-+ lt_cv_file_magic_cmd='/bin/file'
-+ lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
-+ lt_cv_file_magic_test_file=/lib/libc.so
-+ ;;
-+ siemens)
-+ lt_cv_deplibs_check_method=pass_all
-+ ;;
-+ esac
-+ ;;
-+esac
-+
-+fi
-+
-+echo "$ac_t""$lt_cv_deplibs_check_method" 1>&6
-+file_magic_cmd=$lt_cv_file_magic_cmd
-+deplibs_check_method=$lt_cv_deplibs_check_method
-+
-+echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-+echo "configure:1971: checking for object suffix" >&5
-+if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ rm -f conftest*
-+echo 'int i = 1;' > conftest.$ac_ext
-+if { (eval echo configure:1977: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ for ac_file in conftest.*; do
-+ case $ac_file in
-+ *.c) ;;
-+ *) ac_cv_objext=`echo $ac_file | sed -e s/conftest.//` ;;
-+ esac
-+ done
-+else
-+ { echo "configure: error: installation or configuration problem; compiler does not work" 1>&2; exit 1; }
-+fi
-+rm -f conftest*
-+fi
-+
-+echo "$ac_t""$ac_cv_objext" 1>&6
-+OBJEXT=$ac_cv_objext
-+ac_objext=$ac_cv_objext
-+
-+
-+
-+echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-+echo "configure:1997: checking for executable suffix" >&5
-+if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test "$CYGWIN" = yes || test "$MINGW32" = yes; then
-+ ac_cv_exeext=.exe
-+else
-+ rm -f conftest*
-+ echo 'int main () { return 0; }' > conftest.$ac_ext
-+ ac_cv_exeext=
-+ if { (eval echo configure:2007: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
-+ for file in conftest.*; do
-+ case $file in
-+ *.$ac_ext | *.c | *.o | *.obj) ;;
-+ *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
-+ esac
-+ done
-+ else
-+ { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; }
-+ fi
-+ rm -f conftest*
-+ test x"${ac_cv_exeext}" = x && ac_cv_exeext=no
-+fi
-+fi
-+
-+EXEEXT=""
-+test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext}
-+echo "$ac_t""${ac_cv_exeext}" 1>&6
-+ac_exeext=$EXEEXT
-+
-+if test $host != $build; then
-+ ac_tool_prefix=${host_alias}-
-+else
-+ ac_tool_prefix=
-+fi
-+
-+
-+
-+
-+# Check for command to grab the raw symbol name followed by C symbol from nm.
-+echo $ac_n "checking command to parse $NM output""... $ac_c" 1>&6
-+echo "configure:2038: checking command to parse $NM output" >&5
-+if eval "test \"`echo '$''{'lt_cv_sys_global_symbol_pipe'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+
-+# These are sane defaults that work on at least a few old systems.
-+# [They come from Ultrix. What could be older than Ultrix?!! ;)]
-+
-+# Character class describing NM global symbol codes.
-+symcode='[BCDEGRST]'
-+
-+# Regexp to match symbols that can be accessed directly from C.
-+sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
-+
-+# Transform the above into a raw symbol and a C symbol.
-+symxfrm='\1 \2\3 \3'
-+
-+# Transform an extracted symbol line into a proper C declaration
-+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
-+
-+# Transform an extracted symbol line into symbol name and symbol address
-+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
-+
-+# Define system-specific variables.
-+case $host_os in
-+aix*)
-+ symcode='[BCDT]'
-+ ;;
-+cygwin* | mingw* | pw32*)
-+ symcode='[ABCDGISTW]'
-+ ;;
-+hpux*) # Its linker distinguishes data from code symbols
-+ lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
-+ lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
-+ ;;
-+irix* | nonstopux*)
-+ symcode='[BCDEGRST]'
-+ ;;
-+osf*)
-+ symcode='[BCDEGQRST]'
-+ ;;
-+solaris* | sysv5*)
-+ symcode='[BDT]'
-+ ;;
-+sysv4)
-+ symcode='[DFNSTU]'
-+ ;;
-+esac
-+
-+# Handle CRLF in mingw tool chain
-+opt_cr=
-+case $host_os in
-+mingw*)
-+ opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
-+ ;;
-+esac
-+
-+# If we're using GNU nm, then use its standard symbol codes.
-+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
-+ symcode='[ABCDGISTW]'
-+fi
-+
-+# Try without a prefix undercore, then with it.
-+for ac_symprfx in "" "_"; do
-+
-+ # Write the raw and C identifiers.
-+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
-+
-+ # Check to see that the pipe works correctly.
-+ pipe_works=no
-+ rm -f conftest*
-+ cat > conftest.$ac_ext <<EOF
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+char nm_test_var;
-+void nm_test_func(){}
-+#ifdef __cplusplus
-+}
-+#endif
-+int main(){nm_test_var='a';nm_test_func();return(0);}
-+EOF
-+
-+ if { (eval echo configure:2121: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ # Now try to grab the symbols.
-+ nlist=conftest.nm
-+ if { (eval echo configure:2124: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\") 1>&5; (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5; } && test -s "$nlist"; then
-+ # Try sorting and uniquifying the output.
-+ if sort "$nlist" | uniq > "$nlist"T; then
-+ mv -f "$nlist"T "$nlist"
-+ else
-+ rm -f "$nlist"T
-+ fi
-+
-+ # Make sure that we snagged all the symbols we need.
-+ if egrep ' nm_test_var$' "$nlist" >/dev/null; then
-+ if egrep ' nm_test_func$' "$nlist" >/dev/null; then
-+ cat <<EOF > conftest.$ac_ext
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
-+EOF
-+ # Now generate the symbol file.
-+ eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
-+
-+ cat <<EOF >> conftest.$ac_ext
-+#if defined (__STDC__) && __STDC__
-+# define lt_ptr void *
-+#else
-+# define lt_ptr char *
-+# define const
-+#endif
-+
-+/* The mapping between symbol names and symbols. */
-+const struct {
-+ const char *name;
-+ lt_ptr address;
-+}
-+lt_preloaded_symbols[] =
-+{
-+EOF
-+ sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
-+ cat <<\EOF >> conftest.$ac_ext
-+ {0, (lt_ptr) 0}
-+};
-+
-+#ifdef __cplusplus
-+}
-+#endif
-+EOF
-+ # Now try linking the two files.
-+ mv conftest.$ac_objext conftstm.$ac_objext
-+ save_LIBS="$LIBS"
-+ save_CFLAGS="$CFLAGS"
-+ LIBS="conftstm.$ac_objext"
-+ CFLAGS="$CFLAGS$no_builtin_flag"
-+ if { (eval echo configure:2175: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest$ac_exeext; then
-+ pipe_works=yes
-+ fi
-+ LIBS="$save_LIBS"
-+ CFLAGS="$save_CFLAGS"
-+ else
-+ echo "cannot find nm_test_func in $nlist" >&5
-+ fi
-+ else
-+ echo "cannot find nm_test_var in $nlist" >&5
-+ fi
-+ else
-+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
-+ fi
-+ else
-+ echo "$progname: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ fi
-+ rm -f conftest* conftst*
-+
-+ # Do not use the global_symbol_pipe unless it works.
-+ if test "$pipe_works" = yes; then
-+ break
-+ else
-+ lt_cv_sys_global_symbol_pipe=
-+ fi
-+done
-+
-+fi
-+
-+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
-+if test -z "$lt_cv_sys_global_symbol_pipe"; then
-+ global_symbol_to_cdecl=
-+ global_symbol_to_c_name_address=
-+else
-+ global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
-+ global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
-+fi
-+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
-+then
-+ echo "$ac_t""failed" 1>&6
-+else
-+ echo "$ac_t""ok" 1>&6
-+fi
-+
-+for ac_hdr in dlfcn.h
-+do
-+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-+echo "configure:2224: checking for $ac_hdr" >&5
-+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 2229 "configure"
-+#include "confdefs.h"
-+#include <$ac_hdr>
-+EOF
-+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-+{ (eval echo configure:2234: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-+if test -z "$ac_err"; then
-+ rm -rf conftest*
-+ eval "ac_cv_header_$ac_safe=yes"
-+else
-+ echo "$ac_err" >&5
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_header_$ac_safe=no"
-+fi
-+rm -f conftest*
-+fi
-+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-+ cat >> confdefs.h <<EOF
-+#define $ac_tr_hdr 1
-+EOF
-+
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+done
-+
-+
-+
-+
-+
-+
-+# Only perform the check for file, if the check method requires it
-+case $deplibs_check_method in
-+file_magic*)
-+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-+ echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6
-+echo "configure:2270: checking for ${ac_tool_prefix}file" >&5
-+if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ case $MAGIC_CMD in
-+ /*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-+ ;;
-+ ?:/*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
-+ ;;
-+ *)
-+ ac_save_MAGIC_CMD="$MAGIC_CMD"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="/usr/bin:$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/${ac_tool_prefix}file; then
-+ lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
-+ if test -n "$file_magic_test_file"; then
-+ case $deplibs_check_method in
-+ "file_magic "*)
-+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
-+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-+ egrep "$file_magic_regex" > /dev/null; then
-+ :
-+ else
-+ cat <<EOF 1>&2
-+
-+*** Warning: the command libtool uses to detect shared libraries,
-+*** $file_magic_cmd, produces output that libtool cannot recognize.
-+*** The result is that libtool may fail to recognize shared libraries
-+*** as such. This will affect the creation of libtool libraries that
-+*** depend on shared libraries, but programs linked with such libtool
-+*** libraries will work regardless of this problem. Nevertheless, you
-+*** may want to report the problem to your system manager and/or to
-+*** bug-libtool@gnu.org
-+
-+EOF
-+ fi ;;
-+ esac
-+ fi
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ MAGIC_CMD="$ac_save_MAGIC_CMD"
-+ ;;
-+esac
-+fi
-+
-+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+if test -n "$MAGIC_CMD"; then
-+ echo "$ac_t""$MAGIC_CMD" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+if test -z "$lt_cv_path_MAGIC_CMD"; then
-+ if test -n "$ac_tool_prefix"; then
-+ echo $ac_n "checking for file""... $ac_c" 1>&6
-+echo "configure:2332: checking for file" >&5
-+if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ case $MAGIC_CMD in
-+ /*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
-+ ;;
-+ ?:/*)
-+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
-+ ;;
-+ *)
-+ ac_save_MAGIC_CMD="$MAGIC_CMD"
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="/usr/bin:$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/file; then
-+ lt_cv_path_MAGIC_CMD="$ac_dir/file"
-+ if test -n "$file_magic_test_file"; then
-+ case $deplibs_check_method in
-+ "file_magic "*)
-+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
-+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-+ egrep "$file_magic_regex" > /dev/null; then
-+ :
-+ else
-+ cat <<EOF 1>&2
-+
-+*** Warning: the command libtool uses to detect shared libraries,
-+*** $file_magic_cmd, produces output that libtool cannot recognize.
-+*** The result is that libtool may fail to recognize shared libraries
-+*** as such. This will affect the creation of libtool libraries that
-+*** depend on shared libraries, but programs linked with such libtool
-+*** libraries will work regardless of this problem. Nevertheless, you
-+*** may want to report the problem to your system manager and/or to
-+*** bug-libtool@gnu.org
-+
-+EOF
-+ fi ;;
-+ esac
-+ fi
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ MAGIC_CMD="$ac_save_MAGIC_CMD"
-+ ;;
-+esac
-+fi
-+
-+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
-+if test -n "$MAGIC_CMD"; then
-+ echo "$ac_t""$MAGIC_CMD" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+ else
-+ MAGIC_CMD=:
-+ fi
-+fi
-+
-+ fi
-+ ;;
-+esac
-+
-+# 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6
-+echo "configure:2403: checking for $ac_word" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test -n "$RANLIB"; then
-+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-+else
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$ac_word; then
-+ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+fi
-+fi
-+RANLIB="$ac_cv_prog_RANLIB"
-+if test -n "$RANLIB"; then
-+ echo "$ac_t""$RANLIB" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+
-+if test -z "$ac_cv_prog_RANLIB"; then
-+if test -n "$ac_tool_prefix"; then
-+ # Extract the first word of "ranlib", so it can be a program name with args.
-+set dummy ranlib; ac_word=$2
-+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-+echo "configure:2435: checking for $ac_word" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test -n "$RANLIB"; then
-+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-+else
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$ac_word; then
-+ ac_cv_prog_RANLIB="ranlib"
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-+fi
-+fi
-+RANLIB="$ac_cv_prog_RANLIB"
-+if test -n "$RANLIB"; then
-+ echo "$ac_t""$RANLIB" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+else
-+ RANLIB=":"
-+fi
-+fi
-+
-+# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-+set dummy ${ac_tool_prefix}strip; ac_word=$2
-+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-+echo "configure:2470: checking for $ac_word" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test -n "$STRIP"; then
-+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-+else
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$ac_word; then
-+ ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+fi
-+fi
-+STRIP="$ac_cv_prog_STRIP"
-+if test -n "$STRIP"; then
-+ echo "$ac_t""$STRIP" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+
-+if test -z "$ac_cv_prog_STRIP"; then
-+if test -n "$ac_tool_prefix"; then
-+ # Extract the first word of "strip", so it can be a program name with args.
-+set dummy strip; ac_word=$2
-+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-+echo "configure:2502: checking for $ac_word" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test -n "$STRIP"; then
-+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-+else
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$ac_word; then
-+ ac_cv_prog_STRIP="strip"
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ test -z "$ac_cv_prog_STRIP" && ac_cv_prog_STRIP=":"
-+fi
-+fi
-+STRIP="$ac_cv_prog_STRIP"
-+if test -n "$STRIP"; then
-+ echo "$ac_t""$STRIP" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+else
-+ STRIP=":"
-+fi
-+fi
-+
-+
-+enable_dlopen=no
-+enable_win32_dll=no
-+
-+# Check whether --enable-libtool-lock or --disable-libtool-lock was given.
-+if test "${enable_libtool_lock+set}" = set; then
-+ enableval="$enable_libtool_lock"
-+ :
-+fi
-+
-+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
-+
-+# Some flags need to be propagated to the compiler or linker for good
-+# libtool support.
-+case $host in
-+*-*-irix6*)
-+ # Find out which ABI we are using.
-+ echo '#line 2551 "configure"' > conftest.$ac_ext
-+ if { (eval echo configure:2552: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ case `/usr/bin/file conftest.$ac_objext` in
-+ *32-bit*)
-+ LD="${LD-ld} -32"
-+ ;;
-+ *N32*)
-+ LD="${LD-ld} -n32"
-+ ;;
-+ *64-bit*)
-+ LD="${LD-ld} -64"
-+ ;;
-+ esac
-+ fi
-+ rm -rf conftest*
-+ ;;
-+
-+*-*-sco3.2v5*)
-+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-+ SAVE_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -belf"
-+ echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-+echo "configure:2573: checking whether the C compiler needs -belf" >&5
-+if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+
-+ ac_ext=c
-+# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-+ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-+cross_compiling=$ac_cv_prog_cc_cross
-+
-+ cat > conftest.$ac_ext <<EOF
-+#line 2586 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:2593: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ lt_cv_cc_needs_belf=yes
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ lt_cv_cc_needs_belf=no
-+fi
-+rm -f conftest*
-+ ac_ext=c
-+# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-+ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-+cross_compiling=$ac_cv_prog_cc_cross
-+
-+fi
-+
-+echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
-+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-+ CFLAGS="$SAVE_CFLAGS"
-+ fi
-+ ;;
-+
-+
-+esac
-+
-+# Sed substitution that helps us do robust quoting. It backslashifies
-+# metacharacters that are still active within double-quoted strings.
-+Xsed='sed -e s/^X//'
-+sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
-+
-+# Same as above, but do not quote variable references.
-+double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
-+
-+# Sed substitution to delay expansion of an escaped shell variable in a
-+# double_quote_subst'ed string.
-+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-+
-+# Constants:
-+rm="rm -f"
-+
-+# Global variables:
-+default_ofile=libtool
-+can_build_shared=yes
-+
-+# All known linkers require a `.a' archive for static linking (except M$VC,
-+# which needs '.lib').
-+libext=a
-+ltmain="$ac_aux_dir/ltmain.sh"
-+ofile="$default_ofile"
-+with_gnu_ld="$lt_cv_prog_gnu_ld"
-+need_locks="$enable_libtool_lock"
-+
-+old_CC="$CC"
-+old_CFLAGS="$CFLAGS"
-+
-+# Set sane defaults for various variables
-+test -z "$AR" && AR=ar
-+test -z "$AR_FLAGS" && AR_FLAGS=cru
-+test -z "$AS" && AS=as
-+test -z "$CC" && CC=cc
-+test -z "$DLLTOOL" && DLLTOOL=dlltool
-+test -z "$LD" && LD=ld
-+test -z "$LN_S" && LN_S="ln -s"
-+test -z "$MAGIC_CMD" && MAGIC_CMD=file
-+test -z "$NM" && NM=nm
-+test -z "$OBJDUMP" && OBJDUMP=objdump
-+test -z "$RANLIB" && RANLIB=:
-+test -z "$STRIP" && STRIP=:
-+test -z "$ac_objext" && ac_objext=o
-+
-+if test x"$host" != x"$build"; then
-+ ac_tool_prefix=${host_alias}-
-+else
-+ ac_tool_prefix=
-+fi
-+
-+# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
-+case $host_os in
-+linux-gnu*) ;;
-+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
-+esac
-+
-+case $host_os in
-+aix3*)
-+ # AIX sometimes has problems with the GCC collect2 program. For some
-+ # reason, if we set the COLLECT_NAMES environment variable, the problems
-+ # vanish in a puff of smoke.
-+ if test "X${COLLECT_NAMES+set}" != Xset; then
-+ COLLECT_NAMES=
-+ export COLLECT_NAMES
-+ fi
-+ ;;
-+esac
-+
-+# Determine commands to create old-style static archives.
-+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
-+old_postinstall_cmds='chmod 644 $oldlib'
-+old_postuninstall_cmds=
-+
-+if test -n "$RANLIB"; then
-+ case $host_os in
-+ openbsd*)
-+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
-+ ;;
-+ *)
-+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
-+ ;;
-+ esac
-+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-+fi
-+
-+# Allow CC to be a program name with arguments.
-+set dummy $CC
-+compiler="$2"
-+
-+echo $ac_n "checking for objdir""... $ac_c" 1>&6
-+echo "configure:2713: checking for objdir" >&5
-+rm -f .libs 2>/dev/null
-+mkdir .libs 2>/dev/null
-+if test -d .libs; then
-+ objdir=.libs
-+else
-+ # MS-DOS does not allow filenames that begin with a dot.
-+ objdir=_libs
-+fi
-+rmdir .libs 2>/dev/null
-+echo "$ac_t""$objdir" 1>&6
-+
-+
-+# Check whether --with-pic or --without-pic was given.
-+if test "${with_pic+set}" = set; then
-+ withval="$with_pic"
-+ pic_mode="$withval"
-+else
-+ pic_mode=default
-+fi
-+
-+test -z "$pic_mode" && pic_mode=default
-+
-+# We assume here that the value for lt_cv_prog_cc_pic will not be cached
-+# in isolation, and that seeing it set (from the cache) indicates that
-+# the associated values are set (in the cache) correctly too.
-+echo $ac_n "checking for $compiler option to produce PIC""... $ac_c" 1>&6
-+echo "configure:2740: checking for $compiler option to produce PIC" >&5
-+if eval "test \"`echo '$''{'lt_cv_prog_cc_pic'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ lt_cv_prog_cc_pic=
-+ lt_cv_prog_cc_shlib=
-+ lt_cv_prog_cc_wl=
-+ lt_cv_prog_cc_static=
-+ lt_cv_prog_cc_no_builtin=
-+ lt_cv_prog_cc_can_build_shared=$can_build_shared
-+
-+ if test "$GCC" = yes; then
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-static'
-+
-+ case $host_os in
-+ aix*)
-+ # Below there is a dirty hack to force normal static linking with -ldl
-+ # The problem is because libdl dynamically linked with both libc and
-+ # libC (AIX C++ library), which obviously doesn't included in libraries
-+ # list by gcc. This cause undefined symbols with -static flags.
-+ # This hack allows C programs to be linked with "-static -ldl", but
-+ # not sure about C++ programs.
-+ lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
-+ ;;
-+ amigaos*)
-+ # FIXME: we need at least 68020 code to build shared libraries, but
-+ # adding the `-m68020' flag to GCC prevents building anything better,
-+ # like `-m68040'.
-+ lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
-+ ;;
-+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
-+ # PIC is the default for these OSes.
-+ ;;
-+ darwin* | rhapsody*)
-+ # PIC is the default on this platform
-+ # Common symbols not allowed in MH_DYLIB files
-+ lt_cv_prog_cc_pic='-fno-common'
-+ ;;
-+ cygwin* | mingw* | pw32* | os2*)
-+ # This hack is so that the source file can tell whether it is being
-+ # built for inclusion in a dll (and should export symbols for example).
-+ lt_cv_prog_cc_pic='-DDLL_EXPORT'
-+ ;;
-+ sysv4*MP*)
-+ if test -d /usr/nec; then
-+ lt_cv_prog_cc_pic=-Kconform_pic
-+ fi
-+ ;;
-+ *)
-+ lt_cv_prog_cc_pic='-fPIC'
-+ ;;
-+ esac
-+ else
-+ # PORTME Check for PIC flags for the system compiler.
-+ case $host_os in
-+ aix3* | aix4* | aix5*)
-+ lt_cv_prog_cc_wl='-Wl,'
-+ # All AIX code is PIC.
-+ if test "$host_cpu" = ia64; then
-+ # AIX 5 now supports IA64 processor
-+ lt_cv_prog_cc_static='-Bstatic'
-+ else
-+ lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
-+ fi
-+ ;;
-+
-+ hpux9* | hpux10* | hpux11*)
-+ # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
-+ lt_cv_prog_cc_pic='+Z'
-+ ;;
-+
-+ irix5* | irix6* | nonstopux*)
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-non_shared'
-+ # PIC (with -KPIC) is the default.
-+ ;;
-+
-+ cygwin* | mingw* | pw32* | os2*)
-+ # This hack is so that the source file can tell whether it is being
-+ # built for inclusion in a dll (and should export symbols for example).
-+ lt_cv_prog_cc_pic='-DDLL_EXPORT'
-+ ;;
-+
-+ newsos6)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ ;;
-+
-+ osf3* | osf4* | osf5*)
-+ # All OSF/1 code is PIC.
-+ lt_cv_prog_cc_wl='-Wl,'
-+ lt_cv_prog_cc_static='-non_shared'
-+ ;;
-+
-+ sco3.2v5*)
-+ lt_cv_prog_cc_pic='-Kpic'
-+ lt_cv_prog_cc_static='-dn'
-+ lt_cv_prog_cc_shlib='-belf'
-+ ;;
-+
-+ solaris*)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Wl,'
-+ ;;
-+
-+ sunos4*)
-+ lt_cv_prog_cc_pic='-PIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Qoption ld '
-+ ;;
-+
-+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ lt_cv_prog_cc_pic='-KPIC'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ lt_cv_prog_cc_wl='-Wl,'
-+ ;;
-+
-+ uts4*)
-+ lt_cv_prog_cc_pic='-pic'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ ;;
-+
-+ sysv4*MP*)
-+ if test -d /usr/nec ;then
-+ lt_cv_prog_cc_pic='-Kconform_pic'
-+ lt_cv_prog_cc_static='-Bstatic'
-+ fi
-+ ;;
-+
-+ *)
-+ lt_cv_prog_cc_can_build_shared=no
-+ ;;
-+ esac
-+ fi
-+
-+fi
-+
-+if test -z "$lt_cv_prog_cc_pic"; then
-+ echo "$ac_t""none" 1>&6
-+else
-+ echo "$ac_t""$lt_cv_prog_cc_pic" 1>&6
-+
-+ # Check to make sure the pic_flag actually works.
-+ echo $ac_n "checking if $compiler PIC flag $lt_cv_prog_cc_pic works""... $ac_c" 1>&6
-+echo "configure:2888: checking if $compiler PIC flag $lt_cv_prog_cc_pic works" >&5
-+ if eval "test \"`echo '$''{'lt_cv_prog_cc_pic_works'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
-+ cat > conftest.$ac_ext <<EOF
-+#line 2895 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:2902: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ case $host_os in
-+ hpux9* | hpux10* | hpux11*)
-+ # On HP-UX, both CC and GCC only warn that PIC is supported... then
-+ # they create non-PIC objects. So, if there were any warnings, we
-+ # assume that PIC is not supported.
-+ if test -s conftest.err; then
-+ lt_cv_prog_cc_pic_works=no
-+ else
-+ lt_cv_prog_cc_pic_works=yes
-+ fi
-+ ;;
-+ *)
-+ lt_cv_prog_cc_pic_works=yes
-+ ;;
-+ esac
-+
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ lt_cv_prog_cc_pic_works=no
-+
-+fi
-+rm -f conftest*
-+ CFLAGS="$save_CFLAGS"
-+
-+fi
-+
-+
-+ if test "X$lt_cv_prog_cc_pic_works" = Xno; then
-+ lt_cv_prog_cc_pic=
-+ lt_cv_prog_cc_can_build_shared=no
-+ else
-+ lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
-+ fi
-+
-+ echo "$ac_t""$lt_cv_prog_cc_pic_works" 1>&6
-+fi
-+
-+# Check for any special shared library compilation flags.
-+if test -n "$lt_cv_prog_cc_shlib"; then
-+ echo "configure: warning: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" 1>&2
-+ if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$lt_cv_prog_cc_shlib[ ]" >/dev/null; then :
-+ else
-+ echo "configure: warning: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" 1>&2
-+ lt_cv_prog_cc_can_build_shared=no
-+ fi
-+fi
-+
-+echo $ac_n "checking if $compiler static flag $lt_cv_prog_cc_static works""... $ac_c" 1>&6
-+echo "configure:2954: checking if $compiler static flag $lt_cv_prog_cc_static works" >&5
-+if eval "test \"`echo '$''{'lt_cv_prog_cc_static_works'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ lt_cv_prog_cc_static_works=no
-+ save_LDFLAGS="$LDFLAGS"
-+ LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
-+ cat > conftest.$ac_ext <<EOF
-+#line 2962 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:2969: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ lt_cv_prog_cc_static_works=yes
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest*
-+ LDFLAGS="$save_LDFLAGS"
-+
-+fi
-+
-+
-+# Belt *and* braces to stop my trousers falling down:
-+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
-+echo "$ac_t""$lt_cv_prog_cc_static_works" 1>&6
-+
-+pic_flag="$lt_cv_prog_cc_pic"
-+special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
-+wl="$lt_cv_prog_cc_wl"
-+link_static_flag="$lt_cv_prog_cc_static"
-+no_builtin_flag="$lt_cv_prog_cc_no_builtin"
-+can_build_shared="$lt_cv_prog_cc_can_build_shared"
-+
-+
-+# Check to see if options -o and -c are simultaneously supported by compiler
-+echo $ac_n "checking if $compiler supports -c -o file.$ac_objext""... $ac_c" 1>&6
-+echo "configure:2996: checking if $compiler supports -c -o file.$ac_objext" >&5
-+if eval "test \"`echo '$''{'lt_cv_compiler_c_o'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+
-+$rm -r conftest 2>/dev/null
-+mkdir conftest
-+cd conftest
-+echo "int some_variable = 0;" > conftest.$ac_ext
-+mkdir out
-+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
-+# that will create temporary files in the current directory regardless of
-+# the output directory. Thus, making CWD read-only will cause this test
-+# to fail, enabling locking or at least warning the user not to do parallel
-+# builds.
-+chmod -w .
-+save_CFLAGS="$CFLAGS"
-+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
-+compiler_c_o=no
-+if { (eval echo configure:3015: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s out/conftest.err; then
-+ lt_cv_compiler_c_o=no
-+ else
-+ lt_cv_compiler_c_o=yes
-+ fi
-+else
-+ # Append any errors to the config.log.
-+ cat out/conftest.err 1>&5
-+ lt_cv_compiler_c_o=no
-+fi
-+CFLAGS="$save_CFLAGS"
-+chmod u+w .
-+$rm conftest* out/*
-+rmdir out
-+cd ..
-+rmdir conftest
-+$rm -r conftest 2>/dev/null
-+
-+fi
-+
-+compiler_c_o=$lt_cv_compiler_c_o
-+echo "$ac_t""$compiler_c_o" 1>&6
-+
-+if test x"$compiler_c_o" = x"yes"; then
-+ # Check to see if we can write to a .lo
-+ echo $ac_n "checking if $compiler supports -c -o file.lo""... $ac_c" 1>&6
-+echo "configure:3044: checking if $compiler supports -c -o file.lo" >&5
-+ if eval "test \"`echo '$''{'lt_cv_compiler_o_lo'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+
-+ lt_cv_compiler_o_lo=no
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -c -o conftest.lo"
-+ save_objext="$ac_objext"
-+ ac_objext=lo
-+ cat > conftest.$ac_ext <<EOF
-+#line 3055 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+int some_variable = 0;
-+; return 0; }
-+EOF
-+if { (eval echo configure:3062: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s conftest.err; then
-+ lt_cv_compiler_o_lo=no
-+ else
-+ lt_cv_compiler_o_lo=yes
-+ fi
-+
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest*
-+ ac_objext="$save_objext"
-+ CFLAGS="$save_CFLAGS"
-+
-+fi
-+
-+ compiler_o_lo=$lt_cv_compiler_o_lo
-+ echo "$ac_t""$compiler_o_lo" 1>&6
-+else
-+ compiler_o_lo=no
-+fi
-+
-+# Check to see if we can do hard links to lock some files if needed
-+hard_links="nottested"
-+if test "$compiler_c_o" = no && test "$need_locks" != no; then
-+ # do not overwrite the value of need_locks provided by the user
-+ echo $ac_n "checking if we can lock with hard links""... $ac_c" 1>&6
-+echo "configure:3093: checking if we can lock with hard links" >&5
-+ hard_links=yes
-+ $rm conftest*
-+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
-+ touch conftest.a
-+ ln conftest.a conftest.b 2>&5 || hard_links=no
-+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
-+ echo "$ac_t""$hard_links" 1>&6
-+ if test "$hard_links" = no; then
-+ echo "configure: warning: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" 1>&2
-+ need_locks=warn
-+ fi
-+else
-+ need_locks=no
-+fi
-+
-+if test "$GCC" = yes; then
-+ # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
-+ echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions""... $ac_c" 1>&6
-+echo "configure:3112: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-+ echo "int some_variable = 0;" > conftest.$ac_ext
-+ save_CFLAGS="$CFLAGS"
-+ CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
-+ compiler_rtti_exceptions=no
-+ cat > conftest.$ac_ext <<EOF
-+#line 3118 "configure"
-+#include "confdefs.h"
-+
-+int main() {
-+int some_variable = 0;
-+; return 0; }
-+EOF
-+if { (eval echo configure:3125: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ # The compiler can only warn and ignore the option if not recognized
-+ # So say no if there are warnings
-+ if test -s conftest.err; then
-+ compiler_rtti_exceptions=no
-+ else
-+ compiler_rtti_exceptions=yes
-+ fi
-+
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest*
-+ CFLAGS="$save_CFLAGS"
-+ echo "$ac_t""$compiler_rtti_exceptions" 1>&6
-+
-+ if test "$compiler_rtti_exceptions" = "yes"; then
-+ no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
-+ else
-+ no_builtin_flag=' -fno-builtin'
-+ fi
-+fi
-+
-+# See if the linker supports building shared libraries.
-+echo $ac_n "checking whether the linker ($LD) supports shared libraries""... $ac_c" 1>&6
-+echo "configure:3152: checking whether the linker ($LD) supports shared libraries" >&5
-+
-+allow_undefined_flag=
-+no_undefined_flag=
-+need_lib_prefix=unknown
-+need_version=unknown
-+# when you set need_version to no, make sure it does not cause -set_version
-+# flags to be left without arguments
-+archive_cmds=
-+archive_expsym_cmds=
-+old_archive_from_new_cmds=
-+old_archive_from_expsyms_cmds=
-+export_dynamic_flag_spec=
-+whole_archive_flag_spec=
-+thread_safe_flag_spec=
-+hardcode_into_libs=no
-+hardcode_libdir_flag_spec=
-+hardcode_libdir_separator=
-+hardcode_direct=no
-+hardcode_minus_L=no
-+hardcode_shlibpath_var=unsupported
-+runpath_var=
-+link_all_deplibs=unknown
-+always_export_symbols=no
-+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
-+# include_expsyms should be a list of space-separated symbols to be *always*
-+# included in the symbol list
-+include_expsyms=
-+# exclude_expsyms can be an egrep regular expression of symbols to exclude
-+# it will be wrapped by ` (' and `)$', so one must not match beginning or
-+# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-+# as well as any symbol that contains `d'.
-+exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
-+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-+# platforms (ab)use it in PIC code, but their linkers get confused if
-+# the symbol is explicitly referenced. Since portable code cannot
-+# rely on this symbol name, it's probably fine to never include it in
-+# preloaded symbol tables.
-+extract_expsyms_cmds=
-+
-+case $host_os in
-+cygwin* | mingw* | pw32*)
-+ # FIXME: the MSVC++ port hasn't been tested in a loooong time
-+ # When not using gcc, we currently assume that we are using
-+ # Microsoft Visual C++.
-+ if test "$GCC" != yes; then
-+ with_gnu_ld=no
-+ fi
-+ ;;
-+openbsd*)
-+ with_gnu_ld=no
-+ ;;
-+esac
-+
-+ld_shlibs=yes
-+if test "$with_gnu_ld" = yes; then
-+ # If archive_cmds runs LD, not CC, wlarc should be empty
-+ wlarc='${wl}'
-+
-+ # See if GNU ld supports shared libraries.
-+ case $host_os in
-+ aix3* | aix4* | aix5*)
-+ # On AIX, the GNU linker is very broken
-+ # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
-+ ld_shlibs=no
-+ cat <<EOF 1>&2
-+
-+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-+*** to be unable to reliably create shared libraries on AIX.
-+*** Therefore, libtool is disabling shared libraries support. If you
-+*** really care for shared libraries, you may want to modify your PATH
-+*** so that a non-GNU linker is found, and then restart.
-+
-+EOF
-+ ;;
-+
-+ amigaos*)
-+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+
-+ # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-+ # that the semantics of dynamic libraries on AmigaOS, at least up
-+ # to version 4, is to share data among multiple programs linked
-+ # with the same dynamic library. Since this doesn't match the
-+ # behavior of shared libraries on other platforms, we can use
-+ # them.
-+ ld_shlibs=no
-+ ;;
-+
-+ beos*)
-+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ allow_undefined_flag=unsupported
-+ # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
-+ # support --undefined. This deserves some investigation. FIXME
-+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ # hardcode_libdir_flag_spec is actually meaningless, as there is
-+ # no search path for DLLs.
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ allow_undefined_flag=unsupported
-+ always_export_symbols=yes
-+
-+ extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
-+ sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
-+ test -f $output_objdir/impgen.exe || (cd $output_objdir && \
-+ if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
-+ else $CC -o impgen impgen.c ; fi)~
-+ $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
-+
-+ old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
-+
-+ # cygwin and mingw dlls have different entry points and sets of symbols
-+ # to exclude.
-+ # FIXME: what about values for MSVC?
-+ dll_entry=__cygwin_dll_entry@12
-+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
-+ case $host_os in
-+ mingw*)
-+ # mingw values
-+ dll_entry=_DllMainCRTStartup@12
-+ dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
-+ ;;
-+ esac
-+
-+ # mingw and cygwin differ, and it's simplest to just exclude the union
-+ # of the two symbol sets.
-+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
-+
-+ # recent cygwin and mingw systems supply a stub DllMain which the user
-+ # can override, but on older systems we have to supply one (in ltdll.c)
-+ if test "x$lt_cv_need_dllmain" = "xyes"; then
-+ ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
-+ ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
-+ test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
-+ else
-+ ltdll_obj=
-+ ltdll_cmds=
-+ fi
-+
-+ # Extract the symbol export list from an `--export-all' def file,
-+ # then regenerate the def file from the symbol export list, so that
-+ # the compiled dll only exports the symbol export list.
-+ # Be careful not to strip the DATA tag left be newer dlltools.
-+ export_symbols_cmds="$ltdll_cmds"'
-+ $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
-+ sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
-+
-+ # If the export-symbols file already is a .def file (1st line
-+ # is EXPORTS), use it as is.
-+ # If DATA tags from a recent dlltool are present, honour them!
-+ archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
-+ cp $export_symbols $output_objdir/$soname-def;
-+ else
-+ echo EXPORTS > $output_objdir/$soname-def;
-+ _lt_hint=1;
-+ cat $export_symbols | while read symbol; do
-+ set dummy \$symbol;
-+ case \$# in
-+ 2) echo " \$2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
-+ 4) echo " \$2 \$3 \$4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
-+ *) echo " \$2 @ \$_lt_hint \$3 ; " >> $output_objdir/$soname-def;;
-+ esac;
-+ _lt_hint=`expr 1 + \$_lt_hint`;
-+ done;
-+ fi~
-+ '"$ltdll_cmds"'
-+ $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
-+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
-+ $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
-+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
-+ $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
-+ ;;
-+
-+ netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-+ wlarc=
-+ else
-+ archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ fi
-+ ;;
-+
-+ solaris* | sysv5*)
-+ if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
-+ ld_shlibs=no
-+ cat <<EOF 1>&2
-+
-+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-+*** create shared libraries on Solaris systems. Therefore, libtool
-+*** is disabling shared libraries support. We urge you to upgrade GNU
-+*** binutils to release 2.9.1 or newer. Another option is to modify
-+*** your PATH or compiler configuration so that the native linker is
-+*** used, and then restart.
-+
-+EOF
-+ elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+
-+ sunos4*)
-+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ wlarc=
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ *)
-+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ else
-+ ld_shlibs=no
-+ fi
-+ ;;
-+ esac
-+
-+ if test "$ld_shlibs" = yes; then
-+ runpath_var=LD_RUN_PATH
-+ hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
-+ export_dynamic_flag_spec='${wl}--export-dynamic'
-+ case $host_os in
-+ cygwin* | mingw* | pw32*)
-+ # dlltool doesn't understand --whole-archive et. al.
-+ whole_archive_flag_spec=
-+ ;;
-+ *)
-+ # ancient GNU ld didn't support --whole-archive et. al.
-+ if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
-+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-+ else
-+ whole_archive_flag_spec=
-+ fi
-+ ;;
-+ esac
-+ fi
-+else
-+ # PORTME fill in a description of your system's linker (not GNU ld)
-+ case $host_os in
-+ aix3*)
-+ allow_undefined_flag=unsupported
-+ always_export_symbols=yes
-+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
-+ # Note: this linker hardcodes the directories in LIBPATH if there
-+ # are no directories specified by -L.
-+ hardcode_minus_L=yes
-+ if test "$GCC" = yes && test -z "$link_static_flag"; then
-+ # Neither direct hardcoding nor static linking is supported with a
-+ # broken collect2.
-+ hardcode_direct=unsupported
-+ fi
-+ ;;
-+
-+ aix4* | aix5*)
-+ if test "$host_cpu" = ia64; then
-+ # On IA64, the linker does run time linking by default, so we don't
-+ # have to do anything special.
-+ aix_use_runtimelinking=no
-+ exp_sym_flag='-Bexport'
-+ no_entry_flag=""
-+ else
-+ aix_use_runtimelinking=no
-+
-+ # Test if we are trying to use run time linking or normal
-+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-+ # need to do runtime linking.
-+ case $host_os in aix4.[23]|aix4.[23].*|aix5*)
-+ for ld_flag in $LDFLAGS; do
-+ case $ld_flag in
-+ *-brtl*)
-+ aix_use_runtimelinking=yes
-+ break
-+ ;;
-+ esac
-+ done
-+ esac
-+
-+ exp_sym_flag='-bexport'
-+ no_entry_flag='-bnoentry'
-+ fi
-+
-+ # When large executables or shared objects are built, AIX ld can
-+ # have problems creating the table of contents. If linking a library
-+ # or program results in "error TOC overflow" add -mminimal-toc to
-+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
-+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
-+
-+ hardcode_direct=yes
-+ archive_cmds=''
-+ hardcode_libdir_separator=':'
-+ if test "$GCC" = yes; then
-+ case $host_os in aix4.[012]|aix4.[012].*)
-+ collect2name=`${CC} -print-prog-name=collect2`
-+ if test -f "$collect2name" && \
-+ strings "$collect2name" | grep resolve_lib_name >/dev/null
-+ then
-+ # We have reworked collect2
-+ hardcode_direct=yes
-+ else
-+ # We have old collect2
-+ hardcode_direct=unsupported
-+ # It fails to find uninstalled libraries when the uninstalled
-+ # path is not listed in the libpath. Setting hardcode_minus_L
-+ # to unsupported forces relinking
-+ hardcode_minus_L=yes
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_libdir_separator=
-+ fi
-+ esac
-+
-+ shared_flag='-shared'
-+ else
-+ # not using gcc
-+ if test "$host_cpu" = ia64; then
-+ shared_flag='${wl}-G'
-+ else
-+ if test "$aix_use_runtimelinking" = yes; then
-+ shared_flag='${wl}-G'
-+ else
-+ shared_flag='${wl}-bM:SRE'
-+ fi
-+ fi
-+ fi
-+
-+ # It seems that -bexpall can do strange things, so it is better to
-+ # generate a list of symbols to export.
-+ always_export_symbols=yes
-+ if test "$aix_use_runtimelinking" = yes; then
-+ # Warning - without using the other runtime loading flags (-brtl),
-+ # -berok will link without error, but may produce a broken library.
-+ allow_undefined_flag='-berok'
-+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
-+ archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-+ else
-+ if test "$host_cpu" = ia64; then
-+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
-+ allow_undefined_flag="-z nodefs"
-+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
-+ else
-+ hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
-+ # Warning - without using the other run time loading flags,
-+ # -berok will link without error, but may produce a broken library.
-+ allow_undefined_flag='${wl}-berok'
-+ # This is a bit strange, but is similar to how AIX traditionally builds
-+ # it's shared libraries.
-+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname'
-+ fi
-+ fi
-+ ;;
-+
-+ amigaos*)
-+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+ # see comment about different semantics on the GNU ld section
-+ ld_shlibs=no
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ # When not using gcc, we currently assume that we are using
-+ # Microsoft Visual C++.
-+ # hardcode_libdir_flag_spec is actually meaningless, as there is
-+ # no search path for DLLs.
-+ hardcode_libdir_flag_spec=' '
-+ allow_undefined_flag=unsupported
-+ # Tell ltmain to make .lib files, not .a files.
-+ libext=lib
-+ # FIXME: Setting linknames here is a bad hack.
-+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
-+ # The linker will automatically build a .lib file if we build a DLL.
-+ old_archive_from_new_cmds='true'
-+ # FIXME: Should let the user specify the lib program.
-+ old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
-+ fix_srcfile_path='`cygpath -w "$srcfile"`'
-+ ;;
-+
-+ darwin* | rhapsody*)
-+ case "$host_os" in
-+ rhapsody* | darwin1.[012])
-+ allow_undefined_flag='-undefined suppress'
-+ ;;
-+ *) # Darwin 1.3 on
-+ allow_undefined_flag='-flat_namespace -undefined suppress'
-+ ;;
-+ esac
-+ # FIXME: Relying on posixy $() will cause problems for
-+ # cross-compilation, but unfortunately the echo tests do not
-+ # yet detect zsh echo's removal of \ escapes. Also zsh mangles
-+ # `"' quotes if we put them in here... so don't!
-+ archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
-+ # We need to add '_' to the symbols in $export_symbols first
-+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ whole_archive_flag_spec='-all_load $convenience'
-+ ;;
-+
-+ freebsd1*)
-+ ld_shlibs=no
-+ ;;
-+
-+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
-+ # support. Future versions do this automatically, but an explicit c++rt0.o
-+ # does not break anything, and helps significantly (at the cost of a little
-+ # extra space).
-+ freebsd2.2*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ # Unfortunately, older versions of FreeBSD 2 do not have this feature.
-+ freebsd2*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-+ freebsd*)
-+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ hpux9* | hpux10* | hpux11*)
-+ case $host_os in
-+ hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
-+ *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
-+ esac
-+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes # Not in the search PATH, but as the default
-+ # location of the library.
-+ export_dynamic_flag_spec='${wl}-E'
-+ ;;
-+
-+ irix5* | irix6* | nonstopux*)
-+ if test "$GCC" = yes; then
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ else
-+ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='-rpath $libdir'
-+ fi
-+ hardcode_libdir_separator=:
-+ link_all_deplibs=yes
-+ ;;
-+
-+ netbsd*)
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
-+ else
-+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
-+ fi
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ newsos6)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ openbsd*)
-+ hardcode_direct=yes
-+ hardcode_shlibpath_var=no
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-+ export_dynamic_flag_spec='${wl}-E'
-+ else
-+ case "$host_os" in
-+ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ ;;
-+ *)
-+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-+ ;;
-+ esac
-+ fi
-+ ;;
-+
-+ os2*)
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_minus_L=yes
-+ allow_undefined_flag=unsupported
-+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
-+ ;;
-+
-+ osf3*)
-+ if test "$GCC" = yes; then
-+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ else
-+ allow_undefined_flag=' -expect_unresolved \*'
-+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ fi
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ hardcode_libdir_separator=:
-+ ;;
-+
-+ osf4* | osf5*) # as osf3* with the addition of -msym flag
-+ if test "$GCC" = yes; then
-+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-+ else
-+ allow_undefined_flag=' -expect_unresolved \*'
-+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
-+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
-+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
-+
-+ #Both c and cxx compiler support -rpath directly
-+ hardcode_libdir_flag_spec='-rpath $libdir'
-+ fi
-+ hardcode_libdir_separator=:
-+ ;;
-+
-+ sco3.2v5*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ runpath_var=LD_RUN_PATH
-+ hardcode_runpath_var=yes
-+ export_dynamic_flag_spec='${wl}-Bexport'
-+ ;;
-+
-+ solaris*)
-+ # gcc --version < 3.0 without binutils cannot create self contained
-+ # shared libraries reliably, requiring libgcc.a to resolve some of
-+ # the object symbols generated in some cases. Libraries that use
-+ # assert need libgcc.a to resolve __eprintf, for example. Linking
-+ # a copy of libgcc.a into every shared library to guarantee resolving
-+ # such symbols causes other problems: According to Tim Van Holder
-+ # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
-+ # (to the application) exception stack for one thing.
-+ no_undefined_flag=' -z defs'
-+ if test "$GCC" = yes; then
-+ case `$CC --version 2>/dev/null` in
-+ [12].*)
-+ cat <<EOF 1>&2
-+
-+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
-+*** create self contained shared libraries on Solaris systems, without
-+*** introducing a dependency on libgcc.a. Therefore, libtool is disabling
-+*** -no-undefined support, which will at least allow you to build shared
-+*** libraries. However, you may find that when you link such libraries
-+*** into an application without using GCC, you have to manually add
-+*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to
-+*** upgrade to a newer version of GCC. Another option is to rebuild your
-+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
-+
-+EOF
-+ no_undefined_flag=
-+ ;;
-+ esac
-+ fi
-+ # $CC -shared without GNU ld will not create a library from C++
-+ # object files and a static libstdc++, better avoid it by now
-+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
-+ hardcode_libdir_flag_spec='-R$libdir'
-+ hardcode_shlibpath_var=no
-+ case $host_os in
-+ solaris2.[0-5] | solaris2.[0-5].*) ;;
-+ *) # Supported since Solaris 2.6 (maybe 2.5.1?)
-+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
-+ esac
-+ link_all_deplibs=yes
-+ ;;
-+
-+ sunos4*)
-+ if test "x$host_vendor" = xsequent; then
-+ # Use $CC to link under sequent, because it throws in some extra .o
-+ # files that make .init and .fini sections work.
-+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
-+ else
-+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
-+ fi
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_direct=yes
-+ hardcode_minus_L=yes
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4)
-+ case $host_vendor in
-+ sni)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes # is this really true???
-+ ;;
-+ siemens)
-+ ## LD is ld it makes a PLAMLIB
-+ ## CC just makes a GrossModule.
-+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-+ reload_cmds='$CC -r -o $output$reload_objs'
-+ hardcode_direct=no
-+ ;;
-+ motorola)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie
-+ ;;
-+ esac
-+ runpath_var='LD_RUN_PATH'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4.3*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ export_dynamic_flag_spec='-Bexport'
-+ ;;
-+
-+ sysv5*)
-+ no_undefined_flag=' -z text'
-+ # $CC -shared without GNU ld will not create a library from C++
-+ # object files and a static libstdc++, better avoid it by now
-+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
-+ hardcode_libdir_flag_spec=
-+ hardcode_shlibpath_var=no
-+ runpath_var='LD_RUN_PATH'
-+ ;;
-+
-+ uts4*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ dgux*)
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_libdir_flag_spec='-L$libdir'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ sysv4*MP*)
-+ if test -d /usr/nec; then
-+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_shlibpath_var=no
-+ runpath_var=LD_RUN_PATH
-+ hardcode_runpath_var=yes
-+ ld_shlibs=yes
-+ fi
-+ ;;
-+
-+ sysv4.2uw2*)
-+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
-+ hardcode_direct=yes
-+ hardcode_minus_L=no
-+ hardcode_shlibpath_var=no
-+ hardcode_runpath_var=yes
-+ runpath_var=LD_RUN_PATH
-+ ;;
-+
-+ sysv5uw7* | unixware7*)
-+ no_undefined_flag='${wl}-z ${wl}text'
-+ if test "$GCC" = yes; then
-+ archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-+ else
-+ archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
-+ fi
-+ runpath_var='LD_RUN_PATH'
-+ hardcode_shlibpath_var=no
-+ ;;
-+
-+ *)
-+ ld_shlibs=no
-+ ;;
-+ esac
-+fi
-+echo "$ac_t""$ld_shlibs" 1>&6
-+test "$ld_shlibs" = no && can_build_shared=no
-+
-+# Check hardcoding attributes.
-+echo $ac_n "checking how to hardcode library paths into programs""... $ac_c" 1>&6
-+echo "configure:3851: checking how to hardcode library paths into programs" >&5
-+hardcode_action=
-+if test -n "$hardcode_libdir_flag_spec" || \
-+ test -n "$runpath_var"; then
-+
-+ # We can hardcode non-existant directories.
-+ if test "$hardcode_direct" != no &&
-+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
-+ # have to relink, otherwise we might link with an installed library
-+ # when we should be linking with a yet-to-be-installed one
-+ ## test "$hardcode_shlibpath_var" != no &&
-+ test "$hardcode_minus_L" != no; then
-+ # Linking always hardcodes the temporary library directory.
-+ hardcode_action=relink
-+ else
-+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
-+ hardcode_action=immediate
-+ fi
-+else
-+ # We cannot hardcode anything, or else we can only hardcode existing
-+ # directories.
-+ hardcode_action=unsupported
-+fi
-+echo "$ac_t""$hardcode_action" 1>&6
-+
-+striplib=
-+old_striplib=
-+echo $ac_n "checking whether stripping libraries is possible""... $ac_c" 1>&6
-+echo "configure:3879: checking whether stripping libraries is possible" >&5
-+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
-+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
-+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-+ echo "$ac_t""yes" 1>&6
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+reload_cmds='$LD$reload_flag -o $output$reload_objs'
-+test -z "$deplibs_check_method" && deplibs_check_method=unknown
-+
-+# PORTME Fill in your ld.so characteristics
-+echo $ac_n "checking dynamic linker characteristics""... $ac_c" 1>&6
-+echo "configure:3893: checking dynamic linker characteristics" >&5
-+library_names_spec=
-+libname_spec='lib$name'
-+soname_spec=
-+postinstall_cmds=
-+postuninstall_cmds=
-+finish_cmds=
-+finish_eval=
-+shlibpath_var=
-+shlibpath_overrides_runpath=unknown
-+version_type=none
-+dynamic_linker="$host_os ld.so"
-+sys_lib_dlsearch_path_spec="/lib /usr/lib"
-+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-+
-+case $host_os in
-+aix3*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix $libname.a'
-+ shlibpath_var=LIBPATH
-+
-+ # AIX has no versioning support, so we append a major version to the name.
-+ soname_spec='${libname}${release}.so$major'
-+ ;;
-+
-+aix4* | aix5*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ hardcode_into_libs=yes
-+ if test "$host_cpu" = ia64; then
-+ # AIX 5 supports IA64
-+ library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ else
-+ # With GCC up to 2.95.x, collect2 would create an import file
-+ # for dependence libraries. The import file would start with
-+ # the line `#! .'. This would cause the generated library to
-+ # depend on `.', always an invalid library. This was fixed in
-+ # development snapshots of GCC prior to 3.0.
-+ case $host_os in
-+ aix4 | aix4.[01] | aix4.[01].*)
-+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
-+ echo ' yes '
-+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
-+ :
-+ else
-+ can_build_shared=no
-+ fi
-+ ;;
-+ esac
-+ # AIX (on Power*) has no versioning support, so currently we can
-+ # not hardcode correct soname into executable. Probably we can
-+ # add versioning support to collect2, so additional links can
-+ # be useful in future.
-+ if test "$aix_use_runtimelinking" = yes; then
-+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
-+ # instead of lib<name>.a to let people know that these are not
-+ # typical AIX shared libraries.
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ else
-+ # We preserve .a as extension for shared libraries through AIX4.2
-+ # and later when we are not doing run time linking.
-+ library_names_spec='${libname}${release}.a $libname.a'
-+ soname_spec='${libname}${release}.so$major'
-+ fi
-+ shlibpath_var=LIBPATH
-+ fi
-+ hardcode_into_libs=yes
-+ ;;
-+
-+amigaos*)
-+ library_names_spec='$libname.ixlibrary $libname.a'
-+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
-+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
-+ ;;
-+
-+beos*)
-+ library_names_spec='${libname}.so'
-+ dynamic_linker="$host_os ld.so"
-+ shlibpath_var=LIBRARY_PATH
-+ ;;
-+
-+bsdi4*)
-+ version_type=linux
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
-+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
-+ export_dynamic_flag_spec=-rdynamic
-+ # the default ld.so.conf also contains /usr/contrib/lib and
-+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
-+ # libtool to hard-code these into programs
-+ ;;
-+
-+cygwin* | mingw* | pw32*)
-+ version_type=windows
-+ need_version=no
-+ need_lib_prefix=no
-+ case $GCC,$host_os in
-+ yes,cygwin*)
-+ library_names_spec='$libname.dll.a'
-+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
-+ postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
-+ dldir=$destdir/`dirname \$dlpath`~
-+ test -d \$dldir || mkdir -p \$dldir~
-+ $install_prog .libs/$dlname \$dldir/$dlname'
-+ postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
-+ dlpath=$dir/\$dldll~
-+ $rm \$dlpath'
-+ ;;
-+ yes,mingw*)
-+ library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
-+ sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"`
-+ ;;
-+ yes,pw32*)
-+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/./-/g'`${versuffix}.dll'
-+ ;;
-+ *)
-+ library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib'
-+ ;;
-+ esac
-+ dynamic_linker='Win32 ld.exe'
-+ # FIXME: first we should search . and the directory the executable is in
-+ shlibpath_var=PATH
-+ ;;
-+
-+darwin* | rhapsody*)
-+ dynamic_linker="$host_os dyld"
-+ version_type=darwin
-+ need_lib_prefix=no
-+ need_version=no
-+ # FIXME: Relying on posixy $() will cause problems for
-+ # cross-compilation, but unfortunately the echo tests do not
-+ # yet detect zsh echo's removal of \ escapes.
-+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
-+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
-+ shlibpath_overrides_runpath=yes
-+ shlibpath_var=DYLD_LIBRARY_PATH
-+ ;;
-+
-+freebsd1*)
-+ dynamic_linker=no
-+ ;;
-+
-+freebsd*-gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=no
-+ hardcode_into_libs=yes
-+ dynamic_linker='GNU/FreeBSD ld.so'
-+ ;;
-+
-+freebsd*)
-+ objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
-+ version_type=freebsd-$objformat
-+ case $version_type in
-+ freebsd-elf*)
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
-+ need_version=no
-+ need_lib_prefix=no
-+ ;;
-+ freebsd-*)
-+ library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
-+ need_version=yes
-+ ;;
-+ esac
-+ shlibpath_var=LD_LIBRARY_PATH
-+ case $host_os in
-+ freebsd2*)
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+ *)
-+ shlibpath_overrides_runpath=no
-+ hardcode_into_libs=yes
-+ ;;
-+ esac
-+ ;;
-+
-+gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ hardcode_into_libs=yes
-+ ;;
-+
-+hpux9* | hpux10* | hpux11*)
-+ # Give a soname corresponding to the major version so that dld.sl refuses to
-+ # link against other versions.
-+ dynamic_linker="$host_os dld.sl"
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ shlibpath_var=SHLIB_PATH
-+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-+ library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
-+ soname_spec='${libname}${release}.sl$major'
-+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
-+ postinstall_cmds='chmod 555 $lib'
-+ ;;
-+
-+irix5* | irix6* | nonstopux*)
-+ case $host_os in
-+ nonstopux*) version_type=nonstopux ;;
-+ *) version_type=irix ;;
-+ esac
-+ need_lib_prefix=no
-+ need_version=no
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
-+ case $host_os in
-+ irix5* | nonstopux*)
-+ libsuff= shlibsuff=
-+ ;;
-+ *)
-+ case $LD in # libtool.m4 will add one of these switches to LD
-+ *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
-+ *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
-+ *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
-+ *) libsuff= shlibsuff= libmagic=never-match;;
-+ esac
-+ ;;
-+ esac
-+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
-+ shlibpath_overrides_runpath=no
-+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
-+ ;;
-+
-+# No shared lib support for Linux oldld, aout, or coff.
-+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
-+ dynamic_linker=no
-+ ;;
-+
-+# This must be Linux ELF.
-+linux-gnu*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=no
-+ # This implies no fast_install, which is unacceptable.
-+ # Some rework will be needed to allow for fast_install
-+ # before this can be enabled.
-+ hardcode_into_libs=yes
-+
-+ # We used to test for /lib/ld.so.1 and disable shared libraries on
-+ # powerpc, because MkLinux only supported shared libraries with the
-+ # GNU dynamic linker. Since this was broken with cross compilers,
-+ # most powerpc-linux boxes support dynamic linking these days and
-+ # people can always --disable-shared, the test was removed, and we
-+ # assume the GNU/Linux dynamic linker is in use.
-+ dynamic_linker='GNU/Linux ld.so'
-+ ;;
-+
-+netbsd*)
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-+ dynamic_linker='NetBSD (a.out) ld.so'
-+ else
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
-+ soname_spec='${libname}${release}.so$major'
-+ dynamic_linker='NetBSD ld.elf_so'
-+ fi
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ hardcode_into_libs=yes
-+ ;;
-+
-+newsos6)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+
-+openbsd*)
-+ version_type=sunos
-+ need_lib_prefix=no
-+ need_version=no
-+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-+ case "$host_os" in
-+ openbsd2.[89] | openbsd2.[89].*)
-+ shlibpath_overrides_runpath=no
-+ ;;
-+ *)
-+ shlibpath_overrides_runpath=yes
-+ ;;
-+ esac
-+ else
-+ shlibpath_overrides_runpath=yes
-+ fi
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+os2*)
-+ libname_spec='$name'
-+ need_lib_prefix=no
-+ library_names_spec='$libname.dll $libname.a'
-+ dynamic_linker='OS/2 ld.exe'
-+ shlibpath_var=LIBPATH
-+ ;;
-+
-+osf3* | osf4* | osf5*)
-+ version_type=osf
-+ need_version=no
-+ need_lib_prefix=no
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
-+ hardcode_into_libs=yes
-+ ;;
-+
-+sco3.2v5*)
-+ version_type=osf
-+ soname_spec='${libname}${release}.so$major'
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+solaris*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ hardcode_into_libs=yes
-+ # ldd complains unless libraries are executable
-+ postinstall_cmds='chmod +x $lib'
-+ ;;
-+
-+sunos4*)
-+ version_type=sunos
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
-+ if test "$with_gnu_ld" = yes; then
-+ need_lib_prefix=no
-+ fi
-+ need_version=yes
-+ ;;
-+
-+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ case $host_vendor in
-+ sni)
-+ shlibpath_overrides_runpath=no
-+ need_lib_prefix=no
-+ export_dynamic_flag_spec='${wl}-Blargedynsym'
-+ runpath_var=LD_RUN_PATH
-+ ;;
-+ siemens)
-+ need_lib_prefix=no
-+ ;;
-+ motorola)
-+ need_lib_prefix=no
-+ need_version=no
-+ shlibpath_overrides_runpath=no
-+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
-+ ;;
-+ esac
-+ ;;
-+
-+uts4*)
-+ version_type=linux
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+dgux*)
-+ version_type=linux
-+ need_lib_prefix=no
-+ need_version=no
-+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-+ soname_spec='${libname}${release}.so$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ ;;
-+
-+sysv4*MP*)
-+ if test -d /usr/nec ;then
-+ version_type=linux
-+ library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
-+ soname_spec='$libname.so.$major'
-+ shlibpath_var=LD_LIBRARY_PATH
-+ fi
-+ ;;
-+
-+*)
-+ dynamic_linker=no
-+ ;;
-+esac
-+echo "$ac_t""$dynamic_linker" 1>&6
-+test "$dynamic_linker" = no && can_build_shared=no
-+
-+# Report the final consequences.
-+echo $ac_n "checking if libtool supports shared libraries""... $ac_c" 1>&6
-+echo "configure:4317: checking if libtool supports shared libraries" >&5
-+echo "$ac_t""$can_build_shared" 1>&6
-+
-+echo $ac_n "checking whether to build shared libraries""... $ac_c" 1>&6
-+echo "configure:4321: checking whether to build shared libraries" >&5
-+test "$can_build_shared" = "no" && enable_shared=no
-+
-+# On AIX, shared libraries and static libraries use the same namespace, and
-+# are all built from PIC.
-+case "$host_os" in
-+aix3*)
-+ test "$enable_shared" = yes && enable_static=no
-+ if test -n "$RANLIB"; then
-+ archive_cmds="$archive_cmds~\$RANLIB \$lib"
-+ postinstall_cmds='$RANLIB $lib'
-+ fi
-+ ;;
-+
-+aix4*)
-+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-+ test "$enable_shared" = yes && enable_static=no
-+ fi
-+ ;;
-+esac
-+echo "$ac_t""$enable_shared" 1>&6
-+
-+echo $ac_n "checking whether to build static libraries""... $ac_c" 1>&6
-+echo "configure:4344: checking whether to build static libraries" >&5
-+# Make sure either enable_shared or enable_static is yes.
-+test "$enable_shared" = yes || enable_static=yes
-+echo "$ac_t""$enable_static" 1>&6
-+
-+if test "$hardcode_action" = relink; then
-+ # Fast installation is not supported
-+ enable_fast_install=no
-+elif test "$shlibpath_overrides_runpath" = yes ||
-+ test "$enable_shared" = no; then
-+ # Fast installation is not necessary
-+ enable_fast_install=needless
-+fi
-+
-+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-+if test "$GCC" = yes; then
-+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
-+fi
-+
-+if test "x$enable_dlopen" != xyes; then
-+ enable_dlopen=unknown
-+ enable_dlopen_self=unknown
-+ enable_dlopen_self_static=unknown
-+else
-+ lt_cv_dlopen=no
-+ lt_cv_dlopen_libs=
-+
-+ case $host_os in
-+ beos*)
-+ lt_cv_dlopen="load_add_on"
-+ lt_cv_dlopen_libs=
-+ lt_cv_dlopen_self=yes
-+ ;;
-+
-+ cygwin* | mingw* | pw32*)
-+ lt_cv_dlopen="LoadLibrary"
-+ lt_cv_dlopen_libs=
-+ ;;
-+
-+ *)
-+ echo $ac_n "checking for shl_load""... $ac_c" 1>&6
-+echo "configure:4385: checking for shl_load" >&5
-+if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 4390 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char shl_load(); below. */
-+#include <assert.h>
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char shl_load();
-+
-+int main() {
-+
-+/* The GNU C library defines this 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_shl_load) || defined (__stub___shl_load)
-+choke me
-+#else
-+shl_load();
-+#endif
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:4413: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_func_shl_load=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_func_shl_load=no"
-+fi
-+rm -f conftest*
-+fi
-+
-+if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="shl_load"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
-+echo "configure:4431: checking for shl_load in -ldld" >&5
-+ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'`
-+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ ac_save_LIBS="$LIBS"
-+LIBS="-ldld $LIBS"
-+cat > conftest.$ac_ext <<EOF
-+#line 4439 "configure"
-+#include "confdefs.h"
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char shl_load();
-+
-+int main() {
-+shl_load()
-+; return 0; }
-+EOF
-+if { (eval echo configure:4450: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=no"
-+fi
-+rm -f conftest*
-+LIBS="$ac_save_LIBS"
-+
-+fi
-+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for dlopen""... $ac_c" 1>&6
-+echo "configure:4469: checking for dlopen" >&5
-+if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ cat > conftest.$ac_ext <<EOF
-+#line 4474 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char dlopen(); below. */
-+#include <assert.h>
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char dlopen();
-+
-+int main() {
-+
-+/* The GNU C library defines this 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_dlopen) || defined (__stub___dlopen)
-+choke me
-+#else
-+dlopen();
-+#endif
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:4497: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_func_dlopen=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_func_dlopen=no"
-+fi
-+rm -f conftest*
-+fi
-+
-+if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="dlopen"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
-+echo "configure:4515: checking for dlopen in -ldl" >&5
-+ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
-+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ ac_save_LIBS="$LIBS"
-+LIBS="-ldl $LIBS"
-+cat > conftest.$ac_ext <<EOF
-+#line 4523 "configure"
-+#include "confdefs.h"
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char dlopen();
-+
-+int main() {
-+dlopen()
-+; return 0; }
-+EOF
-+if { (eval echo configure:4534: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=no"
-+fi
-+rm -f conftest*
-+LIBS="$ac_save_LIBS"
-+
-+fi
-+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for dlopen in -lsvld""... $ac_c" 1>&6
-+echo "configure:4553: checking for dlopen in -lsvld" >&5
-+ac_lib_var=`echo svld'_'dlopen | sed 'y%./+-%__p_%'`
-+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ ac_save_LIBS="$LIBS"
-+LIBS="-lsvld $LIBS"
-+cat > conftest.$ac_ext <<EOF
-+#line 4561 "configure"
-+#include "confdefs.h"
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char dlopen();
-+
-+int main() {
-+dlopen()
-+; return 0; }
-+EOF
-+if { (eval echo configure:4572: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=no"
-+fi
-+rm -f conftest*
-+LIBS="$ac_save_LIBS"
-+
-+fi
-+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
-+else
-+ echo "$ac_t""no" 1>&6
-+echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6
-+echo "configure:4591: checking for dld_link in -ldld" >&5
-+ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'`
-+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ ac_save_LIBS="$LIBS"
-+LIBS="-ldld $LIBS"
-+cat > conftest.$ac_ext <<EOF
-+#line 4599 "configure"
-+#include "confdefs.h"
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char dld_link();
-+
-+int main() {
-+dld_link()
-+; return 0; }
-+EOF
-+if { (eval echo configure:4610: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=no"
-+fi
-+rm -f conftest*
-+LIBS="$ac_save_LIBS"
-+
-+fi
-+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
-+else
-+ echo "$ac_t""no" 1>&6
-+fi
-+
-+
-+fi
-+
-+
-+fi
-+
-+
-+fi
-+
-+
-+fi
-+
-+
-+fi
-+
-+ ;;
-+ esac
-+
-+ if test "x$lt_cv_dlopen" != xno; then
-+ enable_dlopen=yes
-+ else
-+ enable_dlopen=no
-+ fi
-+
-+ case $lt_cv_dlopen in
-+ dlopen)
-+ save_CPPFLAGS="$CPPFLAGS"
-+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-+
-+ save_LDFLAGS="$LDFLAGS"
-+ eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-+
-+ save_LIBS="$LIBS"
-+ LIBS="$lt_cv_dlopen_libs $LIBS"
-+
-+ echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6
-+echo "configure:4666: checking whether a program can dlopen itself" >&5
-+if eval "test \"`echo '$''{'lt_cv_dlopen_self'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test "$cross_compiling" = yes; then :
-+ lt_cv_dlopen_self=cross
-+else
-+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-+ lt_status=$lt_dlunknown
-+ cat > conftest.$ac_ext <<EOF
-+#line 4676 "configure"
-+#include "confdefs.h"
-+
-+#if HAVE_DLFCN_H
-+#include <dlfcn.h>
-+#endif
-+
-+#include <stdio.h>
-+
-+#ifdef RTLD_GLOBAL
-+# define LT_DLGLOBAL RTLD_GLOBAL
-+#else
-+# ifdef DL_GLOBAL
-+# define LT_DLGLOBAL DL_GLOBAL
-+# else
-+# define LT_DLGLOBAL 0
-+# endif
-+#endif
-+
-+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-+ find out it does not work in some platform. */
-+#ifndef LT_DLLAZY_OR_NOW
-+# ifdef RTLD_LAZY
-+# define LT_DLLAZY_OR_NOW RTLD_LAZY
-+# else
-+# ifdef DL_LAZY
-+# define LT_DLLAZY_OR_NOW DL_LAZY
-+# else
-+# ifdef RTLD_NOW
-+# define LT_DLLAZY_OR_NOW RTLD_NOW
-+# else
-+# ifdef DL_NOW
-+# define LT_DLLAZY_OR_NOW DL_NOW
-+# else
-+# define LT_DLLAZY_OR_NOW 0
-+# endif
-+# endif
-+# endif
-+# endif
-+#endif
-+
-+#ifdef __cplusplus
-+extern "C" void exit (int);
-+#endif
-+
-+void fnord() { int i=42;}
-+int main ()
-+{
-+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-+ int status = $lt_dlunknown;
-+
-+ if (self)
-+ {
-+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
-+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
-+ /* dlclose (self); */
-+ }
-+
-+ exit (status);
-+}
-+EOF
-+ if { (eval echo configure:4737: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} 2>/dev/null; then
-+ (./conftest; exit; ) 2>/dev/null
-+ lt_status=$?
-+ case x$lt_status in
-+ x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
-+ x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
-+ x$lt_unknown|x*) lt_cv_dlopen_self=no ;;
-+ esac
-+ else :
-+ # compilation failed
-+ lt_cv_dlopen_self=no
-+ fi
-+fi
-+rm -fr conftest*
-+
-+
-+fi
-+
-+echo "$ac_t""$lt_cv_dlopen_self" 1>&6
-+
-+ if test "x$lt_cv_dlopen_self" = xyes; then
-+ LDFLAGS="$LDFLAGS $link_static_flag"
-+ echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6
-+echo "configure:4760: checking whether a statically linked program can dlopen itself" >&5
-+if eval "test \"`echo '$''{'lt_cv_dlopen_self_static'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ if test "$cross_compiling" = yes; then :
-+ lt_cv_dlopen_self_static=cross
-+else
-+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
-+ lt_status=$lt_dlunknown
-+ cat > conftest.$ac_ext <<EOF
-+#line 4770 "configure"
-+#include "confdefs.h"
-+
-+#if HAVE_DLFCN_H
-+#include <dlfcn.h>
-+#endif
-+
-+#include <stdio.h>
-+
-+#ifdef RTLD_GLOBAL
-+# define LT_DLGLOBAL RTLD_GLOBAL
-+#else
-+# ifdef DL_GLOBAL
-+# define LT_DLGLOBAL DL_GLOBAL
-+# else
-+# define LT_DLGLOBAL 0
-+# endif
-+#endif
-+
-+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
-+ find out it does not work in some platform. */
-+#ifndef LT_DLLAZY_OR_NOW
-+# ifdef RTLD_LAZY
-+# define LT_DLLAZY_OR_NOW RTLD_LAZY
-+# else
-+# ifdef DL_LAZY
-+# define LT_DLLAZY_OR_NOW DL_LAZY
-+# else
-+# ifdef RTLD_NOW
-+# define LT_DLLAZY_OR_NOW RTLD_NOW
-+# else
-+# ifdef DL_NOW
-+# define LT_DLLAZY_OR_NOW DL_NOW
-+# else
-+# define LT_DLLAZY_OR_NOW 0
-+# endif
-+# endif
-+# endif
-+# endif
-+#endif
-+
-+#ifdef __cplusplus
-+extern "C" void exit (int);
-+#endif
-+
-+void fnord() { int i=42;}
-+int main ()
-+{
-+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-+ int status = $lt_dlunknown;
-+
-+ if (self)
-+ {
-+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
-+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
-+ /* dlclose (self); */
-+ }
-+
-+ exit (status);
-+}
-+EOF
-+ if { (eval echo configure:4831: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} 2>/dev/null; then
-+ (./conftest; exit; ) 2>/dev/null
-+ lt_status=$?
-+ case x$lt_status in
-+ x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
-+ x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
-+ x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;;
-+ esac
-+ else :
-+ # compilation failed
-+ lt_cv_dlopen_self_static=no
-+ fi
-+fi
-+rm -fr conftest*
-+
-+
-+fi
-+
-+echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6
-+ fi
-+
-+ CPPFLAGS="$save_CPPFLAGS"
-+ LDFLAGS="$save_LDFLAGS"
-+ LIBS="$save_LIBS"
-+ ;;
-+ esac
-+
-+ case $lt_cv_dlopen_self in
-+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
-+ *) enable_dlopen_self=unknown ;;
-+ esac
-+
-+ case $lt_cv_dlopen_self_static in
-+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
-+ *) enable_dlopen_self_static=unknown ;;
-+ esac
-+fi
-+
-+
-+if test "$enable_shared" = yes && test "$GCC" = yes; then
-+ case $archive_cmds in
-+ *'~'*)
-+ # FIXME: we may have to deal with multi-command sequences.
-+ ;;
-+ '$CC '*)
-+ # Test whether the compiler implicitly links with -lc since on some
-+ # systems, -lgcc has to come before -lc. If gcc already passes -lc
-+ # to ld, don't add -lc before -lgcc.
-+ echo $ac_n "checking whether -lc should be explicitly linked in""... $ac_c" 1>&6
-+echo "configure:4880: checking whether -lc should be explicitly linked in" >&5
-+ if eval "test \"`echo '$''{'lt_cv_archive_cmds_need_lc'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ $rm conftest*
-+ echo 'static int dummy;' > conftest.$ac_ext
-+
-+ if { (eval echo configure:4887: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ soname=conftest
-+ lib=conftest
-+ libobjs=conftest.$ac_objext
-+ deplibs=
-+ wl=$lt_cv_prog_cc_wl
-+ compiler_flags=-v
-+ linker_flags=-v
-+ verstring=
-+ output_objdir=.
-+ libname=conftest
-+ save_allow_undefined_flag=$allow_undefined_flag
-+ allow_undefined_flag=
-+ if { (eval echo configure:4900: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\") 1>&5; (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5; }
-+ then
-+ lt_cv_archive_cmds_need_lc=no
-+ else
-+ lt_cv_archive_cmds_need_lc=yes
-+ fi
-+ allow_undefined_flag=$save_allow_undefined_flag
-+ else
-+ cat conftest.err 1>&5
-+ fi
-+fi
-+
-+ echo "$ac_t""$lt_cv_archive_cmds_need_lc" 1>&6
-+ ;;
-+ esac
-+fi
-+need_lc=${lt_cv_archive_cmds_need_lc-yes}
-+
-+# The second clause should only fire when bootstrapping the
-+# libtool distribution, otherwise you forgot to ship ltmain.sh
-+# with your package, and you will get complaints that there are
-+# no rules to generate ltmain.sh.
-+if test -f "$ltmain"; then
-+ :
-+else
-+ # If there is no Makefile yet, we rely on a make rule to execute
-+ # `config.status --recheck' to rerun these tests and create the
-+ # libtool script then.
-+ test -f Makefile && make "$ltmain"
-+fi
-+
-+if test -f "$ltmain"; then
-+ trap "$rm \"${ofile}T\"; exit 1" 1 2 15
-+ $rm -f "${ofile}T"
-+
-+ echo creating $ofile
-+
-+ # Now quote all the things that may contain metacharacters while being
-+ # careful not to overquote the AC_SUBSTed values. We take copies of the
-+ # variables and quote the copies for generation of the libtool script.
-+ for var in echo old_CC old_CFLAGS SED \
-+ AR AR_FLAGS CC LD LN_S NM SHELL \
-+ reload_flag reload_cmds wl \
-+ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
-+ thread_safe_flag_spec whole_archive_flag_spec libname_spec \
-+ library_names_spec soname_spec \
-+ RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
-+ old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
-+ postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
-+ old_striplib striplib file_magic_cmd export_symbols_cmds \
-+ deplibs_check_method allow_undefined_flag no_undefined_flag \
-+ finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
-+ global_symbol_to_c_name_address \
-+ hardcode_libdir_flag_spec hardcode_libdir_separator \
-+ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
-+ compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
-+
-+ case $var in
-+ reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
-+ old_postinstall_cmds | old_postuninstall_cmds | \
-+ export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
-+ extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
-+ postinstall_cmds | postuninstall_cmds | \
-+ finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
-+ # Double-quote double-evaled strings.
-+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
-+ ;;
-+ *)
-+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
-+ ;;
-+ esac
-+ done
-+
-+ cat <<__EOF__ > "${ofile}T"
-+#! $SHELL
-+
-+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
-+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
-+#
-+# Copyright (C) 1996-2000 Free Software Foundation, Inc.
-+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful, but
-+# WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+# General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+#
-+# As a special exception to the GNU General Public License, if you
-+# distribute this file as part of a program that contains a
-+# configuration script generated by Autoconf, you may include it under
-+# the same distribution terms that you use for the rest of that program.
-+
-+# A sed that does not truncate output.
-+SED=$lt_SED
-+
-+# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-+Xsed="${SED} -e s/^X//"
-+
-+# The HP-UX ksh and POSIX shell print the target directory to stdout
-+# if CDPATH is set.
-+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-+
-+# ### BEGIN LIBTOOL CONFIG
-+
-+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-+
-+# Shell to use when invoking shell scripts.
-+SHELL=$lt_SHELL
-+
-+# Whether or not to build shared libraries.
-+build_libtool_libs=$enable_shared
-+
-+# Whether or not to build static libraries.
-+build_old_libs=$enable_static
-+
-+# Whether or not to add -lc for building shared libraries.
-+build_libtool_need_lc=$need_lc
-+
-+# Whether or not to optimize for fast installation.
-+fast_install=$enable_fast_install
-+
-+# The host system.
-+host_alias=$host_alias
-+host=$host
-+
-+# An echo program that does not interpret backslashes.
-+echo=$lt_echo
-+
-+# The archiver.
-+AR=$lt_AR
-+AR_FLAGS=$lt_AR_FLAGS
-+
-+# The default C compiler.
-+CC=$lt_CC
-+
-+# Is the compiler the GNU C compiler?
-+with_gcc=$GCC
-+
-+# The linker used to build libraries.
-+LD=$lt_LD
-+
-+# Whether we need hard or soft links.
-+LN_S=$lt_LN_S
-+
-+# A BSD-compatible nm program.
-+NM=$lt_NM
-+
-+# A symbol stripping program
-+STRIP=$STRIP
-+
-+# Used to examine libraries when file_magic_cmd begins "file"
-+MAGIC_CMD=$MAGIC_CMD
-+
-+# Used on cygwin: DLL creation program.
-+DLLTOOL="$DLLTOOL"
-+
-+# Used on cygwin: object dumper.
-+OBJDUMP="$OBJDUMP"
-+
-+# Used on cygwin: assembler.
-+AS="$AS"
-+
-+# The name of the directory that contains temporary libtool files.
-+objdir=$objdir
-+
-+# How to create reloadable object files.
-+reload_flag=$lt_reload_flag
-+reload_cmds=$lt_reload_cmds
-+
-+# How to pass a linker flag through the compiler.
-+wl=$lt_wl
-+
-+# Object file suffix (normally "o").
-+objext="$ac_objext"
-+
-+# Old archive suffix (normally "a").
-+libext="$libext"
-+
-+# Executable file suffix (normally "").
-+exeext="$exeext"
-+
-+# Additional compiler flags for building library objects.
-+pic_flag=$lt_pic_flag
-+pic_mode=$pic_mode
-+
-+# Does compiler simultaneously support -c and -o options?
-+compiler_c_o=$lt_compiler_c_o
-+
-+# Can we write directly to a .lo ?
-+compiler_o_lo=$lt_compiler_o_lo
-+
-+# Must we lock files when doing compilation ?
-+need_locks=$lt_need_locks
-+
-+# Do we need the lib prefix for modules?
-+need_lib_prefix=$need_lib_prefix
-+
-+# Do we need a version for libraries?
-+need_version=$need_version
-+
-+# Whether dlopen is supported.
-+dlopen_support=$enable_dlopen
-+
-+# Whether dlopen of programs is supported.
-+dlopen_self=$enable_dlopen_self
-+
-+# Whether dlopen of statically linked programs is supported.
-+dlopen_self_static=$enable_dlopen_self_static
-+
-+# Compiler flag to prevent dynamic linking.
-+link_static_flag=$lt_link_static_flag
-+
-+# Compiler flag to turn off builtin functions.
-+no_builtin_flag=$lt_no_builtin_flag
-+
-+# Compiler flag to allow reflexive dlopens.
-+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
-+
-+# Compiler flag to generate shared objects directly from archives.
-+whole_archive_flag_spec=$lt_whole_archive_flag_spec
-+
-+# Compiler flag to generate thread-safe objects.
-+thread_safe_flag_spec=$lt_thread_safe_flag_spec
-+
-+# Library versioning type.
-+version_type=$version_type
-+
-+# Format of library name prefix.
-+libname_spec=$lt_libname_spec
-+
-+# List of archive names. First name is the real one, the rest are links.
-+# The last name is the one that the linker finds with -lNAME.
-+library_names_spec=$lt_library_names_spec
-+
-+# The coded name of the library, if different from the real name.
-+soname_spec=$lt_soname_spec
-+
-+# Commands used to build and install an old-style archive.
-+RANLIB=$lt_RANLIB
-+old_archive_cmds=$lt_old_archive_cmds
-+old_postinstall_cmds=$lt_old_postinstall_cmds
-+old_postuninstall_cmds=$lt_old_postuninstall_cmds
-+
-+# Create an old-style archive from a shared archive.
-+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
-+
-+# Create a temporary old-style archive to link instead of a shared archive.
-+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
-+
-+# Commands used to build and install a shared archive.
-+archive_cmds=$lt_archive_cmds
-+archive_expsym_cmds=$lt_archive_expsym_cmds
-+postinstall_cmds=$lt_postinstall_cmds
-+postuninstall_cmds=$lt_postuninstall_cmds
-+
-+# Commands to strip libraries.
-+old_striplib=$lt_old_striplib
-+striplib=$lt_striplib
-+
-+# Method to check whether dependent libraries are shared objects.
-+deplibs_check_method=$lt_deplibs_check_method
-+
-+# Command to use when deplibs_check_method == file_magic.
-+file_magic_cmd=$lt_file_magic_cmd
-+
-+# Flag that allows shared libraries with undefined symbols to be built.
-+allow_undefined_flag=$lt_allow_undefined_flag
-+
-+# Flag that forces no undefined symbols.
-+no_undefined_flag=$lt_no_undefined_flag
-+
-+# Commands used to finish a libtool library installation in a directory.
-+finish_cmds=$lt_finish_cmds
-+
-+# Same as above, but a single script fragment to be evaled but not shown.
-+finish_eval=$lt_finish_eval
-+
-+# Take the output of nm and produce a listing of raw symbols and C names.
-+global_symbol_pipe=$lt_global_symbol_pipe
-+
-+# Transform the output of nm in a proper C declaration
-+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
-+
-+# Transform the output of nm in a C name address pair
-+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
-+
-+# This is the shared library runtime path variable.
-+runpath_var=$runpath_var
-+
-+# This is the shared library path variable.
-+shlibpath_var=$shlibpath_var
-+
-+# Is shlibpath searched before the hard-coded library search path?
-+shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-+
-+# How to hardcode a shared library path into an executable.
-+hardcode_action=$hardcode_action
-+
-+# Whether we should hardcode library paths into libraries.
-+hardcode_into_libs=$hardcode_into_libs
-+
-+# Flag to hardcode \$libdir into a binary during linking.
-+# This must work even if \$libdir does not exist.
-+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
-+
-+# Whether we need a single -rpath flag with a separated argument.
-+hardcode_libdir_separator=$lt_hardcode_libdir_separator
-+
-+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_direct=$hardcode_direct
-+
-+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_minus_L=$hardcode_minus_L
-+
-+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
-+# the resulting binary.
-+hardcode_shlibpath_var=$hardcode_shlibpath_var
-+
-+# Variables whose values should be saved in libtool wrapper scripts and
-+# restored at relink time.
-+variables_saved_for_relink="$variables_saved_for_relink"
-+
-+# Whether libtool must link a program against all its dependency libraries.
-+link_all_deplibs=$link_all_deplibs
-+
-+# Compile-time system search path for libraries
-+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
-+
-+# Run-time system search path for libraries
-+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
-+
-+# Fix the shell variable \$srcfile for the compiler.
-+fix_srcfile_path="$fix_srcfile_path"
-+
-+# Set to yes if exported symbols are required.
-+always_export_symbols=$always_export_symbols
-+
-+# The commands to list exported symbols.
-+export_symbols_cmds=$lt_export_symbols_cmds
-
--int main() {
-+# The commands to extract the exported symbol list from a shared archive.
-+extract_expsyms_cmds=$lt_extract_expsyms_cmds
-
--; return 0; }
--EOF
--if { (eval echo configure:1456: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-- rm -rf conftest*
-- lt_cv_cc_needs_belf=yes
--else
-- echo "configure: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- rm -rf conftest*
-- lt_cv_cc_needs_belf=no
--fi
--rm -f conftest*
--fi
-+# Symbols that should not be listed in the preloaded symbols.
-+exclude_expsyms=$lt_exclude_expsyms
-
--echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
-- if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-- CFLAGS="$SAVE_CFLAGS"
-- fi
-- ;;
-+# Symbols that must always be exported.
-+include_expsyms=$lt_include_expsyms
-
-+# ### END LIBTOOL CONFIG
-
--esac
-+__EOF__
-
-+ case $host_os in
-+ aix3*)
-+ cat <<\EOF >> "${ofile}T"
-
--# Save cache, so that ltconfig can load it
--cat > confcache <<\EOF
--# This file is a shell script that caches the results of configure
--# tests run on this system so they can be shared between configure
--# scripts and configure runs. It is not useful on other systems.
--# If it contains results you don't want to keep, you may remove or edit it.
-+# AIX sometimes has problems with the GCC collect2 program. For some
-+# reason, if we set the COLLECT_NAMES environment variable, the problems
-+# vanish in a puff of smoke.
-+if test "X${COLLECT_NAMES+set}" != Xset; then
-+ COLLECT_NAMES=
-+ export COLLECT_NAMES
-+fi
-+EOF
-+ ;;
-+ esac
-+
-+ case $host_os in
-+ cygwin* | mingw* | pw32* | os2*)
-+ cat <<'EOF' >> "${ofile}T"
-+ # This is a source program that is used to create dlls on Windows
-+ # Don't remove nor modify the starting and closing comments
-+# /* ltdll.c starts here */
-+# #define WIN32_LEAN_AND_MEAN
-+# #include <windows.h>
-+# #undef WIN32_LEAN_AND_MEAN
-+# #include <stdio.h>
- #
--# By default, configure uses ./config.cache as the cache file,
--# creating it if it does not exist already. You can give configure
--# the --cache-file=FILE option to use a different cache file; that is
--# what configure does when it calls configure scripts in
--# subdirectories, so they share the cache.
--# Giving --cache-file=/dev/null disables caching, for debugging configure.
--# config.status only pays attention to the cache file if you give it the
--# --recheck option to rerun configure.
-+# #ifndef __CYGWIN__
-+# # ifdef __CYGWIN32__
-+# # define __CYGWIN__ __CYGWIN32__
-+# # endif
-+# #endif
-+#
-+# #ifdef __cplusplus
-+# extern "C" {
-+# #endif
-+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
-+# #ifdef __cplusplus
-+# }
-+# #endif
-+#
-+# #ifdef __CYGWIN__
-+# #include <cygwin/cygwin_dll.h>
-+# DECLARE_CYGWIN_DLL( DllMain );
-+# #endif
-+# HINSTANCE __hDllInstance_base;
-+#
-+# BOOL APIENTRY
-+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
-+# {
-+# __hDllInstance_base = hInst;
-+# return TRUE;
-+# }
-+# /* ltdll.c ends here */
-+ # This is a source program that is used to create import libraries
-+ # on Windows for dlls which lack them. Don't remove nor modify the
-+ # starting and closing comments
-+# /* impgen.c starts here */
-+# /* Copyright (C) 1999-2000 Free Software Foundation, Inc.
-+#
-+# This file is part of GNU libtool.
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+# */
-+#
-+# #include <stdio.h> /* for printf() */
-+# #include <unistd.h> /* for open(), lseek(), read() */
-+# #include <fcntl.h> /* for O_RDONLY, O_BINARY */
-+# #include <string.h> /* for strdup() */
-+#
-+# /* O_BINARY isn't required (or even defined sometimes) under Unix */
-+# #ifndef O_BINARY
-+# #define O_BINARY 0
-+# #endif
-+#
-+# static unsigned int
-+# pe_get16 (fd, offset)
-+# int fd;
-+# int offset;
-+# {
-+# unsigned char b[2];
-+# lseek (fd, offset, SEEK_SET);
-+# read (fd, b, 2);
-+# return b[0] + (b[1]<<8);
-+# }
-+#
-+# static unsigned int
-+# pe_get32 (fd, offset)
-+# int fd;
-+# int offset;
-+# {
-+# unsigned char b[4];
-+# lseek (fd, offset, SEEK_SET);
-+# read (fd, b, 4);
-+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-+# }
-+#
-+# static unsigned int
-+# pe_as32 (ptr)
-+# void *ptr;
-+# {
-+# unsigned char *b = ptr;
-+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-+# }
-+#
-+# int
-+# main (argc, argv)
-+# int argc;
-+# char *argv[];
-+# {
-+# int dll;
-+# unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
-+# unsigned long export_rva, export_size, nsections, secptr, expptr;
-+# unsigned long name_rvas, nexp;
-+# unsigned char *expdata, *erva;
-+# char *filename, *dll_name;
-+#
-+# filename = argv[1];
-+#
-+# dll = open(filename, O_RDONLY|O_BINARY);
-+# if (dll < 1)
-+# return 1;
-+#
-+# dll_name = filename;
- #
-+# for (i=0; filename[i]; i++)
-+# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
-+# dll_name = filename + i +1;
-+#
-+# pe_header_offset = pe_get32 (dll, 0x3c);
-+# opthdr_ofs = pe_header_offset + 4 + 20;
-+# num_entries = pe_get32 (dll, opthdr_ofs + 92);
-+#
-+# if (num_entries < 1) /* no exports */
-+# return 1;
-+#
-+# export_rva = pe_get32 (dll, opthdr_ofs + 96);
-+# export_size = pe_get32 (dll, opthdr_ofs + 100);
-+# nsections = pe_get16 (dll, pe_header_offset + 4 +2);
-+# secptr = (pe_header_offset + 4 + 20 +
-+# pe_get16 (dll, pe_header_offset + 4 + 16));
-+#
-+# expptr = 0;
-+# for (i = 0; i < nsections; i++)
-+# {
-+# char sname[8];
-+# unsigned long secptr1 = secptr + 40 * i;
-+# unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
-+# unsigned long vsize = pe_get32 (dll, secptr1 + 16);
-+# unsigned long fptr = pe_get32 (dll, secptr1 + 20);
-+# lseek(dll, secptr1, SEEK_SET);
-+# read(dll, sname, 8);
-+# if (vaddr <= export_rva && vaddr+vsize > export_rva)
-+# {
-+# expptr = fptr + (export_rva - vaddr);
-+# if (export_rva + export_size > vaddr + vsize)
-+# export_size = vsize - (export_rva - vaddr);
-+# break;
-+# }
-+# }
-+#
-+# expdata = (unsigned char*)malloc(export_size);
-+# lseek (dll, expptr, SEEK_SET);
-+# read (dll, expdata, export_size);
-+# erva = expdata - export_rva;
-+#
-+# nexp = pe_as32 (expdata+24);
-+# name_rvas = pe_as32 (expdata+32);
-+#
-+# printf ("EXPORTS\n");
-+# for (i = 0; i<nexp; i++)
-+# {
-+# unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
-+# printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
-+# }
-+#
-+# return 0;
-+# }
-+# /* impgen.c ends here */
-+
- EOF
--# The following way of writing the cache mishandles newlines in values,
--# but we know of no workaround that is simple, portable, and efficient.
--# So, don't put newlines in cache variables' values.
--# Ultrix sh set writes to stderr and can't be redirected directly,
--# and sets the high bit in the cache file unless we assign to the vars.
--(set) 2>&1 |
-- case `(ac_space=' '; set | grep ac_space) 2>&1` in
-- *ac_space=\ *)
-- # `set' does not quote correctly, so add quotes (double-quote substitution
-- # turns \\\\ into \\, and sed turns \\ into \).
-- sed -n \
-- -e "s/'/'\\\\''/g" \
-- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
-- ;;
-- *)
-- # `set' quotes correctly as required by POSIX, so do not add quotes.
-- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
- ;;
-- esac >> confcache
--if cmp -s $cache_file confcache; then
-- :
--else
-- if test -w $cache_file; then
-- echo "updating cache $cache_file"
-- cat confcache > $cache_file
-- else
-- echo "not updating unwritable cache $cache_file"
-- fi
-+ esac
-+
-+ # We use sed instead of cat because bash on DJGPP gets confused if
-+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
-+ # text mode, it properly converts lines to CR/LF. This bash problem
-+ # is reportedly fixed, but why not run on old versions too?
-+ sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
-+
-+ mv -f "${ofile}T" "$ofile" || \
-+ (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
-+ chmod +x "$ofile"
- fi
--rm -f confcache
-
-
--# Actually configure libtool. ac_aux_dir is where install-sh is found.
--CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
--LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
--LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
--DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
--${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
--$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
--|| { echo "configure: error: libtool configure failed" 1>&2; exit 1; }
-
--# Reload cache, that may have been modified by ltconfig
--if test -r "$cache_file"; then
-- echo "loading cache $cache_file"
-- . $cache_file
--else
-- echo "creating cache $cache_file"
-- > $cache_file
--fi
-
-
- # This can be used to rebuild libtool when needed
--LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
-+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
-
- # Always use our own libtool.
- LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-
--# Redirect the config.log output again, so that the ltconfig log is not
--# clobbered by the next message.
--exec 5>>./config.log
-+# Prevent multiple expansion
-+
-
-
- echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
--echo "configure:1559: checking whether to enable maintainer-specific portions of Makefiles" >&5
-+echo "configure:5486: checking whether to enable maintainer-specific portions of Makefiles" >&5
- # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
- if test "${enable_maintainer_mode+set}" = set; then
- enableval="$enable_maintainer_mode"
-@@ -1585,7 +5512,7 @@
- fi
-
- echo $ac_n "checking host system type""... $ac_c" 1>&6
--echo "configure:1589: checking host system type" >&5
-+echo "configure:5516: checking host system type" >&5
-
- host_alias=$host
- case "$host_alias" in
-@@ -1701,7 +5628,7 @@
-
- # Build time sanity check...
- echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
--echo "configure:1705: checking whether build environment is sane" >&5
-+echo "configure:5632: checking whether build environment is sane" >&5
- # Just in case
- sleep 1
- echo timestamp > conftestfile
-@@ -1743,7 +5670,7 @@
- # Extract the first word of "gcc", so it can be a program name with args.
- set dummy gcc; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1747: checking for $ac_word" >&5
-+echo "configure:5674: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1773,7 +5700,7 @@
- # Extract the first word of "cc", so it can be a program name with args.
- set dummy cc; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1777: checking for $ac_word" >&5
-+echo "configure:5704: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1824,7 +5751,7 @@
- # Extract the first word of "cl", so it can be a program name with args.
- set dummy cl; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1828: checking for $ac_word" >&5
-+echo "configure:5755: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1856,7 +5783,7 @@
- fi
-
- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
--echo "configure:1860: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-+echo "configure:5787: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-
- ac_ext=c
- # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-@@ -1867,12 +5794,12 @@
-
- cat > conftest.$ac_ext << EOF
-
--#line 1871 "configure"
-+#line 5798 "configure"
- #include "confdefs.h"
-
- main(){return(0);}
- EOF
--if { (eval echo configure:1876: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:5803: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- ac_cv_prog_cc_works=yes
- # If we can't run a trivial program, we are probably using a cross compiler.
- if (./conftest; exit) 2>/dev/null; then
-@@ -1898,12 +5825,12 @@
- { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
- fi
- echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
--echo "configure:1902: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
-+echo "configure:5829: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
- echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
- cross_compiling=$ac_cv_prog_cc_cross
-
- echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
--echo "configure:1907: checking whether we are using GNU C" >&5
-+echo "configure:5834: checking whether we are using GNU C" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1912,7 +5839,7 @@
- yes;
- #endif
- EOF
--if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1916: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
-+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:5843: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
- else
- ac_cv_prog_gcc=no
-@@ -1931,7 +5858,7 @@
- ac_save_CFLAGS="$CFLAGS"
- CFLAGS=
- echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
--echo "configure:1935: checking whether ${CC-cc} accepts -g" >&5
-+echo "configure:5862: checking whether ${CC-cc} accepts -g" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -1962,32 +5889,54 @@
- fi
- fi
-
--echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6
--echo "configure:1967: checking for POSIXized ISC" >&5
--if test -d /etc/conf/kconfig.d &&
-- grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
--then
-- echo "$ac_t""yes" 1>&6
-- ISC=yes # If later tests want to check for ISC.
-- cat >> confdefs.h <<\EOF
--#define _POSIX_SOURCE 1
-+
-+ echo $ac_n "checking for strerror in -lcposix""... $ac_c" 1>&6
-+echo "configure:5895: checking for strerror in -lcposix" >&5
-+ac_lib_var=`echo cposix'_'strerror | sed 'y%./+-%__p_%'`
-+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-+ echo $ac_n "(cached) $ac_c" 1>&6
-+else
-+ ac_save_LIBS="$LIBS"
-+LIBS="-lcposix $LIBS"
-+cat > conftest.$ac_ext <<EOF
-+#line 5903 "configure"
-+#include "confdefs.h"
-+/* Override any gcc2 internal prototype to avoid an error. */
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char strerror();
-+
-+int main() {
-+strerror()
-+; return 0; }
- EOF
-+if { (eval echo configure:5914: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=yes"
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ eval "ac_cv_lib_$ac_lib_var=no"
-+fi
-+rm -f conftest*
-+LIBS="$ac_save_LIBS"
-
-- if test "$GCC" = yes; then
-- CC="$CC -posix"
-- else
-- CC="$CC -Xp"
-- fi
-+fi
-+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-+ echo "$ac_t""yes" 1>&6
-+ LIBS="$LIBS -lcposix"
- else
- echo "$ac_t""no" 1>&6
-- ISC=
- fi
-
-+
-+
-
-
-
- echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
--echo "configure:1991: checking for ${CC-cc} option to accept ANSI C" >&5
-+echo "configure:5940: checking for ${CC-cc} option to accept ANSI C" >&5
- if eval "test \"`echo '$''{'am_cv_prog_cc_stdc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2003,7 +5952,7 @@
- do
- CC="$ac_save_CC $ac_arg"
- cat > conftest.$ac_ext <<EOF
--#line 2007 "configure"
-+#line 5956 "configure"
- #include "confdefs.h"
- #include <stdarg.h>
- #include <stdio.h>
-@@ -2040,7 +5989,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:2044: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:5993: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- am_cv_prog_cc_stdc="$ac_arg"; break
- else
-@@ -2075,7 +6024,7 @@
- # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
- # ./install, which can be erroneously created by make from ./install.sh.
- echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
--echo "configure:2079: checking for a BSD compatible install" >&5
-+echo "configure:6028: checking for a BSD compatible install" >&5
- if test -z "$INSTALL"; then
- if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -2128,7 +6077,7 @@
- test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
- echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
--echo "configure:2132: checking whether ${MAKE-make} sets \${MAKE}" >&5
-+echo "configure:6081: checking whether ${MAKE-make} sets \${MAKE}" >&5
- set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -2180,12 +6129,12 @@
- # define a MAINT-like variable REBUILD which is set if Perl
- # and awk are found, so autogenerated sources can be rebuilt
-
--for ac_prog in gawk mawk nawk awk
-+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 $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:2189: checking for $ac_word" >&5
-+echo "configure:6138: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2219,7 +6168,7 @@
- # Extract the first word of "$ac_prog", so it can be a program name with args.
- set dummy $ac_prog; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:2223: checking for $ac_word" >&5
-+echo "configure:6172: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_PERL'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2253,7 +6202,7 @@
- # Extract the first word of "indent", so it can be a program name with args.
- set dummy indent; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:2257: checking for $ac_word" >&5
-+echo "configure:6206: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_prog_INDENT'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2290,7 +6239,7 @@
-
-
- echo $ac_n "checking whether make is GNU Make""... $ac_c" 1>&6
--echo "configure:2294: checking whether make is GNU Make" >&5
-+echo "configure:6243: checking whether make is GNU Make" >&5
- STRIP_BEGIN=
- STRIP_END=
- if $ac_make --version 2>/dev/null | grep '^GNU Make ' >/dev/null ; then
-@@ -2307,93 +6256,43 @@
-
- # i18n stuff
- ALL_LINGUAS="az ca cs da de el es et eu fi fr ga gl hr hu it ja ko lt nl no nn pl pt pt_BR ro ru sk sl sp sr sv tr uk vi wa zh_CN.GB2312 zh_TW.Big5"
--echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
--echo "configure:2312: checking how to run the C preprocessor" >&5
--# On Suns, sometimes $CPP names a directory.
--if test -n "$CPP" && test -d "$CPP"; then
-- CPP=
--fi
--if test -z "$CPP"; then
--if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
-+# Extract the first word of "ranlib", so it can be a program name with args.
-+set dummy ranlib; ac_word=$2
-+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-+echo "configure:6263: checking for $ac_word" >&5
-+if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-- # This must be in double quotes, not single quotes, because CPP may get
-- # substituted into the Makefile and "${CC-cc}" will confuse make.
-- CPP="${CC-cc} -E"
-- # On the NeXT, cc -E runs the code through the compiler's parser,
-- # not just through cpp.
-- cat > conftest.$ac_ext <<EOF
--#line 2327 "configure"
--#include "confdefs.h"
--#include <assert.h>
--Syntax Error
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:2333: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
-- :
--else
-- echo "$ac_err" >&5
-- echo "configure: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- rm -rf conftest*
-- CPP="${CC-cc} -E -traditional-cpp"
-- cat > conftest.$ac_ext <<EOF
--#line 2344 "configure"
--#include "confdefs.h"
--#include <assert.h>
--Syntax Error
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:2350: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
-- :
--else
-- echo "$ac_err" >&5
-- echo "configure: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- rm -rf conftest*
-- CPP="${CC-cc} -nologo -E"
-- cat > conftest.$ac_ext <<EOF
--#line 2361 "configure"
--#include "confdefs.h"
--#include <assert.h>
--Syntax Error
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:2367: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
-- :
-+ if test -n "$RANLIB"; then
-+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
- else
-- echo "$ac_err" >&5
-- echo "configure: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- rm -rf conftest*
-- CPP=/lib/cpp
--fi
--rm -f conftest*
--fi
--rm -f conftest*
-+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-+ ac_dummy="$PATH"
-+ for ac_dir in $ac_dummy; do
-+ test -z "$ac_dir" && ac_dir=.
-+ if test -f $ac_dir/$ac_word; then
-+ ac_cv_prog_RANLIB="ranlib"
-+ break
-+ fi
-+ done
-+ IFS="$ac_save_ifs"
-+ test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
- fi
--rm -f conftest*
-- ac_cv_prog_CPP="$CPP"
- fi
-- CPP="$ac_cv_prog_CPP"
-+RANLIB="$ac_cv_prog_RANLIB"
-+if test -n "$RANLIB"; then
-+ echo "$ac_t""$RANLIB" 1>&6
- else
-- ac_cv_prog_CPP="$CPP"
-+ echo "$ac_t""no" 1>&6
- fi
--echo "$ac_t""$CPP" 1>&6
-
- echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
--echo "configure:2392: checking for ANSI C header files" >&5
-+echo "configure:6291: checking for ANSI C header files" >&5
- if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2397 "configure"
-+#line 6296 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- #include <stdarg.h>
-@@ -2401,7 +6300,7 @@
- #include <float.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:2405: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:6304: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -2418,7 +6317,7 @@
- if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat > conftest.$ac_ext <<EOF
--#line 2422 "configure"
-+#line 6321 "configure"
- #include "confdefs.h"
- #include <string.h>
- EOF
-@@ -2436,7 +6335,7 @@
- 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 <<EOF
--#line 2440 "configure"
-+#line 6339 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- EOF
-@@ -2457,7 +6356,7 @@
- :
- else
- cat > conftest.$ac_ext <<EOF
--#line 2461 "configure"
-+#line 6360 "configure"
- #include "confdefs.h"
- #include <ctype.h>
- #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-@@ -2468,7 +6367,7 @@
- exit (0); }
-
- EOF
--if { (eval echo configure:2472: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6371: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- :
- else
-@@ -2492,12 +6391,12 @@
- fi
-
- echo $ac_n "checking for working const""... $ac_c" 1>&6
--echo "configure:2496: checking for working const" >&5
-+echo "configure:6395: checking for working const" >&5
- if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2501 "configure"
-+#line 6400 "configure"
- #include "confdefs.h"
-
- int main() {
-@@ -2546,7 +6445,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:2550: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:6449: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_c_const=yes
- else
-@@ -2567,21 +6466,21 @@
- fi
-
- echo $ac_n "checking for inline""... $ac_c" 1>&6
--echo "configure:2571: checking for inline" >&5
-+echo "configure:6470: checking for inline" >&5
- if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- ac_cv_c_inline=no
- for ac_kw in inline __inline__ __inline; do
- cat > conftest.$ac_ext <<EOF
--#line 2578 "configure"
-+#line 6477 "configure"
- #include "confdefs.h"
-
- int main() {
- } $ac_kw foo() {
- ; return 0; }
- EOF
--if { (eval echo configure:2585: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:6484: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_c_inline=$ac_kw; break
- else
-@@ -2607,12 +6506,12 @@
- esac
-
- echo $ac_n "checking for off_t""... $ac_c" 1>&6
--echo "configure:2611: checking for off_t" >&5
-+echo "configure:6510: checking for off_t" >&5
- if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2616 "configure"
-+#line 6515 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #if STDC_HEADERS
-@@ -2640,12 +6539,12 @@
- fi
-
- echo $ac_n "checking for size_t""... $ac_c" 1>&6
--echo "configure:2644: checking for size_t" >&5
-+echo "configure:6543: checking for size_t" >&5
- if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2649 "configure"
-+#line 6548 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #if STDC_HEADERS
-@@ -2675,19 +6574,19 @@
- # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
- # for constant arguments. Useless!
- echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
--echo "configure:2679: checking for working alloca.h" >&5
-+echo "configure:6578: checking for working alloca.h" >&5
- if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2684 "configure"
-+#line 6583 "configure"
- #include "confdefs.h"
- #include <alloca.h>
- int main() {
- char *p = alloca(2 * sizeof(int));
- ; return 0; }
- EOF
--if { (eval echo configure:2691: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:6590: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- ac_cv_header_alloca_h=yes
- else
-@@ -2708,12 +6607,12 @@
- fi
-
- echo $ac_n "checking for alloca""... $ac_c" 1>&6
--echo "configure:2712: checking for alloca" >&5
-+echo "configure:6611: checking for alloca" >&5
- if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2717 "configure"
-+#line 6616 "configure"
- #include "confdefs.h"
-
- #ifdef __GNUC__
-@@ -2741,7 +6640,7 @@
- char *p = (char *) alloca(1);
- ; return 0; }
- EOF
--if { (eval echo configure:2745: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:6644: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- ac_cv_func_alloca_works=yes
- else
-@@ -2773,12 +6672,12 @@
-
-
- echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
--echo "configure:2777: checking whether alloca needs Cray hooks" >&5
-+echo "configure:6676: checking whether alloca needs Cray hooks" >&5
- if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2782 "configure"
-+#line 6681 "configure"
- #include "confdefs.h"
- #if defined(CRAY) && ! defined(CRAY2)
- webecray
-@@ -2803,12 +6702,12 @@
- if test $ac_cv_os_cray = yes; then
- for ac_func in _getb67 GETB67 getb67; do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:2807: checking for $ac_func" >&5
-+echo "configure:6706: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2812 "configure"
-+#line 6711 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -2831,7 +6730,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:2835: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:6734: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -2858,7 +6757,7 @@
- fi
-
- echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
--echo "configure:2862: checking stack direction for C alloca" >&5
-+echo "configure:6761: checking stack direction for C alloca" >&5
- if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -2866,7 +6765,7 @@
- ac_cv_c_stack_direction=0
- else
- cat > conftest.$ac_ext <<EOF
--#line 2870 "configure"
-+#line 6769 "configure"
- #include "confdefs.h"
- find_stack_direction ()
- {
-@@ -2885,7 +6784,7 @@
- exit (find_stack_direction() < 0);
- }
- EOF
--if { (eval echo configure:2889: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:6788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_c_stack_direction=1
- else
-@@ -2910,17 +6809,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:2914: checking for $ac_hdr" >&5
-+echo "configure:6813: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2919 "configure"
-+#line 6818 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:2924: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:6823: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -2949,12 +6848,12 @@
- for ac_func in getpagesize
- do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:2953: checking for $ac_func" >&5
-+echo "configure:6852: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 2958 "configure"
-+#line 6857 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -2977,7 +6876,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:2981: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:6880: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -3002,7 +6901,7 @@
- done
-
- echo $ac_n "checking for working mmap""... $ac_c" 1>&6
--echo "configure:3006: checking for working mmap" >&5
-+echo "configure:6905: checking for working mmap" >&5
- if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -3010,7 +6909,7 @@
- ac_cv_func_mmap_fixed_mapped=no
- else
- cat > conftest.$ac_ext <<EOF
--#line 3014 "configure"
-+#line 6913 "configure"
- #include "confdefs.h"
-
- /* Thanks to Mike Haertel and Jim Avera for this test.
-@@ -3150,7 +7049,7 @@
- }
-
- EOF
--if { (eval echo configure:3154: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:7053: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_func_mmap_fixed_mapped=yes
- else
-@@ -3178,17 +7077,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:3182: checking for $ac_hdr" >&5
-+echo "configure:7081: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3187 "configure"
-+#line 7086 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3192: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7091: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3218,12 +7117,12 @@
- strdup __argz_count __argz_stringify __argz_next
- do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:3222: checking for $ac_func" >&5
-+echo "configure:7121: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3227 "configure"
-+#line 7126 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -3246,7 +7145,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3250: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7149: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -3275,12 +7174,12 @@
- for ac_func in stpcpy
- do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:3279: checking for $ac_func" >&5
-+echo "configure:7178: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3284 "configure"
-+#line 7183 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -3303,7 +7202,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3307: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7206: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -3335,21 +7234,21 @@
-
- fi
-
-- if test $ac_cv_header_locale_h = yes; then
-- echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
--echo "configure:3341: checking for LC_MESSAGES" >&5
-+
-+ echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
-+echo "configure:7240: checking for LC_MESSAGES" >&5
- if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3346 "configure"
-+#line 7245 "configure"
- #include "confdefs.h"
- #include <locale.h>
- int main() {
- return LC_MESSAGES
- ; return 0; }
- EOF
--if { (eval echo configure:3353: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7252: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- am_cv_val_LC_MESSAGES=yes
- else
-@@ -3362,15 +7261,15 @@
- fi
-
- echo "$ac_t""$am_cv_val_LC_MESSAGES" 1>&6
-- if test $am_cv_val_LC_MESSAGES = yes; then
-- cat >> confdefs.h <<\EOF
-+ if test $am_cv_val_LC_MESSAGES = yes; then
-+ cat >> confdefs.h <<\EOF
- #define HAVE_LC_MESSAGES 1
- EOF
-
-- fi
- fi
-+
- echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6
--echo "configure:3374: checking whether NLS is requested" >&5
-+echo "configure:7273: checking whether NLS is requested" >&5
- # Check whether --enable-nls or --disable-nls was given.
- if test "${enable_nls+set}" = set; then
- enableval="$enable_nls"
-@@ -3402,17 +7301,17 @@
-
- ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for libintl.h""... $ac_c" 1>&6
--echo "configure:3406: checking for libintl.h" >&5
-+echo "configure:7305: checking for libintl.h" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3411 "configure"
-+#line 7310 "configure"
- #include "confdefs.h"
- #include <libintl.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:3416: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7315: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -3429,19 +7328,19 @@
- if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- echo $ac_n "checking for dgettext in libc""... $ac_c" 1>&6
--echo "configure:3433: checking for dgettext in libc" >&5
-+echo "configure:7332: checking for dgettext in libc" >&5
- if eval "test \"`echo '$''{'gt_cv_func_dgettext_libc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3438 "configure"
-+#line 7337 "configure"
- #include "confdefs.h"
- #include <libintl.h>
- int main() {
- return (int) dgettext ("","")
- ; return 0; }
- EOF
--if { (eval echo configure:3445: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7344: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- gt_cv_func_dgettext_libc=yes
- else
-@@ -3457,7 +7356,7 @@
-
- if test "$gt_cv_func_dgettext_libc" != "yes"; then
- echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6
--echo "configure:3461: checking for bindtextdomain in -lintl" >&5
-+echo "configure:7360: checking for bindtextdomain in -lintl" >&5
- ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -3465,7 +7364,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lintl $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 3469 "configure"
-+#line 7368 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -3476,7 +7375,7 @@
- bindtextdomain()
- ; return 0; }
- EOF
--if { (eval echo configure:3480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7379: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -3492,12 +7391,12 @@
- if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- echo $ac_n "checking for dgettext in libintl""... $ac_c" 1>&6
--echo "configure:3496: checking for dgettext in libintl" >&5
-+echo "configure:7395: checking for dgettext in libintl" >&5
- if eval "test \"`echo '$''{'gt_cv_func_dgettext_libintl'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- echo $ac_n "checking for dgettext in -lintl""... $ac_c" 1>&6
--echo "configure:3501: checking for dgettext in -lintl" >&5
-+echo "configure:7400: checking for dgettext in -lintl" >&5
- ac_lib_var=`echo intl'_'dgettext | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -3505,7 +7404,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lintl $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 3509 "configure"
-+#line 7408 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -3516,7 +7415,7 @@
- dgettext()
- ; return 0; }
- EOF
--if { (eval echo configure:3520: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7419: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -3559,7 +7458,7 @@
- # Extract the first word of "msgfmt", so it can be a program name with args.
- set dummy msgfmt; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:3563: checking for $ac_word" >&5
-+echo "configure:7462: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -3584,7 +7483,7 @@
- esac
- fi
- MSGFMT="$ac_cv_path_MSGFMT"
--if test -n "$MSGFMT"; then
-+if test "$MSGFMT" != "no"; then
- echo "$ac_t""$MSGFMT" 1>&6
- else
- echo "$ac_t""no" 1>&6
-@@ -3593,12 +7492,12 @@
- for ac_func in dcgettext
- do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:3597: checking for $ac_func" >&5
-+echo "configure:7496: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3602 "configure"
-+#line 7501 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -3621,7 +7520,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3625: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7524: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -3648,7 +7547,7 @@
- # Extract the first word of "gmsgfmt", so it can be a program name with args.
- set dummy gmsgfmt; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:3652: checking for $ac_word" >&5
-+echo "configure:7551: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -3684,7 +7583,7 @@
- # Extract the first word of "xgettext", so it can be a program name with args.
- set dummy xgettext; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:3688: checking for $ac_word" >&5
-+echo "configure:7587: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -3709,14 +7608,14 @@
- esac
- fi
- XGETTEXT="$ac_cv_path_XGETTEXT"
--if test -n "$XGETTEXT"; then
-+if test "$XGETTEXT" != ":"; then
- echo "$ac_t""$XGETTEXT" 1>&6
- else
- echo "$ac_t""no" 1>&6
- fi
-
- cat > conftest.$ac_ext <<EOF
--#line 3720 "configure"
-+#line 7619 "configure"
- #include "confdefs.h"
-
- int main() {
-@@ -3724,7 +7623,7 @@
- return _nl_msg_cat_cntr
- ; return 0; }
- EOF
--if { (eval echo configure:3728: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7627: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- CATOBJEXT=.gmo
- DATADIRNAME=share
-@@ -3754,7 +7653,7 @@
-
- if test "$CATOBJEXT" = "NONE"; then
- echo $ac_n "checking whether catgets can be used""... $ac_c" 1>&6
--echo "configure:3758: checking whether catgets can be used" >&5
-+echo "configure:7657: checking whether catgets can be used" >&5
- # Check whether --with-catgets or --without-catgets was given.
- if test "${with_catgets+set}" = set; then
- withval="$with_catgets"
-@@ -3767,7 +7666,7 @@
-
- if test "$nls_cv_use_catgets" = "yes"; then
- echo $ac_n "checking for main in -li""... $ac_c" 1>&6
--echo "configure:3771: checking for main in -li" >&5
-+echo "configure:7670: checking for main in -li" >&5
- ac_lib_var=`echo i'_'main | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -3775,14 +7674,14 @@
- ac_save_LIBS="$LIBS"
- LIBS="-li $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 3779 "configure"
-+#line 7678 "configure"
- #include "confdefs.h"
-
- int main() {
- main()
- ; return 0; }
- EOF
--if { (eval echo configure:3786: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7685: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -3810,12 +7709,12 @@
- fi
-
- echo $ac_n "checking for catgets""... $ac_c" 1>&6
--echo "configure:3814: checking for catgets" >&5
-+echo "configure:7713: checking for catgets" >&5
- if eval "test \"`echo '$''{'ac_cv_func_catgets'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 3819 "configure"
-+#line 7718 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char catgets(); below. */
-@@ -3838,7 +7737,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:3842: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:7741: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_catgets=yes"
- else
-@@ -3860,7 +7759,7 @@
- # Extract the first word of "gencat", so it can be a program name with args.
- set dummy gencat; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:3864: checking for $ac_word" >&5
-+echo "configure:7763: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_path_GENCAT'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -4000,7 +7899,7 @@
- LINGUAS=
- else
- echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6
--echo "configure:4004: checking for catalogs to be installed" >&5
-+echo "configure:7903: checking for catalogs to be installed" >&5
- NEW_LINGUAS=
- for lang in ${LINGUAS=$ALL_LINGUAS}; do
- case "$ALL_LINGUAS" in
-@@ -4028,17 +7927,17 @@
- if test "$CATOBJEXT" = ".cat"; then
- ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6
--echo "configure:4032: checking for linux/version.h" >&5
-+echo "configure:7931: checking for linux/version.h" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 4037 "configure"
-+#line 7936 "configure"
- #include "confdefs.h"
- #include <linux/version.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:4042: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:7941: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -4109,8 +8008,34 @@
- gtklocaledir='${prefix}/${DATADIRNAME}/locale'
-
-
-+echo $ac_n "checking for nl_langinfo (CODESET)""... $ac_c" 1>&6
-+echo "configure:8013: checking for nl_langinfo (CODESET)" >&5
-+cat > conftest.$ac_ext <<EOF
-+#line 8015 "configure"
-+#include "confdefs.h"
-+#include <langinfo.h>
-+int main() {
-+char *codeset = nl_langinfo (CODESET);
-+; return 0; }
-+EOF
-+if { (eval echo configure:8022: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+ rm -rf conftest*
-+ cat >> confdefs.h <<\EOF
-+#define HAVE_CODESET 1
-+EOF
-+
-+ have_codeset=yes
-+else
-+ echo "configure: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ rm -rf conftest*
-+ have_codeset=no
-+fi
-+rm -f conftest*
-+echo "$ac_t""$have_codeset" 1>&6
-+
- echo $ac_n "checking for extra flags to get ANSI library prototypes""... $ac_c" 1>&6
--echo "configure:4114: checking for extra flags to get ANSI library prototypes" >&5
-+echo "configure:8039: checking for extra flags to get ANSI library prototypes" >&5
-
- gtk_save_LIBS=$LIBS
- LIBS="$LIBS -lm"
-@@ -4119,12 +8044,12 @@
-
- else
- cat > conftest.$ac_ext <<EOF
--#line 4123 "configure"
-+#line 8048 "configure"
- #include "confdefs.h"
- #include <math.h>
- int main (void) { return (log(1) != log(1.)); }
- EOF
--if { (eval echo configure:4128: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:8053: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- echo "$ac_t""none needed" 1>&6
- else
-@@ -4138,12 +8063,12 @@
-
- else
- cat > conftest.$ac_ext <<EOF
--#line 4142 "configure"
-+#line 8067 "configure"
- #include "confdefs.h"
- #include <math.h>
- int main (void) { return (log(1) != log(1.)); }
- EOF
--if { (eval echo configure:4147: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:8072: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- echo "$ac_t""-std1" 1>&6
- else
-@@ -4164,16 +8089,16 @@
- LIBS=$gtk_save_LIBS
-
- echo $ac_n "checking for extra flags for POSIX compliance""... $ac_c" 1>&6
--echo "configure:4168: checking for extra flags for POSIX compliance" >&5
-+echo "configure:8093: checking for extra flags for POSIX compliance" >&5
- cat > conftest.$ac_ext <<EOF
--#line 4170 "configure"
-+#line 8095 "configure"
- #include "confdefs.h"
- #include <dirent.h>
- int main() {
- DIR *dir;
- ; return 0; }
- EOF
--if { (eval echo configure:4177: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:8102: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- echo "$ac_t""none needed" 1>&6
- else
-@@ -4183,14 +8108,14 @@
- gtk_save_CFLAGS=$CFLAGS
- CFLAGS="$CFLAGS -posix"
- cat > conftest.$ac_ext <<EOF
--#line 4187 "configure"
-+#line 8112 "configure"
- #include "confdefs.h"
- #include <dirent.h>
- int main() {
- DIR *dir;
- ; return 0; }
- EOF
--if { (eval echo configure:4194: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:8119: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- echo "$ac_t""-posix" 1>&6
- else
-@@ -4266,7 +8191,7 @@
- # Extract the first word of "glib-config", so it can be a program name with args.
- set dummy glib-config; ac_word=$2
- echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:4270: checking for $ac_word" >&5
-+echo "configure:8195: checking for $ac_word" >&5
- if eval "test \"`echo '$''{'ac_cv_path_GLIB_CONFIG'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -4301,7 +8226,7 @@
-
- min_glib_version=1.2.8
- echo $ac_n "checking for GLIB - version >= $min_glib_version""... $ac_c" 1>&6
--echo "configure:4305: checking for GLIB - version >= $min_glib_version" >&5
-+echo "configure:8230: checking for GLIB - version >= $min_glib_version" >&5
- no_glib=""
- if test "$GLIB_CONFIG" = "no" ; then
- no_glib=yes
-@@ -4324,7 +8249,7 @@
- echo $ac_n "cross compiling; assumed OK... $ac_c"
- else
- cat > conftest.$ac_ext <<EOF
--#line 4328 "configure"
-+#line 8253 "configure"
- #include "confdefs.h"
-
- #include <glib.h>
-@@ -4400,7 +8325,7 @@
- }
-
- EOF
--if { (eval echo configure:4404: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:8329: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- :
- else
-@@ -4434,7 +8359,7 @@
- CFLAGS="$CFLAGS $GLIB_CFLAGS"
- LIBS="$LIBS $GLIB_LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4438 "configure"
-+#line 8363 "configure"
- #include "confdefs.h"
-
- #include <glib.h>
-@@ -4444,7 +8369,7 @@
- return ((glib_major_version) || (glib_minor_version) || (glib_micro_version));
- ; return 0; }
- EOF
--if { (eval echo configure:4448: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8373: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- echo "*** The test program compiled, but did not run. This usually means"
- echo "*** that the run-time linker is not finding GLIB or finding the wrong"
-@@ -4540,7 +8465,7 @@
- # Uses ac_ vars as temps to allow command line to override cache and checks.
- # --without-x overrides everything else, but does not touch the cache.
- echo $ac_n "checking for X""... $ac_c" 1>&6
--echo "configure:4544: checking for X" >&5
-+echo "configure:8469: checking for X" >&5
-
- # Check whether --with-x or --without-x was given.
- if test "${with_x+set}" = set; then
-@@ -4602,12 +8527,12 @@
-
- # First, try using that file with no special directory specified.
- cat > conftest.$ac_ext <<EOF
--#line 4606 "configure"
-+#line 8531 "configure"
- #include "confdefs.h"
- #include <$x_direct_test_include>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:4611: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:8536: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -4676,14 +8601,14 @@
- ac_save_LIBS="$LIBS"
- LIBS="-l$x_direct_test_library $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4680 "configure"
-+#line 8605 "configure"
- #include "confdefs.h"
-
- int main() {
- ${x_direct_test_function}()
- ; return 0; }
- EOF
--if { (eval echo configure:4687: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8612: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- LIBS="$ac_save_LIBS"
- # We can link X programs with no special library path.
-@@ -4789,17 +8714,17 @@
- case "`(uname -sr) 2>/dev/null`" in
- "SunOS 5"*)
- echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6
--echo "configure:4793: checking whether -R must be followed by a space" >&5
-+echo "configure:8718: checking whether -R must be followed by a space" >&5
- ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries"
- cat > conftest.$ac_ext <<EOF
--#line 4796 "configure"
-+#line 8721 "configure"
- #include "confdefs.h"
-
- int main() {
-
- ; return 0; }
- EOF
--if { (eval echo configure:4803: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8728: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- ac_R_nospace=yes
- else
-@@ -4815,14 +8740,14 @@
- else
- LIBS="$ac_xsave_LIBS -R $x_libraries"
- cat > conftest.$ac_ext <<EOF
--#line 4819 "configure"
-+#line 8744 "configure"
- #include "confdefs.h"
-
- int main() {
-
- ; return 0; }
- EOF
--if { (eval echo configure:4826: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8751: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- ac_R_space=yes
- else
-@@ -4854,7 +8779,7 @@
- # libraries were built with DECnet support. And karl@cs.umb.edu says
- # the Alpha needs dnet_stub (dnet does not exist).
- echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6
--echo "configure:4858: checking for dnet_ntoa in -ldnet" >&5
-+echo "configure:8783: checking for dnet_ntoa in -ldnet" >&5
- ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4862,7 +8787,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-ldnet $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4866 "configure"
-+#line 8791 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4873,7 +8798,7 @@
- dnet_ntoa()
- ; return 0; }
- EOF
--if { (eval echo configure:4877: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8802: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4895,7 +8820,7 @@
-
- if test $ac_cv_lib_dnet_dnet_ntoa = no; then
- echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6
--echo "configure:4899: checking for dnet_ntoa in -ldnet_stub" >&5
-+echo "configure:8824: checking for dnet_ntoa in -ldnet_stub" >&5
- ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -4903,7 +8828,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-ldnet_stub $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 4907 "configure"
-+#line 8832 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -4914,7 +8839,7 @@
- dnet_ntoa()
- ; return 0; }
- EOF
--if { (eval echo configure:4918: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8843: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -4943,12 +8868,12 @@
- # The nsl library prevents programs from opening the X display
- # on Irix 5.2, according to dickey@clark.net.
- echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
--echo "configure:4947: checking for gethostbyname" >&5
-+echo "configure:8872: checking for gethostbyname" >&5
- if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 4952 "configure"
-+#line 8877 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char gethostbyname(); below. */
-@@ -4971,7 +8896,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:4975: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8900: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_gethostbyname=yes"
- else
-@@ -4992,7 +8917,7 @@
-
- if test $ac_cv_func_gethostbyname = no; then
- echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
--echo "configure:4996: checking for gethostbyname in -lnsl" >&5
-+echo "configure:8921: checking for gethostbyname in -lnsl" >&5
- ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5000,7 +8925,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lnsl $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5004 "configure"
-+#line 8929 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5011,7 +8936,7 @@
- gethostbyname()
- ; return 0; }
- EOF
--if { (eval echo configure:5015: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8940: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5041,12 +8966,12 @@
- # -lsocket must be given before -lnsl if both are needed.
- # We assume that if connect needs -lnsl, so does gethostbyname.
- echo $ac_n "checking for connect""... $ac_c" 1>&6
--echo "configure:5045: checking for connect" >&5
-+echo "configure:8970: checking for connect" >&5
- if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 5050 "configure"
-+#line 8975 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char connect(); below. */
-@@ -5069,7 +8994,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:5073: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:8998: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_connect=yes"
- else
-@@ -5090,7 +9015,7 @@
-
- if test $ac_cv_func_connect = no; then
- echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6
--echo "configure:5094: checking for connect in -lsocket" >&5
-+echo "configure:9019: checking for connect in -lsocket" >&5
- ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5098,7 +9023,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5102 "configure"
-+#line 9027 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5109,7 +9034,7 @@
- connect()
- ; return 0; }
- EOF
--if { (eval echo configure:5113: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9038: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5133,12 +9058,12 @@
-
- # gomez@mi.uni-erlangen.de says -lposix is necessary on A/UX.
- echo $ac_n "checking for remove""... $ac_c" 1>&6
--echo "configure:5137: checking for remove" >&5
-+echo "configure:9062: checking for remove" >&5
- if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 5142 "configure"
-+#line 9067 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char remove(); below. */
-@@ -5161,7 +9086,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:5165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9090: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_remove=yes"
- else
-@@ -5182,7 +9107,7 @@
-
- if test $ac_cv_func_remove = no; then
- echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6
--echo "configure:5186: checking for remove in -lposix" >&5
-+echo "configure:9111: checking for remove in -lposix" >&5
- ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5190,7 +9115,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lposix $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5194 "configure"
-+#line 9119 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5201,7 +9126,7 @@
- remove()
- ; return 0; }
- EOF
--if { (eval echo configure:5205: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9130: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5225,12 +9150,12 @@
-
- # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
- echo $ac_n "checking for shmat""... $ac_c" 1>&6
--echo "configure:5229: checking for shmat" >&5
-+echo "configure:9154: checking for shmat" >&5
- if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 5234 "configure"
-+#line 9159 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char shmat(); below. */
-@@ -5253,7 +9178,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:5257: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9182: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_shmat=yes"
- else
-@@ -5274,7 +9199,7 @@
-
- if test $ac_cv_func_shmat = no; then
- echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6
--echo "configure:5278: checking for shmat in -lipc" >&5
-+echo "configure:9203: checking for shmat in -lipc" >&5
- ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5282,7 +9207,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lipc $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5286 "configure"
-+#line 9211 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5293,7 +9218,7 @@
- shmat()
- ; return 0; }
- EOF
--if { (eval echo configure:5297: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9222: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5326,7 +9251,7 @@
- # libraries we check for below, so use a different variable.
- # --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
- echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6
--echo "configure:5330: checking for IceConnectionNumber in -lICE" >&5
-+echo "configure:9255: checking for IceConnectionNumber in -lICE" >&5
- ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5334,7 +9259,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lICE $X_EXTRA_LIBS $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5338 "configure"
-+#line 9263 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5345,7 +9270,7 @@
- IceConnectionNumber()
- ; return 0; }
- EOF
--if { (eval echo configure:5349: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9274: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5389,7 +9314,7 @@
- # Checks for libraries.
- # Check for the X11 library
- echo $ac_n "checking for XOpenDisplay in -lX11""... $ac_c" 1>&6
--echo "configure:5393: checking for XOpenDisplay in -lX11" >&5
-+echo "configure:9318: checking for XOpenDisplay in -lX11" >&5
- ac_lib_var=`echo X11'_'XOpenDisplay | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5397,7 +9322,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lX11 $X_EXTRA_LIBS $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5401 "configure"
-+#line 9326 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5408,7 +9333,7 @@
- XOpenDisplay()
- ; return 0; }
- EOF
--if { (eval echo configure:5412: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9337: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5433,7 +9358,7 @@
- if test "x$enable_shm" = "xyes"; then
- # Check for the Xext library (needed for XShm extention)
- echo $ac_n "checking for XShmAttach in -lXext""... $ac_c" 1>&6
--echo "configure:5437: checking for XShmAttach in -lXext" >&5
-+echo "configure:9362: checking for XShmAttach in -lXext" >&5
- ac_lib_var=`echo Xext'_'XShmAttach | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5441,7 +9366,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lXext $x_libs $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5445 "configure"
-+#line 9370 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5452,7 +9377,7 @@
- XShmAttach()
- ; return 0; }
- EOF
--if { (eval echo configure:5456: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9381: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5472,7 +9397,7 @@
- echo "$ac_t""no" 1>&6
- # On AIX, it is in XextSam instead, but we still need -lXext
- echo $ac_n "checking for XShmAttach in -lXextSam""... $ac_c" 1>&6
--echo "configure:5476: checking for XShmAttach in -lXextSam" >&5
-+echo "configure:9401: checking for XShmAttach in -lXextSam" >&5
- ac_lib_var=`echo XextSam'_'XShmAttach | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5480,7 +9405,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lXextSam $x_libs $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5484 "configure"
-+#line 9409 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5491,7 +9416,7 @@
- XShmAttach()
- ; return 0; }
- EOF
--if { (eval echo configure:5495: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5519,7 +9444,7 @@
- # Check for shaped window extension
-
- echo $ac_n "checking for XShapeCombineMask in -lXext""... $ac_c" 1>&6
--echo "configure:5523: checking for XShapeCombineMask in -lXext" >&5
-+echo "configure:9448: checking for XShapeCombineMask in -lXext" >&5
- ac_lib_var=`echo Xext'_'XShapeCombineMask | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5527,7 +9452,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lXext $x_libs $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5531 "configure"
-+#line 9456 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5538,7 +9463,7 @@
- XShapeCombineMask()
- ; return 0; }
- EOF
--if { (eval echo configure:5542: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9467: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5568,7 +9493,7 @@
- # Check for XConvertCase (X11R6 specific)
-
- echo $ac_n "checking for XConvertCase in -lX11""... $ac_c" 1>&6
--echo "configure:5572: checking for XConvertCase in -lX11" >&5
-+echo "configure:9497: checking for XConvertCase in -lX11" >&5
- ac_lib_var=`echo X11'_'XConvertCase | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5576,7 +9501,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lX11 $x_libs $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5580 "configure"
-+#line 9505 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5587,7 +9512,7 @@
- XConvertCase()
- ; return 0; }
- EOF
--if { (eval echo configure:5591: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9516: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5614,7 +9539,7 @@
- # Check for XIM support.
-
- echo $ac_n "checking for XUnregisterIMInstantiateCallback in -lX11""... $ac_c" 1>&6
--echo "configure:5618: checking for XUnregisterIMInstantiateCallback in -lX11" >&5
-+echo "configure:9543: checking for XUnregisterIMInstantiateCallback in -lX11" >&5
- ac_lib_var=`echo X11'_'XUnregisterIMInstantiateCallback | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -5622,7 +9547,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lX11 $x_libs $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 5626 "configure"
-+#line 9551 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -5633,7 +9558,7 @@
- XUnregisterIMInstantiateCallback()
- ; return 0; }
- EOF
--if { (eval echo configure:5637: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:9562: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -5721,17 +9646,17 @@
- # Check for shared memory
- ac_safe=`echo "sys/ipc.h" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for sys/ipc.h""... $ac_c" 1>&6
--echo "configure:5725: checking for sys/ipc.h" >&5
-+echo "configure:9650: checking for sys/ipc.h" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 5730 "configure"
-+#line 9655 "configure"
- #include "confdefs.h"
- #include <sys/ipc.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:5735: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:9660: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -5758,17 +9683,17 @@
-
- ac_safe=`echo "sys/shm.h" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for sys/shm.h""... $ac_c" 1>&6
--echo "configure:5762: checking for sys/shm.h" >&5
-+echo "configure:9687: checking for sys/shm.h" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 5767 "configure"
-+#line 9692 "configure"
- #include "confdefs.h"
- #include <sys/shm.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:5772: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:9697: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -5796,7 +9721,7 @@
-
- # Check for the X shared memory extension header file
- echo $ac_n "checking X11/extensions/XShm.h""... $ac_c" 1>&6
--echo "configure:5800: checking X11/extensions/XShm.h" >&5
-+echo "configure:9725: checking X11/extensions/XShm.h" >&5
- if test "x$no_xext_lib" = "xyes"; then
- echo "$ac_t""no" 1>&6
- no_xshm=yes
-@@ -5817,13 +9742,13 @@
- # Check if X_LOCALE definition is necessary
-
- echo $ac_n "checking need -DX_LOCALE""... $ac_c" 1>&6
--echo "configure:5821: checking need -DX_LOCALE" >&5
-+echo "configure:9746: checking need -DX_LOCALE" >&5
-
- if test "$cross_compiling" = yes; then
- need_x_locale=no
- else
- cat > conftest.$ac_ext <<EOF
--#line 5827 "configure"
-+#line 9752 "configure"
- #include "confdefs.h"
-
- #include <stdio.h>
-@@ -5835,7 +9760,7 @@
- return setlocale (LC_ALL, "${with_locale}") == NULL;
- }
- EOF
--if { (eval echo configure:5839: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:9764: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- need_x_locale=no
- else
-@@ -5855,10 +9780,10 @@
- else
- if test x$with_native_locale = xyes ; then
- echo $ac_n "checking functioning locale support""... $ac_c" 1>&6
--echo "configure:5859: checking functioning locale support" >&5
-+echo "configure:9784: checking functioning locale support" >&5
-
- cat > conftest.$ac_ext <<EOF
--#line 5862 "configure"
-+#line 9787 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- int main() {
-@@ -5870,7 +9795,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:5874: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:9799: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- use_native_locale=yes
- else
-@@ -5885,13 +9810,13 @@
-
- if test x$use_native_locale = xyes ; then
- echo $ac_n "checking if sizeof(wchar_t) == 4""... $ac_c" 1>&6
--echo "configure:5889: checking if sizeof(wchar_t) == 4" >&5
-+echo "configure:9814: checking if sizeof(wchar_t) == 4" >&5
-
- if test "$cross_compiling" = yes; then
- :
- else
- cat > conftest.$ac_ext <<EOF
--#line 5895 "configure"
-+#line 9820 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -5902,7 +9827,7 @@
- return (sizeof(wchar_t) == 4) ? 0 : 1;
- }
- EOF
--if { (eval echo configure:5906: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:9831: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- :
- else
-@@ -5926,12 +9851,12 @@
-
- # Checks for header files.
- echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
--echo "configure:5930: checking for ANSI C header files" >&5
-+echo "configure:9855: checking for ANSI C header files" >&5
- if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 5935 "configure"
-+#line 9860 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- #include <stdarg.h>
-@@ -5939,7 +9864,7 @@
- #include <float.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:5943: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:9868: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -5956,7 +9881,7 @@
- if test $ac_cv_header_stdc = yes; then
- # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat > conftest.$ac_ext <<EOF
--#line 5960 "configure"
-+#line 9885 "configure"
- #include "confdefs.h"
- #include <string.h>
- EOF
-@@ -5974,7 +9899,7 @@
- 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 <<EOF
--#line 5978 "configure"
-+#line 9903 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- EOF
-@@ -5995,7 +9920,7 @@
- :
- else
- cat > conftest.$ac_ext <<EOF
--#line 5999 "configure"
-+#line 9924 "configure"
- #include "confdefs.h"
- #include <ctype.h>
- #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-@@ -6006,7 +9931,7 @@
- exit (0); }
-
- EOF
--if { (eval echo configure:6010: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:9935: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- :
- else
-@@ -6032,12 +9957,12 @@
-
- # Checks for typedefs, structures, and compiler characteristics.
- echo $ac_n "checking for working const""... $ac_c" 1>&6
--echo "configure:6036: checking for working const" >&5
-+echo "configure:9961: checking for working const" >&5
- if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 6041 "configure"
-+#line 9966 "configure"
- #include "confdefs.h"
-
- int main() {
-@@ -6086,7 +10011,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:6090: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:10015: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_c_const=yes
- else
-@@ -6109,12 +10034,12 @@
-
- # Checks for library functions.
- echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
--echo "configure:6113: checking return type of signal handlers" >&5
-+echo "configure:10038: checking return type of signal handlers" >&5
- if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 6118 "configure"
-+#line 10043 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #include <signal.h>
-@@ -6131,7 +10056,7 @@
- int i;
- ; return 0; }
- EOF
--if { (eval echo configure:6135: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:10060: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- ac_cv_type_signal=void
- else
-@@ -6153,17 +10078,17 @@
- do
- ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
- echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:6157: checking for $ac_hdr" >&5
-+echo "configure:10082: checking for $ac_hdr" >&5
- if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 6162 "configure"
-+#line 10087 "configure"
- #include "confdefs.h"
- #include <$ac_hdr>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:6167: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:10092: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -6192,12 +10117,12 @@
- for ac_func in getpagesize
- do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:6196: checking for $ac_func" >&5
-+echo "configure:10121: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 6201 "configure"
-+#line 10126 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -6220,7 +10145,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:6224: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:10149: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -6245,7 +10170,7 @@
- done
-
- echo $ac_n "checking for working mmap""... $ac_c" 1>&6
--echo "configure:6249: checking for working mmap" >&5
-+echo "configure:10174: checking for working mmap" >&5
- if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
-@@ -6253,7 +10178,7 @@
- ac_cv_func_mmap_fixed_mapped=no
- else
- cat > conftest.$ac_ext <<EOF
--#line 6257 "configure"
-+#line 10182 "configure"
- #include "confdefs.h"
-
- /* Thanks to Mike Haertel and Jim Avera for this test.
-@@ -6393,7 +10318,7 @@
- }
-
- EOF
--if { (eval echo configure:6397: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-+if { (eval echo configure:10322: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
- then
- ac_cv_func_mmap_fixed_mapped=yes
- else
-@@ -6419,12 +10344,12 @@
- for ac_func in getresuid
- do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:6423: checking for $ac_func" >&5
-+echo "configure:10348: checking for $ac_func" >&5
- if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 6428 "configure"
-+#line 10353 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-@@ -6447,7 +10372,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:6451: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:10376: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
- else
-@@ -6472,12 +10397,12 @@
- done
-
- echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
--echo "configure:6476: checking for uid_t in sys/types.h" >&5
-+echo "configure:10401: checking for uid_t in sys/types.h" >&5
- if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 6481 "configure"
-+#line 10406 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- EOF
-@@ -6508,16 +10433,16 @@
-
- # Check if <sys/select.h> needs to be included for fd_set
- echo $ac_n "checking for fd_set""... $ac_c" 1>&6
--echo "configure:6512: checking for fd_set" >&5
-+echo "configure:10437: checking for fd_set" >&5
- cat > conftest.$ac_ext <<EOF
--#line 6514 "configure"
-+#line 10439 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int main() {
- fd_set readMask, writeMask;
- ; return 0; }
- EOF
--if { (eval echo configure:6521: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:10446: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- gtk_ok=yes
- else
-@@ -6531,7 +10456,7 @@
- echo "$ac_t""yes, found in sys/types.h" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 6535 "configure"
-+#line 10460 "configure"
- #include "confdefs.h"
- #include <sys/select.h>
- EOF
-@@ -6560,14 +10485,14 @@
- # Duplicate `widechar' tests from `glib'.
- # Check for wchar.h
- echo $ac_n "checking for wchar.h""... $ac_c" 1>&6
--echo "configure:6564: checking for wchar.h" >&5
-+echo "configure:10489: checking for wchar.h" >&5
- cat > conftest.$ac_ext <<EOF
--#line 6566 "configure"
-+#line 10491 "configure"
- #include "confdefs.h"
- #include <wchar.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:6571: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:10496: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -6590,14 +10515,14 @@
-
- # Check for wctype.h (for iswalnum)
- echo $ac_n "checking for wctype.h""... $ac_c" 1>&6
--echo "configure:6594: checking for wctype.h" >&5
-+echo "configure:10519: checking for wctype.h" >&5
- cat > conftest.$ac_ext <<EOF
--#line 6596 "configure"
-+#line 10521 "configure"
- #include "confdefs.h"
- #include <wctype.h>
- EOF
- ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:6601: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-+{ (eval echo configure:10526: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
- ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
- if test -z "$ac_err"; then
- rm -rf conftest*
-@@ -6621,12 +10546,12 @@
- # in Solaris 2.5, `iswalnum' is in -lw
- GDK_WLIBS=
- echo $ac_n "checking for iswalnum""... $ac_c" 1>&6
--echo "configure:6625: checking for iswalnum" >&5
-+echo "configure:10550: checking for iswalnum" >&5
- if eval "test \"`echo '$''{'ac_cv_func_iswalnum'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
- else
- cat > conftest.$ac_ext <<EOF
--#line 6630 "configure"
-+#line 10555 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char iswalnum(); below. */
-@@ -6649,7 +10574,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:6653: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:10578: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_iswalnum=yes"
- else
-@@ -6667,7 +10592,7 @@
- else
- echo "$ac_t""no" 1>&6
- echo $ac_n "checking for iswalnum in -lw""... $ac_c" 1>&6
--echo "configure:6671: checking for iswalnum in -lw" >&5
-+echo "configure:10596: checking for iswalnum in -lw" >&5
- ac_lib_var=`echo w'_'iswalnum | sed 'y%./+-%__p_%'`
- if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-@@ -6675,7 +10600,7 @@
- ac_save_LIBS="$LIBS"
- LIBS="-lw $LIBS"
- cat > conftest.$ac_ext <<EOF
--#line 6679 "configure"
-+#line 10604 "configure"
- #include "confdefs.h"
- /* Override any gcc2 internal prototype to avoid an error. */
- /* We use char because int might match the return type of a gcc2
-@@ -6686,7 +10611,7 @@
- iswalnum()
- ; return 0; }
- EOF
--if { (eval echo configure:6690: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:10615: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
- else
-@@ -6713,9 +10638,9 @@
- oLIBS="$LIBS"
- LIBS="$LIBS $GDK_WLIBS"
- echo $ac_n "checking if iswalnum() and friends are properly defined""... $ac_c" 1>&6
--echo "configure:6717: checking if iswalnum() and friends are properly defined" >&5
-+echo "configure:10642: checking if iswalnum() and friends are properly defined" >&5
- cat > conftest.$ac_ext <<EOF
--#line 6719 "configure"
-+#line 10644 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- int main() {
-@@ -6735,7 +10660,7 @@
-
- ; return 0; }
- EOF
--if { (eval echo configure:6739: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-+if { (eval echo configure:10664: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- gtk_ok=yes
- else
-@@ -6937,9 +10862,14 @@
- s%@build_cpu@%$build_cpu%g
- s%@build_vendor@%$build_vendor%g
- s%@build_os@%$build_os%g
--s%@RANLIB@%$RANLIB%g
- s%@CC@%$CC%g
- s%@LN_S@%$LN_S%g
-+s%@OBJEXT@%$OBJEXT%g
-+s%@EXEEXT@%$EXEEXT%g
-+s%@ECHO@%$ECHO%g
-+s%@RANLIB@%$RANLIB%g
-+s%@STRIP@%$STRIP%g
-+s%@CPP@%$CPP%g
- s%@LIBTOOL@%$LIBTOOL%g
- s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g
- s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g
-@@ -6951,7 +10881,6 @@
- s%@STRIP_DUMMY@%$STRIP_DUMMY%g
- s%@STRIP_BEGIN@%$STRIP_BEGIN%g
- s%@STRIP_END@%$STRIP_END%g
--s%@CPP@%$CPP%g
- s%@ALLOCA@%$ALLOCA%g
- s%@USE_NLS@%$USE_NLS%g
- s%@MSGFMT@%$MSGFMT%g
---- gtk+1.2-1.2.10.orig/configure.in
-+++ gtk+1.2-1.2.10/configure.in
-@@ -1,5 +1,7 @@
- # Process this file with autoconf to produce a configure script.
-+
- AC_INIT(gdk/gdktypes.h)
-+AC_PREREQ(2.13)
-
- # In the following, there are a the following variants
- # of GLib cflags and libs variables
-@@ -192,6 +194,15 @@
- gtklocaledir='${prefix}/${DATADIRNAME}/locale'
- AC_SUBST(gtklocaledir)
-
-+dnl Check for nl_langinfo and CODESET
-+AC_MSG_CHECKING([for nl_langinfo (CODESET)])
-+AC_TRY_COMPILE([#include <langinfo.h>],
-+ [char *codeset = nl_langinfo (CODESET);],
-+ AC_DEFINE(HAVE_CODESET,1,[Have nl_langinfo (CODESET)])
-+ have_codeset=yes,
-+ have_codeset=no)
-+AC_MSG_RESULT($have_codeset)
-+
- dnl The DU4 header files don't provide library prototypes unless
- dnl -std1 is given to the native cc.
- AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
---- gtk+1.2-1.2.10.orig/ltmain.sh
-+++ gtk+1.2-1.2.10/ltmain.sh
-@@ -1,7 +1,8 @@
- # ltmain.sh - Provide generalized library-building support services.
--# NOTE: Changing this file will not affect anything until you rerun ltconfig.
-+# NOTE: Changing this file will not affect anything until you rerun configure.
- #
--# Copyright (C) 1996-1999 Free Software Foundation, Inc.
-+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
-+# Free Software Foundation, Inc.
- # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
- #
- # This program is free software; you can redistribute it and/or modify
-@@ -48,14 +49,14 @@
- fi
-
- # The name of this program.
--progname=`$echo "$0" | sed 's%^.*/%%'`
-+progname=`$echo "$0" | ${SED} 's%^.*/%%'`
- modename="$progname"
-
- # Constants.
- PROGRAM=ltmain.sh
- PACKAGE=libtool
--VERSION=1.3.4
--TIMESTAMP=" (1.385.2.196 1999/12/07 21:47:57)"
-+VERSION=1.4.3
-+TIMESTAMP=" (1.922.2.111 2002/10/23 02:54:36)"
-
- default_mode=
- help="Try \`$progname --help' for more information."
-@@ -66,10 +67,19 @@
-
- # Sed substitution that helps us do robust quoting. It backslashifies
- # metacharacters that are still active within double-quoted strings.
--Xsed='sed -e 1s/^X//'
-+Xsed="${SED}"' -e 1s/^X//'
- sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
--SP2NL='tr \040 \012'
--NL2SP='tr \015\012 \040\040'
-+# test EBCDIC or ASCII
-+case `echo A|od -x` in
-+ *[Cc]1*) # EBCDIC based system
-+ SP2NL="tr '\100' '\n'"
-+ NL2SP="tr '\r\n' '\100\100'"
-+ ;;
-+ *) # Assume ASCII based system
-+ SP2NL="tr '\040' '\012'"
-+ NL2SP="tr '\015\012' '\040\040'"
-+ ;;
-+esac
-
- # NLS nuisances.
- # Only set LANG and LC_ALL to C if already set.
-@@ -83,11 +93,8 @@
- save_LANG="$LANG"; LANG=C; export LANG
- fi
-
--if test "$LTCONFIG_VERSION" != "$VERSION"; then
-- echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
-- echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
-- exit 1
--fi
-+# Make sure IFS has a sensible default
-+: ${IFS=" "}
-
- if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
- echo "$modename: not configured to build any kind of library" 1>&2
-@@ -113,16 +120,16 @@
- arg="$1"
- shift
-
-- case "$arg" in
-+ case $arg in
- -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;;
- *) optarg= ;;
- esac
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
-- case "$prev" in
-+ case $prev in
- execute_dlfiles)
-- eval "$prev=\"\$$prev \$arg\""
-+ execute_dlfiles="$execute_dlfiles $arg"
- ;;
- *)
- eval "$prev=\$arg"
-@@ -135,7 +142,7 @@
- fi
-
- # Have we seen a non-optional argument yet?
-- case "$arg" in
-+ case $arg in
- --help)
- show_help=yes
- ;;
-@@ -146,7 +153,7 @@
- ;;
-
- --config)
-- sed -e '1,/^### BEGIN LIBTOOL CONFIG/d' -e '/^### END LIBTOOL CONFIG/,$d' $0
-+ ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
- exit 0
- ;;
-
-@@ -179,6 +186,8 @@
- --mode) prevopt="--mode" prev=mode ;;
- --mode=*) mode="$optarg" ;;
-
-+ --preserve-dup-deps) duplicate_deps="yes" ;;
-+
- --quiet | --silent)
- show=:
- ;;
-@@ -207,16 +216,21 @@
- exit 1
- fi
-
-+# If this variable is set in any of the actions, the command in it
-+# will be execed at the end. This prevents here-documents from being
-+# left over by shells.
-+exec_cmd=
-+
- if test -z "$show_help"; then
-
- # Infer the operation mode.
- if test -z "$mode"; then
-- case "$nonopt" in
-- *cc | *++ | gcc* | *-gcc*)
-+ case $nonopt in
-+ *cc | *++ | gcc* | *-gcc* | g++* | xlc*)
- mode=link
- for arg
- do
-- case "$arg" in
-+ case $arg in
- -c)
- mode=compile
- break
-@@ -261,12 +275,13 @@
- help="Try \`$modename --help --mode=$mode' for more information."
-
- # These modes are in order of execution frequency so that they run quickly.
-- case "$mode" in
-+ case $mode in
- # libtool compile mode
- compile)
- modename="$modename: compile"
- # Get the compilation command and the source file.
- base_compile=
-+ prev=
- lastarg=
- srcfile="$nonopt"
- suppress_output=
-@@ -274,8 +289,34 @@
- user_target=no
- for arg
- do
-+ case $prev in
-+ "") ;;
-+ xcompiler)
-+ # Aesthetically quote the previous argument.
-+ prev=
-+ lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-+
-+ case $arg in
-+ # Double-quote args containing other shell metacharacters.
-+ # Many Bourne shells cannot handle close brackets correctly
-+ # in scan sets, so we specify it separately.
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+
-+ # Add the previous argument to base_compile.
-+ if test -z "$base_compile"; then
-+ base_compile="$lastarg"
-+ else
-+ base_compile="$base_compile $lastarg"
-+ fi
-+ continue
-+ ;;
-+ esac
-+
- # Accept any command-line options.
-- case "$arg" in
-+ case $arg in
- -o)
- if test "$user_target" != "no"; then
- $echo "$modename: you cannot specify \`-o' more than once" 1>&2
-@@ -288,9 +329,53 @@
- build_old_libs=yes
- continue
- ;;
-+
-+ -prefer-pic)
-+ pic_mode=yes
-+ continue
-+ ;;
-+
-+ -prefer-non-pic)
-+ pic_mode=no
-+ continue
-+ ;;
-+
-+ -Xcompiler)
-+ prev=xcompiler
-+ continue
-+ ;;
-+
-+ -Wc,*)
-+ args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
-+ lastarg=
-+ save_ifs="$IFS"; IFS=','
-+ for arg in $args; do
-+ IFS="$save_ifs"
-+
-+ # Double-quote args containing other shell metacharacters.
-+ # Many Bourne shells cannot handle close brackets correctly
-+ # in scan sets, so we specify it separately.
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ lastarg="$lastarg $arg"
-+ done
-+ IFS="$save_ifs"
-+ lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"`
-+
-+ # Add the arguments to base_compile.
-+ if test -z "$base_compile"; then
-+ base_compile="$lastarg"
-+ else
-+ base_compile="$base_compile $lastarg"
-+ fi
-+ continue
-+ ;;
- esac
-
-- case "$user_target" in
-+ case $user_target in
- next)
- # The next one is the -o target name
- user_target=yes
-@@ -316,10 +401,10 @@
- lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"`
-
- # Double-quote args containing other shell metacharacters.
-- # Many Bourne shells cannot handle close brackets correctly in scan
-- # sets, so we specify it separately.
-- case "$lastarg" in
-- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ # Many Bourne shells cannot handle close brackets correctly
-+ # in scan sets, so we specify it separately.
-+ case $lastarg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- lastarg="\"$lastarg\""
- ;;
- esac
-@@ -332,7 +417,7 @@
- fi
- done
-
-- case "$user_target" in
-+ case $user_target in
- set)
- ;;
- no)
-@@ -348,7 +433,7 @@
- # Recognize several different file suffixes.
- # If the user specifies -o file.o, it is replaced with file.lo
- xform='[cCFSfmso]'
-- case "$libobj" in
-+ case $libobj in
- *.ada) xform=ada ;;
- *.adb) xform=adb ;;
- *.ads) xform=ads ;;
-@@ -363,7 +448,7 @@
-
- libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
-
-- case "$libobj" in
-+ case $libobj in
- *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
- *)
- $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
-@@ -387,10 +472,21 @@
- $run $rm $removelist
- trap "$run $rm $removelist; exit 1" 1 2 15
-
-+ # On Cygwin there's no "real" PIC flag so we must build both object types
-+ case $host_os in
-+ cygwin* | mingw* | pw32* | os2*)
-+ pic_mode=default
-+ ;;
-+ esac
-+ if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
-+ # non-PIC code in shared libraries is not supported
-+ pic_mode=default
-+ fi
-+
- # Calculate the filename of the output object if compiler does
- # not support -o with -c
- if test "$compiler_c_o" = no; then
-- output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\..*$%%'`.${objext}
-+ output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
- lockfile="$output_obj.lock"
- removelist="$removelist $output_obj $lockfile"
- trap "$run $rm $removelist; exit 1" 1 2 15
-@@ -402,7 +498,7 @@
- # Lock this critical section if it is needed
- # We use this script file to make the link, it avoids creating a new file
- if test "$need_locks" = yes; then
-- until ln "$0" "$lockfile" 2>/dev/null; do
-+ until $run ln "$0" "$lockfile" 2>/dev/null; do
- $show "Waiting for $lockfile to be removed"
- sleep 2
- done
-@@ -434,8 +530,13 @@
- # Without this assignment, base_compile gets emptied.
- fbsd_hideous_sh_bug=$base_compile
-
-- # All platforms use -DPIC, to notify preprocessed assembler code.
-- command="$base_compile $srcfile $pic_flag -DPIC"
-+ if test "$pic_mode" != no; then
-+ # All platforms use -DPIC, to notify preprocessed assembler code.
-+ command="$base_compile $srcfile $pic_flag -DPIC"
-+ else
-+ # Don't build PIC code
-+ command="$base_compile $srcfile"
-+ fi
- if test "$build_old_libs" = yes; then
- lo_libobj="$libobj"
- dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
-@@ -506,7 +607,8 @@
- fi
-
- # If we have no pic_flag, then copy the object into place and finish.
-- if test -z "$pic_flag" && test "$build_old_libs" = yes; then
-+ if (test -z "$pic_flag" || test "$pic_mode" != default) &&
-+ test "$build_old_libs" = yes; then
- # Rename the .lo from within objdir to obj
- if test -f $obj; then
- $show $rm $obj
-@@ -532,6 +634,10 @@
- # Now arrange that obj and lo_libobj become the same file
- $show "(cd $xdir && $LN_S $baseobj $libobj)"
- if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
-+ # Unlock the critical section if it was locked
-+ if test "$need_locks" != no; then
-+ $run $rm "$lockfile"
-+ fi
- exit 0
- else
- error=$?
-@@ -546,7 +652,13 @@
-
- # Only build a position-dependent object if we build old libraries.
- if test "$build_old_libs" = yes; then
-- command="$base_compile $srcfile"
-+ if test "$pic_mode" != yes; then
-+ # Don't build PIC code
-+ command="$base_compile $srcfile"
-+ else
-+ # All platforms use -DPIC, to notify preprocessed assembler code.
-+ command="$base_compile $srcfile $pic_flag -DPIC"
-+ fi
- if test "$compiler_c_o" = yes; then
- command="$command -o $obj"
- output_obj="$obj"
-@@ -612,17 +724,17 @@
-
- # Unlock the critical section if it was locked
- if test "$need_locks" != no; then
-- $rm "$lockfile"
-+ $run $rm "$lockfile"
- fi
-
- exit 0
- ;;
-
- # libtool link mode
-- link)
-+ link | relink)
- modename="$modename: link"
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2*)
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- # It is impossible to link a dll without this setting, and
- # we shouldn't force the makefile maintainer to figure out
- # which system we are compiling for in order to pass an extra
-@@ -635,179 +747,12 @@
- # -no-undefined on the libtool link line when we can be certain
- # that all symbols are satisfied, otherwise we get a static library.
- allow_undefined=yes
--
-- # This is a source program that is used to create dlls on Windows
-- # Don't remove nor modify the starting and closing comments
--# /* ltdll.c starts here */
--# #define WIN32_LEAN_AND_MEAN
--# #include <windows.h>
--# #undef WIN32_LEAN_AND_MEAN
--# #include <stdio.h>
--#
--# #ifndef __CYGWIN__
--# # ifdef __CYGWIN32__
--# # define __CYGWIN__ __CYGWIN32__
--# # endif
--# #endif
--#
--# #ifdef __cplusplus
--# extern "C" {
--# #endif
--# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
--# #ifdef __cplusplus
--# }
--# #endif
--#
--# #ifdef __CYGWIN__
--# #include <cygwin/cygwin_dll.h>
--# DECLARE_CYGWIN_DLL( DllMain );
--# #endif
--# HINSTANCE __hDllInstance_base;
--#
--# BOOL APIENTRY
--# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
--# {
--# __hDllInstance_base = hInst;
--# return TRUE;
--# }
--# /* ltdll.c ends here */
-- # This is a source program that is used to create import libraries
-- # on Windows for dlls which lack them. Don't remove nor modify the
-- # starting and closing comments
--# /* impgen.c starts here */
--# /* Copyright (C) 1999 Free Software Foundation, Inc.
--#
--# This file is part of GNU libtool.
--#
--# This program is free software; you can redistribute it and/or modify
--# it under the terms of the GNU General Public License as published by
--# the Free Software Foundation; either version 2 of the License, or
--# (at your option) any later version.
--#
--# This program is distributed in the hope that it will be useful,
--# but WITHOUT ANY WARRANTY; without even the implied warranty of
--# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--# GNU General Public License for more details.
--#
--# You should have received a copy of the GNU General Public License
--# along with this program; if not, write to the Free Software
--# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
--# */
--#
--# #include <stdio.h> /* for printf() */
--# #include <unistd.h> /* for open(), lseek(), read() */
--# #include <fcntl.h> /* for O_RDONLY, O_BINARY */
--# #include <string.h> /* for strdup() */
--#
--# static unsigned int
--# pe_get16 (fd, offset)
--# int fd;
--# int offset;
--# {
--# unsigned char b[2];
--# lseek (fd, offset, SEEK_SET);
--# read (fd, b, 2);
--# return b[0] + (b[1]<<8);
--# }
--#
--# static unsigned int
--# pe_get32 (fd, offset)
--# int fd;
--# int offset;
--# {
--# unsigned char b[4];
--# lseek (fd, offset, SEEK_SET);
--# read (fd, b, 4);
--# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
--# }
--#
--# static unsigned int
--# pe_as32 (ptr)
--# void *ptr;
--# {
--# unsigned char *b = ptr;
--# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
--# }
--#
--# int
--# main (argc, argv)
--# int argc;
--# char *argv[];
--# {
--# int dll;
--# unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
--# unsigned long export_rva, export_size, nsections, secptr, expptr;
--# unsigned long name_rvas, nexp;
--# unsigned char *expdata, *erva;
--# char *filename, *dll_name;
--#
--# filename = argv[1];
--#
--# dll = open(filename, O_RDONLY|O_BINARY);
--# if (!dll)
--# return 1;
--#
--# dll_name = filename;
--#
--# for (i=0; filename[i]; i++)
--# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
--# dll_name = filename + i +1;
--#
--# pe_header_offset = pe_get32 (dll, 0x3c);
--# opthdr_ofs = pe_header_offset + 4 + 20;
--# num_entries = pe_get32 (dll, opthdr_ofs + 92);
--#
--# if (num_entries < 1) /* no exports */
--# return 1;
--#
--# export_rva = pe_get32 (dll, opthdr_ofs + 96);
--# export_size = pe_get32 (dll, opthdr_ofs + 100);
--# nsections = pe_get16 (dll, pe_header_offset + 4 +2);
--# secptr = (pe_header_offset + 4 + 20 +
--# pe_get16 (dll, pe_header_offset + 4 + 16));
--#
--# expptr = 0;
--# for (i = 0; i < nsections; i++)
--# {
--# char sname[8];
--# unsigned long secptr1 = secptr + 40 * i;
--# unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
--# unsigned long vsize = pe_get32 (dll, secptr1 + 16);
--# unsigned long fptr = pe_get32 (dll, secptr1 + 20);
--# lseek(dll, secptr1, SEEK_SET);
--# read(dll, sname, 8);
--# if (vaddr <= export_rva && vaddr+vsize > export_rva)
--# {
--# expptr = fptr + (export_rva - vaddr);
--# if (export_rva + export_size > vaddr + vsize)
--# export_size = vsize - (export_rva - vaddr);
--# break;
--# }
--# }
--#
--# expdata = (unsigned char*)malloc(export_size);
--# lseek (dll, expptr, SEEK_SET);
--# read (dll, expdata, export_size);
--# erva = expdata - export_rva;
--#
--# nexp = pe_as32 (expdata+24);
--# name_rvas = pe_as32 (expdata+32);
--#
--# printf ("EXPORTS\n");
--# for (i = 0; i<nexp; i++)
--# {
--# unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
--# printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
--# }
--#
--# return 0;
--# }
--# /* impgen.c ends here */
- ;;
- *)
- allow_undefined=yes
- ;;
- esac
-+ libtool_args="$nonopt"
- compile_command="$nonopt"
- finalize_command="$nonopt"
-
-@@ -818,18 +763,13 @@
- convenience=
- old_convenience=
- deplibs=
-- linkopts=
-+ old_deplibs=
-+ compiler_flags=
-+ linker_flags=
-+ dllsearchpath=
-+ lib_search_path=`pwd`
-+ inst_prefix_dir=
-
-- if test -n "$shlibpath_var"; then
-- # get the directories listed in $shlibpath_var
-- eval lib_search_path=\`\$echo \"X \${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
-- else
-- lib_search_path=
-- fi
-- # now prepend the system-specific ones
-- eval lib_search_path=\"$sys_lib_search_path_spec\$lib_search_path\"
-- eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
--
- avoid_version=no
- dlfiles=
- dlprefiles=
-@@ -839,9 +779,9 @@
- export_symbols_regex=
- generated=
- libobjs=
-- link_against_libtool_libs=
- ltlibs=
- module=no
-+ no_install=no
- objs=
- prefer_static_libs=no
- preload=no
-@@ -858,7 +798,7 @@
- # We need to know -static, to get the right output filenames.
- for arg
- do
-- case "$arg" in
-+ case $arg in
- -all-static | -static)
- if test "X$arg" = "X-all-static"; then
- if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
-@@ -887,17 +827,24 @@
- while test $# -gt 0; do
- arg="$1"
- shift
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test
-+ ;;
-+ *) qarg=$arg ;;
-+ esac
-+ libtool_args="$libtool_args $qarg"
-
- # If the previous option needs an argument, assign it.
- if test -n "$prev"; then
-- case "$prev" in
-+ case $prev in
- output)
- compile_command="$compile_command @OUTPUT@"
- finalize_command="$finalize_command @OUTPUT@"
- ;;
- esac
-
-- case "$prev" in
-+ case $prev in
- dlfiles|dlprefiles)
- if test "$preload" = no; then
- # Add the symbol object into the linking commands.
-@@ -905,7 +852,7 @@
- finalize_command="$finalize_command @SYMFILE@"
- preload=yes
- fi
-- case "$arg" in
-+ case $arg in
- *.la | *.lo) ;; # We handle these cases below.
- force)
- if test "$dlself" = no; then
-@@ -934,6 +881,7 @@
- dlprefiles="$dlprefiles $arg"
- fi
- prev=
-+ continue
- ;;
- esac
- ;;
-@@ -951,6 +899,11 @@
- prev=
- continue
- ;;
-+ inst_prefix)
-+ inst_prefix_dir="$arg"
-+ prev=
-+ continue
-+ ;;
- release)
- release="-$arg"
- prev=
-@@ -958,7 +911,7 @@
- ;;
- rpath | xrpath)
- # We need an absolute path.
-- case "$arg" in
-+ case $arg in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
-@@ -979,17 +932,32 @@
- prev=
- continue
- ;;
-+ xcompiler)
-+ compiler_flags="$compiler_flags $qarg"
-+ prev=
-+ compile_command="$compile_command $qarg"
-+ finalize_command="$finalize_command $qarg"
-+ continue
-+ ;;
-+ xlinker)
-+ linker_flags="$linker_flags $qarg"
-+ compiler_flags="$compiler_flags $wl$qarg"
-+ prev=
-+ compile_command="$compile_command $wl$qarg"
-+ finalize_command="$finalize_command $wl$qarg"
-+ continue
-+ ;;
- *)
- eval "$prev=\"\$arg\""
- prev=
- continue
- ;;
- esac
-- fi
-+ fi # test -n $prev
-
- prevarg="$arg"
-
-- case "$arg" in
-+ case $arg in
- -all-static)
- if test -n "$link_static_flag"; then
- compile_command="$compile_command $link_static_flag"
-@@ -1026,7 +994,7 @@
-
- -export-symbols | -export-symbols-regex)
- if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
-- $echo "$modename: not more than one -exported-symbols argument allowed"
-+ $echo "$modename: more than one -exported-symbols argument is not allowed"
- exit 1
- fi
- if test "X$arg" = "X-export-symbols"; then
-@@ -1037,58 +1005,81 @@
- continue
- ;;
-
-+ -inst-prefix-dir)
-+ prev=inst_prefix
-+ continue
-+ ;;
-+
-+ # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
-+ # so, if we see these flags be careful not to treat them like -L
-+ -L[A-Z][A-Z]*:*)
-+ case $with_gcc/$host in
-+ no/*-*-irix* | no/*-*-nonstopux*)
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ ;;
-+ esac
-+ continue
-+ ;;
-+
- -L*)
- dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
- # We need an absolute path.
-- case "$dir" in
-+ case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- absdir=`cd "$dir" && pwd`
- if test -z "$absdir"; then
-- $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
-- $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
-- absdir="$dir"
-+ $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
-+ exit 1
- fi
- dir="$absdir"
- ;;
- esac
-- case " $deplibs " in
-- *" $arg "*) ;;
-- *) deplibs="$deplibs $arg";;
-- esac
-- case " $lib_search_path " in
-- *" $dir "*) ;;
-- *) lib_search_path="$lib_search_path $dir";;
-+ case "$deplibs " in
-+ *" -L$dir "*) ;;
-+ *)
-+ deplibs="$deplibs -L$dir"
-+ lib_search_path="$lib_search_path $dir"
-+ ;;
- esac
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2*)
-- dllsearchdir=`cd "$dir" && pwd || echo "$dir"`
-- case ":$dllsearchpath:" in
-- ::) dllsearchpath="$dllsearchdir";;
-- *":$dllsearchdir:"*) ;;
-- *) dllsearchpath="$dllsearchpath:$dllsearchdir";;
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ case :$dllsearchpath: in
-+ *":$dir:"*) ;;
-+ *) dllsearchpath="$dllsearchpath:$dir";;
- esac
- ;;
- esac
-+ continue
- ;;
-
- -l*)
-- if test "$arg" = "-lc"; then
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
-- # These systems don't actually have c library (as such)
-+ if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
-+ case $host in
-+ *-*-cygwin* | *-*-pw32* | *-*-beos*)
-+ # These systems don't actually have a C or math library (as such)
- continue
- ;;
-+ *-*-mingw* | *-*-os2*)
-+ # These systems don't actually have a C library (as such)
-+ test "X$arg" = "X-lc" && continue
-+ ;;
-+ *-*-openbsd* | *-*-freebsd*)
-+ # Do not include libc due to us having libc/libc_r.
-+ test "X$arg" = "X-lc" && continue
-+ ;;
- esac
-- elif test "$arg" = "-lm"; then
-- case "$host" in
-- *-*-cygwin* | *-*-beos*)
-- # These systems don't actually have math library (as such)
-+ elif test "X$arg" = "X-lc_r"; then
-+ case $host in
-+ *-*-openbsd* | *-*-freebsd*)
-+ # Do not include libc_r directly, use -pthread flag.
- continue
- ;;
- esac
- fi
- deplibs="$deplibs $arg"
-+ continue
- ;;
-
- -module)
-@@ -1096,6 +1087,25 @@
- continue
- ;;
-
-+ -no-fast-install)
-+ fast_install=no
-+ continue
-+ ;;
-+
-+ -no-install)
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ # The PATH hackery in wrapper scripts is required on Windows
-+ # in order for the loader to find any dlls it needs.
-+ $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
-+ $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
-+ fast_install=no
-+ ;;
-+ *) no_install=yes ;;
-+ esac
-+ continue
-+ ;;
-+
- -no-undefined)
- allow_undefined=no
- continue
-@@ -1121,7 +1131,7 @@
- -R*)
- dir=`$echo "X$arg" | $Xsed -e 's/^-R//'`
- # We need an absolute path.
-- case "$dir" in
-+ case $dir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
-@@ -1136,11 +1146,11 @@
- ;;
-
- -static)
-- # If we have no pic_flag, then this is the same as -all-static.
-- if test -z "$pic_flag" && test -n "$link_static_flag"; then
-- compile_command="$compile_command $link_static_flag"
-- finalize_command="$finalize_command $link_static_flag"
-- fi
-+ # The effects of -static are defined in a previous loop.
-+ # We used to do the same as -all-static on platforms that
-+ # didn't have a PIC flag, but the assumption that the effects
-+ # would be equivalent was wrong. It would break on at least
-+ # Digital Unix and AIX.
- continue
- ;;
-
-@@ -1154,28 +1164,71 @@
- continue
- ;;
-
-+ -Wc,*)
-+ args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'`
-+ arg=
-+ save_ifs="$IFS"; IFS=','
-+ for flag in $args; do
-+ IFS="$save_ifs"
-+ case $flag in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ flag="\"$flag\""
-+ ;;
-+ esac
-+ arg="$arg $wl$flag"
-+ compiler_flags="$compiler_flags $flag"
-+ done
-+ IFS="$save_ifs"
-+ arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
-+ ;;
-+
-+ -Wl,*)
-+ args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
-+ arg=
-+ save_ifs="$IFS"; IFS=','
-+ for flag in $args; do
-+ IFS="$save_ifs"
-+ case $flag in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ flag="\"$flag\""
-+ ;;
-+ esac
-+ arg="$arg $wl$flag"
-+ compiler_flags="$compiler_flags $wl$flag"
-+ linker_flags="$linker_flags $flag"
-+ done
-+ IFS="$save_ifs"
-+ arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
-+ ;;
-+
-+ -Xcompiler)
-+ prev=xcompiler
-+ continue
-+ ;;
-+
-+ -Xlinker)
-+ prev=xlinker
-+ continue
-+ ;;
-+
- # Some other compiler flag.
- -* | +*)
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
- ;;
-
-- *.o | *.obj | *.a | *.lib)
-- # A standard object.
-- objs="$objs $arg"
-- ;;
--
-- *.lo)
-- # A library object.
-+ *.lo | *.$objext)
-+ # A library or standard object.
- if test "$prev" = dlfiles; then
-- dlfiles="$dlfiles $arg"
-- if test "$build_libtool_libs" = yes && test "$dlopen" = yes; then
-+ # This file was specified with -dlopen.
-+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
-+ dlfiles="$dlfiles $arg"
- prev=
- continue
- else
-@@ -1188,357 +1241,917 @@
- # Preload the old-style object.
- dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"`
- prev=
-+ else
-+ case $arg in
-+ *.lo) libobjs="$libobjs $arg" ;;
-+ *) objs="$objs $arg" ;;
-+ esac
- fi
-- libobjs="$libobjs $arg"
-+ ;;
-+
-+ *.$libext)
-+ # An archive.
-+ deplibs="$deplibs $arg"
-+ old_deplibs="$old_deplibs $arg"
-+ continue
- ;;
-
- *.la)
- # A libtool-controlled library.
-
-- dlname=
-- libdir=
-- library_names=
-- old_library=
--
-- # Check to see that this really is a libtool archive.
-- if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ if test "$prev" = dlfiles; then
-+ # This library was specified with -dlopen.
-+ dlfiles="$dlfiles $arg"
-+ prev=
-+ elif test "$prev" = dlprefiles; then
-+ # The library was specified with -dlpreopen.
-+ dlprefiles="$dlprefiles $arg"
-+ prev=
- else
-- $echo "$modename: \`$arg' is not a valid libtool archive" 1>&2
-- exit 1
-+ deplibs="$deplibs $arg"
- fi
-+ continue
-+ ;;
-
-- # If the library was installed with an old release of libtool,
-- # it will not redefine variable installed.
-- installed=yes
--
-- # Read the .la file
-- # If there is no directory component, then add one.
-- case "$arg" in
-- */* | *\\*) . $arg ;;
-- *) . ./$arg ;;
-+ # Some other compiler argument.
-+ *)
-+ # Unknown arguments in both finalize_command and compile_command need
-+ # to be aesthetically quoted because they are evaled later.
-+ arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
- esac
-+ ;;
-+ esac # arg
-
-- # Get the name of the library we link against.
-- linklib=
-- for l in $old_library $library_names; do
-- linklib="$l"
-- done
--
-- if test -z "$linklib"; then
-- $echo "$modename: cannot find name of link library for \`$arg'" 1>&2
-- exit 1
-- fi
--
-- # Find the relevant object directory and library name.
-- name=`$echo "X$arg" | $Xsed -e 's%^.*/%%' -e 's/\.la$//' -e 's/^lib//'`
--
-- if test "X$installed" = Xyes; then
-- dir="$libdir"
-- else
-- dir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
-- if test "X$dir" = "X$arg"; then
-- dir="$objdir"
-- else
-- dir="$dir/$objdir"
-- fi
-- fi
-+ # Now actually substitute the argument into the commands.
-+ if test -n "$arg"; then
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ fi
-+ done # argument parsing loop
-
-- if test -n "$dependency_libs"; then
-- # Extract -R and -L from dependency_libs
-- temp_deplibs=
-- for deplib in $dependency_libs; do
-- case "$deplib" in
-- -R*) temp_xrpath=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
-- case " $rpath $xrpath " in
-- *" $temp_xrpath "*) ;;
-- *) xrpath="$xrpath $temp_xrpath";;
-- esac;;
-- -L*) case "$compile_command $temp_deplibs " in
-- *" $deplib "*) ;;
-- *) temp_deplibs="$temp_deplibs $deplib";;
-- esac
-- temp_dir=`$echo "X$deplib" | $Xsed -e 's/^-L//'`
-- case " $lib_search_path " in
-- *" $temp_dir "*) ;;
-- *) lib_search_path="$lib_search_path $temp_dir";;
-- esac
-- ;;
-- *) temp_deplibs="$temp_deplibs $deplib";;
-- esac
-- done
-- dependency_libs="$temp_deplibs"
-- fi
-+ if test -n "$prev"; then
-+ $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-
-- if test -z "$libdir"; then
-- # It is a libtool convenience library, so add in its objects.
-- convenience="$convenience $dir/$old_library"
-- old_convenience="$old_convenience $dir/$old_library"
-- deplibs="$deplibs$dependency_libs"
-- compile_command="$compile_command $dir/$old_library$dependency_libs"
-- finalize_command="$finalize_command $dir/$old_library$dependency_libs"
-- continue
-- fi
-+ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
-+ eval arg=\"$export_dynamic_flag_spec\"
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ fi
-
-- # This library was specified with -dlopen.
-- if test "$prev" = dlfiles; then
-- dlfiles="$dlfiles $arg"
-- if test -z "$dlname" || test "$dlopen" != yes || test "$build_libtool_libs" = no; then
-- # If there is no dlname, no dlopen support or we're linking statically,
-- # we need to preload.
-- prev=dlprefiles
-- else
-- # We should not create a dependency on this library, but we
-- # may need any libraries it requires.
-- compile_command="$compile_command$dependency_libs"
-- finalize_command="$finalize_command$dependency_libs"
-- prev=
-- continue
-- fi
-- fi
-+ # calculate the name of the file, without its directory
-+ outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
-+ libobjs_save="$libobjs"
-
-- # The library was specified with -dlpreopen.
-- if test "$prev" = dlprefiles; then
-- # Prefer using a static library (so that no silly _DYNAMIC symbols
-- # are required to link).
-- if test -n "$old_library"; then
-- dlprefiles="$dlprefiles $dir/$old_library"
-- else
-- dlprefiles="$dlprefiles $dir/$linklib"
-- fi
-- prev=
-- fi
-+ if test -n "$shlibpath_var"; then
-+ # get the directories listed in $shlibpath_var
-+ eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
-+ else
-+ shlib_search_path=
-+ fi
-+ eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
-+ eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
-
-- if test -n "$library_names" &&
-- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
-- link_against_libtool_libs="$link_against_libtool_libs $arg"
-- if test -n "$shlibpath_var"; then
-- # Make sure the rpath contains only unique directories.
-- case "$temp_rpath " in
-- *" $dir "*) ;;
-- *) temp_rpath="$temp_rpath $dir" ;;
-- esac
-- fi
-+ output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
-+ if test "X$output_objdir" = "X$output"; then
-+ output_objdir="$objdir"
-+ else
-+ output_objdir="$output_objdir/$objdir"
-+ fi
-+ # Create the object directory.
-+ if test ! -d $output_objdir; then
-+ $show "$mkdir $output_objdir"
-+ $run $mkdir $output_objdir
-+ status=$?
-+ if test $status -ne 0 && test ! -d $output_objdir; then
-+ exit $status
-+ fi
-+ fi
-
-- # We need an absolute path.
-- case "$dir" in
-- [\\/] | [A-Za-z]:[\\/]*) absdir="$dir" ;;
-- *)
-- absdir=`cd "$dir" && pwd`
-- if test -z "$absdir"; then
-- $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
-- $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
-- absdir="$dir"
-- fi
-- ;;
-- esac
--
-- # This is the magic to use -rpath.
-- # Skip directories that are in the system default run-time
-- # search path, unless they have been requested with -R.
-- case " $sys_lib_dlsearch_path " in
-- *" $absdir "*) ;;
-- *)
-- case "$compile_rpath " in
-- *" $absdir "*) ;;
-- *) compile_rpath="$compile_rpath $absdir"
-- esac
-- ;;
-- esac
-+ # Determine the type of output
-+ case $output in
-+ "")
-+ $echo "$modename: you must specify an output file" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ ;;
-+ *.$libext) linkmode=oldlib ;;
-+ *.lo | *.$objext) linkmode=obj ;;
-+ *.la) linkmode=lib ;;
-+ *) linkmode=prog ;; # Anything else should be a program.
-+ esac
-
-- case " $sys_lib_dlsearch_path " in
-- *" $libdir "*) ;;
-+ specialdeplibs=
-+ libs=
-+ # Find all interdependent deplibs by searching for libraries
-+ # that are linked more than once (e.g. -la -lb -la)
-+ for deplib in $deplibs; do
-+ if test "X$duplicate_deps" = "Xyes" ; then
-+ case "$libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ fi
-+ libs="$libs $deplib"
-+ done
-+ deplibs=
-+ newdependency_libs=
-+ newlib_search_path=
-+ need_relink=no # whether we're linking any uninstalled libtool libraries
-+ notinst_deplibs= # not-installed libtool libraries
-+ notinst_path= # paths that contain not-installed libtool libraries
-+ case $linkmode in
-+ lib)
-+ passes="conv link"
-+ for file in $dlfiles $dlprefiles; do
-+ case $file in
-+ *.la) ;;
- *)
-- case "$finalize_rpath " in
-- *" $libdir "*) ;;
-- *) finalize_rpath="$finalize_rpath $libdir"
-- esac
-+ $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
-+ exit 1
- ;;
- esac
--
-- lib_linked=yes
-- case "$hardcode_action" in
-- immediate | unsupported)
-- if test "$hardcode_direct" = no; then
-- compile_command="$compile_command $dir/$linklib"
-- deplibs="$deplibs $dir/$linklib"
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2*)
-- dllsearchdir=`cd "$dir" && pwd || echo "$dir"`
-- if test -n "$dllsearchpath"; then
-- dllsearchpath="$dllsearchpath:$dllsearchdir"
-- else
-- dllsearchpath="$dllsearchdir"
-- fi
-- ;;
-- esac
-- elif test "$hardcode_minus_L" = no; then
-- case "$host" in
-- *-*-sunos*)
-- compile_shlibpath="$compile_shlibpath$dir:"
-- ;;
-- esac
-- case "$compile_command " in
-- *" -L$dir "*) ;;
-- *) compile_command="$compile_command -L$dir";;
-- esac
-- compile_command="$compile_command -l$name"
-- deplibs="$deplibs -L$dir -l$name"
-- elif test "$hardcode_shlibpath_var" = no; then
-- case ":$compile_shlibpath:" in
-- *":$dir:"*) ;;
-- *) compile_shlibpath="$compile_shlibpath$dir:";;
-- esac
-- compile_command="$compile_command -l$name"
-- deplibs="$deplibs -l$name"
-+ done
-+ ;;
-+ prog)
-+ compile_deplibs=
-+ finalize_deplibs=
-+ alldeplibs=no
-+ newdlfiles=
-+ newdlprefiles=
-+ passes="conv scan dlopen dlpreopen link"
-+ ;;
-+ *) passes="conv"
-+ ;;
-+ esac
-+ for pass in $passes; do
-+ if test $linkmode = prog; then
-+ # Determine which files to process
-+ case $pass in
-+ dlopen)
-+ libs="$dlfiles"
-+ save_deplibs="$deplibs" # Collect dlpreopened libraries
-+ deplibs=
-+ ;;
-+ dlpreopen) libs="$dlprefiles" ;;
-+ link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
-+ esac
-+ fi
-+ for deplib in $libs; do
-+ lib=
-+ found=no
-+ case $deplib in
-+ -l*)
-+ if test $linkmode = oldlib && test $linkmode = obj; then
-+ $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2
-+ continue
-+ fi
-+ if test $pass = conv; then
-+ deplibs="$deplib $deplibs"
-+ continue
-+ fi
-+ name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
-+ for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
-+ # Search the libtool library
-+ lib="$searchdir/lib${name}.la"
-+ if test -f "$lib"; then
-+ found=yes
-+ break
-+ fi
-+ done
-+ if test "$found" != yes; then
-+ # deplib doesn't seem to be a libtool library
-+ if test "$linkmode,$pass" = "prog,link"; then
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
- else
-- lib_linked=no
-+ deplibs="$deplib $deplibs"
-+ test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs"
- fi
-+ continue
-+ fi
-+ ;; # -l
-+ -L*)
-+ case $linkmode in
-+ lib)
-+ deplibs="$deplib $deplibs"
-+ test $pass = conv && continue
-+ newdependency_libs="$deplib $newdependency_libs"
-+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- ;;
--
-- relink)
-- if test "$hardcode_direct" = yes; then
-- compile_command="$compile_command $absdir/$linklib"
-- deplibs="$deplibs $absdir/$linklib"
-- elif test "$hardcode_minus_L" = yes; then
-- case "$compile_command " in
-- *" -L$absdir "*) ;;
-- *) compile_command="$compile_command -L$absdir";;
-- esac
-- compile_command="$compile_command -l$name"
-- deplibs="$deplibs -L$absdir -l$name"
-- elif test "$hardcode_shlibpath_var" = yes; then
-- case ":$compile_shlibpath:" in
-- *":$absdir:"*) ;;
-- *) compile_shlibpath="$compile_shlibpath$absdir:";;
-- esac
-- compile_command="$compile_command -l$name"
-- deplibs="$deplibs -l$name"
-+ prog)
-+ if test $pass = conv; then
-+ deplibs="$deplib $deplibs"
-+ continue
-+ fi
-+ if test $pass = scan; then
-+ deplibs="$deplib $deplibs"
-+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- else
-- lib_linked=no
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
- fi
- ;;
--
- *)
-- lib_linked=no
-+ $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2
- ;;
-- esac
-+ esac # linkmode
-+ continue
-+ ;; # -L
-+ -R*)
-+ if test $pass = link; then
-+ dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
-+ # Make sure the xrpath contains only unique directories.
-+ case "$xrpath " in
-+ *" $dir "*) ;;
-+ *) xrpath="$xrpath $dir" ;;
-+ esac
-+ fi
-+ deplibs="$deplib $deplibs"
-+ continue
-+ ;;
-+ *.la) lib="$deplib" ;;
-+ *.$libext)
-+ if test $pass = conv; then
-+ deplibs="$deplib $deplibs"
-+ continue
-+ fi
-+ case $linkmode in
-+ lib)
-+ if test "$deplibs_check_method" != pass_all; then
-+ echo
-+ echo "*** Warning: Trying to link with static lib archive $deplib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have"
-+ echo "*** because the file extensions .$libext of this argument makes me believe"
-+ echo "*** that it is just a static archive that I should not used here."
-+ else
-+ echo
-+ echo "*** Warning: Linking the shared library $output against the"
-+ echo "*** static library $deplib is not portable!"
-+ deplibs="$deplib $deplibs"
-+ fi
-+ continue
-+ ;;
-+ prog)
-+ if test $pass != link; then
-+ deplibs="$deplib $deplibs"
-+ else
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
-+ fi
-+ continue
-+ ;;
-+ esac # linkmode
-+ ;; # *.$libext
-+ *.lo | *.$objext)
-+ if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
-+ # If there is no dlopen support or we're linking statically,
-+ # we need to preload.
-+ newdlprefiles="$newdlprefiles $deplib"
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
-+ else
-+ newdlfiles="$newdlfiles $deplib"
-+ fi
-+ continue
-+ ;;
-+ %DEPLIBS%)
-+ alldeplibs=yes
-+ continue
-+ ;;
-+ esac # case $deplib
-+ if test $found = yes || test -f "$lib"; then :
-+ else
-+ $echo "$modename: cannot find the library \`$lib'" 1>&2
-+ exit 1
-+ fi
-+
-+ # Check to see that this really is a libtool archive.
-+ if (${SED} -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ else
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+
-+ ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
-+ test "X$ladir" = "X$lib" && ladir="."
-+
-+ dlname=
-+ dlopen=
-+ dlpreopen=
-+ libdir=
-+ library_names=
-+ old_library=
-+ # If the library was installed with an old release of libtool,
-+ # it will not redefine variable installed.
-+ installed=yes
-+
-+ # Read the .la file
-+ case $lib in
-+ */* | *\\*) . $lib ;;
-+ *) . ./$lib ;;
-+ esac
-+
-+ if test "$linkmode,$pass" = "lib,link" ||
-+ test "$linkmode,$pass" = "prog,scan" ||
-+ { test $linkmode = oldlib && test $linkmode = obj; }; then
-+ # Add dl[pre]opened files of deplib
-+ test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
-+ test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
-+ fi
-
-- if test "$lib_linked" != yes; then
-- $echo "$modename: configuration error: unsupported hardcode properties"
-+ if test $pass = conv; then
-+ # Only check for convenience libraries
-+ deplibs="$lib $deplibs"
-+ if test -z "$libdir"; then
-+ if test -z "$old_library"; then
-+ $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
-+ exit 1
-+ fi
-+ # It is a libtool convenience library, so add in its objects.
-+ convenience="$convenience $ladir/$objdir/$old_library"
-+ old_convenience="$old_convenience $ladir/$objdir/$old_library"
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ deplibs="$deplib $deplibs"
-+ if test "X$duplicate_deps" = "Xyes" ; then
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ fi
-+ tmp_libs="$tmp_libs $deplib"
-+ done
-+ elif test $linkmode != prog && test $linkmode != lib; then
-+ $echo "$modename: \`$lib' is not a convenience library" 1>&2
- exit 1
- fi
-+ continue
-+ fi # $pass = conv
-
-- # Finalize command for both is simple: just hardcode it.
-- if test "$hardcode_direct" = yes; then
-- finalize_command="$finalize_command $libdir/$linklib"
-- elif test "$hardcode_minus_L" = yes; then
-- case "$finalize_command " in
-- *" -L$libdir "*) ;;
-- *) finalize_command="$finalize_command -L$libdir";;
-- esac
-- finalize_command="$finalize_command -l$name"
-- elif test "$hardcode_shlibpath_var" = yes; then
-- case ":$finalize_shlibpath:" in
-- *":$libdir:"*) ;;
-- *) finalize_shlibpath="$finalize_shlibpath$libdir:";;
-- esac
-- finalize_command="$finalize_command -l$name"
-+ # Get the name of the library we link against.
-+ linklib=
-+ for l in $old_library $library_names; do
-+ linklib="$l"
-+ done
-+ if test -z "$linklib"; then
-+ $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
-+ exit 1
-+ fi
-+
-+ # This library was specified with -dlopen.
-+ if test $pass = dlopen; then
-+ if test -z "$libdir"; then
-+ $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
-+ exit 1
-+ fi
-+ if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
-+ # If there is no dlname, no dlopen support or we're linking
-+ # statically, we need to preload.
-+ dlprefiles="$dlprefiles $lib"
- else
-- # We cannot seem to hardcode it, guess we'll fake it.
-- case "$finalize_command " in
-- *" -L$dir "*) ;;
-- *) finalize_command="$finalize_command -L$libdir";;
-- esac
-- finalize_command="$finalize_command -l$name"
-+ newdlfiles="$newdlfiles $lib"
-+ fi
-+ continue
-+ fi # $pass = dlopen
-+
-+ # We need an absolute path.
-+ case $ladir in
-+ [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
-+ *)
-+ abs_ladir=`cd "$ladir" && pwd`
-+ if test -z "$abs_ladir"; then
-+ $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2
-+ $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
-+ abs_ladir="$ladir"
-+ fi
-+ ;;
-+ esac
-+ laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-+
-+ # Find the relevant object directory and library name.
-+ if test "X$installed" = Xyes; then
-+ if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
-+ $echo "$modename: warning: library \`$lib' was moved." 1>&2
-+ dir="$ladir"
-+ absdir="$abs_ladir"
-+ libdir="$abs_ladir"
-+ else
-+ dir="$libdir"
-+ absdir="$libdir"
- fi
- else
-- # Transform directly to old archives if we don't build new libraries.
-- if test -n "$pic_flag" && test -z "$old_library"; then
-- $echo "$modename: cannot find static library for \`$arg'" 1>&2
-+ dir="$ladir/$objdir"
-+ absdir="$abs_ladir/$objdir"
-+ # Remove this search path later
-+ notinst_path="$notinst_path $abs_ladir"
-+ fi # $installed = yes
-+ name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
-+
-+ # This library was specified with -dlpreopen.
-+ if test $pass = dlpreopen; then
-+ if test -z "$libdir"; then
-+ $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
- exit 1
- fi
-+ # Prefer using a static library (so that no silly _DYNAMIC symbols
-+ # are required to link).
-+ if test -n "$old_library"; then
-+ newdlprefiles="$newdlprefiles $dir/$old_library"
-+ # Otherwise, use the dlname, so that lt_dlopen finds it.
-+ elif test -n "$dlname"; then
-+ newdlprefiles="$newdlprefiles $dir/$dlname"
-+ else
-+ newdlprefiles="$newdlprefiles $dir/$linklib"
-+ fi
-+ fi # $pass = dlpreopen
-
-- # Here we assume that one of hardcode_direct or hardcode_minus_L
-- # is not unsupported. This is valid on all known static and
-- # shared platforms.
-- if test "$hardcode_direct" != unsupported; then
-- test -n "$old_library" && linklib="$old_library"
-- compile_command="$compile_command $dir/$linklib"
-- finalize_command="$finalize_command $dir/$linklib"
-+ if test -z "$libdir"; then
-+ # Link the convenience library
-+ if test $linkmode = lib; then
-+ deplibs="$dir/$old_library $deplibs"
-+ elif test "$linkmode,$pass" = "prog,link"; then
-+ compile_deplibs="$dir/$old_library $compile_deplibs"
-+ finalize_deplibs="$dir/$old_library $finalize_deplibs"
- else
-- case "$compile_command " in
-- *" -L$dir "*) ;;
-- *) compile_command="$compile_command -L$dir";;
-+ deplibs="$lib $deplibs"
-+ fi
-+ continue
-+ fi
-+
-+ if test $linkmode = prog && test $pass != link; then
-+ newlib_search_path="$newlib_search_path $ladir"
-+ deplibs="$lib $deplibs"
-+
-+ linkalldeplibs=no
-+ if test "$link_all_deplibs" != no || test -z "$library_names" ||
-+ test "$build_libtool_libs" = no; then
-+ linkalldeplibs=yes
-+ fi
-+
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ case $deplib in
-+ -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
- esac
-- compile_command="$compile_command -l$name"
-- case "$finalize_command " in
-- *" -L$dir "*) ;;
-- *) finalize_command="$finalize_command -L$dir";;
-+ # Need to link against all dependency_libs?
-+ if test $linkalldeplibs = yes; then
-+ deplibs="$deplib $deplibs"
-+ else
-+ # Need to hardcode shared library paths
-+ # or/and link against static libraries
-+ newdependency_libs="$deplib $newdependency_libs"
-+ fi
-+ if test "X$duplicate_deps" = "Xyes" ; then
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ fi
-+ tmp_libs="$tmp_libs $deplib"
-+ done # for deplib
-+ continue
-+ fi # $linkmode = prog...
-+
-+ link_static=no # Whether the deplib will be linked statically
-+ if test -n "$library_names" &&
-+ { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
-+ # Link against this shared library
-+
-+ if test "$linkmode,$pass" = "prog,link" ||
-+ { test $linkmode = lib && test $hardcode_into_libs = yes; }; then
-+ # Hardcode the library path.
-+ # Skip directories that are in the system default run-time
-+ # search path.
-+ case " $sys_lib_dlsearch_path " in
-+ *" $absdir "*) ;;
-+ *)
-+ case "$compile_rpath " in
-+ *" $absdir "*) ;;
-+ *) compile_rpath="$compile_rpath $absdir"
-+ esac
-+ ;;
- esac
-- finalize_command="$finalize_command -l$name"
-+ case " $sys_lib_dlsearch_path " in
-+ *" $libdir "*) ;;
-+ *)
-+ case "$finalize_rpath " in
-+ *" $libdir "*) ;;
-+ *) finalize_rpath="$finalize_rpath $libdir"
-+ esac
-+ ;;
-+ esac
-+ if test $linkmode = prog; then
-+ # We need to hardcode the library path
-+ if test -n "$shlibpath_var"; then
-+ # Make sure the rpath contains only unique directories.
-+ case "$temp_rpath " in
-+ *" $dir "*) ;;
-+ *" $absdir "*) ;;
-+ *) temp_rpath="$temp_rpath $dir" ;;
-+ esac
-+ fi
-+ fi
-+ fi # $linkmode,$pass = prog,link...
-+
-+ if test "$alldeplibs" = yes &&
-+ { test "$deplibs_check_method" = pass_all ||
-+ { test "$build_libtool_libs" = yes &&
-+ test -n "$library_names"; }; }; then
-+ # We only need to search for static libraries
-+ continue
- fi
-- fi
-
-- # Add in any libraries that this one depends upon.
-- compile_command="$compile_command$dependency_libs"
-- finalize_command="$finalize_command$dependency_libs"
-- continue
-- ;;
-+ if test "$installed" = no; then
-+ notinst_deplibs="$notinst_deplibs $lib"
-+ need_relink=yes
-+ fi
-+
-+ if test -n "$old_archive_from_expsyms_cmds"; then
-+ # figure out the soname
-+ set dummy $library_names
-+ realname="$2"
-+ shift; shift
-+ libname=`eval \\$echo \"$libname_spec\"`
-+ # use dlname if we got it. it's perfectly good, no?
-+ if test -n "$dlname"; then
-+ soname="$dlname"
-+ elif test -n "$soname_spec"; then
-+ # bleh windows
-+ case $host in
-+ *cygwin*)
-+ major=`expr $current - $age`
-+ versuffix="-$major"
-+ ;;
-+ esac
-+ eval soname=\"$soname_spec\"
-+ else
-+ soname="$realname"
-+ fi
-
-- # Some other compiler argument.
-- *)
-- # Unknown arguments in both finalize_command and compile_command need
-- # to be aesthetically quoted because they are evaled later.
-- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-- arg="\"$arg\""
-- ;;
-- esac
-- ;;
-- esac
-+ # Make a new name for the extract_expsyms_cmds to use
-+ soroot="$soname"
-+ soname=`echo $soroot | ${SED} -e 's/^.*\///'`
-+ newlib="libimp-`echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a"
-
-- # Now actually substitute the argument into the commands.
-- if test -n "$arg"; then
-- compile_command="$compile_command $arg"
-- finalize_command="$finalize_command $arg"
-- fi
-- done
-+ # If the library has no export list, then create one now
-+ if test -f "$output_objdir/$soname-def"; then :
-+ else
-+ $show "extracting exported symbol list from \`$soname'"
-+ save_ifs="$IFS"; IFS='~'
-+ eval cmds=\"$extract_expsyms_cmds\"
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ fi
-
-- if test -n "$prev"; then
-- $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
-- $echo "$help" 1>&2
-- exit 1
-- fi
-+ # Create $newlib
-+ if test -f "$output_objdir/$newlib"; then :; else
-+ $show "generating import library for \`$soname'"
-+ save_ifs="$IFS"; IFS='~'
-+ eval cmds=\"$old_archive_from_expsyms_cmds\"
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ fi
-+ # make sure the library variables are pointing to the new library
-+ dir=$output_objdir
-+ linklib=$newlib
-+ fi # test -n $old_archive_from_expsyms_cmds
-+
-+ if test $linkmode = prog || test "$mode" != relink; then
-+ add_shlibpath=
-+ add_dir=
-+ add=
-+ lib_linked=yes
-+ case $hardcode_action in
-+ immediate | unsupported)
-+ if test "$hardcode_direct" = no; then
-+ add="$dir/$linklib"
-+ elif test "$hardcode_minus_L" = no; then
-+ case $host in
-+ *-*-sunos*) add_shlibpath="$dir" ;;
-+ esac
-+ add_dir="-L$dir"
-+ add="-l$name"
-+ elif test "$hardcode_shlibpath_var" = no; then
-+ add_shlibpath="$dir"
-+ add="-l$name"
-+ else
-+ lib_linked=no
-+ fi
-+ ;;
-+ relink)
-+ if test "$hardcode_direct" = yes; then
-+ add="$dir/$linklib"
-+ elif test "$hardcode_minus_L" = yes; then
-+ add_dir="-L$dir"
-+ # Try looking first in the location we're being installed to.
-+ if test -n "$inst_prefix_dir"; then
-+ case "$libdir" in
-+ [\/]*)
-+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
-+ ;;
-+ esac
-+ fi
-+ add="-l$name"
-+ elif test "$hardcode_shlibpath_var" = yes; then
-+ add_shlibpath="$dir"
-+ add="-l$name"
-+ else
-+ lib_linked=no
-+ fi
-+ ;;
-+ *) lib_linked=no ;;
-+ esac
-
-- if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
-- eval arg=\"$export_dynamic_flag_spec\"
-- compile_command="$compile_command $arg"
-- finalize_command="$finalize_command $arg"
-- fi
-+ if test "$lib_linked" != yes; then
-+ $echo "$modename: configuration error: unsupported hardcode properties"
-+ exit 1
-+ fi
-
-- oldlibs=
-- # calculate the name of the file, without its directory
-- outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
-- libobjs_save="$libobjs"
-+ if test -n "$add_shlibpath"; then
-+ case :$compile_shlibpath: in
-+ *":$add_shlibpath:"*) ;;
-+ *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
-+ esac
-+ fi
-+ if test $linkmode = prog; then
-+ test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
-+ test -n "$add" && compile_deplibs="$add $compile_deplibs"
-+ else
-+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
-+ test -n "$add" && deplibs="$add $deplibs"
-+ if test "$hardcode_direct" != yes && \
-+ test "$hardcode_minus_L" != yes && \
-+ test "$hardcode_shlibpath_var" = yes; then
-+ case :$finalize_shlibpath: in
-+ *":$libdir:"*) ;;
-+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
-+ esac
-+ fi
-+ fi
-+ fi
-
-- case "$output" in
-- "")
-- $echo "$modename: you must specify an output file" 1>&2
-- $echo "$help" 1>&2
-- exit 1
-- ;;
-+ if test $linkmode = prog || test "$mode" = relink; then
-+ add_shlibpath=
-+ add_dir=
-+ add=
-+ # Finalize command for both is simple: just hardcode it.
-+ if test "$hardcode_direct" = yes; then
-+ add="$libdir/$linklib"
-+ elif test "$hardcode_minus_L" = yes; then
-+ add_dir="-L$libdir"
-+ add="-l$name"
-+ elif test "$hardcode_shlibpath_var" = yes; then
-+ case :$finalize_shlibpath: in
-+ *":$libdir:"*) ;;
-+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
-+ esac
-+ add="-l$name"
-+ else
-+ # We cannot seem to hardcode it, guess we'll fake it.
-+ add_dir="-L$libdir"
-+ # Try looking first in the location we're being installed to.
-+ if test -n "$inst_prefix_dir"; then
-+ case "$libdir" in
-+ [\/]*)
-+ add_dir="-L$inst_prefix_dir$libdir $add_dir"
-+ ;;
-+ esac
-+ fi
-+ add="-l$name"
-+ fi
-
-- *.a | *.lib)
-- if test -n "$link_against_libtool_libs"; then
-- $echo "$modename: error: cannot link libtool libraries into archives" 1>&2
-- exit 1
-+ if test $linkmode = prog; then
-+ test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
-+ test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
-+ else
-+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
-+ test -n "$add" && deplibs="$add $deplibs"
-+ fi
-+ fi
-+ elif test $linkmode = prog; then
-+ if test "$alldeplibs" = yes &&
-+ { test "$deplibs_check_method" = pass_all ||
-+ { test "$build_libtool_libs" = yes &&
-+ test -n "$library_names"; }; }; then
-+ # We only need to search for static libraries
-+ continue
-+ fi
-+
-+ # Try to link the static library
-+ # Here we assume that one of hardcode_direct or hardcode_minus_L
-+ # is not unsupported. This is valid on all known static and
-+ # shared platforms.
-+ if test "$hardcode_direct" != unsupported; then
-+ test -n "$old_library" && linklib="$old_library"
-+ compile_deplibs="$dir/$linklib $compile_deplibs"
-+ finalize_deplibs="$dir/$linklib $finalize_deplibs"
-+ else
-+ compile_deplibs="-l$name -L$dir $compile_deplibs"
-+ finalize_deplibs="-l$name -L$dir $finalize_deplibs"
-+ fi
-+ elif test "$build_libtool_libs" = yes; then
-+ # Not a shared library
-+ if test "$deplibs_check_method" != pass_all; then
-+ # We're trying link a shared library against a static one
-+ # but the system doesn't support it.
-+
-+ # Just print a warning and add the library to dependency_libs so
-+ # that the program can be linked against the static library.
-+ echo
-+ echo "*** Warning: This system can not link to static lib archive $lib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have."
-+ if test "$module" = yes; then
-+ echo "*** But as you try to build a module library, libtool will still create "
-+ echo "*** a static module, that should work as long as the dlopening application"
-+ echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
-+ if test -z "$global_symbol_pipe"; then
-+ echo
-+ echo "*** However, this would only work if libtool was able to extract symbol"
-+ echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
-+ echo "*** not find such a program. So, this module is probably useless."
-+ echo "*** \`nm' from GNU binutils and a full rebuild may help."
-+ fi
-+ if test "$build_old_libs" = no; then
-+ build_libtool_libs=module
-+ build_old_libs=yes
-+ else
-+ build_libtool_libs=no
-+ fi
-+ fi
-+ else
-+ convenience="$convenience $dir/$old_library"
-+ old_convenience="$old_convenience $dir/$old_library"
-+ deplibs="$dir/$old_library $deplibs"
-+ link_static=yes
-+ fi
-+ fi # link shared/static library?
-+
-+ if test $linkmode = lib; then
-+ if test -n "$dependency_libs" &&
-+ { test $hardcode_into_libs != yes || test $build_old_libs = yes ||
-+ test $link_static = yes; }; then
-+ # Extract -R from dependency_libs
-+ temp_deplibs=
-+ for libdir in $dependency_libs; do
-+ case $libdir in
-+ -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`
-+ case " $xrpath " in
-+ *" $temp_xrpath "*) ;;
-+ *) xrpath="$xrpath $temp_xrpath";;
-+ esac;;
-+ *) temp_deplibs="$temp_deplibs $libdir";;
-+ esac
-+ done
-+ dependency_libs="$temp_deplibs"
-+ fi
-+
-+ newlib_search_path="$newlib_search_path $absdir"
-+ # Link against this library
-+ test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
-+ # ... and its dependency_libs
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ newdependency_libs="$deplib $newdependency_libs"
-+ if test "X$duplicate_deps" = "Xyes" ; then
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ fi
-+ tmp_libs="$tmp_libs $deplib"
-+ done
-+
-+ if test $link_all_deplibs != no; then
-+ # Add the search paths of all dependency libraries
-+ for deplib in $dependency_libs; do
-+ case $deplib in
-+ -L*) path="$deplib" ;;
-+ *.la)
-+ dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
-+ test "X$dir" = "X$deplib" && dir="."
-+ # We need an absolute path.
-+ case $dir in
-+ [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
-+ *)
-+ absdir=`cd "$dir" && pwd`
-+ if test -z "$absdir"; then
-+ $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
-+ absdir="$dir"
-+ fi
-+ ;;
-+ esac
-+ if grep "^installed=no" $deplib > /dev/null; then
-+ path="-L$absdir/$objdir"
-+ else
-+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ if test "$absdir" != "$libdir"; then
-+ $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
-+ fi
-+ path="-L$absdir"
-+ fi
-+ ;;
-+ *) continue ;;
-+ esac
-+ case " $deplibs " in
-+ *" $path "*) ;;
-+ *) deplibs="$deplibs $path" ;;
-+ esac
-+ done
-+ fi # link_all_deplibs != no
-+ fi # linkmode = lib
-+ done # for deplib in $libs
-+ if test $pass = dlpreopen; then
-+ # Link the dlpreopened libraries before other libraries
-+ for deplib in $save_deplibs; do
-+ deplibs="$deplib $deplibs"
-+ done
- fi
-+ if test $pass != dlopen; then
-+ test $pass != scan && dependency_libs="$newdependency_libs"
-+ if test $pass != conv; then
-+ # Make sure lib_search_path contains only unique directories.
-+ lib_search_path=
-+ for dir in $newlib_search_path; do
-+ case "$lib_search_path " in
-+ *" $dir "*) ;;
-+ *) lib_search_path="$lib_search_path $dir" ;;
-+ esac
-+ done
-+ newlib_search_path=
-+ fi
-
-- if test -n "$deplibs"; then
-- $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2
-+ if test "$linkmode,$pass" != "prog,link"; then
-+ vars="deplibs"
-+ else
-+ vars="compile_deplibs finalize_deplibs"
-+ fi
-+ for var in $vars dependency_libs; do
-+ # Add libraries to $var in reverse order
-+ eval tmp_libs=\"\$$var\"
-+ new_libs=
-+ for deplib in $tmp_libs; do
-+ case $deplib in
-+ -L*) new_libs="$deplib $new_libs" ;;
-+ *)
-+ case " $specialdeplibs " in
-+ *" $deplib "*) new_libs="$deplib $new_libs" ;;
-+ *)
-+ case " $new_libs " in
-+ *" $deplib "*) ;;
-+ *) new_libs="$deplib $new_libs" ;;
-+ esac
-+ ;;
-+ esac
-+ ;;
-+ esac
-+ done
-+ tmp_libs=
-+ for deplib in $new_libs; do
-+ case $deplib in
-+ -L*)
-+ case " $tmp_libs " in
-+ *" $deplib "*) ;;
-+ *) tmp_libs="$tmp_libs $deplib" ;;
-+ esac
-+ ;;
-+ *) tmp_libs="$tmp_libs $deplib" ;;
-+ esac
-+ done
-+ eval $var=\"$tmp_libs\"
-+ done # for var
- fi
-+ if test "$pass" = "conv" &&
-+ { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then
-+ libs="$deplibs" # reset libs
-+ deplibs=
-+ fi
-+ done # for pass
-+ if test $linkmode = prog; then
-+ dlfiles="$newdlfiles"
-+ dlprefiles="$newdlprefiles"
-+ fi
-
-+ case $linkmode in
-+ oldlib)
- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
- $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
- fi
-@@ -1566,11 +2179,12 @@
- # Now set the variables for building old libraries.
- build_libtool_libs=no
- oldlibs="$output"
-+ objs="$objs$old_deplibs"
- ;;
-
-- *.la)
-+ lib)
- # Make sure we only generate libraries of the form `libNAME.la'.
-- case "$outputname" in
-+ case $outputname in
- lib*)
- name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
- eval libname=\"$libname_spec\"
-@@ -1591,26 +2205,20 @@
- ;;
- esac
-
-- output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
-- if test "X$output_objdir" = "X$output"; then
-- output_objdir="$objdir"
-- else
-- output_objdir="$output_objdir/$objdir"
-- fi
--
- if test -n "$objs"; then
-- $echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
-- exit 1
-- fi
--
-- # How the heck are we supposed to write a wrapper for a shared library?
-- if test -n "$link_against_libtool_libs"; then
-- $echo "$modename: error: cannot link shared libraries into libtool libraries" 1>&2
-- exit 1
-+ if test "$deplibs_check_method" != pass_all; then
-+ $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
-+ exit 1
-+ else
-+ echo
-+ echo "*** Warning: Linking the shared library $output against the non-libtool"
-+ echo "*** objects $objs is not portable!"
-+ libobjs="$libobjs $objs"
-+ fi
- fi
-
-- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-- $echo "$modename: warning: \`-dlopen' is ignored for libtool libraries" 1>&2
-+ if test "$dlself" != no; then
-+ $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2
- fi
-
- set dummy $rpath
-@@ -1628,7 +2236,6 @@
- build_libtool_libs=convenience
- build_old_libs=yes
- fi
-- dependency_libs="$deplibs"
-
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2
-@@ -1640,7 +2247,7 @@
- else
-
- # Parse the version information argument.
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS=':'
-+ save_ifs="$IFS"; IFS=':'
- set dummy $vinfo 0 0 0
- IFS="$save_ifs"
-
-@@ -1655,8 +2262,8 @@
- age="$4"
-
- # Check that each of the things are valid numbers.
-- case "$current" in
-- 0 | [1-9] | [1-9][0-9]*) ;;
-+ case $current in
-+ 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
- *)
- $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-@@ -1664,8 +2271,8 @@
- ;;
- esac
-
-- case "$revision" in
-- 0 | [1-9] | [1-9][0-9]*) ;;
-+ case $revision in
-+ 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
- *)
- $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-@@ -1673,8 +2280,8 @@
- ;;
- esac
-
-- case "$age" in
-- 0 | [1-9] | [1-9][0-9]*) ;;
-+ case $age in
-+ 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
- *)
- $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-@@ -1692,21 +2299,49 @@
- major=
- versuffix=
- verstring=
-- case "$version_type" in
-+ case $version_type in
- none) ;;
-
-- irix)
-+ darwin)
-+ # Like Linux, but with the current version available in
-+ # verstring for coding it into the library header
-+ major=.`expr $current - $age`
-+ versuffix="$major.$age.$revision"
-+ # Darwin ld doesn't like 0 for these options...
-+ minor_current=`expr $current + 1`
-+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
-+ ;;
-+
-+ freebsd-aout)
-+ major=".$current"
-+ versuffix=".$current.$revision";
-+ ;;
-+
-+ freebsd-elf)
-+ major=".$current"
-+ versuffix=".$current";
-+ ;;
-+
-+ irix | nonstopux)
- major=`expr $current - $age + 1`
-- versuffix="$major.$revision"
-- verstring="sgi$major.$revision"
-+
-+ case $version_type in
-+ nonstopux) verstring_prefix=nonstopux ;;
-+ *) verstring_prefix=sgi ;;
-+ esac
-+ verstring="$verstring_prefix$major.$revision"
-
- # Add in all the interfaces that we are compatible with.
- loop=$revision
- while test $loop != 0; do
- iface=`expr $revision - $loop`
- loop=`expr $loop - 1`
-- verstring="sgi$major.$iface:$verstring"
-+ verstring="$verstring_prefix$major.$iface:$verstring"
- done
-+
-+ # Before this point, $major must not contain `.'.
-+ major=.$major
-+ versuffix="$major.$revision"
- ;;
-
- linux)
-@@ -1715,7 +2350,7 @@
- ;;
-
- osf)
-- major=`expr $current - $age`
-+ major=.`expr $current - $age`
- versuffix=".$current.$age.$revision"
- verstring="$current.$age.$revision"
-
-@@ -1736,21 +2371,11 @@
- versuffix=".$current.$revision"
- ;;
-
-- freebsd-aout)
-- major=".$current"
-- versuffix=".$current.$revision";
-- ;;
--
-- freebsd-elf)
-- major=".$current"
-- versuffix=".$current";
-- ;;
--
- windows)
-- # Like Linux, but with '-' rather than '.', since we only
-- # want one extension on Windows 95.
-+ # Use '-' rather than '.', since we only want one
-+ # extension on DOS 8.3 filesystems.
- major=`expr $current - $age`
-- versuffix="-$major-$age-$revision"
-+ versuffix="-$major"
- ;;
-
- *)
-@@ -1764,6 +2389,16 @@
- if test -z "$vinfo" && test -n "$release"; then
- major=
- verstring="0.0"
-+ case $version_type in
-+ darwin)
-+ # we can't check for "0.0" in archive_cmds due to quoting
-+ # problems, so we reset it completely
-+ verstring=""
-+ ;;
-+ *)
-+ verstring="0.0"
-+ ;;
-+ esac
- if test "$need_version" = no; then
- versuffix=
- else
-@@ -1777,7 +2412,7 @@
- versuffix=
- verstring=""
- fi
--
-+
- # Check to see if the archive will have undefined symbols.
- if test "$allow_undefined" = yes; then
- if test "$allow_undefined_flag" = unsupported; then
-@@ -1785,34 +2420,16 @@
- build_libtool_libs=no
- build_old_libs=yes
- fi
-- else
-- # Don't allow undefined symbols.
-- allow_undefined_flag="$no_undefined_flag"
-- fi
--
-- dependency_libs="$deplibs"
-- case "$host" in
-- *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
-- # these systems don't actually have a c library (as such)!
-- ;;
-- *)
-- # Add libc to deplibs on all other systems.
-- deplibs="$deplibs -lc"
-- ;;
-- esac
-+ else
-+ # Don't allow undefined symbols.
-+ allow_undefined_flag="$no_undefined_flag"
-+ fi
- fi
-
-- # Create the output directory, or remove our outputs if we need to.
-- if test -d $output_objdir; then
-+ if test "$mode" != relink; then
-+ # Remove our outputs.
- $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*"
- $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*
-- else
-- $show "$mkdir $output_objdir"
-- $run $mkdir $output_objdir
-- status=$?
-- if test $status -ne 0 && test ! -d $output_objdir; then
-- exit $status
-- fi
- fi
-
- # Now set the variables for building old libraries.
-@@ -1823,7 +2440,73 @@
- oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
- fi
-
-+ # Eliminate all temporary directories.
-+ for path in $notinst_path; do
-+ lib_search_path=`echo "$lib_search_path " | ${SED} -e 's% $path % %g'`
-+ deplibs=`echo "$deplibs " | ${SED} -e 's% -L$path % %g'`
-+ dependency_libs=`echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'`
-+ done
-+
-+ if test -n "$xrpath"; then
-+ # If the user specified any rpath flags, then add them.
-+ temp_xrpath=
-+ for libdir in $xrpath; do
-+ temp_xrpath="$temp_xrpath -R$libdir"
-+ case "$finalize_rpath " in
-+ *" $libdir "*) ;;
-+ *) finalize_rpath="$finalize_rpath $libdir" ;;
-+ esac
-+ done
-+ if test $hardcode_into_libs != yes || test $build_old_libs = yes; then
-+ dependency_libs="$temp_xrpath $dependency_libs"
-+ fi
-+ fi
-+
-+ # Make sure dlfiles contains only unique files that won't be dlpreopened
-+ old_dlfiles="$dlfiles"
-+ dlfiles=
-+ for lib in $old_dlfiles; do
-+ case " $dlprefiles $dlfiles " in
-+ *" $lib "*) ;;
-+ *) dlfiles="$dlfiles $lib" ;;
-+ esac
-+ done
-+
-+ # Make sure dlprefiles contains only unique files
-+ old_dlprefiles="$dlprefiles"
-+ dlprefiles=
-+ for lib in $old_dlprefiles; do
-+ case "$dlprefiles " in
-+ *" $lib "*) ;;
-+ *) dlprefiles="$dlprefiles $lib" ;;
-+ esac
-+ done
-+
- if test "$build_libtool_libs" = yes; then
-+ if test -n "$rpath"; then
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
-+ # these systems don't actually have a c library (as such)!
-+ ;;
-+ *-*-rhapsody* | *-*-darwin1.[012])
-+ # Rhapsody C library is in the System framework
-+ deplibs="$deplibs -framework System"
-+ ;;
-+ *-*-netbsd*)
-+ # Don't link with libc until the a.out ld.so is fixed.
-+ ;;
-+ *-*-openbsd* | *-*-freebsd*)
-+ # Do not include libc due to us having libc/libc_r.
-+ ;;
-+ *)
-+ # Add libc to deplibs on all other systems if necessary.
-+ if test $build_libtool_need_lc = "yes"; then
-+ deplibs="$deplibs -lc"
-+ fi
-+ ;;
-+ esac
-+ fi
-+
- # Transform deplibs into only deplibs that can be linked in shared.
- name_save=$name
- libname_save=$libname
-@@ -1838,7 +2521,7 @@
- major=""
- newdeplibs=
- droppeddeps=no
-- case "$deplibs_check_method" in
-+ case $deplibs_check_method in
- pass_all)
- # Don't check for shared/static. Everything works.
- # This might be a little naive. We might want to check
-@@ -1863,7 +2546,7 @@
- for i in $deplibs; do
- name="`expr $i : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
-- if test "$name" != "" ; then
-+ if test -n "$name" && test "$name" != "0"; then
- libname=`eval \\$echo \"$libname_spec\"`
- deplib_matches=`eval \\$echo \"$library_names_spec\"`
- set dummy $deplib_matches
-@@ -1873,22 +2556,24 @@
- else
- droppeddeps=yes
- echo
-- echo "*** Warning: This library needs some functionality provided by $i."
-+ echo "*** Warning: dynamic linker does not accept needed library $i."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
-- echo "*** shared version of the library, which you do not appear to have."
-+ echo "*** shared version of the library, which I believe you do not have"
-+ echo "*** because a test_compile did reveal that the linker did not use it for"
-+ echo "*** its dynamic dependency list that programs get resolved with at runtime."
- fi
- else
- newdeplibs="$newdeplibs $i"
- fi
- done
- else
-- # Error occured in the first compile. Let's try to salvage the situation:
-- # Compile a seperate program for each library.
-+ # Error occured in the first compile. Let's try to salvage
-+ # the situation: Compile a separate program for each library.
- for i in $deplibs; do
- name="`expr $i : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
-- if test "$name" != "" ; then
-+ if test -n "$name" && test "$name" != "0"; then
- $rm conftest
- $CC -o conftest conftest.c $i
- # Did it work?
-@@ -1903,10 +2588,12 @@
- else
- droppeddeps=yes
- echo
-- echo "*** Warning: This library needs some functionality provided by $i."
-+ echo "*** Warning: dynamic linker does not accept needed library $i."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
-- echo "*** shared version of the library, which you do not appear to have."
-+ echo "*** shared version of the library, which you do not appear to have"
-+ echo "*** because a test_compile did reveal that the linker did not use this one"
-+ echo "*** as a dynamic dependency that programs can get resolved with at runtime."
- fi
- else
- droppeddeps=yes
-@@ -1924,19 +2611,19 @@
- ;;
- file_magic*)
- set dummy $deplibs_check_method
-- file_magic_regex="`expr \"$deplibs_check_method\" : \"$2 \(.*\)\"`"
-+ file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
- for a_deplib in $deplibs; do
- name="`expr $a_deplib : '-l\(.*\)'`"
- # If $name is empty we are operating on a -L argument.
-- if test "$name" != "" ; then
-+ if test -n "$name" && test "$name" != "0"; then
- libname=`eval \\$echo \"$libname_spec\"`
-- for i in $lib_search_path; do
-+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
- potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
- for potent_lib in $potential_libs; do
- # Follow soft links.
- if ls -lLd "$potent_lib" 2>/dev/null \
- | grep " -> " >/dev/null; then
-- continue
-+ continue
- fi
- # The statement above tries to avoid entering an
- # endless loop below, in case of cyclic links.
-@@ -1945,14 +2632,14 @@
- # but so what?
- potlib="$potent_lib"
- while test -h "$potlib" 2>/dev/null; do
-- potliblink=`ls -ld $potlib | sed 's/.* -> //'`
-- case "$potliblink" in
-+ potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
-+ case $potliblink in
- [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
- *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
- esac
- done
- if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
-- | sed 10q \
-+ | ${SED} 10q \
- | egrep "$file_magic_regex" > /dev/null; then
- newdeplibs="$newdeplibs $a_deplib"
- a_deplib=""
-@@ -1963,10 +2650,59 @@
- if test -n "$a_deplib" ; then
- droppeddeps=yes
- echo
-- echo "*** Warning: This library needs some functionality provided by $a_deplib."
-+ echo "*** Warning: linker path does not have real file for library $a_deplib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have"
-+ echo "*** because I did check the linker path looking for a file starting"
-+ if test -z "$potlib" ; then
-+ echo "*** with $libname but no candidates were found. (...for file magic test)"
-+ else
-+ echo "*** with $libname and none of the candidates passed a file format test"
-+ echo "*** using a file magic. Last file checked: $potlib"
-+ fi
-+ fi
-+ else
-+ # Add a -L argument.
-+ newdeplibs="$newdeplibs $a_deplib"
-+ fi
-+ done # Gone through all deplibs.
-+ ;;
-+ match_pattern*)
-+ set dummy $deplibs_check_method
-+ match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
-+ for a_deplib in $deplibs; do
-+ name="`expr $a_deplib : '-l\(.*\)'`"
-+ # If $name is empty we are operating on a -L argument.
-+ if test -n "$name" && test "$name" != "0"; then
-+ libname=`eval \\$echo \"$libname_spec\"`
-+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
-+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
-+ for potent_lib in $potential_libs; do
-+ potlib="$potent_lib" # see symlink-check below in file_magic test
-+ if eval echo \"$potent_lib\" 2>/dev/null \
-+ | ${SED} 10q \
-+ | egrep "$match_pattern_regex" > /dev/null; then
-+ newdeplibs="$newdeplibs $a_deplib"
-+ a_deplib=""
-+ break 2
-+ fi
-+ done
-+ done
-+ if test -n "$a_deplib" ; then
-+ droppeddeps=yes
-+ echo
-+ echo "*** Warning: linker path does not have real file for library $a_deplib."
- echo "*** I have the capability to make that library automatically link in when"
- echo "*** you link to this library. But I can only do this if you have a"
-- echo "*** shared version of the library, which you do not appear to have."
-+ echo "*** shared version of the library, which you do not appear to have"
-+ echo "*** because I did check the linker path looking for a file starting"
-+ if test -z "$potlib" ; then
-+ echo "*** with $libname but no candidates were found. (...for regex pattern test)"
-+ else
-+ echo "*** with $libname and none of the candidates passed a file format test"
-+ echo "*** using a regex pattern. Last file checked: $potlib"
-+ fi
- fi
- else
- # Add a -L argument.
-@@ -1996,6 +2732,13 @@
- libname=$libname_save
- name=$name_save
-
-+ case $host in
-+ *-*-rhapsody* | *-*-darwin1.[012])
-+ # On Rhapsody replace the C library is the System framework
-+ newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ ;;
-+ esac
-+
- if test "$droppeddeps" = yes; then
- if test "$module" = yes; then
- echo
-@@ -2021,6 +2764,21 @@
- echo "*** The inter-library dependencies that have been dropped here will be"
- echo "*** automatically added whenever a program is linked with this library"
- echo "*** or is declared to -dlopen it."
-+
-+ if test $allow_undefined = no; then
-+ echo
-+ echo "*** Since this library must not contain undefined symbols,"
-+ echo "*** because either the platform does not support them or"
-+ echo "*** it was explicitly requested with -no-undefined,"
-+ echo "*** libtool will only create a static version of it."
-+ if test "$build_old_libs" = no; then
-+ oldlibs="$output_objdir/$libname.$libext"
-+ build_libtool_libs=module
-+ build_old_libs=yes
-+ else
-+ build_libtool_libs=no
-+ fi
-+ fi
- fi
- fi
- # Done checking deplibs!
-@@ -2031,9 +2789,64 @@
- library_names=
- old_library=
- dlname=
--
-+
- # Test again, we may have decided not to build it any more
- if test "$build_libtool_libs" = yes; then
-+ if test $hardcode_into_libs = yes; then
-+ # Hardcode the library paths
-+ hardcode_libdirs=
-+ dep_rpath=
-+ rpath="$finalize_rpath"
-+ test "$mode" != relink && rpath="$compile_rpath$rpath"
-+ for libdir in $rpath; do
-+ if test -n "$hardcode_libdir_flag_spec"; then
-+ if test -n "$hardcode_libdir_separator"; then
-+ if test -z "$hardcode_libdirs"; then
-+ hardcode_libdirs="$libdir"
-+ else
-+ # Just accumulate the unique libdirs.
-+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
-+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
-+ ;;
-+ *)
-+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
-+ ;;
-+ esac
-+ fi
-+ else
-+ eval flag=\"$hardcode_libdir_flag_spec\"
-+ dep_rpath="$dep_rpath $flag"
-+ fi
-+ elif test -n "$runpath_var"; then
-+ case "$perm_rpath " in
-+ *" $libdir "*) ;;
-+ *) perm_rpath="$perm_rpath $libdir" ;;
-+ esac
-+ fi
-+ done
-+ # Substitute the hardcoded libdirs into the rpath.
-+ if test -n "$hardcode_libdir_separator" &&
-+ test -n "$hardcode_libdirs"; then
-+ libdir="$hardcode_libdirs"
-+ eval dep_rpath=\"$hardcode_libdir_flag_spec\"
-+ fi
-+ if test -n "$runpath_var" && test -n "$perm_rpath"; then
-+ # We should set the runpath_var.
-+ rpath=
-+ for dir in $perm_rpath; do
-+ rpath="$rpath$dir:"
-+ done
-+ eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
-+ fi
-+ test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
-+ fi
-+
-+ shlibpath="$finalize_shlibpath"
-+ test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
-+ if test -n "$shlibpath"; then
-+ eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
-+ fi
-+
- # Get the real and link names of the library.
- eval library_names=\"$library_names_spec\"
- set dummy $library_names
-@@ -2045,6 +2858,7 @@
- else
- soname="$realname"
- fi
-+ test -z "$dlname" && dlname=$soname
-
- lib="$output_objdir/$realname"
- for link
-@@ -2079,7 +2893,7 @@
- export_symbols="$output_objdir/$libname.exp"
- $run $rm $export_symbols
- eval cmds=\"$export_symbols_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -2116,7 +2930,7 @@
-
- for xlib in $convenience; do
- # Extract the objects.
-- case "$xlib" in
-+ case $xlib in
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
- *) xabs=`pwd`"/$xlib" ;;
- esac
-@@ -2141,16 +2955,32 @@
-
- if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
- eval flag=\"$thread_safe_flag_spec\"
-- linkopts="$linkopts $flag"
-+ linker_flags="$linker_flags $flag"
-+ fi
-+
-+ # Make a backup of the uninstalled library when relinking
-+ if test "$mode" = relink; then
-+ $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
- fi
-
- # Do each of the archive commands.
- if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
- eval cmds=\"$archive_expsym_cmds\"
- else
-+ save_deplibs="$deplibs"
-+ for conv in $convenience; do
-+ tmp_deplibs=
-+ for test_deplib in $deplibs; do
-+ if test "$test_deplib" != "$conv"; then
-+ tmp_deplibs="$tmp_deplibs $test_deplib"
-+ fi
-+ done
-+ deplibs="$tmp_deplibs"
-+ done
- eval cmds=\"$archive_cmds\"
-+ deplibs="$save_deplibs"
- fi
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -2158,6 +2988,12 @@
- done
- IFS="$save_ifs"
-
-+ # Restore the uninstalled library and exit
-+ if test "$mode" = relink; then
-+ $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
-+ exit 0
-+ fi
-+
- # Create links to the real library.
- for linkname in $linknames; do
- if test "$realname" != "$linkname"; then
-@@ -2174,12 +3010,7 @@
- fi
- ;;
-
-- *.lo | *.o | *.obj)
-- if test -n "$link_against_libtool_libs"; then
-- $echo "$modename: error: cannot link libtool libraries into objects" 1>&2
-- exit 1
-- fi
--
-+ obj)
- if test -n "$deplibs"; then
- $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
- fi
-@@ -2204,9 +3035,9 @@
- $echo "$modename: warning: \`-release' is ignored for objects" 1>&2
- fi
-
-- case "$output" in
-+ case $output in
- *.lo)
-- if test -n "$objs"; then
-+ if test -n "$objs$old_deplibs"; then
- $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
- exit 1
- fi
-@@ -2230,7 +3061,7 @@
- gentop=
- # reload_cmds runs $LD directly, so let us get rid of
- # -Wl from whole_archive_flag_spec
-- wl=
-+ wl=
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
-@@ -2249,7 +3080,7 @@
-
- for xlib in $convenience; do
- # Extract the objects.
-- case "$xlib" in
-+ case $xlib in
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
- *) xabs=`pwd`"/$xlib" ;;
- esac
-@@ -2273,11 +3104,11 @@
- fi
-
- # Create the old-style object.
-- reload_objs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs"
-+ reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
-
- output="$obj"
- eval cmds=\"$reload_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -2308,12 +3139,12 @@
- exit 0
- fi
-
-- if test -n "$pic_flag"; then
-+ if test -n "$pic_flag" || test "$pic_mode" != default; then
- # Only do commands if we really have different PIC objects.
- reload_objs="$libobjs $reload_conv_objs"
- output="$libobj"
- eval cmds=\"$reload_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -2344,8 +3175,10 @@
- exit 0
- ;;
-
-- # Anything else should be a program.
-- *)
-+ prog)
-+ case $host in
-+ *cygwin*) output=`echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;;
-+ esac
- if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
- fi
-@@ -2355,20 +3188,34 @@
- fi
-
- if test "$preload" = yes; then
-- if test "$dlopen" = unknown && test "$dlopen_self" = unknown &&
-+ if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown &&
- test "$dlopen_self_static" = unknown; then
- $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support."
-- fi
-+ fi
- fi
--
-+
-+ case $host in
-+ *-*-rhapsody* | *-*-darwin1.[012])
-+ # On Rhapsody replace the C library is the System framework
-+ compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ case $host in
-+ *darwin*)
-+ # Don't allow lazy linking, it breaks C++ global constructors
-+ compile_command="$compile_command ${wl}-bind_at_load"
-+ finalize_command="$finalize_command ${wl}-bind_at_load"
-+ ;;
-+ esac
-+ ;;
-+ esac
-+
-+ compile_command="$compile_command $compile_deplibs"
-+ finalize_command="$finalize_command $finalize_deplibs"
-+
- if test -n "$rpath$xrpath"; then
- # If the user specified any rpath flags, then add them.
- for libdir in $rpath $xrpath; do
- # This is the magic to use -rpath.
-- case "$compile_rpath " in
-- *" $libdir "*) ;;
-- *) compile_rpath="$compile_rpath $libdir" ;;
-- esac
- case "$finalize_rpath " in
- *" $libdir "*) ;;
- *) finalize_rpath="$finalize_rpath $libdir" ;;
-@@ -2386,7 +3233,7 @@
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
-- case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
-+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
-@@ -2404,6 +3251,14 @@
- *) perm_rpath="$perm_rpath $libdir" ;;
- esac
- fi
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ case :$dllsearchpath: in
-+ *":$libdir:"*) ;;
-+ *) dllsearchpath="$dllsearchpath:$libdir";;
-+ esac
-+ ;;
-+ esac
- done
- # Substitute the hardcoded libdirs into the rpath.
- if test -n "$hardcode_libdir_separator" &&
-@@ -2422,7 +3277,7 @@
- hardcode_libdirs="$libdir"
- else
- # Just accumulate the unique libdirs.
-- case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
-+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
- *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
- ;;
- *)
-@@ -2449,23 +3304,6 @@
- fi
- finalize_rpath="$rpath"
-
-- output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
-- if test "X$output_objdir" = "X$output"; then
-- output_objdir="$objdir"
-- else
-- output_objdir="$output_objdir/$objdir"
-- fi
--
-- # Create the binary in the object directory, then wrap it.
-- if test ! -d $output_objdir; then
-- $show "$mkdir $output_objdir"
-- $run $mkdir $output_objdir
-- status=$?
-- if test $status -ne 0 && test ! -d $output_objdir; then
-- exit $status
-- fi
-- fi
--
- if test -n "$libobjs" && test "$build_old_libs" = yes; then
- # Transform all the library objects into standard objects.
- compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-@@ -2482,7 +3320,7 @@
- fi
-
- if test -n "$dlsyms"; then
-- case "$dlsyms" in
-+ case $dlsyms in
- "") ;;
- *.c)
- # Discover the nlist of each of the dlfiles.
-@@ -2514,7 +3352,7 @@
- test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist"
-
- # Add our own program objects to the symbol list.
-- progfiles=`$echo "X$objs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-+ progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
- for arg in $progfiles; do
- $show "extracting global C symbols from \`$arg'"
- $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
-@@ -2524,7 +3362,7 @@
- $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
- $run eval '$mv "$nlist"T "$nlist"'
- fi
--
-+
- if test -n "$export_symbols_regex"; then
- $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T'
- $run eval '$mv "$nlist"T "$nlist"'
-@@ -2534,9 +3372,9 @@
- if test -z "$export_symbols"; then
- export_symbols="$output_objdir/$output.exp"
- $run $rm $export_symbols
-- $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
-+ $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
- else
-- $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
-+ $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
- $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
- $run eval 'mv "$nlist"T "$nlist"'
- fi
-@@ -2544,7 +3382,7 @@
-
- for arg in $dlprefiles; do
- $show "extracting global C symbols from \`$arg'"
-- name=`echo "$arg" | sed -e 's%^.*/%%'`
-+ name=`echo "$arg" | ${SED} -e 's%^.*/%%'`
- $run eval 'echo ": $name " >> "$nlist"'
- $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
- done
-@@ -2559,7 +3397,13 @@
- fi
-
- # Try sorting and uniquifying the output.
-- if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then
-+ if grep -v "^: " < "$nlist" |
-+ if sort -k 3 </dev/null >/dev/null 2>&1; then
-+ sort -k 3
-+ else
-+ sort +2
-+ fi |
-+ uniq > "$nlist"S; then
- :
- else
- grep -v "^: " < "$nlist" > "$nlist"S
-@@ -2576,27 +3420,25 @@
- #undef lt_preloaded_symbols
-
- #if defined (__STDC__) && __STDC__
--# define lt_ptr_t void *
-+# define lt_ptr void *
- #else
--# define lt_ptr_t char *
-+# define lt_ptr char *
- # define const
- #endif
-
- /* The mapping between symbol names and symbols. */
- const struct {
- const char *name;
-- lt_ptr_t address;
-+ lt_ptr address;
- }
- lt_preloaded_symbols[] =
- {\
- "
-
-- sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \
-- -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \
-- < "$nlist" >> "$output_objdir/$dlsyms"
-+ eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms"
-
- $echo >> "$output_objdir/$dlsyms" "\
-- {0, (lt_ptr_t) 0}
-+ {0, (lt_ptr) 0}
- };
-
- /* This works around a problem in FreeBSD linker */
-@@ -2613,13 +3455,13 @@
- fi
-
- pic_flag_for_symtable=
-- case "$host" in
-+ case $host in
- # compiling the symbol table file with pic_flag works around
- # a FreeBSD bug that causes programs to crash when -lm is
- # linked before any other PIC object. But we must not use
- # pic_flag when linking with -static. The problem exists in
- # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
-- *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
-+ *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
- case "$compile_command " in
- *" -static "*) ;;
- *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";;
-@@ -2658,7 +3500,7 @@
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
- fi
-
-- if test -z "$link_against_libtool_libs" || test "$build_libtool_libs" != yes; then
-+ if test $need_relink = no || test "$build_libtool_libs" != yes; then
- # Replace the output file specification.
- compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
- link_command="$compile_command$compile_rpath"
-@@ -2667,7 +3509,7 @@
- $show "$link_command"
- $run eval "$link_command"
- status=$?
--
-+
- # Delete the generated files.
- if test -n "$dlsyms"; then
- $show "$rm $output_objdir/${outputname}S.${objext}"
-@@ -2681,7 +3523,7 @@
- # We should set the shlibpath_var
- rpath=
- for dir in $temp_rpath; do
-- case "$dir" in
-+ case $dir in
- [\\/]* | [A-Za-z]:[\\/]*)
- # Absolute path.
- rpath="$rpath$dir:"
-@@ -2723,11 +3565,24 @@
- fi
- fi
-
-+ if test "$no_install" = yes; then
-+ # We don't need to create a wrapper script.
-+ link_command="$compile_var$compile_command$compile_rpath"
-+ # Replace the output file specification.
-+ link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
-+ # Delete the old output file.
-+ $run $rm $output
-+ # Link the executable and exit
-+ $show "$link_command"
-+ $run eval "$link_command" || exit $?
-+ exit 0
-+ fi
-+
- if test "$hardcode_action" = relink; then
- # Fast installation is not supported
- link_command="$compile_var$compile_command$compile_rpath"
- relink_command="$finalize_var$finalize_command$finalize_rpath"
--
-+
- $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2
- $echo "$modename: \`$output' will be relinked during installation" 1>&2
- else
-@@ -2747,7 +3602,7 @@
-
- # Replace the output file specification.
- link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
--
-+
- # Delete the old output files.
- $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname
-
-@@ -2759,12 +3614,24 @@
-
- # Quote the relink command for shipping.
- if test -n "$relink_command"; then
-+ # Preserve any variables that may affect compiler behavior
-+ for var in $variables_saved_for_relink; do
-+ if eval test -z \"\${$var+set}\"; then
-+ relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
-+ elif eval var_value=\$$var; test -z "$var_value"; then
-+ relink_command="$var=; export $var; $relink_command"
-+ else
-+ var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
-+ relink_command="$var=\"$var_value\"; export $var; $relink_command"
-+ fi
-+ done
-+ relink_command="(cd `pwd`; $relink_command)"
- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
- fi
-
- # Quote $echo for shipping.
- if test "X$echo" = "X$SHELL $0 --fallback-echo"; then
-- case "$0" in
-+ case $0 in
- [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";;
- *) qecho="$SHELL `pwd`/$0 --fallback-echo";;
- esac
-@@ -2778,7 +3645,12 @@
- # win32 will think the script is a binary if it has
- # a .exe suffix, so we strip it off here.
- case $output in
-- *.exe) output=`echo $output|sed 's,.exe$,,'` ;;
-+ *.exe) output=`echo $output|${SED} 's,.exe$,,'` ;;
-+ esac
-+ # test for cygwin because mv fails w/o .exe extensions
-+ case $host in
-+ *cygwin*) exeext=.exe ;;
-+ *) exeext= ;;
- esac
- $rm $output
- trap "$rm $output; exit 1" 1 2 15
-@@ -2797,7 +3669,7 @@
-
- # Sed substitution that helps us do robust quoting. It backslashifies
- # metacharacters that are still active within double-quoted strings.
--Xsed='sed -e 1s/^X//'
-+Xsed="${SED}"' -e 1s/^X//'
- sed_quote_subst='$sed_quote_subst'
-
- # The HP-UX ksh and POSIX shell print the target directory to stdout
-@@ -2809,7 +3681,7 @@
- # This environment variable determines our operation mode.
- if test \"\$libtool_install_magic\" = \"$magic\"; then
- # install mode needs the following variable:
-- link_against_libtool_libs='$link_against_libtool_libs'
-+ notinst_deplibs='$notinst_deplibs'
- else
- # When we are sourced in execute mode, \$file and \$echo are already set.
- if test \"\$libtool_execute_magic\" != \"$magic\"; then
-@@ -2835,20 +3707,20 @@
- test \"x\$thisdir\" = \"x\$file\" && thisdir=.
-
- # Follow symbolic links until we get to the real thisdir.
-- file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\`
-+ file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
- while test -n \"\$file\"; do
- destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
-
- # If there was a directory component, then change thisdir.
- if test \"x\$destdir\" != \"x\$file\"; then
- case \"\$destdir\" in
-- [\\/]* | [A-Za-z]:[\\/]*) thisdir=\"\$destdir\" ;;
-+ [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
- *) thisdir=\"\$thisdir/\$destdir\" ;;
- esac
- fi
-
- file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
-- file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\`
-+ file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
- done
-
- # Try to get the absolute directory name.
-@@ -2858,11 +3730,11 @@
-
- if test "$fast_install" = yes; then
- echo >> $output "\
-- program=lt-'$outputname'
-+ program=lt-'$outputname'$exeext
- progdir=\"\$thisdir/$objdir\"
--
-+
- if test ! -f \"\$progdir/\$program\" || \\
-- { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\
-+ { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
- test \"X\$file\" != \"X\$progdir/\$program\"; }; then
-
- file=\"\$\$-\$program\"
-@@ -2877,8 +3749,9 @@
-
- # relink executable if necessary
- if test -n \"\$relink_command\"; then
-- if (cd \"\$thisdir\" && eval \$relink_command); then :
-+ if relink_command_output=\`eval \$relink_command 2>&1\`; then :
- else
-+ $echo \"\$relink_command_output\" >&2
- $rm \"\$progdir/\$file\"
- exit 1
- fi
-@@ -2907,7 +3780,7 @@
- $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
-
- # Some systems cannot cope with colon-terminated $shlibpath_var
-- # The second colon is a workaround for a bug in BeOS R4 sed
-+ # The second colon is a workaround for a bug in BeOS R4 ${SED}
- $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
-
- export $shlibpath_var
-@@ -2927,13 +3800,21 @@
- # Run the actual program with our arguments.
- "
- case $host in
-- *-*-cygwin* | *-*-mingw | *-*-os2*)
-- # win32 systems need to use the prog path for dll
-- # lookup to work
-+ # win32 systems need to use the prog path for dll
-+ # lookup to work
-+ *-*-cygwin* | *-*-pw32*)
-+ $echo >> $output "\
-+ exec \$progdir/\$program \${1+\"\$@\"}
-+"
-+ ;;
-+
-+ # Backslashes separate directories on plain windows
-+ *-*-mingw | *-*-os2*)
- $echo >> $output "\
- exec \$progdir\\\\\$program \${1+\"\$@\"}
- "
- ;;
-+
- *)
- $echo >> $output "\
- # Export the path to the program.
-@@ -2975,7 +3856,7 @@
- oldobjs="$libobjs_save"
- build_libtool_libs=no
- else
-- oldobjs="$objs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
-+ oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
- fi
- addlibs="$old_convenience"
- fi
-@@ -2991,11 +3872,11 @@
- exit $status
- fi
- generated="$generated $gentop"
--
-+
- # Add in members from convenience archives.
- for xlib in $addlibs; do
- # Extract the objects.
-- case "$xlib" in
-+ case $xlib in
- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
- *) xabs=`pwd`"/$xlib" ;;
- esac
-@@ -3041,7 +3922,7 @@
-
- eval cmds=\"$old_archive_cmds\"
- fi
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -3056,19 +3937,26 @@
- fi
-
- # Now create the libtool archive.
-- case "$output" in
-+ case $output in
- *.la)
- old_library=
- test "$build_old_libs" = yes && old_library="$libname.$libext"
- $show "creating $output"
-
-- if test -n "$xrpath"; then
-- temp_xrpath=
-- for libdir in $xrpath; do
-- temp_xrpath="$temp_xrpath -R$libdir"
-- done
-- dependency_libs="$temp_xrpath $dependency_libs"
-- fi
-+ # Preserve any variables that may affect compiler behavior
-+ for var in $variables_saved_for_relink; do
-+ if eval test -z \"\${$var+set}\"; then
-+ relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
-+ elif eval var_value=\$$var; test -z "$var_value"; then
-+ relink_command="$var=; export $var; $relink_command"
-+ else
-+ var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
-+ relink_command="$var=\"$var_value\"; export $var; $relink_command"
-+ fi
-+ done
-+ # Quote the link command for shipping.
-+ relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)"
-+ relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
-
- # Only create the output if not a dry run.
- if test -z "$run"; then
-@@ -3078,8 +3966,52 @@
- break
- fi
- output="$output_objdir/$outputname"i
-+ # Replace all uninstalled libtool libraries with the installed ones
-+ newdependency_libs=
-+ for deplib in $dependency_libs; do
-+ case $deplib in
-+ *.la)
-+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
-+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ newdependency_libs="$newdependency_libs $libdir/$name"
-+ ;;
-+ *) newdependency_libs="$newdependency_libs $deplib" ;;
-+ esac
-+ done
-+ dependency_libs="$newdependency_libs"
-+ newdlfiles=
-+ for lib in $dlfiles; do
-+ name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ newdlfiles="$newdlfiles $libdir/$name"
-+ done
-+ dlfiles="$newdlfiles"
-+ newdlprefiles=
-+ for lib in $dlprefiles; do
-+ name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ newdlprefiles="$newdlprefiles $libdir/$name"
-+ done
-+ dlprefiles="$newdlprefiles"
- fi
- $rm $output
-+ # place dlname in correct position for cygwin
-+ tdlname=$dlname
-+ case $host,$output,$installed,$module,$dlname in
-+ *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
-+ esac
- $echo > $output "\
- # $outputname - a libtool library file
- # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-@@ -3088,7 +4020,7 @@
- # It is necessary for linking the library.
-
- # The name that we can dlopen(3).
--dlname='$dlname'
-+dlname='$tdlname'
-
- # Names of this library.
- library_names='$library_names'
-@@ -3107,16 +4039,23 @@
- # Is this an already installed library?
- installed=$installed
-
-+# Files to dlopen/dlpreopen
-+dlopen='$dlfiles'
-+dlpreopen='$dlprefiles'
-+
- # Directory that this library needs to be installed in:
--libdir='$install_libdir'\
--"
-+libdir='$install_libdir'"
-+ if test "$installed" = no && test $need_relink = yes; then
-+ $echo >> $output "\
-+relink_command=\"$relink_command\""
-+ fi
- done
- fi
-
- # Do a symbolic link so that the libtool archive can be found in
- # LD_LIBRARY_PATH before the program is installed.
- $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
-- $run eval "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" || exit $?
-+ $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
- ;;
- esac
- exit 0
-@@ -3128,10 +4067,12 @@
-
- # There may be an optional sh(1) argument at the beginning of
- # install_prog (especially on Windows NT).
-- if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh; then
-+ if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
-+ # Allow the use of GNU shtool's install command.
-+ $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then
- # Aesthetically quote it.
- arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-+ case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
- arg="\"$arg\""
- ;;
-@@ -3147,7 +4088,7 @@
- # The real first argument should be the name of the installation program.
- # Aesthetically quote it.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-+ case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
- arg="\"$arg\""
- ;;
-@@ -3170,7 +4111,7 @@
- continue
- fi
-
-- case "$arg" in
-+ case $arg in
- -d) isdir=yes ;;
- -f) prev="-f" ;;
- -g) prev="-g" ;;
-@@ -3195,7 +4136,7 @@
-
- # Aesthetically quote the argument.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-- case "$arg" in
-+ case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
- arg="\"$arg\""
- ;;
-@@ -3246,11 +4187,11 @@
- exit 1
- fi
- fi
-- case "$destdir" in
-+ case $destdir in
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- for file in $files; do
-- case "$file" in
-+ case $file in
- *.lo) ;;
- *)
- $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
-@@ -3272,15 +4213,15 @@
- for file in $files; do
-
- # Do each installation.
-- case "$file" in
-- *.a | *.lib)
-+ case $file in
-+ *.$libext)
- # Do the static libraries later.
- staticlibs="$staticlibs $file"
- ;;
-
- *.la)
- # Check to see that this really is a libtool archive.
-- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
-@@ -3289,8 +4230,9 @@
-
- library_names=
- old_library=
-+ relink_command=
- # If there is no directory component, then add one.
-- case "$file" in
-+ case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-@@ -3309,10 +4251,38 @@
- esac
- fi
-
-- dir="`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/"
-+ dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/
- test "X$dir" = "X$file/" && dir=
- dir="$dir$objdir"
-
-+ if test -n "$relink_command"; then
-+ # Determine the prefix the user has applied to our future dir.
-+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
-+
-+ # Don't allow the user to place us outside of our expected
-+ # location b/c this prevents finding dependent libraries that
-+ # are installed to the same prefix.
-+ if test "$inst_prefix_dir" = "$destdir"; then
-+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
-+ exit 1
-+ fi
-+
-+ if test -n "$inst_prefix_dir"; then
-+ # Stick the inst_prefix_dir data into the link command.
-+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
-+ else
-+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
-+ fi
-+
-+ $echo "$modename: warning: relinking \`$file'" 1>&2
-+ $show "$relink_command"
-+ if $run eval "$relink_command"; then :
-+ else
-+ $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
-+ exit 1
-+ fi
-+ fi
-+
- # See the names of the shared library.
- set dummy $library_names
- if test -n "$2"; then
-@@ -3320,9 +4290,16 @@
- shift
- shift
-
-+ srcname="$realname"
-+ test -n "$relink_command" && srcname="$realname"T
-+
- # Install the shared library and build the symlinks.
-- $show "$install_prog $dir/$realname $destdir/$realname"
-- $run eval "$install_prog $dir/$realname $destdir/$realname" || exit $?
-+ $show "$install_prog $dir/$srcname $destdir/$realname"
-+ $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $?
-+ if test -n "$stripme" && test -n "$striplib"; then
-+ $show "$striplib $destdir/$realname"
-+ $run eval "$striplib $destdir/$realname" || exit $?
-+ fi
-
- if test $# -gt 0; then
- # Delete the old symlinks, and create new ones.
-@@ -3338,7 +4315,7 @@
- # Do each command in the postinstall commands.
- lib="$destdir/$realname"
- eval cmds=\"$postinstall_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -3369,11 +4346,11 @@
- fi
-
- # Deduce the name of the destination old-style object file.
-- case "$destfile" in
-+ case $destfile in
- *.lo)
- staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"`
- ;;
-- *.o | *.obj)
-+ *.$objext)
- staticdest="$destfile"
- destfile=
- ;;
-@@ -3411,40 +4388,55 @@
- fi
-
- # Do a test to see if this is really a libtool program.
-- if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-- link_against_libtool_libs=
-+ case $host in
-+ *cygwin*|*mingw*)
-+ wrapper=`echo $file | ${SED} -e 's,.exe$,,'`
-+ ;;
-+ *)
-+ wrapper=$file
-+ ;;
-+ esac
-+ if (${SED} -e '4q' $wrapper | egrep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then
-+ notinst_deplibs=
- relink_command=
-
- # If there is no directory component, then add one.
-- case "$file" in
-- */* | *\\*) . $file ;;
-- *) . ./$file ;;
-+ case $file in
-+ */* | *\\*) . $wrapper ;;
-+ *) . ./$wrapper ;;
- esac
-
- # Check the variables that should have been set.
-- if test -z "$link_against_libtool_libs"; then
-- $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
-+ if test -z "$notinst_deplibs"; then
-+ $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
- exit 1
- fi
-
- finalize=yes
-- for lib in $link_against_libtool_libs; do
-+ for lib in $notinst_deplibs; do
- # Check to see that each library is installed.
- libdir=
- if test -f "$lib"; then
- # If there is no directory component, then add one.
-- case "$lib" in
-+ case $lib in
- */* | *\\*) . $lib ;;
- *) . ./$lib ;;
- esac
- fi
-- libfile="$libdir/`$echo "X$lib" | $Xsed -e 's%^.*/%%g'`"
-+ libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
- if test -n "$libdir" && test ! -f "$libfile"; then
- $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
- finalize=no
- fi
- done
-
-+ relink_command=
-+ # If there is no directory component, then add one.
-+ case $file in
-+ */* | *\\*) . $wrapper ;;
-+ *) . ./$wrapper ;;
-+ esac
-+
- outputname=
- if test "$fast_install" = no && test -n "$relink_command"; then
- if test "$finalize" = yes && test -z "$run"; then
-@@ -3456,6 +4448,7 @@
- $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
- continue
- fi
-+ file=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
- outputname="$tmpdir/$file"
- # Replace the output file specification.
- relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
-@@ -3477,6 +4470,23 @@
- fi
- fi
-
-+ # remove .exe since cygwin /usr/bin/install will append another
-+ # one anyways
-+ case $install_prog,$host in
-+ /usr/bin/install*,*cygwin*)
-+ case $file:$destfile in
-+ *.exe:*.exe)
-+ # this is ok
-+ ;;
-+ *.exe:*)
-+ destfile=$destfile.exe
-+ ;;
-+ *:*.exe)
-+ destfile=`echo $destfile | ${SED} -e 's,.exe$,,'`
-+ ;;
-+ esac
-+ ;;
-+ esac
- $show "$install_prog$stripme $file $destfile"
- $run eval "$install_prog\$stripme \$file \$destfile" || exit $?
- test -n "$outputname" && ${rm}r "$tmpdir"
-@@ -3493,9 +4503,14 @@
- $show "$install_prog $file $oldlib"
- $run eval "$install_prog \$file \$oldlib" || exit $?
-
-+ if test -n "$stripme" && test -n "$striplib"; then
-+ $show "$old_striplib $oldlib"
-+ $run eval "$old_striplib $oldlib" || exit $?
-+ fi
-+
- # Do each command in the postinstall commands.
- eval cmds=\"$old_postinstall_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -3511,11 +4526,10 @@
- if test -n "$current_libdirs"; then
- # Maybe just do a dry run.
- test -n "$run" && current_libdirs=" -n$current_libdirs"
-- exec $SHELL $0 --finish$current_libdirs
-- exit 1
-+ exec_cmd='$SHELL $0 --finish$current_libdirs'
-+ else
-+ exit 0
- fi
--
-- exit 0
- ;;
-
- # libtool finish mode
-@@ -3534,7 +4548,7 @@
- if test -n "$finish_cmds"; then
- # Do each command in the finish commands.
- eval cmds=\"$finish_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
-@@ -3553,7 +4567,7 @@
- fi
-
- # Exit here if they wanted silent mode.
-- test "$show" = : && exit 0
-+ test "$show" = ":" && exit 0
-
- echo "----------------------------------------------------------------------"
- echo "Libraries have been installed in:"
-@@ -3563,7 +4577,7 @@
- echo
- echo "If you ever happen to want to link against installed libraries"
- echo "in a given directory, LIBDIR, you must either use libtool, and"
-- echo "specify the full pathname of the library, or use \`-LLIBDIR'"
-+ echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
- echo "flag during linking and do at least one of the following:"
- if test -n "$shlibpath_var"; then
- echo " - add LIBDIR to the \`$shlibpath_var' environment variable"
-@@ -3613,10 +4627,10 @@
- fi
-
- dir=
-- case "$file" in
-+ case $file in
- *.la)
- # Check to see that this really is a libtool archive.
-- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
-@@ -3628,7 +4642,7 @@
- library_names=
-
- # If there is no directory component, then add one.
-- case "$file" in
-+ case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-@@ -3683,13 +4697,13 @@
- args=
- for file
- do
-- case "$file" in
-+ case $file in
- -*) ;;
- *)
- # Do a test to see if this is really a libtool program.
-- if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ if (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- # If there is no directory component, then add one.
-- case "$file" in
-+ case $file in
- */* | *\\*) . $file ;;
- *) . ./$file ;;
- esac
-@@ -3706,8 +4720,8 @@
-
- if test -z "$run"; then
- if test -n "$shlibpath_var"; then
-- # Export the shlibpath_var.
-- eval "export $shlibpath_var"
-+ # Export the shlibpath_var.
-+ eval "export $shlibpath_var"
- fi
-
- # Restore saved enviroment variables
-@@ -3718,31 +4732,35 @@
- LANG="$save_LANG"; export LANG
- fi
-
-- # Now actually exec the command.
-- eval "exec \$cmd$args"
--
-- $echo "$modename: cannot exec \$cmd$args"
-- exit 1
-+ # Now prepare to actually exec the command.
-+ exec_cmd="\$cmd$args"
- else
- # Display what would be done.
- if test -n "$shlibpath_var"; then
-- eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
-- $echo "export $shlibpath_var"
-+ eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
-+ $echo "export $shlibpath_var"
- fi
- $echo "$cmd$args"
- exit 0
- fi
- ;;
-
-- # libtool uninstall mode
-- uninstall)
-- modename="$modename: uninstall"
-+ # libtool clean and uninstall mode
-+ clean | uninstall)
-+ modename="$modename: $mode"
- rm="$nonopt"
- files=
-+ rmforce=
-+ exit_status=0
-+
-+ # This variable tells wrapper scripts just to set variables rather
-+ # than running their programs.
-+ libtool_install_magic="$magic"
-
- for arg
- do
-- case "$arg" in
-+ case $arg in
-+ -f) rm="$rm $arg"; rmforce=yes ;;
- -*) rm="$rm $arg" ;;
- *) files="$files $arg" ;;
- esac
-@@ -3754,53 +4772,86 @@
- exit 1
- fi
-
-+ rmdirs=
-+
- for file in $files; do
- dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
-- test "X$dir" = "X$file" && dir=.
-+ if test "X$dir" = "X$file"; then
-+ dir=.
-+ objdir="$objdir"
-+ else
-+ objdir="$dir/$objdir"
-+ fi
- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-+ test $mode = uninstall && objdir="$dir"
-+
-+ # Remember objdir for removal later, being careful to avoid duplicates
-+ if test $mode = clean; then
-+ case " $rmdirs " in
-+ *" $objdir "*) ;;
-+ *) rmdirs="$rmdirs $objdir" ;;
-+ esac
-+ fi
-+
-+ # Don't error if the file doesn't exist and rm -f was used.
-+ if (test -L "$file") >/dev/null 2>&1 \
-+ || (test -h "$file") >/dev/null 2>&1 \
-+ || test -f "$file"; then
-+ :
-+ elif test -d "$file"; then
-+ exit_status=1
-+ continue
-+ elif test "$rmforce" = yes; then
-+ continue
-+ fi
-
- rmfiles="$file"
-
-- case "$name" in
-+ case $name in
- *.la)
- # Possibly a libtool archive, so verify it.
-- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
- . $dir/$name
-
- # Delete the libtool libraries and symlinks.
- for n in $library_names; do
-- rmfiles="$rmfiles $dir/$n"
-+ rmfiles="$rmfiles $objdir/$n"
- done
-- test -n "$old_library" && rmfiles="$rmfiles $dir/$old_library"
-+ test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
-+ test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
-
-- $show "$rm $rmfiles"
-- $run $rm $rmfiles
--
-- if test -n "$library_names"; then
-- # Do each command in the postuninstall commands.
-- eval cmds=\"$postuninstall_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-- for cmd in $cmds; do
-+ if test $mode = uninstall; then
-+ if test -n "$library_names"; then
-+ # Do each command in the postuninstall commands.
-+ eval cmds=\"$postuninstall_cmds\"
-+ save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd"
-+ if test $? != 0 && test "$rmforce" != yes; then
-+ exit_status=1
-+ fi
-+ done
- IFS="$save_ifs"
-- $show "$cmd"
-- $run eval "$cmd"
-- done
-- IFS="$save_ifs"
-- fi
-+ fi
-
-- if test -n "$old_library"; then
-- # Do each command in the old_postuninstall commands.
-- eval cmds=\"$old_postuninstall_cmds\"
-- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-- for cmd in $cmds; do
-+ if test -n "$old_library"; then
-+ # Do each command in the old_postuninstall commands.
-+ eval cmds=\"$old_postuninstall_cmds\"
-+ save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd"
-+ if test $? != 0 && test "$rmforce" != yes; then
-+ exit_status=1
-+ fi
-+ done
- IFS="$save_ifs"
-- $show "$cmd"
-- $run eval "$cmd"
-- done
-- IFS="$save_ifs"
-+ fi
-+ # FIXME: should reinstall the best remaining shared library.
- fi
--
-- # FIXME: should reinstall the best remaining shared library.
- fi
- ;;
-
-@@ -3809,17 +4860,35 @@
- oldobj=`$echo "X$name" | $Xsed -e "$lo2o"`
- rmfiles="$rmfiles $dir/$oldobj"
- fi
-- $show "$rm $rmfiles"
-- $run $rm $rmfiles
- ;;
-
- *)
-- $show "$rm $rmfiles"
-- $run $rm $rmfiles
-+ # Do a test to see if this is a libtool program.
-+ if test $mode = clean &&
-+ (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ relink_command=
-+ . $dir/$file
-+
-+ rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
-+ if test "$fast_install" = yes && test -n "$relink_command"; then
-+ rmfiles="$rmfiles $objdir/lt-$name"
-+ fi
-+ fi
- ;;
- esac
-+ $show "$rm $rmfiles"
-+ $run $rm $rmfiles || exit_status=1
- done
-- exit 0
-+
-+ # Try to remove the ${objdir}s in the directories where we deleted files
-+ for dir in $rmdirs; do
-+ if test -d "$dir"; then
-+ $show "rmdir $dir"
-+ $run rmdir $dir >/dev/null 2>&1
-+ fi
-+ done
-+
-+ exit $exit_status
- ;;
-
- "")
-@@ -3829,13 +4898,20 @@
- ;;
- esac
-
-- $echo "$modename: invalid operation mode \`$mode'" 1>&2
-- $echo "$generic_help" 1>&2
-- exit 1
-+ if test -z "$exec_cmd"; then
-+ $echo "$modename: invalid operation mode \`$mode'" 1>&2
-+ $echo "$generic_help" 1>&2
-+ exit 1
-+ fi
- fi # test -z "$show_help"
-
-+if test -n "$exec_cmd"; then
-+ eval exec $exec_cmd
-+ exit 1
-+fi
-+
- # We need to display help for each of the modes.
--case "$mode" in
-+case $mode in
- "") $echo \
- "Usage: $modename [OPTION]... [MODE-ARG]...
-
-@@ -3854,6 +4930,7 @@
-
- MODE must be one of the following:
-
-+ clean remove files from the build directory
- compile compile a source file into a libtool object
- execute automatically set library path, then run a program
- finish complete the installation of libtool libraries
-@@ -3866,6 +4943,20 @@
- exit 0
- ;;
-
-+clean)
-+ $echo \
-+"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
-+
-+Remove files from the build directory.
-+
-+RM is the name of the program to use to delete files associated with each FILE
-+(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-+to RM.
-+
-+If FILE is a libtool library, object or program, all the files associated
-+with it are deleted. Otherwise, only FILE itself is deleted using RM."
-+ ;;
-+
- compile)
- $echo \
- "Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
-@@ -3875,6 +4966,8 @@
- This mode accepts the following additional options:
-
- -o OUTPUT-FILE set the output file name to OUTPUT-FILE
-+ -prefer-pic try to building PIC objects only
-+ -prefer-non-pic try to building non-PIC objects only
- -static always build a \`.o' file suitable for static linking
-
- COMPILE-COMMAND is a command to be used in creating a \`standard' object file
-@@ -3954,6 +5047,8 @@
- -LLIBDIR search LIBDIR for required installed libraries
- -lNAME OUTPUT-FILE requires the installed library libNAME
- -module build a library that can dlopened
-+ -no-fast-install disable the fast-install mode
-+ -no-install link a not-installable executable
- -no-undefined declare that a library does not refer to external symbols
- -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
- -release RELEASE specify package release information
---- gtk+1.2-1.2.10.orig/gtk.m4
-+++ gtk+1.2-1.2.10/gtk.m4
-@@ -4,7 +4,7 @@
- dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]])
- dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
- dnl
--AC_DEFUN(AM_PATH_GTK,
-+AC_DEFUN([AM_PATH_GTK],
- [dnl
- dnl Get the cflags and libraries from the gtk-config script
- dnl
---- gtk+1.2-1.2.10.orig/po/gtk+.pot
-+++ gtk+1.2-1.2.10/po/gtk+.pot
-@@ -6,13 +6,13 @@
- msgid ""
- msgstr ""
- "Project-Id-Version: PACKAGE VERSION\n"
--"POT-Creation-Date: 2001-03-28 16:12-0500\n"
-+"POT-Creation-Date: 2002-04-30 02:21+0900\n"
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
- "Language-Team: LANGUAGE <LL@li.org>\n"
- "MIME-Version: 1.0\n"
- "Content-Type: text/plain; charset=CHARSET\n"
--"Content-Transfer-Encoding: ENCODING\n"
-+"Content-Transfer-Encoding: 8bit\n"
-
- #: gtk/gtkcolorsel.c:221
- msgid "Hue:"
-@@ -43,14 +43,14 @@
- msgstr ""
-
- #. The OK button
--#: gtk/gtkcolorsel.c:1727 gtk/gtkfilesel.c:481 gtk/gtkfontsel.c:3501
-+#: gtk/gtkcolorsel.c:1727 gtk/gtkfilesel.c:482 gtk/gtkfontsel.c:3503
- #: gtk/gtkgamma.c:416
- msgid "OK"
- msgstr ""
-
- #. The Cancel button
--#: gtk/gtkcolorsel.c:1733 gtk/gtkfilesel.c:488 gtk/gtkfilesel.c:868
--#: gtk/gtkfilesel.c:968 gtk/gtkfilesel.c:1083 gtk/gtkfontsel.c:3514
-+#: gtk/gtkcolorsel.c:1733 gtk/gtkfilesel.c:489 gtk/gtkfilesel.c:869
-+#: gtk/gtkfilesel.c:969 gtk/gtkfilesel.c:1085 gtk/gtkfontsel.c:3516
- #: gtk/gtkgamma.c:424
- msgid "Cancel"
- msgstr ""
-@@ -60,29 +60,29 @@
- msgstr ""
-
- #. The directories clist
--#: gtk/gtkfilesel.c:430
-+#: gtk/gtkfilesel.c:431
- msgid "Directories"
- msgstr ""
-
- #. The files clist
--#: gtk/gtkfilesel.c:449
-+#: gtk/gtkfilesel.c:450
- msgid "Files"
- msgstr ""
-
--#: gtk/gtkfilesel.c:519 gtk/gtkfilesel.c:1478
-+#: gtk/gtkfilesel.c:520 gtk/gtkfilesel.c:1466
- #, c-format
- msgid "Directory unreadable: %s"
- msgstr ""
-
--#: gtk/gtkfilesel.c:551
-+#: gtk/gtkfilesel.c:552
- msgid "Create Dir"
- msgstr ""
-
--#: gtk/gtkfilesel.c:562 gtk/gtkfilesel.c:937
-+#: gtk/gtkfilesel.c:563 gtk/gtkfilesel.c:938
- msgid "Delete File"
- msgstr ""
-
--#: gtk/gtkfilesel.c:573 gtk/gtkfilesel.c:1041
-+#: gtk/gtkfilesel.c:574 gtk/gtkfilesel.c:1043
- msgid "Rename File"
- msgstr ""
-
-@@ -91,39 +91,39 @@
- #. (GtkSignalFunc) gtk_file_selection_fileop_destroy,
- #. (gpointer) fs);
- #.
--#: gtk/gtkfilesel.c:734
-+#: gtk/gtkfilesel.c:735
- msgid "Error"
- msgstr ""
-
- #. close button
--#: gtk/gtkfilesel.c:757 gtk/gtkinputdialog.c:354
-+#: gtk/gtkfilesel.c:758 gtk/gtkinputdialog.c:354
- msgid "Close"
- msgstr ""
-
--#: gtk/gtkfilesel.c:832
-+#: gtk/gtkfilesel.c:833
- msgid "Create Directory"
- msgstr ""
-
--#: gtk/gtkfilesel.c:846
-+#: gtk/gtkfilesel.c:847
- msgid "Directory name:"
- msgstr ""
-
- #. buttons
--#: gtk/gtkfilesel.c:859
-+#: gtk/gtkfilesel.c:860
- msgid "Create"
- msgstr ""
-
- #. buttons
--#: gtk/gtkfilesel.c:959
-+#: gtk/gtkfilesel.c:960
- msgid "Delete"
- msgstr ""
-
- #. buttons
--#: gtk/gtkfilesel.c:1074
-+#: gtk/gtkfilesel.c:1076
- msgid "Rename"
- msgstr ""
-
--#: gtk/gtkfilesel.c:1457
-+#: gtk/gtkfilesel.c:1444
- msgid "Selection: "
- msgstr ""
-
-@@ -197,7 +197,7 @@
- msgid "Font"
- msgstr ""
-
--#: gtk/gtkfontsel.c:504 gtk/gtkfontsel.c:2180 gtk/gtkfontsel.c:2410
-+#: gtk/gtkfontsel.c:504 gtk/gtkfontsel.c:2182 gtk/gtkfontsel.c:2412
- msgid "Font:"
- msgstr ""
-
-@@ -280,23 +280,23 @@
- msgid "regular"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1220 gtk/gtkfontsel.c:1972
-+#: gtk/gtkfontsel.c:1220 gtk/gtkfontsel.c:1974
- msgid "italic"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1221 gtk/gtkfontsel.c:1973
-+#: gtk/gtkfontsel.c:1221 gtk/gtkfontsel.c:1975
- msgid "oblique"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1222 gtk/gtkfontsel.c:1974
-+#: gtk/gtkfontsel.c:1222 gtk/gtkfontsel.c:1976
- msgid "reverse italic"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1223 gtk/gtkfontsel.c:1975
-+#: gtk/gtkfontsel.c:1223 gtk/gtkfontsel.c:1977
- msgid "reverse oblique"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1224 gtk/gtkfontsel.c:1976
-+#: gtk/gtkfontsel.c:1224 gtk/gtkfontsel.c:1978
- msgid "other"
- msgstr ""
-
-@@ -308,51 +308,51 @@
- msgid "[C]"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1792
-+#: gtk/gtkfontsel.c:1794
- msgid "The selected font is not available."
- msgstr ""
-
--#: gtk/gtkfontsel.c:1798
-+#: gtk/gtkfontsel.c:1800
- msgid "The selected font is not a valid font."
- msgstr ""
-
--#: gtk/gtkfontsel.c:1856
-+#: gtk/gtkfontsel.c:1858
- msgid "This is a 2-byte font and may not be displayed correctly."
- msgstr ""
-
--#: gtk/gtkfontsel.c:1960 gtk/gtkinputdialog.c:607
-+#: gtk/gtkfontsel.c:1962 gtk/gtkinputdialog.c:607
- msgid "(unknown)"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1971
-+#: gtk/gtkfontsel.c:1973
- msgid "roman"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1983
-+#: gtk/gtkfontsel.c:1985
- msgid "proportional"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1984
-+#: gtk/gtkfontsel.c:1986
- msgid "monospaced"
- msgstr ""
-
--#: gtk/gtkfontsel.c:1985
-+#: gtk/gtkfontsel.c:1987
- msgid "char cell"
- msgstr ""
-
--#: gtk/gtkfontsel.c:2185
-+#: gtk/gtkfontsel.c:2187
- msgid "Font: (Filter Applied)"
- msgstr ""
-
--#: gtk/gtkfontsel.c:2661
-+#: gtk/gtkfontsel.c:2663
- msgid "MAX_FONTS exceeded. Some fonts may be missing."
- msgstr ""
-
--#: gtk/gtkfontsel.c:3508
-+#: gtk/gtkfontsel.c:3510
- msgid "Apply"
- msgstr ""
-
--#: gtk/gtkfontsel.c:3530
-+#: gtk/gtkfontsel.c:3532
- msgid "Font Selection"
- msgstr ""
-
-@@ -447,12 +447,12 @@
- msgid "Page %u"
- msgstr ""
-
--#: gtk/gtkrc.c:1703
-+#: gtk/gtkrc.c:1759
- #, c-format
- msgid "Unable to locate image file in pixmap_path: \"%s\" line %d"
- msgstr ""
-
--#: gtk/gtkrc.c:1706
-+#: gtk/gtkrc.c:1762
- #, c-format
- msgid "Unable to locate image file in pixmap_path: \"%s\""
- msgstr ""
---- gtk+1.2-1.2.10.orig/po/ca.po
-+++ gtk+1.2-1.2.10/po/ca.po
-@@ -1,16 +1,18 @@
--#
--# Ivan Vilata i Balaguer <al011097@alumail.uji.es>, 1999-2000
--# Softcatala <linux@softcatala.org>, 2000
-+# Catalan translation of GTK+ 1.2.
-+# Copyright © 1999, 2000, 2005 Free Software Foundation, Inc.
-+# Ivan Vilata i Balaguer <al011097@alumail.uji.es>, 1999, 2000.
-+# Softcatala <linux@softcatala.org>, 2000.
-+# Jordi Mallach <jordi@sindominio.net>, 2005.
- #
- msgid ""
- msgstr ""
- "Project-Id-Version: gtk+ 1.2.6\n"
- "POT-Creation-Date: 2001-03-28 16:12-0500\n"
--"PO-Revision-Date: 1999-11-18 21:11+01:00\n"
--"Last-Translator: Softcatala <linux@softcatala.org>\n"
--"Language-Team: linux-ca@chanae.alphanet.ch\n"
-+"PO-Revision-Date: 2005-09-21 18:19+0200\n"
-+"Last-Translator: Jordi Mallach <jordi@sindominio.net>\n"
-+"Language-Team: Catalan <tradgnome@softcatala.org>\n"
- "MIME-Version: 1.0\n"
--"Content-Type: text/plain; charset=iso-8859-1\n"
-+"Content-Type: text/plain; charset=ISO-8859-1\n"
- "Content-Transfer-Encoding: 8bit\n"
-
- #: gtk/gtkcolorsel.c:221
-@@ -41,86 +43,94 @@
- msgid "Opacity:"
- msgstr "Opacitat:"
-
--#. The OK button
--#: gtk/gtkcolorsel.c:1727 gtk/gtkfilesel.c:481 gtk/gtkfontsel.c:3501
-+# The OK button
-+#: gtk/gtkcolorsel.c:1727
-+#: gtk/gtkfilesel.c:481
-+#: gtk/gtkfontsel.c:3501
- #: gtk/gtkgamma.c:416
- msgid "OK"
--msgstr "Val"
-+msgstr "D'acord"
-
--#. The Cancel button
--#: gtk/gtkcolorsel.c:1733 gtk/gtkfilesel.c:488 gtk/gtkfilesel.c:868
--#: gtk/gtkfilesel.c:968 gtk/gtkfilesel.c:1083 gtk/gtkfontsel.c:3514
-+# The Cancel button
-+#: gtk/gtkcolorsel.c:1733
-+#: gtk/gtkfilesel.c:488
-+#: gtk/gtkfilesel.c:868
-+#: gtk/gtkfilesel.c:968
-+#: gtk/gtkfilesel.c:1083
-+#: gtk/gtkfontsel.c:3514
- #: gtk/gtkgamma.c:424
- msgid "Cancel"
--msgstr "Cancel·lar"
-+msgstr "Cancel·la"
-
- #: gtk/gtkcolorsel.c:1738
- msgid "Help"
- msgstr "Ajuda"
-
--#. The directories clist
-+# The directories clist
- #: gtk/gtkfilesel.c:430
- msgid "Directories"
- msgstr "Directoris"
-
--#. The files clist
-+# The files clist
- #: gtk/gtkfilesel.c:449
- msgid "Files"
- msgstr "Fitxers"
-
--#: gtk/gtkfilesel.c:519 gtk/gtkfilesel.c:1478
-+#: gtk/gtkfilesel.c:519
-+#: gtk/gtkfilesel.c:1478
- #, c-format
- msgid "Directory unreadable: %s"
--msgstr "El directori no és legible: %s"
-+msgstr "El directori no és llegible: %s"
-
- #: gtk/gtkfilesel.c:551
- msgid "Create Dir"
--msgstr "Crear directori"
-+msgstr "Crea un directori"
-
--#: gtk/gtkfilesel.c:562 gtk/gtkfilesel.c:937
-+#: gtk/gtkfilesel.c:562
-+#: gtk/gtkfilesel.c:937
- msgid "Delete File"
--msgstr "Esborrar fitxer"
-+msgstr "Suprimeix el fitxer"
-
--#: gtk/gtkfilesel.c:573 gtk/gtkfilesel.c:1041
-+#: gtk/gtkfilesel.c:573
-+#: gtk/gtkfilesel.c:1041
- msgid "Rename File"
--msgstr "Reanomenar fitxer"
-+msgstr "Reanomena el fitxer"
-
--#.
--#. gtk_signal_connect (GTK_OBJECT (dialog), "destroy",
--#. (GtkSignalFunc) gtk_file_selection_fileop_destroy,
--#. (gpointer) fs);
--#.
-+# gtk_signal_connect (GTK_OBJECT (dialog), "destroy",
-+# (GtkSignalFunc) gtk_file_selection_fileop_destroy,
-+# (gpointer) fs);
- #: gtk/gtkfilesel.c:734
- msgid "Error"
- msgstr "Error"
-
--#. close button
--#: gtk/gtkfilesel.c:757 gtk/gtkinputdialog.c:354
-+# close button
-+#: gtk/gtkfilesel.c:757
-+#: gtk/gtkinputdialog.c:354
- msgid "Close"
--msgstr "Tancar"
-+msgstr "Tanca"
-
- #: gtk/gtkfilesel.c:832
- msgid "Create Directory"
--msgstr "Crear directori"
-+msgstr "Crea un directori"
-
- #: gtk/gtkfilesel.c:846
- msgid "Directory name:"
- msgstr "Nom del directori:"
-
--#. buttons
-+# buttons
- #: gtk/gtkfilesel.c:859
- msgid "Create"
--msgstr "Crear"
-+msgstr "Crea"
-
- #. buttons
- #: gtk/gtkfilesel.c:959
- msgid "Delete"
--msgstr "Esborrar"
-+msgstr "Suprimeix"
-
- #. buttons
- #: gtk/gtkfilesel.c:1074
- msgid "Rename"
--msgstr "Reanomenar"
-+msgstr "Reanomena"
-
- #: gtk/gtkfilesel.c:1457
- msgid "Selection: "
-@@ -144,19 +154,19 @@
-
- #: gtk/gtkfontsel.c:214
- msgid "Set Width:"
--msgstr "Establir amplària:"
-+msgstr "Estableix l'amplada:"
-
- #: gtk/gtkfontsel.c:215
- msgid "Add Style:"
--msgstr "Afegir estil:"
-+msgstr "Afegeix un estil:"
-
- #: gtk/gtkfontsel.c:216
- msgid "Pixel Size:"
--msgstr "Tamany del píxel:"
-+msgstr "Mida del píxel:"
-
- #: gtk/gtkfontsel.c:217
- msgid "Point Size:"
--msgstr "Tamany del punt:"
-+msgstr "Mida del punt:"
-
- #: gtk/gtkfontsel.c:218
- msgid "Resolution X:"
-@@ -172,14 +182,14 @@
-
- #: gtk/gtkfontsel.c:221
- msgid "Average Width:"
--msgstr "Amplària mitjana:"
-+msgstr "Amplada mitjana:"
-
- #: gtk/gtkfontsel.c:222
- msgid "Charset:"
- msgstr "Joc de caràcters:"
-
--#. Number of internationalized titles here must match number
--#. of NULL initializers above
-+# Number of internationalized titles here must match number
-+# of NULL initializers above
- #: gtk/gtkfontsel.c:459
- msgid "Font Property"
- msgstr "Propietats de la font"
-@@ -196,7 +206,9 @@
- msgid "Font"
- msgstr "Font"
-
--#: gtk/gtkfontsel.c:504 gtk/gtkfontsel.c:2180 gtk/gtkfontsel.c:2410
-+#: gtk/gtkfontsel.c:504
-+#: gtk/gtkfontsel.c:2180
-+#: gtk/gtkfontsel.c:2410
- msgid "Font:"
- msgstr "Font:"
-
-@@ -206,11 +218,12 @@
-
- #: gtk/gtkfontsel.c:514
- msgid "Size:"
--msgstr "Tamany:"
-+msgstr "Mida:"
-
--#: gtk/gtkfontsel.c:646 gtk/gtkfontsel.c:868
-+#: gtk/gtkfontsel.c:646
-+#: gtk/gtkfontsel.c:868
- msgid "Reset Filter"
--msgstr "Reiniciar filtre"
-+msgstr "Reinicia el filtre"
-
- #: gtk/gtkfontsel.c:660
- msgid "Metric:"
-@@ -224,7 +237,7 @@
- msgid "Pixels"
- msgstr "Píxels"
-
--#. create the text entry widget
-+# create the text entry widget
- #: gtk/gtkfontsel.c:687
- msgid "Preview:"
- msgstr "Vista prèvia:"
-@@ -270,7 +283,7 @@
- msgid "*"
- msgstr "*"
-
--#. Convert '(nil)' weights to 'regular', since it looks nicer.
-+# Convert '(nil)' weights to 'regular', since it looks nicer.
- #: gtk/gtkfontsel.c:1215
- msgid "(nil)"
- msgstr "(nul)"
-@@ -279,23 +292,28 @@
- msgid "regular"
- msgstr "regular"
-
--#: gtk/gtkfontsel.c:1220 gtk/gtkfontsel.c:1972
-+#: gtk/gtkfontsel.c:1220
-+#: gtk/gtkfontsel.c:1972
- msgid "italic"
- msgstr "itàlica"
-
--#: gtk/gtkfontsel.c:1221 gtk/gtkfontsel.c:1973
-+#: gtk/gtkfontsel.c:1221
-+#: gtk/gtkfontsel.c:1973
- msgid "oblique"
--msgstr "oblíqua"
-+msgstr "obliqua"
-
--#: gtk/gtkfontsel.c:1222 gtk/gtkfontsel.c:1974
-+#: gtk/gtkfontsel.c:1222
-+#: gtk/gtkfontsel.c:1974
- msgid "reverse italic"
- msgstr "itàlica inversa"
-
--#: gtk/gtkfontsel.c:1223 gtk/gtkfontsel.c:1975
-+#: gtk/gtkfontsel.c:1223
-+#: gtk/gtkfontsel.c:1975
- msgid "reverse oblique"
--msgstr "oblíqua inversa"
-+msgstr "obliqua inversa"
-
--#: gtk/gtkfontsel.c:1224 gtk/gtkfontsel.c:1976
-+#: gtk/gtkfontsel.c:1224
-+#: gtk/gtkfontsel.c:1976
- msgid "other"
- msgstr "altra"
-
-@@ -317,9 +335,10 @@
-
- #: gtk/gtkfontsel.c:1856
- msgid "This is a 2-byte font and may not be displayed correctly."
--msgstr "Aquesta font és de 2 octets i potser no es veja correctament."
-+msgstr "Aquesta font és de 2 bytes i potser no es veurà correctament."
-
--#: gtk/gtkfontsel.c:1960 gtk/gtkinputdialog.c:607
-+#: gtk/gtkfontsel.c:1960
-+#: gtk/gtkinputdialog.c:607
- msgid "(unknown)"
- msgstr "(desconegut)"
-
-@@ -349,7 +368,7 @@
-
- #: gtk/gtkfontsel.c:3508
- msgid "Apply"
--msgstr "Aplicar"
-+msgstr "Aplica"
-
- #: gtk/gtkfontsel.c:3530
- msgid "Font Selection"
-@@ -363,7 +382,7 @@
- msgid "Gamma value"
- msgstr "Valor de gamma"
-
--#. shell and main vbox
-+# shell and main vbox
- #: gtk/gtkinputdialog.c:200
- msgid "Input"
- msgstr "Entrada"
-@@ -392,21 +411,21 @@
- msgid "Mode: "
- msgstr "Mode: "
-
--#. The axis listbox
-+# The axis listbox
- #: gtk/gtkinputdialog.c:307
- msgid "Axes"
- msgstr "Eixos"
-
--#. Keys listbox
-+# Keys listbox
- #: gtk/gtkinputdialog.c:323
- msgid "Keys"
- msgstr "Tecles"
-
--#. We create the save button in any case, so that clients can
--#. connect to it, without paying attention to whether it exits
-+# We create the save button in any case, so that clients can
-+# connect to it, without paying attention to whether it exits
- #: gtk/gtkinputdialog.c:345
- msgid "Save"
--msgstr "Guardar"
-+msgstr "Desa"
-
- #: gtk/gtkinputdialog.c:500
- msgid "X"
-@@ -432,16 +451,18 @@
- msgid "none"
- msgstr "cap"
-
--#: gtk/gtkinputdialog.c:578 gtk/gtkinputdialog.c:614
-+#: gtk/gtkinputdialog.c:578
-+#: gtk/gtkinputdialog.c:614
- msgid "(disabled)"
- msgstr "(desactivat)"
-
--#. and clear button
-+# and clear button
- #: gtk/gtkinputdialog.c:692
- msgid "clear"
--msgstr "esborrar"
-+msgstr "neteja"
-
--#: gtk/gtknotebook.c:2059 gtk/gtknotebook.c:4131
-+#: gtk/gtknotebook.c:2059
-+#: gtk/gtknotebook.c:4131
- #, c-format
- msgid "Page %u"
- msgstr "Pàgina %u"
-@@ -464,3 +485,4 @@
- #: gtk/gtktipsquery.c:180
- msgid "--- No Tip ---"
- msgstr "-- Sense pista --"
-+
---- gtk+1.2-1.2.10.orig/gdk/Makefile.in
-+++ gtk+1.2-1.2.10/gdk/Makefile.in
-@@ -1,6 +1,6 @@
--# Makefile.in generated automatically by automake 1.4 from Makefile.am
-+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
--# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -66,6 +66,8 @@
- CC = @CC@
- DATADIRNAME = @DATADIRNAME@
- DLLTOOL = @DLLTOOL@
-+ECHO = @ECHO@
-+EXEEXT = @EXEEXT@
- GDK_WLIBS = @GDK_WLIBS@
- GENCAT = @GENCAT@
- GLIB_CFLAGS = @GLIB_CFLAGS@
-@@ -101,12 +103,14 @@
- MAKEINFO = @MAKEINFO@
- MKINSTALLDIRS = @MKINSTALLDIRS@
- OBJDUMP = @OBJDUMP@
-+OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- PERL = @PERL@
- POFILES = @POFILES@
- POSUB = @POSUB@
- RANLIB = @RANLIB@
- REBUILD = @REBUILD@
-+STRIP = @STRIP@
- STRIP_BEGIN = @STRIP_BEGIN@
- STRIP_DUMMY = @STRIP_DUMMY@
- STRIP_END = @STRIP_END@
-@@ -185,9 +189,10 @@
- gdkimage.lo gdkinput.lo gdkpixmap.lo gdkproperty.lo gdkrgb.lo \
- gdkrectangle.lo gdkregion.lo gdkselection.lo gdkvisual.lo gdkwindow.lo \
- gdkxid.lo gxid_lib.lo
-+bin_PROGRAMS = @xinput_progs@
- PROGRAMS = $(bin_PROGRAMS)
-
--gxid_OBJECTS = gxid.o
-+gxid_OBJECTS = gxid.$(OBJEXT)
- gxid_DEPENDENCIES =
- gxid_LDFLAGS =
- CFLAGS = @CFLAGS@
-@@ -202,18 +207,25 @@
-
- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
--TAR = gtar
-+TAR = tar
- GZIP_ENV = --best
-+DEP_FILES = .deps/gdk.P .deps/gdkcc.P .deps/gdkcolor.P \
-+.deps/gdkcursor.P .deps/gdkdnd.P .deps/gdkdraw.P .deps/gdkevents.P \
-+.deps/gdkfont.P .deps/gdkgc.P .deps/gdkglobals.P .deps/gdkim.P \
-+.deps/gdkimage.P .deps/gdkinput.P .deps/gdkpixmap.P .deps/gdkproperty.P \
-+.deps/gdkrectangle.P .deps/gdkregion.P .deps/gdkrgb.P \
-+.deps/gdkselection.P .deps/gdkvisual.P .deps/gdkwindow.P .deps/gdkxid.P \
-+.deps/gxid.P .deps/gxid_lib.P
- SOURCES = $(libgdk_la_SOURCES) $(gxid_SOURCES)
- OBJECTS = $(libgdk_la_OBJECTS) $(gxid_OBJECTS)
-
- all: all-redirect
- .SUFFIXES:
--.SUFFIXES: .S .c .lo .o .s
-+.SUFFIXES: .S .c .lo .o .obj .s
- $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
-- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps gdk/Makefile
-+ cd $(top_srcdir) && $(AUTOMAKE) --gnu gdk/Makefile
-
--Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-@@ -243,8 +255,10 @@
- $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
- done
-
--.c.o:
-- $(COMPILE) -c $<
-+# FIXME: We should only use cygpath when building on Windows,
-+# and only if it is available.
-+.c.obj:
-+ $(COMPILE) -c `cygpath -w $<`
-
- .s.o:
- $(COMPILE) -c $<
-@@ -254,6 +268,7 @@
-
- mostlyclean-compile:
- -rm -f *.o core *.core
-+ -rm -f *.$(OBJEXT)
-
- clean-compile:
-
-@@ -262,9 +277,6 @@
-
- maintainer-clean-compile:
-
--.c.lo:
-- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
--
- .s.lo:
- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-@@ -309,8 +321,8 @@
- rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
- done
-
--gxid: $(gxid_OBJECTS) $(gxid_DEPENDENCIES)
-- @rm -f gxid
-+gxid$(EXEEXT): $(gxid_OBJECTS) $(gxid_DEPENDENCIES)
-+ @rm -f gxid$(EXEEXT)
- $(LINK) $(gxid_LDFLAGS) $(gxid_OBJECTS) $(gxid_LDADD) $(LIBS)
-
- install-libgdkincludeHEADERS: $(libgdkinclude_HEADERS)
-@@ -346,7 +358,7 @@
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-+ || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP))
-
- mostlyclean-tags:
-
-@@ -362,6 +374,11 @@
- subdir = gdk
-
- distdir: $(DISTFILES)
-+ here=`cd $(top_builddir) && pwd`; \
-+ top_distdir=`cd $(top_distdir) && pwd`; \
-+ distdir=`cd $(distdir) && pwd`; \
-+ cd $(top_srcdir) \
-+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu gdk/Makefile
- @for file in $(DISTFILES); do \
- d=$(srcdir); \
- if test -d $$d/$$file; then \
-@@ -372,55 +389,38 @@
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
--gdk.lo gdk.o : gdk.c ../config.h gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
-- gdkprivate.h gdkinput.h gdkx.h gdkprivate.h gdki18n.h \
-- gdkkeysyms.h
--gdkcc.lo gdkcc.o : gdkcc.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
-- gdkprivate.h gdkx.h gdkprivate.h
--gdkcolor.lo gdkcolor.o : gdkcolor.c gdk.h gdktypes.h gdkcursors.h \
-- gdkrgb.h gdkprivate.h gdkx.h gdkprivate.h
--gdkcursor.lo gdkcursor.o : gdkcursor.c gdk.h gdktypes.h gdkcursors.h \
-- gdkrgb.h gdkprivate.h
--gdkdnd.lo gdkdnd.o : gdkdnd.c gdkx.h gdkprivate.h gdktypes.h \
-- gdkcursors.h gdk.h gdkrgb.h
--gdkdraw.lo gdkdraw.o : gdkdraw.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
-- gdkprivate.h
--gdkevents.lo gdkevents.o : gdkevents.c gdk.h gdktypes.h gdkcursors.h \
-- gdkrgb.h gdkx.h gdkprivate.h gdkprivate.h gdkkeysyms.h \
-- ../config.h gdkinput.h
--gdkfont.lo gdkfont.o : gdkfont.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
-- gdkprivate.h ../config.h
--gdkgc.lo gdkgc.o : gdkgc.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
-- gdkprivate.h
--gdkglobals.lo gdkglobals.o : gdkglobals.c gdktypes.h gdkcursors.h \
-- gdkprivate.h gdktypes.h ../config.h
--gdkim.lo gdkim.o : gdkim.c gdk.h gdktypes.h gdkcursors.h gdkrgb.h \
-- gdkprivate.h gdki18n.h gdkx.h gdkprivate.h ../config.h
--gdkimage.lo gdkimage.o : gdkimage.c ../config.h gdk.h gdktypes.h \
-- gdkcursors.h gdkrgb.h gdkprivate.h
--gdkinput.lo gdkinput.o : gdkinput.c ../config.h gdk.h gdktypes.h \
-- gdkcursors.h gdkrgb.h gdkx.h gdkprivate.h gdkprivate.h \
-- gdkinput.h gdkinputnone.h gdkinputcommon.h gdkinputxfree.h \
-- gdkinputgxi.h
--gdkpixmap.lo gdkpixmap.o : gdkpixmap.c ../config.h gdk.h gdktypes.h \
-- gdkcursors.h gdkrgb.h gdkprivate.h
--gdkproperty.lo gdkproperty.o : gdkproperty.c gdk.h gdktypes.h \
-- gdkcursors.h gdkrgb.h gdkprivate.h
--gdkrectangle.lo gdkrectangle.o : gdkrectangle.c gdk.h gdktypes.h \
-- gdkcursors.h gdkrgb.h
--gdkregion.lo gdkregion.o : gdkregion.c gdk.h gdktypes.h gdkcursors.h \
-- gdkrgb.h gdkprivate.h
--gdkrgb.lo gdkrgb.o : gdkrgb.c ../config.h gdk.h gdktypes.h gdkcursors.h \
-- gdkrgb.h gdkprivate.h gdkrgb.h
--gdkselection.lo gdkselection.o : gdkselection.c gdk.h gdktypes.h \
-- gdkcursors.h gdkrgb.h gdkprivate.h gdkx.h gdkprivate.h
--gdkvisual.lo gdkvisual.o : gdkvisual.c gdk.h gdktypes.h gdkcursors.h \
-- gdkrgb.h gdkprivate.h gdkx.h gdkprivate.h
--gdkwindow.lo gdkwindow.o : gdkwindow.c gdk.h gdktypes.h gdkcursors.h \
-- gdkrgb.h ../config.h gdkinput.h gdkprivate.h MwmUtil.h
--gdkxid.lo gdkxid.o : gdkxid.c gdkprivate.h gdktypes.h gdkcursors.h
--gxid_lib.lo gxid_lib.o : gxid_lib.c ../config.h gxid_lib.h gxid_proto.h
-
-+DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
-+
-+-include $(DEP_FILES)
-+
-+mostlyclean-depend:
-+
-+clean-depend:
-+
-+distclean-depend:
-+ -rm -rf .deps
-+
-+maintainer-clean-depend:
-+
-+%.o: %.c
-+ @echo '$(COMPILE) -c $<'; \
-+ $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @-cp .deps/$(*F).pp .deps/$(*F).P; \
-+ tr ' ' '\012' < .deps/$(*F).pp \
-+ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
-+ >> .deps/$(*F).P; \
-+ rm .deps/$(*F).pp
-+
-+%.lo: %.c
-+ @echo '$(LTCOMPILE) -c $<'; \
-+ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
-+ < .deps/$(*F).pp > .deps/$(*F).P; \
-+ tr ' ' '\012' < .deps/$(*F).pp \
-+ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
-+ >> .deps/$(*F).P; \
-+ rm -f .deps/$(*F).pp
- info-am:
- info: info-am
- dvi-am:
-@@ -462,19 +462,19 @@
- -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
- mostlyclean-am: mostlyclean-libLTLIBRARIES mostlyclean-compile \
- mostlyclean-libtool mostlyclean-binPROGRAMS \
-- mostlyclean-tags mostlyclean-generic
-+ mostlyclean-tags mostlyclean-depend mostlyclean-generic
-
- mostlyclean: mostlyclean-am
-
- clean-am: clean-libLTLIBRARIES clean-compile clean-libtool \
-- clean-binPROGRAMS clean-tags clean-generic \
-+ clean-binPROGRAMS clean-tags clean-depend clean-generic \
- mostlyclean-am
-
- clean: clean-am
-
- distclean-am: distclean-libLTLIBRARIES distclean-compile \
- distclean-libtool distclean-binPROGRAMS distclean-tags \
-- distclean-generic clean-am
-+ distclean-depend distclean-generic clean-am
- -rm -f libtool
-
- distclean: distclean-am
-@@ -482,7 +482,8 @@
- maintainer-clean-am: maintainer-clean-libLTLIBRARIES \
- maintainer-clean-compile maintainer-clean-libtool \
- maintainer-clean-binPROGRAMS maintainer-clean-tags \
-- maintainer-clean-generic distclean-am
-+ maintainer-clean-depend maintainer-clean-generic \
-+ distclean-am
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
-
-@@ -497,12 +498,13 @@
- clean-binPROGRAMS maintainer-clean-binPROGRAMS uninstall-binPROGRAMS \
- install-binPROGRAMS uninstall-libgdkincludeHEADERS \
- install-libgdkincludeHEADERS tags mostlyclean-tags distclean-tags \
--clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
--check-am installcheck-am installcheck install-exec-am install-exec \
--install-data-am install-data install-am install uninstall-am uninstall \
--all-redirect all-am all installdirs mostlyclean-generic \
--distclean-generic clean-generic maintainer-clean-generic clean \
--mostlyclean distclean maintainer-clean
-+clean-tags maintainer-clean-tags distdir mostlyclean-depend \
-+distclean-depend clean-depend maintainer-clean-depend info-am info \
-+dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
-+install-exec install-data-am install-data install-am install \
-+uninstall-am uninstall all-redirect all-am all installdirs \
-+mostlyclean-generic distclean-generic clean-generic \
-+maintainer-clean-generic clean mostlyclean distclean maintainer-clean
-
-
- #
---- gtk+1.2-1.2.10.orig/gdk/gdk.c
-+++ gtk+1.2-1.2.10/gdk/gdk.c
-@@ -989,7 +989,7 @@
- void
- gdk_beep (void)
- {
-- XBell(gdk_display, 100);
-+ XBell(gdk_display, 0);
- }
-
- /*
---- gtk+1.2-1.2.10.orig/gdk/gdkevents.c
-+++ gtk+1.2-1.2.10/gdk/gdkevents.c
-@@ -383,6 +383,7 @@
- struct _GdkExposeInfo
- {
- Window window;
-+ GdkWindowPrivate *toplevel_window;
- gboolean seen_nonmatching;
- };
-
-@@ -400,10 +401,21 @@
- * we'll get a whole bunch of them interspersed with
- * expose events.
- */
-- if (xevent->xany.type != Expose &&
-- xevent->xany.type != GravityNotify)
-+ switch (xevent->xany.type)
- {
-+ case Expose:
-+ case GravityNotify:
-+ break;
-+ case ConfigureNotify:
-+ if (xevent->xconfigure.window != info->toplevel_window->xwindow)
-+ break;
-+ if (xevent->xconfigure.width == info->toplevel_window->width &&
-+ xevent->xconfigure.height == info->toplevel_window->height)
-+ break;
-+ /* Fall through */
-+ default:
- info->seen_nonmatching = TRUE;
-+ break;
- }
-
- if (info->seen_nonmatching ||
-@@ -429,6 +441,7 @@
- GdkEvent event;
-
- info.window = xevent->xany.window;
-+ info.toplevel_window = (GdkWindowPrivate *) gdk_window_get_toplevel (window);
- info.seen_nonmatching = FALSE;
-
- rect1.x = xevent->xexpose.x;
---- gtk+1.2-1.2.10.orig/gdk/gdkfont.c
-+++ gtk+1.2-1.2.10/gdk/gdkfont.c
-@@ -26,6 +26,8 @@
-
- #include <X11/Xlib.h>
- #include <X11/Xos.h>
-+#include <locale.h>
-+#include <langinfo.h>
- #include "gdk.h"
- #include "gdkprivate.h"
-
-@@ -173,9 +175,24 @@
- if (missing_charset_count)
- {
- gint i;
-- g_warning ("Missing charsets in FontSet creation\n");
-- for (i=0;i<missing_charset_count;i++)
-- g_warning (" %s\n", missing_charset_list[i]);
-+ const char *codeset;
-+
-+ codeset = nl_langinfo (CODESET);
-+
-+ /* Hack - UTF-8 is likely to be rendered with a list of
-+ * possible legacy fallback charsets, so a failure here
-+ * shouldn't be warned about. But we don't want to suppress
-+ * this warning in general, since for other charcter sets
-+ * it gives a useful indication of what went wrong.
-+ */
-+ if (g_strcasecmp (codeset, "utf-8") != 0 &&
-+ g_strcasecmp (codeset, "utf8") != 0) {
-+ g_printerr ("The font \"%s\" does not support all the required character sets for the current locale \"%s\"\n",
-+ fontset_name, setlocale (LC_ALL, NULL));
-+ for (i=0;i<missing_charset_count;i++)
-+ g_printerr (" (Missing character set \"%s\")\n",
-+ missing_charset_list[i]);
-+ }
- XFreeStringList (missing_charset_list);
- }
-
-@@ -445,7 +462,6 @@
- GdkFontPrivate *private;
- XCharStruct *chars;
- gint width;
-- guint ch = character & 0xff; /* get rid of sign-extension */
- XFontStruct *xfont;
- XFontSet fontset;
-
-@@ -458,21 +474,7 @@
- case GDK_FONT_FONT:
- /* only 8 bits characters are considered here */
- xfont = (XFontStruct *) private->xfont;
-- if ((xfont->min_byte1 == 0) &&
-- (xfont->max_byte1 == 0) &&
-- (ch >= xfont->min_char_or_byte2) &&
-- (ch <= xfont->max_char_or_byte2))
-- {
-- chars = xfont->per_char;
-- if (chars)
-- width = chars[ch - xfont->min_char_or_byte2].width;
-- else
-- width = xfont->min_bounds.width;
-- }
-- else
-- {
-- width = XTextWidth (xfont, &character, 1);
-- }
-+ width = XTextWidth (xfont, &character, 1);
- break;
- case GDK_FONT_FONTSET:
- fontset = (XFontSet) private->xfont;
---- gtk+1.2-1.2.10.orig/gdk/gdkselection.c
-+++ gtk+1.2-1.2.10/gdk/gdkselection.c
-@@ -191,73 +191,6 @@
- gdk_send_xevent (requestor, False, NoEventMask, (XEvent*) &xevent);
- }
-
--
--/* The output of XmbTextPropertyToTextList may include stuff not valid
-- * for COMPOUND_TEXT. This routine tries to correct this by:
-- *
-- * a) Canonicalizing CR LF and CR to LF
-- * b) Stripping out all other non-allowed control characters
-- *
-- * See the COMPOUND_TEXT spec distributed with X for explanations
-- * what is allowed.
-- */
--static gchar *
--sanitize_ctext (const char *str,
-- gint *length)
--{
-- gchar *result = g_malloc (*length + 1);
-- gint out_length = 0;
-- gint i;
-- const guchar *ustr = (const guchar *)str;
--
-- for (i=0; i < *length; i++)
-- {
-- guchar c = ustr[i];
--
-- if (c == '\r')
-- {
-- result[out_length++] = '\n';
-- if (i + 1 < *length && ustr[i + 1] == '\n')
-- i++;
-- }
-- else if (c == 27 /* ESC */)
-- {
-- /* Check for "extended segments, which can contain arbitrary
-- * octets. See CTEXT spec, section 6.
-- */
--
-- if (i + 5 < *length &&
-- ustr[i + 1] == '%' &&
-- ustr[i + 2] == '/' &&
-- (ustr[i + 3] >= 48 && ustr[i + 3] <= 52) &&
-- ustr[i + 4] >= 128 &&
-- ustr[i + 5] >= 128)
-- {
-- int extra_len = 6 + (ustr[i + 4] - 128) * 128 + ustr[i + 5] - 128;
-- extra_len = MAX (extra_len, *length - i);
--
-- memcpy (result + out_length, ustr + i, extra_len);
-- out_length += extra_len;
-- i += extra_len - 1;
-- }
-- else
-- result[out_length++] = c;
-- }
-- else if (c == '\n' || c == '\t' || c == 27 /* ESC */ ||
-- (c >= 32 && c <= 127) || /* GL */
-- c == 155 /* CONTROL SEQUENCE INTRODUCER */ ||
-- (c >= 160 && c <= 255)) /* GR */
-- {
-- result[out_length++] = c;
-- }
-- }
--
-- result[out_length] = '\0';
-- *length = out_length;
--
-- return result;
--}
--
- gint
- gdk_text_property_to_text_list (GdkAtom encoding, gint format,
- guchar *text, gint length,
-@@ -266,32 +199,16 @@
- XTextProperty property;
- gint count = 0;
- gint res;
-- gchar *sanitized_text = NULL;
-
- if (!list)
- return 0;
-
- property.encoding = encoding;
- property.format = format;
--
-- if (encoding == gdk_atom_intern ("COMPOUND_TEXT", FALSE) && format == 8)
-- {
-- gint sanitized_text_length = length;
--
-- property.value = sanitized_text = sanitize_ctext (text, &sanitized_text_length);
-- property.nitems = sanitized_text_length;
-- }
-- else
-- {
-- property.value = text;
-- property.nitems = length;
-- }
--
-+ property.value = text;
-+ property.nitems = length;
- res = XmbTextPropertyToTextList (GDK_DISPLAY(), &property, list, &count);
-
-- if (sanitized_text)
-- g_free (sanitized_text);
--
- if (res == XNoMemory || res == XLocaleNotSupported ||
- res == XConverterNotFound)
- return 0;
-@@ -314,8 +231,6 @@
- {
- gint res;
- XTextProperty property;
-- gint sanitized_text_length;
-- gchar *sanitized_text;
-
- res = XmbTextListToTextProperty (GDK_DISPLAY(),
- (char **)&str, 1, XCompoundTextStyle,
-@@ -334,17 +249,10 @@
- *encoding = property.encoding;
- if (format)
- *format = property.format;
--
-- sanitized_text_length = property.nitems;
-- sanitized_text = sanitize_ctext (property.value, &sanitized_text_length);
--
- if (ctext)
-- *ctext = sanitized_text;
-- else
-- g_free (sanitized_text);
--
-+ *ctext = g_strdup (property.value);
- if (length)
-- *length = sanitized_text_length;
-+ *length = property.nitems;
-
- if (property.value)
- XFree (property.value);
---- gtk+1.2-1.2.10.orig/gtk/Makefile.in
-+++ gtk+1.2-1.2.10/gtk/Makefile.in
-@@ -1,6 +1,6 @@
--# Makefile.in generated automatically by automake 1.4 from Makefile.am
-+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
--# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -66,6 +66,8 @@
- CC = @CC@
- DATADIRNAME = @DATADIRNAME@
- DLLTOOL = @DLLTOOL@
-+ECHO = @ECHO@
-+EXEEXT = @EXEEXT@
- GDK_WLIBS = @GDK_WLIBS@
- GENCAT = @GENCAT@
- GLIB_CFLAGS = @GLIB_CFLAGS@
-@@ -101,12 +103,14 @@
- MAKEINFO = @MAKEINFO@
- MKINSTALLDIRS = @MKINSTALLDIRS@
- OBJDUMP = @OBJDUMP@
-+OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- PERL = @PERL@
- POFILES = @POFILES@
- POSUB = @POSUB@
- RANLIB = @RANLIB@
- REBUILD = @REBUILD@
-+STRIP = @STRIP@
- STRIP_BEGIN = @STRIP_BEGIN@
- STRIP_DUMMY = @STRIP_DUMMY@
- STRIP_END = @STRIP_END@
-@@ -135,9 +139,8 @@
-
- # libtool stuff: set version and export symbols for resolving
- libgtkincludedir = $(includedir)/gtk-1.2/gtk
--libgtk_la_LDFLAGS = @STRIP_BEGIN@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic @GLIB_DEPLIBS@ @x_ldflags@ @x_libs@ -lm @STRIP_END@
-+libgtk_la_LDFLAGS = @STRIP_BEGIN@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic @GLIB_DEPLIBS@ @x_ldflags@ @x_libs@ -lm $(top_builddir)/gdk/libgdk.la @STRIP_END@
-
--# $(top_builddir)/gdk/libgdk.la
-
- #
- # setup source file variables
-@@ -191,7 +194,7 @@
- CLEANFILES = $(gen_sources)
-
- gtkconfdir = $(sysconfdir)/gtk
--gtkconf_DATA = gtkrc.az gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255
-+gtkconf_DATA = gtkrc.az gtkrc.he gtkrc.hy gtkrc.ja gtkrc.ko gtkrc.ru gtkrc.th gtkrc.uk gtkrc.utf-8 gtkrc.iso-8859-2 gtkrc.iso-8859-3 gtkrc.iso-8859-5 gtkrc.iso-8859-7 gtkrc.iso-8859-9 gtkrc.iso-8859-13 gtkrc.iso-8859-14 gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255
-
-
- #
-@@ -252,25 +255,28 @@
- gtktooltips.lo gtktree.lo gtktreeitem.lo gtktypeutils.lo gtkvbbox.lo \
- gtkvbox.lo gtkviewport.lo gtkvpaned.lo gtkvruler.lo gtkvscale.lo \
- gtkvscrollbar.lo gtkvseparator.lo gtkwidget.lo gtkwindow.lo fnmatch.lo
-+noinst_PROGRAMS = testgtk$(EXEEXT) testinput$(EXEEXT) \
-+testselection$(EXEEXT) testrgb$(EXEEXT) testdnd$(EXEEXT) \
-+simple$(EXEEXT)
- PROGRAMS = $(noinst_PROGRAMS)
-
- testgtk_SOURCES = testgtk.c
--testgtk_OBJECTS = testgtk.o
-+testgtk_OBJECTS = testgtk.$(OBJEXT)
- testgtk_LDFLAGS =
- testinput_SOURCES = testinput.c
--testinput_OBJECTS = testinput.o
-+testinput_OBJECTS = testinput.$(OBJEXT)
- testinput_LDFLAGS =
- testselection_SOURCES = testselection.c
--testselection_OBJECTS = testselection.o
-+testselection_OBJECTS = testselection.$(OBJEXT)
- testselection_LDFLAGS =
- testrgb_SOURCES = testrgb.c
--testrgb_OBJECTS = testrgb.o
-+testrgb_OBJECTS = testrgb.$(OBJEXT)
- testrgb_LDFLAGS =
- testdnd_SOURCES = testdnd.c
--testdnd_OBJECTS = testdnd.o
-+testdnd_OBJECTS = testdnd.$(OBJEXT)
- testdnd_LDFLAGS =
- simple_SOURCES = simple.c
--simple_OBJECTS = simple.o
-+simple_OBJECTS = simple.$(OBJEXT)
- simple_LDFLAGS =
- CFLAGS = @CFLAGS@
- COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-@@ -286,18 +292,52 @@
-
- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
--TAR = gtar
-+TAR = tar
- GZIP_ENV = --best
-+DEP_FILES = .deps/fnmatch.P .deps/gtkaccelgroup.P .deps/gtkaccellabel.P \
-+.deps/gtkadjustment.P .deps/gtkalignment.P .deps/gtkarg.P \
-+.deps/gtkarrow.P .deps/gtkaspectframe.P .deps/gtkbbox.P .deps/gtkbin.P \
-+.deps/gtkbindings.P .deps/gtkbox.P .deps/gtkbutton.P \
-+.deps/gtkcalendar.P .deps/gtkcheckbutton.P .deps/gtkcheckmenuitem.P \
-+.deps/gtkclist.P .deps/gtkcolorsel.P .deps/gtkcombo.P \
-+.deps/gtkcontainer.P .deps/gtkctree.P .deps/gtkcurve.P .deps/gtkdata.P \
-+.deps/gtkdialog.P .deps/gtkdnd.P .deps/gtkdrawingarea.P \
-+.deps/gtkeditable.P .deps/gtkentry.P .deps/gtkeventbox.P \
-+.deps/gtkfilesel.P .deps/gtkfixed.P .deps/gtkfontsel.P .deps/gtkframe.P \
-+.deps/gtkgamma.P .deps/gtkgc.P .deps/gtkhandlebox.P .deps/gtkhbbox.P \
-+.deps/gtkhbox.P .deps/gtkhpaned.P .deps/gtkhruler.P .deps/gtkhscale.P \
-+.deps/gtkhscrollbar.P .deps/gtkhseparator.P .deps/gtkimage.P \
-+.deps/gtkinputdialog.P .deps/gtkinvisible.P .deps/gtkitem.P \
-+.deps/gtkitemfactory.P .deps/gtklabel.P .deps/gtklayout.P \
-+.deps/gtklist.P .deps/gtklistitem.P .deps/gtkmain.P .deps/gtkmarshal.P \
-+.deps/gtkmenu.P .deps/gtkmenubar.P .deps/gtkmenufactory.P \
-+.deps/gtkmenuitem.P .deps/gtkmenushell.P .deps/gtkmisc.P \
-+.deps/gtknotebook.P .deps/gtkobject.P .deps/gtkoptionmenu.P \
-+.deps/gtkpacker.P .deps/gtkpaned.P .deps/gtkpixmap.P .deps/gtkplug.P \
-+.deps/gtkpreview.P .deps/gtkprogress.P .deps/gtkprogressbar.P \
-+.deps/gtkradiobutton.P .deps/gtkradiomenuitem.P .deps/gtkrange.P \
-+.deps/gtkrc.P .deps/gtkruler.P .deps/gtkscale.P .deps/gtkscrollbar.P \
-+.deps/gtkscrolledwindow.P .deps/gtkselection.P .deps/gtkseparator.P \
-+.deps/gtksignal.P .deps/gtksocket.P .deps/gtkspinbutton.P \
-+.deps/gtkstatusbar.P .deps/gtkstyle.P .deps/gtktable.P \
-+.deps/gtktearoffmenuitem.P .deps/gtktext.P .deps/gtkthemes.P \
-+.deps/gtktipsquery.P .deps/gtktogglebutton.P .deps/gtktoolbar.P \
-+.deps/gtktooltips.P .deps/gtktree.P .deps/gtktreeitem.P \
-+.deps/gtktypeutils.P .deps/gtkvbbox.P .deps/gtkvbox.P \
-+.deps/gtkviewport.P .deps/gtkvpaned.P .deps/gtkvruler.P \
-+.deps/gtkvscale.P .deps/gtkvscrollbar.P .deps/gtkvseparator.P \
-+.deps/gtkwidget.P .deps/gtkwindow.P .deps/simple.P .deps/testdnd.P \
-+.deps/testgtk.P .deps/testinput.P .deps/testrgb.P .deps/testselection.P
- SOURCES = $(libgtk_la_SOURCES) testgtk.c testinput.c testselection.c testrgb.c testdnd.c simple.c
--OBJECTS = $(libgtk_la_OBJECTS) testgtk.o testinput.o testselection.o testrgb.o testdnd.o simple.o
-+OBJECTS = $(libgtk_la_OBJECTS) testgtk.$(OBJEXT) testinput.$(OBJEXT) testselection.$(OBJEXT) testrgb.$(OBJEXT) testdnd.$(OBJEXT) simple.$(OBJEXT)
-
- all: all-redirect
- .SUFFIXES:
--.SUFFIXES: .S .c .lo .o .s
-+.SUFFIXES: .S .c .lo .o .obj .s
- $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
-- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps gtk/Makefile
-+ cd $(top_srcdir) && $(AUTOMAKE) --gnu gtk/Makefile
-
--Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-@@ -329,8 +369,10 @@
- $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
- done
-
--.c.o:
-- $(COMPILE) -c $<
-+# FIXME: We should only use cygpath when building on Windows,
-+# and only if it is available.
-+.c.obj:
-+ $(COMPILE) -c `cygpath -w $<`
-
- .s.o:
- $(COMPILE) -c $<
-@@ -340,6 +382,7 @@
-
- mostlyclean-compile:
- -rm -f *.o core *.core
-+ -rm -f *.$(OBJEXT)
-
- clean-compile:
-
-@@ -348,9 +391,6 @@
-
- maintainer-clean-compile:
-
--.c.lo:
-- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
--
- .s.lo:
- $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-@@ -379,28 +419,28 @@
-
- maintainer-clean-noinstPROGRAMS:
-
--testgtk: $(testgtk_OBJECTS) $(testgtk_DEPENDENCIES)
-- @rm -f testgtk
-+testgtk$(EXEEXT): $(testgtk_OBJECTS) $(testgtk_DEPENDENCIES)
-+ @rm -f testgtk$(EXEEXT)
- $(LINK) $(testgtk_LDFLAGS) $(testgtk_OBJECTS) $(testgtk_LDADD) $(LIBS)
-
--testinput: $(testinput_OBJECTS) $(testinput_DEPENDENCIES)
-- @rm -f testinput
-+testinput$(EXEEXT): $(testinput_OBJECTS) $(testinput_DEPENDENCIES)
-+ @rm -f testinput$(EXEEXT)
- $(LINK) $(testinput_LDFLAGS) $(testinput_OBJECTS) $(testinput_LDADD) $(LIBS)
-
--testselection: $(testselection_OBJECTS) $(testselection_DEPENDENCIES)
-- @rm -f testselection
-+testselection$(EXEEXT): $(testselection_OBJECTS) $(testselection_DEPENDENCIES)
-+ @rm -f testselection$(EXEEXT)
- $(LINK) $(testselection_LDFLAGS) $(testselection_OBJECTS) $(testselection_LDADD) $(LIBS)
-
--testrgb: $(testrgb_OBJECTS) $(testrgb_DEPENDENCIES)
-- @rm -f testrgb
-+testrgb$(EXEEXT): $(testrgb_OBJECTS) $(testrgb_DEPENDENCIES)
-+ @rm -f testrgb$(EXEEXT)
- $(LINK) $(testrgb_LDFLAGS) $(testrgb_OBJECTS) $(testrgb_LDADD) $(LIBS)
-
--testdnd: $(testdnd_OBJECTS) $(testdnd_DEPENDENCIES)
-- @rm -f testdnd
-+testdnd$(EXEEXT): $(testdnd_OBJECTS) $(testdnd_DEPENDENCIES)
-+ @rm -f testdnd$(EXEEXT)
- $(LINK) $(testdnd_LDFLAGS) $(testdnd_OBJECTS) $(testdnd_LDADD) $(LIBS)
-
--simple: $(simple_OBJECTS) $(simple_DEPENDENCIES)
-- @rm -f simple
-+simple$(EXEEXT): $(simple_OBJECTS) $(simple_DEPENDENCIES)
-+ @rm -f simple$(EXEEXT)
- $(LINK) $(simple_LDFLAGS) $(simple_OBJECTS) $(simple_LDADD) $(LIBS)
-
- install-gtkconfDATA: $(gtkconf_DATA)
-@@ -455,7 +495,7 @@
- awk ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-- || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
-+ || (cd $(srcdir) && etags -o $$here/TAGS $(ETAGS_ARGS) $$tags $$unique $(LISP))
-
- mostlyclean-tags:
-
-@@ -471,6 +511,11 @@
- subdir = gtk
-
- distdir: $(DISTFILES)
-+ here=`cd $(top_builddir) && pwd`; \
-+ top_distdir=`cd $(top_distdir) && pwd`; \
-+ distdir=`cd $(distdir) && pwd`; \
-+ cd $(top_srcdir) \
-+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu gtk/Makefile
- @for file in $(DISTFILES); do \
- d=$(srcdir); \
- if test -d $$d/$$file; then \
-@@ -481,866 +526,38 @@
- || cp -p $$d/$$file $(distdir)/$$file || :; \
- fi; \
- done
--fnmatch.lo fnmatch.o : fnmatch.c ../config.h fnmatch.h
--gtkaccelgroup.lo gtkaccelgroup.o : gtkaccelgroup.c gtkaccelgroup.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h ../gdk/gdkkeysyms.h \
-- gtksignal.h gtkmarshal.h gtkwidget.h gtkaccelgroup.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h
--gtkaccellabel.lo gtkaccellabel.o : gtkaccellabel.c gtkmain.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h \
-- gtkaccellabel.h gtklabel.h gtkmisc.h
--gtkadjustment.lo gtkadjustment.o : gtkadjustment.c gtkadjustment.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkdata.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtksignal.h \
-- gtkmarshal.h
--gtkalignment.lo gtkalignment.o : gtkalignment.c gtkalignment.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h
--gtkarg.lo gtkarg.o : gtkarg.c gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkargcollector.c
--gtkarrow.lo gtkarrow.o : gtkarrow.c gtkarrow.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h
--gtkaspectframe.lo gtkaspectframe.o : gtkaspectframe.c gtkaspectframe.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h gtkframe.h
--gtkbbox.lo gtkbbox.o : gtkbbox.c gtkbbox.h gtkbox.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtkbin.lo gtkbin.o : gtkbin.c gtkbin.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkcontainer.h gtkenums.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h
--gtkbindings.lo gtkbindings.o : gtkbindings.c gtkbindings.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtksignal.h gtkmarshal.h gtkwidget.h \
-- gtkaccelgroup.h gtkadjustment.h gtkdata.h gtkstyle.h gtkrc.h \
-- gtkwidget.h
--gtkbox.lo gtkbox.o : gtkbox.c gtkbox.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkcontainer.h gtkenums.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h
--gtkbutton.lo gtkbutton.o : gtkbutton.c gtkbutton.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtklabel.h \
-- gtkmisc.h gtkmain.h gtksignal.h gtkmarshal.h
--gtkcalendar.lo gtkcalendar.o : gtkcalendar.c gtkcalendar.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtksignal.h gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkwidget.h \
-- gtkaccelgroup.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- ../gdk/gdkkeysyms.h
--gtkcheckbutton.lo gtkcheckbutton.o : gtkcheckbutton.c gtkcheckbutton.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtktogglebutton.h gtkbutton.h gtkbin.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtklabel.h \
-- gtkmisc.h
--gtkcheckmenuitem.lo gtkcheckmenuitem.o : gtkcheckmenuitem.c \
-- gtkcheckmenuitem.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmenuitem.h gtkitem.h \
-- gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkaccellabel.h \
-- gtklabel.h gtkmisc.h gtksignal.h gtkmarshal.h
--gtkclist.lo gtkclist.o : gtkclist.c ../config.h gtkmain.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkclist.h gtksignal.h gtkmarshal.h \
-- gtkalignment.h gtkbin.h gtkcontainer.h gtklabel.h gtkmisc.h \
-- gtkbutton.h gtkhscrollbar.h gtkscrollbar.h gtkrange.h \
-- gtkvscrollbar.h gtkbindings.h gtkdnd.h gtkselection.h \
-- gtkwindow.h ../gdk/gdkx.h ../gdk/gdkprivate.h \
-- ../gdk/gdkkeysyms.h
--gtkcolorsel.lo gtkcolorsel.o : gtkcolorsel.c ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkcolorsel.h gtkwindow.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h gtkbin.h \
-- gtkcontainer.h gtkwidget.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtkvbox.h gtkbox.h gtkframe.h gtkpreview.h gtkbutton.h \
-- gtkentry.h gtkeditable.h gtkhbox.h gtklabel.h gtkmisc.h \
-- gtkmain.h gtksignal.h gtkmarshal.h gtkrange.h gtkscale.h \
-- gtkhscale.h gtktable.h gtkeventbox.h gtkwindow.h gtkhbbox.h \
-- gtkbbox.h gtkintl.h ../config.h gtkdnd.h gtkselection.h \
-- gtkselection.h
--gtkcombo.lo gtkcombo.o : gtkcombo.c gtkarrow.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtklabel.h gtklist.h gtkcontainer.h \
-- gtklistitem.h gtkitem.h gtkbin.h gtkentry.h gtkeditable.h \
-- gtkeventbox.h gtkbutton.h gtklistitem.h gtkscrolledwindow.h \
-- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
-- gtkviewport.h gtkmain.h gtksignal.h gtkmarshal.h gtkwindow.h \
-- ../gdk/gdkkeysyms.h gtkcombo.h gtkhbox.h gtkbox.h gtkframe.h
--gtkcontainer.lo gtkcontainer.o : gtkcontainer.c gtkcontainer.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkprivate.h \
-- gtksignal.h gtkmarshal.h gtkmain.h
--gtkctree.lo gtkctree.o : gtkctree.c gtkctree.h gtkclist.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtksignal.h gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkalignment.h \
-- gtkbin.h gtkcontainer.h gtkwidget.h gtkaccelgroup.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtklabel.h gtkmisc.h \
-- gtkbutton.h gtkhscrollbar.h gtkscrollbar.h gtkrange.h \
-- gtkvscrollbar.h gtkbindings.h gtkmain.h gtkdnd.h gtkselection.h \
-- ../gdk/gdkx.h ../gdk/gdkprivate.h ../gdk/gdkkeysyms.h
--gtkcurve.lo gtkcurve.o : gtkcurve.c gtkcurve.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkdrawingarea.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkdrawingarea.h gtkmain.h \
-- gtkradiobutton.h gtkcheckbutton.h gtktogglebutton.h gtkbutton.h \
-- gtkbin.h gtkcontainer.h gtksignal.h gtkmarshal.h gtktable.h
--gtkdata.lo gtkdata.o : gtkdata.c gtkdata.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtksignal.h gtkmarshal.h
--gtkdialog.lo gtkdialog.o : gtkdialog.c gtkbutton.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkdialog.h \
-- gtkwindow.h gtkhbox.h gtkbox.h gtkhseparator.h gtkseparator.h \
-- gtkvbox.h
--gtkdnd.lo gtkdnd.o : gtkdnd.c ../gdk/gdkx.h ../gdk/gdkprivate.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkkeysyms.h \
-- gtkdnd.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkenums.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h gtkselection.h gtkinvisible.h gtkbin.h \
-- gtkcontainer.h gtkmain.h gtksignal.h gtkmarshal.h gtkwindow.h
--gtkdrawingarea.lo gtkdrawingarea.o : gtkdrawingarea.c gtkdrawingarea.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h
--gtkeditable.lo gtkeditable.o : gtkeditable.c ../gdk/gdkx.h \
-- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkkeysyms.h ../gdk/gdki18n.h gtkeditable.h ../gdk/gdk.h \
-- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkmain.h gtkselection.h \
-- gtksignal.h gtkmarshal.h
--gtkentry.lo gtkentry.o : gtkentry.c ../gdk/gdkkeysyms.h ../gdk/gdki18n.h \
-- gtkentry.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkeditable.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtkmain.h gtkselection.h gtksignal.h gtkmarshal.h gtkstyle.h
--gtkeventbox.lo gtkeventbox.o : gtkeventbox.c gtksignal.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkeventbox.h \
-- gtkbin.h gtkcontainer.h gtkwidget.h gtkaccelgroup.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h
--gtkfilesel.lo gtkfilesel.o : gtkfilesel.c fnmatch.h ../gdk/gdkkeysyms.h \
-- gtkbutton.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h gtkentry.h gtkeditable.h gtkfilesel.h gtkwindow.h \
-- gtkhbox.h gtkbox.h gtkhbbox.h gtkbbox.h gtklabel.h gtkmisc.h \
-- gtklist.h gtklistitem.h gtkitem.h gtklistitem.h gtkmain.h \
-- gtkscrolledwindow.h gtkhscrollbar.h gtkscrollbar.h gtkrange.h \
-- gtkvscrollbar.h gtkviewport.h gtksignal.h gtkmarshal.h \
-- gtkvbox.h gtkmenu.h gtkmenushell.h gtkmenuitem.h \
-- gtkoptionmenu.h gtkbutton.h gtkclist.h gtksignal.h \
-- gtkalignment.h gtklabel.h gtkdialog.h gtkintl.h ../config.h
--gtkfixed.lo gtkfixed.o : gtkfixed.c gtkfixed.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtkfontsel.lo gtkfontsel.o : gtkfontsel.c ../gdk/gdkx.h \
-- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkkeysyms.h gtkbutton.h ../gdk/gdk.h ../gdk/gdkrgb.h \
-- gtkbin.h gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtkcheckbutton.h gtktogglebutton.h gtkbutton.h gtkclist.h \
-- gtksignal.h gtkmarshal.h gtkalignment.h gtklabel.h gtkmisc.h \
-- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
-- gtkentry.h gtkeditable.h gtkfontsel.h gtkwindow.h gtknotebook.h \
-- gtkframe.h gtkhbbox.h gtkbbox.h gtkbox.h gtkhbox.h gtklabel.h \
-- gtknotebook.h gtkradiobutton.h gtkcheckbutton.h gtksignal.h \
-- gtktable.h gtkvbox.h gtkscrolledwindow.h gtkviewport.h \
-- gtkintl.h ../config.h
--gtkframe.lo gtkframe.o : gtkframe.c gtkframe.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtkgamma.lo gtkgamma.o : gtkgamma.c gtkgamma.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkvbox.h \
-- gtkbox.h gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkcurve.h \
-- gtkdrawingarea.h gtkdialog.h gtkwindow.h gtkbin.h \
-- gtkdrawingarea.h gtkentry.h gtkeditable.h gtkhbox.h gtklabel.h \
-- gtkmisc.h gtkmain.h gtkpixmap.h gtkradiobutton.h \
-- gtkcheckbutton.h gtktogglebutton.h gtkbutton.h gtksignal.h \
-- gtkmarshal.h gtktable.h gtkvbox.h gtkwindow.h gtkintl.h \
-- ../config.h
--gtkgc.lo gtkgc.o : gtkgc.c gtkgc.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h
--gtkhandlebox.lo gtkhandlebox.o : gtkhandlebox.c ../gdk/gdkx.h \
-- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- gtkhandlebox.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkbin.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkinvisible.h \
-- gtkmain.h gtksignal.h gtkmarshal.h gtkwindow.h
--gtkhbbox.lo gtkhbbox.o : gtkhbbox.c gtkhbbox.h gtkbbox.h gtkbox.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkcontainer.h gtkenums.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h
--gtkhbox.lo gtkhbox.o : gtkhbox.c gtkhbox.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbox.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtkhpaned.lo gtkhpaned.o : gtkhpaned.c gtkhpaned.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkpaned.h gtkcontainer.h gtkenums.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h gtkmain.h gtksignal.h gtkmarshal.h
--gtkhruler.lo gtkhruler.o : gtkhruler.c gtkhruler.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkruler.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h
--gtkhscale.lo gtkhscale.o : gtkhscale.c gtkhscale.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkscale.h gtkrange.h gtkadjustment.h gtkdata.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkwidget.h gtkaccelgroup.h gtkstyle.h gtksignal.h gtkmarshal.h \
-- ../gdk/gdkkeysyms.h
--gtkhscrollbar.lo gtkhscrollbar.o : gtkhscrollbar.c gtkhscrollbar.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkscrollbar.h gtkrange.h gtkadjustment.h \
-- gtkdata.h gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkwidget.h gtkaccelgroup.h gtkstyle.h \
-- gtksignal.h gtkmarshal.h ../gdk/gdkkeysyms.h
--gtkhseparator.lo gtkhseparator.o : gtkhseparator.c gtkhseparator.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkseparator.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtkimage.lo gtkimage.o : gtkimage.c gtkcontainer.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkimage.h gtkmisc.h
--gtkinputdialog.lo gtkinputdialog.o : gtkinputdialog.c \
-- ../gdk/gdkkeysyms.h gtkbutton.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h gtkcontainer.h \
-- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkentry.h gtkeditable.h gtkhbox.h \
-- gtkbox.h gtkhseparator.h gtkseparator.h gtkinputdialog.h \
-- gtkdialog.h gtkwindow.h gtklabel.h gtkmisc.h gtklistitem.h \
-- gtkitem.h gtkmain.h gtkmenu.h gtkmenushell.h gtkmenuitem.h \
-- gtknotebook.h gtkoptionmenu.h gtkbutton.h gtkscrolledwindow.h \
-- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
-- gtkviewport.h gtksignal.h gtkmarshal.h gtktable.h gtkvbox.h \
-- gtkintl.h ../config.h
--gtkinvisible.lo gtkinvisible.o : gtkinvisible.c gtksignal.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkinvisible.h \
-- gtkbin.h gtkcontainer.h gtkwidget.h gtkaccelgroup.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h
--gtkitem.lo gtkitem.o : gtkitem.c gtkitem.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h \
-- gtkmarshal.h
--gtkitemfactory.lo gtkitemfactory.o : gtkitemfactory.c gtkitemfactory.h \
-- gtkwidget.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkmenufactory.h \
-- gtkbindings.h gtksignal.h gtkmarshal.h gtkoptionmenu.h \
-- gtkbutton.h gtkbin.h gtkcontainer.h gtkmenubar.h gtkmenushell.h \
-- gtkmenu.h gtkmenuitem.h gtkitem.h gtkradiomenuitem.h \
-- gtkcheckmenuitem.h gtktearoffmenuitem.h gtkaccellabel.h \
-- gtklabel.h gtkmisc.h ../gdk/gdkkeysyms.h
--gtklabel.lo gtklabel.o : gtklabel.c gtklabel.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h ../gdk/gdkkeysyms.h ../gdk/gdki18n.h
--gtklayout.lo gtklayout.o : gtklayout.c gtklayout.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h \
-- gtkmarshal.h gtkprivate.h ../gdk/gdkx.h ../gdk/gdkprivate.h
--gtklist.lo gtklist.o : gtklist.c gtklist.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkcontainer.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtklistitem.h \
-- gtkitem.h gtkbin.h gtklistitem.h gtkmain.h gtksignal.h \
-- gtkmarshal.h gtklabel.h gtkmisc.h
--gtklistitem.lo gtklistitem.o : gtklistitem.c gtkbindings.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtklabel.h gtkmisc.h gtkwidget.h \
-- gtkaccelgroup.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtklistitem.h gtkitem.h gtkbin.h gtkcontainer.h gtklist.h \
-- gtklistitem.h gtksignal.h gtkmarshal.h ../gdk/gdkkeysyms.h
--gtkmain.lo gtkmain.o : gtkmain.c gtkbutton.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkdnd.h \
-- gtkselection.h gtkfeatures.h gtkhscrollbar.h gtkscrollbar.h \
-- gtkrange.h gtkhseparator.h gtkseparator.h gtkmain.h \
-- gtkpreview.h gtkrc.h gtkscrolledwindow.h gtkhscrollbar.h \
-- gtkvscrollbar.h gtkviewport.h gtkselection.h gtksignal.h \
-- gtkmarshal.h gtktable.h gtktext.h gtkeditable.h gtkvbox.h \
-- gtkbox.h gtkvscrollbar.h gtkwidget.h gtkwindow.h gtkprivate.h \
-- ../gdk/gdki18n.h ../config.h gtkdebug.h gtkintl.h
--gtkmarshal.lo gtkmarshal.o : gtkmarshal.c gtkmarshal.h gtktypeutils.h \
-- gtktypebuiltins.h gtkobject.h gtkarg.h gtkenums.h gtkdebug.h
--gtkmenu.lo gtkmenu.o : gtkmenu.c ../gdk/gdkkeysyms.h gtkbindings.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtklabel.h gtkmisc.h \
-- gtkwidget.h gtkaccelgroup.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h gtkmain.h gtkmenu.h gtkmenushell.h gtkcontainer.h \
-- gtkmenuitem.h gtkitem.h gtkbin.h gtksignal.h gtkmarshal.h \
-- gtkwindow.h
--gtkmenubar.lo gtkmenubar.o : gtkmenubar.c ../gdk/gdkkeysyms.h \
-- gtkbindings.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkmain.h gtkwidget.h gtkaccelgroup.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h gtkmenubar.h gtkmenushell.h gtkcontainer.h \
-- gtkmenuitem.h gtkitem.h gtkbin.h
--gtkmenufactory.lo gtkmenufactory.o : gtkmenufactory.c gtkcheckmenuitem.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkmenuitem.h gtkitem.h gtkbin.h gtkcontainer.h \
-- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkmenu.h gtkmenushell.h gtkmenubar.h \
-- gtkmenufactory.h gtkmenuitem.h gtksignal.h gtkmarshal.h
--gtkmenuitem.lo gtkmenuitem.o : gtkmenuitem.c gtkaccellabel.h gtklabel.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtkmain.h gtkmenu.h gtkmenushell.h gtkcontainer.h gtkmenubar.h \
-- gtkmenuitem.h gtkitem.h gtkbin.h gtksignal.h gtkmarshal.h
--gtkmenushell.lo gtkmenushell.o : gtkmenushell.c ../gdk/gdkkeysyms.h \
-- gtkbindings.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkmain.h gtkwidget.h gtkaccelgroup.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h gtkmenuitem.h gtkitem.h gtkbin.h gtkcontainer.h \
-- gtktearoffmenuitem.h gtkmenuitem.h gtkmenushell.h gtksignal.h \
-- gtkmarshal.h
--gtkmisc.lo gtkmisc.o : gtkmisc.c gtkcontainer.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkmisc.h
--gtknotebook.lo gtknotebook.o : gtknotebook.c gtknotebook.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h \
-- gtkmarshal.h gtkmain.h gtkmenu.h gtkmenushell.h gtkmenuitem.h \
-- gtkitem.h gtkbin.h gtklabel.h gtkmisc.h ../gdk/gdkkeysyms.h \
-- gtkintl.h ../config.h
--gtkobject.lo gtkobject.o : gtkobject.c gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtksignal.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkobject.h gtkmarshal.h
--gtkoptionmenu.lo gtkoptionmenu.o : gtkoptionmenu.c gtkmenu.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkmenushell.h gtkcontainer.h gtkwidget.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkmenuitem.h gtkitem.h gtkbin.h \
-- gtkoptionmenu.h gtkbutton.h gtksignal.h gtkmarshal.h \
-- ../gdk/gdkkeysyms.h
--gtkpacker.lo gtkpacker.o : gtkpacker.c gtkpacker.h gtkcontainer.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtkpaned.lo gtkpaned.o : gtkpaned.c gtkpaned.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtkhpaned.h \
-- gtkpaned.h
--gtkpixmap.lo gtkpixmap.o : gtkpixmap.c gtkcontainer.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkpixmap.h gtkmisc.h
--gtkplug.lo gtkplug.o : gtkplug.c ../gdk/gdkx.h ../gdk/gdkprivate.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkkeysyms.h \
-- gtkplug.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkwindow.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkbin.h gtkcontainer.h \
-- gtkwidget.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtkpreview.lo gtkpreview.o : gtkpreview.c ../gdk/gdkx.h \
-- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkpreview.h gtkwidget.h ../gdk/gdk.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h
--gtkprogress.lo gtkprogress.o : gtkprogress.c gtkprogress.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h
--gtkprogressbar.lo gtkprogressbar.o : gtkprogressbar.c ../config.h \
-- gtkprogressbar.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkprogress.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h
--gtkradiobutton.lo gtkradiobutton.o : gtkradiobutton.c gtklabel.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtkradiobutton.h gtkcheckbutton.h gtktogglebutton.h gtkbutton.h \
-- gtkbin.h gtkcontainer.h gtksignal.h gtkmarshal.h
--gtkradiomenuitem.lo gtkradiomenuitem.o : gtkradiomenuitem.c \
-- gtkaccellabel.h gtklabel.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkradiomenuitem.h gtkcheckmenuitem.h \
-- gtkmenuitem.h gtkitem.h gtkbin.h gtkcontainer.h
--gtkrange.lo gtkrange.o : gtkrange.c gtkmain.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkrange.h gtksignal.h gtkmarshal.h
--gtkrc.lo gtkrc.o : gtkrc.c gtkrc.h gtkstyle.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkbindings.h gtkthemes.h gtkintl.h ../config.h
--gtkruler.lo gtkruler.o : gtkruler.c gtkruler.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h
--gtkscale.lo gtkscale.o : gtkscale.c gtkcontainer.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkscale.h gtkrange.h
--gtkscrollbar.lo gtkscrollbar.o : gtkscrollbar.c gtkscrollbar.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkrange.h gtkadjustment.h gtkdata.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkwidget.h gtkaccelgroup.h gtkstyle.h
--gtkscrolledwindow.lo gtkscrolledwindow.o : gtkscrolledwindow.c \
-- gtkscrolledwindow.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkhscrollbar.h \
-- gtkscrollbar.h gtkrange.h gtkadjustment.h gtkdata.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkwidget.h gtkaccelgroup.h gtkstyle.h gtkvscrollbar.h \
-- gtkviewport.h gtkbin.h gtkcontainer.h gtksignal.h gtkmarshal.h
--gtkselection.lo gtkselection.o : gtkselection.c ../gdk/gdkx.h \
-- ../gdk/gdkprivate.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- gtkmain.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkselection.h gtksignal.h gtkmarshal.h
--gtkseparator.lo gtkseparator.o : gtkseparator.c gtkseparator.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h
--gtksignal.lo gtksignal.o : gtksignal.c gtksignal.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkargcollector.c
--gtksocket.lo gtksocket.o : gtksocket.c ../gdk/gdkx.h ../gdk/gdkprivate.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkkeysyms.h \
-- gtkwindow.h ../gdk/gdk.h ../gdk/gdkrgb.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkbin.h gtkcontainer.h gtkwidget.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h \
-- gtksocket.h gtkdnd.h gtkselection.h
--gtkspinbutton.lo gtkspinbutton.o : gtkspinbutton.c ../gdk/gdkkeysyms.h \
-- gtkspinbutton.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkentry.h gtkeditable.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkmain.h gtksignal.h gtkmarshal.h
--gtkstatusbar.lo gtkstatusbar.o : gtkstatusbar.c gtkframe.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtklabel.h \
-- gtkmisc.h gtksignal.h gtkmarshal.h gtkstatusbar.h gtkhbox.h \
-- gtkbox.h
--gtkstyle.lo gtkstyle.o : gtkstyle.c gtkgc.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkrc.h \
-- gtkstyle.h gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkwidget.h gtkthemes.h \
-- ../gdk/gdkprivate.h
--gtktable.lo gtktable.o : gtktable.c gtktable.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtktearoffmenuitem.lo gtktearoffmenuitem.o : gtktearoffmenuitem.c \
-- gtkmenu.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkmenushell.h gtkcontainer.h gtkwidget.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtksignal.h gtkmarshal.h \
-- gtktearoffmenuitem.h gtkmenuitem.h gtkitem.h gtkbin.h
--gtktext.lo gtktext.o : gtktext.c ../gdk/gdkkeysyms.h ../gdk/gdki18n.h \
-- gtkmain.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkselection.h gtksignal.h \
-- gtkmarshal.h gtktext.h gtkeditable.h line-wrap.xbm \
-- line-arrow.xbm
--gtkthemes.lo gtkthemes.o : gtkthemes.c gtkthemes.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkstyle.h gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkmain.h gtkrc.h gtkselection.h \
-- gtksignal.h gtkmarshal.h gtkwidget.h ../config.h gtkintl.h
--gtktipsquery.lo gtktipsquery.o : gtktipsquery.c gtktipsquery.h \
-- gtklabel.h ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtksignal.h gtkmarshal.h gtktooltips.h gtkmain.h gtkintl.h \
-- ../config.h
--gtktogglebutton.lo gtktogglebutton.o : gtktogglebutton.c gtklabel.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkmisc.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtkmain.h gtksignal.h gtkmarshal.h gtktogglebutton.h \
-- gtkbutton.h gtkbin.h gtkcontainer.h
--gtktoolbar.lo gtktoolbar.o : gtktoolbar.c gtkbutton.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbin.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtktogglebutton.h gtkbutton.h gtkradiobutton.h gtkcheckbutton.h \
-- gtktogglebutton.h gtklabel.h gtkmisc.h gtkvbox.h gtkbox.h \
-- gtktoolbar.h gtkpixmap.h gtksignal.h gtkmarshal.h gtktooltips.h
--gtktooltips.lo gtktooltips.o : gtktooltips.c gtkmain.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkwidget.h gtkwindow.h gtkbin.h \
-- gtkcontainer.h gtksignal.h gtkmarshal.h gtkstyle.h \
-- gtktooltips.h
--gtktree.lo gtktree.o : gtktree.c gtktree.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h gtktreeitem.h \
-- gtkitem.h gtkbin.h gtkmain.h gtksignal.h gtkmarshal.h gtklist.h \
-- gtklistitem.h
--gtktreeitem.lo gtktreeitem.o : gtktreeitem.c gtklabel.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkmisc.h \
-- gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkenums.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtktree.h gtkcontainer.h gtktreeitem.h \
-- gtkitem.h gtkbin.h gtkeventbox.h gtkpixmap.h gtkmain.h \
-- gtksignal.h gtkmarshal.h tree_plus.xpm tree_minus.xpm
--gtktypeutils.lo gtktypeutils.o : gtktypeutils.c gtktypeutils.h \
-- gtktypebuiltins.h makeenums.h ../gdk/gdkprivate.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdk.h \
-- ../gdk/gdkrgb.h gtk.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtkenums.h gtkdebug.h gtkaccellabel.h gtklabel.h \
-- gtkmisc.h gtkwidget.h gtkadjustment.h gtkdata.h gtkstyle.h \
-- gtkalignment.h gtkbin.h gtkcontainer.h gtkaspectframe.h \
-- gtkframe.h gtkarrow.h gtkbindings.h gtkbox.h gtkbbox.h \
-- gtkbutton.h gtkcalendar.h gtksignal.h gtkmarshal.h \
-- gtkcheckbutton.h gtktogglebutton.h gtkcheckmenuitem.h \
-- gtkmenuitem.h gtkitem.h gtkclist.h gtkhscrollbar.h \
-- gtkscrollbar.h gtkrange.h gtkvscrollbar.h gtkcolorsel.h \
-- gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h gtkeditable.h \
-- gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h gtktable.h \
-- gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h gtkcurve.h \
-- gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
-- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
-- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
-- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
-- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
-- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
-- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
-- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
-- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
-- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
-- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
-- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
-- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h \
-- gtkprivate.h gtktypebuiltins_vars.c gtktypebuiltins_evals.c \
-- gtktypebuiltins_ids.c
--gtkvbbox.lo gtkvbbox.o : gtkvbbox.c gtkvbbox.h gtkbbox.h gtkbox.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkcontainer.h gtkenums.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h
--gtkvbox.lo gtkvbox.o : gtkvbox.c gtkvbox.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkbox.h \
-- gtkcontainer.h gtkenums.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtkviewport.lo gtkviewport.o : gtkviewport.c gtksignal.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkmarshal.h gtkviewport.h \
-- gtkadjustment.h gtkdata.h gtkbin.h gtkcontainer.h gtkwidget.h \
-- gtkaccelgroup.h gtkstyle.h
--gtkvpaned.lo gtkvpaned.o : gtkvpaned.c gtkvpaned.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkpaned.h gtkcontainer.h gtkenums.h gtkwidget.h \
-- gtkaccelgroup.h gtkobject.h gtkarg.h gtktypeutils.h \
-- gtktypebuiltins.h gtkdebug.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h gtkmain.h gtksignal.h gtkmarshal.h
--gtkvruler.lo gtkvruler.o : gtkvruler.c gtkvruler.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkruler.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h
--gtkvscale.lo gtkvscale.o : gtkvscale.c gtkvscale.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkscale.h gtkrange.h gtkadjustment.h gtkdata.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkwidget.h gtkaccelgroup.h gtkstyle.h gtksignal.h gtkmarshal.h \
-- ../gdk/gdkkeysyms.h
--gtkvscrollbar.lo gtkvscrollbar.o : gtkvscrollbar.c gtkvscrollbar.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkscrollbar.h gtkrange.h gtkadjustment.h \
-- gtkdata.h gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkwidget.h gtkaccelgroup.h gtkstyle.h \
-- gtksignal.h gtkmarshal.h ../gdk/gdkkeysyms.h
--gtkvseparator.lo gtkvseparator.o : gtkvseparator.c gtkvseparator.h \
-- ../gdk/gdk.h ../gdk/gdktypes.h ../gdk/gdkcursors.h \
-- ../gdk/gdkrgb.h gtkseparator.h gtkwidget.h gtkaccelgroup.h \
-- gtkobject.h gtkarg.h gtktypeutils.h gtktypebuiltins.h \
-- gtkenums.h gtkdebug.h gtkadjustment.h gtkdata.h gtkstyle.h
--gtkwidget.lo gtkwidget.o : gtkwidget.c gtkcontainer.h ../gdk/gdk.h \
-- ../gdk/gdktypes.h ../gdk/gdkcursors.h ../gdk/gdkrgb.h \
-- gtkenums.h gtkwidget.h gtkaccelgroup.h gtkobject.h gtkarg.h \
-- gtktypeutils.h gtktypebuiltins.h gtkdebug.h gtkadjustment.h \
-- gtkdata.h gtkstyle.h gtkmain.h gtkrc.h gtkselection.h \
-- gtksignal.h gtkmarshal.h gtkwidget.h gtkwindow.h gtkbin.h \
-- gtkcontainer.h gtkbindings.h gtkprivate.h ../gdk/gdkx.h \
-- ../gdk/gdkprivate.h
--gtkwindow.lo gtkwindow.o : gtkwindow.c ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h ../gdk/gdkkeysyms.h \
-- ../gdk/gdkx.h ../gdk/gdkprivate.h gtkprivate.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkwidget.h gtkaccelgroup.h gtkadjustment.h gtkdata.h \
-- gtkstyle.h gtkrc.h gtksignal.h gtkmarshal.h gtkwindow.h \
-- gtkbin.h gtkcontainer.h gtkbindings.h gtkmain.h
--simple.o: simple.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
-- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
-- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
-- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
-- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
-- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
-- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
-- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
-- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
-- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
-- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
-- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
-- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
-- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
-- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
-- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
-- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
-- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
-- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
-- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
-- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
-- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h \
-- ../gdk/gdkprivate.h
--testdnd.o: testdnd.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
-- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
-- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
-- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
-- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
-- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
-- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
-- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
-- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
-- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
-- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
-- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
-- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
-- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
-- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
-- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
-- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
-- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
-- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
-- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
-- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
-- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h
--testgtk.o: testgtk.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
-- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
-- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
-- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
-- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
-- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
-- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
-- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
-- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
-- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
-- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
-- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
-- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
-- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
-- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
-- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
-- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
-- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
-- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
-- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
-- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
-- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h \
-- ../gdk/gdkx.h ../gdk/gdkprivate.h ../gdk/gdkkeysyms.h \
-- circles.xbm
--testinput.o: testinput.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
-- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
-- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
-- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
-- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
-- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
-- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
-- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
-- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
-- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
-- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
-- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
-- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
-- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
-- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
-- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
-- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
-- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
-- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
-- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
-- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
-- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h
--testrgb.o: testrgb.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
-- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
-- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
-- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
-- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
-- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
-- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
-- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
-- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
-- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
-- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
-- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
-- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
-- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
-- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
-- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
-- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
-- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
-- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
-- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
-- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
-- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h
--testselection.o: testselection.c gtk.h ../gdk/gdk.h ../gdk/gdktypes.h \
-- ../gdk/gdkcursors.h ../gdk/gdkrgb.h gtkaccelgroup.h gtkobject.h \
-- gtkarg.h gtktypeutils.h gtktypebuiltins.h gtkenums.h gtkdebug.h \
-- gtkaccellabel.h gtklabel.h gtkmisc.h gtkwidget.h \
-- gtkadjustment.h gtkdata.h gtkstyle.h gtkalignment.h gtkbin.h \
-- gtkcontainer.h gtkaspectframe.h gtkframe.h gtkarrow.h \
-- gtkbindings.h gtkbox.h gtkbbox.h gtkbutton.h gtkcalendar.h \
-- gtksignal.h gtkmarshal.h gtkcheckbutton.h gtktogglebutton.h \
-- gtkcheckmenuitem.h gtkmenuitem.h gtkitem.h gtkclist.h \
-- gtkhscrollbar.h gtkscrollbar.h gtkrange.h gtkvscrollbar.h \
-- gtkcolorsel.h gtkwindow.h gtkvbox.h gtkpreview.h gtkentry.h \
-- gtkeditable.h gtkhbox.h gtkmain.h gtkscale.h gtkhscale.h \
-- gtktable.h gtkeventbox.h gtkcombo.h gtkcompat.h gtkctree.h \
-- gtkcurve.h gtkdrawingarea.h gtkdialog.h gtkdnd.h gtkselection.h \
-- gtkfeatures.h gtkfilesel.h gtkfixed.h gtkfontsel.h \
-- gtknotebook.h gtkgamma.h gtkgc.h gtkhandlebox.h gtkhbbox.h \
-- gtkhpaned.h gtkpaned.h gtkhruler.h gtkruler.h gtkhseparator.h \
-- gtkseparator.h gtkimage.h gtkinputdialog.h gtkitemfactory.h \
-- gtkmenufactory.h gtklayout.h gtklist.h gtklistitem.h gtkmenu.h \
-- gtkmenushell.h gtkmenubar.h gtkoptionmenu.h gtkpacker.h \
-- gtkpixmap.h gtkplug.h gtkprogress.h gtkprogressbar.h \
-- gtkradiobutton.h gtkradiomenuitem.h gtkrc.h gtkscrolledwindow.h \
-- gtkviewport.h gtksocket.h gtkspinbutton.h gtkstatusbar.h \
-- gtktearoffmenuitem.h gtktext.h gtkthemes.h gtktipsquery.h \
-- gtktoolbar.h gtktooltips.h gtktree.h gtktreeitem.h gtkvbbox.h \
-- gtkvpaned.h gtkvruler.h gtkvscale.h gtkvseparator.h
-
-+DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
-+
-+-include $(DEP_FILES)
-+
-+mostlyclean-depend:
-+
-+clean-depend:
-+
-+distclean-depend:
-+ -rm -rf .deps
-+
-+maintainer-clean-depend:
-+
-+%.o: %.c
-+ @echo '$(COMPILE) -c $<'; \
-+ $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @-cp .deps/$(*F).pp .deps/$(*F).P; \
-+ tr ' ' '\012' < .deps/$(*F).pp \
-+ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
-+ >> .deps/$(*F).P; \
-+ rm .deps/$(*F).pp
-+
-+%.lo: %.c
-+ @echo '$(LTCOMPILE) -c $<'; \
-+ $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
-+ @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
-+ < .deps/$(*F).pp > .deps/$(*F).P; \
-+ tr ' ' '\012' < .deps/$(*F).pp \
-+ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
-+ >> .deps/$(*F).P; \
-+ rm -f .deps/$(*F).pp
- info-am:
- info: info-am
- dvi-am:
-@@ -1384,19 +601,20 @@
- -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
- mostlyclean-am: mostlyclean-libLTLIBRARIES mostlyclean-compile \
- mostlyclean-libtool mostlyclean-noinstPROGRAMS \
-- mostlyclean-tags mostlyclean-generic
-+ mostlyclean-tags mostlyclean-depend mostlyclean-generic
-
- mostlyclean: mostlyclean-am
-
- clean-am: clean-libLTLIBRARIES clean-compile clean-libtool \
-- clean-noinstPROGRAMS clean-tags clean-generic \
-- mostlyclean-am
-+ clean-noinstPROGRAMS clean-tags clean-depend \
-+ clean-generic mostlyclean-am
-
- clean: clean-am
-
- distclean-am: distclean-libLTLIBRARIES distclean-compile \
- distclean-libtool distclean-noinstPROGRAMS \
-- distclean-tags distclean-generic clean-am
-+ distclean-tags distclean-depend distclean-generic \
-+ clean-am
- -rm -f libtool
-
- distclean: distclean-am
-@@ -1404,7 +622,8 @@
- maintainer-clean-am: maintainer-clean-libLTLIBRARIES \
- maintainer-clean-compile maintainer-clean-libtool \
- maintainer-clean-noinstPROGRAMS maintainer-clean-tags \
-- maintainer-clean-generic distclean-am
-+ maintainer-clean-depend maintainer-clean-generic \
-+ distclean-am
- @echo "This command is intended for maintainers to use;"
- @echo "it deletes files that may require special tools to rebuild."
-
-@@ -1420,10 +639,11 @@
- maintainer-clean-noinstPROGRAMS uninstall-gtkconfDATA \
- install-gtkconfDATA uninstall-libgtkincludeHEADERS \
- install-libgtkincludeHEADERS tags mostlyclean-tags distclean-tags \
--clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
--check-am installcheck-am installcheck install-exec-am install-exec \
--install-data-local install-data-am install-data install-am install \
--uninstall-local uninstall-am uninstall all-redirect all-am all \
-+clean-tags maintainer-clean-tags distdir mostlyclean-depend \
-+distclean-depend clean-depend maintainer-clean-depend info-am info \
-+dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
-+install-exec install-data-local install-data-am install-data install-am \
-+install uninstall-local uninstall-am uninstall all-redirect all-am all \
- installdirs mostlyclean-generic distclean-generic clean-generic \
- maintainer-clean-generic clean mostlyclean distclean maintainer-clean
-
---- gtk+1.2-1.2.10.orig/gtk/Makefile.am
-+++ gtk+1.2-1.2.10/gtk/Makefile.am
-@@ -31,8 +31,8 @@
- @x_ldflags@ \
- @x_libs@ \
- -lm \
-+ $(top_builddir)/gdk/libgdk.la \
- @STRIP_END@
--# $(top_builddir)/gdk/libgdk.la
-
-
- #
-@@ -374,10 +374,12 @@
-
-
- gtkconfdir = $(sysconfdir)/gtk
--gtkconf_DATA = gtkrc.az gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja \
-- gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 \
-- gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 \
-- gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 \
-+gtkconf_DATA = gtkrc.az gtkrc.he gtkrc.hy gtkrc.ja \
-+ gtkrc.ko gtkrc.ru gtkrc.th gtkrc.uk \
-+ gtkrc.utf-8 gtkrc.iso-8859-2 \
-+ gtkrc.iso-8859-3 gtkrc.iso-8859-5 gtkrc.iso-8859-7 \
-+ gtkrc.iso-8859-9 gtkrc.iso-8859-13 gtkrc.iso-8859-14 \
-+ gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW \
- gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps \
- gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255
-
---- gtk+1.2-1.2.10.orig/gtk/gtkentry.c
-+++ gtk+1.2-1.2.10/gtk/gtkentry.c
-@@ -2280,11 +2280,13 @@
- gint start,
- gint end)
- {
-- gint length = GTK_ENTRY (editable)->text_length;
-+ gint length;
-
- g_return_if_fail (editable != NULL);
- g_return_if_fail (GTK_IS_ENTRY (editable));
-
-+ length = GTK_ENTRY (editable)->text_length;
-+
- if (end < 0)
- end = length;
-
---- gtk+1.2-1.2.10.orig/gtk/gtkfilesel.c
-+++ gtk+1.2-1.2.10/gtk/gtkfilesel.c
-@@ -325,7 +325,8 @@
-
- static void gtk_file_selection_populate (GtkFileSelection *fs,
- gchar *rel_path,
-- gint try_complete);
-+ gboolean try_complete,
-+ gboolean reset_entry);
- static void gtk_file_selection_abort (GtkFileSelection *fs);
-
- static void gtk_file_selection_update_history_menu (GtkFileSelection *fs,
-@@ -522,7 +523,7 @@
- }
- else
- {
-- gtk_file_selection_populate (filesel, "", FALSE);
-+ gtk_file_selection_populate (filesel, "", FALSE, TRUE);
- }
-
- gtk_widget_grab_focus (filesel->selection_entry);
-@@ -637,7 +638,7 @@
- name = last_slash + 1;
- }
-
-- gtk_file_selection_populate (filesel, buf, FALSE);
-+ gtk_file_selection_populate (filesel, buf, FALSE, TRUE);
-
- if (filesel->selection_entry)
- gtk_entry_set_text (GTK_ENTRY (filesel->selection_entry), name);
-@@ -673,7 +674,7 @@
-
- if (filesel->selection_entry)
- gtk_entry_set_text (GTK_ENTRY (filesel->selection_entry), pattern);
-- gtk_file_selection_populate (filesel, (gchar*) pattern, TRUE);
-+ gtk_file_selection_populate (filesel, (gchar*) pattern, TRUE, TRUE);
- }
-
- static void
-@@ -806,7 +807,7 @@
- g_free (full_path);
-
- gtk_widget_destroy (fs->fileop_dialog);
-- gtk_file_selection_populate (fs, "", FALSE);
-+ gtk_file_selection_populate (fs, "", FALSE, FALSE);
- }
-
- static void
-@@ -903,7 +904,7 @@
- g_free (full_path);
-
- gtk_widget_destroy (fs->fileop_dialog);
-- gtk_file_selection_populate (fs, "", FALSE);
-+ gtk_file_selection_populate (fs, "", FALSE, TRUE);
- }
-
- static void
-@@ -1009,8 +1010,9 @@
- g_free (new_filename);
- g_free (old_filename);
-
-+ gtk_file_selection_populate (fs, "", FALSE, FALSE);
-+ gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), file);
- gtk_widget_destroy (fs->fileop_dialog);
-- gtk_file_selection_populate (fs, "", FALSE);
- }
-
- static void
-@@ -1112,7 +1114,7 @@
-
- text = g_strdup (text);
-
-- gtk_file_selection_populate (fs, text, TRUE);
-+ gtk_file_selection_populate (fs, text, TRUE, TRUE);
-
- g_free (text);
-
-@@ -1124,7 +1126,6 @@
- return FALSE;
- }
-
--
- static void
- gtk_file_selection_history_callback (GtkWidget *widget, gpointer data)
- {
-@@ -1142,7 +1143,7 @@
-
- if (callback_arg->menu_item == widget)
- {
-- gtk_file_selection_populate (fs, callback_arg->directory, FALSE);
-+ gtk_file_selection_populate (fs, callback_arg->directory, FALSE, FALSE);
- break;
- }
-
-@@ -1272,7 +1273,7 @@
- gpointer user_data)
- {
- GtkFileSelection *fs = NULL;
-- gchar *filename, *temp = NULL;
-+ gchar *filename = NULL;
-
- g_return_if_fail (GTK_IS_CLIST (widget));
-
-@@ -1280,39 +1281,23 @@
- g_return_if_fail (fs != NULL);
- g_return_if_fail (GTK_IS_FILE_SELECTION (fs));
-
-- gtk_clist_get_text (GTK_CLIST (fs->dir_list), row, 0, &temp);
-- filename = g_strdup (temp);
--
-- if (filename)
-- {
-- if (bevent)
-- switch (bevent->type)
-- {
-- case GDK_2BUTTON_PRESS:
-- gtk_file_selection_populate (fs, filename, FALSE);
-- break;
--
-- default:
-- gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename);
-- break;
-- }
-- else
-- gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename);
--
-- g_free (filename);
-- }
-+ gtk_clist_get_text (GTK_CLIST (fs->dir_list), row, 0, &filename);
-+
-+ if (filename && bevent && bevent->type == GDK_2BUTTON_PRESS)
-+ gtk_file_selection_populate (fs, filename, FALSE, FALSE);
- }
-
- static void
- gtk_file_selection_populate (GtkFileSelection *fs,
- gchar *rel_path,
-- gint try_complete)
-+ gboolean try_complete,
-+ gboolean reset_entry)
- {
- CompletionState *cmpl_state;
- PossibleCompletion* poss;
- gchar* filename;
- gint row;
-- gchar* rem_path = rel_path;
-+ gchar* rem_path;
- gchar* sel_text;
- gchar* text[2];
- gint did_recurse = FALSE;
-@@ -1323,6 +1308,8 @@
-
- g_return_if_fail (fs != NULL);
- g_return_if_fail (GTK_IS_FILE_SELECTION (fs));
-+
-+ rem_path = rel_path = g_strdup (rel_path);
-
- cmpl_state = (CompletionState*) fs->cmpl_state;
- poss = cmpl_completion_matches (rel_path, &rem_path, cmpl_state);
-@@ -1422,7 +1409,7 @@
-
- did_recurse = TRUE;
-
-- gtk_file_selection_populate (fs, dir_name, TRUE);
-+ gtk_file_selection_populate (fs, dir_name, FALSE, TRUE);
-
- g_free (dir_name);
- }
-@@ -1441,7 +1428,7 @@
- gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), rem_path);
- }
- }
-- else
-+ else if (reset_entry)
- {
- if (fs->selection_entry)
- gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), "");
-@@ -1466,8 +1453,9 @@
- {
- gtk_file_selection_update_history_menu (fs, cmpl_reference_position (cmpl_state));
- }
--
- }
-+
-+ g_free (rel_path);
- }
-
- static void
---- gtk+1.2-1.2.10.orig/gtk/gtkfontsel.c
-+++ gtk+1.2-1.2.10/gtk/gtkfontsel.c
-@@ -1609,9 +1609,11 @@
-
- if (found)
- {
-- fontsel->size = best_size;
-- gtk_clist_moveto(GTK_CLIST(fontsel->size_clist), best_row, -1, 0.5, 0);
-- gtk_clist_select_row(GTK_CLIST(fontsel->size_clist), best_row, 0);
-+ if (best_size != fontsel->selected_size) {
-+ fontsel->size = best_size;
-+ gtk_clist_moveto(GTK_CLIST(fontsel->size_clist), best_row, -1, 0.5, 0);
-+ gtk_clist_select_row(GTK_CLIST(fontsel->size_clist), best_row, 0);
-+ }
- }
- else
- {
---- gtk+1.2-1.2.10.orig/gtk/gtkrc.c
-+++ gtk+1.2-1.2.10/gtk/gtkrc.c
-@@ -24,6 +24,7 @@
- * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
- */
-
-+#include <config.h>
- #include <X11/Xlocale.h> /* so we get the right setlocale */
- #include <ctype.h>
- #include <unistd.h>
-@@ -33,6 +34,9 @@
- #include <string.h>
- #include <stdio.h>
- #include <stdlib.h>
-+#ifdef HAVE_CODESET
-+#include <langinfo.h>
-+#endif
-
- #include "gtkrc.h"
- #include "gtkbindings.h"
-@@ -440,7 +444,7 @@
- void
- gtk_rc_init (void)
- {
-- static gchar *locale_suffixes[3];
-+ static gchar *locale_suffixes[8];
- static gint n_locale_suffixes = 0;
-
- gint i, j;
-@@ -449,9 +453,7 @@
-
- if (!initted)
- {
-- gint length;
--
-- char *locale = setlocale (LC_CTYPE, NULL);
-+ char *locale = g_strdup (setlocale (LC_CTYPE, NULL));
- char *p;
-
- initted = TRUE;
-@@ -470,39 +472,93 @@
- * We normalize the charset into a standard form,
- * which has all '-' and '_' characters removed,
- * and is lowercase.
-+ *
-+ * the search is done in that order:
-+ * gtkrc.ll_cc.lowercasecodeset
-+ * gtkrc.ll_cc.normalizedcodeset
-+ * gtkrc.ll.lowercasecodeset
-+ * gtkrc.ll.normalizedcodeset
-+ * gtkrc.lowercasecodeset
-+ * gtkrc.normalizedcodeset
-+ * gtkrc.ll_cc
-+ * gtkrc.ll
-+ *
- */
-- gchar *normalized_locale;
-+ char *codeset = NULL;
-+ char *normalized_codeset = NULL;
-+ char *cc = NULL;
-+ char *ll;
-+ char *tmp = NULL;
-
- p = strchr (locale, '@');
-- length = p ? (p -locale) : strlen (locale);
-+ if (p)
-+ *p = '\0';
-
-+#ifdef HAVE_CODESET
-+ codeset = nl_langinfo (CODESET);
-+#endif
- p = strchr (locale, '.');
-+ if ((codeset==NULL) && (p))
-+ codeset = p+1;
- if (p)
-- {
-- gchar *tmp1 = g_strndup (locale, p - locale + 1);
-- gchar *tmp2 = _gtk_normalize_codeset (p + 1, length - (p - locale + 1));
--
-- normalized_locale = g_strconcat (tmp1, tmp2, NULL);
-- g_free (tmp1);
-- g_free (tmp2);
--
-- locale_suffixes[n_locale_suffixes++] = g_strdup (normalized_locale);
-- length = p - locale;
-- }
-- else
-- normalized_locale = g_strndup (locale, length);
-+ *p = '\0';
-
-- p = strchr (normalized_locale, '_');
-- if (p)
-+ if (codeset)
- {
-- locale_suffixes[n_locale_suffixes++] = g_strndup (normalized_locale, length);
-- length = p - normalized_locale;
-+ /* if codeset is the result of nl_langinfo() it is
-+ * read-only so we need to copy it to a rw place */
-+ tmp = g_strdup(codeset);
-+ p = tmp;
-+
-+ while (*p)
-+ {
-+ /* tolower not used, because some locales are not
-+ * compatible with C locale in lowercasing ascii */
-+ if (*p >= 'A' && *p <= 'Z')
-+ *p = (*p)-'A'+'a';
-+ p++;
-+ }
-+ codeset = tmp;
-+ normalized_codeset =
-+ _gtk_normalize_codeset(codeset, strlen(codeset));
-+ if (strcmp(normalized_codeset,codeset) == 0)
-+ normalized_codeset = NULL;
- }
--
-- locale_suffixes[n_locale_suffixes++] = g_strndup (normalized_locale, length);
-
-- g_free (normalized_locale);
-+ p = strchr (locale, '_');
-+ if (p) {
-+ cc = p+1;
-+ *p = '\0';
-+ }
-+
-+ ll = locale;
-+
-+ if (cc && codeset)
-+ locale_suffixes[n_locale_suffixes++] =
-+ g_strdup ( g_strconcat(ll,"_",cc,".",codeset,NULL));
-+ if (cc && normalized_codeset)
-+ locale_suffixes[n_locale_suffixes++] =
-+ g_strdup ( g_strconcat(ll,"_",cc,".",normalized_codeset,NULL));
-+ if (codeset)
-+ locale_suffixes[n_locale_suffixes++] =
-+ g_strdup ( g_strconcat(ll,".",codeset,NULL));
-+ if (normalized_codeset)
-+ locale_suffixes[n_locale_suffixes++] =
-+ g_strdup ( g_strconcat(ll,".",normalized_codeset,NULL));
-+ if (codeset)
-+ locale_suffixes[n_locale_suffixes++] =
-+ g_strdup ( codeset );
-+ if (normalized_codeset)
-+ locale_suffixes[n_locale_suffixes++] =
-+ g_strdup ( normalized_codeset );
-+ if (cc)
-+ locale_suffixes[n_locale_suffixes++] =
-+ g_strdup ( g_strconcat(ll,"_",cc,NULL));
-+ locale_suffixes[n_locale_suffixes++] = g_strdup ( ll );
-+
-+ if (tmp) g_free (tmp);
- }
-+ g_free (locale);
- }
-
- i = 0;
---- gtk+1.2-1.2.10.orig/gtk/gtkstyle.c
-+++ gtk+1.2-1.2.10/gtk/gtkstyle.c
-@@ -348,8 +348,9 @@
- new_style->bg[i] = style->bg[i];
- new_style->text[i] = style->text[i];
- new_style->base[i] = style->base[i];
--
-- new_style->bg_pixmap[i] = style->bg_pixmap[i];
-+
-+ if (style->bg_pixmap[i] && !(style->rc_style && style->rc_style->bg_pixmap_name[i]))
-+ new_style->bg_pixmap[i] = gdk_pixmap_ref (style->bg_pixmap[i]);
- }
-
- gdk_font_unref (new_style->font);
---- gtk+1.2-1.2.10.orig/gtk/gtkwindow.c
-+++ gtk+1.2-1.2.10/gtk/gtkwindow.c
-@@ -859,13 +859,60 @@
- GTK_OBJECT_CLASS(parent_class)->finalize (object);
- }
-
-+
-+static void
-+reread_rc_files ()
-+{
-+ if (gtk_rc_reparse_all ())
-+ {
-+ /* If the above returned true, some of our RC files are out
-+ * of date, so we need to reset all our widgets. Our other
-+ * toplevel windows will also get the message, but by
-+ * then, the RC file will up to date, so we have to tell
-+ * them now.
-+ */
-+ GList *toplevels;
-+
-+ toplevels = gtk_container_get_toplevels();
-+ while (toplevels)
-+ {
-+ gtk_widget_reset_rc_styles (toplevels->data);
-+ toplevels = toplevels->next;
-+ }
-+ }
-+}
-+
- static void
- gtk_window_show (GtkWidget *widget)
- {
- GtkWindow *window = GTK_WINDOW (widget);
- GtkContainer *container = GTK_CONTAINER (window);
- gboolean need_resize;
-+ GList *toplevels;
-+ gboolean had_visible = FALSE;
-
-+ /* If we have no windows shown at this point, then check for
-+ * theme changes before showing the window. We really should
-+ * be checking realized, not shown, but shown => realized,
-+ * and checking in realize might cause reentrancy problems.
-+ *
-+ * Plus, this allows us to get the new size right before
-+ * realizing.
-+ */
-+ toplevels = gtk_container_get_toplevels ();
-+ while (toplevels)
-+ {
-+ if (GTK_WIDGET_VISIBLE (toplevels->data))
-+ {
-+ had_visible = TRUE;
-+ break;
-+ }
-+ toplevels = toplevels->next;
-+ }
-+
-+ if (!had_visible)
-+ reread_rc_files ();
-+
- GTK_WIDGET_SET_FLAGS (widget, GTK_VISIBLE);
-
- need_resize = container->need_resize || !GTK_WIDGET_REALIZED (widget);
-@@ -985,7 +1032,13 @@
- break;
- case EnterNotify:
- case LeaveNotify:
-- if (xev->xcrossing.detail != NotifyInferior &&
-+ /* We only track the actual destination of keyboard events for real
-+ * toplevels, not for embedded toplevels such as GtkPlug. The reason for
-+ * this is that GtkPlug redirects events so the widget may effectively not
-+ * have the focus even if it actually has the focus.
-+ */
-+ if (gdk_window_get_parent (GTK_WIDGET (window)->window) == GDK_ROOT_PARENT () &&
-+ xev->xcrossing.detail != NotifyInferior &&
- xev->xcrossing.focus && !window->window_has_focus)
- {
- window->window_has_pointer_focus = (xev->xany.type == EnterNotify) ? TRUE : FALSE;
-@@ -1474,23 +1527,7 @@
- }
- }
-
-- if (gtk_rc_reparse_all ())
-- {
-- /* If the above returned true, some of our RC files are out
-- * of date, so we need to reset all our widgets. Our other
-- * toplevel windows will also get the message, but by
-- * then, the RC file will up to date, so we have to tell
-- * them now.
-- */
-- GList *toplevels;
--
-- toplevels = gtk_container_get_toplevels();
-- while (toplevels)
-- {
-- gtk_widget_reset_rc_styles (toplevels->data);
-- toplevels = toplevels->next;
-- }
-- }
-+ reread_rc_files ();
- }
-
- static gint
---- gtk+1.2-1.2.10.orig/gtk/gtkrc.zh_CN
-+++ gtk+1.2-1.2.10/gtk/gtkrc.zh_CN
-@@ -7,7 +7,7 @@
- #
-
- style "gtk-default-zh-cn" {
-- fontset = "-adobe-helvetica-medium-r-normal--16-*-*-*-*-*-iso8859-1,\
-+ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
- -*-*-medium-r-normal--16-*-*-*-*-*-gb2312.1980-0,*-r-*"
- }
- class "GtkWidget" style "gtk-default-zh-cn"
---- gtk+1.2-1.2.10.orig/gtk/gtkrc.zh_TW
-+++ gtk+1.2-1.2.10/gtk/gtkrc.zh_TW
-@@ -0,0 +1,18 @@
-+# $(gtkconfigdir)/gtkrc.zh_TW
-+#
-+# This file defines the fontsets for Chinese language (ch) using
-+# the traditional chinese Big5 encoding as used in Taiwan (TW)
-+#
-+# 1999, Pablo Saratxaga <pablo@mandrakesoft.com>
-+#
-+
-+# IMPORTANT NOTE: The name of this file *MUST* be "gtkrc.zh_TW.big5"
-+# the lowercasing of "big5" is done on purpose, if you change it it won't work
-+
-+style "gtk-default-zh-tw" {
-+ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
-+ -taipei-*-medium-r-normal--*-*-*-*-*-*-big5-0,\
-+ -*-*-medium-r-normal--16-*-*-*-*-*-big5-0,*-r-*"
-+}
-+class "GtkWidget" style "gtk-default-zh-tw"
-+
---- gtk+1.2-1.2.10.orig/gtk/gtkrc.utf-8
-+++ gtk+1.2-1.2.10/gtk/gtkrc.utf-8
-@@ -0,0 +1,7 @@
-+style "default-text" {
-+ fontset = "-*-arial-medium-r-normal--*-120-*-*-*-*-iso10646-1,\
-+ -*-helvetica-medium-r-normal--*-120-*-*-*-*-*-*"
-+}
-+
-+class "GtkWidget" style "default-text"
-+
---- gtk+1.2-1.2.10.orig/gtk/gtkrc.iso-8859-3
-+++ gtk+1.2-1.2.10/gtk/gtkrc.iso-8859-3
-@@ -0,0 +1,8 @@
-+style "gtk-default-eo" {
-+ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
-+ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
-+ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-3,\
-+ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-3,*-r-*"
-+}
-+class "GtkWidget" style "gtk-default-eo"
-+
---- gtk+1.2-1.2.10.orig/gtk/gtkrc.iso-8859-7
-+++ gtk+1.2-1.2.10/gtk/gtkrc.iso-8859-7
-@@ -0,0 +1,8 @@
-+style "gtk-default-el" {
-+ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
-+ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
-+ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-7,\
-+ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-7,*-r-*"
-+}
-+class "GtkWidget" style "gtk-default-el"
-+
---- gtk+1.2-1.2.10.orig/gtk/gtkrc.iso-8859-9
-+++ gtk+1.2-1.2.10/gtk/gtkrc.iso-8859-9
-@@ -0,0 +1,8 @@
-+style "gtk-default-tr" {
-+ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
-+ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
-+ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-9,\
-+ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-9,*-r-*"
-+}
-+class "GtkWidget" style "gtk-default-tr"
-+
---- gtk+1.2-1.2.10.orig/docs/Makefile.in
-+++ gtk+1.2-1.2.10/docs/Makefile.in
-@@ -1,6 +1,6 @@
--# Makefile.in generated automatically by automake 1.4 from Makefile.am
-+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
-
--# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-+# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
- # This Makefile.in is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
-@@ -66,6 +66,8 @@
- CC = @CC@
- DATADIRNAME = @DATADIRNAME@
- DLLTOOL = @DLLTOOL@
-+ECHO = @ECHO@
-+EXEEXT = @EXEEXT@
- GDK_WLIBS = @GDK_WLIBS@
- GENCAT = @GENCAT@
- GLIB_CFLAGS = @GLIB_CFLAGS@
-@@ -101,12 +103,14 @@
- MAKEINFO = @MAKEINFO@
- MKINSTALLDIRS = @MKINSTALLDIRS@
- OBJDUMP = @OBJDUMP@
-+OBJEXT = @OBJEXT@
- PACKAGE = @PACKAGE@
- PERL = @PERL@
- POFILES = @POFILES@
- POSUB = @POSUB@
- RANLIB = @RANLIB@
- REBUILD = @REBUILD@
-+STRIP = @STRIP@
- STRIP_BEGIN = @STRIP_BEGIN@
- STRIP_DUMMY = @STRIP_DUMMY@
- STRIP_END = @STRIP_END@
-@@ -138,7 +142,7 @@
- TUTORIAL_IT_FILES = html/gtk_tut_it.html html/gtk_tut_it-1.html html/gtk_tut_it-2.html html/gtk_tut_it-3.html html/gtk_tut_it-4.html html/gtk_tut_it-5.html html/gtk_tut_it-6.html html/gtk_tut_it-7.html html/gtk_tut_it-8.html html/gtk_tut_it-9.html html/gtk_tut_it-10.html html/gtk_tut_it-11.html html/gtk_tut_it-12.html html/gtk_tut_it-13.html html/gtk_tut_it-14.html html/gtk_tut_it-15.html html/gtk_tut_it-16.html html/gtk_tut_it-17.html html/gtk_tut_it-18.html html/gtk_tut_it-19.html html/gtk_tut_it-20.html html/gtk_tut_it-21.html html/gtk_tut_it-22.html html/gtk_tut_it-23.html html/gtk_tut_it-24.html text/gtk_tut_it.txt
-
-
--FAQ_FILES = html/gtkfaq.html html/gtkfaq-1.html html/gtkfaq-2.html html/gtkfaq-3.html html/gtkfaq-4.html html/gtkfaq-5.html html/gtkfaq-6.html html/gtkfaq-7.html text/gtkfaq.txt
-+FAQ_FILES = html/gtkfaq.html html/gtkfaq-1.html html/gtkfaq-2.html html/gtkfaq-3.html html/gtkfaq-4.html html/gtkfaq-5.html html/gtkfaq-6.html html/gtkfaq-7.html html/gtkfaq-8.html html/gtkfaq-9.html text/gtkfaq.txt
-
-
- EXTRA_DIST = Changes-1.2.txt debugging.txt developers.txt refcounting.txt styles.txt text_widget.txt widget_system.txt generation.txt gtk-config.txt gtk-config.1.in texinfo.tex macros.texi gtkdocs_fix gtkfaq.sgml gtk_tut.sgml gtk_tut_it.sgml gtk_tut_fr.sgml gtk_tut_packbox1.gif gtk_tut_packbox2.gif html/gtk_tut_table.gif html/gtk_tut_packbox1.gif html/gtk_tut_packbox2.gif gtk_tut_table.gif $(TUTORIAL_FILES) $(TUTORIAL_FR_FILES) $(TUTORIAL_IT_FILES) $(FAQ_FILES)
-@@ -159,15 +163,15 @@
-
- DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
--TAR = gtar
-+TAR = tar
- GZIP_ENV = --best
- all: all-redirect
- .SUFFIXES:
- .SUFFIXES: .dvi .info .ps .texi .texinfo .txi
- $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
-- cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps docs/Makefile
-+ cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/Makefile
-
--Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-@@ -257,7 +261,7 @@
- else ii=; fi; \
- list='$(INFO_DEPS)'; \
- for file in $$list; do \
-- test -z "$ii" \
-+ test -z "$$ii" \
- || install-info --info-dir=$(DESTDIR)$(infodir) --remove $$file; \
- done
- @$(NORMAL_UNINSTALL)
-@@ -343,6 +347,11 @@
- subdir = docs
-
- distdir: $(DISTFILES)
-+ here=`cd $(top_builddir) && pwd`; \
-+ top_distdir=`cd $(top_distdir) && pwd`; \
-+ distdir=`cd $(distdir) && pwd`; \
-+ cd $(top_srcdir) \
-+ && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/Makefile
- $(mkinstalldirs) $(distdir)/html $(distdir)/text
- @for file in $(DISTFILES); do \
- d=$(srcdir); \
---- gtk+1.2-1.2.10.orig/docs/html/gtk_tut-13.html
-+++ gtk+1.2-1.2.10/docs/html/gtk_tut-13.html
-@@ -84,7 +84,7 @@
- gtk_menu_new and a "menu item" as created by the gtk_menu_item_new
- functions. The menu item will be an actual button with an associated
- action, whereas a menu will be a container holding menu items.
--<P>The gtk_menu_new_with_label and gtk_menu_new functions are just as
-+<P>The gtk_menu_item_new_with_label and gtk_menu_item_new functions are just as
- you'd expect after reading about the buttons. One creates a new menu
- item with a label already packed into it, and the other just creates a
- blank menu item.
---- gtk+1.2-1.2.10.orig/docs/html/gtkfaq-5.html
-+++ gtk+1.2-1.2.10/docs/html/gtkfaq-5.html
-@@ -553,12 +553,12 @@
- <BLOCKQUOTE><CODE>
- <PRE>
- gint
--signal_handler_event(GtkWiget *widget, GdkEvenButton *event, gpointer func_data)
-+signal_handler_event(GtkWidget *widget, GdkEventButton *event, gpointer func_data)
- {
- if (GTK_IS_LIST_ITEM(widget) &amp;&amp;
- (event->type==GDK_2BUTTON_PRESS ||
- event->type==GDK_3BUTTON_PRESS) ) {
-- printf("I feel %s clicked on button %d\",
-+ printf("I feel %s clicked on button %d\n",
- event->type==GDK_2BUTTON_PRESS ? "double" : "triple",
- event->button);
- }
---- gtk+1.2-1.2.10.orig/docs/html/gtkfaq-8.html
-+++ gtk+1.2-1.2.10/docs/html/gtkfaq-8.html
-@@ -0,0 +1,413 @@
-+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-+<HTML>
-+<HEAD>
-+ <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.21">
-+ <TITLE>GTK+ FAQ: About GLib</TITLE>
-+ <LINK HREF="gtkfaq-9.html" REL=next>
-+ <LINK HREF="gtkfaq-7.html" REL=previous>
-+ <LINK HREF="gtkfaq.html#toc8" REL=contents>
-+</HEAD>
-+<BODY BGCOLOR="#FFFFFF">
-+<A HREF="gtkfaq-9.html">Next</A>
-+<A HREF="gtkfaq-7.html">Previous</A>
-+<A HREF="gtkfaq.html#toc8">Contents</A>
-+<HR NOSHADE>
-+<H2><A NAME="s8">8.</A> <A HREF="gtkfaq.html#toc8">About GLib</A></H2>
-+
-+<H2><A NAME="ss8.1">8.1</A> <A HREF="gtkfaq.html#toc8.1">What is GLib?</A>
-+</H2>
-+
-+<P>GLib is a library of useful functions and definitions available for use
-+when creating GDK and GTK applications. It provides replacements for some
-+standard libc functions, such as malloc, which are buggy on some systems.</P>
-+<P>It also provides routines for handling:
-+<UL>
-+<LI>Doubly Linked Lists</LI>
-+<LI>Singly Linked Lists</LI>
-+<LI>Timers</LI>
-+<LI>String Handling</LI>
-+<LI>A Lexical Scanner</LI>
-+<LI>Error Functions</LI>
-+</UL>
-+</P>
-+
-+<H2><A NAME="ss8.2">8.2</A> <A HREF="gtkfaq.html#toc8.2">How can I use the doubly linked lists?</A>
-+</H2>
-+
-+<P>The GList object is defined as:</P>
-+<P>
-+<BLOCKQUOTE><CODE>
-+<PRE>
-+typedef struct _GList GList;
-+
-+struct _GList
-+{
-+ gpointer data;
-+ GList *next;
-+ GList *prev;
-+};
-+</PRE>
-+</CODE></BLOCKQUOTE>
-+</P>
-+<P>To use the GList objects, simply :</P>
-+<P>
-+<BLOCKQUOTE><CODE>
-+<PRE>
-+GList *list = NULL;
-+GList *listrunner;
-+gint array[] = { 1, 2, 3, 4, 5, 6 };
-+gint pos;
-+gint *value;
-+
-+/* add data to the list */
-+for (pos=0;pos &lt; sizeof array; pos++) {
-+ list = g_list_append(list, (gpointer)&amp;array[pos]);
-+}
-+
-+/* run through the list */
-+listrunner = g_list_first(list);
-+while (listrunner) {
-+ value = (gint *)listrunner->data;
-+ printf("%d\n", *value);
-+ listrunner = g_list_next(listrunner);
-+}
-+
-+/* removing datas from the list */
-+listrunner = g_list_first(list);
-+list = g_list_remove_link(list, listrunner);
-+list = g_list_remove(list, &amp;array[4]);
-+</PRE>
-+</CODE></BLOCKQUOTE>
-+</P>
-+<P>The same code is usable with singly linked lists (GSList objects) by replacing
-+g_list_* functions with the relevant g_slist_* ones (g_slist_append,
-+g_slist_remove, ...). Just remember that since you can't go backward in a singly
-+linked list, there is no g_slist_first function - you'll need to keep a
-+reference on the first node of the list.</P>
-+
-+
-+<H2><A NAME="ss8.3">8.3</A> <A HREF="gtkfaq.html#toc8.3">Memory does not seem to be released when I free the list nodes I've allocated</A>
-+</H2>
-+
-+<P>GLib tries to be "intelligent" on this special issue: it assumes that
-+you are likely to reuse the objects, so caches the allocated memory.
-+If you do not want to use this behavior, you'll probably want to set
-+up a special allocator.</P>
-+<P>To quote Tim Janik:
-+<BLOCKQUOTE>
-+If you have a certain portion of code that uses *lots* of GLists or
-+GNodes, and you know you'd better want to release all of them after a
-+short while, you'd want to use a GAllocator. Pushing an allocator into
-+g_list will make all subsequent glist operations private to that
-+allocator's memory pool (and thus you have to take care to pop the
-+allocator again, before making any external calls):
-+</BLOCKQUOTE>
-+</P>
-+<P>
-+<BLOCKQUOTE><CODE>
-+<PRE>
-+GAllocator *allocator;
-+GList *list = NULL;
-+guint i;
-+
-+/* set a new allocation pool for GList nodes */
-+allocator = g_allocator_new ("list heap", 1024);
-+g_list_push_allocator (allocator);
-+
-+/* do some list operations */
-+for (i = 0; i &lt; 4096; i++)
-+ list = g_list_prepend (list, NULL);
-+list = g_list_reverse (list);
-+
-+/* beware to pop allocator befor calling external functions */
-+g_list_pop_allocator ();
-+gtk_label_set_text (GTK_LABEL (some_label), "some text");
-+
-+/* and set our private glist pool again */
-+g_list_push_allocator (allocator);
-+
-+/* do some list operations */
-+g_list_free (list);
-+list = NULL;
-+for (i = 0; i &lt; 4096; i++)
-+ list = g_list_prepend (list, NULL);
-+
-+/* and back out (while freeing all of the list nodes in our pool) */
-+g_list_pop_allocator ();
-+g_allocator_free (allocator);
-+</PRE>
-+</CODE></BLOCKQUOTE>
-+</P>
-+
-+<H2><A NAME="ss8.4">8.4</A> <A HREF="gtkfaq.html#toc8.4">Why use g_print, g_malloc, g_strdup and fellow glib functions? </A>
-+</H2>
-+
-+<P>Thanks to Tim Janik who wrote to gtk-list: (slightly modified)
-+<BLOCKQUOTE>
-+Regarding g_malloc(), g_free() and siblings, these functions are much
-+safer than their libc equivalents. For example, g_free() just returns
-+if called with NULL. Also, if USE_DMALLOC is defined, the definition
-+for these functions changes (in glib.h) to use MALLOC(), FREE() etc...
-+If MEM_PROFILE or MEM_CHECK are defined, there are even small
-+statistics made counting the used block sizes (shown by
-+g_mem_profile() / g_mem_check()).
-+<P>Considering the fact that glib provides an interface for memory chunks
-+to save space if you have lots of blocks that are always the same size
-+and to mark them ALLOC_ONLY if needed, it is just straight forward to
-+create a small saver (debug able) wrapper around the normal malloc/free
-+stuff as well - just like gdk covers Xlib. ;)</P>
-+<P>Using g_error() and g_warning() inside of applications like the GIMP
-+that fully rely on gtk even gives the opportunity to pop up a window
-+showing the messages inside of a gtk window with your own handler
-+(by using g_set_error_handler()) along the lines of <CODE>gtk_print()</CODE>
-+(inside of gtkmain.c).</P>
-+</BLOCKQUOTE>
-+</P>
-+
-+<H2><A NAME="ss8.5">8.5</A> <A HREF="gtkfaq.html#toc8.5">What's a GScanner and how do I use one? </A>
-+</H2>
-+
-+<P>A GScanner will tokenize your text, that is, it'll return an integer
-+for every word or number that appears in its input stream, following
-+certain (customizable) rules to perform this translation.
-+You still need to write the parsing functions on your own though.</P>
-+<P>Here's a little test program supplied by Tim Janik that will parse</P>
-+<P>
-+<PRE>
-+&lt;SYMBOL> = &lt;OPTIONAL-MINUS> &lt;NUMBER> ;
-+</PRE>
-+</P>
-+<P>constructs, while skipping "#\n" and "/**/" style comments.</P>
-+<P>
-+<PRE>
-+#include &lt;glib.h>
-+
-+/* some test text to be fed into the scanner */
-+static const gchar *test_text =
-+( "ping = 5;\n"
-+ "/* slide in some \n"
-+ " * comments, just for the\n"
-+ " * fun of it \n"
-+ " */\n"
-+ "pong = -6; \n"
-+ "\n"
-+ "# the next value is a float\n"
-+ "zonk = 0.7;\n"
-+ "# redefine ping\n"
-+ "ping = - 0.5;\n" );
-+
-+/* define enumeration values to be returned for specific symbols */
-+enum {
-+ SYMBOL_PING = G_TOKEN_LAST + 1,
-+ SYMBOL_PONG = G_TOKEN_LAST + 2,
-+ SYMBOL_ZONK = G_TOKEN_LAST + 3
-+};
-+
-+/* symbol array */
-+static const struct {
-+ gchar *symbol_name;
-+ guint symbol_token;
-+} symbols[] = {
-+ { "ping", SYMBOL_PING, },
-+ { "pong", SYMBOL_PONG, },
-+ { "zonk", SYMBOL_ZONK, },
-+ { NULL, 0, },
-+}, *symbol_p = symbols;
-+
-+static gfloat ping = 0;
-+static gfloat pong = 0;
-+static gfloat zonk = 0;
-+
-+static guint
-+parse_symbol (GScanner *scanner)
-+{
-+ guint symbol;
-+ gboolean negate = FALSE;
-+
-+ /* expect a valid symbol */
-+ g_scanner_get_next_token (scanner);
-+ symbol = scanner->token;
-+ if (symbol &lt; SYMBOL_PING ||
-+ symbol > SYMBOL_ZONK)
-+ return G_TOKEN_SYMBOL;
-+
-+ /* expect '=' */
-+ g_scanner_get_next_token (scanner);
-+ if (scanner->token != '=')
-+ return '=';
-+
-+ /* feature optional '-' */
-+ g_scanner_peek_next_token (scanner);
-+ if (scanner->next_token == '-')
-+ {
-+ g_scanner_get_next_token (scanner);
-+ negate = !negate;
-+ }
-+
-+ /* expect a float (ints are converted to floats on the fly) */
-+ g_scanner_get_next_token (scanner);
-+ if (scanner->token != G_TOKEN_FLOAT)
-+ return G_TOKEN_FLOAT;
-+
-+ /* make sure the next token is a ';' */
-+ if (g_scanner_peek_next_token (scanner) != ';')
-+ {
-+ /* not so, eat up the non-semicolon and error out */
-+ g_scanner_get_next_token (scanner);
-+ return ';';
-+ }
-+
-+ /* assign value, eat the semicolon and exit successfully */
-+ switch (symbol)
-+ {
-+ case SYMBOL_PING:
-+ ping = negate ? - scanner->value.v_float : scanner->value.v_float;
-+ break;
-+ case SYMBOL_PONG:
-+ pong = negate ? - scanner->value.v_float : scanner->value.v_float;
-+ break;
-+ case SYMBOL_ZONK:
-+ zonk = negate ? - scanner->value.v_float : scanner->value.v_float;
-+ break;
-+ }
-+ g_scanner_get_next_token (scanner);
-+
-+ return G_TOKEN_NONE;
-+}
-+
-+int
-+main (int argc, char *argv[])
-+{
-+ GScanner *scanner;
-+ guint expected_token;
-+
-+ scanner = g_scanner_new (NULL);
-+
-+ /* adjust lexing behaviour to suit our needs
-+ */
-+ /* convert non-floats (octal values, hex values...) to G_TOKEN_INT */
-+ scanner->config->numbers_2_int = TRUE;
-+ /* convert G_TOKEN_INT to G_TOKEN_FLOAT */
-+ scanner->config->int_2_float = TRUE;
-+ /* don't return G_TOKEN_SYMBOL, but the symbol's value */
-+ scanner->config->symbol_2_token = TRUE;
-+
-+ /* load symbols into the scanner */
-+ while (symbol_p->symbol_name)
-+ {
-+ g_scanner_add_symbol (scanner,
-+ symbol_p->symbol_name,
-+ GINT_TO_POINTER (symbol_p->symbol_token));
-+ symbol_p++;
-+ }
-+
-+ /* feed in the text */
-+ g_scanner_input_text (scanner, test_text, strlen (test_text));
-+
-+ /* give the error handler an idea on how the input is named */
-+ scanner->input_name = "test text";
-+
-+ /* scanning loop, we parse the input until its end is reached,
-+ * the scanner encountered a lexing error, or our sub routine came
-+ * across invalid syntax
-+ */
-+ do
-+ {
-+ expected_token = parse_symbol (scanner);
-+
-+ g_scanner_peek_next_token (scanner);
-+ }
-+ while (expected_token == G_TOKEN_NONE &amp;&amp;
-+ scanner->next_token != G_TOKEN_EOF &amp;&amp;
-+ scanner->next_token != G_TOKEN_ERROR);
-+
-+ /* give an error message upon syntax errors */
-+ if (expected_token != G_TOKEN_NONE)
-+ g_scanner_unexp_token (scanner, expected_token, NULL, "symbol", NULL, NULL, TRUE);
-+
-+ /* finsish parsing */
-+ g_scanner_destroy (scanner);
-+
-+ /* print results */
-+ g_print ("ping: %f\n", ping);
-+ g_print ("pong: %f\n", pong);
-+ g_print ("zonk: %f\n", zonk);
-+
-+ return 0;
-+}
-+</PRE>
-+</P>
-+<P>You need to understand that the scanner will parse its input and
-+tokenize it, it is up to you to interpret these tokens, not define
-+their types before they get parsed, e.g. watch gscanner parse a
-+string:</P>
-+<P>
-+<PRE>
-+"hi i am 17"
-+ | | | |
-+ | | | v
-+ | | v TOKEN_INT, value: 17
-+ | v TOKEN_IDENTIFIER, value: "am"
-+ v TOKEN_CHAR, value: 'i'
-+TOKEN_IDENTIFIER, value: "hi"
-+</PRE>
-+</P>
-+<P>If you configure the scanner with:
-+<PRE>
-+scanner->config->int_2_float = TRUE;
-+scanner->config->char_2_token = TRUE;
-+scanner->config->scan_symbols = TRUE;
-+</PRE>
-+</P>
-+<P>and add "am" as a symbol with
-+<PRE>
-+g_scanner_add_symbol (scanner, "am", "symbol value");
-+</PRE>
-+</P>
-+<P>GScanner will parse it as</P>
-+<P>
-+<PRE>
-+"hi i am 17"
-+ | | | |
-+ | | | v
-+ | | v TOKEN_FLOAT, value: 17.0 (automatic int->float conversion)
-+ | | TOKEN_SYMBOL, value: "symbol value" (a successfull hash table lookup
-+ | | turned a TOKEN_IDENTIFIER into a
-+ | | TOKEN_SYMBOL and took over the
-+ | v symbol's value)
-+ v 'i' ('i' can be a valid token as well, as all chars >0 and &lt;256)
-+TOKEN_IDENTIFIER, value: "hi"
-+</PRE>
-+</P>
-+<P>You need to match the token sequence with your code, and if you encounter
-+something that you don't want, you error out:</P>
-+<P>
-+<PRE>
-+/* expect an identifier ("hi") */
-+g_scanner_get_next_token (scanner);
-+if (scanner->token != G_TOKEN_IDENTIFIER)
-+ return G_TOKEN_IDENTIFIER;
-+/* expect a token 'i' */
-+g_scanner_get_next_token (scanner);
-+if (scanner->token != 'i')
-+ return 'i';
-+/* expect a symbol ("am") */
-+g_scanner_get_next_token (scanner);
-+if (scanner->token != G_TOKEN_SYMBOL)
-+ return G_TOKEN_SYMBOL;
-+/* expect a float (17.0) */
-+g_scanner_get_next_token (scanner);
-+if (scanner->token != G_TOKEN_FLOAT)
-+ return G_TOKEN_FLOAT;
-+</PRE>
-+</P>
-+<P>If you got past here, you have parsed "hi i am 17" and would have
-+accepted "dooh i am 42" and "bah i am 0.75" as well, but you would
-+have not accepted "hi 7 am 17" or "hi i hi 17".</P>
-+
-+<HR NOSHADE>
-+<A HREF="gtkfaq-9.html">Next</A>
-+<A HREF="gtkfaq-7.html">Previous</A>
-+<A HREF="gtkfaq.html#toc8">Contents</A>
-+</BODY>
-+</HTML>
---- gtk+1.2-1.2.10.orig/docs/html/gtkfaq-9.html
-+++ gtk+1.2-1.2.10/docs/html/gtkfaq-9.html
-@@ -0,0 +1,59 @@
-+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-+<HTML>
-+<HEAD>
-+ <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.21">
-+ <TITLE>GTK+ FAQ: GTK+ FAQ Contributions, Maintainers and Copyright</TITLE>
-+ <LINK HREF="gtkfaq-8.html" REL=previous>
-+ <LINK HREF="gtkfaq.html#toc9" REL=contents>
-+</HEAD>
-+<BODY BGCOLOR="#FFFFFF">
-+Next
-+<A HREF="gtkfaq-8.html">Previous</A>
-+<A HREF="gtkfaq.html#toc9">Contents</A>
-+<HR NOSHADE>
-+<H2><A NAME="s9">9.</A> <A HREF="gtkfaq.html#toc9">GTK+ FAQ Contributions, Maintainers and Copyright</A></H2>
-+
-+<P>If you would like to make a contribution to the FAQ, send either one
-+of us an e-mail message with the exact text you think should be
-+included (question and answer). With your help, this document can grow
-+and become more useful!</P>
-+<P>This document is maintained by
-+Tony Gale
-+<A HREF="mailto:gale@gtk.org">&lt;gale@gtk.org&gt;</A>
-+Nathan Froyd
-+<A HREF="mailto:maestrox@geocities.com">&lt;maestrox@geocities.com&gt;</A>,
-+and
-+Emmanuel Deloget
-+<A HREF="mailto:logout@free.fr">&lt;logout@free.fr&gt;</A>.
-+This FAQ was created by Shawn T. Amundson
-+<A HREF="mailto:amundson@gimp.org">&lt;amundson@gimp.org&gt;</A> who continues to provide support.</P>
-+<P>Contributions should be sent to Tony Gale
-+<A HREF="mailto:gale@gtk.org">&lt;gale@gtk.org&gt;</A></P>
-+<P>The GTK+ FAQ is Copyright (C) 1997-2000 by Shawn T. Amundson,
-+Tony Gale, Emmanuel Deloget and Nathan Froyd.</P>
-+<P>Permission is granted to make and distribute verbatim copies of this
-+manual provided the copyright notice and this permission notice are
-+preserved on all copies.</P>
-+<P>Permission is granted to copy and distribute modified versions of this
-+document under the conditions for verbatim copying, provided that this
-+copyright notice is included exactly as in the original, and that the
-+entire resulting derived work is distributed under the terms of a
-+permission notice identical to this one.</P>
-+<P>Permission is granted to copy and distribute translations of this
-+document into another language, under the above conditions for
-+modified versions.</P>
-+<P>If you are intending to incorporate this document into a published
-+work, please contact one of the maintainers, and we will make an
-+effort to ensure that you have the most up to date information
-+available.</P>
-+<P>There is no guarentee that this document lives up to its intended
-+purpose. This is simply provided as a free resource. As such, the
-+authors and maintainers of the information provided within can not
-+make any guarentee that the information is even accurate.</P>
-+
-+<HR NOSHADE>
-+Next
-+<A HREF="gtkfaq-8.html">Previous</A>
-+<A HREF="gtkfaq.html#toc9">Contents</A>
-+</BODY>
-+</HTML>
---- gtk+1.2-1.2.10.orig/docs/Makefile.am
-+++ gtk+1.2-1.2.10/docs/Makefile.am
-@@ -99,6 +99,8 @@
- html/gtkfaq-5.html \
- html/gtkfaq-6.html \
- html/gtkfaq-7.html \
-+ html/gtkfaq-8.html \
-+ html/gtkfaq-9.html \
- text/gtkfaq.txt
-
- .PHONY: html htmldir faq tutorial tutorial_it tutorial_fr files
---- gtk+1.2-1.2.10.orig/docs/gtkfaq.sgml
-+++ gtk+1.2-1.2.10/docs/gtkfaq.sgml
-@@ -1418,12 +1418,12 @@
-
- <tscreen><verb>
- gint
--signal_handler_event(GtkWiget *widget, GdkEvenButton *event, gpointer func_data)
-+signal_handler_event(GtkWidget *widget, GdkEventButton *event, gpointer func_data)
- {
- if (GTK_IS_LIST_ITEM(widget) &&
- (event->type==GDK_2BUTTON_PRESS ||
- event->type==GDK_3BUTTON_PRESS) ) {
-- printf("I feel %s clicked on button %d\",
-+ printf("I feel %s clicked on button %d\n",
- event->type==GDK_2BUTTON_PRESS ? "double" : "triple",
- event->button);
- }
---- gtk+1.2-1.2.10.orig/docs/gtk_tut.sgml
-+++ gtk+1.2-1.2.10/docs/gtk_tut.sgml
-@@ -9995,7 +9995,7 @@
- functions. The menu item will be an actual button with an associated
- action, whereas a menu will be a container holding menu items.
-
--The gtk_menu_new_with_label and gtk_menu_new functions are just as
-+The gtk_menu_item_new_with_label and gtk_menu_item_new functions are just as
- you'd expect after reading about the buttons. One creates a new menu
- item with a label already packed into it, and the other just creates a
- blank menu item.
---- gtk+1.2-1.2.10.orig/debian/docs
-+++ gtk+1.2-1.2.10/debian/docs
-@@ -0,0 +1,5 @@
-+NEWS
-+README
-+TODO
-+ChangeLog.pre-1-0
-+debian/FAQ.Debian
---- gtk+1.2-1.2.10.orig/debian/FAQ.Debian
-+++ gtk+1.2-1.2.10/debian/FAQ.Debian
-@@ -0,0 +1,90 @@
-+GTK+ FAQ for Debian
-+---------------------
-+
-+Q. the following message is output. gtk+ doesn't provide it.
-+
-+The font "XLFD" does not support all the required character sets for the
-+current locale "LOCALE"
-+ (Missing character set "CHARSET")
-+
-+A1. Check if you have installed the *-transcoded packages
-+ (xfonts-base-transcoded, xfonts-75dpi-transcoded and
-+ xfonts-100dpi-transcoded). If not, try installing them. If your problem
-+ persists, read on.
-+
-+A2. This means an application specified XLFD, but that font has no CHARSET
-+ LOCALE needs.
-+ If it's GTK+ application, you may specify invalid font on gtkrc.
-+ GTK+ will find gtkrc with the rules as the following:
-+
-+ 1. gtkrc.ll_cc.lowercasecodeset
-+ 2. gtkrc.ll_cc.normalizedcodeset
-+ 3. gtkrc.ll.lowercasecodeset
-+ 4. gtkrc.ll.normalizedcodeset
-+ 5. gtkrc.lowercasecodeset
-+ 6. gtkrc.normalizedcodeset
-+ 7. gtkrc.ll_cc
-+ 8. gtkrc.ll
-+
-+ normalize the charset into a standard form, which has all '-' and '_'
-+ characters removed.
-+
-+ Also GTK+ affect your locale. you can check that by the following code:
-+
-+ #include <stdio.h>
-+ #include <locale.h>
-+ #include <langinfo.h>
-+
-+ int main (void)
-+ {
-+ setlocale (LC_CTYPE, "");
-+ printf ("%s\n", nl_langinfo (CODESET));
-+ return 0;
-+ }
-+
-+ for example, your /etc/locale.gen has:
-+ es_ES ISO-8859-1
-+ es_ES@euro ISO-8859-15
-+
-+ and if you set es_ES@euro to LC_CTYPE, result of that program should be:
-+ $ LC_CTYPE=es_ES@euro ./test
-+ ISO-8859-15
-+
-+ GTK+ use this value for lowercasecodeset and normalizedcodeset.
-+
-+ And GTK+ will find gtkrc in order of path as the following:
-+
-+ 1. /etc/gtk
-+ 2. ~/
-+
-+ Thus, you need to find invalid font according to the above rules.
-+
-+
-+ If you can't find invalid font or that isn't GTK+ app, but that is GNOME
-+ app, try to find gtkrc:
-+
-+ 1. If you don't have strace, runs apt-get install strace.
-+ 2. strace <your app> |& grep gtkrc | grep open
-+ 3. If you get something, check the files found. invalid font should be
-+ specified in the files.
-+
-+ If you are still unable to find invalid font, try to check app's
-+ preferences and runs xlsfonts with XLFD.
-+
-+
-+Q. the following warning is output.
-+
-+Gdk-WARNING **: locale not supported by C library.
-+
-+A. You has no your locale data. check your locale and /etc/locale.gen and
-+ /usr/lib/locale/.
-+
-+
-+Q. the following warning is output.
-+
-+Gdk-WARNING **: locale not supported by Xlib, locale set to C.
-+
-+A. This means your locale supports by libc, but not Xlib. In most cases,
-+ you may specify invalid locale or Xlib has no aliases for the locale
-+ you specified.
-+
---- gtk+1.2-1.2.10.orig/debian/README.Debian
-+++ gtk+1.2-1.2.10/debian/README.Debian
-@@ -0,0 +1,18 @@
-+libgtk1.2 for Debian
-+----------------------
-+
-+The GIMP Tool Kit (gtk) is a set of widgets to help you program
-+programs for the X Windowing System easily and powerfully.
-+
-+gtk is the moving force behind The GNU Image Manipulation Program (The
-+GIMP) -- the number one freely-available image editing and creation
-+program available.
-+
-+gtk is rapidly under development, and the source tree has officially
-+been separated from The GIMP now, as other teams of programmers
-+are beginning to write software using its great widget set -- like
-+GNOME, a desktop interface for X, and gzilla, a freely available
-+web browser for X.
-+
-+Ben Gertzfield <che@debian.org>, Mon, 29 Sep 1997 13:11:45 -0700
-+
---- gtk+1.2-1.2.10.orig/debian/copyright
-+++ gtk+1.2-1.2.10/debian/copyright
-@@ -0,0 +1,8 @@
-+This package was debianized by Ben Gertzfield <che@debian.org>
-+on Fri Oct 15 10:36:58 PDT 1999.
-+
-+The source may be fetched from http://www.gtk.org/ .
-+
-+It may be redistributed under the terms of the GNU LGPL, Version 2 or
-+later, found on Debian systems in the file /usr/share/common-licenses/LGPL-2.
-+
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-doc.doc-base.gtk-faq
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-doc.doc-base.gtk-faq
-@@ -0,0 +1,17 @@
-+Document: gtk-faq
-+Title: GTK+ Frequently Asked Questions
-+Author: Nathan Froyd, Tony Gale, Shawn T. Amundson.
-+Abstract: This document is intended to answer questions that are
-+ likely to be frequently asked by programmers using GTK+ or people who
-+ are just looking at using GTK+.
-+Section: Apps/Programming
-+
-+Format: linuxdoc-sgml
-+Files: /usr/share/doc/libgtk1.2-doc/sgml/gtkfaq.sgml.gz
-+
-+Format: text
-+Files: /usr/share/doc/libgtk1.2-doc/gtkfaq.txt.gz
-+
-+Format: HTML
-+Index: /usr/share/doc/libgtk1.2-doc/faq-html/gtkfaq.html
-+Files: /usr/share/doc/libgtk1.2-doc/faq-html/*.html
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-common.dirs
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-common.dirs
-@@ -0,0 +1,4 @@
-+usr/share/locale
-+usr/share/themes
-+etc/gtk
-+
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-common.files
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-common.files
-@@ -0,0 +1,3 @@
-+usr/share/locale/*
-+usr/share/themes/*
-+etc/gtk/*
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-common.postrm
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-common.postrm
-@@ -0,0 +1,29 @@
-+#! /bin/sh
-+# postrm script for #PACKAGE#
-+#
-+# see: dh_installdeb(1)
-+
-+set -e
-+
-+# summary of how this script can be called:
-+# * <postrm> `remove'
-+# * <postrm> `purge'
-+# * <old-postrm> `upgrade' <new-version>
-+# * <new-postrm> `failed-upgrade' <old-version>
-+# * <new-postrm> `abort-install'
-+# * <new-postrm> `abort-install' <old-version>
-+# * <new-postrm> `abort-upgrade' <old-version>
-+# * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
-+# for details, see /usr/share/doc/packaging-manual/
-+
-+if [ "$1" = "purge" ];
-+then
-+ rm -rf /etc/gtk/
-+fi
-+
-+# dh_installdeb will replace this with shell code automatically
-+# generated by other debhelper scripts.
-+
-+#DEBHELPER#
-+
-+
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-common.preinst
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-common.preinst
-@@ -0,0 +1,20 @@
-+#! /bin/sh
-+
-+set -e
-+
-+if [ "$1" = "upgrade" ];
-+then
-+ if test -L /usr/share/doc/libgtk1.2-common;
-+ then
-+ rm /usr/share/doc/libgtk1.2-common
-+ fi
-+fi
-+
-+# dh_installdeb will replace this with shell code automatically
-+# generated by other debhelper scripts.
-+
-+#DEBHELPER#
-+
-+exit 0
-+
-+
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-dbg.dirs
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-dbg.dirs
-@@ -0,0 +1 @@
-+usr/lib/debug
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-dbg.files
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-dbg.files
-@@ -0,0 +1 @@
-+usr/lib/debug/*.so*
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-dbg.preinst
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-dbg.preinst
-@@ -0,0 +1,20 @@
-+#! /bin/sh
-+
-+set -e
-+
-+if [ "$1" = "upgrade" ];
-+then
-+ if [ -d /usr/share/doc/libgtk1.2-dbg -a ! -L /usr/share/doc/libgtk1.2-dbg ]
-+ then
-+ rm -rf /usr/share/doc/libgtk1.2-dbg
-+ fi
-+fi
-+
-+# dh_installdeb will replace this with shell code automatically
-+# generated by other debhelper scripts.
-+
-+#DEBHELPER#
-+
-+exit 0
-+
-+
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-dev.dirs
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-dev.dirs
-@@ -0,0 +1,2 @@
-+usr/lib
-+usr/include
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-dev.examples
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-dev.examples
-@@ -0,0 +1,5 @@
-+examples/*
-+gtk/test*.c
-+gtk/testgtkrc*
-+gtk/test.xpm
-+
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-dev.files
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-dev.files
-@@ -0,0 +1,7 @@
-+usr/bin/gtk-config
-+usr/include/*
-+usr/lib/lib*.{so,la,a}
-+usr/lib/pkgconfig/*.pc
-+usr/share/aclocal/*.m4
-+usr/share/man/man1/gtk-config.1*
-+
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-doc.dirs
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-doc.dirs
-@@ -0,0 +1,7 @@
-+usr/share/doc/libgtk1.2-doc/faq-html
-+usr/share/doc/libgtk1.2-doc/gtk-tutorial-html
-+usr/share/doc/libgtk1.2-doc/gtk-tutorial-it-html
-+usr/share/doc/libgtk1.2-doc/gtk-tutorial-fr-html
-+usr/share/doc/libgtk1.2-doc/sgml
-+usr/share/doc/libgtk1.2-doc/texinfo
-+
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-doc.doc-base.gtk-tutorial-fr
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-doc.doc-base.gtk-tutorial-fr
-@@ -0,0 +1,16 @@
-+Document: gtk-tutorial-fr
-+Title: GTK+ Tutorial in French
-+Author: Tony Gale and Ian Main
-+Abstract: This is a tutorial, in French, on how to use GTK (the GIMP Toolkit)
-+ through its C interface.
-+Section: Apps/Programming
-+
-+Format: linuxdoc-sgml
-+Files: /usr/share/doc/libgtk1.2-doc/sgml/gtk_tut_fr.sgml.gz
-+
-+Format: text
-+Files: /usr/share/doc/libgtk1.2-doc/gtk_tut_fr.txt.gz
-+
-+Format: HTML
-+Index: /usr/share/doc/libgtk1.2-doc/gtk-tutorial-fr-html/gtk_tut_fr.html
-+Files: /usr/share/doc/libgtk1.2-doc/gtk-tutorial-fr-html/*.html
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-doc.doc-base.gtk-tutorial
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-doc.doc-base.gtk-tutorial
-@@ -0,0 +1,16 @@
-+Document: gtk-tutorial
-+Title: GTK+ Tutorial
-+Author: Tony Gale and Ian Main
-+Abstract: This is a tutorial on how to use GTK (the GIMP Toolkit)
-+ through its C interface.
-+Section: Apps/Programming
-+
-+Format: linuxdoc-sgml
-+Files: /usr/share/doc/libgtk1.2-doc/sgml/gtk_tut.sgml.gz
-+
-+Format: text
-+Files: /usr/share/doc/libgtk1.2-doc/gtk_tut.txt.gz
-+
-+Format: HTML
-+Index: /usr/share/doc/libgtk1.2-doc/gtk-tutorial-html/gtk_tut.html
-+Files: /usr/share/doc/libgtk1.2-doc/gtk-tutorial-html/*.html
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-common.postinst
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-common.postinst
-@@ -0,0 +1,54 @@
-+#! /bin/sh
-+# postinst script for #PACKAGE#
-+#
-+# see: dh_installdeb(1)
-+
-+set -e
-+
-+# summary of how this script can be called:
-+# * <postinst> `configure' <most-recently-configured-version>
-+# * <old-postinst> `abort-upgrade' <new version>
-+# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
-+# <new-version>
-+# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
-+# <failed-install-package> <version> `removing'
-+# <conflicting-package> <version>
-+# for details, see http://www.debian.org/doc/debian-policy/ or
-+# the debian-policy package
-+#
-+# quoting from the policy:
-+# Any necessary prompting should almost always be confined to the
-+# post-installation script, and should be protected with a conditional
-+# so that unnecessary prompting doesn't happen if a package's
-+# installation fails and the `postinst' is called with `abort-upgrade',
-+# `abort-remove' or `abort-deconfigure'.
-+
-+case "$1" in
-+ configure)
-+ # remove unnecessary gtkrc files
-+ for i in gtkrc.el gtkrc.eo gtkrc.tr; do \
-+ if test -f /etc/gtkrc/$i; then \
-+ echo "Removing unnecessary $i" \
-+ rm -f /etc/gtkrc/$i; \
-+ fi \
-+ done
-+ ;;
-+
-+ abort-upgrade|abort-remove|abort-deconfigure)
-+
-+ ;;
-+
-+ *)
-+ echo "postinst called with unknown argument \`$1'" >&2
-+ exit 1
-+ ;;
-+esac
-+
-+# dh_installdeb will replace this with shell code automatically
-+# generated by other debhelper scripts.
-+
-+#DEBHELPER#
-+
-+exit 0
-+
-+
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-doc.doc-base.gtk-tutorial-it
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-doc.doc-base.gtk-tutorial-it
-@@ -0,0 +1,16 @@
-+Document: gtk-tutorial-it
-+Title: GTK+ Tutorial in Italian
-+Author: Tony Gale and Ian Main
-+Abstract: This is a tutorial, in Italian, on how to use GTK (the GIMP Toolkit)
-+ through its C interface.
-+Section: Apps/Programming
-+
-+Format: linuxdoc-sgml
-+Files: /usr/share/doc/libgtk1.2-doc/sgml/gtk_tut_it.sgml.gz
-+
-+Format: text
-+Files: /usr/share/doc/libgtk1.2-doc/gtk_tut_it.txt.gz
-+
-+Format: HTML
-+Index: /usr/share/doc/libgtk1.2-doc/gtk-tutorial-it-html/gtk_tut_it.html
-+Files: /usr/share/doc/libgtk1.2-doc/gtk-tutorial-it-html/*.html
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-doc.files
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-doc.files
-@@ -0,0 +1 @@
-+usr/share/info/*
---- gtk+1.2-1.2.10.orig/debian/libgtk1.2-doc.info
-+++ gtk+1.2-1.2.10/debian/libgtk1.2-doc.info
-@@ -0,0 +1,2 @@
-+docs/gtk.info
-+docs/gdk.info
---- gtk+1.2-1.2.10.orig/debian/compat
-+++ gtk+1.2-1.2.10/debian/compat
-@@ -0,0 +1 @@
-+4
---- gtk+1.2-1.2.10.orig/debian/fixed-ltmain.sh
-+++ gtk+1.2-1.2.10/debian/fixed-ltmain.sh
-@@ -0,0 +1,4997 @@
-+# ltmain.sh - Provide generalized library-building support services.
-+# NOTE: Changing this file will not affect anything until you rerun configure.
-+#
-+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
-+# Free Software Foundation, Inc.
-+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful, but
-+# WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+# General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+#
-+# As a special exception to the GNU General Public License, if you
-+# distribute this file as part of a program that contains a
-+# configuration script generated by Autoconf, you may include it under
-+# the same distribution terms that you use for the rest of that program.
-+
-+# Check that we have a working $echo.
-+if test "X$1" = X--no-reexec; then
-+ # Discard the --no-reexec flag, and continue.
-+ shift
-+elif test "X$1" = X--fallback-echo; then
-+ # Avoid inline document here, it may be left over
-+ :
-+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
-+ # Yippee, $echo works!
-+ :
-+else
-+ # Restart under the correct shell, and then maybe $echo will work.
-+ exec $SHELL "$0" --no-reexec ${1+"$@"}
-+fi
-+
-+if test "X$1" = X--fallback-echo; then
-+ # used as fallback echo
-+ shift
-+ cat <<EOF
-+$*
-+EOF
-+ exit 0
-+fi
-+
-+# The name of this program.
-+progname=`$echo "$0" | sed 's%^.*/%%'`
-+modename="$progname"
-+
-+# Constants.
-+PROGRAM=ltmain.sh
-+PACKAGE=libtool
-+VERSION=1.4
-+TIMESTAMP=" (1.922 2001/04/25 00:05:37)"
-+
-+default_mode=
-+help="Try \`$progname --help' for more information."
-+magic="%%%MAGIC variable%%%"
-+mkdir="mkdir"
-+mv="mv -f"
-+rm="rm -f"
-+
-+# Sed substitution that helps us do robust quoting. It backslashifies
-+# metacharacters that are still active within double-quoted strings.
-+Xsed='sed -e 1s/^X//'
-+sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
-+SP2NL='tr \040 \012'
-+NL2SP='tr \015\012 \040\040'
-+
-+# NLS nuisances.
-+# Only set LANG and LC_ALL to C if already set.
-+# These must not be set unconditionally because not all systems understand
-+# e.g. LANG=C (notably SCO).
-+# We save the old values to restore during execute mode.
-+if test "${LC_ALL+set}" = set; then
-+ save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
-+fi
-+if test "${LANG+set}" = set; then
-+ save_LANG="$LANG"; LANG=C; export LANG
-+fi
-+
-+if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
-+ echo "$modename: not configured to build any kind of library" 1>&2
-+ echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
-+ exit 1
-+fi
-+
-+# Global variables.
-+mode=$default_mode
-+nonopt=
-+prev=
-+prevopt=
-+run=
-+show="$echo"
-+show_help=
-+execute_dlfiles=
-+lo2o="s/\\.lo\$/.${objext}/"
-+o2lo="s/\\.${objext}\$/.lo/"
-+
-+# Parse our command line options once, thoroughly.
-+while test $# -gt 0
-+do
-+ arg="$1"
-+ shift
-+
-+ case $arg in
-+ -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;;
-+ *) optarg= ;;
-+ esac
-+
-+ # If the previous option needs an argument, assign it.
-+ if test -n "$prev"; then
-+ case $prev in
-+ execute_dlfiles)
-+ execute_dlfiles="$execute_dlfiles $arg"
-+ ;;
-+ *)
-+ eval "$prev=\$arg"
-+ ;;
-+ esac
-+
-+ prev=
-+ prevopt=
-+ continue
-+ fi
-+
-+ # Have we seen a non-optional argument yet?
-+ case $arg in
-+ --help)
-+ show_help=yes
-+ ;;
-+
-+ --version)
-+ echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"
-+ exit 0
-+ ;;
-+
-+ --config)
-+ sed -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
-+ exit 0
-+ ;;
-+
-+ --debug)
-+ echo "$progname: enabling shell trace mode"
-+ set -x
-+ ;;
-+
-+ --dry-run | -n)
-+ run=:
-+ ;;
-+
-+ --features)
-+ echo "host: $host"
-+ if test "$build_libtool_libs" = yes; then
-+ echo "enable shared libraries"
-+ else
-+ echo "disable shared libraries"
-+ fi
-+ if test "$build_old_libs" = yes; then
-+ echo "enable static libraries"
-+ else
-+ echo "disable static libraries"
-+ fi
-+ exit 0
-+ ;;
-+
-+ --finish) mode="finish" ;;
-+
-+ --mode) prevopt="--mode" prev=mode ;;
-+ --mode=*) mode="$optarg" ;;
-+
-+ --quiet | --silent)
-+ show=:
-+ ;;
-+
-+ -dlopen)
-+ prevopt="-dlopen"
-+ prev=execute_dlfiles
-+ ;;
-+
-+ -*)
-+ $echo "$modename: unrecognized option \`$arg'" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ ;;
-+
-+ *)
-+ nonopt="$arg"
-+ break
-+ ;;
-+ esac
-+done
-+
-+if test -n "$prevopt"; then
-+ $echo "$modename: option \`$prevopt' requires an argument" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+fi
-+
-+if test -z "$show_help"; then
-+
-+ # Infer the operation mode.
-+ if test -z "$mode"; then
-+ case $nonopt in
-+ *cc | *++ | gcc* | *-gcc*)
-+ mode=link
-+ for arg
-+ do
-+ case $arg in
-+ -c)
-+ mode=compile
-+ break
-+ ;;
-+ esac
-+ done
-+ ;;
-+ *db | *dbx | *strace | *truss)
-+ mode=execute
-+ ;;
-+ *install*|cp|mv)
-+ mode=install
-+ ;;
-+ *rm)
-+ mode=uninstall
-+ ;;
-+ *)
-+ # If we have no mode, but dlfiles were specified, then do execute mode.
-+ test -n "$execute_dlfiles" && mode=execute
-+
-+ # Just use the default operation mode.
-+ if test -z "$mode"; then
-+ if test -n "$nonopt"; then
-+ $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2
-+ else
-+ $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2
-+ fi
-+ fi
-+ ;;
-+ esac
-+ fi
-+
-+ # Only execute mode is allowed to have -dlopen flags.
-+ if test -n "$execute_dlfiles" && test "$mode" != execute; then
-+ $echo "$modename: unrecognized option \`-dlopen'" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ # Change the help message to a mode-specific one.
-+ generic_help="$help"
-+ help="Try \`$modename --help --mode=$mode' for more information."
-+
-+ # These modes are in order of execution frequency so that they run quickly.
-+ case $mode in
-+ # libtool compile mode
-+ compile)
-+ modename="$modename: compile"
-+ # Get the compilation command and the source file.
-+ base_compile=
-+ prev=
-+ lastarg=
-+ srcfile="$nonopt"
-+ suppress_output=
-+
-+ user_target=no
-+ for arg
-+ do
-+ case $prev in
-+ "") ;;
-+ xcompiler)
-+ # Aesthetically quote the previous argument.
-+ prev=
-+ lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-+
-+ case $arg in
-+ # Double-quote args containing other shell metacharacters.
-+ # Many Bourne shells cannot handle close brackets correctly
-+ # in scan sets, so we specify it separately.
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+
-+ # Add the previous argument to base_compile.
-+ if test -z "$base_compile"; then
-+ base_compile="$lastarg"
-+ else
-+ base_compile="$base_compile $lastarg"
-+ fi
-+ continue
-+ ;;
-+ esac
-+
-+ # Accept any command-line options.
-+ case $arg in
-+ -o)
-+ if test "$user_target" != "no"; then
-+ $echo "$modename: you cannot specify \`-o' more than once" 1>&2
-+ exit 1
-+ fi
-+ user_target=next
-+ ;;
-+
-+ -static)
-+ build_old_libs=yes
-+ continue
-+ ;;
-+
-+ -prefer-pic)
-+ pic_mode=yes
-+ continue
-+ ;;
-+
-+ -prefer-non-pic)
-+ pic_mode=no
-+ continue
-+ ;;
-+
-+ -Xcompiler)
-+ prev=xcompiler
-+ continue
-+ ;;
-+
-+ -Wc,*)
-+ args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
-+ lastarg=
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=','
-+ for arg in $args; do
-+ IFS="$save_ifs"
-+
-+ # Double-quote args containing other shell metacharacters.
-+ # Many Bourne shells cannot handle close brackets correctly
-+ # in scan sets, so we specify it separately.
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ lastarg="$lastarg $arg"
-+ done
-+ IFS="$save_ifs"
-+ lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"`
-+
-+ # Add the arguments to base_compile.
-+ if test -z "$base_compile"; then
-+ base_compile="$lastarg"
-+ else
-+ base_compile="$base_compile $lastarg"
-+ fi
-+ continue
-+ ;;
-+ esac
-+
-+ case $user_target in
-+ next)
-+ # The next one is the -o target name
-+ user_target=yes
-+ continue
-+ ;;
-+ yes)
-+ # We got the output file
-+ user_target=set
-+ libobj="$arg"
-+ continue
-+ ;;
-+ esac
-+
-+ # Accept the current argument as the source file.
-+ lastarg="$srcfile"
-+ srcfile="$arg"
-+
-+ # Aesthetically quote the previous argument.
-+
-+ # Backslashify any backslashes, double quotes, and dollar signs.
-+ # These are the only characters that are still specially
-+ # interpreted inside of double-quoted scrings.
-+ lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"`
-+
-+ # Double-quote args containing other shell metacharacters.
-+ # Many Bourne shells cannot handle close brackets correctly
-+ # in scan sets, so we specify it separately.
-+ case $lastarg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ lastarg="\"$lastarg\""
-+ ;;
-+ esac
-+
-+ # Add the previous argument to base_compile.
-+ if test -z "$base_compile"; then
-+ base_compile="$lastarg"
-+ else
-+ base_compile="$base_compile $lastarg"
-+ fi
-+ done
-+
-+ case $user_target in
-+ set)
-+ ;;
-+ no)
-+ # Get the name of the library object.
-+ libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'`
-+ ;;
-+ *)
-+ $echo "$modename: you must specify a target with \`-o'" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+
-+ # Recognize several different file suffixes.
-+ # If the user specifies -o file.o, it is replaced with file.lo
-+ xform='[cCFSfmso]'
-+ case $libobj in
-+ *.ada) xform=ada ;;
-+ *.adb) xform=adb ;;
-+ *.ads) xform=ads ;;
-+ *.asm) xform=asm ;;
-+ *.c++) xform=c++ ;;
-+ *.cc) xform=cc ;;
-+ *.cpp) xform=cpp ;;
-+ *.cxx) xform=cxx ;;
-+ *.f90) xform=f90 ;;
-+ *.for) xform=for ;;
-+ esac
-+
-+ libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
-+
-+ case $libobj in
-+ *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
-+ *)
-+ $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+
-+ if test -z "$base_compile"; then
-+ $echo "$modename: you must specify a compilation command" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ # Delete any leftover library objects.
-+ if test "$build_old_libs" = yes; then
-+ removelist="$obj $libobj"
-+ else
-+ removelist="$libobj"
-+ fi
-+
-+ $run $rm $removelist
-+ trap "$run $rm $removelist; exit 1" 1 2 15
-+
-+ # On Cygwin there's no "real" PIC flag so we must build both object types
-+ case $host_os in
-+ cygwin* | mingw* | pw32* | os2*)
-+ pic_mode=default
-+ ;;
-+ esac
-+ if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then
-+ # non-PIC code in shared libraries is not supported
-+ pic_mode=default
-+ fi
-+
-+ # Calculate the filename of the output object if compiler does
-+ # not support -o with -c
-+ if test "$compiler_c_o" = no; then
-+ output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
-+ lockfile="$output_obj.lock"
-+ removelist="$removelist $output_obj $lockfile"
-+ trap "$run $rm $removelist; exit 1" 1 2 15
-+ else
-+ need_locks=no
-+ lockfile=
-+ fi
-+
-+ # Lock this critical section if it is needed
-+ # We use this script file to make the link, it avoids creating a new file
-+ if test "$need_locks" = yes; then
-+ until $run ln "$0" "$lockfile" 2>/dev/null; do
-+ $show "Waiting for $lockfile to be removed"
-+ sleep 2
-+ done
-+ elif test "$need_locks" = warn; then
-+ if test -f "$lockfile"; then
-+ echo "\
-+*** ERROR, $lockfile exists and contains:
-+`cat $lockfile 2>/dev/null`
-+
-+This indicates that another process is trying to use the same
-+temporary object file, and libtool could not work around it because
-+your compiler does not support \`-c' and \`-o' together. If you
-+repeat this compilation, it may succeed, by chance, but you had better
-+avoid parallel builds (make -j) in this platform, or get a better
-+compiler."
-+
-+ $run $rm $removelist
-+ exit 1
-+ fi
-+ echo $srcfile > "$lockfile"
-+ fi
-+
-+ if test -n "$fix_srcfile_path"; then
-+ eval srcfile=\"$fix_srcfile_path\"
-+ fi
-+
-+ # Only build a PIC object if we are building libtool libraries.
-+ if test "$build_libtool_libs" = yes; then
-+ # Without this assignment, base_compile gets emptied.
-+ fbsd_hideous_sh_bug=$base_compile
-+
-+ if test "$pic_mode" != no; then
-+ # All platforms use -DPIC, to notify preprocessed assembler code.
-+ command="$base_compile $srcfile $pic_flag -DPIC"
-+ else
-+ # Don't build PIC code
-+ command="$base_compile $srcfile"
-+ fi
-+ if test "$build_old_libs" = yes; then
-+ lo_libobj="$libobj"
-+ dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
-+ if test "X$dir" = "X$libobj"; then
-+ dir="$objdir"
-+ else
-+ dir="$dir/$objdir"
-+ fi
-+ libobj="$dir/"`$echo "X$libobj" | $Xsed -e 's%^.*/%%'`
-+
-+ if test -d "$dir"; then
-+ $show "$rm $libobj"
-+ $run $rm $libobj
-+ else
-+ $show "$mkdir $dir"
-+ $run $mkdir $dir
-+ status=$?
-+ if test $status -ne 0 && test ! -d $dir; then
-+ exit $status
-+ fi
-+ fi
-+ fi
-+ if test "$compiler_o_lo" = yes; then
-+ output_obj="$libobj"
-+ command="$command -o $output_obj"
-+ elif test "$compiler_c_o" = yes; then
-+ output_obj="$obj"
-+ command="$command -o $output_obj"
-+ fi
-+
-+ $run $rm "$output_obj"
-+ $show "$command"
-+ if $run eval "$command"; then :
-+ else
-+ test -n "$output_obj" && $run $rm $removelist
-+ exit 1
-+ fi
-+
-+ if test "$need_locks" = warn &&
-+ test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then
-+ echo "\
-+*** ERROR, $lockfile contains:
-+`cat $lockfile 2>/dev/null`
-+
-+but it should contain:
-+$srcfile
-+
-+This indicates that another process is trying to use the same
-+temporary object file, and libtool could not work around it because
-+your compiler does not support \`-c' and \`-o' together. If you
-+repeat this compilation, it may succeed, by chance, but you had better
-+avoid parallel builds (make -j) in this platform, or get a better
-+compiler."
-+
-+ $run $rm $removelist
-+ exit 1
-+ fi
-+
-+ # Just move the object if needed, then go on to compile the next one
-+ if test x"$output_obj" != x"$libobj"; then
-+ $show "$mv $output_obj $libobj"
-+ if $run $mv $output_obj $libobj; then :
-+ else
-+ error=$?
-+ $run $rm $removelist
-+ exit $error
-+ fi
-+ fi
-+
-+ # If we have no pic_flag, then copy the object into place and finish.
-+ if (test -z "$pic_flag" || test "$pic_mode" != default) &&
-+ test "$build_old_libs" = yes; then
-+ # Rename the .lo from within objdir to obj
-+ if test -f $obj; then
-+ $show $rm $obj
-+ $run $rm $obj
-+ fi
-+
-+ $show "$mv $libobj $obj"
-+ if $run $mv $libobj $obj; then :
-+ else
-+ error=$?
-+ $run $rm $removelist
-+ exit $error
-+ fi
-+
-+ xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
-+ if test "X$xdir" = "X$obj"; then
-+ xdir="."
-+ else
-+ xdir="$xdir"
-+ fi
-+ baseobj=`$echo "X$obj" | $Xsed -e "s%.*/%%"`
-+ libobj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
-+ # Now arrange that obj and lo_libobj become the same file
-+ $show "(cd $xdir && $LN_S $baseobj $libobj)"
-+ if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
-+ exit 0
-+ else
-+ error=$?
-+ $run $rm $removelist
-+ exit $error
-+ fi
-+ fi
-+
-+ # Allow error messages only from the first compilation.
-+ suppress_output=' >/dev/null 2>&1'
-+ fi
-+
-+ # Only build a position-dependent object if we build old libraries.
-+ if test "$build_old_libs" = yes; then
-+ if test "$pic_mode" != yes; then
-+ # Don't build PIC code
-+ command="$base_compile $srcfile"
-+ else
-+ # All platforms use -DPIC, to notify preprocessed assembler code.
-+ command="$base_compile $srcfile $pic_flag -DPIC"
-+ fi
-+ if test "$compiler_c_o" = yes; then
-+ command="$command -o $obj"
-+ output_obj="$obj"
-+ fi
-+
-+ # Suppress compiler output if we already did a PIC compilation.
-+ command="$command$suppress_output"
-+ $run $rm "$output_obj"
-+ $show "$command"
-+ if $run eval "$command"; then :
-+ else
-+ $run $rm $removelist
-+ exit 1
-+ fi
-+
-+ if test "$need_locks" = warn &&
-+ test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then
-+ echo "\
-+*** ERROR, $lockfile contains:
-+`cat $lockfile 2>/dev/null`
-+
-+but it should contain:
-+$srcfile
-+
-+This indicates that another process is trying to use the same
-+temporary object file, and libtool could not work around it because
-+your compiler does not support \`-c' and \`-o' together. If you
-+repeat this compilation, it may succeed, by chance, but you had better
-+avoid parallel builds (make -j) in this platform, or get a better
-+compiler."
-+
-+ $run $rm $removelist
-+ exit 1
-+ fi
-+
-+ # Just move the object if needed
-+ if test x"$output_obj" != x"$obj"; then
-+ $show "$mv $output_obj $obj"
-+ if $run $mv $output_obj $obj; then :
-+ else
-+ error=$?
-+ $run $rm $removelist
-+ exit $error
-+ fi
-+ fi
-+
-+ # Create an invalid libtool object if no PIC, so that we do not
-+ # accidentally link it into a program.
-+ if test "$build_libtool_libs" != yes; then
-+ $show "echo timestamp > $libobj"
-+ $run eval "echo timestamp > \$libobj" || exit $?
-+ else
-+ # Move the .lo from within objdir
-+ $show "$mv $libobj $lo_libobj"
-+ if $run $mv $libobj $lo_libobj; then :
-+ else
-+ error=$?
-+ $run $rm $removelist
-+ exit $error
-+ fi
-+ fi
-+ fi
-+
-+ # Unlock the critical section if it was locked
-+ if test "$need_locks" != no; then
-+ $run $rm "$lockfile"
-+ fi
-+
-+ exit 0
-+ ;;
-+
-+ # libtool link mode
-+ link | relink)
-+ modename="$modename: link"
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ # It is impossible to link a dll without this setting, and
-+ # we shouldn't force the makefile maintainer to figure out
-+ # which system we are compiling for in order to pass an extra
-+ # flag for every libtool invokation.
-+ # allow_undefined=no
-+
-+ # FIXME: Unfortunately, there are problems with the above when trying
-+ # to make a dll which has undefined symbols, in which case not
-+ # even a static library is built. For now, we need to specify
-+ # -no-undefined on the libtool link line when we can be certain
-+ # that all symbols are satisfied, otherwise we get a static library.
-+ allow_undefined=yes
-+ ;;
-+ *)
-+ allow_undefined=yes
-+ ;;
-+ esac
-+ libtool_args="$nonopt"
-+ compile_command="$nonopt"
-+ finalize_command="$nonopt"
-+
-+ compile_rpath=
-+ finalize_rpath=
-+ compile_shlibpath=
-+ finalize_shlibpath=
-+ convenience=
-+ old_convenience=
-+ deplibs=
-+ old_deplibs=
-+ compiler_flags=
-+ linker_flags=
-+ dllsearchpath=
-+ lib_search_path=`pwd`
-+ inst_prefix_dir=
-+
-+ avoid_version=no
-+ dlfiles=
-+ dlprefiles=
-+ dlself=no
-+ export_dynamic=no
-+ export_symbols=
-+ export_symbols_regex=
-+ generated=
-+ libobjs=
-+ ltlibs=
-+ module=no
-+ no_install=no
-+ objs=
-+ prefer_static_libs=no
-+ preload=no
-+ prev=
-+ prevarg=
-+ release=
-+ rpath=
-+ xrpath=
-+ perm_rpath=
-+ temp_rpath=
-+ thread_safe=no
-+ vinfo=
-+
-+ # We need to know -static, to get the right output filenames.
-+ for arg
-+ do
-+ case $arg in
-+ -all-static | -static)
-+ if test "X$arg" = "X-all-static"; then
-+ if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
-+ $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
-+ fi
-+ if test -n "$link_static_flag"; then
-+ dlopen_self=$dlopen_self_static
-+ fi
-+ else
-+ if test -z "$pic_flag" && test -n "$link_static_flag"; then
-+ dlopen_self=$dlopen_self_static
-+ fi
-+ fi
-+ build_libtool_libs=no
-+ build_old_libs=yes
-+ prefer_static_libs=yes
-+ break
-+ ;;
-+ esac
-+ done
-+
-+ # See if our shared archives depend on static archives.
-+ test -n "$old_archive_from_new_cmds" && build_old_libs=yes
-+
-+ # Go through the arguments, transforming them on the way.
-+ while test $# -gt 0; do
-+ arg="$1"
-+ shift
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test
-+ ;;
-+ *) qarg=$arg ;;
-+ esac
-+ libtool_args="$libtool_args $qarg"
-+
-+ # If the previous option needs an argument, assign it.
-+ if test -n "$prev"; then
-+ case $prev in
-+ output)
-+ compile_command="$compile_command @OUTPUT@"
-+ finalize_command="$finalize_command @OUTPUT@"
-+ ;;
-+ esac
-+
-+ case $prev in
-+ dlfiles|dlprefiles)
-+ if test "$preload" = no; then
-+ # Add the symbol object into the linking commands.
-+ compile_command="$compile_command @SYMFILE@"
-+ finalize_command="$finalize_command @SYMFILE@"
-+ preload=yes
-+ fi
-+ case $arg in
-+ *.la | *.lo) ;; # We handle these cases below.
-+ force)
-+ if test "$dlself" = no; then
-+ dlself=needless
-+ export_dynamic=yes
-+ fi
-+ prev=
-+ continue
-+ ;;
-+ self)
-+ if test "$prev" = dlprefiles; then
-+ dlself=yes
-+ elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
-+ dlself=yes
-+ else
-+ dlself=needless
-+ export_dynamic=yes
-+ fi
-+ prev=
-+ continue
-+ ;;
-+ *)
-+ if test "$prev" = dlfiles; then
-+ dlfiles="$dlfiles $arg"
-+ else
-+ dlprefiles="$dlprefiles $arg"
-+ fi
-+ prev=
-+ continue
-+ ;;
-+ esac
-+ ;;
-+ expsyms)
-+ export_symbols="$arg"
-+ if test ! -f "$arg"; then
-+ $echo "$modename: symbol file \`$arg' does not exist"
-+ exit 1
-+ fi
-+ prev=
-+ continue
-+ ;;
-+ expsyms_regex)
-+ export_symbols_regex="$arg"
-+ prev=
-+ continue
-+ ;;
-+ inst_prefix)
-+ inst_prefix_dir="$arg"
-+ prev=
-+ continue
-+ ;;
-+ release)
-+ release="-$arg"
-+ prev=
-+ continue
-+ ;;
-+ rpath | xrpath)
-+ # We need an absolute path.
-+ case $arg in
-+ [\\/]* | [A-Za-z]:[\\/]*) ;;
-+ *)
-+ $echo "$modename: only absolute run-paths are allowed" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+ if test "$prev" = rpath; then
-+ case "$rpath " in
-+ *" $arg "*) ;;
-+ *) rpath="$rpath $arg" ;;
-+ esac
-+ else
-+ case "$xrpath " in
-+ *" $arg "*) ;;
-+ *) xrpath="$xrpath $arg" ;;
-+ esac
-+ fi
-+ prev=
-+ continue
-+ ;;
-+ xcompiler)
-+ compiler_flags="$compiler_flags $qarg"
-+ prev=
-+ compile_command="$compile_command $qarg"
-+ finalize_command="$finalize_command $qarg"
-+ continue
-+ ;;
-+ xlinker)
-+ linker_flags="$linker_flags $qarg"
-+ compiler_flags="$compiler_flags $wl$qarg"
-+ prev=
-+ compile_command="$compile_command $wl$qarg"
-+ finalize_command="$finalize_command $wl$qarg"
-+ continue
-+ ;;
-+ *)
-+ eval "$prev=\"\$arg\""
-+ prev=
-+ continue
-+ ;;
-+ esac
-+ fi # test -n $prev
-+
-+ prevarg="$arg"
-+
-+ case $arg in
-+ -all-static)
-+ if test -n "$link_static_flag"; then
-+ compile_command="$compile_command $link_static_flag"
-+ finalize_command="$finalize_command $link_static_flag"
-+ fi
-+ continue
-+ ;;
-+
-+ -allow-undefined)
-+ # FIXME: remove this flag sometime in the future.
-+ $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2
-+ continue
-+ ;;
-+
-+ -avoid-version)
-+ avoid_version=yes
-+ continue
-+ ;;
-+
-+ -dlopen)
-+ prev=dlfiles
-+ continue
-+ ;;
-+
-+ -dlpreopen)
-+ prev=dlprefiles
-+ continue
-+ ;;
-+
-+ -export-dynamic)
-+ export_dynamic=yes
-+ continue
-+ ;;
-+
-+ -export-symbols | -export-symbols-regex)
-+ if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
-+ $echo "$modename: more than one -exported-symbols argument is not allowed"
-+ exit 1
-+ fi
-+ if test "X$arg" = "X-export-symbols"; then
-+ prev=expsyms
-+ else
-+ prev=expsyms_regex
-+ fi
-+ continue
-+ ;;
-+
-+ -inst-prefix-dir)
-+ prev=inst_prefix
-+ continue
-+ ;;
-+
-+ # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
-+ # so, if we see these flags be careful not to treat them like -L
-+ -L[A-Z][A-Z]*:*)
-+ case $with_gcc/$host in
-+ no/*-*-irix*)
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ ;;
-+ esac
-+ continue
-+ ;;
-+
-+ -L*)
-+ dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
-+ # We need an absolute path.
-+ case $dir in
-+ [\\/]* | [A-Za-z]:[\\/]*) ;;
-+ *)
-+ absdir=`cd "$dir" && pwd`
-+ if test -z "$absdir"; then
-+ $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
-+ exit 1
-+ fi
-+ dir="$absdir"
-+ ;;
-+ esac
-+ case "$deplibs " in
-+ *" -L$dir "*) ;;
-+ *)
-+ deplibs="$deplibs -L$dir"
-+ lib_search_path="$lib_search_path $dir"
-+ ;;
-+ esac
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ case :$dllsearchpath: in
-+ *":$dir:"*) ;;
-+ *) dllsearchpath="$dllsearchpath:$dir";;
-+ esac
-+ ;;
-+ esac
-+ continue
-+ ;;
-+
-+ -l*)
-+ if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
-+ case $host in
-+ *-*-cygwin* | *-*-pw32* | *-*-beos*)
-+ # These systems don't actually have a C or math library (as such)
-+ continue
-+ ;;
-+ *-*-mingw* | *-*-os2*)
-+ # These systems don't actually have a C library (as such)
-+ test "X$arg" = "X-lc" && continue
-+ ;;
-+ esac
-+ fi
-+ deplibs="$deplibs $arg"
-+ continue
-+ ;;
-+
-+ -module)
-+ module=yes
-+ continue
-+ ;;
-+
-+ -no-fast-install)
-+ fast_install=no
-+ continue
-+ ;;
-+
-+ -no-install)
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ # The PATH hackery in wrapper scripts is required on Windows
-+ # in order for the loader to find any dlls it needs.
-+ $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
-+ $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
-+ fast_install=no
-+ ;;
-+ *) no_install=yes ;;
-+ esac
-+ continue
-+ ;;
-+
-+ -no-undefined)
-+ allow_undefined=no
-+ continue
-+ ;;
-+
-+ -o) prev=output ;;
-+
-+ -release)
-+ prev=release
-+ continue
-+ ;;
-+
-+ -rpath)
-+ prev=rpath
-+ continue
-+ ;;
-+
-+ -R)
-+ prev=xrpath
-+ continue
-+ ;;
-+
-+ -R*)
-+ dir=`$echo "X$arg" | $Xsed -e 's/^-R//'`
-+ # We need an absolute path.
-+ case $dir in
-+ [\\/]* | [A-Za-z]:[\\/]*) ;;
-+ *)
-+ $echo "$modename: only absolute run-paths are allowed" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+ case "$xrpath " in
-+ *" $dir "*) ;;
-+ *) xrpath="$xrpath $dir" ;;
-+ esac
-+ continue
-+ ;;
-+
-+ -static)
-+ # The effects of -static are defined in a previous loop.
-+ # We used to do the same as -all-static on platforms that
-+ # didn't have a PIC flag, but the assumption that the effects
-+ # would be equivalent was wrong. It would break on at least
-+ # Digital Unix and AIX.
-+ continue
-+ ;;
-+
-+ -thread-safe)
-+ thread_safe=yes
-+ continue
-+ ;;
-+
-+ -version-info)
-+ prev=vinfo
-+ continue
-+ ;;
-+
-+ -Wc,*)
-+ args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'`
-+ arg=
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=','
-+ for flag in $args; do
-+ IFS="$save_ifs"
-+ case $flag in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ flag="\"$flag\""
-+ ;;
-+ esac
-+ arg="$arg $wl$flag"
-+ compiler_flags="$compiler_flags $flag"
-+ done
-+ IFS="$save_ifs"
-+ arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
-+ ;;
-+
-+ -Wl,*)
-+ args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
-+ arg=
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=','
-+ for flag in $args; do
-+ IFS="$save_ifs"
-+ case $flag in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ flag="\"$flag\""
-+ ;;
-+ esac
-+ arg="$arg $wl$flag"
-+ compiler_flags="$compiler_flags $wl$flag"
-+ linker_flags="$linker_flags $flag"
-+ done
-+ IFS="$save_ifs"
-+ arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
-+ ;;
-+
-+ -Xcompiler)
-+ prev=xcompiler
-+ continue
-+ ;;
-+
-+ -Xlinker)
-+ prev=xlinker
-+ continue
-+ ;;
-+
-+ # Some other compiler flag.
-+ -* | +*)
-+ # Unknown arguments in both finalize_command and compile_command need
-+ # to be aesthetically quoted because they are evaled later.
-+ arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ ;;
-+
-+ *.lo | *.$objext)
-+ # A library or standard object.
-+ if test "$prev" = dlfiles; then
-+ # This file was specified with -dlopen.
-+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
-+ dlfiles="$dlfiles $arg"
-+ prev=
-+ continue
-+ else
-+ # If libtool objects are unsupported, then we need to preload.
-+ prev=dlprefiles
-+ fi
-+ fi
-+
-+ if test "$prev" = dlprefiles; then
-+ # Preload the old-style object.
-+ dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"`
-+ prev=
-+ else
-+ case $arg in
-+ *.lo) libobjs="$libobjs $arg" ;;
-+ *) objs="$objs $arg" ;;
-+ esac
-+ fi
-+ ;;
-+
-+ *.$libext)
-+ # An archive.
-+ deplibs="$deplibs $arg"
-+ old_deplibs="$old_deplibs $arg"
-+ continue
-+ ;;
-+
-+ *.la)
-+ # A libtool-controlled library.
-+
-+ if test "$prev" = dlfiles; then
-+ # This library was specified with -dlopen.
-+ dlfiles="$dlfiles $arg"
-+ prev=
-+ elif test "$prev" = dlprefiles; then
-+ # The library was specified with -dlpreopen.
-+ dlprefiles="$dlprefiles $arg"
-+ prev=
-+ else
-+ deplibs="$deplibs $arg"
-+ fi
-+ continue
-+ ;;
-+
-+ # Some other compiler argument.
-+ *)
-+ # Unknown arguments in both finalize_command and compile_command need
-+ # to be aesthetically quoted because they are evaled later.
-+ arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ ;;
-+ esac # arg
-+
-+ # Now actually substitute the argument into the commands.
-+ if test -n "$arg"; then
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ fi
-+ done # argument parsing loop
-+
-+ if test -n "$prev"; then
-+ $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
-+ eval arg=\"$export_dynamic_flag_spec\"
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ fi
-+
-+ # calculate the name of the file, without its directory
-+ outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
-+ libobjs_save="$libobjs"
-+
-+ if test -n "$shlibpath_var"; then
-+ # get the directories listed in $shlibpath_var
-+ eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
-+ else
-+ shlib_search_path=
-+ fi
-+ eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
-+ eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
-+
-+ output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
-+ if test "X$output_objdir" = "X$output"; then
-+ output_objdir="$objdir"
-+ else
-+ output_objdir="$output_objdir/$objdir"
-+ fi
-+ # Create the object directory.
-+ if test ! -d $output_objdir; then
-+ $show "$mkdir $output_objdir"
-+ $run $mkdir $output_objdir
-+ status=$?
-+ if test $status -ne 0 && test ! -d $output_objdir; then
-+ exit $status
-+ fi
-+ fi
-+
-+ # Determine the type of output
-+ case $output in
-+ "")
-+ $echo "$modename: you must specify an output file" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ ;;
-+ *.$libext) linkmode=oldlib ;;
-+ *.lo | *.$objext) linkmode=obj ;;
-+ *.la) linkmode=lib ;;
-+ *) linkmode=prog ;; # Anything else should be a program.
-+ esac
-+
-+ specialdeplibs=
-+ libs=
-+ # Find all interdependent deplibs by searching for libraries
-+ # that are linked more than once (e.g. -la -lb -la)
-+ for deplib in $deplibs; do
-+ case "$libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ libs="$libs $deplib"
-+ done
-+ deplibs=
-+ newdependency_libs=
-+ newlib_search_path=
-+ need_relink=no # whether we're linking any uninstalled libtool libraries
-+ notinst_deplibs= # not-installed libtool libraries
-+ notinst_path= # paths that contain not-installed libtool libraries
-+ case $linkmode in
-+ lib)
-+ passes="conv link"
-+ for file in $dlfiles $dlprefiles; do
-+ case $file in
-+ *.la) ;;
-+ *)
-+ $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+ done
-+ ;;
-+ prog)
-+ compile_deplibs=
-+ finalize_deplibs=
-+ alldeplibs=no
-+ newdlfiles=
-+ newdlprefiles=
-+ passes="conv scan dlopen dlpreopen link"
-+ ;;
-+ *) passes="conv"
-+ ;;
-+ esac
-+ for pass in $passes; do
-+ if test $linkmode = prog; then
-+ # Determine which files to process
-+ case $pass in
-+ dlopen)
-+ libs="$dlfiles"
-+ save_deplibs="$deplibs" # Collect dlpreopened libraries
-+ deplibs=
-+ ;;
-+ dlpreopen) libs="$dlprefiles" ;;
-+ link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
-+ esac
-+ fi
-+ for deplib in $libs; do
-+ lib=
-+ found=no
-+ case $deplib in
-+ -l*)
-+ if test $linkmode = oldlib && test $linkmode = obj; then
-+ $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2
-+ continue
-+ fi
-+ if test $pass = conv; then
-+ deplibs="$deplib $deplibs"
-+ continue
-+ fi
-+ name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
-+ for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
-+ # Search the libtool library
-+ lib="$searchdir/lib${name}.la"
-+ if test -f "$lib"; then
-+ found=yes
-+ break
-+ fi
-+ done
-+ if test "$found" != yes; then
-+ # deplib doesn't seem to be a libtool library
-+ if test "$linkmode,$pass" = "prog,link"; then
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
-+ else
-+ deplibs="$deplib $deplibs"
-+ test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs"
-+ fi
-+ continue
-+ fi
-+ ;; # -l
-+ -L*)
-+ case $linkmode in
-+ lib)
-+ deplibs="$deplib $deplibs"
-+ test $pass = conv && continue
-+ newdependency_libs="$deplib $newdependency_libs"
-+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
-+ ;;
-+ prog)
-+ if test $pass = conv; then
-+ deplibs="$deplib $deplibs"
-+ continue
-+ fi
-+ if test $pass = scan; then
-+ deplibs="$deplib $deplibs"
-+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
-+ else
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
-+ fi
-+ ;;
-+ *)
-+ $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2
-+ ;;
-+ esac # linkmode
-+ continue
-+ ;; # -L
-+ -R*)
-+ if test $pass = link; then
-+ dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
-+ # Make sure the xrpath contains only unique directories.
-+ case "$xrpath " in
-+ *" $dir "*) ;;
-+ *) xrpath="$xrpath $dir" ;;
-+ esac
-+ fi
-+ deplibs="$deplib $deplibs"
-+ continue
-+ ;;
-+ *.la) lib="$deplib" ;;
-+ *.$libext)
-+ if test $pass = conv; then
-+ deplibs="$deplib $deplibs"
-+ continue
-+ fi
-+ case $linkmode in
-+ lib)
-+ if test "$deplibs_check_method" != pass_all; then
-+ echo
-+ echo "*** Warning: This library needs some functionality provided by $deplib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have."
-+ else
-+ echo
-+ echo "*** Warning: Linking the shared library $output against the"
-+ echo "*** static library $deplib is not portable!"
-+ deplibs="$deplib $deplibs"
-+ fi
-+ continue
-+ ;;
-+ prog)
-+ if test $pass != link; then
-+ deplibs="$deplib $deplibs"
-+ else
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
-+ fi
-+ continue
-+ ;;
-+ esac # linkmode
-+ ;; # *.$libext
-+ *.lo | *.$objext)
-+ if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
-+ # If there is no dlopen support or we're linking statically,
-+ # we need to preload.
-+ newdlprefiles="$newdlprefiles $deplib"
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
-+ else
-+ newdlfiles="$newdlfiles $deplib"
-+ fi
-+ continue
-+ ;;
-+ %DEPLIBS%)
-+ alldeplibs=yes
-+ continue
-+ ;;
-+ esac # case $deplib
-+ if test $found = yes || test -f "$lib"; then :
-+ else
-+ $echo "$modename: cannot find the library \`$lib'" 1>&2
-+ exit 1
-+ fi
-+
-+ # Check to see that this really is a libtool archive.
-+ if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ else
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+
-+ ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
-+ test "X$ladir" = "X$lib" && ladir="."
-+
-+ dlname=
-+ dlopen=
-+ dlpreopen=
-+ libdir=
-+ library_names=
-+ old_library=
-+ # If the library was installed with an old release of libtool,
-+ # it will not redefine variable installed.
-+ installed=yes
-+
-+ # Read the .la file
-+ case $lib in
-+ */* | *\\*) . $lib ;;
-+ *) . ./$lib ;;
-+ esac
-+
-+ if test "$linkmode,$pass" = "lib,link" ||
-+ test "$linkmode,$pass" = "prog,scan" ||
-+ { test $linkmode = oldlib && test $linkmode = obj; }; then
-+ # Add dl[pre]opened files of deplib
-+ test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
-+ test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
-+ fi
-+
-+ if test $pass = conv; then
-+ # Only check for convenience libraries
-+ deplibs="$lib $deplibs"
-+ if test -z "$libdir"; then
-+ if test -z "$old_library"; then
-+ $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
-+ exit 1
-+ fi
-+ # It is a libtool convenience library, so add in its objects.
-+ convenience="$convenience $ladir/$objdir/$old_library"
-+ old_convenience="$old_convenience $ladir/$objdir/$old_library"
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ deplibs="$deplib $deplibs"
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ tmp_libs="$tmp_libs $deplib"
-+ done
-+ elif test $linkmode != prog && test $linkmode != lib; then
-+ $echo "$modename: \`$lib' is not a convenience library" 1>&2
-+ exit 1
-+ fi
-+ continue
-+ fi # $pass = conv
-+
-+ # Get the name of the library we link against.
-+ linklib=
-+ for l in $old_library $library_names; do
-+ linklib="$l"
-+ done
-+ if test -z "$linklib"; then
-+ $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
-+ exit 1
-+ fi
-+
-+ # This library was specified with -dlopen.
-+ if test $pass = dlopen; then
-+ if test -z "$libdir"; then
-+ $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
-+ exit 1
-+ fi
-+ if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
-+ # If there is no dlname, no dlopen support or we're linking
-+ # statically, we need to preload.
-+ dlprefiles="$dlprefiles $lib"
-+ else
-+ newdlfiles="$newdlfiles $lib"
-+ fi
-+ continue
-+ fi # $pass = dlopen
-+
-+ # We need an absolute path.
-+ case $ladir in
-+ [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
-+ *)
-+ abs_ladir=`cd "$ladir" && pwd`
-+ if test -z "$abs_ladir"; then
-+ $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2
-+ $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
-+ abs_ladir="$ladir"
-+ fi
-+ ;;
-+ esac
-+ laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-+
-+ # Find the relevant object directory and library name.
-+ if test "X$installed" = Xyes; then
-+ if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
-+ $echo "$modename: warning: library \`$lib' was moved." 1>&2
-+ dir="$ladir"
-+ absdir="$abs_ladir"
-+ libdir="$abs_ladir"
-+ else
-+ dir="$libdir"
-+ absdir="$libdir"
-+ fi
-+ else
-+ dir="$ladir/$objdir"
-+ absdir="$abs_ladir/$objdir"
-+ # Remove this search path later
-+ notinst_path="$notinst_path $abs_ladir"
-+ fi # $installed = yes
-+ name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
-+
-+ # This library was specified with -dlpreopen.
-+ if test $pass = dlpreopen; then
-+ if test -z "$libdir"; then
-+ $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
-+ exit 1
-+ fi
-+ # Prefer using a static library (so that no silly _DYNAMIC symbols
-+ # are required to link).
-+ if test -n "$old_library"; then
-+ newdlprefiles="$newdlprefiles $dir/$old_library"
-+ # Otherwise, use the dlname, so that lt_dlopen finds it.
-+ elif test -n "$dlname"; then
-+ newdlprefiles="$newdlprefiles $dir/$dlname"
-+ else
-+ newdlprefiles="$newdlprefiles $dir/$linklib"
-+ fi
-+ fi # $pass = dlpreopen
-+
-+ if test -z "$libdir"; then
-+ # Link the convenience library
-+ if test $linkmode = lib; then
-+ deplibs="$dir/$old_library $deplibs"
-+ elif test "$linkmode,$pass" = "prog,link"; then
-+ compile_deplibs="$dir/$old_library $compile_deplibs"
-+ finalize_deplibs="$dir/$old_library $finalize_deplibs"
-+ else
-+ deplibs="$lib $deplibs"
-+ fi
-+ continue
-+ fi
-+
-+ if test $linkmode = prog && test $pass != link; then
-+ newlib_search_path="$newlib_search_path $ladir"
-+ deplibs="$lib $deplibs"
-+
-+ linkalldeplibs=no
-+ if test "$link_all_deplibs" != no || test -z "$library_names" ||
-+ test "$build_libtool_libs" = no; then
-+ linkalldeplibs=yes
-+ fi
-+
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ case $deplib in
-+ -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
-+ esac
-+ # Need to link against all dependency_libs?
-+ if test $linkalldeplibs = yes; then
-+ deplibs="$deplib $deplibs"
-+ else
-+ # Need to hardcode shared library paths
-+ # or/and link against static libraries
-+ newdependency_libs="$deplib $newdependency_libs"
-+ fi
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ tmp_libs="$tmp_libs $deplib"
-+ done # for deplib
-+ continue
-+ fi # $linkmode = prog...
-+
-+ link_static=no # Whether the deplib will be linked statically
-+ if test -n "$library_names" &&
-+ { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
-+ # Link against this shared library
-+
-+ if test "$linkmode,$pass" = "prog,link" ||
-+ { test $linkmode = lib && test $hardcode_into_libs = yes; }; then
-+ # Hardcode the library path.
-+ # Skip directories that are in the system default run-time
-+ # search path.
-+ case " $sys_lib_dlsearch_path " in
-+ *" $absdir "*) ;;
-+ *)
-+ case "$compile_rpath " in
-+ *" $absdir "*) ;;
-+ *) compile_rpath="$compile_rpath $absdir"
-+ esac
-+ ;;
-+ esac
-+ case " $sys_lib_dlsearch_path " in
-+ *" $libdir "*) ;;
-+ *)
-+ case "$finalize_rpath " in
-+ *" $libdir "*) ;;
-+ *) finalize_rpath="$finalize_rpath $libdir"
-+ esac
-+ ;;
-+ esac
-+ if test $linkmode = prog; then
-+ # We need to hardcode the library path
-+ if test -n "$shlibpath_var"; then
-+ # Make sure the rpath contains only unique directories.
-+ case "$temp_rpath " in
-+ *" $dir "*) ;;
-+ *" $absdir "*) ;;
-+ *) temp_rpath="$temp_rpath $dir" ;;
-+ esac
-+ fi
-+ fi
-+ fi # $linkmode,$pass = prog,link...
-+
-+ if test "$alldeplibs" = yes &&
-+ { test "$deplibs_check_method" = pass_all ||
-+ { test "$build_libtool_libs" = yes &&
-+ test -n "$library_names"; }; }; then
-+ # We only need to search for static libraries
-+ continue
-+ fi
-+
-+ if test "$installed" = no; then
-+ notinst_deplibs="$notinst_deplibs $lib"
-+ need_relink=no
-+ fi
-+
-+ if test -n "$old_archive_from_expsyms_cmds"; then
-+ # figure out the soname
-+ set dummy $library_names
-+ realname="$2"
-+ shift; shift
-+ libname=`eval \\$echo \"$libname_spec\"`
-+ # use dlname if we got it. it's perfectly good, no?
-+ if test -n "$dlname"; then
-+ soname="$dlname"
-+ elif test -n "$soname_spec"; then
-+ # bleh windows
-+ case $host in
-+ *cygwin*)
-+ major=`expr $current - $age`
-+ versuffix="-$major"
-+ ;;
-+ esac
-+ eval soname=\"$soname_spec\"
-+ else
-+ soname="$realname"
-+ fi
-+
-+ # Make a new name for the extract_expsyms_cmds to use
-+ soroot="$soname"
-+ soname=`echo $soroot | sed -e 's/^.*\///'`
-+ newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a"
-+
-+ # If the library has no export list, then create one now
-+ if test -f "$output_objdir/$soname-def"; then :
-+ else
-+ $show "extracting exported symbol list from \`$soname'"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ eval cmds=\"$extract_expsyms_cmds\"
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ fi
-+
-+ # Create $newlib
-+ if test -f "$output_objdir/$newlib"; then :; else
-+ $show "generating import library for \`$soname'"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ eval cmds=\"$old_archive_from_expsyms_cmds\"
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ fi
-+ # make sure the library variables are pointing to the new library
-+ dir=$output_objdir
-+ linklib=$newlib
-+ fi # test -n $old_archive_from_expsyms_cmds
-+
-+ if test $linkmode = prog || test "$mode" != relink; then
-+ add_shlibpath=
-+ add_dir=
-+ add=
-+ lib_linked=yes
-+ case $hardcode_action in
-+ immediate | unsupported)
-+ if test "$hardcode_direct" = no; then
-+ add="$dir/$linklib"
-+ elif test "$hardcode_minus_L" = no; then
-+ case $host in
-+ *-*-sunos*) add_shlibpath="$dir" ;;
-+ esac
-+ add_dir="-L$dir"
-+ add="-l$name"
-+ elif test "$hardcode_shlibpath_var" = no; then
-+ add_shlibpath="$dir"
-+ add="-l$name"
-+ else
-+ lib_linked=no
-+ fi
-+ ;;
-+ relink)
-+ if test "$hardcode_direct" = yes; then
-+ add="$dir/$linklib"
-+ elif test "$hardcode_minus_L" = yes; then
-+ add_dir="-L$dir"
-+ add="-l$name"
-+ elif test "$hardcode_shlibpath_var" = yes; then
-+ add_shlibpath="$dir"
-+ add="-l$name"
-+ else
-+ lib_linked=no
-+ fi
-+ ;;
-+ *) lib_linked=no ;;
-+ esac
-+
-+ if test "$lib_linked" != yes; then
-+ $echo "$modename: configuration error: unsupported hardcode properties"
-+ exit 1
-+ fi
-+
-+ if test -n "$add_shlibpath"; then
-+ case :$compile_shlibpath: in
-+ *":$add_shlibpath:"*) ;;
-+ *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
-+ esac
-+ fi
-+ if test $linkmode = prog; then
-+ test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
-+ test -n "$add" && compile_deplibs="$add $compile_deplibs"
-+ else
-+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
-+ test -n "$add" && deplibs="$add $deplibs"
-+ if test "$hardcode_direct" != yes && \
-+ test "$hardcode_minus_L" != yes && \
-+ test "$hardcode_shlibpath_var" = yes; then
-+ case :$finalize_shlibpath: in
-+ *":$libdir:"*) ;;
-+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
-+ esac
-+ fi
-+ fi
-+ fi
-+
-+ if test $linkmode = prog || test "$mode" = relink; then
-+ add_shlibpath=
-+ add_dir=
-+ add=
-+ # Finalize command for both is simple: just hardcode it.
-+ if test "$hardcode_direct" = yes; then
-+ add="$libdir/$linklib"
-+ elif test "$hardcode_minus_L" = yes; then
-+ # Try looking first in the location we're being installed to.
-+ add_dir=
-+ if test -n "$inst_prefix_dir"; then
-+ case "$libdir" in
-+ [\\/]*)
-+ add_dir="-L$inst_prefix_dir$libdir"
-+ ;;
-+ esac
-+ fi
-+ add_dir="$add_dir -L$libdir"
-+ add="-l$name"
-+ elif test "$hardcode_shlibpath_var" = yes; then
-+ case :$finalize_shlibpath: in
-+ *":$libdir:"*) ;;
-+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
-+ esac
-+ add="-l$name"
-+ else
-+ # We cannot seem to hardcode it, guess we'll fake it.
-+ # Try looking first in the location we're being installed to.
-+ add_dir=
-+ if test -n "$inst_prefix_dir"; then
-+ case "$libdir" in
-+ [\\/]*)
-+ add_dir="-L$inst_prefix_dir$libdir"
-+ ;;
-+ esac
-+ fi
-+ add_dir="$add_dir -L$libdir"
-+ add="-l$name"
-+ fi
-+
-+ if test $linkmode = prog; then
-+ test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
-+ test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
-+ else
-+ test -n "$add_dir" && deplibs="$add_dir $deplibs"
-+ test -n "$add" && deplibs="$add $deplibs"
-+ fi
-+ fi
-+ elif test $linkmode = prog; then
-+ if test "$alldeplibs" = yes &&
-+ { test "$deplibs_check_method" = pass_all ||
-+ { test "$build_libtool_libs" = yes &&
-+ test -n "$library_names"; }; }; then
-+ # We only need to search for static libraries
-+ continue
-+ fi
-+
-+ # Try to link the static library
-+ # Here we assume that one of hardcode_direct or hardcode_minus_L
-+ # is not unsupported. This is valid on all known static and
-+ # shared platforms.
-+ if test "$hardcode_direct" != unsupported; then
-+ test -n "$old_library" && linklib="$old_library"
-+ compile_deplibs="$dir/$linklib $compile_deplibs"
-+ finalize_deplibs="$dir/$linklib $finalize_deplibs"
-+ else
-+ compile_deplibs="-l$name -L$dir $compile_deplibs"
-+ finalize_deplibs="-l$name -L$dir $finalize_deplibs"
-+ fi
-+ elif test "$build_libtool_libs" = yes; then
-+ # Not a shared library
-+ if test "$deplibs_check_method" != pass_all; then
-+ # We're trying link a shared library against a static one
-+ # but the system doesn't support it.
-+
-+ # Just print a warning and add the library to dependency_libs so
-+ # that the program can be linked against the static library.
-+ echo
-+ echo "*** Warning: This library needs some functionality provided by $lib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have."
-+ if test "$module" = yes; then
-+ echo "*** Therefore, libtool will create a static module, that should work "
-+ echo "*** as long as the dlopening application is linked with the -dlopen flag."
-+ if test -z "$global_symbol_pipe"; then
-+ echo
-+ echo "*** However, this would only work if libtool was able to extract symbol"
-+ echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
-+ echo "*** not find such a program. So, this module is probably useless."
-+ echo "*** \`nm' from GNU binutils and a full rebuild may help."
-+ fi
-+ if test "$build_old_libs" = no; then
-+ build_libtool_libs=module
-+ build_old_libs=yes
-+ else
-+ build_libtool_libs=no
-+ fi
-+ fi
-+ else
-+ convenience="$convenience $dir/$old_library"
-+ old_convenience="$old_convenience $dir/$old_library"
-+ deplibs="$dir/$old_library $deplibs"
-+ link_static=yes
-+ fi
-+ fi # link shared/static library?
-+
-+ if test $linkmode = lib; then
-+ if test -n "$dependency_libs" &&
-+ { test $hardcode_into_libs != yes || test $build_old_libs = yes ||
-+ test $link_static = yes; }; then
-+ # Extract -R from dependency_libs
-+ temp_deplibs=
-+ for libdir in $dependency_libs; do
-+ case $libdir in
-+ -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`
-+ case " $xrpath " in
-+ *" $temp_xrpath "*) ;;
-+ *) xrpath="$xrpath $temp_xrpath";;
-+ esac;;
-+ *) temp_deplibs="$temp_deplibs $libdir";;
-+ esac
-+ done
-+ dependency_libs="$temp_deplibs"
-+ fi
-+
-+ newlib_search_path="$newlib_search_path $absdir"
-+ # Link against this library
-+ test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
-+ # ... and its dependency_libs
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ newdependency_libs="$deplib $newdependency_libs"
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ tmp_libs="$tmp_libs $deplib"
-+ done
-+
-+ if test $link_all_deplibs != no; then
-+ # Add the search paths of all dependency libraries
-+ for deplib in $dependency_libs; do
-+ case $deplib in
-+ -L*) path="$deplib" ;;
-+ *.la)
-+ dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
-+ test "X$dir" = "X$deplib" && dir="."
-+ # We need an absolute path.
-+ case $dir in
-+ [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
-+ *)
-+ absdir=`cd "$dir" && pwd`
-+ if test -z "$absdir"; then
-+ $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
-+ absdir="$dir"
-+ fi
-+ ;;
-+ esac
-+ if grep "^installed=no" $deplib > /dev/null; then
-+ path="-L$absdir/$objdir"
-+ else
-+ eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ if test "$absdir" != "$libdir"; then
-+ $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
-+ fi
-+ path="-L$absdir"
-+ fi
-+ ;;
-+ *) continue ;;
-+ esac
-+ case " $deplibs " in
-+ *" $path "*) ;;
-+ *) deplibs="$deplibs $path" ;;
-+ esac
-+ done
-+ fi # link_all_deplibs != no
-+ fi # linkmode = lib
-+ done # for deplib in $libs
-+ if test $pass = dlpreopen; then
-+ # Link the dlpreopened libraries before other libraries
-+ for deplib in $save_deplibs; do
-+ deplibs="$deplib $deplibs"
-+ done
-+ fi
-+ if test $pass != dlopen; then
-+ test $pass != scan && dependency_libs="$newdependency_libs"
-+ if test $pass != conv; then
-+ # Make sure lib_search_path contains only unique directories.
-+ lib_search_path=
-+ for dir in $newlib_search_path; do
-+ case "$lib_search_path " in
-+ *" $dir "*) ;;
-+ *) lib_search_path="$lib_search_path $dir" ;;
-+ esac
-+ done
-+ newlib_search_path=
-+ fi
-+
-+ if test "$linkmode,$pass" != "prog,link"; then
-+ vars="deplibs"
-+ else
-+ vars="compile_deplibs finalize_deplibs"
-+ fi
-+ for var in $vars dependency_libs; do
-+ # Add libraries to $var in reverse order
-+ eval tmp_libs=\"\$$var\"
-+ new_libs=
-+ for deplib in $tmp_libs; do
-+ case $deplib in
-+ -L*) new_libs="$deplib $new_libs" ;;
-+ *)
-+ case " $specialdeplibs " in
-+ *" $deplib "*) new_libs="$deplib $new_libs" ;;
-+ *)
-+ case " $new_libs " in
-+ *" $deplib "*) ;;
-+ *) new_libs="$deplib $new_libs" ;;
-+ esac
-+ ;;
-+ esac
-+ ;;
-+ esac
-+ done
-+ tmp_libs=
-+ for deplib in $new_libs; do
-+ case $deplib in
-+ -L*)
-+ case " $tmp_libs " in
-+ *" $deplib "*) ;;
-+ *) tmp_libs="$tmp_libs $deplib" ;;
-+ esac
-+ ;;
-+ *) tmp_libs="$tmp_libs $deplib" ;;
-+ esac
-+ done
-+ eval $var=\"$tmp_libs\"
-+ done # for var
-+ fi
-+ if test "$pass" = "conv" &&
-+ { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then
-+ libs="$deplibs" # reset libs
-+ deplibs=
-+ fi
-+ done # for pass
-+ if test $linkmode = prog; then
-+ dlfiles="$newdlfiles"
-+ dlprefiles="$newdlprefiles"
-+ fi
-+
-+ case $linkmode in
-+ oldlib)
-+ if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-+ $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
-+ fi
-+
-+ if test -n "$rpath"; then
-+ $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2
-+ fi
-+
-+ if test -n "$xrpath"; then
-+ $echo "$modename: warning: \`-R' is ignored for archives" 1>&2
-+ fi
-+
-+ if test -n "$vinfo"; then
-+ $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2
-+ fi
-+
-+ if test -n "$release"; then
-+ $echo "$modename: warning: \`-release' is ignored for archives" 1>&2
-+ fi
-+
-+ if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
-+ $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2
-+ fi
-+
-+ # Now set the variables for building old libraries.
-+ build_libtool_libs=no
-+ oldlibs="$output"
-+ objs="$objs$old_deplibs"
-+ ;;
-+
-+ lib)
-+ # Make sure we only generate libraries of the form `libNAME.la'.
-+ case $outputname in
-+ lib*)
-+ name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
-+ eval libname=\"$libname_spec\"
-+ ;;
-+ *)
-+ if test "$module" = no; then
-+ $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+ if test "$need_lib_prefix" != no; then
-+ # Add the "lib" prefix for modules if required
-+ name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
-+ eval libname=\"$libname_spec\"
-+ else
-+ libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
-+ fi
-+ ;;
-+ esac
-+
-+ if test -n "$objs"; then
-+ if test "$deplibs_check_method" != pass_all; then
-+ $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
-+ exit 1
-+ else
-+ echo
-+ echo "*** Warning: Linking the shared library $output against the non-libtool"
-+ echo "*** objects $objs is not portable!"
-+ libobjs="$libobjs $objs"
-+ fi
-+ fi
-+
-+ if test "$dlself" != no; then
-+ $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2
-+ fi
-+
-+ set dummy $rpath
-+ if test $# -gt 2; then
-+ $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
-+ fi
-+ install_libdir="$2"
-+
-+ oldlibs=
-+ if test -z "$rpath"; then
-+ if test "$build_libtool_libs" = yes; then
-+ # Building a libtool convenience library.
-+ libext=al
-+ oldlibs="$output_objdir/$libname.$libext $oldlibs"
-+ build_libtool_libs=convenience
-+ build_old_libs=yes
-+ fi
-+
-+ if test -n "$vinfo"; then
-+ $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2
-+ fi
-+
-+ if test -n "$release"; then
-+ $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2
-+ fi
-+ else
-+
-+ # Parse the version information argument.
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=':'
-+ set dummy $vinfo 0 0 0
-+ IFS="$save_ifs"
-+
-+ if test -n "$8"; then
-+ $echo "$modename: too many parameters to \`-version-info'" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ current="$2"
-+ revision="$3"
-+ age="$4"
-+
-+ # Check that each of the things are valid numbers.
-+ case $current in
-+ [0-9]*) ;;
-+ *)
-+ $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
-+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+
-+ case $revision in
-+ [0-9]*) ;;
-+ *)
-+ $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
-+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+
-+ case $age in
-+ [0-9]*) ;;
-+ *)
-+ $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
-+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+
-+ if test $age -gt $current; then
-+ $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
-+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-+ exit 1
-+ fi
-+
-+ # Calculate the version variables.
-+ major=
-+ versuffix=
-+ verstring=
-+ case $version_type in
-+ none) ;;
-+
-+ darwin)
-+ # Like Linux, but with the current version available in
-+ # verstring for coding it into the library header
-+ major=.`expr $current - $age`
-+ versuffix="$major.$age.$revision"
-+ # Darwin ld doesn't like 0 for these options...
-+ minor_current=`expr $current + 1`
-+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
-+ ;;
-+
-+ freebsd-aout)
-+ major=".$current"
-+ versuffix=".$current.$revision";
-+ ;;
-+
-+ freebsd-elf)
-+ major=".$current"
-+ versuffix=".$current";
-+ ;;
-+
-+ irix)
-+ major=`expr $current - $age + 1`
-+ verstring="sgi$major.$revision"
-+
-+ # Add in all the interfaces that we are compatible with.
-+ loop=$revision
-+ while test $loop != 0; do
-+ iface=`expr $revision - $loop`
-+ loop=`expr $loop - 1`
-+ verstring="sgi$major.$iface:$verstring"
-+ done
-+
-+ # Before this point, $major must not contain `.'.
-+ major=.$major
-+ versuffix="$major.$revision"
-+ ;;
-+
-+ linux)
-+ major=.`expr $current - $age`
-+ versuffix="$major.$age.$revision"
-+ ;;
-+
-+ osf)
-+ major=`expr $current - $age`
-+ versuffix=".$current.$age.$revision"
-+ verstring="$current.$age.$revision"
-+
-+ # Add in all the interfaces that we are compatible with.
-+ loop=$age
-+ while test $loop != 0; do
-+ iface=`expr $current - $loop`
-+ loop=`expr $loop - 1`
-+ verstring="$verstring:${iface}.0"
-+ done
-+
-+ # Make executables depend on our current version.
-+ verstring="$verstring:${current}.0"
-+ ;;
-+
-+ sunos)
-+ major=".$current"
-+ versuffix=".$current.$revision"
-+ ;;
-+
-+ windows)
-+ # Use '-' rather than '.', since we only want one
-+ # extension on DOS 8.3 filesystems.
-+ major=`expr $current - $age`
-+ versuffix="-$major"
-+ ;;
-+
-+ *)
-+ $echo "$modename: unknown library version type \`$version_type'" 1>&2
-+ echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
-+ exit 1
-+ ;;
-+ esac
-+
-+ # Clear the version info if we defaulted, and they specified a release.
-+ if test -z "$vinfo" && test -n "$release"; then
-+ major=
-+ verstring="0.0"
-+ if test "$need_version" = no; then
-+ versuffix=
-+ else
-+ versuffix=".0.0"
-+ fi
-+ fi
-+
-+ # Remove version info from name if versioning should be avoided
-+ if test "$avoid_version" = yes && test "$need_version" = no; then
-+ major=
-+ versuffix=
-+ verstring=""
-+ fi
-+
-+ # Check to see if the archive will have undefined symbols.
-+ if test "$allow_undefined" = yes; then
-+ if test "$allow_undefined_flag" = unsupported; then
-+ $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
-+ build_libtool_libs=no
-+ build_old_libs=yes
-+ fi
-+ else
-+ # Don't allow undefined symbols.
-+ allow_undefined_flag="$no_undefined_flag"
-+ fi
-+ fi
-+
-+ if test "$mode" != relink; then
-+ # Remove our outputs.
-+ $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*"
-+ $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*
-+ fi
-+
-+ # Now set the variables for building old libraries.
-+ if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
-+ oldlibs="$oldlibs $output_objdir/$libname.$libext"
-+
-+ # Transform .lo files to .o files.
-+ oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
-+ fi
-+
-+ # Eliminate all temporary directories.
-+ for path in $notinst_path; do
-+ lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'`
-+ deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'`
-+ dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'`
-+ done
-+
-+ if test -n "$xrpath"; then
-+ # If the user specified any rpath flags, then add them.
-+ temp_xrpath=
-+ for libdir in $xrpath; do
-+ temp_xrpath="$temp_xrpath -R$libdir"
-+ case "$finalize_rpath " in
-+ *" $libdir "*) ;;
-+ *) finalize_rpath="$finalize_rpath $libdir" ;;
-+ esac
-+ done
-+ if test $hardcode_into_libs != yes || test $build_old_libs = yes; then
-+ dependency_libs="$temp_xrpath $dependency_libs"
-+ fi
-+ fi
-+
-+ # Make sure dlfiles contains only unique files that won't be dlpreopened
-+ old_dlfiles="$dlfiles"
-+ dlfiles=
-+ for lib in $old_dlfiles; do
-+ case " $dlprefiles $dlfiles " in
-+ *" $lib "*) ;;
-+ *) dlfiles="$dlfiles $lib" ;;
-+ esac
-+ done
-+
-+ # Make sure dlprefiles contains only unique files
-+ old_dlprefiles="$dlprefiles"
-+ dlprefiles=
-+ for lib in $old_dlprefiles; do
-+ case "$dlprefiles " in
-+ *" $lib "*) ;;
-+ *) dlprefiles="$dlprefiles $lib" ;;
-+ esac
-+ done
-+
-+ if test "$build_libtool_libs" = yes; then
-+ if test -n "$rpath"; then
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
-+ # these systems don't actually have a c library (as such)!
-+ ;;
-+ *-*-rhapsody* | *-*-darwin1.[012])
-+ # Rhapsody C library is in the System framework
-+ deplibs="$deplibs -framework System"
-+ ;;
-+ *-*-netbsd*)
-+ # Don't link with libc until the a.out ld.so is fixed.
-+ ;;
-+ *)
-+ # Add libc to deplibs on all other systems if necessary.
-+ if test $build_libtool_need_lc = "yes"; then
-+ deplibs="$deplibs -lc"
-+ fi
-+ ;;
-+ esac
-+ fi
-+
-+ # Transform deplibs into only deplibs that can be linked in shared.
-+ name_save=$name
-+ libname_save=$libname
-+ release_save=$release
-+ versuffix_save=$versuffix
-+ major_save=$major
-+ # I'm not sure if I'm treating the release correctly. I think
-+ # release should show up in the -l (ie -lgmp5) so we don't want to
-+ # add it in twice. Is that correct?
-+ release=""
-+ versuffix=""
-+ major=""
-+ newdeplibs=
-+ droppeddeps=no
-+ case $deplibs_check_method in
-+ pass_all)
-+ # Don't check for shared/static. Everything works.
-+ # This might be a little naive. We might want to check
-+ # whether the library exists or not. But this is on
-+ # osf3 & osf4 and I'm not really sure... Just
-+ # implementing what was already the behaviour.
-+ newdeplibs=$deplibs
-+ ;;
-+ test_compile)
-+ # This code stresses the "libraries are programs" paradigm to its
-+ # limits. Maybe even breaks it. We compile a program, linking it
-+ # against the deplibs as a proxy for the library. Then we can check
-+ # whether they linked in statically or dynamically with ldd.
-+ $rm conftest.c
-+ cat > conftest.c <<EOF
-+ int main() { return 0; }
-+EOF
-+ $rm conftest
-+ $CC -o conftest conftest.c $deplibs
-+ if test $? -eq 0 ; then
-+ ldd_output=`ldd conftest`
-+ for i in $deplibs; do
-+ name="`expr $i : '-l\(.*\)'`"
-+ # If $name is empty we are operating on a -L argument.
-+ if test -n "$name" && test "$name" != "0"; then
-+ libname=`eval \\$echo \"$libname_spec\"`
-+ deplib_matches=`eval \\$echo \"$library_names_spec\"`
-+ set dummy $deplib_matches
-+ deplib_match=$2
-+ if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
-+ newdeplibs="$newdeplibs $i"
-+ else
-+ droppeddeps=yes
-+ echo
-+ echo "*** Warning: This library needs some functionality provided by $i."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have."
-+ fi
-+ else
-+ newdeplibs="$newdeplibs $i"
-+ fi
-+ done
-+ else
-+ # Error occured in the first compile. Let's try to salvage the situation:
-+ # Compile a seperate program for each library.
-+ for i in $deplibs; do
-+ name="`expr $i : '-l\(.*\)'`"
-+ # If $name is empty we are operating on a -L argument.
-+ if test -n "$name" && test "$name" != "0"; then
-+ $rm conftest
-+ $CC -o conftest conftest.c $i
-+ # Did it work?
-+ if test $? -eq 0 ; then
-+ ldd_output=`ldd conftest`
-+ libname=`eval \\$echo \"$libname_spec\"`
-+ deplib_matches=`eval \\$echo \"$library_names_spec\"`
-+ set dummy $deplib_matches
-+ deplib_match=$2
-+ if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
-+ newdeplibs="$newdeplibs $i"
-+ else
-+ droppeddeps=yes
-+ echo
-+ echo "*** Warning: This library needs some functionality provided by $i."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have."
-+ fi
-+ else
-+ droppeddeps=yes
-+ echo
-+ echo "*** Warning! Library $i is needed by this library but I was not able to"
-+ echo "*** make it link in! You will probably need to install it or some"
-+ echo "*** library that it depends on before this library will be fully"
-+ echo "*** functional. Installing it before continuing would be even better."
-+ fi
-+ else
-+ newdeplibs="$newdeplibs $i"
-+ fi
-+ done
-+ fi
-+ ;;
-+ file_magic*)
-+ set dummy $deplibs_check_method
-+ file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
-+ for a_deplib in $deplibs; do
-+ name="`expr $a_deplib : '-l\(.*\)'`"
-+ # If $name is empty we are operating on a -L argument.
-+ if test -n "$name" && test "$name" != "0"; then
-+ libname=`eval \\$echo \"$libname_spec\"`
-+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
-+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
-+ for potent_lib in $potential_libs; do
-+ # Follow soft links.
-+ if ls -lLd "$potent_lib" 2>/dev/null \
-+ | grep " -> " >/dev/null; then
-+ continue
-+ fi
-+ # The statement above tries to avoid entering an
-+ # endless loop below, in case of cyclic links.
-+ # We might still enter an endless loop, since a link
-+ # loop can be closed while we follow links,
-+ # but so what?
-+ potlib="$potent_lib"
-+ while test -h "$potlib" 2>/dev/null; do
-+ potliblink=`ls -ld $potlib | sed 's/.* -> //'`
-+ case $potliblink in
-+ [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
-+ *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
-+ esac
-+ done
-+ if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
-+ | sed 10q \
-+ | egrep "$file_magic_regex" > /dev/null; then
-+ newdeplibs="$newdeplibs $a_deplib"
-+ a_deplib=""
-+ break 2
-+ fi
-+ done
-+ done
-+ if test -n "$a_deplib" ; then
-+ droppeddeps=yes
-+ echo
-+ echo "*** Warning: This library needs some functionality provided by $a_deplib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have."
-+ fi
-+ else
-+ # Add a -L argument.
-+ newdeplibs="$newdeplibs $a_deplib"
-+ fi
-+ done # Gone through all deplibs.
-+ ;;
-+ match_pattern*)
-+ set dummy $deplibs_check_method
-+ match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
-+ for a_deplib in $deplibs; do
-+ name="`expr $a_deplib : '-l\(.*\)'`"
-+ # If $name is empty we are operating on a -L argument.
-+ if test -n "$name" && test "$name" != "0"; then
-+ libname=`eval \\$echo \"$libname_spec\"`
-+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
-+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
-+ for potent_lib in $potential_libs; do
-+ if eval echo \"$potent_lib\" 2>/dev/null \
-+ | sed 10q \
-+ | egrep "$match_pattern_regex" > /dev/null; then
-+ newdeplibs="$newdeplibs $a_deplib"
-+ a_deplib=""
-+ break 2
-+ fi
-+ done
-+ done
-+ if test -n "$a_deplib" ; then
-+ droppeddeps=yes
-+ echo
-+ echo "*** Warning: This library needs some functionality provided by $a_deplib."
-+ echo "*** I have the capability to make that library automatically link in when"
-+ echo "*** you link to this library. But I can only do this if you have a"
-+ echo "*** shared version of the library, which you do not appear to have."
-+ fi
-+ else
-+ # Add a -L argument.
-+ newdeplibs="$newdeplibs $a_deplib"
-+ fi
-+ done # Gone through all deplibs.
-+ ;;
-+ none | unknown | *)
-+ newdeplibs=""
-+ if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \
-+ -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' |
-+ grep . >/dev/null; then
-+ echo
-+ if test "X$deplibs_check_method" = "Xnone"; then
-+ echo "*** Warning: inter-library dependencies are not supported in this platform."
-+ else
-+ echo "*** Warning: inter-library dependencies are not known to be supported."
-+ fi
-+ echo "*** All declared inter-library dependencies are being dropped."
-+ droppeddeps=yes
-+ fi
-+ ;;
-+ esac
-+ versuffix=$versuffix_save
-+ major=$major_save
-+ release=$release_save
-+ libname=$libname_save
-+ name=$name_save
-+
-+ case $host in
-+ *-*-rhapsody* | *-*-darwin1.[012])
-+ # On Rhapsody replace the C library is the System framework
-+ newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ ;;
-+ esac
-+
-+ if test "$droppeddeps" = yes; then
-+ if test "$module" = yes; then
-+ echo
-+ echo "*** Warning: libtool could not satisfy all declared inter-library"
-+ echo "*** dependencies of module $libname. Therefore, libtool will create"
-+ echo "*** a static module, that should work as long as the dlopening"
-+ echo "*** application is linked with the -dlopen flag."
-+ if test -z "$global_symbol_pipe"; then
-+ echo
-+ echo "*** However, this would only work if libtool was able to extract symbol"
-+ echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
-+ echo "*** not find such a program. So, this module is probably useless."
-+ echo "*** \`nm' from GNU binutils and a full rebuild may help."
-+ fi
-+ if test "$build_old_libs" = no; then
-+ oldlibs="$output_objdir/$libname.$libext"
-+ build_libtool_libs=module
-+ build_old_libs=yes
-+ else
-+ build_libtool_libs=no
-+ fi
-+ else
-+ echo "*** The inter-library dependencies that have been dropped here will be"
-+ echo "*** automatically added whenever a program is linked with this library"
-+ echo "*** or is declared to -dlopen it."
-+
-+ if test $allow_undefined = no; then
-+ echo
-+ echo "*** Since this library must not contain undefined symbols,"
-+ echo "*** because either the platform does not support them or"
-+ echo "*** it was explicitly requested with -no-undefined,"
-+ echo "*** libtool will only create a static version of it."
-+ if test "$build_old_libs" = no; then
-+ oldlibs="$output_objdir/$libname.$libext"
-+ build_libtool_libs=module
-+ build_old_libs=yes
-+ else
-+ build_libtool_libs=no
-+ fi
-+ fi
-+ fi
-+ fi
-+ # Done checking deplibs!
-+ deplibs=$newdeplibs
-+ fi
-+
-+ # All the library-specific variables (install_libdir is set above).
-+ library_names=
-+ old_library=
-+ dlname=
-+
-+ # Test again, we may have decided not to build it any more
-+ if test "$build_libtool_libs" = yes; then
-+ if test $hardcode_into_libs = yes; then
-+ # Hardcode the library paths
-+ hardcode_libdirs=
-+ dep_rpath=
-+ rpath="$finalize_rpath"
-+ test "$mode" != relink && rpath="$compile_rpath$rpath"
-+ for libdir in $rpath; do
-+ if test -n "$hardcode_libdir_flag_spec"; then
-+ if test -n "$hardcode_libdir_separator"; then
-+ if test -z "$hardcode_libdirs"; then
-+ hardcode_libdirs="$libdir"
-+ else
-+ # Just accumulate the unique libdirs.
-+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
-+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
-+ ;;
-+ *)
-+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
-+ ;;
-+ esac
-+ fi
-+ else
-+ eval flag=\"$hardcode_libdir_flag_spec\"
-+ dep_rpath="$dep_rpath $flag"
-+ fi
-+ elif test -n "$runpath_var"; then
-+ case "$perm_rpath " in
-+ *" $libdir "*) ;;
-+ *) perm_rpath="$perm_rpath $libdir" ;;
-+ esac
-+ fi
-+ done
-+ # Substitute the hardcoded libdirs into the rpath.
-+ if test -n "$hardcode_libdir_separator" &&
-+ test -n "$hardcode_libdirs"; then
-+ libdir="$hardcode_libdirs"
-+ eval dep_rpath=\"$hardcode_libdir_flag_spec\"
-+ fi
-+ if test -n "$runpath_var" && test -n "$perm_rpath"; then
-+ # We should set the runpath_var.
-+ rpath=
-+ for dir in $perm_rpath; do
-+ rpath="$rpath$dir:"
-+ done
-+ eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
-+ fi
-+ test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
-+ fi
-+
-+ shlibpath="$finalize_shlibpath"
-+ test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
-+ if test -n "$shlibpath"; then
-+ eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
-+ fi
-+
-+ # Get the real and link names of the library.
-+ eval library_names=\"$library_names_spec\"
-+ set dummy $library_names
-+ realname="$2"
-+ shift; shift
-+
-+ if test -n "$soname_spec"; then
-+ eval soname=\"$soname_spec\"
-+ else
-+ soname="$realname"
-+ fi
-+ test -z "$dlname" && dlname=$soname
-+
-+ lib="$output_objdir/$realname"
-+ for link
-+ do
-+ linknames="$linknames $link"
-+ done
-+
-+ # Ensure that we have .o objects for linkers which dislike .lo
-+ # (e.g. aix) in case we are running --disable-static
-+ for obj in $libobjs; do
-+ xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
-+ if test "X$xdir" = "X$obj"; then
-+ xdir="."
-+ else
-+ xdir="$xdir"
-+ fi
-+ baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
-+ oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
-+ if test ! -f $xdir/$oldobj; then
-+ $show "(cd $xdir && ${LN_S} $baseobj $oldobj)"
-+ $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $?
-+ fi
-+ done
-+
-+ # Use standard objects if they are pic
-+ test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-+
-+ # Prepare the list of exported symbols
-+ if test -z "$export_symbols"; then
-+ if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
-+ $show "generating symbol list for \`$libname.la'"
-+ export_symbols="$output_objdir/$libname.exp"
-+ $run $rm $export_symbols
-+ eval cmds=\"$export_symbols_cmds\"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ if test -n "$export_symbols_regex"; then
-+ $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\""
-+ $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
-+ $show "$mv \"${export_symbols}T\" \"$export_symbols\""
-+ $run eval '$mv "${export_symbols}T" "$export_symbols"'
-+ fi
-+ fi
-+ fi
-+
-+ if test -n "$export_symbols" && test -n "$include_expsyms"; then
-+ $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"'
-+ fi
-+
-+ if test -n "$convenience"; then
-+ if test -n "$whole_archive_flag_spec"; then
-+ eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
-+ else
-+ gentop="$output_objdir/${outputname}x"
-+ $show "${rm}r $gentop"
-+ $run ${rm}r "$gentop"
-+ $show "mkdir $gentop"
-+ $run mkdir "$gentop"
-+ status=$?
-+ if test $status -ne 0 && test ! -d "$gentop"; then
-+ exit $status
-+ fi
-+ generated="$generated $gentop"
-+
-+ for xlib in $convenience; do
-+ # Extract the objects.
-+ case $xlib in
-+ [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
-+ *) xabs=`pwd`"/$xlib" ;;
-+ esac
-+ xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
-+ xdir="$gentop/$xlib"
-+
-+ $show "${rm}r $xdir"
-+ $run ${rm}r "$xdir"
-+ $show "mkdir $xdir"
-+ $run mkdir "$xdir"
-+ status=$?
-+ if test $status -ne 0 && test ! -d "$xdir"; then
-+ exit $status
-+ fi
-+ $show "(cd $xdir && $AR x $xabs)"
-+ $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
-+
-+ libobjs="$libobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP`
-+ done
-+ fi
-+ fi
-+
-+ if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
-+ eval flag=\"$thread_safe_flag_spec\"
-+ linker_flags="$linker_flags $flag"
-+ fi
-+
-+ # Make a backup of the uninstalled library when relinking
-+ if test "$mode" = relink; then
-+ $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
-+ fi
-+
-+ # Do each of the archive commands.
-+ if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
-+ eval cmds=\"$archive_expsym_cmds\"
-+ else
-+ eval cmds=\"$archive_cmds\"
-+ fi
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+
-+ # Restore the uninstalled library and exit
-+ if test "$mode" = relink; then
-+ $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
-+ exit 0
-+ fi
-+
-+ # Create links to the real library.
-+ for linkname in $linknames; do
-+ if test "$realname" != "$linkname"; then
-+ $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)"
-+ $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $?
-+ fi
-+ done
-+
-+ # If -module or -export-dynamic was specified, set the dlname.
-+ if test "$module" = yes || test "$export_dynamic" = yes; then
-+ # On all known operating systems, these are identical.
-+ dlname="$soname"
-+ fi
-+ fi
-+ ;;
-+
-+ obj)
-+ if test -n "$deplibs"; then
-+ $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
-+ fi
-+
-+ if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-+ $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2
-+ fi
-+
-+ if test -n "$rpath"; then
-+ $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2
-+ fi
-+
-+ if test -n "$xrpath"; then
-+ $echo "$modename: warning: \`-R' is ignored for objects" 1>&2
-+ fi
-+
-+ if test -n "$vinfo"; then
-+ $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2
-+ fi
-+
-+ if test -n "$release"; then
-+ $echo "$modename: warning: \`-release' is ignored for objects" 1>&2
-+ fi
-+
-+ case $output in
-+ *.lo)
-+ if test -n "$objs$old_deplibs"; then
-+ $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
-+ exit 1
-+ fi
-+ libobj="$output"
-+ obj=`$echo "X$output" | $Xsed -e "$lo2o"`
-+ ;;
-+ *)
-+ libobj=
-+ obj="$output"
-+ ;;
-+ esac
-+
-+ # Delete the old objects.
-+ $run $rm $obj $libobj
-+
-+ # Objects from convenience libraries. This assumes
-+ # single-version convenience libraries. Whenever we create
-+ # different ones for PIC/non-PIC, this we'll have to duplicate
-+ # the extraction.
-+ reload_conv_objs=
-+ gentop=
-+ # reload_cmds runs $LD directly, so let us get rid of
-+ # -Wl from whole_archive_flag_spec
-+ wl=
-+
-+ if test -n "$convenience"; then
-+ if test -n "$whole_archive_flag_spec"; then
-+ eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
-+ else
-+ gentop="$output_objdir/${obj}x"
-+ $show "${rm}r $gentop"
-+ $run ${rm}r "$gentop"
-+ $show "mkdir $gentop"
-+ $run mkdir "$gentop"
-+ status=$?
-+ if test $status -ne 0 && test ! -d "$gentop"; then
-+ exit $status
-+ fi
-+ generated="$generated $gentop"
-+
-+ for xlib in $convenience; do
-+ # Extract the objects.
-+ case $xlib in
-+ [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
-+ *) xabs=`pwd`"/$xlib" ;;
-+ esac
-+ xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
-+ xdir="$gentop/$xlib"
-+
-+ $show "${rm}r $xdir"
-+ $run ${rm}r "$xdir"
-+ $show "mkdir $xdir"
-+ $run mkdir "$xdir"
-+ status=$?
-+ if test $status -ne 0 && test ! -d "$xdir"; then
-+ exit $status
-+ fi
-+ $show "(cd $xdir && $AR x $xabs)"
-+ $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
-+
-+ reload_conv_objs="$reload_objs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP`
-+ done
-+ fi
-+ fi
-+
-+ # Create the old-style object.
-+ reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
-+
-+ output="$obj"
-+ eval cmds=\"$reload_cmds\"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+
-+ # Exit if we aren't doing a library object file.
-+ if test -z "$libobj"; then
-+ if test -n "$gentop"; then
-+ $show "${rm}r $gentop"
-+ $run ${rm}r $gentop
-+ fi
-+
-+ exit 0
-+ fi
-+
-+ if test "$build_libtool_libs" != yes; then
-+ if test -n "$gentop"; then
-+ $show "${rm}r $gentop"
-+ $run ${rm}r $gentop
-+ fi
-+
-+ # Create an invalid libtool object if no PIC, so that we don't
-+ # accidentally link it into a program.
-+ $show "echo timestamp > $libobj"
-+ $run eval "echo timestamp > $libobj" || exit $?
-+ exit 0
-+ fi
-+
-+ if test -n "$pic_flag" || test "$pic_mode" != default; then
-+ # Only do commands if we really have different PIC objects.
-+ reload_objs="$libobjs $reload_conv_objs"
-+ output="$libobj"
-+ eval cmds=\"$reload_cmds\"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ else
-+ # Just create a symlink.
-+ $show $rm $libobj
-+ $run $rm $libobj
-+ xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
-+ if test "X$xdir" = "X$libobj"; then
-+ xdir="."
-+ else
-+ xdir="$xdir"
-+ fi
-+ baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'`
-+ oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
-+ $show "(cd $xdir && $LN_S $oldobj $baseobj)"
-+ $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $?
-+ fi
-+
-+ if test -n "$gentop"; then
-+ $show "${rm}r $gentop"
-+ $run ${rm}r $gentop
-+ fi
-+
-+ exit 0
-+ ;;
-+
-+ prog)
-+ case $host in
-+ *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;;
-+ esac
-+ if test -n "$vinfo"; then
-+ $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
-+ fi
-+
-+ if test -n "$release"; then
-+ $echo "$modename: warning: \`-release' is ignored for programs" 1>&2
-+ fi
-+
-+ if test "$preload" = yes; then
-+ if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown &&
-+ test "$dlopen_self_static" = unknown; then
-+ $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support."
-+ fi
-+ fi
-+
-+ case $host in
-+ *-*-rhapsody* | *-*-darwin1.[012])
-+ # On Rhapsody replace the C library is the System framework
-+ compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ ;;
-+ esac
-+
-+ compile_command="$compile_command $compile_deplibs"
-+ finalize_command="$finalize_command $finalize_deplibs"
-+
-+ if test -n "$rpath$xrpath"; then
-+ # If the user specified any rpath flags, then add them.
-+ for libdir in $rpath $xrpath; do
-+ # This is the magic to use -rpath.
-+ case "$finalize_rpath " in
-+ *" $libdir "*) ;;
-+ *) finalize_rpath="$finalize_rpath $libdir" ;;
-+ esac
-+ done
-+ fi
-+
-+ # Now hardcode the library paths
-+ rpath=
-+ hardcode_libdirs=
-+ for libdir in $compile_rpath $finalize_rpath; do
-+ if test -n "$hardcode_libdir_flag_spec"; then
-+ if test -n "$hardcode_libdir_separator"; then
-+ if test -z "$hardcode_libdirs"; then
-+ hardcode_libdirs="$libdir"
-+ else
-+ # Just accumulate the unique libdirs.
-+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
-+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
-+ ;;
-+ *)
-+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
-+ ;;
-+ esac
-+ fi
-+ else
-+ eval flag=\"$hardcode_libdir_flag_spec\"
-+ rpath="$rpath $flag"
-+ fi
-+ elif test -n "$runpath_var"; then
-+ case "$perm_rpath " in
-+ *" $libdir "*) ;;
-+ *) perm_rpath="$perm_rpath $libdir" ;;
-+ esac
-+ fi
-+ case $host in
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ case :$dllsearchpath: in
-+ *":$libdir:"*) ;;
-+ *) dllsearchpath="$dllsearchpath:$libdir";;
-+ esac
-+ ;;
-+ esac
-+ done
-+ # Substitute the hardcoded libdirs into the rpath.
-+ if test -n "$hardcode_libdir_separator" &&
-+ test -n "$hardcode_libdirs"; then
-+ libdir="$hardcode_libdirs"
-+ eval rpath=\" $hardcode_libdir_flag_spec\"
-+ fi
-+ compile_rpath="$rpath"
-+
-+ rpath=
-+ hardcode_libdirs=
-+ for libdir in $finalize_rpath; do
-+ if test -n "$hardcode_libdir_flag_spec"; then
-+ if test -n "$hardcode_libdir_separator"; then
-+ if test -z "$hardcode_libdirs"; then
-+ hardcode_libdirs="$libdir"
-+ else
-+ # Just accumulate the unique libdirs.
-+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
-+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
-+ ;;
-+ *)
-+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
-+ ;;
-+ esac
-+ fi
-+ else
-+ eval flag=\"$hardcode_libdir_flag_spec\"
-+ rpath="$rpath $flag"
-+ fi
-+ elif test -n "$runpath_var"; then
-+ case "$finalize_perm_rpath " in
-+ *" $libdir "*) ;;
-+ *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;;
-+ esac
-+ fi
-+ done
-+ # Substitute the hardcoded libdirs into the rpath.
-+ if test -n "$hardcode_libdir_separator" &&
-+ test -n "$hardcode_libdirs"; then
-+ libdir="$hardcode_libdirs"
-+ eval rpath=\" $hardcode_libdir_flag_spec\"
-+ fi
-+ finalize_rpath="$rpath"
-+
-+ if test -n "$libobjs" && test "$build_old_libs" = yes; then
-+ # Transform all the library objects into standard objects.
-+ compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-+ finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-+ fi
-+
-+ dlsyms=
-+ if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-+ if test -n "$NM" && test -n "$global_symbol_pipe"; then
-+ dlsyms="${outputname}S.c"
-+ else
-+ $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2
-+ fi
-+ fi
-+
-+ if test -n "$dlsyms"; then
-+ case $dlsyms in
-+ "") ;;
-+ *.c)
-+ # Discover the nlist of each of the dlfiles.
-+ nlist="$output_objdir/${outputname}.nm"
-+
-+ $show "$rm $nlist ${nlist}S ${nlist}T"
-+ $run $rm "$nlist" "${nlist}S" "${nlist}T"
-+
-+ # Parse the name list into a source file.
-+ $show "creating $output_objdir/$dlsyms"
-+
-+ test -z "$run" && $echo > "$output_objdir/$dlsyms" "\
-+/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */
-+/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */
-+
-+#ifdef __cplusplus
-+extern \"C\" {
-+#endif
-+
-+/* Prevent the only kind of declaration conflicts we can make. */
-+#define lt_preloaded_symbols some_other_symbol
-+
-+/* External symbol declarations for the compiler. */\
-+"
-+
-+ if test "$dlself" = yes; then
-+ $show "generating symbol list for \`$output'"
-+
-+ test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist"
-+
-+ # Add our own program objects to the symbol list.
-+ progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
-+ for arg in $progfiles; do
-+ $show "extracting global C symbols from \`$arg'"
-+ $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
-+ done
-+
-+ if test -n "$exclude_expsyms"; then
-+ $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
-+ $run eval '$mv "$nlist"T "$nlist"'
-+ fi
-+
-+ if test -n "$export_symbols_regex"; then
-+ $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T'
-+ $run eval '$mv "$nlist"T "$nlist"'
-+ fi
-+
-+ # Prepare the list of exported symbols
-+ if test -z "$export_symbols"; then
-+ export_symbols="$output_objdir/$output.exp"
-+ $run $rm $export_symbols
-+ $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
-+ else
-+ $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
-+ $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
-+ $run eval 'mv "$nlist"T "$nlist"'
-+ fi
-+ fi
-+
-+ for arg in $dlprefiles; do
-+ $show "extracting global C symbols from \`$arg'"
-+ name=`echo "$arg" | sed -e 's%^.*/%%'`
-+ $run eval 'echo ": $name " >> "$nlist"'
-+ $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
-+ done
-+
-+ if test -z "$run"; then
-+ # Make sure we have at least an empty file.
-+ test -f "$nlist" || : > "$nlist"
-+
-+ if test -n "$exclude_expsyms"; then
-+ egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
-+ $mv "$nlist"T "$nlist"
-+ fi
-+
-+ # Try sorting and uniquifying the output.
-+ if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then
-+ :
-+ else
-+ grep -v "^: " < "$nlist" > "$nlist"S
-+ fi
-+
-+ if test -f "$nlist"S; then
-+ eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"'
-+ else
-+ echo '/* NONE */' >> "$output_objdir/$dlsyms"
-+ fi
-+
-+ $echo >> "$output_objdir/$dlsyms" "\
-+
-+#undef lt_preloaded_symbols
-+
-+#if defined (__STDC__) && __STDC__
-+# define lt_ptr_t void *
-+#else
-+# define lt_ptr_t char *
-+# define const
-+#endif
-+
-+/* The mapping between symbol names and symbols. */
-+const struct {
-+ const char *name;
-+ lt_ptr_t address;
-+}
-+lt_preloaded_symbols[] =
-+{\
-+"
-+
-+ sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \
-+ -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \
-+ < "$nlist" >> "$output_objdir/$dlsyms"
-+
-+ $echo >> "$output_objdir/$dlsyms" "\
-+ {0, (lt_ptr_t) 0}
-+};
-+
-+/* This works around a problem in FreeBSD linker */
-+#ifdef FREEBSD_WORKAROUND
-+static const void *lt_preloaded_setup() {
-+ return lt_preloaded_symbols;
-+}
-+#endif
-+
-+#ifdef __cplusplus
-+}
-+#endif\
-+"
-+ fi
-+
-+ pic_flag_for_symtable=
-+ case $host in
-+ # compiling the symbol table file with pic_flag works around
-+ # a FreeBSD bug that causes programs to crash when -lm is
-+ # linked before any other PIC object. But we must not use
-+ # pic_flag when linking with -static. The problem exists in
-+ # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
-+ *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
-+ case "$compile_command " in
-+ *" -static "*) ;;
-+ *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";;
-+ esac;;
-+ *-*-hpux*)
-+ case "$compile_command " in
-+ *" -static "*) ;;
-+ *) pic_flag_for_symtable=" $pic_flag -DPIC";;
-+ esac
-+ esac
-+
-+ # Now compile the dynamic symbol file.
-+ $show "(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
-+ $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
-+
-+ # Clean up the generated files.
-+ $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T"
-+ $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T"
-+
-+ # Transform the symbol file into the correct name.
-+ compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-+ finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-+ ;;
-+ *)
-+ $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+ else
-+ # We keep going just in case the user didn't refer to
-+ # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
-+ # really was required.
-+
-+ # Nullify the symbol file.
-+ compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
-+ finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
-+ fi
-+
-+ if test $need_relink = no || test "$build_libtool_libs" != yes; then
-+ # Replace the output file specification.
-+ compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
-+ link_command="$compile_command$compile_rpath"
-+
-+ # We have no uninstalled library dependencies, so finalize right now.
-+ $show "$link_command"
-+ $run eval "$link_command"
-+ status=$?
-+
-+ # Delete the generated files.
-+ if test -n "$dlsyms"; then
-+ $show "$rm $output_objdir/${outputname}S.${objext}"
-+ $run $rm "$output_objdir/${outputname}S.${objext}"
-+ fi
-+
-+ exit $status
-+ fi
-+
-+ if test -n "$shlibpath_var"; then
-+ # We should set the shlibpath_var
-+ rpath=
-+ for dir in $temp_rpath; do
-+ case $dir in
-+ [\\/]* | [A-Za-z]:[\\/]*)
-+ # Absolute path.
-+ rpath="$rpath$dir:"
-+ ;;
-+ *)
-+ # Relative path: add a thisdir entry.
-+ rpath="$rpath\$thisdir/$dir:"
-+ ;;
-+ esac
-+ done
-+ temp_rpath="$rpath"
-+ fi
-+
-+ if test -n "$compile_shlibpath$finalize_shlibpath"; then
-+ compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
-+ fi
-+ if test -n "$finalize_shlibpath"; then
-+ finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
-+ fi
-+
-+ compile_var=
-+ finalize_var=
-+ if test -n "$runpath_var"; then
-+ if test -n "$perm_rpath"; then
-+ # We should set the runpath_var.
-+ rpath=
-+ for dir in $perm_rpath; do
-+ rpath="$rpath$dir:"
-+ done
-+ compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
-+ fi
-+ if test -n "$finalize_perm_rpath"; then
-+ # We should set the runpath_var.
-+ rpath=
-+ for dir in $finalize_perm_rpath; do
-+ rpath="$rpath$dir:"
-+ done
-+ finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
-+ fi
-+ fi
-+
-+ if test "$no_install" = yes; then
-+ # We don't need to create a wrapper script.
-+ link_command="$compile_var$compile_command$compile_rpath"
-+ # Replace the output file specification.
-+ link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
-+ # Delete the old output file.
-+ $run $rm $output
-+ # Link the executable and exit
-+ $show "$link_command"
-+ $run eval "$link_command" || exit $?
-+ exit 0
-+ fi
-+
-+ if test "$hardcode_action" = relink; then
-+ # Fast installation is not supported
-+ link_command="$compile_var$compile_command$compile_rpath"
-+ relink_command="$finalize_var$finalize_command$finalize_rpath"
-+
-+ $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2
-+ $echo "$modename: \`$output' will be relinked during installation" 1>&2
-+ else
-+ if test "$fast_install" != no; then
-+ link_command="$finalize_var$compile_command$finalize_rpath"
-+ if test "$fast_install" = yes; then
-+ relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
-+ else
-+ # fast_install is set to needless
-+ relink_command=
-+ fi
-+ else
-+ link_command="$compile_var$compile_command$compile_rpath"
-+ relink_command="$finalize_var$finalize_command$finalize_rpath"
-+ fi
-+ fi
-+
-+ # Replace the output file specification.
-+ link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
-+
-+ # Delete the old output files.
-+ $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname
-+
-+ $show "$link_command"
-+ $run eval "$link_command" || exit $?
-+
-+ # Now create the wrapper script.
-+ $show "creating $output"
-+
-+ # Quote the relink command for shipping.
-+ if test -n "$relink_command"; then
-+ # Preserve any variables that may affect compiler behavior
-+ for var in $variables_saved_for_relink; do
-+ if eval test -z \"\${$var+set}\"; then
-+ relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
-+ elif eval var_value=\$$var; test -z "$var_value"; then
-+ relink_command="$var=; export $var; $relink_command"
-+ else
-+ var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
-+ relink_command="$var=\"$var_value\"; export $var; $relink_command"
-+ fi
-+ done
-+ relink_command="cd `pwd`; $relink_command"
-+ relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
-+ fi
-+
-+ # Quote $echo for shipping.
-+ if test "X$echo" = "X$SHELL $0 --fallback-echo"; then
-+ case $0 in
-+ [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";;
-+ *) qecho="$SHELL `pwd`/$0 --fallback-echo";;
-+ esac
-+ qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"`
-+ else
-+ qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"`
-+ fi
-+
-+ # Only actually do things if our run command is non-null.
-+ if test -z "$run"; then
-+ # win32 will think the script is a binary if it has
-+ # a .exe suffix, so we strip it off here.
-+ case $output in
-+ *.exe) output=`echo $output|sed 's,.exe$,,'` ;;
-+ esac
-+ # test for cygwin because mv fails w/o .exe extensions
-+ case $host in
-+ *cygwin*) exeext=.exe ;;
-+ *) exeext= ;;
-+ esac
-+ $rm $output
-+ trap "$rm $output; exit 1" 1 2 15
-+
-+ $echo > $output "\
-+#! $SHELL
-+
-+# $output - temporary wrapper script for $objdir/$outputname
-+# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-+#
-+# The $output program cannot be directly executed until all the libtool
-+# libraries that it depends on are installed.
-+#
-+# This wrapper script should never be moved out of the build directory.
-+# If it is, it will not operate correctly.
-+
-+# Sed substitution that helps us do robust quoting. It backslashifies
-+# metacharacters that are still active within double-quoted strings.
-+Xsed='sed -e 1s/^X//'
-+sed_quote_subst='$sed_quote_subst'
-+
-+# The HP-UX ksh and POSIX shell print the target directory to stdout
-+# if CDPATH is set.
-+if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi
-+
-+relink_command=\"$relink_command\"
-+
-+# This environment variable determines our operation mode.
-+if test \"\$libtool_install_magic\" = \"$magic\"; then
-+ # install mode needs the following variable:
-+ notinst_deplibs='$notinst_deplibs'
-+else
-+ # When we are sourced in execute mode, \$file and \$echo are already set.
-+ if test \"\$libtool_execute_magic\" != \"$magic\"; then
-+ echo=\"$qecho\"
-+ file=\"\$0\"
-+ # Make sure echo works.
-+ if test \"X\$1\" = X--no-reexec; then
-+ # Discard the --no-reexec flag, and continue.
-+ shift
-+ elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then
-+ # Yippee, \$echo works!
-+ :
-+ else
-+ # Restart under the correct shell, and then maybe \$echo will work.
-+ exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
-+ fi
-+ fi\
-+"
-+ $echo >> $output "\
-+
-+ # Find the directory that this script lives in.
-+ thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
-+ test \"x\$thisdir\" = \"x\$file\" && thisdir=.
-+
-+ # Follow symbolic links until we get to the real thisdir.
-+ file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\`
-+ while test -n \"\$file\"; do
-+ destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
-+
-+ # If there was a directory component, then change thisdir.
-+ if test \"x\$destdir\" != \"x\$file\"; then
-+ case \"\$destdir\" in
-+ [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
-+ *) thisdir=\"\$thisdir/\$destdir\" ;;
-+ esac
-+ fi
-+
-+ file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
-+ file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\`
-+ done
-+
-+ # Try to get the absolute directory name.
-+ absdir=\`cd \"\$thisdir\" && pwd\`
-+ test -n \"\$absdir\" && thisdir=\"\$absdir\"
-+"
-+
-+ if test "$fast_install" = yes; then
-+ echo >> $output "\
-+ program=lt-'$outputname'$exeext
-+ progdir=\"\$thisdir/$objdir\"
-+
-+ if test ! -f \"\$progdir/\$program\" || \\
-+ { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\
-+ test \"X\$file\" != \"X\$progdir/\$program\"; }; then
-+
-+ file=\"\$\$-\$program\"
-+
-+ if test ! -d \"\$progdir\"; then
-+ $mkdir \"\$progdir\"
-+ else
-+ $rm \"\$progdir/\$file\"
-+ fi"
-+
-+ echo >> $output "\
-+
-+ # relink executable if necessary
-+ if test -n \"\$relink_command\"; then
-+ if (eval \$relink_command); then :
-+ else
-+ $rm \"\$progdir/\$file\"
-+ exit 1
-+ fi
-+ fi
-+
-+ $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
-+ { $rm \"\$progdir/\$program\";
-+ $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; }
-+ $rm \"\$progdir/\$file\"
-+ fi"
-+ else
-+ echo >> $output "\
-+ program='$outputname'
-+ progdir=\"\$thisdir/$objdir\"
-+"
-+ fi
-+
-+ echo >> $output "\
-+
-+ if test -f \"\$progdir/\$program\"; then"
-+
-+ # Export our shlibpath_var if we have one.
-+ if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
-+ $echo >> $output "\
-+ # Add our own library path to $shlibpath_var
-+ $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
-+
-+ # Some systems cannot cope with colon-terminated $shlibpath_var
-+ # The second colon is a workaround for a bug in BeOS R4 sed
-+ $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
-+
-+ export $shlibpath_var
-+"
-+ fi
-+
-+ # fixup the dll searchpath if we need to.
-+ if test -n "$dllsearchpath"; then
-+ $echo >> $output "\
-+ # Add the dll search path components to the executable PATH
-+ PATH=$dllsearchpath:\$PATH
-+"
-+ fi
-+
-+ $echo >> $output "\
-+ if test \"\$libtool_execute_magic\" != \"$magic\"; then
-+ # Run the actual program with our arguments.
-+"
-+ case $host in
-+ # win32 systems need to use the prog path for dll
-+ # lookup to work
-+ *-*-cygwin* | *-*-pw32*)
-+ $echo >> $output "\
-+ exec \$progdir/\$program \${1+\"\$@\"}
-+"
-+ ;;
-+
-+ # Backslashes separate directories on plain windows
-+ *-*-mingw | *-*-os2*)
-+ $echo >> $output "\
-+ exec \$progdir\\\\\$program \${1+\"\$@\"}
-+"
-+ ;;
-+
-+ *)
-+ $echo >> $output "\
-+ # Export the path to the program.
-+ PATH=\"\$progdir:\$PATH\"
-+ export PATH
-+
-+ exec \$program \${1+\"\$@\"}
-+"
-+ ;;
-+ esac
-+ $echo >> $output "\
-+ \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\"
-+ exit 1
-+ fi
-+ else
-+ # The program doesn't exist.
-+ \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2
-+ \$echo \"This script is just a wrapper for \$program.\" 1>&2
-+ echo \"See the $PACKAGE documentation for more information.\" 1>&2
-+ exit 1
-+ fi
-+fi\
-+"
-+ chmod +x $output
-+ fi
-+ exit 0
-+ ;;
-+ esac
-+
-+ # See if we need to build an old-fashioned archive.
-+ for oldlib in $oldlibs; do
-+
-+ if test "$build_libtool_libs" = convenience; then
-+ oldobjs="$libobjs_save"
-+ addlibs="$convenience"
-+ build_libtool_libs=no
-+ else
-+ if test "$build_libtool_libs" = module; then
-+ oldobjs="$libobjs_save"
-+ build_libtool_libs=no
-+ else
-+ oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
-+ fi
-+ addlibs="$old_convenience"
-+ fi
-+
-+ if test -n "$addlibs"; then
-+ gentop="$output_objdir/${outputname}x"
-+ $show "${rm}r $gentop"
-+ $run ${rm}r "$gentop"
-+ $show "mkdir $gentop"
-+ $run mkdir "$gentop"
-+ status=$?
-+ if test $status -ne 0 && test ! -d "$gentop"; then
-+ exit $status
-+ fi
-+ generated="$generated $gentop"
-+
-+ # Add in members from convenience archives.
-+ for xlib in $addlibs; do
-+ # Extract the objects.
-+ case $xlib in
-+ [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
-+ *) xabs=`pwd`"/$xlib" ;;
-+ esac
-+ xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
-+ xdir="$gentop/$xlib"
-+
-+ $show "${rm}r $xdir"
-+ $run ${rm}r "$xdir"
-+ $show "mkdir $xdir"
-+ $run mkdir "$xdir"
-+ status=$?
-+ if test $status -ne 0 && test ! -d "$xdir"; then
-+ exit $status
-+ fi
-+ $show "(cd $xdir && $AR x $xabs)"
-+ $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
-+
-+ oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP`
-+ done
-+ fi
-+
-+ # Do each command in the archive commands.
-+ if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
-+ eval cmds=\"$old_archive_from_new_cmds\"
-+ else
-+ # Ensure that we have .o objects in place in case we decided
-+ # not to build a shared library, and have fallen back to building
-+ # static libs even though --disable-static was passed!
-+ for oldobj in $oldobjs; do
-+ if test ! -f $oldobj; then
-+ xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'`
-+ if test "X$xdir" = "X$oldobj"; then
-+ xdir="."
-+ else
-+ xdir="$xdir"
-+ fi
-+ baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'`
-+ obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
-+ $show "(cd $xdir && ${LN_S} $obj $baseobj)"
-+ $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $?
-+ fi
-+ done
-+
-+ eval cmds=\"$old_archive_cmds\"
-+ fi
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ done
-+
-+ if test -n "$generated"; then
-+ $show "${rm}r$generated"
-+ $run ${rm}r$generated
-+ fi
-+
-+ # Now create the libtool archive.
-+ case $output in
-+ *.la)
-+ old_library=
-+ test "$build_old_libs" = yes && old_library="$libname.$libext"
-+ $show "creating $output"
-+
-+ # Preserve any variables that may affect compiler behavior
-+ for var in $variables_saved_for_relink; do
-+ if eval test -z \"\${$var+set}\"; then
-+ relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
-+ elif eval var_value=\$$var; test -z "$var_value"; then
-+ relink_command="$var=; export $var; $relink_command"
-+ else
-+ var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
-+ relink_command="$var=\"$var_value\"; export $var; $relink_command"
-+ fi
-+ done
-+ # Quote the link command for shipping.
-+ relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@"
-+ relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
-+
-+ # Only create the output if not a dry run.
-+ if test -z "$run"; then
-+ for installed in no yes; do
-+ if test "$installed" = yes; then
-+ if test -z "$install_libdir"; then
-+ break
-+ fi
-+ output="$output_objdir/$outputname"i
-+ # Replace all uninstalled libtool libraries with the installed ones
-+ newdependency_libs=
-+ for deplib in $dependency_libs; do
-+ case $deplib in
-+ *.la)
-+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
-+ eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ newdependency_libs="$newdependency_libs $libdir/$name"
-+ ;;
-+ *) newdependency_libs="$newdependency_libs $deplib" ;;
-+ esac
-+ done
-+ dependency_libs="$newdependency_libs"
-+ newdlfiles=
-+ for lib in $dlfiles; do
-+ name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-+ eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ newdlfiles="$newdlfiles $libdir/$name"
-+ done
-+ dlfiles="$newdlfiles"
-+ newdlprefiles=
-+ for lib in $dlprefiles; do
-+ name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
-+ eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
-+ if test -z "$libdir"; then
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ exit 1
-+ fi
-+ newdlprefiles="$newdlprefiles $libdir/$name"
-+ done
-+ dlprefiles="$newdlprefiles"
-+ fi
-+ $rm $output
-+ # place dlname in correct position for cygwin
-+ tdlname=$dlname
-+ case $host,$output,$installed,$module,$dlname in
-+ *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
-+ esac
-+ $echo > $output "\
-+# $outputname - a libtool library file
-+# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
-+#
-+# Please DO NOT delete this file!
-+# It is necessary for linking the library.
-+
-+# The name that we can dlopen(3).
-+dlname='$tdlname'
-+
-+# Names of this library.
-+library_names='$library_names'
-+
-+# The name of the static archive.
-+old_library='$old_library'
-+
-+# Libraries that this one depends upon.
-+dependency_libs='$dependency_libs'
-+
-+# Version information for $libname.
-+current=$current
-+age=$age
-+revision=$revision
-+
-+# Is this an already installed library?
-+installed=$installed
-+
-+# Files to dlopen/dlpreopen
-+dlopen='$dlfiles'
-+dlpreopen='$dlprefiles'
-+
-+# Directory that this library needs to be installed in:
-+libdir='$install_libdir'"
-+ if test "$installed" = no && test $need_relink = yes; then
-+ $echo >> $output "\
-+relink_command=\"$relink_command\""
-+ fi
-+ done
-+ fi
-+
-+ # Do a symbolic link so that the libtool archive can be found in
-+ # LD_LIBRARY_PATH before the program is installed.
-+ $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
-+ $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
-+ ;;
-+ esac
-+ exit 0
-+ ;;
-+
-+ # libtool install mode
-+ install)
-+ modename="$modename: install"
-+
-+ # There may be an optional sh(1) argument at the beginning of
-+ # install_prog (especially on Windows NT).
-+ if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
-+ # Allow the use of GNU shtool's install command.
-+ $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then
-+ # Aesthetically quote it.
-+ arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ install_prog="$arg "
-+ arg="$1"
-+ shift
-+ else
-+ install_prog=
-+ arg="$nonopt"
-+ fi
-+
-+ # The real first argument should be the name of the installation program.
-+ # Aesthetically quote it.
-+ arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ install_prog="$install_prog$arg"
-+
-+ # We need to accept at least all the BSD install flags.
-+ dest=
-+ files=
-+ opts=
-+ prev=
-+ install_type=
-+ isdir=no
-+ stripme=
-+ for arg
-+ do
-+ if test -n "$dest"; then
-+ files="$files $dest"
-+ dest="$arg"
-+ continue
-+ fi
-+
-+ case $arg in
-+ -d) isdir=yes ;;
-+ -f) prev="-f" ;;
-+ -g) prev="-g" ;;
-+ -m) prev="-m" ;;
-+ -o) prev="-o" ;;
-+ -s)
-+ stripme=" -s"
-+ continue
-+ ;;
-+ -*) ;;
-+
-+ *)
-+ # If the previous option needed an argument, then skip it.
-+ if test -n "$prev"; then
-+ prev=
-+ else
-+ dest="$arg"
-+ continue
-+ fi
-+ ;;
-+ esac
-+
-+ # Aesthetically quote the argument.
-+ arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ install_prog="$install_prog $arg"
-+ done
-+
-+ if test -z "$install_prog"; then
-+ $echo "$modename: you must specify an install program" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ if test -n "$prev"; then
-+ $echo "$modename: the \`$prev' option requires an argument" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ if test -z "$files"; then
-+ if test -z "$dest"; then
-+ $echo "$modename: no file or destination specified" 1>&2
-+ else
-+ $echo "$modename: you must specify a destination" 1>&2
-+ fi
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ # Strip any trailing slash from the destination.
-+ dest=`$echo "X$dest" | $Xsed -e 's%/$%%'`
-+
-+ # Check to see that the destination is a directory.
-+ test -d "$dest" && isdir=yes
-+ if test "$isdir" = yes; then
-+ destdir="$dest"
-+ destname=
-+ else
-+ destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'`
-+ test "X$destdir" = "X$dest" && destdir=.
-+ destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'`
-+
-+ # Not a directory, so check to see that there is only one file specified.
-+ set dummy $files
-+ if test $# -gt 2; then
-+ $echo "$modename: \`$dest' is not a directory" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+ fi
-+ case $destdir in
-+ [\\/]* | [A-Za-z]:[\\/]*) ;;
-+ *)
-+ for file in $files; do
-+ case $file in
-+ *.lo) ;;
-+ *)
-+ $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+ done
-+ ;;
-+ esac
-+
-+ # This variable tells wrapper scripts just to set variables rather
-+ # than running their programs.
-+ libtool_install_magic="$magic"
-+
-+ staticlibs=
-+ future_libdirs=
-+ current_libdirs=
-+ for file in $files; do
-+
-+ # Do each installation.
-+ case $file in
-+ *.$libext)
-+ # Do the static libraries later.
-+ staticlibs="$staticlibs $file"
-+ ;;
-+
-+ *.la)
-+ # Check to see that this really is a libtool archive.
-+ if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ else
-+ $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ library_names=
-+ old_library=
-+ relink_command=
-+ # If there is no directory component, then add one.
-+ case $file in
-+ */* | *\\*) . $file ;;
-+ *) . ./$file ;;
-+ esac
-+
-+ # Add the libdir to current_libdirs if it is the destination.
-+ if test "X$destdir" = "X$libdir"; then
-+ case "$current_libdirs " in
-+ *" $libdir "*) ;;
-+ *) current_libdirs="$current_libdirs $libdir" ;;
-+ esac
-+ else
-+ # Note the libdir as a future libdir.
-+ case "$future_libdirs " in
-+ *" $libdir "*) ;;
-+ *) future_libdirs="$future_libdirs $libdir" ;;
-+ esac
-+ fi
-+
-+ dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/
-+ test "X$dir" = "X$file/" && dir=
-+ dir="$dir$objdir"
-+
-+ if test -n "$relink_command"; then
-+ # Determine the prefix the user has applied to our future dir.
-+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
-+
-+ # Don't allow the user to place us outside of our expected
-+ # location b/c this prevents finding dependent libraries that
-+ # are installed to the same prefix.
-+ if test "$inst_prefix_dir" = "$destdir"; then
-+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
-+ exit 1
-+ fi
-+
-+ if test -n "$inst_prefix_dir"; then
-+ # Stick the inst_prefix_dir data into the link command.
-+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
-+ else
-+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
-+ fi
-+
-+ $echo "$modename: warning: relinking \`$file'" 1>&2
-+ $show "$relink_command"
-+ if $run eval "$relink_command"; then :
-+ else
-+ $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
-+ exit 1
-+ fi
-+ fi
-+
-+ # See the names of the shared library.
-+ set dummy $library_names
-+ if test -n "$2"; then
-+ realname="$2"
-+ shift
-+ shift
-+
-+ srcname="$realname"
-+ test -n "$relink_command" && srcname="$realname"T
-+
-+ # Install the shared library and build the symlinks.
-+ $show "$install_prog $dir/$srcname $destdir/$realname"
-+ $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $?
-+ if test -n "$stripme" && test -n "$striplib"; then
-+ $show "$striplib $destdir/$realname"
-+ $run eval "$striplib $destdir/$realname" || exit $?
-+ fi
-+
-+ if test $# -gt 0; then
-+ # Delete the old symlinks, and create new ones.
-+ for linkname
-+ do
-+ if test "$linkname" != "$realname"; then
-+ $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
-+ $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
-+ fi
-+ done
-+ fi
-+
-+ # Do each command in the postinstall commands.
-+ lib="$destdir/$realname"
-+ eval cmds=\"$postinstall_cmds\"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ fi
-+
-+ # Install the pseudo-library for information purposes.
-+ name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-+ instname="$dir/$name"i
-+ $show "$install_prog $instname $destdir/$name"
-+ $run eval "$install_prog $instname $destdir/$name" || exit $?
-+
-+ # Maybe install the static library, too.
-+ test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
-+ ;;
-+
-+ *.lo)
-+ # Install (i.e. copy) a libtool object.
-+
-+ # Figure out destination file name, if it wasn't already specified.
-+ if test -n "$destname"; then
-+ destfile="$destdir/$destname"
-+ else
-+ destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-+ destfile="$destdir/$destfile"
-+ fi
-+
-+ # Deduce the name of the destination old-style object file.
-+ case $destfile in
-+ *.lo)
-+ staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"`
-+ ;;
-+ *.$objext)
-+ staticdest="$destfile"
-+ destfile=
-+ ;;
-+ *)
-+ $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+
-+ # Install the libtool object if requested.
-+ if test -n "$destfile"; then
-+ $show "$install_prog $file $destfile"
-+ $run eval "$install_prog $file $destfile" || exit $?
-+ fi
-+
-+ # Install the old object if enabled.
-+ if test "$build_old_libs" = yes; then
-+ # Deduce the name of the old-style object file.
-+ staticobj=`$echo "X$file" | $Xsed -e "$lo2o"`
-+
-+ $show "$install_prog $staticobj $staticdest"
-+ $run eval "$install_prog \$staticobj \$staticdest" || exit $?
-+ fi
-+ exit 0
-+ ;;
-+
-+ *)
-+ # Figure out destination file name, if it wasn't already specified.
-+ if test -n "$destname"; then
-+ destfile="$destdir/$destname"
-+ else
-+ destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-+ destfile="$destdir/$destfile"
-+ fi
-+
-+ # Do a test to see if this is really a libtool program.
-+ if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ notinst_deplibs=
-+ relink_command=
-+
-+ # If there is no directory component, then add one.
-+ case $file in
-+ */* | *\\*) . $file ;;
-+ *) . ./$file ;;
-+ esac
-+
-+ # Check the variables that should have been set.
-+ if test -z "$notinst_deplibs"; then
-+ $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
-+ exit 1
-+ fi
-+
-+ finalize=yes
-+ for lib in $notinst_deplibs; do
-+ # Check to see that each library is installed.
-+ libdir=
-+ if test -f "$lib"; then
-+ # If there is no directory component, then add one.
-+ case $lib in
-+ */* | *\\*) . $lib ;;
-+ *) . ./$lib ;;
-+ esac
-+ fi
-+ libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
-+ if test -n "$libdir" && test ! -f "$libfile"; then
-+ $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
-+ finalize=no
-+ fi
-+ done
-+
-+ relink_command=
-+ # If there is no directory component, then add one.
-+ case $file in
-+ */* | *\\*) . $file ;;
-+ *) . ./$file ;;
-+ esac
-+
-+ outputname=
-+ if test "$fast_install" = no && test -n "$relink_command"; then
-+ if test "$finalize" = yes && test -z "$run"; then
-+ tmpdir="/tmp"
-+ test -n "$TMPDIR" && tmpdir="$TMPDIR"
-+ tmpdir=`mktemp -d $tmpdir/libtool-XXXXXX 2> /dev/null`
-+ if test $? = 0 ; then :
-+ else
-+ tmpdir="$tmpdir/libtool-$$"
-+ fi
-+ if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
-+ else
-+ $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
-+ continue
-+ fi
-+ file=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-+ outputname="$tmpdir/$file"
-+ # Replace the output file specification.
-+ relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
-+
-+ $show "$relink_command"
-+ if $run eval "$relink_command"; then :
-+ else
-+ $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
-+ ${rm}r "$tmpdir"
-+ continue
-+ fi
-+ file="$outputname"
-+ else
-+ $echo "$modename: warning: cannot relink \`$file'" 1>&2
-+ fi
-+ else
-+ # Install the binary that we compiled earlier.
-+ file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`
-+ fi
-+ fi
-+
-+ # remove .exe since cygwin /usr/bin/install will append another
-+ # one anyways
-+ case $install_prog,$host in
-+ /usr/bin/install*,*cygwin*)
-+ case $file:$destfile in
-+ *.exe:*.exe)
-+ # this is ok
-+ ;;
-+ *.exe:*)
-+ destfile=$destfile.exe
-+ ;;
-+ *:*.exe)
-+ destfile=`echo $destfile | sed -e 's,.exe$,,'`
-+ ;;
-+ esac
-+ ;;
-+ esac
-+ $show "$install_prog$stripme $file $destfile"
-+ $run eval "$install_prog\$stripme \$file \$destfile" || exit $?
-+ test -n "$outputname" && ${rm}r "$tmpdir"
-+ ;;
-+ esac
-+ done
-+
-+ for file in $staticlibs; do
-+ name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-+
-+ # Set up the ranlib parameters.
-+ oldlib="$destdir/$name"
-+
-+ $show "$install_prog $file $oldlib"
-+ $run eval "$install_prog \$file \$oldlib" || exit $?
-+
-+ if test -n "$stripme" && test -n "$striplib"; then
-+ $show "$old_striplib $oldlib"
-+ $run eval "$old_striplib $oldlib" || exit $?
-+ fi
-+
-+ # Do each command in the postinstall commands.
-+ eval cmds=\"$old_postinstall_cmds\"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || exit $?
-+ done
-+ IFS="$save_ifs"
-+ done
-+
-+ if test -n "$future_libdirs"; then
-+ $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
-+ fi
-+
-+ if test -n "$current_libdirs"; then
-+ # Maybe just do a dry run.
-+ test -n "$run" && current_libdirs=" -n$current_libdirs"
-+ exec $SHELL $0 --finish$current_libdirs
-+ exit 1
-+ fi
-+
-+ exit 0
-+ ;;
-+
-+ # libtool finish mode
-+ finish)
-+ modename="$modename: finish"
-+ libdirs="$nonopt"
-+ admincmds=
-+
-+ if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
-+ for dir
-+ do
-+ libdirs="$libdirs $dir"
-+ done
-+
-+ for libdir in $libdirs; do
-+ if test -n "$finish_cmds"; then
-+ # Do each command in the finish commands.
-+ eval cmds=\"$finish_cmds\"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd" || admincmds="$admincmds
-+ $cmd"
-+ done
-+ IFS="$save_ifs"
-+ fi
-+ if test -n "$finish_eval"; then
-+ # Do the single finish_eval.
-+ eval cmds=\"$finish_eval\"
-+ $run eval "$cmds" || admincmds="$admincmds
-+ $cmds"
-+ fi
-+ done
-+ fi
-+
-+ # Exit here if they wanted silent mode.
-+ test "$show" = ":" && exit 0
-+
-+ echo "----------------------------------------------------------------------"
-+ echo "Libraries have been installed in:"
-+ for libdir in $libdirs; do
-+ echo " $libdir"
-+ done
-+ echo
-+ echo "If you ever happen to want to link against installed libraries"
-+ echo "in a given directory, LIBDIR, you must either use libtool, and"
-+ echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
-+ echo "flag during linking and do at least one of the following:"
-+ if test -n "$shlibpath_var"; then
-+ echo " - add LIBDIR to the \`$shlibpath_var' environment variable"
-+ echo " during execution"
-+ fi
-+ if test -n "$runpath_var"; then
-+ echo " - add LIBDIR to the \`$runpath_var' environment variable"
-+ echo " during linking"
-+ fi
-+ if test -n "$hardcode_libdir_flag_spec"; then
-+ libdir=LIBDIR
-+ eval flag=\"$hardcode_libdir_flag_spec\"
-+
-+ echo " - use the \`$flag' linker flag"
-+ fi
-+ if test -n "$admincmds"; then
-+ echo " - have your system administrator run these commands:$admincmds"
-+ fi
-+ if test -f /etc/ld.so.conf; then
-+ echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
-+ fi
-+ echo
-+ echo "See any operating system documentation about shared libraries for"
-+ echo "more information, such as the ld(1) and ld.so(8) manual pages."
-+ echo "----------------------------------------------------------------------"
-+ exit 0
-+ ;;
-+
-+ # libtool execute mode
-+ execute)
-+ modename="$modename: execute"
-+
-+ # The first argument is the command name.
-+ cmd="$nonopt"
-+ if test -z "$cmd"; then
-+ $echo "$modename: you must specify a COMMAND" 1>&2
-+ $echo "$help"
-+ exit 1
-+ fi
-+
-+ # Handle -dlopen flags immediately.
-+ for file in $execute_dlfiles; do
-+ if test ! -f "$file"; then
-+ $echo "$modename: \`$file' is not a file" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ dir=
-+ case $file in
-+ *.la)
-+ # Check to see that this really is a libtool archive.
-+ if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
-+ else
-+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ # Read the libtool library.
-+ dlname=
-+ library_names=
-+
-+ # If there is no directory component, then add one.
-+ case $file in
-+ */* | *\\*) . $file ;;
-+ *) . ./$file ;;
-+ esac
-+
-+ # Skip this library if it cannot be dlopened.
-+ if test -z "$dlname"; then
-+ # Warn if it was a shared library.
-+ test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'"
-+ continue
-+ fi
-+
-+ dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
-+ test "X$dir" = "X$file" && dir=.
-+
-+ if test -f "$dir/$objdir/$dlname"; then
-+ dir="$dir/$objdir"
-+ else
-+ $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
-+ exit 1
-+ fi
-+ ;;
-+
-+ *.lo)
-+ # Just add the directory containing the .lo file.
-+ dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
-+ test "X$dir" = "X$file" && dir=.
-+ ;;
-+
-+ *)
-+ $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
-+ continue
-+ ;;
-+ esac
-+
-+ # Get the absolute pathname.
-+ absdir=`cd "$dir" && pwd`
-+ test -n "$absdir" && dir="$absdir"
-+
-+ # Now add the directory to shlibpath_var.
-+ if eval "test -z \"\$$shlibpath_var\""; then
-+ eval "$shlibpath_var=\"\$dir\""
-+ else
-+ eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
-+ fi
-+ done
-+
-+ # This variable tells wrapper scripts just to set shlibpath_var
-+ # rather than running their programs.
-+ libtool_execute_magic="$magic"
-+
-+ # Check if any of the arguments is a wrapper script.
-+ args=
-+ for file
-+ do
-+ case $file in
-+ -*) ;;
-+ *)
-+ # Do a test to see if this is really a libtool program.
-+ if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ # If there is no directory component, then add one.
-+ case $file in
-+ */* | *\\*) . $file ;;
-+ *) . ./$file ;;
-+ esac
-+
-+ # Transform arg to wrapped name.
-+ file="$progdir/$program"
-+ fi
-+ ;;
-+ esac
-+ # Quote arguments (to preserve shell metacharacters).
-+ file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"`
-+ args="$args \"$file\""
-+ done
-+
-+ if test -z "$run"; then
-+ if test -n "$shlibpath_var"; then
-+ # Export the shlibpath_var.
-+ eval "export $shlibpath_var"
-+ fi
-+
-+ # Restore saved enviroment variables
-+ if test "${save_LC_ALL+set}" = set; then
-+ LC_ALL="$save_LC_ALL"; export LC_ALL
-+ fi
-+ if test "${save_LANG+set}" = set; then
-+ LANG="$save_LANG"; export LANG
-+ fi
-+
-+ # Now actually exec the command.
-+ eval "exec \$cmd$args"
-+
-+ $echo "$modename: cannot exec \$cmd$args"
-+ exit 1
-+ else
-+ # Display what would be done.
-+ if test -n "$shlibpath_var"; then
-+ eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
-+ $echo "export $shlibpath_var"
-+ fi
-+ $echo "$cmd$args"
-+ exit 0
-+ fi
-+ ;;
-+
-+ # libtool clean and uninstall mode
-+ clean | uninstall)
-+ modename="$modename: $mode"
-+ rm="$nonopt"
-+ files=
-+ rmforce=
-+ exit_status=0
-+
-+ # This variable tells wrapper scripts just to set variables rather
-+ # than running their programs.
-+ libtool_install_magic="$magic"
-+
-+ for arg
-+ do
-+ case $arg in
-+ -f) rm="$rm $arg"; rmforce=yes ;;
-+ -*) rm="$rm $arg" ;;
-+ *) files="$files $arg" ;;
-+ esac
-+ done
-+
-+ if test -z "$rm"; then
-+ $echo "$modename: you must specify an RM program" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ fi
-+
-+ rmdirs=
-+
-+ for file in $files; do
-+ dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
-+ if test "X$dir" = "X$file"; then
-+ dir=.
-+ objdir="$objdir"
-+ else
-+ objdir="$dir/$objdir"
-+ fi
-+ name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
-+ test $mode = uninstall && objdir="$dir"
-+
-+ # Remember objdir for removal later, being careful to avoid duplicates
-+ if test $mode = clean; then
-+ case " $rmdirs " in
-+ *" $objdir "*) ;;
-+ *) rmdirs="$rmdirs $objdir" ;;
-+ esac
-+ fi
-+
-+ # Don't error if the file doesn't exist and rm -f was used.
-+ if (test -L "$file") >/dev/null 2>&1 \
-+ || (test -h "$file") >/dev/null 2>&1 \
-+ || test -f "$file"; then
-+ :
-+ elif test -d "$file"; then
-+ exit_status=1
-+ continue
-+ elif test "$rmforce" = yes; then
-+ continue
-+ fi
-+
-+ rmfiles="$file"
-+
-+ case $name in
-+ *.la)
-+ # Possibly a libtool archive, so verify it.
-+ if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ . $dir/$name
-+
-+ # Delete the libtool libraries and symlinks.
-+ for n in $library_names; do
-+ rmfiles="$rmfiles $objdir/$n"
-+ done
-+ test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
-+ test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
-+
-+ if test $mode = uninstall; then
-+ if test -n "$library_names"; then
-+ # Do each command in the postuninstall commands.
-+ eval cmds=\"$postuninstall_cmds\"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd"
-+ if test $? != 0 && test "$rmforce" != yes; then
-+ exit_status=1
-+ fi
-+ done
-+ IFS="$save_ifs"
-+ fi
-+
-+ if test -n "$old_library"; then
-+ # Do each command in the old_postuninstall commands.
-+ eval cmds=\"$old_postuninstall_cmds\"
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
-+ for cmd in $cmds; do
-+ IFS="$save_ifs"
-+ $show "$cmd"
-+ $run eval "$cmd"
-+ if test $? != 0 && test "$rmforce" != yes; then
-+ exit_status=1
-+ fi
-+ done
-+ IFS="$save_ifs"
-+ fi
-+ # FIXME: should reinstall the best remaining shared library.
-+ fi
-+ fi
-+ ;;
-+
-+ *.lo)
-+ if test "$build_old_libs" = yes; then
-+ oldobj=`$echo "X$name" | $Xsed -e "$lo2o"`
-+ rmfiles="$rmfiles $dir/$oldobj"
-+ fi
-+ ;;
-+
-+ *)
-+ # Do a test to see if this is a libtool program.
-+ if test $mode = clean &&
-+ (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-+ relink_command=
-+ . $dir/$file
-+
-+ rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
-+ if test "$fast_install" = yes && test -n "$relink_command"; then
-+ rmfiles="$rmfiles $objdir/lt-$name"
-+ fi
-+ fi
-+ ;;
-+ esac
-+ $show "$rm $rmfiles"
-+ $run $rm $rmfiles || exit_status=1
-+ done
-+
-+ # Try to remove the ${objdir}s in the directories where we deleted files
-+ for dir in $rmdirs; do
-+ if test -d "$dir"; then
-+ $show "rmdir $dir"
-+ $run rmdir $dir >/dev/null 2>&1
-+ fi
-+ done
-+
-+ exit $exit_status
-+ ;;
-+
-+ "")
-+ $echo "$modename: you must specify a MODE" 1>&2
-+ $echo "$generic_help" 1>&2
-+ exit 1
-+ ;;
-+ esac
-+
-+ $echo "$modename: invalid operation mode \`$mode'" 1>&2
-+ $echo "$generic_help" 1>&2
-+ exit 1
-+fi # test -z "$show_help"
-+
-+# We need to display help for each of the modes.
-+case $mode in
-+"") $echo \
-+"Usage: $modename [OPTION]... [MODE-ARG]...
-+
-+Provide generalized library-building support services.
-+
-+ --config show all configuration variables
-+ --debug enable verbose shell tracing
-+-n, --dry-run display commands without modifying any files
-+ --features display basic configuration information and exit
-+ --finish same as \`--mode=finish'
-+ --help display this help message and exit
-+ --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS]
-+ --quiet same as \`--silent'
-+ --silent don't print informational messages
-+ --version print version information
-+
-+MODE must be one of the following:
-+
-+ clean remove files from the build directory
-+ compile compile a source file into a libtool object
-+ execute automatically set library path, then run a program
-+ finish complete the installation of libtool libraries
-+ install install libraries or executables
-+ link create a library or an executable
-+ uninstall remove libraries from an installed directory
-+
-+MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for
-+a more detailed description of MODE."
-+ exit 0
-+ ;;
-+
-+clean)
-+ $echo \
-+"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
-+
-+Remove files from the build directory.
-+
-+RM is the name of the program to use to delete files associated with each FILE
-+(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-+to RM.
-+
-+If FILE is a libtool library, object or program, all the files associated
-+with it are deleted. Otherwise, only FILE itself is deleted using RM."
-+ ;;
-+
-+compile)
-+ $echo \
-+"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
-+
-+Compile a source file into a libtool library object.
-+
-+This mode accepts the following additional options:
-+
-+ -o OUTPUT-FILE set the output file name to OUTPUT-FILE
-+ -prefer-pic try to building PIC objects only
-+ -prefer-non-pic try to building non-PIC objects only
-+ -static always build a \`.o' file suitable for static linking
-+
-+COMPILE-COMMAND is a command to be used in creating a \`standard' object file
-+from the given SOURCEFILE.
-+
-+The output file name is determined by removing the directory component from
-+SOURCEFILE, then substituting the C source code suffix \`.c' with the
-+library object suffix, \`.lo'."
-+ ;;
-+
-+execute)
-+ $echo \
-+"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
-+
-+Automatically set library path, then run a program.
-+
-+This mode accepts the following additional options:
-+
-+ -dlopen FILE add the directory containing FILE to the library path
-+
-+This mode sets the library path environment variable according to \`-dlopen'
-+flags.
-+
-+If any of the ARGS are libtool executable wrappers, then they are translated
-+into their corresponding uninstalled binary, and any of their required library
-+directories are added to the library path.
-+
-+Then, COMMAND is executed, with ARGS as arguments."
-+ ;;
-+
-+finish)
-+ $echo \
-+"Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
-+
-+Complete the installation of libtool libraries.
-+
-+Each LIBDIR is a directory that contains libtool libraries.
-+
-+The commands that this mode executes may require superuser privileges. Use
-+the \`--dry-run' option if you just want to see what would be executed."
-+ ;;
-+
-+install)
-+ $echo \
-+"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
-+
-+Install executables or libraries.
-+
-+INSTALL-COMMAND is the installation command. The first component should be
-+either the \`install' or \`cp' program.
-+
-+The rest of the components are interpreted as arguments to that command (only
-+BSD-compatible install options are recognized)."
-+ ;;
-+
-+link)
-+ $echo \
-+"Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
-+
-+Link object files or libraries together to form another library, or to
-+create an executable program.
-+
-+LINK-COMMAND is a command using the C compiler that you would use to create
-+a program from several object files.
-+
-+The following components of LINK-COMMAND are treated specially:
-+
-+ -all-static do not do any dynamic linking at all
-+ -avoid-version do not add a version suffix if possible
-+ -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
-+ -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
-+ -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
-+ -export-symbols SYMFILE
-+ try to export only the symbols listed in SYMFILE
-+ -export-symbols-regex REGEX
-+ try to export only the symbols matching REGEX
-+ -LLIBDIR search LIBDIR for required installed libraries
-+ -lNAME OUTPUT-FILE requires the installed library libNAME
-+ -module build a library that can dlopened
-+ -no-fast-install disable the fast-install mode
-+ -no-install link a not-installable executable
-+ -no-undefined declare that a library does not refer to external symbols
-+ -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
-+ -release RELEASE specify package release information
-+ -rpath LIBDIR the created library will eventually be installed in LIBDIR
-+ -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
-+ -static do not do any dynamic linking of libtool libraries
-+ -version-info CURRENT[:REVISION[:AGE]]
-+ specify library version info [each variable defaults to 0]
-+
-+All other options (arguments beginning with \`-') are ignored.
-+
-+Every other argument is treated as a filename. Files ending in \`.la' are
-+treated as uninstalled libtool libraries, other files are standard or library
-+object files.
-+
-+If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
-+only library objects (\`.lo' files) may be specified, and \`-rpath' is
-+required, except when creating a convenience library.
-+
-+If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
-+using \`ar' and \`ranlib', or on Windows using \`lib'.
-+
-+If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
-+is created, otherwise an executable program is created."
-+ ;;
-+
-+uninstall)
-+ $echo \
-+"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
-+
-+Remove libraries from an installation directory.
-+
-+RM is the name of the program to use to delete files associated with each FILE
-+(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
-+to RM.
-+
-+If FILE is a libtool library, all the files associated with it are deleted.
-+Otherwise, only FILE itself is deleted using RM."
-+ ;;
-+
-+*)
-+ $echo "$modename: invalid operation mode \`$mode'" 1>&2
-+ $echo "$help" 1>&2
-+ exit 1
-+ ;;
-+esac
-+
-+echo
-+$echo "Try \`$modename --help' for more information about other modes."
-+
-+exit 0
-+
-+# Local Variables:
-+# mode:shell-script
-+# sh-indentation:2
-+# End:
---- gtk+1.2-1.2.10.orig/debian/rules
-+++ gtk+1.2-1.2.10/debian/rules
-@@ -0,0 +1,185 @@
-+#!/usr/bin/make -f
-+# Sample debian/rules that uses debhelper.
-+# GNU copyright 1997 to 1999 by Joey Hess.
-+
-+# Uncomment this to turn on verbose mode.
-+#export DH_VERBOSE=1
-+
-+# These are used for cross-compiling and for saving the configure script
-+# from having to guess our platform (since we know it already)
-+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
-+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
-+DEB_BUILD_GNU_CPU ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_CPU)
-+DEB_BUILD_GNU_SYSTEM ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_SYSTEM)
-+
-+ifeq ($(DEB_BUILD_GNU_SYSTEM),kfreebsd-gnu)
-+DEB_BUILD_GNU_TYPE = $(DEB_BUILD_GNU_CPU)-gnu
-+DEB_HOST_GNU_TYPE = $(DEB_HOST_GNU_CPU)-gnu
-+endif
-+ifeq ($(DEB_BUILD_GNU_SYSTEM),knetbsd-gnu)
-+DEB_BUILD_GNU_TYPE = $(DEB_BUILD_GNU_CPU)-gnu
-+DEB_HOST_GNU_TYPE = $(DEB_HOST_GNU_CPU)-gnu
-+endif
-+
-+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
-+ CFLAGS += -O0
-+else
-+ CFLAGS += -O2
-+endif
-+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
-+ INSTALL_PROGRAM += -s
-+endif
-+
-+##
-+version=$(shell dpkg-parsechangelog | grep '^Version: ' | sed -e 's/^Version: //' | sed -e 's/-.*//')
-+
-+__configure_options := --host=$(DEB_HOST_GNU_TYPE) \
-+ --build=$(DEB_BUILD_GNU_TYPE) \
-+ --prefix=/usr \
-+ --mandir=\$${prefix}/share/man \
-+ --infodir=\$${prefix}/share/info \
-+ --sysconfdir=/etc \
-+ --localstatedir=/var \
-+ --with-xinput=xfree
-+libpath=$(CURDIR)/gdk/.libs:$(CURDIR)/gtk/.libs
-+
-+config.status: configure
-+ dh_testdir
-+
-+ # When install the shared libraries, don't relink it
-+ cp debian/fixed-ltmain.sh $(CURDIR)/ltmain.sh
-+
-+ # Add here commands to configure the package.
-+ # so it avoid gcc bug for Alpha.
-+ifeq ("x$(DEB_BUILD_ARCH)","xalpha")
-+ CFLAGS="-g -O0 -Wall" ./configure $(__configure_options)
-+else
-+ ./configure $(__configure_options)
-+endif
-+
-+ sed < libtool > libtool-2 \
-+ -e 's/^hardcode_libdir_flag_spec.*$$/hardcode_libdir_flag_spec=" -D__LIBTOOL_IS_A_FOOL__ "/' \
-+ -e '/^archive_cmds="/s/"$$/ \\$$deplibs"/' && \
-+ mv libtool-2 libtool
-+
-+ touch $@
-+
-+build: build-stamp
-+build-stamp: config.status
-+ dh_testdir
-+
-+ # Add here commands to compile the package.
-+ $(MAKE) LD_LIBRARY_PATH=$(libpath):$(LD_LIBRARY_PATH)
-+
-+ touch $@
-+
-+clean:
-+ dh_testdir
-+ dh_testroot
-+ rm -f build-stamp
-+
-+ # Add here commands to clean up after the build process.
-+ -$(MAKE) distclean
-+ -test -r /usr/share/misc/config.sub && \
-+ cp -f /usr/share/misc/config.sub config.sub
-+ -test -r /usr/share/misc/config.guess && \
-+ cp -f /usr/share/misc/config.guess config.guess
-+
-+ rm -rf po/ca.gmo
-+
-+ dh_clean
-+
-+install: build
-+ dh_testdir
-+ dh_testroot
-+ dh_clean -k
-+ dh_installdirs
-+
-+ # Add here commands to install the package into debian/tmp
-+ $(MAKE) install \
-+ prefix=$(CURDIR)/debian/libgtk1.2/usr \
-+ sysconfdir=$(CURDIR)/debian/libgtk1.2/etc \
-+ localstatedir=$(CURDIR)/debian/libgtk1.2/var \
-+ LD_LIBRARY_PATH=$(libpath):$(LD_LIBRARY_PATH)
-+
-+ # for -dbg
-+ mkdir -p $(CURDIR)/debian/libgtk1.2/usr/lib/debug
-+ for l in `find $(CURDIR)/debian/libgtk1.2/usr/lib -name '*.so*'`; do \
-+ cp -vdf $$l \
-+ $(CURDIR)/debian/libgtk1.2/usr/lib/debug/; \
-+ done
-+
-+ # for -doc
-+ cp docs/*.sgml $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/sgml/
-+ cp docs/text/*.txt $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/
-+ cp docs/*.texi $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/texinfo/
-+ cp docs/html/gtkfaq*.html $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/faq-html
-+ cp docs/html/gtk_tut-*.html $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/gtk-tutorial-html
-+ cp docs/html/*.gif $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/gtk-tutorial-html
-+ cp docs/html/gtk_tut.html $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/gtk-tutorial-html
-+ cp docs/html/gtk_tut_it*.html $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/gtk-tutorial-it-html
-+ cp docs/html/*.gif $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/gtk-tutorial-it-html
-+ cp docs/html/gtk_tut_fr*.html $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/gtk-tutorial-fr-html
-+ cp docs/html/*.gif $(CURDIR)/debian/libgtk1.2-doc/usr/share/doc/libgtk1.2-doc/gtk-tutorial-fr-html
-+
-+ dh_movefiles --sourcedir=debian/libgtk1.2
-+ -find $(CURDIR)/debian/libgtk1.2 -type d -empty | xargs rmdir -p 2>&1 > /dev/null
-+
-+# Build architecture-independent files here.
-+binary-indep: build install
-+ dh_testdir -i
-+ dh_testroot -i
-+
-+ dh_installdocs -i
-+ dh_installdocs -plibgtk1.2-common -A debian/README.Debian
-+ dh_installdocs -plibgtk1.2-doc docs/debugging.txt docs/developers.txt docs/styles.txt docs/text_widget.txt docs/widget_system.txt docs/gtk-config.txt docs/refcounting.txt docs/Changes-1.2.txt docs/generation.txt
-+
-+ dh_installexamples -i
-+ dh_installmenu -i
-+ dh_installinfo -i
-+ dh_installchangelogs -i ChangeLog
-+ dh_compress -i
-+ dh_fixperms -i
-+ dh_installdeb -i
-+ dh_gencontrol -i
-+ dh_md5sums -i
-+ dh_builddeb -i
-+
-+# Build architecture-dependent files here.
-+binary-arch: build install
-+ dh_testdir -a
-+ dh_testroot -a
-+
-+# dh_installdebconf -a
-+ dh_installdocs -a
-+
-+ rm -rf $(CURDIR)/debian/libgtk1.2-dbg/usr/share/doc/libgtk1.2-dbg
-+ dh_link -plibgtk1.2-dbg usr/share/doc/libgtk1.2 usr/share/doc/libgtk1.2-dbg
-+
-+ dh_installexamples -a
-+
-+ rm $(CURDIR)/debian/libgtk1.2-dev/usr/share/doc/libgtk1.2-dev/examples/find-examples.sh
-+
-+ dh_installmenu -a
-+# dh_installlogrotate -a
-+# dh_installemacsen -a
-+# dh_installpam -a
-+# dh_installmime -a
-+# dh_installinit -a
-+# dh_installcron -a
-+ dh_installman -a
-+ dh_installinfo -a
-+ dh_installchangelogs -a ChangeLog
-+ dh_strip -a -Nlibgtk1.2-dbg
-+ dh_compress -a
-+ dh_fixperms -a
-+ dh_makeshlibs -plibgtk1.2 -V "libgtk1.2 (>= ${version}-4)" -l$(libpath)
-+ dh_installdeb -a
-+# dh_perl -a
-+ dh_shlibdeps -a
-+ dh_gencontrol -a
-+ dh_md5sums -a
-+ dh_builddeb -a
-+
-+binary: binary-indep binary-arch
-+.PHONY: build clean binary-indep binary-arch binary install configure
---- gtk+1.2-1.2.10.orig/debian/changelog
-+++ gtk+1.2-1.2.10/debian/changelog
-@@ -0,0 +1,745 @@
-+gtk+1.2 (1.2.10-18) unstable; urgency=low
-+
-+ * GNOME team upload.
-+ * Add a static list of Uploaders for the GNOME team.
-+ * Update Catalan translation.
-+ * Cloak k*bsd-gnu systems as gnu to enable building on GNU/k*BSD. Normal
-+ updating of libtool appears to be troublesome (thanks Robert Millan;
-+ closes: #195921).
-+ * Patch gtk.m4 and acgtk.m4 to silence newer aclocal versions
-+ (closes: #267815).
-+ * Patch the file selector to do file autocompletion like every other
-+ application (thanks, Matt Zimmerman, even if you don't care at all
-+ only because the patch is 3 years old and everyone is using GTK2
-+ anyway :) closes: #148565).
-+
-+ -- Jordi Mallach <jordi@debian.org> Thu, 6 Oct 2005 11:42:08 +0200
-+
-+gtk+1.2 (1.2.10-17) unstable; urgency=low
-+
-+ * debian/control:
-+ - updated the build-depends for the separated xlibs-dev.
-+ (closes: Bug#241781)
-+ - updated the Depends of libgtk1.2-dev for the separated xlibs-dev.
-+ (closes: Bug#254694, 241507)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Wed, 23 Jun 2004 22:18:58 +0900
-+
-+gtk+1.2 (1.2.10-16) unstable; urgency=low
-+
-+ * updated libtool stuff. (closes: Bug#195827)
-+ - acgtk.m4: moved some m4 macros from acinclude.m4.
-+ - acinclude.m4: removed.
-+ - configure.in: add AC_PREREQ(2.13)
-+ - ltconfig: removed.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Thu, 5 Jun 2003 12:54:52 +0900
-+
-+gtk+1.2 (1.2.10-15) unstable; urgency=low
-+
-+ * debian/control:
-+ - bumped Standards-Version to 3.5.10.0.
-+ - depends on versioned libgtk1.2-common.
-+ - changed the sections for libgtk1.2-dev and libgtk1.2-dbg to libdevel.
-+ * debian/compat:
-+ - use it instead of DH_COMPAT.
-+ * debian/rules:
-+ - support noopt for DEB_BUILD_OPTIONS.
-+ * debian/FAQ.Debian:
-+ - add xfonts-*-transcoded stuff. Thanks to Kovacs Baldvin
-+ <baldvin@angel.elte.hu>
-+ * debian/libgtk1.2-common.postinst:
-+ - do remove the unnecessary gtkrc files. (closes: Bug#159817)
-+ * gtk/Makefile.in:
-+ - fix the undefined non-weak symbols. (closes: Bug#187351)
-+ * gdk/gdkfont.c:
-+ - fix possibly unnecessary missing fontset warning on UTF-8 locale.
-+ (closes: Bug#186025)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Sun, 1 Jun 2003 10:59:28 +0900
-+
-+gtk+1.2 (1.2.10-14) unstable; urgency=low
-+
-+ * debian/control: s/Recommends/Suggests/ for devhelp-book-gtk.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Thu, 22 Aug 2002 19:33:00 +0900
-+
-+gtk+1.2 (1.2.10-13) unstable; urgency=low
-+
-+ * debian/control: add devhelp-book-gtk to Recommends. (closes: Bug#148354)
-+ * gtk/gtkentry.c: applied a patch to fix a segfault bug in
-+ gtk_entry_set_selection(). Thanks Jan Gregor.
-+ * gtk/gtkrc.zh_{CN,TW}: changed a font size for iso8859-1 to 12 Geoffrey Lee
-+ suggested. (closes: Bug#157739)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Thu, 22 Aug 2002 02:50:14 +0900
-+
-+gtk+1.2 (1.2.10-12) unstable; urgency=low
-+
-+ * Applied some patches from RH.
-+ - gdk/gdkselection.c: don't screw up CTEXT for UTF-8 locales.
-+ - gtk/gtkfilesel.c: fix delete-filename-on-dir-change problem. (closes:
-+ Bug#106897)
-+ - gdk/gdkevents.c: improve expose compression.
-+ - gdk/gdkfont.c: fix problem with width computation for missing
-+ characters.
-+ - gdk/gdkfont.c: improve warning for missing fontset elements.
-+ - gtk/gtkstyle.c: fix refcounting problem in gtk_style_copy() that might
-+ affect theme switching.
-+ - gtk/gtkwindow.c: fix for theme switching.
-+ * debian/FAQ.Debian: update.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Mon, 13 May 2002 03:47:10 +0900
-+
-+gtk+1.2 (1.2.10-11) unstable; urgency=low
-+
-+ * Add gtkfaq-[89].html (closes: Bug#142682)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Mon, 15 Apr 2002 02:19:49 +0900
-+
-+gtk+1.2 (1.2.10-10) unstable; urgency=low
-+
-+ * Fixed typo in FAQ (closes: Bug#30034)
-+ * Fixed typo in tutorial (closes: Bug#113079)
-+ * debian/FAQ.Debian: Added.
-+ * debian/libgtk1.2-doc.info: added. fix running install-info on postinst
-+ (closes: Bug#135981)
-+ * debian/rules: changed as the following:
-+ - support DEB_HOST_GNU_TYPE and DEB_BUILD_GNU_TYPE.
-+ - support debug and nostrip for DEB_BUILD_OPTIONS.
-+ - copying the latest config.sub and config.guess.
-+ * gtkrc.utf-8: add arial font. (closes: Bug#135354)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Fri, 22 Mar 2002 08:32:55 +0900
-+
-+gtk+1.2 (1.2.10-9) unstable; urgency=medium
-+
-+ * Fixed the duplicate conffiles.
-+ * Fixed symlink transition for -dbg. (closes: Bug#125596)
-+ * Fixed Gtk?Paned widget misdisplayed on Alpha again...
-+ (closes: Bug#123579)
-+ * Fixed a correct entry for gtkrc.utf-8. (closes: Bug#114934)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Thu, 20 Dec 2001 01:48:29 +0900
-+
-+gtk+1.2 (1.2.10-8) unstable; urgency=low
-+
-+ * Fixed fails to purge cleanly (closes: Bug#122745)
-+ * Note: Don't use --enable-debug=yes.
-+ it give us any strange problem.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Fri, 7 Dec 2001 16:41:39 +0900
-+
-+gtk+1.2 (1.2.10-7) unstable; urgency=low
-+
-+ * Fixed remove obsolates conffiles by purge.
-+ * Fixed incorrect handling pointer in back-ported patch of gtkrc.
-+ (closes: Bug#122603)
-+ * Fixed search order for gtkrc again... (closes: Bug#121467)
-+ * Hmm I'm not sure, but pull down --enable-debug=minimum because
-+ make sure the cause of strange problem. so it's a default value.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Thu, 6 Dec 2001 23:52:12 +0900
-+
-+gtk+1.2 (1.2.10-6) unstable; urgency=low
-+
-+ * Fixed uninstallable problem (closes: Bug#122208)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Tue, 4 Dec 2001 00:48:16 +0900
-+
-+gtk+1.2 (1.2.10-5) unstable; urgency=low
-+
-+ * Applied back-ported patch from CVS.
-+ fix search order for gtkrc. (closes: Bug#121467)
-+ * Applied back-ported patch from CVS.
-+ fix focus problem (closes: Bug#108099)
-+ * Removed duplicate info files. (closes: Bug#121734)
-+ * Closed these bugs because it already fixed in the latest version.
-+ (closes: Bug#94698, Bug#29661, Bug#35039, Bug#46541, Bug#64728)
-+ * Added Depends: pkg-config for -dev.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Sun, 2 Dec 2001 19:54:49 +0900
-+
-+gtk+1.2 (1.2.10-4) unstable; urgency=low
-+
-+ * Fixed missing files (closes: Bug#56912)
-+ * Closed this bug because it already fixed in the latest version.
-+ (closes: Bug#72585, Bug#28148, Bug#69409, Bug#117990)
-+ * re-created debian/ (closes: Bug#44913)
-+ * -dbg package contains shared libraries for debugging. so if you
-+ need static link, add -static to compiler option and use
-+ static libraries which is included in libgtk1.2-dev.
-+ (closes: Bug#98349)
-+ * Moved pkg-config files to -dev (closes: Bug#103199)
-+ * Fixed GtkHPaned widget are misdisplayed on Alpha.
-+ (closes: Bug#115315)
-+ * Includes example codes on -dev. (closes: Bug#112347)
-+
-+ -- Akira TAGOH <tagoh@debian.org> Sat, 24 Nov 2001 21:40:38 +0900
-+
-+gtk+1.2 (1.2.10-3) unstable; urgency=low
-+
-+ * Fixed a problem where fractional sizes caused infinite loop.
-+ (closes: Bug#100678)
-+ * Closed NMU fix (closes: Bug#114923, Bug#109808, Bug#48129, Bug#53524,
-+ Bug#67903)
-+ * Fixed some lintian error.
-+ * I took over this package from Ben.
-+
-+ -- Akira TAGOH <tagoh@debian.org> Sat, 17 Nov 2001 10:55:55 +0900
-+
-+gtk+1.2 (1.2.10-2.1) unstable; urgency=low
-+
-+ * NMU
-+ * Re-run libtoolize & aclocal for new arch support. Closes: #114923.
-+
-+ -- LaMont Jones <lamont@debian.org> Sun, 21 Oct 2001 11:20:07 -0600
-+
-+gtk+1.2 (1.2.10-2) unstable; urgency=low
-+
-+ * It looks like --with-native-locale=yes (change made in 1.2.10-1)
-+ broke Swedish support. I guess it doesn't work. Removed.
-+ (Closes: #108441)
-+ * Patch to not override X's beep level. (Closes: #94081, #110961)
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 8 Oct 2001 09:56:37 +0900
-+
-+gtk+1.2 (1.2.10-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * This new version fixes all locale-related bugs recently
-+ reported. Note that if you don't want high ASCII characters to
-+ be silently munched with glibc 2.2, at least set LANG=en_US to
-+ get it away from the default to C, which no longer allows high
-+ ASCII characters. (Closes: #74796, #77263, #89379, #90776, #89125,
-+ #89129, #89806)
-+ * Build with --with-native-locale=yes. Should fix all locales-related
-+ segfaults recently reported. (But if you want high ASCII chars
-+ to appear when using libc 2.2, you should set LANG=en_US at least,
-+ or it'll default to LANG=C and filter all high ASCII characters!)
-+ (Closes: #89125, #89129)
-+ * Add support in debian/rules for adding -g and not stripping if
-+ DEB_BUILD_OPTIONS contains "debug" or "nostrip", respectively.
-+ (Closes: #33952, #34007)
-+ * Remove dependancy on gconv-modules. (Closes: #89082)
-+
-+ -- Ben Gertzfield <che@debian.org> Sun, 1 Apr 2001 21:58:04 -0700
-+
-+gtk+1.2 (1.2.9-2) unstable; urgency=medium
-+
-+ * Bump Build-Depends to require libglib1.2 (>= 1.2.9-1).
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 6 Mar 2001 08:54:13 -0800
-+
-+gtk+1.2 (1.2.9-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Include Changes-1.2.txt in libgtk1.2-doc. (Closes: #48129)
-+ * Fixed bashisms in debian/rules long ago. (Closes: #69409)
-+ * Note: include files have been moved into /usr/include/gtk-1-2/
-+ to allow parallel installation with gtk+ 2.0. Remember to
-+ use gtk-config to compile programs!
-+ * A note from upstream says that there were a lot of locale fixes
-+ in this release. Let's hope so!
-+ * Setuid/setgid GTK+ programs will now refuse to initialize. Remember
-+ to drop all setuid/setgid privileges before initializing GTK+!
-+ * Several out-of-date documents were removed upstream: gdk-tutorial
-+ and gtk-manual are available online now.
-+ * About the FAQ missing page bugs: the pages just don't seem to
-+ get generated from the SGML no matter what I do; I'm not
-+ removing them by hand or anything. I'll spend more time looking
-+ into this later..
-+
-+ -- Ben Gertzfield <che@debian.org> Fri, 2 Mar 2001 16:39:36 -0800
-+
-+gtk+1.2 (1.2.8-4) unstable; urgency=low
-+
-+ * Change dependancy for libgtk1.2-dev to xlibs-dev. Closes: #80744
-+ * Fixed in 1.2.8-2 (dpkg 1.6.8 issue) Closes: #63081
-+ * It's perfectly easy to make a binary-only upload of gtk+1.2.
-+ There are no weird dependancies between the Arch: all package
-+ (libgtk1.2-doc) and the others; libgtk1.2-dev and libgtk1.2-dbg
-+ merely Suggest: libgtk1.2-doc. Wichert, please supply more context
-+ with your bug reports next time! Closes: #77462
-+ * I can set LANG=fr_FR no problem with gtk+ 1.2.8 if I've uncommented
-+ the line in /etc/locale.gen and run locale-gen. Not a bug.
-+ Closes: #83636
-+ * Not a bug. (the packages are not corrupt on any mirrors I've
-+ seen.) Closes: #81406
-+ * Previously fixed bugs: Closes: #67996, #66867, #81406
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 28 Feb 2001 10:37:42 -0800
-+
-+gtk+1.2 (1.2.8-3) unstable; urgency=low
-+
-+ * D'oh. Add Source-Depends on libglib1.2-dev (>= 1.2.8).
-+ Closes: #81201
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 4 Jan 2001 10:28:22 -0800
-+
-+gtk+1.2 (1.2.8-2) unstable; urgency=low
-+
-+ * Bump Standards-Version to 3.2.1.
-+ * Fix bashism in debian/rules. Closes: #79384
-+ * Workaround for lack of MAXPATHLEN on hurd. Closes: #72312
-+ * Add Pre-Depends and preinst check for dpkg 1.6.8 for multiple
-+ Conflicts/Replaces.
-+
-+ -- Ben Gertzfield <che@debian.org> Sat, 23 Dec 2000 14:37:40 -0800
-+
-+gtk+1.2 (1.2.8-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 24 May 2000 19:55:03 -0700
-+
-+gtk+1.2 (1.2.7-1) frozen unstable; urgency=HIGH
-+
-+ * New upstream version *must* make it into frozen, as it fixes
-+ RC i18n bugs.
-+ * i18n bugs fixed: #56503, #57805, #57498, #57403
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 17 Feb 2000 09:34:04 -0800
-+
-+gtk+1.2 (1.2.6-2) frozen unstable; urgency=HIGH
-+
-+ * Change dependancy from gconv-modules | libc6 (<< 2.1) to just
-+ gconv-modules to fix upgrade path. (Otherwise apt gets very
-+ very confused.) Closes: #56477, #56528, #56530, #56535, #56857
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 2 Feb 2000 08:28:46 -0800
-+
-+gtk+1.2 (1.2.6-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Move docs and info to /usr/share/{doc,info}.
-+
-+ -- Ben Gertzfield <che@debian.org> Fri, 15 Oct 1999 10:35:06 -0700
-+
-+gtk+1.2 (1.2.5-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Fri, 24 Sep 1999 09:36:27 -0700
-+
-+gtk+1.2 (1.2.4-3) unstable; urgency=low
-+
-+ * Change Depends: for libgtk1.2 to depend on gconv-modules | libc6 (<< 2.1)
-+ (Closes: #44442)
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 8 Sep 1999 07:05:25 -0700
-+
-+gtk+1.2 (1.2.4-2) unstable; urgency=low
-+
-+ * Add Depends: on gconv-modules to fix locales
-+ problems. (Closes: #40704, #43800)
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 31 Aug 1999 09:31:55 -0700
-+
-+gtk+1.2 (1.2.4-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 24 Aug 1999 13:00:44 -0700
-+
-+gtk+1.2 (1.2.3-2) unstable; urgency=low
-+
-+ * Fix depends of -dev and -dbg to always depend on exact version of lib.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 27 Jul 1999 15:30:25 -0700
-+
-+gtk+1.2 (1.2.3-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Make shlibs stricter, as binary interface has changed.
-+ * Register docs with doc-base.
-+ * Reorganize docs in libgtk1.2-doc, include texinfo and sgml formats.
-+ * Wow. I never included the actual GTK+ manual in HTML or text forms
-+ before..
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 11 May 1999 22:04:15 -0700
-+
-+gtk+1.2 (1.2.2-1) unstable; urgency=low
-+
-+ * New upstream version. (Note that the 1.2.2-2 uploaded originally
-+ was a typo)
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 27 Apr 1999 11:32:07 -0700
-+
-+gtk+1.2 (1.2.1-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Loosen up shlibs; now programs compiled against GTK+ 1.2 depend on
-+ libgtk1.2 (>= 1.2.0).
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 25 Mar 1999 10:43:35 -0800
-+
-+gtk+1.2 (1.2.0-1) unstable; urgency=low
-+
-+ * New stable upstream version. Woo woo!
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 25 Feb 1999 23:46:11 -0800
-+
-+gtk+1.1.16 (1.1.16-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Defaults to debug being on now. Normal libgtk1.1.16 packages will
-+ be built with --enable-debug=minimum.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 16 Feb 1999 17:11:00 -0800
-+
-+gtk+1.1.15 (1.1.15-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 8 Feb 1999 17:08:36 -0800
-+
-+gtk+1.1.14 (1.1.14-1) unstable; urgency=low
-+
-+ * Okay, *this* is GTK+ 1.1.14 upstream release. Sheesh.
-+
-+ -- Ben Gertzfield <che@debian.org> Sat, 30 Jan 1999 18:16:19 -0800
-+
-+gtk+1.1.13 (1:1.1.13-1) unstable; urgency=low
-+
-+ * Crap, crap, crap. The GTK+ folks had told me that 1.1.14 was binary-
-+ compatible with 1.1.13. It's not. It doesn't even have the same soname;
-+ I shouldn't have trusted them. :) This is really version 1.1.13 again.
-+
-+ -- Ben Gertzfield <che@debian.org> Sat, 30 Jan 1999 17:28:29 -0800
-+
-+gtk+1.1.13 (1.1.14-1) unstable; urgency=low
-+
-+ * New upstream version. Note source name did not change, as the
-+ soname is still .13, because .14 and .13 are binary compatible.
-+ * Make absolutely sure the postinst for libgtk1.1.13 only calls
-+ ldconfig on 'configure' calls
-+
-+ -- Ben Gertzfield <che@debian.org> Fri, 29 Jan 1999 21:11:44 -0800
-+
-+gtk+1.1.13 (1.1.13-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Now libgtk1.1.x-dev Depends: on xlib6g-dev
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 20 Jan 1999 18:34:15 -0800
-+
-+gtk+1.1.12 (1.1.12-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 4 Jan 1999 14:27:45 -0800
-+
-+gtk+1.1.11 (1.1.11-1) unstable; urgency=low
-+
-+ * New upstream version. (They skipped 1.1.10.)
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 30 Dec 1998 22:27:43 -0800
-+
-+gtk+1.1.9 (1.1.9-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Now debian/rules uses $(version) variable to make my life easier.
-+ * debian/doc-postinst debian/doc-prerm: new files, which are copied
-+ to the versioned names for debhelper goodness from debian/rules
-+ and cleaned in debian/rules clean
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 17 Dec 1998 11:24:44 -0800
-+
-+gtk+1.1.6 (1.1.6-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 9 Dec 1998 08:06:44 -0800
-+
-+gtk+1.1.5 (1.1.5-3) unstable; urgency=low
-+
-+ * Rebuild to fix bug #30459
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 7 Dec 1998 12:58:05 -0800
-+
-+gtk+1.1.5 (1.1.5-2) unstable; urgency=low
-+
-+ * Now libgtk1.1.5-dev Provides: libgtk-dev and libgtk1.1-dev.
-+
-+ -- Ben Gertzfield <che@debian.org> Sun, 29 Nov 1998 18:51:05 -0800
-+
-+gtk+1.1.5 (1.1.5-1) unstable; urgency=low
-+
-+ * Now the source and binary packages *all* specifically have the version
-+ number in them. This is so a new release of glib or gtk+ does not break
-+ all apps dependant upon glib or gtk+'s unstable branch.
-+ * Removed --enable-debug=no from libgtk1.1 build; it was causing problems
-+ * Now includes themes support! Yay!
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 24 Nov 1998 14:28:06 -0800
-+
-+gtk+1.1 (1:1.1.3-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Now libgtk1.1-dev and libgtk1.1-dbg depend on ${Source-Version} of
-+ libgtk1.1/libgtk1.1-dev as libglib1.1 does.
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 5 Nov 1998 10:59:43 -0800
-+
-+gtk+1.1 (1:1.1.2-2) unstable; urgency=low
-+
-+ * Same change as to gtk+_1.0.6-2 -- new clean-dbg target to deal
-+ with my brain-fart that was helped along by an old broken
-+ debhelper.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 29 Sep 1998 12:28:31 -0700
-+
-+gtk+1.1 (1:1.1.2-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Now depends upon instead of recommends glib1.1/glib-dev.
-+ * New libgtk1.1-dbg package.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 21 Sep 1998 23:16:53 -0700
-+
-+gtk+1.1 (1:1.1.1-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 4 Aug 1998 22:45:02 -0700
-+
-+gtk+1.1 (1:1.1.0-1) unstable; urgency=low
-+
-+ * New packages for the unstable development branch of GTK+, 1.1.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 27 Jul 1998 14:04:40 -0700
-+
-+gtk+ (1:1.0.5-1) unstable; urgency=low
-+
-+ * New upstream version:
-+ * - Minor documentation fixups
-+ * - Fixes for clist (pixmap clipping), notebook, optionmenu, spinbutton
-+ and text widgets.
-+ * - Minor fixup about base class initializations in the type system.
-+ * - Fix for a major bug in the signal code that would cause random crashes.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 27 Jul 1998 11:34:53 -0700
-+
-+gtk+ (1:1.0.4-1) frozen unstable; urgency=low
-+
-+ * This is the final release of gtk+ that, along with GIMP, will be
-+ released into Debian 2.0.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 1 Jun 1998 22:10:33 -0700
-+
-+gtk+ (1:1.0.3-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 26 May 1998 17:20:26 -0700
-+
-+gtk+ (1:1.0.2-2) frozen unstable; urgency=low
-+
-+ * Added 'Replaces: libgtk-dev (<< 1.0.2)' to control for libgtk1.
-+ Fixes bug #22842.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 26 May 1998 12:49:49 -0700
-+
-+gtk+ (1:1.0.2-1) frozen unstable; urgency=low
-+
-+ * New stable upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 18 May 1998 12:17:52 -0700
-+
-+gtk+ (1:1.0.1-1) frozen unstable; urgency=low
-+
-+ * This is a bug-fix-only upstream release.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 4 May 1998 21:50:01 -0700
-+
-+gtk+ (1:1.0.0-1) frozen unstable; urgency=low
-+
-+ * Hooray! Version 1.0.0 has been released! This will hopefully
-+ be the final Debian version of gtk+ for hamm.
-+ * .gifs added to libgtk-doc, fixes bug #20720.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 13 Apr 1998 20:32:06 -0700
-+
-+gtk+ (1:0.99.10-1) frozen unstable; urgency=low
-+
-+ * New upstream version, lots more bugfixes.
-+ * Built without .deps directories.
-+ * Renamed ChangeLog.gz to changelog.gz in libgtk-doc, fixes lintian
-+ error.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 7 Apr 1998 23:42:36 -0700
-+
-+gtk+ (1:0.99.9-1) frozen unstable; urgency=low
-+
-+ * New upstream version, fixes many bugs with color displays.
-+ * Hopefully fixed all lintian warnings.
-+
-+ -- Ben Gertzfield <che@debian.org> Sun, 29 Mar 1998 13:46:25 -0800
-+
-+gtk+ (1:0.99.8-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * New file included in libgtk-dev: /usr/share/aclocal/gtk.m4,
-+ to help autoconf/automake developers use gtk and gtk-config
-+ more easily.
-+ * New file included in libgtk-doc: /usr/doc/libgtk-doc/gtk-config.txt
-+ Please refer to this doc when developing for gtk or compiling
-+ and running into odd path-related errors.
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 19 Mar 1998 19:58:53 -0800
-+
-+gtk+ (1:0.99.7-4) frozen unstable; urgency=low
-+
-+ * Rebuild with native Debian libtool to have libraries properly
-+ linked with libc and libX et al.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 17 Mar 1998 16:05:13 -0800
-+
-+gtk+ (1:0.99.7-3) frozen unstable; urgency=low
-+
-+ * Accidentally included all the html docs in /usr/doc/libgtk-doc/faq-html;
-+ moved the tutorial into /usr/doc/libgtk-doc/tutorial-html.
-+ * Included the Italian Gtk+ Tutorial in
-+ /usr/doc/libgtk-doc/italian-tutorial-html.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 16 Mar 1998 22:39:57 -0800
-+
-+gtk+ (1:0.99.7-2) unstable; urgency=low
-+
-+ * Upstream source added a /usr/lib/glib/ directory that I didn't
-+ notice; included this directory in libgtk-dev.
-+ * Realized that Xinput support was broken because I was doing
-+ ./configure --enable-xinput=xfree instead of ./configure
-+ --with-xinput=xfree. Fixed.
-+
-+ -- Ben Gertzfield <che@debian.org> Sun, 15 Mar 1998 19:17:05 -0800
-+
-+gtk+ (1:0.99.7-1) unstable; urgency=low
-+
-+ * New upstream release -- THIS IS INCOMPATIBLE WITH OLDER RELEASES!
-+ All Gtk-using packages *will* need patches to work with this Gtk!
-+ * Upstream release includes 'gtk-config' script to check installed
-+ version of Gtk; included said script in libgtk-dev in /usr/bin.
-+
-+ -- Ben Gertzfield <che@debian.org> Sun, 15 Mar 1998 11:03:03 -0800
-+
-+gtk+ (1:0.99.5-2) unstable; urgency=low
-+
-+ * Modified libgtk-doc to Replace: libgtk-dev (<< 1:0.99.4) to
-+ deal with both packages including the same .info files.
-+ Fixes bug #19533.
-+ * Also noticed that libgtk-dev depended on libgtk1 without
-+ an epoch! Fixed.
-+
-+ -- Ben Gertzfield <che@debian.org> Thu, 12 Mar 1998 13:37:11 -0800
-+
-+gtk+ (1:0.99.5-1) unstable; urgency=low
-+
-+ * Wow, that was quick, a new upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 9 Mar 1998 22:08:08 -0800
-+
-+gtk+ (1:0.99.4-3) unstable; urgency=low
-+
-+ * Recompiled with --enable-xinput=xfree to enable Wacom pads
-+ and other physical input devices.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 9 Mar 1998 21:26:07 -0800
-+
-+gtk+ (1:0.99.4-2) unstable; urgency=MEDIUM
-+
-+ * Ack! The shlibs file makes things depend on libgtk1 (>= 0.99.4)
-+ rather than (>= 1:0.99.4)! Fixes bug #19134.
-+
-+ -- Ben Gertzfield <che@debian.org> Sat, 7 Mar 1998 23:57:33 -0800
-+
-+gtk+ (1:0.99.4-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Recompiled with new debhelper to remove du warnings.
-+ * Upstream source is named gtk+, not libgtk1. Changed source name.
-+ * Removed --disable-xim in hopes that xim is no longer broken.
-+ * Removed testgtk at the behest of the Gtk developers until I can
-+ come up with a better solution, probably related to:
-+ * the new libgtk-doc package! :) libgtk-doc contains the Gtk FAQ,
-+ the Gtk Tutorial, and the Gtk info files.
-+
-+ -- Ben Gertzfield <che@debian.org> Tue, 3 Mar 1998 22:23:47 -0800
-+
-+libgtk1 (1:0.99.3-2) unstable; urgency=low
-+
-+ * Created manpage for testgtk program.
-+ * Fixed copyright mention to LGPL.gz to be just LGPL.
-+ * This fixes all known lintian errors.
-+
-+ -- Ben Gertzfield <che@debian.org> Wed, 11 Feb 1998 14:07:17 -0800
-+
-+libgtk1 (1:0.99.3-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Include the testgtk binary in libgtk-dev.
-+
-+ -- Ben Gertzfield <che@debian.org> Sat, 24 Jan 1998 15:30:09 -0800
-+
-+libgtk1 (1:0.99.2-2) unstable; urgency=low
-+
-+ * Fixed shlibs file to specify version >=1:0.99.2.
-+ * Renamed debian/postinst.libgtk1 to debian/postinst, so debhelper
-+ would actually install it.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 5 Jan 1998 12:22:46 -0800
-+
-+libgtk1 (1:0.99.2-1) unstable; urgency=low
-+
-+ * New upstream version.
-+
-+ -- Ben Gertzfield <che@debian.org> Sun, 4 Jan 1998 00:21:21 -0800
-+
-+libgtk1 (1:0.99.0-1) unstable; urgency=medium
-+
-+ * New upstream version with new numbering scheme, went to epoch :1
-+ correspondingly.
-+ * Hopefully fixed entry-field bug.
-+ * Converted to use debhelper.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 15 Dec 1997 12:02:25 -0800
-+
-+libgtk1 (971201-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Fixed copyright to say LGPL, not GPL. (bug #14867)
-+ * Re-added postinst ldconfig call. (bug #14213)
-+ * Info files should be correct now. (bugs #14773, #15143)
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 1 Dec 1997 16:41:50 -0800
-+
-+libgtk1 (971109-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Name is really 'GIMP Tool Kit', not 'General Tool Kit'.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 10 Nov 1997 16:15:27 -0800
-+
-+libgtk1 (970925-3) unstable; urgency=low
-+
-+ * Moved the include files to /usr/include/{gtk,gdk}.
-+ * Removed postinst/postrm ldconfig calls, fixes old gimp bug #13773.
-+
-+ -- Ben Gertzfield <che@debian.org> Fri, 17 Oct 1997 17:06:10 -0700
-+
-+libgtk1 (970925-2) unstable; urgency=low
-+
-+ * Added the shlibs file.
-+ * Removed the postinst/postrm calls to ldconfig, fixes bug #13733.
-+
-+ -- Ben Gertzfield <che@debian.org> Fri, 10 Oct 1997 17:55:39 -0700
-+
-+libgtk1 (970925-1) unstable; urgency=low
-+
-+ * New upstream version.
-+ * Split off source tree from gimp's source tree.
-+
-+ -- Ben Gertzfield <che@debian.org> Mon, 29 Sep 1997 13:14:45 -0700
-+
-+
---- gtk+1.2-1.2.10.orig/debian/control
-+++ gtk+1.2-1.2.10/debian/control
-@@ -0,0 +1,79 @@
-+Source: gtk+1.2
-+Priority: optional
-+Section: libs
-+Maintainer: Akira TAGOH <tagoh@debian.org>
-+Uploaders: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>, Andreas Rottmann <rotty@debian.org>, Andrew Lau <netsnipe@users.sourceforge.net>, Emil Soleyman-Zomalan <emil@nishra.com>, Gustavo Noronha Silva <kov@debian.org>, J.H.M. Dassen (Ray) <jdassen@debian.org>, Jose Carlos Garcia Sogo <jsogo@debian.org>, Josselin Mouette <joss@debian.org>, Jordi Mallach <jordi@debian.org>, Marc 'HE' Brockschmidt <he@debian.org>, Ondřej Surý <ondrej@debian.org>, Rob Bradford <rob@debianplanet.org>, Robert McQueen <robot101@debian.org>, Ross Burton <ross@debian.org>, Sebastien Bacher <seb128@debian.org>, Sjoerd Simons <sjoerd@debian.org>, Takuo KITAME <kitame@debian.org>
-+Standards-Version: 3.5.10.0
-+Build-Depends: debhelper (>> 4.0.0), gettext, libx11-dev, libxext-dev, libxi-dev, libxmu-dev, x-dev, libglib1.2-dev (>= 1.2.9), autotools-dev
-+
-+Package: libgtk1.2
-+Architecture: any
-+Section: libs
-+Pre-Depends: dpkg (>= 1.6.8)
-+Depends: libgtk1.2-common (>= ${Source-Version}), ${shlibs:Depends}
-+Conflicts: libgtk-dev (<< 1:1.0.2)
-+Replaces: libgtk1.1.5, libgtk1.1.6, libgtk1.1.9, libgtk1.1.11, libgtk1.1.12, libgtk1.1.13, libgtk1.1.14, libgtk1.1.15, libgtk1.1.16
-+Description: The GIMP Toolkit set of widgets for X
-+ The GIMP Toolkit is a freely available set of widgets for X.
-+ GTK is easy to use, and has been implemented in such projects as
-+ The GNU Image Manipulation Program (The GIMP), GNOME, a GNU
-+ desktop set of utilities for X, and gzilla, a GNU web-browser.
-+
-+Package: libgtk1.2-dev
-+Architecture: any
-+Section: libdevel
-+Pre-Depends: dpkg (>= 1.6.8)
-+Depends: libgtk1.2 (= ${Source-Version}), libglib1.2-dev, libx11-dev, libxext-dev, libxi-dev, pkg-config
-+Suggests: libgtk1.2-doc
-+Conflicts: libgtk1 (<< 1:1.0.4), libgtk-dev, libgtk1.1.5-dev, libgtk1.1.6-dev, libgtk1.1.7-dev, libgtk1.1.8-dev, libgtk1.1.9-dev, libgtk1.1.11-dev, libgtk1.1.12-dev, libgtk1.1.13-dev, libgtk1.1.14-dev, libgtk1.1.15-dev, libgtk1.1.16-dev, libgtk1.2 (<< 1.2.10-4)
-+Provides: libgtk-dev, libgtk1.1-dev
-+Replaces: libgtk-dev, libgtk1.1-dev, libgtk1.1.5-dev, libgtk1.1.6-dev, libgtk1.1.9-dev, libgtk1.1.11-dev, libgtk1.1.12-dev, libgtk1.1.13-dev, libgtk1.1.14-dev, libgtk1.1.16-dev, libgtk1.2 (<< 1.2.10-4)
-+Description: Development files for the GIMP Toolkit
-+ This package contains the header files and static libraries for the
-+ GIMP Toolkit set of widgets for X.
-+ .
-+ Install this package if you wish to develop your own X programs using
-+ the GIMP Toolkit 1.2, or if you wish to compile your own plug-ins for
-+ The GIMP.
-+
-+Package: libgtk1.2-doc
-+Architecture: all
-+Section: doc
-+Pre-Depends: dpkg (>= 1.6.8)
-+Conflicts: libgtk-dev (<< 1:0.99.4), libgtk-doc, libgtk1.1-doc, libgtk1.1.5-doc, libgtk1.1.6-doc, libgtk1.1.7-doc, libgtk1.1.8-doc, libgtk1.1.9-doc, libgtk1.1.11-doc, libgtk1.1.12-doc, libgtk1.1.13-doc, libgtk1.1.14-doc, libgtk1.1.15-doc, libgtk1.1.16-doc
-+Replaces: libgtk-doc, libgtk1.1-doc, libgtk1.1.5-doc, libgtk1.1.6-doc, libgtk1.1.9-doc, libgtk1.1.11-doc, libgtk1.1.12-doc, libgtk1.1.13-doc, libgtk1.1.14-doc, libgtk1.1.15-doc, libgtk1.1.16-doc
-+Suggests: devhelp-book-gtk
-+Description: Documentation for the GIMP Toolkit
-+ This package contains lots of info-files, HTML docs, FAQs, and
-+ other handy documentation about the GIMP Toolkit set of widgets
-+ for X.
-+ .
-+ Install this package if you want to have lots of info about the
-+ GIMP toolkit when you're programming.
-+
-+Package: libgtk1.2-common
-+Architecture: all
-+Section: misc
-+Replaces: libgtk1.2 (<< 1.2.10-4)
-+Description: Common files for the GTK+ library
-+ The GIMP Toolkit is a freely available set of widgets for X.
-+ GTK is easy to use, and has been implemented in such projects as
-+ The GNU Image Manipulation Program (The GIMP), GNOME, a GNU
-+ desktop set of utilities for X, and gzilla, a GNU web-browser.
-+ .
-+ This package contains the common files which the runtime libraries
-+ need.
-+
-+Package: libgtk1.2-dbg
-+Architecture: any
-+Section: libdevel
-+Priority: extra
-+Pre-Depends: dpkg (>= 1.6.8)
-+Depends: libgtk1.2 (= ${Source-Version})
-+Description: Debugging files for the GIMP Toolkit
-+ This package contains the debugging static libraries for the
-+ GIMP Toolkit set of widgets for X.
-+ .
-+ Install this package if you wish to debug your own X programs using
-+ the GIMP Toolkit 1.2, or if you wish to debug your own plug-ins for
-+ The GIMP.
---- gtk+1.2-1.2.10.orig/acgtk.m4
-+++ gtk+1.2-1.2.10/acgtk.m4
-@@ -0,0 +1,336 @@
-+# Macro to add for using GNU gettext.
-+# Ulrich Drepper <drepper@cygnus.com>, 1995.
-+#
-+# Modified to never use included libintl.
-+# Owen Taylor <otaylor@redhat.com>, 12/15/1998
-+#
-+#
-+# This file can be copied and used freely without restrictions. It can
-+# be used in projects which are not available under the GNU Public License
-+# but which still want to provide support for the GNU gettext functionality.
-+# Please note that the actual code is *not* freely available.
-+
-+# serial 5
-+
-+AC_DEFUN([AM_GTK_WITH_NLS],
-+ [AC_MSG_CHECKING([whether NLS is requested])
-+ dnl Default is enabled NLS
-+ AC_ARG_ENABLE(nls,
-+ [ --disable-nls do not use Native Language Support],
-+ USE_NLS=$enableval, USE_NLS=yes)
-+ AC_MSG_RESULT($USE_NLS)
-+ AC_SUBST(USE_NLS)
-+
-+ USE_INCLUDED_LIBINTL=no
-+
-+ dnl If we use NLS figure out what method
-+ if test "$USE_NLS" = "yes"; then
-+# AC_DEFINE(ENABLE_NLS)
-+# AC_MSG_CHECKING([whether included gettext is requested])
-+# AC_ARG_WITH(included-gettext,
-+# [ --with-included-gettext use the GNU gettext library included here],
-+# nls_cv_force_use_gnu_gettext=$withval,
-+# nls_cv_force_use_gnu_gettext=no)
-+# AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
-+ nls_cv_force_use_gnu_gettext="no"
-+
-+ nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
-+ if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
-+ dnl User does not insist on using GNU NLS library. Figure out what
-+ dnl to use. If gettext or catgets are available (in this order) we
-+ dnl use this. Else we have to fall back to GNU NLS library.
-+ dnl catgets is only used if permitted by option --with-catgets.
-+ nls_cv_header_intl=
-+ nls_cv_header_libgt=
-+ CATOBJEXT=NONE
-+
-+ AC_CHECK_HEADER(libintl.h,
-+ [AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
-+ [AC_TRY_LINK([#include <libintl.h>], [return (int) dgettext ("","")],
-+ gt_cv_func_dgettext_libc=yes, gt_cv_func_dgettext_libc=no)])
-+
-+ if test "$gt_cv_func_dgettext_libc" != "yes"; then
-+ AC_CHECK_LIB(intl, bindtextdomain,
-+ [AC_CACHE_CHECK([for dgettext in libintl],
-+ gt_cv_func_dgettext_libintl,
-+ [AC_CHECK_LIB(intl, dgettext,
-+ gt_cv_func_dgettext_libintl=yes,
-+ gt_cv_func_dgettext_libintl=no)],
-+ gt_cv_func_dgettext_libintl=no)])
-+ fi
-+
-+ if test "$gt_cv_func_dgettext_libintl" = "yes"; then
-+ LIBS="$LIBS -lintl";
-+ fi
-+
-+ if test "$gt_cv_func_dgettext_libc" = "yes" \
-+ || test "$gt_cv_func_dgettext_libintl" = "yes"; then
-+ AC_DEFINE(HAVE_GETTEXT)
-+ AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
-+ [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
-+ if test "$MSGFMT" != "no"; then
-+ AC_CHECK_FUNCS(dcgettext)
-+ AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
-+ AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
-+ [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
-+ AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
-+ return _nl_msg_cat_cntr],
-+ [CATOBJEXT=.gmo
-+ DATADIRNAME=share],
-+ [CATOBJEXT=.mo
-+ DATADIRNAME=lib])
-+ INSTOBJEXT=.mo
-+ fi
-+ fi
-+
-+ # Added by Martin Baulig 12/15/98 for libc5 systems
-+ if test "$gt_cv_func_dgettext_libc" != "yes" \
-+ && test "$gt_cv_func_dgettext_libintl" = "yes"; then
-+ INTLLIBS=-lintl
-+ LIBS=`echo $LIBS | sed -e 's/-lintl//'`
-+ fi
-+ ])
-+
-+ if test "$CATOBJEXT" = "NONE"; then
-+ AC_MSG_CHECKING([whether catgets can be used])
-+ AC_ARG_WITH(catgets,
-+ [ --with-catgets use catgets functions if available],
-+ nls_cv_use_catgets=$withval, nls_cv_use_catgets=no)
-+ AC_MSG_RESULT($nls_cv_use_catgets)
-+
-+ if test "$nls_cv_use_catgets" = "yes"; then
-+ dnl No gettext in C library. Try catgets next.
-+ AC_CHECK_LIB(i, main)
-+ AC_CHECK_FUNC(catgets,
-+ [AC_DEFINE(HAVE_CATGETS)
-+ INTLOBJS="\$(CATOBJS)"
-+ AC_PATH_PROG(GENCAT, gencat, no)dnl
-+# if test "$GENCAT" != "no"; then
-+# AC_PATH_PROG(GMSGFMT, gmsgfmt, no)
-+# if test "$GMSGFMT" = "no"; then
-+# AM_PATH_PROG_WITH_TEST(GMSGFMT, msgfmt,
-+# [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)
-+# fi
-+# AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
-+# [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
-+# USE_INCLUDED_LIBINTL=yes
-+# CATOBJEXT=.cat
-+# INSTOBJEXT=.cat
-+# DATADIRNAME=lib
-+# INTLDEPS='$(top_builddir)/intl/libintl.a'
-+# INTLLIBS=$INTLDEPS
-+# LIBS=`echo $LIBS | sed -e 's/-lintl//'`
-+# nls_cv_header_intl=intl/libintl.h
-+# nls_cv_header_libgt=intl/libgettext.h
-+# fi
-+ ])
-+ fi
-+ fi
-+
-+ if test "$CATOBJEXT" = "NONE"; then
-+ dnl Neither gettext nor catgets in included in the C library.
-+ dnl Fall back on GNU gettext library.
-+ nls_cv_use_gnu_gettext=yes
-+ fi
-+ fi
-+
-+ if test "$nls_cv_use_gnu_gettext" != "yes"; then
-+ AC_DEFINE(ENABLE_NLS)
-+ else
-+ # Unset this variable since we use the non-zero value as a flag.
-+ CATOBJEXT=
-+# dnl Mark actions used to generate GNU NLS library.
-+# INTLOBJS="\$(GETTOBJS)"
-+# AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
-+# [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], msgfmt)
-+# AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
-+# AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
-+# [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
-+# AC_SUBST(MSGFMT)
-+# USE_INCLUDED_LIBINTL=yes
-+# CATOBJEXT=.gmo
-+# INSTOBJEXT=.mo
-+# DATADIRNAME=share
-+# INTLDEPS='$(top_builddir)/intl/libintl.a'
-+# INTLLIBS=$INTLDEPS
-+# LIBS=`echo $LIBS | sed -e 's/-lintl//'`
-+# nls_cv_header_intl=intl/libintl.h
-+# nls_cv_header_libgt=intl/libgettext.h
-+ fi
-+
-+ dnl Test whether we really found GNU xgettext.
-+ if test "$XGETTEXT" != ":"; then
-+ dnl If it is no GNU xgettext we define it as : so that the
-+ dnl Makefiles still can work.
-+ if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
-+ : ;
-+ else
-+ AC_MSG_RESULT(
-+ [found xgettext program is not GNU xgettext; ignore it])
-+ XGETTEXT=":"
-+ fi
-+ fi
-+
-+ # We need to process the po/ directory.
-+ POSUB=po
-+ else
-+ DATADIRNAME=share
-+ nls_cv_header_intl=intl/libintl.h
-+ nls_cv_header_libgt=intl/libgettext.h
-+ fi
-+ AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
-+ AC_OUTPUT_COMMANDS(
-+ [case "$CONFIG_FILES" in *po/Makefile.in*)
-+ sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
-+ esac])
-+
-+
-+# # If this is used in GNU gettext we have to set USE_NLS to `yes'
-+# # because some of the sources are only built for this goal.
-+# if test "$PACKAGE" = gettext; then
-+# USE_NLS=yes
-+# USE_INCLUDED_LIBINTL=yes
-+# fi
-+
-+ dnl These rules are solely for the distribution goal. While doing this
-+ dnl we only have to keep exactly one list of the available catalogs
-+ dnl in configure.in.
-+ for lang in $ALL_LINGUAS; do
-+ GMOFILES="$GMOFILES $lang.gmo"
-+ POFILES="$POFILES $lang.po"
-+ done
-+
-+ dnl Make all variables we use known to autoconf.
-+ AC_SUBST(USE_INCLUDED_LIBINTL)
-+ AC_SUBST(CATALOGS)
-+ AC_SUBST(CATOBJEXT)
-+ AC_SUBST(DATADIRNAME)
-+ AC_SUBST(GMOFILES)
-+ AC_SUBST(INSTOBJEXT)
-+ AC_SUBST(INTLDEPS)
-+ AC_SUBST(INTLLIBS)
-+ AC_SUBST(INTLOBJS)
-+ AC_SUBST(POFILES)
-+ AC_SUBST(POSUB)
-+ ])
-+
-+AC_DEFUN([AM_GTK_GNU_GETTEXT],
-+ [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-+ AC_REQUIRE([AC_PROG_CC])dnl
-+ AC_REQUIRE([AC_PROG_RANLIB])dnl
-+ AC_REQUIRE([AC_ISC_POSIX])dnl
-+ AC_REQUIRE([AC_HEADER_STDC])dnl
-+ AC_REQUIRE([AC_C_CONST])dnl
-+ AC_REQUIRE([AC_C_INLINE])dnl
-+ AC_REQUIRE([AC_TYPE_OFF_T])dnl
-+ AC_REQUIRE([AC_TYPE_SIZE_T])dnl
-+ AC_REQUIRE([AC_FUNC_ALLOCA])dnl
-+ AC_REQUIRE([AC_FUNC_MMAP])dnl
-+
-+ AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h string.h \
-+unistd.h sys/param.h])
-+ AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \
-+strdup __argz_count __argz_stringify __argz_next])
-+
-+ if test "${ac_cv_func_stpcpy+set}" != "set"; then
-+ AC_CHECK_FUNCS(stpcpy)
-+ fi
-+ if test "${ac_cv_func_stpcpy}" = "yes"; then
-+ AC_DEFINE(HAVE_STPCPY)
-+ fi
-+
-+ AM_LC_MESSAGES
-+ AM_GTK_WITH_NLS
-+
-+ if test "x$CATOBJEXT" != "x"; then
-+ if test "x$ALL_LINGUAS" = "x"; then
-+ LINGUAS=
-+ else
-+ AC_MSG_CHECKING(for catalogs to be installed)
-+ NEW_LINGUAS=
-+ for lang in ${LINGUAS=$ALL_LINGUAS}; do
-+ case "$ALL_LINGUAS" in
-+ *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
-+ esac
-+ done
-+ LINGUAS=$NEW_LINGUAS
-+ AC_MSG_RESULT($LINGUAS)
-+ fi
-+
-+ dnl Construct list of names of catalog files to be constructed.
-+ if test -n "$LINGUAS"; then
-+ for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
-+ fi
-+ fi
-+
-+ dnl The reference to <locale.h> in the installed <libintl.h> file
-+ dnl must be resolved because we cannot expect the users of this
-+ dnl to define HAVE_LOCALE_H.
-+ if test $ac_cv_header_locale_h = yes; then
-+ INCLUDE_LOCALE_H="#include <locale.h>"
-+ else
-+ INCLUDE_LOCALE_H="\
-+/* The system does not provide the header <locale.h>. Take care yourself. */"
-+ fi
-+ AC_SUBST(INCLUDE_LOCALE_H)
-+
-+ dnl Determine which catalog format we have (if any is needed)
-+ dnl For now we know about two different formats:
-+ dnl Linux libc-5 and the normal X/Open format
-+ test -d intl || mkdir intl
-+ if test "$CATOBJEXT" = ".cat"; then
-+ AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen)
-+
-+ dnl Transform the SED scripts while copying because some dumb SEDs
-+ dnl cannot handle comments.
-+ sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
-+ fi
-+ dnl po2tbl.sed is always needed.
-+ sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
-+ $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
-+
-+ dnl In the intl/Makefile.in we have a special dependency which makes
-+ dnl only sense for gettext. We comment this out for non-gettext
-+ dnl packages.
-+ if test "$PACKAGE" = "gettext"; then
-+ GT_NO="#NO#"
-+ GT_YES=
-+ else
-+ GT_NO=
-+ GT_YES="#YES#"
-+ fi
-+ AC_SUBST(GT_NO)
-+ AC_SUBST(GT_YES)
-+
-+ dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
-+ dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
-+ dnl Try to locate is.
-+ MKINSTALLDIRS=
-+ if test -n "$ac_aux_dir"; then
-+ MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
-+ fi
-+ if test -z "$MKINSTALLDIRS"; then
-+ MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
-+ fi
-+ AC_SUBST(MKINSTALLDIRS)
-+
-+ dnl *** For now the libtool support in intl/Makefile is not for real.
-+ l=
-+ AC_SUBST(l)
-+
-+ dnl Generate list of files to be processed by xgettext which will
-+ dnl be included in po/Makefile.
-+ test -d po || mkdir po
-+ if test "x$srcdir" != "x."; then
-+ if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
-+ posrcprefix="$srcdir/"
-+ else
-+ posrcprefix="../$srcdir/"
-+ fi
-+ else
-+ posrcprefix="../"
-+ fi
-+ rm -f po/POTFILES
-+ sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
-+ < $srcdir/po/POTFILES.in > po/POTFILES
-+ ])
diff --git a/source/l/gtk+/slack-desc b/source/l/gtk+/slack-desc
index 88cf14b69..093552032 100644
--- a/source/l/gtk+/slack-desc
+++ b/source/l/gtk+/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/gtk+2/gtk+2.SlackBuild b/source/l/gtk+2/gtk+2.SlackBuild
index 92f95449a..e006023a1 100755
--- a/source/l/gtk+2/gtk+2.SlackBuild
+++ b/source/l/gtk+2/gtk+2.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=gtk+2
VERSION=${VERSION:-$(echo gtk+-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -36,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-gtk2
@@ -59,7 +68,7 @@ mkdir -p $TMP $PKG/usr
cd $TMP
rm -rf gtk+-$VERSION
tar xvf $CWD/gtk+-$VERSION.tar.?z* || exit 1
-cd gtk+-$VERSION
+cd gtk+-$VERSION || exit 1
chown -R root:root .
find . \
@@ -68,6 +77,11 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Include some patches from the 2.24 git branch
+#for file in $CWD/patches/*.gz ; do
+# zcat $file | patch -p1 --verbose || exit 1
+#done
+
# Fix build errors
zcat $CWD/fix_build_issues_on_tutorial_and_faq.diff.gz | patch -p1 --verbose || exit 1
@@ -102,7 +116,7 @@ CFLAGS="$SLKCFLAGS" \
--with-xinput=yes \
--enable-xkb \
--enable-introspection \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
@@ -118,6 +132,9 @@ make install \
DESTDIR=$PKG \
|| exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Don't clobber im-multipress.conf
mv $PKG/etc/gtk-2.0/im-multipress.conf $PKG/etc/gtk-2.0/im-multipress.conf.new || exit 1
@@ -182,8 +199,8 @@ cp -a \
$PKG/usr/doc/gtk+-$VERSION
( cd $PKG/usr/doc/gtk+-$VERSION
ln -s ../../share/gtk-doc/html/gail-libgail-util .
- ln -s ../../share/gtk-doc/html/gdk .
- ln -s ../../share/gtk-doc/html/gtk .
+ ln -s ../../share/gtk-doc/html/gdk2 .
+ ln -s ../../share/gtk-doc/html/gtk2 .
)
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/l/gtk+2/slack-desc b/source/l/gtk+2/slack-desc
index bd800ade8..cb2fb7261 100644
--- a/source/l/gtk+2/slack-desc
+++ b/source/l/gtk+2/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
gtk+2: GTK+ version 2 (multi-platform GUI toolkit)
gtk+2:
gtk+2: This is GTK+, a multi-platform toolkit for creating graphical user
-gtk+2: interfaces. Offering a complete set of widgets, GTK+ is suitable for
+gtk+2: interfaces. Offering a complete set of widgets, GTK+ is suitable for
gtk+2: projects ranging from small one-off projects to complete application
gtk+2: suites.
gtk+2:
diff --git a/source/l/gtk+3/gtk+3.SlackBuild b/source/l/gtk+3/gtk+3.SlackBuild
index 6e97fbdbf..ab345c5d0 100755
--- a/source/l/gtk+3/gtk+3.SlackBuild
+++ b/source/l/gtk+3/gtk+3.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,8 +20,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
-VERSION=${VERSION:-$(echo gtk+-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+PKGNAM=gtk+3
+VERSION=${VERSION:-$(echo gtk+-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -36,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-gtk3
@@ -58,8 +67,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG/usr
cd $TMP
rm -rf gtk+-$VERSION
-tar xvf $CWD/gtk+-$VERSION.tar.?z* || exit 1
-cd gtk+-$VERSION
+tar xvf $CWD/gtk+-$VERSION.tar.?z || exit 1
+cd gtk+-$VERSION || exit 1
chown -R root:root .
find . \
@@ -97,6 +106,9 @@ make install \
DESTDIR=$PKG \
|| exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Don't clobber im-multipress.conf
mv $PKG/etc/gtk-3.0/im-multipress.conf $PKG/etc/gtk-3.0/im-multipress.conf.new
@@ -149,8 +161,8 @@ cp -a \
$PKG/usr/doc/gtk+3-$VERSION
( cd $PKG/usr/doc/gtk+3-$VERSION
ln -s /usr/share/gtk-doc/html/gail-libgail-util .
- ln -s /usr/share/gtk-doc/html/gdk .
- ln -s /usr/share/gtk-doc/html/gtk .
+ ln -s /usr/share/gtk-doc/html/gdk3 .
+ ln -s /usr/share/gtk-doc/html/gtk3 .
)
find $PKG/usr/doc/gtk+3-$VERSION/ -type f -exec chmod 644 {} \;
chown -R root:root $PKG/usr/doc/gtk+3-$VERSION
diff --git a/source/l/gtk+3/slack-desc b/source/l/gtk+3/slack-desc
index 47816927c..1224bc113 100644
--- a/source/l/gtk+3/slack-desc
+++ b/source/l/gtk+3/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
gtk+3: GTK+ version 3 (multi-platform GUI toolkit)
gtk+3:
gtk+3: This is GTK+, a multi-platform toolkit for creating graphical user
-gtk+3: interfaces. Offering a complete set of widgets, GTK+ is suitable for
+gtk+3: interfaces. Offering a complete set of widgets, GTK+ is suitable for
gtk+3: projects ranging from small one-off projects to complete application
gtk+3: suites.
gtk+3:
diff --git a/source/l/gtkmm2/gtkmm2.SlackBuild b/source/l/gtkmm2/gtkmm2.SlackBuild
index 016943b3a..47aebe501 100755
--- a/source/l/gtkmm2/gtkmm2.SlackBuild
+++ b/source/l/gtkmm2/gtkmm2.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2016, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,12 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
SRCNAM=gtkmm
PKGNAM=gtkmm2
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
SRCNAM=gtkmm
@@ -35,11 +37,18 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-$SRCNAM
+PKG=$TMP/package-$PKGNAM
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -82,6 +91,9 @@ CXXFLAGS="$SLKCFLAGS -std=c++11" \
make $NUMJOBS libdocdir=/usr/doc/$SRCNAM-$VERSION || make libdocdir=/usr/doc/$SRCNAM-$VERSION || exit 1
make install libdocdir=/usr/doc/$SRCNAM-$VERSION DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/gtkmm2/slack-desc b/source/l/gtkmm2/slack-desc
index 0c97a9e85..07cac4b60 100644
--- a/source/l/gtkmm2/slack-desc
+++ b/source/l/gtkmm2/slack-desc
@@ -2,17 +2,17 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
gtkmm2: gtkmm2 (C++ interface for GTK+2)
gtkmm2:
gtkmm2: gtkmm is the official C++ interface for the popular GUI library
-gtkmm2: GTK+. Highlights include typesafe callbacks, and a comprehensive set
+gtkmm2: GTK+. Highlights include typesafe callbacks, and a comprehensive set
gtkmm2: of widgets that are easily extensible via inheritance.
gtkmm2:
-gtkmm2: Homepage: http://www.gtkmm.org/
+gtkmm2: Homepage: http://www.gtkmm.org/
gtkmm2:
gtkmm2:
gtkmm2:
diff --git a/source/l/gtkmm3/gtkmm3.SlackBuild b/source/l/gtkmm3/gtkmm3.SlackBuild
index 2dc5b10d9..cf56f1faf 100755
--- a/source/l/gtkmm3/gtkmm3.SlackBuild
+++ b/source/l/gtkmm3/gtkmm3.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,12 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
SRCNAM=gtkmm
PKGNAM=gtkmm3
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
SRCNAM=gtkmm
@@ -35,11 +37,18 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-$SRCNAM
+PKG=$TMP/package-$PKGNAM
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -82,6 +91,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS libdocdir=/usr/doc/$SRCNAM-$VERSION || make libdocdir=/usr/doc/$SRCNAM-$VERSION || exit 1
make install libdocdir=/usr/doc/$SRCNAM-$VERSION DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/gtkmm3/slack-desc b/source/l/gtkmm3/slack-desc
index e250db1bc..b94c84087 100644
--- a/source/l/gtkmm3/slack-desc
+++ b/source/l/gtkmm3/slack-desc
@@ -2,17 +2,17 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
gtkmm3: gtkmm3 (C++ interface for GTK+3)
gtkmm3:
gtkmm3: gtkmm is the official C++ interface for the popular GUI library
-gtkmm3: GTK+. Highlights include typesafe callbacks, and a comprehensive set
+gtkmm3: GTK+. Highlights include typesafe callbacks, and a comprehensive set
gtkmm3: of widgets that are easily extensible via inheritance.
gtkmm3:
-gtkmm3: Homepage: http://www.gtkmm.org/
+gtkmm3: Homepage: http://www.gtkmm.org/
gtkmm3:
gtkmm3:
gtkmm3:
diff --git a/source/l/gtkspell/gtkspell.SlackBuild b/source/l/gtkspell/gtkspell.SlackBuild
index 3cb121755..e84a057a1 100755
--- a/source/l/gtkspell/gtkspell.SlackBuild
+++ b/source/l/gtkspell/gtkspell.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gtkspell
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -60,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -78,12 +86,15 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--infodir=/usr/info \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/gtkspell/slack-desc b/source/l/gtkspell/slack-desc
index 93fa8af8e..a6a309e7e 100644
--- a/source/l/gtkspell/slack-desc
+++ b/source/l/gtkspell/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
gtkspell: gtkspell (GTK2 spell checker interface library)
gtkspell:
gtkspell: GtkSpell provides MSWord/MacOSX-style highlighting of misspelled words
-gtkspell: in a GtkTextView widget. Right-clicking a misspelled word pops up a
+gtkspell: in a GtkTextView widget. Right-clicking a misspelled word pops up a
gtkspell: menu of suggested replacements.
gtkspell:
gtkspell:
diff --git a/source/l/gvfs/gvfs.SlackBuild b/source/l/gvfs/gvfs.SlackBuild
index 5006eca3f..9a330fd91 100755
--- a/source/l/gvfs/gvfs.SlackBuild
+++ b/source/l/gvfs/gvfs.SlackBuild
@@ -1,6 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009-2012 Robby Workman, Northport, Alabama, USA
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,11 +21,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=gvfs
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
-NUMJOBS=${NUMJOBS:--j6}
+NUMJOBS=${NUMJOBS:-" -j7 "}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,7 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -65,6 +75,10 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+if [ ! -x configure ]; then
+ autoreconf -vif || exit 1
+fi
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -74,16 +88,18 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--enable-gtk-doc \
- --disable-hal \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
-# Don't set AutoMount to true for network volumes. Doing so leads to long
-# delays in Thunar. Users may click the network button in Thunar to mount
-# them instead.
-sed -i -e "s/AutoMount=true/AutoMount=false/g" $PKG/usr/share/gvfs/mounts/network.mount
+## This was an issue in 2012, but we will try commenting this sed command out
+## in 2017 hoping that the issue no longer occurs...
+##
+## Don't set AutoMount to true for network volumes. Doing so leads to long
+## delays in Thunar. Users may click the network button in Thunar to mount
+## them instead.
+#sed -i -e "s/AutoMount=true/AutoMount=false/g" $PKG/usr/share/gvfs/mounts/network.mount
# Don't ship .la files:
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
diff --git a/source/l/gvfs/slack-desc b/source/l/gvfs/slack-desc
index 8d8cd0459..b8f7399b3 100644
--- a/source/l/gvfs/slack-desc
+++ b/source/l/gvfs/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler--------------------------------------------------------|
@@ -11,7 +11,7 @@ gvfs:
gvfs: gvfs is a userspace virtual filesystem designed to work with the I/O
gvfs: abstractions of libgio (a library included in the glib2 package).
gvfs: It installs several modules that are automatically used by applications
-gvfs: that use the libgio API. There is also fuse support that allows
+gvfs: that use the libgio API. There is also fuse support that allows
gvfs: applications not using gio to access the gvfs filesystems.
gvfs:
gvfs:
diff --git a/source/l/harfbuzz/harfbuzz.SlackBuild b/source/l/harfbuzz/harfbuzz.SlackBuild
index ecd04c6c6..08d979cae 100755
--- a/source/l/harfbuzz/harfbuzz.SlackBuild
+++ b/source/l/harfbuzz/harfbuzz.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2013, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=harfbuzz
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +37,16 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -59,7 +68,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -76,12 +85,17 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
+ --with-gobject=auto \
+ --with-graphite2=auto \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/harfbuzz/slack-desc b/source/l/harfbuzz/slack-desc
index 76bf1a318..55daedb76 100644
--- a/source/l/harfbuzz/slack-desc
+++ b/source/l/harfbuzz/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/herqq/slack-desc b/source/l/herqq/slack-desc
deleted file mode 100644
index 1b580c37f..000000000
--- a/source/l/herqq/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler-----------------------------------------------------|
-herqq: herqq (UPnP library)
-herqq:
-herqq: Herqq UPnP (HUPnP) is a software library for building UPnP devices
-herqq: and control points conforming to the UPnP Device Architecture
-herqq: version 1.1. It is designed to be simple to use and robust in
-herqq: operation. It is built using C++ and the Qt Framework.
-herqq:
-herqq: Homepage: http://www.herqq.org/
-herqq:
-herqq:
-herqq:
diff --git a/source/l/hicolor-icon-theme/hicolor-icon-theme.SlackBuild b/source/l/hicolor-icon-theme/hicolor-icon-theme.SlackBuild
index 70dcc8de4..057a9862e 100755
--- a/source/l/hicolor-icon-theme/hicolor-icon-theme.SlackBuild
+++ b/source/l/hicolor-icon-theme/hicolor-icon-theme.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,12 +20,21 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
-VERSION=${VERSION:-0.15}
+PKGNAM=hicolor-icon-theme
+VERSION=${VERSION:-0.17}
ARCH=noarch
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-hicolor-icon-theme
diff --git a/source/l/hicolor-icon-theme/slack-desc b/source/l/hicolor-icon-theme/slack-desc
index d07f7329a..646bbf41d 100644
--- a/source/l/hicolor-icon-theme/slack-desc
+++ b/source/l/hicolor-icon-theme/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
hicolor-icon-theme: hicolor-icon-theme (default icon theme)
hicolor-icon-theme:
hicolor-icon-theme: This is the default fallback theme used by implementations of the icon
-hicolor-icon-theme: theme specification.
+hicolor-icon-theme: theme specification.
hicolor-icon-theme:
hicolor-icon-theme: The specification is available at:
-hicolor-icon-theme: http://www.freedesktop.org/standards/icon-theme-spec/
+hicolor-icon-theme: http://www.freedesktop.org/standards/icon-theme-spec/
hicolor-icon-theme:
-hicolor-icon-theme: Homepage: https://www.freedesktop.org/wiki/Software/icon-theme
+hicolor-icon-theme: Homepage: https://www.freedesktop.org/wiki/Software/icon-theme
hicolor-icon-theme:
hicolor-icon-theme:
diff --git a/source/l/hunspell/hunspell.SlackBuild b/source/l/hunspell/hunspell.SlackBuild
index 93bb2895b..d383ed85e 100755
--- a/source/l/hunspell/hunspell.SlackBuild
+++ b/source/l/hunspell/hunspell.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,14 +21,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=hunspell
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -38,7 +38,7 @@ mkdir -p $TMP $PKG
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -46,8 +46,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -81,6 +89,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+autoreconf -vif
+
# Build and install:
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -93,11 +103,14 @@ CXXFLAGS="$SLKCFLAGS" \
--disable-static \
--with-ui \
--with-readline \
- --build=$TARGET
+ --build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/hunspell/slack-desc b/source/l/hunspell/slack-desc
index eb8f24401..e55f92a20 100644
--- a/source/l/hunspell/slack-desc
+++ b/source/l/hunspell/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler--------------------------------------------------|
diff --git a/source/l/icon-naming-utils/icon-naming-utils.SlackBuild b/source/l/icon-naming-utils/icon-naming-utils.SlackBuild
index 30c20804f..2e2abf488 100755
--- a/source/l/icon-naming-utils/icon-naming-utils.SlackBuild
+++ b/source/l/icon-naming-utils/icon-naming-utils.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,28 +20,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=icon-naming-utils
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "x86_64" ]; then
LIBDIRSUFFIX="64"
else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-icon-naming-utils
diff --git a/source/l/icu4c/icu4c.SlackBuild b/source/l/icu4c/icu4c.SlackBuild
index 823e4a04b..0a355a345 100755
--- a/source/l/icu4c/icu4c.SlackBuild
+++ b/source/l/icu4c/icu4c.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for icu4c
# Copyright 2007-2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2012, 2013, 2015, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2012, 2013, 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,8 +23,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=icu4c
-SRCVER=${SRCVER:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 2- -d . | cut -f 2 -d - | rev)}
+SRCVER=${SRCVER:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 2- -d . | cut -f 2 -d - | rev)}
VERSION=$(echo $SRCVER | tr _ .)
BUILD=${BUILD:-2}
@@ -38,9 +40,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-icu4c
@@ -62,7 +71,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf icu
-tar xvf $CWD/icu4c-$SRCVER-src.tar.xz || exit 1
+tar xvf $CWD/icu4c-$SRCVER-src.tar.?z || exit 1
cd icu || exit 1
chown -R root:root .
find . \
@@ -71,8 +80,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 \
-o -perm 400 \) -exec chmod 644 {} \;
-zcat $CWD/icu4c.closenull.patch.gz | patch -p1 --verbose || exit 1
-
cd source/
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/source/l/icu4c/icu4c.closenull.patch b/source/l/icu4c/icu4c.closenull.patch
deleted file mode 100644
index 3cc0b7f64..000000000
--- a/source/l/icu4c/icu4c.closenull.patch
+++ /dev/null
@@ -1,48 +0,0 @@
---- icu/source/common/unicode/localpointer.h.orig 2016-02-21 21:40:54.346007093 +0100
-+++ icu/source/common/unicode/localpointer.h 2016-02-21 21:46:25.455090792 +0100
-@@ -508,12 +508,12 @@
- : LocalPointerBase<Type>(src.ptr) { \
- src.ptr=NULL; \
- } \
-- ~LocalPointerClassName() { closeFunction(ptr); } \
-+ ~LocalPointerClassName() { if (ptr != NULL) closeFunction(ptr); } \
- LocalPointerClassName &operator=(LocalPointerClassName &&src) U_NOEXCEPT { \
- return moveFrom(src); \
- } \
- LocalPointerClassName &moveFrom(LocalPointerClassName &src) U_NOEXCEPT { \
-- closeFunction(ptr); \
-+ if (ptr != NULL) closeFunction(ptr); \
- LocalPointerBase<Type>::ptr=src.ptr; \
- src.ptr=NULL; \
- return *this; \
-@@ -527,7 +527,7 @@
- p1.swap(p2); \
- } \
- void adoptInstead(Type *p) { \
-- closeFunction(ptr); \
-+ if (ptr != NULL) closeFunction(ptr); \
- ptr=p; \
- } \
- }
-@@ -536,9 +536,9 @@
- class LocalPointerClassName : public LocalPointerBase<Type> { \
- public: \
- explicit LocalPointerClassName(Type *p=NULL) : LocalPointerBase<Type>(p) {} \
-- ~LocalPointerClassName() { closeFunction(ptr); } \
-+ ~LocalPointerClassName() { if (ptr != NULL) closeFunction(ptr); } \
- LocalPointerClassName &moveFrom(LocalPointerClassName &src) U_NOEXCEPT { \
-- closeFunction(ptr); \
-+ if (ptr != NULL) closeFunction(ptr); \
- LocalPointerBase<Type>::ptr=src.ptr; \
- src.ptr=NULL; \
- return *this; \
-@@ -552,7 +552,7 @@
- p1.swap(p2); \
- } \
- void adoptInstead(Type *p) { \
-- closeFunction(ptr); \
-+ if (ptr != NULL) closeFunction(ptr); \
- ptr=p; \
- } \
- }
-
diff --git a/source/l/icu4c/icu4c.url b/source/l/icu4c/icu4c.url
new file mode 100644
index 000000000..947519766
--- /dev/null
+++ b/source/l/icu4c/icu4c.url
@@ -0,0 +1 @@
+http://download.icu-project.org/files/icu4c
diff --git a/source/l/icu4c/slack-desc b/source/l/icu4c/slack-desc
index 2d0beefda..397597e3a 100644
--- a/source/l/icu4c/slack-desc
+++ b/source/l/icu4c/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/id3lib/id3lib.SlackBuild b/source/l/id3lib/id3lib.SlackBuild
new file mode 100755
index 000000000..ccae5744f
--- /dev/null
+++ b/source/l/id3lib/id3lib.SlackBuild
@@ -0,0 +1,171 @@
+#!/bin/bash
+
+# Copyright 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=id3lib
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+# Patches obtained from Arch who obtained them from Debian and elsewhere -
+# Use proper C++ headers:
+zcat $CWD/patches/id3lib.cppheaders.patch.gz | patch -p1 --verbose || exit 1
+# Add man pages:
+zcat $CWD/patches/id3lib.manpages.patch.gz | patch -p1 --verbose || exit 1
+# Write UTF8/UTF16 characters correctly:
+zcat $CWD/patches/id3lib.utf8_writing.patch.gz | patch -p1 --verbose || exit 1
+# Securely use mkstemp:
+zcat $CWD/patches/id3lib.mkstemp.patch.gz | patch -p1 --verbose || exit 1
+# Add C wrapper functions for field encoding:
+zcat $CWD/patches/id3lib.c_wrapper.patch.gz | patch -p1 --verbose || exit 1
+# Add a null pointer check:
+zcat $CWD/patches/id3lib.nullpointer_check.patch.gz | patch -p1 --verbose || exit 1
+# Fix stack smash crashes when reading VBR MP3:
+zcat $CWD/patches/id3lib.vbr_stack_smash.patch.gz | patch -p1 --verbose || exit 1
+
+# iomanip.h is obsolete; use the standard C++ header:
+sed -e "s%iomanip.h%iomanip%g" -i configure
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --enable-static=no \
+ --enable-debug=no \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* HISTORY NEWS README* THANKS TODO \
+ doc/id3v2.3.0.txt doc/musicmatch.txt \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Install man pages:
+mkdir -p $PKG/usr/man/man1
+cp -a doc/man/* $PKG/usr/man/man1
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/id3lib/patches/id3lib.c_wrapper.patch b/source/l/id3lib/patches/id3lib.c_wrapper.patch
new file mode 100644
index 000000000..d72e81c0e
--- /dev/null
+++ b/source/l/id3lib/patches/id3lib.c_wrapper.patch
@@ -0,0 +1,58 @@
+This patch adds C wrapper functions for field encoding.
+
+It was first introduced in version 3.8.3-8 and fixes
+http://bugs.debian.org/281292
+--- a/include/id3.h
++++ b/include/id3.h
+@@ -104,6 +104,9 @@
+ ID3_C_EXPORT void CCONV ID3Field_GetBINARY (const ID3Field *field, uchar *buffer, size_t buffLength);
+ ID3_C_EXPORT void CCONV ID3Field_FromFile (ID3Field *field, const char *fileName);
+ ID3_C_EXPORT void CCONV ID3Field_ToFile (const ID3Field *field, const char *fileName);
++ ID3_C_EXPORT bool CCONV ID3Field_SetEncoding (ID3Field *field, ID3_TextEnc enc);
++ ID3_C_EXPORT ID3_TextEnc CCONV ID3Field_GetEncoding (const ID3Field *field);
++ ID3_C_EXPORT bool CCONV ID3Field_IsEncodable (const ID3Field *field);
+
+ /* field-info wrappers */
+ ID3_C_EXPORT char* CCONV ID3FrameInfo_ShortName (ID3_FrameID frameid);
+--- a/src/c_wrapper.cpp
++++ b/src/c_wrapper.cpp
+@@ -681,6 +681,39 @@
+ }
+ }
+
++ ID3_C_EXPORT bool CCONV
++ ID3Field_SetEncoding(ID3Field *field, ID3_TextEnc enc)
++ {
++ bool changed = false;
++ if (field)
++ {
++ ID3_CATCH(changed = reinterpret_cast<ID3_Field *>(field)->SetEncoding(enc));
++ }
++ return changed;
++ }
++
++ ID3_C_EXPORT ID3_TextEnc CCONV
++ ID3Field_GetEncoding(const ID3Field *field)
++ {
++ ID3_TextEnc enc = ID3TE_NONE;
++ if (field)
++ {
++ ID3_CATCH(enc = reinterpret_cast<const ID3_Field *>(field)->GetEncoding());
++ }
++ return enc;
++ }
++
++ ID3_C_EXPORT bool CCONV
++ ID3Field_IsEncodable(const ID3Field *field)
++ {
++ bool isEncodable = false;
++ if (field)
++ {
++ ID3_CATCH(isEncodable = reinterpret_cast<const ID3_Field *>(field)->IsEncodable());
++ }
++ return isEncodable;
++ }
++
+ #ifdef __cplusplus
+ }
+ #endif /* __cplusplus */
diff --git a/source/l/id3lib/patches/id3lib.cppheaders.patch b/source/l/id3lib/patches/id3lib.cppheaders.patch
new file mode 100644
index 000000000..a9b45ab02
--- /dev/null
+++ b/source/l/id3lib/patches/id3lib.cppheaders.patch
@@ -0,0 +1,22 @@
+This patch imports the proper C++ headers
+--- a/include/id3/id3lib_strings.h
++++ b/include/id3/id3lib_strings.h
+@@ -30,6 +30,7 @@
+ #define _ID3LIB_STRINGS_H_
+
+ #include <string>
++#include <cstring>
+
+ #if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000))
+ namespace std
+--- a/include/id3/writers.h
++++ b/include/id3/writers.h
+@@ -30,7 +30,7 @@
+
+ #include "id3/writer.h"
+ #include "id3/id3lib_streams.h"
+-//#include <string.h>
++#include <cstring>
+
+ class ID3_CPP_EXPORT ID3_OStreamWriter : public ID3_Writer
+ {
diff --git a/source/l/id3lib/patches/id3lib.manpages.patch b/source/l/id3lib/patches/id3lib.manpages.patch
new file mode 100644
index 000000000..cebf3d4d4
--- /dev/null
+++ b/source/l/id3lib/patches/id3lib.manpages.patch
@@ -0,0 +1,198 @@
+This patch adds debian-made man pages
+--- /dev/null
++++ b/doc/man/id3info.1
+@@ -0,0 +1,31 @@
++.TH ID3INFO 1 "May 2000" local "User Command"
++.SH NAME
++id3info \- Display id3 tag information.
++.SH SYNOPSIS
++.B id3info
++.RB [
++.I OPTION
++.RB ]
++.RB [
++.I FILE
++.RB ]
++.br
++.SH DESCRIPTION
++.B Id3info
++displays both the id3v1 and id3v2 tag information for a file.
++Id3info will not differentiate between the two types of tags.
++.SH OPTIONS
++.TP
++.B \-h, \-\-help
++Display help and exit
++.TP
++.B \-v, \-\-version
++Display version information and exit
++.SH SEE ALSO
++id3convert(1), id3tag(1), id3v2(1)
++.SH AUTHOR
++.B id3lib
++was originally designed and implemented by Dirk Mahoney and is
++maintained by Scott Thomas Haug <sth2@cs.wustl.edu>. Manual page written for
++Debian GNU/Linux by Robert Woodcock <rcw@debian.org>.
++
+--- /dev/null
++++ b/doc/man/id3tag.1
+@@ -0,0 +1,69 @@
++.TH ID3TAG 1 "May 2000" local "User Command"
++.SH NAME
++id3tag \- Tags an mp3 file with id3v1 and/or id3v2 tags.
++.SH SYNOPSIS
++.B id3tag
++.RB [
++.I OPTION
++.RB ] ...
++.RB [
++.I FILE
++.RB ] ...
++.br
++.SH DESCRIPTION
++.B Id3tag
++will render both types of tag by default. Only the last
++tag type indicated in the option list will be used. Non-
++rendered will remain unchanged in the original file. Will
++also parse and convert Lyrics3 v2.0 frames, but will not
++render them.
++
++.SH OPTIONS
++.TP
++.B \-1, \-\-v1tag
++Render only the id3v1 tag
++.TP
++.B \-2, \-\-v2tag
++Render only the id3v2 tag
++.TP
++.B \-h, \-\-help
++Display help and exit
++.TP
++.B \-v, \-\-version
++Display version information and exit
++.TP
++.B \-a, \-\-artist ARTIST
++Set the artist information
++.TP
++.B \-s, \-\-song SONG
++Set the song title information
++.TP
++.B \-A, \-\-album ALBUM
++Set the album title information
++.TP
++.B \-c, \-\-comment COMMENT
++Set the comment information
++.TP
++.B \-C, \-\-desc DESCRIPTION
++Set the comment description
++.TP
++.B \-g, \-\-genre num
++Set the genre number
++.TP
++.B \-y, \-\-year num
++Set the year
++.TP
++.B \-t, \-\-track num
++Set the track number
++.TP
++.B \-T, \-\-total num
++Set the total number of tracks on the album
++
++.SH SEE ALSO
++id3convert(1), id3info(1), id3v2(1)
++.SH AUTHOR
++.B id3lib
++was originally designed and implemented by Dirk Mahoney and is
++maintained by Scott Thomas Haug <sth2@cs.wustl.edu>. Manual page written for
++Debian GNU/Linux by Robert Woodcock <rcw@debian.org>.
++
+--- /dev/null
++++ b/doc/man/id3convert.1
+@@ -0,0 +1,47 @@
++.TH ID3CONVERT 1 "May 2000" local "User Command"
++.SH NAME
++id3convert \- Converts between id3v1 and id3v2 tags of an mp3 file.
++.SH SYNOPSIS
++.B id3convert
++.RB [
++.I OPTION
++.RB ]
++.RB [
++.I FILE
++.RB ]
++.br
++.SH DESCRIPTION
++.B Id3convert
++converts between id3v1 and id3v2 tags of an mp3 file. Id3convert will render
++both types of tag by default. Only the last tag type indicated in the option
++list will be used. Non-rendered tags will remain unchanged in the original
++file. Id3convert will also parse and convert Lyrics3 v2.0 frames, but will
++not render them.
++
++.SH OPTIONS
++.TP
++.B \-1, \-\-v1tag
++Render only the id3v1 tag
++.TP
++.B \-2, \-\-v2tag
++Render only the id3v2 tag
++.TP
++.B \-s, \-\-strip
++Strip, rather than render, the tags
++.TP
++.B \-p, \-\-padding
++Use padding in the tag
++.TP
++.B \-h, \-\-help
++Display help and exit
++.TP
++.B \-v, \-\-version
++Display version information and exit
++
++.SH SEE ALSO
++id3tag(1), id3info(1), id3v2(1)
++.SH AUTHOR
++.B id3lib
++was originally designed and implemented by Dirk Mahoney and is
++maintained by Scott Thomas Haug <sth2@cs.wustl.edu>. Manual page written for
++Debian GNU/Linux by Robert Woodcock <rcw@debian.org>.
+--- /dev/null
++++ b/doc/man/id3cp.1
+@@ -0,0 +1,38 @@
++.TH ID3CP 1 "July 2001" local "User Command"
++.SH NAME
++id3cp \- Copies tags from one file to another.
++.SH SYNOPSIS
++.B id3cp
++.RB [
++.I OPTION
++.RB ] ...
++.RB [
++.I SOURCE
++.RB ]
++.RB [
++.I DEST
++.RB ]
++.br
++.SH DESCRIPTION
++.B Id3cp
++copies tags from SOURCE to DEST.
++.SH OPTIONS
++.TP
++.B \-1, \-\-v1tag
++Render only the id3v1 tag
++.TP
++.B \-2, \-\-v2tag
++Render only the id3v2 tag
++.TP
++.B \-h, \-\-help
++Display help and exit
++.TP
++.B \-v, \-\-version
++Display version information and exit
++.SH SEE ALSO
++id3convert(1), id3info(1), id3v2(1)
++.SH AUTHOR
++.B id3lib
++was originally designed and implemented by Dirk Mahoney and is
++maintained by Scott Thomas Haug <sth2@cs.wustl.edu>. Manual page written for
++Debian GNU/Linux by Robert Woodcock <rcw@debian.org>.
diff --git a/source/l/id3lib/patches/id3lib.mkstemp.patch b/source/l/id3lib/patches/id3lib.mkstemp.patch
new file mode 100644
index 000000000..36c84179f
--- /dev/null
+++ b/source/l/id3lib/patches/id3lib.mkstemp.patch
@@ -0,0 +1,54 @@
+This patch fixes an issues where temporary files were created in an insecure
+way.
+
+It was first intruduced in version 3.8.3-7 and fixes
+http://bugs.debian.org/438540
+--- a/src/tag_file.cpp
++++ b/src/tag_file.cpp
+@@ -242,8 +242,8 @@
+ strcpy(sTempFile, filename.c_str());
+ strcat(sTempFile, sTmpSuffix.c_str());
+
+-#if ((defined(__GNUC__) && __GNUC__ >= 3 ) || !defined(HAVE_MKSTEMP))
+- // This section is for Windows folk && gcc 3.x folk
++#if !defined(HAVE_MKSTEMP)
++ // This section is for Windows folk
+ fstream tmpOut;
+ createFile(sTempFile, tmpOut);
+
+@@ -257,7 +257,7 @@
+ tmpOut.write((char *)tmpBuffer, nBytes);
+ }
+
+-#else //((defined(__GNUC__) && __GNUC__ >= 3 ) || !defined(HAVE_MKSTEMP))
++#else //!defined(HAVE_MKSTEMP)
+
+ // else we gotta make a temp file, copy the tag into it, copy the
+ // rest of the old file after the tag, delete the old file, rename
+@@ -270,7 +270,7 @@
+ //ID3_THROW_DESC(ID3E_NoFile, "couldn't open temp file");
+ }
+
+- ofstream tmpOut(fd);
++ ofstream tmpOut(sTempFile);
+ if (!tmpOut)
+ {
+ tmpOut.close();
+@@ -285,14 +285,14 @@
+ uchar tmpBuffer[BUFSIZ];
+ while (file)
+ {
+- file.read(tmpBuffer, BUFSIZ);
++ file.read((char *)tmpBuffer, BUFSIZ);
+ size_t nBytes = file.gcount();
+- tmpOut.write(tmpBuffer, nBytes);
++ tmpOut.write((char *)tmpBuffer, nBytes);
+ }
+
+ close(fd); //closes the file
+
+-#endif ////((defined(__GNUC__) && __GNUC__ >= 3 ) || !defined(HAVE_MKSTEMP))
++#endif ////!defined(HAVE_MKSTEMP)
+
+ tmpOut.close();
+ file.close();
diff --git a/source/l/id3lib/patches/id3lib.nullpointer_check.patch b/source/l/id3lib/patches/id3lib.nullpointer_check.patch
new file mode 100644
index 000000000..d4ca5d292
--- /dev/null
+++ b/source/l/id3lib/patches/id3lib.nullpointer_check.patch
@@ -0,0 +1,12 @@
+This patch adds a check for a null pointer
+--- a/src/header_tag.cpp
++++ b/src/header_tag.cpp
+@@ -54,7 +54,7 @@
+ {
+ size_t bytesUsed = ID3_TagHeader::SIZE;
+
+- if (_info->is_extended)
++ if (_info && _info->is_extended)
+ {
+ bytesUsed += _info->extended_bytes;
+ }
diff --git a/source/l/id3lib/patches/id3lib.utf8_writing.patch b/source/l/id3lib/patches/id3lib.utf8_writing.patch
new file mode 100644
index 000000000..3d3f50fed
--- /dev/null
+++ b/source/l/id3lib/patches/id3lib.utf8_writing.patch
@@ -0,0 +1,38 @@
+Patch from 'Spoon' to fix issues with writing certain unicode characters
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,8 @@
++2006-02-17 Jerome Couderc
++
++ * Patch from Spoon to fix UTF-16 writing bug
++ http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
++
+ 2003-03-02 Sunday 17:38 Thijmen Klok <thijmen@id3lib.org>
+
+ * THANKS (1.20): added more people
+--- a/src/io_helpers.cpp
++++ b/src/io_helpers.cpp
+@@ -363,11 +363,22 @@
+ // Write the BOM: 0xFEFF
+ unicode_t BOM = 0xFEFF;
+ writer.writeChars((const unsigned char*) &BOM, 2);
++ // Patch from Spoon : 2004-08-25 14:17
++ // http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
++ // Wrong code
++ //for (size_t i = 0; i < size; i += 2)
++ //{
++ // unicode_t ch = (data[i] << 8) | data[i+1];
++ // writer.writeChars((const unsigned char*) &ch, 2);
++ //}
++ // Right code
++ unsigned char *pdata = (unsigned char *) data.c_str();
+ for (size_t i = 0; i < size; i += 2)
+ {
+- unicode_t ch = (data[i] << 8) | data[i+1];
++ unicode_t ch = (pdata[i] << 8) | pdata[i+1];
+ writer.writeChars((const unsigned char*) &ch, 2);
+ }
++ // End patch
+ }
+ return writer.getCur() - beg;
+ }
diff --git a/source/l/id3lib/patches/id3lib.vbr_stack_smash.patch b/source/l/id3lib/patches/id3lib.vbr_stack_smash.patch
new file mode 100644
index 000000000..9bf33e978
--- /dev/null
+++ b/source/l/id3lib/patches/id3lib.vbr_stack_smash.patch
@@ -0,0 +1,19 @@
+Description: Fix crashes when reading VBR MP3 file.
+Bug-Ubuntu: https://launchpad.net/bugs/444466
+Origin: upstream, http://sourceforge.net/tracker/?func=detail&aid=937707&group_id=979&atid=300979
+Forwarded: yes
+Author: Urs Fleisch
+
+Index: id3lib3.8.3-3.8.3/src/mp3_parse.cpp
+===================================================================
+--- id3lib3.8.3-3.8.3.orig/src/mp3_parse.cpp 2009-10-06 23:12:10.381250132 +0200
++++ id3lib3.8.3-3.8.3/src/mp3_parse.cpp 2009-10-06 23:14:09.545252591 +0200
+@@ -465,7 +465,7 @@
+ // from http://www.xingtech.com/developer/mp3/
+
+ const size_t VBR_HEADER_MIN_SIZE = 8; // "xing" + flags are fixed
+- const size_t VBR_HEADER_MAX_SIZE = 116; // frames, bytes, toc and scale are optional
++ const size_t VBR_HEADER_MAX_SIZE = 120; // frames, bytes, toc and scale are optional
+
+ if (mp3size >= vbr_header_offest + VBR_HEADER_MIN_SIZE)
+ {
diff --git a/source/l/id3lib/slack-desc b/source/l/id3lib/slack-desc
new file mode 100644
index 000000000..5f6093165
--- /dev/null
+++ b/source/l/id3lib/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+id3lib: id3lib (ID3 tag manipulation library)
+id3lib:
+id3lib: This package provides a library for manipulating ID3v1 and ID3v2 tags.
+id3lib: Features include identification of valid tags, automatic size
+id3lib: conversions, (re)synchronisation of tag frames, seamless tag
+id3lib: (de)compression, and optional padding facilities. Additionally, it can
+id3lib: display mp3 header info such as bitrate.
+id3lib:
+id3lib: Homepage: http://id3lib.sourceforge.net/
+id3lib:
+id3lib:
diff --git a/source/l/ilmbase/ilmbase.SlackBuild b/source/l/ilmbase/ilmbase.SlackBuild
index 55cff0e9b..c3a274fcd 100755
--- a/source/l/ilmbase/ilmbase.SlackBuild
+++ b/source/l/ilmbase/ilmbase.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2013, 2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2008, 2009, 2010, 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,29 +23,37 @@
# Modified by Robby Workman <rworkman@slackbuilds.org>
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=ilmbase
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -81,11 +89,14 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/ilmbase/slack-desc b/source/l/ilmbase/slack-desc
index ca56c31a2..c4575b1c0 100644
--- a/source/l/ilmbase/slack-desc
+++ b/source/l/ilmbase/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -15,5 +15,5 @@ ilmbase: Imath - a math function library
ilmbase: Iex - an exception-handling library
ilmbase: Half - Ilm's 16 bit floating point format library
ilmbase:
-ilmbase: Homepage: http://www.openexr.org/
+ilmbase: Homepage: http://www.openexr.org/
ilmbase:
diff --git a/source/l/imagemagick/doinst.sh b/source/l/imagemagick/doinst.sh
new file mode 100644
index 000000000..a78c00608
--- /dev/null
+++ b/source/l/imagemagick/doinst.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+config() {
+ NEW="$1"
+ OLD="`dirname $NEW`/`basename $NEW .new`"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+# Process all .new config files:
+for file in etc/ImageMagick*/*.new ; do
+ config $file
+done
diff --git a/source/l/imagemagick/imagemagick.SlackBuild b/source/l/imagemagick/imagemagick.SlackBuild
new file mode 100755
index 000000000..4dd249c02
--- /dev/null
+++ b/source/l/imagemagick/imagemagick.SlackBuild
@@ -0,0 +1,225 @@
+#!/bin/bash
+
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=imagemagick
+BUILD=${BUILD:-1}
+
+# NOTE: This is to cope with ImageMagick version numbers such as 5.4.7-4,
+# which occur fairly often (but not always). If these numbers are all the same,
+# then this is not one of those versions.
+
+# This is a bit messy, so we'll explain it well. :-)
+
+# This is the version number used in the source tarball filename
+FILEVER=6.9.9-42
+
+# This is the base version number, which is needed to cd into the source tree.
+# Normally this is the same as $FILEVER, but allow setting it here if needed.
+BASEVER=$FILEVER
+
+# This is the version number used in the package, where a version number cannot
+# contain a '-'. We'll try to autogenerate this one.
+PKGVER=$(echo $FILEVER | tr - _)
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$PKGVER-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-imagemagick
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+# --with-x or not --with-x, that is the question. It seems many other
+# distributions don't compile with X support, but it's been traditional
+# here. I am moving the prefix to /usr (instead of /usr/X11R6) though,
+# because many X-linked things are put into /usr now (like GNOME), and
+# I've heard a few reports of compile failures when this isn't in /usr.
+# Everyone else does it -- time to follow the path of least resistance.
+
+cd $TMP
+rm -rf ImageMagick-$BASEVER
+tar xvf $CWD/ImageMagick-$FILEVER.tar.?z || exit 1
+cd ImageMagick-$BASEVER || exit 1
+
+# Harden the default settings in policy.xml to prevent security issues:
+zcat $CWD/policy.xml.diff.gz | patch -p1 --verbose || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# --without-modules seems to avoid a segfault when identifying
+# or converting ps or eps files...
+
+# --disable-openmp seems to keep the perl Image::Magick from
+# eating up all RAM, and may help other script bindings.
+
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --program-prefix= \
+ --with-x \
+ --with-frozenpaths=no \
+ --with-modules \
+ --disable-opencl \
+ --disable-openmp \
+ --enable-hdri \
+ --enable-static=no \
+ --enable-shared \
+ --with-gcc-arch=$ARCH \
+ --with-perl \
+ --with-perl-options="INSTALLDIRS=vendor" \
+ --with-rsvg \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+# First, spam the running development system, as ImageMagick is unable to
+# properly link the utilities against a new shared library major version
+# otherwise which has led to several broken packages over the years:
+make install || exit 1
+rm -f /usr/lib${LIBDIRSUFFIX}/libMagick*.la
+/sbin/ldconfig
+
+# Now build again against the new libraries and headers:
+make clean
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# This should certainly not be included.
+# It stomps on the libtool package.
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libltdl.*
+
+# .la files in /usr/lib${LIBDIRSUFFIX}/ should be removed.
+# Other .la files should be left alone, as ImageMagick uses them internally
+# to locate modules.
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+( cd $PKG
+ # Nothing but a perl upgrade should replace this (and maybe not even that)
+ find . -name perllocal.pod | xargs rm -f
+)
+
+# DESTDIR is still broken about this, but works well enough otherwise:
+chmod 644 $PKG/usr/share/man/man3/*
+mv $PKG/usr/share/man/man3 $PKG/usr/man
+rmdir $PKG/usr/share/man
+
+( cd $PKG/usr/lib${LIBDIRSUFFIX}/perl5
+ # Ditch empty dirs:
+ rmdir */* 2> /dev/null
+ rmdir * 2> /dev/null
+)
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Remove rpaths:
+for file in $(find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : 2> /dev/null) ; do
+ if [ ! "$(patchelf --print-rpath $file 2> /dev/null)" = "" ]; then
+ patchelf --remove-rpath $file
+ fi
+done
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Move config files to .new:
+( cd $PKG/etc/ImageMagick*
+ for file in * ; do
+ mv ${file} ${file}.new
+ done
+)
+
+mkdir -p $PKG/usr
+mv $PKG/usr/share/doc $PKG/usr
+cp -a \
+ AUTHORS LICENSE NEWS NOTICE Platforms.txt QuickStart.txt README.txt \
+ $PKG/usr/doc/Imag*
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/ImageMagick-*)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/imagemagick-$PKGVER-$ARCH-$BUILD.txz
+
diff --git a/source/l/imagemagick/policy.xml.diff b/source/l/imagemagick/policy.xml.diff
new file mode 100644
index 000000000..04b3a105e
--- /dev/null
+++ b/source/l/imagemagick/policy.xml.diff
@@ -0,0 +1,30 @@
+--- ./config/policy.xml.orig 2017-07-15 12:33:46.000000000 -0500
++++ ./config/policy.xml 2017-07-17 20:14:07.785459021 -0500
+@@ -55,6 +55,21 @@
+ <policy domain="coder" rights="read|write" pattern="{GIF,JPEG,PNG,WEBP}" />
+ -->
+ <policymap>
++ <policy domain="cache" name="shared-secret" value="passphrase" stealth="true"/>
++ <!-- SECURITY: disable potentially insecure coders: -->
++ <policy domain="coder" rights="none" pattern="EPHEMERAL" />
++ <policy domain="coder" rights="none" pattern="HTTPS" />
++ <policy domain="coder" rights="none" pattern="MVG" />
++ <policy domain="coder" rights="none" pattern="MSL" />
++ <policy domain="coder" rights="none" pattern="TEXT" />
++ <policy domain="coder" rights="none" pattern="SHOW" />
++ <policy domain="coder" rights="none" pattern="WIN" />
++ <policy domain="coder" rights="none" pattern="PLT" />
++ <!-- SECURITY: prevent indirect reads: -->
++ <policy domain="path" rights="none" pattern="@*" />
++ <!-- SECURITY: prevent pipe to shell: -->
++ <policy domain="path" rights="none" pattern="|*" />
++ <!-- Some examples: -->
+ <!-- <policy domain="system" name="shred" value="2"/> -->
+ <!-- <policy domain="system" name="precision" value="6"/> -->
+ <!-- <policy domain="system" name="memory-map" value="anonymous"/> -->
+@@ -75,5 +90,4 @@
+ <!-- <policy domain="path" rights="none" pattern="@*" /> -->
+ <!-- <policy domain="cache" name="memory-map" value="anonymous"/> -->
+ <!-- <policy domain="cache" name="synchronize" value="True"/> -->
+- <!-- <policy domain="cache" name="shared-secret" value="passphrase" stealth="true"/> -->
+ </policymap>
diff --git a/source/l/imagemagick/slack-desc b/source/l/imagemagick/slack-desc
new file mode 100644
index 000000000..9f5f6adb4
--- /dev/null
+++ b/source/l/imagemagick/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+imagemagick: imagemagick (a robust collection of image processing tools)
+imagemagick:
+imagemagick: ImageMagick is a collection of tools for manipulating and displaying
+imagemagick: digital images. It can merge images, transform image dimensions,
+imagemagick: do screen captures, create animation sequences, and convert between
+imagemagick: many different image formats.
+imagemagick:
+imagemagick: ImageMagick was written by John Cristy of ImageMagick Studio.
+imagemagick:
+imagemagick: Home page: http://www.imagemagick.org/
+imagemagick:
diff --git a/source/l/iso-codes/iso-codes.SlackBuild b/source/l/iso-codes/iso-codes.SlackBuild
index ef9b1a799..9914a50df 100755
--- a/source/l/iso-codes/iso-codes.SlackBuild
+++ b/source/l/iso-codes/iso-codes.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008, 2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2008, 2009, 2011, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2011, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,13 +21,21 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=iso-codes
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
ARCH=${ARCH:-noarch}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
NUMJOBS=${NUMJOBS:-" -j7 "}
diff --git a/source/l/jansson/jansson.SlackBuild b/source/l/jansson/jansson.SlackBuild
new file mode 100755
index 000000000..f84928dab
--- /dev/null
+++ b/source/l/jansson/jansson.SlackBuild
@@ -0,0 +1,131 @@
+#!/bin/bash
+
+# Copyright 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=jansson
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* COPYING* LICENSE* NEWS* README* THANKS* TODO* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a CHANGES file, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGES ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGES | head -n 1000 > $DOCSDIR/CHANGES
+ touch -r CHANGES $DOCSDIR/CHANGES
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/jansson/slack-desc b/source/l/jansson/slack-desc
new file mode 100644
index 000000000..ce9f2607d
--- /dev/null
+++ b/source/l/jansson/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jansson: jansson (JSON data handling library)
+jansson:
+jansson: Jansson is a C library for encoding, decoding and manipulating JSON
+jansson: data. It features a simple and intuitive API and data model, includes
+jansson: full Unicode support, and has no dependencies on other libraries
+jansson: (except for glibc).
+jansson:
+jansson:
+jansson: Homepage: http://www.digip.org/jansson/
+jansson:
+jansson:
diff --git a/source/l/jasper/jasper.SlackBuild b/source/l/jasper/jasper.SlackBuild
index 8115b29c0..4c637d337 100755
--- a/source/l/jasper/jasper.SlackBuild
+++ b/source/l/jasper/jasper.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2008 Eric Hameleers, Eijdhoven, NL
-# Copyright 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Permission to use, copy, modify, and distribute this software for
@@ -22,10 +22,11 @@
# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=jasper
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -37,28 +38,28 @@ if [ -z "$ARCH" ]; then
esac
fi
-case "$ARCH" in
- i586) SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
- ;;
- s390) SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
- ;;
- powerpc) SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
- ;;
- x86_64) SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
- ;;
- athlon-xp) SLKCFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer"
- LIBDIRSUFFIX=""
- ;;
- *) SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
- ;;
-esac
-
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
rm -rf $PKG
@@ -67,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -75,51 +76,28 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# Taken from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=469786
-zcat $CWD/patches/jpc_dec.c.patch.gz | patch -p1 --verbose || exit 1
-
-# Taken from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=413041;msg=88
-zcat $CWD/patches/patch-libjasper-stepsizes-overflow.diff.gz | patch -p1 --verbose || exit 1
-
-# Apply security fixes - taken from fedora
-zcat $CWD/patches/jasper-1.900.1-CVE-2008-3520.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-1.900.1-CVE-2008-3522.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-1.900.1-CVE-2011-4516-CVE-2011-4517-CERT-VU-887409.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-CVE-2014-8138.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-CVE-2014-8157.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-CVE-2014-8158.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-CVE-2014-8137.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-CVE-2014-9029.patch.gz | patch -p1 --verbose || exit 1
-
-# Apply fixes for issues discovered by coverity - taken from fedora
-zcat $CWD/patches/jasper-1.900.1-Coverity-BAD_SIZEOF.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-1.900.1-Coverity-CHECKED_RETURN.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-1.900.1-Coverity-FORWARD_NULL.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-1.900.1-Coverity-NULL_RETURNS.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-1.900.1-Coverity-RESOURCE_LEAKS.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-1.900.1-Coverity-UNREACHABLE.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/jasper-1.900.1-Coverity-UNUSED_VALUE.patch.gz | patch -p1 --verbose || exit 1
-
-CFLAGS="$SLKCFLAGS -fno-strict-overflow" \
-CXXFLAGS="$SLKCFLAGS -fno-strict-overflow" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --localstatedir=/var \
- --sysconfdir=/etc \
- --mandir=/usr/man \
- --enable-shared \
- --disable-static \
- --program-prefix= \
- --program-suffix= \
- --build=$ARCH-slackware-linux
-
-make || exit 1
-make DESTDIR=$PKG install
-
+# Building docs needs texlive, and no easy way to disable it via cmake
+sed -i "/add_subdirectory(doc)/d" CMakeLists.txt
+
+# Build and install:
+mkdir builder
+cd builder
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DCMAKE_INSTALL_DOCDIR=/usr/doc/$PKGNAM-$VERSION \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DLATEX_FOUND=NO \
+ .. || exit 1
+ make $NUMJOBS VERBOSE=1 || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd -
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- COPYRIGHT INSTALL LICENSE NEWS README \
+ COPYRIGHT INSTALL LICENSE README* \
$PKG/usr/doc/$PKGNAM-$VERSION
find $PKG/usr/doc -type f -exec chmod 644 {} \;
diff --git a/source/l/jasper/patches/jasper-1.900.1-CVE-2008-3520.patch b/source/l/jasper/patches/jasper-1.900.1-CVE-2008-3520.patch
deleted file mode 100644
index 0f5e3b746..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-CVE-2008-3520.patch
+++ /dev/null
@@ -1,928 +0,0 @@
-https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2008-3520
-
-OpenBSD jas_malloc hardening patches
-
-diff -pruN jasper-1.900.1.orig/src/libjasper/base/jas_cm.c jasper-1.900.1/src/libjasper/base/jas_cm.c
---- jasper-1.900.1.orig/src/libjasper/base/jas_cm.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_cm.c 2009-10-22 10:27:45.000000000 +0200
-@@ -704,8 +704,7 @@ static int jas_cmpxformseq_resize(jas_cm
- {
- jas_cmpxform_t **p;
- assert(n >= pxformseq->numpxforms);
-- p = (!pxformseq->pxforms) ? jas_malloc(n * sizeof(jas_cmpxform_t *)) :
-- jas_realloc(pxformseq->pxforms, n * sizeof(jas_cmpxform_t *));
-+ p = jas_realloc2(pxformseq->pxforms, n, sizeof(jas_cmpxform_t *));
- if (!p) {
- return -1;
- }
-@@ -889,13 +888,13 @@ static int jas_cmshapmatlut_set(jas_cmsh
- jas_cmshapmatlut_cleanup(lut);
- if (curv->numents == 0) {
- lut->size = 2;
-- if (!(lut->data = jas_malloc(lut->size * sizeof(jas_cmreal_t))))
-+ if (!(lut->data = jas_alloc2(lut->size, sizeof(jas_cmreal_t))))
- goto error;
- lut->data[0] = 0.0;
- lut->data[1] = 1.0;
- } else if (curv->numents == 1) {
- lut->size = 256;
-- if (!(lut->data = jas_malloc(lut->size * sizeof(jas_cmreal_t))))
-+ if (!(lut->data = jas_alloc2(lut->size, sizeof(jas_cmreal_t))))
- goto error;
- gamma = curv->ents[0] / 256.0;
- for (i = 0; i < lut->size; ++i) {
-@@ -903,7 +902,7 @@ static int jas_cmshapmatlut_set(jas_cmsh
- }
- } else {
- lut->size = curv->numents;
-- if (!(lut->data = jas_malloc(lut->size * sizeof(jas_cmreal_t))))
-+ if (!(lut->data = jas_alloc2(lut->size, sizeof(jas_cmreal_t))))
- goto error;
- for (i = 0; i < lut->size; ++i) {
- lut->data[i] = curv->ents[i] / 65535.0;
-@@ -953,7 +952,7 @@ static int jas_cmshapmatlut_invert(jas_c
- return -1;
- }
- }
-- if (!(invlut->data = jas_malloc(n * sizeof(jas_cmreal_t))))
-+ if (!(invlut->data = jas_alloc2(n, sizeof(jas_cmreal_t))))
- return -1;
- invlut->size = n;
- for (i = 0; i < invlut->size; ++i) {
-diff -pruN jasper-1.900.1.orig/src/libjasper/base/jas_icc.c jasper-1.900.1/src/libjasper/base/jas_icc.c
---- jasper-1.900.1.orig/src/libjasper/base/jas_icc.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_icc.c 2009-10-22 10:27:45.000000000 +0200
-@@ -373,7 +373,7 @@ int jas_iccprof_save(jas_iccprof_t *prof
- jas_icctagtab_t *tagtab;
-
- tagtab = &prof->tagtab;
-- if (!(tagtab->ents = jas_malloc(prof->attrtab->numattrs *
-+ if (!(tagtab->ents = jas_alloc2(prof->attrtab->numattrs,
- sizeof(jas_icctagtabent_t))))
- goto error;
- tagtab->numents = prof->attrtab->numattrs;
-@@ -522,7 +522,7 @@ static int jas_iccprof_gettagtab(jas_str
- }
- if (jas_iccgetuint32(in, &tagtab->numents))
- goto error;
-- if (!(tagtab->ents = jas_malloc(tagtab->numents *
-+ if (!(tagtab->ents = jas_alloc2(tagtab->numents,
- sizeof(jas_icctagtabent_t))))
- goto error;
- tagtabent = tagtab->ents;
-@@ -743,8 +743,7 @@ static int jas_iccattrtab_resize(jas_icc
- {
- jas_iccattr_t *newattrs;
- assert(maxents >= tab->numattrs);
-- newattrs = tab->attrs ? jas_realloc(tab->attrs, maxents *
-- sizeof(jas_iccattr_t)) : jas_malloc(maxents * sizeof(jas_iccattr_t));
-+ newattrs = jas_realloc2(tab->attrs, maxents, sizeof(jas_iccattr_t));
- if (!newattrs)
- return -1;
- tab->attrs = newattrs;
-@@ -999,7 +998,7 @@ static int jas_icccurv_input(jas_iccattr
-
- if (jas_iccgetuint32(in, &curv->numents))
- goto error;
-- if (!(curv->ents = jas_malloc(curv->numents * sizeof(jas_iccuint16_t))))
-+ if (!(curv->ents = jas_alloc2(curv->numents, sizeof(jas_iccuint16_t))))
- goto error;
- for (i = 0; i < curv->numents; ++i) {
- if (jas_iccgetuint16(in, &curv->ents[i]))
-@@ -1100,7 +1099,7 @@ static int jas_icctxtdesc_input(jas_icca
- if (jas_iccgetuint32(in, &txtdesc->uclangcode) ||
- jas_iccgetuint32(in, &txtdesc->uclen))
- goto error;
-- if (!(txtdesc->ucdata = jas_malloc(txtdesc->uclen * 2)))
-+ if (!(txtdesc->ucdata = jas_alloc2(txtdesc->uclen, 2)))
- goto error;
- if (jas_stream_read(in, txtdesc->ucdata, txtdesc->uclen * 2) !=
- JAS_CAST(int, txtdesc->uclen * 2))
-@@ -1292,17 +1291,17 @@ static int jas_icclut8_input(jas_iccattr
- jas_iccgetuint16(in, &lut8->numouttabents))
- goto error;
- clutsize = jas_iccpowi(lut8->clutlen, lut8->numinchans) * lut8->numoutchans;
-- if (!(lut8->clut = jas_malloc(clutsize * sizeof(jas_iccuint8_t))) ||
-- !(lut8->intabsbuf = jas_malloc(lut8->numinchans *
-- lut8->numintabents * sizeof(jas_iccuint8_t))) ||
-- !(lut8->intabs = jas_malloc(lut8->numinchans *
-+ if (!(lut8->clut = jas_alloc2(clutsize, sizeof(jas_iccuint8_t))) ||
-+ !(lut8->intabsbuf = jas_alloc3(lut8->numinchans,
-+ lut8->numintabents, sizeof(jas_iccuint8_t))) ||
-+ !(lut8->intabs = jas_alloc2(lut8->numinchans,
- sizeof(jas_iccuint8_t *))))
- goto error;
- for (i = 0; i < lut8->numinchans; ++i)
- lut8->intabs[i] = &lut8->intabsbuf[i * lut8->numintabents];
-- if (!(lut8->outtabsbuf = jas_malloc(lut8->numoutchans *
-- lut8->numouttabents * sizeof(jas_iccuint8_t))) ||
-- !(lut8->outtabs = jas_malloc(lut8->numoutchans *
-+ if (!(lut8->outtabsbuf = jas_alloc3(lut8->numoutchans,
-+ lut8->numouttabents, sizeof(jas_iccuint8_t))) ||
-+ !(lut8->outtabs = jas_alloc2(lut8->numoutchans,
- sizeof(jas_iccuint8_t *))))
- goto error;
- for (i = 0; i < lut8->numoutchans; ++i)
-@@ -1461,17 +1460,17 @@ static int jas_icclut16_input(jas_iccatt
- jas_iccgetuint16(in, &lut16->numouttabents))
- goto error;
- clutsize = jas_iccpowi(lut16->clutlen, lut16->numinchans) * lut16->numoutchans;
-- if (!(lut16->clut = jas_malloc(clutsize * sizeof(jas_iccuint16_t))) ||
-- !(lut16->intabsbuf = jas_malloc(lut16->numinchans *
-- lut16->numintabents * sizeof(jas_iccuint16_t))) ||
-- !(lut16->intabs = jas_malloc(lut16->numinchans *
-+ if (!(lut16->clut = jas_alloc2(clutsize, sizeof(jas_iccuint16_t))) ||
-+ !(lut16->intabsbuf = jas_alloc3(lut16->numinchans,
-+ lut16->numintabents, sizeof(jas_iccuint16_t))) ||
-+ !(lut16->intabs = jas_alloc2(lut16->numinchans,
- sizeof(jas_iccuint16_t *))))
- goto error;
- for (i = 0; i < lut16->numinchans; ++i)
- lut16->intabs[i] = &lut16->intabsbuf[i * lut16->numintabents];
-- if (!(lut16->outtabsbuf = jas_malloc(lut16->numoutchans *
-- lut16->numouttabents * sizeof(jas_iccuint16_t))) ||
-- !(lut16->outtabs = jas_malloc(lut16->numoutchans *
-+ if (!(lut16->outtabsbuf = jas_alloc3(lut16->numoutchans,
-+ lut16->numouttabents, sizeof(jas_iccuint16_t))) ||
-+ !(lut16->outtabs = jas_alloc2(lut16->numoutchans,
- sizeof(jas_iccuint16_t *))))
- goto error;
- for (i = 0; i < lut16->numoutchans; ++i)
-diff -pruN jasper-1.900.1.orig/src/libjasper/base/jas_image.c jasper-1.900.1/src/libjasper/base/jas_image.c
---- jasper-1.900.1.orig/src/libjasper/base/jas_image.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_image.c 2009-10-22 10:27:45.000000000 +0200
-@@ -142,7 +142,7 @@ jas_image_t *jas_image_create(int numcmp
- image->inmem_ = true;
-
- /* Allocate memory for the per-component information. */
-- if (!(image->cmpts_ = jas_malloc(image->maxcmpts_ *
-+ if (!(image->cmpts_ = jas_alloc2(image->maxcmpts_,
- sizeof(jas_image_cmpt_t *)))) {
- jas_image_destroy(image);
- return 0;
-@@ -774,8 +774,7 @@ static int jas_image_growcmpts(jas_image
- jas_image_cmpt_t **newcmpts;
- int cmptno;
-
-- newcmpts = (!image->cmpts_) ? jas_malloc(maxcmpts * sizeof(jas_image_cmpt_t *)) :
-- jas_realloc(image->cmpts_, maxcmpts * sizeof(jas_image_cmpt_t *));
-+ newcmpts = jas_realloc2(image->cmpts_, maxcmpts, sizeof(jas_image_cmpt_t *));
- if (!newcmpts) {
- return -1;
- }
-diff -pruN jasper-1.900.1.orig/src/libjasper/base/jas_malloc.c jasper-1.900.1/src/libjasper/base/jas_malloc.c
---- jasper-1.900.1.orig/src/libjasper/base/jas_malloc.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_malloc.c 2009-10-22 10:27:45.000000000 +0200
-@@ -76,6 +76,9 @@
-
- /* We need the prototype for memset. */
- #include <string.h>
-+#include <limits.h>
-+#include <errno.h>
-+#include <stdint.h>
-
- #include "jasper/jas_malloc.h"
-
-@@ -113,18 +116,50 @@ void jas_free(void *ptr)
-
- void *jas_realloc(void *ptr, size_t size)
- {
-- return realloc(ptr, size);
-+ return ptr ? realloc(ptr, size) : malloc(size);
- }
-
--void *jas_calloc(size_t nmemb, size_t size)
-+void *jas_realloc2(void *ptr, size_t nmemb, size_t size)
-+{
-+ if (!ptr)
-+ return jas_alloc2(nmemb, size);
-+ if (nmemb && SIZE_MAX / nmemb < size) {
-+ errno = ENOMEM;
-+ return NULL;
-+ }
-+ return jas_realloc(ptr, nmemb * size);
-+
-+}
-+
-+void *jas_alloc2(size_t nmemb, size_t size)
-+{
-+ if (nmemb && SIZE_MAX / nmemb < size) {
-+ errno = ENOMEM;
-+ return NULL;
-+ }
-+
-+ return jas_malloc(nmemb * size);
-+}
-+
-+void *jas_alloc3(size_t a, size_t b, size_t c)
- {
-- void *ptr;
- size_t n;
-- n = nmemb * size;
-- if (!(ptr = jas_malloc(n * sizeof(char)))) {
-- return 0;
-+
-+ if (a && SIZE_MAX / a < b) {
-+ errno = ENOMEM;
-+ return NULL;
- }
-- memset(ptr, 0, n);
-+
-+ return jas_alloc2(a*b, c);
-+}
-+
-+void *jas_calloc(size_t nmemb, size_t size)
-+{
-+ void *ptr;
-+
-+ ptr = jas_alloc2(nmemb, size);
-+ if (ptr)
-+ memset(ptr, 0, nmemb*size);
- return ptr;
- }
-
-diff -pruN jasper-1.900.1.orig/src/libjasper/base/jas_seq.c jasper-1.900.1/src/libjasper/base/jas_seq.c
---- jasper-1.900.1.orig/src/libjasper/base/jas_seq.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_seq.c 2009-10-22 10:27:45.000000000 +0200
-@@ -114,7 +114,7 @@ jas_matrix_t *jas_matrix_create(int numr
- matrix->datasize_ = numrows * numcols;
-
- if (matrix->maxrows_ > 0) {
-- if (!(matrix->rows_ = jas_malloc(matrix->maxrows_ *
-+ if (!(matrix->rows_ = jas_alloc2(matrix->maxrows_,
- sizeof(jas_seqent_t *)))) {
- jas_matrix_destroy(matrix);
- return 0;
-@@ -122,7 +122,7 @@ jas_matrix_t *jas_matrix_create(int numr
- }
-
- if (matrix->datasize_ > 0) {
-- if (!(matrix->data_ = jas_malloc(matrix->datasize_ *
-+ if (!(matrix->data_ = jas_alloc2(matrix->datasize_,
- sizeof(jas_seqent_t)))) {
- jas_matrix_destroy(matrix);
- return 0;
-@@ -220,7 +220,7 @@ void jas_matrix_bindsub(jas_matrix_t *ma
- mat0->numrows_ = r1 - r0 + 1;
- mat0->numcols_ = c1 - c0 + 1;
- mat0->maxrows_ = mat0->numrows_;
-- mat0->rows_ = jas_malloc(mat0->maxrows_ * sizeof(jas_seqent_t *));
-+ mat0->rows_ = jas_alloc2(mat0->maxrows_, sizeof(jas_seqent_t *));
- for (i = 0; i < mat0->numrows_; ++i) {
- mat0->rows_[i] = mat1->rows_[r0 + i] + c0;
- }
-diff -pruN jasper-1.900.1.orig/src/libjasper/base/jas_stream.c jasper-1.900.1/src/libjasper/base/jas_stream.c
---- jasper-1.900.1.orig/src/libjasper/base/jas_stream.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_stream.c 2009-10-22 10:27:45.000000000 +0200
-@@ -212,7 +212,7 @@ jas_stream_t *jas_stream_memopen(char *b
- if (buf) {
- obj->buf_ = (unsigned char *) buf;
- } else {
-- obj->buf_ = jas_malloc(obj->bufsize_ * sizeof(char));
-+ obj->buf_ = jas_malloc(obj->bufsize_);
- obj->myalloc_ = 1;
- }
- if (!obj->buf_) {
-@@ -992,7 +992,7 @@ static int mem_resize(jas_stream_memobj_
- unsigned char *buf;
-
- assert(m->buf_);
-- if (!(buf = jas_realloc(m->buf_, bufsize * sizeof(unsigned char)))) {
-+ if (!(buf = jas_realloc(m->buf_, bufsize))) {
- return -1;
- }
- m->buf_ = buf;
-diff -pruN jasper-1.900.1.orig/src/libjasper/bmp/bmp_dec.c jasper-1.900.1/src/libjasper/bmp/bmp_dec.c
---- jasper-1.900.1.orig/src/libjasper/bmp/bmp_dec.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/bmp/bmp_dec.c 2009-10-22 10:27:45.000000000 +0200
-@@ -283,7 +283,7 @@ static bmp_info_t *bmp_getinfo(jas_strea
- }
-
- if (info->numcolors > 0) {
-- if (!(info->palents = jas_malloc(info->numcolors *
-+ if (!(info->palents = jas_alloc2(info->numcolors,
- sizeof(bmp_palent_t)))) {
- bmp_info_destroy(info);
- return 0;
-diff -pruN jasper-1.900.1.orig/src/libjasper/include/jasper/jas_malloc.h jasper-1.900.1/src/libjasper/include/jasper/jas_malloc.h
---- jasper-1.900.1.orig/src/libjasper/include/jasper/jas_malloc.h 2007-01-19 22:43:04.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/include/jasper/jas_malloc.h 2009-10-22 10:27:45.000000000 +0200
-@@ -95,6 +95,9 @@ extern "C" {
- #define jas_free MEMFREE
- #define jas_realloc MEMREALLOC
- #define jas_calloc MEMCALLOC
-+#define jas_alloc2(a, b) MEMALLOC((a)*(b))
-+#define jas_alloc3(a, b, c) MEMALLOC((a)*(b)*(c))
-+#define jas_realloc2(p, a, b) MEMREALLOC((p), (a)*(b))
- #endif
-
- /******************************************************************************\
-@@ -115,6 +118,12 @@ void *jas_realloc(void *ptr, size_t size
- /* Allocate a block of memory and initialize the contents to zero. */
- void *jas_calloc(size_t nmemb, size_t size);
-
-+/* size-checked double allocation .*/
-+void *jas_alloc2(size_t, size_t);
-+
-+void *jas_alloc3(size_t, size_t, size_t);
-+
-+void *jas_realloc2(void *, size_t, size_t);
- #endif
-
- #ifdef __cplusplus
-diff -pruN jasper-1.900.1.orig/src/libjasper/jp2/jp2_cod.c jasper-1.900.1/src/libjasper/jp2/jp2_cod.c
---- jasper-1.900.1.orig/src/libjasper/jp2/jp2_cod.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_cod.c 2009-10-22 10:30:24.000000000 +0200
-@@ -247,7 +247,7 @@ jp2_box_t *jp2_box_get(jas_stream_t *in)
- box = 0;
- tmpstream = 0;
-
-- if (!(box = jas_malloc(sizeof(jp2_box_t)))) {
-+ if (!(box = jas_calloc(1, sizeof(jp2_box_t)))) {
- goto error;
- }
- box->ops = &jp2_boxinfo_unk.ops;
-@@ -372,7 +372,7 @@ static int jp2_bpcc_getdata(jp2_box_t *b
- jp2_bpcc_t *bpcc = &box->data.bpcc;
- unsigned int i;
- bpcc->numcmpts = box->datalen;
-- if (!(bpcc->bpcs = jas_malloc(bpcc->numcmpts * sizeof(uint_fast8_t)))) {
-+ if (!(bpcc->bpcs = jas_alloc2(bpcc->numcmpts, sizeof(uint_fast8_t)))) {
- return -1;
- }
- for (i = 0; i < bpcc->numcmpts; ++i) {
-@@ -416,7 +416,7 @@ static int jp2_colr_getdata(jp2_box_t *b
- break;
- case JP2_COLR_ICC:
- colr->iccplen = box->datalen - 3;
-- if (!(colr->iccp = jas_malloc(colr->iccplen * sizeof(uint_fast8_t)))) {
-+ if (!(colr->iccp = jas_alloc2(colr->iccplen, sizeof(uint_fast8_t)))) {
- return -1;
- }
- if (jas_stream_read(in, colr->iccp, colr->iccplen) != colr->iccplen) {
-@@ -453,7 +453,7 @@ static int jp2_cdef_getdata(jp2_box_t *b
- if (jp2_getuint16(in, &cdef->numchans)) {
- return -1;
- }
-- if (!(cdef->ents = jas_malloc(cdef->numchans * sizeof(jp2_cdefchan_t)))) {
-+ if (!(cdef->ents = jas_alloc2(cdef->numchans, sizeof(jp2_cdefchan_t)))) {
- return -1;
- }
- for (channo = 0; channo < cdef->numchans; ++channo) {
-@@ -766,7 +766,7 @@ static int jp2_cmap_getdata(jp2_box_t *b
- unsigned int i;
-
- cmap->numchans = (box->datalen) / 4;
-- if (!(cmap->ents = jas_malloc(cmap->numchans * sizeof(jp2_cmapent_t)))) {
-+ if (!(cmap->ents = jas_alloc2(cmap->numchans, sizeof(jp2_cmapent_t)))) {
- return -1;
- }
- for (i = 0; i < cmap->numchans; ++i) {
-@@ -828,10 +828,10 @@ static int jp2_pclr_getdata(jp2_box_t *b
- return -1;
- }
- lutsize = pclr->numlutents * pclr->numchans;
-- if (!(pclr->lutdata = jas_malloc(lutsize * sizeof(int_fast32_t)))) {
-+ if (!(pclr->lutdata = jas_alloc2(lutsize, sizeof(int_fast32_t)))) {
- return -1;
- }
-- if (!(pclr->bpc = jas_malloc(pclr->numchans * sizeof(uint_fast8_t)))) {
-+ if (!(pclr->bpc = jas_alloc2(pclr->numchans, sizeof(uint_fast8_t)))) {
- return -1;
- }
- for (i = 0; i < pclr->numchans; ++i) {
-diff -pruN jasper-1.900.1.orig/src/libjasper/jp2/jp2_dec.c jasper-1.900.1/src/libjasper/jp2/jp2_dec.c
---- jasper-1.900.1.orig/src/libjasper/jp2/jp2_dec.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_dec.c 2009-10-22 10:27:45.000000000 +0200
-@@ -336,7 +336,7 @@ jas_image_t *jp2_decode(jas_stream_t *in
- }
-
- /* Allocate space for the channel-number to component-number LUT. */
-- if (!(dec->chantocmptlut = jas_malloc(dec->numchans * sizeof(uint_fast16_t)))) {
-+ if (!(dec->chantocmptlut = jas_alloc2(dec->numchans, sizeof(uint_fast16_t)))) {
- jas_eprintf("error: no memory\n");
- goto error;
- }
-@@ -354,7 +354,7 @@ jas_image_t *jp2_decode(jas_stream_t *in
- if (cmapent->map == JP2_CMAP_DIRECT) {
- dec->chantocmptlut[channo] = channo;
- } else if (cmapent->map == JP2_CMAP_PALETTE) {
-- lutents = jas_malloc(pclrd->numlutents * sizeof(int_fast32_t));
-+ lutents = jas_alloc2(pclrd->numlutents, sizeof(int_fast32_t));
- for (i = 0; i < pclrd->numlutents; ++i) {
- lutents[i] = pclrd->lutdata[cmapent->pcol + i * pclrd->numchans];
- }
-diff -pruN jasper-1.900.1.orig/src/libjasper/jp2/jp2_enc.c jasper-1.900.1/src/libjasper/jp2/jp2_enc.c
---- jasper-1.900.1.orig/src/libjasper/jp2/jp2_enc.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_enc.c 2009-10-22 10:27:45.000000000 +0200
-@@ -191,7 +191,7 @@ int sgnd;
- }
- bpcc = &box->data.bpcc;
- bpcc->numcmpts = jas_image_numcmpts(image);
-- if (!(bpcc->bpcs = jas_malloc(bpcc->numcmpts *
-+ if (!(bpcc->bpcs = jas_alloc2(bpcc->numcmpts,
- sizeof(uint_fast8_t)))) {
- goto error;
- }
-@@ -285,7 +285,7 @@ int sgnd;
- }
- cdef = &box->data.cdef;
- cdef->numchans = jas_image_numcmpts(image);
-- cdef->ents = jas_malloc(cdef->numchans * sizeof(jp2_cdefchan_t));
-+ cdef->ents = jas_alloc2(cdef->numchans, sizeof(jp2_cdefchan_t));
- for (i = 0; i < jas_image_numcmpts(image); ++i) {
- cdefchanent = &cdef->ents[i];
- cdefchanent->channo = i;
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_cs.c jasper-1.900.1/src/libjasper/jpc/jpc_cs.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_cs.c 2009-10-22 09:58:16.000000000 +0200
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_cs.c 2009-10-22 10:27:45.000000000 +0200
-@@ -502,7 +502,7 @@ static int jpc_siz_getparms(jpc_ms_t *ms
- !siz->tileheight || !siz->numcomps) {
- return -1;
- }
-- if (!(siz->comps = jas_malloc(siz->numcomps * sizeof(jpc_sizcomp_t)))) {
-+ if (!(siz->comps = jas_alloc2(siz->numcomps, sizeof(jpc_sizcomp_t)))) {
- return -1;
- }
- for (i = 0; i < siz->numcomps; ++i) {
-@@ -986,7 +986,7 @@ static int jpc_qcx_getcompparms(jpc_qcxc
- jpc_qcx_destroycompparms(compparms);
- return -1;
- } else if (compparms->numstepsizes > 0) {
-- compparms->stepsizes = jas_malloc(compparms->numstepsizes *
-+ compparms->stepsizes = jas_alloc2(compparms->numstepsizes,
- sizeof(uint_fast16_t));
- assert(compparms->stepsizes);
- for (i = 0; i < compparms->numstepsizes; ++i) {
-@@ -1094,7 +1094,7 @@ static int jpc_ppm_getparms(jpc_ms_t *ms
-
- ppm->len = ms->len - 1;
- if (ppm->len > 0) {
-- if (!(ppm->data = jas_malloc(ppm->len * sizeof(unsigned char)))) {
-+ if (!(ppm->data = jas_malloc(ppm->len))) {
- goto error;
- }
- if (JAS_CAST(uint, jas_stream_read(in, ppm->data, ppm->len)) != ppm->len) {
-@@ -1163,7 +1163,7 @@ static int jpc_ppt_getparms(jpc_ms_t *ms
- }
- ppt->len = ms->len - 1;
- if (ppt->len > 0) {
-- if (!(ppt->data = jas_malloc(ppt->len * sizeof(unsigned char)))) {
-+ if (!(ppt->data = jas_malloc(ppt->len))) {
- goto error;
- }
- if (jas_stream_read(in, (char *) ppt->data, ppt->len) != JAS_CAST(int, ppt->len)) {
-@@ -1226,7 +1226,7 @@ static int jpc_poc_getparms(jpc_ms_t *ms
- uint_fast8_t tmp;
- poc->numpchgs = (cstate->numcomps > 256) ? (ms->len / 9) :
- (ms->len / 7);
-- if (!(poc->pchgs = jas_malloc(poc->numpchgs * sizeof(jpc_pocpchg_t)))) {
-+ if (!(poc->pchgs = jas_alloc2(poc->numpchgs, sizeof(jpc_pocpchg_t)))) {
- goto error;
- }
- for (pchgno = 0, pchg = poc->pchgs; pchgno < poc->numpchgs; ++pchgno,
-@@ -1331,7 +1331,7 @@ static int jpc_crg_getparms(jpc_ms_t *ms
- jpc_crgcomp_t *comp;
- uint_fast16_t compno;
- crg->numcomps = cstate->numcomps;
-- if (!(crg->comps = jas_malloc(cstate->numcomps * sizeof(uint_fast16_t)))) {
-+ if (!(crg->comps = jas_alloc2(cstate->numcomps, sizeof(uint_fast16_t)))) {
- return -1;
- }
- for (compno = 0, comp = crg->comps; compno < cstate->numcomps;
-@@ -1470,7 +1470,7 @@ static int jpc_unk_getparms(jpc_ms_t *ms
- cstate = 0;
-
- if (ms->len > 0) {
-- if (!(unk->data = jas_malloc(ms->len * sizeof(unsigned char)))) {
-+ if (!(unk->data = jas_malloc(ms->len))) {
- return -1;
- }
- if (jas_stream_read(in, (char *) unk->data, ms->len) != JAS_CAST(int, ms->len)) {
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_dec.c jasper-1.900.1/src/libjasper/jpc/jpc_dec.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_dec.c 2009-10-22 09:58:16.000000000 +0200
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_dec.c 2009-10-22 10:30:50.000000000 +0200
-@@ -449,7 +449,7 @@ static int jpc_dec_process_sot(jpc_dec_t
-
- if (dec->state == JPC_MH) {
-
-- compinfos = jas_malloc(dec->numcomps * sizeof(jas_image_cmptparm_t));
-+ compinfos = jas_alloc2(dec->numcomps, sizeof(jas_image_cmptparm_t));
- assert(compinfos);
- for (cmptno = 0, cmpt = dec->cmpts, compinfo = compinfos;
- cmptno < dec->numcomps; ++cmptno, ++cmpt, ++compinfo) {
-@@ -692,7 +692,7 @@ static int jpc_dec_tileinit(jpc_dec_t *d
- tile->realmode = 1;
- }
- tcomp->numrlvls = ccp->numrlvls;
-- if (!(tcomp->rlvls = jas_malloc(tcomp->numrlvls *
-+ if (!(tcomp->rlvls = jas_alloc2(tcomp->numrlvls,
- sizeof(jpc_dec_rlvl_t)))) {
- return -1;
- }
-@@ -764,7 +764,7 @@ rlvl->bands = 0;
- rlvl->cbgheightexpn);
-
- rlvl->numbands = (!rlvlno) ? 1 : 3;
-- if (!(rlvl->bands = jas_malloc(rlvl->numbands *
-+ if (!(rlvl->bands = jas_alloc2(rlvl->numbands,
- sizeof(jpc_dec_band_t)))) {
- return -1;
- }
-@@ -797,7 +797,7 @@ rlvl->bands = 0;
-
- assert(rlvl->numprcs);
-
-- if (!(band->prcs = jas_malloc(rlvl->numprcs * sizeof(jpc_dec_prc_t)))) {
-+ if (!(band->prcs = jas_alloc2(rlvl->numprcs, sizeof(jpc_dec_prc_t)))) {
- return -1;
- }
-
-@@ -834,7 +834,7 @@ rlvl->bands = 0;
- if (!(prc->numimsbstagtree = jpc_tagtree_create(prc->numhcblks, prc->numvcblks))) {
- return -1;
- }
-- if (!(prc->cblks = jas_malloc(prc->numcblks * sizeof(jpc_dec_cblk_t)))) {
-+ if (!(prc->cblks = jas_alloc2(prc->numcblks, sizeof(jpc_dec_cblk_t)))) {
- return -1;
- }
-
-@@ -1181,7 +1181,7 @@ static int jpc_dec_process_siz(jpc_dec_t
- return -1;
- }
-
-- if (!(dec->cmpts = jas_malloc(dec->numcomps * sizeof(jpc_dec_cmpt_t)))) {
-+ if (!(dec->cmpts = jas_alloc2(dec->numcomps, sizeof(jpc_dec_cmpt_t)))) {
- return -1;
- }
-
-@@ -1204,7 +1204,7 @@ static int jpc_dec_process_siz(jpc_dec_t
- dec->numhtiles = JPC_CEILDIV(dec->xend - dec->tilexoff, dec->tilewidth);
- dec->numvtiles = JPC_CEILDIV(dec->yend - dec->tileyoff, dec->tileheight);
- dec->numtiles = dec->numhtiles * dec->numvtiles;
-- if (!(dec->tiles = jas_malloc(dec->numtiles * sizeof(jpc_dec_tile_t)))) {
-+ if (!(dec->tiles = jas_calloc(dec->numtiles, sizeof(jpc_dec_tile_t)))) {
- return -1;
- }
-
-@@ -1228,7 +1228,7 @@ static int jpc_dec_process_siz(jpc_dec_t
- tile->pkthdrstreampos = 0;
- tile->pptstab = 0;
- tile->cp = 0;
-- if (!(tile->tcomps = jas_malloc(dec->numcomps *
-+ if (!(tile->tcomps = jas_calloc(dec->numcomps,
- sizeof(jpc_dec_tcomp_t)))) {
- return -1;
- }
-@@ -1489,7 +1489,7 @@ static jpc_dec_cp_t *jpc_dec_cp_create(u
- cp->numlyrs = 0;
- cp->mctid = 0;
- cp->csty = 0;
-- if (!(cp->ccps = jas_malloc(cp->numcomps * sizeof(jpc_dec_ccp_t)))) {
-+ if (!(cp->ccps = jas_alloc2(cp->numcomps, sizeof(jpc_dec_ccp_t)))) {
- return 0;
- }
- if (!(cp->pchglist = jpc_pchglist_create())) {
-@@ -2048,7 +2048,7 @@ jpc_streamlist_t *jpc_streamlist_create(
- }
- streamlist->numstreams = 0;
- streamlist->maxstreams = 100;
-- if (!(streamlist->streams = jas_malloc(streamlist->maxstreams *
-+ if (!(streamlist->streams = jas_alloc2(streamlist->maxstreams,
- sizeof(jas_stream_t *)))) {
- jas_free(streamlist);
- return 0;
-@@ -2068,8 +2068,8 @@ int jpc_streamlist_insert(jpc_streamlist
- /* Grow the array of streams if necessary. */
- if (streamlist->numstreams >= streamlist->maxstreams) {
- newmaxstreams = streamlist->maxstreams + 1024;
-- if (!(newstreams = jas_realloc(streamlist->streams,
-- (newmaxstreams + 1024) * sizeof(jas_stream_t *)))) {
-+ if (!(newstreams = jas_realloc2(streamlist->streams,
-+ (newmaxstreams + 1024), sizeof(jas_stream_t *)))) {
- return -1;
- }
- for (i = streamlist->numstreams; i < streamlist->maxstreams; ++i) {
-@@ -2155,8 +2155,7 @@ int jpc_ppxstab_grow(jpc_ppxstab_t *tab,
- {
- jpc_ppxstabent_t **newents;
- if (tab->maxents < maxents) {
-- newents = (tab->ents) ? jas_realloc(tab->ents, maxents *
-- sizeof(jpc_ppxstabent_t *)) : jas_malloc(maxents * sizeof(jpc_ppxstabent_t *));
-+ newents = jas_realloc2(tab->ents, maxents, sizeof(jpc_ppxstabent_t *));
- if (!newents) {
- return -1;
- }
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_enc.c jasper-1.900.1/src/libjasper/jpc/jpc_enc.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_enc.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_enc.c 2009-10-22 10:27:45.000000000 +0200
-@@ -403,7 +403,7 @@ static jpc_enc_cp_t *cp_create(char *opt
- vsteplcm *= jas_image_cmptvstep(image, cmptno);
- }
-
-- if (!(cp->ccps = jas_malloc(cp->numcmpts * sizeof(jpc_enc_ccp_t)))) {
-+ if (!(cp->ccps = jas_alloc2(cp->numcmpts, sizeof(jpc_enc_ccp_t)))) {
- goto error;
- }
- for (cmptno = 0, ccp = cp->ccps; cmptno < JAS_CAST(int, cp->numcmpts); ++cmptno,
-@@ -656,7 +656,7 @@ static jpc_enc_cp_t *cp_create(char *opt
-
- if (ilyrrates && numilyrrates > 0) {
- tcp->numlyrs = numilyrrates + 1;
-- if (!(tcp->ilyrrates = jas_malloc((tcp->numlyrs - 1) *
-+ if (!(tcp->ilyrrates = jas_alloc2((tcp->numlyrs - 1),
- sizeof(jpc_fix_t)))) {
- goto error;
- }
-@@ -940,7 +940,7 @@ startoff = jas_stream_getrwcount(enc->ou
- siz->tilewidth = cp->tilewidth;
- siz->tileheight = cp->tileheight;
- siz->numcomps = cp->numcmpts;
-- siz->comps = jas_malloc(siz->numcomps * sizeof(jpc_sizcomp_t));
-+ siz->comps = jas_alloc2(siz->numcomps, sizeof(jpc_sizcomp_t));
- assert(siz->comps);
- for (i = 0; i < JAS_CAST(int, cp->numcmpts); ++i) {
- siz->comps[i].prec = cp->ccps[i].prec;
-@@ -977,7 +977,7 @@ startoff = jas_stream_getrwcount(enc->ou
- return -1;
- }
- crg = &enc->mrk->parms.crg;
-- crg->comps = jas_malloc(crg->numcomps * sizeof(jpc_crgcomp_t));
-+ crg->comps = jas_alloc2(crg->numcomps, sizeof(jpc_crgcomp_t));
- if (jpc_putms(enc->out, enc->cstate, enc->mrk)) {
- jas_eprintf("cannot write CRG marker\n");
- return -1;
-@@ -1955,7 +1955,7 @@ jpc_enc_tile_t *jpc_enc_tile_create(jpc_
- tile->mctid = cp->tcp.mctid;
-
- tile->numlyrs = cp->tcp.numlyrs;
-- if (!(tile->lyrsizes = jas_malloc(tile->numlyrs *
-+ if (!(tile->lyrsizes = jas_alloc2(tile->numlyrs,
- sizeof(uint_fast32_t)))) {
- goto error;
- }
-@@ -1964,7 +1964,7 @@ jpc_enc_tile_t *jpc_enc_tile_create(jpc_
- }
-
- /* Allocate an array for the per-tile-component information. */
-- if (!(tile->tcmpts = jas_malloc(cp->numcmpts * sizeof(jpc_enc_tcmpt_t)))) {
-+ if (!(tile->tcmpts = jas_alloc2(cp->numcmpts, sizeof(jpc_enc_tcmpt_t)))) {
- goto error;
- }
- /* Initialize a few members critical for error recovery. */
-@@ -2110,7 +2110,7 @@ static jpc_enc_tcmpt_t *tcmpt_create(jpc
- jas_seq2d_ystart(tcmpt->data), jas_seq2d_xend(tcmpt->data),
- jas_seq2d_yend(tcmpt->data), bandinfos);
-
-- if (!(tcmpt->rlvls = jas_malloc(tcmpt->numrlvls * sizeof(jpc_enc_rlvl_t)))) {
-+ if (!(tcmpt->rlvls = jas_alloc2(tcmpt->numrlvls, sizeof(jpc_enc_rlvl_t)))) {
- goto error;
- }
- for (rlvlno = 0, rlvl = tcmpt->rlvls; rlvlno < tcmpt->numrlvls;
-@@ -2213,7 +2213,7 @@ static jpc_enc_rlvl_t *rlvl_create(jpc_e
- rlvl->numvprcs = JPC_FLOORDIVPOW2(brprcbry - tlprctly, rlvl->prcheightexpn);
- rlvl->numprcs = rlvl->numhprcs * rlvl->numvprcs;
-
-- if (!(rlvl->bands = jas_malloc(rlvl->numbands * sizeof(jpc_enc_band_t)))) {
-+ if (!(rlvl->bands = jas_alloc2(rlvl->numbands, sizeof(jpc_enc_band_t)))) {
- goto error;
- }
- for (bandno = 0, band = rlvl->bands; bandno < rlvl->numbands;
-@@ -2290,7 +2290,7 @@ if (bandinfo->xstart != bandinfo->xend &
- band->synweight = bandinfo->synenergywt;
-
- if (band->data) {
-- if (!(band->prcs = jas_malloc(rlvl->numprcs * sizeof(jpc_enc_prc_t)))) {
-+ if (!(band->prcs = jas_alloc2(rlvl->numprcs, sizeof(jpc_enc_prc_t)))) {
- goto error;
- }
- for (prcno = 0, prc = band->prcs; prcno < rlvl->numprcs; ++prcno,
-@@ -2422,7 +2422,7 @@ if (!rlvlno) {
- goto error;
- }
-
-- if (!(prc->cblks = jas_malloc(prc->numcblks * sizeof(jpc_enc_cblk_t)))) {
-+ if (!(prc->cblks = jas_alloc2(prc->numcblks, sizeof(jpc_enc_cblk_t)))) {
- goto error;
- }
- for (cblkno = 0, cblk = prc->cblks; cblkno < prc->numcblks;
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_mqdec.c jasper-1.900.1/src/libjasper/jpc/jpc_mqdec.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_mqdec.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_mqdec.c 2009-10-22 10:27:45.000000000 +0200
-@@ -118,7 +118,7 @@ jpc_mqdec_t *jpc_mqdec_create(int maxctx
- mqdec->in = in;
- mqdec->maxctxs = maxctxs;
- /* Allocate memory for the per-context state information. */
-- if (!(mqdec->ctxs = jas_malloc(mqdec->maxctxs * sizeof(jpc_mqstate_t *)))) {
-+ if (!(mqdec->ctxs = jas_alloc2(mqdec->maxctxs, sizeof(jpc_mqstate_t *)))) {
- goto error;
- }
- /* Set the current context to the first context. */
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_mqenc.c jasper-1.900.1/src/libjasper/jpc/jpc_mqenc.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_mqenc.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_mqenc.c 2009-10-22 10:27:45.000000000 +0200
-@@ -197,7 +197,7 @@ jpc_mqenc_t *jpc_mqenc_create(int maxctx
- mqenc->maxctxs = maxctxs;
-
- /* Allocate memory for the per-context state information. */
-- if (!(mqenc->ctxs = jas_malloc(mqenc->maxctxs * sizeof(jpc_mqstate_t *)))) {
-+ if (!(mqenc->ctxs = jas_alloc2(mqenc->maxctxs, sizeof(jpc_mqstate_t *)))) {
- goto error;
- }
-
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_qmfb.c jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_qmfb.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c 2009-10-22 10:27:45.000000000 +0200
-@@ -321,7 +321,7 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in
- #if !defined(HAVE_VLA)
- /* Get a buffer. */
- if (bufsize > QMFB_SPLITBUFSIZE) {
-- if (!(buf = jas_malloc(bufsize * sizeof(jpc_fix_t)))) {
-+ if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
- /* We have no choice but to commit suicide in this case. */
- abort();
- }
-@@ -389,7 +389,7 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
- #if !defined(HAVE_VLA)
- /* Get a buffer. */
- if (bufsize > QMFB_SPLITBUFSIZE) {
-- if (!(buf = jas_malloc(bufsize * sizeof(jpc_fix_t)))) {
-+ if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
- /* We have no choice but to commit suicide in this case. */
- abort();
- }
-@@ -460,7 +460,7 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
- #if !defined(HAVE_VLA)
- /* Get a buffer. */
- if (bufsize > QMFB_SPLITBUFSIZE) {
-- if (!(buf = jas_malloc(bufsize * sizeof(jpc_fix_t)))) {
-+ if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
- /* We have no choice but to commit suicide in this case. */
- abort();
- }
-@@ -549,7 +549,7 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
- #if !defined(HAVE_VLA)
- /* Get a buffer. */
- if (bufsize > QMFB_SPLITBUFSIZE) {
-- if (!(buf = jas_malloc(bufsize * sizeof(jpc_fix_t)))) {
-+ if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
- /* We have no choice but to commit suicide in this case. */
- abort();
- }
-@@ -633,7 +633,7 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int
- #if !defined(HAVE_VLA)
- /* Allocate memory for the join buffer from the heap. */
- if (bufsize > QMFB_JOINBUFSIZE) {
-- if (!(buf = jas_malloc(bufsize * sizeof(jpc_fix_t)))) {
-+ if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
- /* We have no choice but to commit suicide. */
- abort();
- }
-@@ -698,7 +698,7 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int
- #if !defined(HAVE_VLA)
- /* Allocate memory for the join buffer from the heap. */
- if (bufsize > QMFB_JOINBUFSIZE) {
-- if (!(buf = jas_malloc(bufsize * sizeof(jpc_fix_t)))) {
-+ if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
- /* We have no choice but to commit suicide. */
- abort();
- }
-@@ -766,7 +766,7 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
- #if !defined(HAVE_VLA)
- /* Allocate memory for the join buffer from the heap. */
- if (bufsize > QMFB_JOINBUFSIZE) {
-- if (!(buf = jas_malloc(bufsize * JPC_QMFB_COLGRPSIZE * sizeof(jpc_fix_t)))) {
-+ if (!(buf = jas_alloc2(bufsize, JPC_QMFB_COLGRPSIZE * sizeof(jpc_fix_t)))) {
- /* We have no choice but to commit suicide. */
- abort();
- }
-@@ -852,7 +852,7 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
- #if !defined(HAVE_VLA)
- /* Allocate memory for the join buffer from the heap. */
- if (bufsize > QMFB_JOINBUFSIZE) {
-- if (!(buf = jas_malloc(bufsize * numcols * sizeof(jpc_fix_t)))) {
-+ if (!(buf = jas_alloc3(bufsize, numcols, sizeof(jpc_fix_t)))) {
- /* We have no choice but to commit suicide. */
- abort();
- }
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_t1enc.c jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_t1enc.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c 2009-10-22 10:27:45.000000000 +0200
-@@ -219,7 +219,7 @@ int jpc_enc_enccblk(jpc_enc_t *enc, jas_
-
- cblk->numpasses = (cblk->numbps > 0) ? (3 * cblk->numbps - 2) : 0;
- if (cblk->numpasses > 0) {
-- cblk->passes = jas_malloc(cblk->numpasses * sizeof(jpc_enc_pass_t));
-+ cblk->passes = jas_alloc2(cblk->numpasses, sizeof(jpc_enc_pass_t));
- assert(cblk->passes);
- } else {
- cblk->passes = 0;
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_t2cod.c jasper-1.900.1/src/libjasper/jpc/jpc_t2cod.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_t2cod.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_t2cod.c 2009-10-22 10:27:45.000000000 +0200
-@@ -573,7 +573,7 @@ int jpc_pchglist_insert(jpc_pchglist_t *
- }
- if (pchglist->numpchgs >= pchglist->maxpchgs) {
- newmaxpchgs = pchglist->maxpchgs + 128;
-- if (!(newpchgs = jas_realloc(pchglist->pchgs, newmaxpchgs * sizeof(jpc_pchg_t *)))) {
-+ if (!(newpchgs = jas_realloc2(pchglist->pchgs, newmaxpchgs, sizeof(jpc_pchg_t *)))) {
- return -1;
- }
- pchglist->maxpchgs = newmaxpchgs;
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_t2dec.c jasper-1.900.1/src/libjasper/jpc/jpc_t2dec.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_t2dec.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_t2dec.c 2009-10-22 10:27:45.000000000 +0200
-@@ -478,7 +478,7 @@ jpc_pi_t *jpc_dec_pi_create(jpc_dec_t *d
- return 0;
- }
- pi->numcomps = dec->numcomps;
-- if (!(pi->picomps = jas_malloc(pi->numcomps * sizeof(jpc_picomp_t)))) {
-+ if (!(pi->picomps = jas_alloc2(pi->numcomps, sizeof(jpc_picomp_t)))) {
- jpc_pi_destroy(pi);
- return 0;
- }
-@@ -490,7 +490,7 @@ jpc_pi_t *jpc_dec_pi_create(jpc_dec_t *d
- for (compno = 0, tcomp = tile->tcomps, picomp = pi->picomps;
- compno < pi->numcomps; ++compno, ++tcomp, ++picomp) {
- picomp->numrlvls = tcomp->numrlvls;
-- if (!(picomp->pirlvls = jas_malloc(picomp->numrlvls *
-+ if (!(picomp->pirlvls = jas_alloc2(picomp->numrlvls,
- sizeof(jpc_pirlvl_t)))) {
- jpc_pi_destroy(pi);
- return 0;
-@@ -503,7 +503,7 @@ jpc_pi_t *jpc_dec_pi_create(jpc_dec_t *d
- rlvlno < picomp->numrlvls; ++rlvlno, ++pirlvl, ++rlvl) {
- /* XXX sizeof(long) should be sizeof different type */
- pirlvl->numprcs = rlvl->numprcs;
-- if (!(pirlvl->prclyrnos = jas_malloc(pirlvl->numprcs *
-+ if (!(pirlvl->prclyrnos = jas_alloc2(pirlvl->numprcs,
- sizeof(long)))) {
- jpc_pi_destroy(pi);
- return 0;
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_t2enc.c jasper-1.900.1/src/libjasper/jpc/jpc_t2enc.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_t2enc.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_t2enc.c 2009-10-22 10:27:45.000000000 +0200
-@@ -565,7 +565,7 @@ jpc_pi_t *jpc_enc_pi_create(jpc_enc_cp_t
- }
- pi->pktno = -1;
- pi->numcomps = cp->numcmpts;
-- if (!(pi->picomps = jas_malloc(pi->numcomps * sizeof(jpc_picomp_t)))) {
-+ if (!(pi->picomps = jas_alloc2(pi->numcomps, sizeof(jpc_picomp_t)))) {
- jpc_pi_destroy(pi);
- return 0;
- }
-@@ -577,7 +577,7 @@ jpc_pi_t *jpc_enc_pi_create(jpc_enc_cp_t
- for (compno = 0, tcomp = tile->tcmpts, picomp = pi->picomps;
- compno < pi->numcomps; ++compno, ++tcomp, ++picomp) {
- picomp->numrlvls = tcomp->numrlvls;
-- if (!(picomp->pirlvls = jas_malloc(picomp->numrlvls *
-+ if (!(picomp->pirlvls = jas_alloc2(picomp->numrlvls,
- sizeof(jpc_pirlvl_t)))) {
- jpc_pi_destroy(pi);
- return 0;
-@@ -591,7 +591,7 @@ jpc_pi_t *jpc_enc_pi_create(jpc_enc_cp_t
- /* XXX sizeof(long) should be sizeof different type */
- pirlvl->numprcs = rlvl->numprcs;
- if (rlvl->numprcs) {
-- if (!(pirlvl->prclyrnos = jas_malloc(pirlvl->numprcs *
-+ if (!(pirlvl->prclyrnos = jas_alloc2(pirlvl->numprcs,
- sizeof(long)))) {
- jpc_pi_destroy(pi);
- return 0;
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_tagtree.c jasper-1.900.1/src/libjasper/jpc/jpc_tagtree.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_tagtree.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_tagtree.c 2009-10-22 10:27:45.000000000 +0200
-@@ -125,7 +125,7 @@ jpc_tagtree_t *jpc_tagtree_create(int nu
- ++numlvls;
- } while (n > 1);
-
-- if (!(tree->nodes_ = jas_malloc(tree->numnodes_ * sizeof(jpc_tagtreenode_t)))) {
-+ if (!(tree->nodes_ = jas_alloc2(tree->numnodes_, sizeof(jpc_tagtreenode_t)))) {
- return 0;
- }
-
-diff -pruN jasper-1.900.1.orig/src/libjasper/jpc/jpc_util.c jasper-1.900.1/src/libjasper/jpc/jpc_util.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_util.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_util.c 2009-10-22 10:27:45.000000000 +0200
-@@ -109,7 +109,7 @@ int jpc_atoaf(char *s, int *numvalues, d
- }
-
- if (n) {
-- if (!(vs = jas_malloc(n * sizeof(double)))) {
-+ if (!(vs = jas_alloc2(n, sizeof(double)))) {
- return -1;
- }
-
-diff -pruN jasper-1.900.1.orig/src/libjasper/mif/mif_cod.c jasper-1.900.1/src/libjasper/mif/mif_cod.c
---- jasper-1.900.1.orig/src/libjasper/mif/mif_cod.c 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/mif/mif_cod.c 2009-10-22 10:27:45.000000000 +0200
-@@ -438,8 +438,7 @@ static int mif_hdr_growcmpts(mif_hdr_t *
- int cmptno;
- mif_cmpt_t **newcmpts;
- assert(maxcmpts >= hdr->numcmpts);
-- newcmpts = (!hdr->cmpts) ? jas_malloc(maxcmpts * sizeof(mif_cmpt_t *)) :
-- jas_realloc(hdr->cmpts, maxcmpts * sizeof(mif_cmpt_t *));
-+ newcmpts = jas_realloc2(hdr->cmpts, maxcmpts, sizeof(mif_cmpt_t *));
- if (!newcmpts) {
- return -1;
- }
diff --git a/source/l/jasper/patches/jasper-1.900.1-CVE-2008-3522.patch b/source/l/jasper/patches/jasper-1.900.1-CVE-2008-3522.patch
deleted file mode 100644
index 4bf2e9b52..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-CVE-2008-3522.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2008-3522
-
-diff -pruN jasper-1.900.1.orig/src/libjasper/base/jas_stream.c jasper-1.900.1/src/libjasper/base/jas_stream.c
---- jasper-1.900.1.orig/src/libjasper/base/jas_stream.c 2009-10-22 10:27:45.000000000 +0200
-+++ jasper-1.900.1/src/libjasper/base/jas_stream.c 2009-10-22 10:35:53.000000000 +0200
-@@ -553,7 +553,7 @@ int jas_stream_printf(jas_stream_t *stre
- int ret;
-
- va_start(ap, fmt);
-- ret = vsprintf(buf, fmt, ap);
-+ ret = vsnprintf(buf, sizeof buf, fmt, ap);
- jas_stream_puts(stream, buf);
- va_end(ap);
- return ret;
diff --git a/source/l/jasper/patches/jasper-1.900.1-CVE-2011-4516-CVE-2011-4517-CERT-VU-887409.patch b/source/l/jasper/patches/jasper-1.900.1-CVE-2011-4516-CVE-2011-4517-CERT-VU-887409.patch
deleted file mode 100644
index f753080a3..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-CVE-2011-4516-CVE-2011-4517-CERT-VU-887409.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_cs.c.CERT-VU-887409 jasper-1.900.1/src/libjasper/jpc/jpc_cs.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_cs.c.CERT-VU-887409 2011-10-25 17:25:39.000000000 +0200
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_cs.c 2011-10-25 17:29:14.379371908 +0200
-@@ -744,6 +744,10 @@ static int jpc_cox_getcompparms(jpc_ms_t
- return -1;
- }
- compparms->numrlvls = compparms->numdlvls + 1;
-+ if (compparms->numrlvls > JPC_MAXRLVLS) {
-+ jpc_cox_destroycompparms(compparms);
-+ return -1;
-+ }
- if (prtflag) {
- for (i = 0; i < compparms->numrlvls; ++i) {
- if (jpc_getuint8(in, &tmp)) {
-@@ -1331,7 +1335,7 @@ static int jpc_crg_getparms(jpc_ms_t *ms
- jpc_crgcomp_t *comp;
- uint_fast16_t compno;
- crg->numcomps = cstate->numcomps;
-- if (!(crg->comps = jas_alloc2(cstate->numcomps, sizeof(uint_fast16_t)))) {
-+ if (!(crg->comps = jas_alloc2(cstate->numcomps, sizeof(jpc_crgcomp_t)))) {
- return -1;
- }
- for (compno = 0, comp = crg->comps; compno < cstate->numcomps;
diff --git a/source/l/jasper/patches/jasper-1.900.1-Coverity-BAD_SIZEOF.patch b/source/l/jasper/patches/jasper-1.900.1-Coverity-BAD_SIZEOF.patch
deleted file mode 100644
index 197740057..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-Coverity-BAD_SIZEOF.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Error: BAD_SIZEOF
-jpc/jpc_enc.c:2105: bad_sizeof: Taking the size of binary expression "tcmpt->numstepsizes * sizeof (uint_fast16_t) /*8*/" is suspicious.
- Did you intend "sizeof(tcmpt->numstepsizes) * sizeof (uint_fast16_t) /*8*/"?
-
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_enc.c.bad_sizeof jasper-1.900.1/src/libjasper/jpc/jpc_enc.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_enc.c.bad_sizeof 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_enc.c 2011-06-23 17:28:17.085690561 +0200
-@@ -2102,8 +2102,7 @@ static jpc_enc_tcmpt_t *tcmpt_create(jpc
-
- tcmpt->numstepsizes = tcmpt->numbands;
- assert(tcmpt->numstepsizes <= JPC_MAXBANDS);
-- memset(tcmpt->stepsizes, 0, sizeof(tcmpt->numstepsizes *
-- sizeof(uint_fast16_t)));
-+ memset(tcmpt->stepsizes, 0, tcmpt->numstepsizes * sizeof(uint_fast16_t));
-
- /* Retrieve information about the various bands. */
- jpc_tsfb_getbands(tcmpt->tsfb, jas_seq2d_xstart(tcmpt->data),
diff --git a/source/l/jasper/patches/jasper-1.900.1-Coverity-CHECKED_RETURN.patch b/source/l/jasper/patches/jasper-1.900.1-Coverity-CHECKED_RETURN.patch
deleted file mode 100644
index ea330f2c1..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-Coverity-CHECKED_RETURN.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-Error: CHECKED_RETURN
-jpc/jpc_cs.c:924: check_return: Calling function "jpc_putuint16" without checking return value (as is done elsewhere 11 out of 13 times).
-jpc/jpc_cs.c:924: unchecked_value: No check of the return value of "jpc_putuint16(out, qcc->compno)".
-
-jpc/jpc_cs.c:1021: check_return: Calling function "jpc_putuint16" without checking return value (as is done elsewhere 11 out of 13 times).
-jpc/jpc_cs.c:1021: unchecked_value: No check of the return value of "jpc_putuint16(out, compparms->stepsizes[i])".
-
-jpc/jpc_cs.c:994: check_return: Calling function "jpc_getuint16" without checking return value (as is done elsewhere 14 out of 16 times).
-jpc/jpc_cs.c:994: unchecked_value: No check of the return value of "jpc_getuint16(in, compparms->stepsizes + i)".
-
-jpc/jpc_cs.c:905: check_return: Calling function "jpc_getuint16" without checking return value (as is done elsewhere 14 out of 16 times).
-jpc/jpc_cs.c:905: unchecked_value: No check of the return value of "jpc_getuint16(in, &qcc->compno)".
-
-jpc/jpc_cs.c:969: check_return: Calling function "jpc_getuint8" without checking return value (as is done elsewhere 17 out of 20 times).
-jpc/jpc_cs.c:969: unchecked_value: No check of the return value of "jpc_getuint8(in, &tmp)".
-
-jpc/jpc_cs.c:991: check_return: Calling function "jpc_getuint8" without checking return value (as is done elsewhere 17 out of 20 times).
-jpc/jpc_cs.c:991: unchecked_value: No check of the return value of "jpc_getuint8(in, &tmp)".
-
-jpc/jpc_cs.c:901: check_return: Calling function "jpc_getuint8" without checking return value (as is done elsewhere 17 out of 20 times).
-jpc/jpc_cs.c:901: unchecked_value: No check of the return value of "jpc_getuint8(in, &tmp)".
-
-jpc/jpc_t2enc.c:338: check_return: Calling function "jpc_putms" without checking return value (as is done elsewhere 12 out of 13 times).
-jpc/jpc_t2enc.c:338: unchecked_value: No check of the return value of "jpc_putms(out, enc->cstate, ms)".
-
-ras/ras_enc.c:245: check_return: Calling function "jas_image_readcmpt" without checking return value (as is done elsewhere 9 out of 10 times).
-ras/ras_enc.c:245: unchecked_value: No check of the return value of "jas_image_readcmpt(image, cmpts[i], 0L, y, image->brx_ - image->tlx_, 1L, data[i])".
-
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_cs.c.checked_return jasper-1.900.1/src/libjasper/jpc/jpc_cs.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_cs.c.checked_return 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_cs.c 2011-06-24 13:52:25.636551844 +0200
-@@ -898,11 +898,15 @@ static int jpc_qcc_getparms(jpc_ms_t *ms
- int len;
- len = ms->len;
- if (cstate->numcomps <= 256) {
-- jpc_getuint8(in, &tmp);
-+ if (jpc_getuint8(in, &tmp)) {
-+ return -1;
-+ }
- qcc->compno = tmp;
- --len;
- } else {
-- jpc_getuint16(in, &qcc->compno);
-+ if (jpc_getuint16(in, &qcc->compno)) {
-+ return -1;
-+ }
- len -= 2;
- }
- if (jpc_qcx_getcompparms(&qcc->compparms, cstate, in, len)) {
-@@ -919,9 +923,13 @@ static int jpc_qcc_putparms(jpc_ms_t *ms
- {
- jpc_qcc_t *qcc = &ms->parms.qcc;
- if (cstate->numcomps <= 256) {
-- jpc_putuint8(out, qcc->compno);
-+ if (jpc_putuint8(out, qcc->compno)) {
-+ return -1;
-+ }
- } else {
-- jpc_putuint16(out, qcc->compno);
-+ if (jpc_putuint16(out, qcc->compno)) {
-+ return -1;
-+ }
- }
- if (jpc_qcx_putcompparms(&qcc->compparms, cstate, out)) {
- return -1;
-@@ -966,7 +974,9 @@ static int jpc_qcx_getcompparms(jpc_qcxc
- cstate = 0;
-
- n = 0;
-- jpc_getuint8(in, &tmp);
-+ if (jpc_getuint8(in, &tmp)) {
-+ return -1;
-+ }
- ++n;
- compparms->qntsty = tmp & 0x1f;
- compparms->numguard = (tmp >> 5) & 7;
-@@ -988,10 +998,14 @@ static int jpc_qcx_getcompparms(jpc_qcxc
- assert(compparms->stepsizes);
- for (i = 0; i < compparms->numstepsizes; ++i) {
- if (compparms->qntsty == JPC_QCX_NOQNT) {
-- jpc_getuint8(in, &tmp);
-+ if (jpc_getuint8(in, &tmp)) {
-+ return -1;
-+ }
- compparms->stepsizes[i] = JPC_QCX_EXPN(tmp >> 3);
- } else {
-- jpc_getuint16(in, &compparms->stepsizes[i]);
-+ if (jpc_getuint16(in, &compparms->stepsizes[i])) {
-+ return -1;
-+ }
- }
- }
- } else {
-@@ -1015,10 +1029,14 @@ static int jpc_qcx_putcompparms(jpc_qcxc
- jpc_putuint8(out, ((compparms->numguard & 7) << 5) | compparms->qntsty);
- for (i = 0; i < compparms->numstepsizes; ++i) {
- if (compparms->qntsty == JPC_QCX_NOQNT) {
-- jpc_putuint8(out, JPC_QCX_GETEXPN(
-- compparms->stepsizes[i]) << 3);
-+ if (jpc_putuint8(out, JPC_QCX_GETEXPN(
-+ compparms->stepsizes[i]) << 3)) {
-+ return -1;
-+ }
- } else {
-- jpc_putuint16(out, compparms->stepsizes[i]);
-+ if (jpc_putuint16(out, compparms->stepsizes[i])) {
-+ return -1;
-+ }
- }
- }
- return 0;
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_t2enc.c.checked_return jasper-1.900.1/src/libjasper/jpc/jpc_t2enc.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_t2enc.c.checked_return 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_t2enc.c 2011-06-24 12:29:32.069578992 +0200
-@@ -335,7 +335,9 @@ assert(jpc_firstone(datalen) < cblk->num
- if (!(ms = jpc_ms_create(JPC_MS_EPH))) {
- return -1;
- }
-- jpc_putms(out, enc->cstate, ms);
-+ if (jpc_putms(out, enc->cstate, ms)) {
-+ return -1;
-+ }
- jpc_ms_destroy(ms);
- }
-
-diff -up jasper-1.900.1/src/libjasper/ras/ras_enc.c.checked_return jasper-1.900.1/src/libjasper/ras/ras_enc.c
---- jasper-1.900.1/src/libjasper/ras/ras_enc.c.checked_return 2007-01-19 22:43:04.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/ras/ras_enc.c 2011-06-24 14:05:31.233482612 +0200
-@@ -242,8 +242,10 @@ static int ras_putdatastd(jas_stream_t *
-
- for (y = 0; y < hdr->height; y++) {
- for (i = 0; i < numcmpts; ++i) {
-- jas_image_readcmpt(image, cmpts[i], 0, y, jas_image_width(image),
-- 1, data[i]);
-+ if (jas_image_readcmpt(image, cmpts[i], 0, y,
-+ jas_image_width(image), 1, data[i])) {
-+ return -1;
-+ }
- }
- z = 0;
- nz = 0;
diff --git a/source/l/jasper/patches/jasper-1.900.1-Coverity-FORWARD_NULL.patch b/source/l/jasper/patches/jasper-1.900.1-Coverity-FORWARD_NULL.patch
deleted file mode 100644
index ff526b4d1..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-Coverity-FORWARD_NULL.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-Error: FORWARD_NULL
-jpc/jpc_dec.c:2207: var_compare_op: Comparing "streams" to null implies that "streams" might be null.
-jpc/jpc_dec.c:2270: var_deref_model: Passing null variable "streams" to function "jpc_streamlist_destroy", which dereferences it.
-jpc/jpc_dec.c:2108: deref_parm: Directly dereferencing parameter "streamlist".
-
-jpc/jpc_t1enc.c:225: assign_zero: Assigning: "cblk->passes" = 0.
-jpc/jpc_t1enc.c:228: alias_transfer: Assigning null: "pass" = "cblk->passes".
-jpc/jpc_t1enc.c:229: var_deref_op: Dereferencing null variable "pass".
-
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.forward_null jasper-1.900.1/src/libjasper/jpc/jpc_dec.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.forward_null 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_dec.c 2011-06-24 15:01:39.200600146 +0200
-@@ -2267,7 +2267,9 @@ jpc_streamlist_t *jpc_ppmstabtostreams(j
- return streams;
-
- error:
-- jpc_streamlist_destroy(streams);
-+ if (streams) {
-+ jpc_streamlist_destroy(streams);
-+ }
- return 0;
- }
-
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c.forward_null jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c.forward_null 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_t1enc.c 2011-06-24 14:58:33.061248133 +0200
-@@ -224,7 +224,7 @@ int jpc_enc_enccblk(jpc_enc_t *enc, jas_
- } else {
- cblk->passes = 0;
- }
-- endpasses = &cblk->passes[cblk->numpasses];
-+ endpasses = (cblk->passes) ? &cblk->passes[cblk->numpasses] : 0;
- for (pass = cblk->passes; pass != endpasses; ++pass) {
- pass->start = 0;
- pass->end = 0;
-@@ -352,7 +352,7 @@ dump_passes(cblk->passes, cblk->numpasse
- #endif
-
- n = 0;
-- endpasses = &cblk->passes[cblk->numpasses];
-+ endpasses = (cblk->passes) ? &cblk->passes[cblk->numpasses] : 0;
- for (pass = cblk->passes; pass != endpasses; ++pass) {
- if (pass->start < n) {
- pass->start = n;
diff --git a/source/l/jasper/patches/jasper-1.900.1-Coverity-NULL_RETURNS.patch b/source/l/jasper/patches/jasper-1.900.1-Coverity-NULL_RETURNS.patch
deleted file mode 100644
index 4c7227028..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-Coverity-NULL_RETURNS.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-Error: NULL_RETURNS
-base/jas_image.c:213: returned_null: Function "jas_image_create0" returns null (checked 6 out of 7 times).
-base/jas_image.c:213: var_assigned: Assigning: "newimage" = null return value from "jas_image_create0".
-base/jas_image.c:214: dereference: Dereferencing a pointer that might be null "newimage" when calling "jas_image_growcmpts".
-base/jas_image.c:777: deref_parm: Directly dereferencing parameter "image".
-
-base/jas_seq.c:223: returned_null: Function "jas_malloc" returns null (checked 110 out of 119 times).
-base/jas_seq.c:223: var_assigned: Assigning: "mat0->rows_" = null return value from "jas_malloc".
-base/jas_seq.c:225: dereference: Dereferencing a null pointer "mat0->rows_".
-
-jp2/jp2_cod.c:484: returned_null: Function "jas_stream_memopen" returns null (checked 12 out of 15 times).
-jp2/jp2_cod.c:484: var_assigned: Assigning: "tmpstream" = null return value from "jas_stream_memopen".
-jp2/jp2_cod.c:490: dereference: Dereferencing a pointer that might be null "tmpstream" when calling "jas_stream_tell".
-base/jas_stream.c:677: deref_parm: Directly dereferencing parameter "stream".
-
-
-diff -up jasper-1.900.1/src/libjasper/base/jas_image.c.NULL_RETURNS jasper-1.900.1/src/libjasper/base/jas_image.c
---- jasper-1.900.1/src/libjasper/base/jas_image.c.NULL_RETURNS 2011-12-08 14:00:05.350020869 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_image.c 2011-12-08 14:00:06.638004766 +0100
-@@ -210,7 +210,10 @@ jas_image_t *jas_image_copy(jas_image_t
- jas_image_t *newimage;
- int cmptno;
-
-- newimage = jas_image_create0();
-+ if (!(newimage = jas_image_create0())) {
-+ goto error;
-+ }
-+
- if (jas_image_growcmpts(newimage, image->numcmpts_)) {
- goto error;
- }
-diff -up jasper-1.900.1/src/libjasper/base/jas_seq.c.NULL_RETURNS jasper-1.900.1/src/libjasper/base/jas_seq.c
---- jasper-1.900.1/src/libjasper/base/jas_seq.c.NULL_RETURNS 2011-12-08 14:00:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_seq.c 2011-12-08 14:15:12.449680562 +0100
-@@ -220,7 +220,11 @@ void jas_matrix_bindsub(jas_matrix_t *ma
- mat0->numrows_ = r1 - r0 + 1;
- mat0->numcols_ = c1 - c0 + 1;
- mat0->maxrows_ = mat0->numrows_;
-- mat0->rows_ = jas_alloc2(mat0->maxrows_, sizeof(jas_seqent_t *));
-+ if (!(mat0->rows_ = jas_alloc2(mat0->maxrows_, sizeof(jas_seqent_t *)))) {
-+ jas_matrix_destroy(mat0);
-+ return;
-+ }
-+
- for (i = 0; i < mat0->numrows_; ++i) {
- mat0->rows_[i] = mat1->rows_[r0 + i] + c0;
- }
-diff -up jasper-1.900.1/src/libjasper/jp2/jp2_cod.c.NULL_RETURNS jasper-1.900.1/src/libjasper/jp2/jp2_cod.c
---- jasper-1.900.1/src/libjasper/jp2/jp2_cod.c.NULL_RETURNS 2011-12-08 14:00:05.633017331 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_cod.c 2011-12-08 14:00:06.677004279 +0100
-@@ -481,7 +481,9 @@ int jp2_box_put(jp2_box_t *box, jas_stre
- dataflag = !(box->info->flags & (JP2_BOX_SUPER | JP2_BOX_NODATA));
-
- if (dataflag) {
-- tmpstream = jas_stream_memopen(0, 0);
-+ if (!(tmpstream = jas_stream_memopen(0, 0))) {
-+ goto error;
-+ }
- if (box->ops->putdata) {
- if ((*box->ops->putdata)(box, tmpstream)) {
- goto error;
diff --git a/source/l/jasper/patches/jasper-1.900.1-Coverity-RESOURCE_LEAK.patch b/source/l/jasper/patches/jasper-1.900.1-Coverity-RESOURCE_LEAK.patch
deleted file mode 100644
index 76f5da77f..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-Coverity-RESOURCE_LEAK.patch
+++ /dev/null
@@ -1,202 +0,0 @@
-Error: RESOURCE_LEAK
-src/appl/imgcmp.c:504: var_assign: Assigning: "diffimage" = storage returned from "jas_image_create(3, compparms, 1025)".
-src/appl/imgcmp.c:511: leaked_storage: Variable "diffimage" going out of scope leaks the storage it points to.
-src/appl/imgcmp.c:537: leaked_storage: Variable "diffimage" going out of scope leaks the storage it points to.
-
-base/jas_image.c:254: var_assign: Assigning: "newcmpt" = storage returned from "jas_image_cmpt_create0()".
-base/jas_image.c:268: leaked_storage: Variable "newcmpt" going out of scope leaks the storage it points to.
-base/jas_image.c:271: leaked_storage: Variable "newcmpt" going out of scope leaks the storage it points to.
-base/jas_image.c:274: leaked_storage: Variable "newcmpt" going out of scope leaks the storage it points to.
-base/jas_image.c:277: leaked_storage: Variable "newcmpt" going out of scope leaks the storage it points to.
-
-base/jas_cm.c:611: var_assign: Assigning: "newpxformseq" = storage returned from "jas_cmpxformseq_create()".
-base/jas_cm.c:617: leaked_storage: Variable "newpxformseq" going out of scope leaks the storage it points to.
-
-base/jas_cm.c:343: var_assign: Assigning: "newprof" = storage returned from "jas_cmprof_create()".
-base/jas_cm.c:358: leaked_storage: Variable "newprof" going out of scope leaks the storage it points to.
-
-base/jas_cm.c:380: var_assign: Assigning: "xform" = storage returned from "jas_malloc(sizeof (jas_cmxform_t) /*16*/)".
-base/jas_cm.c:461: leaked_storage: Variable "xform" going out of scope leaks the storage it points to.
-
-base/jas_image.c:1379: var_assign: Assigning: "xform" = storage returned from "jas_cmxform_create(inprof, outprof, NULL, 0, intent, 0)".
-base/jas_image.c:1444: leaked_storage: Variable "xform" going out of scope leaks the storage it points to.
-
-base/jas_image.c:1306: var_assign: Assigning: "inimage" = storage returned from "jas_image_copy(image)".
-base/jas_image.c:1444: leaked_storage: Variable "inimage" going out of scope leaks the storage it points to.
-
-base/jas_image.c:1345: var_assign: Assigning: "outimage" = storage returned from "jas_image_create0()".
-base/jas_image.c:1444: leaked_storage: Variable "outimage" going out of scope leaks the storage it points to.
-
-bmp/bmp_enc.c:187: var_assign: Assigning: "info" = storage returned from "bmp_info_create()".
-bmp/bmp_enc.c:208: leaked_storage: Variable "info" going out of scope leaks the storage it points to.
-
-jpc/jpc_tagtree.c:111: var_assign: Assigning: "tree" = storage returned from "jpc_tagtree_alloc()".
-jpc/jpc_tagtree.c:129: leaked_storage: Variable "tree" going out of scope leaks the storage it points to.
-
-jpc/jpc_dec.c:452: var_assign: Assigning: "compinfos" = storage returned from "jas_malloc(dec->numcomps * sizeof (jas_image_cmptparm_t) /*56*/)".
-jpc/jpc_dec.c:468: leaked_storage: Variable "compinfos" going out of scope leaks the storage it points to.
-
-jpc/jpc_dec.c:1483: var_assign: Assigning: "cp" = storage returned from "jas_malloc(sizeof (jpc_dec_cp_t) /*48*/)".
-jpc/jpc_dec.c:1493: leaked_storage: Variable "cp" going out of scope leaks the storage it points to.
-jpc/jpc_dec.c:1497: leaked_storage: Variable "cp" going out of scope leaks the storage it points to.
-
-mif/mif_cod.c:523: var_assign: Assigning: "cmpt" = storage returned from "mif_cmpt_create()".
-mif/mif_cod.c:568: leaked_storage: Variable "cmpt" going out of scope leaks the storage it points to.
-
-mif/mif_cod.c:568: leaked_storage: Variable "tvp" going out of scope leaks the storage it points to.
-
-
-diff -up jasper-1.900.1/src/appl/imgcmp.c.RESOURCE_LEAK jasper-1.900.1/src/appl/imgcmp.c
---- jasper-1.900.1/src/appl/imgcmp.c.RESOURCE_LEAK 2007-01-19 22:43:08.000000000 +0100
-+++ jasper-1.900.1/src/appl/imgcmp.c 2011-12-08 14:16:04.727027007 +0100
-@@ -507,6 +507,7 @@ jas_image_t *makediffimage(jas_matrix_t
-
- for (i = 0; i < 3; ++i) {
- if (!(diffdata[i] = jas_matrix_create(height, width))) {
-+ jas_image_destroy(diffimage);
- fprintf(stderr, "internal error\n");
- return 0;
- }
-@@ -534,6 +535,7 @@ jas_image_t *makediffimage(jas_matrix_t
-
- for (i = 0; i < 3; ++i) {
- if (jas_image_writecmpt(diffimage, i, 0, 0, width, height, diffdata[i])) {
-+ jas_image_destroy(diffimage);
- return 0;
- }
- }
-diff -up jasper-1.900.1/src/libjasper/base/jas_cm.c.RESOURCE_LEAK jasper-1.900.1/src/libjasper/base/jas_cm.c
---- jasper-1.900.1/src/libjasper/base/jas_cm.c.RESOURCE_LEAK 2011-12-08 14:16:03.387043758 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_cm.c 2011-12-08 14:16:04.728026994 +0100
-@@ -355,6 +355,8 @@ jas_cmprof_t *jas_cmprof_copy(jas_cmprof
- }
- return newprof;
- error:
-+ if (newprof)
-+ jas_cmprof_destroy(newprof);
- return 0;
- }
-
-@@ -458,6 +460,8 @@ jas_cmxform_t *jas_cmxform_create(jas_cm
- }
- return xform;
- error:
-+ if (xform)
-+ jas_cmxform_destroy(xform);
- return 0;
- }
-
-@@ -614,6 +618,8 @@ static jas_cmpxformseq_t *jas_cmpxformse
- goto error;
- return newpxformseq;
- error:
-+ if (newpxformseq)
-+ jas_cmpxformseq_destroy(newpxformseq);
- return 0;
- }
-
-diff -up jasper-1.900.1/src/libjasper/base/jas_image.c.RESOURCE_LEAK jasper-1.900.1/src/libjasper/base/jas_image.c
---- jasper-1.900.1/src/libjasper/base/jas_image.c.RESOURCE_LEAK 2011-12-08 14:16:04.635028156 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_image.c 2011-12-08 14:16:04.776026394 +0100
-@@ -268,15 +268,19 @@ static jas_image_cmpt_t *jas_image_cmpt_
- newcmpt->cps_ = cmpt->cps_;
- newcmpt->type_ = cmpt->type_;
- if (!(newcmpt->stream_ = jas_stream_memopen(0, 0))) {
-+ jas_image_cmpt_destroy(newcmpt);
- return 0;
- }
- if (jas_stream_seek(cmpt->stream_, 0, SEEK_SET)) {
-+ jas_image_cmpt_destroy(newcmpt);
- return 0;
- }
- if (jas_stream_copy(newcmpt->stream_, cmpt->stream_, -1)) {
-+ jas_image_cmpt_destroy(newcmpt);
- return 0;
- }
- if (jas_stream_seek(newcmpt->stream_, 0, SEEK_SET)) {
-+ jas_image_cmpt_destroy(newcmpt);
- return 0;
- }
- return newcmpt;
-@@ -1443,5 +1447,11 @@ jas_image_dump(outimage, stderr);
- #endif
- return outimage;
- error:
-+ if (xform)
-+ jas_cmxform_destroy(xform);
-+ if (inimage)
-+ jas_image_destroy(inimage);
-+ if (outimage)
-+ jas_image_destroy(outimage);
- return 0;
- }
-diff -up jasper-1.900.1/src/libjasper/bmp/bmp_enc.c.RESOURCE_LEAK jasper-1.900.1/src/libjasper/bmp/bmp_enc.c
---- jasper-1.900.1/src/libjasper/bmp/bmp_enc.c.RESOURCE_LEAK 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/bmp/bmp_enc.c 2011-12-08 14:16:04.826025768 +0100
-@@ -205,16 +205,19 @@ int bmp_encode(jas_image_t *image, jas_s
-
- /* Write the bitmap header. */
- if (bmp_puthdr(out, &hdr)) {
-+ bmp_info_destroy(info);
- return -1;
- }
-
- /* Write the bitmap information. */
- if (bmp_putinfo(out, info)) {
-+ bmp_info_destroy(info);
- return -1;
- }
-
- /* Write the bitmap data. */
- if (bmp_putdata(out, info, image, enc->cmpts)) {
-+ bmp_info_destroy(info);
- return -1;
- }
-
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.RESOURCE_LEAK jasper-1.900.1/src/libjasper/jpc/jpc_dec.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.RESOURCE_LEAK 2011-12-08 14:16:04.594028668 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_dec.c 2011-12-08 14:17:25.677014992 +0100
-@@ -465,6 +465,7 @@ static int jpc_dec_process_sot(jpc_dec_t
-
- if (!(dec->image = jas_image_create(dec->numcomps, compinfos,
- JAS_CLRSPC_UNKNOWN))) {
-+ jas_free(compinfos);
- return -1;
- }
- jas_free(compinfos);
-@@ -1490,10 +1491,11 @@ static jpc_dec_cp_t *jpc_dec_cp_create(u
- cp->mctid = 0;
- cp->csty = 0;
- if (!(cp->ccps = jas_alloc2(cp->numcomps, sizeof(jpc_dec_ccp_t)))) {
-+ jpc_dec_cp_destroy(cp);
- return 0;
- }
- if (!(cp->pchglist = jpc_pchglist_create())) {
-- jas_free(cp->ccps);
-+ jpc_dec_cp_destroy(cp);
- return 0;
- }
- for (compno = 0, ccp = cp->ccps; compno < cp->numcomps;
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_tagtree.c.RESOURCE_LEAK jasper-1.900.1/src/libjasper/jpc/jpc_tagtree.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_tagtree.c.RESOURCE_LEAK 2011-12-08 14:16:04.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_tagtree.c 2011-12-08 14:17:55.905637082 +0100
-@@ -126,6 +126,7 @@ jpc_tagtree_t *jpc_tagtree_create(int nu
- } while (n > 1);
-
- if (!(tree->nodes_ = jas_alloc2(tree->numnodes_, sizeof(jpc_tagtreenode_t)))) {
-+ jpc_tagtree_destroy(tree);
- return 0;
- }
-
-diff -up jasper-1.900.1/src/libjasper/mif/mif_cod.c.RESOURCE_LEAK jasper-1.900.1/src/libjasper/mif/mif_cod.c
---- jasper-1.900.1/src/libjasper/mif/mif_cod.c.RESOURCE_LEAK 2011-12-08 14:16:04.250032970 +0100
-+++ jasper-1.900.1/src/libjasper/mif/mif_cod.c 2011-12-08 14:16:04.967024005 +0100
-@@ -564,7 +564,7 @@ static int mif_process_cmpt(mif_hdr_t *h
- break;
- case MIF_DATA:
- if (!(cmpt->data = jas_strdup(jas_tvparser_getval(tvp)))) {
-- return -1;
-+ goto error;
- }
- break;
- }
diff --git a/source/l/jasper/patches/jasper-1.900.1-Coverity-UNREACHABLE.patch b/source/l/jasper/patches/jasper-1.900.1-Coverity-UNREACHABLE.patch
deleted file mode 100644
index 3cae29403..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-Coverity-UNREACHABLE.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Error: UNREACHABLE
-jp2/jp2_cod.c:304: unreachable: This code cannot be reached: "abort();".
-
-jp2/jp2_cod.c:514: unreachable: This code cannot be reached: "abort();".
-
-jp2/jp2_enc.c:354: unreachable: This code cannot be reached: "abort();".
-
-diff -up jasper-1.900.1/src/libjasper/jp2/jp2_cod.c.unreachable jasper-1.900.1/src/libjasper/jp2/jp2_cod.c
---- jasper-1.900.1/src/libjasper/jp2/jp2_cod.c.unreachable 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_cod.c 2011-06-27 15:28:13.083137952 +0200
-@@ -301,7 +301,6 @@ jp2_box_t *jp2_box_get(jas_stream_t *in)
- }
-
- return box;
-- abort();
-
- error:
- if (box) {
-@@ -511,7 +510,6 @@ int jp2_box_put(jp2_box_t *box, jas_stre
- }
-
- return 0;
-- abort();
-
- error:
-
-diff -up jasper-1.900.1/src/libjasper/jp2/jp2_enc.c.unreachable jasper-1.900.1/src/libjasper/jp2/jp2_enc.c
---- jasper-1.900.1/src/libjasper/jp2/jp2_enc.c.unreachable 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_enc.c 2011-06-27 15:27:58.858353979 +0200
-@@ -351,7 +351,6 @@ int sgnd;
- }
-
- return 0;
-- abort();
-
- error:
-
diff --git a/source/l/jasper/patches/jasper-1.900.1-Coverity-UNUSED_VALUE.patch b/source/l/jasper/patches/jasper-1.900.1-Coverity-UNUSED_VALUE.patch
deleted file mode 100644
index e7d4cb591..000000000
--- a/source/l/jasper/patches/jasper-1.900.1-Coverity-UNUSED_VALUE.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Error: UNUSED_VALUE
-base/jas_icc.c:328: returned_pointer: Pointer "attrvalinfo" returned by "jas_iccattrvalinfo_lookup(type)" is never used.
-
-jpc/jpc_enc.c:788: returned_pointer: Pointer "cp" returned by "strchr(s, 66)" is never used.
-
-diff -up jasper-1.900.1/src/libjasper/base/jas_icc.c.unused_value jasper-1.900.1/src/libjasper/base/jas_icc.c
---- jasper-1.900.1/src/libjasper/base/jas_icc.c.unused_value 2007-01-19 22:43:05.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_icc.c 2011-06-27 15:35:52.815263000 +0200
-@@ -266,7 +266,6 @@ jas_iccprof_t *jas_iccprof_load(jas_stre
- jas_iccattrval_t *attrval;
- jas_iccattrval_t *prevattrval;
- jas_icctagtabent_t *tagtabent;
-- jas_iccattrvalinfo_t *attrvalinfo;
- int i;
- int len;
-
-@@ -325,7 +324,7 @@ jas_iccprof_t *jas_iccprof_load(jas_stre
- goto error;
- }
- curoff += 8;
-- if (!(attrvalinfo = jas_iccattrvalinfo_lookup(type))) {
-+ if (!jas_iccattrvalinfo_lookup(type)) {
- #if 0
- jas_eprintf("warning: skipping unknown tag type\n");
- #endif
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_enc.c.unused_value jasper-1.900.1/src/libjasper/jpc/jpc_enc.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_enc.c.unused_value 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_enc.c 2011-06-27 15:36:17.437900180 +0200
-@@ -781,11 +781,10 @@ void jpc_enc_cp_destroy(jpc_enc_cp_t *cp
-
- int ratestrtosize(char *s, uint_fast32_t rawsize, uint_fast32_t *size)
- {
-- char *cp;
- jpc_flt_t f;
-
- /* Note: This function must not modify output size on failure. */
-- if ((cp = strchr(s, 'B'))) {
-+ if (strchr(s, 'B')) {
- *size = atoi(s);
- } else {
- f = atof(s);
diff --git a/source/l/jasper/patches/jasper-CVE-2014-8137.patch b/source/l/jasper/patches/jasper-CVE-2014-8137.patch
deleted file mode 100644
index 9600cd323..000000000
--- a/source/l/jasper/patches/jasper-CVE-2014-8137.patch
+++ /dev/null
@@ -1,57 +0,0 @@
---- jasper-1.900.1.orig/src/libjasper/base/jas_icc.c 2014-12-11 14:06:44.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_icc.c 2014-12-11 15:16:37.971272386 +0100
-@@ -1009,7 +1009,6 @@ static int jas_icccurv_input(jas_iccattr
- return 0;
-
- error:
-- jas_icccurv_destroy(attrval);
- return -1;
- }
-
-@@ -1127,7 +1126,6 @@ static int jas_icctxtdesc_input(jas_icca
- #endif
- return 0;
- error:
-- jas_icctxtdesc_destroy(attrval);
- return -1;
- }
-
-@@ -1206,8 +1204,6 @@ static int jas_icctxt_input(jas_iccattrv
- goto error;
- return 0;
- error:
-- if (txt->string)
-- jas_free(txt->string);
- return -1;
- }
-
-@@ -1328,7 +1324,6 @@ static int jas_icclut8_input(jas_iccattr
- goto error;
- return 0;
- error:
-- jas_icclut8_destroy(attrval);
- return -1;
- }
-
-@@ -1497,7 +1492,6 @@ static int jas_icclut16_input(jas_iccatt
- goto error;
- return 0;
- error:
-- jas_icclut16_destroy(attrval);
- return -1;
- }
-
---- jasper-1.900.1.orig/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:30:54.193209780 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:36:46.313217814 +0100
-@@ -291,7 +291,10 @@ jas_image_t *jp2_decode(jas_stream_t *in
- case JP2_COLR_ICC:
- iccprof = jas_iccprof_createfrombuf(dec->colr->data.colr.iccp,
- dec->colr->data.colr.iccplen);
-- assert(iccprof);
-+ if (!iccprof) {
-+ jas_eprintf("error: failed to parse ICC profile\n");
-+ goto error;
-+ }
- jas_iccprof_gethdr(iccprof, &icchdr);
- jas_eprintf("ICC Profile CS %08x\n", icchdr.colorspc);
- jas_image_setclrspc(dec->image, fromiccpcs(icchdr.colorspc));
diff --git a/source/l/jasper/patches/jasper-CVE-2014-8138.patch b/source/l/jasper/patches/jasper-CVE-2014-8138.patch
deleted file mode 100644
index 5aaf8abb1..000000000
--- a/source/l/jasper/patches/jasper-CVE-2014-8138.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- jasper-1.900.1.orig/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:06:44.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:06:26.000000000 +0100
-@@ -386,6 +386,11 @@ jas_image_t *jp2_decode(jas_stream_t *in
- /* Determine the type of each component. */
- if (dec->cdef) {
- for (i = 0; i < dec->numchans; ++i) {
-+ /* Is the channel number reasonable? */
-+ if (dec->cdef->data.cdef.ents[i].channo >= dec->numchans) {
-+ jas_eprintf("error: invalid channel number in CDEF box\n");
-+ goto error;
-+ }
- jas_image_setcmpttype(dec->image,
- dec->chantocmptlut[dec->cdef->data.cdef.ents[i].channo],
- jp2_getct(jas_image_clrspc(dec->image),
diff --git a/source/l/jasper/patches/jasper-CVE-2014-8157.patch b/source/l/jasper/patches/jasper-CVE-2014-8157.patch
deleted file mode 100644
index ebfc1b2d0..000000000
--- a/source/l/jasper/patches/jasper-CVE-2014-8157.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.CVE-2014-8157 jasper-1.900.1/src/libjasper/jpc/jpc_dec.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.CVE-2014-8157 2015-01-19 16:59:36.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_dec.c 2015-01-19 17:07:41.609863268 +0100
-@@ -489,7 +489,7 @@ static int jpc_dec_process_sot(jpc_dec_t
- dec->curtileendoff = 0;
- }
-
-- if (JAS_CAST(int, sot->tileno) > dec->numtiles) {
-+ if (JAS_CAST(int, sot->tileno) >= dec->numtiles) {
- jas_eprintf("invalid tile number in SOT marker segment\n");
- return -1;
- }
diff --git a/source/l/jasper/patches/jasper-CVE-2014-8158.patch b/source/l/jasper/patches/jasper-CVE-2014-8158.patch
deleted file mode 100644
index ce9e4b497..000000000
--- a/source/l/jasper/patches/jasper-CVE-2014-8158.patch
+++ /dev/null
@@ -1,329 +0,0 @@
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c.CVE-2014-8158 jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c.CVE-2014-8158 2015-01-19 17:25:28.730195502 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c 2015-01-19 17:27:20.214663127 +0100
-@@ -306,11 +306,7 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in
- {
-
- int bufsize = JPC_CEILDIVPOW2(numcols, 1);
--#if !defined(HAVE_VLA)
- jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
--#else
-- jpc_fix_t splitbuf[bufsize];
--#endif
- jpc_fix_t *buf = splitbuf;
- register jpc_fix_t *srcptr;
- register jpc_fix_t *dstptr;
-@@ -318,7 +314,6 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in
- register int m;
- int hstartcol;
-
--#if !defined(HAVE_VLA)
- /* Get a buffer. */
- if (bufsize > QMFB_SPLITBUFSIZE) {
- if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -326,7 +321,6 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in
- abort();
- }
- }
--#endif
-
- if (numcols >= 2) {
- hstartcol = (numcols + 1 - parity) >> 1;
-@@ -360,12 +354,10 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in
- }
- }
-
--#if !defined(HAVE_VLA)
- /* If the split buffer was allocated on the heap, free this memory. */
- if (buf != splitbuf) {
- jas_free(buf);
- }
--#endif
-
- }
-
-@@ -374,11 +366,7 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
- {
-
- int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
- jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
--#else
-- jpc_fix_t splitbuf[bufsize];
--#endif
- jpc_fix_t *buf = splitbuf;
- register jpc_fix_t *srcptr;
- register jpc_fix_t *dstptr;
-@@ -386,7 +374,6 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
- register int m;
- int hstartcol;
-
--#if !defined(HAVE_VLA)
- /* Get a buffer. */
- if (bufsize > QMFB_SPLITBUFSIZE) {
- if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -394,7 +381,6 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
- abort();
- }
- }
--#endif
-
- if (numrows >= 2) {
- hstartcol = (numrows + 1 - parity) >> 1;
-@@ -428,12 +414,10 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
- }
- }
-
--#if !defined(HAVE_VLA)
- /* If the split buffer was allocated on the heap, free this memory. */
- if (buf != splitbuf) {
- jas_free(buf);
- }
--#endif
-
- }
-
-@@ -442,11 +426,7 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
- {
-
- int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
- jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
--#else
-- jpc_fix_t splitbuf[bufsize * JPC_QMFB_COLGRPSIZE];
--#endif
- jpc_fix_t *buf = splitbuf;
- jpc_fix_t *srcptr;
- jpc_fix_t *dstptr;
-@@ -457,7 +437,6 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
- int m;
- int hstartcol;
-
--#if !defined(HAVE_VLA)
- /* Get a buffer. */
- if (bufsize > QMFB_SPLITBUFSIZE) {
- if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -465,7 +444,6 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
- abort();
- }
- }
--#endif
-
- if (numrows >= 2) {
- hstartcol = (numrows + 1 - parity) >> 1;
-@@ -517,12 +495,10 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
- }
- }
-
--#if !defined(HAVE_VLA)
- /* If the split buffer was allocated on the heap, free this memory. */
- if (buf != splitbuf) {
- jas_free(buf);
- }
--#endif
-
- }
-
-@@ -531,11 +507,7 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
- {
-
- int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
- jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
--#else
-- jpc_fix_t splitbuf[bufsize * numcols];
--#endif
- jpc_fix_t *buf = splitbuf;
- jpc_fix_t *srcptr;
- jpc_fix_t *dstptr;
-@@ -546,7 +518,6 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
- int m;
- int hstartcol;
-
--#if !defined(HAVE_VLA)
- /* Get a buffer. */
- if (bufsize > QMFB_SPLITBUFSIZE) {
- if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -554,7 +525,6 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
- abort();
- }
- }
--#endif
-
- if (numrows >= 2) {
- hstartcol = (numrows + 1 - parity) >> 1;
-@@ -606,12 +576,10 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
- }
- }
-
--#if !defined(HAVE_VLA)
- /* If the split buffer was allocated on the heap, free this memory. */
- if (buf != splitbuf) {
- jas_free(buf);
- }
--#endif
-
- }
-
-@@ -619,18 +587,13 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int
- {
-
- int bufsize = JPC_CEILDIVPOW2(numcols, 1);
--#if !defined(HAVE_VLA)
- jpc_fix_t joinbuf[QMFB_JOINBUFSIZE];
--#else
-- jpc_fix_t joinbuf[bufsize];
--#endif
- jpc_fix_t *buf = joinbuf;
- register jpc_fix_t *srcptr;
- register jpc_fix_t *dstptr;
- register int n;
- int hstartcol;
-
--#if !defined(HAVE_VLA)
- /* Allocate memory for the join buffer from the heap. */
- if (bufsize > QMFB_JOINBUFSIZE) {
- if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -638,7 +601,6 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int
- abort();
- }
- }
--#endif
-
- hstartcol = (numcols + 1 - parity) >> 1;
-
-@@ -670,12 +632,10 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int
- ++srcptr;
- }
-
--#if !defined(HAVE_VLA)
- /* If the join buffer was allocated on the heap, free this memory. */
- if (buf != joinbuf) {
- jas_free(buf);
- }
--#endif
-
- }
-
-@@ -684,18 +644,13 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int
- {
-
- int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
- jpc_fix_t joinbuf[QMFB_JOINBUFSIZE];
--#else
-- jpc_fix_t joinbuf[bufsize];
--#endif
- jpc_fix_t *buf = joinbuf;
- register jpc_fix_t *srcptr;
- register jpc_fix_t *dstptr;
- register int n;
- int hstartcol;
-
--#if !defined(HAVE_VLA)
- /* Allocate memory for the join buffer from the heap. */
- if (bufsize > QMFB_JOINBUFSIZE) {
- if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -703,7 +658,6 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int
- abort();
- }
- }
--#endif
-
- hstartcol = (numrows + 1 - parity) >> 1;
-
-@@ -735,12 +689,10 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int
- ++srcptr;
- }
-
--#if !defined(HAVE_VLA)
- /* If the join buffer was allocated on the heap, free this memory. */
- if (buf != joinbuf) {
- jas_free(buf);
- }
--#endif
-
- }
-
-@@ -749,11 +701,7 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
- {
-
- int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
- jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
--#else
-- jpc_fix_t joinbuf[bufsize * JPC_QMFB_COLGRPSIZE];
--#endif
- jpc_fix_t *buf = joinbuf;
- jpc_fix_t *srcptr;
- jpc_fix_t *dstptr;
-@@ -763,7 +711,6 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
- register int i;
- int hstartcol;
-
--#if !defined(HAVE_VLA)
- /* Allocate memory for the join buffer from the heap. */
- if (bufsize > QMFB_JOINBUFSIZE) {
- if (!(buf = jas_alloc2(bufsize, JPC_QMFB_COLGRPSIZE * sizeof(jpc_fix_t)))) {
-@@ -771,7 +718,6 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
- abort();
- }
- }
--#endif
-
- hstartcol = (numrows + 1 - parity) >> 1;
-
-@@ -821,12 +767,10 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
- srcptr += JPC_QMFB_COLGRPSIZE;
- }
-
--#if !defined(HAVE_VLA)
- /* If the join buffer was allocated on the heap, free this memory. */
- if (buf != joinbuf) {
- jas_free(buf);
- }
--#endif
-
- }
-
-@@ -835,11 +779,7 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
- {
-
- int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
- jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
--#else
-- jpc_fix_t joinbuf[bufsize * numcols];
--#endif
- jpc_fix_t *buf = joinbuf;
- jpc_fix_t *srcptr;
- jpc_fix_t *dstptr;
-@@ -849,7 +789,6 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
- register int i;
- int hstartcol;
-
--#if !defined(HAVE_VLA)
- /* Allocate memory for the join buffer from the heap. */
- if (bufsize > QMFB_JOINBUFSIZE) {
- if (!(buf = jas_alloc3(bufsize, numcols, sizeof(jpc_fix_t)))) {
-@@ -857,7 +796,6 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
- abort();
- }
- }
--#endif
-
- hstartcol = (numrows + 1 - parity) >> 1;
-
-@@ -907,12 +845,10 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
- srcptr += numcols;
- }
-
--#if !defined(HAVE_VLA)
- /* If the join buffer was allocated on the heap, free this memory. */
- if (buf != joinbuf) {
- jas_free(buf);
- }
--#endif
-
- }
-
diff --git a/source/l/jasper/patches/jasper-CVE-2014-9029.patch b/source/l/jasper/patches/jasper-CVE-2014-9029.patch
deleted file mode 100644
index 98a203599..000000000
--- a/source/l/jasper/patches/jasper-CVE-2014-9029.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_dec.c 2014-11-27 12:45:44.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_dec.c 2014-11-27 12:44:58.000000000 +0100
-@@ -1281,7 +1281,7 @@ static int jpc_dec_process_coc(jpc_dec_t
- jpc_coc_t *coc = &ms->parms.coc;
- jpc_dec_tile_t *tile;
-
-- if (JAS_CAST(int, coc->compno) > dec->numcomps) {
-+ if (JAS_CAST(int, coc->compno) >= dec->numcomps) {
- jas_eprintf("invalid component number in COC marker segment\n");
- return -1;
- }
-@@ -1307,7 +1307,7 @@ static int jpc_dec_process_rgn(jpc_dec_t
- jpc_rgn_t *rgn = &ms->parms.rgn;
- jpc_dec_tile_t *tile;
-
-- if (JAS_CAST(int, rgn->compno) > dec->numcomps) {
-+ if (JAS_CAST(int, rgn->compno) >= dec->numcomps) {
- jas_eprintf("invalid component number in RGN marker segment\n");
- return -1;
- }
-@@ -1356,7 +1356,7 @@ static int jpc_dec_process_qcc(jpc_dec_t
- jpc_qcc_t *qcc = &ms->parms.qcc;
- jpc_dec_tile_t *tile;
-
-- if (JAS_CAST(int, qcc->compno) > dec->numcomps) {
-+ if (JAS_CAST(int, qcc->compno) >= dec->numcomps) {
- jas_eprintf("invalid component number in QCC marker segment\n");
- return -1;
- }
diff --git a/source/l/jasper/patches/jpc_dec.c.patch b/source/l/jasper/patches/jpc_dec.c.patch
deleted file mode 100644
index ae1cd0617..000000000
--- a/source/l/jasper/patches/jpc_dec.c.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff -urN jasper-1.900.1/src/libjasper/jpc/jpc_dec.c jasper-1.900.1-fix/src/libjasper/jpc/jpc_dec.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_dec.c 2007-01-19 14:43:07.000000000 -0700
-+++ jasper-1.900.1-fix/src/libjasper/jpc/jpc_dec.c 2008-03-06 16:51:12.000000000 -0700
-@@ -1069,12 +1069,12 @@
- /* Apply an inverse intercomponent transform if necessary. */
- switch (tile->cp->mctid) {
- case JPC_MCT_RCT:
-- assert(dec->numcomps == 3);
-+ assert(dec->numcomps >= 3);
- jpc_irct(tile->tcomps[0].data, tile->tcomps[1].data,
- tile->tcomps[2].data);
- break;
- case JPC_MCT_ICT:
-- assert(dec->numcomps == 3);
-+ assert(dec->numcomps >= 3);
- jpc_iict(tile->tcomps[0].data, tile->tcomps[1].data,
- tile->tcomps[2].data);
- break;
diff --git a/source/l/jasper/patches/patch-libjasper-stepsizes-overflow.diff b/source/l/jasper/patches/patch-libjasper-stepsizes-overflow.diff
deleted file mode 100644
index 097559f68..000000000
--- a/source/l/jasper/patches/patch-libjasper-stepsizes-overflow.diff
+++ /dev/null
@@ -1,14 +0,0 @@
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_cs.c 2007-01-19 22:43:07.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_cs.c 2007-04-06 01:29:02.000000000 +0200
-@@ -982,7 +982,10 @@ static int jpc_qcx_getcompparms(jpc_qcxc
- compparms->numstepsizes = (len - n) / 2;
- break;
- }
-- if (compparms->numstepsizes > 0) {
-+ if (compparms->numstepsizes > 3 * JPC_MAXRLVLS + 1) {
-+ jpc_qcx_destroycompparms(compparms);
-+ return -1;
-+ } else if (compparms->numstepsizes > 0) {
- compparms->stepsizes = jas_malloc(compparms->numstepsizes *
- sizeof(uint_fast16_t));
- assert(compparms->stepsizes);
diff --git a/source/l/jasper/slack-desc b/source/l/jasper/slack-desc
index c79751af3..5fb164f5c 100644
--- a/source/l/jasper/slack-desc
+++ b/source/l/jasper/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -12,7 +12,7 @@ jasper: The JasPer Project is an open-source initiative to provide a free
jasper: software-based reference implementation of the codec specified in the
jasper: JPEG-2000 Part-1 standard (i.e., ISO/IEC 15444-1).jasper:
jasper:
-jasper: jasper home: http://www.ece.uvic.ca/~mdadams/jasper/
+jasper: JasPer home: http://www.ece.uvic.ca/~mdadams/jasper/
jasper:
jasper:
jasper:
diff --git a/source/l/jemalloc/jemalloc.SlackBuild b/source/l/jemalloc/jemalloc.SlackBuild
index 6a74a4afe..f2d1a4375 100755
--- a/source/l/jemalloc/jemalloc.SlackBuild
+++ b/source/l/jemalloc/jemalloc.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jemalloc
# Copyright 2012-2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,35 +23,44 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=jemalloc
-VERSION=3.6.0
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo jemalloc-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-march=i586 -mtune=i686"
LIBDIRSUFFIX=""
TARGET="x86"
elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ SLKCFLAGS="-march=i686 -mtune=i686"
LIBDIRSUFFIX=""
TARGET="x86"
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-fPIC"
LIBDIRSUFFIX="64"
TARGET="x86-64"
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -61,6 +70,7 @@ cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
cd $PKGNAM-$VERSION || exit 1
+
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -76,18 +86,21 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# No static libraries in package:
+find $PKG/usr/lib$LIBDIRSUFFIX -name '*.a' -exec rm -vf {} \;
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a ChangeLog COPYING* INSTALL README* VERSION \
+cp -a ChangeLog* COPYING* INSTALL README* VERSION \
$PKG/usr/doc/$PKGNAM-$VERSION
mv $PKG/usr/share/doc/jemalloc/* $PKG/usr/doc/$PKGNAM-$VERSION/
rm -rf $PKG/usr/share/doc/jemalloc
diff --git a/source/l/jemalloc/slack-desc b/source/l/jemalloc/slack-desc
index 5613ba2b8..dd9955739 100644
--- a/source/l/jemalloc/slack-desc
+++ b/source/l/jemalloc/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ jemalloc:
jemalloc: jemalloc is a general-purpose scalable concurrent malloc(3)
jemalloc: implementation.
jemalloc:
-jemalloc: Homepage: http://www.canonware.com/jemalloc/
+jemalloc: Homepage: http://jemalloc.net
jemalloc:
jemalloc:
jemalloc:
diff --git a/source/l/js185/js185.SlackBuild b/source/l/js185/js185.SlackBuild
index 515133886..5592c96c1 100755
--- a/source/l/js185/js185.SlackBuild
+++ b/source/l/js185/js185.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for SpiderMonkey
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=js185
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TARNAME=js
TARVERS=1.8.5
@@ -32,21 +34,28 @@ TARVERS=1.8.5
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -76,8 +85,8 @@ cd js/src
patch -p0 < $CWD/js185-destdir.patch || exit 1
-CXXFLAGS="$SLKCFLAGS" \
CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/source/l/js185/slack-desc b/source/l/js185/slack-desc
index ac323dafd..d7e5c1156 100644
--- a/source/l/js185/slack-desc
+++ b/source/l/js185/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/json-c/json-c.SlackBuild b/source/l/json-c/json-c.SlackBuild
index 528e4a0c0..7099a59c5 100755
--- a/source/l/json-c/json-c.SlackBuild
+++ b/source/l/json-c/json-c.SlackBuild
@@ -3,6 +3,7 @@
# Slackware build script for json-c
# Copyright 2015 Robby Workman, Tuscaloosa, Alabama, USA
+# Copyright 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,8 +23,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=json-c
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -f 3- -d - | rev | cut -f 3- -d . | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -38,9 +41,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -62,7 +72,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find -L . \
@@ -71,14 +81,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# Either of these approaches will solve the set but unused variable issue
-# Pick one :-)
-# Drop -Werror
-#sed -i 's|-Werror ||g' Makefile.am.inc
-zcat $CWD/unset-vars-build-fix.diff.gz | patch -p1 || exit 1
-
-autoreconf -vif
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -94,6 +96,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -114,4 +119,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz
diff --git a/source/l/json-c/slack-desc b/source/l/json-c/slack-desc
index e499dff41..819b4bd79 100644
--- a/source/l/json-c/slack-desc
+++ b/source/l/json-c/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
json-c: json-c (JSON library in C)
json-c:
-json-c: json-c implements a reference counting object model that allows you
-json-c: to easily construct JSON objects in C.
-json-c:
-json-c: Homepage: https://github.com/json-c/json-c
-json-c:
-json-c:
+json-c: JSON-C implements a reference counting object model that allows you to
+json-c: easily construct JSON (JavaScript Object Notation) objects in C,
+json-c: output them as JSON formatted strings and parse JSON formatted strings
+json-c: back into the C representation of JSON objects. It aims to conform to
+json-c: RFC 7159.
json-c:
+json-c: Homepage: https://github.com/json-c/json-c
json-c:
json-c:
diff --git a/source/l/json-c/unset-vars-build-fix.diff b/source/l/json-c/unset-vars-build-fix.diff
deleted file mode 100644
index cd36453c0..000000000
--- a/source/l/json-c/unset-vars-build-fix.diff
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -Nur json-c-0.12.orig/json_tokener.c json-c-0.12/json_tokener.c
---- json-c-0.12.orig/json_tokener.c 2014-04-10 19:41:08.000000000 -0500
-+++ json-c-0.12/json_tokener.c 2015-12-27 01:37:06.564722759 -0600
-@@ -352,12 +352,10 @@
-
- case json_tokener_state_inf: /* aka starts with 'i' */
- {
-- int size;
- int size_inf;
- int is_negative = 0;
-
- printbuf_memappend_fast(tok->pb, &c, 1);
-- size = json_min(tok->st_pos+1, json_null_str_len);
- size_inf = json_min(tok->st_pos+1, json_inf_str_len);
- char *infbuf = tok->pb->buf;
- if (*infbuf == '-')
diff --git a/source/l/json-glib/json-glib.SlackBuild b/source/l/json-glib/json-glib.SlackBuild
new file mode 100755
index 000000000..fe74479f0
--- /dev/null
+++ b/source/l/json-glib/json-glib.SlackBuild
@@ -0,0 +1,147 @@
+#!/bin/bash
+
+# Copyright 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=json-glib
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir build
+cd build
+meson setup \
+ --prefix=/usr \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --buildtype=release \
+ -Ddocs=true \
+ .. || exit 1
+ ninja || exit 1
+ DESTDIR=$PKG ninja install || exit 1
+cd ..
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Don't package test files:
+rm -rf $PKG/usr/{share,libexec}/installed-tests
+rmdir $PKG/usr/libexec 2> /dev/null
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* ChangeLog CHANGES COPYING* LICENSE* NEWS* README* THANKS* TODO* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/libmowgli/slack-desc b/source/l/json-glib/slack-desc
index 59f837134..420e09770 100644
--- a/source/l/libmowgli/slack-desc
+++ b/source/l/json-glib/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
-libmowgli: libmowgli (A useful collection of routines for programming)
-libmowgli:
-libmowgli: libmowgli is a class library containing performance and usability
-libmowgli: oriented extensions to C.
-libmowgli:
-libmowgli: libmowgli was written by Patrick McFarland, William Pitcock,
-libmowgli: Jonathan Schleifer, Pippijn van Steenhoven, and Jilles Tjoelker.
-libmowgli:
-libmowgli:
-libmowgli:
-libmowgli:
+json-glib: json-glib (GLib/GObject based JSON tools)
+json-glib:
+json-glib: JSON-GLib implements a full JSON (JavaScript Object Notation) parser
+json-glib: and generator using GLib and GObject, and integrates JSON with GLib
+json-glib: data types.
+json-glib:
+json-glib: Homepage: https://gitlab.gnome.org/GNOME/json-glib/
+json-glib:
+json-glib:
+json-glib:
+json-glib:
diff --git a/source/l/judy/judy.SlackBuild b/source/l/judy/judy.SlackBuild
index 684807516..b4e098986 100755
--- a/source/l/judy/judy.SlackBuild
+++ b/source/l/judy/judy.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2012 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
-# Copyright 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,22 +21,32 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=judy
VERSION=1.0.5
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -49,7 +59,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -76,11 +85,14 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/judy/slack-desc b/source/l/judy/slack-desc
index 4cdef3197..61d04e12e 100644
--- a/source/l/judy/slack-desc
+++ b/source/l/judy/slack-desc
@@ -2,16 +2,16 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
judy: judy (sparse dynamic array library)
judy:
judy: Judy is a C library that provides a state-of-the-art core technology
-judy: that implements a sparse dynamic array. A Judy array consumes memory
+judy: that implements a sparse dynamic array. A Judy array consumes memory
judy: only when it is populated, yet can grow to take advantage of all
-judy: available memory if desired. Judy's key benefits are scalability,
+judy: available memory if desired. Judy's key benefits are scalability,
judy: high performance, and memory efficiency.
judy:
judy: homepage: http://judy.sourceforge.net
diff --git a/source/l/keybinder/keybinder.SlackBuild b/source/l/keybinder/keybinder.SlackBuild
index 1924c9be7..409c9bcab 100755
--- a/source/l/keybinder/keybinder.SlackBuild
+++ b/source/l/keybinder/keybinder.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for keybinder
# Copyright 2011 Robby Workman, Northport, Alabama, USA
-# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=keybinder
VERSION=0.3.1
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,9 +37,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/keybinder/slack-desc b/source/l/keybinder/slack-desc
index 8d6c694e7..8b46b8b10 100644
--- a/source/l/keybinder/slack-desc
+++ b/source/l/keybinder/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ keybinder:
keybinder: keybinder is a library for registering global keyboard shortcuts.
keybinder: Keybinder works with GTK-based applications using the X Window System.
keybinder:
-keybinder: Homepage: http://kaizer.se/wiki/keybinder/
+keybinder: Homepage: http://kaizer.se/wiki/keybinder/
keybinder:
keybinder:
keybinder:
diff --git a/source/l/keyutils/keyutils.SlackBuild b/source/l/keyutils/keyutils.SlackBuild
index 0b7641bbb..ab27b016c 100755
--- a/source/l/keyutils/keyutils.SlackBuild
+++ b/source/l/keyutils/keyutils.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=keyutils
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,6 +37,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -58,7 +67,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/keyutils/slack-desc b/source/l/keyutils/slack-desc
index 2091c5548..5b5029ff3 100644
--- a/source/l/keyutils/slack-desc
+++ b/source/l/keyutils/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -13,7 +13,7 @@ keyutils: Linux kernel key management facility and to provide a mechanism by
keyutils: which the kernel can call back to user space to get a key
keyutils: instantiated.
keyutils:
-keyutils: Homepage: http://people.redhat.com/~dhowells/keyutils/
+keyutils: Homepage: http://people.redhat.com/~dhowells/keyutils/
keyutils:
keyutils:
keyutils:
diff --git a/source/l/lame/lame.SlackBuild b/source/l/lame/lame.SlackBuild
new file mode 100755
index 000000000..b5d8048de
--- /dev/null
+++ b/source/l/lame/lame.SlackBuild
@@ -0,0 +1,162 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=lame
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/lame-$VERSION \
+ --htmldir=/usr/doc/lame-$VERSION/html \
+ --disable-static \
+ --enable-mp3rtp \
+ --enable-nasm \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Remove .la file:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Remove rpaths:
+for file in $(find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : 2> /dev/null) ; do
+ if [ ! "$(patchelf --print-rpath $file 2> /dev/null)" = "" ]; then
+ patchelf --remove-rpath $file
+ fi
+done
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ API COPYING* ChangeLog DEFINES HACKING INSTALL LICENSE* README* STYLEGUIDE TODO USAGE \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+# Apparently --docdir and --htmldir are ignored:
+if [ -d $PKG/usr/share/doc/lame/html ]; then
+ mv $PKG/usr/share/doc/lame/html $PKG/usr/doc/lame-$VERSION
+ rmdir $PKG/usr/share/doc/lame $PKG/usr/share/doc $PKG/usr/share
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/lame/slack-desc b/source/l/lame/slack-desc
new file mode 100644
index 000000000..bc2508b80
--- /dev/null
+++ b/source/l/lame/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+lame: lame (LAME is an MP3 audio encoder)
+lame:
+lame: LAME is a library and application which can be used to create
+lame: compressed MP3 audio files. These audio files can be played back by
+lame: popular MP3 players such as mpg123 or madplay.
+lame:
+lame: Homepage: http://lame.sourceforge.net
+lame:
+lame:
+lame:
+lame:
diff --git a/source/l/lcms/lcms.SlackBuild b/source/l/lcms/lcms.SlackBuild
index 398cf5129..002e31542 100755
--- a/source/l/lcms/lcms.SlackBuild
+++ b/source/l/lcms/lcms.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,24 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=lcms
VERSION=${VERSION:-$(echo lcms-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -50,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-lcms
@@ -60,7 +69,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf lcms-$VERSION
tar xvf $CWD/lcms-$VERSION.tar.?z* || exit 1
-cd lcms-$VERSION
+cd lcms-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -74,11 +83,14 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--enable-static=no \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/lcms/slack-desc b/source/l/lcms/slack-desc
index f06e2b578..f03de1673 100644
--- a/source/l/lcms/slack-desc
+++ b/source/l/lcms/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/lcms2/lcms2.SlackBuild b/source/l/lcms2/lcms2.SlackBuild
index aff2a28f6..60c9194d8 100755
--- a/source/l/lcms2/lcms2.SlackBuild
+++ b/source/l/lcms2/lcms2.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,10 @@
# Modified 2012 by Eric Hameleers <alien at slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=lcms2
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -41,6 +42,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -63,7 +72,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -72,8 +80,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -92,6 +100,9 @@ CFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/lcms2/slack-desc b/source/l/lcms2/slack-desc
index f283160a2..888ee8a47 100644
--- a/source/l/lcms2/slack-desc
+++ b/source/l/lcms2/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -12,7 +12,7 @@ lcms2: Little cms is a small, speed optimized color management engine.
lcms2:
lcms2: lcms was written by Marti Maria <marti@littlecms.com>.
lcms2:
-lcms2:
+lcms2: Homepage: http://www.littlecms.com
lcms2:
lcms2:
lcms2:
diff --git a/source/l/libaio/libaio-0.3.109.tar.sign b/source/l/libaio/libaio-0.3.109.tar.sign
deleted file mode 100644
index e9e6186e3..000000000
--- a/source/l/libaio/libaio-0.3.109.tar.sign
+++ /dev/null
@@ -1,8 +0,0 @@
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.9 (GNU/Linux)
-Comment: See http://www.kernel.org/signature.html for info
-
-iD8DBQBKz65OyGugalF9Dw4RAgZcAJwLPiBtx6k3XSh9KZf48MEjAssKYQCfZtuu
-5+ttTF5tbBlF0vt9GZdLEiQ=
-=IQ5R
------END PGP SIGNATURE-----
diff --git a/source/l/libaio/libaio.SlackBuild b/source/l/libaio/libaio.SlackBuild
index 4d6502013..14bccabdf 100755
--- a/source/l/libaio/libaio.SlackBuild
+++ b/source/l/libaio/libaio.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,21 +20,30 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libaio
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "x86_64" ]; then
@@ -43,7 +52,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -51,7 +59,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
cd ${PKGNAM}-$VERSION
# Make sure ownerships and permissions are sane:
diff --git a/source/l/libaio/libaio.url b/source/l/libaio/libaio.url
new file mode 100644
index 000000000..828f85cb2
--- /dev/null
+++ b/source/l/libaio/libaio.url
@@ -0,0 +1 @@
+http://releases.pagure.org/libaio/libaio-0.3.111.tar.gz
diff --git a/source/l/libaio/slack-desc b/source/l/libaio/slack-desc
index 68c90fe32..60d127f74 100644
--- a/source/l/libaio/slack-desc
+++ b/source/l/libaio/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ libaio: libaio (asynchronous I/O library)
libaio:
libaio: The Linux-native asynchronous I/O facility ("async I/O", or "aio")
libaio: has a richer API and capability set than the simple POSIX async I/O
-libaio: facility. This library provides the Linux-native API for async I/O.
+libaio: facility. This library provides the Linux-native API for async I/O.
libaio: The POSIX async I/O facility requires this library in order to
libaio: provide kernel-accelerated async I/O capabilities, as do applications
libaio: which require the Linux-native async I/O API.
diff --git a/source/l/libao/libao.SlackBuild b/source/l/libao/libao.SlackBuild
index 16ae9ab4c..33f91d902 100755
--- a/source/l/libao/libao.SlackBuild
+++ b/source/l/libao/libao.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libao
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -43,7 +44,19 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
+# If this package is being built for ALSA (no PulseAudio), use the _alsa $TAG:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-libao
@@ -51,8 +64,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf libao-$VERSION
-tar xvf $CWD/libao-$VERSION.tar.?z*
-cd libao-$VERSION
+tar xvf $CWD/libao-$VERSION.tar.?z* || exit 1
+cd libao-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -60,14 +73,19 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+./autogen.sh || exit 1
+
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -83,5 +101,5 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/libao-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/libao-$VERSION-$ARCH-$BUILD$TAG.txz
diff --git a/source/l/libao/slack-desc b/source/l/libao/slack-desc
index 7f52948c3..2c33695b3 100644
--- a/source/l/libao/slack-desc
+++ b/source/l/libao/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,8 +10,8 @@ libao: libao (Audio Output library)
libao:
libao: Libao is a cross-platform audio library, and is required by many
libao: programs and other libraries that use audio (some examples include
-libao: ogg123, GAIM, and the Ogg Vorbis libraries). This package provides
-libao: plugins for OSS, ESD, aRts, and ALSA. You will need to install the
+libao: ogg123, GAIM, and the Ogg Vorbis libraries). This package provides
+libao: plugins for OSS, ESD, aRts, and ALSA. You will need to install the
libao: supporting libraries for any plugins you want to use.
libao:
libao:
diff --git a/source/l/libarchive/libarchive.SlackBuild b/source/l/libarchive/libarchive.SlackBuild
index cddf74661..625f8b4de 100755
--- a/source/l/libarchive/libarchive.SlackBuild
+++ b/source/l/libarchive/libarchive.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Heinz Wiesinger <hmwiesinger@gmx.at>
-# Copyright 2008, 2009, 2010, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# Modified by Robby Workman <rworkman@slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libarchive
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -37,9 +39,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -84,6 +93,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libarchive/slack-desc b/source/l/libarchive/slack-desc
index b08c61b22..0292be162 100644
--- a/source/l/libarchive/slack-desc
+++ b/source/l/libarchive/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler--------------------------------------------------|
@@ -10,10 +10,10 @@ libarchive: libarchive (archive reading library)
libarchive:
libarchive: Libarchive is a programming library that can create and read
libarchive: several different streaming archive formats, including most
-libarchive: popular TAR variants and several CPIO formats. It can also
+libarchive: popular TAR variants and several CPIO formats. It can also
libarchive: write SHAR archives.
libarchive:
-libarchive: Homepage: http://libarchive.org
+libarchive: Homepage: http://libarchive.org
libarchive:
libarchive:
libarchive:
diff --git a/source/l/libart_lgpl/libart_lgpl.SlackBuild b/source/l/libart_lgpl/libart_lgpl.SlackBuild
index f7305f905..1e587ff83 100755
--- a/source/l/libart_lgpl/libart_lgpl.SlackBuild
+++ b/source/l/libart_lgpl/libart_lgpl.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libart_lgpl
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libart_lgpl
rm -rf $PKG
mkdir -p $TMP $PKG/usr
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -72,11 +80,14 @@ CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libart_lgpl/slack-desc b/source/l/libart_lgpl/slack-desc
index 90b613dda..6f406483c 100644
--- a/source/l/libart_lgpl/slack-desc
+++ b/source/l/libart_lgpl/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libart_lgpl: libart_lgpl (graphics library)
libart_lgpl:
-libart_lgpl: Libart is a library for high-performance 2D graphics. It is used by
-libart_lgpl: both KDE and GNOME. This is the LGPL'd component of the library.
+libart_lgpl: Libart is a library for high-performance 2D graphics. It is used by
+libart_lgpl: both KDE and GNOME. This is the LGPL'd component of the library.
libart_lgpl:
libart_lgpl: Raph Levien <raph@acm.org> is the author of libart.
libart_lgpl:
diff --git a/source/l/libasyncns/libasyncns.SlackBuild b/source/l/libasyncns/libasyncns.SlackBuild
index 9dfbbf12a..074a0387f 100755
--- a/source/l/libasyncns/libasyncns.SlackBuild
+++ b/source/l/libasyncns/libasyncns.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libasyncns
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,9 +25,11 @@
# Originally written by crocket (crockabiscuit@gmail.com)
# Modified by Christoph Willing <chris.willing@iinet.net.au>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libasyncns
VERSION=$(ls libasyncns-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -43,6 +45,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -57,7 +67,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -92,6 +101,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/libasyncns/slack-desc b/source/l/libasyncns/slack-desc
index ce59d41bf..34b841f4b 100644
--- a/source/l/libasyncns/slack-desc
+++ b/source/l/libasyncns/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -12,7 +12,7 @@ libasyncns: libasyncns is a C library for asynchronous name queries.
libasyncns: It is an asynchronous wrapper around the libc's synchronous
libasyncns: getaddrinfo() API.
libasyncns:
-libasyncns: Website: http://0pointer.de/lennart/projects/libasyncns
+libasyncns: Website: http://0pointer.de/lennart/projects/libasyncns
libasyncns:
libasyncns:
libasyncns:
diff --git a/source/l/libatasmart/libatasmart.SlackBuild b/source/l/libatasmart/libatasmart.SlackBuild
index 0b6b3e61c..2c052c903 100755
--- a/source/l/libatasmart/libatasmart.SlackBuild
+++ b/source/l/libatasmart/libatasmart.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libatasmart
@@ -24,9 +24,11 @@
# Modified 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libatasmart
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j7}
@@ -42,6 +44,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -64,7 +74,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -96,6 +105,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS docdir=/usr/doc/$PKGNAM-$VERSION || make docdir=/usr/doc/$PKGNAM-$VERSION || exit 1
make install docdir=/usr/doc/$PKGNAM-$VERSION DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/libatasmart/slack-desc b/source/l/libatasmart/slack-desc
index 44a160949..e916fc1dc 100644
--- a/source/l/libatasmart/slack-desc
+++ b/source/l/libatasmart/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ libatasmart: libatasmart (ATA S.M.A.R.T. library)
libatasmart:
libatasmart: libatasmart is a lean, small and clean implementation of an ATA
libatasmart: S.M.A.R.T. ((Self-Monitoring, Analysis and Reporting Technology)
-libatasmart: reading and parsing library. S.M.A.R.T. is a system used by hard
+libatasmart: reading and parsing library. S.M.A.R.T. is a system used by hard
libatasmart: drives to monitor factors that may impact drive reliability in the
libatasmart: hope of predicting a drive failure before it occurs.
libatasmart:
diff --git a/source/l/libbluedevil/libbluedevil.SlackBuild b/source/l/libbluedevil/libbluedevil.SlackBuild
index 402e1c903..ae3303ba5 100755
--- a/source/l/libbluedevil/libbluedevil.SlackBuild
+++ b/source/l/libbluedevil/libbluedevil.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2011, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libbluedevil
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -32,7 +33,7 @@ NUMJOBS=${NUMJOBS:-" -j7 "}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -40,8 +41,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -57,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
diff --git a/source/l/libbluedevil/slack-desc b/source/l/libbluedevil/slack-desc
index b1aef4b1d..012f3d9ea 100644
--- a/source/l/libbluedevil/slack-desc
+++ b/source/l/libbluedevil/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libbluray/libbluray.SlackBuild b/source/l/libbluray/libbluray.SlackBuild
new file mode 100755
index 000000000..057c8d283
--- /dev/null
+++ b/source/l/libbluray/libbluray.SlackBuild
@@ -0,0 +1,118 @@
+#!/bin/bash
+
+# Slackware build script for libbluray
+
+# Copyright 2011-2016 Larry Hajali <larryhaja[at]gmail[dot]com>
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libbluray
+VERSION=${VERSION:-$(echo libbluray-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d- | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:--j6}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --disable-silent-rules \
+ --enable-static=no \
+ --enable-udf \
+ --enable-bdjava \
+ --disable-bdjava-jar \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ ChangeLog COPYING* README* \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libbluray/slack-desc b/source/l/libbluray/slack-desc
new file mode 100644
index 000000000..d22c5bc2c
--- /dev/null
+++ b/source/l/libbluray/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libbluray: libbluray (Blu-Ray Disc playback library)
+libbluray:
+libbluray: libbluray is an open-source library designed for Blu-Ray Discs
+libbluray: playback for media players, like VLC or MPlayer.
+libbluray:
+libbluray: Homepage: http://www.videolan.org/developers/libbluray.html
+libbluray:
+libbluray:
+libbluray:
+libbluray:
+libbluray:
diff --git a/source/l/libcaca/libcaca.SlackBuild b/source/l/libcaca/libcaca.SlackBuild
index 709c61c00..c2accaa3a 100755
--- a/source/l/libcaca/libcaca.SlackBuild
+++ b/source/l/libcaca/libcaca.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcaca
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -60,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -79,17 +87,28 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--program-prefix= \
--program-suffix= \
+ --disable-doc \
--disable-imlib2 \
--disable-ruby \
+ --disable-python \
+ --disable-static \
--enable-slang \
--enable-ncurses \
--enable-x11 \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+cd python
+ python setup.py install --root=$PKG || exit 1
+ python3 setup.py install --root=$PKG || exit 1
+cd -
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libcaca/slack-desc b/source/l/libcaca/slack-desc
index 03c370b0f..1040c448e 100644
--- a/source/l/libcaca/slack-desc
+++ b/source/l/libcaca/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libcanberra/libcanberra.SlackBuild b/source/l/libcanberra/libcanberra.SlackBuild
index 7eb5df563..15e5a5b5e 100755
--- a/source/l/libcanberra/libcanberra.SlackBuild
+++ b/source/l/libcanberra/libcanberra.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libcanberra
@@ -22,10 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcanberra
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-6}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +38,6 @@ fi
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -55,6 +55,19 @@ else
LIBDIRSUFFIX=""
fi
+# If this package is being built for ALSA (no PulseAudio), use the _alsa $TAG:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
@@ -106,4 +119,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz
diff --git a/source/l/libcanberra/slack-desc b/source/l/libcanberra/slack-desc
index 7c954b7c6..caa4c7bcb 100644
--- a/source/l/libcanberra/slack-desc
+++ b/source/l/libcanberra/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libcap-ng/libcap-ng.SlackBuild b/source/l/libcap-ng/libcap-ng.SlackBuild
index 7eaa26fb0..d84bb3edc 100755
--- a/source/l/libcap-ng/libcap-ng.SlackBuild
+++ b/source/l/libcap-ng/libcap-ng.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2016, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcap-ng
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,6 +37,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -58,7 +67,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -77,6 +85,11 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Fix byte-compiling python3 bindings
+zcat $CWD/python3.patch.gz | patch -p1 --verbose || exit 1
+
+autoreconf -vif
+
# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
@@ -87,7 +100,7 @@ CFLAGS="$SLKCFLAGS" \
--infodir=/usr/info \
--disable-static \
--with-python \
- --without-python3 \
+ --with-python3 \
--build=$ARCH-slackware-linux || exit 1
# Build and install:
diff --git a/source/l/libcap-ng/python3.patch b/source/l/libcap-ng/python3.patch
new file mode 100644
index 000000000..cf26fe5de
--- /dev/null
+++ b/source/l/libcap-ng/python3.patch
@@ -0,0 +1,12 @@
+diff -ur libcap-ng-0.7.8.orig/bindings/python3/Makefile.am libcap-ng-0.7.8/bindings/python3/Makefile.am
+--- libcap-ng-0.7.8.orig/bindings/python3/Makefile.am 2016-07-24 17:47:34.000000000 +0200
++++ libcap-ng-0.7.8/bindings/python3/Makefile.am 2017-06-24 16:32:53.957501204 +0200
+@@ -26,6 +26,8 @@
+ LIBS = ${top_builddir}/src/libcap-ng.la
+ SWIG_FLAGS = -python -py3 -modern
+ SWIG_INCLUDES = ${AM_CPPFLAGS}
++# REMOVE SOMEDAY - without overriding this macro, it uses python2
++am__py_compile = PYTHON=$(PYTHON3) $(SHELL) $(py_compile)
+ py3exec_PYTHON = capng.py
+ py3exec_LTLIBRARIES = _capng.la
+ py3exec_SOLIBRARIES = _capng.so
diff --git a/source/l/libcap-ng/slack-desc b/source/l/libcap-ng/slack-desc
index 711b83478..770572756 100644
--- a/source/l/libcap-ng/slack-desc
+++ b/source/l/libcap-ng/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler---------------------------------------------------|
libcap-ng: libcap-ng (capabilities library and utilities)
libcap-ng:
libcap-ng: The libcap-ng library is intended to make programming with POSIX
-libcap-ng: capabilities easier. The package also includes utilities to help
+libcap-ng: capabilities easier. The package also includes utilities to help
libcap-ng: analyze a system for programs that may have too much privilege.
libcap-ng:
libcap-ng: libcap-ng was written and is maintained by Steve Grubb.
libcap-ng:
-libcap-ng: Homepage: https://people.redhat.com/sgrubb/libcap-ng/
+libcap-ng: Homepage: https://people.redhat.com/sgrubb/libcap-ng/
libcap-ng:
libcap-ng:
diff --git a/source/l/libcap/libcap-2.22.tar.bz2.sign b/source/l/libcap/libcap-2.22.tar.bz2.sign
deleted file mode 100644
index 31eaad16a..000000000
--- a/source/l/libcap/libcap-2.22.tar.bz2.sign
+++ /dev/null
@@ -1,8 +0,0 @@
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.11 (GNU/Linux)
-Comment: See http://www.kernel.org/signature.html for info
-
-iD8DBQBOLVY5yGugalF9Dw4RApFNAJwKUXnGMy+1QbBXJJAY9nCIPEVO5ACfcdWO
-vSlbjNX9WvZ99amrBhK6sag=
-=v2dJ
------END PGP SIGNATURE-----
diff --git a/source/l/libcap/libcap-2.25.tar.sign b/source/l/libcap/libcap-2.25.tar.sign
new file mode 100644
index 000000000..957c98057
--- /dev/null
+++ b/source/l/libcap/libcap-2.25.tar.sign
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1
+
+iQIcBAABAgAGBQJWrWCGAAoJECnuhIrizPP0pZwQAKGGoWQzqwrt83meQQGTwkf5
+rLisKVIwRv1kukno2slgA2oBCLJkC/d8nV35JIVfbwcH5oTCk+5NzwK4WeqdYxaH
+s/F0Dz4+VoSF5jDbOh3FSuF7+YggGu/Gm3umN7BXVmTxHtwGXyJh8Gz0Lndk4g7/
+0EFD/bxQxk2QTH1fd0RAq+vJXtdTLc2ebrrnTosr21WkGANGh8bAVsZdUe6XrOFz
+w9/aUeuwa5cJKE2wGKv56o8Ir3+G5aEBZxPKMly4sOAb7mn1LSb75lTkHE2G7B8/
+OWV0veZ7573oujhCyX1Dp9xP4tS3W4R9lwCPx+3LE6gmYnHKw9Sf5ZZKiU1TRsqH
+W+/EKcklU1dqAPgT7Gcnauibc4LuOWtXgtOng1ngC5l05QQPh3fxPYddjU0lEicD
+dp8XdAE/li9CRqALIR2U7tTgnJ/XokvTYT/NzHQHPY+FSMMhCKSAjrbKeOCtd8QK
+fNAInCdJtVS0NvSQ3aK5b2cHtKrfyEM3PHuS0Ri/wQHVEXMsP44pS2sEESjM0G4a
+OLs1/7RFLopVDZalUdY7pFIlyF2e9K3VfGW4y+pdhHVnBPSmkqilc52qRzoM0sjC
+JyFyXXf+AtpdYignX0X3w3igCDUDV46LX2cF2iha8lZYDSsiuzoq0YoJq9fs7y6o
+W0KYgi8F4+UArQCczuft
+=P54Y
+-----END PGP SIGNATURE-----
diff --git a/source/l/libcap/libcap.SlackBuild b/source/l/libcap/libcap.SlackBuild
index 796da7784..1439dabfa 100755
--- a/source/l/libcap/libcap.SlackBuild
+++ b/source/l/libcap/libcap.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,25 +22,34 @@
# Originally written by Menno Duursma
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcap
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.bz2 | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -56,7 +65,6 @@ elif [ "$ARCH" = "armel" ]; then
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -64,7 +72,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.bz2 || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
cd $PKGNAM-$VERSION || exit 1
zcat $CWD/libcap.capability.h.fix.broken.includes.diff.gz | patch -p1 || exit 1
@@ -79,6 +87,10 @@ find . \
# Set the CFLAGS
sed -i.orig "s/^\(DEBUG =\).*/\1$SLKCFLAGS/" Make.Rules
+# Disable broken gperf support:
+sed 's@^BUILD_GPERF@#\0@' -i Make.Rules
+
+
make DYNAMIC=yes $NUMJOBS || make DYNAMIC=yes || exit 1
make install FAKEROOT=$PKG man_prefix=/usr || exit 1
chmod 755 $PKG/lib${LIBDIRSUFFIX}/libcap.so*
diff --git a/source/l/libcap/slack-desc b/source/l/libcap/slack-desc
index 018686355..3ca7fc374 100644
--- a/source/l/libcap/slack-desc
+++ b/source/l/libcap/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libcddb/libcddb.SlackBuild b/source/l/libcddb/libcddb.SlackBuild
index 7a32fe9ce..54e37b990 100755
--- a/source/l/libcddb/libcddb.SlackBuild
+++ b/source/l/libcddb/libcddb.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcddb
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-5}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,8 +67,8 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -77,12 +85,15 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libcddb/slack-desc b/source/l/libcddb/slack-desc
index 7e437d016..8a32b7acc 100644
--- a/source/l/libcddb/slack-desc
+++ b/source/l/libcddb/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ libcddb:
libcddb: Libcddb is a library that implements the different protocols (CDDBP,
libcddb: HTTP, SMTP) to access data on a CDDB server (http://freedb.org).
libcddb:
-libcddb: Visit the project at: http://libcddb.sourceforge.net/
+libcddb: Visit the project at: http://libcddb.sourceforge.net/
libcddb:
libcddb:
libcddb:
diff --git a/source/l/libcdio-paranoia/libcdio-paranoia.SlackBuild b/source/l/libcdio-paranoia/libcdio-paranoia.SlackBuild
index 667b4fab3..0d6522369 100755
--- a/source/l/libcdio-paranoia/libcdio-paranoia.SlackBuild
+++ b/source/l/libcdio-paranoia/libcdio-paranoia.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libcdio-paranoia
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j7}
@@ -31,7 +33,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -39,8 +41,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -56,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libcdio-paranoia
@@ -82,11 +91,14 @@ CXXFLAGS="$SLKCFLAGS" \
--disable-static \
--disable-silent-rules \
--disable-example-progs \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -107,7 +119,7 @@ fi
mkdir -p $PKG/usr/doc/libcdio-paranoia-$VERSION
cp -a \
- AUTHORS ChangeLog COPYING INSTALL NEWS README TODO \
+ AUTHORS* ChangeLog COPYING* INSTALL NEWS* README* TODO* \
$PKG/usr/doc/libcdio-paranoia-$VERSION
mkdir -p $PKG/install
diff --git a/source/l/libcdio-paranoia/slack-desc b/source/l/libcdio-paranoia/slack-desc
index f575233cf..b140a02ea 100644
--- a/source/l/libcdio-paranoia/slack-desc
+++ b/source/l/libcdio-paranoia/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libcdio/libcdio.SlackBuild b/source/l/libcdio/libcdio.SlackBuild
index ebccf1d1b..46fa921f7 100755
--- a/source/l/libcdio/libcdio.SlackBuild
+++ b/source/l/libcdio/libcdio.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,27 +20,35 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libcdio
-VERSION=${VERSION:-$(echo $(basename $(echo $PKGNAM-*.tar.xz | cut -f 2 -d -) .tar.xz) | cut -f 2 -d -)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -57,7 +65,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.xz || exit 1
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
cd ${PKGNAM}-$VERSION
# Make sure ownerships and permissions are sane:
@@ -83,6 +91,9 @@ CFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libcdio/libcdio.url b/source/l/libcdio/libcdio.url
deleted file mode 100644
index e28aefe43..000000000
--- a/source/l/libcdio/libcdio.url
+++ /dev/null
@@ -1 +0,0 @@
-http://ftp.gnu.org/gnu/libcdio/
diff --git a/source/l/libcdio/slack-desc b/source/l/libcdio/slack-desc
index 3f1ccc5d4..eacb07b04 100644
--- a/source/l/libcdio/slack-desc
+++ b/source/l/libcdio/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,8 +11,8 @@ libcdio:
libcdio: The libcdio package contains a library for CD-ROM and CD image access.
libcdio: Applications wishing to be oblivious of the OS and device-dependent
libcdio: properties of a CD-ROM or of the specific details of various CD-image
-libcdio: formats may benefit from using this library. A library for working
-libcdio: with ISO-9660 filesystems libiso9660 is included. A generic interface
+libcdio: formats may benefit from using this library. A library for working
+libcdio: with ISO-9660 filesystems libiso9660 is included. A generic interface
libcdio: for issuing MMC (multimedia commands) is also part of the libcdio
libcdio: library.
libcdio:
diff --git a/source/l/libclc/fetch-libclc.sh b/source/l/libclc/fetch-libclc.sh
new file mode 100755
index 000000000..21842d4e9
--- /dev/null
+++ b/source/l/libclc/fetch-libclc.sh
@@ -0,0 +1,47 @@
+#!/bin/sh
+
+# Copyright 2017 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Pull a stable branch + patches
+BRANCH=${1:-master}
+
+# Clear download area:
+rm -rf libclc
+
+# Clone repository:
+git clone http://llvm.org/git/libclc.git
+
+# checkout $BRANCH:
+( cd libclc
+ git checkout $BRANCH || exit 1
+)
+
+HEADISAT="$( cd libclc && git log -1 --format=%h )"
+DATE="$( cd libclc && git log -1 --format=%ad --date=format:%Y%m%d )"
+# Cleanup. We're not packing up the whole git repo.
+( cd libclc && find . -type d -name ".git*" -exec rm -rf {} \; 2> /dev/null )
+mv libclc libclc-${DATE}_${HEADISAT}
+tar cf libclc-${DATE}_${HEADISAT}.tar libclc-${DATE}_${HEADISAT}
+xz -9 -f libclc-${DATE}_${HEADISAT}.tar
+rm -rf libclc-${DATE}_${HEADISAT}
+echo
+echo "libclc branch $BRANCH with HEAD at $HEADISAT packaged as libclc-${DATE}_${HEADISAT}.tar.xz"
+echo
diff --git a/source/l/libmsn/libmsn.SlackBuild b/source/l/libclc/libclc.SlackBuild
index 2689d910c..22fd8f508 100755
--- a/source/l/libmsn/libmsn.SlackBuild
+++ b/source/l/libclc/libclc.SlackBuild
@@ -1,17 +1,18 @@
-#!/bin/sh
+#!/bin/bash
-# Slackware build script for libmsn
+# Slackware build script for libclc
-# Copyright 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2016 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
-
+#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
@@ -22,7 +23,9 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-PKGNAM=libmsn
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libclc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
@@ -32,7 +35,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -40,8 +43,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -57,48 +68,39 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
+PKG=$TMP/package-libclc
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.bz2 || exit 1
-cd $PKGNAM-$VERSION || exit 1
-
-zcat $CWD/libmsn.gcc47.diff.gz | patch -p1 --verbose || exit 1
-
+rm -rf libclc-$VERSION
+tar xvf $CWD/libclc-$VERSION.tar.?z* || exit 1
+cd libclc-$VERSION || exit 1
chown -R root:root .
find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
- ..
- make $NUMJOBS || make || exit 1
- make install DESTDIR=$PKG || exit 1
-cd ..
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" \
- | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS -D__extern_always_inline=inline" \
+./configure.py \
+ --prefix=/usr \
+ --libexecdir=/usr/lib$LIBDIRSUFFIX/clc/ \
+ --pkgconfigdir=/usr/lib$LIBDIRSUFFIX/pkgconfig/ || exit 1
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a COPYING README THANKS TODO doc/OVERVIEW $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.TXT $PKG/usr/doc/$PKGNAM-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION |tr - _)-$ARCH-$BUILD.txz
-
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libclc/slack-desc b/source/l/libclc/slack-desc
new file mode 100644
index 000000000..12a032243
--- /dev/null
+++ b/source/l/libclc/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libclc: libclc (OpenCL 1.1 libraries)
+libclc:
+libclc: libclc is an open source, BSD/MIT dual licensed implementation of the
+libclc: library requirements of the OpenCL C programming language, as
+libclc: specified by the OpenCL 1.1 Specification.
+libclc:
+libclc: Homepage: http://libclc.llvm.org/
+libclc:
+libclc:
+libclc:
+libclc:
diff --git a/source/l/libcroco/898e3a8c8c03.patch b/source/l/libcroco/898e3a8c8c03.patch
new file mode 100644
index 000000000..b669339ce
--- /dev/null
+++ b/source/l/libcroco/898e3a8c8c03.patch
@@ -0,0 +1,58 @@
+From 898e3a8c8c0314d2e6b106809a8e3e93cf9d4394 Mon Sep 17 00:00:00 2001
+From: Ignacio Casal Quinteiro <qignacio@amazon.com>
+Date: Sun, 16 Apr 2017 13:13:43 +0200
+Subject: input: check end of input before reading a byte
+
+When reading bytes we weren't check that the index wasn't
+out of bound and this could produce an invalid read which
+could deal to a security bug.
+---
+ src/cr-input.c | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/src/cr-input.c b/src/cr-input.c
+index 49000b1..3b63a88 100644
+--- a/src/cr-input.c
++++ b/src/cr-input.c
+@@ -256,7 +256,7 @@ cr_input_new_from_uri (const gchar * a_file_uri, enum CREncoding a_enc)
+ *we should free buf here because it's own by CRInput.
+ *(see the last parameter of cr_input_new_from_buf().
+ */
+- buf = NULL ;
++ buf = NULL;
+ }
+
+ cleanup:
+@@ -404,6 +404,8 @@ cr_input_get_nb_bytes_left (CRInput const * a_this)
+ enum CRStatus
+ cr_input_read_byte (CRInput * a_this, guchar * a_byte)
+ {
++ gulong nb_bytes_left = 0;
++
+ g_return_val_if_fail (a_this && PRIVATE (a_this)
+ && a_byte, CR_BAD_PARAM_ERROR);
+
+@@ -413,6 +415,12 @@ cr_input_read_byte (CRInput * a_this, guchar * a_byte)
+ if (PRIVATE (a_this)->end_of_input == TRUE)
+ return CR_END_OF_INPUT_ERROR;
+
++ nb_bytes_left = cr_input_get_nb_bytes_left (a_this);
++
++ if (nb_bytes_left < 1) {
++ return CR_END_OF_INPUT_ERROR;
++ }
++
+ *a_byte = PRIVATE (a_this)->in_buf[PRIVATE (a_this)->next_byte_index];
+
+ if (PRIVATE (a_this)->nb_bytes -
+@@ -477,7 +485,6 @@ cr_input_read_char (CRInput * a_this, guint32 * a_char)
+ if (*a_char == '\n') {
+ PRIVATE (a_this)->end_of_line = TRUE;
+ }
+-
+ }
+
+ return status;
+--
+cgit v0.12
+
diff --git a/source/l/libcroco/libcroco.SlackBuild b/source/l/libcroco/libcroco.SlackBuild
index d5a1fcba9..bd02392c7 100755
--- a/source/l/libcroco/libcroco.SlackBuild
+++ b/source/l/libcroco/libcroco.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libcroco
-# Copyright 2012,2013,2015 Robby Workman, Tuscaloosa, Alabama, USA
+# Copyright 2012, 2013, 2015 Robby Workman, Tuscaloosa, Alabama, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libcroco
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,7 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -58,8 +69,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz
-cd $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -67,6 +78,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# https://blogs.gentoo.org/ago/2017/04/17/libcroco-heap-overflow-and-undefined-behavior/
+patch -p1 --verbose < $CWD/898e3a8c8c03.patch || exit 1
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -76,10 +90,13 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
-make
-make install DESTDIR=$PKG
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/libcroco/slack-desc b/source/l/libcroco/slack-desc
index eabe8cfd2..0e0ad8cad 100644
--- a/source/l/libcroco/slack-desc
+++ b/source/l/libcroco/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild b/source/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild
index ccd77d037..04d87c652 100755
--- a/source/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild
+++ b/source/l/libdbusmenu-qt/libdbusmenu-qt.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2010, 2011, 2012 Eric Hameleers, Eindhoven, The Netherlands
-# Copyright 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -21,6 +21,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
# Pull this package from git due to some copyright related
# problems going on at Canonical...
@@ -31,7 +32,7 @@
PKGNAM=libdbusmenu-qt
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j7}
@@ -39,7 +40,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -47,8 +48,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -61,7 +70,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/libdbusmenu-qt/slack-desc b/source/l/libdbusmenu-qt/slack-desc
index 6e72c25f0..42029d657 100644
--- a/source/l/libdbusmenu-qt/slack-desc
+++ b/source/l/libdbusmenu-qt/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
@@ -12,7 +12,7 @@ libdbusmenu-qt: This library provides a Qt implementation of the DBusMenu protoc
libdbusmenu-qt: The DBusMenu protocol makes it possible for applications to export
libdbusmenu-qt: and import their menus over DBus.
libdbusmenu-qt:
-libdbusmenu-qt: Homepage: http://people.canonical.com/~agateau/dbusmenu/
+libdbusmenu-qt: Homepage: http://people.canonical.com/~agateau/dbusmenu/
libdbusmenu-qt:
libdbusmenu-qt:
libdbusmenu-qt:
diff --git a/source/l/libdiscid/libdiscid.SlackBuild b/source/l/libdiscid/libdiscid.SlackBuild
index 52e8310b5..d6c7b9b4a 100755
--- a/source/l/libdiscid/libdiscid.SlackBuild
+++ b/source/l/libdiscid/libdiscid.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Copyright 2010 Eric Hameleers, Eindhoven, NL
-# Copyright 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,12 +21,12 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libdiscid
-VERSION=${VERSION:-0.6.1}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
rm -rf $PKG
@@ -35,15 +35,23 @@ mkdir -p $TMP $PKG
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -77,7 +85,7 @@ cd build
-DCMAKE_INSTALL_PREFIX=/usr \
-DMAN_INSTALL_DIR=/usr/man \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- ..
+ .. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
cd -
diff --git a/source/l/libdiscid/slack-desc b/source/l/libdiscid/slack-desc
index d0455bdb5..6496b9811 100644
--- a/source/l/libdiscid/slack-desc
+++ b/source/l/libdiscid/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libdvdnav/libdvdnav.SlackBuild b/source/l/libdvdnav/libdvdnav.SlackBuild
index 362d09ad5..729772baa 100755
--- a/source/l/libdvdnav/libdvdnav.SlackBuild
+++ b/source/l/libdvdnav/libdvdnav.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libdvdnav
# Copyright 2007-2015 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,24 +23,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libdvdnav
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -53,7 +63,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -61,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -79,11 +88,14 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
AUTHORS ChangeLog COPYING* README* TODO \
diff --git a/source/l/libdvdnav/slack-desc b/source/l/libdvdnav/slack-desc
index a3ab05694..59fd6a4f5 100644
--- a/source/l/libdvdnav/slack-desc
+++ b/source/l/libdvdnav/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -12,7 +12,7 @@ libdvdnav: This is mplayer's fork of libdvdnav. libdvdnav is a library that
libdvdnav: allows easy use of sophisticated DVD navigation features such as
libdvdnav: DVD menus, multiangle playback, and even interactive DVD games.
libdvdnav:
-libdvdnav: Homepage: http://www.mplayerhq.hu/design7/news.html
+libdvdnav: Homepage: https://www.videolan.org/developers/libdvdnav.html
libdvdnav:
libdvdnav:
libdvdnav:
diff --git a/source/l/libdvdread/libdvdread.SlackBuild b/source/l/libdvdread/libdvdread.SlackBuild
index 97ab7f714..4fd0204aa 100755
--- a/source/l/libdvdread/libdvdread.SlackBuild
+++ b/source/l/libdvdread/libdvdread.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012, 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libdvdread
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -59,7 +67,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -76,13 +84,17 @@ CXXFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
--build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux
+ --host=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
AUTHORS COPYING* NEWS README* TODO \
diff --git a/source/l/libdvdread/libdvdread.url b/source/l/libdvdread/libdvdread.url
new file mode 100644
index 000000000..87af4f743
--- /dev/null
+++ b/source/l/libdvdread/libdvdread.url
@@ -0,0 +1 @@
+http://download.videolan.org/pub/videolan/libdvdread/
diff --git a/source/l/libdvdread/slack-desc b/source/l/libdvdread/slack-desc
index d1ddba952..d6c1b1503 100644
--- a/source/l/libdvdread/slack-desc
+++ b/source/l/libdvdread/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libdvdread: libdvdread (library for reading DVDs)
libdvdread:
libdvdread: libdvdread provides a simple foundation for reading DVD video
-libdvdread: disks. It provides the functionality that is required to access
-libdvdread: many DVDs. It parses IFO files, reads NAV-blocks, and performs
+libdvdread: disks. It provides the functionality that is required to access
+libdvdread: many DVDs. It parses IFO files, reads NAV-blocks, and performs
libdvdread: CSS authentication and descrambling.
libdvdread:
libdvdread:
diff --git a/source/l/libedit/libedit.SlackBuild b/source/l/libedit/libedit.SlackBuild
new file mode 100755
index 000000000..33735a069
--- /dev/null
+++ b/source/l/libedit/libedit.SlackBuild
@@ -0,0 +1,127 @@
+#!/bin/bash
+
+# Slackware build script for libedit
+
+# Copyright 2011 Mikko Värri, Finland
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libedit
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1-2 -d - | rev)}
+PKGVER=$(echo $VERSION | tr - _)
+BUILD=${BUILD:-2}
+
+NUMJOBS=${NUMJOBS:--j7}
+
+# Automatically determine the architecture we're building on:
+MARCH=$( uname -m )
+if [ -z "$ARCH" ]; then
+ case "$MARCH" in
+ i?86) export ARCH=i586 ;;
+ armv7hl) export ARCH=$MARCH ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$MARCH ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$PKGVER-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-libedit
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf libedit-$VERSION
+tar xvf $CWD/libedit-$VERSION.tar.?z* || exit 1
+cd libedit-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --disable-static \
+ --enable-widec \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install-strip DESTDIR=$PKG || exit 1
+
+# Remove files conflicting with readline
+rm -f $PKG/usr/man/man3/history.3*
+
+# No more .la files! (or wire hangers)
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$PKGVER
+cp -a COPYING ChangeLog INSTALL THANKS \
+ $PKG/usr/doc/$PKGNAM-$PKGVER
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$PKGVER-$ARCH-$BUILD.txz
diff --git a/source/l/libedit/slack-desc b/source/l/libedit/slack-desc
new file mode 100644
index 000000000..4001e5327
--- /dev/null
+++ b/source/l/libedit/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libedit: libedit (Command line editor library)
+libedit:
+libedit: This is an autotool and libtoolized port of the NetBSD Editline
+libedit: library (libedit). This Berkeley-style licensed command line editor
+libedit: library provides generic line editing, history, and tokenization
+libedit: functions, similar to those found in GNU Readline.
+libedit:
+libedit: Homepage: http://www.thrysoee.dk/editline/
+libedit:
+libedit:
+libedit:
diff --git a/source/l/libevent/libevent.SlackBuild b/source/l/libevent/libevent.SlackBuild
index 027283815..ad7e00b97 100755
--- a/source/l/libevent/libevent.SlackBuild
+++ b/source/l/libevent/libevent.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2013, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2013, 2016, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libevent
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | cut -f 2 -d -)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,6 +37,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -58,7 +67,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -86,7 +94,7 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--infodir=/usr/info \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
diff --git a/source/l/libevent/slack-desc b/source/l/libevent/slack-desc
index 78604b843..e4a9a7ea1 100644
--- a/source/l/libevent/slack-desc
+++ b/source/l/libevent/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libevent: libevent (event loop library)
libevent:
libevent: libevent is meant to replace the event loop found in event driven
-libevent: network servers. An application just needs to call event_dispatch()
+libevent: network servers. An application just needs to call event_dispatch()
libevent: and then add or remove events dynamically without having to change the
-libevent: event loop. The libevent API provides a mechanism to execute a
+libevent: event loop. The libevent API provides a mechanism to execute a
libevent: callback function when a specific event occurs on a file descriptor or
libevent: after a timeout has been reached.
libevent:
-libevent: Homepage: http://libevent.org
+libevent: Homepage: http://libevent.org
libevent:
diff --git a/source/l/libexif/libexif.SlackBuild b/source/l/libexif/libexif.SlackBuild
index 83e24c4ae..2a9980f74 100755
--- a/source/l/libexif/libexif.SlackBuild
+++ b/source/l/libexif/libexif.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,24 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=libexif
VERSION=${VERSION:-$(echo libexif-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -50,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libexif
@@ -59,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf libexif-$VERSION
tar xvf $CWD/libexif-$VERSION.tar.?z* || exit 1
-cd libexif-$VERSION
+cd libexif-$VERSION || exit 1
zcat $CWD/libexif.pc.diff.gz | patch -p1 --verbose || exit 1
chown -R root:root .
find . \
@@ -75,11 +84,14 @@ CFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--disable-static \
--localstatedir=/var/lib \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libexif/slack-desc b/source/l/libexif/slack-desc
index 992e1915d..ee12ae10c 100644
--- a/source/l/libexif/slack-desc
+++ b/source/l/libexif/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ libexif: libexif (Exchangeable Image File Format library)
libexif:
libexif: EXIF stands for Exchangeable Image File Format, which is a format used
libexif: to store extra information in images such as the JPEG files produced
-libexif: by digital cameras. The libexif library allows programs such as
+libexif: by digital cameras. The libexif library allows programs such as
libexif: gthumb to parse, edit, and save EXIF data.
libexif:
libexif:
diff --git a/source/l/libfakekey/libfakekey.SlackBuild b/source/l/libfakekey/libfakekey.SlackBuild
index aa3ab083c..e4a245bf2 100755
--- a/source/l/libfakekey/libfakekey.SlackBuild
+++ b/source/l/libfakekey/libfakekey.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2014 Eric Hameleers, Eindhoven, NL
-# Copyright 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,14 +21,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libfakekey
-VERSION=${VERSION:-0.1}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-0.3}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
@@ -36,12 +38,19 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
SLKLDFLAGS=""
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
@@ -80,6 +89,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+sh autogen.sh
+
# Configure:
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -88,12 +99,15 @@ LDFLAGS="$SLKLDFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--disable-static \
- --build=$TARGET
+ --build=$TARGET || exit 1
# Build and install:
make AM_LDFLAGS=-lX11 || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries (if any):
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/libfakekey/slack-desc b/source/l/libfakekey/slack-desc
index 0195f1818..6707ef523 100644
--- a/source/l/libfakekey/slack-desc
+++ b/source/l/libfakekey/slack-desc
@@ -2,18 +2,18 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
libfakekey: libfakekey (X Virtual Keyboard Library)
libfakekey:
libfakekey: X virtual keyboard library of the Matchbox WM project.
+libfakekey:
+libfakekey: Homepage: http://git.yoctoproject.org/cgit.cgi/libfakekey/
+libfakekey:
libfakekey:
libfakekey:
libfakekey:
libfakekey:
-libfakekey:
-libfakekey: See also:
-libfakekey: https://www.yoctoproject.org/tools-resources/projects/matchbox
libfakekey:
diff --git a/source/l/libffi/libffi.SlackBuild b/source/l/libffi/libffi.SlackBuild
index 1d92dbd04..5fd72314a 100755
--- a/source/l/libffi/libffi.SlackBuild
+++ b/source/l/libffi/libffi.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libffi
# Copyright 2011,2012 Robby Workman, Northport, Alabama, USA
-# Copyright 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2012, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,14 +23,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libffi
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
@@ -38,12 +40,19 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,7 +70,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
zcat $CWD/libffi.includedir.diff.gz | patch -p1 --verbose || exit 1
@@ -88,6 +97,9 @@ CXXFLAGS="$SLKCFLAGS" \
make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libffi/slack-desc b/source/l/libffi/slack-desc
index 8e8dd435d..2bb8d9b06 100644
--- a/source/l/libffi/slack-desc
+++ b/source/l/libffi/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
libffi: libffi (A Portable Foreign Function Interface Library)
libffi:
-libffi: FFI stands for Foreign Function Interface. A foreign function
+libffi: FFI stands for Foreign Function Interface. A foreign function
libffi: interface is the popular name for the interface that allows code
libffi: written in one language to call code written in another language.
libffi: The libffi library really only provides the lowest, machine dependent
-libffi: layer of a fully featured foreign function interface.
+libffi: layer of a fully featured foreign function interface.
libffi:
libffi: Homepage: http://sourceware.org/libffi/
libffi:
diff --git a/source/l/libglade/libglade.SlackBuild b/source/l/libglade/libglade.SlackBuild
index 3b8d5d401..9b6912a0b 100755
--- a/source/l/libglade/libglade.SlackBuild
+++ b/source/l/libglade/libglade.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,28 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=libglade
VERSION=${VERSION:-$(echo libglade-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+BUILD=${BUILD:-6}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libglade
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -77,15 +86,14 @@ CFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
# Hello! --enable-static=no seemed to mean something when ./configure ran...
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libglade*.a
-## [make that, we _wish_ these .la files _could_ go]
-## These .la files can go.
-#rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libglade*.la
-
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libglade/slack-desc b/source/l/libglade/slack-desc
index 0cd2cc418..4969d7029 100644
--- a/source/l/libglade/slack-desc
+++ b/source/l/libglade/slack-desc
@@ -1,16 +1,16 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libglade: libglade (GLADE library)
libglade:
libglade: The GLADE library allows loading user interfaces which are stored
-libglade: externally into a program. This allows the interface to be changed
-libglade: without recompiling the program. The interfaces can also be edited
+libglade: externally into a program. This allows the interface to be changed
+libglade: without recompiling the program. The interfaces can also be edited
libglade: with GLADE.
libglade:
libglade:
diff --git a/source/l/libgnome-keyring/libgnome-keyring.SlackBuild b/source/l/libgnome-keyring/libgnome-keyring.SlackBuild
index b46fa1d8b..6467eff2d 100755
--- a/source/l/libgnome-keyring/libgnome-keyring.SlackBuild
+++ b/source/l/libgnome-keyring/libgnome-keyring.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libgnome-keyring
@@ -22,26 +22,35 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libgnome-keyring
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/source/l/libgnome-keyring/slack-desc b/source/l/libgnome-keyring/slack-desc
index 1d759e20c..fc70dd673 100644
--- a/source/l/libgnome-keyring/slack-desc
+++ b/source/l/libgnome-keyring/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libgnome-keyring: libgnome-keyring (gnome-keyring library)
libgnome-keyring:
libgnome-keyring: gnome-keyring is a program that keep password and other secrets
-libgnome-keyring: for users. The library libgnome-keyring is used by applications
+libgnome-keyring: for users. The library libgnome-keyring is used by applications
libgnome-keyring: to integrate with the gnome keyring system.
libgnome-keyring:
libgnome-keyring:
diff --git a/source/l/libgphoto2/libgphoto2.SlackBuild b/source/l/libgphoto2/libgphoto2.SlackBuild
index ccfb26203..b998e7226 100755
--- a/source/l/libgphoto2/libgphoto2.SlackBuild
+++ b/source/l/libgphoto2/libgphoto2.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007-2008 Frank Caraballo <fecaraballo{at}gmail{dot}com>
-# Copyright 2009, 2010, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,9 +21,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libgphoto2
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -36,6 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -55,7 +64,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -63,8 +71,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -81,7 +89,7 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--with-doc-dir=/usr/doc/$PKGNAM-$VERSION \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
@@ -99,6 +107,9 @@ make \
utilsdir=/usr/bin \
install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -109,13 +120,13 @@ LD_LIBRARY_PATH=$PKG/usr/lib${LIBDIRSUFFIX}
CAMLIBS=$PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM/$VERSION
LIBDIR=$PKG/usr/lib${LIBDIRSUFFIX}
export LD_LIBRARY_PATH CAMLIBS LIBDIR
-# Generate udev rules -- for udev <= 200
+
+# Generate udev rules -- for udev >= 201
mkdir -p $PKG/lib/udev/rules.d
-$PKG/usr/bin/print-camera-list udev-rules version 175 mode 0660 owner root group plugdev \
+$PKG/usr/bin/print-camera-list udev-rules version 201 mode 0660 owner root group plugdev \
> $PKG/lib/udev/rules.d/40-libgphoto2.rules
-# For udev >= 201
mkdir -p $PKG/lib/udev/hwdb.d/
-$PKG/usr/bin/print-camera-list hwdb > $PKG/lib/udev/hwdb.d/20-gphoto.conf
+$PKG/usr/bin/print-camera-list hwdb > $PKG/lib/udev/hwdb.d/20-libgphoto2.hwdb
unset LD_LIBRARY_PATH CAMLIBS LIBDIR # Unset these just in case
# Compress and link manpages, if any:
diff --git a/source/l/libgphoto2/slack-desc b/source/l/libgphoto2/slack-desc
index dbc51e5c1..da031e491 100644
--- a/source/l/libgphoto2/slack-desc
+++ b/source/l/libgphoto2/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libgpod/libgpod.SlackBuild b/source/l/libgpod/libgpod.SlackBuild
index 7aec91fe9..fb34b23e3 100755
--- a/source/l/libgpod/libgpod.SlackBuild
+++ b/source/l/libgpod/libgpod.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libgpod
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-5}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -79,12 +87,15 @@ CFLAGS="$SLKCFLAGS" \
--without-hal \
--enable-udev \
--with-temp-mount-dir=/run/libgpod/ \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Hey ./configure, I wasn't joking:
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libgpod.a
diff --git a/source/l/libgpod/slack-desc b/source/l/libgpod/slack-desc
index b1ccdf4fe..8bdf0a5db 100644
--- a/source/l/libgpod/slack-desc
+++ b/source/l/libgpod/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -13,7 +13,7 @@ libgpod: to retrieve the list of files and playlist stored on an iPod, to
libgpod: modify them and to save them back to the iPod.
libgpod:
libgpod: If you decide to make improvements please contact us so we can work
-libgpod: together. Just drop a mail to: Gtkpod-devel@lists.sourceforge.net
+libgpod: together. Just drop a mail to: Gtkpod-devel@lists.sourceforge.net
libgpod: (you may ask to be CC in the answer).
libgpod:
libgpod:
diff --git a/source/l/libgsf/libgsf.SlackBuild b/source/l/libgsf/libgsf.SlackBuild
index 94b6d1800..36e38b4fd 100755
--- a/source/l/libgsf/libgsf.SlackBuild
+++ b/source/l/libgsf/libgsf.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libgsf
VERSION=${VERSION:-$(echo libgsf-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -37,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-libgsf
@@ -79,11 +87,14 @@ CFLAGS="$SLKCFLAGS" \
--disable-static \
--enable-introspection \
--with-bz2 \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# In the remote chance that any man page was installed, and to the
# requested directory too, then let's gzip it. Probably send the error
# output from this one to /dev/null, because gzip won't find anything.
diff --git a/source/l/libgsf/slack-desc b/source/l/libgsf/slack-desc
index a8775609d..80ecadbc8 100644
--- a/source/l/libgsf/slack-desc
+++ b/source/l/libgsf/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libical/libical.SlackBuild b/source/l/libical/libical.SlackBuild
index fa8185e70..9303bd5d7 100755
--- a/source/l/libical/libical.SlackBuild
+++ b/source/l/libical/libical.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Heinz Wiesinger <pprkut@liwjatan.at>
-# Copyright 2008, 2009, 2010, 2013, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2013, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libical
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,9 +37,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j7}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -68,8 +76,9 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -87,7 +96,7 @@ cmake \
-DSYSCONF_INSTALL_DIR=/etc \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DSHARED_ONLY:BOOL=true \
- ..
+ .. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
cd ..
diff --git a/source/l/libical/slack-desc b/source/l/libical/slack-desc
index c5aa71e55..25258e919 100644
--- a/source/l/libical/slack-desc
+++ b/source/l/libical/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
@@ -14,6 +14,6 @@ libical: 2447). It parses iCal components and provides C/C++/Python/Java APIs
libical: for manipulating the component properties, parameters, and
libical: subcomponents.
libical:
-libical: Homepage: https://github.com/libical/libical
+libical: Homepage: https://github.com/libical/libical
libical:
libical:
diff --git a/source/l/libid3tag/libid3tag.SlackBuild b/source/l/libid3tag/libid3tag.SlackBuild
index 30292f99c..cae0f93f0 100755
--- a/source/l/libid3tag/libid3tag.SlackBuild
+++ b/source/l/libid3tag/libid3tag.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libid3tag
VERSION=${VERSION:-0.15.1b}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-5}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.gz || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -81,12 +89,15 @@ CFLAGS="$SLKCFLAGS" \
--disable-debugging \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Someone, somewhere, decided that id3tag.pc was "missing", and
# now software is starting to think it's a standard feature.
# Bah!
diff --git a/source/l/libid3tag/slack-desc b/source/l/libid3tag/slack-desc
index 7906bbd9f..98c87268d 100644
--- a/source/l/libid3tag/slack-desc
+++ b/source/l/libid3tag/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libidl/libidl.SlackBuild b/source/l/libidl/libidl.SlackBuild
index e910a66ec..ac4a10a38 100755
--- a/source/l/libidl/libidl.SlackBuild
+++ b/source/l/libidl/libidl.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,28 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=libidl
VERSION=${VERSION:-$(echo libIDL-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libIDL
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf libIDL-$VERSION
tar xvf $CWD/libIDL-$VERSION.tar.?z* || exit 1
-cd libIDL-$VERSION
+cd libIDL-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -75,11 +84,14 @@ CFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--infodir=/usr/info \
--localstatedir=/var/lib \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*
diff --git a/source/l/libidl/slack-desc b/source/l/libidl/slack-desc
index fc753249c..1567183f6 100644
--- a/source/l/libidl/slack-desc
+++ b/source/l/libidl/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libidn/libidn.SlackBuild b/source/l/libidn/libidn.SlackBuild
index e272f2602..0748c86ec 100755
--- a/source/l/libidn/libidn.SlackBuild
+++ b/source/l/libidn/libidn.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libidn
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libidn
@@ -59,8 +67,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf libidn-$VERSION
-tar xvf $CWD/libidn-$VERSION.tar.?z* || exit 1
-cd libidn-$VERSION
+tar xvf $CWD/libidn-$VERSION.tar.?z || exit 1
+cd libidn-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -74,11 +82,15 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--infodir=/usr/info \
- --build=$ARCH-slackware-linux
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libidn/slack-desc b/source/l/libidn/slack-desc
index 99cca3a78..a10cfe7b5 100644
--- a/source/l/libidn/slack-desc
+++ b/source/l/libidn/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libmcs/libmcs.SlackBuild b/source/l/libidn2/libidn2.SlackBuild
index cb5d015f5..4c340b8e4 100755
--- a/source/l/libmcs/libmcs.SlackBuild
+++ b/source/l/libidn2/libidn2.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=libmcs
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+PKGNAM=libidn2
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.lz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,18 +60,15 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-${PKGNAM}
+PKG=$TMP/package-libidn2
+
rm -rf $PKG
mkdir -p $TMP $PKG
-
cd $TMP
-rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
-
-# Make sure ownerships and permissions are sane:
+rm -rf libidn2-$VERSION
+tar xvf $CWD/libidn2-$VERSION.tar.lz || exit 1
+cd libidn2-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -70,28 +76,34 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
--mandir=/usr/man \
- --disable-gconf \
- --disable-kconfig \
- --program-prefix= \
- --program-suffix= \
- --build=$ARCH-slackware-linux
+ --infodir=/usr/info \
+ --disable-static \
+ --disable-doc \
+ --build=$ARCH-slackware-linux || exit 1
+
+# --disable-doc due to requirement for ronn... maybe we'll end up adding
+# this at some point, but not today.
-# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
-# Strip binaries:
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-# Compress and link manpages, if any:
+# Get rid of any empty man pages:
+( cd $PKG/usr/man
+ find . -type f -size 0 -exec rm {} \;
+)
+
+# Compress and if needed symlink the man pages:
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
for manpagedir in $(find . -type d -name "man*") ; do
@@ -100,13 +112,13 @@ if [ -d $PKG/usr/man ]; then
ln -s $( readlink $eachpage ).gz $eachpage.gz
rm $eachpage
done
- gzip -9 *.*
+ gzip -9 *.?
)
done
)
fi
-# Compress info files, if any:
+# Compress info pages and purge "dir" file from the package:
if [ -d $PKG/usr/info ]; then
( cd $PKG/usr/info
rm -f dir
@@ -114,16 +126,23 @@ if [ -d $PKG/usr/info ]; then
)
fi
-# Add a documentation directory:
-mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+mkdir -p $PKG/usr/doc/libidn2-$VERSION
cp -a \
- AUTHORS COPYING* Mercurial-Access README* TODO \
- $PKG/usr/doc/${PKGNAM}-$VERSION
+ ABOUT-NLS AUTHORS CONTRIBUTING* COPYING* INSTALL NEWS* README* \
+ doc/libidn2.html \
+ $PKG/usr/doc/libidn2-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
mkdir -p $PKG/install
-#zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/libidn2-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libidn2/slack-desc b/source/l/libidn2/slack-desc
new file mode 100644
index 000000000..9c33fb492
--- /dev/null
+++ b/source/l/libidn2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libidn2: libidn2 (GNU Internationalized Domain Name library version 2)
+libidn2:
+libidn2: GNU Libidn is an implementation of the Stringprep, Punycode and IDNA
+libidn2: specifications defined by the IETF Internationalized Domain Names
+libidn2: (IDN) working group, used for internationalized domain names.
+libidn2:
+libidn2:
+libidn2:
+libidn2:
+libidn2:
+libidn2:
diff --git a/source/l/libieee1284/libieee1284.SlackBuild b/source/l/libieee1284/libieee1284.SlackBuild
index ce601a85b..53be6fe8f 100755
--- a/source/l/libieee1284/libieee1284.SlackBuild
+++ b/source/l/libieee1284/libieee1284.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libieee1284
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -79,12 +87,15 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libieee1284/slack-desc b/source/l/libieee1284/slack-desc
index 1f9d38bb5..a68a00503 100644
--- a/source/l/libieee1284/slack-desc
+++ b/source/l/libieee1284/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ libieee1284: libieee1284 (parallel port library)
libieee1284:
libieee1284: This library is intended to be used by applications that need to
libieee1284: communicate with (or at least identify) devices that are attached via
-libieee1284: a parallel port. For example, SANE uses it to identify scanners.
+libieee1284: a parallel port. For example, SANE uses it to identify scanners.
libieee1284:
libieee1284:
libieee1284:
diff --git a/source/l/libimobiledevice/02a0e03e24bc96bba2e5ea2438c30baf803fd137.patch b/source/l/libimobiledevice/02a0e03e24bc96bba2e5ea2438c30baf803fd137.patch
new file mode 100644
index 000000000..3fa0b1792
--- /dev/null
+++ b/source/l/libimobiledevice/02a0e03e24bc96bba2e5ea2438c30baf803fd137.patch
@@ -0,0 +1,89 @@
+From 02a0e03e24bc96bba2e5ea2438c30baf803fd137 Mon Sep 17 00:00:00 2001
+From: Christophe Fergeau <cfergeau@redhat.com>
+Date: Tue, 25 Apr 2017 14:09:48 +0200
+Subject: [PATCH] Avoid double free with OpenSSL 1.1.0
+
+Since commit OpenSSL_1_1_0-pre3~178
+https://github.com/openssl/openssl/commit/b184e3ef73200cb3b7914a603b43a5b8a074c85f
+OpenSSL automatically cleans up some of its internal data when the
+program exits. This conflicts with some similar clean up
+libimobiledevice attempts to do, which causes a double-free.
+SSL_COMP_free_compression_methods() was available in OpenSSL 1.0.2,
+and is still there in 1.1.0 as a no-op, so we can use that to free
+the compression methods.
+
+This bug can be hit with a simple idevicebackup2 --help
+
+==14299== Invalid read of size 4
+==14299== at 0x547AEBC: OPENSSL_sk_pop_free (stack.c:263)
+==14299== by 0x508B848: ssl_library_stop (ssl_init.c:182)
+==14299== by 0x5424D11: OPENSSL_cleanup (init.c:402)
+==14299== by 0x5DC3134: __cxa_finalize (cxa_finalize.c:56)
+==14299== by 0x53332B2: ??? (in /usr/lib64/libcrypto.so.1.1.0e)
+==14299== by 0x4011232: _dl_fini (dl-fini.c:235)
+==14299== by 0x5DC2DC7: __run_exit_handlers (exit.c:83)
+==14299== by 0x5DC2E19: exit (exit.c:105)
+==14299== by 0x5DA8604: (below main) (libc-start.c:329)
+==14299== Address 0x6585590 is 0 bytes inside a block of size 40 free'd
+==14299== at 0x4C2FCC8: free (vg_replace_malloc.c:530)
+==14299== by 0x4E43381: sk_SSL_COMP_free (ssl.h:830)
+==14299== by 0x4E434E7: internal_idevice_deinit (idevice.c:103)
+==14299== by 0x5B79643: __pthread_once_slow (pthread_once.c:116)
+==14299== by 0x4E5663A: thread_once (thread.c:104)
+==14299== by 0x4E43525: libimobiledevice_deinitialize (idevice.c:140)
+==14299== by 0x4011232: _dl_fini (dl-fini.c:235)
+==14299== by 0x5DC2DC7: __run_exit_handlers (exit.c:83)
+==14299== by 0x5DC2E19: exit (exit.c:105)
+==14299== by 0x5DA8604: (below main) (libc-start.c:329)
+==14299== Block was alloc'd at
+==14299== at 0x4C2EB1B: malloc (vg_replace_malloc.c:299)
+==14299== by 0x5428908: CRYPTO_zalloc (mem.c:100)
+==14299== by 0x547A9AE: OPENSSL_sk_new (stack.c:108)
+==14299== by 0x5087D43: sk_SSL_COMP_new (ssl.h:830)
+==14299== by 0x5087D43: do_load_builtin_compressions (ssl_ciph.c:482)
+==14299== by 0x5087D43: do_load_builtin_compressions_ossl_ (ssl_ciph.c:476)
+==14299== by 0x5B79643: __pthread_once_slow (pthread_once.c:116)
+==14299== by 0x547B198: CRYPTO_THREAD_run_once (threads_pthread.c:106)
+==14299== by 0x5089F96: load_builtin_compressions (ssl_ciph.c:500)
+==14299== by 0x5089F96: SSL_COMP_get_compression_methods (ssl_ciph.c:1845)
+==14299== by 0x508B68B: ossl_init_ssl_base (ssl_init.c:125)
+==14299== by 0x508B68B: ossl_init_ssl_base_ossl_ (ssl_init.c:25)
+==14299== by 0x5B79643: __pthread_once_slow (pthread_once.c:116)
+==14299== by 0x547B198: CRYPTO_THREAD_run_once (threads_pthread.c:106)
+==14299== by 0x508B90A: OPENSSL_init_ssl (ssl_init.c:227)
+==14299== by 0x4E43416: internal_idevice_init (idevice.c:73)
+=
+
+Signed-off-by: Christophe Fergeau <cfergeau@redhat.com>
+---
+ src/idevice.c | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/src/idevice.c b/src/idevice.c
+index 913038ef..d1f13cb6 100644
+--- a/src/idevice.c
++++ b/src/idevice.c
+@@ -51,6 +51,14 @@
+ #include "common/debug.h"
+
+ #ifdef HAVE_OPENSSL
++
++#if OPENSSL_VERSION_NUMBER < 0x10002000L
++static void SSL_COMP_free_compression_methods(void)
++{
++ sk_SSL_COMP_free(SSL_COMP_get_compression_methods());
++}
++#endif
++
+ static mutex_t *mutex_buf = NULL;
+ static void locking_function(int mode, int n, const char* file, int line)
+ {
+@@ -100,7 +108,7 @@ static void internal_idevice_deinit(void)
+
+ EVP_cleanup();
+ CRYPTO_cleanup_all_ex_data();
+- sk_SSL_COMP_free(SSL_COMP_get_compression_methods());
++ SSL_COMP_free_compression_methods();
+ #ifdef HAVE_ERR_REMOVE_THREAD_STATE
+ ERR_remove_thread_state(NULL);
+ #else
diff --git a/source/l/libimobiledevice/libimobiledevice.SlackBuild b/source/l/libimobiledevice/libimobiledevice.SlackBuild
index fe97d57d8..322f83b57 100755
--- a/source/l/libimobiledevice/libimobiledevice.SlackBuild
+++ b/source/l/libimobiledevice/libimobiledevice.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libimobiledevice
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-5}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -60,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -70,6 +78,12 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Fixes mounting issues with iOS 10:
+zcat $CWD/libimobiledevice.use_tlsv1_instead_of_sslv3.diff.gz | patch -p1 --verbose || exit 1
+
+# Fix for OpenSSL-1.1.x:
+zcat $CWD/02a0e03e24bc96bba2e5ea2438c30baf803fd137.patch.gz | patch -p1 --verbose || exit 1
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -80,11 +94,14 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libimobiledevice/libimobiledevice.use_tlsv1_instead_of_sslv3.diff b/source/l/libimobiledevice/libimobiledevice.use_tlsv1_instead_of_sslv3.diff
new file mode 100644
index 000000000..edf763ee8
--- /dev/null
+++ b/source/l/libimobiledevice/libimobiledevice.use_tlsv1_instead_of_sslv3.diff
@@ -0,0 +1,13 @@
+diff --git a/src/idevice.c b/src/idevice.c
+index f2de6a3..1dcdae2 100644
+--- a/src/idevice.c
++++ b/src/idevice.c
+@@ -703,7 +703,7 @@ LIBIMOBILEDEVICE_API idevice_error_t idevice_connection_enable_ssl(idevice_conne
+ }
+ BIO_set_fd(ssl_bio, (int)(long)connection->data, BIO_NOCLOSE);
+
+- SSL_CTX *ssl_ctx = SSL_CTX_new(SSLv3_method());
++ SSL_CTX *ssl_ctx = SSL_CTX_new(TLSv1_method());
+ if (ssl_ctx == NULL) {
+ debug_info("ERROR: Could not create SSL context.");
+ BIO_free(ssl_bio);
diff --git a/source/l/libimobiledevice/slack-desc b/source/l/libimobiledevice/slack-desc
index eecc8e531..b08e90ff4 100644
--- a/source/l/libimobiledevice/slack-desc
+++ b/source/l/libimobiledevice/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ libimobiledevice:
libimobiledevice: A library to communicate with services of Apple iOS devices using native
libimobiledevice: protocols.
libimobiledevice:
-libimobiledevice: The libimobiledevice homepage: http://www.libimobiledevice.org/
+libimobiledevice: The libimobiledevice homepage: http://www.libimobiledevice.org/
libimobiledevice:
libimobiledevice:
libimobiledevice:
diff --git a/source/l/libiodbc/libiodbc.SlackBuild b/source/l/libiodbc/libiodbc.SlackBuild
index c752d13ee..cd9fc3fad 100755
--- a/source/l/libiodbc/libiodbc.SlackBuild
+++ b/source/l/libiodbc/libiodbc.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009, 2010 Eric Hameleers, Eindhoven, NL
-# Copyright 2009, 2010, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libiodbc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j6}
# Automatically determine the architecture we're building on:
@@ -37,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-libiodbc
@@ -84,7 +92,7 @@ CFLAGS="$SLKCFLAGS" \
--disable-libodbc \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Disable rpath:
zcat $CWD/libiodbc.disable.rpath.diff.gz | patch -p1 --verbose || exit 1
@@ -93,6 +101,9 @@ zcat $CWD/libiodbc.disable.rpath.diff.gz | patch -p1 --verbose || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libiodbc/slack-desc b/source/l/libiodbc/slack-desc
index cb23cc923..725461468 100644
--- a/source/l/libiodbc/slack-desc
+++ b/source/l/libiodbc/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
@@ -10,7 +10,7 @@ libiodbc: libiodbc (Independent Open DataBase Connectivity)
libiodbc:
libiodbc: iODBC is the acronym for Independent Open DataBase Connectivity,
libiodbc: an Open Source platform independent implementation of both the ODBC
-libiodbc: and X/Open specifications. It allows for developing solutions
+libiodbc: and X/Open specifications. It allows for developing solutions
libiodbc: that are language, platform and database independent.
libiodbc:
libiodbc:
diff --git a/source/l/libjpeg-turbo/libjpeg-turbo.SlackBuild b/source/l/libjpeg-turbo/libjpeg-turbo.SlackBuild
index 041e88544..544edbf76 100755
--- a/source/l/libjpeg-turbo/libjpeg-turbo.SlackBuild
+++ b/source/l/libjpeg-turbo/libjpeg-turbo.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libjpeg-turbo
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,6 +37,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i386" ]; then
@@ -64,7 +73,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -73,7 +81,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
@@ -92,12 +100,15 @@ CFLAGS="$SLKCFLAGS" \
--includedir=/usr/include \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG docdir=/usr/doc/$PKGNAM-$VERSION || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libjpeg-turbo/slack-desc b/source/l/libjpeg-turbo/slack-desc
index fa2cfc02c..439925ca7 100644
--- a/source/l/libjpeg-turbo/slack-desc
+++ b/source/l/libjpeg-turbo/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libjpeg-turbo: libjpeg-turbo (high-speed version of libjpeg)
libjpeg-turbo:
-libjpeg-turbo: libjpeg-turbo is a high-speed version of libjpeg for x86 and
-libjpeg-turbo: x86-64 processors which uses SIMD instructions (MMX, SSE2, etc.)
-libjpeg-turbo: to accelerate baseline JPEG compression and decompression.
-libjpeg-turbo: libjpeg-turbo is generally 2-4x as fast as the unmodified
-libjpeg-turbo: version of libjpeg, all else being equal.
+libjpeg-turbo: libjpeg-turbo is a high-speed version of libjpeg for x86 and x86-64
+libjpeg-turbo: processors which uses SIMD instructions to accelerate baseline JPEG
+libjpeg-turbo: compression and decompression. libjpeg-turbo is generally 2-4x as
+libjpeg-turbo: fast as the unmodified version of libjpeg, all else being equal.
+libjpeg-turbo:
+libjpeg-turbo: Homepage: https://libjpeg-turbo.org
libjpeg-turbo:
libjpeg-turbo:
-libjpeg-turbo: libjpeg-turbo home: http://libjpeg-turbo.virtualgl.org
libjpeg-turbo:
diff --git a/source/l/libkarma/libkarma.SlackBuild b/source/l/libkarma/libkarma.SlackBuild
index 4bc85b01f..faf5e3dd1 100755
--- a/source/l/libkarma/libkarma.SlackBuild
+++ b/source/l/libkarma/libkarma.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libkarma
VERSION=${VERSION:-0.1.1}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
diff --git a/source/l/libkarma/slack-desc b/source/l/libkarma/slack-desc
index ddbb0728b..1036b856e 100644
--- a/source/l/libkarma/slack-desc
+++ b/source/l/libkarma/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/liblastfm/liblastfm.SlackBuild b/source/l/liblastfm/liblastfm.SlackBuild
index 0d99011c0..ac6336ab5 100755
--- a/source/l/liblastfm/liblastfm.SlackBuild
+++ b/source/l/liblastfm/liblastfm.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for liblastfm
# Copyright 2009 Vincent Batts
-# Copyright 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
@@ -22,22 +22,31 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM="liblastfm"
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j6}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/liblastfm/slack-desc b/source/l/liblastfm/slack-desc
index 0ae83a1ae..921b5d42e 100644
--- a/source/l/liblastfm/slack-desc
+++ b/source/l/liblastfm/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libmad/libmad.SlackBuild b/source/l/libmad/libmad.SlackBuild
index 0a78183d5..ba5e5acab 100755
--- a/source/l/libmad/libmad.SlackBuild
+++ b/source/l/libmad/libmad.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009i, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libmad
VERSION=${VERSION:-0.15.1b}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.gz || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -70,6 +78,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Remove obsolete --force-mem optimization:
+sed -i "s/-fforce-mem//g" configure
+
# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
@@ -81,12 +92,15 @@ CFLAGS="$SLKCFLAGS" \
--disable-debugging \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# This is what happens when every distro makes up its own standards
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
sed -e "s#/lib#/lib${LIBDIRSUFFIX}#" $CWD/mad.pc \
diff --git a/source/l/libmad/slack-desc b/source/l/libmad/slack-desc
index ecb740d38..3052ad250 100644
--- a/source/l/libmad/slack-desc
+++ b/source/l/libmad/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libmad: libmad (high-quality MPEG audio library)
libmad:
-libmad: MAD (libmad) is a high-quality MPEG audio decoder. It currently
+libmad: MAD (libmad) is a high-quality MPEG audio decoder. It currently
libmad: supports MPEG-1 and the MPEG-2 extension to Lower Sampling
-libmad: Frequencies, as well as the so-called MPEG 2.5 format. All three
+libmad: Frequencies, as well as the so-called MPEG 2.5 format. All three
libmad: audio layers (Layer I, Layer II, and Layer III a.k.a. MP3) are
-libmad: fully implemented. Because MAD provides full 24-bit PCM output,
+libmad: fully implemented. Because MAD provides full 24-bit PCM output,
libmad: applications using MAD are able to produce high quality audio.
libmad: MAD is distributed under the terms of the GPL.
libmad:
diff --git a/source/l/libmcrypt/libmcrypt.SlackBuild b/source/l/libmcrypt/libmcrypt.SlackBuild
index 510c29ff0..9aca03281 100755
--- a/source/l/libmcrypt/libmcrypt.SlackBuild
+++ b/source/l/libmcrypt/libmcrypt.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libmcrypt
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $PKG $TMP
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -60,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -82,12 +90,15 @@ CFLAGS="$SLKCFLAGS" \
--enable-shared=yes \
--enable-static=no \
--disable-posix-threads \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libmcrypt/slack-desc b/source/l/libmcrypt/slack-desc
index 6523614b5..6b13c975c 100644
--- a/source/l/libmcrypt/slack-desc
+++ b/source/l/libmcrypt/slack-desc
@@ -1,12 +1,12 @@
|-----handy-ruler------------------------------------------------------|
libmcrypt: libmcrypt (MCrypt encryption library)
libmcrypt:
-libmcrypt: Libmcrypt is a data encryption library. The library is thread safe
-libmcrypt: and provides encryption and decryption functions. This version of
+libmcrypt: Libmcrypt is a data encryption library. The library is thread safe
+libmcrypt: and provides encryption and decryption functions. This version of
libmcrypt: the library supports many encryption algorithms and encryption modes.
libmcrypt: Some algorithms which are supported: SERPENT, RIJNDAEL, 3DES, GOST,
libmcrypt: SAFER+, CAST-256, RC2, XTEA, 3WAY, TWOFISH, BLOWFISH, ARCFOUR, WAKE,
libmcrypt: and more.
libmcrypt:
-libmcrypt: Homepage: http://mcrypt.sourceforge.net
+libmcrypt: Homepage: http://mcrypt.sourceforge.net
libmcrypt:
diff --git a/source/l/libmcs/slack-desc b/source/l/libmcs/slack-desc
deleted file mode 100644
index ce7950ca1..000000000
--- a/source/l/libmcs/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-libmcs: libmcs (A library for managing configuration settings)
-libmcs:
-libmcs: mcs is a library and set of userland tools which abstract the
-libmcs: storage of configuration settings away from userland applications.
-libmcs:
-libmcs: It is hoped that by using mcs, that the applications which use it
-libmcs: will generally have a more congruent feeling in regards to settings.
-libmcs:
-libmcs: Because mcs is licenced under the BSD license, it is hoped that
-libmcs: many applications will adopt its use.
-libmcs:
diff --git a/source/l/libmng/libmng.SlackBuild b/source/l/libmng/libmng.SlackBuild
index 61fc3db03..ae00c7b65 100755
--- a/source/l/libmng/libmng.SlackBuild
+++ b/source/l/libmng/libmng.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libmng
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,7 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -60,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.xz || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -80,12 +88,15 @@ CFLAGS="$SLKCFLAGS" \
--disable-static \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libmng/slack-desc b/source/l/libmng/slack-desc
index 4cd82c46a..3f279baaf 100644
--- a/source/l/libmng/slack-desc
+++ b/source/l/libmng/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libmng: libmng (Multiple-image Network Graphics library)
libmng:
-libmng: This is libmng, the MNG reference library. MNG (pronounced 'ming'),
-libmng: is short for Multiple-image Network Graphics. Designed with the same
+libmng: This is libmng, the MNG reference library. MNG (pronounced 'ming'),
+libmng: is short for Multiple-image Network Graphics. Designed with the same
libmng: modular philosophy as PNG and by many of the same people, MNG is
libmng: intended to provide a home for all of the multi-image (animation)
-libmng: capabilities that have no place in PNG.
+libmng: capabilities that have no place in PNG.
libmng:
libmng: libmng was written by Gerard Juyn.
libmng:
diff --git a/source/l/libmpc/libmpc.SlackBuild b/source/l/libmpc/libmpc.SlackBuild
index e1e2ff8da..122593922 100755
--- a/source/l/libmpc/libmpc.SlackBuild
+++ b/source/l/libmpc/libmpc.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2010, 2011, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2010, 2011, 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,6 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
# I really do not like to package source under a different name than upstream,
# but in this case there is a media player frontend that is well-known as
@@ -27,23 +28,31 @@
# libmpc instead. It is probably best to follow suit.
SRCNAM=mpc
PKGNAM=libmpc
-VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -56,7 +65,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$SRCNAM
rm -rf $PKG
@@ -64,8 +72,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
-cd $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z || exit 1
+cd $SRCNAM-$VERSION || exit 1
chown -R root:root .
CFLAGS="$SLKCFLAGS" \
@@ -76,7 +84,7 @@ CFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--enable-static=yes \
--enable-shared=yes \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -87,6 +95,9 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
# Hardly a savings doing this...
#strip -g $PKG/usr/lib${LIBDIRSUFFIX}/*.a
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*
diff --git a/source/l/libmpc/slack-desc b/source/l/libmpc/slack-desc
index 315208339..5441e345d 100644
--- a/source/l/libmpc/slack-desc
+++ b/source/l/libmpc/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libmpc: libmpc (Multiple Precision Complex Library)
libmpc:
-libmpc: mpc is a complex floating-point library with exact rounding. It is
+libmpc: mpc is a complex floating-point library with exact rounding. It is
libmpc: based on the GNU MPFR floating-point library (http://www.mpfr.org/),
libmpc: which is itself based on the GNU MP library (http://gmplib.org/).
libmpc:
-libmpc: Homepage: http://www.multiprecision.org
+libmpc: Homepage: http://www.multiprecision.org
libmpc:
libmpc:
libmpc:
diff --git a/source/l/libmsn/libmsn.gcc47.diff b/source/l/libmsn/libmsn.gcc47.diff
deleted file mode 100644
index 34df7005e..000000000
--- a/source/l/libmsn/libmsn.gcc47.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./msn/util.cpp.orig 2009-07-22 14:57:10.000000000 -0500
-+++ ./msn/util.cpp 2012-04-05 10:45:40.604000070 -0500
-@@ -30,6 +30,7 @@
- #include <openssl/rand.h>
- #include <cstring>
- #include <sys/timeb.h>
-+#include <unistd.h>
- #include "md5.h"
- #include "libsiren/siren7.h"
-
diff --git a/source/l/libmsn/slack-desc b/source/l/libmsn/slack-desc
deleted file mode 100644
index b026146d3..000000000
--- a/source/l/libmsn/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler-----------------------------------------------------|
-libmsn: libmsn (implementation of the MSN Messenger service protocol)
-libmsn:
-libmsn: Libmsn is a reusable, open-source, fully documented library for
-libmsn: connecting to Microsoft's MSN Messenger service.
-libmsn:
-libmsn: Homepage: http://sourceforge.net/projects/libmsn/
-libmsn:
-libmsn:
-libmsn:
-libmsn:
-libmsn:
diff --git a/source/l/libmtp/libmtp.SlackBuild b/source/l/libmtp/libmtp.SlackBuild
index 6bf90b462..bd2bed02d 100755
--- a/source/l/libmtp/libmtp.SlackBuild
+++ b/source/l/libmtp/libmtp.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2013, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2013, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libmtp
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -59,8 +67,8 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -79,21 +87,14 @@ CFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/${PKGNAM}-$VERSION \
--with-udev=/lib/udev \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
-# Guess someone didn't have enough to drink:
-( cd $PKG/usr/bin
- rm -f mtp-sendtr mtp-sendfile mtp-newfolder mtp-getfile mtp-delfile
- ln -s mtp-connect mtp-sendtr
- ln -s mtp-connect mtp-sendfile
- ln -s mtp-connect mtp-newfolder
- ln -s mtp-connect mtp-getfile
- ln -s mtp-connect mtp-delfile
-)
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
@@ -114,17 +115,9 @@ if [ -d $PKG/usr/man ]; then
)
fi
-# Compress info files, if any:
-if [ -d $PKG/usr/info ]; then
- ( cd $PKG/usr/info
- rm -f dir
- gzip -9 *
- )
-fi
-
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS COPYING ChangeLog INSTALL README* TODO \
+ AUTHORS COPYING* ChangeLog INSTALL README* TODO \
$PKG/usr/doc/${PKGNAM}-$VERSION
rm -rf $PKG/usr/share/doc
rmdir $PKG/usr/share 2> /dev/null
diff --git a/source/l/libmtp/slack-desc b/source/l/libmtp/slack-desc
index 7e4aba0e6..15ed8edf4 100644
--- a/source/l/libmtp/slack-desc
+++ b/source/l/libmtp/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libmtp: libmtp (A library for MTP media devices)
libmtp:
libmtp: libmtp is a library that attempts to support Microsoft's Media
-libmtp: Transfer Protocol (MTP). It was initially based on the great libptp2
+libmtp: Transfer Protocol (MTP). It was initially based on the great libptp2
libmtp: library by Mariusz Woloszyn now maintained by Marcus Meissners, and
libmtp: Hubert Figuere's libgphoto2 work based on libptp2 (or is libptp2
-libmtp: based on libgphoto?). It is like a master DJ has remixed all of
+libmtp: based on libgphoto?). It is like a master DJ has remixed all of
libmtp: these tracks and then added a new API adapted for portable media
-libmtp: players. :-)
+libmtp: players. :-)
libmtp:
-libmtp: For the latest info, check out: http://libmtp.sourceforge.net
+libmtp: Homepage: http://libmtp.sourceforge.net
diff --git a/source/l/libnih/libnih.SlackBuild b/source/l/libnih/libnih.SlackBuild
index b30114304..8ae4b5b16 100755
--- a/source/l/libnih/libnih.SlackBuild
+++ b/source/l/libnih/libnih.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2014, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,11 @@
# Modified by Matteo Bernardini <ponce@slackbuilds.org> (2014)
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libnih
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,6 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -52,7 +62,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/libnih/slack-desc b/source/l/libnih/slack-desc
index d0535e658..bc7fc6f35 100644
--- a/source/l/libnih/slack-desc
+++ b/source/l/libnih/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -17,5 +17,3 @@ libnih: Homepage: https://github.com/keybuk/libnih
libnih:
libnih:
libnih:
-libnih:
-libnih:
diff --git a/source/l/libnjb/libnjb.SlackBuild b/source/l/libnjb/libnjb.SlackBuild
index a91aa6608..05b663088 100755
--- a/source/l/libnjb/libnjb.SlackBuild
+++ b/source/l/libnjb/libnjb.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libnjb
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,8 +67,8 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.xz || exit 1
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -78,12 +86,15 @@ CFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/${PKGNAM}-$VERSION \
--disable-static \
--enable-hotplugging \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Hotplug is obsolete:
if [ -d $PKG/etc/hotplug ]; then
rm -rf $PKG/etc/hotplug
diff --git a/source/l/libnjb/slack-desc b/source/l/libnjb/slack-desc
index 41f19c68a..b057d37da 100644
--- a/source/l/libnjb/slack-desc
+++ b/source/l/libnjb/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,10 +10,10 @@ libnjb: libnjb (A library for Creative Nomad related media devices)
libnjb:
libnjb: libnjb is a C library and API for communicating with the Creative
libnjb: Nomad JukeBox and Dell DJ digital audio players under BSD, Linux,
-libnjb: Mac OS X, and Windows. The protocol these devices use is presumably
+libnjb: Mac OS X, and Windows. The protocol these devices use is presumably
libnjb: called PDE (Portable Digital Entertainment protocol) at Creative.
libnjb: Newer devices using the Microsoft MTP (Media Transfer Protocol)
libnjb: are NOT supported.
libnjb:
-libnjb: Home page: http://libnjb.sourceforge.net
+libnjb: Home page: http://libnjb.sourceforge.net
libnjb:
diff --git a/source/l/libnl/libnl.SlackBuild b/source/l/libnl/libnl.SlackBuild
index 6c78eb2c9..672b81ca3 100755
--- a/source/l/libnl/libnl.SlackBuild
+++ b/source/l/libnl/libnl.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007 Andrew Psaltis, Vienna, VA, USA
-# Copyright 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
@@ -23,28 +23,37 @@
# Modified by Roberto Neri <rneri@libero.it>
# Modified by Robby Workman <rworkman@slackware.com> for inclusion
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libnl
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
NUMJOBS=${NUMJOBS:--j6}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
diff --git a/source/l/libnl/slack-desc b/source/l/libnl/slack-desc
index 6351f5650..7fc981fd2 100644
--- a/source/l/libnl/slack-desc
+++ b/source/l/libnl/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libnl3/libnl3.SlackBuild b/source/l/libnl3/libnl3.SlackBuild
index 7d18a85f6..4d4b3bb2d 100755
--- a/source/l/libnl3/libnl3.SlackBuild
+++ b/source/l/libnl3/libnl3.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libnl3
-# Copyright 2012-2015 Robby Workman, Tuscaloosa, Alabama, USA
+# Copyright 2012-2017 Robby Workman, Tuscaloosa, Alabama, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,12 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libnl
PKGNAME=libnl3
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,11 +37,18 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAME-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
+PKG=$TMP/package-$PKGNAME
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -83,6 +92,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Don't clobber config files
mv $PKG/etc/libnl/classid{,.new}
mv $PKG/etc/libnl/pktloc{,.new}
diff --git a/source/l/libnl3/slack-desc b/source/l/libnl3/slack-desc
index 3c8ae63fd..74d9958ec 100644
--- a/source/l/libnl3/slack-desc
+++ b/source/l/libnl3/slack-desc
@@ -2,18 +2,18 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
libnl3: libnl3 (Netlink Protocol Library Suite version 3)
libnl3:
libnl3: The libnl suite is a collection of libraries providing APIs to
-libnl3: netlink protocol based Linux kernel interfaces. Netlink is a IPC
+libnl3: netlink protocol based Linux kernel interfaces. Netlink is a IPC
libnl3: mechanism primarily between the kernel and user space processes.
libnl3: It was designed to be a more flexible successor to ioctl to provide
libnl3: mainly networking related kernel configuration and monitoring
libnl3: interfaces.
libnl3:
-libnl3: Homepage: https://github.com/thom311/libnl
+libnl3: Homepage: https://github.com/thom311/libnl
libnl3:
diff --git a/source/l/libnotify/libnotify.SlackBuild b/source/l/libnotify/libnotify.SlackBuild
index f770dc085..6e0ab7723 100755
--- a/source/l/libnotify/libnotify.SlackBuild
+++ b/source/l/libnotify/libnotify.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for libnotify
#
# Copyright 2009 Erik W. Hanson, Minneapolis, MN, USA
-# Copyright 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,24 +23,35 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libnotify
-VERSION=0.7.6
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -53,14 +64,12 @@ else
LIBDIRSUFFIX=""
fi
-set -eu
-
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z*
-cd $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
@@ -72,10 +81,13 @@ CFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--enable-static=no \
--enable-shared=yes \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
-make
-make install DESTDIR=$PKG
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libnotify/slack-desc b/source/l/libnotify/slack-desc
index c8684b1a4..ef0fe6b6b 100644
--- a/source/l/libnotify/slack-desc
+++ b/source/l/libnotify/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler--------------------------------------------------|
diff --git a/source/l/libodfgen/libodfgen.SlackBuild b/source/l/libodfgen/libodfgen.SlackBuild
index 02d0b3987..2ff89c721 100755
--- a/source/l/libodfgen/libodfgen.SlackBuild
+++ b/source/l/libodfgen/libodfgen.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2015 Eric Hameleers, Eindhoven, NL
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libodfgen
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -40,6 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -62,7 +71,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -89,11 +97,14 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
--disable-tests \
- --build=$TARGET
+ --build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libodfgen/slack-desc b/source/l/libodfgen/slack-desc
index 63ca5fe5d..7521a48ff 100644
--- a/source/l/libodfgen/slack-desc
+++ b/source/l/libodfgen/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libogg/libogg.SlackBuild b/source/l/libogg/libogg.SlackBuild
index 9b2ebefed..9a6cc30e1 100755
--- a/source/l/libogg/libogg.SlackBuild
+++ b/source/l/libogg/libogg.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,24 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=libogg
VERSION=${VERSION:-$(echo libogg-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -50,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libogg
@@ -60,7 +69,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf libogg-$VERSION
tar xvf $CWD/libogg-$VERSION.tar.?z* || exit 1
-cd libogg-$VERSION
+cd libogg-$VERSION || exit 1
+
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -74,16 +84,19 @@ CXXFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--docdir=/usr/doc/libogg-$VERSION \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
cp -a \
- AUTHORS CHANGES COPYING README \
+ AUTHORS CHANGES COPYING* README* \
$PKG/usr/doc/libogg-$VERSION
mkdir -p $PKG/install
diff --git a/source/l/libogg/slack-desc b/source/l/libogg/slack-desc
index e5d3280eb..e6ef614a4 100644
--- a/source/l/libogg/slack-desc
+++ b/source/l/libogg/slack-desc
@@ -1,14 +1,14 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libogg: libogg (Ogg Bitstream library)
libogg:
-libogg: Libogg is a library for manipulating ogg bitstreams. It handles
+libogg: Libogg is a library for manipulating ogg bitstreams. It handles
libogg: both making ogg bitstreams and getting packets from ogg bitstreams.
libogg:
libogg: libogg is needed to use the Ogg Vorbis audio format.
diff --git a/source/l/liboggz/liboggz.SlackBuild b/source/l/liboggz/liboggz.SlackBuild
index 2132b7a1b..1cedfa043 100755
--- a/source/l/liboggz/liboggz.SlackBuild
+++ b/source/l/liboggz/liboggz.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=liboggz
VERSION=${VERSION:-$(echo liboggz-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-liboggz
@@ -61,7 +69,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf liboggz-$VERSION
tar xvf $CWD/liboggz-$VERSION.tar.?z* || exit 1
-cd liboggz-$VERSION
+cd liboggz-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -75,11 +83,15 @@ CXXFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -101,6 +113,8 @@ fi
mkdir -p $PKG/usr/doc
mv $PKG/usr/share/doc/liboggz $PKG/usr/doc/liboggz-$VERSION
+rmdir $PKG/usr/share/doc 2> /dev/null
+rmdir $PKG/usr/share 2> /dev/null
cp -a \
AUTHORS CHANGES COPYING* NEWS PATCHES README* TODO \
$PKG/usr/doc/liboggz-$VERSION
diff --git a/source/l/liboggz/slack-desc b/source/l/liboggz/slack-desc
index db3511e5e..c68559fa5 100644
--- a/source/l/liboggz/slack-desc
+++ b/source/l/liboggz/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
liboggz: liboggz (Ogg inspect/edit/validate tools and library)
liboggz:
liboggz: Oggz comprises liboggz and the tool oggz, which provides commands to
-liboggz: inspect, edit and validate Ogg files. The oggz-chop tool can also be
+liboggz: inspect, edit and validate Ogg files. The oggz-chop tool can also be
liboggz: used to serve time ranges of Ogg media over HTTP by any web server
-liboggz: that supports CGI. liboggz is a C library for reading and writing Ogg
-liboggz: files and streams. It offers various improvements over the reference
+liboggz: that supports CGI. liboggz is a C library for reading and writing Ogg
+liboggz: files and streams. It offers various improvements over the reference
liboggz: libogg, including support for seeking, validation and timestamp
liboggz: interpretation.
liboggz:
diff --git a/source/l/liboil/liboil.SlackBuild b/source/l/liboil/liboil.SlackBuild
index ec2bcf114..20064cd03 100755
--- a/source/l/liboil/liboil.SlackBuild
+++ b/source/l/liboil/liboil.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Michiel van Wessem <michiel@slackbuilds.org>
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -27,29 +27,37 @@
# Modified by Robby Workman <rworkman@slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=liboil
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j7}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -67,7 +75,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -85,11 +93,14 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--enable-shared=yes \
--enable-static=no \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/liboil/slack-desc b/source/l/liboil/slack-desc
index c66fb6df0..98a095cdd 100644
--- a/source/l/liboil/slack-desc
+++ b/source/l/liboil/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
liboil: liboil (a library of simple functions)
liboil:
liboil: Liboil is a library of simple functions that are optimized for
-liboil: various CPUs. These functions are generally loops implementing
+liboil: various CPUs. These functions are generally loops implementing
liboil: simple algorithms, such as converting an array of N integers to
liboil: floating-point numbers or multiplying and summing an array of N
-liboil: numbers. Such functions are candidates for significant optimization
+liboil: numbers. Such functions are candidates for significant optimization
liboil: using various techniques, especially by using extended instructions
liboil: provided by modern CPUs (Altivec, MMX, SSE, etc.).
liboil:
diff --git a/source/l/libpcap/libpcap.SlackBuild b/source/l/libpcap/libpcap.SlackBuild
index bd44a36b8..fd25d9e0c 100755
--- a/source/l/libpcap/libpcap.SlackBuild
+++ b/source/l/libpcap/libpcap.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libpcap
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.gz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -34,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "x86_64" ]; then
@@ -42,7 +52,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libpcap
@@ -69,7 +78,7 @@ CFLAGS="$(getconf LFS_CFLAGS)" \
--mandir=/usr/man \
--docdir=/usr/doc/libpcap-$VERSION \
--enable-ipv6 \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make shared $NUMJOBS || make || exit 1
@@ -77,7 +86,10 @@ make shared $NUMJOBS || make || exit 1
mkdir -p $PKG/usr/bin # otherwise it errors out on install
make install DESTDIR=$PKG || exit 1
-strip --strip-debug libpcap.so.1.?.?
+strip --strip-debug libpcap.so.?.?.?
+
+# Don't ship the static library:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libpcap.a
mkdir -p $PKG/usr/doc/libpcap-$VERSION
cp -a \
diff --git a/source/l/libpcap/slack-desc b/source/l/libpcap/slack-desc
index 63fb98760..a4a7cb4f3 100644
--- a/source/l/libpcap/slack-desc
+++ b/source/l/libpcap/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libpcap: libpcap (packet capture library)
libpcap:
-libpcap: libpcap is a library for user-level packet capture. libpcap provides
-libpcap: a portable framework for low-level network monitoring. Applications
+libpcap: libpcap is a library for user-level packet capture. libpcap provides
+libpcap: a portable framework for low-level network monitoring. Applications
libpcap: include network statistics collection, security monitoring, network
-libpcap: debugging, etc. The tcpdump utility uses libpcap.
+libpcap: debugging, etc. The tcpdump utility uses libpcap.
libpcap:
-libpcap: Project homepage: http://www.tcpdump.org
+libpcap: Project homepage: http://www.tcpdump.org
libpcap:
libpcap:
libpcap:
diff --git a/source/l/libplist/libplist.SlackBuild b/source/l/libplist/libplist.SlackBuild
index b04ddb73c..2d71915d9 100755
--- a/source/l/libplist/libplist.SlackBuild
+++ b/source/l/libplist/libplist.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2011, 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2011, 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libplist
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -63,14 +71,16 @@ if ls /var/log/packages/libplist-* 1> /dev/null 2> /dev/null ; then
echo "old library version. This is normally only a problem if the"
echo "major library version gets bumped, but still. :)"
echo
- echo "You'll be given a short time to consider this."
+ echo "Removing the libplist package in 15 seconds, and then continuing"
+ echo "with the build."
sleep 15
+ removepkg libplist
fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -90,11 +100,14 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libplist/slack-desc b/source/l/libplist/slack-desc
index cbe024420..29ac2058d 100644
--- a/source/l/libplist/slack-desc
+++ b/source/l/libplist/slack-desc
@@ -1,17 +1,17 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libplist: libplist (A library for Apple Binary and XML Property Lists)
libplist:
libplist: libplist is a library that attempts to support Apple Binary and XML
-libplist: Property Lists. It is used by libgpod.
+libplist: Property Lists. It is used by libgpod.
libplist:
-libplist: The libplist homepage: http://www.libimobiledevice.org/
+libplist: The libplist homepage: http://www.libimobiledevice.org/
libplist:
libplist:
libplist:
diff --git a/source/l/libpng/libpng.SlackBuild b/source/l/libpng/libpng.SlackBuild
index 91bc3a188..e4ec60837 100755
--- a/source/l/libpng/libpng.SlackBuild
+++ b/source/l/libpng/libpng.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libpng
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,6 +37,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i386" ]; then
@@ -64,7 +73,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -92,12 +100,15 @@ CFLAGS="$SLKCFLAGS" \
--includedir=/usr/include \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libpng/slack-desc b/source/l/libpng/slack-desc
index 54d1d0f92..5f9c812ae 100644
--- a/source/l/libpng/slack-desc
+++ b/source/l/libpng/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libpng: libpng (Portable Network Graphics library)
libpng:
libpng: PNG (Portable Network Graphics) is an extensible file format for the
-libpng: lossless, portable, well-compressed storage of raster images. PNG
+libpng: lossless, portable, well-compressed storage of raster images. PNG
libpng: provides a patent-free replacement for GIF and can also replace many
-libpng: common uses of TIFF. Indexed-color, grayscale, and truecolor images
-libpng: are supported, plus an optional alpha channel. Sample depths range
+libpng: common uses of TIFF. Indexed-color, grayscale, and truecolor images
+libpng: are supported, plus an optional alpha channel. Sample depths range
libpng: from 1 to 16 bits.
libpng:
libpng:
diff --git a/source/l/libproxy/libproxy.SlackBuild b/source/l/libproxy/libproxy.SlackBuild
index 4a760df7c..9669cfde1 100755
--- a/source/l/libproxy/libproxy.SlackBuild
+++ b/source/l/libproxy/libproxy.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009, 2010, 2011 Robby Workman Northport, AL, USA
-# Copyright 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libproxy
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -33,9 +35,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -53,6 +62,9 @@ else
LIBDIRSUFFIX=""
fi
+PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
@@ -66,8 +78,6 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# See https://github.com/maxinbjohn/libproxy/issues/197 for information about "-DWITH_KDE4=OFF"
-
cmake . \
-DCMAKE_C_FLAGS="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
@@ -75,12 +85,17 @@ cmake . \
-DLIB_INSTALL_DIR=/usr/lib${LIBDIRSUFFIX} \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DMODULE_INSTALL_DIR=/usr/lib${LIBDIRSUFFIX}/libproxy/${VERSION}/modules \
- -DWITH_KDE4=OFF \
-DPERL_VENDORINSTALL=yes || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Generate .pyc files
+python -m compileall "${PKG}$PYTHONLIB"
+python -O -m compileall "${PKG}$PYTHONLIB"
+python3 -m compileall "${PKG}$PYTHON3LIB"
+python3 -O -m compileall "${PKG}$PYTHON3LIB"
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/libproxy/libproxy.url b/source/l/libproxy/libproxy.url
index 3897ae588..fd085b2b8 100644
--- a/source/l/libproxy/libproxy.url
+++ b/source/l/libproxy/libproxy.url
@@ -1 +1 @@
-http://code.google.com/p/libproxy/
+https://github.com/libproxy/libproxy
diff --git a/source/l/libproxy/slack-desc b/source/l/libproxy/slack-desc
index 05b109e09..47e59d319 100644
--- a/source/l/libproxy/slack-desc
+++ b/source/l/libproxy/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
libproxy: libproxy (proxy configuration library)
libproxy:
libproxy: libproxy exists to answer the question: Given a network resource,
-libproxy: how do I reach it? It handles all the details, enabling you to get
-libproxy: back to programming. Just ask libproxy what proxy to use: you get
+libproxy: how do I reach it? It handles all the details, enabling you to get
+libproxy: back to programming. Just ask libproxy what proxy to use: you get
libproxy: simple code and your users get correct, consistent behavior and
libproxy: broad infrastructure compatibility.
libproxy:
-libproxy: Homepage: http://code.google.com/p/libproxy/
+libproxy: Homepage: https://github.com/libproxy/libproxy
libproxy:
libproxy:
diff --git a/source/l/libraw1394/libraw1394-2.1.1.tar.sign b/source/l/libraw1394/libraw1394-2.1.1.tar.sign
deleted file mode 100644
index 8a3b96b37..000000000
--- a/source/l/libraw1394/libraw1394-2.1.1.tar.sign
+++ /dev/null
@@ -1,17 +0,0 @@
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2
-
-iQIcBAABAgAGBQJVP/7BAAoJEHnzb7JUXXnQxS8P/iQ4DJ0tpClDNLvWaLuvR1g7
-w38hqQm6l1jO7Mvy0OdIY047kwkWOK4G2a+Fb6r3KRyyRvUD5eJNaJypjEJHvDVV
-CAP9nJ/eZXnUwrWyZcoet3JyzD3K5bG415zzU/lE8c6jB0xEfxhrBN/CwipI8p4X
-Z74t3cE7Sns9FdDBer038W1LKaRyK7PvU2qsGQjol50gOfjYmD7dpbzfPrbfoX0Q
-EuttAu6VUGLtLMTITsA5dND5PjA0Eazc6CdLaQKJy9+6K0xV/Tnt7EVL1T+by+Y6
-rzfrQ0JUWOJ5R1dO9poxXcVtL5pJleQ1gwlXSg4Z2UlKRCq4vBRnFoclMrVzIgvt
-eYLcEJgiwPDIUtMdspwGhyifsMktzuGAhqG1arEJE5i4++ZFdhPx3D1A2AubN5Ok
-E1CcmrNp76rEqbTGTOxncn/QMgcZ7SMhku5THY+VBYfKkHRpBBn9pEg2VtTfsRSQ
-1Eou/Xvsu/p3YvB8Eq2bUImS4mqfFIvMVM1shBCfGErd76T/QcVuuGko0M1+CaHB
-BP24/JZy347G814z5Ba6Svxd0++vatxZLNDW9FWiOuETQSEgyM9iYDSYRfEjxfSy
-vw1rtQ251P85govvwXG3Fe+1qEgVadZDTTI+BvbHlJs9mRYzficxbbuUEGNHqxfi
-O8kMr9ajegZYJ44plGxo
-=xvJk
------END PGP SIGNATURE-----
diff --git a/source/l/libraw1394/libraw1394-2.1.2.tar.sign b/source/l/libraw1394/libraw1394-2.1.2.tar.sign
new file mode 100644
index 000000000..c9a5add0e
--- /dev/null
+++ b/source/l/libraw1394/libraw1394-2.1.2.tar.sign
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iQIcBAABCAAGBQJXAS4VAAoJEHnzb7JUXXnQeLcQAOQE/BvJg2ODhsXxIaah2EqO
+4MZ2xYN+UO+I1y/ij6EMHpFSZqdkFo4EphytY3jRl628KEZRBbQVn9hcvZgmLH6b
+uIgrxBPATrBz20AWNTreb7cURJYf+5o3u5dps5Xf3SQjFING3I2sPueNkTqI11aM
+lYu0/ggD8nAGLQDV43xahgr6f+f6/VvwViGb873yQCuaF/6uhaTHDzTrh0H5fpgC
+ilWxGSuE6fuStPCOoxALpC1uILEQq6UGD+RVkF0fDV4Ri2RMJ5K9Ve1SFq/CatUO
+lAsjXpezDXC15KyYVoM+XSf8sj8C6z5jvqBpIGkwBSxRqfto2xkXDJWRWvA3twxy
+rdX8YA30P4vhjAExpKle4MivMhwN2NWILzSnZEqSP6xNEyKdgLNGRWo5AsZ/Jc/F
+inH1gOHibFjdAWL3d6x//t5Paf7axgCZwMqH7msYLheuWxZWIuxP2sxXc7jEbl2Z
+Y1BUEknjUA9W0WhJ/PgwFdBjhY0p+93ozDGXX+JSem2EjCC3TrUNHGsk9HRAzTA8
+TnW/ifASvpMx8bNf7p6D5P1V9nD3bsWXDG8W61VUrEnkVYMqp0iGxGes0DD9wwpt
+ShD9tMxy/FuMAaKANiKmaXQLR0v9CYURS5lz/lRDfGBEYxTu6Fy84BGH6MRBjf+/
+WrRWelXOXel3zqJgOhb8
+=i6Af
+-----END PGP SIGNATURE-----
diff --git a/source/l/libraw1394/libraw1394.SlackBuild b/source/l/libraw1394/libraw1394.SlackBuild
index 47f684d19..540992c9b 100755
--- a/source/l/libraw1394/libraw1394.SlackBuild
+++ b/source/l/libraw1394/libraw1394.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007 Pierre Cazenave <pwcazenave@gmail.com>
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# Modified by Robby Workman <rworkman at slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libraw1394
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -37,6 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j7}
if [ "$ARCH" = "i586" ]; then
@@ -53,7 +63,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libraw1394
rm -rf $PKG
@@ -78,11 +87,14 @@ CFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libraw1394/slack-desc b/source/l/libraw1394/slack-desc
index d1c7aa0d7..345121e01 100644
--- a/source/l/libraw1394/slack-desc
+++ b/source/l/libraw1394/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ libraw1394:
libraw1394: libraw1394 provides direct access to the IEEE 1394 bus through
libraw1394: the Linux 1394 subsystem's raw1394 user space interface.
libraw1394:
-libraw1394: Homepage: http://www.kernel.org/pub/linux/libs/ieee1394/
+libraw1394: Homepage: http://www.kernel.org/pub/linux/libs/ieee1394/
libraw1394:
libraw1394:
libraw1394:
diff --git a/source/l/librevenge/librevenge.SlackBuild b/source/l/librevenge/librevenge.SlackBuild
index dc584e887..23ce54f38 100755
--- a/source/l/librevenge/librevenge.SlackBuild
+++ b/source/l/librevenge/librevenge.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,8 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=librevenge
VERSION=${VERSION:-$(echo librevenge-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -38,6 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -55,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-librevenge
@@ -82,11 +92,15 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/librevenge-$VERSION \
--disable-static \
--disable-tests \
- --build=$ARCH-slackware-linux
+ --disable-werror \
+ --build=$ARCH-slackware-linux || exit 1 || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/librevenge/slack-desc b/source/l/librevenge/slack-desc
index 78ba5d345..e1fd5cc2c 100644
--- a/source/l/librevenge/slack-desc
+++ b/source/l/librevenge/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/librsvg/librsvg.SlackBuild b/source/l/librsvg/librsvg.SlackBuild
index a01f69191..8e4dd0ad6 100755
--- a/source/l/librsvg/librsvg.SlackBuild
+++ b/source/l/librsvg/librsvg.SlackBuild
@@ -1,6 +1,5 @@
-#!/bin/sh
-
-# Copyright 2008, 2009, 2010, 2016 Patrick Volkerding, Sebeka, MN, USA
+#!/bin/bash
+# Copyright 2008, 2009, 2010, 2016, 2018 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +19,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=librsvg
-VERSION=${VERSION:-$(echo librsvg-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo librsvg-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -35,6 +35,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -51,7 +59,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-librsvg
@@ -60,8 +67,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf librsvg-$VERSION
-tar xvf $CWD/librsvg-$VERSION.tar.?z* || exit 1
-cd librsvg-$VERSION
+tar xvf $CWD/librsvg-$VERSION.tar.?z || exit 1
+cd librsvg-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -76,12 +83,16 @@ CFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var/lib \
--mandir=/usr/man \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
--enable-static=no \
--build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -104,7 +115,7 @@ mkdir -p $PKG/usr/doc/librsvg-$VERSION
cp -a \
AUTHORS COPYING* NEWS README* TODO \
$PKG/usr/doc/librsvg-$VERSION
-( cd $PKG/usr/doc/librsvg-$VERSION ; ln -s /usr/share/gtk-doc/html/rsvg html )
+( cd $PKG/usr/doc/librsvg-$VERSION ; ln -s /usr/share/gtk-doc/html/rsvg-2.0/ html )
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
diff --git a/source/l/librsvg/slack-desc b/source/l/librsvg/slack-desc
index 1c1a3a80b..b86907dd9 100644
--- a/source/l/librsvg/slack-desc
+++ b/source/l/librsvg/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libsamplerate/libsamplerate.SlackBuild b/source/l/libsamplerate/libsamplerate.SlackBuild
index 2c05e694e..25d9419bc 100755
--- a/source/l/libsamplerate/libsamplerate.SlackBuild
+++ b/source/l/libsamplerate/libsamplerate.SlackBuild
@@ -1,30 +1,31 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libsamplerate
# Written by paul wisehart paul@1ud2.com
# Modified by Robby Workman <rworkman@slackbuilds.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libsamplerate
-VERSION=0.1.8
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -37,33 +38,47 @@ else
LIBDIRSUFFIX=""
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
+sed -i "s|\$prefix/share/doc/libsamplerate0-dev/html|\$htmldir|g" configure
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
+ --htmldir=/usr/doc/$PKGNAM-$VERSION/html \
--disable-static \
--localstatedir=/var \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make -j4 || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a AUTHORS COPYING* NEWS README* doc/* $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a AUTHORS COPYING* NEWS README* $PKG/usr/doc/$PKGNAM-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/source/l/libsamplerate/slack-desc b/source/l/libsamplerate/slack-desc
index cf52161d9..16a64e2ab 100644
--- a/source/l/libsamplerate/slack-desc
+++ b/source/l/libsamplerate/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libsamplerate: libsamplerate (a Sample Rate Converter for audio)
libsamplerate:
libsamplerate: Secret Rabbit Code (aka libsamplerate) is a Sample Rate Converter for
-libsamplerate: audio. One example of where such a thing would be useful is
+libsamplerate: audio. One example of where such a thing would be useful is
libsamplerate: converting audio from the CD sample rate of 44.1kHz to the 48kHz
-libsamplerate: sample rate used by DAT players. SRC is capable of arbitrary and time
-libsamplerate: varying conversions. SRC provides a small set of converters to allow
+libsamplerate: sample rate used by DAT players. SRC is capable of arbitrary and time
+libsamplerate: varying conversions. SRC provides a small set of converters to allow
libsamplerate: quality to be traded off against computation cost.
libsamplerate:
libsamplerate: libsamplerate home: http://www.mega-nerd.com/SRC/
diff --git a/source/l/libsecret/libsecret.SlackBuild b/source/l/libsecret/libsecret.SlackBuild
index ff9483685..aff1afed7 100755
--- a/source/l/libsecret/libsecret.SlackBuild
+++ b/source/l/libsecret/libsecret.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libsecret
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libsecret
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/libsecret/slack-desc b/source/l/libsecret/slack-desc
index c18a911e9..19d21fb76 100644
--- a/source/l/libsecret/slack-desc
+++ b/source/l/libsecret/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libsigc++/libsigc++.SlackBuild b/source/l/libsigc++/libsigc++.SlackBuild
index ebe68f3f1..e07a21ef1 100755
--- a/source/l/libsigc++/libsigc++.SlackBuild
+++ b/source/l/libsigc++/libsigc++.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libsigc++
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -32,9 +34,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -79,6 +88,9 @@ CXXFLAGS="$SLKCFLAGS -std=c++11" \
make $NUMJOBS libdocdir=/usr/doc/$PKGNAM-$VERSION || make libdocdir=/usr/doc/$PKGNAM-$VERSION || exit 1
make install libdocdir=/usr/doc/$PKGNAM-$VERSION DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/libsigc++/slack-desc b/source/l/libsigc++/slack-desc
index a1df82627..f584a3dd3 100644
--- a/source/l/libsigc++/slack-desc
+++ b/source/l/libsigc++/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -14,6 +14,6 @@ libsigc++: callback function, either global or a member function, regardless
libsigc++: of whether it is static or virtual.
libsigc++: It also contains adaptor classes for connection of dissimilar
libsigc++: callbacks and has an ease of use unmatched by other C++ callback
-libsigc++: libraries. Libsigc++ is licensed under the GNU Library General
+libsigc++: libraries. Libsigc++ is licensed under the GNU Library General
libsigc++: Public License, LGPL.
libsigc++:
diff --git a/source/l/libsigsegv/libsigsegv.SlackBuild b/source/l/libsigsegv/libsigsegv.SlackBuild
index a329ae013..07640db78 100755
--- a/source/l/libsigsegv/libsigsegv.SlackBuild
+++ b/source/l/libsigsegv/libsigsegv.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libsigsegv
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,8 +67,8 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.xz || exit 1
-cd ${PKGNAM}-$VERSION
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -80,12 +88,15 @@ CFLAGS="$SLKCFLAGS" \
--program-prefix= \
--program-suffix= \
--enable-shared \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -108,9 +119,17 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
- AUTHORS COPYING ChangeLog INSTALL NEWS PORTING README README.woe32 \
+ AUTHORS COPYING* ChangeLog INSTALL NEWS PORTING README* \
$PKG/usr/doc/${PKGNAM}-$VERSION
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/source/l/libsigsegv/slack-desc b/source/l/libsigsegv/slack-desc
index dcd40164f..88bf7df6f 100644
--- a/source/l/libsigsegv/slack-desc
+++ b/source/l/libsigsegv/slack-desc
@@ -1,16 +1,16 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libsigsegv: GNU libsigsegv (user mode page fault handling library)
libsigsegv:
-libsigsegv: This is a library for handling page faults in user mode. A page fault
+libsigsegv: This is a library for handling page faults in user mode. A page fault
libsigsegv: occurs when a program tries to access to a region of memory that is
-libsigsegv: currently not available. Catching and handling a page fault is a
+libsigsegv: currently not available. Catching and handling a page fault is a
libsigsegv: useful technique for implementing things such as pageable virtual
libsigsegv: memory, memory-mapped access to persistent databases, generational
libsigsegv: garbage collectors, stack overflow handlers, distributed shared
diff --git a/source/l/libsndfile/libsndfile.SlackBuild b/source/l/libsndfile/libsndfile.SlackBuild
index 3c0c42bbf..3740bedc8 100755
--- a/source/l/libsndfile/libsndfile.SlackBuild
+++ b/source/l/libsndfile/libsndfile.SlackBuild
@@ -1,10 +1,10 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libsndfile
# Copyright 2010 paul wisehart, Hyattsville, MD, USA
# Copyright 2010 Robby Workman, Northport, Alabama, USA
-# Copyright 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,9 +24,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libsndfile
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -75,10 +84,13 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--htmldir=/usr/doc/$PKGNAM-$VERSION/html \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make htmldocdir=/usr/doc/$PKGNAM-$VERSION/html || exit 1
-make htmldocdir=/usr/doc/$PKGNAM-$VERSION/html DESTDIR=$PKG install
+make htmldocdir=/usr/doc/$PKGNAM-$VERSION/html DESTDIR=$PKG install || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libsndfile/slack-desc b/source/l/libsndfile/slack-desc
index 2b84cb2db..1b9a88680 100644
--- a/source/l/libsndfile/slack-desc
+++ b/source/l/libsndfile/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler---------------------------------------------------|
@@ -11,7 +11,7 @@ libsndfile:
libsndfile: Libsndfile is a C library for reading and writing files containing
libsndfile: sampled sound (such as MS Windows WAV and Apple/SGI AIFF format).
libsndfile:
-libsndfile: Homepage: http://www.mega-nerd.com/libsndfile/
+libsndfile: Homepage: http://www.mega-nerd.com/libsndfile/
libsndfile:
libsndfile:
libsndfile:
diff --git a/source/l/libsodium/libsodium.SlackBuild b/source/l/libsodium/libsodium.SlackBuild
new file mode 100755
index 000000000..642ac8e1a
--- /dev/null
+++ b/source/l/libsodium/libsodium.SlackBuild
@@ -0,0 +1,146 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libsodium
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS ChangeLog COPYING* LICENSE* NEWS README* THANKS TODO \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 2000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/libsodium/slack-desc b/source/l/libsodium/slack-desc
new file mode 100644
index 000000000..85e1d9d23
--- /dev/null
+++ b/source/l/libsodium/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+libsodium: libsodium (Sodium crypto library)
+libsodium:
+libsodium: Sodium is a library for encryption, decryption, signatures, password
+libsodium: hashing and more. It is a portable, cross-compilable, installable,
+libsodium: packageable fork of NaCl, with a compatible API, and an extended API
+libsodium: to improve usability even further.
+libsodium:
+libsodium: Its goal is to provide all of the core operations needed to build
+libsodium: higher-level cryptographic tools.
+libsodium:
+libsodium: Homepage: https://libsodium.org
diff --git a/source/l/libsoup/libsoup.SlackBuild b/source/l/libsoup/libsoup.SlackBuild
index 0ea205a8d..d1d115c55 100755
--- a/source/l/libsoup/libsoup.SlackBuild
+++ b/source/l/libsoup/libsoup.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for libsoup
#
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libsoup
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -58,7 +67,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
@@ -77,9 +86,8 @@ CFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
-## NOTE: These _should_ go eventually, but for now it causes problems.
-## Don't ship .la files:
-#rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a COPYING* AUTHORS NEWS README* $PKG/usr/doc/$PKGNAM-$VERSION
diff --git a/source/l/libsoup/slack-desc b/source/l/libsoup/slack-desc
index 80cd6ef03..2c8e11e0a 100644
--- a/source/l/libsoup/slack-desc
+++ b/source/l/libsoup/slack-desc
@@ -1,14 +1,14 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libsoup: libsoup (an HTTP client/server library)
libsoup:
-libsoup: Soup is an HTTP client/server library implementation in C. It uses
+libsoup: Soup is an HTTP client/server library implementation in C. It uses
libsoup: GObjects and the glib main loop to integrate well with GTK+
libsoup: applications, and has a synchronous API suitable for use in threaded
libsoup: applications.
diff --git a/source/l/libspectre/libspectre.SlackBuild b/source/l/libspectre/libspectre.SlackBuild
index 70ae971bf..c723cc2f8 100755
--- a/source/l/libspectre/libspectre.SlackBuild
+++ b/source/l/libspectre/libspectre.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,29 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libspectre
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -69,6 +77,7 @@ find . \
-exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
+CPPFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -77,11 +86,14 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libspectre/slack-desc b/source/l/libspectre/slack-desc
index c0341aac8..f7037fe58 100644
--- a/source/l/libspectre/slack-desc
+++ b/source/l/libspectre/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler--------------------------------------------------|
libspectre: libspectre (ghostscript wrapper library)
libspectre:
libspectre: libspectre is a small wrapper library for ghostscript, which is
-libspectre: used for rendering Postscript documents. The goal of libspectre
+libspectre: used for rendering Postscript documents. The goal of libspectre
libspectre: is to provide a convenient, easy to use API for writing programs
libspectre: which handle and render Postscript documents.
libspectre:
diff --git a/source/l/libssh/libssh.SlackBuild b/source/l/libssh/libssh.SlackBuild
index cdfcdaddf..0a24568ae 100755
--- a/source/l/libssh/libssh.SlackBuild
+++ b/source/l/libssh/libssh.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2011, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libssh
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -40,6 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -57,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -90,7 +98,7 @@ cd build
-DWITH_SFTP=1 \
-DWITH_SERVER=1 \
-DWITH_STATIC_LIB=0 \
- ..
+ .. || exit 1
make $NUMJOBS VERBOSE=1 || make || exit 1
make install DESTDIR=$PKG || exit 1
cd -
diff --git a/source/l/libssh/slack-desc b/source/l/libssh/slack-desc
index 12a1c1922..fcb9ae288 100644
--- a/source/l/libssh/slack-desc
+++ b/source/l/libssh/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libssh: libssh (library implementing ssh protocols)
libssh:
libssh: libssh is a mulitplatform C library implementing the SSHv2 and SSHv1
-libssh: protocol on client and server side. With libssh, you can remotely
+libssh: protocol on client and server side. With libssh, you can remotely
libssh: execute programs, transfer files, and use a secure and transparent
libssh: tunnel for your remote applications.
libssh:
diff --git a/source/l/libssh2/libssh2.SlackBuild b/source/l/libssh2/libssh2.SlackBuild
index 970bec964..9ed7e23f8 100755
--- a/source/l/libssh2/libssh2.SlackBuild
+++ b/source/l/libssh2/libssh2.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libssh2
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.gz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -74,7 +82,7 @@ CFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
- --enable-static=no
+ --enable-static=no || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/l/libssh2/slack-desc b/source/l/libssh2/slack-desc
index 86a4a7256..ac7011a4f 100644
--- a/source/l/libssh2/slack-desc
+++ b/source/l/libssh2/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ libssh2:
libssh2: libssh2 is a library implementing the SSH2 protocol, available under
libssh2: the revised BSD license.
libssh2:
-libssh2: Homepage: http://www.libssh2.org/
+libssh2: Homepage: http://www.libssh2.org/
libssh2:
libssh2:
libssh2:
diff --git a/source/l/libtasn1/libtasn1.SlackBuild b/source/l/libtasn1/libtasn1.SlackBuild
index c6265c3b9..ad3c897ac 100755
--- a/source/l/libtasn1/libtasn1.SlackBuild
+++ b/source/l/libtasn1/libtasn1.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libtasn1
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libtasn1
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -33,9 +35,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -54,7 +63,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
diff --git a/source/l/libtasn1/slack-desc b/source/l/libtasn1/slack-desc
index da00dacb8..508d0b299 100644
--- a/source/l/libtasn1/slack-desc
+++ b/source/l/libtasn1/slack-desc
@@ -1,14 +1,14 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
libtasn1: libtasn1 (ASN.1 library)
libtasn1:
-libtasn1: Libtasn1 is the GNU ASN.1 library. Abstract Syntax Notation One
+libtasn1: Libtasn1 is the GNU ASN.1 library. Abstract Syntax Notation One
libtasn1: (ASN.1) is a standard and flexible notation that describes rules and
libtasn1: structures for representing, encoding, transmitting, and decoding
libtasn1: data in telecommunications and computer networking.
diff --git a/source/l/libtermcap/libtermcap.SlackBuild b/source/l/libtermcap/libtermcap.SlackBuild
deleted file mode 100755
index 12e027637..000000000
--- a/source/l/libtermcap/libtermcap.SlackBuild
+++ /dev/null
@@ -1,87 +0,0 @@
-#!/bin/sh
-
-# Copyright 2005-2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-VERSION=1.2.3
-BUILD=${BUILD:-7}
-
-# Automatically determine the architecture we're building on:
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-libtermcap
-
-if [ "$ARCH" = "x86_64" ]; then
- LIBDIRSUFFIX="64"
-else
- LIBDIRSUFFIX=""
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG
-
-cd $TMP
-tar xzvf $CWD/termcap-compat_$VERSION.tar.gz
-cd termcap-compat-$VERSION
-chown -R root.root .
-zcat $CWD/termcap-compat_$VERSION.diff.gz | patch -p1 --verbose --backup --suffix=.orig
-zcat $CWD/termcap.h.diff.gz | patch -p0 --verbose --backup --suffix=.orig
-zcat $CWD/termcap.bufsize.diff.gz | patch -p1 --verbose --backup --suffix=.orig
-
-make
-
-# Install stuff manually:
-mkdir -p $PKG/lib${LIBDIRSUFFIX} $PKG/usr/lib${LIBDIRSUFFIX} \
- $PKG/usr/{include,info}
-install -m755 libtermcap.so.* $PKG/lib${LIBDIRSUFFIX}/
-install -m644 libtermcap.a $PKG/usr/lib${LIBDIRSUFFIX}/
-install -m644 termcap.h $PKG/usr/include/
-install -m644 termcap.info* $PKG/usr/info/
-
-( cd $PKG/lib${LIBDIRSUFFIX} ; ldconfig -n . ; chown root:root libtermcap* )
-( cd $PKG/usr/lib${LIBDIRSUFFIX}
- rm -f libermcap.so*
- ln -sf /lib${LIBDIRSUFFIX}/$(basename $(find $PKG/lib${LIBDIRSUFFIX} -type f)) libtermcap.so
-)
-
-# Save docs:
-mkdir -p $PKG/usr/doc/termcap-$VERSION
-cp -a ChangeLog debian/changelog README $PKG/usr/doc/termcap-$VERSION
-
-# Compress the info pages:
-( cd $PKG/usr/info ; gzip -9f *.info* )
-
-# Add the package description:
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-makepkg -l y -c n $TMP/libtermcap-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/libtermcap/slack-desc b/source/l/libtermcap/slack-desc
deleted file mode 100644
index 8a5b9bb6f..000000000
--- a/source/l/libtermcap/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-libtermcap: libtermcap (GNU termcap library)
-libtermcap:
-libtermcap: This is the GNU termcap library -- a library of C functions that
-libtermcap: enable programs to send control strings to terminals in a way
-libtermcap: independent of the terminal type. Most of this package is also
-libtermcap: distributed with GNU Emacs, but it is available in this separate
-libtermcap: distribution to make it easier to install as -ltermcap.
-libtermcap:
-libtermcap:
-libtermcap:
-libtermcap:
diff --git a/source/l/libtermcap/termcap-compat_1.2.3.diff b/source/l/libtermcap/termcap-compat_1.2.3.diff
deleted file mode 100644
index 4c7cdea85..000000000
--- a/source/l/libtermcap/termcap-compat_1.2.3.diff
+++ /dev/null
@@ -1,12 +0,0 @@
---- ./tparam.c.orig Thu Feb 14 17:10:50 2002
-+++ ./tparam.c Thu Feb 14 17:11:13 2002
-@@ -24,9 +24,6 @@
- #undef STDC_HEADERS
- #define STDC_HEADERS
- #define HAVE_UNISTD_H
--#if defined(HAVE_STRING_H) || defined(STDC_HEADERS)
--#define bcopy(s, d, n) memcpy ((d), (s), (n))
--#endif
- #endif
-
- #ifdef STDC_HEADERS
diff --git a/source/l/libtermcap/termcap-compat_1.2.3.dsc b/source/l/libtermcap/termcap-compat_1.2.3.dsc
deleted file mode 100644
index 7e5cb0523..000000000
--- a/source/l/libtermcap/termcap-compat_1.2.3.dsc
+++ /dev/null
@@ -1,22 +0,0 @@
------BEGIN PGP SIGNED MESSAGE-----
-
-Source: termcap-compat
-Version: 1.2.3
-Binary: termcap-compat
-Maintainer: Christian Hudon <chrish@debian.org>
-Architecture: i386
-Standards-Version: 3.1.1.1
-Build-Depends: altgcc, libc5-altdev
-Files:
- 698f1e510845b8c0f15ea8c3010c35ed 552156 termcap-compat_1.2.3.tar.gz
-
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.0.1 (GNU/Linux)
-Comment: For info see http://www.gnupg.org
-
-iQCVAwUBOJpLoo4/+LDuJkz5AQFJkgP9FUqc1PSkQLfcukMK3rdeIDmoiCjX7MxW
-xi5A6D/PV0R4K/USchVgj6Q1haf0hf3tQ4TrMFQ4XmapPppcb0gMlDrr33QxN6Hk
-u9AWalxPwK3eqQPcuJhZUZvbTQqt2wp5CH5ooQCaPNHBlIo2EvFVnmGcz9Fz5Nty
-BoG1ICSAAw8=
-=JWZJ
------END PGP SIGNATURE-----
diff --git a/source/l/libtermcap/termcap.bufsize.diff b/source/l/libtermcap/termcap.bufsize.diff
deleted file mode 100644
index 59835d165..000000000
--- a/source/l/libtermcap/termcap.bufsize.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./termcap.c.orig 1999-10-26 19:44:37.000000000 -0700
-+++ ./termcap.c 2003-01-03 14:22:13.000000000 -0800
-@@ -43,7 +43,7 @@
- speed_t ospeed;
- int tputs_baud_rate;
- char PC;
--int tgetent_bufsize = 1024;
-+int tgetent_bufsize = 4096;
-
- /* We store a terminal description in a linked list. */
- struct tc_ent {
diff --git a/source/l/libtermcap/termcap.h.diff b/source/l/libtermcap/termcap.h.diff
deleted file mode 100644
index bbcb4a619..000000000
--- a/source/l/libtermcap/termcap.h.diff
+++ /dev/null
@@ -1,29 +0,0 @@
---- termcap.h.orig Tue May 9 18:54:56 2000
-+++ termcap.h Tue May 9 19:25:08 2000
-@@ -34,7 +34,11 @@
-
- __BEGIN_DECLS
-
-+#if defined(__PMT) /* XXX glibc-2.1 wants this */
-+typedef int (*outfuntype) __PMT((int));
-+#else
- typedef int (*outfuntype) __P((int));
-+#endif
-
- extern int tgetent __P((void *__buffer, __const char *__termtype));
- extern int tgetflag __P((__const char *__name));
-@@ -44,8 +48,14 @@
- int __vpos));
- extern char *tparam __P((__const char *__ctlstring, void *__buffer,
- int __size, ...));
-+
-+#if defined(__PMT) /* XXX glibc-2.1 wants this */
-+extern void tputs __P((__const char *__string, int __nlines,
-+ int (*) __PMT((int))));
-+#else
- extern void tputs __P((__const char *__string, int __nlines,
- int (*) __P((int))));
-+#endif
-
- __END_DECLS
-
diff --git a/source/l/libtheora/libtheora-1.1.1-libpng16.patch b/source/l/libtheora/libtheora-1.1.1-libpng16.patch
new file mode 100644
index 000000000..93da700c4
--- /dev/null
+++ b/source/l/libtheora/libtheora-1.1.1-libpng16.patch
@@ -0,0 +1,17 @@
+http://bugs.gentoo.org/465450
+http://trac.xiph.org/ticket/1947
+
+--- examples/png2theora.c
++++ examples/png2theora.c
+@@ -462,9 +462,9 @@
+ png_set_strip_alpha(png_ptr);
+
+ row_data = (png_bytep)png_malloc(png_ptr,
+- 3*height*width*png_sizeof(*row_data));
++ 3*height*width*sizeof(*row_data));
+ row_pointers = (png_bytep *)png_malloc(png_ptr,
+- height*png_sizeof(*row_pointers));
++ height*sizeof(*row_pointers));
+ for(y = 0; y < height; y++) {
+ row_pointers[y] = row_data + y*(3*width);
+ }
diff --git a/source/l/libtheora/libtheora-1.1.1.latex.patch b/source/l/libtheora/libtheora-1.1.1.latex.patch
new file mode 100644
index 000000000..bf7d85477
--- /dev/null
+++ b/source/l/libtheora/libtheora-1.1.1.latex.patch
@@ -0,0 +1,54 @@
+From: =?utf-8?q?Martin_Stegh=C3=B6fer?= <martin@steghoefer.eu>
+Date: Tue, 22 Sep 2015 10:17:33 +0200
+Subject: Use the float latex package in the spec.
+
+Author: Ralph Giles <giles@mozilla.com>
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=790442
+Origin: backport, https://git.xiph.org/?p=theora.git;a=commitdiff;h=fbb275803696085225c310773474ef4dcf8a4528
+
+Newer texlive distributions require \usepackage{float} for
+the [H] figure layout directive. We use this to make sure
+the header layout figures are at the top of their respective
+sections for conventional reference like in an RFC, so requiring
+the additional package is safer than falling back to standard
+latex [h] or [!h].
+
+Note that [H] from the float package is incompatible with
+fallback specifiers.
+
+The configure script will automatically check for the new package.
+
+---
+ doc/spec/spec.tex | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/doc/spec/spec.tex b/doc/spec/spec.tex
+index b29d4ef..db535a4 100644
+--- a/doc/spec/spec.tex
++++ b/doc/spec/spec.tex
+@@ -11,6 +11,7 @@
+ \usepackage{longtable}
+ \usepackage{ltablex}
+ \usepackage{wrapfig}
++\usepackage{float}
+ \usepackage[pdfpagemode=None,pdfstartview=FitH,pdfview=FitH,colorlinks=true]%
+ {hyperref}
+
+@@ -1949,7 +1950,7 @@ These are indicated as they appear in the sections below.
+ \section{Common Header Decode}
+ \label{sub:common-header}
+
+-\begin{figure}[Htbp]
++\begin{figure}[H]
+ \begin{center}
+ \begin{verbatim}
+ 0 1 2 3
+@@ -2024,7 +2025,7 @@ Packets with other header types (\hex{83}--\hex{FF}) are reserved and MUST be
+ \section{Identification Header Decode}
+ \label{sec:idheader}
+
+-\begin{figure}[Htbp]
++\begin{figure}[H]
+ \begin{center}
+ \begin{verbatim}
+ 0 1 2 3
diff --git a/source/l/libtheora/libtheora.SlackBuild b/source/l/libtheora/libtheora.SlackBuild
index 1f8a1abf5..a3b9ee5db 100755
--- a/source/l/libtheora/libtheora.SlackBuild
+++ b/source/l/libtheora/libtheora.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libtheora
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -60,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -70,18 +78,24 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+zcat $CWD/libtheora-1.1.1-libpng16.patch.gz | patch -p0 --verbose || exit 1
+zcat $CWD/libtheora-1.1.1.latex.patch.gz | patch -p1 --verbose || exit 1
+
# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Use the source, Luke.
rm -rf $PKG/usr/share/doc
rmdir $PKG/usr/share
diff --git a/source/l/libtheora/slack-desc b/source/l/libtheora/slack-desc
index 114ad64ac..566186cff 100644
--- a/source/l/libtheora/slack-desc
+++ b/source/l/libtheora/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -13,7 +13,7 @@ libtheora: for use within the Foundation's Ogg multimedia streaming system.
libtheora:
libtheora: The Theora bitstream format was frozen after the alpha3 release. This
libtheora: means that files produced by the alpha3 encoder will always be
-libtheora: playable according to the Theora I specification. Traditionally
+libtheora: playable according to the Theora I specification. Traditionally
libtheora: alpha means a proof of concept, not a production-ready release.
libtheora: However the code is very robust, ready for and indeed in general use.
libtheora:
diff --git a/source/l/libtiff/libtiff-make-check.patch b/source/l/libtiff/libtiff-make-check.patch
deleted file mode 100644
index 46796d421..000000000
--- a/source/l/libtiff/libtiff-make-check.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/html/man/Makefile.am b/html/man/Makefile.am
-index ca222de..c7421ac 100644
---- a/html/man/Makefile.am
-+++ b/html/man/Makefile.am
-@@ -85,7 +85,6 @@ docfiles = \
- ras2tiff.1.html \
- raw2tiff.1.html \
- rgb2ycbcr.1.html \
-- sgi2tiff.1.html \
- thumbnail.1.html \
- tiff2bw.1.html \
- tiff2pdf.1.html \
-@@ -96,12 +95,10 @@ docfiles = \
- tiffcrop.1.html \
- tiffdither.1.html \
- tiffdump.1.html \
-- tiffgt.1.html \
- tiffinfo.1.html \
- tiffmedian.1.html \
- tiffset.1.html \
-- tiffsplit.1.html \
-- tiffsv.1.html
-+ tiffsplit.1.html
-
- dist_doc_DATA = $(indexfile) $(docfiles)
-
diff --git a/source/l/libtiff/libtiff.SlackBuild b/source/l/libtiff/libtiff.SlackBuild
index 99f8eb324..3bdac49ed 100755
--- a/source/l/libtiff/libtiff.SlackBuild
+++ b/source/l/libtiff/libtiff.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2005-2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2005-2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,8 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libtiff
VERSION=${VERSION:-$(echo tiff-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=1
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -33,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i386" ]; then
@@ -52,7 +63,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libtiff
@@ -61,10 +71,9 @@ mkdir -p $PKG
cd $TMP
rm -rf tiff-$VERSION
tar xvf $CWD/tiff-$VERSION.tar.?z* || exit 1
-cd tiff-$VERSION
+cd tiff-$VERSION || exit 1
-zcat $CWD/libtiff-am-version.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/libtiff-make-check.patch.gz | patch -p1 --verbose || exit 1
+#zcat $CWD/libtiff-am-version.patch.gz | patch -p1 --verbose || exit 1
chown -R root:root .
find . \
@@ -81,10 +90,14 @@ CFLAGS="$SLKCFLAGS" \
--disable-static \
--program-prefix="" \
--program-suffix="" \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
( cd man ; make install-man DESTDIR=$PKG || exit 1 ) || exit 1
rm -r $PKG/usr/share
( cd $PKG
diff --git a/source/l/libtiff/slack-desc b/source/l/libtiff/slack-desc
index 42c79f47d..523cb11a5 100644
--- a/source/l/libtiff/slack-desc
+++ b/source/l/libtiff/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libtiff: libtiff (a library for reading and writing TIFF files)
libtiff:
libtiff: This package provides support for the Tag Image File Format (TIFF),
-libtiff: a widely used format for storing image data. Included is the libtiff
+libtiff: a widely used format for storing image data. Included is the libtiff
libtiff: library (for reading and writing TIFF files), and a collection of
libtiff: tools for working with TIFF images.
libtiff:
-libtiff:
+libtiff: Homepage: http://www.simplesystems.org/libtiff
libtiff:
libtiff:
libtiff:
diff --git a/source/l/libunistring/libunistring.SlackBuild b/source/l/libunistring/libunistring.SlackBuild
index 070acd26a..047a9ae68 100755
--- a/source/l/libunistring/libunistring.SlackBuild
+++ b/source/l/libunistring/libunistring.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2013 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2013, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,6 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libunistring
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
@@ -28,7 +29,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
@@ -36,6 +37,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i386" ]; then
@@ -64,7 +73,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -74,7 +82,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -91,14 +99,18 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--infodir=/usr/info \
+ --docdir=/usr/doc/libunistring-$VERSION/html \
--disable-static \
--disable-rpath \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libunistring/slack-desc b/source/l/libunistring/slack-desc
index 81063deaa..089658f2f 100644
--- a/source/l/libunistring/slack-desc
+++ b/source/l/libunistring/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ libunistring:
libunistring: This library provides functions for manipulating Unicode strings and
libunistring: for manipulating C strings according to the Unicode standard.
libunistring:
-libunistring: Homepage: http://www.gnu.org/s/libunistring
+libunistring: Homepage: http://www.gnu.org/s/libunistring
libunistring:
libunistring:
libunistring:
diff --git a/source/l/libunwind/libunwind.SlackBuild b/source/l/libunwind/libunwind.SlackBuild
new file mode 100755
index 000000000..25a055a01
--- /dev/null
+++ b/source/l/libunwind/libunwind.SlackBuild
@@ -0,0 +1,161 @@
+#!/bin/bash
+
+# Copyright 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libunwind
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Nuke any .a files that shouldn't have been installed:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
+
+# Prevent a multilib conflict. Thanks to Spot.
+touch -r NEWS $PKG/usr/include/libunwind.h
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* ChangeLog NEWS README* TODO \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/libunwind/slack-desc b/source/l/libunwind/slack-desc
new file mode 100644
index 000000000..ac037101e
--- /dev/null
+++ b/source/l/libunwind/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libunwind: libunwind (API to determine the call-chain of a program)
+libunwind:
+libunwind: The primary goal of libunwind is to define a portable and efficient C
+libunwind: programming interface (API) to determine the call-chain of a program.
+libunwind: The API additionally provides the means to manipulate the preserved
+libunwind: (callee-saved) state of each call-frame and to resume execution at
+libunwind: any point in the call-chain (non-local goto). Some uses for this API
+libunwind: include exception handling, debuggers, introspection, or implementing
+libunwind: an extremely efficient version of setjmp().
+libunwind:
+libunwind: Homepage: http://www.nongnu.org/libunwind
diff --git a/source/l/libusb-compat/libusb-compat.SlackBuild b/source/l/libusb-compat/libusb-compat.SlackBuild
index 743264730..c12791bd0 100755
--- a/source/l/libusb-compat/libusb-compat.SlackBuild
+++ b/source/l/libusb-compat/libusb-compat.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libusb-compat
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,6 +37,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i386" ]; then
@@ -64,7 +73,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -74,7 +82,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -91,12 +99,15 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/libusb-$VERSION \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libusb-compat/slack-desc b/source/l/libusb-compat/slack-desc
index 36982b5a6..ec95d8314 100644
--- a/source/l/libusb-compat/slack-desc
+++ b/source/l/libusb-compat/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libusb-compat: libusb-compat (Compatibility library for libusb-0.1 apps)
libusb-compat:
libusb-compat: A compatibility layer allowing applications written for libusb-0.1 to
-libusb-compat: work with libusb-1.0. libusb-compat-0.1 attempts to retain as much
+libusb-compat: work with libusb-1.0. libusb-compat-0.1 attempts to retain as much
libusb-compat: ABI and API compatibility with libusb-0.1 as possible.
libusb-compat:
-libusb-compat: Homepage: http://libusb.info
+libusb-compat: Homepage: http://libusb.info
libusb-compat:
libusb-compat:
libusb-compat:
diff --git a/source/l/libusb/libusb.SlackBuild b/source/l/libusb/libusb.SlackBuild
index 5ab4d15be..02fd7ca55 100755
--- a/source/l/libusb/libusb.SlackBuild
+++ b/source/l/libusb/libusb.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,12 +20,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
-VERSION=${VERSION:-1.0.20} # libusb version
+PKGNAM=libusb
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
-BUILD=${BUILD:-1}
-
-NUMJOBS=${NUMJOBS:--j6}
+NUMJOBS=${NUMJOBS:--j7}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-libusb
@@ -59,8 +67,8 @@ mkdir -p $TMP $PKG
# First we'll do the main libusb stuff
cd $TMP
rm -rf libusb-$VERSION
-tar xvf $CWD/libusb-$VERSION.tar.xz
-cd libusb-$VERSION
+tar xvf $CWD/libusb-$VERSION.tar.?z || exit 1
+cd libusb-$VERSION || exit 1
chown -R root:root .
find . \
@@ -76,14 +84,17 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/libusb-$VERSION \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
mkdir -p $PKG/usr/doc/libusb-$VERSION
cp -a \
- AUTHORS COPYING INSTALL NEWS PORTING README THANKS TODO \
+ AUTHORS COPYING* INSTALL NEWS PORTING README* THANKS TODO \
$PKG/usr/doc/libusb-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
@@ -94,7 +105,7 @@ if [ -r ChangeLog ]; then
touch -r ChangeLog $DOCSDIR/ChangeLog
fi
-# Now handle the package-wide stuff
+# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libusb/slack-desc b/source/l/libusb/slack-desc
index 5b10cba4d..b11ab9e1f 100644
--- a/source/l/libusb/slack-desc
+++ b/source/l/libusb/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libusb: libusb (USB library)
libusb:
libusb: This is libusb, a library which allows userspace application access
-libusb: to USB devices. It is used to connect to USB devices like scanners
+libusb: to USB devices. It is used to connect to USB devices like scanners
libusb: and printers.
libusb:
-libusb: http://libusb.info
+libusb: Homepage: http://libusb.info
libusb:
libusb:
libusb:
diff --git a/source/l/libusbmuxd/libusbmuxd.SlackBuild b/source/l/libusbmuxd/libusbmuxd.SlackBuild
index 5f9afeb5f..21786a0cb 100755
--- a/source/l/libusbmuxd/libusbmuxd.SlackBuild
+++ b/source/l/libusbmuxd/libusbmuxd.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libusbmuxd
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -60,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -85,6 +93,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libusbmuxd/slack-desc b/source/l/libusbmuxd/slack-desc
index ca1bfc901..e6467bad1 100644
--- a/source/l/libusbmuxd/slack-desc
+++ b/source/l/libusbmuxd/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ libusbmuxd:
libusbmuxd: A client library to multiplex connections from and to iOS devices.
libusbmuxd: It is used by libgpod.
libusbmuxd:
-libusbmuxd: The libusbmuxd homepage: http://www.libimobiledevice.org/
+libusbmuxd: The libusbmuxd homepage: http://www.libimobiledevice.org/
libusbmuxd:
libusbmuxd:
libusbmuxd:
diff --git a/source/l/libvisio/libvisio.SlackBuild b/source/l/libvisio/libvisio.SlackBuild
index bc8516cd7..abc96f60d 100755
--- a/source/l/libvisio/libvisio.SlackBuild
+++ b/source/l/libvisio/libvisio.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libvisio
# Copyright 2015 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libvisio
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-4}
NUMJOBS=${NUMJOBS:--j7}
@@ -41,6 +43,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -58,7 +68,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libvisio
@@ -90,6 +99,16 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# In honor of the above kludge, let's at least add an extra check against
+# creating a bad package:
+if [ ! /bin/ls $PKG/usr/lib${LIBDIRSUFFIX}/libvisio-* ]; then
+ echo "FATAL: no built libvisio in package"
+ exit 1
+fi
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a AUTHORS ChangeLog COPYING* NEWS README* \
$PKG/usr/doc/$PKGNAM-$VERSION
diff --git a/source/l/libvisio/slack-desc b/source/l/libvisio/slack-desc
index beeec2e15..5ee89aad0 100644
--- a/source/l/libvisio/slack-desc
+++ b/source/l/libvisio/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libvisual-plugins/libvisual-plugins.SlackBuild b/source/l/libvisual-plugins/libvisual-plugins.SlackBuild
index f5dec5bd3..c2d911e94 100755
--- a/source/l/libvisual-plugins/libvisual-plugins.SlackBuild
+++ b/source/l/libvisual-plugins/libvisual-plugins.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libvisual-plugins
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -60,7 +68,7 @@ mkdir -p $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -77,7 +85,9 @@ CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- $ARCH-slackware-linux
+ --disable-corona \
+ --disable-gforce \
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
diff --git a/source/l/libvisual-plugins/slack-desc b/source/l/libvisual-plugins/slack-desc
index abd94a61d..19fbcf01f 100644
--- a/source/l/libvisual-plugins/slack-desc
+++ b/source/l/libvisual-plugins/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libvisual-plugins: libvisual-plugins (plugins for the libvisual library)
libvisual-plugins:
-libvisual-plugins: By itself, libvisual only provides a framework to build upon. The
+libvisual-plugins: By itself, libvisual only provides a framework to build upon. The
libvisual-plugins: plugins in this package are designed to work with libvisual to allow
libvisual-plugins: it to actually do all sorts of interesting visualizations based on
-libvisual-plugins: metrics gathered as players process audio information data. Plugins
+libvisual-plugins: metrics gathered as players process audio information data. Plugins
libvisual-plugins: can be mixed (more than one run at a time), or morphed from one to
-libvisual-plugins: another. Other special effects are possible as well.
+libvisual-plugins: another. Other special effects are possible as well.
libvisual-plugins:
libvisual-plugins: Several authors have contributed libvisual-plugins under the GPL.
libvisual-plugins:
diff --git a/source/l/libvisual/libvisual.SlackBuild b/source/l/libvisual/libvisual.SlackBuild
index 0d749cdfc..13020d725 100755
--- a/source/l/libvisual/libvisual.SlackBuild
+++ b/source/l/libvisual/libvisual.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libvisual
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -60,7 +68,7 @@ fi
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
zcat $CWD/libvisual.glib.h.diff.gz | patch -p1 --verbose || exit 1
@@ -77,12 +85,15 @@ CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- $ARCH-slackware-linux
+ $ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libvisual/slack-desc b/source/l/libvisual/slack-desc
index 2e95a1621..c185b0230 100644
--- a/source/l/libvisual/slack-desc
+++ b/source/l/libvisual/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libvisual: libvisual (audio visualization library)
libvisual:
libvisual: Libvisual is an audio visualization library that acts as a middle
-libvisual: layer between audio visualization plugins and applications. Any
+libvisual: layer between audio visualization plugins and applications. Any
libvisual: application written with libvisual support included will be able to
libvisual: make use of all the plugins that are written for libvisual.
libvisual: Libvisual also contains a whole set of facilities to ease the
diff --git a/source/l/libvncserver/libvncserver.SlackBuild b/source/l/libvncserver/libvncserver.SlackBuild
index 1e22af589..5ed7f33a8 100755
--- a/source/l/libvncserver/libvncserver.SlackBuild
+++ b/source/l/libvncserver/libvncserver.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2014 Heinz Wiesinger, Amsterdam, NL
-# Copyright 2008, 2009, 2010, 2011, 2012, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,11 @@
# Modified by Robby Workman <rworkman at slackware.com>
# Modified by Eric Hameleers <alien at slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libvncserver
VERSION=${VERSION:-$(echo LibVNCServer-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
NUMJOBS=${NUMJOBS:--j7}
@@ -41,6 +44,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -63,7 +74,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libvncserver
@@ -82,8 +92,6 @@ find . \
./autogen.sh
-# libva support broken and WONTFIX (for now) upstream.
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -92,13 +100,15 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --without-libva \
--disable-static \
- --build=$TARGET
+ --build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
if [ -x client_examples/.libs/SDLvncviewer ]; then
cp -a client_examples/.libs/SDLvncviewer $PKG/usr/bin/SDLvncviewer
fi
@@ -108,7 +118,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" \
mkdir -p $PKG/usr/doc/libvncserver-$VERSION
cp -a \
- AUTHORS COPYING* INSTALL NEWS README TODO \
+ AUTHORS COPYING* INSTALL NEWS* README* TODO* \
$PKG/usr/doc/libvncserver-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
diff --git a/source/l/libvncserver/slack-desc b/source/l/libvncserver/slack-desc
index 958b6fafc..11bf7b0f6 100644
--- a/source/l/libvncserver/slack-desc
+++ b/source/l/libvncserver/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libvorbis/libvorbis.SlackBuild b/source/l/libvorbis/libvorbis.SlackBuild
index be5558758..a696df217 100755
--- a/source/l/libvorbis/libvorbis.SlackBuild
+++ b/source/l/libvorbis/libvorbis.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,24 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=libvorbis
VERSION=${VERSION:-$(echo libvorbis-*.tar.?z* | cut -d - -f 2 | rev | cut -f 3- -d . | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -50,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libvorbis
@@ -59,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf libvorbis-$VERSION
tar xvf $CWD/libvorbis-$VERSION.tar.?z* || exit 1
-cd libvorbis-$VERSION
+cd libvorbis-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -73,10 +82,13 @@ CXXFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libvorbis/slack-desc b/source/l/libvorbis/slack-desc
index b523d9995..2a3bb8f78 100644
--- a/source/l/libvorbis/slack-desc
+++ b/source/l/libvorbis/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libvorbis: libvorbis (Ogg Vorbis library)
libvorbis:
libvorbis: This library supports the Vorbis General Audio Compression Codec
-libvorbis: (commonly known as Ogg Vorbis). Ogg Vorbis is a fully open,
+libvorbis: (commonly known as Ogg Vorbis). Ogg Vorbis is a fully open,
libvorbis: non-proprietary, patent-and-royalty-free, general-purpose compressed
libvorbis: audio format for audio and music at fixed and variable bitrates.
libvorbis:
-libvorbis: The libvorbis library requires libao and libogg. You'll find some
+libvorbis: The libvorbis library requires libao and libogg. You'll find some
libvorbis: basic tools for creating and using Ogg Vorbis files in the
libvorbis: vorbis-tools package.
libvorbis:
diff --git a/source/l/libvpx/libvpx.SlackBuild b/source/l/libvpx/libvpx.SlackBuild
index e0c8c1017..fc9608ef4 100755
--- a/source/l/libvpx/libvpx.SlackBuild
+++ b/source/l/libvpx/libvpx.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libvpx
# Copyright 2013 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
-# Copyright 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libvpx
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,6 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
if [ "$ARCH" = "i586" ]; then
@@ -55,7 +65,6 @@ else
ARCHOPTS="--target=${ARCH}-linux-gcc"
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -63,7 +72,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find -L . \
@@ -82,9 +91,13 @@ cd build-tmp
--libdir=/usr/lib${LIBDIRSUFFIX} \
--disable-debug-libs \
--disable-debug \
- --enable-postproc \
--enable-vp8 \
+ --enable-postproc \
+ --enable-vp9 \
+ --enable-vp9-postproc \
+ --enable-vp9-highbitdepth \
--enable-shared \
+ --disable-static \
--enable-runtime-cpu-detect \
$ARCHOPTS
@@ -92,9 +105,6 @@ cd build-tmp
make install DESTDIR=$PKG || exit 1
cd ..
-# remove the static version
-rm $PKG/usr/lib${LIBDIRSUFFIX}/$PKGNAM.a
-
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/libvpx/slack-desc b/source/l/libvpx/slack-desc
index cfb82076a..14cc2dab4 100644
--- a/source/l/libvpx/slack-desc
+++ b/source/l/libvpx/slack-desc
@@ -2,14 +2,14 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
libvpx: libvpx (VP8/VP9 video codec)
libvpx:
libvpx: VP8 is an open video codec, originally developed by On2 and released
-libvpx: as open source by Google Inc. It is the successor of the VP3 codec,
+libvpx: as open source by Google Inc. It is the successor of the VP3 codec,
libvpx: on which the Theora codec was based.
libvpx:
libvpx: VP9 is an open and royalty free video compression standard developed
diff --git a/source/l/libwebp/libwebp.SlackBuild b/source/l/libwebp/libwebp.SlackBuild
new file mode 100755
index 000000000..c4d6d7e63
--- /dev/null
+++ b/source/l/libwebp/libwebp.SlackBuild
@@ -0,0 +1,173 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Based on original SBo build script by powtrix (@gmail.com)
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libwebp
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --disable-static \
+ --disable-silent-rules \
+ --enable-everything \
+ --enable-swap-16bit-csp \
+ --enable-experimental \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Build/install SWIG bindings:
+( cd swig
+ # Fix temporary working directory:
+ sed -i "/^tmpdir/s|=.*|= 'tmpdir'|" setup.py
+
+ CFLAGS="$SLKCFLAGS -I$PKG/usr/include" \
+ LDFLAGS="-L$PKG/usr/lib${LIBDIRSUFFIX} -lwebp" \
+ python setup.py install --root=$PKG
+
+ CFLAGS="$SLKCFLAGS -I$PKG/usr/include" \
+ LDFLAGS="-L$PKG/usr/lib${LIBDIRSUFFIX} -lwebp" \
+ python3 setup.py install --root=$PKG
+)
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* ChangeLog NEWS* PATENTS README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/libwebp/slack-desc b/source/l/libwebp/slack-desc
new file mode 100644
index 000000000..426d3ee8a
--- /dev/null
+++ b/source/l/libwebp/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+libwebp: libwebp (WebP photo compression library)
+libwebp:
+libwebp: WebP is a method of lossy compression that can be used on
+libwebp: photographic images. The degree of compression is adjustable so a
+libwebp: user can choose the trade-off between file size and image quality.
+libwebp: WebP typically achieves an average of 39% more compression than
+libwebp: JPEG and JPEG 2000, without loss of image quality.
+libwebp:
+libwebp: Homepage: https://developers.google.com/speed/webp/
+libwebp:
+libwebp:
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2004-0941.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2004-0941.patch
new file mode 100644
index 000000000..581e4e091
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2004-0941.patch
@@ -0,0 +1,17 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd_png.c 2004-11-11 14:02:37.407589824 -0500
++++ libwmf-0.2.8.4/src/extra/gd/gd_png.c 2004-11-11 14:04:29.672522960 -0500
+@@ -188,6 +188,14 @@
+
+ png_get_IHDR (png_ptr, info_ptr, &width, &height, &bit_depth, &color_type,
+ &interlace_type, NULL, NULL);
++ if (overflow2(sizeof (int), width))
++ {
++ return NULL;
++ }
++ if (overflow2(sizeof (int) * width, height))
++ {
++ return NULL;
++ }
+ if ((color_type == PNG_COLOR_TYPE_RGB) ||
+ (color_type == PNG_COLOR_TYPE_RGB_ALPHA))
+ {
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2006-3376.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2006-3376.patch
new file mode 100644
index 000000000..507fe6622
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2006-3376.patch
@@ -0,0 +1,27 @@
+--- libwmf-0.2.8.4.orig/src/player.c 2002-12-10 19:30:26.000000000 +0000
++++ libwmf-0.2.8.4/src/player.c 2006-07-12 15:12:52.000000000 +0100
+@@ -42,6 +42,7 @@
+ #include "player/defaults.h" /* Provides: default settings */
+ #include "player/record.h" /* Provides: parameter mechanism */
+ #include "player/meta.h" /* Provides: record interpreters */
++#include <stdint.h>
+
+ /**
+ * @internal
+@@ -132,8 +134,14 @@
+ }
+ }
+
+-/* P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API)-3) * 2 * sizeof (unsigned char));
+- */ P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API) ) * 2 * sizeof (unsigned char));
++ if (MAX_REC_SIZE(API) > UINT32_MAX / 2)
++ {
++ API->err = wmf_E_InsMem;
++ WMF_DEBUG (API,"bailing...");
++ return (API->err);
++ }
++
++ P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API) ) * 2 * sizeof (unsigned char));
+
+ if (ERR (API))
+ { WMF_DEBUG (API,"bailing...");
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-0455.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-0455.patch
new file mode 100644
index 000000000..0cc5abc71
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-0455.patch
@@ -0,0 +1,11 @@
+--- libwmf-0.2.8.4/src/extra/gd/gdft.c 2010-12-06 11:18:26.000000000 +0000
++++ libwmf-0.2.8.4/src/extra/gd/gdft.c 2010-12-06 11:21:09.000000000 +0000
+@@ -811,7 +811,7 @@
+ {
+ ch = c & 0xFF; /* don't extend sign */
+ }
+- next++;
++ if (*next) next++;
+ }
+ else
+ {
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-2756.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-2756.patch
new file mode 100644
index 000000000..eba8fac25
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-2756.patch
@@ -0,0 +1,16 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd_png.c 1 Apr 2007 20:41:01 -0000 1.21.2.1
++++ libwmf-0.2.8.4/src/extra/gd/gd_png.c 16 May 2007 19:06:11 -0000
+@@ -78,8 +78,11 @@
+ gdPngReadData (png_structp png_ptr,
+ png_bytep data, png_size_t length)
+ {
+- gdGetBuf (data, length, (gdIOCtx *)
+- png_get_io_ptr (png_ptr));
++ int check;
++ check = gdGetBuf (data, length, (gdIOCtx *) png_get_io_ptr (png_ptr));
++ if (check != length) {
++ png_error(png_ptr, "Read Error: truncated data");
++ }
+ }
+
+ static void
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3472.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3472.patch
new file mode 100644
index 000000000..ac1ead5a8
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3472.patch
@@ -0,0 +1,61 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd.c
++++ libwmf-0.2.8.4/src/extra/gd/gd.c
+@@ -106,6 +106,18 @@
+ gdImagePtr im;
+ unsigned long cpa_size;
+
++ if (overflow2(sx, sy)) {
++ return NULL;
++ }
++
++ if (overflow2(sizeof (int *), sy)) {
++ return NULL;
++ }
++
++ if (overflow2(sizeof(int), sx)) {
++ return NULL;
++ }
++
+ im = (gdImage *) gdMalloc (sizeof (gdImage));
+ if (im == 0) return 0;
+ memset (im, 0, sizeof (gdImage));
+--- libwmf-0.2.8.4/src/extra/gd/gdhelpers.c 2010-12-06 11:47:31.000000000 +0000
++++ libwmf-0.2.8.4/src/extra/gd/gdhelpers.c 2010-12-06 11:48:04.000000000 +0000
+@@ -2,6 +2,7 @@
+ #include "gdhelpers.h"
+ #include <stdlib.h>
+ #include <string.h>
++#include <limits.h>
+
+ /* TBB: gd_strtok_r is not portable; provide an implementation */
+
+@@ -94,3 +95,18 @@
+ {
+ free (ptr);
+ }
++
++int overflow2(int a, int b)
++{
++ if(a < 0 || b < 0) {
++ fprintf(stderr, "gd warning: one parameter to a memory allocation multiplication is negative, failing operation gracefully\n");
++ return 1;
++ }
++ if(b == 0)
++ return 0;
++ if(a > INT_MAX / b) {
++ fprintf(stderr, "gd warning: product of memory allocation multiplication would exceed INT_MAX, failing operation gracefully\n");
++ return 1;
++ }
++ return 0;
++}
+--- libwmf-0.2.8.4/src/extra/gd/gdhelpers.h 2010-12-06 11:47:17.000000000 +0000
++++ libwmf-0.2.8.4/src/extra/gd/gdhelpers.h 2010-12-06 11:48:36.000000000 +0000
+@@ -15,6 +15,8 @@
+ void *gdMalloc(size_t size);
+ void *gdRealloc(void *ptr, size_t size);
+
++int overflow2(int a, int b);
++
+ #pragma GCC visibility pop
+
+ #endif /* GDHELPERS_H */
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3473.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3473.patch
new file mode 100644
index 000000000..590189969
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3473.patch
@@ -0,0 +1,13 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd.c
++++ libwmf-0.2.8.4/src/extra/gd/gd.c
+@@ -2483,6 +2483,10 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromXbm (FILE * fd)
+ }
+ bytes = (w * h / 8) + 1;
+ im = gdImageCreate (w, h);
++ if (!im) {
++ return 0;
++ }
++
+ gdImageColorAllocate (im, 255, 255, 255);
+ gdImageColorAllocate (im, 0, 0, 0);
+ x = 0;
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3477.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3477.patch
new file mode 100644
index 000000000..81ac03853
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2007-3477.patch
@@ -0,0 +1,38 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd.c
++++ libwmf-0.2.8.4/src/extra/gd/gd.c
+@@ -1335,10 +1335,31 @@
+ int w2, h2;
+ w2 = w / 2;
+ h2 = h / 2;
+- while (e < s)
+- {
+- e += 360;
+- }
++
++ if ((s % 360) == (e % 360)) {
++ s = 0; e = 360;
++ } else {
++ if (s > 360) {
++ s = s % 360;
++ }
++
++ if (e > 360) {
++ e = e % 360;
++ }
++
++ while (s < 0) {
++ s += 360;
++ }
++
++ while (e < s) {
++ e += 360;
++ }
++
++ if (s == e) {
++ s = 0; e = 360;
++ }
++ }
++
+ for (i = s; (i <= e); i++)
+ {
+ int x, y;
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2009-3546.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2009-3546.patch
new file mode 100644
index 000000000..d718976ad
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2009-3546.patch
@@ -0,0 +1,13 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd_gd.c 2010-12-06 14:56:06.000000000 +0000
++++ libwmf-0.2.8.4/src/extra/gd/gd_gd.c 2010-12-06 14:57:04.000000000 +0000
+@@ -42,6 +42,10 @@
+ {
+ goto fail1;
+ }
++ if (&im->colorsTotal > gdMaxColors)
++ {
++ goto fail1;
++ }
+ }
+ /* Int to accommodate truecolor single-color transparency */
+ if (!gdGetInt (&im->transparent, in))
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2015-0848+CVE-2015-4588.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2015-0848+CVE-2015-4588.patch
new file mode 100644
index 000000000..e8ba8db1e
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2015-0848+CVE-2015-4588.patch
@@ -0,0 +1,118 @@
+--- libwmf-0.2.8.4/src/ipa/ipa/bmp.h 2015-06-08 14:46:24.591876404 +0100
++++ libwmf-0.2.8.4/src/ipa/ipa/bmp.h 2015-06-08 14:46:35.345993247 +0100
+@@ -859,7 +859,7 @@
+ %
+ %
+ */
+-static void DecodeImage (wmfAPI* API,wmfBMP* bmp,BMPSource* src,unsigned int compression,unsigned char* pixels)
++static int DecodeImage (wmfAPI* API,wmfBMP* bmp,BMPSource* src,unsigned int compression,unsigned char* pixels)
+ { int byte;
+ int count;
+ int i;
+@@ -870,12 +870,14 @@
+ U32 u;
+
+ unsigned char* q;
++ unsigned char* end;
+
+ for (u = 0; u < ((U32) bmp->width * (U32) bmp->height); u++) pixels[u] = 0;
+
+ byte = 0;
+ x = 0;
+ q = pixels;
++ end = pixels + bmp->width * bmp->height;
+
+ for (y = 0; y < bmp->height; )
+ { count = ReadBlobByte (src);
+@@ -884,7 +886,10 @@
+ { /* Encoded mode. */
+ byte = ReadBlobByte (src);
+ for (i = 0; i < count; i++)
+- { if (compression == 1)
++ {
++ if (q == end)
++ return 0;
++ if (compression == 1)
+ { (*(q++)) = (unsigned char) byte;
+ }
+ else
+@@ -896,13 +901,15 @@
+ else
+ { /* Escape mode. */
+ count = ReadBlobByte (src);
+- if (count == 0x01) return;
++ if (count == 0x01) return 1;
+ switch (count)
+ {
+ case 0x00:
+ { /* End of line. */
+ x = 0;
+ y++;
++ if (y >= bmp->height)
++ return 0;
+ q = pixels + y * bmp->width;
+ break;
+ }
+@@ -910,13 +917,20 @@
+ { /* Delta mode. */
+ x += ReadBlobByte (src);
+ y += ReadBlobByte (src);
++ if (y >= bmp->height)
++ return 0;
++ if (x >= bmp->width)
++ return 0;
+ q = pixels + y * bmp->width + x;
+ break;
+ }
+ default:
+ { /* Absolute mode. */
+ for (i = 0; i < count; i++)
+- { if (compression == 1)
++ {
++ if (q == end)
++ return 0;
++ if (compression == 1)
+ { (*(q++)) = ReadBlobByte (src);
+ }
+ else
+@@ -943,7 +957,7 @@
+ byte = ReadBlobByte (src); /* end of line */
+ byte = ReadBlobByte (src);
+
+- return;
++ return 1;
+ }
+
+ /*
+@@ -1143,8 +1157,18 @@
+ }
+ }
+ else
+- { /* Convert run-length encoded raster pixels. */
+- DecodeImage (API,bmp,src,(unsigned int) bmp_info.compression,data->image);
++ {
++ if (bmp_info.bits_per_pixel == 8) /* Convert run-length encoded raster pixels. */
++ {
++ if (!DecodeImage (API,bmp,src,(unsigned int) bmp_info.compression,data->image))
++ { WMF_ERROR (API,"corrupt bmp");
++ API->err = wmf_E_BadFormat;
++ }
++ }
++ else
++ { WMF_ERROR (API,"Unexpected pixel depth");
++ API->err = wmf_E_BadFormat;
++ }
+ }
+
+ if (ERR (API))
+--- libwmf-0.2.8.4/src/ipa/ipa.h 2015-06-08 14:46:24.590876393 +0100
++++ libwmf-0.2.8.4/src/ipa/ipa.h 2015-06-08 14:46:35.345993247 +0100
+@@ -48,7 +48,7 @@
+ static unsigned short ReadBlobLSBShort (BMPSource*);
+ static unsigned long ReadBlobLSBLong (BMPSource*);
+ static long TellBlob (BMPSource*);
+-static void DecodeImage (wmfAPI*,wmfBMP*,BMPSource*,unsigned int,unsigned char*);
++static int DecodeImage (wmfAPI*,wmfBMP*,BMPSource*,unsigned int,unsigned char*);
+ static void ReadBMPImage (wmfAPI*,wmfBMP*,BMPSource*);
+ static int ExtractColor (wmfAPI*,wmfBMP*,wmfRGB*,unsigned int,unsigned int);
+ static void SetColor (wmfAPI*,wmfBMP*,wmfRGB*,unsigned char,unsigned int,unsigned int);
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2015-4695.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2015-4695.patch
new file mode 100644
index 000000000..b6d499da9
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2015-4695.patch
@@ -0,0 +1,56 @@
+--- libwmf-0.2.8.4/src/player/meta.h
++++ libwmf-0.2.8.4/src/player/meta.h
+@@ -1565,7 +1565,7 @@ static int meta_rgn_create (wmfAPI* API,
+ objects = P->objects;
+
+ i = 0;
+- while (objects[i].type && (i < NUM_OBJECTS (API))) i++;
++ while ((i < NUM_OBJECTS (API)) && objects[i].type) i++;
+
+ if (i == NUM_OBJECTS (API))
+ { WMF_ERROR (API,"Object out of range!");
+@@ -2142,7 +2142,7 @@ static int meta_dib_brush (wmfAPI* API,w
+ objects = P->objects;
+
+ i = 0;
+- while (objects[i].type && (i < NUM_OBJECTS (API))) i++;
++ while ((i < NUM_OBJECTS (API)) && objects[i].type) i++;
+
+ if (i == NUM_OBJECTS (API))
+ { WMF_ERROR (API,"Object out of range!");
+@@ -3067,7 +3067,7 @@ static int meta_pen_create (wmfAPI* API,
+ objects = P->objects;
+
+ i = 0;
+- while (objects[i].type && (i < NUM_OBJECTS (API))) i++;
++ while ((i < NUM_OBJECTS (API)) && objects[i].type) i++;
+
+ if (i == NUM_OBJECTS (API))
+ { WMF_ERROR (API,"Object out of range!");
+@@ -3181,7 +3181,7 @@ static int meta_brush_create (wmfAPI* AP
+ objects = P->objects;
+
+ i = 0;
+- while (objects[i].type && (i < NUM_OBJECTS (API))) i++;
++ while ((i < NUM_OBJECTS (API)) && objects[i].type) i++;
+
+ if (i == NUM_OBJECTS (API))
+ { WMF_ERROR (API,"Object out of range!");
+@@ -3288,7 +3288,7 @@ static int meta_font_create (wmfAPI* API
+ objects = P->objects;
+
+ i = 0;
+- while (objects[i].type && (i < NUM_OBJECTS (API))) i++;
++ while ((i < NUM_OBJECTS (API)) && objects[i].type) i++;
+
+ if (i == NUM_OBJECTS (API))
+ { WMF_ERROR (API,"Object out of range!");
+@@ -3396,7 +3396,7 @@ static int meta_palette_create (wmfAPI*
+ objects = P->objects;
+
+ i = 0;
+- while (objects[i].type && (i < NUM_OBJECTS (API))) i++;
++ while ((i < NUM_OBJECTS (API)) && objects[i].type) i++;
+
+ if (i == NUM_OBJECTS (API))
+ { WMF_ERROR (API,"Object out of range!");
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2015-4696.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2015-4696.patch
new file mode 100644
index 000000000..331284125
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2015-4696.patch
@@ -0,0 +1,23 @@
+--- libwmf-0.2.8.4/src/player/meta.h
++++ libwmf-0.2.8.4/src/player/meta.h
+@@ -2585,6 +2585,8 @@
+ polyrect.BR[i] = clip->rects[i].BR;
+ }
+
++ if (FR->region_clip) FR->region_clip (API,&polyrect);
++
+ wmf_free (API,polyrect.TL);
+ wmf_free (API,polyrect.BR);
+ }
+@@ -2593,9 +2595,10 @@
+ polyrect.BR = 0;
+
+ polyrect.count = 0;
++
++ if (FR->region_clip) FR->region_clip (API,&polyrect);
+ }
+
+- if (FR->region_clip) FR->region_clip (API,&polyrect);
+
+ return (changed);
+ }
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-10167.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-10167.patch
new file mode 100644
index 000000000..5e2819743
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-10167.patch
@@ -0,0 +1,30 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd_gd2.c
++++ libwmf-0.2.8.4/src/extra/gd/gd_gd2.c
+@@ -362,10 +362,9 @@
+ {
+ if (!gdGetInt (&im->tpixels[y][x], in))
+ {
+- /*printf("EOF while reading\n"); */
+- /*gdImageDestroy(im); */
+- /*return 0; */
+- im->tpixels[y][x] = 0;
++ fprintf(stderr, "gd2: EOF while reading\n");
++ gdImageDestroy(im);
++ return NULL;
+ }
+ }
+ else
+@@ -373,10 +372,9 @@
+ int ch;
+ if (!gdGetByte (&ch, in))
+ {
+- /*printf("EOF while reading\n"); */
+- /*gdImageDestroy(im); */
+- /*return 0; */
+- ch = 0;
++ fprintf(stderr, "gd2: EOF while reading\n");
++ gdImageDestroy(im);
++ return NULL;
+ }
+ im->pixels[y][x] = ch;
+ }
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-10168.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-10168.patch
new file mode 100644
index 000000000..f08b1f1e5
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-10168.patch
@@ -0,0 +1,14 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd_gd2.c
++++ libwmf-0.2.8.4/src/extra/gd/gd_gd2.c
+@@ -145,6 +145,11 @@
+
+ if ((*fmt) == GD2_FMT_COMPRESSED)
+ {
++ if (*ncx <= 0 || *ncy <= 0 || *ncx > INT_MAX / *ncy) {
++ GD2_DBG(printf ("Illegal chunk counts: %d * %d\n", *ncx, *ncy));
++ goto fail1;
++ }
++
+ nc = (*ncx) * (*ncy);
+ GD2_DBG (printf ("Reading %d chunk index entries\n", nc));
+ sidx = sizeof (t_chunk_info) * nc;
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-9011.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-9011.patch
new file mode 100644
index 000000000..c6bd017c2
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-9011.patch
@@ -0,0 +1,36 @@
+--- libwmf-0.2.8.4/src/player.c
++++ libwmf-0.2.8.4/src/player.c
+@@ -139,8 +139,31 @@
+ WMF_DEBUG (API,"bailing...");
+ return (API->err);
+ }
+-
+- P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API) ) * 2 * sizeof (unsigned char));
++
++ U32 nMaxRecordSize = (MAX_REC_SIZE(API) ) * 2 * sizeof (unsigned char);
++ if (nMaxRecordSize)
++ {
++ //before allocating memory do a sanity check on size by seeking
++ //to claimed end to see if its possible. We're constrained here
++ //by the api and existing implementations to not simply seeking
++ //to SEEK_END. So use what we have to skip to the last byte and
++ //try and read it.
++ const long nPos = WMF_TELL (API);
++ WMF_SEEK (API, nPos + nMaxRecordSize - 1);
++ if (ERR (API))
++ { WMF_DEBUG (API,"bailing...");
++ return (API->err);
++ }
++ int byte = WMF_READ (API);
++ if (byte == (-1))
++ { WMF_ERROR (API,"Unexpected EOF!");
++ API->err = wmf_E_EOF;
++ return (API->err);
++ }
++ WMF_SEEK (API, nPos);
++ }
++
++ P->Parameters = (unsigned char*) wmf_malloc (API, nMaxRecordSize);
+
+ if (ERR (API))
+ { WMF_DEBUG (API,"bailing...");
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-9317.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-9317.patch
new file mode 100644
index 000000000..cf57734ed
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2016-9317.patch
@@ -0,0 +1,21 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd.c
++++ libwmf-0.2.8.4/src/extra/gd/gd.c
+@@ -65,6 +65,18 @@
+ {
+ int i;
+ gdImagePtr im;
++
++ if (overflow2(sx, sy)) {
++ return NULL;
++ }
++
++ if (overflow2(sizeof (unsigned char *), sy)) {
++ return NULL;
++ }
++ if (overflow2(sizeof (unsigned char), sx)) {
++ return NULL;
++ }
++
+ im = (gdImage *) gdMalloc (sizeof (gdImage));
+ memset (im, 0, sizeof (gdImage));
+ /* Row-major ever since gd 1.3 */
diff --git a/source/l/libwmf/libwmf-0.2.8.4-CVE-2017-6362.patch b/source/l/libwmf/libwmf-0.2.8.4-CVE-2017-6362.patch
new file mode 100644
index 000000000..2ad180d97
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-CVE-2017-6362.patch
@@ -0,0 +1,32 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd_png.c
++++ libwmf-0.2.8.4/src/extra/gd/gd_png.c
+@@ -435,17 +435,6 @@
+ out->free (out);
+ }
+
+-void *
+-gdImagePngPtr (gdImagePtr im, int *size)
+-{
+- void *rv;
+- gdIOCtx *out = gdNewDynamicCtx (2048, NULL);
+- gdImagePngCtx (im, out);
+- rv = gdDPExtractData (out, size);
+- out->free (out);
+- return rv;
+-}
+-
+ /* This routine is based in part on code from Dale Lutz (Safe Software Inc.)
+ * and in part on demo code from Chapter 15 of "PNG: The Definitive Guide"
+ * (http://www.cdrom.com/pub/png/pngbook.html).
+--- libwmf-0.2.8.4/src/extra/gd/gd.h
++++ libwmf-0.2.8.4/src/extra/gd/gd.h
+@@ -373,9 +373,6 @@
+ void gdImageGd2(gdImagePtr im, FILE *out, int cs, int fmt);
+
+ /* Best to free this memory with gdFree(), not free() */
+-void* gdImagePngPtr(gdImagePtr im, int *size);
+-
+-/* Best to free this memory with gdFree(), not free() */
+ void* gdImageGdPtr(gdImagePtr im, int *size);
+
+ /* Best to free this memory with gdFree(), not free() */
diff --git a/source/l/libwmf/libwmf-0.2.8.4-fallbackfont.patch b/source/l/libwmf/libwmf-0.2.8.4-fallbackfont.patch
new file mode 100644
index 000000000..83383138a
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-fallbackfont.patch
@@ -0,0 +1,18 @@
+diff -ru libwmf-0.2.8.4.orig/src/font.c libwmf-0.2.8.4/src/font.c
+--- libwmf-0.2.8.4.orig/src/font.c 2005-07-27 21:35:06.000000000 +0100
++++ libwmf-0.2.8.4/src/font.c 2006-01-03 12:53:38.000000000 +0000
+@@ -1429,11 +1429,9 @@
+ if (GS->len == 0) return (0);
+
+ name = font->lfFaceName;
+- if (name == 0)
+- { WMF_DEBUG (API,"No font name?");
+- API->err = wmf_E_Glitch;
+- return (0);
+- }
++
++ if (name == 0 || name[0] == 0)
++ name = "Times";
+
+ /* Find first white-space character or eol
+ */
diff --git a/source/l/libwmf/libwmf-0.2.8.4-pixbufloaderdir.patch b/source/l/libwmf/libwmf-0.2.8.4-pixbufloaderdir.patch
new file mode 100644
index 000000000..a03578581
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-pixbufloaderdir.patch
@@ -0,0 +1,14 @@
+diff -up libwmf-0.2.8.4/configure.in.pixbufloaderdir libwmf-0.2.8.4/configure.in
+--- libwmf-0.2.8.4/configure.in.pixbufloaderdir 2010-06-28 23:35:06.227167269 -0400
++++ libwmf-0.2.8.4/configure.in 2010-06-28 23:36:00.948420306 -0400
+@@ -741,8 +741,8 @@
+
+ if test $LIBWMF_BUILDSTYLE != lite; then
+ PKG_CHECK_MODULES(GDK_PIXBUF,gdk-pixbuf-2.0 >= 2.1.2,[
+- GTK_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0`
+- GDK_PIXBUF_DIR="gtk-2.0/$GTK_VERSION/loaders"
++ GDK_PIXBUF_VERSION=`$PKG_CONFIG --variable=gdk_pixbuf_binary_version gdk-pixbuf-2.0`
++ GDK_PIXBUF_DIR="gdk-pixbuf-2.0/$GDK_PIXBUF_VERSION/loaders"
+ wmf_gdk_pixbuf=yes
+ ],[ wmf_gdk_pixbuf=no
+ ])
diff --git a/source/l/libwmf/libwmf-0.2.8.4-reducesymbols.patch b/source/l/libwmf/libwmf-0.2.8.4-reducesymbols.patch
new file mode 100644
index 000000000..45d82b327
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-reducesymbols.patch
@@ -0,0 +1,520 @@
+diff -ru libwmf-0.2.8.4/src/extra/gd/gd.c libwmf-0.2.8.4.symbols/src/extra/gd/gd.c
+--- libwmf-0.2.8.4/src/extra/gd/gd.c 2005-07-27 21:35:05.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gd.c 2006-11-16 12:27:05.000000000 +0000
+@@ -249,6 +249,7 @@
+ }
+ HWBType;
+
++#if 0
+ static HWBType *
+ RGB_to_HWB (RGBType RGB, HWBType * HWB)
+ {
+@@ -308,7 +309,6 @@
+ return diff;
+ }
+
+-#if 0
+ /*
+ * This is not actually used, but is here for completeness, in case someone wants to
+ * use the HWB stuff for anything else...
+@@ -355,6 +355,7 @@
+ }
+ #endif
+
++#if 0
+ int
+ gdImageColorClosestHWB (gdImagePtr im, int r, int g, int b)
+ {
+@@ -384,6 +385,7 @@
+ }
+ return ct;
+ }
++#endif
+
+ int
+ gdImageColorExact (gdImagePtr im, int r, int g, int b)
+@@ -677,7 +679,7 @@
+ }
+ }
+
+-int
++static int
+ gdImageGetTrueColorPixel (gdImagePtr im, int x, int y)
+ {
+ int p = gdImageGetPixel (im, x, y);
+@@ -1286,11 +1288,11 @@
+ return len;
+ }
+
+-#ifndef HAVE_LSQRT
++#if 0
+ /* If you don't have a nice square root function for longs, you can use
+ ** this hack
+ */
+-long
++static long
+ lsqrt (long n)
+ {
+ long result = (long) sqrt ((double) n);
+@@ -2250,7 +2252,7 @@
+ }
+ }
+
+-int gdCompareInt (const void *a, const void *b);
++static int gdCompareInt (const void *a, const void *b);
+
+ /* THANKS to Kirsten Schulz for the polygon fixes! */
+
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdcache.h libwmf-0.2.8.4.symbols/src/extra/gd/gdcache.h
+--- libwmf-0.2.8.4/src/extra/gd/gdcache.h 2001-08-21 15:40:33.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdcache.h 2006-11-16 12:13:40.000000000 +0000
+@@ -41,6 +41,9 @@
+ /*********************************************************/
+
+ /* #include <malloc.h> */
++
++#pragma GCC visibility push(hidden)
++
+ #ifndef NULL
+ #define NULL (void *)0
+ #endif
+@@ -81,3 +84,5 @@
+
+ void *
+ gdCacheGet( gdCache_head_t *head, void *keydata );
++
++#pragma GCC visibility pop
+diff -ru libwmf-0.2.8.4/src/extra/gd/gd_clip.h libwmf-0.2.8.4.symbols/src/extra/gd/gd_clip.h
+--- libwmf-0.2.8.4/src/extra/gd/gd_clip.h 2001-03-28 10:37:30.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_clip.h 2006-11-16 12:11:49.000000000 +0000
+@@ -1,6 +1,8 @@
+ #ifndef GD_CLIP_H
+ #define GD_CLIP_H 1
+
++#pragma GCC visibility push(hidden)
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -23,4 +25,6 @@
+ }
+ #endif
+
++#pragma GCC visibility pop
++
+ #endif /* GD_CLIP_H */
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdfontg.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfontg.h
+--- libwmf-0.2.8.4/src/extra/gd/gdfontg.h 2001-03-28 10:37:30.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfontg.h 2006-11-16 12:12:03.000000000 +0000
+@@ -2,6 +2,8 @@
+ #ifndef _GDFONTG_H_
+ #define _GDFONTG_H_ 1
+
++#pragma GCC visibility push(hidden)
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -25,5 +27,7 @@
+ }
+ #endif
+
++#pragma GCC visibility pop
++
+ #endif
+
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdfontl.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfontl.h
+--- libwmf-0.2.8.4/src/extra/gd/gdfontl.h 2001-03-28 10:37:30.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfontl.h 2006-11-16 12:12:11.000000000 +0000
+@@ -2,6 +2,8 @@
+ #ifndef _GDFONTL_H_
+ #define _GDFONTL_H_ 1
+
++#pragma GCC visibility push(hidden)
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -26,5 +28,7 @@
+ }
+ #endif
+
++#pragma GCC visibility pop
++
+ #endif
+
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdfontmb.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfontmb.h
+--- libwmf-0.2.8.4/src/extra/gd/gdfontmb.h 2001-03-28 10:37:30.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfontmb.h 2006-11-16 12:12:19.000000000 +0000
+@@ -2,6 +2,8 @@
+ #ifndef _GDFONTMB_H_
+ #define _GDFONTMB_H_ 1
+
++#pragma GCC visibility push(hidden)
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -24,5 +26,7 @@
+ }
+ #endif
+
++#pragma GCC visibility pop
++
+ #endif
+
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdfonts.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfonts.h
+--- libwmf-0.2.8.4/src/extra/gd/gdfonts.h 2001-03-28 10:37:30.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfonts.h 2006-11-16 12:12:28.000000000 +0000
+@@ -2,6 +2,8 @@
+ #ifndef _GDFONTS_H_
+ #define _GDFONTS_H_ 1
+
++#pragma GCC visibility push(hidden)
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -24,5 +26,7 @@
+ }
+ #endif
+
++#pragma GCC visibility pop
++
+ #endif
+
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdfontt.h libwmf-0.2.8.4.symbols/src/extra/gd/gdfontt.h
+--- libwmf-0.2.8.4/src/extra/gd/gdfontt.h 2001-03-28 10:37:30.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdfontt.h 2006-11-16 12:12:36.000000000 +0000
+@@ -2,6 +2,8 @@
+ #ifndef _GDFONTT_H_
+ #define _GDFONTT_H_ 1
+
++#pragma GCC visibility push(hidden)
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -25,5 +27,7 @@
+ }
+ #endif
+
++#pragma GCC visibility pop
++
+ #endif
+
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdft.c libwmf-0.2.8.4.symbols/src/extra/gd/gdft.c
+--- libwmf-0.2.8.4/src/extra/gd/gdft.c 2005-07-27 21:35:05.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdft.c 2006-11-16 12:24:50.000000000 +0000
+@@ -533,7 +533,7 @@
+ }
+
+ /* draw_bitmap - transfers glyph bitmap to GD image */
+-/* static */ char *
++static char *
+ gdft_draw_bitmap (gdImage * im, int fg, FT_Bitmap bitmap, int pen_x, int pen_y)
+ {
+ unsigned char *pixel = 0;
+@@ -643,7 +643,7 @@
+ return (char *) NULL;
+ }
+
+-int
++static int
+ gdroundupdown (FT_F26Dot6 v1, int updown)
+ {
+ return (!updown)
+@@ -651,7 +651,9 @@
+ : (v1 > 0 ? ((v1 + 63) >> 6) : v1 >> 6);
+ }
+
++#pragma GCC visibility push(hidden)
+ extern int any2eucjp (char *, char *, unsigned int);
++#pragma GCC visibility pop
+
+ /********************************************************************/
+ /* gdImageStringFT - render a utf8 string onto a gd image */
+diff -ru libwmf-0.2.8.4/src/extra/gd/gd_gd2.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_gd2.c
+--- libwmf-0.2.8.4/src/extra/gd/gd_gd2.c 2005-07-27 21:35:05.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_gd2.c 2006-11-16 12:21:28.000000000 +0000
+@@ -34,8 +34,10 @@
+ }
+ t_chunk_info;
+
++#pragma GCC visibility push(hidden)
+ extern int _gdGetColors (gdIOCtx * in, gdImagePtr im, int gd2xFlag);
+ extern void _gdPutColors (gdImagePtr im, gdIOCtx * out);
++#pragma GCC visibility pop
+
+ /* */
+ /* Read the extra info in the gd2 header. */
+diff -ru libwmf-0.2.8.4/src/extra/gd/gd_gd.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_gd.c
+--- libwmf-0.2.8.4/src/extra/gd/gd_gd.c 2005-07-27 21:35:05.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_gd.c 2006-11-16 12:21:43.000000000 +0000
+@@ -11,6 +11,11 @@
+ /* Exported functions: */
+ extern void gdImageGd (gdImagePtr im, FILE * out);
+
++#pragma GCC visibility push(hidden)
++int _gdGetColors (gdIOCtx * in, gdImagePtr im, int gd2xFlag);
++void _gdPutColors (gdImagePtr im, gdIOCtx * out);
++#pragma GCC visibility pop
++
+
+ /* Use this for commenting out debug-print statements. */
+ /* Just use the first '#define' to allow all the prints... */
+diff -ru libwmf-0.2.8.4/src/extra/gd/gd.h libwmf-0.2.8.4.symbols/src/extra/gd/gd.h
+--- libwmf-0.2.8.4/src/extra/gd/gd.h 2002-12-05 20:09:11.000000000 +0000
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gd.h 2006-11-16 12:14:11.000000000 +0000
+@@ -25,6 +25,8 @@
+ #include <gd_io.h>
+ #include <gd_clip.h>
+
++#pragma GCC visibility push(hidden)
++
+ /* The maximum number of palette entries in palette-based images.
+ In the wonderful new world of gd 2.0, you can of course have
+ many more colors when using truecolor mode. */
+@@ -497,6 +499,8 @@
+ /* resolution affects ttf font rendering, particularly hinting */
+ #define GD_RESOLUTION 96 /* pixels per inch */
+
++#pragma GCC visibility pop
++
+ #ifdef __cplusplus
+ }
+ #endif
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdhelpers.h libwmf-0.2.8.4.symbols/src/extra/gd/gdhelpers.h
+--- libwmf-0.2.8.4/src/extra/gd/gdhelpers.h 2001-03-28 10:37:31.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdhelpers.h 2006-11-16 12:12:55.000000000 +0000
+@@ -1,6 +1,8 @@
+ #ifndef GDHELPERS_H
+ #define GDHELPERS_H 1
+
++#pragma GCC visibility push(hidden)
++
+ /* TBB: strtok_r is not universal; provide an implementation of it. */
+
+ extern char *gd_strtok_r(char *s, char *sep, char **state);
+@@ -13,5 +15,7 @@
+ void *gdMalloc(size_t size);
+ void *gdRealloc(void *ptr, size_t size);
+
++#pragma GCC visibility pop
++
+ #endif /* GDHELPERS_H */
+
+diff -ru libwmf-0.2.8.4/src/extra/gd/gd_io.h libwmf-0.2.8.4.symbols/src/extra/gd/gd_io.h
+--- libwmf-0.2.8.4/src/extra/gd/gd_io.h 2001-03-28 10:37:30.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_io.h 2006-11-16 12:13:08.000000000 +0000
+@@ -2,6 +2,8 @@
+ #define GD_IO_H 1
+
+ #include <stdio.h>
++
++#pragma GCC visibility push(hidden)
+
+ typedef struct gdIOCtx {
+ int (*getC)(struct gdIOCtx*);
+@@ -36,4 +38,6 @@
+ int gdSeek(gdIOCtx *ctx, const int);
+ long gdTell(gdIOCtx *ctx);
+
++#pragma GCC visibility pop
++
+ #endif
+diff -ru libwmf-0.2.8.4/src/extra/gd/gd_jpeg.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_jpeg.c
+--- libwmf-0.2.8.4/src/extra/gd/gd_jpeg.c 2005-07-27 21:35:06.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_jpeg.c 2006-11-16 12:28:13.000000000 +0000
+@@ -99,7 +99,7 @@
+ return rv;
+ }
+
+-void jpeg_gdIOCtx_dest (j_compress_ptr cinfo, gdIOCtx * outfile);
++static void jpeg_gdIOCtx_dest (j_compress_ptr cinfo, gdIOCtx * outfile);
+
+ void
+ gdImageJpegCtx (gdImagePtr im, gdIOCtx * outfile, int quality)
+@@ -266,7 +266,7 @@
+ return im;
+ }
+
+-void
++static void
+ jpeg_gdIOCtx_src (j_decompress_ptr cinfo,
+ gdIOCtx * infile);
+
+@@ -511,7 +511,7 @@
+ * before any data is actually read.
+ */
+
+-void
++static void
+ init_source (j_decompress_ptr cinfo)
+ {
+ my_src_ptr src = (my_src_ptr) cinfo->src;
+@@ -559,7 +559,7 @@
+
+ #define END_JPEG_SEQUENCE "\r\n[*]--:END JPEG:--[*]\r\n"
+
+-safeboolean
++static safeboolean
+ fill_input_buffer (j_decompress_ptr cinfo)
+ {
+ my_src_ptr src = (my_src_ptr) cinfo->src;
+@@ -627,7 +627,7 @@
+ * buffer is the application writer's problem.
+ */
+
+-void
++static void
+ skip_input_data (j_decompress_ptr cinfo, long num_bytes)
+ {
+ my_src_ptr src = (my_src_ptr) cinfo->src;
+@@ -669,7 +669,7 @@
+ * for error exit.
+ */
+
+-void
++static void
+ term_source (j_decompress_ptr cinfo)
+ {
+
+@@ -742,7 +742,7 @@
+ * before any data is actually written.
+ */
+
+-void
++static void
+ init_destination (j_compress_ptr cinfo)
+ {
+ my_dest_ptr dest = (my_dest_ptr) cinfo->dest;
+@@ -780,7 +780,7 @@
+ * write it out when emptying the buffer externally.
+ */
+
+-safeboolean
++static safeboolean
+ empty_output_buffer (j_compress_ptr cinfo)
+ {
+ my_dest_ptr dest = (my_dest_ptr) cinfo->dest;
+@@ -805,7 +805,7 @@
+ * for error exit.
+ */
+
+-void
++static void
+ term_destination (j_compress_ptr cinfo)
+ {
+ my_dest_ptr dest = (my_dest_ptr) cinfo->dest;
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdkanji.c libwmf-0.2.8.4.symbols/src/extra/gd/gdkanji.c
+--- libwmf-0.2.8.4/src/extra/gd/gdkanji.c 2001-05-19 14:09:34.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdkanji.c 2006-11-16 12:29:42.000000000 +0000
+@@ -555,6 +555,11 @@
+ return kanji;
+ }
+
++#pragma GCC visibility push(hidden)
++int
++any2eucjp (unsigned char *dest, unsigned char *src, unsigned int dest_max);
++#pragma GCC visibility pop
++
+ int
+ any2eucjp (unsigned char *dest, unsigned char *src, unsigned int dest_max)
+ {
+diff -ru libwmf-0.2.8.4/src/extra/gd/gd_topal.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_topal.c
+--- libwmf-0.2.8.4/src/extra/gd/gd_topal.c 2005-07-27 21:35:06.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_topal.c 2006-11-16 12:25:45.000000000 +0000
+@@ -1129,7 +1129,7 @@
+ * Map some rows of pixels to the output colormapped representation.
+ */
+
+-void
++static void
+ pass2_no_dither (gdImagePtr im, my_cquantize_ptr cquantize)
+ /* This version performs no dithering */
+ {
+@@ -1217,7 +1217,7 @@
+ #endif
+
+
+-void
++static void
+ pass2_fs_dither (gdImagePtr im, my_cquantize_ptr cquantize)
+
+ /* This version performs Floyd-Steinberg dithering */
+diff -ru libwmf-0.2.8.4/src/extra/gd/gd_wbmp.c libwmf-0.2.8.4.symbols/src/extra/gd/gd_wbmp.c
+--- libwmf-0.2.8.4/src/extra/gd/gd_wbmp.c 2001-05-19 14:09:34.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gd_wbmp.c 2006-11-16 12:28:33.000000000 +0000
+@@ -67,7 +67,7 @@
+ ** Wrapper around gdPutC for use with writewbmp
+ **
+ */
+-void
++static void
+ gd_putout (int i, void *out)
+ {
+ gdPutC (i, (gdIOCtx *) out);
+@@ -79,7 +79,7 @@
+ ** Wrapper around gdGetC for use with readwbmp
+ **
+ */
+-int
++static int
+ gd_getin (void *in)
+ {
+ return (gdGetC ((gdIOCtx *) in));
+diff -ru libwmf-0.2.8.4/src/extra/gd/gdxpm.c libwmf-0.2.8.4.symbols/src/extra/gd/gdxpm.c
+--- libwmf-0.2.8.4/src/extra/gd/gdxpm.c 2001-05-19 14:09:34.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/gdxpm.c 2006-11-16 12:18:29.000000000 +0000
+@@ -10,6 +10,7 @@
+ #include "gd.h"
+ #include "gdhelpers.h"
+
++#if 0
+ #ifndef HAVE_XPM
+ gdImagePtr
+ gdImageCreateFromXpm (char *filename)
+@@ -146,3 +147,4 @@
+ return (im);
+ }
+ #endif
++#endif
+diff -ru libwmf-0.2.8.4/src/extra/gd/jisx0208.h libwmf-0.2.8.4.symbols/src/extra/gd/jisx0208.h
+--- libwmf-0.2.8.4/src/extra/gd/jisx0208.h 2001-03-28 10:37:35.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/jisx0208.h 2006-11-16 12:13:19.000000000 +0000
+@@ -1,5 +1,8 @@
+ #ifndef JISX0208_H
+ #define JISX0208_H
++
++#pragma GCC visibility push(hidden)
++
+ /* This file was derived from "src/VF_Ftype.c" in VFlib2-2.24.2
+ by Dr. Kakugawa */
+
+@@ -1202,4 +1205,6 @@
+ 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177,
+ 0x2178, 0x2179, 0xFFE2, 0xFFE4, 0xFF07, 0xFF02}};
+
++#pragma GCC visibility pop
++
+ #endif /* JISX0208_H */
+diff -ru libwmf-0.2.8.4/src/extra/gd/wbmp.h libwmf-0.2.8.4.symbols/src/extra/gd/wbmp.h
+--- libwmf-0.2.8.4/src/extra/gd/wbmp.h 2001-03-28 10:37:37.000000000 +0100
++++ libwmf-0.2.8.4.symbols/src/extra/gd/wbmp.h 2006-11-16 12:14:19.000000000 +0000
+@@ -12,6 +12,8 @@
+ #ifndef __WBMP_H
+ #define __WBMP_H 1
+
++#pragma GCC visibility push(hidden)
++
+
+ /* WBMP struct
+ ** -----------
+@@ -44,4 +46,6 @@
+ void freewbmp( Wbmp *wbmp );
+ void printwbmp( Wbmp *wbmp );
+
++#pragma GCC visibility pop
++
+ #endif
diff --git a/source/l/libwmf/libwmf-0.2.8.4-useafterfree.patch b/source/l/libwmf/libwmf-0.2.8.4-useafterfree.patch
new file mode 100644
index 000000000..328c5411f
--- /dev/null
+++ b/source/l/libwmf/libwmf-0.2.8.4-useafterfree.patch
@@ -0,0 +1,10 @@
+--- libwmf-0.2.8.4/src/extra/gd/gd_clip.c.CVE-2009-1364-im-clip-list 2009-04-24 04:06:44.000000000 -0400
++++ libwmf-0.2.8.4/src/extra/gd/gd_clip.c 2009-04-24 04:08:30.000000000 -0400
+@@ -70,6 +70,7 @@ void gdClipSetAdd(gdImagePtr im,gdClipRe
+ { more = gdRealloc (im->clip->list,(im->clip->max + 8) * sizeof (gdClipRectangle));
+ if (more == 0) return;
+ im->clip->max += 8;
++ im->clip->list = more;
+ }
+ im->clip->list[im->clip->count] = (*rect);
+ im->clip->count++;
diff --git a/source/l/libwmf/libwmf.SlackBuild b/source/l/libwmf/libwmf.SlackBuild
index 181676236..60dde8f4c 100755
--- a/source/l/libwmf/libwmf.SlackBuild
+++ b/source/l/libwmf/libwmf.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,22 +20,32 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=libwmf
VERSION=0.2.8.4
-BUILD=${BUILD:-6}
+BUILD=${BUILD:-8}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -49,19 +59,17 @@ else
fi
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG1=$TMP/package-libwmf
-PKG2=$TMP/package-libwmf-docs
+PKG=$TMP/package-libwmf
-rm -rf $PKG1 $PKG2
-mkdir -p $PKG1 $PKG2
+rm -rf $PKG
+mkdir -p $PKG
cd $TMP
rm -rf libwmf-$VERSION
tar xvf $CWD/libwmf-$VERSION.tar.?z* || exit 1
-cd libwmf-$VERSION
+cd libwmf-$VERSION || exit 1
zcat $CWD/libwmf.png14.diff.gz | patch -p1 --verbose || exit 1
@@ -72,25 +80,68 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Miscellaneous patches from Fedora:
+zcat $CWD/libwmf-0.2.8.4-fallbackfont.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-pixbufloaderdir.patch.gz | patch -p1 --verbose || exit 1
+
+# Don't export the modified embedded GD library symbols, to avoid conflicts with
+# the system libgd:
+zcat $CWD/libwmf-0.2.8.4-reducesymbols.patch.gz | patch -p1 --verbose || exit 1
+
+# Patch security issues:
+zcat $CWD/libwmf-0.2.8.4-useafterfree.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2006-3376.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2004-0941.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2007-0455.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2007-2756.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2007-3472.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2007-3473.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2007-3477.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2009-3546.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2015-0848+CVE-2015-4588.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2015-4695.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2015-4696.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2016-10167.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2016-10168.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2016-9011.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2016-9317.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/libwmf-0.2.8.4-CVE-2017-6362.patch.gz | patch -p1 --verbose || exit 1
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--enable-static=no \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG1 || exit 1
-
-find $PKG1 | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Symlink to system fonts. We're not going to just point the fontdir to the
+# system Type1 directory since libwmf still wants to use the obsolete fontdir,
+# and we don't want to put that there:
+( cd $PKG/usr/share/libwmf/fonts
+ for file in *.afm *.pfb ; do
+ # Check to see if the font exists on the system. It is required to have
+ # the ghostscript-fonts package installed during the build.
+ if [ -r /usr/share/fonts/Type1/$file ]; then
+ ln -sf ../../fonts/Type1/$file .
+ fi
+ done
+)
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-mkdir -p $PKG2/usr/doc
-mv $PKG1/usr/share/doc/libwmf $PKG2/usr/doc/libwmf-$VERSION
-rmdir $PKG1/usr/share/doc
+mkdir -p $PKG/usr/doc
+mv $PKG/usr/share/doc/libwmf $PKG/usr/doc/libwmf-$VERSION
+rmdir $PKG/usr/share/doc
cp -a \
AUTHORS BUILDING COPYING CREDITS NEWS README TODO \
- $PKG1/usr/doc/libwmf-$VERSION
+ $PKG/usr/doc/libwmf-$VERSION
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
@@ -100,13 +151,8 @@ if [ -r ChangeLog ]; then
touch -r ChangeLog $DOCSDIR/ChangeLog
fi
-mkdir -p $PKG1/install
-cat $CWD/slack-desc > $PKG1/install/slack-desc
-mkdir -p $PKG2/install
-cat $CWD/slack-desc-docs > $PKG2/install/slack-desc
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
-cd $PKG1
+cd $PKG
/sbin/makepkg -l y -c n $TMP/libwmf-$VERSION-$ARCH-$BUILD.txz
-cd $PKG2
-/sbin/makepkg -l y -c n $TMP/libwmf-docs-$VERSION-noarch-$BUILD.txz
-
diff --git a/source/l/libwmf/slack-desc b/source/l/libwmf/slack-desc
index 2ce12aebe..19f99a7de 100644
--- a/source/l/libwmf/slack-desc
+++ b/source/l/libwmf/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libwmf/slack-desc-docs b/source/l/libwmf/slack-desc-docs
deleted file mode 100644
index 280af308e..000000000
--- a/source/l/libwmf/slack-desc-docs
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
-# leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-libwmf-docs: libwmf-docs (extra documentation for libwmf)
-libwmf-docs:
-libwmf-docs: This package contains extra documentation useful for programming with
-libwmf-docs: the libwmf (metafile graphics format) library.
-libwmf-docs:
-libwmf-docs:
-libwmf-docs:
-libwmf-docs:
-libwmf-docs:
-libwmf-docs:
-libwmf-docs:
diff --git a/source/l/libwnck/libwnck.SlackBuild b/source/l/libwnck/libwnck.SlackBuild
index 08734c381..38d21f185 100755
--- a/source/l/libwnck/libwnck.SlackBuild
+++ b/source/l/libwnck/libwnck.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libwnck
VERSION=${VERSION:-$(echo libwnck-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -37,6 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libwnck
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf libwnck-$VERSION
tar xvf $CWD/libwnck-$VERSION.tar.?z* || exit 1
-cd libwnck-$VERSION
+cd libwnck-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -75,11 +83,14 @@ CFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var/lib \
--enable-static=no \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libwnck/slack-desc b/source/l/libwnck/slack-desc
index 54a03a6d8..de580dd77 100644
--- a/source/l/libwnck/slack-desc
+++ b/source/l/libwnck/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ libwnck: libwnck (Window Navigator Construction Kit library)
libwnck:
libwnck: libwnck is the Window Navigator Construction Kit, a library for use
libwnck: in writing pagers, tasklists, and more generally applications that
-libwnck: are dealing with window management. It tries hard to respect the
+libwnck: are dealing with window management. It tries hard to respect the
libwnck: Extended Window Manager Hints specification (EWMH).
libwnck:
libwnck: libwnck is used by compiz to provide the gtk-window-decorator program.
diff --git a/source/l/libwpd/libwpd.SlackBuild b/source/l/libwpd/libwpd.SlackBuild
index b829b1f76..f7bd57d10 100755
--- a/source/l/libwpd/libwpd.SlackBuild
+++ b/source/l/libwpd/libwpd.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=libwpd
VERSION=${VERSION:-$(echo libwpd-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -38,6 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -55,7 +65,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libwpd
rm -rf $PKG
@@ -64,7 +73,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf libwpd-$VERSION
tar xvf $CWD/libwpd-$VERSION.tar.?z* || exit 1
-cd libwpd-$VERSION
+cd libwpd-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -78,11 +87,14 @@ CXXFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--without-docs \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libwpd/slack-desc b/source/l/libwpd/slack-desc
index dedddf237..5474c8e5b 100644
--- a/source/l/libwpd/slack-desc
+++ b/source/l/libwpd/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libwpg/libwpg.SlackBuild b/source/l/libwpg/libwpg.SlackBuild
index fa05ea388..10a148ba9 100755
--- a/source/l/libwpg/libwpg.SlackBuild
+++ b/source/l/libwpg/libwpg.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for libwpg
# Copyright 2008-2015 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libwpg
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -41,6 +43,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -58,7 +68,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libwpg
@@ -90,6 +99,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a COPYING* AUTHORS ChangeLog README* $PKG/usr/doc/$PKGNAM-$VERSION
diff --git a/source/l/libwpg/slack-desc b/source/l/libwpg/slack-desc
index 7152cd82c..416334af6 100644
--- a/source/l/libwpg/slack-desc
+++ b/source/l/libwpg/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libxklavier/libxklavier.SlackBuild b/source/l/libxklavier/libxklavier.SlackBuild
index 428036f81..0b35f351b 100755
--- a/source/l/libxklavier/libxklavier.SlackBuild
+++ b/source/l/libxklavier/libxklavier.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2008, 2013 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,26 +23,36 @@
# Modified by Robby Workman <rworkman at slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=libxklavier
VERSION=${VERSION:-$(echo libxklavier-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine architecture for build & packaging:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-libxklavier
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -77,11 +87,14 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--disable-static \
--with-xkb-base=/etc/X11/xkb \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/libxklavier/slack-desc b/source/l/libxklavier/slack-desc
index 9d02b12dc..47ee82255 100644
--- a/source/l/libxklavier/slack-desc
+++ b/source/l/libxklavier/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------|
@@ -10,7 +10,7 @@ libxklavier: libxklavier (XKB Library)
libxklavier:
libxklavier: libxklavier is a utility library to make XKB stuff easier.
libxklavier:
-libxklavier: Homepage: http://www.freedesktop.org/wiki/Software/LibXklavier
+libxklavier: Homepage: http://www.freedesktop.org/wiki/Software/LibXklavier
libxklavier:
libxklavier:
libxklavier:
diff --git a/source/l/libxml2/0001-Fix-attribute-decoding-during-XML-schema-validation.diff b/source/l/libxml2/0001-Fix-attribute-decoding-during-XML-schema-validation.diff
deleted file mode 100644
index 6dbaddcd8..000000000
--- a/source/l/libxml2/0001-Fix-attribute-decoding-during-XML-schema-validation.diff
+++ /dev/null
@@ -1,67 +0,0 @@
-From 256366ed60f8795279b25f7b7b55e8089b4c6ff4 Mon Sep 17 00:00:00 2001
-From: Alex Henrie <alexhenrie24@gmail.com>
-Date: Thu, 26 May 2016 17:38:35 -0600
-Subject: [PATCH] Fix attribute decoding during XML schema validation
-
-For https://bugzilla.gnome.org/show_bug.cgi?id=766834
-
-vctxt->parserCtxt is always NULL in xmlSchemaSAXHandleStartElementNs,
-so this function can't call xmlStringLenDecodeEntities to decode the
-entities.
----
- xmlschemas.c | 30 +++++++++++++++++++++++++-----
- 1 file changed, 25 insertions(+), 5 deletions(-)
-
-diff --git a/xmlschemas.c b/xmlschemas.c
-index e1b3a4f..59535e5 100644
---- a/xmlschemas.c
-+++ b/xmlschemas.c
-@@ -27391,6 +27391,7 @@ xmlSchemaSAXHandleStartElementNs(void *ctx,
- * attributes yet.
- */
- if (nb_attributes != 0) {
-+ int valueLen, k, l;
- xmlChar *value;
-
- for (j = 0, i = 0; i < nb_attributes; i++, j += 5) {
-@@ -27400,12 +27401,31 @@ xmlSchemaSAXHandleStartElementNs(void *ctx,
- * libxml2 differs from normal SAX here in that it escapes all ampersands
- * as &#38; instead of delivering the raw converted string. Changing the
- * behavior at this point would break applications that use this API, so
-- * we are forced to work around it. There is no danger of accidentally
-- * decoding some entity other than &#38; in this step because without
-- * unescaped ampersands there can be no other entities in the string.
-+ * we are forced to work around it.
- */
-- value = xmlStringLenDecodeEntities(vctxt->parserCtxt, attributes[j+3],
-- attributes[j+4] - attributes[j+3], XML_SUBSTITUTE_REF, 0, 0, 0);
-+ valueLen = attributes[j+4] - attributes[j+3];
-+ value = xmlMallocAtomic(valueLen + 1);
-+ if (value == NULL) {
-+ xmlSchemaVErrMemory(vctxt,
-+ "allocating string for decoded attribute",
-+ NULL);
-+ goto internal_error;
-+ }
-+ for (k = 0, l = 0; k < valueLen; l++) {
-+ if (k < valueLen - 4 &&
-+ attributes[j+3][k+0] == '&' &&
-+ attributes[j+3][k+1] == '#' &&
-+ attributes[j+3][k+2] == '3' &&
-+ attributes[j+3][k+3] == '8' &&
-+ attributes[j+3][k+4] == ';') {
-+ value[l] = '&';
-+ k += 5;
-+ } else {
-+ value[l] = attributes[j+3][k];
-+ k++;
-+ }
-+ }
-+ value[l] = '\0';
- /*
- * TODO: Set the node line.
- */
---
-2.8.3
-
-
diff --git a/source/l/libxml2/libxml2.SlackBuild b/source/l/libxml2/libxml2.SlackBuild
index 87280fca0..699fb6ef0 100755
--- a/source/l/libxml2/libxml2.SlackBuild
+++ b/source/l/libxml2/libxml2.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libxml2
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
@@ -35,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -51,7 +60,9 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
+PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-libxml2
rm -rf $PKG
@@ -59,8 +70,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf libxml2-$VERSION
-tar xvf $CWD/libxml2-$VERSION.tar.?z* || exit 1
-cd libxml2-$VERSION
+tar xvf $CWD/libxml2-$VERSION.tar.?z || exit 1
+cd libxml2-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -70,7 +81,22 @@ find . \
zcat $CWD/libxml2.do-not-check-crc.diff.gz | patch -p1 --verbose || exit 1
-zcat $CWD/0001-Fix-attribute-decoding-during-XML-schema-validation.diff.gz | patch -p1 --verbose || exit 1
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --disable-static \
+ --with-python=/usr/bin/python3 \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+python3 -m compileall "${PKG}$PYTHON3LIB"
+python3 -O -m compileall "${PKG}$PYTHON3LIB"
+
+make clean
CFLAGS="$SLKCFLAGS" \
./configure \
@@ -78,15 +104,17 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --with-python=/usr/bin/python \
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
-#echo
-#echo "Only the python bindings in /usr/lib/python__/site-packages/ should"
-#echo "be kept... toss the other stuff"
-#echo
+python -m compileall "${PKG}$PYTHONLIB"
+python -O -m compileall "${PKG}$PYTHONLIB"
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -94,7 +122,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
mv $PKG/usr/share/doc $PKG/usr
mv $PKG/usr/doc/libxml2-python-$VERSION $PKG/usr/doc/libxml2-$VERSION
cp -a \
- AUTHORS COPYING* INSTALL NEWS README \
+ AUTHORS COPYING* INSTALL NEWS README* \
$PKG/usr/doc/libxml2-$VERSION
find $PKG/usr/doc/libxml2-$VERSION -type f | xargs chmod 644
@@ -102,12 +130,6 @@ gzip -9 $PKG/usr/man/man?/*.?
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
-# Be sure to clobber any .pyc files that might have been generated so that
-# the new .py files will be used instead of the already compiled copies
-cat << EOF > $PKG/install/doinst.sh
-rm -f /usr/lib${LIBDIRSUFFIX}/python2.7/site-packages/libxml2.pyc
-rm -f /usr/lib${LIBDIRSUFFIX}/python2.7/site-packages/drv_libxml2.pyc
-EOF
cd $PKG
/sbin/makepkg -l y -c n $TMP/libxml2-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/libxml2/slack-desc b/source/l/libxml2/slack-desc
index dfbc38dc3..5b72d9970 100644
--- a/source/l/libxml2/slack-desc
+++ b/source/l/libxml2/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libxml2: libxml2 (XML parser library)
libxml2:
-libxml2: Libxml2 is the XML C parser library and toolkit. XML itself is a
-libxml2: metalanguage to design markup languages -- i.e. a text language where
+libxml2: Libxml2 is the XML C parser library and toolkit. XML itself is a
+libxml2: metalanguage to design markup languages - i.e. a text language where
libxml2: structures are added to the content using extra "markup" information
-libxml2: enclosed between angle brackets. HTML is the most well-known markup
-libxml2: language. Though the library is written in C, a variety of language
+libxml2: enclosed between angle brackets. HTML is the most well-known markup
+libxml2: language. Though the library is written in C, a variety of language
libxml2: bindings make it available in other environments.
libxml2:
libxml2:
diff --git a/source/l/libxslt/libxslt.SlackBuild b/source/l/libxslt/libxslt.SlackBuild
index 329d9395a..15785ba5b 100755
--- a/source/l/libxslt/libxslt.SlackBuild
+++ b/source/l/libxslt/libxslt.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2012, 2013, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2012, 2013, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=libxslt
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -34,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -47,7 +57,6 @@ elif [ "$ARCH" = "x86_64" ]; then
LIBDIRSUFFIX="64"
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libxslt
rm -rf $PKG
@@ -56,7 +65,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf libxslt-$VERSION
tar xvf $CWD/libxslt-$VERSION.tar.?z* || exit 1
-cd libxslt-$VERSION
+cd libxslt-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -64,17 +73,28 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# This header isn't shipped in glibc >= 2.26 anymore. See:
+# https://sourceware.org/glibc/wiki/Release/2.26#Removal_of_.27xlocale.h.27
+sed -i '/#include <xlocale.h>/d' libxslt/xsltlocale.h
+
+# Be a bit more generous with xsltMaxDepth to avoid false positive
+# on infinite recursion:
+zcat $CWD/libxslt.xsltMaxDepth.diff.gz | patch -p1 --verbose || exit 1
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
mv $PKG/usr/share/doc $PKG/usr
mv $PKG/usr/doc/libxslt-python-$VERSION $PKG/usr/doc/libxslt-$VERSION
cp -a \
diff --git a/source/l/libxslt/libxslt.xsltMaxDepth.diff b/source/l/libxslt/libxslt.xsltMaxDepth.diff
new file mode 100644
index 000000000..9ba2c9b66
--- /dev/null
+++ b/source/l/libxslt/libxslt.xsltMaxDepth.diff
@@ -0,0 +1,11 @@
+--- ./libxslt/transform.c.orig 2017-08-29 06:20:04.000000000 -0500
++++ ./libxslt/transform.c 2017-09-25 13:39:52.298942433 -0500
+@@ -66,7 +66,7 @@
+ const xmlChar **systemID);
+ #endif
+
+-int xsltMaxDepth = 3000;
++int xsltMaxDepth = 4000;
+ int xsltMaxVars = 15000;
+
+ /*
diff --git a/source/l/libxslt/slack-desc b/source/l/libxslt/slack-desc
index d758d08d3..36a89ff2e 100644
--- a/source/l/libxslt/slack-desc
+++ b/source/l/libxslt/slack-desc
@@ -1,14 +1,14 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libxslt: libxslt (XML transformation library)
libxslt:
-libxslt: XSLT support for libxml2. (XSLT is a language used for transforming
+libxslt: XSLT support for libxml2. (XSLT is a language used for transforming
libxslt: XML documents)
libxslt:
libxslt:
diff --git a/source/l/libyaml/libyaml.SlackBuild b/source/l/libyaml/libyaml.SlackBuild
index e4e497e14..1a8e46c9d 100755
--- a/source/l/libyaml/libyaml.SlackBuild
+++ b/source/l/libyaml/libyaml.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2011 Vincent Batts, Vienna, VA, USA
# All rights reserved.
@@ -20,16 +20,17 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libyaml
SRCNAM=yaml
VERSION=$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$(uname -m)" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$(uname -m) ;;
@@ -37,17 +38,24 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
if [ "$ARCH" = "i386" ]; then
SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+elif [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -74,7 +82,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
-cd $SRCNAM-$VERSION
+cd $SRCNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -92,11 +100,14 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/libyaml/slack-desc b/source/l/libyaml/slack-desc
index 8965634dd..25b729a81 100644
--- a/source/l/libyaml/slack-desc
+++ b/source/l/libyaml/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/libzip/libzip.SlackBuild b/source/l/libzip/libzip.SlackBuild
index 9531854fa..034d35ab6 100755
--- a/source/l/libzip/libzip.SlackBuild
+++ b/source/l/libzip/libzip.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2013, 2015 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,11 @@
# Modified by Robby Workman <rworkman at slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libzip
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -38,9 +39,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-libzip
@@ -62,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf libzip-$VERSION
-tar xvf $CWD/libzip-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/libzip-$VERSION.tar.?z || exit 1
cd libzip-$VERSION || exit 1
chown -R root:root .
find . \
@@ -71,31 +79,18 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --includedir=/usr/include \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --disable-static \
- --build=$ARCH-slackware-linux
-
-# Fix symbolic linking for manpages
-sed -i "s|\${LN}|\${LN_S}|g" man/Makefile
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# While I perhaps see the motive for putting platform-specific include files
-# in a place where they won't collide, the fact is that this breaks anything
-# currently using libzip. Adding a link to the standard include directory
-# mostly fixes this, but it is still not optimal. It's likely to cause
-# problems on multilib systems, for example (but like that whole thing isn't
-# an even uglier hack).
-( cd $PKG/usr/include ; ln -sf ../lib${LIBDIRSUFFIX}/libzip/include/zipconf.h . )
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=/usr/lib${LIBDIRSUFFIX} \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DCMAKE_BUILD_TYPE=Release .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -115,19 +110,9 @@ if [ -d $PKG/usr/man ]; then
)
fi
-# Now, fix the stupid symbolic manpage links again:
-( cd $PKG/usr/man/man3
- find . -type l | while read link ; do
- LINKFILE=$(basename $link)
- LINKTARGET=$(basename $(readlink $LINKFILE))
- rm $LINKFILE
- ln -sf $LINKTARGET $LINKFILE
- done
-)
-
mkdir -p $PKG/usr/doc/libzip-$VERSION
cp -a \
- AUTHORS COPYING* INSTALL NEWS README* THANKS TODO \
+ AUTHORS* COPYING* INSTALL* NEWS* README* THANKS* TODO* \
$PKG/usr/doc/libzip-$VERSION
mkdir -p $PKG/install
diff --git a/source/l/libzip/slack-desc b/source/l/libzip/slack-desc
index b8b4aaabb..e44f28641 100644
--- a/source/l/libzip/slack-desc
+++ b/source/l/libzip/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
libzip: libzip (A library to read, create, and modify Zip archives)
libzip:
libzip: This is libzip, a C library for reading, creating, and modifying
-libzip: zip archives. Files can be added from data buffers, files, or
-libzip: compressed data copied directly from other zip archives. Changes
+libzip: zip archives. Files can be added from data buffers, files, or
+libzip: compressed data copied directly from other zip archives. Changes
libzip: made without closing the archive can be reverted.
libzip:
-libzip: Homepage: http://www.nih.at/libzip/
+libzip: Homepage: http://www.nih.at/libzip/
libzip:
libzip:
libzip:
diff --git a/source/l/loudmouth/loudmouth.SlackBuild b/source/l/loudmouth/loudmouth.SlackBuild
index b1316f74a..f7f46ef00 100755
--- a/source/l/loudmouth/loudmouth.SlackBuild
+++ b/source/l/loudmouth/loudmouth.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009 Eric Hameleers, Eindhoven, NL
-# Copyright 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2012, 2016, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -22,11 +22,13 @@
# SUCH DAMAGE.
# -----------------------------------------------------------------------------
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=loudmouth
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
-NUMJOBS=${NUMJOBS:" -j4 "}
+NUMJOBS=${NUMJOBS:" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -38,6 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
SLKLDFLAGS=""
@@ -56,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -101,7 +110,10 @@ LDFLAGS="$SLKLDFLAGS" \
# Build and install:
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
# --enable-static is often ignored
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/lib*.a
diff --git a/source/l/loudmouth/slack-desc b/source/l/loudmouth/slack-desc
index ca3c4b702..478887c57 100644
--- a/source/l/loudmouth/slack-desc
+++ b/source/l/loudmouth/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
loudmouth: loudmouth (XMPP C programming library)
loudmouth:
loudmouth: Loudmouth is a lightweight and easy-to-use C library for programming
-loudmouth: with the Jabber protocol. It is designed to be easy to get started
+loudmouth: with the Jabber protocol. It is designed to be easy to get started
loudmouth: with, and yet extensible enough to allow you to do anything that the
loudmouth: Jabber protocol allows.
loudmouth:
-loudmouth: loudmouth home: https://github.com/mcabber/loudmouth
+loudmouth: loudmouth home: https://github.com/mcabber/loudmouth
loudmouth:
loudmouth:
loudmouth:
diff --git a/source/l/lzo/lzo.SlackBuild b/source/l/lzo/lzo.SlackBuild
index c16ec2e85..7514eab96 100755
--- a/source/l/lzo/lzo.SlackBuild
+++ b/source/l/lzo/lzo.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2006 Ricardson Williams <ricardsonwilliams at yahoo.com.br>
-# Copyright 2008, 2009, 2010, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,24 +23,34 @@
# Modified by the SlackBuilds.org project
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=lzo
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -53,7 +63,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -78,12 +87,15 @@ CFLAGS="$SLKCFLAGS" \
--disable-static \
--enable-shared \
--docdir=/usr/doc/$PKGNAM-$VERSION \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make check || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
# while the examples are somewhat interesting, due to autoconf they are
# rather hard to use outside of the actual source tree...
diff --git a/source/l/lzo/slack-desc b/source/l/lzo/slack-desc
index 71b61d6e0..70c4c51e1 100644
--- a/source/l/lzo/slack-desc
+++ b/source/l/lzo/slack-desc
@@ -1,9 +1,9 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -12,7 +12,7 @@ lzo:
lzo: LZO is a portable lossless data compression library written in ANSI C.
lzo: It offers pretty fast compression and very fast decompression.
lzo:
-lzo: Homepage: http://www.oberhumer.com/opensource/lzo/
+lzo: Homepage: http://www.oberhumer.com/opensource/lzo/
lzo:
lzo:
lzo:
diff --git a/source/l/media-player-info/media-player-info.SlackBuild b/source/l/media-player-info/media-player-info.SlackBuild
index 11773225e..705d31548 100755
--- a/source/l/media-player-info/media-player-info.SlackBuild
+++ b/source/l/media-player-info/media-player-info.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for media-player-info
@@ -22,13 +22,22 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=media-player-info
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/media-player-info/media-player-info.url b/source/l/media-player-info/media-player-info.url
new file mode 100644
index 000000000..c46bd6458
--- /dev/null
+++ b/source/l/media-player-info/media-player-info.url
@@ -0,0 +1 @@
+https://www.freedesktop.org/software/media-player-info/
diff --git a/source/l/media-player-info/slack-desc b/source/l/media-player-info/slack-desc
index 9ccb993f6..5428bbc41 100644
--- a/source/l/media-player-info/slack-desc
+++ b/source/l/media-player-info/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
media-player-info: media-player-info (media player capability data)
media-player-info:
media-player-info: media-player-info is a repository of data files describing media
-media-player-info: player (mostly USB Mass Storage ones) capabilities. These files
+media-player-info: player (mostly USB Mass Storage ones) capabilities. These files
media-player-info: contain information about the directory layout to use to add music
media-player-info: to these devices, about the supported file formats, and so on.
media-player-info:
diff --git a/source/l/mhash/mhash.SlackBuild b/source/l/mhash/mhash.SlackBuild
index 18dd41979..0d6038cce 100755
--- a/source/l/mhash/mhash.SlackBuild
+++ b/source/l/mhash/mhash.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=mhash
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-mhash
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf mhash-$VERSION
tar xvf $CWD/mhash-$VERSION.tar.?z* || exit 1
-cd mhash-$VERSION
+cd mhash-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -75,11 +83,14 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--program-prefix="" \
--program-suffix="" \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# This caused problems. Leaving it here to serve as a warning. ;-)
#
## Fix mhash.h so that it does not include its own config.h from
diff --git a/source/l/mhash/slack-desc b/source/l/mhash/slack-desc
index cbfcb3f81..22f9dd044 100644
--- a/source/l/mhash/slack-desc
+++ b/source/l/mhash/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/mm/mm.SlackBuild b/source/l/mm/mm.SlackBuild
index a0a93755a..9f1c7e7b7 100755
--- a/source/l/mm/mm.SlackBuild
+++ b/source/l/mm/mm.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,31 +20,39 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=mm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
mkdir -p $TMP $PKG
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -78,13 +86,16 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--enable-static \
--enable-shared \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make test || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Make sure the shared library is executable:
chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/libmm.so.*
# 99% of these are also executable, but I don't think it matters.
diff --git a/source/l/mm/slack-desc b/source/l/mm/slack-desc
index 6aa2f0bf7..7ed675906 100644
--- a/source/l/mm/slack-desc
+++ b/source/l/mm/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
mm: mm (Shared Memory Allocation library)
mm:
mm: OSSP mm is a 2-layer abstraction library which simplifies the usage of
-mm: shared memory between forked processes. On the first layer it hides
+mm: shared memory between forked processes. On the first layer it hides
mm: all platform dependent implementation details (allocation and locking)
mm: when dealing with shared memory segments and on the second layer it
mm: provides a high-level malloc(3)-style API to work with data inside
-mm: those shared memory segments. Apache, PHP, and other projects use mm.
+mm: those shared memory segments. Apache, PHP, and other projects use mm.
mm:
mm: The mm library was written by Ralf S. Engelschall.
mm:
diff --git a/source/l/mozilla-nss/mozilla-nss.SlackBuild b/source/l/mozilla-nss/mozilla-nss.SlackBuild
index 35e513d15..0d0f788e5 100755
--- a/source/l/mozilla-nss/mozilla-nss.SlackBuild
+++ b/source/l/mozilla-nss/mozilla-nss.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2005, 2006, 2008, 2009, 2010, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2013, 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2014, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -22,10 +22,12 @@
# SUCH DAMAGE.
# -----------------------------------------------------------------------------
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=mozilla-nss
SRCNAM=nss
-VERSION=${VERSION:-3.23}
-NSPR=${NSPR:-4.12}
+VERSION=${VERSION:-3.37.1}
+NSPR=${NSPR:-4.19}
BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
@@ -40,6 +42,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -55,7 +65,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -68,11 +77,14 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf nss-${VERSION}
rm -rf nspr-${NSPR}
-tar xvf $CWD/nss-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/nss-$VERSION.tar.?z || exit 1
cd nss-$VERSION
-tar xvf $CWD/nspr-$NSPR.tar.?z* || exit 1
+tar xvf $CWD/nspr-$NSPR.tar.?z || exit 1
mv nspr*/nspr .
+# -Werror is problematic with gcc7:
+sed -i "s|\ -Werror| |" nss/coreconf/Werror.mk || exit 1
+
# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
@@ -91,8 +103,8 @@ export NSS_USE_SYSTEM_SQLITE=1
export NSS_ENABLE_ECC=1
cd nss
# Seems parallel build does not work with this.
- #make $NUMJOBS nss_build_all export
- make nss_build_all export
+ #make $NUMJOBS nss_build_all export || exit 1
+ make nss_build_all export || exit 1
cd -
# Install all the needed stuff to the package dir:
diff --git a/source/l/mozilla-nss/slack-desc b/source/l/mozilla-nss/slack-desc
index 7a23daaff..9f640dae1 100644
--- a/source/l/mozilla-nss/slack-desc
+++ b/source/l/mozilla-nss/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/mpfr/mpfr.SlackBuild b/source/l/mpfr/mpfr.SlackBuild
index 55e41a196..98e068a82 100755
--- a/source/l/mpfr/mpfr.SlackBuild
+++ b/source/l/mpfr/mpfr.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,9 +22,11 @@
# Modified 2011 by Eric Hameleers <alien at slackware.com> for ARM port.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=mpfr
-VERSION=${VERSION:-$(echo mpfr-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo mpfr-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -62,7 +64,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-mpfr
rm -rf $PKG
@@ -74,10 +75,18 @@ if [ ! "$PATCHLEVEL" = "" ]; then
PATCHLEVEL="p${PATCHLEVEL}"
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION${PATCHLEVEL}-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
cd $TMP
rm -rf mpfr-$VERSION
-tar xvf $CWD/mpfr-$VERSION.tar.xz || exit 1
-cd mpfr-$VERSION
+tar xvf $CWD/mpfr-$VERSION.tar.?z || exit 1
+cd mpfr-$VERSION || exit 1
chown -R root:root .
if [ ! -z "$(ls $CWD/patches/* 2> /dev/null)" ]; then
@@ -100,9 +109,9 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--infodir=/usr/info \
--docdir=/usr/doc/mpfr-$VERSION \
- --enable-static=yes \
+ --enable-static=no \
--enable-shared=yes \
- --build=$TARGET
+ --build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -113,6 +122,9 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
# Hardly a savings doing this...
#strip -g $PKG/usr/lib${LIBDIRSUFFIX}/*.a
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*
diff --git a/source/l/mpfr/slack-desc b/source/l/mpfr/slack-desc
index 23b433145..b08930024 100644
--- a/source/l/mpfr/slack-desc
+++ b/source/l/mpfr/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -13,7 +13,7 @@ mpfr: computations with exact rounding (also called correct rounding).
mpfr: It is based on the GMP multiple-precision library.
mpfr: The main goal of MPFR is to provide a library for multiple-precision
mpfr: floating-point computation which is both efficient and has
-mpfr: well-defined semantics. It copies the good ideas from the
+mpfr: well-defined semantics. It copies the good ideas from the
mpfr: ANSI/IEEE-754 standard for double-precision floating-point arithmetic
mpfr: (53-bit mantissa).
mpfr:
diff --git a/source/l/ncurses/Eterm.ti b/source/l/ncurses/Eterm.ti
deleted file mode 100644
index b711cb923..000000000
--- a/source/l/ncurses/Eterm.ti
+++ /dev/null
@@ -1,150 +0,0 @@
-# Eterm terminfo file
-
-Eterm|Eterm Terminal Emulator (X11 Window System),
-# FIXME: xterm does not specify bce, bw, eo, or xon. Should we?
- am, bw, bce, km, mir, msgr, xenl, xon, eo, mc5i,
- cols#80, lines#24, it#8, lm#0, btns#5,
- cr=\r, bel=^G,
- colors#8, pairs#64,
-
-# Scroll text down/up one line
- ind=\n, ri=\eM,
-
-# Clear entire screen (home, then clear to EOS), EOS, EOL, BOL
- clear=\e[H\e[2J, ed=\e[J, el=\e[K, el1=\e[1K,
-
-# Change scrolling region to lines $1+1 to $2+1
-# %i means add one to params 1 and 2; convert from 0-based to
-# 1-based counting.
- csr=\e[%i%p1%d;%p2%dr,
-
-# Move cursor to row $1+1, column $2+1. Can end with H or f
- cup=\e[%i%p1%d;%p2%dH,
-# Move cursor to column n, same row; or row n, same column
- hpa=\e[%i%p1%dG, vpa=\e[%i%p1%dd,
-# Move cursor up/down/forward/back by n chars
- cuu=\e[%p1%dA, cud=\e[%p1%dB, cuf=\e[%p1%dC, cub=\e[%p1%dD,
-# Move cursor up/down/forward/back by 1 char
- cuu1=\e[A, cud1=\e[B, cuf1=\e[C, cub1=\b,
-# Home cursor (row 1, col 1). Was \e[1;1H but 1's are redundant
- home=\e[H,
-
-# Enter/leave insert mode
- smir=\e[4h, rmir=\e[4l,
-
-# Set tab stops, clear tab stops, tab character
- hts=\eH, tbc=\e[3g, ht=\t,
-
-# Turn on/off auto margins
- smam=\e[?7h, rmam=\e[?7l,
-# Make cursor invisible, normal (bold cursor cvvis not supported)
- civis=\e[?25l, cnorm=\e[?25h,
-# Save/restore cursor position
- sc=\e7, rc=\e8,
-
-# Alternate character set (line drawing), enable/enter/exit ACS
- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-# The line below is used by some vtXXX emulators, but I don't think it's right for us.
-# 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,
- enacs=\e)0, smacs=^N, rmacs=^O,
-
-# Delete/insert n chars, 1 char
- dch=\e[%p1%dP, ich=\e[%p1%d@, dch1=\e[P, ich1=\e[@,
-# Delete/insert n lines, 1 line
- dl=\e[%p1%dM, il=\e[%p1%dL, dl1=\e[M, il1=\e[L,
-# Erase next n chars
- ech=\e[%p1%dX,
-
-# Activate SGR mode: bold, reverse video, blink (bright bg color)
- bold=\e[1m, rev=\e[7m, blink=\e[5m,
-# Start/stop underline, standout (reverse video)
- smul=\e[4m, rmul=\e[24m, smso=\e[7m, rmso=\e[27m,
-# Turn off all attributes (exit_attribute_mode)
- sgr0=\e[m^O,
-# Flash the screen (sets and resets reverse video for the whole screen)
- flash=\e[?5h\e[?5l,
-
-# Enter/leave application keypad mode. We always send the ANSI values
-# because that seems to be the most portable solution. The valid escape
-# sequences are here but are commented out for this reason. The 1st set
-# is for keypad cursor keys, the second is for application cursor key
-# mode. The third is what gets sent by default.
-## smkx=\e=, rmkx=\e>,
- smkx=, rmkx=,
-## kcuu1=\e[Ox, kcud1=\e[Or, kcuf1=\e[Ov, kcub1=\e[Ot,
-## kcuu1=\eOA, kcud1=\eOB, kcuf1=\eOC, kcub1=\eOD,
- kcuu1=\e[A, kcud1=\e[B, kcuf1=\e[C, kcub1=\e[D,
-
-# Keypad 7, 9, 5, 1, and 3. The 1st set are the appl. keypad mode
-# sequences. The 2nd set are the values for Home/End/PgUp/PgDn.
-# The 5 key is the same either way.
-## ka1=\eOw, ka3=\eOy, kb2=\eOu, kc1=\eOq, kc3=\eOs,
- ka1=\e[7~, ka3=\e[5~, kb2=\eOu, kc1=\e[8~, kc3=\e[6~,
-
-# Function keys
- kf1=\e[11~, kf2=\e[12~, kf3=\e[13~, kf4=\e[14~, kf5=\e[15~,
- kf6=\e[17~, kf7=\e[18~, kf8=\e[19~, kf9=\e[20~, 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~,
-
-# Find, Insert, Delete, Select, Prior (PgUp), Next (PgDn). The first set of
-# sequences are accurate. The second set lets Find/Select act like Home/End.
- kfnd=\e[1~, kich1=\e[2~, kdch1=\e[3~, kslt=\e[4~, kpp=\e[5~, knp=\e[6~,
-## kfnd=\e[7~, kich1=\e[2~, kdch1=\e[3~, kslt=\e[8~, kpp=\e[5~, knp=\e[6~,
-
-# Home (vt100 may use khome=\e[H), End, Backspace, Keypad Enter, Shift-Tab
-# The 1st set is the default. The 2nd set is based on Linux console/vt220
-# settings for Home/End and Backspace sending Delete (^?). The 3rd set gives
-# xterm's settings for Home/End.
- khome=\e[7~, kend=\e[8~, kbs=\010, kent=\eOM, kcbt=\e[Z,
-## khome=\e[1~, kend=\e[4~, kbs=\177, kent=\eOM, kcbt=\e[Z,
-## khome=\e[H, kend=\e[F, kbs=\010, kent=\eOM, kcbt=\e[Z,
-
-# Help and Begin keys
- khlp=\e[28~, kbeg=\eOu,
-# "Shifted" right and left (actually Ctrl, not Shift)
- kRIT=\e[c, kLFT=\e[d,
-# Shift-Prior/Next (PgUp/PgDn). Usually, these key combos scroll.
- kPRV=\e[5$, kNXT=\e[6$,
-# Shift-Delete/Home/End and Ctrl-End. It's a $ instead of a ~ for
-# Shift-, a ^ for Ctrl-, and @ for Ctrl-Shift-.
- kDC=\e[3$, kHOM=\e[7$, kEND=\e[8$, kel=\e[8\^,
-
-# Reset terminal, turn off all attributes
- 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>,
-# Init terminal
- is1=\e[?47l\e>\e[?1l,
- is2=\e[r\e[m\e[2J\e[H\e[?7h\e[?1;3;4;6l\e[4l,
-
-# Enter/leave cursor address mode. The 1st set uses the
-# secondary screen. The 2nd one doesn't.
- smcup=\e7\e[?47h, rmcup=\e[2J\e[?47l\e8,
-## smcup=\e7, rmcup=\e8,
-
-# Start/stop redirection to the printpipe
- mc4=\e[4i, mc5=\e[5i,
-
-# User-defined string capabilities
-# Cursor Position Report (CPR)
- u6=\e[%i%d;%dR,
-# Report current screen position (DSR 6) (replies with u6)
- u7=\e[6n,
-# vt100 answerback
- u8=\e[?1;2c,
-# Request identity (replies with u8) If VT100_ANS is enabled, use
-# the first value. If ENQ_ANS is enabled, use the second value.
- u9=\e[c,
-## u9=^E,
-
-# Add ANSI color support
- sgr=\e[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t^N%e^O%;,
-## sgr=\e[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m,
-
-# Mouse info packet introducer
- kmous=\e[M,
-
-# Revert to the original foreground/background pair
- op=\e[39;49m,
-# Set foreground color, background color
- setaf=\e[3%p1%dm, setab=\e[4%p1%dm,
diff --git a/source/l/ncurses/aaa_terminfo.SlackBuild b/source/l/ncurses/aaa_terminfo.SlackBuild
new file mode 100755
index 000000000..aab8dc5db
--- /dev/null
+++ b/source/l/ncurses/aaa_terminfo.SlackBuild
@@ -0,0 +1,105 @@
+#!/bin/bash
+# Copyright 2006, 2007, 2009, 2010, 2011, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# If the ncurses package is not available, we might have to build it.
+# Therefore, for use with make_world.sh, REQUIRE_GLOBAL_LOCK.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=aaa_terminfo
+# Note the version of ncurses in use:
+VERSION=${VERSION:-$(PRINT_PACKAGE_NAME=yes ./ncurses.SlackBuild | cut -f 2 -d -)}
+BUILD=${BUILD:-4}
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-${PKGNAM}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+else
+ LIBDIRSUFFIX=""
+fi
+
+# If we don't have an ncurses package available in $TMP, we need to build it:
+if ! /bin/ls $TMP/$(PRINT_PACKAGE_NAME=yes $CWD/ncurses.SlackBuild) 1> /dev/null 2> /dev/null ; then
+ TMP=$TMP $CWD/ncurses.SlackBuild
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $PKG
+mkdir cruft
+cd cruft
+explodepkg $TMP/$(PRINT_PACKAGE_NAME=yes $CWD/ncurses.SlackBuild)
+sh install/doinst.sh
+cd ..
+
+# I wonder if anything still looks here?
+mkdir -p usr/lib${LIBDIRSUFFIX}
+( cd usr/lib${LIBDIRSUFFIX}
+ rm -rf terminfo
+ ln -sf /usr/share/terminfo terminfo
+)
+
+# This has been the traditional starter collection since forever.
+for dir in l n u v x ; do
+ mkdir -p usr/share/terminfo/$dir
+ ( cd usr/share/terminfo/$dir
+ cp -a $PKG/cruft/usr/share/terminfo/$dir/* .
+ )
+done
+
+# Remove dangling symlinks:
+( cd usr/share/terminfo
+ for file in $(find . -type l) ; do
+ if [ "$(readlink -e $file)" = "" ]; then
+ rm --verbose $file
+ fi
+ done
+)
+
+# Get rid of cruft:
+rm -rf $PKG/cruft
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc.aaa_terminfo > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/ncurses/doinst.sh b/source/l/ncurses/doinst.sh
new file mode 100644
index 000000000..762cfc7f5
--- /dev/null
+++ b/source/l/ncurses/doinst.sh
@@ -0,0 +1,3 @@
+# Remove possible residue from ncurses-5.x:
+rm -f usr/lib/libncurses.so.5
+rm -f usr/lib/libncursesw.so.5
diff --git a/source/l/ncurses/ncurses-5.9-20141206-patch.sh b/source/l/ncurses/ncurses-5.9-20141206-patch.sh
deleted file mode 100644
index 0a513594c..000000000
--- a/source/l/ncurses/ncurses-5.9-20141206-patch.sh
+++ /dev/null
@@ -1,235455 +0,0 @@
-#!/bin/sh
-# Use this script to patch ncurses 5.9 to 5.9 (20141206)
-# Run this script inside the ncurses 5.9 source directory et voila! Updated.
-
-if ( egrep '^NCURSES_MAJOR = 5$' dist.mk >/dev/null 2>&1 \
- && egrep '^NCURSES_MINOR = 9$' dist.mk >/dev/null 2>&1 \
- && egrep '^NCURSES_PATCH = 20110404$' dist.mk >/dev/null 2>&1 )
-then
- echo patching...
- rm -f mk-dlls.sh.in
- rm -f ncurses/base/memmove.c
- rm -f ncurses/tinfo/setbuf.c
- rm -f ncurses/tty/tty_display.h
- rm -f ncurses/tty/tty_input.h
-else
- echo 'This does not look like ncurses 5.9'
- exit 1
-fi
-
-
-patch -p1 -i $0 # shell command = this script = inputfile for patch
-exit
-
-# patch by Thomas E. Dickey <dickey@invisible-island.net>
-# created Sun Dec 7 14:00:27 UTC 2014
-# ------------------------------------------------------------------------------
-# Ada95/aclocal.m4 | 1337
-# Ada95/configure | 5102 -
-# Ada95/configure.in | 133
-# Ada95/doc/Makefile.in | 3
-# Ada95/gen/Makefile.in | 147
-# Ada95/gen/adacurses-config.in | 14
-# Ada95/gen/gen.c | 1900
-# Ada95/gen/terminal_interface-curses-aux.ads.m4 | 73
-# Ada95/gen/terminal_interface-curses-forms-field_types.ads.m4 | 9
-# Ada95/gen/terminal_interface-curses-forms.ads.m4 | 69
-# Ada95/gen/terminal_interface-curses-menus.ads.m4 | 54
-# Ada95/gen/terminal_interface-curses-mouse.ads.m4 | 44
-# Ada95/gen/terminal_interface-curses-panels.ads.m4 | 10
-# Ada95/gen/terminal_interface-curses-trace.ads.m4 | 54
-# Ada95/gen/terminal_interface-curses.adb.m4 | 281
-# Ada95/gen/terminal_interface-curses.ads.m4 | 507
-# Ada95/include/ncurses_defs | 7
-# Ada95/make-tar.sh | 13
-# Ada95/package/AdaCurses.spec | 6
-# Ada95/package/debian/source/format | 2
-# Ada95/samples/Makefile.in | 7
-# Ada95/samples/ncurses2-demo_forms.adb | 11
-# Ada95/samples/ncurses2-demo_pad.adb | 12
-# Ada95/samples/ncurses2-getch_test.adb | 12
-# Ada95/samples/ncurses2-overlap_test.adb | 11
-# Ada95/samples/ncurses2-trace_set.adb | 51
-# Ada95/samples/ncurses2-util.adb | 11
-# Ada95/samples/sample-explanation.adb | 12
-# Ada95/samples/sample-header_handler.adb | 13
-# Ada95/src/Makefile.in | 42
-# Ada95/src/c_varargs_to_ada.c | 6
-# Ada95/src/library.gpr | 4
-# Ada95/src/terminal_interface-curses-forms-field_types-alpha.adb | 14
-# Ada95/src/terminal_interface-curses-forms-field_types-alphanumeric.adb | 14
-# Ada95/src/terminal_interface-curses-forms-field_types-enumeration.adb | 19
-# Ada95/src/terminal_interface-curses-forms-field_types-intfield.adb | 18
-# Ada95/src/terminal_interface-curses-forms-field_types-ipv4_address.adb | 14
-# Ada95/src/terminal_interface-curses-forms-field_types-numeric.adb | 18
-# Ada95/src/terminal_interface-curses-forms-field_types-regexp.adb | 17
-# Ada95/src/terminal_interface-curses-forms-field_types-user-choice.adb | 18
-# Ada95/src/terminal_interface-curses-forms-field_types-user.adb | 19
-# Ada95/src/terminal_interface-curses-forms-field_types.adb | 56
-# Ada95/src/terminal_interface-curses-forms-field_user_data.adb | 11
-# Ada95/src/terminal_interface-curses-forms-form_user_data.adb | 11
-# Ada95/src/terminal_interface-curses-forms.adb | 352
-# Ada95/src/terminal_interface-curses-menus-item_user_data.adb | 11
-# Ada95/src/terminal_interface-curses-menus-menu_user_data.adb | 12
-# Ada95/src/terminal_interface-curses-menus.adb | 346
-# Ada95/src/terminal_interface-curses-mouse.adb | 9
-# Ada95/src/terminal_interface-curses-text_io.adb | 8
-# Ada95/src/terminal_interface-curses-trace.adb_p | 37
-# INSTALL | 205
-# MANIFEST | 67
-# Makefile.in | 30
-# NEWS | 1879
-# README | 17
-# README.MinGW | 95
-# aclocal.m4 | 2058
-# announce.html.in | 160
-# c++/Makefile.in | 121
-# c++/cursesapp.h | 21
-# c++/cursesf.cc | 12
-# c++/cursesf.h | 26
-# c++/cursesm.cc | 10
-# c++/cursesm.h | 23
-# c++/cursesmain.cc | 6
-# c++/cursesp.h | 15
-# c++/cursespad.cc | 56
-# c++/cursesw.cc | 23
-# c++/cursesw.h | 41
-# c++/cursslk.cc | 9
-# c++/demo.cc | 9
-# c++/etip.h.in | 18
-# c++/internal.h | 6
-# c++/modules | 21
-# config.guess | 508
-# config.sub | 228
-# configure | 9647 +-
-# configure.in | 753
-# dist.mk | 37
-# doc/html/Ada95.html | 471
-# doc/html/NCURSES-Programming-HOWTO.html |13472 ++--
-# doc/html/ada/files.htm | 16
-# doc/html/ada/files/T.htm | 7
-# doc/html/ada/funcs.htm | 16
-# doc/html/ada/funcs/A.htm | 39
-# doc/html/ada/funcs/B.htm | 32
-# doc/html/ada/funcs/C.htm | 87
-# doc/html/ada/funcs/D.htm | 80
-# doc/html/ada/funcs/E.htm | 26
-# doc/html/ada/funcs/F.htm | 98
-# doc/html/ada/funcs/G.htm | 128
-# doc/html/ada/funcs/H.htm | 32
-# doc/html/ada/funcs/I.htm | 88
-# doc/html/ada/funcs/K.htm | 18
-# doc/html/ada/funcs/L.htm | 25
-# doc/html/ada/funcs/M.htm | 84
-# doc/html/ada/funcs/N.htm | 52
-# doc/html/ada/funcs/O.htm | 14
-# doc/html/ada/funcs/P.htm | 50
-# doc/html/ada/funcs/Q.htm | 8
-# doc/html/ada/funcs/R.htm | 64
-# doc/html/ada/funcs/S.htm | 304
-# doc/html/ada/funcs/T.htm | 37
-# doc/html/ada/funcs/U.htm | 34
-# doc/html/ada/funcs/V.htm | 12
-# doc/html/ada/funcs/W.htm | 88
-# doc/html/ada/index.htm | 5
-# doc/html/ada/main.htm | 17
-# doc/html/ada/terminal_interface-curses-aux__adb.htm | 186
-# doc/html/ada/terminal_interface-curses-aux__ads.htm | 255
-# doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm | 122
-# doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm | 112
-# doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm | 122
-# doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm | 112
-# doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm | 126
-# doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm | 122
-# doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm | 157
-# doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm | 164
-# doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm | 130
-# doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm | 116
-# doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm | 122
-# doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm | 110
-# doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm | 134
-# doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm | 116
-# doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm | 127
-# doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm | 114
-# doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm | 174
-# doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm | 170
-# doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm | 207
-# doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm | 182
-# doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm | 401
-# doc/html/ada/terminal_interface-curses-forms-field_types__ads.htm | 465
-# doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm | 151
-# doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm | 144
-# doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm | 157
-# doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm | 144
-# doc/html/ada/terminal_interface-curses-forms__adb.htm | 1648
-# doc/html/ada/terminal_interface-curses-forms__ads.htm | 1447
-# doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm | 131
-# doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm | 154
-# doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm | 130
-# doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm | 144
-# doc/html/ada/terminal_interface-curses-menus__adb.htm | 1286
-# doc/html/ada/terminal_interface-curses-menus__ads.htm | 1276
-# doc/html/ada/terminal_interface-curses-mouse__adb.htm | 312
-# doc/html/ada/terminal_interface-curses-mouse__ads.htm | 406
-# doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm | 134
-# doc/html/ada/terminal_interface-curses-panels-user_data__ads.htm | 144
-# doc/html/ada/terminal_interface-curses-panels__adb.htm | 230
-# doc/html/ada/terminal_interface-curses-panels__ads.htm | 283
-# doc/html/ada/terminal_interface-curses-putwin__adb.htm | 136
-# doc/html/ada/terminal_interface-curses-putwin__ads.htm | 106
-# doc/html/ada/terminal_interface-curses-termcap__adb.htm | 214
-# doc/html/ada/terminal_interface-curses-termcap__ads.htm | 170
-# doc/html/ada/terminal_interface-curses-terminfo__adb.htm | 204
-# doc/html/ada/terminal_interface-curses-terminfo__ads.htm | 166
-# doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm | 158
-# doc/html/ada/terminal_interface-curses-text_io-aux__ads.htm | 124
-# doc/html/ada/terminal_interface-curses-text_io-complex_io__adb.htm | 124
-# doc/html/ada/terminal_interface-curses-text_io-complex_io__ads.htm | 126
-# doc/html/ada/terminal_interface-curses-text_io-decimal_io__adb.htm | 132
-# doc/html/ada/terminal_interface-curses-text_io-decimal_io__ads.htm | 136
-# doc/html/ada/terminal_interface-curses-text_io-enumeration_io__adb.htm | 128
-# doc/html/ada/terminal_interface-curses-text_io-enumeration_io__ads.htm | 128
-# doc/html/ada/terminal_interface-curses-text_io-fixed_io__adb.htm | 132
-# doc/html/ada/terminal_interface-curses-text_io-fixed_io__ads.htm | 136
-# doc/html/ada/terminal_interface-curses-text_io-float_io__adb.htm | 132
-# doc/html/ada/terminal_interface-curses-text_io-float_io__ads.htm | 136
-# doc/html/ada/terminal_interface-curses-text_io-integer_io__adb.htm | 126
-# doc/html/ada/terminal_interface-curses-text_io-integer_io__ads.htm | 128
-# doc/html/ada/terminal_interface-curses-text_io-modular_io__adb.htm | 126
-# doc/html/ada/terminal_interface-curses-text_io-modular_io__ads.htm | 128
-# doc/html/ada/terminal_interface-curses-text_io__adb.htm | 340
-# doc/html/ada/terminal_interface-curses-text_io__ads.htm | 230
-# doc/html/ada/terminal_interface-curses-trace__adb.htm | 114
-# doc/html/ada/terminal_interface-curses-trace__ads.htm | 224
-# doc/html/ada/terminal_interface-curses__adb.htm | 3513 -
-# doc/html/ada/terminal_interface-curses__ads.htm | 3911 -
-# doc/html/ada/terminal_interface__ads.htm | 108
-# doc/html/announce.html | 4
-# doc/html/hackguide.html | 6
-# doc/html/index.html | 6
-# doc/html/man/adacurses-config.1.html | 62
-# doc/html/man/captoinfo.1m.html | 13
-# doc/html/man/clear.1.html | 16
-# doc/html/man/curs_add_wch.3x.html | 32
-# doc/html/man/curs_add_wchstr.3x.html | 81
-# doc/html/man/curs_addch.3x.html | 51
-# doc/html/man/curs_addchstr.3x.html | 69
-# doc/html/man/curs_addstr.3x.html | 49
-# doc/html/man/curs_addwstr.3x.html | 56
-# doc/html/man/curs_attr.3x.html | 90
-# doc/html/man/curs_beep.3x.html | 2
-# doc/html/man/curs_bkgd.3x.html | 2
-# doc/html/man/curs_bkgrnd.3x.html | 8
-# doc/html/man/curs_border.3x.html | 2
-# doc/html/man/curs_border_set.3x.html | 8
-# doc/html/man/curs_clear.3x.html | 2
-# doc/html/man/curs_color.3x.html | 2
-# doc/html/man/curs_delch.3x.html | 2
-# doc/html/man/curs_deleteln.3x.html | 2
-# doc/html/man/curs_extend.3x.html | 2
-# doc/html/man/curs_get_wch.3x.html | 8
-# doc/html/man/curs_get_wstr.3x.html | 8
-# doc/html/man/curs_getcchar.3x.html | 10
-# doc/html/man/curs_getch.3x.html | 56
-# doc/html/man/curs_getstr.3x.html | 2
-# doc/html/man/curs_getyx.3x.html | 2
-# doc/html/man/curs_in_wch.3x.html | 2
-# doc/html/man/curs_in_wchstr.3x.html | 8
-# doc/html/man/curs_inch.3x.html | 2
-# doc/html/man/curs_inchstr.3x.html | 2
-# doc/html/man/curs_initscr.3x.html | 79
-# doc/html/man/curs_inopts.3x.html | 60
-# doc/html/man/curs_ins_wch.3x.html | 2
-# doc/html/man/curs_ins_wstr.3x.html | 8
-# doc/html/man/curs_insch.3x.html | 2
-# doc/html/man/curs_insstr.3x.html | 2
-# doc/html/man/curs_instr.3x.html | 2
-# doc/html/man/curs_inwstr.3x.html | 8
-# doc/html/man/curs_kernel.3x.html | 2
-# doc/html/man/curs_legacy.3x.html | 2
-# doc/html/man/curs_memleaks.3x.html | 2
-# doc/html/man/curs_mouse.3x.html | 19
-# doc/html/man/curs_move.3x.html | 2
-# doc/html/man/curs_opaque.3x.html | 12
-# doc/html/man/curs_outopts.3x.html | 2
-# doc/html/man/curs_overlay.3x.html | 8
-# doc/html/man/curs_pad.3x.html | 2
-# doc/html/man/curs_print.3x.html | 2
-# doc/html/man/curs_printw.3x.html | 8
-# doc/html/man/curs_refresh.3x.html | 2
-# doc/html/man/curs_scanw.3x.html | 8
-# doc/html/man/curs_scr_dump.3x.html | 4
-# doc/html/man/curs_scroll.3x.html | 2
-# doc/html/man/curs_slk.3x.html | 2
-# doc/html/man/curs_sp_funcs.3x.html | 62
-# doc/html/man/curs_termattrs.3x.html | 12
-# doc/html/man/curs_termcap.3x.html | 133
-# doc/html/man/curs_terminfo.3x.html | 309
-# doc/html/man/curs_threads.3x.html | 13
-# doc/html/man/curs_touch.3x.html | 2
-# doc/html/man/curs_trace.3x.html | 2
-# doc/html/man/curs_util.3x.html | 166
-# doc/html/man/curs_variables.3x.html | 20
-# doc/html/man/curs_window.3x.html | 111
-# doc/html/man/default_colors.3x.html | 4
-# doc/html/man/define_key.3x.html | 2
-# doc/html/man/form.3x.html | 25
-# doc/html/man/form_cursor.3x.html | 2
-# doc/html/man/form_data.3x.html | 2
-# doc/html/man/form_driver.3x.html | 4
-# doc/html/man/form_field.3x.html | 8
-# doc/html/man/form_field_attributes.3x.html | 2
-# doc/html/man/form_field_buffer.3x.html | 6
-# doc/html/man/form_field_info.3x.html | 2
-# doc/html/man/form_field_just.3x.html | 2
-# doc/html/man/form_field_new.3x.html | 2
-# doc/html/man/form_field_opts.3x.html | 64
-# doc/html/man/form_field_userptr.3x.html | 2
-# doc/html/man/form_field_validation.3x.html | 2
-# doc/html/man/form_fieldtype.3x.html | 6
-# doc/html/man/form_hook.3x.html | 2
-# doc/html/man/form_new.3x.html | 2
-# doc/html/man/form_new_page.3x.html | 2
-# doc/html/man/form_opts.3x.html | 2
-# doc/html/man/form_page.3x.html | 2
-# doc/html/man/form_post.3x.html | 2
-# doc/html/man/form_requestname.3x.html | 2
-# doc/html/man/form_userptr.3x.html | 2
-# doc/html/man/form_variables.3x.html | 8
-# doc/html/man/form_win.3x.html | 2
-# doc/html/man/index.html | 121
-# doc/html/man/infocmp.1m.html | 290
-# doc/html/man/infotocap.1m.html | 8
-# doc/html/man/key_defined.3x.html | 2
-# doc/html/man/keybound.3x.html | 2
-# doc/html/man/keyok.3x.html | 2
-# doc/html/man/legacy_coding.3x.html | 2
-# doc/html/man/menu.3x.html | 25
-# doc/html/man/menu_attributes.3x.html | 2
-# doc/html/man/menu_cursor.3x.html | 2
-# doc/html/man/menu_driver.3x.html | 50
-# doc/html/man/menu_format.3x.html | 2
-# doc/html/man/menu_hook.3x.html | 2
-# doc/html/man/menu_items.3x.html | 8
-# doc/html/man/menu_mark.3x.html | 2
-# doc/html/man/menu_new.3x.html | 2
-# doc/html/man/menu_opts.3x.html | 2
-# doc/html/man/menu_pattern.3x.html | 2
-# doc/html/man/menu_post.3x.html | 2
-# doc/html/man/menu_requestname.3x.html | 2
-# doc/html/man/menu_spacing.3x.html | 2
-# doc/html/man/menu_userptr.3x.html | 2
-# doc/html/man/menu_win.3x.html | 2
-# doc/html/man/mitem_current.3x.html | 2
-# doc/html/man/mitem_name.3x.html | 2
-# doc/html/man/mitem_new.3x.html | 2
-# doc/html/man/mitem_opts.3x.html | 2
-# doc/html/man/mitem_userptr.3x.html | 2
-# doc/html/man/mitem_value.3x.html | 2
-# doc/html/man/mitem_visible.3x.html | 2
-# doc/html/man/ncurses.3x.html | 663
-# doc/html/man/ncurses5-config.1.html | 9
-# doc/html/man/panel.3x.html | 42
-# doc/html/man/resizeterm.3x.html | 57
-# doc/html/man/tabs.1.html | 44
-# doc/html/man/term.5.html | 2
-# doc/html/man/term.7.html | 12
-# doc/html/man/term_variables.3x.html | 20
-# doc/html/man/terminfo.5.html | 1481
-# doc/html/man/tic.1m.html | 334
-# doc/html/man/toe.1m.html | 18
-# doc/html/man/tput.1.html | 136
-# doc/html/man/tset.1.html | 70
-# doc/html/man/wresize.3x.html | 2
-# doc/html/ncurses-intro.html | 7
-# doc/ncurses-intro.doc | 1
-# form/Makefile.in | 17
-# form/fld_arg.c | 6
-# form/fld_def.c | 29
-# form/fld_dup.c | 8
-# form/fld_ftchoice.c | 6
-# form/fld_ftlink.c | 10
-# form/fld_just.c | 6
-# form/fld_link.c | 8
-# form/fld_max.c | 10
-# form/fld_move.c | 8
-# form/fld_page.c | 8
-# form/fld_stat.c | 8
-# form/form.h | 12
-# form/form.priv.h | 29
-# form/frm_data.c | 6
-# form/frm_def.c | 24
-# form/frm_driver.c | 500
-# form/frm_hook.c | 6
-# form/frm_opts.c | 18
-# form/frm_page.c | 6
-# form/frm_post.c | 8
-# form/frm_req_name.c | 21
-# form/fty_generic.c | 6
-# form/fty_int.c | 7
-# form/fty_num.c | 7
-# form/fty_regex.c | 14
-# form/llib-lformtw | 11
-# form/llib-lformw | 11
-# include/Caps | 18
-# include/Caps.aix4 | 18
-# include/Caps.hpux11 | 18
-# include/Caps.keys | 26
-# include/Caps.osf1r5 | 6
-# include/MKkey_defs.sh | 9
-# include/MKparametrized.sh | 15
-# include/MKterm.h.awk.in | 46
-# include/Makefile.in | 7
-# include/curses.h.in | 303
-# include/curses.tail | 4
-# include/curses.wide | 152
-# include/hashed_db.h | 4
-# include/headers | 18
-# include/nc_alloc.h | 14
-# include/nc_tparm.h | 8
-# include/ncurses_defs | 27
-# include/ncurses_dll.h.in | 20
-# include/ncurses_mingw.h | 138
-# include/term_entry.h | 68
-# include/tic.h | 35
-# man/MKada_config.in | 69
-# man/Makefile.in | 8
-# man/clear.1 | 11
-# man/curs_add_wch.3x | 6
-# man/curs_add_wchstr.3x | 64
-# man/curs_addch.3x | 27
-# man/curs_addchstr.3x | 50
-# man/curs_addstr.3x | 38
-# man/curs_addwstr.3x | 35
-# man/curs_attr.3x | 59
-# man/curs_bkgrnd.3x | 6
-# man/curs_border_set.3x | 6
-# man/curs_color.3x | 180
-# man/curs_get_wch.3x | 6
-# man/curs_get_wstr.3x | 6
-# man/curs_getcchar.3x | 6
-# man/curs_getch.3x | 30
-# man/curs_in_wchstr.3x | 6
-# man/curs_initscr.3x | 112
-# man/curs_inopts.3x | 63
-# man/curs_ins_wstr.3x | 6
-# man/curs_inwstr.3x | 6
-# man/curs_mouse.3x | 33
-# man/curs_opaque.3x | 18
-# man/curs_overlay.3x | 26
-# man/curs_sp_funcs.3x | 6
-# man/curs_termcap.3x | 61
-# man/curs_terminfo.3x | 207
-# man/curs_threads.3x | 9
-# man/curs_util.3x | 112
-# man/curs_variables.3x | 9
-# man/curs_window.3x | 109
-# man/form.3x | 10
-# man/form_field.3x | 6
-# man/form_field_opts.3x | 49
-# man/form_variables.3x | 6
-# man/infocmp.1m | 178
-# man/menu.3x | 10
-# man/menu_items.3x | 6
-# man/ncurses.3x | 198
-# man/resizeterm.3x | 16
-# man/tabs.1 | 24
-# man/term.7 | 6
-# man/term_variables.3x | 14
-# man/terminfo.head | 15
-# man/terminfo.tail | 404
-# man/tic.1m | 225
-# man/toe.1m | 21
-# man/tput.1 | 35
-# man/tset.1 | 103
-# menu/Makefile.in | 17
-# menu/m_attribs.c | 6
-# menu/m_driver.c | 12
-# menu/m_format.c | 20
-# menu/m_global.c | 42
-# menu/m_hook.c | 6
-# menu/m_item_new.c | 21
-# menu/m_pad.c | 6
-# menu/m_post.c | 40
-# menu/m_req_name.c | 19
-# menu/m_spacing.c | 10
-# menu/menu.priv.h | 27
-# menu/mf_common.h | 18
-# misc/Makefile.in | 17
-# misc/gen-pkgconfig.in | 88
-# misc/gen_edit.sh | 72
-# misc/ncurses-config.in | 49
-# misc/run_tic.in | 7
-# misc/terminfo.src |32219 +++++-----
-# mk-0th.awk | 91
-# mk-1st.awk | 122
-# mk-hdr.awk | 16
-# ncurses-5.9-20141206/Ada95/src/c_threaded_variables.c | 56
-# ncurses-5.9-20141206/Ada95/src/c_threaded_variables.h | 46
-# ncurses-5.9-20141206/COPYING | 28
-# ncurses-5.9-20141206/VERSION | 1
-# ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses_constants__ads.htm | 405
-# ncurses-5.9-20141206/include/nc_string.h | 77
-# ncurses-5.9-20141206/include/nc_termios.h | 161
-# ncurses-5.9-20141206/man/manhtml.aliases | 16
-# ncurses-5.9-20141206/man/manhtml.externs | 24
-# ncurses-5.9-20141206/ncurses/llib-ltic | 212
-# ncurses-5.9-20141206/ncurses/llib-ltict | 212
-# ncurses-5.9-20141206/ncurses/llib-ltictw | 212
-# ncurses-5.9-20141206/ncurses/llib-lticw | 212
-# ncurses-5.9-20141206/ncurses/llib-ltinfo | 1526
-# ncurses-5.9-20141206/ncurses/llib-ltinfot | 1635
-# ncurses-5.9-20141206/ncurses/llib-ltinfotw | 1668
-# ncurses-5.9-20141206/ncurses/llib-ltinfow | 1559
-# ncurses-5.9-20141206/ncurses/tinfo/obsolete.c | 239
-# ncurses-5.9-20141206/ncurses/widechar/widechars.c | 152
-# ncurses-5.9-20141206/package/debian-mingw/changelog | 11
-# ncurses-5.9-20141206/package/debian-mingw/compat | 1
-# ncurses-5.9-20141206/package/debian-mingw/control | 16
-# ncurses-5.9-20141206/package/debian-mingw/copyright | 112
-# ncurses-5.9-20141206/package/debian-mingw/rules | 140
-# ncurses-5.9-20141206/package/debian-mingw/source/format | 1
-# ncurses-5.9-20141206/package/debian-mingw/watch | 4
-# ncurses-5.9-20141206/package/debian-mingw64/changelog | 11
-# ncurses-5.9-20141206/package/debian-mingw64/compat | 1
-# ncurses-5.9-20141206/package/debian-mingw64/control | 16
-# ncurses-5.9-20141206/package/debian-mingw64/copyright | 112
-# ncurses-5.9-20141206/package/debian-mingw64/rules | 140
-# ncurses-5.9-20141206/package/debian-mingw64/source/format | 1
-# ncurses-5.9-20141206/package/debian-mingw64/watch | 4
-# ncurses-5.9-20141206/package/debian/changelog | 11
-# ncurses-5.9-20141206/package/debian/compat | 1
-# ncurses-5.9-20141206/package/debian/control | 16
-# ncurses-5.9-20141206/package/debian/copyright | 112
-# ncurses-5.9-20141206/package/debian/rules | 126
-# ncurses-5.9-20141206/package/debian/source/format | 1
-# ncurses-5.9-20141206/package/debian/watch | 4
-# ncurses-5.9-20141206/package/mingw-ncurses.nsi | 190
-# ncurses-5.9-20141206/package/mingw-ncurses.spec | 143
-# ncurses-5.9-20141206/package/ncurses.map | 1109
-# ncurses-5.9-20141206/package/ncurses.spec | 95
-# ncurses-5.9-20141206/package/ncurses.sym | 997
-# ncurses-5.9-20141206/package/ncursest.map | 1086
-# ncurses-5.9-20141206/package/ncursest.sym | 1001
-# ncurses-5.9-20141206/package/ncursestw.map | 1206
-# ncurses-5.9-20141206/package/ncursestw.sym | 1121
-# ncurses-5.9-20141206/package/ncursesw.map | 1220
-# ncurses-5.9-20141206/package/ncursesw.sym | 1111
-# ncurses-5.9-20141206/progs/tparm_type.c | 68
-# ncurses-5.9-20141206/progs/tparm_type.h | 52
-# ncurses-5.9-20141206/test/color_name.h | 103
-# ncurses-5.9-20141206/test/demo_forms.txt | 20
-# ncurses-5.9-20141206/test/dots_curses.c | 151
-# ncurses-5.9-20141206/test/dots_termcap.c | 254
-# ncurses-5.9-20141206/test/form_driver_w.c | 150
-# ncurses-5.9-20141206/test/package/mingw-ncurses-examples.spec | 109
-# ncurses-5.9-20141206/test/test_vid_puts.c | 148
-# ncurses-5.9-20141206/test/test_vidputs.c | 148
-# ncurses-5.9-20141206/test/widechars.h | 71
-# ncurses/Makefile.in | 43
-# ncurses/base/MKkeyname.awk | 30
-# ncurses/base/MKlib_gen.sh | 64
-# ncurses/base/MKunctrl.awk | 6
-# ncurses/base/define_key.c | 6
-# ncurses/base/keybound.c | 9
-# ncurses/base/keyok.c | 66
-# ncurses/base/lib_addch.c | 18
-# ncurses/base/lib_addstr.c | 10
-# ncurses/base/lib_beep.c | 13
-# ncurses/base/lib_bkgd.c | 13
-# ncurses/base/lib_chgat.c | 16
-# ncurses/base/lib_color.c | 176
-# ncurses/base/lib_colorset.c | 8
-# ncurses/base/lib_dft_fgbg.c | 7
-# ncurses/base/lib_driver.c | 24
-# ncurses/base/lib_endwin.c | 8
-# ncurses/base/lib_flash.c | 22
-# ncurses/base/lib_freeall.c | 20
-# ncurses/base/lib_getch.c | 68
-# ncurses/base/lib_getstr.c | 6
-# ncurses/base/lib_initscr.c | 8
-# ncurses/base/lib_insch.c | 34
-# ncurses/base/lib_instr.c | 16
-# ncurses/base/lib_mouse.c | 931
-# ncurses/base/lib_newterm.c | 25
-# ncurses/base/lib_newwin.c | 17
-# ncurses/base/lib_overlay.c | 21
-# ncurses/base/lib_printw.c | 34
-# ncurses/base/lib_refresh.c | 17
-# ncurses/base/lib_restart.c | 10
-# ncurses/base/lib_scanw.c | 6
-# ncurses/base/lib_screen.c | 19
-# ncurses/base/lib_scroll.c | 8
-# ncurses/base/lib_set_term.c | 60
-# ncurses/base/lib_slkatr_set.c | 10
-# ncurses/base/lib_slkcolor.c | 10
-# ncurses/base/lib_slkrefr.c | 26
-# ncurses/base/lib_slkset.c | 17
-# ncurses/base/lib_touch.c | 6
-# ncurses/base/lib_ungetch.c | 11
-# ncurses/base/resizeterm.c | 89
-# ncurses/base/safe_sprintf.c | 20
-# ncurses/base/vsscanf.c | 8
-# ncurses/base/wresize.c | 9
-# ncurses/build.priv.h | 6
-# ncurses/curses.priv.h | 436
-# ncurses/fifo_defs.h | 46
-# ncurses/llib-lncurses | 456
-# ncurses/llib-lncursest | 424
-# ncurses/llib-lncursestw | 562
-# ncurses/llib-lncursesw | 568
-# ncurses/modules | 8
-# ncurses/tinfo/MKcaptab.sh | 10
-# ncurses/tinfo/access.c | 43
-# ncurses/tinfo/alloc_entry.c | 55
-# ncurses/tinfo/alloc_ttype.c | 55
-# ncurses/tinfo/captoinfo.c | 212
-# ncurses/tinfo/comp_error.c | 20
-# ncurses/tinfo/comp_expand.c | 19
-# ncurses/tinfo/comp_parse.c | 187
-# ncurses/tinfo/comp_scan.c | 171
-# ncurses/tinfo/db_iterator.c | 431
-# ncurses/tinfo/doalloc.c | 21
-# ncurses/tinfo/entries.c | 11
-# ncurses/tinfo/getenv_num.c | 21
-# ncurses/tinfo/hashed_db.c | 165
-# ncurses/tinfo/home_terminfo.c | 10
-# ncurses/tinfo/lib_acs.c | 9
-# ncurses/tinfo/lib_baudrate.c | 71
-# ncurses/tinfo/lib_cur_term.c | 24
-# ncurses/tinfo/lib_data.c | 15
-# ncurses/tinfo/lib_has_cap.c | 8
-# ncurses/tinfo/lib_napms.c | 12
-# ncurses/tinfo/lib_options.c | 57
-# ncurses/tinfo/lib_print.c | 10
-# ncurses/tinfo/lib_raw.c | 35
-# ncurses/tinfo/lib_setup.c | 178
-# ncurses/tinfo/lib_termcap.c | 51
-# ncurses/tinfo/lib_tgoto.c | 9
-# ncurses/tinfo/lib_ti.c | 16
-# ncurses/tinfo/lib_tparm.c | 86
-# ncurses/tinfo/lib_tputs.c | 92
-# ncurses/tinfo/lib_ttyflags.c | 24
-# ncurses/tinfo/make_hash.c | 52
-# ncurses/tinfo/make_keys.c | 6
-# ncurses/tinfo/name_match.c | 42
-# ncurses/tinfo/parse_entry.c | 40
-# ncurses/tinfo/read_entry.c | 391
-# ncurses/tinfo/read_termcap.c | 89
-# ncurses/tinfo/strings.c | 8
-# ncurses/tinfo/tinfo_driver.c | 261
-# ncurses/tinfo/trim_sgr0.c | 85
-# ncurses/tinfo/write_entry.c | 110
-# ncurses/trace/lib_trace.c | 23
-# ncurses/trace/lib_traceatr.c | 49
-# ncurses/trace/lib_tracebits.c | 24
-# ncurses/trace/lib_tracechr.c | 15
-# ncurses/trace/lib_tracedmp.c | 8
-# ncurses/trace/lib_tracemse.c | 48
-# ncurses/trace/trace_buf.c | 11
-# ncurses/trace/trace_tries.c | 37
-# ncurses/trace/varargs.c | 23
-# ncurses/trace/visbuf.c | 52
-# ncurses/tty/hardscroll.c | 24
-# ncurses/tty/hashmap.c | 8
-# ncurses/tty/lib_mvcur.c | 126
-# ncurses/tty/lib_tstp.c | 57
-# ncurses/tty/lib_twait.c | 66
-# ncurses/tty/lib_vidattr.c | 95
-# ncurses/tty/tty_update.c | 316
-# ncurses/wcwidth.h | 21
-# ncurses/widechar/lib_box_set.c | 6
-# ncurses/widechar/lib_cchar.c | 24
-# ncurses/widechar/lib_erasewchar.c | 8
-# ncurses/widechar/lib_get_wch.c | 9
-# ncurses/widechar/lib_get_wstr.c | 8
-# ncurses/widechar/lib_ins_wch.c | 6
-# ncurses/widechar/lib_inwstr.c | 11
-# ncurses/widechar/lib_slk_wset.c | 30
-# ncurses/widechar/lib_unget_wch.c | 6
-# ncurses/widechar/lib_vid_attr.c | 85
-# ncurses/widechar/lib_wacs.c | 38
-# ncurses/widechar/lib_wunctrl.c | 17
-# ncurses/win32con/gettimeofday.c | 7
-# ncurses/win32con/win_driver.c | 1734
-# panel/Makefile.in | 18
-# panel/p_above.c | 6
-# panel/p_below.c | 6
-# panel/panel.c | 12
-# panel/panel.priv.h | 12
-# progs/Makefile.in | 40
-# progs/capconvert | 24
-# progs/clear.c | 12
-# progs/dump_entry.c | 258
-# progs/dump_entry.h | 19
-# progs/infocmp.c | 492
-# progs/modules | 9
-# progs/progs.priv.h | 27
-# progs/tabs.c | 146
-# progs/tic.c | 890
-# progs/toe.c | 456
-# progs/tput.c | 56
-# progs/transform.c | 16
-# progs/tset.c | 125
-# test/Makefile.in | 19
-# test/README | 52
-# test/aclocal.m4 | 1281
-# test/background.c | 230
-# test/blue.c | 12
-# test/bs.c | 46
-# test/cardfile.c | 30
-# test/chgat.c | 6
-# test/clip_printw.c | 11
-# test/color_set.c | 10
-# test/configure |19108 +++--
-# test/configure.in | 201
-# test/demo_defkey.c | 12
-# test/demo_forms.c | 224
-# test/demo_menus.c | 318
-# test/demo_panels.c | 6
-# test/demo_termcap.c | 758
-# test/demo_terminfo.c | 799
-# test/ditto.c | 10
-# test/dots.c | 24
-# test/dots_mvcur.c | 25
-# test/echochar.c | 4
-# test/edit_field.c | 69
-# test/edit_field.h | 8
-# test/filter.c | 10
-# test/firework.c | 18
-# test/gdc.c | 143
-# test/hanoi.c | 33
-# test/hashtest.c | 6
-# test/inchs.c | 16
-# test/ins_wide.c | 38
-# test/insdelln.c | 10
-# test/inserts.c | 29
-# test/key_names.c | 6
-# test/knight.c | 70
-# test/linedata.h | 6
-# test/make-tar.sh | 13
-# test/modules | 11
-# test/movewindow.c | 227
-# test/ncurses.c | 1197
-# test/newdemo.c | 23
-# test/package/debian/source/format | 2
-# test/package/ncurses-examples.spec | 4
-# test/programs | 9
-# test/railroad.c | 12
-# test/rain.c | 13
-# test/redraw.c | 6
-# test/tclock.c | 14
-# test/test.priv.h | 175
-# test/test_add_wchstr.c | 37
-# test/test_addchstr.c | 31
-# test/test_addstr.c | 29
-# test/test_addwstr.c | 38
-# test/test_getstr.c | 15
-# test/testaddch.c | 16
-# test/testcurs.c | 66
-# test/view.c | 88
-# test/worm.c | 31
-# test/xmas.c | 6
-# 706 files changed, 104950 insertions(+), 63097 deletions(-)
-# ------------------------------------------------------------------------------
-# Please remove the following files before applying this patch.
-# (You can feed this patch to 'sh' to do so.)
-
-rm -f mk-dlls.sh.in
-rm -f ncurses/base/memmove.c
-rm -f ncurses/tinfo/setbuf.c
-rm -f ncurses/tty/tty_display.h
-rm -f ncurses/tty/tty_input.h
-exit
-
-Index: Ada95/aclocal.m4
-Prereq: 1.24
---- ncurses-5.9/Ada95/aclocal.m4 2011-03-31 23:32:36.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/aclocal.m4 2014-12-06 13:38:19.000000000 +0000
-@@ -1,5 +1,5 @@
- dnl***************************************************************************
--dnl Copyright (c) 2010,2011 Free Software Foundation, Inc. *
-+dnl Copyright (c) 2010-2013,2014 Free Software Foundation, Inc. *
- dnl *
- dnl Permission is hereby granted, free of charge, to any person obtaining a *
- dnl copy of this software and associated documentation files (the *
-@@ -28,7 +28,7 @@
- dnl
- dnl Author: Thomas E. Dickey
- dnl
--dnl $Id: aclocal.m4,v 1.24 2011/03/31 23:32:36 tom Exp $
-+dnl $Id: aclocal.m4,v 1.93 2014/12/06 13:38:19 tom Exp $
- dnl Macros used in NCURSES Ada95 auto-configuration script.
- dnl
- dnl These macros are maintained separately from NCURSES. The copyright on
-@@ -39,7 +39,33 @@
- dnl
- dnl ---------------------------------------------------------------------------
- dnl ---------------------------------------------------------------------------
--dnl CF_ADA_INCLUDE_DIRS version: 6 updated: 2010/02/26 19:52:07
-+dnl CF_ACVERSION_CHECK version: 5 updated: 2014/06/04 19:11:49
-+dnl ------------------
-+dnl Conditionally generate script according to whether we're using a given autoconf.
-+dnl
-+dnl $1 = version to compare against
-+dnl $2 = code to use if AC_ACVERSION is at least as high as $1.
-+dnl $3 = code to use if AC_ACVERSION is older than $1.
-+define([CF_ACVERSION_CHECK],
-+[
-+ifdef([AC_ACVERSION], ,[ifdef([AC_AUTOCONF_VERSION],[m4_copy([AC_AUTOCONF_VERSION],[AC_ACVERSION])],[m4_copy([m4_PACKAGE_VERSION],[AC_ACVERSION])])])dnl
-+ifdef([m4_version_compare],
-+[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])],
-+[CF_ACVERSION_COMPARE(
-+AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])),
-+AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_ACVERSION_COMPARE version: 3 updated: 2012/10/03 18:39:53
-+dnl --------------------
-+dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1,
-+dnl MAJOR2, MINOR2, TERNARY2,
-+dnl PRINTABLE2, not FOUND, FOUND)
-+define([CF_ACVERSION_COMPARE],
-+[ifelse(builtin([eval], [$2 < $5]), 1,
-+[ifelse([$8], , ,[$8])],
-+[ifelse([$9], , ,[$9])])])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_ADA_INCLUDE_DIRS version: 8 updated: 2013/10/14 04:24:07
- dnl -------------------
- dnl Construct the list of include-options for the C programs in the Ada95
- dnl binding.
-@@ -53,7 +79,7 @@
- ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
- elif test "$includedir" != "/usr/include"; then
- if test "$includedir" = '${prefix}/include' ; then
-- if test $prefix != /usr ; then
-+ if test x$prefix != x/usr ; then
- ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
- fi
- else
-@@ -71,7 +97,7 @@
- AC_SUBST(ADAFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_CFLAGS version: 10 updated: 2010/05/26 05:38:42
-+dnl CF_ADD_CFLAGS version: 11 updated: 2014/07/22 05:32:57
- dnl -------------
- dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
- dnl The second parameter if given makes this macro verbose.
-@@ -96,7 +122,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -133,7 +159,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -260,15 +286,33 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_LIBS version: 1 updated: 2010/06/02 05:03:05
-+dnl CF_ADD_LIBS version: 2 updated: 2014/07/13 14:33:27
- dnl -----------
--dnl Add one or more libraries, used to enforce consistency.
-+dnl Add one or more libraries, used to enforce consistency. Libraries are
-+dnl prepended to an existing list, since their dependencies are assumed to
-+dnl already exist in the list.
- dnl
- dnl $1 = libraries to add, with the "-l", etc.
- dnl $2 = variable to update (default $LIBS)
--AC_DEFUN([CF_ADD_LIBS],[ifelse($2,,LIBS,[$2])="$1 [$]ifelse($2,,LIBS,[$2])"])dnl
-+AC_DEFUN([CF_ADD_LIBS],[
-+cf_add_libs="$1"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in [$]ifelse($2,,LIBS,[$2])
-+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_libs $cf_add_1lib"
-+done
-+ifelse($2,,LIBS,[$2])="$cf_add_libs"
-+])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_SUBDIR_PATH version: 3 updated: 2010/07/03 20:58:12
-+dnl CF_ADD_SUBDIR_PATH version: 4 updated: 2013/10/08 17:47:05
- dnl ------------------
- dnl Append to a search-list for a nonstandard header/lib-file
- dnl $1 = the variable to return as result
-@@ -278,9 +322,9 @@
- dnl $5 = a directory that we do not want $4 to match
- AC_DEFUN([CF_ADD_SUBDIR_PATH],
- [
--test "$4" != "$5" && \
-+test "x$4" != "x$5" && \
- test -d "$4" && \
--ifelse([$5],NONE,,[(test $5 = NONE || test "$4" != "$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"
-@@ -290,75 +334,34 @@
- }
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ANSI_CC_CHECK version: 10 updated: 2010/10/23 15:52:32
--dnl ----------------
--dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES'
--dnl in the sharutils 4.2 distribution.
--AC_DEFUN([CF_ANSI_CC_CHECK],
--[
--AC_CACHE_CHECK(for ${CC:-cc} option to accept ANSI C, cf_cv_ansi_cc,[
--cf_cv_ansi_cc=no
--cf_save_CFLAGS="$CFLAGS"
--cf_save_CPPFLAGS="$CPPFLAGS"
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX -Aa -D_HPUX_SOURCE
--# SVR4 -Xc
--# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes)
--for cf_arg in "-DCC_HAS_PROTOS" \
-- "" \
-- -qlanglvl=ansi \
-- -std1 \
-- -Ae \
-- "-Aa -D_HPUX_SOURCE" \
-- -Xc
--do
-- CF_ADD_CFLAGS($cf_arg)
-- AC_TRY_COMPILE(
--[
--#ifndef CC_HAS_PROTOS
--#if !defined(__STDC__) || (__STDC__ != 1)
--choke me
--#endif
--#endif
--],[
-- int test (int i, double x);
-- struct s1 {int (*f) (int a);};
-- struct s2 {int (*f) (double a);};],
-- [cf_cv_ansi_cc="$cf_arg"; break])
--done
--CFLAGS="$cf_save_CFLAGS"
--CPPFLAGS="$cf_save_CPPFLAGS"
--])
--
--if test "$cf_cv_ansi_cc" != "no"; then
--if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
-- CF_ADD_CFLAGS($cf_cv_ansi_cc)
--else
-- AC_DEFINE(CC_HAS_PROTOS)
--fi
--fi
--])dnl
-+dnl CF_ARG_DISABLE version: 3 updated: 1999/03/30 17:24:31
-+dnl --------------
-+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_ANSI_CC_REQD version: 4 updated: 2008/03/23 14:48:54
--dnl ---------------
--dnl For programs that must use an ANSI compiler, obtain compiler options that
--dnl will make it recognize prototypes. We'll do preprocessor checks in other
--dnl macros, since tools such as unproto can fake prototypes, but only part of
--dnl the preprocessor.
--AC_DEFUN([CF_ANSI_CC_REQD],
--[AC_REQUIRE([CF_ANSI_CC_CHECK])
--if test "$cf_cv_ansi_cc" = "no"; then
-- AC_MSG_ERROR(
--[Your compiler does not appear to recognize prototypes.
--You have the following choices:
-- a. adjust your compiler options
-- b. get an up-to-date compiler
-- c. use a wrapper such as unproto])
--fi
-+dnl CF_ARG_OPTION version: 4 updated: 2010/05/26 05:38:42
-+dnl -------------
-+dnl Restricted form of AC_ARG_ENABLE that ensures user doesn't give bogus
-+dnl values.
-+dnl
-+dnl Parameters:
-+dnl $1 = option name
-+dnl $2 = help-string
-+dnl $3 = action to perform if option is not default
-+dnl $4 = action if perform if option is default
-+dnl $5 = default option value (either 'yes' or 'no')
-+AC_DEFUN([CF_ARG_OPTION],
-+[AC_ARG_ENABLE([$1],[$2],[test "$enableval" != ifelse([$5],no,yes,no) && enableval=ifelse([$5],no,no,yes)
-+ if test "$enableval" != "$5" ; then
-+ifelse([$3],,[ :]dnl
-+,[ $3]) ifelse([$4],,,[
-+ else
-+ $4])
-+ fi],[enableval=$5 ifelse([$4],,,[
-+ $4
- ])dnl
-+ ])])dnl
- dnl ---------------------------------------------------------------------------
- dnl CF_AR_FLAGS version: 5 updated: 2010/05/20 20:24:29
- dnl -----------
-@@ -413,7 +416,7 @@
- AC_SUBST(ARFLAGS)
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_BUILD_CC version: 6 updated: 2006/10/14 15:23:15
-+dnl CF_BUILD_CC version: 7 updated: 2012/10/06 15:31:55
- 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
-@@ -423,7 +426,8 @@
- dnl $1 = default for $CPPFLAGS
- dnl $2 = default for $LIBS
- AC_DEFUN([CF_BUILD_CC],[
--AC_REQUIRE([CF_PROG_EXT])
-+CF_ACVERSION_CHECK(2.52,,
-+ [AC_REQUIRE([CF_PROG_EXT])])
- if test "$cross_compiling" = yes ; then
-
- # defaults that we might want to override
-@@ -504,7 +508,33 @@
- AC_SUBST(BUILD_OBJEXT)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CFG_DEFAULTS version: 7 updated: 2005/09/24 16:15:00
-+dnl CF_CC_ENV_FLAGS version: 1 updated: 2012/10/03 05:25:49
-+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 with
-+dnl options, but eliminates a more common category of user confusion.
-+AC_DEFUN([CF_CC_ENV_FLAGS],
-+[
-+# This should have been defined by AC_PROG_CC
-+: ${CC:=cc}
-+
-+AC_MSG_CHECKING(\$CC variable)
-+case "$CC" in #(vi
-+*[[\ \ ]]-[[IUD]]*)
-+ AC_MSG_RESULT(broken)
-+ AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options)
-+ # humor him...
-+ cf_flags=`echo "$CC" | sed -e 's/^[[^ ]]*[[ ]]//'`
-+ CC=`echo "$CC" | sed -e 's/[[ ]].*//'`
-+ CF_ADD_CFLAGS($cf_flags)
-+ ;;
-+*)
-+ AC_MSG_RESULT(ok)
-+ ;;
-+esac
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_CFG_DEFAULTS version: 10 updated: 2013/09/07 13:54: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
-@@ -522,7 +552,7 @@
- if test "x$prefix" = "xNONE" ; then
- case "$cf_cv_system_name" in
- # non-vendor systems don't have a conflict
-- openbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu)
-+ openbsd*|freebsd*|mirbsd*|linux*|cygwin*|msys*|k*bsd*-gnu|mingw*)
- prefix=/usr
- ;;
- *) prefix=$ac_default_prefix
-@@ -558,7 +588,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59
-+dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03
- 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.
-@@ -581,7 +611,7 @@
- system_name="`(hostname) 2>/dev/null`"
- fi
- fi
--test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name")
-+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name",[Define to the system name.])
- AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"])
-
- test -z "$system_name" && system_name="$cf_cv_system_name"
-@@ -593,7 +623,40 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CURSES_HEADER version: 2 updated: 2010/04/28 06:02:16
-+dnl CF_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35
-+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
-+dnl not ignore some gcc options.
-+dnl
-+dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to
-+dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from
-+dnl the wrappers for gcc and g++ warnings.
-+dnl
-+dnl $1 = GCC (default) or GXX
-+dnl $2 = CLANG_COMPILER (default)
-+dnl $3 = CFLAGS (default) or CXXFLAGS
-+AC_DEFUN([CF_CLANG_COMPILER],[
-+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
-+])
-+dnl ---------------------------------------------------------------------------
-+dnl CF_CURSES_HEADER version: 3 updated: 2011/05/01 19:47:45
- dnl ----------------
- dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common
- dnl variations of ncurses' installs.
-@@ -603,10 +666,10 @@
- AC_CACHE_CHECK(if we have identified curses headers,cf_cv_ncurses_header,[
- cf_cv_ncurses_header=none
- for cf_header in ifelse($1,,,[ \
-- $1/curses.h \
-- $1/ncurses.h]) \
-- curses.h \
-- ncurses.h ifelse($1,,[ncurses/curses.h ncurses/ncurses.h])
-+ $1/ncurses.h \
-+ $1/curses.h]) \
-+ ncurses.h \
-+ curses.h ifelse($1,,[ncurses/ncurses.h ncurses/curses.h])
- do
- AC_TRY_COMPILE([#include <${cf_header}>],
- [initscr(); tgoto("?", 0,0)],
-@@ -627,6 +690,78 @@
- dnl "dirname" is not portable, so we fake it with a shell script.
- AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_DISABLE_ECHO version: 12 updated: 2012/10/06 16:30:28
-+dnl ---------------
-+dnl You can always use "make -n" to see the actual options, but it's hard to
-+dnl pick out/analyze warning messages when the compile-line is long.
-+dnl
-+dnl Sets:
-+dnl ECHO_LT - symbol to control if libtool is verbose
-+dnl ECHO_LD - symbol to prefix "cc -o" lines
-+dnl RULE_CC - symbol to put before implicit "cc -c" lines (e.g., .c.o)
-+dnl SHOW_CC - symbol to put before explicit "cc -c" lines
-+dnl ECHO_CC - symbol to put before any "cc" line
-+dnl
-+AC_DEFUN([CF_DISABLE_ECHO],[
-+AC_MSG_CHECKING(if you want to see long compiling messages)
-+CF_ARG_DISABLE(echo,
-+ [ --disable-echo do not display "compiling" commands],
-+ [
-+ ECHO_LT='--silent'
-+ ECHO_LD='@echo linking [$]@;'
-+ RULE_CC='@echo compiling [$]<'
-+ SHOW_CC='@echo compiling [$]@'
-+ ECHO_CC='@'
-+],[
-+ ECHO_LT=''
-+ ECHO_LD=''
-+ RULE_CC=''
-+ SHOW_CC=''
-+ ECHO_CC=''
-+])
-+AC_MSG_RESULT($enableval)
-+AC_SUBST(ECHO_LT)
-+AC_SUBST(ECHO_LD)
-+AC_SUBST(RULE_CC)
-+AC_SUBST(SHOW_CC)
-+AC_SUBST(ECHO_CC)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_DISABLE_GNAT_PROJECTS version: 1 updated: 2014/06/01 11:34:00
-+dnl ------------------------
-+AC_DEFUN([CF_DISABLE_GNAT_PROJECTS],[
-+AC_MSG_CHECKING(if we want to use GNAT projects)
-+CF_ARG_DISABLE(gnat-projects,
-+ [ --disable-gnat-projects test: disable GNAT projects even if usable],
-+ [enable_gnat_projects=no],
-+ [enable_gnat_projects=yes])
-+AC_MSG_RESULT($enable_gnat_projects)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_ENABLE_PC_FILES version: 9 updated: 2012/08/04 13:59:54
-+dnl ------------------
-+dnl This is the "--enable-pc-files" option, which is available if there is a
-+dnl pkg-config configuration on the local machine.
-+AC_DEFUN([CF_ENABLE_PC_FILES],[
-+AC_REQUIRE([CF_PKG_CONFIG])
-+AC_REQUIRE([CF_WITH_PKG_CONFIG_LIBDIR])
-+
-+if test "$PKG_CONFIG" != none ; then
-+ AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG)
-+ AC_ARG_ENABLE(pc-files,
-+ [ --enable-pc-files generate and install .pc files for pkg-config],
-+ [enable_pc_files=$enableval],
-+ [enable_pc_files=no])
-+ AC_MSG_RESULT($enable_pc_files)
-+ if test "$enable_pc_files" != no
-+ then
-+ CF_PATH_SYNTAX(PKG_CONFIG_LIBDIR)
-+ fi
-+else
-+ enable_pc_files=no
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_FIND_LIBRARY version: 9 updated: 2008/03/23 14:48:54
- dnl ---------------
- dnl Look for a non-standard library, given parameters for AC_TRY_LINK. We
-@@ -807,7 +942,26 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GCC_ATTRIBUTES version: 14 updated: 2010/10/23 15:52:32
-+dnl CF_FIXUP_ADAFLAGS version: 1 updated: 2012/03/31 18:48:10
-+dnl -----------------
-+dnl make ADAFLAGS consistent with CFLAGS
-+AC_DEFUN([CF_FIXUP_ADAFLAGS],[
-+ AC_MSG_CHECKING(optimization options for ADAFLAGS)
-+ case "$CFLAGS" in
-+ *-g*)
-+ CF_ADD_ADAFLAGS(-g)
-+ ;;
-+ esac
-+ case "$CFLAGS" in
-+ *-O*)
-+ cf_O_flag=`echo "$CFLAGS" |sed -e 's/^.*-O/-O/' -e 's/[[ ]].*//'`
-+ CF_ADD_ADAFLAGS($cf_O_flag)
-+ ;;
-+ esac
-+ AC_MSG_RESULT($ADAFLAGS)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_GCC_ATTRIBUTES version: 16 updated: 2012/10/02 20:55:03
- dnl -----------------
- dnl Test for availability of useful gcc __attribute__ directives to quiet
- dnl compiler warnings. Though useful, not all are supported -- and contrary
-@@ -885,27 +1039,27 @@
- test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
- cat conftest.h >>confdefs.h
- case $cf_attribute in #(vi
-+ noreturn) #(vi
-+ AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc])
-+ ;;
- printf) #(vi
-- if test "$cf_printf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
--EOF
-+ cf_value='/* nothing */'
-+ if test "$cf_printf_attribute" != no ; then
-+ cf_value='__attribute__((format(printf,fmt,var)))'
-+ AC_DEFINE(GCC_PRINTF,1,[Define to 1 if the compiler supports gcc-like printf attribute.])
- fi
-+ AC_DEFINE_UNQUOTED(GCC_PRINTFLIKE(fmt,var),$cf_value,[Define to printf-attribute for gcc])
- ;;
- scanf) #(vi
-- if test "$cf_scanf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
--EOF
-+ cf_value='/* nothing */'
-+ if test "$cf_scanf_attribute" != no ; then
-+ cf_value='__attribute__((format(scanf,fmt,var)))'
-+ AC_DEFINE(GCC_SCANF,1,[Define to 1 if the compiler supports gcc-like scanf attribute.])
- fi
-+ AC_DEFINE_UNQUOTED(GCC_SCANFLIKE(fmt,var),$cf_value,[Define to sscanf-attribute for gcc])
-+ ;;
-+ unused) #(vi
-+ AC_DEFINE_UNQUOTED(GCC_UNUSED,$cf_directive,[Define to unused-attribute for gcc])
- ;;
- esac
- fi
-@@ -917,7 +1071,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GCC_VERSION version: 5 updated: 2010/04/24 11:02:31
-+dnl CF_GCC_VERSION version: 7 updated: 2012/10/18 06:46:33
- dnl --------------
- dnl Find version of gcc
- AC_DEFUN([CF_GCC_VERSION],[
-@@ -925,13 +1079,13 @@
- GCC_VERSION=none
- if test "$GCC" = yes ; then
- AC_MSG_CHECKING(version of $CC)
-- GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
-+ 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
- AC_MSG_RESULT($GCC_VERSION)
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GCC_WARNINGS version: 27 updated: 2010/10/23 15:52:32
-+dnl CF_GCC_WARNINGS version: 31 updated: 2013/11/19 19:23:35
- 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:
-@@ -954,6 +1108,7 @@
- [
- AC_REQUIRE([CF_GCC_VERSION])
- CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
-+CF_CLANG_COMPILER(GCC,CLANG_COMPILER,CFLAGS)
-
- cat > conftest.$ac_ext <<EOF
- #line __oline__ "${as_me:-configure}"
-@@ -1002,10 +1157,14 @@
- EXTRA_CFLAGS=
- cf_warn_CONST=""
- test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
-+ cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs"
-+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings=
- for cf_opt in W Wall \
- Wbad-function-cast \
- Wcast-align \
- Wcast-qual \
-+ Wdeclaration-after-statement \
-+ Wextra \
- Winline \
- Wmissing-declarations \
- Wmissing-prototypes \
-@@ -1013,7 +1172,7 @@
- Wpointer-arith \
- Wshadow \
- Wstrict-prototypes \
-- Wundef $cf_warn_CONST $1
-+ Wundef $cf_gcc_warnings $cf_warn_CONST $1
- do
- CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
- if AC_TRY_EVAL(ac_compile); then
-@@ -1029,6 +1188,13 @@
- continue;;
- esac
- ;;
-+ Wpointer-arith) #(vi
-+ case $GCC_VERSION in
-+ [[12]].*)
-+ CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
-+ continue;;
-+ esac
-+ ;;
- esac
- EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
- fi
-@@ -1040,6 +1206,17 @@
- AC_SUBST(EXTRA_CFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_GNATPREP_OPT_T version: 1 updated: 2014/08/02 18:37:25
-+dnl -----------------
-+AC_DEFUN([CF_GNATPREP_OPT_T],[
-+AC_CACHE_CHECK(if GNATPREP supports -T option,cf_cv_gnatprep_opt_t,[
-+cf_cv_gnatprep_opt_t=no
-+gnatprep -T 2>/dev/null >/dev/null && cf_cv_gnatprep_opt_t=yes
-+])
-+test "$cf_cv_gnatprep_opt_t" = yes && GNATPREP_OPTS="-T $GNATPREP_OPTS"
-+AC_SUBST(GNATPREP_OPTS)
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_GNAT_GENERICS version: 2 updated: 2011/03/23 20:24:41
- dnl ----------------
- AC_DEFUN([CF_GNAT_GENERICS],
-@@ -1070,100 +1247,26 @@
- AC_SUBST(cf_generic_objects)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GNAT_SIGINT version: 1 updated: 2011/03/27 20:07:59
--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
--dnl fail at runtime.
--AC_DEFUN([CF_GNAT_SIGINT],[
--AC_CACHE_CHECK(if GNAT supports SIGINT,cf_cv_gnat_sigint,[
--CF_GNAT_TRY_LINK([with Ada.Interrupts.Names;
--
--package ConfTest is
--
-- pragma Warnings (Off); -- the next pragma exists since 3.11p
-- pragma Unreserve_All_Interrupts;
-- pragma Warnings (On);
--
-- protected Process is
-- procedure Stop;
-- function Continue return Boolean;
-- pragma Attach_Handler (Stop, Ada.Interrupts.Names.SIGINT);
-- private
-- Done : Boolean := False;
-- end Process;
--
--end ConfTest;],
--[package body ConfTest is
-- protected body Process is
-- procedure Stop is
-- begin
-- Done := True;
-- end Stop;
-- function Continue return Boolean is
-- begin
-- return not Done;
-- end Continue;
-- end Process;
--end ConfTest;],
-- [cf_cv_gnat_sigint=yes],
-- [cf_cv_gnat_sigint=no])])
--
--if test $cf_cv_gnat_sigint = yes ; then
-- USE_GNAT_SIGINT=""
--else
-- USE_GNAT_SIGINT="#"
--fi
--AC_SUBST(USE_GNAT_SIGINT)
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_GNAT_PRAGMA_UNREF version: 1 updated: 2010/06/19 15:22:18
--dnl --------------------
--dnl Check if the gnat pragma "Unreferenced" works.
--AC_DEFUN([CF_GNAT_PRAGMA_UNREF],[
--AC_CACHE_CHECK(if GNAT pragma Unreferenced works,cf_cv_pragma_unreferenced,[
--CF_GNAT_TRY_LINK([procedure conftest;],
--[with Text_IO;
--with GNAT.OS_Lib;
--procedure conftest is
-- test : Integer;
-- pragma Unreferenced (test);
--begin
-- test := 1;
-- Text_IO.Put ("Hello World");
-- Text_IO.New_Line;
-- GNAT.OS_Lib.OS_Exit (0);
--end conftest;],
-- [cf_cv_pragma_unreferenced=yes],
-- [cf_cv_pragma_unreferenced=no])])
--
--# if the pragma is supported, use it (needed in the Trace code).
--if test $cf_cv_pragma_unreferenced = yes ; then
-- PRAGMA_UNREF=TRUE
--else
-- PRAGMA_UNREF=FALSE
--fi
--AC_SUBST(PRAGMA_UNREF)
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_GNAT_PROJECTS version: 2 updated: 2011/03/23 20:24:41
-+dnl CF_GNAT_PROJECTS version: 7 updated: 2014/06/01 10:46:34
- dnl ----------------
- dnl GNAT projects are configured with ".gpr" project files.
- dnl GNAT libraries are a further development, using the project feature.
- AC_DEFUN([CF_GNAT_PROJECTS],
- [
- AC_REQUIRE([CF_GNAT_VERSION])
-+AC_REQUIRE([CF_DISABLE_GNAT_PROJECTS])
-
- cf_gnat_libraries=no
- cf_gnat_projects=no
-
-+if test "$enable_gnat_projects" != no ; then
- AC_MSG_CHECKING(if GNAT supports project files)
- case $cf_gnat_version in #(vi
- 3.[[0-9]]*) #(vi
- ;;
- *)
- case $cf_cv_system_name in #(vi
-- cygwin*) #(vi
-+ cygwin*|msys*) #(vi
- ;;
- *)
- mkdir conftest.src conftest.bin conftest.lib
-@@ -1180,14 +1283,6 @@
- for Library_Dir use External("BUILD_DIR");
- Source_Dir := External ("SOURCE_DIR");
- for Source_Dirs use (Source_Dir);
-- package Compiler is
-- for Default_Switches ("Ada") use
-- ("-g",
-- "-O2",
-- "-gnatafno",
-- "-gnatVa", -- All validity checks
-- "-gnatwa"); -- Activate all optional errors
-- end Compiler;
- end Library;
- CF_EOF
- cat >>confpackage.ads <<CF_EOF
-@@ -1225,6 +1320,7 @@
- ;;
- esac
- AC_MSG_RESULT($cf_gnat_projects)
-+fi # enable_gnat_projects
-
- if test $cf_gnat_projects = yes
- then
-@@ -1253,6 +1349,53 @@
- AC_SUBST(USE_GNAT_LIBRARIES)
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_GNAT_SIGINT version: 1 updated: 2011/03/27 20:07:59
-+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
-+dnl fail at runtime.
-+AC_DEFUN([CF_GNAT_SIGINT],[
-+AC_CACHE_CHECK(if GNAT supports SIGINT,cf_cv_gnat_sigint,[
-+CF_GNAT_TRY_LINK([with Ada.Interrupts.Names;
-+
-+package ConfTest is
-+
-+ pragma Warnings (Off); -- the next pragma exists since 3.11p
-+ pragma Unreserve_All_Interrupts;
-+ pragma Warnings (On);
-+
-+ protected Process is
-+ procedure Stop;
-+ function Continue return Boolean;
-+ pragma Attach_Handler (Stop, Ada.Interrupts.Names.SIGINT);
-+ private
-+ Done : Boolean := False;
-+ end Process;
-+
-+end ConfTest;],
-+[package body ConfTest is
-+ protected body Process is
-+ procedure Stop is
-+ begin
-+ Done := True;
-+ end Stop;
-+ function Continue return Boolean is
-+ begin
-+ return not Done;
-+ end Continue;
-+ end Process;
-+end ConfTest;],
-+ [cf_cv_gnat_sigint=yes],
-+ [cf_cv_gnat_sigint=no])])
-+
-+if test $cf_cv_gnat_sigint = yes ; then
-+ USE_GNAT_SIGINT=""
-+else
-+ USE_GNAT_SIGINT="#"
-+fi
-+AC_SUBST(USE_GNAT_SIGINT)
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_GNAT_TRY_LINK version: 3 updated: 2011/03/19 14:47:45
- dnl ----------------
- dnl Verify that a test program compiles/links with GNAT.
-@@ -1311,7 +1454,7 @@
- rm -rf conftest* *~conftest*
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GNAT_VERSION version: 17 updated: 2011/03/23 20:24:41
-+dnl CF_GNAT_VERSION version: 18 updated: 2012/01/21 19:28:10
- dnl ---------------
- dnl Verify version of GNAT.
- AC_DEFUN([CF_GNAT_VERSION],
-@@ -1323,7 +1466,7 @@
- AC_MSG_RESULT($cf_gnat_version)
-
- case $cf_gnat_version in #(vi
--3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*) #(vi
-+3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*|20[[0-9]][[0-9]]) #(vi
- cf_cv_prog_gnat_correct=yes
- ;;
- *)
-@@ -1416,33 +1559,24 @@
- [AC_DIVERT_HELP([$1])dnl
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_INCLUDE_DIRS version: 6 updated: 2009/01/06 19:37:40
-+dnl CF_INCLUDE_DIRS version: 10 updated: 2014/09/19 20:58:42
- dnl ---------------
- dnl Construct the list of include-options according to whether we're building
--dnl in the source directory or using '--srcdir=DIR' option. If we're building
--dnl with gcc, don't append the includedir if it happens to be /usr/include,
--dnl since that usually breaks gcc's shadow-includes.
-+dnl in the source directory or using '--srcdir=DIR' option.
- AC_DEFUN([CF_INCLUDE_DIRS],
- [
--CPPFLAGS="$CPPFLAGS -I. -I../include"
- if test "$srcdir" != "."; then
-- CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include"
-+ CPPFLAGS="-I\${srcdir}/../include $CPPFLAGS"
- fi
--if test "$GCC" != yes; then
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
--elif test "$includedir" != "/usr/include"; then
-- if test "$includedir" = '${prefix}/include' ; then
-- if test $prefix != /usr ; then
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
-- fi
-- else
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
-- fi
-+CPPFLAGS="-I../include $CPPFLAGS"
-+if test "$srcdir" != "."; then
-+ CPPFLAGS="-I\${srcdir} $CPPFLAGS"
- fi
-+CPPFLAGS="-I. $CPPFLAGS"
- AC_SUBST(CPPFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_INTEL_COMPILER version: 4 updated: 2010/05/26 05:38:42
-+dnl CF_INTEL_COMPILER version: 6 updated: 2014/03/17 13:13:07
- 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
-@@ -1456,6 +1590,7 @@
- dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS
- dnl $3 = CFLAGS (default) or CXXFLAGS
- AC_DEFUN([CF_INTEL_COMPILER],[
-+AC_REQUIRE([AC_CANONICAL_HOST])
- ifelse([$2],,INTEL_COMPILER,[$2])=no
-
- if test "$ifelse([$1],,[$1],GCC)" = yes ; then
-@@ -1470,7 +1605,7 @@
- make an error
- #endif
- ],[ifelse([$2],,INTEL_COMPILER,[$2])=yes
--cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
-+cf_save_CFLAGS="$cf_save_CFLAGS -we147"
- ],[])
- ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS"
- AC_MSG_RESULT($ifelse([$2],,INTEL_COMPILER,[$2]))
-@@ -1479,7 +1614,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_LARGEFILE version: 7 updated: 2007/06/02 11:58:50
-+dnl CF_LARGEFILE version: 8 updated: 2012/10/06 08:57:51
- dnl ------------
- dnl Add checks for large file support.
- AC_DEFUN([CF_LARGEFILE],[
-@@ -1513,12 +1648,12 @@
- [cf_cv_struct_dirent64=yes],
- [cf_cv_struct_dirent64=no])
- ])
-- test "$cf_cv_struct_dirent64" = yes && AC_DEFINE(HAVE_STRUCT_DIRENT64)
-+ test "$cf_cv_struct_dirent64" = yes && AC_DEFINE(HAVE_STRUCT_DIRENT64,1,[Define to 1 if we have struct dirent64])
- fi
- ])
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_LD_RPATH_OPT version: 3 updated: 2010/06/02 05:03:05
-+dnl CF_LD_RPATH_OPT version: 5 updated: 2011/07/17 14:48:41
- dnl ---------------
- dnl For the given system and compiler, find the compiler flags to pass to the
- dnl loader to use the "rpath" feature.
-@@ -1539,10 +1674,10 @@
- linux*|gnu*|k*bsd*-gnu) #(vi
- LD_RPATH_OPT="-Wl,-rpath,"
- ;;
--openbsd[[2-9]].*) #(vi
-+openbsd[[2-9]].*|mirbsd*) #(vi
- LD_RPATH_OPT="-Wl,-rpath,"
- ;;
--freebsd*) #(vi
-+dragonfly*|freebsd*) #(vi
- LD_RPATH_OPT="-rpath "
- ;;
- netbsd*) #(vi
-@@ -1601,11 +1736,11 @@
- $1="$cf_library_path_list [$]$1"
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_LIB_PREFIX version: 8 updated: 2008/09/13 11:34:16
-+dnl CF_LIB_PREFIX version: 9 updated: 2012/01/21 19:28:10
- dnl -------------
- dnl Compute the library-prefix for the given host system
- dnl $1 = variable to set
--AC_DEFUN([CF_LIB_PREFIX],
-+define([CF_LIB_PREFIX],
- [
- case $cf_cv_system_name in #(vi
- OS/2*|os2*) #(vi
-@@ -1618,44 +1753,7 @@
- AC_SUBST(LIB_PREFIX)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_LIB_SONAME version: 5 updated: 2010/08/14 18:25:37
--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
--dnl variable to "unknown".
--dnl
--dnl $1 = headers
--dnl $2 = code
--dnl $3 = library name
--AC_DEFUN([CF_LIB_SONAME],
--[
--AC_CACHE_CHECK(for soname of $3 library,cf_cv_$3_soname,[
--
--cf_cv_$3_soname=unknown
--if test "$cross_compiling" != yes ; then
--cat >conftest.$ac_ext <<CF_EOF
--$1
--int main()
--{
--$2
-- ${cf_cv_main_return:-return}(0);
--}
--CF_EOF
--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.`
-- test -z "$cf_cv_$3_soname" && cf_cv_$3_soname=unknown
-- fi
-- fi
--rm -rf conftest*
--LIBS="$cf_save_LIBS"
--fi
--])
--])
--dnl ---------------------------------------------------------------------------
--dnl CF_LIB_SUFFIX version: 16 updated: 2008/12/27 12:30:03
-+dnl CF_LIB_SUFFIX version: 23 updated: 2014/06/21 17:47:12
- dnl -------------
- dnl Compute the library file-suffix from the given model name
- dnl $1 = model name
-@@ -1664,31 +1762,26 @@
- dnl The variable $LIB_SUFFIX, if set, prepends the variable to set.
- AC_DEFUN([CF_LIB_SUFFIX],
- [
-- AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
-- case $1 in #(vi
-- libtool) #(vi
-+ case X$1 in #(vi
-+ Xlibtool) #(vi
- $2='.la'
- $3=[$]$2
- ;;
-- normal) #(vi
-- $2='.a'
-- $3=[$]$2
-- ;;
-- debug) #(vi
-+ Xdebug) #(vi
- $2='_g.a'
- $3=[$]$2
- ;;
-- profile) #(vi
-+ Xprofile) #(vi
- $2='_p.a'
- $3=[$]$2
- ;;
-- shared) #(vi
-+ Xshared) #(vi
- case $cf_cv_system_name in
-- aix[[56]]*) #(vi
-- $2='.a'
-+ aix[[5-7]]*) #(vi
-+ $2='.so'
- $3=[$]$2
- ;;
-- cygwin*) #(vi
-+ cygwin*|msys*|mingw*) #(vi
- $2='.dll'
- $3='.dll.a'
- ;;
-@@ -1708,10 +1801,16 @@
- ;;
- esac
- ;;
-- *) $2='.so'
-+ *) #(vi
-+ $2='.so'
- $3=[$]$2
- ;;
- esac
-+ ;;
-+ *)
-+ $2='.a'
-+ $3=[$]$2
-+ ;;
- esac
- test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
- test -n "$LIB_SUFFIX" && $3="${LIB_SUFFIX}[$]{$3}"
-@@ -1735,7 +1834,7 @@
- test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_LINK_DATAONLY version: 9 updated: 2009/01/01 20:21:38
-+dnl CF_LINK_DATAONLY version: 10 updated: 2012/10/06 17:41:51
- dnl ----------------
- dnl Some systems have a non-ANSI linker that doesn't pull in modules that have
- dnl only data (i.e., no functions), for example NeXT. On those systems we'll
-@@ -1792,82 +1891,13 @@
- AC_MSG_RESULT($cf_cv_link_dataonly)
-
- if test "$cf_cv_link_dataonly" = no ; then
-- AC_DEFINE(BROKEN_LINKER)
-+ AC_DEFINE(BROKEN_LINKER,1,[if data-only library module does not link])
- BROKEN_LINKER=1
- fi
-
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_LINK_FUNCS version: 7 updated: 2006/12/16 12:33:30
--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).
--AC_DEFUN([CF_LINK_FUNCS],
--[
--AC_CHECK_FUNCS( \
-- remove \
-- unlink )
--
--if test "$cross_compiling" = yes ; then
-- AC_CHECK_FUNCS( \
-- link \
-- symlink )
--else
-- AC_CACHE_CHECK(if link/symlink functions work,cf_cv_link_funcs,[
-- cf_cv_link_funcs=
-- for cf_func in link symlink ; do
-- AC_TRY_RUN([
--#include <sys/types.h>
--#include <sys/stat.h>
--#ifdef HAVE_UNISTD_H
--#include <unistd.h>
--#endif
--int main()
--{
-- int fail = 0;
-- char *src = "config.log";
-- 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);
--#ifdef HAVE_UNLINK
-- unlink(dst);
--#else
-- remove(dst);
--#endif
-- ${cf_cv_main_return:-return} (fail);
--}
-- ],[
-- cf_cv_link_funcs="$cf_cv_link_funcs $cf_func"
-- eval 'ac_cv_func_'$cf_func'=yes'],[
-- eval 'ac_cv_func_'$cf_func'=no'],[
-- eval 'ac_cv_func_'$cf_func'=error'])
-- done
-- test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no
-- ])
-- test "$ac_cv_func_link" = yes && AC_DEFINE(HAVE_LINK)
-- test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK)
--fi
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_MAIN_RETURN version: 1 updated: 2006/12/10 09:51:54
--dnl --------------
--dnl Check if a return from main to the shell actually returns the same exit
--dnl code. This is true for almost any POSIX environment.
--dnl
--dnl Some very old environments did not flush stdout, etc., on an exit. That
--dnl would be a useful case to test for also.
--AC_DEFUN([CF_MAIN_RETURN],
--[
--cf_cv_main_return=return
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_MAKEFLAGS version: 14 updated: 2011/03/31 19:29:46
-+dnl CF_MAKEFLAGS version: 15 updated: 2014/05/10 16:43:23
- 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.
-@@ -1886,7 +1916,7 @@
- CF_EOF
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | fgrep -v "ing directory" | sed -e 's,[[ ]]*$,,'`
- case "$cf_result" in
-- .*k)
-+ .*k|.*kw)
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`
- case "$cf_result" in
- .*CC=*) cf_cv_makeflags=
-@@ -1944,7 +1974,7 @@
- AC_SUBST(MAKE_LOWER_TAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55
-+dnl CF_MIXEDCASE_FILENAMES version: 6 updated: 2013/10/08 17:47:05
- 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.
-@@ -1953,7 +1983,7 @@
- AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
- if test "$cross_compiling" = yes ; then
- case $target_alias in #(vi
-- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
-+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi
- cf_cv_mixedcase=no
- ;;
- *)
-@@ -1971,10 +2001,10 @@
- rm -f conftest CONFTEST
- fi
- ])
--test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES)
-+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: 7 updated: 2010/08/14 18:25:37
-+dnl CF_MKSTEMP version: 9 updated: 2012/10/03 04:34:49
- 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).
-@@ -2016,11 +2046,13 @@
- }
- ],[cf_cv_func_mkstemp=yes
- ],[cf_cv_func_mkstemp=no
--],[AC_CHECK_FUNC(mkstemp)
--])
-+],[cf_cv_func_mkstemp=maybe])
- ])
-+if test "x$cf_cv_func_mkstemp" = xmaybe ; then
-+ AC_CHECK_FUNC(mkstemp)
-+fi
- if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then
-- AC_DEFINE(HAVE_MKSTEMP)
-+ AC_DEFINE(HAVE_MKSTEMP,1,[Define to 1 if mkstemp() is available and working.])
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
-@@ -2141,7 +2173,7 @@
- ,[$1=no])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NCURSES_CONFIG version: 8 updated: 2010/07/08 05:17:30
-+dnl CF_NCURSES_CONFIG version: 10 updated: 2012/10/06 08:57:51
- dnl -----------------
- dnl Tie together the configure-script macros for ncurses.
- dnl Prefer the "-config" script from ncurses 6.x, to simplify analysis.
-@@ -2153,7 +2185,10 @@
- cf_ncuconfig_root=ifelse($1,,ncurses,$1)
-
- echo "Looking for ${cf_ncuconfig_root}-config"
--AC_PATH_PROGS(NCURSES_CONFIG,${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config,none)
-+
-+CF_ACVERSION_CHECK(2.52,
-+ [AC_CHECK_TOOLS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)],
-+ [AC_PATH_PROGS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)])
-
- if test "$NCURSES_CONFIG" != none ; then
-
-@@ -2164,7 +2199,7 @@
- CF_CURSES_HEADER(ifelse($1,,ncurses,$1))
-
- dnl like CF_NCURSES_CPPFLAGS
--AC_DEFINE(NCURSES)
-+AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries])
-
- dnl like CF_NCURSES_LIBS
- CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_ncuconfig_root)
-@@ -2181,7 +2216,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NCURSES_CPPFLAGS version: 20 updated: 2010/11/20 17:02:38
-+dnl CF_NCURSES_CPPFLAGS version: 21 updated: 2012/10/06 08:57:51
- dnl -------------------
- dnl Look for the SVr4 curses clone 'ncurses' in the standard places, adjusting
- dnl the CPPFLAGS variable so we can include its header.
-@@ -2227,12 +2262,12 @@
- CF_TERM_HEADER
-
- # some applications need this, but should check for NCURSES_VERSION
--AC_DEFINE(NCURSES)
-+AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries])
-
- CF_NCURSES_VERSION
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NCURSES_HEADER version: 2 updated: 2008/03/23 14:48:54
-+dnl CF_NCURSES_HEADER version: 3 updated: 2012/10/06 08:57:51
- dnl -----------------
- dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common
- dnl variations of ncurses' installs.
-@@ -2283,16 +2318,16 @@
-
- case $cf_cv_ncurses_header in # (vi
- *ncurses.h)
-- AC_DEFINE(HAVE_NCURSES_H)
-+ AC_DEFINE(HAVE_NCURSES_H,1,[Define to 1 if we have ncurses.h])
- ;;
- esac
-
- case $cf_cv_ncurses_header in # (vi
- ncurses/curses.h|ncurses/ncurses.h)
-- AC_DEFINE(HAVE_NCURSES_NCURSES_H)
-+ AC_DEFINE(HAVE_NCURSES_NCURSES_H,1,[Define to 1 if we have ncurses/ncurses.h])
- ;;
- ncursesw/curses.h|ncursesw/ncurses.h)
-- AC_DEFINE(HAVE_NCURSESW_NCURSES_H)
-+ AC_DEFINE(HAVE_NCURSESW_NCURSES_H,1,[Define to 1 if we have ncursesw/ncurses.h])
- ;;
- esac
-
-@@ -2366,7 +2401,7 @@
- AC_DEFINE_UNQUOTED($cf_nculib_ROOT)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NCURSES_VERSION version: 13 updated: 2010/10/23 15:54:49
-+dnl CF_NCURSES_VERSION version: 14 updated: 2012/10/06 08:57:51
- 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
-@@ -2425,58 +2460,10 @@
- ])
- rm -f $cf_tempfile
- ])
--test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES)
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_NO_LEAKS_OPTION version: 4 updated: 2006/12/16 14:24:05
--dnl ------------------
--dnl see CF_WITH_NO_LEAKS
--AC_DEFUN([CF_NO_LEAKS_OPTION],[
--AC_MSG_CHECKING(if you want to use $1 for testing)
--AC_ARG_WITH($1,
-- [$2],
-- [AC_DEFINE($3)ifelse([$4],,[
-- $4
--])
-- : ${with_cflags:=-g}
-- : ${with_no_leaks:=yes}
-- with_$1=yes],
-- [with_$1=])
--AC_MSG_RESULT(${with_$1:-no})
--
--case .$with_cflags in #(vi
--.*-g*)
-- case .$CFLAGS in #(vi
-- .*-g*) #(vi
-- ;;
-- *)
-- CF_ADD_CFLAGS([-g])
-- ;;
-- esac
-- ;;
--esac
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_NUMBER_SYNTAX version: 1 updated: 2003/09/20 18:12:49
--dnl ----------------
--dnl Check if the given variable is a number. If not, report an error.
--dnl $1 is the variable
--dnl $2 is the message
--AC_DEFUN([CF_NUMBER_SYNTAX],[
--if test -n "$1" ; then
-- case $1 in #(vi
-- [[0-9]]*) #(vi
-- ;;
-- *)
-- AC_MSG_ERROR($2 is not a number: $1)
-- ;;
-- esac
--else
-- AC_MSG_ERROR($2 value is empty)
--fi
-+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: 4 updated: 2002/02/23 20:38:31
-+dnl CF_OBJ_SUBDIR version: 6 updated: 2013/09/07 14:06:10
- dnl -------------
- dnl Compute the object-directory name from the given model name
- AC_DEFUN([CF_OBJ_SUBDIR],
-@@ -2488,7 +2475,7 @@
- profile) $2='obj_p' ;;
- shared)
- case $cf_cv_system_name in #(vi
-- cygwin) #(vi
-+ cygwin|msys) #(vi
- $2='objects' ;;
- *)
- $2='obj_s' ;;
-@@ -2496,20 +2483,23 @@
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PATHSEP version: 5 updated: 2010/05/26 05:38:42
-+dnl CF_PATHSEP version: 6 updated: 2012/09/29 18:38:12
- dnl ----------
--dnl Provide a value for the $PATH and similar separator
-+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
- os2*) PATH_SEPARATOR=';' ;;
-- *) PATH_SEPARATOR=':' ;;
-+ *) ${PATH_SEPARATOR:=':'} ;;
- esac
- ifelse([$1],,,[$1=$PATH_SEPARATOR])
- AC_SUBST(PATH_SEPARATOR)
-+ AC_MSG_RESULT($PATH_SEPARATOR)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PATH_SYNTAX version: 13 updated: 2010/05/26 05:38:42
-+dnl CF_PATH_SYNTAX version: 14 updated: 2012/06/19 20:58:54
- 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
-@@ -2529,7 +2519,7 @@
- ;;
- .[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX
- ;;
--.\[$]{*prefix}*) #(vi
-+.\[$]{*prefix}*|.\[$]{*dir}*) #(vi
- eval $1="[$]$1"
- case ".[$]$1" in #(vi
- .NONE/*)
-@@ -2546,7 +2536,7 @@
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PKG_CONFIG version: 4 updated: 2011/02/18 20:26:24
-+dnl CF_PKG_CONFIG version: 7 updated: 2011/04/29 04:53:22
- dnl -------------
- dnl Check for the package-config program, unless disabled by command-line.
- AC_DEFUN([CF_PKG_CONFIG],
-@@ -2563,7 +2553,9 @@
- PKG_CONFIG=none
- ;;
- yes) #(vi
-- AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)
-+ CF_ACVERSION_CHECK(2.52,
-+ [AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)],
-+ [AC_PATH_PROG(PKG_CONFIG, pkg-config, none)])
- ;;
- *)
- PKG_CONFIG=$withval
-@@ -2667,6 +2659,19 @@
- test -z "$AWK" && AC_MSG_ERROR(No awk program found)
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_PROG_CC version: 4 updated: 2014/07/12 18:57:58
-+dnl ----------
-+dnl standard check for CC, plus followup sanity checks
-+dnl $1 = optional parameter to pass to AC_PROG_CC to specify compiler name
-+AC_DEFUN([CF_PROG_CC],[
-+ifelse($1,,[AC_PROG_CC],[AC_PROG_CC($1)])
-+CF_GCC_VERSION
-+CF_ACVERSION_CHECK(2.52,
-+ [AC_PROG_CC_STDC],
-+ [CF_ANSI_CC_REQD])
-+CF_CC_ENV_FLAGS
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_PROG_CC_C_O version: 3 updated: 2010/08/14 18:25:37
- dnl --------------
- dnl Analogous to AC_PROG_CC_C_O, but more useful: tests only $CC, ensures that
-@@ -2721,7 +2726,7 @@
- test -z "$EGREP" && AC_MSG_ERROR(No egrep program found)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18
-+dnl CF_PROG_EXT version: 11 updated: 2012/10/06 08:57:51
- dnl -----------
- dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX.
- AC_DEFUN([CF_PROG_EXT],
-@@ -2743,10 +2748,10 @@
-
- PROG_EXT="$EXEEXT"
- AC_SUBST(PROG_EXT)
--test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$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: 1 updated: 2010/06/19 15:22:18
-+dnl CF_PROG_GNAT version: 2 updated: 2011/10/22 14:01:47
- dnl ------------
- dnl Check for gnatmake, ensure that it is complete.
- AC_DEFUN([CF_PROG_GNAT],[
-@@ -2754,6 +2759,7 @@
- AC_CHECK_PROG(gnat_exists, $cf_ada_make, yes, no)
- if test "$ac_cv_prog_gnat_exists" = no; then
- cf_ada_make=
-+ cf_cv_prog_gnat_correct=no
- else
- CF_GNAT_VERSION
- AC_CHECK_PROG(M4_exists, m4, yes, no)
-@@ -2831,18 +2837,19 @@
- $1=`echo "$2" | sed -e 's/-l$3[[ ]]//g' -e 's/-l$3[$]//'`
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_SHARED_OPTS version: 64 updated: 2010/06/05 16:51:16
-+dnl CF_SHARED_OPTS version: 84 updated: 2013/11/03 06:26:10
- dnl --------------
- dnl --------------
- dnl Attempt to determine the appropriate CC/LD options for creating a shared
- dnl library.
- dnl
--dnl Note: ${LOCAL_LDFLAGS} is used to link executables that will run within the
--dnl build-tree, i.e., by making use of the libraries that are compiled in ../lib
--dnl We avoid compiling-in a ../lib path for the shared library since that can
--dnl lead to unexpected results at runtime.
--dnl ${LOCAL_LDFLAGS2} has the same intention but assumes that the shared libraries
--dnl are compiled in ../../lib
-+dnl Notes:
-+dnl a) ${LOCAL_LDFLAGS} is used to link executables that will run within
-+dnl the build-tree, i.e., by making use of the libraries that are compiled in
-+dnl $rel_builddir/lib We avoid compiling-in a $rel_builddir/lib path for the
-+dnl shared library since that can lead to unexpected results at runtime.
-+dnl b) ${LOCAL_LDFLAGS2} has the same intention but assumes that the shared
-+dnl libraries are compiled in ../../lib
- dnl
- dnl The variable 'cf_cv_do_symlinks' is used to control whether we configure
- dnl to install symbolic links to the rel/abi versions of shared libraries.
-@@ -2857,12 +2864,19 @@
- dnl Some loaders leave 'so_locations' lying around. It's nice to clean up.
- AC_DEFUN([CF_SHARED_OPTS],
- [
-- AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
- AC_REQUIRE([CF_LD_RPATH_OPT])
-+ RM_SHARED_OPTS=
- LOCAL_LDFLAGS=
- LOCAL_LDFLAGS2=
- LD_SHARED_OPTS=
- INSTALL_LIB="-m 644"
-+ : ${rel_builddir:=.}
-+
-+ shlibdir=$libdir
-+ AC_SUBST(shlibdir)
-+
-+ MAKE_DLLS="#"
-+ AC_SUBST(MAKE_DLLS)
-
- cf_cv_do_symlinks=no
- cf_ld_rpath_opt=
-@@ -2887,6 +2901,7 @@
- AC_MSG_RESULT($cf_cv_shlib_version)
-
- cf_cv_rm_so_locs=no
-+ cf_try_cflags=
-
- # Some less-capable ports of gcc support only -fpic
- CC_SHARED_OPTS=
-@@ -2906,10 +2921,14 @@
- cf_cv_shlib_version_infix=no
-
- case $cf_cv_system_name in #(vi
-- aix[[56]]*) #(vi
-+ aix4.[3-9]*|aix[[5-7]]*) #(vi
- if test "$GCC" = yes; then
- CC_SHARED_OPTS=
-- MK_SHARED_LIB='$(CC) -shared'
-+ MK_SHARED_LIB='${CC} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@'
-+ else
-+ # CC_SHARED_OPTS='-qpic=large -G'
-+ # perhaps "-bM:SRE -bnoentry -bexpall"
-+ MK_SHARED_LIB='${CC} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@'
- fi
- ;;
- beos*) #(vi
-@@ -2917,9 +2936,12 @@
- ;;
- cygwin*) #(vi
- CC_SHARED_OPTS=
-- MK_SHARED_LIB='sh ../mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}'
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
- cf_cv_shlib_version=cygdll
- cf_cv_shlib_version_infix=cygdll
-+ shlibdir=$bindir
-+ MAKE_DLLS=
- cat >mk_shared_lib.sh <<-CF_EOF
- #!/bin/sh
- SHARED_LIB=\[$]1
-@@ -2930,12 +2952,34 @@
- ** SHARED_LIB \[$]SHARED_LIB
- ** IMPORT_LIB \[$]IMPORT_LIB
- EOF
-- exec \[$]* -shared -Wl,--out-implib=../lib/\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o ../lib/\[$]{SHARED_LIB}
-+ exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
-+CF_EOF
-+ chmod +x mk_shared_lib.sh
-+ ;;
-+ msys*) #(vi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
-+ cf_cv_shlib_version=msysdll
-+ cf_cv_shlib_version_infix=msysdll
-+ shlibdir=$bindir
-+ MAKE_DLLS=
-+ cat >mk_shared_lib.sh <<-CF_EOF
-+ #!/bin/sh
-+ SHARED_LIB=\[$]1
-+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/msys-/lib/' -e 's/[[0-9]]*\.dll[$]/.dll.a/'\`
-+ shift
-+ cat <<-EOF
-+ Linking shared library
-+ ** SHARED_LIB \[$]SHARED_LIB
-+ ** IMPORT_LIB \[$]IMPORT_LIB
-+EOF
-+ exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
- CF_EOF
- chmod +x mk_shared_lib.sh
- ;;
- darwin*) #(vi
-- EXTRA_CFLAGS="-no-cpp-precomp"
-+ cf_try_cflags="no-cpp-precomp"
- CC_SHARED_OPTS="-dynamic"
- MK_SHARED_LIB='${CC} ${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
-@@ -2949,6 +2993,14 @@
- LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
- fi
- ;;
-+ hpux[[7-8]]*) #(vi
-+ # HP-UX 8.07 ld lacks "+b" option used for libdir search-list
-+ if test "$GCC" != yes; then
-+ CC_SHARED_OPTS='+Z'
-+ fi
-+ MK_SHARED_LIB='${LD} -b -o $[@]'
-+ INSTALL_LIB="-m 555"
-+ ;;
- hpux*) #(vi
- # (tested with gcc 2.7.2 -- I don't have c89)
- if test "$GCC" = yes; then
-@@ -2962,9 +3014,19 @@
- # readonly to exploit a quirk in the memory manager.
- INSTALL_LIB="-m 555"
- ;;
-+ interix*)
-+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
-+ if test "$cf_cv_shlib_version" = rel; then
-+ cf_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}'
-+ else
-+ cf_shared_soname='`basename $@`'
-+ fi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o $@'
-+ ;;
- irix*) #(vi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- # tested with IRIX 5.2 and 'cc'.
- if test "$GCC" != yes; then
-@@ -2981,18 +3043,45 @@
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- CF_SHARED_SONAME
- MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
- ;;
-- openbsd[[2-9]].*) #(vi
-+ mingw*) #(vi
-+ cf_cv_shlib_version=mingw
-+ cf_cv_shlib_version_infix=mingw
-+ shlibdir=$bindir
-+ MAKE_DLLS=
-+ if test "$DFT_LWR_MODEL" = "shared" ; then
-+ LOCAL_LDFLAGS="-Wl,--enable-auto-import"
-+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
-+ EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS"
-+ fi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
-+ cat >mk_shared_lib.sh <<-CF_EOF
-+ #!/bin/sh
-+ SHARED_LIB=\[$]1
-+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/[[0-9]]*\.dll[$]/.dll.a/'\`
-+ shift
-+ cat <<-EOF
-+ Linking shared library
-+ ** SHARED_LIB \[$]SHARED_LIB
-+ ** IMPORT_LIB \[$]IMPORT_LIB
-+EOF
-+ exec \[$]* -shared -Wl,--enable-auto-import,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
-+CF_EOF
-+ chmod +x mk_shared_lib.sh
-+ ;;
-+ openbsd[[2-9]].*|mirbsd*) #(vi
- if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
- CF_SHARED_SONAME
-@@ -3003,12 +3092,12 @@
- MK_SHARED_LIB='${LD} -Bshareable -o $[@]'
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
- ;;
-- freebsd*) #(vi
-+ dragonfly*|freebsd*) #(vi
- CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
- if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then
- LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)"
-- LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${libdir} $LOCAL_LDFLAGS"
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${RPATH_LIST} $LOCAL_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- CF_SHARED_SONAME
- MK_SHARED_LIB='${LD} -shared -Bshareable -soname=`basename $[@]` -o $[@]'
-@@ -3018,7 +3107,7 @@
- if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then
- LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- if test "$cf_cv_shlib_version" = auto; then
- if test -f /usr/libexec/ld.elf_so; then
- cf_cv_shlib_version=abi
-@@ -3029,7 +3118,7 @@
- CF_SHARED_SONAME
- MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $[@]'
- else
-- MK_SHARED_LIB='${LD} -shared -Bshareable -o $[@]'
-+ MK_SHARED_LIB='${CC} -Wl,-shared -Wl,-Bshareable -o $[@]'
- fi
- ;;
- osf*|mls+*) #(vi
-@@ -3123,20 +3212,57 @@
- ;;
- esac
-
-- if test -n "$cf_ld_rpath_opt" ; then
-- MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${libdir}"
-+ if test -n "$cf_try_cflags"
-+ then
-+cat > conftest.$ac_ext <<EOF
-+#line __oline__ "${as_me:-configure}"
-+#include <stdio.h>
-+int main(int argc, char *argv[[]])
-+{
-+ printf("hello\n");
-+ return (argv[[argc-1]] == 0) ;
-+}
-+EOF
-+ cf_save_CFLAGS="$CFLAGS"
-+ for cf_opt in $cf_try_cflags
-+ do
-+ CFLAGS="$cf_save_CFLAGS -$cf_opt"
-+ AC_MSG_CHECKING(if CFLAGS option -$cf_opt works)
-+ if AC_TRY_EVAL(ac_compile); then
-+ AC_MSG_RESULT(yes)
-+ cf_save_CFLAGS="$CFLAGS"
-+ else
-+ AC_MSG_RESULT(no)
-+ fi
-+ done
-+ CFLAGS="$cf_save_CFLAGS"
- fi
-
-+
-+ # RPATH_LIST is a colon-separated list of directories
-+ 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"
-+
-+ CF_VERBOSE(CC_SHARED_OPTS: $CC_SHARED_OPTS)
-+ CF_VERBOSE(MK_SHARED_LIB: $MK_SHARED_LIB)
-+
- AC_SUBST(CC_SHARED_OPTS)
- AC_SUBST(LD_RPATH_OPT)
- AC_SUBST(LD_SHARED_OPTS)
- AC_SUBST(MK_SHARED_LIB)
-+ AC_SUBST(RM_SHARED_OPTS)
-+
- AC_SUBST(LINK_PROGS)
- AC_SUBST(LINK_TESTS)
-+
- AC_SUBST(EXTRA_LDFLAGS)
- AC_SUBST(LOCAL_LDFLAGS)
- AC_SUBST(LOCAL_LDFLAGS2)
-+
- AC_SUBST(INSTALL_LIB)
-+ AC_SUBST(RPATH_LIST)
- ])dnl
- dnl ---------------------------------------------------------------------------
- dnl CF_SHARED_SONAME version: 3 updated: 2008/09/08 18:34:43
-@@ -3163,7 +3289,7 @@
- AC_DEFUN([CF_STRIP_G_OPT],
- [$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_SUBDIR_PATH version: 6 updated: 2010/04/21 06:20:50
-+dnl CF_SUBDIR_PATH version: 7 updated: 2014/12/04 04:33:06
- dnl --------------
- dnl Construct a search-list for a nonstandard header/lib-file
- dnl $1 = the variable to return as result
-@@ -3173,31 +3299,21 @@
- [
- $1=
-
--CF_ADD_SUBDIR_PATH($1,$2,$3,/usr,$prefix)
- CF_ADD_SUBDIR_PATH($1,$2,$3,$prefix,NONE)
--CF_ADD_SUBDIR_PATH($1,$2,$3,/usr/local,$prefix)
--CF_ADD_SUBDIR_PATH($1,$2,$3,/opt,$prefix)
--CF_ADD_SUBDIR_PATH($1,$2,$3,[$]HOME,$prefix)
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_SUBST version: 4 updated: 2006/06/17 12:33:03
--dnl --------
--dnl Shorthand macro for substituting things that the user may override
--dnl with an environment variable.
--dnl
--dnl $1 = long/descriptive name
--dnl $2 = environment variable
--dnl $3 = default value
--AC_DEFUN([CF_SUBST],
--[AC_CACHE_VAL(cf_cv_subst_$2,[
--AC_MSG_CHECKING(for $1 (symbol $2))
--CF_SUBST_IF([-z "[$]$2"], [$2], [$3])
--cf_cv_subst_$2=[$]$2
--AC_MSG_RESULT([$]$2)
--])
-+
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ [$]HOME
-+do
-+ CF_ADD_SUBDIR_PATH($1,$2,$3,$cf_subdir_prefix,$prefix)
-+done
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_TERM_HEADER version: 2 updated: 2010/10/23 15:54:49
-+dnl CF_TERM_HEADER version: 3 updated: 2012/10/06 08:57:51
- 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,
-@@ -3230,29 +3346,68 @@
-
- case $cf_cv_term_header in # (vi
- *term.h)
-- AC_DEFINE(HAVE_TERM_H)
-+ AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h])
- ;;
- esac
-
- case $cf_cv_term_header in # (vi
- ncurses/term.h) #(vi
-- AC_DEFINE(HAVE_NCURSES_TERM_H)
-+ AC_DEFINE(HAVE_NCURSES_TERM_H,1,[Define to 1 if we have ncurses/term.h])
- ;;
- ncursesw/term.h)
-- AC_DEFINE(HAVE_NCURSESW_TERM_H)
-+ AC_DEFINE(HAVE_NCURSESW_TERM_H,1,[Define to 1 if we have ncursesw/term.h])
- ;;
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_TOP_BUILDDIR version: 1 updated: 2006/10/15 16:33:23
-+dnl CF_TOP_BUILDDIR version: 2 updated: 2013/07/27 17:38:32
- dnl ---------------
- dnl Define a top_builddir symbol, for applications that need an absolute path.
- AC_DEFUN([CF_TOP_BUILDDIR],
- [
--top_builddir=`pwd`
-+top_builddir=ifelse($1,,`pwd`,$1)
- AC_SUBST(top_builddir)
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_TRY_XOPEN_SOURCE version: 1 updated: 2011/10/30 17:09:50
-+dnl -------------------
-+dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we
-+dnl can define it successfully.
-+AC_DEFUN([CF_TRY_XOPEN_SOURCE],[
-+AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
-+ AC_TRY_COMPILE([
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+],[
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif],
-+ [cf_cv_xopen_source=no],
-+ [cf_save="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-+ AC_TRY_COMPILE([
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+],[
-+#ifdef _XOPEN_SOURCE
-+make an error
-+#endif],
-+ [cf_cv_xopen_source=no],
-+ [cf_cv_xopen_source=$cf_XOPEN_SOURCE])
-+ CPPFLAGS="$cf_save"
-+ ])
-+])
-+
-+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)
-+fi
-+])
-+dnl ---------------------------------------------------------------------------
- dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59
- dnl --------
- dnl Make an uppercase version of a variable
-@@ -3262,7 +3417,7 @@
- $1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_UTF8_LIB version: 7 updated: 2010/06/20 09:24:28
-+dnl CF_UTF8_LIB version: 8 updated: 2012/10/06 08:57:51
- dnl -----------
- dnl Check for multibyte support, and if not found, utf8 compatibility library
- AC_DEFUN([CF_UTF8_LIB],
-@@ -3281,7 +3436,7 @@
- # HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
- # ncurses/ncursesw:
- if test "$cf_cv_utf8_lib" = "add-on" ; then
-- AC_DEFINE(HAVE_LIBUTF8_H)
-+ AC_DEFINE(HAVE_LIBUTF8_H,1,[Define to 1 if we should include libutf8.h])
- CF_ADD_INCDIR($cf_cv_header_path_utf8)
- CF_ADD_LIBDIR($cf_cv_library_path_utf8)
- CF_ADD_LIBS($cf_cv_library_file_utf8)
-@@ -3363,14 +3518,14 @@
- AC_MSG_RESULT($ADA_OBJECTS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_ADA_SHAREDLIB version: 2 updated: 2010/06/26 17:35:58
-+dnl CF_WITH_ADA_SHAREDLIB version: 4 updated: 2014/05/31 21:08:37
- dnl ---------------------
- dnl Command-line option to specify if an Ada95 shared-library should be built,
- dnl and optionally what its soname should be.
- AC_DEFUN([CF_WITH_ADA_SHAREDLIB],[
- AC_MSG_CHECKING(if an Ada95 shared-library should be built)
- AC_ARG_WITH(ada-sharedlib,
-- [ --with-ada-sharedlib=XX build Ada95 shared-library],
-+ [ --with-ada-sharedlib=soname build shared-library (requires GNAT projects)],
- [with_ada_sharedlib=$withval],
- [with_ada_sharedlib=no])
- AC_MSG_RESULT($with_ada_sharedlib)
-@@ -3415,7 +3570,33 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_PATH version: 10 updated: 2010/10/23 15:44:18
-+dnl CF_WITH_LIB_PREFIX version: 1 updated: 2012/01/21 19:28:10
-+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.
-+dnl
-+dnl $1 = variable to set
-+AC_DEFUN([CF_WITH_LIB_PREFIX],
-+[
-+AC_MSG_CHECKING(if you want to have a library-prefix)
-+AC_ARG_WITH(lib-prefix,
-+ [ --with-lib-prefix override library-prefix],
-+ [with_lib_prefix=$withval],
-+ [with_lib_prefix=auto])
-+AC_MSG_RESULT($with_lib_prefix)
-+
-+if test $with_lib_prefix = auto
-+then
-+ CF_LIB_PREFIX($1)
-+elif test $with_lib_prefix = no
-+then
-+ LIB_PREFIX=
-+else
-+ LIB_PREFIX=$with_lib_prefix
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_WITH_PATH version: 11 updated: 2012/09/29 15:04:19
- dnl ------------
- dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just
- dnl defaulting to yes/no.
-@@ -3432,11 +3613,54 @@
- if ifelse([$5],,true,[test -n "$5"]) ; then
- CF_PATH_SYNTAX(withval)
- fi
--$3="$withval"
-+eval $3="$withval"
- AC_SUBST($3)dnl
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_PTHREAD version: 3 updated: 2010/05/29 16:31:02
-+dnl CF_WITH_PKG_CONFIG_LIBDIR version: 2 updated: 2011/12/10 18:58:47
-+dnl -------------------------
-+dnl Allow the choice of the pkg-config library directory to be overridden.
-+AC_DEFUN([CF_WITH_PKG_CONFIG_LIBDIR],[
-+if test "$PKG_CONFIG" != none ; then
-+ AC_MSG_CHECKING(for $PKG_CONFIG library directory)
-+ AC_ARG_WITH(pkg-config-libdir,
-+ [ --with-pkg-config-libdir=XXX use given directory for installing pc-files],
-+ [PKG_CONFIG_LIBDIR=$withval],
-+ [PKG_CONFIG_LIBDIR=yes])
-+
-+ case x$PKG_CONFIG_LIBDIR in #(vi
-+ x/*) #(vi
-+ ;;
-+ xyes) #(vi
-+ # look for the library directory using the same prefix as the executable
-+ cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`
-+ case x`(arch) 2>/dev/null` in #(vi
-+ *64) #(vi
-+ for cf_config in $cf_path/share $cf_path/lib64 $cf_path/lib32 $cf_path/lib
-+ do
-+ if test -d $cf_config/pkgconfig
-+ then
-+ PKG_CONFIG_LIBDIR=$cf_config/pkgconfig
-+ break
-+ fi
-+ done
-+ ;;
-+ *)
-+ PKG_CONFIG_LIBDIR=$cf_path/lib/pkgconfig
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ ;;
-+ esac
-+
-+ AC_MSG_RESULT($PKG_CONFIG_LIBDIR)
-+fi
-+
-+AC_SUBST(PKG_CONFIG_LIBDIR)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_WITH_PTHREAD version: 6 updated: 2012/10/06 17:41:51
- dnl ---------------
- dnl Check for POSIX thread library.
- AC_DEFUN([CF_WITH_PTHREAD],
-@@ -3450,30 +3674,55 @@
-
- if test "$with_pthread" != no ; then
- AC_CHECK_HEADER(pthread.h,[
-- AC_DEFINE(HAVE_PTHREADS_H)
-+ AC_DEFINE(HAVE_PTHREADS_H,1,[Define to 1 if we have pthreads.h header])
-
-- AC_MSG_CHECKING(if we can link with the pthread library)
-- cf_save_LIBS="$LIBS"
-- CF_ADD_LIB(pthread)
-- AC_TRY_LINK([
-+ for cf_lib_pthread in pthread c_r
-+ do
-+ AC_MSG_CHECKING(if we can link with the $cf_lib_pthread library)
-+ cf_save_LIBS="$LIBS"
-+ CF_ADD_LIB($cf_lib_pthread)
-+ AC_TRY_LINK([
- #include <pthread.h>
- ],[
-- int rc = pthread_create(0,0,0,0);
-+ int rc = pthread_create(0,0,0,0);
-+ int r2 = pthread_mutexattr_settype(0, 0);
- ],[with_pthread=yes],[with_pthread=no])
-- LIBS="$cf_save_LIBS"
-- AC_MSG_RESULT($with_pthread)
-+ LIBS="$cf_save_LIBS"
-+ AC_MSG_RESULT($with_pthread)
-+ test "$with_pthread" = yes && break
-+ done
-
-- if test "$with_pthread" = yes ; then
-- CF_ADD_LIB(pthread)
-- AC_DEFINE(HAVE_LIBPTHREADS)
-- else
-- AC_MSG_ERROR(Cannot link with pthread library)
-- fi
-+ if test "$with_pthread" = yes ; then
-+ CF_ADD_LIB($cf_lib_pthread)
-+ AC_DEFINE(HAVE_LIBPTHREADS,1,[Define to 1 if we have pthreads library])
-+ else
-+ AC_MSG_ERROR(Cannot link with pthread library)
-+ fi
- ])
- fi
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_XOPEN_SOURCE version: 35 updated: 2011/02/20 20:37:37
-+dnl CF_WITH_SYSTYPE version: 1 updated: 2013/01/26 16:26:12
-+dnl ---------------
-+dnl For testing, override the derived host system-type which is used to decide
-+dnl things such as the linker commands used to build shared libraries. This is
-+dnl normally chosen automatically based on the type of system which you are
-+dnl building on. We use it for testing the configure script.
-+dnl
-+dnl This is different from the --host option: it is used only for testing parts
-+dnl of the configure script which would not be reachable with --host since that
-+dnl relies on the build environment being real, rather than mocked up.
-+AC_DEFUN([CF_WITH_SYSTYPE],[
-+CF_CHECK_CACHE([AC_CANONICAL_SYSTEM])
-+AC_ARG_WITH(system-type,
-+ [ --with-system-type=XXX test: override derived host system-type],
-+[AC_MSG_WARN(overriding system type to $withval)
-+ cf_cv_system_name=$withval
-+ host_os=$withval
-+])
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_XOPEN_SOURCE version: 48 updated: 2014/09/01 12:29:14
- 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,
-@@ -3483,16 +3732,17 @@
- dnl $1 is the nominal value for _XOPEN_SOURCE
- dnl $2 is the nominal value for _POSIX_C_SOURCE
- AC_DEFUN([CF_XOPEN_SOURCE],[
-+AC_REQUIRE([AC_CANONICAL_HOST])
-
- cf_XOPEN_SOURCE=ifelse([$1],,500,[$1])
- cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2])
- cf_xopen_source=
-
- case $host_os in #(vi
--aix[[456]]*) #(vi
-+aix[[4-7]]*) #(vi
- cf_xopen_source="-D_ALL_SOURCE"
- ;;
--cygwin) #(vi
-+cygwin|msys) #(vi
- cf_XOPEN_SOURCE=600
- ;;
- darwin[[0-8]].*) #(vi
-@@ -3500,6 +3750,7 @@
- ;;
- darwin*) #(vi
- cf_xopen_source="-D_DARWIN_C_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- freebsd*|dragonfly*) #(vi
- # 5.x headers associate
-@@ -3517,15 +3768,26 @@
- ;;
- irix[[56]].*) #(vi
- cf_xopen_source="-D_SGI_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- linux*|gnu*|mint*|k*bsd*-gnu) #(vi
- CF_GNU_SOURCE
- ;;
-+minix*) #(vi
-+ cf_xopen_source="-D_NETBSD_SOURCE" # POSIX.1-2001 features are ifdef'd with this...
-+ ;;
- mirbsd*) #(vi
-- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h>
-+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types
-+ cf_XOPEN_SOURCE=
-+ CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
- ;;
- netbsd*) #(vi
-- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
-+ 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]]*) #(vi
-+ # 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
- ;;
- openbsd*) #(vi
- # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
-@@ -3539,41 +3801,50 @@
- sco*) #(vi
- # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
- ;;
--solaris2.1[[0-9]]) #(vi
-- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- ;;
--solaris2.[[1-9]]) #(vi
-+solaris2.*) #(vi
- cf_xopen_source="-D__EXTENSIONS__"
-+ cf_cv_xopen_source=broken
-+ ;;
-+sysv4.2uw2.*) # Novell/SCO UnixWare 2.x (tested on 2.1.2)
-+ cf_XOPEN_SOURCE=
-+ cf_POSIX_C_SOURCE=
- ;;
- *)
-- AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
-- AC_TRY_COMPILE([#include <sys/types.h>],[
-+ CF_TRY_XOPEN_SOURCE
-+ CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
-+ ;;
-+esac
-+
-+if test -n "$cf_xopen_source" ; then
-+ CF_ADD_CFLAGS($cf_xopen_source,true)
-+fi
-+
-+dnl In anything but the default case, we may have system-specific setting
-+dnl which is still not guaranteed to provide all of the entrypoints that
-+dnl _XOPEN_SOURCE would yield.
-+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
-+ AC_MSG_CHECKING(if _XOPEN_SOURCE really is set)
-+ AC_TRY_COMPILE([#include <stdlib.h>],[
- #ifndef _XOPEN_SOURCE
- make an error
- #endif],
-- [cf_cv_xopen_source=no],
-- [cf_save="$CPPFLAGS"
-- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- AC_TRY_COMPILE([#include <sys/types.h>],[
--#ifdef _XOPEN_SOURCE
-+ [cf_XOPEN_SOURCE_set=yes],
-+ [cf_XOPEN_SOURCE_set=no])
-+ AC_MSG_RESULT($cf_XOPEN_SOURCE_set)
-+ if test $cf_XOPEN_SOURCE_set = yes
-+ then
-+ AC_TRY_COMPILE([#include <stdlib.h>],[
-+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
- make an error
- #endif],
-- [cf_cv_xopen_source=no],
-- [cf_cv_xopen_source=$cf_XOPEN_SOURCE])
-- CPPFLAGS="$cf_save"
-- ])
--])
-- 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_XOPEN_SOURCE_set_ok=yes],
-+ [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
-+ else
-+ CF_TRY_XOPEN_SOURCE
- fi
-- CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
-- ;;
--esac
--
--if test -n "$cf_xopen_source" ; then
-- CF_ADD_CFLAGS($cf_xopen_source)
- fi
- ])
-Index: Ada95/configure
---- ncurses-5.9/Ada95/configure 2011-03-31 23:34:47.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/configure 2014-12-06 13:38:40.000000000 +0000
-@@ -1,7 +1,7 @@
- #! /bin/sh
--# From configure.in Revision: 1.30 .
-+# From configure.in Revision: 1.56 .
- # Guess values for system-dependent variables and create Makefiles.
--# Generated by Autoconf 2.52.20101002.
-+# Generated by Autoconf 2.52.20141204.
- #
- # Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
- # Free Software Foundation, Inc.
-@@ -135,15 +135,16 @@
- bindir='${exec_prefix}/bin'
- sbindir='${exec_prefix}/sbin'
- libexecdir='${exec_prefix}/libexec'
--datadir='${prefix}/share'
-+datarootdir='${prefix}/share'
-+datadir='${datarootdir}'
- sysconfdir='${prefix}/etc'
- sharedstatedir='${prefix}/com'
- localstatedir='${prefix}/var'
- libdir='${exec_prefix}/lib'
- includedir='${prefix}/include'
- oldincludedir='/usr/include'
--infodir='${prefix}/info'
--mandir='${prefix}/man'
-+infodir='${datarootdir}/info'
-+mandir='${datarootdir}/man'
-
- # Identity of this package.
- PACKAGE_NAME=
-@@ -194,6 +195,13 @@
- | --da=*)
- datadir=$ac_optarg ;;
-
-+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-+ | --dataroo | --dataro | --datar)
-+ ac_prev=datarootdir ;;
-+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-+ datarootdir=$ac_optarg ;;
-+
- -disable-* | --disable-*)
- ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
-@@ -469,7 +477,7 @@
- done
-
- # Be sure to have absolute paths.
--for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
-+for ac_var in bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir \
- localstatedir libdir includedir oldincludedir infodir mandir
- do
- eval ac_val=$`echo $ac_var`
-@@ -606,15 +614,16 @@
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
-- --datadir=DIR read-only architecture-independent data [PREFIX/share]
-+ --datarootdir=DIR read-only architecture-independent data [PREFIX/share]
-+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
-- --infodir=DIR info documentation [PREFIX/info]
-- --mandir=DIR man documentation [PREFIX/man]
-+ --infodir=DIR info documentation [DATAROOTDIR/info]
-+ --mandir=DIR man documentation [DATAROOTDIR/man]
- EOF
-
- cat <<\EOF
-@@ -645,7 +654,7 @@
-
- --with-system-type=XXX test: override derived host system-type
- --with-pkg-config{=path} enable/disable use of pkg-config
-- --enable-pc-files generate and install .pc files for pkg-config
-+ --with-pkg-config-libdir=XXX use given directory for installing pc-files
- --without-tests suppress build with test-programs
- --enable-mixed-case tic should assume mixed-case filenames
- --with-install-prefix prefixes actual install-location ($DESTDIR)
-@@ -660,6 +669,7 @@
- --with-shared generate shared C-objects (needed for --with-ada-sharedlib)
- --enable-widec compile with wide-char/UTF-8 code
- --with-curses-dir=DIR directory in which (n)curses is installed
-+ --with-lib-prefix override library-prefix
- --with-shlib-version=X Specify rel or abi version for shared libs
- --enable-rpath-link link sample programs with rpath option
- Fine-Tuning Your Configuration:
-@@ -677,17 +687,18 @@
- --enable-reentrant compile with experimental reentrant code
- --with-wrap-prefix=XXX override prefix used for public variables
- Testing/development Options:
-- --enable-echo build: display "compiling" commands (default)
-+ --disable-echo do not display "compiling" commands
- --enable-warnings build: turn on GCC compiler warnings
- --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
- --with-trace test: add trace() function to all models of ncurses
-+ --disable-gnat-projects test: disable GNAT projects even if usable
- Ada95 Binding Options:
- --with-ada-compiler=CMD specify Ada95 compiler command (default gnatmake)
- --with-ada-include=DIR Ada includes are in DIR (default: PREFIX/share/ada/adainclude)
- --with-ada-objects=DIR Ada objects are in DIR (default: PREFIX/lib/ada/adalib)
-- --with-ada-sharedlib=XX build Ada95 shared-library
-+ --with-ada-sharedlib=soname build shared-library (requires GNAT projects)
-
- Some influential environment variables:
- CC C compiler command
-@@ -757,7 +768,7 @@
- running configure, to aid debugging if configure makes a mistake.
-
- It was created by $as_me, which was
--generated by GNU Autoconf 2.52.20101002. Invocation command line was
-+generated by GNU Autoconf 2.52.20141204. Invocation command line was
-
- $ $0 $@
-
-@@ -881,7 +892,7 @@
- fi
- for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
-- { echo "$as_me:884: loading site script $ac_site_file" >&5
-+ { echo "$as_me:895: 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"
-@@ -892,7 +903,7 @@
- # 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:895: loading cache $cache_file" >&5
-+ { echo "$as_me:906: loading cache $cache_file" >&5
- echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . $cache_file;;
-@@ -900,7 +911,7 @@
- esac
- fi
- else
-- { echo "$as_me:903: creating cache $cache_file" >&5
-+ { echo "$as_me:914: creating cache $cache_file" >&5
- echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
- fi
-@@ -916,21 +927,21 @@
- eval ac_new_val="\$ac_env_${ac_var}_value"
- case $ac_old_set,$ac_new_set in
- set,)
-- { echo "$as_me:919: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-+ { echo "$as_me:930: 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:923: error: \`$ac_var' was not set in the previous run" >&5
-+ { echo "$as_me:934: 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:929: error: \`$ac_var' has changed since the previous run:" >&5
-+ { echo "$as_me:940: 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:931: former value: $ac_old_val" >&5
-+ { echo "$as_me:942: former value: $ac_old_val" >&5
- echo "$as_me: former value: $ac_old_val" >&2;}
-- { echo "$as_me:933: current value: $ac_new_val" >&5
-+ { echo "$as_me:944: current value: $ac_new_val" >&5
- echo "$as_me: current value: $ac_new_val" >&2;}
- ac_cache_corrupted=:
- fi;;
-@@ -949,9 +960,9 @@
- fi
- done
- if $ac_cache_corrupted; then
-- { echo "$as_me:952: error: changes in the environment can compromise the build" >&5
-+ { echo "$as_me:963: 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:954: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-+ { { echo "$as_me:965: 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
-@@ -963,19 +974,19 @@
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- ac_main_return=return
-
--case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
-- *c*,-n*) ECHO_N= ECHO_C='
--' ECHO_T=' ' ;;
-+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= ;;
- esac
- echo "#! $SHELL" >conftest.sh
- echo "exit 0" >>conftest.sh
- chmod +x conftest.sh
--if { (echo "$as_me:975: PATH=\".;.\"; conftest.sh") >&5
-+if { (echo "$as_me:986: PATH=\".;.\"; conftest.sh") >&5
- (PATH=".;."; conftest.sh) 2>&5
- ac_status=$?
-- echo "$as_me:978: \$? = $ac_status" >&5
-+ echo "$as_me:989: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- ac_path_separator=';'
- else
-@@ -1005,7 +1016,7 @@
- fi
- done
- if test -z "$ac_aux_dir"; then
-- { { echo "$as_me:1008: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
-+ { { echo "$as_me:1019: 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
-@@ -1015,11 +1026,11 @@
-
- # Make sure we can run config.sub.
- $ac_config_sub sun4 >/dev/null 2>&1 ||
-- { { echo "$as_me:1018: error: cannot run $ac_config_sub" >&5
-+ { { echo "$as_me:1029: error: cannot run $ac_config_sub" >&5
- echo "$as_me: error: cannot run $ac_config_sub" >&2;}
- { (exit 1); exit 1; }; }
-
--echo "$as_me:1022: checking build system type" >&5
-+echo "$as_me:1033: 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
-@@ -1028,23 +1039,23 @@
- test -z "$ac_cv_build_alias" &&
- ac_cv_build_alias=`$ac_config_guess`
- test -z "$ac_cv_build_alias" &&
-- { { echo "$as_me:1031: error: cannot guess build type; you must specify one" >&5
-+ { { echo "$as_me:1042: 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:1035: error: $ac_config_sub $ac_cv_build_alias failed." >&5
-+ { { echo "$as_me:1046: 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:1040: result: $ac_cv_build" >&5
-+echo "$as_me:1051: 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/'`
-
--echo "$as_me:1047: checking host system type" >&5
-+echo "$as_me:1058: 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
-@@ -1053,12 +1064,12 @@
- 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:1056: error: $ac_config_sub $ac_cv_host_alias failed" >&5
-+ { { echo "$as_me:1067: 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:1061: result: $ac_cv_host" >&5
-+echo "$as_me:1072: 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/'`
-@@ -1066,7 +1077,7 @@
- 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:1069: checking target system type" >&5
-+ echo "$as_me:1080: 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
-@@ -1075,12 +1086,12 @@
- 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:1078: error: $ac_config_sub $ac_cv_target_alias failed" >&5
-+ { { echo "$as_me:1089: 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:1083: result: $ac_cv_target" >&5
-+echo "$as_me:1094: 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/'`
-@@ -1100,7 +1111,8 @@
- system_name="`(hostname) 2>/dev/null`"
- fi
- fi
--test -n "$system_name" && cat >>confdefs.h <<EOF
-+test -n "$system_name" &&
-+cat >>confdefs.h <<EOF
- #define SYSTEM_NAME "$system_name"
- EOF
-
-@@ -1111,13 +1123,13 @@
- fi
-
- test -z "$system_name" && system_name="$cf_cv_system_name"
--test -n "$cf_cv_system_name" && echo "$as_me:1114: result: Configuring for $cf_cv_system_name" >&5
-+test -n "$cf_cv_system_name" && echo "$as_me:1126: 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:1118: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
-+ echo "$as_me:1130: 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:1120: error: \"Please remove config.cache and try again.\"" >&5
-+ { { echo "$as_me:1132: 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
-@@ -1125,9 +1137,11 @@
- # 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:1128: WARNING: overriding system type to $withval" >&5
-+ { echo "$as_me:1140: WARNING: overriding system type to $withval" >&5
- echo "$as_me: WARNING: overriding system type to $withval" >&2;}
-- cf_cv_system_name=$withval
-+ cf_cv_system_name=$withval
-+ host_os=$withval
-+
- fi;
-
- ### Save the given $CFLAGS to allow user-override.
-@@ -1135,23 +1149,23 @@
-
- ### Default install-location
-
--echo "$as_me:1138: checking for prefix" >&5
-+echo "$as_me:1152: 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
- # non-vendor systems don't have a conflict
-- openbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu)
-+ openbsd*|freebsd*|mirbsd*|linux*|cygwin*|msys*|k*bsd*-gnu|mingw*)
- prefix=/usr
- ;;
- *) prefix=$ac_default_prefix
- ;;
- esac
- fi
--echo "$as_me:1150: result: $prefix" >&5
-+echo "$as_me:1164: result: $prefix" >&5
- echo "${ECHO_T}$prefix" >&6
-
- if test "x$prefix" = "xNONE" ; then
--echo "$as_me:1154: checking for default include-directory" >&5
-+echo "$as_me:1168: 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 \
-@@ -1174,11 +1188,12 @@
- fi
- test -n "$verbose" && echo " tested $cf_dir" 1>&6
- done
--echo "$as_me:1177: result: $includedir" >&5
-+echo "$as_me:1191: result: $includedir" >&5
- echo "${ECHO_T}$includedir" >&6
- fi
-
- ### Checks for programs.
-+
- ac_ext=c
- ac_cpp='$CPP $CPPFLAGS'
- ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-@@ -1186,213 +1201,11 @@
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- 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:1191: 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
--else
-- if test -n "$CC"; then
-- ac_cv_prog_CC="$CC" # 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_CC="${ac_tool_prefix}gcc"
--echo "$as_me:1206: found $ac_dir/$ac_word" >&5
--break
--done
--
--fi
--fi
--CC=$ac_cv_prog_CC
--if test -n "$CC"; then
-- echo "$as_me:1214: result: $CC" >&5
--echo "${ECHO_T}$CC" >&6
--else
-- echo "$as_me:1217: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
--fi
--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:1226: 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
--else
-- if test -n "$ac_ct_CC"; then
-- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # 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_CC="gcc"
--echo "$as_me:1241: found $ac_dir/$ac_word" >&5
--break
--done
--
--fi
--fi
--ac_ct_CC=$ac_cv_prog_ac_ct_CC
--if test -n "$ac_ct_CC"; then
-- echo "$as_me:1249: result: $ac_ct_CC" >&5
--echo "${ECHO_T}$ac_ct_CC" >&6
--else
-- echo "$as_me:1252: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
-- CC=$ac_ct_CC
--else
-- CC="$ac_cv_prog_CC"
--fi
--
--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:1265: 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
--else
-- if test -n "$CC"; then
-- ac_cv_prog_CC="$CC" # 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_CC="${ac_tool_prefix}cc"
--echo "$as_me:1280: found $ac_dir/$ac_word" >&5
--break
--done
--
--fi
--fi
--CC=$ac_cv_prog_CC
--if test -n "$CC"; then
-- echo "$as_me:1288: result: $CC" >&5
--echo "${ECHO_T}$CC" >&6
--else
-- echo "$as_me:1291: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
--fi
--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:1300: 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
--else
-- if test -n "$ac_ct_CC"; then
-- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # 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_CC="cc"
--echo "$as_me:1315: found $ac_dir/$ac_word" >&5
--break
--done
--
--fi
--fi
--ac_ct_CC=$ac_cv_prog_ac_ct_CC
--if test -n "$ac_ct_CC"; then
-- echo "$as_me:1323: result: $ac_ct_CC" >&5
--echo "${ECHO_T}$ac_ct_CC" >&6
--else
-- echo "$as_me:1326: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
-- CC=$ac_ct_CC
--else
-- CC="$ac_cv_prog_CC"
--fi
--
--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:1339: 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
--else
-- if test -n "$CC"; then
-- ac_cv_prog_CC="$CC" # Let the user override the test.
--else
-- ac_prog_rejected=no
-- 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
--if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
-- ac_prog_rejected=yes
-- continue
--fi
--ac_cv_prog_CC="cc"
--echo "$as_me:1359: found $ac_dir/$ac_word" >&5
--break
--done
--
--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
-- if test $# != 0; then
-- # We chose a different compiler from the bogus one.
-- # However, it has the same basename, so the bogon will be chosen
-- # first if we set CC to just the basename; use the full file name.
-- shift
-- set dummy "$ac_dir/$ac_word" ${1+"$@"}
-- shift
-- ac_cv_prog_CC="$@"
-- fi
--fi
--fi
--fi
--CC=$ac_cv_prog_CC
--if test -n "$CC"; then
-- echo "$as_me:1381: result: $CC" >&5
--echo "${ECHO_T}$CC" >&6
--else
-- echo "$as_me:1384: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
--fi
--if test -z "$CC"; then
-- if test -n "$ac_tool_prefix"; then
-- for ac_prog in cl
-+ 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:1395: checking for $ac_word" >&5
-+echo "$as_me:1208: 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
-@@ -1407,7 +1220,7 @@
- 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:1410: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1223: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1415,10 +1228,10 @@
- fi
- CC=$ac_cv_prog_CC
- if test -n "$CC"; then
-- echo "$as_me:1418: result: $CC" >&5
-+ echo "$as_me:1231: result: $CC" >&5
- echo "${ECHO_T}$CC" >&6
- else
-- echo "$as_me:1421: result: no" >&5
-+ echo "$as_me:1234: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1427,11 +1240,11 @@
- fi
- if test -z "$CC"; then
- ac_ct_CC=$CC
-- for ac_prog in cl
-+ for ac_prog in gnatgcc gcc cc
- 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:1434: checking for $ac_word" >&5
-+echo "$as_me:1247: 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
-@@ -1446,7 +1259,7 @@
- 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:1449: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1262: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1454,10 +1267,10 @@
- fi
- ac_ct_CC=$ac_cv_prog_ac_ct_CC
- if test -n "$ac_ct_CC"; then
-- echo "$as_me:1457: result: $ac_ct_CC" >&5
-+ echo "$as_me:1270: result: $ac_ct_CC" >&5
- echo "${ECHO_T}$ac_ct_CC" >&6
- else
-- echo "$as_me:1460: result: no" >&5
-+ echo "$as_me:1273: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1467,34 +1280,32 @@
- CC=$ac_ct_CC
- fi
-
--fi
--
--test -z "$CC" && { { echo "$as_me:1472: error: no acceptable cc found in \$PATH" >&5
-+test -z "$CC" && { { echo "$as_me:1283: 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:1477:" \
-+echo "$as_me:1288:" \
- "checking for C compiler version" >&5
- ac_compiler=`set X $ac_compile; echo $2`
--{ (eval echo "$as_me:1480: \"$ac_compiler --version </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:1291: \"$ac_compiler --version </dev/null >&5\"") >&5
- (eval $ac_compiler --version </dev/null >&5) 2>&5
- ac_status=$?
-- echo "$as_me:1483: \$? = $ac_status" >&5
-+ echo "$as_me:1294: \$? = $ac_status" >&5
- (exit $ac_status); }
--{ (eval echo "$as_me:1485: \"$ac_compiler -v </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:1296: \"$ac_compiler -v </dev/null >&5\"") >&5
- (eval $ac_compiler -v </dev/null >&5) 2>&5
- ac_status=$?
-- echo "$as_me:1488: \$? = $ac_status" >&5
-+ echo "$as_me:1299: \$? = $ac_status" >&5
- (exit $ac_status); }
--{ (eval echo "$as_me:1490: \"$ac_compiler -V </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:1301: \"$ac_compiler -V </dev/null >&5\"") >&5
- (eval $ac_compiler -V </dev/null >&5) 2>&5
- ac_status=$?
-- echo "$as_me:1493: \$? = $ac_status" >&5
-+ echo "$as_me:1304: \$? = $ac_status" >&5
- (exit $ac_status); }
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 1497 "configure"
-+#line 1308 "configure"
- #include "confdefs.h"
-
- int
-@@ -1510,13 +1321,13 @@
- # 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:1513: checking for C compiler default output" >&5
-+echo "$as_me:1324: 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:1516: \"$ac_link_default\"") >&5
-+if { (eval echo "$as_me:1327: \"$ac_link_default\"") >&5
- (eval $ac_link_default) 2>&5
- ac_status=$?
-- echo "$as_me:1519: \$? = $ac_status" >&5
-+ echo "$as_me:1330: \$? = $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
-@@ -1539,34 +1350,34 @@
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--{ { echo "$as_me:1542: error: C compiler cannot create executables" >&5
-+{ { echo "$as_me:1353: 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:1548: result: $ac_file" >&5
-+echo "$as_me:1359: 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:1553: checking whether the C compiler works" >&5
-+echo "$as_me:1364: 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:1559: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1370: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1562: \$? = $ac_status" >&5
-+ echo "$as_me:1373: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
-- { { echo "$as_me:1569: error: cannot run C compiled programs.
-+ { { echo "$as_me:1380: 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;}
-@@ -1574,24 +1385,24 @@
- fi
- fi
- fi
--echo "$as_me:1577: result: yes" >&5
-+echo "$as_me:1388: result: yes" >&5
- echo "${ECHO_T}yes" >&6
-
- 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:1584: checking whether we are cross compiling" >&5
-+echo "$as_me:1395: checking whether we are cross compiling" >&5
- echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
--echo "$as_me:1586: result: $cross_compiling" >&5
-+echo "$as_me:1397: result: $cross_compiling" >&5
- echo "${ECHO_T}$cross_compiling" >&6
-
--echo "$as_me:1589: checking for executable suffix" >&5
-+echo "$as_me:1400: checking for executable suffix" >&5
- echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
--if { (eval echo "$as_me:1591: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:1402: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:1594: \$? = $ac_status" >&5
-+ echo "$as_me:1405: \$? = $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
-@@ -1607,25 +1418,25 @@
- esac
- done
- else
-- { { echo "$as_me:1610: error: cannot compute EXEEXT: cannot compile and link" >&5
-+ { { echo "$as_me:1421: 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:1616: result: $ac_cv_exeext" >&5
-+echo "$as_me:1427: result: $ac_cv_exeext" >&5
- echo "${ECHO_T}$ac_cv_exeext" >&6
-
- rm -f conftest.$ac_ext
- EXEEXT=$ac_cv_exeext
- ac_exeext=$EXEEXT
--echo "$as_me:1622: checking for object suffix" >&5
-+echo "$as_me:1433: 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 1628 "configure"
-+#line 1439 "configure"
- #include "confdefs.h"
-
- int
-@@ -1637,10 +1448,10 @@
- }
- _ACEOF
- rm -f conftest.o conftest.obj
--if { (eval echo "$as_me:1640: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1451: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1643: \$? = $ac_status" >&5
-+ echo "$as_me:1454: \$? = $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
-@@ -1652,24 +1463,24 @@
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--{ { echo "$as_me:1655: error: cannot compute OBJEXT: cannot compile" >&5
-+{ { echo "$as_me:1466: 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
- fi
--echo "$as_me:1662: result: $ac_cv_objext" >&5
-+echo "$as_me:1473: result: $ac_cv_objext" >&5
- echo "${ECHO_T}$ac_cv_objext" >&6
- OBJEXT=$ac_cv_objext
- ac_objext=$OBJEXT
--echo "$as_me:1666: checking whether we are using the GNU C compiler" >&5
-+echo "$as_me:1477: 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 1672 "configure"
-+#line 1483 "configure"
- #include "confdefs.h"
-
- int
-@@ -1684,16 +1495,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1687: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1498: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1690: \$? = $ac_status" >&5
-+ echo "$as_me:1501: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1693: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1504: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1696: \$? = $ac_status" >&5
-+ echo "$as_me:1507: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_compiler_gnu=yes
- else
-@@ -1705,19 +1516,19 @@
- ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
- fi
--echo "$as_me:1708: result: $ac_cv_c_compiler_gnu" >&5
-+echo "$as_me:1519: 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:1714: checking whether $CC accepts -g" >&5
-+echo "$as_me:1525: 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 1720 "configure"
-+#line 1531 "configure"
- #include "confdefs.h"
-
- int
-@@ -1729,16 +1540,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1732: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1543: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1735: \$? = $ac_status" >&5
-+ echo "$as_me:1546: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1738: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1549: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1741: \$? = $ac_status" >&5
-+ echo "$as_me:1552: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_prog_cc_g=yes
- else
-@@ -1748,7 +1559,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:1751: result: $ac_cv_prog_cc_g" >&5
-+echo "$as_me:1562: 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
-@@ -1775,16 +1586,16 @@
- #endif
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1778: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1589: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1781: \$? = $ac_status" >&5
-+ echo "$as_me:1592: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1784: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1595: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1787: \$? = $ac_status" >&5
-+ echo "$as_me:1598: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- for ac_declaration in \
- ''\
-@@ -1796,7 +1607,7 @@
- 'void exit (int);'
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 1799 "configure"
-+#line 1610 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- $ac_declaration
-@@ -1809,16 +1620,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1812: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1623: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1815: \$? = $ac_status" >&5
-+ echo "$as_me:1626: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1818: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1629: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1821: \$? = $ac_status" >&5
-+ echo "$as_me:1632: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -1828,7 +1639,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 1831 "configure"
-+#line 1642 "configure"
- #include "confdefs.h"
- $ac_declaration
- int
-@@ -1840,16 +1651,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1843: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1654: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1846: \$? = $ac_status" >&5
-+ echo "$as_me:1657: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1849: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1660: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1852: \$? = $ac_status" >&5
-+ echo "$as_me:1663: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -1879,68 +1690,259 @@
-
- GCC_VERSION=none
- if test "$GCC" = yes ; then
-- echo "$as_me:1882: checking version of $CC" >&5
-+ echo "$as_me:1693: 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/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
-+ 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:1886: result: $GCC_VERSION" >&5
-+ echo "$as_me:1697: result: $GCC_VERSION" >&5
- echo "${ECHO_T}$GCC_VERSION" >&6
- 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
--echo "$as_me:1896: 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
-- CPP=
--fi
--if test -z "$CPP"; then
-- if test "${ac_cv_prog_CPP+set}" = set; then
-+echo "$as_me:1701: 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
-- # Double quotes because CPP needs to be expanded
-- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-- do
-- ac_preproc_ok=false
--for ac_c_preproc_warn_flag in '' yes
--do
-- # Use a header file that comes with gcc, so configuring glibc
-- # 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 1917 "configure"
-+ ac_cv_prog_cc_stdc=no
-+ac_save_CC=$CC
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 1709 "configure"
- #include "confdefs.h"
--#include <assert.h>
-- Syntax error
-+#include <stdarg.h>
-+#include <stdio.h>
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-+struct buf { int x; };
-+FILE * (*rcsopen) (struct buf *, struct stat *, int);
-+static char *e (p, i)
-+ char **p;
-+ int i;
-+{
-+ return p[i];
-+}
-+static char *f (char * (*g) (char **, int), char **p, ...)
-+{
-+ char *s;
-+ va_list v;
-+ va_start (v,p);
-+ s = g (p, va_arg (v,int));
-+ va_end (v);
-+ return s;
-+}
-+int test (int i, double x);
-+struct s1 {int (*f) (int a);};
-+struct s2 {int (*f) (double a);};
-+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-+int argc;
-+char **argv;
-+int
-+main ()
-+{
-+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
-+ ;
-+ return 0;
-+}
- _ACEOF
--if { (eval echo "$as_me:1922: \"$ac_cpp conftest.$ac_ext\"") >&5
-- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+# Don't try gcc -ansi; that turns off useful extensions and
-+# breaks some systems' header files.
-+# AIX -qlanglvl=ansi
-+# Ultrix and OSF/1 -std1
-+# HP-UX 10.20 and later -Ae
-+# HP-UX older versions -Aa -D_HPUX_SOURCE
-+# SVR4 -Xc -D__EXTENSIONS__
-+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:1758: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- egrep -v '^ *\+' conftest.er1 >conftest.err
-- rm -f conftest.er1
-- cat conftest.err >&5
-- echo "$as_me:1928: \$? = $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
-- :
-+ echo "$as_me:1761: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:1764: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:1767: \$? = $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
-- # Broken: fails on valid input.
-+cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest.$ac_objext
-+done
-+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:1784: result: none needed" >&5
-+echo "${ECHO_T}none needed" >&6 ;;
-+ *)
-+ echo "$as_me:1787: 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}
-+
-+echo "$as_me:1795: checking \$CC variable" >&5
-+echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6
-+case "$CC" in #(vi
-+*[\ \ ]-[IUD]*)
-+ echo "$as_me:1799: result: broken" >&5
-+echo "${ECHO_T}broken" >&6
-+ { echo "$as_me:1801: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
-+echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;}
-+ # humor him...
-+ cf_flags=`echo "$CC" | sed -e 's/^[^ ]*[ ]//'`
-+ CC=`echo "$CC" | sed -e 's/[ ].*//'`
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_flags
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+ ;;
-+*)
-+ echo "$as_me:1887: 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_compiler_gnu=$ac_cv_c_compiler_gnu
-+ac_main_return=return
-+echo "$as_me:1898: 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
-+ CPP=
-+fi
-+if test -z "$CPP"; then
-+ if test "${ac_cv_prog_CPP+set}" = set; then
-+ echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+ # Double quotes because CPP needs to be expanded
-+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-+ do
-+ ac_preproc_ok=false
-+for ac_c_preproc_warn_flag in '' yes
-+do
-+ # Use a header file that comes with gcc, so configuring glibc
-+ # 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 1919 "configure"
-+#include "confdefs.h"
-+#include <assert.h>
-+ Syntax error
-+_ACEOF
-+if { (eval echo "$as_me:1924: \"$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:1930: \$? = $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
-+ :
-+else
-+ echo "$as_me: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ # Broken: fails on valid input.
- continue
- fi
- rm -f conftest.err conftest.$ac_ext
-@@ -1948,17 +1950,17 @@
- # OK, works on sane cases. Now check whether non-existent headers
- # can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
--#line 1951 "configure"
-+#line 1953 "configure"
- #include "confdefs.h"
- #include <ac_nonexistent.h>
- _ACEOF
--if { (eval echo "$as_me:1955: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:1957: \"$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:1961: \$? = $ac_status" >&5
-+ echo "$as_me:1963: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -1995,7 +1997,7 @@
- else
- ac_cv_prog_CPP=$CPP
- fi
--echo "$as_me:1998: result: $CPP" >&5
-+echo "$as_me:2000: result: $CPP" >&5
- echo "${ECHO_T}$CPP" >&6
- ac_preproc_ok=false
- for ac_c_preproc_warn_flag in '' yes
-@@ -2005,18 +2007,18 @@
- # 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 2008 "configure"
-+#line 2010 "configure"
- #include "confdefs.h"
- #include <assert.h>
- Syntax error
- _ACEOF
--if { (eval echo "$as_me:2013: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:2015: \"$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:2019: \$? = $ac_status" >&5
-+ echo "$as_me:2021: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -2039,17 +2041,17 @@
- # OK, works on sane cases. Now check whether non-existent headers
- # can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
--#line 2042 "configure"
-+#line 2044 "configure"
- #include "confdefs.h"
- #include <ac_nonexistent.h>
- _ACEOF
--if { (eval echo "$as_me:2046: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:2048: \"$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:2052: \$? = $ac_status" >&5
-+ echo "$as_me:2054: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -2077,7 +2079,7 @@
- if $ac_preproc_ok; then
- :
- else
-- { { echo "$as_me:2080: error: C preprocessor \"$CPP\" fails sanity check" >&5
-+ { { echo "$as_me:2082: error: C preprocessor \"$CPP\" fails sanity check" >&5
- echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -2090,14 +2092,14 @@
- ac_main_return=return
-
- if test $ac_cv_c_compiler_gnu = yes; then
-- echo "$as_me:2093: checking whether $CC needs -traditional" >&5
-+ echo "$as_me:2095: 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 2100 "configure"
-+#line 2102 "configure"
- #include "confdefs.h"
- #include <sgtty.h>
- int Autoconf = TIOCGETP;
-@@ -2112,7 +2114,7 @@
-
- if test $ac_cv_prog_gcc_traditional = no; then
- cat >conftest.$ac_ext <<_ACEOF
--#line 2115 "configure"
-+#line 2117 "configure"
- #include "confdefs.h"
- #include <termio.h>
- int Autoconf = TCGETA;
-@@ -2125,14 +2127,14 @@
-
- fi
- fi
--echo "$as_me:2128: result: $ac_cv_prog_gcc_traditional" >&5
-+echo "$as_me:2130: 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:2135: checking whether $CC understands -c and -o together" >&5
-+echo "$as_me:2137: 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
-@@ -2148,15 +2150,15 @@
- # 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 -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
--if { (eval echo "$as_me:2151: \"$ac_try\"") >&5
-+if { (eval echo "$as_me:2153: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2154: \$? = $ac_status" >&5
-+ echo "$as_me:2156: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- test -f conftest2.$ac_objext && { (eval echo "$as_me:2156: \"$ac_try\"") >&5
-+ test -f conftest2.$ac_objext && { (eval echo "$as_me:2158: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2159: \$? = $ac_status" >&5
-+ echo "$as_me:2161: \$? = $ac_status" >&5
- (exit $ac_status); };
- then
- eval cf_cv_prog_CC_c_o=yes
-@@ -2167,306 +2169,12 @@
-
- fi
- if test $cf_cv_prog_CC_c_o = yes; then
-- echo "$as_me:2170: result: yes" >&5
--echo "${ECHO_T}yes" >&6
--else
-- echo "$as_me:2173: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
--echo "$as_me:2177: checking for POSIXized ISC" >&5
--echo $ECHO_N "checking for POSIXized ISC... $ECHO_C" >&6
--if test -d /etc/conf/kconfig.d &&
-- grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
--then
-- echo "$as_me:2182: result: yes" >&5
-+ echo "$as_me:2172: result: yes" >&5
- echo "${ECHO_T}yes" >&6
-- ISC=yes # If later tests want to check for ISC.
--
--cat >>confdefs.h <<\EOF
--#define _POSIX_SOURCE 1
--EOF
--
-- if test "$GCC" = yes; then
-- CC="$CC -posix"
-- else
-- CC="$CC -Xp"
-- fi
- else
-- echo "$as_me:2196: result: no" >&5
-+ echo "$as_me:2175: result: no" >&5
- echo "${ECHO_T}no" >&6
-- ISC=
--fi
--
--echo "$as_me:2201: checking for ${CC:-cc} option to accept ANSI C" >&5
--echo $ECHO_N "checking for ${CC:-cc} option to accept ANSI C... $ECHO_C" >&6
--if test "${cf_cv_ansi_cc+set}" = set; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
--else
--
--cf_cv_ansi_cc=no
--cf_save_CFLAGS="$CFLAGS"
--cf_save_CPPFLAGS="$CPPFLAGS"
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX -Aa -D_HPUX_SOURCE
--# SVR4 -Xc
--# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes)
--for cf_arg in "-DCC_HAS_PROTOS" \
-- "" \
-- -qlanglvl=ansi \
-- -std1 \
-- -Ae \
-- "-Aa -D_HPUX_SOURCE" \
-- -Xc
--do
--
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
--
--for cf_add_cflags in $cf_arg
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
--
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
--
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
--
--if test -n "$cf_new_extra_cppflags" ; then
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
--fi
--
-- cat >conftest.$ac_ext <<_ACEOF
--#line 2305 "configure"
--#include "confdefs.h"
--
--#ifndef CC_HAS_PROTOS
--#if !defined(__STDC__) || (__STDC__ != 1)
--choke me
--#endif
--#endif
--
--int
--main ()
--{
--
-- int test (int i, double x);
-- struct s1 {int (*f) (int a);};
-- struct s2 {int (*f) (double a);};
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2326: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:2329: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2332: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:2335: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- cf_cv_ansi_cc="$cf_arg"; break
--else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--done
--CFLAGS="$cf_save_CFLAGS"
--CPPFLAGS="$cf_save_CPPFLAGS"
--
- fi
--echo "$as_me:2348: result: $cf_cv_ansi_cc" >&5
--echo "${ECHO_T}$cf_cv_ansi_cc" >&6
--
--if test "$cf_cv_ansi_cc" != "no"; then
--if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
--
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
--
--for cf_add_cflags in $cf_cv_ansi_cc
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
--
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
--
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
--
--if test -n "$cf_new_extra_cppflags" ; then
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
--fi
--
--else
-- cat >>confdefs.h <<\EOF
--#define CC_HAS_PROTOS 1
--EOF
--
--fi
--fi
--
--if test "$cf_cv_ansi_cc" = "no"; then
-- { { echo "$as_me:2441: error: Your compiler does not appear to recognize prototypes.
--You have the following choices:
-- a. adjust your compiler options
-- b. get an up-to-date compiler
-- c. use a wrapper such as unproto" >&5
--echo "$as_me: error: Your compiler does not appear to recognize prototypes.
--You have the following choices:
-- a. adjust your compiler options
-- b. get an up-to-date compiler
-- c. use a wrapper such as unproto" >&2;}
-- { (exit 1); exit 1; }; }
--fi
--
--case $cf_cv_system_name in
--os2*)
-- CFLAGS="$CFLAGS -Zmt"
-- CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__"
-- CXXFLAGS="$CXXFLAGS -Zmt"
-- # autoconf's macro sets -Zexe and suffix both, which conflict:w
-- LDFLAGS="$LDFLAGS -Zmt -Zcrtdll"
-- ac_cv_exeext=.exe
-- ;;
--esac
--
--PROG_EXT="$EXEEXT"
--
--test -n "$PROG_EXT" && cat >>confdefs.h <<EOF
--#define PROG_EXT "$PROG_EXT"
--EOF
-
- test "$program_prefix" != NONE &&
- program_transform_name="s,^,$program_prefix,;$program_transform_name"
-@@ -2485,7 +2193,7 @@
- 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:2488: checking for $ac_word" >&5
-+echo "$as_me:2196: 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
-@@ -2500,7 +2208,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_AWK="$ac_prog"
--echo "$as_me:2503: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2211: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2508,21 +2216,21 @@
- fi
- AWK=$ac_cv_prog_AWK
- if test -n "$AWK"; then
-- echo "$as_me:2511: result: $AWK" >&5
-+ echo "$as_me:2219: result: $AWK" >&5
- echo "${ECHO_T}$AWK" >&6
- else
-- echo "$as_me:2514: result: no" >&5
-+ echo "$as_me:2222: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
- test -n "$AWK" && break
- done
-
--test -z "$AWK" && { { echo "$as_me:2521: error: No awk program found" >&5
-+test -z "$AWK" && { { echo "$as_me:2229: error: No awk program found" >&5
- echo "$as_me: error: No awk program found" >&2;}
- { (exit 1); exit 1; }; }
-
--echo "$as_me:2525: checking for egrep" >&5
-+echo "$as_me:2233: 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
-@@ -2532,11 +2240,11 @@
- else ac_cv_prog_egrep='egrep'
- fi
- fi
--echo "$as_me:2535: result: $ac_cv_prog_egrep" >&5
-+echo "$as_me:2243: 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:2539: error: No egrep program found" >&5
-+test -z "$EGREP" && { { echo "$as_me:2247: error: No egrep program found" >&5
- echo "$as_me: error: No egrep program found" >&2;}
- { (exit 1); exit 1; }; }
-
-@@ -2552,7 +2260,7 @@
- # 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:2555: checking for a BSD compatible install" >&5
-+echo "$as_me:2263: 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
-@@ -2601,7 +2309,7 @@
- INSTALL=$ac_install_sh
- fi
- fi
--echo "$as_me:2604: result: $INSTALL" >&5
-+echo "$as_me:2312: result: $INSTALL" >&5
- echo "${ECHO_T}$INSTALL" >&6
-
- # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-@@ -2612,18 +2320,18 @@
-
- test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
--echo "$as_me:2615: checking whether ln -s works" >&5
-+echo "$as_me:2323: 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:2619: result: yes" >&5
-+ echo "$as_me:2327: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- else
-- echo "$as_me:2622: result: no, using $LN_S" >&5
-+ echo "$as_me:2330: result: no, using $LN_S" >&5
- echo "${ECHO_T}no, using $LN_S" >&6
- fi
-
--echo "$as_me:2626: checking if $LN_S -f options work" >&5
-+echo "$as_me:2334: 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
-@@ -2635,12 +2343,12 @@
- cf_prog_ln_sf=no
- fi
- rm -f conf$$.dst conf$$src
--echo "$as_me:2638: result: $cf_prog_ln_sf" >&5
-+echo "$as_me:2346: 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:2643: checking for long file names" >&5
-+echo "$as_me:2351: 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
-@@ -2679,7 +2387,7 @@
- rm -rf $ac_xdir 2>/dev/null
- done
- fi
--echo "$as_me:2682: result: $ac_cv_sys_long_file_names" >&5
-+echo "$as_me:2390: 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
-
-@@ -2691,7 +2399,7 @@
-
- # if we find pkg-config, check if we should install the ".pc" files.
-
--echo "$as_me:2694: checking if you want to use pkg-config" >&5
-+echo "$as_me:2402: 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.
-@@ -2701,7 +2409,7 @@
- else
- cf_pkg_config=yes
- fi;
--echo "$as_me:2704: result: $cf_pkg_config" >&5
-+echo "$as_me:2412: result: $cf_pkg_config" >&5
- echo "${ECHO_T}$cf_pkg_config" >&6
-
- case $cf_pkg_config in #(vi
-@@ -2709,10 +2417,11 @@
- PKG_CONFIG=none
- ;;
- yes) #(vi
-- if test -n "$ac_tool_prefix"; then
-+
-+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:2715: checking for $ac_word" >&5
-+echo "$as_me:2424: 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
-@@ -2729,7 +2438,7 @@
- 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:2732: found $ac_dir/$ac_word" >&5
-+ echo "$as_me:2441: found $ac_dir/$ac_word" >&5
- break
- fi
- done
-@@ -2740,10 +2449,10 @@
- PKG_CONFIG=$ac_cv_path_PKG_CONFIG
-
- if test -n "$PKG_CONFIG"; then
-- echo "$as_me:2743: result: $PKG_CONFIG" >&5
-+ echo "$as_me:2452: result: $PKG_CONFIG" >&5
- echo "${ECHO_T}$PKG_CONFIG" >&6
- else
-- echo "$as_me:2746: result: no" >&5
-+ echo "$as_me:2455: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -2752,7 +2461,7 @@
- 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:2755: checking for $ac_word" >&5
-+echo "$as_me:2464: 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
-@@ -2769,7 +2478,7 @@
- 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:2772: found $ac_dir/$ac_word" >&5
-+ echo "$as_me:2481: found $ac_dir/$ac_word" >&5
- break
- fi
- done
-@@ -2781,10 +2490,10 @@
- ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
-
- if test -n "$ac_pt_PKG_CONFIG"; then
-- echo "$as_me:2784: result: $ac_pt_PKG_CONFIG" >&5
-+ echo "$as_me:2493: result: $ac_pt_PKG_CONFIG" >&5
- echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6
- else
-- echo "$as_me:2787: result: no" >&5
-+ echo "$as_me:2496: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -2815,7 +2524,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval PKG_CONFIG="$PKG_CONFIG"
- case ".$PKG_CONFIG" in #(vi
- .NONE/*)
-@@ -2827,7 +2536,7 @@
- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:2830: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
-+ { { echo "$as_me:2539: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
- echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
-@@ -2836,35 +2545,48 @@
- fi
-
- if test "$PKG_CONFIG" != none ; then
-- echo "$as_me:2839: 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
-+ echo "$as_me:2548: checking for $PKG_CONFIG library directory" >&5
-+echo $ECHO_N "checking for $PKG_CONFIG library directory... $ECHO_C" >&6
-
-- # Leave this as something that can be overridden in the environment.
-- if test -z "$PKG_CONFIG_LIBDIR" ; then
-- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`/lib/pkgconfig
-- fi
-- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'`
-- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
--
--# Check whether --enable-pc-files or --disable-pc-files was given.
--if test "${enable_pc_files+set}" = set; then
-- enableval="$enable_pc_files"
-- enable_pc_files=$enableval
-+# 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
- else
-- enable_pc_files=no
-+ PKG_CONFIG_LIBDIR=yes
- fi;
-- echo "$as_me:2856: result: $enable_pc_files" >&5
--echo "${ECHO_T}$enable_pc_files" >&6
-- else
-- echo "$as_me:2859: result: no" >&5
--echo "${ECHO_T}no" >&6
-- { echo "$as_me:2861: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&5
--echo "$as_me: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&2;}
-- enable_pc_files=no
-- fi
-+
-+ case x$PKG_CONFIG_LIBDIR in #(vi
-+ x/*) #(vi
-+ ;;
-+ xyes) #(vi
-+ # look for the library directory using the same prefix as the executable
-+ cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`
-+ case x`(arch) 2>/dev/null` in #(vi
-+ *64) #(vi
-+ for cf_config in $cf_path/share $cf_path/lib64 $cf_path/lib32 $cf_path/lib
-+ do
-+ if test -d $cf_config/pkgconfig
-+ then
-+ PKG_CONFIG_LIBDIR=$cf_config/pkgconfig
-+ break
-+ fi
-+ done
-+ ;;
-+ *)
-+ PKG_CONFIG_LIBDIR=$cf_path/lib/pkgconfig
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ ;;
-+ esac
-+
-+ echo "$as_me:2585: result: $PKG_CONFIG_LIBDIR" >&5
-+echo "${ECHO_T}$PKG_CONFIG_LIBDIR" >&6
- fi
-
--echo "$as_me:2867: checking if you want to build test-programs" >&5
-+echo "$as_me:2589: 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.
-@@ -2874,10 +2596,10 @@
- else
- cf_with_tests=yes
- fi;
--echo "$as_me:2877: result: $cf_with_tests" >&5
-+echo "$as_me:2599: result: $cf_with_tests" >&5
- echo "${ECHO_T}$cf_with_tests" >&6
-
--echo "$as_me:2880: checking if we should assume mixed-case filenames" >&5
-+echo "$as_me:2602: 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.
-@@ -2887,11 +2609,11 @@
- else
- enable_mixedcase=auto
- fi;
--echo "$as_me:2890: result: $enable_mixedcase" >&5
-+echo "$as_me:2612: result: $enable_mixedcase" >&5
- echo "${ECHO_T}$enable_mixedcase" >&6
- if test "$enable_mixedcase" = "auto" ; then
-
--echo "$as_me:2894: checking if filesystem supports mixed-case filenames" >&5
-+echo "$as_me:2616: 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
-@@ -2899,7 +2621,7 @@
-
- if test "$cross_compiling" = yes ; then
- case $target_alias in #(vi
-- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
-+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi
- cf_cv_mixedcase=no
- ;;
- *)
-@@ -2918,9 +2640,10 @@
- fi
-
- fi
--echo "$as_me:2921: result: $cf_cv_mixedcase" >&5
-+echo "$as_me:2643: result: $cf_cv_mixedcase" >&5
- echo "${ECHO_T}$cf_cv_mixedcase" >&6
--test "$cf_cv_mixedcase" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_mixedcase" = yes &&
-+cat >>confdefs.h <<\EOF
- #define MIXEDCASE_FILENAMES 1
- EOF
-
-@@ -2935,7 +2658,7 @@
- fi
-
- # do this after mixed-case option (tags/TAGS is not as important as tic).
--echo "$as_me:2938: checking whether ${MAKE-make} sets \${MAKE}" >&5
-+echo "$as_me:2661: 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
-@@ -2955,11 +2678,11 @@
- rm -f conftest.make
- fi
- if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
-- echo "$as_me:2958: result: yes" >&5
-+ echo "$as_me:2681: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- SET_MAKE=
- else
-- echo "$as_me:2962: result: no" >&5
-+ echo "$as_me:2685: result: no" >&5
- echo "${ECHO_T}no" >&6
- SET_MAKE="MAKE=${MAKE-make}"
- fi
-@@ -2968,7 +2691,7 @@
- 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:2694: 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
-@@ -2983,7 +2706,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_CTAGS="$ac_prog"
--echo "$as_me:2986: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2709: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2991,10 +2714,10 @@
- fi
- CTAGS=$ac_cv_prog_CTAGS
- if test -n "$CTAGS"; then
-- echo "$as_me:2994: result: $CTAGS" >&5
-+ echo "$as_me:2717: result: $CTAGS" >&5
- echo "${ECHO_T}$CTAGS" >&6
- else
-- echo "$as_me:2997: result: no" >&5
-+ echo "$as_me:2720: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3005,7 +2728,7 @@
- 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:3008: checking for $ac_word" >&5
-+echo "$as_me:2731: 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
-@@ -3020,7 +2743,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ETAGS="$ac_prog"
--echo "$as_me:3023: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2746: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3028,10 +2751,10 @@
- fi
- ETAGS=$ac_cv_prog_ETAGS
- if test -n "$ETAGS"; then
-- echo "$as_me:3031: result: $ETAGS" >&5
-+ echo "$as_me:2754: result: $ETAGS" >&5
- echo "${ECHO_T}$ETAGS" >&6
- else
-- echo "$as_me:3034: result: no" >&5
-+ echo "$as_me:2757: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3040,7 +2763,7 @@
-
- # 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:3043: checking for $ac_word" >&5
-+echo "$as_me:2766: 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
-@@ -3055,7 +2778,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_MAKE_LOWER_TAGS="yes"
--echo "$as_me:3058: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2781: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3064,17 +2787,17 @@
- fi
- MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS
- if test -n "$MAKE_LOWER_TAGS"; then
-- echo "$as_me:3067: result: $MAKE_LOWER_TAGS" >&5
-+ echo "$as_me:2790: result: $MAKE_LOWER_TAGS" >&5
- echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6
- else
-- echo "$as_me:3070: result: no" >&5
-+ echo "$as_me:2793: 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:3077: checking for $ac_word" >&5
-+echo "$as_me:2800: 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
-@@ -3089,7 +2812,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_MAKE_UPPER_TAGS="yes"
--echo "$as_me:3092: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2815: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3098,10 +2821,10 @@
- fi
- MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS
- if test -n "$MAKE_UPPER_TAGS"; then
-- echo "$as_me:3101: result: $MAKE_UPPER_TAGS" >&5
-+ echo "$as_me:2824: result: $MAKE_UPPER_TAGS" >&5
- echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6
- else
-- echo "$as_me:3104: result: no" >&5
-+ echo "$as_me:2827: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3121,7 +2844,7 @@
- MAKE_LOWER_TAGS="#"
- fi
-
--echo "$as_me:3124: checking for makeflags variable" >&5
-+echo "$as_me:2847: 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
-@@ -3137,7 +2860,7 @@
- CF_EOF
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | fgrep -v "ing directory" | sed -e 's,[ ]*$,,'`
- case "$cf_result" in
-- .*k)
-+ .*k|.*kw)
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`
- case "$cf_result" in
- .*CC=*) cf_cv_makeflags=
-@@ -3155,13 +2878,13 @@
- rm -f cf_makeflags.tmp
-
- fi
--echo "$as_me:3158: result: $cf_cv_makeflags" >&5
-+echo "$as_me:2881: 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:3164: checking for $ac_word" >&5
-+echo "$as_me:2887: 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
-@@ -3176,7 +2899,7 @@
- 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:3179: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2902: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3184,10 +2907,10 @@
- fi
- RANLIB=$ac_cv_prog_RANLIB
- if test -n "$RANLIB"; then
-- echo "$as_me:3187: result: $RANLIB" >&5
-+ echo "$as_me:2910: result: $RANLIB" >&5
- echo "${ECHO_T}$RANLIB" >&6
- else
-- echo "$as_me:3190: result: no" >&5
-+ echo "$as_me:2913: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3196,7 +2919,7 @@
- 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:3199: checking for $ac_word" >&5
-+echo "$as_me:2922: 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
-@@ -3211,7 +2934,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_RANLIB="ranlib"
--echo "$as_me:3214: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2937: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3220,10 +2943,10 @@
- fi
- ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
- if test -n "$ac_ct_RANLIB"; then
-- echo "$as_me:3223: result: $ac_ct_RANLIB" >&5
-+ echo "$as_me:2946: result: $ac_ct_RANLIB" >&5
- echo "${ECHO_T}$ac_ct_RANLIB" >&6
- else
-- echo "$as_me:3226: result: no" >&5
-+ echo "$as_me:2949: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3235,7 +2958,7 @@
- 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:3238: 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_LD+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-@@ -3250,7 +2973,7 @@
- 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:3253: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2976: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3258,10 +2981,10 @@
- fi
- LD=$ac_cv_prog_LD
- if test -n "$LD"; then
-- echo "$as_me:3261: result: $LD" >&5
-+ echo "$as_me:2984: result: $LD" >&5
- echo "${ECHO_T}$LD" >&6
- else
-- echo "$as_me:3264: result: no" >&5
-+ echo "$as_me:2987: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3270,7 +2993,7 @@
- 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:3273: checking for $ac_word" >&5
-+echo "$as_me:2996: 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
-@@ -3285,7 +3008,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_LD="ld"
--echo "$as_me:3288: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3011: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3294,10 +3017,10 @@
- fi
- ac_ct_LD=$ac_cv_prog_ac_ct_LD
- if test -n "$ac_ct_LD"; then
-- echo "$as_me:3297: result: $ac_ct_LD" >&5
-+ echo "$as_me:3020: result: $ac_ct_LD" >&5
- echo "${ECHO_T}$ac_ct_LD" >&6
- else
-- echo "$as_me:3300: result: no" >&5
-+ echo "$as_me:3023: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3309,7 +3032,7 @@
- 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:3312: checking for $ac_word" >&5
-+echo "$as_me:3035: 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
-@@ -3324,7 +3047,7 @@
- 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:3327: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3050: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3332,10 +3055,10 @@
- fi
- AR=$ac_cv_prog_AR
- if test -n "$AR"; then
-- echo "$as_me:3335: result: $AR" >&5
-+ echo "$as_me:3058: result: $AR" >&5
- echo "${ECHO_T}$AR" >&6
- else
-- echo "$as_me:3338: result: no" >&5
-+ echo "$as_me:3061: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3344,7 +3067,7 @@
- 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:3347: checking for $ac_word" >&5
-+echo "$as_me:3070: 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
-@@ -3359,7 +3082,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_AR="ar"
--echo "$as_me:3362: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3085: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3368,10 +3091,10 @@
- fi
- ac_ct_AR=$ac_cv_prog_ac_ct_AR
- if test -n "$ac_ct_AR"; then
-- echo "$as_me:3371: result: $ac_ct_AR" >&5
-+ echo "$as_me:3094: result: $ac_ct_AR" >&5
- echo "${ECHO_T}$ac_ct_AR" >&6
- else
-- echo "$as_me:3374: result: no" >&5
-+ echo "$as_me:3097: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3383,7 +3106,7 @@
- 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:3386: checking for $ac_word" >&5
-+echo "$as_me:3109: 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
-@@ -3398,7 +3121,7 @@
- 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:3401: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3124: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3406,10 +3129,10 @@
- fi
- AR=$ac_cv_prog_AR
- if test -n "$AR"; then
-- echo "$as_me:3409: result: $AR" >&5
-+ echo "$as_me:3132: result: $AR" >&5
- echo "${ECHO_T}$AR" >&6
- else
-- echo "$as_me:3412: result: no" >&5
-+ echo "$as_me:3135: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3418,7 +3141,7 @@
- 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:3421: checking for $ac_word" >&5
-+echo "$as_me:3144: 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
-@@ -3433,7 +3156,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_AR="ar"
--echo "$as_me:3436: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3159: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3442,10 +3165,10 @@
- fi
- ac_ct_AR=$ac_cv_prog_ac_ct_AR
- if test -n "$ac_ct_AR"; then
-- echo "$as_me:3445: result: $ac_ct_AR" >&5
-+ echo "$as_me:3168: result: $ac_ct_AR" >&5
- echo "${ECHO_T}$ac_ct_AR" >&6
- else
-- echo "$as_me:3448: result: no" >&5
-+ echo "$as_me:3171: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3454,7 +3177,7 @@
- AR="$ac_cv_prog_AR"
- fi
-
--echo "$as_me:3457: checking for options to update archives" >&5
-+echo "$as_me:3180: 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
-@@ -3477,13 +3200,13 @@
- rm -f conftest.a
-
- cat >conftest.$ac_ext <<EOF
--#line 3480 "configure"
-+#line 3203 "configure"
- int testdata[3] = { 123, 456, 789 };
- EOF
-- if { (eval echo "$as_me:3483: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:3206: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3486: \$? = $ac_status" >&5
-+ echo "$as_me:3209: \$? = $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
-@@ -3494,7 +3217,7 @@
- else
- test -n "$verbose" && echo " cannot compile test-program" 1>&6
-
--echo "${as_me:-configure}:3497: testing cannot compile test-program ..." 1>&5
-+echo "${as_me:-configure}:3220: testing cannot compile test-program ..." 1>&5
-
- break
- fi
-@@ -3502,7 +3225,7 @@
- rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext
-
- fi
--echo "$as_me:3505: result: $cf_cv_ar_flags" >&5
-+echo "$as_me:3228: result: $cf_cv_ar_flags" >&5
- echo "${ECHO_T}$cf_cv_ar_flags" >&6
-
- if test -n "$ARFLAGS" ; then
-@@ -3513,7 +3236,17 @@
- ARFLAGS=$cf_cv_ar_flags
- fi
-
--echo "$as_me:3516: checking if you have specified an install-prefix" >&5
-+ echo "$as_me:3239: checking for PATH separator" >&5
-+echo $ECHO_N "checking for PATH separator... $ECHO_C" >&6
-+ case $cf_cv_system_name in
-+ os2*) PATH_SEPARATOR=';' ;;
-+ *) ${PATH_SEPARATOR:=':'} ;;
-+ esac
-+
-+ echo "$as_me:3246: result: $PATH_SEPARATOR" >&5
-+echo "${ECHO_T}$PATH_SEPARATOR" >&6
-+
-+echo "$as_me:3249: 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.
-@@ -3526,7 +3259,7 @@
- ;;
- esac
- fi;
--echo "$as_me:3529: result: $DESTDIR" >&5
-+echo "$as_me:3262: result: $DESTDIR" >&5
- echo "${ECHO_T}$DESTDIR" >&6
-
- ###############################################################################
-@@ -3554,7 +3287,7 @@
- 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:3557: checking for $ac_word" >&5
-+echo "$as_me:3290: 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
-@@ -3569,7 +3302,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_BUILD_CC="$ac_prog"
--echo "$as_me:3572: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3305: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3577,10 +3310,10 @@
- fi
- BUILD_CC=$ac_cv_prog_BUILD_CC
- if test -n "$BUILD_CC"; then
-- echo "$as_me:3580: result: $BUILD_CC" >&5
-+ echo "$as_me:3313: result: $BUILD_CC" >&5
- echo "${ECHO_T}$BUILD_CC" >&6
- else
-- echo "$as_me:3583: result: no" >&5
-+ echo "$as_me:3316: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3588,12 +3321,12 @@
- done
-
- fi;
-- echo "$as_me:3591: checking for native build C compiler" >&5
-+ echo "$as_me:3324: checking for native build C compiler" >&5
- echo $ECHO_N "checking for native build C compiler... $ECHO_C" >&6
-- echo "$as_me:3593: result: $BUILD_CC" >&5
-+ echo "$as_me:3326: result: $BUILD_CC" >&5
- echo "${ECHO_T}$BUILD_CC" >&6
-
-- echo "$as_me:3596: checking for native build C preprocessor" >&5
-+ echo "$as_me:3329: 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.
-@@ -3603,10 +3336,10 @@
- else
- BUILD_CPP='${BUILD_CC} -E'
- fi;
-- echo "$as_me:3606: result: $BUILD_CPP" >&5
-+ echo "$as_me:3339: result: $BUILD_CPP" >&5
- echo "${ECHO_T}$BUILD_CPP" >&6
-
-- echo "$as_me:3609: checking for native build C flags" >&5
-+ echo "$as_me:3342: 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.
-@@ -3614,10 +3347,10 @@
- withval="$with_build_cflags"
- BUILD_CFLAGS="$withval"
- fi;
-- echo "$as_me:3617: result: $BUILD_CFLAGS" >&5
-+ echo "$as_me:3350: result: $BUILD_CFLAGS" >&5
- echo "${ECHO_T}$BUILD_CFLAGS" >&6
-
-- echo "$as_me:3620: checking for native build C preprocessor-flags" >&5
-+ echo "$as_me:3353: 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.
-@@ -3625,10 +3358,10 @@
- withval="$with_build_cppflags"
- BUILD_CPPFLAGS="$withval"
- fi;
-- echo "$as_me:3628: result: $BUILD_CPPFLAGS" >&5
-+ echo "$as_me:3361: result: $BUILD_CPPFLAGS" >&5
- echo "${ECHO_T}$BUILD_CPPFLAGS" >&6
-
-- echo "$as_me:3631: checking for native build linker-flags" >&5
-+ echo "$as_me:3364: 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.
-@@ -3636,10 +3369,10 @@
- withval="$with_build_ldflags"
- BUILD_LDFLAGS="$withval"
- fi;
-- echo "$as_me:3639: result: $BUILD_LDFLAGS" >&5
-+ echo "$as_me:3372: result: $BUILD_LDFLAGS" >&5
- echo "${ECHO_T}$BUILD_LDFLAGS" >&6
-
-- echo "$as_me:3642: checking for native build linker-libraries" >&5
-+ echo "$as_me:3375: 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.
-@@ -3647,7 +3380,7 @@
- withval="$with_build_libs"
- BUILD_LIBS="$withval"
- fi;
-- echo "$as_me:3650: result: $BUILD_LIBS" >&5
-+ echo "$as_me:3383: result: $BUILD_LIBS" >&5
- echo "${ECHO_T}$BUILD_LIBS" >&6
-
- # this assumes we're on Unix.
-@@ -3657,7 +3390,7 @@
- : ${BUILD_CC:='${CC}'}
-
- if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then
-- { { echo "$as_me:3660: error: Cross-build requires two compilers.
-+ { { echo "$as_me:3393: 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;}
-@@ -3682,7 +3415,7 @@
- ### shared, for example.
- cf_list_models=""
-
--echo "$as_me:3685: checking if you want to build shared C-objects" >&5
-+echo "$as_me:3418: 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.
-@@ -3692,27 +3425,27 @@
- else
- with_shared=no
- fi;
--echo "$as_me:3695: result: $with_shared" >&5
-+echo "$as_me:3428: result: $with_shared" >&5
- echo "${ECHO_T}$with_shared" >&6
- test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared"
-
--echo "$as_me:3699: checking for specified models" >&5
-+echo "$as_me:3432: 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:3702: result: $cf_list_models" >&5
-+echo "$as_me:3435: 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:3707: checking for default model" >&5
-+echo "$as_me:3440: 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:3710: result: $DFT_LWR_MODEL" >&5
-+echo "$as_me:3443: 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:3715: checking for specific curses-directory" >&5
-+echo "$as_me:3448: 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.
-@@ -3722,7 +3455,7 @@
- else
- cf_cv_curses_dir=no
- fi;
--echo "$as_me:3725: result: $cf_cv_curses_dir" >&5
-+echo "$as_me:3458: 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" )
-@@ -3741,7 +3474,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval withval="$withval"
- case ".$withval" in #(vi
- .NONE/*)
-@@ -3753,7 +3486,7 @@
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:3756: error: expected a pathname, not \"$withval\"" >&5
-+ { { echo "$as_me:3489: error: expected a pathname, not \"$withval\"" >&5
- echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
-@@ -3786,7 +3519,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 3789 "configure"
-+#line 3522 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -3798,16 +3531,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3801: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:3534: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3804: \$? = $ac_status" >&5
-+ echo "$as_me:3537: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3807: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3540: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3810: \$? = $ac_status" >&5
-+ echo "$as_me:3543: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -3824,7 +3557,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:3827: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:3560: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -3858,7 +3591,7 @@
- if test "$cf_have_libdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-
--echo "${as_me:-configure}:3861: testing adding $cf_add_libdir to library-path ..." 1>&5
-+echo "${as_me:-configure}:3594: testing adding $cf_add_libdir to library-path ..." 1>&5
-
- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
- fi
-@@ -3869,7 +3602,7 @@
- fi
- fi
-
--echo "$as_me:3872: checking if you want wide-character code" >&5
-+echo "$as_me:3605: 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.
-@@ -3879,11 +3612,11 @@
- else
- with_widec=no
- fi;
--echo "$as_me:3882: result: $with_widec" >&5
-+echo "$as_me:3615: result: $with_widec" >&5
- echo "${ECHO_T}$with_widec" >&6
- if test "$with_widec" = yes ; then
-
--echo "$as_me:3886: checking for multibyte character support" >&5
-+echo "$as_me:3619: 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
-@@ -3891,7 +3624,7 @@
-
- cf_save_LIBS="$LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 3894 "configure"
-+#line 3627 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -3904,16 +3637,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:3907: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:3640: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:3910: \$? = $ac_status" >&5
-+ echo "$as_me:3643: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:3913: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3646: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3916: \$? = $ac_status" >&5
-+ echo "$as_me:3649: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_utf8_lib=yes
- else
-@@ -3925,12 +3658,12 @@
- cf_cv_header_path_utf8=
- cf_cv_library_path_utf8=
-
--echo "${as_me:-configure}:3928: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
-+echo "${as_me:-configure}:3661: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
-
- cf_save_LIBS="$LIBS"
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 3933 "configure"
-+#line 3666 "configure"
- #include "confdefs.h"
-
- #include <libutf8.h>
-@@ -3943,16 +3676,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:3946: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:3679: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:3949: \$? = $ac_status" >&5
-+ echo "$as_me:3682: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:3952: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3685: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3955: \$? = $ac_status" >&5
-+ echo "$as_me:3688: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_find_linkage_utf8=yes
-@@ -3966,7 +3699,7 @@
- LIBS="-lutf8 $cf_save_LIBS"
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 3969 "configure"
-+#line 3702 "configure"
- #include "confdefs.h"
-
- #include <libutf8.h>
-@@ -3979,16 +3712,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:3982: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:3715: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:3985: \$? = $ac_status" >&5
-+ echo "$as_me:3718: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:3988: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3721: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3991: \$? = $ac_status" >&5
-+ echo "$as_me:3724: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_find_linkage_utf8=yes
-@@ -4005,9 +3738,9 @@
-
- test -n "$verbose" && echo " find linkage for utf8 library" 1>&6
-
--echo "${as_me:-configure}:4008: testing find linkage for utf8 library ..." 1>&5
-+echo "${as_me:-configure}:3741: testing find linkage for utf8 library ..." 1>&5
-
--echo "${as_me:-configure}:4010: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
-+echo "${as_me:-configure}:3743: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
-
- cf_save_CPPFLAGS="$CPPFLAGS"
- cf_test_CPPFLAGS="$CPPFLAGS"
-@@ -4023,7 +3756,7 @@
- -I*)
- cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
-
--test "$cf_header_path" != "NONE" && \
-+test "x$cf_header_path" != "xNONE" && \
- test -d "$cf_header_path" && \
- {
- test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
-@@ -4044,18 +3777,7 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr"
-- test -d /usr/include && cf_search="$cf_search /usr/include"
-- test -d /usr/include/utf8 && cf_search="$cf_search /usr/include/utf8"
-- test -d /usr/include/utf8/include && cf_search="$cf_search /usr/include/utf8/include"
-- test -d /usr/utf8/include && cf_search="$cf_search /usr/utf8/include"
-- test -d /usr/utf8/include/utf8 && cf_search="$cf_search /usr/utf8/include/utf8"
--}
--
--test "$prefix" != "NONE" && \
-+test "x$prefix" != "xNONE" && \
- test -d "$prefix" && \
- {
- test -n "$verbose" && echo " ... testing for include-directories under $prefix"
-@@ -4066,39 +3788,28 @@
- test -d $prefix/utf8/include/utf8 && cf_search="$cf_search $prefix/utf8/include/utf8"
- }
-
--test "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr/local"
-- test -d /usr/local/include && cf_search="$cf_search /usr/local/include"
-- test -d /usr/local/include/utf8 && cf_search="$cf_search /usr/local/include/utf8"
-- test -d /usr/local/include/utf8/include && cf_search="$cf_search /usr/local/include/utf8/include"
-- test -d /usr/local/utf8/include && cf_search="$cf_search /usr/local/utf8/include"
-- test -d /usr/local/utf8/include/utf8 && cf_search="$cf_search /usr/local/utf8/include/utf8"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /opt"
-- test -d /opt/include && cf_search="$cf_search /opt/include"
-- test -d /opt/include/utf8 && cf_search="$cf_search /opt/include/utf8"
-- test -d /opt/include/utf8/include && cf_search="$cf_search /opt/include/utf8/include"
-- test -d /opt/utf8/include && cf_search="$cf_search /opt/utf8/include"
-- test -d /opt/utf8/include/utf8 && cf_search="$cf_search /opt/utf8/include/utf8"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under $HOME"
-- test -d $HOME/include && cf_search="$cf_search $HOME/include"
-- test -d $HOME/include/utf8 && cf_search="$cf_search $HOME/include/utf8"
-- test -d $HOME/include/utf8/include && cf_search="$cf_search $HOME/include/utf8/include"
-- test -d $HOME/utf8/include && cf_search="$cf_search $HOME/utf8/include"
-- test -d $HOME/utf8/include/utf8 && cf_search="$cf_search $HOME/utf8/include/utf8"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+done
-+
- test "$includedir" != NONE && \
- test "$includedir" != "/usr/include" && \
- test -d "$includedir" && {
-@@ -4120,11 +3831,11 @@
- 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}:4123: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
-+echo "${as_me:-configure}:3834: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
-
- CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_utf8"
- cat >conftest.$ac_ext <<_ACEOF
--#line 4127 "configure"
-+#line 3838 "configure"
- #include "confdefs.h"
-
- #include <libutf8.h>
-@@ -4137,21 +3848,21 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:4140: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:3851: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:4143: \$? = $ac_status" >&5
-+ echo "$as_me:3854: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:4146: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3857: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4149: \$? = $ac_status" >&5
-+ echo "$as_me:3860: \$? = $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}:4154: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
-+echo "${as_me:-configure}:3865: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
-
- cf_cv_find_linkage_utf8=maybe
- cf_test_CPPFLAGS="$CPPFLAGS"
-@@ -4169,7 +3880,7 @@
-
- if test "$cf_cv_find_linkage_utf8" = maybe ; then
-
--echo "${as_me:-configure}:4172: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
-+echo "${as_me:-configure}:3883: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
-
- cf_save_LIBS="$LIBS"
- cf_save_LDFLAGS="$LDFLAGS"
-@@ -4185,7 +3896,7 @@
- -L*)
- cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
-
--test "$cf_library_path" != "NONE" && \
-+test "x$cf_library_path" != "xNONE" && \
- test -d "$cf_library_path" && \
- {
- test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
-@@ -4204,18 +3915,7 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr"
-- test -d /usr/lib && cf_search="$cf_search /usr/lib"
-- test -d /usr/lib/utf8 && cf_search="$cf_search /usr/lib/utf8"
-- test -d /usr/lib/utf8/lib && cf_search="$cf_search /usr/lib/utf8/lib"
-- test -d /usr/utf8/lib && cf_search="$cf_search /usr/utf8/lib"
-- test -d /usr/utf8/lib/utf8 && cf_search="$cf_search /usr/utf8/lib/utf8"
--}
--
--test "$prefix" != "NONE" && \
-+test "x$prefix" != "xNONE" && \
- test -d "$prefix" && \
- {
- test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
-@@ -4226,39 +3926,28 @@
- test -d $prefix/utf8/lib/utf8 && cf_search="$cf_search $prefix/utf8/lib/utf8"
- }
-
--test "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr/local"
-- test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib"
-- test -d /usr/local/lib/utf8 && cf_search="$cf_search /usr/local/lib/utf8"
-- test -d /usr/local/lib/utf8/lib && cf_search="$cf_search /usr/local/lib/utf8/lib"
-- test -d /usr/local/utf8/lib && cf_search="$cf_search /usr/local/utf8/lib"
-- test -d /usr/local/utf8/lib/utf8 && cf_search="$cf_search /usr/local/utf8/lib/utf8"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /opt"
-- test -d /opt/lib && cf_search="$cf_search /opt/lib"
-- test -d /opt/lib/utf8 && cf_search="$cf_search /opt/lib/utf8"
-- test -d /opt/lib/utf8/lib && cf_search="$cf_search /opt/lib/utf8/lib"
-- test -d /opt/utf8/lib && cf_search="$cf_search /opt/utf8/lib"
-- test -d /opt/utf8/lib/utf8 && cf_search="$cf_search /opt/utf8/lib/utf8"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under $HOME"
-- test -d $HOME/lib && cf_search="$cf_search $HOME/lib"
-- test -d $HOME/lib/utf8 && cf_search="$cf_search $HOME/lib/utf8"
-- test -d $HOME/lib/utf8/lib && cf_search="$cf_search $HOME/lib/utf8/lib"
-- test -d $HOME/utf8/lib && cf_search="$cf_search $HOME/utf8/lib"
-- test -d $HOME/utf8/lib/utf8 && cf_search="$cf_search $HOME/utf8/lib/utf8"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+done
-+
- cf_search="$cf_library_path_list $cf_search"
-
- for cf_cv_library_path_utf8 in $cf_search
-@@ -4266,13 +3955,13 @@
- 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}:4269: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
-+echo "${as_me:-configure}:3958: 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 4275 "configure"
-+#line 3964 "configure"
- #include "confdefs.h"
-
- #include <libutf8.h>
-@@ -4285,21 +3974,21 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:4288: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:3977: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:4291: \$? = $ac_status" >&5
-+ echo "$as_me:3980: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:4294: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3983: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4297: \$? = $ac_status" >&5
-+ echo "$as_me:3986: \$? = $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}:4302: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
-+echo "${as_me:-configure}:3991: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
-
- cf_cv_find_linkage_utf8=yes
- cf_cv_library_file_utf8="-lutf8"
-@@ -4341,13 +4030,14 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:4344: result: $cf_cv_utf8_lib" >&5
-+echo "$as_me:4033: 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
- # ncurses/ncursesw:
- if test "$cf_cv_utf8_lib" = "add-on" ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_LIBUTF8_H 1
- EOF
-
-@@ -4375,7 +4065,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 4378 "configure"
-+#line 4068 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -4387,16 +4077,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:4390: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:4080: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:4393: \$? = $ac_status" >&5
-+ echo "$as_me:4083: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:4396: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4086: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4399: \$? = $ac_status" >&5
-+ echo "$as_me:4089: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -4413,7 +4103,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:4416: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:4106: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -4447,71 +4137,140 @@
- if test "$cf_have_libdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-
--echo "${as_me:-configure}:4450: testing adding $cf_add_libdir to library-path ..." 1>&5
-+echo "${as_me:-configure}:4140: testing adding $cf_add_libdir to library-path ..." 1>&5
-+
-+ LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-+ fi
-+ fi
-+ done
-+fi
-+
-+cf_add_libs="$cf_cv_library_file_utf8"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+fi
-+
-+cf_ncuconfig_root=ncursesw
-+
-+echo "Looking for ${cf_ncuconfig_root}-config"
-+
-+if test -n "$ac_tool_prefix"; then
-+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
-+ 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:4175: 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
-+else
-+ if test -n "$NCURSES_CONFIG"; then
-+ ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # 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_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-+echo "$as_me:4190: found $ac_dir/$ac_word" >&5
-+break
-+done
-
-- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-- fi
-- fi
-- done
- fi
--
-- LIBS="$cf_cv_library_file_utf8 $LIBS"
-+fi
-+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
-+if test -n "$NCURSES_CONFIG"; then
-+ echo "$as_me:4198: result: $NCURSES_CONFIG" >&5
-+echo "${ECHO_T}$NCURSES_CONFIG" >&6
-+else
-+ echo "$as_me:4201: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
-
--cf_ncuconfig_root=ncursesw
--
--echo "Looking for ${cf_ncuconfig_root}-config"
--for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
-+ test -n "$NCURSES_CONFIG" && break
-+ done
-+fi
-+if test -z "$NCURSES_CONFIG"; then
-+ ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG
-+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
- 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:4468: checking for $ac_word" >&5
-+echo "$as_me:4214: checking for $ac_word" >&5
- echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
--if test "${ac_cv_path_NCURSES_CONFIG+set}" = set; then
-+if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- case $NCURSES_CONFIG in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test with a path.
-- ;;
-- *)
-+ if test -n "$ac_ct_NCURSES_CONFIG"; then
-+ ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # 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=.
-- if $as_executable_p "$ac_dir/$ac_word"; then
-- ac_cv_path_NCURSES_CONFIG="$ac_dir/$ac_word"
-- echo "$as_me:4485: found $ac_dir/$ac_word" >&5
-- break
--fi
-+ $as_executable_p "$ac_dir/$ac_word" || continue
-+ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog"
-+echo "$as_me:4229: found $ac_dir/$ac_word" >&5
-+break
- done
-
-- ;;
--esac
- fi
--NCURSES_CONFIG=$ac_cv_path_NCURSES_CONFIG
--
--if test -n "$NCURSES_CONFIG"; then
-- echo "$as_me:4496: result: $NCURSES_CONFIG" >&5
--echo "${ECHO_T}$NCURSES_CONFIG" >&6
-+fi
-+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
-+if test -n "$ac_ct_NCURSES_CONFIG"; then
-+ echo "$as_me:4237: result: $ac_ct_NCURSES_CONFIG" >&5
-+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
- else
-- echo "$as_me:4499: result: no" >&5
-+ echo "$as_me:4240: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-- test -n "$NCURSES_CONFIG" && break
-+ test -n "$ac_ct_NCURSES_CONFIG" && break
- done
--test -n "$NCURSES_CONFIG" || NCURSES_CONFIG="none"
-+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none"
-+
-+ NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG
-+fi
-
- if test "$NCURSES_CONFIG" != none ; then
-
- CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`"
--LIBS="`$NCURSES_CONFIG --libs` $LIBS"
-+
-+cf_add_libs="`$NCURSES_CONFIG --libs`"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
- # even with config script, some packages use no-override for curses.h
-
--echo "$as_me:4514: checking if we have identified curses headers" >&5
-+echo "$as_me:4273: 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
-@@ -4519,13 +4278,13 @@
-
- cf_cv_ncurses_header=none
- for cf_header in \
-- ncursesw/curses.h \
-- ncursesw/ncurses.h \
-- curses.h \
-- ncurses.h
-+ ncursesw/ncurses.h \
-+ ncursesw/curses.h \
-+ ncurses.h \
-+ curses.h
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 4528 "configure"
-+#line 4287 "configure"
- #include "confdefs.h"
- #include <${cf_header}>
- int
-@@ -4537,16 +4296,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:4540: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:4299: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:4543: \$? = $ac_status" >&5
-+ echo "$as_me:4302: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:4546: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4305: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4549: \$? = $ac_status" >&5
-+ echo "$as_me:4308: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_ncurses_header=$cf_header; break
- else
-@@ -4557,11 +4316,11 @@
- done
-
- fi
--echo "$as_me:4560: result: $cf_cv_ncurses_header" >&5
-+echo "$as_me:4319: 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:4564: error: No curses header-files found" >&5
-+ { { echo "$as_me:4323: error: No curses header-files found" >&5
- echo "$as_me: error: No curses header-files found" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -4571,23 +4330,23 @@
- for ac_header in $cf_cv_ncurses_header
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:4574: checking for $ac_header" >&5
-+echo "$as_me:4333: 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 4580 "configure"
-+#line 4339 "configure"
- #include "confdefs.h"
- #include <$ac_header>
- _ACEOF
--if { (eval echo "$as_me:4584: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:4343: \"$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:4590: \$? = $ac_status" >&5
-+ echo "$as_me:4349: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -4606,7 +4365,7 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:4609: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:4368: 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
-@@ -4659,7 +4418,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 4662 "configure"
-+#line 4421 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -4671,16 +4430,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:4674: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:4433: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:4677: \$? = $ac_status" >&5
-+ echo "$as_me:4436: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:4680: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4439: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4683: \$? = $ac_status" >&5
-+ echo "$as_me:4442: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -4697,7 +4456,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:4700: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:4459: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -4714,7 +4473,7 @@
-
- }
-
--echo "$as_me:4717: checking for $cf_ncuhdr_root header in include-path" >&5
-+echo "$as_me:4476: 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
-@@ -4726,7 +4485,7 @@
- do
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 4729 "configure"
-+#line 4488 "configure"
- #include "confdefs.h"
-
- #define _XOPEN_SOURCE_EXTENDED
-@@ -4758,16 +4517,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:4761: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:4520: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:4764: \$? = $ac_status" >&5
-+ echo "$as_me:4523: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:4767: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4526: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4770: \$? = $ac_status" >&5
-+ echo "$as_me:4529: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_ncurses_h=$cf_header
-
-@@ -4782,14 +4541,14 @@
- done
-
- fi
--echo "$as_me:4785: result: $cf_cv_ncurses_h" >&5
-+echo "$as_me:4544: 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:4792: checking for $cf_ncuhdr_root include-path" >&5
-+echo "$as_me:4551: 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
-@@ -4808,7 +4567,7 @@
- -I*)
- cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
-
--test "$cf_header_path" != "NONE" && \
-+test "x$cf_header_path" != "xNONE" && \
- test -d "$cf_header_path" && \
- {
- test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
-@@ -4829,18 +4588,7 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr"
-- test -d /usr/include && cf_search="$cf_search /usr/include"
-- test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root"
-- test -d /usr/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include"
-- test -d /usr/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/$cf_ncuhdr_root/include"
-- test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "$prefix" != "NONE" && \
-+test "x$prefix" != "xNONE" && \
- test -d "$prefix" && \
- {
- test -n "$verbose" && echo " ... testing for include-directories under $prefix"
-@@ -4851,39 +4599,28 @@
- test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
- }
-
--test "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr/local"
-- test -d /usr/local/include && cf_search="$cf_search /usr/local/include"
-- test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root"
-- test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include"
-- test -d /usr/local/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include"
-- test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /opt"
-- test -d /opt/include && cf_search="$cf_search /opt/include"
-- test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root"
-- test -d /opt/include/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include"
-- test -d /opt/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/$cf_ncuhdr_root/include"
-- test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under $HOME"
-- test -d $HOME/include && cf_search="$cf_search $HOME/include"
-- test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root"
-- test -d $HOME/include/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include"
-- test -d $HOME/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include"
-- test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+done
-+
- test "$includedir" != NONE && \
- test "$includedir" != "/usr/include" && \
- test -d "$includedir" && {
-@@ -4929,7 +4666,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 4932 "configure"
-+#line 4669 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -4941,16 +4678,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:4944: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:4681: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:4947: \$? = $ac_status" >&5
-+ echo "$as_me:4684: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:4950: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4687: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4953: \$? = $ac_status" >&5
-+ echo "$as_me:4690: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -4967,7 +4704,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:4970: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:4707: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -4988,7 +4725,7 @@
- do
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 4991 "configure"
-+#line 4728 "configure"
- #include "confdefs.h"
-
- #include <$cf_header>
-@@ -5012,16 +4749,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5015: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:4752: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5018: \$? = $ac_status" >&5
-+ echo "$as_me:4755: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5021: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4758: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5024: \$? = $ac_status" >&5
-+ echo "$as_me:4761: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_ncurses_h2=$cf_header
-
-@@ -5042,12 +4779,12 @@
- CPPFLAGS="$cf_save2_CPPFLAGS"
- test "$cf_cv_ncurses_h2" != no && break
- done
-- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:5045: error: not found" >&5
-+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:4782: error: not found" >&5
- echo "$as_me: error: not found" >&2;}
- { (exit 1); exit 1; }; }
-
- fi
--echo "$as_me:5050: result: $cf_cv_ncurses_h2" >&5
-+echo "$as_me:4787: 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%/[^/]*$%%'`
-@@ -5080,7 +4817,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 5083 "configure"
-+#line 4820 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -5092,16 +4829,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5095: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:4832: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5098: \$? = $ac_status" >&5
-+ echo "$as_me:4835: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5101: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4838: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5104: \$? = $ac_status" >&5
-+ echo "$as_me:4841: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -5118,7 +4855,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:5121: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:4858: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -5139,7 +4876,8 @@
-
- case $cf_cv_ncurses_header in # (vi
- *ncurses.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSES_H 1
- EOF
-
-@@ -5148,20 +4886,22 @@
-
- case $cf_cv_ncurses_header in # (vi
- ncurses/curses.h|ncurses/ncurses.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSES_NCURSES_H 1
- EOF
-
- ;;
- ncursesw/curses.h|ncursesw/ncurses.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSESW_NCURSES_H 1
- EOF
-
- ;;
- esac
-
--echo "$as_me:5164: checking for terminfo header" >&5
-+echo "$as_me:4904: 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
-@@ -5179,7 +4919,7 @@
- for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 5182 "configure"
-+#line 4922 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- #include <${cf_cv_ncurses_header:-curses.h}>
-@@ -5194,16 +4934,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5197: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:4937: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5200: \$? = $ac_status" >&5
-+ echo "$as_me:4940: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5203: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4943: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5206: \$? = $ac_status" >&5
-+ echo "$as_me:4946: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_term_header="$cf_test"
-@@ -5219,14 +4959,15 @@
- done
-
- fi
--echo "$as_me:5222: result: $cf_cv_term_header" >&5
-+echo "$as_me:4962: 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 # (vi
- *term.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_TERM_H 1
- EOF
-
-@@ -5235,13 +4976,15 @@
-
- case $cf_cv_term_header in # (vi
- ncurses/term.h) #(vi
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSES_TERM_H 1
- EOF
-
- ;;
- ncursesw/term.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSESW_TERM_H 1
- EOF
-
-@@ -5249,11 +4992,12 @@
- esac
-
- # some applications need this, but should check for NCURSES_VERSION
-+
- cat >>confdefs.h <<\EOF
- #define NCURSES 1
- EOF
-
--echo "$as_me:5256: checking for ncurses version" >&5
-+echo "$as_me:5000: 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
-@@ -5279,10 +5023,10 @@
- #endif
- EOF
- cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-- { (eval echo "$as_me:5282: \"$cf_try\"") >&5
-+ { (eval echo "$as_me:5026: \"$cf_try\"") >&5
- (eval $cf_try) 2>&5
- ac_status=$?
-- echo "$as_me:5285: \$? = $ac_status" >&5
-+ echo "$as_me:5029: \$? = $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%".*%%'`
-@@ -5292,7 +5036,7 @@
-
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 5295 "configure"
-+#line 5039 "configure"
- #include "confdefs.h"
-
- #include <${cf_cv_ncurses_header:-curses.h}>
-@@ -5317,15 +5061,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:5320: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5064: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5323: \$? = $ac_status" >&5
-+ echo "$as_me:5067: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:5325: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5069: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5328: \$? = $ac_status" >&5
-+ echo "$as_me:5072: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_ncurses_version=`cat $cf_tempfile`
-@@ -5339,9 +5083,10 @@
- rm -f $cf_tempfile
-
- fi
--echo "$as_me:5342: result: $cf_cv_ncurses_version" >&5
-+echo "$as_me:5086: result: $cf_cv_ncurses_version" >&5
- echo "${ECHO_T}$cf_cv_ncurses_version" >&6
--test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF
-+test "$cf_cv_ncurses_version" = no ||
-+cat >>confdefs.h <<\EOF
- #define NCURSES 1
- EOF
-
-@@ -5351,7 +5096,7 @@
- # to link gpm.
- cf_ncurses_LIBS=""
- cf_ncurses_SAVE="$LIBS"
--echo "$as_me:5354: checking for Gpm_Open in -lgpm" >&5
-+echo "$as_me:5099: 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
-@@ -5359,7 +5104,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lgpm $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 5362 "configure"
-+#line 5107 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -5378,16 +5123,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5381: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5126: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5384: \$? = $ac_status" >&5
-+ echo "$as_me:5129: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5387: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5132: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5390: \$? = $ac_status" >&5
-+ echo "$as_me:5135: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_gpm_Gpm_Open=yes
- else
-@@ -5398,10 +5143,10 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:5401: result: $ac_cv_lib_gpm_Gpm_Open" >&5
-+echo "$as_me:5146: 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:5404: checking for initscr in -lgpm" >&5
-+ echo "$as_me:5149: 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
-@@ -5409,7 +5154,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lgpm $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 5412 "configure"
-+#line 5157 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -5428,16 +5173,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5431: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5176: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5434: \$? = $ac_status" >&5
-+ echo "$as_me:5179: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5437: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5182: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5440: \$? = $ac_status" >&5
-+ echo "$as_me:5185: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_gpm_initscr=yes
- else
-@@ -5448,7 +5193,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:5451: result: $ac_cv_lib_gpm_initscr" >&5
-+echo "$as_me:5196: 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
- LIBS="$cf_ncurses_SAVE"
-@@ -5463,7 +5208,7 @@
- # This is only necessary if you are linking against an obsolete
- # version of ncurses (but it should do no harm, since it's static).
- if test "$cf_nculib_root" = ncurses ; then
-- echo "$as_me:5466: checking for tgoto in -lmytinfo" >&5
-+ echo "$as_me:5211: 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
-@@ -5471,7 +5216,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lmytinfo $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 5474 "configure"
-+#line 5219 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -5490,16 +5235,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5493: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5238: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5496: \$? = $ac_status" >&5
-+ echo "$as_me:5241: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5499: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5244: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5502: \$? = $ac_status" >&5
-+ echo "$as_me:5247: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_mytinfo_tgoto=yes
- else
-@@ -5510,7 +5255,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:5513: result: $ac_cv_lib_mytinfo_tgoto" >&5
-+echo "$as_me:5258: 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
- cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
-@@ -5520,22 +5265,52 @@
- ;;
- esac
-
--LIBS="$cf_ncurses_LIBS $LIBS"
-+cf_add_libs="$cf_ncurses_LIBS"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
- if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
- then
-- LIBS="-l$cf_nculib_root $LIBS"
-+
-+cf_add_libs="-l$cf_nculib_root"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- else
-
- eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
- cf_libdir=""
-- echo "$as_me:5532: checking for initscr" >&5
-+ echo "$as_me:5307: 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 5538 "configure"
-+#line 5313 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char initscr (); below. */
-@@ -5558,7 +5333,7 @@
- #if defined (__stub_initscr) || defined (__stub___initscr)
- choke me
- #else
--f = initscr;
-+f = initscr; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -5566,16 +5341,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5569: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5344: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5572: \$? = $ac_status" >&5
-+ echo "$as_me:5347: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5575: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5350: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5578: \$? = $ac_status" >&5
-+ echo "$as_me:5353: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_initscr=yes
- else
-@@ -5585,18 +5360,18 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:5588: result: $ac_cv_func_initscr" >&5
-+echo "$as_me:5363: 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'
- else
-
- cf_save_LIBS="$LIBS"
-- echo "$as_me:5595: checking for initscr in -l$cf_nculib_root" >&5
-+ echo "$as_me:5370: 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 5599 "configure"
-+#line 5374 "configure"
- #include "confdefs.h"
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
-@@ -5608,25 +5383,25 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5611: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5386: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5614: \$? = $ac_status" >&5
-+ echo "$as_me:5389: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5617: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5392: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5620: \$? = $ac_status" >&5
-+ echo "$as_me:5395: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:5622: result: yes" >&5
-+ echo "$as_me:5397: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- 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:5629: result: no" >&5
-+echo "$as_me:5404: result: no" >&5
- echo "${ECHO_T}no" >&6
-
- cf_search=
-@@ -5638,7 +5413,7 @@
- -L*)
- cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
-
--test "$cf_library_path" != "NONE" && \
-+test "x$cf_library_path" != "xNONE" && \
- test -d "$cf_library_path" && \
- {
- test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
-@@ -5657,18 +5432,7 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr"
-- test -d /usr/lib && cf_search="$cf_search /usr/lib"
-- test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root"
-- test -d /usr/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/lib/$cf_nculib_root/lib"
-- test -d /usr/$cf_nculib_root/lib && cf_search="$cf_search /usr/$cf_nculib_root/lib"
-- test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "$prefix" != "NONE" && \
-+test "x$prefix" != "xNONE" && \
- test -d "$prefix" && \
- {
- test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
-@@ -5679,48 +5443,37 @@
- test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
- }
-
--test "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr/local"
-- test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib"
-- test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root"
-- test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib"
-- test -d /usr/local/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/$cf_nculib_root/lib"
-- test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /opt"
-- test -d /opt/lib && cf_search="$cf_search /opt/lib"
-- test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root"
-- test -d /opt/lib/$cf_nculib_root/lib && cf_search="$cf_search /opt/lib/$cf_nculib_root/lib"
-- test -d /opt/$cf_nculib_root/lib && cf_search="$cf_search /opt/$cf_nculib_root/lib"
-- test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under $HOME"
-- test -d $HOME/lib && cf_search="$cf_search $HOME/lib"
-- test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root"
-- test -d $HOME/lib/$cf_nculib_root/lib && cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib"
-- test -d $HOME/$cf_nculib_root/lib && cf_search="$cf_search $HOME/$cf_nculib_root/lib"
-- test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+done
-+
- cf_search="$cf_library_path_list $cf_search"
-
- for cf_libdir in $cf_search
- do
-- echo "$as_me:5719: checking for -l$cf_nculib_root in $cf_libdir" >&5
-+ echo "$as_me:5472: 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 5723 "configure"
-+#line 5476 "configure"
- #include "confdefs.h"
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
-@@ -5732,25 +5485,25 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5735: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5488: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5738: \$? = $ac_status" >&5
-+ echo "$as_me:5491: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5741: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5494: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5744: \$? = $ac_status" >&5
-+ echo "$as_me:5497: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:5746: result: yes" >&5
-+ echo "$as_me:5499: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- 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:5753: result: no" >&5
-+echo "$as_me:5506: result: no" >&5
- echo "${ECHO_T}no" >&6
- LIBS="$cf_save_LIBS"
- fi
-@@ -5765,7 +5518,7 @@
- eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
-
- if test $cf_found_library = no ; then
-- { { echo "$as_me:5768: error: Cannot link $cf_nculib_root library" >&5
-+ { { echo "$as_me:5521: error: Cannot link $cf_nculib_root library" >&5
- echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -5773,7 +5526,7 @@
- fi
-
- if test -n "$cf_ncurses_LIBS" ; then
-- echo "$as_me:5776: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
-+ echo "$as_me:5529: 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
-@@ -5783,7 +5536,7 @@
- fi
- done
- cat >conftest.$ac_ext <<_ACEOF
--#line 5786 "configure"
-+#line 5539 "configure"
- #include "confdefs.h"
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
-@@ -5795,23 +5548,23 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5798: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5551: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5801: \$? = $ac_status" >&5
-+ echo "$as_me:5554: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5804: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5557: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5807: \$? = $ac_status" >&5
-+ echo "$as_me:5560: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:5809: result: yes" >&5
-+ echo "$as_me:5562: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--echo "$as_me:5814: result: no" >&5
-+echo "$as_me:5567: result: no" >&5
- echo "${ECHO_T}no" >&6
- LIBS="$cf_ncurses_SAVE"
- fi
-@@ -5831,57 +5584,111 @@
- cf_ncuconfig_root=ncurses
-
- echo "Looking for ${cf_ncuconfig_root}-config"
--for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
-+
-+if test -n "$ac_tool_prefix"; then
-+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
-+ 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:5593: 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
-+else
-+ if test -n "$NCURSES_CONFIG"; then
-+ ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # 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_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-+echo "$as_me:5608: found $ac_dir/$ac_word" >&5
-+break
-+done
-+
-+fi
-+fi
-+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
-+if test -n "$NCURSES_CONFIG"; then
-+ echo "$as_me:5616: result: $NCURSES_CONFIG" >&5
-+echo "${ECHO_T}$NCURSES_CONFIG" >&6
-+else
-+ echo "$as_me:5619: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+ test -n "$NCURSES_CONFIG" && break
-+ done
-+fi
-+if test -z "$NCURSES_CONFIG"; then
-+ ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG
-+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
- 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:5838: checking for $ac_word" >&5
-+echo "$as_me:5632: checking for $ac_word" >&5
- echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
--if test "${ac_cv_path_NCURSES_CONFIG+set}" = set; then
-+if test "${ac_cv_prog_ac_ct_NCURSES_CONFIG+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- case $NCURSES_CONFIG in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_NCURSES_CONFIG="$NCURSES_CONFIG" # Let the user override the test with a path.
-- ;;
-- *)
-+ if test -n "$ac_ct_NCURSES_CONFIG"; then
-+ ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # 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=.
-- if $as_executable_p "$ac_dir/$ac_word"; then
-- ac_cv_path_NCURSES_CONFIG="$ac_dir/$ac_word"
-- echo "$as_me:5855: found $ac_dir/$ac_word" >&5
-- break
--fi
-+ $as_executable_p "$ac_dir/$ac_word" || continue
-+ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_prog"
-+echo "$as_me:5647: found $ac_dir/$ac_word" >&5
-+break
- done
-
-- ;;
--esac
- fi
--NCURSES_CONFIG=$ac_cv_path_NCURSES_CONFIG
--
--if test -n "$NCURSES_CONFIG"; then
-- echo "$as_me:5866: result: $NCURSES_CONFIG" >&5
--echo "${ECHO_T}$NCURSES_CONFIG" >&6
-+fi
-+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
-+if test -n "$ac_ct_NCURSES_CONFIG"; then
-+ echo "$as_me:5655: result: $ac_ct_NCURSES_CONFIG" >&5
-+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
- else
-- echo "$as_me:5869: result: no" >&5
-+ echo "$as_me:5658: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-- test -n "$NCURSES_CONFIG" && break
-+ test -n "$ac_ct_NCURSES_CONFIG" && break
- done
--test -n "$NCURSES_CONFIG" || NCURSES_CONFIG="none"
-+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none"
-+
-+ NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG
-+fi
-
- if test "$NCURSES_CONFIG" != none ; then
-
- CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`"
--LIBS="`$NCURSES_CONFIG --libs` $LIBS"
-+
-+cf_add_libs="`$NCURSES_CONFIG --libs`"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
- # even with config script, some packages use no-override for curses.h
-
--echo "$as_me:5884: checking if we have identified curses headers" >&5
-+echo "$as_me:5691: 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
-@@ -5889,13 +5696,13 @@
-
- cf_cv_ncurses_header=none
- for cf_header in \
-- ncurses/curses.h \
-- ncurses/ncurses.h \
-- curses.h \
-- ncurses.h
-+ ncurses/ncurses.h \
-+ ncurses/curses.h \
-+ ncurses.h \
-+ curses.h
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 5898 "configure"
-+#line 5705 "configure"
- #include "confdefs.h"
- #include <${cf_header}>
- int
-@@ -5907,16 +5714,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5910: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:5717: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5913: \$? = $ac_status" >&5
-+ echo "$as_me:5720: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5916: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5723: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5919: \$? = $ac_status" >&5
-+ echo "$as_me:5726: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_ncurses_header=$cf_header; break
- else
-@@ -5927,11 +5734,11 @@
- done
-
- fi
--echo "$as_me:5930: result: $cf_cv_ncurses_header" >&5
-+echo "$as_me:5737: 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:5934: error: No curses header-files found" >&5
-+ { { echo "$as_me:5741: error: No curses header-files found" >&5
- echo "$as_me: error: No curses header-files found" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -5941,23 +5748,23 @@
- for ac_header in $cf_cv_ncurses_header
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:5944: checking for $ac_header" >&5
-+echo "$as_me:5751: 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 5950 "configure"
-+#line 5757 "configure"
- #include "confdefs.h"
- #include <$ac_header>
- _ACEOF
--if { (eval echo "$as_me:5954: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:5761: \"$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:5960: \$? = $ac_status" >&5
-+ echo "$as_me:5767: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -5976,7 +5783,7 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:5979: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:5786: 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
-@@ -6029,7 +5836,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 6032 "configure"
-+#line 5839 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -6041,16 +5848,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6044: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:5851: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:6047: \$? = $ac_status" >&5
-+ echo "$as_me:5854: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6050: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5857: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6053: \$? = $ac_status" >&5
-+ echo "$as_me:5860: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -6067,7 +5874,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:6070: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:5877: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -6084,7 +5891,7 @@
-
- }
-
--echo "$as_me:6087: checking for $cf_ncuhdr_root header in include-path" >&5
-+echo "$as_me:5894: 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
-@@ -6096,7 +5903,7 @@
- do
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 6099 "configure"
-+#line 5906 "configure"
- #include "confdefs.h"
-
- #include <$cf_header>
-@@ -6120,16 +5927,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6123: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:5930: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:6126: \$? = $ac_status" >&5
-+ echo "$as_me:5933: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6129: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5936: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6132: \$? = $ac_status" >&5
-+ echo "$as_me:5939: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_ncurses_h=$cf_header
-
-@@ -6144,14 +5951,14 @@
- done
-
- fi
--echo "$as_me:6147: result: $cf_cv_ncurses_h" >&5
-+echo "$as_me:5954: 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:6154: checking for $cf_ncuhdr_root include-path" >&5
-+echo "$as_me:5961: 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
-@@ -6170,7 +5977,7 @@
- -I*)
- cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
-
--test "$cf_header_path" != "NONE" && \
-+test "x$cf_header_path" != "xNONE" && \
- test -d "$cf_header_path" && \
- {
- test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
-@@ -6191,18 +5998,7 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr"
-- test -d /usr/include && cf_search="$cf_search /usr/include"
-- test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root"
-- test -d /usr/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include"
-- test -d /usr/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/$cf_ncuhdr_root/include"
-- test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "$prefix" != "NONE" && \
-+test "x$prefix" != "xNONE" && \
- test -d "$prefix" && \
- {
- test -n "$verbose" && echo " ... testing for include-directories under $prefix"
-@@ -6213,39 +6009,28 @@
- test -d $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $prefix/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
- }
-
--test "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr/local"
-- test -d /usr/local/include && cf_search="$cf_search /usr/local/include"
-- test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root"
-- test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include"
-- test -d /usr/local/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include"
-- test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /opt"
-- test -d /opt/include && cf_search="$cf_search /opt/include"
-- test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root"
-- test -d /opt/include/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include"
-- test -d /opt/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/$cf_ncuhdr_root/include"
-- test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under $HOME"
-- test -d $HOME/include && cf_search="$cf_search $HOME/include"
-- test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root"
-- test -d $HOME/include/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include"
-- test -d $HOME/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include"
-- test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+done
-+
- test "$includedir" != NONE && \
- test "$includedir" != "/usr/include" && \
- test -d "$includedir" && {
-@@ -6291,7 +6076,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 6294 "configure"
-+#line 6079 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -6303,16 +6088,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6306: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:6091: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:6309: \$? = $ac_status" >&5
-+ echo "$as_me:6094: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6312: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6097: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6315: \$? = $ac_status" >&5
-+ echo "$as_me:6100: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -6329,7 +6114,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:6332: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:6117: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -6350,7 +6135,7 @@
- do
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 6353 "configure"
-+#line 6138 "configure"
- #include "confdefs.h"
-
- #include <$cf_header>
-@@ -6374,16 +6159,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6377: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:6162: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:6380: \$? = $ac_status" >&5
-+ echo "$as_me:6165: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6383: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6168: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6386: \$? = $ac_status" >&5
-+ echo "$as_me:6171: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_ncurses_h2=$cf_header
-
-@@ -6404,12 +6189,12 @@
- CPPFLAGS="$cf_save2_CPPFLAGS"
- test "$cf_cv_ncurses_h2" != no && break
- done
-- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:6407: error: not found" >&5
-+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:6192: error: not found" >&5
- echo "$as_me: error: not found" >&2;}
- { (exit 1); exit 1; }; }
-
- fi
--echo "$as_me:6412: result: $cf_cv_ncurses_h2" >&5
-+echo "$as_me:6197: 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%/[^/]*$%%'`
-@@ -6442,7 +6227,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 6445 "configure"
-+#line 6230 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -6454,16 +6239,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6457: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:6242: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:6460: \$? = $ac_status" >&5
-+ echo "$as_me:6245: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6463: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6248: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6466: \$? = $ac_status" >&5
-+ echo "$as_me:6251: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -6480,7 +6265,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:6483: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:6268: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -6501,7 +6286,8 @@
-
- case $cf_cv_ncurses_header in # (vi
- *ncurses.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSES_H 1
- EOF
-
-@@ -6510,20 +6296,22 @@
-
- case $cf_cv_ncurses_header in # (vi
- ncurses/curses.h|ncurses/ncurses.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSES_NCURSES_H 1
- EOF
-
- ;;
- ncursesw/curses.h|ncursesw/ncurses.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSESW_NCURSES_H 1
- EOF
-
- ;;
- esac
-
--echo "$as_me:6526: checking for terminfo header" >&5
-+echo "$as_me:6314: 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
-@@ -6541,7 +6329,7 @@
- for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 6544 "configure"
-+#line 6332 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- #include <${cf_cv_ncurses_header:-curses.h}>
-@@ -6556,16 +6344,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6559: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:6347: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:6562: \$? = $ac_status" >&5
-+ echo "$as_me:6350: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6565: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6353: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6568: \$? = $ac_status" >&5
-+ echo "$as_me:6356: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_term_header="$cf_test"
-@@ -6581,14 +6369,15 @@
- done
-
- fi
--echo "$as_me:6584: result: $cf_cv_term_header" >&5
-+echo "$as_me:6372: 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 # (vi
- *term.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_TERM_H 1
- EOF
-
-@@ -6597,13 +6386,15 @@
-
- case $cf_cv_term_header in # (vi
- ncurses/term.h) #(vi
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSES_TERM_H 1
- EOF
-
- ;;
- ncursesw/term.h)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_NCURSESW_TERM_H 1
- EOF
-
-@@ -6611,11 +6402,12 @@
- esac
-
- # some applications need this, but should check for NCURSES_VERSION
-+
- cat >>confdefs.h <<\EOF
- #define NCURSES 1
- EOF
-
--echo "$as_me:6618: checking for ncurses version" >&5
-+echo "$as_me:6410: 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
-@@ -6641,10 +6433,10 @@
- #endif
- EOF
- cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-- { (eval echo "$as_me:6644: \"$cf_try\"") >&5
-+ { (eval echo "$as_me:6436: \"$cf_try\"") >&5
- (eval $cf_try) 2>&5
- ac_status=$?
-- echo "$as_me:6647: \$? = $ac_status" >&5
-+ echo "$as_me:6439: \$? = $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%".*%%'`
-@@ -6654,7 +6446,7 @@
-
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 6657 "configure"
-+#line 6449 "configure"
- #include "confdefs.h"
-
- #include <${cf_cv_ncurses_header:-curses.h}>
-@@ -6679,15 +6471,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:6682: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6474: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6685: \$? = $ac_status" >&5
-+ echo "$as_me:6477: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:6687: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6479: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6690: \$? = $ac_status" >&5
-+ echo "$as_me:6482: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_ncurses_version=`cat $cf_tempfile`
-@@ -6701,9 +6493,10 @@
- rm -f $cf_tempfile
-
- fi
--echo "$as_me:6704: result: $cf_cv_ncurses_version" >&5
-+echo "$as_me:6496: result: $cf_cv_ncurses_version" >&5
- echo "${ECHO_T}$cf_cv_ncurses_version" >&6
--test "$cf_cv_ncurses_version" = no || cat >>confdefs.h <<\EOF
-+test "$cf_cv_ncurses_version" = no ||
-+cat >>confdefs.h <<\EOF
- #define NCURSES 1
- EOF
-
-@@ -6713,7 +6506,7 @@
- # to link gpm.
- cf_ncurses_LIBS=""
- cf_ncurses_SAVE="$LIBS"
--echo "$as_me:6716: checking for Gpm_Open in -lgpm" >&5
-+echo "$as_me:6509: 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
-@@ -6721,7 +6514,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lgpm $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 6724 "configure"
-+#line 6517 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -6740,16 +6533,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6743: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6536: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6746: \$? = $ac_status" >&5
-+ echo "$as_me:6539: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6749: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6542: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6752: \$? = $ac_status" >&5
-+ echo "$as_me:6545: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_gpm_Gpm_Open=yes
- else
-@@ -6760,10 +6553,10 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:6763: result: $ac_cv_lib_gpm_Gpm_Open" >&5
-+echo "$as_me:6556: 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:6766: checking for initscr in -lgpm" >&5
-+ echo "$as_me:6559: 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
-@@ -6771,7 +6564,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lgpm $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 6774 "configure"
-+#line 6567 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -6790,16 +6583,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6793: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6586: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6796: \$? = $ac_status" >&5
-+ echo "$as_me:6589: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6799: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6592: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6802: \$? = $ac_status" >&5
-+ echo "$as_me:6595: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_gpm_initscr=yes
- else
-@@ -6810,7 +6603,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:6813: result: $ac_cv_lib_gpm_initscr" >&5
-+echo "$as_me:6606: 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
- LIBS="$cf_ncurses_SAVE"
-@@ -6825,7 +6618,7 @@
- # This is only necessary if you are linking against an obsolete
- # version of ncurses (but it should do no harm, since it's static).
- if test "$cf_nculib_root" = ncurses ; then
-- echo "$as_me:6828: checking for tgoto in -lmytinfo" >&5
-+ echo "$as_me:6621: 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
-@@ -6833,7 +6626,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lmytinfo $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 6836 "configure"
-+#line 6629 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -6852,16 +6645,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6855: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6648: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6858: \$? = $ac_status" >&5
-+ echo "$as_me:6651: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6861: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6654: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6864: \$? = $ac_status" >&5
-+ echo "$as_me:6657: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_mytinfo_tgoto=yes
- else
-@@ -6872,7 +6665,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:6875: result: $ac_cv_lib_mytinfo_tgoto" >&5
-+echo "$as_me:6668: 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
- cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
-@@ -6882,22 +6675,52 @@
- ;;
- esac
-
--LIBS="$cf_ncurses_LIBS $LIBS"
-+cf_add_libs="$cf_ncurses_LIBS"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
- if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
- then
-- LIBS="-l$cf_nculib_root $LIBS"
-+
-+cf_add_libs="-l$cf_nculib_root"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- else
-
- eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
- cf_libdir=""
-- echo "$as_me:6894: checking for initscr" >&5
-+ echo "$as_me:6717: 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 6900 "configure"
-+#line 6723 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char initscr (); below. */
-@@ -6920,7 +6743,7 @@
- #if defined (__stub_initscr) || defined (__stub___initscr)
- choke me
- #else
--f = initscr;
-+f = initscr; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -6928,16 +6751,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6931: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6754: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6934: \$? = $ac_status" >&5
-+ echo "$as_me:6757: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6937: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6760: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6940: \$? = $ac_status" >&5
-+ echo "$as_me:6763: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_initscr=yes
- else
-@@ -6947,18 +6770,18 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:6950: result: $ac_cv_func_initscr" >&5
-+echo "$as_me:6773: 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'
- else
-
- cf_save_LIBS="$LIBS"
-- echo "$as_me:6957: checking for initscr in -l$cf_nculib_root" >&5
-+ echo "$as_me:6780: 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 6961 "configure"
-+#line 6784 "configure"
- #include "confdefs.h"
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
-@@ -6970,25 +6793,25 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6973: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6796: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6976: \$? = $ac_status" >&5
-+ echo "$as_me:6799: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6979: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6802: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6982: \$? = $ac_status" >&5
-+ echo "$as_me:6805: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:6984: result: yes" >&5
-+ echo "$as_me:6807: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- 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:6991: result: no" >&5
-+echo "$as_me:6814: result: no" >&5
- echo "${ECHO_T}no" >&6
-
- cf_search=
-@@ -7000,7 +6823,7 @@
- -L*)
- cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
-
--test "$cf_library_path" != "NONE" && \
-+test "x$cf_library_path" != "xNONE" && \
- test -d "$cf_library_path" && \
- {
- test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
-@@ -7019,18 +6842,7 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr"
-- test -d /usr/lib && cf_search="$cf_search /usr/lib"
-- test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root"
-- test -d /usr/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/lib/$cf_nculib_root/lib"
-- test -d /usr/$cf_nculib_root/lib && cf_search="$cf_search /usr/$cf_nculib_root/lib"
-- test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "$prefix" != "NONE" && \
-+test "x$prefix" != "xNONE" && \
- test -d "$prefix" && \
- {
- test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
-@@ -7041,48 +6853,37 @@
- test -d $prefix/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $prefix/$cf_nculib_root/lib/$cf_nculib_root"
- }
-
--test "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr/local"
-- test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib"
-- test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root"
-- test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib"
-- test -d /usr/local/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/$cf_nculib_root/lib"
-- test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /opt"
-- test -d /opt/lib && cf_search="$cf_search /opt/lib"
-- test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root"
-- test -d /opt/lib/$cf_nculib_root/lib && cf_search="$cf_search /opt/lib/$cf_nculib_root/lib"
-- test -d /opt/$cf_nculib_root/lib && cf_search="$cf_search /opt/$cf_nculib_root/lib"
-- test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under $HOME"
-- test -d $HOME/lib && cf_search="$cf_search $HOME/lib"
-- test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root"
-- test -d $HOME/lib/$cf_nculib_root/lib && cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib"
-- test -d $HOME/$cf_nculib_root/lib && cf_search="$cf_search $HOME/$cf_nculib_root/lib"
-- test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+done
-+
- cf_search="$cf_library_path_list $cf_search"
-
- for cf_libdir in $cf_search
- do
-- echo "$as_me:7081: checking for -l$cf_nculib_root in $cf_libdir" >&5
-+ echo "$as_me:6882: 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 7085 "configure"
-+#line 6886 "configure"
- #include "confdefs.h"
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
-@@ -7094,25 +6895,25 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7097: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6898: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:7100: \$? = $ac_status" >&5
-+ echo "$as_me:6901: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7103: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6904: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7106: \$? = $ac_status" >&5
-+ echo "$as_me:6907: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:7108: result: yes" >&5
-+ echo "$as_me:6909: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- 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:7115: result: no" >&5
-+echo "$as_me:6916: result: no" >&5
- echo "${ECHO_T}no" >&6
- LIBS="$cf_save_LIBS"
- fi
-@@ -7127,7 +6928,7 @@
- eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
-
- if test $cf_found_library = no ; then
-- { { echo "$as_me:7130: error: Cannot link $cf_nculib_root library" >&5
-+ { { echo "$as_me:6931: error: Cannot link $cf_nculib_root library" >&5
- echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -7135,7 +6936,7 @@
- fi
-
- if test -n "$cf_ncurses_LIBS" ; then
-- echo "$as_me:7138: checking if we can link $cf_nculib_root without $cf_ncurses_LIBS" >&5
-+ echo "$as_me:6939: 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
-@@ -7145,7 +6946,7 @@
- fi
- done
- cat >conftest.$ac_ext <<_ACEOF
--#line 7148 "configure"
-+#line 6949 "configure"
- #include "confdefs.h"
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
-@@ -7157,23 +6958,23 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7160: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6961: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:7163: \$? = $ac_status" >&5
-+ echo "$as_me:6964: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7166: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6967: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7169: \$? = $ac_status" >&5
-+ echo "$as_me:6970: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:7171: result: yes" >&5
-+ echo "$as_me:6972: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--echo "$as_me:7176: result: no" >&5
-+echo "$as_me:6977: result: no" >&5
- echo "${ECHO_T}no" >&6
- LIBS="$cf_ncurses_SAVE"
- fi
-@@ -7210,10 +7011,10 @@
- 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:7213: \"$cf_try\"") >&5
-+ { (eval echo "$as_me:7014: \"$cf_try\"") >&5
- (eval $cf_try) 2>&5
- ac_status=$?
-- echo "$as_me:7216: \$? = $ac_status" >&5
-+ echo "$as_me:7017: \$? = $ac_status" >&5
- (exit $ac_status); }
- if test -f conftest.out ; then
- cf_result=`cat conftest.out | sed -e "s/^.*AUTOCONF_$cf_name[ ][ ]*//"`
-@@ -7231,9 +7032,25 @@
-
- cf_cv_timestamp=`date`
-
--echo "$as_me:7234: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5
-+echo "$as_me:7035: 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:7038: 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.
-+if test "${with_lib_prefix+set}" = set; then
-+ withval="$with_lib_prefix"
-+ with_lib_prefix=$withval
-+else
-+ with_lib_prefix=auto
-+fi;
-+echo "$as_me:7048: result: $with_lib_prefix" >&5
-+echo "${ECHO_T}$with_lib_prefix" >&6
-+
-+if test $with_lib_prefix = auto
-+then
-+
- case $cf_cv_system_name in #(vi
- OS/2*|os2*) #(vi
- LIB_PREFIX=''
-@@ -7243,7 +7060,12 @@
- esac
- cf_prefix=$LIB_PREFIX
-
--LIB_PREFIX=$cf_prefix
-+elif test $with_lib_prefix = no
-+then
-+ LIB_PREFIX=
-+else
-+ LIB_PREFIX=$with_lib_prefix
-+fi
-
- LIB_SUFFIX=
-
-@@ -7254,7 +7076,7 @@
- test -n "$GCC" && test "${ac_cv_prog_cc_g}" != yes && CC_G_OPT=''
- fi
-
--echo "$as_me:7257: checking for default loader flags" >&5
-+echo "$as_me:7079: 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='' ;;
-@@ -7262,11 +7084,11 @@
- profile) LD_MODEL='-pg';;
- shared) LD_MODEL='' ;;
- esac
--echo "$as_me:7265: result: $LD_MODEL" >&5
-+echo "$as_me:7087: result: $LD_MODEL" >&5
- echo "${ECHO_T}$LD_MODEL" >&6
-
- LD_RPATH_OPT=
--echo "$as_me:7269: checking for an rpath option" >&5
-+echo "$as_me:7091: checking for an rpath option" >&5
- echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
- case $cf_cv_system_name in #(vi
- irix*) #(vi
-@@ -7279,10 +7101,10 @@
- linux*|gnu*|k*bsd*-gnu) #(vi
- LD_RPATH_OPT="-Wl,-rpath,"
- ;;
--openbsd[2-9].*) #(vi
-+openbsd[2-9].*|mirbsd*) #(vi
- LD_RPATH_OPT="-Wl,-rpath,"
- ;;
--freebsd*) #(vi
-+dragonfly*|freebsd*) #(vi
- LD_RPATH_OPT="-rpath "
- ;;
- netbsd*) #(vi
-@@ -7297,17 +7119,33 @@
- *)
- ;;
- esac
--echo "$as_me:7300: result: $LD_RPATH_OPT" >&5
-+echo "$as_me:7122: result: $LD_RPATH_OPT" >&5
- echo "${ECHO_T}$LD_RPATH_OPT" >&6
-
- case "x$LD_RPATH_OPT" in #(vi
- x-R*)
-- echo "$as_me:7305: checking if we need a space after rpath option" >&5
-+ echo "$as_me:7127: 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"
-- LIBS="${LD_RPATH_OPT}$libdir $LIBS"
-+
-+cf_add_libs="${LD_RPATH_OPT}$libdir"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- cat >conftest.$ac_ext <<_ACEOF
--#line 7310 "configure"
-+#line 7148 "configure"
- #include "confdefs.h"
-
- int
-@@ -7319,16 +7157,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7322: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:7160: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:7325: \$? = $ac_status" >&5
-+ echo "$as_me:7163: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7328: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7166: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7331: \$? = $ac_status" >&5
-+ echo "$as_me:7169: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_rpath_space=no
- else
-@@ -7338,22 +7176,28 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS="$cf_save_LIBS"
-- echo "$as_me:7341: result: $cf_rpath_space" >&5
-+ echo "$as_me:7179: result: $cf_rpath_space" >&5
- echo "${ECHO_T}$cf_rpath_space" >&6
- test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT "
- ;;
- esac
-
-+ RM_SHARED_OPTS=
- LOCAL_LDFLAGS=
- LOCAL_LDFLAGS2=
- LD_SHARED_OPTS=
- INSTALL_LIB="-m 644"
-+ : ${rel_builddir:=.}
-+
-+ shlibdir=$libdir
-+
-+ MAKE_DLLS="#"
-
- cf_cv_do_symlinks=no
- cf_ld_rpath_opt=
- test "$cf_cv_enable_rpath" = yes && cf_ld_rpath_opt="$LD_RPATH_OPT"
-
-- echo "$as_me:7356: checking if release/abi version should be used for shared libs" >&5
-+ echo "$as_me:7200: 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.
-@@ -7368,7 +7212,7 @@
- cf_cv_shlib_version=$withval
- ;;
- *)
-- { { echo "$as_me:7371: error: option value must be one of: rel, abi, auto or no" >&5
-+ { { echo "$as_me:7215: error: option value must be one of: rel, abi, auto or no" >&5
- echo "$as_me: error: option value must be one of: rel, abi, auto or no" >&2;}
- { (exit 1); exit 1; }; }
- ;;
-@@ -7377,23 +7221,24 @@
- else
- cf_cv_shlib_version=auto
- fi;
-- echo "$as_me:7380: result: $cf_cv_shlib_version" >&5
-+ echo "$as_me:7224: result: $cf_cv_shlib_version" >&5
- echo "${ECHO_T}$cf_cv_shlib_version" >&6
-
- cf_cv_rm_so_locs=no
-+ cf_try_cflags=
-
- # Some less-capable ports of gcc support only -fpic
- CC_SHARED_OPTS=
- if test "$GCC" = yes
- then
-- echo "$as_me:7389: checking which $CC option to use" >&5
-+ echo "$as_me:7234: 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 7396 "configure"
-+#line 7241 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -7405,16 +7250,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7408: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:7253: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7411: \$? = $ac_status" >&5
-+ echo "$as_me:7256: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7414: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7259: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7417: \$? = $ac_status" >&5
-+ echo "$as_me:7262: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -7423,7 +7268,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- done
-- echo "$as_me:7426: result: $CC_SHARED_OPTS" >&5
-+ echo "$as_me:7271: result: $CC_SHARED_OPTS" >&5
- echo "${ECHO_T}$CC_SHARED_OPTS" >&6
- CFLAGS="$cf_save_CFLAGS"
- fi
-@@ -7431,10 +7276,14 @@
- cf_cv_shlib_version_infix=no
-
- case $cf_cv_system_name in #(vi
-- aix[56]*) #(vi
-+ aix4.3-9*|aix[5-7]*) #(vi
- if test "$GCC" = yes; then
- CC_SHARED_OPTS=
-- MK_SHARED_LIB='$(CC) -shared'
-+ MK_SHARED_LIB='${CC} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o $@'
-+ else
-+ # CC_SHARED_OPTS='-qpic=large -G'
-+ # perhaps "-bM:SRE -bnoentry -bexpall"
-+ MK_SHARED_LIB='${CC} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o $@'
- fi
- ;;
- beos*) #(vi
-@@ -7442,9 +7291,12 @@
- ;;
- cygwin*) #(vi
- CC_SHARED_OPTS=
-- MK_SHARED_LIB='sh ../mk_shared_lib.sh $@ ${CC} ${CFLAGS}'
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
- cf_cv_shlib_version=cygdll
- cf_cv_shlib_version_infix=cygdll
-+ shlibdir=$bindir
-+ MAKE_DLLS=
- cat >mk_shared_lib.sh <<-CF_EOF
- #!/bin/sh
- SHARED_LIB=\$1
-@@ -7455,17 +7307,39 @@
- ** SHARED_LIB \$SHARED_LIB
- ** IMPORT_LIB \$IMPORT_LIB
- EOF
-- exec \$* -shared -Wl,--out-implib=../lib/\${IMPORT_LIB} -Wl,--export-all-symbols -o ../lib/\${SHARED_LIB}
-+ exec \$* -shared -Wl,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB}
-+CF_EOF
-+ chmod +x mk_shared_lib.sh
-+ ;;
-+ msys*) #(vi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
-+ cf_cv_shlib_version=msysdll
-+ cf_cv_shlib_version_infix=msysdll
-+ shlibdir=$bindir
-+ MAKE_DLLS=
-+ cat >mk_shared_lib.sh <<-CF_EOF
-+ #!/bin/sh
-+ SHARED_LIB=\$1
-+ IMPORT_LIB=\`echo "\$1" | sed -e 's/msys-/lib/' -e 's/[0-9]*\.dll$/.dll.a/'\`
-+ shift
-+ cat <<-EOF
-+ Linking shared library
-+ ** SHARED_LIB \$SHARED_LIB
-+ ** IMPORT_LIB \$IMPORT_LIB
-+EOF
-+ exec \$* -shared -Wl,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB}
- CF_EOF
- chmod +x mk_shared_lib.sh
- ;;
- darwin*) #(vi
-- EXTRA_CFLAGS="-no-cpp-precomp"
-+ cf_try_cflags="no-cpp-precomp"
- CC_SHARED_OPTS="-dynamic"
- MK_SHARED_LIB='${CC} ${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:7468: checking if ld -search_paths_first works" >&5
-+ echo "$as_me:7342: 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
-@@ -7474,7 +7348,7 @@
- cf_save_LDFLAGS=$LDFLAGS
- LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
- cat >conftest.$ac_ext <<_ACEOF
--#line 7477 "configure"
-+#line 7351 "configure"
- #include "confdefs.h"
-
- int
-@@ -7486,16 +7360,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7489: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:7363: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:7492: \$? = $ac_status" >&5
-+ echo "$as_me:7366: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7495: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7369: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7498: \$? = $ac_status" >&5
-+ echo "$as_me:7372: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_ldflags_search_paths_first=yes
- else
-@@ -7506,12 +7380,20 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LDFLAGS=$cf_save_LDFLAGS
- fi
--echo "$as_me:7509: result: $cf_cv_ldflags_search_paths_first" >&5
-+echo "$as_me:7383: 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
- LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
- fi
- ;;
-+ hpux[7-8]*) #(vi
-+ # HP-UX 8.07 ld lacks "+b" option used for libdir search-list
-+ if test "$GCC" != yes; then
-+ CC_SHARED_OPTS='+Z'
-+ fi
-+ MK_SHARED_LIB='${LD} -b -o $@'
-+ INSTALL_LIB="-m 555"
-+ ;;
- hpux*) #(vi
- # (tested with gcc 2.7.2 -- I don't have c89)
- if test "$GCC" = yes; then
-@@ -7525,9 +7407,19 @@
- # readonly to exploit a quirk in the memory manager.
- INSTALL_LIB="-m 555"
- ;;
-+ interix*)
-+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
-+ if test "$cf_cv_shlib_version" = rel; then
-+ cf_shared_soname='`basename .${REL_VERSION}`.${ABI_VERSION}'
-+ else
-+ cf_shared_soname='`basename `'
-+ fi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o '
-+ ;;
- irix*) #(vi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- # tested with IRIX 5.2 and 'cc'.
- if test "$GCC" != yes; then
-@@ -7544,7 +7436,7 @@
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
-
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
-@@ -7556,13 +7448,40 @@
-
- MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
- ;;
-- openbsd[2-9].*) #(vi
-+ mingw*) #(vi
-+ cf_cv_shlib_version=mingw
-+ cf_cv_shlib_version_infix=mingw
-+ shlibdir=$bindir
-+ MAKE_DLLS=
-+ if test "$DFT_LWR_MODEL" = "shared" ; then
-+ LOCAL_LDFLAGS="-Wl,--enable-auto-import"
-+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
-+ EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS"
-+ fi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
-+ cat >mk_shared_lib.sh <<-CF_EOF
-+ #!/bin/sh
-+ SHARED_LIB=\$1
-+ IMPORT_LIB=\`echo "\$1" | sed -e 's/[0-9]*\.dll$/.dll.a/'\`
-+ shift
-+ cat <<-EOF
-+ Linking shared library
-+ ** SHARED_LIB \$SHARED_LIB
-+ ** IMPORT_LIB \$IMPORT_LIB
-+EOF
-+ exec \$* -shared -Wl,--enable-auto-import,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB}
-+CF_EOF
-+ chmod +x mk_shared_lib.sh
-+ ;;
-+ openbsd[2-9].*|mirbsd*) #(vi
- if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
-
-@@ -7580,12 +7499,12 @@
- MK_SHARED_LIB='${LD} -Bshareable -o $@'
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
- ;;
-- freebsd*) #(vi
-+ dragonfly*|freebsd*) #(vi
- CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
- if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then
- LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)"
-- LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${libdir} $LOCAL_LDFLAGS"
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${RPATH_LIST} $LOCAL_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
-
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
-@@ -7602,7 +7521,7 @@
- if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then
- LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- if test "$cf_cv_shlib_version" = auto; then
- if test -f /usr/libexec/ld.elf_so; then
- cf_cv_shlib_version=abi
-@@ -7620,7 +7539,7 @@
-
- MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $@'
- else
-- MK_SHARED_LIB='${LD} -shared -Bshareable -o $@'
-+ MK_SHARED_LIB='${CC} -Wl,-shared -Wl,-Bshareable -o $@'
- fi
- ;;
- osf*|mls+*) #(vi
-@@ -7686,7 +7605,7 @@
- do
- CFLAGS="$cf_shared_opts $cf_save_CFLAGS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 7689 "configure"
-+#line 7608 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -7698,16 +7617,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7701: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:7620: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7704: \$? = $ac_status" >&5
-+ echo "$as_me:7623: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7707: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7626: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7710: \$? = $ac_status" >&5
-+ echo "$as_me:7629: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -7744,22 +7663,65 @@
- test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes
- ;;
- *)
-- { echo "$as_me:7747: WARNING: ignored --with-shlib-version" >&5
-+ { echo "$as_me:7666: WARNING: ignored --with-shlib-version" >&5
- echo "$as_me: WARNING: ignored --with-shlib-version" >&2;}
- ;;
- esac
- ;;
- esac
-
-- if test -n "$cf_ld_rpath_opt" ; then
-- MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${libdir}"
-+ if test -n "$cf_try_cflags"
-+ then
-+cat > conftest.$ac_ext <<EOF
-+#line 7676 "${as_me:-configure}"
-+#include <stdio.h>
-+int main(int argc, char *argv[])
-+{
-+ printf("hello\n");
-+ return (argv[argc-1] == 0) ;
-+}
-+EOF
-+ cf_save_CFLAGS="$CFLAGS"
-+ for cf_opt in $cf_try_cflags
-+ do
-+ CFLAGS="$cf_save_CFLAGS -$cf_opt"
-+ echo "$as_me:7688: 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:7690: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:7693: \$? = $ac_status" >&5
-+ (exit $ac_status); }; then
-+ echo "$as_me:7695: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+ cf_save_CFLAGS="$CFLAGS"
-+ else
-+ echo "$as_me:7699: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+ fi
-+ done
-+ CFLAGS="$cf_save_CFLAGS"
- fi
-
-+ # RPATH_LIST is a colon-separated list of directories
-+ 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 -n "$verbose" && echo " CC_SHARED_OPTS: $CC_SHARED_OPTS" 1>&6
-+
-+echo "${as_me:-configure}:7714: 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}:7718: 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:7762: checking if you want to link sample programs with rpath option" >&5
-+ echo "$as_me:7724: 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.
-@@ -7769,7 +7731,7 @@
- else
- with_rpath_link=yes
- fi;
-- echo "$as_me:7772: result: $with_rpath_link" >&5
-+ echo "$as_me:7734: result: $with_rpath_link" >&5
- echo "${ECHO_T}$with_rpath_link" >&6
- if test "$with_rpath_link" = no
- then
-@@ -7780,13 +7742,8 @@
-
- ###############################################################################
-
-- case $cf_cv_system_name in
-- os2*) PATH_SEPARATOR=';' ;;
-- *) PATH_SEPARATOR=':' ;;
-- esac
--
- ### use option --enable-broken-linker to force on use of broken-linker support
--echo "$as_me:7789: checking if you want broken-linker support code" >&5
-+echo "$as_me:7746: 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.
-@@ -7796,7 +7753,7 @@
- else
- with_broken_linker=${BROKEN_LINKER:-no}
- fi;
--echo "$as_me:7799: result: $with_broken_linker" >&5
-+echo "$as_me:7756: result: $with_broken_linker" >&5
- echo "${ECHO_T}$with_broken_linker" >&6
-
- BROKEN_LINKER=0
-@@ -7816,7 +7773,7 @@
- BROKEN_LINKER=1
- test -n "$verbose" && echo " cygwin linker is broken anyway" 1>&6
-
--echo "${as_me:-configure}:7819: testing cygwin linker is broken anyway ..." 1>&5
-+echo "${as_me:-configure}:7776: testing cygwin linker is broken anyway ..." 1>&5
-
- ;;
- esac
-@@ -7829,10 +7786,10 @@
- cf_xopen_source=
-
- case $host_os in #(vi
--aix[456]*) #(vi
-+aix[4-7]*) #(vi
- cf_xopen_source="-D_ALL_SOURCE"
- ;;
--cygwin) #(vi
-+cygwin|msys) #(vi
- cf_XOPEN_SOURCE=600
- ;;
- darwin[0-8].*) #(vi
-@@ -7840,6 +7797,7 @@
- ;;
- darwin*) #(vi
- cf_xopen_source="-D_DARWIN_C_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- freebsd*|dragonfly*) #(vi
- # 5.x headers associate
-@@ -7857,17 +7815,18 @@
- ;;
- irix[56].*) #(vi
- cf_xopen_source="-D_SGI_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- linux*|gnu*|mint*|k*bsd*-gnu) #(vi
-
--echo "$as_me:7863: checking if we must define _GNU_SOURCE" >&5
-+echo "$as_me:7822: 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 7870 "configure"
-+#line 7829 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -7882,16 +7841,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7885: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:7844: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7888: \$? = $ac_status" >&5
-+ echo "$as_me:7847: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7891: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7850: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7894: \$? = $ac_status" >&5
-+ echo "$as_me:7853: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_gnu_source=no
- else
-@@ -7900,7 +7859,7 @@
- cf_save="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
--#line 7903 "configure"
-+#line 7862 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -7915,16 +7874,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7918: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:7877: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7921: \$? = $ac_status" >&5
-+ echo "$as_me:7880: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7924: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7883: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7927: \$? = $ac_status" >&5
-+ echo "$as_me:7886: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_gnu_source=no
- else
-@@ -7932,23 +7891,270 @@
- cat conftest.$ac_ext >&5
- cf_cv_gnu_source=yes
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS="$cf_save"
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS="$cf_save"
-+
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+echo "$as_me:7901: result: $cf_cv_gnu_source" >&5
-+echo "${ECHO_T}$cf_cv_gnu_source" >&6
-+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
-+
-+ ;;
-+minix*) #(vi
-+ cf_xopen_source="-D_NETBSD_SOURCE" # POSIX.1-2001 features are ifdef'd with this...
-+ ;;
-+mirbsd*) #(vi
-+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types
-+ cf_XOPEN_SOURCE=
-+
-+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE
-+
-+cf_save_CFLAGS="$CFLAGS"
-+cf_save_CPPFLAGS="$CPPFLAGS"
-+
-+cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \
-+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-+
-+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:7926: 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}:7932: testing if the symbol is already defined go no further ..." 1>&5
-+
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 7935 "configure"
-+#include "confdefs.h"
-+#include <sys/types.h>
-+int
-+main ()
-+{
-+
-+#ifndef _POSIX_C_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:7950: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:7953: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:7956: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:7959: \$? = $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
-+cf_want_posix_source=no
-+ case .$cf_POSIX_C_SOURCE in #(vi
-+ .[12]??*) #(vi
-+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
-+ ;;
-+ .2) #(vi
-+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
-+ cf_want_posix_source=yes
-+ ;;
-+ .*)
-+ cf_want_posix_source=yes
-+ ;;
-+ esac
-+ if test "$cf_want_posix_source" = yes ; then
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 7980 "configure"
-+#include "confdefs.h"
-+#include <sys/types.h>
-+int
-+main ()
-+{
-+
-+#ifdef _POSIX_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:7995: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ 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:8004: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ :
-+else
-+ echo "$as_me: failed program was:" >&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
-+ fi
-+
-+echo "${as_me:-configure}:8015: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
-+
-+ CFLAGS="$cf_trim_CFLAGS"
-+ CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
-+
-+echo "${as_me:-configure}:8020: testing if the second compile does not leave our definition intact error ..." 1>&5
-+
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 8023 "configure"
-+#include "confdefs.h"
-+#include <sys/types.h>
-+int
-+main ()
-+{
-+
-+#ifndef _POSIX_C_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8038: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8041: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8044: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8047: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ :
-+else
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+cf_cv_posix_c_source=no
-+fi
-+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
-+
-+fi
-+echo "$as_me:8063: 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
-+ CFLAGS="$cf_trim_CFLAGS"
-+ CPPFLAGS="$cf_trim_CPPFLAGS"
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_cv_posix_c_source
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:7942: result: $cf_cv_gnu_source" >&5
--echo "${ECHO_T}$cf_cv_gnu_source" >&6
--test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
-
- ;;
--mirbsd*) #(vi
-- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h>
-- ;;
- netbsd*) #(vi
-- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
-+ 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]*) #(vi
-+ # 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
- ;;
- openbsd*) #(vi
- # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
-@@ -7962,23 +8168,30 @@
- sco*) #(vi
- # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
- ;;
--solaris2.1[0-9]) #(vi
-- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- ;;
--solaris2.[1-9]) #(vi
-+solaris2.*) #(vi
- cf_xopen_source="-D__EXTENSIONS__"
-+ cf_cv_xopen_source=broken
-+ ;;
-+sysv4.2uw2.*) # Novell/SCO UnixWare 2.x (tested on 2.1.2)
-+ cf_XOPEN_SOURCE=
-+ cf_POSIX_C_SOURCE=
- ;;
- *)
-- echo "$as_me:7972: checking if we should define _XOPEN_SOURCE" >&5
-+
-+echo "$as_me:8181: 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 7979 "configure"
-+#line 8188 "configure"
- #include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
- #include <sys/types.h>
-+
- int
- main ()
- {
-@@ -7991,16 +8204,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7994: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8207: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7997: \$? = $ac_status" >&5
-+ echo "$as_me:8210: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8000: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8213: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8003: \$? = $ac_status" >&5
-+ echo "$as_me:8216: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_xopen_source=no
- else
-@@ -8009,9 +8222,13 @@
- cf_save="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
--#line 8012 "configure"
-+#line 8225 "configure"
- #include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
- #include <sys/types.h>
-+
- int
- main ()
- {
-@@ -8024,16 +8241,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8027: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8244: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8030: \$? = $ac_status" >&5
-+ echo "$as_me:8247: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8033: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8250: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8036: \$? = $ac_status" >&5
-+ echo "$as_me:8253: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_xopen_source=no
- else
-@@ -8048,9 +8265,10 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:8051: result: $cf_cv_xopen_source" >&5
-+echo "$as_me:8268: result: $cf_cv_xopen_source" >&5
- echo "${ECHO_T}$cf_cv_xopen_source" >&6
-- if test "$cf_cv_xopen_source" != no ; then
-+
-+if test "$cf_cv_xopen_source" != no ; then
-
- CFLAGS=`echo "$CFLAGS" | \
- sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-@@ -8060,7 +8278,7 @@
- sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
- -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-
-- cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-
- cf_fix_cppflags=no
- cf_new_cflags=
-@@ -8077,7 +8295,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -8118,7 +8336,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -8140,7 +8358,7 @@
- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
-- fi
-+fi
-
- cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE
-
-@@ -8155,16 +8373,16 @@
- sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
- -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-
--echo "$as_me:8158: checking if we should define _POSIX_C_SOURCE" >&5
-+echo "$as_me:8376: 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}:8164: testing if the symbol is already defined go no further ..." 1>&5
-+echo "${as_me:-configure}:8382: testing if the symbol is already defined go no further ..." 1>&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 8167 "configure"
-+#line 8385 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -8179,16 +8397,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8182: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8400: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8185: \$? = $ac_status" >&5
-+ echo "$as_me:8403: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8188: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8406: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8191: \$? = $ac_status" >&5
-+ echo "$as_me:8409: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_posix_c_source=no
- else
-@@ -8209,7 +8427,7 @@
- esac
- if test "$cf_want_posix_source" = yes ; then
- cat >conftest.$ac_ext <<_ACEOF
--#line 8212 "configure"
-+#line 8430 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -8224,16 +8442,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8227: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8445: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8230: \$? = $ac_status" >&5
-+ echo "$as_me:8448: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8233: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8451: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8236: \$? = $ac_status" >&5
-+ echo "$as_me:8454: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -8244,15 +8462,15 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
-
--echo "${as_me:-configure}:8247: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
-+echo "${as_me:-configure}:8465: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
-
- CFLAGS="$cf_trim_CFLAGS"
- CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
-
--echo "${as_me:-configure}:8252: testing if the second compile does not leave our definition intact error ..." 1>&5
-+echo "${as_me:-configure}:8470: testing if the second compile does not leave our definition intact error ..." 1>&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 8255 "configure"
-+#line 8473 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -8267,16 +8485,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8270: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8488: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8273: \$? = $ac_status" >&5
-+ echo "$as_me:8491: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8276: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8494: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8279: \$? = $ac_status" >&5
-+ echo "$as_me:8497: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -8292,7 +8510,7 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:8295: result: $cf_cv_posix_c_source" >&5
-+echo "$as_me:8513: 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
-@@ -8314,7 +8532,92 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+fi
-+
-+ ;;
-+esac
-+
-+if test -n "$cf_xopen_source" ; then
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_xopen_source
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-
-@@ -8355,7 +8658,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -8363,33 +8666,221 @@
- done
-
- if test -n "$cf_new_cflags" ; then
-+ test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-+
-+echo "${as_me:-configure}:8671: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
-
- CFLAGS="$CFLAGS $cf_new_cflags"
- fi
-
- if test -n "$cf_new_cppflags" ; then
-+ test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-+
-+echo "${as_me:-configure}:8679: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- 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}:8687: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
-
- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
- fi
-
-- ;;
--esac
-+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
-+ echo "$as_me:8695: 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 8698 "configure"
-+#include "confdefs.h"
-+#include <stdlib.h>
-+int
-+main ()
-+{
-+
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8713: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8716: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8719: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8722: \$? = $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
-+cf_XOPEN_SOURCE_set=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ echo "$as_me:8731: result: $cf_XOPEN_SOURCE_set" >&5
-+echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6
-+ if test $cf_XOPEN_SOURCE_set = yes
-+ then
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 8736 "configure"
-+#include "confdefs.h"
-+#include <stdlib.h>
-+int
-+main ()
-+{
-+
-+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8751: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8754: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8757: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8760: \$? = $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
-+cf_XOPEN_SOURCE_set_ok=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ if test $cf_XOPEN_SOURCE_set_ok = no
-+ then
-+ { echo "$as_me:8771: WARNING: _XOPEN_SOURCE is lower than requested" >&5
-+echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;}
-+ fi
-+ else
-+
-+echo "$as_me:8776: 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 8783 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+
-+int
-+main ()
-+{
-+
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8802: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8805: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8808: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8811: \$? = $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
-+cf_save="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 8820 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+
-+int
-+main ()
-+{
-+
-+#ifdef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8839: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8842: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8845: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8848: \$? = $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
-+cf_cv_xopen_source=$cf_XOPEN_SOURCE
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS="$cf_save"
-+
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+echo "$as_me:8863: result: $cf_cv_xopen_source" >&5
-+echo "${ECHO_T}$cf_cv_xopen_source" >&6
-+
-+if test "$cf_cv_xopen_source" != no ; then
-+
-+CFLAGS=`echo "$CFLAGS" | \
-+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-+
-+CPPFLAGS=`echo "$CPPFLAGS" | \
-+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-
--if test -n "$cf_xopen_source" ; then
-+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-
- 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_temp_xopen_source
- do
- case $cf_fix_cppflags in
- no)
-@@ -8399,7 +8890,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -8440,7 +8931,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -8464,6 +8955,9 @@
-
- fi
-
-+ fi
-+fi
-+
- # Check whether --enable-largefile or --disable-largefile was given.
- if test "${enable_largefile+set}" = set; then
- enableval="$enable_largefile"
-@@ -8471,7 +8965,7 @@
- fi;
- if test "$enable_largefile" != no; then
-
-- echo "$as_me:8474: checking for special C compiler options needed for large files" >&5
-+ echo "$as_me:8968: 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
-@@ -8483,7 +8977,7 @@
- # 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 8486 "configure"
-+#line 8980 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-@@ -8503,16 +8997,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8506: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9000: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8509: \$? = $ac_status" >&5
-+ echo "$as_me:9003: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8512: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9006: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8515: \$? = $ac_status" >&5
-+ echo "$as_me:9009: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -8522,16 +9016,16 @@
- rm -f conftest.$ac_objext
- CC="$CC -n32"
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8525: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9019: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8528: \$? = $ac_status" >&5
-+ echo "$as_me:9022: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8531: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9025: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8534: \$? = $ac_status" >&5
-+ echo "$as_me:9028: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_sys_largefile_CC=' -n32'; break
- else
-@@ -8545,13 +9039,13 @@
- rm -f conftest.$ac_ext
- fi
- fi
--echo "$as_me:8548: result: $ac_cv_sys_largefile_CC" >&5
-+echo "$as_me:9042: 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:8554: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-+ echo "$as_me:9048: 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
-@@ -8559,7 +9053,7 @@
- while :; do
- ac_cv_sys_file_offset_bits=no
- cat >conftest.$ac_ext <<_ACEOF
--#line 8562 "configure"
-+#line 9056 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-@@ -8579,16 +9073,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8582: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9076: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8585: \$? = $ac_status" >&5
-+ echo "$as_me:9079: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8588: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9082: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8591: \$? = $ac_status" >&5
-+ echo "$as_me:9085: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -8597,7 +9091,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 8600 "configure"
-+#line 9094 "configure"
- #include "confdefs.h"
- #define _FILE_OFFSET_BITS 64
- #include <sys/types.h>
-@@ -8618,16 +9112,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8621: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9115: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8624: \$? = $ac_status" >&5
-+ echo "$as_me:9118: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8627: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9121: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8630: \$? = $ac_status" >&5
-+ echo "$as_me:9124: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_sys_file_offset_bits=64; break
- else
-@@ -8638,7 +9132,7 @@
- break
- done
- fi
--echo "$as_me:8641: result: $ac_cv_sys_file_offset_bits" >&5
-+echo "$as_me:9135: 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
-
-@@ -8648,7 +9142,7 @@
-
- fi
- rm -rf conftest*
-- echo "$as_me:8651: checking for _LARGE_FILES value needed for large files" >&5
-+ echo "$as_me:9145: 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
-@@ -8656,7 +9150,7 @@
- while :; do
- ac_cv_sys_large_files=no
- cat >conftest.$ac_ext <<_ACEOF
--#line 8659 "configure"
-+#line 9153 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-@@ -8676,16 +9170,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8679: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9173: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8682: \$? = $ac_status" >&5
-+ echo "$as_me:9176: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8685: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9179: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8688: \$? = $ac_status" >&5
-+ echo "$as_me:9182: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -8694,7 +9188,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 8697 "configure"
-+#line 9191 "configure"
- #include "confdefs.h"
- #define _LARGE_FILES 1
- #include <sys/types.h>
-@@ -8715,16 +9209,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8718: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9212: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8721: \$? = $ac_status" >&5
-+ echo "$as_me:9215: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8724: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9218: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8727: \$? = $ac_status" >&5
-+ echo "$as_me:9221: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_sys_large_files=1; break
- else
-@@ -8735,7 +9229,7 @@
- break
- done
- fi
--echo "$as_me:8738: result: $ac_cv_sys_large_files" >&5
-+echo "$as_me:9232: 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
-
-@@ -8748,7 +9242,7 @@
- fi
-
- if test "$enable_largefile" != no ; then
-- echo "$as_me:8751: checking for _LARGEFILE_SOURCE value needed for large files" >&5
-+ echo "$as_me:9245: 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
-@@ -8756,7 +9250,7 @@
- while :; do
- ac_cv_sys_largefile_source=no
- cat >conftest.$ac_ext <<_ACEOF
--#line 8759 "configure"
-+#line 9253 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -8768,16 +9262,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8771: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9265: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8774: \$? = $ac_status" >&5
-+ echo "$as_me:9268: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8777: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9271: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8780: \$? = $ac_status" >&5
-+ echo "$as_me:9274: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -8786,7 +9280,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 8789 "configure"
-+#line 9283 "configure"
- #include "confdefs.h"
- #define _LARGEFILE_SOURCE 1
- #include <stdio.h>
-@@ -8799,16 +9293,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8802: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9296: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8805: \$? = $ac_status" >&5
-+ echo "$as_me:9299: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8808: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9302: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8811: \$? = $ac_status" >&5
-+ echo "$as_me:9305: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_sys_largefile_source=1; break
- else
-@@ -8819,7 +9313,7 @@
- break
- done
- fi
--echo "$as_me:8822: result: $ac_cv_sys_largefile_source" >&5
-+echo "$as_me:9316: 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
-
-@@ -8833,13 +9327,13 @@
- # 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:8836: checking for fseeko" >&5
-+echo "$as_me:9330: 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 8842 "configure"
-+#line 9336 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -8851,16 +9345,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8854: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9348: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8857: \$? = $ac_status" >&5
-+ echo "$as_me:9351: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8860: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9354: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8863: \$? = $ac_status" >&5
-+ echo "$as_me:9357: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_fseeko=yes
- else
-@@ -8870,7 +9364,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:8873: result: $ac_cv_func_fseeko" >&5
-+echo "$as_me:9367: result: $ac_cv_func_fseeko" >&5
- echo "${ECHO_T}$ac_cv_func_fseeko" >&6
- if test $ac_cv_func_fseeko = yes; then
-
-@@ -8891,14 +9385,14 @@
- test "$ac_cv_sys_largefile_source" != no && CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE "
- test "$ac_cv_sys_file_offset_bits" != no && CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits "
-
-- echo "$as_me:8894: checking whether to use struct dirent64" >&5
-+ echo "$as_me:9388: 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 8901 "configure"
-+#line 9395 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -8919,16 +9413,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8922: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9416: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8925: \$? = $ac_status" >&5
-+ echo "$as_me:9419: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8928: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9422: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8931: \$? = $ac_status" >&5
-+ echo "$as_me:9425: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_struct_dirent64=yes
- else
-@@ -8939,16 +9433,17 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:8942: result: $cf_cv_struct_dirent64" >&5
-+echo "$as_me:9436: result: $cf_cv_struct_dirent64" >&5
- echo "${ECHO_T}$cf_cv_struct_dirent64" >&6
-- test "$cf_cv_struct_dirent64" = yes && cat >>confdefs.h <<\EOF
-+ test "$cf_cv_struct_dirent64" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_STRUCT_DIRENT64 1
- EOF
-
- fi
-
- ### Enable compiling-in rcs id's
--echo "$as_me:8951: checking if RCS identifiers should be compiled-in" >&5
-+echo "$as_me:9446: 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.
-@@ -8958,16 +9453,17 @@
- else
- with_rcs_ids=no
- fi;
--echo "$as_me:8961: result: $with_rcs_ids" >&5
-+echo "$as_me:9456: result: $with_rcs_ids" >&5
- echo "${ECHO_T}$with_rcs_ids" >&6
--test "$with_rcs_ids" = yes && cat >>confdefs.h <<\EOF
-+test "$with_rcs_ids" = yes &&
-+cat >>confdefs.h <<\EOF
- #define USE_RCS_IDS 1
- EOF
-
- ###############################################################################
-
- ### Note that some functions (such as const) are normally disabled anyway.
--echo "$as_me:8970: checking if you want to build with function extensions" >&5
-+echo "$as_me:9466: 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.
-@@ -8977,15 +9473,16 @@
- else
- with_ext_funcs=yes
- fi;
--echo "$as_me:8980: result: $with_ext_funcs" >&5
-+echo "$as_me:9476: result: $with_ext_funcs" >&5
- echo "${ECHO_T}$with_ext_funcs" >&6
- if test "$with_ext_funcs" = yes ; then
- NCURSES_EXT_FUNCS=1
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_USE_DEFAULT_COLORS 1
- EOF
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define NCURSES_EXT_FUNCS 1
- EOF
-
-@@ -8994,7 +9491,7 @@
- fi
-
- ### use option --enable-const to turn on use of const beyond that in XSI.
--echo "$as_me:8997: checking for extended use of const keyword" >&5
-+echo "$as_me:9494: 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.
-@@ -9004,7 +9501,7 @@
- else
- with_ext_const=no
- fi;
--echo "$as_me:9007: result: $with_ext_const" >&5
-+echo "$as_me:9504: result: $with_ext_const" >&5
- echo "${ECHO_T}$with_ext_const" >&6
- NCURSES_CONST='/*nothing*/'
- if test "$with_ext_const" = yes ; then
-@@ -9014,7 +9511,7 @@
- ###############################################################################
- # These options are relatively safe to experiment with.
-
--echo "$as_me:9017: checking if you want all development code" >&5
-+echo "$as_me:9514: 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.
-@@ -9024,7 +9521,7 @@
- else
- with_develop=no
- fi;
--echo "$as_me:9027: result: $with_develop" >&5
-+echo "$as_me:9524: result: $with_develop" >&5
- echo "${ECHO_T}$with_develop" >&6
-
- ###############################################################################
-@@ -9033,7 +9530,7 @@
- # This is still experimental (20080329), but should ultimately be moved to
- # the script-block --with-normal, etc.
-
--echo "$as_me:9036: checking if you want to link with the pthread library" >&5
-+echo "$as_me:9533: 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.
-@@ -9043,27 +9540,27 @@
- else
- with_pthread=no
- fi;
--echo "$as_me:9046: result: $with_pthread" >&5
-+echo "$as_me:9543: result: $with_pthread" >&5
- echo "${ECHO_T}$with_pthread" >&6
-
- if test "$with_pthread" != no ; then
-- echo "$as_me:9050: checking for pthread.h" >&5
-+ echo "$as_me:9547: 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 9056 "configure"
-+#line 9553 "configure"
- #include "confdefs.h"
- #include <pthread.h>
- _ACEOF
--if { (eval echo "$as_me:9060: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:9557: \"$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:9066: \$? = $ac_status" >&5
-+ echo "$as_me:9563: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -9082,20 +9579,38 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:9085: result: $ac_cv_header_pthread_h" >&5
-+echo "$as_me:9582: 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
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_PTHREADS_H 1
- EOF
-
-- echo "$as_me:9093: checking if we can link with the pthread library" >&5
--echo $ECHO_N "checking if we can link with the pthread library... $ECHO_C" >&6
-- cf_save_LIBS="$LIBS"
-- LIBS="-lpthread $LIBS"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 9098 "configure"
-+ for cf_lib_pthread in pthread c_r
-+ do
-+ echo "$as_me:9592: 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"
-+
-+cf_add_libs="-l$cf_lib_pthread"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 9613 "configure"
- #include "confdefs.h"
-
- #include <pthread.h>
-@@ -9104,23 +9619,24 @@
- main ()
- {
-
-- int rc = pthread_create(0,0,0,0);
-+ int rc = pthread_create(0,0,0,0);
-+ int r2 = pthread_mutexattr_settype(0, 0);
-
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9114: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9630: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9117: \$? = $ac_status" >&5
-+ echo "$as_me:9633: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9120: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9636: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9123: \$? = $ac_status" >&5
-+ echo "$as_me:9639: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- with_pthread=yes
- else
-@@ -9129,27 +9645,45 @@
- with_pthread=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- LIBS="$cf_save_LIBS"
-- echo "$as_me:9133: result: $with_pthread" >&5
-+ LIBS="$cf_save_LIBS"
-+ echo "$as_me:9649: result: $with_pthread" >&5
- echo "${ECHO_T}$with_pthread" >&6
-+ test "$with_pthread" = yes && break
-+ done
-+
-+ if test "$with_pthread" = yes ; then
-+
-+cf_add_libs="-l$cf_lib_pthread"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
-- if test "$with_pthread" = yes ; then
-- LIBS="-lpthread $LIBS"
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_LIBPTHREADS 1
- EOF
-
-- else
-- { { echo "$as_me:9143: error: Cannot link with pthread library" >&5
-+ else
-+ { { echo "$as_me:9677: error: Cannot link with pthread library" >&5
- echo "$as_me: error: Cannot link with pthread library" >&2;}
- { (exit 1); exit 1; }; }
-- fi
-+ fi
-
- fi
-
- fi
-
--echo "$as_me:9152: checking if you want to use weak-symbols for pthreads" >&5
-+echo "$as_me:9686: 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.
-@@ -9159,18 +9693,18 @@
- else
- use_weak_symbols=no
- fi;
--echo "$as_me:9162: result: $use_weak_symbols" >&5
-+echo "$as_me:9696: result: $use_weak_symbols" >&5
- echo "${ECHO_T}$use_weak_symbols" >&6
- if test "$use_weak_symbols" = yes ; then
-
--echo "$as_me:9166: checking if $CC supports weak symbols" >&5
-+echo "$as_me:9700: 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 9173 "configure"
-+#line 9707 "configure"
- #include "confdefs.h"
-
- #include <stdio.h>
-@@ -9196,16 +9730,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:9199: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9733: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9202: \$? = $ac_status" >&5
-+ echo "$as_me:9736: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:9205: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9739: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9208: \$? = $ac_status" >&5
-+ echo "$as_me:9742: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_weak_symbols=yes
- else
-@@ -9216,7 +9750,7 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:9219: result: $cf_cv_weak_symbols" >&5
-+echo "$as_me:9753: result: $cf_cv_weak_symbols" >&5
- echo "${ECHO_T}$cf_cv_weak_symbols" >&6
-
- else
-@@ -9224,7 +9758,8 @@
- fi
-
- if test $cf_cv_weak_symbols = yes ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define USE_WEAK_SYMBOLS 1
- EOF
-
-@@ -9232,7 +9767,8 @@
-
- PTHREAD=
- if test "$with_pthread" = "yes" ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define USE_PTHREADS 1
- EOF
-
-@@ -9243,13 +9779,13 @@
- fi
-
- # OpenSUSE is installing ncurses6, using reentrant option.
--echo "$as_me:9246: checking for _nc_TABSIZE" >&5
-+echo "$as_me:9782: 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 9252 "configure"
-+#line 9788 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char _nc_TABSIZE (); below. */
-@@ -9272,7 +9808,7 @@
- #if defined (__stub__nc_TABSIZE) || defined (__stub____nc_TABSIZE)
- choke me
- #else
--f = _nc_TABSIZE;
-+f = _nc_TABSIZE; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -9280,16 +9816,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9283: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9819: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9286: \$? = $ac_status" >&5
-+ echo "$as_me:9822: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9289: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9825: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9292: \$? = $ac_status" >&5
-+ echo "$as_me:9828: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func__nc_TABSIZE=yes
- else
-@@ -9299,7 +9835,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:9302: result: $ac_cv_func__nc_TABSIZE" >&5
-+echo "$as_me:9838: 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
- assume_reentrant=yes
-@@ -9311,7 +9847,7 @@
- # 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:9314: checking if you want experimental reentrant code" >&5
-+echo "$as_me:9850: 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.
-@@ -9321,7 +9857,7 @@
- else
- with_reentrant=$assume_reentrant
- fi;
--echo "$as_me:9324: result: $with_reentrant" >&5
-+echo "$as_me:9860: result: $with_reentrant" >&5
- echo "${ECHO_T}$with_reentrant" >&6
- if test "$with_reentrant" = yes ; then
- cf_cv_enable_reentrant=1
-@@ -9333,7 +9869,8 @@
- elif test "$assume_reentrant" = no ; then
- LIB_SUFFIX="t${LIB_SUFFIX}"
- fi
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define USE_REENTRANT 1
- EOF
-
-@@ -9343,7 +9880,7 @@
-
- ### Allow using a different wrap-prefix
- if test "$cf_cv_enable_reentrant" != 0 || test "$BROKEN_LINKER" = 1 ; then
-- echo "$as_me:9346: checking for prefix used to wrap public variables" >&5
-+ echo "$as_me:9883: 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.
-@@ -9353,7 +9890,7 @@
- else
- NCURSES_WRAP_PREFIX=_nc_
- fi;
-- echo "$as_me:9356: result: $NCURSES_WRAP_PREFIX" >&5
-+ echo "$as_me:9893: result: $NCURSES_WRAP_PREFIX" >&5
- echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6
- else
- NCURSES_WRAP_PREFIX=_nc_
-@@ -9366,26 +9903,46 @@
- ###############################################################################
-
- ### use option --disable-echo to suppress full display compiling commands
--echo "$as_me:9369: checking if you want to display full commands during build" >&5
--echo $ECHO_N "checking if you want to display full commands during build... $ECHO_C" >&6
-+
-+echo "$as_me:9907: 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.
- if test "${enable_echo+set}" = set; then
- enableval="$enable_echo"
-- with_echo=$enableval
-+ test "$enableval" != no && enableval=yes
-+ if test "$enableval" != "yes" ; then
-+
-+ ECHO_LT='--silent'
-+ ECHO_LD='@echo linking $@;'
-+ RULE_CC='@echo compiling $<'
-+ SHOW_CC='@echo compiling $@'
-+ ECHO_CC='@'
-+
-+ else
-+
-+ ECHO_LT=''
-+ ECHO_LD=''
-+ RULE_CC=''
-+ SHOW_CC=''
-+ ECHO_CC=''
-+
-+ fi
- else
-- with_echo=yes
-+ enableval=yes
-+
-+ ECHO_LT=''
-+ ECHO_LD=''
-+ RULE_CC=''
-+ SHOW_CC=''
-+ ECHO_CC=''
-+
- fi;
--if test "$with_echo" = yes; then
-- ECHO_LINK=
--else
-- ECHO_LINK='@ echo linking $@ ... ;'
--fi
--echo "$as_me:9384: result: $with_echo" >&5
--echo "${ECHO_T}$with_echo" >&6
-+echo "$as_me:9941: result: $enableval" >&5
-+echo "${ECHO_T}$enableval" >&6
-
- ### use option --enable-warnings to turn on all gcc warnings
--echo "$as_me:9388: checking if you want to see compiler warnings" >&5
-+echo "$as_me:9945: checking if you want to see compiler warnings" >&5
- echo $ECHO_N "checking if you want to see compiler warnings... $ECHO_C" >&6
-
- # Check whether --enable-warnings or --disable-warnings was given.
-@@ -9393,7 +9950,7 @@
- enableval="$enable_warnings"
- with_warnings=$enableval
- fi;
--echo "$as_me:9396: result: $with_warnings" >&5
-+echo "$as_me:9953: result: $with_warnings" >&5
- echo "${ECHO_T}$with_warnings" >&6
-
- if test "x$with_warnings" = "xyes"; then
-@@ -9405,12 +9962,12 @@
- if test "$GCC" = yes ; then
- case $host_os in
- linux*|gnu*)
-- echo "$as_me:9408: checking if this is really Intel C compiler" >&5
-+ echo "$as_me:9965: 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 9413 "configure"
-+#line 9970 "configure"
- #include "confdefs.h"
-
- int
-@@ -9427,19 +9984,19 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:9430: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9987: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9433: \$? = $ac_status" >&5
-+ echo "$as_me:9990: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:9436: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9993: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9439: \$? = $ac_status" >&5
-+ echo "$as_me:9996: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- INTEL_COMPILER=yes
--cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
-+cf_save_CFLAGS="$cf_save_CFLAGS -we147"
-
- else
- echo "$as_me: failed program was:" >&5
-@@ -9447,14 +10004,63 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- CFLAGS="$cf_save_CFLAGS"
-- echo "$as_me:9450: result: $INTEL_COMPILER" >&5
-+ echo "$as_me:10007: result: $INTEL_COMPILER" >&5
- echo "${ECHO_T}$INTEL_COMPILER" >&6
- ;;
- esac
- fi
-
-+CLANG_COMPILER=no
-+
-+if test "$GCC" = yes ; then
-+ echo "$as_me:10016: 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 10021 "configure"
-+#include "confdefs.h"
-+
-+int
-+main ()
-+{
-+
-+#ifdef __clang__
-+#else
-+make an error
-+#endif
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:10038: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:10041: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:10044: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:10047: \$? = $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
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CFLAGS="$cf_save_CFLAGS"
-+ echo "$as_me:10058: result: $CLANG_COMPILER" >&5
-+echo "${ECHO_T}$CLANG_COMPILER" >&6
-+fi
-+
- cat > conftest.$ac_ext <<EOF
--#line 9457 "${as_me:-configure}"
-+#line 10063 "${as_me:-configure}"
- int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
- EOF
-
-@@ -9471,7 +10077,7 @@
- # remark #981: operands are evaluated in unspecified order
- # warning #279: controlling expression is constant
-
-- { echo "$as_me:9474: checking for $CC warning options..." >&5
-+ { echo "$as_me:10080: checking for $CC warning options..." >&5
- echo "$as_me: checking for $CC warning options..." >&6;}
- cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS="-Wall"
-@@ -9487,12 +10093,12 @@
- wd981
- do
- CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-- if { (eval echo "$as_me:9490: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:10096: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9493: \$? = $ac_status" >&5
-+ echo "$as_me:10099: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:9495: result: ... -$cf_opt" >&5
-+ test -n "$verbose" && echo "$as_me:10101: result: ... -$cf_opt" >&5
- echo "${ECHO_T}... -$cf_opt" >&6
- EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
- fi
-@@ -9501,16 +10107,20 @@
-
- elif test "$GCC" = yes
- then
-- { echo "$as_me:9504: checking for $CC warning options..." >&5
-+ { echo "$as_me:10110: 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"
-+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings=
- for cf_opt in W Wall \
- Wbad-function-cast \
- Wcast-align \
- Wcast-qual \
-+ Wdeclaration-after-statement \
-+ Wextra \
- Winline \
- Wmissing-declarations \
- Wmissing-prototypes \
-@@ -9518,15 +10128,15 @@
- Wpointer-arith \
- Wshadow \
- Wstrict-prototypes \
-- Wundef $cf_warn_CONST Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum
-+ Wundef $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:9524: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:10134: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9527: \$? = $ac_status" >&5
-+ echo "$as_me:10137: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:9529: result: ... -$cf_opt" >&5
-+ test -n "$verbose" && echo "$as_me:10139: result: ... -$cf_opt" >&5
- echo "${ECHO_T}... -$cf_opt" >&6
- case $cf_opt in #(vi
- Wcast-qual) #(vi
-@@ -9537,7 +10147,17 @@
- [34].*)
- test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-
--echo "${as_me:-configure}:9540: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
-+echo "${as_me:-configure}:10150: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
-+
-+ continue;;
-+ esac
-+ ;;
-+ Wpointer-arith) #(vi
-+ case $GCC_VERSION in
-+ [12].*)
-+ test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-+
-+echo "${as_me:-configure}:10160: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
-
- continue;;
- esac
-@@ -9570,10 +10190,10 @@
- EOF
- if test "$GCC" = yes
- then
-- { echo "$as_me:9573: checking for $CC __attribute__ directives..." >&5
-+ { echo "$as_me:10193: checking for $CC __attribute__ directives..." >&5
- echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
- cat > conftest.$ac_ext <<EOF
--#line 9576 "${as_me:-configure}"
-+#line 10196 "${as_me:-configure}"
- #include "confdefs.h"
- #include "conftest.h"
- #include "conftest.i"
-@@ -9622,36 +10242,60 @@
- ;;
- esac
-
-- if { (eval echo "$as_me:9625: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:10245: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9628: \$? = $ac_status" >&5
-+ echo "$as_me:10248: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:9630: result: ... $cf_attribute" >&5
-+ test -n "$verbose" && echo "$as_me:10250: result: ... $cf_attribute" >&5
- echo "${ECHO_T}... $cf_attribute" >&6
- cat conftest.h >>confdefs.h
- case $cf_attribute in #(vi
-- printf) #(vi
-- if test "$cf_printf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) /* nothing */
-+ noreturn) #(vi
-+
-+cat >>confdefs.h <<EOF
-+#define GCC_NORETURN $cf_directive
- EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
-+
-+ ;;
-+ printf) #(vi
-+ 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) #(vi
-- if test "$cf_scanf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
-+ 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) #(vi
-+
-+cat >>confdefs.h <<EOF
-+#define GCC_UNUSED $cf_directive
-+EOF
-+
- ;;
- esac
- fi
-@@ -9663,7 +10307,7 @@
- fi
-
- ### use option --enable-assertions to turn on generation of assertion code
--echo "$as_me:9666: checking if you want to enable runtime assertions" >&5
-+echo "$as_me:10310: 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.
-@@ -9673,16 +10317,12 @@
- else
- with_assertions=no
- fi;
--echo "$as_me:9676: result: $with_assertions" >&5
-+echo "$as_me:10320: result: $with_assertions" >&5
- echo "${ECHO_T}$with_assertions" >&6
- if test -n "$GCC"
- then
- if test "$with_assertions" = no
- then
-- cat >>confdefs.h <<\EOF
--#define NDEBUG 1
--EOF
--
- CPPFLAGS="$CPPFLAGS -DNDEBUG"
- else
-
-@@ -9692,6 +10332,7 @@
- fi
-
- ### use option --disable-leaks to suppress "permanent" leaks, for testing
-+
- cat >>confdefs.h <<\EOF
- #define HAVE_NC_ALLOC_H 1
- EOF
-@@ -9701,7 +10342,8 @@
- # Check whether --enable-expanded or --disable-expanded was given.
- if test "${enable_expanded+set}" = set; then
- enableval="$enable_expanded"
-- test "$enableval" = yes && cat >>confdefs.h <<\EOF
-+ test "$enableval" = yes &&
-+cat >>confdefs.h <<\EOF
- #define NCURSES_EXPANDED 1
- EOF
-
-@@ -9712,7 +10354,8 @@
- # Check whether --enable-macros or --disable-macros was given.
- if test "${enable_macros+set}" = set; then
- enableval="$enable_macros"
-- test "$enableval" = no && cat >>confdefs.h <<\EOF
-+ test "$enableval" = no &&
-+cat >>confdefs.h <<\EOF
- #define NCURSES_NOMACROS 1
- EOF
-
-@@ -9727,7 +10370,7 @@
- ;;
- esac
-
--echo "$as_me:9730: checking whether to add trace feature to all models" >&5
-+echo "$as_me:10373: 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.
-@@ -9737,7 +10380,7 @@
- else
- cf_with_trace=$cf_all_traces
- fi;
--echo "$as_me:9740: result: $cf_with_trace" >&5
-+echo "$as_me:10383: result: $cf_with_trace" >&5
- echo "${ECHO_T}$cf_with_trace" >&6
-
- if test "$cf_with_trace" = yes ; then
-@@ -9758,7 +10401,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -9799,7 +10442,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -9825,18 +10468,38 @@
- ADA_TRACE=FALSE
- fi
-
-+echo "$as_me:10471: 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.
-+if test "${enable_gnat_projects+set}" = set; then
-+ enableval="$enable_gnat_projects"
-+ test "$enableval" != no && enableval=yes
-+ if test "$enableval" != "yes" ; then
-+ enable_gnat_projects=no
-+ else
-+ enable_gnat_projects=yes
-+ fi
-+else
-+ enableval=yes
-+ enable_gnat_projects=yes
-+
-+fi;
-+echo "$as_me:10488: result: $enable_gnat_projects" >&5
-+echo "${ECHO_T}$enable_gnat_projects" >&6
-+
- ### Checks for libraries.
- case $cf_cv_system_name in #(vi
- *mingw32*) #(vi
- ;;
- *)
--echo "$as_me:9833: checking for gettimeofday" >&5
-+echo "$as_me:10496: 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 9839 "configure"
-+#line 10502 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char gettimeofday (); below. */
-@@ -9859,7 +10522,7 @@
- #if defined (__stub_gettimeofday) || defined (__stub___gettimeofday)
- choke me
- #else
--f = gettimeofday;
-+f = gettimeofday; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -9867,16 +10530,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9870: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:10533: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9873: \$? = $ac_status" >&5
-+ echo "$as_me:10536: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9876: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10539: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9879: \$? = $ac_status" >&5
-+ echo "$as_me:10542: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_gettimeofday=yes
- else
-@@ -9886,7 +10549,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:9889: result: $ac_cv_func_gettimeofday" >&5
-+echo "$as_me:10552: result: $ac_cv_func_gettimeofday" >&5
- echo "${ECHO_T}$ac_cv_func_gettimeofday" >&6
- if test $ac_cv_func_gettimeofday = yes; then
- cat >>confdefs.h <<\EOF
-@@ -9895,7 +10558,7 @@
-
- else
-
--echo "$as_me:9898: checking for gettimeofday in -lbsd" >&5
-+echo "$as_me:10561: 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
-@@ -9903,7 +10566,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lbsd $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 9906 "configure"
-+#line 10569 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -9922,16 +10585,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9925: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:10588: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9928: \$? = $ac_status" >&5
-+ echo "$as_me:10591: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9931: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10594: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9934: \$? = $ac_status" >&5
-+ echo "$as_me:10597: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_bsd_gettimeofday=yes
- else
-@@ -9942,10 +10605,11 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:9945: result: $ac_cv_lib_bsd_gettimeofday" >&5
-+echo "$as_me:10608: 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
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_GETTIMEOFDAY 1
- EOF
-
-@@ -9957,13 +10621,13 @@
- esac
-
- ### Checks for header files.
--echo "$as_me:9960: checking for ANSI C header files" >&5
-+echo "$as_me:10624: 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 9966 "configure"
-+#line 10630 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- #include <stdarg.h>
-@@ -9971,13 +10635,13 @@
- #include <float.h>
-
- _ACEOF
--if { (eval echo "$as_me:9974: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:10638: \"$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:9980: \$? = $ac_status" >&5
-+ echo "$as_me:10644: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -9999,7 +10663,7 @@
- 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 10002 "configure"
-+#line 10666 "configure"
- #include "confdefs.h"
- #include <string.h>
-
-@@ -10017,7 +10681,7 @@
- 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 10020 "configure"
-+#line 10684 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
-
-@@ -10038,7 +10702,7 @@
- :
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 10041 "configure"
-+#line 10705 "configure"
- #include "confdefs.h"
- #include <ctype.h>
- #if ((' ' & 0x0FF) == 0x020)
-@@ -10064,15 +10728,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:10067: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:10731: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10070: \$? = $ac_status" >&5
-+ echo "$as_me:10734: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:10072: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10736: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10075: \$? = $ac_status" >&5
-+ echo "$as_me:10739: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -10085,7 +10749,7 @@
- fi
- fi
- fi
--echo "$as_me:10088: result: $ac_cv_header_stdc" >&5
-+echo "$as_me:10752: result: $ac_cv_header_stdc" >&5
- echo "${ECHO_T}$ac_cv_header_stdc" >&6
- if test $ac_cv_header_stdc = yes; then
-
-@@ -10098,13 +10762,13 @@
- 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:10101: checking for $ac_hdr that defines DIR" >&5
-+echo "$as_me:10765: 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 10107 "configure"
-+#line 10771 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #include <$ac_hdr>
-@@ -10119,16 +10783,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10122: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10786: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10125: \$? = $ac_status" >&5
-+ echo "$as_me:10789: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10128: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10792: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10131: \$? = $ac_status" >&5
-+ echo "$as_me:10795: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_Header=yes"
- else
-@@ -10138,7 +10802,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:10141: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:10805: 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
-@@ -10151,7 +10815,7 @@
- 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:10154: checking for opendir in -ldir" >&5
-+ echo "$as_me:10818: 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
-@@ -10159,7 +10823,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-ldir $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 10162 "configure"
-+#line 10826 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -10178,16 +10842,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10181: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:10845: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10184: \$? = $ac_status" >&5
-+ echo "$as_me:10848: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10187: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10851: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10190: \$? = $ac_status" >&5
-+ echo "$as_me:10854: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_dir_opendir=yes
- else
-@@ -10198,14 +10862,14 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:10201: result: $ac_cv_lib_dir_opendir" >&5
-+echo "$as_me:10865: 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
- LIBS="$LIBS -ldir"
- fi
-
- else
-- echo "$as_me:10208: checking for opendir in -lx" >&5
-+ echo "$as_me:10872: 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
-@@ -10213,7 +10877,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lx $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 10216 "configure"
-+#line 10880 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -10232,191 +10896,100 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10235: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:10899: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10238: \$? = $ac_status" >&5
-+ echo "$as_me:10902: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10241: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10905: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10244: \$? = $ac_status" >&5
-+ echo "$as_me:10908: \$? = $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
--ac_cv_lib_x_opendir=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:10255: 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
-- LIBS="$LIBS -lx"
--fi
--
--fi
--
--echo "$as_me:10263: 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 10269 "configure"
--#include "confdefs.h"
--#include <sys/types.h>
--#include <sys/time.h>
--#include <time.h>
--
--int
--main ()
--{
--if ((struct tm *) 0)
--return 0;
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10285: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:10288: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10291: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:10294: \$? = $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
--ac_cv_header_time=no
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--fi
--echo "$as_me:10304: result: $ac_cv_header_time" >&5
--echo "${ECHO_T}$ac_cv_header_time" >&6
--if test $ac_cv_header_time = yes; then
--
--cat >>confdefs.h <<\EOF
--#define TIME_WITH_SYS_TIME 1
--EOF
--
--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_compiler_gnu=$ac_cv_c_compiler_gnu
--ac_main_return=return
--
--echo "$as_me:10322: 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 10330 "configure"
--#include "confdefs.h"
--#include <stdarg.h>
--#include <stdio.h>
--#include <sys/types.h>
--#include <sys/stat.h>
--/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
--struct buf { int x; };
--FILE * (*rcsopen) (struct buf *, struct stat *, int);
--static char *e (p, i)
-- char **p;
-- int i;
--{
-- return p[i];
--}
--static char *f (char * (*g) (char **, int), char **p, ...)
--{
-- char *s;
-- va_list v;
-- va_start (v,p);
-- s = g (p, va_arg (v,int));
-- va_end (v);
-- return s;
--}
--int test (int i, double x);
--struct s1 {int (*f) (int a);};
--struct s2 {int (*f) (double a);};
--int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
--int argc;
--char **argv;
-+cat conftest.$ac_ext >&5
-+ac_cv_lib_x_opendir=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:10919: 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
-+ LIBS="$LIBS -lx"
-+fi
-+
-+fi
-+
-+echo "$as_me:10927: 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 10933 "configure"
-+#include "confdefs.h"
-+#include <sys/types.h>
-+#include <sys/time.h>
-+#include <time.h>
-+
- int
- main ()
- {
--return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
-+if ((struct tm *) 0)
-+return 0;
- ;
- return 0;
- }
- _ACEOF
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX 10.20 and later -Ae
--# HP-UX older versions -Aa -D_HPUX_SOURCE
--# SVR4 -Xc -D__EXTENSIONS__
--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:10379: \"$ac_compile\"") >&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:10949: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10382: \$? = $ac_status" >&5
-+ echo "$as_me:10952: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10385: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10955: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10388: \$? = $ac_status" >&5
-+ echo "$as_me:10958: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_prog_cc_stdc=$ac_arg
--break
-+ ac_cv_header_time=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+ac_cv_header_time=no
- fi
--rm -f conftest.$ac_objext
--done
--rm -f conftest.$ac_ext conftest.$ac_objext
--CC=$ac_save_CC
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+fi
-+echo "$as_me:10968: result: $ac_cv_header_time" >&5
-+echo "${ECHO_T}$ac_cv_header_time" >&6
-+if test $ac_cv_header_time = yes; then
-+
-+cat >>confdefs.h <<\EOF
-+#define TIME_WITH_SYS_TIME 1
-+EOF
-
- fi
-
--case "x$ac_cv_prog_cc_stdc" in
-- x|xno)
-- echo "$as_me:10405: result: none needed" >&5
--echo "${ECHO_T}none needed" >&6 ;;
-- *)
-- echo "$as_me:10408: result: $ac_cv_prog_cc_stdc" >&5
--echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
-- CC="$CC $ac_cv_prog_cc_stdc" ;;
--esac
-+### 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_compiler_gnu=$ac_cv_c_compiler_gnu
-+ac_main_return=return
-
--echo "$as_me:10413: checking for an ANSI C-conforming const" >&5
-+echo "$as_me:10986: 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 10419 "configure"
-+#line 10992 "configure"
- #include "confdefs.h"
-
- int
-@@ -10474,16 +11047,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10477: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:11050: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10480: \$? = $ac_status" >&5
-+ echo "$as_me:11053: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10483: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11056: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10486: \$? = $ac_status" >&5
-+ echo "$as_me:11059: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_c_const=yes
- else
-@@ -10493,7 +11066,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:10496: result: $ac_cv_c_const" >&5
-+echo "$as_me:11069: result: $ac_cv_c_const" >&5
- echo "${ECHO_T}$ac_cv_c_const" >&6
- if test $ac_cv_c_const = no; then
-
-@@ -10505,7 +11078,7 @@
-
- ### Checks for external-data
-
--echo "$as_me:10508: checking if data-only library module links" >&5
-+echo "$as_me:11081: 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
-@@ -10513,20 +11086,20 @@
-
- rm -f conftest.a
- cat >conftest.$ac_ext <<EOF
--#line 10516 "configure"
-+#line 11089 "configure"
- int testdata[3] = { 123, 456, 789 };
- EOF
-- if { (eval echo "$as_me:10519: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:11092: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10522: \$? = $ac_status" >&5
-+ echo "$as_me:11095: \$? = $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 10529 "configure"
-+#line 11102 "configure"
- int testfunc()
- {
- #if defined(NeXT)
-@@ -10539,10 +11112,10 @@
- #endif
- }
- EOF
-- if { (eval echo "$as_me:10542: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:11115: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10545: \$? = $ac_status" >&5
-+ echo "$as_me:11118: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- mv conftest.o func.o && \
- ( $AR $ARFLAGS conftest.a func.o ) 2>&5 1>/dev/null
-@@ -10555,7 +11128,7 @@
- cf_cv_link_dataonly=unknown
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 10558 "configure"
-+#line 11131 "configure"
- #include "confdefs.h"
-
- int main()
-@@ -10566,15 +11139,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:10569: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:11142: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10572: \$? = $ac_status" >&5
-+ echo "$as_me:11145: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:10574: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11147: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10577: \$? = $ac_status" >&5
-+ echo "$as_me:11150: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_link_dataonly=yes
- else
-@@ -10589,11 +11162,12 @@
-
- fi
-
--echo "$as_me:10592: result: $cf_cv_link_dataonly" >&5
-+echo "$as_me:11165: result: $cf_cv_link_dataonly" >&5
- echo "${ECHO_T}$cf_cv_link_dataonly" >&6
-
- if test "$cf_cv_link_dataonly" = no ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define BROKEN_LINKER 1
- EOF
-
-@@ -10602,7 +11176,7 @@
-
- ### Checks for library functions.
-
--echo "$as_me:10605: checking for working mkstemp" >&5
-+echo "$as_me:11179: 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
-@@ -10610,68 +11184,10 @@
-
- rm -rf conftest*
- if test "$cross_compiling" = yes; then
-- echo "$as_me:10613: 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 10619 "configure"
--#include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char mkstemp (); below. */
--#include <assert.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 mkstemp ();
--char (*f) ();
--
--int
--main ()
--{
--/* The GNU C library defines this 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_mkstemp) || defined (__stub___mkstemp)
--choke me
--#else
--f = mkstemp;
--#endif
--
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10650: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:10653: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10656: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:10659: \$? = $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
--ac_cv_func_mkstemp=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--fi
--echo "$as_me:10669: result: $ac_cv_func_mkstemp" >&5
--echo "${ECHO_T}$ac_cv_func_mkstemp" >&6
--
-+ cf_cv_func_mkstemp=maybe
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 10674 "configure"
-+#line 11190 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -10709,15 +11225,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:10712: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:11228: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10715: \$? = $ac_status" >&5
-+ echo "$as_me:11231: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:10717: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11233: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10720: \$? = $ac_status" >&5
-+ echo "$as_me:11236: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_func_mkstemp=yes
-
-@@ -10732,80 +11248,89 @@
- fi
-
- fi
--echo "$as_me:10735: result: $cf_cv_func_mkstemp" >&5
-+echo "$as_me:11251: result: $cf_cv_func_mkstemp" >&5
- echo "${ECHO_T}$cf_cv_func_mkstemp" >&6
--if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then
-- cat >>confdefs.h <<\EOF
--#define HAVE_MKSTEMP 1
--EOF
--
--fi
--
--echo "$as_me:10744: checking return type of signal handlers" >&5
--echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6
--if test "${ac_cv_type_signal+set}" = set; then
-+if test "x$cf_cv_func_mkstemp" = xmaybe ; then
-+ echo "$as_me:11254: 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 10750 "configure"
-+#line 11260 "configure"
- #include "confdefs.h"
--#include <sys/types.h>
--#include <signal.h>
--#ifdef signal
--# undef signal
--#endif
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char mkstemp (); below. */
-+#include <assert.h>
-+/* Override any gcc2 internal prototype to avoid an error. */
- #ifdef __cplusplus
--extern "C" void (*signal (int, void (*)(int)))(int);
--#else
--void (*signal ()) ();
-+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 mkstemp ();
-+char (*f) ();
-
- int
- main ()
- {
--int i;
-+/* The GNU C library defines this 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_mkstemp) || defined (__stub___mkstemp)
-+choke me
-+#else
-+f = mkstemp; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10772: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:11291: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10775: \$? = $ac_status" >&5
-+ echo "$as_me:11294: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10778: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:11297: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10781: \$? = $ac_status" >&5
-+ echo "$as_me:11300: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_type_signal=void
-+ ac_cv_func_mkstemp=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_type_signal=int
-+ac_cv_func_mkstemp=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:10791: result: $ac_cv_type_signal" >&5
--echo "${ECHO_T}$ac_cv_type_signal" >&6
-+echo "$as_me:11310: result: $ac_cv_func_mkstemp" >&5
-+echo "${ECHO_T}$ac_cv_func_mkstemp" >&6
-
--cat >>confdefs.h <<EOF
--#define RETSIGTYPE $ac_cv_type_signal
-+fi
-+if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_MKSTEMP 1
- 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$%%'`
- fi
-
-+cf_with_ada=yes
- if test "$cf_with_ada" != "no" ; then
-
- cf_ada_make=gnatmake
- # Extract the first word of "$cf_ada_make", so it can be a program name with args.
- set dummy $cf_ada_make; ac_word=$2
--echo "$as_me:10808: checking for $ac_word" >&5
-+echo "$as_me:11333: checking for $ac_word" >&5
- echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
- if test "${ac_cv_prog_gnat_exists+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-@@ -10820,7 +11345,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_gnat_exists="yes"
--echo "$as_me:10823: found $ac_dir/$ac_word" >&5
-+echo "$as_me:11348: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -10829,31 +11354,32 @@
- fi
- gnat_exists=$ac_cv_prog_gnat_exists
- if test -n "$gnat_exists"; then
-- echo "$as_me:10832: result: $gnat_exists" >&5
-+ echo "$as_me:11357: result: $gnat_exists" >&5
- echo "${ECHO_T}$gnat_exists" >&6
- else
-- echo "$as_me:10835: result: no" >&5
-+ echo "$as_me:11360: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
- if test "$ac_cv_prog_gnat_exists" = no; then
- cf_ada_make=
-+ cf_cv_prog_gnat_correct=no
- else
-
--echo "$as_me:10843: checking for gnat version" >&5
-+echo "$as_me:11369: checking for gnat version" >&5
- echo $ECHO_N "checking for gnat version... $ECHO_C" >&6
- cf_gnat_version=`${cf_ada_make:-gnatmake} -v 2>&1 | \
- grep '[0-9].[0-9][0-9]*' |\
- sed -e '2,$d' -e 's/[^0-9 \.]//g' -e 's/^[ ]*//' -e 's/ .*//'`
--echo "$as_me:10848: result: $cf_gnat_version" >&5
-+echo "$as_me:11374: result: $cf_gnat_version" >&5
- echo "${ECHO_T}$cf_gnat_version" >&6
-
- case $cf_gnat_version in #(vi
--3.1[1-9]*|3.[2-9]*|[4-9].*) #(vi
-+3.1[1-9]*|3.[2-9]*|[4-9].*|20[0-9][0-9]) #(vi
- cf_cv_prog_gnat_correct=yes
- ;;
- *)
-- { echo "$as_me:10856: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5
-+ { echo "$as_me:11382: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5
- echo "$as_me: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&2;}
- cf_cv_prog_gnat_correct=no
- ;;
-@@ -10861,7 +11387,7 @@
-
- # Extract the first word of "m4", so it can be a program name with args.
- set dummy m4; ac_word=$2
--echo "$as_me:10864: checking for $ac_word" >&5
-+echo "$as_me:11390: 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
-@@ -10876,7 +11402,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_M4_exists="yes"
--echo "$as_me:10879: found $ac_dir/$ac_word" >&5
-+echo "$as_me:11405: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -10885,10 +11411,10 @@
- fi
- M4_exists=$ac_cv_prog_M4_exists
- if test -n "$M4_exists"; then
-- echo "$as_me:10888: result: $M4_exists" >&5
-+ echo "$as_me:11414: result: $M4_exists" >&5
- echo "${ECHO_T}$M4_exists" >&6
- else
-- echo "$as_me:10891: result: no" >&5
-+ echo "$as_me:11417: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -10897,7 +11423,7 @@
- echo Ada95 binding required program m4 not found. Ada95 binding disabled.
- fi
- if test "$cf_cv_prog_gnat_correct" = yes; then
-- echo "$as_me:10900: checking if GNAT works" >&5
-+ echo "$as_me:11426: checking if GNAT works" >&5
- echo $ECHO_N "checking if GNAT works... $ECHO_C" >&6
-
- rm -rf conftest* *~conftest*
-@@ -10925,30 +11451,48 @@
- fi
- rm -rf conftest* *~conftest*
-
-- echo "$as_me:10928: result: $cf_cv_prog_gnat_correct" >&5
-+ echo "$as_me:11454: result: $cf_cv_prog_gnat_correct" >&5
- echo "${ECHO_T}$cf_cv_prog_gnat_correct" >&6
- fi
- fi
-
- if test "$cf_cv_prog_gnat_correct" = yes; then
-
-- # make ADAFLAGS consistent with CFLAGS
-- case "$CFLAGS" in
-- *-g*)
-+ echo "$as_me:11461: checking optimization options for ADAFLAGS" >&5
-+echo $ECHO_N "checking optimization options for ADAFLAGS... $ECHO_C" >&6
-+ case "$CFLAGS" in
-+ *-g*)
-
- ADAFLAGS="$ADAFLAGS -g"
-
-- ;;
-- esac
-- case "$CFLAGS" in
-- *-O*)
-+ ;;
-+ esac
-+ case "$CFLAGS" in
-+ *-O*)
-+ cf_O_flag=`echo "$CFLAGS" |sed -e 's/^.*-O/-O/' -e 's/[ ].*//'`
-
-- ADAFLAGS="$ADAFLAGS -O3"
-+ ADAFLAGS="$ADAFLAGS $cf_O_flag"
-
-- ;;
-- esac
-+ ;;
-+ esac
-+ echo "$as_me:11478: result: $ADAFLAGS" >&5
-+echo "${ECHO_T}$ADAFLAGS" >&6
-+
-+echo "$as_me:11481: 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
-+else
-+
-+cf_cv_gnatprep_opt_t=no
-+gnatprep -T 2>/dev/null >/dev/null && cf_cv_gnatprep_opt_t=yes
-
--echo "$as_me:10951: checking if GNAT supports generics" >&5
-+fi
-+echo "$as_me:11491: 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:11495: checking if GNAT supports generics" >&5
- echo $ECHO_N "checking if GNAT supports generics... $ECHO_C" >&6
- case $cf_gnat_version in #(vi
- 3.[1-9]*|[4-9].*) #(vi
-@@ -10958,7 +11502,7 @@
- cf_gnat_generics=no
- ;;
- esac
--echo "$as_me:10961: result: $cf_gnat_generics" >&5
-+echo "$as_me:11505: result: $cf_gnat_generics" >&5
- echo "${ECHO_T}$cf_gnat_generics" >&6
-
- if test "$cf_gnat_generics" = yes
-@@ -10970,7 +11514,7 @@
- cf_generic_objects=
- fi
-
--echo "$as_me:10973: checking if GNAT supports SIGINT" >&5
-+echo "$as_me:11517: 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
-@@ -11018,7 +11562,7 @@
- rm -rf conftest* *~conftest*
-
- fi
--echo "$as_me:11021: result: $cf_cv_gnat_sigint" >&5
-+echo "$as_me:11565: result: $cf_cv_gnat_sigint" >&5
- echo "${ECHO_T}$cf_cv_gnat_sigint" >&6
-
- if test $cf_cv_gnat_sigint = yes ; then
-@@ -11027,58 +11571,18 @@
- USE_GNAT_SIGINT="#"
- fi
-
--echo "$as_me:11030: checking if GNAT pragma Unreferenced works" >&5
--echo $ECHO_N "checking if GNAT pragma Unreferenced works... $ECHO_C" >&6
--if test "${cf_cv_pragma_unreferenced+set}" = set; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
--else
--
--rm -rf conftest* *~conftest*
--cat >>conftest.ads <<CF_EOF
--procedure conftest;
--CF_EOF
--cat >>conftest.adb <<CF_EOF
--with Text_IO;
--with GNAT.OS_Lib;
--procedure conftest is
-- test : Integer;
-- pragma Unreferenced (test);
--begin
-- test := 1;
-- Text_IO.Put ("Hello World");
-- Text_IO.New_Line;
-- GNAT.OS_Lib.OS_Exit (0);
--end conftest;
--CF_EOF
--if ( $cf_ada_make $ADAFLAGS conftest 1>&5 2>&1 ) ; then
-- cf_cv_pragma_unreferenced=yes
--else
-- cf_cv_pragma_unreferenced=no
--fi
--rm -rf conftest* *~conftest*
--
--fi
--echo "$as_me:11061: result: $cf_cv_pragma_unreferenced" >&5
--echo "${ECHO_T}$cf_cv_pragma_unreferenced" >&6
--
--# if the pragma is supported, use it (needed in the Trace code).
--if test $cf_cv_pragma_unreferenced = yes ; then
-- PRAGMA_UNREF=TRUE
--else
-- PRAGMA_UNREF=FALSE
--fi
--
- cf_gnat_libraries=no
- cf_gnat_projects=no
-
--echo "$as_me:11074: checking if GNAT supports project files" >&5
-+if test "$enable_gnat_projects" != no ; then
-+echo "$as_me:11578: checking if GNAT supports project files" >&5
- echo $ECHO_N "checking if GNAT supports project files... $ECHO_C" >&6
- case $cf_gnat_version in #(vi
- 3.[0-9]*) #(vi
- ;;
- *)
- case $cf_cv_system_name in #(vi
-- cygwin*) #(vi
-+ cygwin*|msys*) #(vi
- ;;
- *)
- mkdir conftest.src conftest.bin conftest.lib
-@@ -11095,14 +11599,6 @@
- for Library_Dir use External("BUILD_DIR");
- Source_Dir := External ("SOURCE_DIR");
- for Source_Dirs use (Source_Dir);
-- package Compiler is
-- for Default_Switches ("Ada") use
-- ("-g",
-- "-O2",
-- "-gnatafno",
-- "-gnatVa", -- All validity checks
-- "-gnatwa"); -- Activate all optional errors
-- end Compiler;
- end Library;
- CF_EOF
- cat >>confpackage.ads <<CF_EOF
-@@ -11139,14 +11635,15 @@
- esac
- ;;
- esac
--echo "$as_me:11142: result: $cf_gnat_projects" >&5
-+echo "$as_me:11638: result: $cf_gnat_projects" >&5
- echo "${ECHO_T}$cf_gnat_projects" >&6
-+fi # enable_gnat_projects
-
- if test $cf_gnat_projects = yes
- then
-- echo "$as_me:11147: checking if GNAT supports libraries" >&5
-+ echo "$as_me:11644: checking if GNAT supports libraries" >&5
- echo $ECHO_N "checking if GNAT supports libraries... $ECHO_C" >&6
-- echo "$as_me:11149: result: $cf_gnat_libraries" >&5
-+ echo "$as_me:11646: result: $cf_gnat_libraries" >&5
- echo "${ECHO_T}$cf_gnat_libraries" >&6
- fi
-
-@@ -11166,7 +11663,7 @@
- USE_GNAT_LIBRARIES="#"
- fi
-
--echo "$as_me:11169: checking for ada-compiler" >&5
-+echo "$as_me:11666: 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.
-@@ -11177,12 +11674,12 @@
- cf_ada_compiler=gnatmake
- fi;
-
--echo "$as_me:11180: result: $cf_ada_compiler" >&5
-+echo "$as_me:11677: result: $cf_ada_compiler" >&5
- echo "${ECHO_T}$cf_ada_compiler" >&6
-
- cf_ada_package=terminal_interface
-
--echo "$as_me:11185: checking for ada-include" >&5
-+echo "$as_me:11682: 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.
-@@ -11206,7 +11703,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval withval="$withval"
- case ".$withval" in #(vi
- .NONE/*)
-@@ -11218,19 +11715,19 @@
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:11221: error: expected a pathname, not \"$withval\"" >&5
-+ { { echo "$as_me:11718: error: expected a pathname, not \"$withval\"" >&5
- echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
- esac
-
- fi
--ADA_INCLUDE="$withval"
-+eval ADA_INCLUDE="$withval"
-
--echo "$as_me:11230: result: $ADA_INCLUDE" >&5
-+echo "$as_me:11727: result: $ADA_INCLUDE" >&5
- echo "${ECHO_T}$ADA_INCLUDE" >&6
-
--echo "$as_me:11233: checking for ada-objects" >&5
-+echo "$as_me:11730: 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.
-@@ -11254,7 +11751,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval withval="$withval"
- case ".$withval" in #(vi
- .NONE/*)
-@@ -11266,19 +11763,19 @@
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:11269: error: expected a pathname, not \"$withval\"" >&5
-+ { { echo "$as_me:11766: error: expected a pathname, not \"$withval\"" >&5
- echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
- esac
-
- fi
--ADA_OBJECTS="$withval"
-+eval ADA_OBJECTS="$withval"
-
--echo "$as_me:11278: result: $ADA_OBJECTS" >&5
-+echo "$as_me:11775: result: $ADA_OBJECTS" >&5
- echo "${ECHO_T}$ADA_OBJECTS" >&6
-
--echo "$as_me:11281: checking if an Ada95 shared-library should be built" >&5
-+echo "$as_me:11778: 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.
-@@ -11288,7 +11785,7 @@
- else
- with_ada_sharedlib=no
- fi;
--echo "$as_me:11291: result: $with_ada_sharedlib" >&5
-+echo "$as_me:11788: result: $with_ada_sharedlib" >&5
- echo "${ECHO_T}$with_ada_sharedlib" >&6
-
- ADA_SHAREDLIB='lib$(LIB_NAME).so.1'
-@@ -11304,12 +11801,12 @@
- fi
-
- else
-- { { echo "$as_me:11307: error: No usable Ada compiler found" >&5
-+ { { echo "$as_me:11804: 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:11312: error: The Ada compiler is needed for this package" >&5
-+ { { echo "$as_me:11809: 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
-@@ -11317,25 +11814,20 @@
- ################################################################################
-
- # not needed
--TINFO_ARGS2=
-+TINFO_LDFLAGS2=
-+
-+TINFO_LIBS=
-
- ### Construct the list of include-directories to be generated
-
--CPPFLAGS="$CPPFLAGS -I. -I../include"
- if test "$srcdir" != "."; then
-- CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include"
-+ CPPFLAGS="-I\${srcdir}/../include $CPPFLAGS"
- fi
--if test "$GCC" != yes; then
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
--elif test "$includedir" != "/usr/include"; then
-- if test "$includedir" = '${prefix}/include' ; then
-- if test $prefix != /usr ; then
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
-- fi
-- else
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
-- fi
-+CPPFLAGS="-I../include $CPPFLAGS"
-+if test "$srcdir" != "."; then
-+ CPPFLAGS="-I\${srcdir} $CPPFLAGS"
- fi
-+CPPFLAGS="-I. $CPPFLAGS"
-
- ACPPFLAGS="-I. -I../include -I../../include $ACPPFLAGS"
- if test "$srcdir" != "."; then
-@@ -11345,7 +11837,7 @@
- ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
- elif test "$includedir" != "/usr/include"; then
- if test "$includedir" = '${prefix}/include' ; then
-- if test $prefix != /usr ; then
-+ if test x$prefix != x/usr ; then
- ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
- fi
- else
-@@ -11354,7 +11846,7 @@
- fi
-
- ### Build up pieces for makefile rules
--echo "$as_me:11357: checking default library suffix" >&5
-+echo "$as_me:11849: checking default library suffix" >&5
- echo $ECHO_N "checking default library suffix... $ECHO_C" >&6
-
- case $DFT_LWR_MODEL in
-@@ -11365,36 +11857,32 @@
- shared) DFT_ARG_SUFFIX='' ;;
- esac
- test -n "$LIB_SUFFIX" && DFT_ARG_SUFFIX="${LIB_SUFFIX}${DFT_ARG_SUFFIX}"
--echo "$as_me:11368: result: $DFT_ARG_SUFFIX" >&5
-+echo "$as_me:11860: result: $DFT_ARG_SUFFIX" >&5
- echo "${ECHO_T}$DFT_ARG_SUFFIX" >&6
-
--echo "$as_me:11371: checking default library-dependency suffix" >&5
-+echo "$as_me:11863: checking default library-dependency suffix" >&5
- echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
-
-- case $DFT_LWR_MODEL in #(vi
-- libtool) #(vi
-+ case X$DFT_LWR_MODEL in #(vi
-+ Xlibtool) #(vi
- DFT_LIB_SUFFIX='.la'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
-- normal) #(vi
-- DFT_LIB_SUFFIX='.a'
-- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
-- ;;
-- debug) #(vi
-+ Xdebug) #(vi
- DFT_LIB_SUFFIX='_g.a'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
-- profile) #(vi
-+ Xprofile) #(vi
- DFT_LIB_SUFFIX='_p.a'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
-- shared) #(vi
-+ Xshared) #(vi
- case $cf_cv_system_name in
-- aix[56]*) #(vi
-- DFT_LIB_SUFFIX='.a'
-+ aix[5-7]*) #(vi
-+ DFT_LIB_SUFFIX='.so'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
-- cygwin*) #(vi
-+ cygwin*|msys*|mingw*) #(vi
- DFT_LIB_SUFFIX='.dll'
- DFT_DEP_SUFFIX='.dll.a'
- ;;
-@@ -11414,17 +11902,23 @@
- ;;
- esac
- ;;
-- *) DFT_LIB_SUFFIX='.so'
-+ *) #(vi
-+ DFT_LIB_SUFFIX='.so'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
- esac
-+ ;;
-+ *)
-+ DFT_LIB_SUFFIX='.a'
-+ DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
-+ ;;
- esac
- test -n "$LIB_SUFFIX" && DFT_LIB_SUFFIX="${LIB_SUFFIX}${DFT_LIB_SUFFIX}"
- test -n "$LIB_SUFFIX" && DFT_DEP_SUFFIX="${LIB_SUFFIX}${DFT_DEP_SUFFIX}"
--echo "$as_me:11424: result: $DFT_DEP_SUFFIX" >&5
-+echo "$as_me:11918: result: $DFT_DEP_SUFFIX" >&5
- echo "${ECHO_T}$DFT_DEP_SUFFIX" >&6
-
--echo "$as_me:11427: checking default object directory" >&5
-+echo "$as_me:11921: checking default object directory" >&5
- echo $ECHO_N "checking default object directory... $ECHO_C" >&6
-
- case $DFT_LWR_MODEL in
-@@ -11434,13 +11928,13 @@
- profile) DFT_OBJ_SUBDIR='obj_p' ;;
- shared)
- case $cf_cv_system_name in #(vi
-- cygwin) #(vi
-+ cygwin|msys) #(vi
- DFT_OBJ_SUBDIR='objects' ;;
- *)
- DFT_OBJ_SUBDIR='obj_s' ;;
- esac
- esac
--echo "$as_me:11443: result: $DFT_OBJ_SUBDIR" >&5
-+echo "$as_me:11937: result: $DFT_OBJ_SUBDIR" >&5
- echo "${ECHO_T}$DFT_OBJ_SUBDIR" >&6
-
- ### Set up low-level terminfo dependencies for makefiles.
-@@ -11450,6 +11944,9 @@
- cygwin*)
- # "lib" files have ".dll.a" suffix, "cyg" files have ".dll"
- ;;
-+ msys*)
-+ # "lib" files have ".dll.a" suffix, "msys-" files have ".dll"
-+ ;;
- esac
- fi
-
-@@ -11479,7 +11976,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -11520,7 +12017,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -11544,15 +12041,6 @@
-
- ################################################################################
-
--if test x"$enable_pc_files" = xyes ; then \
--SUB_MAKEFILES="$SUB_MAKEFILES misc/gen-pkgconfig:misc/gen-pkgconfig.in"
--MAKE_PC_FILES=
--else
--MAKE_PC_FILES="#"
--fi
--
--################################################################################
--
- TEST_ARG2=
-
- TEST_LIBS2=
-@@ -11656,7 +12144,7 @@
- : ${CONFIG_STATUS=./config.status}
- ac_clean_files_save=$ac_clean_files
- ac_clean_files="$ac_clean_files $CONFIG_STATUS"
--{ echo "$as_me:11659: creating $CONFIG_STATUS" >&5
-+{ echo "$as_me:12147: creating $CONFIG_STATUS" >&5
- echo "$as_me: creating $CONFIG_STATUS" >&6;}
- cat >$CONFIG_STATUS <<_ACEOF
- #! $SHELL
-@@ -11788,7 +12276,7 @@
- cat >>$CONFIG_STATUS <<EOF
- ac_cs_version="\\
- config.status
--configured by $0, generated by GNU Autoconf 2.52.20101002,
-+configured by $0, generated by GNU Autoconf 2.52.20141204,
- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
-
- Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
-@@ -11832,7 +12320,7 @@
- echo "$ac_cs_version"; exit 0 ;;
- --he | --h)
- # Conflict between --help and --header
-- { { echo "$as_me:11835: error: ambiguous option: $1
-+ { { echo "$as_me:12323: 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;}
-@@ -11851,7 +12339,7 @@
- ac_need_defaults=false;;
-
- # This is an error.
-- -*) { { echo "$as_me:11854: error: unrecognized option: $1
-+ -*) { { echo "$as_me:12342: 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;}
-@@ -11870,7 +12358,7 @@
- ## Running config.status. ##
- ## ----------------------- ##
-
--This file was extended by $as_me 2.52.20101002, executed with
-+This file was extended by $as_me 2.52.20141204, executed with
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
-@@ -11892,8 +12380,8 @@
- AWK="$AWK"
- DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
- DFT_LWR_MODEL="$DFT_LWR_MODEL"
--ECHO_LINK="$ECHO_LINK"
- LIB_NAME="$LIB_NAME"
-+LIB_PREFIX="$LIB_PREFIX"
- LIB_SUFFIX="$LIB_SUFFIX"
- LN_S="$LN_S"
- NCURSES_MAJOR="$NCURSES_MAJOR"
-@@ -11922,7 +12410,7 @@
- "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:11925: error: invalid argument: $ac_config_target" >&5
-+ *) { { echo "$as_me:12413: error: invalid argument: $ac_config_target" >&5
- echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
- esac
-@@ -11981,6 +12469,7 @@
- s,@bindir@,$bindir,;t t
- s,@sbindir@,$sbindir,;t t
- s,@libexecdir@,$libexecdir,;t t
-+s,@datarootdir@,$datarootdir,;t t
- s,@datadir@,$datadir,;t t
- s,@sysconfdir@,$sysconfdir,;t t
- s,@sharedstatedir@,$sharedstatedir,;t t
-@@ -12024,9 +12513,8 @@
- s,@ac_ct_CC@,$ac_ct_CC,;t t
- s,@EXEEXT@,$EXEEXT,;t t
- s,@OBJEXT@,$OBJEXT,;t t
--s,@CPP@,$CPP,;t t
- s,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t
--s,@PROG_EXT@,$PROG_EXT,;t t
-+s,@CPP@,$CPP,;t t
- s,@AWK@,$AWK,;t t
- s,@EGREP@,$EGREP,;t t
- s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
-@@ -12061,6 +12549,7 @@
- s,@DFT_LWR_MODEL@,$DFT_LWR_MODEL,;t t
- s,@DFT_UPR_MODEL@,$DFT_UPR_MODEL,;t t
- s,@NCURSES_CONFIG@,$NCURSES_CONFIG,;t t
-+s,@ac_ct_NCURSES_CONFIG@,$ac_ct_NCURSES_CONFIG,;t t
- s,@NCURSES_MAJOR@,$NCURSES_MAJOR,;t t
- s,@NCURSES_MINOR@,$NCURSES_MINOR,;t t
- s,@NCURSES_PATCH@,$NCURSES_PATCH,;t t
-@@ -12073,33 +12562,41 @@
- s,@LIB_SUFFIX@,$LIB_SUFFIX,;t t
- s,@CC_G_OPT@,$CC_G_OPT,;t t
- s,@LD_MODEL@,$LD_MODEL,;t t
-+s,@shlibdir@,$shlibdir,;t t
-+s,@MAKE_DLLS@,$MAKE_DLLS,;t t
- s,@CC_SHARED_OPTS@,$CC_SHARED_OPTS,;t t
- s,@LD_RPATH_OPT@,$LD_RPATH_OPT,;t t
- s,@LD_SHARED_OPTS@,$LD_SHARED_OPTS,;t t
- s,@MK_SHARED_LIB@,$MK_SHARED_LIB,;t t
-+s,@RM_SHARED_OPTS@,$RM_SHARED_OPTS,;t t
- s,@LINK_PROGS@,$LINK_PROGS,;t t
- s,@LINK_TESTS@,$LINK_TESTS,;t t
- s,@EXTRA_LDFLAGS@,$EXTRA_LDFLAGS,;t t
- s,@LOCAL_LDFLAGS@,$LOCAL_LDFLAGS,;t t
- s,@LOCAL_LDFLAGS2@,$LOCAL_LDFLAGS2,;t t
- s,@INSTALL_LIB@,$INSTALL_LIB,;t t
-+s,@RPATH_LIST@,$RPATH_LIST,;t t
- s,@BROKEN_LINKER@,$BROKEN_LINKER,;t t
- s,@NCURSES_EXT_FUNCS@,$NCURSES_EXT_FUNCS,;t t
- s,@NCURSES_CONST@,$NCURSES_CONST,;t t
- s,@PTHREAD@,$PTHREAD,;t t
- s,@cf_cv_enable_reentrant@,$cf_cv_enable_reentrant,;t t
- s,@NCURSES_WRAP_PREFIX@,$NCURSES_WRAP_PREFIX,;t t
--s,@ECHO_LINK@,$ECHO_LINK,;t t
-+s,@ECHO_LT@,$ECHO_LT,;t t
-+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,@ADA_TRACE@,$ADA_TRACE,;t t
- s,@gnat_exists@,$gnat_exists,;t t
- s,@M4_exists@,$M4_exists,;t t
- s,@cf_ada_make@,$cf_ada_make,;t t
-+s,@GNATPREP_OPTS@,$GNATPREP_OPTS,;t t
- s,@cf_compile_generics@,$cf_compile_generics,;t t
- s,@cf_generic_objects@,$cf_generic_objects,;t t
- s,@USE_GNAT_SIGINT@,$USE_GNAT_SIGINT,;t t
--s,@PRAGMA_UNREF@,$PRAGMA_UNREF,;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
-@@ -12109,13 +12606,12 @@
- s,@ADA_OBJECTS@,$ADA_OBJECTS,;t t
- s,@ADA_SHAREDLIB@,$ADA_SHAREDLIB,;t t
- s,@MAKE_ADA_SHAREDLIB@,$MAKE_ADA_SHAREDLIB,;t t
--s,@TINFO_ARGS2@,$TINFO_ARGS2,;t t
-+s,@TINFO_LDFLAGS2@,$TINFO_LDFLAGS2,;t t
-+s,@TINFO_LIBS@,$TINFO_LIBS,;t t
- s,@ACPPFLAGS@,$ACPPFLAGS,;t t
- s,@DFT_ARG_SUFFIX@,$DFT_ARG_SUFFIX,;t t
- s,@DFT_DEP_SUFFIX@,$DFT_DEP_SUFFIX,;t t
- s,@DFT_OBJ_SUBDIR@,$DFT_OBJ_SUBDIR,;t t
--s,@MAKE_PC_FILES@,$MAKE_PC_FILES,;t t
--s,@cross_compiling@,$cross_compiling,;t t
- s,@TEST_ARG2@,$TEST_ARG2,;t t
- s,@TEST_LIBS2@,$TEST_LIBS2,;t t
- s,@NCURSES_SHLIB2@,$NCURSES_SHLIB2,;t t
-@@ -12237,7 +12733,7 @@
- esac
-
- if test x"$ac_file" != x-; then
-- { echo "$as_me:12240: creating $ac_file" >&5
-+ { echo "$as_me:12736: creating $ac_file" >&5
- echo "$as_me: creating $ac_file" >&6;}
- rm -f "$ac_file"
- fi
-@@ -12255,7 +12751,7 @@
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
-- test -f "$f" || { { echo "$as_me:12258: error: cannot find input file: $f" >&5
-+ test -f "$f" || { { echo "$as_me:12754: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo $f;;
-@@ -12268,13 +12764,45 @@
- echo $srcdir/$f
- else
- # /dev/null tree
-- { { echo "$as_me:12271: error: cannot find input file: $f" >&5
-+ { { echo "$as_me:12767: 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
-+ 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`
-+ if test -n "$ac_seen"; then
-+ ac_used=`grep '@datarootdir@' $ac_item`
-+ if test -z "$ac_used"; then
-+ { echo "$as_me:12783: 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`
-+ if test -n "$ac_seen"; then
-+ { echo "$as_me:12792: 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;}
-+ ac_warn_datarootdir=yes
-+ fi
-+ done
-+ fi
-+
-+if test "x$ac_warn_datarootdir" = xyes; then
-+ ac_sed_cmds="$ac_sed_cmds | sed -e 's,@datarootdir@,\${prefix}/share,g' -e 's,\${datarootdir},\${prefix}/share,g'"
-+fi
-+
-+EOF
- cat >>$CONFIG_STATUS <<EOF
- sed "$ac_vpsub
- $extrasub
-@@ -12289,11 +12817,35 @@
- " $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
- rm -f $tmp/stdin
- if test x"$ac_file" != x-; then
-- mv $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`
-+ if test -n "$ac_seen"; then
-+ ac_init=`egrep '[ ]*'$ac_name'[ ]*=' $ac_file`
-+ if test -z "$ac_init"; then
-+ ac_seen=`echo "$ac_seen" |sed -e 's,^,'$ac_file':,'`
-+ { echo "$as_me:12829: 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
-+ if test -s $tmp/out; then
-+ ac_seen=`sed -e 's,^,'$ac_file':,' < $tmp/out`
-+ { echo "$as_me:12840: WARNING: Some variables may not be substituted:
-+$ac_seen" >&5
-+echo "$as_me: WARNING: Some variables may not be substituted:
-+$ac_seen" >&2;}
-+ fi
- else
- cat $tmp/out
-- rm -f $tmp/out
- fi
-+ rm -f $tmp/out
-
- done
- EOF
-@@ -12334,7 +12886,7 @@
- * ) ac_file_in=$ac_file.in ;;
- esac
-
-- test x"$ac_file" != x- && { echo "$as_me:12337: creating $ac_file" >&5
-+ test x"$ac_file" != x- && { echo "$as_me:12889: creating $ac_file" >&5
- echo "$as_me: creating $ac_file" >&6;}
-
- # First look for the input files in the build tree, otherwise in the
-@@ -12345,7 +12897,7 @@
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
-- test -f "$f" || { { echo "$as_me:12348: error: cannot find input file: $f" >&5
-+ test -f "$f" || { { echo "$as_me:12900: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo $f;;
-@@ -12358,7 +12910,7 @@
- echo $srcdir/$f
- else
- # /dev/null tree
-- { { echo "$as_me:12361: error: cannot find input file: $f" >&5
-+ { { echo "$as_me:12913: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- fi;;
-@@ -12416,7 +12968,7 @@
- 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:12419: $ac_file is unchanged" >&5
-+ { echo "$as_me:12971: $ac_file is unchanged" >&5
- echo "$as_me: $ac_file is unchanged" >&6;}
- else
- ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-Index: Ada95/configure.in
-Prereq: 1.30
---- ncurses-5.9/Ada95/configure.in 2011-03-31 22:49:22.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/configure.in 2014-08-02 20:29:22.000000000 +0000
-@@ -1,5 +1,5 @@
- dnl***************************************************************************
--dnl Copyright (c) 2010,2011 Free Software Foundation, Inc. *
-+dnl Copyright (c) 2010-2013,2014 Free Software Foundation, Inc. *
- dnl *
- dnl Permission is hereby granted, free of charge, to any person obtaining a *
- dnl copy of this software and associated documentation files (the *
-@@ -28,24 +28,20 @@
- dnl
- dnl Author: Thomas E. Dickey
- dnl
--dnl $Id: configure.in,v 1.30 2011/03/31 22:49:22 tom Exp $
-+dnl $Id: configure.in,v 1.56 2014/08/02 20:29:22 tom Exp $
- dnl Process this file with autoconf to produce a configure script.
- dnl
- dnl See http://invisible-island.net/autoconf/ for additional information.
- dnl
- dnl ---------------------------------------------------------------------------
--AC_PREREQ(2.13.20020210)
--AC_REVISION($Revision: 1.30 $)
-+AC_PREREQ(2.52.20030208)
-+AC_REVISION($Revision: 1.56 $)
- AC_INIT(gen/gen.c)
- AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
-
- CF_TOP_BUILDDIR
-
--CF_CHECK_CACHE([AC_CANONICAL_SYSTEM])
--AC_ARG_WITH(system-type,
--[ --with-system-type=XXX test: override derived host system-type],
--[AC_MSG_WARN(overriding system type to $withval)
-- cf_cv_system_name=$withval])
-+CF_WITH_SYSTYPE
-
- ### Save the given $CFLAGS to allow user-override.
- cf_user_CFLAGS="$CFLAGS"
-@@ -54,15 +50,10 @@
- CF_CFG_DEFAULTS
-
- ### Checks for programs.
--AC_PROG_CC
--CF_GCC_VERSION
--
-+CF_PROG_CC(gnatgcc gcc cc)
- AC_PROG_CPP
- AC_PROG_GCC_TRADITIONAL
- CF_PROG_CC_C_O(CC)
--AC_ISC_POSIX
--CF_ANSI_CC_REQD
--CF_PROG_EXT
-
- AC_ARG_PROGRAM
-
-@@ -75,28 +66,7 @@
-
- # if we find pkg-config, check if we should install the ".pc" files.
- CF_PKG_CONFIG
--
--if test "$PKG_CONFIG" != none ; then
-- AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG)
--
-- # Leave this as something that can be overridden in the environment.
-- if test -z "$PKG_CONFIG_LIBDIR" ; then
-- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`/lib/pkgconfig
-- fi
-- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'`
-- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
-- AC_ARG_ENABLE(pc-files,
-- [ --enable-pc-files generate and install .pc files for pkg-config],
-- [enable_pc_files=$enableval],
-- [enable_pc_files=no])
-- AC_MSG_RESULT($enable_pc_files)
-- else
-- AC_MSG_RESULT(no)
-- AC_MSG_WARN(did not find library $PKG_CONFIG_LIBDIR)
-- enable_pc_files=no
-- fi
--fi
--AC_SUBST(PKG_CONFIG_LIBDIR)
-+CF_WITH_PKG_CONFIG_LIBDIR
-
- AC_MSG_CHECKING(if you want to build test-programs)
- AC_ARG_WITH(tests,
-@@ -130,6 +100,7 @@
- AC_CHECK_TOOL(LD, ld, ld)
- AC_CHECK_TOOL(AR, ar, ar)
- CF_AR_FLAGS
-+CF_PATHSEP
-
- dnl Special option for use by system-builders: the install-prefix is used to
- dnl adjust the location into which the actual install is done, so that an
-@@ -186,9 +157,7 @@
-
- CF_NCURSES_ADDON
-
--CF_LIB_PREFIX(cf_prefix)
--LIB_PREFIX=$cf_prefix
--AC_SUBST(LIB_PREFIX)
-+CF_WITH_LIB_PREFIX(cf_prefix)
-
- LIB_SUFFIX=
- AC_SUBST(LIB_SUFFIX)
-@@ -235,8 +204,6 @@
- ###############################################################################
- CF_HELP_MESSAGE(Fine-Tuning Your Configuration:)
-
--CF_PATHSEP
--
- ### use option --enable-broken-linker to force on use of broken-linker support
- AC_MSG_CHECKING(if you want broken-linker support code)
- AC_ARG_ENABLE(broken_linker,
-@@ -272,7 +239,7 @@
- [with_rcs_ids=$withval],
- [with_rcs_ids=no])
- AC_MSG_RESULT($with_rcs_ids)
--test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS)
-+test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS,1,[Define to 1 if RCS identifiers should be compiled-in)])
-
- ###############################################################################
- CF_HELP_MESSAGE(Extensions:)
-@@ -286,8 +253,8 @@
- AC_MSG_RESULT($with_ext_funcs)
- if test "$with_ext_funcs" = yes ; then
- NCURSES_EXT_FUNCS=1
-- AC_DEFINE(HAVE_USE_DEFAULT_COLORS)
-- AC_DEFINE(NCURSES_EXT_FUNCS)
-+ AC_DEFINE(HAVE_USE_DEFAULT_COLORS,1,[Define to 1 if we have use_default_colors function])
-+ AC_DEFINE(NCURSES_EXT_FUNCS,1,[Define to 1 if we have ncurses extended functions])
- else
- NCURSES_EXT_FUNCS=0
- fi
-@@ -337,12 +304,12 @@
- fi
-
- if test $cf_cv_weak_symbols = yes ; then
-- AC_DEFINE(USE_WEAK_SYMBOLS)
-+ AC_DEFINE(USE_WEAK_SYMBOLS,1,[Define to 1 to enable weak-symbols for pthreads])
- fi
-
- PTHREAD=
- if test "$with_pthread" = "yes" ; then
-- AC_DEFINE(USE_PTHREADS)
-+ AC_DEFINE(USE_PTHREADS,1,[Define to 1 to use the pthreads library])
- enable_reentrant=yes
- if test $cf_cv_weak_symbols = yes ; then
- PTHREAD=-lpthread
-@@ -370,7 +337,7 @@
- elif test "$assume_reentrant" = no ; then
- LIB_SUFFIX="t${LIB_SUFFIX}"
- fi
-- AC_DEFINE(USE_REENTRANT)
-+ AC_DEFINE(USE_REENTRANT,1,[Define to 1 to compile with experimental reentrant code])
- else
- cf_cv_enable_reentrant=0
- fi
-@@ -388,24 +355,13 @@
- NCURSES_WRAP_PREFIX=_nc_
- fi
- AC_SUBST(NCURSES_WRAP_PREFIX)
--AC_DEFINE_UNQUOTED(NCURSES_WRAP_PREFIX,"$NCURSES_WRAP_PREFIX")
-+AC_DEFINE_UNQUOTED(NCURSES_WRAP_PREFIX,"$NCURSES_WRAP_PREFIX",[Define to override _nc_ ncurses internal prefix])
-
- ###############################################################################
- CF_HELP_MESSAGE(Testing/development Options:)
-
- ### use option --disable-echo to suppress full display compiling commands
--AC_MSG_CHECKING(if you want to display full commands during build)
--AC_ARG_ENABLE(echo,
-- [ --enable-echo build: display "compiling" commands (default)],
-- [with_echo=$enableval],
-- [with_echo=yes])
--if test "$with_echo" = yes; then
-- ECHO_LINK=
--else
-- ECHO_LINK='@ echo linking $@ ... ;'
--fi
--AC_MSG_RESULT($with_echo)
--AC_SUBST(ECHO_LINK)
-+CF_DISABLE_ECHO
-
- ### use option --enable-warnings to turn on all gcc warnings
- AC_MSG_CHECKING(if you want to see compiler warnings)
-@@ -416,7 +372,7 @@
-
- if test "x$with_warnings" = "xyes"; then
- CF_ADD_ADAFLAGS(-gnatg)
-- CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum)
-+ CF_GCC_WARNINGS(Wno-unknown-pragmas Wswitch-enum)
- fi
- CF_GCC_ATTRIBUTES
-
-@@ -431,7 +387,6 @@
- then
- if test "$with_assertions" = no
- then
-- AC_DEFINE(NDEBUG)
- CPPFLAGS="$CPPFLAGS -DNDEBUG"
- else
- CF_ADD_ADAFLAGS(-gnata)
-@@ -439,17 +394,17 @@
- fi
-
- ### use option --disable-leaks to suppress "permanent" leaks, for testing
--AC_DEFINE(HAVE_NC_ALLOC_H)
-+AC_DEFINE(HAVE_NC_ALLOC_H,1,[Define to 1 if we have nc_alloc.h header])
-
- ### use option --enable-expanded to generate certain macros as functions
- AC_ARG_ENABLE(expanded,
- [ --enable-expanded test: generate functions for certain macros],
-- [test "$enableval" = yes && AC_DEFINE(NCURSES_EXPANDED)])
-+ [test "$enableval" = yes && AC_DEFINE(NCURSES_EXPANDED,1,[Define to 1 if ncurses macros should be expanded as functions])])
-
- ### use option --disable-macros to suppress macros in favor of functions
- AC_ARG_ENABLE(macros,
- [ --disable-macros test: use functions rather than macros],
-- [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS)])
-+ [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS,1,[Define to 1 if ncurses macros should be expanded as functions])])
-
- # Normally we only add trace() to the debug-library. Allow this to be
- # extended to all models of the ncurses library:
-@@ -476,6 +431,8 @@
-
- AC_SUBST(ADA_TRACE)
-
-+CF_DISABLE_GNAT_PROJECTS
-+
- ### Checks for libraries.
- case $cf_cv_system_name in #(vi
- *mingw32*) #(vi
-@@ -485,7 +442,7 @@
- AC_DEFINE(HAVE_GETTIMEOFDAY),[
-
- AC_CHECK_LIB(bsd, gettimeofday,
-- AC_DEFINE(HAVE_GETTIMEOFDAY)
-+ AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define to 1 if we have gettimeofday])
- LIBS="$LIBS -lbsd")])dnl CLIX: bzero, select, gettimeofday
- ;;
- esac
-@@ -505,8 +462,6 @@
- ### Checks for library functions.
- CF_MKSTEMP
-
--AC_TYPE_SIGNAL
--
- 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
- CF_STRIP_G_OPT(CFLAGS)
-@@ -514,28 +469,18 @@
- fi
-
- CF_HELP_MESSAGE(Ada95 Binding Options:)
--
-+cf_with_ada=yes
- dnl Check for availability of GNU Ada Translator (GNAT).
- dnl At the moment we support no other Ada95 compiler.
- if test "$cf_with_ada" != "no" ; then
- CF_PROG_GNAT
- if test "$cf_cv_prog_gnat_correct" = yes; then
-+ CF_FIXUP_ADAFLAGS
-
-- # make ADAFLAGS consistent with CFLAGS
-- case "$CFLAGS" in
-- *-g*)
-- CF_ADD_ADAFLAGS(-g)
-- ;;
-- esac
-- case "$CFLAGS" in
-- *-O*)
-- CF_ADD_ADAFLAGS(-O3)
-- ;;
-- esac
-+ CF_GNATPREP_OPT_T
-
- CF_GNAT_GENERICS
- CF_GNAT_SIGINT
-- CF_GNAT_PRAGMA_UNREF
- CF_GNAT_PROJECTS
-
- CF_WITH_ADA_COMPILER
-@@ -556,8 +501,10 @@
- ################################################################################
-
- # not needed
--TINFO_ARGS2=
--AC_SUBST(TINFO_ARGS2)
-+TINFO_LDFLAGS2=
-+AC_SUBST(TINFO_LDFLAGS2)
-+TINFO_LIBS=
-+AC_SUBST(TINFO_LIBS)
-
- ### Construct the list of include-directories to be generated
- CF_INCLUDE_DIRS
-@@ -586,6 +533,9 @@
- cygwin*)
- # "lib" files have ".dll.a" suffix, "cyg" files have ".dll"
- ;;
-+ msys*)
-+ # "lib" files have ".dll.a" suffix, "msys-" files have ".dll"
-+ ;;
- esac
- fi
-
-@@ -594,24 +544,13 @@
-
- SUB_MAKEFILES="gen/adacurses${DFT_ARG_SUFFIX}-config:gen/adacurses-config.in"
-
--AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR')
-+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)
-
- ################################################################################
-
--if test x"$enable_pc_files" = xyes ; then \
--SUB_MAKEFILES="$SUB_MAKEFILES misc/gen-pkgconfig:misc/gen-pkgconfig.in"
--MAKE_PC_FILES=
--else
--MAKE_PC_FILES="#"
--fi
--AC_SUBST(MAKE_PC_FILES)
--AC_SUBST(cross_compiling)
--
--################################################################################
--
- TEST_ARG2=
- AC_SUBST(TEST_ARG2)
-
-@@ -656,8 +595,8 @@
- AWK="$AWK"
- DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
- DFT_LWR_MODEL="$DFT_LWR_MODEL"
--ECHO_LINK="$ECHO_LINK"
- LIB_NAME="$LIB_NAME"
-+LIB_PREFIX="$LIB_PREFIX"
- LIB_SUFFIX="$LIB_SUFFIX"
- LN_S="$LN_S"
- NCURSES_MAJOR="$NCURSES_MAJOR"
-Index: Ada95/doc/Makefile.in
-Prereq: 1.2
---- ncurses-5.9/Ada95/doc/Makefile.in 2011-03-26 19:26:17.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/doc/Makefile.in 2012-08-11 21:31:56.000000000 +0000
-@@ -1,4 +1,4 @@
--# $Id: Makefile.in,v 1.2 2011/03/26 19:26:17 tom Exp $
-+# $Id: Makefile.in,v 1.3 2012/08/11 21:31:56 tom Exp $
- ##############################################################################
- # Copyright (c) 2011 Free Software Foundation, Inc. #
- # #
-@@ -38,6 +38,7 @@
- srcdir = @srcdir@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
-+datarootdir = @datarootdir@
- datadir = @datadir@
- mandir = @mandir@
-
-Index: Ada95/gen/Makefile.in
-Prereq: 1.74
---- ncurses-5.9/Ada95/gen/Makefile.in 2011-03-26 23:36:30.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/Makefile.in 2014-05-31 23:38:17.000000000 +0000
-@@ -1,5 +1,5 @@
- ##############################################################################
--# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2012,2014 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"), #
-@@ -28,7 +28,7 @@
- #
- # Author: Juergen Pfeifer, 1996
- #
--# $Id: Makefile.in,v 1.74 2011/03/26 23:36:30 tom Exp $
-+# $Id: Makefile.in,v 1.81 2014/05/31 23:38:17 tom Exp $
- #
- .SUFFIXES:
-
-@@ -36,7 +36,7 @@
- VPATH = @srcdir@
- THIS = Makefile
-
--x = @PROG_EXT@
-+x = @EXEEXT@
-
- top_srcdir = @top_srcdir@
- DESTDIR = @DESTDIR@
-@@ -73,7 +73,7 @@
- LOCAL_LIBDIR = @top_builddir@/lib
-
- LINK = $(HOST_CC)
--LD_FLAGS = @LD_MODEL@ $(LOCAL_LIBS) @LDFLAGS@ @LIBS@ @LOCAL_LDFLAGS2@ $(LDFLAGS) @TINFO_ARGS2@
-+LD_FLAGS = @LD_MODEL@ $(LOCAL_LIBS) @TINFO_LDFLAGS2@ @LDFLAGS@ @LIBS@ @LOCAL_LDFLAGS2@ $(LDFLAGS) @TINFO_LIBS@
-
- RANLIB = @RANLIB@
-
-@@ -97,39 +97,6 @@
-
- ADA_SRCDIR = ../src
-
--GEN_FILES0 = Base_Defs
--
--GEN_FILES1 = ACS_Map \
-- AC_Rep \
-- Base_Defs \
-- Character_Attribute_Set_Rep \
-- Color_Defs \
-- Key_Definitions \
-- Linker_Options \
-- Old_Keys \
-- Public_Variables \
-- Trace_Defs \
-- Version_Info \
-- Window_Offsets
--
--GEN_FILES2 = Menu_Opt_Rep \
-- Menu_Base_Defs \
-- Menu_Linker_Options \
-- Item_Rep
--
--GEN_FILES3 = Form_Opt_Rep \
-- Form_Base_Defs \
-- Form_Linker_Options \
-- Field_Rep
--
--GEN_FILES4 = Mouse_Base_Defs \
-- Mouse_Event_Rep \
-- Mouse_Events \
-- Panel_Linker_Options
--
--GEN_FILES5 = Chtype_Def \
-- Eti_Defs
--
- GEN_TARGETS = $(ADA_SRCDIR)/$(ABASE).ads \
- $(ADA_SRCDIR)/$(ABASE).adb \
- $(ADA_SRCDIR)/$(ABASE)-aux.ads \
-@@ -143,7 +110,8 @@
- $(ADA_SRCDIR)/$(ABASE)-forms-form_user_data.ads \
- $(ADA_SRCDIR)/$(ABASE)-forms-field_types.ads \
- $(ADA_SRCDIR)/$(ABASE)-forms-field_user_data.ads \
-- $(ADA_SRCDIR)/$(ABASE)-panels-user_data.ads
-+ $(ADA_SRCDIR)/$(ABASE)-panels-user_data.ads \
-+ $(ADA_SRCDIR)/$(ABASE)_constants.ads
-
- GEN_SRC = $(srcdir)/$(ABASE).ads.m4 \
- $(srcdir)/$(ABASE).adb.m4 \
-@@ -179,133 +147,57 @@
- -rm -f $(DESTDIR)$(bindir)/$(ADACURSES_CONFIG)
-
- $(PROG_GENERATE): gen.o
-- @ECHO_LINK@ $(LINK) $(CFLAGS_NORMAL) gen.o $(LD_FLAGS) -o $@
-+ @ECHO_LD@ $(LINK) $(CFLAGS_NORMAL) gen.o $(LD_FLAGS) -o $@
-
- gen.o: $(srcdir)/gen.c
- $(HOST_CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/gen.c
--################################################################################
--Character_Attribute_Set_Rep: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B A" >$@
--
--Base_Defs: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B B" >$@
--
--Color_Defs: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B C" >$@
--
--Window_Offsets: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B D" >$@
--
--Key_Definitions: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B K" >$@
--
--Linker_Options: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B L" >$@
--
--ACS_Map: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B M" >$@
--
--Old_Keys: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B O" >$@
--
--Public_Variables: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B P" >$@
--
--AC_Rep: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B R" >$@
--
--Version_Info: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B V" >$@
--
--Trace_Defs: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B T" >$@
--################################################################################
--Menu_Opt_Rep: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) M R" >$@
--
--Menu_Base_Defs: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) M B" >$@
--
--Menu_Linker_Options: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) M L" >$@
--
--Item_Rep: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) M I" >$@
--################################################################################
--Form_Opt_Rep: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) F R" >$@
--
--Form_Base_Defs: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) F B" >$@
--
--Form_Linker_Options: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) F L" >$@
--
--Field_Rep: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) F I" >$@
--################################################################################
--Mouse_Base_Defs: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) P B" >$@
--
--Mouse_Event_Rep: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) P M" >$@
--
--Mouse_Events: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) B E" >$@
--
--Panel_Linker_Options: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) P L" >$@
--
--Chtype_Def: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) E C" >$@
-
--Eti_Defs: $(PROG_GENERATE)
-- $(WRAPPER) "$(GENERATE) E E" >$@
-+$(ADA_SRCDIR)/$(ABASE)_constants.ads: $(PROG_GENERATE)
-+ $(WRAPPER) "$(GENERATE)" >$@
- ################################################################################
- $(ADA_SRCDIR)/$(ABASE).ads: $(srcdir)/$(ABASE).ads.m4 \
-- $(GEN_FILES1) $(srcdir)/normal.m4
-+ $(srcdir)/normal.m4
- $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
- $(srcdir)/$(ABASE).ads.m4 |\
- $(DEL_ADAMODE) >$@
-
- $(ADA_SRCDIR)/$(ABASE).adb: $(srcdir)/$(ABASE).adb.m4 \
-- $(GEN_FILES1) $(srcdir)/normal.m4
-+ $(srcdir)/normal.m4
- $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
- $(srcdir)/$(ABASE).adb.m4 |\
- $(DEL_ADAMODE) >$@
-
- $(ADA_SRCDIR)/$(ABASE)-aux.ads: $(srcdir)/$(ABASE)-aux.ads.m4 \
-- $(GEN_FILES5) $(srcdir)/normal.m4
-+ $(srcdir)/normal.m4
- $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
- $(srcdir)/$(ABASE)-aux.ads.m4 |\
- $(DEL_ADAMODE) >$@
-
- $(ADA_SRCDIR)/$(ABASE)-trace.ads: $(srcdir)/$(ABASE)-trace.ads.m4 \
-- $(GEN_FILES5) $(srcdir)/normal.m4
-+ $(srcdir)/normal.m4
- $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
- $(srcdir)/$(ABASE)-trace.ads.m4 |\
- $(DEL_ADAMODE) >$@
-
- $(ADA_SRCDIR)/$(ABASE)-menus.ads: $(srcdir)/$(ABASE)-menus.ads.m4 \
-- $(GEN_FILES2) $(srcdir)/normal.m4
-+ $(srcdir)/normal.m4
- $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
- $(srcdir)/$(ABASE)-menus.ads.m4 |\
- $(DEL_ADAMODE) >$@
-
- $(ADA_SRCDIR)/$(ABASE)-forms.ads: $(srcdir)/$(ABASE)-forms.ads.m4 \
-- $(GEN_FILES3) $(srcdir)/normal.m4
-+ $(srcdir)/normal.m4
- $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
- $(srcdir)/$(ABASE)-forms.ads.m4 |\
- $(DEL_ADAMODE) >$@
-
- $(ADA_SRCDIR)/$(ABASE)-mouse.ads: $(srcdir)/$(ABASE)-mouse.ads.m4 \
-- $(GEN_FILES4) $(srcdir)/normal.m4
-+ $(srcdir)/normal.m4
- $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
- $(srcdir)/$(ABASE)-mouse.ads.m4 |\
- $(DEL_ADAMODE) >$@
-
- $(ADA_SRCDIR)/$(ABASE)-panels.ads: $(srcdir)/$(ABASE)-panels.ads.m4 \
-- $(GEN_FILES4) \
- $(srcdir)/normal.m4
- $(M4) $(M4FLAGS) -DM4MACRO=$(srcdir)/normal.m4 \
- $(srcdir)/$(ABASE)-panels.ads.m4 |\
-@@ -363,11 +255,6 @@
-
- mostlyclean ::
- -rm -f a.out core $(PROG_GENERATE) *.o
-- -rm -f $(GEN_FILES1)
-- -rm -f $(GEN_FILES2)
-- -rm -f $(GEN_FILES3)
-- -rm -f $(GEN_FILES4)
-- -rm -f $(GEN_FILES5)
-
- clean :: mostlyclean
- -rm -f $(GEN_TARGETS) instab.tmp *.ad[bs] *.html *.ali *.tmp
-@@ -411,7 +298,7 @@
- @mkdir -p $(HTML_DIR)
- cp -p ../src/*.ad[sb] . && chmod +w *.ad[sb]
- @USE_OLD_MAKERULES@ ln -sf ../src/*.ali .
--@USE_GNAT_PROJECTS@ ln -sf ../static-ali/*.ali .
-+@USE_GNAT_PROJECTS@ ln -sf ../static-ali/*.ali .
- @echo "Filtering generated files"
- @for f in $(GEN_SRC); do \
- h=`basename $$f` ;\
-Index: Ada95/gen/adacurses-config.in
-Prereq: 1.6
---- ncurses-5.9/Ada95/gen/adacurses-config.in 2010-03-06 21:05:01.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/adacurses-config.in 2014-06-07 19:32:22.000000000 +0000
-@@ -1,7 +1,7 @@
- #! /bin/sh
--# $Id: adacurses-config.in,v 1.6 2010/03/06 21:05:01 tom Exp $
-+# $Id: adacurses-config.in,v 1.9 2014/06/07 19:32:22 Pascal.Pignard Exp $
- ##############################################################################
--# Copyright (c) 2007-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 2007-2010,2014 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"), #
-@@ -40,7 +40,7 @@
-
- VERSION=@NCURSES_MAJOR@.@NCURSES_MINOR@.@NCURSES_PATCH@
-
--CFLAGS="-I$ADA_INCLUDE -aO$ADA_OBJECTS"
-+CFLAGS="-aI$ADA_INCLUDE -aO$ADA_OBJECTS"
- LIBS="-L$ADA_OBJECTS -lAdaCurses"
-
- THIS="adacurses"
-@@ -57,19 +57,21 @@
- ;;
- x)
- # if no parameter is given, give what gnatmake needs
-- echo "$CFLAGS -i -largs $LIBS"
-+ echo "$CFLAGS -largs $LIBS"
- ;;
- x--help)
- cat <<ENDHELP
- Usage: ${THIS}-config [options]
-
- Options:
-- --cflags echos the C compiler flags needed to compile with ${THIS}
-- --libs echos the libraries needed to link with ${THIS}
-+ --cflags echos the gnat (Ada compiler) flags needed to compile with ${THIS}
-+ --libs echos the gnat libraries needed to link with ${THIS}
-
- --version echos the release+patchdate version of ${THIS}
-
- --help prints this message
-+
-+If no options are given, echos the full set of flags needed by gnatmake.
- ENDHELP
- ;;
- *)
-Index: Ada95/gen/gen.c
-Prereq: 1.59
---- ncurses-5.9/Ada95/gen/gen.c 2011-03-31 23:50:24.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/gen.c 2014-05-31 21:00:08.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998,2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -32,1537 +32,503 @@
-
- /*
- Version Control
-- $Id: gen.c,v 1.59 2011/03/31 23:50:24 tom Exp $
-+ $Id: gen.c,v 1.69 2014/05/31 21:00:08 tom Exp $
- --------------------------------------------------------------------------*/
- /*
-- This program generates various record structures and constants from the
-- ncurses header file for the Ada95 packages. Essentially it produces
-- Ada95 source on stdout, which is then merged using m4 into a template
-- to produce the real source.
-- */
-+ This program prints on its standard output the source for the
-+ Terminal_Interface.Curses_Constants Ada package specification. This pure
-+ package only exports C constants to the Ada compiler.
-+ */
-
- #ifdef HAVE_CONFIG_H
- #include <ncurses_cfg.h>
- #else
- #include <ncurses.h>
--#define HAVE_USE_DEFAULT_COLORS 1
- #endif
-
- #include <stdlib.h>
--#include <stddef.h>
- #include <string.h>
--#include <assert.h>
--#include <ctype.h>
-
- #include <menu.h>
- #include <form.h>
-
--#define UChar(c) ((unsigned char)(c))
--#define RES_NAME "Reserved"
--
--static const char *model = "";
--static int little_endian = 0;
--
--typedef struct
-- {
-- const char *name;
-- unsigned long attr;
-- }
--name_attribute_pair;
--
--static int
--find_pos(char *s, unsigned len, int *low, int *high)
--{
-- unsigned int i, j;
-- int l = 0;
-+#undef UCHAR
-+#undef UINT
-
-- *high = -1;
-- *low = (int)(8 * len);
-+typedef unsigned char UCHAR;
-+typedef unsigned int UINT;
-
-- for (i = 0; i < len; i++, s++)
-- {
-- if (*s)
-- {
-- for (j = 0; j < 8 * sizeof(char); j++)
--
-- {
-- if (((little_endian && ((*s) & 0x01)) ||
-- (!little_endian && ((*s) & 0x80))))
-- {
-- if (l > *high)
-- *high = l;
-- if (l < *low)
-- *low = l;
-- }
-- l++;
-- if (little_endian)
-- {
-- *s >>= 1;
-- }
-- else
-- {
-- *s = (char)(*s << 1);
-- }
-- }
-- }
-- else
-- l += 8;
-- }
-- return (*high >= 0 && (*low <= *high)) ? *low : -1;
--}
-+/* These global variables will be set by main () */
-+static int little_endian;
-+static const char *my_program_invocation_name = NULL;
-
--/*
-- * This helper routine generates a representation clause for a
-- * record type defined in the binding.
-- * We are only dealing with record types which are of 32 or 16
-- * bit size, i.e. they fit into an (u)int or a (u)short.
-- */
- static void
--gen_reps(
-- const name_attribute_pair * nap, /* array of name_attribute_pair records */
-- const char *name, /* name of the represented record type */
-- int len, /* size of the record in bytes */
-- int bias)
-+my_error(const char *message)
- {
-- const char *unused_name = "Unused";
-- int long_bits = (8 * (int)sizeof(unsigned long));
-- int len_bits = (8 * len);
-- int i, j, n, l, cnt = 0, low, high;
-- int width = strlen(RES_NAME) + 3;
-- unsigned long a;
-- unsigned long mask = 0;
--
-- assert(nap != NULL);
--
-- for (i = 0; nap[i].name != (char *)0; i++)
-- {
-- cnt++;
-- l = (int)strlen(nap[i].name);
-- if (l > width)
-- width = l;
-- }
-- assert(width > 0);
--
-- printf(" type %s is\n", name);
-- printf(" record\n");
-- for (i = 0; nap[i].name != (char *)0; i++)
-- {
-- mask |= nap[i].attr;
-- printf(" %-*s : Boolean;\n", width, nap[i].name);
-- }
--
-- /*
-- * Compute a mask for the unused bits in this target.
-- */
-- mask = ~mask;
-- /*
-- * Bits in the biased area are unused by the target.
-- */
-- for (j = 0; j < bias; ++j)
-- {
-- mask &= (unsigned long)(~(1L << j));
-- }
-- /*
-- * Bits past the target's size are really unused.
-- */
-- for (j = len_bits + bias; j < long_bits; ++j)
-- {
-- mask &= (unsigned long)(~(1L << j));
-- }
-- if (mask != 0)
-- {
-- printf(" %-*s : Boolean;\n", width, unused_name);
-- }
-- printf(" end record;\n");
-- printf(" pragma Convention (C, %s);\n\n", name);
--
-- printf(" for %s use\n", name);
-- printf(" record\n");
--
-- for (i = 0; nap[i].name != (char *)0; i++)
-- {
-- a = nap[i].attr;
-- l = find_pos((char *)&a, sizeof(a), &low, &high);
-- if (l >= 0)
-- printf(" %-*s at 0 range %2d .. %2d;\n", width, nap[i].name,
-- low - bias, high - bias);
-- }
-- if (mask != 0)
-- {
-- l = find_pos((char *)&mask, sizeof(mask), &low, &high);
-- if (l >= 0)
-- printf(" %-*s at 0 range %2d .. %2d;\n", width, unused_name,
-- low - bias, high - bias);
-- }
-- i = 1;
-- n = cnt;
-- printf(" end record;\n");
-- printf(" for %s'Size use %d;\n", name, len_bits);
-- printf(" -- Please note: this rep. clause is generated and may be\n");
-- printf(" -- different on your system.");
-+ fprintf(stderr, "%s: %s\n", my_program_invocation_name, message);
-+ exit(EXIT_FAILURE);
- }
-
- static void
--chtype_rep(const char *name, attr_t mask)
-+print_constant(const char *name,
-+ long value)
- {
-- attr_t x = (attr_t)-1;
-- attr_t t = x & mask;
-- int low, high;
-- int l = find_pos((char *)&t, sizeof(t), &low, &high);
--
-- if (l >= 0)
-- printf(" %-5s at 0 range %2d .. %2d;\n", name, low, high);
-+ printf(" %-28s : constant := %ld;\n", name, value);
- }
-
--static void
--gen_chtype_rep(const char *name)
--{
-- printf(" for %s use\n record\n", name);
-- chtype_rep("Ch", A_CHARTEXT);
-- chtype_rep("Color", A_COLOR);
-- chtype_rep("Attr", (A_ATTRIBUTES & ~A_COLOR));
-- printf(" end record;\n for %s'Size use %ld;\n",
-- name, (long)(8 * sizeof(chtype)));
--
-- printf(" -- Please note: this rep. clause is generated and may be\n");
-- printf(" -- different on your system.\n");
--}
-+#define PRINT_NAMED_CONSTANT(name) \
-+ print_constant (#name, name)
-
- static void
--mrep_rep(const char *name, void *rec)
-+print_comment(const char *message)
- {
-- int low, high;
-- int l = find_pos((char *)rec, sizeof(MEVENT), &low, &high);
--
-- if (l >= 0)
-- printf(" %-7s at 0 range %3d .. %3d;\n", name, low, high);
-+ printf("\n -- %s\n\n", message);
- }
-
--static void
--gen_mrep_rep(const char *name)
--{
-- MEVENT x;
--
-- printf(" for %s use\n record\n", name);
--
-- memset(&x, 0, sizeof(x));
-- x.id = -1;
-- mrep_rep("Id", &x);
--
-- memset(&x, 0, sizeof(x));
-- x.x = -1;
-- mrep_rep("X", &x);
--
-- memset(&x, 0, sizeof(x));
-- x.y = -1;
-- mrep_rep("Y", &x);
--
-- memset(&x, 0, sizeof(x));
-- x.z = -1;
-- mrep_rep("Z", &x);
--
-- memset(&x, 0, sizeof(x));
-- x.bstate = (mmask_t) - 1;
-- mrep_rep("Bstate", &x);
--
-- printf(" end record;\n");
-- printf(" -- Please note: this rep. clause is generated and may be\n");
-- printf(" -- different on your system.\n");
--}
--
--static void
--gen_attr_set(const char *name)
--{
-- /* All of the A_xxx symbols are defined in ncurses, but not all are nonzero
-- * if "configure --enable-widec" is not specified. Originally (in
-- * 1999-2000), the ifdef's also were needed since the proposed bit-layout
-- * for wide characters allocated 16-bits for A_CHARTEXT, leaving too few
-- * bits for a few of the A_xxx symbols.
-- */
-- static const name_attribute_pair nap[] =
-- {
--#if A_STANDOUT
-- {"Stand_Out", A_STANDOUT},
--#endif
--#if A_UNDERLINE
-- {"Under_Line", A_UNDERLINE},
--#endif
--#if A_REVERSE
-- {"Reverse_Video", A_REVERSE},
--#endif
--#if A_BLINK
-- {"Blink", A_BLINK},
--#endif
--#if A_DIM
-- {"Dim_Character", A_DIM},
--#endif
--#if A_BOLD
-- {"Bold_Character", A_BOLD},
--#endif
--#if A_ALTCHARSET
-- {"Alternate_Character_Set", A_ALTCHARSET},
--#endif
--#if A_INVIS
-- {"Invisible_Character", A_INVIS},
--#endif
--#if A_PROTECT
-- {"Protected_Character", A_PROTECT},
--#endif
--#if A_HORIZONTAL
-- {"Horizontal", A_HORIZONTAL},
--#endif
--#if A_LEFT
-- {"Left", A_LEFT},
--#endif
--#if A_LOW
-- {"Low", A_LOW},
--#endif
--#if A_RIGHT
-- {"Right", A_RIGHT},
--#endif
--#if A_TOP
-- {"Top", A_TOP},
--#endif
--#if A_VERTICAL
-- {"Vertical", A_VERTICAL},
--#endif
-- {(char *)0, 0}
-- };
-- chtype attr = A_ATTRIBUTES & ~A_COLOR;
-- int start = -1;
-- int len = 0;
-- int i;
-- chtype set;
-- for (i = 0; i < (int)(8 * sizeof(chtype)); i++)
--
-- {
-- set = (attr & 1);
-- if (set)
-- {
-- if (start < 0)
-- start = i;
-- if (start >= 0)
-- {
-- len++;
-- }
-- }
-- attr = attr >> 1;
-- }
-- gen_reps(nap, name, (len + 7) / 8, little_endian ? start : 0);
--}
--
--static void
--gen_trace(const char *name)
--{
-- static const name_attribute_pair nap[] =
-- {
-- {"Times", TRACE_TIMES},
-- {"Tputs", TRACE_TPUTS},
-- {"Update", TRACE_UPDATE},
-- {"Cursor_Move", TRACE_MOVE},
-- {"Character_Output", TRACE_CHARPUT},
-- {"Calls", TRACE_CALLS},
-- {"Virtual_Puts", TRACE_VIRTPUT},
-- {"Input_Events", TRACE_IEVENT},
-- {"TTY_State", TRACE_BITS},
-- {"Internal_Calls", TRACE_ICALLS},
-- {"Character_Calls", TRACE_CCALLS},
-- {"Termcap_TermInfo", TRACE_DATABASE},
-- {"Attributes_And_Colors", TRACE_ATTRS},
-- {(char *)0, 0}
-- };
-- gen_reps(nap, name, sizeof(int), 0);
--}
--
--static void
--gen_menu_opt_rep(const char *name)
--{
-- static const name_attribute_pair nap[] =
-- {
--#ifdef O_ONEVALUE
-- {"One_Valued", O_ONEVALUE},
--#endif
--#ifdef O_SHOWDESC
-- {"Show_Descriptions", O_SHOWDESC},
--#endif
--#ifdef O_ROWMAJOR
-- {"Row_Major_Order", O_ROWMAJOR},
--#endif
--#ifdef O_IGNORECASE
-- {"Ignore_Case", O_IGNORECASE},
--#endif
--#ifdef O_SHOWMATCH
-- {"Show_Matches", O_SHOWMATCH},
-+/*
-+ * Make sure that KEY_MIN and KEY_MAX are defined.
-+ * main () will protest if KEY_MIN == 256
-+ */
-+#ifndef KEY_MAX
-+# define KEY_MAX 0777
- #endif
--#ifdef O_NONCYCLIC
-- {"Non_Cyclic", O_NONCYCLIC},
-+#ifndef KEY_MIN
-+# define KEY_MIN 0401
- #endif
-- {(char *)0, 0}
-- };
-- gen_reps(nap, name, sizeof(int), 0);
--}
-
--static void
--gen_item_opt_rep(const char *name)
--{
-- static const name_attribute_pair nap[] =
-- {
--#ifdef O_SELECTABLE
-- {"Selectable", O_SELECTABLE},
--#endif
-- {(char *)0, 0}
-- };
-- gen_reps(nap, name, sizeof(int), 0);
-+static UCHAR
-+bit_is_set(const UCHAR * const data,
-+ const UINT offset)
-+{
-+ const UCHAR byte = data[offset >> 3];
-+ UINT bit;
-+
-+ if (little_endian)
-+ bit = offset; /* offset */
-+ else /* or */
-+ bit = ~offset; /* 7 - offset */
-+ bit &= 7; /* modulo 8 */
-+ return byte & (UCHAR) (1 << bit);
- }
-
--static void
--gen_form_opt_rep(const char *name)
-+/* Find lowest and highest used offset in a byte array. */
-+/* Returns 0 if and only if all bits are unset. */
-+static int
-+find_pos(const UCHAR * const data,
-+ const UINT sizeof_data,
-+ UINT * const low,
-+ UINT * const high)
- {
-- static const name_attribute_pair nap[] =
-- {
--#ifdef O_NL_OVERLOAD
-- {"NL_Overload", O_NL_OVERLOAD},
--#endif
--#ifdef O_BS_OVERLOAD
-- {"BS_Overload", O_BS_OVERLOAD},
--#endif
-- {(char *)0, 0}
-- };
-- gen_reps(nap, name, sizeof(int), 0);
--}
-+ const UINT last = (sizeof_data << 3) - 1;
-+ UINT offset;
-
--/*
-- * Generate the representation clause for the Field_Option_Set record
-- */
--static void
--gen_field_opt_rep(const char *name)
--{
-- static const name_attribute_pair nap[] =
-- {
--#ifdef O_VISIBLE
-- {"Visible", O_VISIBLE},
--#endif
--#ifdef O_ACTIVE
-- {"Active", O_ACTIVE},
--#endif
--#ifdef O_PUBLIC
-- {"Public", O_PUBLIC},
--#endif
--#ifdef O_EDIT
-- {"Edit", O_EDIT},
--#endif
--#ifdef O_WRAP
-- {"Wrap", O_WRAP},
--#endif
--#ifdef O_BLANK
-- {"Blank", O_BLANK},
--#endif
--#ifdef O_AUTOSKIP
-- {"Auto_Skip", O_AUTOSKIP},
--#endif
--#ifdef O_NULLOK
-- {"Null_Ok", O_NULLOK},
--#endif
--#ifdef O_PASSOK
-- {"Pass_Ok", O_PASSOK},
--#endif
--#ifdef O_STATIC
-- {"Static", O_STATIC},
--#endif
-- {(char *)0, 0}
-- };
-- gen_reps(nap, name, sizeof(int), 0);
--}
-+ for (offset = last; !bit_is_set(data, offset); offset--)
-+ if (!offset) /* All bits are 0. */
-+ return 0;
-+ *high = offset;
-
--/*
-- * Generate a single key code constant definition.
-- */
--static void
--keydef(const char *name, const char *old_name, int value, int mode)
--{
-- if (mode == 0) /* Generate the new name */
-- printf(" %-30s : constant Special_Key_Code := 8#%3o#;\n", name, value);
-- else
-+ for (offset = 0; !bit_is_set(data, offset); offset++)
- {
-- const char *s = old_name;
-- const char *t = name;
--
-- /* generate the old name, but only if it doesn't conflict with the old
-- * name (Ada95 isn't case sensitive!)
-- */
-- while (*s && *t && (toupper(UChar(*s++)) == toupper(UChar(*t++))));
-- if (*s || *t)
-- printf(" %-16s : Special_Key_Code renames %s;\n", old_name, name);
- }
-+ *low = offset;
-+
-+ return -1;
- }
-
--/*
-- * Generate constants for the key codes. When called with mode==0, a
-- * complete list with nice constant names in proper casing style will
-- * be generated. Otherwise a list of old (i.e. C-style) names will be
-- * generated, given that the name wasn't already defined in the "nice"
-- * list.
-- */
--static void
--gen_keydefs(int mode)
--{
-- char buf[16];
-- char obuf[16];
-- int i;
-+#define PRINT_BITMASK(c_type, ada_name, mask_macro) \
-+ { \
-+ UINT first, last; \
-+ 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); \
-+ }
-
--#ifdef KEY_CODE_YES
-- keydef("Key_Code_Yes", "KEY_CODE_YES", KEY_CODE_YES, mode);
--#endif
--#ifdef KEY_MIN
-- keydef("Key_Min", "KEY_MIN", KEY_MIN, mode);
--#endif
--#ifdef KEY_BREAK
-- keydef("Key_Break", "KEY_BREAK", KEY_BREAK, mode);
--#endif
--#ifdef KEY_DOWN
-- keydef("Key_Cursor_Down", "KEY_DOWN", KEY_DOWN, mode);
--#endif
--#ifdef KEY_UP
-- keydef("Key_Cursor_Up", "KEY_UP", KEY_UP, mode);
--#endif
--#ifdef KEY_LEFT
-- keydef("Key_Cursor_Left", "KEY_LEFT", KEY_LEFT, mode);
--#endif
--#ifdef KEY_RIGHT
-- keydef("Key_Cursor_Right", "KEY_RIGHT", KEY_RIGHT, mode);
--#endif
--#ifdef KEY_HOME
-- keydef("Key_Home", "KEY_HOME", KEY_HOME, mode);
--#endif
--#ifdef KEY_BACKSPACE
-- keydef("Key_Backspace", "KEY_BACKSPACE", KEY_BACKSPACE, mode);
--#endif
--#ifdef KEY_F0
-- keydef("Key_F0", "KEY_F0", KEY_F0, mode);
--#endif
--#ifdef KEY_F
-- for (i = 1; i <= 24; i++)
-- {
-- sprintf(buf, "Key_F%d", i);
-- sprintf(obuf, "KEY_F%d", i);
-- keydef(buf, obuf, KEY_F(i), mode);
-- }
--#endif
--#ifdef KEY_DL
-- keydef("Key_Delete_Line", "KEY_DL", KEY_DL, mode);
--#endif
--#ifdef KEY_IL
-- keydef("Key_Insert_Line", "KEY_IL", KEY_IL, mode);
--#endif
--#ifdef KEY_DC
-- keydef("Key_Delete_Char", "KEY_DC", KEY_DC, mode);
--#endif
--#ifdef KEY_IC
-- keydef("Key_Insert_Char", "KEY_IC", KEY_IC, mode);
--#endif
--#ifdef KEY_EIC
-- keydef("Key_Exit_Insert_Mode", "KEY_EIC", KEY_EIC, mode);
--#endif
--#ifdef KEY_CLEAR
-- keydef("Key_Clear_Screen", "KEY_CLEAR", KEY_CLEAR, mode);
--#endif
--#ifdef KEY_EOS
-- keydef("Key_Clear_End_Of_Screen", "KEY_EOS", KEY_EOS, mode);
--#endif
--#ifdef KEY_EOL
-- keydef("Key_Clear_End_Of_Line", "KEY_EOL", KEY_EOL, mode);
--#endif
--#ifdef KEY_SF
-- keydef("Key_Scroll_1_Forward", "KEY_SF", KEY_SF, mode);
--#endif
--#ifdef KEY_SR
-- keydef("Key_Scroll_1_Backward", "KEY_SR", KEY_SR, mode);
--#endif
--#ifdef KEY_NPAGE
-- keydef("Key_Next_Page", "KEY_NPAGE", KEY_NPAGE, mode);
--#endif
--#ifdef KEY_PPAGE
-- keydef("Key_Previous_Page", "KEY_PPAGE", KEY_PPAGE, mode);
--#endif
--#ifdef KEY_STAB
-- keydef("Key_Set_Tab", "KEY_STAB", KEY_STAB, mode);
--#endif
--#ifdef KEY_CTAB
-- keydef("Key_Clear_Tab", "KEY_CTAB", KEY_CTAB, mode);
--#endif
--#ifdef KEY_CATAB
-- keydef("Key_Clear_All_Tabs", "KEY_CATAB", KEY_CATAB, mode);
--#endif
--#ifdef KEY_ENTER
-- keydef("Key_Enter_Or_Send", "KEY_ENTER", KEY_ENTER, mode);
--#endif
--#ifdef KEY_SRESET
-- keydef("Key_Soft_Reset", "KEY_SRESET", KEY_SRESET, mode);
--#endif
--#ifdef KEY_RESET
-- keydef("Key_Reset", "KEY_RESET", KEY_RESET, mode);
--#endif
--#ifdef KEY_PRINT
-- keydef("Key_Print", "KEY_PRINT", KEY_PRINT, mode);
--#endif
--#ifdef KEY_LL
-- keydef("Key_Bottom", "KEY_LL", KEY_LL, mode);
--#endif
--#ifdef KEY_A1
-- keydef("Key_Upper_Left_Of_Keypad", "KEY_A1", KEY_A1, mode);
--#endif
--#ifdef KEY_A3
-- keydef("Key_Upper_Right_Of_Keypad", "KEY_A3", KEY_A3, mode);
--#endif
--#ifdef KEY_B2
-- keydef("Key_Center_Of_Keypad", "KEY_B2", KEY_B2, mode);
--#endif
--#ifdef KEY_C1
-- keydef("Key_Lower_Left_Of_Keypad", "KEY_C1", KEY_C1, mode);
--#endif
--#ifdef KEY_C3
-- keydef("Key_Lower_Right_Of_Keypad", "KEY_C3", KEY_C3, mode);
--#endif
--#ifdef KEY_BTAB
-- keydef("Key_Back_Tab", "KEY_BTAB", KEY_BTAB, mode);
--#endif
--#ifdef KEY_BEG
-- keydef("Key_Beginning", "KEY_BEG", KEY_BEG, mode);
--#endif
--#ifdef KEY_CANCEL
-- keydef("Key_Cancel", "KEY_CANCEL", KEY_CANCEL, mode);
--#endif
--#ifdef KEY_CLOSE
-- keydef("Key_Close", "KEY_CLOSE", KEY_CLOSE, mode);
--#endif
--#ifdef KEY_COMMAND
-- keydef("Key_Command", "KEY_COMMAND", KEY_COMMAND, mode);
--#endif
--#ifdef KEY_COPY
-- keydef("Key_Copy", "KEY_COPY", KEY_COPY, mode);
--#endif
--#ifdef KEY_CREATE
-- keydef("Key_Create", "KEY_CREATE", KEY_CREATE, mode);
--#endif
--#ifdef KEY_END
-- keydef("Key_End", "KEY_END", KEY_END, mode);
--#endif
--#ifdef KEY_EXIT
-- keydef("Key_Exit", "KEY_EXIT", KEY_EXIT, mode);
--#endif
--#ifdef KEY_FIND
-- keydef("Key_Find", "KEY_FIND", KEY_FIND, mode);
--#endif
--#ifdef KEY_HELP
-- keydef("Key_Help", "KEY_HELP", KEY_HELP, mode);
--#endif
--#ifdef KEY_MARK
-- keydef("Key_Mark", "KEY_MARK", KEY_MARK, mode);
--#endif
--#ifdef KEY_MESSAGE
-- keydef("Key_Message", "KEY_MESSAGE", KEY_MESSAGE, mode);
--#endif
--#ifdef KEY_MOVE
-- keydef("Key_Move", "KEY_MOVE", KEY_MOVE, mode);
--#endif
--#ifdef KEY_NEXT
-- keydef("Key_Next", "KEY_NEXT", KEY_NEXT, mode);
--#endif
--#ifdef KEY_OPEN
-- keydef("Key_Open", "KEY_OPEN", KEY_OPEN, mode);
--#endif
--#ifdef KEY_OPTIONS
-- keydef("Key_Options", "KEY_OPTIONS", KEY_OPTIONS, mode);
--#endif
--#ifdef KEY_PREVIOUS
-- keydef("Key_Previous", "KEY_PREVIOUS", KEY_PREVIOUS, mode);
--#endif
--#ifdef KEY_REDO
-- keydef("Key_Redo", "KEY_REDO", KEY_REDO, mode);
--#endif
--#ifdef KEY_REFERENCE
-- keydef("Key_Reference", "KEY_REFERENCE", KEY_REFERENCE, mode);
--#endif
--#ifdef KEY_REFRESH
-- keydef("Key_Refresh", "KEY_REFRESH", KEY_REFRESH, mode);
--#endif
--#ifdef KEY_REPLACE
-- keydef("Key_Replace", "KEY_REPLACE", KEY_REPLACE, mode);
--#endif
--#ifdef KEY_RESTART
-- keydef("Key_Restart", "KEY_RESTART", KEY_RESTART, mode);
--#endif
--#ifdef KEY_RESUME
-- keydef("Key_Resume", "KEY_RESUME", KEY_RESUME, mode);
--#endif
--#ifdef KEY_SAVE
-- keydef("Key_Save", "KEY_SAVE", KEY_SAVE, mode);
--#endif
--#ifdef KEY_SBEG
-- keydef("Key_Shift_Begin", "KEY_SBEG", KEY_SBEG, mode);
--#endif
--#ifdef KEY_SCANCEL
-- keydef("Key_Shift_Cancel", "KEY_SCANCEL", KEY_SCANCEL, mode);
--#endif
--#ifdef KEY_SCOMMAND
-- keydef("Key_Shift_Command", "KEY_SCOMMAND", KEY_SCOMMAND, mode);
--#endif
--#ifdef KEY_SCOPY
-- keydef("Key_Shift_Copy", "KEY_SCOPY", KEY_SCOPY, mode);
--#endif
--#ifdef KEY_SCREATE
-- keydef("Key_Shift_Create", "KEY_SCREATE", KEY_SCREATE, mode);
--#endif
--#ifdef KEY_SDC
-- keydef("Key_Shift_Delete_Char", "KEY_SDC", KEY_SDC, mode);
--#endif
--#ifdef KEY_SDL
-- keydef("Key_Shift_Delete_Line", "KEY_SDL", KEY_SDL, mode);
--#endif
--#ifdef KEY_SELECT
-- keydef("Key_Select", "KEY_SELECT", KEY_SELECT, mode);
--#endif
--#ifdef KEY_SEND
-- keydef("Key_Shift_End", "KEY_SEND", KEY_SEND, mode);
--#endif
--#ifdef KEY_SEOL
-- keydef("Key_Shift_Clear_End_Of_Line", "KEY_SEOL", KEY_SEOL, mode);
--#endif
--#ifdef KEY_SEXIT
-- keydef("Key_Shift_Exit", "KEY_SEXIT", KEY_SEXIT, mode);
--#endif
--#ifdef KEY_SFIND
-- keydef("Key_Shift_Find", "KEY_SFIND", KEY_SFIND, mode);
--#endif
--#ifdef KEY_SHELP
-- keydef("Key_Shift_Help", "KEY_SHELP", KEY_SHELP, mode);
--#endif
--#ifdef KEY_SHOME
-- keydef("Key_Shift_Home", "KEY_SHOME", KEY_SHOME, mode);
--#endif
--#ifdef KEY_SIC
-- keydef("Key_Shift_Insert_Char", "KEY_SIC", KEY_SIC, mode);
--#endif
--#ifdef KEY_SLEFT
-- keydef("Key_Shift_Cursor_Left", "KEY_SLEFT", KEY_SLEFT, mode);
--#endif
--#ifdef KEY_SMESSAGE
-- keydef("Key_Shift_Message", "KEY_SMESSAGE", KEY_SMESSAGE, mode);
--#endif
--#ifdef KEY_SMOVE
-- keydef("Key_Shift_Move", "KEY_SMOVE", KEY_SMOVE, mode);
--#endif
--#ifdef KEY_SNEXT
-- keydef("Key_Shift_Next_Page", "KEY_SNEXT", KEY_SNEXT, mode);
--#endif
--#ifdef KEY_SOPTIONS
-- keydef("Key_Shift_Options", "KEY_SOPTIONS", KEY_SOPTIONS, mode);
--#endif
--#ifdef KEY_SPREVIOUS
-- keydef("Key_Shift_Previous_Page", "KEY_SPREVIOUS", KEY_SPREVIOUS, mode);
--#endif
--#ifdef KEY_SPRINT
-- keydef("Key_Shift_Print", "KEY_SPRINT", KEY_SPRINT, mode);
--#endif
--#ifdef KEY_SREDO
-- keydef("Key_Shift_Redo", "KEY_SREDO", KEY_SREDO, mode);
--#endif
--#ifdef KEY_SREPLACE
-- keydef("Key_Shift_Replace", "KEY_SREPLACE", KEY_SREPLACE, mode);
--#endif
--#ifdef KEY_SRIGHT
-- keydef("Key_Shift_Cursor_Right", "KEY_SRIGHT", KEY_SRIGHT, mode);
--#endif
--#ifdef KEY_SRSUME
-- keydef("Key_Shift_Resume", "KEY_SRSUME", KEY_SRSUME, mode);
--#endif
--#ifdef KEY_SSAVE
-- keydef("Key_Shift_Save", "KEY_SSAVE", KEY_SSAVE, mode);
--#endif
--#ifdef KEY_SSUSPEND
-- keydef("Key_Shift_Suspend", "KEY_SSUSPEND", KEY_SSUSPEND, mode);
--#endif
--#ifdef KEY_SUNDO
-- keydef("Key_Shift_Undo", "KEY_SUNDO", KEY_SUNDO, mode);
--#endif
--#ifdef KEY_SUSPEND
-- keydef("Key_Suspend", "KEY_SUSPEND", KEY_SUSPEND, mode);
--#endif
--#ifdef KEY_UNDO
-- keydef("Key_Undo", "KEY_UNDO", KEY_UNDO, mode);
--#endif
--#ifdef KEY_MOUSE
-- keydef("Key_Mouse", "KEY_MOUSE", KEY_MOUSE, mode);
--#endif
--#ifdef KEY_RESIZE
-- keydef("Key_Resize", "KEY_RESIZE", KEY_RESIZE, mode);
--#endif
--}
-+#define PRINT_NAMED_BITMASK(c_type, mask_macro) \
-+ PRINT_BITMASK (c_type, #mask_macro, mask_macro)
-
--/*
-- * Generate a constant with the given name. The second parameter
-- * is a reference to the ACS character in the acs_map[] array and
-- * will be translated into an index.
-- */
--static void
--acs_def(const char *name, chtype *a)
--{
-- int c = (int)(a - &acs_map[0]);
-+#define STRUCT_OFFSET(record, field) \
-+ { \
-+ UINT first, last; \
-+ record mask; \
-+ memset (&mask, 0, sizeof (mask)); \
-+ 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); \
-+ }
-
-- printf(" %-24s : constant Character := ", name);
-- if (isprint(UChar(c)) && (c != '`'))
-- printf("'%c';\n", c);
-- else
-- printf("Character'Val (%d);\n", c);
--}
-+/*--------------------*/
-+/* Start of main (). */
-+/*--------------------*/
-
--/*
-- * Generate the constants for the ACS characters
-- */
--static void
--gen_acs(void)
-+int
-+main(int argc, const char *argv[])
- {
-- printf(" type C_ACS_Map is array (Character'Val (0) .. Character'Val (127))\n");
-- printf(" of Attributed_Character;\n");
--#if USE_REENTRANT || BROKEN_LINKER
-- printf(" type C_ACS_Ptr is access C_ACS_Map;\n");
-- printf(" function ACS_Map return C_ACS_Ptr;\n");
-- printf(" pragma Import (C, ACS_Map, \""
-- NCURSES_WRAP_PREFIX
-- "acs_map\");\n");
--#else
-- printf(" ACS_Map : C_ACS_Map;\n");
-- printf(" pragma Import (C, ACS_Map, \"acs_map\");\n");
--#endif
-- printf(" --\n");
-- printf(" --\n");
-- printf(" -- Constants for several characters from the Alternate Character Set\n");
-- printf(" -- You must use these constants as indices into the ACS_Map array\n");
-- printf(" -- to get the corresponding attributed character at runtime.\n");
-- printf(" --\n");
-+ const int x = 0x12345678;
-
--#ifdef ACS_ULCORNER
-- acs_def("ACS_Upper_Left_Corner", &ACS_ULCORNER);
--#endif
--#ifdef ACS_LLCORNER
-- acs_def("ACS_Lower_Left_Corner", &ACS_LLCORNER);
--#endif
--#ifdef ACS_URCORNER
-- acs_def("ACS_Upper_Right_Corner", &ACS_URCORNER);
--#endif
--#ifdef ACS_LRCORNER
-- acs_def("ACS_Lower_Right_Corner", &ACS_LRCORNER);
--#endif
--#ifdef ACS_LTEE
-- acs_def("ACS_Left_Tee", &ACS_LTEE);
--#endif
--#ifdef ACS_RTEE
-- acs_def("ACS_Right_Tee", &ACS_RTEE);
--#endif
--#ifdef ACS_BTEE
-- acs_def("ACS_Bottom_Tee", &ACS_BTEE);
--#endif
--#ifdef ACS_TTEE
-- acs_def("ACS_Top_Tee", &ACS_TTEE);
--#endif
--#ifdef ACS_HLINE
-- acs_def("ACS_Horizontal_Line", &ACS_HLINE);
--#endif
--#ifdef ACS_VLINE
-- acs_def("ACS_Vertical_Line", &ACS_VLINE);
--#endif
--#ifdef ACS_PLUS
-- acs_def("ACS_Plus_Symbol", &ACS_PLUS);
--#endif
--#ifdef ACS_S1
-- acs_def("ACS_Scan_Line_1", &ACS_S1);
--#endif
--#ifdef ACS_S9
-- acs_def("ACS_Scan_Line_9", &ACS_S9);
--#endif
--#ifdef ACS_DIAMOND
-- acs_def("ACS_Diamond", &ACS_DIAMOND);
--#endif
--#ifdef ACS_CKBOARD
-- acs_def("ACS_Checker_Board", &ACS_CKBOARD);
--#endif
--#ifdef ACS_DEGREE
-- acs_def("ACS_Degree", &ACS_DEGREE);
--#endif
--#ifdef ACS_PLMINUS
-- acs_def("ACS_Plus_Minus", &ACS_PLMINUS);
--#endif
--#ifdef ACS_BULLET
-- acs_def("ACS_Bullet", &ACS_BULLET);
--#endif
--#ifdef ACS_LARROW
-- acs_def("ACS_Left_Arrow", &ACS_LARROW);
--#endif
--#ifdef ACS_RARROW
-- acs_def("ACS_Right_Arrow", &ACS_RARROW);
--#endif
--#ifdef ACS_DARROW
-- acs_def("ACS_Down_Arrow", &ACS_DARROW);
--#endif
--#ifdef ACS_UARROW
-- acs_def("ACS_Up_Arrow", &ACS_UARROW);
--#endif
--#ifdef ACS_BOARD
-- acs_def("ACS_Board_Of_Squares", &ACS_BOARD);
--#endif
--#ifdef ACS_LANTERN
-- acs_def("ACS_Lantern", &ACS_LANTERN);
--#endif
--#ifdef ACS_BLOCK
-- acs_def("ACS_Solid_Block", &ACS_BLOCK);
--#endif
--#ifdef ACS_S3
-- acs_def("ACS_Scan_Line_3", &ACS_S3);
--#endif
--#ifdef ACS_S7
-- acs_def("ACS_Scan_Line_7", &ACS_S7);
--#endif
--#ifdef ACS_LEQUAL
-- acs_def("ACS_Less_Or_Equal", &ACS_LEQUAL);
--#endif
--#ifdef ACS_GEQUAL
-- acs_def("ACS_Greater_Or_Equal", &ACS_GEQUAL);
--#endif
--#ifdef ACS_PI
-- acs_def("ACS_PI", &ACS_PI);
--#endif
--#ifdef ACS_NEQUAL
-- acs_def("ACS_Not_Equal", &ACS_NEQUAL);
--#endif
--#ifdef ACS_STERLING
-- acs_def("ACS_Sterling", &ACS_STERLING);
--#endif
--}
-+ little_endian = (*((const char *)&x) == 0x78);
-
--#define GEN_EVENT(name,value) \
-- printf(" %-25s : constant Event_Mask := 8#%011lo#;\n", \
-- #name, value)
--
--#define GEN_MEVENT(name) \
-- printf(" %-25s : constant Event_Mask := 8#%011lo#;\n", \
-- #name, name)
-+ my_program_invocation_name = argv[0];
-
--static void
--gen_mouse_events(void)
--{
-- mmask_t all1 = 0;
-- mmask_t all2 = 0;
-- mmask_t all3 = 0;
-- mmask_t all4 = 0;
--
--#ifdef BUTTON1_RELEASED
-- GEN_MEVENT(BUTTON1_RELEASED);
-- all1 |= BUTTON1_RELEASED;
--#endif
--#ifdef BUTTON1_PRESSED
-- GEN_MEVENT(BUTTON1_PRESSED);
-- all1 |= BUTTON1_PRESSED;
--#endif
--#ifdef BUTTON1_CLICKED
-- GEN_MEVENT(BUTTON1_CLICKED);
-- all1 |= BUTTON1_CLICKED;
--#endif
--#ifdef BUTTON1_DOUBLE_CLICKED
-- GEN_MEVENT(BUTTON1_DOUBLE_CLICKED);
-- all1 |= BUTTON1_DOUBLE_CLICKED;
--#endif
--#ifdef BUTTON1_TRIPLE_CLICKED
-- GEN_MEVENT(BUTTON1_TRIPLE_CLICKED);
-- all1 |= BUTTON1_TRIPLE_CLICKED;
--#endif
--#ifdef BUTTON1_RESERVED_EVENT
-- GEN_MEVENT(BUTTON1_RESERVED_EVENT);
-- all1 |= BUTTON1_RESERVED_EVENT;
--#endif
--#ifdef BUTTON2_RELEASED
-- GEN_MEVENT(BUTTON2_RELEASED);
-- all2 |= BUTTON2_RELEASED;
--#endif
--#ifdef BUTTON2_PRESSED
-- GEN_MEVENT(BUTTON2_PRESSED);
-- all2 |= BUTTON2_PRESSED;
--#endif
--#ifdef BUTTON2_CLICKED
-- GEN_MEVENT(BUTTON2_CLICKED);
-- all2 |= BUTTON2_CLICKED;
--#endif
--#ifdef BUTTON2_DOUBLE_CLICKED
-- GEN_MEVENT(BUTTON2_DOUBLE_CLICKED);
-- all2 |= BUTTON2_DOUBLE_CLICKED;
--#endif
--#ifdef BUTTON2_TRIPLE_CLICKED
-- GEN_MEVENT(BUTTON2_TRIPLE_CLICKED);
-- all2 |= BUTTON2_TRIPLE_CLICKED;
--#endif
--#ifdef BUTTON2_RESERVED_EVENT
-- GEN_MEVENT(BUTTON2_RESERVED_EVENT);
-- all2 |= BUTTON2_RESERVED_EVENT;
--#endif
--#ifdef BUTTON3_RELEASED
-- GEN_MEVENT(BUTTON3_RELEASED);
-- all3 |= BUTTON3_RELEASED;
--#endif
--#ifdef BUTTON3_PRESSED
-- GEN_MEVENT(BUTTON3_PRESSED);
-- all3 |= BUTTON3_PRESSED;
--#endif
--#ifdef BUTTON3_CLICKED
-- GEN_MEVENT(BUTTON3_CLICKED);
-- all3 |= BUTTON3_CLICKED;
--#endif
--#ifdef BUTTON3_DOUBLE_CLICKED
-- GEN_MEVENT(BUTTON3_DOUBLE_CLICKED);
-- all3 |= BUTTON3_DOUBLE_CLICKED;
--#endif
--#ifdef BUTTON3_TRIPLE_CLICKED
-- GEN_MEVENT(BUTTON3_TRIPLE_CLICKED);
-- all3 |= BUTTON3_TRIPLE_CLICKED;
--#endif
--#ifdef BUTTON3_RESERVED_EVENT
-- GEN_MEVENT(BUTTON3_RESERVED_EVENT);
-- all3 |= BUTTON3_RESERVED_EVENT;
--#endif
--#ifdef BUTTON4_RELEASED
-- GEN_MEVENT(BUTTON4_RELEASED);
-- all4 |= BUTTON4_RELEASED;
--#endif
--#ifdef BUTTON4_PRESSED
-- GEN_MEVENT(BUTTON4_PRESSED);
-- all4 |= BUTTON4_PRESSED;
--#endif
--#ifdef BUTTON4_CLICKED
-- GEN_MEVENT(BUTTON4_CLICKED);
-- all4 |= BUTTON4_CLICKED;
--#endif
--#ifdef BUTTON4_DOUBLE_CLICKED
-- GEN_MEVENT(BUTTON4_DOUBLE_CLICKED);
-- all4 |= BUTTON4_DOUBLE_CLICKED;
--#endif
--#ifdef BUTTON4_TRIPLE_CLICKED
-- GEN_MEVENT(BUTTON4_TRIPLE_CLICKED);
-- all4 |= BUTTON4_TRIPLE_CLICKED;
--#endif
--#ifdef BUTTON4_RESERVED_EVENT
-- GEN_MEVENT(BUTTON4_RESERVED_EVENT);
-- all4 |= BUTTON4_RESERVED_EVENT;
--#endif
--#ifdef BUTTON_CTRL
-- GEN_MEVENT(BUTTON_CTRL);
--#endif
--#ifdef BUTTON_SHIFT
-- GEN_MEVENT(BUTTON_SHIFT);
--#endif
--#ifdef BUTTON_ALT
-- GEN_MEVENT(BUTTON_ALT);
--#endif
--#ifdef REPORT_MOUSE_POSITION
-- GEN_MEVENT(REPORT_MOUSE_POSITION);
--#endif
--#ifdef ALL_MOUSE_EVENTS
-- GEN_MEVENT(ALL_MOUSE_EVENTS);
--#endif
-+ if (KEY_MIN == 256)
-+ my_error("unexpected value for KEY_MIN: 256");
-
-- GEN_EVENT(BUTTON1_EVENTS, all1);
-- GEN_EVENT(BUTTON2_EVENTS, all2);
-- GEN_EVENT(BUTTON3_EVENTS, all3);
-- GEN_EVENT(BUTTON4_EVENTS, all4);
--}
-+ if (argc != 2)
-+ my_error("Only one argument expected (DFT_ARG_SUFFIX)");
-
--static void
--wrap_one_var(const char *c_var,
-- const char *c_type,
-- const char *ada_func,
-- const char *ada_type)
--{
--#if USE_REENTRANT
-- /* must wrap variables */
-+ 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(" function %s return %s\n", ada_func, ada_type);
-- printf(" is\n");
-- printf(" function Result return %s;\n", c_type);
-- printf(" pragma Import (C, Result, \"" NCURSES_WRAP_PREFIX "%s\");\n", c_var);
-- printf(" begin\n");
-- if (strcmp(c_type, ada_type))
-- printf(" return %s (Result);\n", ada_type);
-- else
-- printf(" return Result;\n");
-- printf(" end %s;\n", ada_func);
--#else
-- /* global variables are really global */
-+ printf("with System;\n");
-+ printf("package Terminal_Interface.Curses_Constants is\n");
-+ printf(" pragma Pure;\n");
- printf("\n");
-- printf(" function %s return %s\n", ada_func, ada_type);
-- printf(" is\n");
-- printf(" Result : %s;\n", c_type);
-- printf(" pragma Import (C, Result, \"%s\");\n", c_var);
-- printf(" begin\n");
-- if (strcmp(c_type, ada_type))
-- printf(" return %s (Result);\n", ada_type);
-- else
-- printf(" return Result;\n");
-- printf(" end %s;\n", ada_func);
--#endif
--}
-
--#define GEN_PUBLIC_VAR(c_var, c_type, ada_func, ada_type) \
-- wrap_one_var(#c_var, #c_type, #ada_func, #ada_type)
--
--static void
--gen_public_vars(void)
--{
-- GEN_PUBLIC_VAR(stdscr, Window, Standard_Window, Window);
-- GEN_PUBLIC_VAR(curscr, Window, Current_Window, Window);
-- GEN_PUBLIC_VAR(LINES, C_Int, Lines, Line_Count);
-- GEN_PUBLIC_VAR(COLS, C_Int, Columns, Column_Count);
-- GEN_PUBLIC_VAR(TABSIZE, C_Int, Tab_Size, Natural);
-- GEN_PUBLIC_VAR(COLORS, C_Int, Number_Of_Colors, Natural);
-- GEN_PUBLIC_VAR(COLOR_PAIRS, C_Int, Number_Of_Color_Pairs, Natural);
--}
--
--/*
-- * Output some comment lines indicating that the file is generated.
-- * The name parameter is the name of the facility to be used in
-- * the comment.
-- */
--static void
--prologue(const char *name)
--{
-- printf("-- %s binding.\n", name);
-- printf("-- This module is generated. Please don't change it manually!\n");
-- printf("-- Run the generator instead.\n-- |");
--
-- printf("define(`M4_BIT_ORDER',`%s_Order_First')",
-+ 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));
-
--/*
-- * Write the prologue for the curses facility and make sure that
-- * KEY_MIN and KEY_MAX are defined for the rest of this source.
-- */
--static void
--basedefs(void)
--{
-- prologue("curses");
--#ifndef KEY_MAX
--# define KEY_MAX 0777
--#endif
-- printf("define(`M4_KEY_MAX',`8#%o#')", KEY_MAX);
--#ifndef KEY_MIN
--# define KEY_MIN 0401
-+ PRINT_NAMED_CONSTANT(OK);
-+ PRINT_NAMED_CONSTANT(ERR);
-+ printf(" pragma Warnings (Off); -- redefinition of Standard.True and False\n");
-+ PRINT_NAMED_CONSTANT(TRUE);
-+ PRINT_NAMED_CONSTANT(FALSE);
-+ printf(" pragma Warnings (On);\n");
-+
-+ print_comment("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);
-+
-+ 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_NAMED_BITMASK(attr_t, A_CHARTEXT);
-+ PRINT_NAMED_BITMASK(attr_t, A_COLOR);
-+ PRINT_BITMASK(attr_t, "Attr", A_ATTRIBUTES & ~A_COLOR);
-+ PRINT_NAMED_BITMASK(attr_t, A_STANDOUT);
-+ PRINT_NAMED_BITMASK(attr_t, A_UNDERLINE);
-+ PRINT_NAMED_BITMASK(attr_t, A_REVERSE);
-+ PRINT_NAMED_BITMASK(attr_t, A_BLINK);
-+ PRINT_NAMED_BITMASK(attr_t, A_DIM);
-+ PRINT_NAMED_BITMASK(attr_t, A_BOLD);
-+ PRINT_NAMED_BITMASK(attr_t, A_PROTECT);
-+ PRINT_NAMED_BITMASK(attr_t, A_INVIS);
-+ PRINT_NAMED_BITMASK(attr_t, A_ALTCHARSET);
-+ PRINT_NAMED_BITMASK(attr_t, A_HORIZONTAL);
-+ PRINT_NAMED_BITMASK(attr_t, A_LEFT);
-+ PRINT_NAMED_BITMASK(attr_t, A_LOW);
-+ 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_comment("predefined color numbers from color(3NCURSES)");
-+ PRINT_NAMED_CONSTANT(COLOR_BLACK);
-+ PRINT_NAMED_CONSTANT(COLOR_RED);
-+ PRINT_NAMED_CONSTANT(COLOR_GREEN);
-+ PRINT_NAMED_CONSTANT(COLOR_YELLOW);
-+ PRINT_NAMED_CONSTANT(COLOR_BLUE);
-+ PRINT_NAMED_CONSTANT(COLOR_MAGENTA);
-+ PRINT_NAMED_CONSTANT(COLOR_CYAN);
-+ PRINT_NAMED_CONSTANT(COLOR_WHITE);
-+
-+ print_comment("ETI return codes from ncurses.h");
-+ PRINT_NAMED_CONSTANT(E_OK);
-+ PRINT_NAMED_CONSTANT(E_SYSTEM_ERROR);
-+ PRINT_NAMED_CONSTANT(E_BAD_ARGUMENT);
-+ PRINT_NAMED_CONSTANT(E_POSTED);
-+ PRINT_NAMED_CONSTANT(E_CONNECTED);
-+ PRINT_NAMED_CONSTANT(E_BAD_STATE);
-+ PRINT_NAMED_CONSTANT(E_NO_ROOM);
-+ PRINT_NAMED_CONSTANT(E_NOT_POSTED);
-+ PRINT_NAMED_CONSTANT(E_UNKNOWN_COMMAND);
-+ PRINT_NAMED_CONSTANT(E_NO_MATCH);
-+ PRINT_NAMED_CONSTANT(E_NOT_SELECTABLE);
-+ PRINT_NAMED_CONSTANT(E_NOT_CONNECTED);
-+ PRINT_NAMED_CONSTANT(E_REQUEST_DENIED);
-+ PRINT_NAMED_CONSTANT(E_INVALID_FIELD);
-+ PRINT_NAMED_CONSTANT(E_CURRENT);
-+
-+ print_comment("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
-- if (KEY_MIN == 256)
-- {
-- fprintf(stderr, "Unexpected value for KEY_MIN: %d\n", KEY_MIN);
-- exit(1);
-- }
-- printf("define(`M4_SPECIAL_FIRST',`8#%o#')", KEY_MIN - 1);
--}
--
--/*
-- * Write out the comment lines for the menu facility
-- */
--static void
--menu_basedefs(void)
--{
-- prologue("menu");
--}
-
--/*
-- * Write out the comment lines for the form facility
-- */
--static void
--form_basedefs(void)
--{
-- prologue("form");
--}
-+ print_comment("Input key codes from getch(3NCURSES)");
-+ PRINT_NAMED_CONSTANT(KEY_BREAK);
-+ PRINT_NAMED_CONSTANT(KEY_DOWN);
-+ PRINT_NAMED_CONSTANT(KEY_UP);
-+ PRINT_NAMED_CONSTANT(KEY_LEFT);
-+ PRINT_NAMED_CONSTANT(KEY_RIGHT);
-+ 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));
-+ PRINT_NAMED_CONSTANT(KEY_DL);
-+ PRINT_NAMED_CONSTANT(KEY_IL);
-+ PRINT_NAMED_CONSTANT(KEY_DC);
-+ PRINT_NAMED_CONSTANT(KEY_IC);
-+ PRINT_NAMED_CONSTANT(KEY_EIC);
-+ PRINT_NAMED_CONSTANT(KEY_CLEAR);
-+ PRINT_NAMED_CONSTANT(KEY_EOS);
-+ PRINT_NAMED_CONSTANT(KEY_EOL);
-+ PRINT_NAMED_CONSTANT(KEY_SF);
-+ PRINT_NAMED_CONSTANT(KEY_SR);
-+ PRINT_NAMED_CONSTANT(KEY_NPAGE);
-+ PRINT_NAMED_CONSTANT(KEY_PPAGE);
-+ PRINT_NAMED_CONSTANT(KEY_STAB);
-+ PRINT_NAMED_CONSTANT(KEY_CTAB);
-+ PRINT_NAMED_CONSTANT(KEY_CATAB);
-+ PRINT_NAMED_CONSTANT(KEY_ENTER);
-+ PRINT_NAMED_CONSTANT(KEY_SRESET);
-+ PRINT_NAMED_CONSTANT(KEY_RESET);
-+ PRINT_NAMED_CONSTANT(KEY_PRINT);
-+ PRINT_NAMED_CONSTANT(KEY_LL);
-+ PRINT_NAMED_CONSTANT(KEY_A1);
-+ PRINT_NAMED_CONSTANT(KEY_A3);
-+ PRINT_NAMED_CONSTANT(KEY_B2);
-+ PRINT_NAMED_CONSTANT(KEY_C1);
-+ PRINT_NAMED_CONSTANT(KEY_C3);
-+ PRINT_NAMED_CONSTANT(KEY_BTAB);
-+ PRINT_NAMED_CONSTANT(KEY_BEG);
-+ PRINT_NAMED_CONSTANT(KEY_CANCEL);
-+ PRINT_NAMED_CONSTANT(KEY_CLOSE);
-+ PRINT_NAMED_CONSTANT(KEY_COMMAND);
-+ PRINT_NAMED_CONSTANT(KEY_COPY);
-+ PRINT_NAMED_CONSTANT(KEY_CREATE);
-+ PRINT_NAMED_CONSTANT(KEY_END);
-+ PRINT_NAMED_CONSTANT(KEY_EXIT);
-+ PRINT_NAMED_CONSTANT(KEY_FIND);
-+ PRINT_NAMED_CONSTANT(KEY_HELP);
-+ PRINT_NAMED_CONSTANT(KEY_MARK);
-+ PRINT_NAMED_CONSTANT(KEY_MESSAGE);
-+ PRINT_NAMED_CONSTANT(KEY_MOVE);
-+ PRINT_NAMED_CONSTANT(KEY_NEXT);
-+ PRINT_NAMED_CONSTANT(KEY_OPEN);
-+ PRINT_NAMED_CONSTANT(KEY_OPTIONS);
-+ PRINT_NAMED_CONSTANT(KEY_PREVIOUS);
-+ PRINT_NAMED_CONSTANT(KEY_REDO);
-+ PRINT_NAMED_CONSTANT(KEY_REFERENCE);
-+ PRINT_NAMED_CONSTANT(KEY_REFRESH);
-+ PRINT_NAMED_CONSTANT(KEY_REPLACE);
-+ PRINT_NAMED_CONSTANT(KEY_RESTART);
-+ PRINT_NAMED_CONSTANT(KEY_RESUME);
-+ PRINT_NAMED_CONSTANT(KEY_SAVE);
-+ PRINT_NAMED_CONSTANT(KEY_SBEG);
-+ PRINT_NAMED_CONSTANT(KEY_SCANCEL);
-+ PRINT_NAMED_CONSTANT(KEY_SCOMMAND);
-+ PRINT_NAMED_CONSTANT(KEY_SCOPY);
-+ PRINT_NAMED_CONSTANT(KEY_SCREATE);
-+ PRINT_NAMED_CONSTANT(KEY_SDC);
-+ PRINT_NAMED_CONSTANT(KEY_SDL);
-+ PRINT_NAMED_CONSTANT(KEY_SELECT);
-+ PRINT_NAMED_CONSTANT(KEY_SEND);
-+ PRINT_NAMED_CONSTANT(KEY_SEOL);
-+ PRINT_NAMED_CONSTANT(KEY_SEXIT);
-+ PRINT_NAMED_CONSTANT(KEY_SFIND);
-+ PRINT_NAMED_CONSTANT(KEY_SHELP);
-+ PRINT_NAMED_CONSTANT(KEY_SHOME);
-+ PRINT_NAMED_CONSTANT(KEY_SIC);
-+ PRINT_NAMED_CONSTANT(KEY_SLEFT);
-+ PRINT_NAMED_CONSTANT(KEY_SMESSAGE);
-+ PRINT_NAMED_CONSTANT(KEY_SMOVE);
-+ PRINT_NAMED_CONSTANT(KEY_SNEXT);
-+ PRINT_NAMED_CONSTANT(KEY_SOPTIONS);
-+ PRINT_NAMED_CONSTANT(KEY_SPREVIOUS);
-+ PRINT_NAMED_CONSTANT(KEY_SPRINT);
-+ PRINT_NAMED_CONSTANT(KEY_SREDO);
-+ PRINT_NAMED_CONSTANT(KEY_SREPLACE);
-+ PRINT_NAMED_CONSTANT(KEY_SRIGHT);
-+ PRINT_NAMED_CONSTANT(KEY_SRSUME);
-+ PRINT_NAMED_CONSTANT(KEY_SSAVE);
-+ PRINT_NAMED_CONSTANT(KEY_SSUSPEND);
-+ PRINT_NAMED_CONSTANT(KEY_SUNDO);
-+ PRINT_NAMED_CONSTANT(KEY_SUSPEND);
-+ PRINT_NAMED_CONSTANT(KEY_UNDO);
-+ 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_ACS(ACS_ULCORNER);
-+ PRINT_ACS(ACS_LLCORNER);
-+ PRINT_ACS(ACS_URCORNER);
-+ PRINT_ACS(ACS_LRCORNER);
-+ PRINT_ACS(ACS_LTEE);
-+ PRINT_ACS(ACS_RTEE);
-+ PRINT_ACS(ACS_BTEE);
-+ PRINT_ACS(ACS_TTEE);
-+ PRINT_ACS(ACS_HLINE);
-+ PRINT_ACS(ACS_VLINE);
-+ PRINT_ACS(ACS_PLUS);
-+ PRINT_ACS(ACS_S1);
-+ PRINT_ACS(ACS_S9);
-+ PRINT_ACS(ACS_DIAMOND);
-+ PRINT_ACS(ACS_CKBOARD);
-+ PRINT_ACS(ACS_DEGREE);
-+ PRINT_ACS(ACS_PLMINUS);
-+ PRINT_ACS(ACS_BULLET);
-+ PRINT_ACS(ACS_LARROW);
-+ PRINT_ACS(ACS_RARROW);
-+ PRINT_ACS(ACS_DARROW);
-+ PRINT_ACS(ACS_UARROW);
-+ PRINT_ACS(ACS_BOARD);
-+ PRINT_ACS(ACS_LANTERN);
-+ PRINT_ACS(ACS_BLOCK);
-+ PRINT_ACS(ACS_S3);
-+ PRINT_ACS(ACS_S7);
-+ PRINT_ACS(ACS_LEQUAL);
-+ PRINT_ACS(ACS_GEQUAL);
-+ PRINT_ACS(ACS_PI);
-+ PRINT_ACS(ACS_NEQUAL);
-+ PRINT_ACS(ACS_STERLING);
-+
-+ print_comment("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_comment("Item_Options from menu_opts(3MENU)");
-+ PRINT_NAMED_BITMASK(Item_Options, O_SELECTABLE);
-+ print_constant("Item_Options_Size", 8 * sizeof(Item_Options));
-+
-+ print_comment("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);
-+ PRINT_NAMED_BITMASK(Field_Options, O_EDIT);
-+ PRINT_NAMED_BITMASK(Field_Options, O_WRAP);
-+ PRINT_NAMED_BITMASK(Field_Options, O_BLANK);
-+ PRINT_NAMED_BITMASK(Field_Options, O_AUTOSKIP);
-+ 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_comment("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)");
-+ 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));
-
--/*
-- * Write out the comment lines for the mouse facility
-- */
--static void
--mouse_basedefs(void)
--{
-- prologue("mouse");
--}
--
--/*
-- * Write the definition of a single color
-- */
--static void
--color_def(const char *name, int value)
--{
-- printf(" %-16s : constant Color_Number := %d;\n", name, value);
--}
-+ print_comment("mouse events from mouse(3NCURSES)");
-+ {
-+ mmask_t all_events;
-
--/*
-- * Generate all color definitions
-- */
--static void
--gen_color(void)
--{
--#if HAVE_USE_DEFAULT_COLORS
-- color_def("Default_Color", -1);
--#endif
--#ifdef COLOR_BLACK
-- color_def("Black", COLOR_BLACK);
--#endif
--#ifdef COLOR_RED
-- color_def("Red", COLOR_RED);
--#endif
--#ifdef COLOR_GREEN
-- color_def("Green", COLOR_GREEN);
--#endif
--#ifdef COLOR_YELLOW
-- color_def("Yellow", COLOR_YELLOW);
--#endif
--#ifdef COLOR_BLUE
-- color_def("Blue", COLOR_BLUE);
--#endif
--#ifdef COLOR_MAGENTA
-- color_def("Magenta", COLOR_MAGENTA);
--#endif
--#ifdef COLOR_CYAN
-- color_def("Cyan", COLOR_CYAN);
--#endif
--#ifdef COLOR_WHITE
-- color_def("White", COLOR_WHITE);
-+#define PRINT_MOUSE_EVENT(event) \
-+ print_constant (#event, event); \
-+ all_events |= event
-+
-+ all_events = 0;
-+ PRINT_MOUSE_EVENT(BUTTON1_RELEASED);
-+ PRINT_MOUSE_EVENT(BUTTON1_PRESSED);
-+ PRINT_MOUSE_EVENT(BUTTON1_CLICKED);
-+ PRINT_MOUSE_EVENT(BUTTON1_DOUBLE_CLICKED);
-+ PRINT_MOUSE_EVENT(BUTTON1_TRIPLE_CLICKED);
-+#ifdef BUTTON1_RESERVED_EVENT
-+ PRINT_MOUSE_EVENT(BUTTON1_RESERVED_EVENT);
- #endif
--}
--
--/*
-- * Generate the linker options for the base facility
-- */
--static void
--gen_linkopts(void)
--{
-- printf(" pragma Linker_Options (\"-lncurses%s\");\n", model);
--}
-+ print_constant("all_events_button_1", (long)all_events);
-
--/*
-- * Generate the linker options for the menu facility
-- */
--static void
--gen_menu_linkopts(void)
--{
-- printf(" pragma Linker_Options (\"-lmenu%s\");\n", model);
--}
--
--/*
-- * Generate the linker options for the form facility
-- */
--static void
--gen_form_linkopts(void)
--{
-- printf(" pragma Linker_Options (\"-lform%s\");\n", model);
--}
--
--/*
-- * Generate the linker options for the panel facility
-- */
--static void
--gen_panel_linkopts(void)
--{
-- printf(" pragma Linker_Options (\"-lpanel%s\");\n", model);
--}
--
--static void
--gen_version_info(void)
--{
-- static const char *v1 =
-- " NC_Major_Version : constant := %d; -- Major version of the library\n";
-- static const char *v2 =
-- " NC_Minor_Version : constant := %d; -- Minor version of the library\n";
-- static const char *v3 =
-- " NC_Version : constant String := %c%d.%d%c; -- Version of library\n";
--
-- printf(v1, NCURSES_VERSION_MAJOR);
-- printf(v2, NCURSES_VERSION_MINOR);
-- printf(v3, '"', NCURSES_VERSION_MAJOR, NCURSES_VERSION_MINOR, '"');
--}
--
--static int
--eti_gen(char *buf, int code, const char *name, int *etimin, int *etimax)
--{
-- sprintf(buf, " E_%-16s : constant Eti_Error := %d;\n", name, code);
-- if (code < *etimin)
-- *etimin = code;
-- if (code > *etimax)
-- *etimax = code;
-- return (int)strlen(buf);
--}
--
--static void
--gen_offsets(void)
--{
-- const char *s_bool = "";
--
-- if (sizeof(bool) == sizeof(char))
-- {
-- s_bool = "char";
-- }
-- else if (sizeof(bool) == sizeof(short))
-- {
-- s_bool = "short";
-- }
-- else if (sizeof(bool) == sizeof(int))
-- {
-- s_bool = "int";
-- }
-- printf(" Sizeof%-*s : constant Natural := %2ld; -- %s\n",
-- 12, "_bool", (long)sizeof(bool), "bool");
--
-- printf(" type Curses_Bool is mod 2 ** Interfaces.C.%s'Size;\n", s_bool);
--}
--
--/*
-- * main() expects two arguments on the commandline, both single characters.
-- * The first character denotes the facility for which we generate output.
-- * Possible values are
-- * B - Base
-- * M - Menus
-- * F - Forms
-- * P - Pointer Device (Mouse)
-- * E - ETI base definitions
-- *
-- * The second character then denotes the specific output that should be
-- * generated for the selected facility.
-- */
--int
--main(int argc, char *argv[])
--{
-- int x = 0x12345678;
-- char *s = (char *)&x;
--
-- if (*s == 0x78)
-- little_endian = 1;
--
-- if (argc != 4)
-- exit(1);
-- model = *++argv;
--
-- switch (argv[1][0])
-- {
-- /* --------------------------------------------------------------- */
-- case 'B': /* The Base facility */
-- switch (argv[2][0])
-- {
-- case 'A': /* chtype translation into Ada95 record type */
-- gen_attr_set("Character_Attribute_Set");
-- break;
-- case 'B': /* write some initial comment lines */
-- basedefs();
-- break;
-- case 'C': /* generate color constants */
-- gen_color();
-- break;
-- case 'D': /* generate displacements of fields in WINDOW struct. */
-- gen_offsets();
-- break;
-- case 'E': /* generate Mouse Event codes */
-- gen_mouse_events();
-- break;
-- case 'K': /* translation of keycodes */
-- gen_keydefs(0);
-- break;
-- case 'L': /* generate the Linker_Options pragma */
-- gen_linkopts();
-- break;
-- case 'M': /* generate constants for the ACS characters */
-- gen_acs();
-- break;
-- case 'O': /* generate definitions of the old key code names */
-- gen_keydefs(1);
-- break;
-- case 'P': /* generate definitions of the public variables */
-- gen_public_vars();
-- break;
-- case 'R': /* generate representation clause for Attributed character */
-- gen_chtype_rep("Attributed_Character");
-- break;
-- case 'T': /* generate the Trace info */
-- gen_trace("Trace_Attribute_Set");
-- break;
-- case 'V': /* generate version info */
-- gen_version_info();
-- break;
-- default:
-- break;
-- }
-- break;
-- /* --------------------------------------------------------------- */
-- case 'M': /* The Menu facility */
-- switch (argv[2][0])
-- {
-- case 'R': /* generate representation clause for Menu_Option_Set */
-- gen_menu_opt_rep("Menu_Option_Set");
-- break;
-- case 'B': /* write some initial comment lines */
-- menu_basedefs();
-- break;
-- case 'L': /* generate the Linker_Options pragma */
-- gen_menu_linkopts();
-- break;
-- case 'I': /* generate representation clause for Item_Option_Set */
-- gen_item_opt_rep("Item_Option_Set");
-- break;
-- default:
-- break;
-- }
-- break;
-- /* --------------------------------------------------------------- */
-- case 'F': /* The Form facility */
-- switch (argv[2][0])
-- {
-- case 'R': /* generate representation clause for Form_Option_Set */
-- gen_form_opt_rep("Form_Option_Set");
-- break;
-- case 'B': /* write some initial comment lines */
-- form_basedefs();
-- break;
-- case 'L': /* generate the Linker_Options pragma */
-- gen_form_linkopts();
-- break;
-- case 'I': /* generate representation clause for Field_Option_Set */
-- gen_field_opt_rep("Field_Option_Set");
-- break;
-- default:
-- break;
-- }
-- break;
-- /* --------------------------------------------------------------- */
-- case 'P': /* The Pointer(=Mouse) facility */
-- switch (argv[2][0])
-- {
-- case 'B': /* write some initial comment lines */
-- mouse_basedefs();
-- break;
-- case 'M': /* generate representation clause for Mouse_Event */
-- gen_mrep_rep("Mouse_Event");
-- break;
-- case 'L': /* generate the Linker_Options pragma */
-- gen_panel_linkopts();
-- break;
-- default:
-- break;
-- }
-- break;
-- /* --------------------------------------------------------------- */
-- case 'E': /* chtype size detection */
-- switch (argv[2][0])
-- {
-- case 'C':
-- {
-- const char *fmt = " type C_Chtype is new %s;\n";
-- const char *afmt = " type C_AttrType is new %s;\n";
--
-- if (sizeof(chtype) == sizeof(int))
-- {
-- if (sizeof(int) == sizeof(long))
-- printf(fmt, "C_ULong");
--
-- else
-- printf(fmt, "C_UInt");
-- }
-- else if (sizeof(chtype) == sizeof(long))
-- {
-- printf(fmt, "C_ULong");
-- }
-- else
-- printf("Error\n");
--
-- if (sizeof(attr_t) == sizeof(int))
-- {
-- if (sizeof(int) == sizeof(long))
-- printf(afmt, "C_ULong");
--
-- else
-- printf(afmt, "C_UInt");
-- }
-- else if (sizeof(attr_t) == sizeof(long))
-- {
-- printf(afmt, "C_ULong");
-- }
-- else
-- printf("Error\n");
--
-- printf("define(`CF_CURSES_OK',`%d')", OK);
-- printf("define(`CF_CURSES_ERR',`%d')", ERR);
-- printf("define(`CF_CURSES_TRUE',`%d')", TRUE);
-- printf("define(`CF_CURSES_FALSE',`%d')", FALSE);
-- }
-- break;
-- case 'E':
-- {
-- char *buf = (char *)malloc(2048);
-- char *p = buf;
-- int etimin = E_OK;
-- int etimax = E_OK;
--
-- if (p)
-- {
-- p += eti_gen(p, E_OK, "Ok", &etimin, &etimax);
-- p += eti_gen(p, E_SYSTEM_ERROR, "System_Error", &etimin, &etimax);
-- p += eti_gen(p, E_BAD_ARGUMENT, "Bad_Argument", &etimin, &etimax);
-- p += eti_gen(p, E_POSTED, "Posted", &etimin, &etimax);
-- p += eti_gen(p, E_CONNECTED, "Connected", &etimin, &etimax);
-- p += eti_gen(p, E_BAD_STATE, "Bad_State", &etimin, &etimax);
-- p += eti_gen(p, E_NO_ROOM, "No_Room", &etimin, &etimax);
-- p += eti_gen(p, E_NOT_POSTED, "Not_Posted", &etimin, &etimax);
-- p += eti_gen(p, E_UNKNOWN_COMMAND,
-- "Unknown_Command", &etimin, &etimax);
-- p += eti_gen(p, E_NO_MATCH, "No_Match", &etimin, &etimax);
-- p += eti_gen(p, E_NOT_SELECTABLE,
-- "Not_Selectable", &etimin, &etimax);
-- p += eti_gen(p, E_NOT_CONNECTED,
-- "Not_Connected", &etimin, &etimax);
-- p += eti_gen(p, E_REQUEST_DENIED,
-- "Request_Denied", &etimin, &etimax);
-- p += eti_gen(p, E_INVALID_FIELD,
-- "Invalid_Field", &etimin, &etimax);
-- p += eti_gen(p, E_CURRENT,
-- "Current", &etimin, &etimax);
-- }
-- printf(" subtype Eti_Error is C_Int range %d .. %d;\n\n",
-- etimin, etimax);
-- printf("%s", buf);
-- }
-- break;
-- default:
-- break;
-- }
-- break;
-- /* --------------------------------------------------------------- */
-- case 'V': /* plain version dump */
-- {
-- switch (argv[2][0])
-- {
-- case '1': /* major version */
--#ifdef NCURSES_VERSION_MAJOR
-- printf("%d", NCURSES_VERSION_MAJOR);
-+ all_events = 0;
-+ PRINT_MOUSE_EVENT(BUTTON2_RELEASED);
-+ PRINT_MOUSE_EVENT(BUTTON2_PRESSED);
-+ PRINT_MOUSE_EVENT(BUTTON2_CLICKED);
-+ PRINT_MOUSE_EVENT(BUTTON2_DOUBLE_CLICKED);
-+ PRINT_MOUSE_EVENT(BUTTON2_TRIPLE_CLICKED);
-+#ifdef BUTTON2_RESERVED_EVENT
-+ PRINT_MOUSE_EVENT(BUTTON2_RESERVED_EVENT);
- #endif
-- break;
-- case '2': /* minor version */
--#ifdef NCURSES_VERSION_MINOR
-- printf("%d", NCURSES_VERSION_MINOR);
-+ print_constant("all_events_button_2", (long)all_events);
-+
-+ all_events = 0;
-+ PRINT_MOUSE_EVENT(BUTTON3_RELEASED);
-+ PRINT_MOUSE_EVENT(BUTTON3_PRESSED);
-+ PRINT_MOUSE_EVENT(BUTTON3_CLICKED);
-+ PRINT_MOUSE_EVENT(BUTTON3_DOUBLE_CLICKED);
-+ PRINT_MOUSE_EVENT(BUTTON3_TRIPLE_CLICKED);
-+#ifdef BUTTON3_RESERVED_EVENT
-+ PRINT_MOUSE_EVENT(BUTTON3_RESERVED_EVENT);
- #endif
-- break;
-- case '3': /* patch level */
--#ifdef NCURSES_VERSION_PATCH
-- printf("%d", NCURSES_VERSION_PATCH);
-+ print_constant("all_events_button_3", (long)all_events);
-+
-+ all_events = 0;
-+ PRINT_MOUSE_EVENT(BUTTON4_RELEASED);
-+ PRINT_MOUSE_EVENT(BUTTON4_PRESSED);
-+ PRINT_MOUSE_EVENT(BUTTON4_CLICKED);
-+ PRINT_MOUSE_EVENT(BUTTON4_DOUBLE_CLICKED);
-+ PRINT_MOUSE_EVENT(BUTTON4_TRIPLE_CLICKED);
-+#ifdef BUTTON4_RESERVED_EVENT
-+ PRINT_MOUSE_EVENT(BUTTON4_RESERVED_EVENT);
- #endif
-- break;
-- default:
-- break;
-- }
-- }
-- break;
-- /* --------------------------------------------------------------- */
-- default:
-- break;
-- }
-- return 0;
-+ print_constant("all_events_button_4", (long)all_events);
-+ }
-+ PRINT_NAMED_CONSTANT(BUTTON_CTRL);
-+ PRINT_NAMED_CONSTANT(BUTTON_SHIFT);
-+ PRINT_NAMED_CONSTANT(BUTTON_ALT);
-+ PRINT_NAMED_CONSTANT(REPORT_MOUSE_POSITION);
-+ PRINT_NAMED_CONSTANT(ALL_MOUSE_EVENTS);
-+
-+ print_comment("trace selection from trace(3NCURSES)");
-+ PRINT_NAMED_BITMASK(UINT, TRACE_TIMES);
-+ PRINT_NAMED_BITMASK(UINT, TRACE_TPUTS);
-+ PRINT_NAMED_BITMASK(UINT, TRACE_UPDATE);
-+ PRINT_NAMED_BITMASK(UINT, TRACE_MOVE);
-+ PRINT_NAMED_BITMASK(UINT, TRACE_CHARPUT);
-+ PRINT_NAMED_BITMASK(UINT, TRACE_CALLS);
-+ PRINT_NAMED_BITMASK(UINT, TRACE_VIRTPUT);
-+ PRINT_NAMED_BITMASK(UINT, TRACE_IEVENT);
-+ PRINT_NAMED_BITMASK(UINT, TRACE_BITS);
-+ PRINT_NAMED_BITMASK(UINT, TRACE_ICALLS);
-+ 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));
-+
-+ printf("end Terminal_Interface.Curses_Constants;\n");
-+ exit(EXIT_SUCCESS);
- }
-Index: Ada95/gen/terminal_interface-curses-aux.ads.m4
---- ncurses-5.9/Ada95/gen/terminal_interface-curses-aux.ads.m4 2011-03-19 12:37:41.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/terminal_interface-curses-aux.ads.m4 2014-05-24 21:31:05.000000000 +0000
-@@ -10,7 +10,7 @@
- -- S P E C --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -38,14 +38,12 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.18 $
-+-- $Revision: 1.23 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
--include(`Base_Defs')
- with System;
- with Interfaces.C;
- with Interfaces.C.Strings; use Interfaces.C.Strings;
--with Unchecked_Conversion;
-
- package Terminal_Interface.Curses.Aux is
- pragma Preelaborate (Terminal_Interface.Curses.Aux);
-@@ -60,39 +58,39 @@
- subtype C_ULong is Interfaces.C.unsigned_long;
- subtype C_Char_Ptr is Interfaces.C.Strings.chars_ptr;
- type C_Void_Ptr is new System.Address;
--include(`Chtype_Def')
-+
- -- This is how those constants are defined in ncurses. I see them also
- -- exactly like this in all ETI implementations I ever tested. So it
- -- could be that this is quite general, but please check with your curses.
- -- This is critical, because curses sometime mixes Boolean returns with
- -- returning an error status.
-- Curses_Ok : constant C_Int := CF_CURSES_OK;
-- Curses_Err : constant C_Int := CF_CURSES_ERR;
-+ Curses_Ok : constant C_Int := Curses_Constants.OK;
-+ Curses_Err : constant C_Int := Curses_Constants.ERR;
-
-- Curses_True : constant C_Int := CF_CURSES_TRUE;
-- Curses_False : constant C_Int := CF_CURSES_FALSE;
-+ Curses_True : constant C_Int := Curses_Constants.TRUE;
-+ Curses_False : constant C_Int := Curses_Constants.FALSE;
-
- -- Eti_Error: type for error codes returned by the menu and form subsystem
--include(`Eti_Defs')
-+ type Eti_Error is
-+ (E_Current,
-+ E_Invalid_Field,
-+ E_Request_Denied,
-+ E_Not_Connected,
-+ E_Not_Selectable,
-+ E_No_Match,
-+ E_Unknown_Command,
-+ E_Not_Posted,
-+ E_No_Room,
-+ E_Bad_State,
-+ E_Connected,
-+ E_Posted,
-+ E_Bad_Argument,
-+ E_System_Error,
-+ E_Ok);
-+
- procedure Eti_Exception (Code : Eti_Error);
-- -- Dispatch the error code and raise the appropriate exception
-- --
-- --
-- -- Some helpers
-- function Chtype_To_AttrChar is new
-- Unchecked_Conversion (Source => C_Chtype,
-- Target => Attributed_Character);
-- function AttrChar_To_Chtype is new
-- Unchecked_Conversion (Source => Attributed_Character,
-- Target => C_Chtype);
--
-- function AttrChar_To_AttrType is new
-- Unchecked_Conversion (Source => Attributed_Character,
-- Target => C_AttrType);
--
-- function AttrType_To_AttrChar is new
-- Unchecked_Conversion (Source => C_AttrType,
-- Target => Attributed_Character);
-+ -- Do nothing if Code = E_Ok.
-+ -- Else dispatch the error code and raise the appropriate exception.
-
- procedure Fill_String (Cp : chars_ptr;
- Str : out String);
-@@ -102,4 +100,23 @@
- function Fill_String (Cp : chars_ptr) return String;
- -- Same but as function.
-
-+private
-+ for Eti_Error'Size use C_Int'Size;
-+ pragma Convention (C, Eti_Error);
-+ for Eti_Error use
-+ (E_Current => Curses_Constants.E_CURRENT,
-+ E_Invalid_Field => Curses_Constants.E_INVALID_FIELD,
-+ E_Request_Denied => Curses_Constants.E_REQUEST_DENIED,
-+ E_Not_Connected => Curses_Constants.E_NOT_CONNECTED,
-+ E_Not_Selectable => Curses_Constants.E_NOT_SELECTABLE,
-+ E_No_Match => Curses_Constants.E_NO_MATCH,
-+ E_Unknown_Command => Curses_Constants.E_UNKNOWN_COMMAND,
-+ E_Not_Posted => Curses_Constants.E_NOT_POSTED,
-+ E_No_Room => Curses_Constants.E_NO_ROOM,
-+ E_Bad_State => Curses_Constants.E_BAD_STATE,
-+ E_Connected => Curses_Constants.E_CONNECTED,
-+ E_Posted => Curses_Constants.E_POSTED,
-+ E_Bad_Argument => Curses_Constants.E_BAD_ARGUMENT,
-+ E_System_Error => Curses_Constants.E_SYSTEM_ERROR,
-+ E_Ok => Curses_Constants.E_OK);
- end Terminal_Interface.Curses.Aux;
-Index: Ada95/gen/terminal_interface-curses-forms-field_types.ads.m4
---- ncurses-5.9/Ada95/gen/terminal_interface-curses-forms-field_types.ads.m4 2011-03-18 23:10:43.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/terminal_interface-curses-forms-field_types.ads.m4 2014-05-24 21:31:05.000000000 +0000
-@@ -10,7 +10,7 @@
- -- S P E C --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -38,10 +38,11 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.16 $
-+-- $Revision: 1.19 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Interfaces.C;
-+with Terminal_Interface.Curses.Aux;
-
- package Terminal_Interface.Curses.Forms.Field_Types is
- pragma Preelaborate (Terminal_Interface.Curses.Forms.Field_Types);
-@@ -227,12 +228,12 @@
- Mak : Makearg_Function := Make_Arg'Access;
- Cop : Copyarg_Function := Copy_Arg'Access;
- Fre : Freearg_Function := Free_Arg'Access)
-- return C_Int;
-+ return Aux.Eti_Error;
- pragma Import (C, Set_Fieldtype_Arg, "set_fieldtype_arg");
-
- function Set_Fieldtype_Choice (Cft : C_Field_Type;
- Next, Prev : Choice_Function)
-- return C_Int;
-+ return Aux.Eti_Error;
- pragma Import (C, Set_Fieldtype_Choice, "set_fieldtype_choice");
-
- end Terminal_Interface.Curses.Forms.Field_Types;
-Index: Ada95/gen/terminal_interface-curses-forms.ads.m4
---- ncurses-5.9/Ada95/gen/terminal_interface-curses-forms.ads.m4 2009-12-26 17:31:35.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/terminal_interface-curses-forms.ads.m4 2014-05-24 21:31:57.000000000 +0000
-@@ -10,7 +10,7 @@
- -- S P E C --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2009,2014 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 --
-@@ -38,18 +38,17 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.30 $
---- $Date: 2009/12/26 17:31:35 $
-+-- $Revision: 1.33 $
-+-- $Date: 2014/05/24 21:31:57 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
--include(`Form_Base_Defs')
- with System;
- with Ada.Characters.Latin_1;
-
- package Terminal_Interface.Curses.Forms is
- pragma Preelaborate (Terminal_Interface.Curses.Forms);
--include(`Form_Linker_Options')dnl
--include(`Linker_Options')
-+ pragma Linker_Options ("-lform" & Curses_Constants.DFT_ARG_SUFFIX);
-+
- Space : Character renames Ada.Characters.Latin_1.Space;
-
- type Field is private;
-@@ -63,18 +62,68 @@
- Center,
- Right);
-
-+ type Field_Option_Set is
-+ record
-+ Visible : Boolean;
-+ Active : Boolean;
-+ Public : Boolean;
-+ Edit : Boolean;
-+ Wrap : Boolean;
-+ Blank : Boolean;
-+ Auto_Skip : Boolean;
-+ Null_Ok : Boolean;
-+ Pass_Ok : Boolean;
-+ Static : Boolean;
-+ end record;
-+ pragma Convention (C_Pass_By_Copy, Field_Option_Set);
-+
-+ for Field_Option_Set use
-+ record
-+ Visible at 0 range Curses_Constants.O_VISIBLE_First
-+ .. Curses_Constants.O_VISIBLE_Last;
-+ Active at 0 range Curses_Constants.O_ACTIVE_First
-+ .. Curses_Constants.O_ACTIVE_Last;
-+ Public at 0 range Curses_Constants.O_PUBLIC_First
-+ .. Curses_Constants.O_PUBLIC_Last;
-+ Edit at 0 range Curses_Constants.O_EDIT_First
-+ .. Curses_Constants.O_EDIT_Last;
-+ Wrap at 0 range Curses_Constants.O_WRAP_First
-+ .. Curses_Constants.O_WRAP_Last;
-+ Blank at 0 range Curses_Constants.O_BLANK_First
-+ .. Curses_Constants.O_BLANK_Last;
-+ Auto_Skip at 0 range Curses_Constants.O_AUTOSKIP_First
-+ .. Curses_Constants.O_AUTOSKIP_Last;
-+ Null_Ok at 0 range Curses_Constants.O_NULLOK_First
-+ .. Curses_Constants.O_NULLOK_Last;
-+ Pass_Ok at 0 range Curses_Constants.O_PASSOK_First
-+ .. Curses_Constants.O_PASSOK_Last;
-+ Static at 0 range Curses_Constants.O_STATIC_First
-+ .. Curses_Constants.O_STATIC_Last;
-+ end record;
- pragma Warnings (Off);
--include(`Field_Rep')Dnl
--
-+ for Field_Option_Set'Size use Curses_Constants.Field_Options_Size;
- pragma Warnings (On);
-
- function Default_Field_Options return Field_Option_Set;
- -- The initial defaults for the field options.
- pragma Inline (Default_Field_Options);
-
-+ type Form_Option_Set is
-+ record
-+ NL_Overload : Boolean;
-+ BS_Overload : Boolean;
-+ end record;
-+ pragma Convention (C_Pass_By_Copy, Form_Option_Set);
-+
-+ for Form_Option_Set use
-+ record
-+ NL_Overload at 0 range Curses_Constants.O_NL_OVERLOAD_First
-+ .. Curses_Constants.O_NL_OVERLOAD_Last;
-+ BS_Overload at 0 range Curses_Constants.O_BS_OVERLOAD_First
-+ .. Curses_Constants.O_BS_OVERLOAD_Last;
-+ end record;
- pragma Warnings (Off);
--include(`Form_Opt_Rep')Dnl
--
-+ for Form_Option_Set'Size use Curses_Constants.Field_Options_Size;
- pragma Warnings (On);
-
- function Default_Form_Options return Form_Option_Set;
-Index: Ada95/gen/terminal_interface-curses-menus.ads.m4
---- ncurses-5.9/Ada95/gen/terminal_interface-curses-menus.ads.m4 2009-12-26 18:35:22.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/terminal_interface-curses-menus.ads.m4 2014-05-24 21:31:57.000000000 +0000
-@@ -10,7 +10,7 @@
- -- S P E C --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2009,2014 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 --
-@@ -38,18 +38,17 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.28 $
---- $Date: 2009/12/26 18:35:22 $
-+-- $Revision: 1.31 $
-+-- $Date: 2014/05/24 21:31:57 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
--include(`Menu_Base_Defs')
- with System;
- with Ada.Characters.Latin_1;
-
- package Terminal_Interface.Curses.Menus is
- pragma Preelaborate (Terminal_Interface.Curses.Menus);
--include(`Menu_Linker_Options')dnl
--include(`Linker_Options')
-+ pragma Linker_Options ("-lmenu" & Curses_Constants.DFT_ARG_SUFFIX);
-+
- Space : Character renames Ada.Characters.Latin_1.Space;
-
- type Item is private;
-@@ -116,9 +115,34 @@
- --
- -- Menu options
- --
-+ type Menu_Option_Set is
-+ record
-+ One_Valued : Boolean;
-+ Show_Descriptions : Boolean;
-+ Row_Major_Order : Boolean;
-+ Ignore_Case : Boolean;
-+ Show_Matches : Boolean;
-+ Non_Cyclic : Boolean;
-+ end record;
-+ pragma Convention (C_Pass_By_Copy, Menu_Option_Set);
-+
-+ for Menu_Option_Set use
-+ record
-+ One_Valued at 0 range Curses_Constants.O_ONEVALUE_First
-+ .. Curses_Constants.O_ONEVALUE_Last;
-+ Show_Descriptions at 0 range Curses_Constants.O_SHOWDESC_First
-+ .. Curses_Constants.O_SHOWDESC_Last;
-+ Row_Major_Order at 0 range Curses_Constants.O_ROWMAJOR_First
-+ .. Curses_Constants.O_ROWMAJOR_Last;
-+ Ignore_Case at 0 range Curses_Constants.O_IGNORECASE_First
-+ .. Curses_Constants.O_IGNORECASE_Last;
-+ Show_Matches at 0 range Curses_Constants.O_SHOWMATCH_First
-+ .. Curses_Constants.O_SHOWMATCH_Last;
-+ Non_Cyclic at 0 range Curses_Constants.O_NONCYCLIC_First
-+ .. Curses_Constants.O_NONCYCLIC_Last;
-+ end record;
- pragma Warnings (Off);
--include(`Menu_Opt_Rep')dnl
--
-+ for Menu_Option_Set'Size use Curses_Constants.Menu_Options_Size;
- pragma Warnings (On);
-
- function Default_Menu_Options return Menu_Option_Set;
-@@ -127,9 +151,19 @@
- --
- -- Item options
- --
-+ type Item_Option_Set is
-+ record
-+ Selectable : Boolean;
-+ end record;
-+ pragma Convention (C_Pass_By_Copy, Item_Option_Set);
-+
-+ for Item_Option_Set use
-+ record
-+ Selectable at 0 range Curses_Constants.O_SELECTABLE_First
-+ .. Curses_Constants.O_SELECTABLE_Last;
-+ end record;
- pragma Warnings (Off);
--include(`Item_Rep')dnl
--
-+ for Item_Option_Set'Size use Curses_Constants.Item_Options_Size;
- pragma Warnings (On);
-
- function Default_Item_Options return Item_Option_Set;
-Index: Ada95/gen/terminal_interface-curses-mouse.ads.m4
---- ncurses-5.9/Ada95/gen/terminal_interface-curses-mouse.ads.m4 2011-03-19 12:35:58.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/terminal_interface-curses-mouse.ads.m4 2014-05-24 21:31:57.000000000 +0000
-@@ -10,7 +10,7 @@
- -- S P E C --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -38,11 +38,10 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.29 $
---- $Date: 2011/03/19 12:35:58 $
-+-- $Revision: 1.31 $
-+-- $Date: 2014/05/24 21:31:57 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
--include(`Mouse_Base_Defs')
- with System;
-
- package Terminal_Interface.Curses.Mouse is
-@@ -167,12 +166,35 @@
- end record;
- pragma Convention (C, Mouse_Event);
-
--include(`Mouse_Event_Rep')
-- Generation_Bit_Order : constant System.Bit_Order := System.M4_BIT_ORDER;
-- -- This constant may be different on your system.
--
--include(`Mouse_Events')
-- No_Events : constant Event_Mask := 0;
-- All_Events : constant Event_Mask := ALL_MOUSE_EVENTS;
-+ for Mouse_Event use
-+ record
-+ Id at 0 range Curses_Constants.MEVENT_id_First
-+ .. Curses_Constants.MEVENT_id_Last;
-+ X at 0 range Curses_Constants.MEVENT_x_First
-+ .. Curses_Constants.MEVENT_x_Last;
-+ Y at 0 range Curses_Constants.MEVENT_y_First
-+ .. Curses_Constants.MEVENT_y_Last;
-+ Z at 0 range Curses_Constants.MEVENT_z_First
-+ .. Curses_Constants.MEVENT_z_Last;
-+ Bstate at 0 range Curses_Constants.MEVENT_bstate_First
-+ .. Curses_Constants.MEVENT_bstate_Last;
-+ end record;
-+ for Mouse_Event'Size use Curses_Constants.MEVENT_Size;
-+ Generation_Bit_Order : System.Bit_Order renames Curses_Constants.Bit_Order;
-+
-+ BUTTON_CTRL : constant Event_Mask := Curses_Constants.BUTTON_CTRL;
-+ BUTTON_SHIFT : constant Event_Mask := Curses_Constants.BUTTON_SHIFT;
-+ BUTTON_ALT : constant Event_Mask := Curses_Constants.BUTTON_ALT;
-+ BUTTON1_EVENTS : constant Event_Mask
-+ := Curses_Constants.all_events_button_1;
-+ BUTTON2_EVENTS : constant Event_Mask
-+ := Curses_Constants.all_events_button_2;
-+ BUTTON3_EVENTS : constant Event_Mask
-+ := Curses_Constants.all_events_button_3;
-+ BUTTON4_EVENTS : constant Event_Mask
-+ := Curses_Constants.all_events_button_4;
-+ ALL_MOUSE_EVENTS : constant Event_Mask := Curses_Constants.ALL_MOUSE_EVENTS;
-+ No_Events : constant Event_Mask := 0;
-+ All_Events : constant Event_Mask := ALL_MOUSE_EVENTS;
-
- end Terminal_Interface.Curses.Mouse;
-Index: Ada95/gen/terminal_interface-curses-panels.ads.m4
---- ncurses-5.9/Ada95/gen/terminal_interface-curses-panels.ads.m4 2009-12-26 17:38:58.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/terminal_interface-curses-panels.ads.m4 2014-05-24 21:31:57.000000000 +0000
-@@ -10,7 +10,7 @@
- -- S P E C --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2009,2014 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 --
-@@ -38,16 +38,16 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.20 $
---- $Date: 2009/12/26 17:38:58 $
-+-- $Revision: 1.22 $
-+-- $Date: 2014/05/24 21:31:57 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with System;
-
- package Terminal_Interface.Curses.Panels is
- pragma Preelaborate (Terminal_Interface.Curses.Panels);
--include(`Panel_Linker_Options')dnl
--include(`Linker_Options')
-+ pragma Linker_Options ("-lpanel" & Curses_Constants.DFT_ARG_SUFFIX);
-+
- type Panel is private;
-
- ---------------------------
-Index: Ada95/gen/terminal_interface-curses-trace.ads.m4
---- ncurses-5.9/Ada95/gen/terminal_interface-curses-trace.ads.m4 2000-12-02 22:31:21.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/terminal_interface-curses-trace.ads.m4 2014-05-24 21:31:05.000000000 +0000
-@@ -9,7 +9,7 @@
- -- S P E C --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 2000 Free Software Foundation, Inc. --
-+-- Copyright (c) 2000,2014 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 --
-@@ -37,16 +37,62 @@
- ------------------------------------------------------------------------------
- -- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
- -- Version Control:
---- $Revision: 1.1 $
-+-- $Revision: 1.4 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
-
- package Terminal_Interface.Curses.Trace is
- pragma Preelaborate (Terminal_Interface.Curses.Trace);
-
-- pragma Warnings (Off);
--include(`Trace_Defs')
-+ type Trace_Attribute_Set is
-+ record
-+ Times : Boolean;
-+ Tputs : Boolean;
-+ Update : Boolean;
-+ Cursor_Move : Boolean;
-+ Character_Output : Boolean;
-+ Calls : Boolean;
-+ Virtual_Puts : Boolean;
-+ Input_Events : Boolean;
-+ TTY_State : Boolean;
-+ Internal_Calls : Boolean;
-+ Character_Calls : Boolean;
-+ Termcap_TermInfo : Boolean;
-+ Attribute_Color : Boolean;
-+ end record;
-+ pragma Convention (C_Pass_By_Copy, Trace_Attribute_Set);
-
-+ for Trace_Attribute_Set use
-+ record
-+ Times at 0 range Curses_Constants.TRACE_TIMES_First
-+ .. Curses_Constants.TRACE_TIMES_Last;
-+ Tputs at 0 range Curses_Constants.TRACE_TPUTS_First
-+ .. Curses_Constants.TRACE_TPUTS_Last;
-+ Update at 0 range Curses_Constants.TRACE_UPDATE_First
-+ .. Curses_Constants.TRACE_UPDATE_Last;
-+ Cursor_Move at 0 range Curses_Constants.TRACE_MOVE_First
-+ .. Curses_Constants.TRACE_MOVE_Last;
-+ Character_Output at 0 range Curses_Constants.TRACE_CHARPUT_First
-+ .. Curses_Constants.TRACE_CHARPUT_Last;
-+ Calls at 0 range Curses_Constants.TRACE_CALLS_First
-+ .. Curses_Constants.TRACE_CALLS_Last;
-+ Virtual_Puts at 0 range Curses_Constants.TRACE_VIRTPUT_First
-+ .. Curses_Constants.TRACE_VIRTPUT_Last;
-+ Input_Events at 0 range Curses_Constants.TRACE_IEVENT_First
-+ .. Curses_Constants.TRACE_IEVENT_Last;
-+ TTY_State at 0 range Curses_Constants.TRACE_BITS_First
-+ .. Curses_Constants.TRACE_BITS_Last;
-+ Internal_Calls at 0 range Curses_Constants.TRACE_ICALLS_First
-+ .. Curses_Constants.TRACE_ICALLS_Last;
-+ Character_Calls at 0 range Curses_Constants.TRACE_CCALLS_First
-+ .. Curses_Constants.TRACE_CCALLS_Last;
-+ Termcap_TermInfo at 0 range Curses_Constants.TRACE_DATABASE_First
-+ .. Curses_Constants.TRACE_DATABASE_Last;
-+ Attribute_Color at 0 range Curses_Constants.TRACE_ATTRS_First
-+ .. Curses_Constants.TRACE_ATTRS_Last;
-+ end record;
-+ pragma Warnings (Off);
-+ for Trace_Attribute_Set'Size use Curses_Constants.Trace_Size;
- pragma Warnings (On);
-
- Trace_Disable : constant Trace_Attribute_Set := (others => False);
-Index: Ada95/gen/terminal_interface-curses.adb.m4
---- ncurses-5.9/Ada95/gen/terminal_interface-curses.adb.m4 2011-03-22 23:02:14.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/terminal_interface-curses.adb.m4 2014-05-24 21:31:05.000000000 +0000
-@@ -9,7 +9,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -37,8 +37,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.8 $
---- $Date: 2011/03/22 23:02:14 $
-+-- $Revision: 1.14 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with System;
-@@ -151,10 +151,10 @@
- Ch : Attributed_Character)
- is
- function Waddch (W : Window;
-- Ch : C_Chtype) return C_Int;
-+ Ch : Attributed_Character) return C_Int;
- pragma Import (C, Waddch, "waddch");
- begin
-- if Waddch (Win, AttrChar_To_Chtype (Ch)) = Curses_Err then
-+ if Waddch (Win, Ch) = Curses_Err then
- raise Curses_Exception;
- end if;
- end Add;
-@@ -178,12 +178,13 @@
- function mvwaddch (W : Window;
- Y : C_Int;
- X : C_Int;
-- Ch : C_Chtype) return C_Int;
-+ Ch : Attributed_Character) return C_Int;
- pragma Import (C, mvwaddch, "mvwaddch");
- begin
- if mvwaddch (Win, C_Int (Line),
- C_Int (Column),
-- AttrChar_To_Chtype (Ch)) = Curses_Err then
-+ Ch) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Add;
-@@ -208,10 +209,10 @@
- Ch : Attributed_Character)
- is
- function Wechochar (W : Window;
-- Ch : C_Chtype) return C_Int;
-+ Ch : Attributed_Character) return C_Int;
- pragma Import (C, Wechochar, "wechochar");
- begin
-- if Wechochar (Win, AttrChar_To_Chtype (Ch)) = Curses_Err then
-+ if Wechochar (Win, Ch) = Curses_Err then
- raise Curses_Exception;
- end if;
- end Add_With_Immediate_Echo;
-@@ -419,7 +420,8 @@
- Txt (Str'Length) := Default_Character;
- if Waddchnstr (Win,
- Txt,
-- C_Int (Len)) = Curses_Err then
-+ C_Int (Len)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Add;
-@@ -448,26 +450,25 @@
- Lower_Right_Corner_Symbol : Attributed_Character := Default_Character)
- is
- function Wborder (W : Window;
-- LS : C_Chtype;
-- RS : C_Chtype;
-- TS : C_Chtype;
-- BS : C_Chtype;
-- ULC : C_Chtype;
-- URC : C_Chtype;
-- LLC : C_Chtype;
-- LRC : C_Chtype) return C_Int;
-+ LS : Attributed_Character;
-+ RS : Attributed_Character;
-+ TS : Attributed_Character;
-+ BS : Attributed_Character;
-+ ULC : Attributed_Character;
-+ URC : Attributed_Character;
-+ LLC : Attributed_Character;
-+ LRC : Attributed_Character) return C_Int;
- pragma Import (C, Wborder, "wborder");
- begin
- if Wborder (Win,
-- AttrChar_To_Chtype (Left_Side_Symbol),
-- AttrChar_To_Chtype (Right_Side_Symbol),
-- AttrChar_To_Chtype (Top_Side_Symbol),
-- AttrChar_To_Chtype (Bottom_Side_Symbol),
-- AttrChar_To_Chtype (Upper_Left_Corner_Symbol),
-- AttrChar_To_Chtype (Upper_Right_Corner_Symbol),
-- AttrChar_To_Chtype (Lower_Left_Corner_Symbol),
-- AttrChar_To_Chtype (Lower_Right_Corner_Symbol)
-- ) = Curses_Err
-+ Left_Side_Symbol,
-+ Right_Side_Symbol,
-+ Top_Side_Symbol,
-+ Bottom_Side_Symbol,
-+ Upper_Left_Corner_Symbol,
-+ Upper_Right_Corner_Symbol,
-+ Lower_Left_Corner_Symbol,
-+ Lower_Right_Corner_Symbol) = Curses_Err
- then
- raise Curses_Exception;
- end if;
-@@ -490,13 +491,14 @@
- Line_Symbol : Attributed_Character := Default_Character)
- is
- function Whline (W : Window;
-- Ch : C_Chtype;
-+ Ch : Attributed_Character;
- Len : C_Int) return C_Int;
- pragma Import (C, Whline, "whline");
- begin
- if Whline (Win,
-- AttrChar_To_Chtype (Line_Symbol),
-- C_Int (Line_Size)) = Curses_Err then
-+ Line_Symbol,
-+ C_Int (Line_Size)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Horizontal_Line;
-@@ -507,13 +509,14 @@
- Line_Symbol : Attributed_Character := Default_Character)
- is
- function Wvline (W : Window;
-- Ch : C_Chtype;
-+ Ch : Attributed_Character;
- Len : C_Int) return C_Int;
- pragma Import (C, Wvline, "wvline");
- begin
- if Wvline (Win,
-- AttrChar_To_Chtype (Line_Symbol),
-- C_Int (Line_Size)) = Curses_Err then
-+ Line_Symbol,
-+ C_Int (Line_Size)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Vertical_Line;
-@@ -611,10 +614,10 @@
- On : Boolean := True)
- is
- function Wattron (Win : Window;
-- C_Attr : C_AttrType) return C_Int;
-+ C_Attr : Attributed_Character) return C_Int;
- pragma Import (C, Wattron, "wattr_on");
- function Wattroff (Win : Window;
-- C_Attr : C_AttrType) return C_Int;
-+ C_Attr : Attributed_Character) return C_Int;
- pragma Import (C, Wattroff, "wattr_off");
- -- In Ada we use the On Boolean to control whether or not we want to
- -- switch on or off the attributes in the set.
-@@ -624,9 +627,9 @@
- Attr => Attr);
- begin
- if On then
-- Err := Wattron (Win, AttrChar_To_AttrType (AC));
-+ Err := Wattron (Win, AC);
- else
-- Err := Wattroff (Win, AttrChar_To_AttrType (AC));
-+ Err := Wattroff (Win, AC);
- end if;
- if Err = Curses_Err then
- raise Curses_Exception;
-@@ -639,14 +642,13 @@
- Color : Color_Pair := Color_Pair'First)
- is
- function Wattrset (Win : Window;
-- C_Attr : C_AttrType) return C_Int;
-+ C_Attr : Attributed_Character) return C_Int;
- pragma Import (C, Wattrset, "wattrset"); -- ??? wattr_set
- begin
-- if Wattrset (Win,
-- AttrChar_To_AttrType (Attributed_Character'
-- (Ch => Character'First,
-- Color => Color,
-- Attr => Attr))) = Curses_Err then
-+ if Wattrset (Win, (Ch => Character'First,
-+ Color => Color,
-+ Attr => Attr)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Set_Character_Attributes;
-@@ -655,20 +657,18 @@
- return Character_Attribute_Set
- is
- function Wattrget (Win : Window;
-- Atr : access C_AttrType;
-+ Atr : access Attributed_Character;
- Col : access C_Short;
- Opt : System.Address) return C_Int;
- pragma Import (C, Wattrget, "wattr_get");
-
-- Attr : aliased C_AttrType;
-+ Attr : aliased Attributed_Character;
- Col : aliased C_Short;
- Res : constant C_Int := Wattrget (Win, Attr'Access, Col'Access,
- System.Null_Address);
-- Ch : Attributed_Character;
- begin
- if Res = Curses_Ok then
-- Ch := AttrType_To_AttrChar (Attr);
-- return Ch.Attr;
-+ return Attr.Attr;
- else
- raise Curses_Exception;
- end if;
-@@ -678,20 +678,18 @@
- return Color_Pair
- is
- function Wattrget (Win : Window;
-- Atr : access C_AttrType;
-+ Atr : access Attributed_Character;
- Col : access C_Short;
- Opt : System.Address) return C_Int;
- pragma Import (C, Wattrget, "wattr_get");
-
-- Attr : aliased C_AttrType;
-+ Attr : aliased Attributed_Character;
- Col : aliased C_Short;
- Res : constant C_Int := Wattrget (Win, Attr'Access, Col'Access,
- System.Null_Address);
-- Ch : Attributed_Character;
- begin
- if Res = Curses_Ok then
-- Ch := AttrType_To_AttrChar (Attr);
-- return Ch.Color;
-+ return Attr.Color;
- else
- raise Curses_Exception;
- end if;
-@@ -707,7 +705,8 @@
- begin
- if Wset_Color (Win,
- C_Short (Pair),
-- C_Void_Ptr (System.Null_Address)) = Curses_Err then
-+ C_Void_Ptr (System.Null_Address)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Set_Color;
-@@ -720,17 +719,19 @@
- is
- function Wchgat (Win : Window;
- Cnt : C_Int;
-- Attr : C_AttrType;
-+ Attr : Attributed_Character;
- Color : C_Short;
- Opts : System.Address := System.Null_Address)
- return C_Int;
- pragma Import (C, Wchgat, "wchgat");
--
-- Ch : constant Attributed_Character :=
-- (Ch => Character'First, Color => Color_Pair'First, Attr => Attr);
- begin
-- if Wchgat (Win, C_Int (Count), AttrChar_To_AttrType (Ch),
-- C_Short (Color)) = Curses_Err then
-+ if Wchgat (Win,
-+ C_Int (Count),
-+ (Ch => Character'First,
-+ Color => Color_Pair'First,
-+ Attr => Attr),
-+ C_Short (Color)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Change_Attributes;
-@@ -938,7 +939,8 @@
- pragma Import (C, Notimeout, "notimeout");
- begin
- if Notimeout (Win, Curses_Bool (Boolean'Pos (Timer_Off)))
-- = Curses_Err then
-+ = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Set_Escape_Timer_Mode;
-@@ -1051,7 +1053,8 @@
- pragma Import (C, Wsetscrreg, "wsetscrreg");
- begin
- if Wsetscrreg (Win, C_Int (Top_Line), C_Int (Bottom_Line))
-- = Curses_Err then
-+ = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Set_Scroll_Region;
-@@ -1108,7 +1111,8 @@
- begin
- if Wredrawln (Win,
- C_Int (Begin_Line),
-- C_Int (Line_Count)) = Curses_Err then
-+ C_Int (Line_Count)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Redraw;
-@@ -1158,20 +1162,21 @@
- (Win : Window := Standard_Window;
- Ch : Attributed_Character)
- is
-- procedure WBackground (W : Window; Ch : C_Chtype);
-+ procedure WBackground (W : Window; Ch : Attributed_Character);
- pragma Import (C, WBackground, "wbkgdset");
- begin
-- WBackground (Win, AttrChar_To_Chtype (Ch));
-+ WBackground (Win, Ch);
- end Set_Background;
-
- procedure Change_Background
- (Win : Window := Standard_Window;
- Ch : Attributed_Character)
- is
-- function WChangeBkgd (W : Window; Ch : C_Chtype) return C_Int;
-+ function WChangeBkgd (W : Window; Ch : Attributed_Character)
-+ return C_Int;
- pragma Import (C, WChangeBkgd, "wbkgd");
- begin
-- if WChangeBkgd (Win, AttrChar_To_Chtype (Ch)) = Curses_Err then
-+ if WChangeBkgd (Win, Ch) = Curses_Err then
- raise Curses_Exception;
- end if;
- end Change_Background;
-@@ -1179,10 +1184,10 @@
- function Get_Background (Win : Window := Standard_Window)
- return Attributed_Character
- is
-- function Wgetbkgd (Win : Window) return C_Chtype;
-+ function Wgetbkgd (Win : Window) return Attributed_Character;
- pragma Import (C, Wgetbkgd, "getbkgd");
- begin
-- return Chtype_To_AttrChar (Wgetbkgd (Win));
-+ return Wgetbkgd (Win);
- end Get_Background;
- ------------------------------------------------------------------------------
- procedure Change_Lines_Status (Win : Window := Standard_Window;
-@@ -1197,7 +1202,8 @@
- pragma Import (C, Wtouchln, "wtouchln");
- begin
- if Wtouchln (Win, C_Int (Start), C_Int (Count),
-- C_Int (Boolean'Pos (State))) = Curses_Err then
-+ C_Int (Boolean'Pos (State))) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Change_Lines_Status;
-@@ -1208,7 +1214,7 @@
- X : Column_Position;
- begin
- Get_Size (Win, Y, X);
-- pragma Unreferenced (X);
-+ pragma Warnings (Off, X); -- unreferenced
- Change_Lines_Status (Win, 0, Positive (Y), True);
- end Touch;
-
-@@ -1218,7 +1224,7 @@
- X : Column_Position;
- begin
- Get_Size (Win, Y, X);
-- pragma Unreferenced (X);
-+ pragma Warnings (Off, X); -- unreferenced
- Change_Lines_Status (Win, 0, Positive (Y), False);
- end Untouch;
-
-@@ -1288,7 +1294,8 @@
- C_Int (Destination_Bottom_Row),
- C_Int (Destination_Right_Column),
- Boolean'Pos (Non_Destructive_Mode)
-- ) = Curses_Err then
-+ ) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Copy;
-@@ -1491,7 +1498,8 @@
- C_Int (Destination_Top_Row),
- C_Int (Destination_Left_Column),
- C_Int (Destination_Bottom_Row),
-- C_Int (Destination_Right_Column)) = Curses_Err then
-+ C_Int (Destination_Right_Column)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Refresh;
-@@ -1521,7 +1529,8 @@
- C_Int (Destination_Top_Row),
- C_Int (Destination_Left_Column),
- C_Int (Destination_Bottom_Row),
-- C_Int (Destination_Right_Column)) = Curses_Err then
-+ C_Int (Destination_Right_Column)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Refresh_Without_Update;
-@@ -1530,11 +1539,11 @@
- (Pad : Window;
- Ch : Attributed_Character)
- is
-- function Pechochar (Pad : Window; Ch : C_Chtype)
-+ function Pechochar (Pad : Window; Ch : Attributed_Character)
- return C_Int;
- pragma Import (C, Pechochar, "pechochar");
- begin
-- if Pechochar (Pad, AttrChar_To_Chtype (Ch)) = Curses_Err then
-+ if Pechochar (Pad, Ch) = Curses_Err then
- raise Curses_Exception;
- end if;
- end Add_Character_To_Pad_And_Echo_It;
-@@ -1592,10 +1601,10 @@
- function Peek (Win : Window := Standard_Window)
- return Attributed_Character
- is
-- function Winch (Win : Window) return C_Chtype;
-+ function Winch (Win : Window) return Attributed_Character;
- pragma Import (C, Winch, "winch");
- begin
-- return Chtype_To_AttrChar (Winch (Win));
-+ return Winch (Win);
- end Peek;
-
- function Peek
-@@ -1605,19 +1614,19 @@
- is
- function Mvwinch (Win : Window;
- Lin : C_Int;
-- Col : C_Int) return C_Chtype;
-+ Col : C_Int) return Attributed_Character;
- pragma Import (C, Mvwinch, "mvwinch");
- begin
-- return Chtype_To_AttrChar (Mvwinch (Win, C_Int (Line), C_Int (Column)));
-+ return Mvwinch (Win, C_Int (Line), C_Int (Column));
- end Peek;
- ------------------------------------------------------------------------------
- procedure Insert (Win : Window := Standard_Window;
- Ch : Attributed_Character)
- is
-- function Winsch (Win : Window; Ch : C_Chtype) return C_Int;
-+ function Winsch (Win : Window; Ch : Attributed_Character) return C_Int;
- pragma Import (C, Winsch, "winsch");
- begin
-- if Winsch (Win, AttrChar_To_Chtype (Ch)) = Curses_Err then
-+ if Winsch (Win, Ch) = Curses_Err then
- raise Curses_Exception;
- end if;
- end Insert;
-@@ -1631,13 +1640,14 @@
- function Mvwinsch (Win : Window;
- Lin : C_Int;
- Col : C_Int;
-- Ch : C_Chtype) return C_Int;
-+ Ch : Attributed_Character) return C_Int;
- pragma Import (C, Mvwinsch, "mvwinsch");
- begin
- if Mvwinsch (Win,
- C_Int (Line),
- C_Int (Column),
-- AttrChar_To_Chtype (Ch)) = Curses_Err then
-+ Ch) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Insert;
-@@ -1679,7 +1689,8 @@
- begin
- To_C (Str, Txt, Length);
- if Mvwinsnstr (Win, C_Int (Line), C_Int (Column), Txt, C_Int (Len))
-- = Curses_Err then
-+ = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Insert;
-@@ -1840,7 +1851,8 @@
- begin
- To_C (Text, Txt, Len);
- if Slk_Set (C_Int (Label), Txt,
-- C_Int (Label_Justification'Pos (Fmt))) = Curses_Err then
-+ C_Int (Label_Justification'Pos (Fmt))) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Set_Soft_Label_Key;
-@@ -1916,9 +1928,9 @@
- (Attr : Character_Attribute_Set;
- On : Boolean := True)
- is
-- function Slk_Attron (Ch : C_Chtype) return C_Int;
-+ function Slk_Attron (Ch : Attributed_Character) return C_Int;
- pragma Import (C, Slk_Attron, "slk_attron");
-- function Slk_Attroff (Ch : C_Chtype) return C_Int;
-+ function Slk_Attroff (Ch : Attributed_Character) return C_Int;
- pragma Import (C, Slk_Attroff, "slk_attroff");
-
- Err : C_Int;
-@@ -1927,9 +1939,9 @@
- Color => Color_Pair'First);
- begin
- if On then
-- Err := Slk_Attron (AttrChar_To_Chtype (Ch));
-+ Err := Slk_Attron (Ch);
- else
-- Err := Slk_Attroff (AttrChar_To_Chtype (Ch));
-+ Err := Slk_Attroff (Ch);
- end if;
- if Err = Curses_Err then
- raise Curses_Exception;
-@@ -1940,36 +1952,36 @@
- (Attr : Character_Attribute_Set := Normal_Video;
- Color : Color_Pair := Color_Pair'First)
- is
-- function Slk_Attrset (Ch : C_Chtype) return C_Int;
-+ function Slk_Attrset (Ch : Attributed_Character) return C_Int;
- pragma Import (C, Slk_Attrset, "slk_attrset");
-
- Ch : constant Attributed_Character := (Ch => Character'First,
- Attr => Attr,
- Color => Color);
- begin
-- if Slk_Attrset (AttrChar_To_Chtype (Ch)) = Curses_Err then
-+ if Slk_Attrset (Ch) = Curses_Err then
- raise Curses_Exception;
- end if;
- end Set_Soft_Label_Key_Attributes;
-
- function Get_Soft_Label_Key_Attributes return Character_Attribute_Set
- is
-- function Slk_Attr return C_Chtype;
-+ function Slk_Attr return Attributed_Character;
- pragma Import (C, Slk_Attr, "slk_attr");
-
-- Attr : constant C_Chtype := Slk_Attr;
-+ Attr : constant Attributed_Character := Slk_Attr;
- begin
-- return Chtype_To_AttrChar (Attr).Attr;
-+ return Attr.Attr;
- end Get_Soft_Label_Key_Attributes;
-
- function Get_Soft_Label_Key_Attributes return Color_Pair
- is
-- function Slk_Attr return C_Chtype;
-+ function Slk_Attr return Attributed_Character;
- pragma Import (C, Slk_Attr, "slk_attr");
-
-- Attr : constant C_Chtype := Slk_Attr;
-+ Attr : constant Attributed_Character := Slk_Attr;
- begin
-- return Chtype_To_AttrChar (Attr).Color;
-+ return Attr.Color;
- end Get_Soft_Label_Key_Attributes;
-
- procedure Set_Soft_Label_Key_Color (Pair : Color_Pair)
-@@ -1991,7 +2003,8 @@
- pragma Import (C, Keyok, "keyok");
- begin
- if Keyok (C_Int (Key), Curses_Bool (Boolean'Pos (Enable)))
-- = Curses_Err then
-+ = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Enable_Key;
-@@ -2015,18 +2028,18 @@
- procedure Un_Control (Ch : Attributed_Character;
- Str : out String)
- is
-- function Unctrl (Ch : C_Chtype) return chars_ptr;
-+ function Unctrl (Ch : Attributed_Character) return chars_ptr;
- pragma Import (C, Unctrl, "unctrl");
- begin
-- Fill_String (Unctrl (AttrChar_To_Chtype (Ch)), Str);
-+ Fill_String (Unctrl (Ch), Str);
- end Un_Control;
-
- function Un_Control (Ch : Attributed_Character) return String
- is
-- function Unctrl (Ch : C_Chtype) return chars_ptr;
-+ function Unctrl (Ch : Attributed_Character) return chars_ptr;
- pragma Import (C, Unctrl, "unctrl");
- begin
-- return Fill_String (Unctrl (AttrChar_To_Chtype (Ch)));
-+ return Fill_String (Unctrl (Ch));
- end Un_Control;
-
- procedure Delay_Output (Msecs : Natural)
-@@ -2099,10 +2112,10 @@
-
- function Supported_Attributes return Character_Attribute_Set
- is
-- function Termattrs return C_Chtype;
-+ function Termattrs return Attributed_Character;
- pragma Import (C, Termattrs, "termattrs");
-
-- Ch : constant Attributed_Character := Chtype_To_AttrChar (Termattrs);
-+ Ch : constant Attributed_Character := Termattrs;
- begin
- return Ch.Attr;
- end Supported_Attributes;
-@@ -2152,11 +2165,13 @@
- raise Constraint_Error;
- end if;
- if Integer (Fore) >= Number_Of_Colors or else
-- Integer (Back) >= Number_Of_Colors then
-+ Integer (Back) >= Number_Of_Colors
-+ then
- raise Constraint_Error;
- end if;
- if Initpair (C_Short (Pair), C_Short (Fore), C_Short (Back))
-- = Curses_Err then
-+ = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Init_Pair;
-@@ -2205,7 +2220,8 @@
- pragma Import (C, Initcolor, "init_color");
- begin
- if Initcolor (C_Short (Color), C_Short (Red), C_Short (Green),
-- C_Short (Blue)) = Curses_Err then
-+ C_Short (Blue)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Init_Color;
-@@ -2236,7 +2252,8 @@
- R, G, B : aliased C_Short;
- begin
- if Colorcontent (C_Short (Color), R'Access, G'Access, B'Access) =
-- Curses_Err then
-+ Curses_Err
-+ then
- raise Curses_Exception;
- else
- Red := RGB_Value (R);
-@@ -2337,7 +2354,46 @@
- end if;
- end Nap_Milli_Seconds;
- ------------------------------------------------------------------------------
--include(`Public_Variables')
-+ function Lines return Line_Count
-+ is
-+ function LINES_As_Function return Interfaces.C.int;
-+ pragma Import (C, LINES_As_Function, "LINES_as_function");
-+ begin
-+ return Line_Count (LINES_As_Function);
-+ end Lines;
-+
-+ function Columns return Column_Count
-+ is
-+ function COLS_As_Function return Interfaces.C.int;
-+ pragma Import (C, COLS_As_Function, "COLS_as_function");
-+ begin
-+ return Column_Count (COLS_As_Function);
-+ end Columns;
-+
-+ function Tab_Size return Natural
-+ is
-+ function TABSIZE_As_Function return Interfaces.C.int;
-+ pragma Import (C, TABSIZE_As_Function, "TABSIZE_as_function");
-+
-+ begin
-+ return Natural (TABSIZE_As_Function);
-+ end Tab_Size;
-+
-+ function Number_Of_Colors return Natural
-+ is
-+ function COLORS_As_Function return Interfaces.C.int;
-+ pragma Import (C, COLORS_As_Function, "COLORS_as_function");
-+ begin
-+ return Natural (COLORS_As_Function);
-+ end Number_Of_Colors;
-+
-+ function Number_Of_Color_Pairs return Natural
-+ is
-+ function COLOR_PAIRS_As_Function return Interfaces.C.int;
-+ pragma Import (C, COLOR_PAIRS_As_Function, "COLOR_PAIRS_as_function");
-+ begin
-+ return Natural (COLOR_PAIRS_As_Function);
-+ end Number_Of_Color_Pairs;
- ------------------------------------------------------------------------------
- procedure Transform_Coordinates
- (W : Window := Standard_Window;
-@@ -2493,7 +2549,8 @@
- begin
- if wresize (Win,
- C_Int (Number_Of_Lines),
-- C_Int (Number_Of_Columns)) = Curses_Err then
-+ C_Int (Number_Of_Columns)) = Curses_Err
-+ then
- raise Curses_Exception;
- end if;
- end Resize;
-Index: Ada95/gen/terminal_interface-curses.ads.m4
---- ncurses-5.9/Ada95/gen/terminal_interface-curses.ads.m4 2011-03-19 23:05:56.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/gen/terminal_interface-curses.ads.m4 2014-05-24 21:31:57.000000000 +0000
-@@ -9,7 +9,7 @@
- -- S P E C --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -37,18 +37,23 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.44 $
---- $Date: 2011/03/19 23:05:56 $
-+-- $Revision: 1.47 $
-+-- $Date: 2014/05/24 21:31:57 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
--include(`Base_Defs')
- with System.Storage_Elements;
- with Interfaces.C; -- We need this for some assertions.
-
-+with Terminal_Interface.Curses_Constants;
-+
- package Terminal_Interface.Curses is
- pragma Preelaborate (Terminal_Interface.Curses);
--include(`Linker_Options')
--include(`Version_Info')
-+ pragma Linker_Options ("-lncurses" & Curses_Constants.DFT_ARG_SUFFIX);
-+
-+ Major_Version : constant := Curses_Constants.NCURSES_VERSION_MAJOR;
-+ Minor_Version : constant := Curses_Constants.NCURSES_VERSION_MINOR;
-+ NC_Version : String renames Curses_Constants.Version;
-+
- type Window is private;
- Null_Window : constant Window;
-
-@@ -65,24 +70,315 @@
- -- request codes.
-
- -- FIXME: The "-1" should be Curses_Err
-- subtype Real_Key_Code is Key_Code range -1 .. M4_KEY_MAX;
-+ subtype Real_Key_Code is Key_Code range -1 .. Curses_Constants.KEY_MAX;
- -- This are the codes that potentially represent a real keystroke.
- -- Not all codes may be possible on a specific terminal. To check the
- -- availability of a special key, the Has_Key function is provided.
-
- subtype Special_Key_Code is Real_Key_Code
-- range M4_SPECIAL_FIRST .. Real_Key_Code'Last;
-+ range Curses_Constants. KEY_MIN - 1 .. Real_Key_Code'Last;
- -- Type for a function- or special key number
-
- subtype Normal_Key_Code is Real_Key_Code range
- Character'Pos (Character'First) .. Character'Pos (Character'Last);
- -- This are the codes for regular (incl. non-graphical) characters.
-
-+ -- For those who like to use the original key names we produce them were
-+ -- they differ from the original.
-+
- -- Constants for function- and special keys
-- --
-- Key_None : constant Special_Key_Code := M4_SPECIAL_FIRST;
--include(`Key_Definitions')
-- Key_Max : constant Special_Key_Code
-+ Key_None : constant Special_Key_Code
-+ := Curses_Constants.KEY_MIN - 1;
-+ Key_Min : constant Special_Key_Code
-+ := Curses_Constants.KEY_MIN;
-+ Key_Break : constant Special_Key_Code
-+ := Curses_Constants.KEY_BREAK;
-+ KEY_DOWN : constant Special_Key_Code
-+ := Curses_Constants.KEY_DOWN;
-+ Key_Cursor_Down : Special_Key_Code renames KEY_DOWN;
-+ KEY_UP : constant Special_Key_Code
-+ := Curses_Constants.KEY_UP;
-+ Key_Cursor_Up : Special_Key_Code renames KEY_UP;
-+ KEY_LEFT : constant Special_Key_Code
-+ := Curses_Constants.KEY_LEFT;
-+ Key_Cursor_Left : Special_Key_Code renames KEY_LEFT;
-+ KEY_RIGHT : constant Special_Key_Code
-+ := Curses_Constants.KEY_RIGHT;
-+ Key_Cursor_Right : Special_Key_Code renames KEY_RIGHT;
-+ Key_Home : constant Special_Key_Code
-+ := Curses_Constants.KEY_HOME;
-+ Key_Backspace : constant Special_Key_Code
-+ := Curses_Constants.KEY_BACKSPACE;
-+ Key_F0 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F0;
-+ Key_F1 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F1;
-+ Key_F2 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F2;
-+ Key_F3 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F3;
-+ Key_F4 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F4;
-+ Key_F5 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F5;
-+ Key_F6 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F6;
-+ Key_F7 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F7;
-+ Key_F8 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F8;
-+ Key_F9 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F9;
-+ Key_F10 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F10;
-+ Key_F11 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F11;
-+ Key_F12 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F12;
-+ Key_F13 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F13;
-+ Key_F14 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F14;
-+ Key_F15 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F15;
-+ Key_F16 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F16;
-+ Key_F17 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F17;
-+ Key_F18 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F18;
-+ Key_F19 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F19;
-+ Key_F20 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F20;
-+ Key_F21 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F21;
-+ Key_F22 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F22;
-+ Key_F23 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F23;
-+ Key_F24 : constant Special_Key_Code
-+ := Curses_Constants.KEY_F24;
-+ KEY_DL : constant Special_Key_Code
-+ := Curses_Constants.KEY_DL;
-+ Key_Delete_Line : Special_Key_Code renames KEY_DL;
-+ KEY_IL : constant Special_Key_Code
-+ := Curses_Constants.KEY_IL;
-+ Key_Insert_Line : Special_Key_Code renames KEY_IL;
-+ KEY_DC : constant Special_Key_Code
-+ := Curses_Constants.KEY_DC;
-+ Key_Delete_Char : Special_Key_Code renames KEY_DC;
-+ KEY_IC : constant Special_Key_Code
-+ := Curses_Constants.KEY_IC;
-+ Key_Insert_Char : Special_Key_Code renames KEY_IC;
-+ KEY_EIC : constant Special_Key_Code
-+ := Curses_Constants.KEY_EIC;
-+ Key_Exit_Insert_Mode : Special_Key_Code renames KEY_EIC;
-+ KEY_CLEAR : constant Special_Key_Code
-+ := Curses_Constants.KEY_CLEAR;
-+ Key_Clear_Screen : Special_Key_Code renames KEY_CLEAR;
-+ KEY_EOS : constant Special_Key_Code
-+ := Curses_Constants.KEY_EOS;
-+ Key_Clear_End_Of_Screen : Special_Key_Code renames KEY_EOS;
-+ KEY_EOL : constant Special_Key_Code
-+ := Curses_Constants.KEY_EOL;
-+ Key_Clear_End_Of_Line : Special_Key_Code renames KEY_EOL;
-+ KEY_SF : constant Special_Key_Code
-+ := Curses_Constants.KEY_SF;
-+ Key_Scroll_1_Forward : Special_Key_Code renames KEY_SF;
-+ KEY_SR : constant Special_Key_Code
-+ := Curses_Constants.KEY_SR;
-+ Key_Scroll_1_Backward : Special_Key_Code renames KEY_SR;
-+ KEY_NPAGE : constant Special_Key_Code
-+ := Curses_Constants.KEY_NPAGE;
-+ Key_Next_Page : Special_Key_Code renames KEY_NPAGE;
-+ KEY_PPAGE : constant Special_Key_Code
-+ := Curses_Constants.KEY_PPAGE;
-+ Key_Previous_Page : Special_Key_Code renames KEY_PPAGE;
-+ KEY_STAB : constant Special_Key_Code
-+ := Curses_Constants.KEY_STAB;
-+ Key_Set_Tab : Special_Key_Code renames KEY_STAB;
-+ KEY_CTAB : constant Special_Key_Code
-+ := Curses_Constants.KEY_CTAB;
-+ Key_Clear_Tab : Special_Key_Code renames KEY_CTAB;
-+ KEY_CATAB : constant Special_Key_Code
-+ := Curses_Constants.KEY_CATAB;
-+ Key_Clear_All_Tabs : Special_Key_Code renames KEY_CATAB;
-+ KEY_ENTER : constant Special_Key_Code
-+ := Curses_Constants.KEY_ENTER;
-+ Key_Enter_Or_Send : Special_Key_Code renames KEY_ENTER;
-+ KEY_SRESET : constant Special_Key_Code
-+ := Curses_Constants.KEY_SRESET;
-+ Key_Soft_Reset : Special_Key_Code renames KEY_SRESET;
-+ Key_Reset : constant Special_Key_Code
-+ := Curses_Constants.KEY_RESET;
-+ Key_Print : constant Special_Key_Code
-+ := Curses_Constants.KEY_PRINT;
-+ KEY_LL : constant Special_Key_Code
-+ := Curses_Constants.KEY_LL;
-+ Key_Bottom : Special_Key_Code renames KEY_LL;
-+ KEY_A1 : constant Special_Key_Code
-+ := Curses_Constants.KEY_A1;
-+ Key_Upper_Left_Of_Keypad : Special_Key_Code renames KEY_A1;
-+ KEY_A3 : constant Special_Key_Code
-+ := Curses_Constants.KEY_A3;
-+ Key_Upper_Right_Of_Keypad : Special_Key_Code renames KEY_A3;
-+ KEY_B2 : constant Special_Key_Code
-+ := Curses_Constants.KEY_B2;
-+ Key_Center_Of_Keypad : Special_Key_Code renames KEY_B2;
-+ KEY_C1 : constant Special_Key_Code
-+ := Curses_Constants.KEY_C1;
-+ Key_Lower_Left_Of_Keypad : Special_Key_Code renames KEY_C1;
-+ KEY_C3 : constant Special_Key_Code
-+ := Curses_Constants.KEY_C3;
-+ Key_Lower_Right_Of_Keypad : Special_Key_Code renames KEY_C3;
-+ KEY_BTAB : constant Special_Key_Code
-+ := Curses_Constants.KEY_BTAB;
-+ Key_Back_Tab : Special_Key_Code renames KEY_BTAB;
-+ KEY_BEG : constant Special_Key_Code
-+ := Curses_Constants.KEY_BEG;
-+ Key_Beginning : Special_Key_Code renames KEY_BEG;
-+ Key_Cancel : constant Special_Key_Code
-+ := Curses_Constants.KEY_CANCEL;
-+ Key_Close : constant Special_Key_Code
-+ := Curses_Constants.KEY_CLOSE;
-+ Key_Command : constant Special_Key_Code
-+ := Curses_Constants.KEY_COMMAND;
-+ Key_Copy : constant Special_Key_Code
-+ := Curses_Constants.KEY_COPY;
-+ Key_Create : constant Special_Key_Code
-+ := Curses_Constants.KEY_CREATE;
-+ Key_End : constant Special_Key_Code
-+ := Curses_Constants.KEY_END;
-+ Key_Exit : constant Special_Key_Code
-+ := Curses_Constants.KEY_EXIT;
-+ Key_Find : constant Special_Key_Code
-+ := Curses_Constants.KEY_FIND;
-+ Key_Help : constant Special_Key_Code
-+ := Curses_Constants.KEY_HELP;
-+ Key_Mark : constant Special_Key_Code
-+ := Curses_Constants.KEY_MARK;
-+ Key_Message : constant Special_Key_Code
-+ := Curses_Constants.KEY_MESSAGE;
-+ Key_Move : constant Special_Key_Code
-+ := Curses_Constants.KEY_MOVE;
-+ Key_Next : constant Special_Key_Code
-+ := Curses_Constants.KEY_NEXT;
-+ Key_Open : constant Special_Key_Code
-+ := Curses_Constants.KEY_OPEN;
-+ Key_Options : constant Special_Key_Code
-+ := Curses_Constants.KEY_OPTIONS;
-+ Key_Previous : constant Special_Key_Code
-+ := Curses_Constants.KEY_PREVIOUS;
-+ Key_Redo : constant Special_Key_Code
-+ := Curses_Constants.KEY_REDO;
-+ Key_Reference : constant Special_Key_Code
-+ := Curses_Constants.KEY_REFERENCE;
-+ Key_Refresh : constant Special_Key_Code
-+ := Curses_Constants.KEY_REFRESH;
-+ Key_Replace : constant Special_Key_Code
-+ := Curses_Constants.KEY_REPLACE;
-+ Key_Restart : constant Special_Key_Code
-+ := Curses_Constants.KEY_RESTART;
-+ Key_Resume : constant Special_Key_Code
-+ := Curses_Constants.KEY_RESUME;
-+ Key_Save : constant Special_Key_Code
-+ := Curses_Constants.KEY_SAVE;
-+ KEY_SBEG : constant Special_Key_Code
-+ := Curses_Constants.KEY_SBEG;
-+ Key_Shift_Begin : Special_Key_Code renames KEY_SBEG;
-+ KEY_SCANCEL : constant Special_Key_Code
-+ := Curses_Constants.KEY_SCANCEL;
-+ Key_Shift_Cancel : Special_Key_Code renames KEY_SCANCEL;
-+ KEY_SCOMMAND : constant Special_Key_Code
-+ := Curses_Constants.KEY_SCOMMAND;
-+ Key_Shift_Command : Special_Key_Code renames KEY_SCOMMAND;
-+ KEY_SCOPY : constant Special_Key_Code
-+ := Curses_Constants.KEY_SCOPY;
-+ Key_Shift_Copy : Special_Key_Code renames KEY_SCOPY;
-+ KEY_SCREATE : constant Special_Key_Code
-+ := Curses_Constants.KEY_SCREATE;
-+ Key_Shift_Create : Special_Key_Code renames KEY_SCREATE;
-+ KEY_SDC : constant Special_Key_Code
-+ := Curses_Constants.KEY_SDC;
-+ Key_Shift_Delete_Char : Special_Key_Code renames KEY_SDC;
-+ KEY_SDL : constant Special_Key_Code
-+ := Curses_Constants.KEY_SDL;
-+ Key_Shift_Delete_Line : Special_Key_Code renames KEY_SDL;
-+ Key_Select : constant Special_Key_Code
-+ := Curses_Constants.KEY_SELECT;
-+ KEY_SEND : constant Special_Key_Code
-+ := Curses_Constants.KEY_SEND;
-+ Key_Shift_End : Special_Key_Code renames KEY_SEND;
-+ KEY_SEOL : constant Special_Key_Code
-+ := Curses_Constants.KEY_SEOL;
-+ Key_Shift_Clear_End_Of_Line : Special_Key_Code renames KEY_SEOL;
-+ KEY_SEXIT : constant Special_Key_Code
-+ := Curses_Constants.KEY_SEXIT;
-+ Key_Shift_Exit : Special_Key_Code renames KEY_SEXIT;
-+ KEY_SFIND : constant Special_Key_Code
-+ := Curses_Constants.KEY_SFIND;
-+ Key_Shift_Find : Special_Key_Code renames KEY_SFIND;
-+ KEY_SHELP : constant Special_Key_Code
-+ := Curses_Constants.KEY_SHELP;
-+ Key_Shift_Help : Special_Key_Code renames KEY_SHELP;
-+ KEY_SHOME : constant Special_Key_Code
-+ := Curses_Constants.KEY_SHOME;
-+ Key_Shift_Home : Special_Key_Code renames KEY_SHOME;
-+ KEY_SIC : constant Special_Key_Code
-+ := Curses_Constants.KEY_SIC;
-+ Key_Shift_Insert_Char : Special_Key_Code renames KEY_SIC;
-+ KEY_SLEFT : constant Special_Key_Code
-+ := Curses_Constants.KEY_SLEFT;
-+ Key_Shift_Cursor_Left : Special_Key_Code renames KEY_SLEFT;
-+ KEY_SMESSAGE : constant Special_Key_Code
-+ := Curses_Constants.KEY_SMESSAGE;
-+ Key_Shift_Message : Special_Key_Code renames KEY_SMESSAGE;
-+ KEY_SMOVE : constant Special_Key_Code
-+ := Curses_Constants.KEY_SMOVE;
-+ Key_Shift_Move : Special_Key_Code renames KEY_SMOVE;
-+ KEY_SNEXT : constant Special_Key_Code
-+ := Curses_Constants.KEY_SNEXT;
-+ Key_Shift_Next_Page : Special_Key_Code renames KEY_SNEXT;
-+ KEY_SOPTIONS : constant Special_Key_Code
-+ := Curses_Constants.KEY_SOPTIONS;
-+ Key_Shift_Options : Special_Key_Code renames KEY_SOPTIONS;
-+ KEY_SPREVIOUS : constant Special_Key_Code
-+ := Curses_Constants.KEY_SPREVIOUS;
-+ Key_Shift_Previous_Page : Special_Key_Code renames KEY_SPREVIOUS;
-+ KEY_SPRINT : constant Special_Key_Code
-+ := Curses_Constants.KEY_SPRINT;
-+ Key_Shift_Print : Special_Key_Code renames KEY_SPRINT;
-+ KEY_SREDO : constant Special_Key_Code
-+ := Curses_Constants.KEY_SREDO;
-+ Key_Shift_Redo : Special_Key_Code renames KEY_SREDO;
-+ KEY_SREPLACE : constant Special_Key_Code
-+ := Curses_Constants.KEY_SREPLACE;
-+ Key_Shift_Replace : Special_Key_Code renames KEY_SREPLACE;
-+ KEY_SRIGHT : constant Special_Key_Code
-+ := Curses_Constants.KEY_SRIGHT;
-+ Key_Shift_Cursor_Right : Special_Key_Code renames KEY_SRIGHT;
-+ KEY_SRSUME : constant Special_Key_Code
-+ := Curses_Constants.KEY_SRSUME;
-+ Key_Shift_Resume : Special_Key_Code renames KEY_SRSUME;
-+ KEY_SSAVE : constant Special_Key_Code
-+ := Curses_Constants.KEY_SSAVE;
-+ Key_Shift_Save : Special_Key_Code renames KEY_SSAVE;
-+ KEY_SSUSPEND : constant Special_Key_Code
-+ := Curses_Constants.KEY_SSUSPEND;
-+ Key_Shift_Suspend : Special_Key_Code renames KEY_SSUSPEND;
-+ KEY_SUNDO : constant Special_Key_Code
-+ := Curses_Constants.KEY_SUNDO;
-+ Key_Shift_Undo : Special_Key_Code renames KEY_SUNDO;
-+ Key_Suspend : constant Special_Key_Code
-+ := Curses_Constants.KEY_SUSPEND;
-+ Key_Undo : constant Special_Key_Code
-+ := Curses_Constants.KEY_UNDO;
-+ Key_Mouse : constant Special_Key_Code
-+ := Curses_Constants.KEY_MOUSE;
-+ Key_Resize : constant Special_Key_Code
-+ := Curses_Constants.KEY_RESIZE;
-+ Key_Max : constant Special_Key_Code
- := Special_Key_Code'Last;
-
- subtype User_Key_Code is Key_Code
-@@ -90,12 +386,7 @@
- -- This is reserved for user defined key codes. The range between Key_Max
- -- and the first user code is reserved for subsystems like menu and forms.
-
-- -- For those who like to use the original key names we produce them were
-- -- they differ from the original. Please note that they may differ in
-- -- lower/upper case.
--include(`Old_Keys')dnl
--
--------------------------------------------------------------------------------
-+ --------------------------------------------------------------------------
-
- type Color_Number is range -1 .. Integer (Interfaces.C.short'Last);
- for Color_Number'Size use Interfaces.C.short'Size;
-@@ -104,7 +395,15 @@
- -- (potentially) definable colors. Some of those indices are
- -- predefined (see below), although they may not really exist.
-
--include(`Color_Defs')
-+ Black : constant Color_Number := Curses_Constants.COLOR_BLACK;
-+ Red : constant Color_Number := Curses_Constants.COLOR_RED;
-+ Green : constant Color_Number := Curses_Constants.COLOR_GREEN;
-+ Yellow : constant Color_Number := Curses_Constants.COLOR_YELLOW;
-+ Blue : constant Color_Number := Curses_Constants.COLOR_BLUE;
-+ Magenta : constant Color_Number := Curses_Constants.COLOR_MAGENTA;
-+ Cyan : constant Color_Number := Curses_Constants.COLOR_CYAN;
-+ White : constant Color_Number := Curses_Constants.COLOR_WHITE;
-+
- type RGB_Value is range 0 .. Integer (Interfaces.C.short'Last);
- for RGB_Value'Size use Interfaces.C.short'Size;
- -- Some system may allow to redefine a color by setting RGB values.
-@@ -117,8 +416,73 @@
- -- two colors described by Color_Numbers, one for the foreground and
- -- the other for the background
-
--include(`Character_Attribute_Set_Rep')
-- -- (n)curses uses all but the lowest 16 Bits for Attributes.
-+ type Character_Attribute_Set is
-+ record
-+ Stand_Out : Boolean;
-+ Under_Line : Boolean;
-+ Reverse_Video : Boolean;
-+ Blink : Boolean;
-+ Dim_Character : Boolean;
-+ Bold_Character : Boolean;
-+ Protected_Character : Boolean;
-+ Invisible_Character : Boolean;
-+ Alternate_Character_Set : Boolean;
-+ Horizontal : Boolean;
-+ Left : Boolean;
-+ Low : Boolean;
-+ Right : Boolean;
-+ Top : Boolean;
-+ Vertical : Boolean;
-+ end record;
-+
-+ for Character_Attribute_Set use
-+ record
-+ Stand_Out at 0 range
-+ Curses_Constants.A_STANDOUT_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_STANDOUT_Last - Curses_Constants.Attr_First;
-+ Under_Line at 0 range
-+ Curses_Constants.A_UNDERLINE_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_UNDERLINE_Last - Curses_Constants.Attr_First;
-+ Reverse_Video at 0 range
-+ Curses_Constants.A_REVERSE_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_REVERSE_Last - Curses_Constants.Attr_First;
-+ Blink at 0 range
-+ Curses_Constants.A_BLINK_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_BLINK_Last - Curses_Constants.Attr_First;
-+ Dim_Character at 0 range
-+ Curses_Constants.A_DIM_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_DIM_Last - Curses_Constants.Attr_First;
-+ Bold_Character at 0 range
-+ Curses_Constants.A_BOLD_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_BOLD_Last - Curses_Constants.Attr_First;
-+ Protected_Character at 0 range
-+ Curses_Constants.A_PROTECT_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_PROTECT_Last - Curses_Constants.Attr_First;
-+ Invisible_Character at 0 range
-+ Curses_Constants.A_INVIS_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_INVIS_Last - Curses_Constants.Attr_First;
-+ Alternate_Character_Set at 0 range
-+ Curses_Constants.A_ALTCHARSET_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_ALTCHARSET_Last - Curses_Constants.Attr_First;
-+ Horizontal at 0 range
-+ Curses_Constants.A_HORIZONTAL_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_HORIZONTAL_Last - Curses_Constants.Attr_First;
-+ Left at 0 range
-+ Curses_Constants.A_LEFT_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_LEFT_Last - Curses_Constants.Attr_First;
-+ Low at 0 range
-+ Curses_Constants.A_LOW_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_LOW_Last - Curses_Constants.Attr_First;
-+ Right at 0 range
-+ Curses_Constants.A_RIGHT_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_RIGHT_Last - Curses_Constants.Attr_First;
-+ Top at 0 range
-+ Curses_Constants.A_TOP_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_TOP_Last - Curses_Constants.Attr_First;
-+ Vertical at 0 range
-+ Curses_Constants.A_VERTICAL_First - Curses_Constants.Attr_First
-+ .. Curses_Constants.A_VERTICAL_Last - Curses_Constants.Attr_First;
-+ end record;
-
- Normal_Video : constant Character_Attribute_Set := (others => False);
-
-@@ -128,17 +492,29 @@
- Color : Color_Pair;
- Ch : Character;
- end record;
-- pragma Convention (C, Attributed_Character);
-+ pragma Convention (C_Pass_By_Copy, Attributed_Character);
- -- This is the counterpart for the chtype in C.
-
--include(`AC_Rep')
-+ for Attributed_Character use
-+ record
-+ Ch at 0 range Curses_Constants.A_CHARTEXT_First
-+ .. Curses_Constants.A_CHARTEXT_Last;
-+ Color at 0 range Curses_Constants.A_COLOR_First
-+ .. Curses_Constants.A_COLOR_Last;
-+ pragma Warnings (Off);
-+ Attr at 0 range Curses_Constants.Attr_First
-+ .. Curses_Constants.Attr_Last;
-+ pragma Warnings (On);
-+ end record;
-+ for Attributed_Character'Size use Curses_Constants.chtype_Size;
-+
- Default_Character : constant Attributed_Character
- := (Ch => Character'First,
- Color => Color_Pair'First,
- Attr => (others => False)); -- preelaboratable Normal_Video
-
- type Attributed_String is array (Positive range <>) of Attributed_Character;
-- pragma Pack (Attributed_String);
-+ pragma Convention (C, Attributed_String);
- -- In this binding we allow strings of attributed characters.
-
- ------------------
-@@ -188,7 +564,78 @@
- function Number_Of_Color_Pairs return Natural;
- pragma Inline (Number_Of_Color_Pairs);
-
--include(`ACS_Map')dnl
-+ subtype ACS_Index is Character range
-+ Character'Val (0) .. Character'Val (127);
-+ function ACS_Map (Index : ACS_Index) return Attributed_Character;
-+ pragma Import (C, ACS_Map, "acs_map_as_function");
-+
-+ -- Constants for several characters from the Alternate Character Set
-+ -- You must use these constants as indices into the ACS_Map function
-+ -- to get the corresponding attributed character at runtime
-+ ACS_Upper_Left_Corner : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_ULCORNER);
-+ ACS_Lower_Left_Corner : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_LLCORNER);
-+ ACS_Upper_Right_Corner : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_URCORNER);
-+ ACS_Lower_Right_Corner : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_LRCORNER);
-+ ACS_Left_Tee : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_LTEE);
-+ ACS_Right_Tee : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_RTEE);
-+ ACS_Bottom_Tee : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_BTEE);
-+ ACS_Top_Tee : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_TTEE);
-+ ACS_Horizontal_Line : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_HLINE);
-+ ACS_Vertical_Line : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_VLINE);
-+ ACS_Plus_Symbol : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_PLUS);
-+ ACS_Scan_Line_1 : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_S1);
-+ ACS_Scan_Line_9 : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_S9);
-+ ACS_Diamond : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_DIAMOND);
-+ ACS_Checker_Board : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_CKBOARD);
-+ ACS_Degree : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_DEGREE);
-+ ACS_Plus_Minus : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_PLMINUS);
-+ ACS_Bullet : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_BULLET);
-+ ACS_Left_Arrow : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_LARROW);
-+ ACS_Right_Arrow : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_RARROW);
-+ ACS_Down_Arrow : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_DARROW);
-+ ACS_Up_Arrow : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_UARROW);
-+ ACS_Board_Of_Squares : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_BOARD);
-+ ACS_Lantern : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_LANTERN);
-+ ACS_Solid_Block : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_BLOCK);
-+ ACS_Scan_Line_3 : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_S3);
-+ ACS_Scan_Line_7 : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_S7);
-+ ACS_Less_Or_Equal : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_LEQUAL);
-+ ACS_Greater_Or_Equal : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_GEQUAL);
-+ ACS_PI : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_PI);
-+ ACS_Not_Equal : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_NEQUAL);
-+ ACS_Sterling : constant ACS_Index
-+ := Character'Val (Curses_Constants.ACS_STERLING);
-
- -- MANPAGE(`curs_initscr.3x')
- -- | Not implemented: newterm, set_term, delscreen
-@@ -196,11 +643,13 @@
- -- ANCHOR(`stdscr',`Standard_Window')
- function Standard_Window return Window;
- -- AKA
-+ pragma Import (C, Standard_Window, "stdscr_as_function");
- pragma Inline (Standard_Window);
-
- -- ANCHOR(`curscr',`Current_Window')
- function Current_Window return Window;
- -- AKA
-+ pragma Import (C, Current_Window, "curscr_as_function");
- pragma Inline (Current_Window);
-
- -- ANCHOR(`initscr()',`Init_Screen')
-@@ -1476,6 +1925,8 @@
-
- -- MANPAGE(`default_colors.3x')
-
-+ Default_Color : constant Color_Number := -1;
-+
- -- ANCHOR(`use_default_colors()',`Use_Default_Colors')
- procedure Use_Default_Colors;
- -- AKA
-@@ -1553,7 +2004,11 @@
- -- The next constants are generated and may be different on your
- -- architecture.
- --
--include(`Window_Offsets')dnl
-+
-+ Sizeof_Bool : constant := Curses_Constants.Sizeof_Bool;
-+
-+ type Curses_Bool is mod 2 ** Sizeof_Bool;
-+
- Curses_Bool_False : constant Curses_Bool := 0;
-
- end Terminal_Interface.Curses;
-Index: Ada95/include/ncurses_defs
-Prereq: 1.41
---- ncurses-5.9/Ada95/include/ncurses_defs 2008-11-16 00:19:59.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/include/ncurses_defs 2013-04-27 19:50:17.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: ncurses_defs,v 1.41 2008/11/16 00:19:59 juergen Exp $
-+# $Id: ncurses_defs,v 1.44 2013/04/27 19:50:17 tom Exp $
- ##############################################################################
--# Copyright (c) 2000-2007,2008 Free Software Foundation, Inc. #
-+# Copyright (c) 2000-2012,2013 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"), #
-@@ -33,7 +33,6 @@
-
- BROKEN_LINKER
- BSD_TPUTS
--CC_HAS_PROTOS
- CPP_HAS_PARAM_INIT
- CURSES_ACS_ARRAY acs_map
- CURSES_WACS_ARRAY _nc_wacs
-@@ -120,7 +119,6 @@
- HAVE_SIZECHANGE
- HAVE_SLK_COLOR
- HAVE_SLK_INIT 1
--HAVE_STRDUP
- HAVE_STRSTR
- HAVE_SYMLINK
- HAVE_SYS_BSDTYPES_H
-@@ -174,7 +172,6 @@
- NEED_PTEM_H
- NO_LEAKS
- PURE_TERMINFO
--RETSIGTYPE
- STDC_HEADERS
- SVR4_ACTION
- SVR4_TERMIO
-Index: Ada95/make-tar.sh
-Prereq: 1.12
---- ncurses-5.9/Ada95/make-tar.sh 2011-03-26 19:07:38.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/make-tar.sh 2013-10-26 23:10:24.000000000 +0000
-@@ -1,7 +1,7 @@
- #!/bin/sh
--# $Id: make-tar.sh,v 1.12 2011/03/26 19:07:38 tom Exp $
-+# $Id: make-tar.sh,v 1.14 2013/10/26 23:10:24 tom Exp $
- ##############################################################################
--# Copyright (c) 2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 2010-2011,2013 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"), #
-@@ -66,11 +66,11 @@
- make_changelog() {
- test -f $1 && chmod u+w $1
- cat >$1 <<EOF
--`echo $PKG_NAME|tr '[A-Z]' '[a-z]'` ($NCURSES_PATCH) unstable; urgency=low
-+`echo $PKG_NAME|tr '[A-Z]' '[a-z]'` ($NCURSES_MAJOR.$NCURSES_MINOR-$NCURSES_PATCH) unstable; urgency=low
-
- * snapshot of ncurses subpackage for $PKG_NAME.
-
-- -- `head -1 $HOME/.signature` `date -R`
-+ -- `head -n 1 $HOME/.signature` `date -R`
- EOF
- }
-
-@@ -108,7 +108,10 @@
- do
- edit_specfile $spec
- done
--make_changelog $BUILD/$ROOTNAME/package/debian/changelog
-+for spec in $BUILD/$ROOTNAME/package/debian*
-+do
-+ make_changelog $spec/changelog
-+done
-
- cp -p ../man/MKada_config.in $BUILD/$ROOTNAME/doc/
- if test -z "$NO_HTML_DOCS"
-Index: Ada95/package/AdaCurses.spec
-Prereq: 1.12
---- ncurses-5.9/Ada95/package/AdaCurses.spec 2011-04-01 00:08:32.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/package/AdaCurses.spec 2014-06-07 17:49:23.000000000 +0000
-@@ -2,7 +2,7 @@
- %define AppProgram AdaCurses
- %define AppVersion MAJOR.MINOR
- %define AppRelease YYYYMMDD
--# $Id: AdaCurses.spec,v 1.12 2011/04/01 00:08:32 tom Exp $
-+# $Id: AdaCurses.spec,v 1.13 2014/06/07 17:49:23 tom Exp $
- Name: %{AppProgram}
- Version: %{AppVersion}
- Release: %{AppRelease}
-@@ -68,11 +68,11 @@
- %changelog
- # each patch should add its ChangeLog entries here
-
--* Thu Mar 31 2010 Thomas Dickey
-+* Thu Mar 31 2011 Thomas Dickey
- - use --with-shared option for consistency with --with-ada-sharelib
- - ensure that MY_DATADIR is set when installing examples
- - add ada_libdir symbol to handle special case where libdir is /usr/lib64
- - use --disable-rpath-link to link sample programs without rpath
-
--* Fri Mar 25 2010 Thomas Dickey
-+* Fri Mar 25 2011 Thomas Dickey
- - initial version
-Index: Ada95/package/debian/source/format
---- ncurses-5.9/Ada95/package/debian/source/format 2010-12-30 14:23:50.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/package/debian/source/format 2014-06-02 00:05:04.000000000 +0000
-@@ -1 +1 @@
--3.0 (native)
-+3.0 (quilt)
-Index: Ada95/samples/Makefile.in
-Prereq: 1.46
---- ncurses-5.9/Ada95/samples/Makefile.in 2011-03-28 23:45:08.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/samples/Makefile.in 2012-10-06 19:00:42.000000000 +0000
-@@ -1,5 +1,5 @@
- ##############################################################################
--# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2011,2012 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"), #
-@@ -28,7 +28,7 @@
- #
- # Author: Juergen Pfeifer, 1996
- #
--# $Id: Makefile.in,v 1.46 2011/03/28 23:45:08 tom Exp $
-+# $Id: Makefile.in,v 1.48 2012/10/06 19:00:42 tom Exp $
- #
- .SUFFIXES:
-
-@@ -36,12 +36,13 @@
- VPATH = @srcdir@
- THIS = Makefile
-
--x = @PROG_EXT@
-+x = @EXEEXT@
-
- srcdir = @srcdir@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
- bindir = @bindir@
-+datarootdir = @datarootdir@
- datadir = @datadir@
- libdir = @libdir@
- includedir = @includedir@
-Index: Ada95/samples/ncurses2-demo_forms.adb
---- ncurses-5.9/Ada95/samples/ncurses2-demo_forms.adb 2011-03-23 00:44:12.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/samples/ncurses2-demo_forms.adb 2014-09-13 19:10:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 2000-2006,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 2000-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
- -- Version Control
---- $Revision: 1.6 $
---- $Date: 2011/03/23 00:44:12 $
-+-- $Revision: 1.7 $
-+-- $Date: 2014/09/13 19:10:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with ncurses2.util; use ncurses2.util;
-@@ -317,8 +317,9 @@
- function my_form_driver (f : Form; c : Key_Code) return Boolean is
- flag : constant Driver_Result := Driver (f, F_Validate_Field);
- begin
-- if c = Form_Request_Code'Last + 1
-- and flag = Form_Ok then
-+ if c = Form_Request_Code'Last + 1 and
-+ flag = Form_Ok
-+ then
- return True;
- else
- Beep;
-Index: Ada95/samples/ncurses2-demo_pad.adb
---- ncurses-5.9/Ada95/samples/ncurses2-demo_pad.adb 2011-03-23 00:44:12.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/samples/ncurses2-demo_pad.adb 2014-09-13 19:10:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 2000-2008,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 2000-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
- -- Version Control
---- $Revision: 1.8 $
---- $Date: 2011/03/23 00:44:12 $
-+-- $Revision: 1.9 $
-+-- $Date: 2014/09/13 19:10:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with ncurses2.util; use ncurses2.util;
-@@ -437,7 +437,8 @@
- -- pan rightwards
- -- if (basex + portx - (pymax > porty) < pxmax)
- if basex + portx -
-- Column_Position (greater (pymax, porty)) < pxmax then
-+ Column_Position (greater (pymax, porty)) < pxmax
-+ then
- -- if basex + portx < pxmax or
- -- (pymax > porty and basex + portx - 1 < pxmax) then
- basex := basex + 1;
-@@ -457,7 +458,8 @@
- -- pan downwards
- -- same as if (basey + porty - (pxmax > portx) < pymax)
- if basey + porty -
-- Line_Position (greater (pxmax, portx)) < pymax then
-+ Line_Position (greater (pxmax, portx)) < pymax
-+ then
- -- if (basey + porty < pymax) or
- -- (pxmax > portx and basey + porty - 1 < pymax) then
- basey := basey + 1;
-Index: Ada95/samples/ncurses2-getch_test.adb
---- ncurses-5.9/Ada95/samples/ncurses2-getch_test.adb 2009-12-26 17:38:58.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/samples/ncurses2-getch_test.adb 2014-09-13 19:10:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 2000-2008,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 2000-2009,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
- -- Version Control
---- $Revision: 1.8 $
---- $Date: 2009/12/26 17:38:58 $
-+-- $Revision: 1.9 $
-+-- $Date: 2014/09/13 19:10:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- -- Character input test
-@@ -210,8 +210,10 @@
- end;
- elsif c = Character'Pos ('s') then
- ShellOut (True);
-- elsif c = Character'Pos ('x') or c = Character'Pos ('q') or
-- (c = Key_None and blockflag = Blocking) then
-+ elsif c = Character'Pos ('x') or
-+ c = Character'Pos ('q') or
-+ (c = Key_None and blockflag = Blocking)
-+ then
- exit;
- elsif c = Character'Pos ('?') then
- Add (Str => "Type any key to see its keypad value. Also:");
-Index: Ada95/samples/ncurses2-overlap_test.adb
---- ncurses-5.9/Ada95/samples/ncurses2-overlap_test.adb 2011-03-19 12:07:18.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/samples/ncurses2-overlap_test.adb 2014-09-13 19:10:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 2000-2004,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 2000-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
- -- Version Control
---- $Revision: 1.5 $
---- $Date: 2011/03/19 12:07:18 $
-+-- $Revision: 1.6 $
-+-- $Date: 2014/09/13 19:10:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with ncurses2.util; use ncurses2.util;
-@@ -72,8 +72,9 @@
- Get_Size (win, y1, x1);
- for y in 0 .. y1 - 1 loop
- for x in 0 .. x1 - 1 loop
-- if ((x > (x1 - 1) / 3) and (x <= (2 * (x1 - 1)) / 3))
-- or (((y > (y1 - 1) / 3) and (y <= (2 * (y1 - 1)) / 3))) then
-+ if ((x > (x1 - 1) / 3) and (x <= (2 * (x1 - 1)) / 3)) or
-+ (((y > (y1 - 1) / 3) and (y <= (2 * (y1 - 1)) / 3)))
-+ then
- Move_Cursor (win, y, x);
- Add (win, Ch => ch);
- end if;
-Index: Ada95/samples/ncurses2-trace_set.adb
---- ncurses-5.9/Ada95/samples/ncurses2-trace_set.adb 2011-03-23 00:40:33.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/samples/ncurses2-trace_set.adb 2014-09-13 19:10:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 2000-2008,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 2000-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
- -- Version Control
---- $Revision: 1.5 $
---- $Date: 2011/03/23 00:40:33 $
-+-- $Revision: 1.6 $
-+-- $Date: 2014/09/13 19:10:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with ncurses2.util; use ncurses2.util;
-@@ -141,7 +141,8 @@
- (super.Internal_Calls or not sub.Internal_Calls) and
- (super.Character_Calls or not sub.Character_Calls) and
- (super.Termcap_TermInfo or not sub.Termcap_TermInfo) and
-- True then
-+ True
-+ then
- return True;
- else
- return False;
-@@ -250,93 +251,107 @@
- else
-
- if subset (tlevel,
-- Trace_Attribute_Set'(Times => True, others => False)) then
-+ Trace_Attribute_Set'(Times => True, others => False))
-+ then
- Append (buf, "Times");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
-- Trace_Attribute_Set'(Tputs => True, others => False)) then
-+ Trace_Attribute_Set'(Tputs => True, others => False))
-+ then
- Append (buf, "Tputs");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
-- Trace_Attribute_Set'(Update => True, others => False)) then
-+ Trace_Attribute_Set'(Update => True, others => False))
-+ then
- Append (buf, "Update");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
- Trace_Attribute_Set'(Cursor_Move => True,
-- others => False)) then
-+ others => False))
-+ then
- Append (buf, "Cursor_Move");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
- Trace_Attribute_Set'(Character_Output => True,
-- others => False)) then
-+ others => False))
-+ then
- Append (buf, "Character_Output");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
-- Trace_Ordinary) then
-+ Trace_Ordinary)
-+ then
- Append (buf, "Ordinary");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
-- Trace_Attribute_Set'(Calls => True, others => False)) then
-+ Trace_Attribute_Set'(Calls => True, others => False))
-+ then
- Append (buf, "Calls");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
- Trace_Attribute_Set'(Virtual_Puts => True,
-- others => False)) then
-+ others => False))
-+ then
- Append (buf, "Virtual_Puts");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
- Trace_Attribute_Set'(Input_Events => True,
-- others => False)) then
-+ others => False))
-+ then
- Append (buf, "Input_Events");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
- Trace_Attribute_Set'(TTY_State => True,
-- others => False)) then
-+ others => False))
-+ then
- Append (buf, "TTY_State");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
- Trace_Attribute_Set'(Internal_Calls => True,
-- others => False)) then
-+ others => False))
-+ then
- Append (buf, "Internal_Calls");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
- Trace_Attribute_Set'(Character_Calls => True,
-- others => False)) then
-+ others => False))
-+ then
- Append (buf, "Character_Calls");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
- Trace_Attribute_Set'(Termcap_TermInfo => True,
-- others => False)) then
-+ others => False))
-+ then
- Append (buf, "Termcap_TermInfo");
- Append (buf, ", ");
- end if;
-
- if subset (tlevel,
-- Trace_Maximum) then
-+ Trace_Maximum)
-+ then
- Append (buf, "Maximium");
- Append (buf, ", ");
- end if;
-Index: Ada95/samples/ncurses2-util.adb
---- ncurses-5.9/Ada95/samples/ncurses2-util.adb 2008-07-26 18:51:20.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/samples/ncurses2-util.adb 2014-05-24 21:32:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 2000-2006,2008 Free Software Foundation, Inc. --
-+-- Copyright (c) 2000-2008,2014 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 --
-@@ -35,16 +35,12 @@
- ------------------------------------------------------------------------------
- -- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
- -- Version Control
---- $Revision: 1.7 $
---- $Date: 2008/07/26 18:51:20 $
-+-- $Revision: 1.9 $
-+-- $Date: 2014/05/24 21:32:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Ada.Text_IO; use Ada.Text_IO;
-
--pragma Warnings (Off);
--with Terminal_Interface.Curses.Aux;
--pragma Warnings (On);
--
- with Terminal_Interface.Curses.Trace; use Terminal_Interface.Curses.Trace;
-
- with Interfaces.C;
-@@ -115,7 +111,6 @@
- procedure Cannot (s : String) is
- use Interfaces.C;
- use Interfaces.C.Strings;
-- use Terminal_Interface.Curses.Aux;
- function getenv (x : char_array) return chars_ptr;
- pragma Import (C, getenv, "getenv");
- tmp1 : char_array (0 .. 10);
-Index: Ada95/samples/sample-explanation.adb
---- ncurses-5.9/Ada95/samples/sample-explanation.adb 2011-03-26 22:33:29.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/samples/sample-explanation.adb 2014-09-13 19:10:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control
---- $Revision: 1.26 $
---- $Date: 2011/03/26 22:33:29 $
-+-- $Revision: 1.27 $
-+-- $Date: 2014/09/13 19:10:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- -- Poor mans help system. This scans a sequential file for key lines and
-@@ -321,8 +321,10 @@
- Outer :
- loop
- exit Outer when not Next_Line;
-- if Last = (1 + Key'Length) and then Key = Buffer (2 .. Last)
-- and then Buffer (1) = '#' then
-+ if Last = (1 + Key'Length)
-+ and then Key = Buffer (2 .. Last)
-+ and then Buffer (1) = '#'
-+ then
- loop
- exit when not Next_Line;
- exit when Buffer (1) = '#';
-Index: Ada95/samples/sample-header_handler.adb
---- ncurses-5.9/Ada95/samples/sample-header_handler.adb 2011-03-22 23:54:38.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/samples/sample-header_handler.adb 2014-09-13 19:10:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control
---- $Revision: 1.19 $
---- $Date: 2011/03/22 23:54:38 $
-+-- $Revision: 1.20 $
-+-- $Date: 2014/09/13 19:10:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Ada.Calendar; use Ada.Calendar;
-@@ -121,8 +121,11 @@
- D : constant Day_Number := Day (Now);
- begin
- if Header_Window /= Null_Window then
-- if Minute /= Display_Min or else Hour /= Display_Hour
-- or else Display_Day /= D or else Display_Month /= Mon then
-+ if Minute /= Display_Min
-+ or else Hour /= Display_Hour
-+ or else Display_Day /= D
-+ or else Display_Month /= Mon
-+ then
- Move_Cursor (Header_Window, 0, 0);
- N_Out (D); Add (Header_Window, '.');
- Add (Header_Window, Month_Names (Mon));
-Index: Ada95/src/Makefile.in
-Prereq: 1.60
---- ncurses-5.9/Ada95/src/Makefile.in 2011-03-31 09:46:16.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/Makefile.in 2014-08-02 20:31:47.000000000 +0000
-@@ -1,5 +1,5 @@
- ##############################################################################
--# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2011,2014 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"), #
-@@ -28,7 +28,7 @@
- #
- # Author: Juergen Pfeifer, 1996
- #
--# $Id: Makefile.in,v 1.60 2011/03/31 09:46:16 tom Exp $
-+# $Id: Makefile.in,v 1.70 2014/08/02 20:31:47 tom Exp $
- #
- .SUFFIXES:
-
-@@ -215,25 +215,42 @@
-
- $(ABASE)-trace.adb : $(srcdir)/$(ABASE)-trace.adb_p
- rm -f $@
-- $(ADAPREP) -DADA_TRACE=@ADA_TRACE@ -DPRAGMA_UNREF=@PRAGMA_UNREF@ $(srcdir)/$(ABASE)-trace.adb_p $@
-+ $(ADAPREP) -DADA_TRACE=@ADA_TRACE@ @GNATPREP_OPTS@ $(srcdir)/$(ABASE)-trace.adb_p $@
-
- ###############################################################################
--C_OBJS = c_varargs_to_ada.o ncurses_compat.o
-+# Use these definitions when building a shared library.
-+SHARED_C_OBJS = c_varargs_to_ada.o c_threaded_variables.o ncurses_compat.o
-+SHARED_OBJS = $(SHARED_C_OBJS) @USE_OLD_MAKERULES@$(LIBOBJS) @cf_generic_objects@
-
- c_varargs_to_ada.o : $(srcdir)/c_varargs_to_ada.c
- $(CC) $(CFLAGS_DEFAULT) -c -o $@ $(srcdir)/c_varargs_to_ada.c
-
-+c_threaded_variables.o : $(srcdir)/c_threaded_variables.c
-+ $(CC) $(CFLAGS_DEFAULT) -c -o $@ $(srcdir)/c_threaded_variables.c
-+
- ncurses_compat.o : $(srcdir)/ncurses_compat.c
- $(CC) $(CFLAGS_DEFAULT) -c -o $@ $(srcdir)/ncurses_compat.c
-
- ###############################################################################
-+# Use these definitions when building a static library.
-+STATIC_C_OBJS = static_c_varargs_to_ada.o static_c_threaded_variables.o static_ncurses_compat.o
-+STATIC_OBJS = $(STATIC_C_OBJS) @USE_OLD_MAKERULES@$(LIBOBJS) @cf_generic_objects@
-+
-+static_c_varargs_to_ada.o : $(srcdir)/c_varargs_to_ada.c
-+ $(CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/c_varargs_to_ada.c
-+
-+static_c_threaded_variables.o : $(srcdir)/c_threaded_variables.c
-+ $(CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/c_threaded_variables.c
-
--MIXED_OBJS = $(C_OBJS) @USE_OLD_MAKERULES@$(LIBOBJS) @cf_generic_objects@
-+static_ncurses_compat.o : $(srcdir)/ncurses_compat.c
-+ $(CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/ncurses_compat.c
-+
-+###############################################################################
-
- @USE_OLD_MAKERULES@$(BUILD_DIR_LIB)/$(STATIC_LIBNAME) :: \
- @USE_OLD_MAKERULES@ $(BUILD_DIR_LIB) \
--@USE_OLD_MAKERULES@ $(MIXED_OBJS)
--@USE_OLD_MAKERULES@ $(AR) $(ARFLAGS) $@ $(MIXED_OBJS)
-+@USE_OLD_MAKERULES@ $(STATIC_OBJS)
-+@USE_OLD_MAKERULES@ $(AR) $(ARFLAGS) $@ $(STATIC_OBJS)
-
- $(BUILD_DIR)/static-ali : ; mkdir -p $@
- $(BUILD_DIR)/static-obj : ; mkdir -p $@
-@@ -245,10 +262,10 @@
-
- @USE_GNAT_PROJECTS@$(BUILD_DIR_LIB)/$(STATIC_LIBNAME) :: \
- @USE_GNAT_PROJECTS@ $(ABASE)-trace.adb \
--@USE_GNAT_PROJECTS@ $(C_OBJS) \
-+@USE_GNAT_PROJECTS@ $(STATIC_C_OBJS) \
- @USE_GNAT_PROJECTS@ $(STATIC_DIRS)
- @USE_GNAT_PROJECTS@ $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=static
--@USE_GNAT_PROJECTS@ $(AR) $(ARFLAGS) $@ $(C_OBJS)
-+@USE_GNAT_PROJECTS@ $(AR) $(ARFLAGS) $@ $(STATIC_C_OBJS)
- @USE_GNAT_PROJECTS@
- @USE_GNAT_LIBRARIES@install \
- @USE_GNAT_LIBRARIES@install.libs :: \
-@@ -274,8 +291,11 @@
- $(BUILD_DIR)/dynamic-obj
-
- @MAKE_ADA_SHAREDLIB@all :: $(BUILD_DIR_LIB)/$(SHARED_LIBNAME)
--@MAKE_ADA_SHAREDLIB@$(BUILD_DIR_LIB)/$(SHARED_LIBNAME) :: $(ABASE)-trace.adb $(SHARED_DIRS)
--@MAKE_ADA_SHAREDLIB@ cp $(MIXED_OBJS) $(BUILD_DIR)/dynamic-obj/
-+@MAKE_ADA_SHAREDLIB@$(BUILD_DIR_LIB)/$(SHARED_LIBNAME) :: \
-+@MAKE_ADA_SHAREDLIB@ $(ABASE)-trace.adb \
-+@MAKE_ADA_SHAREDLIB@ $(SHARED_DIRS) \
-+@MAKE_ADA_SHAREDLIB@ $(SHARED_OBJS)
-+@MAKE_ADA_SHAREDLIB@ cp $(SHARED_OBJS) $(BUILD_DIR)/dynamic-obj/
- @MAKE_ADA_SHAREDLIB@ $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=dynamic
-
- install \
-Index: Ada95/src/c_threaded_variables.c
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/Ada95/src/c_threaded_variables.c 2014-05-24 21:35:22.000000000 +0000
-@@ -0,0 +1,56 @@
-+/****************************************************************************
-+ * Copyright (c) 2011,2014 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: Nicolas Boulenguez, 2011 *
-+ ****************************************************************************/
-+
-+#include "c_threaded_variables.h"
-+
-+#define WRAP(type, name) \
-+ type \
-+ name ## _as_function () \
-+ { \
-+ return name; \
-+ }
-+/* *INDENT-OFF* */
-+WRAP(WINDOW *, stdscr)
-+WRAP(WINDOW *, curscr)
-+
-+WRAP(int, LINES)
-+WRAP(int, COLS)
-+WRAP(int, TABSIZE)
-+WRAP(int, COLORS)
-+WRAP(int, COLOR_PAIRS)
-+
-+chtype
-+acs_map_as_function(char inx)
-+{
-+ return acs_map[(unsigned char) inx];
-+}
-+/* *INDENT-ON* */
-Index: Ada95/src/c_threaded_variables.h
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/Ada95/src/c_threaded_variables.h 2014-05-24 21:31:57.000000000 +0000
-@@ -0,0 +1,46 @@
-+/****************************************************************************
-+ * Copyright (c) 2011,2014 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. *
-+ ****************************************************************************/
-+
-+#ifndef __C_THREADED_VARIABLES_H
-+#define __C_THREADED_VARIABLES_H
-+
-+#include <curses.h>
-+
-+extern WINDOW *stdscr_as_function(void);
-+extern WINDOW *curscr_as_function(void);
-+
-+extern int LINES_as_function(void);
-+extern int LINES_as_function(void);
-+extern int COLS_as_function(void);
-+extern int TABSIZE_as_function(void);
-+extern int COLORS_as_function(void);
-+extern int COLOR_PAIRS_as_function(void);
-+
-+extern chtype acs_map_as_function(char /* index */ );
-+
-+#endif /* __C_THREADED_VARIABLES_H */
-Index: Ada95/src/c_varargs_to_ada.c
-Prereq: 1.4
---- ncurses-5.9/Ada95/src/c_varargs_to_ada.c 2011-03-19 19:07:39.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/c_varargs_to_ada.c 2014-05-24 21:32:18.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2011,2014 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 *
-@@ -32,12 +32,12 @@
-
- /*
- Version Control
-- $Id: c_varargs_to_ada.c,v 1.4 2011/03/19 19:07:39 tom Exp $
-+ $Id: c_varargs_to_ada.c,v 1.6 2014/05/24 21:32:18 tom Exp $
- --------------------------------------------------------------------------*/
- /*
- */
-
--#include <c_varargs_to_ada.h>
-+#include "c_varargs_to_ada.h"
-
- int
- set_field_type_alnum(FIELD *field,
-Index: Ada95/src/library.gpr
-Prereq: 1.7
---- ncurses-5.9/Ada95/src/library.gpr 2011-03-18 23:10:28.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/library.gpr 2014-06-01 01:13:09.000000000 +0000
-@@ -1,5 +1,5 @@
- ------------------------------------------------------------------------------
---- Copyright (c) 2010,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 2010-2011,2014 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 --
-@@ -25,7 +25,7 @@
- -- sale, use or other dealings in this Software without prior written --
- -- authorization. --
- ------------------------------------------------------------------------------
---- $Id: library.gpr,v 1.7 2011/03/18 23:10:28 Nicolas.Boulenguez Exp $
-+-- $Id: library.gpr,v 1.9 2014/06/01 01:13:09 tom Exp $
- -- http://gcc.gnu.org/onlinedocs/gnat_ugn_unw/Library-Projects.html
- -- http://www.adaworld.com/debian/debian-ada-policy.html
- project Library is
-Index: Ada95/src/terminal_interface-curses-forms-field_types-alpha.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types-alpha.adb 2011-03-19 00:45:37.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types-alpha.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.11 $
---- $Date: 2011/03/19 00:45:37 $
-+-- $Revision: 1.13 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
-@@ -47,15 +47,11 @@
- Typ : Alpha_Field)
- is
- function Set_Fld_Type (F : Field := Fld;
-- Arg1 : C_Int) return C_Int;
-+ Arg1 : C_Int) return Eti_Error;
- pragma Import (C, Set_Fld_Type, "set_field_type_alpha");
-
-- Res : Eti_Error;
- begin
-- Res := Set_Fld_Type (Arg1 => C_Int (Typ.Minimum_Field_Width));
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Fld_Type (Arg1 => C_Int (Typ.Minimum_Field_Width)));
- Wrap_Builtin (Fld, Typ);
- end Set_Field_Type;
-
-Index: Ada95/src/terminal_interface-curses-forms-field_types-alphanumeric.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types-alphanumeric.adb 2011-03-19 00:45:37.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types-alphanumeric.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.11 $
---- $Date: 2011/03/19 00:45:37 $
-+-- $Revision: 1.13 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
-@@ -47,15 +47,11 @@
- Typ : AlphaNumeric_Field)
- is
- function Set_Fld_Type (F : Field := Fld;
-- Arg1 : C_Int) return C_Int;
-+ Arg1 : C_Int) return Eti_Error;
- pragma Import (C, Set_Fld_Type, "set_field_type_alnum");
-
-- Res : Eti_Error;
- begin
-- Res := Set_Fld_Type (Arg1 => C_Int (Typ.Minimum_Field_Width));
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Fld_Type (Arg1 => C_Int (Typ.Minimum_Field_Width)));
- Wrap_Builtin (Fld, Typ);
- end Set_Field_Type;
-
-Index: Ada95/src/terminal_interface-curses-forms-field_types-enumeration.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types-enumeration.adb 2011-03-22 23:03:27.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types-enumeration.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,7 +35,7 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.10 $
-+-- $Revision: 1.12 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Ada.Unchecked_Deallocation;
-@@ -94,21 +94,18 @@
- function Set_Fld_Type (F : Field := Fld;
- Arg1 : chars_ptr_array;
- Arg2 : C_Int;
-- Arg3 : C_Int) return C_Int;
-+ Arg3 : C_Int) return Eti_Error;
- pragma Import (C, Set_Fld_Type, "set_field_type_enum");
-
-- Res : Eti_Error;
- begin
- if Typ.Arr = null then
- raise Form_Exception;
- end if;
-- Res := Set_Fld_Type (Arg1 => Typ.Arr.all,
-- Arg2 => C_Int (Boolean'Pos (Typ.Case_Sensitive)),
-- Arg3 => C_Int (Boolean'Pos
-- (Typ.Match_Must_Be_Unique)));
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception
-+ (Set_Fld_Type
-+ (Arg1 => Typ.Arr.all,
-+ Arg2 => C_Int (Boolean'Pos (Typ.Case_Sensitive)),
-+ Arg3 => C_Int (Boolean'Pos (Typ.Match_Must_Be_Unique))));
- Wrap_Builtin (Fld, Typ, C_Choice_Router);
- end Set_Field_Type;
-
-Index: Ada95/src/terminal_interface-curses-forms-field_types-intfield.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types-intfield.adb 2011-03-19 00:45:37.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types-intfield.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.11 $
---- $Date: 2011/03/19 00:45:37 $
-+-- $Revision: 1.13 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
-@@ -49,17 +49,13 @@
- function Set_Fld_Type (F : Field := Fld;
- Arg1 : C_Int;
- Arg2 : C_Long_Int;
-- Arg3 : C_Long_Int) return C_Int;
-+ Arg3 : C_Long_Int) return Eti_Error;
- pragma Import (C, Set_Fld_Type, "set_field_type_integer");
-
-- Res : Eti_Error;
- begin
-- Res := Set_Fld_Type (Arg1 => C_Int (Typ.Precision),
-- Arg2 => C_Long_Int (Typ.Lower_Limit),
-- Arg3 => C_Long_Int (Typ.Upper_Limit));
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Fld_Type (Arg1 => C_Int (Typ.Precision),
-+ Arg2 => C_Long_Int (Typ.Lower_Limit),
-+ Arg3 => C_Long_Int (Typ.Upper_Limit)));
- Wrap_Builtin (Fld, Typ);
- end Set_Field_Type;
-
-Index: Ada95/src/terminal_interface-curses-forms-field_types-ipv4_address.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types-ipv4_address.adb 2011-03-19 00:45:37.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types-ipv4_address.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.11 $
---- $Date: 2011/03/19 00:45:37 $
-+-- $Revision: 1.13 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
-@@ -47,15 +47,11 @@
- Typ : Internet_V4_Address_Field)
- is
- function Set_Fld_Type (F : Field := Fld)
-- return C_Int;
-+ return Eti_Error;
- pragma Import (C, Set_Fld_Type, "set_field_type_ipv4");
-
-- Res : Eti_Error;
- begin
-- Res := Set_Fld_Type;
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Fld_Type);
- Wrap_Builtin (Fld, Typ);
- end Set_Field_Type;
-
-Index: Ada95/src/terminal_interface-curses-forms-field_types-numeric.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types-numeric.adb 2011-03-19 00:45:37.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types-numeric.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.12 $
---- $Date: 2011/03/19 00:45:37 $
-+-- $Revision: 1.14 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Interfaces.C;
-@@ -52,17 +52,13 @@
- function Set_Fld_Type (F : Field := Fld;
- Arg1 : C_Int;
- Arg2 : Double;
-- Arg3 : Double) return C_Int;
-+ Arg3 : Double) return Eti_Error;
- pragma Import (C, Set_Fld_Type, "set_field_type_numeric");
-
-- Res : Eti_Error;
- begin
-- Res := Set_Fld_Type (Arg1 => C_Int (Typ.Precision),
-- Arg2 => Double (Typ.Lower_Limit),
-- Arg3 => Double (Typ.Upper_Limit));
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Fld_Type (Arg1 => C_Int (Typ.Precision),
-+ Arg2 => Double (Typ.Lower_Limit),
-+ Arg3 => Double (Typ.Upper_Limit)));
- Wrap_Builtin (Fld, Typ);
- end Set_Field_Type;
-
-Index: Ada95/src/terminal_interface-curses-forms-field_types-regexp.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types-regexp.adb 2011-03-19 00:45:37.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types-regexp.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,7 +35,7 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.10 $
-+-- $Revision: 1.12 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Interfaces.C; use Interfaces.C;
-@@ -46,21 +46,12 @@
- procedure Set_Field_Type (Fld : Field;
- Typ : Regular_Expression_Field)
- is
-- type Char_Ptr is access all Interfaces.C.char;
--
- function Set_Ftyp (F : Field := Fld;
-- Arg1 : Char_Ptr) return C_Int;
-+ Arg1 : char_array) return Eti_Error;
- pragma Import (C, Set_Ftyp, "set_field_type_regexp");
-
-- Txt : char_array (0 .. Typ.Regular_Expression.all'Length);
-- Len : size_t;
-- Res : Eti_Error;
- begin
-- To_C (Typ.Regular_Expression.all, Txt, Len);
-- Res := Set_Ftyp (Arg1 => Txt (Txt'First)'Access);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Ftyp (Arg1 => To_C (Typ.Regular_Expression.all)));
- Wrap_Builtin (Fld, Typ);
- end Set_Field_Type;
-
-Index: Ada95/src/terminal_interface-curses-forms-field_types-user-choice.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types-user-choice.adb 2011-03-22 10:53:37.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types-user-choice.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.17 $
---- $Date: 2011/03/22 10:53:37 $
-+-- $Revision: 1.20 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with System.Address_To_Access_Conversions;
-@@ -53,7 +53,7 @@
- Result : Boolean;
- Udf : constant User_Defined_Field_Type_With_Choice_Access :=
- User_Defined_Field_Type_With_Choice_Access
-- (Argument_Access (Argument_Conversions.To_Pointer (Usr)).Typ);
-+ (Argument_Access (Argument_Conversions.To_Pointer (Usr)).all.Typ);
- begin
- Result := Next (Fld, Udf.all);
- return Curses_Bool (Boolean'Pos (Result));
-@@ -65,7 +65,7 @@
- Result : Boolean;
- Udf : constant User_Defined_Field_Type_With_Choice_Access :=
- User_Defined_Field_Type_With_Choice_Access
-- (Argument_Access (Argument_Conversions.To_Pointer (Usr)).Typ);
-+ (Argument_Access (Argument_Conversions.To_Pointer (Usr)).all.Typ);
- begin
- Result := Previous (Fld, Udf.all);
- return Curses_Bool (Boolean'Pos (Result));
-@@ -88,16 +88,12 @@
- Make_Arg'Access,
- Copy_Arg'Access,
- Free_Arg'Access);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Res);
-
- Res := Set_Fieldtype_Choice (T,
- Generic_Next'Access,
- Generic_Prev'Access);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Res);
- end if;
- M_Generic_Choice := T;
- end if;
-Index: Ada95/src/terminal_interface-curses-forms-field_types-user.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types-user.adb 2011-03-23 00:44:58.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types-user.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.21 $
---- $Date: 2011/03/23 00:44:58 $
-+-- $Revision: 1.23 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with System.Address_To_Access_Conversions;
-@@ -53,11 +53,9 @@
- function Set_Fld_Type (F : Field := Fld;
- Cft : C_Field_Type := C_Generic_Type;
- Arg1 : Argument_Access)
-- return C_Int;
-+ return Eti_Error;
- pragma Import (C, Set_Fld_Type, "set_field_type_user");
-
-- Res : Eti_Error;
--
- function Allocate_Arg (T : User_Defined_Field_Type'Class)
- return Argument_Access
- is
-@@ -70,10 +68,7 @@
- end Allocate_Arg;
-
- begin
-- Res := Set_Fld_Type (Arg1 => Allocate_Arg (Typ));
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Fld_Type (Arg1 => Allocate_Arg (Typ)));
- end Set_Field_Type;
-
- package Argument_Conversions is
-@@ -120,9 +115,7 @@
- Make_Arg'Access,
- Copy_Arg'Access,
- Free_Arg'Access);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Res);
- end if;
- M_Generic_Type := T;
- end if;
-Index: Ada95/src/terminal_interface-curses-forms-field_types.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_types.adb 2011-03-22 23:22:27.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_types.adb 2014-09-13 19:00:47.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.25 $
---- $Date: 2011/03/22 23:22:27 $
-+-- $Revision: 1.28 $
-+-- $Date: 2014/09/13 19:00:47 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
-@@ -76,9 +76,10 @@
- return null;
- else
- if Low_Level = M_Builtin_Router or else
-- Low_Level = M_Generic_Type or else
-- Low_Level = M_Choice_Router or else
-- Low_Level = M_Generic_Choice then
-+ Low_Level = M_Generic_Type or else
-+ Low_Level = M_Choice_Router or else
-+ Low_Level = M_Generic_Choice
-+ then
- Arg := Argument_Access
- (Argument_Conversions.To_Pointer (Get_Arg (Fld)));
- if Arg = null then
-@@ -130,10 +131,9 @@
- Usr_Arg : constant System.Address := Get_Arg (Fld);
- Low_Level : constant C_Field_Type := Get_Fieldtype (Fld);
- Arg : Argument_Access;
-- Res : Eti_Error;
- function Set_Fld_Type (F : Field := Fld;
- Cf : C_Field_Type := Cft;
-- Arg1 : Argument_Access) return C_Int;
-+ Arg1 : Argument_Access) return Eti_Error;
- pragma Import (C, Set_Fld_Type, "set_field_type_user");
-
- begin
-@@ -152,10 +152,7 @@
- end if;
- end if;
-
-- Res := Set_Fld_Type (Arg1 => Arg);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Fld_Type (Arg1 => Arg));
- end if;
- end Wrap_Builtin;
-
-@@ -223,7 +220,6 @@
- --
- function C_Builtin_Router return C_Field_Type
- is
-- Res : Eti_Error;
- T : C_Field_Type;
- begin
- if M_Builtin_Router = Null_Field_Type then
-@@ -232,13 +228,10 @@
- if T = Null_Field_Type then
- raise Form_Exception;
- else
-- Res := Set_Fieldtype_Arg (T,
-- Make_Arg'Access,
-- Copy_Arg'Access,
-- Free_Arg'Access);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Fieldtype_Arg (T,
-+ Make_Arg'Access,
-+ Copy_Arg'Access,
-+ Free_Arg'Access));
- end if;
- M_Builtin_Router := T;
- end if;
-@@ -250,7 +243,6 @@
- --
- function C_Choice_Router return C_Field_Type
- is
-- Res : Eti_Error;
- T : C_Field_Type;
- begin
- if M_Choice_Router = Null_Field_Type then
-@@ -259,20 +251,14 @@
- if T = Null_Field_Type then
- raise Form_Exception;
- else
-- Res := Set_Fieldtype_Arg (T,
-- Make_Arg'Access,
-- Copy_Arg'Access,
-- Free_Arg'Access);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
--
-- Res := Set_Fieldtype_Choice (T,
-- Next_Router'Access,
-- Prev_Router'Access);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Fieldtype_Arg (T,
-+ Make_Arg'Access,
-+ Copy_Arg'Access,
-+ Free_Arg'Access));
-+
-+ Eti_Exception (Set_Fieldtype_Choice (T,
-+ Next_Router'Access,
-+ Prev_Router'Access));
- end if;
- M_Choice_Router := T;
- end if;
-Index: Ada95/src/terminal_interface-curses-forms-field_user_data.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-field_user_data.adb 2009-12-26 17:46:57.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-field_user_data.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2009,2014 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 --
-@@ -35,7 +35,7 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.13 $
-+-- $Revision: 1.15 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
-@@ -55,14 +55,11 @@
- Data : User_Access)
- is
- function Set_Field_Userptr (Fld : Field;
-- Usr : User_Access) return C_Int;
-+ Usr : User_Access) return Eti_Error;
- pragma Import (C, Set_Field_Userptr, "set_field_userptr");
-
-- Res : constant Eti_Error := Set_Field_Userptr (Fld, Data);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Field_Userptr (Fld, Data));
- end Set_User_Data;
- -- |
- -- |
-Index: Ada95/src/terminal_interface-curses-forms-form_user_data.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms-form_user_data.adb 2009-12-26 17:46:57.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms-form_user_data.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2009,2014 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 --
-@@ -35,7 +35,7 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.13 $
-+-- $Revision: 1.15 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- -- |
-@@ -56,14 +56,11 @@
- Data : User_Access)
- is
- function Set_Form_Userptr (Frm : Form;
-- Data : User_Access) return C_Int;
-+ Data : User_Access) return Eti_Error;
- pragma Import (C, Set_Form_Userptr, "set_form_userptr");
-
-- Res : constant Eti_Error := Set_Form_Userptr (Frm, Data);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Form_Userptr (Frm, Data));
- end Set_User_Data;
- -- |
- -- |
-Index: Ada95/src/terminal_interface-curses-forms.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-forms.adb 2011-03-22 23:37:32.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-forms.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,12 +35,11 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.28 $
---- $Date: 2011/03/22 23:37:32 $
-+-- $Revision: 1.32 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Ada.Unchecked_Deallocation;
--with Ada.Unchecked_Conversion;
-
- with Interfaces.C; use Interfaces.C;
- with Interfaces.C.Strings; use Interfaces.C.Strings;
-@@ -62,22 +61,6 @@
- -- |
- -- subtype chars_ptr is Interfaces.C.Strings.chars_ptr;
-
-- function FOS_2_CInt is new
-- Ada.Unchecked_Conversion (Field_Option_Set,
-- C_Int);
--
-- function CInt_2_FOS is new
-- Ada.Unchecked_Conversion (C_Int,
-- Field_Option_Set);
--
-- function FrmOS_2_CInt is new
-- Ada.Unchecked_Conversion (Form_Option_Set,
-- C_Int);
--
-- function CInt_2_FrmOS is new
-- Ada.Unchecked_Conversion (C_Int,
-- Form_Option_Set);
--
- procedure Request_Name (Key : Form_Request_Code;
- Name : out String)
- is
-@@ -130,15 +113,11 @@
- -- |
- procedure Delete (Fld : in out Field)
- is
-- function Free_Field (Fld : Field) return C_Int;
-+ function Free_Field (Fld : Field) return Eti_Error;
- pragma Import (C, Free_Field, "free_field");
-
-- Res : Eti_Error;
- begin
-- Res := Free_Field (Fld);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Free_Field (Fld));
- Fld := Null_Field;
- end Delete;
- -- |
-@@ -194,16 +173,12 @@
- Just : Field_Justification := None)
- is
- function Set_Field_Just (Fld : Field;
-- Just : C_Int) return C_Int;
-+ Just : C_Int) return Eti_Error;
- pragma Import (C, Set_Field_Just, "set_field_just");
-
-- Res : constant Eti_Error :=
-- Set_Field_Just (Fld,
-- C_Int (Field_Justification'Pos (Just)));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Field_Just (Fld,
-+ C_Int (Field_Justification'Pos (Just))));
- end Set_Justification;
- -- |
- -- |
-@@ -227,22 +202,14 @@
- Buffer : Buffer_Number := Buffer_Number'First;
- Str : String)
- is
-- type Char_Ptr is access all Interfaces.C.char;
- function Set_Fld_Buffer (Fld : Field;
- Bufnum : C_Int;
-- S : Char_Ptr)
-- return C_Int;
-+ S : char_array)
-+ return Eti_Error;
- pragma Import (C, Set_Fld_Buffer, "set_field_buffer");
-
-- Txt : char_array (0 .. Str'Length);
-- Len : size_t;
-- Res : Eti_Error;
-- begin
-- To_C (Str, Txt, Len);
-- Res := Set_Fld_Buffer (Fld, C_Int (Buffer), Txt (Txt'First)'Access);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ begin
-+ Eti_Exception (Set_Fld_Buffer (Fld, C_Int (Buffer), To_C (Str)));
- end Set_Buffer;
- -- |
- -- |
-@@ -276,12 +243,11 @@
- Status : Boolean := True)
- is
- function Set_Fld_Status (Fld : Field;
-- St : C_Int) return C_Int;
-+ St : C_Int) return Eti_Error;
- pragma Import (C, Set_Fld_Status, "set_field_status");
-
-- Res : constant Eti_Error := Set_Fld_Status (Fld, Boolean'Pos (Status));
- begin
-- if Res /= E_Ok then
-+ if Set_Fld_Status (Fld, Boolean'Pos (Status)) /= E_Ok then
- raise Form_Exception;
- end if;
- end Set_Status;
-@@ -308,14 +274,11 @@
- Max : Natural := 0)
- is
- function Set_Field_Max (Fld : Field;
-- M : C_Int) return C_Int;
-+ M : C_Int) return Eti_Error;
- pragma Import (C, Set_Field_Max, "set_max_field");
-
-- Res : constant Eti_Error := Set_Field_Max (Fld, C_Int (Max));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Field_Max (Fld, C_Int (Max)));
- end Set_Maximum_Size;
- -- |
- -- |=====================================================================
-@@ -328,16 +291,11 @@
- Options : Field_Option_Set)
- is
- function Set_Field_Opts (Fld : Field;
-- Opt : C_Int) return C_Int;
-+ Opt : Field_Option_Set) return Eti_Error;
- pragma Import (C, Set_Field_Opts, "set_field_opts");
-
-- Opt : constant C_Int := FOS_2_CInt (Options);
-- Res : Eti_Error;
- begin
-- Res := Set_Field_Opts (Fld, Opt);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Field_Opts (Fld, Options));
- end Set_Options;
- -- |
- -- |
-@@ -347,22 +305,17 @@
- On : Boolean := True)
- is
- function Field_Opts_On (Fld : Field;
-- Opt : C_Int) return C_Int;
-+ Opt : Field_Option_Set) return Eti_Error;
- pragma Import (C, Field_Opts_On, "field_opts_on");
- function Field_Opts_Off (Fld : Field;
-- Opt : C_Int) return C_Int;
-+ Opt : Field_Option_Set) return Eti_Error;
- pragma Import (C, Field_Opts_Off, "field_opts_off");
-
-- Err : Eti_Error;
-- Opt : constant C_Int := FOS_2_CInt (Options);
- begin
- if On then
-- Err := Field_Opts_On (Fld, Opt);
-+ Eti_Exception (Field_Opts_On (Fld, Options));
- else
-- Err := Field_Opts_Off (Fld, Opt);
-- end if;
-- if Err /= E_Ok then
-- Eti_Exception (Err);
-+ Eti_Exception (Field_Opts_Off (Fld, Options));
- end if;
- end Switch_Options;
- -- |
-@@ -371,12 +324,11 @@
- procedure Get_Options (Fld : Field;
- Options : out Field_Option_Set)
- is
-- function Field_Opts (Fld : Field) return C_Int;
-+ function Field_Opts (Fld : Field) return Field_Option_Set;
- pragma Import (C, Field_Opts, "field_opts");
-
-- Res : constant C_Int := Field_Opts (Fld);
- begin
-- Options := CInt_2_FOS (Res);
-+ Options := Field_Opts (Fld);
- end Get_Options;
- -- |
- -- |
-@@ -402,18 +354,13 @@
- Color : Color_Pair := Color_Pair'First)
- is
- function Set_Field_Fore (Fld : Field;
-- Attr : C_Chtype) return C_Int;
-+ Attr : Attributed_Character) return Eti_Error;
- pragma Import (C, Set_Field_Fore, "set_field_fore");
-
-- Ch : constant Attributed_Character := (Ch => Character'First,
-- Color => Color,
-- Attr => Fore);
-- Res : constant Eti_Error :=
-- Set_Field_Fore (Fld, AttrChar_To_Chtype (Ch));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Field_Fore (Fld, (Ch => Character'First,
-+ Color => Color,
-+ Attr => Fore)));
- end Set_Foreground;
- -- |
- -- |
-@@ -421,21 +368,21 @@
- procedure Foreground (Fld : Field;
- Fore : out Character_Attribute_Set)
- is
-- function Field_Fore (Fld : Field) return C_Chtype;
-+ function Field_Fore (Fld : Field) return Attributed_Character;
- pragma Import (C, Field_Fore, "field_fore");
- begin
-- Fore := Chtype_To_AttrChar (Field_Fore (Fld)).Attr;
-+ Fore := Field_Fore (Fld).Attr;
- end Foreground;
-
- procedure Foreground (Fld : Field;
- Fore : out Character_Attribute_Set;
- Color : out Color_Pair)
- is
-- function Field_Fore (Fld : Field) return C_Chtype;
-+ function Field_Fore (Fld : Field) return Attributed_Character;
- pragma Import (C, Field_Fore, "field_fore");
- begin
-- Fore := Chtype_To_AttrChar (Field_Fore (Fld)).Attr;
-- Color := Chtype_To_AttrChar (Field_Fore (Fld)).Color;
-+ Fore := Field_Fore (Fld).Attr;
-+ Color := Field_Fore (Fld).Color;
- end Foreground;
- -- |
- -- |
-@@ -446,18 +393,13 @@
- Color : Color_Pair := Color_Pair'First)
- is
- function Set_Field_Back (Fld : Field;
-- Attr : C_Chtype) return C_Int;
-+ Attr : Attributed_Character) return Eti_Error;
- pragma Import (C, Set_Field_Back, "set_field_back");
-
-- Ch : constant Attributed_Character := (Ch => Character'First,
-- Color => Color,
-- Attr => Back);
-- Res : constant Eti_Error :=
-- Set_Field_Back (Fld, AttrChar_To_Chtype (Ch));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Field_Back (Fld, (Ch => Character'First,
-+ Color => Color,
-+ Attr => Back)));
- end Set_Background;
- -- |
- -- |
-@@ -465,21 +407,21 @@
- procedure Background (Fld : Field;
- Back : out Character_Attribute_Set)
- is
-- function Field_Back (Fld : Field) return C_Chtype;
-+ function Field_Back (Fld : Field) return Attributed_Character;
- pragma Import (C, Field_Back, "field_back");
- begin
-- Back := Chtype_To_AttrChar (Field_Back (Fld)).Attr;
-+ Back := Field_Back (Fld).Attr;
- end Background;
-
- procedure Background (Fld : Field;
- Back : out Character_Attribute_Set;
- Color : out Color_Pair)
- is
-- function Field_Back (Fld : Field) return C_Chtype;
-+ function Field_Back (Fld : Field) return Attributed_Character;
- pragma Import (C, Field_Back, "field_back");
- begin
-- Back := Chtype_To_AttrChar (Field_Back (Fld)).Attr;
-- Color := Chtype_To_AttrChar (Field_Back (Fld)).Color;
-+ Back := Field_Back (Fld).Attr;
-+ Color := Field_Back (Fld).Color;
- end Background;
- -- |
- -- |
-@@ -488,15 +430,12 @@
- Pad : Character := Space)
- is
- function Set_Field_Pad (Fld : Field;
-- Ch : C_Int) return C_Int;
-+ Ch : C_Int) return Eti_Error;
- pragma Import (C, Set_Field_Pad, "set_field_pad");
-
-- Res : constant Eti_Error := Set_Field_Pad (Fld,
-- C_Int (Character'Pos (Pad)));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Field_Pad (Fld,
-+ C_Int (Character'Pos (Pad))));
- end Set_Pad_Character;
- -- |
- -- |
-@@ -527,25 +466,21 @@
- type C_Int_Access is access all C_Int;
- function Fld_Info (Fld : Field;
- L, C, Fr, Fc, Os, Ab : C_Int_Access)
-- return C_Int;
-+ return Eti_Error;
- pragma Import (C, Fld_Info, "field_info");
-
- L, C, Fr, Fc, Os, Ab : aliased C_Int;
-- Res : constant Eti_Error := Fld_Info (Fld,
-- L'Access, C'Access,
-- Fr'Access, Fc'Access,
-- Os'Access, Ab'Access);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- else
-- Lines := Line_Count (L);
-- Columns := Column_Count (C);
-- First_Row := Line_Position (Fr);
-- First_Column := Column_Position (Fc);
-- Off_Screen := Natural (Os);
-- Additional_Buffers := Buffer_Number (Ab);
-- end if;
-+ Eti_Exception (Fld_Info (Fld,
-+ L'Access, C'Access,
-+ Fr'Access, Fc'Access,
-+ Os'Access, Ab'Access));
-+ Lines := Line_Count (L);
-+ Columns := Column_Count (C);
-+ First_Row := Line_Position (Fr);
-+ First_Column := Column_Position (Fc);
-+ Off_Screen := Natural (Os);
-+ Additional_Buffers := Buffer_Number (Ab);
- end Info;
- -- |
- -- |
-@@ -556,21 +491,17 @@
- Max : out Natural)
- is
- type C_Int_Access is access all C_Int;
-- function Dyn_Info (Fld : Field; L, C, M : C_Int_Access) return C_Int;
-+ function Dyn_Info (Fld : Field; L, C, M : C_Int_Access) return Eti_Error;
- pragma Import (C, Dyn_Info, "dynamic_field_info");
-
- L, C, M : aliased C_Int;
-- Res : constant Eti_Error := Dyn_Info (Fld,
-- L'Access, C'Access,
-- M'Access);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- else
-- Lines := Line_Count (L);
-- Columns := Column_Count (C);
-- Max := Natural (M);
-- end if;
-+ Eti_Exception (Dyn_Info (Fld,
-+ L'Access, C'Access,
-+ M'Access));
-+ Lines := Line_Count (L);
-+ Columns := Column_Count (C);
-+ Max := Natural (M);
- end Dynamic_Info;
- -- |
- -- |=====================================================================
-@@ -583,14 +514,11 @@
- Win : Window)
- is
- function Set_Form_Win (Frm : Form;
-- Win : Window) return C_Int;
-+ Win : Window) return Eti_Error;
- pragma Import (C, Set_Form_Win, "set_form_win");
-
-- Res : constant Eti_Error := Set_Form_Win (Frm, Win);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Form_Win (Frm, Win));
- end Set_Window;
- -- |
- -- |
-@@ -611,14 +539,11 @@
- Win : Window)
- is
- function Set_Form_Sub (Frm : Form;
-- Win : Window) return C_Int;
-+ Win : Window) return Eti_Error;
- pragma Import (C, Set_Form_Sub, "set_form_sub");
-
-- Res : constant Eti_Error := Set_Form_Sub (Frm, Win);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Form_Sub (Frm, Win));
- end Set_Sub_Window;
- -- |
- -- |
-@@ -640,16 +565,13 @@
- Columns : out Column_Count)
- is
- type C_Int_Access is access all C_Int;
-- function M_Scale (Frm : Form; Yp, Xp : C_Int_Access) return C_Int;
-+ function M_Scale (Frm : Form; Yp, Xp : C_Int_Access) return Eti_Error;
- pragma Import (C, M_Scale, "scale_form");
-
- X, Y : aliased C_Int;
-- Res : constant Eti_Error := M_Scale (Frm, Y'Access, X'Access);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-- Lines := Line_Count (Y);
-+ Eti_Exception (M_Scale (Frm, Y'Access, X'Access));
-+ Lines := Line_Count (Y);
- Columns := Column_Count (X);
- end Scale;
- -- |
-@@ -663,14 +585,11 @@
- Proc : Form_Hook_Function)
- is
- function Set_Field_Init (Frm : Form;
-- Proc : Form_Hook_Function) return C_Int;
-+ Proc : Form_Hook_Function) return Eti_Error;
- pragma Import (C, Set_Field_Init, "set_field_init");
-
-- Res : constant Eti_Error := Set_Field_Init (Frm, Proc);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Field_Init (Frm, Proc));
- end Set_Field_Init_Hook;
- -- |
- -- |
-@@ -679,14 +598,11 @@
- Proc : Form_Hook_Function)
- is
- function Set_Field_Term (Frm : Form;
-- Proc : Form_Hook_Function) return C_Int;
-+ Proc : Form_Hook_Function) return Eti_Error;
- pragma Import (C, Set_Field_Term, "set_field_term");
-
-- Res : constant Eti_Error := Set_Field_Term (Frm, Proc);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Field_Term (Frm, Proc));
- end Set_Field_Term_Hook;
- -- |
- -- |
-@@ -695,14 +611,11 @@
- Proc : Form_Hook_Function)
- is
- function Set_Form_Init (Frm : Form;
-- Proc : Form_Hook_Function) return C_Int;
-+ Proc : Form_Hook_Function) return Eti_Error;
- pragma Import (C, Set_Form_Init, "set_form_init");
-
-- Res : constant Eti_Error := Set_Form_Init (Frm, Proc);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Form_Init (Frm, Proc));
- end Set_Form_Init_Hook;
- -- |
- -- |
-@@ -711,14 +624,11 @@
- Proc : Form_Hook_Function)
- is
- function Set_Form_Term (Frm : Form;
-- Proc : Form_Hook_Function) return C_Int;
-+ Proc : Form_Hook_Function) return Eti_Error;
- pragma Import (C, Set_Form_Term, "set_form_term");
-
-- Res : constant Eti_Error := Set_Form_Term (Frm, Proc);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Form_Term (Frm, Proc));
- end Set_Form_Term_Hook;
- -- |
- -- |=====================================================================
-@@ -731,19 +641,15 @@
- Flds : Field_Array_Access)
- is
- function Set_Frm_Fields (Frm : Form;
-- Items : System.Address) return C_Int;
-+ Items : System.Address) return Eti_Error;
- pragma Import (C, Set_Frm_Fields, "set_form_fields");
-
-- Res : Eti_Error;
- begin
- pragma Assert (Flds.all (Flds'Last) = Null_Field);
- if Flds.all (Flds'Last) /= Null_Field then
- raise Form_Exception;
- else
-- Res := Set_Frm_Fields (Frm, Flds.all (Flds'First)'Address);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Frm_Fields (Frm, Flds.all (Flds'First)'Address));
- end if;
- end Redefine;
- -- |
-@@ -783,14 +689,11 @@
- Line : Line_Position;
- Column : Column_Position)
- is
-- function Move (Fld : Field; L, C : C_Int) return C_Int;
-+ function Move (Fld : Field; L, C : C_Int) return Eti_Error;
- pragma Import (C, Move, "move_field");
-
-- Res : constant Eti_Error := Move (Fld, C_Int (Line), C_Int (Column));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Move (Fld, C_Int (Line), C_Int (Column)));
- end Move;
- -- |
- -- |=====================================================================
-@@ -822,14 +725,11 @@
- -- |
- procedure Delete (Frm : in out Form)
- is
-- function Free (Frm : Form) return C_Int;
-+ function Free (Frm : Form) return Eti_Error;
- pragma Import (C, Free, "free_form");
-
-- Res : constant Eti_Error := Free (Frm);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Free (Frm));
- Frm := Null_Form;
- end Delete;
- -- |
-@@ -843,16 +743,11 @@
- Options : Form_Option_Set)
- is
- function Set_Form_Opts (Frm : Form;
-- Opt : C_Int) return C_Int;
-+ Opt : Form_Option_Set) return Eti_Error;
- pragma Import (C, Set_Form_Opts, "set_form_opts");
-
-- Opt : constant C_Int := FrmOS_2_CInt (Options);
-- Res : Eti_Error;
- begin
-- Res := Set_Form_Opts (Frm, Opt);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Form_Opts (Frm, Options));
- end Set_Options;
- -- |
- -- |
-@@ -862,22 +757,17 @@
- On : Boolean := True)
- is
- function Form_Opts_On (Frm : Form;
-- Opt : C_Int) return C_Int;
-+ Opt : Form_Option_Set) return Eti_Error;
- pragma Import (C, Form_Opts_On, "form_opts_on");
- function Form_Opts_Off (Frm : Form;
-- Opt : C_Int) return C_Int;
-+ Opt : Form_Option_Set) return Eti_Error;
- pragma Import (C, Form_Opts_Off, "form_opts_off");
-
-- Err : Eti_Error;
-- Opt : constant C_Int := FrmOS_2_CInt (Options);
- begin
- if On then
-- Err := Form_Opts_On (Frm, Opt);
-+ Eti_Exception (Form_Opts_On (Frm, Options));
- else
-- Err := Form_Opts_Off (Frm, Opt);
-- end if;
-- if Err /= E_Ok then
-- Eti_Exception (Err);
-+ Eti_Exception (Form_Opts_Off (Frm, Options));
- end if;
- end Switch_Options;
- -- |
-@@ -886,12 +776,11 @@
- procedure Get_Options (Frm : Form;
- Options : out Form_Option_Set)
- is
-- function Form_Opts (Frm : Form) return C_Int;
-+ function Form_Opts (Frm : Form) return Form_Option_Set;
- pragma Import (C, Form_Opts, "form_opts");
-
-- Res : constant C_Int := Form_Opts (Frm);
- begin
-- Options := CInt_2_FrmOS (Res);
-+ Options := Form_Opts (Frm);
- end Get_Options;
- -- |
- -- |
-@@ -913,20 +802,16 @@
- procedure Post (Frm : Form;
- Post : Boolean := True)
- is
-- function M_Post (Frm : Form) return C_Int;
-+ function M_Post (Frm : Form) return Eti_Error;
- pragma Import (C, M_Post, "post_form");
-- function M_Unpost (Frm : Form) return C_Int;
-+ function M_Unpost (Frm : Form) return Eti_Error;
- pragma Import (C, M_Unpost, "unpost_form");
-
-- Res : Eti_Error;
- begin
- if Post then
-- Res := M_Post (Frm);
-+ Eti_Exception (M_Post (Frm));
- else
-- Res := M_Unpost (Frm);
-- end if;
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-+ Eti_Exception (M_Unpost (Frm));
- end if;
- end Post;
- -- |
-@@ -938,14 +823,11 @@
- -- |
- procedure Position_Cursor (Frm : Form)
- is
-- function Pos_Form_Cursor (Frm : Form) return C_Int;
-+ function Pos_Form_Cursor (Frm : Form) return Eti_Error;
- pragma Import (C, Pos_Form_Cursor, "pos_form_cursor");
-
-- Res : constant Eti_Error := Pos_Form_Cursor (Frm);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Pos_Form_Cursor (Frm));
- end Position_Cursor;
- -- |
- -- |=====================================================================
-@@ -993,25 +875,22 @@
- function Driver (Frm : Form;
- Key : Key_Code) return Driver_Result
- is
-- function Frm_Driver (Frm : Form; Key : C_Int) return C_Int;
-+ function Frm_Driver (Frm : Form; Key : C_Int) return Eti_Error;
- pragma Import (C, Frm_Driver, "form_driver");
-
- R : constant Eti_Error := Frm_Driver (Frm, C_Int (Key));
- begin
-- if R /= E_Ok then
-- if R = E_Unknown_Command then
-+ case R is
-+ when E_Unknown_Command =>
- return Unknown_Request;
-- elsif R = E_Invalid_Field then
-+ when E_Invalid_Field =>
- return Invalid_Field;
-- elsif R = E_Request_Denied then
-+ when E_Request_Denied =>
- return Request_Denied;
-- else
-+ when others =>
- Eti_Exception (R);
- return Form_Ok;
-- end if;
-- else
-- return Form_Ok;
-- end if;
-+ end case;
- end Driver;
- -- |
- -- |=====================================================================
-@@ -1023,14 +902,11 @@
- procedure Set_Current (Frm : Form;
- Fld : Field)
- is
-- function Set_Current_Fld (Frm : Form; Fld : Field) return C_Int;
-+ function Set_Current_Fld (Frm : Form; Fld : Field) return Eti_Error;
- pragma Import (C, Set_Current_Fld, "set_current_field");
-
-- Res : constant Eti_Error := Set_Current_Fld (Frm, Fld);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Current_Fld (Frm, Fld));
- end Set_Current;
- -- |
- -- |
-@@ -1053,14 +929,11 @@
- procedure Set_Page (Frm : Form;
- Page : Page_Number := Page_Number'First)
- is
-- function Set_Frm_Page (Frm : Form; Pg : C_Int) return C_Int;
-+ function Set_Frm_Page (Frm : Form; Pg : C_Int) return Eti_Error;
- pragma Import (C, Set_Frm_Page, "set_form_page");
-
-- Res : constant Eti_Error := Set_Frm_Page (Frm, C_Int (Page));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Frm_Page (Frm, C_Int (Page)));
- end Set_Page;
- -- |
- -- |
-@@ -1102,14 +975,11 @@
- procedure Set_New_Page (Fld : Field;
- New_Page : Boolean := True)
- is
-- function Set_Page (Fld : Field; Flg : C_Int) return C_Int;
-+ function Set_Page (Fld : Field; Flg : C_Int) return Eti_Error;
- pragma Import (C, Set_Page, "set_new_page");
-
-- Res : constant Eti_Error := Set_Page (Fld, Boolean'Pos (New_Page));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Page (Fld, Boolean'Pos (New_Page)));
- end Set_New_Page;
- -- |
- -- |
-Index: Ada95/src/terminal_interface-curses-menus-item_user_data.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-menus-item_user_data.adb 2009-12-26 17:46:57.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-menus-item_user_data.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2009,2014 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 --
-@@ -35,7 +35,7 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.12 $
-+-- $Revision: 1.14 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Interfaces.C;
-@@ -49,14 +49,11 @@
- Data : User_Access)
- is
- function Set_Item_Userptr (Itm : Item;
-- Addr : User_Access) return C_Int;
-+ Addr : User_Access) return Eti_Error;
- pragma Import (C, Set_Item_Userptr, "set_item_userptr");
-
-- Res : constant Eti_Error := Set_Item_Userptr (Itm, Data);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Item_Userptr (Itm, Data));
- end Set_User_Data;
-
- function Get_User_Data (Itm : Item) return User_Access
-Index: Ada95/src/terminal_interface-curses-menus-menu_user_data.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-menus-menu_user_data.adb 2009-12-26 17:46:57.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-menus-menu_user_data.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2009,2014 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 --
-@@ -35,7 +35,7 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.13 $
-+-- $Revision: 1.15 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
-@@ -48,14 +48,12 @@
- Data : User_Access)
- is
- function Set_Menu_Userptr (Men : Menu;
-- Data : User_Access) return C_Int;
-+ Data : User_Access) return Eti_Error;
- pragma Import (C, Set_Menu_Userptr, "set_menu_userptr");
-
-- Res : constant Eti_Error := Set_Menu_Userptr (Men, Data);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Userptr (Men, Data));
-+
- end Set_User_Data;
-
- function Get_User_Data (Men : Menu) return User_Access
-Index: Ada95/src/terminal_interface-curses-menus.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-menus.adb 2011-03-22 23:38:12.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-menus.adb 2014-05-24 21:31:05.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.28 $
---- $Date: 2011/03/22 23:38:12 $
-+-- $Revision: 1.32 $
-+-- $Date: 2014/05/24 21:31:05 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Ada.Unchecked_Deallocation;
-@@ -46,8 +46,6 @@
- with Interfaces.C.Strings; use Interfaces.C.Strings;
- with Interfaces.C.Pointers;
-
--with Ada.Unchecked_Conversion;
--
- package body Terminal_Interface.Curses.Menus is
-
- type C_Item_Array is array (Natural range <>) of aliased Item;
-@@ -57,22 +55,6 @@
- use type System.Bit_Order;
- subtype chars_ptr is Interfaces.C.Strings.chars_ptr;
-
-- function MOS_2_CInt is new
-- Ada.Unchecked_Conversion (Menu_Option_Set,
-- C_Int);
--
-- function CInt_2_MOS is new
-- Ada.Unchecked_Conversion (C_Int,
-- Menu_Option_Set);
--
-- function IOS_2_CInt is new
-- Ada.Unchecked_Conversion (Item_Option_Set,
-- C_Int);
--
-- function CInt_2_IOS is new
-- Ada.Unchecked_Conversion (C_Int,
-- Item_Option_Set);
--
- ------------------------------------------------------------------------------
- procedure Request_Name (Key : Menu_Request_Code;
- Name : out String)
-@@ -128,10 +110,9 @@
- function Itemname (Itm : Item) return chars_ptr;
- pragma Import (C, Itemname, "item_name");
-
-- function Freeitem (Itm : Item) return C_Int;
-+ function Freeitem (Itm : Item) return Eti_Error;
- pragma Import (C, Freeitem, "free_item");
-
-- Res : Eti_Error;
- Ptr : chars_ptr;
- begin
- Ptr := Descname (Itm);
-@@ -142,10 +123,7 @@
- if Ptr /= Null_Ptr then
- Interfaces.C.Strings.Free (Ptr);
- end if;
-- Res := Freeitem (Itm);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Freeitem (Itm));
- Itm := Null_Item;
- end Delete;
- -------------------------------------------------------------------------------
-@@ -153,14 +131,11 @@
- Value : Boolean := True)
- is
- function Set_Item_Val (Itm : Item;
-- Val : C_Int) return C_Int;
-+ Val : C_Int) return Eti_Error;
- pragma Import (C, Set_Item_Val, "set_item_value");
-
-- Res : constant Eti_Error := Set_Item_Val (Itm, Boolean'Pos (Value));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Item_Val (Itm, Boolean'Pos (Value)));
- end Set_Value;
-
- function Value (Itm : Item) return Boolean
-@@ -192,16 +167,11 @@
- Options : Item_Option_Set)
- is
- function Set_Item_Opts (Itm : Item;
-- Opt : C_Int) return C_Int;
-+ Opt : Item_Option_Set) return Eti_Error;
- pragma Import (C, Set_Item_Opts, "set_item_opts");
-
-- Opt : constant C_Int := IOS_2_CInt (Options);
-- Res : Eti_Error;
- begin
-- Res := Set_Item_Opts (Itm, Opt);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Item_Opts (Itm, Options));
- end Set_Options;
-
- procedure Switch_Options (Itm : Item;
-@@ -209,34 +179,28 @@
- On : Boolean := True)
- is
- function Item_Opts_On (Itm : Item;
-- Opt : C_Int) return C_Int;
-+ Opt : Item_Option_Set) return Eti_Error;
- pragma Import (C, Item_Opts_On, "item_opts_on");
- function Item_Opts_Off (Itm : Item;
-- Opt : C_Int) return C_Int;
-+ Opt : Item_Option_Set) return Eti_Error;
- pragma Import (C, Item_Opts_Off, "item_opts_off");
-
-- Opt : constant C_Int := IOS_2_CInt (Options);
-- Err : Eti_Error;
- begin
- if On then
-- Err := Item_Opts_On (Itm, Opt);
-+ Eti_Exception (Item_Opts_On (Itm, Options));
- else
-- Err := Item_Opts_Off (Itm, Opt);
-- end if;
-- if Err /= E_Ok then
-- Eti_Exception (Err);
-+ Eti_Exception (Item_Opts_Off (Itm, Options));
- end if;
- end Switch_Options;
-
- procedure Get_Options (Itm : Item;
- Options : out Item_Option_Set)
- is
-- function Item_Opts (Itm : Item) return C_Int;
-+ function Item_Opts (Itm : Item) return Item_Option_Set;
- pragma Import (C, Item_Opts, "item_opts");
-
-- Res : constant C_Int := Item_Opts (Itm);
- begin
-- Options := CInt_2_IOS (Res);
-+ Options := Item_Opts (Itm);
- end Get_Options;
-
- function Get_Options (Itm : Item := Null_Item) return Item_Option_Set
-@@ -285,14 +249,11 @@
- Itm : Item)
- is
- function Set_Curr_Item (Men : Menu;
-- Itm : Item) return C_Int;
-+ Itm : Item) return Eti_Error;
- pragma Import (C, Set_Curr_Item, "set_current_item");
-
-- Res : constant Eti_Error := Set_Curr_Item (Men, Itm);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Curr_Item (Men, Itm));
- end Set_Current;
-
- function Current (Men : Menu) return Item
-@@ -312,14 +273,11 @@
- Line : Line_Position)
- is
- function Set_Toprow (Men : Menu;
-- Line : C_Int) return C_Int;
-+ Line : C_Int) return Eti_Error;
- pragma Import (C, Set_Toprow, "set_top_row");
-
-- Res : constant Eti_Error := Set_Toprow (Men, C_Int (Line));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Toprow (Men, C_Int (Line)));
- end Set_Top_Row;
-
- function Top_Row (Men : Menu) return Line_Position
-@@ -351,20 +309,16 @@
- procedure Post (Men : Menu;
- Post : Boolean := True)
- is
-- function M_Post (Men : Menu) return C_Int;
-+ function M_Post (Men : Menu) return Eti_Error;
- pragma Import (C, M_Post, "post_menu");
-- function M_Unpost (Men : Menu) return C_Int;
-+ function M_Unpost (Men : Menu) return Eti_Error;
- pragma Import (C, M_Unpost, "unpost_menu");
-
-- Res : Eti_Error;
- begin
- if Post then
-- Res := M_Post (Men);
-+ Eti_Exception (M_Post (Men));
- else
-- Res := M_Unpost (Men);
-- end if;
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-+ Eti_Exception (M_Unpost (Men));
- end if;
- end Post;
- -------------------------------------------------------------------------------
-@@ -372,16 +326,11 @@
- Options : Menu_Option_Set)
- is
- function Set_Menu_Opts (Men : Menu;
-- Opt : C_Int) return C_Int;
-+ Opt : Menu_Option_Set) return Eti_Error;
- pragma Import (C, Set_Menu_Opts, "set_menu_opts");
-
-- Opt : constant C_Int := MOS_2_CInt (Options);
-- Res : Eti_Error;
- begin
-- Res := Set_Menu_Opts (Men, Opt);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Opts (Men, Options));
- end Set_Options;
-
- procedure Switch_Options (Men : Menu;
-@@ -389,34 +338,28 @@
- On : Boolean := True)
- is
- function Menu_Opts_On (Men : Menu;
-- Opt : C_Int) return C_Int;
-+ Opt : Menu_Option_Set) return Eti_Error;
- pragma Import (C, Menu_Opts_On, "menu_opts_on");
- function Menu_Opts_Off (Men : Menu;
-- Opt : C_Int) return C_Int;
-+ Opt : Menu_Option_Set) return Eti_Error;
- pragma Import (C, Menu_Opts_Off, "menu_opts_off");
-
-- Opt : constant C_Int := MOS_2_CInt (Options);
-- Err : Eti_Error;
- begin
- if On then
-- Err := Menu_Opts_On (Men, Opt);
-+ Eti_Exception (Menu_Opts_On (Men, Options));
- else
-- Err := Menu_Opts_Off (Men, Opt);
-- end if;
-- if Err /= E_Ok then
-- Eti_Exception (Err);
-+ Eti_Exception (Menu_Opts_Off (Men, Options));
- end if;
- end Switch_Options;
-
- procedure Get_Options (Men : Menu;
- Options : out Menu_Option_Set)
- is
-- function Menu_Opts (Men : Menu) return C_Int;
-+ function Menu_Opts (Men : Menu) return Menu_Option_Set;
- pragma Import (C, Menu_Opts, "menu_opts");
-
-- Res : constant C_Int := Menu_Opts (Men);
- begin
-- Options := CInt_2_MOS (Res);
-+ Options := Menu_Opts (Men);
- end Get_Options;
-
- function Get_Options (Men : Menu := Null_Menu) return Menu_Option_Set
-@@ -431,14 +374,11 @@
- Win : Window)
- is
- function Set_Menu_Win (Men : Menu;
-- Win : Window) return C_Int;
-+ Win : Window) return Eti_Error;
- pragma Import (C, Set_Menu_Win, "set_menu_win");
-
-- Res : constant Eti_Error := Set_Menu_Win (Men, Win);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Win (Men, Win));
- end Set_Window;
-
- function Get_Window (Men : Menu) return Window
-@@ -455,14 +395,11 @@
- Win : Window)
- is
- function Set_Menu_Sub (Men : Menu;
-- Win : Window) return C_Int;
-+ Win : Window) return Eti_Error;
- pragma Import (C, Set_Menu_Sub, "set_menu_sub");
-
-- Res : constant Eti_Error := Set_Menu_Sub (Men, Win);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Sub (Men, Win));
- end Set_Sub_Window;
-
- function Get_Sub_Window (Men : Menu) return Window
-@@ -481,29 +418,23 @@
- is
- type C_Int_Access is access all C_Int;
- function M_Scale (Men : Menu;
-- Yp, Xp : C_Int_Access) return C_Int;
-+ Yp, Xp : C_Int_Access) return Eti_Error;
- pragma Import (C, M_Scale, "scale_menu");
-
- X, Y : aliased C_Int;
-- Res : constant Eti_Error := M_Scale (Men, Y'Access, X'Access);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (M_Scale (Men, Y'Access, X'Access));
- Lines := Line_Count (Y);
- Columns := Column_Count (X);
- end Scale;
- -------------------------------------------------------------------------------
- procedure Position_Cursor (Men : Menu)
- is
-- function Pos_Menu_Cursor (Men : Menu) return C_Int;
-+ function Pos_Menu_Cursor (Men : Menu) return Eti_Error;
- pragma Import (C, Pos_Menu_Cursor, "pos_menu_cursor");
-
-- Res : constant Eti_Error := Pos_Menu_Cursor (Men);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Pos_Menu_Cursor (Men));
- end Position_Cursor;
-
- -------------------------------------------------------------------------------
-@@ -512,18 +443,14 @@
- is
- type Char_Ptr is access all Interfaces.C.char;
- function Set_Mark (Men : Menu;
-- Mark : Char_Ptr) return C_Int;
-+ Mark : Char_Ptr) return Eti_Error;
- pragma Import (C, Set_Mark, "set_menu_mark");
-
- Txt : char_array (0 .. Mark'Length);
- Len : size_t;
-- Res : Eti_Error;
- begin
- To_C (Mark, Txt, Len);
-- Res := Set_Mark (Men, Txt (Txt'First)'Access);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Mark (Men, Txt (Txt'First)'Access));
- end Set_Mark;
-
- procedure Mark (Men : Menu;
-@@ -550,37 +477,34 @@
- Color : Color_Pair := Color_Pair'First)
- is
- function Set_Menu_Fore (Men : Menu;
-- Attr : C_Chtype) return C_Int;
-+ Attr : Attributed_Character) return Eti_Error;
- pragma Import (C, Set_Menu_Fore, "set_menu_fore");
-
- Ch : constant Attributed_Character := (Ch => Character'First,
- Color => Color,
- Attr => Fore);
-- Res : constant Eti_Error := Set_Menu_Fore (Men, AttrChar_To_Chtype (Ch));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Fore (Men, Ch));
- end Set_Foreground;
-
- procedure Foreground (Men : Menu;
- Fore : out Character_Attribute_Set)
- is
-- function Menu_Fore (Men : Menu) return C_Chtype;
-+ function Menu_Fore (Men : Menu) return Attributed_Character;
- pragma Import (C, Menu_Fore, "menu_fore");
- begin
-- Fore := Chtype_To_AttrChar (Menu_Fore (Men)).Attr;
-+ Fore := Menu_Fore (Men).Attr;
- end Foreground;
-
- procedure Foreground (Men : Menu;
- Fore : out Character_Attribute_Set;
- Color : out Color_Pair)
- is
-- function Menu_Fore (Men : Menu) return C_Chtype;
-+ function Menu_Fore (Men : Menu) return Attributed_Character;
- pragma Import (C, Menu_Fore, "menu_fore");
- begin
-- Fore := Chtype_To_AttrChar (Menu_Fore (Men)).Attr;
-- Color := Chtype_To_AttrChar (Menu_Fore (Men)).Color;
-+ Fore := Menu_Fore (Men).Attr;
-+ Color := Menu_Fore (Men).Color;
- end Foreground;
-
- procedure Set_Background
-@@ -589,37 +513,34 @@
- Color : Color_Pair := Color_Pair'First)
- is
- function Set_Menu_Back (Men : Menu;
-- Attr : C_Chtype) return C_Int;
-+ Attr : Attributed_Character) return Eti_Error;
- pragma Import (C, Set_Menu_Back, "set_menu_back");
-
- Ch : constant Attributed_Character := (Ch => Character'First,
- Color => Color,
- Attr => Back);
-- Res : constant Eti_Error := Set_Menu_Back (Men, AttrChar_To_Chtype (Ch));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Back (Men, Ch));
- end Set_Background;
-
- procedure Background (Men : Menu;
- Back : out Character_Attribute_Set)
- is
-- function Menu_Back (Men : Menu) return C_Chtype;
-+ function Menu_Back (Men : Menu) return Attributed_Character;
- pragma Import (C, Menu_Back, "menu_back");
- begin
-- Back := Chtype_To_AttrChar (Menu_Back (Men)).Attr;
-+ Back := Menu_Back (Men).Attr;
- end Background;
-
- procedure Background (Men : Menu;
- Back : out Character_Attribute_Set;
- Color : out Color_Pair)
- is
-- function Menu_Back (Men : Menu) return C_Chtype;
-+ function Menu_Back (Men : Menu) return Attributed_Character;
- pragma Import (C, Menu_Back, "menu_back");
- begin
-- Back := Chtype_To_AttrChar (Menu_Back (Men)).Attr;
-- Color := Chtype_To_AttrChar (Menu_Back (Men)).Color;
-+ Back := Menu_Back (Men).Attr;
-+ Color := Menu_Back (Men).Color;
- end Background;
-
- procedure Set_Grey (Men : Menu;
-@@ -627,53 +548,46 @@
- Color : Color_Pair := Color_Pair'First)
- is
- function Set_Menu_Grey (Men : Menu;
-- Attr : C_Chtype) return C_Int;
-+ Attr : Attributed_Character) return Eti_Error;
- pragma Import (C, Set_Menu_Grey, "set_menu_grey");
-
- Ch : constant Attributed_Character := (Ch => Character'First,
- Color => Color,
- Attr => Grey);
-
-- Res : constant Eti_Error := Set_Menu_Grey (Men, AttrChar_To_Chtype (Ch));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Grey (Men, Ch));
- end Set_Grey;
-
- procedure Grey (Men : Menu;
- Grey : out Character_Attribute_Set)
- is
-- function Menu_Grey (Men : Menu) return C_Chtype;
-+ function Menu_Grey (Men : Menu) return Attributed_Character;
- pragma Import (C, Menu_Grey, "menu_grey");
- begin
-- Grey := Chtype_To_AttrChar (Menu_Grey (Men)).Attr;
-+ Grey := Menu_Grey (Men).Attr;
- end Grey;
-
- procedure Grey (Men : Menu;
- Grey : out Character_Attribute_Set;
- Color : out Color_Pair)
- is
-- function Menu_Grey (Men : Menu) return C_Chtype;
-+ function Menu_Grey (Men : Menu) return Attributed_Character;
- pragma Import (C, Menu_Grey, "menu_grey");
- begin
-- Grey := Chtype_To_AttrChar (Menu_Grey (Men)).Attr;
-- Color := Chtype_To_AttrChar (Menu_Grey (Men)).Color;
-+ Grey := Menu_Grey (Men).Attr;
-+ Color := Menu_Grey (Men).Color;
- end Grey;
-
- procedure Set_Pad_Character (Men : Menu;
- Pad : Character := Space)
- is
- function Set_Menu_Pad (Men : Menu;
-- Ch : C_Int) return C_Int;
-+ Ch : C_Int) return Eti_Error;
- pragma Import (C, Set_Menu_Pad, "set_menu_pad");
-
-- Res : constant Eti_Error := Set_Menu_Pad (Men,
-- C_Int (Character'Pos (Pad)));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Pad (Men, C_Int (Character'Pos (Pad))));
- end Set_Pad_Character;
-
- procedure Pad_Character (Men : Menu;
-@@ -691,17 +605,14 @@
- Col : Column_Position := 0)
- is
- function Set_Spacing (Men : Menu;
-- D, R, C : C_Int) return C_Int;
-+ D, R, C : C_Int) return Eti_Error;
- pragma Import (C, Set_Spacing, "set_menu_spacing");
-
-- Res : constant Eti_Error := Set_Spacing (Men,
-- C_Int (Descr),
-- C_Int (Row),
-- C_Int (Col));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Spacing (Men,
-+ C_Int (Descr),
-+ C_Int (Row),
-+ C_Int (Col)));
- end Set_Spacing;
-
- procedure Spacing (Men : Menu;
-@@ -711,22 +622,18 @@
- is
- type C_Int_Access is access all C_Int;
- function Get_Spacing (Men : Menu;
-- D, R, C : C_Int_Access) return C_Int;
-+ D, R, C : C_Int_Access) return Eti_Error;
- pragma Import (C, Get_Spacing, "menu_spacing");
-
- D, R, C : aliased C_Int;
-- Res : constant Eti_Error := Get_Spacing (Men,
-- D'Access,
-- R'Access,
-- C'Access);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- else
-- Descr := Column_Position (D);
-- Row := Line_Position (R);
-- Col := Column_Position (C);
-- end if;
-+ Eti_Exception (Get_Spacing (Men,
-+ D'Access,
-+ R'Access,
-+ C'Access));
-+ Descr := Column_Position (D);
-+ Row := Line_Position (R);
-+ Col := Column_Position (C);
- end Spacing;
- -------------------------------------------------------------------------------
- function Set_Pattern (Men : Menu;
-@@ -734,7 +641,7 @@
- is
- type Char_Ptr is access all Interfaces.C.char;
- function Set_Pattern (Men : Menu;
-- Pattern : Char_Ptr) return C_Int;
-+ Pattern : Char_Ptr) return Eti_Error;
- pragma Import (C, Set_Pattern, "set_menu_pattern");
-
- S : char_array (0 .. Text'Length);
-@@ -744,11 +651,11 @@
- To_C (Text, S, L);
- Res := Set_Pattern (Men, S (S'First)'Access);
- case Res is
-- when E_No_Match => return False;
-- when E_Ok => return True;
-+ when E_No_Match =>
-+ return False;
- when others =>
- Eti_Exception (Res);
-- return False;
-+ return True;
- end case;
- end Set_Pattern;
-
-@@ -767,16 +674,14 @@
- is
- function Set_Menu_Fmt (Men : Menu;
- Lin : C_Int;
-- Col : C_Int) return C_Int;
-+ Col : C_Int) return Eti_Error;
- pragma Import (C, Set_Menu_Fmt, "set_menu_format");
-
-- Res : constant Eti_Error := Set_Menu_Fmt (Men,
-- C_Int (Lines),
-- C_Int (Columns));
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Fmt (Men,
-+ C_Int (Lines),
-+ C_Int (Columns)));
-+
- end Set_Format;
-
- procedure Format (Men : Menu;
-@@ -785,74 +690,58 @@
- is
- type C_Int_Access is access all C_Int;
- function Menu_Fmt (Men : Menu;
-- Y, X : C_Int_Access) return C_Int;
-+ Y, X : C_Int_Access) return Eti_Error;
- pragma Import (C, Menu_Fmt, "menu_format");
-
- L, C : aliased C_Int;
-- Res : constant Eti_Error := Menu_Fmt (Men, L'Access, C'Access);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- else
-- Lines := Line_Count (L);
-- Columns := Column_Count (C);
-- end if;
-+ Eti_Exception (Menu_Fmt (Men, L'Access, C'Access));
-+ Lines := Line_Count (L);
-+ Columns := Column_Count (C);
- end Format;
- -------------------------------------------------------------------------------
- procedure Set_Item_Init_Hook (Men : Menu;
- Proc : Menu_Hook_Function)
- is
- function Set_Item_Init (Men : Menu;
-- Proc : Menu_Hook_Function) return C_Int;
-+ Proc : Menu_Hook_Function) return Eti_Error;
- pragma Import (C, Set_Item_Init, "set_item_init");
-
-- Res : constant Eti_Error := Set_Item_Init (Men, Proc);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Item_Init (Men, Proc));
- end Set_Item_Init_Hook;
-
- procedure Set_Item_Term_Hook (Men : Menu;
- Proc : Menu_Hook_Function)
- is
- function Set_Item_Term (Men : Menu;
-- Proc : Menu_Hook_Function) return C_Int;
-+ Proc : Menu_Hook_Function) return Eti_Error;
- pragma Import (C, Set_Item_Term, "set_item_term");
-
-- Res : constant Eti_Error := Set_Item_Term (Men, Proc);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Item_Term (Men, Proc));
- end Set_Item_Term_Hook;
-
- procedure Set_Menu_Init_Hook (Men : Menu;
- Proc : Menu_Hook_Function)
- is
- function Set_Menu_Init (Men : Menu;
-- Proc : Menu_Hook_Function) return C_Int;
-+ Proc : Menu_Hook_Function) return Eti_Error;
- pragma Import (C, Set_Menu_Init, "set_menu_init");
-
-- Res : constant Eti_Error := Set_Menu_Init (Men, Proc);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Init (Men, Proc));
- end Set_Menu_Init_Hook;
-
- procedure Set_Menu_Term_Hook (Men : Menu;
- Proc : Menu_Hook_Function)
- is
- function Set_Menu_Term (Men : Menu;
-- Proc : Menu_Hook_Function) return C_Int;
-+ Proc : Menu_Hook_Function) return Eti_Error;
- pragma Import (C, Set_Menu_Term, "set_menu_term");
-
-- Res : constant Eti_Error := Set_Menu_Term (Men, Proc);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Menu_Term (Men, Proc));
- end Set_Menu_Term_Hook;
-
- function Get_Item_Init_Hook (Men : Menu) return Menu_Hook_Function
-@@ -891,19 +780,15 @@
- Items : Item_Array_Access)
- is
- function Set_Items (Men : Menu;
-- Items : System.Address) return C_Int;
-+ Items : System.Address) return Eti_Error;
- pragma Import (C, Set_Items, "set_menu_items");
-
-- Res : Eti_Error;
- begin
- pragma Assert (Items.all (Items'Last) = Null_Item);
- if Items.all (Items'Last) /= Null_Item then
- raise Menu_Exception;
- else
-- Res := Set_Items (Men, Items.all'Address);
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Set_Items (Men, Items.all'Address));
- end if;
- end Redefine;
-
-@@ -955,14 +840,11 @@
-
- procedure Delete (Men : in out Menu)
- is
-- function Free (Men : Menu) return C_Int;
-+ function Free (Men : Menu) return Eti_Error;
- pragma Import (C, Free, "free_menu");
-
-- Res : constant Eti_Error := Free (Men);
- begin
-- if Res /= E_Ok then
-- Eti_Exception (Res);
-- end if;
-+ Eti_Exception (Free (Men));
- Men := Null_Menu;
- end Delete;
-
-@@ -971,22 +853,22 @@
- Key : Key_Code) return Driver_Result
- is
- function Driver (Men : Menu;
-- Key : C_Int) return C_Int;
-+ Key : C_Int) return Eti_Error;
- pragma Import (C, Driver, "menu_driver");
-
- R : constant Eti_Error := Driver (Men, C_Int (Key));
- begin
-- if R /= E_Ok then
-- case R is
-- when E_Unknown_Command => return Unknown_Request;
-- when E_No_Match => return No_Match;
-- when E_Request_Denied |
-- E_Not_Selectable => return Request_Denied;
-- when others =>
-- Eti_Exception (R);
-- end case;
-- end if;
-- return Menu_Ok;
-+ case R is
-+ when E_Unknown_Command =>
-+ return Unknown_Request;
-+ when E_No_Match =>
-+ return No_Match;
-+ when E_Request_Denied | E_Not_Selectable =>
-+ return Request_Denied;
-+ when others =>
-+ Eti_Exception (R);
-+ return Menu_Ok;
-+ end case;
- end Driver;
-
- procedure Free (IA : in out Item_Array_Access;
-Index: Ada95/src/terminal_interface-curses-mouse.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-mouse.adb 2009-12-26 17:38:58.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-mouse.adb 2014-09-13 19:10:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2009,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.24 $
---- $Date: 2009/12/26 17:38:58 $
-+-- $Revision: 1.25 $
-+-- $Date: 2014/09/13 19:10:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
-@@ -199,7 +199,8 @@
- pragma Import (C, Wenclose, "wenclose");
- begin
- if Wenclose (Win, C_Int (Event.Y), C_Int (Event.X))
-- = Curses_Bool_False then
-+ = Curses_Bool_False
-+ then
- return False;
- else
- return True;
-Index: Ada95/src/terminal_interface-curses-text_io.adb
---- ncurses-5.9/Ada95/src/terminal_interface-curses-text_io.adb 2011-03-22 23:38:49.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-text_io.adb 2014-05-24 21:32:18.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2014 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 --
-@@ -35,8 +35,8 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.20 $
---- $Date: 2011/03/22 23:38:49 $
-+-- $Revision: 1.22 $
-+-- $Date: 2014/05/24 21:32:18 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- package body Terminal_Interface.Curses.Text_IO is
-@@ -205,7 +205,7 @@
- end if;
-
- Get_Cursor_Position (Win, Y1, X);
-- pragma Unreferenced (X);
-+ pragma Warnings (Off, X); -- unreferenced
- N := Natural (To); N := N - 1;
- Y2 := Line_Position (N);
- if Y2 < Y1 then
-Index: Ada95/src/terminal_interface-curses-trace.adb_p
---- ncurses-5.9/Ada95/src/terminal_interface-curses-trace.adb_p 2011-03-19 18:16:43.000000000 +0000
-+++ ncurses-5.9-20141206/Ada95/src/terminal_interface-curses-trace.adb_p 2014-05-24 21:31:57.000000000 +0000
-@@ -7,7 +7,7 @@
- -- B O D Y --
- -- --
- ------------------------------------------------------------------------------
---- Copyright (c) 2000-2004,2009 Free Software Foundation, Inc. --
-+-- Copyright (c) 2000-2009,2014 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 --
-@@ -35,60 +35,39 @@
- ------------------------------------------------------------------------------
- -- Author: Juergen Pfeifer, 1996
- -- Version Control:
---- $Revision: 1.7 $
-+-- $Revision: 1.11 $
- -- Binding Version 01.00
- ------------------------------------------------------------------------------
- #if ADA_TRACE then
- with Interfaces.C; use Interfaces.C;
--with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
--with Ada.Unchecked_Conversion;
- #end if;
-
- package body Terminal_Interface.Curses.Trace is
-
- #if ADA_TRACE then
-- type C_TraceType is new C_UInt;
--
-- function TraceAda_To_TraceC is new
-- Ada.Unchecked_Conversion (Source => Trace_Attribute_Set,
-- Target => C_TraceType);
--
- procedure Trace_On (x : Trace_Attribute_Set) is
-- procedure traceC (y : C_TraceType);
-+ procedure traceC (y : Trace_Attribute_Set);
- pragma Import (C, traceC, "trace");
- begin
-- traceC (TraceAda_To_TraceC (x));
-+ traceC (x);
- end Trace_On;
-
-- -- 75. (12) A C function that takes a variable number of arguments can
-- -- correspond to several Ada subprograms, taking various specific
-- -- numbers and types of parameters.
--
- procedure Trace_Put (str : String) is
- procedure tracef (format : char_array; s : char_array);
- pragma Import (C, tracef, "_traces");
-- Txt : char_array (0 .. str'Length);
-- Length : size_t;
-- formatstr : constant String := "%s" & ASCII.NUL;
-- formattxt : char_array (0 .. formatstr'Length);
-+ -- _traces() is defined in c_varargs_to_ada.h
- begin
-- To_C (formatstr, formattxt, Length);
-- To_C (str, Txt, Length);
-- tracef (formattxt, Txt);
-+ tracef (To_C ("%s"), To_C (str));
- end Trace_Put;
- #else
- procedure Trace_On (x : Trace_Attribute_Set) is
--#if PRAGMA_UNREF
-- pragma Unreferenced (x);
--#end if;
-+ pragma Warnings (Off, x); -- unreferenced
- begin
- null;
- end Trace_On;
-
- procedure Trace_Put (str : String) is
--#if PRAGMA_UNREF
-- pragma Unreferenced (str);
--#end if;
-+ pragma Warnings (Off, str); -- unreferenced
- begin
- null;
- end Trace_Put;
-Index: COPYING
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/COPYING 2014-01-18 23:59:29.000000000 +0000
-@@ -0,0 +1,28 @@
-+Copyright (c) 1998-2013,2014 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.
-+
-+-- vile:txtmode fc=72
-+-- $Id: COPYING,v 1.2 2014/01/18 23:59:29 tom Exp $
-Index: INSTALL
-Prereq: 1.155
---- ncurses-5.9/INSTALL 2011-03-31 08:27:24.000000000 +0000
-+++ ncurses-5.9-20141206/INSTALL 2014-12-06 13:31:57.000000000 +0000
-@@ -1,5 +1,5 @@
- -------------------------------------------------------------------------------
---- Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2013,2014 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 --
-@@ -25,7 +25,7 @@
- -- sale, use or other dealings in this Software without prior written --
- -- authorization. --
- -------------------------------------------------------------------------------
---- $Id: INSTALL,v 1.155 2011/03/31 08:27:24 tom Exp $
-+-- $Id: INSTALL,v 1.179 2014/12/06 13:31:57 tom Exp $
- ---------------------------------------------------------------------
- How to install Ncurses/Terminfo on your system
- ---------------------------------------------------------------------
-@@ -315,6 +315,10 @@
- programs are useful in this configuration, e.g., reset and tput versus
- infocmp and tic.
-
-+ --disable-db-install
-+ Do not install the terminal database. This is used to omit features
-+ for packages, as done with --without-progs.
-+
- --disable-ext-funcs
- Disable function-extensions. Configure ncurses without the functions
- that are not specified by XSI. See ncurses/modules for the exact
-@@ -333,6 +337,10 @@
- --disable-largefile
- Disable compiler flags needed to use large-file interfaces.
-
-+ --disable-lib-suffixes
-+ Suppress the "w", "t" or "tw" suffixes which normally would be added
-+ to the library names for the --enable-widec and --with-pthread options.
-+
- --disable-libtool-version
- when using --with-libtool, control how the major/minor version numbers
- are used for constructing the library name.
-@@ -344,6 +352,10 @@
- Use --disable-libtool-version to use the libtool -version-info feature.
- This corresponds to the setting used before patch 20100515.
-
-+ Starting with patch 20141115, using this option causes the configure
-+ script to apply the top-level VERSION file to the ABI version used
-+ for libtool.
-+
- --disable-leaks
- For testing, compile-in code that frees memory that normally would not
- be freed, to simplify analysis of memory-leaks.
-@@ -352,11 +364,17 @@
- a screen, since (even after calling endwin()), it must be available
- for use in the next call to refresh(). There are also chunks of
- memory held for performance reasons. That makes it hard to analyze
-- curses applications for memory leaks. To work around this, build
-- a debugging version of the ncurses library which frees those chunks
-+ curses applications for memory leaks. To work around this, build a
-+ debugging version of the ncurses library which frees those chunks
- which it can, and provides the _nc_free_and_exit() function to free
-- the remainder on exit. The ncurses utility and test programs use this
-- feature, e.g., via the ExitProgram() macro.
-+ the remainder and then exit. The ncurses utility and test programs
-+ use this feature, e.g., via the ExitProgram() macro.
-+
-+ Because this lies outside of the library's intended usage, it is not
-+ normally considered part of the ABI. If there were some (as yet
-+ unplanned) extension which frees memory in a manner that would let the
-+ library resume and reallocate memory, then that would not use a "_nc_"
-+ prefix.
-
- --disable-lp64
- The header files will ignore use of the _LP64 symbol to make chtype
-@@ -382,6 +400,37 @@
- rather than the include directory. This makes it simpler to avoid
- compile-time conflicts with other versions of curses.h
-
-+ Putting the header files into a subdirectory assumes that applications
-+ will follow the (standard) practice of including the headers with
-+ reference to the subdirectory name. For instance, the normal ncurses
-+ header would be included using
-+
-+ #include <ncurses/curses.h>
-+ #include <ncurses/term.h>
-+
-+ while the ncursesw headers would be found this way:
-+
-+ #include <ncursesw/curses.h>
-+ #include <ncursesw/term.h>
-+
-+ In either case (with or without the --disable-overwrite option),
-+ almost all applications are designed to include a related set of
-+ curses header files from the same directory.
-+
-+ Manipulating the --includedir configure option to put header files
-+ directly in a subdirectory of the normal include-directory defeats
-+ this, and breaks builds of portable applications. Likewise, putting
-+ some headers in /usr/include, and others in a subdirectory is a good
-+ way to break builds.
-+
-+ When configured with --disable-overwrite, the installed header files'
-+ embedded #include's are adjusted to use the same style of includes
-+ noted above. In particular, the unctrl.h header is included from
-+ curses.h, which means that a makefile which tells the compiler to
-+ include directly from the subdirectory will fail to compile correctly.
-+ Without some special effort, it will either fail to compile at all,
-+ or the compiler may find a different unctrl.h file.
-+
- --disable-relink
- If --enable-rpath is given, the generated makefiles normally will
- rebuild the libraries during install. Use this option to simply
-@@ -407,13 +456,14 @@
-
- --disable-tic-depends
- When building shared libraries, normally the tic library is linked to
-- depend upon the ncurses library (and in turn, on the term-library if
-- the --with-termlib option was given). The tic- and term-libraries
-- ABI does not depend on the --enable-widec option. Some packagers have
-- used this to reduce the number of library files which are packaged
-- by using only one copy of those libraries. To make this work properly,
-+ depend upon the ncurses library (or equivalently, on the tinfo-library
-+ if the --with-termlib option was given). The tic- and tinfo-library
-+ ABIs do not depend on the --enable-widec option. Some packagers have
-+ used this to reduce the number of library files which are packaged by
-+ using only one copy of those libraries. To make this work properly,
- the tic library must be built without an explicit dependency on the
-- ncurses (or ncursesw) library. Use this configure option to do that.
-+ underlying library (ncurses vs ncursesw, tinfo vs tinfow). Use this
-+ configure option to do that.
- For example
- configure --with-ticlib --with-shared --disable-tic-depends
-
-@@ -555,6 +605,9 @@
- library by reducing global and static variables. This option is also
- set if --with-pthread is used.
-
-+ Enabling this option adds a "t" to the library names, except for the
-+ special case when --enable-weak-symbols is also used.
-+
- --enable-rpath
- Use rpath option when generating shared libraries, and (with some
- restrictions) when linking the corresponding programs. This originally
-@@ -595,6 +648,14 @@
- reducing the need for juggling the global SP value with set_term() and
- delscreen().
-
-+ --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
-+ is weakly standardized.
-+
-+ Aside from stifling these warnings, there is no functional improvement
-+ in ncurses.
-+
- --enable-symlinks
- If your system supports symbolic links, make tic use symbolic links
- rather than hard links to save diskspace when writing aliases in the
-@@ -616,6 +677,12 @@
- match is found in the terminfo database. See also the --enable-getcap
- and --enable-getcap-cache options.
-
-+ Termcap support requires run-time parsing rather than loading
-+ predigested data. If you have specified --with-ticlib, then you
-+ cannot have termcap support since run-time parsing is done in the
-+ tic library, which is intentionally not part of normal linkage
-+ dependencies.
-+
- --enable-warnings
- Turn on GCC compiler warnings. There should be only a few.
-
-@@ -740,6 +807,12 @@
- executables, e.g., by setting "--with-chtype=long" (the configure
- script supplies "unsigned").
-
-+ --with-cxx-shared
-+ When --with-shared is set, build libncurses++ as a shared library.
-+ This implicitly relies upon building with gcc/g++, since other
-+ compiler suites may have differences in the way shared libraries are
-+ built. libtool by the way has similar limitations.
-+
- --with-database=XXX
- Specify the terminfo source file to install. Usually you will wish
- to install ncurses' default (misc/terminfo.src). Certain systems
-@@ -762,6 +835,11 @@
- For testing, compile and link with Gray Watson's dmalloc library.
- This also sets the --disable-leaks option.
-
-+ --with-export-syms[=XXX]
-+ Limit exported symbols using libtool. The configure script
-+ automatically chooses an appropriate ".sym" file, which lists the
-+ symbols which are part of the ABI.
-+
- --with-fallbacks=XXX
- Specify a list of fallback terminal descriptions which will be
- compiled into the ncurses library. See CONFIGURING FALLBACK ENTRIES.
-@@ -805,10 +883,15 @@
- filesystem-based terminfo entries.
-
- Use the parameter value to give the install-prefix used for the
-- datbase, e.g.,
-+ database, e.g.,
- --with-hashed-db=/usr/local/BigBase
- to find the corresponding include- and lib-directories under the
-- given directory.
-+ given directory. Alternatively, you can specify a directory leaf
-+ name, e.g.,
-+ --with-hashed-db=db4
-+ to make the configure script look for files in a subdirectory such as
-+ /usr/include/db4/db.h
-+ /usr/lib/db4/libdb.so
-
- See also the --enable-getcap option.
-
-@@ -824,7 +907,17 @@
- NOTE: a few systems build shared libraries with fixed pathnames; this
- option probably will not work for those configurations.
-
-- --with-libtool[=XXX]
-+ --with-lib-prefix=XXX
-+ OS/2 EMX used a different naming convention from most Unix-like
-+ platforms. It required that the "lib" part of a library name was
-+ omitted. Newer EMX as part of eComStation does not follow that
-+ convention. Use this option to override the configure script's
-+ assumptions about the library-prefix. If this option is omitted, it
-+ uses the original OS/2 EMX convention for that platform. Use
-+ "--with-lib-prefix=lib" for the newer EMX in eComStation. Use
-+ "--without-lib-prefix" to suppress it for other odd platforms.
-+
-+ --with-libtool[=XXX]
- Generate libraries with libtool. If this option is selected, then it
- overrides all other library model specifications. Note that libtool
- must already be installed, uses makefile rules dependent on GNU make,
-@@ -842,6 +935,9 @@
- using the appropriate patch for autoconf from
- http://invisible-island.net/autoconf/
-
-+ --with-libtool-opts=XXX
-+ Specify additional libtool options.
-+
- --with-manpage-aliases
- Tell the configure script you wish to create entries in the
- man-directory for aliases to manpages which list them, e.g., the
-@@ -904,6 +1000,10 @@
- --with-pkg-config=[DIR]
- Check for pkg-config, optionally specifying its path.
-
-+ --with-pkg-config-libdir=[DIR]
-+ If pkg-config was found, override the automatic check for its library
-+ path.
-+
- --with-profile
- Generate profile-libraries These are named by adding "_p" to the root,
- e.g., libncurses_p.a
-@@ -936,11 +1036,23 @@
- shared libraries, you may encounter problems with the linker.
- For example, it may prevent you from running the build tree's
- copy of tic (for installing the terminfo database) because it
-- loads the system's copy of the ncurses shared libraries. In that
-- case, using the misc/shlib script may be helpful, since it sets
-- $LD_LIBRARY_PATH to point to the build tree, e.g.,
-+ loads the system's copy of the ncurses shared libraries.
-+
-+ In that case, using the misc/shlib script may be helpful, since it
-+ sets $LD_LIBRARY_PATH to point to the build tree, e.g.,
-+
- ./misc/shlib make install
-
-+ Alternatively, for most platforms, the linker accepts a list of
-+ directories which will be searched for libraries at run-time. The
-+ configure script allows you to modify this list using the
-+ RPATH_LIST environment variable. It is a colon-separated list of
-+ directories (default: the "libdir" set via the configure script).
-+ If you set that to put "../lib" first in the list, the linker will
-+ look first at the build-directory, and avoid conflict with libraries
-+ already installed. One drawback to this approach is that libraries
-+ can be accidentally searched in any "../lib" directory.
-+
- NOTE: If you use the --with-ada-sharedlib option, you should also
- set this option, to ensure that C-language modules needed for the
- Ada binding use appropriate compiler options.
-@@ -996,10 +1108,40 @@
- library dependencies for tic and other programs built with the tic
- library.
-
-+ --with-tparm-arg[=XXX]
-+ Override the type used for tparm() arguments, which normally is a
-+ "long". However the function must assume that its arguments can hold a
-+ pointer to char's which is not always workable for 64-bit platforms. A
-+ better choice would be intptr_t, which was not available at the time
-+ tparm's interface was defined.
-+
-+ If the option is not given, this defaults to "long".
-+
- --with-trace
- Configure the trace() function as part of the all models of the ncurses
- library. Normally it is part of the debug (libncurses_g) library only.
-
-+ --with-versioned-syms[=XXX]
-+ The Solaris, GNU and reportedly some other linkers (ld) accept a
-+ "--version-script" option which tells the linker to annotate the
-+ resulting objects with version identifiers. The configure script
-+ will automatically apply a suitable ".map" file to provide this
-+ information for Linux. Solaris mapfiles differ:
-+
-+ a) comments are not accepted
-+ b) wildcards are not accepted
-+ c) each symbol listed in the map file must exist in the library
-+
-+ Use "objdump -T" on a library to see the annotations.
-+
-+ --with-xterm-kbs=XXX
-+ Configure xterm's terminfo entries to use either BS (^H, i.e., ASCII
-+ backspace) or DEL (^?, or 127). XXX can be BS (or bs, 8) or DEL
-+ (or del, 127).
-+
-+ During installation, the makefile and scripts modifies the "xterm+kbs"
-+ terminfo entry to use this setting.
-+
- --with-valgrind
- For testing, compile with debug option.
- This also sets the --disable-leaks option.
-@@ -1024,6 +1166,8 @@
- install as "ncurses.h" and modify the installed headers and manpages
- accordingly.
-
-+ Likewise, do not install an alias "curses" for the ncurses manpage.
-+
- --without-cxx
- XSI curses declares "bool" as part of the interface. C++ also declares
- "bool". Neither specifies the size and type of booleans, but both
-@@ -1726,20 +1870,37 @@
- By default, there are no entries on the fallback list. After you have
- built the ncurses suite for the first time, you can change the list
- (the process needs infocmp(1)). To do so, use the script
-- ncurses/tinfo/MKfallback.sh. A configure script option
-+ ncurses/tinfo/MKfallback.sh. The configure script option
- --with-fallbacks does this (it accepts a comma-separated list of the
- names you wish, and does not require a rebuild).
-
- If you wanted (say) to have linux, vt100, and xterm fallbacks, you
-- would use the commands
-+ might use the commands
-
- cd ncurses;
-- tinfo/MKfallback.sh linux vt100 xterm >fallback.c
-+ tinfo/MKfallback.sh \
-+ $TERMINFO \
-+ ../misc/terminfo.src \
-+ `which tic` \
-+ linux vt100 xterm >fallback.c
-+
-+ The first three parameters of the script are normally supplied by
-+ the configured makefiles via the "--with-fallbacks" option. They
-+ are
-+
-+ 1) the location of the terminfo database
-+ 2) the source for the terminfo entries
-+ 3) the location of the tic program, used to create a terminfo
-+ database.
-
- Then just rebuild and reinstall the library as you would normally.
- You can restore the default empty fallback list with
-
-- tinfo/MKfallback.sh >fallback.c
-+ tinfo/MKfallback.sh \
-+ $TERMINFO \
-+ ../misc/terminfo.src \
-+ `which tic` \
-+ >fallback.c
-
- The overhead for an empty fallback list is one trivial stub function.
- Any non-empty fallback list is const-ed and therefore lives in sharable
-Index: MANIFEST
---- ncurses-5.9/MANIFEST 2011-03-28 00:29:04.000000000 +0000
-+++ ncurses-5.9-20141206/MANIFEST 2014-11-15 14:03:59.000000000 +0000
-@@ -128,6 +128,8 @@
- ./Ada95/samples/tour.adb
- ./Ada95/samples/tour.ads
- ./Ada95/src/Makefile.in
-+./Ada95/src/c_threaded_variables.c
-+./Ada95/src/c_threaded_variables.h
- ./Ada95/src/c_varargs_to_ada.c
- ./Ada95/src/c_varargs_to_ada.h
- ./Ada95/src/library.gpr
-@@ -190,6 +192,7 @@
- ./Ada95/src/terminal_interface-curses-text_io.ads
- ./Ada95/src/terminal_interface-curses-trace.adb_p
- ./Ada95/src/terminal_interface.ads
-+./COPYING
- ./INSTALL
- ./MANIFEST
- ./Makefile.in
-@@ -199,6 +202,7 @@
- ./README.MinGW
- ./README.emx
- ./TO-DO
-+./VERSION
- ./aclocal.m4
- ./announce.html.in
- ./c++/Makefile.in
-@@ -332,6 +336,7 @@
- ./doc/html/ada/terminal_interface-curses-trace__ads.htm
- ./doc/html/ada/terminal_interface-curses__adb.htm
- ./doc/html/ada/terminal_interface-curses__ads.htm
-+./doc/html/ada/terminal_interface-curses_constants__ads.htm
- ./doc/html/ada/terminal_interface__ads.htm
- ./doc/html/announce.html
- ./doc/html/hackguide.html
-@@ -545,6 +550,8 @@
- ./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/ncurses_cfg.hin
- ./include/ncurses_defs
-@@ -656,6 +663,8 @@
- ./man/legacy_coding.3x
- ./man/make_sed.sh
- ./man/man_db.renames
-+./man/manhtml.aliases
-+./man/manhtml.externs
- ./man/manlinks.sed
- ./man/menu.3x
- ./man/menu_attributes.3x
-@@ -764,7 +773,6 @@
- ./mk-0th.awk
- ./mk-1st.awk
- ./mk-2nd.awk
--./mk-dlls.sh.in
- ./mk-hdr.awk
- ./ncurses/Makefile.in
- ./ncurses/README
-@@ -850,7 +858,6 @@
- ./ncurses/base/lib_wattron.c
- ./ncurses/base/lib_winch.c
- ./ncurses/base/lib_window.c
--./ncurses/base/memmove.c
- ./ncurses/base/nc_panel.c
- ./ncurses/base/resizeterm.c
- ./ncurses/base/safe_sprintf.c
-@@ -867,6 +874,14 @@
- ./ncurses/llib-lncursest
- ./ncurses/llib-lncursestw
- ./ncurses/llib-lncursesw
-+./ncurses/llib-ltic
-+./ncurses/llib-ltict
-+./ncurses/llib-ltictw
-+./ncurses/llib-lticw
-+./ncurses/llib-ltinfo
-+./ncurses/llib-ltinfot
-+./ncurses/llib-ltinfotw
-+./ncurses/llib-ltinfow
- ./ncurses/modules
- ./ncurses/tinfo/MKcaptab.awk
- ./ncurses/tinfo/MKcaptab.sh
-@@ -915,10 +930,10 @@
- ./ncurses/tinfo/make_hash.c
- ./ncurses/tinfo/make_keys.c
- ./ncurses/tinfo/name_match.c
-+./ncurses/tinfo/obsolete.c
- ./ncurses/tinfo/parse_entry.c
- ./ncurses/tinfo/read_entry.c
- ./ncurses/tinfo/read_termcap.c
--./ncurses/tinfo/setbuf.c
- ./ncurses/tinfo/strings.c
- ./ncurses/tinfo/tinfo_driver.c
- ./ncurses/tinfo/trim_sgr0.c
-@@ -943,8 +958,6 @@
- ./ncurses/tty/lib_tstp.c
- ./ncurses/tty/lib_twait.c
- ./ncurses/tty/lib_vidattr.c
--./ncurses/tty/tty_display.h
--./ncurses/tty/tty_input.h
- ./ncurses/tty/tty_update.c
- ./ncurses/wcwidth.h
- ./ncurses/widechar/charable.c
-@@ -967,9 +980,42 @@
- ./ncurses/widechar/lib_vline_set.c
- ./ncurses/widechar/lib_wacs.c
- ./ncurses/widechar/lib_wunctrl.c
-+./ncurses/widechar/widechars.c
- ./ncurses/win32con/gettimeofday.c
- ./ncurses/win32con/wcwidth.c
- ./ncurses/win32con/win_driver.c
-+./package/debian-mingw/changelog
-+./package/debian-mingw/compat
-+./package/debian-mingw/control
-+./package/debian-mingw/copyright
-+./package/debian-mingw/rules
-+./package/debian-mingw/source/format
-+./package/debian-mingw/watch
-+./package/debian-mingw64/changelog
-+./package/debian-mingw64/compat
-+./package/debian-mingw64/control
-+./package/debian-mingw64/copyright
-+./package/debian-mingw64/rules
-+./package/debian-mingw64/source/format
-+./package/debian-mingw64/watch
-+./package/debian/changelog
-+./package/debian/compat
-+./package/debian/control
-+./package/debian/copyright
-+./package/debian/rules
-+./package/debian/source/format
-+./package/debian/watch
-+./package/mingw-ncurses.nsi
-+./package/mingw-ncurses.spec
-+./package/ncurses.map
-+./package/ncurses.spec
-+./package/ncurses.sym
-+./package/ncursest.map
-+./package/ncursest.sym
-+./package/ncursestw.map
-+./package/ncursestw.sym
-+./package/ncursesw.map
-+./package/ncursesw.sym
- ./panel/Makefile.in
- ./panel/headers
- ./panel/llib-lpanel
-@@ -1007,6 +1053,8 @@
- ./progs/tabs.c
- ./progs/tic.c
- ./progs/toe.c
-+./progs/tparm_type.c
-+./progs/tparm_type.h
- ./progs/tput.c
- ./progs/transform.c
- ./progs/tset.c
-@@ -1022,12 +1070,14 @@
- ./test/cardfile.dat
- ./test/chgat.c
- ./test/clip_printw.c
-+./test/color_name.h
- ./test/color_set.c
- ./test/configure
- ./test/configure.in
- ./test/demo_altkeys.c
- ./test/demo_defkey.c
- ./test/demo_forms.c
-+./test/demo_forms.txt
- ./test/demo_keyok.c
- ./test/demo_menus.c
- ./test/demo_panels.c
-@@ -1035,7 +1085,9 @@
- ./test/demo_terminfo.c
- ./test/ditto.c
- ./test/dots.c
-+./test/dots_curses.c
- ./test/dots_mvcur.c
-+./test/dots_termcap.c
- ./test/echochar.c
- ./test/edit_field.c
- ./test/edit_field.h
-@@ -1043,6 +1095,7 @@
- ./test/firework.c
- ./test/firstlast.c
- ./test/foldkeys.c
-+./test/form_driver_w.c
- ./test/gdc.6
- ./test/gdc.c
- ./test/hanoi.c
-@@ -1073,6 +1126,7 @@
- ./test/package/debian/rules
- ./test/package/debian/source/format
- ./test/package/debian/watch
-+./test/package/mingw-ncurses-examples.spec
- ./test/package/ncurses-examples.spec
- ./test/programs
- ./test/railroad.c
-@@ -1092,12 +1146,15 @@
- ./test/test_instr.c
- ./test/test_inwstr.c
- ./test/test_opaque.c
-+./test/test_vid_puts.c
-+./test/test_vidputs.c
- ./test/testaddch.c
- ./test/testcurs.c
- ./test/testscanw.c
- ./test/tracemunch
- ./test/view.c
- ./test/widechars-utf8.txt
-+./test/widechars.h
- ./test/worm.c
- ./test/xmas.c
- ./test/xterm-16color.dat
-Index: Makefile.in
-Prereq: 1.30
---- ncurses-5.9/Makefile.in 2010-11-27 21:45:27.000000000 +0000
-+++ ncurses-5.9-20141206/Makefile.in 2014-01-18 20:19:45.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.30 2010/11/27 21:45:27 tom Exp $
-+# $Id: Makefile.in,v 1.38 2014/01/18 20:19:45 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -27,7 +27,7 @@
- # authorization. #
- ##############################################################################
- #
--# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997
-+# Author: Thomas E. Dickey 1996-on
- #
- # Master Makefile for ncurses library.
-
-@@ -35,7 +35,8 @@
- VPATH = @srcdir@
-
- DESTDIR=@DESTDIR@
--CF_MFLAGS = @cf_cv_makeflags@ DESTDIR="$(DESTDIR)"
-+RPATH_LIST=@RPATH_LIST@
-+TOP_MFLAGS = @cf_cv_makeflags@ DESTDIR="$(DESTDIR)" RPATH_LIST="$(RPATH_LIST)"
-
- @SET_MAKE@
-
-@@ -48,13 +49,17 @@
-
- prefix = @prefix@
- exec_prefix = @exec_prefix@
-+datarootdir = @datarootdir@
-
- bindir = @bindir@
- ticdir = @TERMINFO@
- includedir = @includedir@
-+includesubdir = @includesubdir@
- libdir = @libdir@
- mandir = @mandir@
-
-+include_dir = ${includedir}${includesubdir}
-+
- INSTALL = @INSTALL@
- INSTALL_DATA = @INSTALL_DATA@
-
-@@ -74,25 +79,22 @@
- @ echo ''
- @ echo ' bin directory: '$(bindir)
- @ echo ' lib directory: '$(libdir)
-- @ echo ' include directory: '$(includedir)
-+ @ echo ' include directory: '$(include_dir)
- @ echo ' man directory: '$(mandir)
- @MAKE_TERMINFO@ @ echo ' terminfo directory: '$(ticdir)
- @ echo ''
-- @ test "$(includedir)" = "$(prefix)/include" || \
-+ @ test "$(include_dir)" = "$(prefix)/include" || \
- echo '** Include-directory is not in a standard location'
-- @ test ! -f $(includedir)/termcap.h || \
-- fgrep NCURSES_VERSION $(includedir)/termcap.h >/dev/null || \
-+ @ test ! -f $(include_dir)/termcap.h || \
-+ fgrep NCURSES_VERSION $(include_dir)/termcap.h >/dev/null || \
- echo '** Will overwrite non-ncurses termcap.h'
-- @ test ! -f $(includedir)/curses.h || \
-- fgrep NCURSES_VERSION $(includedir)/curses.h >/dev/null || \
-+ @ test ! -f $(include_dir)/curses.h || \
-+ fgrep NCURSES_VERSION $(include_dir)/curses.h >/dev/null || \
- echo '** Will overwrite non-ncurses curses.h'
-
--dlls: libs
-- $(SHELL) $(srcdir)/mk-dlls.sh
--
- distclean \
- realclean ::
-- -rm -f mk-dlls.sh mingw_arch
-+
-
- # Put the common rules here so that we can easily construct the list of
- # directories to visit.
-Index: NEWS
-Prereq: 1.1682
---- ncurses-5.9/NEWS 2011-04-04 00:02:42.000000000 +0000
-+++ ncurses-5.9-20141206/NEWS 2014-12-06 23:03:44.000000000 +0000
-@@ -1,5 +1,5 @@
- -------------------------------------------------------------------------------
---- Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2013,2014 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 --
-@@ -25,7 +25,7 @@
- -- sale, use or other dealings in this Software without prior written --
- -- authorization. --
- -------------------------------------------------------------------------------
---- $Id: NEWS,v 1.1682 2011/04/04 00:02:42 tom Exp $
-+-- $Id: NEWS,v 1.2307 2014/12/06 23:03:44 tom Exp $
- -------------------------------------------------------------------------------
-
- This is a log of changes that ncurses has gone through since Zeyd started
-@@ -45,6 +45,1705 @@
- Changes through 1.9.9e did not credit all contributions;
- it is not possible to add this information.
-
-+20141206
-+ + updated ".map" files so that each symbol that may be shared across
-+ the different library configurations has the same label. Some
-+ review is needed to ensure these are really compatible.
-+ + modify MKlib_gen.sh to work around change in development version of
-+ gcc introduced here:
-+ https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
-+ https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00236.html
-+ (reports by Marcus Shawcroft, Maohui Lei).
-+ + improved configure macro CF_SUBDIR_PATH, from lynx changes.
-+
-+20141129
-+ + improved ".map" files by generating them with a script that builds
-+ ncurses with several related configurations and merges the results.
-+ A further refinement is planned, to make the tic- and tinfo-library
-+ symbols use the same versions across each of the four configurations
-+ which are represented (reports by Sven Joachim, Werner Fink).
-+
-+20141115
-+ + improve description of limits for color values and color pairs in
-+ curs_color.3x (prompted by patch by Tim van der Molen).
-+ + add VERSION file, using first field in that to record the ABI version
-+ used for configure --with-libtool --disable-libtool-version
-+ + add configure options for applying the ".map" and ".sym" files to
-+ the ncurses, form, menu and panel libraries.
-+ + add ".map" and ".sym" files to show exported symbols, e.g., for
-+ symbol-versioning.
-+
-+20141101
-+ + improve strict compiler-warnings by adding a cast in TRACE_RETURN
-+ and making a new TRACE_RETURN1 macro for cases where the cast does
-+ not apply.
-+
-+20141025
-+ + in-progress changes to integrate the win32 console driver with the
-+ msys2 configuration.
-+
-+20141018
-+ + reviewed terminology 0.6.1, add function key definitions. None of
-+ the vt100-compatibility issues were improved -TD
-+ + improve infocmp conversion of extended capabilities to termcap by
-+ correcting the limit check against parametrized[], as well as filling
-+ in a check if the string happens to have parameters, e.g., "xm"
-+ in recent changes.
-+ + add check for zero/negative dimensions for resizeterm and resize_term
-+ (report by Mike Gran).
-+
-+20141011
-+ + add experimental support for xterm's 1005 mouse mode, to use in a
-+ demonstration of its limitations.
-+ + add experimental support for "%u" format to terminfo.
-+ + modify test/ncurses.c to also show position reports in 'a' test.
-+ + minor formatting fixes to _nc_trace_mmask_t, make this function
-+ exported to help with debugging mouse changes.
-+ + improve behavior of wheel-mice for xterm protocol, noting that there
-+ are only button-presses for buttons "4" and "5", so there is no need
-+ to wait to combine events into double-clicks (report/analysis by
-+ Greg Field).
-+ + provide examples xterm-1005 and xterm-1006 terminfo entries -TD
-+ + implement decoder for xterm SGR 1006 mouse mode.
-+
-+20140927
-+ + implement curs_set in win_driver.c
-+ + implement flash in win_driver.c
-+ + fix an infinite loop in win_driver.c if the command-window loses
-+ focus.
-+ + improve the non-buffered mode, i.e., NCURSES_CONSOLE2, of
-+ win_driver.c by temporarily changing the buffer-size to match the
-+ window-size to eliminate the scrollback. Also enforce a minimum
-+ screen-size of 24x80 in the non-buffered mode.
-+ + modify generated misc/Makefile to suppress install.data from the
-+ dependencies if the --disable-db-install option is used, compensating
-+ for the top-level makefile changes used to add ncurses*-config in the
-+ 20140920 changes (report by Steven Honeyman).
-+
-+20140920
-+ + add ncurses*-config to bin-directory of sample package-scripts.
-+ + add check to ensure that getopt is available; this is a problem in
-+ some older cross-compiler environments.
-+ + expanded on the description of --disable-overwrite in INSTALL
-+ (prompted by reports by Joakim Tjernlund, Thomas Klausner).
-+ See Gentoo #522586 and NetBSD #49200 for examples.
-+ which relates to the clarified guidelines.
-+ + remove special logic from CF_INCLUDE_DIRS which adds the directory
-+ for the --includedir from the build (report by Joakim Tjernlund).
-+ + add case for Unixware to CF_XOPEN_SOURCE, from lynx changes.
-+ + update config.sub from
-+ http://git.savannah.gnu.org/cgit/config.git
-+
-+20140913
-+ + add a configure check to ignore some of the plethora of non-working
-+ C++ cross-compilers.
-+ + build-fixes for Ada95 with gnat 4.9
-+
-+20140906
-+ + build-fix and other improvements for port of ncurses-examples to
-+ NetBSD.
-+ + minor compiler-warning fixes.
-+
-+20140831
-+ + modify test/demo_termcap.c and test/demo_terminfo.c to make their
-+ options more directly comparable, and add "-i" option to specify
-+ a terminal description filename to parse for names to lookup.
-+
-+20140823
-+ + fix special case where double-width character overwrites a single-
-+ width character in the first column (report by Egmont Koblinger,
-+ cf: 20050813).
-+
-+20140816
-+ + fix colors in ncurses 'b' test which did not work after changing
-+ it to put the test-strings in subwindows (cf: 20140705).
-+ + merge redundant SEE-ALSO sections in form and menu manpages.
-+
-+20140809
-+ + modify declarations for user-data pointers in C++ binding to use
-+ reinterpret_cast to facilitate converting typed pointers to void*
-+ in user's application (patch by Adam Jiang).
-+ + regenerated html manpages.
-+ + add note regarding cause and effect for TERM in ncurses manpage,
-+ having noted clueless verbiage in Terminal.app's "help" file
-+ which reverses cause/effect.
-+ + remove special fallback definition for NCURSES_ATTR_T, since macros
-+ have resolved type-mismatches using casts (cf: 970412).
-+ + fixes for win_driver.c:
-+ + handle repainting on endwin/refresh combination.
-+ + implement beep().
-+ + minor cleanup.
-+
-+20140802
-+ + minor portability fixes for MinGW:
-+ + ensure WINVER is defined in makefiles rather than using headers
-+ + add check for gnatprep "-T" option
-+ + work around bug introduced by gcc 4.8.1 in MinGW which breaks
-+ "trace" feature:
-+ http://stackoverflow.com/questions/20877689/gcc-4-8-1-minggw-d-option-does-not-work-as-usual
-+ + fix most compiler warnings for Cygwin ncurses-examples.
-+ + restore "redundant" -I options in test/Makefile.in, since they are
-+ typically needed when building the derived ncurses-examples package
-+ (cf: 20140726).
-+
-+20140726
-+ + eliminate some redundant -I options used for building libraries, and
-+ ensure that ${srcdir} is added to the include-options (prompted by
-+ discussion with Paul Gilmartin).
-+ + modify configure script to work with Minix3.2
-+ + add form library extension O_DYNAMIC_JUSTIFY option which can be
-+ used to override the different treatment of justification for static
-+ versus dynamic fields (adapted from patch by Leon Winter).
-+ + add a null pointer check in test/edit_field.c (report/analysis by
-+ Leon Winter, cf: 20130608).
-+
-+20140719
-+ + make workarounds for compiling test-programs with NetBSD curses.
-+ + improve configure macro CF_ADD_LIBS, to eliminate repeated -l/-L
-+ options, from xterm changes.
-+
-+20140712
-+ + correct Charable() macro check for A_ALTCHARSET in wide-characters.
-+ + build-fix for position-debug code in tty_update.c, to work with or
-+ without sp-funcs.
-+
-+20140705
-+ + add w/W toggle to ncurses.c 'B' test, to demonstrate permutation of
-+ video-attributes and colors with double-width character strings.
-+
-+20140629
-+ + correct check in win_driver.c for saving screen contents, e.g., when
-+ NCURSES_CONSOLE2 is set (cf: 20140503).
-+ + reorganize b/B menu items in ncurses.c, putting the test-strings into
-+ subwindows. This is needed for a planned change to use Unicode
-+ fullwidth characters in the test-screens.
-+ + correct update to form status for _NEWTOP, broken by fixes for
-+ compiler warnings (patch by Leon Winter, cf: 20120616).
-+
-+20140621
-+ + change shared-library suffix for AIX 5 and 6 to ".so", avoiding
-+ conflict with the static library (report by Ben Lentz).
-+ + document RPATH_LIST in INSTALLATION file, as part of workarounds for
-+ upgrading an ncurses library using the "--with-shared" option.
-+ + modify test/ncurses.c c/C tests to cycle through subsets of the
-+ total number of colors, to better illustrate 8/16/88/256-colors by
-+ providing directly comparable screens.
-+ + add test/dots_curses.c, for comparison with the low-level examples.
-+
-+20140614
-+ + fix dereference before null check found by Coverity in tic.c
-+ (cf: 20140524).
-+ + fix sign-extension bug in read_entry.c which prevented "toe" from
-+ reading empty "screen+italics" entry.
-+ + modify sgr for screen.xterm-new to support dim capability -TD
-+ + add dim capability to nsterm+7 -TD
-+ + cancel dim capability for iterm -TD
-+ + add dim, invis capabilities to vte-2012 -TD
-+ + add sitm/ritm to konsole-base and mlterm3 -TD
-+
-+20140609
-+ > fix regression in screen terminfo entries (reports by Christian
-+ Ebert, Gabriele Balducci) -TD
-+ + revert the change to screen; see notes for why this did not work -TD
-+ + cancel sitm/ritm for entries which extend "screen", to work around
-+ screen's hardcoded behavior for SGR 3 -TD
-+
-+20140607
-+ + separate masking for sgr in vidputs from sitm/ritm, which do not
-+ overlap with sgr functionality.
-+ + remove unneeded -i option from adacurses-config; put -a in the -I
-+ option for consistency (patch by Pascal Pignard).
-+ + update xterm-new to patch #305 -TD
-+ + change format of test-scripts for Debian Ada95 and ncurses-examples
-+ packages to quilted to work around Debian #700177 (cf: 20130907).
-+ + build fix for form_driver_w.c as part of ncurses-examples package for
-+ older ncurses than 20131207.
-+ + add Hello World example to adacurses-config manpage.
-+ + remove unused --enable-pc-files option from Ada95/configure.
-+ + add --disable-gnat-projects option for testing.
-+ + revert changes to Ada95 project-files configuration (cf: 20140524).
-+ + corrected usage message in adacurses-config.
-+
-+20140524
-+ + fix typo in ncurses manpage for the NCURSES_NO_MAGIC_COOKIE
-+ environment variable.
-+ + improve discussion of input-echoing in curs_getch.3x
-+ + clarify discussion in curs_addch.3x of wrapping.
-+ + modify parametrized.h to make fln non-padded.
-+ + correct several entries which had termcap-style padding used in
-+ terminfo: adm21, aj510, alto-h19, att605-pc, x820 -TD
-+ + correct syntax for padding in some entries: dg211, h19 -TD
-+ + correct ti924-8 which had confused padding versus octal escapes -TD
-+ + correct padding in sbi entry -TD
-+ + fix an old bug in the termcap emulation; "%i" was ignored in tparm()
-+ because the parameters to be incremented were already on the internal
-+ stack (report by Corinna Vinschen).
-+ + modify tic's "-c" option to take into account the "-C" option to
-+ activate additional checks which compare the results from running
-+ tparm() on the terminfo expressions versus the translated termcap
-+ expressions.
-+ + modify tic to allow it to read from FIFOs (report by Matthieu Fronton,
-+ cf: 20120324).
-+ > patches by Nicolas Boulenguez:
-+ + explicit dereferences to suppress some style warnings.
-+ + when c_varargs_to_ada.c includes its header, use double quotes
-+ instead of <>.
-+ + samples/ncurses2-util.adb: removed unused with clause. The warning
-+ was removed by an obsolete pragma.
-+ + replaced Unreferenced pragmas with Warnings (Off). The latter,
-+ available with older GNATs, needs no configure test. This also
-+ replaces 3 untested Unreferenced pragmas.
-+ + simplified To_C usage in trace handling. Using two parameters allows
-+ some basic formatting, and avoids a warning about security with some
-+ compiler flags.
-+ + for generated Ada sources, replace many snippets with one pure
-+ package.
-+ + removed C_Chtype and its conversions.
-+ + removed C_AttrType and its conversions.
-+ + removed conversions between int, Item_Option_Set, Menu_Option_Set.
-+ + removed int, Field_Option_Set, Item_Option_Set conversions.
-+ + removed C_TraceType, Attribute_Option_Set conversions.
-+ + replaced C.int with direct use of Eti_Error, now enumerated. As it
-+ was used in a case statement, values were tested by the Ada compiler
-+ to be consecutive anyway.
-+ + src/Makefile.in: remove duplicate stanza
-+ + only consider using a project for shared libraries.
-+ + style. Silent gnat-4.9 warning about misplaced "then".
-+ + generate shared library project to honor ADAFLAGS, LDFLAGS.
-+
-+20140510
-+ + cleanup recently introduced compiler warnings for MingW port.
-+ + workaround for ${MAKEFLAGS} configure check versus GNU make 4.0,
-+ which introduces more than one gratuitous incompatibility.
-+
-+20140503
-+ + add vt520ansi terminfo entry (patch by Mike Gran)
-+ + further improve MinGW support for the scenario where there is an
-+ ANSI-escapes handler such as ansicon running in the console window
-+ (patch by Juergen Pfeifer).
-+
-+20140426
-+ + add --disable-lib-suffixes option (adapted from patch by Juergen
-+ Pfeifer).
-+ + merge some changes from Juergen Pfeifer's work with MSYS2, to
-+ simplify later merging:
-+ + use NC_ISATTY() macro for isatty() in library
-+ + add _nc_mingw_isatty() and related functions to windows-driver
-+ + rename terminal driver entrypoints to simplify grep's
-+ + remove a check in the sp-funcs flavor of newterm() which allowed only
-+ the first call to newterm() to succeed (report by Thomas Beierlein,
-+ cf: 20090927).
-+
-+20140419
-+ + update config.guess, config.sub from
-+ http://git.savannah.gnu.org/cgit/config.git
-+
-+20140412
-+ + modify configure script:
-+ + drop the -no-gcc option from Intel compiler, from lynx changes.
-+ + extend the --with-hashed-db configure option to simplify building
-+ with different versions of Berkeley database using FreeBSD ports.
-+ + improve initialization for MinGW port (Juergen Pfeifer):
-+ + enforce Windows-style path-separator if cross-compiling,
-+ + add a driver-name method to each of the drivers,
-+ + allow the Windows driver name to match "unknown", ignoring case,
-+ + lengthen the built-in name for the Windows console driver to
-+ "#win32console", and
-+ + move the comparison of driver-names allowing abbreviation, e.g.,
-+ to "#win32con" into the Windows console driver.
-+
-+20140329
-+ + add check in tic for mismatch between ccc and initp/initc
-+ + cancel ccc in putty-256color and konsole-256color for consistency
-+ with the cancelled initc capability (patch by Sven Zuhlsdorf).
-+ + add xterm+256setaf building block for various terminals which only
-+ get the 256-color feature half-implemented -TD
-+ + updated "st" entry (leaving the 0.1.1 version as "simpleterm") to
-+ 0.4.1 -TD
-+
-+20140323
-+ + fix typo in "mlterm" entry (report by Gabriele Balducci) -TD
-+
-+20140322
-+ + use types from <stdint.h> in sample build-scripts for chtype, etc.
-+ + modify configure script and curses.h.in to allow the types specified
-+ using --with-chtype and related options to be defined in <stdint.h>
-+ + add terminology entry -TD
-+ + add mlterm3 entry, use that as "mlterm" -TD
-+ + inherit mlterm-256color from mlterm -TD
-+
-+20140315
-+ + modify _nc_New_TopRow_and_CurrentItem() to ensure that the menu's
-+ top-row is adjusted as needed to ensure that the current item is
-+ on the screen (patch by Johann Klammer).
-+ + add wgetdelay() to retrieve _delay member of WINDOW if it happens to
-+ be opaque, e.g., in the pthread configuration (prompted by patch by
-+ Soren Brinkmann).
-+
-+20140308
-+ + modify ifdef in read_entry.c to handle the case where
-+ NCURSES_USE_DATABASE is not defined (patch by Xin Li).
-+ + add cast in form_driver_w() to fix ARM build (patch by Xin Li).
-+ + add logic to win_driver.c to save/restore screen contents when not
-+ allocating a console-buffer (cf: 20140215).
-+
-+20140301
-+ + clarify error-returns from newwin (report by Ruslan Nabioullin).
-+
-+20140222
-+ + fix some compiler warnings in win_driver.c
-+ + updated notes for wsvt25 based on tack and vttest -TD
-+ + add teken entry to show actual properties of FreeBSD's "xterm"
-+ console -TD
-+
-+20140215
-+ + in-progress changes to win_driver.c to implement output without
-+ allocating a console-buffer. This uses a pre-existing environment
-+ variable NCGDB used by Juergen Pfeifer for debugging (prompted by
-+ discussion with Erwin Waterlander regarding Console2, which hangs
-+ when reading in an allocated console-buffer).
-+ + add -t option to gdc.c, and modify to accept "S" to step through the
-+ scrolling-stages.
-+ + regenerate NCURSES-Programming-HOWTO.html to fix some of the broken
-+ html emitted by docbook.
-+
-+20140209
-+ + modify CF_XOPEN_SOURCE macro to omit followup check to determine if
-+ _XOPEN_SOURCE can/should be defined. g++ 4.7.2 built on Solaris 10
-+ has some header breakage due to its own predefinition of this symbol
-+ (report by Jean-Pierre Flori, Sage #15796).
-+
-+20140201
-+ + add/use symbol NCURSES_PAIRS_T like NCURSES_COLOR_T, to illustrate
-+ which "short" types are for color pairs and which are color values.
-+ + fix build for s390x, by correcting field bit offsets in generated
-+ representation clauses when int=32 long=64 and endian=big, or at
-+ least on s390x (patch by Nicolas Boulenguez).
-+ + minor cleanup change to test/form_driver_w.c (patch by Gaute Hope).
-+
-+20140125
-+ + remove unnecessary ifdef's in Ada95/gen/gen.c, which reportedly do
-+ not work as is with gcc 4.8 due to fixes using chtype cast made for
-+ new compiler warnings by gcc 4.8 in 20130824 (Debian #735753, patch
-+ by Nicolas Boulenguez).
-+
-+20140118
-+ + apply includesubdir variable which was introduced in 20130805 to
-+ gen-pkgconfig.in (Debian #735782).
-+
-+20131221
-+ + further improved man2html, used this to fix broken links in html
-+ manpages. See
-+ ftp://invisible-island.net/ncurses/patches/man2html
-+
-+20131214
-+ + modify configure-script/ifdef's to allow OLD_TTY feature to be
-+ suppressed if the type of ospeed is configured using the option
-+ --with-ospeed to not be a short. By default, it is a short for
-+ termcap-compatibility (adapted from suggestion by Christian
-+ Weisgerber).
-+ + correct a typo in _nc_baudrate() (patch by Christian Weisgerber,
-+ cf: 20061230).
-+ + fix a few -Wlogical-op warnings.
-+ + updated llib-l* files.
-+
-+20131207
-+ + add form_driver_w() entrypoint to wide-character forms library, as
-+ well as test program form_driver_w (adapted from patch by Gaute
-+ Hope).
-+
-+20131123
-+ + minor fix for CF_GCC_WARNINGS to special-case options which are not
-+ recognized by clang.
-+
-+20131116
-+ + add special case to configure script to move _XOPEN_SOURCE_EXTENDED
-+ definition from CPPFLAGS to CFLAGS if it happens to be needed for
-+ Solaris, because g++ errors with that definition (report by
-+ Jean-Pierre Flori, Sage #15268).
-+ + correct logic in infocmp's -i option which was intended to ignore
-+ strings which correspond to function-keys as candidates for piecing
-+ together initialization- or reset-strings. The problem dates to
-+ 1.9.7a, but was overlooked until changes in -Wlogical-op warnings for
-+ gcc 4.8 (report by David Binderman).
-+ + updated CF_GCC_WARNINGS to documented options for gcc 4.9.0, adding
-+ checks for -Wextra, -Wignored-qualifiers and -Wlogical-op
-+ + updated CF_GCC_WARNINGS to documented options for gcc 4.9.0, moving
-+ checks for -Wextra and -Wdeclaration-after-statement into the macro,
-+ and adding checks for -Wignored-qualifiers, -Wlogical-op and
-+ -Wvarargs
-+ + updated CF_CURSES_UNCTRL_H and CF_SHARED_OPTS macros from ongoing
-+ work on cdk.
-+ + update config.sub from
-+ http://git.savannah.gnu.org/cgit/config.git
-+
-+20131110
-+ + minor cleanup of terminfo.tail
-+
-+20131102
-+ + use TS extension to describe xterm's title-escapes -TD
-+ + modify terminator and nsterm-s to use xterm+sl-twm building block -TD
-+ + update hurd.ti, add xenl to reflect 2011-03-06 change in
-+ http://git.savannah.gnu.org/cgit/hurd/hurd.git/log/console/display.c
-+ (Debian #727119).
-+ + simplify pfkey expression in ansi.sys -TD
-+
-+20131027
-+ + correct/simplify ifdef's for cur_term versus broken-linker and
-+ reentrant options (report by Jean-Pierre Flori, cf: 20090530).
-+ + modify release/version combinations in test build-scripts to make
-+ them more consistent with other packages.
-+
-+20131019
-+ + add nc_mingw.h to installed headers for MinGW port; needed for
-+ compiling ncurses-examples.
-+ + add rpm-script for testing cross-compile of ncurses-examples.
-+
-+20131014
-+ + fix new typo in CF_ADA_INCLUDE_DIRS macro (report by Roumen Petrov).
-+
-+20131012
-+ + fix a few compiler warnings in progs and test.
-+ + minor fix to package/debian-mingw/rules, do not strip dll's.
-+ + minor fixes to configure script for empty $prefix, e.g., when doing
-+ cross-compiles to MinGW.
-+ + add script for building test-packages of binaries cross-compiled to
-+ MinGW using NSIS.
-+
-+20131005
-+ + minor fixes for ncurses-example package and makefile.
-+ + add scripts for test-builds of cross-compiler packages for ncurses6
-+ to MinGW.
-+
-+20130928
-+ + some build-fixes for ncurses-examples with NetBSD-6.0 curses, though
-+ it lacks some common functions such as use_env() which is not yet
-+ addressed.
-+ + build-fix and some compiler warning fixes for ncurses-examples with
-+ OpenBSD 5.3
-+ + fix a possible null-pointer reference in a trace message from newterm.
-+ + quiet a few warnings from NetBSD 6.0 namespace pollution by
-+ nonstandard popcount() function in standard strings.h header.
-+ + ignore g++ 4.2.1 warnings for "-Weffc++" in c++/cursesmain.cc
-+ + fix a few overlooked places for --enable-string-hacks option.
-+
-+20130921
-+ + fix typo in curs_attr.3x (patch by Sven Joachim, cf: 20130831).
-+ + build-fix for --with-shared option for DragonFly and FreeBSD (report
-+ by Rong-En Fan, cf: 20130727).
-+
-+20130907
-+ + build-fixes for MSYS for two test-programs (patches by Ray Donnelly,
-+ Alexey Pavlov).
-+ + revert change to two of the dpkg format files, to work with dpkg
-+ before/after Debian #700177.
-+ + fix gcc -Wconversion warning in wattr_get() macro.
-+ + add msys and msysdll to known host/configuration types (patch by
-+ Alexey Pavlov).
-+ + modify CF_RPATH_HACK configure macro to not rely upon "-u" option
-+ of sort, improving portability.
-+ + minor improvements for test-programs from reviewing Solaris port.
-+ + update config.guess, config.sub from
-+ http://git.savannah.gnu.org/cgit/config.git
-+
-+20130831
-+ + modify test/ncurses.c b/B tests to display lines only for the
-+ attributes which a given terminal supports, to make room for an
-+ italics test.
-+ + completed ncv table in terminfo.tail; it did not list the wide
-+ character codes listed in X/Open Curses issue 7.
-+ + add A_ITALIC extension (prompted by discussion with Egmont Koblinger).
-+
-+20130824
-+ + fix some gcc 4.8 -Wconversion warnings.
-+ + change format of dpkg test-scripts to quilted to work around bug
-+ introduced by Debian #700177.
-+ + discard cached keyname() values if meta() is changed after a value
-+ was cached using (report by Kurban Mallachiev).
-+
-+20130816
-+ + add checks in tic to warn about terminals which lack cursor
-+ addressing, capabilities or having those, are marked as hard_copy or
-+ generic_type.
-+ + use --without-progs in mingw-ncurses rpm.
-+ + split out _nc_init_termtype() from alloc_entry.c to use in MinGW
-+ port when tic and other programs are not needed.
-+
-+20130805
-+ + minor fixes to the --disable-overwrite logic, to ensure that the
-+ configured $(includedir) is not cancelled by the mingwxx-filesystem
-+ rpm macros.
-+ + add --disable-db-install configure option, to simplify building
-+ cross-compile support packages.
-+ + add mingw-ncurses.spec file, for testing cross-compiles.
-+
-+20130727
-+ + improve configure macros from ongoing work on cdk, dialog, xterm:
-+ + CF_ADD_LIB_AFTER - fix a problem with -Wl options
-+ + CF_RPATH_HACK - add missing result-message
-+ + CF_SHARED_OPTS - modify to use $rel_builddir in cygwin and mingw
-+ dll symbols (which can be overridden) rather than explicit "../".
-+ + CF_SHARED_OPTS - modify NetBSD and DragonFly symbols to use ${CC}
-+ rather than ${LD} to improve rpath support.
-+ + CF_SHARED_OPTS - add a symbol to denote the temporary files that
-+ are created by the macro, to simplify clean-rules.
-+ + CF_X_ATHENA - trim extra libraries to work with -Wl,--as-needed
-+ + fix a regression in hashed-database support for NetBSD, which uses
-+ the key-size differently from other implementations (cf: 20121229).
-+
-+20130720
-+ + further improvements for setupterm manpage, clarifying the
-+ initialization of cur_term.
-+
-+20130713
-+ + improve manpages for initscr and setupterm.
-+ + minor compiler-warning fixes
-+
-+20130706
-+ + add fallback defs for <inttypes.h> and <stdint.h> (cf: 20120225).
-+ + add check for size of wchar_t, use that to suppress a chunk of
-+ wcwidth.h in MinGW port.
-+ + quiet linker warnings for MinGW cross-compile with dll's using the
-+ --enable-auto-import flag.
-+ + add ncurses.map rule to ncurses/Makefile to help diagnose symbol
-+ table issues.
-+
-+20130622
-+ + modify the clear program to take into account the E3 extended
-+ capability to clear the terminal's scrollback buffer (patch by
-+ Miroslav Lichvar, Redhat #815790).
-+ + clarify in resizeterm manpage that LINES and COLS are updated.
-+ + updated ansi example in terminfo.tail, correct misordered example
-+ of sgr.
-+ + fix other doclifter warnings for manpages
-+ + remove unnecessary ".ta" in terminfo.tail, add missing ".fi"
-+ (patch by Eric Raymond).
-+
-+20130615
-+ + minor changes to some configure macros to make them more reusable.
-+ + fixes for tabs program (prompted by report by Nick Andrik).
-+ + corrected logic in command-line parsing of -a and -c predefined
-+ tab-lists options.
-+ + allow "-0" and "-8" options to be combined with others, e.g.,"-0d".
-+ + make warning messages more consistent with the other utilities by
-+ not printing the full pathname of the program.
-+ + add -V option for consistency with other utilities.
-+ + fix off-by-one in columns for tabs program when processing an option
-+ such as "-5" (patch by Nick Andrik).
-+
-+20130608
-+ + add to test/demo_forms.c examples of using the menu-hooks as well
-+ as showing how the menu item user-data can be used to pass a callback
-+ function pointer.
-+ + add test/dots_termcap.c
-+ + remove setupterm call from test/demo_termcap.c
-+ + build-fix if --disable-ext-funcs configure option is used.
-+ + modified test/edit_field.c and test/demo_forms.c to move the lengths
-+ into a user-data structure, keeping the original string for later
-+ expansion to free-format input/out demo.
-+ + modified test/demo_forms.c to load data from file.
-+ + added note to clarify Terminal.app's non-emulation of the various
-+ terminal types listed in the preferences dialog -TD
-+ + fix regression in error-reporting in lib_setup.c (Debian #711134,
-+ cf: 20121117).
-+ + build-fix for a case where --enable-broken_linker and
-+ --enable-reentrant options are combined (report by George R Goffe).
-+
-+20130525
-+ + modify mvcur() to distinguish between internal use by the ncurses
-+ library, and external callers, preventing it from reading the content
-+ of the screen which is only nonblank when curses calls have updated
-+ it. This makes test/dots_mvcur.c avoid painting colored cells in
-+ the left margin of the display.
-+ + minor fix to test/dots_mvcur.c
-+ + move configured symbols USE_DATABASE and USE_TERMCAP to term.h as
-+ NCURSES_USE_DATABASE and NCURSES_USE_TERMCAP to allow consistent
-+ use of these symbols in term_entry.h
-+
-+20130518
-+ + corrected ifdefs in test/testcurs.c to allow comparison of mouse
-+ interface versus pdcurses (cf: 20130316).
-+ + add pow() to configure-check for math library, needed since
-+ 20121208 for test/hanoi (Debian #708056).
-+ + regenerated html manpages.
-+ + update doctype used for html documentation.
-+
-+20130511
-+ + move nsterm-related entries out of "obsolete" section to more
-+ plausible "ansi consoles" -TD
-+ + additional cleanup of table-of-contents by reordering -TD
-+ + revise fix for check for 8-bit value in _nc_insert_ch(); prior fix
-+ prevented inserts when video attributes were attached to the data
-+ (cf: 20121215) (Redhat #959534).
-+
-+20130504
-+ + fixes for issues found by Coverity:
-+ + correct FNKEY() macro in progs/dump_entry.c, allowing kf11-kf63 to
-+ display when infocmp's -R option is used for HP or AIX subsets.
-+ + fix dead-code issue with test/movewindow.c
-+ + improve limited-checking in _nc_read_termtype().
-+
-+20130427
-+ + fix clang 3.2 warning in progs/dump_entry.c
-+ + drop AC_TYPE_SIGNAL check; ncurses relies on c89 and later.
-+
-+20130413
-+ + add MinGW to cases where ncurses installs by default into /usr
-+ (prompted by discussion with Daniel Silva Ferreira).
-+ + add -D option to infocmp's usage-message (patch by Miroslav Lichvar).
-+ + add a missing 'int' type for main function in configure check for
-+ type of bool variable, to work with clang 3.2 (report by Dmitri
-+ Gribenko).
-+ + improve configure check for static_cast, to work with clang 3.2
-+ (report by Dmitri Gribenko).
-+ + re-order rule for demo.o and macros defining header dependencies in
-+ c++/Makefile.in to accommodate gmake (report by Dmitri Gribenko).
-+
-+20130406
-+ + improve parameter checking in copywin().
-+ + modify configure script to work around OS X's "libtool" program, to
-+ choose glibtool instead. At the same time, chance the autoconf macro
-+ to look for a "tool" rather than a "prog", to help with potential use
-+ in cross-compiling.
-+ + separate the rpath usage for c++ library from demo program
-+ (Redhat #911540)
-+ + update/correct header-dependencies in c++ makefile (report by Werner
-+ Fink).
-+ + add --with-cxx-shared to dpkg-script, as done for rpm-script.
-+
-+20130324
-+ + build-fix for libtool configuration (reports by Daniel Silva Ferreira
-+ and Roumen Petrov).
-+
-+20130323
-+ + build-fix for OS X, to handle changes for --with-cxx-shared feature
-+ (report by Christian Ebert).
-+ + change initialization for vt220, similar entries for consistency
-+ with cursor-key strings (NetBSD #47674) -TD
-+ + further improvements to linux-16color (Benjamin Sittler)
-+
-+20130316
-+ + additional fix for tic.c, to allocate missing buffer space.
-+ + eliminate configure-script warnings for gen-pkgconfig.in
-+ + correct typo in sgr string for sun-color,
-+ add bold for consistency with sgr,
-+ change smso for consistency with sgr -TD
-+ + correct typo in sgr string for terminator -TD
-+ + add blink to the attributes masked by ncv in linux-16color (report
-+ by Benjamin Sittler)
-+ + improve warning message from post-load checking for missing "%?"
-+ operator by tic/infocmp by showing the entry name and capability.
-+ + minor formatting improvement to tic/infocmp -f option to ensure
-+ line split after "%;".
-+ + amend scripting for --with-cxx-shared option to handle the debug
-+ library "libncurses++_g.a" (report by Sven Joachim).
-+
-+20130309
-+ + amend change to toe.c for reading from /dev/zero, to ensure that
-+ there is a buffer for the temporary filename (cf: 20120324).
-+ + regenerated html manpages.
-+ + fix typo in terminfo.head (report by Sven Joachim, cf: 20130302).
-+ + updated some autoconf macros:
-+ + CF_ACVERSION_CHECK, from byacc 1.9 20130304
-+ + CF_INTEL_COMPILER, CF_XOPEN_SOURCE from luit 2.0-20130217
-+ + add configure option --with-cxx-shared to permit building
-+ libncurses++ as a shared library when using g++, e.g., the same
-+ limitations as libtool but better integrated with the usual build
-+ configuration (Redhat #911540).
-+ + modify MKkey_defs.sh to filter out build-path which was unnecessarily
-+ shown in curses.h (Debian #689131).
-+
-+20130302
-+ + add section to terminfo manpage discussing user-defined capabilities.
-+ + update manpage description of NCURSES_NO_SETBUF, explaining why it
-+ is obsolete.
-+ + add a check in waddch_nosync() to ensure that tab characters are
-+ treated as control characters; some broken locales claim they are
-+ printable.
-+ + add some traces to the Windows console driver.
-+ + initialize a temporary array in _nc_mbtowc, needed for some cases
-+ of raw input in MinGW port.
-+
-+20130218
-+ + correct ifdef on change to lib_twait.c (report by Werner Fink).
-+ + update config.guess, config.sub
-+
-+20130216
-+ + modify test/testcurs.c to work with mouse for ncurses as it does for
-+ pdcurses.
-+ + modify test/knight.c to work with mouse for pdcurses as it does for
-+ ncurses.
-+ + modify internal recursion in wgetch() which handles cooked mode to
-+ check if the call to wgetnstr() returned an error. This can happen
-+ when both nocbreak() and nodelay() are set, for instance (report by
-+ Nils Christopher Brause) (cf: 960418).
-+ + fixes for issues found by Coverity:
-+ + add a check for valid position in ClearToEOS()
-+ + fix in lib_twait.c when --enable-wgetch-events is used, pointer
-+ use after free.
-+ + improve a limit-check in make_hash.c
-+ + fix a memory leak in hashed_db.c
-+
-+20130209
-+ + modify test/configure script to make it simpler to override names
-+ of curses-related libraries, to help with linking with pdcurses in
-+ MinGW environment.
-+ + if the --with-terminfo-dirs configure option is not used, there is
-+ no corresponding compiled-in value for that. Fill in "no default
-+ value" for that part of the manpage substitution.
-+
-+20130202
-+ + correct initialization in knight.c which let it occasionally make
-+ an incorrect move (cf: 20001028).
-+ + improve documentation of the terminfo/termcap search path.
-+
-+20130126
-+ + further fixes to mvcur to pass callback function (cf: 20130112),
-+ needed to make test/dots_mvcur work.
-+ + reduce calls to SetConsoleActiveScreenBuffer in win_driver.c, to
-+ help reduce flicker.
-+ + modify configure script to omit "+b" from linker options for very
-+ old HP-UX systems (report by Dennis Grevenstein)
-+ + add HP-UX workaround for missing EILSEQ on old HP-UX systems (patch
-+ by Dennis Grevenstein).
-+ + restore memmove/strdup support for antique systems (request by
-+ Dennis Grevenstein).
-+ + change %l behavior in tparm to push the string length onto the stack
-+ rather than saving the formatted length into the output buffer
-+ (report by Roy Marples, cf: 980620).
-+
-+20130119
-+ + fixes for issues found by Coverity:
-+ + fix memory leak in safe_sprintf.c
-+ + add check for return-value in tty_update.c
-+ + correct initialization for -s option in test/view.c
-+ + add check for numeric overflow in lib_instr.c
-+ + improve error-checking in copywin
-+ + add advice in infocmp manpage for termcap users (Debian #698469).
-+ + add "-y" option to test/demo_termcap and test/demo_terminfo to
-+ demonstrate behavior with/without extended capabilities.
-+ + updated termcap manpage to document legacy termcap behavior for
-+ matching capability names.
-+ + modify name-comparison for tgetstr, etc., to accommodate legacy
-+ applications as well as to improve compatbility with BSD 4.2
-+ termcap implementations (Debian #698299) (cf: 980725).
-+
-+20130112
-+ + correct prototype in manpage for vid_puts.
-+ + drop ncurses/tty/tty_display.h, ncurses/tty/tty_input.h, since they
-+ are unused in the current driver model.
-+ + modify mvcur to use stdout except when called within the ncurses
-+ library.
-+ + modify vidattr and vid_attr to use stdout as documented in manpage.
-+ + amend changes made to buffering in 20120825 so that the low-level
-+ putp() call uses stdout rather than ncurses' internal buffering.
-+ The putp_sp() call does the same, for consistency (Redhat #892674).
-+
-+20130105
-+ + add "-s" option to test/view.c to allow it to start in single-step
-+ mode, reducing size of trace files when it is used for debugging
-+ MinGW changes.
-+ + revert part of 20121222 change to tinfo_driver.c
-+ + add experimental logic in win_driver.c to improve optimization of
-+ screen updates. This does not yet work with double-width characters,
-+ so it is ifdef'd out for the moment (prompted by report by Erwin
-+ Waterlander regarding screen flicker).
-+
-+20121229
-+ + fix coverity warnings regarding copying into fixed-size buffers.
-+ + add throw-declarations in the c++ binding per Coverity warning.
-+ + minor changes to new-items for consistent reference to bug-report
-+ numbers.
-+
-+20121222
-+ + add *.dSYM directories to clean-rule in ncurses directory makefile,
-+ for Mac OS builds.
-+ + add a configure check for gcc option -no-cpp-precomp, which is not
-+ available in all Mac OS X configurations (report by Andras Salamon,
-+ cf: 20011208).
-+ + improve 20021221 workaround for broken acs, handling a case where
-+ that ACS_xxx character is not in the acsc string but there is a known
-+ wide-character which can be used.
-+
-+20121215
-+ + fix several warnings from clang 3.1 --analyze, includes correcting
-+ a null-pointer check in _nc_mvcur_resume.
-+ + correct display of double-width characters with MinGW port (report
-+ by Erwin Waterlander).
-+ + replace MinGW's wcrtomb(), fixing a problem with _nc_viscbuf
-+ > fixes based on Coverity report:
-+ + correct coloring in test/bs.c
-+ + correct check for 8-bit value in _nc_insert_ch().
-+ + remove dead code in progs/tset.c, test/linedata.h
-+ + add null-pointer checks in lib_tracemse.c, panel.priv.h, and some
-+ test-programs.
-+
-+20121208
-+ + modify test/knight.c to show the number of choices possible for
-+ each position in automove option, e.g., to allow user to follow
-+ Warnsdorff's rule to solve the puzzle.
-+ + modify test/hanoi.c to show the minimum number of moves possible for
-+ the given number of tiles (prompted by patch by Lucas Gioia).
-+ > fixes based on Coverity report:
-+ + remove a few redundant checks.
-+ + correct logic in test/bs.c, when randomly placing a specific type of
-+ ship.
-+ + check return value from remove/unlink in tic.
-+ + check return value from sscanf in test/ncurses.c
-+ + fix a null dereference in c++/cursesw.cc
-+ + fix two instances of uninitialized variables when configuring for the
-+ terminal driver.
-+ + correct scope of variable used in SetSafeOutcWrapper macro.
-+ + set umask when calling mkstemp in tic.
-+ + initialize wbkgrndset() temporary variable when extended-colors are
-+ used.
-+
-+20121201
-+ + also replace MinGW's wctomb(), fixing a problem with setcchar().
-+ + modify test/view.c to load UTF-8 when built with MinGW by using
-+ regular win32 API because the MinGW functions mblen() and mbtowc()
-+ do not work.
-+
-+20121124
-+ + correct order of color initialization versus display in some of the
-+ test-programs, e.g., test_addstr.c
-+ > fixes based on Coverity report:
-+ + delete windows on exit from some of the test-programs.
-+
-+20121117
-+ > fixes based on Coverity report:
-+ + add missing braces around FreeAndNull in two places.
-+ + various fixes in test/ncurses.c
-+ + improve limit-checks in tinfo/make_hash.c, tinfo/read_entry.c
-+ + correct malloc size in progs/infocmp.c
-+ + guard against negative array indices in test/knight.c
-+ + fix off-by-one limit check in test/color_name.h
-+ + add null-pointer check in progs/tabs.c, test/bs.c, test/demo_forms.c,
-+ test/inchs.c
-+ + fix memory-leak in tinfo/lib_setup.c, progs/toe.c,
-+ test/clip_printw.c, test/demo_menus.c
-+ + delete unused windows in test/chgat.c, test/clip_printw.c,
-+ test/insdelln.c, test/newdemo.c on error-return.
-+
-+20121110
-+ + modify configure macro CF_INCLUDE_DIRS to put $CPPFLAGS after the
-+ local -I include options in case someone has set conflicting -I
-+ options in $CPPFLAGS (prompted by patch for ncurses/Makefile.in by
-+ Vassili Courzakis).
-+ + modify the ncurses*-config scripts to eliminate relative paths from
-+ the RPATH_LIST variable, e.g., "../lib" as used in installing shared
-+ libraries or executables.
-+
-+20121102
-+ + realign these related pages:
-+ curs_add_wchstr.3x
-+ curs_addchstr.3x
-+ curs_addstr.3x
-+ curs_addwstr.3x
-+ and fix a long-ago error in curs_addstr.3x which said that a -1
-+ length parameter would only write as much as fit onto one line
-+ (report by Reuben Thomas).
-+ + remove obsolete fallback _nc_memmove() for memmove()/bcopy().
-+ + remove obsolete fallback _nc_strdup() for strdup().
-+ + cancel any debug-rpm in package/ncurses.spec
-+ + reviewed vte-2012, reverted most of the change since it was incorrect
-+ based on testing with tack -TD
-+ + un-cancel the initc in vte-256color, since this was implemented
-+ starting with version 0.20 in 2009 -TD
-+
-+20121026
-+ + improve malloc/realloc checking (prompted by discussion in Redhat
-+ #866989).
-+ + add ncurses test-program as "ncurses6" to the rpm- and dpkg-scripts.
-+ + updated configure macros CF_GCC_VERSION and CF_WITH_PATHLIST. The
-+ first corrects pattern used for Mac OS X's customization of gcc.
-+
-+20121017
-+ + fix change to _nc_scroll_optimize(), which incorrectly freed memory
-+ (Redhat #866989).
-+
-+20121013
-+ + add vte-2012, gnome-2012, making these the defaults for vte/gnome
-+ (patch by Christian Persch).
-+
-+20121006
-+ + improve CF_GCC_VERSION to work around Debian's customization of gcc
-+ --version message.
-+ + improve configure macros as done in byacc:
-+ + drop 2.13 compatibility; use 2.52.xxxx version only since EMX port
-+ has used that for a while.
-+ + add 3rd parameter to AC_DEFINE's to allow autoheader to run, i.e.,
-+ for experimental use.
-+ + remove unused configure macros.
-+ + modify configure script and makefiles to quiet new autoconf warning
-+ for LIBS_TO_MAKE variable.
-+ + modify configure script to show $PATH_SEPARATOR variable.
-+ + update config.guess, config.sub
-+
-+20120922
-+ + modify setupterm to set its copy of TERM to "unknown" if configured
-+ for the terminal driver and TERM was null or empty.
-+ + modify treatment of TERM variable for MinGW port to allow explicit
-+ use of the windows console driver by checking if $TERM is set to
-+ "#win32con" or an abbreviation of that.
-+ + undo recent change to fallback definition of vsscanf() to build with
-+ older Solaris compilers (cf: 20120728).
-+
-+20120908
-+ + add test-screens to test/ncurses to show 256-characters at a time,
-+ to help with MinGW port.
-+
-+20120903
-+ + simplify varargs logic in lib_printw.c; va_copy is no longer needed
-+ there.
-+ + modifications for MinGW port to make wide-character display usable.
-+
-+20120902
-+ + regenerate configure script (report by Sven Joachim, cf: 20120901).
-+
-+20120901
-+ + add a null-pointer check in _nc_flush (cf: 20120825).
-+ + fix a case in _nc_scroll_optimize() where the _oldnums_list array
-+ might not be allocated.
-+ + improve comparisons in configure.in for unset shell variables.
-+
-+20120826
-+ + increase size of ncurses' output-buffer, in case of very small
-+ initial screen-sizes.
-+ + fix evaluation of TERMINFO and TERMINFO_DIRS default values as needed
-+ after changes to use --datarootdir (reports by Gabriele Balducci,
-+ Roumen Petrov).
-+
-+20120825
-+ + change output buffering scheme, using buffer maintained by ncurses
-+ rather than stdio, to avoid problems with SIGTSTP handling (report
-+ by Brian Bloniarz).
-+
-+20120811
-+ + update autoconf patch to 2.52.20120811, adding --datarootdir
-+ (prompted by discussion with Erwin Waterlander).
-+ + improve description of --enable-reentrant option in README and the
-+ INSTALL file.
-+ + add nsterm-256color, make this the default nsterm -TD
-+ + remove bw from nsterm-bce, per testing with tack -TD
-+
-+20120804
-+ + update test/configure, adding check for tinfo library.
-+ + improve limit-checks for the getch fifo (report by Werner Fink).
-+ + fix a remaining mismatch between $with_echo and the symbols updated
-+ for CF_DISABLE_ECHO affecting parameters for mk-2nd.awk (report by
-+ Sven Joachim, cf: 20120317).
-+ + modify followup check for pkg-config's library directory in the
-+ --enable-pc-files option to validate syntax (report by Sven Joachim,
-+ cf: 20110716).
-+
-+20120728
-+ + correct path for ncurses_mingw.h in include/headers, in case build
-+ is done outside source-tree (patch by Roumen Petrov).
-+ + modify some older xterm entries to align with xterm source -TD
-+ + separate "xterm-old" alias from "xterm-r6" -TD
-+ + add E3 extended capability to xterm-basic and putty -TD
-+ + parenthesize parameters of other macros in curses.h -TD
-+ + parenthesize parameter of COLOR_PAIR and PAIR_NUMBER in curses.h
-+ in case it happens to be a comma-expression, etc. (patch by Nick
-+ Black).
-+
-+20120721
-+ + improved form_request_by_name() and menu_request_by_name().
-+ + eliminate two fixed-size buffers in toe.c
-+ + extend use_tioctl() to have expected behavior when use_env(FALSE) and
-+ use_tioctl(TRUE) are called.
-+ + modify ncurses test-program, adding -E and -T options to demonstrate
-+ use_env() versus use_tioctl().
-+
-+20120714
-+ + add use_tioctl() function (adapted from patch by Werner Fink,
-+ Novell #769788):
-+
-+20120707
-+ + add ncurses_mingw.h to installed headers (prompted by patch by
-+ Juergen Pfeifer).
-+ + clarify return-codes from wgetch() in response to SIGWINCH (prompted
-+ by Novell #769788).
-+ + modify resizeterm() to always push a KEY_RESIZE onto the fifo, even
-+ if screensize is unchanged. Modify _nc_update_screensize() to push a
-+ KEY_RESIZE if there was a SIGWINCH, even if it does not call
-+ resizeterm(). These changes eliminate the case where a SIGWINCH is
-+ received, but ERR returned from wgetch or wgetnstr because the screen
-+ dimensions did not change (Novell #769788).
-+
-+20120630
-+ + add --enable-interop to sample package scripts (suggested by Juergen
-+ Pfeifer).
-+ + update CF_PATH_SYNTAX macro, from mawk changes.
-+ + modify mk-0th.awk to allow for generating llib-ltic, etc., though
-+ some work is needed on cproto to work with lib_gen.c to update
-+ llib-lncurses.
-+ + remove redundant getenv() cal in database-iterator leftover from
-+ cleanup in 20120622 changes (report by Sven Joachim).
-+
-+20120622
-+ + add -d, -e and -q options to test/demo_terminfo and test/demo_termcap
-+ + fix caching of environment variables in database-iterator (patch by
-+ Philippe Troin, Redhat #831366).
-+
-+20120616
-+ + add configure check to distinguish clang from gcc to eliminate
-+ warnings about unused command-line parameters when compiler warnings
-+ are enabled.
-+ + improve behavior when updating terminfo entries which are hardlinked
-+ by allowing for the possibility that an alias has been repurposed to
-+ a new primary name.
-+ + fix some strict compiler warnings based on package scripts.
-+ + further fixes for configure check for working poll (Debian #676461).
-+
-+20120608
-+ + fix an uninitialized variable in -c/-n logic for infocmp changes
-+ (cf: 20120526).
-+ + corrected fix for building c++ binding with clang 3.0 (report/patch
-+ by Richard Yao, Gentoo #417613, cf: 20110409)
-+ + correct configure check for working poll, fixing the case where stdin
-+ is redirected, e.g., in rpm/dpkg builds (Debian #676461).
-+ + add rpm- and dpkg-scripts, to test those build-environments.
-+ The resulting packages are used only for testing.
-+
-+20120602
-+ + add kdch1 aka "Remove" to vt220 and vt220-8 entries -TD
-+ + add kdch1, etc., to qvt108 -TD
-+ + add dl1/il1 to some entries based on dl/il values -TD
-+ + add dl to simpleterm -TD
-+ + add consistency-checks in tic for insert-line vs delete-line
-+ controls, and insert/delete-char keys
-+ + correct no-leaks logic in infocmp when doing comparisons, fixing
-+ duplicate free of entries given via the command-line, and freeing
-+ entries loaded from the last-but-one of files specified on the
-+ command-line.
-+ + add kdch1 to wsvt25 entry from NetBSD CVS (reported by David Lord,
-+ analysis by Martin Husemann).
-+ + add cnorm/civis to wsvt25 entry from NetBSD CVS (report/analysis by
-+ Onno van der Linden).
-+
-+20120526
-+ + extend -c and -n options of infocmp to allow comparing more than two
-+ entries.
-+ + correct check in infocmp for number of terminal names when more than
-+ two are given.
-+ + correct typo in curs_threads.3x (report by Yanhui Shen on
-+ freebsd-hackers mailing list).
-+
-+20120512
-+ + corrected 'op' for bterm (report by Samuel Thibault) -TD
-+ + modify test/background.c to demonstrate a background character
-+ holding a colored ACS_HLINE. The behavior differs from SVr4 due to
-+ the thick- and double-line extension (cf: 20091003).
-+ + modify handling of acs characters in PutAttrChar to avoid mapping an
-+ unmapped character to a space with A_ALTCHARSET set.
-+ + rewrite vt520 entry based on vt420 -TD
-+
-+20120505
-+ + remove p6 (bold) from opus3n1+ for consistency -TD
-+ + remove acs stuff from env230 per clues in Ingres termcap -TD
-+ + modify env230 sgr/sgr0 to match other capabilities -TD
-+ + modify smacs/rmacs in bq300-8 to match sgr/sgr0 -TD
-+ + make sgr for dku7202 agree with other caps -TD
-+ + make sgr for ibmpc agree with other caps -TD
-+ + make sgr for tek4107 agree with other caps -TD
-+ + make sgr for ndr9500 agree with other caps -TD
-+ + make sgr for sco-ansi agree with other caps -TD
-+ + make sgr for d410 agree with other caps -TD
-+ + make sgr for d210 agree with other caps -TD
-+ + make sgr for d470c, d470c-7b agree with other caps -TD
-+ + remove redundant AC_DEFINE for NDEBUG versus Makefile definition.
-+ + fix a back-link in _nc_delink_entry(), which is needed if ncurses is
-+ configured with --enable-termcap and --disable-getcap.
-+
-+20120428
-+ + fix some inconsistencies between vt320/vt420, e.g., cnorm/civis -TD
-+ + add eslok flag to dec+sl -TD
-+ + dec+sl applies to vt320 and up -TD
-+ + drop wsl width from xterm+sl -TD
-+ + reuse xterm+sl in putty and nsca-m -TD
-+ + add ansi+tabs to vt520 -TD
-+ + add ansi+enq to vt220-vt520 -TD
-+ + fix a compiler warning in example in ncurses-intro.doc (Paul Waring).
-+ + added paragraph in keyname manpage telling how extended capabilities
-+ are interpreted as key definitions.
-+ + modify tic's check of conflicting key definitions to include extended
-+ capability strings in addition to the existing check on predefined
-+ keys.
-+
-+20120421
-+ + improve cleanup of temporary files in tic using atexit().
-+ + add msgr to vt420, similar DEC vtXXX entries -TD
-+ + add several missing vt420 capabilities from vt220 -TD
-+ + factor out ansi+pp from several entries -TD
-+ + change xterm+sl and xterm+sl-twm to include only the status-line
-+ capabilities and not "use=xterm", making them more generally useful
-+ as building-blocks -TD
-+ + add dec+sl building block, as example -TD
-+
-+20120414
-+ + add XT to some terminfo entries to improve usefulness for other
-+ applications than screen, which would like to pretend that xterm's
-+ title is a status-line. -TD
-+ + change use-clauses in ansi-mtabs, hp2626, and hp2622 based on review
-+ of ordering and overrides -TD
-+ + add consistency check in tic for screen's "XT" capability.
-+ + add section in terminfo.src summarizing the user-defined capabilities
-+ used in that file -TD
-+
-+20120407
-+ + fix an inconsistency between tic/infocmp "-x" option; tic omits all
-+ non-standard capabilities, while infocmp was ignoring only the user
-+ definable capabilities.
-+ + improve special case in tic parsing of description to allow it to be
-+ followed by terminfo capabilities. Previously the description had to
-+ be the last field on an input line to allow tic to distinguish
-+ between termcap and terminfo format while still allowing commas to be
-+ embedded in the description.
-+ + correct variable name in gen_edit.sh which broke configurability of
-+ the --with-xterm-kbs option.
-+ + revert 2011-07-16 change to "linux" alias, return to "linux2.2" -TD
-+ + further amend 20110910 change, providing for configure-script
-+ override of the "linux" terminfo entry to install and changing the
-+ default for that to "linux2.2" (Debian #665959).
-+
-+20120331
-+ + update Ada95/configure to use CF_DISABLE_ECHO (cf: 20120317).
-+ + correct order of use-clauses in st-256color -TD
-+ + modify configure script to look for gnatgcc if the Ada95 binding
-+ is built, in preference to the default gcc/cc (suggested by
-+ Nicolas Boulenguez).
-+ + modify configure script to ensure that the same -On option used for
-+ the C compiler in CFLAGS is used for ADAFLAGS rather than simply
-+ using "-O3" (suggested by Nicolas Boulenguez)
-+
-+20120324
-+ + amend an old fix so that next_char() exits properly for empty files,
-+ e.g., from reading /dev/null (cf: 20080804).
-+ + modify tic so that it can read from the standard input, or from
-+ a character device. Because tic uses seek's, this requires writing
-+ the data to a temporary file first (prompted by remark by Sven
-+ Joachim) (cf: 20000923).
-+
-+20120317
-+ + correct a check made in lib_napms.c, so that terminfo applications
-+ can again use napms() (cf: 20110604).
-+ + add a note in tic.h regarding required casts for ABSENT_BOOLEAN
-+ (cf: 20040327).
-+ + correct scripting for --disable-echo option in test/configure.
-+ + amend check for missing c++ compiler to work when no error is
-+ reported, and no variables set (cf: 20021206).
-+ + add/use configure macro CF_DISABLE_ECHO.
-+
-+20120310
-+ + fix some strict compiler warnings for abi6 and 64-bits.
-+ + use begin_va_copy/end_va_copy macros in lib_printw.c (cf: 20120303).
-+ + improve a limit-check in infocmp.c (Werner Fink):
-+
-+20120303
-+ + minor tidying of terminfo.tail, clarify reason for limitation
-+ regarding mapping of \0 to \200
-+ + minor improvement to _nc_copy_termtype(), using memcpy to replace
-+ loops.
-+ + fix no-leaks checking in test/demo_termcap.c to account for multiple
-+ calls to setupterm().
-+ + modified the libgpm change to show previous load as a problem in the
-+ debug-trace.
-+ > merge some patches from OpenSUSE rpm (Werner Fink):
-+ + ncurses-5.7-printw.dif, fixes for varargs handling in lib_printw.c
-+ + ncurses-5.7-gpm.dif, do not dlopen libgpm if already loaded by
-+ runtime linker
-+ + ncurses-5.6-fallback.dif, do not free arrays and strings from static
-+ fallback entries
-+
-+20120228
-+ + fix breakage in tic/infocmp from 20120225 (report by Werner Fink).
-+
-+20120225
-+ + modify configure script to allow creating dll's for MinGW when
-+ cross-compiling.
-+ + add --enable-string-hacks option to control whether strlcat and
-+ strlcpy may be used. The same issue applies to OpenBSD's warnings
-+ about snprintf, noting that this function is weakly standardized.
-+ + add configure checks for strlcat, strlcpy and snprintf, to help
-+ reduce bogus warnings with OpenBSD builds.
-+ + build-fix for OpenBSD 4.9 to supply consistent intptr_t declaration
-+ (cf:20111231)
-+ + update config.guess, config.sub
-+
-+20120218
-+ + correct CF_ETIP_DEFINES configure macro, making it exit properly on
-+ the first success (patch by Pierre Labastie).
-+ + improve configure macro CF_MKSTEMP by moving existence-check for
-+ mkstemp out of the AC_TRY_RUN, to help with cross-compiles.
-+ + improve configure macro CF_FUNC_POLL from luit changes to detect
-+ broken implementations, e.g., with Mac OS X.
-+ + add configure option --with-tparm-arg
-+ + build-fix for MinGW cross-compiling, so that make_hash does not
-+ depend on TTY definition (cf: 20111008).
-+
-+20120211
-+ + make sgr for xterm-pcolor agree with other caps -TD
-+ + make sgr for att5425 agree with other caps -TD
-+ + make sgr for att630 agree with other caps -TD
-+ + make sgr for linux entries agree with other caps -TD
-+ + make sgr for tvi9065 agree with other caps -TD
-+ + make sgr for ncr260vt200an agree with other caps -TD
-+ + make sgr for ncr160vt100pp agree with other caps -TD
-+ + make sgr for ncr260vt300an agree with other caps -TD
-+ + make sgr for aaa-60-dec-rv, aaa+dec agree with other caps -TD
-+ + make sgr for cygwin, cygwinDBG agree with other caps -TD
-+ + add configure option --with-xterm-kbs to simplify configuration for
-+ Linux versus most other systems.
-+
-+20120204
-+ + improved tic -D option, avoid making target directory and provide
-+ better diagnostics.
-+
-+20120128
-+ + add mach-gnu (Debian #614316, patch by Samuel Thibault)
-+ + add mach-gnu-color, tweaks to mach-gnu terminfo -TD
-+ + make sgr for sun-color agree with smso -TD
-+ + make sgr for prism9 agree with other caps -TD
-+ + make sgr for icl6404 agree with other caps -TD
-+ + make sgr for ofcons agree with other caps -TD
-+ + make sgr for att5410v1, att4415, att620 agree with other caps -TD
-+ + make sgr for aaa-unk, aaa-rv agree with other caps -TD
-+ + make sgr for avt-ns agree with other caps -TD
-+ + amend fix intended to separate fixups for acsc to allow "tic -cv" to
-+ give verbose warnings (cf: 20110730).
-+ + modify misc/gen-edit.sh to make the location of the tabset directory
-+ consistent with misc/Makefile.in, i.e., using ${datadir}/tabset
-+ (Debian #653435, patch by Sven Joachim).
-+
-+20120121
-+ + add --with-lib-prefix option to allow configuring for old/new flavors
-+ of OS/2 EMX.
-+ + modify check for gnat version to allow for year, as used in FreeBSD
-+ port.
-+ + modify check_existence() in db_iterator.c to simply check if the
-+ path is a directory or file, according to the need. Checking for
-+ directory size also gives no usable result with OS/2 (cf: 20120107).
-+ + support OS/2 kLIBC (patch by KO Myung-Han).
-+
-+20120114
-+ + several improvements to test/movewindow.c (prompted by discussion on
-+ Linux Mint forum):
-+ + modify movement commands to make them continuous
-+ + rewrote the test for mvderwin
-+ + rewrote the test for recursive mvwin
-+ + split-out reusable CF_WITH_NCURSES_ETC macro in test/configure.in
-+ + updated configure macro CF_XOPEN_SOURCE, build-fixes for Mac OS X
-+ and OpenBSD.
-+ + regenerated html manpages.
-+
-+20120107
-+ + various improvments for MinGW (Juergen Pfeifer):
-+ + modify stat() calls to ignore the st_size member
-+ + drop mk-dlls.sh script.
-+ + change recommended regular expression library.
-+ + modify rain.c to allow for threaded configuraton.
-+ + modify tset.c to allow for case when size-change logic is not used.
-+
-+20111231
-+ + modify toe's report when -a and -s options are combined, to add
-+ a column showing which entries belong to a given database.
-+ + add -s option to toe, to sort its output.
-+ + modify progs/toe.c, simplifying use of db-iterator results to use
-+ caching improvements from 20111001 and 20111126.
-+ + correct generation of pc-files when ticlib or termlib options are
-+ given to rename the corresponding tic- or tinfo-libraries (report
-+ by Sven Joachim).
-+
-+20111224
-+ + document a portability issue with tput, i.e., that scripts which work
-+ with ncurses may fail in other implementations that do no parameter
-+ analysis.
-+ + add putty-sco entry -TD
-+
-+20111217
-+ + review/fix places in manpages where --program-prefix configure option
-+ was not being used.
-+ + add -D option to infocmp, to show the database locations that it
-+ could use.
-+ + fix build for the special case where term-driver, ticlib and termlib
-+ are all enabled. The terminal driver depends on a few features in
-+ the base ncurses library, so tic's dependencies include both ncurses
-+ and termlib.
-+ + fix build work for term-driver when --enable-wgetch-events option is
-+ enabled.
-+ + use <stdint.h> types to fix some questionable casts to void*.
-+
-+20111210
-+ + modify configure script to check if thread library provides
-+ pthread_mutexattr_settype(), e.g., not provided by Solaris 2.6
-+ + modify configure script to suppress check to define _XOPEN_SOURCE
-+ for IRIX64, since its header files have a conflict versus
-+ _SGI_SOURCE.
-+ + modify configure script to add ".pc" files for tic- and
-+ tinfo-libraries, which were omitted in recent change (cf: 20111126).
-+ + fix inconsistent checks on $PKG_CONFIG variable in configure script.
-+
-+20111203
-+ + modify configure-check for etip.h dependencies, supplying a temporary
-+ copy of ncurses_dll.h since it is a generated file (prompted by
-+ Debian #646977).
-+ + modify CF_CPP_PARAM_INIT "main" function to work with current C++.
-+
-+20111126
-+ + correct database iterator's check for duplicate entries
-+ (cf: 20111001).
-+ + modify database iterator to ignore $TERMCAP when it is not an
-+ absolute pathname.
-+ + add -D option to tic, to show the database locations that it could
-+ use.
-+ + improve description of database locations in tic manpage.
-+ + modify the configure script to generate a list of the ".pc" files to
-+ generate, rather than deriving the list from the libraries which have
-+ been built (patch by Mike Frysinger).
-+ + use AC_CHECK_TOOLS in preference to AC_PATH_PROGS when searching for
-+ ncurses*-config, e.g., in Ada95/configure and test/configure (adapted
-+ from patch by Mike Frysinger).
-+
-+20111119
-+ + remove obsolete/conflicting fallback definition for _POSIX_SOURCE
-+ from curses.priv.h, fixing a regression with IRIX64 and Tru64
-+ (cf: 20110416)
-+ + modify _nc_tic_dir() to ensure that its return-value is nonnull,
-+ i.e., the database iterator was not initialized. This case is needed
-+ to when tic is translating to termcap, rather than loading the
-+ database (cf: 20111001).
-+
-+20111112
-+ + add pccon entries for OpenBSD console (Alexei Malinin).
-+ + build-fix for OpenBSD 4.9 with gcc 4.2.1, setting _XOPEN_SOURCE to
-+ 600 to work around inconsistent ifdef'ing of wcstof between C and
-+ C++ header files.
-+ + modify capconvert script to accept more than exact match on "xterm",
-+ e.g., the "xterm-*" variants, to exclude from the conversion (patch
-+ by Robert Millan).
-+ + add -lc_r as alternative for -lpthread, allows build of threaded code
-+ in older FreeBSD machines.
-+ + build-fix for MirBSD, which fails when either _XOPEN_SOURCE or
-+ _POSIX_SOURCE are defined.
-+ + fix a typo misc/Makefile.in, used in uninstalling pc-files.
-+
-+20111030
-+ + modify make_db_path() to allow creating "terminfo.db" in the same
-+ directory as an existing "terminfo" directory. This fixes a case
-+ where switching between hashed/filesystem databases would cause the
-+ new hashed database to be installed in the next best location -
-+ root's home directory.
-+ + add variable cf_cv_prog_gnat_correct to those passed to
-+ config.status, fixing a problem with Ada95 builds (cf: 20111022).
-+ + change feature test from _XPG5 to _XOPEN_SOURCE in two places, to
-+ accommodate broken implementations for _XPG6.
-+ + eliminate usage of NULL symbol from etip.h, to reduce header
-+ interdependencies.
-+ + add configure check to decide when to add _XOPEN_SOURCE define to
-+ compiler options, i.e., for Solaris 10 and later (cf: 20100403).
-+ This is a workaround for gcc 4.6, which fails to build the c++
-+ binding if that symbol is defined by the application, due to
-+ incorrectly combining the corresponding feature test macros
-+ (report by Peter Kruse).
-+
-+20111022
-+ + correct logic for discarding mouse events, retaining the partial
-+ events used to build up click, double-click, etc, until needed
-+ (cf: 20110917).
-+ + fix configure script to avoid creating unused Ada95 makefile when
-+ gnat does not work.
-+ + cleanup width-related gcc 3.4.3 warnings for 64-bit platform, for the
-+ internal functions of libncurses. The external interface of courses
-+ uses bool, which still produces these warnings.
-+
-+20111015
-+ + improve description of --disable-tic-depends option to make it
-+ clear that it may be useful whether or not the --with-termlib
-+ option is also given (report by Sven Joachim).
-+ + amend termcap equivalent for set_pglen_inch to use the X/Open
-+ "YI" rather than the obsolete Solaris 2.5 "sL" (cf: 990109).
-+ + improve manpage for tgetent differences from termcap library.
-+
-+20111008
-+ + moved static data from db_iterator.c to lib_data.c
-+ + modify db_iterator.c for memory-leak checking, fix one leak.
-+ + modify misc/gen-pkgconfig.in to use Requires.private for the parts
-+ of ncurses rather than Requires, as well as Libs.private for the
-+ other library dependencies (prompted by Debian #644728).
-+
-+20111001
-+ + modify tic "-K" option to only set the strict-flag rather than force
-+ source-output. That allows the same flag to control the parser for
-+ input and output of termcap source.
-+ + modify _nc_getent() to ignore backslash at the end of a comment line,
-+ making it consistent with ncurses' parser.
-+ + restore a special-case check for directory needed to make termcap
-+ text files load as if they were databases (cf: 20110924).
-+ + modify tic's resolution/collision checking to attempt to remove the
-+ conflicting alias from the second entry in the pair, which is
-+ normally following in the source file. Also improved the warning
-+ message to make it simpler to see which alias is the problem.
-+ + improve performance of the database iterator by caching search-list.
-+
-+20110925
-+ + add a missing "else" in changes to _nc_read_tic_entry().
-+
-+20110924
-+ + modify _nc_read_tic_entry() so that hashed-database is checked before
-+ filesystem.
-+ + updated CF_CURSES_LIBS check in test/configure script.
-+ + modify configure script and makefiles to split TIC_ARGS and
-+ TINFO_ARGS into pieces corresponding to LDFLAGS and LIBS variables,
-+ to help separate searches for tic- and tinfo-libraries (patch by Nick
-+ Alcock aka "Nix").
-+ + build-fix for lib_mouse.c changes (cf: 20110917).
-+
-+20110917
-+ + fix compiler warning for clang 2.9
-+ + improve merging of mouse events (integrated patch by Damien
-+ Guibouret).
-+ + correct mask-check used in lib_mouse for wheel mouse buttons 4/5
-+ (patch by Damien Guibouret).
-+
-+20110910
-+ + modify misc/gen_edit.sh to select a "linux" entry which works with
-+ the current kernel rather than assuming it is always "linux3.0"
-+ (cf: 20110716).
-+ + revert a change to getmouse() which had the undesirable side-effect
-+ of suppressing button-release events (report by Damien Guibouret,
-+ cf: 20100102).
-+ + add xterm+kbs fragment from xterm #272 -TD
-+ + add configure option --with-pkg-config-libdir to provide control over
-+ the actual directory into which pc-files are installed, do not use
-+ the pkg-config environment variables (discussion with Frederic L W
-+ Meunier).
-+ + add link to mailing-list archive in announce.html.in, as done in
-+ FAQ (prompted by question by Andrius Bentkus).
-+ + improve manpage install by adjusting the "#include" examples to
-+ show the ncurses-subdirectory used when --disable-overwrite option
-+ is used.
-+ + install an alias for "curses" to the ncurses manpage, tied to the
-+ --with-curses-h configure option (suggested by Reuben Thomas).
-+
-+20110903
-+ + propagate error-returns from wresize, i.e., the internal
-+ increase_size and decrease_size functions through resize_term (report
-+ by Tim van der Molen, cf: 20020713).
-+ + fix typo in tset manpage (patch by Sven Joachim).
-+
-+20110820
-+ + add a check to ensure that termcap files which might have "^?" do
-+ not use the terminfo interpretation as "\177".
-+ + minor cleanup of X-terminal emulator section of terminfo.src -TD
-+ + add terminator entry -TD
-+ + add simpleterm entry -TD
-+ + improve wattr_get macros by ensuring that if the window pointer is
-+ null, then the attribute and color values returned will be zero
-+ (cf: 20110528).
-+
-+20110813
-+ + add substitution for $RPATH_LIST to misc/ncurses-config.in
-+ + improve performance of tic with hashed-database by caching the
-+ database connection, using atexit() to cleanup.
-+ + modify treatment of 2-character aliases at the beginning of termcap
-+ entries so they are not counted in use-resolution, since these are
-+ guaranteed to be unique. Also ignore these aliases when reporting
-+ the primary name of the entry (cf: 20040501)
-+ + double-check gn (generic) flag in terminal descriptions to
-+ accommodate old/buggy termcap databases which misused that feature.
-+ + minor fixes to _nc_tgetent(), ensure buffer is initialized even on
-+ error-return.
-+
-+20110807
-+ + improve rpath fix from 20110730 by ensuring that the new $RPATH_LIST
-+ variable is defined in the makefiles which use it.
-+ + build-fix for DragonFlyBSD's pkgsrc in test/configure script.
-+ + build-fixes for NetBSD 5.1 with termcap support enabled.
-+ + corrected k9 in dg460-ansi, add other features based on manuals -TD
-+ + improve trimming of whitespace at the end of terminfo/termcap output
-+ from tic/infocmp.
-+ + when writing termcap source, ensure that colons in the description
-+ field are translated to a non-delimiter, i.e., "=".
-+ + add "-0" option to tic/infocmp, to make the termcap/terminfo source
-+ use a single line.
-+ + add a null-pointer check when handling the $CC variable.
-+
-+20110730
-+ + modify configure script and makefiles in c++ and progs to allow the
-+ directory used for rpath option to be overridden, e.g., to work
-+ around updates to the variables used by tic during an install.
-+ + add -K option to tic/infocmp, to provide stricter BSD-compatibility
-+ for termcap output.
-+ + add _nc_strict_bsd variable in tic library which controls the
-+ "strict" BSD termcap compatibility from 20110723, plus these
-+ features:
-+ + allow escapes such as "\8" and "\9" when reading termcap
-+ + disallow "\a", "\e", "\l", "\s" and "\:" escapes when reading
-+ termcap files, passing through "a", "e", etc.
-+ + expand "\:" as "\072" on output.
-+ + modify _nc_get_token() to reset the token's string value in case
-+ there is a string-typed token lacking the "=" marker.
-+ + fix a few memory leaks in _nc_tgetent.
-+ + fix a few places where reading from a termcap file could refer to
-+ freed memory.
-+ + add an overflow check when converting terminfo/termcap numeric
-+ values, since terminfo stores those in a short, and they must be
-+ positive.
-+ + correct internal variables used for translating to termcap "%>"
-+ feature, and translating from termcap %B to terminfo, needed by
-+ tctest (cf: 19991211).
-+ + amend a minor fix to acsc when loading a termcap file to separate it
-+ from warnings needed for tic (cf: 20040710)
-+ + modify logic in _nc_read_entry() and _nc_read_tic_entry() to allow
-+ a termcap file to be handled via TERMINFO_DIRS.
-+ + modify _nc_infotocap() to include non-mandatory padding when
-+ translating to termcap.
-+ + modify _nc_read_termcap_entry(), passing a flag in the case where
-+ getcap is used, to reduce interactive warning messages.
-+
-+20110723
-+ + add a check in start_color() to limit color-pairs to 256 when
-+ extended colors are not supported (patch by David Benjamin).
-+ + modify setcchar to omit no-longer-needed OR'ing of color pair in
-+ the SetAttr() macro (patch by David Benjamin).
-+ + add kich1 to sun terminfo entry (Yuri Pankov)
-+ + use bold rather than reverse for smso in sun-color terminfo entry
-+ (Yuri Pankov).
-+ + improve generation of termcap using tic/infocmp -C option, e.g.,
-+ to correspond with 4.2BSD (prompted by discussion with Yuri Pankov
-+ regarding Schilling's test program):
-+ + translate %02 and %03 to %2 and %3 respectively.
-+ + suppress string capabilities which use %s, not supported by tgoto
-+ + use \040 rather than \s
-+ + expand null characters as \200 rather than \0
-+ + modify configure script to support shared libraries for DragonFlyBSD.
-+
-+20110716
-+ + replace an assert() in _nc_Free_Argument() with a regular null
-+ pointer check (report/analysis by Franjo Ivancic).
-+ + modify configure --enable-pc-files option to take into account the
-+ PKG_CONFIG_PATH variable (report by Frederic L W Meunier).
-+ + add/use xterm+tmux chunk from xterm #271 -TD
-+ + resync xterm-new entry from xterm #271 -TD
-+ + add E3 extended capability to linux-basic (Miroslav Lichvar)
-+ + add linux2.2, linux2.6, linux3.0 entries to give context for E3 -TD
-+ + add SI/SO change to linux2.6 entry (Debian #515609) -TD
-+ + fix inconsistent tabset path in pcmw (Todd C. Miller).
-+ + remove a backslash which continued comment, obscuring altos3
-+ definition with OpenBSD toolset (Nicholas Marriott).
-+
-+20110702
-+ + add workaround from xterm #271 changes to ensure that compiler flags
-+ are not used in the $CC variable.
-+ + improve support for shared libraries, tested with AIX 5.3, 6.1 and
-+ 7.1 with both gcc 4.2.4 and cc.
-+ + modify configure checks for AIX to include release 7.x
-+ + add loader flags/libraries to libtool options so that dynamic loading
-+ works properly, adapted from ncurses-5.7-ldflags-with-libtool.patch
-+ at gentoo prefix repository (patch by Michael Haubenwallner).
-+
-+20110626
-+ + move include of nc_termios.h out of term_entry.h, since the latter
-+ is installed, e.g., for tack while the former is not (report by
-+ Sven Joachim).
-+
-+20110625
-+ + improve cleanup() function in lib_tstp.c, using _exit() rather than
-+ exit() and checking for SIGTERM rather than SIGQUIT (prompted by
-+ comments forwarded by Nicholas Marriott).
-+ + reduce name pollution from term.h, moving fallback #define's for
-+ tcgetattr(), etc., to new private header nc_termios.h (report by
-+ Sergio NNX).
-+ + two minor fixes for tracing (patch by Vassili Courzakis).
-+ + improve trace initialization by starting it in use_env() and
-+ ripoffline().
-+ + review old email, add details for some changelog entries.
-+
-+20110611
-+ + update minix entry to minix 3.2 (Thomas Cort).
-+ + fix a strict compiler warning in change to wattr_get (cf: 20110528).
-+
-+20110604
-+ + fixes for MirBSD port:
-+ + set default prefix to /usr.
-+ + add support for shared libraries in configure script.
-+ + use S_ISREG and S_ISDIR consistently, with fallback definitions.
-+ + add a few more checks based on ncurses/link_test.
-+ + modify MKlib_gen.sh to handle sp-funcs renaming of NCURSES_OUTC type.
-+
-+20110528
-+ + add case to CF_SHARED_OPTS for Interix (patch by Markus Duft).
-+ + used ncurses/link_test to check for behavior when the terminal has
-+ not been initialized and when an application passes null pointers
-+ to the library. Added checks to cover this (prompted by Redhat
-+ #707344).
-+ + modify MKlib_gen.sh to make its main() function call each function
-+ with zero parameters, to help find inconsistent checking for null
-+ pointers, etc.
-+
-+20110521
-+ + fix warnings from clang 2.7 "--analyze"
-+
-+20110514
-+ + compiler-warning fixes in panel and progs.
-+ + modify CF_PKG_CONFIG macro, from changes to tin -TD
-+ + modify CF_CURSES_FUNCS configure macro, used in test directory
-+ configure script:
-+ + work around (non-optimizer) bug in gcc 4.2.1 which caused
-+ test-expression to be omitted from executable.
-+ + force the linker to see a link-time expression of a symbol, to
-+ help work around weak-symbol issues.
-+
-+20110507
-+ + update discussion of MKfallback.sh script in INSTALL; normally the
-+ script is used automatically via the configured makefiles. However
-+ there are still occasions when it might be used directly by packagers
-+ (report by Gunter Schaffler).
-+ + modify misc/ncurses-config.in to omit the "-L" option from the
-+ "--libs" output if the library directory is /usr/lib.
-+ + change order of tests for curses.h versus ncurses.h headers in the
-+ configure scripts for Ada95 and test-directories, to look for
-+ ncurses.h, from fixes to tin -TD
-+ + modify ncurses/tinfo/access.c to account for Tandem's root uid
-+ (report by Joachim Schmitz).
-+
-+20110430
-+ + modify rules in Ada95/src/Makefile.in to ensure that the PIC option
-+ is not used when building a static library (report by Nicolas
-+ Boulenguez):
-+ + Ada95 build-fix for big-endian architectures such as sparc. This
-+ undoes one of the fixes from 20110319, which added an "Unused" member
-+ to representation clauses, replacing that with pragmas to suppress
-+ warnings about unused bits (patch by Nicolas Boulenguez).
-+
-+20110423
-+ + add check in test/configure for use_window, use_screen.
-+ + add configure-checks for getopt's variables, which may be declared
-+ as different types on some Unix systems.
-+ + add check in test/configure for some legacy curses types of the
-+ function pointer passed to tputs().
-+ + modify init_pair() to accept -1's for color value after
-+ assume_default_colors() has been called (Debian #337095).
-+ + modify test/background.c, adding commmand-line options to demonstrate
-+ assume_default_colors() and use_default_colors().
-+
-+20110416
-+ + modify configure script/source-code to only define _POSIX_SOURCE if
-+ the checks for sigaction and/or termios fail, and if _POSIX_C_SOURCE
-+ and _XOPEN_SOURCE are undefined (report by Valentin Ochs).
-+ + update config.guess, config.sub
-+
-+20110409
-+ + fixes to build c++ binding with clang 3.0 (patch by Alexander
-+ Kolesen).
-+ + add check for unctrl.h in test/configure, to work around breakage in
-+ some ncurses packages.
-+ + add "--disable-widec" option to test/configure script.
-+ + add "--with-curses-colr" and "--with-curses-5lib" options to the
-+ test/configure script to address testing with very old machines.
-+
- 20110404 5.9 release for upload to ftp.gnu.org
-
- 20110402
-@@ -100,7 +1799,7 @@
- + modify configure script to provide value for HTML_DIR in
- Ada95/gen/Makefile.in, which depends on whether the Ada95 binding is
- distributed separately (report by Nicolas Boulenguez).
-- + modify configure script to add -g and/or -O3 to ADAFLAGS if the
-+ + modify configure script to add "-g" and/or "-O3" to ADAFLAGS if the
- CFLAGS for the build has these options.
- + amend change from 20070324, to not add 1 to the result of getmaxx
- and getmaxy in the Ada binding (report by Nicolas Boulenguez for
-@@ -155,7 +1854,7 @@
- 20110212
- + regenerated html manpages.
- + use _tracef() in show_where() function of tic, to work correctly with
-- special case of trace configuration.
-+ special case of trace configuration.
-
- 20110205
- + add xterm-utf8 entry as a demo of the U8 feature -TD
-@@ -219,7 +1918,7 @@
- version which works with termcap.
- + remove obsolete emacs "Local Variables" section from documentation
- (request by Sven Joachim).
-- + update doc/html/index.html to include NCURSES-Programming-HOWTO.html
-+ + update doc/html/index.html to include NCURSES-Programming-HOWTO.html
- (report by Sven Joachim).
-
- 20101128
-@@ -294,8 +1993,8 @@
- Sven Joachim).
- + add parameterized cursor-controls to linux-basic (report by Dae) -TD
- > patch by Juergen Pfeifer:
-- + document how to build 32-bit libraries in README.MinGW
-- + fixes to filename computation in mk-dlls.sh.in
-+ + document how to build 32-bit libraries in README.MinGW
-+ + fixes to filename computation in mk-dlls.sh.in
- + use POSIX locale in mk-dlls.sh.in rather than en_US (report by Sven
- Joachim).
- + add a check in mk-dlls.sh.in to obtain the size of a pointer to
-@@ -478,7 +2177,7 @@
- 20100417
- + modify _nc_capcmp() to work with cancelled strings.
- + correct translation of "^" in _nc_infotocap(), used to transform
-- terminfo to termcap strings
-+ terminfo to termcap strings
- + add configure --disable-rpath-hack, to allow disabling the feature
- which adds rpath options for libraries in unusual places.
- + improve CF_RPATH_HACK_2 by checking if the rpath option for a given
-@@ -704,7 +2403,7 @@
- + quiet some pedantic gcc warnings.
- + modify _nc_wgetch() to check for a -1 in the fifo, e.g., after a
- SIGWINCH, and discard that value, to avoid confusing application
-- (patch by Eygene Ryabinkin, FreeBSD bin/136223).
-+ (patch by Eygene Ryabinkin, FreeBSD #136223).
-
- 20091017
- + modify handling of $PKG_CONFIG_LIBDIR to use only the first item in
-@@ -784,7 +2483,7 @@
-
- 20090815
- + correct use of terminfo capabilities for initializing soft-keys,
-- broken in 20090509 merging.
-+ broken in 20090510 merging.
- + modify wgetch() to ensure it checks SIGWINCH when it gets an error
- in non-blocking mode (patch by Clemens Ladisch).
- + use PATH_SEPARATOR symbol when substituting into run_tic.sh, to
-@@ -823,7 +2522,7 @@
-
- 20090718
- + fix a null-pointer check in _nc_format_slks() in lib_slk.c, from
-- 20070704 changes.
-+ 20090704 changes.
- + modify _nc_find_type_entry() to use hashing.
- + make CCHARW_MAX value configurable, noting that changing this would
- change the size of cchar_t, and would be ABI-incompatible.
-@@ -929,7 +2628,7 @@
- intermediate variable LT_UNDEF in the configure script, and then
- using that in the libtool link-commands.
- + fix an missing use of NCURSES_PUBLIC_VAR() in tinfo/MKcodes.awk
-- from 2009031 changes.
-+ from 20090321 changes.
- + improve mk-1st.awk script by writing separate cases for the
- LIBTOOL_LINK command, depending on which library (ncurses, ticlib,
- termlib) is to be linked.
-@@ -1533,8 +3232,8 @@
- that library.
- + add/modify null-pointer checks in several functions for SP and/or
- the WINDOW* parameter (report by Thorben Krueger).
-- + fixes for field_buffer() in formw library (see Redhat Bugzilla
-- #310071, patches by Miroslav Lichvar).
-+ + fixes for field_buffer() in formw library (see Redhat #310071,
-+ patches by Miroslav Lichvar).
- + improve performance of NCURSES_CHAR_EQ code (patch by Miroslav
- Lichvar).
- + update/improve mlterm and rxvt terminfo entries, e.g., for
-@@ -1645,7 +3344,7 @@
- + modify configure script to quiet c++ build with libtool when the
- --disable-echo option is used.
- + modify configure script to disable ada95 if libtool is selected,
-- writing a warning message (addresses FreeBSD ports/114493).
-+ writing a warning message (addresses FreeBSD #114493).
- + update config.guess, config.sub
-
- 20070707
-@@ -2130,8 +3829,7 @@
- + workaround for 20050806 ifdef's change to allow visbuf.c to compile
- when using --with-termlib --with-trace options.
- + improve tgetstr() by making the return value point into the user's
-- buffer, if provided (patch by Miroslav Lichvar (see Redhat Bugzilla
-- #202480)).
-+ buffer, if provided (patch by Miroslav Lichvar (see Redhat #202480)).
- + correct libraries needed for foldkeys (report by Stanislav Ievlev)
-
- 20060826
-@@ -2144,10 +3842,10 @@
- source output (Debian #378783).
- + modify configure script to ensure that if the C compiler is used
- rather than the loader in making shared libraries, the $(CFLAGS)
-- variable is also used (Redhat Bugzilla #199369).
-+ variable is also used (Redhat #199369).
- + port hashed-db code to db2 and db3.
- + fix a bug in tgetent() from 20060625 and 20060715 changes
-- (patch/analysis by Miroslav Lichvar (see Redhat Bugzilla #202480)).
-+ (patch/analysis by Miroslav Lichvar (see Redhat #202480)).
-
- 20060805
- + updated xterm function-keys terminfo to match xterm #216 -TD
-@@ -2939,7 +4637,7 @@
- of cur_term if the same output was selected. This now reuses it only
- when setupterm() is called from tgetent(), which has no notion of
- separate SCREENs. Note that tgetent() must be called after initscr()
-- or newterm() to use this feature (Redhat Bugzilla #140326).
-+ or newterm() to use this feature (Redhat #140326).
- + add a check in CF_BUILD_CC macro to ensure that developer has given
- the --with-build-cc option when cross-compiling (report by Alexandre
- Campo).
-@@ -3032,7 +4730,7 @@
- entries, e.g., so it can analyze the xterm-8bit entry.
- + add morphos terminfo entry, improve amiga-8bit entry (Pavel Fedin).
- + correct translation of "%%" in terminfo format to termcap, e.g.,
-- using "tic -C" (Redhat Bugzilla #130921).
-+ using "tic -C" (Redhat #130921).
- + modified configure script CF_XOPEN_SOURCE macro to ensure that if
- it defines _POSIX_C_SOURCE, that it defines it to a specific value
- (comp.os.stratus newsgroup comment).
-@@ -3043,9 +4741,9 @@
- However that did find a coding error in Assume_Default_Colors().
- + modify several terminfo entries to ensure xterm mouse and cursor
- visibility are reset in rs2 string: hurd, putty, gnome,
-- konsole-base, mlterm, Eterm, screen (Debian #265784, #55637). The
-- xterm entries are left alone - old ones for compatibility, and the
-- new ones do not require this change. -TD
-+ konsole-base, mlterm, Eterm, screen (Debian #265784, Debian #55637).
-+ The xterm entries are left alone - old ones for compatibility, and
-+ the new ones do not require this change. -TD
-
- 20040814
- + fake a SIGWINCH in newterm() to accommodate buggy terminal emulators
-@@ -3076,8 +4774,8 @@
- + modify "tic -cv" to ignore delays when comparing strings. Also
- modify it to ignore a canceled sgr string, e.g., for terminals which
- cannot properly combine attributes in one control sequence.
-- + corrections for gnome and konsole entries (Redhat Bugzilla #122815,
-- patch by Hans de Goede)
-+ + corrections for gnome and konsole entries (Redhat #122815, patch by
-+ Hans de Goede)
- > terminfo updates -TD
- + make ncsa-m rmacs/smacs consistent with sgr
- + add sgr, rc/sc and ech to syscons entries
-@@ -3090,7 +4788,7 @@
- > terminfo updates -TD
- + add xterm-pc-fkeys
- + review/update gnome and gnome-rh90 entries (prompted by Redhat
-- Bugzilla #122815).
-+ #122815).
- + review/update konsole entries
- + add sgr, correct sgr0 for kterm and mlterm
- + correct tsl string in kterm
-@@ -3503,7 +5201,7 @@
- generated when cross-compiling for DJGPP.
- + modify infocmp to omit check for $TERM for operations that do not
- require it, e.g., "infocmp -e" used to build fallback list (report by
-- Koblinger Egmont).
-+ Egmont Koblinger).
-
- 20031004
- + add terminfo entries for DJGPP.
-@@ -4204,7 +5902,7 @@
- + add a check in kgetch() for cooked characters in the fifo to avoid
- calling fifo_push() when a KEY_RESIZE is available (report/analysis
- by Sam Varshavchik <mrsam@courier-mta.com>).
-- + fix an overlooked case for bugzilla #68199 (Philippe Blain).
-+ + fix an overlooked case for Redhat #68199 (Philippe Blain).
- + ensure clearerr() is called before using ferror() e.g., in
- lib_screen.c (report by Philippe Blain).
-
-@@ -4212,7 +5910,7 @@
- + modify lib_screen.c and lib_newwin.c to maintain the SCREEN-specific
- pointers for curscr/stdscr/newscr when scr_save() and scr_restore()
- modify the global curscr/stdscr/newscr variables. Fixes Redhat
-- bugzilla #68199 dated 2002-07-07.
-+ #68199.
- + add checks for null pointer in calls to tparm() and tgoto() based on
- FreeBSD bug report. If ncurses were built with termcap support, and
- the first call to tgoto() were a zero-length string, the result would
-@@ -4245,7 +5943,7 @@
- Olaf Buddenhagen <olafBuddenhagen@web.de>).
- + modified wresize() to ensure that a failed realloc will not corrupt
- the window structure, and to make subwindows fit within the resized
-- window (completes Debian #87678, #101699)
-+ window (completes Debian #87678, Debian #101699)
-
- 20020803
- + fix an off-by-one in lib_pad.c check for limits of pad (patch by
-@@ -4940,9 +6638,9 @@
- which may be in libutf8.
- + remove some unnecessary text from curs_extend.3x and
- default_colors.3x which caused man-db to make incorrect symbolic
-- links (Debian bug report #99550).
-+ links (Debian #99550).
- + add configure check if cast for _IO_va_list is needed to compile
-- C++ vscan code (Debian bug report #97945).
-+ C++ vscan code (Debian #97945).
- > several patches from Sven Verdoolaege:
- + correct code that used non-standard auto-initialization of a struct,
- which gcc allows (report by Larry Virden).
-@@ -5077,7 +6775,7 @@
- + add some examples of customizing screen's terminfo:
- screen.xterm-xfree86, screen.xterm-r6, screen.teraterm -TD
- + modify screen's terminfo entry to match the khome/kend in screen
-- 3.09.08 (Debian bug report #92215).
-+ 3.09.08 (Debian #92215).
- + correct a memory leak in forms library (report by Stefan Vogtner
- <stefan@vogtner.de>) (patch by Juergen Pfeifer).
-
-@@ -5091,12 +6789,12 @@
- + add .cc.ii rule to c++ makefile, to get preprocessor output for
- debugging.
- + correct configure script handling of @keyword@ substitutions when the
-- --with-manpage-renames option is given (cf: 20000715, fixes Debian
-- bug #89939).
-+ --with-manpage-renames option is given (cf: 20000715, fixes Debian
-+ #89939).
- + report stack underflow/overflow in tparm() when tic -cv option is
- given.
- + remove spurious "%|" operator from xterm-xfree86 terminfo entry,
-- (reported by Adam Costello <amc@cs.berkeley.edu>, Debian bug #89222).
-+ (reported by Adam Costello <amc@cs.berkeley.edu>, Debian #89222).
-
- 20010310
- + cleanup of newdemo.c, fixing some ambiguous expressions noted by gcc
-@@ -5800,7 +7498,7 @@
- + correct spelling error in terminfo entry name: bq300-rv was given as
- bg300-rv in esr's version.
- + modify redrawwin() macro so its parameter is fully parenthesized
-- (fixes Debian bug report #61088).
-+ (fixes Debian #61088).
- + correct formatting error in dump_entry() which set incorrect column
- value when no newline trimming was needed at the end of an entry,
- before appending "use=" clauses (cf: 960406).
-@@ -6530,7 +8228,7 @@
- handling in lynx (reported by Kim DeVaughn).
-
- 990306 pre-release
-- + add -G option to tic and infocmp, to reverse the -g option.
-+ + add -G option to tic and infocmp, to reverse the "-g" option.
- + recode functions in name_match.c to avoid use of strncpy, which
- caused a 4-fold slowdown in tic (cf: 980530).
- + correct a few warnings about sign-extension in recent changes.
-@@ -6901,7 +8599,7 @@
- since that is a little more efficient.
- + minor correction to infocmp to avoid displaying "difference" between
- two capabilities that are rendered in equivalent forms.
-- + add -g option to tic/infocmp to force character constants to be
-+ + add "-g" option to tic/infocmp to force character constants to be
- displayed in quoted form. Otherwise their decimal values are shown.
- + modify setupterm so that cancelled strings are treated the same as
- absent strings, cancelled and absent booleans false (does not affect
-@@ -7640,7 +9338,7 @@
- + remove _nc_err_abort() calls when write_entry.c finds a directory but
- cannot write to it, e.g., when translating part/all of /etc/termcap
- (reported by Andreas Jaeger <aj@arthur.rhein-neckar.de>).
-- (this dates back to 951102, in 1.9.7a).
-+ (this dates back to 951102 in 1.9.7a).
- + minor ifdef fixes to compile with atac and glibc 2.0.5c
- + add check for -lgen when configuring regexpr.h
- + modify Solaris shared-library option "-d y" to "-dy" to workaround
-@@ -8109,7 +9807,7 @@
- + modify tset to look in /etc/ttys or /etc/ttytype if the configuration
- does not have getttynam().
- + extend baudrate table in tset.c to match baudrate() function.
-- + add table entries for 230400 and 460800 bd to baudrate() function.
-+ + add table entries for B230400 and B460800 to baudrate() function.
- + improve breakout logic by allowing it before the first line updated,
- which is what SVr4 curses does (patch by Alexander V. Lukyanov).
- + correct initialization of vcost in relative_move(), for cursor-down
-@@ -8979,15 +10677,18 @@
- + correction to #317.
- > patch 317 (ESR):
- + re-add _nc_hash_map
-- + modify EmitRange to maintain position as per original design.
-- + add hashtest.c, program to time the hashmap optimization.
-+ + modify EmitRange to maintain position as per original design
-+ (patch by A. Lukyanov).
-+ + modify test/ncurses.c and tputs, etc., to allow trace counting
-+ output characters.
-+ + add hashtest.c program to time the hashmap optimization.
- > patch 316 (ESR):
- + add logic to deal with magic-cookie (how was this tested?)
- (lib_doupdate.c).
- + add ncurses.c driver for magic-cookie, some fixes to ncurses.c
- > patch 315 (ESR):
-- + merged Alexander V Lukyanov's patch to use ech and rep - untested
-- (lib_doupdate.c).
-+ + merge changes to lib_doupdate.c to use ech and rep - untested
-+ (patch by Alexander V Lukyanov).
- + modified handling of interrupted system calls - untested
- (lib_getch.c, lib_twait.c).
- + new function _nc_mvcur_resume()
-@@ -9059,12 +10760,12 @@
- + corrected typo in dtterm description.
- > patch 313 (ESR):
- + add dtterm description
-- + clarify ncurses 'i' test (drop vscanf subtest)
-+ + clarify ncurses 'i' test (drop mvwscanw subtest)
-
- 960810 - snapshot
- + correct nl()/nonl() to work as per SVr4 & XSI.
- + minor fixes to ncurses.c (use 'noraw()', mvscanw return-code)
-- + refine configure-test for -g option (Tim Mooney).
-+ + refine configure-test for "-g" option (Tim Mooney).
- + correct interaction between O_BLANK and NEW_LINE request in form
- library (Juergen Pfeifer)
-
-@@ -9073,7 +10774,8 @@
- > patch 312 (ESR):
- correct terminfo.src corrupted by #310
- > patch 311 (ESR):
-- + fix idlok() and idcok() and the default of the idlok switch.
-+ + fix idlok() and idcok() and the default of the idlok switch (report
-+ by Ville Sulko).
-
- 960803 - snapshot
- + corrected tparm to handle capability strings without explicit pop
-@@ -9083,7 +10785,7 @@
- > patch 310 (ESR):
- + documentation and prototyping errors for has_color, immedok and idcok
- (reported by William P Setzer <wsetzer@pams.ncsu.edu>)
-- + updated qnx terminfo entry (by Michael Hunter)
-+ + updated qnx terminfo entry (patch by Michael Hunter)
-
- 960730
- + eliminate quoted includes in ncurses subdirectory, ensure config.h
-@@ -9095,7 +10797,7 @@
- + call cbreak() in initscr(), as per XSI & SVr4.
- + turn off hardware echo in initscr() as per XSI & SVr4
- > patch 309 (ESR):
-- + terminfo changes (9.3.10), from BRL
-+ + terminfo changes (9.3.9), from BRL
- + add more checks to terminfo parser.
- + add more symbols to infocmp.
-
-@@ -9114,6 +10816,7 @@
- > patch 308 (ESR):
- + terminfo changes (9.3.8)
- + modified logic of error-reporting in terminfo parser
-+ + fix option-processing bug in toe.
-
- 960713 - snapshot
- + always check for <sys/bsdtypes.h> since ISC needs it to declare
-@@ -9122,9 +10825,19 @@
- by Juergen Pfeifer, Mike Long)
- + add LOCAL_LDFLAGS2 symbol (Juergen Pfeifer)
- + corrected prototype for delay_output() -- bump ABI to 3.2
-- + terminfo patches #306/307 (ESR).
-+ + patch 307 (ESR):
-+ + enable more translations of nonstandard caps, and document them.
-+ + misc/terminfo.src update to 9.13.8
-+ + patch 306 (ESR):
- + moved logic that filters out rmul and rmso from setupterm to newterm
- where it is less likely to interfere with termcap applications.
-+ + cosmetic fixes to test/ncurses.c
-+ + modify open() call in ncurses/read_entry.c to use O_RDONLY symbol
-+ rather than constant (report by mib).
-+ + misc/terminfo.src sgr0 and acsc changes (report by Philippe De
-+ Muyter).
-+ + modify ncurses/comp_parse.c so that entries containing a "+" can
-+ have missing rmcup vs smcup.
-
- 960707
- + rollback ESR's #305 change to terminfo.src (it breaks existing
-@@ -9139,7 +10852,6 @@
- + make lib_vidattr.c more readable using macros.
- + filter out rmul, rmso that conflict with sgr0 when reading terminal
- descriptions.
-- + added sanity-checking of various paired string attributes (ESR).
- + work around autoconf bug, force $INSTALL to absolute path
- (reported by Zeyd).
- + modify man-page install for BSDI to install preformatted .0 files
-@@ -9152,6 +10864,12 @@
- + disable scrollok during the ncurses 'p' test; if it is enabled the
- stdscr will scroll when putting the box-corners in the lower-right
- of the screen.
-+ > patch 305 (ESR):
-+ + added sanity-checking of various paired string attributes.
-+ + misc/terminfo.src update to 9.13.7 (report by A. Lukyanov).
-+ + modify man/Makefile.in to make terminfo.5 during normal build.
-+ > patch 304 (ESR):
-+ + corrected allocation-length for $HOME/.terminfo path.
-
- 960629 - snapshot
- + check return code of _nc_mvcur_scrolln() in _nc_scroll_optimize() for
-@@ -9234,6 +10952,7 @@
- + better fix for nvi refresh-bug (Rick Marshall)
- + fix for bug in handling of interrupted keystroke waits,
- (Werner Fleck).
-+ + misc/ncurses-intro.html syntax fix (Kajiyama Tamito).
-
- 960601 - snapshot
- + auto-configure man-page compression-format and renames for Debian.
-@@ -9248,7 +10967,7 @@
- + enhancement to the control over the new PC-style soft key format.
- allow caller now to select whether or not one wants to have
- the index-line; see curs_slk.3x for documentation (Juergen Pfeifer).
-- + typos, don't use inline with -g (Philippe De Muyter)
-+ + typos, don't use inline with "-g" (Philippe De Muyter)
- + fixes for menus & wattr-, slk-functions (Juergen Pfeifer)
-
- 960526 - snapshot
-@@ -9263,6 +10982,9 @@
- + include sys/types.h in case stdlib.h does not declare size_t.
- + fixes for makefile (Tim Mooney)
- + fixes for menus & forms (Juergen Pfeifer)
-+ > patch 302 (ESR):
-+ + improve hash function (suggested by Alexander V Lukyanov).
-+ + 9.13.4 update for terminfo.src
-
- 960518 - snapshot
- + revised ncurses.c panner test, let pad abut all 4 sides of screen.
-@@ -9275,6 +10997,8 @@
- confusion, and made this check for the /usr/lib/terminfo pre-existing
- directory.
- > patches 299-301 (ESR):
-+ + html fixes (Phillippe de Muyter).
-+ + fix typo in ncurses-intro.html (report by Fabrizio Polacco).
- + added hashmap.c
- + mods to tracing, especially for ACS chars.
- + corrected off-by-one in IDCtransform.
-@@ -9294,13 +11018,21 @@
- > patches 297, 298 (ESR):
- + implement TERMINFO_DIRS, and -o option of tic
- + added TRACE_IEVENT
-- + removed boolean version of 'getm'
-- + added lib_print.c (for Rick Marshall)
-- + added has_key()
-+ + fix REQ_TOGGLE_ITEM in menu/menu_driver.c; it could select but not
-+ deselect.
-+ + added lib_print.c (request by Rick Marshall).
-+ + added has_key() (request by Juergen Pfeifer).
-+ + do not issue clrtoeol or clrtobot if the relevant portion of the line
-+ is already blank (analysis by Keith Bostic).
-+ + add parentheses for parameters of COLOR_PAIR and PAIR_NUMBER macros
-+ (analysis by Jurgen Eidt).
-+ + update screen's notion of cursor position in endwin() (analysis by
-+ Alexander Lukyanov).
- + added 't' to ncurses.c test.
- + moved delay_output() to lib_tputs.c
- + removed tparam() (was added in 1.9.9, but conflicts with emacs and
- is not part of X/Open Curses).
-+ + removed boolean version of 'getm'.
- + misc cursor & optimization fixes.
-
- 960504 - snapshot
-@@ -9326,11 +11058,20 @@
- + make TIOCGWINSZ configure test less stringent, in case user
- configures via terminal that cannot get screen size.
- > patches 295, 296 (ESR):
-- + new "-e" option of tic.
-- + fix for "infocmp -e".
-- + restore working-directory in read_termcap.c
- + split lib_kernel.c, lib_setup.c and names.c in order to reduce
- overhead for programs that use only termcap features.
-+ + new "-e" and "-h" options of tic (request by Tony Nugent).
-+ + fix bug in mandatory-delay logic in lib_tputs.c (report by Sven
-+ Verdoolaege).
-+ + fix for "infocmp -e" to emit correct initializers (reported by Manual
-+ J Novoa III).
-+ + restore working-directory in read_termcap.c (report by Kayvan
-+ Sylvan).
-+ + use "-h" option on Solaris when generating shared libraries on
-+ Solaris 2.5 to record the library name in the file, for assisting
-+ the loader (patch by Scott Kramer).
-+ + undo patch #294 changes to form and menu libraries (request by
-+ Juergen Pfeifer).
-
- 960418 - snapshot
- + use autoconf 2.9
-@@ -9338,10 +11079,22 @@
- definitions via <termios.h>, modified macros in lib_raw.c to avoid
- K&R-style substitution)
- > patches 293, 294 (ESR):
-- + mods to wgetch() in cooked mode
-- + corrected askuser() logic in tset
-- + correct interaction of endwin() with mouse processing
-+ + rewrite wsyncup(), wsyncdown(), as well as small fixes to form and
-+ menu libraries to fix echo-breakage introduced by 1.8.9, 1.9.9e
-+ changes (patches by Juergen Pfeifer).
-+ + fix compile under QNX 4.2 by defining ONLCR in lib_raw.c when
-+ __QNX__ is defined (patch by Michael Hunter).
-+ + modify setupterm() to match documentation for its return value, fix
-+ newterm to work with this change (report by Emmet Lazich).
-+ + add checks in getch() for error, return ERR as appropriate (report by
-+ Emmet Lazich).
-+ + mods to wgetch() in cooked mode (report by Pete Seebach).
-+ + corrected askuser() logic in tset (patch by Remco Treffkorn).
-+ + correct interaction of endwin() with mouse processing (report by
-+ Michael Elkins).
- + added trace support for TTY flags
-+ + update terminfo.src to 9.13.1
-+ + FreeBSD console entries (patch by Andrew Chernov).
-
- 960406
- + fixes for NeXT, ISC and HPUX auto-configure
-Index: README
-Prereq: 1.23
---- ncurses-5.9/README 2006-04-22 22:19:37.000000000 +0000
-+++ ncurses-5.9-20141206/README 2012-08-11 20:11:26.000000000 +0000
-@@ -1,5 +1,5 @@
- -------------------------------------------------------------------------------
---- Copyright (c) 1998-2004,2006 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2011,2012 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 --
-@@ -25,7 +25,7 @@
- -- sale, use or other dealings in this Software without prior written --
- -- authorization. --
- -------------------------------------------------------------------------------
---- $Id: README,v 1.23 2006/04/22 22:19:37 tom Exp $
-+-- $Id: README,v 1.25 2012/08/11 20:11:26 tom Exp $
- -------------------------------------------------------------------------------
- README file for the ncurses package
-
-@@ -78,6 +78,10 @@
- library interfaces are not binary-compatible with the non-wide-character
- version.
-
-+If you configure using the --enable-reentrant option, a "t" is appended to the
-+library names (e.g., libncursest.a) and the resulting libraries have a
-+different binary interface which makes the ncurses interface more "opaque".
-+
- The ncurses libraries implement the curses API. The panel, menu and forms
- libraries implement clones of the SVr4 panel, menu and forms APIs. The source
- code for these lives in the `ncurses', `panel', `menu', and `form' directories
-@@ -122,8 +126,9 @@
- tic -- terminfo source to binary compiler
- infocmp -- terminfo binary to source decompiler/comparator
- clear -- emits clear-screen for current terminal
-+ tabs -- set tabs on a terminal
- tput -- shell-script access to terminal capabilities.
-- toe -- table of entries utility
-+ toe -- table of entries utility
- tset -- terminal-initialization utility
-
- The first two (tic and infocmp) are used for manipulating terminfo
-@@ -153,8 +158,10 @@
- configuration scripts, porting, mods to adhere to XSI Curses in the
- areas of background color, terminal modes. Also memory leak testing,
- the wresize, default colors and key definition extensions and numerous
-- bug fixes (more than half of those enumerated in NEWS beginning with
-- the internal release 1.8.9).
-+ bug fixes -- more than half of those enumerated in NEWS beginning with
-+ the internal release 1.8.9, see
-+
-+ http://invisible-island.net/personal/changelogs.html
-
- Florian La Roche (official maintainer for FSF's ncurses 4.2)
- Beginning with release 4.2, ncurses is distributed under an MIT-style
-Index: README.MinGW
-Prereq: 1.5
---- ncurses-5.9/README.MinGW 2011-02-26 16:57:17.000000000 +0000
-+++ ncurses-5.9-20141206/README.MinGW 2012-09-22 17:46:04.000000000 +0000
-@@ -1,5 +1,5 @@
- -------------------------------------------------------------------------------
---- Copyright (c) 2008-2010,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 2008-2011,2012 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 --
-@@ -25,7 +25,7 @@
- -- sale, use or other dealings in this Software without prior written --
- -- authorization. --
- -------------------------------------------------------------------------------
---- $Id: README.MinGW,v 1.5 2011/02/26 16:57:17 tom Exp $
-+-- $Id: README.MinGW,v 1.9 2012/09/22 17:46:04 tom Exp $
- -- Author: Juergen Pfeifer
- -------------------------------------------------------------------------------
-
-@@ -39,7 +39,7 @@
- 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.
-+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
-@@ -47,7 +47,7 @@
- versions. It also comes with a working pthread implementation.
-
- The latest config and build scripts we use for MinGW have only been tested
--for the gcc-4.4 compiler toolchain (or better).
-+for the gcc-4.6.1 compiler toolchain (or better).
-
- Using MinGW is a pragmatic decision, it's the easiest way to port this
- heavily UNIX based sourcebase to native Windows. The goal is of course
-@@ -55,22 +55,13 @@
- common traditional development environments on Windows, mainly with
- Microsoft Visual Studio.
-
--If you start a bash from the MSYS environment, please make sure that the
--Microsoft Development tools are in your PATH right after the MinGW
--tools. The LIB.EXE tool is the only one needed. You need this only if
--you want to build DLLs that work with native Windows programs. If you
--don't have any Microsoft Development tools on your machine, consider
--at least to get the free "Visual C++ 2010 Express Edition".
--It contains the LIB.EXE tool. You may also use this compiler to test
--writing native Windows programs using the ncurses DLLs without using
--MinGW then for writing apps.
--
--It is necessary to unset the TERM environment variable, to activate the
--Windows console-driver.
-+The TERM environment variable must be set specially to active 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
-+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
-@@ -79,62 +70,60 @@
- 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.
-
--In order to build ncurses for the planned interop layer with .NET, we
--recommend to use these options with configure
-+I recommend using libtool to build ncurses on MinGW, because libtool
-+knows exactly how to build dll's on Windows for use with MinGW.
-+
-+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-reentrant
-+ --enable-database
-+ --disable-termcap
- --enable-sp-funcs
- --enable-term-driver
- --enable-interop
-- --with-pthread (if using TDM toolchain as recommended)
-
--This is the configuration commandline as I'm using it at the moment:
-+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):
-
- ./configure \
-- --prefix=/mingw \
-- --without-cxx-binding \
-+ --prefix=$MINGW_ROOT \
-+ --with-cxx \
- --without-ada \
- --enable-warnings \
- --enable-assertions \
-- --enable-reentrant \
-- --with-debug \
-- --with-normal \
- --disable-home-terminfo \
-+ --enable-database \
- --enable-sp-funcs \
- --enable-term-driver \
- --enable-interop \
-- --with-pthread
-+ --disable-termcap \
-+ --with-progs \
-+ --with-libtool \
-+ --enable-pc-files \
-+ --mandir=$MINGW_ROOT/share/man
-
--If you are on a 64-Bit Windows system and want to build a 32-Bit version
--of ncurses, you may use this commandline for configuration (when using
--the TDM toolchain):
--
--CC="gcc -m32" LD="ld -m32" ./configure \
-- --prefix=/mingw \
-- --without-cxx-binding \
-- --without-ada \
-- --enable-warnings \
-- --enable-assertions \
-- --enable-reentrant \
-- --with-debug \
-- --with-normal \
-- --disable-home-terminfo \
-- --enable-sp-funcs \
-- --enable-term-driver \
-- --enable-interop \
-- --with-pthread
-+Please note that it is also necessary to set this environment variable:
-
--All the options above are - like the whole Windows support -
--experimental.
-+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.
-
--In order to build the DLLs, after your regular make you must call
-+To support regular expressions properly, ncurses under MinGW should be
-+linked against the gnurx regex library, which must be built separately
-+under MinGW. See
-
-- make dlls
-+ ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/libgnurx-src-2.5.zip
-+
-+All the options above are - like the whole Windows support -
-+experimental.
-
- A lot is still TODO, e.g.:
-
-- - Wide Character support
-+ - 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
-@@ -145,5 +134,5 @@
- - Workarounds for MinGW's filesystem access are necessary to make infocmp
- work (though tic works).
-
--To support terminfo, we need to have an ioctl() simulation for the
--serial and networked Terminals.
-+To support terminfo, we would need to have an ioctl() simulation for the
-+serial and networked terminals.
-Index: VERSION
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/VERSION 2014-12-06 13:32:29.000000000 +0000
-@@ -0,0 +1 @@
-+5:0:9 5.9 20141206
-Index: aclocal.m4
-Prereq: 1.553
---- ncurses-5.9/aclocal.m4 2011-03-31 23:35:38.000000000 +0000
-+++ ncurses-5.9-20141206/aclocal.m4 2014-12-06 13:37:21.000000000 +0000
-@@ -1,5 +1,5 @@
- dnl***************************************************************************
--dnl Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+dnl Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
- dnl *
- dnl Permission is hereby granted, free of charge, to any person obtaining a *
- dnl copy of this software and associated documentation files (the *
-@@ -28,7 +28,7 @@
- dnl
- dnl Author: Thomas E. Dickey 1995-on
- dnl
--dnl $Id: aclocal.m4,v 1.553 2011/03/31 23:35:38 tom Exp $
-+dnl $Id: aclocal.m4,v 1.719 2014/12/06 13:37:21 tom Exp $
- dnl Macros used in NCURSES auto-configuration script.
- dnl
- dnl These macros are maintained separately from NCURSES. The copyright on
-@@ -62,7 +62,33 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADA_INCLUDE_DIRS version: 6 updated: 2010/02/26 19:52:07
-+dnl CF_ACVERSION_CHECK version: 5 updated: 2014/06/04 19:11:49
-+dnl ------------------
-+dnl Conditionally generate script according to whether we're using a given autoconf.
-+dnl
-+dnl $1 = version to compare against
-+dnl $2 = code to use if AC_ACVERSION is at least as high as $1.
-+dnl $3 = code to use if AC_ACVERSION is older than $1.
-+define([CF_ACVERSION_CHECK],
-+[
-+ifdef([AC_ACVERSION], ,[ifdef([AC_AUTOCONF_VERSION],[m4_copy([AC_AUTOCONF_VERSION],[AC_ACVERSION])],[m4_copy([m4_PACKAGE_VERSION],[AC_ACVERSION])])])dnl
-+ifdef([m4_version_compare],
-+[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])],
-+[CF_ACVERSION_COMPARE(
-+AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])),
-+AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_ACVERSION_COMPARE version: 3 updated: 2012/10/03 18:39:53
-+dnl --------------------
-+dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1,
-+dnl MAJOR2, MINOR2, TERNARY2,
-+dnl PRINTABLE2, not FOUND, FOUND)
-+define([CF_ACVERSION_COMPARE],
-+[ifelse(builtin([eval], [$2 < $5]), 1,
-+[ifelse([$8], , ,[$8])],
-+[ifelse([$9], , ,[$9])])])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_ADA_INCLUDE_DIRS version: 8 updated: 2013/10/14 04:24:07
- dnl -------------------
- dnl Construct the list of include-options for the C programs in the Ada95
- dnl binding.
-@@ -76,7 +102,7 @@
- ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
- elif test "$includedir" != "/usr/include"; then
- if test "$includedir" = '${prefix}/include' ; then
-- if test $prefix != /usr ; then
-+ if test x$prefix != x/usr ; then
- ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
- fi
- else
-@@ -94,7 +120,7 @@
- AC_SUBST(ADAFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_CFLAGS version: 10 updated: 2010/05/26 05:38:42
-+dnl CF_ADD_CFLAGS version: 11 updated: 2014/07/22 05:32:57
- dnl -------------
- dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
- dnl The second parameter if given makes this macro verbose.
-@@ -119,7 +145,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -156,7 +182,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -283,15 +309,33 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_LIBS version: 1 updated: 2010/06/02 05:03:05
-+dnl CF_ADD_LIBS version: 2 updated: 2014/07/13 14:33:27
- dnl -----------
--dnl Add one or more libraries, used to enforce consistency.
-+dnl Add one or more libraries, used to enforce consistency. Libraries are
-+dnl prepended to an existing list, since their dependencies are assumed to
-+dnl already exist in the list.
- dnl
- dnl $1 = libraries to add, with the "-l", etc.
- dnl $2 = variable to update (default $LIBS)
--AC_DEFUN([CF_ADD_LIBS],[ifelse($2,,LIBS,[$2])="$1 [$]ifelse($2,,LIBS,[$2])"])dnl
-+AC_DEFUN([CF_ADD_LIBS],[
-+cf_add_libs="$1"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in [$]ifelse($2,,LIBS,[$2])
-+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_libs $cf_add_1lib"
-+done
-+ifelse($2,,LIBS,[$2])="$cf_add_libs"
-+])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_SUBDIR_PATH version: 3 updated: 2010/07/03 20:58:12
-+dnl CF_ADD_SUBDIR_PATH version: 4 updated: 2013/10/08 17:47:05
- dnl ------------------
- dnl Append to a search-list for a nonstandard header/lib-file
- dnl $1 = the variable to return as result
-@@ -301,9 +345,9 @@
- dnl $5 = a directory that we do not want $4 to match
- AC_DEFUN([CF_ADD_SUBDIR_PATH],
- [
--test "$4" != "$5" && \
-+test "x$4" != "x$5" && \
- test -d "$4" && \
--ifelse([$5],NONE,,[(test $5 = NONE || test "$4" != "$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"
-@@ -313,76 +357,6 @@
- }
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ANSI_CC_CHECK version: 10 updated: 2010/10/23 15:52:32
--dnl ----------------
--dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES'
--dnl in the sharutils 4.2 distribution.
--AC_DEFUN([CF_ANSI_CC_CHECK],
--[
--AC_CACHE_CHECK(for ${CC:-cc} option to accept ANSI C, cf_cv_ansi_cc,[
--cf_cv_ansi_cc=no
--cf_save_CFLAGS="$CFLAGS"
--cf_save_CPPFLAGS="$CPPFLAGS"
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX -Aa -D_HPUX_SOURCE
--# SVR4 -Xc
--# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes)
--for cf_arg in "-DCC_HAS_PROTOS" \
-- "" \
-- -qlanglvl=ansi \
-- -std1 \
-- -Ae \
-- "-Aa -D_HPUX_SOURCE" \
-- -Xc
--do
-- CF_ADD_CFLAGS($cf_arg)
-- AC_TRY_COMPILE(
--[
--#ifndef CC_HAS_PROTOS
--#if !defined(__STDC__) || (__STDC__ != 1)
--choke me
--#endif
--#endif
--],[
-- int test (int i, double x);
-- struct s1 {int (*f) (int a);};
-- struct s2 {int (*f) (double a);};],
-- [cf_cv_ansi_cc="$cf_arg"; break])
--done
--CFLAGS="$cf_save_CFLAGS"
--CPPFLAGS="$cf_save_CPPFLAGS"
--])
--
--if test "$cf_cv_ansi_cc" != "no"; then
--if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
-- CF_ADD_CFLAGS($cf_cv_ansi_cc)
--else
-- AC_DEFINE(CC_HAS_PROTOS)
--fi
--fi
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_ANSI_CC_REQD version: 4 updated: 2008/03/23 14:48:54
--dnl ---------------
--dnl For programs that must use an ANSI compiler, obtain compiler options that
--dnl will make it recognize prototypes. We'll do preprocessor checks in other
--dnl macros, since tools such as unproto can fake prototypes, but only part of
--dnl the preprocessor.
--AC_DEFUN([CF_ANSI_CC_REQD],
--[AC_REQUIRE([CF_ANSI_CC_CHECK])
--if test "$cf_cv_ansi_cc" = "no"; then
-- AC_MSG_ERROR(
--[Your compiler does not appear to recognize prototypes.
--You have the following choices:
-- a. adjust your compiler options
-- b. get an up-to-date compiler
-- c. use a wrapper such as unproto])
--fi
--])dnl
--dnl ---------------------------------------------------------------------------
- dnl CF_ARG_DISABLE version: 3 updated: 1999/03/30 17:24:31
- dnl --------------
- dnl Allow user to disable a normally-on option.
-@@ -465,7 +439,7 @@
- AC_SUBST(ARFLAGS)
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_AWK_BIG_PRINTF version: 3 updated: 2008/12/27 12:30:03
-+dnl CF_AWK_BIG_PRINTF version: 4 updated: 2011/10/30 17:09:50
- dnl -----------------
- dnl Check if awk can handle big strings using printf. Some older versions of
- dnl awk choke on large strings passed via "%s".
-@@ -479,8 +453,8 @@
- eval $2=no
- ;;
- *) #(vi
-- if ( ${AWK} 'BEGIN { xx = "x"; while (length(xx) < $1) { xx = xx "x"; }; printf("%s\n", xx); }' \
-- | $AWK '{ printf "%d\n", length([$]0); }' | $AWK 'BEGIN { eqls=0; recs=0; } { recs++; if ([$]0 == 12000) eqls++; } END { if (recs != 1 || eqls != 1) exit 1; }' 2>/dev/null >/dev/null ) ; then
-+ if ( ${AWK} 'BEGIN { xx = "x"; while (length(xx) < $1) { xx = xx "x"; }; printf("%s\n", xx); }' 2>/dev/null \
-+ | $AWK '{ printf "%d\n", length([$]0); }' 2>/dev/null | $AWK 'BEGIN { eqls=0; recs=0; } { recs++; if ([$]0 == 12000) eqls++; } END { if (recs != 1 || eqls != 1) exit 1; }' 2>/dev/null >/dev/null ) ; then
- eval $2=yes
- else
- eval $2=no
-@@ -536,7 +510,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_BOOL_SIZE version: 12 updated: 2006/12/16 12:33:30
-+dnl CF_BOOL_SIZE version: 13 updated: 2013/04/13 18:03:21
- 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.
-@@ -570,7 +544,7 @@
-
- #endif
-
--main()
-+int main()
- {
- FILE *fp = fopen("cf_test.out", "w");
- if (fp != 0) {
-@@ -604,7 +578,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_BUILD_CC version: 6 updated: 2006/10/14 15:23:15
-+dnl CF_BUILD_CC version: 7 updated: 2012/10/06 15:31:55
- 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
-@@ -614,7 +588,8 @@
- dnl $1 = default for $CPPFLAGS
- dnl $2 = default for $LIBS
- AC_DEFUN([CF_BUILD_CC],[
--AC_REQUIRE([CF_PROG_EXT])
-+CF_ACVERSION_CHECK(2.52,,
-+ [AC_REQUIRE([CF_PROG_EXT])])
- if test "$cross_compiling" = yes ; then
-
- # defaults that we might want to override
-@@ -695,7 +670,33 @@
- AC_SUBST(BUILD_OBJEXT)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CFG_DEFAULTS version: 7 updated: 2005/09/24 16:15:00
-+dnl CF_CC_ENV_FLAGS version: 1 updated: 2012/10/03 05:25:49
-+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 with
-+dnl options, but eliminates a more common category of user confusion.
-+AC_DEFUN([CF_CC_ENV_FLAGS],
-+[
-+# This should have been defined by AC_PROG_CC
-+: ${CC:=cc}
-+
-+AC_MSG_CHECKING(\$CC variable)
-+case "$CC" in #(vi
-+*[[\ \ ]]-[[IUD]]*)
-+ AC_MSG_RESULT(broken)
-+ AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options)
-+ # humor him...
-+ cf_flags=`echo "$CC" | sed -e 's/^[[^ ]]*[[ ]]//'`
-+ CC=`echo "$CC" | sed -e 's/[[ ]].*//'`
-+ CF_ADD_CFLAGS($cf_flags)
-+ ;;
-+*)
-+ AC_MSG_RESULT(ok)
-+ ;;
-+esac
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_CFG_DEFAULTS version: 10 updated: 2013/09/07 13:54: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
-@@ -713,7 +714,7 @@
- if test "x$prefix" = "xNONE" ; then
- case "$cf_cv_system_name" in
- # non-vendor systems don't have a conflict
-- openbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu)
-+ openbsd*|freebsd*|mirbsd*|linux*|cygwin*|msys*|k*bsd*-gnu|mingw*)
- prefix=/usr
- ;;
- *) prefix=$ac_default_prefix
-@@ -749,30 +750,51 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CGETENT version: 3 updated: 2000/08/12 23:18:52
-+dnl CF_CGETENT version: 5 updated: 2012/10/06 17:56:13
- dnl ----------
- dnl Check if the terminal-capability database functions are available. If not,
- dnl ncurses has a much-reduced version.
- AC_DEFUN([CF_CGETENT],[
--AC_MSG_CHECKING(for terminal-capability database functions)
--AC_CACHE_VAL(cf_cv_cgetent,[
-+AC_CACHE_CHECK(for terminal-capability database functions,cf_cv_cgetent,[
- AC_TRY_LINK([
- #include <stdlib.h>],[
- char temp[128];
- char *buf = temp;
- char *db_array = temp;
-- cgetent(&buf, /* int *, */ &db_array, "vt100");
-+ cgetent(&buf, &db_array, "vt100");
- cgetcap(buf, "tc", '=');
- cgetmatch(buf, "tc");
- ],
- [cf_cv_cgetent=yes],
- [cf_cv_cgetent=no])
- ])
--AC_MSG_RESULT($cf_cv_cgetent)
--test "$cf_cv_cgetent" = yes && AC_DEFINE(HAVE_BSD_CGETENT)
-+
-+if test "$cf_cv_cgetent" = yes
-+then
-+ AC_DEFINE(HAVE_BSD_CGETENT,1,[Define to 1 if we have BSD cgetent])
-+AC_CACHE_CHECK(if cgetent uses const parameter,cf_cv_cgetent_const,[
-+AC_TRY_LINK([
-+#include <stdlib.h>],[
-+ char temp[128];
-+ char *buf = temp;
-+#ifndef _NETBSD_SOURCE /* given, since April 2004 in stdlib.h */
-+ const char *db_array = temp;
-+ cgetent(&buf, &db_array, "vt100");
-+#endif
-+ cgetcap(buf, "tc", '=');
-+ cgetmatch(buf, "tc");
-+ ],
-+ [cf_cv_cgetent_const=yes],
-+ [cf_cv_cgetent_const=no])
-+])
-+ if test "$cf_cv_cgetent_const" = yes
-+ then
-+ AC_DEFINE_UNQUOTED(CGETENT_CONST,const,[Define to const if needed for some BSD cgetent variations])
-+ fi
-+fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59
-+dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03
- 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.
-@@ -795,7 +817,7 @@
- system_name="`(hostname) 2>/dev/null`"
- fi
- fi
--test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name")
-+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name",[Define to the system name.])
- AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"])
-
- test -z "$system_name" && system_name="$cf_cv_system_name"
-@@ -908,7 +930,82 @@
- fi
- ])])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CPP_PARAM_INIT version: 4 updated: 2001/04/07 22:31:18
-+dnl CF_CHECK_LIBTOOL_VERSION version: 1 updated: 2013/04/06 18:03:09
-+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.
-+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)
-+ fi
-+else
-+ AC_MSG_ERROR(GNU libtool has not been found)
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_CHECK_WCHAR_H version: 1 updated: 2011/10/29 15:01:05
-+dnl ----------------
-+dnl Check if wchar.h can be used, i.e., without defining _XOPEN_SOURCE_EXTENDED
-+AC_DEFUN([CF_CHECK_WCHAR_H],[
-+AC_CACHE_CHECK(if wchar.h can be used as is,cf_cv_wchar_h_okay,[
-+AC_TRY_COMPILE(
-+[
-+#include <stdlib.h>
-+#include <wchar.h>
-+],[
-+ wint_t foo = 0;
-+ int bar = iswpunct(foo)],
-+ [cf_cv_wchar_h_okay=yes],
-+ [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_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35
-+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
-+dnl not ignore some gcc options.
-+dnl
-+dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to
-+dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from
-+dnl the wrappers for gcc and g++ warnings.
-+dnl
-+dnl $1 = GCC (default) or GXX
-+dnl $2 = CLANG_COMPILER (default)
-+dnl $3 = CFLAGS (default) or CXXFLAGS
-+AC_DEFUN([CF_CLANG_COMPILER],[
-+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
-+])
-+dnl ---------------------------------------------------------------------------
-+dnl CF_CPP_PARAM_INIT version: 6 updated: 2012/10/06 17:56:13
- dnl -----------------
- dnl Check if the C++ compiler accepts duplicate parameter initialization. This
- dnl is a late feature for the standard and is not in some recent compilers
-@@ -932,7 +1029,7 @@
- {
- value = x;
- }
--void main() { }
-+int main() { }
- ],
- [cf_cv_cpp_param_init=yes],
- [cf_cv_cpp_param_init=no],
-@@ -940,10 +1037,10 @@
- AC_LANG_RESTORE
- ])
- fi
--test "$cf_cv_cpp_param_init" = yes && AC_DEFINE(CPP_HAS_PARAM_INIT)
-+test "$cf_cv_cpp_param_init" = yes && AC_DEFINE(CPP_HAS_PARAM_INIT,1,[Define to 1 if C++ has parameter initialization])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CPP_STATIC_CAST version: 1 updated: 2005/07/23 16:52:43
-+dnl CF_CPP_STATIC_CAST version: 3 updated: 2013/04/13 18:03:21
- dnl ------------------
- dnl Check if the C++ compiler accepts static_cast in generics. This appears to
- dnl not be supported in g++ before 3.0
-@@ -965,7 +1062,7 @@
- int begin_x = 0)
- {
- }
--
-+ NCursesPanel();
- ~NCursesPanel();
- };
-
-@@ -996,10 +1093,58 @@
-
- fi
-
--test "$cf_cv_cpp_static_cast" = yes && AC_DEFINE(CPP_HAS_STATIC_CAST)
-+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: 1 updated: 2011/10/29 08:35:34
-+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 #(vi
-+ irix*) #(vi
-+ if test "$GXX" != yes ; then
-+ CXX_AR='$(CXX)'
-+ CXX_ARFLAGS='-ar -o'
-+ fi
-+ ;;
-+ sco3.2v5*) #(vi
-+ CXXLDFLAGS="-u main"
-+ ;;
-+ solaris2*)
-+ if test "$GXX" != yes ; then
-+ CXX_AR='$(CXX)'
-+ CXX_ARFLAGS='-xar -o'
-+ fi
-+ ;;
-+ esac
-+ AC_SUBST(CXXLDFLAGS)
-+ AC_SUBST(CXX_AR)
-+ AC_SUBST(CXX_ARFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_C_INLINE version: 3 updated: 2010/05/01 15:14:41
-+dnl CF_CXX_IOSTREAM_NAMESPACE version: 2 updated: 2012/10/06 17:56:13
-+dnl -------------------------
-+dnl For c++, check if iostream uses "std::" namespace.
-+AC_DEFUN([CF_CXX_IOSTREAM_NAMESPACE],[
-+AC_CHECK_HEADERS(iostream)
-+if test x"$ac_cv_header_iostream" = xyes ; then
-+ AC_MSG_CHECKING(if iostream uses std-namespace)
-+ AC_TRY_COMPILE([
-+#include <iostream>
-+using std::endl;
-+using std::cerr;],[
-+cerr << "testing" << endl;
-+],[cf_iostream_namespace=yes],[cf_iostream_namespace=no])
-+ AC_MSG_RESULT($cf_iostream_namespace)
-+ if test "$cf_iostream_namespace" = yes ; then
-+ AC_DEFINE(IOSTREAM_NAMESPACE,1,[Define to 1 if C++ has namespace iostream])
-+ fi
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_C_INLINE version: 4 updated: 2012/06/16 14:55:39
- dnl -----------
- dnl Check if the C compiler supports "inline".
- dnl $1 is the name of a shell variable to set if inline is supported
-@@ -1012,6 +1157,9 @@
- if test "$INTEL_COMPILER" = yes
- then
- :
-+ elif test "$CLANG_COMPILER" = yes
-+ then
-+ :
- elif test "$GCC" = yes
- then
- AC_CACHE_CHECK(if $CC supports options to tune inlining,cf_cv_gcc_inline,[
-@@ -1057,7 +1205,55 @@
- AC_SUBST(DIRS_TO_MAKE)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_DISABLE_LEAKS version: 6 updated: 2010/07/23 04:14:32
-+dnl CF_DISABLE_ECHO version: 12 updated: 2012/10/06 16:30:28
-+dnl ---------------
-+dnl You can always use "make -n" to see the actual options, but it's hard to
-+dnl pick out/analyze warning messages when the compile-line is long.
-+dnl
-+dnl Sets:
-+dnl ECHO_LT - symbol to control if libtool is verbose
-+dnl ECHO_LD - symbol to prefix "cc -o" lines
-+dnl RULE_CC - symbol to put before implicit "cc -c" lines (e.g., .c.o)
-+dnl SHOW_CC - symbol to put before explicit "cc -c" lines
-+dnl ECHO_CC - symbol to put before any "cc" line
-+dnl
-+AC_DEFUN([CF_DISABLE_ECHO],[
-+AC_MSG_CHECKING(if you want to see long compiling messages)
-+CF_ARG_DISABLE(echo,
-+ [ --disable-echo do not display "compiling" commands],
-+ [
-+ ECHO_LT='--silent'
-+ ECHO_LD='@echo linking [$]@;'
-+ RULE_CC='@echo compiling [$]<'
-+ SHOW_CC='@echo compiling [$]@'
-+ ECHO_CC='@'
-+],[
-+ ECHO_LT=''
-+ ECHO_LD=''
-+ RULE_CC=''
-+ SHOW_CC=''
-+ ECHO_CC=''
-+])
-+AC_MSG_RESULT($enableval)
-+AC_SUBST(ECHO_LT)
-+AC_SUBST(ECHO_LD)
-+AC_SUBST(RULE_CC)
-+AC_SUBST(SHOW_CC)
-+AC_SUBST(ECHO_CC)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_DISABLE_GNAT_PROJECTS version: 1 updated: 2014/06/01 11:34:00
-+dnl ------------------------
-+AC_DEFUN([CF_DISABLE_GNAT_PROJECTS],[
-+AC_MSG_CHECKING(if we want to use GNAT projects)
-+CF_ARG_DISABLE(gnat-projects,
-+ [ --disable-gnat-projects test: disable GNAT projects even if usable],
-+ [enable_gnat_projects=no],
-+ [enable_gnat_projects=yes])
-+AC_MSG_RESULT($enable_gnat_projects)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_DISABLE_LEAKS version: 7 updated: 2012/10/02 20:55:03
- dnl ----------------
- dnl Combine no-leak checks with the libraries or tools that are used for the
- dnl checks.
-@@ -1075,12 +1271,12 @@
- AC_MSG_RESULT($with_no_leaks)
-
- if test "$with_no_leaks" = yes ; then
-- AC_DEFINE(NO_LEAKS)
-- AC_DEFINE(YY_NO_LEAKS)
-+ 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_LIBTOOL_VERSION version: 1 updated: 2010/05/15 15:45:59
-+dnl CF_DISABLE_LIBTOOL_VERSION version: 2 updated: 2014/11/15 19:05:29
- dnl --------------------------
- dnl Check if we should use the libtool 1.5 feature "-version-number" instead of
- dnl the older "-version-info" feature. The newer feature allows us to use
-@@ -1099,8 +1295,25 @@
- LIBTOOL_VERSION="-version-number"
- else
- LIBTOOL_VERSION="-version-info"
-+ case "x$VERSION" in #(vi
-+ x) #(vi
-+ AC_MSG_WARN(VERSION was not set)
-+ ;;
-+ x*.*.*)
-+ ABI_VERSION="$VERSION"
-+ CF_VERBOSE(ABI_VERSION: $ABI_VERSION)
-+ ;;
-+ x*:*:*)
-+ ABI_VERSION=`echo "$VERSION" | sed -e 's/:/./g'`
-+ CF_VERBOSE(ABI_VERSION: $ABI_VERSION)
-+ ;;
-+ *)
-+ AC_MSG_WARN(unexpected VERSION value: $VERSION)
-+ ;;
-+ esac
- fi
-
-+AC_SUBST(ABI_VERSION)
- AC_SUBST(LIBTOOL_VERSION)
- ])dnl
- dnl ---------------------------------------------------------------------------
-@@ -1123,6 +1336,30 @@
- fi
- ])
- dnl ---------------------------------------------------------------------------
-+dnl CF_ENABLE_PC_FILES version: 9 updated: 2012/08/04 13:59:54
-+dnl ------------------
-+dnl This is the "--enable-pc-files" option, which is available if there is a
-+dnl pkg-config configuration on the local machine.
-+AC_DEFUN([CF_ENABLE_PC_FILES],[
-+AC_REQUIRE([CF_PKG_CONFIG])
-+AC_REQUIRE([CF_WITH_PKG_CONFIG_LIBDIR])
-+
-+if test "$PKG_CONFIG" != none ; then
-+ AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG)
-+ AC_ARG_ENABLE(pc-files,
-+ [ --enable-pc-files generate and install .pc files for pkg-config],
-+ [enable_pc_files=$enableval],
-+ [enable_pc_files=no])
-+ AC_MSG_RESULT($enable_pc_files)
-+ if test "$enable_pc_files" != no
-+ then
-+ CF_PATH_SYNTAX(PKG_CONFIG_LIBDIR)
-+ fi
-+else
-+ enable_pc_files=no
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_ENABLE_RPATH version: 2 updated: 2010/03/27 18:39:42
- dnl ---------------
- dnl Check if the rpath option should be used, setting cache variable
-@@ -1137,6 +1374,37 @@
- AC_MSG_RESULT($cf_cv_enable_rpath)
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_ENABLE_STRING_HACKS version: 3 updated: 2013/01/26 16:26:12
-+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,
-+dnl and implying that most uses of the recommended alternatives are correct.
-+dnl
-+dnl Factually speaking, no one has actually counted the number of uses of these
-+dnl functions versus the total of incorrect uses. Samples of a few thousand
-+dnl instances are meaningless compared to the hundreds of millions of lines of
-+dnl existing C code.
-+dnl
-+dnl strlcat/strlcpy are (as of 2012) non-standard, and are available on some
-+dnl platforms, in implementations of varying quality. Likewise, snprintf is
-+dnl standard - but evolved through phases, and older implementations are likely
-+dnl to yield surprising results, as documented in manpages on various systems.
-+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)
-+
-+if test "x$with_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_FUNCS( strlcat strlcpy snprintf )
-+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>
-@@ -1145,7 +1413,7 @@
- CF_CHECK_ERRNO(errno)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ETIP_DEFINES version: 3 updated: 2003/03/22 19:13:43
-+dnl CF_ETIP_DEFINES version: 5 updated: 2012/02/18 17:51:07
- dnl ---------------
- dnl Test for conflicting definitions of exception in gcc 2.8.0, etc., between
- dnl math.h and builtin.h, only for ncurses
-@@ -1154,11 +1422,17 @@
- AC_MSG_CHECKING(for special defines needed for etip.h)
- cf_save_CXXFLAGS="$CXXFLAGS"
- 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
-+
- for cf_math in "" MATH_H
- do
- for cf_excp in "" MATH_EXCEPTION
- do
-- CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include"
-+ 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}"
- AC_TRY_COMPILE([
-@@ -1167,7 +1441,7 @@
- test -n "$cf_math" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_math})
- test -n "$cf_excp" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_excp})
- cf_result="$cf_math $cf_excp"
-- break
-+ break 2
- ],[])
- done
- done
-@@ -1305,7 +1579,69 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_FUNC_DLSYM version: 2 updated: 2010/05/29 16:31:02
-+dnl CF_FIND_SUB_INCDIR version: 1 updated: 2014/04/12 16:47:01
-+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
-+dnl different versions of the same port.
-+AC_DEFUN([CF_FIND_SUB_INCDIR],[
-+ CF_SUBDIR_PATH(cf_search,$1,include)
-+ for cf_item in $cf_search
-+ do
-+ case $cf_item in #(vi
-+ */$1)
-+ CF_ADD_INCDIR($cf_item)
-+ ;;
-+ esac
-+ done
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_FIND_SUB_LIBDIR version: 1 updated: 2014/04/12 16:47:01
-+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
-+dnl different versions of the same port.
-+AC_DEFUN([CF_FIND_SUB_LIBDIR],[
-+ CF_SUBDIR_PATH(cf_search,$1,lib)
-+ for cf_item in $cf_search
-+ do
-+ case $cf_item in #(vi
-+ */$1)
-+ CF_ADD_LIBDIR($cf_item)
-+ ;;
-+ esac
-+ done
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_FIXUP_ADAFLAGS version: 1 updated: 2012/03/31 18:48:10
-+dnl -----------------
-+dnl make ADAFLAGS consistent with CFLAGS
-+AC_DEFUN([CF_FIXUP_ADAFLAGS],[
-+ AC_MSG_CHECKING(optimization options for ADAFLAGS)
-+ case "$CFLAGS" in
-+ *-g*)
-+ CF_ADD_ADAFLAGS(-g)
-+ ;;
-+ esac
-+ case "$CFLAGS" in
-+ *-O*)
-+ cf_O_flag=`echo "$CFLAGS" |sed -e 's/^.*-O/-O/' -e 's/[[ ]].*//'`
-+ CF_ADD_ADAFLAGS($cf_O_flag)
-+ ;;
-+ esac
-+ AC_MSG_RESULT($ADAFLAGS)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_FORGET_TOOL version: 1 updated: 2013/04/06 18:03:09
-+dnl --------------
-+dnl Forget that we saw the given tool.
-+AC_DEFUN([CF_FORGET_TOOL],[
-+unset ac_cv_prog_ac_ct_$1
-+unset ac_ct_$1
-+unset $1
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_FUNC_DLSYM version: 3 updated: 2012/10/06 11:17:15
- dnl -------------
- dnl Test for dlsym() and related functions, as well as libdl.
- dnl
-@@ -1332,7 +1668,7 @@
- dlclose(obj);
- }
- }],[
-- AC_DEFINE(HAVE_LIBDL)],[
-+ AC_DEFINE(HAVE_LIBDL,1,[Define to 1 if we have dl library])],[
- AC_MSG_ERROR(Cannot link test program for libdl)])
- AC_MSG_RESULT(ok)
- else
-@@ -1340,7 +1676,7 @@
- fi
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_FUNC_MEMMOVE version: 7 updated: 2006/12/16 12:33:30
-+dnl CF_FUNC_MEMMOVE version: 8 updated: 2012/10/04 20:12:20
- dnl ---------------
- dnl Check for memmove, or a bcopy that can handle overlapping copy. If neither
- dnl is found, add our own version of memmove to the list of objects.
-@@ -1365,13 +1701,13 @@
- ])
- ],[cf_cv_good_bcopy=no])
- if test "$cf_cv_good_bcopy" = yes ; then
-- AC_DEFINE(USE_OK_BCOPY)
-+ AC_DEFINE(USE_OK_BCOPY,1,[Define to 1 to use bcopy when memmove is unavailable])
- else
-- AC_DEFINE(USE_MY_MEMMOVE)
-+ AC_DEFINE(USE_MY_MEMMOVE,1,[Define to 1 to use replacement function when memmove is unavailable])
- fi
- ])])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_FUNC_NANOSLEEP version: 3 updated: 2006/12/16 12:33:30
-+dnl CF_FUNC_NANOSLEEP version: 4 updated: 2012/10/06 17:56:13
- dnl -----------------
- dnl Check for existence of workable nanosleep() function. Some systems, e.g.,
- dnl AIX 4.x, provide a non-working version.
-@@ -1402,7 +1738,7 @@
- [cf_cv_func_nanosleep=no],
- [cf_cv_func_nanosleep=unknown])])
-
--test "$cf_cv_func_nanosleep" = "yes" && AC_DEFINE(HAVE_NANOSLEEP)
-+test "$cf_cv_func_nanosleep" = "yes" && AC_DEFINE(HAVE_NANOSLEEP,1,[Define to 1 if we have nanosleep()])
- ])
- dnl ---------------------------------------------------------------------------
- dnl CF_FUNC_OPENPTY version: 3 updated: 2010/05/29 16:31:02
-@@ -1433,14 +1769,17 @@
- ])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_FUNC_POLL version: 4 updated: 2006/12/16 12:33:30
-+dnl CF_FUNC_POLL version: 8 updated: 2012/10/04 05:24:07
- 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],[
- AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[
- AC_TRY_RUN([
-+#include <stdlib.h>
- #include <stdio.h>
-+#include <unistd.h>
-+#include <fcntl.h>
- #ifdef HAVE_POLL_H
- #include <poll.h>
- #else
-@@ -1450,19 +1789,42 @@
- struct pollfd myfds;
- int ret;
-
-- myfds.fd = 0;
-+ /* check for Darwin bug with respect to "devices" */
-+ myfds.fd = open("/dev/null", 1); /* O_WRONLY */
-+ if (myfds.fd < 0)
-+ myfds.fd = 0;
- myfds.events = POLLIN;
-+ myfds.revents = 0;
-
- ret = poll(&myfds, 1, 100);
-- ${cf_cv_main_return:-return}(ret != 0);
-+
-+ if (ret < 0 || (myfds.revents & POLLNVAL)) {
-+ ret = -1;
-+ } else {
-+ int fd = 0;
-+ if (!isatty(fd)) {
-+ fd = open("/dev/tty", 2); /* O_RDWR */
-+ }
-+
-+ if (fd >= 0) {
-+ /* also check with standard input */
-+ myfds.fd = fd;
-+ myfds.events = POLLIN;
-+ myfds.revents = 0;
-+ ret = poll(&myfds, 1, 100);
-+ } else {
-+ ret = -1;
-+ }
-+ }
-+ ${cf_cv_main_return:-return}(ret < 0);
- }],
- [cf_cv_working_poll=yes],
- [cf_cv_working_poll=no],
- [cf_cv_working_poll=unknown])])
--test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL)
-+test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL,1,[Define to 1 if the poll function seems to work])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_FUNC_TERMIOS version: 2 updated: 2000/07/22 23:37:24
-+dnl CF_FUNC_TERMIOS version: 3 updated: 2012/10/06 17:56:13
- dnl ---------------
- dnl Some old/broken variations define tcgetattr() only as a macro in
- dnl termio(s).h
-@@ -1488,10 +1850,10 @@
- tcgetattr(1, &foo);],
- [cf_cv_have_tcgetattr=yes],
- [cf_cv_have_tcgetattr=no])])
--test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR)
-+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: 3 updated: 2001/12/19 00:50:10
-+dnl CF_FUNC_VSSCANF version: 4 updated: 2012/10/06 17:56:13
- 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
-@@ -1529,14 +1891,14 @@
- cf_cv_func_vsscanf=no])])])])
-
- case $cf_cv_func_vsscanf in #(vi
--vsscanf) AC_DEFINE(HAVE_VSSCANF);; #(vi
--vfscanf) AC_DEFINE(HAVE_VFSCANF);; #(vi
--_doscan) AC_DEFINE(HAVE__DOSCAN);;
-+vsscanf) AC_DEFINE(HAVE_VSSCANF,1,[Define to 1 if we have vsscanf]);; #(vi
-+vfscanf) AC_DEFINE(HAVE_VFSCANF,1,[Define to 1 if we have vfscanf]);; #(vi
-+_doscan) AC_DEFINE(HAVE__DOSCAN,1,[Define to 1 if we have _doscan]);;
- esac
-
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GCC_ATTRIBUTES version: 14 updated: 2010/10/23 15:52:32
-+dnl CF_GCC_ATTRIBUTES version: 16 updated: 2012/10/02 20:55:03
- dnl -----------------
- dnl Test for availability of useful gcc __attribute__ directives to quiet
- dnl compiler warnings. Though useful, not all are supported -- and contrary
-@@ -1614,27 +1976,27 @@
- test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
- cat conftest.h >>confdefs.h
- case $cf_attribute in #(vi
-+ noreturn) #(vi
-+ AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc])
-+ ;;
- printf) #(vi
-- if test "$cf_printf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
--EOF
-+ cf_value='/* nothing */'
-+ if test "$cf_printf_attribute" != no ; then
-+ cf_value='__attribute__((format(printf,fmt,var)))'
-+ AC_DEFINE(GCC_PRINTF,1,[Define to 1 if the compiler supports gcc-like printf attribute.])
- fi
-+ AC_DEFINE_UNQUOTED(GCC_PRINTFLIKE(fmt,var),$cf_value,[Define to printf-attribute for gcc])
- ;;
- scanf) #(vi
-- if test "$cf_scanf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
--EOF
-+ cf_value='/* nothing */'
-+ if test "$cf_scanf_attribute" != no ; then
-+ cf_value='__attribute__((format(scanf,fmt,var)))'
-+ AC_DEFINE(GCC_SCANF,1,[Define to 1 if the compiler supports gcc-like scanf attribute.])
- fi
-+ AC_DEFINE_UNQUOTED(GCC_SCANFLIKE(fmt,var),$cf_value,[Define to sscanf-attribute for gcc])
-+ ;;
-+ unused) #(vi
-+ AC_DEFINE_UNQUOTED(GCC_UNUSED,$cf_directive,[Define to unused-attribute for gcc])
- ;;
- esac
- fi
-@@ -1646,7 +2008,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GCC_VERSION version: 5 updated: 2010/04/24 11:02:31
-+dnl CF_GCC_VERSION version: 7 updated: 2012/10/18 06:46:33
- dnl --------------
- dnl Find version of gcc
- AC_DEFUN([CF_GCC_VERSION],[
-@@ -1654,13 +2016,13 @@
- GCC_VERSION=none
- if test "$GCC" = yes ; then
- AC_MSG_CHECKING(version of $CC)
-- GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
-+ 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
- AC_MSG_RESULT($GCC_VERSION)
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GCC_WARNINGS version: 27 updated: 2010/10/23 15:52:32
-+dnl CF_GCC_WARNINGS version: 31 updated: 2013/11/19 19:23:35
- 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:
-@@ -1683,6 +2045,7 @@
- [
- AC_REQUIRE([CF_GCC_VERSION])
- CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
-+CF_CLANG_COMPILER(GCC,CLANG_COMPILER,CFLAGS)
-
- cat > conftest.$ac_ext <<EOF
- #line __oline__ "${as_me:-configure}"
-@@ -1731,10 +2094,14 @@
- EXTRA_CFLAGS=
- cf_warn_CONST=""
- test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
-+ cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs"
-+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings=
- for cf_opt in W Wall \
- Wbad-function-cast \
- Wcast-align \
- Wcast-qual \
-+ Wdeclaration-after-statement \
-+ Wextra \
- Winline \
- Wmissing-declarations \
- Wmissing-prototypes \
-@@ -1742,7 +2109,7 @@
- Wpointer-arith \
- Wshadow \
- Wstrict-prototypes \
-- Wundef $cf_warn_CONST $1
-+ Wundef $cf_gcc_warnings $cf_warn_CONST $1
- do
- CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
- if AC_TRY_EVAL(ac_compile); then
-@@ -1758,6 +2125,13 @@
- continue;;
- esac
- ;;
-+ Wpointer-arith) #(vi
-+ case $GCC_VERSION in
-+ [[12]].*)
-+ CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
-+ continue;;
-+ esac
-+ ;;
- esac
- EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
- fi
-@@ -1769,6 +2143,43 @@
- AC_SUBST(EXTRA_CFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_GETOPT_HEADER version: 6 updated: 2014/07/22 14:45:54
-+dnl ----------------
-+dnl Check for getopt's variables which are commonly defined in stdlib.h,
-+dnl unistd.h or (nonstandard) in getopt.h
-+AC_DEFUN([CF_GETOPT_HEADER],
-+[
-+AC_HAVE_HEADERS(unistd.h getopt.h)
-+AC_CACHE_CHECK(for header declaring getopt variables,cf_cv_getopt_header,[
-+cf_cv_getopt_header=none
-+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],
-+[cf_cv_getopt_header=$cf_header
-+ break])
-+done
-+])
-+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
-+ AC_DEFINE(NEED_GETOPT_H,1,[Define to 1 if we must include getopt.h])
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_GNATPREP_OPT_T version: 1 updated: 2014/08/02 18:37:25
-+dnl -----------------
-+AC_DEFUN([CF_GNATPREP_OPT_T],[
-+AC_CACHE_CHECK(if GNATPREP supports -T option,cf_cv_gnatprep_opt_t,[
-+cf_cv_gnatprep_opt_t=no
-+gnatprep -T 2>/dev/null >/dev/null && cf_cv_gnatprep_opt_t=yes
-+])
-+test "$cf_cv_gnatprep_opt_t" = yes && GNATPREP_OPTS="-T $GNATPREP_OPTS"
-+AC_SUBST(GNATPREP_OPTS)
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_GNAT_GENERICS version: 2 updated: 2011/03/23 20:24:41
- dnl ----------------
- AC_DEFUN([CF_GNAT_GENERICS],
-@@ -1799,53 +2210,26 @@
- AC_SUBST(cf_generic_objects)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GNAT_PRAGMA_UNREF version: 1 updated: 2010/06/19 15:22:18
--dnl --------------------
--dnl Check if the gnat pragma "Unreferenced" works.
--AC_DEFUN([CF_GNAT_PRAGMA_UNREF],[
--AC_CACHE_CHECK(if GNAT pragma Unreferenced works,cf_cv_pragma_unreferenced,[
--CF_GNAT_TRY_LINK([procedure conftest;],
--[with Text_IO;
--with GNAT.OS_Lib;
--procedure conftest is
-- test : Integer;
-- pragma Unreferenced (test);
--begin
-- test := 1;
-- Text_IO.Put ("Hello World");
-- Text_IO.New_Line;
-- GNAT.OS_Lib.OS_Exit (0);
--end conftest;],
-- [cf_cv_pragma_unreferenced=yes],
-- [cf_cv_pragma_unreferenced=no])])
--
--# if the pragma is supported, use it (needed in the Trace code).
--if test $cf_cv_pragma_unreferenced = yes ; then
-- PRAGMA_UNREF=TRUE
--else
-- PRAGMA_UNREF=FALSE
--fi
--AC_SUBST(PRAGMA_UNREF)
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_GNAT_PROJECTS version: 2 updated: 2011/03/23 20:24:41
-+dnl CF_GNAT_PROJECTS version: 7 updated: 2014/06/01 10:46:34
- dnl ----------------
- dnl GNAT projects are configured with ".gpr" project files.
- dnl GNAT libraries are a further development, using the project feature.
- AC_DEFUN([CF_GNAT_PROJECTS],
- [
- AC_REQUIRE([CF_GNAT_VERSION])
-+AC_REQUIRE([CF_DISABLE_GNAT_PROJECTS])
-
- cf_gnat_libraries=no
- cf_gnat_projects=no
-
-+if test "$enable_gnat_projects" != no ; then
- AC_MSG_CHECKING(if GNAT supports project files)
- case $cf_gnat_version in #(vi
- 3.[[0-9]]*) #(vi
- ;;
- *)
- case $cf_cv_system_name in #(vi
-- cygwin*) #(vi
-+ cygwin*|msys*) #(vi
- ;;
- *)
- mkdir conftest.src conftest.bin conftest.lib
-@@ -1862,14 +2246,6 @@
- for Library_Dir use External("BUILD_DIR");
- Source_Dir := External ("SOURCE_DIR");
- for Source_Dirs use (Source_Dir);
-- package Compiler is
-- for Default_Switches ("Ada") use
-- ("-g",
-- "-O2",
-- "-gnatafno",
-- "-gnatVa", -- All validity checks
-- "-gnatwa"); -- Activate all optional errors
-- end Compiler;
- end Library;
- CF_EOF
- cat >>confpackage.ads <<CF_EOF
-@@ -1907,6 +2283,7 @@
- ;;
- esac
- AC_MSG_RESULT($cf_gnat_projects)
-+fi # enable_gnat_projects
-
- if test $cf_gnat_projects = yes
- then
-@@ -2040,7 +2417,7 @@
- rm -rf conftest* *~conftest*
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GNAT_VERSION version: 17 updated: 2011/03/23 20:24:41
-+dnl CF_GNAT_VERSION version: 18 updated: 2012/01/21 19:28:10
- dnl ---------------
- dnl Verify version of GNAT.
- AC_DEFUN([CF_GNAT_VERSION],
-@@ -2052,7 +2429,7 @@
- AC_MSG_RESULT($cf_gnat_version)
-
- case $cf_gnat_version in #(vi
--3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*) #(vi
-+3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*|20[[0-9]][[0-9]]) #(vi
- cf_cv_prog_gnat_correct=yes
- ;;
- *)
-@@ -2092,7 +2469,7 @@
- test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GPP_LIBRARY version: 10 updated: 2010/05/29 16:31:02
-+dnl CF_GPP_LIBRARY version: 11 updated: 2012/10/06 17:56:13
- 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
-@@ -2119,9 +2496,9 @@
- [cf_cxx_library=yes
- CF_ADD_LIB($cf_gpp_libname,CXXLIBS)
- if test "$cf_gpp_libname" = cpp ; then
-- AC_DEFINE(HAVE_GPP_BUILTIN_H)
-+ AC_DEFINE(HAVE_GPP_BUILTIN_H,1,[Define to 1 if we have gpp builtin.h])
- else
-- AC_DEFINE(HAVE_GXX_BUILTIN_H)
-+ AC_DEFINE(HAVE_GXX_BUILTIN_H,1,[Define to 1 if we have g++ builtin.h])
- fi],
- [AC_TRY_LINK([
- #include <builtin.h>
-@@ -2129,28 +2506,28 @@
- [two_arg_error_handler_t foo2 = lib_error_handler],
- [cf_cxx_library=yes
- CF_ADD_LIB($cf_gpp_libname,CXXLIBS)
-- AC_DEFINE(HAVE_BUILTIN_H)],
-+ AC_DEFINE(HAVE_BUILTIN_H,1,[Define to 1 if we have builtin.h])],
- [cf_cxx_library=no])])
- LIBS="$cf_save"
- AC_MSG_RESULT($cf_cxx_library)
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GXX_VERSION version: 6 updated: 2010/10/23 15:44:18
-+dnl CF_GXX_VERSION version: 7 updated: 2012/06/16 14:55:39
- dnl --------------
- dnl Check for version of g++
- AC_DEFUN([CF_GXX_VERSION],[
- AC_REQUIRE([AC_PROG_CPP])
- GXX_VERSION=none
- if test "$GXX" = yes; then
-- AC_MSG_CHECKING(version of g++)
-+ AC_MSG_CHECKING(version of ${CXX:-g++})
- GXX_VERSION="`${CXX:-g++} --version| sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
- test -z "$GXX_VERSION" && GXX_VERSION=unknown
- AC_MSG_RESULT($GXX_VERSION)
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GXX_WARNINGS version: 6 updated: 2010/08/14 18:25:37
-+dnl CF_GXX_WARNINGS version: 8 updated: 2013/11/16 14:27:53
- dnl ---------------
- dnl Check if the compiler supports useful warning options.
- dnl
-@@ -2173,6 +2550,7 @@
- [
-
- CF_INTEL_COMPILER(GXX,INTEL_CPLUSPLUS,CXXFLAGS)
-+CF_CLANG_COMPILER(GXX,CLANG_CPLUSPLUS,CXXFLAGS)
-
- AC_REQUIRE([CF_GXX_VERSION])
-
-@@ -2238,16 +2616,17 @@
- for cf_opt in \
- Wabi \
- fabi-version=0 \
-+ Wextra \
-+ Wignored-qualifiers \
-+ Wlogical-op \
- Woverloaded-virtual \
- Wsign-promo \
- Wsynth \
- Wold-style-cast \
- Wcast-align \
- Wcast-qual \
-- Wmissing-prototypes \
- Wpointer-arith \
- Wshadow \
-- Wstrict-prototypes \
- Wundef $cf_gxx_extra_warnings $1
- do
- CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -Werror -$cf_opt"
-@@ -2266,7 +2645,7 @@
- AC_SUBST(EXTRA_CXXFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_HASHED_DB version: 4 updated: 2010/05/29 16:31:02
-+dnl CF_HASHED_DB version: 5 updated: 2014/04/12 16:47:01
- dnl ------------
- dnl Look for an instance of the Berkeley hashed database.
- dnl
-@@ -2281,6 +2660,16 @@
- if test -d "$1" ; then
- CF_ADD_INCDIR($1/include)
- CF_ADD_LIBDIR($1/lib)
-+ else
-+ case "$1" in #(vi
-+ ./*|../*|/*)
-+ AC_MSG_WARN(no such directory $1)
-+ ;; #(vi
-+ *)
-+ CF_FIND_SUB_INCDIR($1)
-+ CF_FIND_SUB_LIBDIR($1)
-+ ;;
-+ esac
- fi
- esac
- ])
-@@ -2373,7 +2762,7 @@
- ])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_HASHED_DB_VERSION version: 3 updated: 2007/12/01 15:01:37
-+dnl CF_HASHED_DB_VERSION version: 4 updated: 2014/04/12 16:47:01
- dnl --------------------
- dnl Given that we have the header file for hashed database, find the version
- dnl information.
-@@ -2382,7 +2771,7 @@
- AC_CACHE_CHECK(for version of db, cf_cv_hashed_db_version,[
- cf_cv_hashed_db_version=unknown
-
--for cf_db_version in 1 2 3 4 5
-+for cf_db_version in 1 2 3 4 5 6
- do
- CF_MSG_LOG(checking for db version $cf_db_version)
- AC_TRY_COMPILE([
-@@ -2464,33 +2853,24 @@
- [AC_DIVERT_HELP([$1])dnl
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_INCLUDE_DIRS version: 6 updated: 2009/01/06 19:37:40
-+dnl CF_INCLUDE_DIRS version: 10 updated: 2014/09/19 20:58:42
- dnl ---------------
- dnl Construct the list of include-options according to whether we're building
--dnl in the source directory or using '--srcdir=DIR' option. If we're building
--dnl with gcc, don't append the includedir if it happens to be /usr/include,
--dnl since that usually breaks gcc's shadow-includes.
-+dnl in the source directory or using '--srcdir=DIR' option.
- AC_DEFUN([CF_INCLUDE_DIRS],
- [
--CPPFLAGS="$CPPFLAGS -I. -I../include"
- if test "$srcdir" != "."; then
-- CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include"
-+ CPPFLAGS="-I\${srcdir}/../include $CPPFLAGS"
- fi
--if test "$GCC" != yes; then
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
--elif test "$includedir" != "/usr/include"; then
-- if test "$includedir" = '${prefix}/include' ; then
-- if test $prefix != /usr ; then
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
-- fi
-- else
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
-- fi
-+CPPFLAGS="-I../include $CPPFLAGS"
-+if test "$srcdir" != "."; then
-+ CPPFLAGS="-I\${srcdir} $CPPFLAGS"
- fi
-+CPPFLAGS="-I. $CPPFLAGS"
- AC_SUBST(CPPFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_INTEL_COMPILER version: 4 updated: 2010/05/26 05:38:42
-+dnl CF_INTEL_COMPILER version: 6 updated: 2014/03/17 13:13:07
- 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
-@@ -2504,6 +2884,7 @@
- dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS
- dnl $3 = CFLAGS (default) or CXXFLAGS
- AC_DEFUN([CF_INTEL_COMPILER],[
-+AC_REQUIRE([AC_CANONICAL_HOST])
- ifelse([$2],,INTEL_COMPILER,[$2])=no
-
- if test "$ifelse([$1],,[$1],GCC)" = yes ; then
-@@ -2518,7 +2899,7 @@
- make an error
- #endif
- ],[ifelse([$2],,INTEL_COMPILER,[$2])=yes
--cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
-+cf_save_CFLAGS="$cf_save_CFLAGS -we147"
- ],[])
- ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS"
- AC_MSG_RESULT($ifelse([$2],,INTEL_COMPILER,[$2]))
-@@ -2527,7 +2908,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ISASCII version: 3 updated: 2000/08/12 23:18:52
-+dnl CF_ISASCII version: 4 updated: 2012/10/06 17:56:13
- dnl ----------
- dnl Check if we have either a function or macro for 'isascii()'.
- AC_DEFUN([CF_ISASCII],
-@@ -2539,10 +2920,10 @@
- [cf_cv_have_isascii=no])
- ])dnl
- AC_MSG_RESULT($cf_cv_have_isascii)
--test "$cf_cv_have_isascii" = yes && AC_DEFINE(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: 7 updated: 2007/06/02 11:58:50
-+dnl CF_LARGEFILE version: 8 updated: 2012/10/06 08:57:51
- dnl ------------
- dnl Add checks for large file support.
- AC_DEFUN([CF_LARGEFILE],[
-@@ -2576,12 +2957,12 @@
- [cf_cv_struct_dirent64=yes],
- [cf_cv_struct_dirent64=no])
- ])
-- test "$cf_cv_struct_dirent64" = yes && AC_DEFINE(HAVE_STRUCT_DIRENT64)
-+ test "$cf_cv_struct_dirent64" = yes && AC_DEFINE(HAVE_STRUCT_DIRENT64,1,[Define to 1 if we have struct dirent64])
- fi
- ])
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_LDFLAGS_STATIC version: 8 updated: 2010/10/23 14:39:56
-+dnl CF_LDFLAGS_STATIC version: 10 updated: 2011/09/24 12:51:48
- 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
-@@ -2602,7 +2983,7 @@
- esac
- else
- case $cf_cv_system_name in #(
-- aix[[456]]*) #( from ld manpage
-+ aix[[4-7]]*) #( from ld manpage
- LDFLAGS_STATIC=-bstatic
- LDFLAGS_SHARED=-bdynamic
- ;;
-@@ -2652,7 +3033,17 @@
- int cf_ldflags_static(FILE *fp);
- ],[
- return cf_ldflags_static(stdin);
--],[cf_ldflags_static=yes],[cf_ldflags_static=no])
-+],[
-+ # some linkers simply ignore the -dynamic
-+ case x`file conftest$ac_exeext 2>/dev/null` in #(vi
-+ *static*) # (vi
-+ cf_ldflags_static=no
-+ ;;
-+ *)
-+ cf_ldflags_static=yes
-+ ;;
-+ esac
-+],[cf_ldflags_static=no])
-
- rm -f libconftest.*
- LIBS="$cf_save_LIBS"
-@@ -2673,7 +3064,7 @@
- AC_SUBST(LDFLAGS_SHARED)
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_LD_RPATH_OPT version: 3 updated: 2010/06/02 05:03:05
-+dnl CF_LD_RPATH_OPT version: 5 updated: 2011/07/17 14:48:41
- dnl ---------------
- dnl For the given system and compiler, find the compiler flags to pass to the
- dnl loader to use the "rpath" feature.
-@@ -2694,10 +3085,10 @@
- linux*|gnu*|k*bsd*-gnu) #(vi
- LD_RPATH_OPT="-Wl,-rpath,"
- ;;
--openbsd[[2-9]].*) #(vi
-+openbsd[[2-9]].*|mirbsd*) #(vi
- LD_RPATH_OPT="-Wl,-rpath,"
- ;;
--freebsd*) #(vi
-+dragonfly*|freebsd*) #(vi
- LD_RPATH_OPT="-rpath "
- ;;
- netbsd*) #(vi
-@@ -2756,11 +3147,23 @@
- $1="$cf_library_path_list [$]$1"
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_LIB_PREFIX version: 8 updated: 2008/09/13 11:34:16
-+dnl CF_LIBTOOL_VERSION version: 1 updated: 2013/04/06 18:03:09
-+dnl ------------------
-+AC_DEFUN([CF_LIBTOOL_VERSION],[
-+if test -n "$LIBTOOL" && test "$LIBTOOL" != none
-+then
-+ cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([[^)]]*)//g' -e 's/^[[^1-9]]*//' -e 's/[[^0-9.]].*//'`
-+else
-+ cf_cv_libtool_version=
-+fi
-+test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_LIB_PREFIX version: 9 updated: 2012/01/21 19:28:10
- dnl -------------
- dnl Compute the library-prefix for the given host system
- dnl $1 = variable to set
--AC_DEFUN([CF_LIB_PREFIX],
-+define([CF_LIB_PREFIX],
- [
- case $cf_cv_system_name in #(vi
- OS/2*|os2*) #(vi
-@@ -2773,11 +3176,11 @@
- AC_SUBST(LIB_PREFIX)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_LIB_RULES version: 61 updated: 2010/10/23 16:10:30
-+dnl CF_LIB_RULES version: 75 updated: 2014/09/20 20:16:32
- 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
--dnl subdirectory is a library-source directory, modify the LIBS_TO_MAKE list in
-+dnl subdirectory is a library-source directory, modify the Libs_To_Make list in
- dnl the corresponding makefile to list the models that we'll generate.
- dnl
- dnl For shared libraries, make a list of symbolic links to construct when
-@@ -2786,15 +3189,19 @@
- dnl lib<name>.so ->
- dnl lib<name>.so.<major> ->
- 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],
- [
--CF_LIB_PREFIX(cf_prefix)
-+cf_prefix=$LIB_PREFIX
- AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
-
--if test $cf_cv_shlib_version = cygdll ; then
-+case $cf_cv_shlib_version in #(vi
-+cygdll|msysdll|mingw)
- TINFO_NAME=$TINFO_ARG_SUFFIX
- TINFO_SUFFIX=.dll
--fi
-+ ;;
-+esac
-
- if test -n "$TINFO_SUFFIX" ; then
- case $TINFO_SUFFIX in
-@@ -2820,79 +3227,78 @@
- elif test -f $srcdir/$cf_dir/modules; then
-
- SHARED_LIB=
-- LIBS_TO_MAKE=
-+ Libs_To_Make=
- 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_cv_do_symlinks" = yes ; then
-- case "$cf_cv_shlib_version" in #(vi
-- rel) #(vi
-- case "$cf_cv_system_name" in #(vi
-- darwin*)
-- case .${LIB_SUFFIX} in
-- .tw*)
-- cf_suffix=`echo $cf_suffix | sed 's/^tw//'`
-- cf_suffix=tw'.${REL_VERSION}'"$cf_suffix"
-- ;;
-- .t*)
-- cf_suffix=`echo $cf_suffix | sed 's/^t//'`
-- cf_suffix=t'.${REL_VERSION}'"$cf_suffix"
-- ;;
-- .w*)
-- cf_suffix=`echo $cf_suffix | sed 's/^w//'`
-- cf_suffix=w'.${REL_VERSION}'"$cf_suffix"
-+ if test -n "${LIB_SUFFIX}"
-+ then
-+ cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${LIB_SUFFIX}"'//'`
-+ else
-+ cf_shared_suffix="$cf_suffix"
-+ fi
-+ if test "$cf_cv_do_symlinks" = yes ; then
-+ cf_version_name=
-+
-+ case "$cf_cv_shlib_version" in #(vi
-+ rel) #(vi
-+ cf_version_name=REL_VERSION
- ;;
-- *)
-- cf_suffix='.${REL_VERSION}'"$cf_suffix"
-+ abi)
-+ cf_version_name=ABI_VERSION
- ;;
- esac
-- ;; #(vi
-- *) cf_suffix="$cf_suffix"'.${REL_VERSION}' ;;
-- esac
-- ;;
-- abi)
-- case "$cf_cv_system_name" in #(vi
-- darwin*)
-- case .${LIB_SUFFIX} in
-- .tw*)
-- cf_suffix=`echo $cf_suffix | sed 's/^tw//'`
-- cf_suffix=tw'.${ABI_VERSION}'"$cf_suffix"
-- ;;
-- .t*)
-- cf_suffix=`echo $cf_suffix | sed 's/^t//'`
-- cf_suffix=t'.${ABI_VERSION}'"$cf_suffix"
-- ;;
-- .w*)
-- cf_suffix=`echo $cf_suffix | sed 's/^w//'`
-- cf_suffix=w'.${ABI_VERSION}'"$cf_suffix"
-- ;;
-- *)
-- cf_suffix='.${ABI_VERSION}'"$cf_suffix"
-- ;;
-- esac
-- ;; #(vi
-- *) cf_suffix="$cf_suffix"'.${ABI_VERSION}' ;;
-- esac
-+
-+ if test -n "$cf_version_name"
-+ then
-+ case "$cf_cv_system_name" in #(vi
-+ darwin*)
-+ # "w", etc?
-+ cf_suffix="${LIB_SUFFIX}"'.${'$cf_version_name'}'"$cf_shared_suffix"
-+ ;; #(vi
-+ *)
-+ cf_suffix="$cf_suffix"'.${'$cf_version_name'}'
-+ ;;
-+ esac
-+ fi
-+ if test -n "${LIB_SUFFIX}"
-+ then
-+ cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${LIB_SUFFIX}"'//'`
-+ else
-+ cf_shared_suffix="$cf_suffix"
-+ fi
-+ fi
-+ # 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 #(vi
-+ cygdll) #(vi
-+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
-+ Libs_To_Make="$Libs_To_Make ../lib/cyg${cf_libname}${cf_cygsuf}"
-+ continue
-+ ;;
-+ msysdll) #(vi
-+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
-+ Libs_To_Make="$Libs_To_Make ../lib/msys-${cf_libname}${cf_cygsuf}"
-+ continue
-+ ;;
-+ mingw)
-+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
-+ Libs_To_Make="$Libs_To_Make ../lib/lib${cf_libname}${cf_cygsuf}"
-+ continue
- ;;
- esac
- fi
-- # 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.
-- if test $cf_cv_shlib_version = cygdll ; then
-- cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
-- LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/cyg${cf_dir}${cf_cygsuf}"
-- continue
-- fi
-- fi
-- LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/${cf_prefix}${cf_dir}${cf_suffix}"
-+ Libs_To_Make="$Libs_To_Make ../lib/${cf_prefix}${cf_libname}${cf_suffix}"
- done
-
- if test $cf_dir = ncurses ; then
- cf_subsets="$LIB_SUBSETS"
- cf_r_parts="$cf_subsets"
-- cf_liblist="$LIBS_TO_MAKE"
-+ cf_liblist="$Libs_To_Make"
-
- while test -n "$cf_r_parts"
- do
-@@ -2912,7 +3318,7 @@
- ;;
- esac
- if test -n "$cf_item"; then
-- LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE"
-+ Libs_To_Make="$cf_item $Libs_To_Make"
- fi
- else
- break
-@@ -2922,13 +3328,40 @@
- cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'`
- fi
-
-- sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \
-+ 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
-+ *.a)
-+ ;;
-+ *)
-+ cf_item=`echo "$cf_item" | sed -e "s,"$cf_shared_suffix",.a,"`
-+ ;;
-+ esac
-+ for cf_test in $cf_list
-+ do
-+ if test "$cf_test" = "$cf_item"
-+ then
-+ cf_LIST_MODELS=`echo "$cf_LIST_MODELS" | sed -e 's/normal//'`
-+ cf_item=
-+ break
-+ fi
-+ done
-+ test -n "$cf_item" && cf_list="$cf_list $cf_item"
-+ done
-+ Libs_To_Make="$cf_list"
-+ fi
-+ fi
-+
-+ 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
-
- $AWK -f $srcdir/mk-0th.awk \
-- libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \
-+ libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" ticlib="$TICS_LIB_SUFFIX" termlib="$TINFO_LIB_SUFFIX" \
- $srcdir/$cf_dir/modules >>$cf_dir/Makefile
-
- for cf_subset in $cf_subsets
-@@ -2936,8 +3369,23 @@
- cf_subdirs=
- for cf_item in $cf_LIST_MODELS
- do
-+
- echo "Appending rules for ${cf_item} model (${cf_dir}: ${cf_subset})"
- CF_UPPER(cf_ITEM,$cf_item)
-+
-+ CXX_MODEL=$cf_ITEM
-+ if test "$CXX_MODEL" = SHARED; then
-+ case $cf_cv_shlib_version in #(vi
-+ cygdll|msysdll|mingw) #(vi
-+ test "x$with_shared_cxx" = xno && CF_VERBOSE(overriding CXX_MODEL to SHARED)
-+ with_shared_cxx=yes
-+ ;;
-+ *)
-+ test "x$with_shared_cxx" = xno && CXX_MODEL=NORMAL
-+ ;;
-+ esac
-+ fi
-+
- CF_LIB_SUFFIX($cf_item,cf_suffix,cf_depsuf)
- CF_OBJ_SUBDIR($cf_item,cf_subdir)
-
-@@ -2955,6 +3403,8 @@
- cf_libname=$TICS_LIB_SUFFIX
- ;;
- esac
-+ elif test $cf_dir = c++ ; then
-+ cf_libname=ncurses++$LIB_SUFFIX
- else
- cf_libname=${cf_libname}$LIB_SUFFIX
- fi
-@@ -3006,10 +3456,12 @@
- name=${cf_libname}${cf_dir_suffix} \
- traces=$LIB_TRACING \
- MODEL=$cf_ITEM \
-+ CXX_MODEL=$CXX_MODEL \
- model=$cf_subdir \
- prefix=$cf_prefix \
- suffix=$cf_suffix \
- subset=$cf_subset \
-+ driver=$cf_cv_term_driver \
- SymLink="$LN_S" \
- TermlibRoot=$TINFO_NAME \
- TermlibSuffix=$TINFO_SUFFIX \
-@@ -3048,7 +3500,7 @@
- done
- fi
-
-- echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} [$]@' >>Makefile
-+ echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} [$]@' >>Makefile
- done
-
- for cf_dir in $SRC_SUBDIRS
-@@ -3063,7 +3515,7 @@
- echo 'libs \' >> Makefile
- echo 'install.libs \' >> Makefile
- echo 'uninstall.libs ::' >> Makefile
-- echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} [$]@' >> Makefile
-+ echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} [$]@' >> Makefile
- ;;
- esac
- fi
-@@ -3086,7 +3538,7 @@
- uninstall.libs \\
- install.$cf_dir \\
- uninstall.$cf_dir ::
-- cd $cf_dir && \${MAKE} \${CF_MFLAGS} \[$]@
-+ cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \[$]@
- CF_EOF
- elif test -f $srcdir/$cf_dir/headers; then
- cat >> Makefile <<CF_EOF
-@@ -3096,24 +3548,32 @@
- uninstall.libs \\
- install.includes \\
- uninstall.includes ::
-- cd $cf_dir && \${MAKE} \${CF_MFLAGS} \[$]@
-+ cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \[$]@
- CF_EOF
- fi
- done
-
-+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} \${CF_MFLAGS} \[$]@
-+$MAKE_TERMINFO cd misc && \${MAKE} \${TOP_MFLAGS} \[$]@
-+CF_EOF
-+else
-+cat >> Makefile <<CF_EOF
-+
-+install.libs uninstall.libs ::
-+ cd misc && \${MAKE} \${TOP_MFLAGS} \[$]@
- CF_EOF
-+fi
-
- if test "x$cf_with_manpages" = xyes; then
- cat >> Makefile <<CF_EOF
-
- install.man \\
- uninstall.man ::
-- cd man && \${MAKE} \${CF_MFLAGS} \[$]@
-+ cd man && \${MAKE} \${TOP_MFLAGS} \[$]@
- CF_EOF
- fi
-
-@@ -3134,7 +3594,7 @@
-
- install.man \\
- uninstall.man ::
-- cd tack && \${MAKE} \${CF_MFLAGS} \[$]@
-+ cd tack && \${MAKE} \${TOP_MFLAGS} \[$]@
- CF_EOF
- fi
- fi
-@@ -3252,7 +3712,7 @@
- fi
- fi
- done
--AC_SUBST(LIBS_TO_MAKE)
-+AC_SUBST(Libs_To_Make)
- ])dnl
- dnl ---------------------------------------------------------------------------
- dnl CF_LIB_SONAME version: 5 updated: 2010/08/14 18:25:37
-@@ -3292,7 +3752,7 @@
- ])
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_LIB_SUFFIX version: 16 updated: 2008/12/27 12:30:03
-+dnl CF_LIB_SUFFIX version: 23 updated: 2014/06/21 17:47:12
- dnl -------------
- dnl Compute the library file-suffix from the given model name
- dnl $1 = model name
-@@ -3301,31 +3761,26 @@
- dnl The variable $LIB_SUFFIX, if set, prepends the variable to set.
- AC_DEFUN([CF_LIB_SUFFIX],
- [
-- AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
-- case $1 in #(vi
-- libtool) #(vi
-+ case X$1 in #(vi
-+ Xlibtool) #(vi
- $2='.la'
- $3=[$]$2
- ;;
-- normal) #(vi
-- $2='.a'
-- $3=[$]$2
-- ;;
-- debug) #(vi
-+ Xdebug) #(vi
- $2='_g.a'
- $3=[$]$2
- ;;
-- profile) #(vi
-+ Xprofile) #(vi
- $2='_p.a'
- $3=[$]$2
- ;;
-- shared) #(vi
-+ Xshared) #(vi
- case $cf_cv_system_name in
-- aix[[56]]*) #(vi
-- $2='.a'
-+ aix[[5-7]]*) #(vi
-+ $2='.so'
- $3=[$]$2
- ;;
-- cygwin*) #(vi
-+ cygwin*|msys*|mingw*) #(vi
- $2='.dll'
- $3='.dll.a'
- ;;
-@@ -3345,10 +3800,16 @@
- ;;
- esac
- ;;
-- *) $2='.so'
-+ *) #(vi
-+ $2='.so'
- $3=[$]$2
- ;;
- esac
-+ ;;
-+ *)
-+ $2='.a'
-+ $3=[$]$2
-+ ;;
- esac
- test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
- test -n "$LIB_SUFFIX" && $3="${LIB_SUFFIX}[$]{$3}"
-@@ -3372,7 +3833,7 @@
- test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_LINK_DATAONLY version: 9 updated: 2009/01/01 20:21:38
-+dnl CF_LINK_DATAONLY version: 10 updated: 2012/10/06 17:41:51
- dnl ----------------
- dnl Some systems have a non-ANSI linker that doesn't pull in modules that have
- dnl only data (i.e., no functions), for example NeXT. On those systems we'll
-@@ -3429,13 +3890,13 @@
- AC_MSG_RESULT($cf_cv_link_dataonly)
-
- if test "$cf_cv_link_dataonly" = no ; then
-- AC_DEFINE(BROKEN_LINKER)
-+ AC_DEFINE(BROKEN_LINKER,1,[if data-only library module does not link])
- BROKEN_LINKER=1
- fi
-
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_LINK_FUNCS version: 7 updated: 2006/12/16 12:33:30
-+dnl CF_LINK_FUNCS version: 8 updated: 2012/10/06 17:56:13
- 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.
-@@ -3487,24 +3948,12 @@
- done
- test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no
- ])
-- test "$ac_cv_func_link" = yes && AC_DEFINE(HAVE_LINK)
-- test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK)
-+ test "$ac_cv_func_link" = yes && AC_DEFINE(HAVE_LINK,1,[Define to 1 if we have link() function])
-+ test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK,1,[Define to 1 if we have symlink() function])
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_MAIN_RETURN version: 1 updated: 2006/12/10 09:51:54
--dnl --------------
--dnl Check if a return from main to the shell actually returns the same exit
--dnl code. This is true for almost any POSIX environment.
--dnl
--dnl Some very old environments did not flush stdout, etc., on an exit. That
--dnl would be a useful case to test for also.
--AC_DEFUN([CF_MAIN_RETURN],
--[
--cf_cv_main_return=return
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_MAKEFLAGS version: 14 updated: 2011/03/31 19:29:46
-+dnl CF_MAKEFLAGS version: 15 updated: 2014/05/10 16:43:23
- 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.
-@@ -3523,7 +3972,7 @@
- CF_EOF
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | fgrep -v "ing directory" | sed -e 's,[[ ]]*$,,'`
- case "$cf_result" in
-- .*k)
-+ .*k|.*kw)
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`
- case "$cf_result" in
- .*CC=*) cf_cv_makeflags=
-@@ -3799,7 +4248,7 @@
- AC_MSG_RESULT($MANPAGE_TBL)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_MAN_PAGES version: 39 updated: 2010/10/23 15:44:18
-+dnl CF_MAN_PAGES version: 43 updated: 2013/02/09 12:53:45
- 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
-@@ -3856,6 +4305,7 @@
- # this script is generated by the configure-script CF_MAN_PAGES macro.
-
- prefix="$cf_prefix"
-+datarootdir="$datarootdir"
- datadir="$datadir"
-
- NCURSES_MAJOR="$NCURSES_MAJOR"
-@@ -3916,11 +4366,12 @@
- if test ! -f $cf_man_alias ; then
- cat >>$cf_man_alias <<-CF_EOF2
- s,@DATADIR@,\$datadir,g
-- s,@TERMINFO@,\$TERMINFO,g
-- s,@NCURSES_MAJOR@,\$NCURSES_MAJOR,g
-- s,@NCURSES_MINOR@,\$NCURSES_MINOR,g
-- s,@NCURSES_PATCH@,\$NCURSES_PATCH,g
-- s,@NCURSES_OSPEED@,\$NCURSES_OSPEED,g
-+ s,@TERMINFO@,\${TERMINFO:="no default value"},g
-+ s,@TERMINFO_DIRS@,\${TERMINFO_DIRS:="no default value"},g
-+ s,@NCURSES_MAJOR@,\${NCURSES_MAJOR:="no default value"},g
-+ s,@NCURSES_MINOR@,\${NCURSES_MINOR:="no default value"},g
-+ s,@NCURSES_PATCH@,\${NCURSES_PATCH:="no default value"},g
-+ s,@NCURSES_OSPEED@,\${NCURSES_OSPEED:="no default value"},g
- CF_EOF
- ifelse($1,,,[
- for cf_name in $1
-@@ -3949,7 +4400,9 @@
-
- if test "$MANPAGE_ALIASES" != no ; then
- cat >>$cf_edit_man <<CF_EOF
-- aliases=\`sed -f \$top_srcdir/man/manlinks.sed \$inalias |sed -f $cf_man_alias | sort -u\`
-+ 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\`
- CF_EOF
- fi
-
-@@ -3995,6 +4448,13 @@
- fi
- CF_EOF
-
-+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
-+ mv \$TMP.out \$TMP
-+CF_EOF
-+fi
-+
- if test $with_curses_h != yes ; then
- cat >>$cf_edit_man <<CF_EOF
- sed -e "/\#[ ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
-@@ -4154,7 +4614,7 @@
- fi
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55
-+dnl CF_MIXEDCASE_FILENAMES version: 6 updated: 2013/10/08 17:47:05
- 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.
-@@ -4163,7 +4623,7 @@
- AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
- if test "$cross_compiling" = yes ; then
- case $target_alias in #(vi
-- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
-+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi
- cf_cv_mixedcase=no
- ;;
- *)
-@@ -4181,10 +4641,10 @@
- rm -f conftest CONFTEST
- fi
- ])
--test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES)
-+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: 7 updated: 2010/08/14 18:25:37
-+dnl CF_MKSTEMP version: 9 updated: 2012/10/03 04:34:49
- 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).
-@@ -4226,11 +4686,13 @@
- }
- ],[cf_cv_func_mkstemp=yes
- ],[cf_cv_func_mkstemp=no
--],[AC_CHECK_FUNC(mkstemp)
--])
-+],[cf_cv_func_mkstemp=maybe])
- ])
-+if test "x$cf_cv_func_mkstemp" = xmaybe ; then
-+ AC_CHECK_FUNC(mkstemp)
-+fi
- if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then
-- AC_DEFINE(HAVE_MKSTEMP)
-+ AC_DEFINE(HAVE_MKSTEMP,1,[Define to 1 if mkstemp() is available and working.])
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
-@@ -4258,14 +4720,14 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NO_LEAKS_OPTION version: 4 updated: 2006/12/16 14:24:05
-+dnl CF_NO_LEAKS_OPTION version: 5 updated: 2012/10/02 20:55:03
- dnl ------------------
- dnl see CF_WITH_NO_LEAKS
- AC_DEFUN([CF_NO_LEAKS_OPTION],[
- AC_MSG_CHECKING(if you want to use $1 for testing)
- AC_ARG_WITH($1,
- [$2],
-- [AC_DEFINE($3)ifelse([$4],,[
-+ [AC_DEFINE_UNQUOTED($3,1,"Define to 1 if you want to use $1 for testing.")ifelse([$4],,[
- $4
- ])
- : ${with_cflags:=-g}
-@@ -4306,7 +4768,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_OBJ_SUBDIR version: 4 updated: 2002/02/23 20:38:31
-+dnl CF_OBJ_SUBDIR version: 6 updated: 2013/09/07 14:06:10
- dnl -------------
- dnl Compute the object-directory name from the given model name
- AC_DEFUN([CF_OBJ_SUBDIR],
-@@ -4318,7 +4780,7 @@
- profile) $2='obj_p' ;;
- shared)
- case $cf_cv_system_name in #(vi
-- cygwin) #(vi
-+ cygwin|msys) #(vi
- $2='objects' ;;
- *)
- $2='obj_s' ;;
-@@ -4326,20 +4788,23 @@
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PATHSEP version: 5 updated: 2010/05/26 05:38:42
-+dnl CF_PATHSEP version: 6 updated: 2012/09/29 18:38:12
- dnl ----------
--dnl Provide a value for the $PATH and similar separator
-+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
- os2*) PATH_SEPARATOR=';' ;;
-- *) PATH_SEPARATOR=':' ;;
-+ *) ${PATH_SEPARATOR:=':'} ;;
- esac
- ifelse([$1],,,[$1=$PATH_SEPARATOR])
- AC_SUBST(PATH_SEPARATOR)
-+ AC_MSG_RESULT($PATH_SEPARATOR)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PATH_SYNTAX version: 13 updated: 2010/05/26 05:38:42
-+dnl CF_PATH_SYNTAX version: 14 updated: 2012/06/19 20:58:54
- 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
-@@ -4359,7 +4824,7 @@
- ;;
- .[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX
- ;;
--.\[$]{*prefix}*) #(vi
-+.\[$]{*prefix}*|.\[$]{*dir}*) #(vi
- eval $1="[$]$1"
- case ".[$]$1" in #(vi
- .NONE/*)
-@@ -4376,7 +4841,7 @@
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PKG_CONFIG version: 4 updated: 2011/02/18 20:26:24
-+dnl CF_PKG_CONFIG version: 7 updated: 2011/04/29 04:53:22
- dnl -------------
- dnl Check for the package-config program, unless disabled by command-line.
- AC_DEFUN([CF_PKG_CONFIG],
-@@ -4393,7 +4858,9 @@
- PKG_CONFIG=none
- ;;
- yes) #(vi
-- AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)
-+ CF_ACVERSION_CHECK(2.52,
-+ [AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)],
-+ [AC_PATH_PROG(PKG_CONFIG, pkg-config, none)])
- ;;
- *)
- PKG_CONFIG=$withval
-@@ -4554,6 +5021,19 @@
- test -z "$AWK" && AC_MSG_ERROR(No awk program found)
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_PROG_CC version: 4 updated: 2014/07/12 18:57:58
-+dnl ----------
-+dnl standard check for CC, plus followup sanity checks
-+dnl $1 = optional parameter to pass to AC_PROG_CC to specify compiler name
-+AC_DEFUN([CF_PROG_CC],[
-+ifelse($1,,[AC_PROG_CC],[AC_PROG_CC($1)])
-+CF_GCC_VERSION
-+CF_ACVERSION_CHECK(2.52,
-+ [AC_PROG_CC_STDC],
-+ [CF_ANSI_CC_REQD])
-+CF_CC_ENV_FLAGS
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_PROG_CC_C_O version: 3 updated: 2010/08/14 18:25:37
- dnl --------------
- dnl Analogous to AC_PROG_CC_C_O, but more useful: tests only $CC, ensures that
-@@ -4593,31 +5073,6 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PROG_CC_U_D version: 1 updated: 2005/07/14 16:59:30
--dnl --------------
--dnl Check if C (preprocessor) -U and -D options are processed in the order
--dnl given rather than by type of option. Some compilers insist on apply all
--dnl of the -U options after all of the -D options. Others allow mixing them,
--dnl and may predefine symbols that conflict with those we define.
--AC_DEFUN([CF_PROG_CC_U_D],
--[
--AC_CACHE_CHECK(if $CC -U and -D options work together,cf_cv_cc_u_d_options,[
-- cf_save_CPPFLAGS="$CPPFLAGS"
-- CPPFLAGS="-UU_D_OPTIONS -DU_D_OPTIONS -DD_U_OPTIONS -UD_U_OPTIONS"
-- AC_TRY_COMPILE([],[
--#ifndef U_D_OPTIONS
--make an undefined-error
--#endif
--#ifdef D_U_OPTIONS
--make a defined-error
--#endif
-- ],[
-- cf_cv_cc_u_d_options=yes],[
-- cf_cv_cc_u_d_options=no])
-- CPPFLAGS="$cf_save_CPPFLAGS"
--])
--])dnl
--dnl ---------------------------------------------------------------------------
- dnl CF_PROG_EGREP version: 1 updated: 2006/09/16 11:40:59
- dnl -------------
- dnl AC_PROG_EGREP was introduced in autoconf 2.53.
-@@ -4633,32 +5088,7 @@
- test -z "$EGREP" && AC_MSG_ERROR(No egrep program found)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18
--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
--os2*)
-- CFLAGS="$CFLAGS -Zmt"
-- CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__"
-- CXXFLAGS="$CXXFLAGS -Zmt"
-- # autoconf's macro sets -Zexe and suffix both, which conflict:w
-- LDFLAGS="$LDFLAGS -Zmt -Zcrtdll"
-- ac_cv_exeext=.exe
-- ;;
--esac
--
--AC_EXEEXT
--AC_OBJEXT
--
--PROG_EXT="$EXEEXT"
--AC_SUBST(PROG_EXT)
--test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT")
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_PROG_GNAT version: 1 updated: 2010/06/19 15:22:18
-+dnl CF_PROG_GNAT version: 2 updated: 2011/10/22 14:01:47
- dnl ------------
- dnl Check for gnatmake, ensure that it is complete.
- AC_DEFUN([CF_PROG_GNAT],[
-@@ -4666,6 +5096,7 @@
- AC_CHECK_PROG(gnat_exists, $cf_ada_make, yes, no)
- if test "$ac_cv_prog_gnat_exists" = no; then
- cf_ada_make=
-+ cf_cv_prog_gnat_correct=no
- else
- CF_GNAT_VERSION
- AC_CHECK_PROG(M4_exists, m4, yes, no)
-@@ -4709,7 +5140,7 @@
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PROG_LDCONFIG version: 2 updated: 2008/12/13 14:08:40
-+dnl CF_PROG_LDCONFIG version: 3 updated: 2011/06/04 20:09:13
- dnl ----------------
- dnl Check for ldconfig, needed to fixup shared libraries that would be built
- dnl and then used in the install.
-@@ -4718,7 +5149,7 @@
- LDCONFIG=:
- else
- case "$cf_cv_system_name" in #(vi
--dragonfly*|freebsd*) #(vi
-+dragonfly*|mirbsd*|freebsd*) #(vi
- test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R"
- ;;
- *) LDPATH=$PATH:/sbin:/usr/sbin
-@@ -4759,7 +5190,7 @@
- test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f"
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_REGEX version: 8 updated: 2010/08/07 14:09:44
-+dnl CF_REGEX version: 10 updated: 2012/10/04 20:12:20
- dnl --------
- dnl Attempt to determine if we've got one of the flavors of regular-expression
- dnl code that we can support.
-@@ -4771,7 +5202,7 @@
- cf_regex_libs="regex re"
- case $host_os in #(vi
- mingw*)
-- cf_regex_libs="regex.dll $cf_regex_libs"
-+ cf_regex_libs="gnurx $cf_regex_libs"
- ;;
- esac
-
-@@ -4833,9 +5264,9 @@
-
- case $cf_cv_regex_hdrs in #(vi
- no) AC_MSG_WARN(no regular expression header found) ;; #(vi
-- regex.h) AC_DEFINE(HAVE_REGEX_H_FUNCS) ;; #(vi
-- regexp.h) AC_DEFINE(HAVE_REGEXP_H_FUNCS) ;; #(vi
-- regexpr.h) AC_DEFINE(HAVE_REGEXPR_H_FUNCS) ;;
-+ regex.h) AC_DEFINE(HAVE_REGEX_H_FUNCS,1,[Define to 1 to include regex.h for regular expressions]) ;; #(vi
-+ regexp.h) AC_DEFINE(HAVE_REGEXP_H_FUNCS,1,[Define to 1 to include regexp.h for regular expressions]) ;; #(vi
-+ regexpr.h) AC_DEFINE(HAVE_REGEXPR_H_FUNCS,1,[Define to 1 to include regexpr.h for regular expressions]) ;;
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
-@@ -4869,7 +5300,7 @@
- $1=`echo "$2" | sed -e 's/-l$3[[ ]]//g' -e 's/-l$3[$]//'`
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_RPATH_HACK version: 9 updated: 2011/02/13 13:31:33
-+dnl CF_RPATH_HACK version: 11 updated: 2013/09/01 13:02:00
- dnl -------------
- AC_DEFUN([CF_RPATH_HACK],
- [
-@@ -4886,8 +5317,8 @@
-
- AC_TRY_LINK([#include <stdio.h>],
- [printf("Hello");],
-- [cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort -u`
-- cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[[ ]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort -u`])
-+ [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`])
-
- # 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
-@@ -4920,6 +5351,8 @@
- CF_RPATH_HACK_2(LIBS)
-
- CF_VERBOSE(...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS)
-+else
-+ AC_MSG_RESULT(no)
- fi
- AC_SUBST(EXTRA_LDFLAGS)
- ])dnl
-@@ -4984,18 +5417,19 @@
- AC_SUBST(EXTRA_LDFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_SHARED_OPTS version: 64 updated: 2010/06/05 16:51:16
-+dnl CF_SHARED_OPTS version: 84 updated: 2013/11/03 06:26:10
- dnl --------------
- dnl --------------
- dnl Attempt to determine the appropriate CC/LD options for creating a shared
- dnl library.
- dnl
--dnl Note: ${LOCAL_LDFLAGS} is used to link executables that will run within the
--dnl build-tree, i.e., by making use of the libraries that are compiled in ../lib
--dnl We avoid compiling-in a ../lib path for the shared library since that can
--dnl lead to unexpected results at runtime.
--dnl ${LOCAL_LDFLAGS2} has the same intention but assumes that the shared libraries
--dnl are compiled in ../../lib
-+dnl Notes:
-+dnl a) ${LOCAL_LDFLAGS} is used to link executables that will run within
-+dnl the build-tree, i.e., by making use of the libraries that are compiled in
-+dnl $rel_builddir/lib We avoid compiling-in a $rel_builddir/lib path for the
-+dnl shared library since that can lead to unexpected results at runtime.
-+dnl b) ${LOCAL_LDFLAGS2} has the same intention but assumes that the shared
-+dnl libraries are compiled in ../../lib
- dnl
- dnl The variable 'cf_cv_do_symlinks' is used to control whether we configure
- dnl to install symbolic links to the rel/abi versions of shared libraries.
-@@ -5010,12 +5444,19 @@
- dnl Some loaders leave 'so_locations' lying around. It's nice to clean up.
- AC_DEFUN([CF_SHARED_OPTS],
- [
-- AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
- AC_REQUIRE([CF_LD_RPATH_OPT])
-+ RM_SHARED_OPTS=
- LOCAL_LDFLAGS=
- LOCAL_LDFLAGS2=
- LD_SHARED_OPTS=
- INSTALL_LIB="-m 644"
-+ : ${rel_builddir:=.}
-+
-+ shlibdir=$libdir
-+ AC_SUBST(shlibdir)
-+
-+ MAKE_DLLS="#"
-+ AC_SUBST(MAKE_DLLS)
-
- cf_cv_do_symlinks=no
- cf_ld_rpath_opt=
-@@ -5040,6 +5481,7 @@
- AC_MSG_RESULT($cf_cv_shlib_version)
-
- cf_cv_rm_so_locs=no
-+ cf_try_cflags=
-
- # Some less-capable ports of gcc support only -fpic
- CC_SHARED_OPTS=
-@@ -5059,10 +5501,14 @@
- cf_cv_shlib_version_infix=no
-
- case $cf_cv_system_name in #(vi
-- aix[[56]]*) #(vi
-+ aix4.[3-9]*|aix[[5-7]]*) #(vi
- if test "$GCC" = yes; then
- CC_SHARED_OPTS=
-- MK_SHARED_LIB='$(CC) -shared'
-+ MK_SHARED_LIB='${CC} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@'
-+ else
-+ # CC_SHARED_OPTS='-qpic=large -G'
-+ # perhaps "-bM:SRE -bnoentry -bexpall"
-+ MK_SHARED_LIB='${CC} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@'
- fi
- ;;
- beos*) #(vi
-@@ -5070,9 +5516,12 @@
- ;;
- cygwin*) #(vi
- CC_SHARED_OPTS=
-- MK_SHARED_LIB='sh ../mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}'
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
- cf_cv_shlib_version=cygdll
- cf_cv_shlib_version_infix=cygdll
-+ shlibdir=$bindir
-+ MAKE_DLLS=
- cat >mk_shared_lib.sh <<-CF_EOF
- #!/bin/sh
- SHARED_LIB=\[$]1
-@@ -5083,12 +5532,34 @@
- ** SHARED_LIB \[$]SHARED_LIB
- ** IMPORT_LIB \[$]IMPORT_LIB
- EOF
-- exec \[$]* -shared -Wl,--out-implib=../lib/\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o ../lib/\[$]{SHARED_LIB}
-+ exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
-+CF_EOF
-+ chmod +x mk_shared_lib.sh
-+ ;;
-+ msys*) #(vi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
-+ cf_cv_shlib_version=msysdll
-+ cf_cv_shlib_version_infix=msysdll
-+ shlibdir=$bindir
-+ MAKE_DLLS=
-+ cat >mk_shared_lib.sh <<-CF_EOF
-+ #!/bin/sh
-+ SHARED_LIB=\[$]1
-+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/msys-/lib/' -e 's/[[0-9]]*\.dll[$]/.dll.a/'\`
-+ shift
-+ cat <<-EOF
-+ Linking shared library
-+ ** SHARED_LIB \[$]SHARED_LIB
-+ ** IMPORT_LIB \[$]IMPORT_LIB
-+EOF
-+ exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
- CF_EOF
- chmod +x mk_shared_lib.sh
- ;;
- darwin*) #(vi
-- EXTRA_CFLAGS="-no-cpp-precomp"
-+ cf_try_cflags="no-cpp-precomp"
- CC_SHARED_OPTS="-dynamic"
- MK_SHARED_LIB='${CC} ${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
-@@ -5102,6 +5573,14 @@
- LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
- fi
- ;;
-+ hpux[[7-8]]*) #(vi
-+ # HP-UX 8.07 ld lacks "+b" option used for libdir search-list
-+ if test "$GCC" != yes; then
-+ CC_SHARED_OPTS='+Z'
-+ fi
-+ MK_SHARED_LIB='${LD} -b -o $[@]'
-+ INSTALL_LIB="-m 555"
-+ ;;
- hpux*) #(vi
- # (tested with gcc 2.7.2 -- I don't have c89)
- if test "$GCC" = yes; then
-@@ -5115,9 +5594,19 @@
- # readonly to exploit a quirk in the memory manager.
- INSTALL_LIB="-m 555"
- ;;
-+ interix*)
-+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
-+ if test "$cf_cv_shlib_version" = rel; then
-+ cf_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}'
-+ else
-+ cf_shared_soname='`basename $@`'
-+ fi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o $@'
-+ ;;
- irix*) #(vi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- # tested with IRIX 5.2 and 'cc'.
- if test "$GCC" != yes; then
-@@ -5134,18 +5623,45 @@
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- CF_SHARED_SONAME
- MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
- ;;
-- openbsd[[2-9]].*) #(vi
-+ mingw*) #(vi
-+ cf_cv_shlib_version=mingw
-+ cf_cv_shlib_version_infix=mingw
-+ shlibdir=$bindir
-+ MAKE_DLLS=
-+ if test "$DFT_LWR_MODEL" = "shared" ; then
-+ LOCAL_LDFLAGS="-Wl,--enable-auto-import"
-+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
-+ EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS"
-+ fi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
-+ cat >mk_shared_lib.sh <<-CF_EOF
-+ #!/bin/sh
-+ SHARED_LIB=\[$]1
-+ IMPORT_LIB=\`echo "\[$]1" | sed -e 's/[[0-9]]*\.dll[$]/.dll.a/'\`
-+ shift
-+ cat <<-EOF
-+ Linking shared library
-+ ** SHARED_LIB \[$]SHARED_LIB
-+ ** IMPORT_LIB \[$]IMPORT_LIB
-+EOF
-+ exec \[$]* -shared -Wl,--enable-auto-import,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
-+CF_EOF
-+ chmod +x mk_shared_lib.sh
-+ ;;
-+ openbsd[[2-9]].*|mirbsd*) #(vi
- if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
- CF_SHARED_SONAME
-@@ -5156,12 +5672,12 @@
- MK_SHARED_LIB='${LD} -Bshareable -o $[@]'
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
- ;;
-- freebsd*) #(vi
-+ dragonfly*|freebsd*) #(vi
- CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
- if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then
- LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)"
-- LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${libdir} $LOCAL_LDFLAGS"
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${RPATH_LIST} $LOCAL_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- CF_SHARED_SONAME
- MK_SHARED_LIB='${LD} -shared -Bshareable -soname=`basename $[@]` -o $[@]'
-@@ -5171,7 +5687,7 @@
- if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then
- LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- if test "$cf_cv_shlib_version" = auto; then
- if test -f /usr/libexec/ld.elf_so; then
- cf_cv_shlib_version=abi
-@@ -5182,7 +5698,7 @@
- CF_SHARED_SONAME
- MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $[@]'
- else
-- MK_SHARED_LIB='${LD} -shared -Bshareable -o $[@]'
-+ MK_SHARED_LIB='${CC} -Wl,-shared -Wl,-Bshareable -o $[@]'
- fi
- ;;
- osf*|mls+*) #(vi
-@@ -5276,20 +5792,57 @@
- ;;
- esac
-
-- if test -n "$cf_ld_rpath_opt" ; then
-- MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${libdir}"
-+ if test -n "$cf_try_cflags"
-+ then
-+cat > conftest.$ac_ext <<EOF
-+#line __oline__ "${as_me:-configure}"
-+#include <stdio.h>
-+int main(int argc, char *argv[[]])
-+{
-+ printf("hello\n");
-+ return (argv[[argc-1]] == 0) ;
-+}
-+EOF
-+ cf_save_CFLAGS="$CFLAGS"
-+ for cf_opt in $cf_try_cflags
-+ do
-+ CFLAGS="$cf_save_CFLAGS -$cf_opt"
-+ AC_MSG_CHECKING(if CFLAGS option -$cf_opt works)
-+ if AC_TRY_EVAL(ac_compile); then
-+ AC_MSG_RESULT(yes)
-+ cf_save_CFLAGS="$CFLAGS"
-+ else
-+ AC_MSG_RESULT(no)
-+ fi
-+ done
-+ CFLAGS="$cf_save_CFLAGS"
- fi
-
-+
-+ # RPATH_LIST is a colon-separated list of directories
-+ 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"
-+
-+ CF_VERBOSE(CC_SHARED_OPTS: $CC_SHARED_OPTS)
-+ CF_VERBOSE(MK_SHARED_LIB: $MK_SHARED_LIB)
-+
- AC_SUBST(CC_SHARED_OPTS)
- AC_SUBST(LD_RPATH_OPT)
- AC_SUBST(LD_SHARED_OPTS)
- AC_SUBST(MK_SHARED_LIB)
-+ AC_SUBST(RM_SHARED_OPTS)
-+
- AC_SUBST(LINK_PROGS)
- AC_SUBST(LINK_TESTS)
-+
- AC_SUBST(EXTRA_LDFLAGS)
- AC_SUBST(LOCAL_LDFLAGS)
- AC_SUBST(LOCAL_LDFLAGS2)
-+
- AC_SUBST(INSTALL_LIB)
-+ AC_SUBST(RPATH_LIST)
- ])dnl
- dnl ---------------------------------------------------------------------------
- dnl CF_SHARED_SONAME version: 3 updated: 2008/09/08 18:34:43
-@@ -5369,7 +5922,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_SIG_ATOMIC_T version: 2 updated: 2005/09/18 17:27:12
-+dnl CF_SIG_ATOMIC_T version: 3 updated: 2012/10/04 20:12:20
- dnl ---------------
- dnl signal handler, but there are some gcc depedencies in that recommendation.
- dnl Try anyway.
-@@ -5401,10 +5954,10 @@
- done
- ])
- 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)
-+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: 8 updated: 2000/11/04 12:22:16
-+dnl CF_SIZECHANGE version: 9 updated: 2012/10/06 11:17:15
- dnl -------------
- dnl Check for definitions & structures needed for window size-changing
- dnl FIXME: check that this works with "snake" (HP-UX 10.x)
-@@ -5465,7 +6018,7 @@
- done
- ])
- if test "$cf_cv_sizechange" != no ; then
-- AC_DEFINE(HAVE_SIZECHANGE)
-+ AC_DEFINE(HAVE_SIZECHANGE,1,[Define to 1 if sizechar declarations are provided])
- case $cf_cv_sizechange in #(vi
- NEED*)
- AC_DEFINE_UNQUOTED($cf_cv_sizechange )
-@@ -5474,7 +6027,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_SRC_MODULES version: 21 updated: 2010/09/04 17:37:40
-+dnl CF_SRC_MODULES version: 28 updated: 2014/09/20 20:16:32
- 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
-@@ -5497,6 +6050,7 @@
- TEST_ARG2="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARG2"
- fi
-
-+PC_MODULES_TO_MAKE="ncurses${DFT_ARG_SUFFIX}"
- cf_cv_src_modules=
- for cf_dir in $1
- do
-@@ -5535,6 +6089,7 @@
- TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS"
- TEST_ARG2="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARG2"
- fi
-+ PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ${cf_dir}${DFT_ARG_SUFFIX}"
- fi
- fi
- done
-@@ -5561,11 +6116,20 @@
- if test "x$cf_with_tests" != "xno" ; then
- SRC_SUBDIRS="$SRC_SUBDIRS test"
- fi
--test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc"
--test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++"
-+# always make this, to install the ncurses-config script
-+SRC_SUBDIRS="$SRC_SUBDIRS misc"
-+if test "$cf_with_cxx_binding" != no; then
-+ PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ncurses++${DFT_ARG_SUFFIX}"
-+ SRC_SUBDIRS="$SRC_SUBDIRS c++"
-+fi
-+
-+test "x$with_termlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TINFO_ARG_SUFFIX"
-+test "x$with_ticlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TICS_ARG_SUFFIX"
-+
-+AC_SUBST(PC_MODULES_TO_MAKE)
-
- ADA_SUBDIRS=
--if test "$cf_cv_prog_gnat_correct" = yes && 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
-@@ -5624,13 +6188,13 @@
- AC_DEFUN([CF_STRIP_G_OPT],
- [$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_STRUCT_SIGACTION version: 3 updated: 2000/08/12 23:18:52
-+dnl CF_STRUCT_SIGACTION version: 5 updated: 2012/10/06 17:56:13
- dnl -------------------
- dnl Check if we need _POSIX_SOURCE defined to use struct sigaction. We'll only
- dnl do this if we've found the sigaction function.
--dnl
--dnl If needed, define SVR4_ACTION.
- AC_DEFUN([CF_STRUCT_SIGACTION],[
-+AC_REQUIRE([CF_XOPEN_SOURCE])
-+
- if test "$ac_cv_func_sigaction" = yes; then
- AC_MSG_CHECKING(whether sigaction needs _POSIX_SOURCE)
- AC_TRY_COMPILE([
-@@ -5645,22 +6209,24 @@
- #include <signal.h>],
- [struct sigaction act],
- [sigact_bad=yes
-- AC_DEFINE(SVR4_ACTION)],
-+ AC_DEFINE(_POSIX_SOURCE,1,[Define to 1 if we must define _POSIX_SOURCE])],
- [sigact_bad=unknown])])
- AC_MSG_RESULT($sigact_bad)
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_STRUCT_TERMIOS version: 5 updated: 2000/11/04 12:22:46
-+dnl CF_STRUCT_TERMIOS version: 7 updated: 2012/10/06 17:56:13
- dnl -----------------
- dnl Some machines require _POSIX_SOURCE to completely define struct termios.
--dnl If so, define SVR4_TERMIO
- AC_DEFUN([CF_STRUCT_TERMIOS],[
-+AC_REQUIRE([CF_XOPEN_SOURCE])
-+
- AC_CHECK_HEADERS( \
- termio.h \
- termios.h \
- unistd.h \
- )
-+
- if test "$ISC" = yes ; then
- AC_CHECK_HEADERS( sys/termio.h )
- fi
-@@ -5680,14 +6246,14 @@
- #include <termios.h>],
- [struct termios foo; int x = foo.c_iflag],
- termios_bad=unknown,
-- termios_bad=yes AC_DEFINE(SVR4_TERMIO))
-+ termios_bad=yes AC_DEFINE(_POSIX_SOURCE,1,[Define to 1 if we must define _POSIX_SOURCE]))
- ])
- AC_MSG_RESULT($termios_bad)
- fi
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_SUBDIR_PATH version: 6 updated: 2010/04/21 06:20:50
-+dnl CF_SUBDIR_PATH version: 7 updated: 2014/12/04 04:33:06
- dnl --------------
- dnl Construct a search-list for a nonstandard header/lib-file
- dnl $1 = the variable to return as result
-@@ -5697,28 +6263,18 @@
- [
- $1=
-
--CF_ADD_SUBDIR_PATH($1,$2,$3,/usr,$prefix)
- CF_ADD_SUBDIR_PATH($1,$2,$3,$prefix,NONE)
--CF_ADD_SUBDIR_PATH($1,$2,$3,/usr/local,$prefix)
--CF_ADD_SUBDIR_PATH($1,$2,$3,/opt,$prefix)
--CF_ADD_SUBDIR_PATH($1,$2,$3,[$]HOME,$prefix)
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_SUBST version: 4 updated: 2006/06/17 12:33:03
--dnl --------
--dnl Shorthand macro for substituting things that the user may override
--dnl with an environment variable.
--dnl
--dnl $1 = long/descriptive name
--dnl $2 = environment variable
--dnl $3 = default value
--AC_DEFUN([CF_SUBST],
--[AC_CACHE_VAL(cf_cv_subst_$2,[
--AC_MSG_CHECKING(for $1 (symbol $2))
--CF_SUBST_IF([-z "[$]$2"], [$2], [$3])
--cf_cv_subst_$2=[$]$2
--AC_MSG_RESULT([$]$2)
--])
-+
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ [$]HOME
-+do
-+ CF_ADD_SUBDIR_PATH($1,$2,$3,$cf_subdir_prefix,$prefix)
-+done
- ])dnl
- dnl ---------------------------------------------------------------------------
- dnl CF_SUBST_IF version: 2 updated: 2006/06/17 12:33:03
-@@ -5766,7 +6322,7 @@
- AC_SUBST(cf_cv_type_of_bool)dnl
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_SYS_TIME_SELECT version: 4 updated: 2000/10/04 09:18:40
-+dnl CF_SYS_TIME_SELECT version: 5 updated: 2012/10/04 05:24:07
- dnl ------------------
- dnl Check if we can include <sys/time.h> with <sys/select.h>; this breaks on
- dnl older SCO configurations.
-@@ -5786,19 +6342,58 @@
- [cf_cv_sys_time_select=no])
- ])
- AC_MSG_RESULT($cf_cv_sys_time_select)
--test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_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_TOP_BUILDDIR version: 1 updated: 2006/10/15 16:33:23
-+dnl CF_TOP_BUILDDIR version: 2 updated: 2013/07/27 17:38:32
- dnl ---------------
- dnl Define a top_builddir symbol, for applications that need an absolute path.
- AC_DEFUN([CF_TOP_BUILDDIR],
- [
--top_builddir=`pwd`
-+top_builddir=ifelse($1,,`pwd`,$1)
- AC_SUBST(top_builddir)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_TYPEOF_CHTYPE version: 8 updated: 2006/12/16 12:33:30
-+dnl CF_TRY_XOPEN_SOURCE version: 1 updated: 2011/10/30 17:09:50
-+dnl -------------------
-+dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we
-+dnl can define it successfully.
-+AC_DEFUN([CF_TRY_XOPEN_SOURCE],[
-+AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
-+ AC_TRY_COMPILE([
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+],[
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif],
-+ [cf_cv_xopen_source=no],
-+ [cf_save="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-+ AC_TRY_COMPILE([
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+],[
-+#ifdef _XOPEN_SOURCE
-+make an error
-+#endif],
-+ [cf_cv_xopen_source=no],
-+ [cf_cv_xopen_source=$cf_XOPEN_SOURCE])
-+ CPPFLAGS="$cf_save"
-+ ])
-+])
-+
-+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)
-+fi
-+])
-+dnl ---------------------------------------------------------------------------
-+dnl CF_TYPEOF_CHTYPE version: 9 updated: 2012/10/06 17:56:13
- dnl ----------------
- dnl Determine the type we should use for chtype (and attr_t, which is treated
- dnl as the same thing). We want around 32 bits, so on most machines want a
-@@ -5847,10 +6442,10 @@
- AC_MSG_RESULT($cf_cv_typeof_chtype)
-
- AC_SUBST(cf_cv_typeof_chtype)
--AC_DEFINE_UNQUOTED(TYPEOF_CHTYPE,$cf_cv_typeof_chtype)
-+AC_DEFINE_UNQUOTED(TYPEOF_CHTYPE,$cf_cv_typeof_chtype,[Define to actual type if needed for chtype])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_TYPE_SIGACTION version: 3 updated: 2000/08/12 23:18:52
-+dnl CF_TYPE_SIGACTION version: 4 updated: 2012/10/06 17:56:13
- dnl -----------------
- dnl
- AC_DEFUN([CF_TYPE_SIGACTION],
-@@ -5863,7 +6458,7 @@
- [cf_cv_type_sigaction=yes],
- [cf_cv_type_sigaction=no])])
- AC_MSG_RESULT($cf_cv_type_sigaction)
--test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION)
-+test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION,1,[Define to 1 if we have the sigaction_t type])
- ])dnl
- dnl ---------------------------------------------------------------------------
- dnl CF_UNSIGNED_LITERALS version: 2 updated: 1998/02/07 22:10:16
-@@ -5890,7 +6485,7 @@
- $1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_UTF8_LIB version: 7 updated: 2010/06/20 09:24:28
-+dnl CF_UTF8_LIB version: 8 updated: 2012/10/06 08:57:51
- dnl -----------
- dnl Check for multibyte support, and if not found, utf8 compatibility library
- AC_DEFUN([CF_UTF8_LIB],
-@@ -5909,14 +6504,14 @@
- # HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
- # ncurses/ncursesw:
- if test "$cf_cv_utf8_lib" = "add-on" ; then
-- AC_DEFINE(HAVE_LIBUTF8_H)
-+ AC_DEFINE(HAVE_LIBUTF8_H,1,[Define to 1 if we should include libutf8.h])
- CF_ADD_INCDIR($cf_cv_header_path_utf8)
- CF_ADD_LIBDIR($cf_cv_library_path_utf8)
- CF_ADD_LIBS($cf_cv_library_file_utf8)
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_VA_COPY version: 2 updated: 2010/03/04 05:37:29
-+dnl CF_VA_COPY version: 3 updated: 2012/10/06 11:17:15
- dnl ----------
- dnl check for va_copy, part of stdarg.h
- dnl Also, workaround for glibc's __va_copy, by checking for both.
-@@ -5931,7 +6526,7 @@
- cf_cv_have_va_copy=yes,
- cf_cv_have_va_copy=no)])
-
--test "$cf_cv_have_va_copy" = yes && AC_DEFINE(HAVE_VA_COPY)
-+test "$cf_cv_have_va_copy" = yes && AC_DEFINE(HAVE_VA_COPY,1,[Define to 1 if we have va_copy])
-
- AC_CACHE_CHECK(for __va_copy, cf_cv_have___va_copy,[
- AC_TRY_LINK([
-@@ -5943,7 +6538,7 @@
- cf_cv_have___va_copy=yes,
- cf_cv_have___va_copy=no)])
-
--test "$cf_cv_have___va_copy" = yes && AC_DEFINE(HAVE___VA_COPY)
-+test "$cf_cv_have___va_copy" = yes && AC_DEFINE(HAVE___VA_COPY,1,[Define to 1 if we have __va_copy])
- ])
- dnl ---------------------------------------------------------------------------
- dnl CF_VERBOSE version: 3 updated: 2007/07/29 09:55:12
-@@ -5954,7 +6549,95 @@
- CF_MSG_LOG([$1])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WCHAR_TYPE version: 3 updated: 2010/05/26 16:44:57
-+dnl CF_VERSION_INFO version: 6 updated: 2013/06/16 10:25:53
-+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.
-+dnl (automake is a textbook-example of why the latter is a bad idea, but there
-+dnl are others).
-+dnl
-+dnl The file contents are:
-+dnl libtool-version release-version patch-version
-+dnl or
-+dnl release-version
-+dnl where
-+dnl libtool-version (see ?) consists of 3 integers separated by '.'
-+dnl release-version consists of a major version and minor version
-+dnl separated by '.', optionally followed by a patch-version
-+dnl separated by '-'. The minor version need not be an
-+dnl integer (but it is preferred).
-+dnl patch-version is an integer in the form yyyymmdd, so ifdef's and
-+dnl scripts can easily compare versions.
-+dnl
-+dnl If libtool is used, the first form is required, since CF_WITH_LIBTOOL
-+dnl simply extracts the first field using 'cut -f1'.
-+dnl
-+dnl Optional parameters:
-+dnl $1 = internal name for package
-+dnl $2 = external name for package
-+AC_DEFUN([CF_VERSION_INFO],
-+[
-+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`
-+
-+ # this is how CF_BUNDLED_INTL uses $VERSION:
-+ VERSION="$cf_field1"
-+
-+ VERSION_MAJOR=`echo "$cf_field2" | sed -e 's/\..*//'`
-+ test -z "$VERSION_MAJOR" && AC_MSG_ERROR(missing major-version)
-+
-+ VERSION_MINOR=`echo "$cf_field2" | sed -e 's/^[[^.]]*\.//' -e 's/-.*//'`
-+ test -z "$VERSION_MINOR" && AC_MSG_ERROR(missing minor-version)
-+
-+ AC_MSG_RESULT(${VERSION_MAJOR}.${VERSION_MINOR})
-+
-+ AC_MSG_CHECKING(for package patch date)
-+ VERSION_PATCH=`echo "$cf_field3" | sed -e 's/^[[^-]]*-//'`
-+ case .$VERSION_PATCH in
-+ .)
-+ AC_MSG_ERROR(missing patch-date $VERSION_PATCH)
-+ ;;
-+ .[[0-9]][[0-9]][[0-9]][[0-9]][[0-9]][[0-9]][[0-9]][[0-9]])
-+ ;;
-+ *)
-+ AC_MSG_ERROR(illegal patch-date $VERSION_PATCH)
-+ ;;
-+ esac
-+ AC_MSG_RESULT($VERSION_PATCH)
-+else
-+ AC_MSG_ERROR(did not find $srcdir/VERSION)
-+fi
-+
-+# show the actual data that we have for versions:
-+CF_VERBOSE(ABI VERSION $VERSION)
-+CF_VERBOSE(VERSION_MAJOR $VERSION_MAJOR)
-+CF_VERBOSE(VERSION_MINOR $VERSION_MINOR)
-+CF_VERBOSE(VERSION_PATCH $VERSION_PATCH)
-+
-+AC_SUBST(VERSION)
-+AC_SUBST(VERSION_MAJOR)
-+AC_SUBST(VERSION_MINOR)
-+AC_SUBST(VERSION_PATCH)
-+
-+dnl if a package name is given, define its corresponding version info. We
-+dnl need the package name to ensure that the defined symbols are unique.
-+ifelse($1,,,[
-+ cf_PACKAGE=$1
-+ PACKAGE=ifelse($2,,$1,$2)
-+ AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE",[Define to the package-name])
-+ AC_SUBST(PACKAGE)
-+ CF_UPPER(cf_PACKAGE,$cf_PACKAGE)
-+ AC_DEFINE_UNQUOTED(${cf_PACKAGE}_VERSION,"${VERSION_MAJOR}.${VERSION_MINOR}")
-+ AC_DEFINE_UNQUOTED(${cf_PACKAGE}_PATCHDATE,${VERSION_PATCH})
-+])
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_WCHAR_TYPE version: 4 updated: 2012/10/06 16:39:58
- dnl -------------
- dnl Check if type wide-character type $1 is declared, and if so, which header
- dnl file is needed. The second parameter is used to set a shell variable when
-@@ -5986,7 +6669,7 @@
- [cf_cv_$1=unknown])])])
-
- if test "$cf_cv_$1" = yes ; then
-- AC_DEFINE(NEED_WCHAR_H)
-+ AC_DEFINE(NEED_WCHAR_H,1,[Define to 1 if we must include wchar.h])
- NEED_WCHAR_H=1
- fi
-
-@@ -6091,14 +6774,14 @@
- AC_MSG_RESULT($ADA_OBJECTS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_ADA_SHAREDLIB version: 2 updated: 2010/06/26 17:35:58
-+dnl CF_WITH_ADA_SHAREDLIB version: 4 updated: 2014/05/31 21:08:37
- dnl ---------------------
- dnl Command-line option to specify if an Ada95 shared-library should be built,
- dnl and optionally what its soname should be.
- AC_DEFUN([CF_WITH_ADA_SHAREDLIB],[
- AC_MSG_CHECKING(if an Ada95 shared-library should be built)
- AC_ARG_WITH(ada-sharedlib,
-- [ --with-ada-sharedlib=XX build Ada95 shared-library],
-+ [ --with-ada-sharedlib=soname build shared-library (requires GNAT projects)],
- [with_ada_sharedlib=$withval],
- [with_ada_sharedlib=no])
- AC_MSG_RESULT($with_ada_sharedlib)
-@@ -6149,7 +6832,33 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_GPM version: 7 updated: 2008/03/23 14:48:54
-+dnl CF_WITH_EXPORT_SYMS version: 2 updated: 2014/11/15 19:05:29
-+dnl -------------------
-+dnl Use this with libtool to specify the list of symbols that may be exported.
-+dnl The input file contains one symbol per line; comments work with "#".
-+dnl
-+dnl $1 = basename of the ".sym" file (default $PACKAGE)
-+AC_DEFUN([CF_WITH_EXPORT_SYMS],
-+[
-+AC_MSG_CHECKING(if exported-symbols file should be used)
-+AC_ARG_WITH(export-syms,
-+ [ --with-export-syms=XXX limit exported symbols using libtool],
-+ [with_export_syms=$withval],
-+ [with_export_syms=no])
-+if test "x$with_export_syms" = xyes
-+then
-+ with_export_syms='${top_srcdir}/package/ifelse($1,,${PACKAGE},[$1]).sym'
-+ AC_SUBST(PACKAGE)
-+fi
-+AC_MSG_RESULT($with_export_syms)
-+if test "x$with_export_syms" != xno
-+then
-+ EXPORT_SYMS="$EXPORT_SYMS -export-symbols $with_export_syms"
-+ AC_SUBST(EXPORT_SYMS)
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_WITH_GPM version: 8 updated: 2012/10/06 17:56:13
- dnl -----------
- dnl
- dnl The option parameter (if neither yes/no) is assumed to be the name of
-@@ -6165,10 +6874,10 @@
-
- if test "$with_gpm" != no ; then
- AC_CHECK_HEADER(gpm.h,[
-- AC_DEFINE(HAVE_GPM_H)
-+ AC_DEFINE(HAVE_GPM_H,1,[Define to 1 if we have gpm.h header])
- if test "$with_gpm" != yes && test "$with_gpm" != maybe ; then
- CF_VERBOSE(assuming we really have GPM library)
-- AC_DEFINE(HAVE_LIBGPM)
-+ AC_DEFINE(HAVE_LIBGPM,1,[Define to 1 if we have the gpm library])
- else
- AC_CHECK_LIB(gpm,Gpm_Open,[:],[
- AC_MSG_ERROR(Cannot link with GPM library)
-@@ -6182,7 +6891,7 @@
- fi
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_LIBTOOL version: 26 updated: 2010/10/23 15:55:24
-+dnl CF_WITH_LIBTOOL version: 31 updated: 2014/11/15 19:05:29
- dnl ---------------
- dnl Provide a configure option to incorporate libtool. Define several useful
- dnl symbols for the makefile rules.
-@@ -6252,13 +6961,20 @@
- CF_PATH_SYNTAX(with_libtool)
- LIBTOOL=$with_libtool
- else
-- AC_PATH_PROG(LIBTOOL,libtool)
-+ AC_CHECK_TOOLS(LIBTOOL,[libtool glibtool],none)
-+ CF_LIBTOOL_VERSION
-+ if test -z "$cf_cv_libtool_version" && test "$LIBTOOL" = libtool
-+ then
-+ CF_FORGET_TOOL(LIBTOOL)
-+ AC_CHECK_TOOLS(LIBTOOL,[glibtool],none)
-+ CF_LIBTOOL_VERSION
-+ fi
- fi
- if test -z "$LIBTOOL" ; then
- AC_MSG_ERROR(Cannot find libtool)
- fi
- ])dnl
-- LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} -o'
-+ LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${top_srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} $(LIBS) -o'
- LIB_OBJECT='${OBJECTS:.o=.lo}'
- LIB_SUFFIX=.la
- LIB_CLEAN='${LIBTOOL} --mode=clean'
-@@ -6268,22 +6984,12 @@
- LIB_UNINSTALL='${LIBTOOL} --mode=uninstall'
- LIB_PREP=:
-
-- # Show the version of libtool
-- AC_MSG_CHECKING(version of libtool)
--
-- # Save the version in a cache variable - this is not entirely a good
-- # thing, but the version string from libtool is very ugly, and for
-- # bug reports it might be useful to have the original string. "("
-- cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([[^)]]*)//g' -e 's/^[[^1-9]]*//' -e 's/[[^0-9.]].*//'`
-- AC_MSG_RESULT($cf_cv_libtool_version)
-- if test -z "$cf_cv_libtool_version" ; then
-- AC_MSG_ERROR(This is not GNU libtool)
-- fi
-+ CF_CHECK_LIBTOOL_VERSION
-
- # special hack to add -no-undefined (which libtool should do for itself)
- LT_UNDEF=
- case "$cf_cv_system_name" in #(vi
-- cygwin*|mingw32*|uwin*|aix[[456]]) #(vi
-+ cygwin*|msys*|mingw32*|uwin*|aix[[4-7]]) #(vi
- LT_UNDEF=-no-undefined
- ;;
- esac
-@@ -6323,7 +7029,59 @@
-
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_PATH version: 10 updated: 2010/10/23 15:44:18
-+dnl CF_WITH_LIBTOOL_OPTS version: 3 updated: 2014/11/02 16:11:49
-+dnl --------------------
-+dnl Allow user to pass additional libtool options into the library creation
-+dnl and link steps. The main use for this is to do something like
-+dnl ./configure --with-libtool-opts=-static
-+dnl to get the same behavior as automake-flavored
-+dnl ./configure --enable-static
-+AC_DEFUN([CF_WITH_LIBTOOL_OPTS],[
-+AC_MSG_CHECKING(for additional libtool options)
-+AC_ARG_WITH(libtool-opts,
-+ [ --with-libtool-opts=XXX specify additional libtool options],
-+ [with_libtool_opts=$withval],
-+ [with_libtool_opts=no])
-+AC_MSG_RESULT($with_libtool_opts)
-+
-+case .$with_libtool_opts in
-+.yes|.no|.)
-+ ;;
-+*)
-+ LIBTOOL_OPTS="$LIBTOOL_OPTS $with_libtool_opts"
-+ ;;
-+esac
-+
-+AC_SUBST(LIBTOOL_OPTS)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_WITH_LIB_PREFIX version: 1 updated: 2012/01/21 19:28:10
-+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.
-+dnl
-+dnl $1 = variable to set
-+AC_DEFUN([CF_WITH_LIB_PREFIX],
-+[
-+AC_MSG_CHECKING(if you want to have a library-prefix)
-+AC_ARG_WITH(lib-prefix,
-+ [ --with-lib-prefix override library-prefix],
-+ [with_lib_prefix=$withval],
-+ [with_lib_prefix=auto])
-+AC_MSG_RESULT($with_lib_prefix)
-+
-+if test $with_lib_prefix = auto
-+then
-+ CF_LIB_PREFIX($1)
-+elif test $with_lib_prefix = no
-+then
-+ LIB_PREFIX=
-+else
-+ LIB_PREFIX=$with_lib_prefix
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_WITH_PATH version: 11 updated: 2012/09/29 15:04:19
- dnl ------------
- dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just
- dnl defaulting to yes/no.
-@@ -6340,11 +7098,11 @@
- if ifelse([$5],,true,[test -n "$5"]) ; then
- CF_PATH_SYNTAX(withval)
- fi
--$3="$withval"
-+eval $3="$withval"
- AC_SUBST($3)dnl
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_PATHLIST version: 7 updated: 2010/10/23 16:10:30
-+dnl CF_WITH_PATHLIST version: 9 updated: 2012/10/18 05:05:24
- dnl ----------------
- dnl Process an option specifying a list of colon-separated paths.
- dnl
-@@ -6365,7 +7123,7 @@
- for cf_src_path in $withval
- do
- CF_PATH_SYNTAX(cf_src_path)
-- test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}:"
-+ test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}$PATH_SEPARATOR"
- cf_dst_path="${cf_dst_path}${cf_src_path}"
- done
- IFS="$ac_save_ifs"
-@@ -6381,12 +7139,65 @@
- cf_dst_path=`echo "$cf_dst_path" | sed -e 's/\\\\/\\\\\\\\/g'`
- ])
-
--eval '$3="$cf_dst_path"'
-+# This may use the prefix/exec_prefix symbols which will only yield "NONE"
-+# so we have to check/work around. We do prefer the result of "eval"...
-+eval cf_dst_eval="$cf_dst_path"
-+case "x$cf_dst_eval" in #(vi
-+xNONE*) #(vi
-+ $3=$cf_dst_path
-+ ;;
-+*)
-+ $3="$cf_dst_eval"
-+ ;;
-+esac
- AC_SUBST($3)dnl
-
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_PTHREAD version: 3 updated: 2010/05/29 16:31:02
-+dnl CF_WITH_PKG_CONFIG_LIBDIR version: 2 updated: 2011/12/10 18:58:47
-+dnl -------------------------
-+dnl Allow the choice of the pkg-config library directory to be overridden.
-+AC_DEFUN([CF_WITH_PKG_CONFIG_LIBDIR],[
-+if test "$PKG_CONFIG" != none ; then
-+ AC_MSG_CHECKING(for $PKG_CONFIG library directory)
-+ AC_ARG_WITH(pkg-config-libdir,
-+ [ --with-pkg-config-libdir=XXX use given directory for installing pc-files],
-+ [PKG_CONFIG_LIBDIR=$withval],
-+ [PKG_CONFIG_LIBDIR=yes])
-+
-+ case x$PKG_CONFIG_LIBDIR in #(vi
-+ x/*) #(vi
-+ ;;
-+ xyes) #(vi
-+ # look for the library directory using the same prefix as the executable
-+ cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`
-+ case x`(arch) 2>/dev/null` in #(vi
-+ *64) #(vi
-+ for cf_config in $cf_path/share $cf_path/lib64 $cf_path/lib32 $cf_path/lib
-+ do
-+ if test -d $cf_config/pkgconfig
-+ then
-+ PKG_CONFIG_LIBDIR=$cf_config/pkgconfig
-+ break
-+ fi
-+ done
-+ ;;
-+ *)
-+ PKG_CONFIG_LIBDIR=$cf_path/lib/pkgconfig
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ ;;
-+ esac
-+
-+ AC_MSG_RESULT($PKG_CONFIG_LIBDIR)
-+fi
-+
-+AC_SUBST(PKG_CONFIG_LIBDIR)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_WITH_PTHREAD version: 6 updated: 2012/10/06 17:41:51
- dnl ---------------
- dnl Check for POSIX thread library.
- AC_DEFUN([CF_WITH_PTHREAD],
-@@ -6400,25 +7211,30 @@
-
- if test "$with_pthread" != no ; then
- AC_CHECK_HEADER(pthread.h,[
-- AC_DEFINE(HAVE_PTHREADS_H)
-+ AC_DEFINE(HAVE_PTHREADS_H,1,[Define to 1 if we have pthreads.h header])
-
-- AC_MSG_CHECKING(if we can link with the pthread library)
-- cf_save_LIBS="$LIBS"
-- CF_ADD_LIB(pthread)
-- AC_TRY_LINK([
-+ for cf_lib_pthread in pthread c_r
-+ do
-+ AC_MSG_CHECKING(if we can link with the $cf_lib_pthread library)
-+ cf_save_LIBS="$LIBS"
-+ CF_ADD_LIB($cf_lib_pthread)
-+ AC_TRY_LINK([
- #include <pthread.h>
- ],[
-- int rc = pthread_create(0,0,0,0);
-+ int rc = pthread_create(0,0,0,0);
-+ int r2 = pthread_mutexattr_settype(0, 0);
- ],[with_pthread=yes],[with_pthread=no])
-- LIBS="$cf_save_LIBS"
-- AC_MSG_RESULT($with_pthread)
-+ LIBS="$cf_save_LIBS"
-+ AC_MSG_RESULT($with_pthread)
-+ test "$with_pthread" = yes && break
-+ done
-
-- if test "$with_pthread" = yes ; then
-- CF_ADD_LIB(pthread)
-- AC_DEFINE(HAVE_LIBPTHREADS)
-- else
-- AC_MSG_ERROR(Cannot link with pthread library)
-- fi
-+ if test "$with_pthread" = yes ; then
-+ CF_ADD_LIB($cf_lib_pthread)
-+ AC_DEFINE(HAVE_LIBPTHREADS,1,[Define to 1 if we have pthreads library])
-+ else
-+ AC_MSG_ERROR(Cannot link with pthread library)
-+ fi
- ])
- fi
- ])
-@@ -6448,7 +7264,7 @@
- ])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WITH_SYSMOUSE version: 2 updated: 2003/03/22 19:13:43
-+dnl CF_WITH_SYSMOUSE version: 3 updated: 2012/10/06 17:56:13
- dnl ----------------
- dnl If we can compile with sysmouse, make it available unless it is not wanted.
- AC_DEFUN([CF_WITH_SYSMOUSE],[
-@@ -6474,10 +7290,30 @@
- ],[cf_with_sysmouse=yes],[cf_with_sysmouse=no])
- fi
- AC_MSG_RESULT($cf_with_sysmouse)
--test "$cf_with_sysmouse" = yes && AC_DEFINE(USE_SYSMOUSE)
-+test "$cf_with_sysmouse" = yes && AC_DEFINE(USE_SYSMOUSE,1,[Define to 1 if we can/should use the sysmouse interface])
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_WITH_SYSTYPE version: 1 updated: 2013/01/26 16:26:12
-+dnl ---------------
-+dnl For testing, override the derived host system-type which is used to decide
-+dnl things such as the linker commands used to build shared libraries. This is
-+dnl normally chosen automatically based on the type of system which you are
-+dnl building on. We use it for testing the configure script.
-+dnl
-+dnl This is different from the --host option: it is used only for testing parts
-+dnl of the configure script which would not be reachable with --host since that
-+dnl relies on the build environment being real, rather than mocked up.
-+AC_DEFUN([CF_WITH_SYSTYPE],[
-+CF_CHECK_CACHE([AC_CANONICAL_SYSTEM])
-+AC_ARG_WITH(system-type,
-+ [ --with-system-type=XXX test: override derived host system-type],
-+[AC_MSG_WARN(overriding system type to $withval)
-+ cf_cv_system_name=$withval
-+ host_os=$withval
-+])
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_WITH_VALGRIND version: 1 updated: 2006/12/14 18:00:21
- dnl ----------------
- AC_DEFUN([CF_WITH_VALGRIND],[
-@@ -6486,7 +7322,49 @@
- [USE_VALGRIND])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_XOPEN_SOURCE version: 35 updated: 2011/02/20 20:37:37
-+dnl CF_WITH_VERSIONED_SYMS version: 2 updated: 2014/11/15 19:05:29
-+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
-+dnl the same as the SONAME at which the symbol was first introduced.
-+dnl
-+dnl $1 = basename of the ".sym" file (default $PACKAGE)
-+AC_DEFUN([CF_WITH_VERSIONED_SYMS],
-+[
-+AC_MSG_CHECKING(if versioned-symbols file should be used)
-+AC_ARG_WITH(versioned-syms,
-+ [ --with-versioned-syms=X markup versioned symbols using ld],
-+ [with_versioned_syms=$withval],
-+ [with_versioned_syms=no])
-+if test "x$with_versioned_syms" = xyes
-+then
-+ with_versioned_syms='${top_srcdir}/package/ifelse($1,,${PACKAGE},[$1]).map'
-+ AC_SUBST(PACKAGE)
-+fi
-+AC_MSG_RESULT($with_versioned_syms)
-+
-+if test "x$with_versioned_syms" != xno
-+then
-+ AC_SUBST(VERSIONED_SYMS)
-+ case "x$MK_SHARED_LIB" in
-+ *-Wl,*) #(vi
-+ VERSIONED_SYMS="-Wl,--version-script,$with_versioned_syms"
-+ MK_SHARED_LIB=`echo "$MK_SHARED_LIB" | sed -e "s%-Wl,%\\[$]{VERSIONED_SYMS} -Wl,%"`
-+ CF_VERBOSE(MK_SHARED_LIB: $MK_SHARED_LIB)
-+ ;;
-+ *-dy*) #(vi
-+ VERSIONED_SYMS="-Wl,-M,$with_versioned_syms"
-+ MK_SHARED_LIB=`echo "$MK_SHARED_LIB" | sed -e "s%-dy%\\[$]{VERSIONED_SYMS} -dy%"`
-+ CF_VERBOSE(MK_SHARED_LIB: $MK_SHARED_LIB)
-+ ;;
-+ *)
-+ AC_MSG_WARN(this system does not support versioned-symbols)
-+ ;;
-+ esac
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_XOPEN_SOURCE version: 48 updated: 2014/09/01 12:29:14
- 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,
-@@ -6496,16 +7374,17 @@
- dnl $1 is the nominal value for _XOPEN_SOURCE
- dnl $2 is the nominal value for _POSIX_C_SOURCE
- AC_DEFUN([CF_XOPEN_SOURCE],[
-+AC_REQUIRE([AC_CANONICAL_HOST])
-
- cf_XOPEN_SOURCE=ifelse([$1],,500,[$1])
- cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2])
- cf_xopen_source=
-
- case $host_os in #(vi
--aix[[456]]*) #(vi
-+aix[[4-7]]*) #(vi
- cf_xopen_source="-D_ALL_SOURCE"
- ;;
--cygwin) #(vi
-+cygwin|msys) #(vi
- cf_XOPEN_SOURCE=600
- ;;
- darwin[[0-8]].*) #(vi
-@@ -6513,6 +7392,7 @@
- ;;
- darwin*) #(vi
- cf_xopen_source="-D_DARWIN_C_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- freebsd*|dragonfly*) #(vi
- # 5.x headers associate
-@@ -6530,15 +7410,26 @@
- ;;
- irix[[56]].*) #(vi
- cf_xopen_source="-D_SGI_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- linux*|gnu*|mint*|k*bsd*-gnu) #(vi
- CF_GNU_SOURCE
- ;;
-+minix*) #(vi
-+ cf_xopen_source="-D_NETBSD_SOURCE" # POSIX.1-2001 features are ifdef'd with this...
-+ ;;
- mirbsd*) #(vi
-- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h>
-+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types
-+ cf_XOPEN_SOURCE=
-+ CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
- ;;
- netbsd*) #(vi
-- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
-+ 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]]*) #(vi
-+ # 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
- ;;
- openbsd*) #(vi
- # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
-@@ -6552,41 +7443,50 @@
- sco*) #(vi
- # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
- ;;
--solaris2.1[[0-9]]) #(vi
-- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- ;;
--solaris2.[[1-9]]) #(vi
-+solaris2.*) #(vi
- cf_xopen_source="-D__EXTENSIONS__"
-+ cf_cv_xopen_source=broken
-+ ;;
-+sysv4.2uw2.*) # Novell/SCO UnixWare 2.x (tested on 2.1.2)
-+ cf_XOPEN_SOURCE=
-+ cf_POSIX_C_SOURCE=
- ;;
- *)
-- AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
-- AC_TRY_COMPILE([#include <sys/types.h>],[
-+ CF_TRY_XOPEN_SOURCE
-+ CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
-+ ;;
-+esac
-+
-+if test -n "$cf_xopen_source" ; then
-+ CF_ADD_CFLAGS($cf_xopen_source,true)
-+fi
-+
-+dnl In anything but the default case, we may have system-specific setting
-+dnl which is still not guaranteed to provide all of the entrypoints that
-+dnl _XOPEN_SOURCE would yield.
-+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
-+ AC_MSG_CHECKING(if _XOPEN_SOURCE really is set)
-+ AC_TRY_COMPILE([#include <stdlib.h>],[
- #ifndef _XOPEN_SOURCE
- make an error
- #endif],
-- [cf_cv_xopen_source=no],
-- [cf_save="$CPPFLAGS"
-- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- AC_TRY_COMPILE([#include <sys/types.h>],[
--#ifdef _XOPEN_SOURCE
-+ [cf_XOPEN_SOURCE_set=yes],
-+ [cf_XOPEN_SOURCE_set=no])
-+ AC_MSG_RESULT($cf_XOPEN_SOURCE_set)
-+ if test $cf_XOPEN_SOURCE_set = yes
-+ then
-+ AC_TRY_COMPILE([#include <stdlib.h>],[
-+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
- make an error
- #endif],
-- [cf_cv_xopen_source=no],
-- [cf_cv_xopen_source=$cf_XOPEN_SOURCE])
-- CPPFLAGS="$cf_save"
-- ])
--])
-- 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_XOPEN_SOURCE_set_ok=yes],
-+ [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
-+ else
-+ CF_TRY_XOPEN_SOURCE
- fi
-- CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
-- ;;
--esac
--
--if test -n "$cf_xopen_source" ; then
-- CF_ADD_CFLAGS($cf_xopen_source)
- fi
- ])
-Index: announce.html.in
-Prereq: 1.85
---- ncurses-5.9/announce.html.in 2011-04-04 00:05:34.000000000 +0000
-+++ ncurses-5.9-20141206/announce.html.in 2013-05-18 10:12:25.000000000 +0000
-@@ -1,8 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <!--
-- $Id: announce.html.in,v 1.85 2011/04/04 00:05:34 tom Exp $
-+ $Id: announce.html.in,v 1.89 2013/05/18 10:12:25 tom Exp $
- ****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2013 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 *
-@@ -29,11 +28,12 @@
- * authorization. *
- ****************************************************************************
- -->
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-
- <html>
- <head>
- <meta name="generator" content=
-- "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
-+ "HTML Tidy for Linux (vers 25 March 2009), see www.w3.org">
-
- <title>Announcing ncurses @VERSION@</title>
- <link rev="made" href="mailto:bug-ncurses@gnu.org">
-@@ -42,12 +42,13 @@
- </head>
-
- <body>
-- <h1>Announcing ncurses @VERSION@</h1>The ncurses (new curses)
-- library is a free software emulation of curses in System V
-- Release 4.0, and more. It uses terminfo format, supports pads and
-- color and multiple highlights and forms characters and
-- function-key mapping, and has all the other SYSV-curses
-- enhancements over BSD curses.
-+ <h1>Announcing ncurses @VERSION@</h1>
-+
-+ <p>The ncurses (new curses) library is a free software emulation
-+ of curses in System V Release 4.0, and more. It uses terminfo
-+ format, supports pads and color and multiple highlights and forms
-+ characters and function-key mapping, and has all the other
-+ SYSV-curses enhancements over BSD curses.</p>
-
- <p>In mid-June 1995, the maintainer of 4.4BSD curses declared
- that he considered 4.4BSD curses obsolete, and encouraged the
-@@ -73,38 +74,50 @@
- It is also available at <a href=
- "ftp://invisible-island.net/ncurses/">ftp://invisible-island.net/ncurses/</a>&nbsp;.</p>
-
-- <h1>Release Notes</h1>This release is designed to be upward
-- compatible from ncurses 5.0 through 5.8; very few applications
-- will require recompilation, depending on the platform. These are
-- the highlights from the change-log since ncurses 5.8 release.
-- <p>
-- This is a bug-fix release, correcting a small number of urgent problems
-- in the ncurses library from the 5.8 release.
-- <p>
-- It also improves the Ada95 binding:
-+ <h1>Release Notes</h1>
-+
-+ <p>This release is designed to be upward compatible from ncurses
-+ 5.0 through 5.8; very few applications will require
-+ recompilation, depending on the platform. These are the
-+ highlights from the change-log since ncurses 5.8 release.</p>
-+
-+ <p>This is a bug-fix release, correcting a small number of urgent
-+ problems in the ncurses library from the 5.8 release.</p>
-+
-+ <p>It also improves the Ada95 binding:</p>
-+
- <ul>
-- <li>fixes a longstanding portability problem with its use of the
-- <a href="http://invisible-island.net/ncurses/man/form_fieldtype.3x">set_field_type</a>
-- function. Because that function uses variable-length argument lists,
-- its interface with gnat does not work with certain platforms.
-- <li>improves configurability and portability, particularly when built
-- separately from the main ncurses tree. The 5.8 release introduced
-- scripts which can be used to construct separate tarballs for the
-- Ada95 and ncurses examples.
-- <p>Those were a proof of concept. For the 5.9 release, those
-- scripts are augmented with rpm- and dpkg-scripts used in test builds
-- against a variety of gnat- and system ncurses versions as old as
-- gnat 3.15 and ncurses 5.4 (see snapshots and systems tested
-- <a href="http://invisible-island.net/ncurses/ncurses-Ada95.html">here</a>.
-- <li>additional improvements were made for portability of the
-- ncurses examples, adding rpm- and dpkg-scripts for test-builds.
-- See
-- <a href="http://invisible-island.net/ncurses/ncurses-examples.html">this page</a>
-- for snapshots and other information.
-+ <li>fixes a longstanding portability problem with its use of
-+ the <a href=
-+ "http://invisible-island.net/ncurses/man/form_fieldtype.3x">set_field_type</a>
-+ function. Because that function uses variable-length argument
-+ lists, its interface with gnat does not work with certain
-+ platforms.</li>
-+
-+ <li>improves configurability and portability, particularly when
-+ built separately from the main ncurses tree. The 5.8 release
-+ introduced scripts which can be used to construct separate
-+ tarballs for the Ada95 and ncurses examples.
-+
-+ <p>Those were a proof of concept. For the 5.9 release, those
-+ scripts are augmented with rpm- and dpkg-scripts used in test
-+ builds against a variety of gnat- and system ncurses versions
-+ as old as gnat 3.15 and ncurses 5.4 (see snapshots and
-+ systems tested <a href=
-+ "http://invisible-island.net/ncurses/ncurses-Ada95.html">here</a>.</p>
-+ </li>
-+
-+ <li>additional improvements were made for portability of the
-+ ncurses examples, adding rpm- and dpkg-scripts for test-builds.
-+ See <a href=
-+ "http://invisible-island.net/ncurses/ncurses-examples.html">this
-+ page</a> for snapshots and other information.</li>
- </ul>
-
-- <h1>Features of Ncurses</h1>The ncurses package is fully
-- compatible with SVr4 (System V Release 4) curses:
-+ <h1>Features of Ncurses</h1>
-+
-+ <p>The ncurses package is fully compatible with SVr4 (System V
-+ Release 4) curses:</p>
-
- <ul>
- <li>All 257 of the SVr4 calls have been implemented (and are
-@@ -132,8 +145,10 @@
- entries for use with less capable
- <strong>curses</strong>/<strong>terminfo</strong> versions such
- as the HP/UX and AIX ports.</li>
-- </ul>The ncurses package also has many useful extensions over
-- SVr4:
-+ </ul>
-+
-+ <p>The ncurses package also has many useful extensions over
-+ SVr4:</p>
-
- <ul>
- <li>The API is 8-bit clean and base-level conformant with the
-@@ -249,12 +264,14 @@
- interface.</li>
- </ul>
-
-- <h1>State of the Package</h1>Numerous bugs present in earlier
-- versions have been fixed; the library is far more reliable than
-- it used to be. Bounds checking in many `dangerous' entry points
-- has been improved. The code is now type-safe according to gcc
-- -Wall. The library has been checked for malloc leaks and arena
-- corruption by the Purify memory-allocation tester.
-+ <h1>State of the Package</h1>
-+
-+ <p>Numerous bugs present in earlier versions have been fixed; the
-+ library is far more reliable than it used to be. Bounds checking
-+ in many `dangerous' entry points has been improved. The code is
-+ now type-safe according to gcc -Wall. The library has been
-+ checked for malloc leaks and arena corruption by the Purify
-+ memory-allocation tester.</p>
-
- <p>The ncurses code has been tested with a wide variety of
- applications including (versions starting with those noted):</p>
-@@ -321,8 +338,10 @@
-
- <dd>newsreader, supporting color, MIME <a href=
- "http://www.tin.org/">http://www.tin.org/</a></dd>
-- </dl>as well as some that use ncurses for the terminfo support
-- alone:
-+ </dl>
-+
-+ <p>as well as some that use ncurses for the terminfo support
-+ alone:</p>
-
- <dl>
- <dt>minicom</dt>
-@@ -341,15 +360,17 @@
- <p>The ncurses distribution includes a selection of test programs
- (including a few games).</p>
-
-- <h2>Who's Who and What's What</h2>Zeyd Ben-Halim started it from
-- a previous package pcurses, written by Pavel Curtis. Eric S.
-- Raymond continued development. J&uuml;rgen Pfeifer wrote most of
-- the form and menu libraries. Ongoing work is being done by
-- <a href="mailto:dickey@invisible-island.net">Thomas Dickey</a>.
-- Thomas Dickey acts as the maintainer for the Free Software
-- Foundation, which holds the copyright on ncurses. Contact the
-- current maintainers at <a href=
-- "mailto:bug-ncurses@gnu.org">bug-ncurses@gnu.org</a>.
-+ <h2>Who's Who and What's What</h2>
-+
-+ <p>Zeyd Ben-Halim started it from a previous package pcurses,
-+ written by Pavel Curtis. Eric S. Raymond continued development.
-+ J&uuml;rgen Pfeifer wrote most of the form and menu libraries.
-+ Ongoing work is being done by <a href=
-+ "mailto:dickey@invisible-island.net">Thomas Dickey</a>. Thomas
-+ Dickey acts as the maintainer for the Free Software Foundation,
-+ which holds the copyright on ncurses. Contact the current
-+ maintainers at <a href=
-+ "mailto:bug-ncurses@gnu.org">bug-ncurses@gnu.org</a>.</p>
-
- <p>To join the ncurses mailing list, please write email to
- <code>bug-ncurses-request@gnu.org</code> containing the line:</p>
-@@ -364,6 +385,13 @@
- are made available at <a href=
- "ftp://invisible-island.net/ncurses/">ftp://invisible-island.net/ncurses/</a>&nbsp;.</p>
-
-+ <p>There is an archive of the mailing list here:</p>
-+
-+ <p><a href=
-+ "http://lists.gnu.org/archive/html/bug-ncurses">http://lists.gnu.org/archive/html/bug-ncurses</a>
-+ (also <a href=
-+ "https://lists.gnu.org/archive/html/bug-ncurses">https</a>)</p>
-+
- <h2>Future Plans</h2>
-
- <ul>
-@@ -371,15 +399,19 @@
- support.</li>
-
- <li>Ports to more systems, including DOS and Windows.</li>
-- </ul>We need people to help with these projects. If you are
-- interested in working on them, please join the ncurses list.
-+ </ul>
-+
-+ <p>We need people to help with these projects. If you are
-+ interested in working on them, please join the ncurses list.</p>
-+
-+ <h2>Other Related Resources</h2>
-
-- <h2>Other Related Resources</h2>The distribution provides a newer
-- version of the terminfo-format terminal description file once
-- maintained by <a href="http://www.catb.org/~esr/terminfo/">Eric
-+ <p>The distribution provides a newer version of the
-+ terminfo-format terminal description file once maintained by
-+ <a href="http://www.catb.org/~esr/terminfo/">Eric
- Raymond</a>&nbsp;. Unlike the older version, the termcap and
- terminfo data are provided in the same file, and provides several
-- user-definable extensions beyond the X/Open specification.
-+ user-definable extensions beyond the X/Open specification.</p>
-
- <p>You can find lots of information on terminal-related topics
- not covered in the terminfo file at <a href=
-Index: c++/Makefile.in
-Prereq: 1.93
---- ncurses-5.9/c++/Makefile.in 2010-11-27 21:45:27.000000000 +0000
-+++ ncurses-5.9-20141206/c++/Makefile.in 2014-11-15 00:46:17.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.93 2010/11/27 21:45:27 tom Exp $
-+# $Id: Makefile.in,v 1.108 2014/11/15 00:46:17 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -44,13 +44,21 @@
-
- MODEL = ../@DFT_OBJ_SUBDIR@
- DESTDIR = @DESTDIR@
-+top_srcdir = @top_srcdir@
- srcdir = @srcdir@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
-+bindir = @bindir@
- libdir = @libdir@
- includedir = @includedir@
-+includesubdir = @includesubdir@
-+
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-+
-+PACKAGE = @PACKAGE@
-
- LIBTOOL = @LIBTOOL_CXX@
-+LIBTOOL_OPTS = @LIBTOOL_OPTS@
- LIBTOOL_CLEAN = @LIB_CLEAN@
- LIBTOOL_COMPILE = @LIB_COMPILE@
- LIBTOOL_LINK = @LIB_LINK@
-@@ -65,6 +73,9 @@
-
- AR = @AR@
- ARFLAGS = @ARFLAGS@
-+AWK = @AWK@
-+LD = @LD@
-+LN_S = @LN_S@
-
- CXX_AR = @CXX_AR@
- CXX_ARFLAGS = @CXX_ARFLAGS@
-@@ -76,7 +87,7 @@
- CXXLIBS = @CXXLIBS@
-
- INCDIR = ../include
--CPPFLAGS = -I../c++ -I$(INCDIR) -I$(srcdir) -DHAVE_CONFIG_H @CPPFLAGS@
-+CPPFLAGS = -DHAVE_CONFIG_H @CPPFLAGS@
-
- CTAGS = @CTAGS@
- ETAGS = @ETAGS@
-@@ -109,35 +120,41 @@
- LIBNAME_NORMAL = @LIB_PREFIX@$(LIBROOT)@LIB_SUFFIX@.a
- LIBNAME = @LIB_PREFIX@$(LIBROOT)@CXX_LIB_SUFFIX@
-
--MY_LIBRARY = ../lib/$(LIBNAME)
-+LIBRARIES = @Libs_To_Make@
-
- LINK_FLAGS = @EXTRA_LDFLAGS@ -L../lib -l$(LIBROOT)@LIB_SUFFIX@
-+RPATH_LIST = @RPATH_LIST@
-+MK_SHARED_LIB = @MK_SHARED_LIB@
-
--LINK_LIBTOOL = @EXTRA_LDFLAGS@ -L../lib $(MY_LIBRARY)
-+LINK_LIBTOOL = @EXTRA_LDFLAGS@ -L../lib $(LIBRARIES)
- LINK_NORMAL = $(LINK_FLAGS)
- LINK_DEBUG = $(LINK_FLAGS)
- LINK_PROFILE = $(LINK_FLAGS)
- LINK_SHARED = $(LINK_FLAGS)
-
-+# flags for test-programs
- TEST_LIBS = @TEST_LIBS@
- TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@
--
--LDFLAGS = $(TEST_ARGS) @LDFLAGS@ \
-+TEST_LDFLAGS = $(TEST_ARGS) @LDFLAGS@ \
- @LD_MODEL@ $(TEST_LIBS) @LIBS@ @LOCAL_LDFLAGS@ $(CXXLIBS)
-
--LDFLAGS_LIBTOOL = $(LDFLAGS) $(CFLAGS_LIBTOOL)
--LDFLAGS_NORMAL = $(LDFLAGS) $(CFLAGS_NORMAL)
--LDFLAGS_DEBUG = $(LDFLAGS) $(CFLAGS_DEBUG)
--LDFLAGS_PROFILE = $(LDFLAGS) $(CFLAGS_PROFILE)
--LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
-+LDFLAGS_LIBTOOL = $(TEST_LDFLAGS) $(CFLAGS_LIBTOOL)
-+LDFLAGS_NORMAL = $(TEST_LDFLAGS) $(CFLAGS_NORMAL)
-+LDFLAGS_DEBUG = $(TEST_LDFLAGS) $(CFLAGS_DEBUG)
-+LDFLAGS_PROFILE = $(TEST_LDFLAGS) $(CFLAGS_PROFILE)
-+LDFLAGS_SHARED = $(TEST_LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
-
- LDFLAGS_DEFAULT = $(LINK_@DFT_UPR_MODEL@) $(LDFLAGS_@DFT_UPR_MODEL@)
-
-+# flags for library built by this makefile
-+LDFLAGS = $(TEST_ARGS) @LDFLAGS@ \
-+ @LD_MODEL@ $(TEST_LIBS) @LIBS@ $(CXXLIBS)
-+
- AUTO_SRC = \
- etip.h
-
- all \
--libs :: $(AUTO_SRC) $(MY_LIBRARY)
-+libs :: $(AUTO_SRC) $(LIBRARIES)
-
- @MAKE_TESTS@all :: demo$x
-
-@@ -148,61 +165,16 @@
- tags:
- $(CTAGS) *.[h] *.cc
-
--# Build a conventional library for installing, since a shared library would
--# pull in all of the ncurses libraries (panel, menu, form, ncurses) as direct
--# dependencies.
--LIB_OBJS = \
-- $(MODEL)/cursesf$o \
-- $(MODEL)/cursesm$o \
-- $(MODEL)/cursesw$o \
-- $(MODEL)/cursespad$o \
-- $(MODEL)/cursesp$o \
-- $(MODEL)/cursslk$o \
-- $(MODEL)/cursesapp$o \
-- $(MODEL)/cursesmain$o
--
--../lib/$(LIBNAME_NORMAL) : $(LIB_OBJS)
-- $(CXX_AR) $(CXX_ARFLAGS) $@ $?
-- $(RANLIB) $@
--
--../lib/$(LIBNAME_LIBTOOL) : $(LIB_OBJS)
-- cd ../lib && $(LIBTOOL_LINK) $(CXX) $(CXXFLAGS) \
-- -o $(LIBNAME) $(LIB_OBJS:$o=.lo) \
-- -rpath $(INSTALL_PREFIX)$(libdir) \
-- $(LIBTOOL_VERSION) $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(SHLIB_LIST)
--
--OBJS_DEMO = $(MODEL)/demo$o
--
--$(MODEL)/demo$o : $(srcdir)/demo.cc \
-- $(cursesf_h) $(cursesm_h) $(cursesapp_h)
--
--demo$x: $(OBJS_DEMO) \
-- $(MY_LIBRARY) \
-- @TEST_DEPS@
-- @ECHO_LINK@ $(LINK) -o $@ $(OBJS_DEMO) $(LDFLAGS_DEFAULT)
--
--etip.h: $(srcdir)/etip.h.in $(srcdir)/edit_cfg.sh
-- cp $(srcdir)/etip.h.in $@
-- sh $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@
--
- $(DESTDIR)$(libdir) :
- mkdir -p $@
-
--install \
--install.libs:: $(MY_LIBRARY) $(DESTDIR)$(libdir)
-- $(LIBTOOL_INSTALL) $(INSTALL_LIB) $(MY_LIBRARY) $(DESTDIR)$(libdir)/$(LIBNAME)
--
--uninstall \
--uninstall.libs::
-- -$(LIBTOOL_UNINSTALL) rm -f $(DESTDIR)$(libdir)/$(LIBNAME)
--
- mostlyclean ::
- -rm -f core tags TAGS *~ *.bak *.i *.ii *.ln *.atac trace
-
- clean :: mostlyclean
- -sh -c "if test -n '$x' ; then $(MAKE) clean x=''; fi"
- -rm -rf $(MODEL)/SunWS_cache
-- -$(LIBTOOL_CLEAN) rm -f demo$x $(AUTO_SRC) $(MY_LIBRARY) $(LIB_OBJS) $(OBJS_DEMO)
-+ -$(LIBTOOL_CLEAN) rm -f demo$x $(AUTO_SRC) $(LIBRARIES) $(OBJS_DEMO)
- -rm -rf .libs
-
- distclean :: clean
-@@ -212,8 +184,16 @@
-
- ###############################################################################
-
-+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
-+
- cursesw_h = $(srcdir)/cursesw.h \
-- etip.h \
-+ $(etip_h) \
- $(INCDIR)/curses.h
-
- cursesp_h = $(srcdir)/cursesp.h \
-@@ -244,5 +224,26 @@
- cd ../panel && $(MAKE) $@
-
- ###############################################################################
-+
-+OBJS_DEMO = $(MODEL)/demo$o
-+
-+$(MODEL)/demo$o : $(srcdir)/demo.cc \
-+ $(internal_h) \
-+ $(cursesf_h) \
-+ $(cursesm_h) \
-+ $(cursesapp_h)
-+ @echo 'compiling demo (obj_s)'
-+ @$(LIBTOOL_COMPILE) $(CXX) $(CFLAGS_DEFAULT) -c $(srcdir)/demo.cc -o $@
-+
-+demo$x: $(OBJS_DEMO) \
-+ $(LIBRARIES) \
-+ @TEST_DEPS@
-+ @ECHO_LD@ $(LINK) -o $@ $(OBJS_DEMO) $(LDFLAGS_DEFAULT)
-+
-+etip.h: $(srcdir)/etip.h.in $(srcdir)/edit_cfg.sh
-+ cp $(srcdir)/etip.h.in $@
-+ sh $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@
-+
-+###############################################################################
- # The remainder of this file is automatically generated during configuration
- ###############################################################################
-Index: c++/cursesapp.h
-Prereq: 1.11
---- ncurses-5.9/c++/cursesapp.h 2005-05-28 21:57:44.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursesapp.h 2011-09-17 22:12:10.000000000 +0000
-@@ -1,6 +1,6 @@
- // * This makes emacs happy -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2003,2005 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2005,2011 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 *
-@@ -31,7 +31,7 @@
- * Author: Juergen Pfeifer, 1997 *
- ****************************************************************************/
-
--// $Id: cursesapp.h,v 1.11 2005/05/28 21:57:44 tom Exp $
-+// $Id: cursesapp.h,v 1.12 2011/09/17 22:12:10 tom Exp $
-
- #ifndef NCURSES_CURSESAPP_H_incl
- #define NCURSES_CURSESAPP_H_incl
-@@ -80,6 +80,7 @@
- // This method is called to initialize the SLKs. Default is nothing.
- // You may rewrite this in your derived class
- virtual void init_labels(Soft_Label_Key_Set& S) const {
-+ (void) S;
- }
-
- // Your derived class must implement this method. The return value must
-@@ -118,6 +119,8 @@
- // Process the commandline arguments. The default implementation simply
- // ignores them. Your derived class may rewrite this.
- virtual void handleArgs(int argc, char* argv[]) {
-+ (void) argc;
-+ (void) argv;
- }
-
- // Does this application use colors?
-@@ -138,37 +141,37 @@
-
- // Attributes to use for menu and forms foregrounds
- virtual chtype foregrounds() const {
-- return b_Colors ? COLOR_PAIR(1) : A_BOLD;
-+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(1)) : A_BOLD;
- }
-
- // Attributes to use for menu and forms backgrounds
- virtual chtype backgrounds() const {
-- return b_Colors ? COLOR_PAIR(2) : A_NORMAL;
-+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(2)) : A_NORMAL;
- }
-
- // Attributes to use for inactive (menu) elements
- virtual chtype inactives() const {
-- return b_Colors ? (COLOR_PAIR(3)|A_DIM) : A_DIM;
-+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(3)|A_DIM) : A_DIM;
- }
-
- // Attributes to use for (form) labels and SLKs
- virtual chtype labels() const {
-- return b_Colors ? COLOR_PAIR(4) : A_NORMAL;
-+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(4)) : A_NORMAL;
- }
-
- // Attributes to use for form backgrounds
- virtual chtype dialog_backgrounds() const {
-- return b_Colors ? COLOR_PAIR(4) : A_NORMAL;
-+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(4)) : A_NORMAL;
- }
-
- // Attributes to use as default for (form) window backgrounds
- virtual chtype window_backgrounds() const {
-- return b_Colors ? COLOR_PAIR(5) : A_NORMAL;
-+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(5)) : A_NORMAL;
- }
-
- // Attributes to use for the title window
- virtual chtype screen_titles() const {
-- return b_Colors ? COLOR_PAIR(6) : A_BOLD;
-+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(6)) : A_BOLD;
- }
-
- };
-Index: c++/cursesf.cc
-Prereq: 1.21
---- ncurses-5.9/c++/cursesf.cc 2005-08-13 18:09:06.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursesf.cc 2011-09-17 22:12:10.000000000 +0000
-@@ -1,6 +1,6 @@
- // * this is for making emacs happy: -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2003,2005 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2005,2011 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 *
-@@ -35,7 +35,7 @@
- #include "cursesf.h"
- #include "cursesapp.h"
-
--MODULE_ID("$Id: cursesf.cc,v 1.21 2005/08/13 18:09:06 tom Exp $")
-+MODULE_ID("$Id: cursesf.cc,v 1.22 2011/09/17 22:12:10 tom Exp $")
-
- NCursesFormField::~NCursesFormField ()
- {
-@@ -234,11 +234,13 @@
- void
- NCursesForm::On_Field_Init(NCursesFormField& field)
- {
-+ (void) field;
- }
-
- void
- NCursesForm::On_Field_Termination(NCursesFormField& field)
- {
-+ (void) field;
- }
-
- // call the form driver and do basic error checking.
-@@ -260,16 +262,19 @@
-
- void NCursesForm::On_Request_Denied(int c) const
- {
-+ (void) c;
- ::beep();
- }
-
- void NCursesForm::On_Invalid_Field(int c) const
- {
-+ (void) c;
- ::beep();
- }
-
- void NCursesForm::On_Unknown_Command(int c) const
- {
-+ (void) c;
- ::beep();
- }
-
-@@ -373,6 +378,7 @@
- //
- bool _nc_xx_fld_fcheck(FIELD *f, const void *u)
- {
-+ (void) f;
- NCursesFormField* F = reinterpret_cast<NCursesFormField*>(const_cast<void *>(u));
- assert(F != 0);
- UserDefinedFieldType* udf = reinterpret_cast<UserDefinedFieldType*>(F->fieldtype());
-@@ -405,6 +411,7 @@
-
- bool _nc_xx_next_choice(FIELD *f, const void *u)
- {
-+ (void) f;
- NCursesFormField* F = reinterpret_cast<NCursesFormField*>(const_cast<void *>(u));
- assert(F != 0);
- UserDefinedFieldType_With_Choice* udf =
-@@ -415,6 +422,7 @@
-
- bool _nc_xx_prev_choice(FIELD *f, const void *u)
- {
-+ (void) f;
- NCursesFormField* F = reinterpret_cast<NCursesFormField*>(const_cast<void *>(u));
- assert(F != 0);
- UserDefinedFieldType_With_Choice* udf =
-Index: c++/cursesf.h
-Prereq: 1.28
---- ncurses-5.9/c++/cursesf.h 2005-08-13 18:08:24.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursesf.h 2014-08-09 22:06:11.000000000 +0000
-@@ -1,6 +1,6 @@
- // * This makes emacs happy -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2004,2005 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -31,7 +31,7 @@
- * Author: Juergen Pfeifer, 1997 *
- ****************************************************************************/
-
--// $Id: cursesf.h,v 1.28 2005/08/13 18:08:24 tom Exp $
-+// $Id: cursesf.h,v 1.32 2014/08/09 22:06:11 Adam.Jiang Exp $
-
- #ifndef NCURSES_CURSESF_H_incl
- #define NCURSES_CURSESF_H_incl 1
-@@ -61,7 +61,7 @@
- protected:
- FIELDTYPE* fieldtype;
-
-- inline void OnError(int err) const THROWS(NCursesFormException) {
-+ inline void OnError(int err) const THROW2(NCursesException const, NCursesFormException) {
- if (err!=E_OK)
- THROW(new NCursesFormException (err));
- }
-@@ -109,7 +109,7 @@
- NCursesFieldType* ftype; // Associated field type
-
- // Error handler
-- inline void OnError (int err) const THROWS(NCursesFormException) {
-+ inline void OnError (int err) const THROW2(NCursesException const, NCursesFormException) {
- if (err != E_OK)
- THROW(new NCursesFormException (err));
- }
-@@ -391,7 +391,7 @@
- bool with_frame,
- bool autoDeleteFields);
-
-- inline void OnError (int err) const THROWS(NCursesFormException) {
-+ inline void OnError (int err) const THROW2(NCursesException const, NCursesFormException) {
- if (err != E_OK)
- THROW(new NCursesFormException (err));
- }
-@@ -673,20 +673,21 @@
- const T* p_UserData = STATIC_CAST(T*)(0))
- : NCursesForm(nlines,ncols,begin_y,begin_x) {
- if (form)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>
-+ (p_UserData)));
- }
-
- public:
-- NCursesUserForm (NCursesFormField Fields[],
-+ NCursesUserForm (NCursesFormField* Fields[],
- const T* p_UserData = STATIC_CAST(T*)(0),
- bool with_frame=FALSE,
- bool autoDelete_Fields=FALSE)
- : NCursesForm (Fields, with_frame, autoDelete_Fields) {
- if (form)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>(p_UserData)));
- };
-
-- NCursesUserForm (NCursesFormField Fields[],
-+ NCursesUserForm (NCursesFormField* Fields[],
- int nlines,
- int ncols,
- int begin_y = 0,
-@@ -697,19 +698,20 @@
- : NCursesForm (Fields, nlines, ncols, begin_y, begin_x,
- with_frame, autoDelete_Fields) {
- if (form)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>
-+ (p_UserData)));
- };
-
- virtual ~NCursesUserForm() {
- };
-
-- inline T* UserData (void) const {
-+ inline T* UserData (void) {
- return reinterpret_cast<T*>(get_user ());
- };
-
- inline virtual void setUserData (const T* p_UserData) {
- if (form)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>(p_UserData)));
- }
-
- };
-Index: c++/cursesm.cc
-Prereq: 1.22
---- ncurses-5.9/c++/cursesm.cc 2005-04-02 20:39:05.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursesm.cc 2011-09-17 22:11:32.000000000 +0000
-@@ -1,6 +1,6 @@
- // * this is for making emacs happy: -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2003,2005 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2005,2011 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 *
-@@ -35,7 +35,7 @@
- #include "cursesm.h"
- #include "cursesapp.h"
-
--MODULE_ID("$Id: cursesm.cc,v 1.22 2005/04/02 20:39:05 tom Exp $")
-+MODULE_ID("$Id: cursesm.cc,v 1.23 2011/09/17 22:11:32 tom Exp $")
-
- NCursesMenuItem::~NCursesMenuItem()
- {
-@@ -375,33 +375,39 @@
- void
- NCursesMenu::On_Item_Init(NCursesMenuItem& item)
- {
-+ (void) item;
- }
-
- void
- NCursesMenu::On_Item_Termination(NCursesMenuItem& item)
- {
-+ (void) item;
- }
-
- void
- NCursesMenu::On_Request_Denied(int c) const
- {
-+ (void) c;
- ::beep();
- }
-
- void
- NCursesMenu::On_Not_Selectable(int c) const
- {
-+ (void) c;
- ::beep();
- }
-
- void
- NCursesMenu::On_No_Match(int c) const
- {
-+ (void) c;
- ::beep();
- }
-
- void
- NCursesMenu::On_Unknown_Command(int c) const
- {
-+ (void) c;
- ::beep();
- }
-Index: c++/cursesm.h
-Prereq: 1.25
---- ncurses-5.9/c++/cursesm.h 2005-08-13 18:10:36.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursesm.h 2014-08-09 22:06:18.000000000 +0000
-@@ -1,6 +1,6 @@
- // * This makes emacs happy -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2003,2005 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -31,7 +31,7 @@
- * Author: Juergen Pfeifer, 1997 *
- ****************************************************************************/
-
--// $Id: cursesm.h,v 1.25 2005/08/13 18:10:36 tom Exp $
-+// $Id: cursesm.h,v 1.30 2014/08/09 22:06:18 Adam.Jiang Exp $
-
- #ifndef NCURSES_CURSESM_H_incl
- #define NCURSES_CURSESM_H_incl 1
-@@ -53,7 +53,7 @@
- protected:
- ITEM *item;
-
-- inline void OnError (int err) const THROWS(NCursesMenuException) {
-+ inline void OnError (int err) const THROW2(NCursesException const, NCursesMenuException) {
- if (err != E_OK)
- THROW(new NCursesMenuException (err));
- }
-@@ -82,6 +82,7 @@
- NCursesMenuItem(const NCursesMenuItem& rhs)
- : item(0)
- {
-+ (void) rhs;
- }
-
- virtual ~NCursesMenuItem ();
-@@ -252,7 +253,7 @@
- bool with_frame,
- bool autoDeleteItems);
-
-- inline void OnError (int err) const THROWS(NCursesMenuException) {
-+ inline void OnError (int err) const THROW2(NCursesException const, NCursesMenuException) {
- if (err != E_OK)
- THROW(new NCursesMenuException (this, err));
- }
-@@ -631,20 +632,20 @@
- const T* p_UserData = STATIC_CAST(T*)(0))
- : NCursesMenu(nlines,ncols,begin_y,begin_x) {
- if (menu)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>(p_UserData)));
- }
-
- public:
-- NCursesUserMenu (NCursesMenuItem Items[],
-+ NCursesUserMenu (NCursesMenuItem* Items[],
- const T* p_UserData = STATIC_CAST(T*)(0),
- bool with_frame=FALSE,
- bool autoDelete_Items=FALSE)
- : NCursesMenu (Items, with_frame, autoDelete_Items) {
- if (menu)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>(p_UserData)));
- };
-
-- NCursesUserMenu (NCursesMenuItem Items[],
-+ NCursesUserMenu (NCursesMenuItem* Items[],
- int nlines,
- int ncols,
- int begin_y = 0,
-@@ -653,19 +654,19 @@
- bool with_frame=FALSE)
- : NCursesMenu (Items, nlines, ncols, begin_y, begin_x, with_frame) {
- if (menu)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>(p_UserData)));
- };
-
- virtual ~NCursesUserMenu() {
- };
-
-- inline T* UserData (void) const {
-+ inline T* UserData (void) {
- return reinterpret_cast<T*>(get_user ());
- };
-
- inline virtual void setUserData (const T* p_UserData) {
- if (menu)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>(p_UserData)));
- }
- };
-
-Index: c++/cursesmain.cc
-Prereq: 1.14
---- ncurses-5.9/c++/cursesmain.cc 2007-04-07 17:10:11.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursesmain.cc 2013-09-28 20:56:47.000000000 +0000
-@@ -1,6 +1,6 @@
- // * this is for making emacs happy: -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2003,2007 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2007,2013 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 *
-@@ -35,13 +35,15 @@
- #include "cursesapp.h"
-
- #if CPP_HAS_TRY_CATCH && HAVE_IOSTREAM
-+#pragma GCC diagnostic ignored "-Weffc++"
- #include <iostream>
-+#pragma GCC diagnostic warning "-Weffc++"
- #else
- #undef CPP_HAS_TRY_CATCH
- #define CPP_HAS_TRY_CATCH 0
- #endif
-
--MODULE_ID("$Id: cursesmain.cc,v 1.14 2007/04/07 17:10:11 tom Exp $")
-+MODULE_ID("$Id: cursesmain.cc,v 1.15 2013/09/28 20:56:47 tom Exp $")
-
- #if HAVE_LOCALE_H
- #include <locale.h>
-Index: c++/cursesp.h
-Prereq: 1.29
---- ncurses-5.9/c++/cursesp.h 2008-08-16 17:20:23.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursesp.h 2014-08-09 22:06:26.000000000 +0000
-@@ -1,6 +1,6 @@
- // * This makes emacs happy -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -34,7 +34,7 @@
- #ifndef NCURSES_CURSESP_H_incl
- #define NCURSES_CURSESP_H_incl 1
-
--// $Id: cursesp.h,v 1.29 2008/08/16 17:20:23 tom Exp $
-+// $Id: cursesp.h,v 1.31 2014/08/09 22:06:26 Adam.Jiang Exp $
-
- #include <cursesw.h>
-
-@@ -86,7 +86,7 @@
- return result;
- }
-
-- void OnError (int err) const THROWS(NCursesPanelException)
-+ void OnError (int err) const THROW2(NCursesException const, NCursesPanelException)
- {
- if (err==ERR)
- THROW(new NCursesPanelException (this, err));
-@@ -236,7 +236,8 @@
- : NCursesPanel (nlines, ncols, begin_y, begin_x)
- {
- if (p)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>
-+ (p_UserData)));
- };
- // This creates an user panel of the requested size with associated
- // user data pointed to by p_UserData.
-@@ -244,14 +245,14 @@
- NCursesUserPanel(const T* p_UserData = STATIC_CAST(T*)(0)) : NCursesPanel()
- {
- if (p)
-- set_user(const_cast<void *>(p_UserData));
-+ set_user(const_cast<void *>(reinterpret_cast<const void*>(p_UserData)));
- };
- // This creates an user panel associated with the ::stdscr and user data
- // pointed to by p_UserData.
-
- virtual ~NCursesUserPanel() {};
-
-- T* UserData (void) const
-+ T* UserData (void)
- {
- return reinterpret_cast<T*>(get_user ());
- };
-@@ -260,7 +261,7 @@
- virtual void setUserData (const T* p_UserData)
- {
- if (p)
-- set_user (const_cast<void *>(p_UserData));
-+ set_user (const_cast<void *>(reinterpret_cast<const void*>(p_UserData)));
- }
- // Associate the user panel with the user data pointed to by p_UserData.
- };
-Index: c++/cursespad.cc
-Prereq: 1.13
---- ncurses-5.9/c++/cursespad.cc 2008-08-04 18:59:22.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursespad.cc 2013-03-30 19:45:36.000000000 +0000
-@@ -1,6 +1,6 @@
- // * this is for making emacs happy: -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -33,10 +33,9 @@
-
- #include "internal.h"
-
--#include <etip.h>
- #include <cursesw.h>
-
--MODULE_ID("$Id: cursespad.cc,v 1.13 2008/08/04 18:59:22 tom Exp $")
-+MODULE_ID("$Id: cursespad.cc,v 1.17 2013/03/30 19:45:36 tom Exp $")
-
- NCursesPad::NCursesPad(int nlines, int ncols)
- : NCursesWindow(),
-@@ -220,6 +219,7 @@
-
- void NCursesFramedPad::OnOperation(int pad_req)
- {
-+ (void) pad_req;
- NCursesWindow* W = Win();
- NCursesWindow* W2 = getWindow();
-
-@@ -228,25 +228,45 @@
- int Height = W->height();
- int i, row, col, h_len, v_len;
-
-- h_len = (Width*Width + width() - 1)/width();
-- if (h_len==0)
-+ int my_width = width();
-+
-+ if (my_width != 0) {
-+ h_len = (Width*Width + my_width - 1) / my_width;
-+ if (h_len==0)
-+ h_len = 1;
-+ if (h_len > Width)
-+ h_len = Width;
-+ } else {
- h_len = 1;
-- if (h_len > Width)
-- h_len = Width;
-+ }
-
-- v_len = (Height*Height + height() - 1)/height();
-- if (v_len==0)
-+ int my_height = height();
-+
-+ if (my_height != 0) {
-+ v_len = (Height*Height + my_height - 1) / my_height;
-+ if (v_len==0)
-+ v_len = 1;
-+ if (v_len > Height)
-+ v_len = Height;
-+ } else {
- v_len = 1;
-- if (v_len > Height)
-- v_len = Height;
-+ }
-
-- col = (min_col * Width + width() - 1) / width();
-- if (col + h_len > Width)
-- col = Width - h_len;
--
-- row = (min_row * Height + height() - 1) / height();
-- if (row + v_len > Height)
-- row = Height - v_len;
-+ if (my_width != 0) {
-+ col = (min_col * Width + my_width - 1) / my_width;
-+ if (col + h_len > Width)
-+ col = Width - h_len;
-+ } else {
-+ col = 0;
-+ }
-+
-+ if (my_height != 0) {
-+ row = (min_row * Height + my_height - 1) / my_height;
-+ if (row + v_len > Height)
-+ row = Height - v_len;
-+ } else {
-+ row = 0;
-+ }
-
- W2->vline(1,Width+1,Height);
- W2->attron(A_REVERSE);
-Index: c++/cursesw.cc
-Prereq: 1.51
---- ncurses-5.9/c++/cursesw.cc 2009-03-28 21:31:37.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursesw.cc 2014-02-01 22:10:42.000000000 +0000
-@@ -1,6 +1,6 @@
- // * this is for making emacs happy: -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 2007-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 2007-2012,2014 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 *
-@@ -42,7 +42,7 @@
- #include "internal.h"
- #include "cursesw.h"
-
--MODULE_ID("$Id: cursesw.cc,v 1.51 2009/03/28 21:31:37 tom Exp $")
-+MODULE_ID("$Id: cursesw.cc,v 1.54 2014/02/01 22:10:42 tom Exp $")
-
- #define COLORS_NEED_INITIALIZATION -1
- #define COLORS_NOT_INITIALIZED 0
-@@ -192,7 +192,6 @@
- constructing();
-
- w = static_cast<WINDOW *>(0);
-- set_keyboard();
- }
-
- NCursesWindow::NCursesWindow(int nlines, int ncols, int begin_y, int begin_x)
-@@ -285,12 +284,14 @@
- NCursesWindow::NCursesWindow(WINDOW *win, int ncols)
- : w(0), alloced(FALSE), par(0), subwins(0), sib(0)
- {
-+ (void) ncols;
- initialize();
- w = win;
- }
-
- int _nc_xx_ripoff_init(WINDOW *w, int ncols)
- {
-+ (void) ncols;
- int res = ERR;
-
- RIPOFFINIT init = *prip++;
-@@ -400,16 +401,16 @@
- }
- }
-
--short
-+NCURSES_PAIRS_T
- NCursesWindow::getPair() const
- {
-- return static_cast<short>(PAIR_NUMBER(getattrs(w)));
-+ return static_cast<NCURSES_PAIRS_T>(PAIR_NUMBER(getattrs(w)));
- }
-
--short
-+NCURSES_COLOR_T
- NCursesWindow::getcolor(int getback) const
- {
-- short fore, back;
-+ NCURSES_COLOR_T fore, back;
-
- if (HaveColors()) {
- if (::pair_content(getPair(), &fore, &back) == ERR)
-@@ -427,27 +428,27 @@
- return (HaveColors()) ? COLORS : 1;
- }
-
--short
-+NCURSES_PAIRS_T
- NCursesWindow::getcolor() const
- {
- return (HaveColors()) ? getPair() : 0;
- }
-
- int
--NCursesWindow::setpalette(short fore, short back, short pair)
-+NCursesWindow::setpalette(NCURSES_COLOR_T fore, NCURSES_COLOR_T back, NCURSES_PAIRS_T pair)
- {
- return (HaveColors()) ? ::init_pair(pair, fore, back) : OK;
- }
-
- int
--NCursesWindow::setpalette(short fore, short back)
-+NCursesWindow::setpalette(NCURSES_COLOR_T fore, NCURSES_COLOR_T back)
- {
- return setpalette(fore, back, getPair());
- }
-
-
- int
--NCursesWindow::setcolor(short pair)
-+NCursesWindow::setcolor(NCURSES_PAIRS_T pair)
- {
- if (HaveColors()) {
- if ((pair < 1) || (pair > COLOR_PAIRS))
-Index: c++/cursesw.h
-Prereq: 1.48
---- ncurses-5.9/c++/cursesw.h 2008-01-19 21:09:10.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursesw.h 2014-02-01 22:17:37.000000000 +0000
-@@ -1,7 +1,7 @@
- // * This makes emacs happy -*-Mode: C++;-*-
- // vile:cppmode
- /****************************************************************************
-- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2014 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 *
-@@ -31,7 +31,7 @@
- #ifndef NCURSES_CURSESW_H_incl
- #define NCURSES_CURSESW_H_incl 1
-
--// $Id: cursesw.h,v 1.48 2008/01/19 21:09:10 tom Exp $
-+// $Id: cursesw.h,v 1.50 2014/02/01 22:17:37 tom Exp $
-
- #include <etip.h>
-
-@@ -118,7 +118,7 @@
- #endif
-
- #ifdef chgat
--inline int UNDEF(chgat)(int n, attr_t attr, short color, const void *opts) {
-+inline int UNDEF(chgat)(int n, attr_t attr, NCURSES_PAIRS_T color, const void *opts) {
- return chgat(n, attr, color, opts); }
- #undef chgat
- #define chgat UNDEF(chgat)
-@@ -151,7 +151,7 @@
- #endif
-
- #ifdef color_set
--inline chtype UNDEF(color_set)(short p, void* opts) { return color_set(p, opts); }
-+inline chtype UNDEF(color_set)(NCURSES_PAIRS_T p, void* opts) { return color_set(p, opts); }
- #undef color_set
- #define color_set UNDEF(color_set)
- #endif
-@@ -361,7 +361,7 @@
-
- #ifdef mvchgat
- inline int UNDEF(mvchgat)(int y, int x, int n,
-- attr_t attr, short color, const void *opts) {
-+ attr_t attr, NCURSES_PAIRS_T color, const void *opts) {
- return mvchgat(y, x, n, attr, color, opts); }
- #undef mvchgat
- #define mvchgat UNDEF(mvchgat)
-@@ -463,7 +463,7 @@
-
- #ifdef mvwchgat
- inline int UNDEF(mvwchgat)(WINDOW *win, int y, int x, int n,
-- attr_t attr, short color, const void *opts) {
-+ attr_t attr, NCURSES_PAIRS_T color, const void *opts) {
- return mvwchgat(win, y, x, n, attr, color, opts); }
- #undef mvwchgat
- #define mvwchgat UNDEF(mvwchgat)
-@@ -763,10 +763,10 @@
-
- void set_keyboard();
-
-- short getcolor(int getback) const;
-- short getPair() const;
-+ NCURSES_COLOR_T getcolor(int getback) const;
-+ NCURSES_PAIRS_T getPair() const;
-
-- static int setpalette(short fore, short back, short pair);
-+ static int setpalette(NCURSES_COLOR_T fore, NCURSES_COLOR_T back, NCURSES_PAIRS_T pair);
- static int colorInitialized;
-
- // This private constructor is only used during the initialization
-@@ -896,19 +896,19 @@
- int maxy() const { return getmaxy(w) == ERR ? ERR : getmaxy(w)-1; }
- // Largest y coord in window
-
-- short getcolor() const;
-+ NCURSES_PAIRS_T getcolor() const;
- // Actual color pair
-
-- short foreground() const { return getcolor(0); }
-+ NCURSES_COLOR_T foreground() const { return getcolor(0); }
- // Actual foreground color
-
-- short background() const { return getcolor(1); }
-+ NCURSES_COLOR_T background() const { return getcolor(1); }
- // Actual background color
-
-- int setpalette(short fore, short back);
-+ int setpalette(NCURSES_COLOR_T fore, NCURSES_COLOR_T back);
- // Set color palette entry
-
-- int setcolor(short pair);
-+ int setcolor(NCURSES_PAIRS_T pair);
- // Set actually used palette entry
-
- // -------------------------------------------------------------------------
-@@ -1107,18 +1107,18 @@
- chtype attrget() { return ::getattrs(w); }
- // Get the window attributes;
-
-- int color_set(short color_pair_number, void* opts=NULL) {
-+ int color_set(NCURSES_PAIRS_T color_pair_number, void* opts=NULL) {
- return ::wcolor_set(w, color_pair_number, opts); }
- // Set the window color attribute;
-
-- int chgat(int n, attr_t attr, short color, const void *opts=NULL) {
-+ int chgat(int n, attr_t attr, NCURSES_PAIRS_T color, const void *opts=NULL) {
- return ::wchgat(w, n, attr, color, opts); }
- // Change the attributes of the next n characters in the current line. If
- // n is negative or greater than the number of remaining characters in the
- // line, the attributes will be changed up to the end of the line.
-
- int chgat(int y, int x,
-- int n, attr_t attr, short color, const void *opts=NULL) {
-+ int n, attr_t attr, NCURSES_PAIRS_T color, const void *opts=NULL) {
- return ::mvwchgat(w, y, x, n, attr, color, opts); }
- // Move the cursor to the requested position and then perform chgat() as
- // described above.
-@@ -1438,16 +1438,19 @@
- // The driver translates the keystroke c into an Pad_Request
-
- virtual void OnUnknownOperation(int pad_req) {
-+ (void) pad_req;
- ::beep();
- }
- // This is called if the driver returns an unknown op-code
-
- virtual void OnNavigationError(int pad_req) {
-+ (void) pad_req;
- ::beep();
- }
- // This is called if a navigation request couldn't be satisfied
-
- virtual void OnOperation(int pad_req) {
-+ (void) pad_req;
- };
- // OnOperation is called if a Pad_Operation was executed and just before
- // the refresh() operation is done.
-@@ -1542,11 +1545,15 @@
- }
-
- void setWindow(NCursesWindow& view, int v_grid = 1, int h_grid = 1) {
-+ (void) view;
-+ (void) v_grid;
-+ (void) h_grid;
- err_handler("Operation not allowed");
- }
- // Disable this call; the viewport is already defined
-
- void setSubWindow(NCursesWindow& sub) {
-+ (void) sub;
- err_handler("Operation not allowed");
- }
- // Disable this call; the viewport subwindow is already defined
-Index: c++/cursslk.cc
-Prereq: 1.15
---- ncurses-5.9/c++/cursslk.cc 2005-08-06 22:12:36.000000000 +0000
-+++ ncurses-5.9-20141206/c++/cursslk.cc 2012-02-23 10:41:56.000000000 +0000
-@@ -1,6 +1,6 @@
- // * this is for making emacs happy: -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2003,2005 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2005,2012 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 *
-@@ -35,14 +35,15 @@
- #include "cursslk.h"
- #include "cursesapp.h"
-
--MODULE_ID("$Id: cursslk.cc,v 1.15 2005/08/06 22:12:36 tom Exp $")
-+MODULE_ID("$Id: cursslk.cc,v 1.16 2012/02/23 10:41:56 tom Exp $")
-
- Soft_Label_Key_Set::Soft_Label_Key&
- Soft_Label_Key_Set::Soft_Label_Key::operator=(char *text)
- {
- delete[] label;
-- label = new char[1 + ::strlen(text)];
-- (::strcpy)(label,text);
-+ size_t need = 1 + ::strlen(text);
-+ label = new char[need];
-+ ::_nc_STRCPY(label,text,need);
- return *this;
- }
-
-Index: c++/demo.cc
-Prereq: 1.39
---- ncurses-5.9/c++/demo.cc 2008-12-07 02:07:34.000000000 +0000
-+++ ncurses-5.9-20141206/c++/demo.cc 2012-02-23 10:41:56.000000000 +0000
-@@ -1,6 +1,6 @@
- // * This makes emacs happy -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -35,7 +35,7 @@
- * Demo code for NCursesMenu and NCursesForm written by
- * Juergen Pfeifer
- *
-- * $Id: demo.cc,v 1.39 2008/12/07 02:07:34 juergen Exp $
-+ * $Id: demo.cc,v 1.41 2012/02/23 10:41:56 tom Exp $
- */
-
- #include "internal.h"
-@@ -220,6 +220,7 @@
- int chk;
- protected:
- bool field_check(NCursesFormField& f) {
-+ (void) f;
- return TRUE;
- }
- bool char_check(int c) {
-@@ -319,7 +320,7 @@
- for(int i=1; i <= S->labels(); i++) {
- char buf[8];
- assert(i < 100);
-- ::sprintf(buf, "Frm%02d", i);
-+ ::_nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) "Frm%02d", i);
- (*S)[i] = buf; // Text
- (*S)[i] = Soft_Label_Key_Set::Soft_Label_Key::Left; // Justification
- }
-@@ -539,7 +540,7 @@
- for(int i=1; i <= S.labels(); i++) {
- char buf[8];
- assert(i < 100);
-- ::sprintf(buf, "Key%02d", i);
-+ ::_nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) "Key%02d", i);
- S[i] = buf; // Text
- S[i] = Soft_Label_Key_Set::Soft_Label_Key::Left; // Justification
- }
-Index: c++/etip.h.in
-Prereq: 1.37
---- ncurses-5.9/c++/etip.h.in 2008-08-30 19:27:32.000000000 +0000
-+++ ncurses-5.9-20141206/c++/etip.h.in 2012-12-29 21:50:44.000000000 +0000
-@@ -1,6 +1,6 @@
- // * This makes emacs happy -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -31,7 +31,7 @@
- * Author: Juergen Pfeifer, 1997 *
- ****************************************************************************/
-
--// $Id: etip.h.in,v 1.37 2008/08/30 19:27:32 tom Exp $
-+// $Id: etip.h.in,v 1.39 2012/12/29 21:50:44 tom Exp $
-
- #ifndef NCURSES_ETIP_H_incl
- #define NCURSES_ETIP_H_incl 1
-@@ -184,7 +184,7 @@
-
- NCursesPanelException (const char *msg, int err) :
- NCursesException (msg, err),
-- p (NULL)
-+ p (0)
- {};
-
- NCursesPanelException (const NCursesPanel* panel,
-@@ -196,7 +196,7 @@
-
- NCursesPanelException (int err) :
- NCursesException ("panel library error", err),
-- p (NULL)
-+ p (0)
- {};
-
- NCursesPanelException (const NCursesPanel* panel,
-@@ -235,7 +235,7 @@
-
- NCursesMenuException (const char *msg, int err) :
- NCursesException (msg, err),
-- m (NULL)
-+ m (0)
- {};
-
- NCursesMenuException (const NCursesMenu* menu,
-@@ -247,7 +247,7 @@
-
- NCursesMenuException (int err) :
- NCursesException ("menu library error", err),
-- m (NULL)
-+ m (0)
- {};
-
- NCursesMenuException (const NCursesMenu* menu,
-@@ -286,7 +286,7 @@
-
- NCursesFormException (const char *msg, int err) :
- NCursesException (msg, err),
-- f (NULL)
-+ f (0)
- {};
-
- NCursesFormException (const NCursesForm* form,
-@@ -298,7 +298,7 @@
-
- NCursesFormException (int err) :
- NCursesException ("form library error", err),
-- f (NULL)
-+ f (0)
- {};
-
- NCursesFormException (const NCursesForm* form,
-@@ -367,11 +367,13 @@
- #define NCURSES_CPP_TRY /* nothing */
- #define NCURSES_CPP_CATCH(e) if (false)
- #define THROWS(s) /* nothing */
-+#define THROW2(s,t) /* nothing */
- #elif CPP_HAS_TRY_CATCH
- throw *e;
- #define NCURSES_CPP_TRY try
- #define NCURSES_CPP_CATCH(e) catch(e)
- #define THROWS(s) throw(s)
-+#define THROW2(s,t) throw(s,t)
- #endif
- }
-
-Index: c++/internal.h
-Prereq: 1.17
---- ncurses-5.9/c++/internal.h 2008-12-07 02:07:34.000000000 +0000
-+++ ncurses-5.9-20141206/c++/internal.h 2012-02-23 10:41:56.000000000 +0000
-@@ -1,6 +1,6 @@
- // * This makes emacs happy -*-Mode: C++;-*-
- /****************************************************************************
-- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2008,2012 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 *
-@@ -31,7 +31,7 @@
- * Author: Juergen Pfeifer, 1997 *
- ****************************************************************************/
-
--// $Id: internal.h,v 1.17 2008/12/07 02:07:34 juergen Exp $
-+// $Id: internal.h,v 1.18 2012/02/23 10:41:56 tom Exp $
-
- #ifndef NCURSES_CPLUS_INTERNAL_H
- #define NCURSES_CPLUS_INTERNAL_H 1
-@@ -62,4 +62,6 @@
- #define NULL 0
- #endif
-
-+#include <nc_string.h>
-+
- #endif /* NCURSES_CPLUS_INTERNAL_H */
-Index: c++/modules
-Prereq: 1.7
---- ncurses-5.9/c++/modules 2006-12-24 00:53:08.000000000 +0000
-+++ ncurses-5.9-20141206/c++/modules 2013-03-30 19:41:11.000000000 +0000
-@@ -1,7 +1,7 @@
- # Program modules
--# $Id: modules,v 1.7 2006/12/24 00:53:08 tom Exp $
-+# $Id: modules,v 1.11 2013/03/30 19:41:11 tom Exp $
- ##############################################################################
--# Copyright (c) 1998,2006 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2006,2013 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"), #
-@@ -32,14 +32,13 @@
- #
-
- @ base
--cursesf c++ $(srcdir) $(cursesf_h) $(cursesapp_h)
--cursesm c++ $(srcdir) $(cursesm_h) $(cursesapp_h)
--cursesp c++ $(srcdir) $(cursesp_h)
--cursesw c++ $(srcdir) $(cursesw_h)
--cursespad c++ $(srcdir) $(cursesw_h)
--cursslk c++ $(srcdir) $(cursslk_h) $(cursesapp_h)
--cursesapp c++ $(srcdir) $(cursesapp_h)
--cursesmain c++ $(srcdir) $(cursesapp_h)
--demo c++ $(srcdir) $(cursesf_h) $(cursesm_h) $(cursesapp_h)
-+cursesf c++ $(srcdir) $(internal_h) $(cursesf_h) $(cursesapp_h)
-+cursesm c++ $(srcdir) $(internal_h) $(cursesm_h) $(cursesapp_h)
-+cursesw c++ $(srcdir) $(internal_h) $(cursesw_h)
-+cursespad c++ $(srcdir) $(internal_h) $(cursesw_h)
-+cursesp c++ $(srcdir) $(internal_h) $(cursesp_h)
-+cursslk c++ $(srcdir) $(internal_h) $(cursesapp_h)
-+cursesapp c++ $(srcdir) $(internal_h) $(cursesapp_h)
-+cursesmain c++ $(srcdir) $(internal_h) $(cursesapp_h) $(INCDIR)/nc_alloc.h
-
- # vile:makemode
-Index: config.guess
---- ncurses-5.9/config.guess 2010-09-28 23:11:39.000000000 +0000
-+++ ncurses-5.9-20141206/config.guess 2014-04-19 18:29:33.000000000 +0000
-@@ -1,14 +1,12 @@
- #! /bin/sh
- # Attempt to guess a canonical system name.
--# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
--# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
--# Free Software Foundation, Inc.
-+# Copyright 1992-2014 Free Software Foundation, Inc.
-
--timestamp='2010-09-24'
-+timestamp='2014-03-23'
-
- # 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
--# the Free Software Foundation; either version 2 of the License, or
-+# the Free Software Foundation; either version 3 of the License, or
- # (at your option) any later version.
- #
- # This program is distributed in the hope that it will be useful, but
-@@ -17,26 +15,22 @@
- # General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
--# along with this program; if not, write to the Free Software
--# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
--# 02110-1301, USA.
-+# along with this program; if not, see <http://www.gnu.org/licenses/>.
- #
- # As a special exception to the GNU General Public License, if you
- # distribute this file as part of a program that contains a
- # configuration script generated by Autoconf, you may include it under
--# the same distribution terms that you use for the rest of that program.
--
--
--# Originally written by Per Bothner. Please send patches (context
--# diff format) to <config-patches@gnu.org> and include a ChangeLog
--# entry.
-+# the same distribution terms that you use for the rest of that
-+# program. This Exception is an additional permission under section 7
-+# of the GNU General Public License, version 3 ("GPLv3").
- #
--# This script attempts to guess a canonical system name similar to
--# config.sub. If it succeeds, it prints the system name on stdout, and
--# exits with 0. Otherwise, it exits with 1.
-+# Originally written by Per Bothner.
- #
- # You can get the latest version of this script from:
- # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-+#
-+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
-+
-
- me=`echo "$0" | sed -e 's,.*/,,'`
-
-@@ -56,9 +50,7 @@
- GNU config.guess ($timestamp)
-
- Originally written by Per Bothner.
--Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
--2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
--Software Foundation, Inc.
-+Copyright 1992-2014 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."
-@@ -92,7 +84,7 @@
- exit 1
- fi
-
--trap 'exit 1' HUP INT TERM
-+trap 'exit 1' 1 2 15
-
- # 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
-@@ -106,7 +98,7 @@
-
- set_cc_for_build='
- trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
--trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" HUP INT PIPE TERM ;
-+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
- : ${TMPDIR=/tmp} ;
- { 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) ; } ||
-@@ -140,12 +132,33 @@
- UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
- UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-+case "${UNAME_SYSTEM}" in
-+Linux|GNU|GNU/*)
-+ # If the system lacks a compiler, then just pick glibc.
-+ # We could probably try harder.
-+ LIBC=gnu
-+
-+ eval $set_cc_for_build
-+ cat <<-EOF > $dummy.c
-+ #include <features.h>
-+ #if defined(__UCLIBC__)
-+ LIBC=uclibc
-+ #elif defined(__dietlibc__)
-+ LIBC=dietlibc
-+ #else
-+ LIBC=gnu
-+ #endif
-+ EOF
-+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
-+ ;;
-+esac
-+
- # Note: order is significant - the case branches are not exclusive.
-
- case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
- *:NetBSD:*:*)
- # NetBSD (nbsd) targets should (where applicable) match one or
-- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
-+ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
- # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
- # switched to ELF, *-*-netbsd* would select the old
- # object file format. This provides both forward
-@@ -202,6 +215,10 @@
- # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}"
- exit ;;
-+ *:Bitrig:*:*)
-+ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
-+ echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
-+ exit ;;
- *:OpenBSD:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-@@ -220,10 +237,10 @@
- exit ;;
- alpha:OSF1:*:*)
- case $UNAME_RELEASE in
-- *4.0)
-+ *4.0)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
- ;;
-- *5.*)
-+ *5.*)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
- ;;
- esac
-@@ -270,7 +287,10 @@
- # 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'`
-- exit ;;
-+ # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
-+ exitcode=$?
-+ trap '' 0
-+ exit $exitcode ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
-@@ -301,7 +321,7 @@
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
- exit ;;
-- arm:riscos:*:*|arm:RISCOS:*:*)
-+ arm*:riscos:*:*|arm*:RISCOS:*:*)
- echo arm-unknown-riscos
- exit ;;
- SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
-@@ -326,8 +346,8 @@
- sparc) echo sparc-icl-nx7; exit ;;
- esac ;;
- s390x:SunOS:*:*)
-- echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-- exit ;;
-+ echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-+ exit ;;
- sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
-@@ -495,7 +515,7 @@
- else
- echo i586-dg-dgux${UNAME_RELEASE}
- fi
-- exit ;;
-+ exit ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
- exit ;;
-@@ -597,50 +617,50 @@
- 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
-- 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
-- 32) HP_ARCH="hppa2.0n" ;;
-- 64) HP_ARCH="hppa2.0w" ;;
-+ 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
-+ 32) HP_ARCH="hppa2.0n" ;;
-+ 64) HP_ARCH="hppa2.0w" ;;
- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
-- esac ;;
-- esac
-+ esac ;;
-+ esac
- fi
- if [ "${HP_ARCH}" = "" ]; then
- eval $set_cc_for_build
-- sed 's/^ //' << EOF >$dummy.c
-+ sed 's/^ //' << EOF >$dummy.c
-+
-+ #define _HPUX_SOURCE
-+ #include <stdlib.h>
-+ #include <unistd.h>
-
-- #define _HPUX_SOURCE
-- #include <stdlib.h>
-- #include <unistd.h>
--
-- int main ()
-- {
-- #if defined(_SC_KERNEL_BITS)
-- long bits = sysconf(_SC_KERNEL_BITS);
-- #endif
-- long cpu = sysconf (_SC_CPU_VERSION);
--
-- switch (cpu)
-- {
-- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-- case CPU_PA_RISC2_0:
-- #if defined(_SC_KERNEL_BITS)
-- switch (bits)
-- {
-- case 64: puts ("hppa2.0w"); break;
-- case 32: puts ("hppa2.0n"); break;
-- default: puts ("hppa2.0"); break;
-- } break;
-- #else /* !defined(_SC_KERNEL_BITS) */
-- puts ("hppa2.0"); break;
-- #endif
-- default: puts ("hppa1.0"); break;
-- }
-- exit (0);
-- }
-+ int main ()
-+ {
-+ #if defined(_SC_KERNEL_BITS)
-+ long bits = sysconf(_SC_KERNEL_BITS);
-+ #endif
-+ long cpu = sysconf (_SC_CPU_VERSION);
-+
-+ switch (cpu)
-+ {
-+ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-+ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-+ case CPU_PA_RISC2_0:
-+ #if defined(_SC_KERNEL_BITS)
-+ switch (bits)
-+ {
-+ case 64: puts ("hppa2.0w"); break;
-+ case 32: puts ("hppa2.0n"); break;
-+ default: puts ("hppa2.0"); break;
-+ } break;
-+ #else /* !defined(_SC_KERNEL_BITS) */
-+ puts ("hppa2.0"); break;
-+ #endif
-+ default: puts ("hppa1.0"); break;
-+ }
-+ exit (0);
-+ }
- EOF
- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
- test -z "$HP_ARCH" && HP_ARCH=hppa
-@@ -789,21 +809,26 @@
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- exit ;;
- *:FreeBSD:*:*)
-- case ${UNAME_MACHINE} in
-- pc98)
-- echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-+ UNAME_PROCESSOR=`/usr/bin/uname -p`
-+ case ${UNAME_PROCESSOR} in
- amd64)
- echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- *)
-- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-+ echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- esac
- exit ;;
- i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
- exit ;;
-+ *:MINGW64*:*)
-+ echo ${UNAME_MACHINE}-pc-mingw64
-+ exit ;;
- *:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
- exit ;;
-+ *:MSYS*:*)
-+ echo ${UNAME_MACHINE}-pc-msys
-+ exit ;;
- i*:windows32*:*)
- # uname -m includes "-pc" on this system.
- echo ${UNAME_MACHINE}-mingw32
-@@ -820,8 +845,8 @@
- echo x86_64-unknown-interix${UNAME_RELEASE}
- exit ;;
- IA64)
-- echo ia64-unknown-interix${UNAME_RELEASE}
-- exit ;;
-+ echo ia64-unknown-interix${UNAME_RELEASE}
-+ exit ;;
- esac ;;
- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
- echo i${UNAME_MACHINE}-pc-mks
-@@ -849,70 +874,81 @@
- exit ;;
- *:GNU:*:*)
- # the GNU system
-- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit ;;
- *:GNU/*:*:*)
- # other systems with GNU libc and userland
-- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
- exit ;;
- i*86:Minix:*:*)
- echo ${UNAME_MACHINE}-pc-minix
- exit ;;
-+ aarch64:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-+ exit ;;
-+ aarch64_be:Linux:*:*)
-+ UNAME_MACHINE=aarch64_be
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-+ exit ;;
- alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-- EV5) UNAME_MACHINE=alphaev5 ;;
-- EV56) UNAME_MACHINE=alphaev56 ;;
-- PCA56) UNAME_MACHINE=alphapca56 ;;
-- PCA57) UNAME_MACHINE=alphapca56 ;;
-- EV6) UNAME_MACHINE=alphaev6 ;;
-- EV67) UNAME_MACHINE=alphaev67 ;;
-- EV68*) UNAME_MACHINE=alphaev68 ;;
-+ EV5) UNAME_MACHINE=alphaev5 ;;
-+ EV56) UNAME_MACHINE=alphaev56 ;;
-+ PCA56) UNAME_MACHINE=alphapca56 ;;
-+ PCA57) UNAME_MACHINE=alphapca56 ;;
-+ EV6) UNAME_MACHINE=alphaev6 ;;
-+ EV67) UNAME_MACHINE=alphaev67 ;;
-+ EV68*) UNAME_MACHINE=alphaev68 ;;
- esac
- objdump --private-headers /bin/sh | grep -q ld.so.1
-- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-+ 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 ;;
- arm*:Linux:*:*)
- eval $set_cc_for_build
-- if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null | \
-- grep -q __ARM_EABI__
-+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
-+ | grep -q __ARM_EABI__
- then
-- echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- else
-- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
-+ 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
-+ else
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
-+ fi
- fi
- exit ;;
- avr32*:Linux:*:*)
-- echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- cris:Linux:*:*)
-- echo cris-axis-linux-gnu
-+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
- exit ;;
- crisv32:Linux:*:*)
-- echo crisv32-axis-linux-gnu
-+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
- exit ;;
- frv:Linux:*:*)
-- echo frv-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-+ exit ;;
-+ hexagon:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- i*86:Linux:*:*)
-- LIBC=gnu
-- eval $set_cc_for_build
-- sed 's/^ //' << EOF >$dummy.c
-- #ifdef __dietlibc__
-- LIBC=dietlibc
-- #endif
--EOF
-- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
-- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
-+ echo ${UNAME_MACHINE}-pc-linux-${LIBC}
- exit ;;
- ia64:Linux:*:*)
-- echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- m32r*:Linux:*:*)
-- echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- m68*:Linux:*:*)
-- echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- mips:Linux:*:* | mips64:Linux:*:*)
- eval $set_cc_for_build
-@@ -931,54 +967,63 @@
- #endif
- EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
- ;;
-- or32:Linux:*:*)
-- echo or32-unknown-linux-gnu
-- exit ;;
-+ openrisc*:Linux:*:*)
-+ echo or1k-unknown-linux-${LIBC}
-+ exit ;;
-+ or32:Linux:*:* | or1k*:Linux:*:*)
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
-+ exit ;;
- padre:Linux:*:*)
-- echo sparc-unknown-linux-gnu
-+ echo sparc-unknown-linux-${LIBC}
- exit ;;
- parisc64:Linux:*:* | hppa64:Linux:*:*)
-- echo hppa64-unknown-linux-gnu
-- exit ;;
-+ echo hppa64-unknown-linux-${LIBC}
-+ exit ;;
- 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-gnu ;;
-- PA8*) echo hppa2.0-unknown-linux-gnu ;;
-- *) echo hppa-unknown-linux-gnu ;;
-+ PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
-+ PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
-+ *) echo hppa-unknown-linux-${LIBC} ;;
- esac
- exit ;;
- ppc64:Linux:*:*)
-- echo powerpc64-unknown-linux-gnu
-+ echo powerpc64-unknown-linux-${LIBC}
- exit ;;
- ppc:Linux:*:*)
-- echo powerpc-unknown-linux-gnu
-+ echo powerpc-unknown-linux-${LIBC}
-+ exit ;;
-+ ppc64le:Linux:*:*)
-+ echo powerpc64le-unknown-linux-${LIBC}
-+ exit ;;
-+ ppcle:Linux:*:*)
-+ echo powerpcle-unknown-linux-${LIBC}
- exit ;;
- s390:Linux:*:* | s390x:Linux:*:*)
-- echo ${UNAME_MACHINE}-ibm-linux
-+ echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
- exit ;;
- sh64*:Linux:*:*)
-- echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- sh*:Linux:*:*)
-- echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- sparc:Linux:*:* | sparc64:Linux:*:*)
-- echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- tile*:Linux:*:*)
-- echo ${UNAME_MACHINE}-tilera-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- vax:Linux:*:*)
-- echo ${UNAME_MACHINE}-dec-linux-gnu
-+ echo ${UNAME_MACHINE}-dec-linux-${LIBC}
- exit ;;
- x86_64:Linux:*:*)
-- echo x86_64-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- xtensa*:Linux:*:*)
-- echo ${UNAME_MACHINE}-unknown-linux-gnu
-+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
- exit ;;
- i*86:DYNIX/ptx:4*:*)
- # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
-@@ -1093,7 +1138,7 @@
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-- && { echo i486-ncr-sysv4; exit; } ;;
-+ && { echo i486-ncr-sysv4; exit; } ;;
- NCR*:*:4.2:* | MPRAS*:*:4.2:*)
- OS_REL='.3'
- test -r /etc/.relid \
-@@ -1136,8 +1181,8 @@
- echo ns32k-sni-sysv
- fi
- exit ;;
-- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-- # says <Richard.M.Bartel@ccMail.Census.GOV>
-+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-+ # says <Richard.M.Bartel@ccMail.Census.GOV>
- echo i586-unisys-sysv4
- exit ;;
- *:UNIX_System_V:4*:FTX*)
-@@ -1165,9 +1210,9 @@
- exit ;;
- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
-- echo mips-nec-sysv${UNAME_RELEASE}
-+ echo mips-nec-sysv${UNAME_RELEASE}
- else
-- echo mips-unknown-sysv${UNAME_RELEASE}
-+ echo mips-unknown-sysv${UNAME_RELEASE}
- fi
- exit ;;
- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
-@@ -1182,6 +1227,9 @@
- BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
- echo i586-pc-haiku
- exit ;;
-+ x86_64:Haiku:*:*)
-+ echo x86_64-unknown-haiku
-+ exit ;;
- SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
- exit ;;
-@@ -1208,26 +1256,38 @@
- exit ;;
- *:Darwin:*:*)
- UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-- case $UNAME_PROCESSOR in
-- i386)
-- eval $set_cc_for_build
-- if [ "$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
-- then
-- UNAME_PROCESSOR="x86_64"
-- fi
-- fi ;;
-- unknown) UNAME_PROCESSOR=powerpc ;;
-- esac
-+ eval $set_cc_for_build
-+ if test "$UNAME_PROCESSOR" = unknown ; then
-+ UNAME_PROCESSOR=powerpc
-+ fi
-+ if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
-+ if [ "$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
-+ then
-+ case $UNAME_PROCESSOR in
-+ i386) UNAME_PROCESSOR=x86_64 ;;
-+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
-+ esac
-+ fi
-+ fi
-+ elif test "$UNAME_PROCESSOR" = i386 ; then
-+ # Avoid executing cc on OS X 10.9, as it ships with a stub
-+ # that puts up a graphical alert prompting to install
-+ # developer tools. Any system running Mac OS X 10.7 or
-+ # later (Darwin 11 and later) is required to have a 64-bit
-+ # processor. This is not true of the ARM version of Darwin
-+ # that Apple uses in portable devices.
-+ UNAME_PROCESSOR=x86_64
-+ fi
- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
- exit ;;
- *:procnto*:*:* | *:QNX:[0123456789]*:*)
- UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = "x86"; then
-- UNAME_PROCESSOR=i386
-- UNAME_MACHINE=pc
-+ UNAME_PROCESSOR=i386
-+ UNAME_MACHINE=pc
- fi
- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
- exit ;;
-@@ -1237,7 +1297,7 @@
- NEO-?:NONSTOP_KERNEL:*:*)
- echo neo-tandem-nsk${UNAME_RELEASE}
- exit ;;
-- NSE-?:NONSTOP_KERNEL:*:*)
-+ NSE-*:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk${UNAME_RELEASE}
- exit ;;
- NSR-?:NONSTOP_KERNEL:*:*)
-@@ -1306,158 +1366,10 @@
- i*86:AROS:*:*)
- echo ${UNAME_MACHINE}-pc-aros
- exit ;;
--esac
--
--#echo '(No uname command or uname output not recognized.)' 1>&2
--#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
--
--eval $set_cc_for_build
--cat >$dummy.c <<EOF
--#ifdef _SEQUENT_
--# include <sys/types.h>
--# include <sys/utsname.h>
--#endif
--main ()
--{
--#if defined (sony)
--#if defined (MIPSEB)
-- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
-- I don't know.... */
-- printf ("mips-sony-bsd\n"); exit (0);
--#else
--#include <sys/param.h>
-- printf ("m68k-sony-newsos%s\n",
--#ifdef NEWSOS4
-- "4"
--#else
-- ""
--#endif
-- ); exit (0);
--#endif
--#endif
--
--#if defined (__arm) && defined (__acorn) && defined (__unix)
-- printf ("arm-acorn-riscix\n"); exit (0);
--#endif
--
--#if defined (hp300) && !defined (hpux)
-- printf ("m68k-hp-bsd\n"); exit (0);
--#endif
--
--#if defined (NeXT)
--#if !defined (__ARCHITECTURE__)
--#define __ARCHITECTURE__ "m68k"
--#endif
-- int version;
-- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-- if (version < 4)
-- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-- else
-- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-- exit (0);
--#endif
--
--#if defined (MULTIMAX) || defined (n16)
--#if defined (UMAXV)
-- printf ("ns32k-encore-sysv\n"); exit (0);
--#else
--#if defined (CMU)
-- printf ("ns32k-encore-mach\n"); exit (0);
--#else
-- printf ("ns32k-encore-bsd\n"); exit (0);
--#endif
--#endif
--#endif
--
--#if defined (__386BSD__)
-- printf ("i386-pc-bsd\n"); exit (0);
--#endif
--
--#if defined (sequent)
--#if defined (i386)
-- printf ("i386-sequent-dynix\n"); exit (0);
--#endif
--#if defined (ns32000)
-- printf ("ns32k-sequent-dynix\n"); exit (0);
--#endif
--#endif
--
--#if defined (_SEQUENT_)
-- struct utsname un;
--
-- uname(&un);
--
-- if (strncmp(un.version, "V2", 2) == 0) {
-- printf ("i386-sequent-ptx2\n"); exit (0);
-- }
-- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
-- printf ("i386-sequent-ptx1\n"); exit (0);
-- }
-- printf ("i386-sequent-ptx\n"); exit (0);
--
--#endif
--
--#if defined (vax)
--# if !defined (ultrix)
--# include <sys/param.h>
--# if defined (BSD)
--# if BSD == 43
-- printf ("vax-dec-bsd4.3\n"); exit (0);
--# else
--# if BSD == 199006
-- printf ("vax-dec-bsd4.3reno\n"); exit (0);
--# else
-- printf ("vax-dec-bsd\n"); exit (0);
--# endif
--# endif
--# else
-- printf ("vax-dec-bsd\n"); exit (0);
--# endif
--# else
-- printf ("vax-dec-ultrix\n"); exit (0);
--# endif
--#endif
--
--#if defined (alliant) && defined (i860)
-- printf ("i860-alliant-bsd\n"); exit (0);
--#endif
--
-- exit (1);
--}
--EOF
--
--$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.
--
--test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
--
--# Convex versions that predate uname can use getsysinfo(1)
--
--if [ -x /usr/convex/getsysinfo ]
--then
-- case `getsysinfo -f cpu_type` in
-- c1*)
-- echo c1-convex-bsd
-- exit ;;
-- c2*)
-- if getsysinfo -f scalar_acc
-- then echo c32-convex-bsd
-- else echo c2-convex-bsd
-- fi
-- exit ;;
-- c34*)
-- echo c34-convex-bsd
-- exit ;;
-- c38*)
-- echo c38-convex-bsd
-+ x86_64:VMkernel:*:*)
-+ echo ${UNAME_MACHINE}-unknown-esx
- exit ;;
-- c4*)
-- echo c4-convex-bsd
-- exit ;;
-- esac
--fi
-+esac
-
- cat >&2 <<EOF
- $0: unable to guess system type
-Index: config.sub
---- ncurses-5.9/config.sub 2010-09-10 22:25:58.000000000 +0000
-+++ ncurses-5.9-20141206/config.sub 2014-09-19 22:49:34.000000000 +0000
-@@ -1,38 +1,31 @@
- #! /bin/sh
- # Configuration validation subroutine script.
--# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
--# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
--# Free Software Foundation, Inc.
--
--timestamp='2010-09-11'
--
--# This file is (in principle) common to ALL GNU software.
--# The presence of a machine in this file suggests that SOME GNU software
--# can handle that machine. It does not imply ALL GNU software can.
--#
--# 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
--# the Free Software Foundation; either version 2 of the License, or
-+# Copyright 1992-2014 Free Software Foundation, Inc.
-+
-+timestamp='2014-09-11'
-+
-+# 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
-+# the Free Software Foundation; either version 3 of the License, or
- # (at your option) any later version.
- #
--# This program is distributed in the hope that it will be useful,
--# but WITHOUT ANY WARRANTY; without even the implied warranty of
--# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--# GNU General Public License for more details.
-+# This program is distributed in the hope that it will be useful, but
-+# WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+# General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
--# along with this program; if not, write to the Free Software
--# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
--# 02110-1301, USA.
-+# along with this program; if not, see <http://www.gnu.org/licenses/>.
- #
- # As a special exception to the GNU General Public License, if you
- # distribute this file as part of a program that contains a
- # configuration script generated by Autoconf, you may include it under
--# the same distribution terms that you use for the rest of that program.
-+# the same distribution terms that you use for the rest of that
-+# program. This Exception is an additional permission under section 7
-+# of the GNU General Public License, version 3 ("GPLv3").
-
-
--# Please send patches to <config-patches@gnu.org>. Submit a context
--# diff and a properly formatted GNU ChangeLog entry.
-+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
- #
- # Configuration subroutine to validate and canonicalize a configuration type.
- # Supply the specified configuration type as an argument.
-@@ -75,9 +68,7 @@
- version="\
- GNU config.sub ($timestamp)
-
--Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
--2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
--Software Foundation, Inc.
-+Copyright 1992-2014 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."
-@@ -125,13 +116,17 @@
- maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
- case $maybe_os in
- nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
-- linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
-+ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
- knetbsd*-gnu* | netbsd*-gnu* | \
- kopensolaris*-gnu* | \
- storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
-+ android-linux)
-+ os=-linux-android
-+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
-+ ;;
- *)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
-@@ -154,7 +149,7 @@
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-- -apple | -axis | -knuth | -cray | -microblaze)
-+ -apple | -axis | -knuth | -cray | -microblaze*)
- os=
- basic_machine=$1
- ;;
-@@ -175,10 +170,10 @@
- os=-chorusos
- basic_machine=$1
- ;;
-- -chorusrdb)
-- os=-chorusrdb
-+ -chorusrdb)
-+ os=-chorusrdb
- basic_machine=$1
-- ;;
-+ ;;
- -hiux*)
- os=-hiuxwe2
- ;;
-@@ -223,6 +218,12 @@
- -isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
-+ -lynx*178)
-+ os=-lynxos178
-+ ;;
-+ -lynx*5)
-+ os=-lynxos5
-+ ;;
- -lynx*)
- os=-lynxos
- ;;
-@@ -247,20 +248,28 @@
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
-+ | aarch64 | aarch64_be \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
-- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
-+ | arc | arceb \
-+ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
-+ | avr | avr32 \
-+ | be32 | be64 \
- | bfin \
-- | c4x | clipper \
-+ | c4x | c8051 | clipper \
- | d10v | d30v | dlx | dsp16xx \
-+ | epiphany \
- | fido | fr30 | frv \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-+ | hexagon \
- | i370 | i860 | i960 | ia64 \
- | ip2k | iq2000 \
-+ | k1om \
-+ | le32 | le64 \
- | lm32 \
- | m32c | m32r | m32rle | m68000 | m68k | m88k \
-- | maxq | mb | microblaze | mcore | mep | metag \
-+ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
-@@ -274,34 +283,38 @@
- | mips64vr5900 | mips64vr5900el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
-+ | mipsisa32r6 | mipsisa32r6el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64r2 | mipsisa64r2el \
-+ | mipsisa64r6 | mipsisa64r6el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
-+ | mipsr5900 | mipsr5900el \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | moxie \
- | mt \
- | msp430 \
-- | nds32 | nds32le | nds32be\
-- | nios | nios2 \
-+ | nds32 | nds32le | nds32be \
-+ | nios | nios2 | nios2eb | nios2el \
- | ns16k | ns32k \
-- | or32 \
-+ | open8 | or1k | or1knd | or32 \
- | pdp10 | pdp11 | pj | pjl \
-- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
-+ | powerpc | powerpc64 | powerpc64le | powerpcle \
- | pyramid \
-- | rx \
-+ | riscv32 | riscv64 \
-+ | rl78 | rx \
- | score \
- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
-- | spu | strongarm \
-- | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
-+ | spu \
-+ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
- | ubicom32 \
-- | v850 | v850e \
-+ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
- | we32k \
-- | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
-+ | x86 | xc16x | xstormy16 | xtensa \
- | z8k | z80)
- basic_machine=$basic_machine-unknown
- ;;
-@@ -314,8 +327,7 @@
- c6x)
- basic_machine=tic6x-unknown
- ;;
-- m6811 | m68hc11 | m6812 | m68hc12 | picochip)
-- # Motorola 68HC11/12.
-+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
- basic_machine=$basic_machine-unknown
- os=-none
- ;;
-@@ -325,12 +337,27 @@
- basic_machine=mt-unknown
- ;;
-
-+ strongarm | thumb | xscale)
-+ basic_machine=arm-unknown
-+ ;;
-+ xgate)
-+ basic_machine=$basic_machine-unknown
-+ os=-none
-+ ;;
-+ xscaleeb)
-+ basic_machine=armeb-unknown
-+ ;;
-+
-+ xscaleel)
-+ basic_machine=armel-unknown
-+ ;;
-+
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
-- basic_machine=$basic_machine-pc
-- ;;
-+ basic_machine=$basic_machine-pc
-+ ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-@@ -339,25 +366,31 @@
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
-+ | aarch64-* | aarch64_be-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
-+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* | avr32-* \
-+ | be32-* | be64-* \
- | bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* \
-- | clipper-* | craynv-* | cydra-* \
-+ | c8051-* | clipper-* | craynv-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | elxsi-* \
- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-+ | hexagon-* \
- | i*86-* | i860-* | i960-* | ia64-* \
- | ip2k-* | iq2000-* \
-+ | k1om-* \
-+ | le32-* | le64-* \
- | lm32-* \
- | m32c-* | m32r-* | m32rle-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
-+ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
-+ | microblaze-* | microblazeel-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
-@@ -371,35 +404,41 @@
- | mips64vr5900-* | mips64vr5900el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
-+ | mipsisa32r6-* | mipsisa32r6el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64r2-* | mipsisa64r2el-* \
-+ | mipsisa64r6-* | mipsisa64r6el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
-+ | mipsr5900-* | mipsr5900el-* \
- | mipstx39-* | mipstx39el-* \
- | mmix-* \
- | mt-* \
- | msp430-* \
- | nds32-* | nds32le-* | nds32be-* \
-- | nios-* | nios2-* \
-+ | nios-* | nios2-* | nios2eb-* | nios2el-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
-+ | open8-* \
-+ | or1k*-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
-+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
- | pyramid-* \
-- | romp-* | rs6000-* | rx-* \
-+ | rl78-* | romp-* | rs6000-* | rx-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
- | sparclite-* \
-- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
-- | tahoe-* | thumb-* \
-+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
-+ | tahoe-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
-- | tile-* | tilegx-* \
-+ | tile*-* \
- | tron-* \
- | ubicom32-* \
-- | v850-* | v850e-* | vax-* \
-+ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
-+ | vax-* \
- | we32k-* \
-- | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
-+ | x86-* | x86_64-* | xc16x-* | xps100-* \
- | xstormy16-* | xtensa*-* \
- | ymp-* \
- | z8k-* | z80-*)
-@@ -539,7 +578,7 @@
- basic_machine=craynv-cray
- os=-unicosmp
- ;;
-- cr16)
-+ cr16 | cr16-*)
- basic_machine=cr16-unknown
- os=-elf
- ;;
-@@ -697,7 +736,6 @@
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
- ;;
--# I'm not sure what "Sysv32" means. Should this be sysv3.2?
- i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
-@@ -755,11 +793,15 @@
- basic_machine=ns32k-utek
- os=-sysv
- ;;
-- microblaze)
-+ microblaze*)
- basic_machine=microblaze-xilinx
- ;;
-+ mingw64)
-+ basic_machine=x86_64-pc
-+ os=-mingw64
-+ ;;
- mingw32)
-- basic_machine=i386-pc
-+ basic_machine=i686-pc
- os=-mingw32
- ;;
- mingw32ce)
-@@ -787,6 +829,10 @@
- basic_machine=powerpc-unknown
- os=-morphos
- ;;
-+ moxiebox)
-+ basic_machine=moxie-unknown
-+ os=-moxiebox
-+ ;;
- msdos)
- basic_machine=i386-pc
- os=-msdos
-@@ -794,10 +840,18 @@
- ms1-*)
- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
- ;;
-+ msys)
-+ basic_machine=i686-pc
-+ os=-msys
-+ ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
- ;;
-+ nacl)
-+ basic_machine=le32-unknown
-+ os=-nacl
-+ ;;
- ncr3000)
- basic_machine=i486-ncr
- os=-sysv4
-@@ -950,9 +1004,10 @@
- ;;
- power) basic_machine=power-ibm
- ;;
-- ppc) basic_machine=powerpc-unknown
-+ ppc | ppcbe) basic_machine=powerpc-unknown
- ;;
-- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ppc-* | ppcbe-*)
-+ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
-@@ -977,7 +1032,11 @@
- basic_machine=i586-unknown
- os=-pw32
- ;;
-- rdos)
-+ rdos | rdos64)
-+ basic_machine=x86_64-pc
-+ os=-rdos
-+ ;;
-+ rdos32)
- basic_machine=i386-pc
- os=-rdos
- ;;
-@@ -1046,6 +1105,9 @@
- basic_machine=i860-stratus
- os=-sysv4
- ;;
-+ strongarm-* | thumb-*)
-+ basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ ;;
- sun2)
- basic_machine=m68000-sun
- ;;
-@@ -1102,13 +1164,8 @@
- basic_machine=t90-cray
- os=-unicos
- ;;
-- # This must be matched before tile*.
-- tilegx*)
-- basic_machine=tilegx-unknown
-- os=-linux-gnu
-- ;;
- tile*)
-- basic_machine=tile-unknown
-+ basic_machine=$basic_machine-unknown
- os=-linux-gnu
- ;;
- tx39)
-@@ -1178,6 +1235,9 @@
- xps | xps100)
- basic_machine=xps100-honeywell
- ;;
-+ xscale-* | xscalee[bl]-*)
-+ basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
-+ ;;
- ymp)
- basic_machine=ymp-cray
- os=-unicos
-@@ -1303,29 +1363,29 @@
- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
-- | -sym* | -kopensolaris* \
-+ | -sym* | -kopensolaris* | -plan9* \
- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* | -aros* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-- | -openbsd* | -solidbsd* \
-+ | -bitrig* | -openbsd* | -solidbsd* \
- | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
- | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* | -cegcc* \
-- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-- | -mingw32* | -linux-gnu* | -linux-android* \
-- | -linux-newlib* | -linux-uclibc* \
-- | -uxpv* | -beos* | -mpeix* | -udk* \
-+ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-+ | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
-+ | -linux-newlib* | -linux-musl* | -linux-uclibc* \
-+ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
-+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
- -qnx*)
-@@ -1449,9 +1509,6 @@
- -aros*)
- os=-aros
- ;;
-- -kaos*)
-- os=-kaos
-- ;;
- -zvmoe)
- os=-zvmoe
- ;;
-@@ -1500,6 +1557,12 @@
- c4x-* | tic4x-*)
- os=-coff
- ;;
-+ c8051-*)
-+ os=-elf
-+ ;;
-+ hexagon-*)
-+ os=-elf
-+ ;;
- tic54x-*)
- os=-coff
- ;;
-@@ -1527,9 +1590,6 @@
- ;;
- m68000-sun)
- os=-sunos3
-- # This also exists in the configure program, but was not the
-- # default.
-- # os=-sunos4
- ;;
- m68*-cisco)
- os=-aout
-Index: configure
---- ncurses-5.9/configure 2011-03-31 23:35:51.000000000 +0000
-+++ ncurses-5.9-20141206/configure 2014-12-06 13:39:03.000000000 +0000
-@@ -1,7 +1,7 @@
- #! /bin/sh
--# From configure.in Revision: 1.520 .
-+# From configure.in Revision: 1.590 .
- # Guess values for system-dependent variables and create Makefiles.
--# Generated by Autoconf 2.52.20101002.
-+# Generated by Autoconf 2.52.20141204.
- #
- # Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
- # Free Software Foundation, Inc.
-@@ -171,15 +171,16 @@
- bindir='${exec_prefix}/bin'
- sbindir='${exec_prefix}/sbin'
- libexecdir='${exec_prefix}/libexec'
--datadir='${prefix}/share'
-+datarootdir='${prefix}/share'
-+datadir='${datarootdir}'
- sysconfdir='${prefix}/etc'
- sharedstatedir='${prefix}/com'
- localstatedir='${prefix}/var'
- libdir='${exec_prefix}/lib'
- includedir='${prefix}/include'
- oldincludedir='/usr/include'
--infodir='${prefix}/info'
--mandir='${prefix}/man'
-+infodir='${datarootdir}/info'
-+mandir='${datarootdir}/man'
-
- # Identity of this package.
- PACKAGE_NAME=
-@@ -230,6 +231,13 @@
- | --da=*)
- datadir=$ac_optarg ;;
-
-+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-+ | --dataroo | --dataro | --datar)
-+ ac_prev=datarootdir ;;
-+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-+ datarootdir=$ac_optarg ;;
-+
- -disable-* | --disable-*)
- ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
-@@ -505,7 +513,7 @@
- done
-
- # Be sure to have absolute paths.
--for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
-+for ac_var in bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir \
- localstatedir libdir includedir oldincludedir infodir mandir
- do
- eval ac_val=$`echo $ac_var`
-@@ -654,15 +662,16 @@
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
-- --datadir=DIR read-only architecture-independent data [PREFIX/share]
-+ --datarootdir=DIR read-only architecture-independent data [PREFIX/share]
-+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
-- --infodir=DIR info documentation [PREFIX/info]
-- --mandir=DIR man documentation [PREFIX/man]
-+ --infodir=DIR info documentation [DATAROOTDIR/info]
-+ --mandir=DIR man documentation [DATAROOTDIR/man]
- EOF
-
- cat <<\EOF
-@@ -694,14 +703,16 @@
- --with-rel-version=XXX override derived release version
- --with-abi-version=XXX override derived ABI version
- --with-system-type=XXX test: override derived host system-type
-+ --without-ada suppress check for Ada95, don't build demo
- --without-cxx do not adjust ncurses bool to match C++
- --without-cxx-binding do not build C++ binding and demo
-- --without-ada suppress check for Ada95, don't build demo
-+ --disable-db-install suppress install of terminal database
- --without-manpages suppress install of manpages
-- --without-progs suppress build with programs (e.g., tic)
-- --without-tests suppress build with test-programs
-+ --without-progs suppress build/install with programs (e.g., tic)
-+ --without-tests suppress build/install with test-programs
- --without-curses-h install curses.h as ncurses.h only
- --with-pkg-config{=path} enable/disable use of pkg-config
-+ --with-pkg-config-libdir=XXX use given directory for installing pc-files
- --enable-pc-files generate and install .pc files for pkg-config
- --enable-mixed-case tic should assume mixed-case filenames
- --with-install-prefix prefixes actual install-location ($DESTDIR)
-@@ -719,6 +730,8 @@
- --with-normal generate normal-libraries (default)
- --with-debug generate debug-libraries (default)
- --with-profile generate profile-libraries
-+ --with-cxx-shared generate C++ shared-libraries
-+ --with-lib-prefix override library-prefix
- --with-termlib generate separate terminfo library
- --with-ticlib generate separate tic library
- --with-gpm use Alessandro Rubini's GPM library
-@@ -727,6 +740,10 @@
- --enable-rpath use rpath option when generating shared libraries
- --disable-relink relink shared libraries during install
- --with-shlib-version=X Specify rel or abi version for shared libs
-+ --with-libtool-opts=XXX specify additional libtool options
-+ --with-export-syms=XXX limit exported symbols using libtool
-+ --with-versioned-syms=X markup versioned symbols using ld
-+ --disable-lib-suffixes disable library suffixes
- --disable-rpath-hack don't add rpath options for additional libraries
- Fine-Tuning Your Configuration:
- --disable-overwrite leave out the link to -lcurses
-@@ -735,6 +752,7 @@
- --with-hashed-db specify hashed-database library
- --with-fallbacks=XXX specify list of fallback terminal descriptions
- --without-xterm-new specify if xterm terminfo should be old version
-+ --with-xterm-kbs=XXX specify if xterm backspace sends BS or DEL
- --with-terminfo-dirs=XXX specify list of terminfo directories (default: DATADIR/terminfo)
- --with-default-terminfo-dir=DIR default terminfo directory (default: DATADIR/terminfo)
- --disable-big-core assume machine has little memory
-@@ -759,6 +777,7 @@
- --with-ospeed=TYPE override type of ospeed variable
- --with-mmask-t=TYPE override type of mmask_t
- --with-ccharw-max=XXX override size CCHARW_MAX
-+ --with-tparm-arg=TYPE override parameter type of tparm
- --with-rcs-ids compile-in RCS identifiers
- Options to Specify How Manpages are Installed:
- --with-manpage-format specify manpage-format: gzip/compress/BSDI/normal and
-@@ -796,8 +815,9 @@
- --disable-scroll-hints compile without scroll-hints code
- --enable-wgetch-events compile with experimental wgetch-events code
- Testing/development Options:
-- --enable-echo build: display "compiling" commands (default)
-+ --disable-echo do not display "compiling" commands
- --enable-warnings build: turn on GCC compiler warnings
-+ --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
- --with-dbmalloc test: use Conor Cahill's dbmalloc library
-@@ -806,11 +826,12 @@
- --enable-expanded test: generate functions for certain macros
- --disable-macros test: use functions rather than macros
- --with-trace test: add trace() function to all models of ncurses
-+ --disable-gnat-projects test: disable GNAT projects even if usable
- Ada95 Binding Options:
- --with-ada-compiler=CMD specify Ada95 compiler command (default gnatmake)
- --with-ada-include=DIR Ada includes are in DIR (default: PREFIX/share/ada/adainclude)
- --with-ada-objects=DIR Ada objects are in DIR (default: PREFIX/lib/ada/adalib)
-- --with-ada-sharedlib=XX build Ada95 shared-library
-+ --with-ada-sharedlib=soname build shared-library (requires GNAT projects)
-
- Some influential environment variables:
- CC C compiler command
-@@ -883,7 +904,7 @@
- running configure, to aid debugging if configure makes a mistake.
-
- It was created by $as_me, which was
--generated by GNU Autoconf 2.52.20101002. Invocation command line was
-+generated by GNU Autoconf 2.52.20141204. Invocation command line was
-
- $ $0 $@
-
-@@ -1007,7 +1028,7 @@
- fi
- for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
-- { echo "$as_me:1010: loading site script $ac_site_file" >&5
-+ { echo "$as_me:1031: 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"
-@@ -1018,7 +1039,7 @@
- # 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:1021: loading cache $cache_file" >&5
-+ { echo "$as_me:1042: loading cache $cache_file" >&5
- echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . $cache_file;;
-@@ -1026,7 +1047,7 @@
- esac
- fi
- else
-- { echo "$as_me:1029: creating cache $cache_file" >&5
-+ { echo "$as_me:1050: creating cache $cache_file" >&5
- echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
- fi
-@@ -1042,21 +1063,21 @@
- eval ac_new_val="\$ac_env_${ac_var}_value"
- case $ac_old_set,$ac_new_set in
- set,)
-- { echo "$as_me:1045: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-+ { echo "$as_me:1066: 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:1049: error: \`$ac_var' was not set in the previous run" >&5
-+ { echo "$as_me:1070: 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:1055: error: \`$ac_var' has changed since the previous run:" >&5
-+ { echo "$as_me:1076: 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:1057: former value: $ac_old_val" >&5
-+ { echo "$as_me:1078: former value: $ac_old_val" >&5
- echo "$as_me: former value: $ac_old_val" >&2;}
-- { echo "$as_me:1059: current value: $ac_new_val" >&5
-+ { echo "$as_me:1080: current value: $ac_new_val" >&5
- echo "$as_me: current value: $ac_new_val" >&2;}
- ac_cache_corrupted=:
- fi;;
-@@ -1075,9 +1096,9 @@
- fi
- done
- if $ac_cache_corrupted; then
-- { echo "$as_me:1078: error: changes in the environment can compromise the build" >&5
-+ { echo "$as_me:1099: 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:1080: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-+ { { echo "$as_me:1101: 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
-@@ -1089,19 +1110,19 @@
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- ac_main_return=return
-
--case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
-- *c*,-n*) ECHO_N= ECHO_C='
--' ECHO_T=' ' ;;
-+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= ;;
- esac
- echo "#! $SHELL" >conftest.sh
- echo "exit 0" >>conftest.sh
- chmod +x conftest.sh
--if { (echo "$as_me:1101: PATH=\".;.\"; conftest.sh") >&5
-+if { (echo "$as_me:1122: PATH=\".;.\"; conftest.sh") >&5
- (PATH=".;."; conftest.sh) 2>&5
- ac_status=$?
-- echo "$as_me:1104: \$? = $ac_status" >&5
-+ echo "$as_me:1125: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- ac_path_separator=';'
- else
-@@ -1114,7 +1135,7 @@
-
- top_builddir=`pwd`
-
--echo "$as_me:1117: checking for egrep" >&5
-+echo "$as_me:1138: 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
-@@ -1124,11 +1145,11 @@
- else ac_cv_prog_egrep='egrep'
- fi
- fi
--echo "$as_me:1127: result: $ac_cv_prog_egrep" >&5
-+echo "$as_me:1148: 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:1131: error: No egrep program found" >&5
-+test -z "$EGREP" && { { echo "$as_me:1152: error: No egrep program found" >&5
- echo "$as_me: error: No egrep program found" >&2;}
- { (exit 1); exit 1; }; }
-
-@@ -1138,15 +1159,99 @@
- cf_cv_abi_version=${NCURSES_MAJOR}
- cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR}
- cf_cv_timestamp=`date`
--echo "$as_me:1141: result: Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)" >&5
-+echo "$as_me:1162: 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:1166: 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`
-+
-+ # 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:1178: 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:1183: error: missing minor-version" >&5
-+echo "$as_me: error: missing minor-version" >&2;}
-+ { (exit 1); exit 1; }; }
-+
-+ echo "$as_me:1187: result: ${VERSION_MAJOR}.${VERSION_MINOR}" >&5
-+echo "${ECHO_T}${VERSION_MAJOR}.${VERSION_MINOR}" >&6
-+
-+ echo "$as_me:1190: 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:1195: 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:1202: 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:1207: result: $VERSION_PATCH" >&5
-+echo "${ECHO_T}$VERSION_PATCH" >&6
-+else
-+ { { echo "$as_me:1210: error: did not find $srcdir/VERSION" >&5
-+echo "$as_me: error: did not find $srcdir/VERSION" >&2;}
-+ { (exit 1); exit 1; }; }
-+fi
-+
-+# show the actual data that we have for versions:
-+test -n "$verbose" && echo " ABI VERSION $VERSION" 1>&6
-+
-+echo "${as_me:-configure}:1218: testing ABI VERSION $VERSION ..." 1>&5
-+
-+test -n "$verbose" && echo " VERSION_MAJOR $VERSION_MAJOR" 1>&6
-+
-+echo "${as_me:-configure}:1222: testing VERSION_MAJOR $VERSION_MAJOR ..." 1>&5
-+
-+test -n "$verbose" && echo " VERSION_MINOR $VERSION_MINOR" 1>&6
-+
-+echo "${as_me:-configure}:1226: testing VERSION_MINOR $VERSION_MINOR ..." 1>&5
-+
-+test -n "$verbose" && echo " VERSION_PATCH $VERSION_PATCH" 1>&6
-+
-+echo "${as_me:-configure}:1230: testing VERSION_PATCH $VERSION_PATCH ..." 1>&5
-+
-+ cf_PACKAGE=NCURSES
-+ PACKAGE=ncurses
-+
-+cat >>confdefs.h <<EOF
-+#define PACKAGE "$PACKAGE"
-+EOF
-+
-+cf_PACKAGE=`echo "$cf_PACKAGE" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+ cat >>confdefs.h <<EOF
-+#define ${cf_PACKAGE}_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}"
-+EOF
-+
-+ cat >>confdefs.h <<EOF
-+#define ${cf_PACKAGE}_PATCHDATE ${VERSION_PATCH}
-+EOF
-+
- 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:1149: WARNING: overriding release version $cf_cv_rel_version to $withval" >&5
-+ { echo "$as_me:1254: 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;
-@@ -1159,13 +1264,13 @@
- [0-9]*) #(vi
- ;;
- *)
-- { { echo "$as_me:1162: error: Release major-version is not a number: $NCURSES_MAJOR" >&5
-+ { { echo "$as_me:1267: 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:1168: error: Release major-version value is empty" >&5
-+ { { echo "$as_me:1273: error: Release major-version value is empty" >&5
- echo "$as_me: error: Release major-version value is empty" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -1175,13 +1280,13 @@
- [0-9]*) #(vi
- ;;
- *)
-- { { echo "$as_me:1178: error: Release minor-version is not a number: $NCURSES_MINOR" >&5
-+ { { echo "$as_me:1283: 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:1184: error: Release minor-version value is empty" >&5
-+ { { echo "$as_me:1289: error: Release minor-version value is empty" >&5
- echo "$as_me: error: Release minor-version value is empty" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -1191,7 +1296,7 @@
- # Check whether --with-abi-version or --without-abi-version was given.
- if test "${with_abi_version+set}" = set; then
- withval="$with_abi_version"
-- { echo "$as_me:1194: WARNING: overriding ABI version $cf_cv_abi_version to $withval" >&5
-+ { echo "$as_me:1299: 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;}
- cf_cv_abi_version=$withval
- fi;
-@@ -1201,13 +1306,13 @@
- [0-9]*) #(vi
- ;;
- *)
-- { { echo "$as_me:1204: error: ABI version is not a number: $cf_cv_abi_version" >&5
-+ { { echo "$as_me:1309: 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:1210: error: ABI version value is empty" >&5
-+ { { echo "$as_me:1315: error: ABI version value is empty" >&5
- echo "$as_me: error: ABI version value is empty" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -1229,7 +1334,7 @@
- fi
- done
- if test -z "$ac_aux_dir"; then
-- { { echo "$as_me:1232: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
-+ { { echo "$as_me:1337: 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
-@@ -1239,11 +1344,11 @@
-
- # Make sure we can run config.sub.
- $ac_config_sub sun4 >/dev/null 2>&1 ||
-- { { echo "$as_me:1242: error: cannot run $ac_config_sub" >&5
-+ { { echo "$as_me:1347: error: cannot run $ac_config_sub" >&5
- echo "$as_me: error: cannot run $ac_config_sub" >&2;}
- { (exit 1); exit 1; }; }
-
--echo "$as_me:1246: checking build system type" >&5
-+echo "$as_me:1351: 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
-@@ -1252,23 +1357,23 @@
- test -z "$ac_cv_build_alias" &&
- ac_cv_build_alias=`$ac_config_guess`
- test -z "$ac_cv_build_alias" &&
-- { { echo "$as_me:1255: error: cannot guess build type; you must specify one" >&5
-+ { { echo "$as_me:1360: 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:1259: error: $ac_config_sub $ac_cv_build_alias failed." >&5
-+ { { echo "$as_me:1364: 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:1264: result: $ac_cv_build" >&5
-+echo "$as_me:1369: 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/'`
-
--echo "$as_me:1271: checking host system type" >&5
-+echo "$as_me:1376: 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
-@@ -1277,12 +1382,12 @@
- 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:1280: error: $ac_config_sub $ac_cv_host_alias failed" >&5
-+ { { echo "$as_me:1385: 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:1285: result: $ac_cv_host" >&5
-+echo "$as_me:1390: 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/'`
-@@ -1290,7 +1395,7 @@
- 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:1293: checking target system type" >&5
-+ echo "$as_me:1398: 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
-@@ -1299,12 +1404,12 @@
- 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:1302: error: $ac_config_sub $ac_cv_target_alias failed" >&5
-+ { { echo "$as_me:1407: 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:1307: result: $ac_cv_target" >&5
-+echo "$as_me:1412: 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/'`
-@@ -1324,7 +1429,8 @@
- system_name="`(hostname) 2>/dev/null`"
- fi
- fi
--test -n "$system_name" && cat >>confdefs.h <<EOF
-+test -n "$system_name" &&
-+cat >>confdefs.h <<EOF
- #define SYSTEM_NAME "$system_name"
- EOF
-
-@@ -1335,13 +1441,13 @@
- fi
-
- test -z "$system_name" && system_name="$cf_cv_system_name"
--test -n "$cf_cv_system_name" && echo "$as_me:1338: result: Configuring for $cf_cv_system_name" >&5
-+test -n "$cf_cv_system_name" && echo "$as_me:1444: 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:1342: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
-+ echo "$as_me:1448: 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:1344: error: \"Please remove config.cache and try again.\"" >&5
-+ { { echo "$as_me:1450: 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
-@@ -1349,9 +1455,11 @@
- # 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:1352: WARNING: overriding system type to $withval" >&5
-+ { echo "$as_me:1458: WARNING: overriding system type to $withval" >&5
- echo "$as_me: WARNING: overriding system type to $withval" >&2;}
-- cf_cv_system_name=$withval
-+ cf_cv_system_name=$withval
-+ host_os=$withval
-+
- fi;
-
- ### Save the given $CFLAGS to allow user-override.
-@@ -1359,23 +1467,23 @@
-
- ### Default install-location
-
--echo "$as_me:1362: checking for prefix" >&5
-+echo "$as_me:1470: 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
- # non-vendor systems don't have a conflict
-- openbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu)
-+ openbsd*|freebsd*|mirbsd*|linux*|cygwin*|msys*|k*bsd*-gnu|mingw*)
- prefix=/usr
- ;;
- *) prefix=$ac_default_prefix
- ;;
- esac
- fi
--echo "$as_me:1374: result: $prefix" >&5
-+echo "$as_me:1482: result: $prefix" >&5
- echo "${ECHO_T}$prefix" >&6
-
- if test "x$prefix" = "xNONE" ; then
--echo "$as_me:1378: checking for default include-directory" >&5
-+echo "$as_me:1486: 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 \
-@@ -1398,11 +1506,26 @@
- fi
- test -n "$verbose" && echo " tested $cf_dir" 1>&6
- done
--echo "$as_me:1401: result: $includedir" >&5
-+echo "$as_me:1509: result: $includedir" >&5
- echo "${ECHO_T}$includedir" >&6
- fi
-
- ### Checks for programs.
-+
-+# Check whether --with-ada or --without-ada was given.
-+if test "${with_ada+set}" = set; then
-+ withval="$with_ada"
-+ cf_with_ada=$withval
-+else
-+ cf_with_ada=yes
-+fi;
-+if test "x$cf_with_ada" = xyes
-+then
-+ cf_PROG_CC="gnatgcc gcc cc"
-+else
-+ cf_PROG_CC="gcc cc"
-+fi
-+
- ac_ext=c
- ac_cpp='$CPP $CPPFLAGS'
- ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-@@ -1410,213 +1533,11 @@
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- 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:1415: 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
--else
-- if test -n "$CC"; then
-- ac_cv_prog_CC="$CC" # 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_CC="${ac_tool_prefix}gcc"
--echo "$as_me:1430: found $ac_dir/$ac_word" >&5
--break
--done
--
--fi
--fi
--CC=$ac_cv_prog_CC
--if test -n "$CC"; then
-- echo "$as_me:1438: result: $CC" >&5
--echo "${ECHO_T}$CC" >&6
--else
-- echo "$as_me:1441: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
--fi
--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:1450: 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
--else
-- if test -n "$ac_ct_CC"; then
-- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # 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_CC="gcc"
--echo "$as_me:1465: found $ac_dir/$ac_word" >&5
--break
--done
--
--fi
--fi
--ac_ct_CC=$ac_cv_prog_ac_ct_CC
--if test -n "$ac_ct_CC"; then
-- echo "$as_me:1473: result: $ac_ct_CC" >&5
--echo "${ECHO_T}$ac_ct_CC" >&6
--else
-- echo "$as_me:1476: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
-- CC=$ac_ct_CC
--else
-- CC="$ac_cv_prog_CC"
--fi
--
--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:1489: 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
--else
-- if test -n "$CC"; then
-- ac_cv_prog_CC="$CC" # 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_CC="${ac_tool_prefix}cc"
--echo "$as_me:1504: found $ac_dir/$ac_word" >&5
--break
--done
--
--fi
--fi
--CC=$ac_cv_prog_CC
--if test -n "$CC"; then
-- echo "$as_me:1512: result: $CC" >&5
--echo "${ECHO_T}$CC" >&6
--else
-- echo "$as_me:1515: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
--fi
--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:1524: 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
--else
-- if test -n "$ac_ct_CC"; then
-- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # 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_CC="cc"
--echo "$as_me:1539: found $ac_dir/$ac_word" >&5
--break
--done
--
--fi
--fi
--ac_ct_CC=$ac_cv_prog_ac_ct_CC
--if test -n "$ac_ct_CC"; then
-- echo "$as_me:1547: result: $ac_ct_CC" >&5
--echo "${ECHO_T}$ac_ct_CC" >&6
--else
-- echo "$as_me:1550: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
-- CC=$ac_ct_CC
--else
-- CC="$ac_cv_prog_CC"
--fi
--
--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:1563: 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
--else
-- if test -n "$CC"; then
-- ac_cv_prog_CC="$CC" # Let the user override the test.
--else
-- ac_prog_rejected=no
-- 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
--if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
-- ac_prog_rejected=yes
-- continue
--fi
--ac_cv_prog_CC="cc"
--echo "$as_me:1583: found $ac_dir/$ac_word" >&5
--break
--done
--
--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
-- if test $# != 0; then
-- # We chose a different compiler from the bogus one.
-- # However, it has the same basename, so the bogon will be chosen
-- # first if we set CC to just the basename; use the full file name.
-- shift
-- set dummy "$ac_dir/$ac_word" ${1+"$@"}
-- shift
-- ac_cv_prog_CC="$@"
-- fi
--fi
--fi
--fi
--CC=$ac_cv_prog_CC
--if test -n "$CC"; then
-- echo "$as_me:1605: result: $CC" >&5
--echo "${ECHO_T}$CC" >&6
--else
-- echo "$as_me:1608: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
--fi
--if test -z "$CC"; then
-- if test -n "$ac_tool_prefix"; then
-- for ac_prog in cl
-+ 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:1619: checking for $ac_word" >&5
-+echo "$as_me:1540: 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
-@@ -1631,7 +1552,7 @@
- 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:1634: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1555: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1639,10 +1560,10 @@
- fi
- CC=$ac_cv_prog_CC
- if test -n "$CC"; then
-- echo "$as_me:1642: result: $CC" >&5
-+ echo "$as_me:1563: result: $CC" >&5
- echo "${ECHO_T}$CC" >&6
- else
-- echo "$as_me:1645: result: no" >&5
-+ echo "$as_me:1566: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1651,11 +1572,11 @@
- fi
- if test -z "$CC"; then
- ac_ct_CC=$CC
-- for ac_prog in cl
-+ for ac_prog in $cf_PROG_CC
- 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:1658: checking for $ac_word" >&5
-+echo "$as_me:1579: 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
-@@ -1670,7 +1591,7 @@
- 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:1673: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1594: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1678,10 +1599,10 @@
- fi
- ac_ct_CC=$ac_cv_prog_ac_ct_CC
- if test -n "$ac_ct_CC"; then
-- echo "$as_me:1681: result: $ac_ct_CC" >&5
-+ echo "$as_me:1602: result: $ac_ct_CC" >&5
- echo "${ECHO_T}$ac_ct_CC" >&6
- else
-- echo "$as_me:1684: result: no" >&5
-+ echo "$as_me:1605: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1691,34 +1612,32 @@
- CC=$ac_ct_CC
- fi
-
--fi
--
--test -z "$CC" && { { echo "$as_me:1696: error: no acceptable cc found in \$PATH" >&5
-+test -z "$CC" && { { echo "$as_me:1615: 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:1620:" \
- "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
-+{ (eval echo "$as_me:1623: \"$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
-+ echo "$as_me:1626: \$? = $ac_status" >&5
- (exit $ac_status); }
--{ (eval echo "$as_me:1709: \"$ac_compiler -v </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:1628: \"$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
-+ echo "$as_me:1631: \$? = $ac_status" >&5
- (exit $ac_status); }
--{ (eval echo "$as_me:1714: \"$ac_compiler -V </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:1633: \"$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
-+ echo "$as_me:1636: \$? = $ac_status" >&5
- (exit $ac_status); }
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 1721 "configure"
-+#line 1640 "configure"
- #include "confdefs.h"
-
- int
-@@ -1734,13 +1653,13 @@
- # 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:1656: 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
-+if { (eval echo "$as_me:1659: \"$ac_link_default\"") >&5
- (eval $ac_link_default) 2>&5
- ac_status=$?
-- echo "$as_me:1743: \$? = $ac_status" >&5
-+ echo "$as_me:1662: \$? = $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
-@@ -1763,34 +1682,34 @@
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--{ { echo "$as_me:1766: error: C compiler cannot create executables" >&5
-+{ { echo "$as_me:1685: 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:1691: 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:1696: 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:1702: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1786: \$? = $ac_status" >&5
-+ echo "$as_me:1705: \$? = $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:1712: 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,24 +1717,24 @@
- fi
- fi
- fi
--echo "$as_me:1801: result: yes" >&5
-+echo "$as_me:1720: result: yes" >&5
- echo "${ECHO_T}yes" >&6
-
- 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:1727: 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:1729: result: $cross_compiling" >&5
- echo "${ECHO_T}$cross_compiling" >&6
-
--echo "$as_me:1813: checking for executable suffix" >&5
-+echo "$as_me:1732: 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:1734: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:1818: \$? = $ac_status" >&5
-+ echo "$as_me:1737: \$? = $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
-@@ -1831,25 +1750,25 @@
- esac
- done
- else
-- { { echo "$as_me:1834: error: cannot compute EXEEXT: cannot compile and link" >&5
-+ { { echo "$as_me:1753: 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
-+echo "$as_me:1759: result: $ac_cv_exeext" >&5
- echo "${ECHO_T}$ac_cv_exeext" >&6
-
- rm -f conftest.$ac_ext
- EXEEXT=$ac_cv_exeext
- ac_exeext=$EXEEXT
--echo "$as_me:1846: checking for object suffix" >&5
-+echo "$as_me:1765: 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"
-+#line 1771 "configure"
- #include "confdefs.h"
-
- int
-@@ -1861,10 +1780,10 @@
- }
- _ACEOF
- rm -f conftest.o conftest.obj
--if { (eval echo "$as_me:1864: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1783: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1867: \$? = $ac_status" >&5
-+ echo "$as_me:1786: \$? = $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
-@@ -1876,24 +1795,24 @@
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--{ { echo "$as_me:1879: error: cannot compute OBJEXT: cannot compile" >&5
-+{ { echo "$as_me:1798: 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
- fi
--echo "$as_me:1886: result: $ac_cv_objext" >&5
-+echo "$as_me:1805: 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:1809: 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"
-+#line 1815 "configure"
- #include "confdefs.h"
-
- int
-@@ -1908,16 +1827,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1911: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1830: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1914: \$? = $ac_status" >&5
-+ echo "$as_me:1833: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1917: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1836: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1920: \$? = $ac_status" >&5
-+ echo "$as_me:1839: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_compiler_gnu=yes
- else
-@@ -1929,19 +1848,19 @@
- ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
- fi
--echo "$as_me:1932: result: $ac_cv_c_compiler_gnu" >&5
-+echo "$as_me:1851: 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:1857: 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"
-+#line 1863 "configure"
- #include "confdefs.h"
-
- int
-@@ -1953,16 +1872,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1956: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1875: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1959: \$? = $ac_status" >&5
-+ echo "$as_me:1878: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1962: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1881: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1965: \$? = $ac_status" >&5
-+ echo "$as_me:1884: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_prog_cc_g=yes
- else
-@@ -1972,7 +1891,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:1975: result: $ac_cv_prog_cc_g" >&5
-+echo "$as_me:1894: 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
-@@ -1999,16 +1918,16 @@
- #endif
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2002: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1921: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:2005: \$? = $ac_status" >&5
-+ echo "$as_me:1924: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2008: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1927: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2011: \$? = $ac_status" >&5
-+ echo "$as_me:1930: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- for ac_declaration in \
- ''\
-@@ -2020,7 +1939,7 @@
- 'void exit (int);'
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 2023 "configure"
-+#line 1942 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- $ac_declaration
-@@ -2033,16 +1952,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2036: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1955: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:2039: \$? = $ac_status" >&5
-+ echo "$as_me:1958: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2042: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1961: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2045: \$? = $ac_status" >&5
-+ echo "$as_me:1964: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -2052,7 +1971,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 2055 "configure"
-+#line 1974 "configure"
- #include "confdefs.h"
- $ac_declaration
- int
-@@ -2064,16 +1983,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2067: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1986: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:2070: \$? = $ac_status" >&5
-+ echo "$as_me:1989: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2073: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1992: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2076: \$? = $ac_status" >&5
-+ echo "$as_me:1995: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -2103,86 +2022,277 @@
-
- GCC_VERSION=none
- if test "$GCC" = yes ; then
-- echo "$as_me:2106: checking version of $CC" >&5
-+ echo "$as_me:2025: 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/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
-+ 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:2029: result: $GCC_VERSION" >&5
- echo "${ECHO_T}$GCC_VERSION" >&6
- 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
--echo "$as_me:2120: 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
-- CPP=
--fi
--if test -z "$CPP"; then
-- if test "${ac_cv_prog_CPP+set}" = set; then
-+echo "$as_me:2033: 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
-- # Double quotes because CPP needs to be expanded
-- for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-- do
-- ac_preproc_ok=false
--for ac_c_preproc_warn_flag in '' yes
--do
-- # Use a header file that comes with gcc, so configuring glibc
-- # 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 2141 "configure"
-+ ac_cv_prog_cc_stdc=no
-+ac_save_CC=$CC
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 2041 "configure"
- #include "confdefs.h"
--#include <assert.h>
-- Syntax error
--_ACEOF
--if { (eval echo "$as_me:2146: \"$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:2152: \$? = $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
-- :
--else
-- echo "$as_me: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- # Broken: fails on valid input.
--continue
--fi
-+#include <stdarg.h>
-+#include <stdio.h>
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-+struct buf { int x; };
-+FILE * (*rcsopen) (struct buf *, struct stat *, int);
-+static char *e (p, i)
-+ char **p;
-+ int i;
-+{
-+ return p[i];
-+}
-+static char *f (char * (*g) (char **, int), char **p, ...)
-+{
-+ char *s;
-+ va_list v;
-+ va_start (v,p);
-+ s = g (p, va_arg (v,int));
-+ va_end (v);
-+ return s;
-+}
-+int test (int i, double x);
-+struct s1 {int (*f) (int a);};
-+struct s2 {int (*f) (double a);};
-+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-+int argc;
-+char **argv;
-+int
-+main ()
-+{
-+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+# Don't try gcc -ansi; that turns off useful extensions and
-+# breaks some systems' header files.
-+# AIX -qlanglvl=ansi
-+# Ultrix and OSF/1 -std1
-+# HP-UX 10.20 and later -Ae
-+# HP-UX older versions -Aa -D_HPUX_SOURCE
-+# SVR4 -Xc -D__EXTENSIONS__
-+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:2090: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:2093: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:2096: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:2099: \$? = $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
-+fi
-+rm -f conftest.$ac_objext
-+done
-+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:2116: result: none needed" >&5
-+echo "${ECHO_T}none needed" >&6 ;;
-+ *)
-+ echo "$as_me:2119: 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}
-+
-+echo "$as_me:2127: checking \$CC variable" >&5
-+echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6
-+case "$CC" in #(vi
-+*[\ \ ]-[IUD]*)
-+ echo "$as_me:2131: result: broken" >&5
-+echo "${ECHO_T}broken" >&6
-+ { echo "$as_me:2133: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
-+echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;}
-+ # humor him...
-+ cf_flags=`echo "$CC" | sed -e 's/^[^ ]*[ ]//'`
-+ CC=`echo "$CC" | sed -e 's/[ ].*//'`
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_flags
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+ ;;
-+*)
-+ echo "$as_me:2219: 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_compiler_gnu=$ac_cv_c_compiler_gnu
-+ac_main_return=return
-+echo "$as_me:2230: 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
-+ CPP=
-+fi
-+if test -z "$CPP"; then
-+ if test "${ac_cv_prog_CPP+set}" = set; then
-+ echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+ # Double quotes because CPP needs to be expanded
-+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-+ do
-+ ac_preproc_ok=false
-+for ac_c_preproc_warn_flag in '' yes
-+do
-+ # Use a header file that comes with gcc, so configuring glibc
-+ # 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 2251 "configure"
-+#include "confdefs.h"
-+#include <assert.h>
-+ Syntax error
-+_ACEOF
-+if { (eval echo "$as_me:2256: \"$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:2262: \$? = $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
-+ :
-+else
-+ echo "$as_me: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ # Broken: fails on valid input.
-+continue
-+fi
- 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 2175 "configure"
-+#line 2285 "configure"
- #include "confdefs.h"
- #include <ac_nonexistent.h>
- _ACEOF
--if { (eval echo "$as_me:2179: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:2289: \"$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:2185: \$? = $ac_status" >&5
-+ echo "$as_me:2295: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -2219,7 +2329,7 @@
- else
- ac_cv_prog_CPP=$CPP
- fi
--echo "$as_me:2222: result: $CPP" >&5
-+echo "$as_me:2332: result: $CPP" >&5
- echo "${ECHO_T}$CPP" >&6
- ac_preproc_ok=false
- for ac_c_preproc_warn_flag in '' yes
-@@ -2229,18 +2339,18 @@
- # 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 2232 "configure"
-+#line 2342 "configure"
- #include "confdefs.h"
- #include <assert.h>
- Syntax error
- _ACEOF
--if { (eval echo "$as_me:2237: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:2347: \"$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:2243: \$? = $ac_status" >&5
-+ echo "$as_me:2353: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -2263,17 +2373,17 @@
- # OK, works on sane cases. Now check whether non-existent headers
- # can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
--#line 2266 "configure"
-+#line 2376 "configure"
- #include "confdefs.h"
- #include <ac_nonexistent.h>
- _ACEOF
--if { (eval echo "$as_me:2270: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:2380: \"$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:2276: \$? = $ac_status" >&5
-+ echo "$as_me:2386: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -2301,7 +2411,7 @@
- if $ac_preproc_ok; then
- :
- else
-- { { echo "$as_me:2304: error: C preprocessor \"$CPP\" fails sanity check" >&5
-+ { { echo "$as_me:2414: error: C preprocessor \"$CPP\" fails sanity check" >&5
- echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -2314,14 +2424,14 @@
- ac_main_return=return
-
- if test $ac_cv_c_compiler_gnu = yes; then
-- echo "$as_me:2317: checking whether $CC needs -traditional" >&5
-+ echo "$as_me:2427: 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 2324 "configure"
-+#line 2434 "configure"
- #include "confdefs.h"
- #include <sgtty.h>
- int Autoconf = TIOCGETP;
-@@ -2336,7 +2446,7 @@
-
- if test $ac_cv_prog_gcc_traditional = no; then
- cat >conftest.$ac_ext <<_ACEOF
--#line 2339 "configure"
-+#line 2449 "configure"
- #include "confdefs.h"
- #include <termio.h>
- int Autoconf = TCGETA;
-@@ -2349,14 +2459,14 @@
-
- fi
- fi
--echo "$as_me:2352: result: $ac_cv_prog_gcc_traditional" >&5
-+echo "$as_me:2462: 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:2359: checking whether $CC understands -c and -o together" >&5
-+echo "$as_me:2469: 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
-@@ -2372,15 +2482,15 @@
- # 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 -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
--if { (eval echo "$as_me:2375: \"$ac_try\"") >&5
-+if { (eval echo "$as_me:2485: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2378: \$? = $ac_status" >&5
-+ echo "$as_me:2488: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- test -f conftest2.$ac_objext && { (eval echo "$as_me:2380: \"$ac_try\"") >&5
-+ test -f conftest2.$ac_objext && { (eval echo "$as_me:2490: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2383: \$? = $ac_status" >&5
-+ echo "$as_me:2493: \$? = $ac_status" >&5
- (exit $ac_status); };
- then
- eval cf_cv_prog_CC_c_o=yes
-@@ -2391,349 +2501,55 @@
-
- fi
- if test $cf_cv_prog_CC_c_o = yes; then
-- echo "$as_me:2394: result: yes" >&5
-+ echo "$as_me:2504: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- else
-- echo "$as_me:2397: result: no" >&5
-+ echo "$as_me:2507: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
--echo "$as_me:2401: checking for POSIXized ISC" >&5
--echo $ECHO_N "checking for POSIXized ISC... $ECHO_C" >&6
--if test -d /etc/conf/kconfig.d &&
-- grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
--then
-- echo "$as_me:2406: result: yes" >&5
--echo "${ECHO_T}yes" >&6
-- ISC=yes # If later tests want to check for ISC.
-+if test "$cross_compiling" = yes ; then
-+ LDCONFIG=:
-+else
-+case "$cf_cv_system_name" in #(vi
-+dragonfly*|mirbsd*|freebsd*) #(vi
-+ test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R"
-+ ;;
-+*) 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:2521: 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
-+else
-+ case $LDCONFIG in
-+ [\\/]* | ?:[\\/]*)
-+ ac_cv_path_LDCONFIG="$LDCONFIG" # Let the user override the test with a path.
-+ ;;
-+ *)
-+ ac_save_IFS=$IFS; IFS=$ac_path_separator
-+ac_dummy="$LDPATH"
-+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_LDCONFIG="$ac_dir/$ac_word"
-+ echo "$as_me:2538: found $ac_dir/$ac_word" >&5
-+ break
-+fi
-+done
-
--cat >>confdefs.h <<\EOF
--#define _POSIX_SOURCE 1
--EOF
-+ ;;
-+esac
-+fi
-+LDCONFIG=$ac_cv_path_LDCONFIG
-
-- if test "$GCC" = yes; then
-- CC="$CC -posix"
-- else
-- CC="$CC -Xp"
-- fi
-+if test -n "$LDCONFIG"; then
-+ echo "$as_me:2549: result: $LDCONFIG" >&5
-+echo "${ECHO_T}$LDCONFIG" >&6
- else
-- echo "$as_me:2420: result: no" >&5
--echo "${ECHO_T}no" >&6
-- ISC=
--fi
--
--echo "$as_me:2425: checking for ${CC:-cc} option to accept ANSI C" >&5
--echo $ECHO_N "checking for ${CC:-cc} option to accept ANSI C... $ECHO_C" >&6
--if test "${cf_cv_ansi_cc+set}" = set; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
--else
--
--cf_cv_ansi_cc=no
--cf_save_CFLAGS="$CFLAGS"
--cf_save_CPPFLAGS="$CPPFLAGS"
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX -Aa -D_HPUX_SOURCE
--# SVR4 -Xc
--# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes)
--for cf_arg in "-DCC_HAS_PROTOS" \
-- "" \
-- -qlanglvl=ansi \
-- -std1 \
-- -Ae \
-- "-Aa -D_HPUX_SOURCE" \
-- -Xc
--do
--
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
--
--for cf_add_cflags in $cf_arg
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
--
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
--
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
--
--if test -n "$cf_new_extra_cppflags" ; then
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
--fi
--
-- cat >conftest.$ac_ext <<_ACEOF
--#line 2529 "configure"
--#include "confdefs.h"
--
--#ifndef CC_HAS_PROTOS
--#if !defined(__STDC__) || (__STDC__ != 1)
--choke me
--#endif
--#endif
--
--int
--main ()
--{
--
-- int test (int i, double x);
-- struct s1 {int (*f) (int a);};
-- struct s2 {int (*f) (double a);};
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2550: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:2553: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2556: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:2559: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- cf_cv_ansi_cc="$cf_arg"; break
--else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--done
--CFLAGS="$cf_save_CFLAGS"
--CPPFLAGS="$cf_save_CPPFLAGS"
--
--fi
--echo "$as_me:2572: result: $cf_cv_ansi_cc" >&5
--echo "${ECHO_T}$cf_cv_ansi_cc" >&6
--
--if test "$cf_cv_ansi_cc" != "no"; then
--if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
--
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
--
--for cf_add_cflags in $cf_cv_ansi_cc
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
--
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
--
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
--
--if test -n "$cf_new_extra_cppflags" ; then
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
--fi
--
--else
-- cat >>confdefs.h <<\EOF
--#define CC_HAS_PROTOS 1
--EOF
--
--fi
--fi
--
--if test "$cf_cv_ansi_cc" = "no"; then
-- { { echo "$as_me:2665: error: Your compiler does not appear to recognize prototypes.
--You have the following choices:
-- a. adjust your compiler options
-- b. get an up-to-date compiler
-- c. use a wrapper such as unproto" >&5
--echo "$as_me: error: Your compiler does not appear to recognize prototypes.
--You have the following choices:
-- a. adjust your compiler options
-- b. get an up-to-date compiler
-- c. use a wrapper such as unproto" >&2;}
-- { (exit 1); exit 1; }; }
--fi
--
--case $cf_cv_system_name in
--os2*)
-- CFLAGS="$CFLAGS -Zmt"
-- CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__"
-- CXXFLAGS="$CXXFLAGS -Zmt"
-- # autoconf's macro sets -Zexe and suffix both, which conflict:w
-- LDFLAGS="$LDFLAGS -Zmt -Zcrtdll"
-- ac_cv_exeext=.exe
-- ;;
--esac
--
--PROG_EXT="$EXEEXT"
--
--test -n "$PROG_EXT" && cat >>confdefs.h <<EOF
--#define PROG_EXT "$PROG_EXT"
--EOF
--
--if test "$cross_compiling" = yes ; then
-- LDCONFIG=:
--else
--case "$cf_cv_system_name" in #(vi
--dragonfly*|freebsd*) #(vi
-- test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R"
-- ;;
--*) 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:2705: 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
--else
-- case $LDCONFIG in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_LDCONFIG="$LDCONFIG" # Let the user override the test with a path.
-- ;;
-- *)
-- ac_save_IFS=$IFS; IFS=$ac_path_separator
--ac_dummy="$LDPATH"
--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_LDCONFIG="$ac_dir/$ac_word"
-- echo "$as_me:2722: found $ac_dir/$ac_word" >&5
-- break
--fi
--done
--
-- ;;
--esac
--fi
--LDCONFIG=$ac_cv_path_LDCONFIG
--
--if test -n "$LDCONFIG"; then
-- echo "$as_me:2733: result: $LDCONFIG" >&5
--echo "${ECHO_T}$LDCONFIG" >&6
--else
-- echo "$as_me:2736: result: no" >&5
-+ echo "$as_me:2552: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -2741,7 +2557,7 @@
- esac
- fi
-
--echo "$as_me:2744: checking if you want to ensure bool is consistent with C++" >&5
-+echo "$as_me:2560: 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.
-@@ -2751,7 +2567,7 @@
- else
- cf_with_cxx=yes
- fi;
--echo "$as_me:2754: result: $cf_with_cxx" >&5
-+echo "$as_me:2570: result: $cf_with_cxx" >&5
- echo "${ECHO_T}$cf_with_cxx" >&6
- if test "X$cf_with_cxx" = Xno ; then
- CXX=""
-@@ -2769,7 +2585,7 @@
- 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:2772: checking for $ac_word" >&5
-+echo "$as_me:2588: 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
-@@ -2784,7 +2600,7 @@
- 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:2787: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2603: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2792,10 +2608,10 @@
- fi
- CXX=$ac_cv_prog_CXX
- if test -n "$CXX"; then
-- echo "$as_me:2795: result: $CXX" >&5
-+ echo "$as_me:2611: result: $CXX" >&5
- echo "${ECHO_T}$CXX" >&6
- else
-- echo "$as_me:2798: result: no" >&5
-+ echo "$as_me:2614: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -2808,7 +2624,7 @@
- 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:2811: checking for $ac_word" >&5
-+echo "$as_me:2627: 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
-@@ -2823,7 +2639,7 @@
- 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:2826: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2642: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2831,10 +2647,10 @@
- fi
- ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
- if test -n "$ac_ct_CXX"; then
-- echo "$as_me:2834: result: $ac_ct_CXX" >&5
-+ echo "$as_me:2650: result: $ac_ct_CXX" >&5
- echo "${ECHO_T}$ac_ct_CXX" >&6
- else
-- echo "$as_me:2837: result: no" >&5
-+ echo "$as_me:2653: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -2846,32 +2662,32 @@
- fi
-
- # Provide some information about the compiler.
--echo "$as_me:2849:" \
-+echo "$as_me:2665:" \
- "checking for C++ compiler version" >&5
- ac_compiler=`set X $ac_compile; echo $2`
--{ (eval echo "$as_me:2852: \"$ac_compiler --version </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:2668: \"$ac_compiler --version </dev/null >&5\"") >&5
- (eval $ac_compiler --version </dev/null >&5) 2>&5
- ac_status=$?
-- echo "$as_me:2855: \$? = $ac_status" >&5
-+ echo "$as_me:2671: \$? = $ac_status" >&5
- (exit $ac_status); }
--{ (eval echo "$as_me:2857: \"$ac_compiler -v </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:2673: \"$ac_compiler -v </dev/null >&5\"") >&5
- (eval $ac_compiler -v </dev/null >&5) 2>&5
- ac_status=$?
-- echo "$as_me:2860: \$? = $ac_status" >&5
-+ echo "$as_me:2676: \$? = $ac_status" >&5
- (exit $ac_status); }
--{ (eval echo "$as_me:2862: \"$ac_compiler -V </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:2678: \"$ac_compiler -V </dev/null >&5\"") >&5
- (eval $ac_compiler -V </dev/null >&5) 2>&5
- ac_status=$?
-- echo "$as_me:2865: \$? = $ac_status" >&5
-+ echo "$as_me:2681: \$? = $ac_status" >&5
- (exit $ac_status); }
-
--echo "$as_me:2868: checking whether we are using the GNU C++ compiler" >&5
-+echo "$as_me:2684: 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 2874 "configure"
-+#line 2690 "configure"
- #include "confdefs.h"
-
- int
-@@ -2886,16 +2702,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2889: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:2705: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:2892: \$? = $ac_status" >&5
-+ echo "$as_me:2708: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2895: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:2711: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2898: \$? = $ac_status" >&5
-+ echo "$as_me:2714: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_compiler_gnu=yes
- else
-@@ -2907,19 +2723,19 @@
- ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
-
- fi
--echo "$as_me:2910: result: $ac_cv_cxx_compiler_gnu" >&5
-+echo "$as_me:2726: 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:2916: checking whether $CXX accepts -g" >&5
-+echo "$as_me:2732: 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 2922 "configure"
-+#line 2738 "configure"
- #include "confdefs.h"
-
- int
-@@ -2931,16 +2747,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2934: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:2750: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:2937: \$? = $ac_status" >&5
-+ echo "$as_me:2753: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2940: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:2756: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2943: \$? = $ac_status" >&5
-+ echo "$as_me:2759: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_prog_cxx_g=yes
- else
-@@ -2950,7 +2766,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:2953: result: $ac_cv_prog_cxx_g" >&5
-+echo "$as_me:2769: 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
-@@ -2977,7 +2793,7 @@
- 'void exit (int);'
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 2980 "configure"
-+#line 2796 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- $ac_declaration
-@@ -2990,16 +2806,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2993: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:2809: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:2996: \$? = $ac_status" >&5
-+ echo "$as_me:2812: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2999: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:2815: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3002: \$? = $ac_status" >&5
-+ echo "$as_me:2818: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -3009,7 +2825,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 3012 "configure"
-+#line 2828 "configure"
- #include "confdefs.h"
- $ac_declaration
- int
-@@ -3021,16 +2837,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3024: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:2840: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3027: \$? = $ac_status" >&5
-+ echo "$as_me:2843: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3030: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:2846: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3033: \$? = $ac_status" >&5
-+ echo "$as_me:2849: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -3053,18 +2869,90 @@
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- ac_main_return=return
-
-- # autoconf 2.5x removed the error - by hardcoding it to g++.
-- 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:3060: 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
--else
-- case $CXX in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_CXX="$CXX" # Let the user override the test with a path.
-+ 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
-+
-+ 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:2883: 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 2891 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <stdio.h>
-+
-+int
-+main ()
-+{
-+
-+ printf("Hello world!\n")
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:2908: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:2911: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:2914: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:2917: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ cf_cxx_works=yes
-+else
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+cf_cxx_works=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS="$save_CPPFLAGS"
-+
-+ echo "$as_me:2928: result: $cf_cxx_works" >&5
-+echo "${ECHO_T}$cf_cxx_works" >&6
-+ if test "x$cf_cxx_works" = xno
-+ then
-+ { echo "$as_me:2932: 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_compiler_gnu=$ac_cv_c_compiler_gnu
-+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:2948: 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
-+else
-+ case $CXX in
-+ [\\/]* | ?:[\\/]*)
-+ ac_cv_path_CXX="$CXX" # Let the user override the test with a path.
- ;;
- *)
- ac_save_IFS=$IFS; IFS=$ac_path_separator
-@@ -3074,7 +2962,7 @@
- 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:3077: found $ac_dir/$ac_word" >&5
-+ echo "$as_me:2965: found $ac_dir/$ac_word" >&5
- break
- fi
- done
-@@ -3085,28 +2973,30 @@
- CXX=$ac_cv_path_CXX
-
- if test -n "$CXX"; then
-- echo "$as_me:3088: result: $CXX" >&5
-+ echo "$as_me:2976: result: $CXX" >&5
- echo "${ECHO_T}$CXX" >&6
- else
-- echo "$as_me:3091: result: no" >&5
-+ echo "$as_me:2979: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
- fi
-- if test "$CXX" = "g++" ; then
-- { echo "$as_me:3097: WARNING: ignoring hardcoded g++" >&5
--echo "$as_me: WARNING: ignoring hardcoded g++" >&2;}
-+ case "x$CXX" in #(vi
-+ x|xg++)
-+ { echo "$as_me:2986: 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="";
-- fi
-+ ;;
-+ esac
- fi
-
- GXX_VERSION=none
- if test "$GXX" = yes; then
-- echo "$as_me:3105: checking version of g++" >&5
--echo $ECHO_N "checking version of g++... $ECHO_C" >&6
-+ echo "$as_me:2995: 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.].*//'`"
- test -z "$GXX_VERSION" && GXX_VERSION=unknown
-- echo "$as_me:3109: result: $GXX_VERSION" >&5
-+ echo "$as_me:2999: result: $GXX_VERSION" >&5
- echo "${ECHO_T}$GXX_VERSION" >&6
- fi
-
-@@ -3114,12 +3004,12 @@
- 1*|2.[0-6]*)
- # GXX=""; CXX=""; ac_cv_prog_gxx=no
- # cf_cxx_library=no
-- { echo "$as_me:3117: WARNING: templates do not work" >&5
-+ { echo "$as_me:3007: WARNING: templates do not work" >&5
- echo "$as_me: WARNING: templates do not work" >&2;}
- ;;
- esac
-
--echo "$as_me:3122: checking if you want to build C++ binding and demo" >&5
-+echo "$as_me:3012: 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.
-@@ -3129,23 +3019,28 @@
- else
- cf_with_cxx_binding=$cf_with_cxx
- fi;
--echo "$as_me:3132: result: $cf_with_cxx_binding" >&5
-+echo "$as_me:3022: result: $cf_with_cxx_binding" >&5
- echo "${ECHO_T}$cf_with_cxx_binding" >&6
-
--echo "$as_me:3135: checking if you want to build with Ada95" >&5
-+echo "$as_me:3025: checking if you want to build with Ada95" >&5
- echo $ECHO_N "checking if you want to build with Ada95... $ECHO_C" >&6
-+echo "$as_me:3027: result: $cf_with_ada" >&5
-+echo "${ECHO_T}$cf_with_ada" >&6
-
--# Check whether --with-ada or --without-ada was given.
--if test "${with_ada+set}" = set; then
-- withval="$with_ada"
-- cf_with_ada=$withval
-+echo "$as_me:3030: 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.
-+if test "${enable_db_install+set}" = set; then
-+ enableval="$enable_db_install"
-+ cf_with_db_install=$enableval
- else
-- cf_with_ada=yes
-+ cf_with_db_install=yes
- fi;
--echo "$as_me:3145: result: $cf_with_ada" >&5
--echo "${ECHO_T}$cf_with_ada" >&6
-+echo "$as_me:3040: result: $cf_with_db_install" >&5
-+echo "${ECHO_T}$cf_with_db_install" >&6
-
--echo "$as_me:3148: checking if you want to install manpages" >&5
-+echo "$as_me:3043: 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.
-@@ -3155,10 +3050,10 @@
- else
- cf_with_manpages=yes
- fi;
--echo "$as_me:3158: result: $cf_with_manpages" >&5
-+echo "$as_me:3053: result: $cf_with_manpages" >&5
- echo "${ECHO_T}$cf_with_manpages" >&6
-
--echo "$as_me:3161: checking if you want to build programs such as tic" >&5
-+echo "$as_me:3056: 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.
-@@ -3168,10 +3063,10 @@
- else
- cf_with_progs=yes
- fi;
--echo "$as_me:3171: result: $cf_with_progs" >&5
-+echo "$as_me:3066: result: $cf_with_progs" >&5
- echo "${ECHO_T}$cf_with_progs" >&6
-
--echo "$as_me:3174: checking if you want to build test-programs" >&5
-+echo "$as_me:3069: 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.
-@@ -3181,10 +3076,10 @@
- else
- cf_with_tests=yes
- fi;
--echo "$as_me:3184: result: $cf_with_tests" >&5
-+echo "$as_me:3079: result: $cf_with_tests" >&5
- echo "${ECHO_T}$cf_with_tests" >&6
-
--echo "$as_me:3187: checking if you wish to install curses.h" >&5
-+echo "$as_me:3082: 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.
-@@ -3194,7 +3089,7 @@
- else
- with_curses_h=yes
- fi;
--echo "$as_me:3197: result: $with_curses_h" >&5
-+echo "$as_me:3092: result: $with_curses_h" >&5
- echo "${ECHO_T}$with_curses_h" >&6
-
- modules_to_build="ncurses"
-@@ -3220,7 +3115,7 @@
- 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:3223: checking for $ac_word" >&5
-+echo "$as_me:3118: 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
-@@ -3235,7 +3130,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_AWK="$ac_prog"
--echo "$as_me:3238: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3133: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3243,21 +3138,21 @@
- fi
- AWK=$ac_cv_prog_AWK
- if test -n "$AWK"; then
-- echo "$as_me:3246: result: $AWK" >&5
-+ echo "$as_me:3141: result: $AWK" >&5
- echo "${ECHO_T}$AWK" >&6
- else
-- echo "$as_me:3249: result: no" >&5
-+ echo "$as_me:3144: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
- test -n "$AWK" && break
- done
-
--test -z "$AWK" && { { echo "$as_me:3256: error: No awk program found" >&5
-+test -z "$AWK" && { { echo "$as_me:3151: error: No awk program found" >&5
- echo "$as_me: error: No awk program found" >&2;}
- { (exit 1); exit 1; }; }
-
--echo "$as_me:3260: checking for egrep" >&5
-+echo "$as_me:3155: 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
-@@ -3267,11 +3162,11 @@
- else ac_cv_prog_egrep='egrep'
- fi
- fi
--echo "$as_me:3270: result: $ac_cv_prog_egrep" >&5
-+echo "$as_me:3165: 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:3274: error: No egrep program found" >&5
-+test -z "$EGREP" && { { echo "$as_me:3169: error: No egrep program found" >&5
- echo "$as_me: error: No egrep program found" >&2;}
- { (exit 1); exit 1; }; }
-
-@@ -3287,7 +3182,7 @@
- # 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:3290: checking for a BSD compatible install" >&5
-+echo "$as_me:3185: 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
-@@ -3336,7 +3231,7 @@
- INSTALL=$ac_install_sh
- fi
- fi
--echo "$as_me:3339: result: $INSTALL" >&5
-+echo "$as_me:3234: result: $INSTALL" >&5
- echo "${ECHO_T}$INSTALL" >&6
-
- # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-@@ -3361,7 +3256,7 @@
- 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:3364: checking for $ac_word" >&5
-+echo "$as_me:3259: 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
-@@ -3376,7 +3271,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_LINT="$ac_prog"
--echo "$as_me:3379: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3274: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3384,28 +3279,28 @@
- fi
- LINT=$ac_cv_prog_LINT
- if test -n "$LINT"; then
-- echo "$as_me:3387: result: $LINT" >&5
-+ echo "$as_me:3282: result: $LINT" >&5
- echo "${ECHO_T}$LINT" >&6
- else
-- echo "$as_me:3390: result: no" >&5
-+ echo "$as_me:3285: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
- test -n "$LINT" && break
- done
-
--echo "$as_me:3397: checking whether ln -s works" >&5
-+echo "$as_me:3292: 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:3401: result: yes" >&5
-+ echo "$as_me:3296: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- else
-- echo "$as_me:3404: result: no, using $LN_S" >&5
-+ echo "$as_me:3299: result: no, using $LN_S" >&5
- echo "${ECHO_T}no, using $LN_S" >&6
- fi
-
--echo "$as_me:3408: checking if $LN_S -f options work" >&5
-+echo "$as_me:3303: 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
-@@ -3417,12 +3312,12 @@
- cf_prog_ln_sf=no
- fi
- rm -f conf$$.dst conf$$src
--echo "$as_me:3420: result: $cf_prog_ln_sf" >&5
-+echo "$as_me:3315: 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:3425: checking for long file names" >&5
-+echo "$as_me:3320: 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
-@@ -3461,7 +3356,7 @@
- rm -rf $ac_xdir 2>/dev/null
- done
- fi
--echo "$as_me:3464: result: $ac_cv_sys_long_file_names" >&5
-+echo "$as_me:3359: 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
-
-@@ -3473,7 +3368,7 @@
-
- # if we find pkg-config, check if we should install the ".pc" files.
-
--echo "$as_me:3476: checking if you want to use pkg-config" >&5
-+echo "$as_me:3371: 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.
-@@ -3483,7 +3378,7 @@
- else
- cf_pkg_config=yes
- fi;
--echo "$as_me:3486: result: $cf_pkg_config" >&5
-+echo "$as_me:3381: result: $cf_pkg_config" >&5
- echo "${ECHO_T}$cf_pkg_config" >&6
-
- case $cf_pkg_config in #(vi
-@@ -3491,10 +3386,11 @@
- PKG_CONFIG=none
- ;;
- yes) #(vi
-- if test -n "$ac_tool_prefix"; then
-+
-+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:3497: checking for $ac_word" >&5
-+echo "$as_me:3393: 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
-@@ -3511,7 +3407,7 @@
- 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:3514: found $ac_dir/$ac_word" >&5
-+ echo "$as_me:3410: found $ac_dir/$ac_word" >&5
- break
- fi
- done
-@@ -3522,10 +3418,10 @@
- PKG_CONFIG=$ac_cv_path_PKG_CONFIG
-
- if test -n "$PKG_CONFIG"; then
-- echo "$as_me:3525: result: $PKG_CONFIG" >&5
-+ echo "$as_me:3421: result: $PKG_CONFIG" >&5
- echo "${ECHO_T}$PKG_CONFIG" >&6
- else
-- echo "$as_me:3528: result: no" >&5
-+ echo "$as_me:3424: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3534,7 +3430,7 @@
- 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:3537: checking for $ac_word" >&5
-+echo "$as_me:3433: 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
-@@ -3551,7 +3447,7 @@
- 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:3554: found $ac_dir/$ac_word" >&5
-+ echo "$as_me:3450: found $ac_dir/$ac_word" >&5
- break
- fi
- done
-@@ -3563,10 +3459,10 @@
- ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
-
- if test -n "$ac_pt_PKG_CONFIG"; then
-- echo "$as_me:3566: result: $ac_pt_PKG_CONFIG" >&5
-+ echo "$as_me:3462: result: $ac_pt_PKG_CONFIG" >&5
- echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6
- else
-- echo "$as_me:3569: result: no" >&5
-+ echo "$as_me:3465: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3597,7 +3493,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval PKG_CONFIG="$PKG_CONFIG"
- case ".$PKG_CONFIG" in #(vi
- .NONE/*)
-@@ -3609,7 +3505,7 @@
- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:3612: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
-+ { { echo "$as_me:3508: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
- echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
-@@ -3617,16 +3513,51 @@
-
- fi
-
--if test "$PKG_CONFIG" != no ; then
-- echo "$as_me:3621: 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
-+if test "$PKG_CONFIG" != none ; then
-+ echo "$as_me:3517: checking for $PKG_CONFIG library directory" >&5
-+echo $ECHO_N "checking for $PKG_CONFIG library directory... $ECHO_C" >&6
-
-- # Leave this as something that can be overridden in the environment.
-- if test -z "$PKG_CONFIG_LIBDIR" ; then
-- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`/lib/pkgconfig
-- fi
-- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'`
-- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
-+# 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
-+else
-+ PKG_CONFIG_LIBDIR=yes
-+fi;
-+
-+ case x$PKG_CONFIG_LIBDIR in #(vi
-+ x/*) #(vi
-+ ;;
-+ xyes) #(vi
-+ # look for the library directory using the same prefix as the executable
-+ cf_path=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`
-+ case x`(arch) 2>/dev/null` in #(vi
-+ *64) #(vi
-+ for cf_config in $cf_path/share $cf_path/lib64 $cf_path/lib32 $cf_path/lib
-+ do
-+ if test -d $cf_config/pkgconfig
-+ then
-+ PKG_CONFIG_LIBDIR=$cf_config/pkgconfig
-+ break
-+ fi
-+ done
-+ ;;
-+ *)
-+ PKG_CONFIG_LIBDIR=$cf_path/lib/pkgconfig
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ ;;
-+ esac
-+
-+ echo "$as_me:3554: result: $PKG_CONFIG_LIBDIR" >&5
-+echo "${ECHO_T}$PKG_CONFIG_LIBDIR" >&6
-+fi
-+
-+if test "$PKG_CONFIG" != none ; then
-+ echo "$as_me:3559: 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
-
- # Check whether --enable-pc-files or --disable-pc-files was given.
- if test "${enable_pc_files+set}" = set; then
-@@ -3635,18 +3566,48 @@
- else
- enable_pc_files=no
- fi;
-- echo "$as_me:3638: result: $enable_pc_files" >&5
-+ echo "$as_me:3569: result: $enable_pc_files" >&5
- echo "${ECHO_T}$enable_pc_files" >&6
-- else
-- echo "$as_me:3641: result: no" >&5
--echo "${ECHO_T}no" >&6
-- { echo "$as_me:3643: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&5
--echo "$as_me: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&2;}
-- enable_pc_files=no
-+ if test "$enable_pc_files" != no
-+ then
-+
-+if test "x$prefix" != xNONE; then
-+ cf_path_syntax="$prefix"
-+else
-+ cf_path_syntax="$ac_default_prefix"
-+fi
-+
-+case ".$PKG_CONFIG_LIBDIR" in #(vi
-+.\$\(*\)*|.\'*\'*) #(vi
-+ ;;
-+..|./*|.\\*) #(vi
-+ ;;
-+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
-+ ;;
-+.\${*prefix}*|.\${*dir}*) #(vi
-+ eval PKG_CONFIG_LIBDIR="$PKG_CONFIG_LIBDIR"
-+ case ".$PKG_CONFIG_LIBDIR" in #(vi
-+ .NONE/*)
-+ PKG_CONFIG_LIBDIR=`echo $PKG_CONFIG_LIBDIR | sed -e s%NONE%$cf_path_syntax%`
-+ ;;
-+ esac
-+ ;; #(vi
-+.no|.NONE/*)
-+ PKG_CONFIG_LIBDIR=`echo $PKG_CONFIG_LIBDIR | sed -e s%NONE%$cf_path_syntax%`
-+ ;;
-+*)
-+ { { echo "$as_me:3599: 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; }; }
-+ ;;
-+esac
-+
- fi
-+else
-+ enable_pc_files=no
- fi
-
--echo "$as_me:3649: checking if we should assume mixed-case filenames" >&5
-+echo "$as_me:3610: 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.
-@@ -3656,11 +3617,11 @@
- else
- enable_mixedcase=auto
- fi;
--echo "$as_me:3659: result: $enable_mixedcase" >&5
-+echo "$as_me:3620: result: $enable_mixedcase" >&5
- echo "${ECHO_T}$enable_mixedcase" >&6
- if test "$enable_mixedcase" = "auto" ; then
-
--echo "$as_me:3663: checking if filesystem supports mixed-case filenames" >&5
-+echo "$as_me:3624: 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
-@@ -3668,7 +3629,7 @@
-
- if test "$cross_compiling" = yes ; then
- case $target_alias in #(vi
-- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
-+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi
- cf_cv_mixedcase=no
- ;;
- *)
-@@ -3687,16 +3648,18 @@
- fi
-
- fi
--echo "$as_me:3690: result: $cf_cv_mixedcase" >&5
-+echo "$as_me:3651: result: $cf_cv_mixedcase" >&5
- echo "${ECHO_T}$cf_cv_mixedcase" >&6
--test "$cf_cv_mixedcase" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_mixedcase" = yes &&
-+cat >>confdefs.h <<\EOF
- #define MIXEDCASE_FILENAMES 1
- EOF
-
- else
- cf_cv_mixedcase=$enable_mixedcase
-- if test "$enable_mixedcase" = "yes" ; then
-- cat >>confdefs.h <<\EOF
-+ if test "x$enable_mixedcase" = "xyes" ; then
-+
-+cat >>confdefs.h <<\EOF
- #define MIXEDCASE_FILENAMES 1
- EOF
-
-@@ -3704,7 +3667,7 @@
- fi
-
- # do this after mixed-case option (tags/TAGS is not as important as tic).
--echo "$as_me:3707: checking whether ${MAKE-make} sets \${MAKE}" >&5
-+echo "$as_me:3670: 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
-@@ -3724,11 +3687,11 @@
- rm -f conftest.make
- fi
- if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
-- echo "$as_me:3727: result: yes" >&5
-+ echo "$as_me:3690: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- SET_MAKE=
- else
-- echo "$as_me:3731: result: no" >&5
-+ echo "$as_me:3694: result: no" >&5
- echo "${ECHO_T}no" >&6
- SET_MAKE="MAKE=${MAKE-make}"
- fi
-@@ -3737,7 +3700,7 @@
- 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:3740: checking for $ac_word" >&5
-+echo "$as_me:3703: 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
-@@ -3752,7 +3715,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_CTAGS="$ac_prog"
--echo "$as_me:3755: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3718: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3760,10 +3723,10 @@
- fi
- CTAGS=$ac_cv_prog_CTAGS
- if test -n "$CTAGS"; then
-- echo "$as_me:3763: result: $CTAGS" >&5
-+ echo "$as_me:3726: result: $CTAGS" >&5
- echo "${ECHO_T}$CTAGS" >&6
- else
-- echo "$as_me:3766: result: no" >&5
-+ echo "$as_me:3729: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3774,7 +3737,7 @@
- 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:3777: checking for $ac_word" >&5
-+echo "$as_me:3740: 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
-@@ -3789,7 +3752,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ETAGS="$ac_prog"
--echo "$as_me:3792: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3755: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3797,10 +3760,10 @@
- fi
- ETAGS=$ac_cv_prog_ETAGS
- if test -n "$ETAGS"; then
-- echo "$as_me:3800: result: $ETAGS" >&5
-+ echo "$as_me:3763: result: $ETAGS" >&5
- echo "${ECHO_T}$ETAGS" >&6
- else
-- echo "$as_me:3803: result: no" >&5
-+ echo "$as_me:3766: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3809,7 +3772,7 @@
-
- # 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:3812: checking for $ac_word" >&5
-+echo "$as_me:3775: 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
-@@ -3824,7 +3787,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_MAKE_LOWER_TAGS="yes"
--echo "$as_me:3827: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3790: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3833,17 +3796,17 @@
- fi
- MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS
- if test -n "$MAKE_LOWER_TAGS"; then
-- echo "$as_me:3836: result: $MAKE_LOWER_TAGS" >&5
-+ echo "$as_me:3799: result: $MAKE_LOWER_TAGS" >&5
- echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6
- else
-- echo "$as_me:3839: result: no" >&5
-+ echo "$as_me:3802: 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:3846: checking for $ac_word" >&5
-+echo "$as_me:3809: 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
-@@ -3858,7 +3821,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_MAKE_UPPER_TAGS="yes"
--echo "$as_me:3861: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3824: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3867,10 +3830,10 @@
- fi
- MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS
- if test -n "$MAKE_UPPER_TAGS"; then
-- echo "$as_me:3870: result: $MAKE_UPPER_TAGS" >&5
-+ echo "$as_me:3833: result: $MAKE_UPPER_TAGS" >&5
- echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6
- else
-- echo "$as_me:3873: result: no" >&5
-+ echo "$as_me:3836: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3890,7 +3853,7 @@
- MAKE_LOWER_TAGS="#"
- fi
-
--echo "$as_me:3893: checking for makeflags variable" >&5
-+echo "$as_me:3856: 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
-@@ -3906,7 +3869,7 @@
- CF_EOF
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | fgrep -v "ing directory" | sed -e 's,[ ]*$,,'`
- case "$cf_result" in
-- .*k)
-+ .*k|.*kw)
- cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`
- case "$cf_result" in
- .*CC=*) cf_cv_makeflags=
-@@ -3924,13 +3887,13 @@
- rm -f cf_makeflags.tmp
-
- fi
--echo "$as_me:3927: result: $cf_cv_makeflags" >&5
-+echo "$as_me:3890: 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:3933: checking for $ac_word" >&5
-+echo "$as_me:3896: 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
-@@ -3945,7 +3908,7 @@
- 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:3948: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3911: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3953,10 +3916,10 @@
- fi
- RANLIB=$ac_cv_prog_RANLIB
- if test -n "$RANLIB"; then
-- echo "$as_me:3956: result: $RANLIB" >&5
-+ echo "$as_me:3919: result: $RANLIB" >&5
- echo "${ECHO_T}$RANLIB" >&6
- else
-- echo "$as_me:3959: result: no" >&5
-+ echo "$as_me:3922: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -3965,7 +3928,7 @@
- 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:3968: checking for $ac_word" >&5
-+echo "$as_me:3931: 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
-@@ -3980,7 +3943,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_RANLIB="ranlib"
--echo "$as_me:3983: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3946: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -3989,10 +3952,10 @@
- fi
- ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
- if test -n "$ac_ct_RANLIB"; then
-- echo "$as_me:3992: result: $ac_ct_RANLIB" >&5
-+ echo "$as_me:3955: result: $ac_ct_RANLIB" >&5
- echo "${ECHO_T}$ac_ct_RANLIB" >&6
- else
-- echo "$as_me:3995: result: no" >&5
-+ echo "$as_me:3958: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -4004,7 +3967,7 @@
- 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:4007: checking for $ac_word" >&5
-+echo "$as_me:3970: 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
-@@ -4019,7 +3982,7 @@
- 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:4022: found $ac_dir/$ac_word" >&5
-+echo "$as_me:3985: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -4027,10 +3990,10 @@
- fi
- LD=$ac_cv_prog_LD
- if test -n "$LD"; then
-- echo "$as_me:4030: result: $LD" >&5
-+ echo "$as_me:3993: result: $LD" >&5
- echo "${ECHO_T}$LD" >&6
- else
-- echo "$as_me:4033: result: no" >&5
-+ echo "$as_me:3996: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -4039,7 +4002,7 @@
- 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:4042: checking for $ac_word" >&5
-+echo "$as_me:4005: 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
-@@ -4054,7 +4017,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_LD="ld"
--echo "$as_me:4057: found $ac_dir/$ac_word" >&5
-+echo "$as_me:4020: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -4063,10 +4026,10 @@
- fi
- ac_ct_LD=$ac_cv_prog_ac_ct_LD
- if test -n "$ac_ct_LD"; then
-- echo "$as_me:4066: result: $ac_ct_LD" >&5
-+ echo "$as_me:4029: result: $ac_ct_LD" >&5
- echo "${ECHO_T}$ac_ct_LD" >&6
- else
-- echo "$as_me:4069: result: no" >&5
-+ echo "$as_me:4032: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -4078,7 +4041,7 @@
- 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:4081: 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_prog_AR+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-@@ -4093,7 +4056,7 @@
- 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:4096: found $ac_dir/$ac_word" >&5
-+echo "$as_me:4059: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -4101,10 +4064,10 @@
- fi
- AR=$ac_cv_prog_AR
- if test -n "$AR"; then
-- echo "$as_me:4104: result: $AR" >&5
-+ echo "$as_me:4067: result: $AR" >&5
- echo "${ECHO_T}$AR" >&6
- else
-- echo "$as_me:4107: result: no" >&5
-+ echo "$as_me:4070: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -4113,7 +4076,7 @@
- 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:4116: checking for $ac_word" >&5
-+echo "$as_me:4079: 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
-@@ -4128,7 +4091,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_AR="ar"
--echo "$as_me:4131: found $ac_dir/$ac_word" >&5
-+echo "$as_me:4094: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -4137,10 +4100,10 @@
- fi
- ac_ct_AR=$ac_cv_prog_ac_ct_AR
- if test -n "$ac_ct_AR"; then
-- echo "$as_me:4140: result: $ac_ct_AR" >&5
-+ echo "$as_me:4103: result: $ac_ct_AR" >&5
- echo "${ECHO_T}$ac_ct_AR" >&6
- else
-- echo "$as_me:4143: result: no" >&5
-+ echo "$as_me:4106: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -4150,9 +4113,83 @@
- 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:4118: 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
-+else
-+ if test -n "$NM"; then
-+ ac_cv_prog_NM="$NM" # 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_NM="${ac_tool_prefix}nm"
-+echo "$as_me:4133: found $ac_dir/$ac_word" >&5
-+break
-+done
-+
-+fi
-+fi
-+NM=$ac_cv_prog_NM
-+if test -n "$NM"; then
-+ echo "$as_me:4141: result: $NM" >&5
-+echo "${ECHO_T}$NM" >&6
-+else
-+ echo "$as_me:4144: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+fi
-+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:4153: 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
-+else
-+ if test -n "$ac_ct_NM"; then
-+ ac_cv_prog_ac_ct_NM="$ac_ct_NM" # 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_NM="nm"
-+echo "$as_me:4168: found $ac_dir/$ac_word" >&5
-+break
-+done
-+
-+ test -z "$ac_cv_prog_ac_ct_NM" && ac_cv_prog_ac_ct_NM="nm"
-+fi
-+fi
-+ac_ct_NM=$ac_cv_prog_ac_ct_NM
-+if test -n "$ac_ct_NM"; then
-+ echo "$as_me:4177: result: $ac_ct_NM" >&5
-+echo "${ECHO_T}$ac_ct_NM" >&6
-+else
-+ echo "$as_me:4180: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+ NM=$ac_ct_NM
-+else
-+ NM="$ac_cv_prog_NM"
-+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:4155: checking for $ac_word" >&5
-+echo "$as_me:4192: 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
-@@ -4167,7 +4204,7 @@
- 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:4170: found $ac_dir/$ac_word" >&5
-+echo "$as_me:4207: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -4175,10 +4212,10 @@
- fi
- AR=$ac_cv_prog_AR
- if test -n "$AR"; then
-- echo "$as_me:4178: result: $AR" >&5
-+ echo "$as_me:4215: result: $AR" >&5
- echo "${ECHO_T}$AR" >&6
- else
-- echo "$as_me:4181: result: no" >&5
-+ echo "$as_me:4218: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -4187,7 +4224,7 @@
- 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:4190: checking for $ac_word" >&5
-+echo "$as_me:4227: 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
-@@ -4202,7 +4239,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_AR="ar"
--echo "$as_me:4205: found $ac_dir/$ac_word" >&5
-+echo "$as_me:4242: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -4211,10 +4248,10 @@
- fi
- ac_ct_AR=$ac_cv_prog_ac_ct_AR
- if test -n "$ac_ct_AR"; then
-- echo "$as_me:4214: result: $ac_ct_AR" >&5
-+ echo "$as_me:4251: result: $ac_ct_AR" >&5
- echo "${ECHO_T}$ac_ct_AR" >&6
- else
-- echo "$as_me:4217: result: no" >&5
-+ echo "$as_me:4254: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -4223,7 +4260,7 @@
- AR="$ac_cv_prog_AR"
- fi
-
--echo "$as_me:4226: checking for options to update archives" >&5
-+echo "$as_me:4263: 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
-@@ -4246,13 +4283,13 @@
- rm -f conftest.a
-
- cat >conftest.$ac_ext <<EOF
--#line 4249 "configure"
-+#line 4286 "configure"
- int testdata[3] = { 123, 456, 789 };
- EOF
-- if { (eval echo "$as_me:4252: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:4289: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:4255: \$? = $ac_status" >&5
-+ echo "$as_me:4292: \$? = $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
-@@ -4263,7 +4300,7 @@
- else
- test -n "$verbose" && echo " cannot compile test-program" 1>&6
-
--echo "${as_me:-configure}:4266: testing cannot compile test-program ..." 1>&5
-+echo "${as_me:-configure}:4303: testing cannot compile test-program ..." 1>&5
-
- break
- fi
-@@ -4271,7 +4308,7 @@
- rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext
-
- fi
--echo "$as_me:4274: result: $cf_cv_ar_flags" >&5
-+echo "$as_me:4311: result: $cf_cv_ar_flags" >&5
- echo "${ECHO_T}$cf_cv_ar_flags" >&6
-
- if test -n "$ARFLAGS" ; then
-@@ -4282,20 +4319,20 @@
- ARFLAGS=$cf_cv_ar_flags
- fi
-
--echo "$as_me:4285: checking if you have specified an install-prefix" >&5
-+echo "$as_me:4322: 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.
- if test "${with_install_prefix+set}" = set; then
- withval="$with_install_prefix"
-- case "$withval" in #(vi
-- yes|no) #(vi
-+ case "x$withval" in #(vi
-+ xyes|xno) #(vi
- ;;
- *) DESTDIR="$withval"
- ;;
- esac
- fi;
--echo "$as_me:4298: result: $DESTDIR" >&5
-+echo "$as_me:4335: result: $DESTDIR" >&5
- echo "${ECHO_T}$DESTDIR" >&6
-
- ###############################################################################
-@@ -4323,7 +4360,7 @@
- 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:4326: checking for $ac_word" >&5
-+echo "$as_me:4363: 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
-@@ -4338,7 +4375,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_BUILD_CC="$ac_prog"
--echo "$as_me:4341: found $ac_dir/$ac_word" >&5
-+echo "$as_me:4378: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -4346,10 +4383,10 @@
- fi
- BUILD_CC=$ac_cv_prog_BUILD_CC
- if test -n "$BUILD_CC"; then
-- echo "$as_me:4349: result: $BUILD_CC" >&5
-+ echo "$as_me:4386: result: $BUILD_CC" >&5
- echo "${ECHO_T}$BUILD_CC" >&6
- else
-- echo "$as_me:4352: result: no" >&5
-+ echo "$as_me:4389: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -4357,12 +4394,12 @@
- done
-
- fi;
-- echo "$as_me:4360: checking for native build C compiler" >&5
-+ echo "$as_me:4397: checking for native build C compiler" >&5
- echo $ECHO_N "checking for native build C compiler... $ECHO_C" >&6
-- echo "$as_me:4362: result: $BUILD_CC" >&5
-+ echo "$as_me:4399: result: $BUILD_CC" >&5
- echo "${ECHO_T}$BUILD_CC" >&6
-
-- echo "$as_me:4365: checking for native build C preprocessor" >&5
-+ echo "$as_me:4402: 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.
-@@ -4372,10 +4409,10 @@
- else
- BUILD_CPP='${BUILD_CC} -E'
- fi;
-- echo "$as_me:4375: result: $BUILD_CPP" >&5
-+ echo "$as_me:4412: result: $BUILD_CPP" >&5
- echo "${ECHO_T}$BUILD_CPP" >&6
-
-- echo "$as_me:4378: checking for native build C flags" >&5
-+ echo "$as_me:4415: 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.
-@@ -4383,10 +4420,10 @@
- withval="$with_build_cflags"
- BUILD_CFLAGS="$withval"
- fi;
-- echo "$as_me:4386: result: $BUILD_CFLAGS" >&5
-+ echo "$as_me:4423: result: $BUILD_CFLAGS" >&5
- echo "${ECHO_T}$BUILD_CFLAGS" >&6
-
-- echo "$as_me:4389: checking for native build C preprocessor-flags" >&5
-+ echo "$as_me:4426: 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.
-@@ -4394,10 +4431,10 @@
- withval="$with_build_cppflags"
- BUILD_CPPFLAGS="$withval"
- fi;
-- echo "$as_me:4397: result: $BUILD_CPPFLAGS" >&5
-+ echo "$as_me:4434: result: $BUILD_CPPFLAGS" >&5
- echo "${ECHO_T}$BUILD_CPPFLAGS" >&6
-
-- echo "$as_me:4400: checking for native build linker-flags" >&5
-+ echo "$as_me:4437: 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.
-@@ -4405,10 +4442,10 @@
- withval="$with_build_ldflags"
- BUILD_LDFLAGS="$withval"
- fi;
-- echo "$as_me:4408: result: $BUILD_LDFLAGS" >&5
-+ echo "$as_me:4445: result: $BUILD_LDFLAGS" >&5
- echo "${ECHO_T}$BUILD_LDFLAGS" >&6
-
-- echo "$as_me:4411: checking for native build linker-libraries" >&5
-+ echo "$as_me:4448: 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.
-@@ -4416,7 +4453,7 @@
- withval="$with_build_libs"
- BUILD_LIBS="$withval"
- fi;
-- echo "$as_me:4419: result: $BUILD_LIBS" >&5
-+ echo "$as_me:4456: result: $BUILD_LIBS" >&5
- echo "${ECHO_T}$BUILD_LIBS" >&6
-
- # this assumes we're on Unix.
-@@ -4426,7 +4463,7 @@
- : ${BUILD_CC:='${CC}'}
-
- if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then
-- { { echo "$as_me:4429: error: Cross-build requires two compilers.
-+ { { echo "$as_me:4466: 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;}
-@@ -4451,7 +4488,7 @@
- ### shared, for example.
- cf_list_models=""
-
--echo "$as_me:4454: checking if libtool -version-number should be used" >&5
-+echo "$as_me:4491: 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.
-@@ -4468,13 +4505,37 @@
- cf_libtool_version=yes
-
- fi;
--echo "$as_me:4471: result: $cf_libtool_version" >&5
-+echo "$as_me:4508: result: $cf_libtool_version" >&5
- echo "${ECHO_T}$cf_libtool_version" >&6
-
- if test "$cf_libtool_version" = yes ; then
- LIBTOOL_VERSION="-version-number"
- else
- LIBTOOL_VERSION="-version-info"
-+ case "x$VERSION" in #(vi
-+ x) #(vi
-+ { echo "$as_me:4517: 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}:4524: 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}:4531: testing ABI_VERSION: $ABI_VERSION ..." 1>&5
-+
-+ ;;
-+ *)
-+ { echo "$as_me:4535: WARNING: unexpected VERSION value: $VERSION" >&5
-+echo "$as_me: WARNING: unexpected VERSION value: $VERSION" >&2;}
-+ ;;
-+ esac
- fi
-
- LIBTOOL=
-@@ -4493,7 +4554,7 @@
- LIB_INSTALL=
- LIB_UNINSTALL=
-
--echo "$as_me:4496: checking if you want to build libraries with libtool" >&5
-+echo "$as_me:4557: 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.
-@@ -4503,7 +4564,7 @@
- else
- with_libtool=no
- fi;
--echo "$as_me:4506: result: $with_libtool" >&5
-+echo "$as_me:4567: result: $with_libtool" >&5
- echo "${ECHO_T}$with_libtool" >&6
- if test "$with_libtool" != "no"; then
-
-@@ -4522,7 +4583,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval with_libtool="$with_libtool"
- case ".$with_libtool" in #(vi
- .NONE/*)
-@@ -4534,7 +4595,7 @@
- with_libtool=`echo $with_libtool | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:4537: error: expected a pathname, not \"$with_libtool\"" >&5
-+ { { echo "$as_me:4598: error: expected a pathname, not \"$with_libtool\"" >&5
- echo "$as_me: error: expected a pathname, not \"$with_libtool\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
-@@ -4542,86 +4603,245 @@
-
- LIBTOOL=$with_libtool
- else
-- # Extract the first word of "libtool", so it can be a program name with args.
--set dummy libtool; ac_word=$2
--echo "$as_me:4547: checking for $ac_word" >&5
-+ if test -n "$ac_tool_prefix"; then
-+ for ac_prog in libtool glibtool
-+ 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:4611: checking for $ac_word" >&5
- echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
--if test "${ac_cv_path_LIBTOOL+set}" = set; then
-+if test "${ac_cv_prog_LIBTOOL+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- case $LIBTOOL in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_LIBTOOL="$LIBTOOL" # Let the user override the test with a path.
-- ;;
-- *)
-+ if test -n "$LIBTOOL"; then
-+ ac_cv_prog_LIBTOOL="$LIBTOOL" # 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=.
-- if $as_executable_p "$ac_dir/$ac_word"; then
-- ac_cv_path_LIBTOOL="$ac_dir/$ac_word"
-- echo "$as_me:4564: found $ac_dir/$ac_word" >&5
-- break
--fi
-+ $as_executable_p "$ac_dir/$ac_word" || continue
-+ac_cv_prog_LIBTOOL="$ac_tool_prefix$ac_prog"
-+echo "$as_me:4626: found $ac_dir/$ac_word" >&5
-+break
- done
-
-- ;;
--esac
- fi
--LIBTOOL=$ac_cv_path_LIBTOOL
--
-+fi
-+LIBTOOL=$ac_cv_prog_LIBTOOL
- if test -n "$LIBTOOL"; then
-- echo "$as_me:4575: result: $LIBTOOL" >&5
-+ echo "$as_me:4634: result: $LIBTOOL" >&5
- echo "${ECHO_T}$LIBTOOL" >&6
- else
-- echo "$as_me:4578: result: no" >&5
-+ echo "$as_me:4637: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-- fi
-- if test -z "$LIBTOOL" ; then
-- { { echo "$as_me:4584: error: Cannot find libtool" >&5
--echo "$as_me: error: Cannot find libtool" >&2;}
-- { (exit 1); exit 1; }; }
-- fi
-- LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} -o'
-- LIB_OBJECT='${OBJECTS:.o=.lo}'
-- LIB_SUFFIX=.la
-- LIB_CLEAN='${LIBTOOL} --mode=clean'
-- LIB_COMPILE='${LIBTOOL} --mode=compile'
-- LIB_LINK='${LIBTOOL} --mode=link ${CC} ${LIBTOOL_OPTS}'
-- LIB_INSTALL='${LIBTOOL} --mode=install'
-- LIB_UNINSTALL='${LIBTOOL} --mode=uninstall'
-- LIB_PREP=:
-+ test -n "$LIBTOOL" && break
-+ done
-+fi
-+if test -z "$LIBTOOL"; then
-+ ac_ct_LIBTOOL=$LIBTOOL
-+ for ac_prog in libtool glibtool
-+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:4650: 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
-+else
-+ if test -n "$ac_ct_LIBTOOL"; then
-+ ac_cv_prog_ac_ct_LIBTOOL="$ac_ct_LIBTOOL" # 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_LIBTOOL="$ac_prog"
-+echo "$as_me:4665: found $ac_dir/$ac_word" >&5
-+break
-+done
-+
-+fi
-+fi
-+ac_ct_LIBTOOL=$ac_cv_prog_ac_ct_LIBTOOL
-+if test -n "$ac_ct_LIBTOOL"; then
-+ echo "$as_me:4673: result: $ac_ct_LIBTOOL" >&5
-+echo "${ECHO_T}$ac_ct_LIBTOOL" >&6
-+else
-+ echo "$as_me:4676: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+ test -n "$ac_ct_LIBTOOL" && break
-+done
-+test -n "$ac_ct_LIBTOOL" || ac_ct_LIBTOOL="none"
-
-- # Show the version of libtool
-- echo "$as_me:4599: checking version of libtool" >&5
--echo $ECHO_N "checking version of libtool... $ECHO_C" >&6
--
-- # Save the version in a cache variable - this is not entirely a good
-- # thing, but the version string from libtool is very ugly, and for
-- # bug reports it might be useful to have the original string. "("
-+ LIBTOOL=$ac_ct_LIBTOOL
-+fi
-+
-+if test -n "$LIBTOOL" && test "$LIBTOOL" != none
-+then
- cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([^)]*)//g' -e 's/^[^1-9]*//' -e 's/[^0-9.].*//'`
-- echo "$as_me:4606: 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:4609: error: This is not GNU libtool" >&5
--echo "$as_me: error: This is not GNU libtool" >&2;}
-- { (exit 1); exit 1; }; }
-- fi
-+else
-+ cf_cv_libtool_version=
-+fi
-+test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version
-
-- # special hack to add -no-undefined (which libtool should do for itself)
-- LT_UNDEF=
-- case "$cf_cv_system_name" in #(vi
-- cygwin*|mingw32*|uwin*|aix[456]) #(vi
-- LT_UNDEF=-no-undefined
-- ;;
-- esac
-+ if test -z "$cf_cv_libtool_version" && test "$LIBTOOL" = libtool
-+ then
-
-- # special hack to add --tag option for C++ compiler
-- case $cf_cv_libtool_version in #(vi
-- 1.[5-9]*|[2-9].[0-9.a-z]*) #(vi
-+unset ac_cv_prog_ac_ct_LIBTOOL
-+unset ac_ct_LIBTOOL
-+unset LIBTOOL
-+
-+ if test -n "$ac_tool_prefix"; then
-+ for ac_prog in glibtool
-+ 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:4707: 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
-+else
-+ if test -n "$LIBTOOL"; then
-+ ac_cv_prog_LIBTOOL="$LIBTOOL" # 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_LIBTOOL="$ac_tool_prefix$ac_prog"
-+echo "$as_me:4722: found $ac_dir/$ac_word" >&5
-+break
-+done
-+
-+fi
-+fi
-+LIBTOOL=$ac_cv_prog_LIBTOOL
-+if test -n "$LIBTOOL"; then
-+ echo "$as_me:4730: result: $LIBTOOL" >&5
-+echo "${ECHO_T}$LIBTOOL" >&6
-+else
-+ echo "$as_me:4733: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+ test -n "$LIBTOOL" && break
-+ done
-+fi
-+if test -z "$LIBTOOL"; then
-+ ac_ct_LIBTOOL=$LIBTOOL
-+ for ac_prog in glibtool
-+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:4746: 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
-+else
-+ if test -n "$ac_ct_LIBTOOL"; then
-+ ac_cv_prog_ac_ct_LIBTOOL="$ac_ct_LIBTOOL" # 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_LIBTOOL="$ac_prog"
-+echo "$as_me:4761: found $ac_dir/$ac_word" >&5
-+break
-+done
-+
-+fi
-+fi
-+ac_ct_LIBTOOL=$ac_cv_prog_ac_ct_LIBTOOL
-+if test -n "$ac_ct_LIBTOOL"; then
-+ echo "$as_me:4769: result: $ac_ct_LIBTOOL" >&5
-+echo "${ECHO_T}$ac_ct_LIBTOOL" >&6
-+else
-+ echo "$as_me:4772: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+ test -n "$ac_ct_LIBTOOL" && break
-+done
-+test -n "$ac_ct_LIBTOOL" || ac_ct_LIBTOOL="none"
-+
-+ LIBTOOL=$ac_ct_LIBTOOL
-+fi
-+
-+if test -n "$LIBTOOL" && test "$LIBTOOL" != none
-+then
-+ cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([^)]*)//g' -e 's/^[^1-9]*//' -e 's/[^0-9.].*//'`
-+else
-+ cf_cv_libtool_version=
-+fi
-+test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version
-+
-+ fi
-+ fi
-+ if test -z "$LIBTOOL" ; then
-+ { { echo "$as_me:4794: error: Cannot find libtool" >&5
-+echo "$as_me: error: Cannot find libtool" >&2;}
-+ { (exit 1); exit 1; }; }
-+ fi
-+ LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${top_srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} $(LIBS) -o'
-+ LIB_OBJECT='${OBJECTS:.o=.lo}'
-+ LIB_SUFFIX=.la
-+ LIB_CLEAN='${LIBTOOL} --mode=clean'
-+ LIB_COMPILE='${LIBTOOL} --mode=compile'
-+ LIB_LINK='${LIBTOOL} --mode=link ${CC} ${LIBTOOL_OPTS}'
-+ LIB_INSTALL='${LIBTOOL} --mode=install'
-+ LIB_UNINSTALL='${LIBTOOL} --mode=uninstall'
-+ LIB_PREP=:
-+
-+if test -n "$LIBTOOL" && test "$LIBTOOL" != none
-+then
-+ echo "$as_me:4810: checking version of $LIBTOOL" >&5
-+echo $ECHO_N "checking version of $LIBTOOL... $ECHO_C" >&6
-+
-+if test -n "$LIBTOOL" && test "$LIBTOOL" != none
-+then
-+ cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([^)]*)//g' -e 's/^[^1-9]*//' -e 's/[^0-9.].*//'`
-+else
-+ cf_cv_libtool_version=
-+fi
-+test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version
-+
-+ echo "$as_me:4821: 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:4824: error: This is not GNU libtool" >&5
-+echo "$as_me: error: This is not GNU libtool" >&2;}
-+ { (exit 1); exit 1; }; }
-+ fi
-+else
-+ { { echo "$as_me:4829: error: GNU libtool has not been found" >&5
-+echo "$as_me: error: GNU libtool has not been found" >&2;}
-+ { (exit 1); exit 1; }; }
-+fi
-+
-+ # special hack to add -no-undefined (which libtool should do for itself)
-+ LT_UNDEF=
-+ case "$cf_cv_system_name" in #(vi
-+ cygwin*|msys*|mingw32*|uwin*|aix[4-7]) #(vi
-+ LT_UNDEF=-no-undefined
-+ ;;
-+ esac
-+
-+ # special hack to add --tag option for C++ compiler
-+ case $cf_cv_libtool_version in #(vi
-+ 1.[5-9]*|[2-9].[0-9.a-z]*) #(vi
- LIBTOOL_CXX="$LIBTOOL --tag=CXX"
- LIBTOOL="$LIBTOOL --tag=CC"
- ;;
-@@ -4642,7 +4862,7 @@
-
- else
-
--echo "$as_me:4645: checking if you want to build shared libraries" >&5
-+echo "$as_me:4865: 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.
-@@ -4652,11 +4872,11 @@
- else
- with_shared=no
- fi;
--echo "$as_me:4655: result: $with_shared" >&5
-+echo "$as_me:4875: result: $with_shared" >&5
- echo "${ECHO_T}$with_shared" >&6
--test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared"
-+test "x$with_shared" = "xyes" && cf_list_models="$cf_list_models shared"
-
--echo "$as_me:4659: checking if you want to build static libraries" >&5
-+echo "$as_me:4879: 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.
-@@ -4666,11 +4886,11 @@
- else
- with_normal=yes
- fi;
--echo "$as_me:4669: result: $with_normal" >&5
-+echo "$as_me:4889: result: $with_normal" >&5
- echo "${ECHO_T}$with_normal" >&6
--test "$with_normal" = "yes" && cf_list_models="$cf_list_models normal"
-+test "x$with_normal" = "xyes" && cf_list_models="$cf_list_models normal"
-
--echo "$as_me:4673: checking if you want to build debug libraries" >&5
-+echo "$as_me:4893: 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.
-@@ -4680,11 +4900,11 @@
- else
- with_debug=yes
- fi;
--echo "$as_me:4683: result: $with_debug" >&5
-+echo "$as_me:4903: result: $with_debug" >&5
- echo "${ECHO_T}$with_debug" >&6
--test "$with_debug" = "yes" && cf_list_models="$cf_list_models debug"
-+test "x$with_debug" = "xyes" && cf_list_models="$cf_list_models debug"
-
--echo "$as_me:4687: checking if you want to build profiling libraries" >&5
-+echo "$as_me:4907: 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.
-@@ -4694,27 +4914,44 @@
- else
- with_profile=no
- fi;
--echo "$as_me:4697: result: $with_profile" >&5
-+echo "$as_me:4917: result: $with_profile" >&5
- echo "${ECHO_T}$with_profile" >&6
--test "$with_profile" = "yes" && cf_list_models="$cf_list_models profile"
-+test "x$with_profile" = "xyes" && cf_list_models="$cf_list_models profile"
-+
-+fi
-+
-+if test "X$cf_with_cxx_binding" != Xno; then
-+if test "x$with_shared" = "xyes"; then
-+echo "$as_me:4925: 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.
-+if test "${with_cxx_shared+set}" = set; then
-+ withval="$with_cxx_shared"
-+ with_shared_cxx=$withval
-+else
-+ with_shared_cxx=no
-+fi;
-+echo "$as_me:4935: result: $with_shared_cxx" >&5
-+echo "${ECHO_T}$with_shared_cxx" >&6
-+fi
- fi
-
- ###############################################################################
-
--echo "$as_me:4705: checking for specified models" >&5
-+echo "$as_me:4942: 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:4709: result: $cf_list_models" >&5
-+echo "$as_me:4946: 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:4714: checking for default model" >&5
-+echo "$as_me:4951: 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:4717: result: $DFT_LWR_MODEL" >&5
-+echo "$as_me:4954: result: $DFT_LWR_MODEL" >&5
- echo "${ECHO_T}$DFT_LWR_MODEL" >&6
-
- DFT_UPR_MODEL=`echo "$DFT_LWR_MODEL" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-@@ -4728,6 +4965,22 @@
- LIB_DIR=../lib
- LIB_2ND=../../lib
-
-+echo "$as_me:4968: 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.
-+if test "${with_lib_prefix+set}" = set; then
-+ withval="$with_lib_prefix"
-+ with_lib_prefix=$withval
-+else
-+ with_lib_prefix=auto
-+fi;
-+echo "$as_me:4978: result: $with_lib_prefix" >&5
-+echo "${ECHO_T}$with_lib_prefix" >&6
-+
-+if test $with_lib_prefix = auto
-+then
-+
- case $cf_cv_system_name in #(vi
- OS/2*|os2*) #(vi
- LIB_PREFIX=''
-@@ -4737,13 +4990,28 @@
- esac
- cf_prefix=$LIB_PREFIX
-
--LIB_PREFIX=$cf_prefix
-+elif test $with_lib_prefix = no
-+then
-+ LIB_PREFIX=
-+else
-+ LIB_PREFIX=$with_lib_prefix
-+fi
-
- LIB_SUFFIX=
-
-+ echo "$as_me:5002: checking for PATH separator" >&5
-+echo $ECHO_N "checking for PATH separator... $ECHO_C" >&6
-+ case $cf_cv_system_name in
-+ os2*) PATH_SEPARATOR=';' ;;
-+ *) ${PATH_SEPARATOR:=':'} ;;
-+ esac
-+
-+ echo "$as_me:5009: result: $PATH_SEPARATOR" >&5
-+echo "${ECHO_T}$PATH_SEPARATOR" >&6
-+
- ###############################################################################
-
--echo "$as_me:4746: checking if you want to build a separate terminfo library" >&5
-+echo "$as_me:5014: 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.
-@@ -4753,10 +5021,10 @@
- else
- with_termlib=no
- fi;
--echo "$as_me:4756: result: $with_termlib" >&5
-+echo "$as_me:5024: result: $with_termlib" >&5
- echo "${ECHO_T}$with_termlib" >&6
-
--echo "$as_me:4759: checking if you want to build a separate tic library" >&5
-+echo "$as_me:5027: 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.
-@@ -4766,13 +5034,13 @@
- else
- with_ticlib=no
- fi;
--echo "$as_me:4769: result: $with_ticlib" >&5
-+echo "$as_me:5037: result: $with_ticlib" >&5
- echo "${ECHO_T}$with_ticlib" >&6
-
- ### Checks for special libraries, must be done up-front.
- SHLIB_LIST=""
-
--echo "$as_me:4775: checking if you want to link with the GPM mouse library" >&5
-+echo "$as_me:5043: 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.
-@@ -4782,27 +5050,27 @@
- else
- with_gpm=maybe
- fi;
--echo "$as_me:4785: result: $with_gpm" >&5
-+echo "$as_me:5053: result: $with_gpm" >&5
- echo "${ECHO_T}$with_gpm" >&6
-
- if test "$with_gpm" != no ; then
-- echo "$as_me:4789: checking for gpm.h" >&5
-+ echo "$as_me:5057: 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 4795 "configure"
-+#line 5063 "configure"
- #include "confdefs.h"
- #include <gpm.h>
- _ACEOF
--if { (eval echo "$as_me:4799: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:5067: \"$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:4805: \$? = $ac_status" >&5
-+ echo "$as_me:5073: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -4821,25 +5089,25 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:4824: result: $ac_cv_header_gpm_h" >&5
-+echo "$as_me:5092: 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
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_GPM_H 1
- 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}:4835: testing assuming we really have GPM library ..." 1>&5
-+echo "${as_me:-configure}:5103: testing assuming we really have GPM library ..." 1>&5
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_LIBGPM 1
- EOF
-
- else
-- echo "$as_me:4842: checking for Gpm_Open in -lgpm" >&5
-+ echo "$as_me:5110: 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
-@@ -4847,7 +5115,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lgpm $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 4850 "configure"
-+#line 5118 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -4866,16 +5134,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:4869: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5137: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:4872: \$? = $ac_status" >&5
-+ echo "$as_me:5140: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:4875: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5143: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4878: \$? = $ac_status" >&5
-+ echo "$as_me:5146: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_gpm_Gpm_Open=yes
- else
-@@ -4886,13 +5154,13 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:4889: result: $ac_cv_lib_gpm_Gpm_Open" >&5
-+echo "$as_me:5157: 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
- :
- else
-
-- { { echo "$as_me:4895: error: Cannot link with GPM library" >&5
-+ { { echo "$as_me:5163: error: Cannot link with GPM library" >&5
- echo "$as_me: error: Cannot link with GPM library" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -4902,7 +5170,7 @@
-
- else
-
-- test "$with_gpm" != maybe && { echo "$as_me:4905: WARNING: Cannot find GPM header" >&5
-+ test "$with_gpm" != maybe && { echo "$as_me:5173: WARNING: Cannot find GPM header" >&5
- echo "$as_me: WARNING: Cannot find GPM header" >&2;}
- with_gpm=no
-
-@@ -4911,7 +5179,7 @@
- fi
-
- if test "$with_gpm" != no ; then
-- echo "$as_me:4914: checking if you want to load GPM dynamically" >&5
-+ echo "$as_me:5182: 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.
-@@ -4921,18 +5189,18 @@
- else
- with_dlsym=yes
- fi;
-- echo "$as_me:4924: result: $with_dlsym" >&5
-+ echo "$as_me:5192: result: $with_dlsym" >&5
- echo "${ECHO_T}$with_dlsym" >&6
-- if test "$with_dlsym" = yes ; then
-+ if test "x$with_dlsym" = xyes ; then
-
- cf_have_dlsym=no
--echo "$as_me:4929: checking for dlsym" >&5
-+echo "$as_me:5197: 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 4935 "configure"
-+#line 5203 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char dlsym (); below. */
-@@ -4955,7 +5223,7 @@
- #if defined (__stub_dlsym) || defined (__stub___dlsym)
- choke me
- #else
--f = dlsym;
-+f = dlsym; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -4963,16 +5231,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:4966: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5234: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:4969: \$? = $ac_status" >&5
-+ echo "$as_me:5237: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:4972: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5240: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4975: \$? = $ac_status" >&5
-+ echo "$as_me:5243: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_dlsym=yes
- else
-@@ -4982,14 +5250,14 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:4985: result: $ac_cv_func_dlsym" >&5
-+echo "$as_me:5253: result: $ac_cv_func_dlsym" >&5
- echo "${ECHO_T}$ac_cv_func_dlsym" >&6
- if test $ac_cv_func_dlsym = yes; then
- cf_have_dlsym=yes
- else
-
- cf_have_libdl=no
--echo "$as_me:4992: checking for dlsym in -ldl" >&5
-+echo "$as_me:5260: 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
-@@ -4997,7 +5265,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-ldl $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 5000 "configure"
-+#line 5268 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -5016,16 +5284,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5019: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5287: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5022: \$? = $ac_status" >&5
-+ echo "$as_me:5290: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5025: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5293: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5028: \$? = $ac_status" >&5
-+ echo "$as_me:5296: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_dl_dlsym=yes
- else
-@@ -5036,7 +5304,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:5039: result: $ac_cv_lib_dl_dlsym" >&5
-+echo "$as_me:5307: 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
-
-@@ -5047,12 +5315,27 @@
- fi
-
- if test "$cf_have_dlsym" = yes ; then
-- test "$cf_have_libdl" = yes && LIBS="-ldl $LIBS"
-+ test "$cf_have_libdl" = yes &&
-+cf_add_libs="-ldl"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
-- echo "$as_me:5052: checking whether able to link to dl*() functions" >&5
-+ echo "$as_me:5335: 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 5055 "configure"
-+#line 5338 "configure"
- #include "confdefs.h"
- #include <dlfcn.h>
- int
-@@ -5070,19 +5353,19 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5073: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5356: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5076: \$? = $ac_status" >&5
-+ echo "$as_me:5359: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5079: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5362: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5082: \$? = $ac_status" >&5
-+ echo "$as_me:5365: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_LIBDL 1
- EOF
-
-@@ -5090,28 +5373,28 @@
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-
-- { { echo "$as_me:5093: error: Cannot link test program for libdl" >&5
-+ { { echo "$as_me:5376: 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:5098: result: ok" >&5
-+ echo "$as_me:5381: result: ok" >&5
- echo "${ECHO_T}ok" >&6
- else
-- { { echo "$as_me:5101: error: Cannot find dlsym function" >&5
-+ { { echo "$as_me:5384: error: Cannot find dlsym function" >&5
- echo "$as_me: error: Cannot find dlsym function" >&2;}
- { (exit 1); exit 1; }; }
- fi
-
-- if test "$with_gpm" != yes ; then
-+ if test "x$with_gpm" != xyes ; then
- test -n "$verbose" && echo " assuming soname for gpm is $with_gpm" 1>&6
-
--echo "${as_me:-configure}:5109: testing assuming soname for gpm is $with_gpm ..." 1>&5
-+echo "${as_me:-configure}:5392: testing assuming soname for gpm is $with_gpm ..." 1>&5
-
- cf_cv_gpm_soname="$with_gpm"
- else
-
--echo "$as_me:5114: checking for soname of gpm library" >&5
-+echo "$as_me:5397: 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
-@@ -5128,16 +5411,32 @@
- }
- CF_EOF
- cf_save_LIBS="$LIBS"
-- LIBS="-lgpm $LIBS"
-- if { (eval echo "$as_me:5132: \"$ac_compile\"") >&5
-+
-+cf_add_libs="-lgpm"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ if { (eval echo "$as_me:5431: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5135: \$? = $ac_status" >&5
-+ echo "$as_me:5434: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
-- if { (eval echo "$as_me:5137: \"$ac_link\"") >&5
-+ if { (eval echo "$as_me:5436: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5140: \$? = $ac_status" >&5
-+ echo "$as_me:5439: \$? = $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.`
- test -z "$cf_cv_gpm_soname" && cf_cv_gpm_soname=unknown
-@@ -5148,24 +5447,42 @@
- fi
-
- fi
--echo "$as_me:5151: result: $cf_cv_gpm_soname" >&5
-+echo "$as_me:5450: result: $cf_cv_gpm_soname" >&5
- echo "${ECHO_T}$cf_cv_gpm_soname" >&6
-
- fi
-- test "$cf_cv_gpm_soname" != "unknown" && cat >>confdefs.h <<EOF
-+ test "$cf_cv_gpm_soname" != "unknown" &&
-+cat >>confdefs.h <<EOF
- #define LIBGPM_SONAME "$cf_cv_gpm_soname"
- EOF
-
- SHLIB_LIST="-ldl $SHLIB_LIST"
- else
- SHLIB_LIST="-lgpm $SHLIB_LIST"
-- TEST_LIBS="-lgpm $TEST_LIBS"
-+
-+cf_add_libs="-lgpm"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $TEST_LIBS
-+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_libs $cf_add_1lib"
-+done
-+TEST_LIBS="$cf_add_libs"
-+
- fi
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_LIBGPM 1
- EOF
-
--echo "$as_me:5168: checking for Gpm_Wgetch in -lgpm" >&5
-+echo "$as_me:5485: 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
-@@ -5173,7 +5490,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lgpm $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 5176 "configure"
-+#line 5493 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -5192,16 +5509,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5195: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5512: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5198: \$? = $ac_status" >&5
-+ echo "$as_me:5515: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5201: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5518: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5204: \$? = $ac_status" >&5
-+ echo "$as_me:5521: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_gpm_Gpm_Wgetch=yes
- else
-@@ -5212,11 +5529,11 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:5215: result: $ac_cv_lib_gpm_Gpm_Wgetch" >&5
-+echo "$as_me:5532: 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
-
--echo "$as_me:5219: checking if GPM is weakly bound to curses library" >&5
-+echo "$as_me:5536: 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
-@@ -5240,15 +5557,15 @@
- # to rely on the static library, noting that some packagers may not
- # include it.
- LIBS="-static -lgpm -dynamic $LIBS"
-- if { (eval echo "$as_me:5243: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:5560: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5246: \$? = $ac_status" >&5
-+ echo "$as_me:5563: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
-- if { (eval echo "$as_me:5248: \"$ac_link\"") >&5
-+ if { (eval echo "$as_me:5565: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5251: \$? = $ac_status" >&5
-+ echo "$as_me:5568: \$? = $ac_status" >&5
- (exit $ac_status); } ; then
- cf_cv_check_gpm_wgetch=`nm conftest$ac_exeext | egrep '\<wgetch\>' | egrep '\<[vVwW]\>'`
- test -n "$cf_cv_check_gpm_wgetch" && cf_cv_check_gpm_wgetch=yes
-@@ -5260,11 +5577,11 @@
- fi
-
- fi
--echo "$as_me:5263: result: $cf_cv_check_gpm_wgetch" >&5
-+echo "$as_me:5580: 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:5267: WARNING: GPM library is already linked with curses - read the FAQ" >&5
-+ { echo "$as_me:5584: 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
-
-@@ -5274,7 +5591,7 @@
-
- # not everyone has "test -c"
- if test -c /dev/sysmouse 2>/dev/null ; then
--echo "$as_me:5277: checking if you want to use sysmouse" >&5
-+echo "$as_me:5594: 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.
-@@ -5286,7 +5603,7 @@
- fi;
- if test "$cf_with_sysmouse" != no ; then
- cat >conftest.$ac_ext <<_ACEOF
--#line 5289 "configure"
-+#line 5606 "configure"
- #include "confdefs.h"
-
- #include <osreldate.h>
-@@ -5309,16 +5626,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5312: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:5629: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5315: \$? = $ac_status" >&5
-+ echo "$as_me:5632: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5318: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5635: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5321: \$? = $ac_status" >&5
-+ echo "$as_me:5638: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_with_sysmouse=yes
- else
-@@ -5328,9 +5645,10 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:5331: result: $cf_with_sysmouse" >&5
-+echo "$as_me:5648: result: $cf_with_sysmouse" >&5
- echo "${ECHO_T}$cf_with_sysmouse" >&6
--test "$cf_with_sysmouse" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_with_sysmouse" = yes &&
-+cat >>confdefs.h <<\EOF
- #define USE_SYSMOUSE 1
- EOF
-
-@@ -5338,15 +5656,15 @@
-
- if test X"$CC_G_OPT" = X"" ; then
- CC_G_OPT='-g'
-- test -n "$GCC" && test "${ac_cv_prog_cc_g}" != yes && CC_G_OPT=''
-+ test -n "$GCC" && test "x${ac_cv_prog_cc_g}" != xyes && CC_G_OPT=''
- fi
-
- if test X"$CXX_G_OPT" = X"" ; then
- CXX_G_OPT='-g'
-- test -n "$GXX" && test "${ac_cv_prog_cxx_g}" != yes && CXX_G_OPT=''
-+ test -n "$GXX" && test "x${ac_cv_prog_cxx_g}" != xyes && CXX_G_OPT=''
- fi
-
--echo "$as_me:5349: checking for default loader flags" >&5
-+echo "$as_me:5667: checking for default loader flags" >&5
- echo $ECHO_N "checking for default loader flags... $ECHO_C" >&6
- case $DFT_LWR_MODEL in
- libtool) LD_MODEL='' ;;
-@@ -5355,13 +5673,13 @@
- profile) LD_MODEL='-pg';;
- shared) LD_MODEL='' ;;
- esac
--echo "$as_me:5358: result: $LD_MODEL" >&5
-+echo "$as_me:5676: result: $LD_MODEL" >&5
- echo "${ECHO_T}$LD_MODEL" >&6
-
- case $DFT_LWR_MODEL in
- shared)
-
--echo "$as_me:5364: checking if rpath option should be used" >&5
-+echo "$as_me:5682: 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.
-@@ -5371,10 +5689,10 @@
- else
- cf_cv_enable_rpath=no
- fi;
--echo "$as_me:5374: result: $cf_cv_enable_rpath" >&5
-+echo "$as_me:5692: result: $cf_cv_enable_rpath" >&5
- echo "${ECHO_T}$cf_cv_enable_rpath" >&6
-
--echo "$as_me:5377: checking if shared libraries should be relinked during install" >&5
-+echo "$as_me:5695: 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.
-@@ -5384,13 +5702,16 @@
- else
- cf_cv_do_relink=yes
- fi;
--echo "$as_me:5387: result: $cf_cv_do_relink" >&5
-+echo "$as_me:5705: result: $cf_cv_do_relink" >&5
- echo "${ECHO_T}$cf_cv_do_relink" >&6
- ;;
- esac
-
-+# we will build libraries one-level down.
-+rel_builddir=..
-+
- LD_RPATH_OPT=
--echo "$as_me:5393: checking for an rpath option" >&5
-+echo "$as_me:5714: checking for an rpath option" >&5
- echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
- case $cf_cv_system_name in #(vi
- irix*) #(vi
-@@ -5403,10 +5724,10 @@
- linux*|gnu*|k*bsd*-gnu) #(vi
- LD_RPATH_OPT="-Wl,-rpath,"
- ;;
--openbsd[2-9].*) #(vi
-+openbsd[2-9].*|mirbsd*) #(vi
- LD_RPATH_OPT="-Wl,-rpath,"
- ;;
--freebsd*) #(vi
-+dragonfly*|freebsd*) #(vi
- LD_RPATH_OPT="-rpath "
- ;;
- netbsd*) #(vi
-@@ -5421,17 +5742,33 @@
- *)
- ;;
- esac
--echo "$as_me:5424: result: $LD_RPATH_OPT" >&5
-+echo "$as_me:5745: result: $LD_RPATH_OPT" >&5
- echo "${ECHO_T}$LD_RPATH_OPT" >&6
-
- case "x$LD_RPATH_OPT" in #(vi
- x-R*)
-- echo "$as_me:5429: checking if we need a space after rpath option" >&5
-+ echo "$as_me:5750: 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"
-- LIBS="${LD_RPATH_OPT}$libdir $LIBS"
-+
-+cf_add_libs="${LD_RPATH_OPT}$libdir"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- cat >conftest.$ac_ext <<_ACEOF
--#line 5434 "configure"
-+#line 5771 "configure"
- #include "confdefs.h"
-
- int
-@@ -5443,16 +5780,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5446: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5783: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5449: \$? = $ac_status" >&5
-+ echo "$as_me:5786: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5452: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5789: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5455: \$? = $ac_status" >&5
-+ echo "$as_me:5792: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_rpath_space=no
- else
-@@ -5462,22 +5799,28 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS="$cf_save_LIBS"
-- echo "$as_me:5465: result: $cf_rpath_space" >&5
-+ echo "$as_me:5802: result: $cf_rpath_space" >&5
- echo "${ECHO_T}$cf_rpath_space" >&6
- test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT "
- ;;
- esac
-
-+ RM_SHARED_OPTS=
- LOCAL_LDFLAGS=
- LOCAL_LDFLAGS2=
- LD_SHARED_OPTS=
- INSTALL_LIB="-m 644"
-+ : ${rel_builddir:=.}
-+
-+ shlibdir=$libdir
-+
-+ MAKE_DLLS="#"
-
- cf_cv_do_symlinks=no
- cf_ld_rpath_opt=
- test "$cf_cv_enable_rpath" = yes && cf_ld_rpath_opt="$LD_RPATH_OPT"
-
-- echo "$as_me:5480: checking if release/abi version should be used for shared libs" >&5
-+ echo "$as_me:5823: 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.
-@@ -5492,7 +5835,7 @@
- cf_cv_shlib_version=$withval
- ;;
- *)
-- { { echo "$as_me:5495: error: option value must be one of: rel, abi, auto or no" >&5
-+ { { echo "$as_me:5838: error: option value must be one of: rel, abi, auto or no" >&5
- echo "$as_me: error: option value must be one of: rel, abi, auto or no" >&2;}
- { (exit 1); exit 1; }; }
- ;;
-@@ -5501,23 +5844,24 @@
- else
- cf_cv_shlib_version=auto
- fi;
-- echo "$as_me:5504: result: $cf_cv_shlib_version" >&5
-+ echo "$as_me:5847: result: $cf_cv_shlib_version" >&5
- echo "${ECHO_T}$cf_cv_shlib_version" >&6
-
- cf_cv_rm_so_locs=no
-+ cf_try_cflags=
-
- # Some less-capable ports of gcc support only -fpic
- CC_SHARED_OPTS=
- if test "$GCC" = yes
- then
-- echo "$as_me:5513: checking which $CC option to use" >&5
-+ echo "$as_me:5857: 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 5520 "configure"
-+#line 5864 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -5529,16 +5873,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5532: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:5876: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5535: \$? = $ac_status" >&5
-+ echo "$as_me:5879: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5538: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5882: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5541: \$? = $ac_status" >&5
-+ echo "$as_me:5885: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -5547,7 +5891,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- done
-- echo "$as_me:5550: result: $CC_SHARED_OPTS" >&5
-+ echo "$as_me:5894: result: $CC_SHARED_OPTS" >&5
- echo "${ECHO_T}$CC_SHARED_OPTS" >&6
- CFLAGS="$cf_save_CFLAGS"
- fi
-@@ -5555,10 +5899,14 @@
- cf_cv_shlib_version_infix=no
-
- case $cf_cv_system_name in #(vi
-- aix[56]*) #(vi
-+ aix4.3-9*|aix[5-7]*) #(vi
- if test "$GCC" = yes; then
- CC_SHARED_OPTS=
-- MK_SHARED_LIB='$(CC) -shared'
-+ MK_SHARED_LIB='${CC} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o $@'
-+ else
-+ # CC_SHARED_OPTS='-qpic=large -G'
-+ # perhaps "-bM:SRE -bnoentry -bexpall"
-+ MK_SHARED_LIB='${CC} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o $@'
- fi
- ;;
- beos*) #(vi
-@@ -5566,9 +5914,12 @@
- ;;
- cygwin*) #(vi
- CC_SHARED_OPTS=
-- MK_SHARED_LIB='sh ../mk_shared_lib.sh $@ ${CC} ${CFLAGS}'
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
- cf_cv_shlib_version=cygdll
- cf_cv_shlib_version_infix=cygdll
-+ shlibdir=$bindir
-+ MAKE_DLLS=
- cat >mk_shared_lib.sh <<-CF_EOF
- #!/bin/sh
- SHARED_LIB=\$1
-@@ -5579,17 +5930,39 @@
- ** SHARED_LIB \$SHARED_LIB
- ** IMPORT_LIB \$IMPORT_LIB
- EOF
-- exec \$* -shared -Wl,--out-implib=../lib/\${IMPORT_LIB} -Wl,--export-all-symbols -o ../lib/\${SHARED_LIB}
-+ exec \$* -shared -Wl,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB}
-+CF_EOF
-+ chmod +x mk_shared_lib.sh
-+ ;;
-+ msys*) #(vi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
-+ cf_cv_shlib_version=msysdll
-+ cf_cv_shlib_version_infix=msysdll
-+ shlibdir=$bindir
-+ MAKE_DLLS=
-+ cat >mk_shared_lib.sh <<-CF_EOF
-+ #!/bin/sh
-+ SHARED_LIB=\$1
-+ IMPORT_LIB=\`echo "\$1" | sed -e 's/msys-/lib/' -e 's/[0-9]*\.dll$/.dll.a/'\`
-+ shift
-+ cat <<-EOF
-+ Linking shared library
-+ ** SHARED_LIB \$SHARED_LIB
-+ ** IMPORT_LIB \$IMPORT_LIB
-+EOF
-+ exec \$* -shared -Wl,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB}
- CF_EOF
- chmod +x mk_shared_lib.sh
- ;;
- darwin*) #(vi
-- EXTRA_CFLAGS="-no-cpp-precomp"
-+ cf_try_cflags="no-cpp-precomp"
- CC_SHARED_OPTS="-dynamic"
- MK_SHARED_LIB='${CC} ${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:5592: checking if ld -search_paths_first works" >&5
-+ echo "$as_me:5965: 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
-@@ -5598,7 +5971,7 @@
- cf_save_LDFLAGS=$LDFLAGS
- LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
- cat >conftest.$ac_ext <<_ACEOF
--#line 5601 "configure"
-+#line 5974 "configure"
- #include "confdefs.h"
-
- int
-@@ -5610,16 +5983,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5613: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5986: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5616: \$? = $ac_status" >&5
-+ echo "$as_me:5989: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5619: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5992: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5622: \$? = $ac_status" >&5
-+ echo "$as_me:5995: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_ldflags_search_paths_first=yes
- else
-@@ -5630,12 +6003,20 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LDFLAGS=$cf_save_LDFLAGS
- fi
--echo "$as_me:5633: result: $cf_cv_ldflags_search_paths_first" >&5
-+echo "$as_me:6006: 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
- LDFLAGS="$LDFLAGS -Wl,-search_paths_first"
- fi
- ;;
-+ hpux[7-8]*) #(vi
-+ # HP-UX 8.07 ld lacks "+b" option used for libdir search-list
-+ if test "$GCC" != yes; then
-+ CC_SHARED_OPTS='+Z'
-+ fi
-+ MK_SHARED_LIB='${LD} -b -o $@'
-+ INSTALL_LIB="-m 555"
-+ ;;
- hpux*) #(vi
- # (tested with gcc 2.7.2 -- I don't have c89)
- if test "$GCC" = yes; then
-@@ -5649,9 +6030,19 @@
- # readonly to exploit a quirk in the memory manager.
- INSTALL_LIB="-m 555"
- ;;
-+ interix*)
-+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
-+ if test "$cf_cv_shlib_version" = rel; then
-+ cf_shared_soname='`basename .${REL_VERSION}`.${ABI_VERSION}'
-+ else
-+ cf_shared_soname='`basename `'
-+ fi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o '
-+ ;;
- irix*) #(vi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- # tested with IRIX 5.2 and 'cc'.
- if test "$GCC" != yes; then
-@@ -5668,7 +6059,7 @@
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
-
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
-@@ -5680,13 +6071,40 @@
-
- MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
- ;;
-- openbsd[2-9].*) #(vi
-+ mingw*) #(vi
-+ cf_cv_shlib_version=mingw
-+ cf_cv_shlib_version_infix=mingw
-+ shlibdir=$bindir
-+ MAKE_DLLS=
-+ if test "$DFT_LWR_MODEL" = "shared" ; then
-+ LOCAL_LDFLAGS="-Wl,--enable-auto-import"
-+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
-+ EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS"
-+ fi
-+ CC_SHARED_OPTS=
-+ MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}'
-+ RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
-+ cat >mk_shared_lib.sh <<-CF_EOF
-+ #!/bin/sh
-+ SHARED_LIB=\$1
-+ IMPORT_LIB=\`echo "\$1" | sed -e 's/[0-9]*\.dll$/.dll.a/'\`
-+ shift
-+ cat <<-EOF
-+ Linking shared library
-+ ** SHARED_LIB \$SHARED_LIB
-+ ** IMPORT_LIB \$IMPORT_LIB
-+EOF
-+ exec \$* -shared -Wl,--enable-auto-import,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB}
-+CF_EOF
-+ chmod +x mk_shared_lib.sh
-+ ;;
-+ openbsd[2-9].*|mirbsd*) #(vi
- if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
-
-@@ -5704,12 +6122,12 @@
- MK_SHARED_LIB='${LD} -Bshareable -o $@'
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
- ;;
-- freebsd*) #(vi
-+ dragonfly*|freebsd*) #(vi
- CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
- if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then
- LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)"
-- LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${libdir} $LOCAL_LDFLAGS"
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ LOCAL_LDFLAGS2="${cf_ld_rpath_opt}\${RPATH_LIST} $LOCAL_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
-
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
-@@ -5726,7 +6144,7 @@
- if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_enable_rpath" = yes ; then
- LOCAL_LDFLAGS="${cf_ld_rpath_opt}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
-- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${libdir} $EXTRA_LDFLAGS"
-+ EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- if test "$cf_cv_shlib_version" = auto; then
- if test -f /usr/libexec/ld.elf_so; then
- cf_cv_shlib_version=abi
-@@ -5744,7 +6162,7 @@
-
- MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $@'
- else
-- MK_SHARED_LIB='${LD} -shared -Bshareable -o $@'
-+ MK_SHARED_LIB='${CC} -Wl,-shared -Wl,-Bshareable -o $@'
- fi
- ;;
- osf*|mls+*) #(vi
-@@ -5810,7 +6228,7 @@
- do
- CFLAGS="$cf_shared_opts $cf_save_CFLAGS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 5813 "configure"
-+#line 6231 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -5822,16 +6240,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5825: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:6243: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5828: \$? = $ac_status" >&5
-+ echo "$as_me:6246: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5831: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6249: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5834: \$? = $ac_status" >&5
-+ echo "$as_me:6252: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -5868,65 +6286,217 @@
- test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes
- ;;
- *)
-- { echo "$as_me:5871: WARNING: ignored --with-shlib-version" >&5
-+ { echo "$as_me:6289: WARNING: ignored --with-shlib-version" >&5
- echo "$as_me: WARNING: ignored --with-shlib-version" >&2;}
- ;;
- esac
- ;;
- esac
-
-- if test -n "$cf_ld_rpath_opt" ; then
-- MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\${libdir}"
-+ if test -n "$cf_try_cflags"
-+ then
-+cat > conftest.$ac_ext <<EOF
-+#line 6299 "${as_me:-configure}"
-+#include <stdio.h>
-+int main(int argc, char *argv[])
-+{
-+ printf("hello\n");
-+ return (argv[argc-1] == 0) ;
-+}
-+EOF
-+ cf_save_CFLAGS="$CFLAGS"
-+ for cf_opt in $cf_try_cflags
-+ do
-+ CFLAGS="$cf_save_CFLAGS -$cf_opt"
-+ echo "$as_me:6311: 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:6313: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:6316: \$? = $ac_status" >&5
-+ (exit $ac_status); }; then
-+ echo "$as_me:6318: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+ cf_save_CFLAGS="$CFLAGS"
-+ else
-+ echo "$as_me:6322: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+ fi
-+ done
-+ CFLAGS="$cf_save_CFLAGS"
- fi
-
--if test "$CC_SHARED_OPTS" = "unknown"; then
-- for model in $cf_list_models; do
-- if test "$model" = "shared"; then
-- { { echo "$as_me:5885: 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
-- done
--fi
-+ # RPATH_LIST is a colon-separated list of directories
-+ 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}"
-
--### If we're building with rpath, try to link non-standard libs that way too.
--if test "$DFT_LWR_MODEL" = "shared"; then
-+ test $cf_cv_rm_so_locs = yes && RM_SHARED_OPTS="$RM_SHARED_OPTS so_locations"
-
--echo "$as_me:5895: checking if rpath-hack should be disabled" >&5
--echo $ECHO_N "checking if rpath-hack should be disabled... $ECHO_C" >&6
-+ test -n "$verbose" && echo " CC_SHARED_OPTS: $CC_SHARED_OPTS" 1>&6
-
--# Check whether --enable-rpath-hack or --disable-rpath-hack was given.
--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
-- else
-- cf_disable_rpath_hack=no
-- fi
--else
-- enableval=yes
-- cf_disable_rpath_hack=no
-+echo "${as_me:-configure}:6337: testing CC_SHARED_OPTS: $CC_SHARED_OPTS ..." 1>&5
-
--fi;
--echo "$as_me:5912: result: $cf_disable_rpath_hack" >&5
--echo "${ECHO_T}$cf_disable_rpath_hack" >&6
--if test "$cf_disable_rpath_hack" = no ; then
-+ test -n "$verbose" && echo " MK_SHARED_LIB: $MK_SHARED_LIB" 1>&6
-
--echo "$as_me:5916: 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:5919: result: maybe" >&5
--echo "${ECHO_T}maybe" >&6
-+echo "${as_me:-configure}:6341: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
-
-- 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:5926: 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
-+for model in $cf_list_models; do
-+ case $model in #(vi
-+ libtool)
-+
-+echo "$as_me:6347: 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.
-+if test "${with_libtool_opts+set}" = set; then
-+ withval="$with_libtool_opts"
-+ with_libtool_opts=$withval
-+else
-+ with_libtool_opts=no
-+fi;
-+echo "$as_me:6357: result: $with_libtool_opts" >&5
-+echo "${ECHO_T}$with_libtool_opts" >&6
-+
-+case .$with_libtool_opts in
-+.yes|.no|.)
-+ ;;
-+*)
-+ LIBTOOL_OPTS="$LIBTOOL_OPTS $with_libtool_opts"
-+ ;;
-+esac
-+
-+echo "$as_me:6368: 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.
-+if test "${with_export_syms+set}" = set; then
-+ withval="$with_export_syms"
-+ with_export_syms=$withval
-+else
-+ with_export_syms=no
-+fi;
-+if test "x$with_export_syms" = xyes
-+then
-+ with_export_syms='${top_srcdir}/package/${PACKAGE}.sym'
-+
-+fi
-+echo "$as_me:6383: result: $with_export_syms" >&5
-+echo "${ECHO_T}$with_export_syms" >&6
-+if test "x$with_export_syms" != xno
-+then
-+ EXPORT_SYMS="$EXPORT_SYMS -export-symbols $with_export_syms"
-+
-+fi
-+
-+ ;;
-+ shared) #(vi
-+ if test "$CC_SHARED_OPTS" = "unknown"; then
-+ { { echo "$as_me:6394: 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
-+
-+echo "$as_me:6399: 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.
-+if test "${with_versioned_syms+set}" = set; then
-+ withval="$with_versioned_syms"
-+ with_versioned_syms=$withval
-+else
-+ with_versioned_syms=no
-+fi;
-+if test "x$with_versioned_syms" = xyes
-+then
-+ with_versioned_syms='${top_srcdir}/package/${PACKAGE}.map'
-+
-+fi
-+echo "$as_me:6414: result: $with_versioned_syms" >&5
-+echo "${ECHO_T}$with_versioned_syms" >&6
-+
-+if test "x$with_versioned_syms" != xno
-+then
-+
-+ case "x$MK_SHARED_LIB" in
-+ *-Wl,*) #(vi
-+ VERSIONED_SYMS="-Wl,--version-script,$with_versioned_syms"
-+ 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}:6426: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
-+
-+ ;;
-+ *-dy*) #(vi
-+ VERSIONED_SYMS="-Wl,-M,$with_versioned_syms"
-+ 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}:6434: testing MK_SHARED_LIB: $MK_SHARED_LIB ..." 1>&5
-+
-+ ;;
-+ *)
-+ { echo "$as_me:6438: WARNING: this system does not support versioned-symbols" >&5
-+echo "$as_me: WARNING: this system does not support versioned-symbols" >&2;}
-+ ;;
-+ esac
-+fi
-+
-+ ;;
-+ esac
-+done
-+
-+# pretend that ncurses==ncursesw==ncursest
-+echo "$as_me:6449: 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.
-+if test "${enable_lib_suffixes+set}" = set; then
-+ enableval="$enable_lib_suffixes"
-+ disable_lib_suffixes=$enableval
-+else
-+ disable_lib_suffixes=no
-+fi;
-+echo "$as_me:6459: 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"; then
-+
-+echo "$as_me:6465: 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.
-+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
-+ else
-+ cf_disable_rpath_hack=no
-+ fi
-+else
-+ enableval=yes
-+ cf_disable_rpath_hack=no
-+
-+fi;
-+echo "$as_me:6482: 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:6486: 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:6489: 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:6496: 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
- else
- if test -n "$cf_ldd_prog"; then
- ac_cv_prog_cf_ldd_prog="$cf_ldd_prog" # Let the user override the test.
-@@ -5938,7 +6508,7 @@
- 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:5941: found $ac_dir/$ac_word" >&5
-+echo "$as_me:6511: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -5946,10 +6516,10 @@
- fi
- cf_ldd_prog=$ac_cv_prog_cf_ldd_prog
- if test -n "$cf_ldd_prog"; then
-- echo "$as_me:5949: result: $cf_ldd_prog" >&5
-+ echo "$as_me:6519: result: $cf_ldd_prog" >&5
- echo "${ECHO_T}$cf_ldd_prog" >&6
- else
-- echo "$as_me:5952: result: no" >&5
-+ echo "$as_me:6522: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -5963,7 +6533,7 @@
- cf_rpath_oops=
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 5966 "configure"
-+#line 6536 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -5975,19 +6545,19 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5978: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6548: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5981: \$? = $ac_status" >&5
-+ echo "$as_me:6551: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5984: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6554: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5987: \$? = $ac_status" >&5
-+ echo "$as_me:6557: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort -u`
-- cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[ ]/%/%' -e 's%/[^/][^/]*$%%' |sort -u`
-+ 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`
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-@@ -6012,7 +6582,7 @@
- then
- test -n "$verbose" && echo " ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src" 1>&6
-
--echo "${as_me:-configure}:6015: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5
-+echo "${as_me:-configure}:6585: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5
-
- LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib"
- break
-@@ -6024,11 +6594,11 @@
-
- test -n "$verbose" && echo " ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
-
--echo "${as_me:-configure}:6027: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
-+echo "${as_me:-configure}:6597: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
-
- test -n "$verbose" && echo " ...checking LDFLAGS $LDFLAGS" 1>&6
-
--echo "${as_me:-configure}:6031: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5
-+echo "${as_me:-configure}:6601: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5
-
- cf_rpath_dst=
- for cf_rpath_src in $LDFLAGS
-@@ -6065,7 +6635,7 @@
- then
- test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
-
--echo "${as_me:-configure}:6068: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
-+echo "${as_me:-configure}:6638: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
-
- EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
- fi
-@@ -6078,11 +6648,11 @@
-
- test -n "$verbose" && echo " ...checked LDFLAGS $LDFLAGS" 1>&6
-
--echo "${as_me:-configure}:6081: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5
-+echo "${as_me:-configure}:6651: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5
-
- test -n "$verbose" && echo " ...checking LIBS $LIBS" 1>&6
-
--echo "${as_me:-configure}:6085: testing ...checking LIBS $LIBS ..." 1>&5
-+echo "${as_me:-configure}:6655: testing ...checking LIBS $LIBS ..." 1>&5
-
- cf_rpath_dst=
- for cf_rpath_src in $LIBS
-@@ -6119,7 +6689,7 @@
- then
- test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
-
--echo "${as_me:-configure}:6122: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
-+echo "${as_me:-configure}:6692: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
-
- EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
- fi
-@@ -6132,12 +6702,15 @@
-
- test -n "$verbose" && echo " ...checked LIBS $LIBS" 1>&6
-
--echo "${as_me:-configure}:6135: testing ...checked LIBS $LIBS ..." 1>&5
-+echo "${as_me:-configure}:6705: testing ...checked LIBS $LIBS ..." 1>&5
-
- test -n "$verbose" && echo " ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
-
--echo "${as_me:-configure}:6139: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
-+echo "${as_me:-configure}:6709: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
-
-+else
-+ echo "$as_me:6712: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
-
- fi
-@@ -6147,7 +6720,7 @@
- ###############################################################################
-
- ### use option --disable-overwrite to leave out the link to -lcurses
--echo "$as_me:6150: checking if you wish to install ncurses overwriting curses" >&5
-+echo "$as_me:6723: 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.
-@@ -6157,10 +6730,10 @@
- else
- if test "$prefix" = "/usr" ; then with_overwrite=yes; else with_overwrite=no; fi
- fi;
--echo "$as_me:6160: result: $with_overwrite" >&5
-+echo "$as_me:6733: result: $with_overwrite" >&5
- echo "${ECHO_T}$with_overwrite" >&6
-
--echo "$as_me:6163: checking if external terminfo-database is used" >&5
-+echo "$as_me:6736: 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.
-@@ -6170,7 +6743,7 @@
- else
- use_database=yes
- fi;
--echo "$as_me:6173: result: $use_database" >&5
-+echo "$as_me:6746: result: $use_database" >&5
- echo "${ECHO_T}$use_database" >&6
-
- case $host_os in #(vi
-@@ -6182,17 +6755,11 @@
- ;;
- esac
-
-- case $cf_cv_system_name in
-- os2*) PATH_SEPARATOR=';' ;;
-- *) PATH_SEPARATOR=':' ;;
-- esac
--
-+NCURSES_USE_DATABASE=0
- if test "$use_database" != no ; then
-- cat >>confdefs.h <<\EOF
--#define USE_DATABASE 1
--EOF
-+ NCURSES_USE_DATABASE=1
-
-- echo "$as_me:6195: checking which terminfo source-file will be installed" >&5
-+ echo "$as_me:6762: 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.
-@@ -6200,10 +6767,10 @@
- withval="$with_database"
- TERMINFO_SRC=$withval
- fi;
-- echo "$as_me:6203: result: $TERMINFO_SRC" >&5
-+ echo "$as_me:6770: result: $TERMINFO_SRC" >&5
- echo "${ECHO_T}$TERMINFO_SRC" >&6
-
-- echo "$as_me:6206: checking whether to use hashed database instead of directory/tree" >&5
-+ echo "$as_me:6773: 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.
-@@ -6213,13 +6780,13 @@
- else
- with_hashed_db=no
- fi;
-- echo "$as_me:6216: result: $with_hashed_db" >&5
-+ echo "$as_me:6783: result: $with_hashed_db" >&5
- echo "${ECHO_T}$with_hashed_db" >&6
- else
- with_hashed_db=no
- fi
-
--echo "$as_me:6222: checking for list of fallback descriptions" >&5
-+echo "$as_me:6789: 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.
-@@ -6229,11 +6796,11 @@
- else
- with_fallback=
- fi;
--echo "$as_me:6232: result: $with_fallback" >&5
-+echo "$as_me:6799: result: $with_fallback" >&5
- echo "${ECHO_T}$with_fallback" >&6
- FALLBACK_LIST=`echo "$with_fallback" | sed -e 's/,/ /g'`
-
--echo "$as_me:6236: checking if you want modern xterm or antique" >&5
-+echo "$as_me:6803: 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.
-@@ -6247,17 +6814,42 @@
- no) with_xterm_new=xterm-old;;
- *) with_xterm_new=xterm-new;;
- esac
--echo "$as_me:6250: result: $with_xterm_new" >&5
-+echo "$as_me:6817: result: $with_xterm_new" >&5
- echo "${ECHO_T}$with_xterm_new" >&6
- WHICH_XTERM=$with_xterm_new
-
-+echo "$as_me:6821: 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.
-+if test "${with_xterm_kbs+set}" = set; then
-+ withval="$with_xterm_kbs"
-+ with_xterm_kbs=$withval
-+else
-+ with_xterm_kbs=BS
-+fi;
-+case x$with_xterm_kbs in
-+xyes|xno|xBS|xbs|x8)
-+ with_xterm_kbs=BS
-+ ;;
-+xDEL|xdel|x127)
-+ with_xterm_kbs=DEL
-+ ;;
-+*)
-+ with_xterm_kbs=$withval
-+ ;;
-+esac
-+echo "$as_me:6842: result: $with_xterm_kbs" >&5
-+echo "${ECHO_T}$with_xterm_kbs" >&6
-+XTERM_KBS=$with_xterm_kbs
-+
- MAKE_TERMINFO=
- if test "$use_database" = no ; then
- TERMINFO="${datadir}/terminfo"
- MAKE_TERMINFO="#"
- else
-
--echo "$as_me:6260: checking for list of terminfo directories" >&5
-+echo "$as_me:6852: 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.
-@@ -6285,7 +6877,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval cf_src_path="$cf_src_path"
- case ".$cf_src_path" in #(vi
- .NONE/*)
-@@ -6297,26 +6889,37 @@
- cf_src_path=`echo $cf_src_path | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:6300: error: expected a pathname, not \"$cf_src_path\"" >&5
-+ { { echo "$as_me:6892: 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; }; }
- ;;
- esac
-
-- test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}:"
-+ test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}$PATH_SEPARATOR"
- cf_dst_path="${cf_dst_path}${cf_src_path}"
- done
- IFS="$ac_save_ifs"
-
--eval 'TERMINFO_DIRS="$cf_dst_path"'
-+# This may use the prefix/exec_prefix symbols which will only yield "NONE"
-+# so we have to check/work around. We do prefer the result of "eval"...
-+eval cf_dst_eval="$cf_dst_path"
-+case "x$cf_dst_eval" in #(vi
-+xNONE*) #(vi
-+ TERMINFO_DIRS=$cf_dst_path
-+ ;;
-+*)
-+ TERMINFO_DIRS="$cf_dst_eval"
-+ ;;
-+esac
-
--echo "$as_me:6313: result: $TERMINFO_DIRS" >&5
-+echo "$as_me:6915: result: $TERMINFO_DIRS" >&5
- echo "${ECHO_T}$TERMINFO_DIRS" >&6
--test -n "$TERMINFO_DIRS" && cat >>confdefs.h <<EOF
-+test -n "$TERMINFO_DIRS" &&
-+cat >>confdefs.h <<EOF
- #define TERMINFO_DIRS "$TERMINFO_DIRS"
- EOF
-
--echo "$as_me:6319: checking for default terminfo directory" >&5
-+echo "$as_me:6922: 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.
-@@ -6340,7 +6943,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval withval="$withval"
- case ".$withval" in #(vi
- .NONE/*)
-@@ -6352,17 +6955,18 @@
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:6355: error: expected a pathname, not \"$withval\"" >&5
-+ { { echo "$as_me:6958: error: expected a pathname, not \"$withval\"" >&5
- echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
- esac
-
- fi
--TERMINFO="$withval"
-+eval TERMINFO="$withval"
-
--echo "$as_me:6364: result: $TERMINFO" >&5
-+echo "$as_me:6967: result: $TERMINFO" >&5
- echo "${ECHO_T}$TERMINFO" >&6
-+
- cat >>confdefs.h <<EOF
- #define TERMINFO "$TERMINFO"
- EOF
-@@ -6371,7 +6975,7 @@
-
- ### 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:6374: checking if big-core option selected" >&5
-+echo "$as_me:6978: 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.
-@@ -6383,7 +6987,7 @@
- with_big_core=no
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 6386 "configure"
-+#line 6990 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -6397,15 +7001,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:6400: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:7004: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6403: \$? = $ac_status" >&5
-+ echo "$as_me:7007: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:6405: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7009: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6408: \$? = $ac_status" >&5
-+ echo "$as_me:7012: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- with_big_core=yes
- else
-@@ -6417,16 +7021,17 @@
- rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
- fi;
--echo "$as_me:6420: result: $with_big_core" >&5
-+echo "$as_me:7024: result: $with_big_core" >&5
- echo "${ECHO_T}$with_big_core" >&6
--test "$with_big_core" = "yes" && cat >>confdefs.h <<\EOF
-+test "x$with_big_core" = "xyes" &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_BIG_CORE 1
- 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:6429: checking if big-strings option selected" >&5
-+echo "$as_me:7034: 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.
-@@ -6440,8 +7045,8 @@
- eval with_big_strings=no
- ;;
- *) #(vi
-- if ( ${AWK} 'BEGIN { xx = "x"; while (length(xx) < 12000) { xx = xx "x"; }; printf("%s\n", xx); }' \
-- | $AWK '{ printf "%d\n", length($0); }' | $AWK 'BEGIN { eqls=0; recs=0; } { recs++; if ($0 == 12000) eqls++; } END { if (recs != 1 || eqls != 1) exit 1; }' 2>/dev/null >/dev/null ) ; then
-+ if ( ${AWK} 'BEGIN { xx = "x"; while (length(xx) < 12000) { xx = xx "x"; }; printf("%s\n", xx); }' 2>/dev/null \
-+ | $AWK '{ printf "%d\n", length($0); }' 2>/dev/null | $AWK 'BEGIN { eqls=0; recs=0; } { recs++; if ($0 == 12000) eqls++; } END { if (recs != 1 || eqls != 1) exit 1; }' 2>/dev/null >/dev/null ) ; then
- eval with_big_strings=yes
- else
- eval with_big_strings=no
-@@ -6450,14 +7055,14 @@
- esac
-
- fi;
--echo "$as_me:6453: result: $with_big_strings" >&5
-+echo "$as_me:7058: result: $with_big_strings" >&5
- echo "${ECHO_T}$with_big_strings" >&6
-
- USE_BIG_STRINGS=0
--test "$with_big_strings" = "yes" && USE_BIG_STRINGS=1
-+test "x$with_big_strings" = "xyes" && USE_BIG_STRINGS=1
-
- ### use option --enable-termcap to compile in the termcap fallback support
--echo "$as_me:6460: checking if you want termcap-fallback support" >&5
-+echo "$as_me:7065: 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.
-@@ -6467,34 +7072,33 @@
- else
- with_termcap=no
- fi;
--echo "$as_me:6470: result: $with_termcap" >&5
-+echo "$as_me:7075: result: $with_termcap" >&5
- echo "${ECHO_T}$with_termcap" >&6
-
--if test "$with_termcap" != "yes" ; then
-+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:6476: error: You have disabled the database w/o specifying fallbacks" >&5
-+ { { echo "$as_me:7082: 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
- fi
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define PURE_TERMINFO 1
- EOF
-
- else
-
--if test "$with_ticlib" != no ; then
-- { { echo "$as_me:6488: error: Options --with-ticlib and --enable-termcap cannot be combined" >&5
-+ if test "$with_ticlib" != no ; then
-+ { { echo "$as_me:7095: 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
--
--cat >>confdefs.h <<\EOF
--#define USE_TERMCAP 1
--EOF
-+ fi
-
--echo "$as_me:6497: checking for list of termcap files" >&5
-+ NCURSES_USE_TERMCAP=1
-+ echo "$as_me:7101: 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.
-@@ -6522,7 +7126,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval cf_src_path="$cf_src_path"
- case ".$cf_src_path" in #(vi
- .NONE/*)
-@@ -6534,27 +7138,38 @@
- cf_src_path=`echo $cf_src_path | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:6537: error: expected a pathname, not \"$cf_src_path\"" >&5
-+ { { echo "$as_me:7141: 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; }; }
- ;;
- esac
-
-- test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}:"
-+ test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}$PATH_SEPARATOR"
- cf_dst_path="${cf_dst_path}${cf_src_path}"
- done
- IFS="$ac_save_ifs"
-
--eval 'TERMPATH="$cf_dst_path"'
-+# This may use the prefix/exec_prefix symbols which will only yield "NONE"
-+# so we have to check/work around. We do prefer the result of "eval"...
-+eval cf_dst_eval="$cf_dst_path"
-+case "x$cf_dst_eval" in #(vi
-+xNONE*) #(vi
-+ TERMPATH=$cf_dst_path
-+ ;;
-+*)
-+ TERMPATH="$cf_dst_eval"
-+ ;;
-+esac
-
--echo "$as_me:6550: result: $TERMPATH" >&5
-+ echo "$as_me:7164: result: $TERMPATH" >&5
- echo "${ECHO_T}$TERMPATH" >&6
--test -n "$TERMPATH" && cat >>confdefs.h <<EOF
-+ test -n "$TERMPATH" &&
-+cat >>confdefs.h <<EOF
- #define TERMPATH "$TERMPATH"
- EOF
-
--### use option --enable-getcap to use a hacked getcap for reading termcaps
--echo "$as_me:6557: checking if fast termcap-loader is needed" >&5
-+ ### use option --enable-getcap to use a hacked getcap for reading termcaps
-+ echo "$as_me:7172: 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.
-@@ -6564,13 +7179,14 @@
- else
- with_getcap=no
- fi;
--echo "$as_me:6567: result: $with_getcap" >&5
-+ echo "$as_me:7182: result: $with_getcap" >&5
- echo "${ECHO_T}$with_getcap" >&6
--test "$with_getcap" = "yes" && cat >>confdefs.h <<\EOF
-+ test "x$with_getcap" = "xyes" &&
-+cat >>confdefs.h <<\EOF
- #define USE_GETCAP 1
- EOF
-
--echo "$as_me:6573: checking if translated termcaps will be cached in ~/.terminfo" >&5
-+ echo "$as_me:7189: 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.
-@@ -6580,16 +7196,17 @@
- else
- with_getcap_cache=no
- fi;
--echo "$as_me:6583: result: $with_getcap_cache" >&5
-+ echo "$as_me:7199: result: $with_getcap_cache" >&5
- echo "${ECHO_T}$with_getcap_cache" >&6
--test "$with_getcap_cache" = "yes" && cat >>confdefs.h <<\EOF
-+ test "x$with_getcap_cache" = "xyes" &&
-+cat >>confdefs.h <<\EOF
- #define USE_GETCAP_CACHE 1
- EOF
-
- fi
-
- ### Use option --disable-home-terminfo to completely remove ~/.terminfo
--echo "$as_me:6592: checking if ~/.terminfo is wanted" >&5
-+echo "$as_me:7209: 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.
-@@ -6599,13 +7216,14 @@
- else
- with_home_terminfo=yes
- fi;
--echo "$as_me:6602: result: $with_home_terminfo" >&5
-+echo "$as_me:7219: result: $with_home_terminfo" >&5
- echo "${ECHO_T}$with_home_terminfo" >&6
--test "$with_home_terminfo" = "yes" && cat >>confdefs.h <<\EOF
-+test "x$with_home_terminfo" = "xyes" &&
-+cat >>confdefs.h <<\EOF
- #define USE_HOME_TERMINFO 1
- EOF
-
--echo "$as_me:6608: checking if you want to use restricted environment when running as root" >&5
-+echo "$as_me:7226: 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
-
- # Check whether --enable-root-environ or --disable-root-environ was given.
-@@ -6615,9 +7233,10 @@
- else
- with_root_environ=yes
- fi;
--echo "$as_me:6618: result: $with_root_environ" >&5
-+echo "$as_me:7236: result: $with_root_environ" >&5
- echo "${ECHO_T}$with_root_environ" >&6
--test "$with_root_environ" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_root_environ" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_ROOT_ENVIRON 1
- EOF
-
-@@ -6629,13 +7248,13 @@
- unlink
- do
- as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
--echo "$as_me:6632: checking for $ac_func" >&5
-+echo "$as_me:7251: 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 6638 "configure"
-+#line 7257 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below. */
-@@ -6658,7 +7277,7 @@
- #if defined (__stub_$ac_func) || defined (__stub___$ac_func)
- choke me
- #else
--f = $ac_func;
-+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -6666,16 +7285,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6669: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:7288: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6672: \$? = $ac_status" >&5
-+ echo "$as_me:7291: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6675: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7294: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6678: \$? = $ac_status" >&5
-+ echo "$as_me:7297: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_var=yes"
- else
-@@ -6685,7 +7304,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:6688: result: `eval echo '${'$as_ac_var'}'`" >&5
-+echo "$as_me:7307: 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
-@@ -6702,13 +7321,13 @@
- symlink
- do
- as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
--echo "$as_me:6705: checking for $ac_func" >&5
-+echo "$as_me:7324: 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 6711 "configure"
-+#line 7330 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below. */
-@@ -6731,7 +7350,7 @@
- #if defined (__stub_$ac_func) || defined (__stub___$ac_func)
- choke me
- #else
--f = $ac_func;
-+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -6739,16 +7358,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6742: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:7361: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6745: \$? = $ac_status" >&5
-+ echo "$as_me:7364: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6748: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7367: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6751: \$? = $ac_status" >&5
-+ echo "$as_me:7370: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_var=yes"
- else
-@@ -6758,7 +7377,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:6761: result: `eval echo '${'$as_ac_var'}'`" >&5
-+echo "$as_me:7380: 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
-@@ -6769,7 +7388,7 @@
- done
-
- else
-- echo "$as_me:6772: checking if link/symlink functions work" >&5
-+ echo "$as_me:7391: 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
-@@ -6782,7 +7401,7 @@
- eval 'ac_cv_func_'$cf_func'=error'
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 6785 "configure"
-+#line 7404 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -6812,15 +7431,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:6815: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:7434: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6818: \$? = $ac_status" >&5
-+ echo "$as_me:7437: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:6820: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7439: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6823: \$? = $ac_status" >&5
-+ echo "$as_me:7442: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_link_funcs="$cf_cv_link_funcs $cf_func"
-@@ -6838,13 +7457,15 @@
- test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no
-
- fi
--echo "$as_me:6841: result: $cf_cv_link_funcs" >&5
-+echo "$as_me:7460: result: $cf_cv_link_funcs" >&5
- echo "${ECHO_T}$cf_cv_link_funcs" >&6
-- test "$ac_cv_func_link" = yes && cat >>confdefs.h <<\EOF
-+ test "$ac_cv_func_link" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_LINK 1
- EOF
-
-- test "$ac_cv_func_symlink" = yes && cat >>confdefs.h <<\EOF
-+ test "$ac_cv_func_symlink" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_SYMLINK 1
- EOF
-
-@@ -6855,8 +7476,8 @@
-
- # 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 "$ac_cv_func_symlink" = yes ; then
-- echo "$as_me:6859: checking if tic should use symbolic links" >&5
-+if test "x$ac_cv_func_symlink" = xyes ; then
-+ echo "$as_me:7480: 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.
-@@ -6866,34 +7487,36 @@
- else
- with_symlinks=no
- fi;
-- echo "$as_me:6869: result: $with_symlinks" >&5
-+ echo "$as_me:7490: 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:6876: checking if tic should use hard links" >&5
-+ echo "$as_me:7497: checking if tic should use hard links" >&5
- echo $ECHO_N "checking if tic should use hard links... $ECHO_C" >&6
-- if test "$ac_cv_func_link" = yes ; then
-+ if test "x$ac_cv_func_link" = xyes ; then
- with_links=yes
- else
- with_links=no
- fi
-- echo "$as_me:6883: result: $with_links" >&5
-+ echo "$as_me:7504: result: $with_links" >&5
- echo "${ECHO_T}$with_links" >&6
- fi
-
--test "$with_links" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_links" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_LINKS 1
- EOF
-
--test "$with_symlinks" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_symlinks" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_SYMLINKS 1
- EOF
-
- ### use option --enable-broken-linker to force on use of broken-linker support
--echo "$as_me:6896: checking if you want broken-linker support code" >&5
-+echo "$as_me:7519: 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.
-@@ -6903,12 +7526,13 @@
- else
- with_broken_linker=${BROKEN_LINKER:-no}
- fi;
--echo "$as_me:6906: result: $with_broken_linker" >&5
-+echo "$as_me:7529: result: $with_broken_linker" >&5
- echo "${ECHO_T}$with_broken_linker" >&6
-
- BROKEN_LINKER=0
--if test "$with_broken_linker" = yes ; then
-- cat >>confdefs.h <<\EOF
-+if test "x$with_broken_linker" = xyes ; then
-+
-+cat >>confdefs.h <<\EOF
- #define BROKEN_LINKER 1
- EOF
-
-@@ -6916,21 +7540,22 @@
- elif test "$DFT_LWR_MODEL" = shared ; then
- case $cf_cv_system_name in #(vi
- cygwin*)
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define BROKEN_LINKER 1
- EOF
-
- BROKEN_LINKER=1
- test -n "$verbose" && echo " cygwin linker is broken anyway" 1>&6
-
--echo "${as_me:-configure}:6926: testing cygwin linker is broken anyway ..." 1>&5
-+echo "${as_me:-configure}:7551: testing cygwin linker is broken anyway ..." 1>&5
-
- ;;
- esac
- fi
-
- ### use option --enable-bsdpad to have tputs process BSD-style prefix padding
--echo "$as_me:6933: checking if tputs should process BSD-style prefix padding" >&5
-+echo "$as_me:7558: 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.
-@@ -6940,9 +7565,10 @@
- else
- with_bsdpad=no
- fi;
--echo "$as_me:6943: result: $with_bsdpad" >&5
-+echo "$as_me:7568: result: $with_bsdpad" >&5
- echo "${ECHO_T}$with_bsdpad" >&6
--test "$with_bsdpad" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_bsdpad" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define BSD_TPUTS 1
- EOF
-
-@@ -6962,10 +7588,10 @@
- cf_xopen_source=
-
- case $host_os in #(vi
--aix[456]*) #(vi
-+aix[4-7]*) #(vi
- cf_xopen_source="-D_ALL_SOURCE"
- ;;
--cygwin) #(vi
-+cygwin|msys) #(vi
- cf_XOPEN_SOURCE=600
- ;;
- darwin[0-8].*) #(vi
-@@ -6973,6 +7599,7 @@
- ;;
- darwin*) #(vi
- cf_xopen_source="-D_DARWIN_C_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- freebsd*|dragonfly*) #(vi
- # 5.x headers associate
-@@ -6990,17 +7617,18 @@
- ;;
- irix[56].*) #(vi
- cf_xopen_source="-D_SGI_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- linux*|gnu*|mint*|k*bsd*-gnu) #(vi
-
--echo "$as_me:6996: checking if we must define _GNU_SOURCE" >&5
-+echo "$as_me:7624: 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 7003 "configure"
-+#line 7631 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -7015,16 +7643,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7018: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:7646: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7021: \$? = $ac_status" >&5
-+ echo "$as_me:7649: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7024: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7652: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7027: \$? = $ac_status" >&5
-+ echo "$as_me:7655: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_gnu_source=no
- else
-@@ -7033,7 +7661,7 @@
- cf_save="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
--#line 7036 "configure"
-+#line 7664 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -7048,16 +7676,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7051: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:7679: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7054: \$? = $ac_status" >&5
-+ echo "$as_me:7682: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7057: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7685: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7060: \$? = $ac_status" >&5
-+ echo "$as_me:7688: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_gnu_source=no
- else
-@@ -7072,51 +7700,48 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:7075: result: $cf_cv_gnu_source" >&5
-+echo "$as_me:7703: result: $cf_cv_gnu_source" >&5
- echo "${ECHO_T}$cf_cv_gnu_source" >&6
- test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
-
- ;;
--mirbsd*) #(vi
-- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h>
-- ;;
--netbsd*) #(vi
-- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
-- ;;
--openbsd*) #(vi
-- # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
-- ;;
--osf[45]*) #(vi
-- cf_xopen_source="-D_OSF_SOURCE"
-- ;;
--nto-qnx*) #(vi
-- cf_xopen_source="-D_QNX_SOURCE"
-- ;;
--sco*) #(vi
-- # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
-- ;;
--solaris2.1[0-9]) #(vi
-- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- ;;
--solaris2.[1-9]) #(vi
-- cf_xopen_source="-D__EXTENSIONS__"
-+minix*) #(vi
-+ cf_xopen_source="-D_NETBSD_SOURCE" # POSIX.1-2001 features are ifdef'd with this...
- ;;
--*)
-- echo "$as_me:7105: 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
-+mirbsd*) #(vi
-+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types
-+ cf_XOPEN_SOURCE=
-+
-+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE
-+
-+cf_save_CFLAGS="$CFLAGS"
-+cf_save_CPPFLAGS="$CPPFLAGS"
-+
-+cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \
-+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-+
-+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:7728: 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}:7734: testing if the symbol is already defined go no further ..." 1>&5
-+
- cat >conftest.$ac_ext <<_ACEOF
--#line 7112 "configure"
-+#line 7737 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
- main ()
- {
-
--#ifndef _XOPEN_SOURCE
-+#ifndef _POSIX_C_SOURCE
- make an error
- #endif
- ;
-@@ -7124,32 +7749,44 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7127: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:7752: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7130: \$? = $ac_status" >&5
-+ echo "$as_me:7755: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7133: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7758: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7136: \$? = $ac_status" >&5
-+ echo "$as_me:7761: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_xopen_source=no
-+ cf_cv_posix_c_source=no
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_save="$CPPFLAGS"
-- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 7145 "configure"
-+cf_want_posix_source=no
-+ case .$cf_POSIX_C_SOURCE in #(vi
-+ .[12]??*) #(vi
-+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
-+ ;;
-+ .2) #(vi
-+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
-+ cf_want_posix_source=yes
-+ ;;
-+ .*)
-+ cf_want_posix_source=yes
-+ ;;
-+ esac
-+ if test "$cf_want_posix_source" = yes ; then
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 7782 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
- main ()
- {
-
--#ifdef _XOPEN_SOURCE
-+#ifdef _POSIX_SOURCE
- make an error
- #endif
- ;
-@@ -7157,50 +7794,87 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7160: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:7797: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7163: \$? = $ac_status" >&5
-+ echo "$as_me:7800: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7166: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7803: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7169: \$? = $ac_status" >&5
-+ echo "$as_me:7806: \$? = $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
--cf_cv_xopen_source=$cf_XOPEN_SOURCE
-+cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS="$cf_save"
-+ fi
-+
-+echo "${as_me:-configure}:7817: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
-+
-+ CFLAGS="$cf_trim_CFLAGS"
-+ CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
-+
-+echo "${as_me:-configure}:7822: testing if the second compile does not leave our definition intact error ..." 1>&5
-
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 7825 "configure"
-+#include "confdefs.h"
-+#include <sys/types.h>
-+int
-+main ()
-+{
-+
-+#ifndef _POSIX_C_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:7840: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:7843: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:7846: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:7849: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ :
-+else
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+cf_cv_posix_c_source=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-+ CFLAGS="$cf_save_CFLAGS"
-+ CPPFLAGS="$cf_save_CPPFLAGS"
-
- fi
--echo "$as_me:7184: result: $cf_cv_xopen_source" >&5
--echo "${ECHO_T}$cf_cv_xopen_source" >&6
-- if test "$cf_cv_xopen_source" != no ; then
--
--CFLAGS=`echo "$CFLAGS" | \
-- sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-- -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-+rm -f conftest.$ac_objext conftest.$ac_ext
-
--CPPFLAGS=`echo "$CPPFLAGS" | \
-- sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-- -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-+fi
-+echo "$as_me:7865: result: $cf_cv_posix_c_source" >&5
-+echo "${ECHO_T}$cf_cv_posix_c_source" >&6
-
-- cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-+if test "$cf_cv_posix_c_source" != no ; then
-+ CFLAGS="$cf_trim_CFLAGS"
-+ CPPFLAGS="$cf_trim_CPPFLAGS"
-
- 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_cv_posix_c_source
- do
- case $cf_fix_cppflags in
- no)
-@@ -7210,7 +7884,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -7251,7 +7925,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -7273,9 +7947,222 @@
- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
-- fi
-+fi
-
--cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE
-+ ;;
-+netbsd*) #(vi
-+ 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]*) #(vi
-+ # 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
-+ ;;
-+openbsd*) #(vi
-+ # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
-+ ;;
-+osf[45]*) #(vi
-+ cf_xopen_source="-D_OSF_SOURCE"
-+ ;;
-+nto-qnx*) #(vi
-+ cf_xopen_source="-D_QNX_SOURCE"
-+ ;;
-+sco*) #(vi
-+ # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
-+ ;;
-+solaris2.*) #(vi
-+ cf_xopen_source="-D__EXTENSIONS__"
-+ cf_cv_xopen_source=broken
-+ ;;
-+sysv4.2uw2.*) # Novell/SCO UnixWare 2.x (tested on 2.1.2)
-+ cf_XOPEN_SOURCE=
-+ cf_POSIX_C_SOURCE=
-+ ;;
-+*)
-+
-+echo "$as_me:7983: 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 7990 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+
-+int
-+main ()
-+{
-+
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8009: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8012: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8015: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8018: \$? = $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
-+cf_save="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 8027 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+
-+int
-+main ()
-+{
-+
-+#ifdef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8046: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8049: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8052: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8055: \$? = $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
-+cf_cv_xopen_source=$cf_XOPEN_SOURCE
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS="$cf_save"
-+
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+echo "$as_me:8070: result: $cf_cv_xopen_source" >&5
-+echo "${ECHO_T}$cf_cv_xopen_source" >&6
-+
-+if test "$cf_cv_xopen_source" != no ; then
-+
-+CFLAGS=`echo "$CFLAGS" | \
-+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-+
-+CPPFLAGS=`echo "$CPPFLAGS" | \
-+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-+
-+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_temp_xopen_source
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+fi
-+
-+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE
-
- cf_save_CFLAGS="$CFLAGS"
- cf_save_CPPFLAGS="$CPPFLAGS"
-@@ -7288,16 +8175,16 @@
- sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
- -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-
--echo "$as_me:7291: checking if we should define _POSIX_C_SOURCE" >&5
-+echo "$as_me:8178: 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}:7297: testing if the symbol is already defined go no further ..." 1>&5
-+echo "${as_me:-configure}:8184: testing if the symbol is already defined go no further ..." 1>&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 7300 "configure"
-+#line 8187 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -7312,16 +8199,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7315: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8202: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7318: \$? = $ac_status" >&5
-+ echo "$as_me:8205: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7321: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8208: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7324: \$? = $ac_status" >&5
-+ echo "$as_me:8211: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_posix_c_source=no
- else
-@@ -7342,7 +8229,7 @@
- esac
- if test "$cf_want_posix_source" = yes ; then
- cat >conftest.$ac_ext <<_ACEOF
--#line 7345 "configure"
-+#line 8232 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -7357,16 +8244,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7360: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8247: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7363: \$? = $ac_status" >&5
-+ echo "$as_me:8250: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7366: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8253: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7369: \$? = $ac_status" >&5
-+ echo "$as_me:8256: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -7377,22 +8264,373 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
-
--echo "${as_me:-configure}:7380: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
-+echo "${as_me:-configure}:8267: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
-
- CFLAGS="$cf_trim_CFLAGS"
- CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
-
--echo "${as_me:-configure}:7385: testing if the second compile does not leave our definition intact error ..." 1>&5
-+echo "${as_me:-configure}:8272: testing if the second compile does not leave our definition intact error ..." 1>&5
-+
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 8275 "configure"
-+#include "confdefs.h"
-+#include <sys/types.h>
-+int
-+main ()
-+{
-+
-+#ifndef _POSIX_C_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8290: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8293: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8296: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8299: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ :
-+else
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+cf_cv_posix_c_source=no
-+fi
-+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
-+
-+fi
-+echo "$as_me:8315: 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
-+ CFLAGS="$cf_trim_CFLAGS"
-+ CPPFLAGS="$cf_trim_CPPFLAGS"
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_cv_posix_c_source
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+fi
-+
-+ ;;
-+esac
-+
-+if test -n "$cf_xopen_source" ; then
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_xopen_source
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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 "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-+
-+echo "${as_me:-configure}:8473: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+ test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-+
-+echo "${as_me:-configure}:8481: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+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}:8489: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+fi
-+
-+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
-+ echo "$as_me:8497: 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 8500 "configure"
-+#include "confdefs.h"
-+#include <stdlib.h>
-+int
-+main ()
-+{
-+
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8515: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8518: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8521: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8524: \$? = $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
-+cf_XOPEN_SOURCE_set=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ echo "$as_me:8533: result: $cf_XOPEN_SOURCE_set" >&5
-+echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6
-+ if test $cf_XOPEN_SOURCE_set = yes
-+ then
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 8538 "configure"
-+#include "confdefs.h"
-+#include <stdlib.h>
-+int
-+main ()
-+{
-
-+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8553: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8556: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8559: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8562: \$? = $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
-+cf_XOPEN_SOURCE_set_ok=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ if test $cf_XOPEN_SOURCE_set_ok = no
-+ then
-+ { echo "$as_me:8573: WARNING: _XOPEN_SOURCE is lower than requested" >&5
-+echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;}
-+ fi
-+ else
-+
-+echo "$as_me:8578: 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 8585 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+
-+int
-+main ()
-+{
-+
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8604: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8607: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8610: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8613: \$? = $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
-+cf_save="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
- cat >conftest.$ac_ext <<_ACEOF
--#line 7388 "configure"
-+#line 8622 "configure"
- #include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
- #include <sys/types.h>
-+
- int
- main ()
- {
-
--#ifndef _POSIX_C_SOURCE
-+#ifdef _XOPEN_SOURCE
- make an error
- #endif
- ;
-@@ -7400,129 +8638,51 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7403: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8641: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7406: \$? = $ac_status" >&5
-+ echo "$as_me:8644: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7409: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8647: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7412: \$? = $ac_status" >&5
-+ echo "$as_me:8650: \$? = $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
--cf_cv_posix_c_source=no
-+cf_cv_xopen_source=$cf_XOPEN_SOURCE
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-- CFLAGS="$cf_save_CFLAGS"
-- CPPFLAGS="$cf_save_CPPFLAGS"
-+ CPPFLAGS="$cf_save"
-
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:7428: 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
-- CFLAGS="$cf_trim_CFLAGS"
-- CPPFLAGS="$cf_trim_CPPFLAGS"
--
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
--
--for cf_add_cflags in $cf_cv_posix_c_source
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-+echo "$as_me:8665: result: $cf_cv_xopen_source" >&5
-+echo "${ECHO_T}$cf_cv_xopen_source" >&6
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
-+if test "$cf_cv_xopen_source" != no ; then
-
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -D*)
-- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
-+CFLAGS=`echo "$CFLAGS" | \
-+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-
- CPPFLAGS=`echo "$CPPFLAGS" | \
-- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
-- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
--
-- ;;
-- esac
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
--
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
--
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
--
--if test -n "$cf_new_extra_cppflags" ; then
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
--fi
--
--fi
--
-- ;;
--esac
-+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-
--if test -n "$cf_xopen_source" ; then
-+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-
- 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_temp_xopen_source
- do
- case $cf_fix_cppflags in
- no)
-@@ -7532,7 +8692,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -7573,7 +8733,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -7597,16 +8757,19 @@
-
- fi
-
-+ fi
-+fi
-+
- # Work around breakage on OS X
-
--echo "$as_me:7602: checking if SIGWINCH is defined" >&5
-+echo "$as_me:8765: 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 7609 "configure"
-+#line 8772 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -7621,23 +8784,23 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7624: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8787: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7627: \$? = $ac_status" >&5
-+ echo "$as_me:8790: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7630: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8793: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7633: \$? = $ac_status" >&5
-+ echo "$as_me:8796: \$? = $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 7640 "configure"
-+#line 8803 "configure"
- #include "confdefs.h"
-
- #undef _XOPEN_SOURCE
-@@ -7655,16 +8818,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7658: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8821: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7661: \$? = $ac_status" >&5
-+ echo "$as_me:8824: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7664: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8827: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7667: \$? = $ac_status" >&5
-+ echo "$as_me:8830: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_define_sigwinch=maybe
- else
-@@ -7678,11 +8841,11 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:7681: result: $cf_cv_define_sigwinch" >&5
-+echo "$as_me:8844: 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:7685: checking for actual SIGWINCH definition" >&5
-+echo "$as_me:8848: 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
-@@ -7693,7 +8856,7 @@
- while test $cf_sigwinch != 1
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 7696 "configure"
-+#line 8859 "configure"
- #include "confdefs.h"
-
- #undef _XOPEN_SOURCE
-@@ -7715,16 +8878,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7718: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8881: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7721: \$? = $ac_status" >&5
-+ echo "$as_me:8884: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7724: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8887: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7727: \$? = $ac_status" >&5
-+ echo "$as_me:8890: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_fixup_sigwinch=$cf_sigwinch
- break
-@@ -7738,7 +8901,7 @@
- done
-
- fi
--echo "$as_me:7741: result: $cf_cv_fixup_sigwinch" >&5
-+echo "$as_me:8904: result: $cf_cv_fixup_sigwinch" >&5
- echo "${ECHO_T}$cf_cv_fixup_sigwinch" >&6
-
- if test "$cf_cv_fixup_sigwinch" != unknown ; then
-@@ -7748,13 +8911,13 @@
-
- # Checks for CODESET support.
-
-- echo "$as_me:7751: checking for nl_langinfo and CODESET" >&5
-+ echo "$as_me:8914: 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 7757 "configure"
-+#line 8920 "configure"
- #include "confdefs.h"
- #include <langinfo.h>
- int
-@@ -7766,16 +8929,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7769: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:8932: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:7772: \$? = $ac_status" >&5
-+ echo "$as_me:8935: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7775: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8938: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7778: \$? = $ac_status" >&5
-+ echo "$as_me:8941: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- am_cv_langinfo_codeset=yes
- else
-@@ -7786,7 +8949,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-
- fi
--echo "$as_me:7789: result: $am_cv_langinfo_codeset" >&5
-+echo "$as_me:8952: result: $am_cv_langinfo_codeset" >&5
- echo "${ECHO_T}$am_cv_langinfo_codeset" >&6
- if test $am_cv_langinfo_codeset = yes; then
-
-@@ -7800,7 +8963,7 @@
- NCURSES_OK_WCHAR_T=
- NCURSES_OK_WINT_T=
-
--echo "$as_me:7803: checking if you want wide-character code" >&5
-+echo "$as_me:8966: 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.
-@@ -7810,23 +8973,74 @@
- else
- with_widec=no
- fi;
--echo "$as_me:7813: result: $with_widec" >&5
-+echo "$as_me:8976: result: $with_widec" >&5
- echo "${ECHO_T}$with_widec" >&6
--if test "$with_widec" = yes ; then
-- LIB_SUFFIX="w${LIB_SUFFIX}"
-- cat >>confdefs.h <<\EOF
-+if test "x$with_widec" = xyes ; then
-+ if test "x$disable_lib_suffixes" = xno ; then
-+ LIB_SUFFIX="w${LIB_SUFFIX}"
-+ fi
-+
-+cat >>confdefs.h <<\EOF
- #define USE_WIDEC_SUPPORT 1
- EOF
-
-- case "$CFLAGS $CPPFLAGS" in #(vi
-- *-D_XOPEN_SOURCE=500) #(vi
-- ;;
-- *)
-+cat >>confdefs.h <<\EOF
-+#define NCURSES_WIDECHAR 1
-+EOF
-+
-+echo "$as_me:8991: 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 8998 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <wchar.h>
-+
-+int
-+main ()
-+{
-+
-+ wint_t foo = 0;
-+ int bar = iswpunct(foo)
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:9015: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9018: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:9021: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9024: \$? = $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
-+cf_cv_wchar_h_okay=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+fi
-+echo "$as_me:9034: result: $cf_cv_wchar_h_okay" >&5
-+echo "${ECHO_T}$cf_cv_wchar_h_okay" >&6
-+
-+if test $cf_cv_wchar_h_okay = no
-+then
-
--echo "$as_me:7826: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
-+echo "$as_me:9040: 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 7829 "configure"
-+#line 9043 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
-
-@@ -7842,16 +9056,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7845: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9059: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7848: \$? = $ac_status" >&5
-+ echo "$as_me:9062: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7851: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9065: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7854: \$? = $ac_status" >&5
-+ echo "$as_me:9068: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_result=no
- else
-@@ -7860,16 +9074,16 @@
- cf_result=yes
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
--echo "$as_me:7863: result: $cf_result" >&5
-+echo "$as_me:9077: 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:7869: checking checking for compatible value versus " >&5
-+ echo "$as_me:9083: 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 7872 "configure"
-+#line 9086 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
-
-@@ -7885,16 +9099,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7888: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9102: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7891: \$? = $ac_status" >&5
-+ echo "$as_me:9105: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7894: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9108: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7897: \$? = $ac_status" >&5
-+ echo "$as_me:9111: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_result=yes
- else
-@@ -7903,7 +9117,7 @@
- cf_result=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-- echo "$as_me:7906: result: $cf_result" >&5
-+ echo "$as_me:9120: result: $cf_result" >&5
- echo "${ECHO_T}$cf_result" >&6
- if test "$cf_result" = no ; then
- # perhaps we can override it - try...
-@@ -7911,8 +9125,7 @@
- fi
- fi
-
-- ;;
-- esac
-+fi
-
- # with_overwrite=no
- NCURSES_CH_T=cchar_t
-@@ -7920,13 +9133,13 @@
- 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:7923: checking for $ac_func" >&5
-+echo "$as_me:9136: 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 7929 "configure"
-+#line 9142 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below. */
-@@ -7949,7 +9162,7 @@
- #if defined (__stub_$ac_func) || defined (__stub___$ac_func)
- choke me
- #else
--f = $ac_func;
-+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -7957,16 +9170,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7960: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9173: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:7963: \$? = $ac_status" >&5
-+ echo "$as_me:9176: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7966: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9179: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7969: \$? = $ac_status" >&5
-+ echo "$as_me:9182: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_var=yes"
- else
-@@ -7976,7 +9189,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:7979: result: `eval echo '${'$as_ac_var'}'`" >&5
-+echo "$as_me:9192: 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
-@@ -7986,9 +9199,9 @@
- fi
- done
-
-- if test "$ac_cv_func_putwc" != yes ; then
-+ if test "x$ac_cv_func_putwc" != xyes ; then
-
--echo "$as_me:7991: checking for multibyte character support" >&5
-+echo "$as_me:9204: 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
-@@ -7996,7 +9209,7 @@
-
- cf_save_LIBS="$LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 7999 "configure"
-+#line 9212 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -8009,16 +9222,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8012: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9225: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8015: \$? = $ac_status" >&5
-+ echo "$as_me:9228: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8018: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9231: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8021: \$? = $ac_status" >&5
-+ echo "$as_me:9234: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_utf8_lib=yes
- else
-@@ -8030,12 +9243,12 @@
- cf_cv_header_path_utf8=
- cf_cv_library_path_utf8=
-
--echo "${as_me:-configure}:8033: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
-+echo "${as_me:-configure}:9246: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
-
- cf_save_LIBS="$LIBS"
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 8038 "configure"
-+#line 9251 "configure"
- #include "confdefs.h"
-
- #include <libutf8.h>
-@@ -8048,16 +9261,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8051: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9264: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8054: \$? = $ac_status" >&5
-+ echo "$as_me:9267: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8057: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9270: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8060: \$? = $ac_status" >&5
-+ echo "$as_me:9273: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_find_linkage_utf8=yes
-@@ -8071,7 +9284,7 @@
- LIBS="-lutf8 $cf_save_LIBS"
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 8074 "configure"
-+#line 9287 "configure"
- #include "confdefs.h"
-
- #include <libutf8.h>
-@@ -8084,16 +9297,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8087: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9300: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8090: \$? = $ac_status" >&5
-+ echo "$as_me:9303: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8093: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9306: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8096: \$? = $ac_status" >&5
-+ echo "$as_me:9309: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_find_linkage_utf8=yes
-@@ -8110,9 +9323,9 @@
-
- test -n "$verbose" && echo " find linkage for utf8 library" 1>&6
-
--echo "${as_me:-configure}:8113: testing find linkage for utf8 library ..." 1>&5
-+echo "${as_me:-configure}:9326: testing find linkage for utf8 library ..." 1>&5
-
--echo "${as_me:-configure}:8115: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
-+echo "${as_me:-configure}:9328: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
-
- cf_save_CPPFLAGS="$CPPFLAGS"
- cf_test_CPPFLAGS="$CPPFLAGS"
-@@ -8128,7 +9341,7 @@
- -I*)
- cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
-
--test "$cf_header_path" != "NONE" && \
-+test "x$cf_header_path" != "xNONE" && \
- test -d "$cf_header_path" && \
- {
- test -n "$verbose" && echo " ... testing for include-directories under $cf_header_path"
-@@ -8149,18 +9362,7 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr"
-- test -d /usr/include && cf_search="$cf_search /usr/include"
-- test -d /usr/include/utf8 && cf_search="$cf_search /usr/include/utf8"
-- test -d /usr/include/utf8/include && cf_search="$cf_search /usr/include/utf8/include"
-- test -d /usr/utf8/include && cf_search="$cf_search /usr/utf8/include"
-- test -d /usr/utf8/include/utf8 && cf_search="$cf_search /usr/utf8/include/utf8"
--}
--
--test "$prefix" != "NONE" && \
-+test "x$prefix" != "xNONE" && \
- test -d "$prefix" && \
- {
- test -n "$verbose" && echo " ... testing for include-directories under $prefix"
-@@ -8171,39 +9373,28 @@
- test -d $prefix/utf8/include/utf8 && cf_search="$cf_search $prefix/utf8/include/utf8"
- }
-
--test "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr/local"
-- test -d /usr/local/include && cf_search="$cf_search /usr/local/include"
-- test -d /usr/local/include/utf8 && cf_search="$cf_search /usr/local/include/utf8"
-- test -d /usr/local/include/utf8/include && cf_search="$cf_search /usr/local/include/utf8/include"
-- test -d /usr/local/utf8/include && cf_search="$cf_search /usr/local/utf8/include"
-- test -d /usr/local/utf8/include/utf8 && cf_search="$cf_search /usr/local/utf8/include/utf8"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /opt"
-- test -d /opt/include && cf_search="$cf_search /opt/include"
-- test -d /opt/include/utf8 && cf_search="$cf_search /opt/include/utf8"
-- test -d /opt/include/utf8/include && cf_search="$cf_search /opt/include/utf8/include"
-- test -d /opt/utf8/include && cf_search="$cf_search /opt/utf8/include"
-- test -d /opt/utf8/include/utf8 && cf_search="$cf_search /opt/utf8/include/utf8"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under $HOME"
-- test -d $HOME/include && cf_search="$cf_search $HOME/include"
-- test -d $HOME/include/utf8 && cf_search="$cf_search $HOME/include/utf8"
-- test -d $HOME/include/utf8/include && cf_search="$cf_search $HOME/include/utf8/include"
-- test -d $HOME/utf8/include && cf_search="$cf_search $HOME/utf8/include"
-- test -d $HOME/utf8/include/utf8 && cf_search="$cf_search $HOME/utf8/include/utf8"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+done
-+
- test "$includedir" != NONE && \
- test "$includedir" != "/usr/include" && \
- test -d "$includedir" && {
-@@ -8225,11 +9416,11 @@
- 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}:8228: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
-+echo "${as_me:-configure}:9419: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
-
- CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_utf8"
- cat >conftest.$ac_ext <<_ACEOF
--#line 8232 "configure"
-+#line 9423 "configure"
- #include "confdefs.h"
-
- #include <libutf8.h>
-@@ -8242,21 +9433,21 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8245: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9436: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8248: \$? = $ac_status" >&5
-+ echo "$as_me:9439: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8251: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9442: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8254: \$? = $ac_status" >&5
-+ echo "$as_me:9445: \$? = $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}:8259: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
-+echo "${as_me:-configure}:9450: testing ... found utf8 headers in $cf_cv_header_path_utf8 ..." 1>&5
-
- cf_cv_find_linkage_utf8=maybe
- cf_test_CPPFLAGS="$CPPFLAGS"
-@@ -8274,7 +9465,7 @@
-
- if test "$cf_cv_find_linkage_utf8" = maybe ; then
-
--echo "${as_me:-configure}:8277: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
-+echo "${as_me:-configure}:9468: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
-
- cf_save_LIBS="$LIBS"
- cf_save_LDFLAGS="$LDFLAGS"
-@@ -8290,7 +9481,7 @@
- -L*)
- cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
-
--test "$cf_library_path" != "NONE" && \
-+test "x$cf_library_path" != "xNONE" && \
- test -d "$cf_library_path" && \
- {
- test -n "$verbose" && echo " ... testing for lib-directories under $cf_library_path"
-@@ -8309,18 +9500,7 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr"
-- test -d /usr/lib && cf_search="$cf_search /usr/lib"
-- test -d /usr/lib/utf8 && cf_search="$cf_search /usr/lib/utf8"
-- test -d /usr/lib/utf8/lib && cf_search="$cf_search /usr/lib/utf8/lib"
-- test -d /usr/utf8/lib && cf_search="$cf_search /usr/utf8/lib"
-- test -d /usr/utf8/lib/utf8 && cf_search="$cf_search /usr/utf8/lib/utf8"
--}
--
--test "$prefix" != "NONE" && \
-+test "x$prefix" != "xNONE" && \
- test -d "$prefix" && \
- {
- test -n "$verbose" && echo " ... testing for lib-directories under $prefix"
-@@ -8331,39 +9511,28 @@
- test -d $prefix/utf8/lib/utf8 && cf_search="$cf_search $prefix/utf8/lib/utf8"
- }
-
--test "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr/local"
-- test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib"
-- test -d /usr/local/lib/utf8 && cf_search="$cf_search /usr/local/lib/utf8"
-- test -d /usr/local/lib/utf8/lib && cf_search="$cf_search /usr/local/lib/utf8/lib"
-- test -d /usr/local/utf8/lib && cf_search="$cf_search /usr/local/utf8/lib"
-- test -d /usr/local/utf8/lib/utf8 && cf_search="$cf_search /usr/local/utf8/lib/utf8"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /opt"
-- test -d /opt/lib && cf_search="$cf_search /opt/lib"
-- test -d /opt/lib/utf8 && cf_search="$cf_search /opt/lib/utf8"
-- test -d /opt/lib/utf8/lib && cf_search="$cf_search /opt/lib/utf8/lib"
-- test -d /opt/utf8/lib && cf_search="$cf_search /opt/utf8/lib"
-- test -d /opt/utf8/lib/utf8 && cf_search="$cf_search /opt/utf8/lib/utf8"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under $HOME"
-- test -d $HOME/lib && cf_search="$cf_search $HOME/lib"
-- test -d $HOME/lib/utf8 && cf_search="$cf_search $HOME/lib/utf8"
-- test -d $HOME/lib/utf8/lib && cf_search="$cf_search $HOME/lib/utf8/lib"
-- test -d $HOME/utf8/lib && cf_search="$cf_search $HOME/utf8/lib"
-- test -d $HOME/utf8/lib/utf8 && cf_search="$cf_search $HOME/utf8/lib/utf8"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+done
-+
- cf_search="$cf_library_path_list $cf_search"
-
- for cf_cv_library_path_utf8 in $cf_search
-@@ -8371,13 +9540,13 @@
- 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}:8374: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
-+echo "${as_me:-configure}:9543: 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 8380 "configure"
-+#line 9549 "configure"
- #include "confdefs.h"
-
- #include <libutf8.h>
-@@ -8390,21 +9559,21 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8393: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9562: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8396: \$? = $ac_status" >&5
-+ echo "$as_me:9565: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8399: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9568: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8402: \$? = $ac_status" >&5
-+ echo "$as_me:9571: \$? = $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}:8407: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
-+echo "${as_me:-configure}:9576: testing ... found utf8 library in $cf_cv_library_path_utf8 ..." 1>&5
-
- cf_cv_find_linkage_utf8=yes
- cf_cv_library_file_utf8="-lutf8"
-@@ -8446,13 +9615,14 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:8449: result: $cf_cv_utf8_lib" >&5
-+echo "$as_me:9618: 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
- # ncurses/ncursesw:
- if test "$cf_cv_utf8_lib" = "add-on" ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_LIBUTF8_H 1
- EOF
-
-@@ -8480,7 +9650,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 8483 "configure"
-+#line 9653 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -8492,16 +9662,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8495: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9665: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8498: \$? = $ac_status" >&5
-+ echo "$as_me:9668: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8501: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9671: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8504: \$? = $ac_status" >&5
-+ echo "$as_me:9674: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -8518,7 +9688,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:8521: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:9691: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -8552,7 +9722,7 @@
- if test "$cf_have_libdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-
--echo "${as_me:-configure}:8555: testing adding $cf_add_libdir to library-path ..." 1>&5
-+echo "${as_me:-configure}:9725: testing adding $cf_add_libdir to library-path ..." 1>&5
-
- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
- fi
-@@ -8560,7 +9730,22 @@
- done
- fi
-
-- LIBS="$cf_cv_library_file_utf8 $LIBS"
-+cf_add_libs="$cf_cv_library_file_utf8"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- fi
-
- if test "$cf_cv_utf8_lib" != no ; then
-@@ -8569,14 +9754,14 @@
- fi
-
- # This is needed on Tru64 5.0 to declare mbstate_t
--echo "$as_me:8572: checking if we must include wchar.h to declare mbstate_t" >&5
-+echo "$as_me:9757: 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 8579 "configure"
-+#line 9764 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -8594,23 +9779,23 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8597: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9782: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8600: \$? = $ac_status" >&5
-+ echo "$as_me:9785: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8603: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9788: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8606: \$? = $ac_status" >&5
-+ echo "$as_me:9791: \$? = $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 8613 "configure"
-+#line 9798 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -8629,16 +9814,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8632: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9817: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8635: \$? = $ac_status" >&5
-+ echo "$as_me:9820: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8638: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9823: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8641: \$? = $ac_status" >&5
-+ echo "$as_me:9826: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_mbstate_t=yes
- else
-@@ -8650,11 +9835,12 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:8653: result: $cf_cv_mbstate_t" >&5
-+echo "$as_me:9838: result: $cf_cv_mbstate_t" >&5
- echo "${ECHO_T}$cf_cv_mbstate_t" >&6
-
- if test "$cf_cv_mbstate_t" = yes ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define NEED_WCHAR_H 1
- EOF
-
-@@ -8667,14 +9853,14 @@
- fi
-
- # This is needed on Tru64 5.0 to declare wchar_t
--echo "$as_me:8670: checking if we must include wchar.h to declare wchar_t" >&5
-+echo "$as_me:9856: 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 8677 "configure"
-+#line 9863 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -8692,23 +9878,23 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8695: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9881: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8698: \$? = $ac_status" >&5
-+ echo "$as_me:9884: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8701: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9887: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8704: \$? = $ac_status" >&5
-+ echo "$as_me:9890: \$? = $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 8711 "configure"
-+#line 9897 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -8727,16 +9913,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8730: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9916: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8733: \$? = $ac_status" >&5
-+ echo "$as_me:9919: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8736: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9922: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8739: \$? = $ac_status" >&5
-+ echo "$as_me:9925: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_wchar_t=yes
- else
-@@ -8748,11 +9934,12 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:8751: result: $cf_cv_wchar_t" >&5
-+echo "$as_me:9937: result: $cf_cv_wchar_t" >&5
- echo "${ECHO_T}$cf_cv_wchar_t" >&6
-
- if test "$cf_cv_wchar_t" = yes ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define NEED_WCHAR_H 1
- EOF
-
-@@ -8770,14 +9957,14 @@
- fi
-
- # This is needed on Tru64 5.0 to declare wint_t
--echo "$as_me:8773: checking if we must include wchar.h to declare wint_t" >&5
-+echo "$as_me:9960: 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 8780 "configure"
-+#line 9967 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -8795,23 +9982,23 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8798: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:9985: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8801: \$? = $ac_status" >&5
-+ echo "$as_me:9988: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8804: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9991: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8807: \$? = $ac_status" >&5
-+ echo "$as_me:9994: \$? = $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 8814 "configure"
-+#line 10001 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -8830,16 +10017,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8833: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10020: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8836: \$? = $ac_status" >&5
-+ echo "$as_me:10023: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8839: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10026: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8842: \$? = $ac_status" >&5
-+ echo "$as_me:10029: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_wint_t=yes
- else
-@@ -8851,11 +10038,12 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:8854: result: $cf_cv_wint_t" >&5
-+echo "$as_me:10041: result: $cf_cv_wint_t" >&5
- echo "${ECHO_T}$cf_cv_wint_t" >&6
-
- if test "$cf_cv_wint_t" = yes ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define NEED_WCHAR_H 1
- EOF
-
-@@ -8873,7 +10061,8 @@
- fi
-
- if test "$NCURSES_MBSTATE_T" != 0; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define NEED_MBSTATE_T_DEF 1
- EOF
-
-@@ -8890,7 +10079,7 @@
- ;;
- esac
-
--echo "$as_me:8893: checking whether to enable _LP64 definition in curses.h" >&5
-+echo "$as_me:10082: 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.
-@@ -8900,10 +10089,10 @@
- else
- with_lp64=$default_with_lp64
- fi;
--echo "$as_me:8903: result: $with_lp64" >&5
-+echo "$as_me:10092: result: $with_lp64" >&5
- echo "${ECHO_T}$with_lp64" >&6
-
--if test "$with_lp64" = yes ; then
-+if test "x$with_lp64" = xyes ; then
- cf_cv_enable_lp64=1
- else
- cf_cv_enable_lp64=0
-@@ -8916,7 +10105,7 @@
- fi;
- if test "$enable_largefile" != no; then
-
-- echo "$as_me:8919: checking for special C compiler options needed for large files" >&5
-+ echo "$as_me:10108: 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
-@@ -8928,7 +10117,7 @@
- # 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 8931 "configure"
-+#line 10120 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-@@ -8948,16 +10137,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8951: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10140: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8954: \$? = $ac_status" >&5
-+ echo "$as_me:10143: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8957: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10146: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8960: \$? = $ac_status" >&5
-+ echo "$as_me:10149: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -8967,16 +10156,16 @@
- rm -f conftest.$ac_objext
- CC="$CC -n32"
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8970: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10159: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:8973: \$? = $ac_status" >&5
-+ echo "$as_me:10162: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8976: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10165: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8979: \$? = $ac_status" >&5
-+ echo "$as_me:10168: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_sys_largefile_CC=' -n32'; break
- else
-@@ -8990,13 +10179,13 @@
- rm -f conftest.$ac_ext
- fi
- fi
--echo "$as_me:8993: result: $ac_cv_sys_largefile_CC" >&5
-+echo "$as_me:10182: 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:8999: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-+ echo "$as_me:10188: 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
-@@ -9004,7 +10193,7 @@
- while :; do
- ac_cv_sys_file_offset_bits=no
- cat >conftest.$ac_ext <<_ACEOF
--#line 9007 "configure"
-+#line 10196 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-@@ -9024,16 +10213,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:9027: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10216: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9030: \$? = $ac_status" >&5
-+ echo "$as_me:10219: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:9033: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10222: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9036: \$? = $ac_status" >&5
-+ echo "$as_me:10225: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -9042,7 +10231,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 9045 "configure"
-+#line 10234 "configure"
- #include "confdefs.h"
- #define _FILE_OFFSET_BITS 64
- #include <sys/types.h>
-@@ -9063,16 +10252,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:9066: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10255: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9069: \$? = $ac_status" >&5
-+ echo "$as_me:10258: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:9072: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10261: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9075: \$? = $ac_status" >&5
-+ echo "$as_me:10264: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_sys_file_offset_bits=64; break
- else
-@@ -9083,7 +10272,7 @@
- break
- done
- fi
--echo "$as_me:9086: result: $ac_cv_sys_file_offset_bits" >&5
-+echo "$as_me:10275: 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
-
-@@ -9093,7 +10282,7 @@
-
- fi
- rm -rf conftest*
-- echo "$as_me:9096: checking for _LARGE_FILES value needed for large files" >&5
-+ echo "$as_me:10285: 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
-@@ -9101,7 +10290,7 @@
- while :; do
- ac_cv_sys_large_files=no
- cat >conftest.$ac_ext <<_ACEOF
--#line 9104 "configure"
-+#line 10293 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-@@ -9121,16 +10310,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:9124: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10313: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9127: \$? = $ac_status" >&5
-+ echo "$as_me:10316: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:9130: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10319: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9133: \$? = $ac_status" >&5
-+ echo "$as_me:10322: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -9139,7 +10328,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 9142 "configure"
-+#line 10331 "configure"
- #include "confdefs.h"
- #define _LARGE_FILES 1
- #include <sys/types.h>
-@@ -9160,16 +10349,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:9163: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10352: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9166: \$? = $ac_status" >&5
-+ echo "$as_me:10355: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:9169: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10358: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9172: \$? = $ac_status" >&5
-+ echo "$as_me:10361: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_sys_large_files=1; break
- else
-@@ -9180,7 +10369,7 @@
- break
- done
- fi
--echo "$as_me:9183: result: $ac_cv_sys_large_files" >&5
-+echo "$as_me:10372: 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
-
-@@ -9193,7 +10382,7 @@
- fi
-
- if test "$enable_largefile" != no ; then
-- echo "$as_me:9196: checking for _LARGEFILE_SOURCE value needed for large files" >&5
-+ echo "$as_me:10385: 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
-@@ -9201,7 +10390,7 @@
- while :; do
- ac_cv_sys_largefile_source=no
- cat >conftest.$ac_ext <<_ACEOF
--#line 9204 "configure"
-+#line 10393 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -9213,16 +10402,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:9216: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10405: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9219: \$? = $ac_status" >&5
-+ echo "$as_me:10408: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:9222: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10411: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9225: \$? = $ac_status" >&5
-+ echo "$as_me:10414: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -9231,7 +10420,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 9234 "configure"
-+#line 10423 "configure"
- #include "confdefs.h"
- #define _LARGEFILE_SOURCE 1
- #include <stdio.h>
-@@ -9244,16 +10433,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:9247: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10436: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9250: \$? = $ac_status" >&5
-+ echo "$as_me:10439: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:9253: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10442: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9256: \$? = $ac_status" >&5
-+ echo "$as_me:10445: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_sys_largefile_source=1; break
- else
-@@ -9264,7 +10453,7 @@
- break
- done
- fi
--echo "$as_me:9267: result: $ac_cv_sys_largefile_source" >&5
-+echo "$as_me:10456: 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
-
-@@ -9278,13 +10467,13 @@
- # 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:9281: checking for fseeko" >&5
-+echo "$as_me:10470: 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 9287 "configure"
-+#line 10476 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -9296,16 +10485,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9299: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:10488: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9302: \$? = $ac_status" >&5
-+ echo "$as_me:10491: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9305: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10494: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9308: \$? = $ac_status" >&5
-+ echo "$as_me:10497: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_fseeko=yes
- else
-@@ -9315,7 +10504,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:9318: result: $ac_cv_func_fseeko" >&5
-+echo "$as_me:10507: result: $ac_cv_func_fseeko" >&5
- echo "${ECHO_T}$ac_cv_func_fseeko" >&6
- if test $ac_cv_func_fseeko = yes; then
-
-@@ -9336,14 +10525,14 @@
- test "$ac_cv_sys_largefile_source" != no && CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE "
- test "$ac_cv_sys_file_offset_bits" != no && CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits "
-
-- echo "$as_me:9339: checking whether to use struct dirent64" >&5
-+ echo "$as_me:10528: 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 9346 "configure"
-+#line 10535 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -9364,16 +10553,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:9367: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:10556: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:9370: \$? = $ac_status" >&5
-+ echo "$as_me:10559: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:9373: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10562: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9376: \$? = $ac_status" >&5
-+ echo "$as_me:10565: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_struct_dirent64=yes
- else
-@@ -9384,16 +10573,17 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:9387: result: $cf_cv_struct_dirent64" >&5
-+echo "$as_me:10576: result: $cf_cv_struct_dirent64" >&5
- echo "${ECHO_T}$cf_cv_struct_dirent64" >&6
-- test "$cf_cv_struct_dirent64" = yes && cat >>confdefs.h <<\EOF
-+ test "$cf_cv_struct_dirent64" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_STRUCT_DIRENT64 1
- EOF
-
- fi
-
- ### use option --disable-tparm-varargs to make tparm() conform to X/Open
--echo "$as_me:9396: checking if you want tparm not to use X/Open fixed-parameter list" >&5
-+echo "$as_me:10586: 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.
-@@ -9403,14 +10593,14 @@
- else
- with_tparm_varargs=yes
- fi;
--echo "$as_me:9406: result: $with_tparm_varargs" >&5
-+echo "$as_me:10596: result: $with_tparm_varargs" >&5
- echo "${ECHO_T}$with_tparm_varargs" >&6
- NCURSES_TPARM_VARARGS=0
--test "$with_tparm_varargs" = yes && NCURSES_TPARM_VARARGS=1
-+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:9413: checking if you want tic library to use explicit dependency on ncurses$LIB_SUFFIX library" >&5
-+echo "$as_me:10603: 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.
-@@ -9420,14 +10610,14 @@
- else
- with_tic_depends=yes
- fi;
--echo "$as_me:9423: result: $with_tic_depends" >&5
-+echo "$as_me:10613: result: $with_tic_depends" >&5
- echo "${ECHO_T}$with_tic_depends" >&6
- else
- with_tic_depends=no
- fi
-
- ### use option --with-bool to override bool's type
--echo "$as_me:9430: checking for type of bool" >&5
-+echo "$as_me:10620: 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.
-@@ -9437,10 +10627,10 @@
- else
- NCURSES_BOOL=auto
- fi;
--echo "$as_me:9440: result: $NCURSES_BOOL" >&5
-+echo "$as_me:10630: result: $NCURSES_BOOL" >&5
- echo "${ECHO_T}$NCURSES_BOOL" >&6
-
--echo "$as_me:9443: checking for alternate terminal capabilities file" >&5
-+echo "$as_me:10633: 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.
-@@ -9451,11 +10641,11 @@
- TERMINFO_CAPS=Caps
- fi;
- test -f "${srcdir}/include/${TERMINFO_CAPS}" || TERMINFO_CAPS=Caps
--echo "$as_me:9454: result: $TERMINFO_CAPS" >&5
-+echo "$as_me:10644: result: $TERMINFO_CAPS" >&5
- echo "${ECHO_T}$TERMINFO_CAPS" >&6
-
- ### use option --with-chtype to override chtype's type
--echo "$as_me:9458: checking for type of chtype" >&5
-+echo "$as_me:10648: 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.
-@@ -9465,11 +10655,11 @@
- else
- NCURSES_CHTYPE=auto
- fi;
--echo "$as_me:9468: result: $NCURSES_CHTYPE" >&5
-+echo "$as_me:10658: result: $NCURSES_CHTYPE" >&5
- echo "${ECHO_T}$NCURSES_CHTYPE" >&6
-
- ### use option --with-ospeed to override ospeed's type
--echo "$as_me:9472: checking for type of ospeed" >&5
-+echo "$as_me:10662: 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.
-@@ -9479,11 +10669,11 @@
- else
- NCURSES_OSPEED=short
- fi;
--echo "$as_me:9482: result: $NCURSES_OSPEED" >&5
-+echo "$as_me:10672: result: $NCURSES_OSPEED" >&5
- echo "${ECHO_T}$NCURSES_OSPEED" >&6
-
- ### use option --with-mmask-t to override mmask_t's type
--echo "$as_me:9486: checking for type of mmask_t" >&5
-+echo "$as_me:10676: 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.
-@@ -9493,11 +10683,11 @@
- else
- NCURSES_MMASK_T=auto
- fi;
--echo "$as_me:9496: result: $NCURSES_MMASK_T" >&5
-+echo "$as_me:10686: 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:9500: checking for size CCHARW_MAX" >&5
-+echo "$as_me:10690: 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.
-@@ -9507,11 +10697,25 @@
- else
- NCURSES_CCHARW_MAX=5
- fi;
--echo "$as_me:9510: result: $NCURSES_CCHARW_MAX" >&5
-+echo "$as_me:10700: result: $NCURSES_CCHARW_MAX" >&5
- echo "${ECHO_T}$NCURSES_CCHARW_MAX" >&6
-
-+### use option --with-tparm-arg to override tparm's argument type
-+echo "$as_me:10704: 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.
-+if test "${with_tparm_arg+set}" = set; then
-+ withval="$with_tparm_arg"
-+ NCURSES_TPARM_ARG="$withval"
-+else
-+ NCURSES_TPARM_ARG=long
-+fi;
-+echo "$as_me:10714: result: $NCURSES_TPARM_ARG" >&5
-+echo "${ECHO_T}$NCURSES_TPARM_ARG" >&6
-+
- ### Enable compiling-in rcs id's
--echo "$as_me:9514: checking if RCS identifiers should be compiled-in" >&5
-+echo "$as_me:10718: 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.
-@@ -9521,15 +10725,16 @@
- else
- with_rcs_ids=no
- fi;
--echo "$as_me:9524: result: $with_rcs_ids" >&5
-+echo "$as_me:10728: result: $with_rcs_ids" >&5
- echo "${ECHO_T}$with_rcs_ids" >&6
--test "$with_rcs_ids" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_rcs_ids" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_RCS_IDS 1
- EOF
-
- ###############################################################################
-
--echo "$as_me:9532: checking format of man-pages" >&5
-+echo "$as_me:10737: 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.
-@@ -9618,14 +10823,14 @@
- ;;
- esac
-
--echo "$as_me:9621: result: $MANPAGE_FORMAT" >&5
-+echo "$as_me:10826: result: $MANPAGE_FORMAT" >&5
- echo "${ECHO_T}$MANPAGE_FORMAT" >&6
- if test -n "$cf_unknown" ; then
-- { echo "$as_me:9624: WARNING: Unexpected manpage-format $cf_unknown" >&5
-+ { echo "$as_me:10829: WARNING: Unexpected manpage-format $cf_unknown" >&5
- echo "$as_me: WARNING: Unexpected manpage-format $cf_unknown" >&2;}
- fi
-
--echo "$as_me:9628: checking for manpage renaming" >&5
-+echo "$as_me:10833: 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.
-@@ -9653,7 +10858,7 @@
- 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:9656: error: not a filename: $MANPAGE_RENAMES" >&5
-+ { { echo "$as_me:10861: error: not a filename: $MANPAGE_RENAMES" >&5
- echo "$as_me: error: not a filename: $MANPAGE_RENAMES" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -9667,10 +10872,10 @@
- fi
- fi
-
--echo "$as_me:9670: result: $MANPAGE_RENAMES" >&5
-+echo "$as_me:10875: result: $MANPAGE_RENAMES" >&5
- echo "${ECHO_T}$MANPAGE_RENAMES" >&6
-
--echo "$as_me:9673: checking if manpage aliases will be installed" >&5
-+echo "$as_me:10878: 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.
-@@ -9681,7 +10886,7 @@
- MANPAGE_ALIASES=yes
- fi;
-
--echo "$as_me:9684: result: $MANPAGE_ALIASES" >&5
-+echo "$as_me:10889: result: $MANPAGE_ALIASES" >&5
- echo "${ECHO_T}$MANPAGE_ALIASES" >&6
-
- case "x$LN_S" in #(vi
-@@ -9695,7 +10900,7 @@
-
- MANPAGE_SYMLINKS=no
- if test "$MANPAGE_ALIASES" = yes ; then
--echo "$as_me:9698: checking if manpage symlinks should be used" >&5
-+echo "$as_me:10903: 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.
-@@ -9708,17 +10913,17 @@
-
- if test "$$cf_use_symlinks" = no; then
- if test "$MANPAGE_SYMLINKS" = yes ; then
-- { echo "$as_me:9711: WARNING: cannot make symlinks" >&5
-+ { echo "$as_me:10916: WARNING: cannot make symlinks" >&5
- echo "$as_me: WARNING: cannot make symlinks" >&2;}
- MANPAGE_SYMLINKS=no
- fi
- fi
-
--echo "$as_me:9717: result: $MANPAGE_SYMLINKS" >&5
-+echo "$as_me:10922: result: $MANPAGE_SYMLINKS" >&5
- echo "${ECHO_T}$MANPAGE_SYMLINKS" >&6
- fi
-
--echo "$as_me:9721: checking for manpage tbl" >&5
-+echo "$as_me:10926: 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.
-@@ -9729,7 +10934,7 @@
- MANPAGE_TBL=no
- fi;
-
--echo "$as_me:9732: result: $MANPAGE_TBL" >&5
-+echo "$as_me:10937: result: $MANPAGE_TBL" >&5
- echo "${ECHO_T}$MANPAGE_TBL" >&6
-
- if test "$prefix" = "NONE" ; then
-@@ -9776,6 +10981,7 @@
- # this script is generated by the configure-script CF_MAN_PAGES macro.
-
- prefix="$cf_prefix"
-+datarootdir="$datarootdir"
- datadir="$datadir"
-
- NCURSES_MAJOR="$NCURSES_MAJOR"
-@@ -9836,11 +11042,12 @@
- if test ! -f $cf_man_alias ; then
- cat >>$cf_man_alias <<-CF_EOF2
- s,@DATADIR@,\$datadir,g
-- s,@TERMINFO@,\$TERMINFO,g
-- s,@NCURSES_MAJOR@,\$NCURSES_MAJOR,g
-- s,@NCURSES_MINOR@,\$NCURSES_MINOR,g
-- s,@NCURSES_PATCH@,\$NCURSES_PATCH,g
-- s,@NCURSES_OSPEED@,\$NCURSES_OSPEED,g
-+ s,@TERMINFO@,\${TERMINFO:="no default value"},g
-+ s,@TERMINFO_DIRS@,\${TERMINFO_DIRS:="no default value"},g
-+ s,@NCURSES_MAJOR@,\${NCURSES_MAJOR:="no default value"},g
-+ s,@NCURSES_MINOR@,\${NCURSES_MINOR:="no default value"},g
-+ s,@NCURSES_PATCH@,\${NCURSES_PATCH:="no default value"},g
-+ s,@NCURSES_OSPEED@,\${NCURSES_OSPEED:="no default value"},g
- CF_EOF
-
- for cf_name in captoinfo clear infocmp infotocap tabs tic toe tput tset
-@@ -9869,7 +11076,9 @@
-
- if test "$MANPAGE_ALIASES" != no ; then
- cat >>$cf_edit_man <<CF_EOF
-- aliases=\`sed -f \$top_srcdir/man/manlinks.sed \$inalias |sed -f $cf_man_alias | sort -u\`
-+ 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\`
- CF_EOF
- fi
-
-@@ -9915,6 +11124,13 @@
- fi
- CF_EOF
-
-+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
-+ mv \$TMP.out \$TMP
-+CF_EOF
-+fi
-+
- if test $with_curses_h != yes ; then
- cat >>$cf_edit_man <<CF_EOF
- sed -e "/\#[ ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
-@@ -10051,7 +11267,7 @@
- ###############################################################################
-
- ### Note that some functions (such as const) are normally disabled anyway.
--echo "$as_me:10054: checking if you want to build with function extensions" >&5
-+echo "$as_me:11270: 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.
-@@ -10061,39 +11277,52 @@
- else
- with_ext_funcs=yes
- fi;
--echo "$as_me:10064: result: $with_ext_funcs" >&5
-+echo "$as_me:11280: result: $with_ext_funcs" >&5
- echo "${ECHO_T}$with_ext_funcs" >&6
--if test "$with_ext_funcs" = yes ; then
-+if test "x$with_ext_funcs" = xyes ; then
- NCURSES_EXT_FUNCS=1
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_ASSUME_DEFAULT_COLORS 1
-+EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_CURSES_VERSION 1
- EOF
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_HAS_KEY 1
- EOF
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_RESIZETERM 1
- EOF
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_RESIZE_TERM 1
- EOF
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_TERM_ENTRY_H 1
- EOF
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_USE_DEFAULT_COLORS 1
- EOF
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
-+#define HAVE_USE_SCREEN 1
-+EOF
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_USE_WINDOW 1
-+EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_WRESIZE 1
- EOF
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define NCURSES_EXT_FUNCS 1
- EOF
-
-@@ -10103,7 +11332,7 @@
- GENERATED_EXT_FUNCS=
- fi
-
--echo "$as_me:10106: checking if you want to build with experimental SCREEN extensions" >&5
-+echo "$as_me:11335: checking if you want to build with experimental SCREEN extensions" >&5
- echo $ECHO_N "checking if you want to build with experimental SCREEN extensions... $ECHO_C" >&6
-
- # Check whether --enable-sp-funcs or --disable-sp-funcs was given.
-@@ -10113,11 +11342,12 @@
- else
- with_sp_funcs=no
- fi;
--echo "$as_me:10116: result: $with_sp_funcs" >&5
-+echo "$as_me:11345: result: $with_sp_funcs" >&5
- echo "${ECHO_T}$with_sp_funcs" >&6
--if test "$with_sp_funcs" = yes ; then
-+if test "x$with_sp_funcs" = xyes ; then
- NCURSES_SP_FUNCS=1
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define NCURSES_SP_FUNCS 1
- EOF
-
-@@ -10127,7 +11357,7 @@
- GENERATED_SP_FUNCS=
- fi
-
--echo "$as_me:10130: checking if you want to build with experimental terminal-driver" >&5
-+echo "$as_me:11360: checking if you want to build with experimental terminal-driver" >&5
- echo $ECHO_N "checking if you want to build with experimental terminal-driver... $ECHO_C" >&6
-
- # Check whether --enable-term-driver or --disable-term-driver was given.
-@@ -10137,22 +11367,23 @@
- else
- with_term_driver=no
- fi;
--echo "$as_me:10140: result: $with_term_driver" >&5
-+echo "$as_me:11370: result: $with_term_driver" >&5
- echo "${ECHO_T}$with_term_driver" >&6
--if test "$with_term_driver" = yes ; then
-- cat >>confdefs.h <<\EOF
-+if test "x$with_term_driver" = xyes ; then
-+
-+cat >>confdefs.h <<\EOF
- #define USE_TERM_DRIVER 1
- EOF
-
-- if test "$with_sp_funcs" != yes ; then
-- { { echo "$as_me:10148: error: The term-driver option relies upon sp-funcs" >&5
-+ if test "x$with_sp_funcs" != xyes ; then
-+ { { echo "$as_me:11379: 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:10155: checking for extended use of const keyword" >&5
-+echo "$as_me:11386: 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.
-@@ -10162,15 +11393,15 @@
- else
- with_ext_const=no
- fi;
--echo "$as_me:10165: result: $with_ext_const" >&5
-+echo "$as_me:11396: result: $with_ext_const" >&5
- echo "${ECHO_T}$with_ext_const" >&6
- NCURSES_CONST='/*nothing*/'
--if test "$with_ext_const" = yes ; then
-+if test "x$with_ext_const" = xyes ; then
- NCURSES_CONST=const
- fi
-
- ### use option --enable-ext-colors to turn on use of colors beyond 16.
--echo "$as_me:10173: checking if you want to use extended colors" >&5
-+echo "$as_me:11404: 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.
-@@ -10180,12 +11411,12 @@
- else
- with_ext_colors=no
- fi;
--echo "$as_me:10183: result: $with_ext_colors" >&5
-+echo "$as_me:11414: result: $with_ext_colors" >&5
- echo "${ECHO_T}$with_ext_colors" >&6
- NCURSES_EXT_COLORS=0
--if test "$with_ext_colors" = yes ; then
-- if test "$with_widec" != yes ; then
-- { { echo "$as_me:10188: error: This option applies only to wide-character library" >&5
-+if test "x$with_ext_colors" = xyes ; then
-+ if test "x$with_widec" != xyes ; then
-+ { { echo "$as_me:11419: error: This option applies only to wide-character library" >&5
- echo "$as_me: error: This option applies only to wide-character library" >&2;}
- { (exit 1); exit 1; }; }
- else
-@@ -10196,7 +11427,7 @@
- 5.*)
- cf_cv_rel_version=6.0
- cf_cv_abi_version=6
-- { echo "$as_me:10199: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5
-+ { echo "$as_me:11430: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5
- echo "$as_me: WARNING: Overriding ABI version to $cf_cv_abi_version" >&2;}
- ;;
- esac
-@@ -10204,14 +11435,15 @@
-
- fi
- NCURSES_EXT_COLORS=1
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define NCURSES_EXT_COLORS 1
- EOF
-
- fi
-
- ### use option --enable-ext-mouse to modify coding to support 5-button mice
--echo "$as_me:10214: checking if you want to use extended mouse encoding" >&5
-+echo "$as_me:11446: 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.
-@@ -10221,10 +11453,10 @@
- else
- with_ext_mouse=no
- fi;
--echo "$as_me:10224: result: $with_ext_mouse" >&5
-+echo "$as_me:11456: result: $with_ext_mouse" >&5
- echo "${ECHO_T}$with_ext_mouse" >&6
- NCURSES_MOUSE_VERSION=1
--if test "$with_ext_mouse" = yes ; then
-+if test "x$with_ext_mouse" = xyes ; then
- NCURSES_MOUSE_VERSION=2
-
- if test "${with_abi_version+set}" != set; then
-@@ -10232,7 +11464,7 @@
- 5.*)
- cf_cv_rel_version=6.0
- cf_cv_abi_version=6
-- { echo "$as_me:10235: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5
-+ { echo "$as_me:11467: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5
- echo "$as_me: WARNING: Overriding ABI version to $cf_cv_abi_version" >&2;}
- ;;
- esac
-@@ -10240,7 +11472,7 @@
-
- fi
-
--echo "$as_me:10243: checking if you want \$NCURSES_NO_PADDING code" >&5
-+echo "$as_me:11475: 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.
-@@ -10250,19 +11482,20 @@
- else
- with_no_padding=$with_ext_funcs
- fi;
--echo "$as_me:10253: result: $with_no_padding" >&5
-+echo "$as_me:11485: result: $with_no_padding" >&5
- echo "${ECHO_T}$with_no_padding" >&6
--test "$with_no_padding" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_no_padding" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define NCURSES_NO_PADDING 1
- EOF
-
--echo "$as_me:10259: checking for ANSI C header files" >&5
-+echo "$as_me:11492: 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 10265 "configure"
-+#line 11498 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- #include <stdarg.h>
-@@ -10270,13 +11503,13 @@
- #include <float.h>
-
- _ACEOF
--if { (eval echo "$as_me:10273: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:11506: \"$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:10279: \$? = $ac_status" >&5
-+ echo "$as_me:11512: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -10298,7 +11531,7 @@
- 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 10301 "configure"
-+#line 11534 "configure"
- #include "confdefs.h"
- #include <string.h>
-
-@@ -10316,7 +11549,7 @@
- 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 10319 "configure"
-+#line 11552 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
-
-@@ -10337,7 +11570,7 @@
- :
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 10340 "configure"
-+#line 11573 "configure"
- #include "confdefs.h"
- #include <ctype.h>
- #if ((' ' & 0x0FF) == 0x020)
-@@ -10363,15 +11596,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:10366: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:11599: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10369: \$? = $ac_status" >&5
-+ echo "$as_me:11602: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:10371: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11604: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10374: \$? = $ac_status" >&5
-+ echo "$as_me:11607: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -10384,7 +11617,7 @@
- fi
- fi
- fi
--echo "$as_me:10387: result: $ac_cv_header_stdc" >&5
-+echo "$as_me:11620: result: $ac_cv_header_stdc" >&5
- echo "${ECHO_T}$ac_cv_header_stdc" >&6
- if test $ac_cv_header_stdc = yes; then
-
-@@ -10400,28 +11633,28 @@
- inttypes.h stdint.h unistd.h
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:10403: checking for $ac_header" >&5
-+echo "$as_me:11636: 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 10409 "configure"
-+#line 11642 "configure"
- #include "confdefs.h"
- $ac_includes_default
- #include <$ac_header>
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10415: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:11648: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10418: \$? = $ac_status" >&5
-+ echo "$as_me:11651: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10421: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11654: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10424: \$? = $ac_status" >&5
-+ echo "$as_me:11657: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_Header=yes"
- else
-@@ -10431,7 +11664,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:10434: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:11667: 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
-@@ -10441,13 +11674,13 @@
- fi
- done
-
--echo "$as_me:10444: checking for signed char" >&5
-+echo "$as_me:11677: 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 10450 "configure"
-+#line 11683 "configure"
- #include "confdefs.h"
- $ac_includes_default
- int
-@@ -10462,16 +11695,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10465: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:11698: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10468: \$? = $ac_status" >&5
-+ echo "$as_me:11701: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10471: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11704: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10474: \$? = $ac_status" >&5
-+ echo "$as_me:11707: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_type_signed_char=yes
- else
-@@ -10481,10 +11714,10 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:10484: result: $ac_cv_type_signed_char" >&5
-+echo "$as_me:11717: result: $ac_cv_type_signed_char" >&5
- echo "${ECHO_T}$ac_cv_type_signed_char" >&6
-
--echo "$as_me:10487: checking size of signed char" >&5
-+echo "$as_me:11720: 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
-@@ -10493,7 +11726,7 @@
- if test "$cross_compiling" = yes; then
- # Depending upon the size, compute the lo and hi bounds.
- cat >conftest.$ac_ext <<_ACEOF
--#line 10496 "configure"
-+#line 11729 "configure"
- #include "confdefs.h"
- $ac_includes_default
- int
-@@ -10505,21 +11738,21 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10508: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:11741: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10511: \$? = $ac_status" >&5
-+ echo "$as_me:11744: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10514: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11747: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10517: \$? = $ac_status" >&5
-+ echo "$as_me:11750: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_lo=0 ac_mid=0
- while :; do
- cat >conftest.$ac_ext <<_ACEOF
--#line 10522 "configure"
-+#line 11755 "configure"
- #include "confdefs.h"
- $ac_includes_default
- int
-@@ -10531,16 +11764,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10534: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:11767: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10537: \$? = $ac_status" >&5
-+ echo "$as_me:11770: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10540: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11773: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10543: \$? = $ac_status" >&5
-+ echo "$as_me:11776: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_hi=$ac_mid; break
- else
-@@ -10556,7 +11789,7 @@
- ac_hi=-1 ac_mid=-1
- while :; do
- cat >conftest.$ac_ext <<_ACEOF
--#line 10559 "configure"
-+#line 11792 "configure"
- #include "confdefs.h"
- $ac_includes_default
- int
-@@ -10568,16 +11801,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10571: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:11804: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10574: \$? = $ac_status" >&5
-+ echo "$as_me:11807: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10577: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11810: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10580: \$? = $ac_status" >&5
-+ echo "$as_me:11813: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_lo=$ac_mid; break
- else
-@@ -10593,7 +11826,7 @@
- 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 10596 "configure"
-+#line 11829 "configure"
- #include "confdefs.h"
- $ac_includes_default
- int
-@@ -10605,16 +11838,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:10608: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:11841: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:10611: \$? = $ac_status" >&5
-+ echo "$as_me:11844: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:10614: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11847: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10617: \$? = $ac_status" >&5
-+ echo "$as_me:11850: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_hi=$ac_mid
- else
-@@ -10627,12 +11860,12 @@
- ac_cv_sizeof_signed_char=$ac_lo
- else
- if test "$cross_compiling" = yes; then
-- { { echo "$as_me:10630: error: cannot run test program while cross compiling" >&5
-+ { { echo "$as_me:11863: 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 10635 "configure"
-+#line 11868 "configure"
- #include "confdefs.h"
- $ac_includes_default
- int
-@@ -10648,15 +11881,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:10651: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:11884: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10654: \$? = $ac_status" >&5
-+ echo "$as_me:11887: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:10656: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11889: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10659: \$? = $ac_status" >&5
-+ echo "$as_me:11892: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_sizeof_signed_char=`cat conftest.val`
- else
-@@ -10672,7 +11905,7 @@
- ac_cv_sizeof_signed_char=0
- fi
- fi
--echo "$as_me:10675: result: $ac_cv_sizeof_signed_char" >&5
-+echo "$as_me:11908: 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
-@@ -10683,7 +11916,7 @@
- else
- NCURSES_SBOOL="char"
- fi
--echo "$as_me:10686: checking if you want to use signed Boolean array in term.h" >&5
-+echo "$as_me:11919: 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.
-@@ -10693,12 +11926,12 @@
- else
- with_signed_char=no
- fi;
--echo "$as_me:10696: result: $with_signed_char" >&5
-+echo "$as_me:11929: result: $with_signed_char" >&5
- echo "${ECHO_T}$with_signed_char" >&6
--test "$with_signed_char" != yes && NCURSES_SBOOL="char"
-+test "x$with_signed_char" != xyes && NCURSES_SBOOL="char"
-
- ### use option --enable-sigwinch to turn on use of SIGWINCH logic
--echo "$as_me:10701: checking if you want SIGWINCH handler" >&5
-+echo "$as_me:11934: 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.
-@@ -10708,14 +11941,15 @@
- else
- with_sigwinch=$with_ext_funcs
- fi;
--echo "$as_me:10711: result: $with_sigwinch" >&5
-+echo "$as_me:11944: result: $with_sigwinch" >&5
- echo "${ECHO_T}$with_sigwinch" >&6
--test "$with_sigwinch" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_sigwinch" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_SIGWINCH 1
- EOF
-
- ### use option --enable-tcap-names to allow user to define new capabilities
--echo "$as_me:10718: checking if you want user-definable terminal capabilities like termcap" >&5
-+echo "$as_me:11952: 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.
-@@ -10725,15 +11959,15 @@
- else
- with_tcap_names=$with_ext_funcs
- fi;
--echo "$as_me:10728: result: $with_tcap_names" >&5
-+echo "$as_me:11962: result: $with_tcap_names" >&5
- echo "${ECHO_T}$with_tcap_names" >&6
- NCURSES_XNAMES=0
--test "$with_tcap_names" = yes && NCURSES_XNAMES=1
-+test "x$with_tcap_names" = xyes && NCURSES_XNAMES=1
-
- ###############################################################################
- # These options are relatively safe to experiment with.
-
--echo "$as_me:10736: checking if you want all development code" >&5
-+echo "$as_me:11970: 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.
-@@ -10743,11 +11977,11 @@
- else
- with_develop=no
- fi;
--echo "$as_me:10746: result: $with_develop" >&5
-+echo "$as_me:11980: 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:10750: checking if you want hard-tabs code" >&5
-+echo "$as_me:11984: 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.
-@@ -10757,14 +11991,15 @@
- else
- enable_hard_tabs=$with_develop
- fi;
--echo "$as_me:10760: result: $enable_hard_tabs" >&5
-+echo "$as_me:11994: result: $enable_hard_tabs" >&5
- echo "${ECHO_T}$enable_hard_tabs" >&6
--test "$enable_hard_tabs" = yes && cat >>confdefs.h <<\EOF
-+test "x$enable_hard_tabs" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_HARD_TABS 1
- EOF
-
- ### use option --enable-xmc-glitch to turn on use of magic-cookie optimize
--echo "$as_me:10767: checking if you want limited support for xmc" >&5
-+echo "$as_me:12002: 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.
-@@ -10774,16 +12009,17 @@
- else
- enable_xmc_glitch=$with_develop
- fi;
--echo "$as_me:10777: result: $enable_xmc_glitch" >&5
-+echo "$as_me:12012: result: $enable_xmc_glitch" >&5
- echo "${ECHO_T}$enable_xmc_glitch" >&6
--test "$enable_xmc_glitch" = yes && cat >>confdefs.h <<\EOF
-+test "x$enable_xmc_glitch" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_XMC_SUPPORT 1
- EOF
-
- ###############################################################################
- # These are just experimental, probably should not be in a package:
-
--echo "$as_me:10786: checking if you do not want to assume colors are white-on-black" >&5
-+echo "$as_me:12022: 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.
-@@ -10793,14 +12029,15 @@
- else
- with_assumed_color=yes
- fi;
--echo "$as_me:10796: result: $with_assumed_color" >&5
-+echo "$as_me:12032: result: $with_assumed_color" >&5
- echo "${ECHO_T}$with_assumed_color" >&6
--test "$with_assumed_color" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_assumed_color" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_ASSUMED_COLOR 1
- EOF
-
- ### use option --enable-hashmap to turn on use of hashmap scrolling logic
--echo "$as_me:10803: checking if you want hashmap scrolling-optimization code" >&5
-+echo "$as_me:12040: 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.
-@@ -10810,14 +12047,15 @@
- else
- with_hashmap=yes
- fi;
--echo "$as_me:10813: result: $with_hashmap" >&5
-+echo "$as_me:12050: result: $with_hashmap" >&5
- echo "${ECHO_T}$with_hashmap" >&6
--test "$with_hashmap" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_hashmap" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_HASHMAP 1
- EOF
-
- ### use option --enable-colorfgbg to turn on use of $COLORFGBG environment
--echo "$as_me:10820: checking if you want colorfgbg code" >&5
-+echo "$as_me:12058: 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.
-@@ -10827,14 +12065,15 @@
- else
- with_colorfgbg=no
- fi;
--echo "$as_me:10830: result: $with_colorfgbg" >&5
-+echo "$as_me:12068: result: $with_colorfgbg" >&5
- echo "${ECHO_T}$with_colorfgbg" >&6
--test "$with_colorfgbg" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_colorfgbg" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_COLORFGBG 1
- EOF
-
- ### use option --enable-interop to turn on use of bindings used for interop
--echo "$as_me:10837: checking if you want interop bindings" >&5
-+echo "$as_me:12076: 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.
-@@ -10844,16 +12083,16 @@
- else
- with_exp_interop=no
- fi;
--echo "$as_me:10847: result: $with_exp_interop" >&5
-+echo "$as_me:12086: result: $with_exp_interop" >&5
- echo "${ECHO_T}$with_exp_interop" >&6
-
- NCURSES_INTEROP_FUNCS=0
--test "$with_exp_interop" = yes && NCURSES_INTEROP_FUNCS=1
-+test "x$with_exp_interop" = xyes && NCURSES_INTEROP_FUNCS=1
-
- # This is still experimental (20080329), but should ultimately be moved to
- # the script-block --with-normal, etc.
-
--echo "$as_me:10856: checking if you want to link with the pthread library" >&5
-+echo "$as_me:12095: 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.
-@@ -10863,27 +12102,27 @@
- else
- with_pthread=no
- fi;
--echo "$as_me:10866: result: $with_pthread" >&5
-+echo "$as_me:12105: result: $with_pthread" >&5
- echo "${ECHO_T}$with_pthread" >&6
-
- if test "$with_pthread" != no ; then
-- echo "$as_me:10870: checking for pthread.h" >&5
-+ echo "$as_me:12109: 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 10876 "configure"
-+#line 12115 "configure"
- #include "confdefs.h"
- #include <pthread.h>
- _ACEOF
--if { (eval echo "$as_me:10880: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:12119: \"$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:10886: \$? = $ac_status" >&5
-+ echo "$as_me:12125: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -10902,20 +12141,38 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:10905: result: $ac_cv_header_pthread_h" >&5
-+echo "$as_me:12144: 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
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_PTHREADS_H 1
- EOF
-
-- echo "$as_me:10913: checking if we can link with the pthread library" >&5
--echo $ECHO_N "checking if we can link with the pthread library... $ECHO_C" >&6
-- cf_save_LIBS="$LIBS"
-- LIBS="-lpthread $LIBS"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 10918 "configure"
-+ for cf_lib_pthread in pthread c_r
-+ do
-+ echo "$as_me:12154: 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"
-+
-+cf_add_libs="-l$cf_lib_pthread"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 12175 "configure"
- #include "confdefs.h"
-
- #include <pthread.h>
-@@ -10924,23 +12181,24 @@
- main ()
- {
-
-- int rc = pthread_create(0,0,0,0);
-+ int rc = pthread_create(0,0,0,0);
-+ int r2 = pthread_mutexattr_settype(0, 0);
-
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10934: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:12192: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10937: \$? = $ac_status" >&5
-+ echo "$as_me:12195: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10940: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12198: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10943: \$? = $ac_status" >&5
-+ echo "$as_me:12201: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- with_pthread=yes
- else
-@@ -10949,34 +12207,52 @@
- with_pthread=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- LIBS="$cf_save_LIBS"
-- echo "$as_me:10953: result: $with_pthread" >&5
-+ LIBS="$cf_save_LIBS"
-+ echo "$as_me:12211: result: $with_pthread" >&5
- echo "${ECHO_T}$with_pthread" >&6
-+ test "$with_pthread" = yes && break
-+ done
-+
-+ if test "$with_pthread" = yes ; then
-+
-+cf_add_libs="-l$cf_lib_pthread"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
-- if test "$with_pthread" = yes ; then
-- LIBS="-lpthread $LIBS"
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define HAVE_LIBPTHREADS 1
- EOF
-
-- else
-- { { echo "$as_me:10963: error: Cannot link with pthread library" >&5
-+ else
-+ { { echo "$as_me:12239: error: Cannot link with pthread library" >&5
- echo "$as_me: error: Cannot link with pthread library" >&2;}
- { (exit 1); exit 1; }; }
-- fi
-+ fi
-
- fi
-
- fi
-
- if test "x$with_pthread" != xno; then
-- echo "$as_me:10973: checking for pthread_kill" >&5
-+ echo "$as_me:12249: 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 10979 "configure"
-+#line 12255 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char pthread_kill (); below. */
-@@ -10999,7 +12275,7 @@
- #if defined (__stub_pthread_kill) || defined (__stub___pthread_kill)
- choke me
- #else
--f = pthread_kill;
-+f = pthread_kill; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -11007,16 +12283,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11010: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:12286: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11013: \$? = $ac_status" >&5
-+ echo "$as_me:12289: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11016: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12292: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11019: \$? = $ac_status" >&5
-+ echo "$as_me:12295: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_pthread_kill=yes
- else
-@@ -11026,11 +12302,11 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:11029: result: $ac_cv_func_pthread_kill" >&5
-+echo "$as_me:12305: 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
-
-- echo "$as_me:11033: checking if you want to allow EINTR in wgetch with pthreads" >&5
-+ echo "$as_me:12309: 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.
-@@ -11040,17 +12316,18 @@
- else
- use_pthreads_eintr=no
- fi;
-- echo "$as_me:11043: result: $use_pthreads_eintr" >&5
-+ echo "$as_me:12319: result: $use_pthreads_eintr" >&5
- echo "${ECHO_T}$use_pthreads_eintr" >&6
-- if test $use_pthreads_eintr = yes ; then
-- cat >>confdefs.h <<\EOF
-+ if test "x$use_pthreads_eintr" = xyes ; then
-+
-+cat >>confdefs.h <<\EOF
- #define USE_PTHREADS_EINTR 1
- EOF
-
- fi
- fi
-
-- echo "$as_me:11053: checking if you want to use weak-symbols for pthreads" >&5
-+ echo "$as_me:12330: 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.
-@@ -11060,18 +12337,18 @@
- else
- use_weak_symbols=no
- fi;
-- echo "$as_me:11063: result: $use_weak_symbols" >&5
-+ echo "$as_me:12340: result: $use_weak_symbols" >&5
- echo "${ECHO_T}$use_weak_symbols" >&6
-- if test "$use_weak_symbols" = yes ; then
-+ if test "x$use_weak_symbols" = xyes ; then
-
--echo "$as_me:11067: checking if $CC supports weak symbols" >&5
-+echo "$as_me:12344: 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 11074 "configure"
-+#line 12351 "configure"
- #include "confdefs.h"
-
- #include <stdio.h>
-@@ -11097,16 +12374,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:11100: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:12377: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:11103: \$? = $ac_status" >&5
-+ echo "$as_me:12380: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:11106: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12383: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11109: \$? = $ac_status" >&5
-+ echo "$as_me:12386: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_weak_symbols=yes
- else
-@@ -11117,15 +12394,16 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:11120: result: $cf_cv_weak_symbols" >&5
-+echo "$as_me:12397: result: $cf_cv_weak_symbols" >&5
- echo "${ECHO_T}$cf_cv_weak_symbols" >&6
-
- else
- cf_cv_weak_symbols=no
- fi
-
-- if test $cf_cv_weak_symbols = yes ; then
-- cat >>confdefs.h <<\EOF
-+ if test "x$cf_cv_weak_symbols" = xyes ; then
-+
-+cat >>confdefs.h <<\EOF
- #define USE_WEAK_SYMBOLS 1
- EOF
-
-@@ -11133,13 +12411,14 @@
- fi
-
- PTHREAD=
--if test "$with_pthread" = "yes" ; then
-- cat >>confdefs.h <<\EOF
-+if test "x$with_pthread" = "xyes" ; then
-+
-+cat >>confdefs.h <<\EOF
- #define USE_PTHREADS 1
- EOF
-
- enable_reentrant=yes
-- if test $cf_cv_weak_symbols = yes ; then
-+ if test "x$cf_cv_weak_symbols" = xyes ; then
- PTHREAD=-lpthread
- fi
- fi
-@@ -11148,7 +12427,7 @@
- # 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:11151: checking if you want experimental reentrant code" >&5
-+echo "$as_me:12430: 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.
-@@ -11158,24 +12437,71 @@
- else
- with_reentrant=no
- fi;
--echo "$as_me:11161: result: $with_reentrant" >&5
-+echo "$as_me:12440: result: $with_reentrant" >&5
- echo "${ECHO_T}$with_reentrant" >&6
--if test "$with_reentrant" = yes ; then
-+if test "x$with_reentrant" = xyes ; then
- cf_cv_enable_reentrant=1
- cf_cv_enable_opaque="NCURSES_INTERNALS"
- NCURSES_OPAQUE=1
- NCURSES_SIZE_T=int
-- if test $cf_cv_weak_symbols = yes ; then
-+ if test "x$cf_cv_weak_symbols" = xyes ; then
-
- # remove pthread library from $LIBS
- LIBS=`echo "$LIBS" | sed -e 's/-lpthread[ ]//g' -e 's/-lpthread$//'`
-
-- TEST_LIBS="-lpthread $TEST_LIBS"
-- TEST_LIBS2="-lpthread $TEST_LIBS2"
-+cf_add_libs="-lpthread"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $TEST_LIBS
-+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_libs $cf_add_1lib"
-+done
-+TEST_LIBS="$cf_add_libs"
-+
-+cf_add_libs="-lpthread"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $TEST_LIBS2
-+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_libs $cf_add_1lib"
-+done
-+TEST_LIBS2="$cf_add_libs"
-+
- else
-- LIB_SUFFIX="t${LIB_SUFFIX}"
-+ # when not using weak symbols but with_reentrant,
-+ # add 't' to the library suffix on all platforms
-+ # except cygwin, where we only do that if ALSO
-+ # compiling with full thread support.
-+ case "$host" in
-+ *cygwin* | *msys*) #(vi
-+ if test "$with_pthread" = "yes" ; then
-+ if test "x$disable_lib_suffixes" = "xno" ; then
-+ LIB_SUFFIX="t${LIB_SUFFIX}"
-+ fi
-+ fi ;;
-+ *)
-+ if test "x$disable_lib_suffixes" = "xno" ; then
-+ LIB_SUFFIX="t${LIB_SUFFIX}"
-+ fi
-+ ;;
-+ esac
- fi
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define USE_REENTRANT 1
- EOF
-
-@@ -11184,7 +12510,7 @@
- 5.*)
- cf_cv_rel_version=6.0
- cf_cv_abi_version=6
-- { echo "$as_me:11187: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5
-+ { echo "$as_me:12513: WARNING: Overriding ABI version to $cf_cv_abi_version" >&5
- echo "$as_me: WARNING: Overriding ABI version to $cf_cv_abi_version" >&2;}
- ;;
- esac
-@@ -11199,7 +12525,7 @@
-
- ### Allow using a different wrap-prefix
- if test "$cf_cv_enable_reentrant" != 0 || test "$BROKEN_LINKER" = 1 ; then
-- echo "$as_me:11202: checking for prefix used to wrap public variables" >&5
-+ echo "$as_me:12528: 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.
-@@ -11209,7 +12535,7 @@
- else
- NCURSES_WRAP_PREFIX=_nc_
- fi;
-- echo "$as_me:11212: result: $NCURSES_WRAP_PREFIX" >&5
-+ echo "$as_me:12538: result: $NCURSES_WRAP_PREFIX" >&5
- echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6
- else
- NCURSES_WRAP_PREFIX=_nc_
-@@ -11219,7 +12545,7 @@
- #define NCURSES_WRAP_PREFIX "$NCURSES_WRAP_PREFIX"
- EOF
-
--echo "$as_me:11222: checking if you want experimental safe-sprintf code" >&5
-+echo "$as_me:12548: 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.
-@@ -11229,16 +12555,17 @@
- else
- with_safe_sprintf=no
- fi;
--echo "$as_me:11232: result: $with_safe_sprintf" >&5
-+echo "$as_me:12558: result: $with_safe_sprintf" >&5
- echo "${ECHO_T}$with_safe_sprintf" >&6
--test "$with_safe_sprintf" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_safe_sprintf" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_SAFE_SPRINTF 1
- EOF
-
- ### 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:11241: checking if you want to experiment without scrolling-hints code" >&5
-+echo "$as_me:12568: 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.
-@@ -11248,15 +12575,16 @@
- else
- with_scroll_hints=yes
- fi;
--echo "$as_me:11251: result: $with_scroll_hints" >&5
-+echo "$as_me:12578: result: $with_scroll_hints" >&5
- echo "${ECHO_T}$with_scroll_hints" >&6
--test "$with_scroll_hints" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_scroll_hints" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define USE_SCROLL_HINTS 1
- EOF
-
- fi
-
--echo "$as_me:11259: checking if you want experimental wgetch-events code" >&5
-+echo "$as_me:12587: checking if you want experimental wgetch-events code" >&5
- echo $ECHO_N "checking if you want experimental wgetch-events code... $ECHO_C" >&6
-
- # Check whether --enable-wgetch-events or --disable-wgetch-events was given.
-@@ -11266,37 +12594,64 @@
- else
- with_wgetch_events=no
- fi;
--echo "$as_me:11269: result: $with_wgetch_events" >&5
-+echo "$as_me:12597: result: $with_wgetch_events" >&5
- echo "${ECHO_T}$with_wgetch_events" >&6
--test "$with_wgetch_events" = yes && cat >>confdefs.h <<\EOF
-+test "x$with_wgetch_events" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define NCURSES_WGETCH_EVENTS 1
- EOF
-
- ###############################################################################
-
- ### use option --disable-echo to suppress full display compiling commands
--echo "$as_me:11278: checking if you want to display full commands during build" >&5
--echo $ECHO_N "checking if you want to display full commands during build... $ECHO_C" >&6
-+
-+echo "$as_me:12608: 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.
- if test "${enable_echo+set}" = set; then
- enableval="$enable_echo"
-- with_echo=$enableval
-+ test "$enableval" != no && enableval=yes
-+ if test "$enableval" != "yes" ; then
-+
-+ ECHO_LT='--silent'
-+ ECHO_LD='@echo linking $@;'
-+ RULE_CC='@echo compiling $<'
-+ SHOW_CC='@echo compiling $@'
-+ ECHO_CC='@'
-+
-+ else
-+
-+ ECHO_LT=''
-+ ECHO_LD=''
-+ RULE_CC=''
-+ SHOW_CC=''
-+ ECHO_CC=''
-+
-+ fi
- else
-- with_echo=yes
-+ enableval=yes
-+
-+ ECHO_LT=''
-+ ECHO_LD=''
-+ RULE_CC=''
-+ SHOW_CC=''
-+ ECHO_CC=''
-+
- fi;
--if test "$with_echo" = yes; then
-+echo "$as_me:12642: result: $enableval" >&5
-+echo "${ECHO_T}$enableval" >&6
-+
-+if test "x$enable_echo" = xyes; then
- ECHO_LINK=
- else
- ECHO_LINK='@ echo linking $@ ... ;'
- test -n "$LIBTOOL" && LIBTOOL="$LIBTOOL --silent"
- test -n "$LIBTOOL_CXX" && LIBTOOL_CXX="$LIBTOOL_CXX --silent"
- fi
--echo "$as_me:11295: result: $with_echo" >&5
--echo "${ECHO_T}$with_echo" >&6
-
- ### use option --enable-warnings to turn on all gcc warnings
--echo "$as_me:11299: checking if you want to see compiler warnings" >&5
-+echo "$as_me:12654: checking if you want to see compiler warnings" >&5
- echo $ECHO_N "checking if you want to see compiler warnings... $ECHO_C" >&6
-
- # Check whether --enable-warnings or --disable-warnings was given.
-@@ -11304,7 +12659,7 @@
- enableval="$enable_warnings"
- with_warnings=$enableval
- fi;
--echo "$as_me:11307: result: $with_warnings" >&5
-+echo "$as_me:12662: result: $with_warnings" >&5
- echo "${ECHO_T}$with_warnings" >&6
-
- if test "x$with_warnings" = "xyes"; then
-@@ -11316,12 +12671,12 @@
- if test "$GCC" = yes ; then
- case $host_os in
- linux*|gnu*)
-- echo "$as_me:11319: checking if this is really Intel C compiler" >&5
-+ echo "$as_me:12674: 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 11324 "configure"
-+#line 12679 "configure"
- #include "confdefs.h"
-
- int
-@@ -11338,19 +12693,19 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:11341: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:12696: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:11344: \$? = $ac_status" >&5
-+ echo "$as_me:12699: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:11347: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12702: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11350: \$? = $ac_status" >&5
-+ echo "$as_me:12705: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- INTEL_COMPILER=yes
--cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
-+cf_save_CFLAGS="$cf_save_CFLAGS -we147"
-
- else
- echo "$as_me: failed program was:" >&5
-@@ -11358,14 +12713,63 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- CFLAGS="$cf_save_CFLAGS"
-- echo "$as_me:11361: result: $INTEL_COMPILER" >&5
-+ echo "$as_me:12716: result: $INTEL_COMPILER" >&5
- echo "${ECHO_T}$INTEL_COMPILER" >&6
- ;;
- esac
- fi
-
-+CLANG_COMPILER=no
-+
-+if test "$GCC" = yes ; then
-+ echo "$as_me:12725: 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 12730 "configure"
-+#include "confdefs.h"
-+
-+int
-+main ()
-+{
-+
-+#ifdef __clang__
-+#else
-+make an error
-+#endif
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:12747: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12750: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:12753: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12756: \$? = $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
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CFLAGS="$cf_save_CFLAGS"
-+ echo "$as_me:12767: result: $CLANG_COMPILER" >&5
-+echo "${ECHO_T}$CLANG_COMPILER" >&6
-+fi
-+
- cat > conftest.$ac_ext <<EOF
--#line 11368 "${as_me:-configure}"
-+#line 12772 "${as_me:-configure}"
- int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
- EOF
-
-@@ -11382,7 +12786,7 @@
- # remark #981: operands are evaluated in unspecified order
- # warning #279: controlling expression is constant
-
-- { echo "$as_me:11385: checking for $CC warning options..." >&5
-+ { echo "$as_me:12789: checking for $CC warning options..." >&5
- echo "$as_me: checking for $CC warning options..." >&6;}
- cf_save_CFLAGS="$CFLAGS"
- EXTRA_CFLAGS="-Wall"
-@@ -11398,12 +12802,12 @@
- wd981
- do
- CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-- if { (eval echo "$as_me:11401: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:12805: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:11404: \$? = $ac_status" >&5
-+ echo "$as_me:12808: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:11406: result: ... -$cf_opt" >&5
-+ test -n "$verbose" && echo "$as_me:12810: result: ... -$cf_opt" >&5
- echo "${ECHO_T}... -$cf_opt" >&6
- EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
- fi
-@@ -11412,16 +12816,20 @@
-
- elif test "$GCC" = yes
- then
-- { echo "$as_me:11415: checking for $CC warning options..." >&5
-+ { echo "$as_me:12819: 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"
-+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings=
- for cf_opt in W Wall \
- Wbad-function-cast \
- Wcast-align \
- Wcast-qual \
-+ Wdeclaration-after-statement \
-+ Wextra \
- Winline \
- Wmissing-declarations \
- Wmissing-prototypes \
-@@ -11429,15 +12837,15 @@
- Wpointer-arith \
- Wshadow \
- Wstrict-prototypes \
-- Wundef $cf_warn_CONST Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum
-+ Wundef $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:11435: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:12843: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:11438: \$? = $ac_status" >&5
-+ echo "$as_me:12846: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:11440: result: ... -$cf_opt" >&5
-+ test -n "$verbose" && echo "$as_me:12848: result: ... -$cf_opt" >&5
- echo "${ECHO_T}... -$cf_opt" >&6
- case $cf_opt in #(vi
- Wcast-qual) #(vi
-@@ -11448,7 +12856,17 @@
- [34].*)
- test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-
--echo "${as_me:-configure}:11451: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
-+echo "${as_me:-configure}:12859: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
-+
-+ continue;;
-+ esac
-+ ;;
-+ Wpointer-arith) #(vi
-+ case $GCC_VERSION in
-+ [12].*)
-+ test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-+
-+echo "${as_me:-configure}:12869: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
-
- continue;;
- esac
-@@ -11461,19 +12879,19 @@
- fi
- rm -rf conftest*
-
-- if test "$cf_with_cxx" = yes ; then
-+ if test "x$cf_with_cxx" = xyes ; then
-
- INTEL_CPLUSPLUS=no
-
- if test "$GCC" = yes ; then
- case $host_os in
- linux*|gnu*)
-- echo "$as_me:11471: checking if this is really Intel C++ compiler" >&5
-+ echo "$as_me:12889: 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 11476 "configure"
-+#line 12894 "configure"
- #include "confdefs.h"
-
- int
-@@ -11490,19 +12908,19 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:11493: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:12911: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:11496: \$? = $ac_status" >&5
-+ echo "$as_me:12914: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:11499: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12917: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11502: \$? = $ac_status" >&5
-+ echo "$as_me:12920: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- INTEL_CPLUSPLUS=yes
--cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
-+cf_save_CFLAGS="$cf_save_CFLAGS -we147"
-
- else
- echo "$as_me: failed program was:" >&5
-@@ -11510,12 +12928,61 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- CXXFLAGS="$cf_save_CFLAGS"
-- echo "$as_me:11513: result: $INTEL_CPLUSPLUS" >&5
-+ echo "$as_me:12931: result: $INTEL_CPLUSPLUS" >&5
- echo "${ECHO_T}$INTEL_CPLUSPLUS" >&6
- ;;
- esac
- fi
-
-+CLANG_CPLUSPLUS=no
-+
-+if test "$GCC" = yes ; then
-+ echo "$as_me:12940: 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 12945 "configure"
-+#include "confdefs.h"
-+
-+int
-+main ()
-+{
-+
-+#ifdef __clang__
-+#else
-+make an error
-+#endif
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:12962: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12965: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:12968: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12971: \$? = $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
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CXXFLAGS="$cf_save_CFLAGS"
-+ echo "$as_me:12982: result: $CLANG_CPLUSPLUS" >&5
-+echo "${ECHO_T}$CLANG_CPLUSPLUS" >&6
-+fi
-+
- ac_ext=cc
- ac_cpp='$CXXCPP $CPPFLAGS'
- ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-@@ -11524,7 +12991,7 @@
- ac_main_return=return
-
- cat > conftest.$ac_ext <<EOF
--#line 11527 "configure"
-+#line 12994 "configure"
- int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
- EOF
-
-@@ -11542,7 +13009,7 @@
- # remark #981: operands are evaluated in unspecified order
- # warning #269: invalid format string conversion
-
-- { echo "$as_me:11545: checking for $CC warning options..." >&5
-+ { echo "$as_me:13012: checking for $CC warning options..." >&5
- echo "$as_me: checking for $CC warning options..." >&6;}
- cf_save_CXXFLAGS="$CXXFLAGS"
- EXTRA_CXXFLAGS="-Wall"
-@@ -11559,12 +13026,12 @@
- wd981
- do
- CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -$cf_opt"
-- if { (eval echo "$as_me:11562: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:13029: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:11565: \$? = $ac_status" >&5
-+ echo "$as_me:13032: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:11567: result: ... -$cf_opt" >&5
-+ test -n "$verbose" && echo "$as_me:13034: result: ... -$cf_opt" >&5
- echo "${ECHO_T}... -$cf_opt" >&6
- EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -$cf_opt"
- fi
-@@ -11573,7 +13040,7 @@
-
- elif test "$GXX" = yes
- then
-- { echo "$as_me:11576: checking for $CXX warning options..." >&5
-+ { echo "$as_me:13043: checking for $CXX warning options..." >&5
- echo "$as_me: checking for $CXX warning options..." >&6;}
- cf_save_CXXFLAGS="$CXXFLAGS"
- EXTRA_CXXFLAGS="-W -Wall"
-@@ -11589,29 +13056,30 @@
- for cf_opt in \
- Wabi \
- fabi-version=0 \
-+ Wextra \
-+ Wignored-qualifiers \
-+ Wlogical-op \
- Woverloaded-virtual \
- Wsign-promo \
- Wsynth \
- Wold-style-cast \
- Wcast-align \
- Wcast-qual \
-- Wmissing-prototypes \
- Wpointer-arith \
- Wshadow \
-- Wstrict-prototypes \
- Wundef $cf_gxx_extra_warnings Wno-unused
- do
- CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -Werror -$cf_opt"
-- if { (eval echo "$as_me:11605: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:13073: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:11608: \$? = $ac_status" >&5
-+ echo "$as_me:13076: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:11610: result: ... -$cf_opt" >&5
-+ test -n "$verbose" && echo "$as_me:13078: result: ... -$cf_opt" >&5
- echo "${ECHO_T}... -$cf_opt" >&6
- EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -$cf_opt"
- else
-- test -n "$verbose" && echo "$as_me:11614: result: ... no -$cf_opt" >&5
-+ test -n "$verbose" && echo "$as_me:13082: result: ... no -$cf_opt" >&5
- echo "${ECHO_T}... no -$cf_opt" >&6
- fi
- done
-@@ -11647,10 +13115,10 @@
- EOF
- if test "$GCC" = yes
- then
-- { echo "$as_me:11650: checking for $CC __attribute__ directives..." >&5
-+ { echo "$as_me:13118: checking for $CC __attribute__ directives..." >&5
- echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
- cat > conftest.$ac_ext <<EOF
--#line 11653 "${as_me:-configure}"
-+#line 13121 "${as_me:-configure}"
- #include "confdefs.h"
- #include "conftest.h"
- #include "conftest.i"
-@@ -11699,36 +13167,60 @@
- ;;
- esac
-
-- if { (eval echo "$as_me:11702: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:13170: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:11705: \$? = $ac_status" >&5
-+ echo "$as_me:13173: \$? = $ac_status" >&5
- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:11707: result: ... $cf_attribute" >&5
-+ test -n "$verbose" && echo "$as_me:13175: result: ... $cf_attribute" >&5
- echo "${ECHO_T}... $cf_attribute" >&6
- cat conftest.h >>confdefs.h
- case $cf_attribute in #(vi
-- printf) #(vi
-- if test "$cf_printf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) /* nothing */
-+ noreturn) #(vi
-+
-+cat >>confdefs.h <<EOF
-+#define GCC_NORETURN $cf_directive
- EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
-+
-+ ;;
-+ printf) #(vi
-+ 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) #(vi
-- if test "$cf_scanf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
-+ 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) #(vi
-+
-+cat >>confdefs.h <<EOF
-+#define GCC_UNUSED $cf_directive
-+EOF
-+
- ;;
- esac
- fi
-@@ -11739,8 +13231,101 @@
- rm -rf conftest*
- fi
-
-+echo "$as_me:13234: 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
-+else
-+ with_string_hacks=no
-+fi;
-+echo "$as_me:13244: result: $with_string_hacks" >&5
-+echo "${ECHO_T}$with_string_hacks" >&6
-+
-+if test "x$with_string_hacks" = "xyes"; then
-+
-+cat >>confdefs.h <<\EOF
-+#define USE_STRING_HACKS 1
-+EOF
-+
-+ { echo "$as_me:13253: 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;}
-+
-+for ac_func in strlcat strlcpy snprintf
-+do
-+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-+echo "$as_me:13259: 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 13265 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char $ac_func (); below. */
-+#include <assert.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 $ac_func ();
-+char (*f) ();
-+
-+int
-+main ()
-+{
-+/* The GNU C library defines this 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)
-+choke me
-+#else
-+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:13296: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:13299: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:13302: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:13305: \$? = $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:13315: 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
-+
- ### use option --enable-assertions to turn on generation of assertion code
--echo "$as_me:11743: checking if you want to enable runtime assertions" >&5
-+echo "$as_me:13328: 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.
-@@ -11750,16 +13335,12 @@
- else
- with_assertions=no
- fi;
--echo "$as_me:11753: result: $with_assertions" >&5
-+echo "$as_me:13338: result: $with_assertions" >&5
- echo "${ECHO_T}$with_assertions" >&6
- if test -n "$GCC"
- then
- if test "$with_assertions" = no
- then
-- cat >>confdefs.h <<\EOF
--#define NDEBUG 1
--EOF
--
- CPPFLAGS="$CPPFLAGS -DNDEBUG"
- else
-
-@@ -11770,13 +13351,14 @@
-
- ### use option --disable-leaks to suppress "permanent" leaks, for testing
-
--echo "$as_me:11773: checking if you want to use dmalloc for testing" >&5
-+echo "$as_me:13354: 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"
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<EOF
- #define USE_DMALLOC 1
- EOF
-
-@@ -11786,7 +13368,7 @@
- else
- with_dmalloc=
- fi;
--echo "$as_me:11789: result: ${with_dmalloc:-no}" >&5
-+echo "$as_me:13371: result: ${with_dmalloc:-no}" >&5
- echo "${ECHO_T}${with_dmalloc:-no}" >&6
-
- case .$with_cflags in #(vi
-@@ -11811,7 +13393,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -11852,7 +13434,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -11880,23 +13462,23 @@
- esac
-
- if test "$with_dmalloc" = yes ; then
-- echo "$as_me:11883: checking for dmalloc.h" >&5
-+ echo "$as_me:13465: 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 11889 "configure"
-+#line 13471 "configure"
- #include "confdefs.h"
- #include <dmalloc.h>
- _ACEOF
--if { (eval echo "$as_me:11893: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:13475: \"$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:11899: \$? = $ac_status" >&5
-+ echo "$as_me:13481: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -11915,11 +13497,11 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:11918: result: $ac_cv_header_dmalloc_h" >&5
-+echo "$as_me:13500: 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
-
--echo "$as_me:11922: checking for dmalloc_debug in -ldmalloc" >&5
-+echo "$as_me:13504: 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
-@@ -11927,7 +13509,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-ldmalloc $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 11930 "configure"
-+#line 13512 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -11946,16 +13528,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11949: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:13531: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11952: \$? = $ac_status" >&5
-+ echo "$as_me:13534: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11955: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:13537: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11958: \$? = $ac_status" >&5
-+ echo "$as_me:13540: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_dmalloc_dmalloc_debug=yes
- else
-@@ -11966,7 +13548,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:11969: result: $ac_cv_lib_dmalloc_dmalloc_debug" >&5
-+echo "$as_me:13551: 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
- cat >>confdefs.h <<EOF
-@@ -11981,13 +13563,14 @@
-
- fi
-
--echo "$as_me:11984: checking if you want to use dbmalloc for testing" >&5
-+echo "$as_me:13566: 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"
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<EOF
- #define USE_DBMALLOC 1
- EOF
-
-@@ -11997,7 +13580,7 @@
- else
- with_dbmalloc=
- fi;
--echo "$as_me:12000: result: ${with_dbmalloc:-no}" >&5
-+echo "$as_me:13583: result: ${with_dbmalloc:-no}" >&5
- echo "${ECHO_T}${with_dbmalloc:-no}" >&6
-
- case .$with_cflags in #(vi
-@@ -12022,7 +13605,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -12063,7 +13646,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -12091,23 +13674,23 @@
- esac
-
- if test "$with_dbmalloc" = yes ; then
-- echo "$as_me:12094: checking for dbmalloc.h" >&5
-+ echo "$as_me:13677: 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 12100 "configure"
-+#line 13683 "configure"
- #include "confdefs.h"
- #include <dbmalloc.h>
- _ACEOF
--if { (eval echo "$as_me:12104: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:13687: \"$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:12110: \$? = $ac_status" >&5
-+ echo "$as_me:13693: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -12126,11 +13709,11 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:12129: result: $ac_cv_header_dbmalloc_h" >&5
-+echo "$as_me:13712: 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
-
--echo "$as_me:12133: checking for debug_malloc in -ldbmalloc" >&5
-+echo "$as_me:13716: 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
-@@ -12138,7 +13721,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-ldbmalloc $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 12141 "configure"
-+#line 13724 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -12157,16 +13740,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12160: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:13743: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12163: \$? = $ac_status" >&5
-+ echo "$as_me:13746: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12166: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:13749: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12169: \$? = $ac_status" >&5
-+ echo "$as_me:13752: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_dbmalloc_debug_malloc=yes
- else
-@@ -12177,7 +13760,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:12180: result: $ac_cv_lib_dbmalloc_debug_malloc" >&5
-+echo "$as_me:13763: 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
- cat >>confdefs.h <<EOF
-@@ -12192,13 +13775,14 @@
-
- fi
-
--echo "$as_me:12195: checking if you want to use valgrind for testing" >&5
-+echo "$as_me:13778: 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"
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<EOF
- #define USE_VALGRIND 1
- EOF
-
-@@ -12208,7 +13792,7 @@
- else
- with_valgrind=
- fi;
--echo "$as_me:12211: result: ${with_valgrind:-no}" >&5
-+echo "$as_me:13795: result: ${with_valgrind:-no}" >&5
- echo "${ECHO_T}${with_valgrind:-no}" >&6
-
- case .$with_cflags in #(vi
-@@ -12233,7 +13817,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -12274,7 +13858,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -12301,7 +13885,7 @@
- ;;
- esac
-
--echo "$as_me:12304: checking if you want to perform memory-leak testing" >&5
-+echo "$as_me:13888: 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.
-@@ -12311,15 +13895,16 @@
- else
- : ${with_no_leaks:=no}
- fi;
--echo "$as_me:12314: result: $with_no_leaks" >&5
-+echo "$as_me:13898: result: $with_no_leaks" >&5
- echo "${ECHO_T}$with_no_leaks" >&6
-
- if test "$with_no_leaks" = yes ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define NO_LEAKS 1
- EOF
-
-- cat >>confdefs.h <<\EOF
-+cat >>confdefs.h <<\EOF
- #define YY_NO_LEAKS 1
- EOF
-
-@@ -12334,7 +13919,8 @@
- # Check whether --enable-expanded or --disable-expanded was given.
- if test "${enable_expanded+set}" = set; then
- enableval="$enable_expanded"
-- test "$enableval" = yes && cat >>confdefs.h <<\EOF
-+ test "x$enableval" = xyes &&
-+cat >>confdefs.h <<\EOF
- #define NCURSES_EXPANDED 1
- EOF
-
-@@ -12345,7 +13931,8 @@
- # Check whether --enable-macros or --disable-macros was given.
- if test "${enable_macros+set}" = set; then
- enableval="$enable_macros"
-- test "$enableval" = no && cat >>confdefs.h <<\EOF
-+ test "$enableval" = no &&
-+cat >>confdefs.h <<\EOF
- #define NCURSES_NOMACROS 1
- EOF
-
-@@ -12360,7 +13947,7 @@
- ;;
- esac
-
--echo "$as_me:12363: checking whether to add trace feature to all models" >&5
-+echo "$as_me:13950: 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.
-@@ -12370,10 +13957,10 @@
- else
- cf_with_trace=$cf_all_traces
- fi;
--echo "$as_me:12373: result: $cf_with_trace" >&5
-+echo "$as_me:13960: result: $cf_with_trace" >&5
- echo "${ECHO_T}$cf_with_trace" >&6
-
--if test "$cf_with_trace" = yes ; then
-+if test "x$cf_with_trace" = xyes ; then
- LIB_TRACING=all
- ADA_TRACE=TRUE
-
-@@ -12392,7 +13979,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -12433,7 +14020,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -12460,18 +14047,40 @@
- ADA_TRACE=FALSE
- fi
-
-+echo "$as_me:14050: 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.
-+if test "${enable_gnat_projects+set}" = set; then
-+ enableval="$enable_gnat_projects"
-+ test "$enableval" != no && enableval=yes
-+ if test "$enableval" != "yes" ; then
-+ enable_gnat_projects=no
-+ else
-+ enable_gnat_projects=yes
-+ fi
-+else
-+ enableval=yes
-+ enable_gnat_projects=yes
-+
-+fi;
-+echo "$as_me:14067: result: $enable_gnat_projects" >&5
-+echo "${ECHO_T}$enable_gnat_projects" >&6
-+
- ### Checks for libraries.
- case $cf_cv_system_name in #(vi
--*mingw32*) #(vi
-+*mingw32*|*mingw64*) #(vi
-+ CPPFLAGS="$CPPFLAGS -DWINVER=0x0501"
-+ LIBS=" -lpsapi $LIBS"
- ;;
- *)
--echo "$as_me:12468: checking for gettimeofday" >&5
-+echo "$as_me:14077: 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 12474 "configure"
-+#line 14083 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char gettimeofday (); below. */
-@@ -12494,7 +14103,7 @@
- #if defined (__stub_gettimeofday) || defined (__stub___gettimeofday)
- choke me
- #else
--f = gettimeofday;
-+f = gettimeofday; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -12502,16 +14111,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12505: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14114: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12508: \$? = $ac_status" >&5
-+ echo "$as_me:14117: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12511: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14120: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12514: \$? = $ac_status" >&5
-+ echo "$as_me:14123: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_gettimeofday=yes
- else
-@@ -12521,16 +14130,17 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:12524: result: $ac_cv_func_gettimeofday" >&5
-+echo "$as_me:14133: result: $ac_cv_func_gettimeofday" >&5
- echo "${ECHO_T}$ac_cv_func_gettimeofday" >&6
- if test $ac_cv_func_gettimeofday = yes; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_GETTIMEOFDAY 1
- EOF
-
- else
-
--echo "$as_me:12533: checking for gettimeofday in -lbsd" >&5
-+echo "$as_me:14143: 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
-@@ -12538,7 +14148,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lbsd $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 12541 "configure"
-+#line 14151 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -12557,16 +14167,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12560: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14170: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12563: \$? = $ac_status" >&5
-+ echo "$as_me:14173: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12566: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14176: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12569: \$? = $ac_status" >&5
-+ echo "$as_me:14179: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_bsd_gettimeofday=yes
- else
-@@ -12577,28 +14187,44 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:12580: result: $ac_cv_lib_bsd_gettimeofday" >&5
-+echo "$as_me:14190: 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
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_GETTIMEOFDAY 1
- EOF
-
-- LIBS="-lbsd $LIBS"
-+cf_add_libs="-lbsd"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- fi
-
- fi
- ;;
- esac
-
--echo "$as_me:12594: checking if -lm needed for math functions" >&5
-+echo "$as_me:14220: 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 12601 "configure"
-+#line 14227 "configure"
- #include "confdefs.h"
-
- #include <stdio.h>
-@@ -12607,22 +14233,22 @@
- int
- main ()
- {
--double x = rand(); printf("result = %g\n", sin(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:12616: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14242: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12619: \$? = $ac_status" >&5
-+ echo "$as_me:14245: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12622: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14248: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12625: \$? = $ac_status" >&5
-+ echo "$as_me:14251: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_need_libm=no
- else
-@@ -12632,7 +14258,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:12635: result: $cf_cv_need_libm" >&5
-+echo "$as_me:14261: result: $cf_cv_need_libm" >&5
- echo "${ECHO_T}$cf_cv_need_libm" >&6
- if test "$cf_cv_need_libm" = yes
- then
-@@ -12640,13 +14266,13 @@
- fi
-
- ### Checks for header files.
--echo "$as_me:12643: checking for ANSI C header files" >&5
-+echo "$as_me:14269: 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 12649 "configure"
-+#line 14275 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- #include <stdarg.h>
-@@ -12654,13 +14280,13 @@
- #include <float.h>
-
- _ACEOF
--if { (eval echo "$as_me:12657: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:14283: \"$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:12663: \$? = $ac_status" >&5
-+ echo "$as_me:14289: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -12682,7 +14308,7 @@
- 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 12685 "configure"
-+#line 14311 "configure"
- #include "confdefs.h"
- #include <string.h>
-
-@@ -12700,7 +14326,7 @@
- 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 12703 "configure"
-+#line 14329 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
-
-@@ -12721,7 +14347,7 @@
- :
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 12724 "configure"
-+#line 14350 "configure"
- #include "confdefs.h"
- #include <ctype.h>
- #if ((' ' & 0x0FF) == 0x020)
-@@ -12747,15 +14373,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:12750: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14376: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12753: \$? = $ac_status" >&5
-+ echo "$as_me:14379: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:12755: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14381: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12758: \$? = $ac_status" >&5
-+ echo "$as_me:14384: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -12768,7 +14394,7 @@
- fi
- fi
- fi
--echo "$as_me:12771: result: $ac_cv_header_stdc" >&5
-+echo "$as_me:14397: result: $ac_cv_header_stdc" >&5
- echo "${ECHO_T}$ac_cv_header_stdc" >&6
- if test $ac_cv_header_stdc = yes; then
-
-@@ -12781,13 +14407,13 @@
- 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:12784: checking for $ac_hdr that defines DIR" >&5
-+echo "$as_me:14410: 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 12790 "configure"
-+#line 14416 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #include <$ac_hdr>
-@@ -12802,16 +14428,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:12805: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:14431: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:12808: \$? = $ac_status" >&5
-+ echo "$as_me:14434: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:12811: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14437: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12814: \$? = $ac_status" >&5
-+ echo "$as_me:14440: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_Header=yes"
- else
-@@ -12821,7 +14447,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:12824: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:14450: 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
-@@ -12834,7 +14460,7 @@
- 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:12837: checking for opendir in -ldir" >&5
-+ echo "$as_me:14463: 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
-@@ -12842,7 +14468,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-ldir $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 12845 "configure"
-+#line 14471 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -12861,16 +14487,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12864: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14490: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12867: \$? = $ac_status" >&5
-+ echo "$as_me:14493: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12870: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14496: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12873: \$? = $ac_status" >&5
-+ echo "$as_me:14499: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_dir_opendir=yes
- else
-@@ -12881,14 +14507,14 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:12884: result: $ac_cv_lib_dir_opendir" >&5
-+echo "$as_me:14510: 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
- LIBS="$LIBS -ldir"
- fi
-
- else
-- echo "$as_me:12891: checking for opendir in -lx" >&5
-+ echo "$as_me:14517: 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
-@@ -12896,7 +14522,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lx $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 12899 "configure"
-+#line 14525 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -12915,16 +14541,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12918: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14544: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12921: \$? = $ac_status" >&5
-+ echo "$as_me:14547: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12924: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14550: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12927: \$? = $ac_status" >&5
-+ echo "$as_me:14553: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_x_opendir=yes
- else
-@@ -12935,7 +14561,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:12938: result: $ac_cv_lib_x_opendir" >&5
-+echo "$as_me:14564: 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
- LIBS="$LIBS -lx"
-@@ -12943,13 +14569,13 @@
-
- fi
-
--echo "$as_me:12946: checking whether time.h and sys/time.h may both be included" >&5
-+echo "$as_me:14572: 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 12952 "configure"
-+#line 14578 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #include <sys/time.h>
-@@ -12965,16 +14591,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:12968: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:14594: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:12971: \$? = $ac_status" >&5
-+ echo "$as_me:14597: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:12974: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14600: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12977: \$? = $ac_status" >&5
-+ echo "$as_me:14603: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_header_time=yes
- else
-@@ -12984,7 +14610,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:12987: result: $ac_cv_header_time" >&5
-+echo "$as_me:14613: result: $ac_cv_header_time" >&5
- echo "${ECHO_T}$ac_cv_header_time" >&6
- if test $ac_cv_header_time = yes; then
-
-@@ -12999,17 +14625,17 @@
- cf_regex_libs="regex re"
- case $host_os in #(vi
- mingw*)
-- cf_regex_libs="regex.dll $cf_regex_libs"
-+ cf_regex_libs="gnurx $cf_regex_libs"
- ;;
- esac
-
--echo "$as_me:13006: checking for regcomp" >&5
-+echo "$as_me:14632: 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 13012 "configure"
-+#line 14638 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char regcomp (); below. */
-@@ -13032,7 +14658,7 @@
- #if defined (__stub_regcomp) || defined (__stub___regcomp)
- choke me
- #else
--f = regcomp;
-+f = regcomp; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -13040,16 +14666,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13043: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14669: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13046: \$? = $ac_status" >&5
-+ echo "$as_me:14672: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13049: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14675: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13052: \$? = $ac_status" >&5
-+ echo "$as_me:14678: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_regcomp=yes
- else
-@@ -13059,7 +14685,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:13062: result: $ac_cv_func_regcomp" >&5
-+echo "$as_me:14688: result: $ac_cv_func_regcomp" >&5
- echo "${ECHO_T}$ac_cv_func_regcomp" >&6
- if test $ac_cv_func_regcomp = yes; then
- cf_regex_func=regcomp
-@@ -13068,7 +14694,7 @@
- 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:13071: checking for regcomp in -l$cf_regex_lib" >&5
-+echo "$as_me:14697: 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
-@@ -13076,7 +14702,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-l$cf_regex_lib $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 13079 "configure"
-+#line 14705 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -13095,16 +14721,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13098: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14724: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13101: \$? = $ac_status" >&5
-+ echo "$as_me:14727: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13104: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14730: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13107: \$? = $ac_status" >&5
-+ echo "$as_me:14733: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_Lib=yes"
- else
-@@ -13115,11 +14741,26 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:13118: result: `eval echo '${'$as_ac_Lib'}'`" >&5
-+echo "$as_me:14744: 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
-
-- LIBS="-l$cf_regex_lib $LIBS"
-+cf_add_libs="-l$cf_regex_lib"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- cf_regex_func=regcomp
- break
- fi
-@@ -13129,13 +14770,13 @@
- fi
-
- if test "$cf_regex_func" = no ; then
-- echo "$as_me:13132: checking for compile" >&5
-+ echo "$as_me:14773: 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 13138 "configure"
-+#line 14779 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char compile (); below. */
-@@ -13158,7 +14799,7 @@
- #if defined (__stub_compile) || defined (__stub___compile)
- choke me
- #else
--f = compile;
-+f = compile; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -13166,16 +14807,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13169: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14810: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13172: \$? = $ac_status" >&5
-+ echo "$as_me:14813: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13175: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14816: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13178: \$? = $ac_status" >&5
-+ echo "$as_me:14819: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_compile=yes
- else
-@@ -13185,13 +14826,13 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:13188: result: $ac_cv_func_compile" >&5
-+echo "$as_me:14829: result: $ac_cv_func_compile" >&5
- echo "${ECHO_T}$ac_cv_func_compile" >&6
- if test $ac_cv_func_compile = yes; then
- cf_regex_func=compile
- else
-
-- echo "$as_me:13194: checking for compile in -lgen" >&5
-+ echo "$as_me:14835: 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
-@@ -13199,7 +14840,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lgen $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 13202 "configure"
-+#line 14843 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -13218,16 +14859,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13221: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14862: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13224: \$? = $ac_status" >&5
-+ echo "$as_me:14865: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13227: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14868: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13230: \$? = $ac_status" >&5
-+ echo "$as_me:14871: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_gen_compile=yes
- else
-@@ -13238,11 +14879,26 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:13241: result: $ac_cv_lib_gen_compile" >&5
-+echo "$as_me:14882: 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
-
-- LIBS="-lgen $LIBS"
-+cf_add_libs="-lgen"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- cf_regex_func=compile
- fi
-
-@@ -13251,11 +14907,11 @@
- fi
-
- if test "$cf_regex_func" = no ; then
-- { echo "$as_me:13254: WARNING: cannot find regular expression library" >&5
-+ { echo "$as_me:14910: WARNING: cannot find regular expression library" >&5
- echo "$as_me: WARNING: cannot find regular expression library" >&2;}
- fi
-
--echo "$as_me:13258: checking for regular-expression headers" >&5
-+echo "$as_me:14914: 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
-@@ -13267,7 +14923,7 @@
- for cf_regex_hdr in regexp.h regexpr.h
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 13270 "configure"
-+#line 14926 "configure"
- #include "confdefs.h"
- #include <$cf_regex_hdr>
- int
-@@ -13282,16 +14938,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13285: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14941: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13288: \$? = $ac_status" >&5
-+ echo "$as_me:14944: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13291: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14947: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13294: \$? = $ac_status" >&5
-+ echo "$as_me:14950: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_regex_hdrs=$cf_regex_hdr
-@@ -13308,7 +14964,7 @@
- for cf_regex_hdr in regex.h
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 13311 "configure"
-+#line 14967 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #include <$cf_regex_hdr>
-@@ -13326,16 +14982,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13329: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14985: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13332: \$? = $ac_status" >&5
-+ echo "$as_me:14988: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13335: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14991: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13338: \$? = $ac_status" >&5
-+ echo "$as_me:14994: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_regex_hdrs=$cf_regex_hdr
-@@ -13351,21 +15007,24 @@
- esac
-
- fi
--echo "$as_me:13354: result: $cf_cv_regex_hdrs" >&5
-+echo "$as_me:15010: result: $cf_cv_regex_hdrs" >&5
- echo "${ECHO_T}$cf_cv_regex_hdrs" >&6
-
- case $cf_cv_regex_hdrs in #(vi
-- no) { echo "$as_me:13358: WARNING: no regular expression header found" >&5
-+ no) { echo "$as_me:15014: WARNING: no regular expression header found" >&5
- echo "$as_me: WARNING: no regular expression header found" >&2;} ;; #(vi
-- regex.h) cat >>confdefs.h <<\EOF
-+ regex.h)
-+cat >>confdefs.h <<\EOF
- #define HAVE_REGEX_H_FUNCS 1
- EOF
- ;; #(vi
-- regexp.h) cat >>confdefs.h <<\EOF
-+ regexp.h)
-+cat >>confdefs.h <<\EOF
- #define HAVE_REGEXP_H_FUNCS 1
- EOF
- ;; #(vi
-- regexpr.h) cat >>confdefs.h <<\EOF
-+ regexpr.h)
-+cat >>confdefs.h <<\EOF
- #define HAVE_REGEXPR_H_FUNCS 1
- EOF
- ;;
-@@ -13391,23 +15050,71 @@
-
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:13394: checking for $ac_header" >&5
-+echo "$as_me:15053: 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 15059 "configure"
-+#include "confdefs.h"
-+#include <$ac_header>
-+_ACEOF
-+if { (eval echo "$as_me:15063: \"$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:15069: \$? = $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:15088: 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
-+
-+for ac_header in unistd.h getopt.h
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+echo "$as_me:15101: 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 13400 "configure"
-+#line 15107 "configure"
- #include "confdefs.h"
- #include <$ac_header>
- _ACEOF
--if { (eval echo "$as_me:13404: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:15111: \"$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:13410: \$? = $ac_status" >&5
-+ echo "$as_me:15117: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -13426,7 +15133,7 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:13429: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:15136: 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
-@@ -13436,11 +15143,72 @@
- fi
- done
-
-+echo "$as_me:15146: 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
-+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 15156 "configure"
-+#include "confdefs.h"
-+
-+#include <$cf_header>
-+int
-+main ()
-+{
-+int x = optind; char *y = optarg
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:15169: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:15172: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:15175: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:15178: \$? = $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
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+done
-+
-+fi
-+echo "$as_me:15190: result: $cf_cv_getopt_header" >&5
-+echo "${ECHO_T}$cf_cv_getopt_header" >&6
-+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
-+
-+cat >>confdefs.h <<\EOF
-+#define NEED_GETOPT_H 1
-+EOF
-+
-+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 "$ISC" = yes ; then
-+if test "x$ISC" = xyes ; then
-
--echo "$as_me:13443: checking for main in -lcposix" >&5
-+echo "$as_me:15211: 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
-@@ -13448,7 +15216,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lcposix $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 13451 "configure"
-+#line 15219 "configure"
- #include "confdefs.h"
-
- int
-@@ -13460,16 +15228,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13463: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:15231: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13466: \$? = $ac_status" >&5
-+ echo "$as_me:15234: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13469: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15237: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13472: \$? = $ac_status" >&5
-+ echo "$as_me:15240: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_cposix_main=yes
- else
-@@ -13480,7 +15248,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:13483: result: $ac_cv_lib_cposix_main" >&5
-+echo "$as_me:15251: 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
-@@ -13491,7 +15259,7 @@
-
- fi
-
-- echo "$as_me:13494: checking for bzero in -linet" >&5
-+ echo "$as_me:15262: 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
-@@ -13499,7 +15267,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-linet $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 13502 "configure"
-+#line 15270 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -13518,16 +15286,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13521: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:15289: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13524: \$? = $ac_status" >&5
-+ echo "$as_me:15292: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13527: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15295: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13530: \$? = $ac_status" >&5
-+ echo "$as_me:15298: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_inet_bzero=yes
- else
-@@ -13538,21 +15306,37 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:13541: result: $ac_cv_lib_inet_bzero" >&5
-+echo "$as_me:15309: 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
-- LIBS="-linet $LIBS"
-+
-+cf_add_libs="-linet"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- fi
- fi
-
--echo "$as_me:13548: checking if sys/time.h works with sys/select.h" >&5
-+echo "$as_me:15332: 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 13555 "configure"
-+#line 15339 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -13572,16 +15356,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13575: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15359: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13578: \$? = $ac_status" >&5
-+ echo "$as_me:15362: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13581: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15365: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13584: \$? = $ac_status" >&5
-+ echo "$as_me:15368: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_sys_time_select=yes
- else
-@@ -13593,9 +15377,10 @@
-
- fi
-
--echo "$as_me:13596: result: $cf_cv_sys_time_select" >&5
-+echo "$as_me:15380: 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
-+test "$cf_cv_sys_time_select" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_SYS_TIME_SELECT 1
- EOF
-
-@@ -13607,104 +15392,13 @@
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- ac_main_return=return
-
--echo "$as_me:13610: 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 13618 "configure"
--#include "confdefs.h"
--#include <stdarg.h>
--#include <stdio.h>
--#include <sys/types.h>
--#include <sys/stat.h>
--/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
--struct buf { int x; };
--FILE * (*rcsopen) (struct buf *, struct stat *, int);
--static char *e (p, i)
-- char **p;
-- int i;
--{
-- return p[i];
--}
--static char *f (char * (*g) (char **, int), char **p, ...)
--{
-- char *s;
-- va_list v;
-- va_start (v,p);
-- s = g (p, va_arg (v,int));
-- va_end (v);
-- return s;
--}
--int test (int i, double x);
--struct s1 {int (*f) (int a);};
--struct s2 {int (*f) (double a);};
--int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
--int argc;
--char **argv;
--int
--main ()
--{
--return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
-- ;
-- return 0;
--}
--_ACEOF
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX 10.20 and later -Ae
--# HP-UX older versions -Aa -D_HPUX_SOURCE
--# SVR4 -Xc -D__EXTENSIONS__
--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:13667: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:13670: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13673: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:13676: \$? = $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
--fi
--rm -f conftest.$ac_objext
--done
--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:13693: result: none needed" >&5
--echo "${ECHO_T}none needed" >&6 ;;
-- *)
-- echo "$as_me:13696: result: $ac_cv_prog_cc_stdc" >&5
--echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
-- CC="$CC $ac_cv_prog_cc_stdc" ;;
--esac
--
--echo "$as_me:13701: checking for an ANSI C-conforming const" >&5
-+echo "$as_me:15395: 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 13707 "configure"
-+#line 15401 "configure"
- #include "confdefs.h"
-
- int
-@@ -13762,16 +15456,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13765: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15459: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13768: \$? = $ac_status" >&5
-+ echo "$as_me:15462: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13771: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15465: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13774: \$? = $ac_status" >&5
-+ echo "$as_me:15468: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_c_const=yes
- else
-@@ -13781,7 +15475,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:13784: result: $ac_cv_c_const" >&5
-+echo "$as_me:15478: result: $ac_cv_c_const" >&5
- echo "${ECHO_T}$ac_cv_c_const" >&6
- if test $ac_cv_c_const = no; then
-
-@@ -13791,7 +15485,7 @@
-
- fi
-
--echo "$as_me:13794: checking for inline" >&5
-+echo "$as_me:15488: 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
-@@ -13799,7 +15493,7 @@
- ac_cv_c_inline=no
- for ac_kw in inline __inline__ __inline; do
- cat >conftest.$ac_ext <<_ACEOF
--#line 13802 "configure"
-+#line 15496 "configure"
- #include "confdefs.h"
- #ifndef __cplusplus
- static $ac_kw int static_foo () {return 0; }
-@@ -13808,16 +15502,16 @@
-
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13811: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15505: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13814: \$? = $ac_status" >&5
-+ echo "$as_me:15508: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13817: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15511: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13820: \$? = $ac_status" >&5
-+ echo "$as_me:15514: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_c_inline=$ac_kw; break
- else
-@@ -13828,7 +15522,7 @@
- done
-
- fi
--echo "$as_me:13831: result: $ac_cv_c_inline" >&5
-+echo "$as_me:15525: result: $ac_cv_c_inline" >&5
- echo "${ECHO_T}$ac_cv_c_inline" >&6
- case $ac_cv_c_inline in
- inline | yes) ;;
-@@ -13849,9 +15543,12 @@
- if test "$INTEL_COMPILER" = yes
- then
- :
-+ elif test "$CLANG_COMPILER" = yes
-+ then
-+ :
- elif test "$GCC" = yes
- then
-- echo "$as_me:13854: checking if $CC supports options to tune inlining" >&5
-+ echo "$as_me:15551: 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
-@@ -13860,7 +15557,7 @@
- cf_save_CFLAGS=$CFLAGS
- CFLAGS="$CFLAGS --param max-inline-insns-single=1200"
- cat >conftest.$ac_ext <<_ACEOF
--#line 13863 "configure"
-+#line 15560 "configure"
- #include "confdefs.h"
- inline int foo(void) { return 1; }
- int
-@@ -13872,16 +15569,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13875: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15572: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13878: \$? = $ac_status" >&5
-+ echo "$as_me:15575: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13881: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15578: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13884: \$? = $ac_status" >&5
-+ echo "$as_me:15581: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_gcc_inline=yes
- else
-@@ -13893,7 +15590,7 @@
- CFLAGS=$cf_save_CFLAGS
-
- fi
--echo "$as_me:13896: result: $cf_cv_gcc_inline" >&5
-+echo "$as_me:15593: result: $cf_cv_gcc_inline" >&5
- echo "${ECHO_T}$cf_cv_gcc_inline" >&6
- if test "$cf_cv_gcc_inline" = yes ; then
-
-@@ -13912,7 +15609,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -13953,7 +15650,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -13979,7 +15676,7 @@
- fi
- fi
-
--echo "$as_me:13982: checking for signal global datatype" >&5
-+echo "$as_me:15679: 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
-@@ -13991,7 +15688,7 @@
- "int"
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 13994 "configure"
-+#line 15691 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -14014,16 +15711,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14017: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15714: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14020: \$? = $ac_status" >&5
-+ echo "$as_me:15717: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14023: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15720: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14026: \$? = $ac_status" >&5
-+ echo "$as_me:15723: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_sig_atomic_t=$cf_type
- else
-@@ -14037,15 +15734,16 @@
-
- fi
-
--echo "$as_me:14040: result: $cf_cv_sig_atomic_t" >&5
-+echo "$as_me:15737: 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
-+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
-
--echo "$as_me:14048: checking for type of chtype" >&5
-+echo "$as_me:15746: 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
-@@ -14055,7 +15753,7 @@
- cf_cv_typeof_chtype=long
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 14058 "configure"
-+#line 15756 "configure"
- #include "confdefs.h"
-
- #define WANT_BITS 31
-@@ -14090,15 +15788,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:14093: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:15791: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14096: \$? = $ac_status" >&5
-+ echo "$as_me:15794: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:14098: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15796: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14101: \$? = $ac_status" >&5
-+ echo "$as_me:15799: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_typeof_chtype=`cat cf_test.out`
- else
-@@ -14113,7 +15811,7 @@
-
- fi
-
--echo "$as_me:14116: result: $cf_cv_typeof_chtype" >&5
-+echo "$as_me:15814: result: $cf_cv_typeof_chtype" >&5
- echo "${ECHO_T}$cf_cv_typeof_chtype" >&6
-
- cat >>confdefs.h <<EOF
-@@ -14125,14 +15823,14 @@
- fi
- test "$cf_cv_typeof_chtype" = unsigned && cf_cv_typeof_chtype=""
-
--echo "$as_me:14128: checking if unsigned literals are legal" >&5
-+echo "$as_me:15826: 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 14135 "configure"
-+#line 15833 "configure"
- #include "confdefs.h"
-
- int
-@@ -14144,16 +15842,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14147: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15845: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14150: \$? = $ac_status" >&5
-+ echo "$as_me:15848: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14153: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15851: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14156: \$? = $ac_status" >&5
-+ echo "$as_me:15854: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_unsigned_literals=yes
- else
-@@ -14165,7 +15863,7 @@
-
- fi
-
--echo "$as_me:14168: result: $cf_cv_unsigned_literals" >&5
-+echo "$as_me:15866: result: $cf_cv_unsigned_literals" >&5
- echo "${ECHO_T}$cf_cv_unsigned_literals" >&6
-
- cf_cv_1UL="1"
-@@ -14181,14 +15879,14 @@
-
- ### Checks for external-data
-
--echo "$as_me:14184: checking if external errno is declared" >&5
-+echo "$as_me:15882: 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 14191 "configure"
-+#line 15889 "configure"
- #include "confdefs.h"
-
- #ifdef HAVE_STDLIB_H
-@@ -14206,16 +15904,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14209: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15907: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14212: \$? = $ac_status" >&5
-+ echo "$as_me:15910: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14215: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15913: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14218: \$? = $ac_status" >&5
-+ echo "$as_me:15916: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_dcl_errno=yes
- else
-@@ -14226,7 +15924,7 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:14229: result: $cf_cv_dcl_errno" >&5
-+echo "$as_me:15927: result: $cf_cv_dcl_errno" >&5
- echo "${ECHO_T}$cf_cv_dcl_errno" >&6
-
- if test "$cf_cv_dcl_errno" = no ; then
-@@ -14241,14 +15939,14 @@
-
- # It's possible (for near-UNIX clones) that the data doesn't exist
-
--echo "$as_me:14244: checking if external errno exists" >&5
-+echo "$as_me:15942: 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 14251 "configure"
-+#line 15949 "configure"
- #include "confdefs.h"
-
- #undef errno
-@@ -14263,16 +15961,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14266: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:15964: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14269: \$? = $ac_status" >&5
-+ echo "$as_me:15967: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14272: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15970: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14275: \$? = $ac_status" >&5
-+ echo "$as_me:15973: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_have_errno=yes
- else
-@@ -14283,7 +15981,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-
- fi
--echo "$as_me:14286: result: $cf_cv_have_errno" >&5
-+echo "$as_me:15984: result: $cf_cv_have_errno" >&5
- echo "${ECHO_T}$cf_cv_have_errno" >&6
-
- if test "$cf_cv_have_errno" = yes ; then
-@@ -14296,7 +15994,7 @@
-
- fi
-
--echo "$as_me:14299: checking if data-only library module links" >&5
-+echo "$as_me:15997: 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
-@@ -14304,20 +16002,20 @@
-
- rm -f conftest.a
- cat >conftest.$ac_ext <<EOF
--#line 14307 "configure"
-+#line 16005 "configure"
- int testdata[3] = { 123, 456, 789 };
- EOF
-- if { (eval echo "$as_me:14310: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:16008: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14313: \$? = $ac_status" >&5
-+ echo "$as_me:16011: \$? = $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 14320 "configure"
-+#line 16018 "configure"
- int testfunc()
- {
- #if defined(NeXT)
-@@ -14330,10 +16028,10 @@
- #endif
- }
- EOF
-- if { (eval echo "$as_me:14333: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:16031: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14336: \$? = $ac_status" >&5
-+ echo "$as_me:16034: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- mv conftest.o func.o && \
- ( $AR $ARFLAGS conftest.a func.o ) 2>&5 1>/dev/null
-@@ -14346,7 +16044,7 @@
- cf_cv_link_dataonly=unknown
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 14349 "configure"
-+#line 16047 "configure"
- #include "confdefs.h"
-
- int main()
-@@ -14357,15 +16055,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:14360: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16058: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14363: \$? = $ac_status" >&5
-+ echo "$as_me:16061: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:14365: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16063: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14368: \$? = $ac_status" >&5
-+ echo "$as_me:16066: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_link_dataonly=yes
- else
-@@ -14380,11 +16078,12 @@
-
- fi
-
--echo "$as_me:14383: result: $cf_cv_link_dataonly" >&5
-+echo "$as_me:16081: result: $cf_cv_link_dataonly" >&5
- echo "${ECHO_T}$cf_cv_link_dataonly" >&6
-
- if test "$cf_cv_link_dataonly" = no ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define BROKEN_LINKER 1
- EOF
-
-@@ -14397,13 +16096,16 @@
- getcwd \
- getegid \
- geteuid \
-+getopt \
- getttynam \
- issetugid \
- poll \
-+putenv \
- remove \
- select \
- setbuf \
- setbuffer \
-+setenv \
- setvbuf \
- sigaction \
- sigvec \
-@@ -14415,13 +16117,13 @@
-
- do
- as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
--echo "$as_me:14418: checking for $ac_func" >&5
-+echo "$as_me:16120: 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 14424 "configure"
-+#line 16126 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below. */
-@@ -14444,7 +16146,7 @@
- #if defined (__stub_$ac_func) || defined (__stub___$ac_func)
- choke me
- #else
--f = $ac_func;
-+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -14452,16 +16154,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14455: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16157: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14458: \$? = $ac_status" >&5
-+ echo "$as_me:16160: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14461: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16163: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14464: \$? = $ac_status" >&5
-+ echo "$as_me:16166: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_var=yes"
- else
-@@ -14471,7 +16173,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:14474: result: `eval echo '${'$as_ac_var'}'`" >&5
-+echo "$as_me:16176: 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
-@@ -14481,16 +16183,23 @@
- fi
- done
-
--if test "$with_getcap" = "yes" ; then
-+if test "x$ac_cv_func_getopt" = xno &&
-+ test "x$cf_with_progs$cf_with_tests" != xnono; then
-+ { { echo "$as_me:16188: error: getopt is required for building programs" >&5
-+echo "$as_me: error: getopt is required for building programs" >&2;}
-+ { (exit 1); exit 1; }; }
-+fi
-
--echo "$as_me:14486: checking for terminal-capability database functions" >&5
-+if test "x$with_getcap" = "xyes" ; then
-+
-+echo "$as_me:16195: 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 14493 "configure"
-+#line 16202 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -14501,7 +16210,7 @@
- char temp[128];
- char *buf = temp;
- char *db_array = temp;
-- cgetent(&buf, /* int *, */ &db_array, "vt100");
-+ cgetent(&buf, &db_array, "vt100");
- cgetcap(buf, "tc", '=');
- cgetmatch(buf, "tc");
-
-@@ -14510,16 +16219,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14513: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16222: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14516: \$? = $ac_status" >&5
-+ echo "$as_me:16225: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14519: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16228: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14522: \$? = $ac_status" >&5
-+ echo "$as_me:16231: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_cgetent=yes
- else
-@@ -14530,23 +16239,87 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-
- fi
--
--echo "$as_me:14534: result: $cf_cv_cgetent" >&5
-+echo "$as_me:16242: result: $cf_cv_cgetent" >&5
- echo "${ECHO_T}$cf_cv_cgetent" >&6
--test "$cf_cv_cgetent" = yes && cat >>confdefs.h <<\EOF
-+
-+if test "$cf_cv_cgetent" = yes
-+then
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_BSD_CGETENT 1
- EOF
-
-+echo "$as_me:16252: 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 16259 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+int
-+main ()
-+{
-+
-+ char temp[128];
-+ char *buf = temp;
-+#ifndef _NETBSD_SOURCE /* given, since April 2004 in stdlib.h */
-+ const char *db_array = temp;
-+ cgetent(&buf, &db_array, "vt100");
-+#endif
-+ cgetcap(buf, "tc", '=');
-+ cgetmatch(buf, "tc");
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:16281: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:16284: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:16287: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:16290: \$? = $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
-+cf_cv_cgetent_const=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+
-+fi
-+echo "$as_me:16301: result: $cf_cv_cgetent_const" >&5
-+echo "${ECHO_T}$cf_cv_cgetent_const" >&6
-+ if test "$cf_cv_cgetent_const" = yes
-+ then
-+
-+cat >>confdefs.h <<EOF
-+#define CGETENT_CONST const
-+EOF
-+
-+ fi
-+fi
-+
- fi
-
--echo "$as_me:14542: checking for isascii" >&5
-+echo "$as_me:16315: 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 14549 "configure"
-+#line 16322 "configure"
- #include "confdefs.h"
- #include <ctype.h>
- int
-@@ -14558,16 +16331,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14561: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16334: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14564: \$? = $ac_status" >&5
-+ echo "$as_me:16337: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14567: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16340: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14570: \$? = $ac_status" >&5
-+ echo "$as_me:16343: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_have_isascii=yes
- else
-@@ -14578,17 +16351,18 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-
- fi
--echo "$as_me:14581: result: $cf_cv_have_isascii" >&5
-+echo "$as_me:16354: result: $cf_cv_have_isascii" >&5
- echo "${ECHO_T}$cf_cv_have_isascii" >&6
--test "$cf_cv_have_isascii" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_have_isascii" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_ISASCII 1
- EOF
-
- if test "$ac_cv_func_sigaction" = yes; then
--echo "$as_me:14588: checking whether sigaction needs _POSIX_SOURCE" >&5
-+echo "$as_me:16362: 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 14591 "configure"
-+#line 16365 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -14602,16 +16376,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14605: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:16379: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14608: \$? = $ac_status" >&5
-+ echo "$as_me:16382: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14611: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16385: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14614: \$? = $ac_status" >&5
-+ echo "$as_me:16388: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- sigact_bad=no
- else
-@@ -14619,7 +16393,7 @@
- cat conftest.$ac_ext >&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 14622 "configure"
-+#line 16396 "configure"
- #include "confdefs.h"
-
- #define _POSIX_SOURCE
-@@ -14634,20 +16408,21 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14637: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:16411: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14640: \$? = $ac_status" >&5
-+ echo "$as_me:16414: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14643: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16417: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14646: \$? = $ac_status" >&5
-+ echo "$as_me:16420: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- sigact_bad=yes
-- cat >>confdefs.h <<\EOF
--#define SVR4_ACTION 1
-+
-+cat >>confdefs.h <<\EOF
-+#define _POSIX_SOURCE 1
- EOF
-
- else
-@@ -14658,11 +16433,11 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
--echo "$as_me:14661: result: $sigact_bad" >&5
-+echo "$as_me:16436: result: $sigact_bad" >&5
- echo "${ECHO_T}$sigact_bad" >&6
- fi
-
--echo "$as_me:14665: checking if nanosleep really works" >&5
-+echo "$as_me:16440: 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
-@@ -14672,7 +16447,7 @@
- cf_cv_func_nanosleep=unknown
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 14675 "configure"
-+#line 16450 "configure"
- #include "confdefs.h"
-
- #include <stdio.h>
-@@ -14697,15 +16472,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:14700: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16475: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14703: \$? = $ac_status" >&5
-+ echo "$as_me:16478: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:14705: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16480: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14708: \$? = $ac_status" >&5
-+ echo "$as_me:16483: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_func_nanosleep=yes
- else
-@@ -14717,10 +16492,11 @@
- rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
- fi
--echo "$as_me:14720: result: $cf_cv_func_nanosleep" >&5
-+echo "$as_me:16495: result: $cf_cv_func_nanosleep" >&5
- echo "${ECHO_T}$cf_cv_func_nanosleep" >&6
-
--test "$cf_cv_func_nanosleep" = "yes" && cat >>confdefs.h <<\EOF
-+test "$cf_cv_func_nanosleep" = "yes" &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_NANOSLEEP 1
- EOF
-
-@@ -14731,23 +16507,23 @@
-
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:14734: checking for $ac_header" >&5
-+echo "$as_me:16510: 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 14740 "configure"
-+#line 16516 "configure"
- #include "confdefs.h"
- #include <$ac_header>
- _ACEOF
--if { (eval echo "$as_me:14744: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:16520: \"$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:14750: \$? = $ac_status" >&5
-+ echo "$as_me:16526: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -14766,7 +16542,7 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:14769: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:16545: 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
-@@ -14781,23 +16557,23 @@
- for ac_header in sys/termio.h
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:14784: checking for $ac_header" >&5
-+echo "$as_me:16560: 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 14790 "configure"
-+#line 16566 "configure"
- #include "confdefs.h"
- #include <$ac_header>
- _ACEOF
--if { (eval echo "$as_me:14794: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:16570: \"$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:14800: \$? = $ac_status" >&5
-+ echo "$as_me:16576: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -14816,7 +16592,7 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:14819: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:16595: 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
-@@ -14834,10 +16610,10 @@
- *) termios_bad=maybe ;;
- esac
- if test "$termios_bad" = maybe ; then
-- echo "$as_me:14837: checking whether termios.h needs _POSIX_SOURCE" >&5
-+ echo "$as_me:16613: 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 14840 "configure"
-+#line 16616 "configure"
- #include "confdefs.h"
- #include <termios.h>
- int
-@@ -14849,16 +16625,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14852: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:16628: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14855: \$? = $ac_status" >&5
-+ echo "$as_me:16631: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14858: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16634: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14861: \$? = $ac_status" >&5
-+ echo "$as_me:16637: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- termios_bad=no
- else
-@@ -14866,7 +16642,7 @@
- cat conftest.$ac_ext >&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 14869 "configure"
-+#line 16645 "configure"
- #include "confdefs.h"
-
- #define _POSIX_SOURCE
-@@ -14880,23 +16656,24 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14883: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:16659: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14886: \$? = $ac_status" >&5
-+ echo "$as_me:16662: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14889: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16665: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14892: \$? = $ac_status" >&5
-+ echo "$as_me:16668: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- termios_bad=unknown
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--termios_bad=yes cat >>confdefs.h <<\EOF
--#define SVR4_TERMIO 1
-+termios_bad=yes
-+cat >>confdefs.h <<\EOF
-+#define _POSIX_SOURCE 1
- EOF
-
- fi
-@@ -14904,19 +16681,19 @@
-
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-- echo "$as_me:14907: result: $termios_bad" >&5
-+ echo "$as_me:16684: result: $termios_bad" >&5
- echo "${ECHO_T}$termios_bad" >&6
- fi
- fi
-
--echo "$as_me:14912: checking for tcgetattr" >&5
-+echo "$as_me:16689: 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 14919 "configure"
-+#line 16696 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -14944,16 +16721,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14947: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16724: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14950: \$? = $ac_status" >&5
-+ echo "$as_me:16727: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14953: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16730: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14956: \$? = $ac_status" >&5
-+ echo "$as_me:16733: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_have_tcgetattr=yes
- else
-@@ -14963,20 +16740,21 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:14966: result: $cf_cv_have_tcgetattr" >&5
-+echo "$as_me:16743: result: $cf_cv_have_tcgetattr" >&5
- echo "${ECHO_T}$cf_cv_have_tcgetattr" >&6
--test "$cf_cv_have_tcgetattr" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_have_tcgetattr" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_TCGETATTR 1
- EOF
-
--echo "$as_me:14972: checking for vsscanf function or workaround" >&5
-+echo "$as_me:16750: 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 14979 "configure"
-+#line 16757 "configure"
- #include "confdefs.h"
-
- #include <stdarg.h>
-@@ -14992,16 +16770,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14995: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16773: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14998: \$? = $ac_status" >&5
-+ echo "$as_me:16776: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:15001: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16779: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15004: \$? = $ac_status" >&5
-+ echo "$as_me:16782: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_func_vsscanf=vsscanf
- else
-@@ -15009,7 +16787,7 @@
- cat conftest.$ac_ext >&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 15012 "configure"
-+#line 16790 "configure"
- #include "confdefs.h"
-
- #include <stdarg.h>
-@@ -15031,16 +16809,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:15034: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16812: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15037: \$? = $ac_status" >&5
-+ echo "$as_me:16815: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:15040: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16818: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15043: \$? = $ac_status" >&5
-+ echo "$as_me:16821: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_func_vsscanf=vfscanf
- else
-@@ -15048,7 +16826,7 @@
- cat conftest.$ac_ext >&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 15051 "configure"
-+#line 16829 "configure"
- #include "confdefs.h"
-
- #include <stdarg.h>
-@@ -15070,16 +16848,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:15073: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16851: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15076: \$? = $ac_status" >&5
-+ echo "$as_me:16854: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:15079: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16857: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15082: \$? = $ac_status" >&5
-+ echo "$as_me:16860: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_func_vsscanf=_doscan
- else
-@@ -15094,25 +16872,28 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:15097: result: $cf_cv_func_vsscanf" >&5
-+echo "$as_me:16875: result: $cf_cv_func_vsscanf" >&5
- echo "${ECHO_T}$cf_cv_func_vsscanf" >&6
-
- case $cf_cv_func_vsscanf in #(vi
--vsscanf) cat >>confdefs.h <<\EOF
-+vsscanf)
-+cat >>confdefs.h <<\EOF
- #define HAVE_VSSCANF 1
- EOF
- ;; #(vi
--vfscanf) cat >>confdefs.h <<\EOF
-+vfscanf)
-+cat >>confdefs.h <<\EOF
- #define HAVE_VFSCANF 1
- EOF
- ;; #(vi
--_doscan) cat >>confdefs.h <<\EOF
-+_doscan)
-+cat >>confdefs.h <<\EOF
- #define HAVE__DOSCAN 1
- EOF
- ;;
- esac
-
--echo "$as_me:15115: checking for working mkstemp" >&5
-+echo "$as_me:16896: 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
-@@ -15120,68 +16901,10 @@
-
- rm -rf conftest*
- if test "$cross_compiling" = yes; then
-- echo "$as_me:15123: 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 15129 "configure"
--#include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char mkstemp (); below. */
--#include <assert.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 mkstemp ();
--char (*f) ();
--
--int
--main ()
--{
--/* The GNU C library defines this 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_mkstemp) || defined (__stub___mkstemp)
--choke me
--#else
--f = mkstemp;
--#endif
--
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:15160: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:15163: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:15166: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:15169: \$? = $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
--ac_cv_func_mkstemp=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--fi
--echo "$as_me:15179: result: $ac_cv_func_mkstemp" >&5
--echo "${ECHO_T}$ac_cv_func_mkstemp" >&6
--
-+ cf_cv_func_mkstemp=maybe
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 15184 "configure"
-+#line 16907 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -15219,15 +16942,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:15222: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16945: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15225: \$? = $ac_status" >&5
-+ echo "$as_me:16948: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:15227: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16950: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15230: \$? = $ac_status" >&5
-+ echo "$as_me:16953: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_func_mkstemp=yes
-
-@@ -15242,10 +16965,72 @@
- fi
-
- fi
--echo "$as_me:15245: result: $cf_cv_func_mkstemp" >&5
-+echo "$as_me:16968: 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:16971: 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 16977 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char mkstemp (); below. */
-+#include <assert.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 mkstemp ();
-+char (*f) ();
-+
-+int
-+main ()
-+{
-+/* The GNU C library defines this 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_mkstemp) || defined (__stub___mkstemp)
-+choke me
-+#else
-+f = mkstemp; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:17008: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:17011: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:17014: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:17017: \$? = $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
-+ac_cv_func_mkstemp=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+fi
-+echo "$as_me:17027: result: $ac_cv_func_mkstemp" >&5
-+echo "${ECHO_T}$ac_cv_func_mkstemp" >&6
-+
-+fi
- if test "x$cf_cv_func_mkstemp" = xyes || test "x$ac_cv_func_mkstemp" = xyes ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_MKSTEMP 1
- EOF
-
-@@ -15259,22 +17044,22 @@
- HAVE_VSSCANF=0
- fi
-
--if test "$cross_compiling" = yes ; then
-- { echo "$as_me:15263: WARNING: cross compiling: assume setvbuf params not reversed" >&5
-+if test "x$cross_compiling" = xyes ; then
-+ { echo "$as_me:17048: 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:15266: checking whether setvbuf arguments are reversed" >&5
-+ echo "$as_me:17051: 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:15272: error: cannot run test program while cross compiling" >&5
-+ { { echo "$as_me:17057: 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 15277 "configure"
-+#line 17062 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- /* If setvbuf has the reversed format, exit 0. */
-@@ -15291,15 +17076,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:15294: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:17079: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15297: \$? = $ac_status" >&5
-+ echo "$as_me:17082: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:15299: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17084: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15302: \$? = $ac_status" >&5
-+ echo "$as_me:17087: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_setvbuf_reversed=yes
- else
-@@ -15312,7 +17097,7 @@
- fi
- rm -f core core.* *.core
- fi
--echo "$as_me:15315: result: $ac_cv_func_setvbuf_reversed" >&5
-+echo "$as_me:17100: 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
-
-@@ -15323,68 +17108,66 @@
- fi
-
- fi
--echo "$as_me:15326: checking return type of signal handlers" >&5
--echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6
--if test "${ac_cv_type_signal+set}" = set; then
-+echo "$as_me:17111: 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 15332 "configure"
-+#line 17117 "configure"
- #include "confdefs.h"
--#include <sys/types.h>
--#include <signal.h>
--#ifdef signal
--# undef signal
--#endif
--#ifdef __cplusplus
--extern "C" void (*signal (int, void (*)(int)))(int);
--#else
--void (*signal ()) ();
--#endif
--
-+$ac_includes_default
- int
- main ()
- {
--int i;
-+if ((intptr_t *) 0)
-+ return 0;
-+if (sizeof (intptr_t))
-+ return 0;
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:15354: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:17132: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:15357: \$? = $ac_status" >&5
-+ echo "$as_me:17135: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:15360: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17138: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15363: \$? = $ac_status" >&5
-+ echo "$as_me:17141: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_type_signal=void
-+ ac_cv_type_intptr_t=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_type_signal=int
-+ac_cv_type_intptr_t=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:15373: result: $ac_cv_type_signal" >&5
--echo "${ECHO_T}$ac_cv_type_signal" >&6
-+echo "$as_me:17151: 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
-+ :
-+else
-
- cat >>confdefs.h <<EOF
--#define RETSIGTYPE $ac_cv_type_signal
-+#define intptr_t long
- EOF
-
--echo "$as_me:15380: checking for type sigaction_t" >&5
-+fi
-+
-+echo "$as_me:17163: 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 15387 "configure"
-+#line 17170 "configure"
- #include "confdefs.h"
-
- #include <signal.h>
-@@ -15397,16 +17180,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:15400: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:17183: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:15403: \$? = $ac_status" >&5
-+ echo "$as_me:17186: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:15406: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17189: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15409: \$? = $ac_status" >&5
-+ echo "$as_me:17192: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_type_sigaction=yes
- else
-@@ -15417,13 +17200,14 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
-
--echo "$as_me:15420: result: $cf_cv_type_sigaction" >&5
-+echo "$as_me:17203: result: $cf_cv_type_sigaction" >&5
- echo "${ECHO_T}$cf_cv_type_sigaction" >&6
--test "$cf_cv_type_sigaction" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_type_sigaction" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_TYPE_SIGACTION 1
- EOF
-
--echo "$as_me:15426: checking declaration of size-change" >&5
-+echo "$as_me:17210: 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
-@@ -15438,7 +17222,7 @@
- CPPFLAGS="$cf_save_CPPFLAGS"
- test -n "$cf_opts" && CPPFLAGS="$CPPFLAGS -D$cf_opts"
- cat >conftest.$ac_ext <<_ACEOF
--#line 15441 "configure"
-+#line 17225 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- #ifdef HAVE_TERMIOS_H
-@@ -15482,16 +17266,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:15485: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:17269: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:15488: \$? = $ac_status" >&5
-+ echo "$as_me:17272: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:15491: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17275: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15494: \$? = $ac_status" >&5
-+ echo "$as_me:17278: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_sizechange=yes
- else
-@@ -15510,10 +17294,11 @@
- done
-
- fi
--echo "$as_me:15513: result: $cf_cv_sizechange" >&5
-+echo "$as_me:17297: result: $cf_cv_sizechange" >&5
- echo "${ECHO_T}$cf_cv_sizechange" >&6
- if test "$cf_cv_sizechange" != no ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_SIZECHANGE 1
- EOF
-
-@@ -15527,13 +17312,13 @@
- esac
- fi
-
--echo "$as_me:15530: checking for memmove" >&5
-+echo "$as_me:17315: 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 15536 "configure"
-+#line 17321 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char memmove (); below. */
-@@ -15556,7 +17341,7 @@
- #if defined (__stub_memmove) || defined (__stub___memmove)
- choke me
- #else
--f = memmove;
-+f = memmove; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -15564,16 +17349,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:15567: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:17352: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15570: \$? = $ac_status" >&5
-+ echo "$as_me:17355: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:15573: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17358: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15576: \$? = $ac_status" >&5
-+ echo "$as_me:17361: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_memmove=yes
- else
-@@ -15583,19 +17368,19 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:15586: result: $ac_cv_func_memmove" >&5
-+echo "$as_me:17371: result: $ac_cv_func_memmove" >&5
- echo "${ECHO_T}$ac_cv_func_memmove" >&6
- if test $ac_cv_func_memmove = yes; then
- :
- else
-
--echo "$as_me:15592: checking for bcopy" >&5
-+echo "$as_me:17377: 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 15598 "configure"
-+#line 17383 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char bcopy (); below. */
-@@ -15618,7 +17403,7 @@
- #if defined (__stub_bcopy) || defined (__stub___bcopy)
- choke me
- #else
--f = bcopy;
-+f = bcopy; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -15626,16 +17411,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:15629: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:17414: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15632: \$? = $ac_status" >&5
-+ echo "$as_me:17417: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:15635: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17420: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15638: \$? = $ac_status" >&5
-+ echo "$as_me:17423: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_bcopy=yes
- else
-@@ -15645,11 +17430,11 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:15648: result: $ac_cv_func_bcopy" >&5
-+echo "$as_me:17433: result: $ac_cv_func_bcopy" >&5
- echo "${ECHO_T}$ac_cv_func_bcopy" >&6
- if test $ac_cv_func_bcopy = yes; then
-
-- echo "$as_me:15652: checking if bcopy does overlapping moves" >&5
-+ echo "$as_me:17437: 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
-@@ -15659,7 +17444,7 @@
- cf_cv_good_bcopy=unknown
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 15662 "configure"
-+#line 17447 "configure"
- #include "confdefs.h"
-
- int main() {
-@@ -15673,15 +17458,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:15676: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:17461: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15679: \$? = $ac_status" >&5
-+ echo "$as_me:17464: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:15681: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17466: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15684: \$? = $ac_status" >&5
-+ echo "$as_me:17469: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_good_bcopy=yes
- else
-@@ -15694,7 +17479,7 @@
- fi
-
- fi
--echo "$as_me:15697: result: $cf_cv_good_bcopy" >&5
-+echo "$as_me:17482: result: $cf_cv_good_bcopy" >&5
- echo "${ECHO_T}$cf_cv_good_bcopy" >&6
-
- else
-@@ -15702,12 +17487,14 @@
- fi
-
- if test "$cf_cv_good_bcopy" = yes ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define USE_OK_BCOPY 1
- EOF
-
- else
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define USE_MY_MEMMOVE 1
- EOF
-
-@@ -15715,7 +17502,7 @@
-
- fi
-
--echo "$as_me:15718: checking if poll really works" >&5
-+echo "$as_me:17505: 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
-@@ -15725,10 +17512,13 @@
- cf_cv_working_poll=unknown
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 15728 "configure"
-+#line 17515 "configure"
- #include "confdefs.h"
-
-+#include <stdlib.h>
- #include <stdio.h>
-+#include <unistd.h>
-+#include <fcntl.h>
- #ifdef HAVE_POLL_H
- #include <poll.h>
- #else
-@@ -15738,23 +17528,46 @@
- struct pollfd myfds;
- int ret;
-
-- myfds.fd = 0;
-+ /* check for Darwin bug with respect to "devices" */
-+ myfds.fd = open("/dev/null", 1); /* O_WRONLY */
-+ if (myfds.fd < 0)
-+ myfds.fd = 0;
- myfds.events = POLLIN;
-+ myfds.revents = 0;
-
- ret = poll(&myfds, 1, 100);
-- ${cf_cv_main_return:-return}(ret != 0);
-+
-+ if (ret < 0 || (myfds.revents & POLLNVAL)) {
-+ ret = -1;
-+ } else {
-+ int fd = 0;
-+ if (!isatty(fd)) {
-+ fd = open("/dev/tty", 2); /* O_RDWR */
-+ }
-+
-+ if (fd >= 0) {
-+ /* also check with standard input */
-+ myfds.fd = fd;
-+ myfds.events = POLLIN;
-+ myfds.revents = 0;
-+ ret = poll(&myfds, 1, 100);
-+ } else {
-+ ret = -1;
-+ }
-+ }
-+ ${cf_cv_main_return:-return}(ret < 0);
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:15749: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:17562: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15752: \$? = $ac_status" >&5
-+ echo "$as_me:17565: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:15754: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17567: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15757: \$? = $ac_status" >&5
-+ echo "$as_me:17570: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_working_poll=yes
- else
-@@ -15766,20 +17579,21 @@
- rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
- fi
--echo "$as_me:15769: result: $cf_cv_working_poll" >&5
-+echo "$as_me:17582: result: $cf_cv_working_poll" >&5
- echo "${ECHO_T}$cf_cv_working_poll" >&6
--test "$cf_cv_working_poll" = "yes" && cat >>confdefs.h <<\EOF
-+test "$cf_cv_working_poll" = "yes" &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_WORKING_POLL 1
- EOF
-
--echo "$as_me:15775: checking for va_copy" >&5
-+echo "$as_me:17589: 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 15782 "configure"
-+#line 17596 "configure"
- #include "confdefs.h"
-
- #include <stdarg.h>
-@@ -15796,16 +17610,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:15799: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:17613: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15802: \$? = $ac_status" >&5
-+ echo "$as_me:17616: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:15805: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17619: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15808: \$? = $ac_status" >&5
-+ echo "$as_me:17622: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_have_va_copy=yes
- else
-@@ -15815,21 +17629,22 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:15818: result: $cf_cv_have_va_copy" >&5
-+echo "$as_me:17632: result: $cf_cv_have_va_copy" >&5
- echo "${ECHO_T}$cf_cv_have_va_copy" >&6
-
--test "$cf_cv_have_va_copy" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_have_va_copy" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE_VA_COPY 1
- EOF
-
--echo "$as_me:15825: checking for __va_copy" >&5
-+echo "$as_me:17640: 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 15832 "configure"
-+#line 17647 "configure"
- #include "confdefs.h"
-
- #include <stdarg.h>
-@@ -15846,16 +17661,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:15849: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:17664: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15852: \$? = $ac_status" >&5
-+ echo "$as_me:17667: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:15855: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17670: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15858: \$? = $ac_status" >&5
-+ echo "$as_me:17673: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_have___va_copy=yes
- else
-@@ -15865,20 +17680,21 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:15868: result: $cf_cv_have___va_copy" >&5
-+echo "$as_me:17683: result: $cf_cv_have___va_copy" >&5
- echo "${ECHO_T}$cf_cv_have___va_copy" >&6
-
--test "$cf_cv_have___va_copy" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_have___va_copy" = yes &&
-+cat >>confdefs.h <<\EOF
- #define HAVE___VA_COPY 1
- EOF
-
--echo "$as_me:15875: checking for pid_t" >&5
-+echo "$as_me:17691: 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 15881 "configure"
-+#line 17697 "configure"
- #include "confdefs.h"
- $ac_includes_default
- int
-@@ -15893,16 +17709,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:15896: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:17712: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:15899: \$? = $ac_status" >&5
-+ echo "$as_me:17715: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:15902: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17718: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15905: \$? = $ac_status" >&5
-+ echo "$as_me:17721: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_type_pid_t=yes
- else
-@@ -15912,7 +17728,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:15915: result: $ac_cv_type_pid_t" >&5
-+echo "$as_me:17731: 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
- :
-@@ -15927,23 +17743,23 @@
- for ac_header in unistd.h vfork.h
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:15930: checking for $ac_header" >&5
-+echo "$as_me:17746: 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 15936 "configure"
-+#line 17752 "configure"
- #include "confdefs.h"
- #include <$ac_header>
- _ACEOF
--if { (eval echo "$as_me:15940: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:17756: \"$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:15946: \$? = $ac_status" >&5
-+ echo "$as_me:17762: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -15962,7 +17778,7 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:15965: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:17781: 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
-@@ -15975,13 +17791,13 @@
- for ac_func in fork vfork
- do
- as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
--echo "$as_me:15978: checking for $ac_func" >&5
-+echo "$as_me:17794: 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 15984 "configure"
-+#line 17800 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below. */
-@@ -16004,7 +17820,7 @@
- #if defined (__stub_$ac_func) || defined (__stub___$ac_func)
- choke me
- #else
--f = $ac_func;
-+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -16012,16 +17828,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:16015: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:17831: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:16018: \$? = $ac_status" >&5
-+ echo "$as_me:17834: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:16021: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17837: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16024: \$? = $ac_status" >&5
-+ echo "$as_me:17840: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_var=yes"
- else
-@@ -16031,7 +17847,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:16034: result: `eval echo '${'$as_ac_var'}'`" >&5
-+echo "$as_me:17850: 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
-@@ -16043,7 +17859,7 @@
-
- ac_cv_func_fork_works=$ac_cv_func_fork
- if test "x$ac_cv_func_fork" = xyes; then
-- echo "$as_me:16046: checking for working fork" >&5
-+ echo "$as_me:17862: 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
-@@ -16066,15 +17882,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:16069: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:17885: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:16072: \$? = $ac_status" >&5
-+ echo "$as_me:17888: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:16074: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:17890: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16077: \$? = $ac_status" >&5
-+ echo "$as_me:17893: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_fork_works=yes
- else
-@@ -16086,7 +17902,7 @@
- rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
- fi
--echo "$as_me:16089: result: $ac_cv_func_fork_works" >&5
-+echo "$as_me:17905: result: $ac_cv_func_fork_works" >&5
- echo "${ECHO_T}$ac_cv_func_fork_works" >&6
-
- fi
-@@ -16100,12 +17916,12 @@
- ac_cv_func_fork_works=yes
- ;;
- esac
-- { echo "$as_me:16103: WARNING: CROSS: Result $ac_cv_func_fork_works guessed due to cross-compiling." >&5
-+ { echo "$as_me:17919: 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:16108: checking for working vfork" >&5
-+ echo "$as_me:17924: 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
-@@ -16114,7 +17930,7 @@
- ac_cv_func_vfork_works=cross
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 16117 "configure"
-+#line 17933 "configure"
- #include "confdefs.h"
- /* Thanks to Paul Eggert for this test. */
- #include <stdio.h>
-@@ -16211,15 +18027,15 @@
- }
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:16214: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:18030: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:16217: \$? = $ac_status" >&5
-+ echo "$as_me:18033: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:16219: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:18035: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16222: \$? = $ac_status" >&5
-+ echo "$as_me:18038: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_vfork_works=yes
- else
-@@ -16231,13 +18047,13 @@
- rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
- fi
--echo "$as_me:16234: result: $ac_cv_func_vfork_works" >&5
-+echo "$as_me:18050: 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:16240: WARNING: CROSS: Result $ac_cv_func_vfork_works guessed due to cross-compiling." >&5
-+ { echo "$as_me:18056: 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
-
-@@ -16264,7 +18080,7 @@
-
- # special check for test/ditto.c
-
--echo "$as_me:16267: checking for openpty in -lutil" >&5
-+echo "$as_me:18083: 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
-@@ -16272,7 +18088,7 @@
- ac_check_lib_save_LIBS=$LIBS
- LIBS="-lutil $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 16275 "configure"
-+#line 18091 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -16291,16 +18107,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:16294: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:18110: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:16297: \$? = $ac_status" >&5
-+ echo "$as_me:18113: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:16300: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:18116: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16303: \$? = $ac_status" >&5
-+ echo "$as_me:18119: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_util_openpty=yes
- else
-@@ -16311,7 +18127,7 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:16314: result: $ac_cv_lib_util_openpty" >&5
-+echo "$as_me:18130: 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
- cf_cv_lib_util=yes
-@@ -16319,91 +18135,277 @@
- cf_cv_lib_util=no
- fi
-
--echo "$as_me:16322: checking for openpty header" >&5
-+echo "$as_me:18138: 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 && LIBS="-lutil $LIBS"
-+ test $cf_cv_lib_util = yes &&
-+cf_add_libs="-lutil"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- for cf_header in pty.h libutil.h util.h
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 16333 "configure"
-+#line 18165 "configure"
-+#include "confdefs.h"
-+
-+#include <$cf_header>
-+
-+int
-+main ()
-+{
-+
-+ int x = openpty((int *)0, (int *)0, (char *)0,
-+ (struct termios *)0, (struct winsize *)0);
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:18182: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:18185: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:18188: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:18191: \$? = $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
-+
-+ cf_cv_func_openpty=no
-+
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+ done
-+ LIBS="$cf_save_LIBS"
-+
-+fi
-+echo "$as_me:18209: result: $cf_cv_func_openpty" >&5
-+echo "${ECHO_T}$cf_cv_func_openpty" >&6
-+
-+if test "$cf_cv_func_openpty" != no ; then
-+
-+cat >>confdefs.h <<EOF
-+#define USE_OPENPTY_HEADER <$cf_cv_func_openpty>
-+EOF
-+
-+cat >>confdefs.h <<\EOF
-+#define USE_XTERM_PTY 1
-+EOF
-+
-+ if test "x$cf_cv_lib_util" = xyes ; then
-+
-+cf_add_libs="-lutil"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $TEST_LIBS
-+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_libs $cf_add_1lib"
-+done
-+TEST_LIBS="$cf_add_libs"
-+
-+ fi
-+fi
-+
-+if test "$with_hashed_db" != no ; then
-+
-+cat >>confdefs.h <<\EOF
-+#define USE_HASHED_DB 1
-+EOF
-+
-+case $with_hashed_db in #(vi
-+yes|*able*) #(vi
-+ ;;
-+*)
-+ if test -d "$with_hashed_db" ; then
-+
-+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
-+ do
-+ if test -d $cf_add_incdir
-+ then
-+ cf_have_incdir=no
-+ if test -n "$CFLAGS$CPPFLAGS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-+ cf_have_incdir=yes; break
-+ fi
-+ done
-+ fi
-+
-+ if test "$cf_have_incdir" = no ; then
-+ if test "$cf_add_incdir" = /usr/local/include ; then
-+ if test "$GCC" = yes
-+ then
-+ cf_save_CPPFLAGS=$CPPFLAGS
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 18279 "configure"
- #include "confdefs.h"
--
--#include <$cf_header>
--
-+#include <stdio.h>
- int
- main ()
- {
--
-- int x = openpty((int *)0, (int *)0, (char *)0,
-- (struct termios *)0, (struct winsize *)0);
--
-+printf("Hello")
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:16350: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:18291: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:16353: \$? = $ac_status" >&5
-+ echo "$as_me:18294: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:16356: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:18297: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16359: \$? = $ac_status" >&5
-+ echo "$as_me:18300: \$? = $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
-+cf_have_incdir=yes
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS=$cf_save_CPPFLAGS
-+ fi
-+ fi
-+ fi
-
-- cf_cv_func_openpty=no
-+ if test "$cf_have_incdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- done
-- LIBS="$cf_save_LIBS"
-+echo "${as_me:-configure}:18317: 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%'`
-+ test "$cf_top_incdir" = "$cf_add_incdir" && break
-+ cf_add_incdir="$cf_top_incdir"
-+ else
-+ break
-+ fi
-+ fi
-+ done
-+ done
- fi
--echo "$as_me:16377: result: $cf_cv_func_openpty" >&5
--echo "${ECHO_T}$cf_cv_func_openpty" >&6
-
--if test "$cf_cv_func_openpty" != no ; then
-- cat >>confdefs.h <<EOF
--#define USE_OPENPTY_HEADER <$cf_cv_func_openpty>
--EOF
-+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
-+ :
-+ elif test -d $cf_add_libdir
-+ then
-+ cf_have_libdir=no
-+ if test -n "$LDFLAGS$LIBS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_libdir in $LDFLAGS $LIBS ; do
-+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-+ cf_have_libdir=yes; break
-+ fi
-+ done
-+ fi
-+ if test "$cf_have_libdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-
-- cat >>confdefs.h <<\EOF
--#define USE_XTERM_PTY 1
--EOF
-+echo "${as_me:-configure}:18351: testing adding $cf_add_libdir to library-path ..." 1>&5
-
-- if test "$cf_cv_lib_util" = yes ; then
-- TEST_LIBS="-lutil $TEST_LIBS"
-+ LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-+ fi
- fi
-+ done
- fi
-
--if test "$with_hashed_db" != no ; then
-- cat >>confdefs.h <<\EOF
--#define USE_HASHED_DB 1
--EOF
-+ else
-+ case "$with_hashed_db" in #(vi
-+ ./*|../*|/*)
-+ { echo "$as_me:18362: WARNING: no such directory $with_hashed_db" >&5
-+echo "$as_me: WARNING: no such directory $with_hashed_db" >&2;}
-+ ;; #(vi
-+ *)
-
--case $with_hashed_db in #(vi
--yes|*able*) #(vi
-- ;;
--*)
-- if test -d "$with_hashed_db" ; then
-+cf_search=
-
--if test -n "$with_hashed_db/include" ; then
-- for cf_add_incdir in $with_hashed_db/include
-+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"
-+}
-+
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
-+}
-+
-+done
-+
-+ for cf_item in $cf_search
-+ do
-+ case $cf_item in #(vi
-+ */$with_hashed_db)
-+
-+if test -n "$cf_item" ; then
-+ for cf_add_incdir in $cf_item
- do
- while test $cf_add_incdir != /usr/include
- do
-@@ -16426,7 +18428,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 16429 "configure"
-+#line 18431 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -16438,16 +18440,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:16441: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:18443: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:16444: \$? = $ac_status" >&5
-+ echo "$as_me:18446: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:16447: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:18449: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16450: \$? = $ac_status" >&5
-+ echo "$as_me:18452: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -16464,7 +18466,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:16467: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:18469: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -16479,8 +18481,52 @@
- done
- fi
-
--if test -n "$with_hashed_db/lib" ; then
-- for cf_add_libdir in $with_hashed_db/lib
-+ ;;
-+ esac
-+ done
-+
-+cf_search=
-+
-+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"
-+}
-+
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
-+}
-+
-+done
-+
-+ for cf_item in $cf_search
-+ do
-+ case $cf_item in #(vi
-+ */$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
- :
-@@ -16498,7 +18544,7 @@
- if test "$cf_have_libdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-
--echo "${as_me:-configure}:16501: testing adding $cf_add_libdir to library-path ..." 1>&5
-+echo "${as_me:-configure}:18547: testing adding $cf_add_libdir to library-path ..." 1>&5
-
- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
- fi
-@@ -16506,26 +18552,32 @@
- done
- fi
-
-+ ;;
-+ esac
-+ done
-+
-+ ;;
-+ esac
- fi
- esac
-
--echo "$as_me:16512: checking for db.h" >&5
-+echo "$as_me:18564: 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 16518 "configure"
-+#line 18570 "configure"
- #include "confdefs.h"
- #include <db.h>
- _ACEOF
--if { (eval echo "$as_me:16522: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:18574: \"$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:16528: \$? = $ac_status" >&5
-+ echo "$as_me:18580: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -16544,11 +18596,11 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:16547: result: $ac_cv_header_db_h" >&5
-+echo "$as_me:18599: 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
-
--echo "$as_me:16551: checking for version of db" >&5
-+echo "$as_me:18603: 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
-@@ -16556,13 +18608,13 @@
-
- cf_cv_hashed_db_version=unknown
-
--for cf_db_version in 1 2 3 4 5
-+for cf_db_version in 1 2 3 4 5 6
- do
-
--echo "${as_me:-configure}:16562: testing checking for db version $cf_db_version ..." 1>&5
-+echo "${as_me:-configure}:18614: testing checking for db version $cf_db_version ..." 1>&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 16565 "configure"
-+#line 18617 "configure"
- #include "confdefs.h"
-
- $ac_includes_default
-@@ -16592,16 +18644,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:16595: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:18647: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:16598: \$? = $ac_status" >&5
-+ echo "$as_me:18650: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:16601: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:18653: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16604: \$? = $ac_status" >&5
-+ echo "$as_me:18656: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- cf_cv_hashed_db_version=$cf_db_version
-@@ -16615,16 +18667,16 @@
- done
-
- fi
--echo "$as_me:16618: result: $cf_cv_hashed_db_version" >&5
-+echo "$as_me:18670: 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:16622: error: Cannot determine version of db" >&5
-+ { { echo "$as_me:18674: 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:16627: checking for db libraries" >&5
-+echo "$as_me:18679: 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
-@@ -16635,13 +18687,29 @@
- do
- cf_save_libs="$LIBS"
- if test -n "$cf_db_libs"; then
-- LIBS="-l$cf_db_libs $LIBS"
-+
-+cf_add_libs="-l$cf_db_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- fi
-
--echo "${as_me:-configure}:16641: testing checking for library "$cf_db_libs" ..." 1>&5
-+echo "${as_me:-configure}:18709: testing checking for library "$cf_db_libs" ..." 1>&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 16644 "configure"
-+#line 18712 "configure"
- #include "confdefs.h"
-
- $ac_includes_default
-@@ -16696,16 +18764,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:16699: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:18767: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:16702: \$? = $ac_status" >&5
-+ echo "$as_me:18770: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:16705: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:18773: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16708: \$? = $ac_status" >&5
-+ echo "$as_me:18776: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- if test -n "$cf_db_libs" ; then
-@@ -16725,21 +18793,37 @@
- done
-
- fi
--echo "$as_me:16728: result: $cf_cv_hashed_db_libs" >&5
-+echo "$as_me:18796: 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:16732: error: Cannot determine library for db" >&5
-+ { { echo "$as_me:18800: 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
-- LIBS="-l$cf_cv_hashed_db_libs $LIBS"
-+
-+cf_add_libs="-l$cf_cv_hashed_db_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- fi
- fi
-
- else
-
-- { { echo "$as_me:16742: error: Cannot find db.h" >&5
-+ { { echo "$as_me:18826: error: Cannot find db.h" >&5
- echo "$as_me: error: Cannot find db.h" >&2;}
- { (exit 1); exit 1; }; }
-
-@@ -16754,7 +18838,7 @@
-
- # Just in case, check if the C compiler has a bool type.
-
--echo "$as_me:16757: checking if we should include stdbool.h" >&5
-+echo "$as_me:18841: 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
-@@ -16762,7 +18846,7 @@
- else
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 16765 "configure"
-+#line 18849 "configure"
- #include "confdefs.h"
-
- int
-@@ -16774,23 +18858,23 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:16777: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:18861: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:16780: \$? = $ac_status" >&5
-+ echo "$as_me:18864: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:16783: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:18867: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16786: \$? = $ac_status" >&5
-+ echo "$as_me:18870: \$? = $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 16793 "configure"
-+#line 18877 "configure"
- #include "confdefs.h"
-
- #ifndef __BEOS__
-@@ -16806,16 +18890,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:16809: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:18893: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:16812: \$? = $ac_status" >&5
-+ echo "$as_me:18896: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:16815: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:18899: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16818: \$? = $ac_status" >&5
-+ echo "$as_me:18902: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_header_stdbool_h=1
- else
-@@ -16829,13 +18913,13 @@
- fi
-
- if test "$cf_cv_header_stdbool_h" = 1
--then echo "$as_me:16832: result: yes" >&5
-+then echo "$as_me:18916: result: yes" >&5
- echo "${ECHO_T}yes" >&6
--else echo "$as_me:16834: result: no" >&5
-+else echo "$as_me:18918: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
--echo "$as_me:16838: checking for builtin bool type" >&5
-+echo "$as_me:18922: 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
-@@ -16843,7 +18927,7 @@
- else
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 16846 "configure"
-+#line 18930 "configure"
- #include "confdefs.h"
-
- #include <stdio.h>
-@@ -16858,16 +18942,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:16861: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:18945: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:16864: \$? = $ac_status" >&5
-+ echo "$as_me:18948: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:16867: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:18951: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16870: \$? = $ac_status" >&5
-+ echo "$as_me:18954: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_cc_bool_type=1
- else
-@@ -16880,9 +18964,9 @@
- fi
-
- if test "$cf_cv_cc_bool_type" = 1
--then echo "$as_me:16883: result: yes" >&5
-+then echo "$as_me:18967: result: yes" >&5
- echo "${ECHO_T}yes" >&6
--else echo "$as_me:16885: result: no" >&5
-+else echo "$as_me:18969: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -16904,16 +18988,32 @@
- cf_stdcpp_libname=stdc++
- ;;
- esac
--echo "$as_me:16907: checking for library $cf_stdcpp_libname" >&5
-+echo "$as_me:18991: 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
- else
-
- cf_save="$LIBS"
-- LIBS="-l$cf_stdcpp_libname $LIBS"
-+
-+cf_add_libs="-l$cf_stdcpp_libname"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- cat >conftest.$ac_ext <<_ACEOF
--#line 16916 "configure"
-+#line 19016 "configure"
- #include "confdefs.h"
-
- #include <strstream.h>
-@@ -16929,16 +19029,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:16932: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:19032: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:16935: \$? = $ac_status" >&5
-+ echo "$as_me:19035: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:16938: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19038: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16941: \$? = $ac_status" >&5
-+ echo "$as_me:19041: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_libstdcpp=yes
- else
-@@ -16950,12 +19050,28 @@
- LIBS="$cf_save"
-
- fi
--echo "$as_me:16953: result: $cf_cv_libstdcpp" >&5
-+echo "$as_me:19053: result: $cf_cv_libstdcpp" >&5
- echo "${ECHO_T}$cf_cv_libstdcpp" >&6
--test "$cf_cv_libstdcpp" = yes && CXXLIBS="-l$cf_stdcpp_libname $CXXLIBS"
-+test "$cf_cv_libstdcpp" = yes &&
-+cf_add_libs="-l$cf_stdcpp_libname"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $CXXLIBS
-+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_libs $cf_add_1lib"
-+done
-+CXXLIBS="$cf_add_libs"
-+
- fi
-
-- echo "$as_me:16958: checking whether $CXX understands -c and -o together" >&5
-+ echo "$as_me:19074: 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
-@@ -16971,15 +19087,15 @@
- # 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 -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
--if { (eval echo "$as_me:16974: \"$ac_try\"") >&5
-+if { (eval echo "$as_me:19090: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16977: \$? = $ac_status" >&5
-+ echo "$as_me:19093: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- test -f conftest2.$ac_objext && { (eval echo "$as_me:16979: \"$ac_try\"") >&5
-+ test -f conftest2.$ac_objext && { (eval echo "$as_me:19095: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:16982: \$? = $ac_status" >&5
-+ echo "$as_me:19098: \$? = $ac_status" >&5
- (exit $ac_status); };
- then
- eval cf_cv_prog_CXX_c_o=yes
-@@ -16990,10 +19106,10 @@
-
- fi
- if test $cf_cv_prog_CXX_c_o = yes; then
-- echo "$as_me:16993: result: yes" >&5
-+ echo "$as_me:19109: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- else
-- echo "$as_me:16996: result: no" >&5
-+ echo "$as_me:19112: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -17013,12 +19129,28 @@
- ;;
- esac
- if test "$GXX" = yes; then
-- echo "$as_me:17016: checking for lib$cf_gpp_libname" >&5
-+ echo "$as_me:19132: checking for lib$cf_gpp_libname" >&5
- echo $ECHO_N "checking for lib$cf_gpp_libname... $ECHO_C" >&6
- cf_save="$LIBS"
-- LIBS="-l$cf_gpp_libname $LIBS"
-+
-+cf_add_libs="-l$cf_gpp_libname"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
- cat >conftest.$ac_ext <<_ACEOF
--#line 17021 "configure"
-+#line 19153 "configure"
- #include "confdefs.h"
-
- #include <$cf_gpp_libname/builtin.h>
-@@ -17032,26 +19164,44 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:17035: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:19167: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:17038: \$? = $ac_status" >&5
-+ echo "$as_me:19170: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:17041: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19173: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17044: \$? = $ac_status" >&5
-+ echo "$as_me:19176: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cxx_library=yes
-- CXXLIBS="-l$cf_gpp_libname $CXXLIBS"
-+
-+cf_add_libs="-l$cf_gpp_libname"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $CXXLIBS
-+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_libs $cf_add_1lib"
-+done
-+CXXLIBS="$cf_add_libs"
-+
- if test "$cf_gpp_libname" = cpp ; then
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_GPP_BUILTIN_H 1
- EOF
-
- else
-- cat >>confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_GXX_BUILTIN_H 1
- EOF
-
-@@ -17060,7 +19210,7 @@
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
- cat >conftest.$ac_ext <<_ACEOF
--#line 17063 "configure"
-+#line 19213 "configure"
- #include "confdefs.h"
-
- #include <builtin.h>
-@@ -17074,20 +19224,36 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:17077: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:19227: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:17080: \$? = $ac_status" >&5
-+ echo "$as_me:19230: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:17083: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19233: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17086: \$? = $ac_status" >&5
-+ echo "$as_me:19236: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cxx_library=yes
-- CXXLIBS="-l$cf_gpp_libname $CXXLIBS"
-- cat >>confdefs.h <<\EOF
-+
-+cf_add_libs="-l$cf_gpp_libname"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $CXXLIBS
-+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_libs $cf_add_1lib"
-+done
-+CXXLIBS="$cf_add_libs"
-+
-+cat >>confdefs.h <<\EOF
- #define HAVE_BUILTIN_H 1
- EOF
-
-@@ -17100,7 +19266,7 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS="$cf_save"
-- echo "$as_me:17103: result: $cf_cxx_library" >&5
-+ echo "$as_me:19269: result: $cf_cxx_library" >&5
- echo "${ECHO_T}$cf_cxx_library" >&6
- fi
-
-@@ -17116,7 +19282,7 @@
- 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:17119: checking how to run the C++ preprocessor" >&5
-+echo "$as_me:19285: 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
-@@ -17133,18 +19299,18 @@
- # 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 17136 "configure"
-+#line 19302 "configure"
- #include "confdefs.h"
- #include <assert.h>
- Syntax error
- _ACEOF
--if { (eval echo "$as_me:17141: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:19307: \"$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:17147: \$? = $ac_status" >&5
-+ echo "$as_me:19313: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_cxx_preproc_warn_flag
-@@ -17167,17 +19333,17 @@
- # OK, works on sane cases. Now check whether non-existent headers
- # can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
--#line 17170 "configure"
-+#line 19336 "configure"
- #include "confdefs.h"
- #include <ac_nonexistent.h>
- _ACEOF
--if { (eval echo "$as_me:17174: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:19340: \"$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:17180: \$? = $ac_status" >&5
-+ echo "$as_me:19346: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_cxx_preproc_warn_flag
-@@ -17214,7 +19380,7 @@
- else
- ac_cv_prog_CXXCPP=$CXXCPP
- fi
--echo "$as_me:17217: result: $CXXCPP" >&5
-+echo "$as_me:19383: result: $CXXCPP" >&5
- echo "${ECHO_T}$CXXCPP" >&6
- ac_preproc_ok=false
- for ac_cxx_preproc_warn_flag in '' yes
-@@ -17224,18 +19390,18 @@
- # 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 17227 "configure"
-+#line 19393 "configure"
- #include "confdefs.h"
- #include <assert.h>
- Syntax error
- _ACEOF
--if { (eval echo "$as_me:17232: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:19398: \"$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:17238: \$? = $ac_status" >&5
-+ echo "$as_me:19404: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_cxx_preproc_warn_flag
-@@ -17258,17 +19424,17 @@
- # OK, works on sane cases. Now check whether non-existent headers
- # can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
--#line 17261 "configure"
-+#line 19427 "configure"
- #include "confdefs.h"
- #include <ac_nonexistent.h>
- _ACEOF
--if { (eval echo "$as_me:17265: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:19431: \"$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:17271: \$? = $ac_status" >&5
-+ echo "$as_me:19437: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_cxx_preproc_warn_flag
-@@ -17296,7 +19462,7 @@
- if $ac_preproc_ok; then
- :
- else
-- { { echo "$as_me:17299: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5
-+ { { echo "$as_me:19465: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5
- echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -17308,26 +19474,74 @@
- ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
- ac_main_return=return
-
--for ac_header in iostream typeinfo
-+for ac_header in typeinfo
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+echo "$as_me:19480: 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 19486 "configure"
-+#include "confdefs.h"
-+#include <$ac_header>
-+_ACEOF
-+if { (eval echo "$as_me:19490: \"$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:19496: \$? = $ac_status" >&5
-+ (exit $ac_status); } >/dev/null; then
-+ if test -s conftest.err; then
-+ ac_cpp_err=$ac_cxx_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:19515: 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
-+
-+for ac_header in iostream
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:17314: checking for $ac_header" >&5
-+echo "$as_me:19528: 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 17320 "configure"
-+#line 19534 "configure"
- #include "confdefs.h"
- #include <$ac_header>
- _ACEOF
--if { (eval echo "$as_me:17324: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:19538: \"$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:17330: \$? = $ac_status" >&5
-+ echo "$as_me:19544: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_cxx_preproc_warn_flag
-@@ -17346,7 +19560,7 @@
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:17349: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "$as_me:19563: 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
-@@ -17356,11 +19570,11 @@
- fi
- done
-
-- if test x"$ac_cv_header_iostream" = xyes ; then
-- echo "$as_me:17360: checking if iostream uses std-namespace" >&5
-+if test x"$ac_cv_header_iostream" = xyes ; then
-+ echo "$as_me:19574: 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 17363 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 19577 "configure"
- #include "confdefs.h"
-
- #include <iostream>
-@@ -17377,16 +19591,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:17380: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:19594: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:17383: \$? = $ac_status" >&5
-+ echo "$as_me:19597: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:17386: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19600: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17389: \$? = $ac_status" >&5
-+ echo "$as_me:19603: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_iostream_namespace=yes
- else
-@@ -17395,17 +19609,18 @@
- cf_iostream_namespace=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-- echo "$as_me:17398: result: $cf_iostream_namespace" >&5
-+ echo "$as_me:19612: result: $cf_iostream_namespace" >&5
- echo "${ECHO_T}$cf_iostream_namespace" >&6
-- if test "$cf_iostream_namespace" = yes ; then
-- cat >>confdefs.h <<\EOF
-+ if test "$cf_iostream_namespace" = yes ; then
-+
-+cat >>confdefs.h <<\EOF
- #define IOSTREAM_NAMESPACE 1
- EOF
-
-- fi
-- fi
-+ fi
-+fi
-
--echo "$as_me:17408: checking if we should include stdbool.h" >&5
-+echo "$as_me:19623: 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
-@@ -17413,7 +19628,7 @@
- else
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 17416 "configure"
-+#line 19631 "configure"
- #include "confdefs.h"
-
- int
-@@ -17425,23 +19640,23 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:17428: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:19643: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:17431: \$? = $ac_status" >&5
-+ echo "$as_me:19646: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:17434: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19649: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17437: \$? = $ac_status" >&5
-+ echo "$as_me:19652: \$? = $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 17444 "configure"
-+#line 19659 "configure"
- #include "confdefs.h"
-
- #ifndef __BEOS__
-@@ -17457,16 +19672,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:17460: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:19675: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:17463: \$? = $ac_status" >&5
-+ echo "$as_me:19678: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:17466: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19681: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17469: \$? = $ac_status" >&5
-+ echo "$as_me:19684: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_header_stdbool_h=1
- else
-@@ -17480,13 +19695,13 @@
- fi
-
- if test "$cf_cv_header_stdbool_h" = 1
--then echo "$as_me:17483: result: yes" >&5
-+then echo "$as_me:19698: result: yes" >&5
- echo "${ECHO_T}yes" >&6
--else echo "$as_me:17485: result: no" >&5
-+else echo "$as_me:19700: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
--echo "$as_me:17489: checking for builtin bool type" >&5
-+echo "$as_me:19704: 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
-@@ -17494,7 +19709,7 @@
- else
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 17497 "configure"
-+#line 19712 "configure"
- #include "confdefs.h"
-
- #include <stdio.h>
-@@ -17509,16 +19724,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:17512: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:19727: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:17515: \$? = $ac_status" >&5
-+ echo "$as_me:19730: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:17518: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19733: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17521: \$? = $ac_status" >&5
-+ echo "$as_me:19736: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_builtin_bool=1
- else
-@@ -17531,13 +19746,13 @@
- fi
-
- if test "$cf_cv_builtin_bool" = 1
--then echo "$as_me:17534: result: yes" >&5
-+then echo "$as_me:19749: result: yes" >&5
- echo "${ECHO_T}yes" >&6
--else echo "$as_me:17536: result: no" >&5
-+else echo "$as_me:19751: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
--echo "$as_me:17540: checking for size of bool" >&5
-+echo "$as_me:19755: checking for size of bool" >&5
- echo $ECHO_N "checking for size of bool... $ECHO_C" >&6
- if test "${cf_cv_type_of_bool+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-@@ -17548,7 +19763,7 @@
- cf_cv_type_of_bool=unknown
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 17551 "configure"
-+#line 19766 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -17572,7 +19787,7 @@
-
- #endif
-
--main()
-+int main()
- {
- FILE *fp = fopen("cf_test.out", "w");
- if (fp != 0) {
-@@ -17590,15 +19805,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:17593: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:19808: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:17596: \$? = $ac_status" >&5
-+ echo "$as_me:19811: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:17598: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19813: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17601: \$? = $ac_status" >&5
-+ echo "$as_me:19816: \$? = $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
-@@ -17616,30 +19831,36 @@
- fi
-
- rm -f cf_test.out
--echo "$as_me:17619: result: $cf_cv_type_of_bool" >&5
-+echo "$as_me:19834: 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 #(vi
- .auto|.) NCURSES_BOOL=unsigned;;
- esac
-- { echo "$as_me:17625: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
-+ { echo "$as_me:19840: 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:17630: checking for special defines needed for etip.h" >&5
-+echo "$as_me:19845: 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"
-+
-+# 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
-+
- for cf_math in "" MATH_H
- do
- for cf_excp in "" MATH_EXCEPTION
- do
-- CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include"
-+ 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 17642 "configure"
-+#line 19863 "configure"
- #include "confdefs.h"
-
- #include <etip.h.in>
-@@ -17653,16 +19874,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:17656: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:19877: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:17659: \$? = $ac_status" >&5
-+ echo "$as_me:19880: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:17662: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19883: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17665: \$? = $ac_status" >&5
-+ echo "$as_me:19886: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- test -n "$cf_math" && cat >>confdefs.h <<EOF
-@@ -17674,7 +19895,7 @@
- EOF
-
- cf_result="$cf_math $cf_excp"
-- break
-+ break 2
-
- else
- echo "$as_me: failed program was:" >&5
-@@ -17683,12 +19904,12 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
- done
- done
--echo "$as_me:17686: result: $cf_result" >&5
-+echo "$as_me:19907: result: $cf_result" >&5
- echo "${ECHO_T}$cf_result" >&6
- CXXFLAGS="$cf_save_CXXFLAGS"
-
- if test -n "$CXX"; then
--echo "$as_me:17691: checking if $CXX accepts parameter initialization" >&5
-+echo "$as_me:19912: 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
-@@ -17705,7 +19926,7 @@
- cf_cv_cpp_param_init=unknown
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 17708 "configure"
-+#line 19929 "configure"
- #include "confdefs.h"
-
- class TEST {
-@@ -17720,19 +19941,19 @@
- {
- value = x;
- }
--void main() { }
-+int main() { }
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:17727: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:19948: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:17730: \$? = $ac_status" >&5
-+ echo "$as_me:19951: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:17732: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:19953: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17735: \$? = $ac_status" >&5
-+ echo "$as_me:19956: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_cpp_param_init=yes
- else
-@@ -17751,16 +19972,17 @@
- ac_main_return=return
-
- fi
--echo "$as_me:17754: result: $cf_cv_cpp_param_init" >&5
-+echo "$as_me:19975: result: $cf_cv_cpp_param_init" >&5
- echo "${ECHO_T}$cf_cv_cpp_param_init" >&6
- fi
--test "$cf_cv_cpp_param_init" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_cpp_param_init" = yes &&
-+cat >>confdefs.h <<\EOF
- #define CPP_HAS_PARAM_INIT 1
- EOF
-
- if test -n "$CXX"; then
-
--echo "$as_me:17763: checking if $CXX accepts static_cast" >&5
-+echo "$as_me:19985: 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
-@@ -17774,7 +19996,7 @@
- ac_main_return=return
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 17777 "configure"
-+#line 19999 "configure"
- #include "confdefs.h"
-
- class NCursesPanel
-@@ -17786,7 +20008,7 @@
- int begin_x = 0)
- {
- }
--
-+ NCursesPanel();
- ~NCursesPanel();
- };
-
-@@ -17818,16 +20040,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:17821: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:20043: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:17824: \$? = $ac_status" >&5
-+ echo "$as_me:20046: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:17827: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:20049: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17830: \$? = $ac_status" >&5
-+ echo "$as_me:20052: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_cpp_static_cast=yes
- else
-@@ -17845,12 +20067,13 @@
- ac_main_return=return
-
- fi
--echo "$as_me:17848: result: $cf_cv_cpp_static_cast" >&5
-+echo "$as_me:20070: result: $cf_cv_cpp_static_cast" >&5
- echo "${ECHO_T}$cf_cv_cpp_static_cast" >&6
-
- fi
-
--test "$cf_cv_cpp_static_cast" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_cpp_static_cast" = yes &&
-+cat >>confdefs.h <<\EOF
- #define CPP_HAS_STATIC_CAST 1
- EOF
-
-@@ -17893,7 +20116,7 @@
- else
- if test "$cf_cv_header_stdbool_h" = 1 ; then
-
--echo "$as_me:17896: checking for size of bool" >&5
-+echo "$as_me:20119: checking for size of bool" >&5
- echo $ECHO_N "checking for size of bool... $ECHO_C" >&6
- if test "${cf_cv_type_of_bool+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-@@ -17904,7 +20127,7 @@
- cf_cv_type_of_bool=unknown
- else
- cat >conftest.$ac_ext <<_ACEOF
--#line 17907 "configure"
-+#line 20130 "configure"
- #include "confdefs.h"
-
- #include <stdlib.h>
-@@ -17928,7 +20151,7 @@
-
- #endif
-
--main()
-+int main()
- {
- FILE *fp = fopen("cf_test.out", "w");
- if (fp != 0) {
-@@ -17946,15 +20169,15 @@
-
- _ACEOF
- rm -f conftest$ac_exeext
--if { (eval echo "$as_me:17949: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:20172: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:17952: \$? = $ac_status" >&5
-+ echo "$as_me:20175: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:17954: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:20177: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:17957: \$? = $ac_status" >&5
-+ echo "$as_me:20180: \$? = $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
-@@ -17972,25 +20195,25 @@
- fi
-
- rm -f cf_test.out
--echo "$as_me:17975: result: $cf_cv_type_of_bool" >&5
-+echo "$as_me:20198: 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 #(vi
- .auto|.) NCURSES_BOOL=unsigned;;
- esac
-- { echo "$as_me:17981: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5
-+ { echo "$as_me:20204: 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:17987: checking for fallback type of bool" >&5
-+ echo "$as_me:20210: checking for fallback type of bool" >&5
- echo $ECHO_N "checking for fallback type of bool... $ECHO_C" >&6
- case "$host_cpu" in #(vi
- i?86) cf_cv_type_of_bool=char ;; #(vi
- *) cf_cv_type_of_bool=int ;;
- esac
-- echo "$as_me:17993: result: $cf_cv_type_of_bool" >&5
-+ echo "$as_me:20216: result: $cf_cv_type_of_bool" >&5
- echo "${ECHO_T}$cf_cv_type_of_bool" >&6
- fi
- fi
-@@ -18019,7 +20242,7 @@
-
- if test "$cf_with_ada" != "no" ; then
- if test "$with_libtool" != "no"; then
-- { echo "$as_me:18022: WARNING: libtool does not support Ada - disabling feature" >&5
-+ { echo "$as_me:20245: 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
-@@ -18030,7 +20253,7 @@
- cf_ada_make=gnatmake
- # Extract the first word of "$cf_ada_make", so it can be a program name with args.
- set dummy $cf_ada_make; ac_word=$2
--echo "$as_me:18033: checking for $ac_word" >&5
-+echo "$as_me:20256: checking for $ac_word" >&5
- echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
- if test "${ac_cv_prog_gnat_exists+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-@@ -18045,7 +20268,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_gnat_exists="yes"
--echo "$as_me:18048: found $ac_dir/$ac_word" >&5
-+echo "$as_me:20271: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -18054,31 +20277,32 @@
- fi
- gnat_exists=$ac_cv_prog_gnat_exists
- if test -n "$gnat_exists"; then
-- echo "$as_me:18057: result: $gnat_exists" >&5
-+ echo "$as_me:20280: result: $gnat_exists" >&5
- echo "${ECHO_T}$gnat_exists" >&6
- else
-- echo "$as_me:18060: result: no" >&5
-+ echo "$as_me:20283: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
- if test "$ac_cv_prog_gnat_exists" = no; then
- cf_ada_make=
-+ cf_cv_prog_gnat_correct=no
- else
-
--echo "$as_me:18068: checking for gnat version" >&5
-+echo "$as_me:20292: checking for gnat version" >&5
- echo $ECHO_N "checking for gnat version... $ECHO_C" >&6
- cf_gnat_version=`${cf_ada_make:-gnatmake} -v 2>&1 | \
- grep '[0-9].[0-9][0-9]*' |\
- sed -e '2,$d' -e 's/[^0-9 \.]//g' -e 's/^[ ]*//' -e 's/ .*//'`
--echo "$as_me:18073: result: $cf_gnat_version" >&5
-+echo "$as_me:20297: result: $cf_gnat_version" >&5
- echo "${ECHO_T}$cf_gnat_version" >&6
-
- case $cf_gnat_version in #(vi
--3.1[1-9]*|3.[2-9]*|[4-9].*) #(vi
-+3.1[1-9]*|3.[2-9]*|[4-9].*|20[0-9][0-9]) #(vi
- cf_cv_prog_gnat_correct=yes
- ;;
- *)
-- { echo "$as_me:18081: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5
-+ { echo "$as_me:20305: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&5
- echo "$as_me: WARNING: Unsupported GNAT version $cf_gnat_version. We require 3.11 or better. Disabling Ada95 binding." >&2;}
- cf_cv_prog_gnat_correct=no
- ;;
-@@ -18086,7 +20310,7 @@
-
- # Extract the first word of "m4", so it can be a program name with args.
- set dummy m4; ac_word=$2
--echo "$as_me:18089: checking for $ac_word" >&5
-+echo "$as_me:20313: 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
-@@ -18101,7 +20325,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_M4_exists="yes"
--echo "$as_me:18104: found $ac_dir/$ac_word" >&5
-+echo "$as_me:20328: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -18110,10 +20334,10 @@
- fi
- M4_exists=$ac_cv_prog_M4_exists
- if test -n "$M4_exists"; then
-- echo "$as_me:18113: result: $M4_exists" >&5
-+ echo "$as_me:20337: result: $M4_exists" >&5
- echo "${ECHO_T}$M4_exists" >&6
- else
-- echo "$as_me:18116: result: no" >&5
-+ echo "$as_me:20340: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -18122,7 +20346,7 @@
- echo Ada95 binding required program m4 not found. Ada95 binding disabled.
- fi
- if test "$cf_cv_prog_gnat_correct" = yes; then
-- echo "$as_me:18125: checking if GNAT works" >&5
-+ echo "$as_me:20349: checking if GNAT works" >&5
- echo $ECHO_N "checking if GNAT works... $ECHO_C" >&6
-
- rm -rf conftest* *~conftest*
-@@ -18150,32 +20374,50 @@
- fi
- rm -rf conftest* *~conftest*
-
-- echo "$as_me:18153: result: $cf_cv_prog_gnat_correct" >&5
-+ echo "$as_me:20377: result: $cf_cv_prog_gnat_correct" >&5
- echo "${ECHO_T}$cf_cv_prog_gnat_correct" >&6
- fi
- fi
-
-- if test "$cf_cv_prog_gnat_correct" = yes; then
-+ if test "x$cf_cv_prog_gnat_correct" = xyes; then
-
- ADAFLAGS="$ADAFLAGS -gnatpn"
-
-- # make ADAFLAGS consistent with CFLAGS
-- case "$CFLAGS" in
-- *-g*)
-+ echo "$as_me:20386: checking optimization options for ADAFLAGS" >&5
-+echo $ECHO_N "checking optimization options for ADAFLAGS... $ECHO_C" >&6
-+ case "$CFLAGS" in
-+ *-g*)
-
- ADAFLAGS="$ADAFLAGS -g"
-
-- ;;
-- esac
-- case "$CFLAGS" in
-- *-O*)
-+ ;;
-+ esac
-+ case "$CFLAGS" in
-+ *-O*)
-+ cf_O_flag=`echo "$CFLAGS" |sed -e 's/^.*-O/-O/' -e 's/[ ].*//'`
-
-- ADAFLAGS="$ADAFLAGS -O3"
-+ ADAFLAGS="$ADAFLAGS $cf_O_flag"
-
-- ;;
-- esac
-+ ;;
-+ esac
-+ echo "$as_me:20403: result: $ADAFLAGS" >&5
-+echo "${ECHO_T}$ADAFLAGS" >&6
-+
-+echo "$as_me:20406: 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
-+else
-
--echo "$as_me:18178: checking if GNAT supports generics" >&5
-+cf_cv_gnatprep_opt_t=no
-+gnatprep -T 2>/dev/null >/dev/null && cf_cv_gnatprep_opt_t=yes
-+
-+fi
-+echo "$as_me:20416: 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:20420: checking if GNAT supports generics" >&5
- echo $ECHO_N "checking if GNAT supports generics... $ECHO_C" >&6
- case $cf_gnat_version in #(vi
- 3.[1-9]*|[4-9].*) #(vi
-@@ -18185,7 +20427,7 @@
- cf_gnat_generics=no
- ;;
- esac
--echo "$as_me:18188: result: $cf_gnat_generics" >&5
-+echo "$as_me:20430: result: $cf_gnat_generics" >&5
- echo "${ECHO_T}$cf_gnat_generics" >&6
-
- if test "$cf_gnat_generics" = yes
-@@ -18197,7 +20439,7 @@
- cf_generic_objects=
- fi
-
--echo "$as_me:18200: checking if GNAT supports SIGINT" >&5
-+echo "$as_me:20442: 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
-@@ -18245,7 +20487,7 @@
- rm -rf conftest* *~conftest*
-
- fi
--echo "$as_me:18248: result: $cf_cv_gnat_sigint" >&5
-+echo "$as_me:20490: result: $cf_cv_gnat_sigint" >&5
- echo "${ECHO_T}$cf_cv_gnat_sigint" >&6
-
- if test $cf_cv_gnat_sigint = yes ; then
-@@ -18254,58 +20496,18 @@
- USE_GNAT_SIGINT="#"
- fi
-
--echo "$as_me:18257: checking if GNAT pragma Unreferenced works" >&5
--echo $ECHO_N "checking if GNAT pragma Unreferenced works... $ECHO_C" >&6
--if test "${cf_cv_pragma_unreferenced+set}" = set; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
--else
--
--rm -rf conftest* *~conftest*
--cat >>conftest.ads <<CF_EOF
--procedure conftest;
--CF_EOF
--cat >>conftest.adb <<CF_EOF
--with Text_IO;
--with GNAT.OS_Lib;
--procedure conftest is
-- test : Integer;
-- pragma Unreferenced (test);
--begin
-- test := 1;
-- Text_IO.Put ("Hello World");
-- Text_IO.New_Line;
-- GNAT.OS_Lib.OS_Exit (0);
--end conftest;
--CF_EOF
--if ( $cf_ada_make $ADAFLAGS conftest 1>&5 2>&1 ) ; then
-- cf_cv_pragma_unreferenced=yes
--else
-- cf_cv_pragma_unreferenced=no
--fi
--rm -rf conftest* *~conftest*
--
--fi
--echo "$as_me:18288: result: $cf_cv_pragma_unreferenced" >&5
--echo "${ECHO_T}$cf_cv_pragma_unreferenced" >&6
--
--# if the pragma is supported, use it (needed in the Trace code).
--if test $cf_cv_pragma_unreferenced = yes ; then
-- PRAGMA_UNREF=TRUE
--else
-- PRAGMA_UNREF=FALSE
--fi
--
- cf_gnat_libraries=no
- cf_gnat_projects=no
-
--echo "$as_me:18301: checking if GNAT supports project files" >&5
-+if test "$enable_gnat_projects" != no ; then
-+echo "$as_me:20503: checking if GNAT supports project files" >&5
- echo $ECHO_N "checking if GNAT supports project files... $ECHO_C" >&6
- case $cf_gnat_version in #(vi
- 3.[0-9]*) #(vi
- ;;
- *)
- case $cf_cv_system_name in #(vi
-- cygwin*) #(vi
-+ cygwin*|msys*) #(vi
- ;;
- *)
- mkdir conftest.src conftest.bin conftest.lib
-@@ -18322,14 +20524,6 @@
- for Library_Dir use External("BUILD_DIR");
- Source_Dir := External ("SOURCE_DIR");
- for Source_Dirs use (Source_Dir);
-- package Compiler is
-- for Default_Switches ("Ada") use
-- ("-g",
-- "-O2",
-- "-gnatafno",
-- "-gnatVa", -- All validity checks
-- "-gnatwa"); -- Activate all optional errors
-- end Compiler;
- end Library;
- CF_EOF
- cat >>confpackage.ads <<CF_EOF
-@@ -18366,14 +20560,15 @@
- esac
- ;;
- esac
--echo "$as_me:18369: result: $cf_gnat_projects" >&5
-+echo "$as_me:20563: result: $cf_gnat_projects" >&5
- echo "${ECHO_T}$cf_gnat_projects" >&6
-+fi # enable_gnat_projects
-
- if test $cf_gnat_projects = yes
- then
-- echo "$as_me:18374: checking if GNAT supports libraries" >&5
-+ echo "$as_me:20569: checking if GNAT supports libraries" >&5
- echo $ECHO_N "checking if GNAT supports libraries... $ECHO_C" >&6
-- echo "$as_me:18376: result: $cf_gnat_libraries" >&5
-+ echo "$as_me:20571: result: $cf_gnat_libraries" >&5
- echo "${ECHO_T}$cf_gnat_libraries" >&6
- fi
-
-@@ -18393,7 +20588,7 @@
- USE_GNAT_LIBRARIES="#"
- fi
-
--echo "$as_me:18396: checking for ada-compiler" >&5
-+echo "$as_me:20591: 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.
-@@ -18404,12 +20599,12 @@
- cf_ada_compiler=gnatmake
- fi;
-
--echo "$as_me:18407: result: $cf_ada_compiler" >&5
-+echo "$as_me:20602: result: $cf_ada_compiler" >&5
- echo "${ECHO_T}$cf_ada_compiler" >&6
-
- cf_ada_package=terminal_interface
-
--echo "$as_me:18412: checking for ada-include" >&5
-+echo "$as_me:20607: 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.
-@@ -18433,7 +20628,7 @@
- ;;
- .[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
- ;;
--.\${*prefix}*) #(vi
-+.\${*prefix}*|.\${*dir}*) #(vi
- eval withval="$withval"
- case ".$withval" in #(vi
- .NONE/*)
-@@ -18445,19 +20640,19 @@
- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
- ;;
- *)
-- { { echo "$as_me:18448: error: expected a pathname, not \"$withval\"" >&5
-+ { { echo "$as_me:20643: error: expected a pathname, not \"$withval\"" >&5
- echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
- esac
-
- fi
--ADA_INCLUDE="$withval"
-+eval ADA_INCLUDE="$withval"
-
--echo "$as_me:18457: result: $ADA_INCLUDE" >&5
-+echo "$as_me:20652: result: $ADA_INCLUDE" >&5
- echo "${ECHO_T}$ADA_INCLUDE" >&6
-
--echo "$as_me:18460: checking for ada-objects" >&5
-+echo "$as_me:20655: 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.
-@@ -18471,69 +20666,310 @@
- if test "x$prefix" != xNONE; then
- cf_path_syntax="$prefix"
- else
-- cf_path_syntax="$ac_default_prefix"
-+ cf_path_syntax="$ac_default_prefix"
-+fi
-+
-+case ".$withval" in #(vi
-+.\$\(*\)*|.\'*\'*) #(vi
-+ ;;
-+..|./*|.\\*) #(vi
-+ ;;
-+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
-+ ;;
-+.\${*prefix}*|.\${*dir}*) #(vi
-+ eval withval="$withval"
-+ case ".$withval" in #(vi
-+ .NONE/*)
-+ withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
-+ ;;
-+ esac
-+ ;; #(vi
-+.no|.NONE/*)
-+ withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
-+ ;;
-+*)
-+ { { echo "$as_me:20691: error: expected a pathname, not \"$withval\"" >&5
-+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
-+ { (exit 1); exit 1; }; }
-+ ;;
-+esac
-+
-+fi
-+eval ADA_OBJECTS="$withval"
-+
-+echo "$as_me:20700: result: $ADA_OBJECTS" >&5
-+echo "${ECHO_T}$ADA_OBJECTS" >&6
-+
-+echo "$as_me:20703: 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.
-+if test "${with_ada_sharedlib+set}" = set; then
-+ withval="$with_ada_sharedlib"
-+ with_ada_sharedlib=$withval
-+else
-+ with_ada_sharedlib=no
-+fi;
-+echo "$as_me:20713: result: $with_ada_sharedlib" >&5
-+echo "${ECHO_T}$with_ada_sharedlib" >&6
-+
-+ADA_SHAREDLIB='lib$(LIB_NAME).so.1'
-+MAKE_ADA_SHAREDLIB="#"
-+
-+if test "x$with_ada_sharedlib" != xno
-+then
-+ MAKE_ADA_SHAREDLIB=
-+ if test "x$with_ada_sharedlib" != xyes
-+ then
-+ ADA_SHAREDLIB="$with_ada_sharedlib"
-+ fi
-+fi
-+
-+ fi
-+ fi
-+else
-+ cf_with_ada=no
-+fi
-+
-+# do this "late" to avoid conflict with header-checks
-+if test "x$with_widec" = xyes ; then
-+ echo "$as_me:20736: 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 20742 "configure"
-+#include "confdefs.h"
-+$ac_includes_default
-+int
-+main ()
-+{
-+if ((wchar_t *) 0)
-+ return 0;
-+if (sizeof (wchar_t))
-+ return 0;
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:20757: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20760: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:20763: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20766: \$? = $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
-+ac_cv_type_wchar_t=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+fi
-+echo "$as_me:20776: result: $ac_cv_type_wchar_t" >&5
-+echo "${ECHO_T}$ac_cv_type_wchar_t" >&6
-+
-+echo "$as_me:20779: 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
-+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 20788 "configure"
-+#include "confdefs.h"
-+$ac_includes_default
-+int
-+main ()
-+{
-+int _array_ [1 - 2 * !((sizeof (wchar_t)) >= 0)]
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:20800: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20803: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:20806: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20809: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ ac_lo=0 ac_mid=0
-+ while :; do
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 20814 "configure"
-+#include "confdefs.h"
-+$ac_includes_default
-+int
-+main ()
-+{
-+int _array_ [1 - 2 * !((sizeof (wchar_t)) <= $ac_mid)]
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:20826: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20829: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:20832: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20835: \$? = $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 20851 "configure"
-+#include "confdefs.h"
-+$ac_includes_default
-+int
-+main ()
-+{
-+int _array_ [1 - 2 * !((sizeof (wchar_t)) >= $ac_mid)]
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:20863: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20866: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:20869: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20872: \$? = $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 20888 "configure"
-+#include "confdefs.h"
-+$ac_includes_default
-+int
-+main ()
-+{
-+int _array_ [1 - 2 * !((sizeof (wchar_t)) <= $ac_mid)]
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:20900: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20903: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:20906: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20909: \$? = $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_wchar_t=$ac_lo
-+else
-+ if test "$cross_compiling" = yes; then
-+ { { echo "$as_me:20922: 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 20927 "configure"
-+#include "confdefs.h"
-+$ac_includes_default
-+int
-+main ()
-+{
-+FILE *f = fopen ("conftest.val", "w");
-+if (!f)
-+ $ac_main_return (1);
-+fprintf (f, "%d", (sizeof (wchar_t)));
-+fclose (f);
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:20943: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20946: \$? = $ac_status" >&5
-+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+ { (eval echo "$as_me:20948: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:20951: \$? = $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
- fi
--
--case ".$withval" in #(vi
--.\$\(*\)*|.\'*\'*) #(vi
-- ;;
--..|./*|.\\*) #(vi
-- ;;
--.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
-- ;;
--.\${*prefix}*) #(vi
-- eval withval="$withval"
-- case ".$withval" in #(vi
-- .NONE/*)
-- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
-- ;;
-- esac
-- ;; #(vi
--.no|.NONE/*)
-- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
-- ;;
--*)
-- { { echo "$as_me:18496: error: expected a pathname, not \"$withval\"" >&5
--echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
-- { (exit 1); exit 1; }; }
-- ;;
--esac
--
-+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
--ADA_OBJECTS="$withval"
--
--echo "$as_me:18505: result: $ADA_OBJECTS" >&5
--echo "${ECHO_T}$ADA_OBJECTS" >&6
--
--echo "$as_me:18508: 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.
--if test "${with_ada_sharedlib+set}" = set; then
-- withval="$with_ada_sharedlib"
-- with_ada_sharedlib=$withval
-+fi
-+rm -f conftest.val
- else
-- with_ada_sharedlib=no
--fi;
--echo "$as_me:18518: result: $with_ada_sharedlib" >&5
--echo "${ECHO_T}$with_ada_sharedlib" >&6
--
--ADA_SHAREDLIB='lib$(LIB_NAME).so.1'
--MAKE_ADA_SHAREDLIB="#"
--
--if test "x$with_ada_sharedlib" != xno
--then
-- MAKE_ADA_SHAREDLIB=
-- if test "x$with_ada_sharedlib" != xyes
-- then
-- ADA_SHAREDLIB="$with_ada_sharedlib"
-- fi
-+ ac_cv_sizeof_wchar_t=0
- fi
-+fi
-+echo "$as_me:20967: 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
-+EOF
-
-- fi
-- fi
--else
-- cf_with_ada=no
- fi
-
- ### Construct the ncurses library-subsets, if any, from this set of keywords:
-@@ -18546,11 +20982,11 @@
- ### chooses to split module lists into libraries.
- ###
- ### (see CF_LIB_RULES).
--echo "$as_me:18549: checking for library subsets" >&5
-+echo "$as_me:20985: checking for library subsets" >&5
- echo $ECHO_N "checking for library subsets... $ECHO_C" >&6
- LIB_SUBSETS=
-
--if test "$cf_with_progs" = yes || test "$with_ticlib" != no || test "$with_termcap" != no; then
-+if test "x$cf_with_progs" = xyes || test "$with_ticlib" != no || test "$with_termcap" != no; then
- LIB_SUBSETS="${LIB_SUBSETS}ticlib"
- if test "$with_ticlib" != no ; then
- LIB_SUBSETS="${LIB_SUBSETS} "
-@@ -18560,7 +20996,7 @@
- fi
-
- LIB_SUBSETS="${LIB_SUBSETS}termlib"
--test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo"
-+test "x$with_ext_funcs" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo"
-
- if test "$with_termlib" != no ; then
- LIB_SUBSETS="${LIB_SUBSETS} "
-@@ -18575,8 +21011,9 @@
- if test "$with_term_driver" != no ; then
- LIB_SUBSETS="${LIB_SUBSETS}+port_drivers"
- case $cf_cv_system_name in #(vi
-- *mingw32*) #(vi
-+ *mingw32*|*mingw64*) #(vi
- LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32con"
-+ CPPFLAGS="$CPPFLAGS -DUSE_WIN32CON_DRIVER"
- ;;
- *) #(vi
- LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo"
-@@ -18584,29 +21021,22 @@
- esac
- fi
-
--test "$with_widec" = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
--test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs"
-+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:18590: result: $LIB_SUBSETS" >&5
-+echo "$as_me:21027: result: $LIB_SUBSETS" >&5
- echo "${ECHO_T}$LIB_SUBSETS" >&6
-
- ### Construct the list of include-directories to be generated
-
--CPPFLAGS="$CPPFLAGS -I. -I../include"
- if test "$srcdir" != "."; then
-- CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include"
-+ CPPFLAGS="-I\${srcdir}/../include $CPPFLAGS"
- fi
--if test "$GCC" != yes; then
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
--elif test "$includedir" != "/usr/include"; then
-- if test "$includedir" = '${prefix}/include' ; then
-- if test $prefix != /usr ; then
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
-- fi
-- else
-- CPPFLAGS="$CPPFLAGS -I\${includedir}"
-- fi
-+CPPFLAGS="-I../include $CPPFLAGS"
-+if test "$srcdir" != "."; then
-+ CPPFLAGS="-I\${srcdir} $CPPFLAGS"
- fi
-+CPPFLAGS="-I. $CPPFLAGS"
-
- ACPPFLAGS="-I. -I../include -I../../include $ACPPFLAGS"
- if test "$srcdir" != "."; then
-@@ -18616,7 +21046,7 @@
- ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
- elif test "$includedir" != "/usr/include"; then
- if test "$includedir" = '${prefix}/include' ; then
-- if test $prefix != /usr ; then
-+ if test x$prefix != x/usr ; then
- ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
- fi
- else
-@@ -18625,7 +21055,7 @@
- fi
-
- ### Build up pieces for makefile rules
--echo "$as_me:18628: checking default library suffix" >&5
-+echo "$as_me:21058: checking default library suffix" >&5
- echo $ECHO_N "checking default library suffix... $ECHO_C" >&6
-
- case $DFT_LWR_MODEL in
-@@ -18636,36 +21066,32 @@
- shared) DFT_ARG_SUFFIX='' ;;
- esac
- test -n "$LIB_SUFFIX" && DFT_ARG_SUFFIX="${LIB_SUFFIX}${DFT_ARG_SUFFIX}"
--echo "$as_me:18639: result: $DFT_ARG_SUFFIX" >&5
-+echo "$as_me:21069: result: $DFT_ARG_SUFFIX" >&5
- echo "${ECHO_T}$DFT_ARG_SUFFIX" >&6
-
--echo "$as_me:18642: checking default library-dependency suffix" >&5
-+echo "$as_me:21072: checking default library-dependency suffix" >&5
- echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6
-
-- case $DFT_LWR_MODEL in #(vi
-- libtool) #(vi
-+ case X$DFT_LWR_MODEL in #(vi
-+ Xlibtool) #(vi
- DFT_LIB_SUFFIX='.la'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
-- normal) #(vi
-- DFT_LIB_SUFFIX='.a'
-- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
-- ;;
-- debug) #(vi
-+ Xdebug) #(vi
- DFT_LIB_SUFFIX='_g.a'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
-- profile) #(vi
-+ Xprofile) #(vi
- DFT_LIB_SUFFIX='_p.a'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
-- shared) #(vi
-+ Xshared) #(vi
- case $cf_cv_system_name in
-- aix[56]*) #(vi
-- DFT_LIB_SUFFIX='.a'
-+ aix[5-7]*) #(vi
-+ DFT_LIB_SUFFIX='.so'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
-- cygwin*) #(vi
-+ cygwin*|msys*|mingw*) #(vi
- DFT_LIB_SUFFIX='.dll'
- DFT_DEP_SUFFIX='.dll.a'
- ;;
-@@ -18685,17 +21111,23 @@
- ;;
- esac
- ;;
-- *) DFT_LIB_SUFFIX='.so'
-+ *) #(vi
-+ DFT_LIB_SUFFIX='.so'
- DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
- ;;
- esac
-+ ;;
-+ *)
-+ DFT_LIB_SUFFIX='.a'
-+ DFT_DEP_SUFFIX=$DFT_LIB_SUFFIX
-+ ;;
- esac
- test -n "$LIB_SUFFIX" && DFT_LIB_SUFFIX="${LIB_SUFFIX}${DFT_LIB_SUFFIX}"
- test -n "$LIB_SUFFIX" && DFT_DEP_SUFFIX="${LIB_SUFFIX}${DFT_DEP_SUFFIX}"
--echo "$as_me:18695: result: $DFT_DEP_SUFFIX" >&5
-+echo "$as_me:21127: result: $DFT_DEP_SUFFIX" >&5
- echo "${ECHO_T}$DFT_DEP_SUFFIX" >&6
-
--echo "$as_me:18698: checking default object directory" >&5
-+echo "$as_me:21130: checking default object directory" >&5
- echo $ECHO_N "checking default object directory... $ECHO_C" >&6
-
- case $DFT_LWR_MODEL in
-@@ -18705,47 +21137,47 @@
- profile) DFT_OBJ_SUBDIR='obj_p' ;;
- shared)
- case $cf_cv_system_name in #(vi
-- cygwin) #(vi
-+ cygwin|msys) #(vi
- DFT_OBJ_SUBDIR='objects' ;;
- *)
- DFT_OBJ_SUBDIR='obj_s' ;;
- esac
- esac
--echo "$as_me:18714: result: $DFT_OBJ_SUBDIR" >&5
-+echo "$as_me:21146: result: $DFT_OBJ_SUBDIR" >&5
- echo "${ECHO_T}$DFT_OBJ_SUBDIR" >&6
-
--# libtool thinks it can make c++ shared libraries (perhaps only g++)
--if test "$cf_with_cxx" = yes ; then
--echo "$as_me:18719: checking c++ library-dependency suffix" >&5
-+if test "x$cf_with_cxx" = xyes ; then
-+echo "$as_me:21150: 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++)
-+ CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX
-+elif test "$with_shared_cxx" != "no"; then
-+ # also for g++ users...
- CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX
- else
-+ # we normally make a static library because C/C++ library rules differ
-
-- case normal in #(vi
-- libtool) #(vi
-+ case Xnormal in #(vi
-+ Xlibtool) #(vi
- CXX_LIB_SUFFIX='.la'
- CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
- ;;
-- normal) #(vi
-- CXX_LIB_SUFFIX='.a'
-- CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
-- ;;
-- debug) #(vi
-+ Xdebug) #(vi
- CXX_LIB_SUFFIX='_g.a'
- CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
- ;;
-- profile) #(vi
-+ Xprofile) #(vi
- CXX_LIB_SUFFIX='_p.a'
- CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
- ;;
-- shared) #(vi
-+ Xshared) #(vi
- case $cf_cv_system_name in
-- aix[56]*) #(vi
-- CXX_LIB_SUFFIX='.a'
-+ aix[5-7]*) #(vi
-+ CXX_LIB_SUFFIX='.so'
- CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
- ;;
-- cygwin*) #(vi
-+ cygwin*|msys*|mingw*) #(vi
- CXX_LIB_SUFFIX='.dll'
- CXX_DEP_SUFFIX='.dll.a'
- ;;
-@@ -18765,21 +21197,28 @@
- ;;
- esac
- ;;
-- *) CXX_LIB_SUFFIX='.so'
-+ *) #(vi
-+ CXX_LIB_SUFFIX='.so'
- CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
- ;;
- esac
-+ ;;
-+ *)
-+ CXX_LIB_SUFFIX='.a'
-+ CXX_DEP_SUFFIX=$CXX_LIB_SUFFIX
-+ ;;
- esac
- test -n "$LIB_SUFFIX" && CXX_LIB_SUFFIX="${LIB_SUFFIX}${CXX_LIB_SUFFIX}"
- test -n "$LIB_SUFFIX" && CXX_DEP_SUFFIX="${LIB_SUFFIX}${CXX_DEP_SUFFIX}"
-+
- fi
--echo "$as_me:18776: result: $CXX_LIB_SUFFIX" >&5
-+echo "$as_me:21215: 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 "$with_dlsym" = yes ; then
-+if test "x$with_dlsym" = xyes ; then
- if test $DFT_LWR_MODEL = shared || \
- test $DFT_LWR_MODEL = libtool ; then
-
-@@ -18793,7 +21232,7 @@
- # TICS_LIST and TINFO_LIST are needed to build libtic.so and libterm.so, but
- # do not need libdl
- TICS_LIST=
--if test "$with_dlsym" = yes ; then
-+if test "x$with_dlsym" = xyes ; then
-
- # remove dl library from $SHLIB_LIST
- TINFO_LIST=`echo "$SHLIB_LIST" | sed -e 's/-ldl[ ]//g' -e 's/-ldl$//'`
-@@ -18802,7 +21241,7 @@
-
- if test "$with_ticlib" != no ; then
-
-- if test "$with_ticlib" != yes ; then
-+ if test "x$with_ticlib" != xyes ; then
- TICS_NAME=$with_ticlib
- TICS_ARG_SUFFIX="${with_ticlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
- TICS_DEP_SUFFIX="${with_ticlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
-@@ -18812,14 +21251,16 @@
- TICS_DEP_SUFFIX="${TICS_NAME}${DFT_DEP_SUFFIX}"
- TICS_LIB_SUFFIX="${TICS_NAME}${LIB_SUFFIX}"
- fi
-- TICS_ARGS="-L${LIB_DIR} -l${TICS_LIB_SUFFIX}"
-+ TICS_LDFLAGS="-L${LIB_DIR}"
-+ TICS_LIBS="-l${TICS_LIB_SUFFIX}"
- else
-- TICS_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}"
-+ TICS_LDFLAGS="-L${LIB_DIR}"
-+ TICS_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}"
- fi
-
- if test "$with_termlib" != no ; then
-
-- if test "$with_termlib" != yes ; then
-+ if test "x$with_termlib" != xyes ; then
- TINFO_NAME=$with_termlib
- TINFO_SUFFIX="`echo ${DFT_LIB_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
- TINFO_ARG_SUFFIX="${with_termlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
-@@ -18837,14 +21278,22 @@
- if test "$DFT_LWR_MODEL" = "libtool"; then
- TEST_ARGS="${TEST_DEPS}"
- TEST_ARG2="${TEST_DEP2}"
-- TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS"
-+ TINFO_LDFLAGS="-L${LIB_DIR}"
-+ TINFO_LIBS="$TEST_ARGS"
- TICS_LIST="$SHLIB_LIST $TEST_ARGS"
- SHLIB_LIST="${SHLIB_LIST} $TEST_ARGS"
- else
- TEST_ARGS="-l${TINFO_ARG_SUFFIX}"
- TEST_ARG2="-l${TINFO_ARG_SUFFIX}"
-- TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
-- TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS"
-+ if test "x$with_term_driver" != xno ; then
-+ TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}"
-+ TICS_LIBS="$TICS_LIBS -l${LIB_NAME}${DFT_ARG_SUFFIX}"
-+ TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS"
-+ else
-+ TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
-+ TINFO_LIBS="$TEST_ARGS"
-+ fi
-+ TINFO_LDFLAGS="-L${LIB_DIR}"
- SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
- fi
- else
-@@ -18852,25 +21301,26 @@
- TINFO_NAME=${LIB_NAME}
- TINFO_SUFFIX=${DFT_LIB_SUFFIX}
- TINFO_ARG_SUFFIX=${LIB_NAME}${DFT_ARG_SUFFIX}
-- if test "$with_tic_depends" = yes ; then
-+ if test "x$with_tic_depends" = xyes ; then
- TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}"
- else
- TICS_LIST="$SHLIB_LIST"
- fi
-
-- TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}"
-+ TINFO_LDFLAGS="-L${LIB_DIR}"
-+ TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}"
- fi
-
- if test "$DFT_LWR_MODEL" = shared ; then
- case $cf_cv_system_name in #(vi
-- cygwin*)
-- # "lib" files have ".dll.a" suffix, "cyg" files have ".dll"
-+ cygwin*|msys*)
-+ # "lib" files have ".dll.a" suffix, "cyg"or "msys-" files have ".dll"
- TINFO_SUFFIX=.dll
- ;;
- esac
- fi
-
--if test "$with_dlsym" = yes ; then
-+if test "x$with_dlsym" = xyes ; then
-
- # remove dl library from $TICS_LIST
- TICS_LIST=`echo "$TICS_LIST" | sed -e 's/-ldl[ ]//g' -e 's/-ldl$//'`
-@@ -18882,7 +21332,7 @@
- fi
-
- # needed for Ada95
--TINFO_ARGS2=`echo "$TINFO_ARGS" | sed -e 's,-L\.\./,-L../../,'`
-+TINFO_LDFLAGS2=`echo "$TINFO_LDFLAGS" | sed -e 's,-L\.\./,-L../../,'`
-
- case $DFT_LWR_MODEL in
- normal|debug|profile)
-@@ -18900,7 +21350,7 @@
- esac
- else
- case $cf_cv_system_name in #(
-- aix[456]*) #( from ld manpage
-+ aix[4-7]*) #( from ld manpage
- LDFLAGS_STATIC=-bstatic
- LDFLAGS_SHARED=-bdynamic
- ;;
-@@ -18927,19 +21377,19 @@
-
- if test -n "$LDFLAGS_STATIC" && test -n "$LDFLAGS_SHARED"
- then
-- echo "$as_me:18930: checking if linker supports switching between static/dynamic" >&5
-+ echo "$as_me:21380: 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 18935 "configure"
-+#line 21385 "configure"
- #include <stdio.h>
- int cf_ldflags_static(FILE *fp) { return fflush(fp); }
- EOF
-- if { (eval echo "$as_me:18939: \"$ac_compile\"") >&5
-+ if { (eval echo "$as_me:21389: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:18942: \$? = $ac_status" >&5
-+ echo "$as_me:21392: \$? = $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
-@@ -18950,10 +21400,10 @@
-
- LIBS="$LDFLAGS_STATIC -L`pwd` -lconftest $LDFLAGS_DYNAMIC $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 18953 "configure"
-+#line 21403 "configure"
- #include "confdefs.h"
-
--#line 18956 "configure"
-+#line 21406 "configure"
- #include <stdio.h>
- int cf_ldflags_static(FILE *fp);
-
-@@ -18968,18 +21418,28 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:18971: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:21421: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:18974: \$? = $ac_status" >&5
-+ echo "$as_me:21424: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:18977: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:21427: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:18980: \$? = $ac_status" >&5
-+ echo "$as_me:21430: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_ldflags_static=yes
-+
-+ # some linkers simply ignore the -dynamic
-+ case x`file conftest$ac_exeext 2>/dev/null` in #(vi
-+ *static*) # (vi
-+ cf_ldflags_static=no
-+ ;;
-+ *)
-+ cf_ldflags_static=yes
-+ ;;
-+ esac
-+
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-@@ -18990,7 +21450,7 @@
- rm -f libconftest.*
- LIBS="$cf_save_LIBS"
-
-- echo "$as_me:18993: result: $cf_ldflags_static" >&5
-+ echo "$as_me:21453: result: $cf_ldflags_static" >&5
- echo "${ECHO_T}$cf_ldflags_static" >&6
-
- if test $cf_ldflags_static != yes
-@@ -19006,20 +21466,25 @@
- ;;
- esac
-
--echo "$as_me:19009: checking where we will install curses.h" >&5
-+echo "$as_me:21469: checking where we will install curses.h" >&5
- echo $ECHO_N "checking where we will install curses.h... $ECHO_C" >&6
--test "$with_overwrite" = no && \
--test "x$includedir" = 'x${prefix}/include' && \
-- includedir='${prefix}/include/ncurses'${LIB_SUFFIX}
--echo "$as_me:19014: result: $includedir" >&5
--echo "${ECHO_T}$includedir" >&6
-+
-+includesubdir=
-+if test "$with_overwrite" = no && \
-+ ( test "x$includedir" = 'x${prefix}/include' || \
-+ test "x$includedir" = "x${prefix}/include" )
-+then
-+ includesubdir="/ncurses${LIB_SUFFIX}"
-+fi
-+echo "$as_me:21479: result: ${includedir}${includesubdir}" >&5
-+echo "${ECHO_T}${includedir}${includesubdir}" >&6
-
- ### Resolve a conflict between normal and wide-curses by forcing applications
- ### that will need libutf8 to add it to their configure script.
- if test "$with_overwrite" != no ; then
- if test "$NCURSES_LIBUTF8" = 1 ; then
- NCURSES_LIBUTF8='defined(HAVE_LIBUTF8_H)'
-- { echo "$as_me:19022: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&5
-+ { echo "$as_me:21487: 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
-@@ -19029,6 +21494,7 @@
- NCURSES_TREE=
-
- ### predefined stuff for the test programs
-+
- cat >>confdefs.h <<\EOF
- #define HAVE_SLK_COLOR 1
- EOF
-@@ -19036,7 +21502,7 @@
- ### Construct the list of subdirectories for which we'll customize makefiles
- ### with the appropriate compile-rules.
-
--echo "$as_me:19039: checking for src modules" >&5
-+echo "$as_me:21505: checking for src modules" >&5
- echo $ECHO_N "checking for src modules... $ECHO_C" >&6
-
- # dependencies and linker-arguments for test-programs
-@@ -19050,6 +21516,7 @@
- TEST_ARG2="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARG2"
- fi
-
-+PC_MODULES_TO_MAKE="ncurses${DFT_ARG_SUFFIX}"
- cf_cv_src_modules=
- for cf_dir in $modules_to_build
- do
-@@ -19096,10 +21563,11 @@
- TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS"
- TEST_ARG2="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARG2"
- fi
-+ PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ${cf_dir}${DFT_ARG_SUFFIX}"
- fi
- fi
- done
--echo "$as_me:19102: result: $cf_cv_src_modules" >&5
-+echo "$as_me:21570: result: $cf_cv_src_modules" >&5
- echo "${ECHO_T}$cf_cv_src_modules" >&6
-
- TEST_ARGS="-L${LIB_DIR} $TEST_ARGS"
-@@ -19117,11 +21585,18 @@
- if test "x$cf_with_tests" != "xno" ; then
- SRC_SUBDIRS="$SRC_SUBDIRS test"
- fi
--test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc"
--test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++"
-+# always make this, to install the ncurses-config script
-+SRC_SUBDIRS="$SRC_SUBDIRS misc"
-+if test "$cf_with_cxx_binding" != no; then
-+ PC_MODULES_TO_MAKE="${PC_MODULES_TO_MAKE} ncurses++${DFT_ARG_SUFFIX}"
-+ SRC_SUBDIRS="$SRC_SUBDIRS c++"
-+fi
-+
-+test "x$with_termlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TINFO_ARG_SUFFIX"
-+test "x$with_ticlib" != xno && PC_MODULES_TO_MAKE="$PC_MODULES_TO_MAKE $TICS_ARG_SUFFIX"
-
- ADA_SUBDIRS=
--if test "$cf_cv_prog_gnat_correct" = yes && 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
-@@ -19143,7 +21618,7 @@
-
- fi
-
--if test "$cf_with_ada" != "no" && test "$cf_cv_prog_gnat_correct" != "no"; then
-+if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = "xyes"; then
- SUB_MAKEFILES="$SUB_MAKEFILES Ada95/gen/adacurses${DFT_ARG_SUFFIX}-config:Ada95/gen/adacurses-config.in"
- SUB_MAKEFILES="$SUB_MAKEFILES man/adacurses${DFT_ARG_SUFFIX}-config.1:man/MKada_config.in"
- fi
-@@ -19159,7 +21634,7 @@
- profile) cf_subdir='obj_p' ;;
- shared)
- case $cf_cv_system_name in #(vi
-- cygwin) #(vi
-+ cygwin|msys) #(vi
- cf_subdir='objects' ;;
- *)
- cf_subdir='obj_s' ;;
-@@ -19181,6 +21656,7 @@
- NCURSES_SHLIB2='sh $(top_srcdir)/misc/shlib'
-
- # values to use as strings
-+
- cat >>confdefs.h <<EOF
- #define NCURSES_PATHSEP '$PATH_SEPARATOR'
- EOF
-@@ -19206,7 +21682,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -19247,7 +21723,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -19271,32 +21747,38 @@
-
- ### Define substitutions for header files to avoid name-pollution
-
--if test "$cf_cv_have_tcgetattr" = yes ; then
-+if test "x$cf_cv_have_tcgetattr" = xyes ; then
- HAVE_TCGETATTR=1
- else
- HAVE_TCGETATTR=0
- fi
-
--if test "$ac_cv_header_termio_h" = yes ; then
-+if test "x$ac_cv_header_stdint_h" = xyes ; then
-+ HAVE_STDINT_H=1
-+else
-+ HAVE_STDINT_H=0
-+fi
-+
-+if test "x$ac_cv_header_termio_h" = xyes ; then
- HAVE_TERMIO_H=1
- else
- HAVE_TERMIO_H=0
- fi
-
--if test "$ac_cv_header_termios_h" = yes ; then
-+if test "x$ac_cv_header_termios_h" = xyes ; then
- HAVE_TERMIOS_H=1
- else
- HAVE_TERMIOS_H=0
- fi
-
- ################################################################################
--test "$use_database" = yes && \
-+test "x$use_database" = xyes && \
- SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in"
-
- SUB_MAKEFILES="$SUB_MAKEFILES misc/ncurses-config:misc/ncurses-config.in"
- SUB_MAKEFILES="$SUB_MAKEFILES man/ncurses${DFT_ARG_SUFFIX}${cf_cv_abi_version}-config.1:man/MKncu_config.in"
-
--if test x"$enable_pc_files" = xyes ; then \
-+if test "x$enable_pc_files" = xyes ; then \
- SUB_MAKEFILES="$SUB_MAKEFILES misc/gen-pkgconfig:misc/gen-pkgconfig.in"
- MAKE_PC_FILES=
- else
-@@ -19305,7 +21787,7 @@
-
- # Extract the first word of "tic", so it can be a program name with args.
- set dummy tic; ac_word=$2
--echo "$as_me:19308: checking for $ac_word" >&5
-+echo "$as_me:21790: checking for $ac_word" >&5
- echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
- if test "${ac_cv_path_TIC_PATH+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-@@ -19322,7 +21804,7 @@
- test -z "$ac_dir" && ac_dir=.
- if $as_executable_p "$ac_dir/$ac_word"; then
- ac_cv_path_TIC_PATH="$ac_dir/$ac_word"
-- echo "$as_me:19325: found $ac_dir/$ac_word" >&5
-+ echo "$as_me:21807: found $ac_dir/$ac_word" >&5
- break
- fi
- done
-@@ -19334,10 +21816,10 @@
- TIC_PATH=$ac_cv_path_TIC_PATH
-
- if test -n "$TIC_PATH"; then
-- echo "$as_me:19337: result: $TIC_PATH" >&5
-+ echo "$as_me:21819: result: $TIC_PATH" >&5
- echo "${ECHO_T}$TIC_PATH" >&6
- else
-- echo "$as_me:19340: result: no" >&5
-+ echo "$as_me:21822: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -19345,7 +21827,7 @@
- then
- if test "$TIC_PATH" = unknown
- then
-- { echo "$as_me:19348: WARNING: no tic program found for fallbacks" >&5
-+ { echo "$as_me:21830: WARNING: no tic program found for fallbacks" >&5
- echo "$as_me: WARNING: no tic program found for fallbacks" >&2;}
- fi
- fi
-@@ -19358,13 +21840,74 @@
-
- ADAHTML_DIR=../../doc/html/ada
-
--SUB_SCRIPTS=
-+# these could be configurable, but are not currently
-+PANEL_NAME=panel
-+MENU_NAME=menu
-+FORM_NAME=form
-+CXX_NAME=ncurses++
-+
-+# workaround for g++ versus Solaris (20131116)
- case $cf_cv_system_name in #(vi
--*mingw32*) #(vi
-- SUB_SCRIPTS="mk-dlls.sh"
-+solaris2*) #(vi
-+ case "x$CPPFLAGS" in #(vi
-+ *-D_XOPEN_SOURCE_EXTENDED*)
-+ test -n "$verbose" && echo " moving _XOPEN_SOURCE_EXTENDED to work around g++ problem" 1>&6
-+
-+echo "${as_me:-configure}:21856: 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//'`
-+ ;;
-+ esac
-+ ;;
-+esac
-+
-+# AC_CHECK_SIZEOF demands a literal parameter, no variables. So we do this.
-+case "x$NCURSES_OSPEED" in #(vi
-+*short*) #(vi
-+ cf_compatible=1
-+ ;;
-+*)
-+ cf_compatible=0
-+ ;;
-+esac
-+
-+cat >>confdefs.h <<EOF
-+#define NCURSES_OSPEED_COMPAT $cf_compatible
-+EOF
-+
-+case "x$cf_cv_typeof_chtype" in
-+xshort|xint|xlong)
-+ cf_cv_typeof_chtype="unsigned $cf_cv_typeof_chtype"
-+ ;;
-+esac
-+
-+case "x$cf_cv_typeof_mmask_t" in
-+xshort|xint|xlong)
-+ cf_cv_typeof_mmask_t="unsigned $cf_cv_typeof_mmask_t"
- ;;
- esac
-
-+# substitute into misc/Makefile to suppress
-+# (un)install.data from the
-+# (un)install rules.
-+if test "x$cf_with_db_install" = "xno"; then
-+ MISC_INSTALL_DATA=
-+ MISC_UNINSTALL_DATA=
-+else
-+ MISC_INSTALL_DATA=install.data
-+ MISC_UNINSTALL_DATA=uninstall.data
-+fi
-+
-+SUB_SCRIPTS=
-+
-+if test -n "$PACKAGE"
-+then
-+ PACKAGE="${PACKAGE}${DFT_ARG_SUFFIX}"
-+ export PACKAGE
-+ echo "package: $PACKAGE"
-+fi
-+
- ac_config_files="$ac_config_files include/MKterm.h.awk include/curses.head:include/curses.h.in include/ncurses_dll.h include/termcap.h include/unctrl.h $SUB_SCRIPTS $SUB_MAKEFILES Makefile"
- ac_config_commands="$ac_config_commands default"
- cat >confcache <<\_ACEOF
-@@ -19446,7 +21989,7 @@
- : ${CONFIG_STATUS=./config.status}
- ac_clean_files_save=$ac_clean_files
- ac_clean_files="$ac_clean_files $CONFIG_STATUS"
--{ echo "$as_me:19449: creating $CONFIG_STATUS" >&5
-+{ echo "$as_me:21992: creating $CONFIG_STATUS" >&5
- echo "$as_me: creating $CONFIG_STATUS" >&6;}
- cat >$CONFIG_STATUS <<_ACEOF
- #! $SHELL
-@@ -19578,7 +22121,7 @@
- cat >>$CONFIG_STATUS <<EOF
- ac_cs_version="\\
- config.status
--configured by $0, generated by GNU Autoconf 2.52.20101002,
-+configured by $0, generated by GNU Autoconf 2.52.20141204,
- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
-
- Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
-@@ -19622,7 +22165,7 @@
- echo "$ac_cs_version"; exit 0 ;;
- --he | --h)
- # Conflict between --help and --header
-- { { echo "$as_me:19625: error: ambiguous option: $1
-+ { { echo "$as_me:22168: 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;}
-@@ -19641,7 +22184,7 @@
- ac_need_defaults=false;;
-
- # This is an error.
-- -*) { { echo "$as_me:19644: error: unrecognized option: $1
-+ -*) { { echo "$as_me:22187: 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;}
-@@ -19660,7 +22203,7 @@
- ## Running config.status. ##
- ## ----------------------- ##
-
--This file was extended by $as_me 2.52.20101002, executed with
-+This file was extended by $as_me 2.52.20141204, executed with
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
-@@ -19682,10 +22225,11 @@
- AWK="$AWK"
- DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
- DFT_LWR_MODEL="$DFT_LWR_MODEL"
--ECHO_LINK="$ECHO_LINK"
-+ECHO_LD="$ECHO_LD"
- LDCONFIG="$LDCONFIG"
- LIBTOOL_VERSION="$LIBTOOL_VERSION"
- LIB_NAME="$LIB_NAME"
-+LIB_PREFIX="$LIB_PREFIX"
- LIB_SUBSETS="$LIB_SUBSETS"
- LIB_SUFFIX="$LIB_SUFFIX"
- LIB_TRACING="$LIB_TRACING"
-@@ -19707,7 +22251,7 @@
- TINFO_SUFFIX="$TINFO_SUFFIX"
- USE_OLD_MAKERULES="$USE_OLD_MAKERULES"
- WITH_CURSES_H="$with_curses_h"
--WITH_ECHO="$with_echo"
-+WITH_ECHO="${enable_echo:=yes}"
- WITH_OVERWRITE="$with_overwrite"
- cf_LIST_MODELS="$cf_list_models"
- cf_cv_abi_version="$cf_cv_abi_version"
-@@ -19717,16 +22261,20 @@
- cf_cv_enable_opaque="$cf_cv_enable_opaque"
- 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
- cf_cv_rel_version="$cf_cv_rel_version"
- cf_cv_rm_so_locs="$cf_cv_rm_so_locs"
- cf_cv_shared_soname='$cf_cv_shared_soname'
- cf_cv_shlib_version="$cf_cv_shlib_version"
- cf_cv_shlib_version_infix="$cf_cv_shlib_version_infix"
- cf_cv_system_name="$cf_cv_system_name"
-+cf_cv_term_driver="$with_term_driver"
- cf_with_ada="$cf_with_ada"
- cf_with_cxx_binding="$cf_with_cxx_binding"
-+cf_with_db_install="$cf_with_db_install"
- cf_with_manpages="$cf_with_manpages"
- cf_with_tests="$cf_with_tests"
-+with_shared_cxx="$with_shared_cxx"
- host="$host"
- target="$target"
-
-@@ -19747,7 +22295,7 @@
- "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:19750: error: invalid argument: $ac_config_target" >&5
-+ *) { { echo "$as_me:22298: error: invalid argument: $ac_config_target" >&5
- echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
- esac
-@@ -19806,6 +22354,7 @@
- s,@bindir@,$bindir,;t t
- s,@sbindir@,$sbindir,;t t
- s,@libexecdir@,$libexecdir,;t t
-+s,@datarootdir@,$datarootdir,;t t
- s,@datadir@,$datadir,;t t
- s,@sysconfdir@,$sysconfdir,;t t
- s,@sharedstatedir@,$sharedstatedir,;t t
-@@ -19839,6 +22388,11 @@
- s,@cf_cv_builtin_bool@,$cf_cv_builtin_bool,;t t
- s,@cf_cv_header_stdbool_h@,$cf_cv_header_stdbool_h,;t t
- s,@cf_cv_type_of_bool@,$cf_cv_type_of_bool,;t t
-+s,@VERSION@,$VERSION,;t t
-+s,@VERSION_MAJOR@,$VERSION_MAJOR,;t t
-+s,@VERSION_MINOR@,$VERSION_MINOR,;t t
-+s,@VERSION_PATCH@,$VERSION_PATCH,;t t
-+s,@PACKAGE@,$PACKAGE,;t t
- s,@build@,$build,;t t
- s,@build_cpu@,$build_cpu,;t t
- s,@build_vendor@,$build_vendor,;t t
-@@ -19858,9 +22412,8 @@
- s,@ac_ct_CC@,$ac_ct_CC,;t t
- s,@EXEEXT@,$EXEEXT,;t t
- s,@OBJEXT@,$OBJEXT,;t t
--s,@CPP@,$CPP,;t t
- s,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t
--s,@PROG_EXT@,$PROG_EXT,;t t
-+s,@CPP@,$CPP,;t t
- s,@LDCONFIG@,$LDCONFIG,;t t
- s,@CXX@,$CXX,;t t
- s,@CXXFLAGS@,$CXXFLAGS,;t t
-@@ -19887,6 +22440,8 @@
- s,@ac_ct_LD@,$ac_ct_LD,;t t
- s,@AR@,$AR,;t t
- s,@ac_ct_AR@,$ac_ct_AR,;t t
-+s,@NM@,$NM,;t t
-+s,@ac_ct_NM@,$ac_ct_NM,;t t
- s,@ARFLAGS@,$ARFLAGS,;t t
- s,@DESTDIR@,$DESTDIR,;t t
- s,@BUILD_CC@,$BUILD_CC,;t t
-@@ -19898,8 +22453,10 @@
- s,@BUILD_EXEEXT@,$BUILD_EXEEXT,;t t
- s,@BUILD_OBJEXT@,$BUILD_OBJEXT,;t t
- s,@cf_list_models@,$cf_list_models,;t t
-+s,@ABI_VERSION@,$ABI_VERSION,;t t
- s,@LIBTOOL_VERSION@,$LIBTOOL_VERSION,;t t
- s,@LIBTOOL@,$LIBTOOL,;t t
-+s,@ac_ct_LIBTOOL@,$ac_ct_LIBTOOL,;t t
- s,@LT_UNDEF@,$LT_UNDEF,;t t
- s,@LIBTOOL_CXX@,$LIBTOOL_CXX,;t t
- s,@LIBTOOL_OPTS@,$LIBTOOL_OPTS,;t t
-@@ -19921,25 +22478,34 @@
- s,@CC_G_OPT@,$CC_G_OPT,;t t
- s,@CXX_G_OPT@,$CXX_G_OPT,;t t
- s,@LD_MODEL@,$LD_MODEL,;t t
-+s,@shlibdir@,$shlibdir,;t t
-+s,@MAKE_DLLS@,$MAKE_DLLS,;t t
- s,@CC_SHARED_OPTS@,$CC_SHARED_OPTS,;t t
- s,@LD_RPATH_OPT@,$LD_RPATH_OPT,;t t
- s,@LD_SHARED_OPTS@,$LD_SHARED_OPTS,;t t
- s,@MK_SHARED_LIB@,$MK_SHARED_LIB,;t t
-+s,@RM_SHARED_OPTS@,$RM_SHARED_OPTS,;t t
- s,@LINK_PROGS@,$LINK_PROGS,;t t
- s,@LINK_TESTS@,$LINK_TESTS,;t t
- s,@EXTRA_LDFLAGS@,$EXTRA_LDFLAGS,;t t
- s,@LOCAL_LDFLAGS@,$LOCAL_LDFLAGS,;t t
- s,@LOCAL_LDFLAGS2@,$LOCAL_LDFLAGS2,;t t
- s,@INSTALL_LIB@,$INSTALL_LIB,;t t
-+s,@RPATH_LIST@,$RPATH_LIST,;t t
-+s,@EXPORT_SYMS@,$EXPORT_SYMS,;t t
-+s,@VERSIONED_SYMS@,$VERSIONED_SYMS,;t t
- s,@cf_ldd_prog@,$cf_ldd_prog,;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,@WHICH_XTERM@,$WHICH_XTERM,;t t
-+s,@XTERM_KBS@,$XTERM_KBS,;t t
- s,@TERMINFO_DIRS@,$TERMINFO_DIRS,;t t
- s,@TERMINFO@,$TERMINFO,;t t
- s,@MAKE_TERMINFO@,$MAKE_TERMINFO,;t t
- s,@USE_BIG_STRINGS@,$USE_BIG_STRINGS,;t t
- s,@TERMPATH@,$TERMPATH,;t t
-+s,@NCURSES_USE_TERMCAP@,$NCURSES_USE_TERMCAP,;t t
- s,@BROKEN_LINKER@,$BROKEN_LINKER,;t t
- s,@NCURSES_CH_T@,$NCURSES_CH_T,;t t
- s,@NCURSES_LIBUTF8@,$NCURSES_LIBUTF8,;t t
-@@ -19955,6 +22521,7 @@
- s,@TERMINFO_CAPS@,$TERMINFO_CAPS,;t t
- s,@NCURSES_OSPEED@,$NCURSES_OSPEED,;t t
- s,@NCURSES_CCHARW_MAX@,$NCURSES_CCHARW_MAX,;t t
-+s,@NCURSES_TPARM_ARG@,$NCURSES_TPARM_ARG,;t t
- s,@MANPAGE_RENAMES@,$MANPAGE_RENAMES,;t t
- s,@NCURSES_EXT_FUNCS@,$NCURSES_EXT_FUNCS,;t t
- s,@GENERATED_EXT_FUNCS@,$GENERATED_EXT_FUNCS,;t t
-@@ -19972,6 +22539,11 @@
- s,@NCURSES_OPAQUE@,$NCURSES_OPAQUE,;t t
- s,@NCURSES_SIZE_T@,$NCURSES_SIZE_T,;t t
- s,@NCURSES_WRAP_PREFIX@,$NCURSES_WRAP_PREFIX,;t t
-+s,@ECHO_LT@,$ECHO_LT,;t t
-+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,@ECHO_LINK@,$ECHO_LINK,;t t
- s,@ADAFLAGS@,$ADAFLAGS,;t t
- s,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t
-@@ -19994,10 +22566,10 @@
- s,@gnat_exists@,$gnat_exists,;t t
- s,@M4_exists@,$M4_exists,;t t
- s,@cf_ada_make@,$cf_ada_make,;t t
-+s,@GNATPREP_OPTS@,$GNATPREP_OPTS,;t t
- s,@cf_compile_generics@,$cf_compile_generics,;t t
- s,@cf_generic_objects@,$cf_generic_objects,;t t
- s,@USE_GNAT_SIGINT@,$USE_GNAT_SIGINT,;t t
--s,@PRAGMA_UNREF@,$PRAGMA_UNREF,;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
-@@ -20015,14 +22587,17 @@
- s,@TICS_ARG_SUFFIX@,$TICS_ARG_SUFFIX,;t t
- s,@TICS_DEP_SUFFIX@,$TICS_DEP_SUFFIX,;t t
- s,@TICS_LIB_SUFFIX@,$TICS_LIB_SUFFIX,;t t
--s,@TICS_ARGS@,$TICS_ARGS,;t t
-+s,@TICS_LDFLAGS@,$TICS_LDFLAGS,;t t
-+s,@TICS_LIBS@,$TICS_LIBS,;t t
- s,@TINFO_ARG_SUFFIX@,$TINFO_ARG_SUFFIX,;t t
- s,@TINFO_DEP_SUFFIX@,$TINFO_DEP_SUFFIX,;t t
- s,@TINFO_LIB_SUFFIX@,$TINFO_LIB_SUFFIX,;t t
--s,@TINFO_ARGS@,$TINFO_ARGS,;t t
--s,@TINFO_ARGS2@,$TINFO_ARGS2,;t t
-+s,@TINFO_LDFLAGS@,$TINFO_LDFLAGS,;t t
-+s,@TINFO_LIBS@,$TINFO_LIBS,;t t
-+s,@TINFO_LDFLAGS2@,$TINFO_LDFLAGS2,;t t
- s,@LDFLAGS_STATIC@,$LDFLAGS_STATIC,;t t
- s,@LDFLAGS_SHARED@,$LDFLAGS_SHARED,;t t
-+s,@includesubdir@,$includesubdir,;t t
- s,@WITH_OVERWRITE@,$WITH_OVERWRITE,;t t
- s,@TICS_LIST@,$TICS_LIST,;t t
- s,@TINFO_LIST@,$TINFO_LIST,;t t
-@@ -20032,10 +22607,12 @@
- s,@TEST_DEPS@,$TEST_DEPS,;t t
- s,@TEST_ARG2@,$TEST_ARG2,;t t
- s,@TEST_DEP2@,$TEST_DEP2,;t t
-+s,@PC_MODULES_TO_MAKE@,$PC_MODULES_TO_MAKE,;t t
- s,@ADA_SUBDIRS@,$ADA_SUBDIRS,;t t
- s,@DIRS_TO_MAKE@,$DIRS_TO_MAKE,;t t
- s,@NCURSES_SHLIB2@,$NCURSES_SHLIB2,;t t
- s,@HAVE_TCGETATTR@,$HAVE_TCGETATTR,;t t
-+s,@HAVE_STDINT_H@,$HAVE_STDINT_H,;t t
- s,@HAVE_TERMIO_H@,$HAVE_TERMIO_H,;t t
- s,@HAVE_TERMIOS_H@,$HAVE_TERMIOS_H,;t t
- s,@MAKE_PC_FILES@,$MAKE_PC_FILES,;t t
-@@ -20043,6 +22620,12 @@
- s,@TIC_PATH@,$TIC_PATH,;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,@MISC_INSTALL_DATA@,$MISC_INSTALL_DATA,;t t
-+s,@MISC_UNINSTALL_DATA@,$MISC_UNINSTALL_DATA,;t t
- CEOF
-
- EOF
-@@ -20157,7 +22740,7 @@
- esac
-
- if test x"$ac_file" != x-; then
-- { echo "$as_me:20160: creating $ac_file" >&5
-+ { echo "$as_me:22743: creating $ac_file" >&5
- echo "$as_me: creating $ac_file" >&6;}
- rm -f "$ac_file"
- fi
-@@ -20175,7 +22758,7 @@
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
-- test -f "$f" || { { echo "$as_me:20178: error: cannot find input file: $f" >&5
-+ test -f "$f" || { { echo "$as_me:22761: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo $f;;
-@@ -20188,13 +22771,45 @@
- echo $srcdir/$f
- else
- # /dev/null tree
-- { { echo "$as_me:20191: error: cannot find input file: $f" >&5
-+ { { echo "$as_me:22774: 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
-+ 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`
-+ if test -n "$ac_seen"; then
-+ ac_used=`grep '@datarootdir@' $ac_item`
-+ if test -z "$ac_used"; then
-+ { echo "$as_me:22790: 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`
-+ if test -n "$ac_seen"; then
-+ { echo "$as_me:22799: 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;}
-+ ac_warn_datarootdir=yes
-+ fi
-+ done
-+ fi
-+
-+if test "x$ac_warn_datarootdir" = xyes; then
-+ ac_sed_cmds="$ac_sed_cmds | sed -e 's,@datarootdir@,\${prefix}/share,g' -e 's,\${datarootdir},\${prefix}/share,g'"
-+fi
-+
-+EOF
- cat >>$CONFIG_STATUS <<EOF
- sed "$ac_vpsub
- $extrasub
-@@ -20209,11 +22824,35 @@
- " $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
- rm -f $tmp/stdin
- if test x"$ac_file" != x-; then
-- mv $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`
-+ if test -n "$ac_seen"; then
-+ ac_init=`egrep '[ ]*'$ac_name'[ ]*=' $ac_file`
-+ if test -z "$ac_init"; then
-+ ac_seen=`echo "$ac_seen" |sed -e 's,^,'$ac_file':,'`
-+ { echo "$as_me:22836: 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
-+ if test -s $tmp/out; then
-+ ac_seen=`sed -e 's,^,'$ac_file':,' < $tmp/out`
-+ { echo "$as_me:22847: WARNING: Some variables may not be substituted:
-+$ac_seen" >&5
-+echo "$as_me: WARNING: Some variables may not be substituted:
-+$ac_seen" >&2;}
-+ fi
- else
- cat $tmp/out
-- rm -f $tmp/out
- fi
-+ rm -f $tmp/out
-
- done
- EOF
-@@ -20254,7 +22893,7 @@
- * ) ac_file_in=$ac_file.in ;;
- esac
-
-- test x"$ac_file" != x- && { echo "$as_me:20257: creating $ac_file" >&5
-+ test x"$ac_file" != x- && { echo "$as_me:22896: creating $ac_file" >&5
- echo "$as_me: creating $ac_file" >&6;}
-
- # First look for the input files in the build tree, otherwise in the
-@@ -20265,7 +22904,7 @@
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
-- test -f "$f" || { { echo "$as_me:20268: error: cannot find input file: $f" >&5
-+ test -f "$f" || { { echo "$as_me:22907: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo $f;;
-@@ -20278,7 +22917,7 @@
- echo $srcdir/$f
- else
- # /dev/null tree
-- { { echo "$as_me:20281: error: cannot find input file: $f" >&5
-+ { { echo "$as_me:22920: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- fi;;
-@@ -20336,7 +22975,7 @@
- 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:20339: $ac_file is unchanged" >&5
-+ { echo "$as_me:22978: $ac_file is unchanged" >&5
- echo "$as_me: $ac_file is unchanged" >&6;}
- else
- ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-@@ -20394,25 +23033,20 @@
- 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_LINK" $srcdir/$cf_dir/programs >>$cf_dir/Makefile
-+ $AWK -f $srcdir/test/mk-test.awk INSTALL=no ECHO_LINK="$ECHO_LD" $srcdir/$cf_dir/programs >>$cf_dir/Makefile
- fi
- done
-
- fi
-
-- case $cf_cv_system_name in #(vi
-- OS/2*|os2*) #(vi
-- LIB_PREFIX=''
-- ;;
-- *) LIB_PREFIX='lib'
-- ;;
-- esac
- cf_prefix=$LIB_PREFIX
-
--if test $cf_cv_shlib_version = cygdll ; then
-+case $cf_cv_shlib_version in #(vi
-+cygdll|msysdll|mingw)
- TINFO_NAME=$TINFO_ARG_SUFFIX
- TINFO_SUFFIX=.dll
--fi
-+ ;;
-+esac
-
- if test -n "$TINFO_SUFFIX" ; then
- case $TINFO_SUFFIX in
-@@ -20438,34 +23072,30 @@
- elif test -f $srcdir/$cf_dir/modules; then
-
- SHARED_LIB=
-- LIBS_TO_MAKE=
-+ Libs_To_Make=
- for cf_item in $cf_LIST_MODELS
- do
-
-- case $cf_item in #(vi
-- libtool) #(vi
-+ case X$cf_item in #(vi
-+ Xlibtool) #(vi
- cf_suffix='.la'
- cf_depsuf=$cf_suffix
- ;;
-- normal) #(vi
-- cf_suffix='.a'
-- cf_depsuf=$cf_suffix
-- ;;
-- debug) #(vi
-+ Xdebug) #(vi
- cf_suffix='_g.a'
- cf_depsuf=$cf_suffix
- ;;
-- profile) #(vi
-+ Xprofile) #(vi
- cf_suffix='_p.a'
- cf_depsuf=$cf_suffix
- ;;
-- shared) #(vi
-+ Xshared) #(vi
- case $cf_cv_system_name in
-- aix[56]*) #(vi
-- cf_suffix='.a'
-+ aix[5-7]*) #(vi
-+ cf_suffix='.so'
- cf_depsuf=$cf_suffix
- ;;
-- cygwin*) #(vi
-+ cygwin*|msys*|mingw*) #(vi
- cf_suffix='.dll'
- cf_depsuf='.dll.a'
- ;;
-@@ -20485,83 +23115,88 @@
- ;;
- esac
- ;;
-- *) cf_suffix='.so'
-+ *) #(vi
-+ cf_suffix='.so'
- cf_depsuf=$cf_suffix
- ;;
- esac
-+ ;;
-+ *)
-+ cf_suffix='.a'
-+ cf_depsuf=$cf_suffix
-+ ;;
- esac
- test -n "$LIB_SUFFIX" && cf_suffix="${LIB_SUFFIX}${cf_suffix}"
- test -n "$LIB_SUFFIX" && cf_depsuf="${LIB_SUFFIX}${cf_depsuf}"
-
-+ cf_libname=$cf_dir
-+ test "$cf_dir" = c++ && cf_libname=ncurses++
- if test $cf_item = shared ; then
-- if test "$cf_cv_do_symlinks" = yes ; then
-- case "$cf_cv_shlib_version" in #(vi
-- rel) #(vi
-- case "$cf_cv_system_name" in #(vi
-- darwin*)
-- case .${LIB_SUFFIX} in
-- .tw*)
-- cf_suffix=`echo $cf_suffix | sed 's/^tw//'`
-- cf_suffix=tw'.${REL_VERSION}'"$cf_suffix"
-- ;;
-- .t*)
-- cf_suffix=`echo $cf_suffix | sed 's/^t//'`
-- cf_suffix=t'.${REL_VERSION}'"$cf_suffix"
-- ;;
-- .w*)
-- cf_suffix=`echo $cf_suffix | sed 's/^w//'`
-- cf_suffix=w'.${REL_VERSION}'"$cf_suffix"
-+ if test -n "${LIB_SUFFIX}"
-+ then
-+ cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${LIB_SUFFIX}"'//'`
-+ else
-+ cf_shared_suffix="$cf_suffix"
-+ fi
-+ if test "$cf_cv_do_symlinks" = yes ; then
-+ cf_version_name=
-+
-+ case "$cf_cv_shlib_version" in #(vi
-+ rel) #(vi
-+ cf_version_name=REL_VERSION
- ;;
-- *)
-- cf_suffix='.${REL_VERSION}'"$cf_suffix"
-+ abi)
-+ cf_version_name=ABI_VERSION
- ;;
- esac
-- ;; #(vi
-- *) cf_suffix="$cf_suffix"'.${REL_VERSION}' ;;
-- esac
-+
-+ if test -n "$cf_version_name"
-+ then
-+ case "$cf_cv_system_name" in #(vi
-+ darwin*)
-+ # "w", etc?
-+ cf_suffix="${LIB_SUFFIX}"'.${'$cf_version_name'}'"$cf_shared_suffix"
-+ ;; #(vi
-+ *)
-+ cf_suffix="$cf_suffix"'.${'$cf_version_name'}'
-+ ;;
-+ esac
-+ fi
-+ if test -n "${LIB_SUFFIX}"
-+ then
-+ cf_shared_suffix=`echo "$cf_suffix" | sed 's/^'"${LIB_SUFFIX}"'//'`
-+ else
-+ cf_shared_suffix="$cf_suffix"
-+ fi
-+ fi
-+ # 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 #(vi
-+ cygdll) #(vi
-+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
-+ Libs_To_Make="$Libs_To_Make ../lib/cyg${cf_libname}${cf_cygsuf}"
-+ continue
- ;;
-- abi)
-- case "$cf_cv_system_name" in #(vi
-- darwin*)
-- case .${LIB_SUFFIX} in
-- .tw*)
-- cf_suffix=`echo $cf_suffix | sed 's/^tw//'`
-- cf_suffix=tw'.${ABI_VERSION}'"$cf_suffix"
-- ;;
-- .t*)
-- cf_suffix=`echo $cf_suffix | sed 's/^t//'`
-- cf_suffix=t'.${ABI_VERSION}'"$cf_suffix"
-- ;;
-- .w*)
-- cf_suffix=`echo $cf_suffix | sed 's/^w//'`
-- cf_suffix=w'.${ABI_VERSION}'"$cf_suffix"
-- ;;
-- *)
-- cf_suffix='.${ABI_VERSION}'"$cf_suffix"
-- ;;
-- esac
-- ;; #(vi
-- *) cf_suffix="$cf_suffix"'.${ABI_VERSION}' ;;
-- esac
-+ msysdll) #(vi
-+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
-+ Libs_To_Make="$Libs_To_Make ../lib/msys-${cf_libname}${cf_cygsuf}"
-+ continue
-+ ;;
-+ mingw)
-+ cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
-+ Libs_To_Make="$Libs_To_Make ../lib/lib${cf_libname}${cf_cygsuf}"
-+ continue
- ;;
- esac
- fi
-- # 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.
-- if test $cf_cv_shlib_version = cygdll ; then
-- cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
-- LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/cyg${cf_dir}${cf_cygsuf}"
-- continue
-- fi
-- fi
-- LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/${cf_prefix}${cf_dir}${cf_suffix}"
-+ Libs_To_Make="$Libs_To_Make ../lib/${cf_prefix}${cf_libname}${cf_suffix}"
- done
-
- if test $cf_dir = ncurses ; then
- cf_subsets="$LIB_SUBSETS"
- cf_r_parts="$cf_subsets"
-- cf_liblist="$LIBS_TO_MAKE"
-+ cf_liblist="$Libs_To_Make"
-
- while test -n "$cf_r_parts"
- do
-@@ -20581,7 +23216,7 @@
- ;;
- esac
- if test -n "$cf_item"; then
-- LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE"
-+ Libs_To_Make="$cf_item $Libs_To_Make"
- fi
- else
- break
-@@ -20591,13 +23226,40 @@
- cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'`
- fi
-
-- sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \
-+ 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
-+ *.a)
-+ ;;
-+ *)
-+ cf_item=`echo "$cf_item" | sed -e "s,"$cf_shared_suffix",.a,"`
-+ ;;
-+ esac
-+ for cf_test in $cf_list
-+ do
-+ if test "$cf_test" = "$cf_item"
-+ then
-+ cf_LIST_MODELS=`echo "$cf_LIST_MODELS" | sed -e 's/normal//'`
-+ cf_item=
-+ break
-+ fi
-+ done
-+ test -n "$cf_item" && cf_list="$cf_list $cf_item"
-+ done
-+ Libs_To_Make="$cf_list"
-+ fi
-+ fi
-+
-+ 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
-
- $AWK -f $srcdir/mk-0th.awk \
-- libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \
-+ libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" ticlib="$TICS_LIB_SUFFIX" termlib="$TINFO_LIB_SUFFIX" \
- $srcdir/$cf_dir/modules >>$cf_dir/Makefile
-
- for cf_subset in $cf_subsets
-@@ -20605,34 +23267,47 @@
- cf_subdirs=
- for cf_item in $cf_LIST_MODELS
- do
-+
- echo "Appending rules for ${cf_item} model (${cf_dir}: ${cf_subset})"
-
- cf_ITEM=`echo "$cf_item" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-
-- case $cf_item in #(vi
-- libtool) #(vi
-+ CXX_MODEL=$cf_ITEM
-+ if test "$CXX_MODEL" = SHARED; then
-+ case $cf_cv_shlib_version in #(vi
-+ cygdll|msysdll|mingw) #(vi
-+ test "x$with_shared_cxx" = xno && test -n "$verbose" && echo " overriding CXX_MODEL to SHARED" 1>&6
-+
-+echo "${as_me:-configure}:23281: testing overriding CXX_MODEL to SHARED ..." 1>&5
-+
-+ with_shared_cxx=yes
-+ ;;
-+ *)
-+ test "x$with_shared_cxx" = xno && CXX_MODEL=NORMAL
-+ ;;
-+ esac
-+ fi
-+
-+ case X$cf_item in #(vi
-+ Xlibtool) #(vi
- cf_suffix='.la'
- cf_depsuf=$cf_suffix
- ;;
-- normal) #(vi
-- cf_suffix='.a'
-- cf_depsuf=$cf_suffix
-- ;;
-- debug) #(vi
-+ Xdebug) #(vi
- cf_suffix='_g.a'
- cf_depsuf=$cf_suffix
- ;;
-- profile) #(vi
-+ Xprofile) #(vi
- cf_suffix='_p.a'
- cf_depsuf=$cf_suffix
- ;;
-- shared) #(vi
-+ Xshared) #(vi
- case $cf_cv_system_name in
-- aix[56]*) #(vi
-- cf_suffix='.a'
-+ aix[5-7]*) #(vi
-+ cf_suffix='.so'
- cf_depsuf=$cf_suffix
- ;;
-- cygwin*) #(vi
-+ cygwin*|msys*|mingw*) #(vi
- cf_suffix='.dll'
- cf_depsuf='.dll.a'
- ;;
-@@ -20652,10 +23327,16 @@
- ;;
- esac
- ;;
-- *) cf_suffix='.so'
-+ *) #(vi
-+ cf_suffix='.so'
- cf_depsuf=$cf_suffix
- ;;
- esac
-+ ;;
-+ *)
-+ cf_suffix='.a'
-+ cf_depsuf=$cf_suffix
-+ ;;
- esac
- test -n "$LIB_SUFFIX" && cf_suffix="${LIB_SUFFIX}${cf_suffix}"
- test -n "$LIB_SUFFIX" && cf_depsuf="${LIB_SUFFIX}${cf_depsuf}"
-@@ -20667,7 +23348,7 @@
- profile) cf_subdir='obj_p' ;;
- shared)
- case $cf_cv_system_name in #(vi
-- cygwin) #(vi
-+ cygwin|msys) #(vi
- cf_subdir='objects' ;;
- *)
- cf_subdir='obj_s' ;;
-@@ -20688,6 +23369,8 @@
- cf_libname=$TICS_LIB_SUFFIX
- ;;
- esac
-+ elif test $cf_dir = c++ ; then
-+ cf_libname=ncurses++$LIB_SUFFIX
- else
- cf_libname=${cf_libname}$LIB_SUFFIX
- fi
-@@ -20739,10 +23422,12 @@
- name=${cf_libname}${cf_dir_suffix} \
- traces=$LIB_TRACING \
- MODEL=$cf_ITEM \
-+ CXX_MODEL=$CXX_MODEL \
- model=$cf_subdir \
- prefix=$cf_prefix \
- suffix=$cf_suffix \
- subset=$cf_subset \
-+ driver=$cf_cv_term_driver \
- SymLink="$LN_S" \
- TermlibRoot=$TINFO_NAME \
- TermlibSuffix=$TINFO_SUFFIX \
-@@ -20781,7 +23466,7 @@
- done
- fi
-
-- echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} $@' >>Makefile
-+ echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} $@' >>Makefile
- done
-
- for cf_dir in $SRC_SUBDIRS
-@@ -20796,7 +23481,7 @@
- echo 'libs \' >> Makefile
- echo 'install.libs \' >> Makefile
- echo 'uninstall.libs ::' >> Makefile
-- echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} $@' >> Makefile
-+ echo ' cd '$cf_dir' && ${MAKE} ${TOP_MFLAGS} $@' >> Makefile
- ;;
- esac
- fi
-@@ -20819,7 +23504,7 @@
- uninstall.libs \\
- install.$cf_dir \\
- uninstall.$cf_dir ::
-- cd $cf_dir && \${MAKE} \${CF_MFLAGS} \$@
-+ cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \$@
- CF_EOF
- elif test -f $srcdir/$cf_dir/headers; then
- cat >> Makefile <<CF_EOF
-@@ -20829,24 +23514,32 @@
- uninstall.libs \\
- install.includes \\
- uninstall.includes ::
-- cd $cf_dir && \${MAKE} \${CF_MFLAGS} \$@
-+ cd $cf_dir && \${MAKE} \${TOP_MFLAGS} \$@
- CF_EOF
- fi
- done
-
-+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} \${CF_MFLAGS} \$@
-+$MAKE_TERMINFO cd misc && \${MAKE} \${TOP_MFLAGS} \$@
-+CF_EOF
-+else
-+cat >> Makefile <<CF_EOF
-+
-+install.libs uninstall.libs ::
-+ cd misc && \${MAKE} \${TOP_MFLAGS} \$@
- CF_EOF
-+fi
-
- if test "x$cf_with_manpages" = xyes; then
- cat >> Makefile <<CF_EOF
-
- install.man \\
- uninstall.man ::
-- cd man && \${MAKE} \${CF_MFLAGS} \$@
-+ cd man && \${MAKE} \${TOP_MFLAGS} \$@
- CF_EOF
- fi
-
-@@ -20867,7 +23560,7 @@
-
- install.man \\
- uninstall.man ::
-- cd tack && \${MAKE} \${CF_MFLAGS} \$@
-+ cd tack && \${MAKE} \${TOP_MFLAGS} \$@
- CF_EOF
- fi
- fi
-@@ -20979,7 +23672,7 @@
- fi
- done
-
--if test "x$cf_with_ada" != xno ; then
-+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
- fi
-Index: configure.in
-Prereq: 1.520
---- ncurses-5.9/configure.in 2011-03-28 00:22:26.000000000 +0000
-+++ ncurses-5.9-20141206/configure.in 2014-11-15 01:35:36.000000000 +0000
-@@ -1,5 +1,5 @@
- dnl***************************************************************************
--dnl Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+dnl Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
- dnl *
- dnl Permission is hereby granted, free of charge, to any person obtaining a *
- dnl copy of this software and associated documentation files (the *
-@@ -28,28 +28,25 @@
- dnl
- dnl Author: Thomas E. Dickey 1995-on
- dnl
--dnl $Id: configure.in,v 1.520 2011/03/28 00:22:26 tom Exp $
-+dnl $Id: configure.in,v 1.590 2014/11/15 01:35:36 tom Exp $
- dnl Process this file with autoconf to produce a configure script.
- dnl
- dnl See http://invisible-island.net/autoconf/ for additional information.
- dnl
- dnl ---------------------------------------------------------------------------
--AC_PREREQ(2.13.20020210)
--AC_REVISION($Revision: 1.520 $)
-+AC_PREREQ(2.52.20030208)
-+AC_REVISION($Revision: 1.590 $)
- AC_INIT(ncurses/base/lib_initscr.c)
- AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
-
- CF_TOP_BUILDDIR
- CF_SUBST_NCURSES_VERSION
-+CF_VERSION_INFO(NCURSES,ncurses)
-
- CF_WITH_REL_VERSION(NCURSES)
- CF_WITH_ABI_VERSION
-
--CF_CHECK_CACHE([AC_CANONICAL_SYSTEM])
--AC_ARG_WITH(system-type,
--[ --with-system-type=XXX test: override derived host system-type],
--[AC_MSG_WARN(overriding system type to $withval)
-- cf_cv_system_name=$withval])
-+CF_WITH_SYSTYPE
-
- ### Save the given $CFLAGS to allow user-override.
- cf_user_CFLAGS="$CFLAGS"
-@@ -58,15 +55,22 @@
- CF_CFG_DEFAULTS
-
- ### Checks for programs.
--AC_PROG_CC
--CF_GCC_VERSION
-+AC_ARG_WITH(ada,
-+ [ --without-ada suppress check for Ada95, don't build demo],
-+ [cf_with_ada=$withval],
-+ [cf_with_ada=yes])
-+if test "x$cf_with_ada" = xyes
-+then
-+ cf_PROG_CC="gnatgcc gcc cc"
-+else
-+ cf_PROG_CC="gcc cc"
-+fi
-+
-+CF_PROG_CC($cf_PROG_CC)
-
- AC_PROG_CPP
- AC_PROG_GCC_TRADITIONAL
- CF_PROG_CC_C_O(CC)
--AC_ISC_POSIX
--CF_ANSI_CC_REQD
--CF_PROG_EXT
- CF_PROG_LDCONFIG
-
- dnl DEFECT in autoconf 2.12: an attempt to set policy, this breaks the
-@@ -89,14 +93,47 @@
- cf_with_cxx=no; CXX=""; GXX="";])dnl
- AC_PROG_CXX
- popdef([AC_MSG_ERROR])dnl
-- # autoconf 2.5x removed the error - by hardcoding it to g++.
-+
-+ AC_LANG_PUSH(C++)
-+ if test "x$cf_with_cxx" != xno
-+ then
-+ # Several of the C++ configurations do not work, particularly when
-+ # cross-compiling (20140913 -TD)
-+ AC_MSG_CHECKING(if $CXX works)
-+
-+ save_CPPFLAGS="$CPPFLAGS"
-+ eval cf_includedir=${includedir}
-+ CPPFLAGS="$CPPFLAGS -I${cf_includedir}"
-+ AC_TRY_COMPILE([
-+#include <stdlib.h>
-+#include <stdio.h>
-+],
-+ [
-+ printf("Hello world!\n")
-+ ],
-+ [cf_cxx_works=yes],
-+ [cf_cxx_works=no])
-+ CPPFLAGS="$save_CPPFLAGS"
-+
-+ AC_MSG_RESULT($cf_cxx_works)
-+ if test "x$cf_cxx_works" = xno
-+ then
-+ AC_MSG_WARN([Ignore $CXX, since it cannot compile hello-world.])
-+ cf_with_cxx=no; CXX=""; GXX="";
-+ fi
-+ fi
-+ AC_LANG_POP
-+
-+ # autoconf 2.5x removed the error (hardcoding it to g++, or just blank)
- if test "$CXX" = "g++" ; then
- AC_PATH_PROG(CXX,g++)
- fi
-- if test "$CXX" = "g++" ; then
-- AC_MSG_WARN(ignoring hardcoded g++)
-+ case "x$CXX" in #(vi
-+ x|xg++)
-+ AC_MSG_WARN([You don't have any C++ compiler, too bad])
- cf_with_cxx=no; CXX=""; GXX="";
-- fi
-+ ;;
-+ esac
- fi
-
- CF_GXX_VERSION
-@@ -116,12 +153,15 @@
- AC_MSG_RESULT($cf_with_cxx_binding)
-
- AC_MSG_CHECKING(if you want to build with Ada95)
--AC_ARG_WITH(ada,
-- [ --without-ada suppress check for Ada95, don't build demo],
-- [cf_with_ada=$withval],
-- [cf_with_ada=yes])
- AC_MSG_RESULT($cf_with_ada)
-
-+AC_MSG_CHECKING(if you want to install terminal database)
-+AC_ARG_ENABLE(db-install,
-+ [ --disable-db-install suppress install of terminal database],
-+ [cf_with_db_install=$enableval],
-+ [cf_with_db_install=yes])
-+AC_MSG_RESULT($cf_with_db_install)
-+
- AC_MSG_CHECKING(if you want to install manpages)
- AC_ARG_WITH(manpages,
- [ --without-manpages suppress install of manpages],
-@@ -131,14 +171,14 @@
-
- AC_MSG_CHECKING(if you want to build programs such as tic)
- AC_ARG_WITH(progs,
-- [ --without-progs suppress build with programs (e.g., tic)],
-+ [ --without-progs suppress build/install with programs (e.g., tic)],
- [cf_with_progs=$withval],
- [cf_with_progs=yes])
- AC_MSG_RESULT($cf_with_progs)
-
- AC_MSG_CHECKING(if you want to build test-programs)
- AC_ARG_WITH(tests,
-- [ --without-tests suppress build with test-programs],
-+ [ --without-tests suppress build/install with test-programs],
- [cf_with_tests=$withval],
- [cf_with_tests=yes])
- AC_MSG_RESULT($cf_with_tests)
-@@ -168,28 +208,8 @@
-
- # if we find pkg-config, check if we should install the ".pc" files.
- CF_PKG_CONFIG
--
--if test "$PKG_CONFIG" != no ; then
-- AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG)
--
-- # Leave this as something that can be overridden in the environment.
-- if test -z "$PKG_CONFIG_LIBDIR" ; then
-- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`/lib/pkgconfig
-- fi
-- PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'`
-- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
-- AC_ARG_ENABLE(pc-files,
-- [ --enable-pc-files generate and install .pc files for pkg-config],
-- [enable_pc_files=$enableval],
-- [enable_pc_files=no])
-- AC_MSG_RESULT($enable_pc_files)
-- else
-- AC_MSG_RESULT(no)
-- AC_MSG_WARN(did not find library $PKG_CONFIG_LIBDIR)
-- enable_pc_files=no
-- fi
--fi
--AC_SUBST(PKG_CONFIG_LIBDIR)
-+CF_WITH_PKG_CONFIG_LIBDIR
-+CF_ENABLE_PC_FILES
-
- AC_MSG_CHECKING(if we should assume mixed-case filenames)
- AC_ARG_ENABLE(mixed-case,
-@@ -201,8 +221,8 @@
- CF_MIXEDCASE_FILENAMES
- else
- cf_cv_mixedcase=$enable_mixedcase
-- if test "$enable_mixedcase" = "yes" ; then
-- AC_DEFINE(MIXEDCASE_FILENAMES)
-+ if test "x$enable_mixedcase" = "xyes" ; then
-+ AC_DEFINE(MIXEDCASE_FILENAMES,1,[Define to 1 if tic should assume mixed-case filenames])
- fi
- fi
-
-@@ -215,6 +235,7 @@
- AC_CHECK_TOOL(RANLIB, ranlib, ':')
- AC_CHECK_TOOL(LD, ld, ld)
- AC_CHECK_TOOL(AR, ar, ar)
-+AC_CHECK_TOOL(NM, nm, nm)
- CF_AR_FLAGS
-
- dnl Special option for use by system-builders: the install-prefix is used to
-@@ -223,8 +244,8 @@
- AC_MSG_CHECKING(if you have specified an install-prefix)
- AC_ARG_WITH(install-prefix,
- [ --with-install-prefix prefixes actual install-location ($DESTDIR)],
-- [case "$withval" in #(vi
-- yes|no) #(vi
-+ [case "x$withval" in #(vi
-+ xyes|xno) #(vi
- ;;
- *) DESTDIR="$withval"
- ;;
-@@ -261,7 +282,7 @@
- [with_shared=$withval],
- [with_shared=no])
- AC_MSG_RESULT($with_shared)
--test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared"
-+test "x$with_shared" = "xyes" && cf_list_models="$cf_list_models shared"
-
- AC_MSG_CHECKING(if you want to build static libraries)
- AC_ARG_WITH(normal,
-@@ -269,7 +290,7 @@
- [with_normal=$withval],
- [with_normal=yes])
- AC_MSG_RESULT($with_normal)
--test "$with_normal" = "yes" && cf_list_models="$cf_list_models normal"
-+test "x$with_normal" = "xyes" && cf_list_models="$cf_list_models normal"
-
- AC_MSG_CHECKING(if you want to build debug libraries)
- AC_ARG_WITH(debug,
-@@ -277,7 +298,7 @@
- [with_debug=$withval],
- [with_debug=yes])
- AC_MSG_RESULT($with_debug)
--test "$with_debug" = "yes" && cf_list_models="$cf_list_models debug"
-+test "x$with_debug" = "xyes" && cf_list_models="$cf_list_models debug"
-
- AC_MSG_CHECKING(if you want to build profiling libraries)
- AC_ARG_WITH(profile,
-@@ -285,10 +306,21 @@
- [with_profile=$withval],
- [with_profile=no])
- AC_MSG_RESULT($with_profile)
--test "$with_profile" = "yes" && cf_list_models="$cf_list_models profile"
-+test "x$with_profile" = "xyes" && cf_list_models="$cf_list_models profile"
-
- fi
-
-+if test "X$cf_with_cxx_binding" != Xno; then
-+if test "x$with_shared" = "xyes"; then
-+AC_MSG_CHECKING(if you want to build C++ shared libraries)
-+AC_ARG_WITH(cxx-shared,
-+ [ --with-cxx-shared generate C++ shared-libraries],
-+ [with_shared_cxx=$withval],
-+ [with_shared_cxx=no])
-+AC_MSG_RESULT($with_shared_cxx)
-+fi
-+fi
-+
- ###############################################################################
-
- AC_MSG_CHECKING(for specified models)
-@@ -321,12 +353,11 @@
- LIB_DIR=../lib
- LIB_2ND=../../lib
-
--CF_LIB_PREFIX(cf_prefix)
--LIB_PREFIX=$cf_prefix
--AC_SUBST(LIB_PREFIX)
-+CF_WITH_LIB_PREFIX(cf_prefix)
-
- LIB_SUFFIX=
- AC_SUBST(LIB_SUFFIX)
-+CF_PATHSEP
-
- ###############################################################################
-
-@@ -354,21 +385,21 @@
- [with_dlsym=$withval],
- [with_dlsym=yes])
- AC_MSG_RESULT($with_dlsym)
-- if test "$with_dlsym" = yes ; then
-+ if test "x$with_dlsym" = xyes ; then
- CF_FUNC_DLSYM
-- if test "$with_gpm" != yes ; then
-+ if test "x$with_gpm" != xyes ; then
- CF_VERBOSE(assuming soname for gpm is $with_gpm)
- cf_cv_gpm_soname="$with_gpm"
- else
- CF_LIB_SONAME([#include <gpm.h>],[if (Gpm_Open(0,0)) Gpm_Close();],gpm)
- fi
-- test "$cf_cv_gpm_soname" != "unknown" && AC_DEFINE_UNQUOTED(LIBGPM_SONAME,"$cf_cv_gpm_soname")
-+ test "$cf_cv_gpm_soname" != "unknown" && AC_DEFINE_UNQUOTED(LIBGPM_SONAME,"$cf_cv_gpm_soname",[Define as needed to set the gpm share library soname])
- SHLIB_LIST="-ldl $SHLIB_LIST"
- else
- SHLIB_LIST="-lgpm $SHLIB_LIST"
- CF_ADD_LIB(gpm,TEST_LIBS)
- fi
-- AC_DEFINE(HAVE_LIBGPM)
-+ AC_DEFINE(HAVE_LIBGPM,1,[Define to 1 if we have the gpm library])
- CF_CHECK_GPM_WGETCH
- fi
-
-@@ -378,13 +409,13 @@
-
- if test X"$CC_G_OPT" = X"" ; then
- CC_G_OPT='-g'
-- test -n "$GCC" && test "${ac_cv_prog_cc_g}" != yes && CC_G_OPT=''
-+ test -n "$GCC" && test "x${ac_cv_prog_cc_g}" != xyes && CC_G_OPT=''
- fi
- AC_SUBST(CC_G_OPT)
-
- if test X"$CXX_G_OPT" = X"" ; then
- CXX_G_OPT='-g'
-- test -n "$GXX" && test "${ac_cv_prog_cxx_g}" != yes && CXX_G_OPT=''
-+ test -n "$GXX" && test "x${ac_cv_prog_cxx_g}" != xyes && CXX_G_OPT=''
- fi
- AC_SUBST(CXX_G_OPT)
-
-@@ -411,14 +442,31 @@
- ;;
- esac
-
-+# we will build libraries one-level down.
-+rel_builddir=..
- CF_SHARED_OPTS
--if test "$CC_SHARED_OPTS" = "unknown"; then
-- for model in $cf_list_models; do
-- if test "$model" = "shared"; then
-+for model in $cf_list_models; do
-+ case $model in #(vi
-+ libtool)
-+ CF_WITH_LIBTOOL_OPTS
-+ CF_WITH_EXPORT_SYMS
-+ ;;
-+ shared) #(vi
-+ if test "$CC_SHARED_OPTS" = "unknown"; then
- AC_ERROR(Shared libraries are not supported in this version)
- fi
-- done
--fi
-+ CF_WITH_VERSIONED_SYMS
-+ ;;
-+ esac
-+done
-+
-+# pretend that ncurses==ncursesw==ncursest
-+AC_MSG_CHECKING(if you want to disable library suffixes)
-+AC_ARG_ENABLE(lib-suffixes,
-+ [ --disable-lib-suffixes disable library suffixes],
-+ [disable_lib_suffixes=$enableval],
-+ [disable_lib_suffixes=no])
-+AC_MSG_RESULT($disable_lib_suffixes)
-
- ### If we're building with rpath, try to link non-standard libs that way too.
- if test "$DFT_LWR_MODEL" = "shared"; then
-@@ -453,9 +501,9 @@
- esac
- AC_SUBST(TERMINFO_SRC)
-
--CF_PATHSEP
-+NCURSES_USE_DATABASE=0
- if test "$use_database" != no ; then
-- AC_DEFINE(USE_DATABASE)
-+ NCURSES_USE_DATABASE=1
-
- AC_MSG_CHECKING(which terminfo source-file will be installed)
- AC_ARG_WITH(database,
-@@ -471,6 +519,7 @@
- else
- with_hashed_db=no
- fi
-+AC_SUBST(NCURSES_USE_DATABASE)
-
- AC_MSG_CHECKING(for list of fallback descriptions)
- AC_ARG_WITH(fallbacks,
-@@ -494,6 +543,26 @@
- WHICH_XTERM=$with_xterm_new
- AC_SUBST(WHICH_XTERM)
-
-+AC_MSG_CHECKING(if xterm backspace sends BS or DEL)
-+AC_ARG_WITH(xterm-kbs,
-+ [ --with-xterm-kbs=XXX specify if xterm backspace sends BS or DEL],
-+ [with_xterm_kbs=$withval],
-+ [with_xterm_kbs=BS])
-+case x$with_xterm_kbs in
-+xyes|xno|xBS|xbs|x8)
-+ with_xterm_kbs=BS
-+ ;;
-+xDEL|xdel|x127)
-+ with_xterm_kbs=DEL
-+ ;;
-+*)
-+ with_xterm_kbs=$withval
-+ ;;
-+esac
-+AC_MSG_RESULT($with_xterm_kbs)
-+XTERM_KBS=$with_xterm_kbs
-+AC_SUBST(XTERM_KBS)
-+
- MAKE_TERMINFO=
- if test "$use_database" = no ; then
- TERMINFO="${datadir}/terminfo"
-@@ -507,7 +576,7 @@
- DATADIR/terminfo,
- ${datadir}/terminfo)
- AC_MSG_RESULT($TERMINFO_DIRS)
--test -n "$TERMINFO_DIRS" && AC_DEFINE_UNQUOTED(TERMINFO_DIRS,"$TERMINFO_DIRS")
-+test -n "$TERMINFO_DIRS" && AC_DEFINE_UNQUOTED(TERMINFO_DIRS,"$TERMINFO_DIRS",[Define as needed to predefine the TERMINFO_DIR searchlist])
-
- AC_MSG_CHECKING(for default terminfo directory)
- CF_WITH_PATH(default-terminfo-dir,
-@@ -516,7 +585,7 @@
- DATADIR/terminfo,
- ${datadir}/terminfo)
- AC_MSG_RESULT($TERMINFO)
--AC_DEFINE_UNQUOTED(TERMINFO,"$TERMINFO")
-+AC_DEFINE_UNQUOTED(TERMINFO,"$TERMINFO",[Define to set the default terminal database path])
-
- fi
-
-@@ -543,7 +612,7 @@
- [with_big_core=no],
- [with_big_core=no])])
- AC_MSG_RESULT($with_big_core)
--test "$with_big_core" = "yes" && AC_DEFINE(HAVE_BIG_CORE)
-+test "x$with_big_core" = "xyes" && AC_DEFINE(HAVE_BIG_CORE,1,[Define to 1 if machine has ample memory for tic])
-
- ### 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
-@@ -556,7 +625,7 @@
- AC_MSG_RESULT($with_big_strings)
-
- USE_BIG_STRINGS=0
--test "$with_big_strings" = "yes" && USE_BIG_STRINGS=1
-+test "x$with_big_strings" = "xyes" && USE_BIG_STRINGS=1
- AC_SUBST(USE_BIG_STRINGS)
-
- ### use option --enable-termcap to compile in the termcap fallback support
-@@ -567,46 +636,48 @@
- [with_termcap=no])
- AC_MSG_RESULT($with_termcap)
-
--if test "$with_termcap" != "yes" ; then
-+NCURSES_USE_TERMCAP=0
-+if test "x$with_termcap" != "xyes" ; then
- if test "$use_database" = no ; then
- if test -z "$with_fallback" ; then
- AC_ERROR(You have disabled the database w/o specifying fallbacks)
- fi
- fi
-- AC_DEFINE(PURE_TERMINFO)
-+ AC_DEFINE(PURE_TERMINFO,1,[Define to 1 if we should support only terminfo])
- else
-
--if test "$with_ticlib" != no ; then
-- AC_ERROR(Options --with-ticlib and --enable-termcap cannot be combined)
--fi
-+ if test "$with_ticlib" != no ; then
-+ AC_ERROR(Options --with-ticlib and --enable-termcap cannot be combined)
-+ fi
-
--AC_DEFINE(USE_TERMCAP)
--AC_MSG_CHECKING(for list of termcap files)
--CF_WITH_PATHLIST(termpath,
-- [ --with-termpath=XXX specify list of termcap files],
-- TERMPATH,
-- /etc/termcap:/usr/share/misc/termcap)
--AC_MSG_RESULT($TERMPATH)
--test -n "$TERMPATH" && AC_DEFINE_UNQUOTED(TERMPATH,"$TERMPATH")
--
--### use option --enable-getcap to use a hacked getcap for reading termcaps
--AC_MSG_CHECKING(if fast termcap-loader is needed)
--AC_ARG_ENABLE(getcap,
-- [ --enable-getcap fast termcap load, no xrefs to terminfo],
-- [with_getcap=$enableval],
-- [with_getcap=no])
--AC_MSG_RESULT($with_getcap)
--test "$with_getcap" = "yes" && AC_DEFINE(USE_GETCAP)
--
--AC_MSG_CHECKING(if translated termcaps will be cached in ~/.terminfo)
--AC_ARG_ENABLE(getcap-cache,
-- [ --enable-getcap-cache cache translated termcaps in ~/.terminfo],
-- [with_getcap_cache=$enableval],
-- [with_getcap_cache=no])
--AC_MSG_RESULT($with_getcap_cache)
--test "$with_getcap_cache" = "yes" && AC_DEFINE(USE_GETCAP_CACHE)
-+ NCURSES_USE_TERMCAP=1
-+ AC_MSG_CHECKING(for list of termcap files)
-+ CF_WITH_PATHLIST(termpath,
-+ [ --with-termpath=XXX specify list of termcap files],
-+ TERMPATH,
-+ /etc/termcap:/usr/share/misc/termcap)
-+ AC_MSG_RESULT($TERMPATH)
-+ test -n "$TERMPATH" && AC_DEFINE_UNQUOTED(TERMPATH,"$TERMPATH",[Define to set the termcap searchlist])
-+
-+ ### use option --enable-getcap to use a hacked getcap for reading termcaps
-+ AC_MSG_CHECKING(if fast termcap-loader is needed)
-+ AC_ARG_ENABLE(getcap,
-+ [ --enable-getcap fast termcap load, no xrefs to terminfo],
-+ [with_getcap=$enableval],
-+ [with_getcap=no])
-+ AC_MSG_RESULT($with_getcap)
-+ test "x$with_getcap" = "xyes" && AC_DEFINE(USE_GETCAP,1,[Define to 1 to use fast termcap-loader])
-+
-+ AC_MSG_CHECKING(if translated termcaps will be cached in ~/.terminfo)
-+ AC_ARG_ENABLE(getcap-cache,
-+ [ --enable-getcap-cache cache translated termcaps in ~/.terminfo],
-+ [with_getcap_cache=$enableval],
-+ [with_getcap_cache=no])
-+ AC_MSG_RESULT($with_getcap_cache)
-+ test "x$with_getcap_cache" = "xyes" && AC_DEFINE(USE_GETCAP_CACHE,1,[Define to 1 if translated termcap should be stored in $HOME/.terminfo])
-
- fi
-+AC_SUBST(NCURSES_USE_TERMCAP)
-
- ### Use option --disable-home-terminfo to completely remove ~/.terminfo
- AC_MSG_CHECKING(if ~/.terminfo is wanted)
-@@ -615,7 +686,7 @@
- [with_home_terminfo=$enableval],
- [with_home_terminfo=yes])
- AC_MSG_RESULT($with_home_terminfo)
--test "$with_home_terminfo" = "yes" && AC_DEFINE(USE_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_ARG_ENABLE(root-environ,
-@@ -623,7 +694,7 @@
- [with_root_environ=$enableval],
- [with_root_environ=yes])
- AC_MSG_RESULT($with_root_environ)
--test "$with_root_environ" = yes && AC_DEFINE(USE_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])
-
- ### Use option --enable-symlinks to make tic use symlinks, not hard links
- ### to reduce storage requirements for the terminfo database.
-@@ -634,7 +705,7 @@
-
- # 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 "$ac_cv_func_symlink" = yes ; then
-+if test "x$ac_cv_func_symlink" = xyes ; then
- AC_MSG_CHECKING(if tic should use symbolic links)
- AC_ARG_ENABLE(symlinks,
- [ --enable-symlinks make tic use symbolic links not hard links],
-@@ -647,7 +718,7 @@
- # no reason to make this choice optional - use the hard links.
- if test "$with_symlinks" = no ; then
- AC_MSG_CHECKING(if tic should use hard links)
-- if test "$ac_cv_func_link" = yes ; then
-+ if test "x$ac_cv_func_link" = xyes ; then
- with_links=yes
- else
- with_links=no
-@@ -655,8 +726,8 @@
- AC_MSG_RESULT($with_links)
- fi
-
--test "$with_links" = yes && AC_DEFINE(USE_LINKS)
--test "$with_symlinks" = yes && AC_DEFINE(USE_SYMLINKS)
-+test "x$with_links" = xyes && AC_DEFINE(USE_LINKS,1,[Define to 1 if hardlinks should be used in terminfo database])
-+test "x$with_symlinks" = xyes && AC_DEFINE(USE_SYMLINKS,1,[Define to 1 if symbolic links should be used in terminfo database])
-
- ### use option --enable-broken-linker to force on use of broken-linker support
- AC_MSG_CHECKING(if you want broken-linker support code)
-@@ -667,13 +738,13 @@
- AC_MSG_RESULT($with_broken_linker)
-
- BROKEN_LINKER=0
--if test "$with_broken_linker" = yes ; then
-- AC_DEFINE(BROKEN_LINKER)
-+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
- elif test "$DFT_LWR_MODEL" = shared ; then
- case $cf_cv_system_name in #(vi
- cygwin*)
-- AC_DEFINE(BROKEN_LINKER)
-+ AC_DEFINE(BROKEN_LINKER,1,[Define to 1 to work around linkers which cannot link data-only modules])
- BROKEN_LINKER=1
- CF_VERBOSE(cygwin linker is broken anyway)
- ;;
-@@ -688,7 +759,7 @@
- [with_bsdpad=$enableval],
- [with_bsdpad=no])
- AC_MSG_RESULT($with_bsdpad)
--test "$with_bsdpad" = yes && AC_DEFINE(BSD_TPUTS)
-+test "x$with_bsdpad" = xyes && AC_DEFINE(BSD_TPUTS,1,[Define to 1 to recognize BSD-style prefix padding])
-
- ### use option --enable-widec to turn on use of wide-character support
- NCURSES_CH_T=chtype
-@@ -718,22 +789,19 @@
- [with_widec=$enableval],
- [with_widec=no])
- AC_MSG_RESULT($with_widec)
--if test "$with_widec" = yes ; then
-- LIB_SUFFIX="w${LIB_SUFFIX}"
-- AC_DEFINE(USE_WIDEC_SUPPORT)
-+if test "x$with_widec" = xyes ; then
-+ if test "x$disable_lib_suffixes" = xno ; then
-+ LIB_SUFFIX="w${LIB_SUFFIX}"
-+ fi
-+ AC_DEFINE(USE_WIDEC_SUPPORT,1,[Define to 1 to compile with wide-char/UTF-8 code])
-+ AC_DEFINE(NCURSES_WIDECHAR,1,[Define to 1 to compile with wide-char/UTF-8 code])
-
-- case "$CFLAGS $CPPFLAGS" in #(vi
-- *-D_XOPEN_SOURCE=500) #(vi
-- ;;
-- *)
-- CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED)
-- ;;
-- esac
-+ CF_CHECK_WCHAR_H
-
- # with_overwrite=no
- NCURSES_CH_T=cchar_t
- AC_CHECK_FUNCS(putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc wcsrtombs mbsrtowcs wcstombs mbstowcs)
-- if test "$ac_cv_func_putwc" != yes ; then
-+ if test "x$ac_cv_func_putwc" != xyes ; then
- CF_UTF8_LIB
- if test "$cf_cv_utf8_lib" != no ; then
- NCURSES_LIBUTF8=1
-@@ -744,7 +812,7 @@
- CF_WCHAR_TYPE(wint_t, NCURSES_WINT_T, NCURSES_OK_WINT_T)
-
- if test "$NCURSES_MBSTATE_T" != 0; then
-- AC_DEFINE(NEED_MBSTATE_T_DEF)
-+ AC_DEFINE(NEED_MBSTATE_T_DEF,1,[Define to 1 if we must declare mbstate_t])
- fi
- fi
- AC_SUBST(NCURSES_CH_T)
-@@ -775,7 +843,7 @@
- [with_lp64=$default_with_lp64])
- AC_MSG_RESULT($with_lp64)
-
--if test "$with_lp64" = yes ; then
-+if test "x$with_lp64" = xyes ; then
- cf_cv_enable_lp64=1
- else
- cf_cv_enable_lp64=0
-@@ -792,7 +860,7 @@
- [with_tparm_varargs=yes])
- AC_MSG_RESULT($with_tparm_varargs)
- NCURSES_TPARM_VARARGS=0
--test "$with_tparm_varargs" = yes && NCURSES_TPARM_VARARGS=1
-+test "x$with_tparm_varargs" = xyes && NCURSES_TPARM_VARARGS=1
- AC_SUBST(NCURSES_TPARM_VARARGS)
-
- ### use option --disable-tic-depends to make libtic not explicitly depend on ncurses/ncursesw
-@@ -859,6 +927,15 @@
- AC_MSG_RESULT($NCURSES_CCHARW_MAX)
- AC_SUBST(NCURSES_CCHARW_MAX)
-
-+### use option --with-tparm-arg to override tparm's argument type
-+AC_MSG_CHECKING(for type of tparm args)
-+AC_ARG_WITH(tparm-arg,
-+ [ --with-tparm-arg=TYPE override parameter type of tparm],
-+ [NCURSES_TPARM_ARG="$withval"],
-+ [NCURSES_TPARM_ARG=long])
-+AC_MSG_RESULT($NCURSES_TPARM_ARG)
-+AC_SUBST(NCURSES_TPARM_ARG)
-+
- ### Enable compiling-in rcs id's
- AC_MSG_CHECKING(if RCS identifiers should be compiled-in)
- AC_ARG_WITH(rcs-ids,
-@@ -866,7 +943,7 @@
- [with_rcs_ids=$withval],
- [with_rcs_ids=no])
- AC_MSG_RESULT($with_rcs_ids)
--test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS)
-+test "x$with_rcs_ids" = xyes && AC_DEFINE(USE_RCS_IDS,1,[Define to 1 to compile-in RCS identifiers])
-
- ###############################################################################
- CF_MAN_PAGES([ captoinfo clear infocmp infotocap tabs tic toe tput tset ])
-@@ -881,16 +958,19 @@
- [with_ext_funcs=$enableval],
- [with_ext_funcs=yes])
- AC_MSG_RESULT($with_ext_funcs)
--if test "$with_ext_funcs" = yes ; then
-+if test "x$with_ext_funcs" = xyes ; then
- NCURSES_EXT_FUNCS=1
-- AC_DEFINE(HAVE_CURSES_VERSION)
-- AC_DEFINE(HAVE_HAS_KEY)
-- AC_DEFINE(HAVE_RESIZETERM)
-- AC_DEFINE(HAVE_RESIZE_TERM)
-- AC_DEFINE(HAVE_TERM_ENTRY_H)
-- AC_DEFINE(HAVE_USE_DEFAULT_COLORS)
-- AC_DEFINE(HAVE_WRESIZE)
-- AC_DEFINE(NCURSES_EXT_FUNCS)
-+ AC_DEFINE(HAVE_ASSUME_DEFAULT_COLORS,1,[Define to 1 to enable assume_default_colors() function])
-+ AC_DEFINE(HAVE_CURSES_VERSION,1,[Define to 1 to enable curses_version() function])
-+ AC_DEFINE(HAVE_HAS_KEY,1,[Define to 1 to enable has_key() function])
-+ AC_DEFINE(HAVE_RESIZETERM,1,[Define to 1 to enable resizeterm() function])
-+ AC_DEFINE(HAVE_RESIZE_TERM,1,[Define to 1 to enable resize_term() function])
-+ AC_DEFINE(HAVE_TERM_ENTRY_H,1,[Define to 1 to enable term_entry() function])
-+ AC_DEFINE(HAVE_USE_DEFAULT_COLORS,1,[Define to 1 to enable use_default_colors() function])
-+ AC_DEFINE(HAVE_USE_SCREEN,1,[Define to 1 to enable use_screen() function])
-+ AC_DEFINE(HAVE_USE_WINDOW,1,[Define to 1 to enable use_window() function])
-+ AC_DEFINE(HAVE_WRESIZE,1,[Define to 1 to enable wresize() function])
-+ AC_DEFINE(NCURSES_EXT_FUNCS,1,[Define to 1 to enable ncurses extended functions])
- GENERATED_EXT_FUNCS=generated
- else
- NCURSES_EXT_FUNCS=0
-@@ -905,9 +985,9 @@
- [with_sp_funcs=$enableval],
- [with_sp_funcs=no])
- AC_MSG_RESULT($with_sp_funcs)
--if test "$with_sp_funcs" = yes ; then
-+if test "x$with_sp_funcs" = xyes ; then
- NCURSES_SP_FUNCS=1
-- AC_DEFINE(NCURSES_SP_FUNCS)
-+ AC_DEFINE(NCURSES_SP_FUNCS,1,[Define to 1 to enable experimental SCREEN-extensions])
- GENERATED_SP_FUNCS=generated
- else
- NCURSES_SP_FUNCS=0
-@@ -922,9 +1002,9 @@
- [with_term_driver=$enableval],
- [with_term_driver=no])
- AC_MSG_RESULT($with_term_driver)
--if test "$with_term_driver" = yes ; then
-- AC_DEFINE(USE_TERM_DRIVER)
-- if test "$with_sp_funcs" != yes ; then
-+if test "x$with_term_driver" = xyes ; then
-+ AC_DEFINE(USE_TERM_DRIVER,1,[Define to 1 to enable experimental terminal-driver])
-+ if test "x$with_sp_funcs" != xyes ; then
- AC_MSG_ERROR(The term-driver option relies upon sp-funcs)
- fi
- fi
-@@ -937,7 +1017,7 @@
- [with_ext_const=no])
- AC_MSG_RESULT($with_ext_const)
- NCURSES_CONST='/*nothing*/'
--if test "$with_ext_const" = yes ; then
-+if test "x$with_ext_const" = xyes ; then
- NCURSES_CONST=const
- fi
- AC_SUBST(NCURSES_CONST)
-@@ -950,15 +1030,15 @@
- [with_ext_colors=no])
- AC_MSG_RESULT($with_ext_colors)
- NCURSES_EXT_COLORS=0
--if test "$with_ext_colors" = yes ; then
-- if test "$with_widec" != yes ; then
-+if test "x$with_ext_colors" = xyes ; then
-+ if test "x$with_widec" != xyes ; then
- AC_MSG_ERROR(This option applies only to wide-character library)
- else
- # cannot be ABI 5 since it changes sizeof(cchar_t)
- CF_NCURSES_ABI_6
- fi
- NCURSES_EXT_COLORS=1
-- AC_DEFINE(NCURSES_EXT_COLORS)
-+ AC_DEFINE(NCURSES_EXT_COLORS,1,[Define to 1 to compile for 256-color support])
- fi
- AC_SUBST(NCURSES_EXT_COLORS)
-
-@@ -970,7 +1050,7 @@
- [with_ext_mouse=no])
- AC_MSG_RESULT($with_ext_mouse)
- NCURSES_MOUSE_VERSION=1
--if test "$with_ext_mouse" = yes ; then
-+if test "x$with_ext_mouse" = xyes ; then
- NCURSES_MOUSE_VERSION=2
- CF_NCURSES_ABI_6
- fi
-@@ -982,7 +1062,7 @@
- [with_no_padding=$enableval],
- [with_no_padding=$with_ext_funcs])
- AC_MSG_RESULT($with_no_padding)
--test "$with_no_padding" = yes && AC_DEFINE(NCURSES_NO_PADDING)
-+test "x$with_no_padding" = xyes && AC_DEFINE(NCURSES_NO_PADDING,1,[Define to 1 to compile with $NCURSES_NO_PADDING code])
-
- AC_CHECK_SIZEOF([signed char], 0)
- if test "$ac_cv_sizeof_signed_char" = 1 ; then
-@@ -996,7 +1076,7 @@
- [with_signed_char=$enableval],
- [with_signed_char=no])
- AC_MSG_RESULT($with_signed_char)
--test "$with_signed_char" != yes && NCURSES_SBOOL="char"
-+test "x$with_signed_char" != xyes && NCURSES_SBOOL="char"
- AC_SUBST(NCURSES_SBOOL)
-
- ### use option --enable-sigwinch to turn on use of SIGWINCH logic
-@@ -1006,7 +1086,7 @@
- [with_sigwinch=$enableval],
- [with_sigwinch=$with_ext_funcs])
- AC_MSG_RESULT($with_sigwinch)
--test "$with_sigwinch" = yes && AC_DEFINE(USE_SIGWINCH)
-+test "x$with_sigwinch" = xyes && AC_DEFINE(USE_SIGWINCH,1,[Define to 1 to compile with SIGWINCH handler])
-
- ### use option --enable-tcap-names to allow user to define new capabilities
- AC_MSG_CHECKING(if you want user-definable terminal capabilities like termcap)
-@@ -1016,7 +1096,7 @@
- [with_tcap_names=$with_ext_funcs])
- AC_MSG_RESULT($with_tcap_names)
- NCURSES_XNAMES=0
--test "$with_tcap_names" = yes && NCURSES_XNAMES=1
-+test "x$with_tcap_names" = xyes && NCURSES_XNAMES=1
- AC_SUBST(NCURSES_XNAMES)
-
- ###############################################################################
-@@ -1035,7 +1115,7 @@
- [ --enable-hard-tabs compile with hard-tabs code],,
- [enable_hard_tabs=$with_develop])
- AC_MSG_RESULT($enable_hard_tabs)
--test "$enable_hard_tabs" = yes && AC_DEFINE(USE_HARD_TABS)
-+test "x$enable_hard_tabs" = xyes && AC_DEFINE(USE_HARD_TABS,1,[Define to 1 to compile with hard-tabs code])
-
- ### use option --enable-xmc-glitch to turn on use of magic-cookie optimize
- AC_MSG_CHECKING(if you want limited support for xmc)
-@@ -1043,7 +1123,7 @@
- [ --enable-xmc-glitch compile with support for xmc (magic-cookie)],,
- [enable_xmc_glitch=$with_develop])
- AC_MSG_RESULT($enable_xmc_glitch)
--test "$enable_xmc_glitch" = yes && AC_DEFINE(USE_XMC_SUPPORT)
-+test "x$enable_xmc_glitch" = xyes && AC_DEFINE(USE_XMC_SUPPORT,1,[Define to 1 to compile with support for xmc (magic-cookie)])
-
- ###############################################################################
- # These are just experimental, probably should not be in a package:
-@@ -1055,7 +1135,7 @@
- [with_assumed_color=$enableval],
- [with_assumed_color=yes])
- AC_MSG_RESULT($with_assumed_color)
--test "$with_assumed_color" = yes && AC_DEFINE(USE_ASSUMED_COLOR)
-+test "x$with_assumed_color" = xyes && AC_DEFINE(USE_ASSUMED_COLOR,1,[Define to 1 to assume things about default-colors])
-
- ### use option --enable-hashmap to turn on use of hashmap scrolling logic
- AC_MSG_CHECKING(if you want hashmap scrolling-optimization code)
-@@ -1064,7 +1144,7 @@
- [with_hashmap=$enableval],
- [with_hashmap=yes])
- AC_MSG_RESULT($with_hashmap)
--test "$with_hashmap" = yes && AC_DEFINE(USE_HASHMAP)
-+test "x$with_hashmap" = xyes && AC_DEFINE(USE_HASHMAP,1,[Define to 1 to compile with hashmap scrolling-optimization])
-
- ### use option --enable-colorfgbg to turn on use of $COLORFGBG environment
- AC_MSG_CHECKING(if you want colorfgbg code)
-@@ -1073,7 +1153,7 @@
- [with_colorfgbg=$enableval],
- [with_colorfgbg=no])
- AC_MSG_RESULT($with_colorfgbg)
--test "$with_colorfgbg" = yes && AC_DEFINE(USE_COLORFGBG)
-+test "x$with_colorfgbg" = xyes && AC_DEFINE(USE_COLORFGBG,1,[Define to 1 to compile-in experimental $COLORFGBG code])
-
- ### use option --enable-interop to turn on use of bindings used for interop
- AC_MSG_CHECKING(if you want interop bindings)
-@@ -1084,7 +1164,7 @@
- AC_MSG_RESULT($with_exp_interop)
-
- NCURSES_INTEROP_FUNCS=0
--test "$with_exp_interop" = yes && NCURSES_INTEROP_FUNCS=1
-+test "x$with_exp_interop" = xyes && NCURSES_INTEROP_FUNCS=1
- AC_SUBST(NCURSES_INTEROP_FUNCS)
-
- # This is still experimental (20080329), but should ultimately be moved to
-@@ -1099,8 +1179,8 @@
- [use_pthreads_eintr=$enableval],
- [use_pthreads_eintr=no])
- AC_MSG_RESULT($use_pthreads_eintr)
-- if test $use_pthreads_eintr = yes ; then
-- AC_DEFINE(USE_PTHREADS_EINTR)
-+ if test "x$use_pthreads_eintr" = xyes ; then
-+ AC_DEFINE(USE_PTHREADS_EINTR,1,[Define to 1 to enable EINTR in wgetch with pthreads])
- fi])
-
- AC_MSG_CHECKING(if you want to use weak-symbols for pthreads)
-@@ -1109,22 +1189,22 @@
- [use_weak_symbols=$enableval],
- [use_weak_symbols=no])
- AC_MSG_RESULT($use_weak_symbols)
-- if test "$use_weak_symbols" = yes ; then
-+ if test "x$use_weak_symbols" = xyes ; then
- CF_WEAK_SYMBOLS
- else
- cf_cv_weak_symbols=no
- fi
-
-- if test $cf_cv_weak_symbols = yes ; then
-- AC_DEFINE(USE_WEAK_SYMBOLS)
-+ if test "x$cf_cv_weak_symbols" = xyes ; then
-+ AC_DEFINE(USE_WEAK_SYMBOLS,1,[Define to 1 to enable weak-symbols for pthreads])
- fi
- fi
-
- PTHREAD=
--if test "$with_pthread" = "yes" ; then
-- AC_DEFINE(USE_PTHREADS)
-+if test "x$with_pthread" = "xyes" ; then
-+ AC_DEFINE(USE_PTHREADS,1,[Define to 1 to use pthreads feature])
- enable_reentrant=yes
-- if test $cf_cv_weak_symbols = yes ; then
-+ if test "x$cf_cv_weak_symbols" = xyes ; then
- PTHREAD=-lpthread
- fi
- fi
-@@ -1140,19 +1220,35 @@
- [with_reentrant=$enableval],
- [with_reentrant=no])
- AC_MSG_RESULT($with_reentrant)
--if test "$with_reentrant" = yes ; then
-+if test "x$with_reentrant" = xyes ; then
- cf_cv_enable_reentrant=1
- cf_cv_enable_opaque="NCURSES_INTERNALS"
- NCURSES_OPAQUE=1
- NCURSES_SIZE_T=int
-- if test $cf_cv_weak_symbols = yes ; then
-+ if test "x$cf_cv_weak_symbols" = xyes ; then
- CF_REMOVE_LIB(LIBS,$LIBS,pthread)
- CF_ADD_LIB(pthread,TEST_LIBS)
- CF_ADD_LIB(pthread,TEST_LIBS2)
- else
-- LIB_SUFFIX="t${LIB_SUFFIX}"
-+ # when not using weak symbols but with_reentrant,
-+ # add 't' to the library suffix on all platforms
-+ # except cygwin, where we only do that if ALSO
-+ # compiling with full thread support.
-+ case "$host" in
-+ *cygwin* | *msys*) #(vi
-+ if test "$with_pthread" = "yes" ; then
-+ if test "x$disable_lib_suffixes" = "xno" ; then
-+ LIB_SUFFIX="t${LIB_SUFFIX}"
-+ fi
-+ fi ;;
-+ *)
-+ if test "x$disable_lib_suffixes" = "xno" ; then
-+ LIB_SUFFIX="t${LIB_SUFFIX}"
-+ fi
-+ ;;
-+ esac
- fi
-- AC_DEFINE(USE_REENTRANT)
-+ AC_DEFINE(USE_REENTRANT,1,[Define to 1 to use experimental reentrant feature])
- CF_NCURSES_ABI_6
- else
- cf_cv_enable_reentrant=0
-@@ -1177,7 +1273,7 @@
- NCURSES_WRAP_PREFIX=_nc_
- fi
- AC_SUBST(NCURSES_WRAP_PREFIX)
--AC_DEFINE_UNQUOTED(NCURSES_WRAP_PREFIX,"$NCURSES_WRAP_PREFIX")
-+AC_DEFINE_UNQUOTED(NCURSES_WRAP_PREFIX,"$NCURSES_WRAP_PREFIX",[Define to override _nc_ prefix])
-
- AC_MSG_CHECKING(if you want experimental safe-sprintf code)
- AC_ARG_ENABLE(safe-sprintf,
-@@ -1185,7 +1281,7 @@
- [with_safe_sprintf=$enableval],
- [with_safe_sprintf=no])
- AC_MSG_RESULT($with_safe_sprintf)
--test "$with_safe_sprintf" = yes && AC_DEFINE(USE_SAFE_SPRINTF)
-+test "x$with_safe_sprintf" = xyes && AC_DEFINE(USE_SAFE_SPRINTF,1,[Define to 1 to compile with experimental safe-sprintf code])
-
- ### use option --disable-scroll-hints to turn off use of scroll-hints scrolling logic
- # when hashmap is used scroll hints are useless
-@@ -1196,7 +1292,7 @@
- [with_scroll_hints=$enableval],
- [with_scroll_hints=yes])
- AC_MSG_RESULT($with_scroll_hints)
--test "$with_scroll_hints" = yes && AC_DEFINE(USE_SCROLL_HINTS)
-+test "x$with_scroll_hints" = xyes && AC_DEFINE(USE_SCROLL_HINTS,1,[Define to 1 to compile without scroll-hints code])
- fi
-
- AC_MSG_CHECKING(if you want experimental wgetch-events code)
-@@ -1205,25 +1301,20 @@
- [with_wgetch_events=$enableval],
- [with_wgetch_events=no])
- AC_MSG_RESULT($with_wgetch_events)
--test "$with_wgetch_events" = yes && AC_DEFINE(NCURSES_WGETCH_EVENTS)
-+test "x$with_wgetch_events" = xyes && AC_DEFINE(NCURSES_WGETCH_EVENTS,1,[Define to 1 to compile with experimental wgetch-events code])
-
- ###############################################################################
- CF_HELP_MESSAGE(Testing/development Options:)
-
- ### use option --disable-echo to suppress full display compiling commands
--AC_MSG_CHECKING(if you want to display full commands during build)
--AC_ARG_ENABLE(echo,
-- [ --enable-echo build: display "compiling" commands (default)],
-- [with_echo=$enableval],
-- [with_echo=yes])
--if test "$with_echo" = yes; then
-+CF_DISABLE_ECHO
-+if test "x$enable_echo" = xyes; then
- ECHO_LINK=
- else
- ECHO_LINK='@ echo linking $@ ... ;'
- test -n "$LIBTOOL" && LIBTOOL="$LIBTOOL --silent"
- test -n "$LIBTOOL_CXX" && LIBTOOL_CXX="$LIBTOOL_CXX --silent"
- fi
--AC_MSG_RESULT($with_echo)
- AC_SUBST(ECHO_LINK)
-
- ### use option --enable-warnings to turn on all gcc warnings
-@@ -1235,12 +1326,13 @@
-
- if test "x$with_warnings" = "xyes"; then
- CF_ADD_ADAFLAGS(-gnatg)
-- CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum)
-- if test "$cf_with_cxx" = yes ; then
-+ 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
- AC_MSG_CHECKING(if you want to enable runtime assertions)
-@@ -1253,7 +1345,6 @@
- then
- if test "$with_assertions" = no
- then
-- AC_DEFINE(NDEBUG)
- CPPFLAGS="$CPPFLAGS -DNDEBUG"
- else
- CF_ADD_ADAFLAGS(-gnata)
-@@ -1262,17 +1353,17 @@
-
- ### use option --disable-leaks to suppress "permanent" leaks, for testing
- CF_DISABLE_LEAKS
--AC_DEFINE(HAVE_NC_ALLOC_H)
-+AC_DEFINE(HAVE_NC_ALLOC_H,1,[Define to 1 if we have nc_alloc.h header])
-
- ### use option --enable-expanded to generate certain macros as functions
- AC_ARG_ENABLE(expanded,
- [ --enable-expanded test: generate functions for certain macros],
-- [test "$enableval" = yes && AC_DEFINE(NCURSES_EXPANDED)])
-+ [test "x$enableval" = xyes && AC_DEFINE(NCURSES_EXPANDED,1,[Define to 1 to generate functions for certain macros])])
-
- ### use option --disable-macros to suppress macros in favor of functions
- AC_ARG_ENABLE(macros,
- [ --disable-macros test: use functions rather than macros],
-- [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS)])
-+ [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS,1,[Define to 1 to use functions rather than macros])])
-
- # Normally we only add trace() to the debug-library. Allow this to be
- # extended to all models of the ncurses library:
-@@ -1290,7 +1381,7 @@
- [cf_with_trace=$cf_all_traces])
- AC_MSG_RESULT($cf_with_trace)
-
--if test "$cf_with_trace" = yes ; then
-+if test "x$cf_with_trace" = xyes ; then
- LIB_TRACING=all
- ADA_TRACE=TRUE
- CF_ADD_CFLAGS(-DTRACE)
-@@ -1301,21 +1392,25 @@
-
- AC_SUBST(ADA_TRACE)
-
-+CF_DISABLE_GNAT_PROJECTS
-+
- ### Checks for libraries.
- case $cf_cv_system_name in #(vi
--*mingw32*) #(vi
-+*mingw32*|*mingw64*) #(vi
-+ CPPFLAGS="$CPPFLAGS -DWINVER=0x0501"
-+ LIBS=" -lpsapi $LIBS"
- ;;
- *)
- AC_CHECK_FUNC(gettimeofday,
-- AC_DEFINE(HAVE_GETTIMEOFDAY),[
-+ AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define to 1 if we have gettimeofday function]),[
-
- AC_CHECK_LIB(bsd, gettimeofday,
-- AC_DEFINE(HAVE_GETTIMEOFDAY)
-+ AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define to 1 if we have gettimeofday function])
- CF_ADD_LIB(bsd))])dnl CLIX: bzero, select, gettimeofday
- ;;
- esac
-
--CF_MATH_LIB(MATH_LIB,sin(x))
-+CF_MATH_LIB(MATH_LIB,pow(sin(x),x))
- AC_SUBST(MATH_LIB)
-
- ### Checks for header files.
-@@ -1344,9 +1439,11 @@
- wctype.h \
- )
-
-+CF_GETOPT_HEADER
-+
- # check for ISC (this may also define _POSIX_SOURCE)
- # Note: even non-Posix ISC needs <sys/bsdtypes.h> to declare fd_set
--if test "$ISC" = yes ; then
-+if test "x$ISC" = xyes ; then
- AC_CHECK_LIB(cposix,main)
- AC_CHECK_LIB(inet,bzero,CF_ADD_LIB(inet))dnl also 'select()'
- fi
-@@ -1390,13 +1487,16 @@
- getcwd \
- getegid \
- geteuid \
-+getopt \
- getttynam \
- issetugid \
- poll \
-+putenv \
- remove \
- select \
- setbuf \
- setbuffer \
-+setenv \
- setvbuf \
- sigaction \
- sigvec \
-@@ -1406,7 +1506,13 @@
- times \
- vsnprintf \
- )
--if test "$with_getcap" = "yes" ; then
-+
-+if test "x$ac_cv_func_getopt" = xno &&
-+ test "x$cf_with_progs$cf_with_tests" != xnono; then
-+ AC_MSG_ERROR(getopt is required for building programs)
-+fi
-+
-+if test "x$with_getcap" = "xyes" ; then
- CF_CGETENT
- fi
-
-@@ -1421,12 +1527,12 @@
- CF_SUBST_IF(["$cf_cv_func_vsscanf" = vsscanf], HAVE_VSSCANF, 1, 0)
-
- dnl FIXME (may need this) AC_SYS_RESTARTABLE_SYSCALLS
--if test "$cross_compiling" = yes ; then
-+if test "x$cross_compiling" = xyes ; then
- AC_MSG_WARN(cross compiling: assume setvbuf params not reversed)
- else
- AC_FUNC_SETVBUF_REVERSED
- fi
--AC_TYPE_SIGNAL
-+AC_CHECK_TYPE(intptr_t, long)
- CF_TYPE_SIGACTION
- CF_SIZECHANGE
- CF_FUNC_MEMMOVE
-@@ -1437,9 +1543,9 @@
- # special check for test/ditto.c
- CF_FUNC_OPENPTY
- if test "$cf_cv_func_openpty" != no ; then
-- AC_DEFINE_UNQUOTED(USE_OPENPTY_HEADER,<$cf_cv_func_openpty>)
-- AC_DEFINE(USE_XTERM_PTY)
-- if test "$cf_cv_lib_util" = yes ; then
-+ AC_DEFINE_UNQUOTED(USE_OPENPTY_HEADER,<$cf_cv_func_openpty>,[Define to actual header for openpty function])
-+ AC_DEFINE(USE_XTERM_PTY,1,[Define to 1 if we should assume xterm pseudoterminal interface])
-+ if test "x$cf_cv_lib_util" = xyes ; then
- CF_ADD_LIB(util,TEST_LIBS)
- fi
- fi
-@@ -1447,7 +1553,7 @@
- AC_SUBST(TEST_LIBS2)
-
- if test "$with_hashed_db" != no ; then
-- AC_DEFINE(USE_HASHED_DB)
-+ AC_DEFINE(USE_HASHED_DB,1,[Define to 1 if we should build terminfo in hashed database])
- CF_HASHED_DB($with_hashed_db)
- fi
-
-@@ -1478,50 +1584,14 @@
- ;;
- esac
-
-- AC_CHECK_HEADERS(iostream typeinfo)
--
-- if test x"$ac_cv_header_iostream" = xyes ; then
-- AC_MSG_CHECKING(if iostream uses std-namespace)
-- AC_TRY_COMPILE([
--#include <iostream>
--using std::endl;
--using std::cerr;],[
--cerr << "testing" << endl;
--],[cf_iostream_namespace=yes],[cf_iostream_namespace=no])
-- AC_MSG_RESULT($cf_iostream_namespace)
-- if test "$cf_iostream_namespace" = yes ; then
-- AC_DEFINE(IOSTREAM_NAMESPACE)
-- fi
-- fi
--
-+ AC_CHECK_HEADERS(typeinfo)
-+ CF_CXX_IOSTREAM_NAMESPACE
- CF_BOOL_DECL
- CF_BOOL_SIZE
- CF_ETIP_DEFINES
- CF_CPP_PARAM_INIT
- CF_CPP_STATIC_CAST
--
-- CXX_AR='$(AR)'
-- CXX_ARFLAGS='$(ARFLAGS)'
-- case $cf_cv_system_name in #(vi
-- irix*) #(vi
-- if test "$GXX" != yes ; then
-- CXX_AR='$(CXX)'
-- CXX_ARFLAGS='-ar -o'
-- fi
-- ;;
-- sco3.2v5*) #(vi
-- CXXLDFLAGS="-u main"
-- ;;
-- solaris2*)
-- if test "$GXX" != yes ; then
-- CXX_AR='$(CXX)'
-- CXX_ARFLAGS='-xar -o'
-- fi
-- ;;
-- esac
-- AC_SUBST(CXXLDFLAGS)
-- AC_SUBST(CXX_AR)
-- AC_SUBST(CXX_ARFLAGS)
-+ CF_CXX_AR_FLAGS
- else
- cf_cxx_library=no
- cf_cv_builtin_bool=1
-@@ -1593,24 +1663,14 @@
- dnl At the moment we support no other Ada95 compiler.
- if test "$cf_with_ada" != "no" ; then
- CF_PROG_GNAT
-- if test "$cf_cv_prog_gnat_correct" = yes; then
-+ if test "x$cf_cv_prog_gnat_correct" = xyes; then
- CF_ADD_ADAFLAGS(-gnatpn)
-+ CF_FIXUP_ADAFLAGS
-
-- # make ADAFLAGS consistent with CFLAGS
-- case "$CFLAGS" in
-- *-g*)
-- CF_ADD_ADAFLAGS(-g)
-- ;;
-- esac
-- case "$CFLAGS" in
-- *-O*)
-- CF_ADD_ADAFLAGS(-O3)
-- ;;
-- esac
-+ CF_GNATPREP_OPT_T
-
- CF_GNAT_GENERICS
- CF_GNAT_SIGINT
-- CF_GNAT_PRAGMA_UNREF
- CF_GNAT_PROJECTS
-
- CF_WITH_ADA_COMPILER
-@@ -1627,6 +1687,11 @@
- cf_with_ada=no
- fi
-
-+# do this "late" to avoid conflict with header-checks
-+if test "x$with_widec" = xyes ; then
-+ AC_CHECK_SIZEOF(wchar_t)
-+fi
-+
- ### Construct the ncurses library-subsets, if any, from this set of keywords:
- ### none, base, ext_funcs, ext_tinfo, ticlib, termlib, widechar
- ###
-@@ -1640,7 +1705,7 @@
- AC_MSG_CHECKING(for library subsets)
- LIB_SUBSETS=
-
--if test "$cf_with_progs" = yes || test "$with_ticlib" != no || test "$with_termcap" != no; then
-+if test "x$cf_with_progs" = xyes || test "$with_ticlib" != no || test "$with_termcap" != no; then
- LIB_SUBSETS="${LIB_SUBSETS}ticlib"
- if test "$with_ticlib" != no ; then
- LIB_SUBSETS="${LIB_SUBSETS} "
-@@ -1650,7 +1715,7 @@
- fi
-
- LIB_SUBSETS="${LIB_SUBSETS}termlib"
--test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo"
-+test "x$with_ext_funcs" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo"
-
- if test "$with_termlib" != no ; then
- LIB_SUBSETS="${LIB_SUBSETS} "
-@@ -1665,8 +1730,9 @@
- if test "$with_term_driver" != no ; then
- LIB_SUBSETS="${LIB_SUBSETS}+port_drivers"
- case $cf_cv_system_name in #(vi
-- *mingw32*) #(vi
-+ *mingw32*|*mingw64*) #(vi
- LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32con"
-+ CPPFLAGS="$CPPFLAGS -DUSE_WIN32CON_DRIVER"
- ;;
- *) #(vi
- LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo"
-@@ -1674,8 +1740,8 @@
- esac
- fi
-
--test "$with_widec" = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
--test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs"
-+test "x$with_widec" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
-+test "x$with_ext_funcs" = xyes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs"
-
- AC_MSG_RESULT($LIB_SUBSETS)
-
-@@ -1699,20 +1765,24 @@
- AC_SUBST(DFT_OBJ_SUBDIR)dnl the default object-directory ("obj")
- AC_MSG_RESULT($DFT_OBJ_SUBDIR)
-
--# libtool thinks it can make c++ shared libraries (perhaps only g++)
--if test "$cf_with_cxx" = yes ; then
-+if test "x$cf_with_cxx" = xyes ; then
- AC_MSG_CHECKING(c++ library-dependency suffix)
- if test "$with_libtool" != "no"; then
-+ # libtool thinks it can make c++ shared libraries (perhaps only g++)
-+ CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX
-+elif test "$with_shared_cxx" != "no"; then
-+ # also for g++ users...
- CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX
- else
-- CF_LIB_SUFFIX(normal,CXX_LIB_SUFFIX,CXX_DEP_SUFFIX)dnl we normally make a static library
-+ # we normally make a static library because C/C++ library rules differ
-+ CF_LIB_SUFFIX(normal,CXX_LIB_SUFFIX,CXX_DEP_SUFFIX)
- fi
- AC_MSG_RESULT($CXX_LIB_SUFFIX)
- AC_SUBST(CXX_LIB_SUFFIX)
- fi
-
- # do not want -ldl in build except as needed for -lncurses dependency
--if test "$with_dlsym" = yes ; then
-+if test "x$with_dlsym" = xyes ; then
- if test $DFT_LWR_MODEL = shared || \
- test $DFT_LWR_MODEL = libtool ; then
- CF_REMOVE_LIB(LIBS,$LIBS,dl)
-@@ -1723,13 +1793,13 @@
- # TICS_LIST and TINFO_LIST are needed to build libtic.so and libterm.so, but
- # do not need libdl
- TICS_LIST=
--if test "$with_dlsym" = yes ; then
-+if test "x$with_dlsym" = xyes ; then
- CF_REMOVE_LIB(TINFO_LIST,$SHLIB_LIST,dl)
- fi
-
- if test "$with_ticlib" != no ; then
-
-- if test "$with_ticlib" != yes ; then
-+ if test "x$with_ticlib" != xyes ; then
- TICS_NAME=$with_ticlib
- TICS_ARG_SUFFIX="${with_ticlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
- TICS_DEP_SUFFIX="${with_ticlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
-@@ -1739,18 +1809,21 @@
- TICS_DEP_SUFFIX="${TICS_NAME}${DFT_DEP_SUFFIX}"
- TICS_LIB_SUFFIX="${TICS_NAME}${LIB_SUFFIX}"
- fi
-- TICS_ARGS="-L${LIB_DIR} -l${TICS_LIB_SUFFIX}"
-+ TICS_LDFLAGS="-L${LIB_DIR}"
-+ TICS_LIBS="-l${TICS_LIB_SUFFIX}"
- else
-- TICS_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}"
-+ TICS_LDFLAGS="-L${LIB_DIR}"
-+ TICS_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}"
- fi
- AC_SUBST(TICS_ARG_SUFFIX)
- AC_SUBST(TICS_DEP_SUFFIX)
- AC_SUBST(TICS_LIB_SUFFIX)
--AC_SUBST(TICS_ARGS)
-+AC_SUBST(TICS_LDFLAGS)
-+AC_SUBST(TICS_LIBS)
-
- if test "$with_termlib" != no ; then
-
-- if test "$with_termlib" != yes ; then
-+ if test "x$with_termlib" != xyes ; then
- TINFO_NAME=$with_termlib
- TINFO_SUFFIX="`echo ${DFT_LIB_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
- TINFO_ARG_SUFFIX="${with_termlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`"
-@@ -1768,14 +1841,22 @@
- if test "$DFT_LWR_MODEL" = "libtool"; then
- TEST_ARGS="${TEST_DEPS}"
- TEST_ARG2="${TEST_DEP2}"
-- TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS"
-+ TINFO_LDFLAGS="-L${LIB_DIR}"
-+ TINFO_LIBS="$TEST_ARGS"
- TICS_LIST="$SHLIB_LIST $TEST_ARGS"
- SHLIB_LIST="${SHLIB_LIST} $TEST_ARGS"
- else
- TEST_ARGS="-l${TINFO_ARG_SUFFIX}"
- TEST_ARG2="-l${TINFO_ARG_SUFFIX}"
-- TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
-- TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS"
-+ if test "x$with_term_driver" != xno ; then
-+ TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}"
-+ TICS_LIBS="$TICS_LIBS -l${LIB_NAME}${DFT_ARG_SUFFIX}"
-+ TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS"
-+ else
-+ TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
-+ TINFO_LIBS="$TEST_ARGS"
-+ fi
-+ TINFO_LDFLAGS="-L${LIB_DIR}"
- SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}"
- fi
- else
-@@ -1783,19 +1864,20 @@
- TINFO_NAME=${LIB_NAME}
- TINFO_SUFFIX=${DFT_LIB_SUFFIX}
- TINFO_ARG_SUFFIX=${LIB_NAME}${DFT_ARG_SUFFIX}
-- if test "$with_tic_depends" = yes ; then
-+ if test "x$with_tic_depends" = xyes ; then
- TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}"
- else
- TICS_LIST="$SHLIB_LIST"
- fi
-
-- TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}"
-+ TINFO_LDFLAGS="-L${LIB_DIR}"
-+ TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}"
- fi
-
- if test "$DFT_LWR_MODEL" = shared ; then
- case $cf_cv_system_name in #(vi
-- cygwin*)
-- # "lib" files have ".dll.a" suffix, "cyg" files have ".dll"
-+ cygwin*|msys*)
-+ # "lib" files have ".dll.a" suffix, "cyg"or "msys-" files have ".dll"
- TINFO_SUFFIX=.dll
- ;;
- esac
-@@ -1804,9 +1886,10 @@
- AC_SUBST(TINFO_ARG_SUFFIX)
- AC_SUBST(TINFO_DEP_SUFFIX)
- AC_SUBST(TINFO_LIB_SUFFIX)
--AC_SUBST(TINFO_ARGS)
-+AC_SUBST(TINFO_LDFLAGS)
-+AC_SUBST(TINFO_LIBS)
-
--if test "$with_dlsym" = yes ; then
-+if test "x$with_dlsym" = xyes ; then
- CF_REMOVE_LIB(TICS_LIST,$TICS_LIST,dl)
- fi
-
-@@ -1815,8 +1898,8 @@
- fi
-
- # needed for Ada95
--TINFO_ARGS2=`echo "$TINFO_ARGS" | sed -e 's,-L\.\./,-L../../,'`
--AC_SUBST(TINFO_ARGS2)
-+TINFO_LDFLAGS2=`echo "$TINFO_LDFLAGS" | sed -e 's,-L\.\./,-L../../,'`
-+AC_SUBST(TINFO_LDFLAGS2)
-
- case $DFT_LWR_MODEL in
- normal|debug|profile)
-@@ -1825,10 +1908,15 @@
- esac
-
- AC_MSG_CHECKING(where we will install curses.h)
--test "$with_overwrite" = no && \
--test "x$includedir" = 'x${prefix}/include' && \
-- includedir='${prefix}/include/ncurses'${LIB_SUFFIX}
--AC_MSG_RESULT($includedir)
-+AC_SUBST(includesubdir)
-+includesubdir=
-+if test "$with_overwrite" = no && \
-+ ( test "x$includedir" = 'x${prefix}/include' || \
-+ test "x$includedir" = "x${prefix}/include" )
-+then
-+ includesubdir="/ncurses${LIB_SUFFIX}"
-+fi
-+AC_MSG_RESULT(${includedir}${includesubdir})
-
- ### Resolve a conflict between normal and wide-curses by forcing applications
- ### that will need libutf8 to add it to their configure script.
-@@ -1850,14 +1938,14 @@
- AC_SUBST(NCURSES_TREE)
-
- ### predefined stuff for the test programs
--AC_DEFINE(HAVE_SLK_COLOR)
-+AC_DEFINE(HAVE_SLK_COLOR,1,[Define to 1 if we have slk_color for test-programs])
-
- ### Construct the list of subdirectories for which we'll customize makefiles
- ### with the appropriate compile-rules.
-
- CF_SRC_MODULES($modules_to_build)
-
--if test "$cf_with_ada" != "no" && test "$cf_cv_prog_gnat_correct" != "no"; then
-+if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = "xyes"; then
- SUB_MAKEFILES="$SUB_MAKEFILES Ada95/gen/adacurses${DFT_ARG_SUFFIX}-config:Ada95/gen/adacurses-config.in"
- SUB_MAKEFILES="$SUB_MAKEFILES man/adacurses${DFT_ARG_SUFFIX}-config.1:man/MKada_config.in"
- fi
-@@ -1869,26 +1957,27 @@
- AC_SUBST(NCURSES_SHLIB2)
-
- # values to use as strings
--AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR')
-+AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR',[Define to override ':' as library path-separator])
-
--AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}")
-+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(["$cf_cv_have_tcgetattr" = yes], HAVE_TCGETATTR, 1, 0)
--CF_SUBST_IF(["$ac_cv_header_termio_h" = yes], HAVE_TERMIO_H, 1, 0)
--CF_SUBST_IF(["$ac_cv_header_termios_h" = yes], HAVE_TERMIOS_H, 1, 0)
-+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)
-+CF_SUBST_IF(["x$ac_cv_header_termio_h" = xyes], HAVE_TERMIO_H, 1, 0)
-+CF_SUBST_IF(["x$ac_cv_header_termios_h" = xyes], HAVE_TERMIOS_H, 1, 0)
-
- ################################################################################
--test "$use_database" = yes && \
-+test "x$use_database" = xyes && \
- SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in"
-
- SUB_MAKEFILES="$SUB_MAKEFILES misc/ncurses-config:misc/ncurses-config.in"
- SUB_MAKEFILES="$SUB_MAKEFILES man/ncurses${DFT_ARG_SUFFIX}${cf_cv_abi_version}-config.1:man/MKncu_config.in"
-
--if test x"$enable_pc_files" = xyes ; then \
-+if test "x$enable_pc_files" = xyes ; then \
- SUB_MAKEFILES="$SUB_MAKEFILES misc/gen-pkgconfig:misc/gen-pkgconfig.in"
- MAKE_PC_FILES=
- else
-@@ -1917,13 +2006,76 @@
- ADAHTML_DIR=../../doc/html/ada
- AC_SUBST(ADAHTML_DIR)
-
--SUB_SCRIPTS=
-+# 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 g++ versus Solaris (20131116)
- case $cf_cv_system_name in #(vi
--*mingw32*) #(vi
-- SUB_SCRIPTS="mk-dlls.sh"
-+solaris2*) #(vi
-+ case "x$CPPFLAGS" in #(vi
-+ *-D_XOPEN_SOURCE_EXTENDED*)
-+ CF_VERBOSE(moving _XOPEN_SOURCE_EXTENDED to work around g++ problem)
-+ CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED"
-+ CPPFLAGS=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/-D_XOPEN_SOURCE_EXTENDED//'`
-+ ;;
-+ esac
-+ ;;
-+esac
-+
-+# AC_CHECK_SIZEOF demands a literal parameter, no variables. So we do this.
-+case "x$NCURSES_OSPEED" in #(vi
-+*short*) #(vi
-+ cf_compatible=1
-+ ;;
-+*)
-+ cf_compatible=0
-+ ;;
-+esac
-+AC_DEFINE_UNQUOTED(NCURSES_OSPEED_COMPAT,$cf_compatible,[Define to 1 if termcap variable ospeed is short])
-+
-+case "x$cf_cv_typeof_chtype" in
-+xshort|xint|xlong)
-+ cf_cv_typeof_chtype="unsigned $cf_cv_typeof_chtype"
-+ ;;
-+esac
-+
-+case "x$cf_cv_typeof_mmask_t" in
-+xshort|xint|xlong)
-+ cf_cv_typeof_mmask_t="unsigned $cf_cv_typeof_mmask_t"
- ;;
- esac
-
-+# substitute into misc/Makefile to suppress
-+# (un)install.data from the
-+# (un)install rules.
-+if test "x$cf_with_db_install" = "xno"; then
-+ MISC_INSTALL_DATA=
-+ MISC_UNINSTALL_DATA=
-+else
-+ MISC_INSTALL_DATA=install.data
-+ MISC_UNINSTALL_DATA=uninstall.data
-+fi
-+AC_SUBST(MISC_INSTALL_DATA)
-+AC_SUBST(MISC_UNINSTALL_DATA)
-+
-+SUB_SCRIPTS=
-+
-+dnl Override the package used for exported symbols
-+if test -n "$PACKAGE"
-+then
-+ PACKAGE="${PACKAGE}${DFT_ARG_SUFFIX}"
-+ export PACKAGE
-+ echo "package: $PACKAGE"
-+fi
-+
- AC_OUTPUT( \
- include/MKterm.h.awk \
- include/curses.head:include/curses.h.in \
-@@ -1934,11 +2086,11 @@
- $SUB_MAKEFILES \
- Makefile,[
- if test "x$cf_with_tests" != xno ; then
-- CF_PRG_RULES([$srcdir/test/mk-test.awk INSTALL=no ECHO_LINK="$ECHO_LINK"], 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" != xno ; then
-+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
- fi
-@@ -1950,10 +2102,11 @@
- AWK="$AWK"
- DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
- DFT_LWR_MODEL="$DFT_LWR_MODEL"
--ECHO_LINK="$ECHO_LINK"
-+ECHO_LD="$ECHO_LD"
- LDCONFIG="$LDCONFIG"
- LIBTOOL_VERSION="$LIBTOOL_VERSION"
- LIB_NAME="$LIB_NAME"
-+LIB_PREFIX="$LIB_PREFIX"
- LIB_SUBSETS="$LIB_SUBSETS"
- LIB_SUFFIX="$LIB_SUFFIX"
- LIB_TRACING="$LIB_TRACING"
-@@ -1975,7 +2128,7 @@
- TINFO_SUFFIX="$TINFO_SUFFIX"
- USE_OLD_MAKERULES="$USE_OLD_MAKERULES"
- WITH_CURSES_H="$with_curses_h"
--WITH_ECHO="$with_echo"
-+WITH_ECHO="${enable_echo:=yes}"
- WITH_OVERWRITE="$with_overwrite"
- cf_LIST_MODELS="$cf_list_models"
- cf_cv_abi_version="$cf_cv_abi_version"
-@@ -1985,16 +2138,20 @@
- cf_cv_enable_opaque="$cf_cv_enable_opaque"
- 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
- cf_cv_rel_version="$cf_cv_rel_version"
- cf_cv_rm_so_locs="$cf_cv_rm_so_locs"
- cf_cv_shared_soname='$cf_cv_shared_soname'
- cf_cv_shlib_version="$cf_cv_shlib_version"
- cf_cv_shlib_version_infix="$cf_cv_shlib_version_infix"
- cf_cv_system_name="$cf_cv_system_name"
-+cf_cv_term_driver="$with_term_driver"
- cf_with_ada="$cf_with_ada"
- cf_with_cxx_binding="$cf_with_cxx_binding"
-+cf_with_db_install="$cf_with_db_install"
- cf_with_manpages="$cf_with_manpages"
- cf_with_tests="$cf_with_tests"
-+with_shared_cxx="$with_shared_cxx"
- host="$host"
- target="$target"
-
-Index: dist.mk
-Prereq: 1.810
---- ncurses-5.9/dist.mk 2011-04-04 22:42:20.000000000 +0000
-+++ ncurses-5.9-20141206/dist.mk 2014-12-06 13:32:29.000000000 +0000
-@@ -1,5 +1,5 @@
- ##############################################################################
--# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -25,7 +25,7 @@
- # use or other dealings in this Software without prior written #
- # authorization. #
- ##############################################################################
--# $Id: dist.mk,v 1.810 2011/04/04 22:42:20 tom Exp $
-+# $Id: dist.mk,v 1.1018 2014/12/06 13:32:29 tom Exp $
- # Makefile for creating ncurses distributions.
- #
- # This only needs to be used directly as a makefile by developers, but
-@@ -37,20 +37,21 @@
- # These define the major/minor/patch versions of ncurses.
- NCURSES_MAJOR = 5
- NCURSES_MINOR = 9
--NCURSES_PATCH = 20110404
-+NCURSES_PATCH = 20141206
-
- # We don't append the patch to the version, since this only applies to releases
- VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
-
--# The most recent html files were generated with lynx 2.8.6, using ncurses
--# configured with
-+# The most recent html files were generated with lynx 2.8.6 (or later), using
-+# ncurses configured with
- # --without-manpage-renames
- # on Debian/testing. The -scrollbar and -width options are used to make lynx
- # use 79 columns as it did in 2.8.5 and before.
- DUMP = lynx -dump -scrollbar=0 -width=79
- DUMP2 = $(DUMP) -nolist
-
--GNATHTML= `type -p gnathtml || type -p gnathtml.pl`
-+# gcc's file is "gnathtml.pl"
-+GNATHTML= gnathtml
-
- # man2html 3.0.1 is a Perl script which assumes that pages are fixed size.
- # Not all man programs agree with this assumption; some use half-spacing, which
-@@ -98,7 +99,13 @@
- MANPROG = tbl | nroff -mandoc -rLL=65n -rLT=71n -Tascii
-
- manhtml:
-- @rm -f doc/html/man/*.html
-+ @for f in doc/html/man/*.html; do \
-+ test -f $$f || continue; \
-+ case $$f in \
-+ */index.html) ;; \
-+ *) rm -f $$f ;; \
-+ esac; \
-+ done
- @mkdir -p doc/html/man
- @rm -f subst.tmp ;
- @for f in man/*.[0-9]*; do \
-@@ -126,7 +133,7 @@
- g=$${m}.html ;\
- if [ -f doc/html/$$g ]; then chmod +w doc/html/$$g; fi;\
- echo "Converting $$m to HTML" ;\
-- echo '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">' > doc/html/man/$$g ;\
-+ echo '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">' > doc/html/man/$$g ;\
- echo '<!-- ' >> doc/html/man/$$g ;\
- egrep '^.\\"[^#]' $$f | \
- sed -e 's/\$$/@/g' \
-@@ -135,9 +142,15 @@
- -e 's/>/\&gt;/g' \
- >> doc/html/man/$$g ;\
- echo '-->' >> doc/html/man/$$g ;\
-- ./edit_man.sh normal editing /usr/man man $$f | $(MANPROG) | tr '\255' '-' | $(MAN2HTML) -title "$$T" | \
-- sed -f subst.sed |\
-- sed -e 's/"curses.3x.html"/"ncurses.3x.html"/g' \
-+ ./edit_man.sh normal editing /usr/man man $$f | \
-+ $(MANPROG) | \
-+ tr '\255' '-' | \
-+ $(MAN2HTML) \
-+ -title "$$T" \
-+ -aliases man/manhtml.aliases \
-+ -externs man/manhtml.externs | \
-+ sed -f subst.sed |\
-+ sed -e 's/"curses.3x.html"/"ncurses.3x.html"/g' \
- >> doc/html/man/$$g ;\
- done
- @rm -f subst.sed
-@@ -149,7 +162,7 @@
- # .ali files contain cross referencing information required by gnathtml.
- adahtml:
- if [ ! -z "$(GNATHTML)" ]; then \
-- (cd ./Ada95/gen ; make html) ;\
-+ (cd ./Ada95/gen ; make html GNATHTML=$(GNATHTML) ) ;\
- fi
-
- # This only works on a clean source tree, of course.
-Index: doc/html/Ada95.html
-Prereq: 1.8
---- ncurses-5.9/doc/html/Ada95.html 2010-12-04 16:42:54.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/Ada95.html 2013-05-18 21:34:34.000000000 +0000
-@@ -1,8 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <!--
-- $Id: Ada95.html,v 1.8 2010/12/04 16:42:54 tom Exp $
-+ $Id: Ada95.html,v 1.14 2013/05/18 21:34:34 tom Exp $
- ****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 *
-@@ -29,156 +28,316 @@
- * authorization. *
- ****************************************************************************
- -->
--<HTML>
--<HEAD>
--<TITLE>Ada95 Binding for ncurses</Title>
--<link rev=made href="mailto:bug-ncurses@gnu.org">
--<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
--</HEAD>
--<BODY>
--<H1>Ada95 Binding for ncurses</H1>
--by J&uuml;rgen Pfeifer.
--
--<HR SIZE=3 NOSHADE>
--<H2>General Remarks</H2>
--<UL>
--<LI>This document describes Version 01.00 of the binding.</LI>
--<LI>The functionality is modeled to be compatible with the ncurses
--package, a clone of the SVr4 curses model.<BR>
--I did the development on an Intel box running the latest stable release of
--<A HREF="http://www.linux.org">Linux</A>, ncurses and the most recent released
--<A HREF="http://www.gnat.com">GNU Ada Translator</A>
--gnat versions. For any older versions of ncurses and gnat
--it is not guaranteed to work.</LI>
--<LI>You must have the m4 macroprocessor to build this package.
--If you don't have this program, you can get the FSF version
--<A HREF="ftp://ftp.gnu.org/pub/gnu/">here</A>.</LI>
--<LI>Ada programs are supposed to be readable. One of my
--favorite methods to make code readable is to use expressive
--names for the identifiers. You can find a list of a mapping
--of the cryptic curses names to the Ada names in this <A HREF="ada/table.html">table</A>.</LI>
--<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 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>
--<LI>I try to do as much error checking as possible and feasible
--in the binding. I will raise an Ada exception when something
--went wrong in the low-level curses. This has the effect that - at least
--first time in my life - (n)curses programs have now a very rigid error
--checking, but - thanks to Ada - you don't have to code the orgiastic
--error checking style of C.</LI>
--<LI>Support for wide characters is currently not in the binding, as it
--is not really in ncurses at this point in time.</LI>
--</UL>
--
--<H2>Limitations</H2>
--<UL>
--<LI>I provide no SCREEN datatype and functions to set a new screen.
--If you need this (mostly for debugging I guess), write a small
--C routine doing all this and import it into your Ada program.</LI>
--<LI>I provide no functions to switch on/off curses tracing options.
--Same suggestion as above.</LI>
--<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 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 in
--this Binding. We provide an abstract tagged type Field_Type from
--which the various fieldtypes are derived.</LI>
--<LI>I currently do not support the link_fieldtype functionality of the
--forms subsystem.</LI>
--<LI>The *_IO packages are currently output only.</LI>
--</UL>
--
--<H2>Hierarchy of packages</H2>
--<UL>
--<LI><A HREF="ada/terminal_interface__ads.htm">Terminal_Interface</A>
-- <UL><LI><A HREF="ada/terminal_interface-curses__ads.htm">Curses</A>
-- <UL><LI><A HREF="ada/terminal_interface-curses-mouse__ads.htm">Mouse</A>
-- <LI><A HREF="ada/terminal_interface-curses-panels__ads.htm">Panels</A>
-- <UL><LI><A HREF="ada/terminal_interface-curses-panels-user_data__ads.htm">User_Data</A>
-- </UL>
-- <LI><A HREF="ada/terminal_interface-curses-menus__ads.htm">Menus</A>
-- <UL><LI><A HREF="ada/terminal_interface-curses-menus-menu_user_data__ads.htm">Menu_User_Data</A>
-- <LI><A HREF="ada/terminal_interface-curses-menus-item_user_data__ads.htm">Item_User_Data</A>
-- </UL>
-- <LI><A HREF="ada/terminal_interface-curses-forms__ads.htm">Forms</A>
-- <UL><LI><A HREF="ada/terminal_interface-curses-forms-form_user_data__ads.htm">Form_User_Data</A>
-- <LI><A HREF="ada/terminal_interface-curses-forms-field_user_data__ads.htm">Field_User_Data</A>
-- <LI><A HREF="ada/terminal_interface-curses-forms-field_types__ads.htm">Field_Types</A>
-- <UL><LI><A HREF="ada/terminal_interface-curses-forms-field_types-alpha__ads.htm">Alpha</A>
-- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm">AlphaNumeric</A>
-- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-intfield__ads.htm">IntField</A>
-- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-numeric__ads.htm">Numeric</A>
-- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-regexp__ads.htm">RegExp</A>
-- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm">IPV4_Address</A>
-- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm">Enumeration</A>
-- <UL><LI><A HREF="ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm">Ada</A>
-- </UL>
-- <LI><A HREF="ada/terminal_interface-curses-forms-field_types-user__ads.htm">User</A>
-- <UL><LI><A HREF="ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm">Choice</A>
-- </UL>
-- </UL>
-- </UL>
-- <LI><A HREF="ada/terminal_interface-curses-text_io__ads.htm">Text_IO</A>
-- <UL><LI><A HREF="ada/terminal_interface-curses-text_io-integer_io__ads.htm">Integer_IO</A>
-- <LI><A HREF="ada/terminal_interface-curses-text_io-float_io__ads.htm">Float_IO</A>
-- <LI><A HREF="ada/terminal_interface-curses-text_io-fixed_io__ads.htm">Fixed_IO</A>
-- <LI><A HREF="ada/terminal_interface-curses-text_io-decimal_io__ads.htm">Decimal_IO</A>
-- <LI><A HREF="ada/terminal_interface-curses-text_io-modular_io__ads.htm">Modular_IO</A>
-- <LI><A HREF="ada/terminal_interface-curses-text_io-enumeration_io__ads.htm">Enumeration_IO</A>
-- <LI><A HREF="ada/terminal_interface-curses-text_io-complex_io__ads.htm">Complex_IO</A>
-- </UL>
-- </UL>
-- </UL>
--</UL>
--If you want to navigate through the html pages of the package specs, click <A HREF="ada/index.htm">here</A>.
--<H2>Implementation Details</H2>
--<H4>Behind the abstraction</H4>
--All the new types like <STRONG>Window</STRONG>, <STRONG>Panel</STRONG>,
--<STRONG>Menu</STRONG>, <STRONG>Form</STRONG> etc. are just
--opaque representations of the pointers to the corresponding
--low level (n)curses structures like
--<STRONG>WINDOW *</STRONG>, <STRONG>PANEL *</STRONG>,
--<STRONG>MENU *</STRONG> or <STRONG>FORM *</STRONG>.
--So you can safely pass them to C routines that expect a pointer
--to one of those structures.
--<H4>Extended ripoffline() usage</H4>
--The official documentation of (n)curses says, that the line parameter
--determines only whether or not exactly <STRONG>one</STRONG> line is
--stolen from the top or bottom of the screen. So essentially only the
--sign of the parameter is evaluated. ncurses has internally implemented
--it in a way, that uses the line parameter also to control the amount of
--lines to steal. This mechanism is used in the <STRONG>Rip_Off_Lines</STRONG>
--routine of the binding.
--<H4><A NAME="userpointer">How user defined field types work</A></H4>
--TBD
--<H4>Enumeration fields handling</H4>
--The (n)curses documentation says, that the String arrays to be passed to
--an TYPE_ENUM fieldtype must not be automatic variables. This is not true
--in this binding, because it is internally arranged to safely copy these
--values.
--<H4><A NAME="compiler">Using other Ada compilers</A></H4>
--This should basically not be a problem.
--<H4>Port to other curses implementations</H4>
--Basically it should not be too hard to make all this run on a regular SVr4
--implementation of curses. The problems are probably these:<BR>
--<UL>
--<LI>ncurses has some additional features which are presented in this binding. You
--have two choices to deal with this:
--<UL>
--<LI>Emulate the feature in this binding</LI>
--<LI>Raise an exception for non implemented features</LI>
--</UL>
--Most likely you will follow a mixed approach. Some features are easy to simulate,
--others will be hard if not impossible.</LI>
--</UL>
--I'm quite sure I forgot something.
--</BODY>
--</HTML>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+
-+<html>
-+<head>
-+ <meta name="generator" content=
-+ "HTML Tidy for Linux (vers 25 March 2009), see www.w3.org">
-+
-+ <title>Ada95 Binding for ncurses</title>
-+ <link rev="made" href="mailto:bug-ncurses@gnu.org">
-+ <meta http-equiv="Content-Type" content=
-+ "text/html; charset=us-ascii">
-+</head>
-+
-+<body>
-+ <h1>Ada95 Binding for ncurses</h1>
-+
-+ <p>by J&uuml;rgen Pfeifer.</p>
-+ <hr>
-+
-+ <h2>General Remarks</h2>
-+
-+ <ul>
-+ <li>This document describes Version 01.00 of the binding.</li>
-+
-+ <li>The functionality is modeled to be compatible with the
-+ ncurses package, a clone of the SVr4 curses model.<br>
-+ I did the development on an Intel box running the latest stable
-+ release of <a href="http://www.linux.org">Linux</a>, ncurses
-+ and the most recent released <a href="http://www.gnat.com">GNU
-+ Ada Translator</a> gnat versions. For any older versions of
-+ ncurses and gnat it is not guaranteed to work.</li>
-+
-+ <li>You must have the m4 macroprocessor to build this package.
-+ If you don't have this program, you can get the FSF version
-+ <a href="ftp://ftp.gnu.org/pub/gnu/">here</a>.</li>
-+
-+ <li>Ada programs are supposed to be readable. One of my
-+ favorite methods to make code readable is to use expressive
-+ names for the identifiers. You can find a list of a mapping of
-+ the cryptic curses names to the Ada names in this <a href=
-+ "ada/table.html">table</a>.</li>
-+
-+ <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
-+ 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>
-+
-+ <li>I try to do as much error checking as possible and feasible
-+ in the binding. I will raise an Ada exception when something
-+ went wrong in the low-level curses. This has the effect that -
-+ at least first time in my life - (n)curses programs have now a
-+ very rigid error checking, but - thanks to Ada - you don't have
-+ to code the orgiastic error checking style of C.</li>
-+
-+ <li>Support for wide characters is currently not in the
-+ binding, as it is not really in ncurses at this point in
-+ time.</li>
-+ </ul>
-+
-+ <h2>Limitations</h2>
-+
-+ <ul>
-+ <li>I provide no SCREEN datatype and functions to set a new
-+ screen. If you need this (mostly for debugging I guess), write
-+ a small C routine doing all this and import it into your Ada
-+ program.</li>
-+
-+ <li>I provide no functions to switch on/off curses tracing
-+ options. Same suggestion as above.</li>
-+
-+ <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
-+ 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
-+ in this Binding. We provide an abstract tagged type Field_Type
-+ from which the various fieldtypes are derived.</li>
-+
-+ <li>I currently do not support the link_fieldtype functionality
-+ of the forms subsystem.</li>
-+
-+ <li>The *_IO packages are currently output only.</li>
-+ </ul>
-+
-+ <h2>Hierarchy of packages</h2>
-+
-+ <ul>
-+ <li>
-+ <a href=
-+ "ada/terminal_interface__ads.htm">Terminal_Interface</a>
-+
-+ <ul>
-+ <li>
-+ <a href=
-+ "ada/terminal_interface-curses__ads.htm">Curses</a>
-+
-+ <ul>
-+ <li><a href=
-+ "ada/terminal_interface-curses-mouse__ads.htm">Mouse</a></li>
-+
-+ <li>
-+ <a href=
-+ "ada/terminal_interface-curses-panels__ads.htm">Panels</a>
-+
-+ <ul>
-+ <li><a href=
-+ "ada/terminal_interface-curses-panels-user_data__ads.htm">
-+ User_Data</a></li>
-+ </ul>
-+ </li>
-+
-+ <li>
-+ <a href=
-+ "ada/terminal_interface-curses-menus__ads.htm">Menus</a>
-+
-+ <ul>
-+ <li><a href=
-+ "ada/terminal_interface-curses-menus-menu_user_data__ads.htm">
-+ Menu_User_Data</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-menus-item_user_data__ads.htm">
-+ Item_User_Data</a></li>
-+ </ul>
-+ </li>
-+
-+ <li>
-+ <a href=
-+ "ada/terminal_interface-curses-forms__ads.htm">Forms</a>
-+
-+ <ul>
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-form_user_data__ads.htm">
-+ Form_User_Data</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-field_user_data__ads.htm">
-+ Field_User_Data</a></li>
-+
-+ <li>
-+ <a href=
-+ "ada/terminal_interface-curses-forms-field_types__ads.htm">
-+ Field_Types</a>
-+
-+ <ul>
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-field_types-alpha__ads.htm">
-+ Alpha</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm">
-+ AlphaNumeric</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-field_types-intfield__ads.htm">
-+ IntField</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-field_types-numeric__ads.htm">
-+ Numeric</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-field_types-regexp__ads.htm">
-+ RegExp</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm">
-+ IPV4_Address</a></li>
-+
-+ <li>
-+ <a href=
-+ "ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm">
-+ Enumeration</a>
-+
-+ <ul>
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm">
-+ Ada</a></li>
-+ </ul>
-+ </li>
-+
-+ <li>
-+ <a href=
-+ "ada/terminal_interface-curses-forms-field_types-user__ads.htm">
-+ User</a>
-+
-+ <ul>
-+ <li><a href=
-+ "ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm">
-+ Choice</a></li>
-+ </ul>
-+ </li>
-+ </ul>
-+ </li>
-+ </ul>
-+ </li>
-+
-+ <li>
-+ <a href=
-+ "ada/terminal_interface-curses-text_io__ads.htm">Text_IO</a>
-+
-+ <ul>
-+ <li><a href=
-+ "ada/terminal_interface-curses-text_io-integer_io__ads.htm">
-+ Integer_IO</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-text_io-float_io__ads.htm">
-+ Float_IO</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-text_io-fixed_io__ads.htm">
-+ Fixed_IO</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-text_io-decimal_io__ads.htm">
-+ Decimal_IO</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-text_io-modular_io__ads.htm">
-+ Modular_IO</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-text_io-enumeration_io__ads.htm">
-+ Enumeration_IO</a></li>
-+
-+ <li><a href=
-+ "ada/terminal_interface-curses-text_io-complex_io__ads.htm">
-+ Complex_IO</a></li>
-+ </ul>
-+ </li>
-+ </ul>
-+ </li>
-+ </ul>
-+ </li>
-+ </ul>
-+
-+ <p>If you want to navigate through the html pages of the package
-+ specs, click <a href="ada/index.htm">here</a>.</p>
-+
-+ <h2>Implementation Details</h2>
-+
-+ <h4>Behind the abstraction</h4>
-+
-+ <p>All the new types like <strong>Window</strong>,
-+ <strong>Panel</strong>, <strong>Menu</strong>,
-+ <strong>Form</strong> etc. are just opaque representations of the
-+ pointers to the corresponding low level (n)curses structures like
-+ <strong>WINDOW *</strong>, <strong>PANEL *</strong>, <strong>MENU
-+ *</strong> or <strong>FORM *</strong>. So you can safely pass
-+ them to C routines that expect a pointer to one of those
-+ structures.</p>
-+
-+ <h4>Extended ripoffline() usage</h4>
-+
-+ <p>The official documentation of (n)curses says, that the line
-+ parameter determines only whether or not exactly
-+ <strong>one</strong> line is stolen from the top or bottom of the
-+ screen. So essentially only the sign of the parameter is
-+ evaluated. ncurses has internally implemented it in a way, that
-+ uses the line parameter also to control the amount of lines to
-+ steal. This mechanism is used in the
-+ <strong>Rip_Off_Lines</strong> routine of the binding.</p>
-+
-+ <h4><a name="userpointer" id="userpointer">How user defined field
-+ types work</a></h4>
-+
-+ <p>TBD</p>
-+
-+ <h4>Enumeration fields handling</h4>
-+
-+ <p>The (n)curses documentation says, that the String arrays to be
-+ passed to an TYPE_ENUM fieldtype must not be automatic variables.
-+ This is not true in this binding, because it is internally
-+ arranged to safely copy these values.</p>
-+
-+ <h4><a name="compiler" id="compiler">Using other Ada
-+ compilers</a></h4>
-+
-+ <p>This should basically not be a problem.</p>
-+
-+ <h4>Port to other curses implementations</h4>
-+
-+ <p>Basically it should not be too hard to make all this run on a
-+ regular SVr4 implementation of curses. The problems are probably
-+ these:<br></p>
-+
-+ <ul>
-+ <li>ncurses has some additional features which are presented in
-+ this binding. You have two choices to deal with this:
-+
-+ <ul>
-+ <li>Emulate the feature in this binding</li>
-+
-+ <li>Raise an exception for non implemented features</li>
-+ </ul>
-+
-+ <p>Most likely you will follow a mixed approach. Some
-+ features are easy to simulate, others will be hard if not
-+ impossible.</p>
-+ </li>
-+ </ul>
-+
-+ <p>I'm quite sure I forgot something.</p>
-+</body>
-+</html>
-Index: doc/html/NCURSES-Programming-HOWTO.html
---- ncurses-5.9/doc/html/NCURSES-Programming-HOWTO.html 2005-06-21 21:50:00.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/NCURSES-Programming-HOWTO.html 2014-01-04 23:56:00.000000000 +0000
-@@ -1,516 +1,1282 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<html>
--<head>
--<meta name="generator" content=
--"HTML Tidy for Linux/x86 (vers 1st December 2004), see www.w3.org">
--<title>NCURSES Programming HOWTO</title>
--<meta name="GENERATOR" content=
--"Modular DocBook HTML Stylesheet Version 1.7">
--</head>
--<body class="ARTICLE" bgcolor="#FFFFFF" text="#000000" link=
--"#0000FF" vlink="#840084" alink="#0000FF">
--<div class="ARTICLE">
--<div class="TITLEPAGE">
--<h1 class="TITLE"><a name="AEN2" id="AEN2">NCURSES Programming
--HOWTO</a></h1>
--<h3 class="AUTHOR"><a name="AEN4" id="AEN4">Pradeep Padala</a></h3>
--<div class="AFFILIATION">
--<div class="ADDRESS">
--<p class="ADDRESS"><code class="EMAIL">&lt;<a href=
--"mailto:ppadala@gmail.com">ppadala@gmail.com</a>&gt;</code></p>
--</div>
--</div>
--<p class="PUBDATE">v1.9, 2005-06-20<br></p>
--<div class="REVHISTORY">
--<table width="100%" border="0">
--<tr>
--<th align="left" valign="top" colspan="3"><b>Revision
--History</b></th>
--</tr>
--<tr>
--<td align="left">Revision 1.9</td>
--<td align="left">2005-06-20</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">The license has been changed to the
--MIT-style license used by NCURSES. Note that the programs are also
--re-licensed under this.</td>
--</tr>
--<tr>
--<td align="left">Revision 1.8</td>
--<td align="left">2005-06-17</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Lots of updates. Added references and
--perl examples. Changes to examples. Many grammatical and stylistic
--changes to the content. Changes to NCURSES history.</td>
--</tr>
--<tr>
--<td align="left">Revision 1.7.1</td>
--<td align="left">2002-06-25</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Added a README file for building and
--instructions for building from source.</td>
--</tr>
--<tr>
--<td align="left">Revision 1.7</td>
--<td align="left">2002-06-25</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Added "Other formats" section and made
--a lot of fancy changes to the programs. Inlining of programs is
--gone.</td>
--</tr>
--<tr>
--<td align="left">Revision 1.6.1</td>
--<td align="left">2002-02-24</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Removed the old Changelog section,
--cleaned the makefiles</td>
--</tr>
--<tr>
--<td align="left">Revision 1.6</td>
--<td align="left">2002-02-16</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Corrected a lot of spelling mistakes,
--added ACS variables section</td>
--</tr>
--<tr>
--<td align="left">Revision 1.5</td>
--<td align="left">2002-01-05</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Changed structure to present proper
--TOC</td>
--</tr>
--<tr>
--<td align="left">Revision 1.3.1</td>
--<td align="left">2001-07-26</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Corrected maintainers paragraph,
--Corrected stable release number</td>
--</tr>
--<tr>
--<td align="left">Revision 1.3</td>
--<td align="left">2001-07-24</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Added copyright notices to main
--document (LDP license) and programs (GPL), Corrected
--printw_example.</td>
--</tr>
--<tr>
--<td align="left">Revision 1.2</td>
--<td align="left">2001-06-05</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Incorporated ravi's changes. Mainly to
--introduction, menu, form, justforfun sections</td>
--</tr>
--<tr>
--<td align="left">Revision 1.1</td>
--<td align="left">2001-05-22</td>
--<td align="left">Revised by: ppadala</td>
--</tr>
--<tr>
--<td align="left" colspan="3">Added "a word about window" section,
--Added scanw_example.</td>
--</tr>
--</table>
--</div>
--<div>
--<div class="ABSTRACT"><a name="AEN67" id="AEN67"></a>
--<p><em>This document is intended to be an "All in One" guide for
--programming with ncurses and its sister libraries. We graduate from
--a simple "Hello World" program to more complex form manipulation.
--No prior experience in ncurses is assumed. Send comments to
--<a href="mailto:ppadala@gmail.com" target="_top">this
--address</a></em></p>
--</div>
--</div>
--<hr></div>
--<div class="TOC">
--<dl>
--<dt><b>Table of Contents</b></dt>
--<dt>1. <a href="#INTRO">Introduction</a></dt>
--<dd>
--<dl>
--<dt>1.1. <a href="#WHATIS">What is NCURSES?</a></dt>
--<dt>1.2. <a href="#WHATCANWEDO">What we can do with
--NCURSES</a></dt>
--<dt>1.3. <a href="#WHERETOGETIT">Where to get it</a></dt>
--<dt>1.4. <a href="#PURPOSE">Purpose/Scope of the document</a></dt>
--<dt>1.5. <a href="#ABOUTPROGRAMS">About the Programs</a></dt>
--<dt>1.6. <a href="#OTHERFORMATS">Other Formats of the
--document</a></dt>
--<dt>1.7. <a href="#CREDITS">Credits</a></dt>
--<dt>1.8. <a href="#WISHLIST">Wish List</a></dt>
--<dt>1.9. <a href="#COPYRIGHT">Copyright</a></dt>
--</dl>
--</dd>
--<dt>2. <a href="#HELLOWORLD">Hello World !!!</a></dt>
--<dd>
--<dl>
--<dt>2.1. <a href="#COMPILECURSES">Compiling With the NCURSES
--Library</a></dt>
--<dt>2.2. <a href="#DISSECTION">Dissection</a></dt>
--</dl>
--</dd>
--<dt>3. <a href="#GORY">The Gory Details</a></dt>
--<dt>4. <a href="#INIT">Initialization</a></dt>
--<dd>
--<dl>
--<dt>4.1. <a href="#ABOUTINIT">Initialization functions</a></dt>
--<dt>4.2. <a href="#RAWCBREAK">raw() and cbreak()</a></dt>
--<dt>4.3. <a href="#ECHONOECHO">echo() and noecho()</a></dt>
--<dt>4.4. <a href="#KEYPAD">keypad()</a></dt>
--<dt>4.5. <a href="#HALFDELAY">halfdelay()</a></dt>
--<dt>4.6. <a href="#MISCINIT">Miscellaneous Initialization
--functions</a></dt>
--<dt>4.7. <a href="#INITEX">An Example</a></dt>
--</dl>
--</dd>
--<dt>5. <a href="#AWORDWINDOWS">A Word about Windows</a></dt>
--<dt>6. <a href="#PRINTW">Output functions</a></dt>
--<dd>
--<dl>
--<dt>6.1. <a href="#ADDCHCLASS">addch() class of functions</a></dt>
--<dt>6.2. <a href="#AEN298">mvaddch(), waddch() and
--mvwaddch()</a></dt>
--<dt>6.3. <a href="#PRINTWCLASS">printw() class of
--functions</a></dt>
--<dt>6.4. <a href="#ADDSTRCLASS">addstr() class of
--functions</a></dt>
--<dt>6.5. <a href="#ACAUTION">A word of caution</a></dt>
--</dl>
--</dd>
--<dt>7. <a href="#SCANW">Input functions</a></dt>
--<dd>
--<dl>
--<dt>7.1. <a href="#GETCHCLASS">getch() class of functions</a></dt>
--<dt>7.2. <a href="#SCANWCLASS">scanw() class of functions</a></dt>
--<dt>7.3. <a href="#GETSTRCLASS">getstr() class of
--functions</a></dt>
--<dt>7.4. <a href="#GETSTREX">Some examples</a></dt>
--</dl>
--</dd>
--<dt>8. <a href="#ATTRIB">Attributes</a></dt>
--<dd>
--<dl>
--<dt>8.1. <a href="#ATTRIBDETAILS">The details</a></dt>
--<dt>8.2. <a href="#ATTRONVSATTRSET">attron() vs attrset()</a></dt>
--<dt>8.3. <a href="#ATTR_GET">attr_get()</a></dt>
--<dt>8.4. <a href="#ATTR_FUNCS">attr_ functions</a></dt>
--<dt>8.5. <a href="#WATTRFUNCS">wattr functions</a></dt>
--<dt>8.6. <a href="#CHGAT">chgat() functions</a></dt>
--</dl>
--</dd>
--<dt>9. <a href="#WINDOWS">Windows</a></dt>
--<dd>
--<dl>
--<dt>9.1. <a href="#WINDOWBASICS">The basics</a></dt>
--<dt>9.2. <a href="#LETBEWINDOW">Let there be a Window !!!</a></dt>
--<dt>9.3. <a href="#BORDEREXEXPL">Explanation</a></dt>
--<dt>9.4. <a href="#OTHERSTUFF">The other stuff in the
--example</a></dt>
--<dt>9.5. <a href="#OTHERBORDERFUNCS">Other Border
--functions</a></dt>
--</dl>
--</dd>
--<dt>10. <a href="#COLOR">Colors</a></dt>
--<dd>
--<dl>
--<dt>10.1. <a href="#COLORBASICS">The basics</a></dt>
--<dt>10.2. <a href="#CHANGECOLORDEFS">Changing Color
--Definitions</a></dt>
--<dt>10.3. <a href="#COLORCONTENT">Color Content</a></dt>
--</dl>
--</dd>
--<dt>11. <a href="#KEYS">Interfacing with the key board</a></dt>
--<dd>
--<dl>
--<dt>11.1. <a href="#KEYSBASICS">The Basics</a></dt>
--<dt>11.2. <a href="#SIMPLEKEYEX">A Simple Key Usage
--example</a></dt>
--</dl>
--</dd>
--<dt>12. <a href="#MOUSE">Interfacing with the mouse</a></dt>
--<dd>
--<dl>
--<dt>12.1. <a href="#MOUSEBASICS">The Basics</a></dt>
--<dt>12.2. <a href="#GETTINGEVENTS">Getting the events</a></dt>
--<dt>12.3. <a href="#MOUSETOGETHER">Putting it all Together</a></dt>
--<dt>12.4. <a href="#MISCMOUSEFUNCS">Miscellaneous
--Functions</a></dt>
--</dl>
--</dd>
--<dt>13. <a href="#SCREEN">Screen Manipulation</a></dt>
--<dd>
--<dl>
--<dt>13.1. <a href="#GETYX">getyx() functions</a></dt>
--<dt>13.2. <a href="#SCREENDUMP">Screen Dumping</a></dt>
--<dt>13.3. <a href="#WINDOWDUMP">Window Dumping</a></dt>
--</dl>
--</dd>
--<dt>14. <a href="#MISC">Miscellaneous features</a></dt>
--<dd>
--<dl>
--<dt>14.1. <a href="#CURSSET">curs_set()</a></dt>
--<dt>14.2. <a href="#TEMPLEAVE">Temporarily Leaving Curses
--mode</a></dt>
--<dt>14.3. <a href="#ACSVARS">ACS_ variables</a></dt>
--</dl>
--</dd>
--<dt>15. <a href="#OTHERLIB">Other libraries</a></dt>
--<dt>16. <a href="#PANELS">Panel Library</a></dt>
--<dd>
--<dl>
--<dt>16.1. <a href="#PANELBASICS">The Basics</a></dt>
--<dt>16.2. <a href="#COMPILEPANELS">Compiling With the Panels
--Library</a></dt>
--<dt>16.3. <a href="#PANELBROWSING">Panel Window Browsing</a></dt>
--<dt>16.4. <a href="#USERPTRUSING">Using User Pointers</a></dt>
--<dt>16.5. <a href="#PANELMOVERESIZE">Moving and Resizing
--Panels</a></dt>
--<dt>16.6. <a href="#PANELSHOWHIDE">Hiding and Showing
--Panels</a></dt>
--<dt>16.7. <a href="#PANELABOVE">panel_above() and panel_below()
--Functions</a></dt>
--</dl>
--</dd>
--<dt>17. <a href="#MENUS">Menus Library</a></dt>
--<dd>
--<dl>
--<dt>17.1. <a href="#MENUBASICS">The Basics</a></dt>
--<dt>17.2. <a href="#COMPILEMENUS">Compiling With the Menu
--Library</a></dt>
--<dt>17.3. <a href="#MENUDRIVER">Menu Driver: The work horse of the
--menu system</a></dt>
--<dt>17.4. <a href="#MENUWINDOWS">Menu Windows</a></dt>
--<dt>17.5. <a href="#SCROLLMENUS">Scrolling Menus</a></dt>
--<dt>17.6. <a href="#MULTICOLUMN">Multi Columnar Menus</a></dt>
--<dt>17.7. <a href="#MULTIVALUEMENUS">Multi Valued Menus</a></dt>
--<dt>17.8. <a href="#MENUOPT">Menu Options</a></dt>
--<dt>17.9. <a href="#MENUUSERPTR">The useful User Pointer</a></dt>
--</dl>
--</dd>
--<dt>18. <a href="#FORMS">Forms Library</a></dt>
--<dd>
--<dl>
--<dt>18.1. <a href="#FORMBASICS">The Basics</a></dt>
--<dt>18.2. <a href="#COMPILEFORMS">Compiling With the Forms
--Library</a></dt>
--<dt>18.3. <a href="#PLAYFIELDS">Playing with Fields</a></dt>
--<dt>18.4. <a href="#FORMWINDOWS">Form Windows</a></dt>
--<dt>18.5. <a href="#FILEDVALIDATE">Field Validation</a></dt>
--<dt>18.6. <a href="#FORMDRIVER">Form Driver: The work horse of the
--forms system</a></dt>
--</dl>
--</dd>
--<dt>19. <a href="#TOOLS">Tools and Widget Libraries</a></dt>
--<dd>
--<dl>
--<dt>19.1. <a href="#CDK">CDK (Curses Development Kit)</a></dt>
--<dt>19.2. <a href="#DIALOG">The dialog</a></dt>
--<dt>19.3. <a href="#PERLCURSES">Perl Curses Modules CURSES::FORM
--and CURSES::WIDGETS</a></dt>
--</dl>
--</dd>
--<dt>20. <a href="#JUSTFORFUN">Just For Fun !!!</a></dt>
--<dd>
--<dl>
--<dt>20.1. <a href="#GAMEOFLIFE">The Game of Life</a></dt>
--<dt>20.2. <a href="#MAGIC">Magic Square</a></dt>
--<dt>20.3. <a href="#HANOI">Towers of Hanoi</a></dt>
--<dt>20.4. <a href="#QUEENS">Queens Puzzle</a></dt>
--<dt>20.5. <a href="#SHUFFLE">Shuffle</a></dt>
--<dt>20.6. <a href="#TT">Typing Tutor</a></dt>
--</dl>
--</dd>
--<dt>21. <a href="#REF">References</a></dt>
--</dl>
--</div>
--<div class="SECT1">
--<h2 class="SECT1"><a name="INTRO" id="INTRO">1.
--Introduction</a></h2>
--<p>In the olden days of teletype terminals, terminals were away
--from computers and were connected to them through serial cables.
--The terminals could be configured by sending a series of bytes. All
--the capabilities (such as moving the cursor to a new location,
--erasing part of the screen, scrolling the screen, changing modes
--etc.) of terminals could be accessed through these series of bytes.
--These control seeuqnces are usually called escape sequences,
--because they start with an escape(0x1B) character. Even today, with
--proper emulation, we can send escape sequences to the emulator and
--achieve the same effect on a terminal window.</p>
--<p>Suppose you wanted to print a line in color. Try typing this on
--your console.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000">echo "^[[0;31;40mIn Color"</font>
--</pre></td>
--</tr>
--</table>
--<p>The first character is an escape character, which looks like two
--characters ^ and [. To be able to print it, you have to press
--CTRL+V and then the ESC key. All the others are normal printable
--characters. You should be able to see the string "In Color" in red.
--It stays that way and to revert back to the original mode type
--this.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000">echo "^[[0;37;40m"</font>
--</pre></td>
--</tr>
--</table>
--<p>Now, what do these magic characters mean? Difficult to
--comprehend? They might even be different for different terminals.
--So the designers of UNIX invented a mechanism named <var class=
--"LITERAL">termcap</var>. It is a file that lists all the
--capabilities of a particular terminal, along with the escape
--sequences needed to achieve a particular effect. In the later
--years, this was replaced by <var class="LITERAL">terminfo</var>.
--Without delving too much into details, this mechanism allows
--application programs to query the terminfo database and obtain the
--control characters to be sent to a terminal or terminal
--emulator.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="WHATIS" id="WHATIS">1.1. What is
--NCURSES?</a></h3>
--<p>You might be wondering, what the import of all this technical
--gibberish is. In the above scenario, every application program is
--supposed to query the terminfo and perform the necessary stuff
--(sending control characters etc.). It soon became difficult to
--manage this complexity and this gave birth to 'CURSES'. Curses is a
--pun on the name "cursor optimization". The Curses library forms a
--wrapper over working with raw terminal codes, and provides highly
--flexible and efficient API (Application Programming Interface). It
--provides functions to move the cursor, create windows, produce
--colors, play with mouse etc. The application programs need not
--worry about the underlying terminal capabilities.</p>
--<p>So what is NCURSES? NCURSES is a clone of the original System V
--Release 4.0 (SVr4) curses. It is a freely distributable library,
--fully compatible with older version of curses. In short, it is a
--library of functions that manages an application's display on
--character-cell terminals. In the remainder of the document, the
--terms curses and ncurses are used interchangeably.</p>
--<p>A detailed history of NCURSES can be found in the NEWS file from
--the source distribution. The current package is maintained by
--<a href="mailto:dickey@his.com" target="_top">Thomas Dickey</a>.
--You can contact the maintainers at <a href=
--"mailto:bug-ncurses@gnu.org" target=
--"_top">bug-ncurses@gnu.org</a>.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="WHATCANWEDO" id="WHATCANWEDO">1.2. What
--we can do with NCURSES</a></h3>
--<p>NCURSES not only creates a wrapper over terminal capabilities,
--but also gives a robust framework to create nice looking UI (User
--Interface)s in text mode. It provides functions to create windows
--etc. Its sister libraries panel, menu and form provide an extension
--to the basic curses library. These libraries usually come along
--with curses. One can create applications that contain multiple
--windows, menus, panels and forms. Windows can be managed
--independently, can provide 'scrollability' and even can be
--hidden.</p>
--<p>Menus provide the user with an easy command selection option.
--Forms allow the creation of easy-to-use data entry and display
--windows. Panels extend the capabilities of ncurses to deal with
--overlapping and stacked windows.</p>
--<p>These are just some of the basic things we can do with ncurses.
--As we move along, We will see all the capabilities of these
--libraries.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="WHERETOGETIT" id="WHERETOGETIT">1.3.
--Where to get it</a></h3>
--<p>All right, now that you know what you can do with ncurses, you
--must be rearing to get started. NCURSES is usually shipped with
--your installation. In case you don't have the library or want to
--compile it on your own, read on.</p>
--<p><em>Compiling the package</em></p>
--<p>NCURSES can be obtained from <a href=
--"ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses.tar.gz" target=
--"_top">ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses.tar.gz</a> or any
--of the ftp sites mentioned in <a href=
--"http://www.gnu.org/order/ftp.html" target=
--"_top">http://www.gnu.org/order/ftp.html</a>.</p>
--<p>Read the README and INSTALL files for details on to how to
--install it. It usually involves the following operations.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000"> tar zxvf ncurses&lt;version&gt;.tar.gz # unzip and untar the archive
-+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
-+<HTML
-+><HEAD
-+><TITLE
-+> NCURSES Programming HOWTO </TITLE
-+><META
-+NAME="GENERATOR"
-+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"></HEAD
-+><BODY
-+CLASS="ARTICLE"
-+BGCOLOR="#FFFFFF"
-+TEXT="#000000"
-+LINK="#0000FF"
-+VLINK="#840084"
-+ALINK="#0000FF"
-+><DIV
-+CLASS="ARTICLE"
-+><DIV
-+CLASS="TITLEPAGE"
-+><H1
-+CLASS="TITLE"
-+><A
-+NAME="AEN2"
-+>NCURSES Programming HOWTO</A
-+></H1
-+><H3
-+CLASS="AUTHOR"
-+><A
-+NAME="AEN4"
-+> Pradeep Padala </A
-+></H3
-+><DIV
-+CLASS="AFFILIATION"
-+><DIV
-+CLASS="ADDRESS"
-+><P
-+CLASS="ADDRESS"
-+><CODE
-+CLASS="EMAIL"
-+>&#60;<A
-+HREF="mailto:ppadala@gmail.com"
-+>ppadala@gmail.com</A
-+>&#62;</CODE
-+></P
-+></DIV
-+></DIV
-+><P
-+CLASS="PUBDATE"
-+>v1.9, 2005-06-20<BR></P
-+><DIV
-+CLASS="REVHISTORY"
-+><TABLE
-+WIDTH="100%"
-+BORDER="0"
-+><TR
-+><TH
-+ALIGN="LEFT"
-+VALIGN="TOP"
-+COLSPAN="3"
-+><B
-+>Revision History</B
-+></TH
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.9</TD
-+><TD
-+ALIGN="LEFT"
-+>2005-06-20</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>The license has been changed to the MIT-style license used
-+ by NCURSES. Note that the programs are also re-licensed under this.</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.8</TD
-+><TD
-+ALIGN="LEFT"
-+>2005-06-17</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Lots of updates. Added references and perl examples.
-+ Changes to examples. Many grammatical and stylistic changes to the
-+ content. Changes to NCURSES history.</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.7.1</TD
-+><TD
-+ALIGN="LEFT"
-+>2002-06-25</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Added a README file for building and instructions
-+ for building from source.</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.7</TD
-+><TD
-+ALIGN="LEFT"
-+>2002-06-25</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Added "Other formats" section and made a lot of fancy
-+ changes to the programs. Inlining of programs is gone.</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.6.1</TD
-+><TD
-+ALIGN="LEFT"
-+>2002-02-24</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Removed the old Changelog section, cleaned the makefiles</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.6</TD
-+><TD
-+ALIGN="LEFT"
-+>2002-02-16</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Corrected a lot of spelling mistakes, added ACS variables
-+ section</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.5</TD
-+><TD
-+ALIGN="LEFT"
-+>2002-01-05</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Changed structure to present proper TOC</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.3.1</TD
-+><TD
-+ALIGN="LEFT"
-+>2001-07-26</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Corrected maintainers paragraph, Corrected stable release number</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.3</TD
-+><TD
-+ALIGN="LEFT"
-+>2001-07-24</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Added copyright notices to main document (LDP license)
-+ and programs (GPL), Corrected
-+ printw_example.</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.2</TD
-+><TD
-+ALIGN="LEFT"
-+>2001-06-05</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Incorporated ravi's changes. Mainly to introduction, menu,
-+ form, justforfun sections</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+>Revision 1.1</TD
-+><TD
-+ALIGN="LEFT"
-+>2001-05-22</TD
-+><TD
-+ALIGN="LEFT"
-+>Revised by: ppadala</TD
-+></TR
-+><TR
-+><TD
-+ALIGN="LEFT"
-+COLSPAN="3"
-+>Added "a word about window" section, Added scanw_example.</TD
-+></TR
-+></TABLE
-+></DIV
-+><DIV
-+><DIV
-+CLASS="ABSTRACT"
-+><P
-+></P
-+><A
-+NAME="AEN67"
-+></A
-+><P
-+> <SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>This document is intended to be an "All in One" guide for programming with
-+ncurses and its sister libraries. We graduate from a simple "Hello World"
-+program to more complex form manipulation. No prior experience in ncurses is
-+assumed. Send comments to <A
-+HREF="mailto:ppadala@gmail.com"
-+TARGET="_top"
-+>this address</A
-+>
-+ </I
-+></SPAN
-+>
-+ </P
-+><P
-+></P
-+></DIV
-+></DIV
-+><HR></DIV
-+><DIV
-+CLASS="TOC"
-+><DL
-+><DT
-+><B
-+>Table of Contents</B
-+></DT
-+><DT
-+>1. <A
-+HREF="#INTRO"
-+>Introduction</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>1.1. <A
-+HREF="#WHATIS"
-+>What is NCURSES?</A
-+></DT
-+><DT
-+>1.2. <A
-+HREF="#WHATCANWEDO"
-+>What we can do with NCURSES</A
-+></DT
-+><DT
-+>1.3. <A
-+HREF="#WHERETOGETIT"
-+>Where to get it</A
-+></DT
-+><DT
-+>1.4. <A
-+HREF="#PURPOSE"
-+>Purpose/Scope of the document</A
-+></DT
-+><DT
-+>1.5. <A
-+HREF="#ABOUTPROGRAMS"
-+>About the Programs</A
-+></DT
-+><DT
-+>1.6. <A
-+HREF="#OTHERFORMATS"
-+>Other Formats of the document</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>1.6.1. <A
-+HREF="#LISTFORMATS"
-+>Readily available formats from tldp.org</A
-+></DT
-+><DT
-+>1.6.2. <A
-+HREF="#BUILDSOURCE"
-+>Building from source</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>1.7. <A
-+HREF="#CREDITS"
-+>Credits</A
-+></DT
-+><DT
-+>1.8. <A
-+HREF="#WISHLIST"
-+>Wish List</A
-+></DT
-+><DT
-+>1.9. <A
-+HREF="#COPYRIGHT"
-+>Copyright</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>2. <A
-+HREF="#HELLOWORLD"
-+>Hello World !!!</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>2.1. <A
-+HREF="#COMPILECURSES"
-+>Compiling With the NCURSES Library</A
-+></DT
-+><DT
-+>2.2. <A
-+HREF="#DISSECTION"
-+>Dissection</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>2.2.1. <A
-+HREF="#ABOUT-INITSCR"
-+>About initscr()</A
-+></DT
-+><DT
-+>2.2.2. <A
-+HREF="#MYST-REFRESH"
-+>The mysterious refresh()</A
-+></DT
-+><DT
-+>2.2.3. <A
-+HREF="#ABOUT-ENDWIN"
-+>About endwin()</A
-+></DT
-+></DL
-+></DD
-+></DL
-+></DD
-+><DT
-+>3. <A
-+HREF="#GORY"
-+>The Gory Details</A
-+></DT
-+><DT
-+>4. <A
-+HREF="#INIT"
-+>Initialization</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>4.1. <A
-+HREF="#ABOUTINIT"
-+>Initialization functions</A
-+></DT
-+><DT
-+>4.2. <A
-+HREF="#RAWCBREAK"
-+>raw() and cbreak()</A
-+></DT
-+><DT
-+>4.3. <A
-+HREF="#ECHONOECHO"
-+>echo() and noecho()</A
-+></DT
-+><DT
-+>4.4. <A
-+HREF="#KEYPAD"
-+>keypad()</A
-+></DT
-+><DT
-+>4.5. <A
-+HREF="#HALFDELAY"
-+>halfdelay()</A
-+></DT
-+><DT
-+>4.6. <A
-+HREF="#MISCINIT"
-+>Miscellaneous Initialization functions</A
-+></DT
-+><DT
-+>4.7. <A
-+HREF="#INITEX"
-+>An Example</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>5. <A
-+HREF="#AWORDWINDOWS"
-+>A Word about Windows</A
-+></DT
-+><DT
-+>6. <A
-+HREF="#PRINTW"
-+>Output functions</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>6.1. <A
-+HREF="#ADDCHCLASS"
-+>addch() class of functions</A
-+></DT
-+><DT
-+>6.2. <A
-+HREF="#AEN298"
-+>mvaddch(), waddch() and mvwaddch()</A
-+></DT
-+><DT
-+>6.3. <A
-+HREF="#PRINTWCLASS"
-+>printw() class of functions</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>6.3.1. <A
-+HREF="#PRINTWMVPRINTW"
-+>printw() and mvprintw</A
-+></DT
-+><DT
-+>6.3.2. <A
-+HREF="#WPRINTWMVWPRINTW"
-+>wprintw() and mvwprintw</A
-+></DT
-+><DT
-+>6.3.3. <A
-+HREF="#VWPRINTW"
-+>vwprintw()</A
-+></DT
-+><DT
-+>6.3.4. <A
-+HREF="#SIMPLEPRINTWEX"
-+>A Simple printw example</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>6.4. <A
-+HREF="#ADDSTRCLASS"
-+>addstr() class of functions</A
-+></DT
-+><DT
-+>6.5. <A
-+HREF="#ACAUTION"
-+>A word of caution</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>7. <A
-+HREF="#SCANW"
-+>Input functions</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>7.1. <A
-+HREF="#GETCHCLASS"
-+>getch() class of functions</A
-+></DT
-+><DT
-+>7.2. <A
-+HREF="#SCANWCLASS"
-+>scanw() class of functions</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>7.2.1. <A
-+HREF="#SCANWMVSCANW"
-+>scanw() and mvscanw</A
-+></DT
-+><DT
-+>7.2.2. <A
-+HREF="#WSCANWMVWSCANW"
-+>wscanw() and mvwscanw()</A
-+></DT
-+><DT
-+>7.2.3. <A
-+HREF="#VWSCANW"
-+>vwscanw()</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>7.3. <A
-+HREF="#GETSTRCLASS"
-+>getstr() class of functions</A
-+></DT
-+><DT
-+>7.4. <A
-+HREF="#GETSTREX"
-+>Some examples</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>8. <A
-+HREF="#ATTRIB"
-+>Attributes</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>8.1. <A
-+HREF="#ATTRIBDETAILS"
-+>The details</A
-+></DT
-+><DT
-+>8.2. <A
-+HREF="#ATTRONVSATTRSET"
-+>attron() vs attrset()</A
-+></DT
-+><DT
-+>8.3. <A
-+HREF="#ATTR_GET"
-+>attr_get()</A
-+></DT
-+><DT
-+>8.4. <A
-+HREF="#ATTR_FUNCS"
-+>attr_ functions</A
-+></DT
-+><DT
-+>8.5. <A
-+HREF="#WATTRFUNCS"
-+>wattr functions</A
-+></DT
-+><DT
-+>8.6. <A
-+HREF="#CHGAT"
-+>chgat() functions</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>9. <A
-+HREF="#WINDOWS"
-+>Windows</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>9.1. <A
-+HREF="#WINDOWBASICS"
-+>The basics</A
-+></DT
-+><DT
-+>9.2. <A
-+HREF="#LETBEWINDOW"
-+>Let there be a Window !!!</A
-+></DT
-+><DT
-+>9.3. <A
-+HREF="#BORDEREXEXPL"
-+>Explanation</A
-+></DT
-+><DT
-+>9.4. <A
-+HREF="#OTHERSTUFF"
-+>The other stuff in the example</A
-+></DT
-+><DT
-+>9.5. <A
-+HREF="#OTHERBORDERFUNCS"
-+>Other Border functions</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>10. <A
-+HREF="#COLOR"
-+>Colors</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>10.1. <A
-+HREF="#COLORBASICS"
-+>The basics</A
-+></DT
-+><DT
-+>10.2. <A
-+HREF="#CHANGECOLORDEFS"
-+>Changing Color Definitions</A
-+></DT
-+><DT
-+>10.3. <A
-+HREF="#COLORCONTENT"
-+>Color Content</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>11. <A
-+HREF="#KEYS"
-+>Interfacing with the key board</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>11.1. <A
-+HREF="#KEYSBASICS"
-+>The Basics</A
-+></DT
-+><DT
-+>11.2. <A
-+HREF="#SIMPLEKEYEX"
-+>A Simple Key Usage example</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>12. <A
-+HREF="#MOUSE"
-+>Interfacing with the mouse</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>12.1. <A
-+HREF="#MOUSEBASICS"
-+>The Basics</A
-+></DT
-+><DT
-+>12.2. <A
-+HREF="#GETTINGEVENTS"
-+>Getting the events</A
-+></DT
-+><DT
-+>12.3. <A
-+HREF="#MOUSETOGETHER"
-+>Putting it all Together</A
-+></DT
-+><DT
-+>12.4. <A
-+HREF="#MISCMOUSEFUNCS"
-+>Miscellaneous Functions</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>13. <A
-+HREF="#SCREEN"
-+>Screen Manipulation</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>13.1. <A
-+HREF="#GETYX"
-+>getyx() functions</A
-+></DT
-+><DT
-+>13.2. <A
-+HREF="#SCREENDUMP"
-+>Screen Dumping</A
-+></DT
-+><DT
-+>13.3. <A
-+HREF="#WINDOWDUMP"
-+>Window Dumping</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>14. <A
-+HREF="#MISC"
-+>Miscellaneous features</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>14.1. <A
-+HREF="#CURSSET"
-+>curs_set()</A
-+></DT
-+><DT
-+>14.2. <A
-+HREF="#TEMPLEAVE"
-+>Temporarily Leaving Curses mode</A
-+></DT
-+><DT
-+>14.3. <A
-+HREF="#ACSVARS"
-+>ACS_ variables</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>15. <A
-+HREF="#OTHERLIB"
-+>Other libraries</A
-+></DT
-+><DT
-+>16. <A
-+HREF="#PANELS"
-+>Panel Library</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>16.1. <A
-+HREF="#PANELBASICS"
-+>The Basics</A
-+></DT
-+><DT
-+>16.2. <A
-+HREF="#COMPILEPANELS"
-+>Compiling With the Panels Library</A
-+></DT
-+><DT
-+>16.3. <A
-+HREF="#PANELBROWSING"
-+>Panel Window Browsing</A
-+></DT
-+><DT
-+>16.4. <A
-+HREF="#USERPTRUSING"
-+>Using User Pointers</A
-+></DT
-+><DT
-+>16.5. <A
-+HREF="#PANELMOVERESIZE"
-+>Moving and Resizing Panels</A
-+></DT
-+><DT
-+>16.6. <A
-+HREF="#PANELSHOWHIDE"
-+>Hiding and Showing Panels</A
-+></DT
-+><DT
-+>16.7. <A
-+HREF="#PANELABOVE"
-+>panel_above() and panel_below() Functions</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>17. <A
-+HREF="#MENUS"
-+>Menus Library</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>17.1. <A
-+HREF="#MENUBASICS"
-+>The Basics</A
-+></DT
-+><DT
-+>17.2. <A
-+HREF="#COMPILEMENUS"
-+>Compiling With the Menu Library</A
-+></DT
-+><DT
-+>17.3. <A
-+HREF="#MENUDRIVER"
-+>Menu Driver: The work horse of the menu system</A
-+></DT
-+><DT
-+>17.4. <A
-+HREF="#MENUWINDOWS"
-+>Menu Windows</A
-+></DT
-+><DT
-+>17.5. <A
-+HREF="#SCROLLMENUS"
-+>Scrolling Menus</A
-+></DT
-+><DT
-+>17.6. <A
-+HREF="#MULTICOLUMN"
-+>Multi Columnar Menus</A
-+></DT
-+><DT
-+>17.7. <A
-+HREF="#MULTIVALUEMENUS"
-+>Multi Valued Menus</A
-+></DT
-+><DT
-+>17.8. <A
-+HREF="#MENUOPT"
-+>Menu Options</A
-+></DT
-+><DT
-+>17.9. <A
-+HREF="#MENUUSERPTR"
-+>The useful User Pointer</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>18. <A
-+HREF="#FORMS"
-+>Forms Library</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>18.1. <A
-+HREF="#FORMBASICS"
-+>The Basics</A
-+></DT
-+><DT
-+>18.2. <A
-+HREF="#COMPILEFORMS"
-+>Compiling With the Forms Library</A
-+></DT
-+><DT
-+>18.3. <A
-+HREF="#PLAYFIELDS"
-+>Playing with Fields</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>18.3.1. <A
-+HREF="#FETCHINFO"
-+>Fetching Size and Location of Field</A
-+></DT
-+><DT
-+>18.3.2. <A
-+HREF="#MOVEFIELD"
-+>Moving the field</A
-+></DT
-+><DT
-+>18.3.3. <A
-+HREF="#JUSTIFYFIELD"
-+>Field Justification</A
-+></DT
-+><DT
-+>18.3.4. <A
-+HREF="#FIELDDISPATTRIB"
-+>Field Display Attributes</A
-+></DT
-+><DT
-+>18.3.5. <A
-+HREF="#FIELDOPTIONBITS"
-+>Field Option Bits</A
-+></DT
-+><DT
-+>18.3.6. <A
-+HREF="#FIELDSTATUS"
-+>Field Status</A
-+></DT
-+><DT
-+>18.3.7. <A
-+HREF="#FIELDUSERPTR"
-+>Field User Pointer</A
-+></DT
-+><DT
-+>18.3.8. <A
-+HREF="#VARIABLESIZEFIELDS"
-+>Variable-Sized Fields</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>18.4. <A
-+HREF="#FORMWINDOWS"
-+>Form Windows</A
-+></DT
-+><DT
-+>18.5. <A
-+HREF="#FILEDVALIDATE"
-+>Field Validation</A
-+></DT
-+><DT
-+>18.6. <A
-+HREF="#FORMDRIVER"
-+>Form Driver: The work horse of the forms system</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>18.6.1. <A
-+HREF="#PAGENAVREQ"
-+>Page Navigation Requests</A
-+></DT
-+><DT
-+>18.6.2. <A
-+HREF="#INTERFIELDNAVREQ"
-+>Inter-Field Navigation Requests</A
-+></DT
-+><DT
-+>18.6.3. <A
-+HREF="#INTRAFIELDNAVREQ"
-+>Intra-Field Navigation Requests</A
-+></DT
-+><DT
-+>18.6.4. <A
-+HREF="#SCROLLREQ"
-+>Scrolling Requests</A
-+></DT
-+><DT
-+>18.6.5. <A
-+HREF="#EDITREQ"
-+>Editing Requests</A
-+></DT
-+><DT
-+>18.6.6. <A
-+HREF="#ORDERREQ"
-+>Order Requests</A
-+></DT
-+><DT
-+>18.6.7. <A
-+HREF="#APPLICCOMMANDS"
-+>Application Commands</A
-+></DT
-+></DL
-+></DD
-+></DL
-+></DD
-+><DT
-+>19. <A
-+HREF="#TOOLS"
-+>Tools and Widget Libraries</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>19.1. <A
-+HREF="#CDK"
-+>CDK (Curses Development Kit)</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>19.1.1. <A
-+HREF="#WIDGETLIST"
-+>Widget List</A
-+></DT
-+><DT
-+>19.1.2. <A
-+HREF="#CDKATTRACT"
-+>Some Attractive Features</A
-+></DT
-+><DT
-+>19.1.3. <A
-+HREF="#CDKCONCLUSION"
-+>Conclusion</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>19.2. <A
-+HREF="#DIALOG"
-+>The dialog</A
-+></DT
-+><DT
-+>19.3. <A
-+HREF="#PERLCURSES"
-+>Perl Curses Modules CURSES::FORM and CURSES::WIDGETS</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>20. <A
-+HREF="#JUSTFORFUN"
-+>Just For Fun !!!</A
-+></DT
-+><DD
-+><DL
-+><DT
-+>20.1. <A
-+HREF="#GAMEOFLIFE"
-+>The Game of Life</A
-+></DT
-+><DT
-+>20.2. <A
-+HREF="#MAGIC"
-+>Magic Square</A
-+></DT
-+><DT
-+>20.3. <A
-+HREF="#HANOI"
-+>Towers of Hanoi</A
-+></DT
-+><DT
-+>20.4. <A
-+HREF="#QUEENS"
-+>Queens Puzzle</A
-+></DT
-+><DT
-+>20.5. <A
-+HREF="#SHUFFLE"
-+>Shuffle</A
-+></DT
-+><DT
-+>20.6. <A
-+HREF="#TT"
-+>Typing Tutor</A
-+></DT
-+></DL
-+></DD
-+><DT
-+>21. <A
-+HREF="#REF"
-+>References</A
-+></DT
-+></DL
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><H2
-+CLASS="SECT1"
-+><A
-+NAME="INTRO"
-+>1. Introduction</A
-+></H2
-+><P
-+>In the olden days of teletype terminals, terminals were away from computers and
-+were connected to them through serial cables. The terminals could be configured
-+by sending a series of bytes. All the capabilities (such as
-+moving the cursor to a new location, erasing part of the screen, scrolling the
-+screen, changing modes etc.) of terminals could be accessed through these
-+series of bytes. These control seeuqnces are usually called escape sequences,
-+because they start
-+with an escape(0x1B) character. Even today, with proper emulation, we can send
-+escape sequences to the emulator and achieve the same effect on a terminal
-+window.</P
-+><P
-+>Suppose you wanted to print a line in color. Try typing this on your console.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>echo "^[[0;31;40mIn Color"</PRE
-+><P
-+>The first character is an escape character, which looks like two characters ^
-+and [. To be able to print it, you have to press CTRL+V and then the ESC key.
-+All the others are normal printable characters. You should be able to see the
-+string "In Color" in red. It stays that way and to revert back to the original
-+mode type this.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>echo "^[[0;37;40m"</PRE
-+><P
-+>Now, what do these magic characters mean? Difficult to comprehend? They might
-+even be different for different terminals. So the designers of UNIX invented a
-+mechanism named <TT
-+CLASS="LITERAL"
-+>termcap</TT
-+>. It is a file that
-+lists all the capabilities of a particular terminal, along with the escape
-+sequences needed to achieve a particular effect. In the later years, this was
-+replaced by <TT
-+CLASS="LITERAL"
-+>terminfo</TT
-+>. Without delving too
-+much into details, this mechanism allows application
-+programs to query the terminfo database and obtain the control characters to be
-+sent to a terminal or terminal emulator.</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="WHATIS"
-+>1.1. What is NCURSES?</A
-+></H3
-+><P
-+>
-+You might be wondering, what the import of all this technical gibberish is. In
-+the above scenario, every application program is supposed to query the terminfo
-+and perform the necessary stuff (sending control characters etc.). It soon became
-+difficult to manage this complexity and this gave birth to 'CURSES'. Curses is
-+a pun on the name "cursor optimization". The Curses library forms a wrapper
-+over working with raw terminal codes, and provides highly flexible and
-+efficient API (Application Programming Interface). It provides functions to
-+move the cursor, create windows, produce colors, play with mouse etc. The
-+application programs need not worry about the underlying terminal capabilities.</P
-+><P
-+>So what is NCURSES? NCURSES is a clone of the original System V Release 4.0
-+(SVr4) curses. It is a freely distributable library, fully compatible with
-+older version of curses. In short, it is a library of functions that manages
-+an application's display on character-cell terminals. In the remainder of the
-+document, the terms curses and ncurses are used interchangeably. </P
-+><P
-+>A detailed history of NCURSES can be found in the NEWS file from the source
-+distribution. The current package is maintained by
-+<A
-+HREF="mailto:dickey@his.com"
-+TARGET="_top"
-+>Thomas Dickey</A
-+>.
-+You can contact the maintainers at <A
-+HREF="mailto:bug-ncurses@gnu.org"
-+TARGET="_top"
-+>bug-ncurses@gnu.org</A
-+>.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="WHATCANWEDO"
-+>1.2. What we can do with NCURSES</A
-+></H3
-+><P
-+>NCURSES not only creates a wrapper over terminal capabilities, but also gives a
-+robust framework to create nice looking UI (User Interface)s in text mode. It
-+provides functions to create windows etc. Its sister libraries panel, menu and
-+form provide an extension to the basic curses library. These libraries usually
-+come along with curses. One can create applications that contain multiple
-+windows, menus, panels and forms. Windows can be managed independently, can
-+provide 'scrollability' and even can be hidden.</P
-+><P
-+>
-+Menus provide the user with an easy command selection option. Forms allow the
-+creation of easy-to-use data entry and display windows. Panels extend the
-+capabilities of ncurses to deal with overlapping and stacked windows.</P
-+><P
-+>These are just some of the basic things we can do with ncurses. As we move
-+along, We will see all the capabilities of these libraries. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="WHERETOGETIT"
-+>1.3. Where to get it</A
-+></H3
-+><P
-+>All right, now that you know what you can do with ncurses, you must be rearing
-+to get started. NCURSES is usually shipped with your installation. In case
-+you don't have the library or want to compile it on your own, read on.</P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>Compiling the package</I
-+></SPAN
-+> </P
-+><P
-+>NCURSES can be obtained from <A
-+HREF="ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses.tar.gz"
-+TARGET="_top"
-+>ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses.tar.gz</A
-+> or any of the ftp
-+sites mentioned in <A
-+HREF="http://www.gnu.org/order/ftp.html"
-+TARGET="_top"
-+>http://www.gnu.org/order/ftp.html</A
-+>. </P
-+><P
-+>Read the README and INSTALL files for details on to how to install it. It
-+usually involves the following operations.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> tar zxvf ncurses&lt;version&gt;.tar.gz # unzip and untar the archive
- cd ncurses&lt;version&gt; # cd to the directory
- ./configure # configure the build according to your
- # environment
- make # make it
- su root # become root
-- make install # install it</font>
--</pre></td>
--</tr>
--</table>
--<p><em>Using the RPM</em></p>
--<p>NCURSES RPM can be found and downloaded from <a href=
--"http://rpmfind.net" target="_top">http://rpmfind.net</a> . The RPM
--can be installed with the following command after becoming
--root.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> rpm -i &lt;downloaded rpm&gt;</font>
--</pre></td>
--</tr>
--</table>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="PURPOSE" id="PURPOSE">1.4. Purpose/Scope
--of the document</a></h3>
--<p>This document is intended to be a "All in One" guide for
--programming with ncurses and its sister libraries. We graduate from
--a simple "Hello World" program to more complex form manipulation.
--No prior experience in ncurses is assumed. The writing is informal,
--but a lot of detail is provided for each of the examples.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ABOUTPROGRAMS" id="ABOUTPROGRAMS">1.5.
--About the Programs</a></h3>
--<p>All the programs in the document are available in zipped form
--<a href=
--"http://www.tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs.tar.gz"
--target="_top">here</a>. Unzip and untar it. The directory structure
--looks like this.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000">ncurses
-+ make install # install it</PRE
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>Using the RPM </I
-+></SPAN
-+></P
-+><P
-+>NCURSES RPM can be found and downloaded from <A
-+HREF="http://rpmfind.net"
-+TARGET="_top"
-+>http://rpmfind.net </A
-+>. The RPM can be installed with the following
-+command after becoming root.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> rpm -i &lt;downloaded rpm&gt;</PRE
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="PURPOSE"
-+>1.4. Purpose/Scope of the document</A
-+></H3
-+><P
-+>This document is intended to be a "All in One" guide for programming with
-+ncurses and its sister libraries. We graduate from a simple "Hello World"
-+program to more complex form manipulation. No prior experience in ncurses is
-+assumed. The writing is informal, but a lot of detail is provided for
-+each of the examples.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ABOUTPROGRAMS"
-+>1.5. About the Programs</A
-+></H3
-+><P
-+>All the programs in the document are available in zipped form
-+<A
-+HREF="http://www.tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs.tar.gz"
-+TARGET="_top"
-+>here</A
-+>. Unzip and untar it. The directory structure looks like this.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>ncurses
- |
- |----&gt; JustForFun -- just for fun programs
- |----&gt; basics -- basic programs
-@@ -524,16 +1290,12 @@
- | by Anuradha Ratnaweera)
- |----&gt; Makefile -- the top level Makefile
- |----&gt; README -- the top level README file. contains instructions
-- |----&gt; COPYING -- copyright notice</font>
--</pre></td>
--</tr>
--</table>
--<p>The individual directories contain the following files.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000">Description of files in each directory
-+ |----&gt; COPYING -- copyright notice</PRE
-+><P
-+>The individual directories contain the following files.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>Description of files in each directory
- --------------------------------------
- JustForFun
- |
-@@ -592,73 +1354,96 @@
- |----&gt; panel_simple.c -- A simple panel example
-
- perl
-- |----&gt; 01-10.pl -- Perl equivalents of first ten example programs</font>
--</pre></td>
--</tr>
--</table>
--<p>There is a top level Makefile included in the main directory. It
--builds all the files and puts the ready-to-use exes in demo/exe
--directory. You can also do selective make by going into the
--corresponding directory. Each directory contains a README file
--explaining the purpose of each c file in the directory.</p>
--<p>For every example, I have included path name for the file
--relative to the examples directory.</p>
--<p>If you prefer browsing individual programs, point your browser
--to <a href=
--"http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs/"
--target=
--"_top">http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs/</a></p>
--<p>All the programs are released under the same license that is
--used by ncurses (MIT-style). This gives you the ability to do
--pretty much anything other than claiming them as yours. Feel free
--to use them in your programs as appropriate.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="OTHERFORMATS" id="OTHERFORMATS">1.6.
--Other Formats of the document</a></h3>
--<p>This howto is also availabe in various other formats on the
--tldp.org site. Here are the links to other formats of this
--document.</p>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="LISTFORMATS" id="LISTFORMATS">1.6.1.
--Readily available formats from tldp.org</a></h4>
--<ul>
--<li>
--<p><a href=
--"http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/NCURSES-Programming-HOWTO.pdf"
--target="_top">Acrobat PDF Format</a></p>
--</li>
--<li>
--<p><a href=
--"http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/ps/NCURSES-Programming-HOWTO.ps.gz"
--target="_top">PostScript Format</a></p>
--</li>
--<li>
--<p><a href=
--"http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html/NCURSES-Programming-HOWTO-html.tar.gz"
--target="_top">In Multiple HTML pages</a></p>
--</li>
--<li>
--<p><a href=
--"http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/NCURSES-Programming-HOWTO.html"
--target="_top">In One big HTML format</a></p>
--</li>
--</ul>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="BUILDSOURCE" id="BUILDSOURCE">1.6.2.
--Building from source</a></h4>
--<p>If above links are broken or if you want to experiment with sgml
--read on.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">&#13; Get both the source and the tar,gzipped programs, available at
-+ |----&gt; 01-10.pl -- Perl equivalents of first ten example programs</PRE
-+><P
-+>There is a top level Makefile included in the main directory. It builds all the
-+files and puts the ready-to-use exes in demo/exe directory. You can also
-+do selective make by going into the corresponding directory. Each directory
-+contains a README file explaining the purpose of each c file in the directory.</P
-+><P
-+>For every example, I have included path name for the file relative to the
-+examples directory. </P
-+><P
-+> If you prefer browsing individual programs, point your browser to
-+<A
-+HREF="http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs/"
-+TARGET="_top"
-+>http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/ncurses_programs/</A
-+></P
-+><P
-+>All the programs are released under the same license that is used by ncurses
-+(MIT-style). This gives you the ability to do pretty much anything other than
-+claiming them as yours. Feel free to use them in your programs as appropriate.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="OTHERFORMATS"
-+>1.6. Other Formats of the document</A
-+></H3
-+><P
-+>This howto is also availabe in various other formats on the tldp.org site.
-+Here are the links to other formats of this document.</P
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="LISTFORMATS"
-+>1.6.1. Readily available formats from tldp.org</A
-+></H4
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+><A
-+HREF="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/NCURSES-Programming-HOWTO.pdf"
-+TARGET="_top"
-+>Acrobat PDF Format</A
-+></P
-+></LI
-+><LI
-+><P
-+><A
-+HREF="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/ps/NCURSES-Programming-HOWTO.ps.gz"
-+TARGET="_top"
-+>PostScript Format</A
-+></P
-+></LI
-+><LI
-+><P
-+><A
-+HREF="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html/NCURSES-Programming-HOWTO-html.tar.gz"
-+TARGET="_top"
-+>In Multiple HTML pages</A
-+></P
-+></LI
-+><LI
-+><P
-+><A
-+HREF="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/NCURSES-Programming-HOWTO.html"
-+TARGET="_top"
-+>In One big HTML format</A
-+></P
-+></LI
-+></UL
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="BUILDSOURCE"
-+>1.6.2. Building from source</A
-+></H4
-+><P
-+>If above links are broken or if you want to experiment with sgml read on.
-+<PRE
-+CLASS="PROGRAMLISTING"
-+>&#13; Get both the source and the tar,gzipped programs, available at
- http://cvsview.tldp.org/index.cgi/LDP/howto/docbook/
- NCURSES-HOWTO/NCURSES-Programming-HOWTO.sgml
- http://cvsview.tldp.org/index.cgi/LDP/howto/docbook/
-@@ -679,588 +1464,862 @@
- NCURSES-ONE-BIG-FILE.html
- for ps, you would use
- htmldoc --size universal -t ps --firstpage p1 -f &lt;output file name.ps&gt;
-- NCURSES-ONE-BIG-FILE.html</font>
--</pre></td>
--</tr>
--</table>
--<p>See <a href="http://www.tldp.org/LDP/LDP-Author-Guide/" target=
--"_top">LDP Author guide</a> for more details. If all else failes,
--mail me at <a href="ppadala@gmail.com" target=
--"_top">ppadala@gmail.com</a></p>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="CREDITS" id="CREDITS">1.7.
--Credits</a></h3>
--<p>I thank <a href="mailto:sharath_1@usa.net" target=
--"_top">Sharath</a> and Emre Akbas for helping me with few sections.
--The introduction was initially written by sharath. I rewrote it
--with few excerpts taken from his initial work. Emre helped in
--writing printw and scanw sections.</p>
--<p>Perl equivalents of the example programs are contributed by
--<a href="mailto:Aratnaweera@virtusa.com" target="_top">Anuradha
--Ratnaweera</a>.</p>
--<p>Then comes <a href="mailto:parimi@ece.arizona.edu" target=
--"_top">Ravi Parimi</a>, my dearest friend, who has been on this
--project before even one line was written. He constantly bombarded
--me with suggestions and patiently reviewed the whole text. He also
--checked each program on Linux and Solaris.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="WISHLIST" id="WISHLIST">1.8. Wish
--List</a></h3>
--<p>This is the wish list, in the order of priority. If you have a
--wish or you want to work on completing the wish, mail <a href=
--"mailto:ppadala@gmail.com" target="_top">me</a>.</p>
--<ul>
--<li>
--<p>Add examples to last parts of forms section.</p>
--</li>
--<li>
--<p>Prepare a Demo showing all the programs and allow the user to
--browse through description of each program. Let the user compile
--and see the program in action. A dialog based interface is
--preferred.</p>
--</li>
--<li>
--<p>Add debug info. _tracef, _tracemouse stuff.</p>
--</li>
--<li>
--<p>Accessing termcap, terminfo using functions provided by ncurses
--package.</p>
--</li>
--<li>
--<p>Working on two terminals simultaneously.</p>
--</li>
--<li>
--<p>Add more stuff to miscellaneous section.</p>
--</li>
--</ul>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="COPYRIGHT" id="COPYRIGHT">1.9.
--Copyright</a></h3>
--<p>Copyright &copy; 2001 by Pradeep Padala.</p>
--<p>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:</p>
--<p>The above copyright notice and this permission notice shall be
--included in all copies or substantial portions of the Software.</p>
--<p>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.</p>
--<p>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.</p>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="HELLOWORLD" id="HELLOWORLD">2. Hello
--World !!!</a></h2>
--<p>Welcome to the world of curses. Before we plunge into the
--library and look into its various features, let's write a simple
--program and say hello to the world.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="COMPILECURSES" id="COMPILECURSES">2.1.
--Compiling With the NCURSES Library</a></h3>
--<p>To use ncurses library functions, you have to include ncurses.h
--in your programs. To link the program with ncurses the flag
---lncurses should be added.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> #include &lt;ncurses.h&gt;
-+ NCURSES-ONE-BIG-FILE.html</PRE
-+></P
-+><P
-+>See <A
-+HREF="http://www.tldp.org/LDP/LDP-Author-Guide/"
-+TARGET="_top"
-+>LDP Author guide</A
-+> for more details. If all else failes, mail me at
-+<A
-+HREF="ppadala@gmail.com"
-+TARGET="_top"
-+>ppadala@gmail.com</A
-+></P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="CREDITS"
-+>1.7. Credits</A
-+></H3
-+><P
-+>I thank <A
-+HREF="mailto:sharath_1@usa.net"
-+TARGET="_top"
-+>Sharath</A
-+> and Emre Akbas for
-+helping me with few sections. The introduction was initially written by sharath.
-+I rewrote it with few excerpts taken from his initial work. Emre helped in
-+writing printw and scanw sections.</P
-+><P
-+>Perl equivalents of the example programs are contributed by <A
-+HREF="mailto:Aratnaweera@virtusa.com"
-+TARGET="_top"
-+>Anuradha Ratnaweera</A
-+>. </P
-+><P
-+>Then comes <A
-+HREF="mailto:parimi@ece.arizona.edu"
-+TARGET="_top"
-+>Ravi Parimi</A
-+>, my
-+dearest friend, who has been on this project before even one line was written.
-+He constantly bombarded me with suggestions and patiently reviewed the whole
-+text. He also checked each program on Linux and Solaris. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="WISHLIST"
-+>1.8. Wish List</A
-+></H3
-+><P
-+>This is the wish list, in the order of priority. If you have a wish or you want
-+to work on completing the wish, mail <A
-+HREF="mailto:ppadala@gmail.com"
-+TARGET="_top"
-+>me</A
-+>. </P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+>Add examples to last parts of forms section.</P
-+></LI
-+><LI
-+><P
-+>Prepare a Demo showing all the programs and allow the user to browse through
-+description of each program. Let the user compile and see the program in action.
-+A dialog based interface is preferred.</P
-+></LI
-+><LI
-+><P
-+>Add debug info. _tracef, _tracemouse stuff.</P
-+></LI
-+><LI
-+><P
-+>Accessing termcap, terminfo using functions provided by ncurses
-+package.</P
-+></LI
-+><LI
-+><P
-+>Working on two terminals simultaneously.</P
-+></LI
-+><LI
-+><P
-+>Add more stuff to miscellaneous section.</P
-+></LI
-+></UL
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="COPYRIGHT"
-+>1.9. Copyright</A
-+></H3
-+><P
-+>Copyright &copy; 2001 by Pradeep Padala. </P
-+><P
-+>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:</P
-+><P
-+>The above copyright notice and this permission notice shall be included in all
-+copies or substantial portions of the Software.</P
-+><P
-+>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.</P
-+><P
-+>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. </P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="HELLOWORLD"
-+>2. Hello World !!!</A
-+></H2
-+><P
-+>Welcome to the world of curses. Before we plunge into the library and look into
-+its various features, let's write a simple program and say
-+hello to the world. </P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="COMPILECURSES"
-+>2.1. Compiling With the NCURSES Library</A
-+></H3
-+><P
-+>To use ncurses library functions, you have to include ncurses.h in your
-+programs. To link the
-+program with ncurses the flag -lncurses should be added.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> #include &lt;ncurses.h&gt;
- .
- .
- .
-
-- compile and link: gcc &lt;program file&gt; -lncurses</font>
--</pre></td>
--</tr>
--</table>
--<div class="EXAMPLE"><a name="BHW" id="BHW"></a>
--<p><b>Example 1. The Hello World !!! Program</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt;
-+ compile and link: gcc &lt;program file&gt; -lncurses</PRE
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BHW"
-+></A
-+><P
-+><B
-+>Example 1. The Hello World !!! Program </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62;
-
- int main()
--{
-- initscr(); /* Start curses mode */
-- printw("Hello World !!!"); /* Print Hello World */
-- refresh(); /* Print it on to the real screen */
-- getch(); /* Wait for user input */
-- endwin(); /* End curses mode */
--
-- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="DISSECTION" id="DISSECTION">2.2.
--Dissection</a></h3>
--<p>The above program prints "Hello World !!!" to the screen and
--exits. This program shows how to initialize curses and do screen
--manipulation and end curses mode. Let's dissect it line by
--line.</p>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="ABOUT-INITSCR" id="ABOUT-INITSCR">2.2.1.
--About initscr()</a></h4>
--<p>The function initscr() initializes the terminal in curses mode.
--In some implementations, it clears the screen and presents a blank
--screen. To do any screen manipulation using curses package this has
--to be called first. This function initializes the curses system and
--allocates memory for our present window (called <var class=
--"LITERAL">stdscr</var>) and some other data-structures. Under
--extreme cases this function might fail due to insufficient memory
--to allocate memory for curses library's data structures.</p>
--<p>After this is done, we can do a variety of initializations to
--customize our curses settings. These details will be explained
--<a href="#INIT">later</a> .</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="MYST-REFRESH" id="MYST-REFRESH">2.2.2.
--The mysterious refresh()</a></h4>
--<p>The next line printw prints the string "Hello World !!!" on to
--the screen. This function is analogous to normal printf in all
--respects except that it prints the data on a window called stdscr
--at the current (y,x) co-ordinates. Since our present co-ordinates
--are at 0,0 the string is printed at the left hand corner of the
--window.</p>
--<p>This brings us to that mysterious refresh(). Well, when we
--called printw the data is actually written to an imaginary window,
--which is not updated on the screen yet. The job of printw is to
--update a few flags and data structures and write the data to a
--buffer corresponding to stdscr. In order to show it on the screen,
--we need to call refresh() and tell the curses system to dump the
--contents on the screen.</p>
--<p>The philosophy behind all this is to allow the programmer to do
--multiple updates on the imaginary screen or windows and do a
--refresh once all his screen update is done. refresh() checks the
--window and updates only the portion which has been changed. This
--improves performance and offers greater flexibility too. But, it is
--sometimes frustrating to beginners. A common mistake committed by
--beginners is to forget to call refresh() after they did some update
--through printw() class of functions. I still forget to add it
--sometimes :-)</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="ABOUT-ENDWIN" id="ABOUT-ENDWIN">2.2.3.
--About endwin()</a></h4>
--<p>And finally don't forget to end the curses mode. Otherwise your
--terminal might behave strangely after the program quits. endwin()
--frees the memory taken by curses sub-system and its data structures
--and puts the terminal in normal mode. This function must be called
--after you are done with the curses mode.</p>
--</div>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="GORY" id="GORY">3. The Gory
--Details</a></h2>
--<p>Now that we have seen how to write a simple curses program let's
--get into the details. There are many functions that help customize
--what you see on screen and many features which can be put to full
--use.</p>
--<p>Here we go...</p>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="INIT" id="INIT">4.
--Initialization</a></h2>
--<p>We now know that to initialize curses system the function
--initscr() has to be called. There are functions which can be called
--after this initialization to customize our curses session. We may
--ask the curses system to set the terminal in raw mode or initialize
--color or initialize the mouse etc.. Let's discuss some of the
--functions that are normally called immediately after initscr();</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ABOUTINIT" id="ABOUTINIT">4.1.
--Initialization functions</a></h3>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="RAWCBREAK" id="RAWCBREAK">4.2. raw() and
--cbreak()</a></h3>
--<p>Normally the terminal driver buffers the characters a user types
--until a new line or carriage return is encountered. But most
--programs require that the characters be available as soon as the
--user types them. The above two functions are used to disable line
--buffering. The difference between these two functions is in the way
--control characters like suspend (CTRL-Z), interrupt and quit
--(CTRL-C) are passed to the program. In the raw() mode these
--characters are directly passed to the program without generating a
--signal. In the <var class="LITERAL">cbreak()</var> mode these
--control characters are interpreted as any other character by the
--terminal driver. I personally prefer to use raw() as I can exercise
--greater control over what the user does.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ECHONOECHO" id="ECHONOECHO">4.3. echo()
--and noecho()</a></h3>
--<p>These functions control the echoing of characters typed by the
--user to the terminal. <var class="LITERAL">noecho()</var> switches
--off echoing. The reason you might want to do this is to gain more
--control over echoing or to suppress unnecessary echoing while
--taking input from the user through the getch() etc. functions. Most
--of the interactive programs call <var class=
--"LITERAL">noecho()</var> at initialization and do the echoing of
--characters in a controlled manner. It gives the programmer the
--flexibility of echoing characters at any place in the window
--without updating current (y,x) co-ordinates.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="KEYPAD" id="KEYPAD">4.4.
--keypad()</a></h3>
--<p>This is my favorite initialization function. It enables the
--reading of function keys like F1, F2, arrow keys etc. Almost every
--interactive program enables this, as arrow keys are a major part of
--any User Interface. Do <var class="LITERAL">keypad(stdscr,
--TRUE)</var> to enable this feature for the regular screen (stdscr).
--You will learn more about key management in later sections of this
--document.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="HALFDELAY" id="HALFDELAY">4.5.
--halfdelay()</a></h3>
--<p>This function, though not used very often, is a useful one at
--times. halfdelay()is called to enable the half-delay mode, which is
--similar to the cbreak() mode in that characters typed are
--immediately available to program. However, it waits for 'X' tenths
--of a second for input and then returns ERR, if no input is
--available. 'X' is the timeout value passed to the function
--halfdelay(). This function is useful when you want to ask the user
--for input, and if he doesn't respond with in certain time, we can
--do some thing else. One possible example is a timeout at the
--password prompt.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MISCINIT" id="MISCINIT">4.6.
--Miscellaneous Initialization functions</a></h3>
--<p>There are few more functions which are called at initialization
--to customize curses behavior. They are not used as extensively as
--those mentioned above. Some of them are explained where
--appropriate.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="INITEX" id="INITEX">4.7. An
--Example</a></h3>
--<p>Let's write a program which will clarify the usage of these
--functions.</p>
--<div class="EXAMPLE"><a name="BINFU" id="BINFU"></a>
--<p><b>Example 2. Initialization Function Usage example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt;
-+{
-+ initscr(); /* Start curses mode */
-+ printw("Hello World !!!"); /* Print Hello World */
-+ refresh(); /* Print it on to the real screen */
-+ getch(); /* Wait for user input */
-+ endwin(); /* End curses mode */
-+
-+ return 0;
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="DISSECTION"
-+>2.2. Dissection</A
-+></H3
-+><P
-+>
-+The above program prints "Hello World !!!" to the screen and exits. This
-+program shows how to initialize curses and do screen manipulation and
-+end curses mode. Let's dissect it line by line. </P
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="ABOUT-INITSCR"
-+>2.2.1. About initscr()</A
-+></H4
-+><P
-+>The function initscr() initializes the terminal in curses mode. In some
-+implementations, it clears the screen and presents a blank screen. To do any
-+screen manipulation using curses package this has to be called first. This
-+function initializes the curses system and allocates memory for our present
-+window (called <TT
-+CLASS="LITERAL"
-+>stdscr</TT
-+>) and some other data-structures. Under extreme
-+cases this function might fail due to insufficient memory to allocate memory
-+for curses library's data structures. </P
-+><P
-+>
-+After this is done, we can do a variety of initializations to customize
-+our curses settings. These details will be explained <A
-+HREF="#INIT"
-+>later </A
-+>.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="MYST-REFRESH"
-+>2.2.2. The mysterious refresh()</A
-+></H4
-+><P
-+>The next line printw prints the string "Hello World !!!" on to the screen. This
-+function is analogous to normal printf in all respects except that it prints
-+the data on a window called stdscr at the current (y,x) co-ordinates. Since our
-+present co-ordinates are at 0,0 the string is printed at the left hand corner
-+of the window.</P
-+><P
-+>This brings us to that mysterious refresh(). Well, when we called printw
-+the data is actually written to an imaginary window, which is not updated
-+on the screen yet. The job of printw is to update a few flags
-+and data structures and write the data to a buffer corresponding to stdscr.
-+In order to show it on the screen, we need to call refresh() and tell the
-+curses system to dump the contents on the screen.</P
-+><P
-+>The philosophy behind all this is to allow the programmer to do multiple updates
-+on the imaginary screen or windows and do a refresh once all his screen update
-+is done. refresh() checks the window and updates only the portion which has been
-+changed. This improves performance and offers greater flexibility too. But, it is
-+sometimes frustrating to beginners. A common mistake committed by beginners is
-+to forget to call refresh() after they did some update through printw() class of
-+functions. I still forget to add it sometimes :-) </P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="ABOUT-ENDWIN"
-+>2.2.3. About endwin()</A
-+></H4
-+><P
-+>And finally don't forget to end the curses mode. Otherwise your terminal might
-+behave strangely after the program quits. endwin() frees the memory taken by
-+curses sub-system and its data structures and puts the terminal in normal
-+mode. This function must be called after you are done with the curses mode. </P
-+></DIV
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="GORY"
-+>3. The Gory Details</A
-+></H2
-+><P
-+>Now that we have seen how to write a simple curses program let's get into the
-+details. There are many functions that help customize what you see on screen and
-+many features which can be put to full use. </P
-+><P
-+>Here we go...</P
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="INIT"
-+>4. Initialization</A
-+></H2
-+><P
-+>We now know that to initialize curses system the function initscr() has to be
-+called. There are functions which can be called after this initialization to
-+customize our curses session. We may ask the curses system to set the terminal
-+in raw mode or initialize color or initialize the mouse etc.. Let's discuss some
-+of the functions that are normally called immediately after initscr();</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ABOUTINIT"
-+>4.1. Initialization functions</A
-+></H3
-+><P
-+> </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="RAWCBREAK"
-+>4.2. raw() and cbreak()</A
-+></H3
-+><P
-+>Normally the terminal driver buffers the characters a user types until a new
-+line or carriage return is encountered. But most programs require that the
-+characters be available as soon as the user types them. The above two functions
-+are used to disable line buffering. The difference between these two functions
-+is in the way control characters like suspend (CTRL-Z), interrupt and quit
-+(CTRL-C) are passed to the program. In the raw() mode these characters are
-+directly passed to the program without generating a signal. In the
-+<TT
-+CLASS="LITERAL"
-+>cbreak()</TT
-+> mode these control characters are
-+interpreted as any other character by the terminal driver. I personally prefer
-+to use raw() as I can exercise greater control over what the user does.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ECHONOECHO"
-+>4.3. echo() and noecho()</A
-+></H3
-+><P
-+>
-+These functions control the echoing of characters typed by the user to the
-+terminal. <TT
-+CLASS="LITERAL"
-+>noecho()</TT
-+> switches off echoing. The
-+reason you might want to do this is to gain more control over echoing or to
-+suppress unnecessary echoing while taking input from the user through the
-+getch() etc. functions. Most of the interactive programs call
-+<TT
-+CLASS="LITERAL"
-+>noecho()</TT
-+> at initialization and do the echoing
-+of characters in a controlled manner. It gives the programmer the flexibility
-+of echoing characters at any place in the window without updating current (y,x)
-+co-ordinates. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="KEYPAD"
-+>4.4. keypad()</A
-+></H3
-+><P
-+>This is my favorite initialization function. It enables the reading of function
-+keys like F1, F2, arrow keys etc. Almost every interactive program enables this,
-+as arrow keys are a major part of any User Interface. Do
-+<TT
-+CLASS="LITERAL"
-+>keypad(stdscr, TRUE) </TT
-+> to enable this feature
-+for the regular screen (stdscr). You will learn more about key management in
-+later sections of this document.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="HALFDELAY"
-+>4.5. halfdelay()</A
-+></H3
-+><P
-+>This function, though not used very often, is a useful one at times.
-+halfdelay()is called to enable the half-delay mode, which is similar to the
-+cbreak() mode in that characters typed are immediately available to program.
-+However, it waits for 'X' tenths of a second for input and then returns ERR, if
-+no input is available. 'X' is the timeout value passed to the function
-+halfdelay(). This function is useful when you want to ask the user for input,
-+and if he doesn't respond with in certain time, we can do some thing else. One
-+possible example is a timeout at the password prompt. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MISCINIT"
-+>4.6. Miscellaneous Initialization functions</A
-+></H3
-+><P
-+>There are few more functions which are called at initialization to
-+customize curses behavior. They are not used as extensively as those mentioned
-+above. Some of them are explained where appropriate.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="INITEX"
-+>4.7. An Example</A
-+></H3
-+><P
-+>Let's write a program which will clarify the usage of these functions.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BINFU"
-+></A
-+><P
-+><B
-+>Example 2. Initialization Function Usage example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62;
-
- int main()
--{ int ch;
-+{ int ch;
-
-- initscr(); /* Start curses mode */
-- raw(); /* Line buffering disabled */
-- keypad(stdscr, TRUE); /* We get F1, F2 etc.. */
-- noecho(); /* Don't echo() while we do getch */
--
-- printw("Type any character to see it in bold\n");
-- ch = getch(); /* If raw() hadn't been called
-- * we have to press enter before it
-- * gets to the program */
-- if(ch == KEY_F(1)) /* Without keypad enabled this will */
-- printw("F1 Key pressed");/* not get to us either */
-- /* Without noecho() some ugly escape
-- * charachters might have been printed
-- * on screen */
-- else
-- { printw("The pressed key is ");
-- attron(A_BOLD);
-- printw("%c", ch);
-- attroff(A_BOLD);
-- }
-- refresh(); /* Print it on to the real screen */
-- getch(); /* Wait for user input */
-- endwin(); /* End curses mode */
--
-- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>This program is self-explanatory. But I used functions which
--aren't explained yet. The function <var class=
--"LITERAL">getch()</var> is used to get a character from user. It is
--equivalent to normal <var class="LITERAL">getchar()</var> except
--that we can disable the line buffering to avoid &lt;enter&gt; after
--input. Look for more about <var class="LITERAL">getch()</var>and
--reading keys in the <a href="#KEYS">key management section</a> .
--The functions attron and attroff are used to switch some attributes
--on and off respectively. In the example I used them to print the
--character in bold. These functions are explained in detail
--later.</p>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="AWORDWINDOWS" id="AWORDWINDOWS">5. A
--Word about Windows</a></h2>
--<p>Before we plunge into the myriad ncurses functions, let me clear
--few things about windows. Windows are explained in detail in
--following <a href="#WINDOWS">sections</a></p>
--<p>A Window is an imaginary screen defined by curses system. A
--window does not mean a bordered window which you usually see on
--Win9X platforms. When curses is initialized, it creates a default
--window named <var class="LITERAL">stdscr</var> which represents
--your 80x25 (or the size of window in which you are running) screen.
--If you are doing simple tasks like printing few strings, reading
--input etc., you can safely use this single window for all of your
--purposes. You can also create windows and call functions which
--explicitly work on the specified window.</p>
--<p>For example, if you call</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> printw("Hi There !!!");
-- refresh();</font>
--</pre></td>
--</tr>
--</table>
--<p>It prints the string on stdscr at the present cursor position.
--Similarly the call to refresh(), works on stdscr only.</p>
--<p>Say you have created <a href="#WINDOWS">windows</a> then you
--have to call a function with a 'w' added to the usual function.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> wprintw(win, "Hi There !!!");
-- wrefresh(win);</font>
--</pre></td>
--</tr>
--</table>
--<p>As you will see in the rest of the document, naming of functions
--follow the same convention. For each function there usually are
--three more functions.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000"> printw(string); /* Print on stdscr at present cursor position */
-+ initscr(); /* Start curses mode */
-+ raw(); /* Line buffering disabled */
-+ keypad(stdscr, TRUE); /* We get F1, F2 etc.. */
-+ noecho(); /* Don't echo() while we do getch */
-+
-+ printw("Type any character to see it in bold\n");
-+ ch = getch(); /* If raw() hadn't been called
-+ * we have to press enter before it
-+ * gets to the program */
-+ if(ch == KEY_F(1)) /* Without keypad enabled this will */
-+ printw("F1 Key pressed");/* not get to us either */
-+ /* Without noecho() some ugly escape
-+ * charachters might have been printed
-+ * on screen */
-+ else
-+ { printw("The pressed key is ");
-+ attron(A_BOLD);
-+ printw("%c", ch);
-+ attroff(A_BOLD);
-+ }
-+ refresh(); /* Print it on to the real screen */
-+ getch(); /* Wait for user input */
-+ endwin(); /* End curses mode */
-+
-+ return 0;
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>This program is self-explanatory. But I used functions which aren't explained
-+yet. The function <TT
-+CLASS="LITERAL"
-+>getch()</TT
-+> is used to get a
-+character from user. It is equivalent to normal
-+<TT
-+CLASS="LITERAL"
-+>getchar()</TT
-+> except that we can disable the line
-+buffering to avoid &lt;enter&gt; after input. Look for more about
-+<TT
-+CLASS="LITERAL"
-+>getch()</TT
-+>and reading keys in the <A
-+HREF="#KEYS"
-+> key management section </A
-+>. The functions attron and attroff
-+are used to switch some attributes on and off respectively. In the example I
-+used them to print the character in bold. These functions are explained in detail
-+later.</P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="AWORDWINDOWS"
-+>5. A Word about Windows</A
-+></H2
-+><P
-+>
-+Before we plunge into the myriad ncurses functions, let me clear few things
-+about windows. Windows are explained in detail in following <A
-+HREF="#WINDOWS"
-+> sections </A
-+></P
-+><P
-+>A Window is an imaginary screen defined by curses system. A window does not mean
-+a bordered window which you usually see on Win9X platforms. When curses is
-+initialized, it creates a default window named
-+<TT
-+CLASS="LITERAL"
-+>stdscr</TT
-+> which represents your 80x25 (or the size
-+of window in which you are running) screen. If you are doing simple tasks like
-+printing few strings, reading input etc., you can safely use this single window
-+for all of your purposes. You can also create windows and call functions which
-+explicitly work on the specified window.</P
-+><P
-+>For example, if you call</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> printw("Hi There !!!");
-+ refresh();</PRE
-+><P
-+>It prints the string on stdscr at the present cursor position. Similarly the
-+call to refresh(), works on stdscr only. </P
-+><P
-+>Say you have created <A
-+HREF="#WINDOWS"
-+>windows</A
-+> then you have to
-+call a function with a 'w' added to the usual function.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> wprintw(win, "Hi There !!!");
-+ wrefresh(win);</PRE
-+><P
-+>As you will see in the rest of the document, naming of functions follow the
-+same convention. For each function there usually are three more functions.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> printw(string); /* Print on stdscr at present cursor position */
- mvprintw(y, x, string);/* Move to (y, x) then print string */
- wprintw(win, string); /* Print on window win at present cursor position */
- /* in the window */
- mvwprintw(win, y, x, string); /* Move to (y, x) relative to window */
-- /* co-ordinates and then print */</font>
--</pre></td>
--</tr>
--</table>
--<p>Usually the w-less functions are macros which expand to
--corresponding w-function with stdscr as the window parameter.</p>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="PRINTW" id="PRINTW">6. Output
--functions</a></h2>
--<p>I guess you can't wait any more to see some action. Back to our
--odyssey of curses functions. Now that curses is initialized, let's
--interact with world.</p>
--<p>There are three classes of functions which you can use to do
--output on screen.</p>
--<ol type="1">
--<li>
--<p>addch() class: Print single character with attributes</p>
--</li>
--<li>
--<p>printw() class: Print formatted output similar to printf()</p>
--</li>
--<li>
--<p>addstr() class: Print strings</p>
--</li>
--</ol>
--<p>These functions can be used interchangeably and it's a matter of
--style as to which class is used. Let's see each one in detail.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ADDCHCLASS" id="ADDCHCLASS">6.1. addch()
--class of functions</a></h3>
--<p>These functions put a single character into the current cursor
--location and advance the position of the cursor. You can give the
--character to be printed but they usually are used to print a
--character with some attributes. Attributes are explained in detail
--in later <a href="#ATTRIB">sections</a> of the document. If a
--character is associated with an attribute(bold, reverse video
--etc.), when curses prints the character, it is printed in that
--attribute.</p>
--<p>In order to combine a character with some attributes, you have
--two options:</p>
--<ul>
--<li>
--<p>By OR'ing a single character with the desired attribute macros.
--These attribute macros could be found in the header file
--<var class="LITERAL">ncurses.h</var>. For example, you want to
--print a character ch(of type char) bold and underlined, you would
--call addch() as below.</p>
--<table border="0" bgcolor="#E0E0E0" width="90%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> addch(ch | A_BOLD | A_UNDERLINE);</font>
--</pre></td>
--</tr>
--</table>
--</li>
--<li>
--<p>By using functions like <var class=
--"LITERAL">attrset(),attron(),attroff()</var>. These functions are
--explained in the <a href="#ATTRIB">Attributes</a> section. Briefly,
--they manipulate the current attributes of the given window. Once
--set, the character printed in the window are associated with the
--attributes until it is turned off.</p>
--</li>
--</ul>
--<p>Additionally, <var class="LITERAL">curses</var> provides some
--special characters for character-based graphics. You can draw
--tables, horizontal or vertical lines, etc. You can find all
--avaliable characters in the header file <var class=
--"LITERAL">ncurses.h</var>. Try looking for macros beginning with
--<var class="LITERAL">ACS_</var> in this file.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="AEN298" id="AEN298">6.2. mvaddch(),
--waddch() and mvwaddch()</a></h3>
--<p><var class="LITERAL">mvaddch()</var> is used to move the cursor
--to a given point, and then print. Thus, the calls:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000"> move(row,col); /* moves the cursor to row<em>th</em> row and col<em>th</em> column */
-- addch(ch);</font>
--</pre></td>
--</tr>
--</table>
-+ /* co-ordinates and then print */</PRE
-+><P
-+>Usually the w-less functions are macros which expand to corresponding w-function
-+with stdscr as the window parameter.</P
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="PRINTW"
-+>6. Output functions</A
-+></H2
-+><P
-+>I guess you can't wait any more to see some action. Back to our odyssey of
-+curses functions. Now that curses is initialized, let's interact with
-+world.</P
-+><P
-+>There are three classes of functions which you can use to do output on screen.
-+<P
-+></P
-+><OL
-+TYPE="1"
-+><LI
-+><P
-+>addch() class: Print single character with attributes </P
-+></LI
-+><LI
-+><P
-+>printw() class: Print formatted output similar to printf()</P
-+></LI
-+><LI
-+><P
-+>addstr() class: Print strings</P
-+></LI
-+></OL
-+></P
-+><P
-+>These functions can be used interchangeably and it's a matter of style as to
-+which class is used. Let's see each one in detail.</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ADDCHCLASS"
-+>6.1. addch() class of functions</A
-+></H3
-+><P
-+>These functions put a single character into the current cursor location and
-+advance the position of the cursor. You can give the character to be printed but
-+they usually are used to print a character with some attributes. Attributes are
-+explained in detail in later <A
-+HREF="#ATTRIB"
-+> sections </A
-+> of the
-+document. If a character is associated with an attribute(bold, reverse video
-+etc.), when curses prints the character, it is printed in that attribute.</P
-+><P
-+>In order to combine a character with some attributes, you have two options:</P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+>By OR'ing a single character with the desired attribute macros. These attribute
-+macros could be found in the header file
-+<TT
-+CLASS="LITERAL"
-+>ncurses.h</TT
-+>. For example, you want to print a
-+character ch(of type char) bold and underlined, you would call addch() as below.
-+<PRE
-+CLASS="PROGRAMLISTING"
-+> addch(ch | A_BOLD | A_UNDERLINE);</PRE
-+></P
-+></LI
-+><LI
-+><P
-+>By using functions like <TT
-+CLASS="LITERAL"
-+>attrset(),attron(),attroff()</TT
-+>. These functions are explained in the <A
-+HREF="#ATTRIB"
-+>Attributes</A
-+> section. Briefly, they manipulate the current attributes of
-+the given window. Once set, the character printed in the window are associated
-+with the attributes until it is turned off.</P
-+></LI
-+></UL
-+><P
-+>Additionally, <TT
-+CLASS="LITERAL"
-+>curses</TT
-+> provides some special
-+characters for character-based graphics. You can draw tables, horizontal or
-+vertical lines, etc. You can find all avaliable characters in the header file
-+<TT
-+CLASS="LITERAL"
-+>ncurses.h</TT
-+>. Try looking for macros beginning
-+with <TT
-+CLASS="LITERAL"
-+>ACS_</TT
-+> in this file. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="AEN298"
-+>6.2. mvaddch(), waddch() and mvwaddch()</A
-+></H3
-+><P
-+><TT
-+CLASS="LITERAL"
-+>mvaddch()</TT
-+> is used to move the cursor to a
-+given point, and then print. Thus, the calls:
-+<PRE
-+CLASS="PROGRAMLISTING"
-+> move(row,col); /* moves the cursor to row<SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>th</I
-+></SPAN
-+> row and col<SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>th</I
-+></SPAN
-+> column */
-+ addch(ch);</PRE
-+>
- can be replaced by
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> mvaddch(row,col,ch);</font>
--</pre></td>
--</tr>
--</table>
--<p><var class="LITERAL">waddch()</var> is similar to <var class=
--"LITERAL">addch()</var>, except that it adds a character into the
--given window. (Note that <var class="LITERAL">addch()</var> adds a
--character into the window <var class="LITERAL">stdscr</var>.)</p>
--<p>In a similar fashion <var class="LITERAL">mvwaddch()</var>
--function is used to add a character into the given window at the
--given coordinates.</p>
--<p>Now, we are familiar with the basic output function <var class=
--"LITERAL">addch()</var>. But, if we want to print a string, it
--would be very annoying to print it character by character.
--Fortunately, <var class="LITERAL">ncurses</var> provides
--<var class="LITERAL">printf</var><em>-like</em> or <var class=
--"LITERAL">puts</var><em>-like</em> functions.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="PRINTWCLASS" id="PRINTWCLASS">6.3.
--printw() class of functions</a></h3>
--<p>These functions are similar to <var class=
--"LITERAL">printf()</var> with the added capability of printing at
--any position on the screen.</p>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="PRINTWMVPRINTW" id=
--"PRINTWMVPRINTW">6.3.1. printw() and mvprintw</a></h4>
--<p>These two functions work much like <var class=
--"LITERAL">printf()</var>. <var class="LITERAL">mvprintw()</var> can
--be used to move the cursor to a position and then print. If you
--want to move the cursor first and then print using <var class=
--"LITERAL">printw()</var> function, use <var class=
--"LITERAL">move()</var> first and then use <var class=
--"LITERAL">printw()</var> though I see no point why one should avoid
--using <var class="LITERAL">mvprintw()</var>, you have the
--flexibility to manipulate.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="WPRINTWMVWPRINTW" id=
--"WPRINTWMVWPRINTW">6.3.2. wprintw() and mvwprintw</a></h4>
--<p>These two functions are similar to above two except that they
--print in the corresponding window given as argument.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="VWPRINTW" id="VWPRINTW">6.3.3.
--vwprintw()</a></h4>
--<p>This function is similar to <var class=
--"LITERAL">vprintf()</var>. This can be used when variable number of
--arguments are to be printed.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="SIMPLEPRINTWEX" id=
--"SIMPLEPRINTWEX">6.3.4. A Simple printw example</a></h4>
--<div class="EXAMPLE"><a name="BPREX" id="BPREX"></a>
--<p><b>Example 3. A Simple printw example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; /* ncurses.h includes stdio.h */
--#include &lt;string.h&gt;
-+<PRE
-+CLASS="PROGRAMLISTING"
-+> mvaddch(row,col,ch);</PRE
-+></P
-+><P
-+><TT
-+CLASS="LITERAL"
-+>waddch()</TT
-+> is similar to
-+<TT
-+CLASS="LITERAL"
-+>addch()</TT
-+>, except that it adds a character into
-+the given window. (Note that <TT
-+CLASS="LITERAL"
-+>addch()</TT
-+> adds a
-+character into the window <TT
-+CLASS="LITERAL"
-+>stdscr</TT
-+>.)</P
-+><P
-+>In a similar fashion <TT
-+CLASS="LITERAL"
-+>mvwaddch()</TT
-+> function is
-+used to add a character into the given window at the given coordinates.</P
-+><P
-+>Now, we are familiar with the basic output function
-+<TT
-+CLASS="LITERAL"
-+>addch()</TT
-+>. But, if we want to print a string, it
-+would be very annoying to print it character by character. Fortunately,
-+<TT
-+CLASS="LITERAL"
-+>ncurses</TT
-+> provides <TT
-+CLASS="LITERAL"
-+>printf</TT
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>-like</I
-+></SPAN
-+> or
-+<TT
-+CLASS="LITERAL"
-+>puts</TT
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>-like</I
-+></SPAN
-+> functions.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="PRINTWCLASS"
-+>6.3. printw() class of functions</A
-+></H3
-+><P
-+>These functions are similar to <TT
-+CLASS="LITERAL"
-+>printf()</TT
-+> with
-+the added capability of printing at any position on the screen. </P
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="PRINTWMVPRINTW"
-+>6.3.1. printw() and mvprintw</A
-+></H4
-+><P
-+>These two functions work much like <TT
-+CLASS="LITERAL"
-+>printf()</TT
-+>.
-+<TT
-+CLASS="LITERAL"
-+>mvprintw()</TT
-+> can be used to move the cursor to a
-+position and then print. If you want to move the cursor first and then print
-+using <TT
-+CLASS="LITERAL"
-+>printw()</TT
-+> function, use
-+<TT
-+CLASS="LITERAL"
-+>move() </TT
-+> first and then use
-+<TT
-+CLASS="LITERAL"
-+>printw()</TT
-+> though I see no point why one should
-+avoid using <TT
-+CLASS="LITERAL"
-+>mvprintw()</TT
-+>, you have the
-+flexibility to manipulate. </P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="WPRINTWMVWPRINTW"
-+>6.3.2. wprintw() and mvwprintw</A
-+></H4
-+><P
-+>These two functions are similar to above two except that they print in the
-+corresponding window given as argument. </P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="VWPRINTW"
-+>6.3.3. vwprintw()</A
-+></H4
-+><P
-+>This function is similar to <TT
-+CLASS="LITERAL"
-+>vprintf()</TT
-+>. This can
-+be used when variable number of arguments are to be printed.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="SIMPLEPRINTWEX"
-+>6.3.4. A Simple printw example</A
-+></H4
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BPREX"
-+></A
-+><P
-+><B
-+>Example 3. A Simple printw example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62; /* ncurses.h includes stdio.h */
-+#include &#60;string.h&#62;
-
- int main()
- {
-- char mesg[]="Just a string"; /* message to be appeared on the screen */
-- int row,col; /* to store the number of rows and *
-- * the number of colums of the screen */
-- initscr(); /* start the curses mode */
-- getmaxyx(stdscr,row,col); /* get the number of rows and columns */
-+ char mesg[]="Just a string"; /* message to be appeared on the screen */
-+ int row,col; /* to store the number of rows and *
-+ * the number of colums of the screen */
-+ initscr(); /* start the curses mode */
-+ getmaxyx(stdscr,row,col); /* get the number of rows and columns */
- mvprintw(row/2,(col-strlen(mesg))/2,"%s",mesg);
-- /* print the message at the center of the screen */
-+ /* print the message at the center of the screen */
- mvprintw(row-2,0,"This screen has %d rows and %d columns\n",row,col);
- printw("Try resizing your window(if possible) and then run this program again");
- refresh();
-@@ -1268,192 +2327,302 @@
- endwin();
-
- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>Above program demonstrates how easy it is to use <var class=
--"LITERAL">printw</var>. You just feed the coordinates and the
--message to be appeared on the screen, then it does what you
--want.</p>
--<p>The above program introduces us to a new function <var class=
--"LITERAL">getmaxyx()</var>, a macro defined in <var class=
--"LITERAL">ncurses.h</var>. It gives the number of columns and the
--number of rows in a given window. <var class=
--"LITERAL">getmaxyx()</var> does this by updating the variables
--given to it. Since <var class="LITERAL">getmaxyx()</var> is not a
--function we don't pass pointers to it, we just give two integer
--variables.</p>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ADDSTRCLASS" id="ADDSTRCLASS">6.4.
--addstr() class of functions</a></h3>
--<p><var class="LITERAL">addstr()</var> is used to put a character
--string into a given window. This function is similar to calling
--<var class="LITERAL">addch()</var> once for each character in a
--given string. This is true for all output functions. There are
--other functions from this family such as <var class=
--"LITERAL">mvaddstr(),mvwaddstr()</var> and <var class=
--"LITERAL">waddstr()</var>, which obey the naming convention of
--curses.(e.g. mvaddstr() is similar to the respective calls move()
--and then addstr().) Another function of this family is addnstr(),
--which takes an integer parameter(say n) additionally. This function
--puts at most n characters into the screen. If n is negative, then
--the entire string will be added.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ACAUTION" id="ACAUTION">6.5. A word of
--caution</a></h3>
--<p>All these functions take y co-ordinate first and then x in their
--arguments. A common mistake by beginners is to pass x,y in that
--order. If you are doing too many manipulations of (y,x)
--co-ordinates, think of dividing the screen into windows and
--manipulate each one separately. Windows are explained in the
--<a href="#WINDOWS">windows</a> section.</p>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="SCANW" id="SCANW">7. Input
--functions</a></h2>
--<p>Well, printing without taking input, is boring. Let's see
--functions which allow us to get input from user. These functions
--also can be divided into three categories.</p>
--<ol type="1">
--<li>
--<p>getch() class: Get a character</p>
--</li>
--<li>
--<p>scanw() class: Get formatted input</p>
--</li>
--<li>
--<p>getstr() class: Get strings</p>
--</li>
--</ol>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="GETCHCLASS" id="GETCHCLASS">7.1. getch()
--class of functions</a></h3>
--<p>These functions read a single character from the terminal. But
--there are several subtle facts to consider. For example if you
--don't use the function cbreak(), curses will not read your input
--characters contiguously but will begin read them only after a new
--line or an EOF is encountered. In order to avoid this, the cbreak()
--function must used so that characters are immediately available to
--your program. Another widely used function is noecho(). As the name
--suggests, when this function is set (used), the characters that are
--keyed in by the user will not show up on the screen. The two
--functions cbreak() and noecho() are typical examples of key
--management. Functions of this genre are explained in the <a href=
--"#KEYS">key management section</a> .</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="SCANWCLASS" id="SCANWCLASS">7.2. scanw()
--class of functions</a></h3>
--<p>These functions are similar to <var class=
--"LITERAL">scanf()</var> with the added capability of getting the
--input from any location on the screen.</p>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="SCANWMVSCANW" id="SCANWMVSCANW">7.2.1.
--scanw() and mvscanw</a></h4>
--<p>The usage of these functions is similar to that of <var class=
--"LITERAL">sscanf()</var>, where the line to be scanned is provided
--by <var class="LITERAL">wgetstr()</var> function. That is, these
--functions call to <var class="LITERAL">wgetstr()</var>
--function(explained below) and uses the resulting line for a
--scan.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="WSCANWMVWSCANW" id=
--"WSCANWMVWSCANW">7.2.2. wscanw() and mvwscanw()</a></h4>
--<p>These are similar to above two functions except that they read
--from a window, which is supplied as one of the arguments to these
--functions.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="VWSCANW" id="VWSCANW">7.2.3.
--vwscanw()</a></h4>
--<p>This function is similar to <var class="LITERAL">vscanf()</var>.
--This can be used when a variable number of arguments are to be
--scanned.</p>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="GETSTRCLASS" id="GETSTRCLASS">7.3.
--getstr() class of functions</a></h3>
--<p>These functions are used to get strings from the terminal. In
--essence, this function performs the same task as would be achieved
--by a series of calls to <var class="LITERAL">getch()</var> until a
--newline, carriage return, or end-of-file is received. The resulting
--string of characters are pointed to by <var class=
--"LITERAL">str</var>, which is a character pointer provided by the
--user.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="GETSTREX" id="GETSTREX">7.4. Some
--examples</a></h3>
--<div class="EXAMPLE"><a name="BSCEX" id="BSCEX"></a>
--<p><b>Example 4. A Simple scanw example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt; /* ncurses.h includes stdio.h */
--#include &lt;string.h&gt;
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>Above program demonstrates how easy it is to use <TT
-+CLASS="LITERAL"
-+>printw</TT
-+>. You just feed the coordinates and the message to be appeared
-+on the screen, then it does what you want.</P
-+><P
-+>The above program introduces us to a new function
-+<TT
-+CLASS="LITERAL"
-+>getmaxyx()</TT
-+>, a macro defined in
-+<TT
-+CLASS="LITERAL"
-+>ncurses.h</TT
-+>. It gives the number of columns and
-+the number of rows in a given window.
-+<TT
-+CLASS="LITERAL"
-+>getmaxyx()</TT
-+> does this by updating the variables
-+given to it. Since <TT
-+CLASS="LITERAL"
-+>getmaxyx()</TT
-+> is not a function
-+we don't pass pointers to it, we just give two integer variables. </P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ADDSTRCLASS"
-+>6.4. addstr() class of functions</A
-+></H3
-+><P
-+><TT
-+CLASS="LITERAL"
-+>addstr()</TT
-+> is used to put a character string into
-+a given window. This function is similar to calling
-+<TT
-+CLASS="LITERAL"
-+>addch()</TT
-+> once for each character in a given
-+string. This is true for all output functions. There are other functions from
-+this family such as <TT
-+CLASS="LITERAL"
-+>mvaddstr(),mvwaddstr()</TT
-+> and
-+<TT
-+CLASS="LITERAL"
-+>waddstr()</TT
-+>, which obey the naming convention of
-+curses.(e.g. mvaddstr() is similar to the respective calls move() and then
-+addstr().) Another function of this family is addnstr(), which takes an integer
-+parameter(say n) additionally. This function puts at most n characters into the
-+screen. If n is negative, then the entire string will be added. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ACAUTION"
-+>6.5. A word of caution</A
-+></H3
-+><P
-+>All these functions take y co-ordinate first and then x in their arguments.
-+A common mistake by beginners is to pass x,y in that order. If you are
-+doing too many manipulations of (y,x) co-ordinates, think of dividing the
-+screen into windows and manipulate each one separately. Windows are explained
-+in the <A
-+HREF="#WINDOWS"
-+> windows </A
-+> section.</P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="SCANW"
-+>7. Input functions</A
-+></H2
-+><P
-+>Well, printing without taking input, is boring. Let's see functions which
-+allow us to get input from user. These functions also can be divided into
-+three categories.</P
-+><P
-+></P
-+><OL
-+TYPE="1"
-+><LI
-+><P
-+>getch() class: Get a character</P
-+></LI
-+><LI
-+><P
-+>scanw() class: Get formatted input</P
-+></LI
-+><LI
-+><P
-+>getstr() class: Get strings</P
-+></LI
-+></OL
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="GETCHCLASS"
-+>7.1. getch() class of functions</A
-+></H3
-+><P
-+>These functions read a single character from the terminal. But there are several
-+subtle facts to consider. For example if you don't use the function cbreak(),
-+curses will not read your input characters contiguously but will begin read them
-+only after a new line or an EOF is encountered. In order to avoid this, the
-+cbreak() function must used so that characters are immediately available to your
-+program. Another widely used function is noecho(). As the name suggests, when
-+this function is set (used), the characters that are keyed in by the user will
-+not show up on the screen. The two functions cbreak() and noecho() are typical
-+examples of key management. Functions of this genre are explained in the
-+<A
-+HREF="#KEYS"
-+>key management section </A
-+>.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="SCANWCLASS"
-+>7.2. scanw() class of functions</A
-+></H3
-+><P
-+>These functions are similar to <TT
-+CLASS="LITERAL"
-+>scanf()</TT
-+> with the
-+added capability of getting the input from any location on the screen.</P
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="SCANWMVSCANW"
-+>7.2.1. scanw() and mvscanw</A
-+></H4
-+><P
-+>The usage of these functions is similar to that of
-+<TT
-+CLASS="LITERAL"
-+>sscanf()</TT
-+>, where the line to be scanned is
-+provided by <TT
-+CLASS="LITERAL"
-+>wgetstr()</TT
-+> function. That is, these
-+functions call to <TT
-+CLASS="LITERAL"
-+>wgetstr()</TT
-+> function(explained
-+below) and uses the resulting line for a scan. </P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="WSCANWMVWSCANW"
-+>7.2.2. wscanw() and mvwscanw()</A
-+></H4
-+><P
-+>These are similar to above two functions except that they read from a window,
-+which is supplied as one of the arguments to these functions. </P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="VWSCANW"
-+>7.2.3. vwscanw()</A
-+></H4
-+><P
-+>This function is similar to <TT
-+CLASS="LITERAL"
-+>vscanf()</TT
-+>. This can
-+be used when a variable number of arguments are to be scanned.</P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="GETSTRCLASS"
-+>7.3. getstr() class of functions</A
-+></H3
-+><P
-+>These functions are used to get strings from the terminal. In essence, this
-+function performs the same task as would be achieved by a series of calls to
-+<TT
-+CLASS="LITERAL"
-+>getch()</TT
-+> until a newline, carriage return, or
-+end-of-file is received. The resulting string of characters are pointed to by
-+<TT
-+CLASS="LITERAL"
-+>str</TT
-+>, which is a character pointer provided by
-+the user.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="GETSTREX"
-+>7.4. Some examples</A
-+></H3
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BSCEX"
-+></A
-+><P
-+><B
-+>Example 4. A Simple scanw example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62; /* ncurses.h includes stdio.h */
-+#include &#60;string.h&#62;
-
- int main()
- {
-- char mesg[]="Enter a string: "; /* message to be appeared on the screen */
-+ char mesg[]="Enter a string: "; /* message to be appeared on the screen */
- char str[80];
-- int row,col; /* to store the number of rows and *
-- * the number of colums of the screen */
-- initscr(); /* start the curses mode */
-- getmaxyx(stdscr,row,col); /* get the number of rows and columns */
-+ int row,col; /* to store the number of rows and *
-+ * the number of colums of the screen */
-+ initscr(); /* start the curses mode */
-+ getmaxyx(stdscr,row,col); /* get the number of rows and columns */
- mvprintw(row/2,(col-strlen(mesg))/2,"%s",mesg);
-- /* print the message at the center of the screen */
-+ /* print the message at the center of the screen */
- getstr(str);
- mvprintw(LINES - 2, 0, "You Entered: %s", str);
- getch();
- endwin();
-
- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="ATTRIB" id="ATTRIB">8.
--Attributes</a></h2>
--<p>We have seen an example of how attributes can be used to print
--characters with some special effects. Attributes, when set
--prudently, can present information in an easy, understandable
--manner. The following program takes a C file as input and prints
--the file with comments in bold. Scan through the code.</p>
--<div class="EXAMPLE"><a name="BSIAT" id="BSIAT"></a>
--<p><b>Example 5. A Simple Attributes example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">/* pager functionality by Joseph Spainhour" &lt;spainhou@bellsouth.net&gt; */
--#include &lt;ncurses.h&gt;
--#include &lt;stdlib.h&gt;
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="ATTRIB"
-+>8. Attributes</A
-+></H2
-+><P
-+>We have seen an example of how attributes can be used to print characters with
-+some special effects. Attributes, when set prudently, can present information in
-+an easy, understandable manner. The following program takes a C file as input
-+and prints the file with comments in bold. Scan through the code. </P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BSIAT"
-+></A
-+><P
-+><B
-+>Example 5. A Simple Attributes example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>/* pager functionality by Joseph Spainhour" &#60;spainhou@bellsouth.net&#62; */
-+#include &#60;ncurses.h&#62;
-+#include &#60;stdlib.h&#62;
-
- int main(int argc, char *argv[])
- {
-@@ -1464,7 +2633,7 @@
-
- if(argc != 2)
- {
-- printf("Usage: %s &lt;a c file name&gt;\n", argv[0]);
-+ printf("Usage: %s &#60;a c file name&#62;\n", argv[0]);
- exit(1);
- }
- fp = fopen(argv[1], "r");
-@@ -1473,77 +2642,101 @@
- perror("Cannot open input file");
- exit(1);
- }
-- initscr(); /* Start curses mode */
-- getmaxyx(stdscr, row, col); /* find the boundaries of the screeen */
-- while((ch = fgetc(fp)) != EOF) /* read the file till we reach the end */
-+ initscr(); /* Start curses mode */
-+ getmaxyx(stdscr, row, col); /* find the boundaries of the screeen */
-+ while((ch = fgetc(fp)) != EOF) /* read the file till we reach the end */
- {
-- getyx(stdscr, y, x); /* get the current curser position */
-- if(y == (row - 1)) /* are we are at the end of the screen */
-+ getyx(stdscr, y, x); /* get the current curser position */
-+ if(y == (row - 1)) /* are we are at the end of the screen */
- {
-- printw("&lt;-Press Any Key-&gt;"); /* tell the user to press a key */
-+ printw("&#60;-Press Any Key-&#62;"); /* tell the user to press a key */
- getch();
-- clear(); /* clear the screen */
-- move(0, 0); /* start at the beginning of the screen */
-+ clear(); /* clear the screen */
-+ move(0, 0); /* start at the beginning of the screen */
- }
-- if(prev == '/' &amp;&amp; ch == '*') /* If it is / and * then only
-- * switch bold on */
-+ if(prev == '/' &#38;&#38; ch == '*') /* If it is / and * then only
-+ * switch bold on */
- {
-- attron(A_BOLD); /* cut bold on */
-- getyx(stdscr, y, x); /* get the current curser position */
-- move(y, x - 1); /* back up one space */
-- printw("%c%c", '/', ch); /* The actual printing is done here */
-+ attron(A_BOLD); /* cut bold on */
-+ getyx(stdscr, y, x); /* get the current curser position */
-+ move(y, x - 1); /* back up one space */
-+ printw("%c%c", '/', ch); /* The actual printing is done here */
- }
- else
- printw("%c", ch);
- refresh();
-- if(prev == '*' &amp;&amp; ch == '/')
-- attroff(A_BOLD); /* Switch it off once we got *
-- * and then / */
-+ if(prev == '*' &#38;&#38; ch == '/')
-+ attroff(A_BOLD); /* Switch it off once we got *
-+ * and then / */
- prev = ch;
- }
-- endwin(); /* End curses mode */
-+ endwin(); /* End curses mode */
- fclose(fp);
- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>Don't worry about all those initialization and other crap.
--Concentrate on the while loop. It reads each character in the file
--and searches for the pattern /*. Once it spots the pattern, it
--switches the BOLD attribute on with <var class=
--"LITERAL">attron()</var> . When we get the pattern */ it is
--switched off by <var class="LITERAL">attroff()</var> .</p>
--<p>The above program also introduces us to two useful functions
--<var class="LITERAL">getyx()</var> and <var class=
--"LITERAL">move()</var>. The first function gets the co-ordinates of
--the present cursor into the variables y, x. Since getyx() is a
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>
-+Don't worry about all those initialization and other crap. Concentrate on
-+the while loop. It reads each character in the file and searches for the
-+pattern /*. Once it spots the pattern, it switches the BOLD attribute on with
-+<TT
-+CLASS="LITERAL"
-+> attron()</TT
-+> . When we get the pattern */ it is
-+switched off by <TT
-+CLASS="LITERAL"
-+> attroff()</TT
-+> .</P
-+><P
-+>
-+The above program also introduces us to two useful functions
-+<TT
-+CLASS="LITERAL"
-+>getyx() </TT
-+> and
-+<TT
-+CLASS="LITERAL"
-+>move()</TT
-+>. The first function gets the
-+co-ordinates of the present cursor into the variables y, x. Since getyx() is a
- macro we don't have to pass pointers to variables. The function
--<var class="LITERAL">move()</var> moves the cursor to the
--co-ordinates given to it.</p>
--<p>The above program is really a simple one which doesn't do much.
--On these lines one could write a more useful program which reads a
--C file, parses it and prints it in different colors. One could even
--extend it to other languages as well.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ATTRIBDETAILS" id="ATTRIBDETAILS">8.1.
--The details</a></h3>
--<p>Let's get into more details of attributes. The functions
--<var class="LITERAL">attron(), attroff(), attrset()</var> , and
--their sister functions <var class="LITERAL">attr_get()</var> etc..
--can be used to switch attributes on/off , get attributes and
--produce a colorful display.</p>
--<p>The functions attron and attroff take a bit-mask of attributes
--and switch them on or off, respectively. The following video
--attributes, which are defined in &lt;curses.h&gt; can be passed to
--these functions.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000">
-+<TT
-+CLASS="LITERAL"
-+>move()</TT
-+> moves the cursor to the co-ordinates
-+given to it. </P
-+><P
-+>
-+The above program is really a simple one which doesn't do much. On these lines
-+one could write a more useful program which reads a C file, parses it and prints
-+it in different colors. One could even extend it to other languages as well.</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ATTRIBDETAILS"
-+>8.1. The details</A
-+></H3
-+><P
-+>Let's get into more details of attributes. The functions <TT
-+CLASS="LITERAL"
-+>attron(), attroff(), attrset() </TT
-+>, and their sister functions
-+<TT
-+CLASS="LITERAL"
-+> attr_get()</TT
-+> etc.. can be used to switch
-+attributes on/off , get attributes and produce a colorful display.</P
-+><P
-+>The functions attron and attroff take a bit-mask of attributes and switch them
-+on or off, respectively. The following video attributes, which are defined in
-+&lt;curses.h&gt; can be passed to these functions. </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>
- A_NORMAL Normal display (no highlight)
- A_STANDOUT Best highlighting mode of the terminal.
- A_UNDERLINE Underlining
-@@ -1556,368 +2749,445 @@
- A_ALTCHARSET Alternate character set
- A_CHARTEXT Bit-mask to extract a character
- COLOR_PAIR(n) Color-pair number n
-- </font>
--</pre></td>
--</tr>
--</table>
--<p>The last one is the most colorful one :-) Colors are explained
--in the <a href="#color" target="_top">next sections</a>.</p>
--<p>We can OR(|) any number of above attributes to get a combined
--effect. If you wanted reverse video with blinking characters you
--can use</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> attron(A_REVERSE | A_BLINK);</font>
--</pre></td>
--</tr>
--</table>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ATTRONVSATTRSET" id=
--"ATTRONVSATTRSET">8.2. attron() vs attrset()</a></h3>
--<p>Then what is the difference between attron() and attrset()?
--attrset sets the attributes of window whereas attron just switches
--on the attribute given to it. So attrset() fully overrides whatever
--attributes the window previously had and sets it to the new
--attribute(s). Similarly attroff() just switches off the
--attribute(s) given to it as an argument. This gives us the
--flexibility of managing attributes easily.But if you use them
--carelessly you may loose track of what attributes the window has
--and garble the display. This is especially true while managing
--menus with colors and highlighting. So decide on a consistent
--policy and stick to it. You can always use <var class=
--"LITERAL">standend()</var> which is equivalent to <var class=
--"LITERAL">attrset(A_NORMAL)</var> which turns off all attributes
--and brings you to normal mode.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ATTR_GET" id="ATTR_GET">8.3.
--attr_get()</a></h3>
--<p>The function attr_get() gets the current attributes and color
--pair of the window. Though we might not use this as often as the
--above functions, this is useful in scanning areas of screen. Say we
--wanted to do some complex update on screen and we are not sure what
--attribute each character is associated with. Then this function can
--be used with either attrset or attron to produce the desired
--effect.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ATTR_FUNCS" id="ATTR_FUNCS">8.4. attr_
--functions</a></h3>
--<p>There are series of functions like attr_set(), attr_on etc..
--These are similar to above functions except that they take
--parameters of type <var class="LITERAL">attr_t</var>.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="WATTRFUNCS" id="WATTRFUNCS">8.5. wattr
--functions</a></h3>
--<p>For each of the above functions we have a corresponding function
--with 'w' which operates on a particular window. The above functions
--operate on stdscr.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="CHGAT" id="CHGAT">8.6. chgat()
--functions</a></h3>
--<p>The function chgat() is listed in the end of the man page
--curs_attr. It actually is a useful one. This function can be used
--to set attributes for a group of characters without moving. I mean
--it !!! without moving the cursor :-) It changes the attributes of a
--given number of characters starting at the current cursor
--location.</p>
--<p>We can give -1 as the character count to update till end of
--line. If you want to change attributes of characters from current
--position to end of line, just use this.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> chgat(-1, A_REVERSE, 0, NULL);</font>
--</pre></td>
--</tr>
--</table>
--<p>This function is useful when changing attributes for characters
--that are already on the screen. Move to the character from which
--you want to change and change the attribute.</p>
--<p>Other functions wchgat(), mvchgat(), wchgat() behave similarly
--except that the w functions operate on the particular window. The
--mv functions first move the cursor then perform the work given to
--them. Actually chgat is a macro which is replaced by a wchgat()
--with stdscr as the window. Most of the "w-less" functions are
--macros.</p>
--<div class="EXAMPLE"><a name="BWICH" id="BWICH"></a>
--<p><b>Example 6. Chgat() Usage example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt;
-+ </PRE
-+><P
-+>
-+The last one is the most colorful one :-) Colors are explained in the
-+<A
-+HREF="#color"
-+TARGET="_top"
-+>next sections</A
-+>.</P
-+><P
-+>We can OR(|) any number of above attributes to get a combined effect. If you
-+wanted reverse video with blinking characters you can use</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> attron(A_REVERSE | A_BLINK);</PRE
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ATTRONVSATTRSET"
-+>8.2. attron() vs attrset()</A
-+></H3
-+><P
-+>Then what is the difference between attron() and attrset()? attrset sets the
-+attributes of window whereas attron just switches on the attribute given to it.
-+So attrset() fully overrides whatever attributes the window previously had and
-+sets it to the new attribute(s). Similarly attroff() just switches off the
-+attribute(s) given to it as an argument. This gives us the flexibility of
-+managing attributes easily.But if you use them carelessly you may loose track of
-+what attributes the window has and garble the display. This is especially true
-+while managing menus with colors and highlighting. So decide on a consistent
-+policy and stick to it. You can always use <TT
-+CLASS="LITERAL"
-+> standend()</TT
-+> which is equivalent to <TT
-+CLASS="LITERAL"
-+> attrset(A_NORMAL)</TT
-+> which turns off all attributes and brings you to normal mode.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ATTR_GET"
-+>8.3. attr_get()</A
-+></H3
-+><P
-+>&#13;The function attr_get() gets the current attributes and color pair of the
-+window. Though we might not use this as often as the above functions, this is
-+useful in scanning areas of screen. Say we wanted to do some complex update on
-+screen and we are not sure what attribute each character is associated with.
-+Then this function can be used with either attrset or attron to produce the
-+desired effect.&#13;</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ATTR_FUNCS"
-+>8.4. attr_ functions</A
-+></H3
-+><P
-+>There are series of functions like attr_set(), attr_on etc.. These are similar
-+to above functions except that they take parameters of type
-+<TT
-+CLASS="LITERAL"
-+>attr_t</TT
-+>.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="WATTRFUNCS"
-+>8.5. wattr functions</A
-+></H3
-+><P
-+>For each of the above functions we have a corresponding function with 'w' which
-+operates on a particular window. The above functions operate on stdscr. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="CHGAT"
-+>8.6. chgat() functions</A
-+></H3
-+><P
-+>The function chgat() is listed in the end of the man page curs_attr. It actually
-+is a useful one. This function can be used to set attributes for a group of
-+characters without moving. I mean it !!! without moving the cursor :-) It
-+changes the attributes of a given number of characters starting at the current
-+cursor location.</P
-+><P
-+>We can give -1 as the character count to update till end of line. If you want to
-+change attributes of characters from current position to end of line, just use
-+this.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> chgat(-1, A_REVERSE, 0, NULL);</PRE
-+><P
-+>
-+This function is useful when changing attributes for characters that are
-+already on the screen. Move to the character from which you want to change and
-+change the attribute. </P
-+><P
-+>Other functions wchgat(), mvchgat(), wchgat() behave similarly except that the w
-+functions operate on the particular window. The mv functions first move the
-+cursor then perform the work given to them. Actually chgat is a macro which is
-+replaced by a wchgat() with stdscr as the window. Most of the "w-less" functions
-+are macros.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BWICH"
-+></A
-+><P
-+><B
-+>Example 6. Chgat() Usage example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62;
-
- int main(int argc, char *argv[])
--{ initscr(); /* Start curses mode */
-- start_color(); /* Start color functionality */
--
-- init_pair(1, COLOR_CYAN, COLOR_BLACK);
-- printw("A Big string which i didn't care to type fully ");
-- mvchgat(0, 0, -1, A_BLINK, 1, NULL);
-- /*
-- * First two parameters specify the position at which to start
-- * Third parameter number of characters to update. -1 means till
-- * end of line
-- * Forth parameter is the normal attribute you wanted to give
-- * to the charcter
-- * Fifth is the color index. It is the index given during init_pair()
-- * use 0 if you didn't want color
-- * Sixth one is always NULL
-- */
-- refresh();
-- getch();
-- endwin(); /* End curses mode */
-- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>This example also introduces us to the color world of curses.
--Colors will be explained in detail later. Use 0 for no color.</p>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="WINDOWS" id="WINDOWS">9.
--Windows</a></h2>
--<p>Windows form the most important concept in curses. You have seen
--the standard window stdscr above where all the functions implicitly
--operated on this window. Now to make design even a simplest GUI,
--you need to resort to windows. The main reason you may want to use
--windows is to manipulate parts of the screen separately, for better
--efficiency, by updating only the windows that need to be changed
--and for a better design. I would say the last reason is the most
--important in going for windows. You should always strive for a
--better and easy-to-manage design in your programs. If you are
--writing big, complex GUIs this is of pivotal importance before you
--start doing anything.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="WINDOWBASICS" id="WINDOWBASICS">9.1. The
--basics</a></h3>
--<p>A Window can be created by calling the function <var class=
--"LITERAL">newwin()</var>. 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 abstraction of an imaginary window, which can be
--manipulated independent of other parts of screen. The function
--newwin() returns a pointer to structure WINDOW, which can be passed
--to window related functions like wprintw() etc.. Finally the window
--can be destroyed with delwin(). It will deallocate the memory
--associated with the window structure.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="LETBEWINDOW" id="LETBEWINDOW">9.2. Let
--there be a Window !!!</a></h3>
--<p>What fun is it, if a window is created and we can't see it. So
--the fun part begins by displaying the window. The function
--<var class="LITERAL">box()</var> can be used to draw a border
--around the window. Let's explore these functions in more detail in
--this example.</p>
--<div class="EXAMPLE"><a name="BWIBO" id="BWIBO"></a>
--<p><b>Example 7. Window Border example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt;
-+{ initscr(); /* Start curses mode */
-+ start_color(); /* Start color functionality */
-+
-+ init_pair(1, COLOR_CYAN, COLOR_BLACK);
-+ printw("A Big string which i didn't care to type fully ");
-+ mvchgat(0, 0, -1, A_BLINK, 1, NULL);
-+ /*
-+ * First two parameters specify the position at which to start
-+ * Third parameter number of characters to update. -1 means till
-+ * end of line
-+ * Forth parameter is the normal attribute you wanted to give
-+ * to the charcter
-+ * Fifth is the color index. It is the index given during init_pair()
-+ * use 0 if you didn't want color
-+ * Sixth one is always NULL
-+ */
-+ refresh();
-+ getch();
-+ endwin(); /* End curses mode */
-+ return 0;
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>This example also introduces us to the color world of curses. Colors will be
-+explained in detail later. Use 0 for no color.</P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="WINDOWS"
-+>9. Windows</A
-+></H2
-+><P
-+>Windows form the most important concept in curses. You have seen the standard
-+window stdscr above where all the functions implicitly operated on this window.
-+Now to make design even a simplest GUI, you need to resort to windows. The main
-+reason you may want to use windows is to manipulate parts of the screen
-+separately, for better efficiency, by updating only the windows that need to be
-+changed and for a better design. I would say the last reason is the most
-+important in going for windows. You should always strive for a better and
-+easy-to-manage design in your programs. If you are writing big, complex GUIs
-+this is of pivotal importance before you start doing anything.</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="WINDOWBASICS"
-+>9.1. The basics</A
-+></H3
-+><P
-+>A Window can be created by calling the function
-+<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 abstraction of an imaginary
-+window, which can be manipulated independent of other parts of screen. The
-+function newwin() returns a pointer to structure WINDOW, which can be passed to
-+window related functions like wprintw() etc.. Finally the window can be
-+destroyed with delwin(). It will deallocate the memory associated with the
-+window structure.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="LETBEWINDOW"
-+>9.2. Let there be a Window !!!</A
-+></H3
-+><P
-+>What fun is it, if a window is created and we can't see it. So the fun part
-+begins by displaying the window. The function
-+<TT
-+CLASS="LITERAL"
-+>box()</TT
-+> can be used to draw a border around the
-+window. Let's explore these functions in more detail in this example.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BWIBO"
-+></A
-+><P
-+><B
-+>Example 7. Window Border example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62;
-
-
- WINDOW *create_newwin(int height, int width, int starty, int startx);
- void destroy_win(WINDOW *local_win);
-
- int main(int argc, char *argv[])
--{ WINDOW *my_win;
-- int startx, starty, width, height;
-- int ch;
--
-- initscr(); /* Start curses mode */
-- cbreak(); /* Line buffering disabled, Pass on
-- * everty thing to me */
-- keypad(stdscr, TRUE); /* I need that nifty F1 */
--
-- height = 3;
-- width = 10;
-- starty = (LINES - height) / 2; /* Calculating for a center placement */
-- startx = (COLS - width) / 2; /* of the window */
-- printw("Press F1 to exit");
-- refresh();
-- my_win = create_newwin(height, width, starty, startx);
--
-- while((ch = getch()) != KEY_F(1))
-- { switch(ch)
-- { case KEY_LEFT:
-- destroy_win(my_win);
-- my_win = create_newwin(height, width, starty,--startx);
-- break;
-- case KEY_RIGHT:
-- destroy_win(my_win);
-- my_win = create_newwin(height, width, starty,++startx);
-- break;
-- case KEY_UP:
-- destroy_win(my_win);
-- my_win = create_newwin(height, width, --starty,startx);
-- break;
-- case KEY_DOWN:
-- destroy_win(my_win);
-- my_win = create_newwin(height, width, ++starty,startx);
-- break;
-- }
-- }
--
-- endwin(); /* End curses mode */
-- return 0;
-+{ WINDOW *my_win;
-+ int startx, starty, width, height;
-+ int ch;
-+
-+ initscr(); /* Start curses mode */
-+ cbreak(); /* Line buffering disabled, Pass on
-+ * everty thing to me */
-+ keypad(stdscr, TRUE); /* I need that nifty F1 */
-+
-+ height = 3;
-+ width = 10;
-+ starty = (LINES - height) / 2; /* Calculating for a center placement */
-+ startx = (COLS - width) / 2; /* of the window */
-+ printw("Press F1 to exit");
-+ refresh();
-+ my_win = create_newwin(height, width, starty, startx);
-+
-+ while((ch = getch()) != KEY_F(1))
-+ { switch(ch)
-+ { case KEY_LEFT:
-+ destroy_win(my_win);
-+ my_win = create_newwin(height, width, starty,--startx);
-+ break;
-+ case KEY_RIGHT:
-+ destroy_win(my_win);
-+ my_win = create_newwin(height, width, starty,++startx);
-+ break;
-+ case KEY_UP:
-+ destroy_win(my_win);
-+ my_win = create_newwin(height, width, --starty,startx);
-+ break;
-+ case KEY_DOWN:
-+ destroy_win(my_win);
-+ my_win = create_newwin(height, width, ++starty,startx);
-+ break;
-+ }
-+ }
-+
-+ endwin(); /* End curses mode */
-+ return 0;
- }
-
- WINDOW *create_newwin(int height, int width, int starty, int startx)
--{ WINDOW *local_win;
-+{ WINDOW *local_win;
-
-- local_win = newwin(height, width, starty, startx);
-- box(local_win, 0 , 0); /* 0, 0 gives default characters
-- * for the vertical and horizontal
-- * lines */
-- wrefresh(local_win); /* Show that box */
-+ local_win = newwin(height, width, starty, startx);
-+ box(local_win, 0 , 0); /* 0, 0 gives default characters
-+ * for the vertical and horizontal
-+ * lines */
-+ wrefresh(local_win); /* Show that box */
-
-- return local_win;
-+ return local_win;
- }
-
- 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
-- * and so an ugly remnant of window.
-- */
-- wborder(local_win, ' ', ' ', ' ',' ',' ',' ',' ',' ');
-- /* The parameters taken are
-- * 1. win: the window on which to operate
-- * 2. ls: character to be used for the left side of the window
-- * 3. rs: character to be used for the right side of the window
-- * 4. ts: character to be used for the top side of the window
-- * 5. bs: character to be used for the bottom side of the window
-- * 6. tl: character to be used for the top left corner of the window
-- * 7. tr: character to be used for the top right corner of the window
-- * 8. bl: character to be used for the bottom left corner of the window
-- * 9. br: character to be used for the bottom right corner of the window
-- */
-- wrefresh(local_win);
-- delwin(local_win);
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<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 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 destroys windows as user press a key. Don't
--go beyond the screen limits. Checking for those limits is left as
--an exercise for the reader. Let's dissect it by line by line.</p>
--<p>The <var class="LITERAL">create_newwin()</var> function creates
--a window with <var class="LITERAL">newwin()</var> and displays a
--border around it with box. The function <var class=
--"LITERAL">destroy_win()</var> first erases the window from screen
--by painting a border with ' ' character and then calling
--<var class="LITERAL">delwin()</var> to deallocate memory related to
--it. Depending on the key the user presses, starty or startx is
--changed and a new window is created.</p>
--<p>In the destroy_win, as you can see, I used wborder instead of
--box. The reason is written in the comments (You missed it. I know.
--Read the code :-)). wborder draws a border around the window with
--the characters given to it as the 4 corner points and the 4 lines.
--To put it clearly, if you have called wborder as below:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000"> wborder(win, '|', '|', '-', '-', '+', '+', '+', '+');</font>
--</pre></td>
--</tr>
--</table>
--<p>it produces some thing like</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> +------------+
-+{
-+ /* box(local_win, ' ', ' '); : This won't produce the desired
-+ * result of erasing the window. It will leave it's four corners
-+ * and so an ugly remnant of window.
-+ */
-+ wborder(local_win, ' ', ' ', ' ',' ',' ',' ',' ',' ');
-+ /* The parameters taken are
-+ * 1. win: the window on which to operate
-+ * 2. ls: character to be used for the left side of the window
-+ * 3. rs: character to be used for the right side of the window
-+ * 4. ts: character to be used for the top side of the window
-+ * 5. bs: character to be used for the bottom side of the window
-+ * 6. tl: character to be used for the top left corner of the window
-+ * 7. tr: character to be used for the top right corner of the window
-+ * 8. bl: character to be used for the bottom left corner of the window
-+ * 9. br: character to be used for the bottom right corner of the window
-+ */
-+ wrefresh(local_win);
-+ delwin(local_win);
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="BORDEREXEXPL"
-+>9.3. Explanation</A
-+></H3
-+><P
-+>Don't scream. I know it's 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 destroys
-+windows as user press a key. Don't go beyond the screen limits. Checking for
-+those limits is left as an exercise for the reader. Let's dissect it by line by line.</P
-+><P
-+>The <TT
-+CLASS="LITERAL"
-+>create_newwin()</TT
-+> function creates a window
-+with <TT
-+CLASS="LITERAL"
-+>newwin() </TT
-+> and displays a border around it
-+with box. The function <TT
-+CLASS="LITERAL"
-+> destroy_win()</TT
-+> first
-+erases the window from screen by painting a border with ' ' character and then
-+calling <TT
-+CLASS="LITERAL"
-+>delwin()</TT
-+> to deallocate memory related
-+to it. Depending on the key the user presses, starty or startx is changed and a
-+new window is created.</P
-+><P
-+>In the destroy_win, as you can see, I used wborder instead of box. The reason is
-+written in the comments (You missed it. I know. Read the code :-)). wborder
-+draws a border around the window with the characters given to it as the 4 corner
-+points and the 4 lines. To put it clearly, if you have called wborder as below:
-+<PRE
-+CLASS="PROGRAMLISTING"
-+> wborder(win, '|', '|', '-', '-', '+', '+', '+', '+');</PRE
-+></P
-+><P
-+>it produces some thing like </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> +------------+
- | |
- | |
- | |
- | |
- | |
- | |
-- +------------+</font>
--</pre></td>
--</tr>
--</table>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="OTHERSTUFF" id="OTHERSTUFF">9.4. The
--other stuff in the example</a></h3>
--<p>You can also see in the above examples, that I have used the
--variables COLS, LINES which are initialized to the screen sizes
--after initscr(). They can be useful in finding screen dimensions
--and finding the center co-ordinate of the screen as above. The
--function <var class="LITERAL">getch()</var> as usual gets the key
--from keyboard and according to the key it does the corresponding
--work. This type of switch- case is very common in any GUI based
--programs.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="OTHERBORDERFUNCS" id=
--"OTHERBORDERFUNCS">9.5. Other Border functions</a></h3>
--<p>Above program is grossly inefficient in that with each press of
--a key, a window is destroyed and another is created. So let's write
--a more efficient program which uses other border related
--functions.</p>
--<p>The following program uses <var class="LITERAL">mvhline()</var>
--and <var class="LITERAL">mvvline()</var> to achieve similar effect.
--These two functions are simple. They create a horizontal or
--vertical line of the specified length at the specified
--position.</p>
--<div class="EXAMPLE"><a name="BOTBO" id="BOTBO"></a>
--<p><b>Example 8. More border functions</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt;
-+ +------------+</PRE
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="OTHERSTUFF"
-+>9.4. The other stuff in the example</A
-+></H3
-+><P
-+>You can also see in the above examples, that I have used the variables COLS,
-+LINES which are initialized to the screen sizes after initscr(). They can be
-+useful in finding screen dimensions and finding the center co-ordinate of the
-+screen as above. The function <TT
-+CLASS="LITERAL"
-+>getch()</TT
-+> as usual
-+gets the key from keyboard and according to the key it does the corresponding
-+work. This type of switch- case is very common in any GUI based programs.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="OTHERBORDERFUNCS"
-+>9.5. Other Border functions</A
-+></H3
-+><P
-+>Above program is grossly inefficient in that with each press of a key, a window
-+is destroyed and another is created. So let's write a more efficient program
-+which uses other border related functions.</P
-+><P
-+>The following program uses <TT
-+CLASS="LITERAL"
-+>mvhline()</TT
-+> and
-+<TT
-+CLASS="LITERAL"
-+>mvvline()</TT
-+> to achieve similar effect. These two
-+functions are simple. They create a horizontal or vertical line of the specified
-+length at the specified position.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BOTBO"
-+></A
-+><P
-+><B
-+>Example 8. More border functions</B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62;
-
- typedef struct _win_border_struct {
-- chtype ls, rs, ts, bs,
-- tl, tr, bl, br;
-+ chtype ls, rs, ts, bs,
-+ tl, tr, bl, br;
- }WIN_BORDER;
-
- typedef struct _WIN_struct {
-
-- int startx, starty;
-- int height, width;
-- WIN_BORDER border;
-+ int startx, starty;
-+ int height, width;
-+ WIN_BORDER border;
- }WIN;
-
- void init_win_params(WIN *p_win);
-@@ -1925,319 +3195,380 @@
- void create_box(WIN *win, bool flag);
-
- int main(int argc, char *argv[])
--{ WIN win;
-- int ch;
--
-- initscr(); /* Start curses mode */
-- start_color(); /* Start the color functionality */
-- cbreak(); /* Line buffering disabled, Pass on
-- * everty thing to me */
-- keypad(stdscr, TRUE); /* I need that nifty F1 */
-- noecho();
-- init_pair(1, COLOR_CYAN, COLOR_BLACK);
-+{ WIN win;
-+ int ch;
-
-- /* Initialize the window parameters */
-- init_win_params(&amp;win);
-- print_win_params(&amp;win);
--
-- attron(COLOR_PAIR(1));
-- printw("Press F1 to exit");
-- refresh();
-- attroff(COLOR_PAIR(1));
--
-- create_box(&amp;win, TRUE);
-- while((ch = getch()) != KEY_F(1))
-- { switch(ch)
-- { case KEY_LEFT:
-- create_box(&amp;win, FALSE);
-- --win.startx;
-- create_box(&amp;win, TRUE);
-- break;
-- case KEY_RIGHT:
-- create_box(&amp;win, FALSE);
-- ++win.startx;
-- create_box(&amp;win, TRUE);
-- break;
-- case KEY_UP:
-- create_box(&amp;win, FALSE);
-- --win.starty;
-- create_box(&amp;win, TRUE);
-- break;
-- case KEY_DOWN:
-- create_box(&amp;win, FALSE);
-- ++win.starty;
-- create_box(&amp;win, TRUE);
-- break;
-- }
-- }
-- endwin(); /* End curses mode */
-- return 0;
-+ initscr(); /* Start curses mode */
-+ start_color(); /* Start the color functionality */
-+ cbreak(); /* Line buffering disabled, Pass on
-+ * everty thing to me */
-+ keypad(stdscr, TRUE); /* I need that nifty F1 */
-+ noecho();
-+ init_pair(1, COLOR_CYAN, COLOR_BLACK);
-+
-+ /* Initialize the window parameters */
-+ init_win_params(&#38;win);
-+ print_win_params(&#38;win);
-+
-+ attron(COLOR_PAIR(1));
-+ printw("Press F1 to exit");
-+ refresh();
-+ attroff(COLOR_PAIR(1));
-+
-+ create_box(&#38;win, TRUE);
-+ while((ch = getch()) != KEY_F(1))
-+ { switch(ch)
-+ { case KEY_LEFT:
-+ create_box(&#38;win, FALSE);
-+ --win.startx;
-+ create_box(&#38;win, TRUE);
-+ break;
-+ case KEY_RIGHT:
-+ create_box(&#38;win, FALSE);
-+ ++win.startx;
-+ create_box(&#38;win, TRUE);
-+ break;
-+ case KEY_UP:
-+ create_box(&#38;win, FALSE);
-+ --win.starty;
-+ create_box(&#38;win, TRUE);
-+ break;
-+ case KEY_DOWN:
-+ create_box(&#38;win, FALSE);
-+ ++win.starty;
-+ create_box(&#38;win, TRUE);
-+ break;
-+ }
-+ }
-+ endwin(); /* End curses mode */
-+ return 0;
- }
- void init_win_params(WIN *p_win)
- {
-- p_win-&gt;height = 3;
-- p_win-&gt;width = 10;
-- p_win-&gt;starty = (LINES - p_win-&gt;height)/2;
-- p_win-&gt;startx = (COLS - p_win-&gt;width)/2;
--
-- p_win-&gt;border.ls = '|';
-- p_win-&gt;border.rs = '|';
-- p_win-&gt;border.ts = '-';
-- p_win-&gt;border.bs = '-';
-- p_win-&gt;border.tl = '+';
-- p_win-&gt;border.tr = '+';
-- p_win-&gt;border.bl = '+';
-- p_win-&gt;border.br = '+';
-+ p_win-&#62;height = 3;
-+ p_win-&#62;width = 10;
-+ p_win-&#62;starty = (LINES - p_win-&#62;height)/2;
-+ p_win-&#62;startx = (COLS - p_win-&#62;width)/2;
-+
-+ p_win-&#62;border.ls = '|';
-+ p_win-&#62;border.rs = '|';
-+ p_win-&#62;border.ts = '-';
-+ p_win-&#62;border.bs = '-';
-+ p_win-&#62;border.tl = '+';
-+ p_win-&#62;border.tr = '+';
-+ p_win-&#62;border.bl = '+';
-+ p_win-&#62;border.br = '+';
-
- }
- void print_win_params(WIN *p_win)
- {
- #ifdef _DEBUG
-- mvprintw(25, 0, "%d %d %d %d", p_win-&gt;startx, p_win-&gt;starty,
-- p_win-&gt;width, p_win-&gt;height);
-- refresh();
-+ mvprintw(25, 0, "%d %d %d %d", p_win-&#62;startx, p_win-&#62;starty,
-+ p_win-&#62;width, p_win-&#62;height);
-+ refresh();
- #endif
- }
- void create_box(WIN *p_win, bool flag)
--{ int i, j;
-- int x, y, w, h;
--
-- x = p_win-&gt;startx;
-- y = p_win-&gt;starty;
-- w = p_win-&gt;width;
-- h = p_win-&gt;height;
--
-- if(flag == TRUE)
-- { mvaddch(y, x, p_win-&gt;border.tl);
-- mvaddch(y, x + w, p_win-&gt;border.tr);
-- mvaddch(y + h, x, p_win-&gt;border.bl);
-- mvaddch(y + h, x + w, p_win-&gt;border.br);
-- mvhline(y, x + 1, p_win-&gt;border.ts, w - 1);
-- mvhline(y + h, x + 1, p_win-&gt;border.bs, w - 1);
-- mvvline(y + 1, x, p_win-&gt;border.ls, h - 1);
-- mvvline(y + 1, x + w, p_win-&gt;border.rs, h - 1);
--
-- }
-- else
-- for(j = y; j &lt;= y + h; ++j)
-- for(i = x; i &lt;= x + w; ++i)
-- mvaddch(j, i, ' ');
--
-- refresh();
-+{ int i, j;
-+ int x, y, w, h;
-
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="COLOR" id="COLOR">10. Colors</a></h2>
--<div class="SECT2">
--<h3 class="SECT2"><a name="COLORBASICS" id="COLORBASICS">10.1. The
--basics</a></h3>
--<p>Life seems dull with no colors. Curses has a nice mechanism to
--handle colors. Let's get into the thick of the things with a small
--program.</p>
--<div class="EXAMPLE"><a name="BSICO" id="BSICO"></a>
--<p><b>Example 9. A Simple Color example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt;
-+ x = p_win-&#62;startx;
-+ y = p_win-&#62;starty;
-+ w = p_win-&#62;width;
-+ h = p_win-&#62;height;
-+
-+ if(flag == TRUE)
-+ { mvaddch(y, x, p_win-&#62;border.tl);
-+ mvaddch(y, x + w, p_win-&#62;border.tr);
-+ mvaddch(y + h, x, p_win-&#62;border.bl);
-+ mvaddch(y + h, x + w, p_win-&#62;border.br);
-+ mvhline(y, x + 1, p_win-&#62;border.ts, w - 1);
-+ mvhline(y + h, x + 1, p_win-&#62;border.bs, w - 1);
-+ mvvline(y + 1, x, p_win-&#62;border.ls, h - 1);
-+ mvvline(y + 1, x + w, p_win-&#62;border.rs, h - 1);
-+
-+ }
-+ else
-+ for(j = y; j &#60;= y + h; ++j)
-+ for(i = x; i &#60;= x + w; ++i)
-+ mvaddch(j, i, ' ');
-+
-+ refresh();
-+
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="COLOR"
-+>10. Colors</A
-+></H2
-+><DIV
-+CLASS="SECT2"
-+><H3
-+CLASS="SECT2"
-+><A
-+NAME="COLORBASICS"
-+>10.1. The basics</A
-+></H3
-+><P
-+>Life seems dull with no colors. Curses has a nice mechanism to handle colors.
-+Let's get into the thick of the things with a small program.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BSICO"
-+></A
-+><P
-+><B
-+>Example 9. A Simple Color example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62;
-
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string);
- int main(int argc, char *argv[])
--{ initscr(); /* Start curses mode */
-- if(has_colors() == FALSE)
-- { endwin();
-- printf("Your terminal does not support color\n");
-- exit(1);
-- }
-- start_color(); /* Start color */
-- init_pair(1, COLOR_RED, COLOR_BLACK);
--
-- attron(COLOR_PAIR(1));
-- print_in_middle(stdscr, LINES / 2, 0, 0, "Viola !!! In color ...");
-- attroff(COLOR_PAIR(1));
-- getch();
-- endwin();
-+{ initscr(); /* Start curses mode */
-+ if(has_colors() == FALSE)
-+ { endwin();
-+ printf("Your terminal does not support color\n");
-+ exit(1);
-+ }
-+ start_color(); /* Start color */
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-+
-+ attron(COLOR_PAIR(1));
-+ print_in_middle(stdscr, LINES / 2, 0, 0, "Viola !!! In color ...");
-+ attroff(COLOR_PAIR(1));
-+ getch();
-+ endwin();
- }
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string)
--{ int length, x, y;
-- float temp;
-+{ int length, x, y;
-+ float temp;
-
-- if(win == NULL)
-- win = stdscr;
-- getyx(win, y, x);
-- if(startx != 0)
-- x = startx;
-- if(starty != 0)
-- y = starty;
-- if(width == 0)
-- width = 80;
--
-- length = strlen(string);
-- temp = (width - length)/ 2;
-- x = startx + (int)temp;
-- mvwprintw(win, y, x, "%s", string);
-- refresh();
-+ if(win == NULL)
-+ win = stdscr;
-+ getyx(win, y, x);
-+ if(startx != 0)
-+ x = startx;
-+ if(starty != 0)
-+ y = starty;
-+ if(width == 0)
-+ width = 80;
-+
-+ length = strlen(string);
-+ temp = (width - length)/ 2;
-+ x = startx + (int)temp;
-+ mvwprintw(win, y, x, "%s", string);
-+ refresh();
- }
--</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>As you can see, to start using color, you should first call the
--function <var class="LITERAL">start_color()</var>. After that, you
--can use color capabilities of your terminals using various
--functions. To find out whether a terminal has color capabilities or
--not, you can use <var class="LITERAL">has_colors()</var> function,
--which returns FALSE if the terminal does not support color.</p>
--<p>Curses initializes all the colors supported by terminal when
--start_color() is called. These can be accessed by the define
--constants like <var class="LITERAL">COLOR_BLACK</var> etc. Now to
--actually start using colors, you have to define pairs. Colors are
--always used in pairs. That means you have to use the function
--<var class="LITERAL">init_pair()</var> to define the foreground and
--background for the pair number you give. After that that pair
--number can be used as a normal attribute with <var class=
--"LITERAL">COLOR_PAIR()</var>function. This may seem to be
--cumbersome at first. But this elegant solution allows us to manage
--color pairs very easily. To appreciate it, you have to look into
--the the source code of "dialog", a utility for displaying dialog
--boxes from shell scripts. The developers have defined foreground
--and background combinations for all the colors they might need and
--initialized at the beginning. This makes it very easy to set
--attributes just by accessing a pair which we already have defined
--as a constant.</p>
--<p>The following colors are defined in <var class=
--"LITERAL">curses.h</var>. You can use these as parameters for
--various color functions.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> COLOR_BLACK 0
-+</SPAN
-+></PRE
-+></DIV
-+><P
-+>As you can see, to start using color, you should first call the function
-+<TT
-+CLASS="LITERAL"
-+> start_color()</TT
-+>. After that, you can use color
-+capabilities of your terminals using various functions. To find out whether a
-+terminal has color capabilities or not, you can use
-+<TT
-+CLASS="LITERAL"
-+>has_colors()</TT
-+> function, which returns FALSE if
-+the terminal does not support color. </P
-+><P
-+>Curses initializes all the colors supported by terminal when start_color() is
-+called. These can be accessed by the define constants like
-+<TT
-+CLASS="LITERAL"
-+>COLOR_BLACK </TT
-+> etc. Now to actually start using
-+colors, you have to define pairs. Colors are always used in pairs. That means
-+you have to use the function <TT
-+CLASS="LITERAL"
-+>init_pair() </TT
-+> to
-+define the foreground and background for the pair number you give. After that
-+that pair number can be used as a normal attribute with <TT
-+CLASS="LITERAL"
-+>COLOR_PAIR()</TT
-+>function. This may seem to be cumbersome at first.
-+But this elegant solution allows us to manage color pairs very easily. To
-+appreciate it, you have to look into the the source code of "dialog", a utility
-+for displaying dialog boxes from shell scripts. The developers have defined
-+foreground and background combinations for all the colors they might need and
-+initialized at the beginning. This makes it very easy to set attributes just by
-+accessing a pair which we already have defined as a constant.</P
-+><P
-+>The following colors are defined in <TT
-+CLASS="LITERAL"
-+>curses.h</TT
-+>.
-+You can use these as parameters for various color functions.
-+<PRE
-+CLASS="PROGRAMLISTING"
-+> COLOR_BLACK 0
- COLOR_RED 1
- COLOR_GREEN 2
- COLOR_YELLOW 3
- COLOR_BLUE 4
- COLOR_MAGENTA 5
- COLOR_CYAN 6
-- COLOR_WHITE 7</font>
--</pre></td>
--</tr>
--</table>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="CHANGECOLORDEFS" id=
--"CHANGECOLORDEFS">10.2. Changing Color Definitions</a></h3>
--<p>The function <var class="LITERAL">init_color()</var>can be used
--to change the rgb values for the colors defined by curses
--initially. Say you wanted to lighten the intensity of red color by
--a minuscule. Then you can use this function as</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> init_color(COLOR_RED, 700, 0, 0);
-+ COLOR_WHITE 7</PRE
-+></P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="CHANGECOLORDEFS"
-+>10.2. Changing Color Definitions</A
-+></H3
-+><P
-+>The function <TT
-+CLASS="LITERAL"
-+>init_color()</TT
-+>can be used to change
-+the rgb values for the colors defined by curses initially. Say you wanted to
-+lighten the intensity of red color by a minuscule. Then you can use this
-+function as</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> init_color(COLOR_RED, 700, 0, 0);
- /* param 1 : color name
-- * param 2, 3, 4 : rgb content min = 0, max = 1000 */</font>
--</pre></td>
--</tr>
--</table>
--<p>If your terminal cannot change the color definitions, the
--function returns ERR. The function <var class=
--"LITERAL">can_change_color()</var> can be used to find out whether
--the terminal has the capability of changing color content or not.
--The rgb content is scaled from 0 to 1000. Initially RED color is
--defined with content 1000(r), 0(g), 0(b).</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="COLORCONTENT" id="COLORCONTENT">10.3.
--Color Content</a></h3>
--<p>The functions <var class="LITERAL">color_content()</var> and
--<var class="LITERAL">pair_content()</var> can be used to find the
--color content and foreground, background combination for the
--pair.</p>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="KEYS" id="KEYS">11. Interfacing with the
--key board</a></h2>
--<div class="SECT2">
--<h3 class="SECT2"><a name="KEYSBASICS" id="KEYSBASICS">11.1. The
--Basics</a></h3>
--<p>No GUI is complete without a strong user interface and to
--interact with the user, a curses program should be sensitive to key
--presses or the mouse actions done by the 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 of getting key
--presses is to use <var class="LITERAL">getch()</var> function. The
--cbreak mode should be enabled to read keys when you are interested
--in reading individual key hits rather than complete lines of text
--(which usually end with a carriage return). keypad should be
--enabled to get the Functions keys, arrow keys etc. See the
--initialization section for details.</p>
--<p><var class="LITERAL">getch()</var> returns an integer
--corresponding to the key pressed. If it is a normal character, the
--integer value will be equivalent to the character. Otherwise it
--returns a number which can be matched with the constants defined in
--<var class="LITERAL">curses.h</var>. For example if the user
--presses F1, the integer returned is 265. This can be checked using
--the macro KEY_F() defined in curses.h. This makes reading keys
--portable and easy to manage.</p>
--<p>For example, if you call getch() like this</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> int ch;
--
-- ch = getch();</font>
--</pre></td>
--</tr>
--</table>
--<p>getch() will wait for the user to press a key, (unless you
--specified a timeout) and when user presses a key, the corresponding
--integer is returned. Then you can check the value returned with the
--constants defined in curses.h to match against the keys you
--want.</p>
--<p>The following code piece will do that job.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> if(ch == KEY_LEFT)
-- printw("Left arrow is pressed\n");</font>
--</pre></td>
--</tr>
--</table>
--<p>Let's write a small program which creates a menu which can be
--navigated by up and down arrows.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="SIMPLEKEYEX" id="SIMPLEKEYEX">11.2. A
--Simple Key Usage example</a></h3>
--<div class="EXAMPLE"><a name="BSIKE" id="BSIKE"></a>
--<p><b>Example 10. A Simple Key Usage example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;stdio.h&gt;
--#include &lt;ncurses.h&gt;
-+ * param 2, 3, 4 : rgb content min = 0, max = 1000 */</PRE
-+><P
-+>If your terminal cannot change the color definitions, the function returns ERR.
-+The function <TT
-+CLASS="LITERAL"
-+>can_change_color()</TT
-+> can be used to
-+find out whether the terminal has the capability of changing color content or
-+not. The rgb content is scaled from 0 to 1000. Initially RED color is defined
-+with content 1000(r), 0(g), 0(b). </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="COLORCONTENT"
-+>10.3. Color Content</A
-+></H3
-+><P
-+>The functions <TT
-+CLASS="LITERAL"
-+>color_content()</TT
-+> and
-+<TT
-+CLASS="LITERAL"
-+>pair_content()</TT
-+> can be used to find the color
-+content and foreground, background combination for the pair. </P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="KEYS"
-+>11. Interfacing with the key board</A
-+></H2
-+><DIV
-+CLASS="SECT2"
-+><H3
-+CLASS="SECT2"
-+><A
-+NAME="KEYSBASICS"
-+>11.1. The Basics</A
-+></H3
-+><P
-+>No GUI is complete without a strong user interface and to interact with the
-+user, a curses program should be sensitive to key presses or the mouse actions
-+done by the 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 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 individual key hits
-+rather than complete lines of text (which usually end with a carriage return).
-+keypad should be enabled to get the Functions keys, arrow keys etc. See the
-+initialization section for details.</P
-+><P
-+><TT
-+CLASS="LITERAL"
-+>getch()</TT
-+> returns an integer corresponding to the
-+key pressed. If it is a normal character, the integer value will be equivalent
-+to the character. Otherwise it returns a number which can be matched with the
-+constants defined in <TT
-+CLASS="LITERAL"
-+>curses.h</TT
-+>. For example if
-+the user presses F1, the integer returned is 265. This can be checked using the
-+macro KEY_F() defined in curses.h. This makes reading keys portable and easy to
-+manage.</P
-+><P
-+>For example, if you call getch() like this</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> int ch;
-+
-+ ch = getch();</PRE
-+><P
-+>getch() will wait for the user to press a key, (unless you specified a timeout)
-+and when user presses a key, the corresponding integer is returned. Then you can
-+check the value returned with the constants defined in curses.h to match against
-+the keys you want.</P
-+><P
-+>The following code piece will do that job.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> if(ch == KEY_LEFT)
-+ printw("Left arrow is pressed\n");</PRE
-+><P
-+>Let's write a small program which creates a menu which can be navigated by up
-+and down arrows.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="SIMPLEKEYEX"
-+>11.2. A Simple Key Usage example</A
-+></H3
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BSIKE"
-+></A
-+><P
-+><B
-+>Example 10. A Simple Key Usage example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;stdio.h&#62;
-+#include &#60;ncurses.h&#62;
-
- #define WIDTH 30
- #define HEIGHT 10
-@@ -2246,127 +3577,132 @@
- int starty = 0;
-
- char *choices[] = {
-- "Choice 1",
-- "Choice 2",
-- "Choice 3",
-- "Choice 4",
-- "Exit",
-- };
-+ "Choice 1",
-+ "Choice 2",
-+ "Choice 3",
-+ "Choice 4",
-+ "Exit",
-+ };
- int n_choices = sizeof(choices) / sizeof(char *);
- void print_menu(WINDOW *menu_win, int highlight);
-
- int main()
--{ WINDOW *menu_win;
-- int highlight = 1;
-- int choice = 0;
-- int c;
--
-- initscr();
-- clear();
-- noecho();
-- cbreak(); /* Line buffering disabled. pass on everything */
-- startx = (80 - WIDTH) / 2;
-- starty = (24 - HEIGHT) / 2;
--
-- menu_win = newwin(HEIGHT, WIDTH, starty, startx);
-- keypad(menu_win, TRUE);
-- mvprintw(0, 0, "Use arrow keys to go up and down, Press enter to select a choice");
-- refresh();
-- print_menu(menu_win, highlight);
-- while(1)
-- { c = wgetch(menu_win);
-- switch(c)
-- { case KEY_UP:
-- if(highlight == 1)
-- highlight = n_choices;
-- else
-- --highlight;
-- break;
-- case KEY_DOWN:
-- if(highlight == n_choices)
-- highlight = 1;
-- else
-- ++highlight;
-- break;
-- case 10:
-- choice = highlight;
-- break;
-- default:
-- mvprintw(24, 0, "Charcter pressed is = %3d Hopefully it can be printed as '%c'", c, c);
-- refresh();
-- break;
-- }
-- print_menu(menu_win, highlight);
-- if(choice != 0) /* User did a choice come out of the infinite loop */
-- break;
-- }
-- mvprintw(23, 0, "You chose choice %d with choice string %s\n", choice, choices[choice - 1]);
-- clrtoeol();
-- refresh();
-- endwin();
-- return 0;
-+{ WINDOW *menu_win;
-+ int highlight = 1;
-+ int choice = 0;
-+ int c;
-+
-+ initscr();
-+ clear();
-+ noecho();
-+ cbreak(); /* Line buffering disabled. pass on everything */
-+ startx = (80 - WIDTH) / 2;
-+ starty = (24 - HEIGHT) / 2;
-+
-+ menu_win = newwin(HEIGHT, WIDTH, starty, startx);
-+ keypad(menu_win, TRUE);
-+ mvprintw(0, 0, "Use arrow keys to go up and down, Press enter to select a choice");
-+ refresh();
-+ print_menu(menu_win, highlight);
-+ while(1)
-+ { c = wgetch(menu_win);
-+ switch(c)
-+ { case KEY_UP:
-+ if(highlight == 1)
-+ highlight = n_choices;
-+ else
-+ --highlight;
-+ break;
-+ case KEY_DOWN:
-+ if(highlight == n_choices)
-+ highlight = 1;
-+ else
-+ ++highlight;
-+ break;
-+ case 10:
-+ choice = highlight;
-+ break;
-+ default:
-+ mvprintw(24, 0, "Charcter pressed is = %3d Hopefully it can be printed as '%c'", c, c);
-+ refresh();
-+ break;
-+ }
-+ print_menu(menu_win, highlight);
-+ if(choice != 0) /* User did a choice come out of the infinite loop */
-+ break;
-+ }
-+ mvprintw(23, 0, "You chose choice %d with choice string %s\n", choice, choices[choice - 1]);
-+ clrtoeol();
-+ refresh();
-+ endwin();
-+ return 0;
- }
-
-
- void print_menu(WINDOW *menu_win, int highlight)
- {
-- int x, y, i;
-+ int x, y, i;
-
-- x = 2;
-- y = 2;
-- box(menu_win, 0, 0);
-- for(i = 0; i &lt; n_choices; ++i)
-- { if(highlight == i + 1) /* High light the present choice */
-- { wattron(menu_win, A_REVERSE);
-- mvwprintw(menu_win, y, x, "%s", choices[i]);
-- wattroff(menu_win, A_REVERSE);
-- }
-- else
-- mvwprintw(menu_win, y, x, "%s", choices[i]);
-- ++y;
-- }
-- wrefresh(menu_win);
-+ x = 2;
-+ y = 2;
-+ box(menu_win, 0, 0);
-+ for(i = 0; i &#60; n_choices; ++i)
-+ { if(highlight == i + 1) /* High light the present choice */
-+ { wattron(menu_win, A_REVERSE);
-+ mvwprintw(menu_win, y, x, "%s", choices[i]);
-+ wattroff(menu_win, A_REVERSE);
-+ }
-+ else
-+ mvwprintw(menu_win, y, x, "%s", choices[i]);
-+ ++y;
-+ }
-+ wrefresh(menu_win);
- }
--</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="MOUSE" id="MOUSE">12. Interfacing with
--the mouse</a></h2>
--<p>Now that you have seen how to get keys, lets do the same thing
--from mouse. Usually each UI allows the user to interact with both
--keyboard and mouse.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MOUSEBASICS" id="MOUSEBASICS">12.1. The
--Basics</a></h3>
--<p>Before you do any thing else, the events you want to receive
--have to be enabled with <var class="LITERAL">mousemask()</var>.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000"> mousemask( mmask_t newmask, /* The events you want to listen to */
-- mmask_t *oldmask) /* The old events mask */</font>
--</pre></td>
--</tr>
--</table>
--<p>The first parameter to above function is a bit mask of events
--you would like to listen. By default, all the events are turned
--off. The bit mask <var class="LITERAL">ALL_MOUSE_EVENTS</var> can
--be used to get all the events.</p>
--<p>The following are all the event masks:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> Name Description
-+</SPAN
-+></PRE
-+></DIV
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="MOUSE"
-+>12. Interfacing with the mouse</A
-+></H2
-+><P
-+>Now that you have seen how to get keys, lets do the same thing from mouse.
-+Usually each UI allows the user to interact with both keyboard and mouse. </P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MOUSEBASICS"
-+>12.1. The Basics</A
-+></H3
-+><P
-+>Before you do any thing else, the events you want to receive have to be enabled
-+with <TT
-+CLASS="LITERAL"
-+>mousemask()</TT
-+>.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> mousemask( mmask_t newmask, /* The events you want to listen to */
-+ mmask_t *oldmask) /* The old events mask */</PRE
-+><P
-+>The first parameter to above function is a bit mask of events you would like to
-+listen. By default, all the events are turned off. The bit mask <TT
-+CLASS="LITERAL"
-+> ALL_MOUSE_EVENTS</TT
-+> can be used to get all the events.</P
-+><P
-+>The following are all the event masks:</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> Name Description
- ---------------------------------------------------------------------
- BUTTON1_PRESSED mouse button 1 down
- BUTTON1_RELEASED mouse button 1 up
-@@ -2392,79 +3728,85 @@
- BUTTON_CTRL control was down during button state change
- BUTTON_ALT alt was down during button state change
- ALL_MOUSE_EVENTS report all button state changes
-- REPORT_MOUSE_POSITION report mouse movement</font>
--</pre></td>
--</tr>
--</table>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="GETTINGEVENTS" id="GETTINGEVENTS">12.2.
--Getting the events</a></h3>
--<p>Once a class of mouse events have been enabled, getch() class of
--functions return KEY_MOUSE every time some mouse event happens.
--Then the mouse event can be retrieved with <var class=
--"LITERAL">getmouse()</var>.</p>
--<p>The code approximately looks like this:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> MEVENT event;
-+ REPORT_MOUSE_POSITION report mouse movement</PRE
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="GETTINGEVENTS"
-+>12.2. Getting the events</A
-+></H3
-+><P
-+>Once a class of mouse events have been enabled, getch() class of functions
-+return KEY_MOUSE every time some mouse event happens. Then the mouse event can
-+be retrieved with <TT
-+CLASS="LITERAL"
-+>getmouse()</TT
-+>.</P
-+><P
-+>The code approximately looks like this:</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> MEVENT event;
-
- ch = getch();
- if(ch == KEY_MOUSE)
- if(getmouse(&amp;event) == OK)
- . /* Do some thing with the event */
- .
-- .</font>
--</pre></td>
--</tr>
--</table>
--<p>getmouse() returns the event into the pointer given to it. It's
--a structure which contains</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> typedef struct
-+ .</PRE
-+><P
-+>
-+getmouse() returns the event into the pointer given to it. It's a structure
-+which contains</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> typedef struct
- {
- short id; /* ID to distinguish multiple devices */
- int x, y, z; /* event coordinates */
- mmask_t bstate; /* button state bits */
-- } </font>
--</pre></td>
--</tr>
--</table>
--<p>The <var class="LITERAL">bstate</var> is the main variable we
--are interested in. It tells the button state of the mouse.</p>
--<p>Then with a code snippet like the following, we can find out
--what happened.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> if(event.bstate &amp; BUTTON1_PRESSED)
-- printw("Left Button Pressed");</font>
--</pre></td>
--</tr>
--</table>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MOUSETOGETHER" id="MOUSETOGETHER">12.3.
--Putting it all Together</a></h3>
--<p>That's pretty much interfacing with mouse. Let's create the same
--menu and enable mouse interaction. To make things simpler, key
--handling is removed.</p>
--<div class="EXAMPLE"><a name="BMOME" id="BMOME"></a>
--<p><b>Example 11. Access the menu with mouse !!!</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt;
-+ } </PRE
-+><P
-+>The <TT
-+CLASS="LITERAL"
-+>bstate</TT
-+> is the main variable we are
-+interested in. It tells the button state of the mouse.</P
-+><P
-+>Then with a code snippet like the following, we can find out what happened.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> if(event.bstate &amp; BUTTON1_PRESSED)
-+ printw("Left Button Pressed");</PRE
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MOUSETOGETHER"
-+>12.3. Putting it all Together</A
-+></H3
-+><P
-+>That's pretty much interfacing with mouse. Let's create the same menu and enable
-+mouse interaction. To make things simpler, key handling is removed.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BMOME"
-+></A
-+><P
-+><B
-+>Example 11. Access the menu with mouse !!! </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62;
-
- #define WIDTH 30
- #define HEIGHT 10
-@@ -2472,12 +3814,12 @@
- int startx = 0;
- int starty = 0;
-
--char *choices[] = { "Choice 1",
-- "Choice 2",
-- "Choice 3",
-- "Choice 4",
-- "Exit",
-- };
-+char *choices[] = { "Choice 1",
-+ "Choice 2",
-+ "Choice 3",
-+ "Choice 4",
-+ "Exit",
-+ };
-
- int n_choices = sizeof(choices) / sizeof(char *);
-
-@@ -2485,270 +3827,338 @@
- void report_choice(int mouse_x, int mouse_y, int *p_choice);
-
- int main()
--{ int c, choice = 0;
-- WINDOW *menu_win;
-- MEVENT event;
--
-- /* Initialize curses */
-- initscr();
-- clear();
-- noecho();
-- cbreak(); //Line buffering disabled. pass on everything
--
-- /* Try to put the window in the middle of screen */
-- startx = (80 - WIDTH) / 2;
-- starty = (24 - HEIGHT) / 2;
--
-- attron(A_REVERSE);
-- mvprintw(23, 1, "Click on Exit to quit (Works best in a virtual console)");
-- refresh();
-- attroff(A_REVERSE);
--
-- /* Print the menu for the first time */
-- menu_win = newwin(HEIGHT, WIDTH, starty, startx);
-- print_menu(menu_win, 1);
-- /* Get all the mouse events */
-- mousemask(ALL_MOUSE_EVENTS, NULL);
--
-- while(1)
-- { c = wgetch(menu_win);
-- switch(c)
-- { case KEY_MOUSE:
-- if(getmouse(&amp;event) == OK)
-- { /* When the user clicks left mouse button */
-- if(event.bstate &amp; BUTTON1_PRESSED)
-- { report_choice(event.x + 1, event.y + 1, &amp;choice);
-- if(choice == -1) //Exit chosen
-- goto end;
-- mvprintw(22, 1, "Choice made is : %d String Chosen is \"%10s\"", choice, choices[choice - 1]);
-- refresh();
-- }
-- }
-- print_menu(menu_win, choice);
-- break;
-- }
-- }
-+{ int c, choice = 0;
-+ WINDOW *menu_win;
-+ MEVENT event;
-+
-+ /* Initialize curses */
-+ initscr();
-+ clear();
-+ noecho();
-+ cbreak(); //Line buffering disabled. pass on everything
-+
-+ /* Try to put the window in the middle of screen */
-+ startx = (80 - WIDTH) / 2;
-+ starty = (24 - HEIGHT) / 2;
-+
-+ attron(A_REVERSE);
-+ mvprintw(23, 1, "Click on Exit to quit (Works best in a virtual console)");
-+ refresh();
-+ attroff(A_REVERSE);
-+
-+ /* Print the menu for the first time */
-+ menu_win = newwin(HEIGHT, WIDTH, starty, startx);
-+ print_menu(menu_win, 1);
-+ /* Get all the mouse events */
-+ mousemask(ALL_MOUSE_EVENTS, NULL);
-+
-+ while(1)
-+ { c = wgetch(menu_win);
-+ switch(c)
-+ { case KEY_MOUSE:
-+ if(getmouse(&#38;event) == OK)
-+ { /* When the user clicks left mouse button */
-+ if(event.bstate &#38; BUTTON1_PRESSED)
-+ { report_choice(event.x + 1, event.y + 1, &#38;choice);
-+ if(choice == -1) //Exit chosen
-+ goto end;
-+ mvprintw(22, 1, "Choice made is : %d String Chosen is \"%10s\"", choice, choices[choice - 1]);
-+ refresh();
-+ }
-+ }
-+ print_menu(menu_win, choice);
-+ break;
-+ }
-+ }
- end:
-- endwin();
-- return 0;
-+ endwin();
-+ return 0;
- }
-
-
- void print_menu(WINDOW *menu_win, int highlight)
- {
-- int x, y, i;
-+ int x, y, i;
-
-- x = 2;
-- y = 2;
-- box(menu_win, 0, 0);
-- for(i = 0; i &lt; n_choices; ++i)
-- { if(highlight == i + 1)
-- { wattron(menu_win, A_REVERSE);
-- mvwprintw(menu_win, y, x, "%s", choices[i]);
-- wattroff(menu_win, A_REVERSE);
-- }
-- else
-- mvwprintw(menu_win, y, x, "%s", choices[i]);
-- ++y;
-- }
-- wrefresh(menu_win);
-+ x = 2;
-+ y = 2;
-+ box(menu_win, 0, 0);
-+ for(i = 0; i &#60; n_choices; ++i)
-+ { if(highlight == i + 1)
-+ { wattron(menu_win, A_REVERSE);
-+ mvwprintw(menu_win, y, x, "%s", choices[i]);
-+ wattroff(menu_win, A_REVERSE);
-+ }
-+ else
-+ mvwprintw(menu_win, y, x, "%s", choices[i]);
-+ ++y;
-+ }
-+ wrefresh(menu_win);
- }
-
- /* Report the choice according to mouse position */
- void report_choice(int mouse_x, int mouse_y, int *p_choice)
--{ int i,j, choice;
-+{ int i,j, choice;
-
-- i = startx + 2;
-- j = starty + 3;
--
-- for(choice = 0; choice &lt; n_choices; ++choice)
-- if(mouse_y == j + choice &amp;&amp; mouse_x &gt;= i &amp;&amp; mouse_x &lt;= i + strlen(choices[choice]))
-- { if(choice == n_choices - 1)
-- *p_choice = -1;
-- else
-- *p_choice = choice + 1;
-- break;
-- }
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MISCMOUSEFUNCS" id=
--"MISCMOUSEFUNCS">12.4. Miscellaneous Functions</a></h3>
--<p>The functions mouse_trafo() and wmouse_trafo() can be used to
--convert to mouse co-ordinates to screen relative co-ordinates. See
--curs_mouse(3X) man page for details.</p>
--<p>The mouseinterval function sets the maximum time (in thousands
--of a second) that can elapse between press and release events in
--order for them to be recognized as a click. This function returns
--the previous interval value. The default is one fifth of a
--second.</p>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="SCREEN" id="SCREEN">13. Screen
--Manipulation</a></h2>
--<p>In this section, we will look into some functions, which allow
--us to manage the screen efficiently and to write some fancy
--programs. This is especially important in writing games.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="GETYX" id="GETYX">13.1. getyx()
--functions</a></h3>
--<p>The function <var class="LITERAL">getyx()</var> can be used to
--find out the present cursor co-ordinates. It will fill the values
--of x and y co-ordinates in the arguments given to it. Since getyx()
--is a macro you don't have to pass the address of the variables. It
--can be called as</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> getyx(win, y, x);
-+ i = startx + 2;
-+ j = starty + 3;
-+
-+ for(choice = 0; choice &#60; n_choices; ++choice)
-+ if(mouse_y == j + choice &#38;&#38; mouse_x &#62;= i &#38;&#38; mouse_x &#60;= i + strlen(choices[choice]))
-+ { if(choice == n_choices - 1)
-+ *p_choice = -1;
-+ else
-+ *p_choice = choice + 1;
-+ break;
-+ }
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MISCMOUSEFUNCS"
-+>12.4. Miscellaneous Functions</A
-+></H3
-+><P
-+>The functions mouse_trafo() and wmouse_trafo() can be used to convert to mouse
-+co-ordinates to screen relative co-ordinates. See curs_mouse(3X) man page for details.</P
-+><P
-+>The mouseinterval function sets the maximum time (in thousands of a
-+second) that can elapse between press and release events in order for
-+them to be recognized as a click. This function returns the previous
-+interval value. The default is one fifth of a second.</P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="SCREEN"
-+>13. Screen Manipulation</A
-+></H2
-+><P
-+>In this section, we will look into some functions, which allow us to manage the
-+screen efficiently and to write some fancy programs. This is especially
-+important in writing games. </P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="GETYX"
-+>13.1. getyx() functions</A
-+></H3
-+><P
-+>&#13;The function <TT
-+CLASS="LITERAL"
-+>getyx()</TT
-+> can be used to find out
-+the present cursor co-ordinates. It will fill the values of x and y co-ordinates
-+in the arguments given to it. Since getyx() is a macro you don't have to pass
-+the address of the variables. It can be called as</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> getyx(win, y, x);
- /* win: window pointer
- * y, x: y, x co-ordinates will be put into this variables
-- */</font>
--</pre></td>
--</tr>
--</table>
--<p>The function getparyx() gets the beginning co-ordinates of the
--sub window relative to the main window. This is some times useful
--to update a sub window. When designing fancy stuff like writing
--multiple menus, it becomes difficult to store the menu positions,
--their first option co-ordinates etc. A simple solution to this
--problem, is to create menus in sub windows and later find the
--starting co-ordinates of the menus by using getparyx().</p>
--<p>The functions getbegyx() and getmaxyx() store current window's
--beginning and maximum co-ordinates. These functions are useful in
--the same way as above in managing the windows and sub windows
--effectively.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="SCREENDUMP" id="SCREENDUMP">13.2. Screen
--Dumping</a></h3>
--<p>While writing games, some times it becomes necessary to store
--the state of the screen and restore it back to the same state. The
--function scr_dump() can be used to dump the screen contents to a
--file given as an argument. Later it can be restored by scr_restore
--function. These two simple functions can be used effectively to
--maintain a fast moving game with changing scenarios.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="WINDOWDUMP" id="WINDOWDUMP">13.3. Window
--Dumping</a></h3>
--<p>To store and restore windows, the functions <var class=
--"LITERAL">putwin()</var> and <var class="LITERAL">getwin()</var>
--can be used. <var class="LITERAL">putwin()</var> puts the present
--window state into a file, which can be later restored by
--<var class="LITERAL">getwin()</var>.</p>
--<p>The function <var class="LITERAL">copywin()</var> can be 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 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>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="MISC" id="MISC">14. Miscellaneous
--features</a></h2>
--<p>Now you know enough features to write a good curses program,
--with all bells and whistles. There are some miscellaneous functions
--which are useful in various cases. Let's go headlong into some of
--those.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="CURSSET" id="CURSSET">14.1.
--curs_set()</a></h3>
--<p>This function can be used to make the cursor invisible. The
--parameter to this function should be</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> 0 : invisible or
-+ */</PRE
-+><P
-+>The function getparyx() gets the beginning co-ordinates of the sub window
-+relative to the main window. This is some times useful to update a sub window.
-+When designing fancy stuff like writing multiple menus, it becomes difficult to
-+store the menu positions, their first option co-ordinates etc. A simple solution
-+to this problem, is to create menus in sub windows and later find the starting
-+co-ordinates of the menus by using getparyx().</P
-+><P
-+>The functions getbegyx() and getmaxyx() store current window's beginning and
-+maximum co-ordinates. These functions are useful in the same way as above in
-+managing the windows and sub windows effectively.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="SCREENDUMP"
-+>13.2. Screen Dumping</A
-+></H3
-+><P
-+>While writing games, some times it becomes necessary to store the state of the
-+screen and restore it back to the same state. The function scr_dump() can be
-+used to dump the screen contents to a file given as an argument. Later it can be
-+restored by scr_restore function. These two simple functions can be used
-+effectively to maintain a fast moving game with changing scenarios. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="WINDOWDUMP"
-+>13.3. Window Dumping</A
-+></H3
-+><P
-+>To store and restore windows, the functions
-+<TT
-+CLASS="LITERAL"
-+>putwin()</TT
-+> and <TT
-+CLASS="LITERAL"
-+>getwin()</TT
-+> can be used. <TT
-+CLASS="LITERAL"
-+>putwin()</TT
-+> puts
-+the present window state into a file, which can be later restored by
-+<TT
-+CLASS="LITERAL"
-+>getwin()</TT
-+>.</P
-+><P
-+>
-+The function <TT
-+CLASS="LITERAL"
-+>copywin()</TT
-+> can be 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 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
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="MISC"
-+>14. Miscellaneous features</A
-+></H2
-+><P
-+>Now you know enough features to write a good curses program, with all bells and
-+whistles. There are some miscellaneous functions which are useful in various
-+cases. Let's go headlong into some of those.</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="CURSSET"
-+>14.1. curs_set()</A
-+></H3
-+><P
-+>This function can be used to make the cursor invisible. The parameter to this
-+function should be </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> 0 : invisible or
- 1 : normal or
-- 2 : very visible.</font>
--</pre></td>
--</tr>
--</table>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="TEMPLEAVE" id="TEMPLEAVE">14.2.
--Temporarily Leaving Curses mode</a></h3>
--<p>Some times you may want to get back to cooked mode (normal line
--buffering mode) temporarily. In such a case you will first need to
--save the tty modes with a call to <var class=
--"LITERAL">def_prog_mode()</var> and then call <var class=
--"LITERAL">endwin()</var> to end the curses mode. This will leave
--you in the original tty mode. To get back to curses once you are
--done, call <var class="LITERAL">reset_prog_mode()</var> . This
--function returns the tty to the state stored by <var class=
--"LITERAL">def_prog_mode()</var>. Then do refresh(), and you are
--back to the curses mode. Here is an example showing the sequence of
--things to be done.</p>
--<div class="EXAMPLE"><a name="BTELE" id="BTELE"></a>
--<p><b>Example 12. Temporarily Leaving Curses Mode</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt;
-+ 2 : very visible.</PRE
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="TEMPLEAVE"
-+>14.2. Temporarily Leaving Curses mode</A
-+></H3
-+><P
-+>Some times you may want to get back to cooked mode (normal line buffering mode)
-+temporarily. In such a case you will first need to save the tty modes with a
-+call to <TT
-+CLASS="LITERAL"
-+>def_prog_mode()</TT
-+> and then call
-+<TT
-+CLASS="LITERAL"
-+>endwin()</TT
-+> to end the curses mode. This will
-+leave you in the original tty mode. To get back to curses once you are done,
-+call <TT
-+CLASS="LITERAL"
-+>reset_prog_mode() </TT
-+>. This function returns
-+the tty to the state stored by <TT
-+CLASS="LITERAL"
-+>def_prog_mode()</TT
-+>. Then do refresh(), and you are back to the curses mode. Here
-+is an example showing the sequence of things to be done.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BTELE"
-+></A
-+><P
-+><B
-+>Example 12. Temporarily Leaving Curses Mode </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62;
-
- int main()
--{
-- initscr(); /* Start curses mode */
-- printw("Hello World !!!\n"); /* Print Hello World */
-- refresh(); /* Print it on to the real screen */
-- def_prog_mode(); /* Save the tty modes */
-- endwin(); /* End curses mode temporarily */
-- system("/bin/sh"); /* Do whatever you like in cooked mode */
-- reset_prog_mode(); /* Return to the previous tty mode*/
-- /* stored by def_prog_mode() */
-- refresh(); /* Do refresh() to restore the */
-- /* Screen contents */
-- printw("Another String\n"); /* Back to curses use the full */
-- refresh(); /* capabilities of curses */
-- endwin(); /* End curses mode */
--
-- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="ACSVARS" id="ACSVARS">14.3. ACS_
--variables</a></h3>
--<p>If you have ever programmed in DOS, you know about those nifty
--characters in extended character set. They are printable only on
--some terminals. NCURSES functions like <var class=
--"LITERAL">box()</var> use these characters. All these variables
--start with ACS meaning alternative character set. You might have
--noticed me using these characters in some of the programs above.
--Here's an example showing all the characters.</p>
--<div class="EXAMPLE"><a name="BACSVARS" id="BACSVARS"></a>
--<p><b>Example 13. ACS Variables Example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;ncurses.h&gt;
-+{
-+ initscr(); /* Start curses mode */
-+ printw("Hello World !!!\n"); /* Print Hello World */
-+ refresh(); /* Print it on to the real screen */
-+ def_prog_mode(); /* Save the tty modes */
-+ endwin(); /* End curses mode temporarily */
-+ system("/bin/sh"); /* Do whatever you like in cooked mode */
-+ reset_prog_mode(); /* Return to the previous tty mode*/
-+ /* stored by def_prog_mode() */
-+ refresh(); /* Do refresh() to restore the */
-+ /* Screen contents */
-+ printw("Another String\n"); /* Back to curses use the full */
-+ refresh(); /* capabilities of curses */
-+ endwin(); /* End curses mode */
-+
-+ return 0;
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="ACSVARS"
-+>14.3. ACS_ variables</A
-+></H3
-+><P
-+>If you have ever programmed in DOS, you know about those nifty characters in
-+extended character set. They are printable only on some terminals. NCURSES
-+functions like <TT
-+CLASS="LITERAL"
-+>box()</TT
-+> use these characters. All
-+these variables start with ACS meaning alternative character set. You might have
-+noticed me using these characters in some of the programs above. Here's an example
-+showing all the characters.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="BACSVARS"
-+></A
-+><P
-+><B
-+>Example 13. ACS Variables Example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;ncurses.h&#62;
-
- int main()
- {
-@@ -2790,181 +4200,218 @@
- getch();
- endwin();
-
-- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="OTHERLIB" id="OTHERLIB">15. Other
--libraries</a></h2>
--<p>Apart from the curses library, there are few text mode
--libraries, which provide more functionality and a lot of features.
--The following sections explain three standard libraries which are
--usually distributed along with curses.</p>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="PANELS" id="PANELS">16. Panel
--Library</a></h2>
--<p>Now that you are proficient in curses, you wanted to do some
--thing big. You created a lot of overlapping windows to give a
--professional windows-type look. Unfortunately, it soon becomes
--difficult to manage these. The multiple refreshes, updates plunge
--you into a nightmare. The overlapping windows create blotches,
--whenever you forget to refresh the windows in the proper order.</p>
--<p>Don't despair. There's an elegant solution provided in panels
--library. In the words of developers of ncurses</p>
--<p><em>When your interface design is such that windows may dive
--deeper into the visibility stack or pop to the top at runtime, the
--resulting book-keeping can be tedious and difficult to get right.
--Hence the panels library.</em></p>
--<p>If you have lot of overlapping windows, then panels library is
--the way to go. It obviates the need of doing series of
--wnoutrefresh(), doupdate() and relieves the burden of doing it
--correctly(bottom up). The library maintains information about the
--order of windows, their overlapping and update the screen properly.
--So why wait? Let's take a close peek into panels.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="PANELBASICS" id="PANELBASICS">16.1. The
--Basics</a></h3>
--<p>Panel object is a window that is implicitly treated as part of a
--deck including all other panel objects. The deck is treated as a
--stack with the top panel being completely visible and the other
--panels may or may not be obscured according to their positions. So
--the basic idea is to create a stack of overlapping panels and use
--panels library to display them correctly. There is a function
--similar to refresh() which, when called , displays panels in the
--correct order. Functions are provided to hide or show panels, move
--panels, change its size etc.. The overlapping problem is managed by
--the panels library during all the calls to these functions.</p>
--<p>The general flow of a panel program goes like this:</p>
--<ol type="1">
--<li>
--<p>Create the windows (with newwin()) to be attached to the
--panels.</p>
--</li>
--<li>
--<p>Create panels with the chosen visibility order. Stack them up
--according to the desired visibility. The function new_panel() is
--used to created panels.</p>
--</li>
--<li>
--<p>Call update_panels() to write the panels to the virtual screen
--in correct visibility order. Do a doupdate() to show it on the
--screen.</p>
--</li>
--<li>
--<p>Mainpulate the panels with show_panel(), hide_panel(),
--move_panel() etc. Make use of helper functions like panel_hidden()
--and panel_window(). Make use of user pointer to store custom data
--for a panel. Use the functions set_panel_userptr() and
--panel_userptr() to set and get the user pointer for a panel.</p>
--</li>
--<li>
--<p>When you are done with the panel use del_panel() to delete the
--panel.</p>
--</li>
--</ol>
--<p>Let's make the concepts clear, with some programs. The following
--is a simple program which creates 3 overlapping panels and shows
--them on the screen.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="COMPILEPANELS" id="COMPILEPANELS">16.2.
--Compiling With the Panels Library</a></h3>
--<p>To use panels library functions, you have to include panel.h and
--to link the program with panels library the flag -lpanel should be
--added along with -lncurses in that order.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> #include &lt;panel.h&gt;
-+ return 0;
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="OTHERLIB"
-+>15. Other libraries</A
-+></H2
-+><P
-+>Apart from the curses library, there are few text mode libraries, which provide
-+more functionality and a lot of features. The following sections explain three
-+standard libraries which are usually distributed along with curses. </P
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="PANELS"
-+>16. Panel Library</A
-+></H2
-+><P
-+>Now that you are proficient in curses, you wanted to do some thing big. You
-+created a lot of overlapping windows to give a professional windows-type look.
-+Unfortunately, it soon becomes difficult to manage these. The multiple
-+refreshes, updates plunge you into a nightmare. The overlapping windows create
-+blotches, whenever you forget to refresh the windows in the proper order. </P
-+><P
-+>Don't despair. There's an elegant solution provided in panels library. In the
-+words of developers of ncurses </P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>When your interface design is such that windows may dive deeper into the
-+visibility stack or pop to the top at runtime, the resulting book-keeping can be
-+tedious and difficult to get right. Hence the panels library.</I
-+></SPAN
-+></P
-+><P
-+>If you have lot of overlapping windows, then panels library is the way to go. It
-+obviates the need of doing series of wnoutrefresh(), doupdate() and relieves the
-+burden of doing it correctly(bottom up). The library maintains information about
-+the order of windows, their overlapping and update the screen properly. So why
-+wait? Let's take a close peek into panels.</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="PANELBASICS"
-+>16.1. The Basics</A
-+></H3
-+><P
-+>Panel object is a window that is implicitly treated as part of a deck including
-+all other panel objects. The deck is treated as a stack with the top panel being
-+completely visible and the other panels may or may not be obscured according to
-+their positions. So the basic idea is to create a stack of overlapping panels
-+and use panels library to display them correctly. There is a function similar to
-+refresh() which, when called , displays panels in the correct order. Functions
-+are provided to hide or show panels, move panels, change its size etc.. The
-+overlapping problem is managed by the panels library during all the calls to
-+these functions. </P
-+><P
-+>The general flow of a panel program goes like this:
-+
-+<P
-+></P
-+><OL
-+TYPE="1"
-+><LI
-+><P
-+>Create the windows (with newwin()) to be attached to the panels.</P
-+></LI
-+><LI
-+><P
-+>Create panels with the chosen visibility order. Stack them up according to the
-+desired visibility. The function new_panel() is used to created panels.</P
-+></LI
-+><LI
-+><P
-+>Call update_panels() to write the panels to the virtual screen in correct
-+visibility order. Do a doupdate() to show it on the screen. </P
-+></LI
-+><LI
-+><P
-+>Mainpulate the panels with show_panel(), hide_panel(), move_panel() etc. Make
-+use of helper functions like panel_hidden() and panel_window(). Make use of user
-+pointer to store custom data for a panel. Use the functions set_panel_userptr()
-+and panel_userptr() to set and get the user pointer for a panel.</P
-+></LI
-+><LI
-+><P
-+>When you are done with the panel use del_panel() to delete the panel.</P
-+></LI
-+></OL
-+></P
-+><P
-+>Let's make the concepts clear, with some programs. The following is a simple
-+program which creates 3 overlapping panels and shows them on the screen. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="COMPILEPANELS"
-+>16.2. Compiling With the Panels Library</A
-+></H3
-+><P
-+>To use panels library functions, you have to include panel.h and to link the
-+program with panels library the flag -lpanel should be added along with
-+-lncurses in that order.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> #include &lt;panel.h&gt;
- .
- .
- .
-
-- compile and link: gcc &lt;program file&gt; -lpanel -lncurses</font>
--</pre></td>
--</tr>
--</table>
--<div class="EXAMPLE"><a name="PPASI" id="PPASI"></a>
--<p><b>Example 14. Panel basics</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;panel.h&gt;
-+ compile and link: gcc &lt;program file&gt; -lpanel -lncurses</PRE
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="PPASI"
-+></A
-+><P
-+><B
-+>Example 14. Panel basics</B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;panel.h&#62;
-
- int main()
--{ WINDOW *my_wins[3];
-- PANEL *my_panels[3];
-- int lines = 10, cols = 40, y = 2, x = 4, i;
--
-- initscr();
-- cbreak();
-- noecho();
--
-- /* Create windows for the panels */
-- my_wins[0] = newwin(lines, cols, y, x);
-- my_wins[1] = newwin(lines, cols, y + 1, x + 5);
-- my_wins[2] = newwin(lines, cols, y + 2, x + 10);
--
-- /*
-- * Create borders around the windows so that you can see the effect
-- * of panels
-- */
-- for(i = 0; i &lt; 3; ++i)
-- box(my_wins[i], 0, 0);
--
-- /* Attach a panel to each window */ /* Order is bottom up */
-- my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */
-- my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */
-- my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */
--
-- /* Update the stacking order. 2nd panel will be on top */
-- update_panels();
--
-- /* Show it on the screen */
-- doupdate();
--
-- getch();
-- endwin();
-+{ WINDOW *my_wins[3];
-+ PANEL *my_panels[3];
-+ int lines = 10, cols = 40, y = 2, x = 4, i;
-+
-+ initscr();
-+ cbreak();
-+ noecho();
-+
-+ /* Create windows for the panels */
-+ my_wins[0] = newwin(lines, cols, y, x);
-+ my_wins[1] = newwin(lines, cols, y + 1, x + 5);
-+ my_wins[2] = newwin(lines, cols, y + 2, x + 10);
-+
-+ /*
-+ * Create borders around the windows so that you can see the effect
-+ * of panels
-+ */
-+ for(i = 0; i &#60; 3; ++i)
-+ box(my_wins[i], 0, 0);
-+
-+ /* Attach a panel to each window */ /* Order is bottom up */
-+ my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */
-+ my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */
-+ my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */
-+
-+ /* Update the stacking order. 2nd panel will be on top */
-+ update_panels();
-+
-+ /* Show it on the screen */
-+ doupdate();
-+
-+ getch();
-+ endwin();
- }
--</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>As you can see, above program follows a simple flow as
--explained. The windows are created with newwin() and then they are
--attached to panels with new_panel(). As we attach one panel after
--another, the stack of panels gets updated. To put them on screen
--update_panels() and doupdate() are called.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="PANELBROWSING" id="PANELBROWSING">16.3.
--Panel Window Browsing</a></h3>
--<p>A slightly complicated example is given below. This program
--creates 3 windows which can be cycled through using tab. Have a
--look at the code.</p>
--<div class="EXAMPLE"><a name="PPABR" id="PPABR"></a>
--<p><b>Example 15. Panel Window Browsing Example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;panel.h&gt;
-+</SPAN
-+></PRE
-+></DIV
-+><P
-+>As you can see, above program follows a simple flow as explained. The windows
-+are created with newwin() and then they are attached to panels with new_panel().
-+As we attach one panel after another, the stack of panels gets updated. To put
-+them on screen update_panels() and doupdate() are called.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="PANELBROWSING"
-+>16.3. Panel Window Browsing</A
-+></H3
-+><P
-+>A slightly complicated example is given below. This program creates 3
-+windows which can be cycled through using tab. Have a look at the code.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="PPABR"
-+></A
-+><P
-+><B
-+>Example 15. Panel Window Browsing Example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;panel.h&#62;
-
- #define NLINES 10
- #define NCOLS 40
-@@ -2974,172 +4421,191 @@
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color);
-
- int main()
--{ WINDOW *my_wins[3];
-- PANEL *my_panels[3];
-- PANEL *top;
-- int ch;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-- cbreak();
-- noecho();
-- keypad(stdscr, TRUE);
--
-- /* Initialize all the colors */
-- init_pair(1, COLOR_RED, COLOR_BLACK);
-- init_pair(2, COLOR_GREEN, COLOR_BLACK);
-- init_pair(3, COLOR_BLUE, COLOR_BLACK);
-- init_pair(4, COLOR_CYAN, COLOR_BLACK);
--
-- init_wins(my_wins, 3);
--
-- /* Attach a panel to each window */ /* Order is bottom up */
-- my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */
-- my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */
-- my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */
--
-- /* Set up the user pointers to the next panel */
-- set_panel_userptr(my_panels[0], my_panels[1]);
-- set_panel_userptr(my_panels[1], my_panels[2]);
-- set_panel_userptr(my_panels[2], my_panels[0]);
--
-- /* Update the stacking order. 2nd panel will be on top */
-- update_panels();
--
-- /* Show it on the screen */
-- attron(COLOR_PAIR(4));
-- mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)");
-- attroff(COLOR_PAIR(4));
-- doupdate();
--
-- top = my_panels[2];
-- while((ch = getch()) != KEY_F(1))
-- { switch(ch)
-- { case 9:
-- top = (PANEL *)panel_userptr(top);
-- top_panel(top);
-- break;
-- }
-- update_panels();
-- doupdate();
-- }
-- endwin();
-- return 0;
-+{ WINDOW *my_wins[3];
-+ PANEL *my_panels[3];
-+ PANEL *top;
-+ int ch;
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
-+ cbreak();
-+ noecho();
-+ keypad(stdscr, TRUE);
-+
-+ /* Initialize all the colors */
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-+ init_pair(2, COLOR_GREEN, COLOR_BLACK);
-+ init_pair(3, COLOR_BLUE, COLOR_BLACK);
-+ init_pair(4, COLOR_CYAN, COLOR_BLACK);
-+
-+ init_wins(my_wins, 3);
-+
-+ /* Attach a panel to each window */ /* Order is bottom up */
-+ my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */
-+ my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */
-+ my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */
-+
-+ /* Set up the user pointers to the next panel */
-+ set_panel_userptr(my_panels[0], my_panels[1]);
-+ set_panel_userptr(my_panels[1], my_panels[2]);
-+ set_panel_userptr(my_panels[2], my_panels[0]);
-+
-+ /* Update the stacking order. 2nd panel will be on top */
-+ update_panels();
-+
-+ /* Show it on the screen */
-+ attron(COLOR_PAIR(4));
-+ mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)");
-+ attroff(COLOR_PAIR(4));
-+ doupdate();
-+
-+ top = my_panels[2];
-+ while((ch = getch()) != KEY_F(1))
-+ { switch(ch)
-+ { case 9:
-+ top = (PANEL *)panel_userptr(top);
-+ top_panel(top);
-+ break;
-+ }
-+ update_panels();
-+ doupdate();
-+ }
-+ endwin();
-+ return 0;
- }
-
- /* Put all the windows */
- void init_wins(WINDOW **wins, int n)
--{ int x, y, i;
-- char label[80];
-+{ int x, y, i;
-+ char label[80];
-
-- y = 2;
-- x = 10;
-- for(i = 0; i &lt; n; ++i)
-- { wins[i] = newwin(NLINES, NCOLS, y, x);
-- sprintf(label, "Window Number %d", i + 1);
-- win_show(wins[i], label, i + 1);
-- y += 3;
-- x += 7;
-- }
-+ y = 2;
-+ x = 10;
-+ for(i = 0; i &#60; n; ++i)
-+ { wins[i] = newwin(NLINES, NCOLS, y, x);
-+ sprintf(label, "Window Number %d", i + 1);
-+ win_show(wins[i], label, i + 1);
-+ y += 3;
-+ x += 7;
-+ }
- }
-
- /* Show the window with a border and a label */
- void win_show(WINDOW *win, char *label, int label_color)
--{ int startx, starty, height, width;
-+{ int startx, starty, height, width;
-
-- getbegyx(win, starty, startx);
-- getmaxyx(win, height, width);
-+ getbegyx(win, starty, startx);
-+ getmaxyx(win, height, width);
-
-- box(win, 0, 0);
-- mvwaddch(win, 2, 0, ACS_LTEE);
-- mvwhline(win, 2, 1, ACS_HLINE, width - 2);
-- mvwaddch(win, 2, width - 1, ACS_RTEE);
--
-- print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color));
-+ box(win, 0, 0);
-+ mvwaddch(win, 2, 0, ACS_LTEE);
-+ mvwhline(win, 2, 1, ACS_HLINE, width - 2);
-+ mvwaddch(win, 2, width - 1, ACS_RTEE);
-+
-+ print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color));
- }
-
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color)
--{ int length, x, y;
-- float temp;
-+{ int length, x, y;
-+ float temp;
-
-- if(win == NULL)
-- win = stdscr;
-- getyx(win, y, x);
-- if(startx != 0)
-- x = startx;
-- if(starty != 0)
-- y = starty;
-- if(width == 0)
-- width = 80;
--
-- length = strlen(string);
-- temp = (width - length)/ 2;
-- x = startx + (int)temp;
-- wattron(win, color);
-- mvwprintw(win, y, x, "%s", string);
-- wattroff(win, color);
-- refresh();
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="USERPTRUSING" id="USERPTRUSING">16.4.
--Using User Pointers</a></h3>
--<p>In the above example I used user pointers to find out the next
--window in the cycle. We can attach custom information to the panel
--by specifying a user pointer, which can point to any information
--you want to store. In this case I stored the pointer to the next
--panel in the cycle. User pointer for a panel can be set with the
--function <var class="LITERAL">set_panel_userptr()</var>. It can be
--accessed using the function <var class=
--"LITERAL">panel_userptr()</var> 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 function top_panel(). This
--function brings the panel given as argument to the top of the panel
--stack.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="PANELMOVERESIZE" id=
--"PANELMOVERESIZE">16.5. Moving and Resizing Panels</a></h3>
--<p>The function <var class="LITERAL">move_panel()</var> can be used
--to move a panel to the desired location. It does not change the
--position of the panel in the stack. Make sure that you use
--move_panel() instead mvwin() on the window associated with the
--panel.</p>
--<p>Resizing a panel is slightly complex. There is no straight
--forward function just to resize the window associated with a panel.
--A solution to resize a panel is to create a new window with the
--desired sizes, change the window associated with the panel using
--replace_panel(). Don't forget to delete the old window. The window
--associated with a panel can be found by using the function
--panel_window().</p>
--<p>The following program shows these concepts, in supposedly simple
--program. You can cycle through the window with &lt;TAB&gt; as
--usual. To resize or move the active panel press 'r' for resize 'm'
--for moving. Then use arrow keys to resize or move it to the desired
--way and press enter to end your resizing or moving. This example
--makes use of user data to get the required data to do the
--operations.</p>
--<div class="EXAMPLE"><a name="PPARE" id="PPARE"></a>
--<p><b>Example 16. Panel Moving and Resizing example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;panel.h&gt;
-+ if(win == NULL)
-+ win = stdscr;
-+ getyx(win, y, x);
-+ if(startx != 0)
-+ x = startx;
-+ if(starty != 0)
-+ y = starty;
-+ if(width == 0)
-+ width = 80;
-+
-+ length = strlen(string);
-+ temp = (width - length)/ 2;
-+ x = startx + (int)temp;
-+ wattron(win, color);
-+ mvwprintw(win, y, x, "%s", string);
-+ wattroff(win, color);
-+ refresh();
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="USERPTRUSING"
-+>16.4. Using User Pointers</A
-+></H3
-+><P
-+>In the above example I used user pointers to find out the next window in the
-+cycle. We can attach custom information to the panel by specifying a user
-+pointer, which can point to any information you want to store. In this case I
-+stored the pointer to the next panel in the cycle. User pointer for a panel can
-+be set with the function <TT
-+CLASS="LITERAL"
-+> set_panel_userptr()</TT
-+>.
-+It 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 function top_panel(). This function brings the panel given as argument to
-+the top of the panel stack. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="PANELMOVERESIZE"
-+>16.5. Moving and Resizing Panels</A
-+></H3
-+><P
-+>The function <TT
-+CLASS="LITERAL"
-+>move_panel()</TT
-+> can be used to move a
-+panel to the desired location. It does not change the position of the panel in
-+the stack. Make sure that you use move_panel() instead mvwin() on the window
-+associated with the panel.</P
-+><P
-+>Resizing a panel is slightly complex. There is no straight forward function
-+just to resize the window associated with a panel. A solution to resize a panel
-+is to create a new window with the desired sizes, change the window associated
-+with the panel using replace_panel(). Don't forget to delete the old window. The
-+window associated with a panel can be found by using the function
-+panel_window().</P
-+><P
-+>The following program shows these concepts, in supposedly simple program. You
-+can cycle through the window with &lt;TAB&gt; as usual. To resize or move the
-+active panel press 'r' for resize 'm' for moving. Then use arrow keys to resize
-+or move it to the desired way and press enter to end your resizing or moving.
-+This example makes use of user data to get the required data to do the
-+operations. </P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="PPARE"
-+></A
-+><P
-+><B
-+>Example 16. Panel Moving and Resizing example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;panel.h&#62;
-
- typedef struct _PANEL_DATA {
-- int x, y, w, h;
-- char label[80];
-- int label_color;
-- PANEL *next;
-+ int x, y, w, h;
-+ char label[80];
-+ int label_color;
-+ PANEL *next;
- }PANEL_DATA;
-
- #define NLINES 10
-@@ -3151,275 +4617,289 @@
- void set_user_ptrs(PANEL **panels, int n);
-
- int main()
--{ WINDOW *my_wins[3];
-- PANEL *my_panels[3];
-- PANEL_DATA *top;
-- PANEL *stack_top;
-- WINDOW *temp_win, *old_win;
-- int ch;
-- int newx, newy, neww, newh;
-- int size = FALSE, move = FALSE;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-- cbreak();
-- noecho();
-- keypad(stdscr, TRUE);
--
-- /* Initialize all the colors */
-- init_pair(1, COLOR_RED, COLOR_BLACK);
-- init_pair(2, COLOR_GREEN, COLOR_BLACK);
-- init_pair(3, COLOR_BLUE, COLOR_BLACK);
-- init_pair(4, COLOR_CYAN, COLOR_BLACK);
--
-- init_wins(my_wins, 3);
--
-- /* Attach a panel to each window */ /* Order is bottom up */
-- my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */
-- my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */
-- my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */
--
-- set_user_ptrs(my_panels, 3);
-- /* Update the stacking order. 2nd panel will be on top */
-- update_panels();
--
-- /* Show it on the screen */
-- attron(COLOR_PAIR(4));
-- mvprintw(LINES - 3, 0, "Use 'm' for moving, 'r' for resizing");
-- mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)");
-- attroff(COLOR_PAIR(4));
-- doupdate();
--
-- stack_top = my_panels[2];
-- top = (PANEL_DATA *)panel_userptr(stack_top);
-- newx = top-&gt;x;
-- newy = top-&gt;y;
-- neww = top-&gt;w;
-- newh = top-&gt;h;
-- while((ch = getch()) != KEY_F(1))
-- { switch(ch)
-- { case 9: /* Tab */
-- top = (PANEL_DATA *)panel_userptr(stack_top);
-- top_panel(top-&gt;next);
-- stack_top = top-&gt;next;
-- top = (PANEL_DATA *)panel_userptr(stack_top);
-- newx = top-&gt;x;
-- newy = top-&gt;y;
-- neww = top-&gt;w;
-- newh = top-&gt;h;
-- break;
-- case 'r': /* Re-Size*/
-- size = TRUE;
-- attron(COLOR_PAIR(4));
-- mvprintw(LINES - 4, 0, "Entered Resizing :Use Arrow Keys to resize and press &lt;ENTER&gt; to end resizing");
-- refresh();
-- attroff(COLOR_PAIR(4));
-- break;
-- case 'm': /* Move */
-- attron(COLOR_PAIR(4));
-- mvprintw(LINES - 4, 0, "Entered Moving: Use Arrow Keys to Move and press &lt;ENTER&gt; to end moving");
-- refresh();
-- attroff(COLOR_PAIR(4));
-- move = TRUE;
-- break;
-- case KEY_LEFT:
-- if(size == TRUE)
-- { --newx;
-- ++neww;
-- }
-- if(move == TRUE)
-- --newx;
-- break;
-- case KEY_RIGHT:
-- if(size == TRUE)
-- { ++newx;
-- --neww;
-- }
-- if(move == TRUE)
-- ++newx;
-- break;
-- case KEY_UP:
-- if(size == TRUE)
-- { --newy;
-- ++newh;
-- }
-- if(move == TRUE)
-- --newy;
-- break;
-- case KEY_DOWN:
-- if(size == TRUE)
-- { ++newy;
-- --newh;
-- }
-- if(move == TRUE)
-- ++newy;
-- break;
-- case 10: /* Enter */
-- move(LINES - 4, 0);
-- clrtoeol();
-- refresh();
-- if(size == TRUE)
-- { old_win = panel_window(stack_top);
-- temp_win = newwin(newh, neww, newy, newx);
-- replace_panel(stack_top, temp_win);
-- win_show(temp_win, top-&gt;label, top-&gt;label_color);
-- delwin(old_win);
-- size = FALSE;
-- }
-- if(move == TRUE)
-- { move_panel(stack_top, newy, newx);
-- move = FALSE;
-- }
-- break;
--
-- }
-- attron(COLOR_PAIR(4));
-- mvprintw(LINES - 3, 0, "Use 'm' for moving, 'r' for resizing");
-- mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)");
-- attroff(COLOR_PAIR(4));
-- refresh();
-- update_panels();
-- doupdate();
-- }
-- endwin();
-- return 0;
-+{ WINDOW *my_wins[3];
-+ PANEL *my_panels[3];
-+ PANEL_DATA *top;
-+ PANEL *stack_top;
-+ WINDOW *temp_win, *old_win;
-+ int ch;
-+ int newx, newy, neww, newh;
-+ int size = FALSE, move = FALSE;
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
-+ cbreak();
-+ noecho();
-+ keypad(stdscr, TRUE);
-+
-+ /* Initialize all the colors */
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-+ init_pair(2, COLOR_GREEN, COLOR_BLACK);
-+ init_pair(3, COLOR_BLUE, COLOR_BLACK);
-+ init_pair(4, COLOR_CYAN, COLOR_BLACK);
-+
-+ init_wins(my_wins, 3);
-+
-+ /* Attach a panel to each window */ /* Order is bottom up */
-+ my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */
-+ my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */
-+ my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */
-+
-+ set_user_ptrs(my_panels, 3);
-+ /* Update the stacking order. 2nd panel will be on top */
-+ update_panels();
-+
-+ /* Show it on the screen */
-+ attron(COLOR_PAIR(4));
-+ mvprintw(LINES - 3, 0, "Use 'm' for moving, 'r' for resizing");
-+ mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)");
-+ attroff(COLOR_PAIR(4));
-+ doupdate();
-+
-+ stack_top = my_panels[2];
-+ top = (PANEL_DATA *)panel_userptr(stack_top);
-+ newx = top-&#62;x;
-+ newy = top-&#62;y;
-+ neww = top-&#62;w;
-+ newh = top-&#62;h;
-+ while((ch = getch()) != KEY_F(1))
-+ { switch(ch)
-+ { case 9: /* Tab */
-+ top = (PANEL_DATA *)panel_userptr(stack_top);
-+ top_panel(top-&#62;next);
-+ stack_top = top-&#62;next;
-+ top = (PANEL_DATA *)panel_userptr(stack_top);
-+ newx = top-&#62;x;
-+ newy = top-&#62;y;
-+ neww = top-&#62;w;
-+ newh = top-&#62;h;
-+ break;
-+ case 'r': /* Re-Size*/
-+ size = TRUE;
-+ attron(COLOR_PAIR(4));
-+ mvprintw(LINES - 4, 0, "Entered Resizing :Use Arrow Keys to resize and press &#60;ENTER&#62; to end resizing");
-+ refresh();
-+ attroff(COLOR_PAIR(4));
-+ break;
-+ case 'm': /* Move */
-+ attron(COLOR_PAIR(4));
-+ mvprintw(LINES - 4, 0, "Entered Moving: Use Arrow Keys to Move and press &#60;ENTER&#62; to end moving");
-+ refresh();
-+ attroff(COLOR_PAIR(4));
-+ move = TRUE;
-+ break;
-+ case KEY_LEFT:
-+ if(size == TRUE)
-+ { --newx;
-+ ++neww;
-+ }
-+ if(move == TRUE)
-+ --newx;
-+ break;
-+ case KEY_RIGHT:
-+ if(size == TRUE)
-+ { ++newx;
-+ --neww;
-+ }
-+ if(move == TRUE)
-+ ++newx;
-+ break;
-+ case KEY_UP:
-+ if(size == TRUE)
-+ { --newy;
-+ ++newh;
-+ }
-+ if(move == TRUE)
-+ --newy;
-+ break;
-+ case KEY_DOWN:
-+ if(size == TRUE)
-+ { ++newy;
-+ --newh;
-+ }
-+ if(move == TRUE)
-+ ++newy;
-+ break;
-+ case 10: /* Enter */
-+ move(LINES - 4, 0);
-+ clrtoeol();
-+ refresh();
-+ if(size == TRUE)
-+ { old_win = panel_window(stack_top);
-+ temp_win = newwin(newh, neww, newy, newx);
-+ replace_panel(stack_top, temp_win);
-+ win_show(temp_win, top-&#62;label, top-&#62;label_color);
-+ delwin(old_win);
-+ size = FALSE;
-+ }
-+ if(move == TRUE)
-+ { move_panel(stack_top, newy, newx);
-+ move = FALSE;
-+ }
-+ break;
-+
-+ }
-+ attron(COLOR_PAIR(4));
-+ mvprintw(LINES - 3, 0, "Use 'm' for moving, 'r' for resizing");
-+ mvprintw(LINES - 2, 0, "Use tab to browse through the windows (F1 to Exit)");
-+ attroff(COLOR_PAIR(4));
-+ refresh();
-+ update_panels();
-+ doupdate();
-+ }
-+ endwin();
-+ return 0;
- }
-
- /* Put all the windows */
- void init_wins(WINDOW **wins, int n)
--{ int x, y, i;
-- char label[80];
-+{ int x, y, i;
-+ char label[80];
-
-- y = 2;
-- x = 10;
-- for(i = 0; i &lt; n; ++i)
-- { wins[i] = newwin(NLINES, NCOLS, y, x);
-- sprintf(label, "Window Number %d", i + 1);
-- win_show(wins[i], label, i + 1);
-- y += 3;
-- x += 7;
-- }
-+ y = 2;
-+ x = 10;
-+ for(i = 0; i &#60; n; ++i)
-+ { wins[i] = newwin(NLINES, NCOLS, y, x);
-+ sprintf(label, "Window Number %d", i + 1);
-+ win_show(wins[i], label, i + 1);
-+ y += 3;
-+ x += 7;
-+ }
- }
-
- /* Set the PANEL_DATA structures for individual panels */
- void set_user_ptrs(PANEL **panels, int n)
--{ PANEL_DATA *ptrs;
-- WINDOW *win;
-- int x, y, w, h, i;
-- char temp[80];
--
-- ptrs = (PANEL_DATA *)calloc(n, sizeof(PANEL_DATA));
--
-- for(i = 0;i &lt; n; ++i)
-- { win = panel_window(panels[i]);
-- getbegyx(win, y, x);
-- getmaxyx(win, h, w);
-- ptrs[i].x = x;
-- ptrs[i].y = y;
-- ptrs[i].w = w;
-- ptrs[i].h = h;
-- sprintf(temp, "Window Number %d", i + 1);
-- strcpy(ptrs[i].label, temp);
-- ptrs[i].label_color = i + 1;
-- if(i + 1 == n)
-- ptrs[i].next = panels[0];
-- else
-- ptrs[i].next = panels[i + 1];
-- set_panel_userptr(panels[i], &amp;ptrs[i]);
-- }
-+{ PANEL_DATA *ptrs;
-+ WINDOW *win;
-+ int x, y, w, h, i;
-+ char temp[80];
-+
-+ ptrs = (PANEL_DATA *)calloc(n, sizeof(PANEL_DATA));
-+
-+ for(i = 0;i &#60; n; ++i)
-+ { win = panel_window(panels[i]);
-+ getbegyx(win, y, x);
-+ getmaxyx(win, h, w);
-+ ptrs[i].x = x;
-+ ptrs[i].y = y;
-+ ptrs[i].w = w;
-+ ptrs[i].h = h;
-+ sprintf(temp, "Window Number %d", i + 1);
-+ strcpy(ptrs[i].label, temp);
-+ ptrs[i].label_color = i + 1;
-+ if(i + 1 == n)
-+ ptrs[i].next = panels[0];
-+ else
-+ ptrs[i].next = panels[i + 1];
-+ set_panel_userptr(panels[i], &#38;ptrs[i]);
-+ }
- }
-
- /* Show the window with a border and a label */
- void win_show(WINDOW *win, char *label, int label_color)
--{ int startx, starty, height, width;
-+{ int startx, starty, height, width;
-
-- getbegyx(win, starty, startx);
-- getmaxyx(win, height, width);
-+ getbegyx(win, starty, startx);
-+ getmaxyx(win, height, width);
-
-- box(win, 0, 0);
-- mvwaddch(win, 2, 0, ACS_LTEE);
-- mvwhline(win, 2, 1, ACS_HLINE, width - 2);
-- mvwaddch(win, 2, width - 1, ACS_RTEE);
--
-- print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color));
-+ box(win, 0, 0);
-+ mvwaddch(win, 2, 0, ACS_LTEE);
-+ mvwhline(win, 2, 1, ACS_HLINE, width - 2);
-+ mvwaddch(win, 2, width - 1, ACS_RTEE);
-+
-+ print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color));
- }
-
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color)
--{ int length, x, y;
-- float temp;
-+{ int length, x, y;
-+ float temp;
-
-- if(win == NULL)
-- win = stdscr;
-- getyx(win, y, x);
-- if(startx != 0)
-- x = startx;
-- if(starty != 0)
-- y = starty;
-- if(width == 0)
-- width = 80;
--
-- length = strlen(string);
-- temp = (width - length)/ 2;
-- x = startx + (int)temp;
-- wattron(win, color);
-- mvwprintw(win, y, x, "%s", string);
-- wattroff(win, color);
-- refresh();
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>Concentrate on the main while loop. Once it finds out the type
--of key pressed, it takes appropriate action. If 'r' is pressed
--resizing mode is started. After this the new sizes are updated as
--the user presses the arrow keys. When 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 print a dotted border while it gets resized to a new
--position.</p>
--<p>When the user presses 'm' the move mode starts. This is a bit
--simpler than resizing. As the arrow keys are pressed the new
--position is updated and pressing of &lt;ENTER&gt; causes the panel
--to be moved by calling the function move_panel().</p>
--<p>In this program the user data which is represented as
--PANEL_DATA, plays very important role in finding the associated
--information with a panel. As written in the comments, the
--PANEL_DATA stores the panel sizes, label, label color and a pointer
--to the next panel in the cycle.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="PANELSHOWHIDE" id="PANELSHOWHIDE">16.6.
--Hiding and Showing Panels</a></h3>
--<p>A Panel can be hidden by using the function hide_panel(). This
--function merely removes it form the stack of panels, thus hiding it
--on the screen once you do update_panels() and doupdate(). It
--doesn't destroy the PANEL structure associated with the hidden
--panel. It can be shown again by using the show_panel()
--function.</p>
--<p>The following program shows the hiding of panels. Press 'a' or
--'b' or 'c' to show or hide first, second and third windows
--respectively. It uses a user data with a small variable hide, which
--keeps track of whether the window is hidden or not. For some reason
--the function <var class="LITERAL">panel_hidden()</var> which tells
--whether a panel is hidden or not is not working. A bug report was
--also presented by Michael Andres <a href=
--"http://www.geocrawler.com/archives/3/344/1999/9/0/2643549/"
--target="_top">here</a></p>
--<div class="EXAMPLE"><a name="PPAHI" id="PPAHI"></a>
--<p><b>Example 17. Panel Hiding and Showing example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;panel.h&gt;
-+ if(win == NULL)
-+ win = stdscr;
-+ getyx(win, y, x);
-+ if(startx != 0)
-+ x = startx;
-+ if(starty != 0)
-+ y = starty;
-+ if(width == 0)
-+ width = 80;
-+
-+ length = strlen(string);
-+ temp = (width - length)/ 2;
-+ x = startx + (int)temp;
-+ wattron(win, color);
-+ mvwprintw(win, y, x, "%s", string);
-+ wattroff(win, color);
-+ refresh();
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>Concentrate on the main while loop. Once it finds out the type of key pressed,
-+it takes appropriate action. If 'r' is pressed resizing mode is started. After
-+this the new sizes are updated as the user presses the arrow keys. When 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 print a
-+dotted border while it gets resized to a new position. </P
-+><P
-+>When the user presses 'm' the move mode starts. This is a bit simpler than
-+resizing. As the arrow keys are pressed the new position is updated and
-+pressing of &lt;ENTER&gt; causes the panel to be moved by calling the function
-+move_panel().</P
-+><P
-+>In this program the user data which is represented as PANEL_DATA, plays very
-+important role in finding the associated information with a panel. As written in
-+the comments, the PANEL_DATA stores the panel sizes, label, label color and a
-+pointer to the next panel in the cycle.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="PANELSHOWHIDE"
-+>16.6. Hiding and Showing Panels</A
-+></H3
-+><P
-+>A Panel can be hidden by using the function hide_panel(). This function merely
-+removes it form the stack of panels, thus hiding it on the screen once you do
-+update_panels() and doupdate(). It doesn't destroy the PANEL structure
-+associated with the hidden panel. It can be shown again by using the
-+show_panel() function.</P
-+><P
-+>The following program shows the hiding of panels. Press 'a' or 'b' or 'c' to
-+show or hide first, second and third windows respectively. It uses a user data
-+with a small variable hide, which keeps track of whether the window is hidden or
-+not. For some reason the function
-+<TT
-+CLASS="LITERAL"
-+>panel_hidden()</TT
-+> which tells whether a panel is
-+hidden or not is not working. A bug report was also presented by Michael Andres
-+<A
-+HREF="http://www.geocrawler.com/archives/3/344/1999/9/0/2643549/"
-+TARGET="_top"
-+> here</A
-+></P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="PPAHI"
-+></A
-+><P
-+><B
-+>Example 17. Panel Hiding and Showing example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;panel.h&#62;
-
- typedef struct _PANEL_DATA {
-- int hide; /* TRUE if panel is hidden */
-+ int hide; /* TRUE if panel is hidden */
- }PANEL_DATA;
-
- #define NLINES 10
-@@ -3430,257 +4910,292 @@
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color);
-
- int main()
--{ WINDOW *my_wins[3];
-- PANEL *my_panels[3];
-- PANEL_DATA panel_datas[3];
-- PANEL_DATA *temp;
-- int ch;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-- cbreak();
-- noecho();
-- keypad(stdscr, TRUE);
--
-- /* Initialize all the colors */
-- init_pair(1, COLOR_RED, COLOR_BLACK);
-- init_pair(2, COLOR_GREEN, COLOR_BLACK);
-- init_pair(3, COLOR_BLUE, COLOR_BLACK);
-- init_pair(4, COLOR_CYAN, COLOR_BLACK);
--
-- init_wins(my_wins, 3);
--
-- /* Attach a panel to each window */ /* Order is bottom up */
-- my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */
-- my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */
-- my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */
--
-- /* Initialize panel datas saying that nothing is hidden */
-- panel_datas[0].hide = FALSE;
-- panel_datas[1].hide = FALSE;
-- panel_datas[2].hide = FALSE;
--
-- set_panel_userptr(my_panels[0], &amp;panel_datas[0]);
-- set_panel_userptr(my_panels[1], &amp;panel_datas[1]);
-- set_panel_userptr(my_panels[2], &amp;panel_datas[2]);
--
-- /* Update the stacking order. 2nd panel will be on top */
-- update_panels();
--
-- /* Show it on the screen */
-- attron(COLOR_PAIR(4));
-- mvprintw(LINES - 3, 0, "Show or Hide a window with 'a'(first window) 'b'(Second Window) 'c'(Third Window)");
-- mvprintw(LINES - 2, 0, "F1 to Exit");
--
-- attroff(COLOR_PAIR(4));
-- doupdate();
--
-- while((ch = getch()) != KEY_F(1))
-- { switch(ch)
-- { case 'a':
-- temp = (PANEL_DATA *)panel_userptr(my_panels[0]);
-- if(temp-&gt;hide == FALSE)
-- { hide_panel(my_panels[0]);
-- temp-&gt;hide = TRUE;
-- }
-- else
-- { show_panel(my_panels[0]);
-- temp-&gt;hide = FALSE;
-- }
-- break;
-- case 'b':
-- temp = (PANEL_DATA *)panel_userptr(my_panels[1]);
-- if(temp-&gt;hide == FALSE)
-- { hide_panel(my_panels[1]);
-- temp-&gt;hide = TRUE;
-- }
-- else
-- { show_panel(my_panels[1]);
-- temp-&gt;hide = FALSE;
-- }
-- break;
-- case 'c':
-- temp = (PANEL_DATA *)panel_userptr(my_panels[2]);
-- if(temp-&gt;hide == FALSE)
-- { hide_panel(my_panels[2]);
-- temp-&gt;hide = TRUE;
-- }
-- else
-- { show_panel(my_panels[2]);
-- temp-&gt;hide = FALSE;
-- }
-- break;
-- }
-- update_panels();
-- doupdate();
-- }
-- endwin();
-- return 0;
-+{ WINDOW *my_wins[3];
-+ PANEL *my_panels[3];
-+ PANEL_DATA panel_datas[3];
-+ PANEL_DATA *temp;
-+ int ch;
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
-+ cbreak();
-+ noecho();
-+ keypad(stdscr, TRUE);
-+
-+ /* Initialize all the colors */
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-+ init_pair(2, COLOR_GREEN, COLOR_BLACK);
-+ init_pair(3, COLOR_BLUE, COLOR_BLACK);
-+ init_pair(4, COLOR_CYAN, COLOR_BLACK);
-+
-+ init_wins(my_wins, 3);
-+
-+ /* Attach a panel to each window */ /* Order is bottom up */
-+ my_panels[0] = new_panel(my_wins[0]); /* Push 0, order: stdscr-0 */
-+ my_panels[1] = new_panel(my_wins[1]); /* Push 1, order: stdscr-0-1 */
-+ my_panels[2] = new_panel(my_wins[2]); /* Push 2, order: stdscr-0-1-2 */
-+
-+ /* Initialize panel datas saying that nothing is hidden */
-+ panel_datas[0].hide = FALSE;
-+ panel_datas[1].hide = FALSE;
-+ panel_datas[2].hide = FALSE;
-+
-+ set_panel_userptr(my_panels[0], &#38;panel_datas[0]);
-+ set_panel_userptr(my_panels[1], &#38;panel_datas[1]);
-+ set_panel_userptr(my_panels[2], &#38;panel_datas[2]);
-+
-+ /* Update the stacking order. 2nd panel will be on top */
-+ update_panels();
-+
-+ /* Show it on the screen */
-+ attron(COLOR_PAIR(4));
-+ mvprintw(LINES - 3, 0, "Show or Hide a window with 'a'(first window) 'b'(Second Window) 'c'(Third Window)");
-+ mvprintw(LINES - 2, 0, "F1 to Exit");
-+
-+ attroff(COLOR_PAIR(4));
-+ doupdate();
-+
-+ while((ch = getch()) != KEY_F(1))
-+ { switch(ch)
-+ { case 'a':
-+ temp = (PANEL_DATA *)panel_userptr(my_panels[0]);
-+ if(temp-&#62;hide == FALSE)
-+ { hide_panel(my_panels[0]);
-+ temp-&#62;hide = TRUE;
-+ }
-+ else
-+ { show_panel(my_panels[0]);
-+ temp-&#62;hide = FALSE;
-+ }
-+ break;
-+ case 'b':
-+ temp = (PANEL_DATA *)panel_userptr(my_panels[1]);
-+ if(temp-&#62;hide == FALSE)
-+ { hide_panel(my_panels[1]);
-+ temp-&#62;hide = TRUE;
-+ }
-+ else
-+ { show_panel(my_panels[1]);
-+ temp-&#62;hide = FALSE;
-+ }
-+ break;
-+ case 'c':
-+ temp = (PANEL_DATA *)panel_userptr(my_panels[2]);
-+ if(temp-&#62;hide == FALSE)
-+ { hide_panel(my_panels[2]);
-+ temp-&#62;hide = TRUE;
-+ }
-+ else
-+ { show_panel(my_panels[2]);
-+ temp-&#62;hide = FALSE;
-+ }
-+ break;
-+ }
-+ update_panels();
-+ doupdate();
-+ }
-+ endwin();
-+ return 0;
- }
-
- /* Put all the windows */
- void init_wins(WINDOW **wins, int n)
--{ int x, y, i;
-- char label[80];
-+{ int x, y, i;
-+ char label[80];
-
-- y = 2;
-- x = 10;
-- for(i = 0; i &lt; n; ++i)
-- { wins[i] = newwin(NLINES, NCOLS, y, x);
-- sprintf(label, "Window Number %d", i + 1);
-- win_show(wins[i], label, i + 1);
-- y += 3;
-- x += 7;
-- }
-+ y = 2;
-+ x = 10;
-+ for(i = 0; i &#60; n; ++i)
-+ { wins[i] = newwin(NLINES, NCOLS, y, x);
-+ sprintf(label, "Window Number %d", i + 1);
-+ win_show(wins[i], label, i + 1);
-+ y += 3;
-+ x += 7;
-+ }
- }
-
- /* Show the window with a border and a label */
- void win_show(WINDOW *win, char *label, int label_color)
--{ int startx, starty, height, width;
-+{ int startx, starty, height, width;
-
-- getbegyx(win, starty, startx);
-- getmaxyx(win, height, width);
-+ getbegyx(win, starty, startx);
-+ getmaxyx(win, height, width);
-
-- box(win, 0, 0);
-- mvwaddch(win, 2, 0, ACS_LTEE);
-- mvwhline(win, 2, 1, ACS_HLINE, width - 2);
-- mvwaddch(win, 2, width - 1, ACS_RTEE);
--
-- print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color));
-+ box(win, 0, 0);
-+ mvwaddch(win, 2, 0, ACS_LTEE);
-+ mvwhline(win, 2, 1, ACS_HLINE, width - 2);
-+ mvwaddch(win, 2, width - 1, ACS_RTEE);
-+
-+ print_in_middle(win, 1, 0, width, label, COLOR_PAIR(label_color));
- }
-
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color)
--{ int length, x, y;
-- float temp;
-+{ int length, x, y;
-+ float temp;
-
-- if(win == NULL)
-- win = stdscr;
-- getyx(win, y, x);
-- if(startx != 0)
-- x = startx;
-- if(starty != 0)
-- y = starty;
-- if(width == 0)
-- width = 80;
--
-- length = strlen(string);
-- temp = (width - length)/ 2;
-- x = startx + (int)temp;
-- wattron(win, color);
-- mvwprintw(win, y, x, "%s", string);
-- wattroff(win, color);
-- refresh();
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="PANELABOVE" id="PANELABOVE">16.7.
--panel_above() and panel_below() Functions</a></h3>
--<p>The functions <var class="LITERAL">panel_above()</var> and
--<var class="LITERAL">panel_below()</var> can be used to find out
--the panel above and below a panel. If the argument to these
--functions is NULL, then they return a pointer to bottom panel and
--top panel respectively.</p>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="MENUS" id="MENUS">17. Menus
--Library</a></h2>
--<p>The menus library provides a nice extension to basic curses,
--through which you can create menus. It provides a set of functions
--to create menus. But they have to be customized to give a nicer
--look, with colors etc. Let's get into the details.</p>
--<p>A menu is a screen display that assists the user to choose some
--subset of a given set of items. To put it simple, a menu is a
--collection of items from which one or more items can be chosen.
--Some readers might not be aware of multiple item selection
--capability. Menu library provides functionality to write menus from
--which the user can chose more than one item as the preferred
--choice. This is dealt with in a later section. Now it is time for
--some rudiments.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MENUBASICS" id="MENUBASICS">17.1. The
--Basics</a></h3>
--<p>To create menus, you first create items, and then post the menu
--to the display. After that, all the processing of user responses is
--done in an elegant function menu_driver() which is the work horse
--of any menu program.</p>
--<p>The general flow of control of a menu program looks like
--this.</p>
--<ol type="1">
--<li>
--<p>Initialize curses</p>
--</li>
--<li>
--<p>Create items using new_item(). You can specify a name and
--description for the items.</p>
--</li>
--<li>
--<p>Create the menu with new_menu() by specifying the items to be
--attached with.</p>
--</li>
--<li>
--<p>Post the menu with menu_post() and refresh the screen.</p>
--</li>
--<li>
--<p>Process the user requests with a loop and do necessary updates
--to menu with menu_driver.</p>
--</li>
--<li>
--<p>Unpost the menu with menu_unpost()</p>
--</li>
--<li>
--<p>Free the memory allocated to menu by free_menu()</p>
--</li>
--<li>
--<p>Free the memory allocated to the items with free_item()</p>
--</li>
--<li>
--<p>End curses</p>
--</li>
--</ol>
--<p>Let's see a program which prints a simple menu and updates the
--current selection with up, down arrows.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="COMPILEMENUS" id="COMPILEMENUS">17.2.
--Compiling With the Menu Library</a></h3>
--<p>To use menu library functions, you have to include menu.h and to
--link the program with menu library the flag -lmenu should be added
--along with -lncurses in that order.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> #include &lt;menu.h&gt;
-+ if(win == NULL)
-+ win = stdscr;
-+ getyx(win, y, x);
-+ if(startx != 0)
-+ x = startx;
-+ if(starty != 0)
-+ y = starty;
-+ if(width == 0)
-+ width = 80;
-+
-+ length = strlen(string);
-+ temp = (width - length)/ 2;
-+ x = startx + (int)temp;
-+ wattron(win, color);
-+ mvwprintw(win, y, x, "%s", string);
-+ wattroff(win, color);
-+ refresh();
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="PANELABOVE"
-+>16.7. panel_above() and panel_below() Functions</A
-+></H3
-+><P
-+>The functions <TT
-+CLASS="LITERAL"
-+>panel_above()</TT
-+> and
-+<TT
-+CLASS="LITERAL"
-+>panel_below()</TT
-+> can be used to find out the panel
-+above and below a panel. If the argument to these functions is NULL, then they
-+return a pointer to bottom panel and top panel respectively.</P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="MENUS"
-+>17. Menus Library</A
-+></H2
-+><P
-+>The menus library provides a nice extension to basic curses, through which you
-+can create menus. It provides a set of functions to create menus. But they have
-+to be customized to give a nicer look, with colors etc. Let's get into the
-+details.</P
-+><P
-+>A menu is a screen display that assists the user to choose some subset of a
-+given set of items. To put it simple, a menu is a collection of items from which
-+one or more items can be chosen. Some readers might not be aware of multiple
-+item selection capability. Menu library provides functionality to write menus
-+from which the user can chose more than one item as the preferred choice. This
-+is dealt with in a later section. Now it is time for some rudiments.</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MENUBASICS"
-+>17.1. The Basics</A
-+></H3
-+><P
-+>To create menus, you first create items, and then post the menu to the display.
-+After that, all the processing of user responses is done in an elegant function
-+menu_driver() which is the work horse of any menu program. </P
-+><P
-+>The general flow of control of a menu program looks like this.
-+<P
-+></P
-+><OL
-+TYPE="1"
-+><LI
-+><P
-+>Initialize curses</P
-+></LI
-+><LI
-+><P
-+>Create items using new_item(). You can specify a name and description for the
-+items.</P
-+></LI
-+><LI
-+><P
-+>Create the menu with new_menu() by specifying the items to be attached with.</P
-+></LI
-+><LI
-+><P
-+>Post the menu with menu_post() and refresh the screen.</P
-+></LI
-+><LI
-+><P
-+>Process the user requests with a loop and do necessary updates to menu with
-+menu_driver.</P
-+></LI
-+><LI
-+><P
-+>Unpost the menu with menu_unpost()</P
-+></LI
-+><LI
-+><P
-+>Free the memory allocated to menu by free_menu()</P
-+></LI
-+><LI
-+><P
-+>Free the memory allocated to the items with free_item() </P
-+></LI
-+><LI
-+><P
-+>End curses </P
-+></LI
-+></OL
-+></P
-+><P
-+>Let's see a program which prints a simple menu and updates the current selection
-+with up, down arrows. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="COMPILEMENUS"
-+>17.2. Compiling With the Menu Library</A
-+></H3
-+><P
-+>To use menu library functions, you have to include menu.h and to link the
-+program with menu library the flag -lmenu should be added along with -lncurses
-+in that order.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> #include &lt;menu.h&gt;
- .
- .
- .
-
-- compile and link: gcc &lt;program file&gt; -lmenu -lncurses</font>
--</pre></td>
--</tr>
--</table>
--<div class="EXAMPLE"><a name="MMESI" id="MMESI"></a>
--<p><b>Example 18. Menu Basics</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;curses.h&gt;
--#include &lt;menu.h&gt;
-+ compile and link: gcc &lt;program file&gt; -lmenu -lncurses</PRE
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="MMESI"
-+></A
-+><P
-+><B
-+>Example 18. Menu Basics </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;curses.h&#62;
-+#include &#60;menu.h&#62;
-
- #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
--#define CTRLD 4
-+#define CTRLD 4
-
- char *choices[] = {
- "Choice 1",
-@@ -3691,69 +5206,64 @@
- };
-
- int main()
--{ ITEM **my_items;
-- int c;
-- MENU *my_menu;
-- int n_choices, i;
-- ITEM *cur_item;
--
--
-- initscr();
-- cbreak();
-- noecho();
-- keypad(stdscr, TRUE);
--
-- n_choices = ARRAY_SIZE(choices);
-- my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *));
--
-- for(i = 0; i &lt; n_choices; ++i)
-- my_items[i] = new_item(choices[i], choices[i]);
-- my_items[n_choices] = (ITEM *)NULL;
--
-- my_menu = new_menu((ITEM **)my_items);
-- mvprintw(LINES - 2, 0, "F1 to Exit");
-- post_menu(my_menu);
-- refresh();
--
-- while((c = getch()) != KEY_F(1))
-- { switch(c)
-- { case KEY_DOWN:
-- menu_driver(my_menu, REQ_DOWN_ITEM);
-- break;
-- case KEY_UP:
-- menu_driver(my_menu, REQ_UP_ITEM);
-- break;
-- }
-- }
--
-- free_item(my_items[0]);
-- free_item(my_items[1]);
-- free_menu(my_menu);
-- endwin();
-+{ ITEM **my_items;
-+ int c;
-+ MENU *my_menu;
-+ int n_choices, i;
-+ ITEM *cur_item;
-+
-+
-+ initscr();
-+ cbreak();
-+ noecho();
-+ keypad(stdscr, TRUE);
-+
-+ n_choices = ARRAY_SIZE(choices);
-+ my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *));
-+
-+ for(i = 0; i &#60; n_choices; ++i)
-+ my_items[i] = new_item(choices[i], choices[i]);
-+ my_items[n_choices] = (ITEM *)NULL;
-+
-+ my_menu = new_menu((ITEM **)my_items);
-+ mvprintw(LINES - 2, 0, "F1 to Exit");
-+ post_menu(my_menu);
-+ refresh();
-+
-+ while((c = getch()) != KEY_F(1))
-+ { switch(c)
-+ { case KEY_DOWN:
-+ menu_driver(my_menu, REQ_DOWN_ITEM);
-+ break;
-+ case KEY_UP:
-+ menu_driver(my_menu, REQ_UP_ITEM);
-+ break;
-+ }
-+ }
-+
-+ free_item(my_items[0]);
-+ free_item(my_items[1]);
-+ free_menu(my_menu);
-+ endwin();
- }
-- </span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>This program demonstrates the basic concepts involved in
--creating a menu using menus library. First we create the items
--using new_item() and then attach them to the menu with new_menu()
--function. After posting the menu and refreshing the screen, the
--main processing loop starts. It reads user input and takes
--corresponding action. The function menu_driver() is the main work
--horse of the menu system. The second parameter to this function
--tells what's to be done with the menu. According to the parameter,
--menu_driver() does the corresponding task. The value can be either
--a menu navigational request, an ascii character, or a KEY_MOUSE
--special key associated with a mouse event.</p>
--<p>The menu_driver accepts following navigational requests.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">&#13; REQ_LEFT_ITEM Move left to an item.
-+ </SPAN
-+></PRE
-+></DIV
-+><P
-+>This program demonstrates the basic concepts involved in creating a menu using
-+menus library. First we create the items using new_item() and then attach them
-+to the menu with new_menu() function. After posting the menu and refreshing the
-+screen, the main processing loop starts. It reads user input and takes
-+corresponding action. The function menu_driver() is the main work horse of the
-+menu system. The second parameter to this function tells what's to be done with
-+the menu. According to the parameter, menu_driver() does the corresponding task.
-+The value can be either a menu navigational request, an ascii character, or a
-+KEY_MOUSE special key associated with a mouse event.</P
-+><P
-+>The menu_driver accepts following navigational requests.
-+<PRE
-+CLASS="PROGRAMLISTING"
-+>&#13; REQ_LEFT_ITEM Move left to an item.
- REQ_RIGHT_ITEM Move right to an item.
- REQ_UP_ITEM Move up to an item.
- REQ_DOWN_ITEM Move down to an item.
-@@ -3769,87 +5279,144 @@
- REQ_CLEAR_PATTERN Clear the menu pattern buffer.
- REQ_BACK_PATTERN Delete the previous character from the pattern buffer.
- REQ_NEXT_MATCH Move to the next item matching the pattern match.
-- REQ_PREV_MATCH Move to the previous item matching the pattern match.&#13;</font>
--</pre></td>
--</tr>
--</table>
--<p>Don't get overwhelmed by the number of options. We will see them
--slowly one after another. The options of interest in this example
--are REQ_UP_ITEM and REQ_DOWN_ITEM. These two options when passed to
--menu_driver, menu driver updates the current item to one item up or
--down respectively.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MENUDRIVER" id="MENUDRIVER">17.3. Menu
--Driver: The work horse of the menu system</a></h3>
--<p>As you have seen in the above example, menu_driver plays an
--important role in updating the menu. It is very important to
--understand various options it takes and what they do. As explained
--above, the second parameter to menu_driver() can be either a
--navigational request, a printable character or a KEY_MOUSE key.
--Let's dissect the different navigational requests.</p>
--<ul>
--<li>
--<p><em>REQ_LEFT_ITEM and REQ_RIGHT_ITEM</em></p>
--<p>A Menu can be displayed with multiple columns for more than one
--item. This can be done by using the <var class=
--"LITERAL">menu_format()</var>function. When a multi columnar menu
--is displayed these requests cause the menu driver to move the
--current selection to left or right.</p>
--</li>
--<li>
--<p><em>REQ_UP_ITEM and REQ_DOWN_ITEM</em></p>
--<p>These two options you have seen in the above example. These
--options when given, makes the menu_driver to move the current
--selection to an item up or down.</p>
--</li>
--<li>
--<p><em>REQ_SCR_* options</em></p>
--<p>The four options REQ_SCR_ULINE, REQ_SCR_DLINE, REQ_SCR_DPAGE,
--REQ_SCR_UPAGE are related to scrolling. If all the items in the
--menu cannot be displayed in the menu sub window, then the menu is
--scrollable. These requests can be given to the menu_driver to do
--the scrolling either one line up, down or one page down or up
--respectively.</p>
--</li>
--<li>
--<p><em>REQ_FIRST_ITEM, REQ_LAST_ITEM, REQ_NEXT_ITEM and
--REQ_PREV_ITEM</em></p>
--<p>These requests are self explanatory.</p>
--</li>
--<li>
--<p><em>REQ_TOGGLE_ITEM</em></p>
--<p>This request when given, toggles the present selection. This
--option is to be used only in a multi valued menu. So to use this
--request the option O_ONEVALUE must be off. This option can be made
--off or on with set_menu_opts().</p>
--</li>
--<li>
--<p><em>Pattern Requests</em></p>
--<p>Every menu has an associated pattern buffer, which is used to
--find the nearest match to the ascii characters entered by the user.
--Whenever ascii characters are given to menu_driver, it puts in to
--the pattern buffer. It also tries to find the nearest match to the
--pattern in the items list and moves current selection to that item.
--The request REQ_CLEAR_PATTERN clears the pattern buffer. The
--request REQ_BACK_PATTERN deletes the previous character in the
--pattern buffer. In case the pattern matches more than one item then
--the matched items can be cycled through REQ_NEXT_MATCH and
--REQ_PREV_MATCH which move the current selection to the next and
--previous matches respectively.</p>
--</li>
--<li>
--<p><em>Mouse Requests</em></p>
--<p>In case of KEY_MOUSE requests, according to the mouse position
--an action is taken accordingly. The action to be taken is explained
--in the man page as,</p>
--<table border="0" bgcolor="#E0E0E0" width="90%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000"><em> If the second argument is the KEY_MOUSE special key, the
-+ REQ_PREV_MATCH Move to the previous item matching the pattern match.&#13;</PRE
-+></P
-+><P
-+>Don't get overwhelmed by the number of options. We will see them slowly one
-+after another. The options of interest in this example are REQ_UP_ITEM and
-+REQ_DOWN_ITEM. These two options when passed to menu_driver, menu driver
-+updates the current item to one item up or down respectively.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MENUDRIVER"
-+>17.3. Menu Driver: The work horse of the menu system</A
-+></H3
-+><P
-+>As you have seen in the above example, menu_driver plays an important role in
-+updating the menu. It is very important to understand various options it takes
-+and what they do. As explained above, the second parameter to menu_driver() can
-+be either a navigational request, a printable character or a KEY_MOUSE key.
-+Let's dissect the different navigational requests.</P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_LEFT_ITEM and REQ_RIGHT_ITEM</I
-+></SPAN
-+></P
-+><P
-+>A Menu can be displayed with multiple columns for more than one item. This can
-+be done by using the <TT
-+CLASS="LITERAL"
-+>menu_format()</TT
-+>function.
-+When a multi columnar menu is displayed these requests cause the menu driver to
-+move the current selection to left or right.</P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_UP_ITEM and REQ_DOWN_ITEM </I
-+></SPAN
-+> </P
-+><P
-+>These two options you have seen in the above example. These options when given,
-+makes the menu_driver to move the current selection to an item up or down.</P
-+></LI
-+><LI
-+><P
-+> <SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_* options</I
-+></SPAN
-+> </P
-+><P
-+>The four options REQ_SCR_ULINE, REQ_SCR_DLINE, REQ_SCR_DPAGE, REQ_SCR_UPAGE are
-+related to scrolling. If all the items in the menu cannot be displayed in the
-+menu sub window, then the menu is scrollable. These requests can be given to the
-+menu_driver to do the scrolling either one line up, down or one page down or up
-+respectively. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_FIRST_ITEM, REQ_LAST_ITEM, REQ_NEXT_ITEM and
-+REQ_PREV_ITEM </I
-+></SPAN
-+> </P
-+><P
-+>These requests are self explanatory.</P
-+></LI
-+><LI
-+><P
-+> <SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_TOGGLE_ITEM</I
-+></SPAN
-+> </P
-+><P
-+>This request when given, toggles the present selection. This option is to be
-+used only in a multi valued menu. So to use this request the option O_ONEVALUE
-+must be off. This option can be made off or on with set_menu_opts().</P
-+></LI
-+><LI
-+><P
-+> <SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>Pattern Requests </I
-+></SPAN
-+></P
-+><P
-+>Every menu has an associated pattern buffer, which is used to find the nearest
-+match to the ascii characters entered by the user. Whenever ascii characters are
-+given to menu_driver, it puts in to the pattern buffer. It also tries to find
-+the nearest match to the pattern in the items list and moves current selection
-+to that item. The request REQ_CLEAR_PATTERN clears the pattern buffer. The
-+request REQ_BACK_PATTERN deletes the previous character in the pattern buffer.
-+In case the pattern matches more than one item then the matched items can be
-+cycled through REQ_NEXT_MATCH and REQ_PREV_MATCH which move the current
-+selection to the next and previous matches respectively.</P
-+></LI
-+><LI
-+><P
-+> <SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>Mouse Requests</I
-+></SPAN
-+></P
-+><P
-+>In case of KEY_MOUSE requests, according to the mouse position an action is
-+taken accordingly. The action to be taken is explained in the man page as, </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+> If the second argument is the KEY_MOUSE special key, the
- associated mouse event is translated into one of the above
- pre-defined requests. Currently only clicks in the user
- window (e.g. inside the menu display area or the decora&shy;
-@@ -3861,39 +5428,49 @@
- generated, if you doubleclick a REQ_SCR_DPAGE is generated
- and if you tripleclick a REQ_LAST_ITEM is generated. If
- you click at an item inside the display area of the menu,
-- the menu cursor is positioned to that item.</em></font>
--</pre></td>
--</tr>
--</table>
--</li>
--</ul>
--<p>Each of the above requests will be explained in the following
--lines with several examples whenever appropriate.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MENUWINDOWS" id="MENUWINDOWS">17.4. Menu
--Windows</a></h3>
--<p>Every menu created is associated with a window and a sub window.
--The menu window displays any title or border associated with the
--menu. The menu sub window displays the menu items currently
--available for selection. But we didn't specify any window or sub
--window in the simple example. When a window is not specified,
--stdscr is taken as the main window, and then menu system calculates
--the sub window size required for the display of items. Then items
--are displayed in the calculated sub window. So let's play with
--these windows and display a menu with a border and a title.</p>
--<div class="EXAMPLE"><a name="MMEWI" id="MMEWI"></a>
--<p><b>Example 19. Menu Windows Usage example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;menu.h&gt;
-+ the menu cursor is positioned to that item.</I
-+></SPAN
-+></PRE
-+></LI
-+></UL
-+><P
-+>Each of the above requests will be explained in the following lines with several
-+examples whenever appropriate.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MENUWINDOWS"
-+>17.4. Menu Windows</A
-+></H3
-+><P
-+>Every menu created is associated with a window and a sub window. The menu window
-+displays any title or border associated with the menu. The menu sub window
-+displays the menu items currently available for selection. But we didn't specify
-+any window or sub window in the simple example. When a window is not specified,
-+stdscr is taken as the main window, and then menu system calculates the sub
-+window size required for the display of items. Then items are displayed in the
-+calculated sub window. So let's play with these windows and display a menu with
-+a border and a title.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="MMEWI"
-+></A
-+><P
-+><B
-+>Example 19. Menu Windows Usage example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;menu.h&#62;
-
- #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
--#define CTRLD 4
-+#define CTRLD 4
-
- char *choices[] = {
- "Choice 1",
-@@ -3906,392 +5483,403 @@
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color);
-
- int main()
--{ ITEM **my_items;
-- int c;
-- MENU *my_menu;
-+{ ITEM **my_items;
-+ int c;
-+ MENU *my_menu;
- WINDOW *my_menu_win;
- int n_choices, i;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
- cbreak();
- noecho();
-- keypad(stdscr, TRUE);
-- init_pair(1, COLOR_RED, COLOR_BLACK);
-+ keypad(stdscr, TRUE);
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-
-- /* Create items */
-+ /* Create items */
- n_choices = ARRAY_SIZE(choices);
- my_items = (ITEM **)calloc(n_choices, sizeof(ITEM *));
-- for(i = 0; i &lt; n_choices; ++i)
-+ for(i = 0; i &#60; n_choices; ++i)
- my_items[i] = new_item(choices[i], choices[i]);
-
-- /* Crate menu */
-- my_menu = new_menu((ITEM **)my_items);
-+ /* Crate menu */
-+ my_menu = new_menu((ITEM **)my_items);
-
-- /* Create the window to be associated with the menu */
-+ /* Create the window to be associated with the menu */
- my_menu_win = newwin(10, 40, 4, 4);
- keypad(my_menu_win, TRUE);
-
-- /* Set main window and sub window */
-+ /* Set main window and sub window */
- set_menu_win(my_menu, my_menu_win);
- set_menu_sub(my_menu, derwin(my_menu_win, 6, 38, 3, 1));
-
-- /* Set menu mark to the string " * " */
-+ /* Set menu mark to the string " * " */
- set_menu_mark(my_menu, " * ");
-
-- /* Print a border around the main window and print a title */
-+ /* Print a border around the main window and print a title */
- box(my_menu_win, 0, 0);
-- print_in_middle(my_menu_win, 1, 0, 40, "My Menu", COLOR_PAIR(1));
-- mvwaddch(my_menu_win, 2, 0, ACS_LTEE);
-- mvwhline(my_menu_win, 2, 1, ACS_HLINE, 38);
-- mvwaddch(my_menu_win, 2, 39, ACS_RTEE);
-- mvprintw(LINES - 2, 0, "F1 to exit");
-- refresh();
-+ print_in_middle(my_menu_win, 1, 0, 40, "My Menu", COLOR_PAIR(1));
-+ mvwaddch(my_menu_win, 2, 0, ACS_LTEE);
-+ mvwhline(my_menu_win, 2, 1, ACS_HLINE, 38);
-+ mvwaddch(my_menu_win, 2, 39, ACS_RTEE);
-+ mvprintw(LINES - 2, 0, "F1 to exit");
-+ refresh();
-
-- /* Post the menu */
-- post_menu(my_menu);
-- wrefresh(my_menu_win);
--
-- while((c = wgetch(my_menu_win)) != KEY_F(1))
-- { switch(c)
-- { case KEY_DOWN:
-- menu_driver(my_menu, REQ_DOWN_ITEM);
-- break;
-- case KEY_UP:
-- menu_driver(my_menu, REQ_UP_ITEM);
-- break;
-- }
-+ /* Post the menu */
-+ post_menu(my_menu);
-+ wrefresh(my_menu_win);
-+
-+ while((c = wgetch(my_menu_win)) != KEY_F(1))
-+ { switch(c)
-+ { case KEY_DOWN:
-+ menu_driver(my_menu, REQ_DOWN_ITEM);
-+ break;
-+ case KEY_UP:
-+ menu_driver(my_menu, REQ_UP_ITEM);
-+ break;
-+ }
- wrefresh(my_menu_win);
-- }
-+ }
-
-- /* Unpost and free all the memory taken up */
-+ /* Unpost and free all the memory taken up */
- unpost_menu(my_menu);
- free_menu(my_menu);
-- for(i = 0; i &lt; n_choices; ++i)
-+ for(i = 0; i &#60; n_choices; ++i)
- free_item(my_items[i]);
-- endwin();
-+ endwin();
- }
-
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color)
--{ int length, x, y;
-- float temp;
-+{ int length, x, y;
-+ float temp;
-
-- if(win == NULL)
-- win = stdscr;
-- getyx(win, y, x);
-- if(startx != 0)
-- x = startx;
-- if(starty != 0)
-- y = starty;
-- if(width == 0)
-- width = 80;
--
-- length = strlen(string);
-- temp = (width - length)/ 2;
-- x = startx + (int)temp;
-- wattron(win, color);
-- mvwprintw(win, y, x, "%s", string);
-- wattroff(win, color);
-- refresh();
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>This example creates a menu with a title, border, a fancy line
--separating title and the items. As you can see, in order to attach
--a window to a menu the function set_menu_win() has to be used. Then
--we attach the sub window also. This displays the items in the sub
--window. You can also set the mark string which gets displayed to
--the left of the selected item with set_menu_mark().</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="SCROLLMENUS" id="SCROLLMENUS">17.5.
--Scrolling Menus</a></h3>
--<p>If the sub window given for a window is not big enough to show
--all the items, then the menu will be scrollable. When you are on
--the last item in the present list, if you send REQ_DOWN_ITEM, it
--gets translated into REQ_SCR_DLINE and the menu scrolls by one
--item. You can manually give REQ_SCR_ operations to do scrolling.
--Let's see how it can be done.</p>
--<div class="EXAMPLE"><a name="MMESC" id="MMESC"></a>
--<p><b>Example 20. Scrolling Menus example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;curses.h&gt;
--#include &lt;menu.h&gt;
-+ if(win == NULL)
-+ win = stdscr;
-+ getyx(win, y, x);
-+ if(startx != 0)
-+ x = startx;
-+ if(starty != 0)
-+ y = starty;
-+ if(width == 0)
-+ width = 80;
-+
-+ length = strlen(string);
-+ temp = (width - length)/ 2;
-+ x = startx + (int)temp;
-+ wattron(win, color);
-+ mvwprintw(win, y, x, "%s", string);
-+ wattroff(win, color);
-+ refresh();
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>This example creates a menu with a title, border, a fancy line separating title
-+and the items. As you can see, in order to attach a window to a menu the
-+function set_menu_win() has to be used. Then we attach the sub window also. This
-+displays the items in the sub window. You can also set the mark string which
-+gets displayed to the left of the selected item with set_menu_mark().</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="SCROLLMENUS"
-+>17.5. Scrolling Menus</A
-+></H3
-+><P
-+>If the sub window given for a window is not big enough to show all the items,
-+then the menu will be scrollable. When you are on the last item in the present
-+list, if you send REQ_DOWN_ITEM, it gets translated into REQ_SCR_DLINE and the
-+menu scrolls by one item. You can manually give REQ_SCR_ operations to do
-+scrolling. Let's see how it can be done.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="MMESC"
-+></A
-+><P
-+><B
-+>Example 20. Scrolling Menus example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;curses.h&#62;
-+#include &#60;menu.h&#62;
-
- #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
--#define CTRLD 4
-+#define CTRLD 4
-
- char *choices[] = {
- "Choice 1",
- "Choice 2",
- "Choice 3",
- "Choice 4",
-- "Choice 5",
-- "Choice 6",
-- "Choice 7",
-- "Choice 8",
-- "Choice 9",
-- "Choice 10",
-+ "Choice 5",
-+ "Choice 6",
-+ "Choice 7",
-+ "Choice 8",
-+ "Choice 9",
-+ "Choice 10",
- "Exit",
- (char *)NULL,
- };
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color);
-
- int main()
--{ ITEM **my_items;
-- int c;
-- MENU *my_menu;
-+{ ITEM **my_items;
-+ int c;
-+ MENU *my_menu;
- WINDOW *my_menu_win;
- int n_choices, i;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
- cbreak();
- noecho();
-- keypad(stdscr, TRUE);
-- init_pair(1, COLOR_RED, COLOR_BLACK);
-- init_pair(2, COLOR_CYAN, COLOR_BLACK);
-+ keypad(stdscr, TRUE);
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-+ init_pair(2, COLOR_CYAN, COLOR_BLACK);
-
-- /* Create items */
-+ /* Create items */
- n_choices = ARRAY_SIZE(choices);
- my_items = (ITEM **)calloc(n_choices, sizeof(ITEM *));
-- for(i = 0; i &lt; n_choices; ++i)
-+ for(i = 0; i &#60; n_choices; ++i)
- my_items[i] = new_item(choices[i], choices[i]);
-
-- /* Crate menu */
-- my_menu = new_menu((ITEM **)my_items);
-+ /* Crate menu */
-+ my_menu = new_menu((ITEM **)my_items);
-
-- /* Create the window to be associated with the menu */
-+ /* Create the window to be associated with the menu */
- my_menu_win = newwin(10, 40, 4, 4);
- keypad(my_menu_win, TRUE);
-
-- /* Set main window and sub window */
-+ /* Set main window and sub window */
- set_menu_win(my_menu, my_menu_win);
- set_menu_sub(my_menu, derwin(my_menu_win, 6, 38, 3, 1));
-- set_menu_format(my_menu, 5, 1);
--
-- /* Set menu mark to the string " * " */
-+ set_menu_format(my_menu, 5, 1);
-+
-+ /* Set menu mark to the string " * " */
- set_menu_mark(my_menu, " * ");
-
-- /* Print a border around the main window and print a title */
-+ /* Print a border around the main window and print a title */
- box(my_menu_win, 0, 0);
-- print_in_middle(my_menu_win, 1, 0, 40, "My Menu", COLOR_PAIR(1));
-- mvwaddch(my_menu_win, 2, 0, ACS_LTEE);
-- mvwhline(my_menu_win, 2, 1, ACS_HLINE, 38);
-- mvwaddch(my_menu_win, 2, 39, ACS_RTEE);
-+ print_in_middle(my_menu_win, 1, 0, 40, "My Menu", COLOR_PAIR(1));
-+ mvwaddch(my_menu_win, 2, 0, ACS_LTEE);
-+ mvwhline(my_menu_win, 2, 1, ACS_HLINE, 38);
-+ mvwaddch(my_menu_win, 2, 39, ACS_RTEE);
-
-- /* Post the menu */
-- post_menu(my_menu);
-- wrefresh(my_menu_win);
--
-- attron(COLOR_PAIR(2));
-- mvprintw(LINES - 2, 0, "Use PageUp and PageDown to scoll down or up a page of items");
-- mvprintw(LINES - 1, 0, "Arrow Keys to navigate (F1 to Exit)");
-- attroff(COLOR_PAIR(2));
-- refresh();
--
-- while((c = wgetch(my_menu_win)) != KEY_F(1))
-- { switch(c)
-- { case KEY_DOWN:
-- menu_driver(my_menu, REQ_DOWN_ITEM);
-- break;
-- case KEY_UP:
-- menu_driver(my_menu, REQ_UP_ITEM);
-- break;
-- case KEY_NPAGE:
-- menu_driver(my_menu, REQ_SCR_DPAGE);
-- break;
-- case KEY_PPAGE:
-- menu_driver(my_menu, REQ_SCR_UPAGE);
-- break;
-- }
-+ /* Post the menu */
-+ post_menu(my_menu);
-+ wrefresh(my_menu_win);
-+
-+ attron(COLOR_PAIR(2));
-+ mvprintw(LINES - 2, 0, "Use PageUp and PageDown to scoll down or up a page of items");
-+ mvprintw(LINES - 1, 0, "Arrow Keys to navigate (F1 to Exit)");
-+ attroff(COLOR_PAIR(2));
-+ refresh();
-+
-+ while((c = wgetch(my_menu_win)) != KEY_F(1))
-+ { switch(c)
-+ { case KEY_DOWN:
-+ menu_driver(my_menu, REQ_DOWN_ITEM);
-+ break;
-+ case KEY_UP:
-+ menu_driver(my_menu, REQ_UP_ITEM);
-+ break;
-+ case KEY_NPAGE:
-+ menu_driver(my_menu, REQ_SCR_DPAGE);
-+ break;
-+ case KEY_PPAGE:
-+ menu_driver(my_menu, REQ_SCR_UPAGE);
-+ break;
-+ }
- wrefresh(my_menu_win);
-- }
-+ }
-
-- /* Unpost and free all the memory taken up */
-+ /* Unpost and free all the memory taken up */
- unpost_menu(my_menu);
- free_menu(my_menu);
-- for(i = 0; i &lt; n_choices; ++i)
-+ for(i = 0; i &#60; n_choices; ++i)
- free_item(my_items[i]);
-- endwin();
-+ endwin();
- }
-
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color)
--{ int length, x, y;
-- float temp;
-+{ int length, x, y;
-+ float temp;
-
-- if(win == NULL)
-- win = stdscr;
-- getyx(win, y, x);
-- if(startx != 0)
-- x = startx;
-- if(starty != 0)
-- y = starty;
-- if(width == 0)
-- width = 80;
--
-- length = strlen(string);
-- temp = (width - length)/ 2;
-- x = startx + (int)temp;
-- wattron(win, color);
-- mvwprintw(win, y, x, "%s", string);
-- wattroff(win, color);
-- refresh();
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>This program is self-explanatory. In this example the number of
--choices has been increased to ten, which is larger than our sub
--window size which can hold 6 items. This message has to be
--explicitly conveyed to the menu system with the function
--set_menu_format(). In here we specify the number of rows and
--columns we want to be displayed for a single page. We can specify
--any number of items to be shown, in the rows variables, if it is
--less than the height of the sub window. If the key pressed by the
--user is a PAGE UP or PAGE DOWN, the menu is scrolled a page due to
--the requests (REQ_SCR_DPAGE and REQ_SCR_UPAGE) given to
--menu_driver().</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MULTICOLUMN" id="MULTICOLUMN">17.6.
--Multi Columnar Menus</a></h3>
--<p>In the above example you have seen how to use the function
--set_menu_format(). I didn't mention what the cols variable (third
--parameter) does. Well, If your sub window is wide enough, you can
--opt to display more than one item per row. This can be specified in
--the cols variable. To make things simpler, the following example
--doesn't show descriptions for the items.</p>
--<div class="EXAMPLE"><a name="MMEMUCO" id="MMEMUCO"></a>
--<p><b>Example 21. Milt Columnar Menus Example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;curses.h&gt;
--#include &lt;menu.h&gt;
-+ if(win == NULL)
-+ win = stdscr;
-+ getyx(win, y, x);
-+ if(startx != 0)
-+ x = startx;
-+ if(starty != 0)
-+ y = starty;
-+ if(width == 0)
-+ width = 80;
-+
-+ length = strlen(string);
-+ temp = (width - length)/ 2;
-+ x = startx + (int)temp;
-+ wattron(win, color);
-+ mvwprintw(win, y, x, "%s", string);
-+ wattroff(win, color);
-+ refresh();
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>This program is self-explanatory. In this example the number of choices has been
-+increased to ten, which is larger than our sub window size which can hold 6
-+items. This message has to be explicitly conveyed to the menu system with the
-+function set_menu_format(). In here we specify the number of rows and columns we
-+want to be displayed for a single page. We can specify any number of items to be
-+shown, in the rows variables, if it is less than the height of the sub window.
-+If the key pressed by the user is a PAGE UP or PAGE DOWN, the menu is scrolled a
-+page due to the requests (REQ_SCR_DPAGE and REQ_SCR_UPAGE) given to
-+menu_driver().</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MULTICOLUMN"
-+>17.6. Multi Columnar Menus</A
-+></H3
-+><P
-+>In the above example you have seen how to use the function set_menu_format(). I
-+didn't mention what the cols variable (third parameter) does. Well, If your sub
-+window is wide enough, you can opt to display more than one item per row. This
-+can be specified in the cols variable. To make things simpler, the following
-+example doesn't show descriptions for the items.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="MMEMUCO"
-+></A
-+><P
-+><B
-+>Example 21. Milt Columnar Menus Example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;curses.h&#62;
-+#include &#60;menu.h&#62;
-
- #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
--#define CTRLD 4
-+#define CTRLD 4
-
- char *choices[] = {
- "Choice 1", "Choice 2", "Choice 3", "Choice 4", "Choice 5",
-- "Choice 6", "Choice 7", "Choice 8", "Choice 9", "Choice 10",
-- "Choice 11", "Choice 12", "Choice 13", "Choice 14", "Choice 15",
-- "Choice 16", "Choice 17", "Choice 18", "Choice 19", "Choice 20",
-+ "Choice 6", "Choice 7", "Choice 8", "Choice 9", "Choice 10",
-+ "Choice 11", "Choice 12", "Choice 13", "Choice 14", "Choice 15",
-+ "Choice 16", "Choice 17", "Choice 18", "Choice 19", "Choice 20",
- "Exit",
- (char *)NULL,
- };
-
- int main()
--{ ITEM **my_items;
-- int c;
-- MENU *my_menu;
-+{ ITEM **my_items;
-+ int c;
-+ MENU *my_menu;
- WINDOW *my_menu_win;
- int n_choices, i;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
- cbreak();
- noecho();
-- keypad(stdscr, TRUE);
-- init_pair(1, COLOR_RED, COLOR_BLACK);
-- init_pair(2, COLOR_CYAN, COLOR_BLACK);
-+ keypad(stdscr, TRUE);
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-+ init_pair(2, COLOR_CYAN, COLOR_BLACK);
-
-- /* Create items */
-+ /* Create items */
- n_choices = ARRAY_SIZE(choices);
- my_items = (ITEM **)calloc(n_choices, sizeof(ITEM *));
-- for(i = 0; i &lt; n_choices; ++i)
-+ for(i = 0; i &#60; n_choices; ++i)
- my_items[i] = new_item(choices[i], choices[i]);
-
-- /* Crate menu */
-- my_menu = new_menu((ITEM **)my_items);
-+ /* Crate menu */
-+ my_menu = new_menu((ITEM **)my_items);
-
-- /* Set menu option not to show the description */
-- menu_opts_off(my_menu, O_SHOWDESC);
-+ /* Set menu option not to show the description */
-+ menu_opts_off(my_menu, O_SHOWDESC);
-
-- /* Create the window to be associated with the menu */
-+ /* Create the window to be associated with the menu */
- my_menu_win = newwin(10, 70, 4, 4);
- keypad(my_menu_win, TRUE);
-
-- /* Set main window and sub window */
-+ /* Set main window and sub window */
- set_menu_win(my_menu, my_menu_win);
- set_menu_sub(my_menu, derwin(my_menu_win, 6, 68, 3, 1));
-- set_menu_format(my_menu, 5, 3);
-- set_menu_mark(my_menu, " * ");
-+ set_menu_format(my_menu, 5, 3);
-+ set_menu_mark(my_menu, " * ");
-
-- /* Print a border around the main window and print a title */
-+ /* Print a border around the main window and print a title */
- box(my_menu_win, 0, 0);
--
-- attron(COLOR_PAIR(2));
-- mvprintw(LINES - 3, 0, "Use PageUp and PageDown to scroll");
-- mvprintw(LINES - 2, 0, "Use Arrow Keys to navigate (F1 to Exit)");
-- attroff(COLOR_PAIR(2));
-- refresh();
--
-- /* Post the menu */
-- post_menu(my_menu);
-- wrefresh(my_menu_win);
--
-- while((c = wgetch(my_menu_win)) != KEY_F(1))
-- { switch(c)
-- { case KEY_DOWN:
-- menu_driver(my_menu, REQ_DOWN_ITEM);
-- break;
-- case KEY_UP:
-- menu_driver(my_menu, REQ_UP_ITEM);
-- break;
-- case KEY_LEFT:
-- menu_driver(my_menu, REQ_LEFT_ITEM);
-- break;
-- case KEY_RIGHT:
-- menu_driver(my_menu, REQ_RIGHT_ITEM);
-- break;
-- case KEY_NPAGE:
-- menu_driver(my_menu, REQ_SCR_DPAGE);
-- break;
-- case KEY_PPAGE:
-- menu_driver(my_menu, REQ_SCR_UPAGE);
-- break;
-- }
-+
-+ attron(COLOR_PAIR(2));
-+ mvprintw(LINES - 3, 0, "Use PageUp and PageDown to scroll");
-+ mvprintw(LINES - 2, 0, "Use Arrow Keys to navigate (F1 to Exit)");
-+ attroff(COLOR_PAIR(2));
-+ refresh();
-+
-+ /* Post the menu */
-+ post_menu(my_menu);
-+ wrefresh(my_menu_win);
-+
-+ while((c = wgetch(my_menu_win)) != KEY_F(1))
-+ { switch(c)
-+ { case KEY_DOWN:
-+ menu_driver(my_menu, REQ_DOWN_ITEM);
-+ break;
-+ case KEY_UP:
-+ menu_driver(my_menu, REQ_UP_ITEM);
-+ break;
-+ case KEY_LEFT:
-+ menu_driver(my_menu, REQ_LEFT_ITEM);
-+ break;
-+ case KEY_RIGHT:
-+ menu_driver(my_menu, REQ_RIGHT_ITEM);
-+ break;
-+ case KEY_NPAGE:
-+ menu_driver(my_menu, REQ_SCR_DPAGE);
-+ break;
-+ case KEY_PPAGE:
-+ menu_driver(my_menu, REQ_SCR_UPAGE);
-+ break;
-+ }
- wrefresh(my_menu_win);
-- }
-+ }
-
-- /* Unpost and free all the memory taken up */
-+ /* Unpost and free all the memory taken up */
- unpost_menu(my_menu);
- free_menu(my_menu);
-- for(i = 0; i &lt; n_choices; ++i)
-+ for(i = 0; i &#60; n_choices; ++i)
- free_item(my_items[i]);
-- endwin();
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>Watch the function call to set_menu_format(). It specifies the
--number of columns to be 3, thus displaying 3 items per row. We have
--also switched off the showing descriptions with the function
--menu_opts_off(). There are couple of functions set_menu_opts(),
--menu_opts_on() and menu_opts() which can be used to manipulate menu
--options. The following menu options can be specified.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> O_ONEVALUE
-+ endwin();
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>Watch the function call to set_menu_format(). It specifies the number of columns
-+to be 3, thus displaying 3 items per row. We have also switched off the showing
-+descriptions with the function menu_opts_off(). There are couple of functions
-+set_menu_opts(), menu_opts_on() and menu_opts() which can be used to manipulate
-+menu options. The following menu options can be specified.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> O_ONEVALUE
- Only one item can be selected for this menu.
-
- O_SHOWDESC
-@@ -4310,633 +5898,684 @@
-
- O_NONCYCLIC
- Don't wrap around next-item and previous-item,
-- requests to the other end of the menu.</font>
--</pre></td>
--</tr>
--</table>
--<p>All options are on by default. You can switch specific
--attributes on or off with menu_opts_on() and menu_opts_off()
--functions. You can also use set_menu_opts() to directly specify the
--options. The argument to this function should be a OR ed value of
--some of those above constants. The function menu_opts() can be used
--to find out a menu's present options.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MULTIVALUEMENUS" id=
--"MULTIVALUEMENUS">17.7. Multi Valued Menus</a></h3>
--<p>You might be wondering what if you switch off the option
--O_ONEVALUE. Then the menu becomes multi-valued. That means you can
--select more than one item. This brings us to the request
--REQ_TOGGLE_ITEM. Let's see it in action.</p>
--<div class="EXAMPLE"><a name="MMETO" id="MMETO"></a>
--<p><b>Example 22. Multi Valued Menus example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;curses.h&gt;
--#include &lt;menu.h&gt;
-+ requests to the other end of the menu.</PRE
-+><P
-+>All options are on by default. You can switch specific attributes on or off with
-+menu_opts_on() and menu_opts_off() functions. You can also use set_menu_opts()
-+to directly specify the options. The argument to this function should be a OR ed
-+value of some of those above constants. The function menu_opts() can be used to
-+find out a menu's present options. </P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MULTIVALUEMENUS"
-+>17.7. Multi Valued Menus</A
-+></H3
-+><P
-+>You might be wondering what if you switch off the option O_ONEVALUE. Then the
-+menu becomes multi-valued. That means you can select more than one item. This
-+brings us to the request REQ_TOGGLE_ITEM. Let's see it in action.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="MMETO"
-+></A
-+><P
-+><B
-+>Example 22. Multi Valued Menus example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;curses.h&#62;
-+#include &#60;menu.h&#62;
-
- #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
--#define CTRLD 4
-+#define CTRLD 4
-
- char *choices[] = {
- "Choice 1",
- "Choice 2",
- "Choice 3",
- "Choice 4",
-- "Choice 5",
-- "Choice 6",
-- "Choice 7",
-+ "Choice 5",
-+ "Choice 6",
-+ "Choice 7",
- "Exit",
- };
-
- int main()
--{ ITEM **my_items;
-- int c;
-- MENU *my_menu;
-+{ ITEM **my_items;
-+ int c;
-+ MENU *my_menu;
- int n_choices, i;
-- ITEM *cur_item;
--
-- /* Initialize curses */
-- initscr();
-+ ITEM *cur_item;
-+
-+ /* Initialize curses */
-+ initscr();
- cbreak();
- noecho();
-- keypad(stdscr, TRUE);
-+ keypad(stdscr, TRUE);
-
-- /* Initialize items */
-+ /* Initialize items */
- n_choices = ARRAY_SIZE(choices);
- my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *));
-- for(i = 0; i &lt; n_choices; ++i)
-+ for(i = 0; i &#60; n_choices; ++i)
- my_items[i] = new_item(choices[i], choices[i]);
-- my_items[n_choices] = (ITEM *)NULL;
-+ my_items[n_choices] = (ITEM *)NULL;
-
-- my_menu = new_menu((ITEM **)my_items);
-+ my_menu = new_menu((ITEM **)my_items);
-
-- /* Make the menu multi valued */
-- menu_opts_off(my_menu, O_ONEVALUE);
-+ /* Make the menu multi valued */
-+ menu_opts_off(my_menu, O_ONEVALUE);
-
-- mvprintw(LINES - 3, 0, "Use &lt;SPACE&gt; to select or unselect an item.");
-- mvprintw(LINES - 2, 0, "&lt;ENTER&gt; to see presently selected items(F1 to Exit)");
-- post_menu(my_menu);
-- refresh();
--
-- while((c = getch()) != KEY_F(1))
-- { switch(c)
-- { case KEY_DOWN:
-- menu_driver(my_menu, REQ_DOWN_ITEM);
-- break;
-- case KEY_UP:
-- menu_driver(my_menu, REQ_UP_ITEM);
-- break;
-- case ' ':
-- menu_driver(my_menu, REQ_TOGGLE_ITEM);
-- break;
-- case 10: /* Enter */
-- { char temp[200];
-- ITEM **items;
--
-- items = menu_items(my_menu);
-- temp[0] = '\0';
-- for(i = 0; i &lt; item_count(my_menu); ++i)
-- if(item_value(items[i]) == TRUE)
-- { strcat(temp, item_name(items[i]));
-- strcat(temp, " ");
-- }
-- move(20, 0);
-- clrtoeol();
-- mvprintw(20, 0, temp);
-- refresh();
-- }
-- break;
-- }
-- }
-+ mvprintw(LINES - 3, 0, "Use &#60;SPACE&#62; to select or unselect an item.");
-+ mvprintw(LINES - 2, 0, "&#60;ENTER&#62; to see presently selected items(F1 to Exit)");
-+ post_menu(my_menu);
-+ refresh();
-+
-+ while((c = getch()) != KEY_F(1))
-+ { switch(c)
-+ { case KEY_DOWN:
-+ menu_driver(my_menu, REQ_DOWN_ITEM);
-+ break;
-+ case KEY_UP:
-+ menu_driver(my_menu, REQ_UP_ITEM);
-+ break;
-+ case ' ':
-+ menu_driver(my_menu, REQ_TOGGLE_ITEM);
-+ break;
-+ case 10: /* Enter */
-+ { char temp[200];
-+ ITEM **items;
-+
-+ items = menu_items(my_menu);
-+ temp[0] = '\0';
-+ for(i = 0; i &#60; item_count(my_menu); ++i)
-+ if(item_value(items[i]) == TRUE)
-+ { strcat(temp, item_name(items[i]));
-+ strcat(temp, " ");
-+ }
-+ move(20, 0);
-+ clrtoeol();
-+ mvprintw(20, 0, temp);
-+ refresh();
-+ }
-+ break;
-+ }
-+ }
-
-- free_item(my_items[0]);
-+ free_item(my_items[0]);
- free_item(my_items[1]);
-- free_menu(my_menu);
-- endwin();
-+ free_menu(my_menu);
-+ endwin();
- }
-- </span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>Whew, A lot of new functions. Let's take them one after another.
--Firstly, the REQ_TOGGLE_ITEM. In a multi-valued menu, the user
--should be allowed to select or un select more than one item. The
--request REQ_TOGGLE_ITEM toggles the present selection. In this case
--when space is pressed REQ_TOGGLE_ITEM request is sent to
--menu_driver to achieve the result.</p>
--<p>Now when the user presses &lt;ENTER&gt; we show the items he
--presently selected. First we find out the items associated with the
--menu using the function menu_items(). Then we loop through the
--items to find out if the item is selected or not. The function
--item_value() returns TRUE if an item is selected. The function
--item_count() returns the number of items in the menu. The item name
--can be found with item_name(). You can also find the description
--associated with an item using item_description().</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MENUOPT" id="MENUOPT">17.8. Menu
--Options</a></h3>
--<p>Well, by this time you must be itching for some difference in
--your menu, with lots of functionality. I know. You want Colors !!!.
--You want to create nice menus similar to those text mode <a href=
--"http://www.jersey.net/~debinjoe/games/" target="_top">dos
--games</a>. The functions set_menu_fore() and set_menu_back() can be
--used to change the attribute of the selected item and unselected
--item. The names are misleading. They don't change menu's foreground
--or background which would have been useless.</p>
--<p>The function set_menu_grey() can be used to set the display
--attribute for the non-selectable items in the menu. 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 menus. Let's put these concepts in practice
--with this example</p>
--<div class="EXAMPLE"><a name="MMEAT" id="MMEAT"></a>
--<p><b>Example 23. Menu Options example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;menu.h&gt;
-+ </SPAN
-+></PRE
-+></DIV
-+><P
-+>Whew, A lot of new functions. Let's take them one after another. Firstly, the
-+REQ_TOGGLE_ITEM. In a multi-valued menu, the user should be allowed to select
-+or un select more than one item. The request REQ_TOGGLE_ITEM toggles the present
-+selection. In this case when space is pressed REQ_TOGGLE_ITEM request is sent to
-+menu_driver to achieve the result.</P
-+><P
-+>Now when the user presses &lt;ENTER&gt; we show the items he presently selected.
-+First we find out the items associated with the menu using the function
-+menu_items(). Then we loop through the items to find out if the item is selected
-+or not. The function item_value() returns TRUE if an item is selected. The
-+function item_count() returns the number of items in the menu. The item name can
-+be found with item_name(). You can also find the description associated with an
-+item using item_description().</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MENUOPT"
-+>17.8. Menu Options</A
-+></H3
-+><P
-+>Well, by this time you must be itching for some difference in your menu, with
-+lots of functionality. I know. You want Colors !!!. You want to create nice
-+menus similar to those text mode <A
-+HREF="http://www.jersey.net/~debinjoe/games/"
-+TARGET="_top"
-+>dos games</A
-+>. The functions
-+set_menu_fore() and set_menu_back() can be used to change the attribute of the
-+selected item and unselected item. The names are misleading. They don't change
-+menu's foreground or background which would have been useless. </P
-+><P
-+>The function set_menu_grey() can be used to set the display attribute for the
-+non-selectable items in the menu. 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 menus. Let's put these concepts in practice with
-+this example</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="MMEAT"
-+></A
-+><P
-+><B
-+>Example 23. Menu Options example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;menu.h&#62;
-
- #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
--#define CTRLD 4
-+#define CTRLD 4
-
- char *choices[] = {
- "Choice 1",
- "Choice 2",
- "Choice 3",
- "Choice 4",
-- "Choice 5",
-- "Choice 6",
-- "Choice 7",
-+ "Choice 5",
-+ "Choice 6",
-+ "Choice 7",
- "Exit",
- };
-
- int main()
--{ ITEM **my_items;
-- int c;
-- MENU *my_menu;
-+{ ITEM **my_items;
-+ int c;
-+ MENU *my_menu;
- int n_choices, i;
-- ITEM *cur_item;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-+ ITEM *cur_item;
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
- cbreak();
- noecho();
-- keypad(stdscr, TRUE);
-- init_pair(1, COLOR_RED, COLOR_BLACK);
-- init_pair(2, COLOR_GREEN, COLOR_BLACK);
-- init_pair(3, COLOR_MAGENTA, COLOR_BLACK);
-+ keypad(stdscr, TRUE);
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-+ init_pair(2, COLOR_GREEN, COLOR_BLACK);
-+ init_pair(3, COLOR_MAGENTA, COLOR_BLACK);
-
-- /* Initialize items */
-+ /* Initialize items */
- n_choices = ARRAY_SIZE(choices);
- my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *));
-- for(i = 0; i &lt; n_choices; ++i)
-+ for(i = 0; i &#60; n_choices; ++i)
- my_items[i] = new_item(choices[i], choices[i]);
-- my_items[n_choices] = (ITEM *)NULL;
-- item_opts_off(my_items[3], O_SELECTABLE);
-- item_opts_off(my_items[6], O_SELECTABLE);
--
-- /* Create menu */
-- my_menu = new_menu((ITEM **)my_items);
--
-- /* Set fore ground and back ground of the menu */
-- set_menu_fore(my_menu, COLOR_PAIR(1) | A_REVERSE);
-- set_menu_back(my_menu, COLOR_PAIR(2));
-- set_menu_grey(my_menu, COLOR_PAIR(3));
--
-- /* Post the menu */
-- mvprintw(LINES - 3, 0, "Press &lt;ENTER&gt; to see the option selected");
-- mvprintw(LINES - 2, 0, "Up and Down arrow keys to naviage (F1 to Exit)");
-- post_menu(my_menu);
-- refresh();
--
-- while((c = getch()) != KEY_F(1))
-- { switch(c)
-- { case KEY_DOWN:
-- menu_driver(my_menu, REQ_DOWN_ITEM);
-- break;
-- case KEY_UP:
-- menu_driver(my_menu, REQ_UP_ITEM);
-- break;
-- case 10: /* Enter */
-- move(20, 0);
-- clrtoeol();
-- mvprintw(20, 0, "Item selected is : %s",
-- item_name(current_item(my_menu)));
-- pos_menu_cursor(my_menu);
-- break;
-- }
-- }
-- unpost_menu(my_menu);
-- for(i = 0; i &lt; n_choices; ++i)
-- free_item(my_items[i]);
-- free_menu(my_menu);
-- endwin();
-+ my_items[n_choices] = (ITEM *)NULL;
-+ item_opts_off(my_items[3], O_SELECTABLE);
-+ item_opts_off(my_items[6], O_SELECTABLE);
-+
-+ /* Create menu */
-+ my_menu = new_menu((ITEM **)my_items);
-+
-+ /* Set fore ground and back ground of the menu */
-+ set_menu_fore(my_menu, COLOR_PAIR(1) | A_REVERSE);
-+ set_menu_back(my_menu, COLOR_PAIR(2));
-+ set_menu_grey(my_menu, COLOR_PAIR(3));
-+
-+ /* Post the menu */
-+ mvprintw(LINES - 3, 0, "Press &#60;ENTER&#62; to see the option selected");
-+ mvprintw(LINES - 2, 0, "Up and Down arrow keys to naviage (F1 to Exit)");
-+ post_menu(my_menu);
-+ refresh();
-+
-+ while((c = getch()) != KEY_F(1))
-+ { switch(c)
-+ { case KEY_DOWN:
-+ menu_driver(my_menu, REQ_DOWN_ITEM);
-+ break;
-+ case KEY_UP:
-+ menu_driver(my_menu, REQ_UP_ITEM);
-+ break;
-+ case 10: /* Enter */
-+ move(20, 0);
-+ clrtoeol();
-+ mvprintw(20, 0, "Item selected is : %s",
-+ item_name(current_item(my_menu)));
-+ pos_menu_cursor(my_menu);
-+ break;
-+ }
-+ }
-+ unpost_menu(my_menu);
-+ for(i = 0; i &#60; n_choices; ++i)
-+ free_item(my_items[i]);
-+ free_menu(my_menu);
-+ endwin();
- }
-- </span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MENUUSERPTR" id="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 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 may be the user pressed
--&lt;ENTER&gt;);</p>
--<div class="EXAMPLE"><a name="MMEUS" id="MMEUS"></a>
--<p><b>Example 24. Menu User Pointer Usage</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;curses.h&gt;
--#include &lt;menu.h&gt;
-+ </SPAN
-+></PRE
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="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 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 may be the user
-+pressed &lt;ENTER&gt;);</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="MMEUS"
-+></A
-+><P
-+><B
-+>Example 24. Menu User Pointer Usage </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;curses.h&#62;
-+#include &#60;menu.h&#62;
-
- #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
--#define CTRLD 4
-+#define CTRLD 4
-
- char *choices[] = {
- "Choice 1",
- "Choice 2",
- "Choice 3",
- "Choice 4",
-- "Choice 5",
-- "Choice 6",
-- "Choice 7",
-+ "Choice 5",
-+ "Choice 6",
-+ "Choice 7",
- "Exit",
- };
- void func(char *name);
-
- int main()
--{ ITEM **my_items;
-- int c;
-- MENU *my_menu;
-+{ ITEM **my_items;
-+ int c;
-+ MENU *my_menu;
- int n_choices, i;
-- ITEM *cur_item;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-+ ITEM *cur_item;
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
- cbreak();
- noecho();
-- keypad(stdscr, TRUE);
-- init_pair(1, COLOR_RED, COLOR_BLACK);
-- init_pair(2, COLOR_GREEN, COLOR_BLACK);
-- init_pair(3, COLOR_MAGENTA, COLOR_BLACK);
-+ keypad(stdscr, TRUE);
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-+ init_pair(2, COLOR_GREEN, COLOR_BLACK);
-+ init_pair(3, COLOR_MAGENTA, COLOR_BLACK);
-
-- /* Initialize items */
-+ /* Initialize items */
- n_choices = ARRAY_SIZE(choices);
- my_items = (ITEM **)calloc(n_choices + 1, sizeof(ITEM *));
-- for(i = 0; i &lt; n_choices; ++i)
-- { my_items[i] = new_item(choices[i], choices[i]);
-- /* Set the user pointer */
-- set_item_userptr(my_items[i], func);
-- }
-- my_items[n_choices] = (ITEM *)NULL;
--
-- /* Create menu */
-- my_menu = new_menu((ITEM **)my_items);
--
-- /* Post the menu */
-- mvprintw(LINES - 3, 0, "Press &lt;ENTER&gt; to see the option selected");
-- mvprintw(LINES - 2, 0, "Up and Down arrow keys to naviage (F1 to Exit)");
-- post_menu(my_menu);
-- refresh();
--
-- while((c = getch()) != KEY_F(1))
-- { switch(c)
-- { case KEY_DOWN:
-- menu_driver(my_menu, REQ_DOWN_ITEM);
-- break;
-- case KEY_UP:
-- menu_driver(my_menu, REQ_UP_ITEM);
-- break;
-- case 10: /* Enter */
-- { ITEM *cur;
-- void (*p)(char *);
--
-- cur = current_item(my_menu);
-- p = item_userptr(cur);
-- p((char *)item_name(cur));
-- pos_menu_cursor(my_menu);
-- break;
-- }
-- break;
-- }
-- }
-- unpost_menu(my_menu);
-- for(i = 0; i &lt; n_choices; ++i)
-- free_item(my_items[i]);
-- free_menu(my_menu);
-- endwin();
-+ for(i = 0; i &#60; n_choices; ++i)
-+ { my_items[i] = new_item(choices[i], choices[i]);
-+ /* Set the user pointer */
-+ set_item_userptr(my_items[i], func);
-+ }
-+ my_items[n_choices] = (ITEM *)NULL;
-+
-+ /* Create menu */
-+ my_menu = new_menu((ITEM **)my_items);
-+
-+ /* Post the menu */
-+ mvprintw(LINES - 3, 0, "Press &#60;ENTER&#62; to see the option selected");
-+ mvprintw(LINES - 2, 0, "Up and Down arrow keys to naviage (F1 to Exit)");
-+ post_menu(my_menu);
-+ refresh();
-+
-+ while((c = getch()) != KEY_F(1))
-+ { switch(c)
-+ { case KEY_DOWN:
-+ menu_driver(my_menu, REQ_DOWN_ITEM);
-+ break;
-+ case KEY_UP:
-+ menu_driver(my_menu, REQ_UP_ITEM);
-+ break;
-+ case 10: /* Enter */
-+ { ITEM *cur;
-+ void (*p)(char *);
-+
-+ cur = current_item(my_menu);
-+ p = item_userptr(cur);
-+ p((char *)item_name(cur));
-+ pos_menu_cursor(my_menu);
-+ break;
-+ }
-+ break;
-+ }
-+ }
-+ unpost_menu(my_menu);
-+ for(i = 0; i &#60; n_choices; ++i)
-+ free_item(my_items[i]);
-+ free_menu(my_menu);
-+ endwin();
- }
-
- void func(char *name)
--{ move(20, 0);
-- clrtoeol();
-- mvprintw(20, 0, "Item selected is : %s", name);
--} </span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="FORMS" id="FORMS">18. Forms
--Library</a></h2>
--<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 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 expansion of fields etc.. Let's see it in full
--flow.</p>
--<p>A form is a collection of fields; each field can be either a
--label(static text) or a data-entry location. The forms also library
--provides functions to divide forms into multiple pages.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="FORMBASICS" id="FORMBASICS">18.1. The
--Basics</a></h3>
--<p>Forms are created in much the same way as menus. First the
--fields related to the form are created with new_field(). You can
--set options for the fields, so that they can be displayed with some
--fancy attributes, validated before the field looses focus etc..
--Then the fields are attached to form. After this, the form can be
--posted to display and is ready to receive inputs. On the similar
--lines to menu_driver(), the form is manipulated with form_driver().
--We can send requests to form_driver to move focus to a certain
--field, move cursor to end of the field etc.. After the user enters
--values in the fields and validation done, form can be unposted and
--memory allocated can be freed.</p>
--<p>The general flow of control of a forms program looks like
--this.</p>
--<ol type="1">
--<li>
--<p>Initialize curses</p>
--</li>
--<li>
--<p>Create fields using new_field(). You can specify the height and
--width of the field, and its position on the form.</p>
--</li>
--<li>
--<p>Create the forms with new_form() by specifying the fields to be
--attached with.</p>
--</li>
--<li>
--<p>Post the form with form_post() and refresh the screen.</p>
--</li>
--<li>
--<p>Process the user requests with a loop and do necessary updates
--to form with form_driver.</p>
--</li>
--<li>
--<p>Unpost the menu with form_unpost()</p>
--</li>
--<li>
--<p>Free the memory allocated to menu by free_form()</p>
--</li>
--<li>
--<p>Free the memory allocated to the items with free_field()</p>
--</li>
--<li>
--<p>End curses</p>
--</li>
--</ol>
--<p>As you can see, working with forms library is much similar to
--handling menu library. The following examples will explore various
--aspects of form processing. Let's start the journey with a simple
--example. first.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="COMPILEFORMS" id="COMPILEFORMS">18.2.
--Compiling With the Forms Library</a></h3>
--<p>To use forms library functions, you have to include form.h and
--to link the program with forms library the flag -lform should be
--added along with -lncurses in that order.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"> #include &lt;form.h&gt;
-+{ move(20, 0);
-+ clrtoeol();
-+ mvprintw(20, 0, "Item selected is : %s", name);
-+} </SPAN
-+></PRE
-+></DIV
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="FORMS"
-+>18. Forms Library</A
-+></H2
-+><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
-+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 expansion of fields etc.. Let's see it in full flow.</P
-+><P
-+>A form is a collection of fields; each field can be either a label(static text)
-+or a data-entry location. The forms also library provides functions to divide
-+forms into multiple pages. </P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="FORMBASICS"
-+>18.1. The Basics</A
-+></H3
-+><P
-+>Forms are created in much the same way as menus. First the fields related to the
-+form are created with new_field(). You can set options for the fields, so that
-+they can be displayed with some fancy attributes, validated before the field
-+looses focus etc.. Then the fields are attached to form. After this, the form
-+can be posted to display and is ready to receive inputs. On the similar lines to
-+menu_driver(), the form is manipulated with form_driver(). We can send requests
-+to form_driver to move focus to a certain field, move cursor to end of the field
-+etc.. After the user enters values in the fields and validation done, form can
-+be unposted and memory allocated can be freed.</P
-+><P
-+>The general flow of control of a forms program looks like this.
-+
-+<P
-+></P
-+><OL
-+TYPE="1"
-+><LI
-+><P
-+>Initialize curses</P
-+></LI
-+><LI
-+><P
-+>Create fields using new_field(). You can specify the height and
-+width of the field, and its position on the form.</P
-+></LI
-+><LI
-+><P
-+>Create the forms with new_form() by specifying the fields to be
-+attached with.</P
-+></LI
-+><LI
-+><P
-+>Post the form with form_post() and refresh the screen.</P
-+></LI
-+><LI
-+><P
-+>Process the user requests with a loop and do necessary updates
-+to form with form_driver.</P
-+></LI
-+><LI
-+><P
-+>Unpost the menu with form_unpost()</P
-+></LI
-+><LI
-+><P
-+>Free the memory allocated to menu by free_form()</P
-+></LI
-+><LI
-+><P
-+>Free the memory allocated to the items with free_field()</P
-+></LI
-+><LI
-+><P
-+>End curses</P
-+></LI
-+></OL
-+></P
-+><P
-+>As you can see, working with forms library is much similar to handling menu
-+library. The following examples will explore various aspects of form
-+processing. Let's start the journey with a simple example. first.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="COMPILEFORMS"
-+>18.2. Compiling With the Forms Library</A
-+></H3
-+><P
-+>To use forms library functions, you have to include form.h and to link the
-+program with forms library the flag -lform should be added along with -lncurses
-+in that order.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> #include &lt;form.h&gt;
- .
- .
- .
-
-- compile and link: gcc &lt;program file&gt; -lform -lncurses</font>
--</pre></td>
--</tr>
--</table>
--<div class="EXAMPLE"><a name="FFOSI" id="FFOSI"></a>
--<p><b>Example 25. Forms Basics</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;form.h&gt;
-+ compile and link: gcc &lt;program file&gt; -lform -lncurses</PRE
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="FFOSI"
-+></A
-+><P
-+><B
-+>Example 25. Forms Basics </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;form.h&#62;
-
- int main()
--{ FIELD *field[3];
-- FORM *my_form;
-- int ch;
--
-- /* Initialize curses */
-- initscr();
-- cbreak();
-- noecho();
-- keypad(stdscr, TRUE);
--
-- /* Initialize the fields */
-- field[0] = new_field(1, 10, 4, 18, 0, 0);
-- field[1] = new_field(1, 10, 6, 18, 0, 0);
-- field[2] = NULL;
--
-- /* Set field options */
-- set_field_back(field[0], A_UNDERLINE); /* Print a line for the option */
-- field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */
-- /* Field is filled up */
-- set_field_back(field[1], A_UNDERLINE);
-- field_opts_off(field[1], O_AUTOSKIP);
--
-- /* Create the form and post it */
-- my_form = new_form(field);
-- post_form(my_form);
-- refresh();
--
-- mvprintw(4, 10, "Value 1:");
-- mvprintw(6, 10, "Value 2:");
-- refresh();
--
-- /* Loop through to get user requests */
-- while((ch = getch()) != KEY_F(1))
-- { switch(ch)
-- { case KEY_DOWN:
-- /* Go to next field */
-- form_driver(my_form, REQ_NEXT_FIELD);
-- /* Go to the end of the present buffer */
-- /* Leaves nicely at the last character */
-- form_driver(my_form, REQ_END_LINE);
-- break;
-- case KEY_UP:
-- /* Go to previous field */
-- form_driver(my_form, REQ_PREV_FIELD);
-- form_driver(my_form, REQ_END_LINE);
-- break;
-- default:
-- /* If this is a normal character, it gets */
-- /* Printed */
-- form_driver(my_form, ch);
-- break;
-- }
-- }
--
-- /* Un post form and free the memory */
-- unpost_form(my_form);
-- free_form(my_form);
-- free_field(field[0]);
-- free_field(field[1]);
--
-- endwin();
-- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>Above example is pretty straight forward. It creates two fields
--with <var class="LITERAL">new_field()</var>. new_field() takes
--height, width, starty, startx, number of offscreen rows and number
--of additional working buffers. The fifth argument number of
--offscreen rows specifies how much of the field to be shown. If it
--is zero, the entire field is always displayed otherwise the form
--will be scrollable when the user accesses not displayed parts of
--the field. The forms library allocates one buffer per field to
--store the data user enters. Using the last parameter to new_field()
--we can specify it to allocate some additional buffers. These can be
--used for any purpose you like.</p>
--<p>After creating the fields, back ground attribute of both of them
--is set to an underscore with set_field_back(). The AUTOSKIP option
--is turned off using field_opts_off(). If this option is turned on,
--focus will move to the next field in the form once the active field
--is filled up completely.</p>
--<p>After attaching the fields to the form, it is posted. Here on,
--user inputs are processed in the while loop, by making
--corresponding requests to form_driver. The details of all the
--requests to the form_driver() are explained later.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="PLAYFIELDS" id="PLAYFIELDS">18.3.
--Playing with Fields</a></h3>
--<p>Each form field is associated with a lot of attributes. They can
--be manipulated to get the required effect and to have fun !!!. So
--why wait?</p>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="FETCHINFO" id="FETCHINFO">18.3.1.
--Fetching Size and Location of Field</a></h4>
--<p>The parameters we have given at the time of creation of a field
--can be retrieved with field_info(). It returns height, width,
--starty, startx, number of offscreen rows, and number of additional
--buffers into the parameters given to it. It is a sort of inverse of
--new_field().</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int field_info( FIELD *field, /* field from which to fetch */
-+{ FIELD *field[3];
-+ FORM *my_form;
-+ int ch;
-+
-+ /* Initialize curses */
-+ initscr();
-+ cbreak();
-+ noecho();
-+ keypad(stdscr, TRUE);
-+
-+ /* Initialize the fields */
-+ field[0] = new_field(1, 10, 4, 18, 0, 0);
-+ field[1] = new_field(1, 10, 6, 18, 0, 0);
-+ field[2] = NULL;
-+
-+ /* Set field options */
-+ set_field_back(field[0], A_UNDERLINE); /* Print a line for the option */
-+ field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */
-+ /* Field is filled up */
-+ set_field_back(field[1], A_UNDERLINE);
-+ field_opts_off(field[1], O_AUTOSKIP);
-+
-+ /* Create the form and post it */
-+ my_form = new_form(field);
-+ post_form(my_form);
-+ refresh();
-+
-+ mvprintw(4, 10, "Value 1:");
-+ mvprintw(6, 10, "Value 2:");
-+ refresh();
-+
-+ /* Loop through to get user requests */
-+ while((ch = getch()) != KEY_F(1))
-+ { switch(ch)
-+ { case KEY_DOWN:
-+ /* Go to next field */
-+ form_driver(my_form, REQ_NEXT_FIELD);
-+ /* Go to the end of the present buffer */
-+ /* Leaves nicely at the last character */
-+ form_driver(my_form, REQ_END_LINE);
-+ break;
-+ case KEY_UP:
-+ /* Go to previous field */
-+ form_driver(my_form, REQ_PREV_FIELD);
-+ form_driver(my_form, REQ_END_LINE);
-+ break;
-+ default:
-+ /* If this is a normal character, it gets */
-+ /* Printed */
-+ form_driver(my_form, ch);
-+ break;
-+ }
-+ }
-+
-+ /* Un post form and free the memory */
-+ unpost_form(my_form);
-+ free_form(my_form);
-+ free_field(field[0]);
-+ free_field(field[1]);
-+
-+ endwin();
-+ return 0;
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>Above example is pretty straight forward. It creates two fields with
-+<TT
-+CLASS="LITERAL"
-+>new_field()</TT
-+>. new_field() takes height, width,
-+starty, startx, number of offscreen rows and number of additional working
-+buffers. The fifth argument number of offscreen rows specifies how much of the
-+field to be shown. If it is zero, the entire field is always displayed otherwise
-+the form will be scrollable when the user accesses not displayed parts of the
-+field. The forms library allocates one buffer per field to store the data user
-+enters. Using the last parameter to new_field() we can specify it to allocate
-+some additional buffers. These can be used for any purpose you like.</P
-+><P
-+>After creating the fields, back ground attribute of both of them is set to an
-+underscore with set_field_back(). The AUTOSKIP option is turned off using
-+field_opts_off(). If this option is turned on, focus will move to the next
-+field in the form once the active field is filled up completely.</P
-+><P
-+>After attaching the fields to the form, it is posted. Here on, user inputs are
-+processed in the while loop, by making corresponding requests to form_driver.
-+The details of all the requests to the form_driver() are explained later.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="PLAYFIELDS"
-+>18.3. Playing with Fields</A
-+></H3
-+><P
-+>Each form field is associated with a lot of attributes. They can be manipulated
-+to get the required effect and to have fun !!!. So why wait? </P
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="FETCHINFO"
-+>18.3.1. Fetching Size and Location of Field</A
-+></H4
-+><P
-+>The parameters we have given at the time of creation of a field can be retrieved
-+with field_info(). It returns height, width, starty, startx, number of offscreen
-+rows, and number of additional buffers into the parameters given to it. It is a
-+sort of inverse of new_field().</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int field_info( FIELD *field, /* field from which to fetch */
- int *height, *int width, /* field size */
- int *top, int *left, /* upper left corner */
- int *offscreen, /* number of offscreen rows */
-- int *nbuf); /* number of working buffers */</font>
--</pre></td>
--</tr>
--</table>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="MOVEFIELD" id="MOVEFIELD">18.3.2. Moving
--the field</a></h4>
--<p>The location of the field can be moved to a different position
--with move_field().</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int move_field( FIELD *field, /* field to alter */
-- int top, int left); /* new upper-left corner */</font>
--</pre></td>
--</tr>
--</table>
--<p>As usual, the changed position can be queried with
--field_infor().</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="JUSTIFYFIELD" id="JUSTIFYFIELD">18.3.3.
--Field Justification</a></h4>
--<p>The justification to be done for the field can be fixed using
--the function set_field_just().</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000"> int set_field_just(FIELD *field, /* field to alter */
-+ int *nbuf); /* number of working buffers */</PRE
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="MOVEFIELD"
-+>18.3.2. Moving the field</A
-+></H4
-+><P
-+>The location of the field can be moved to a different position with
-+move_field().</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int move_field( FIELD *field, /* field to alter */
-+ int top, int left); /* new upper-left corner */</PRE
-+><P
-+>As usual, the changed position can be queried with field_infor().</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="JUSTIFYFIELD"
-+>18.3.3. Field Justification</A
-+></H4
-+><P
-+>The justification to be done for the field can be fixed using the function
-+set_field_just().</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+> int set_field_just(FIELD *field, /* field to alter */
- int justmode); /* mode to set */
-- int field_just(FIELD *field); /* fetch justify mode of field */</font>
--</pre></td>
--</tr>
--</table>
--<p>The justification mode valued accepted and returned by these
--functions are NO_JUSTIFICATION, JUSTIFY_RIGHT, JUSTIFY_LEFT, or
--JUSTIFY_CENTER.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="FIELDDISPATTRIB" id=
--"FIELDDISPATTRIB">18.3.4. Field Display Attributes</a></h4>
--<p>As you have seen, in the above example, display attribute for
--the fields can be set with set_field_fore() and setfield_back().
--These functions set foreground and background attribute of the
--fields. You can also specify a pad character which will be filled
--in the unfilled portion of the field. The pad character is set with
--a call to set_field_pad(). Default pad value is a space. The
--functions field_fore(), field_back, field_pad() can be used to
--query the present foreground, background attributes and pad
--character for the field. The following list gives the usage of
--functions.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">&#13;int set_field_fore(FIELD *field, /* field to alter */
-+ int field_just(FIELD *field); /* fetch justify mode of field */</PRE
-+><P
-+>The justification mode valued accepted and returned by these functions are
-+NO_JUSTIFICATION, JUSTIFY_RIGHT, JUSTIFY_LEFT, or JUSTIFY_CENTER.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="FIELDDISPATTRIB"
-+>18.3.4. Field Display Attributes</A
-+></H4
-+><P
-+>As you have seen, in the above example, display attribute for the fields can be
-+set with set_field_fore() and setfield_back(). These functions set foreground
-+and background attribute of the fields. You can also specify a pad character
-+which will be filled in the unfilled portion of the field. The pad character is
-+set with a call to set_field_pad(). Default pad value is a space. The functions
-+field_fore(), field_back, field_pad() can be used to query the present
-+foreground, background attributes and pad character for the field. The following
-+list gives the usage of functions.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>&#13;int set_field_fore(FIELD *field, /* field to alter */
- chtype attr); /* attribute to set */
-
- chtype field_fore(FIELD *field); /* field to query */
-@@ -4952,124 +6591,127 @@
- int pad); /* pad character to set */
-
- chtype field_pad(FIELD *field); /* field to query */
-- /* returns present pad character */&#13;</font>
--</pre></td>
--</tr>
--</table>
--<p>Though above functions seem quite simple, using colors with
--set_field_fore() may be frustrating in the beginning. Let me first
--explain about foreground and background attributes of a field. The
--foreground attribute is associated with the character. That means a
--character in the field is printed with the attribute you have set
--with set_field_fore(). Background attribute is the attribute used
--to fill background of field, whether any character is there or not.
--So what about colors? Since colors are always defined in pairs,
--what is the right way to display colored fields? Here's an example
--clarifying color attributes.</p>
--<div class="EXAMPLE"><a name="FFOAT" id="FFOAT"></a>
--<p><b>Example 26. Form Attributes example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;form.h&gt;
-+ /* returns present pad character */&#13;</PRE
-+><P
-+>Though above functions seem quite simple, using colors with set_field_fore() may
-+be frustrating in the beginning. Let me first explain about foreground and
-+background attributes of a field. The foreground attribute is associated with
-+the character. That means a character in the field is printed with the attribute
-+you have set with set_field_fore(). Background attribute is the attribute used
-+to fill background of field, whether any character is there or not. So what
-+about colors? Since colors are always defined in pairs, what is the right way to
-+display colored fields? Here's an example clarifying color attributes.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="FFOAT"
-+></A
-+><P
-+><B
-+>Example 26. Form Attributes example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;form.h&#62;
-
- int main()
--{ FIELD *field[3];
-- FORM *my_form;
-- int ch;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-- cbreak();
-- noecho();
-- keypad(stdscr, TRUE);
--
-- /* Initialize few color pairs */
-- init_pair(1, COLOR_WHITE, COLOR_BLUE);
-- init_pair(2, COLOR_WHITE, COLOR_BLUE);
--
-- /* Initialize the fields */
-- field[0] = new_field(1, 10, 4, 18, 0, 0);
-- field[1] = new_field(1, 10, 6, 18, 0, 0);
-- field[2] = NULL;
--
-- /* Set field options */
-- set_field_fore(field[0], COLOR_PAIR(1));/* Put the field with blue background */
-- set_field_back(field[0], COLOR_PAIR(2));/* and white foreground (characters */
-- /* are printed in white */
-- field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */
-- /* Field is filled up */
-- set_field_back(field[1], A_UNDERLINE);
-- field_opts_off(field[1], O_AUTOSKIP);
--
-- /* Create the form and post it */
-- my_form = new_form(field);
-- post_form(my_form);
-- refresh();
--
-- set_current_field(my_form, field[0]); /* Set focus to the colored field */
-- mvprintw(4, 10, "Value 1:");
-- mvprintw(6, 10, "Value 2:");
-- mvprintw(LINES - 2, 0, "Use UP, DOWN arrow keys to switch between fields");
-- refresh();
--
-- /* Loop through to get user requests */
-- while((ch = getch()) != KEY_F(1))
-- { switch(ch)
-- { case KEY_DOWN:
-- /* Go to next field */
-- form_driver(my_form, REQ_NEXT_FIELD);
-- /* Go to the end of the present buffer */
-- /* Leaves nicely at the last character */
-- form_driver(my_form, REQ_END_LINE);
-- break;
-- case KEY_UP:
-- /* Go to previous field */
-- form_driver(my_form, REQ_PREV_FIELD);
-- form_driver(my_form, REQ_END_LINE);
-- break;
-- default:
-- /* If this is a normal character, it gets */
-- /* Printed */
-- form_driver(my_form, ch);
-- break;
-- }
-- }
--
-- /* Un post form and free the memory */
-- unpost_form(my_form);
-- free_form(my_form);
-- free_field(field[0]);
-- free_field(field[1]);
--
-- endwin();
-- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>Play with the color pairs and try to understand the foreground
--and background attributes. In my programs using color attributes, I
--usually set only the background with set_field_back(). Curses
--simply doesn't allow defining individual color attributes.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="FIELDOPTIONBITS" id=
--"FIELDOPTIONBITS">18.3.5. Field Option Bits</a></h4>
--<p>There is also a large collection of field option bits you can
--set to control various aspects of forms processing. You can
--manipulate them with these functions:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_field_opts(FIELD *field, /* field to alter */
-+{ FIELD *field[3];
-+ FORM *my_form;
-+ int ch;
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
-+ cbreak();
-+ noecho();
-+ keypad(stdscr, TRUE);
-+
-+ /* Initialize few color pairs */
-+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
-+ init_pair(2, COLOR_WHITE, COLOR_BLUE);
-+
-+ /* Initialize the fields */
-+ field[0] = new_field(1, 10, 4, 18, 0, 0);
-+ field[1] = new_field(1, 10, 6, 18, 0, 0);
-+ field[2] = NULL;
-+
-+ /* Set field options */
-+ set_field_fore(field[0], COLOR_PAIR(1));/* Put the field with blue background */
-+ set_field_back(field[0], COLOR_PAIR(2));/* and white foreground (characters */
-+ /* are printed in white */
-+ field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */
-+ /* Field is filled up */
-+ set_field_back(field[1], A_UNDERLINE);
-+ field_opts_off(field[1], O_AUTOSKIP);
-+
-+ /* Create the form and post it */
-+ my_form = new_form(field);
-+ post_form(my_form);
-+ refresh();
-+
-+ set_current_field(my_form, field[0]); /* Set focus to the colored field */
-+ mvprintw(4, 10, "Value 1:");
-+ mvprintw(6, 10, "Value 2:");
-+ mvprintw(LINES - 2, 0, "Use UP, DOWN arrow keys to switch between fields");
-+ refresh();
-+
-+ /* Loop through to get user requests */
-+ while((ch = getch()) != KEY_F(1))
-+ { switch(ch)
-+ { case KEY_DOWN:
-+ /* Go to next field */
-+ form_driver(my_form, REQ_NEXT_FIELD);
-+ /* Go to the end of the present buffer */
-+ /* Leaves nicely at the last character */
-+ form_driver(my_form, REQ_END_LINE);
-+ break;
-+ case KEY_UP:
-+ /* Go to previous field */
-+ form_driver(my_form, REQ_PREV_FIELD);
-+ form_driver(my_form, REQ_END_LINE);
-+ break;
-+ default:
-+ /* If this is a normal character, it gets */
-+ /* Printed */
-+ form_driver(my_form, ch);
-+ break;
-+ }
-+ }
-+
-+ /* Un post form and free the memory */
-+ unpost_form(my_form);
-+ free_form(my_form);
-+ free_field(field[0]);
-+ free_field(field[1]);
-+
-+ endwin();
-+ return 0;
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>Play with the color pairs and try to understand the foreground and background
-+attributes. In my programs using color attributes, I usually set only the
-+background with set_field_back(). Curses simply doesn't allow defining
-+individual color attributes. </P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="FIELDOPTIONBITS"
-+>18.3.5. Field Option Bits</A
-+></H4
-+><P
-+>There is also a large collection of field option bits you can set to control
-+various aspects of forms processing. You can manipulate them with these
-+functions:</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_opts(FIELD *field, /* field to alter */
- int attr); /* attribute to set */
-
- int field_opts_on(FIELD *field, /* field to alter */
-@@ -5078,108 +6720,134 @@
- int field_opts_off(FIELD *field, /* field to alter */
- int attr); /* attributes to turn off */
-
--int field_opts(FIELD *field); /* field to query */ </font>
--</pre></td>
--</tr>
--</table>
--<p>The function set_field_opts() can be used to directly set
--attributes of a field or you can choose to switch a few attributes
--on and off with field_opts_on() and field_opts_off() selectively.
--Anytime you can query the attributes of a field with field_opts().
--The following is the list of available options. By default, all
--options are on.</p>
--<div class="VARIABLELIST">
--<dl>
--<dt>O_VISIBLE</dt>
--<dd>
--<p>Controls whether the field is visible on the screen. Can be used
--during form processing to hide or pop up fields depending on the
--value of parent fields.</p>
--</dd>
--<dt>O_ACTIVE</dt>
--<dd>
--<p>Controls whether the field is active during forms processing
--(i.e. visited by form navigation keys). Can be used to make labels
--or derived fields with buffer values alterable by the forms
--application, not the user.</p>
--</dd>
--<dt>O_PUBLIC</dt>
--<dd>
--<p>Controls whether data is displayed during field entry. If this
--option is turned off on a field, the library will accept and edit
--data in that field, but it will not be displayed and the visible
--field cursor will not move. You can turn off the O_PUBLIC bit to
--define password fields.</p>
--</dd>
--<dt>O_EDIT</dt>
--<dd>
--<p>Controls whether the field's data can be modified. When this
--option is off, all editing requests except <var class=
--"LITERAL">REQ_PREV_CHOICE</var> and <var class=
--"LITERAL">REQ_NEXT_CHOICE</var>will fail. Such read-only fields may
--be useful for help messages.</p>
--</dd>
--<dt>O_WRAP</dt>
--<dd>
--<p>Controls word-wrapping in multi-line fields. Normally, when any
--character of a (blank-separated) word reaches the end of the
--current line, the entire word is wrapped to the next line (assuming
--there is one). When this option is off, the word will be split
--across the line break.</p>
--</dd>
--<dt>O_BLANK</dt>
--<dd>
--<p>Controls field blanking. When this option is on, entering a
--character at the first field position erases the entire field
--(except for the just-entered character).</p>
--</dd>
--<dt>O_AUTOSKIP</dt>
--<dd>
--<p>Controls automatic skip to next field when this one fills.
--Normally, when the forms user tries to type more data into a field
--than will fit, the editing location jumps to next field. When this
--option is off, the user's cursor will hang at the end of the field.
--This option is ignored in dynamic fields that have not reached
--their size limit.</p>
--</dd>
--<dt>O_NULLOK</dt>
--<dd>
--<p>Controls whether validation is applied to blank fields.
--Normally, it is not; the user can leave a field blank without
--invoking the usual validation check on exit. If this option is off
--on a field, exit from it will invoke a validation check.</p>
--</dd>
--<dt>O_PASSOK</dt>
--<dd>
--<p>Controls whether validation occurs on every exit, or only after
--the field is modified. Normally the latter is true. Setting
--O_PASSOK may be useful if your field's validation function may
--change during forms processing.</p>
--</dd>
--<dt>O_STATIC</dt>
--<dd>
--<p>Controls whether the field is fixed to its initial dimensions.
--If you turn this off, the field becomes dynamic and will stretch to
--fit entered data.</p>
--</dd>
--</dl>
--</div>
--<p>A field's options cannot be changed while the field is currently
--selected. However, options may be changed on posted fields that are
--not current.</p>
--<p>The option values are bit-masks and can be composed with
--logical-or in the obvious way. You have seen the usage of switching
--off O_AUTOSKIP option. The following example clarifies usage of
--some more options. Other options are explained where
--appropriate.</p>
--<div class="EXAMPLE"><a name="FFOOP" id="FFOOP"></a>
--<p><b>Example 27. Field Options Usage example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;form.h&gt;
-+int field_opts(FIELD *field); /* field to query */ </PRE
-+><P
-+>The function set_field_opts() can be used to directly set attributes of a field
-+or you can choose to switch a few attributes on and off with field_opts_on() and
-+field_opts_off() selectively. Anytime you can query the attributes of a field
-+with field_opts(). The following is the list of available options. By default,
-+all options are on.</P
-+><P
-+></P
-+><DIV
-+CLASS="VARIABLELIST"
-+><DL
-+><DT
-+>O_VISIBLE</DT
-+><DD
-+><P
-+>Controls whether the field is visible on the screen. Can be used
-+during form processing to hide or pop up fields depending on the value
-+of parent fields.</P
-+></DD
-+><DT
-+>O_ACTIVE</DT
-+><DD
-+><P
-+>Controls whether the field is active during forms processing (i.e.
-+visited by form navigation keys). Can be used to make labels or derived
-+fields with buffer values alterable by the forms application, not the user.</P
-+></DD
-+><DT
-+>O_PUBLIC</DT
-+><DD
-+><P
-+>Controls whether data is displayed during field entry. If this option is
-+turned off on a field, the library will accept and edit data in that field,
-+but it will not be displayed and the visible field cursor will not move.
-+You can turn off the O_PUBLIC bit to define password fields.</P
-+></DD
-+><DT
-+>O_EDIT</DT
-+><DD
-+><P
-+>Controls whether the field's data can be modified. When this option is
-+off, all editing requests except <TT
-+CLASS="LITERAL"
-+>REQ_PREV_CHOICE</TT
-+> and <TT
-+CLASS="LITERAL"
-+>REQ_NEXT_CHOICE</TT
-+>will
-+fail. Such read-only fields may be useful for help messages.</P
-+></DD
-+><DT
-+>O_WRAP</DT
-+><DD
-+><P
-+>Controls word-wrapping in multi-line fields. Normally, when any
-+character of a (blank-separated) word reaches the end of the current line, the
-+entire word is wrapped to the next line (assuming there is one). When this
-+option is off, the word will be split across the line break.</P
-+></DD
-+><DT
-+>O_BLANK</DT
-+><DD
-+><P
-+>Controls field blanking. When this option is on, entering a character at
-+the first field position erases the entire field (except for the just-entered
-+character).</P
-+></DD
-+><DT
-+>O_AUTOSKIP</DT
-+><DD
-+><P
-+>Controls automatic skip to next field when this one fills. Normally,
-+when the forms user tries to type more data into a field than will fit,
-+the editing location jumps to next field. When this option is off, the
-+user's cursor will hang at the end of the field. This option is ignored
-+in dynamic fields that have not reached their size limit.</P
-+></DD
-+><DT
-+>O_NULLOK</DT
-+><DD
-+><P
-+>Controls whether validation is applied to
-+blank fields. Normally, it is not; the user can leave a field blank
-+without invoking the usual validation check on exit. If this option is
-+off on a field, exit from it will invoke a validation check.</P
-+></DD
-+><DT
-+>O_PASSOK</DT
-+><DD
-+><P
-+>Controls whether validation occurs on every exit, or only after
-+the field is modified. Normally the latter is true. Setting O_PASSOK
-+may be useful if your field's validation function may change during
-+forms processing.</P
-+></DD
-+><DT
-+>O_STATIC</DT
-+><DD
-+><P
-+>Controls whether the field is fixed to its initial dimensions. If you
-+turn this off, the field becomes dynamic and will
-+stretch to fit entered data.</P
-+></DD
-+></DL
-+></DIV
-+><P
-+>A field's options cannot be changed while the field is currently selected.
-+However, options may be changed on posted fields that are not current. </P
-+><P
-+>The option values are bit-masks and can be composed with logical-or in
-+the obvious way. You have seen the usage of switching off O_AUTOSKIP option.
-+The following example clarifies usage of some more options. Other options
-+are explained where appropriate.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="FFOOP"
-+></A
-+><P
-+><B
-+>Example 27. Field Options Usage example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;form.h&#62;
-
- #define STARTX 15
- #define STARTY 4
-@@ -5188,975 +6856,1476 @@
- #define N_FIELDS 3
-
- int main()
--{ FIELD *field[N_FIELDS];
-- FORM *my_form;
-- int ch, i;
--
-- /* Initialize curses */
-- initscr();
-- cbreak();
-- noecho();
-- keypad(stdscr, TRUE);
--
-- /* Initialize the fields */
-- for(i = 0; i &lt; N_FIELDS - 1; ++i)
-- field[i] = new_field(1, WIDTH, STARTY + i * 2, STARTX, 0, 0);
-- field[N_FIELDS - 1] = NULL;
--
-- /* Set field options */
-- set_field_back(field[1], A_UNDERLINE); /* Print a line for the option */
--
-- field_opts_off(field[0], O_ACTIVE); /* This field is a static label */
-- field_opts_off(field[1], O_PUBLIC); /* This filed is like a password field*/
-- field_opts_off(field[1], O_AUTOSKIP); /* To avoid entering the same field */
-- /* after last character is entered */
--
-- /* Create the form and post it */
-- my_form = new_form(field);
-- post_form(my_form);
-- refresh();
--
-- set_field_just(field[0], JUSTIFY_CENTER); /* Center Justification */
-- set_field_buffer(field[0], 0, "This is a static Field");
-- /* Initialize the field */
-- mvprintw(STARTY, STARTX - 10, "Field 1:");
-- mvprintw(STARTY + 2, STARTX - 10, "Field 2:");
-- refresh();
--
-- /* Loop through to get user requests */
-- while((ch = getch()) != KEY_F(1))
-- { switch(ch)
-- { case KEY_DOWN:
-- /* Go to next field */
-- form_driver(my_form, REQ_NEXT_FIELD);
-- /* Go to the end of the present buffer */
-- /* Leaves nicely at the last character */
-- form_driver(my_form, REQ_END_LINE);
-- break;
-- case KEY_UP:
-- /* Go to previous field */
-- form_driver(my_form, REQ_PREV_FIELD);
-- form_driver(my_form, REQ_END_LINE);
-- break;
-- default:
-- /* If this is a normal character, it gets */
-- /* Printed */
-- form_driver(my_form, ch);
-- break;
-- }
-- }
--
-- /* Un post form and free the memory */
-- unpost_form(my_form);
-- free_form(my_form);
-- free_field(field[0]);
-- free_field(field[1]);
--
-- endwin();
-- return 0;
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--<p>This example, though useless, shows the usage of options. If
--used properly, they can present information very effectively in a
--form. The second field being not O_PUBLIC, does not show the
--characters you are typing.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="FIELDSTATUS" id="FIELDSTATUS">18.3.6.
--Field Status</a></h4>
--<p>The field status specifies whether the field has got edited or
--not. It is initially set to FALSE and when user enters something
--and the data buffer gets modified it becomes TRUE. So a field's
--status can be queried to find out whether it has been modified or
--not. The following functions can assist in those operations.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_field_status(FIELD *field, /* field to alter */
-+{ FIELD *field[N_FIELDS];
-+ FORM *my_form;
-+ int ch, i;
-+
-+ /* Initialize curses */
-+ initscr();
-+ cbreak();
-+ noecho();
-+ keypad(stdscr, TRUE);
-+
-+ /* Initialize the fields */
-+ for(i = 0; i &#60; N_FIELDS - 1; ++i)
-+ field[i] = new_field(1, WIDTH, STARTY + i * 2, STARTX, 0, 0);
-+ field[N_FIELDS - 1] = NULL;
-+
-+ /* Set field options */
-+ set_field_back(field[1], A_UNDERLINE); /* Print a line for the option */
-+
-+ field_opts_off(field[0], O_ACTIVE); /* This field is a static label */
-+ field_opts_off(field[1], O_PUBLIC); /* This filed is like a password field*/
-+ field_opts_off(field[1], O_AUTOSKIP); /* To avoid entering the same field */
-+ /* after last character is entered */
-+
-+ /* Create the form and post it */
-+ my_form = new_form(field);
-+ post_form(my_form);
-+ refresh();
-+
-+ set_field_just(field[0], JUSTIFY_CENTER); /* Center Justification */
-+ set_field_buffer(field[0], 0, "This is a static Field");
-+ /* Initialize the field */
-+ mvprintw(STARTY, STARTX - 10, "Field 1:");
-+ mvprintw(STARTY + 2, STARTX - 10, "Field 2:");
-+ refresh();
-+
-+ /* Loop through to get user requests */
-+ while((ch = getch()) != KEY_F(1))
-+ { switch(ch)
-+ { case KEY_DOWN:
-+ /* Go to next field */
-+ form_driver(my_form, REQ_NEXT_FIELD);
-+ /* Go to the end of the present buffer */
-+ /* Leaves nicely at the last character */
-+ form_driver(my_form, REQ_END_LINE);
-+ break;
-+ case KEY_UP:
-+ /* Go to previous field */
-+ form_driver(my_form, REQ_PREV_FIELD);
-+ form_driver(my_form, REQ_END_LINE);
-+ break;
-+ default:
-+ /* If this is a normal character, it gets */
-+ /* Printed */
-+ form_driver(my_form, ch);
-+ break;
-+ }
-+ }
-+
-+ /* Un post form and free the memory */
-+ unpost_form(my_form);
-+ free_form(my_form);
-+ free_field(field[0]);
-+ free_field(field[1]);
-+
-+ endwin();
-+ return 0;
-+}</SPAN
-+></PRE
-+></DIV
-+><P
-+>This example, though useless, shows the usage of options. If used properly, they
-+can present information very effectively in a form. The second field being not
-+O_PUBLIC, does not show the characters you are typing.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="FIELDSTATUS"
-+>18.3.6. Field Status</A
-+></H4
-+><P
-+>The field status specifies whether the field has got edited or not. It is
-+initially set to FALSE and when user enters something and the data buffer gets
-+modified it becomes TRUE. So a field's status can be queried to find out whether
-+it has been modified or not. The following functions can assist in those
-+operations.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_status(FIELD *field, /* field to alter */
- int status); /* status to set */
-
--int field_status(FIELD *field); /* fetch status of field */</font>
--</pre></td>
--</tr>
--</table>
--<p>It's 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 field_status() either (1) in the field's exit
--validation check routine, (2) from the field's or form's
--initialization or termination hooks, or (3) just after a
--REQ_VALIDATION request has been processed by the forms driver</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="FIELDUSERPTR" id="FIELDUSERPTR">18.3.7.
--Field User Pointer</a></h4>
--<p>Every field structure contains one pointer that can be used by
--the user for various purposes. It is not touched by forms library
--and can be used for any purpose by the user. The following
--functions set and fetch user pointer.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000">int set_field_userptr(FIELD *field,
-+int field_status(FIELD *field); /* fetch status of field */</PRE
-+><P
-+>It's 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 field_status() either (1) in the
-+field's exit validation check routine, (2) from the field's or form's
-+initialization or termination hooks, or (3) just after a REQ_VALIDATION request
-+has been processed by the forms driver</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="FIELDUSERPTR"
-+>18.3.7. Field User Pointer</A
-+></H4
-+><P
-+>Every field structure contains one pointer that can be used by the user for
-+various purposes. It is not touched by forms library and can be used for any
-+purpose by the user. The following functions set and fetch user pointer.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_userptr(FIELD *field,
- char *userptr); /* the user pointer you wish to associate */
- /* with the field */
-
--char *field_userptr(FIELD *field); /* fetch user pointer of the field */</font>
--</pre></td>
--</tr>
--</table>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="VARIABLESIZEFIELDS" id=
--"VARIABLESIZEFIELDS">18.3.8. Variable-Sized Fields</a></h4>
--<p>If you want a dynamically changing field with variable width,
--this is the feature you want to put to full use. This will allow
--the user to enter more data than the original size of the field and
--let the field grow. According to the field orientation it will
--scroll horizontally or vertically to incorporate the new data.</p>
--<p>To make a field dynamically growable, the option O_STATIC should
--be turned off. This can be done with a</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000"> field_opts_off(field_pointer, O_STATIC);</font>
--</pre></td>
--</tr>
--</table>
--<p>But it's usually not advisable to allow a field to grow
--infinitely. You can set a maximum limit to the growth of the field
--with</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_max_field(FIELD *field, /* Field on which to operate */
-- int max_growth); /* maximum growth allowed for the field */</font>
--</pre></td>
--</tr>
--</table>
--<p>The field info for a dynamically growable field can be retrieved
--by</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int dynamic_field_info( FIELD *field, /* Field on which to operate */
-+char *field_userptr(FIELD *field); /* fetch user pointer of the field */</PRE
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="VARIABLESIZEFIELDS"
-+>18.3.8. Variable-Sized Fields</A
-+></H4
-+><P
-+>If you want a dynamically changing field with variable width, this is the
-+feature you want to put to full use. This will allow the user to enter more data
-+than the original size of the field and let the field grow. According to the
-+field orientation it will scroll horizontally or vertically to incorporate the
-+new data.</P
-+><P
-+>To make a field dynamically growable, the option O_STATIC should be turned off.
-+This can be done with a
-+<PRE
-+CLASS="PROGRAMLISTING"
-+> field_opts_off(field_pointer, O_STATIC);</PRE
-+></P
-+><P
-+>But it's usually not advisable to allow a field to grow infinitely. You can set
-+a maximum limit to the growth of the field with
-+<PRE
-+CLASS="PROGRAMLISTING"
-+>int set_max_field(FIELD *field, /* Field on which to operate */
-+ int max_growth); /* maximum growth allowed for the field */</PRE
-+></P
-+><P
-+>The field info for a dynamically growable field can be retrieved by
-+<PRE
-+CLASS="PROGRAMLISTING"
-+>int dynamic_field_info( FIELD *field, /* Field on which to operate */
- int *prows, /* number of rows will be filled in this */
- int *pcols, /* number of columns will be filled in this*/
- int *pmax) /* maximum allowable growth will be filled */
-- /* in this */</font>
--</pre></td>
--</tr>
--</table>
--Though field_info work as usual, it is advisable to use this
--function to get the proper attributes of a dynamically growable
--field.
--<p>Recall the library routine new_field; a new field created with
--height set to one will be defined to be a one line field. A new
--field created with height greater than one will be defined to be a
--multi line field.</p>
--<p>A one line field with O_STATIC turned off (dynamically growable
--field) will contain a single fixed row, but the number of columns
--can increase if the user enters more data than the initial field
--will hold. The number of columns displayed will remain fixed and
--the additional data will scroll horizontally.</p>
--<p>A multi line field with O_STATIC turned off (dynamically
--growable field) will contain a fixed number of columns, but the
--number of rows can increase if the user enters more data than the
--initial field will hold. The number of rows displayed will remain
--fixed and the additional data will scroll vertically.</p>
--<p>The above two paragraphs pretty much describe a dynamically
--growable field's behavior. The way other parts of forms library
--behaves is described below:</p>
--<ol type="1">
--<li>
--<p>The field option O_AUTOSKIP will be ignored if the option
--O_STATIC is off and there is no maximum growth specified for the
--field. Currently, O_AUTOSKIP generates an automatic REQ_NEXT_FIELD
--form driver request when the user types in the last character
--position of a field. On a growable field with no maximum growth
--specified, there is no last character position. If a maximum growth
--is specified, the O_AUTOSKIP option will work as normal if the
--field has grown to its maximum size.</p>
--</li>
--<li>
--<p>The field justification will be ignored if the option O_STATIC
--is off. Currently, set_field_just can be used to JUSTIFY_LEFT,
--JUSTIFY_RIGHT, JUSTIFY_CENTER the contents of a one line field. A
--growable one line field will, by definition, grow and scroll
--horizontally and may contain more data than can be justified. The
--return from field_just will be unchanged.</p>
--</li>
--<li>
--<p>The overloaded form driver request REQ_NEW_LINE will operate the
--same way regardless of the O_NL_OVERLOAD form option if the field
--option O_STATIC is off and there is no maximum growth specified for
--the field. Currently, if the form option O_NL_OVERLOAD is on,
--REQ_NEW_LINE implicitly generates a REQ_NEXT_FIELD if called from
--the last line of a field. If a field can grow without bound, there
--is no last line, so REQ_NEW_LINE will never implicitly generate a
--REQ_NEXT_FIELD. If a maximum growth limit is specified and the
--O_NL_OVERLOAD form option is on, REQ_NEW_LINE will only implicitly
--generate REQ_NEXT_FIELD if the field has grown to its maximum size
--and the user is on the last line.</p>
--</li>
--<li>
--<p>The library call dup_field will work as usual; it will duplicate
--the field, including the current buffer size and contents of the
--field being duplicated. Any specified maximum growth will also be
--duplicated.</p>
--</li>
--<li>
--<p>The library call link_field will work as usual; it will
--duplicate all field attributes and share buffers with the field
--being linked. If the O_STATIC field option is subsequently changed
--by a field sharing buffers, how the system reacts to an attempt to
--enter more data into the field than the buffer will currently hold
--will depend on the setting of the option in the current field.</p>
--</li>
--<li>
--<p>The library call field_info will work as usual; the variable
--nrow will contain the value of the original call to new_field. The
--user should use dynamic_field_info, described above, to query the
--current size of the buffer.</p>
--</li>
--</ol>
--<p>Some of the above points make sense only after explaining form
--driver. We will be looking into that in next few sections.</p>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="FORMWINDOWS" id="FORMWINDOWS">18.4. Form
--Windows</a></h3>
--<p>The form windows concept is pretty much similar to menu windows.
--Every form is associated with a main window and a sub window. The
--form main window displays any title or border associated or
--whatever the user wishes. Then the sub window contains all the
--fields and displays them according to their position. This gives
--the flexibility of manipulating fancy form displaying very
--easily.</p>
--<p>Since this is pretty much similar to menu windows, I am
--providing an example with out much explanation. The functions are
--similar and they work the same way.</p>
--<div class="EXAMPLE"><a name="FFOWI" id="FFOWI"></a>
--<p><b>Example 28. Form Windows Example</b></p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000"><span class=
--"INLINEMEDIAOBJECT">#include &lt;form.h&gt;
-+ /* in this */</PRE
-+>
-+Though field_info work as usual, it is advisable to use this function to get the
-+proper attributes of a dynamically growable field.</P
-+><P
-+>Recall the library routine new_field; a new field created with height set to one
-+will be defined to be a one line field. A new field created with height greater
-+than one will be defined to be a multi line field. </P
-+><P
-+>A one line field with O_STATIC turned off (dynamically growable field) will
-+contain a single fixed row, but the number of columns can increase if the user
-+enters more data than the initial field will hold. The number of columns
-+displayed will remain fixed and the additional data will scroll horizontally. </P
-+><P
-+>A multi line field with O_STATIC turned off (dynamically growable field) will
-+contain a fixed number of columns, but the number of rows can increase if the
-+user enters more data than the initial field will hold. The number of rows
-+displayed will remain fixed and the additional data will scroll vertically.</P
-+><P
-+>The above two paragraphs pretty much describe a dynamically growable field's
-+behavior. The way other parts of forms library behaves is described below:</P
-+><P
-+></P
-+><OL
-+TYPE="1"
-+><LI
-+><P
-+>The field option O_AUTOSKIP will be ignored if the option O_STATIC is off and
-+there is no maximum growth specified for the field. Currently, O_AUTOSKIP
-+generates an automatic REQ_NEXT_FIELD form driver request when the user types in
-+the last character position of a field. On a growable field with no maximum
-+growth specified, there is no last character position. If a maximum growth is
-+specified, the O_AUTOSKIP option will work as normal if the field has grown to
-+its maximum size. </P
-+></LI
-+><LI
-+><P
-+>The field justification will be ignored if the option O_STATIC is off.
-+Currently, set_field_just can be used to JUSTIFY_LEFT, JUSTIFY_RIGHT,
-+JUSTIFY_CENTER the contents of a one line field. A growable one line field will,
-+by definition, grow and scroll horizontally and may contain more data than can
-+be justified. The return from field_just will be unchanged. </P
-+></LI
-+><LI
-+><P
-+>The overloaded form driver request REQ_NEW_LINE will operate the same way
-+regardless of the O_NL_OVERLOAD form option if the field option O_STATIC is off
-+and there is no maximum growth specified for the field. Currently, if the form
-+option O_NL_OVERLOAD is on, REQ_NEW_LINE implicitly generates a REQ_NEXT_FIELD
-+if called from the last line of a field. If a field can grow without bound,
-+there is no last line, so REQ_NEW_LINE will never implicitly generate a
-+REQ_NEXT_FIELD. If a maximum growth limit is specified and the O_NL_OVERLOAD
-+form option is on, REQ_NEW_LINE will only implicitly generate REQ_NEXT_FIELD if
-+the field has grown to its maximum size and the user is on the last line. </P
-+></LI
-+><LI
-+><P
-+>The library call dup_field will work as usual; it will duplicate the field,
-+including the current buffer size and contents of the field being duplicated.
-+Any specified maximum growth will also be duplicated. </P
-+></LI
-+><LI
-+><P
-+>The library call link_field will work as usual; it will duplicate all field
-+attributes and share buffers with the field being linked. If the O_STATIC field
-+option is subsequently changed by a field sharing buffers, how the system reacts
-+to an attempt to enter more data into the field than the buffer will currently
-+hold will depend on the setting of the option in the current field. </P
-+></LI
-+><LI
-+><P
-+>The library call field_info will work as usual; the variable nrow will contain
-+the value of the original call to new_field. The user should use
-+dynamic_field_info, described above, to query the current size of the buffer.</P
-+></LI
-+></OL
-+><P
-+>Some of the above points make sense only after explaining form driver. We will
-+be looking into that in next few sections.</P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="FORMWINDOWS"
-+>18.4. Form Windows</A
-+></H3
-+><P
-+>The form windows concept is pretty much similar to menu windows. Every form is
-+associated with a main window and a sub window. The form main window displays
-+any title or border associated or whatever the user wishes. Then the sub window
-+contains all the fields and displays them according to their position. This
-+gives the flexibility of manipulating fancy form displaying very easily. </P
-+><P
-+>Since this is pretty much similar to menu windows, I am providing an example
-+with out much explanation. The functions are similar and they work the same way.</P
-+><DIV
-+CLASS="EXAMPLE"
-+><A
-+NAME="FFOWI"
-+></A
-+><P
-+><B
-+>Example 28. Form Windows Example </B
-+></P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="INLINEMEDIAOBJECT"
-+>#include &#60;form.h&#62;
-
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color);
-
- int main()
- {
-- FIELD *field[3];
-- FORM *my_form;
-- WINDOW *my_form_win;
-- int ch, rows, cols;
--
-- /* Initialize curses */
-- initscr();
-- start_color();
-- cbreak();
-- noecho();
-- keypad(stdscr, TRUE);
--
-- /* Initialize few color pairs */
-- init_pair(1, COLOR_RED, COLOR_BLACK);
--
-- /* Initialize the fields */
-- field[0] = new_field(1, 10, 6, 1, 0, 0);
-- field[1] = new_field(1, 10, 8, 1, 0, 0);
-- field[2] = NULL;
--
-- /* Set field options */
-- set_field_back(field[0], A_UNDERLINE);
-- field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */
-- /* Field is filled up */
-- set_field_back(field[1], A_UNDERLINE);
-- field_opts_off(field[1], O_AUTOSKIP);
--
-- /* Create the form and post it */
-- my_form = new_form(field);
--
-- /* Calculate the area required for the form */
-- scale_form(my_form, &amp;rows, &amp;cols);
-+ FIELD *field[3];
-+ FORM *my_form;
-+ WINDOW *my_form_win;
-+ int ch, rows, cols;
-+
-+ /* Initialize curses */
-+ initscr();
-+ start_color();
-+ cbreak();
-+ noecho();
-+ keypad(stdscr, TRUE);
-+
-+ /* Initialize few color pairs */
-+ init_pair(1, COLOR_RED, COLOR_BLACK);
-+
-+ /* Initialize the fields */
-+ field[0] = new_field(1, 10, 6, 1, 0, 0);
-+ field[1] = new_field(1, 10, 8, 1, 0, 0);
-+ field[2] = NULL;
-+
-+ /* Set field options */
-+ set_field_back(field[0], A_UNDERLINE);
-+ field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */
-+ /* Field is filled up */
-+ set_field_back(field[1], A_UNDERLINE);
-+ field_opts_off(field[1], O_AUTOSKIP);
-+
-+ /* Create the form and post it */
-+ my_form = new_form(field);
-+
-+ /* Calculate the area required for the form */
-+ scale_form(my_form, &#38;rows, &#38;cols);
-
-- /* Create the window to be associated with the form */
-+ /* Create the window to be associated with the form */
- my_form_win = newwin(rows + 4, cols + 4, 4, 4);
- keypad(my_form_win, TRUE);
-
-- /* Set main window and sub window */
-+ /* Set main window and sub window */
- set_form_win(my_form, my_form_win);
- set_form_sub(my_form, derwin(my_form_win, rows, cols, 2, 2));
-
-- /* Print a border around the main window and print a title */
-+ /* Print a border around the main window and print a title */
- box(my_form_win, 0, 0);
-- print_in_middle(my_form_win, 1, 0, cols + 4, "My Form", COLOR_PAIR(1));
--
-- post_form(my_form);
-- wrefresh(my_form_win);
--
-- mvprintw(LINES - 2, 0, "Use UP, DOWN arrow keys to switch between fields");
-- refresh();
-+ print_in_middle(my_form_win, 1, 0, cols + 4, "My Form", COLOR_PAIR(1));
-+
-+ post_form(my_form);
-+ wrefresh(my_form_win);
-+
-+ mvprintw(LINES - 2, 0, "Use UP, DOWN arrow keys to switch between fields");
-+ refresh();
-+
-+ /* Loop through to get user requests */
-+ while((ch = wgetch(my_form_win)) != KEY_F(1))
-+ { switch(ch)
-+ { case KEY_DOWN:
-+ /* Go to next field */
-+ form_driver(my_form, REQ_NEXT_FIELD);
-+ /* Go to the end of the present buffer */
-+ /* Leaves nicely at the last character */
-+ form_driver(my_form, REQ_END_LINE);
-+ break;
-+ case KEY_UP:
-+ /* Go to previous field */
-+ form_driver(my_form, REQ_PREV_FIELD);
-+ form_driver(my_form, REQ_END_LINE);
-+ break;
-+ default:
-+ /* If this is a normal character, it gets */
-+ /* Printed */
-+ form_driver(my_form, ch);
-+ break;
-+ }
-+ }
-+
-+ /* Un post form and free the memory */
-+ unpost_form(my_form);
-+ free_form(my_form);
-+ free_field(field[0]);
-+ free_field(field[1]);
-
-- /* Loop through to get user requests */
-- while((ch = wgetch(my_form_win)) != KEY_F(1))
-- { switch(ch)
-- { case KEY_DOWN:
-- /* Go to next field */
-- form_driver(my_form, REQ_NEXT_FIELD);
-- /* Go to the end of the present buffer */
-- /* Leaves nicely at the last character */
-- form_driver(my_form, REQ_END_LINE);
-- break;
-- case KEY_UP:
-- /* Go to previous field */
-- form_driver(my_form, REQ_PREV_FIELD);
-- form_driver(my_form, REQ_END_LINE);
-- break;
-- default:
-- /* If this is a normal character, it gets */
-- /* Printed */
-- form_driver(my_form, ch);
-- break;
-- }
-- }
--
-- /* Un post form and free the memory */
-- unpost_form(my_form);
-- free_form(my_form);
-- free_field(field[0]);
-- free_field(field[1]);
--
-- endwin();
-- return 0;
-+ endwin();
-+ return 0;
- }
-
- void print_in_middle(WINDOW *win, int starty, int startx, int width, char *string, chtype color)
--{ int length, x, y;
-- float temp;
-+{ int length, x, y;
-+ float temp;
-
-- if(win == NULL)
-- win = stdscr;
-- getyx(win, y, x);
-- if(startx != 0)
-- x = startx;
-- if(starty != 0)
-- y = starty;
-- if(width == 0)
-- width = 80;
--
-- length = strlen(string);
-- temp = (width - length)/ 2;
-- x = startx + (int)temp;
-- wattron(win, color);
-- mvwprintw(win, y, x, "%s", string);
-- wattroff(win, color);
-- refresh();
--}</span></font>
--</pre></td>
--</tr>
--</table>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="FILEDVALIDATE" id="FILEDVALIDATE">18.5.
--Field Validation</a></h3>
--<p>By default, a field will accept any data input by the user. It
--is possible to attach validation to the field. Then any attempt by
--the user to leave the field, while it contains data that doesn't
--match the validation type will fail. Some validation types also
--have a character-validity check for each time a character is
--entered in the field.</p>
--<p>Validation can be attached to a field with the following
--function.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_field_type(FIELD *field, /* field to alter */
-+ if(win == NULL)
-+ win = stdscr;
-+ getyx(win, y, x);
-+ if(startx != 0)
-+ x = startx;
-+ if(starty != 0)
-+ y = starty;
-+ if(width == 0)
-+ width = 80;
-+
-+ length = strlen(string);
-+ temp = (width - length)/ 2;
-+ x = startx + (int)temp;
-+ wattron(win, color);
-+ mvwprintw(win, y, x, "%s", string);
-+ wattroff(win, color);
-+ refresh();
-+}</SPAN
-+></PRE
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="FILEDVALIDATE"
-+>18.5. Field Validation</A
-+></H3
-+><P
-+>By default, a field will accept any data input by the user. It is possible to
-+attach validation to the field. Then any attempt by the user to leave the field,
-+while it contains data that doesn't match the validation type will fail. Some
-+validation types also have a character-validity check for each time a character
-+is entered in the field.</P
-+><P
-+>Validation can be attached to a field with the following function.
-+<PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_type(FIELD *field, /* field to alter */
- FIELDTYPE *ftype, /* type to associate */
-- ...); /* additional arguments*/</font>
--</pre></td>
--</tr>
--</table>
-+ ...); /* additional arguments*/</PRE
-+>
- Once set, the validation type for a field can be queried with
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">FIELDTYPE *field_type(FIELD *field); /* field to query */</font>
--</pre></td>
--</tr>
--</table>
--<p>The form driver validates the data in a field only when data is
--entered by the end-user. Validation does not occur when</p>
--<ul>
--<li>
--<p>the application program changes the field value by calling
--set_field_buffer.</p>
--</li>
--<li>
--<p>linked field values are changed indirectly -- by changing the
--field to which they are linked</p>
--</li>
--</ul>
--<p>The following are the pre-defined validation types. You can also
--specify custom validation, though it's a bit tricky and
--cumbersome.</p>
--<h1 class="BRIDGEHEAD"><a name="AEN1069" id=
--"AEN1069"></a>TYPE_ALPHA</h1>
--<p>This field type accepts alphabetic data; no blanks, no digits,
--no special characters (this is checked at character-entry time). It
--is set up with:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_field_type(FIELD *field, /* field to alter */
-+<PRE
-+CLASS="PROGRAMLISTING"
-+>FIELDTYPE *field_type(FIELD *field); /* field to query */</PRE
-+></P
-+><P
-+>The form driver validates the data in a field only when data is entered by the
-+end-user. Validation does not occur when </P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+>the application program changes the field value by calling set_field_buffer. </P
-+></LI
-+><LI
-+><P
-+>linked field values are changed indirectly -- by changing the field to which
-+they are linked</P
-+></LI
-+></UL
-+><P
-+>The following are the pre-defined validation types. You can also specify custom
-+validation, though it's a bit tricky and cumbersome.</P
-+><H1
-+CLASS="BRIDGEHEAD"
-+><A
-+NAME="AEN1069"
-+></A
-+>TYPE_ALPHA</H1
-+><P
-+>This field type accepts alphabetic data; no blanks, no digits, no special
-+characters (this is checked at character-entry time). It is set up with: </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_type(FIELD *field, /* field to alter */
- TYPE_ALPHA, /* type to associate */
-- int width); /* maximum width of field */</font>
--</pre></td>
--</tr>
--</table>
--<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 width, the validation check will always
--fail. A minimum width of zero makes field completion optional.</p>
--<h1 class="BRIDGEHEAD"><a name="AEN1073" id=
--"AEN1073"></a>TYPE_ALNUM</h1>
--<p>This field type accepts alphabetic data and digits; no blanks,
--no special characters (this is checked at character-entry time). It
--is set up with:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_field_type(FIELD *field, /* field to alter */
-+ int width); /* maximum width of field */</PRE
-+><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 width, the validation check will always fail. A minimum width
-+of zero makes field completion optional. </P
-+><H1
-+CLASS="BRIDGEHEAD"
-+><A
-+NAME="AEN1073"
-+></A
-+>TYPE_ALNUM</H1
-+><P
-+>This field type accepts alphabetic data and digits; no blanks, no special
-+characters (this is checked at character-entry time). It is set up with: </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_type(FIELD *field, /* field to alter */
- TYPE_ALNUM, /* type to associate */
-- int width); /* maximum width of field */</font>
--</pre></td>
--</tr>
--</table>
--<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 check will
--always fail. A minimum width of zero makes field completion
--optional.</p>
--<h1 class="BRIDGEHEAD"><a name="AEN1077" id=
--"AEN1077"></a>TYPE_ENUM</h1>
--<p>This type allows you to restrict a field's values to be among a
--specified set of string values (for example, the two-letter postal
--codes for U.S. states). It is set up with:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_field_type(FIELD *field, /* field to alter */
-+ int width); /* maximum width of field */</PRE
-+><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 check will always fail. A
-+minimum width of zero makes field completion optional. </P
-+><H1
-+CLASS="BRIDGEHEAD"
-+><A
-+NAME="AEN1077"
-+></A
-+>TYPE_ENUM</H1
-+><P
-+>This type allows you to restrict a field's values to be among a specified
-+set of string values (for example, the two-letter postal codes for U.S.
-+states). It is set up with: </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_type(FIELD *field, /* field to alter */
- TYPE_ENUM, /* type to associate */
- char **valuelist; /* list of possible values */
- int checkcase; /* case-sensitive? */
-- int checkunique); /* must specify uniquely? */</font>
--</pre></td>
--</tr>
--</table>
--<p>The valuelist parameter must point at a NULL-terminated list of
--valid strings. The checkcase argument, if true, makes comparison
--with the string case-sensitive.</p>
--<p>When the user exits a TYPE_ENUM field, the validation procedure
--tries to complete the data in the buffer to a valid entry. If a
--complete choice string has been entered, it is of course valid. But
--it is also possible to enter a prefix of a valid string and have it
--completed for you.</p>
--<p>By default, if you enter such a prefix and it matches more than
--one value in the string list, the prefix will be completed to the
--first matching value. But the checkunique argument, if true,
--requires prefix matches to be unique in order to be valid.</p>
--<p>The REQ_NEXT_CHOICE and REQ_PREV_CHOICE input requests can be
--particularly useful with these fields.</p>
--<h1 class="BRIDGEHEAD"><a name="AEN1084" id=
--"AEN1084"></a>TYPE_INTEGER</h1>
--<p>This field type accepts an integer. It is set up as follows:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_field_type(FIELD *field, /* field to alter */
-+ int checkunique); /* must specify uniquely? */</PRE
-+><P
-+>The valuelist parameter must point at a NULL-terminated list of
-+valid strings. The checkcase argument, if true, makes comparison
-+with the string case-sensitive. </P
-+><P
-+>When the user exits a TYPE_ENUM field, the validation procedure tries to
-+complete the data in the buffer to a valid entry. If a complete choice string
-+has been entered, it is of course valid. But it is also possible to enter a
-+prefix of a valid string and have it completed for you. </P
-+><P
-+>By default, if you enter such a prefix and it matches more than one value
-+in the string list, the prefix will be completed to the first matching
-+value. But the checkunique argument, if true, requires prefix
-+matches to be unique in order to be valid. </P
-+><P
-+>The REQ_NEXT_CHOICE and REQ_PREV_CHOICE input requests can be particularly
-+useful with these fields. </P
-+><H1
-+CLASS="BRIDGEHEAD"
-+><A
-+NAME="AEN1084"
-+></A
-+>TYPE_INTEGER</H1
-+><P
-+>This field type accepts an integer. It is set up as follows: </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_type(FIELD *field, /* field to alter */
- TYPE_INTEGER, /* type to associate */
- int padding, /* # places to zero-pad to */
-- int vmin, int vmax); /* valid range */</font>
--</pre></td>
--</tr>
--</table>
--<p>Valid characters consist of an optional leading minus and
--digits. The range check is performed on exit. If the range maximum
--is less than or equal to the minimum, the range is ignored.</p>
--<p>If the value passes its range check, it is padded with as many
--leading zero digits as necessary to meet the padding argument.</p>
--<p>A TYPE_INTEGER value buffer can conveniently be interpreted with
--the C library function atoi(3).</p>
--<h1 class="BRIDGEHEAD"><a name="AEN1090" id=
--"AEN1090"></a>TYPE_NUMERIC</h1>
--<p>This field type accepts a decimal number. It is set up as
--follows:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_field_type(FIELD *field, /* field to alter */
-+ int vmin, int vmax); /* valid range */</PRE
-+><P
-+>Valid characters consist of an optional leading minus and digits.
-+The range check is performed on exit. If the range maximum is less
-+than or equal to the minimum, the range is ignored. </P
-+><P
-+>If the value passes its range check, it is padded with as many leading
-+zero digits as necessary to meet the padding argument. </P
-+><P
-+>A TYPE_INTEGER value buffer can conveniently be interpreted with the C library
-+function atoi(3).</P
-+><H1
-+CLASS="BRIDGEHEAD"
-+><A
-+NAME="AEN1090"
-+></A
-+>TYPE_NUMERIC</H1
-+><P
-+>This field type accepts a decimal number. It is set up as follows: </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_type(FIELD *field, /* field to alter */
- TYPE_NUMERIC, /* type to associate */
- int padding, /* # places of precision */
-- int vmin, int vmax); /* valid range */</font>
--</pre></td>
--</tr>
--</table>
--<p>Valid characters consist of an optional leading minus and
--digits. possibly including a decimal point. The range check is
--performed on exit. If the range maximum is less than or equal to
--the minimum, the range is ignored.</p>
--<p>If the value passes its range check, it is padded with as many
--trailing zero digits as necessary to meet the padding argument.</p>
--<p>A TYPE_NUMERIC value buffer can conveniently be interpreted with
--the C library function atof(3).</p>
--<h1 class="BRIDGEHEAD"><a name="AEN1096" id=
--"AEN1096"></a>TYPE_REGEXP</h1>
--<p>This field type accepts data matching a regular expression. It
--is set up as follows:</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_field_type(FIELD *field, /* field to alter */
-+ int vmin, int vmax); /* valid range */</PRE
-+><P
-+>Valid characters consist of an optional leading minus and digits. possibly
-+including a decimal point. The range check is performed on exit. If the
-+range maximum is less than or equal to the minimum, the range is
-+ignored. </P
-+><P
-+>If the value passes its range check, it is padded with as many trailing
-+zero digits as necessary to meet the padding argument. </P
-+><P
-+>A TYPE_NUMERIC value buffer can conveniently be interpreted with the C library
-+function atof(3).</P
-+><H1
-+CLASS="BRIDGEHEAD"
-+><A
-+NAME="AEN1096"
-+></A
-+>TYPE_REGEXP</H1
-+><P
-+>This field type accepts data matching a regular expression. It is set up
-+as follows: </P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_field_type(FIELD *field, /* field to alter */
- TYPE_REGEXP, /* type to associate */
-- char *regexp); /* expression to match */</font>
--</pre></td>
--</tr>
--</table>
--<p>The syntax for regular expressions is that of regcomp(3). The
--check for regular-expression match is performed on exit.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="FORMDRIVER" id="FORMDRIVER">18.6. Form
--Driver: The work horse of the forms system</a></h3>
--<p>As in the menu system, form_driver() plays a very important role
--in forms system. All types of requests to forms system should be
--funneled through form_driver().</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int form_driver(FORM *form, /* form on which to operate */
-- int request) /* form request code */</font>
--</pre></td>
--</tr>
--</table>
--<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 then passed to
--form_driver() to do the work.</p>
--<p>The requests roughly can be divided into following categories.
--Different requests and their usage is explained below:</p>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="PAGENAVREQ" id="PAGENAVREQ">18.6.1. Page
--Navigation Requests</a></h4>
--<p>These requests cause page-level moves through the form,
--triggering display of a new form screen. A form can be made of
--multiple pages. If you have a big form with lot of fields and
--logical sections, then you can divide the form into pages. The
--function set_new_page() to set a new page at the field
--specified.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">int set_new_page(FIELD *field,/* Field at which page break to be set or unset */
-- bool new_page_flag); /* should be TRUE to put a break */</font>
--</pre></td>
--</tr>
--</table>
--<p>The following requests allow you to move to different pages</p>
--<ul>
--<li>
--<p><em>REQ_NEXT_PAGE</em> Move to the next form page.</p>
--</li>
--<li>
--<p><em>REQ_PREV_PAGE</em> Move to the previous form page.</p>
--</li>
--<li>
--<p><em>REQ_FIRST_PAGE</em> Move to the first form page.</p>
--</li>
--<li>
--<p><em>REQ_LAST_PAGE</em> Move to the last form page.</p>
--</li>
--</ul>
--<p>These requests treat the list as cyclic; that is, REQ_NEXT_PAGE
--from the last page goes to the first, and REQ_PREV_PAGE from the
--first page goes to the last.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="INTERFIELDNAVREQ" id=
--"INTERFIELDNAVREQ">18.6.2. Inter-Field Navigation Requests</a></h4>
--<p>These requests handle navigation between fields on the same
--page.</p>
--<ul>
--<li>
--<p><em>REQ_NEXT_FIELD</em> Move to next field.</p>
--</li>
--<li>
--<p><em>REQ_PREV_FIELD</em> Move to previous field.</p>
--</li>
--<li>
--<p><em>REQ_FIRST_FIELD</em> Move to the first field.</p>
--</li>
--<li>
--<p><em>REQ_LAST_FIELD</em> Move to the last field.</p>
--</li>
--<li>
--<p><em>REQ_SNEXT_FIELD</em> Move to sorted next field.</p>
--</li>
--<li>
--<p><em>REQ_SPREV_FIELD</em> Move to sorted previous field.</p>
--</li>
--<li>
--<p><em>REQ_SFIRST_FIELD</em> Move to the sorted first field.</p>
--</li>
--<li>
--<p><em>REQ_SLAST_FIELD</em> Move to the sorted last field.</p>
--</li>
--<li>
--<p><em>REQ_LEFT_FIELD</em> Move left to field.</p>
--</li>
--<li>
--<p><em>REQ_RIGHT_FIELD</em> Move right to field.</p>
--</li>
--<li>
--<p><em>REQ_UP_FIELD</em> Move up to field.</p>
--</li>
--<li>
--<p><em>REQ_DOWN_FIELD</em> Move down to field.</p>
--</li>
--</ul>
--<p>These requests treat the list of fields on a page as cyclic;
--that is, REQ_NEXT_FIELD from the last field goes to the first, and
--REQ_PREV_FIELD from the first field goes to the last. The order of
--the fields for these (and the REQ_FIRST_FIELD and REQ_LAST_FIELD
--requests) is simply the order of the field pointers in the form
--array (as set up by new_form() or set_form_fields()</p>
--<p>It is also possible to traverse the fields as if they had been
--sorted in screen-position order, so the sequence goes left-to-right
--and top-to-bottom. To do this, use the second group of four
--sorted-movement requests.</p>
--<p>Finally, it is possible to move between fields using visual
--directions up, down, right, and left. To accomplish this, use the
--third group of four requests. Note, however, that the position of a
--form for purposes of these requests is its upper-left corner.</p>
--<p>For example, suppose you have a multi-line field B, and two
--single-line fields A and C on the same line with B, with A to the
--left of B and C to the right of B. A REQ_MOVE_RIGHT from A will go
--to B only if A, B, and C all share the same first line; otherwise
--it will skip over B to C.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="INTRAFIELDNAVREQ" id=
--"INTRAFIELDNAVREQ">18.6.3. Intra-Field Navigation Requests</a></h4>
--<p>These requests drive movement of the edit cursor within the
--currently selected field.</p>
--<ul>
--<li>
--<p><em>REQ_NEXT_CHAR</em> Move to next character.</p>
--</li>
--<li>
--<p><em>REQ_PREV_CHAR</em> Move to previous character.</p>
--</li>
--<li>
--<p><em>REQ_NEXT_LINE</em> Move to next line.</p>
--</li>
--<li>
--<p><em>REQ_PREV_LINE</em> Move to previous line.</p>
--</li>
--<li>
--<p><em>REQ_NEXT_WORD</em> Move to next word.</p>
--</li>
--<li>
--<p><em>REQ_PREV_WORD</em> Move to previous word.</p>
--</li>
--<li>
--<p><em>REQ_BEG_FIELD</em> Move to beginning of field.</p>
--</li>
--<li>
--<p><em>REQ_END_FIELD</em> Move to end of field.</p>
--</li>
--<li>
--<p><em>REQ_BEG_LINE</em> Move to beginning of line.</p>
--</li>
--<li>
--<p><em>REQ_END_LINE</em> Move to end of line.</p>
--</li>
--<li>
--<p><em>REQ_LEFT_CHAR</em> Move left in field.</p>
--</li>
--<li>
--<p><em>REQ_RIGHT_CHAR</em> Move right in field.</p>
--</li>
--<li>
--<p><em>REQ_UP_CHAR</em> Move up in field.</p>
--</li>
--<li>
--<p><em>REQ_DOWN_CHAR</em> Move down in field.</p>
--</li>
--</ul>
--<p>Each word is separated from the previous and next characters by
--whitespace. The commands to move to beginning and end of line or
--field look for the first or last non-pad character in their
--ranges.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="SCROLLREQ" id="SCROLLREQ">18.6.4.
--Scrolling Requests</a></h4>
--<p>Fields that are dynamic and have grown and fields explicitly
--created with offscreen rows are scrollable. One-line fields scroll
--horizontally; multi-line fields scroll vertically. Most scrolling
--is triggered by editing and intra-field movement (the library
--scrolls the field to keep the cursor visible). It is possible to
--explicitly request scrolling with the following requests:</p>
--<ul>
--<li>
--<p><em>REQ_SCR_FLINE</em> Scroll vertically forward a line.</p>
--</li>
--<li>
--<p><em>REQ_SCR_BLINE</em> Scroll vertically backward a line.</p>
--</li>
--<li>
--<p><em>REQ_SCR_FPAGE</em> Scroll vertically forward a page.</p>
--</li>
--<li>
--<p><em>REQ_SCR_BPAGE</em> Scroll vertically backward a page.</p>
--</li>
--<li>
--<p><em>REQ_SCR_FHPAGE</em> Scroll vertically forward half a
--page.</p>
--</li>
--<li>
--<p><em>REQ_SCR_BHPAGE</em> Scroll vertically backward half a
--page.</p>
--</li>
--<li>
--<p><em>REQ_SCR_FCHAR</em> Scroll horizontally forward a
--character.</p>
--</li>
--<li>
--<p><em>REQ_SCR_BCHAR</em> Scroll horizontally backward a
--character.</p>
--</li>
--<li>
--<p><em>REQ_SCR_HFLINE</em> Scroll horizontally one field width
--forward.</p>
--</li>
--<li>
--<p><em>REQ_SCR_HBLINE</em> Scroll horizontally one field width
--backward.</p>
--</li>
--<li>
--<p><em>REQ_SCR_HFHALF</em> Scroll horizontally one half field width
--forward.</p>
--</li>
--<li>
--<p><em>REQ_SCR_HBHALF</em> Scroll horizontally one half field width
--backward.</p>
--</li>
--</ul>
--<p>For scrolling purposes, a page of a field is the height of its
--visible part.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="EDITREQ" id="EDITREQ">18.6.5. Editing
--Requests</a></h4>
--<p>When you pass the forms driver an ASCII character, it is treated
--as a request to add the character to the field's data buffer.
--Whether this is an insertion or a replacement depends on the
--field's edit mode (insertion is the default.</p>
--<p>The following requests support editing the field and changing
--the edit mode:</p>
--<ul>
--<li>
--<p><em>REQ_INS_MODE</em> Set insertion mode.</p>
--</li>
--<li>
--<p><em>REQ_OVL_MODE</em> Set overlay mode.</p>
--</li>
--<li>
--<p><em>REQ_NEW_LINE</em> New line request (see below for
--explanation).</p>
--</li>
--<li>
--<p><em>REQ_INS_CHAR</em> Insert space at character location.</p>
--</li>
--<li>
--<p><em>REQ_INS_LINE</em> Insert blank line at character
--location.</p>
--</li>
--<li>
--<p><em>REQ_DEL_CHAR</em> Delete character at cursor.</p>
--</li>
--<li>
--<p><em>REQ_DEL_PREV</em> Delete previous word at cursor.</p>
--</li>
--<li>
--<p><em>REQ_DEL_LINE</em> Delete line at cursor.</p>
--</li>
--<li>
--<p><em>REQ_DEL_WORD</em> Delete word at cursor.</p>
--</li>
--<li>
--<p><em>REQ_CLR_EOL</em> Clear to end of line.</p>
--</li>
--<li>
--<p><em>REQ_CLR_EOF</em> Clear to end of field.</p>
--</li>
--<li>
--<p><em>REQ_CLR_FIELD</em> Clear entire field.</p>
--</li>
--</ul>
--<p>The behavior of the REQ_NEW_LINE and REQ_DEL_PREV requests is
--complicated and partly controlled by a pair of forms options. The
--special cases are triggered when the cursor is at the beginning of
--a field, or on the last line of the field.</p>
--<p>First, we consider REQ_NEW_LINE:</p>
--<p>The normal behavior of REQ_NEW_LINE in insert mode is to break
--the current line at the position of the edit cursor, inserting the
--portion of the current line after the cursor as a new line
--following the current and moving the cursor to the beginning of
--that new line (you may think of this as inserting a newline in the
--field buffer).</p>
--<p>The normal behavior of REQ_NEW_LINE in overlay mode is to clear
--the current line from the position of the edit cursor to end of
--line. The cursor is then moved to the beginning of the next
--line.</p>
--<p>However, REQ_NEW_LINE at the beginning of a field, or on the
--last line of a field, instead does a REQ_NEXT_FIELD. O_NL_OVERLOAD
--option is off, this special action is disabled.</p>
--<p>Now, let us consider REQ_DEL_PREV:</p>
--<p>The normal behavior of REQ_DEL_PREV is to delete the previous
--character. If insert mode is on, and the cursor is at the start of
--a line, and the text on that line will fit on the previous one, it
--instead appends the contents of the current line to the previous
--one and deletes the current line (you may think of this as deleting
--a newline from the field buffer).</p>
--<p>However, REQ_DEL_PREV at the beginning of a field is instead
--treated as a REQ_PREV_FIELD.</p>
--<p>If the O_BS_OVERLOAD option is off, this special action is
--disabled and the forms driver just returns E_REQUEST_DENIED.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="ORDERREQ" id="ORDERREQ">18.6.6. Order
--Requests</a></h4>
--<p>If the type of your field is ordered, and has associated
--functions for getting the next and previous values of the type from
--a given value, there are requests that can fetch that value into
--the field buffer:</p>
--<ul>
--<li>
--<p><em>REQ_NEXT_CHOICE</em> Place the successor value of the
--current value in the buffer.</p>
--</li>
--<li>
--<p><em>REQ_PREV_CHOICE</em> Place the predecessor value of the
--current value in the buffer.</p>
--</li>
--</ul>
--<p>Of the built-in field types, only TYPE_ENUM has built-in
--successor and predecessor functions. When you define a field type
--of your own (see Custom Validation Types), you can associate our
--own ordering functions.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="APPLICCOMMANDS" id=
--"APPLICCOMMANDS">18.6.7. Application Commands</a></h4>
--<p>Form requests are represented as integers above the curses value
--greater than KEY_MAX and less than or equal to the constant
--MAX_COMMAND. A value within this range gets ignored by
--form_driver(). So this can be used for any purpose by the
--application. It can be treated as an application specific action
--and take corresponding action.</p>
--</div>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="TOOLS" id="TOOLS">19. Tools and Widget
--Libraries</a></h2>
--<p>Now that you have seen the capabilities of ncurses and its
--sister libraries, you are rolling your sleeves up and gearing for a
--project that heavily manipulates screen. But wait.. It can be
--pretty difficult to write and maintain complex GUI widgets in plain
--ncurses or even with the additional libraries. There are some
--ready-to-use tools and widget libraries that can be used instead of
--writing your own widgets. You can use some of them, get ideas from
--the code, or even extend them.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="CDK" id="CDK">19.1. CDK (Curses
--Development Kit)</a></h3>
--<p>In the author's words</p>
--<p><em>CDK stands for 'Curses Development Kit' and it currently
--contains 21 ready to use widgets which facilitate the speedy
--development of full screen curses programs.</em></p>
--<p>The kit provides some useful widgets, which can be used in your
--programs directly. It's 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="http://invisible-island.net/cdk/" target=
--"_top">http://invisible-island.net/cdk/</a> . Follow the
--instructions in README file to install it.</p>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="WIDGETLIST" id="WIDGETLIST">19.1.1.
--Widget List</a></h4>
--<p>The following is the list of widgets provided with cdk and their
--description.</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color="#000000">Widget Type Quick Description
-+ char *regexp); /* expression to match */</PRE
-+><P
-+>The syntax for regular expressions is that of regcomp(3).
-+The check for regular-expression match is performed on exit.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="FORMDRIVER"
-+>18.6. Form Driver: The work horse of the forms system</A
-+></H3
-+><P
-+>As in the menu system, form_driver() plays a very important role in forms
-+system. All types of requests to forms system should be funneled through
-+form_driver().</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int form_driver(FORM *form, /* form on which to operate */
-+ int request) /* form request code */</PRE
-+><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 then passed to form_driver() to do the work.</P
-+><P
-+>The requests roughly can be divided into following categories. Different
-+requests and their usage is explained below:</P
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="PAGENAVREQ"
-+>18.6.1. Page Navigation Requests</A
-+></H4
-+><P
-+>These requests cause page-level moves through the form, triggering display of a
-+new form screen. A form can be made of multiple pages. If you have a big form
-+with lot of fields and logical sections, then you can divide the form into
-+pages. The function set_new_page() to set a new page at the field specified.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>int set_new_page(FIELD *field,/* Field at which page break to be set or unset */
-+ bool new_page_flag); /* should be TRUE to put a break */</PRE
-+><P
-+>The following requests allow you to move to different pages</P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_NEXT_PAGE</I
-+></SPAN
-+> Move to the next form page.</P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_PREV_PAGE</I
-+></SPAN
-+> Move to the previous
-+form page.</P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_FIRST_PAGE</I
-+></SPAN
-+> Move to the first form page.</P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_LAST_PAGE</I
-+></SPAN
-+> Move to the last form page. </P
-+></LI
-+></UL
-+><P
-+>These requests treat the list as cyclic; that is, REQ_NEXT_PAGE from the
-+last page goes to the first, and REQ_PREV_PAGE from the first page goes to
-+the last.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="INTERFIELDNAVREQ"
-+>18.6.2. Inter-Field Navigation Requests</A
-+></H4
-+><P
-+>These requests handle navigation between fields on the same page.</P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_NEXT_FIELD</I
-+></SPAN
-+>
-+ Move to next field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_PREV_FIELD</I
-+></SPAN
-+>
-+ Move to previous field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_FIRST_FIELD</I
-+></SPAN
-+>
-+ Move to the first field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_LAST_FIELD</I
-+></SPAN
-+>
-+ Move to the last field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SNEXT_FIELD</I
-+></SPAN
-+>
-+ Move to sorted next field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SPREV_FIELD</I
-+></SPAN
-+>
-+ Move to sorted previous field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SFIRST_FIELD</I
-+></SPAN
-+>
-+ Move to the sorted first field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SLAST_FIELD</I
-+></SPAN
-+>
-+ Move to the sorted last field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_LEFT_FIELD</I
-+></SPAN
-+>
-+ Move left to field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_RIGHT_FIELD</I
-+></SPAN
-+>
-+ Move right to field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_UP_FIELD</I
-+></SPAN
-+>
-+ Move up to field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_DOWN_FIELD</I
-+></SPAN
-+>
-+ Move down to field. </P
-+></LI
-+></UL
-+><P
-+>These requests treat the list of fields on a page as cyclic; that is,
-+REQ_NEXT_FIELD from the last field goes to the first, and REQ_PREV_FIELD
-+from the first field goes to the last. The order of the fields for these
-+(and the REQ_FIRST_FIELD and REQ_LAST_FIELD requests) is simply the order of
-+the field pointers in the form array (as set up by new_form() or
-+set_form_fields()</P
-+><P
-+>It is also possible to traverse the fields as if they had been sorted in
-+screen-position order, so the sequence goes left-to-right and top-to-bottom.
-+To do this, use the second group of four sorted-movement requests.</P
-+><P
-+>Finally, it is possible to move between fields using visual directions up,
-+down, right, and left. To accomplish this, use the third group of four
-+requests. Note, however, that the position of a form for purposes of these
-+requests is its upper-left corner.</P
-+><P
-+>For example, suppose you have a multi-line field B, and two single-line
-+fields A and C on the same line with B, with A to the left of B and C to the
-+right of B. A REQ_MOVE_RIGHT from A will go to B only if A, B, and C all
-+share the same first line; otherwise it will skip over B to C.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="INTRAFIELDNAVREQ"
-+>18.6.3. Intra-Field Navigation Requests</A
-+></H4
-+><P
-+>These requests drive movement of the edit cursor within the currently
-+selected field.</P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_NEXT_CHAR</I
-+></SPAN
-+>
-+ Move to next character. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_PREV_CHAR</I
-+></SPAN
-+>
-+ Move to previous character. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_NEXT_LINE</I
-+></SPAN
-+>
-+ Move to next line. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_PREV_LINE</I
-+></SPAN
-+>
-+ Move to previous line. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_NEXT_WORD</I
-+></SPAN
-+>
-+ Move to next word. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_PREV_WORD</I
-+></SPAN
-+>
-+ Move to previous word. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_BEG_FIELD</I
-+></SPAN
-+>
-+ Move to beginning of field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_END_FIELD</I
-+></SPAN
-+>
-+ Move to end of field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_BEG_LINE</I
-+></SPAN
-+>
-+ Move to beginning of line. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_END_LINE</I
-+></SPAN
-+>
-+ Move to end of line. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_LEFT_CHAR</I
-+></SPAN
-+>
-+ Move left in field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_RIGHT_CHAR</I
-+></SPAN
-+>
-+ Move right in field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_UP_CHAR</I
-+></SPAN
-+>
-+ Move up in field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_DOWN_CHAR</I
-+></SPAN
-+>
-+ Move down in field. </P
-+></LI
-+></UL
-+><P
-+>Each word is separated from the previous and next characters by whitespace.
-+The commands to move to beginning and end of line or field look for the
-+first or last non-pad character in their ranges.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="SCROLLREQ"
-+>18.6.4. Scrolling Requests</A
-+></H4
-+><P
-+>Fields that are dynamic and have grown and fields explicitly created with
-+offscreen rows are scrollable. One-line fields scroll horizontally;
-+multi-line fields scroll vertically. Most scrolling is triggered by editing
-+and intra-field movement (the library scrolls the field to keep the cursor
-+visible). It is possible to explicitly request scrolling with the following
-+requests:</P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_FLINE</I
-+></SPAN
-+>
-+ Scroll vertically forward a line. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_BLINE</I
-+></SPAN
-+>
-+ Scroll vertically backward a line. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_FPAGE</I
-+></SPAN
-+>
-+ Scroll vertically forward a page. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_BPAGE</I
-+></SPAN
-+>
-+ Scroll vertically backward a page. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_FHPAGE</I
-+></SPAN
-+>
-+ Scroll vertically forward half a page. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_BHPAGE</I
-+></SPAN
-+>
-+ Scroll vertically backward half a page. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_FCHAR</I
-+></SPAN
-+>
-+ Scroll horizontally forward a character. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_BCHAR</I
-+></SPAN
-+>
-+ Scroll horizontally backward a character. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_HFLINE</I
-+></SPAN
-+>
-+ Scroll horizontally one field width forward. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_HBLINE</I
-+></SPAN
-+>
-+ Scroll horizontally one field width backward. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_HFHALF</I
-+></SPAN
-+>
-+ Scroll horizontally one half field width forward. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_SCR_HBHALF</I
-+></SPAN
-+>
-+ Scroll horizontally one half field width backward. </P
-+></LI
-+></UL
-+><P
-+>For scrolling purposes, a page of a field is the height of its visible part.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="EDITREQ"
-+>18.6.5. Editing Requests</A
-+></H4
-+><P
-+>When you pass the forms driver an ASCII character, it is treated as a
-+request to add the character to the field's data buffer. Whether this is an
-+insertion or a replacement depends on the field's edit mode (insertion is
-+the default.</P
-+><P
-+>The following requests support editing the field and changing the edit mode:</P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_INS_MODE</I
-+></SPAN
-+>
-+ Set insertion mode. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_OVL_MODE</I
-+></SPAN
-+>
-+ Set overlay mode. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_NEW_LINE</I
-+></SPAN
-+>
-+ New line request (see below for explanation). </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_INS_CHAR</I
-+></SPAN
-+>
-+ Insert space at character location. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_INS_LINE</I
-+></SPAN
-+>
-+ Insert blank line at character location. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_DEL_CHAR</I
-+></SPAN
-+>
-+ Delete character at cursor. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_DEL_PREV</I
-+></SPAN
-+>
-+ Delete previous word at cursor. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_DEL_LINE</I
-+></SPAN
-+>
-+ Delete line at cursor. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_DEL_WORD</I
-+></SPAN
-+>
-+ Delete word at cursor. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_CLR_EOL</I
-+></SPAN
-+>
-+ Clear to end of line. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_CLR_EOF</I
-+></SPAN
-+>
-+ Clear to end of field. </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_CLR_FIELD</I
-+></SPAN
-+>
-+ Clear entire field. </P
-+></LI
-+></UL
-+><P
-+>The behavior of the REQ_NEW_LINE and REQ_DEL_PREV requests is complicated
-+and partly controlled by a pair of forms options. The special cases are
-+triggered when the cursor is at the beginning of a field, or on the last
-+line of the field.</P
-+><P
-+>First, we consider REQ_NEW_LINE:</P
-+><P
-+>The normal behavior of REQ_NEW_LINE in insert mode is to break the current
-+line at the position of the edit cursor, inserting the portion of the
-+current line after the cursor as a new line following the current and moving
-+the cursor to the beginning of that new line (you may think of this as
-+inserting a newline in the field buffer).</P
-+><P
-+>The normal behavior of REQ_NEW_LINE in overlay mode is to clear the current
-+line from the position of the edit cursor to end of line. The cursor is then
-+moved to the beginning of the next line.</P
-+><P
-+>However, REQ_NEW_LINE at the beginning of a field, or on the last line of a
-+field, instead does a REQ_NEXT_FIELD. O_NL_OVERLOAD option is off, this
-+special action is disabled.</P
-+><P
-+>Now, let us consider REQ_DEL_PREV:</P
-+><P
-+>The normal behavior of REQ_DEL_PREV is to delete the previous character. If
-+insert mode is on, and the cursor is at the start of a line, and the text on
-+that line will fit on the previous one, it instead appends the contents of
-+the current line to the previous one and deletes the current line (you may
-+think of this as deleting a newline from the field buffer).</P
-+><P
-+>However, REQ_DEL_PREV at the beginning of a field is instead treated as a
-+REQ_PREV_FIELD.</P
-+><P
-+>If the O_BS_OVERLOAD option is off, this special action is disabled and the
-+forms driver just returns E_REQUEST_DENIED.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="ORDERREQ"
-+>18.6.6. Order Requests</A
-+></H4
-+><P
-+>If the type of your field is ordered, and has associated functions for
-+getting the next and previous values of the type from a given value, there
-+are requests that can fetch that value into the field buffer:</P
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_NEXT_CHOICE</I
-+></SPAN
-+>
-+ Place the successor value of the current value in the buffer.
-+ </P
-+></LI
-+><LI
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>REQ_PREV_CHOICE</I
-+></SPAN
-+>
-+ Place the predecessor value of the current value in the buffer.
-+ </P
-+></LI
-+></UL
-+><P
-+>Of the built-in field types, only TYPE_ENUM has built-in successor and
-+predecessor functions. When you define a field type of your own (see Custom
-+Validation Types), you can associate our own ordering functions.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="APPLICCOMMANDS"
-+>18.6.7. Application Commands</A
-+></H4
-+><P
-+>Form requests are represented as integers above the curses value greater than
-+KEY_MAX and less than or equal to the constant MAX_COMMAND. A value within this
-+range gets ignored by form_driver(). So this can be used for any purpose by the
-+application. It can be treated as an application specific action and take
-+corresponding action.</P
-+></DIV
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="TOOLS"
-+>19. Tools and Widget Libraries</A
-+></H2
-+><P
-+>
-+Now that you have seen the capabilities of ncurses and its sister libraries, you
-+are rolling your sleeves up and gearing for a project that heavily manipulates
-+screen. But wait.. It can be pretty difficult to write and maintain complex GUI
-+widgets in plain ncurses or even with the additional libraries. There are some
-+ready-to-use tools and widget libraries that can be used instead of writing your
-+own widgets. You can use some of them, get ideas from the code, or even extend
-+them.</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="CDK"
-+>19.1. CDK (Curses Development Kit)</A
-+></H3
-+><P
-+>In the author's words </P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>
-+CDK stands for 'Curses Development Kit' and it currently contains 21 ready
-+to use widgets which facilitate the speedy 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 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="http://invisible-island.net/cdk/"
-+TARGET="_top"
-+>http://invisible-island.net/cdk/</A
-+>
-+. Follow the instructions in
-+README file to install it.</P
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="WIDGETLIST"
-+>19.1.1. Widget List</A
-+></H4
-+><P
-+>The following is the list of widgets provided with cdk and their description.</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>Widget Type Quick Description
- ===========================================================================
- Alphalist Allows a user to select from a list of words, with
- the ability to narrow the search list by typing in a
-@@ -6199,215 +8368,346 @@
- dates and phone numbers.
- Viewer This is a file/information viewer. Very useful
- when you need to display loads of information.
--===========================================================================</font>
--</pre></td>
--</tr>
--</table>
--<p>A few of the widgets are modified by Thomas Dickey in recent
--versions.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="CDKATTRACT" id="CDKATTRACT">19.1.2. Some
--Attractive Features</a></h4>
--<p>Apart from making our life easier with readily usable widgets,
--cdk solves one frustrating problem with printing multi colored
--strings, justified strings elegantly. Special formatting tags can
--be embedded in the strings which are passed to CDK functions. For
--Example</p>
--<p>If the string</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000">"&lt;/B/1&gt;This line should have a yellow foreground and a blue
--background.&lt;!1&gt;"</font>
--</pre></td>
--</tr>
--</table>
--<p>given as a parameter to newCDKLabel(), it prints the line with
--yellow foreground and blue background. There are other tags
--available for justifying string, embedding special drawing
--characters etc.. Please refer to the man page cdk_display(3X) for
--details. The man page explains the usage with nice examples.</p>
--</div>
--<div class="SECT3">
--<hr>
--<h4 class="SECT3"><a name="CDKCONCLUSION" id=
--"CDKCONCLUSION">19.1.3. Conclusion</a></h4>
--<p>All in all, CDK is a well-written package of widgets, which if
--used properly can form a strong frame work for developing complex
--GUI.</p>
--</div>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="DIALOG" id="DIALOG">19.2. The
--dialog</a></h3>
--<p>Long long ago, in September 1994, when few people knew linux,
--Jeff Tranter wrote an <a href=
--"http://www2.linuxjournal.com/lj-issues/issue5/2807.html" target=
--"_top">article</a> on dialog in Linux Journal. He starts the
--article with these words..</p>
--<p><em>Linux is based on the Unix operating system, but also
--features a number of unique and useful kernel features and
--application programs that often go beyond what is available under
--Unix. One little-known gem is "dialog", a utility for creating
--professional-looking dialog boxes from within shell scripts. This
--article presents a tutorial introduction to the dialog utility, and
--shows examples of how and where it can be used</em></p>
--<p>As he explains, dialog is a real gem in making
--professional-looking dialog boxes with ease. It creates a variety
--of dialog boxes, menus, check lists etc.. It is usually installed
--by default. If not, you can download it from <a href=
--"http://invisible-island.net/dialog/" target="_top">Thomas
--Dickey</a>'s site.</p>
--<p>The above-mentioned article gives a very good overview of its
--uses and capabilites. The man page has more details. It can be used
--in variety of situations. One good example is building of linux
--kernel in text mode. Linux kernel uses a modified version of dialog
--tailored for its needs.</p>
--<p>dialog was initially designed to be used with shell scripts. If
--you want to use its functionality in a c program, then you can use
--libdialog. The documentation regarding this is sparse. Definitive
--reference is the dialog.h header file which comes with the library.
--You may need to hack here and there to get the required output. The
--source is easily customizable. I have used it on a number of
--occasions by modifying the code.</p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="PERLCURSES" id="PERLCURSES">19.3. Perl
--Curses Modules CURSES::FORM and CURSES::WIDGETS</a></h3>
--<p>The perl module Curses, Curses::Form and Curses::Widgets give
--access to curses from perl. If you have curses and basic perl is
--installed, you can get these modules from <a href=
--"http://www.cpan.org/modules/01modules.index.html" target=
--"_top">CPAN All Modules page</a>. Get the three zipped modules in
--the Curses category. Once installed you can use these modules from
--perl scripts like any other module. For more information on perl
--modules see perlmod man page. The above modules come with good
--documentation and they have some demo scripts to test the
--functionality. Though the widgets provided are very rudimentary,
--these modules provide good access to curses library from perl.</p>
--<p>Some of my code examples are converted to perl by Anuradha
--Ratnaweera and they are available in the <var class=
--"LITERAL">perl</var> directory.</p>
--<p>For more information see man pages Curses(3) , Curses::Form(3)
--and Curses::Widgets(3). These pages are installed only when the
--above modules are acquired and installed.</p>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="JUSTFORFUN" id="JUSTFORFUN">20. Just For
--Fun !!!</a></h2>
--<p>This section contains few programs written by me just for fun.
--They don't signify a better programming practice or the best way of
--using ncurses. They are provided here so as to allow beginners to
--get ideas and add more programs to this section. If you have
--written a couple of nice, simple programs in curses and want them
--to included here, contact <a href="mailto:ppadala@gmail.com"
--target="_top">me</a>.</p>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="GAMEOFLIFE" id="GAMEOFLIFE">20.1. The
--Game of Life</a></h3>
--<p>Game of life is a wonder of math. In <a href=
--"http://www.math.com/students/wonders/life/life.html" target=
--"_top">Paul Callahan</a>'s words</p>
--<table border="0" bgcolor="#E0E0E0" width="100%">
--<tr>
--<td>
--<pre class="PROGRAMLISTING">
--<font color=
--"#000000"><em>The Game of Life (or simply Life) is not a game in the conventional sense. There
-+===========================================================================</PRE
-+><P
-+>A few of the widgets are modified by Thomas Dickey in recent versions.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="CDKATTRACT"
-+>19.1.2. Some Attractive Features</A
-+></H4
-+><P
-+>Apart from making our life easier with readily usable widgets, cdk solves one
-+frustrating problem with printing multi colored strings, justified strings
-+elegantly. Special formatting tags can be embedded in the strings which are
-+passed to CDK functions. For Example</P
-+><P
-+>If the string</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+>"&lt;/B/1&gt;This line should have a yellow foreground and a blue
-+background.&lt;!1&gt;"</PRE
-+><P
-+>given as a parameter to newCDKLabel(), it prints the line with yellow foreground
-+and blue background. There are other tags available for justifying string,
-+embedding special drawing characters etc.. Please refer to the man page
-+cdk_display(3X) for details. The man page explains the usage with nice examples.</P
-+></DIV
-+><DIV
-+CLASS="SECT3"
-+><HR><H4
-+CLASS="SECT3"
-+><A
-+NAME="CDKCONCLUSION"
-+>19.1.3. Conclusion</A
-+></H4
-+><P
-+>All in all, CDK is a well-written package of widgets, which if used properly can
-+form a strong frame work for developing complex GUI.</P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="DIALOG"
-+>19.2. The dialog</A
-+></H3
-+><P
-+>Long long ago, in September 1994, when few people knew linux, Jeff Tranter wrote
-+an <A
-+HREF="http://www2.linuxjournal.com/lj-issues/issue5/2807.html"
-+TARGET="_top"
-+>article</A
-+> on dialog in Linux Journal. He starts the article with these words..</P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>Linux is based on the Unix operating system, but also features a number of
-+unique and useful kernel features and application programs that often go beyond
-+what is available under Unix. One little-known gem is "dialog", a utility for
-+creating professional-looking dialog boxes from within shell scripts. This
-+article presents a tutorial introduction to the dialog utility, and shows
-+examples of how and where it can be used</I
-+></SPAN
-+></P
-+><P
-+>
-+As he explains, dialog is a real gem in making professional-looking dialog boxes
-+with ease. It creates a variety of dialog boxes, menus, check lists etc.. It is
-+usually installed by default. If not, you can download it from <A
-+HREF="http://invisible-island.net/dialog/"
-+TARGET="_top"
-+>Thomas Dickey</A
-+>'s site. </P
-+><P
-+>The above-mentioned article gives a very good overview of its uses and
-+capabilites. The man page has more details. It can be used in variety of
-+situations. One good example is building of linux kernel in text mode. Linux
-+kernel uses a modified version of dialog tailored for its needs. </P
-+><P
-+>dialog was initially designed to be used with shell scripts. If you want to use
-+its functionality in a c program, then you can use libdialog. The documentation
-+regarding this is sparse. Definitive reference is the dialog.h header file which
-+comes with the library. You may need to hack here and there to get the required
-+output. The source is easily customizable. I have used it on a number of
-+occasions by modifying the code.</P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="PERLCURSES"
-+>19.3. Perl Curses Modules CURSES::FORM and CURSES::WIDGETS</A
-+></H3
-+><P
-+>The perl module Curses, Curses::Form and Curses::Widgets give access to curses
-+from perl. If you have curses and basic perl is installed, you can get these
-+modules from <A
-+HREF="http://www.cpan.org/modules/01modules.index.html"
-+TARGET="_top"
-+> CPAN
-+All Modules page</A
-+>. Get the three zipped modules in the Curses category.
-+Once installed you can use these modules from perl scripts like any other
-+module. For more information on perl modules see perlmod man page. The above
-+modules come with good documentation and they have some demo scripts to test the
-+functionality. Though the widgets provided are very rudimentary, these modules
-+provide good access to curses library from perl.</P
-+><P
-+>Some of my code examples are converted to perl by Anuradha Ratnaweera and they
-+are available in the <TT
-+CLASS="LITERAL"
-+>perl</TT
-+> directory.</P
-+><P
-+>
-+For more information see man pages Curses(3) , Curses::Form(3) and
-+Curses::Widgets(3). These pages are installed only when the above modules are
-+acquired and installed.</P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="JUSTFORFUN"
-+>20. Just For Fun !!!</A
-+></H2
-+><P
-+>This section contains few programs written by me just for fun. They don't
-+signify a better programming practice or the best way of using ncurses. They are
-+provided here so as to allow beginners to get ideas and add more programs to
-+this section. If you have written a couple of nice, simple programs in curses
-+and want them to included here, contact <A
-+HREF="mailto:ppadala@gmail.com"
-+TARGET="_top"
-+>me</A
-+>.</P
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="GAMEOFLIFE"
-+>20.1. The Game of Life</A
-+></H3
-+><P
-+>Game of life is a wonder of math. In
-+<A
-+HREF="http://www.math.com/students/wonders/life/life.html"
-+TARGET="_top"
-+>Paul Callahan</A
-+>'s words</P
-+><PRE
-+CLASS="PROGRAMLISTING"
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>The Game of Life (or simply Life) is not a game in the conventional sense. There
- are no players, and no winning or losing. Once the "pieces" are placed in the
- starting position, the rules determine everything that happens later.
- Nevertheless, Life is full of surprises! In most cases, it is impossible to look
- at a starting position (or pattern) and see what will happen in the future. The
--only way to find out is to follow the rules of the game.</em></font>
--</pre></td>
--</tr>
--</table>
--<p>This program starts with a simple inverted U pattern and shows
--how wonderful life works. There is a lot of room for improvement in
--the program. You can let the user enter pattern of his choice or
--even take input from a file. You can also change rules and play
--with a lot of variations. Search on <a href="http://www.google.com"
--target="_top">google</a> for interesting information on game of
--life.</p>
--<p><em>File Path: JustForFun/life.c</em></p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="MAGIC" id="MAGIC">20.2. Magic
--Square</a></h3>
--<p>Magic Square, another wonder of math, is very simple to
--understand but very difficult to make. In a magic square sum of the
--numbers in each row, each column is equal. Even diagnol sum can be
--equal. There are many variations which have special properties.</p>
--<p>This program creates a simple magic square of odd order.</p>
--<p><em>File Path: JustForFun/magic.c</em></p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="HANOI" id="HANOI">20.3. Towers of
--Hanoi</a></h3>
--<p>The famous towers of hanoi solver. The aim of the game is to
--move the disks on the first peg to last peg, using middle peg as a
--temporary stay. The catch is not to place a larger disk over a
--small disk at any time.</p>
--<p><em>File Path: JustForFun/hanoi.c</em></p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="QUEENS" id="QUEENS">20.4. Queens
--Puzzle</a></h3>
--<p>The objective of the famous N-Queen puzzle is to put N queens on
--a N X N chess board without attacking each other.</p>
--<p>This program solves it with a simple backtracking technique.</p>
--<p><em>File Path: JustForFun/queens.c</em></p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="SHUFFLE" id="SHUFFLE">20.5.
--Shuffle</a></h3>
--<p>A fun game, if you have time to kill.</p>
--<p><em>File Path: JustForFun/shuffle.c</em></p>
--</div>
--<div class="SECT2">
--<hr>
--<h3 class="SECT2"><a name="TT" id="TT">20.6. Typing Tutor</a></h3>
--<p>A simple typing tutor, I created more out of need than for ease
--of use. If you know how to put your fingers correctly on the
--keyboard, but lack practice, this can be helpful.</p>
--<p><em>File Path: JustForFun/tt.c</em></p>
--</div>
--</div>
--<div class="SECT1">
--<hr>
--<h2 class="SECT1"><a name="REF" id="REF">21. References</a></h2>
--<ul>
--<li>
--<p>NCURSES man pages</p>
--</li>
--<li>
--<p>NCURSES FAQ at <a href=
--"http://invisible-island.net/ncurses/ncurses.faq.html" target=
--"_top">http://invisible-island.net/ncurses/ncurses.faq.html</a></p>
--</li>
--<li>
--<p>Writing programs with NCURSES by Eric Raymond and Zeyd M.
--Ben-Halim at <a href=
--"http://invisible-island.net/ncurses/ncurses-intro.html" target=
--"_top">http://invisible-island.net/ncurses/ncurses-intro.html</a> -
--somewhat obsolete. I was inspired by this document and the
--structure of this HOWTO follows from the original document</p>
--</li>
--</ul>
--</div>
--</div>
--</body>
--</html>
-+only way to find out is to follow the rules of the game.</I
-+></SPAN
-+></PRE
-+><P
-+>This program starts with a simple inverted U pattern and shows how wonderful
-+life works. There is a lot of room for improvement in the program. You can let
-+the user enter pattern of his choice or even take input from a file. You can
-+also change rules and play with a lot of variations. Search on <A
-+HREF="http://www.google.com"
-+TARGET="_top"
-+>google</A
-+> for interesting information on game
-+of life.</P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>File Path: JustForFun/life.c</I
-+></SPAN
-+></P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="MAGIC"
-+>20.2. Magic Square</A
-+></H3
-+><P
-+>Magic Square, another wonder of math, is very simple to understand but very
-+difficult to make. In a magic square sum of the numbers in each row, each column
-+is equal. Even diagnol sum can be equal. There are many variations which have
-+special properties.</P
-+><P
-+>This program creates a simple magic square of odd order.</P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>File Path: JustForFun/magic.c</I
-+></SPAN
-+></P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="HANOI"
-+>20.3. Towers of Hanoi</A
-+></H3
-+><P
-+>The famous towers of hanoi solver. The aim of the game is to move the disks on
-+the first peg to last peg, using middle peg as a temporary stay. The catch is
-+not to place a larger disk over a small disk at any time.</P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>File Path: JustForFun/hanoi.c</I
-+></SPAN
-+></P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="QUEENS"
-+>20.4. Queens Puzzle</A
-+></H3
-+><P
-+>The objective of the famous N-Queen puzzle is to put N queens on a N X N chess
-+board without attacking each other. </P
-+><P
-+>This program solves it with a simple backtracking technique.</P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>File Path: JustForFun/queens.c</I
-+></SPAN
-+></P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="SHUFFLE"
-+>20.5. Shuffle</A
-+></H3
-+><P
-+>A fun game, if you have time to kill. </P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>File Path: JustForFun/shuffle.c</I
-+></SPAN
-+></P
-+></DIV
-+><DIV
-+CLASS="SECT2"
-+><HR><H3
-+CLASS="SECT2"
-+><A
-+NAME="TT"
-+>20.6. Typing Tutor</A
-+></H3
-+><P
-+>A simple typing tutor, I created more out of need than for ease of use. If you
-+know how to put your fingers correctly on the keyboard, but lack practice, this
-+can be helpful. </P
-+><P
-+><SPAN
-+CLASS="emphasis"
-+><I
-+CLASS="EMPHASIS"
-+>File Path: JustForFun/tt.c</I
-+></SPAN
-+></P
-+></DIV
-+></DIV
-+><DIV
-+CLASS="SECT1"
-+><HR><H2
-+CLASS="SECT1"
-+><A
-+NAME="REF"
-+>21. References</A
-+></H2
-+><P
-+></P
-+><UL
-+><LI
-+><P
-+>NCURSES man pages </P
-+></LI
-+><LI
-+><P
-+>NCURSES FAQ at <A
-+HREF="http://invisible-island.net/ncurses/ncurses.faq.html"
-+TARGET="_top"
-+>http://invisible-island.net/ncurses/ncurses.faq.html</A
-+>
-+ </P
-+></LI
-+><LI
-+><P
-+>Writing programs with NCURSES by Eric Raymond and Zeyd M.
-+Ben-Halim at
-+<A
-+HREF="http://invisible-island.net/ncurses/ncurses-intro.html"
-+TARGET="_top"
-+>http://invisible-island.net/ncurses/ncurses-intro.html</A
-+> - somewhat
-+obsolete. I was inspired by this document and the structure of this HOWTO
-+follows from the original document</P
-+></LI
-+></UL
-+></DIV
-+></DIV
-+></BODY
-+></HTML
-+>
-\ No newline at end of file
-Index: doc/html/ada/files.htm
---- ncurses-5.9/doc/html/ada/files.htm 2005-05-14 16:28:37.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/files.htm 2013-05-18 21:41:06.000000000 +0000
-@@ -1,5 +1,17 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE></TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE></TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
- <H2 ALIGN=CENTER>Files</H2>
- <A HREF="files/T.htm">[T]</A>
-Index: doc/html/ada/files/T.htm
---- ncurses-5.9/doc/html/ada/files/T.htm 2005-05-14 16:28:37.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/files/T.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,5 +1,9 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>T</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>T</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Files - T</H2>
- <A HREF="../files.htm" TARGET="_self">[index]</A>
-@@ -74,5 +78,6 @@
- <LI><A HREF="../terminal_interface-curses-trace__ads.htm" TARGET="main">terminal_interface-curses-trace.ads</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm" TARGET="main">terminal_interface-curses.adb</A>
- <LI><A HREF="../terminal_interface-curses__ads.htm" TARGET="main">terminal_interface-curses.ads</A>
-+<LI><A HREF="../terminal_interface-curses_constants__ads.htm" TARGET="main">terminal_interface-curses_constants.ads</A>
- <LI><A HREF="../terminal_interface__ads.htm" TARGET="main">terminal_interface.ads</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs.htm
---- ncurses-5.9/doc/html/ada/funcs.htm 2005-05-14 16:28:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs.htm 2013-05-18 21:41:07.000000000 +0000
-@@ -1,5 +1,17 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE></TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE></TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
- <H2 ALIGN=CENTER>Functions/Procedures</H2>
- <A HREF="funcs/A.htm">[A]</A>
-Index: doc/html/ada/funcs/A.htm
---- ncurses-5.9/doc/html/ada/funcs/A.htm 2011-03-19 23:18:38.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/A.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,24 +1,29 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>A</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>A</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - A</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_129_13" TARGET="main">Above</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_525_14" TARGET="main">Add - terminal_interface-curses.ads:525</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_530_14" TARGET="main">Add - terminal_interface-curses.ads:530</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_536_14" TARGET="main">Add - terminal_interface-curses.ads:536</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_544_14" TARGET="main">Add - terminal_interface-curses.ads:544</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_655_14" TARGET="main">Add - terminal_interface-curses.ads:655</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_664_14" TARGET="main">Add - terminal_interface-curses.ads:664</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_679_14" TARGET="main">Add - terminal_interface-curses.ads:679</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_688_14" TARGET="main">Add - terminal_interface-curses.ads:688</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1309_14" TARGET="main">Add_Character_To_Pad_And_Echo_It - terminal_interface-curses.ads:1309</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1314_14" TARGET="main">Add_Character_To_Pad_And_Echo_It - terminal_interface-curses.ads:1314</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_553_14" TARGET="main">Add_With_Immediate_Echo - terminal_interface-curses.ads:553</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_559_14" TARGET="main">Add_With_Immediate_Echo - terminal_interface-curses.ads:559</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_959_16" TARGET="main">Ahead</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_128_13" TARGET="main">Above</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_567_13" TARGET="main">ACS_Map</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_693_14" TARGET="main">Add - terminal_interface-curses.ads:693</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_698_14" TARGET="main">Add - terminal_interface-curses.ads:698</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_704_14" TARGET="main">Add - terminal_interface-curses.ads:704</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_712_14" TARGET="main">Add - terminal_interface-curses.ads:712</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_823_14" TARGET="main">Add - terminal_interface-curses.ads:823</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_832_14" TARGET="main">Add - terminal_interface-curses.ads:832</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_847_14" TARGET="main">Add - terminal_interface-curses.ads:847</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_856_14" TARGET="main">Add - terminal_interface-curses.ads:856</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1477_14" TARGET="main">Add_Character_To_Pad_And_Echo_It - terminal_interface-curses.ads:1477</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1482_14" TARGET="main">Add_Character_To_Pad_And_Echo_It - terminal_interface-curses.ads:1482</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_721_14" TARGET="main">Add_With_Immediate_Echo - terminal_interface-curses.ads:721</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_727_14" TARGET="main">Add_With_Immediate_Echo - terminal_interface-curses.ads:727</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_841_16" TARGET="main">Ahead</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_16" TARGET="main">Allocate_Arg</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1018_14" TARGET="main">Allow_Scrolling</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1838_14" TARGET="main">Assume_Default_Colors</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1186_14" TARGET="main">Allow_Scrolling</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2008_14" TARGET="main">Assume_Default_Colors</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/B.htm
---- ncurses-5.9/doc/html/ada/funcs/B.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/B.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,21 +1,25 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>B</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>B</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - B</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_458_14" TARGET="main">Background - terminal_interface-curses-forms.ads:458</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_463_14" TARGET="main">Background - terminal_interface-curses-forms.ads:463</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_455_14" TARGET="main">Background - terminal_interface-curses-menus.ads:455</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_460_14" TARGET="main">Background - terminal_interface-curses-menus.ads:460</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2052_16" TARGET="main">Baud</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1649_13" TARGET="main">Baudrate</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_872_14" TARGET="main">Beep</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_751_16" TARGET="main">Beeper</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_975_16" TARGET="main">Behind</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_134_13" TARGET="main">Below</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_706_14" TARGET="main">Border</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_77_14" TARGET="main">Bottom</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_455_14" TARGET="main">Background - terminal_interface-curses-forms.ads:455</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_460_14" TARGET="main">Background - terminal_interface-curses-forms.ads:460</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_449_14" TARGET="main">Background - terminal_interface-curses-menus.ads:449</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_454_14" TARGET="main">Background - terminal_interface-curses-menus.ads:454</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2065_16" TARGET="main">Baud</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1817_13" TARGET="main">Baudrate</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1040_14" TARGET="main">Beep</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_752_16" TARGET="main">Beeper</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_857_16" TARGET="main">Behind</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_133_13" TARGET="main">Below</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_874_14" TARGET="main">Border</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_76_14" TARGET="main">Bottom</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_65_16" TARGET="main">Bottompanel</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_722_14" TARGET="main">Box</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_890_14" TARGET="main">Box</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/C.htm
---- ncurses-5.9/doc/html/ada/funcs/C.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/C.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,55 +1,62 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>C</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>C</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - C</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2213_16" TARGET="main">Canchangecolor</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1741_13" TARGET="main">Can_Change_Color</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_771_16" TARGET="main">Cbreak</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_386_13" TARGET="main">Changed</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_847_14" TARGET="main">Change_Attributes - terminal_interface-curses.ads:847</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_856_14" TARGET="main">Change_Attributes - terminal_interface-curses.ads:856</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1118_14" TARGET="main">Change_Background</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1154_14" TARGET="main">Change_Lines_Status</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_185_13" TARGET="main">Char_Check_Router</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1082_14" TARGET="main">Clear</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_968_16" TARGET="main">Clear_Ok</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_983_14" TARGET="main">Clear_On_Next_Update</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1535_14" TARGET="main">Clear_Soft_Label_Keys</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1096_14" TARGET="main">Clear_To_End_Of_Line</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1089_14" TARGET="main">Clear_To_End_Of_Screen</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2229_16" TARGET="main">Canchangecolor</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1909_13" TARGET="main">Can_Change_Color</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_772_16" TARGET="main">Cbreak</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_383_13" TARGET="main">Changed</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1015_14" TARGET="main">Change_Attributes - terminal_interface-curses.ads:1015</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1024_14" TARGET="main">Change_Attributes - terminal_interface-curses.ads:1024</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1286_14" TARGET="main">Change_Background</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1322_14" TARGET="main">Change_Lines_Status</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_186_13" TARGET="main">Char_Check_Router</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1250_14" TARGET="main">Clear</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_970_16" TARGET="main">Clear_Ok</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1151_14" TARGET="main">Clear_On_Next_Update</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1703_14" TARGET="main">Clear_Soft_Label_Keys</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1264_14" TARGET="main">Clear_To_End_Of_Line</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1257_14" TARGET="main">Clear_To_End_Of_Screen</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_98_13" TARGET="main">Col - terminal_interface-curses-text_io.ads:98</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_99_13" TARGET="main">Col - terminal_interface-curses-text_io.ads:99</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2230_16" TARGET="main">Colorcontent</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1746_14" TARGET="main">Color_Content</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_417_13" TARGET="main">Columns</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1176_14" TARGET="main">Copy</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1269_16" TARGET="main">Copywin</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_167_13" TARGET="main">Copy_Arg</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_774_16" TARGET="main">Count - terminal_interface-curses-forms.adb:774</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_912_16" TARGET="main">Count - terminal_interface-curses-menus.adb:912</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2246_16" TARGET="main">Colorcontent</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2382_16" TARGET="main">COLORS_As_Function</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1914_14" TARGET="main">Color_Content</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2390_16" TARGET="main">COLOR_PAIRS_As_Function</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2365_16" TARGET="main">COLS_As_Function</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_553_13" TARGET="main">Columns</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1344_14" TARGET="main">Copy</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1275_16" TARGET="main">Copywin</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_168_13" TARGET="main">Copy_Arg</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_680_16" TARGET="main">Count - terminal_interface-curses-forms.adb:680</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_797_16" TARGET="main">Count - terminal_interface-curses-menus.adb:797</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_13" TARGET="main">Create - terminal_interface-curses-forms-field_types-enumeration-ada.ads:48</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13" TARGET="main">Create - terminal_interface-curses-forms-field_types-enumeration.ads:64</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_297_13" TARGET="main">Create - terminal_interface-curses-forms.ads:297</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_627_13" TARGET="main">Create - terminal_interface-curses-forms.ads:627</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_195_13" TARGET="main">Create - terminal_interface-curses-menus.ads:195</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_642_13" TARGET="main">Create - terminal_interface-curses-menus.ads:642</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_67_13" TARGET="main">Create - terminal_interface-curses-panels.ads:67</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_571_13" TARGET="main">Create - terminal_interface-curses.ads:571</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_733_13" TARGET="main">Current - terminal_interface-curses-forms.ads:733</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_298_13" TARGET="main">Current - terminal_interface-curses-menus.ads:298</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_1040_16" TARGET="main">Current_Fld</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_483_13" TARGET="main">Current_Window</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_300_16" TARGET="main">Curr_Item</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_294_13" TARGET="main">Create - terminal_interface-curses-forms.ads:294</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_624_13" TARGET="main">Create - terminal_interface-curses-forms.ads:624</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_189_13" TARGET="main">Create - terminal_interface-curses-menus.ads:189</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_636_13" TARGET="main">Create - terminal_interface-curses-menus.ads:636</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_66_13" TARGET="main">Create - terminal_interface-curses-panels.ads:66</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_739_13" TARGET="main">Create - terminal_interface-curses.ads:739</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_730_13" TARGET="main">Current - terminal_interface-curses-forms.ads:730</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_292_13" TARGET="main">Current - terminal_interface-curses-menus.ads:292</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_916_16" TARGET="main">Current_Fld</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_650_13" TARGET="main">Current_Window</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_261_16" TARGET="main">Curr_Item</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2460_17" TARGET="main">curses_freeall</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1861_14" TARGET="main">Curses_Free_All</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1848_13" TARGET="main">Curses_Version</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2031_14" TARGET="main">Curses_Free_All</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2018_13" TARGET="main">Curses_Version</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2452_16" TARGET="main">curses_versionC</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2317_16" TARGET="main">Curs_Set</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2334_16" TARGET="main">Curs_Set</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2438_16" TARGET="main">C_Assume_Default_Colors</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_148_13" TARGET="main">C_Builtin_Router</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_149_13" TARGET="main">C_Choice_Router</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_149_13" TARGET="main">C_Builtin_Router</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_150_13" TARGET="main">C_Choice_Router</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_78_13" TARGET="main">C_Generic_Choice</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13" TARGET="main">C_Generic_Type</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2426_16" TARGET="main">C_Use_Default_Colors</A>
-Index: doc/html/ada/funcs/D.htm
---- ncurses-5.9/doc/html/ada/funcs/D.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/D.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,47 +1,51 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>D</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>D</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - D</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_696_13" TARGET="main">Data_Ahead</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_701_13" TARGET="main">Data_Behind</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_693_13" TARGET="main">Data_Ahead</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_698_13" TARGET="main">Data_Behind</A>
- <LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_104_13" TARGET="main">Default_Field_Options</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_129_13" TARGET="main">Default_Form_Options</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_172_13" TARGET="main">Default_Item_Options</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_148_13" TARGET="main">Default_Menu_Options</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1598_14" TARGET="main">Define_Key</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2000_16" TARGET="main">Defkey</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2249_16" TARGET="main">Def_Prog_Mode</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2251_16" TARGET="main">Def_Shell_Mode</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2032_16" TARGET="main">Delayoutput</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1635_14" TARGET="main">Delay_Output</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_319_14" TARGET="main">Delete - terminal_interface-curses-forms.ads:319</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_638_14" TARGET="main">Delete - terminal_interface-curses-forms.ads:638</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_207_14" TARGET="main">Delete - terminal_interface-curses-menus.ads:207</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_649_14" TARGET="main">Delete - terminal_interface-curses-menus.ads:649</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_139_14" TARGET="main">Delete - terminal_interface-curses-panels.ads:139</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_590_14" TARGET="main">Delete - terminal_interface-curses.ads:590</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1336_14" TARGET="main">Delete_Character - terminal_interface-curses.ads:1336</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1341_14" TARGET="main">Delete_Character - terminal_interface-curses.ads:1341</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1214_14" TARGET="main">Delete_Line</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_126_13" TARGET="main">Default_Form_Options</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_166_13" TARGET="main">Default_Item_Options</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_145_13" TARGET="main">Default_Menu_Options</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1766_14" TARGET="main">Define_Key</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2013_16" TARGET="main">Defkey</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2266_16" TARGET="main">Def_Prog_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2268_16" TARGET="main">Def_Shell_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2045_16" TARGET="main">Delayoutput</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1803_14" TARGET="main">Delay_Output</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_316_14" TARGET="main">Delete - terminal_interface-curses-forms.ads:316</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_635_14" TARGET="main">Delete - terminal_interface-curses-forms.ads:635</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_201_14" TARGET="main">Delete - terminal_interface-curses-menus.ads:201</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_643_14" TARGET="main">Delete - terminal_interface-curses-menus.ads:643</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_138_14" TARGET="main">Delete - terminal_interface-curses-panels.ads:138</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_758_14" TARGET="main">Delete - terminal_interface-curses.ads:758</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1504_14" TARGET="main">Delete_Character - terminal_interface-curses.ads:1504</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1509_14" TARGET="main">Delete_Character - terminal_interface-curses.ads:1509</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1382_14" TARGET="main">Delete_Line</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_156_16" TARGET="main">Del_Panel</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_606_13" TARGET="main">Derived_Window</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_298_16" TARGET="main">Derwin</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_126_16" TARGET="main">Descname - terminal_interface-curses-menus.adb:126</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_270_16" TARGET="main">Descname - terminal_interface-curses-menus.adb:270</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_278_16" TARGET="main">Descname - terminal_interface-curses-menus.adb:278</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_278_14" TARGET="main">Description - terminal_interface-curses-menus.ads:278</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_282_14" TARGET="main">Description - terminal_interface-curses-menus.ads:282</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_774_13" TARGET="main">Derived_Window</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_299_16" TARGET="main">Derwin</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_108_16" TARGET="main">Descname - terminal_interface-curses-menus.adb:108</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_234_16" TARGET="main">Descname - terminal_interface-curses-menus.adb:234</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_242_16" TARGET="main">Descname - terminal_interface-curses-menus.adb:242</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_272_14" TARGET="main">Description - terminal_interface-curses-menus.ads:272</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_276_14" TARGET="main">Description - terminal_interface-curses-menus.ads:276</A>
- <LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_131_14" TARGET="main">Dispatch_Event</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1059_16" TARGET="main">Do_Update</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_715_13" TARGET="main">Driver - terminal_interface-curses-forms.ads:715</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_664_13" TARGET="main">Driver - terminal_interface-curses-menus.ads:664</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_973_16" TARGET="main">Driver - terminal_interface-curses-menus.adb:973</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_325_13" TARGET="main">Duplicate - terminal_interface-curses-forms.ads:325</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_616_13" TARGET="main">Duplicate - terminal_interface-curses.ads:616</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_321_16" TARGET="main">Dupwin</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_151_16" TARGET="main">Dup_Field</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_497_14" TARGET="main">Dynamic_Info</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_559_16" TARGET="main">Dyn_Info</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1062_16" TARGET="main">Do_Update</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_712_13" TARGET="main">Driver - terminal_interface-curses-forms.ads:712</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_658_13" TARGET="main">Driver - terminal_interface-curses-menus.ads:658</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_855_16" TARGET="main">Driver - terminal_interface-curses-menus.adb:855</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_322_13" TARGET="main">Duplicate - terminal_interface-curses-forms.ads:322</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_784_13" TARGET="main">Duplicate - terminal_interface-curses.ads:784</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_322_16" TARGET="main">Dupwin</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_130_16" TARGET="main">Dup_Field</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_494_14" TARGET="main">Dynamic_Info</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_494_16" TARGET="main">Dyn_Info</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/E.htm
---- ncurses-5.9/doc/html/ada/funcs/E.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/E.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,18 +1,22 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>E</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>E</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - E</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_809_16" TARGET="main">Echo</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1588_14" TARGET="main">Enable_Key</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_150_13" TARGET="main">Enclosed_In_Window</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_810_16" TARGET="main">Echo</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1756_14" TARGET="main">Enable_Key</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_146_13" TARGET="main">Enclosed_In_Window</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_113_16" TARGET="main">Endwin</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_124_14" TARGET="main">End_Mouse</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_499_14" TARGET="main">End_Screen</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_497_14" TARGET="main">End_Windows</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1076_14" TARGET="main">Erase</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2060_16" TARGET="main">Erasechar</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1654_13" TARGET="main">Erase_Character</A>
--<LI><A HREF="../terminal_interface-curses-aux__ads.htm#ref_96_14" TARGET="main">Eti_Exception</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_120_14" TARGET="main">End_Mouse</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_667_14" TARGET="main">End_Screen</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_665_14" TARGET="main">End_Windows</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1244_14" TARGET="main">Erase</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2073_16" TARGET="main">Erasechar</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1822_13" TARGET="main">Erase_Character</A>
-+<LI><A HREF="../terminal_interface-curses-aux__ads.htm#ref_88_14" TARGET="main">Eti_Exception</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/F.htm
---- ncurses-5.9/doc/html/ada/funcs/F.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/F.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,55 +1,59 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>F</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>F</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - F</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_605_13" TARGET="main">Fields</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_468_16" TARGET="main">Field_Back - terminal_interface-curses-forms.adb:468</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_478_16" TARGET="main">Field_Back - terminal_interface-curses-forms.adb:478</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_255_16" TARGET="main">Field_Buffer - terminal_interface-curses-forms.adb:255</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_266_16" TARGET="main">Field_Buffer - terminal_interface-curses-forms.adb:266</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_177_13" TARGET="main">Field_Check_Router</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_611_13" TARGET="main">Field_Count</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_424_16" TARGET="main">Field_Fore - terminal_interface-curses-forms.adb:424</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_434_16" TARGET="main">Field_Fore - terminal_interface-curses-forms.adb:434</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_213_16" TARGET="main">Field_Just</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_374_16" TARGET="main">Field_Opts</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_352_16" TARGET="main">Field_Opts_Off</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_349_16" TARGET="main">Field_Opts_On</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_507_16" TARGET="main">Field_Pad</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_293_16" TARGET="main">Field_Status</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_user_data__adb.htm#ref_72_16" TARGET="main">Field_Userptr</A>
--<LI><A HREF="../terminal_interface-curses-aux__ads.htm#ref_116_14" TARGET="main">Fill_String - terminal_interface-curses-aux.ads:116</A>
--<LI><A HREF="../terminal_interface-curses-aux__ads.htm#ref_121_13" TARGET="main">Fill_String - terminal_interface-curses-aux.ads:121</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_761_16" TARGET="main">Flash</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_877_14" TARGET="main">Flash_Screen</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_528_16" TARGET="main">Fld_Info</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_602_13" TARGET="main">Fields</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_410_16" TARGET="main">Field_Back - terminal_interface-curses-forms.adb:410</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_420_16" TARGET="main">Field_Back - terminal_interface-curses-forms.adb:420</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_222_16" TARGET="main">Field_Buffer - terminal_interface-curses-forms.adb:222</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_233_16" TARGET="main">Field_Buffer - terminal_interface-curses-forms.adb:233</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_178_13" TARGET="main">Field_Check_Router</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_608_13" TARGET="main">Field_Count</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_371_16" TARGET="main">Field_Fore - terminal_interface-curses-forms.adb:371</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_381_16" TARGET="main">Field_Fore - terminal_interface-curses-forms.adb:381</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_188_16" TARGET="main">Field_Just</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_327_16" TARGET="main">Field_Opts</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_310_16" TARGET="main">Field_Opts_Off</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_307_16" TARGET="main">Field_Opts_On</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_446_16" TARGET="main">Field_Pad</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_259_16" TARGET="main">Field_Status</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_user_data__adb.htm#ref_69_16" TARGET="main">Field_Userptr</A>
-+<LI><A HREF="../terminal_interface-curses-aux__ads.htm#ref_92_14" TARGET="main">Fill_String - terminal_interface-curses-aux.ads:92</A>
-+<LI><A HREF="../terminal_interface-curses-aux__ads.htm#ref_97_13" TARGET="main">Fill_String - terminal_interface-curses-aux.ads:97</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_762_16" TARGET="main">Flash</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1045_14" TARGET="main">Flash_Screen</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_467_16" TARGET="main">Fld_Info</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_65_14" TARGET="main">Flush - terminal_interface-curses-text_io.ads:65</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_66_14" TARGET="main">Flush - terminal_interface-curses-text_io.ads:66</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2042_16" TARGET="main">Flushinp</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1640_14" TARGET="main">Flush_Input</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_438_14" TARGET="main">Foreground - terminal_interface-curses-forms.ads:438</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_443_14" TARGET="main">Foreground - terminal_interface-curses-forms.ads:443</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_435_14" TARGET="main">Foreground - terminal_interface-curses-menus.ads:435</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_440_14" TARGET="main">Foreground - terminal_interface-curses-menus.ads:440</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_555_14" TARGET="main">Format</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_889_16" TARGET="main">Form_Opts</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_867_16" TARGET="main">Form_Opts_Off</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_864_16" TARGET="main">Form_Opts_On</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_84_16" TARGET="main">Form_Request_Name - terminal_interface-curses-forms.adb:84</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_92_16" TARGET="main">Form_Request_Name - terminal_interface-curses-forms.adb:92</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_628_16" TARGET="main">Form_Sub</A>
--<LI><A HREF="../terminal_interface-curses-forms-form_user_data__adb.htm#ref_73_16" TARGET="main">Form_Userptr</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_600_16" TARGET="main">Form_Win</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_140_14" TARGET="main">Free - terminal_interface-curses-forms.ads:140</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_184_14" TARGET="main">Free - terminal_interface-curses-menus.ads:184</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_825_16" TARGET="main">Free - terminal_interface-curses-forms.adb:825</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_958_16" TARGET="main">Free - terminal_interface-curses-menus.adb:958</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_131_16" TARGET="main">Freeitem</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_172_14" TARGET="main">Free_Arg</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_133_16" TARGET="main">Free_Field</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_996_16" TARGET="main">Frm_Driver</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_783_13" TARGET="main">Function_Key</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_788_13" TARGET="main">Function_Key_Code</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2055_16" TARGET="main">Flushinp</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1808_14" TARGET="main">Flush_Input</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_435_14" TARGET="main">Foreground - terminal_interface-curses-forms.ads:435</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_440_14" TARGET="main">Foreground - terminal_interface-curses-forms.ads:440</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_429_14" TARGET="main">Foreground - terminal_interface-curses-menus.ads:429</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_434_14" TARGET="main">Foreground - terminal_interface-curses-menus.ads:434</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_549_14" TARGET="main">Format</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_779_16" TARGET="main">Form_Opts</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_762_16" TARGET="main">Form_Opts_Off</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_759_16" TARGET="main">Form_Opts_On</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_67_16" TARGET="main">Form_Request_Name - terminal_interface-curses-forms.adb:67</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_75_16" TARGET="main">Form_Request_Name - terminal_interface-curses-forms.adb:75</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_553_16" TARGET="main">Form_Sub</A>
-+<LI><A HREF="../terminal_interface-curses-forms-form_user_data__adb.htm#ref_70_16" TARGET="main">Form_Userptr</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_528_16" TARGET="main">Form_Win</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_137_14" TARGET="main">Free - terminal_interface-curses-forms.ads:137</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_178_14" TARGET="main">Free - terminal_interface-curses-menus.ads:178</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_728_16" TARGET="main">Free - terminal_interface-curses-forms.adb:728</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_843_16" TARGET="main">Free - terminal_interface-curses-menus.adb:843</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_113_16" TARGET="main">Freeitem</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_173_14" TARGET="main">Free_Arg</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_116_16" TARGET="main">Free_Field</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_878_16" TARGET="main">Frm_Driver</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_951_13" TARGET="main">Function_Key</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_956_13" TARGET="main">Function_Key_Code</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/G.htm
---- ncurses-5.9/doc/html/ada/funcs/G.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/G.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,5 +1,9 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>G</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>G</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - G</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
-@@ -8,73 +12,73 @@
- <LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13" TARGET="main">Generic_Field_Check</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13" TARGET="main">Generic_Next</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13" TARGET="main">Generic_Prev</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1465_14" TARGET="main">Get - terminal_interface-curses.ads:1465</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1476_14" TARGET="main">Get - terminal_interface-curses.ads:1476</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1370_16" TARGET="main">GetBegX</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1367_16" TARGET="main">GetBegY</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1388_16" TARGET="main">GetCurX</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1385_16" TARGET="main">GetCurY</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1352_16" TARGET="main">GetMaxX</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1349_16" TARGET="main">GetMaxY</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1633_14" TARGET="main">Get - terminal_interface-curses.ads:1633</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1644_14" TARGET="main">Get - terminal_interface-curses.ads:1644</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1377_16" TARGET="main">GetBegX</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1374_16" TARGET="main">GetBegY</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1395_16" TARGET="main">GetCurX</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1392_16" TARGET="main">GetCurY</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1359_16" TARGET="main">GetMaxX</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1356_16" TARGET="main">GetMaxY</A>
- <LI><A HREF="../terminal_interface-curses-mouse__adb.htm#ref_66_16" TARGET="main">Getmouse</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1407_16" TARGET="main">GetParX</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1404_16" TARGET="main">GetParY</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1414_16" TARGET="main">GetParX</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1411_16" TARGET="main">GetParY</A>
- <LI><A HREF="../terminal_interface-curses-putwin__adb.htm#ref_65_16" TARGET="main">getwin</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#ref_61_13" TARGET="main">Get_Arg</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1127_13" TARGET="main">Get_Background</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_366_14" TARGET="main">Get_Buffer - terminal_interface-curses-forms.ads:366</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_372_13" TARGET="main">Get_Buffer - terminal_interface-curses-forms.ads:372</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_828_13" TARGET="main">Get_Character_Attribute - terminal_interface-curses.ads:828</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_834_13" TARGET="main">Get_Character_Attribute - terminal_interface-curses.ads:834</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1246_14" TARGET="main">Get_Cursor_Position</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1295_13" TARGET="main">Get_Background</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_363_14" TARGET="main">Get_Buffer - terminal_interface-curses-forms.ads:363</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_369_13" TARGET="main">Get_Buffer - terminal_interface-curses-forms.ads:369</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_996_13" TARGET="main">Get_Character_Attribute - terminal_interface-curses.ads:996</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1002_13" TARGET="main">Get_Character_Attribute - terminal_interface-curses.ads:1002</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1414_14" TARGET="main">Get_Cursor_Position</A>
- <LI><A HREF="../terminal_interface-curses-termcap__ads.htm#ref_59_13" TARGET="main">Get_Entry</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_133_14" TARGET="main">Get_Event</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_1084_16" TARGET="main">Get_Fieldindex</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_129_14" TARGET="main">Get_Event</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_957_16" TARGET="main">Get_Fieldindex</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#ref_58_13" TARGET="main">Get_Fieldtype</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_569_13" TARGET="main">Get_Field_Init_Hook</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_574_13" TARGET="main">Get_Field_Term_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_566_13" TARGET="main">Get_Field_Init_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_571_13" TARGET="main">Get_Field_Term_Hook</A>
- <LI><A HREF="../terminal_interface-curses-termcap__ads.htm#ref_63_13" TARGET="main">Get_Flag - terminal_interface-curses-termcap.ads:63</A>
- <LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#ref_64_13" TARGET="main">Get_Flag - terminal_interface-curses-terminfo.ads:64</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_579_13" TARGET="main">Get_Form_Init_Hook</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_584_13" TARGET="main">Get_Form_Term_Hook</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_749_13" TARGET="main">Get_Index - terminal_interface-curses-forms.ads:749</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_314_13" TARGET="main">Get_Index - terminal_interface-curses-menus.ads:314</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_340_16" TARGET="main">Get_Itemindex</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_593_13" TARGET="main">Get_Item_Init_Hook</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_598_13" TARGET="main">Get_Item_Term_Hook</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_349_13" TARGET="main">Get_Justification</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_917_13" TARGET="main">Get_KeyPad_Mode</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_753_13" TARGET="main">Get_Keystroke</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_603_13" TARGET="main">Get_Menu_Init_Hook</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_532_16" TARGET="main">Get_Menu_Mark - terminal_interface-curses-menus.adb:532</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_540_16" TARGET="main">Get_Menu_Mark - terminal_interface-curses-menus.adb:540</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_608_13" TARGET="main">Get_Menu_Term_Hook</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_129_13" TARGET="main">Get_Mouse</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_576_13" TARGET="main">Get_Form_Init_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_581_13" TARGET="main">Get_Form_Term_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_746_13" TARGET="main">Get_Index - terminal_interface-curses-forms.ads:746</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_308_13" TARGET="main">Get_Index - terminal_interface-curses-menus.ads:308</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_298_16" TARGET="main">Get_Itemindex</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_587_13" TARGET="main">Get_Item_Init_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_592_13" TARGET="main">Get_Item_Term_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_346_13" TARGET="main">Get_Justification</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1085_13" TARGET="main">Get_KeyPad_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_921_13" TARGET="main">Get_Keystroke</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_597_13" TARGET="main">Get_Menu_Init_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_459_16" TARGET="main">Get_Menu_Mark - terminal_interface-curses-menus.adb:459</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_467_16" TARGET="main">Get_Menu_Mark - terminal_interface-curses-menus.adb:467</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_602_13" TARGET="main">Get_Menu_Term_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_125_13" TARGET="main">Get_Mouse</A>
- <LI><A HREF="../terminal_interface-curses-termcap__ads.htm#ref_67_14" TARGET="main">Get_Number - terminal_interface-curses-termcap.ads:67</A>
- <LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#ref_68_13" TARGET="main">Get_Number - terminal_interface-curses-terminfo.ads:68</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_415_14" TARGET="main">Get_Options - terminal_interface-curses-forms.ads:415</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_420_13" TARGET="main">Get_Options - terminal_interface-curses-forms.ads:420</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_662_14" TARGET="main">Get_Options - terminal_interface-curses-forms.ads:662</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_667_13" TARGET="main">Get_Options - terminal_interface-curses-forms.ads:667</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_255_14" TARGET="main">Get_Options - terminal_interface-curses-menus.ads:255</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_260_13" TARGET="main">Get_Options - terminal_interface-curses-menus.ads:260</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_351_14" TARGET="main">Get_Options - terminal_interface-curses-menus.ads:351</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_356_13" TARGET="main">Get_Options - terminal_interface-curses-menus.ads:356</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1254_14" TARGET="main">Get_Origin_Relative_To_Parent</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_1070_16" TARGET="main">Get_Page</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_758_16" TARGET="main">Get_Pattern</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1230_14" TARGET="main">Get_Size</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1524_14" TARGET="main">Get_Soft_Label_Key - terminal_interface-curses.ads:1524</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1529_13" TARGET="main">Get_Soft_Label_Key - terminal_interface-curses.ads:1529</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1565_13" TARGET="main">Get_Soft_Label_Key_Attributes - terminal_interface-curses.ads:1565</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1569_13" TARGET="main">Get_Soft_Label_Key_Attributes - terminal_interface-curses.ads:1569</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_713_16" TARGET="main">Get_Spacing</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_412_14" TARGET="main">Get_Options - terminal_interface-curses-forms.ads:412</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_417_13" TARGET="main">Get_Options - terminal_interface-curses-forms.ads:417</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_659_14" TARGET="main">Get_Options - terminal_interface-curses-forms.ads:659</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_664_13" TARGET="main">Get_Options - terminal_interface-curses-forms.ads:664</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_249_14" TARGET="main">Get_Options - terminal_interface-curses-menus.ads:249</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_254_13" TARGET="main">Get_Options - terminal_interface-curses-menus.ads:254</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_345_14" TARGET="main">Get_Options - terminal_interface-curses-menus.ads:345</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_350_13" TARGET="main">Get_Options - terminal_interface-curses-menus.ads:350</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1422_14" TARGET="main">Get_Origin_Relative_To_Parent</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_943_16" TARGET="main">Get_Page</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_665_16" TARGET="main">Get_Pattern</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1398_14" TARGET="main">Get_Size</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1692_14" TARGET="main">Get_Soft_Label_Key - terminal_interface-curses.ads:1692</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1697_13" TARGET="main">Get_Soft_Label_Key - terminal_interface-curses.ads:1697</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1733_13" TARGET="main">Get_Soft_Label_Key_Attributes - terminal_interface-curses.ads:1733</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1737_13" TARGET="main">Get_Soft_Label_Key_Attributes - terminal_interface-curses.ads:1737</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_624_16" TARGET="main">Get_Spacing</A>
- <LI><A HREF="../terminal_interface-curses-termcap__ads.htm#ref_73_14" TARGET="main">Get_String - terminal_interface-curses-termcap.ads:73</A>
- <LI><A HREF="../terminal_interface-curses-termcap__ads.htm#ref_76_13" TARGET="main">Get_String - terminal_interface-curses-termcap.ads:76</A>
- <LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#ref_57_14" TARGET="main">Get_String - terminal_interface-curses-terminfo.ads:57</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_526_13" TARGET="main">Get_Sub_Window - terminal_interface-curses-forms.ads:526</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_382_13" TARGET="main">Get_Sub_Window - terminal_interface-curses-menus.ads:382</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_79_13" TARGET="main">Get_Type</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_523_13" TARGET="main">Get_Sub_Window - terminal_interface-curses-forms.ads:523</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_376_13" TARGET="main">Get_Sub_Window - terminal_interface-curses-menus.ads:376</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_80_13" TARGET="main">Get_Type</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_14" TARGET="main">Get_User_Data - terminal_interface-curses-forms-field_user_data.ads:59</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_13" TARGET="main">Get_User_Data - terminal_interface-curses-forms-field_user_data.ads:64</A>
- <LI><A HREF="../terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_14" TARGET="main">Get_User_Data - terminal_interface-curses-forms-form_user_data.ads:59</A>
-@@ -85,12 +89,12 @@
- <LI><A HREF="../terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_13" TARGET="main">Get_User_Data - terminal_interface-curses-menus-menu_user_data.ads:64</A>
- <LI><A HREF="../terminal_interface-curses-panels-user_data__ads.htm#ref_59_14" TARGET="main">Get_User_Data - terminal_interface-curses-panels-user_data.ads:59</A>
- <LI><A HREF="../terminal_interface-curses-panels-user_data__ads.htm#ref_64_13" TARGET="main">Get_User_Data - terminal_interface-curses-panels-user_data.ads:64</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_515_13" TARGET="main">Get_Window - terminal_interface-curses-forms.ads:515</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_371_13" TARGET="main">Get_Window - terminal_interface-curses-menus.ads:371</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_102_13" TARGET="main">Get_Window - terminal_interface-curses-panels.ads:102</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_512_13" TARGET="main">Get_Window - terminal_interface-curses-forms.ads:512</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_365_13" TARGET="main">Get_Window - terminal_interface-curses-menus.ads:365</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_101_13" TARGET="main">Get_Window - terminal_interface-curses-panels.ads:101</A>
- <LI><A HREF="../terminal_interface-curses-putwin__ads.htm#ref_48_13" TARGET="main">Get_Window - terminal_interface-curses-putwin.ads:48</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_62_13" TARGET="main">Get_Window - terminal_interface-curses-text_io.ads:62</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1238_14" TARGET="main">Get_Window_Position</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_475_14" TARGET="main">Grey - terminal_interface-curses-menus.ads:475</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_480_14" TARGET="main">Grey - terminal_interface-curses-menus.ads:480</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1406_14" TARGET="main">Get_Window_Position</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_469_14" TARGET="main">Grey - terminal_interface-curses-menus.ads:469</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_474_14" TARGET="main">Grey - terminal_interface-curses-menus.ads:474</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/H.htm
---- ncurses-5.9/doc/html/ada/funcs/H.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/H.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,22 +1,26 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>H</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>H</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - H</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_859_16" TARGET="main">Halfdelay</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_925_14" TARGET="main">Half_Delay</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2184_16" TARGET="main">Hascolors</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_547_16" TARGET="main">Haskey</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1728_13" TARGET="main">Has_Colors</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2076_16" TARGET="main">Has_Ic</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2088_16" TARGET="main">Has_Il</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1664_13" TARGET="main">Has_Insert_Character</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1669_13" TARGET="main">Has_Insert_Line</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_769_13" TARGET="main">Has_Key</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_94_13" TARGET="main">Has_Mouse</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_860_16" TARGET="main">Halfdelay</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1093_14" TARGET="main">Half_Delay</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2199_16" TARGET="main">Hascolors</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_550_16" TARGET="main">Haskey</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1896_13" TARGET="main">Has_Colors</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2089_16" TARGET="main">Has_Ic</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2101_16" TARGET="main">Has_Il</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1832_13" TARGET="main">Has_Insert_Character</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1837_13" TARGET="main">Has_Insert_Line</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_937_13" TARGET="main">Has_Key</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_90_13" TARGET="main">Has_Mouse</A>
- <LI><A HREF="../terminal_interface-curses-terminfo__ads.htm#ref_60_13" TARGET="main">Has_String</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_97_14" TARGET="main">Hide</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_96_14" TARGET="main">Hide</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_95_16" TARGET="main">Hidepanel</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_730_14" TARGET="main">Horizontal_Line</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_898_14" TARGET="main">Horizontal_Line</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/I.htm
---- ncurses-5.9/doc/html/ada/funcs/I.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/I.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,51 +1,55 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>I</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>I</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - I</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_992_17" TARGET="main">IDC_Ok</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_980_16" TARGET="main">IDL_Ok</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1011_14" TARGET="main">Immediate_Update_Mode</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1014_17" TARGET="main">Immedok</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_486_14" TARGET="main">Info</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2199_16" TARGET="main">Initcolor</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2144_16" TARGET="main">Initpair</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_994_17" TARGET="main">IDC_Ok</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_982_16" TARGET="main">IDL_Ok</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1179_14" TARGET="main">Immediate_Update_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1016_17" TARGET="main">Immedok</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_483_14" TARGET="main">Info</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2214_16" TARGET="main">Initcolor</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2157_16" TARGET="main">Initpair</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_100_16" TARGET="main">Initscr</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1733_14" TARGET="main">Init_Color</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1714_14" TARGET="main">Init_Pair</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_488_14" TARGET="main">Init_Screen</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1501_14" TARGET="main">Init_Soft_Label_Keys</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_491_14" TARGET="main">Init_Windows</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1373_14" TARGET="main">Insert - terminal_interface-curses.ads:1373</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1379_14" TARGET="main">Insert - terminal_interface-curses.ads:1379</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1391_14" TARGET="main">Insert - terminal_interface-curses.ads:1391</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1400_14" TARGET="main">Insert - terminal_interface-curses.ads:1400</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1206_14" TARGET="main">Insert_Delete_Lines</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1220_14" TARGET="main">Insert_Line</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_871_16" TARGET="main">Intrflush</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1901_14" TARGET="main">Init_Color</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1882_14" TARGET="main">Init_Pair</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_656_14" TARGET="main">Init_Screen</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1669_14" TARGET="main">Init_Soft_Label_Keys</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_659_14" TARGET="main">Init_Windows</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1541_14" TARGET="main">Insert - terminal_interface-curses.ads:1541</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1547_14" TARGET="main">Insert - terminal_interface-curses.ads:1547</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1559_14" TARGET="main">Insert - terminal_interface-curses.ads:1559</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1568_14" TARGET="main">Insert - terminal_interface-curses.ads:1568</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1374_14" TARGET="main">Insert_Delete_Lines</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1388_14" TARGET="main">Insert_Line</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_872_16" TARGET="main">Intrflush</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_123_16" TARGET="main">Isendwin</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_504_13" TARGET="main">Is_End_Window</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_776_13" TARGET="main">Is_Function_Key</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_124_13" TARGET="main">Is_Hidden</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_851_16" TARGET="main">Is_Keypad</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_672_13" TARGET="main">Is_End_Window</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_944_13" TARGET="main">Is_Function_Key</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_123_13" TARGET="main">Is_Hidden</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_852_16" TARGET="main">Is_Keypad</A>
- <LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#ref_50_13" TARGET="main">Is_MinusOne_Pointer</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_1119_16" TARGET="main">Is_New</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_767_13" TARGET="main">Is_New_Page</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1035_16" TARGET="main">Is_Scroll_Ok</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1162_13" TARGET="main">Is_Touched - terminal_interface-curses.ads:1162</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1167_13" TARGET="main">Is_Touched - terminal_interface-curses.ads:1167</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_128_16" TARGET="main">Itemname - terminal_interface-curses-menus.adb:128</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_253_16" TARGET="main">Itemname - terminal_interface-curses-menus.adb:253</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_261_16" TARGET="main">Itemname - terminal_interface-curses-menus.adb:261</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_627_13" TARGET="main">Items</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_633_13" TARGET="main">Item_Count</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_860_16" TARGET="main">Item_Init</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_234_16" TARGET="main">Item_Opts</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_214_16" TARGET="main">Item_Opts_Off</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_211_16" TARGET="main">Item_Opts_On</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_868_16" TARGET="main">Item_Term</A>
--<LI><A HREF="../terminal_interface-curses-menus-item_user_data__adb.htm#ref_64_16" TARGET="main">Item_Userptr</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_168_16" TARGET="main">Item_Val</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_181_16" TARGET="main">Item_Vis</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_989_16" TARGET="main">Is_New</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_764_13" TARGET="main">Is_New_Page</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1037_16" TARGET="main">Is_Scroll_Ok</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1330_13" TARGET="main">Is_Touched - terminal_interface-curses.ads:1330</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1335_13" TARGET="main">Is_Touched - terminal_interface-curses.ads:1335</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_110_16" TARGET="main">Itemname - terminal_interface-curses-menus.adb:110</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_217_16" TARGET="main">Itemname - terminal_interface-curses-menus.adb:217</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_225_16" TARGET="main">Itemname - terminal_interface-curses-menus.adb:225</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_621_13" TARGET="main">Items</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_627_13" TARGET="main">Item_Count</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_749_16" TARGET="main">Item_Init</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_199_16" TARGET="main">Item_Opts</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_184_16" TARGET="main">Item_Opts_Off</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_181_16" TARGET="main">Item_Opts_On</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_757_16" TARGET="main">Item_Term</A>
-+<LI><A HREF="../terminal_interface-curses-menus-item_user_data__adb.htm#ref_61_16" TARGET="main">Item_Userptr</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_143_16" TARGET="main">Item_Val</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_156_16" TARGET="main">Item_Vis</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/K.htm
---- ncurses-5.9/doc/html/ada/funcs/K.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/K.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,14 +1,18 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>K</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>K</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - K</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_64_16" TARGET="main">Keyname</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1987_16" TARGET="main">Keyok</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_840_16" TARGET="main">Keypad</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1612_14" TARGET="main">Key_Name - terminal_interface-curses.ads:1612</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1618_13" TARGET="main">Key_Name - terminal_interface-curses.ads:1618</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2068_16" TARGET="main">Killchar</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1659_13" TARGET="main">Kill_Character</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1999_16" TARGET="main">Keyok</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_841_16" TARGET="main">Keypad</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1780_14" TARGET="main">Key_Name - terminal_interface-curses.ads:1780</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1786_13" TARGET="main">Key_Name - terminal_interface-curses.ads:1786</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2081_16" TARGET="main">Killchar</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1827_13" TARGET="main">Kill_Character</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/L.htm
---- ncurses-5.9/doc/html/ada/funcs/L.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/L.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,20 +1,25 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>L</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>L</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - L</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1004_14" TARGET="main">Leave_Cursor_After_Update</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1002_16" TARGET="main">Leave_Ok</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1172_14" TARGET="main">Leave_Cursor_After_Update</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1004_16" TARGET="main">Leave_Ok</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_101_13" TARGET="main">Line - terminal_interface-curses-text_io.ads:101</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_102_13" TARGET="main">Line - terminal_interface-curses-text_io.ads:102</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_414_13" TARGET="main">Lines</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_550_13" TARGET="main">Lines</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2357_16" TARGET="main">LINES_As_Function</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_77_13" TARGET="main">Line_Length - terminal_interface-curses-text_io.ads:77</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_78_13" TARGET="main">Line_Length - terminal_interface-curses-text_io.ads:78</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_332_13" TARGET="main">Link</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_172_16" TARGET="main">Lnk_Field</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2110_16" TARGET="main">Longname - terminal_interface-curses.adb:2110</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2118_16" TARGET="main">Longname - terminal_interface-curses.adb:2118</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1679_14" TARGET="main">Long_Name - terminal_interface-curses.ads:1679</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1683_13" TARGET="main">Long_Name - terminal_interface-curses.ads:1683</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_329_13" TARGET="main">Link</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_151_16" TARGET="main">Lnk_Field</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2123_16" TARGET="main">Longname - terminal_interface-curses.adb:2123</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2131_16" TARGET="main">Longname - terminal_interface-curses.adb:2131</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1847_14" TARGET="main">Long_Name - terminal_interface-curses.ads:1847</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1851_13" TARGET="main">Long_Name - terminal_interface-curses.ads:1851</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/M.htm
---- ncurses-5.9/doc/html/ada/funcs/M.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/M.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,51 +1,55 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>M</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>M</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - M</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_162_13" TARGET="main">Make_Arg</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_413_14" TARGET="main">Mark - terminal_interface-curses-menus.ads:413</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_417_14" TARGET="main">Mark - terminal_interface-curses-menus.ads:417</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_608_16" TARGET="main">Menu_Back - terminal_interface-curses-menus.adb:608</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_618_16" TARGET="main">Menu_Back - terminal_interface-curses-menus.adb:618</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_787_16" TARGET="main">Menu_Fmt</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_569_16" TARGET="main">Menu_Fore - terminal_interface-curses-menus.adb:569</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_579_16" TARGET="main">Menu_Fore - terminal_interface-curses-menus.adb:579</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_647_16" TARGET="main">Menu_Grey - terminal_interface-curses-menus.adb:647</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_657_16" TARGET="main">Menu_Grey - terminal_interface-curses-menus.adb:657</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_876_16" TARGET="main">Menu_Init</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_414_16" TARGET="main">Menu_Opts</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_394_16" TARGET="main">Menu_Opts_Off</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_391_16" TARGET="main">Menu_Opts_On</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_682_16" TARGET="main">Menu_Pad</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_470_16" TARGET="main">Menu_Sub</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_884_16" TARGET="main">Menu_Term</A>
--<LI><A HREF="../terminal_interface-curses-menus-menu_user_data__adb.htm#ref_63_16" TARGET="main">Menu_Userptr</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_446_16" TARGET="main">Menu_Win</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_829_16" TARGET="main">Meta</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_163_13" TARGET="main">Make_Arg</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_407_14" TARGET="main">Mark - terminal_interface-curses-menus.ads:407</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_411_14" TARGET="main">Mark - terminal_interface-curses-menus.ads:411</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_529_16" TARGET="main">Menu_Back - terminal_interface-curses-menus.adb:529</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_539_16" TARGET="main">Menu_Back - terminal_interface-curses-menus.adb:539</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_692_16" TARGET="main">Menu_Fmt</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_493_16" TARGET="main">Menu_Fore - terminal_interface-curses-menus.adb:493</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_503_16" TARGET="main">Menu_Fore - terminal_interface-curses-menus.adb:503</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_565_16" TARGET="main">Menu_Grey - terminal_interface-curses-menus.adb:565</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_575_16" TARGET="main">Menu_Grey - terminal_interface-curses-menus.adb:575</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_765_16" TARGET="main">Menu_Init</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_358_16" TARGET="main">Menu_Opts</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_343_16" TARGET="main">Menu_Opts_Off</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_340_16" TARGET="main">Menu_Opts_On</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_596_16" TARGET="main">Menu_Pad</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_407_16" TARGET="main">Menu_Sub</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_773_16" TARGET="main">Menu_Term</A>
-+<LI><A HREF="../terminal_interface-curses-menus-menu_user_data__adb.htm#ref_61_16" TARGET="main">Menu_Userptr</A>
-+<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_110_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_52_16" TARGET="main">Mouse_Avail</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_157_13" TARGET="main">Mouse_Interval</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_616_14" TARGET="main">Move - terminal_interface-curses-forms.ads:616</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_117_14" TARGET="main">Move - terminal_interface-curses-panels.ads:117</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_786_16" TARGET="main">Move - terminal_interface-curses-forms.adb:786</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_153_13" TARGET="main">Mouse_Interval</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_613_14" TARGET="main">Move - terminal_interface-curses-forms.ads:613</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_116_14" TARGET="main">Move - terminal_interface-curses-panels.ads:116</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_692_16" TARGET="main">Move - terminal_interface-curses-forms.adb:692</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_132_16" TARGET="main">Move - terminal_interface-curses-panels.adb:132</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_513_14" TARGET="main">Move_Cursor</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_628_14" TARGET="main">Move_Derived_Window</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_621_14" TARGET="main">Move_Window</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_350_16" TARGET="main">Mvderwin</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_681_14" TARGET="main">Move_Cursor</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_796_14" TARGET="main">Move_Derived_Window</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_789_14" TARGET="main">Move_Window</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_351_16" TARGET="main">Mvderwin</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_176_16" TARGET="main">mvwaddch</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1580_16" TARGET="main">Mvwdelch</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_336_16" TARGET="main">Mvwin</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1604_16" TARGET="main">Mvwinch</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1629_16" TARGET="main">Mvwinsch</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1668_16" TARGET="main">Mvwinsnstr</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_916_16" TARGET="main">M_Post - terminal_interface-curses-forms.adb:916</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_354_16" TARGET="main">M_Post - terminal_interface-curses-menus.adb:354</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_643_16" TARGET="main">M_Scale - terminal_interface-curses-forms.adb:643</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_483_16" TARGET="main">M_Scale - terminal_interface-curses-menus.adb:483</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_918_16" TARGET="main">M_Unpost - terminal_interface-curses-forms.adb:918</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_356_16" TARGET="main">M_Unpost - terminal_interface-curses-menus.adb:356</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1589_16" TARGET="main">Mvwdelch</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_337_16" TARGET="main">Mvwin</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1613_16" TARGET="main">Mvwinch</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1638_16" TARGET="main">Mvwinsch</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1678_16" TARGET="main">Mvwinsnstr</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_805_16" TARGET="main">M_Post - terminal_interface-curses-forms.adb:805</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_312_16" TARGET="main">M_Post - terminal_interface-curses-menus.adb:312</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_568_16" TARGET="main">M_Scale - terminal_interface-curses-forms.adb:568</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_420_16" TARGET="main">M_Scale - terminal_interface-curses-menus.adb:420</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_807_16" TARGET="main">M_Unpost - terminal_interface-curses-forms.adb:807</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_314_16" TARGET="main">M_Unpost - terminal_interface-curses-menus.adb:314</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/N.htm
---- ncurses-5.9/doc/html/ada/funcs/N.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/N.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,35 +1,39 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>N</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>N</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - N</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_269_14" TARGET="main">Name - terminal_interface-curses-menus.ads:269</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_272_14" TARGET="main">Name - terminal_interface-curses-menus.ads:272</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2330_16" TARGET="main">Napms</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1808_14" TARGET="main">Nap_Milli_Seconds</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_116_16" TARGET="main">Newfield</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_804_16" TARGET="main">NewForm</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_98_16" TARGET="main">Newitem</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_939_16" TARGET="main">Newmenu</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1427_16" TARGET="main">Newpad</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_263_14" TARGET="main">Name - terminal_interface-curses-menus.ads:263</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_266_14" TARGET="main">Name - terminal_interface-curses-menus.ads:266</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2347_16" TARGET="main">Napms</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1976_14" TARGET="main">Nap_Milli_Seconds</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_99_16" TARGET="main">Newfield</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_707_16" TARGET="main">NewForm</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_80_16" TARGET="main">Newitem</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_824_16" TARGET="main">Newmenu</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1434_16" TARGET="main">Newpad</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_51_16" TARGET="main">Newpanel</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_234_16" TARGET="main">Newwin</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_222_13" TARGET="main">New_Fieldtype</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_235_16" TARGET="main">Newwin</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_223_13" TARGET="main">New_Fieldtype</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_86_14" TARGET="main">New_Line - terminal_interface-curses-text_io.ads:86</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_87_14" TARGET="main">New_Line - terminal_interface-curses-text_io.ads:87</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1269_13" TARGET="main">New_Pad</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1437_13" TARGET="main">New_Pad</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_89_14" TARGET="main">New_Page - terminal_interface-curses-text_io.ads:89</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_90_14" TARGET="main">New_Page - terminal_interface-curses-text_io.ads:90</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_193_13" TARGET="main">Next_Router</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_947_16" TARGET="main">NL</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_773_16" TARGET="main">NoCbreak</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_902_16" TARGET="main">Nodelay</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_811_16" TARGET="main">NoEcho</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_949_16" TARGET="main">NoNL</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_792_16" TARGET="main">NoRaw</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_935_16" TARGET="main">Notimeout</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_885_17" TARGET="main">No_Qiflush</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_423_13" TARGET="main">Number_Of_Colors</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_426_13" TARGET="main">Number_Of_Color_Pairs</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_194_13" TARGET="main">Next_Router</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_949_16" TARGET="main">NL</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_774_16" TARGET="main">NoCbreak</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_903_16" TARGET="main">Nodelay</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_812_16" TARGET="main">NoEcho</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_951_16" TARGET="main">NoNL</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_793_16" TARGET="main">NoRaw</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_936_16" TARGET="main">Notimeout</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_886_17" TARGET="main">No_Qiflush</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_559_13" TARGET="main">Number_Of_Colors</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_562_13" TARGET="main">Number_Of_Color_Pairs</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/O.htm
---- ncurses-5.9/doc/html/ada/funcs/O.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/O.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,12 +1,16 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>O</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>O</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - O</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
- <LI><A HREF="../terminal_interface-curses-text_io-aux__adb.htm#ref_59_17" TARGET="main">Output</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1196_14" TARGET="main">Overlay - terminal_interface-curses.ads:1196</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1310_16" TARGET="main">Overlay - terminal_interface-curses.adb:1310</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1190_14" TARGET="main">Overwrite - terminal_interface-curses.ads:1190</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1298_16" TARGET="main">Overwrite - terminal_interface-curses.adb:1298</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1364_14" TARGET="main">Overlay - terminal_interface-curses.ads:1364</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1317_16" TARGET="main">Overlay - terminal_interface-curses.adb:1317</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1358_14" TARGET="main">Overwrite - terminal_interface-curses.ads:1358</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1305_16" TARGET="main">Overwrite - terminal_interface-curses.adb:1305</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/P.htm
---- ncurses-5.9/doc/html/ada/funcs/P.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/P.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,36 +1,40 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>P</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>P</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - P</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_476_14" TARGET="main">Pad_Character - terminal_interface-curses-forms.ads:476</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_494_14" TARGET="main">Pad_Character - terminal_interface-curses-menus.ads:494</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_744_13" TARGET="main">Page</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_473_14" TARGET="main">Pad_Character - terminal_interface-curses-forms.ads:473</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_488_14" TARGET="main">Pad_Character - terminal_interface-curses-menus.ads:488</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_741_13" TARGET="main">Page</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_80_13" TARGET="main">Page_Length - terminal_interface-curses-text_io.ads:80</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_81_13" TARGET="main">Page_Length - terminal_interface-curses-text_io.ads:81</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2167_16" TARGET="main">Paircontent</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1721_14" TARGET="main">Pair_Content</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2182_16" TARGET="main">Paircontent</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1889_14" TARGET="main">Pair_Content</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_144_16" TARGET="main">Panel_Hidden</A>
- <LI><A HREF="../terminal_interface-curses-panels-user_data__adb.htm#ref_65_16" TARGET="main">Panel_Userptr</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_105_16" TARGET="main">Panel_Win</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_531_14" TARGET="main">Pattern</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1531_16" TARGET="main">Pechochar</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1354_13" TARGET="main">Peek - terminal_interface-curses.ads:1354</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1360_13" TARGET="main">Peek - terminal_interface-curses.ads:1360</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1416_14" TARGET="main">Peek - terminal_interface-curses.ads:1416</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1425_14" TARGET="main">Peek - terminal_interface-curses.ads:1425</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1440_14" TARGET="main">Peek - terminal_interface-curses.ads:1440</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1449_14" TARGET="main">Peek - terminal_interface-curses.ads:1449</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1506_16" TARGET="main">Pnoutrefresh</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_687_14" TARGET="main">Position_Cursor - terminal_interface-curses-forms.ads:687</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_398_14" TARGET="main">Position_Cursor - terminal_interface-curses-menus.ads:398</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_676_14" TARGET="main">Post - terminal_interface-curses-forms.ads:676</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_326_14" TARGET="main">Post - terminal_interface-curses-menus.ads:326</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_941_16" TARGET="main">Pos_Form_Cursor</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_499_16" TARGET="main">Pos_Menu_Cursor</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1476_16" TARGET="main">Prefresh</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_201_13" TARGET="main">Prev_Router</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_525_14" TARGET="main">Pattern</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1540_16" TARGET="main">Pechochar</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1522_13" TARGET="main">Peek - terminal_interface-curses.ads:1522</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1528_13" TARGET="main">Peek - terminal_interface-curses.ads:1528</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1584_14" TARGET="main">Peek - terminal_interface-curses.ads:1584</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1593_14" TARGET="main">Peek - terminal_interface-curses.ads:1593</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1608_14" TARGET="main">Peek - terminal_interface-curses.ads:1608</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1617_14" TARGET="main">Peek - terminal_interface-curses.ads:1617</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1514_16" TARGET="main">Pnoutrefresh</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_684_14" TARGET="main">Position_Cursor - terminal_interface-curses-forms.ads:684</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_392_14" TARGET="main">Position_Cursor - terminal_interface-curses-menus.ads:392</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_673_14" TARGET="main">Post - terminal_interface-curses-forms.ads:673</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_320_14" TARGET="main">Post - terminal_interface-curses-menus.ads:320</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_826_16" TARGET="main">Pos_Form_Cursor</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_433_16" TARGET="main">Pos_Menu_Cursor</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1483_16" TARGET="main">Prefresh</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_202_13" TARGET="main">Prev_Router</A>
- <LI><A HREF="../terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14" TARGET="main">Put - terminal_interface-curses-text_io-complex_io.ads:54</A>
- <LI><A HREF="../terminal_interface-curses-text_io-complex_io__ads.htm#ref_61_14" TARGET="main">Put - terminal_interface-curses-text_io-complex_io.ads:61</A>
- <LI><A HREF="../terminal_interface-curses-text_io-decimal_io__ads.htm#ref_50_14" TARGET="main">Put - terminal_interface-curses-text_io-decimal_io.ads:50</A>
-Index: doc/html/ada/funcs/Q.htm
---- ncurses-5.9/doc/html/ada/funcs/Q.htm 2007-05-05 20:35:19.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/Q.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,8 +1,12 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>Q</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>Q</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - Q</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_883_17" TARGET="main">Qiflush</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_884_17" TARGET="main">Qiflush</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/R.htm
---- ncurses-5.9/doc/html/ada/funcs/R.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/R.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,39 +1,43 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>R</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>R</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - R</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_790_16" TARGET="main">Raw</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_593_14" TARGET="main">Redefine - terminal_interface-curses-forms.ads:593</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_617_14" TARGET="main">Redefine - terminal_interface-curses-menus.ads:617</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1061_14" TARGET="main">Redraw - terminal_interface-curses.ads:1061</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1065_14" TARGET="main">Redraw - terminal_interface-curses.ads:1065</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1090_16" TARGET="main">Redrawwin</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1047_14" TARGET="main">Refresh - terminal_interface-curses.ads:1047</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1285_14" TARGET="main">Refresh - terminal_interface-curses.ads:1285</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1514_14" TARGET="main">Refresh_Soft_Label_Keys</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1519_14" TARGET="main">Refresh_Soft_Label_Keys_Without_Update</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1054_14" TARGET="main">Refresh_Without_Update - terminal_interface-curses.ads:1054</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1297_14" TARGET="main">Refresh_Without_Update - terminal_interface-curses.ads:1297</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_97_14" TARGET="main">Register_Reportable_Event</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_106_14" TARGET="main">Register_Reportable_Events</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_791_16" TARGET="main">Raw</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_590_14" TARGET="main">Redefine - terminal_interface-curses-forms.ads:590</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_611_14" TARGET="main">Redefine - terminal_interface-curses-menus.ads:611</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1229_14" TARGET="main">Redraw - terminal_interface-curses.ads:1229</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1233_14" TARGET="main">Redraw - terminal_interface-curses.ads:1233</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1093_16" TARGET="main">Redrawwin</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1215_14" TARGET="main">Refresh - terminal_interface-curses.ads:1215</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1453_14" TARGET="main">Refresh - terminal_interface-curses.ads:1453</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1682_14" TARGET="main">Refresh_Soft_Label_Keys</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1687_14" TARGET="main">Refresh_Soft_Label_Keys_Without_Update</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1222_14" TARGET="main">Refresh_Without_Update - terminal_interface-curses.ads:1222</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1465_14" TARGET="main">Refresh_Without_Update - terminal_interface-curses.ads:1465</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_93_14" TARGET="main">Register_Reportable_Event</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_102_14" TARGET="main">Register_Reportable_Events</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_14" TARGET="main">Release</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_111_14" TARGET="main">Replace</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_110_14" TARGET="main">Replace</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_119_16" TARGET="main">Replace_Pan</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_277_14" TARGET="main">Request_Name - terminal_interface-curses-forms.ads:277</A>
- <LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_280_14" TARGET="main">Request_Name - terminal_interface-curses-forms.ads:280</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_283_14" TARGET="main">Request_Name - terminal_interface-curses-forms.ads:283</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_106_14" TARGET="main">Request_Name - terminal_interface-curses-menus.ads:106</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_109_14" TARGET="main">Request_Name - terminal_interface-curses-menus.ads:109</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_80_16" TARGET="main">Request_Name - terminal_interface-curses-menus.adb:80</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_88_16" TARGET="main">Request_Name - terminal_interface-curses-menus.adb:88</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2295_16" TARGET="main">Resetty</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1767_14" TARGET="main">Reset_Curses_Mode</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2267_16" TARGET="main">Reset_Prog_Mode</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2269_16" TARGET="main">Reset_Shell_Mode</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1778_14" TARGET="main">Reset_Terminal_State</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1913_14" TARGET="main">Resize</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1540_14" TARGET="main">Restore_Soft_Label_Keys</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2306_16" TARGET="main">Ripoffline</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1791_14" TARGET="main">Rip_Off_Lines</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_101_14" TARGET="main">Request_Name - terminal_interface-curses-menus.ads:101</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_104_14" TARGET="main">Request_Name - terminal_interface-curses-menus.ads:104</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_62_16" TARGET="main">Request_Name - terminal_interface-curses-menus.adb:62</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_70_16" TARGET="main">Request_Name - terminal_interface-curses-menus.adb:70</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2312_16" TARGET="main">Resetty</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1935_14" TARGET="main">Reset_Curses_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2284_16" TARGET="main">Reset_Prog_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2286_16" TARGET="main">Reset_Shell_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1946_14" TARGET="main">Reset_Terminal_State</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2083_14" TARGET="main">Resize</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1708_14" TARGET="main">Restore_Soft_Label_Keys</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2323_16" TARGET="main">Ripoffline</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1959_14" TARGET="main">Rip_Off_Lines</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/S.htm
---- ncurses-5.9/doc/html/ada/funcs/S.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/S.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,54 +1,58 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>S</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>S</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - S</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2285_16" TARGET="main">Savetty</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1761_14" TARGET="main">Save_Curses_Mode</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1773_14" TARGET="main">Save_Terminal_State</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_531_14" TARGET="main">Scale - terminal_interface-curses-forms.ads:531</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_387_14" TARGET="main">Scale - terminal_interface-curses-menus.ads:387</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1869_14" TARGET="main">Screen_Dump_To_File</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1877_14" TARGET="main">Screen_Init_From_File</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1873_14" TARGET="main">Screen_Restore_From_File</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1881_14" TARGET="main">Screen_Set_File</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1324_14" TARGET="main">Scroll</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1024_13" TARGET="main">Scrolling_Allowed</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1024_16" TARGET="main">Scrollok</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2302_16" TARGET="main">Savetty</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1929_14" TARGET="main">Save_Curses_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1941_14" TARGET="main">Save_Terminal_State</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_528_14" TARGET="main">Scale - terminal_interface-curses-forms.ads:528</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_381_14" TARGET="main">Scale - terminal_interface-curses-menus.ads:381</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2039_14" TARGET="main">Screen_Dump_To_File</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2047_14" TARGET="main">Screen_Init_From_File</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2043_14" TARGET="main">Screen_Restore_From_File</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2051_14" TARGET="main">Screen_Set_File</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1492_14" TARGET="main">Scroll</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1192_13" TARGET="main">Scrolling_Allowed</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1026_16" TARGET="main">Scrollok</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2490_16" TARGET="main">scr_dump</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2516_16" TARGET="main">scr_init</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2503_16" TARGET="main">scr_restore</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2529_16" TARGET="main">scr_set</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_450_14" TARGET="main">Set_Background - terminal_interface-curses-forms.ads:450</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_447_14" TARGET="main">Set_Background - terminal_interface-curses-menus.ads:447</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1110_14" TARGET="main">Set_Background - terminal_interface-curses.ads:1110</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_358_14" TARGET="main">Set_Buffer</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_888_14" TARGET="main">Set_Cbreak_Mode</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_819_14" TARGET="main">Set_Character_Attributes</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_447_14" TARGET="main">Set_Background - terminal_interface-curses-forms.ads:447</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_441_14" TARGET="main">Set_Background - terminal_interface-curses-menus.ads:441</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1278_14" TARGET="main">Set_Background - terminal_interface-curses.ads:1278</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_355_14" TARGET="main">Set_Buffer</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1056_14" TARGET="main">Set_Cbreak_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_987_14" TARGET="main">Set_Character_Attributes</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_92_14" TARGET="main">Set_Col - terminal_interface-curses-text_io.ads:92</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_93_14" TARGET="main">Set_Col - terminal_interface-curses-text_io.ads:93</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_840_14" TARGET="main">Set_Color</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_727_14" TARGET="main">Set_Current - terminal_interface-curses-forms.ads:727</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_292_14" TARGET="main">Set_Current - terminal_interface-curses-menus.ads:292</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_1026_16" TARGET="main">Set_Current_Fld</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_287_16" TARGET="main">Set_Curr_Item</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1803_14" TARGET="main">Set_Cursor_Visibility</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_900_14" TARGET="main">Set_Echo_Mode</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_966_14" TARGET="main">Set_Escape_Timer_Mode</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_599_14" TARGET="main">Set_Fields</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_227_13" TARGET="main">Set_Fieldtype_Arg</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_234_13" TARGET="main">Set_Fieldtype_Choice</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_448_16" TARGET="main">Set_Field_Back</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_404_16" TARGET="main">Set_Field_Fore</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_665_16" TARGET="main">Set_Field_Init</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_545_14" TARGET="main">Set_Field_Init_Hook</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_196_16" TARGET="main">Set_Field_Just</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_310_16" TARGET="main">Set_Field_Max</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_330_16" TARGET="main">Set_Field_Opts</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_490_16" TARGET="main">Set_Field_Pad</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_681_16" TARGET="main">Set_Field_Term</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_551_14" TARGET="main">Set_Field_Term_Hook</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1008_14" TARGET="main">Set_Color</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_724_14" TARGET="main">Set_Current - terminal_interface-curses-forms.ads:724</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_286_14" TARGET="main">Set_Current - terminal_interface-curses-menus.ads:286</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_905_16" TARGET="main">Set_Current_Fld</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_251_16" TARGET="main">Set_Curr_Item</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1971_14" TARGET="main">Set_Cursor_Visibility</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1068_14" TARGET="main">Set_Echo_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1134_14" TARGET="main">Set_Escape_Timer_Mode</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_596_14" TARGET="main">Set_Fields</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_228_13" TARGET="main">Set_Fieldtype_Arg</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_235_13" TARGET="main">Set_Fieldtype_Choice</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_395_16" TARGET="main">Set_Field_Back</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_356_16" TARGET="main">Set_Field_Fore</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_587_16" TARGET="main">Set_Field_Init</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_542_14" TARGET="main">Set_Field_Init_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_175_16" TARGET="main">Set_Field_Just</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_276_16" TARGET="main">Set_Field_Max</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_293_16" TARGET="main">Set_Field_Opts</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_432_16" TARGET="main">Set_Field_Pad</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_600_16" TARGET="main">Set_Field_Term</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_548_14" TARGET="main">Set_Field_Term_Hook</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_14" TARGET="main">Set_Field_Type - terminal_interface-curses-forms-field_types-alpha.ads:49</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_14" TARGET="main">Set_Field_Type - terminal_interface-curses-forms-field_types-alphanumeric.ads:50</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_14" TARGET="main">Set_Field_Type - terminal_interface-curses-forms-field_types-enumeration.ads:84</A>
-@@ -58,8 +62,8 @@
- <LI><A HREF="../terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_14" TARGET="main">Set_Field_Type - terminal_interface-curses-forms-field_types-regexp.ads:51</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_14" TARGET="main">Set_Field_Type - terminal_interface-curses-forms-field_types-user.ads:70</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16" TARGET="main">Set_Field_Userptr</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_231_16" TARGET="main">Set_Fld_Buffer</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_278_16" TARGET="main">Set_Fld_Status</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_205_16" TARGET="main">Set_Fld_Buffer</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_245_16" TARGET="main">Set_Fld_Status</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16" TARGET="main">Set_Fld_Type - terminal_interface-curses-forms-field_types-alpha.adb:49</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16" TARGET="main">Set_Fld_Type - terminal_interface-curses-forms-field_types-alphanumeric.adb:49</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16" TARGET="main">Set_Fld_Type - terminal_interface-curses-forms-field_types-enumeration.adb:94</A>
-@@ -67,125 +71,125 @@
- <LI><A HREF="../terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_49_16" TARGET="main">Set_Fld_Type - terminal_interface-curses-forms-field_types-ipv4_address.adb:49</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16" TARGET="main">Set_Fld_Type - terminal_interface-curses-forms-field_types-numeric.adb:52</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16" TARGET="main">Set_Fld_Type - terminal_interface-curses-forms-field_types-user.adb:53</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#ref_134_16" TARGET="main">Set_Fld_Type - terminal_interface-curses-forms-field_types.adb:134</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_930_14" TARGET="main">Set_Flush_On_Interrupt_Mode</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_430_14" TARGET="main">Set_Foreground - terminal_interface-curses-forms.ads:430</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_427_14" TARGET="main">Set_Foreground - terminal_interface-curses-menus.ads:427</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_541_14" TARGET="main">Set_Format</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_697_16" TARGET="main">Set_Form_Init</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_557_14" TARGET="main">Set_Form_Init_Hook</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_845_16" TARGET="main">Set_Form_Opts</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_613_16" TARGET="main">Set_Form_Sub</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_713_16" TARGET="main">Set_Form_Term</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_563_14" TARGET="main">Set_Form_Term_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__adb.htm#ref_133_16" TARGET="main">Set_Fld_Type - terminal_interface-curses-forms-field_types.adb:133</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1098_14" TARGET="main">Set_Flush_On_Interrupt_Mode</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_427_14" TARGET="main">Set_Foreground - terminal_interface-curses-forms.ads:427</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_421_14" TARGET="main">Set_Foreground - terminal_interface-curses-menus.ads:421</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_535_14" TARGET="main">Set_Format</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_613_16" TARGET="main">Set_Form_Init</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_554_14" TARGET="main">Set_Form_Init_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_745_16" TARGET="main">Set_Form_Opts</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_541_16" TARGET="main">Set_Form_Sub</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_626_16" TARGET="main">Set_Form_Term</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_560_14" TARGET="main">Set_Form_Term_Hook</A>
- <LI><A HREF="../terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16" TARGET="main">Set_Form_Userptr</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_585_16" TARGET="main">Set_Form_Win</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_733_16" TARGET="main">Set_Frm_Fields</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_1056_16" TARGET="main">Set_Frm_Page</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_51_16" TARGET="main">Set_Ftyp</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_467_14" TARGET="main">Set_Grey</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_622_14" TARGET="main">Set_Items - terminal_interface-curses-menus.ads:622</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_893_16" TARGET="main">Set_Items - terminal_interface-curses-menus.adb:893</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_805_16" TARGET="main">Set_Item_Init</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_569_14" TARGET="main">Set_Item_Init_Hook</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_194_16" TARGET="main">Set_Item_Opts</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_819_16" TARGET="main">Set_Item_Term</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_575_14" TARGET="main">Set_Item_Term_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_516_16" TARGET="main">Set_Form_Win</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_643_16" TARGET="main">Set_Frm_Fields</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_932_16" TARGET="main">Set_Frm_Page</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_49_16" TARGET="main">Set_Ftyp</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_461_14" TARGET="main">Set_Grey</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_616_14" TARGET="main">Set_Items - terminal_interface-curses-menus.ads:616</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_782_16" TARGET="main">Set_Items - terminal_interface-curses-menus.adb:782</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_706_16" TARGET="main">Set_Item_Init</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_563_14" TARGET="main">Set_Item_Init_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_169_16" TARGET="main">Set_Item_Opts</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_717_16" TARGET="main">Set_Item_Term</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_569_14" TARGET="main">Set_Item_Term_Hook</A>
- <LI><A HREF="../terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16" TARGET="main">Set_Item_Userptr</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_155_16" TARGET="main">Set_Item_Val</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_343_14" TARGET="main">Set_Justification</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_912_14" TARGET="main">Set_KeyPad_Mode</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_133_16" TARGET="main">Set_Item_Val</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_340_14" TARGET="main">Set_Justification</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1080_14" TARGET="main">Set_KeyPad_Mode</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_95_14" TARGET="main">Set_Line - terminal_interface-curses-text_io.ads:95</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_96_14" TARGET="main">Set_Line - terminal_interface-curses-text_io.ads:96</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_407_14" TARGET="main">Set_Mark - terminal_interface-curses-menus.ads:407</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_514_16" TARGET="main">Set_Mark - terminal_interface-curses-menus.adb:514</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_391_14" TARGET="main">Set_Maximum_Size</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_591_16" TARGET="main">Set_Menu_Back</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_768_16" TARGET="main">Set_Menu_Fmt</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_552_16" TARGET="main">Set_Menu_Fore</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_629_16" TARGET="main">Set_Menu_Grey</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_833_16" TARGET="main">Set_Menu_Init</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_581_14" TARGET="main">Set_Menu_Init_Hook</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_374_16" TARGET="main">Set_Menu_Opts</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_667_16" TARGET="main">Set_Menu_Pad</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_457_16" TARGET="main">Set_Menu_Sub</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_847_16" TARGET="main">Set_Menu_Term</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_587_14" TARGET="main">Set_Menu_Term_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_401_14" TARGET="main">Set_Mark - terminal_interface-curses-menus.ads:401</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_445_16" TARGET="main">Set_Mark - terminal_interface-curses-menus.adb:445</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_388_14" TARGET="main">Set_Maximum_Size</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_515_16" TARGET="main">Set_Menu_Back</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_675_16" TARGET="main">Set_Menu_Fmt</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_479_16" TARGET="main">Set_Menu_Fore</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_550_16" TARGET="main">Set_Menu_Grey</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_728_16" TARGET="main">Set_Menu_Init</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_575_14" TARGET="main">Set_Menu_Init_Hook</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_328_16" TARGET="main">Set_Menu_Opts</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_585_16" TARGET="main">Set_Menu_Pad</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_397_16" TARGET="main">Set_Menu_Sub</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_739_16" TARGET="main">Set_Menu_Term</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_581_14" TARGET="main">Set_Menu_Term_Hook</A>
- <LI><A HREF="../terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16" TARGET="main">Set_Menu_Userptr</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_433_16" TARGET="main">Set_Menu_Win</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_906_14" TARGET="main">Set_Meta_Mode</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_761_14" TARGET="main">Set_New_Page</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_977_14" TARGET="main">Set_NL_Mode</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_945_14" TARGET="main">Set_NoDelay_Mode</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_401_14" TARGET="main">Set_Options - terminal_interface-curses-forms.ads:401</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_648_14" TARGET="main">Set_Options - terminal_interface-curses-forms.ads:648</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_240_14" TARGET="main">Set_Options - terminal_interface-curses-menus.ads:240</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_337_14" TARGET="main">Set_Options - terminal_interface-curses-menus.ads:337</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_470_14" TARGET="main">Set_Pad_Character - terminal_interface-curses-forms.ads:470</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_488_14" TARGET="main">Set_Pad_Character - terminal_interface-curses-menus.ads:488</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_738_14" TARGET="main">Set_Page - terminal_interface-curses-forms.ads:738</A>
--<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_1105_16" TARGET="main">Set_Page - terminal_interface-curses-forms.adb:1105</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_376_16" TARGET="main">Set_Menu_Win</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1074_14" TARGET="main">Set_Meta_Mode</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_758_14" TARGET="main">Set_New_Page</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1145_14" TARGET="main">Set_NL_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1113_14" TARGET="main">Set_NoDelay_Mode</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_398_14" TARGET="main">Set_Options - terminal_interface-curses-forms.ads:398</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_645_14" TARGET="main">Set_Options - terminal_interface-curses-forms.ads:645</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_234_14" TARGET="main">Set_Options - terminal_interface-curses-menus.ads:234</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_331_14" TARGET="main">Set_Options - terminal_interface-curses-menus.ads:331</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_467_14" TARGET="main">Set_Pad_Character - terminal_interface-curses-forms.ads:467</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_482_14" TARGET="main">Set_Pad_Character - terminal_interface-curses-menus.ads:482</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_735_14" TARGET="main">Set_Page - terminal_interface-curses-forms.ads:735</A>
-+<LI><A HREF="../terminal_interface-curses-forms__adb.htm#ref_978_16" TARGET="main">Set_Page - terminal_interface-curses-forms.adb:978</A>
- <LI><A HREF="../terminal_interface-curses-panels-user_data__adb.htm#ref_54_16" TARGET="main">Set_Panel_Userptr</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_524_13" TARGET="main">Set_Pattern - terminal_interface-curses-menus.ads:524</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_736_16" TARGET="main">Set_Pattern - terminal_interface-curses-menus.adb:736</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_937_14" TARGET="main">Set_Queue_Interrupt_Mode</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_894_14" TARGET="main">Set_Raw_Mode</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1029_14" TARGET="main">Set_Scroll_Region</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1507_14" TARGET="main">Set_Soft_Label_Key</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1558_14" TARGET="main">Set_Soft_Label_Key_Attributes</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1574_14" TARGET="main">Set_Soft_Label_Key_Color</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_504_14" TARGET="main">Set_Spacing - terminal_interface-curses-menus.ads:504</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_693_16" TARGET="main">Set_Spacing - terminal_interface-curses-menus.adb:693</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_380_14" TARGET="main">Set_Status</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_520_14" TARGET="main">Set_Sub_Window - terminal_interface-curses-forms.ads:520</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_376_14" TARGET="main">Set_Sub_Window - terminal_interface-curses-menus.ads:376</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_645_14" TARGET="main">Set_Synch_Mode</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_954_14" TARGET="main">Set_Timeout_Mode</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_314_16" TARGET="main">Set_Toprow</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_303_14" TARGET="main">Set_Top_Row</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_518_13" TARGET="main">Set_Pattern - terminal_interface-curses-menus.ads:518</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_643_16" TARGET="main">Set_Pattern - terminal_interface-curses-menus.adb:643</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1105_14" TARGET="main">Set_Queue_Interrupt_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1062_14" TARGET="main">Set_Raw_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1197_14" TARGET="main">Set_Scroll_Region</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1675_14" TARGET="main">Set_Soft_Label_Key</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1726_14" TARGET="main">Set_Soft_Label_Key_Attributes</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1742_14" TARGET="main">Set_Soft_Label_Key_Color</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_498_14" TARGET="main">Set_Spacing - terminal_interface-curses-menus.ads:498</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_607_16" TARGET="main">Set_Spacing - terminal_interface-curses-menus.adb:607</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_377_14" TARGET="main">Set_Status</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_517_14" TARGET="main">Set_Sub_Window - terminal_interface-curses-forms.ads:517</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_370_14" TARGET="main">Set_Sub_Window - terminal_interface-curses-menus.ads:370</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_813_14" TARGET="main">Set_Synch_Mode</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1122_14" TARGET="main">Set_Timeout_Mode</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_275_16" TARGET="main">Set_Toprow</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_297_14" TARGET="main">Set_Top_Row</A>
- <LI><A HREF="../terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_14" TARGET="main">Set_User_Data - terminal_interface-curses-forms-field_user_data.ads:53</A>
- <LI><A HREF="../terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_14" TARGET="main">Set_User_Data - terminal_interface-curses-forms-form_user_data.ads:53</A>
- <LI><A HREF="../terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_14" TARGET="main">Set_User_Data - terminal_interface-curses-menus-item_user_data.ads:58</A>
- <LI><A HREF="../terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_14" TARGET="main">Set_User_Data - terminal_interface-curses-menus-menu_user_data.ads:53</A>
- <LI><A HREF="../terminal_interface-curses-panels-user_data__ads.htm#ref_53_14" TARGET="main">Set_User_Data - terminal_interface-curses-panels-user_data.ads:53</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_216_14" TARGET="main">Set_Value</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_509_14" TARGET="main">Set_Window - terminal_interface-curses-forms.ads:509</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_365_14" TARGET="main">Set_Window - terminal_interface-curses-menus.ads:365</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_210_14" TARGET="main">Set_Value</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_506_14" TARGET="main">Set_Window - terminal_interface-curses-forms.ads:506</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_359_14" TARGET="main">Set_Window - terminal_interface-curses-menus.ads:359</A>
- <LI><A HREF="../terminal_interface-curses-text_io__ads.htm#ref_59_14" TARGET="main">Set_Window - terminal_interface-curses-text_io.ads:59</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_87_14" TARGET="main">Show</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_86_14" TARGET="main">Show</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_85_16" TARGET="main">Showpanel</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1955_16" TARGET="main">Slk_Attr - terminal_interface-curses.adb:1955</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1965_16" TARGET="main">Slk_Attr - terminal_interface-curses.adb:1965</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1919_16" TARGET="main">Slk_Attroff</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1917_16" TARGET="main">Slk_Attron</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1941_16" TARGET="main">Slk_Attrset</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1885_16" TARGET="main">Slk_Clear</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1975_16" TARGET="main">Slk_Color</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1819_16" TARGET="main">Slk_Init</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1869_16" TARGET="main">Slk_Label - terminal_interface-curses.adb:1869</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1877_16" TARGET="main">Slk_Label - terminal_interface-curses.adb:1877</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1858_16" TARGET="main">Slk_Noutrefresh</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1848_16" TARGET="main">Slk_Refresh</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1895_16" TARGET="main">Slk_Restore</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1831_16" TARGET="main">Slk_Set</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1905_16" TARGET="main">Slk_Touch</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_512_14" TARGET="main">Spacing</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_478_13" TARGET="main">Standard_Window</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_802_14" TARGET="main">Standout</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1709_14" TARGET="main">Start_Color</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_119_13" TARGET="main">Start_Mouse</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1446_16" TARGET="main">Subpad</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_270_16" TARGET="main">Subwin</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1275_13" TARGET="main">Sub_Pad</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_596_13" TARGET="main">Sub_Window</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1674_13" TARGET="main">Supported_Attributes</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_808_14" TARGET="main">Switch_Character_Attribute</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_407_14" TARGET="main">Switch_Options - terminal_interface-curses-forms.ads:407</A>
--<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_654_14" TARGET="main">Switch_Options - terminal_interface-curses-forms.ads:654</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_246_14" TARGET="main">Switch_Options - terminal_interface-curses-menus.ads:246</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_343_14" TARGET="main">Switch_Options - terminal_interface-curses-menus.ads:343</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1550_14" TARGET="main">Switch_Soft_Label_Key_Attributes</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_640_14" TARGET="main">Synchronize_Downwards</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_635_14" TARGET="main">Synchronize_Upwards</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_363_16" TARGET="main">Syncok</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1967_16" TARGET="main">Slk_Attr - terminal_interface-curses.adb:1967</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1977_16" TARGET="main">Slk_Attr - terminal_interface-curses.adb:1977</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1931_16" TARGET="main">Slk_Attroff</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1929_16" TARGET="main">Slk_Attron</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1953_16" TARGET="main">Slk_Attrset</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1897_16" TARGET="main">Slk_Clear</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1987_16" TARGET="main">Slk_Color</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1830_16" TARGET="main">Slk_Init</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1881_16" TARGET="main">Slk_Label - terminal_interface-curses.adb:1881</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1889_16" TARGET="main">Slk_Label - terminal_interface-curses.adb:1889</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1870_16" TARGET="main">Slk_Noutrefresh</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1860_16" TARGET="main">Slk_Refresh</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1907_16" TARGET="main">Slk_Restore</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1842_16" TARGET="main">Slk_Set</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1917_16" TARGET="main">Slk_Touch</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_506_14" TARGET="main">Spacing</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_644_13" TARGET="main">Standard_Window</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_970_14" TARGET="main">Standout</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1877_14" TARGET="main">Start_Color</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_115_13" TARGET="main">Start_Mouse</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1453_16" TARGET="main">Subpad</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_271_16" TARGET="main">Subwin</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1443_13" TARGET="main">Sub_Pad</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_764_13" TARGET="main">Sub_Window</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1842_13" TARGET="main">Supported_Attributes</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_976_14" TARGET="main">Switch_Character_Attribute</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_404_14" TARGET="main">Switch_Options - terminal_interface-curses-forms.ads:404</A>
-+<LI><A HREF="../terminal_interface-curses-forms__ads.htm#ref_651_14" TARGET="main">Switch_Options - terminal_interface-curses-forms.ads:651</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_240_14" TARGET="main">Switch_Options - terminal_interface-curses-menus.ads:240</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_337_14" TARGET="main">Switch_Options - terminal_interface-curses-menus.ads:337</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1718_14" TARGET="main">Switch_Soft_Label_Key_Attributes</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_808_14" TARGET="main">Synchronize_Downwards</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_803_14" TARGET="main">Synchronize_Upwards</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_364_16" TARGET="main">Syncok</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/T.htm
---- ncurses-5.9/doc/html/ada/funcs/T.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/T.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,15 +1,20 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>T</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>T</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - T</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_420_13" TARGET="main">Tab_Size</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2100_16" TARGET="main">Termattrs</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1689_14" TARGET="main">Terminal_Name - terminal_interface-curses.ads:1689</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1693_13" TARGET="main">Terminal_Name - terminal_interface-curses.ads:1693</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2126_16" TARGET="main">Termname - terminal_interface-curses.adb:2126</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2134_16" TARGET="main">Termname - terminal_interface-curses.adb:2134</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2373_16" TARGET="main">TABSIZE_As_Function</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_556_13" TARGET="main">Tab_Size</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2113_16" TARGET="main">Termattrs</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1857_14" TARGET="main">Terminal_Name - terminal_interface-curses.ads:1857</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1861_13" TARGET="main">Terminal_Name - terminal_interface-curses.ads:1861</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2139_16" TARGET="main">Termname - terminal_interface-curses.adb:2139</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2147_16" TARGET="main">Termname - terminal_interface-curses.adb:2147</A>
- <LI><A HREF="../terminal_interface-curses-termcap__adb.htm#ref_51_16" TARGET="main">tgetent</A>
- <LI><A HREF="../terminal_interface-curses-termcap__adb.htm#ref_71_16" TARGET="main">tgetflag</A>
- <LI><A HREF="../terminal_interface-curses-termcap__adb.htm#ref_89_16" TARGET="main">tgetnum</A>
-@@ -21,16 +26,16 @@
- <LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#ref_87_16" TARGET="main">tigetstr - terminal_interface-curses-terminfo.adb:87</A>
- <LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#ref_108_16" TARGET="main">tigetstr - terminal_interface-curses-terminfo.adb:108</A>
- <LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#ref_127_16" TARGET="main">tigetstr - terminal_interface-curses-terminfo.adb:127</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_82_14" TARGET="main">Top</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_81_14" TARGET="main">Top</A>
- <LI><A HREF="../terminal_interface-curses-panels__adb.htm#ref_75_16" TARGET="main">Toppanel</A>
--<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_327_16" TARGET="main">Toprow</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_309_13" TARGET="main">Top_Row</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1143_14" TARGET="main">Touch - terminal_interface-curses.ads:1143</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1147_14" TARGET="main">Touch - terminal_interface-curses.ads:1147</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1545_14" TARGET="main">Touch_Soft_Label_Keys</A>
-+<LI><A HREF="../terminal_interface-curses-menus__adb.htm#ref_285_16" TARGET="main">Toprow</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_303_13" TARGET="main">Top_Row</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1311_14" TARGET="main">Touch - terminal_interface-curses.ads:1311</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1315_14" TARGET="main">Touch - terminal_interface-curses.ads:1315</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1713_14" TARGET="main">Touch_Soft_Label_Keys</A>
- <LI><A HREF="../terminal_interface-curses-terminfo__adb.htm#ref_140_16" TARGET="main">tputs</A>
--<LI><A HREF="../terminal_interface-curses-trace__ads.htm#ref_106_14" TARGET="main">Trace_On</A>
--<LI><A HREF="../terminal_interface-curses-trace__ads.htm#ref_110_14" TARGET="main">Trace_Put</A>
-+<LI><A HREF="../terminal_interface-curses-trace__ads.htm#ref_114_14" TARGET="main">Trace_On</A>
-+<LI><A HREF="../terminal_interface-curses-trace__ads.htm#ref_118_14" TARGET="main">Trace_Put</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2403_16" TARGET="main">Transform</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1816_14" TARGET="main">Transform_Coordinates</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1984_14" TARGET="main">Transform_Coordinates</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/U.htm
---- ncurses-5.9/doc/html/ada/funcs/U.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/U.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,23 +1,27 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>U</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>U</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - U</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2016_16" TARGET="main">Unctrl - terminal_interface-curses.adb:2016</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2024_16" TARGET="main">Unctrl - terminal_interface-curses.adb:2024</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_764_14" TARGET="main">Undo_Keystroke</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_537_16" TARGET="main">Ungetch</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_2029_16" TARGET="main">Unctrl - terminal_interface-curses.adb:2029</A>
-+<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_932_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_186_16" TARGET="main">Ungetmouse</A>
--<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_145_14" TARGET="main">Unget_Mouse</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1138_14" TARGET="main">Untouch</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1624_14" TARGET="main">Un_Control - terminal_interface-curses.ads:1624</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1629_13" TARGET="main">Un_Control - terminal_interface-curses.ads:1629</A>
--<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_92_14" TARGET="main">Update_Panels</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1042_14" TARGET="main">Update_Screen</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1833_14" TARGET="main">Use_Default_Colors</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1853_13" TARGET="main">Use_Extended_Names</A>
-+<LI><A HREF="../terminal_interface-curses-mouse__ads.htm#ref_141_14" TARGET="main">Unget_Mouse</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1306_14" TARGET="main">Untouch</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1792_14" TARGET="main">Un_Control - terminal_interface-curses.ads:1792</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1797_13" TARGET="main">Un_Control - terminal_interface-curses.ads:1797</A>
-+<LI><A HREF="../terminal_interface-curses-panels__ads.htm#ref_91_14" TARGET="main">Update_Panels</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1210_14" TARGET="main">Update_Screen</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2003_14" TARGET="main">Use_Default_Colors</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_2023_13" TARGET="main">Use_Extended_Names</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2475_16" TARGET="main">use_extended_namesC</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_997_14" TARGET="main">Use_Insert_Delete_Character</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_990_14" TARGET="main">Use_Insert_Delete_Line</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1165_14" TARGET="main">Use_Insert_Delete_Character</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_1158_14" TARGET="main">Use_Insert_Delete_Line</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/V.htm
---- ncurses-5.9/doc/html/ada/funcs/V.htm 2011-03-19 23:18:38.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/V.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,11 +1,15 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>V</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>V</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - V</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
- <LI><A HREF="../terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_13" TARGET="main">Value - terminal_interface-curses-forms-field_types-enumeration-ada.ads:53</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_222_13" TARGET="main">Value - terminal_interface-curses-menus.ads:222</A>
--<LI><A HREF="../terminal_interface-curses__ads.htm#ref_739_14" TARGET="main">Vertical_Line</A>
--<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_231_13" TARGET="main">Visible</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_216_13" TARGET="main">Value - terminal_interface-curses-menus.ads:216</A>
-+<LI><A HREF="../terminal_interface-curses__ads.htm#ref_907_14" TARGET="main">Vertical_Line</A>
-+<LI><A HREF="../terminal_interface-curses-menus__ads.htm#ref_225_13" TARGET="main">Visible</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/funcs/W.htm
---- ncurses-5.9/doc/html/ada/funcs/W.htm 2011-03-26 21:54:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/funcs/W.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,53 +1,57 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>W</TITLE></HEAD>
-+<HTML>
-+<HEAD>
-+<TITLE>W</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <BODY>
- <H2>Functions - W</H2>
- <A HREF="../funcs.htm" TARGET="_self">[index]</A>
- <UL COMPACT TYPE=DISC>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_151_16" TARGET="main">Waddch</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_407_16" TARGET="main">Waddchnstr</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_376_16" TARGET="main">Waddnstr</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_655_16" TARGET="main">Wattrget - terminal_interface-curses.adb:655</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_408_16" TARGET="main">Waddchnstr</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_377_16" TARGET="main">Waddnstr</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_657_16" TARGET="main">Wattrget - terminal_interface-curses.adb:657</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_678_16" TARGET="main">Wattrget - terminal_interface-curses.adb:678</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_614_16" TARGET="main">Wattroff</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_611_16" TARGET="main">Wattron</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_639_16" TARGET="main">Wattrset</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1159_17" TARGET="main">WBackground</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_448_16" TARGET="main">Wborder</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1169_16" TARGET="main">WChangeBkgd</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_719_16" TARGET="main">Wchgat</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1127_16" TARGET="main">Wclear</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1137_16" TARGET="main">Wclearbot</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1147_16" TARGET="main">Wcleareol</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1567_16" TARGET="main">Wdelch</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_254_16" TARGET="main">Wdelwin</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_208_16" TARGET="main">Wechochar</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_617_16" TARGET="main">Wattroff</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_614_16" TARGET="main">Wattron</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_642_16" TARGET="main">Wattrset</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1163_17" TARGET="main">WBackground</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_450_16" TARGET="main">Wborder</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1173_16" TARGET="main">WChangeBkgd</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_718_16" TARGET="main">Wchgat</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1131_16" TARGET="main">Wclear</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1141_16" TARGET="main">Wclearbot</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1151_16" TARGET="main">Wcleareol</A>
-+<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_197_16" TARGET="main">Wenclose</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1117_16" TARGET="main">Werase</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1180_16" TARGET="main">Wgetbkgd</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_523_16" TARGET="main">Wgetch</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1779_16" TARGET="main">Wgetnstr</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_490_16" TARGET="main">Whline</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1593_16" TARGET="main">Winch</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1731_16" TARGET="main">Winchnstr</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1689_16" TARGET="main">Winnstr</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1615_16" TARGET="main">Winsch</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1323_16" TARGET="main">Winsdelln</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1647_16" TARGET="main">Winsnstr</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1235_16" TARGET="main">WLineTouched</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>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1790_16" TARGET="main">Wgetnstr</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_491_16" TARGET="main">Whline</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1602_16" TARGET="main">Winch</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1742_16" TARGET="main">Winchnstr</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1700_16" TARGET="main">Winnstr</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1624_16" TARGET="main">Winsch</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1330_16" TARGET="main">Winsdelln</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1657_16" TARGET="main">Winsnstr</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1241_16" TARGET="main">WLineTouched</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_137_16" TARGET="main">Wmove</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1080_16" TARGET="main">Wnoutrefresh</A>
--<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_151_14" TARGET="main">Wrap_Builtin</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1103_16" TARGET="main">Wredrawln</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1069_16" TARGET="main">Wrefresh</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1083_16" TARGET="main">Wnoutrefresh</A>
-+<LI><A HREF="../terminal_interface-curses-forms-field_types__ads.htm#ref_152_14" TARGET="main">Wrap_Builtin</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1106_16" TARGET="main">Wredrawln</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1072_16" TARGET="main">Wrefresh</A>
- <LI><A HREF="../terminal_interface-curses__adb.htm#ref_2543_16" TARGET="main">wresize</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1555_16" TARGET="main">Wscrl</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1046_16" TARGET="main">Wsetscrreg</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_701_16" TARGET="main">Wset_Color</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_591_16" TARGET="main">wstandend</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_589_16" TARGET="main">wstandout</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_914_17" TARGET="main">Wtimeout</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1191_16" TARGET="main">Wtouchln</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_507_16" TARGET="main">Wvline</A>
--<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1248_16" TARGET="main">WWinTouched</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1564_16" TARGET="main">Wscrl</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1048_16" TARGET="main">Wsetscrreg</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_699_16" TARGET="main">Wset_Color</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_594_16" TARGET="main">wstandend</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_592_16" TARGET="main">wstandout</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_915_17" TARGET="main">Wtimeout</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1196_16" TARGET="main">Wtouchln</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_509_16" TARGET="main">Wvline</A>
-+<LI><A HREF="../terminal_interface-curses__adb.htm#ref_1254_16" TARGET="main">WWinTouched</A>
- </UL></BODY></HTML>
-Index: doc/html/ada/index.htm
---- ncurses-5.9/doc/html/ada/index.htm 2005-05-14 16:28:37.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/index.htm 2013-05-18 21:41:06.000000000 +0000
-@@ -1,6 +1,9 @@
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
- <HTML>
--<HEAD><TITLE>Source Browser</TITLE></HEAD>
-+<HEAD>
-+<TITLE>Source Browser</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+</HEAD>
- <FRAMESET COLS="250,*">
- <NOFRAMES>
- <H2 ALIGN=CENTER>Files</H2>
-Index: doc/html/ada/main.htm
---- ncurses-5.9/doc/html/ada/main.htm 2011-02-25 23:43:50.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/main.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,5 +1,17 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE></TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE></TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
- <P ALIGN=right><A HREF="main.htm" TARGET="_top">[No frame version is here]</A><P><H2 ALIGN=CENTER>Files</H2>
- <A HREF="files/T.htm">[T]</A>
-@@ -64,6 +76,7 @@
- <LI><A HREF="terminal_interface-curses-text_io__ads.htm">terminal_interface-curses-text_io.ads</A>
- <LI><A HREF="terminal_interface-curses-trace__ads.htm">terminal_interface-curses-trace.ads</A>
- <LI><A HREF="terminal_interface-curses__ads.htm">terminal_interface-curses.ads</A>
-+<LI><A HREF="terminal_interface-curses_constants__ads.htm">terminal_interface-curses_constants.ads</A>
- <LI><A HREF="terminal_interface__ads.htm">terminal_interface.ads</A>
- </UL>
- </BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-aux__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-aux__adb.htm 2011-03-19 23:18:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-aux__adb.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,122 +1,134 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-aux.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-aux.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-aux.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-aux.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Aux --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_41_40" HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A></FONT> <b>is</b>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>-- Some helpers</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_44_14" HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A></FONT> (<FONT COLOR=red><A NAME="ref_44_27" HREF="terminal_interface-curses-aux__ads.htm#ref_116_27">Cp</A></FONT> : chars_ptr;
-- <FONT COLOR=red><A NAME="ref_45_27" HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A></FONT> : <b>out</b> String)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Aux --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_41_40" HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A></span> <b>is</b>
-+ <span class="comment"><EM>--</EM></span>
-+ <span class="comment"><EM>-- Some helpers</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_44_14" HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A></span> (<span class="symbol"><A NAME="ref_44_27" HREF="terminal_interface-curses-aux__ads.htm#ref_92_27">Cp</A></span> : chars_ptr;
-+ <span class="symbol"><A NAME="ref_45_27" HREF="terminal_interface-curses-aux__ads.htm#ref_93_27">Str</A></span> : <b>out</b> String)
- <b>is</b>
-- <FONT COLOR=green><EM>-- Fill the string with the characters referenced by the</EM></FONT>
-- <FONT COLOR=green><EM>-- chars_ptr.</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_50_7">Len</A></FONT> : Natural;
-+ <span class="comment"><EM>-- Fill the string with the characters referenced by the</EM></span>
-+ <span class="comment"><EM>-- chars_ptr.</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <span class="symbol"><A NAME="ref_50_7">Len</A></span> : Natural;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_27">Cp</A> /= Null_Ptr <b>then</b>
-- <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#ref_116_27">Cp</A>));
-- <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A>'Length &lt; <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_27">Cp</A> /= Null_Ptr <b>then</b>
-+ <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#ref_92_27">Cp</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_27">Str</A>'Length &lt; <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
- <b>declare</b>
-- <FONT COLOR=red><A NAME="ref_58_13">S</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A>);
-+ <span class="symbol"><A NAME="ref_58_13">S</A></span> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A>);
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__adb.htm#ref_58_13">S</A> := Value (<A HREF="terminal_interface-curses-aux__ads.htm#ref_116_27">Cp</A>);
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A>'First .. (<A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A>'First + <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> - 1)) := <A HREF="terminal_interface-curses-aux__adb.htm#ref_58_13">S</A> (<A HREF="terminal_interface-curses-aux__adb.htm#ref_58_13">S</A>'<b>Range</b>);
-+ <A HREF="terminal_interface-curses-aux__adb.htm#ref_58_13">S</A> := Value (<A HREF="terminal_interface-curses-aux__ads.htm#ref_92_27">Cp</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_27">Str</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_93_27">Str</A>'First .. (<A HREF="terminal_interface-curses-aux__ads.htm#ref_93_27">Str</A>'First + <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> - 1)) := <A HREF="terminal_interface-curses-aux__adb.htm#ref_58_13">S</A> (<A HREF="terminal_interface-curses-aux__adb.htm#ref_58_13">S</A>'<b>Range</b>);
- <b>end</b>;
- <b>else</b>
- <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> := 0;
- <b>end</b> <b>if</b>;
-
-- <b>if</b> <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> &lt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A>'Length <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A> ((<A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A>'First + <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A>) .. <A HREF="terminal_interface-curses-aux__ads.htm#ref_117_27">Str</A>'Last) := (<b>others</b> =&gt; ' ');
-+ <b>if</b> <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A> &lt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_27">Str</A>'Length <b>then</b>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_27">Str</A> ((<A HREF="terminal_interface-curses-aux__ads.htm#ref_93_27">Str</A>'First + <A HREF="terminal_interface-curses-aux__adb.htm#ref_50_7">Len</A>) .. <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_27">Str</A>'Last) := (<b>others</b> =&gt; ' ');
- <b>end</b> <b>if</b>;
-
-- <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_73_13" HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A></FONT> (<FONT COLOR=red><A NAME="ref_73_26" HREF="terminal_interface-curses-aux__ads.htm#ref_121_26">Cp</A></FONT> : chars_ptr) <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_73_13" HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A></span> (<span class="symbol"><A NAME="ref_73_26" HREF="terminal_interface-curses-aux__ads.htm#ref_97_26">Cp</A></span> : chars_ptr) <b>return</b> String
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_75_7">Len</A></FONT> : Natural;
-+ <span class="symbol"><A NAME="ref_75_7">Len</A></span> : Natural;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_26">Cp</A> /= Null_Ptr <b>then</b>
-- <A HREF="terminal_interface-curses-aux__adb.htm#ref_75_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#ref_121_26">Cp</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_26">Cp</A> /= Null_Ptr <b>then</b>
-+ <A HREF="terminal_interface-curses-aux__adb.htm#ref_75_7">Len</A> := Natural (Strlen (<A HREF="terminal_interface-curses-aux__ads.htm#ref_97_26">Cp</A>));
- <b>if</b> <A HREF="terminal_interface-curses-aux__adb.htm#ref_75_7">Len</A> = 0 <b>then</b>
- <b>return</b> "";
- <b>else</b>
- <b>declare</b>
-- <FONT COLOR=red><A NAME="ref_83_16">S</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#ref_75_7">Len</A>);
-+ <span class="symbol"><A NAME="ref_83_16">S</A></span> : String (1 .. <A HREF="terminal_interface-curses-aux__adb.htm#ref_75_7">Len</A>);
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_121_26">Cp</A>, <A HREF="terminal_interface-curses-aux__adb.htm#ref_83_16">S</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_97_26">Cp</A>, <A HREF="terminal_interface-curses-aux__adb.htm#ref_83_16">S</A>);
- <b>return</b> <A HREF="terminal_interface-curses-aux__adb.htm#ref_83_16">S</A>;
- <b>end</b>;
- <b>end</b> <b>if</b>;
- <b>else</b>
- <b>return</b> "";
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_94_14" HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A></FONT> (<FONT COLOR=red><A NAME="ref_94_29" HREF="terminal_interface-curses-aux__ads.htm#ref_96_29">Code</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_94_14" HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A></span> (<span class="symbol"><A NAME="ref_94_29" HREF="terminal_interface-curses-aux__ads.htm#ref_88_29">Code</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>)
- <b>is</b>
- <b>begin</b>
-- <b>case</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_29">Code</A> <b>is</b>
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> =&gt; <b>null</b>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_81_4">E_System_Error</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_391_4">Eti_System_Error</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_82_4">E_Bad_Argument</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_392_4">Eti_Bad_Argument</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_83_4">E_Posted</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_393_4">Eti_Posted</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_84_4">E_Connected</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_394_4">Eti_Connected</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_85_4">E_Bad_State</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_395_4">Eti_Bad_State</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_86_4">E_No_Room</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_396_4">Eti_No_Room</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_87_4">E_Not_Posted</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_397_4">Eti_Not_Posted</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_4">E_Unknown_Command</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_398_4">Eti_Unknown_Command</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_89_4">E_No_Match</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_399_4">Eti_No_Match</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_90_4">E_Not_Selectable</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_400_4">Eti_Not_Selectable</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_91_4">E_Not_Connected</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_401_4">Eti_Not_Connected</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_4">E_Request_Denied</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_402_4">Eti_Request_Denied</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_4">E_Invalid_Field</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_403_4">Eti_Invalid_Field</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_94_4">E_Current</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_404_4">Eti_Current</A>;
-+ <b>case</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_29">Code</A> <b>is</b>
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_86_7">E_Ok</A> =&gt; <b>null</b>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_85_7">E_System_Error</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_527_4">Eti_System_Error</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_84_7">E_Bad_Argument</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_528_4">Eti_Bad_Argument</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_83_7">E_Posted</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_529_4">Eti_Posted</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_82_7">E_Connected</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_530_4">Eti_Connected</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_81_7">E_Bad_State</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_531_4">Eti_Bad_State</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_7">E_No_Room</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_532_4">Eti_No_Room</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_79_7">E_Not_Posted</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_533_4">Eti_Not_Posted</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_7">E_Unknown_Command</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_534_4">Eti_Unknown_Command</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_77_7">E_No_Match</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_535_4">Eti_No_Match</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_76_7">E_Not_Selectable</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_536_4">Eti_Not_Selectable</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_7">E_Not_Connected</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_537_4">Eti_Not_Connected</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_74_7">E_Request_Denied</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_538_4">Eti_Request_Denied</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_73_7">E_Invalid_Field</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_539_4">Eti_Invalid_Field</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_7">E_Current</A> =&gt; <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_540_4">Eti_Current</A>;
- <b>end</b> <b>case</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-aux__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-aux__ads.htm 2011-03-19 23:18:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-aux__ads.htm 2014-05-24 22:10:15.000000000 +0000
-@@ -1,130 +1,137 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-aux.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-aux.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-aux.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-aux.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Aux --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.18 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- curses binding.</EM></FONT>
--<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT>
--<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Aux --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.23 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> System;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings;
--<b>with</b> <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A>;
--
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_50_35" HREF="terminal_interface-curses-aux__adb.htm#ref_41_40">Aux</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>);
--
-- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
--
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_55_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_56_12">C_Short</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_57_12">C_Long_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.long;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_58_12">C_Size_T</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.size_t;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_59_12">C_UInt</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.unsigned;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_60_12">C_ULong</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.unsigned_long;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_61_12">C_Char_Ptr</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.chars_ptr;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_62_12">C_Void_Ptr</A></FONT> <b>is</b> <b>new</b> System.Address;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_63_12">C_Chtype</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_60_12">C_ULong</A>;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_64_12">C_AttrType</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_60_12">C_ULong</A>;
--
-- <FONT COLOR=green><EM>-- This is how those constants are defined in ncurses. I see them also</EM></FONT>
-- <FONT COLOR=green><EM>-- exactly like this in all ETI implementations I ever tested. So it</EM></FONT>
-- <FONT COLOR=green><EM>-- could be that this is quite general, but please check with your curses.</EM></FONT>
-- <FONT COLOR=green><EM>-- This is critical, because curses sometime mixes Boolean returns with</EM></FONT>
-- <FONT COLOR=green><EM>-- returning an error status.</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_71_4">Curses_Ok</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := 0;
-- <FONT COLOR=red><A NAME="ref_72_4">Curses_Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -1;
--
-- <FONT COLOR=red><A NAME="ref_74_4">Curses_True</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := 1;
-- <FONT COLOR=red><A NAME="ref_75_4">Curses_False</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := 0;
--
-- <FONT COLOR=green><EM>-- Eti_Error: type for error codes returned by the menu and form subsystem</EM></FONT>
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_78_12">Eti_Error</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> <b>range</b> -14 .. 0;
--
-- <FONT COLOR=red><A NAME="ref_80_4">E_Ok</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := 0;
-- <FONT COLOR=red><A NAME="ref_81_4">E_System_Error</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -1;
-- <FONT COLOR=red><A NAME="ref_82_4">E_Bad_Argument</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -2;
-- <FONT COLOR=red><A NAME="ref_83_4">E_Posted</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -3;
-- <FONT COLOR=red><A NAME="ref_84_4">E_Connected</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -4;
-- <FONT COLOR=red><A NAME="ref_85_4">E_Bad_State</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -5;
-- <FONT COLOR=red><A NAME="ref_86_4">E_No_Room</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -6;
-- <FONT COLOR=red><A NAME="ref_87_4">E_Not_Posted</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -7;
-- <FONT COLOR=red><A NAME="ref_88_4">E_Unknown_Command</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -8;
-- <FONT COLOR=red><A NAME="ref_89_4">E_No_Match</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -9;
-- <FONT COLOR=red><A NAME="ref_90_4">E_Not_Selectable</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -10;
-- <FONT COLOR=red><A NAME="ref_91_4">E_Not_Connected</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -11;
-- <FONT COLOR=red><A NAME="ref_92_4">E_Request_Denied</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -12;
-- <FONT COLOR=red><A NAME="ref_93_4">E_Invalid_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -13;
-- <FONT COLOR=red><A NAME="ref_94_4">E_Current</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := -14;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_96_14" HREF="terminal_interface-curses-aux__adb.htm#ref_94_14">Eti_Exception</A></FONT> (<FONT COLOR=red><A NAME="ref_96_29" HREF="terminal_interface-curses-aux__adb.htm#ref_94_29">Code</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>);
-- <FONT COLOR=green><EM>-- Dispatch the error code and raise the appropriate exception</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>-- Some helpers</EM></FONT>
-- <b>function</b> Chtype_To_AttrChar <b>is</b> <b>new</b>
-- <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>,
-- <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <b>function</b> AttrChar_To_Chtype <b>is</b> <b>new</b>
-- <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>,
-- <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>);
--
-- <b>function</b> AttrChar_To_AttrType <b>is</b> <b>new</b>
-- <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>,
-- <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>);
--
-- <b>function</b> AttrType_To_AttrChar <b>is</b> <b>new</b>
-- <A HREF="unchconv__ads.htm#ref_20_10">Unchecked_Conversion</A> (<A HREF="unchconv__ads.htm#ref_17_9">Source</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>,
-- <A HREF="unchconv__ads.htm#ref_18_9">Target</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_116_14" HREF="terminal_interface-curses-aux__adb.htm#ref_44_14">Fill_String</A></FONT> (<FONT COLOR=red><A NAME="ref_116_27" HREF="terminal_interface-curses-aux__adb.htm#ref_44_27">Cp</A></FONT> : chars_ptr;
-- <FONT COLOR=red><A NAME="ref_117_27" HREF="terminal_interface-curses-aux__adb.htm#ref_45_27">Str</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- Fill the Str parameter with the string denoted by the chars_ptr</EM></FONT>
-- <FONT COLOR=green><EM>-- C-Style string.</EM></FONT>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_121_13" HREF="terminal_interface-curses-aux__adb.htm#ref_73_13">Fill_String</A></FONT> (<FONT COLOR=red><A NAME="ref_121_26" HREF="terminal_interface-curses-aux__adb.htm#ref_73_26">Cp</A></FONT> : chars_ptr) <b>return</b> String;
-- <FONT COLOR=green><EM>-- Same but as function.</EM></FONT>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_45_35" HREF="terminal_interface-curses-aux__adb.htm#ref_41_40">Aux</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_50_12">C_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_51_12">C_Short</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_52_12">C_Long_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.long;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_53_12">C_Size_T</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.size_t;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_54_12">C_UInt</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.unsigned;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_55_12">C_ULong</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.unsigned_long;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_56_12">C_Char_Ptr</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.chars_ptr;
-+ <b>type</b> <span class="symbol"><A NAME="ref_57_12">C_Void_Ptr</A></span> <b>is</b> <b>new</b> System.Address;
-+
-+ <span class="comment"><EM>-- This is how those constants are defined in ncurses. I see them also</EM></span>
-+ <span class="comment"><EM>-- exactly like this in all ETI implementations I ever tested. So it</EM></span>
-+ <span class="comment"><EM>-- could be that this is quite general, but please check with your curses.</EM></span>
-+ <span class="comment"><EM>-- This is critical, because curses sometime mixes Boolean returns with</EM></span>
-+ <span class="comment"><EM>-- returning an error status.</EM></span>
-+ <span class="symbol"><A NAME="ref_64_4">Curses_Ok</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_12_4">OK</A>;
-+ <span class="symbol"><A NAME="ref_65_4">Curses_Err</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_13_4">ERR</A>;
-+
-+ <span class="symbol"><A NAME="ref_67_4">Curses_True</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_15_4">TRUE</A>;
-+ <span class="symbol"><A NAME="ref_68_4">Curses_False</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_16_4">FALSE</A>;
-+
-+ <span class="comment"><EM>-- Eti_Error: type for error codes returned by the menu and form subsystem</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_71_9">Eti_Error</A></span> <b>is</b>
-+ (<span class="symbol"><A NAME="ref_72_7">E_Current</A></span>,
-+ <span class="symbol"><A NAME="ref_73_7">E_Invalid_Field</A></span>,
-+ <span class="symbol"><A NAME="ref_74_7">E_Request_Denied</A></span>,
-+ <span class="symbol"><A NAME="ref_75_7">E_Not_Connected</A></span>,
-+ <span class="symbol"><A NAME="ref_76_7">E_Not_Selectable</A></span>,
-+ <span class="symbol"><A NAME="ref_77_7">E_No_Match</A></span>,
-+ <span class="symbol"><A NAME="ref_78_7">E_Unknown_Command</A></span>,
-+ <span class="symbol"><A NAME="ref_79_7">E_Not_Posted</A></span>,
-+ <span class="symbol"><A NAME="ref_80_7">E_No_Room</A></span>,
-+ <span class="symbol"><A NAME="ref_81_7">E_Bad_State</A></span>,
-+ <span class="symbol"><A NAME="ref_82_7">E_Connected</A></span>,
-+ <span class="symbol"><A NAME="ref_83_7">E_Posted</A></span>,
-+ <span class="symbol"><A NAME="ref_84_7">E_Bad_Argument</A></span>,
-+ <span class="symbol"><A NAME="ref_85_7">E_System_Error</A></span>,
-+ <span class="symbol"><A NAME="ref_86_7">E_Ok</A></span>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_88_14" HREF="terminal_interface-curses-aux__adb.htm#ref_94_14">Eti_Exception</A></span> (<span class="symbol"><A NAME="ref_88_29" HREF="terminal_interface-curses-aux__adb.htm#ref_94_29">Code</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>);
-+ <span class="comment"><EM>-- Do nothing if Code = E_Ok.</EM></span>
-+ <span class="comment"><EM>-- Else dispatch the error code and raise the appropriate exception.</EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_92_14" HREF="terminal_interface-curses-aux__adb.htm#ref_44_14">Fill_String</A></span> (<span class="symbol"><A NAME="ref_92_27" HREF="terminal_interface-curses-aux__adb.htm#ref_44_27">Cp</A></span> : chars_ptr;
-+ <span class="symbol"><A NAME="ref_93_27" HREF="terminal_interface-curses-aux__adb.htm#ref_45_27">Str</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- Fill the Str parameter with the string denoted by the chars_ptr</EM></span>
-+ <span class="comment"><EM>-- C-Style string.</EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_97_13" HREF="terminal_interface-curses-aux__adb.htm#ref_73_13">Fill_String</A></span> (<span class="symbol"><A NAME="ref_97_26" HREF="terminal_interface-curses-aux__adb.htm#ref_73_26">Cp</A></span> : chars_ptr) <b>return</b> String;
-+ <span class="comment"><EM>-- Same but as function.</EM></span>
-+
-+<b>private</b>
-+ <b>for</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>'Size <b>use</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>'Size;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>);
-+ <b>for</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A> <b>use</b>
-+ (<A HREF="terminal_interface-curses-aux__ads.htm#ref_72_7">E_Current</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_94_4">E_CURRENT</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_73_7">E_Invalid_Field</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_93_4">E_INVALID_FIELD</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_74_7">E_Request_Denied</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_92_4">E_REQUEST_DENIED</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_7">E_Not_Connected</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_91_4">E_NOT_CONNECTED</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_76_7">E_Not_Selectable</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_90_4">E_NOT_SELECTABLE</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_77_7">E_No_Match</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_89_4">E_NO_MATCH</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_7">E_Unknown_Command</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_88_4">E_UNKNOWN_COMMAND</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_79_7">E_Not_Posted</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_87_4">E_NOT_POSTED</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_7">E_No_Room</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_86_4">E_NO_ROOM</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_81_7">E_Bad_State</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_85_4">E_BAD_STATE</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_82_7">E_Connected</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_84_4">E_CONNECTED</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_83_7">E_Posted</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_83_4">E_POSTED</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_84_7">E_Bad_Argument</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_82_4">E_BAD_ARGUMENT</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_85_7">E_System_Error</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_81_4">E_SYSTEM_ERROR</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_86_7">E_Ok</A> =&gt; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_80_4">E_OK</A>);
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm 2011-03-19 23:18:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,68 +1,76 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-alpha.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-alpha.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-alpha.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-alpha.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Alpha --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Alpha --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.13 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A></span> <b>is</b>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_50_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_44_9">Alpha_Field</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_50_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_44_9">Alpha_Field</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_49_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A>;
-- <FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_49_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A>;
-+ <span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_alpha");
-
-- <FONT COLOR=red><A NAME="ref_53_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_53_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_50_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_50_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_46_9">Minimum_Field_Width</A>));
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_53_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_53_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_50_30">Typ</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_49_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_50_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_50_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_46_9">Minimum_Field_Width</A>)));
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_50_30">Typ</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_49_14">Set_Field_Type</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-alpha__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,59 +1,71 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-alpha.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-alpha.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-alpha.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-alpha.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Alpha --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_44_58">Alpha</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A>);
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Alpha --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_44_58">Alpha</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A>);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9">Alpha_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>
-+ <b>type</b> <span class="symbol"><A NAME="ref_44_9">Alpha_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A>
- <b>with</b> <b>record</b>
-- <FONT COLOR=red><A NAME="ref_46_9">Minimum_Field_Width</A></FONT> : Natural := 0;
-+ <span class="symbol"><A NAME="ref_46_9">Minimum_Field_Width</A></span> : Natural := 0;
- <b>end</b> <b>record</b>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_44_9">Alpha_Field</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alpha__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_44_9">Alpha_Field</A>);
- <b>pragma</b> Inline (Set_Field_Type);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alpha__ads.htm#ref_41_53">Alpha</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm 2011-03-19 23:18:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,68 +1,76 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-alphanumeric.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-alphanumeric.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-alphanumeric.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-alphanumeric.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.13 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A></span> <b>is</b>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_51_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_45_9">AlphaNumeric_Field</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_51_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_45_9">AlphaNumeric_Field</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_49_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A>;
-- <FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_49_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A>;
-+ <span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_alnum");
-
-- <FONT COLOR=red><A NAME="ref_53_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_53_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_50_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_51_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_47_9">Minimum_Field_Width</A>));
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_53_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_53_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_51_30">Typ</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_49_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_50_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_51_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_47_9">Minimum_Field_Width</A>)));
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_51_30">Typ</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_50_14">Set_Field_Type</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-alphanumeric__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,60 +1,72 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-alphanumeric.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-alphanumeric.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-alphanumeric.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-alphanumeric.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_44_58">AlphaNumeric</A></FONT> <b>is</b>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.AlphaNumeric --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_44_58">AlphaNumeric</A></span> <b>is</b>
- <b>pragma</b> Preelaborate
-- (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A>);
-+ (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A>);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_45_9">AlphaNumeric_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>
-+ <b>type</b> <span class="symbol"><A NAME="ref_45_9">AlphaNumeric_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A>
- <b>with</b> <b>record</b>
-- <FONT COLOR=red><A NAME="ref_47_9">Minimum_Field_Width</A></FONT> : Natural := 0;
-+ <span class="symbol"><A NAME="ref_47_9">Minimum_Field_Width</A></span> : Natural := 0;
- <b>end</b> <b>record</b>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_45_9">AlphaNumeric_Field</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-alphanumeric__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_45_9">AlphaNumeric_Field</A>);
- <b>pragma</b> Inline (Set_Field_Type);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-alphanumeric__ads.htm#ref_41_53">AlphaNumeric</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,68 +1,80 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-enumeration-ada.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-enumeration-ada.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-enumeration-ada.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-enumeration-ada.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2004,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:36:20 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2004,2011 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2011/03/22 23:36:20 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Characters.Handling; <b>use</b> Ada.Characters.Handling;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<FONT COLOR=red><A NAME="ref_44_70" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<span class="symbol"><A NAME="ref_44_70" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A></span> <b>is</b>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_46_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_46_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_21">Set</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A>;
-- <FONT COLOR=red><A NAME="ref_47_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_49_21">Case_Sensitive</A></FONT> : Boolean := False;
-- <FONT COLOR=red><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_50_21">Must_Be_Unique</A></FONT> : Boolean := False)
-+ <b>function</b> <span class="symbol"><A NAME="ref_46_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_13">Create</A></span> (<span class="symbol"><A NAME="ref_46_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_21">Set</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A>;
-+ <span class="symbol"><A NAME="ref_47_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_49_21">Case_Sensitive</A></span> : Boolean := False;
-+ <span class="symbol"><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_50_21">Must_Be_Unique</A></span> : Boolean := False)
- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_51_7">I</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Last) - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'First) + 1);
-- <FONT COLOR=red><A NAME="ref_52_7">J</A></FONT> : Positive := 1;
-+ <span class="symbol"><A NAME="ref_51_7">I</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Last) - <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'First) + 1);
-+ <span class="symbol"><A NAME="ref_52_7">J</A></span> : Positive := 1;
- <b>begin</b>
- <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_58_10">Case_Sensitive</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_49_21">Case_Sensitive</A>;
- <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_59_10">Match_Must_Be_Unique</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_50_21">Must_Be_Unique</A>;
-
-- <b>for</b> <FONT COLOR=red><A NAME="ref_57_11">E</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'<b>Range</b> <b>loop</b>
-+ <b>for</b> <span class="symbol"><A NAME="ref_57_11">E</A></span> <b>in</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'<b>Range</b> <b>loop</b>
- <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_52_7">J</A>) := <b>new</b> String'(<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Image (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_57_11">E</A>));
-- <FONT COLOR=green><EM>-- The Image attribute defaults to upper case, so we have to handle</EM></FONT>
-- <FONT COLOR=green><EM>-- only the other ones...</EM></FONT>
-+ <span class="comment"><EM>-- The Image attribute defaults to upper case, so we have to handle</EM></span>
-+ <span class="comment"><EM>-- only the other ones...</EM></span>
- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_21">Set</A> /= <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_34">Upper_Case</A> <b>then</b>
- <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_52_7">J</A>).<b>all</b> := To_Lower (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_52_7">J</A>).<b>all</b>);
- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_21">Set</A> = <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A> <b>then</b>
-@@ -76,12 +88,12 @@
- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_51_7">I</A>, True);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_48_13">Create</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_74_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_13">Value</A></FONT> (<FONT COLOR=red><A NAME="ref_74_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_75_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_54_20">Buf</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_74_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_13">Value</A></span> (<span class="symbol"><A NAME="ref_74_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_75_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_54_20">Buf</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>
- <b>is</b>
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Value (<A HREF="terminal_interface-curses-forms__ads.htm#ref_372_13">Get_Buffer</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_20">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_54_20">Buf</A>));
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>'Value (<A HREF="terminal_interface-curses-forms__ads.htm#ref_369_13">Get_Buffer</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_20">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_54_20">Buf</A>));
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_53_13">Value</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm 2011-03-19 23:18:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,65 +1,77 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-enumeration-ada.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-enumeration-ada.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-enumeration-ada.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-enumeration-ada.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.10 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration.Ada --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.10 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">T</A></FONT> <b>is</b> (&lt;&gt;);
-+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">T</A></span> <b>is</b> (&lt;&gt;);
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<FONT COLOR=red><A NAME="ref_44_65" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_44_70">Ada</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<span class="symbol"><A NAME="ref_44_65" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_44_70">Ada</A></span> <b>is</b>
- <b>pragma</b> Preelaborate
-- (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A>);
-+ (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A>);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_48_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_46_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_46_21">Set</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A>;
-- <FONT COLOR=red><A NAME="ref_49_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_47_21">Case_Sensitive</A></FONT> : Boolean := False;
-- <FONT COLOR=red><A NAME="ref_50_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_48_21">Must_Be_Unique</A></FONT> : Boolean := False)
-+ <b>function</b> <span class="symbol"><A NAME="ref_48_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_46_13">Create</A></span> (<span class="symbol"><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_46_21">Set</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_9">Type_Set</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_50_46">Mixed_Case</A>;
-+ <span class="symbol"><A NAME="ref_49_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_47_21">Case_Sensitive</A></span> : Boolean := False;
-+ <span class="symbol"><A NAME="ref_50_21" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_48_21">Must_Be_Unique</A></span> : Boolean := False)
- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_53_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_74_13">Value</A></FONT> (<FONT COLOR=red><A NAME="ref_53_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_74_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_54_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_75_20">Buf</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>;
-- <FONT COLOR=green><EM>-- Translate the content of the fields buffer - indicated by the</EM></FONT>
-- <FONT COLOR=green><EM>-- buffer number - into an enumeration value. If the buffer is empty</EM></FONT>
-- <FONT COLOR=green><EM>-- or the content is invalid, a Constraint_Error is raises.</EM></FONT>
-+ <b>function</b> <span class="symbol"><A NAME="ref_53_13" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_74_13">Value</A></span> (<span class="symbol"><A NAME="ref_53_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_74_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_54_20" HREF="terminal_interface-curses-forms-field_types-enumeration-ada__adb.htm#ref_75_20">Buf</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_42_9">T</A>;
-+ <span class="comment"><EM>-- Translate the content of the fields buffer - indicated by the</EM></span>
-+ <span class="comment"><EM>-- buffer number - into an enumeration value. If the buffer is empty</EM></span>
-+ <span class="comment"><EM>-- or the content is invalid, a Constraint_Error is raises.</EM></span>
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration-ada__ads.htm#ref_44_65">Ada</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,72 +1,84 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-enumeration.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-enumeration.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-enumeration.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-enumeration.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.10 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Unchecked_Deallocation;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_46_58" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_46_58" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A></span> <b>is</b>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_48_13" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>;
-- <FONT COLOR=red><A NAME="ref_49_21" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_65_21">Auto_Release_Names</A></FONT> : Boolean := False)
-+ <b>function</b> <span class="symbol"><A NAME="ref_48_13" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A></span> (<span class="symbol"><A NAME="ref_48_21" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>;
-+ <span class="symbol"><A NAME="ref_49_21" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_65_21">Auto_Release_Names</A></span> : Boolean := False)
- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>
- <b>is</b>
- <b>procedure</b> Release_String <b>is</b>
- <b>new</b> Ada.Unchecked_Deallocation (String,
- <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_47_9">String_Access</A>);
-- <FONT COLOR=red><A NAME="ref_55_7">E</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>;
-- <FONT COLOR=red><A NAME="ref_56_7">L</A></FONT> : <b>constant</b> size_t := 1 + size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_27">C</A>);
-- <FONT COLOR=red><A NAME="ref_57_7">S</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_47_9">String_Access</A>;
-+ <span class="symbol"><A NAME="ref_55_7">E</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>;
-+ <span class="symbol"><A NAME="ref_56_7">L</A></span> : <b>constant</b> size_t := 1 + size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_27">C</A>);
-+ <span class="symbol"><A NAME="ref_57_7">S</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_47_9">String_Access</A>;
- <b>begin</b>
- <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_93_10">Case_Sensitive</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_58_10">Case_Sensitive</A>;
- <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_94_10">Match_Must_Be_Unique</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_59_10">Match_Must_Be_Unique</A>;
- <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A> := <b>new</b> chars_ptr_array (size_t (1) .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_56_7">L</A>);
-- <b>for</b> <FONT COLOR=red><A NAME="ref_62_11">I</A></FONT> <b>in</b> 1 .. Positive (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_56_7">L</A> - 1) <b>loop</b>
-+ <b>for</b> <span class="symbol"><A NAME="ref_62_11">I</A></span> <b>in</b> 1 .. Positive (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_56_7">L</A> - 1) <b>loop</b>
- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_62_11">I</A>) = <b>null</b> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>end</b> <b>if</b>;
- <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A>.<b>all</b> (size_t (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_62_11">I</A>)) := New_String (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_21">Info</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_57_10">Names</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_62_11">I</A>).<b>all</b>);
- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_65_21">Auto_Release_Names</A> <b>then</b>
-@@ -78,10 +90,10 @@
- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_55_7">E</A>;
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_76_14" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_14">Release</A></FONT> (<FONT COLOR=red><A NAME="ref_76_23" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_23">Enum</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_76_14" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_14">Release</A></span> (<span class="symbol"><A NAME="ref_76_23" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_23">Enum</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_78_7">I</A></FONT> : size_t := 0;
-- <FONT COLOR=red><A NAME="ref_79_7">P</A></FONT> : chars_ptr;
-+ <span class="symbol"><A NAME="ref_78_7">I</A></span> : size_t := 0;
-+ <span class="symbol"><A NAME="ref_79_7">P</A></span> : chars_ptr;
- <b>begin</b>
- <b>loop</b>
- <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_79_7">P</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_78_7">I</A>);
-@@ -93,29 +105,26 @@
- <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_23">Enum</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A> := <b>null</b>;
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_77_14">Release</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_91_14" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_91_30" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_92_30" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_91_14" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_91_30" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_92_30" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_94_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_94_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A>;
-- <FONT COLOR=red><A NAME="ref_95_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg1</A></FONT> : chars_ptr_array;
-- <FONT COLOR=red><A NAME="ref_96_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg2</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_97_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg3</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_94_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_94_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A>;
-+ <span class="symbol"><A NAME="ref_95_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg1</A></span> : chars_ptr_array;
-+ <span class="symbol"><A NAME="ref_96_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg2</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_97_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Arg3</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_enum");
-
-- <FONT COLOR=red><A NAME="ref_100_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A> = <b>null</b> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_100_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_95_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A>.<b>all</b>,
-- <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_96_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_93_10">Case_Sensitive</A>)),
-- <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_97_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (Boolean'Pos
-- (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_94_10">Match_Must_Be_Unique</A>)));
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_100_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_100_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Choice_Router</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A>
-+ (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_94_16">Set_Fld_Type</A>
-+ (<A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_95_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_95_10">Arr</A>.<b>all</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_96_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_93_10">Case_Sensitive</A>)),
-+ <A HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_97_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_94_10">Match_Must_Be_Unique</A>))));
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_85_30">Typ</A>, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_150_13">C_Choice_Router</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_84_14">Set_Field_Type</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm 2011-02-25 23:43:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,104 +1,116 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-enumeration.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-enumeration.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-enumeration.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-enumeration.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Enumeration --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_43_53" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_46_58">Enumeration</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_43_53" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_46_58">Enumeration</A></span> <b>is</b>
- <b>pragma</b> Preelaborate
-- (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>);
-+ (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_47_9">String_Access</A></FONT> <b>is</b> <b>access</b> String;
-+ <b>type</b> <span class="symbol"><A NAME="ref_47_9">String_Access</A></span> <b>is</b> <b>access</b> String;
-
-- <FONT COLOR=green><EM>-- Type_Set is used by the child package Ada</EM></FONT>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_50_9">Type_Set</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_50_22">Lower_Case</A></FONT>, <FONT COLOR=red><A NAME="ref_50_34">Upper_Case</A></FONT>, <FONT COLOR=red><A NAME="ref_50_46">Mixed_Case</A></FONT>);
-+ <span class="comment"><EM>-- Type_Set is used by the child package Ada</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_50_9">Type_Set</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_50_22">Lower_Case</A></span>, <span class="symbol"><A NAME="ref_50_34">Upper_Case</A></span>, <span class="symbol"><A NAME="ref_50_46">Mixed_Case</A></span>);
-
- <b>type</b> Enum_Array <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;)
- <b>of</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_47_9">String_Access</A>;
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_55_9">Enumeration_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_55_27" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">C</A></FONT> : Positive) <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_55_9">Enumeration_Info</A></span> (<span class="symbol"><A NAME="ref_55_27" HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">C</A></span> : Positive) <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_57_10">Names</A></FONT> : Enum_Array (1 .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_27">C</A>);
-- <FONT COLOR=red><A NAME="ref_58_10">Case_Sensitive</A></FONT> : Boolean := False;
-- <FONT COLOR=red><A NAME="ref_59_10">Match_Must_Be_Unique</A></FONT> : Boolean := False;
-+ <span class="symbol"><A NAME="ref_57_10">Names</A></span> : Enum_Array (1 .. <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_27">C</A>);
-+ <span class="symbol"><A NAME="ref_58_10">Case_Sensitive</A></span> : Boolean := False;
-+ <span class="symbol"><A NAME="ref_59_10">Match_Must_Be_Unique</A></span> : Boolean := False;
- <b>end</b> <b>record</b>;
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_62_9">Enumeration_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_62_9">Enumeration_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A> <b>with</b> <b>private</b>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_48_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_64_21" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_48_21">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>;
-- <FONT COLOR=red><A NAME="ref_65_21" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_49_21">Auto_Release_Names</A></FONT> : Boolean := False)
-+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_48_13">Create</A></span> (<span class="symbol"><A NAME="ref_64_21" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_48_21">Info</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>;
-+ <span class="symbol"><A NAME="ref_65_21" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_49_21">Auto_Release_Names</A></span> : Boolean := False)
- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>;
-- <FONT COLOR=green><EM>-- Make an fieldtype from the info. Enumerations are special, because</EM></FONT>
-- <FONT COLOR=green><EM>-- they normally don't copy the enum values into a private store, so</EM></FONT>
-- <FONT COLOR=green><EM>-- we have to care for the lifetime of the info we provide.</EM></FONT>
-- <FONT COLOR=green><EM>-- The Auto_Release_Names flag may be used to automatically releases</EM></FONT>
-- <FONT COLOR=green><EM>-- the strings in the Names array of the Enumeration_Info.</EM></FONT>
-+ <span class="comment"><EM>-- Make an fieldtype from the info. Enumerations are special, because</EM></span>
-+ <span class="comment"><EM>-- they normally don't copy the enum values into a private store, so</EM></span>
-+ <span class="comment"><EM>-- we have to care for the lifetime of the info we provide.</EM></span>
-+ <span class="comment"><EM>-- The Auto_Release_Names flag may be used to automatically releases</EM></span>
-+ <span class="comment"><EM>-- the strings in the Names array of the Enumeration_Info.</EM></span>
-
-- <b>function</b> Make_Enumeration_Type (<FONT COLOR=red><A NAME="ref_73_36">Info</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>;
-- <FONT COLOR=red><A NAME="ref_74_36">Auto_Release_Names</A></FONT> : Boolean := False)
-+ <b>function</b> Make_Enumeration_Type (<span class="symbol"><A NAME="ref_73_36">Info</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_55_9">Enumeration_Info</A>;
-+ <span class="symbol"><A NAME="ref_74_36">Auto_Release_Names</A></span> : Boolean := False)
- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A> <b>renames</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_64_13">Create</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_77_14" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_76_14">Release</A></FONT> (<FONT COLOR=red><A NAME="ref_77_23" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_76_23">Enum</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>);
-- <FONT COLOR=green><EM>-- But we may want to release the field to release the memory allocated</EM></FONT>
-- <FONT COLOR=green><EM>-- by it internally. After that the Enumeration field is no longer usable.</EM></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_77_14" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_76_14">Release</A></span> (<span class="symbol"><A NAME="ref_77_23" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_76_23">Enum</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>);
-+ <span class="comment"><EM>-- But we may want to release the field to release the memory allocated</EM></span>
-+ <span class="comment"><EM>-- by it internally. After that the Enumeration field is no longer usable.</EM></span>
-
-- <FONT COLOR=green><EM>-- The next type defintions are all ncurses extensions. They are typically</EM></FONT>
-- <FONT COLOR=green><EM>-- not available in other curses implementations.</EM></FONT>
-+ <span class="comment"><EM>-- The next type defintions are all ncurses extensions. They are typically</EM></span>
-+ <span class="comment"><EM>-- not available in other curses implementations.</EM></span>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_84_14" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_91_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_84_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_91_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_85_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_92_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_84_14" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_91_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_84_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_91_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_85_30" HREF="terminal_interface-curses-forms-field_types-enumeration__adb.htm#ref_92_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A>);
- <b>pragma</b> Inline (Set_Field_Type);
-
- <b>private</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_89_9">CPA_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.chars_ptr_array;
-+ <b>type</b> <span class="symbol"><A NAME="ref_89_9">CPA_Access</A></span> <b>is</b> <b>access</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.chars_ptr_array;
-
-- <b>type</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b>
-+ <b>type</b> <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_62_9">Enumeration_Field</A> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A> <b>with</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_93_10">Case_Sensitive</A></FONT> : Boolean := False;
-- <FONT COLOR=red><A NAME="ref_94_10">Match_Must_Be_Unique</A></FONT> : Boolean := False;
-- <FONT COLOR=red><A NAME="ref_95_10">Arr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_89_9">CPA_Access</A> := <b>null</b>;
-+ <span class="symbol"><A NAME="ref_93_10">Case_Sensitive</A></span> : Boolean := False;
-+ <span class="symbol"><A NAME="ref_94_10">Match_Must_Be_Unique</A></span> : Boolean := False;
-+ <span class="symbol"><A NAME="ref_95_10">Arr</A></span> : <A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_89_9">CPA_Access</A> := <b>null</b>;
- <b>end</b> <b>record</b>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-enumeration__ads.htm#ref_43_53">Enumeration</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm 2011-03-19 23:18:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,72 +1,80 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-intfield.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-intfield.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-intfield.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-intfield.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IntField --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IntField --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.13 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A></span> <b>is</b>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_44_9">Integer_Field</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_44_9">Integer_Field</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_49_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A>;
-- <FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg2</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Long_Int</A>;
-- <FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg3</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Long_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_49_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A>;
-+ <span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg2</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_52_12">C_Long_Int</A>;
-+ <span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Arg3</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_52_12">C_Long_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_integer");
-
-- <FONT COLOR=red><A NAME="ref_55_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_55_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_50_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_46_10">Precision</A>),
-- <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_51_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Long_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_47_10">Lower_Limit</A>),
-- <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_52_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Long_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_48_10">Upper_Limit</A>));
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_55_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_55_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_49_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_50_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_46_10">Precision</A>),
-+ <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_51_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_52_12">C_Long_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_47_10">Lower_Limit</A>),
-+ <A HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_52_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-aux__ads.htm#ref_52_12">C_Long_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_48_10">Upper_Limit</A>)));
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_52_30">Typ</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_51_14">Set_Field_Type</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-intfield__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,61 +1,73 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-intfield.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-intfield.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-intfield.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-intfield.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IntField --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_44_58">IntField</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A>);
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IntField --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_44_58">IntField</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A>);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9">Integer_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_44_9">Integer_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A> <b>with</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_46_10">Precision</A></FONT> : Natural;
-- <FONT COLOR=red><A NAME="ref_47_10">Lower_Limit</A></FONT> : Integer;
-- <FONT COLOR=red><A NAME="ref_48_10">Upper_Limit</A></FONT> : Integer;
-+ <span class="symbol"><A NAME="ref_46_10">Precision</A></span> : Natural;
-+ <span class="symbol"><A NAME="ref_47_10">Lower_Limit</A></span> : Integer;
-+ <span class="symbol"><A NAME="ref_48_10">Upper_Limit</A></span> : Integer;
- <b>end</b> <b>record</b>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_44_9">Integer_Field</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-intfield__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_44_9">Integer_Field</A>);
- <b>pragma</b> Inline (Set_Field_Type);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-intfield__ads.htm#ref_41_53">IntField</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm 2011-03-19 23:18:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,68 +1,76 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-ipv4_address.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-ipv4_address.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-ipv4_address.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-ipv4_address.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.13 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A></span> <b>is</b>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_48_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_45_9">Internet_V4_Address_Field</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_48_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_45_9">Internet_V4_Address_Field</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_49_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_49_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_49_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_49_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_49_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_ipv4");
-
-- <FONT COLOR=red><A NAME="ref_53_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_53_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_49_16">Set_Fld_Type</A>;
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_53_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_53_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_48_30">Typ</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_49_16">Set_Fld_Type</A>);
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_48_30">Typ</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_47_14">Set_Field_Type</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-ipv4_address__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,57 +1,69 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-ipv4_address.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-ipv4_address.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-ipv4_address.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-ipv4_address.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_44_58">IPV4_Address</A></FONT> <b>is</b>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.IPV4_Address --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_44_58">IPV4_Address</A></span> <b>is</b>
- <b>pragma</b> Preelaborate
-- (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A>);
-+ (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A>);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_45_9">Internet_V4_Address_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_45_9">Internet_V4_Address_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_45_9">Internet_V4_Address_Field</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-ipv4_address__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_45_9">Internet_V4_Address_Field</A>);
- <b>pragma</b> Inline (Set_Field_Type);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-ipv4_address__ads.htm#ref_41_53">IPV4_Address</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm 2011-03-19 23:18:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,75 +1,83 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-numeric.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-numeric.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-numeric.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-numeric.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Numeric --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/19 00:45:37 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Numeric --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.14 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_45_58" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_45_58" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A></span> <b>is</b>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_44_9">Numeric_Field</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_44_9">Numeric_Field</A>)
- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_50_12">Double</A></FONT> <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.double;
-+ <b>type</b> <span class="symbol"><A NAME="ref_50_12">Double</A></span> <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.double;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_52_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A>;
-- <FONT COLOR=red><A NAME="ref_53_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_54_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg2</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A>;
-- <FONT COLOR=red><A NAME="ref_55_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg3</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_52_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A>;
-+ <span class="symbol"><A NAME="ref_53_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_54_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg2</A></span> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A>;
-+ <span class="symbol"><A NAME="ref_55_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Arg3</A></span> : <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_numeric");
-
-- <FONT COLOR=red><A NAME="ref_58_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_58_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_53_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_46_10">Precision</A>),
-- <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_54_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_47_10">Lower_Limit</A>),
-- <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_55_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_48_10">Upper_Limit</A>));
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_58_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_58_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_52_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_53_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_46_10">Precision</A>),
-+ <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_54_30">Arg2</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_47_10">Lower_Limit</A>),
-+ <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_55_30">Arg3</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_50_12">Double</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_48_10">Upper_Limit</A>)));
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_52_30">Typ</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_51_14">Set_Field_Type</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-numeric__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,61 +1,73 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-numeric.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-numeric.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-numeric.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-numeric.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Numeric --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_45_58">Numeric</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A>);
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.Numeric --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_45_58">Numeric</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A>);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9">Numeric_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_44_9">Numeric_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A> <b>with</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_46_10">Precision</A></FONT> : Natural;
-- <FONT COLOR=red><A NAME="ref_47_10">Lower_Limit</A></FONT> : Float;
-- <FONT COLOR=red><A NAME="ref_48_10">Upper_Limit</A></FONT> : Float;
-+ <span class="symbol"><A NAME="ref_46_10">Precision</A></span> : Natural;
-+ <span class="symbol"><A NAME="ref_47_10">Lower_Limit</A></span> : Float;
-+ <span class="symbol"><A NAME="ref_48_10">Upper_Limit</A></span> : Float;
- <b>end</b> <b>record</b>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_47_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_47_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_48_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_44_9">Numeric_Field</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_47_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_47_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-numeric__adb.htm#ref_48_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_44_9">Numeric_Field</A>);
- <b>pragma</b> Inline (Set_Field_Type);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-numeric__ads.htm#ref_41_53">Numeric</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm 2011-03-19 23:18:39.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,73 +1,76 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-regexp.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-regexp.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-regexp.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-regexp.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.RegExp --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.10 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.RegExp --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A></span> <b>is</b>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_46_9">Regular_Expression_Field</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_46_30" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_46_9">Regular_Expression_Field</A>)
- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_49_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char;
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_51_16">Set_Ftyp</A></FONT> (<FONT COLOR=red><A NAME="ref_51_26" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_51_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A>;
-- <FONT COLOR=red><A NAME="ref_52_26" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_51_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_49_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_49_16">Set_Ftyp</A></span> (<span class="symbol"><A NAME="ref_49_26" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_49_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A>;
-+ <span class="symbol"><A NAME="ref_50_26" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_49_16">Arg1</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Ftyp, "set_field_type_regexp");
-
-- <FONT COLOR=red><A NAME="ref_55_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_48_10">Regular_Expression</A>.<b>all</b>'Length);
-- <FONT COLOR=red><A NAME="ref_56_7">Len</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_57_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_48_10">Regular_Expression</A>.<b>all</b>, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_55_7">Txt</A>, <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_56_7">Len</A>);
-- <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_57_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_51_16">Set_Ftyp</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_52_26">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_55_7">Txt</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_55_7">Txt</A>'First)'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_57_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_57_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_49_16">Set_Ftyp</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_50_26">Arg1</A> =&gt; To_C (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_48_10">Regular_Expression</A>.<b>all</b>)));
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_14">Wrap_Builtin</A> (<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_30">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_52_30">Typ</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_51_14">Set_Field_Type</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-regexp__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,61 +1,73 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-regexp.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-regexp.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-regexp.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-regexp.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.RegExp --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_44_58">RegExp</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A>);
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.RegExp --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_41_53" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_44_58">RegExp</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A>);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9">String_Access</A></FONT> <b>is</b> <b>access</b> String;
-+ <b>type</b> <span class="symbol"><A NAME="ref_44_9">String_Access</A></span> <b>is</b> <b>access</b> String;
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_46_9">Regular_Expression_Field</A></FONT> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_46_9">Regular_Expression_Field</A></span> <b>is</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A> <b>with</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_48_10">Regular_Expression</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_44_9">String_Access</A>;
-+ <span class="symbol"><A NAME="ref_48_10">Regular_Expression</A></span> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_44_9">String_Access</A>;
- <b>end</b> <b>record</b>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_46_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_46_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_47_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_46_9">Regular_Expression_Field</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_46_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_51_30" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_46_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_52_30" HREF="terminal_interface-curses-forms-field_types-regexp__adb.htm#ref_47_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_46_9">Regular_Expression_Field</A>);
- <b>pragma</b> Inline (Set_Field_Type);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-regexp__ads.htm#ref_41_53">RegExp</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,114 +1,122 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-user-choice.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-user-choice.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-user-choice.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-user-choice.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User.Choice --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.17 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/22 10:53:37 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User.Choice --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.20 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> System.Address_To_Access_Conversions;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<FONT COLOR=red><A NAME="ref_45_63" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<span class="symbol"><A NAME="ref_45_63" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A></span> <b>is</b>
-
- <b>package</b> Argument_Conversions <b>is</b>
-- <b>new</b> System.Address_To_Access_Conversions (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>);
-+ <b>new</b> System.Address_To_Access_Conversions (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_9">Argument</A>);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_50_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13">Generic_Next</A></FONT> (<FONT COLOR=red><A NAME="ref_50_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_51_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_81_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_50_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13">Generic_Next</A></span> (<span class="symbol"><A NAME="ref_50_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_51_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_81_27">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_53_7">Result</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_54_7">Udf</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> :=
-+ <span class="symbol"><A NAME="ref_53_7">Result</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_54_7">Udf</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> :=
- <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A>
-- (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_81_27">Usr</A>)).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>);
-+ (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_81_27">Usr</A>)).<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A>);
- <b>begin</b>
- <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_53_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Next</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_27">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_54_7">Udf</A>.<b>all</b>);
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_53_7">Result</A>));
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_53_7">Result</A>));
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13">Generic_Next</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13">Generic_Prev</A></FONT> (<FONT COLOR=red><A NAME="ref_62_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_63_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_88_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_62_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13">Generic_Prev</A></span> (<span class="symbol"><A NAME="ref_62_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_63_27" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_88_27">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_65_7">Result</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_66_7">Udf</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> :=
-+ <span class="symbol"><A NAME="ref_65_7">Result</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_66_7">Udf</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A> :=
- <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_57_9">User_Defined_Field_Type_With_Choice_Access</A>
-- (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_88_27">Usr</A>)).<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>);
-+ (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_88_27">Usr</A>)).<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A>);
- <b>begin</b>
- <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_65_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Previous</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_27">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_66_7">Udf</A>.<b>all</b>);
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_65_7">Result</A>));
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_65_7">Result</A>));
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13">Generic_Prev</A>;
-
-- <FONT COLOR=green><EM>-- -----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_76_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_78_13">C_Generic_Choice</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>
-+ <span class="comment"><EM>-- -----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_76_13" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_78_13">C_Generic_Choice</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_78_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <FONT COLOR=red><A NAME="ref_79_7">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-+ <span class="symbol"><A NAME="ref_78_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
-+ <span class="symbol"><A NAME="ref_79_7">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Choice</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b>
-- <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>'<b>Access</b>,
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Generic_Choice</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_223_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>'<b>Access</b>,
- <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_228_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_163_13">Make_Arg</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_13">Copy_Arg</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_14">Free_Arg</A>'<b>Access</b>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A>);
-
-- <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Set_Fieldtype_Choice</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A>,
-+ <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_235_13">Set_Fieldtype_Choice</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A>,
- <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13">Generic_Next</A>'<b>Access</b>,
- <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13">Generic_Prev</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_78_7">Res</A>);
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Choice</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A>;
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Generic_Choice</A> := <A HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_79_7">T</A>;
- <b>end</b> <b>if</b>;
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Choice</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>);
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Choice</A>;
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Generic_Choice</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Generic_Choice</A>;
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_78_13">C_Generic_Choice</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-user-choice__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,100 +1,112 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-user-choice.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-user-choice.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-user-choice.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-user-choice.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User.Choice --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/19 12:27:47 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User.Choice --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.14 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2011/03/19 12:27:47 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<FONT COLOR=red><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_45_63">Choice</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<span class="symbol"><A NAME="ref_44_58" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_45_63">Choice</A></span> <b>is</b>
- <b>pragma</b> Preelaborate
-- (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A>);
-+ (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A>);
-
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_48_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_48_12">C_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_50_9">User_Defined_Field_Type_With_Choice</A></FONT> <b>is</b> <b>abstract</b> <b>new</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_50_9">User_Defined_Field_Type_With_Choice</A></span> <b>is</b> <b>abstract</b> <b>new</b>
- <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
-- <FONT COLOR=green><EM>-- This is the root of the mechanism we use to create field types in</EM></FONT>
-- <FONT COLOR=green><EM>-- Ada95 that allow the prev/next mechanism. You should your own type</EM></FONT>
-- <FONT COLOR=green><EM>-- derive from this one and implement the Field_Check, Character_Check</EM></FONT>
-- <FONT COLOR=green><EM>-- Next and Previous functions for your own type.</EM></FONT>
-+ <span class="comment"><EM>-- This is the root of the mechanism we use to create field types in</EM></span>
-+ <span class="comment"><EM>-- Ada95 that allow the prev/next mechanism. You should your own type</EM></span>
-+ <span class="comment"><EM>-- derive from this one and implement the Field_Check, Character_Check</EM></span>
-+ <span class="comment"><EM>-- Next and Previous functions for your own type.</EM></span>
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_57_9">User_Defined_Field_Type_With_Choice_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_57_9">User_Defined_Field_Type_With_Choice_Access</A></span> <b>is</b> <b>access</b> <b>all</b>
- <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>'Class;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_60_13">Next</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_61_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_62_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_60_13">Next</A></span>
-+ (<span class="symbol"><A NAME="ref_61_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_62_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_60_13">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean
- <b>is</b> <b>abstract</b>;
-- <FONT COLOR=green><EM>-- If True is returned, the function successfully generated a next</EM></FONT>
-- <FONT COLOR=green><EM>-- value into the fields buffer.</EM></FONT>
-+ <span class="comment"><EM>-- If True is returned, the function successfully generated a next</EM></span>
-+ <span class="comment"><EM>-- value into the fields buffer.</EM></span>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_67_13">Previous</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_68_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_69_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_67_13">Previous</A></span>
-+ (<span class="symbol"><A NAME="ref_68_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_69_7" HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_67_13">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_50_9">User_Defined_Field_Type_With_Choice</A>) <b>return</b> Boolean
- <b>is</b> <b>abstract</b>;
-- <FONT COLOR=green><EM>-- If True is returned, the function successfully generated a previous</EM></FONT>
-- <FONT COLOR=green><EM>-- value into the fields buffer.</EM></FONT>
-+ <span class="comment"><EM>-- If True is returned, the function successfully generated a previous</EM></span>
-+ <span class="comment"><EM>-- value into the fields buffer.</EM></span>
-
-- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- | Private Part.</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- | Private Part.</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
- <b>private</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_78_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_76_13">C_Generic_Choice</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_78_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_76_13">C_Generic_Choice</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_80_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_50_13">Generic_Next</A></FONT> (<FONT COLOR=red><A NAME="ref_80_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_50_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_81_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_51_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_80_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_50_13">Generic_Next</A></span> (<span class="symbol"><A NAME="ref_80_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_50_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_81_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_51_27">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_80_13">Generic_Next</A>);
-- <FONT COLOR=green><EM>-- This is the generic next Choice_Function for the low-level fieldtype</EM></FONT>
-- <FONT COLOR=green><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></FONT>
-- <FONT COLOR=green><EM>-- the call to the Next implementation for the type.</EM></FONT>
-+ <span class="comment"><EM>-- This is the generic next Choice_Function for the low-level fieldtype</EM></span>
-+ <span class="comment"><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></span>
-+ <span class="comment"><EM>-- the call to the Next implementation for the type.</EM></span>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_87_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_62_13">Generic_Prev</A></FONT> (<FONT COLOR=red><A NAME="ref_87_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_62_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_88_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_63_27">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_87_13" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_62_13">Generic_Prev</A></span> (<span class="symbol"><A NAME="ref_87_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_62_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_88_27" HREF="terminal_interface-curses-forms-field_types-user-choice__adb.htm#ref_63_27">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_87_13">Generic_Prev</A>);
-- <FONT COLOR=green><EM>-- This is the generic prev Choice_Function for the low-level fieldtype</EM></FONT>
-- <FONT COLOR=green><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></FONT>
-- <FONT COLOR=green><EM>-- the call to the Previous implementation for the type.</EM></FONT>
-+ <span class="comment"><EM>-- This is the generic prev Choice_Function for the low-level fieldtype</EM></span>
-+ <span class="comment"><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></span>
-+ <span class="comment"><EM>-- the call to the Previous implementation for the type.</EM></span>
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>.<A HREF="terminal_interface-curses-forms-field_types-user-choice__ads.htm#ref_44_58">Choice</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-user__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,139 +1,144 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-user.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-user.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-user.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-user.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.21 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/23 00:44:58 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.23 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> System.Address_To_Access_Conversions;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_45_58" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_45_58" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A></span> <b>is</b>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_71_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_47_14" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_47_30" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_48_30" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_71_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_50_16" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_61_16">Allocate_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_61_30">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class)
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_50_16" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_59_16">Allocate_Arg</A></span> (<span class="symbol"><A NAME="ref_50_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_59_30">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_53_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_53_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_30">Fld</A>;
-- <FONT COLOR=red><A NAME="ref_54_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13">C_Generic_Type</A>;
-- <FONT COLOR=red><A NAME="ref_55_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_53_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_53_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_30">Fld</A>;
-+ <span class="symbol"><A NAME="ref_54_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13">C_Generic_Type</A>;
-+ <span class="symbol"><A NAME="ref_55_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_user");
-
-- <FONT COLOR=red><A NAME="ref_59_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_61_16" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_16">Allocate_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_61_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_30">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class)
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_59_16" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_16">Allocate_Arg</A></span> (<span class="symbol"><A NAME="ref_59_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_30">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_64_10">Ptr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>
-+ <span class="symbol"><A NAME="ref_62_10">Ptr</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_64_9">Field_Type_Access</A>
- := <b>new</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class'(<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_30">T</A>);
- <b>begin</b>
-- <b>return</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A> =&gt; System.Null_Address,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_64_10">Ptr</A>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>);
-+ <b>return</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_9">Argument</A>'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A> =&gt; System.Null_Address,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_62_10">Ptr</A>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_16">Allocate_Arg</A>;
-
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_59_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_55_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_16">Allocate_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_71_30">Typ</A>));
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_59_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_59_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_53_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_55_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_50_16">Allocate_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_71_30">Typ</A>)));
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_70_14">Set_Field_Type</A>;
-
- <b>package</b> Argument_Conversions <b>is</b>
-- <b>new</b> System.Address_To_Access_Conversions (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>);
-+ <b>new</b> System.Address_To_Access_Conversions (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_9">Argument</A>);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_82_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A></FONT> (<FONT COLOR=red><A NAME="ref_82_34" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_34">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_83_34" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_82_34">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_77_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A></span> (<span class="symbol"><A NAME="ref_77_34" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_34">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_78_34" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_82_34">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_85_7">Result</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_86_7">Udf</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> :=
-+ <span class="symbol"><A NAME="ref_80_7">Result</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_81_7">Udf</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> :=
- <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A>
-- (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_82_34">Usr</A>)).<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>);
-+ (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_82_34">Usr</A>)).<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A>);
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_85_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Field_Check</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_34">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_86_7">Udf</A>.<b>all</b>);
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_85_7">Result</A>));
-+ <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_80_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Field_Check</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_34">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_81_7">Udf</A>.<b>all</b>);
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_80_7">Result</A>));
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_94_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A></FONT> (<FONT COLOR=red><A NAME="ref_94_33" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_33">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_95_33" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_89_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_89_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A></span> (<span class="symbol"><A NAME="ref_89_33" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_33">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_90_33" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_89_33">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_97_7">Result</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_98_7">Udf</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> :=
-+ <span class="symbol"><A NAME="ref_92_7">Result</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_93_7">Udf</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A> :=
- <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_53_9">User_Defined_Field_Type_Access</A>
-- (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_89_33">Usr</A>)).<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>);
-+ (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_89_33">Usr</A>)).<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A>);
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_97_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Character_Check</A> (Character'Val (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_33">Ch</A>), <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_98_7">Udf</A>.<b>all</b>);
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_97_7">Result</A>));
-+ <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_92_7">Result</A> := <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Character_Check</A> (Character'Val (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_33">Ch</A>), <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_93_7">Udf</A>.<b>all</b>);
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_92_7">Result</A>));
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A>;
-
-- <FONT COLOR=green><EM>-- -----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_108_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13">C_Generic_Type</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>
-+ <span class="comment"><EM>-- -----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_103_13" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13">C_Generic_Type</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_110_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <FONT COLOR=red><A NAME="ref_111_7">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-+ <span class="symbol"><A NAME="ref_105_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
-+ <span class="symbol"><A NAME="ref_106_7">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_141_4">M_Generic_Type</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b>
-- <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_111_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>'<b>Access</b>,
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Type</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_106_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_223_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>'<b>Access</b>,
- <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_111_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_106_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_110_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_111_7">T</A>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_110_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_110_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_105_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_228_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_106_7">T</A>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_163_13">Make_Arg</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_13">Copy_Arg</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_14">Free_Arg</A>'<b>Access</b>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_105_7">Res</A>);
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_141_4">M_Generic_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_111_7">T</A>;
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Type</A> := <A HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_106_7">T</A>;
- <b>end</b> <b>if</b>;
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_141_4">M_Generic_Type</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>);
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_141_4">M_Generic_Type</A>;
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Type</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Type</A>;
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_79_13">C_Generic_Type</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types-user__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,101 +1,113 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types-user.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types-user.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types-user.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types-user.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.15 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/19 12:27:21 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<FONT COLOR=red><A NAME="ref_44_53" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_45_58">User</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>);
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_46_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_48_9">User_Defined_Field_Type</A></FONT> <b>is</b> <b>abstract</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
-- <FONT COLOR=green><EM>-- This is the root of the mechanism we use to create field types in</EM></FONT>
-- <FONT COLOR=green><EM>-- Ada95. You should your own type derive from this one and implement</EM></FONT>
-- <FONT COLOR=green><EM>-- the Field_Check and Character_Check functions for your own type.</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types.User --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.15 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2011/03/19 12:27:21 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<span class="symbol"><A NAME="ref_44_53" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_45_58">User</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>);
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_46_12">C_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_48_9">User_Defined_Field_Type</A></span> <b>is</b> <b>abstract</b> <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A> <b>with</b> <b>null</b> <b>record</b>;
-+ <span class="comment"><EM>-- This is the root of the mechanism we use to create field types in</EM></span>
-+ <span class="comment"><EM>-- Ada95. You should your own type derive from this one and implement</EM></span>
-+ <span class="comment"><EM>-- the Field_Check and Character_Check functions for your own type.</EM></span>
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_53_9">User_Defined_Field_Type_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_53_9">User_Defined_Field_Type_Access</A></span> <b>is</b> <b>access</b> <b>all</b>
- <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>'Class;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_56_13">Field_Check</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_56_13">Field_Check</A></span>
-+ (<span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_56_13">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) <b>return</b> Boolean
- <b>is</b> <b>abstract</b>;
-- <FONT COLOR=green><EM>-- If True is returned, the field is considered valid, otherwise it is</EM></FONT>
-- <FONT COLOR=green><EM>-- invalid.</EM></FONT>
-+ <span class="comment"><EM>-- If True is returned, the field is considered valid, otherwise it is</EM></span>
-+ <span class="comment"><EM>-- invalid.</EM></span>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_63_13">Character_Check</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_64_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Ch</A></FONT> : Character;
-- <FONT COLOR=red><A NAME="ref_65_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_63_13">Character_Check</A></span>
-+ (<span class="symbol"><A NAME="ref_64_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Ch</A></span> : Character;
-+ <span class="symbol"><A NAME="ref_65_7" HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_63_13">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>) <b>return</b> Boolean
- <b>is</b> <b>abstract</b>;
-- <FONT COLOR=green><EM>-- If True is returned, the character is considered as valid for the</EM></FONT>
-- <FONT COLOR=green><EM>-- field, otherwise as invalid.</EM></FONT>
-+ <span class="comment"><EM>-- If True is returned, the character is considered as valid for the</EM></span>
-+ <span class="comment"><EM>-- field, otherwise as invalid.</EM></span>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_70_14" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_47_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_70_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_47_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_71_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_48_30">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>);
-- <FONT COLOR=green><EM>-- This should work for all types derived from User_Defined_Field_Type.</EM></FONT>
-- <FONT COLOR=green><EM>-- No need to reimplement it for your derived type.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- | Private Part.</EM></FONT>
-- <FONT COLOR=green><EM>-- | Used by the Choice child package.</EM></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_70_14" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_47_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_70_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_47_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_71_30" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_48_30">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_48_9">User_Defined_Field_Type</A>);
-+ <span class="comment"><EM>-- This should work for all types derived from User_Defined_Field_Type.</EM></span>
-+ <span class="comment"><EM>-- No need to reimplement it for your derived type.</EM></span>
-+
-+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- | Private Part.</EM></span>
-+ <span class="comment"><EM>-- | Used by the Choice child package.</EM></span>
- <b>private</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_79_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_108_13">C_Generic_Type</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_79_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_103_13">C_Generic_Type</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_81_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_82_13">Generic_Field_Check</A></FONT> (<FONT COLOR=red><A NAME="ref_81_34" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_82_34">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_82_34" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_83_34">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_81_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_77_13">Generic_Field_Check</A></span> (<span class="symbol"><A NAME="ref_81_34" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_77_34">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_82_34" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_78_34">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_81_13">Generic_Field_Check</A>);
-- <FONT COLOR=green><EM>-- This is the generic Field_Check_Function for the low-level fieldtype</EM></FONT>
-- <FONT COLOR=green><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></FONT>
-- <FONT COLOR=green><EM>-- the call to the Field_Check implementation for the type.</EM></FONT>
-+ <span class="comment"><EM>-- This is the generic Field_Check_Function for the low-level fieldtype</EM></span>
-+ <span class="comment"><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></span>
-+ <span class="comment"><EM>-- the call to the Field_Check implementation for the type.</EM></span>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_88_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_94_13">Generic_Char_Check</A></FONT> (<FONT COLOR=red><A NAME="ref_88_33" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_94_33">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_89_33" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_95_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_88_13" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_89_13">Generic_Char_Check</A></span> (<span class="symbol"><A NAME="ref_88_33" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_89_33">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_46_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_89_33" HREF="terminal_interface-curses-forms-field_types-user__adb.htm#ref_90_33">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_88_13">Generic_Char_Check</A>);
-- <FONT COLOR=green><EM>-- This is the generic Char_Check_Function for the low-level fieldtype</EM></FONT>
-- <FONT COLOR=green><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></FONT>
-- <FONT COLOR=green><EM>-- the call to the Character_Check implementation for the type.</EM></FONT>
-+ <span class="comment"><EM>-- This is the generic Char_Check_Function for the low-level fieldtype</EM></span>
-+ <span class="comment"><EM>-- representing all the User_Defined_Field_Type derivatives. It routes</EM></span>
-+ <span class="comment"><EM>-- the call to the Character_Check implementation for the type.</EM></span>
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>.<A HREF="terminal_interface-curses-forms-field_types-user__ads.htm#ref_44_53">User</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,289 +1,286 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.25 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:22:27 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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: 2014/05/24 21:31:05 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
- <b>with</b> Ada.Unchecked_Deallocation;
- <b>with</b> System.Address_To_Access_Conversions;
-
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--<FONT COLOR=green><EM>-- | man page form_fieldtype.3x</EM></FONT>
--<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_51_46" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A></FONT> <b>is</b>
-+<span class="comment"><EM>-- |</EM></span>
-+<span class="comment"><EM>-- |=====================================================================</EM></span>
-+<span class="comment"><EM>-- | man page form_fieldtype.3x</EM></span>
-+<span class="comment"><EM>-- |=====================================================================</EM></span>
-+<span class="comment"><EM>-- |</EM></span>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<span class="symbol"><A NAME="ref_51_46" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A></span> <b>is</b>
-
- <b>use</b> <b>type</b> System.Address;
-
- <b>package</b> Argument_Conversions <b>is</b>
-- <b>new</b> System.Address_To_Access_Conversions (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>);
-+ <b>new</b> System.Address_To_Access_Conversions (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_9">Argument</A>);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_58_13">Get_Fieldtype</A></FONT> (<FONT COLOR=red><A NAME="ref_58_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_58_13">Get_Fieldtype</A></span> (<span class="symbol"><A NAME="ref_58_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
- <b>pragma</b> Import (C, Get_Fieldtype, "field_type");
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_61_13">Get_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_61_22" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> System.Address;
-+ <b>function</b> <span class="symbol"><A NAME="ref_61_13">Get_Arg</A></span> (<span class="symbol"><A NAME="ref_61_22" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> System.Address;
- <b>pragma</b> Import (C, Get_Arg, "field_arg");
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_field_validation.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_70_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_13">Get_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_70_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_23">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_field_validation.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_70_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_80_13">Get_Type</A></span> (<span class="symbol"><A NAME="ref_70_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_80_23">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_64_9">Field_Type_Access</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_72_7">Low_Level</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_23">Fld</A>);
-- <FONT COLOR=red><A NAME="ref_73_7">Arg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>;
-+ <span class="symbol"><A NAME="ref_72_7">Low_Level</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_80_23">Fld</A>);
-+ <span class="symbol"><A NAME="ref_73_7">Arg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A> <b>then</b>
- <b>return</b> <b>null</b>;
- <b>else</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Builtin_Router</A> <b>or</b> <b>else</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_141_4">M_Generic_Type</A> <b>or</b> <b>else</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Choice_Router</A> <b>or</b> <b>else</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Choice</A> <b>then</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_73_7">Arg</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>
-- (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_23">Fld</A>)));
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Builtin_Router</A> <b>or</b> <b>else</b>
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_142_4">M_Generic_Type</A> <b>or</b> <b>else</b>
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_145_4">M_Choice_Router</A> <b>or</b> <b>else</b>
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_72_7">Low_Level</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Generic_Choice</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_73_7">Arg</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>
-+ (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_80_23">Fld</A>)));
- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_73_7">Arg</A> = <b>null</b> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_73_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_73_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A>;
- <b>end</b> <b>if</b>;
- <b>else</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>end</b> <b>if</b>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_79_13">Get_Type</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_80_13">Get_Type</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_95_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_95_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_23">Usr</A></FONT> : System.Address) <b>return</b> System.Address
-+ <b>function</b> <span class="symbol"><A NAME="ref_95_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_13">Copy_Arg</A></span> (<span class="symbol"><A NAME="ref_95_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_23">Usr</A></span> : System.Address) <b>return</b> System.Address
- <b>is</b>
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_23">Usr</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_23">Usr</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_13">Copy_Arg</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_101_14" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_101_24" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_24">Usr</A></FONT> : System.Address)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_101_14" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_14">Free_Arg</A></span> (<span class="symbol"><A NAME="ref_101_24" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_24">Usr</A></span> : System.Address)
- <b>is</b>
- <b>procedure</b> Free_Type <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
-- (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>);
-+ (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A>'Class, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_64_9">Field_Type_Access</A>);
- <b>procedure</b> Freeargs <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
-- (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>);
-+ (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_9">Argument</A>, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>);
-
-- <FONT COLOR=red><A NAME="ref_108_7">To_Be_Free</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>
-- := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_24">Usr</A>));
-- <FONT COLOR=red><A NAME="ref_110_7">Low_Level</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-+ <span class="symbol"><A NAME="ref_108_7">To_Be_Free</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>
-+ := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_24">Usr</A>));
-+ <span class="symbol"><A NAME="ref_110_7">Low_Level</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
- <b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A> /= <b>null</b> <b>then</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A> /= System.Null_Address <b>then</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_110_7">Low_Level</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A>;
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_110_7">Low_Level</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_126_10">Freearg</A> /= <b>null</b> <b>then</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_110_7">Low_Level</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_126_10">Freearg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A> /= System.Null_Address <b>then</b>
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_110_7">Low_Level</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_110_7">Low_Level</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_127_10">Freearg</A> /= <b>null</b> <b>then</b>
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_110_7">Low_Level</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_127_10">Freearg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A>);
- <b>end</b> <b>if</b>;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A> /= <b>null</b> <b>then</b>
-- Free_Type (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A> /= <b>null</b> <b>then</b>
-+ Free_Type (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A>);
- <b>end</b> <b>if</b>;
- Freeargs (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_108_7">To_Be_Free</A>);
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_14">Free_Arg</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_126_14" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A></FONT> (<FONT COLOR=red><A NAME="ref_126_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_127_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class;
-- <FONT COLOR=red><A NAME="ref_128_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_126_14" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_14">Wrap_Builtin</A></span> (<span class="symbol"><A NAME="ref_126_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_127_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A>'Class;
-+ <span class="symbol"><A NAME="ref_128_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_154_28">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Builtin_Router</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_130_7">Usr_Arg</A></FONT> : <b>constant</b> System.Address := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>);
-- <FONT COLOR=red><A NAME="ref_131_7">Low_Level</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>);
-- <FONT COLOR=red><A NAME="ref_132_7">Arg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>;
-- <FONT COLOR=red><A NAME="ref_133_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_134_16">Set_Fld_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_134_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">F</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>;
-- <FONT COLOR=red><A NAME="ref_135_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">Cf</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A>;
-- <FONT COLOR=red><A NAME="ref_136_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">Arg1</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_130_7">Usr_Arg</A></span> : <b>constant</b> System.Address := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_61_13">Get_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Fld</A>);
-+ <span class="symbol"><A NAME="ref_131_7">Low_Level</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Fld</A>);
-+ <span class="symbol"><A NAME="ref_132_7">Arg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_133_16">Set_Fld_Type</A></span> (<span class="symbol"><A NAME="ref_133_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_133_16">F</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Fld</A>;
-+ <span class="symbol"><A NAME="ref_134_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_133_16">Cf</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_154_28">Cft</A>;
-+ <span class="symbol"><A NAME="ref_135_30" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_133_16">Arg1</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Type, "set_field_type_user");
-
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_131_7">Low_Level</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Choice_Router</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_131_7">Low_Level</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_154_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Builtin_Router</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_154_28">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_150_13">C_Choice_Router</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_132_7">Arg</A> := <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A> =&gt; System.Null_Address,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A> =&gt; <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Typ</A>),
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_28">Fld</A>));
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_132_7">Arg</A> := <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_9">Argument</A>'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A> =&gt; System.Null_Address,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A> =&gt; <b>new</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A>'Class'(<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_153_28">Typ</A>),
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_58_13">Get_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_28">Fld</A>));
- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_130_7">Usr_Arg</A> /= System.Null_Address <b>then</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_131_7">Low_Level</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_125_10">Copyarg</A> /= <b>null</b> <b>then</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_132_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_131_7">Low_Level</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_125_10">Copyarg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_130_7">Usr_Arg</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_131_7">Low_Level</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_126_10">Copyarg</A> /= <b>null</b> <b>then</b>
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_132_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_131_7">Low_Level</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_126_10">Copyarg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_130_7">Usr_Arg</A>);
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_132_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_130_7">Usr_Arg</A>;
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_132_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_130_7">Usr_Arg</A>;
- <b>end</b> <b>if</b>;
- <b>end</b> <b>if</b>;
-
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_133_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_134_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_136_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_132_7">Arg</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_133_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_133_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_133_16">Set_Fld_Type</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_135_30">Arg1</A> =&gt; <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_132_7">Arg</A>));
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_151_14">Wrap_Builtin</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_152_14">Wrap_Builtin</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_162_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_162_33" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_163_33" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_158_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_13">Field_Check_Router</A></span> (<span class="symbol"><A NAME="ref_158_33" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_159_33" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_179_33">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_165_7">Arg</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>
-- := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_33">Usr</A>));
-+ <span class="symbol"><A NAME="ref_161_7">Arg</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>
-+ := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_179_33">Usr</A>));
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_165_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_165_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>
-- <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_165_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A> /= <b>null</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_165_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_127_10">Fcheck</A> /= <b>null</b> <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_165_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_127_10">Fcheck</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_33">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_165_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A>);
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_161_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_161_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>
-+ <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_161_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A> /= <b>null</b>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_161_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_128_10">Fcheck</A> /= <b>null</b> <b>then</b>
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_161_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_128_10">Fcheck</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_33">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_161_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A>);
- <b>else</b>
- <b>return</b> 1;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_13">Field_Check_Router</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_177_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_177_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_32">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_178_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_32">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_173_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_13">Char_Check_Router</A></span> (<span class="symbol"><A NAME="ref_173_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_32">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_174_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_187_32">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_180_7">Arg</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>
-- := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_32">Usr</A>));
-+ <span class="symbol"><A NAME="ref_176_7">Arg</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>
-+ := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_187_32">Usr</A>));
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_180_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_180_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>
-- <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_180_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A> /= <b>null</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_180_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_128_10">Ccheck</A> /= <b>null</b> <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_180_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_128_10">Ccheck</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_32">Ch</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_180_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A>);
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_176_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_176_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>
-+ <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_176_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A> /= <b>null</b>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_176_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_129_10">Ccheck</A> /= <b>null</b> <b>then</b>
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_176_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_129_10">Ccheck</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_32">Ch</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_176_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A>);
- <b>else</b>
- <b>return</b> 1;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_13">Char_Check_Router</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_192_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_13">Next_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_192_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_193_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_26">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_188_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_13">Next_Router</A></span> (<span class="symbol"><A NAME="ref_188_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_189_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_195_26">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_195_7">Arg</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A>
-- := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_26">Usr</A>));
-+ <span class="symbol"><A NAME="ref_191_7">Arg</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A>
-+ := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_195_26">Usr</A>));
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_195_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_195_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>
-- <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_195_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A> /= <b>null</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_195_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_129_10">Next</A> /= <b>null</b> <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_195_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_129_10">Next</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_26">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_195_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A>);
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_191_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_191_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>
-+ <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_191_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A> /= <b>null</b>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_191_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_130_10">Next</A> /= <b>null</b> <b>then</b>
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_191_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_130_10">Next</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_26">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_191_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A>);
- <b>else</b>
- <b>return</b> 1;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_13">Next_Router</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_13">Next_Router</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_207_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_13">Prev_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_207_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_208_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_26">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_203_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_13">Prev_Router</A></span> (<span class="symbol"><A NAME="ref_203_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_204_26" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_203_26">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_210_7">Arg</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> :=
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_216_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_26">Usr</A>));
-+ <span class="symbol"><A NAME="ref_206_7">Arg</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> :=
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_217_9">Argument_Access</A> (Argument_Conversions.To_Pointer (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_203_26">Usr</A>));
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_210_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_210_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>
-- <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_210_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_7">Typ</A> /= <b>null</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_210_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_129_16">Prev</A> /= <b>null</b> <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_210_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_129_16">Prev</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_26">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_210_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Usr</A>);
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_206_7">Arg</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_206_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>
-+ <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_206_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_213_7">Typ</A> /= <b>null</b>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_206_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_130_16">Prev</A> /= <b>null</b> <b>then</b>
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_206_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_215_7">Cft</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_130_16">Prev</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_26">Fld</A>, <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_206_7">Arg</A>.<b>all</b>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_214_7">Usr</A>);
- <b>else</b>
- <b>return</b> 1;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_13">Prev_Router</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_13">Prev_Router</A>;
-
-- <FONT COLOR=green><EM>-- -----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_224_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>
-+ <span class="comment"><EM>-- -----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_220_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Builtin_Router</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_226_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <FONT COLOR=red><A NAME="ref_227_7">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-+ <span class="symbol"><A NAME="ref_222_7">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Builtin_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_227_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_227_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Builtin_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_222_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_223_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_13">Field_Check_Router</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_13">Char_Check_Router</A>'<b>Access</b>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_222_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_226_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_227_7">T</A>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_226_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_226_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_228_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_222_7">T</A>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_163_13">Make_Arg</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_13">Copy_Arg</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_14">Free_Arg</A>'<b>Access</b>));
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Builtin_Router</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_227_7">T</A>;
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Builtin_Router</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_222_7">T</A>;
- <b>end</b> <b>if</b>;
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Builtin_Router</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>);
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_143_4">M_Builtin_Router</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A>;
--
-- <FONT COLOR=green><EM>-- -----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_251_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Choice_Router</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Builtin_Router</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Builtin_Router</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Builtin_Router</A>;
-+
-+ <span class="comment"><EM>-- -----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_243_13" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_150_13">C_Choice_Router</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_253_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <FONT COLOR=red><A NAME="ref_254_7">T</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-+ <span class="symbol"><A NAME="ref_245_7">T</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Choice_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_254_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_254_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_145_4">M_Choice_Router</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_245_7">T</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_223_13">New_Fieldtype</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_13">Field_Check_Router</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_13">Char_Check_Router</A>'<b>Access</b>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_245_7">T</A> = <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_253_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_254_7">T</A>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_253_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_253_7">Res</A>);
-- <b>end</b> <b>if</b>;
--
-- <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_253_7">Res</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Set_Fieldtype_Choice</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_254_7">T</A>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_13">Next_Router</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_13">Prev_Router</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_253_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_253_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_228_13">Set_Fieldtype_Arg</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_245_7">T</A>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_163_13">Make_Arg</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_13">Copy_Arg</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_14">Free_Arg</A>'<b>Access</b>));
-+
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_235_13">Set_Fieldtype_Choice</A> (<A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_245_7">T</A>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_13">Next_Router</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_13">Prev_Router</A>'<b>Access</b>));
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Choice_Router</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_254_7">T</A>;
-+ <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_145_4">M_Choice_Router</A> := <A HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_245_7">T</A>;
- <b>end</b> <b>if</b>;
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Choice_Router</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_134_4">Null_Field_Type</A>);
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_144_4">M_Choice_Router</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Choice_Router</A>;
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_145_4">M_Choice_Router</A> /= <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_135_4">Null_Field_Type</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_145_4">M_Choice_Router</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_150_13">C_Choice_Router</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_types__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_types__ads.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_types__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,245 +1,258 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_types.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_types.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_types.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_types.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_Types --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.16 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_43_41" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_51_46">Field_Types</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>);
-- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_46_12">C_Int</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_fieldtype.3x.html">form_fieldtype.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_52_9">Field_Type</A></FONT> <b>is</b> <b>abstract</b> <b>tagged</b> <b>null</b> <b>record</b>;
-- <FONT COLOR=green><EM>-- Abstract base type for all field types. A concrete field type</EM></FONT>
-- <FONT COLOR=green><EM>-- is an extension that adds some data elements describing formats or</EM></FONT>
-- <FONT COLOR=green><EM>-- boundary values for the type and validation routines.</EM></FONT>
-- <FONT COLOR=green><EM>-- For the builtin low-level fieldtypes, the validation routines are</EM></FONT>
-- <FONT COLOR=green><EM>-- already defined by the low-level C library.</EM></FONT>
-- <FONT COLOR=green><EM>-- The builtin types like Alpha or AlphaNumeric etc. are defined in</EM></FONT>
-- <FONT COLOR=green><EM>-- child packages of this package. You may use one of them as example</EM></FONT>
-- <FONT COLOR=green><EM>-- how to create you own child packages for low-level field types that</EM></FONT>
-- <FONT COLOR=green><EM>-- you may have already written in C.</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_63_9">Field_Type_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class;
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14">Set_Field_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_66_30" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_66_14">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_67_30" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_66_14">Fld_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>) <b>is</b> <b>abstract</b>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_fieldtype.3x.html">set_field_type()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- But: we hide the vararg mechanism of the C interface. You always</EM></FONT>
-- <FONT COLOR=green><EM>-- have to pass a single Field_Type parameter.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- ---------------------------------------------------------------------</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_validation.3x.html">form_field_validation.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_79_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_70_13">Get_Type</A></FONT> (<FONT COLOR=red><A NAME="ref_79_23" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_70_23">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_validation.3x.html">field_type()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: field_arg()</EM></FONT>
-- <FONT COLOR=green><EM>-- In Ada95 we can combine these. If you try to retrieve the field type</EM></FONT>
-- <FONT COLOR=green><EM>-- that is not defined as extension of the abstract tagged type above,</EM></FONT>
-- <FONT COLOR=green><EM>-- you will raise a Form_Exception.</EM></FONT>
-- <FONT COLOR=green><EM>-- This is not inlined</EM></FONT>
--
-- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- | Private Part.</EM></FONT>
-- <FONT COLOR=green><EM>-- | Most of this is used by the implementations of the child packages.</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_Types --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.19 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-+
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<span class="symbol"><A NAME="ref_44_41" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_51_46">Field_Types</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>);
-+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_47_12">C_Int</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_fieldtype.3x.html">form_fieldtype.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_53_9">Field_Type</A></span> <b>is</b> <b>abstract</b> <b>tagged</b> <b>null</b> <b>record</b>;
-+ <span class="comment"><EM>-- Abstract base type for all field types. A concrete field type</EM></span>
-+ <span class="comment"><EM>-- is an extension that adds some data elements describing formats or</EM></span>
-+ <span class="comment"><EM>-- boundary values for the type and validation routines.</EM></span>
-+ <span class="comment"><EM>-- For the builtin low-level fieldtypes, the validation routines are</EM></span>
-+ <span class="comment"><EM>-- already defined by the low-level C library.</EM></span>
-+ <span class="comment"><EM>-- The builtin types like Alpha or AlphaNumeric etc. are defined in</EM></span>
-+ <span class="comment"><EM>-- child packages of this package. You may use one of them as example</EM></span>
-+ <span class="comment"><EM>-- how to create you own child packages for low-level field types that</EM></span>
-+ <span class="comment"><EM>-- you may have already written in C.</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_64_9">Field_Type_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A>'Class;
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_67_14">Set_Field_Type</A></span> (<span class="symbol"><A NAME="ref_67_30" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_67_14">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_68_30" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_67_14">Fld_Type</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A>) <b>is</b> <b>abstract</b>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_fieldtype.3x.html">set_field_type()</A></EM></span>
-+ <span class="comment"><EM>-- But: we hide the vararg mechanism of the C interface. You always</EM></span>
-+ <span class="comment"><EM>-- have to pass a single Field_Type parameter.</EM></span>
-+
-+ <span class="comment"><EM>-- ---------------------------------------------------------------------</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_validation.3x.html">form_field_validation.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_80_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_70_13">Get_Type</A></span> (<span class="symbol"><A NAME="ref_80_23" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_70_23">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_64_9">Field_Type_Access</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_validation.3x.html">field_type()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: field_arg()</EM></span>
-+ <span class="comment"><EM>-- In Ada95 we can combine these. If you try to retrieve the field type</EM></span>
-+ <span class="comment"><EM>-- that is not defined as extension of the abstract tagged type above,</EM></span>
-+ <span class="comment"><EM>-- you will raise a Form_Exception.</EM></span>
-+ <span class="comment"><EM>-- This is not inlined</EM></span>
-+
-+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- | Private Part.</EM></span>
-+ <span class="comment"><EM>-- | Most of this is used by the implementations of the child packages.</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
- <b>private</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_92_9">Makearg_Function</A></FONT> <b>is</b> <b>access</b>
-- <b>function</b> (<FONT COLOR=red><A NAME="ref_93_16">Args</A></FONT> : System.Address) <b>return</b> System.Address;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_92_9">Makearg_Function</A>);
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_96_9">Copyarg_Function</A></FONT> <b>is</b> <b>access</b>
-- <b>function</b> (<FONT COLOR=red><A NAME="ref_97_16">Usr</A></FONT> : System.Address) <b>return</b> System.Address;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_96_9">Copyarg_Function</A>);
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_100_9">Freearg_Function</A></FONT> <b>is</b> <b>access</b>
-- <b>procedure</b> (<FONT COLOR=red><A NAME="ref_101_17">Usr</A></FONT> : System.Address);
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_100_9">Freearg_Function</A>);
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_104_9">Field_Check_Function</A></FONT> <b>is</b> <b>access</b>
-- <b>function</b> (<FONT COLOR=red><A NAME="ref_105_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_105_29">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_104_9">Field_Check_Function</A>);
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_108_9">Char_Check_Function</A></FONT> <b>is</b> <b>access</b>
-- <b>function</b> (<FONT COLOR=red><A NAME="ref_109_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>; <FONT COLOR=red><A NAME="ref_109_28">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_108_9">Char_Check_Function</A>);
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_112_9">Choice_Function</A></FONT> <b>is</b> <b>access</b>
-- <b>function</b> (<FONT COLOR=red><A NAME="ref_113_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_113_29">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_112_9">Choice_Function</A>);
--
-- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- | This must be in sync with the FIELDTYPE structure in form.h</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_119_9">Low_Level_Field_Type</A></FONT> <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_93_9">Makearg_Function</A></span> <b>is</b> <b>access</b>
-+ <b>function</b> (<span class="symbol"><A NAME="ref_94_16">Args</A></span> : System.Address) <b>return</b> System.Address;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_93_9">Makearg_Function</A>);
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_97_9">Copyarg_Function</A></span> <b>is</b> <b>access</b>
-+ <b>function</b> (<span class="symbol"><A NAME="ref_98_16">Usr</A></span> : System.Address) <b>return</b> System.Address;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_97_9">Copyarg_Function</A>);
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_101_9">Freearg_Function</A></span> <b>is</b> <b>access</b>
-+ <b>procedure</b> (<span class="symbol"><A NAME="ref_102_17">Usr</A></span> : System.Address);
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_101_9">Freearg_Function</A>);
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_105_9">Field_Check_Function</A></span> <b>is</b> <b>access</b>
-+ <b>function</b> (<span class="symbol"><A NAME="ref_106_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>; <span class="symbol"><A NAME="ref_106_29">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_105_9">Field_Check_Function</A>);
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_109_9">Char_Check_Function</A></span> <b>is</b> <b>access</b>
-+ <b>function</b> (<span class="symbol"><A NAME="ref_110_16">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A>; <span class="symbol"><A NAME="ref_110_28">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_109_9">Char_Check_Function</A>);
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_113_9">Choice_Function</A></span> <b>is</b> <b>access</b>
-+ <b>function</b> (<span class="symbol"><A NAME="ref_114_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>; <span class="symbol"><A NAME="ref_114_29">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_113_9">Choice_Function</A>);
-+
-+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- | This must be in sync with the FIELDTYPE structure in form.h</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_120_9">Low_Level_Field_Type</A></span> <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_121_10">Status</A></FONT> : <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.unsigned_short;
-- <FONT COLOR=red><A NAME="ref_122_10">Ref_Count</A></FONT> : <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.long;
-- <FONT COLOR=red><A NAME="ref_123_10">Left</A></FONT>, <FONT COLOR=red><A NAME="ref_123_16">Right</A></FONT> : System.Address;
-- <FONT COLOR=red><A NAME="ref_124_10">Makearg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_92_9">Makearg_Function</A>;
-- <FONT COLOR=red><A NAME="ref_125_10">Copyarg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_96_9">Copyarg_Function</A>;
-- <FONT COLOR=red><A NAME="ref_126_10">Freearg</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_100_9">Freearg_Function</A>;
-- <FONT COLOR=red><A NAME="ref_127_10">Fcheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_104_9">Field_Check_Function</A>;
-- <FONT COLOR=red><A NAME="ref_128_10">Ccheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_108_9">Char_Check_Function</A>;
-- <FONT COLOR=red><A NAME="ref_129_10">Next</A></FONT>, <FONT COLOR=red><A NAME="ref_129_16">Prev</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_112_9">Choice_Function</A>;
-+ <span class="symbol"><A NAME="ref_122_10">Status</A></span> : <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.unsigned_short;
-+ <span class="symbol"><A NAME="ref_123_10">Ref_Count</A></span> : <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.long;
-+ <span class="symbol"><A NAME="ref_124_10">Left</A></span>, <span class="symbol"><A NAME="ref_124_16">Right</A></span> : System.Address;
-+ <span class="symbol"><A NAME="ref_125_10">Makearg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_93_9">Makearg_Function</A>;
-+ <span class="symbol"><A NAME="ref_126_10">Copyarg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_97_9">Copyarg_Function</A>;
-+ <span class="symbol"><A NAME="ref_127_10">Freearg</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_101_9">Freearg_Function</A>;
-+ <span class="symbol"><A NAME="ref_128_10">Fcheck</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_105_9">Field_Check_Function</A>;
-+ <span class="symbol"><A NAME="ref_129_10">Ccheck</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_109_9">Char_Check_Function</A>;
-+ <span class="symbol"><A NAME="ref_130_10">Next</A></span>, <span class="symbol"><A NAME="ref_130_16">Prev</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_113_9">Choice_Function</A>;
- <b>end</b> <b>record</b>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_119_9">Low_Level_Field_Type</A>);
-- <b>type</b> <FONT COLOR=red><A NAME="ref_132_9">C_Field_Type</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_119_9">Low_Level_Field_Type</A>;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_120_9">Low_Level_Field_Type</A>);
-+ <b>type</b> <span class="symbol"><A NAME="ref_133_9">C_Field_Type</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_120_9">Low_Level_Field_Type</A>;
-
-- <FONT COLOR=red><A NAME="ref_134_4">Null_Field_Type</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>;
-+ <span class="symbol"><A NAME="ref_135_4">Null_Field_Type</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <b>null</b>;
-
-- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- | This four low-level fieldtypes are the ones associated with</EM></FONT>
-- <FONT COLOR=green><EM>-- | fieldtypes handled by this binding. Any other low-level fieldtype</EM></FONT>
-- <FONT COLOR=green><EM>-- | will result in a Form_Exception is function Get_Type.</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_141_4">M_Generic_Type</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>;
-- <FONT COLOR=red><A NAME="ref_142_4">M_Generic_Choice</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>;
-- <FONT COLOR=red><A NAME="ref_143_4">M_Builtin_Router</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>;
-- <FONT COLOR=red><A NAME="ref_144_4">M_Choice_Router</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <b>null</b>;
--
-- <FONT COLOR=green><EM>-- Two wrapper functions to access those low-level fieldtypes defined</EM></FONT>
-- <FONT COLOR=green><EM>-- in this package.</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_148_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_224_13">C_Builtin_Router</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_149_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_251_13">C_Choice_Router</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_151_14" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_126_14">Wrap_Builtin</A></FONT> (<FONT COLOR=red><A NAME="ref_151_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_126_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_152_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_127_28">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_52_9">Field_Type</A>'Class;
-- <FONT COLOR=red><A NAME="ref_153_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_128_28">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_148_13">C_Builtin_Router</A>);
-- <FONT COLOR=green><EM>-- This procedure has to be called by the Set_Field_Type implementation</EM></FONT>
-- <FONT COLOR=green><EM>-- for builtin low-level fieldtypes to replace it by an Ada95</EM></FONT>
-- <FONT COLOR=green><EM>-- conformant Field_Type object.</EM></FONT>
-- <FONT COLOR=green><EM>-- The parameter Cft must be C_Builtin_Router for regular low-level</EM></FONT>
-- <FONT COLOR=green><EM>-- fieldtypes (like TYP_ALPHA or TYP_ALNUM) and C_Choice_Router for</EM></FONT>
-- <FONT COLOR=green><EM>-- low-level fieldtypes witch choice functions (like TYP_ENUM).</EM></FONT>
-- <FONT COLOR=green><EM>-- Any other value will raise a Form_Exception.</EM></FONT>
-+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- | This four low-level fieldtypes are the ones associated with</EM></span>
-+ <span class="comment"><EM>-- | fieldtypes handled by this binding. Any other low-level fieldtype</EM></span>
-+ <span class="comment"><EM>-- | will result in a Form_Exception is function Get_Type.</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="symbol"><A NAME="ref_142_4">M_Generic_Type</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <b>null</b>;
-+ <span class="symbol"><A NAME="ref_143_4">M_Generic_Choice</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <b>null</b>;
-+ <span class="symbol"><A NAME="ref_144_4">M_Builtin_Router</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <b>null</b>;
-+ <span class="symbol"><A NAME="ref_145_4">M_Choice_Router</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <b>null</b>;
-+
-+ <span class="comment"><EM>-- Two wrapper functions to access those low-level fieldtypes defined</EM></span>
-+ <span class="comment"><EM>-- in this package.</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_149_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_220_13">C_Builtin_Router</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_150_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_243_13">C_Choice_Router</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_152_14" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_126_14">Wrap_Builtin</A></span> (<span class="symbol"><A NAME="ref_152_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_126_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_153_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_127_28">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_53_9">Field_Type</A>'Class;
-+ <span class="symbol"><A NAME="ref_154_28" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_128_28">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_149_13">C_Builtin_Router</A>);
-+ <span class="comment"><EM>-- This procedure has to be called by the Set_Field_Type implementation</EM></span>
-+ <span class="comment"><EM>-- for builtin low-level fieldtypes to replace it by an Ada95</EM></span>
-+ <span class="comment"><EM>-- conformant Field_Type object.</EM></span>
-+ <span class="comment"><EM>-- The parameter Cft must be C_Builtin_Router for regular low-level</EM></span>
-+ <span class="comment"><EM>-- fieldtypes (like TYP_ALPHA or TYP_ALNUM) and C_Choice_Router for</EM></span>
-+ <span class="comment"><EM>-- low-level fieldtypes witch choice functions (like TYP_ENUM).</EM></span>
-+ <span class="comment"><EM>-- Any other value will raise a Form_Exception.</EM></span>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_162_13">Make_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_162_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Args</A></FONT> : System.Address) <b>return</b> System.Address;
-+ <b>function</b> <span class="symbol"><A NAME="ref_163_13">Make_Arg</A></span> (<span class="symbol"><A NAME="ref_163_23" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_163_13">Args</A></span> : System.Address) <b>return</b> System.Address;
- <b>pragma</b> Import (C, Make_Arg, "void_star_make_arg");
-- <FONT COLOR=green><EM>-- This is the Makearg_Function for the internal low-level types</EM></FONT>
-- <FONT COLOR=green><EM>-- introduced by this binding.</EM></FONT>
-+ <span class="comment"><EM>-- This is the Makearg_Function for the internal low-level types</EM></span>
-+ <span class="comment"><EM>-- introduced by this binding.</EM></span>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_167_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_95_13">Copy_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_167_23" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_95_23">Usr</A></FONT> : System.Address) <b>return</b> System.Address;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>);
-- <FONT COLOR=green><EM>-- This is the Copyarg_Function for the internal low-level types</EM></FONT>
-- <FONT COLOR=green><EM>-- introduced by this binding.</EM></FONT>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_172_14" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_101_14">Free_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_172_24" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_101_24">Usr</A></FONT> : System.Address);
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>);
-- <FONT COLOR=green><EM>-- This is the Freearg_Function for the internal low-level types</EM></FONT>
-- <FONT COLOR=green><EM>-- introduced by this binding.</EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_177_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_162_13">Field_Check_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_177_33" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_162_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_178_33" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_163_33">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_177_13">Field_Check_Router</A>);
-- <FONT COLOR=green><EM>-- This is the Field_Check_Function for the internal low-level types</EM></FONT>
-- <FONT COLOR=green><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></FONT>
-- <FONT COLOR=green><EM>-- type. It routes the call to the corresponding low-level validation</EM></FONT>
-- <FONT COLOR=green><EM>-- function.</EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_185_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_177_13">Char_Check_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_185_32" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_177_32">Ch</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_186_32" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_178_32">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_185_13">Char_Check_Router</A>);
-- <FONT COLOR=green><EM>-- This is the Char_Check_Function for the internal low-level types</EM></FONT>
-- <FONT COLOR=green><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></FONT>
-- <FONT COLOR=green><EM>-- type. It routes the call to the corresponding low-level validation</EM></FONT>
-- <FONT COLOR=green><EM>-- function.</EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_193_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_192_13">Next_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_193_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_192_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_194_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_193_26">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_193_13">Next_Router</A>);
-- <FONT COLOR=green><EM>-- This is the Choice_Function for the internal low-level types</EM></FONT>
-- <FONT COLOR=green><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></FONT>
-- <FONT COLOR=green><EM>-- type. It routes the call to the corresponding low-level next_choice</EM></FONT>
-- <FONT COLOR=green><EM>-- function.</EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_201_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_207_13">Prev_Router</A></FONT> (<FONT COLOR=red><A NAME="ref_201_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_207_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_202_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_208_26">Usr</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_201_13">Prev_Router</A>);
-- <FONT COLOR=green><EM>-- This is the Choice_Function for the internal low-level types</EM></FONT>
-- <FONT COLOR=green><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></FONT>
-- <FONT COLOR=green><EM>-- type. It routes the call to the corresponding low-level prev_choice</EM></FONT>
-- <FONT COLOR=green><EM>-- function.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- This is the Argument structure maintained by all low-level field types</EM></FONT>
-- <FONT COLOR=green><EM>-- introduced by this binding.</EM></FONT>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_211_9">Argument</A></FONT> <b>is</b> <b>record</b>
-- <FONT COLOR=red><A NAME="ref_212_7">Typ</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_63_9">Field_Type_Access</A>; <FONT COLOR=green><EM>-- the Field_Type creating this record</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_213_7">Usr</A></FONT> : System.Address; <FONT COLOR=green><EM>-- original arg for builtin low-level types</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_214_7">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>; <FONT COLOR=green><EM>-- the original low-level type</EM></FONT>
-+ <b>function</b> <span class="symbol"><A NAME="ref_168_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_95_13">Copy_Arg</A></span> (<span class="symbol"><A NAME="ref_168_23" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_95_23">Usr</A></span> : System.Address) <b>return</b> System.Address;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_13">Copy_Arg</A>);
-+ <span class="comment"><EM>-- This is the Copyarg_Function for the internal low-level types</EM></span>
-+ <span class="comment"><EM>-- introduced by this binding.</EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_173_14" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_101_14">Free_Arg</A></span> (<span class="symbol"><A NAME="ref_173_24" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_101_24">Usr</A></span> : System.Address);
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_14">Free_Arg</A>);
-+ <span class="comment"><EM>-- This is the Freearg_Function for the internal low-level types</EM></span>
-+ <span class="comment"><EM>-- introduced by this binding.</EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_178_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_158_13">Field_Check_Router</A></span> (<span class="symbol"><A NAME="ref_178_33" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_158_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_179_33" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_159_33">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_178_13">Field_Check_Router</A>);
-+ <span class="comment"><EM>-- This is the Field_Check_Function for the internal low-level types</EM></span>
-+ <span class="comment"><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></span>
-+ <span class="comment"><EM>-- type. It routes the call to the corresponding low-level validation</EM></span>
-+ <span class="comment"><EM>-- function.</EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_186_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_173_13">Char_Check_Router</A></span> (<span class="symbol"><A NAME="ref_186_32" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_173_32">Ch</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_47_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_187_32" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_174_32">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_186_13">Char_Check_Router</A>);
-+ <span class="comment"><EM>-- This is the Char_Check_Function for the internal low-level types</EM></span>
-+ <span class="comment"><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></span>
-+ <span class="comment"><EM>-- type. It routes the call to the corresponding low-level validation</EM></span>
-+ <span class="comment"><EM>-- function.</EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_194_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_188_13">Next_Router</A></span> (<span class="symbol"><A NAME="ref_194_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_188_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_195_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_189_26">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_194_13">Next_Router</A>);
-+ <span class="comment"><EM>-- This is the Choice_Function for the internal low-level types</EM></span>
-+ <span class="comment"><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></span>
-+ <span class="comment"><EM>-- type. It routes the call to the corresponding low-level next_choice</EM></span>
-+ <span class="comment"><EM>-- function.</EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_202_13" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_203_13">Prev_Router</A></span> (<span class="symbol"><A NAME="ref_202_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_203_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_203_26" HREF="terminal_interface-curses-forms-field_types__adb.htm#ref_204_26">Usr</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_202_13">Prev_Router</A>);
-+ <span class="comment"><EM>-- This is the Choice_Function for the internal low-level types</EM></span>
-+ <span class="comment"><EM>-- introduced to wrap the low-level types by a Field_Type derived</EM></span>
-+ <span class="comment"><EM>-- type. It routes the call to the corresponding low-level prev_choice</EM></span>
-+ <span class="comment"><EM>-- function.</EM></span>
-+
-+ <span class="comment"><EM>-- This is the Argument structure maintained by all low-level field types</EM></span>
-+ <span class="comment"><EM>-- introduced by this binding.</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_212_9">Argument</A></span> <b>is</b> <b>record</b>
-+ <span class="symbol"><A NAME="ref_213_7">Typ</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_64_9">Field_Type_Access</A>; <span class="comment"><EM>-- the Field_Type creating this record</EM></span>
-+ <span class="symbol"><A NAME="ref_214_7">Usr</A></span> : System.Address; <span class="comment"><EM>-- original arg for builtin low-level types</EM></span>
-+ <span class="symbol"><A NAME="ref_215_7">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>; <span class="comment"><EM>-- the original low-level type</EM></span>
- <b>end</b> <b>record</b>;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_216_9">Argument_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_211_9">Argument</A>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_217_9">Argument_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_212_9">Argument</A>;
-
-- <FONT COLOR=green><EM>-- +----------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- | Some Imports of libform routines to deal with low-level fieldtypes.</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_222_13">New_Fieldtype</A></FONT> (<FONT COLOR=red><A NAME="ref_222_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">Fcheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_104_9">Field_Check_Function</A>;
-- <FONT COLOR=red><A NAME="ref_223_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_222_13">Ccheck</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_108_9">Char_Check_Function</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-+ <span class="comment"><EM>-- +----------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- | Some Imports of libform routines to deal with low-level fieldtypes.</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_223_13">New_Fieldtype</A></span> (<span class="symbol"><A NAME="ref_223_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_223_13">Fcheck</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_105_9">Field_Check_Function</A>;
-+ <span class="symbol"><A NAME="ref_224_28" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_223_13">Ccheck</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_109_9">Char_Check_Function</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
- <b>pragma</b> Import (C, New_Fieldtype, "new_fieldtype");
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_227_13">Set_Fieldtype_Arg</A></FONT> (<FONT COLOR=red><A NAME="ref_227_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-- <FONT COLOR=red><A NAME="ref_228_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Mak</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_92_9">Makearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_162_13">Make_Arg</A>'<b>Access</b>;
-- <FONT COLOR=red><A NAME="ref_229_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Cop</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_96_9">Copyarg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_167_13">Copy_Arg</A>'<b>Access</b>;
-- <FONT COLOR=red><A NAME="ref_230_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_227_13">Fre</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_100_9">Freearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_172_14">Free_Arg</A>'<b>Access</b>)
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_228_13">Set_Fieldtype_Arg</A></span> (<span class="symbol"><A NAME="ref_228_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_228_13">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
-+ <span class="symbol"><A NAME="ref_229_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_228_13">Mak</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_93_9">Makearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_163_13">Make_Arg</A>'<b>Access</b>;
-+ <span class="symbol"><A NAME="ref_230_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_228_13">Cop</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_97_9">Copyarg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_168_13">Copy_Arg</A>'<b>Access</b>;
-+ <span class="symbol"><A NAME="ref_231_32" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_228_13">Fre</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_101_9">Freearg_Function</A> := <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_173_14">Free_Arg</A>'<b>Access</b>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fieldtype_Arg, "set_fieldtype_arg");
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_234_13">Set_Fieldtype_Choice</A></FONT> (<FONT COLOR=red><A NAME="ref_234_35" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Cft</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_132_9">C_Field_Type</A>;
-- <FONT COLOR=red><A NAME="ref_235_35" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Next</A></FONT>, <FONT COLOR=red><A NAME="ref_235_41" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_234_13">Prev</A></FONT> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_112_9">Choice_Function</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_46_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_235_13">Set_Fieldtype_Choice</A></span> (<span class="symbol"><A NAME="ref_235_35" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_235_13">Cft</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_133_9">C_Field_Type</A>;
-+ <span class="symbol"><A NAME="ref_236_35" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_235_13">Next</A></span>, <span class="symbol"><A NAME="ref_236_41" HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_235_13">Prev</A></span> : <A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_113_9">Choice_Function</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fieldtype_Choice, "set_fieldtype_choice");
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_43_41">Field_Types</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_types__ads.htm#ref_44_41">Field_Types</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm 2011-02-25 23:43:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_user_data__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,91 +1,100 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_user_data.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_user_data.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_user_data.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_user_data.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.13 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.15 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--<FONT COLOR=green><EM>-- | man page form_field_userptr.3x</EM></FONT>
--<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_48_46" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A></FONT> <b>is</b>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
-+<span class="comment"><EM>-- |</EM></span>
-+<span class="comment"><EM>-- |=====================================================================</EM></span>
-+<span class="comment"><EM>-- | man page form_field_userptr.3x</EM></span>
-+<span class="comment"><EM>-- |=====================================================================</EM></span>
-+<span class="comment"><EM>-- |</EM></span>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<span class="symbol"><A NAME="ref_48_46" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A></span> <b>is</b>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_54_14" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_55_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_54_29">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_54_14" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_55_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_54_29">Data</A></span> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_57_16">Set_Field_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_57_35" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_58_35" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Usr</A></FONT> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_57_16">Set_Field_Userptr</A></span> (<span class="symbol"><A NAME="ref_57_35" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_58_35" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Usr</A></span> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Field_Userptr, "set_field_userptr");
-
-- <FONT COLOR=red><A NAME="ref_61_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Set_Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_29">Fld</A>, <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_54_29">Data</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_61_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_61_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_57_16">Set_Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_29">Fld</A>, <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_54_29">Data</A>));
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_14">Set_User_Data</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_70_13" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_70_28" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_67_13" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_67_28" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_72_16">Field_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_72_31" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_72_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_69_16">Field_Userptr</A></span> (<span class="symbol"><A NAME="ref_69_31" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_69_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>;
- <b>pragma</b> Import (C, Field_Userptr, "field_userptr");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_72_16">Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_28">Fld</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_69_16">Field_Userptr</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_28">Fld</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_13">Get_User_Data</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_78_14" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_78_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_79_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_60_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_75_14" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_75_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_76_29" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_60_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_60_29">Data</A> := <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_29">Fld</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_59_14">Get_User_Data</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-field_user_data__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,75 +1,87 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-field_user_data.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-field_user_data.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-field_user_data.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-field_user_data.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Field_User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.16 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Field_User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.16 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_43_9" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">User_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_43_9">User</A>;
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_45_41" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_48_46">Field_User_Data</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_userptr.3x.html">form_field_userptr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_53_14" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_54_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_53_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_54_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_55_29">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">set_field_userptr</A></EM></FONT>
-+ <b>type</b> <span class="symbol"><A NAME="ref_43_9" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">User</A></span> <b>is</b> <b>limited</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">User_Access</A></span> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_43_9">User</A>;
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<span class="symbol"><A NAME="ref_45_41" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_48_46">Field_User_Data</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_userptr.3x.html">form_field_userptr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_53_14" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_54_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_53_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_54_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_55_29">Data</A></span> : <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">set_field_userptr</A></EM></span>
- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_53_14">Set_User_Data</A>);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_78_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_78_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_60_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_79_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">field_userptr</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_70_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_28" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_70_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">field_userptr</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Sama as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_75_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_75_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_60_29" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_76_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">field_userptr</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_67_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_28" HREF="terminal_interface-curses-forms-field_user_data__adb.htm#ref_67_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_44_9">User_Access</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_userptr.3x.html">field_userptr</A></EM></span>
-+ <span class="comment"><EM>-- Sama as function</EM></span>
- <b>pragma</b> Inline (Get_User_Data);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-field_user_data__ads.htm#ref_45_41">Field_User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm 2011-02-25 23:43:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-form_user_data__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,92 +1,101 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-form_user_data.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-form_user_data.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-form_user_data.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-form_user_data.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Form_User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.13 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--<FONT COLOR=green><EM>-- | man page form__userptr.3x</EM></FONT>
--<FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
--
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_48_46" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A></FONT> <b>is</b>
--
-- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
--
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_55_14" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_55_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_56_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_54_29">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Form_User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.15 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- |</EM></span>
-+<span class="comment"><EM>-- |=====================================================================</EM></span>
-+<span class="comment"><EM>-- | man page form__userptr.3x</EM></span>
-+<span class="comment"><EM>-- |=====================================================================</EM></span>
-+<span class="comment"><EM>-- |</EM></span>
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-+
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<span class="symbol"><A NAME="ref_48_46" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A></span> <b>is</b>
-+
-+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_55_14" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_55_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_56_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_54_29">Data</A></span> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_58_16">Set_Form_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_58_34" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_59_34" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_58_16">Set_Form_Userptr</A></span> (<span class="symbol"><A NAME="ref_58_34" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_59_34" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Data</A></span> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Form_Userptr, "set_form_userptr");
-
-- <FONT COLOR=red><A NAME="ref_62_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Set_Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_29">Frm</A>, <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_54_29">Data</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_62_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_62_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_58_16">Set_Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_29">Frm</A>, <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_54_29">Data</A>));
- <b>end</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_14">Set_User_Data</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_71_13" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_71_28" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_28">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_68_13" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_68_28" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_28">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_73_16">Form_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_73_30" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_73_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_70_16">Form_Userptr</A></span> (<span class="symbol"><A NAME="ref_70_30" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_70_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>;
- <b>pragma</b> Import (C, Form_Userptr, "form_userptr");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_73_16">Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_28">Frm</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_70_16">Form_Userptr</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_28">Frm</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_13">Get_User_Data</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_79_14" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_79_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_80_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_60_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_76_14" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_76_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_77_29" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_60_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_60_29">Data</A> := <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_29">Frm</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_59_14">Get_User_Data</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms-form_user_data__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,75 +1,87 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms-form_user_data.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms-form_user_data.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms-form_user_data.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms-form_user_data.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms.Form_User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.15 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms.Form_User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.15 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_43_9" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">User_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_43_9">User</A>;
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<FONT COLOR=red><A NAME="ref_45_41" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_48_46">Form_User_Data</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_userptr.3x.html">form_userptr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_53_14" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_55_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_53_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_55_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_56_29">Data</A></FONT> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">set_form_userptr</A></EM></FONT>
-+ <b>type</b> <span class="symbol"><A NAME="ref_43_9" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">User</A></span> <b>is</b> <b>limited</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">User_Access</A></span> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_43_9">User</A>;
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<span class="symbol"><A NAME="ref_45_41" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_48_46">Form_User_Data</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_userptr.3x.html">form_userptr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_53_14" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_55_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_53_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_55_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_56_29">Data</A></span> : <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">set_form_userptr</A></EM></span>
- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_53_14">Set_User_Data</A>);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_79_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_79_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_60_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_80_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">form_userptr</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_71_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_28" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_71_28">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">form_userptr</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_76_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_76_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_60_29" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_77_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">form_userptr</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_68_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_28" HREF="terminal_interface-curses-forms-form_user_data__adb.htm#ref_68_28">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_44_9">User_Access</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_userptr.3x.html">form_userptr</A></EM></span>
-+ <span class="comment"><EM>-- Same as function</EM></span>
- <b>pragma</b> Inline (Get_User_Data);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>.<A HREF="terminal_interface-curses-forms-form_user_data__ads.htm#ref_45_41">Form_User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms__adb.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,1167 +1,1049 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Forms --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.28 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:37:32 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Forms --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.32 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Unchecked_Deallocation;
--<b>with</b> Ada.Unchecked_Conversion;
-
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Pointers;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Pointers;
-
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_51_40" HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_50_40" HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A></span> <b>is</b>
-
-- <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+ <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
-- <b>type</b> C_Field_Array <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-+ <b>type</b> C_Field_Array <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
- <b>package</b> F_Array <b>is</b> <b>new</b>
-- <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>, C_Field_Array, <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>);
-+ <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>, C_Field_Array, <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A>);
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- subtype chars_ptr is Interfaces.C.Strings.chars_ptr;</EM></FONT>
--
-- <b>function</b> FOS_2_CInt <b>is</b> <b>new</b>
-- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>);
--
-- <b>function</b> CInt_2_FOS <b>is</b> <b>new</b>
-- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>,
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>);
--
-- <b>function</b> FrmOS_2_CInt <b>is</b> <b>new</b>
-- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>);
--
-- <b>function</b> CInt_2_FrmOS <b>is</b> <b>new</b>
-- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>,
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>);
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- subtype chars_ptr is Interfaces.C.Strings.chars_ptr;</EM></span>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_81_14" HREF="terminal_interface-curses-forms__ads.htm#ref_280_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_81_28" HREF="terminal_interface-curses-forms__ads.htm#ref_280_28">Key</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A>;
-- <FONT COLOR=red><A NAME="ref_82_33" HREF="terminal_interface-curses-forms__ads.htm#ref_281_28">Name</A></FONT> : <b>out</b> String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_64_14" HREF="terminal_interface-curses-forms__ads.htm#ref_277_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_64_28" HREF="terminal_interface-curses-forms__ads.htm#ref_277_28">Key</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A>;
-+ <span class="symbol"><A NAME="ref_65_33" HREF="terminal_interface-curses-forms__ads.htm#ref_278_28">Name</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_84_16">Form_Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_84_35" HREF="terminal_interface-curses-forms__adb.htm#ref_84_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_67_16">Form_Request_Name</A></span> (<span class="symbol"><A NAME="ref_67_35" HREF="terminal_interface-curses-forms__adb.htm#ref_67_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Form_Request_Name, "form_request_name");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_84_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_280_28">Key</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#ref_281_28">Name</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_280_14">Request_Name</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_67_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_277_28">Key</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#ref_278_28">Name</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_277_14">Request_Name</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_90_13" HREF="terminal_interface-curses-forms__ads.htm#ref_283_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_90_27" HREF="terminal_interface-curses-forms__ads.htm#ref_283_28">Key</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A>) <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_73_13" HREF="terminal_interface-curses-forms__ads.htm#ref_280_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_73_27" HREF="terminal_interface-curses-forms__ads.htm#ref_280_28">Key</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A>) <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_92_16">Form_Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_92_35" HREF="terminal_interface-curses-forms__adb.htm#ref_92_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_75_16">Form_Request_Name</A></span> (<span class="symbol"><A NAME="ref_75_35" HREF="terminal_interface-curses-forms__adb.htm#ref_75_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Form_Request_Name, "form_request_name");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_92_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_283_28">Key</A>)));
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_283_14">Request_Name</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_field_new.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_108_13" HREF="terminal_interface-curses-forms__ads.htm#ref_297_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_108_21" HREF="terminal_interface-curses-forms__ads.htm#ref_297_21">Height</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_109_21" HREF="terminal_interface-curses-forms__ads.htm#ref_298_21">Width</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_110_21" HREF="terminal_interface-curses-forms__ads.htm#ref_299_21">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_111_21" HREF="terminal_interface-curses-forms__ads.htm#ref_300_21">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_112_21" HREF="terminal_interface-curses-forms__ads.htm#ref_301_21">Off_Screen</A></FONT> : Natural := 0;
-- <FONT COLOR=red><A NAME="ref_113_21" HREF="terminal_interface-curses-forms__ads.htm#ref_302_21">More_Buffers</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First)
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_75_16">Form_Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_280_28">Key</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_280_14">Request_Name</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_field_new.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_91_13" HREF="terminal_interface-curses-forms__ads.htm#ref_294_13">Create</A></span> (<span class="symbol"><A NAME="ref_91_21" HREF="terminal_interface-curses-forms__ads.htm#ref_294_21">Height</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_92_21" HREF="terminal_interface-curses-forms__ads.htm#ref_295_21">Width</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_93_21" HREF="terminal_interface-curses-forms__ads.htm#ref_296_21">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_94_21" HREF="terminal_interface-curses-forms__ads.htm#ref_297_21">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_95_21" HREF="terminal_interface-curses-forms__ads.htm#ref_298_21">Off_Screen</A></span> : Natural := 0;
-+ <span class="symbol"><A NAME="ref_96_21" HREF="terminal_interface-curses-forms__ads.htm#ref_299_21">More_Buffers</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_116_16">Newfield</A></FONT> (<FONT COLOR=red><A NAME="ref_116_26" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">H</A></FONT>, <FONT COLOR=red><A NAME="ref_116_29" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">W</A></FONT>, <FONT COLOR=red><A NAME="ref_116_32" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">T</A></FONT>, <FONT COLOR=red><A NAME="ref_116_35" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">L</A></FONT>, <FONT COLOR=red><A NAME="ref_116_38" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">O</A></FONT>, <FONT COLOR=red><A NAME="ref_116_41" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">M</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_99_16">Newfield</A></span> (<span class="symbol"><A NAME="ref_99_26" HREF="terminal_interface-curses-forms__adb.htm#ref_99_16">H</A></span>, <span class="symbol"><A NAME="ref_99_29" HREF="terminal_interface-curses-forms__adb.htm#ref_99_16">W</A></span>, <span class="symbol"><A NAME="ref_99_32" HREF="terminal_interface-curses-forms__adb.htm#ref_99_16">T</A></span>, <span class="symbol"><A NAME="ref_99_35" HREF="terminal_interface-curses-forms__adb.htm#ref_99_16">L</A></span>, <span class="symbol"><A NAME="ref_99_38" HREF="terminal_interface-curses-forms__adb.htm#ref_99_16">O</A></span>, <span class="symbol"><A NAME="ref_99_41" HREF="terminal_interface-curses-forms__adb.htm#ref_99_16">M</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
- <b>pragma</b> Import (C, Newfield, "new_field");
-- <FONT COLOR=red><A NAME="ref_118_7">Fld</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">Newfield</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_297_21">Height</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_298_21">Width</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_299_21">Top</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_300_21">Left</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_301_21">Off_Screen</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_302_21">More_Buffers</A>));
-- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_118_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_118_7">Fld</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_297_13">Create</A>;
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_131_14" HREF="terminal_interface-curses-forms__ads.htm#ref_319_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_131_22" HREF="terminal_interface-curses-forms__ads.htm#ref_319_22">Fld</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>)
-+ <span class="symbol"><A NAME="ref_101_7">Fld</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_99_16">Newfield</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_294_21">Height</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_295_21">Width</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_296_21">Top</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_297_21">Left</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_298_21">Off_Screen</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_299_21">More_Buffers</A>));
-+ <b>begin</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_101_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_101_7">Fld</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_294_13">Create</A>;
-+<span class="comment"><EM>-- |</EM></span>
-+<span class="comment"><EM>-- |</EM></span>
-+<span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_114_14" HREF="terminal_interface-curses-forms__ads.htm#ref_316_14">Delete</A></span> (<span class="symbol"><A NAME="ref_114_22" HREF="terminal_interface-curses-forms__ads.htm#ref_316_22">Fld</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_133_16">Free_Field</A></FONT> (<FONT COLOR=red><A NAME="ref_133_28" HREF="terminal_interface-curses-forms__adb.htm#ref_133_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_116_16">Free_Field</A></span> (<span class="symbol"><A NAME="ref_116_28" HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Free_Field, "free_field");
-
-- <FONT COLOR=red><A NAME="ref_136_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_136_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_133_16">Free_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_319_22">Fld</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_136_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_136_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_319_22">Fld</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_319_14">Delete</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_147_13" HREF="terminal_interface-curses-forms__ads.htm#ref_325_13">Duplicate</A></FONT> (<FONT COLOR=red><A NAME="ref_147_24" HREF="terminal_interface-curses-forms__ads.htm#ref_325_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_148_24" HREF="terminal_interface-curses-forms__ads.htm#ref_326_24">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_149_24" HREF="terminal_interface-curses-forms__ads.htm#ref_327_24">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_151_16">Dup_Field</A></FONT> (<FONT COLOR=red><A NAME="ref_151_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_152_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Top</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_153_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Left</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_116_16">Free_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_316_22">Fld</A>));
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_316_22">Fld</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_316_14">Delete</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_126_13" HREF="terminal_interface-curses-forms__ads.htm#ref_322_13">Duplicate</A></span> (<span class="symbol"><A NAME="ref_126_24" HREF="terminal_interface-curses-forms__ads.htm#ref_322_24">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_127_24" HREF="terminal_interface-curses-forms__ads.htm#ref_323_24">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_128_24" HREF="terminal_interface-curses-forms__ads.htm#ref_324_24">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_130_16">Dup_Field</A></span> (<span class="symbol"><A NAME="ref_130_27" HREF="terminal_interface-curses-forms__adb.htm#ref_130_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_131_27" HREF="terminal_interface-curses-forms__adb.htm#ref_130_16">Top</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_132_27" HREF="terminal_interface-curses-forms__adb.htm#ref_130_16">Left</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
- <b>pragma</b> Import (C, Dup_Field, "dup_field");
-
-- <FONT COLOR=red><A NAME="ref_156_7">F</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Dup_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_325_24">Fld</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_326_24">Top</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_327_24">Left</A>));
-- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_156_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_156_7">F</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_325_13">Duplicate</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_168_13" HREF="terminal_interface-curses-forms__ads.htm#ref_332_13">Link</A></FONT> (<FONT COLOR=red><A NAME="ref_168_19" HREF="terminal_interface-curses-forms__ads.htm#ref_332_19">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_169_19" HREF="terminal_interface-curses-forms__ads.htm#ref_333_19">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_170_19" HREF="terminal_interface-curses-forms__ads.htm#ref_334_19">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_172_16">Lnk_Field</A></FONT> (<FONT COLOR=red><A NAME="ref_172_27" HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_173_27" HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Top</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_174_27" HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Left</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_135_7">F</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_130_16">Dup_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_322_24">Fld</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_323_24">Top</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_324_24">Left</A>));
-+ <b>begin</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_135_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_135_7">F</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_322_13">Duplicate</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_147_13" HREF="terminal_interface-curses-forms__ads.htm#ref_329_13">Link</A></span> (<span class="symbol"><A NAME="ref_147_19" HREF="terminal_interface-curses-forms__ads.htm#ref_329_19">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_148_19" HREF="terminal_interface-curses-forms__ads.htm#ref_330_19">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_149_19" HREF="terminal_interface-curses-forms__ads.htm#ref_331_19">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_151_16">Lnk_Field</A></span> (<span class="symbol"><A NAME="ref_151_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_152_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Top</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_153_27" HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Left</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
- <b>pragma</b> Import (C, Lnk_Field, "link_field");
-
-- <FONT COLOR=red><A NAME="ref_177_7">F</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_172_16">Lnk_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_332_19">Fld</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_333_19">Top</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_334_19">Left</A>));
-+ <span class="symbol"><A NAME="ref_156_7">F</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_151_16">Lnk_Field</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_329_19">Fld</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_330_19">Top</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_331_19">Left</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_177_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_156_7">F</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_177_7">F</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_332_13">Link</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_field_just.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_193_14" HREF="terminal_interface-curses-forms__ads.htm#ref_343_14">Set_Justification</A></FONT> (<FONT COLOR=red><A NAME="ref_193_33" HREF="terminal_interface-curses-forms__ads.htm#ref_343_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_194_33" HREF="terminal_interface-curses-forms__ads.htm#ref_344_33">Just</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_33">None</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_156_7">F</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_329_13">Link</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_field_just.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_172_14" HREF="terminal_interface-curses-forms__ads.htm#ref_340_14">Set_Justification</A></span> (<span class="symbol"><A NAME="ref_172_33" HREF="terminal_interface-curses-forms__ads.htm#ref_340_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_173_33" HREF="terminal_interface-curses-forms__ads.htm#ref_341_33">Just</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_33">None</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_196_16">Set_Field_Just</A></FONT> (<FONT COLOR=red><A NAME="ref_196_32" HREF="terminal_interface-curses-forms__adb.htm#ref_196_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_197_32" HREF="terminal_interface-curses-forms__adb.htm#ref_196_16">Just</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_175_16">Set_Field_Just</A></span> (<span class="symbol"><A NAME="ref_175_32" HREF="terminal_interface-curses-forms__adb.htm#ref_175_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_176_32" HREF="terminal_interface-curses-forms__adb.htm#ref_175_16">Just</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Field_Just, "set_field_just");
-
-- <FONT COLOR=red><A NAME="ref_200_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> :=
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_196_16">Set_Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_343_33">Fld</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_344_33">Just</A>)));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_200_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_200_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_343_14">Set_Justification</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_211_13" HREF="terminal_interface-curses-forms__ads.htm#ref_349_13">Get_Justification</A></FONT> (<FONT COLOR=red><A NAME="ref_211_32" HREF="terminal_interface-curses-forms__ads.htm#ref_349_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_175_16">Set_Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_340_33">Fld</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Field_Justification</A>'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_341_33">Just</A>))));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_340_14">Set_Justification</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_186_13" HREF="terminal_interface-curses-forms__ads.htm#ref_346_13">Get_Justification</A></span> (<span class="symbol"><A NAME="ref_186_32" HREF="terminal_interface-curses-forms__ads.htm#ref_346_32">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Field_Justification</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_213_16">Field_Just</A></FONT> (<FONT COLOR=red><A NAME="ref_213_28" HREF="terminal_interface-curses-forms__adb.htm#ref_213_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_188_16">Field_Just</A></span> (<span class="symbol"><A NAME="ref_188_28" HREF="terminal_interface-curses-forms__adb.htm#ref_188_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Field_Just, "field_just");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>'Val (<A HREF="terminal_interface-curses-forms__adb.htm#ref_213_16">Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_349_32">Fld</A>));
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_349_13">Get_Justification</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_field_buffer.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_225_14" HREF="terminal_interface-curses-forms__ads.htm#ref_358_14">Set_Buffer</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_226_7" HREF="terminal_interface-curses-forms__ads.htm#ref_359_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_227_7" HREF="terminal_interface-curses-forms__ads.htm#ref_360_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First;
-- <FONT COLOR=red><A NAME="ref_228_7" HREF="terminal_interface-curses-forms__ads.htm#ref_361_7">Str</A></FONT> : String)
-- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_230_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_231_16">Set_Fld_Buffer</A></FONT> (<FONT COLOR=red><A NAME="ref_231_32" HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_232_34" HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">Bufnum</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_233_34" HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">S</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_230_12">Char_Ptr</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Field_Justification</A>'Val (<A HREF="terminal_interface-curses-forms__adb.htm#ref_188_16">Field_Just</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_346_32">Fld</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_346_13">Get_Justification</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_field_buffer.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_200_14" HREF="terminal_interface-curses-forms__ads.htm#ref_355_14">Set_Buffer</A></span>
-+ (<span class="symbol"><A NAME="ref_201_7" HREF="terminal_interface-curses-forms__ads.htm#ref_356_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_202_7" HREF="terminal_interface-curses-forms__ads.htm#ref_357_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First;
-+ <span class="symbol"><A NAME="ref_203_7" HREF="terminal_interface-curses-forms__ads.htm#ref_358_7">Str</A></span> : String)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_205_16">Set_Fld_Buffer</A></span> (<span class="symbol"><A NAME="ref_205_32" HREF="terminal_interface-curses-forms__adb.htm#ref_205_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_206_34" HREF="terminal_interface-curses-forms__adb.htm#ref_205_16">Bufnum</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_207_34" HREF="terminal_interface-curses-forms__adb.htm#ref_205_16">S</A></span> : char_array)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Buffer, "set_field_buffer");
-
-- <FONT COLOR=red><A NAME="ref_237_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-forms__ads.htm#ref_361_7">Str</A>'Length);
-- <FONT COLOR=red><A NAME="ref_238_7">Len</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_239_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses-forms__ads.htm#ref_361_7">Str</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_237_7">Txt</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_238_7">Len</A>);
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_239_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_231_16">Set_Fld_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_359_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_360_7">Buffer</A>), <A HREF="terminal_interface-curses-forms__adb.htm#ref_237_7">Txt</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_237_7">Txt</A>'First)'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_239_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_239_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_358_14">Set_Buffer</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_250_14" HREF="terminal_interface-curses-forms__ads.htm#ref_366_14">Get_Buffer</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_251_7" HREF="terminal_interface-curses-forms__ads.htm#ref_367_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_252_7" HREF="terminal_interface-curses-forms__ads.htm#ref_368_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First;
-- <FONT COLOR=red><A NAME="ref_253_7" HREF="terminal_interface-curses-forms__ads.htm#ref_369_7">Str</A></FONT> : <b>out</b> String)
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_205_16">Set_Fld_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_356_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_357_7">Buffer</A>), To_C (<A HREF="terminal_interface-curses-forms__ads.htm#ref_358_7">Str</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_355_14">Set_Buffer</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_217_14" HREF="terminal_interface-curses-forms__ads.htm#ref_363_14">Get_Buffer</A></span>
-+ (<span class="symbol"><A NAME="ref_218_7" HREF="terminal_interface-curses-forms__ads.htm#ref_364_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_219_7" HREF="terminal_interface-curses-forms__ads.htm#ref_365_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First;
-+ <span class="symbol"><A NAME="ref_220_7" HREF="terminal_interface-curses-forms__ads.htm#ref_366_7">Str</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_255_16">Field_Buffer</A></FONT> (<FONT COLOR=red><A NAME="ref_255_30" HREF="terminal_interface-curses-forms__adb.htm#ref_255_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_256_30" HREF="terminal_interface-curses-forms__adb.htm#ref_255_16">B</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_222_16">Field_Buffer</A></span> (<span class="symbol"><A NAME="ref_222_30" HREF="terminal_interface-curses-forms__adb.htm#ref_222_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_223_30" HREF="terminal_interface-curses-forms__adb.htm#ref_222_16">B</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Field_Buffer, "field_buffer");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_255_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_367_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_368_7">Buffer</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#ref_369_7">Str</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_366_14">Get_Buffer</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_222_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_364_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_365_7">Buffer</A>)), <A HREF="terminal_interface-curses-forms__ads.htm#ref_366_7">Str</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_363_14">Get_Buffer</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_262_13" HREF="terminal_interface-curses-forms__ads.htm#ref_372_13">Get_Buffer</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_263_7" HREF="terminal_interface-curses-forms__ads.htm#ref_373_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_264_7" HREF="terminal_interface-curses-forms__ads.htm#ref_374_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_229_13" HREF="terminal_interface-curses-forms__ads.htm#ref_369_13">Get_Buffer</A></span>
-+ (<span class="symbol"><A NAME="ref_230_7" HREF="terminal_interface-curses-forms__ads.htm#ref_370_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_231_7" HREF="terminal_interface-curses-forms__ads.htm#ref_371_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First) <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_266_16">Field_Buffer</A></FONT> (<FONT COLOR=red><A NAME="ref_266_30" HREF="terminal_interface-curses-forms__adb.htm#ref_266_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_267_30" HREF="terminal_interface-curses-forms__adb.htm#ref_266_16">B</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_233_16">Field_Buffer</A></span> (<span class="symbol"><A NAME="ref_233_30" HREF="terminal_interface-curses-forms__adb.htm#ref_233_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_234_30" HREF="terminal_interface-curses-forms__adb.htm#ref_233_16">B</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Field_Buffer, "field_buffer");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_266_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_373_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_374_7">Buffer</A>)));
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_372_13">Get_Buffer</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_275_14" HREF="terminal_interface-curses-forms__ads.htm#ref_380_14">Set_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_275_26" HREF="terminal_interface-curses-forms__ads.htm#ref_380_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_276_26" HREF="terminal_interface-curses-forms__ads.htm#ref_381_26">Status</A></FONT> : Boolean := True)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_233_16">Field_Buffer</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_370_7">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_371_7">Buffer</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_369_13">Get_Buffer</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_242_14" HREF="terminal_interface-curses-forms__ads.htm#ref_377_14">Set_Status</A></span> (<span class="symbol"><A NAME="ref_242_26" HREF="terminal_interface-curses-forms__ads.htm#ref_377_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_243_26" HREF="terminal_interface-curses-forms__ads.htm#ref_378_26">Status</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_278_16">Set_Fld_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_278_32" HREF="terminal_interface-curses-forms__adb.htm#ref_278_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_279_32" HREF="terminal_interface-curses-forms__adb.htm#ref_278_16">St</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_245_16">Set_Fld_Status</A></span> (<span class="symbol"><A NAME="ref_245_32" HREF="terminal_interface-curses-forms__adb.htm#ref_245_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_246_32" HREF="terminal_interface-curses-forms__adb.htm#ref_245_16">St</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Fld_Status, "set_field_status");
-
-- <FONT COLOR=red><A NAME="ref_282_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_278_16">Set_Fld_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_380_26">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_381_26">Status</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_282_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_245_16">Set_Fld_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_377_26">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_378_26">Status</A>)) /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_86_7">E_Ok</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_380_14">Set_Status</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_291_13" HREF="terminal_interface-curses-forms__ads.htm#ref_386_13">Changed</A></FONT> (<FONT COLOR=red><A NAME="ref_291_22" HREF="terminal_interface-curses-forms__ads.htm#ref_386_22">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_377_14">Set_Status</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_257_13" HREF="terminal_interface-curses-forms__ads.htm#ref_383_13">Changed</A></span> (<span class="symbol"><A NAME="ref_257_22" HREF="terminal_interface-curses-forms__ads.htm#ref_383_22">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_293_16">Field_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_293_30" HREF="terminal_interface-curses-forms__adb.htm#ref_293_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_259_16">Field_Status</A></span> (<span class="symbol"><A NAME="ref_259_30" HREF="terminal_interface-curses-forms__adb.htm#ref_259_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Field_Status, "field_status");
-
-- <FONT COLOR=red><A NAME="ref_296_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_293_16">Field_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_386_22">Fld</A>);
-+ <span class="symbol"><A NAME="ref_262_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_259_16">Field_Status</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_383_22">Fld</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_296_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_262_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_68_4">Curses_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_386_13">Changed</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_307_14" HREF="terminal_interface-curses-forms__ads.htm#ref_391_14">Set_Maximum_Size</A></FONT> (<FONT COLOR=red><A NAME="ref_307_32" HREF="terminal_interface-curses-forms__ads.htm#ref_391_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_308_32" HREF="terminal_interface-curses-forms__ads.htm#ref_392_32">Max</A></FONT> : Natural := 0)
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_383_13">Changed</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_273_14" HREF="terminal_interface-curses-forms__ads.htm#ref_388_14">Set_Maximum_Size</A></span> (<span class="symbol"><A NAME="ref_273_32" HREF="terminal_interface-curses-forms__ads.htm#ref_388_32">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_274_32" HREF="terminal_interface-curses-forms__ads.htm#ref_389_32">Max</A></span> : Natural := 0)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_310_16">Set_Field_Max</A></FONT> (<FONT COLOR=red><A NAME="ref_310_31" HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_311_31" HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">M</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_276_16">Set_Field_Max</A></span> (<span class="symbol"><A NAME="ref_276_31" HREF="terminal_interface-curses-forms__adb.htm#ref_276_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_277_31" HREF="terminal_interface-curses-forms__adb.htm#ref_276_16">M</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Field_Max, "set_max_field");
-
-- <FONT COLOR=red><A NAME="ref_314_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">Set_Field_Max</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_391_32">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_392_32">Max</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_314_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_314_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_391_14">Set_Maximum_Size</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_field_opts.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_327_14" HREF="terminal_interface-curses-forms__ads.htm#ref_401_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_327_27" HREF="terminal_interface-curses-forms__ads.htm#ref_401_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_328_27" HREF="terminal_interface-curses-forms__ads.htm#ref_402_27">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_276_16">Set_Field_Max</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_388_32">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_389_32">Max</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_388_14">Set_Maximum_Size</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_field_opts.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_290_14" HREF="terminal_interface-curses-forms__ads.htm#ref_398_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_290_27" HREF="terminal_interface-curses-forms__ads.htm#ref_398_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_291_27" HREF="terminal_interface-curses-forms__ads.htm#ref_399_27">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_330_16">Set_Field_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_330_32" HREF="terminal_interface-curses-forms__adb.htm#ref_330_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_331_32" HREF="terminal_interface-curses-forms__adb.htm#ref_330_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_293_16">Set_Field_Opts</A></span> (<span class="symbol"><A NAME="ref_293_32" HREF="terminal_interface-curses-forms__adb.htm#ref_293_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_294_32" HREF="terminal_interface-curses-forms__adb.htm#ref_293_16">Opt</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Field_Opts, "set_field_opts");
-
-- <FONT COLOR=red><A NAME="ref_334_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_402_27">Options</A>);
-- <FONT COLOR=red><A NAME="ref_335_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_335_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_330_16">Set_Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_401_27">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_334_7">Opt</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_335_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_335_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_401_14">Set_Options</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_345_14" HREF="terminal_interface-curses-forms__ads.htm#ref_407_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_345_30" HREF="terminal_interface-curses-forms__ads.htm#ref_407_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_346_30" HREF="terminal_interface-curses-forms__ads.htm#ref_408_30">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>;
-- <FONT COLOR=red><A NAME="ref_347_30" HREF="terminal_interface-curses-forms__ads.htm#ref_409_30">On</A></FONT> : Boolean := True)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_293_16">Set_Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_398_27">Fld</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_399_27">Options</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_398_14">Set_Options</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_303_14" HREF="terminal_interface-curses-forms__ads.htm#ref_404_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_303_30" HREF="terminal_interface-curses-forms__ads.htm#ref_404_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_304_30" HREF="terminal_interface-curses-forms__ads.htm#ref_405_30">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_305_30" HREF="terminal_interface-curses-forms__ads.htm#ref_406_30">On</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_349_16">Field_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="ref_349_31" HREF="terminal_interface-curses-forms__adb.htm#ref_349_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_350_31" HREF="terminal_interface-curses-forms__adb.htm#ref_349_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_307_16">Field_Opts_On</A></span> (<span class="symbol"><A NAME="ref_307_31" HREF="terminal_interface-curses-forms__adb.htm#ref_307_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_308_31" HREF="terminal_interface-curses-forms__adb.htm#ref_307_16">Opt</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Field_Opts_On, "field_opts_on");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_352_16">Field_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="ref_352_32" HREF="terminal_interface-curses-forms__adb.htm#ref_352_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_353_32" HREF="terminal_interface-curses-forms__adb.htm#ref_352_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_310_16">Field_Opts_Off</A></span> (<span class="symbol"><A NAME="ref_310_32" HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_311_32" HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">Opt</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Field_Opts_Off, "field_opts_off");
-
-- <FONT COLOR=red><A NAME="ref_356_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <FONT COLOR=red><A NAME="ref_357_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_408_30">Options</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_409_30">On</A> <b>then</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_349_16">Field_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_407_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_357_7">Opt</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_406_30">On</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_307_16">Field_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_404_30">Fld</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_405_30">Options</A>));
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_352_16">Field_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_407_30">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_357_7">Opt</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_310_16">Field_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_404_30">Fld</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_405_30">Options</A>));
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_356_7">Err</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_407_14">Switch_Options</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_371_14" HREF="terminal_interface-curses-forms__ads.htm#ref_415_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_371_27" HREF="terminal_interface-curses-forms__ads.htm#ref_415_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_372_27" HREF="terminal_interface-curses-forms__ads.htm#ref_416_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>)
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_404_14">Switch_Options</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_324_14" HREF="terminal_interface-curses-forms__ads.htm#ref_412_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_324_27" HREF="terminal_interface-curses-forms__ads.htm#ref_412_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_325_27" HREF="terminal_interface-curses-forms__ads.htm#ref_413_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_374_16">Field_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_374_28" HREF="terminal_interface-curses-forms__adb.htm#ref_374_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_327_16">Field_Opts</A></span> (<span class="symbol"><A NAME="ref_327_28" HREF="terminal_interface-curses-forms__adb.htm#ref_327_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>;
- <b>pragma</b> Import (C, Field_Opts, "field_opts");
-
-- <FONT COLOR=red><A NAME="ref_377_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_374_16">Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_415_27">Fld</A>);
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_416_27">Options</A> := CInt_2_FOS (<A HREF="terminal_interface-curses-forms__adb.htm#ref_377_7">Res</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_415_14">Get_Options</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_384_13" HREF="terminal_interface-curses-forms__ads.htm#ref_420_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_384_26" HREF="terminal_interface-curses-forms__ads.htm#ref_420_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>
-- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_387_7">Fos</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>;
-- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_415_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_420_26">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_387_7">Fos</A>);
-- <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_387_7">Fos</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_420_13">Get_Options</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_field_attributes.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_399_14" HREF="terminal_interface-curses-forms__ads.htm#ref_430_14">Set_Foreground</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_400_7" HREF="terminal_interface-curses-forms__ads.htm#ref_431_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_401_7" HREF="terminal_interface-curses-forms__ads.htm#ref_432_7">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_402_7" HREF="terminal_interface-curses-forms__ads.htm#ref_433_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First)
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_413_27">Options</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_327_16">Field_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_412_27">Fld</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_412_14">Get_Options</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_336_13" HREF="terminal_interface-curses-forms__ads.htm#ref_417_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_336_26" HREF="terminal_interface-curses-forms__ads.htm#ref_417_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>
-+ <b>is</b>
-+ <span class="symbol"><A NAME="ref_339_7">Fos</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>;
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_412_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_417_26">Fld</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_339_7">Fos</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_339_7">Fos</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_417_13">Get_Options</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_field_attributes.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_351_14" HREF="terminal_interface-curses-forms__ads.htm#ref_427_14">Set_Foreground</A></span>
-+ (<span class="symbol"><A NAME="ref_352_7" HREF="terminal_interface-curses-forms__ads.htm#ref_428_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_353_7" HREF="terminal_interface-curses-forms__ads.htm#ref_429_7">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_354_7" HREF="terminal_interface-curses-forms__ads.htm#ref_430_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_404_16">Set_Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_404_32" HREF="terminal_interface-curses-forms__adb.htm#ref_404_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_405_32" HREF="terminal_interface-curses-forms__adb.htm#ref_404_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_356_16">Set_Field_Fore</A></span> (<span class="symbol"><A NAME="ref_356_32" HREF="terminal_interface-curses-forms__adb.htm#ref_356_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_357_32" HREF="terminal_interface-curses-forms__adb.htm#ref_356_16">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Field_Fore, "set_field_fore");
-
-- <FONT COLOR=red><A NAME="ref_408_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_433_7">Color</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_432_7">Fore</A>);
-- <FONT COLOR=red><A NAME="ref_411_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> :=
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_404_16">Set_Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_431_7">Fld</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-forms__adb.htm#ref_408_7">Ch</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_411_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_411_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_430_14">Set_Foreground</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_421_14" HREF="terminal_interface-curses-forms__ads.htm#ref_438_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_421_26" HREF="terminal_interface-curses-forms__ads.htm#ref_438_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_422_26" HREF="terminal_interface-curses-forms__ads.htm#ref_439_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_356_16">Set_Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_428_7">Fld</A>, (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_430_7">Color</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_429_7">Fore</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_427_14">Set_Foreground</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_368_14" HREF="terminal_interface-curses-forms__ads.htm#ref_435_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_368_26" HREF="terminal_interface-curses-forms__ads.htm#ref_435_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_369_26" HREF="terminal_interface-curses-forms__ads.htm#ref_436_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_424_16">Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_424_28" HREF="terminal_interface-curses-forms__adb.htm#ref_424_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_371_16">Field_Fore</A></span> (<span class="symbol"><A NAME="ref_371_28" HREF="terminal_interface-curses-forms__adb.htm#ref_371_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Field_Fore, "field_fore");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_439_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_424_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_438_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_438_14">Foreground</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_436_26">Fore</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_371_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_435_26">Fld</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_435_14">Foreground</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_430_14" HREF="terminal_interface-curses-forms__ads.htm#ref_443_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_430_26" HREF="terminal_interface-curses-forms__ads.htm#ref_443_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_431_26" HREF="terminal_interface-curses-forms__ads.htm#ref_444_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_432_26" HREF="terminal_interface-curses-forms__ads.htm#ref_445_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_377_14" HREF="terminal_interface-curses-forms__ads.htm#ref_440_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_377_26" HREF="terminal_interface-curses-forms__ads.htm#ref_440_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_378_26" HREF="terminal_interface-curses-forms__ads.htm#ref_441_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_379_26" HREF="terminal_interface-curses-forms__ads.htm#ref_442_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_434_16">Field_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_434_28" HREF="terminal_interface-curses-forms__adb.htm#ref_434_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_381_16">Field_Fore</A></span> (<span class="symbol"><A NAME="ref_381_28" HREF="terminal_interface-curses-forms__adb.htm#ref_381_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Field_Fore, "field_fore");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_444_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_434_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_443_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_445_26">Color</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_434_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_443_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_443_14">Foreground</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_443_14" HREF="terminal_interface-curses-forms__ads.htm#ref_450_14">Set_Background</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_444_7" HREF="terminal_interface-curses-forms__ads.htm#ref_451_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_445_7" HREF="terminal_interface-curses-forms__ads.htm#ref_452_7">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_446_7" HREF="terminal_interface-curses-forms__ads.htm#ref_453_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First)
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_441_26">Fore</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_381_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_440_26">Fld</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_442_26">Color</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_381_16">Field_Fore</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_440_26">Fld</A>).<A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_440_14">Foreground</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_390_14" HREF="terminal_interface-curses-forms__ads.htm#ref_447_14">Set_Background</A></span>
-+ (<span class="symbol"><A NAME="ref_391_7" HREF="terminal_interface-curses-forms__ads.htm#ref_448_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_392_7" HREF="terminal_interface-curses-forms__ads.htm#ref_449_7">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_393_7" HREF="terminal_interface-curses-forms__ads.htm#ref_450_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_448_16">Set_Field_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_448_32" HREF="terminal_interface-curses-forms__adb.htm#ref_448_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_449_32" HREF="terminal_interface-curses-forms__adb.htm#ref_448_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_395_16">Set_Field_Back</A></span> (<span class="symbol"><A NAME="ref_395_32" HREF="terminal_interface-curses-forms__adb.htm#ref_395_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_396_32" HREF="terminal_interface-curses-forms__adb.htm#ref_395_16">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Field_Back, "set_field_back");
-
-- <FONT COLOR=red><A NAME="ref_452_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_453_7">Color</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_452_7">Back</A>);
-- <FONT COLOR=red><A NAME="ref_455_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> :=
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_448_16">Set_Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_451_7">Fld</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-forms__adb.htm#ref_452_7">Ch</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_455_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_455_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_450_14">Set_Background</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_465_14" HREF="terminal_interface-curses-forms__ads.htm#ref_458_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_465_26" HREF="terminal_interface-curses-forms__ads.htm#ref_458_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_466_26" HREF="terminal_interface-curses-forms__ads.htm#ref_459_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_395_16">Set_Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_448_7">Fld</A>, (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_450_7">Color</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_449_7">Back</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_447_14">Set_Background</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_407_14" HREF="terminal_interface-curses-forms__ads.htm#ref_455_14">Background</A></span> (<span class="symbol"><A NAME="ref_407_26" HREF="terminal_interface-curses-forms__ads.htm#ref_455_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_408_26" HREF="terminal_interface-curses-forms__ads.htm#ref_456_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_468_16">Field_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_468_28" HREF="terminal_interface-curses-forms__adb.htm#ref_468_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_410_16">Field_Back</A></span> (<span class="symbol"><A NAME="ref_410_28" HREF="terminal_interface-curses-forms__adb.htm#ref_410_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Field_Back, "field_back");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_459_26">Back</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-forms__adb.htm#ref_468_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_458_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_458_14">Background</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_456_26">Back</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_410_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_455_26">Fld</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_455_14">Background</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_474_14" HREF="terminal_interface-curses-forms__ads.htm#ref_463_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_474_26" HREF="terminal_interface-curses-forms__ads.htm#ref_463_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_475_26" HREF="terminal_interface-curses-forms__ads.htm#ref_464_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_476_26" HREF="terminal_interface-curses-forms__ads.htm#ref_465_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_416_14" HREF="terminal_interface-curses-forms__ads.htm#ref_460_14">Background</A></span> (<span class="symbol"><A NAME="ref_416_26" HREF="terminal_interface-curses-forms__ads.htm#ref_460_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_417_26" HREF="terminal_interface-curses-forms__ads.htm#ref_461_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_418_26" HREF="terminal_interface-curses-forms__ads.htm#ref_462_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_478_16">Field_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_478_28" HREF="terminal_interface-curses-forms__adb.htm#ref_478_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_420_16">Field_Back</A></span> (<span class="symbol"><A NAME="ref_420_28" HREF="terminal_interface-curses-forms__adb.htm#ref_420_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Field_Back, "field_back");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_464_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_478_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_463_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_465_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_478_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_463_26">Fld</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_463_14">Background</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_487_14" HREF="terminal_interface-curses-forms__ads.htm#ref_470_14">Set_Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_487_33" HREF="terminal_interface-curses-forms__ads.htm#ref_470_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_488_33" HREF="terminal_interface-curses-forms__ads.htm#ref_471_33">Pad</A></FONT> : Character := Space)
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_461_26">Back</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_420_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_460_26">Fld</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_462_26">Color</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_420_16">Field_Back</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_460_26">Fld</A>).<A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_460_14">Background</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_429_14" HREF="terminal_interface-curses-forms__ads.htm#ref_467_14">Set_Pad_Character</A></span> (<span class="symbol"><A NAME="ref_429_33" HREF="terminal_interface-curses-forms__ads.htm#ref_467_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_430_33" HREF="terminal_interface-curses-forms__ads.htm#ref_468_33">Pad</A></span> : Character := Space)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_490_16">Set_Field_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_490_31" HREF="terminal_interface-curses-forms__adb.htm#ref_490_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_491_31" HREF="terminal_interface-curses-forms__adb.htm#ref_490_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_432_16">Set_Field_Pad</A></span> (<span class="symbol"><A NAME="ref_432_31" HREF="terminal_interface-curses-forms__adb.htm#ref_432_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_433_31" HREF="terminal_interface-curses-forms__adb.htm#ref_432_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Field_Pad, "set_field_pad");
-
-- <FONT COLOR=red><A NAME="ref_494_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_490_16">Set_Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_470_33">Fld</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_471_33">Pad</A>)));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_494_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_494_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_470_14">Set_Pad_Character</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_504_14" HREF="terminal_interface-curses-forms__ads.htm#ref_476_14">Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_504_29" HREF="terminal_interface-curses-forms__ads.htm#ref_476_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_505_29" HREF="terminal_interface-curses-forms__ads.htm#ref_477_29">Pad</A></FONT> : <b>out</b> Character)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_432_16">Set_Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_467_33">Fld</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_468_33">Pad</A>))));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_467_14">Set_Pad_Character</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_443_14" HREF="terminal_interface-curses-forms__ads.htm#ref_473_14">Pad_Character</A></span> (<span class="symbol"><A NAME="ref_443_29" HREF="terminal_interface-curses-forms__ads.htm#ref_473_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_444_29" HREF="terminal_interface-curses-forms__ads.htm#ref_474_29">Pad</A></span> : <b>out</b> Character)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_507_16">Field_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_507_27" HREF="terminal_interface-curses-forms__adb.htm#ref_507_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_446_16">Field_Pad</A></span> (<span class="symbol"><A NAME="ref_446_27" HREF="terminal_interface-curses-forms__adb.htm#ref_446_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Field_Pad, "field_pad");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_477_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-forms__adb.htm#ref_507_16">Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_476_29">Fld</A>));
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_476_14">Pad_Character</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_field_info.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_519_14" HREF="terminal_interface-curses-forms__ads.htm#ref_486_14">Info</A></FONT> (<FONT COLOR=red><A NAME="ref_519_20" HREF="terminal_interface-curses-forms__ads.htm#ref_486_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_520_20" HREF="terminal_interface-curses-forms__ads.htm#ref_487_20">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_521_20" HREF="terminal_interface-curses-forms__ads.htm#ref_488_20">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_522_20" HREF="terminal_interface-curses-forms__ads.htm#ref_489_20">First_Row</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_523_20" HREF="terminal_interface-curses-forms__ads.htm#ref_490_20">First_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_524_20" HREF="terminal_interface-curses-forms__ads.htm#ref_491_20">Off_Screen</A></FONT> : <b>out</b> Natural;
-- <FONT COLOR=red><A NAME="ref_525_20" HREF="terminal_interface-curses-forms__ads.htm#ref_492_20">Additional_Buffers</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>)
-- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_527_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_528_16">Fld_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_528_26" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_529_26" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">L</A></FONT>, <FONT COLOR=red><A NAME="ref_529_29" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">C</A></FONT>, <FONT COLOR=red><A NAME="ref_529_32" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fr</A></FONT>, <FONT COLOR=red><A NAME="ref_529_36" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fc</A></FONT>, <FONT COLOR=red><A NAME="ref_529_40" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Os</A></FONT>, <FONT COLOR=red><A NAME="ref_529_44" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Ab</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_527_12">C_Int_Access</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_474_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-forms__adb.htm#ref_446_16">Field_Pad</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_473_29">Fld</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_473_14">Pad_Character</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_field_info.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_458_14" HREF="terminal_interface-curses-forms__ads.htm#ref_483_14">Info</A></span> (<span class="symbol"><A NAME="ref_458_20" HREF="terminal_interface-curses-forms__ads.htm#ref_483_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_459_20" HREF="terminal_interface-curses-forms__ads.htm#ref_484_20">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_460_20" HREF="terminal_interface-curses-forms__ads.htm#ref_485_20">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_461_20" HREF="terminal_interface-curses-forms__ads.htm#ref_486_20">First_Row</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_462_20" HREF="terminal_interface-curses-forms__ads.htm#ref_487_20">First_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_463_20" HREF="terminal_interface-curses-forms__ads.htm#ref_488_20">Off_Screen</A></span> : <b>out</b> Natural;
-+ <span class="symbol"><A NAME="ref_464_20" HREF="terminal_interface-curses-forms__ads.htm#ref_489_20">Additional_Buffers</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>)
-+ <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_466_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_467_16">Fld_Info</A></span> (<span class="symbol"><A NAME="ref_467_26" HREF="terminal_interface-curses-forms__adb.htm#ref_467_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_468_26" HREF="terminal_interface-curses-forms__adb.htm#ref_467_16">L</A></span>, <span class="symbol"><A NAME="ref_468_29" HREF="terminal_interface-curses-forms__adb.htm#ref_467_16">C</A></span>, <span class="symbol"><A NAME="ref_468_32" HREF="terminal_interface-curses-forms__adb.htm#ref_467_16">Fr</A></span>, <span class="symbol"><A NAME="ref_468_36" HREF="terminal_interface-curses-forms__adb.htm#ref_467_16">Fc</A></span>, <span class="symbol"><A NAME="ref_468_40" HREF="terminal_interface-curses-forms__adb.htm#ref_467_16">Os</A></span>, <span class="symbol"><A NAME="ref_468_44" HREF="terminal_interface-curses-forms__adb.htm#ref_467_16">Ab</A></span> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_466_12">C_Int_Access</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Fld_Info, "field_info");
-
-- <FONT COLOR=red><A NAME="ref_533_7">L</A></FONT>, <FONT COLOR=red><A NAME="ref_533_10">C</A></FONT>, <FONT COLOR=red><A NAME="ref_533_13">Fr</A></FONT>, <FONT COLOR=red><A NAME="ref_533_17">Fc</A></FONT>, <FONT COLOR=red><A NAME="ref_533_21">Os</A></FONT>, <FONT COLOR=red><A NAME="ref_533_25">Ab</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_534_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Fld_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_486_20">Fld</A>,
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_10">C</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_13">Fr</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_17">Fc</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_21">Os</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_533_25">Ab</A>'<b>Access</b>);
-+ <span class="symbol"><A NAME="ref_472_7">L</A></span>, <span class="symbol"><A NAME="ref_472_10">C</A></span>, <span class="symbol"><A NAME="ref_472_13">Fr</A></span>, <span class="symbol"><A NAME="ref_472_17">Fc</A></span>, <span class="symbol"><A NAME="ref_472_21">Os</A></span>, <span class="symbol"><A NAME="ref_472_25">Ab</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_534_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_534_7">Res</A>);
-- <b>else</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_487_20">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_7">L</A>);
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_488_20">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_10">C</A>);
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_489_20">First_Row</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_13">Fr</A>);
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_490_20">First_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_17">Fc</A>);
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_491_20">Off_Screen</A> := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_21">Os</A>);
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_492_20">Additional_Buffers</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_533_25">Ab</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_486_14">Info</A>;
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_553_14" HREF="terminal_interface-curses-forms__ads.htm#ref_497_14">Dynamic_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_553_28" HREF="terminal_interface-curses-forms__ads.htm#ref_497_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_554_28" HREF="terminal_interface-curses-forms__ads.htm#ref_498_28">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_555_28" HREF="terminal_interface-curses-forms__ads.htm#ref_499_28">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_556_28" HREF="terminal_interface-curses-forms__ads.htm#ref_500_28">Max</A></FONT> : <b>out</b> Natural)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_467_16">Fld_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_483_20">Fld</A>,
-+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_472_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_472_10">C</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_472_13">Fr</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_472_17">Fc</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_472_21">Os</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_472_25">Ab</A>'<b>Access</b>));
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_484_20">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_472_7">L</A>);
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_485_20">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_472_10">C</A>);
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_486_20">First_Row</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_472_13">Fr</A>);
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_487_20">First_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_472_17">Fc</A>);
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_488_20">Off_Screen</A> := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_472_21">Os</A>);
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_489_20">Additional_Buffers</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_472_25">Ab</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_483_14">Info</A>;
-+<span class="comment"><EM>-- |</EM></span>
-+<span class="comment"><EM>-- |</EM></span>
-+<span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_488_14" HREF="terminal_interface-curses-forms__ads.htm#ref_494_14">Dynamic_Info</A></span> (<span class="symbol"><A NAME="ref_488_28" HREF="terminal_interface-curses-forms__ads.htm#ref_494_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_489_28" HREF="terminal_interface-curses-forms__ads.htm#ref_495_28">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_490_28" HREF="terminal_interface-curses-forms__ads.htm#ref_496_28">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_491_28" HREF="terminal_interface-curses-forms__ads.htm#ref_497_28">Max</A></span> : <b>out</b> Natural)
- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_558_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_559_16">Dyn_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_559_26" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_559_39" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">L</A></FONT>, <FONT COLOR=red><A NAME="ref_559_42" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">C</A></FONT>, <FONT COLOR=red><A NAME="ref_559_45" HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">M</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_558_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_493_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_494_16">Dyn_Info</A></span> (<span class="symbol"><A NAME="ref_494_26" HREF="terminal_interface-curses-forms__adb.htm#ref_494_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>; <span class="symbol"><A NAME="ref_494_39" HREF="terminal_interface-curses-forms__adb.htm#ref_494_16">L</A></span>, <span class="symbol"><A NAME="ref_494_42" HREF="terminal_interface-curses-forms__adb.htm#ref_494_16">C</A></span>, <span class="symbol"><A NAME="ref_494_45" HREF="terminal_interface-curses-forms__adb.htm#ref_494_16">M</A></span> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_493_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Dyn_Info, "dynamic_field_info");
-
-- <FONT COLOR=red><A NAME="ref_562_7">L</A></FONT>, <FONT COLOR=red><A NAME="ref_562_10">C</A></FONT>, <FONT COLOR=red><A NAME="ref_562_13">M</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_563_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_559_16">Dyn_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_497_28">Fld</A>,
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_562_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_562_10">C</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_562_13">M</A>'<b>Access</b>);
-+ <span class="symbol"><A NAME="ref_497_7">L</A></span>, <span class="symbol"><A NAME="ref_497_10">C</A></span>, <span class="symbol"><A NAME="ref_497_13">M</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_563_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_563_7">Res</A>);
-- <b>else</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_498_28">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_562_7">L</A>);
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_499_28">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_562_10">C</A>);
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_500_28">Max</A> := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_562_13">M</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_497_14">Dynamic_Info</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_win.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_582_14" HREF="terminal_interface-curses-forms__ads.htm#ref_509_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_582_26" HREF="terminal_interface-curses-forms__ads.htm#ref_509_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_583_26" HREF="terminal_interface-curses-forms__ads.htm#ref_510_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_494_16">Dyn_Info</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_494_28">Fld</A>,
-+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_497_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_497_10">C</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_497_13">M</A>'<b>Access</b>));
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_495_28">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_497_7">L</A>);
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_496_28">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_497_10">C</A>);
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_497_28">Max</A> := Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_497_13">M</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_494_14">Dynamic_Info</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_win.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_513_14" HREF="terminal_interface-curses-forms__ads.htm#ref_506_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_513_26" HREF="terminal_interface-curses-forms__ads.htm#ref_506_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_514_26" HREF="terminal_interface-curses-forms__ads.htm#ref_507_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_585_16">Set_Form_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_585_30" HREF="terminal_interface-curses-forms__adb.htm#ref_585_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_586_30" HREF="terminal_interface-curses-forms__adb.htm#ref_585_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_516_16">Set_Form_Win</A></span> (<span class="symbol"><A NAME="ref_516_30" HREF="terminal_interface-curses-forms__adb.htm#ref_516_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_517_30" HREF="terminal_interface-curses-forms__adb.htm#ref_516_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Form_Win, "set_form_win");
-
-- <FONT COLOR=red><A NAME="ref_589_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_585_16">Set_Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_509_26">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_510_26">Win</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_589_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_589_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_509_14">Set_Window</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_598_13" HREF="terminal_interface-curses-forms__ads.htm#ref_515_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_598_25" HREF="terminal_interface-curses-forms__ads.htm#ref_515_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_516_16">Set_Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_506_26">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_507_26">Win</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_506_14">Set_Window</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_526_13" HREF="terminal_interface-curses-forms__ads.htm#ref_512_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_526_25" HREF="terminal_interface-curses-forms__ads.htm#ref_512_25">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_600_16">Form_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_600_26" HREF="terminal_interface-curses-forms__adb.htm#ref_600_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_528_16">Form_Win</A></span> (<span class="symbol"><A NAME="ref_528_26" HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Form_Win, "form_win");
-
-- <FONT COLOR=red><A NAME="ref_603_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_600_16">Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_515_25">Frm</A>);
-+ <span class="symbol"><A NAME="ref_531_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_528_16">Form_Win</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_512_25">Frm</A>);
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_603_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_515_13">Get_Window</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_610_14" HREF="terminal_interface-curses-forms__ads.htm#ref_520_14">Set_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_610_30" HREF="terminal_interface-curses-forms__ads.htm#ref_520_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_611_30" HREF="terminal_interface-curses-forms__ads.htm#ref_521_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_531_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_512_13">Get_Window</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_538_14" HREF="terminal_interface-curses-forms__ads.htm#ref_517_14">Set_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_538_30" HREF="terminal_interface-curses-forms__ads.htm#ref_517_30">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_539_30" HREF="terminal_interface-curses-forms__ads.htm#ref_518_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_613_16">Set_Form_Sub</A></FONT> (<FONT COLOR=red><A NAME="ref_613_30" HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_614_30" HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_541_16">Set_Form_Sub</A></span> (<span class="symbol"><A NAME="ref_541_30" HREF="terminal_interface-curses-forms__adb.htm#ref_541_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_542_30" HREF="terminal_interface-curses-forms__adb.htm#ref_541_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Form_Sub, "set_form_sub");
-
-- <FONT COLOR=red><A NAME="ref_617_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Set_Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_520_30">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_521_30">Win</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_617_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_617_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_520_14">Set_Sub_Window</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_626_13" HREF="terminal_interface-curses-forms__ads.htm#ref_526_13">Get_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_626_29" HREF="terminal_interface-curses-forms__ads.htm#ref_526_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_541_16">Set_Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_517_30">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_518_30">Win</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_517_14">Set_Sub_Window</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_551_13" HREF="terminal_interface-curses-forms__ads.htm#ref_523_13">Get_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_551_29" HREF="terminal_interface-curses-forms__ads.htm#ref_523_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_628_16">Form_Sub</A></FONT> (<FONT COLOR=red><A NAME="ref_628_26" HREF="terminal_interface-curses-forms__adb.htm#ref_628_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_553_16">Form_Sub</A></span> (<span class="symbol"><A NAME="ref_553_26" HREF="terminal_interface-curses-forms__adb.htm#ref_553_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Form_Sub, "form_sub");
-
-- <FONT COLOR=red><A NAME="ref_631_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_628_16">Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_526_29">Frm</A>);
-+ <span class="symbol"><A NAME="ref_556_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_553_16">Form_Sub</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_523_29">Frm</A>);
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_631_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_526_13">Get_Sub_Window</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_638_14" HREF="terminal_interface-curses-forms__ads.htm#ref_531_14">Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_638_21" HREF="terminal_interface-curses-forms__ads.htm#ref_531_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_639_21" HREF="terminal_interface-curses-forms__ads.htm#ref_532_21">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_640_21" HREF="terminal_interface-curses-forms__ads.htm#ref_533_21">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_556_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_523_13">Get_Sub_Window</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_563_14" HREF="terminal_interface-curses-forms__ads.htm#ref_528_14">Scale</A></span> (<span class="symbol"><A NAME="ref_563_21" HREF="terminal_interface-curses-forms__ads.htm#ref_528_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_564_21" HREF="terminal_interface-curses-forms__ads.htm#ref_529_21">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_565_21" HREF="terminal_interface-curses-forms__ads.htm#ref_530_21">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>)
- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_642_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_643_16">M_Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_643_25" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <FONT COLOR=red><A NAME="ref_643_37" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Yp</A></FONT>, <FONT COLOR=red><A NAME="ref_643_41" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Xp</A></FONT> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_642_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_567_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_568_16">M_Scale</A></span> (<span class="symbol"><A NAME="ref_568_25" HREF="terminal_interface-curses-forms__adb.htm#ref_568_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>; <span class="symbol"><A NAME="ref_568_37" HREF="terminal_interface-curses-forms__adb.htm#ref_568_16">Yp</A></span>, <span class="symbol"><A NAME="ref_568_41" HREF="terminal_interface-curses-forms__adb.htm#ref_568_16">Xp</A></span> : <A HREF="terminal_interface-curses-forms__adb.htm#ref_567_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, M_Scale, "scale_form");
-
-- <FONT COLOR=red><A NAME="ref_646_7">X</A></FONT>, <FONT COLOR=red><A NAME="ref_646_10">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_647_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">M_Scale</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_531_21">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_646_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_646_7">X</A>'<b>Access</b>);
-+ <span class="symbol"><A NAME="ref_571_7">X</A></span>, <span class="symbol"><A NAME="ref_571_10">Y</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_647_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_647_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_532_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_646_10">Y</A>);
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_533_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_646_7">X</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_531_14">Scale</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page menu_hook.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_662_14" HREF="terminal_interface-curses-forms__ads.htm#ref_545_14">Set_Field_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_662_35" HREF="terminal_interface-curses-forms__ads.htm#ref_545_35">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_663_35" HREF="terminal_interface-curses-forms__ads.htm#ref_546_35">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_568_16">M_Scale</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_528_21">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_571_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_571_7">X</A>'<b>Access</b>));
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_529_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_571_10">Y</A>);
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_530_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_571_7">X</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_528_14">Scale</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page menu_hook.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_584_14" HREF="terminal_interface-curses-forms__ads.htm#ref_542_14">Set_Field_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_584_35" HREF="terminal_interface-curses-forms__ads.htm#ref_542_35">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_585_35" HREF="terminal_interface-curses-forms__ads.htm#ref_543_35">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_665_16">Set_Field_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_665_32" HREF="terminal_interface-curses-forms__adb.htm#ref_665_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_666_32" HREF="terminal_interface-curses-forms__adb.htm#ref_665_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_587_16">Set_Field_Init</A></span> (<span class="symbol"><A NAME="ref_587_32" HREF="terminal_interface-curses-forms__adb.htm#ref_587_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_588_32" HREF="terminal_interface-curses-forms__adb.htm#ref_587_16">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Field_Init, "set_field_init");
-
-- <FONT COLOR=red><A NAME="ref_669_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_665_16">Set_Field_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_545_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_546_35">Proc</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_669_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_669_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_545_14">Set_Field_Init_Hook</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_678_14" HREF="terminal_interface-curses-forms__ads.htm#ref_551_14">Set_Field_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_678_35" HREF="terminal_interface-curses-forms__ads.htm#ref_551_35">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_679_35" HREF="terminal_interface-curses-forms__ads.htm#ref_552_35">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_587_16">Set_Field_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_542_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_543_35">Proc</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_542_14">Set_Field_Init_Hook</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_597_14" HREF="terminal_interface-curses-forms__ads.htm#ref_548_14">Set_Field_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_597_35" HREF="terminal_interface-curses-forms__ads.htm#ref_548_35">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_598_35" HREF="terminal_interface-curses-forms__ads.htm#ref_549_35">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_681_16">Set_Field_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_681_32" HREF="terminal_interface-curses-forms__adb.htm#ref_681_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_682_32" HREF="terminal_interface-curses-forms__adb.htm#ref_681_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_600_16">Set_Field_Term</A></span> (<span class="symbol"><A NAME="ref_600_32" HREF="terminal_interface-curses-forms__adb.htm#ref_600_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_601_32" HREF="terminal_interface-curses-forms__adb.htm#ref_600_16">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Field_Term, "set_field_term");
-
-- <FONT COLOR=red><A NAME="ref_685_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_681_16">Set_Field_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_551_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_552_35">Proc</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_685_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_685_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_551_14">Set_Field_Term_Hook</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_694_14" HREF="terminal_interface-curses-forms__ads.htm#ref_557_14">Set_Form_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_694_34" HREF="terminal_interface-curses-forms__ads.htm#ref_557_34">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_695_34" HREF="terminal_interface-curses-forms__ads.htm#ref_558_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_600_16">Set_Field_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_548_35">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_549_35">Proc</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_548_14">Set_Field_Term_Hook</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_610_14" HREF="terminal_interface-curses-forms__ads.htm#ref_554_14">Set_Form_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_610_34" HREF="terminal_interface-curses-forms__ads.htm#ref_554_34">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_611_34" HREF="terminal_interface-curses-forms__ads.htm#ref_555_34">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_697_16">Set_Form_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_697_31" HREF="terminal_interface-curses-forms__adb.htm#ref_697_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_698_31" HREF="terminal_interface-curses-forms__adb.htm#ref_697_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_613_16">Set_Form_Init</A></span> (<span class="symbol"><A NAME="ref_613_31" HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_614_31" HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Form_Init, "set_form_init");
-
-- <FONT COLOR=red><A NAME="ref_701_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_697_16">Set_Form_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_557_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_558_34">Proc</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_701_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_701_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_557_14">Set_Form_Init_Hook</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_710_14" HREF="terminal_interface-curses-forms__ads.htm#ref_563_14">Set_Form_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_710_34" HREF="terminal_interface-curses-forms__ads.htm#ref_563_34">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_711_34" HREF="terminal_interface-curses-forms__ads.htm#ref_564_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_613_16">Set_Form_Init</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_554_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_555_34">Proc</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_554_14">Set_Form_Init_Hook</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_623_14" HREF="terminal_interface-curses-forms__ads.htm#ref_560_14">Set_Form_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_623_34" HREF="terminal_interface-curses-forms__ads.htm#ref_560_34">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_624_34" HREF="terminal_interface-curses-forms__ads.htm#ref_561_34">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_713_16">Set_Form_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_713_31" HREF="terminal_interface-curses-forms__adb.htm#ref_713_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_714_31" HREF="terminal_interface-curses-forms__adb.htm#ref_713_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_626_16">Set_Form_Term</A></span> (<span class="symbol"><A NAME="ref_626_31" HREF="terminal_interface-curses-forms__adb.htm#ref_626_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_627_31" HREF="terminal_interface-curses-forms__adb.htm#ref_626_16">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Form_Term, "set_form_term");
-
-- <FONT COLOR=red><A NAME="ref_717_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_713_16">Set_Form_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_563_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_564_34">Proc</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_717_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_717_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_563_14">Set_Form_Term_Hook</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_fields.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_730_14" HREF="terminal_interface-curses-forms__ads.htm#ref_593_14">Redefine</A></FONT> (<FONT COLOR=red><A NAME="ref_730_24" HREF="terminal_interface-curses-forms__ads.htm#ref_593_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_731_24" HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_626_16">Set_Form_Term</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_560_34">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_561_34">Proc</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_560_14">Set_Form_Term_Hook</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_fields.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_640_14" HREF="terminal_interface-curses-forms__ads.htm#ref_590_14">Redefine</A></span> (<span class="symbol"><A NAME="ref_640_24" HREF="terminal_interface-curses-forms__ads.htm#ref_590_24">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_641_24" HREF="terminal_interface-curses-forms__ads.htm#ref_591_24">Flds</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_135_9">Field_Array_Access</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_733_16">Set_Frm_Fields</A></FONT> (<FONT COLOR=red><A NAME="ref_733_32" HREF="terminal_interface-curses-forms__adb.htm#ref_733_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_734_32" HREF="terminal_interface-curses-forms__adb.htm#ref_733_16">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_643_16">Set_Frm_Fields</A></span> (<span class="symbol"><A NAME="ref_643_32" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_644_32" HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Items</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Frm_Fields, "set_form_fields");
-
-- <FONT COLOR=red><A NAME="ref_737_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#ref_591_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_591_24">Flds</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_591_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_591_24">Flds</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_737_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_733_16">Set_Frm_Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_593_24">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_594_24">Flds</A>'First)'Address);
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_737_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_737_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_643_16">Set_Frm_Fields</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_590_24">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_591_24">Flds</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_591_24">Flds</A>'First)'Address));
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_593_14">Redefine</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_752_13" HREF="terminal_interface-curses-forms__ads.htm#ref_605_13">Fields</A></FONT> (<FONT COLOR=red><A NAME="ref_752_21" HREF="terminal_interface-curses-forms__ads.htm#ref_605_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_753_21" HREF="terminal_interface-curses-forms__ads.htm#ref_606_21">Index</A></FONT> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_590_14">Redefine</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_658_13" HREF="terminal_interface-curses-forms__ads.htm#ref_602_13">Fields</A></span> (<span class="symbol"><A NAME="ref_658_21" HREF="terminal_interface-curses-forms__ads.htm#ref_602_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_659_21" HREF="terminal_interface-curses-forms__ads.htm#ref_603_21">Index</A></span> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>
- <b>is</b>
- <b>use</b> F_Array;
-
-- <b>function</b> C_Fields (<FONT COLOR=red><A NAME="ref_757_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Pointer;
-+ <b>function</b> C_Fields (<span class="symbol"><A NAME="ref_663_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> Pointer;
- <b>pragma</b> Import (C, C_Fields, "form_fields");
-
-- P : Pointer := C_Fields (<A HREF="terminal_interface-curses-forms__ads.htm#ref_605_21">Frm</A>);
-+ P : Pointer := C_Fields (<A HREF="terminal_interface-curses-forms__ads.htm#ref_602_21">Frm</A>);
- <b>begin</b>
-- <b>if</b> P = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_606_21">Index</A> &gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_611_13">Field_Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_605_21">Frm</A>) <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> P = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_603_21">Index</A> &gt; <A HREF="terminal_interface-curses-forms__ads.htm#ref_608_13">Field_Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_602_21">Frm</A>) <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- P := P + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_606_21">Index</A>) - 1);
-+ P := P + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_603_21">Index</A>) - 1);
- <b>return</b> P.<b>all</b>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_605_13">Fields</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_772_13" HREF="terminal_interface-curses-forms__ads.htm#ref_611_13">Field_Count</A></FONT> (<FONT COLOR=red><A NAME="ref_772_26" HREF="terminal_interface-curses-forms__ads.htm#ref_611_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Natural
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_602_13">Fields</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_678_13" HREF="terminal_interface-curses-forms__ads.htm#ref_608_13">Field_Count</A></span> (<span class="symbol"><A NAME="ref_678_26" HREF="terminal_interface-curses-forms__ads.htm#ref_608_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> Natural
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_774_16">Count</A></FONT> (<FONT COLOR=red><A NAME="ref_774_23" HREF="terminal_interface-curses-forms__adb.htm#ref_774_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_680_16">Count</A></span> (<span class="symbol"><A NAME="ref_680_23" HREF="terminal_interface-curses-forms__adb.htm#ref_680_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Count, "field_count");
- <b>begin</b>
-- <b>return</b> Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_774_16">Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_611_26">Frm</A>));
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_611_13">Field_Count</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_782_14" HREF="terminal_interface-curses-forms__ads.htm#ref_616_14">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_782_20" HREF="terminal_interface-curses-forms__ads.htm#ref_616_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_783_20" HREF="terminal_interface-curses-forms__ads.htm#ref_617_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_784_20" HREF="terminal_interface-curses-forms__ads.htm#ref_618_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-+ <b>return</b> Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_680_16">Count</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_608_26">Frm</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_608_13">Field_Count</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_688_14" HREF="terminal_interface-curses-forms__ads.htm#ref_613_14">Move</A></span> (<span class="symbol"><A NAME="ref_688_20" HREF="terminal_interface-curses-forms__ads.htm#ref_613_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_689_20" HREF="terminal_interface-curses-forms__ads.htm#ref_614_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_690_20" HREF="terminal_interface-curses-forms__ads.htm#ref_615_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_786_16">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_786_22" HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_786_35" HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">L</A></FONT>, <FONT COLOR=red><A NAME="ref_786_38" HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">C</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_692_16">Move</A></span> (<span class="symbol"><A NAME="ref_692_22" HREF="terminal_interface-curses-forms__adb.htm#ref_692_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>; <span class="symbol"><A NAME="ref_692_35" HREF="terminal_interface-curses-forms__adb.htm#ref_692_16">L</A></span>, <span class="symbol"><A NAME="ref_692_38" HREF="terminal_interface-curses-forms__adb.htm#ref_692_16">C</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Move, "move_field");
-
-- <FONT COLOR=red><A NAME="ref_789_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_786_16">Move</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_616_20">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_617_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_618_20">Column</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_789_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_789_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_616_14">Move</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_new.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_802_13" HREF="terminal_interface-curses-forms__ads.htm#ref_627_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_802_21" HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_692_16">Move</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_613_20">Fld</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_614_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_615_20">Column</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_613_14">Move</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_new.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_705_13" HREF="terminal_interface-curses-forms__ads.htm#ref_624_13">Create</A></span> (<span class="symbol"><A NAME="ref_705_21" HREF="terminal_interface-curses-forms__ads.htm#ref_624_21">Fields</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_135_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_804_16">NewForm</A></FONT> (<FONT COLOR=red><A NAME="ref_804_25" HREF="terminal_interface-curses-forms__adb.htm#ref_804_16">Fields</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_707_16">NewForm</A></span> (<span class="symbol"><A NAME="ref_707_25" HREF="terminal_interface-curses-forms__adb.htm#ref_707_16">Fields</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
- <b>pragma</b> Import (C, NewForm, "new_form");
-
-- <FONT COLOR=red><A NAME="ref_807_7">M</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_710_7">M</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-forms__ads.htm#ref_624_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_624_21">Fields</A>'Last) = <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_624_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_624_21">Fields</A>'Last) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_807_7">M</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_804_16">NewForm</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_627_21">Fields</A>'First)'Address);
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_807_7">M</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <A HREF="terminal_interface-curses-forms__adb.htm#ref_710_7">M</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_707_16">NewForm</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_624_21">Fields</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_624_21">Fields</A>'First)'Address);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_710_7">M</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_55_4">Null_Form</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_807_7">M</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_710_7">M</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_627_13">Create</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_823_14" HREF="terminal_interface-curses-forms__ads.htm#ref_638_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_823_22" HREF="terminal_interface-curses-forms__ads.htm#ref_638_22">Frm</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>)
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_624_13">Create</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_726_14" HREF="terminal_interface-curses-forms__ads.htm#ref_635_14">Delete</A></span> (<span class="symbol"><A NAME="ref_726_22" HREF="terminal_interface-curses-forms__ads.htm#ref_635_22">Frm</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_825_16">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_825_22" HREF="terminal_interface-curses-forms__adb.htm#ref_825_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_728_16">Free</A></span> (<span class="symbol"><A NAME="ref_728_22" HREF="terminal_interface-curses-forms__adb.htm#ref_728_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Free, "free_form");
-
-- <FONT COLOR=red><A NAME="ref_828_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_825_16">Free</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_638_22">Frm</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_828_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_828_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_638_22">Frm</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_638_14">Delete</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_opts.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_842_14" HREF="terminal_interface-curses-forms__ads.htm#ref_648_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_842_27" HREF="terminal_interface-curses-forms__ads.htm#ref_648_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_843_27" HREF="terminal_interface-curses-forms__ads.htm#ref_649_27">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_728_16">Free</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_635_22">Frm</A>));
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_635_22">Frm</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_55_4">Null_Form</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_635_14">Delete</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_opts.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_742_14" HREF="terminal_interface-curses-forms__ads.htm#ref_645_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_742_27" HREF="terminal_interface-curses-forms__ads.htm#ref_645_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_743_27" HREF="terminal_interface-curses-forms__ads.htm#ref_646_27">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_845_16">Set_Form_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_845_31" HREF="terminal_interface-curses-forms__adb.htm#ref_845_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_846_31" HREF="terminal_interface-curses-forms__adb.htm#ref_845_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_745_16">Set_Form_Opts</A></span> (<span class="symbol"><A NAME="ref_745_31" HREF="terminal_interface-curses-forms__adb.htm#ref_745_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_746_31" HREF="terminal_interface-curses-forms__adb.htm#ref_745_16">Opt</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Form_Opts, "set_form_opts");
-
-- <FONT COLOR=red><A NAME="ref_849_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FrmOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_649_27">Options</A>);
-- <FONT COLOR=red><A NAME="ref_850_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_850_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_845_16">Set_Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_648_27">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_849_7">Opt</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_850_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_850_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_648_14">Set_Options</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_860_14" HREF="terminal_interface-curses-forms__ads.htm#ref_654_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_860_30" HREF="terminal_interface-curses-forms__ads.htm#ref_654_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_861_30" HREF="terminal_interface-curses-forms__ads.htm#ref_655_30">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>;
-- <FONT COLOR=red><A NAME="ref_862_30" HREF="terminal_interface-curses-forms__ads.htm#ref_656_30">On</A></FONT> : Boolean := True)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_745_16">Set_Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_645_27">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_646_27">Options</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_645_14">Set_Options</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_755_14" HREF="terminal_interface-curses-forms__ads.htm#ref_651_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_755_30" HREF="terminal_interface-curses-forms__ads.htm#ref_651_30">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_756_30" HREF="terminal_interface-curses-forms__ads.htm#ref_652_30">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_757_30" HREF="terminal_interface-curses-forms__ads.htm#ref_653_30">On</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_864_16">Form_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="ref_864_30" HREF="terminal_interface-curses-forms__adb.htm#ref_864_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_865_30" HREF="terminal_interface-curses-forms__adb.htm#ref_864_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_759_16">Form_Opts_On</A></span> (<span class="symbol"><A NAME="ref_759_30" HREF="terminal_interface-curses-forms__adb.htm#ref_759_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_760_30" HREF="terminal_interface-curses-forms__adb.htm#ref_759_16">Opt</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Form_Opts_On, "form_opts_on");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_867_16">Form_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="ref_867_31" HREF="terminal_interface-curses-forms__adb.htm#ref_867_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_868_31" HREF="terminal_interface-curses-forms__adb.htm#ref_867_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_762_16">Form_Opts_Off</A></span> (<span class="symbol"><A NAME="ref_762_31" HREF="terminal_interface-curses-forms__adb.htm#ref_762_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_763_31" HREF="terminal_interface-curses-forms__adb.htm#ref_762_16">Opt</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Form_Opts_Off, "form_opts_off");
-
-- <FONT COLOR=red><A NAME="ref_871_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <FONT COLOR=red><A NAME="ref_872_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := FrmOS_2_CInt (<A HREF="terminal_interface-curses-forms__ads.htm#ref_655_30">Options</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_656_30">On</A> <b>then</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_864_16">Form_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_654_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_872_7">Opt</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_653_30">On</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_759_16">Form_Opts_On</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_651_30">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_652_30">Options</A>));
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_867_16">Form_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_654_30">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_872_7">Opt</A>);
-- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_871_7">Err</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_762_16">Form_Opts_Off</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_651_30">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_652_30">Options</A>));
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_654_14">Switch_Options</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_886_14" HREF="terminal_interface-curses-forms__ads.htm#ref_662_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_886_27" HREF="terminal_interface-curses-forms__ads.htm#ref_662_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_887_27" HREF="terminal_interface-curses-forms__ads.htm#ref_663_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>)
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_651_14">Switch_Options</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_776_14" HREF="terminal_interface-curses-forms__ads.htm#ref_659_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_776_27" HREF="terminal_interface-curses-forms__ads.htm#ref_659_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_777_27" HREF="terminal_interface-curses-forms__ads.htm#ref_660_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_889_16">Form_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_889_27" HREF="terminal_interface-curses-forms__adb.htm#ref_889_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_779_16">Form_Opts</A></span> (<span class="symbol"><A NAME="ref_779_27" HREF="terminal_interface-curses-forms__adb.htm#ref_779_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>;
- <b>pragma</b> Import (C, Form_Opts, "form_opts");
-
-- <FONT COLOR=red><A NAME="ref_892_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_889_16">Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_662_27">Frm</A>);
- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_663_27">Options</A> := CInt_2_FrmOS (<A HREF="terminal_interface-curses-forms__adb.htm#ref_892_7">Res</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_662_14">Get_Options</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_899_13" HREF="terminal_interface-curses-forms__ads.htm#ref_667_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_899_26" HREF="terminal_interface-curses-forms__ads.htm#ref_667_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>
-- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_901_7">Fos</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>;
-- <b>begin</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_662_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_667_26">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_901_7">Fos</A>);
-- <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_901_7">Fos</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_667_13">Get_Options</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_post.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_913_14" HREF="terminal_interface-curses-forms__ads.htm#ref_676_14">Post</A></FONT> (<FONT COLOR=red><A NAME="ref_913_20" HREF="terminal_interface-curses-forms__ads.htm#ref_676_20">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_914_20" HREF="terminal_interface-curses-forms__ads.htm#ref_677_20">Post</A></FONT> : Boolean := True)
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_660_27">Options</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_779_16">Form_Opts</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_659_27">Frm</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_659_14">Get_Options</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_788_13" HREF="terminal_interface-curses-forms__ads.htm#ref_664_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_788_26" HREF="terminal_interface-curses-forms__ads.htm#ref_664_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_55_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>
-+ <b>is</b>
-+ <span class="symbol"><A NAME="ref_790_7">Fos</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>;
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_659_14">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_664_26">Frm</A>, <A HREF="terminal_interface-curses-forms__adb.htm#ref_790_7">Fos</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_790_7">Fos</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_664_13">Get_Options</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_post.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_802_14" HREF="terminal_interface-curses-forms__ads.htm#ref_673_14">Post</A></span> (<span class="symbol"><A NAME="ref_802_20" HREF="terminal_interface-curses-forms__ads.htm#ref_673_20">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_803_20" HREF="terminal_interface-curses-forms__ads.htm#ref_674_20">Post</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_916_16">M_Post</A></FONT> (<FONT COLOR=red><A NAME="ref_916_24" HREF="terminal_interface-curses-forms__adb.htm#ref_916_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_805_16">M_Post</A></span> (<span class="symbol"><A NAME="ref_805_24" HREF="terminal_interface-curses-forms__adb.htm#ref_805_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, M_Post, "post_form");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_918_16">M_Unpost</A></FONT> (<FONT COLOR=red><A NAME="ref_918_26" HREF="terminal_interface-curses-forms__adb.htm#ref_918_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_807_16">M_Unpost</A></span> (<span class="symbol"><A NAME="ref_807_26" HREF="terminal_interface-curses-forms__adb.htm#ref_807_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, M_Unpost, "unpost_form");
-
-- <FONT COLOR=red><A NAME="ref_921_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_677_20">Post</A> <b>then</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_916_16">M_Post</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_676_20">Frm</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_674_20">Post</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_805_16">M_Post</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_673_20">Frm</A>));
- <b>else</b>
-- <A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_918_16">M_Unpost</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_676_20">Frm</A>);
-- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_921_7">Res</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_807_16">M_Unpost</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_673_20">Frm</A>));
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_676_14">Post</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_cursor.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_939_14" HREF="terminal_interface-curses-forms__ads.htm#ref_687_14">Position_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_939_31" HREF="terminal_interface-curses-forms__ads.htm#ref_687_31">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>)
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_673_14">Post</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_cursor.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_824_14" HREF="terminal_interface-curses-forms__ads.htm#ref_684_14">Position_Cursor</A></span> (<span class="symbol"><A NAME="ref_824_31" HREF="terminal_interface-curses-forms__ads.htm#ref_684_31">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_941_16">Pos_Form_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_941_33" HREF="terminal_interface-curses-forms__adb.htm#ref_941_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_826_16">Pos_Form_Cursor</A></span> (<span class="symbol"><A NAME="ref_826_33" HREF="terminal_interface-curses-forms__adb.htm#ref_826_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Pos_Form_Cursor, "pos_form_cursor");
-
-- <FONT COLOR=red><A NAME="ref_944_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_941_16">Pos_Form_Cursor</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_687_31">Frm</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_944_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_944_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_687_14">Position_Cursor</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_data.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_957_13" HREF="terminal_interface-curses-forms__ads.htm#ref_696_13">Data_Ahead</A></FONT> (<FONT COLOR=red><A NAME="ref_957_25" HREF="terminal_interface-curses-forms__ads.htm#ref_696_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_826_16">Pos_Form_Cursor</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_684_31">Frm</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_684_14">Position_Cursor</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_data.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_839_13" HREF="terminal_interface-curses-forms__ads.htm#ref_693_13">Data_Ahead</A></span> (<span class="symbol"><A NAME="ref_839_25" HREF="terminal_interface-curses-forms__ads.htm#ref_693_25">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_959_16">Ahead</A></FONT> (<FONT COLOR=red><A NAME="ref_959_23" HREF="terminal_interface-curses-forms__adb.htm#ref_959_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_841_16">Ahead</A></span> (<span class="symbol"><A NAME="ref_841_23" HREF="terminal_interface-curses-forms__adb.htm#ref_841_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Ahead, "data_ahead");
-
-- <FONT COLOR=red><A NAME="ref_962_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_959_16">Ahead</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_696_25">Frm</A>);
-+ <span class="symbol"><A NAME="ref_844_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_841_16">Ahead</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_693_25">Frm</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_962_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_844_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_68_4">Curses_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_696_13">Data_Ahead</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_973_13" HREF="terminal_interface-curses-forms__ads.htm#ref_701_13">Data_Behind</A></FONT> (<FONT COLOR=red><A NAME="ref_973_26" HREF="terminal_interface-curses-forms__ads.htm#ref_701_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_693_13">Data_Ahead</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_855_13" HREF="terminal_interface-curses-forms__ads.htm#ref_698_13">Data_Behind</A></span> (<span class="symbol"><A NAME="ref_855_26" HREF="terminal_interface-curses-forms__ads.htm#ref_698_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_975_16">Behind</A></FONT> (<FONT COLOR=red><A NAME="ref_975_24" HREF="terminal_interface-curses-forms__adb.htm#ref_975_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_857_16">Behind</A></span> (<span class="symbol"><A NAME="ref_857_24" HREF="terminal_interface-curses-forms__adb.htm#ref_857_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Behind, "data_behind");
-
-- <FONT COLOR=red><A NAME="ref_978_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_975_16">Behind</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_701_26">Frm</A>);
-+ <span class="symbol"><A NAME="ref_860_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_857_16">Behind</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_698_26">Frm</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_978_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_860_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_68_4">Curses_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_701_13">Data_Behind</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_driver.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_993_13" HREF="terminal_interface-curses-forms__ads.htm#ref_715_13">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_993_21" HREF="terminal_interface-curses-forms__ads.htm#ref_715_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_994_21" HREF="terminal_interface-curses-forms__ads.htm#ref_716_21">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_9">Driver_Result</A>
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_698_13">Data_Behind</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_driver.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_875_13" HREF="terminal_interface-curses-forms__ads.htm#ref_712_13">Driver</A></span> (<span class="symbol"><A NAME="ref_875_21" HREF="terminal_interface-curses-forms__ads.htm#ref_712_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_876_21" HREF="terminal_interface-curses-forms__ads.htm#ref_713_21">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_706_9">Driver_Result</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_996_16">Frm_Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_996_28" HREF="terminal_interface-curses-forms__adb.htm#ref_996_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <FONT COLOR=red><A NAME="ref_996_40" HREF="terminal_interface-curses-forms__adb.htm#ref_996_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_878_16">Frm_Driver</A></span> (<span class="symbol"><A NAME="ref_878_28" HREF="terminal_interface-curses-forms__adb.htm#ref_878_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>; <span class="symbol"><A NAME="ref_878_40" HREF="terminal_interface-curses-forms__adb.htm#ref_878_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Frm_Driver, "form_driver");
-
-- <FONT COLOR=red><A NAME="ref_999_7">R</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_996_16">Frm_Driver</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_715_21">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_716_21">Key</A>));
-+ <span class="symbol"><A NAME="ref_881_7">R</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_878_16">Frm_Driver</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_712_21">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_713_21">Key</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_4">E_Unknown_Command</A> <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_711_27">Unknown_Request</A>;
-- <b>elsif</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_93_4">E_Invalid_Field</A> <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_712_27">Invalid_Field</A>;
-- <b>elsif</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_4">E_Request_Denied</A> <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_710_27">Request_Denied</A>;
-- <b>else</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_999_7">R</A>);
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_27">Form_Ok</A>;
-- <b>end</b> <b>if</b>;
-- <b>else</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_27">Form_Ok</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_715_13">Driver</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_page.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1023_14" HREF="terminal_interface-curses-forms__ads.htm#ref_727_14">Set_Current</A></FONT> (<FONT COLOR=red><A NAME="ref_1023_27" HREF="terminal_interface-curses-forms__ads.htm#ref_727_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_1024_27" HREF="terminal_interface-curses-forms__ads.htm#ref_728_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>)
-+ <b>case</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_881_7">R</A> <b>is</b>
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_7">E_Unknown_Command</A> =&gt;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_708_27">Unknown_Request</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_73_7">E_Invalid_Field</A> =&gt;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_27">Invalid_Field</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_74_7">E_Request_Denied</A> =&gt;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_707_27">Request_Denied</A>;
-+ <b>when</b> <b>others</b> =&gt;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_881_7">R</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_706_27">Form_Ok</A>;
-+ <b>end</b> <b>case</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_712_13">Driver</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_page.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_902_14" HREF="terminal_interface-curses-forms__ads.htm#ref_724_14">Set_Current</A></span> (<span class="symbol"><A NAME="ref_902_27" HREF="terminal_interface-curses-forms__ads.htm#ref_724_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_903_27" HREF="terminal_interface-curses-forms__ads.htm#ref_725_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1026_16">Set_Current_Fld</A></FONT> (<FONT COLOR=red><A NAME="ref_1026_33" HREF="terminal_interface-curses-forms__adb.htm#ref_1026_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <FONT COLOR=red><A NAME="ref_1026_45" HREF="terminal_interface-curses-forms__adb.htm#ref_1026_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_905_16">Set_Current_Fld</A></span> (<span class="symbol"><A NAME="ref_905_33" HREF="terminal_interface-curses-forms__adb.htm#ref_905_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>; <span class="symbol"><A NAME="ref_905_45" HREF="terminal_interface-curses-forms__adb.htm#ref_905_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Current_Fld, "set_current_field");
-
-- <FONT COLOR=red><A NAME="ref_1029_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1026_16">Set_Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_727_27">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_728_27">Fld</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1029_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1029_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_727_14">Set_Current</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1038_13" HREF="terminal_interface-curses-forms__ads.htm#ref_733_13">Current</A></FONT> (<FONT COLOR=red><A NAME="ref_1038_22" HREF="terminal_interface-curses-forms__ads.htm#ref_733_22">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_905_16">Set_Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_724_27">Frm</A>, <A HREF="terminal_interface-curses-forms__ads.htm#ref_725_27">Fld</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_14">Set_Current</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_914_13" HREF="terminal_interface-curses-forms__ads.htm#ref_730_13">Current</A></span> (<span class="symbol"><A NAME="ref_914_22" HREF="terminal_interface-curses-forms__ads.htm#ref_730_22">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1040_16">Current_Fld</A></FONT> (<FONT COLOR=red><A NAME="ref_1040_29" HREF="terminal_interface-curses-forms__adb.htm#ref_1040_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_916_16">Current_Fld</A></span> (<span class="symbol"><A NAME="ref_916_29" HREF="terminal_interface-curses-forms__adb.htm#ref_916_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
- <b>pragma</b> Import (C, Current_Fld, "current_field");
-
-- <FONT COLOR=red><A NAME="ref_1043_7">Fld</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1040_16">Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_733_22">Frm</A>);
-+ <span class="symbol"><A NAME="ref_919_7">Fld</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_916_16">Current_Fld</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_730_22">Frm</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1043_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_919_7">Fld</A> = <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1043_7">Fld</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_733_13">Current</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1053_14" HREF="terminal_interface-curses-forms__ads.htm#ref_738_14">Set_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1053_24" HREF="terminal_interface-curses-forms__ads.htm#ref_738_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_1054_24" HREF="terminal_interface-curses-forms__ads.htm#ref_739_24">Page</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A>'First)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_919_7">Fld</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_730_13">Current</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_929_14" HREF="terminal_interface-curses-forms__ads.htm#ref_735_14">Set_Page</A></span> (<span class="symbol"><A NAME="ref_929_24" HREF="terminal_interface-curses-forms__ads.htm#ref_735_24">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_930_24" HREF="terminal_interface-curses-forms__ads.htm#ref_736_24">Page</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_721_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_721_9">Page_Number</A>'First)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1056_16">Set_Frm_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1056_30" HREF="terminal_interface-curses-forms__adb.htm#ref_1056_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>; <FONT COLOR=red><A NAME="ref_1056_42" HREF="terminal_interface-curses-forms__adb.htm#ref_1056_16">Pg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_932_16">Set_Frm_Page</A></span> (<span class="symbol"><A NAME="ref_932_30" HREF="terminal_interface-curses-forms__adb.htm#ref_932_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>; <span class="symbol"><A NAME="ref_932_42" HREF="terminal_interface-curses-forms__adb.htm#ref_932_16">Pg</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Frm_Page, "set_form_page");
-
-- <FONT COLOR=red><A NAME="ref_1059_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1056_16">Set_Frm_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_738_24">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_739_24">Page</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1059_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1059_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_738_14">Set_Page</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1068_13" HREF="terminal_interface-curses-forms__ads.htm#ref_744_13">Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1068_19" HREF="terminal_interface-curses-forms__ads.htm#ref_744_19">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_932_16">Set_Frm_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_735_24">Frm</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_736_24">Page</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_735_14">Set_Page</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_941_13" HREF="terminal_interface-curses-forms__ads.htm#ref_741_13">Page</A></span> (<span class="symbol"><A NAME="ref_941_19" HREF="terminal_interface-curses-forms__ads.htm#ref_741_19">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_721_9">Page_Number</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1070_16">Get_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1070_26" HREF="terminal_interface-curses-forms__adb.htm#ref_1070_16">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_943_16">Get_Page</A></span> (<span class="symbol"><A NAME="ref_943_26" HREF="terminal_interface-curses-forms__adb.htm#ref_943_16">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Get_Page, "form_page");
-
-- <FONT COLOR=red><A NAME="ref_1073_7">P</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1070_16">Get_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_744_19">Frm</A>);
-+ <span class="symbol"><A NAME="ref_946_7">P</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_943_16">Get_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_741_19">Frm</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1073_7">P</A> &lt; 0 <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_946_7">P</A> &lt; 0 <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>else</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1073_7">P</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_721_9">Page_Number</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_946_7">P</A>);
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_744_13">Page</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_741_13">Page</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1082_13" HREF="terminal_interface-curses-forms__ads.htm#ref_749_13">Get_Index</A></FONT> (<FONT COLOR=red><A NAME="ref_1082_24" HREF="terminal_interface-curses-forms__ads.htm#ref_749_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Positive
-+ <b>function</b> <span class="symbol"><A NAME="ref_955_13" HREF="terminal_interface-curses-forms__ads.htm#ref_746_13">Get_Index</A></span> (<span class="symbol"><A NAME="ref_955_24" HREF="terminal_interface-curses-forms__ads.htm#ref_746_24">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> Positive
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1084_16">Get_Fieldindex</A></FONT> (<FONT COLOR=red><A NAME="ref_1084_32" HREF="terminal_interface-curses-forms__adb.htm#ref_1084_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_957_16">Get_Fieldindex</A></span> (<span class="symbol"><A NAME="ref_957_32" HREF="terminal_interface-curses-forms__adb.htm#ref_957_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Get_Fieldindex, "field_index");
-
-- <FONT COLOR=red><A NAME="ref_1087_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1084_16">Get_Fieldindex</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_749_24">Fld</A>);
-+ <span class="symbol"><A NAME="ref_960_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_957_16">Get_Fieldindex</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_746_24">Fld</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1087_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_290_4">Form_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_960_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_287_4">Form_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1087_7">Res</A>) + Positive'First);
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_749_13">Get_Index</A>;
-+ <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-forms__adb.htm#ref_960_7">Res</A>) + Positive'First);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_746_13">Get_Index</A>;
-
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | man page form_new_page.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1102_14" HREF="terminal_interface-curses-forms__ads.htm#ref_761_14">Set_New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1102_28" HREF="terminal_interface-curses-forms__ads.htm#ref_761_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_1103_28" HREF="terminal_interface-curses-forms__ads.htm#ref_762_28">New_Page</A></FONT> : Boolean := True)
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | man page form_new_page.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_975_14" HREF="terminal_interface-curses-forms__ads.htm#ref_758_14">Set_New_Page</A></span> (<span class="symbol"><A NAME="ref_975_28" HREF="terminal_interface-curses-forms__ads.htm#ref_758_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_976_28" HREF="terminal_interface-curses-forms__ads.htm#ref_759_28">New_Page</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1105_16">Set_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1105_26" HREF="terminal_interface-curses-forms__adb.htm#ref_1105_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>; <FONT COLOR=red><A NAME="ref_1105_39" HREF="terminal_interface-curses-forms__adb.htm#ref_1105_16">Flg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_978_16">Set_Page</A></span> (<span class="symbol"><A NAME="ref_978_26" HREF="terminal_interface-curses-forms__adb.htm#ref_978_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>; <span class="symbol"><A NAME="ref_978_39" HREF="terminal_interface-curses-forms__adb.htm#ref_978_16">Flg</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Page, "set_new_page");
-
-- <FONT COLOR=red><A NAME="ref_1108_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1105_16">Set_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_761_28">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_762_28">New_Page</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1108_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1108_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_761_14">Set_New_Page</A>;
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1117_13" HREF="terminal_interface-curses-forms__ads.htm#ref_767_13">Is_New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_1117_26" HREF="terminal_interface-curses-forms__ads.htm#ref_767_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_978_16">Set_Page</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_758_28">Fld</A>, Boolean'Pos (<A HREF="terminal_interface-curses-forms__ads.htm#ref_759_28">New_Page</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_758_14">Set_New_Page</A>;
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_987_13" HREF="terminal_interface-curses-forms__ads.htm#ref_764_13">Is_New_Page</A></span> (<span class="symbol"><A NAME="ref_987_26" HREF="terminal_interface-curses-forms__ads.htm#ref_764_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1119_16">Is_New</A></FONT> (<FONT COLOR=red><A NAME="ref_1119_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1119_16">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_989_16">Is_New</A></span> (<span class="symbol"><A NAME="ref_989_24" HREF="terminal_interface-curses-forms__adb.htm#ref_989_16">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Is_New, "new_page");
-
-- <FONT COLOR=red><A NAME="ref_1122_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_1119_16">Is_New</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_767_26">Fld</A>);
-+ <span class="symbol"><A NAME="ref_992_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-forms__adb.htm#ref_989_16">Is_New</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_764_26">Fld</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_1122_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__adb.htm#ref_992_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_68_4">Curses_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_767_13">Is_New_Page</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_764_13">Is_New_Page</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1131_14" HREF="terminal_interface-curses-forms__ads.htm#ref_140_14">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_1131_20" HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>;
-- <FONT COLOR=red><A NAME="ref_1132_20" HREF="terminal_interface-curses-forms__ads.htm#ref_141_20">Free_Fields</A></FONT> : Boolean := False)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1001_14" HREF="terminal_interface-curses-forms__ads.htm#ref_137_14">Free</A></span> (<span class="symbol"><A NAME="ref_1001_20" HREF="terminal_interface-curses-forms__ads.htm#ref_137_20">FA</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_135_9">Field_Array_Access</A>;
-+ <span class="symbol"><A NAME="ref_1002_20" HREF="terminal_interface-curses-forms__ads.htm#ref_138_20">Free_Fields</A></span> : Boolean := False)
- <b>is</b>
- <b>procedure</b> Release <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
-- (Field_Array, <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>);
-+ (Field_Array, <A HREF="terminal_interface-curses-forms__ads.htm#ref_135_9">Field_Array_Access</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_141_20">Free_Fields</A> <b>then</b>
-- <b>for</b> <FONT COLOR=red><A NAME="ref_1138_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>'First .. (<A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>'Last - 1) <b>loop</b>
-- <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1138_14">I</A>) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> <b>then</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_319_14">Delete</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1138_14">I</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_137_20">FA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_20">Free_Fields</A> <b>then</b>
-+ <b>for</b> <span class="symbol"><A NAME="ref_1008_14">I</A></span> <b>in</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_137_20">FA</A>'First .. (<A HREF="terminal_interface-curses-forms__ads.htm#ref_137_20">FA</A>'Last - 1) <b>loop</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_137_20">FA</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1008_14">I</A>) /= <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_316_14">Delete</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_137_20">FA</A>.<b>all</b> (<A HREF="terminal_interface-curses-forms__adb.htm#ref_1008_14">I</A>));
- <b>end</b> <b>if</b>;
- <b>end</b> <b>loop</b>;
- <b>end</b> <b>if</b>;
-- Release (<A HREF="terminal_interface-curses-forms__ads.htm#ref_140_20">FA</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_140_14">Free</A>;
-+ Release (<A HREF="terminal_interface-curses-forms__ads.htm#ref_137_20">FA</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_137_14">Free</A>;
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1149_13" HREF="terminal_interface-curses-forms__ads.htm#ref_104_13">Default_Field_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1019_13" HREF="terminal_interface-curses-forms__ads.htm#ref_104_13">Default_Field_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>
- <b>is</b>
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_420_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_417_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A>);
- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_104_13">Default_Field_Options</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1155_13" HREF="terminal_interface-curses-forms__ads.htm#ref_129_13">Default_Form_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1025_13" HREF="terminal_interface-curses-forms__ads.htm#ref_126_13">Default_Form_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>
- <b>is</b>
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_667_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_129_13">Default_Form_Options</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_664_13">Get_Options</A> (<A HREF="terminal_interface-curses-forms__ads.htm#ref_55_4">Null_Form</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_126_13">Default_Form_Options</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-forms__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-forms__ads.htm 2011-03-19 23:18:40.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-forms__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,790 +1,799 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-forms.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-forms.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-forms.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-forms.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Form --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.30 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:31:35 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- form binding.</EM></FONT>
--<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT>
--<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Form --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.33 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:57 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> System;
- <b>with</b> Ada.Characters.Latin_1;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_49_35" HREF="terminal_interface-curses-forms__adb.htm#ref_51_40">Forms</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>);
-- <b>pragma</b> Linker_Options ("-lform");
-- <b>pragma</b> Linker_Options ("-lncurses");
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_45_35" HREF="terminal_interface-curses-forms__adb.htm#ref_50_40">Forms</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>);
-+ <b>pragma</b> Linker_Options ("-lform" &amp; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_9_4">DFT_ARG_SUFFIX</A>);
-
- Space : Character <b>renames</b> Ada.Characters.Latin_1.Space;
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_56_9">Field</A></FONT> <b>is</b> <b>private</b>;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_57_9">Form</A></FONT> <b>is</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_51_9">Field</A></span> <b>is</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_52_9">Form</A></span> <b>is</b> <b>private</b>;
-
-- <FONT COLOR=red><A NAME="ref_59_4">Null_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_60_4">Null_Form</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_54_4">Null_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_55_4">Null_Form</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_62_9">Field_Justification</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_62_33">None</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_63_33">Left</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_64_33">Center</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_65_33">Right</A></FONT>);
-+ <b>type</b> <span class="symbol"><A NAME="ref_57_9">Field_Justification</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_57_33">None</A></span>,
-+ <span class="symbol"><A NAME="ref_58_33">Left</A></span>,
-+ <span class="symbol"><A NAME="ref_59_33">Center</A></span>,
-+ <span class="symbol"><A NAME="ref_60_33">Right</A></span>);
-
-- <b>pragma</b> Warnings (Off);
-- <b>type</b> <FONT COLOR=red><A NAME="ref_68_9">Field_Option_Set</A></FONT> <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_62_9">Field_Option_Set</A></span> <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_70_10">Visible</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_71_10">Active</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_72_10">Public</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_73_10">Edit</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_74_10">Wrap</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_75_10">Blank</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_76_10">Auto_Skip</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_77_10">Null_Ok</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_78_10">Pass_Ok</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_79_10">Static</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_80_10">Unused</A></FONT> : Boolean;
-+ <span class="symbol"><A NAME="ref_64_10">Visible</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_65_10">Active</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_66_10">Public</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_67_10">Edit</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_68_10">Wrap</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_69_10">Blank</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_70_10">Auto_Skip</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_71_10">Null_Ok</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_72_10">Pass_Ok</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_73_10">Static</A></span> : Boolean;
- <b>end</b> <b>record</b>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>);
-+ <b>pragma</b> Convention (C_Pass_By_Copy, <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>);
-
-- <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A> <b>use</b>
-+ <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A> <b>use</b>
- <b>record</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_70_10">Visible</A> <b>at</b> 0 <b>range</b> 0 .. 0;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_71_10">Active</A> <b>at</b> 0 <b>range</b> 1 .. 1;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_72_10">Public</A> <b>at</b> 0 <b>range</b> 2 .. 2;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_73_10">Edit</A> <b>at</b> 0 <b>range</b> 3 .. 3;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_74_10">Wrap</A> <b>at</b> 0 <b>range</b> 4 .. 4;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_75_10">Blank</A> <b>at</b> 0 <b>range</b> 5 .. 5;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_76_10">Auto_Skip</A> <b>at</b> 0 <b>range</b> 6 .. 6;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_77_10">Null_Ok</A> <b>at</b> 0 <b>range</b> 7 .. 7;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_78_10">Pass_Ok</A> <b>at</b> 0 <b>range</b> 8 .. 8;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_79_10">Static</A> <b>at</b> 0 <b>range</b> 9 .. 9;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_80_10">Unused</A> <b>at</b> 0 <b>range</b> 10 .. 31;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_64_10">Visible</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_279_4">O_VISIBLE_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_280_4">O_VISIBLE_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_65_10">Active</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_281_4">O_ACTIVE_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_282_4">O_ACTIVE_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_66_10">Public</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_283_4">O_PUBLIC_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_284_4">O_PUBLIC_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_67_10">Edit</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_285_4">O_EDIT_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_286_4">O_EDIT_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_10">Wrap</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_287_4">O_WRAP_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_288_4">O_WRAP_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_69_10">Blank</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_289_4">O_BLANK_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_290_4">O_BLANK_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_70_10">Auto_Skip</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_291_4">O_AUTOSKIP_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_292_4">O_AUTOSKIP_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_71_10">Null_Ok</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_293_4">O_NULLOK_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_294_4">O_NULLOK_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_72_10">Pass_Ok</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_295_4">O_PASSOK_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_296_4">O_PASSOK_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_73_10">Static</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_297_4">O_STATIC_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_298_4">O_STATIC_Last</A>;
- <b>end</b> <b>record</b>;
-- <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>'Size <b>use</b> 32;
-- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT>
-- <FONT COLOR=green><EM>-- different on your system.Dnl</EM></FONT>
--
-+ <b>pragma</b> Warnings (Off);
-+ <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>'Size <b>use</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_299_4">Field_Options_Size</A>;
- <b>pragma</b> Warnings (On);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_104_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1149_13">Default_Field_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>;
-- <FONT COLOR=green><EM>-- The initial defaults for the field options.</EM></FONT>
-+ <b>function</b> <span class="symbol"><A NAME="ref_104_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1019_13">Default_Field_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>;
-+ <span class="comment"><EM>-- The initial defaults for the field options.</EM></span>
- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_104_13">Default_Field_Options</A>);
-
-- <b>pragma</b> Warnings (Off);
-- <b>type</b> <FONT COLOR=red><A NAME="ref_109_9">Form_Option_Set</A></FONT> <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_108_9">Form_Option_Set</A></span> <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_111_10">NL_Overload</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_112_10">BS_Overload</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_113_10">Unused</A></FONT> : Boolean;
-+ <span class="symbol"><A NAME="ref_110_10">NL_Overload</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_111_10">BS_Overload</A></span> : Boolean;
- <b>end</b> <b>record</b>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>);
-+ <b>pragma</b> Convention (C_Pass_By_Copy, <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>);
-
-- <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A> <b>use</b>
-+ <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A> <b>use</b>
- <b>record</b>
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_111_10">NL_Overload</A> <b>at</b> 0 <b>range</b> 0 .. 0;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_112_10">BS_Overload</A> <b>at</b> 0 <b>range</b> 1 .. 1;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_113_10">Unused</A> <b>at</b> 0 <b>range</b> 2 .. 31;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_110_10">NL_Overload</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_303_4">O_NL_OVERLOAD_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_304_4">O_NL_OVERLOAD_Last</A>;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_111_10">BS_Overload</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_305_4">O_BS_OVERLOAD_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_306_4">O_BS_OVERLOAD_Last</A>;
- <b>end</b> <b>record</b>;
-- <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>'Size <b>use</b> 32;
-- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT>
-- <FONT COLOR=green><EM>-- different on your system.Dnl</EM></FONT>
--
-+ <b>pragma</b> Warnings (Off);
-+ <b>for</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>'Size <b>use</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_299_4">Field_Options_Size</A>;
- <b>pragma</b> Warnings (On);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_129_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1155_13">Default_Form_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>;
-- <FONT COLOR=green><EM>-- The initial defaults for the form options.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_129_13">Default_Form_Options</A>);
-+ <b>function</b> <span class="symbol"><A NAME="ref_126_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1025_13">Default_Form_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>;
-+ <span class="comment"><EM>-- The initial defaults for the form options.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_126_13">Default_Form_Options</A>);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_133_9">Buffer_Number</A></FONT> <b>is</b> <b>new</b> Natural;
-+ <b>type</b> <span class="symbol"><A NAME="ref_130_9">Buffer_Number</A></span> <b>is</b> <b>new</b> Natural;
-
-- <b>type</b> Field_Array <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-+ <b>type</b> Field_Array <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
- <b>pragma</b> Convention (C, Field_Array);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_138_9">Field_Array_Access</A></FONT> <b>is</b> <b>access</b> Field_Array;
-+ <b>type</b> <span class="symbol"><A NAME="ref_135_9">Field_Array_Access</A></span> <b>is</b> <b>access</b> Field_Array;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_140_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1131_14">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_140_20" HREF="terminal_interface-curses-forms__adb.htm#ref_1131_20">FA</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>;
-- <FONT COLOR=red><A NAME="ref_141_20" HREF="terminal_interface-curses-forms__adb.htm#ref_1132_20">Free_Fields</A></FONT> : Boolean := False);
-- <FONT COLOR=green><EM>-- Release the memory for an allocated field array</EM></FONT>
-- <FONT COLOR=green><EM>-- If Free_Fields is True, call Delete() for all the fields in</EM></FONT>
-- <FONT COLOR=green><EM>-- the array.</EM></FONT>
--
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_146_12">Form_Request_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1) .. (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 57);
--
-- <FONT COLOR=green><EM>-- The prefix F_ stands for "Form Request"</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_149_4">F_Next_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1;
-- <FONT COLOR=red><A NAME="ref_150_4">F_Previous_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 2;
-- <FONT COLOR=red><A NAME="ref_151_4">F_First_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 3;
-- <FONT COLOR=red><A NAME="ref_152_4">F_Last_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 4;
--
-- <FONT COLOR=red><A NAME="ref_154_4">F_Next_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 5;
-- <FONT COLOR=red><A NAME="ref_155_4">F_Previous_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 6;
-- <FONT COLOR=red><A NAME="ref_156_4">F_First_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 7;
-- <FONT COLOR=red><A NAME="ref_157_4">F_Last_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 8;
-- <FONT COLOR=red><A NAME="ref_158_4">F_Sorted_Next_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 9;
-- <FONT COLOR=red><A NAME="ref_159_4">F_Sorted_Previous_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 10;
-- <FONT COLOR=red><A NAME="ref_160_4">F_Sorted_First_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 11;
-- <FONT COLOR=red><A NAME="ref_161_4">F_Sorted_Last_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 12;
-- <FONT COLOR=red><A NAME="ref_162_4">F_Left_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 13;
-- <FONT COLOR=red><A NAME="ref_163_4">F_Right_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 14;
-- <FONT COLOR=red><A NAME="ref_164_4">F_Up_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 15;
-- <FONT COLOR=red><A NAME="ref_165_4">F_Down_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 16;
--
-- <FONT COLOR=red><A NAME="ref_167_4">F_Next_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 17;
-- <FONT COLOR=red><A NAME="ref_168_4">F_Previous_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 18;
-- <FONT COLOR=red><A NAME="ref_169_4">F_Next_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 19;
-- <FONT COLOR=red><A NAME="ref_170_4">F_Previous_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 20;
-- <FONT COLOR=red><A NAME="ref_171_4">F_Next_Word</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 21;
-- <FONT COLOR=red><A NAME="ref_172_4">F_Previous_Word</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 22;
-- <FONT COLOR=red><A NAME="ref_173_4">F_Begin_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 23;
-- <FONT COLOR=red><A NAME="ref_174_4">F_End_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 24;
-- <FONT COLOR=red><A NAME="ref_175_4">F_Begin_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 25;
-- <FONT COLOR=red><A NAME="ref_176_4">F_End_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 26;
-- <FONT COLOR=red><A NAME="ref_177_4">F_Left_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 27;
-- <FONT COLOR=red><A NAME="ref_178_4">F_Right_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 28;
-- <FONT COLOR=red><A NAME="ref_179_4">F_Up_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 29;
-- <FONT COLOR=red><A NAME="ref_180_4">F_Down_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 30;
--
-- <FONT COLOR=red><A NAME="ref_182_4">F_New_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 31;
-- <FONT COLOR=red><A NAME="ref_183_4">F_Insert_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 32;
-- <FONT COLOR=red><A NAME="ref_184_4">F_Insert_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 33;
-- <FONT COLOR=red><A NAME="ref_185_4">F_Delete_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 34;
-- <FONT COLOR=red><A NAME="ref_186_4">F_Delete_Previous</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 35;
-- <FONT COLOR=red><A NAME="ref_187_4">F_Delete_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 36;
-- <FONT COLOR=red><A NAME="ref_188_4">F_Delete_Word</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 37;
-- <FONT COLOR=red><A NAME="ref_189_4">F_Clear_EOL</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 38;
-- <FONT COLOR=red><A NAME="ref_190_4">F_Clear_EOF</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 39;
-- <FONT COLOR=red><A NAME="ref_191_4">F_Clear_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 40;
-- <FONT COLOR=red><A NAME="ref_192_4">F_Overlay_Mode</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 41;
-- <FONT COLOR=red><A NAME="ref_193_4">F_Insert_Mode</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 42;
--
-- <FONT COLOR=green><EM>-- Vertical Scrolling</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_196_4">F_ScrollForward_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 43;
-- <FONT COLOR=red><A NAME="ref_197_4">F_ScrollBackward_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 44;
-- <FONT COLOR=red><A NAME="ref_198_4">F_ScrollForward_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 45;
-- <FONT COLOR=red><A NAME="ref_199_4">F_ScrollBackward_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 46;
-- <FONT COLOR=red><A NAME="ref_200_4">F_ScrollForward_HalfPage</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 47;
-- <FONT COLOR=red><A NAME="ref_201_4">F_ScrollBackward_HalfPage</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 48;
--
-- <FONT COLOR=green><EM>-- Horizontal Scrolling</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_204_4">F_HScrollForward_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 49;
-- <FONT COLOR=red><A NAME="ref_205_4">F_HScrollBackward_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 50;
-- <FONT COLOR=red><A NAME="ref_206_4">F_HScrollForward_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 51;
-- <FONT COLOR=red><A NAME="ref_207_4">F_HScrollBackward_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 52;
-- <FONT COLOR=red><A NAME="ref_208_4">F_HScrollForward_HalfLine</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 53;
-- <FONT COLOR=red><A NAME="ref_209_4">F_HScrollBackward_HalfLine</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 54;
--
-- <FONT COLOR=red><A NAME="ref_211_4">F_Validate_Field</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 55;
-- <FONT COLOR=red><A NAME="ref_212_4">F_Next_Choice</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 56;
-- <FONT COLOR=red><A NAME="ref_213_4">F_Previous_Choice</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 57;
--
-- <FONT COLOR=green><EM>-- For those who like the old 'C' style request names</EM></FONT>
-- REQ_NEXT_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_149_4">F_Next_Page</A>;
-- REQ_PREV_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_150_4">F_Previous_Page</A>;
-- REQ_FIRST_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_151_4">F_First_Page</A>;
-- REQ_LAST_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_152_4">F_Last_Page</A>;
--
-- REQ_NEXT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_154_4">F_Next_Field</A>;
-- REQ_PREV_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_155_4">F_Previous_Field</A>;
-- REQ_FIRST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_156_4">F_First_Field</A>;
-- REQ_LAST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_157_4">F_Last_Field</A>;
-- REQ_SNEXT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_158_4">F_Sorted_Next_Field</A>;
-- REQ_SPREV_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_159_4">F_Sorted_Previous_Field</A>;
-- REQ_SFIRST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_160_4">F_Sorted_First_Field</A>;
-- REQ_SLAST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_161_4">F_Sorted_Last_Field</A>;
-- REQ_LEFT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_162_4">F_Left_Field</A>;
-- REQ_RIGHT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_163_4">F_Right_Field</A>;
-- REQ_UP_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_164_4">F_Up_Field</A>;
-- REQ_DOWN_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_165_4">F_Down_Field</A>;
--
-- REQ_NEXT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_167_4">F_Next_Char</A>;
-- REQ_PREV_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_168_4">F_Previous_Char</A>;
-- REQ_NEXT_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_169_4">F_Next_Line</A>;
-- REQ_PREV_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_170_4">F_Previous_Line</A>;
-- REQ_NEXT_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_171_4">F_Next_Word</A>;
-- REQ_PREV_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_172_4">F_Previous_Word</A>;
-- REQ_BEG_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_173_4">F_Begin_Field</A>;
-- REQ_END_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_174_4">F_End_Field</A>;
-- REQ_BEG_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_175_4">F_Begin_Line</A>;
-- REQ_END_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_176_4">F_End_Line</A>;
-- REQ_LEFT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_177_4">F_Left_Char</A>;
-- REQ_RIGHT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_178_4">F_Right_Char</A>;
-- REQ_UP_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_179_4">F_Up_Char</A>;
-- REQ_DOWN_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_180_4">F_Down_Char</A>;
--
-- REQ_NEW_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_182_4">F_New_Line</A>;
-- REQ_INS_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_183_4">F_Insert_Char</A>;
-- REQ_INS_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_184_4">F_Insert_Line</A>;
-- REQ_DEL_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_185_4">F_Delete_Char</A>;
-- REQ_DEL_PREV : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_186_4">F_Delete_Previous</A>;
-- REQ_DEL_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_187_4">F_Delete_Line</A>;
-- REQ_DEL_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_188_4">F_Delete_Word</A>;
-- REQ_CLR_EOL : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_189_4">F_Clear_EOL</A>;
-- REQ_CLR_EOF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_190_4">F_Clear_EOF</A>;
-- REQ_CLR_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_191_4">F_Clear_Field</A>;
-- REQ_OVL_MODE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_192_4">F_Overlay_Mode</A>;
-- REQ_INS_MODE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_193_4">F_Insert_Mode</A>;
--
-- REQ_SCR_FLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_196_4">F_ScrollForward_Line</A>;
-- REQ_SCR_BLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_197_4">F_ScrollBackward_Line</A>;
-- REQ_SCR_FPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_198_4">F_ScrollForward_Page</A>;
-- REQ_SCR_BPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_199_4">F_ScrollBackward_Page</A>;
-- REQ_SCR_FHPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_200_4">F_ScrollForward_HalfPage</A>;
-- REQ_SCR_BHPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_201_4">F_ScrollBackward_HalfPage</A>;
--
-- REQ_SCR_FCHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_204_4">F_HScrollForward_Char</A>;
-- REQ_SCR_BCHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_205_4">F_HScrollBackward_Char</A>;
-- REQ_SCR_HFLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_206_4">F_HScrollForward_Line</A>;
-- REQ_SCR_HBLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_207_4">F_HScrollBackward_Line</A>;
-- REQ_SCR_HFHALF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_208_4">F_HScrollForward_HalfLine</A>;
-- REQ_SCR_HBHALF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_209_4">F_HScrollBackward_HalfLine</A>;
--
-- REQ_VALIDATION : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_211_4">F_Validate_Field</A>;
-- REQ_NEXT_CHOICE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_212_4">F_Next_Choice</A>;
-- REQ_PREV_CHOICE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_213_4">F_Previous_Choice</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_137_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1001_14">Free</A></span> (<span class="symbol"><A NAME="ref_137_20" HREF="terminal_interface-curses-forms__adb.htm#ref_1001_20">FA</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_135_9">Field_Array_Access</A>;
-+ <span class="symbol"><A NAME="ref_138_20" HREF="terminal_interface-curses-forms__adb.htm#ref_1002_20">Free_Fields</A></span> : Boolean := False);
-+ <span class="comment"><EM>-- Release the memory for an allocated field array</EM></span>
-+ <span class="comment"><EM>-- If Free_Fields is True, call Delete() for all the fields in</EM></span>
-+ <span class="comment"><EM>-- the array.</EM></span>
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_143_12">Form_Request_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A> <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 1) .. (<A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 57);
-+
-+ <span class="comment"><EM>-- The prefix F_ stands for "Form Request"</EM></span>
-+ <span class="symbol"><A NAME="ref_146_4">F_Next_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 1;
-+ <span class="symbol"><A NAME="ref_147_4">F_Previous_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 2;
-+ <span class="symbol"><A NAME="ref_148_4">F_First_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 3;
-+ <span class="symbol"><A NAME="ref_149_4">F_Last_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 4;
-+
-+ <span class="symbol"><A NAME="ref_151_4">F_Next_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 5;
-+ <span class="symbol"><A NAME="ref_152_4">F_Previous_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 6;
-+ <span class="symbol"><A NAME="ref_153_4">F_First_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 7;
-+ <span class="symbol"><A NAME="ref_154_4">F_Last_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 8;
-+ <span class="symbol"><A NAME="ref_155_4">F_Sorted_Next_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 9;
-+ <span class="symbol"><A NAME="ref_156_4">F_Sorted_Previous_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 10;
-+ <span class="symbol"><A NAME="ref_157_4">F_Sorted_First_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 11;
-+ <span class="symbol"><A NAME="ref_158_4">F_Sorted_Last_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 12;
-+ <span class="symbol"><A NAME="ref_159_4">F_Left_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 13;
-+ <span class="symbol"><A NAME="ref_160_4">F_Right_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 14;
-+ <span class="symbol"><A NAME="ref_161_4">F_Up_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 15;
-+ <span class="symbol"><A NAME="ref_162_4">F_Down_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 16;
-+
-+ <span class="symbol"><A NAME="ref_164_4">F_Next_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 17;
-+ <span class="symbol"><A NAME="ref_165_4">F_Previous_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 18;
-+ <span class="symbol"><A NAME="ref_166_4">F_Next_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 19;
-+ <span class="symbol"><A NAME="ref_167_4">F_Previous_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 20;
-+ <span class="symbol"><A NAME="ref_168_4">F_Next_Word</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 21;
-+ <span class="symbol"><A NAME="ref_169_4">F_Previous_Word</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 22;
-+ <span class="symbol"><A NAME="ref_170_4">F_Begin_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 23;
-+ <span class="symbol"><A NAME="ref_171_4">F_End_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 24;
-+ <span class="symbol"><A NAME="ref_172_4">F_Begin_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 25;
-+ <span class="symbol"><A NAME="ref_173_4">F_End_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 26;
-+ <span class="symbol"><A NAME="ref_174_4">F_Left_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 27;
-+ <span class="symbol"><A NAME="ref_175_4">F_Right_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 28;
-+ <span class="symbol"><A NAME="ref_176_4">F_Up_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 29;
-+ <span class="symbol"><A NAME="ref_177_4">F_Down_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 30;
-+
-+ <span class="symbol"><A NAME="ref_179_4">F_New_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 31;
-+ <span class="symbol"><A NAME="ref_180_4">F_Insert_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 32;
-+ <span class="symbol"><A NAME="ref_181_4">F_Insert_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 33;
-+ <span class="symbol"><A NAME="ref_182_4">F_Delete_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 34;
-+ <span class="symbol"><A NAME="ref_183_4">F_Delete_Previous</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 35;
-+ <span class="symbol"><A NAME="ref_184_4">F_Delete_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 36;
-+ <span class="symbol"><A NAME="ref_185_4">F_Delete_Word</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 37;
-+ <span class="symbol"><A NAME="ref_186_4">F_Clear_EOL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 38;
-+ <span class="symbol"><A NAME="ref_187_4">F_Clear_EOF</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 39;
-+ <span class="symbol"><A NAME="ref_188_4">F_Clear_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 40;
-+ <span class="symbol"><A NAME="ref_189_4">F_Overlay_Mode</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 41;
-+ <span class="symbol"><A NAME="ref_190_4">F_Insert_Mode</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 42;
-+
-+ <span class="comment"><EM>-- Vertical Scrolling</EM></span>
-+ <span class="symbol"><A NAME="ref_193_4">F_ScrollForward_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 43;
-+ <span class="symbol"><A NAME="ref_194_4">F_ScrollBackward_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 44;
-+ <span class="symbol"><A NAME="ref_195_4">F_ScrollForward_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 45;
-+ <span class="symbol"><A NAME="ref_196_4">F_ScrollBackward_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 46;
-+ <span class="symbol"><A NAME="ref_197_4">F_ScrollForward_HalfPage</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 47;
-+ <span class="symbol"><A NAME="ref_198_4">F_ScrollBackward_HalfPage</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 48;
-+
-+ <span class="comment"><EM>-- Horizontal Scrolling</EM></span>
-+ <span class="symbol"><A NAME="ref_201_4">F_HScrollForward_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 49;
-+ <span class="symbol"><A NAME="ref_202_4">F_HScrollBackward_Char</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 50;
-+ <span class="symbol"><A NAME="ref_203_4">F_HScrollForward_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 51;
-+ <span class="symbol"><A NAME="ref_204_4">F_HScrollBackward_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 52;
-+ <span class="symbol"><A NAME="ref_205_4">F_HScrollForward_HalfLine</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 53;
-+ <span class="symbol"><A NAME="ref_206_4">F_HScrollBackward_HalfLine</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 54;
-+
-+ <span class="symbol"><A NAME="ref_208_4">F_Validate_Field</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 55;
-+ <span class="symbol"><A NAME="ref_209_4">F_Next_Choice</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 56;
-+ <span class="symbol"><A NAME="ref_210_4">F_Previous_Choice</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 57;
-+
-+ <span class="comment"><EM>-- For those who like the old 'C' style request names</EM></span>
-+ REQ_NEXT_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_4">F_Next_Page</A>;
-+ REQ_PREV_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_147_4">F_Previous_Page</A>;
-+ REQ_FIRST_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_148_4">F_First_Page</A>;
-+ REQ_LAST_PAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_149_4">F_Last_Page</A>;
-+
-+ REQ_NEXT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_151_4">F_Next_Field</A>;
-+ REQ_PREV_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_152_4">F_Previous_Field</A>;
-+ REQ_FIRST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_153_4">F_First_Field</A>;
-+ REQ_LAST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_154_4">F_Last_Field</A>;
-+ REQ_SNEXT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_155_4">F_Sorted_Next_Field</A>;
-+ REQ_SPREV_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_156_4">F_Sorted_Previous_Field</A>;
-+ REQ_SFIRST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_157_4">F_Sorted_First_Field</A>;
-+ REQ_SLAST_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_158_4">F_Sorted_Last_Field</A>;
-+ REQ_LEFT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_159_4">F_Left_Field</A>;
-+ REQ_RIGHT_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_160_4">F_Right_Field</A>;
-+ REQ_UP_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_161_4">F_Up_Field</A>;
-+ REQ_DOWN_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_162_4">F_Down_Field</A>;
-+
-+ REQ_NEXT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_164_4">F_Next_Char</A>;
-+ REQ_PREV_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_165_4">F_Previous_Char</A>;
-+ REQ_NEXT_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_166_4">F_Next_Line</A>;
-+ REQ_PREV_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_167_4">F_Previous_Line</A>;
-+ REQ_NEXT_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_168_4">F_Next_Word</A>;
-+ REQ_PREV_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_169_4">F_Previous_Word</A>;
-+ REQ_BEG_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_170_4">F_Begin_Field</A>;
-+ REQ_END_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_171_4">F_End_Field</A>;
-+ REQ_BEG_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_172_4">F_Begin_Line</A>;
-+ REQ_END_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_173_4">F_End_Line</A>;
-+ REQ_LEFT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_174_4">F_Left_Char</A>;
-+ REQ_RIGHT_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_175_4">F_Right_Char</A>;
-+ REQ_UP_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_176_4">F_Up_Char</A>;
-+ REQ_DOWN_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_177_4">F_Down_Char</A>;
-+
-+ REQ_NEW_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_179_4">F_New_Line</A>;
-+ REQ_INS_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_180_4">F_Insert_Char</A>;
-+ REQ_INS_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_181_4">F_Insert_Line</A>;
-+ REQ_DEL_CHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_182_4">F_Delete_Char</A>;
-+ REQ_DEL_PREV : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_183_4">F_Delete_Previous</A>;
-+ REQ_DEL_LINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_184_4">F_Delete_Line</A>;
-+ REQ_DEL_WORD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_185_4">F_Delete_Word</A>;
-+ REQ_CLR_EOL : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_186_4">F_Clear_EOL</A>;
-+ REQ_CLR_EOF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_187_4">F_Clear_EOF</A>;
-+ REQ_CLR_FIELD : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_188_4">F_Clear_Field</A>;
-+ REQ_OVL_MODE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_189_4">F_Overlay_Mode</A>;
-+ REQ_INS_MODE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_190_4">F_Insert_Mode</A>;
-+
-+ REQ_SCR_FLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_193_4">F_ScrollForward_Line</A>;
-+ REQ_SCR_BLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_194_4">F_ScrollBackward_Line</A>;
-+ REQ_SCR_FPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_195_4">F_ScrollForward_Page</A>;
-+ REQ_SCR_BPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_196_4">F_ScrollBackward_Page</A>;
-+ REQ_SCR_FHPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_197_4">F_ScrollForward_HalfPage</A>;
-+ REQ_SCR_BHPAGE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_198_4">F_ScrollBackward_HalfPage</A>;
-+
-+ REQ_SCR_FCHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_201_4">F_HScrollForward_Char</A>;
-+ REQ_SCR_BCHAR : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_202_4">F_HScrollBackward_Char</A>;
-+ REQ_SCR_HFLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_203_4">F_HScrollForward_Line</A>;
-+ REQ_SCR_HBLINE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_204_4">F_HScrollBackward_Line</A>;
-+ REQ_SCR_HFHALF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_205_4">F_HScrollForward_HalfLine</A>;
-+ REQ_SCR_HBHALF : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_206_4">F_HScrollBackward_HalfLine</A>;
-+
-+ REQ_VALIDATION : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_208_4">F_Validate_Field</A>;
-+ REQ_NEXT_CHOICE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_209_4">F_Next_Choice</A>;
-+ REQ_PREV_CHOICE : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_210_4">F_Previous_Choice</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_280_14" HREF="terminal_interface-curses-forms__adb.htm#ref_81_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_280_28" HREF="terminal_interface-curses-forms__adb.htm#ref_81_28">Key</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A>;
-- <FONT COLOR=red><A NAME="ref_281_28" HREF="terminal_interface-curses-forms__adb.htm#ref_82_33">Name</A></FONT> : <b>out</b> String);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_277_14" HREF="terminal_interface-curses-forms__adb.htm#ref_64_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_277_28" HREF="terminal_interface-curses-forms__adb.htm#ref_64_28">Key</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A>;
-+ <span class="symbol"><A NAME="ref_278_28" HREF="terminal_interface-curses-forms__adb.htm#ref_65_33">Name</A></span> : <b>out</b> String);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_283_14" HREF="terminal_interface-curses-forms__adb.htm#ref_90_13">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_283_28" HREF="terminal_interface-curses-forms__adb.htm#ref_90_27">Key</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_146_12">Form_Request_Code</A>) <b>return</b> String;
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-+ <b>function</b> <span class="symbol"><A NAME="ref_280_14" HREF="terminal_interface-curses-forms__adb.htm#ref_73_13">Request_Name</A></span> (<span class="symbol"><A NAME="ref_280_28" HREF="terminal_interface-curses-forms__adb.htm#ref_73_27">Key</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_143_12">Form_Request_Code</A>) <b>return</b> String;
-+ <span class="comment"><EM>-- Same as function</EM></span>
- <b>pragma</b> Inline (Request_Name);
-
-- <FONT COLOR=green><EM>------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Exceptions --</EM></FONT>
-- <FONT COLOR=green><EM>------------------</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_290_4">Form_Exception</A></FONT> : <b>exception</b>;
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_new.3x.html">form_field_new.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_297_13" HREF="terminal_interface-curses-forms__adb.htm#ref_108_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_297_21" HREF="terminal_interface-curses-forms__adb.htm#ref_108_21">Height</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_298_21" HREF="terminal_interface-curses-forms__adb.htm#ref_109_21">Width</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_299_21" HREF="terminal_interface-curses-forms__adb.htm#ref_110_21">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_300_21" HREF="terminal_interface-curses-forms__adb.htm#ref_111_21">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_301_21" HREF="terminal_interface-curses-forms__adb.htm#ref_112_21">Off_Screen</A></FONT> : Natural := 0;
-- <FONT COLOR=red><A NAME="ref_302_21" HREF="terminal_interface-curses-forms__adb.htm#ref_113_21">More_Buffers</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First)
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- An overloaded Create is defined later. Pragma Inline appears there.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>function</b> New_Field (<FONT COLOR=red><A NAME="ref_308_24">Height</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_309_24">Width</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_310_24">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_311_24">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_312_24">Off_Screen</A></FONT> : Natural := 0;
-- <FONT COLOR=red><A NAME="ref_313_24">More_Buffers</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First)
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_297_13">Create</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></FONT>
-+ <span class="comment"><EM>------------------</EM></span>
-+ <span class="comment"><EM>-- Exceptions --</EM></span>
-+ <span class="comment"><EM>------------------</EM></span>
-+ <span class="symbol"><A NAME="ref_287_4">Form_Exception</A></span> : <b>exception</b>;
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_new.3x.html">form_field_new.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_294_13" HREF="terminal_interface-curses-forms__adb.htm#ref_91_13">Create</A></span> (<span class="symbol"><A NAME="ref_294_21" HREF="terminal_interface-curses-forms__adb.htm#ref_91_21">Height</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_295_21" HREF="terminal_interface-curses-forms__adb.htm#ref_92_21">Width</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_296_21" HREF="terminal_interface-curses-forms__adb.htm#ref_93_21">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_297_21" HREF="terminal_interface-curses-forms__adb.htm#ref_94_21">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_298_21" HREF="terminal_interface-curses-forms__adb.htm#ref_95_21">Off_Screen</A></span> : Natural := 0;
-+ <span class="symbol"><A NAME="ref_299_21" HREF="terminal_interface-curses-forms__adb.htm#ref_96_21">More_Buffers</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></span>
-+ <span class="comment"><EM>-- An overloaded Create is defined later. Pragma Inline appears there.</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>function</b> New_Field (<span class="symbol"><A NAME="ref_305_24">Height</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_306_24">Width</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_307_24">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_308_24">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_309_24">Off_Screen</A></span> : Natural := 0;
-+ <span class="symbol"><A NAME="ref_310_24">More_Buffers</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_294_13">Create</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">new_field()</A></EM></span>
- <b>pragma</b> Inline (New_Field);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_319_14" HREF="terminal_interface-curses-forms__adb.htm#ref_131_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_319_22" HREF="terminal_interface-curses-forms__adb.htm#ref_131_22">Fld</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">free_field()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Reset Fld to Null_Field</EM></FONT>
-- <FONT COLOR=green><EM>-- An overloaded Delete is defined later. Pragma Inline appears there.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_325_13" HREF="terminal_interface-curses-forms__adb.htm#ref_147_13">Duplicate</A></FONT> (<FONT COLOR=red><A NAME="ref_325_24" HREF="terminal_interface-curses-forms__adb.htm#ref_147_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_326_24" HREF="terminal_interface-curses-forms__adb.htm#ref_148_24">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_327_24" HREF="terminal_interface-curses-forms__adb.htm#ref_149_24">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">dup_field()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_316_14" HREF="terminal_interface-curses-forms__adb.htm#ref_114_14">Delete</A></span> (<span class="symbol"><A NAME="ref_316_22" HREF="terminal_interface-curses-forms__adb.htm#ref_114_22">Fld</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">free_field()</A></EM></span>
-+ <span class="comment"><EM>-- Reset Fld to Null_Field</EM></span>
-+ <span class="comment"><EM>-- An overloaded Delete is defined later. Pragma Inline appears there.</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_322_13" HREF="terminal_interface-curses-forms__adb.htm#ref_126_13">Duplicate</A></span> (<span class="symbol"><A NAME="ref_322_24" HREF="terminal_interface-curses-forms__adb.htm#ref_126_24">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_323_24" HREF="terminal_interface-curses-forms__adb.htm#ref_127_24">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_324_24" HREF="terminal_interface-curses-forms__adb.htm#ref_128_24">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">dup_field()</A></EM></span>
- <b>pragma</b> Inline (Duplicate);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_332_13" HREF="terminal_interface-curses-forms__adb.htm#ref_168_13">Link</A></FONT> (<FONT COLOR=red><A NAME="ref_332_19" HREF="terminal_interface-curses-forms__adb.htm#ref_168_19">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_333_19" HREF="terminal_interface-curses-forms__adb.htm#ref_169_19">Top</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_334_19" HREF="terminal_interface-curses-forms__adb.htm#ref_170_19">Left</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">link_field()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_332_13">Link</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_just.3x.html">form_field_just.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_6"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_343_14" HREF="terminal_interface-curses-forms__adb.htm#ref_193_14">Set_Justification</A></FONT> (<FONT COLOR=red><A NAME="ref_343_33" HREF="terminal_interface-curses-forms__adb.htm#ref_193_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_344_33" HREF="terminal_interface-curses-forms__adb.htm#ref_194_33">Just</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_33">None</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_just.3x.html">set_field_just()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_343_14">Set_Justification</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_7"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_349_13" HREF="terminal_interface-curses-forms__adb.htm#ref_211_13">Get_Justification</A></FONT> (<FONT COLOR=red><A NAME="ref_349_32" HREF="terminal_interface-curses-forms__adb.htm#ref_211_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Justification</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_just.3x.html">field_just()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_349_13">Get_Justification</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_buffer.3x.html">form_field_buffer.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_8"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_358_14" HREF="terminal_interface-curses-forms__adb.htm#ref_225_14">Set_Buffer</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_359_7" HREF="terminal_interface-curses-forms__adb.htm#ref_226_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_360_7" HREF="terminal_interface-curses-forms__adb.htm#ref_227_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First;
-- <FONT COLOR=red><A NAME="ref_361_7" HREF="terminal_interface-curses-forms__adb.htm#ref_228_7">Str</A></FONT> : String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_buffer()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Not inlined</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_9"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_366_14" HREF="terminal_interface-curses-forms__adb.htm#ref_250_14">Get_Buffer</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_367_7" HREF="terminal_interface-curses-forms__adb.htm#ref_251_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_368_7" HREF="terminal_interface-curses-forms__adb.htm#ref_252_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First;
-- <FONT COLOR=red><A NAME="ref_369_7" HREF="terminal_interface-curses-forms__adb.htm#ref_253_7">Str</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_372_13" HREF="terminal_interface-curses-forms__adb.htm#ref_262_13">Get_Buffer</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_373_7" HREF="terminal_interface-curses-forms__adb.htm#ref_263_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_374_7" HREF="terminal_interface-curses-forms__adb.htm#ref_264_7">Buffer</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>'First) <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same but as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_329_13" HREF="terminal_interface-curses-forms__adb.htm#ref_147_13">Link</A></span> (<span class="symbol"><A NAME="ref_329_19" HREF="terminal_interface-curses-forms__adb.htm#ref_147_19">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_330_19" HREF="terminal_interface-curses-forms__adb.htm#ref_148_19">Top</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_331_19" HREF="terminal_interface-curses-forms__adb.htm#ref_149_19">Left</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_new.3x.html">link_field()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_329_13">Link</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_just.3x.html">form_field_just.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_6"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_340_14" HREF="terminal_interface-curses-forms__adb.htm#ref_172_14">Set_Justification</A></span> (<span class="symbol"><A NAME="ref_340_33" HREF="terminal_interface-curses-forms__adb.htm#ref_172_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_341_33" HREF="terminal_interface-curses-forms__adb.htm#ref_173_33">Just</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Field_Justification</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_33">None</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_just.3x.html">set_field_just()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_340_14">Set_Justification</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_7"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_346_13" HREF="terminal_interface-curses-forms__adb.htm#ref_186_13">Get_Justification</A></span> (<span class="symbol"><A NAME="ref_346_32" HREF="terminal_interface-curses-forms__adb.htm#ref_186_32">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Field_Justification</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_just.3x.html">field_just()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_346_13">Get_Justification</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_buffer.3x.html">form_field_buffer.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_8"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_355_14" HREF="terminal_interface-curses-forms__adb.htm#ref_200_14">Set_Buffer</A></span>
-+ (<span class="symbol"><A NAME="ref_356_7" HREF="terminal_interface-curses-forms__adb.htm#ref_201_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_357_7" HREF="terminal_interface-curses-forms__adb.htm#ref_202_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First;
-+ <span class="symbol"><A NAME="ref_358_7" HREF="terminal_interface-curses-forms__adb.htm#ref_203_7">Str</A></span> : String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_buffer()</A></EM></span>
-+ <span class="comment"><EM>-- Not inlined</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_9"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_363_14" HREF="terminal_interface-curses-forms__adb.htm#ref_217_14">Get_Buffer</A></span>
-+ (<span class="symbol"><A NAME="ref_364_7" HREF="terminal_interface-curses-forms__adb.htm#ref_218_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_365_7" HREF="terminal_interface-curses-forms__adb.htm#ref_219_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First;
-+ <span class="symbol"><A NAME="ref_366_7" HREF="terminal_interface-curses-forms__adb.htm#ref_220_7">Str</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_369_13" HREF="terminal_interface-curses-forms__adb.htm#ref_229_13">Get_Buffer</A></span>
-+ (<span class="symbol"><A NAME="ref_370_7" HREF="terminal_interface-curses-forms__adb.htm#ref_230_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_371_7" HREF="terminal_interface-curses-forms__adb.htm#ref_231_7">Buffer</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>'First) <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_buffer()</A></EM></span>
-+ <span class="comment"><EM>-- Same but as function</EM></span>
- <b>pragma</b> Inline (Get_Buffer);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_10"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_380_14" HREF="terminal_interface-curses-forms__adb.htm#ref_275_14">Set_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_380_26" HREF="terminal_interface-curses-forms__adb.htm#ref_275_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_381_26" HREF="terminal_interface-curses-forms__adb.htm#ref_276_26">Status</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_status()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_380_14">Set_Status</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_11"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_386_13" HREF="terminal_interface-curses-forms__adb.htm#ref_291_13">Changed</A></FONT> (<FONT COLOR=red><A NAME="ref_386_22" HREF="terminal_interface-curses-forms__adb.htm#ref_291_22">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_status()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_386_13">Changed</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_12"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_391_14" HREF="terminal_interface-curses-forms__adb.htm#ref_307_14">Set_Maximum_Size</A></FONT> (<FONT COLOR=red><A NAME="ref_391_32" HREF="terminal_interface-curses-forms__adb.htm#ref_307_32">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_392_32" HREF="terminal_interface-curses-forms__adb.htm#ref_308_32">Max</A></FONT> : Natural := 0);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_max()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_391_14">Set_Maximum_Size</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_opts.3x.html">form_field_opts.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_13"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_401_14" HREF="terminal_interface-curses-forms__adb.htm#ref_327_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_401_27" HREF="terminal_interface-curses-forms__adb.htm#ref_327_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_402_27" HREF="terminal_interface-curses-forms__adb.htm#ref_328_27">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">set_field_opts()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_14"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_407_14" HREF="terminal_interface-curses-forms__adb.htm#ref_345_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_407_30" HREF="terminal_interface-curses-forms__adb.htm#ref_345_30">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_408_30" HREF="terminal_interface-curses-forms__adb.htm#ref_346_30">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>;
-- <FONT COLOR=red><A NAME="ref_409_30" HREF="terminal_interface-curses-forms__adb.htm#ref_347_30">On</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts_on()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: field_opts_off()</EM></FONT>
-- <FONT COLOR=green><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_15"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_415_14" HREF="terminal_interface-curses-forms__adb.htm#ref_371_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_415_27" HREF="terminal_interface-curses-forms__adb.htm#ref_371_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_416_27" HREF="terminal_interface-curses-forms__adb.htm#ref_372_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_16"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_420_13" HREF="terminal_interface-curses-forms__adb.htm#ref_384_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_420_26" HREF="terminal_interface-curses-forms__adb.htm#ref_384_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_68_9">Field_Option_Set</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_attributes.3x.html">form_field_attributes.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_17"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_430_14" HREF="terminal_interface-curses-forms__adb.htm#ref_399_14">Set_Foreground</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_431_7" HREF="terminal_interface-curses-forms__adb.htm#ref_400_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_432_7" HREF="terminal_interface-curses-forms__adb.htm#ref_401_7">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_433_7" HREF="terminal_interface-curses-forms__adb.htm#ref_402_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_fore()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_430_14">Set_Foreground</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_18"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_438_14" HREF="terminal_interface-curses-forms__adb.htm#ref_421_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_438_26" HREF="terminal_interface-curses-forms__adb.htm#ref_421_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_439_26" HREF="terminal_interface-curses-forms__adb.htm#ref_422_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_19"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_443_14" HREF="terminal_interface-curses-forms__adb.htm#ref_430_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_443_26" HREF="terminal_interface-curses-forms__adb.htm#ref_430_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_444_26" HREF="terminal_interface-curses-forms__adb.htm#ref_431_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_445_26" HREF="terminal_interface-curses-forms__adb.htm#ref_432_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_10"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_377_14" HREF="terminal_interface-curses-forms__adb.htm#ref_242_14">Set_Status</A></span> (<span class="symbol"><A NAME="ref_377_26" HREF="terminal_interface-curses-forms__adb.htm#ref_242_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_378_26" HREF="terminal_interface-curses-forms__adb.htm#ref_243_26">Status</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_status()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_377_14">Set_Status</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_11"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_383_13" HREF="terminal_interface-curses-forms__adb.htm#ref_257_13">Changed</A></span> (<span class="symbol"><A NAME="ref_383_22" HREF="terminal_interface-curses-forms__adb.htm#ref_257_22">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">field_status()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_383_13">Changed</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_12"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_388_14" HREF="terminal_interface-curses-forms__adb.htm#ref_273_14">Set_Maximum_Size</A></span> (<span class="symbol"><A NAME="ref_388_32" HREF="terminal_interface-curses-forms__adb.htm#ref_273_32">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_389_32" HREF="terminal_interface-curses-forms__adb.htm#ref_274_32">Max</A></span> : Natural := 0);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_buffer.3x.html">set_field_max()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_388_14">Set_Maximum_Size</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_opts.3x.html">form_field_opts.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_13"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_398_14" HREF="terminal_interface-curses-forms__adb.htm#ref_290_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_398_27" HREF="terminal_interface-curses-forms__adb.htm#ref_290_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_399_27" HREF="terminal_interface-curses-forms__adb.htm#ref_291_27">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">set_field_opts()</A></EM></span>
-+ <span class="comment"><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_14"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_404_14" HREF="terminal_interface-curses-forms__adb.htm#ref_303_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_404_30" HREF="terminal_interface-curses-forms__adb.htm#ref_303_30">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_405_30" HREF="terminal_interface-curses-forms__adb.htm#ref_304_30">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_406_30" HREF="terminal_interface-curses-forms__adb.htm#ref_305_30">On</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts_on()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: field_opts_off()</EM></span>
-+ <span class="comment"><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_15"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_412_14" HREF="terminal_interface-curses-forms__adb.htm#ref_324_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_412_27" HREF="terminal_interface-curses-forms__adb.htm#ref_324_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_413_27" HREF="terminal_interface-curses-forms__adb.htm#ref_325_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_16"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_417_13" HREF="terminal_interface-curses-forms__adb.htm#ref_336_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_417_26" HREF="terminal_interface-curses-forms__adb.htm#ref_336_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_62_9">Field_Option_Set</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_opts.3x.html">field_opts()</A></EM></span>
-+ <span class="comment"><EM>-- An overloaded version is defined later. Pragma Inline appears there</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_attributes.3x.html">form_field_attributes.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_17"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_427_14" HREF="terminal_interface-curses-forms__adb.htm#ref_351_14">Set_Foreground</A></span>
-+ (<span class="symbol"><A NAME="ref_428_7" HREF="terminal_interface-curses-forms__adb.htm#ref_352_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_429_7" HREF="terminal_interface-curses-forms__adb.htm#ref_353_7">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_430_7" HREF="terminal_interface-curses-forms__adb.htm#ref_354_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_fore()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_427_14">Set_Foreground</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_18"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_435_14" HREF="terminal_interface-curses-forms__adb.htm#ref_368_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_435_26" HREF="terminal_interface-curses-forms__adb.htm#ref_368_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_436_26" HREF="terminal_interface-curses-forms__adb.htm#ref_369_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_19"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_440_14" HREF="terminal_interface-curses-forms__adb.htm#ref_377_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_440_26" HREF="terminal_interface-curses-forms__adb.htm#ref_377_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_441_26" HREF="terminal_interface-curses-forms__adb.htm#ref_378_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_442_26" HREF="terminal_interface-curses-forms__adb.htm#ref_379_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_fore()</A></EM></span>
- <b>pragma</b> Inline (Foreground);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_20"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_450_14" HREF="terminal_interface-curses-forms__adb.htm#ref_443_14">Set_Background</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_451_7" HREF="terminal_interface-curses-forms__adb.htm#ref_444_7">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_452_7" HREF="terminal_interface-curses-forms__adb.htm#ref_445_7">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_453_7" HREF="terminal_interface-curses-forms__adb.htm#ref_446_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_back()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_20"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_447_14" HREF="terminal_interface-curses-forms__adb.htm#ref_390_14">Set_Background</A></span>
-+ (<span class="symbol"><A NAME="ref_448_7" HREF="terminal_interface-curses-forms__adb.htm#ref_391_7">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_449_7" HREF="terminal_interface-curses-forms__adb.htm#ref_392_7">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_450_7" HREF="terminal_interface-curses-forms__adb.htm#ref_393_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_back()</A></EM></span>
- <b>pragma</b> Inline (Set_Background);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_21"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_458_14" HREF="terminal_interface-curses-forms__adb.htm#ref_465_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_458_26" HREF="terminal_interface-curses-forms__adb.htm#ref_465_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_459_26" HREF="terminal_interface-curses-forms__adb.htm#ref_466_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_22"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_463_14" HREF="terminal_interface-curses-forms__adb.htm#ref_474_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_463_26" HREF="terminal_interface-curses-forms__adb.htm#ref_474_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_464_26" HREF="terminal_interface-curses-forms__adb.htm#ref_475_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_465_26" HREF="terminal_interface-curses-forms__adb.htm#ref_476_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_21"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_455_14" HREF="terminal_interface-curses-forms__adb.htm#ref_407_14">Background</A></span> (<span class="symbol"><A NAME="ref_455_26" HREF="terminal_interface-curses-forms__adb.htm#ref_407_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_456_26" HREF="terminal_interface-curses-forms__adb.htm#ref_408_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_22"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_460_14" HREF="terminal_interface-curses-forms__adb.htm#ref_416_14">Background</A></span> (<span class="symbol"><A NAME="ref_460_26" HREF="terminal_interface-curses-forms__adb.htm#ref_416_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_461_26" HREF="terminal_interface-curses-forms__adb.htm#ref_417_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_462_26" HREF="terminal_interface-curses-forms__adb.htm#ref_418_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_back()</A></EM></span>
- <b>pragma</b> Inline (Background);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_23"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_470_14" HREF="terminal_interface-curses-forms__adb.htm#ref_487_14">Set_Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_470_33" HREF="terminal_interface-curses-forms__adb.htm#ref_487_33">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_471_33" HREF="terminal_interface-curses-forms__adb.htm#ref_488_33">Pad</A></FONT> : Character := Space);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_pad()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_470_14">Set_Pad_Character</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_24"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_476_14" HREF="terminal_interface-curses-forms__adb.htm#ref_504_14">Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_476_29" HREF="terminal_interface-curses-forms__adb.htm#ref_504_29">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_477_29" HREF="terminal_interface-curses-forms__adb.htm#ref_505_29">Pad</A></FONT> : <b>out</b> Character);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_pad()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_476_14">Pad_Character</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field_info.3x.html">form_field_info.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_25"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_486_14" HREF="terminal_interface-curses-forms__adb.htm#ref_519_14">Info</A></FONT> (<FONT COLOR=red><A NAME="ref_486_20" HREF="terminal_interface-curses-forms__adb.htm#ref_519_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_487_20" HREF="terminal_interface-curses-forms__adb.htm#ref_520_20">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_488_20" HREF="terminal_interface-curses-forms__adb.htm#ref_521_20">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_489_20" HREF="terminal_interface-curses-forms__adb.htm#ref_522_20">First_Row</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_490_20" HREF="terminal_interface-curses-forms__adb.htm#ref_523_20">First_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_491_20" HREF="terminal_interface-curses-forms__adb.htm#ref_524_20">Off_Screen</A></FONT> : <b>out</b> Natural;
-- <FONT COLOR=red><A NAME="ref_492_20" HREF="terminal_interface-curses-forms__adb.htm#ref_525_20">Additional_Buffers</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_133_9">Buffer_Number</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_info.3x.html">field_info()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_486_14">Info</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_26"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_497_14" HREF="terminal_interface-curses-forms__adb.htm#ref_553_14">Dynamic_Info</A></FONT> (<FONT COLOR=red><A NAME="ref_497_28" HREF="terminal_interface-curses-forms__adb.htm#ref_553_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_498_28" HREF="terminal_interface-curses-forms__adb.htm#ref_554_28">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_499_28" HREF="terminal_interface-curses-forms__adb.htm#ref_555_28">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_500_28" HREF="terminal_interface-curses-forms__adb.htm#ref_556_28">Max</A></FONT> : <b>out</b> Natural);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field_info.3x.html">dynamic_field_info()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_497_14">Dynamic_Info</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_win.3x.html">form_win.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_27"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_509_14" HREF="terminal_interface-curses-forms__adb.htm#ref_582_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_509_26" HREF="terminal_interface-curses-forms__adb.htm#ref_582_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_510_26" HREF="terminal_interface-curses-forms__adb.htm#ref_583_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">set_form_win()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_509_14">Set_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_28"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_515_13" HREF="terminal_interface-curses-forms__adb.htm#ref_598_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_515_25" HREF="terminal_interface-curses-forms__adb.htm#ref_598_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">form_win()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_515_13">Get_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_29"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_520_14" HREF="terminal_interface-curses-forms__adb.htm#ref_610_14">Set_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_520_30" HREF="terminal_interface-curses-forms__adb.htm#ref_610_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_521_30" HREF="terminal_interface-curses-forms__adb.htm#ref_611_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">set_form_sub()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_520_14">Set_Sub_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_30"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_526_13" HREF="terminal_interface-curses-forms__adb.htm#ref_626_13">Get_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_526_29" HREF="terminal_interface-curses-forms__adb.htm#ref_626_29">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">form_sub()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_526_13">Get_Sub_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_31"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_531_14" HREF="terminal_interface-curses-forms__adb.htm#ref_638_14">Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_531_21" HREF="terminal_interface-curses-forms__adb.htm#ref_638_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_532_21" HREF="terminal_interface-curses-forms__adb.htm#ref_639_21">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_533_21" HREF="terminal_interface-curses-forms__adb.htm#ref_640_21">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_win.3x.html">scale_form()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_531_14">Scale</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_hook.3x.html">form_hook.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_541_9">Form_Hook_Function</A></FONT> <b>is</b> <b>access</b> <b>procedure</b> (<FONT COLOR=red><A NAME="ref_541_49">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>);
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_32"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_545_14" HREF="terminal_interface-curses-forms__adb.htm#ref_662_14">Set_Field_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_545_35" HREF="terminal_interface-curses-forms__adb.htm#ref_662_35">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_546_35" HREF="terminal_interface-curses-forms__adb.htm#ref_663_35">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_field_init()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_545_14">Set_Field_Init_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_33"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_551_14" HREF="terminal_interface-curses-forms__adb.htm#ref_678_14">Set_Field_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_551_35" HREF="terminal_interface-curses-forms__adb.htm#ref_678_35">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_552_35" HREF="terminal_interface-curses-forms__adb.htm#ref_679_35">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_field_term()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_551_14">Set_Field_Term_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_34"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_557_14" HREF="terminal_interface-curses-forms__adb.htm#ref_694_14">Set_Form_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_557_34" HREF="terminal_interface-curses-forms__adb.htm#ref_694_34">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_558_34" HREF="terminal_interface-curses-forms__adb.htm#ref_695_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_form_init()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_557_14">Set_Form_Init_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_35"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_563_14" HREF="terminal_interface-curses-forms__adb.htm#ref_710_14">Set_Form_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_563_34" HREF="terminal_interface-curses-forms__adb.htm#ref_710_34">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_564_34" HREF="terminal_interface-curses-forms__adb.htm#ref_711_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_form_term()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_563_14">Set_Form_Term_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_36"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_569_13">Get_Field_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_569_34" HREF="terminal_interface-curses-forms__ads.htm#ref_569_13">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">field_init()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_23"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_467_14" HREF="terminal_interface-curses-forms__adb.htm#ref_429_14">Set_Pad_Character</A></span> (<span class="symbol"><A NAME="ref_467_33" HREF="terminal_interface-curses-forms__adb.htm#ref_429_33">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_468_33" HREF="terminal_interface-curses-forms__adb.htm#ref_430_33">Pad</A></span> : Character := Space);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">set_field_pad()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_467_14">Set_Pad_Character</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_24"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_473_14" HREF="terminal_interface-curses-forms__adb.htm#ref_443_14">Pad_Character</A></span> (<span class="symbol"><A NAME="ref_473_29" HREF="terminal_interface-curses-forms__adb.htm#ref_443_29">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_474_29" HREF="terminal_interface-curses-forms__adb.htm#ref_444_29">Pad</A></span> : <b>out</b> Character);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_attributes.3x.html">field_pad()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_473_14">Pad_Character</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field_info.3x.html">form_field_info.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_25"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_483_14" HREF="terminal_interface-curses-forms__adb.htm#ref_458_14">Info</A></span> (<span class="symbol"><A NAME="ref_483_20" HREF="terminal_interface-curses-forms__adb.htm#ref_458_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_484_20" HREF="terminal_interface-curses-forms__adb.htm#ref_459_20">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_485_20" HREF="terminal_interface-curses-forms__adb.htm#ref_460_20">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_486_20" HREF="terminal_interface-curses-forms__adb.htm#ref_461_20">First_Row</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_487_20" HREF="terminal_interface-curses-forms__adb.htm#ref_462_20">First_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_488_20" HREF="terminal_interface-curses-forms__adb.htm#ref_463_20">Off_Screen</A></span> : <b>out</b> Natural;
-+ <span class="symbol"><A NAME="ref_489_20" HREF="terminal_interface-curses-forms__adb.htm#ref_464_20">Additional_Buffers</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_130_9">Buffer_Number</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_info.3x.html">field_info()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_483_14">Info</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_26"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_494_14" HREF="terminal_interface-curses-forms__adb.htm#ref_488_14">Dynamic_Info</A></span> (<span class="symbol"><A NAME="ref_494_28" HREF="terminal_interface-curses-forms__adb.htm#ref_488_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_495_28" HREF="terminal_interface-curses-forms__adb.htm#ref_489_28">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_496_28" HREF="terminal_interface-curses-forms__adb.htm#ref_490_28">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_497_28" HREF="terminal_interface-curses-forms__adb.htm#ref_491_28">Max</A></span> : <b>out</b> Natural);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field_info.3x.html">dynamic_field_info()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_494_14">Dynamic_Info</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_win.3x.html">form_win.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_27"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_506_14" HREF="terminal_interface-curses-forms__adb.htm#ref_513_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_506_26" HREF="terminal_interface-curses-forms__adb.htm#ref_513_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_507_26" HREF="terminal_interface-curses-forms__adb.htm#ref_514_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">set_form_win()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_506_14">Set_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_28"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_512_13" HREF="terminal_interface-curses-forms__adb.htm#ref_526_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_512_25" HREF="terminal_interface-curses-forms__adb.htm#ref_526_25">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">form_win()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_512_13">Get_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_29"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_517_14" HREF="terminal_interface-curses-forms__adb.htm#ref_538_14">Set_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_517_30" HREF="terminal_interface-curses-forms__adb.htm#ref_538_30">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_518_30" HREF="terminal_interface-curses-forms__adb.htm#ref_539_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">set_form_sub()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_517_14">Set_Sub_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_30"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_523_13" HREF="terminal_interface-curses-forms__adb.htm#ref_551_13">Get_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_523_29" HREF="terminal_interface-curses-forms__adb.htm#ref_551_29">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">form_sub()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_523_13">Get_Sub_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_31"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_528_14" HREF="terminal_interface-curses-forms__adb.htm#ref_563_14">Scale</A></span> (<span class="symbol"><A NAME="ref_528_21" HREF="terminal_interface-curses-forms__adb.htm#ref_563_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_529_21" HREF="terminal_interface-curses-forms__adb.htm#ref_564_21">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_530_21" HREF="terminal_interface-curses-forms__adb.htm#ref_565_21">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_win.3x.html">scale_form()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_528_14">Scale</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_hook.3x.html">form_hook.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_538_9">Form_Hook_Function</A></span> <b>is</b> <b>access</b> <b>procedure</b> (<span class="symbol"><A NAME="ref_538_49">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>);
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_32"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_542_14" HREF="terminal_interface-curses-forms__adb.htm#ref_584_14">Set_Field_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_542_35" HREF="terminal_interface-curses-forms__adb.htm#ref_584_35">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_543_35" HREF="terminal_interface-curses-forms__adb.htm#ref_585_35">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_field_init()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_542_14">Set_Field_Init_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_33"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_548_14" HREF="terminal_interface-curses-forms__adb.htm#ref_597_14">Set_Field_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_548_35" HREF="terminal_interface-curses-forms__adb.htm#ref_597_35">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_549_35" HREF="terminal_interface-curses-forms__adb.htm#ref_598_35">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_field_term()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_548_14">Set_Field_Term_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_34"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_554_14" HREF="terminal_interface-curses-forms__adb.htm#ref_610_14">Set_Form_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_554_34" HREF="terminal_interface-curses-forms__adb.htm#ref_610_34">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_555_34" HREF="terminal_interface-curses-forms__adb.htm#ref_611_34">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_form_init()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_554_14">Set_Form_Init_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_35"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_560_14" HREF="terminal_interface-curses-forms__adb.htm#ref_623_14">Set_Form_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_560_34" HREF="terminal_interface-curses-forms__adb.htm#ref_623_34">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_561_34" HREF="terminal_interface-curses-forms__adb.htm#ref_624_34">Proc</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">set_form_term()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_560_14">Set_Form_Term_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_36"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_566_13">Get_Field_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_566_34" HREF="terminal_interface-curses-forms__ads.htm#ref_566_13">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">field_init()</A></EM></span>
- <b>pragma</b> Import (C, Get_Field_Init_Hook, "field_init");
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_37"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_574_13">Get_Field_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_574_34" HREF="terminal_interface-curses-forms__ads.htm#ref_574_13">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">field_term()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_37"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_571_13">Get_Field_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_571_34" HREF="terminal_interface-curses-forms__ads.htm#ref_571_13">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">field_term()</A></EM></span>
- <b>pragma</b> Import (C, Get_Field_Term_Hook, "field_term");
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_38"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_579_13">Get_Form_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_579_33" HREF="terminal_interface-curses-forms__ads.htm#ref_579_13">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">form_init()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_38"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_576_13">Get_Form_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_576_33" HREF="terminal_interface-curses-forms__ads.htm#ref_576_13">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">form_init()</A></EM></span>
- <b>pragma</b> Import (C, Get_Form_Init_Hook, "form_init");
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_39"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_584_13">Get_Form_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_584_33" HREF="terminal_interface-curses-forms__ads.htm#ref_584_13">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_541_9">Form_Hook_Function</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_hook.3x.html">form_term()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_39"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_581_13">Get_Form_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_581_33" HREF="terminal_interface-curses-forms__ads.htm#ref_581_13">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_538_9">Form_Hook_Function</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_hook.3x.html">form_term()</A></EM></span>
- <b>pragma</b> Import (C, Get_Form_Term_Hook, "form_term");
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_field.3x.html">form_field.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_40"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_593_14" HREF="terminal_interface-curses-forms__adb.htm#ref_730_14">Redefine</A></FONT> (<FONT COLOR=red><A NAME="ref_593_24" HREF="terminal_interface-curses-forms__adb.htm#ref_730_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_594_24" HREF="terminal_interface-curses-forms__adb.htm#ref_731_24">Flds</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_593_14">Redefine</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_41"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_599_14">Set_Fields</A></FONT> (<FONT COLOR=red><A NAME="ref_599_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_600_26">Flds</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>) <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_593_14">Redefine</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- pragma Inline (Set_Fields);</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_42"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_605_13" HREF="terminal_interface-curses-forms__adb.htm#ref_752_13">Fields</A></FONT> (<FONT COLOR=red><A NAME="ref_605_21" HREF="terminal_interface-curses-forms__adb.htm#ref_752_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_606_21" HREF="terminal_interface-curses-forms__adb.htm#ref_753_21">Index</A></FONT> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">form_fields()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_605_13">Fields</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_43"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_611_13" HREF="terminal_interface-curses-forms__adb.htm#ref_772_13">Field_Count</A></FONT> (<FONT COLOR=red><A NAME="ref_611_26" HREF="terminal_interface-curses-forms__adb.htm#ref_772_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Natural;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">field_count()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_611_13">Field_Count</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_44"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_616_14" HREF="terminal_interface-curses-forms__adb.htm#ref_782_14">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_616_20" HREF="terminal_interface-curses-forms__adb.htm#ref_782_20">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_617_20" HREF="terminal_interface-curses-forms__adb.htm#ref_783_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_618_20" HREF="terminal_interface-curses-forms__adb.htm#ref_784_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_field.3x.html">move_field()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_616_14">Move</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_new.3x.html">form_new.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_45"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_627_13" HREF="terminal_interface-curses-forms__adb.htm#ref_802_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_627_21" HREF="terminal_interface-curses-forms__adb.htm#ref_802_21">Fields</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new.3x.html">new_form()</A></EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_field.3x.html">form_field.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_40"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_590_14" HREF="terminal_interface-curses-forms__adb.htm#ref_640_14">Redefine</A></span> (<span class="symbol"><A NAME="ref_590_24" HREF="terminal_interface-curses-forms__adb.htm#ref_640_24">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_591_24" HREF="terminal_interface-curses-forms__adb.htm#ref_641_24">Flds</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_135_9">Field_Array_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_590_14">Redefine</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_41"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_596_14">Set_Fields</A></span> (<span class="symbol"><A NAME="ref_596_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_597_26">Flds</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_135_9">Field_Array_Access</A>) <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_590_14">Redefine</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">set_form_fields()</A></EM></span>
-+ <span class="comment"><EM>-- pragma Inline (Set_Fields);</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_42"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_602_13" HREF="terminal_interface-curses-forms__adb.htm#ref_658_13">Fields</A></span> (<span class="symbol"><A NAME="ref_602_21" HREF="terminal_interface-curses-forms__adb.htm#ref_658_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_603_21" HREF="terminal_interface-curses-forms__adb.htm#ref_659_21">Index</A></span> : Positive) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">form_fields()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_602_13">Fields</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_43"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_608_13" HREF="terminal_interface-curses-forms__adb.htm#ref_678_13">Field_Count</A></span> (<span class="symbol"><A NAME="ref_608_26" HREF="terminal_interface-curses-forms__adb.htm#ref_678_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> Natural;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">field_count()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_608_13">Field_Count</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_44"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_613_14" HREF="terminal_interface-curses-forms__adb.htm#ref_688_14">Move</A></span> (<span class="symbol"><A NAME="ref_613_20" HREF="terminal_interface-curses-forms__adb.htm#ref_688_20">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_614_20" HREF="terminal_interface-curses-forms__adb.htm#ref_689_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_615_20" HREF="terminal_interface-curses-forms__adb.htm#ref_690_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_field.3x.html">move_field()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_613_14">Move</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_new.3x.html">form_new.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_45"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_624_13" HREF="terminal_interface-curses-forms__adb.htm#ref_705_13">Create</A></span> (<span class="symbol"><A NAME="ref_624_21" HREF="terminal_interface-curses-forms__adb.htm#ref_705_21">Fields</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_135_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new.3x.html">new_form()</A></EM></span>
- <b>pragma</b> Inline (Create);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_46"#2|</EM></FONT>
-- <b>function</b> New_Form (<FONT COLOR=red><A NAME="ref_632_23">Fields</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_138_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>
-- <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_627_13">Create</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new.3x.html">new_form()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- pragma Inline (New_Form);</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_47"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_638_14" HREF="terminal_interface-curses-forms__adb.htm#ref_823_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_638_22" HREF="terminal_interface-curses-forms__adb.htm#ref_823_22">Frm</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new.3x.html">free_form()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Reset Frm to Null_Form</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_46"#2|</EM></span>
-+ <b>function</b> New_Form (<span class="symbol"><A NAME="ref_629_23">Fields</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_135_9">Field_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>
-+ <b>renames</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_624_13">Create</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new.3x.html">new_form()</A></EM></span>
-+ <span class="comment"><EM>-- pragma Inline (New_Form);</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_47"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_635_14" HREF="terminal_interface-curses-forms__adb.htm#ref_726_14">Delete</A></span> (<span class="symbol"><A NAME="ref_635_22" HREF="terminal_interface-curses-forms__adb.htm#ref_726_22">Frm</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new.3x.html">free_form()</A></EM></span>
-+ <span class="comment"><EM>-- Reset Frm to Null_Form</EM></span>
- <b>pragma</b> Inline (Delete);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_opts.3x.html">form_opts.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_48"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_648_14" HREF="terminal_interface-curses-forms__adb.htm#ref_842_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_648_27" HREF="terminal_interface-curses-forms__adb.htm#ref_842_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_649_27" HREF="terminal_interface-curses-forms__adb.htm#ref_843_27">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_opts.3x.html">set_form_opts()</A></EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_opts.3x.html">form_opts.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_48"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_645_14" HREF="terminal_interface-curses-forms__adb.htm#ref_742_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_645_27" HREF="terminal_interface-curses-forms__adb.htm#ref_742_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_646_27" HREF="terminal_interface-curses-forms__adb.htm#ref_743_27">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_opts.3x.html">set_form_opts()</A></EM></span>
- <b>pragma</b> Inline (Set_Options);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_49"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_654_14" HREF="terminal_interface-curses-forms__adb.htm#ref_860_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_654_30" HREF="terminal_interface-curses-forms__adb.htm#ref_860_30">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_655_30" HREF="terminal_interface-curses-forms__adb.htm#ref_861_30">Options</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>;
-- <FONT COLOR=red><A NAME="ref_656_30" HREF="terminal_interface-curses-forms__adb.htm#ref_862_30">On</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts_on()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: form_opts_off()</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_49"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_651_14" HREF="terminal_interface-curses-forms__adb.htm#ref_755_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_651_30" HREF="terminal_interface-curses-forms__adb.htm#ref_755_30">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_652_30" HREF="terminal_interface-curses-forms__adb.htm#ref_756_30">Options</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_653_30" HREF="terminal_interface-curses-forms__adb.htm#ref_757_30">On</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts_on()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: form_opts_off()</EM></span>
- <b>pragma</b> Inline (Switch_Options);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_50"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_662_14" HREF="terminal_interface-curses-forms__adb.htm#ref_886_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_662_27" HREF="terminal_interface-curses-forms__adb.htm#ref_886_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_663_27" HREF="terminal_interface-curses-forms__adb.htm#ref_887_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_51"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_667_13" HREF="terminal_interface-curses-forms__adb.htm#ref_899_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_667_26" HREF="terminal_interface-curses-forms__adb.htm#ref_899_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_109_9">Form_Option_Set</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_50"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_659_14" HREF="terminal_interface-curses-forms__adb.htm#ref_776_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_659_27" HREF="terminal_interface-curses-forms__adb.htm#ref_776_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_660_27" HREF="terminal_interface-curses-forms__adb.htm#ref_777_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_51"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_664_13" HREF="terminal_interface-curses-forms__adb.htm#ref_788_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_664_26" HREF="terminal_interface-curses-forms__adb.htm#ref_788_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_55_4">Null_Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_108_9">Form_Option_Set</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_opts.3x.html">form_opts()</A></EM></span>
- <b>pragma</b> Inline (Get_Options);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_post.3x.html">form_post.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_52"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_676_14" HREF="terminal_interface-curses-forms__adb.htm#ref_913_14">Post</A></FONT> (<FONT COLOR=red><A NAME="ref_676_20" HREF="terminal_interface-curses-forms__adb.htm#ref_913_20">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_677_20" HREF="terminal_interface-curses-forms__adb.htm#ref_914_20">Post</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_post.3x.html">post_form()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: unpost_form()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_676_14">Post</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_cursor.3x.html">form_cursor.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_53"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_687_14" HREF="terminal_interface-curses-forms__adb.htm#ref_939_14">Position_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_687_31" HREF="terminal_interface-curses-forms__adb.htm#ref_939_31">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_cursor.3x.html">pos_form_cursor()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_687_14">Position_Cursor</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_data.3x.html">form_data.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_54"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_696_13" HREF="terminal_interface-curses-forms__adb.htm#ref_957_13">Data_Ahead</A></FONT> (<FONT COLOR=red><A NAME="ref_696_25" HREF="terminal_interface-curses-forms__adb.htm#ref_957_25">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_data.3x.html">data_ahead()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_696_13">Data_Ahead</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_55"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_701_13" HREF="terminal_interface-curses-forms__adb.htm#ref_973_13">Data_Behind</A></FONT> (<FONT COLOR=red><A NAME="ref_701_26" HREF="terminal_interface-curses-forms__adb.htm#ref_973_26">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_data.3x.html">data_behind()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_701_13">Data_Behind</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_driver.3x.html">form_driver.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_709_9">Driver_Result</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_709_27">Form_Ok</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_710_27">Request_Denied</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_711_27">Unknown_Request</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_712_27">Invalid_Field</A></FONT>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_56"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_715_13" HREF="terminal_interface-curses-forms__adb.htm#ref_993_13">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_715_21" HREF="terminal_interface-curses-forms__adb.htm#ref_993_21">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_716_21" HREF="terminal_interface-curses-forms__adb.htm#ref_994_21">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_709_9">Driver_Result</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_driver.3x.html">form_driver()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Driver not inlined</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_page.3x.html">form_page.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_724_9">Page_Number</A></FONT> <b>is</b> <b>new</b> Natural;
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_57"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_727_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1023_14">Set_Current</A></FONT> (<FONT COLOR=red><A NAME="ref_727_27" HREF="terminal_interface-curses-forms__adb.htm#ref_1023_27">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_728_27" HREF="terminal_interface-curses-forms__adb.htm#ref_1024_27">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">set_current_field()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_727_14">Set_Current</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_58"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_733_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1038_13">Current</A></FONT> (<FONT COLOR=red><A NAME="ref_733_22" HREF="terminal_interface-curses-forms__adb.htm#ref_1038_22">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">current_field()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_733_13">Current</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_59"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_738_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1053_14">Set_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_738_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1053_24">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>;
-- <FONT COLOR=red><A NAME="ref_739_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1054_24">Page</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">set_form_page()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_738_14">Set_Page</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_60"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_744_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1068_13">Page</A></FONT> (<FONT COLOR=red><A NAME="ref_744_19" HREF="terminal_interface-curses-forms__adb.htm#ref_1068_19">Frm</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_724_9">Page_Number</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">form_page()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_744_13">Page</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_61"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_749_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1082_13">Get_Index</A></FONT> (<FONT COLOR=red><A NAME="ref_749_24" HREF="terminal_interface-curses-forms__adb.htm#ref_1082_24">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Positive;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_page.3x.html">field_index()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Please note that in this binding we start the numbering of fields</EM></FONT>
-- <FONT COLOR=green><EM>-- with 1. So this is number is one more than you get from the low</EM></FONT>
-- <FONT COLOR=green><EM>-- level call.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_749_13">Get_Index</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_new_page.3x.html">form_new_page.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_62"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_761_14" HREF="terminal_interface-curses-forms__adb.htm#ref_1102_14">Set_New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_761_28" HREF="terminal_interface-curses-forms__adb.htm#ref_1102_28">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>;
-- <FONT COLOR=red><A NAME="ref_762_28" HREF="terminal_interface-curses-forms__adb.htm#ref_1103_28">New_Page</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new_page.3x.html">set_new_page()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_761_14">Set_New_Page</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_63"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_767_13" HREF="terminal_interface-curses-forms__adb.htm#ref_1117_13">Is_New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_767_26" HREF="terminal_interface-curses-forms__adb.htm#ref_1117_26">Fld</A></FONT> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/form_new_page.3x.html">new_page()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_767_13">Is_New_Page</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/form_requestname.3x.html">form_requestname.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not Implemented: form_request_name, form_request_by_name</EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_post.3x.html">form_post.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_52"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_673_14" HREF="terminal_interface-curses-forms__adb.htm#ref_802_14">Post</A></span> (<span class="symbol"><A NAME="ref_673_20" HREF="terminal_interface-curses-forms__adb.htm#ref_802_20">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_674_20" HREF="terminal_interface-curses-forms__adb.htm#ref_803_20">Post</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_post.3x.html">post_form()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: unpost_form()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_673_14">Post</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_cursor.3x.html">form_cursor.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_53"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_684_14" HREF="terminal_interface-curses-forms__adb.htm#ref_824_14">Position_Cursor</A></span> (<span class="symbol"><A NAME="ref_684_31" HREF="terminal_interface-curses-forms__adb.htm#ref_824_31">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_cursor.3x.html">pos_form_cursor()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_684_14">Position_Cursor</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_data.3x.html">form_data.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_54"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_693_13" HREF="terminal_interface-curses-forms__adb.htm#ref_839_13">Data_Ahead</A></span> (<span class="symbol"><A NAME="ref_693_25" HREF="terminal_interface-curses-forms__adb.htm#ref_839_25">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_data.3x.html">data_ahead()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_693_13">Data_Ahead</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_55"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_698_13" HREF="terminal_interface-curses-forms__adb.htm#ref_855_13">Data_Behind</A></span> (<span class="symbol"><A NAME="ref_698_26" HREF="terminal_interface-curses-forms__adb.htm#ref_855_26">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_data.3x.html">data_behind()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_698_13">Data_Behind</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_driver.3x.html">form_driver.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_706_9">Driver_Result</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_706_27">Form_Ok</A></span>,
-+ <span class="symbol"><A NAME="ref_707_27">Request_Denied</A></span>,
-+ <span class="symbol"><A NAME="ref_708_27">Unknown_Request</A></span>,
-+ <span class="symbol"><A NAME="ref_709_27">Invalid_Field</A></span>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_56"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_712_13" HREF="terminal_interface-curses-forms__adb.htm#ref_875_13">Driver</A></span> (<span class="symbol"><A NAME="ref_712_21" HREF="terminal_interface-curses-forms__adb.htm#ref_875_21">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_713_21" HREF="terminal_interface-curses-forms__adb.htm#ref_876_21">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_706_9">Driver_Result</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_driver.3x.html">form_driver()</A></EM></span>
-+ <span class="comment"><EM>-- Driver not inlined</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_page.3x.html">form_page.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_721_9">Page_Number</A></span> <b>is</b> <b>new</b> Natural;
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_57"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_724_14" HREF="terminal_interface-curses-forms__adb.htm#ref_902_14">Set_Current</A></span> (<span class="symbol"><A NAME="ref_724_27" HREF="terminal_interface-curses-forms__adb.htm#ref_902_27">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_725_27" HREF="terminal_interface-curses-forms__adb.htm#ref_903_27">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">set_current_field()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_724_14">Set_Current</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_58"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_730_13" HREF="terminal_interface-curses-forms__adb.htm#ref_914_13">Current</A></span> (<span class="symbol"><A NAME="ref_730_22" HREF="terminal_interface-curses-forms__adb.htm#ref_914_22">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">current_field()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_730_13">Current</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_59"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_735_14" HREF="terminal_interface-curses-forms__adb.htm#ref_929_14">Set_Page</A></span> (<span class="symbol"><A NAME="ref_735_24" HREF="terminal_interface-curses-forms__adb.htm#ref_929_24">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>;
-+ <span class="symbol"><A NAME="ref_736_24" HREF="terminal_interface-curses-forms__adb.htm#ref_930_24">Page</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_721_9">Page_Number</A> := <A HREF="terminal_interface-curses-forms__ads.htm#ref_721_9">Page_Number</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">set_form_page()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_735_14">Set_Page</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_60"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_741_13" HREF="terminal_interface-curses-forms__adb.htm#ref_941_13">Page</A></span> (<span class="symbol"><A NAME="ref_741_19" HREF="terminal_interface-curses-forms__adb.htm#ref_941_19">Frm</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A>) <b>return</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_721_9">Page_Number</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">form_page()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_741_13">Page</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_61"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_746_13" HREF="terminal_interface-curses-forms__adb.htm#ref_955_13">Get_Index</A></span> (<span class="symbol"><A NAME="ref_746_24" HREF="terminal_interface-curses-forms__adb.htm#ref_955_24">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> Positive;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_page.3x.html">field_index()</A></EM></span>
-+ <span class="comment"><EM>-- Please note that in this binding we start the numbering of fields</EM></span>
-+ <span class="comment"><EM>-- with 1. So this is number is one more than you get from the low</EM></span>
-+ <span class="comment"><EM>-- level call.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_746_13">Get_Index</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_new_page.3x.html">form_new_page.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_62"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_758_14" HREF="terminal_interface-curses-forms__adb.htm#ref_975_14">Set_New_Page</A></span> (<span class="symbol"><A NAME="ref_758_28" HREF="terminal_interface-curses-forms__adb.htm#ref_975_28">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>;
-+ <span class="symbol"><A NAME="ref_759_28" HREF="terminal_interface-curses-forms__adb.htm#ref_976_28">New_Page</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new_page.3x.html">set_new_page()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_758_14">Set_New_Page</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_63"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_764_13" HREF="terminal_interface-curses-forms__adb.htm#ref_987_13">Is_New_Page</A></span> (<span class="symbol"><A NAME="ref_764_26" HREF="terminal_interface-curses-forms__adb.htm#ref_987_26">Fld</A></span> : <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/form_new_page.3x.html">new_page()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-forms__ads.htm#ref_764_13">Is_New_Page</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/form_requestname.3x.html">form_requestname.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not Implemented: form_request_name, form_request_by_name</EM></span>
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>private</b>
-- <b>type</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-- <b>type</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-+ <b>type</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-+ <b>type</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_59_4">Null_Field</A> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_56_9">Field</A> := 0;
-- <A HREF="terminal_interface-curses-forms__ads.htm#ref_60_4">Null_Form</A> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_57_9">Form</A> := 0;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_54_4">Null_Field</A> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_51_9">Field</A> := 0;
-+ <A HREF="terminal_interface-curses-forms__ads.htm#ref_55_4">Null_Form</A> : <b>constant</b> <A HREF="terminal_interface-curses-forms__ads.htm#ref_52_9">Form</A> := 0;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_49_35">Forms</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-forms__ads.htm#ref_45_35">Forms</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm 2011-02-25 23:43:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-menus-item_user_data__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,83 +1,92 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-menus-item_user_data.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-menus-item_user_data.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus-item_user_data.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus-item_user_data.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus.Item_User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus.Item_User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.14 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<FONT COLOR=red><A NAME="ref_44_46" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<span class="symbol"><A NAME="ref_44_46" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A></span> <b>is</b>
-
-- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
-+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_48_14" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_48_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_29">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_49_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_59_29">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_48_14" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_48_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_29">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_49_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_59_29">Data</A></span> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_51_16">Set_Item_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_51_34" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_52_34" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Addr</A></FONT> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_51_16">Set_Item_Userptr</A></span> (<span class="symbol"><A NAME="ref_51_34" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_52_34" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Addr</A></span> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Item_Userptr, "set_item_userptr");
-
-- <FONT COLOR=red><A NAME="ref_55_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Set_Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_29">Itm</A>, <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_59_29">Data</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_55_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_55_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_51_16">Set_Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_29">Itm</A>, <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_59_29">Data</A>));
- <b>end</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_14">Set_User_Data</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_62_28" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_28">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_59_13" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_28" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_28">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_64_16">Item_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_64_30" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_64_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_61_16">Item_Userptr</A></span> (<span class="symbol"><A NAME="ref_61_30" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_61_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>;
- <b>pragma</b> Import (C, Item_Userptr, "item_userptr");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_64_16">Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_28">Itm</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_61_16">Item_Userptr</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_28">Itm</A>);
- <b>end</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_13">Get_User_Data</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_70_14" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_70_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_29">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_71_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_65_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_67_14" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_67_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_29">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_68_29" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_65_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_65_29">Data</A> := <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_69_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_29">Itm</A>);
- <b>end</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_64_14">Get_User_Data</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-menus-item_user_data__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,80 +1,92 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-menus-item_user_data.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-menus-item_user_data.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus-item_user_data.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus-item_user_data.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus.Item_User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.17 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:31:35 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus.Item_User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.17 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2009/12/26 17:31:35 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_45_9" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">User_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_44_9">User</A>;
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<FONT COLOR=red><A NAME="ref_46_41" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_44_46">Item_User_Data</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A>);
--
-- <FONT COLOR=green><EM>-- The binding uses the same user pointer for menu items</EM></FONT>
-- <FONT COLOR=green><EM>-- as the low level C implementation. So you can safely</EM></FONT>
-- <FONT COLOR=green><EM>-- read or write the user pointer also with the C routines</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_userptr.3x.html">mitem_userptr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_58_14" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_48_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_58_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_48_29">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_49_29">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">set_item_userptr</A></EM></FONT>
-+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">User</A></span> <b>is</b> <b>limited</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_45_9" HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">User_Access</A></span> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_44_9">User</A>;
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<span class="symbol"><A NAME="ref_46_41" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_44_46">Item_User_Data</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A>);
-+
-+ <span class="comment"><EM>-- The binding uses the same user pointer for menu items</EM></span>
-+ <span class="comment"><EM>-- as the low level C implementation. So you can safely</EM></span>
-+ <span class="comment"><EM>-- read or write the user pointer also with the C routines</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_userptr.3x.html">mitem_userptr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_58_14" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_48_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_58_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_48_29">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_49_29">Data</A></span> : <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">set_item_userptr</A></EM></span>
- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_58_14">Set_User_Data</A>);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_64_14" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_70_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_70_29">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_65_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_71_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">item_userptr</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_69_13" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_62_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_69_28" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_62_28">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">item_userptr</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_64_14" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_67_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_67_29">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_65_29" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_68_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">item_userptr</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_69_13" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_59_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_69_28" HREF="terminal_interface-curses-menus-item_user_data__adb.htm#ref_59_28">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_45_9">User_Access</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_userptr.3x.html">item_userptr</A></EM></span>
-+ <span class="comment"><EM>-- Same as function</EM></span>
- <b>pragma</b> Inline (Get_User_Data);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<A HREF="terminal_interface-curses-menus-item_user_data__ads.htm#ref_46_41">Item_User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm 2011-02-25 23:43:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-menus-menu_user_data__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,82 +1,92 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-menus-menu_user_data.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-menus-menu_user_data.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus-menu_user_data.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus-menu_user_data.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus.Menu_User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.13 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus.Menu_User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.15 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<FONT COLOR=red><A NAME="ref_43_46" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<span class="symbol"><A NAME="ref_43_46" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A></span> <b>is</b>
-
-- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
-+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_47_14" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_47_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_48_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_54_29">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_47_14" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_47_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_48_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_54_29">Data</A></span> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_50_16">Set_Menu_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_50_34" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_51_34" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_50_16">Set_Menu_Userptr</A></span> (<span class="symbol"><A NAME="ref_50_34" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_51_34" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Data</A></span> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Userptr, "set_menu_userptr");
-
-- <FONT COLOR=red><A NAME="ref_54_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Set_Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_29">Men</A>, <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_54_29">Data</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_54_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_54_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_50_16">Set_Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_29">Men</A>, <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_54_29">Data</A>));
-+
- <b>end</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_14">Set_User_Data</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_61_13" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_61_28" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_28">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_59_13" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_28" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_28">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_63_16">Menu_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_63_30" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_63_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_61_16">Menu_Userptr</A></span> (<span class="symbol"><A NAME="ref_61_30" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_61_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>;
- <b>pragma</b> Import (C, Menu_Userptr, "menu_userptr");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_63_16">Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_28">Men</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_61_16">Menu_Userptr</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_28">Men</A>);
- <b>end</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_13">Get_User_Data</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_69_14" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_69_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_70_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_60_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_67_14" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_67_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_68_29" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_60_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_60_29">Data</A> := <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_29">Men</A>);
- <b>end</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_59_14">Get_User_Data</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-menus-menu_user_data__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,75 +1,87 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-menus-menu_user_data.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-menus-menu_user_data.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus-menu_user_data.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus-menu_user_data.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus.Menu_User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.15 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus.Menu_User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.15 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_43_9" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">User_Access</A></FONT> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_43_9">User</A>;
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<FONT COLOR=red><A NAME="ref_45_41" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_43_46">Menu_User_Data</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_userptr.3x.html">menu_userptr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_53_14" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_47_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_53_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_47_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_48_29">Data</A></FONT> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">set_menu_userptr</A></EM></FONT>
-+ <b>type</b> <span class="symbol"><A NAME="ref_43_9" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">User</A></span> <b>is</b> <b>limited</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">User_Access</A></span> <b>is</b> <b>access</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_43_9">User</A>;
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<span class="symbol"><A NAME="ref_45_41" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_43_46">Menu_User_Data</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_userptr.3x.html">menu_userptr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_53_14" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_47_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_53_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_47_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_48_29">Data</A></span> : <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">set_menu_userptr</A></EM></span>
- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_53_14">Set_User_Data</A>);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_69_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_69_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_60_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_70_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">menu_userptr</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_61_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_28" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_61_28">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">menu_userptr</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_67_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_67_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_60_29" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_68_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">menu_userptr</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_59_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_28" HREF="terminal_interface-curses-menus-menu_user_data__adb.htm#ref_59_28">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_44_9">User_Access</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_userptr.3x.html">menu_userptr</A></EM></span>
-+ <span class="comment"><EM>-- Same as function</EM></span>
- <b>pragma</b> Inline (Get_User_Data);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>.<A HREF="terminal_interface-curses-menus-menu_user_data__ads.htm#ref_45_41">Menu_User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-menus__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus__adb.htm 2011-03-26 21:54:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-menus__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,1028 +1,922 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-menus.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-menus.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menus --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.28 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:38:12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Menus --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.32 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Unchecked_Deallocation;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Pointers;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Pointers;
-
--<b>with</b> Ada.Unchecked_Conversion;
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_49_40" HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A></span> <b>is</b>
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_51_40" HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A></FONT> <b>is</b>
--
-- <b>type</b> C_Item_Array <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-+ <b>type</b> C_Item_Array <b>is</b> <b>array</b> (Natural <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
- <b>package</b> I_Array <b>is</b> <b>new</b>
-- <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>, C_Item_Array, <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>);
-+ <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Pointers (Natural, <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>, C_Item_Array, <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A>);
-
- <b>use</b> <b>type</b> System.Bit_Order;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_58_12">chars_ptr</A></FONT> <b>is</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.chars_ptr;
--
-- <b>function</b> MOS_2_CInt <b>is</b> <b>new</b>
-- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>);
--
-- <b>function</b> CInt_2_MOS <b>is</b> <b>new</b>
-- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>,
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>);
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_56_12">chars_ptr</A></span> <b>is</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.chars_ptr;
-
-- <b>function</b> IOS_2_CInt <b>is</b> <b>new</b>
-- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>);
--
-- <b>function</b> CInt_2_IOS <b>is</b> <b>new</b>
-- Ada.Unchecked_Conversion (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>,
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>);
--
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_77_14" HREF="terminal_interface-curses-menus__ads.htm#ref_106_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_77_28" HREF="terminal_interface-curses-menus__ads.htm#ref_106_28">Key</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>;
-- <FONT COLOR=red><A NAME="ref_78_28" HREF="terminal_interface-curses-menus__ads.htm#ref_107_28">Name</A></FONT> : <b>out</b> String)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-menus__ads.htm#ref_101_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_59_28" HREF="terminal_interface-curses-menus__ads.htm#ref_101_28">Key</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A>;
-+ <span class="symbol"><A NAME="ref_60_28" HREF="terminal_interface-curses-menus__ads.htm#ref_102_28">Name</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_80_16">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_80_30" HREF="terminal_interface-curses-menus__adb.htm#ref_80_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_62_16">Request_Name</A></span> (<span class="symbol"><A NAME="ref_62_30" HREF="terminal_interface-curses-menus__adb.htm#ref_62_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Request_Name, "menu_request_name");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_80_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_106_28">Key</A>)), <A HREF="terminal_interface-curses-menus__ads.htm#ref_107_28">Name</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_106_14">Request_Name</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_62_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_101_28">Key</A>)), <A HREF="terminal_interface-curses-menus__ads.htm#ref_102_28">Name</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_101_14">Request_Name</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_86_13" HREF="terminal_interface-curses-menus__ads.htm#ref_109_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_86_27" HREF="terminal_interface-curses-menus__ads.htm#ref_109_28">Key</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>) <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_68_13" HREF="terminal_interface-curses-menus__ads.htm#ref_104_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_68_27" HREF="terminal_interface-curses-menus__ads.htm#ref_104_28">Key</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A>) <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_88_16">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_88_30" HREF="terminal_interface-curses-menus__adb.htm#ref_88_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_70_16">Request_Name</A></span> (<span class="symbol"><A NAME="ref_70_30" HREF="terminal_interface-curses-menus__adb.htm#ref_70_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Request_Name, "menu_request_name");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_88_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_109_28">Key</A>)));
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_109_14">Request_Name</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_70_16">Request_Name</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_104_28">Key</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_104_14">Request_Name</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_94_13" HREF="terminal_interface-curses-menus__ads.htm#ref_195_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_94_21" HREF="terminal_interface-curses-menus__ads.htm#ref_195_21">Name</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_95_21" HREF="terminal_interface-curses-menus__ads.htm#ref_196_21">Description</A></FONT> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_76_13" HREF="terminal_interface-curses-menus__ads.htm#ref_189_13">Create</A></span> (<span class="symbol"><A NAME="ref_76_21" HREF="terminal_interface-curses-menus__ads.htm#ref_189_21">Name</A></span> : String;
-+ <span class="symbol"><A NAME="ref_77_21" HREF="terminal_interface-curses-menus__ads.htm#ref_190_21">Description</A></span> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>
- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_97_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_98_16">Newitem</A></FONT> (<FONT COLOR=red><A NAME="ref_98_25" HREF="terminal_interface-curses-menus__adb.htm#ref_98_16">Name</A></FONT>, <FONT COLOR=red><A NAME="ref_98_31" HREF="terminal_interface-curses-menus__adb.htm#ref_98_16">Desc</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_97_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_79_12">Char_Ptr</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char;
-+ <b>function</b> <span class="symbol"><A NAME="ref_80_16">Newitem</A></span> (<span class="symbol"><A NAME="ref_80_25" HREF="terminal_interface-curses-menus__adb.htm#ref_80_16">Name</A></span>, <span class="symbol"><A NAME="ref_80_31" HREF="terminal_interface-curses-menus__adb.htm#ref_80_16">Desc</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_79_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
- <b>pragma</b> Import (C, Newitem, "new_item");
-
-- <b>type</b> Name_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_195_21">Name</A>'Length);
-- <b>type</b> <FONT COLOR=red><A NAME="ref_102_12">Name_String_Ptr</A></FONT> <b>is</b> <b>access</b> Name_String;
-- <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#ref_102_12">Name_String_Ptr</A>);
--
-- <b>type</b> Desc_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_196_21">Description</A>'Length);
-- <b>type</b> <FONT COLOR=red><A NAME="ref_106_12">Desc_String_Ptr</A></FONT> <b>is</b> <b>access</b> Desc_String;
-- <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#ref_106_12">Desc_String_Ptr</A>);
--
-- <FONT COLOR=red><A NAME="ref_109_7">Name_Str</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_102_12">Name_String_Ptr</A> := <b>new</b> Name_String;
-- <FONT COLOR=red><A NAME="ref_110_7">Desc_Str</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_106_12">Desc_String_Ptr</A> := <b>new</b> Desc_String;
-- <FONT COLOR=red><A NAME="ref_111_7">Name_Len</A></FONT>, <FONT COLOR=red><A NAME="ref_111_17">Desc_Len</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_112_7">Result</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_195_21">Name</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_109_7">Name_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_111_7">Name_Len</A>);
-- To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_196_21">Description</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_110_7">Desc_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_111_17">Desc_Len</A>);
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_112_7">Result</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_98_16">Newitem</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_109_7">Name_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_109_7">Name_Str</A>.<b>all</b>'First)'<b>Access</b>,
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_110_7">Desc_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_110_7">Desc_Str</A>.<b>all</b>'First)'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_112_7">Result</A> = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_391_4">Eti_System_Error</A>;
-+ <b>type</b> Name_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_189_21">Name</A>'Length);
-+ <b>type</b> <span class="symbol"><A NAME="ref_84_12">Name_String_Ptr</A></span> <b>is</b> <b>access</b> Name_String;
-+ <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#ref_84_12">Name_String_Ptr</A>);
-+
-+ <b>type</b> Desc_String <b>is</b> <b>new</b> char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_190_21">Description</A>'Length);
-+ <b>type</b> <span class="symbol"><A NAME="ref_88_12">Desc_String_Ptr</A></span> <b>is</b> <b>access</b> Desc_String;
-+ <b>pragma</b> Controlled (<A HREF="terminal_interface-curses-menus__adb.htm#ref_88_12">Desc_String_Ptr</A>);
-+
-+ <span class="symbol"><A NAME="ref_91_7">Name_Str</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_84_12">Name_String_Ptr</A> := <b>new</b> Name_String;
-+ <span class="symbol"><A NAME="ref_92_7">Desc_Str</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_88_12">Desc_String_Ptr</A> := <b>new</b> Desc_String;
-+ <span class="symbol"><A NAME="ref_93_7">Name_Len</A></span>, <span class="symbol"><A NAME="ref_93_17">Desc_Len</A></span> : size_t;
-+ <span class="symbol"><A NAME="ref_94_7">Result</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <b>begin</b>
-+ To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_189_21">Name</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_91_7">Name_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_93_7">Name_Len</A>);
-+ To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_190_21">Description</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_92_7">Desc_Str</A>.<b>all</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_93_17">Desc_Len</A>);
-+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_94_7">Result</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_80_16">Newitem</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_91_7">Name_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_91_7">Name_Str</A>.<b>all</b>'First)'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_92_7">Desc_Str</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_92_7">Desc_Str</A>.<b>all</b>'First)'<b>Access</b>);
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_94_7">Result</A> = <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_527_4">Eti_System_Error</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_112_7">Result</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_195_13">Create</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_94_7">Result</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_189_13">Create</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_124_14" HREF="terminal_interface-curses-menus__ads.htm#ref_207_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_124_22" HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_106_14" HREF="terminal_interface-curses-menus__ads.htm#ref_201_14">Delete</A></span> (<span class="symbol"><A NAME="ref_106_22" HREF="terminal_interface-curses-menus__ads.htm#ref_201_22">Itm</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_126_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="ref_126_26" HREF="terminal_interface-curses-menus__adb.htm#ref_126_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_108_16">Descname</A></span> (<span class="symbol"><A NAME="ref_108_26" HREF="terminal_interface-curses-menus__adb.htm#ref_108_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Descname, "item_description");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_128_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="ref_128_26" HREF="terminal_interface-curses-menus__adb.htm#ref_128_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_110_16">Itemname</A></span> (<span class="symbol"><A NAME="ref_110_26" HREF="terminal_interface-curses-menus__adb.htm#ref_110_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Itemname, "item_name");
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_131_16">Freeitem</A></FONT> (<FONT COLOR=red><A NAME="ref_131_26" HREF="terminal_interface-curses-menus__adb.htm#ref_131_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_113_16">Freeitem</A></span> (<span class="symbol"><A NAME="ref_113_26" HREF="terminal_interface-curses-menus__adb.htm#ref_113_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Freeitem, "free_item");
-
-- <FONT COLOR=red><A NAME="ref_134_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <FONT COLOR=red><A NAME="ref_135_7">Ptr</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <span class="symbol"><A NAME="ref_116_7">Ptr</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_126_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> /= Null_Ptr <b>then</b>
-- <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_128_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A> /= Null_Ptr <b>then</b>
-- <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#ref_135_7">Ptr</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_134_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_131_16">Freeitem</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_134_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_134_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_207_22">Itm</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_207_14">Delete</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_152_14" HREF="terminal_interface-curses-menus__ads.htm#ref_216_14">Set_Value</A></FONT> (<FONT COLOR=red><A NAME="ref_152_25" HREF="terminal_interface-curses-menus__ads.htm#ref_216_25">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_153_25" HREF="terminal_interface-curses-menus__ads.htm#ref_217_25">Value</A></FONT> : Boolean := True)
-+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_116_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_108_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_201_22">Itm</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_116_7">Ptr</A> /= Null_Ptr <b>then</b>
-+ <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#ref_116_7">Ptr</A>);
-+ <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_116_7">Ptr</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_110_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_201_22">Itm</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_116_7">Ptr</A> /= Null_Ptr <b>then</b>
-+ <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings.Free (<A HREF="terminal_interface-curses-menus__adb.htm#ref_116_7">Ptr</A>);
-+ <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_113_16">Freeitem</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_201_22">Itm</A>));
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_201_22">Itm</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_201_14">Delete</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_130_14" HREF="terminal_interface-curses-menus__ads.htm#ref_210_14">Set_Value</A></span> (<span class="symbol"><A NAME="ref_130_25" HREF="terminal_interface-curses-menus__ads.htm#ref_210_25">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_131_25" HREF="terminal_interface-curses-menus__ads.htm#ref_211_25">Value</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_155_16">Set_Item_Val</A></FONT> (<FONT COLOR=red><A NAME="ref_155_30" HREF="terminal_interface-curses-menus__adb.htm#ref_155_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_156_30" HREF="terminal_interface-curses-menus__adb.htm#ref_155_16">Val</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_133_16">Set_Item_Val</A></span> (<span class="symbol"><A NAME="ref_133_30" HREF="terminal_interface-curses-menus__adb.htm#ref_133_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_134_30" HREF="terminal_interface-curses-menus__adb.htm#ref_133_16">Val</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Item_Val, "set_item_value");
-
-- <FONT COLOR=red><A NAME="ref_159_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_155_16">Set_Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_216_25">Itm</A>, Boolean'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#ref_217_25">Value</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_159_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_159_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_216_14">Set_Value</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_133_16">Set_Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_210_25">Itm</A>, Boolean'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#ref_211_25">Value</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_210_14">Set_Value</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_166_13" HREF="terminal_interface-curses-menus__ads.htm#ref_222_13">Value</A></FONT> (<FONT COLOR=red><A NAME="ref_166_20" HREF="terminal_interface-curses-menus__ads.htm#ref_222_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_141_13" HREF="terminal_interface-curses-menus__ads.htm#ref_216_13">Value</A></span> (<span class="symbol"><A NAME="ref_141_20" HREF="terminal_interface-curses-menus__ads.htm#ref_216_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_168_16">Item_Val</A></FONT> (<FONT COLOR=red><A NAME="ref_168_26" HREF="terminal_interface-curses-menus__adb.htm#ref_168_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_143_16">Item_Val</A></span> (<span class="symbol"><A NAME="ref_143_26" HREF="terminal_interface-curses-menus__adb.htm#ref_143_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Item_Val, "item_value");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_168_16">Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_222_20">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_143_16">Item_Val</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_216_20">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_68_4">Curses_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_222_13">Value</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_216_13">Value</A>;
-
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_179_13" HREF="terminal_interface-curses-menus__ads.htm#ref_231_13">Visible</A></FONT> (<FONT COLOR=red><A NAME="ref_179_22" HREF="terminal_interface-curses-menus__ads.htm#ref_231_22">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_154_13" HREF="terminal_interface-curses-menus__ads.htm#ref_225_13">Visible</A></span> (<span class="symbol"><A NAME="ref_154_22" HREF="terminal_interface-curses-menus__ads.htm#ref_225_22">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_181_16">Item_Vis</A></FONT> (<FONT COLOR=red><A NAME="ref_181_26" HREF="terminal_interface-curses-menus__adb.htm#ref_181_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_156_16">Item_Vis</A></span> (<span class="symbol"><A NAME="ref_156_26" HREF="terminal_interface-curses-menus__adb.htm#ref_156_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Item_Vis, "item_visible");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_181_16">Item_Vis</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_231_22">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_156_16">Item_Vis</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_225_22">Itm</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_68_4">Curses_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_231_13">Visible</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_191_14" HREF="terminal_interface-curses-menus__ads.htm#ref_240_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_191_27" HREF="terminal_interface-curses-menus__ads.htm#ref_240_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_192_27" HREF="terminal_interface-curses-menus__ads.htm#ref_241_27">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>)
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_225_13">Visible</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_166_14" HREF="terminal_interface-curses-menus__ads.htm#ref_234_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_166_27" HREF="terminal_interface-curses-menus__ads.htm#ref_234_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_167_27" HREF="terminal_interface-curses-menus__ads.htm#ref_235_27">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_194_16">Set_Item_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_194_31" HREF="terminal_interface-curses-menus__adb.htm#ref_194_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_195_31" HREF="terminal_interface-curses-menus__adb.htm#ref_194_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_169_16">Set_Item_Opts</A></span> (<span class="symbol"><A NAME="ref_169_31" HREF="terminal_interface-curses-menus__adb.htm#ref_169_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_170_31" HREF="terminal_interface-curses-menus__adb.htm#ref_169_16">Opt</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Item_Opts, "set_item_opts");
-
-- <FONT COLOR=red><A NAME="ref_198_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := IOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_241_27">Options</A>);
-- <FONT COLOR=red><A NAME="ref_199_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_199_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_194_16">Set_Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_240_27">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_198_7">Opt</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_199_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_199_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_240_14">Set_Options</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_169_16">Set_Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_234_27">Itm</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_235_27">Options</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_234_14">Set_Options</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_207_14" HREF="terminal_interface-curses-menus__ads.htm#ref_246_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_207_30" HREF="terminal_interface-curses-menus__ads.htm#ref_246_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_208_30" HREF="terminal_interface-curses-menus__ads.htm#ref_247_30">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>;
-- <FONT COLOR=red><A NAME="ref_209_30" HREF="terminal_interface-curses-menus__ads.htm#ref_248_30">On</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_177_14" HREF="terminal_interface-curses-menus__ads.htm#ref_240_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_177_30" HREF="terminal_interface-curses-menus__ads.htm#ref_240_30">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_178_30" HREF="terminal_interface-curses-menus__ads.htm#ref_241_30">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_179_30" HREF="terminal_interface-curses-menus__ads.htm#ref_242_30">On</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_211_16">Item_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="ref_211_30" HREF="terminal_interface-curses-menus__adb.htm#ref_211_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_212_30" HREF="terminal_interface-curses-menus__adb.htm#ref_211_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_181_16">Item_Opts_On</A></span> (<span class="symbol"><A NAME="ref_181_30" HREF="terminal_interface-curses-menus__adb.htm#ref_181_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_182_30" HREF="terminal_interface-curses-menus__adb.htm#ref_181_16">Opt</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Item_Opts_On, "item_opts_on");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_214_16">Item_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="ref_214_31" HREF="terminal_interface-curses-menus__adb.htm#ref_214_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_215_31" HREF="terminal_interface-curses-menus__adb.htm#ref_214_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_184_16">Item_Opts_Off</A></span> (<span class="symbol"><A NAME="ref_184_31" HREF="terminal_interface-curses-menus__adb.htm#ref_184_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_185_31" HREF="terminal_interface-curses-menus__adb.htm#ref_184_16">Opt</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Item_Opts_Off, "item_opts_off");
-
-- <FONT COLOR=red><A NAME="ref_218_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := IOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_247_30">Options</A>);
-- <FONT COLOR=red><A NAME="ref_219_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_248_30">On</A> <b>then</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_211_16">Item_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_246_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_218_7">Opt</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_242_30">On</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_181_16">Item_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_240_30">Itm</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_241_30">Options</A>));
- <b>else</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_214_16">Item_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_246_30">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_218_7">Opt</A>);
-- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_219_7">Err</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_184_16">Item_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_240_30">Itm</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_241_30">Options</A>));
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_246_14">Switch_Options</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_240_14">Switch_Options</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_231_14" HREF="terminal_interface-curses-menus__ads.htm#ref_255_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_231_27" HREF="terminal_interface-curses-menus__ads.htm#ref_255_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_232_27" HREF="terminal_interface-curses-menus__ads.htm#ref_256_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_196_14" HREF="terminal_interface-curses-menus__ads.htm#ref_249_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_196_27" HREF="terminal_interface-curses-menus__ads.htm#ref_249_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_197_27" HREF="terminal_interface-curses-menus__ads.htm#ref_250_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_234_16">Item_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_234_27" HREF="terminal_interface-curses-menus__adb.htm#ref_234_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_199_16">Item_Opts</A></span> (<span class="symbol"><A NAME="ref_199_27" HREF="terminal_interface-curses-menus__adb.htm#ref_199_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>;
- <b>pragma</b> Import (C, Item_Opts, "item_opts");
-
-- <FONT COLOR=red><A NAME="ref_237_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_234_16">Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_255_27">Itm</A>);
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_256_27">Options</A> := CInt_2_IOS (<A HREF="terminal_interface-curses-menus__adb.htm#ref_237_7">Res</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_255_14">Get_Options</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_250_27">Options</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_199_16">Item_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_249_27">Itm</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_249_14">Get_Options</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_242_13" HREF="terminal_interface-curses-menus__ads.htm#ref_260_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_242_26" HREF="terminal_interface-curses-menus__ads.htm#ref_260_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_206_13" HREF="terminal_interface-curses-menus__ads.htm#ref_254_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_206_26" HREF="terminal_interface-curses-menus__ads.htm#ref_254_26">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_244_7">Ios</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_208_7">Ios</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_255_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_260_26">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_244_7">Ios</A>);
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_244_7">Ios</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_260_13">Get_Options</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_250_14" HREF="terminal_interface-curses-menus__ads.htm#ref_269_14">Name</A></FONT> (<FONT COLOR=red><A NAME="ref_250_20" HREF="terminal_interface-curses-menus__ads.htm#ref_269_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_251_20" HREF="terminal_interface-curses-menus__ads.htm#ref_270_20">Name</A></FONT> : <b>out</b> String)
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_249_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_254_26">Itm</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_208_7">Ios</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_208_7">Ios</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_254_13">Get_Options</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_214_14" HREF="terminal_interface-curses-menus__ads.htm#ref_263_14">Name</A></span> (<span class="symbol"><A NAME="ref_214_20" HREF="terminal_interface-curses-menus__ads.htm#ref_263_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_215_20" HREF="terminal_interface-curses-menus__ads.htm#ref_264_20">Name</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_253_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="ref_253_26" HREF="terminal_interface-curses-menus__adb.htm#ref_253_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_217_16">Itemname</A></span> (<span class="symbol"><A NAME="ref_217_26" HREF="terminal_interface-curses-menus__adb.htm#ref_217_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Itemname, "item_name");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_253_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_269_20">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_270_20">Name</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_269_14">Name</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_217_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_263_20">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_264_20">Name</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_263_14">Name</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_259_13" HREF="terminal_interface-curses-menus__ads.htm#ref_272_14">Name</A></FONT> (<FONT COLOR=red><A NAME="ref_259_19" HREF="terminal_interface-curses-menus__ads.htm#ref_272_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_223_13" HREF="terminal_interface-curses-menus__ads.htm#ref_266_14">Name</A></span> (<span class="symbol"><A NAME="ref_223_19" HREF="terminal_interface-curses-menus__ads.htm#ref_266_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_261_16">Itemname</A></FONT> (<FONT COLOR=red><A NAME="ref_261_26" HREF="terminal_interface-curses-menus__adb.htm#ref_261_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_225_16">Itemname</A></span> (<span class="symbol"><A NAME="ref_225_26" HREF="terminal_interface-curses-menus__adb.htm#ref_225_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Itemname, "item_name");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_261_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_272_20">Itm</A>));
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_272_14">Name</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_225_16">Itemname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_266_20">Itm</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_266_14">Name</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_267_14" HREF="terminal_interface-curses-menus__ads.htm#ref_278_14">Description</A></FONT> (<FONT COLOR=red><A NAME="ref_267_27" HREF="terminal_interface-curses-menus__ads.htm#ref_278_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_268_27" HREF="terminal_interface-curses-menus__ads.htm#ref_279_27">Description</A></FONT> : <b>out</b> String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_231_14" HREF="terminal_interface-curses-menus__ads.htm#ref_272_14">Description</A></span> (<span class="symbol"><A NAME="ref_231_27" HREF="terminal_interface-curses-menus__ads.htm#ref_272_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_232_27" HREF="terminal_interface-curses-menus__ads.htm#ref_273_27">Description</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_270_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="ref_270_26" HREF="terminal_interface-curses-menus__adb.htm#ref_270_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_234_16">Descname</A></span> (<span class="symbol"><A NAME="ref_234_26" HREF="terminal_interface-curses-menus__adb.htm#ref_234_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Descname, "item_description");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_270_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_278_27">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_279_27">Description</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_278_14">Description</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_234_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_272_27">Itm</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_273_27">Description</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_272_14">Description</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_276_13" HREF="terminal_interface-curses-menus__ads.htm#ref_282_14">Description</A></FONT> (<FONT COLOR=red><A NAME="ref_276_26" HREF="terminal_interface-curses-menus__ads.htm#ref_282_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_240_13" HREF="terminal_interface-curses-menus__ads.htm#ref_276_14">Description</A></span> (<span class="symbol"><A NAME="ref_240_26" HREF="terminal_interface-curses-menus__ads.htm#ref_276_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_278_16">Descname</A></FONT> (<FONT COLOR=red><A NAME="ref_278_26" HREF="terminal_interface-curses-menus__adb.htm#ref_278_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_242_16">Descname</A></span> (<span class="symbol"><A NAME="ref_242_26" HREF="terminal_interface-curses-menus__adb.htm#ref_242_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Descname, "item_description");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_278_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_282_27">Itm</A>));
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_282_14">Description</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_284_14" HREF="terminal_interface-curses-menus__ads.htm#ref_292_14">Set_Current</A></FONT> (<FONT COLOR=red><A NAME="ref_284_27" HREF="terminal_interface-curses-menus__ads.htm#ref_292_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_285_27" HREF="terminal_interface-curses-menus__ads.htm#ref_293_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_242_16">Descname</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_276_27">Itm</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_276_14">Description</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_248_14" HREF="terminal_interface-curses-menus__ads.htm#ref_286_14">Set_Current</A></span> (<span class="symbol"><A NAME="ref_248_27" HREF="terminal_interface-curses-menus__ads.htm#ref_286_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_249_27" HREF="terminal_interface-curses-menus__ads.htm#ref_287_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_287_16">Set_Curr_Item</A></FONT> (<FONT COLOR=red><A NAME="ref_287_31" HREF="terminal_interface-curses-menus__adb.htm#ref_287_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_288_31" HREF="terminal_interface-curses-menus__adb.htm#ref_287_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_251_16">Set_Curr_Item</A></span> (<span class="symbol"><A NAME="ref_251_31" HREF="terminal_interface-curses-menus__adb.htm#ref_251_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_252_31" HREF="terminal_interface-curses-menus__adb.htm#ref_251_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Curr_Item, "set_current_item");
-
-- <FONT COLOR=red><A NAME="ref_291_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_287_16">Set_Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_292_27">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_293_27">Itm</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_291_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_291_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_292_14">Set_Current</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_251_16">Set_Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_286_27">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_287_27">Itm</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_286_14">Set_Current</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_298_13" HREF="terminal_interface-curses-menus__ads.htm#ref_298_13">Current</A></FONT> (<FONT COLOR=red><A NAME="ref_298_22" HREF="terminal_interface-curses-menus__ads.htm#ref_298_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_259_13" HREF="terminal_interface-curses-menus__ads.htm#ref_292_13">Current</A></span> (<span class="symbol"><A NAME="ref_259_22" HREF="terminal_interface-curses-menus__ads.htm#ref_292_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_300_16">Curr_Item</A></FONT> (<FONT COLOR=red><A NAME="ref_300_27" HREF="terminal_interface-curses-menus__adb.htm#ref_300_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_261_16">Curr_Item</A></span> (<span class="symbol"><A NAME="ref_261_27" HREF="terminal_interface-curses-menus__adb.htm#ref_261_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
- <b>pragma</b> Import (C, Curr_Item, "current_item");
-
-- <FONT COLOR=red><A NAME="ref_303_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_300_16">Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_298_22">Men</A>);
-+ <span class="symbol"><A NAME="ref_264_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_261_16">Curr_Item</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_292_22">Men</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_303_7">Res</A> = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_264_7">Res</A> = <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_111_4">Menu_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_303_7">Res</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_298_13">Current</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_264_7">Res</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_292_13">Current</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_311_14" HREF="terminal_interface-curses-menus__ads.htm#ref_303_14">Set_Top_Row</A></FONT> (<FONT COLOR=red><A NAME="ref_311_27" HREF="terminal_interface-curses-menus__ads.htm#ref_303_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_312_27" HREF="terminal_interface-curses-menus__ads.htm#ref_304_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_272_14" HREF="terminal_interface-curses-menus__ads.htm#ref_297_14">Set_Top_Row</A></span> (<span class="symbol"><A NAME="ref_272_27" HREF="terminal_interface-curses-menus__ads.htm#ref_297_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_273_27" HREF="terminal_interface-curses-menus__ads.htm#ref_298_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_314_16">Set_Toprow</A></FONT> (<FONT COLOR=red><A NAME="ref_314_28" HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_315_28" HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_275_16">Set_Toprow</A></span> (<span class="symbol"><A NAME="ref_275_28" HREF="terminal_interface-curses-menus__adb.htm#ref_275_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_276_28" HREF="terminal_interface-curses-menus__adb.htm#ref_275_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Toprow, "set_top_row");
-
-- <FONT COLOR=red><A NAME="ref_318_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Set_Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_303_27">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_304_27">Line</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_318_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_318_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_303_14">Set_Top_Row</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_275_16">Set_Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_297_27">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_298_27">Line</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_297_14">Set_Top_Row</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_325_13" HREF="terminal_interface-curses-menus__ads.htm#ref_309_13">Top_Row</A></FONT> (<FONT COLOR=red><A NAME="ref_325_22" HREF="terminal_interface-curses-menus__ads.htm#ref_309_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_283_13" HREF="terminal_interface-curses-menus__ads.htm#ref_303_13">Top_Row</A></span> (<span class="symbol"><A NAME="ref_283_22" HREF="terminal_interface-curses-menus__ads.htm#ref_303_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_327_16">Toprow</A></FONT> (<FONT COLOR=red><A NAME="ref_327_24" HREF="terminal_interface-curses-menus__adb.htm#ref_327_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_285_16">Toprow</A></span> (<span class="symbol"><A NAME="ref_285_24" HREF="terminal_interface-curses-menus__adb.htm#ref_285_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Toprow, "top_row");
-
-- <FONT COLOR=red><A NAME="ref_330_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_327_16">Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_309_22">Men</A>);
-+ <span class="symbol"><A NAME="ref_288_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_285_16">Toprow</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_303_22">Men</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_330_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_288_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_111_4">Menu_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_330_7">Res</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_309_13">Top_Row</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_288_7">Res</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_303_13">Top_Row</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_338_13" HREF="terminal_interface-curses-menus__ads.htm#ref_314_13">Get_Index</A></FONT> (<FONT COLOR=red><A NAME="ref_338_24" HREF="terminal_interface-curses-menus__ads.htm#ref_314_24">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Positive
-+ <b>function</b> <span class="symbol"><A NAME="ref_296_13" HREF="terminal_interface-curses-menus__ads.htm#ref_308_13">Get_Index</A></span> (<span class="symbol"><A NAME="ref_296_24" HREF="terminal_interface-curses-menus__ads.htm#ref_308_24">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> Positive
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_340_16">Get_Itemindex</A></FONT> (<FONT COLOR=red><A NAME="ref_340_31" HREF="terminal_interface-curses-menus__adb.htm#ref_340_16">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_298_16">Get_Itemindex</A></span> (<span class="symbol"><A NAME="ref_298_31" HREF="terminal_interface-curses-menus__adb.htm#ref_298_16">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Get_Itemindex, "item_index");
-
-- <FONT COLOR=red><A NAME="ref_343_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_340_16">Get_Itemindex</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_314_24">Itm</A>);
-+ <span class="symbol"><A NAME="ref_301_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_298_16">Get_Itemindex</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_308_24">Itm</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_343_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_301_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_111_4">Menu_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-menus__adb.htm#ref_343_7">Res</A>) + Positive'First);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_314_13">Get_Index</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_351_14" HREF="terminal_interface-curses-menus__ads.htm#ref_326_14">Post</A></FONT> (<FONT COLOR=red><A NAME="ref_351_20" HREF="terminal_interface-curses-menus__ads.htm#ref_326_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_352_20" HREF="terminal_interface-curses-menus__ads.htm#ref_327_20">Post</A></FONT> : Boolean := True)
-+ <b>return</b> Positive (Natural (<A HREF="terminal_interface-curses-menus__adb.htm#ref_301_7">Res</A>) + Positive'First);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_308_13">Get_Index</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_309_14" HREF="terminal_interface-curses-menus__ads.htm#ref_320_14">Post</A></span> (<span class="symbol"><A NAME="ref_309_20" HREF="terminal_interface-curses-menus__ads.htm#ref_320_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_310_20" HREF="terminal_interface-curses-menus__ads.htm#ref_321_20">Post</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_354_16">M_Post</A></FONT> (<FONT COLOR=red><A NAME="ref_354_24" HREF="terminal_interface-curses-menus__adb.htm#ref_354_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_312_16">M_Post</A></span> (<span class="symbol"><A NAME="ref_312_24" HREF="terminal_interface-curses-menus__adb.htm#ref_312_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, M_Post, "post_menu");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_356_16">M_Unpost</A></FONT> (<FONT COLOR=red><A NAME="ref_356_26" HREF="terminal_interface-curses-menus__adb.htm#ref_356_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_314_16">M_Unpost</A></span> (<span class="symbol"><A NAME="ref_314_26" HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, M_Unpost, "unpost_menu");
-
-- <FONT COLOR=red><A NAME="ref_359_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_327_20">Post</A> <b>then</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_354_16">M_Post</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_326_20">Men</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_321_20">Post</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_312_16">M_Post</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_320_20">Men</A>));
- <b>else</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_356_16">M_Unpost</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_326_20">Men</A>);
-- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_359_7">Res</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_314_16">M_Unpost</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_320_20">Men</A>));
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_326_14">Post</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_371_14" HREF="terminal_interface-curses-menus__ads.htm#ref_337_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_371_27" HREF="terminal_interface-curses-menus__ads.htm#ref_337_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_372_27" HREF="terminal_interface-curses-menus__ads.htm#ref_338_27">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>)
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_320_14">Post</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_325_14" HREF="terminal_interface-curses-menus__ads.htm#ref_331_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_325_27" HREF="terminal_interface-curses-menus__ads.htm#ref_331_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_326_27" HREF="terminal_interface-curses-menus__ads.htm#ref_332_27">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_374_16">Set_Menu_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_374_31" HREF="terminal_interface-curses-menus__adb.htm#ref_374_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_375_31" HREF="terminal_interface-curses-menus__adb.htm#ref_374_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_328_16">Set_Menu_Opts</A></span> (<span class="symbol"><A NAME="ref_328_31" HREF="terminal_interface-curses-menus__adb.htm#ref_328_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_329_31" HREF="terminal_interface-curses-menus__adb.htm#ref_328_16">Opt</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Opts, "set_menu_opts");
-
-- <FONT COLOR=red><A NAME="ref_378_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := MOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_338_27">Options</A>);
-- <FONT COLOR=red><A NAME="ref_379_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_379_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_374_16">Set_Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_337_27">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_378_7">Opt</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_379_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_379_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_337_14">Set_Options</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_328_16">Set_Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_331_27">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_332_27">Options</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_331_14">Set_Options</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_387_14" HREF="terminal_interface-curses-menus__ads.htm#ref_343_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_387_30" HREF="terminal_interface-curses-menus__ads.htm#ref_343_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_388_30" HREF="terminal_interface-curses-menus__ads.htm#ref_344_30">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>;
-- <FONT COLOR=red><A NAME="ref_389_30" HREF="terminal_interface-curses-menus__ads.htm#ref_345_30">On</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_336_14" HREF="terminal_interface-curses-menus__ads.htm#ref_337_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_336_30" HREF="terminal_interface-curses-menus__ads.htm#ref_337_30">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_337_30" HREF="terminal_interface-curses-menus__ads.htm#ref_338_30">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_338_30" HREF="terminal_interface-curses-menus__ads.htm#ref_339_30">On</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_391_16">Menu_Opts_On</A></FONT> (<FONT COLOR=red><A NAME="ref_391_30" HREF="terminal_interface-curses-menus__adb.htm#ref_391_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_392_30" HREF="terminal_interface-curses-menus__adb.htm#ref_391_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_340_16">Menu_Opts_On</A></span> (<span class="symbol"><A NAME="ref_340_30" HREF="terminal_interface-curses-menus__adb.htm#ref_340_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_341_30" HREF="terminal_interface-curses-menus__adb.htm#ref_340_16">Opt</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Menu_Opts_On, "menu_opts_on");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_394_16">Menu_Opts_Off</A></FONT> (<FONT COLOR=red><A NAME="ref_394_31" HREF="terminal_interface-curses-menus__adb.htm#ref_394_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_395_31" HREF="terminal_interface-curses-menus__adb.htm#ref_394_16">Opt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_343_16">Menu_Opts_Off</A></span> (<span class="symbol"><A NAME="ref_343_31" HREF="terminal_interface-curses-menus__adb.htm#ref_343_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_344_31" HREF="terminal_interface-curses-menus__adb.htm#ref_343_16">Opt</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Menu_Opts_Off, "menu_opts_off");
-
-- <FONT COLOR=red><A NAME="ref_398_7">Opt</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := MOS_2_CInt (<A HREF="terminal_interface-curses-menus__ads.htm#ref_344_30">Options</A>);
-- <FONT COLOR=red><A NAME="ref_399_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_345_30">On</A> <b>then</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_391_16">Menu_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_343_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_398_7">Opt</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_339_30">On</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_340_16">Menu_Opts_On</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_337_30">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_338_30">Options</A>));
- <b>else</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_394_16">Menu_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_343_30">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_398_7">Opt</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_343_16">Menu_Opts_Off</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_337_30">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_338_30">Options</A>));
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_399_7">Err</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_343_14">Switch_Options</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_337_14">Switch_Options</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_411_14" HREF="terminal_interface-curses-menus__ads.htm#ref_351_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_411_27" HREF="terminal_interface-curses-menus__ads.htm#ref_351_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_412_27" HREF="terminal_interface-curses-menus__ads.htm#ref_352_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_355_14" HREF="terminal_interface-curses-menus__ads.htm#ref_345_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_355_27" HREF="terminal_interface-curses-menus__ads.htm#ref_345_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_356_27" HREF="terminal_interface-curses-menus__ads.htm#ref_346_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_414_16">Menu_Opts</A></FONT> (<FONT COLOR=red><A NAME="ref_414_27" HREF="terminal_interface-curses-menus__adb.htm#ref_414_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_358_16">Menu_Opts</A></span> (<span class="symbol"><A NAME="ref_358_27" HREF="terminal_interface-curses-menus__adb.htm#ref_358_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>;
- <b>pragma</b> Import (C, Menu_Opts, "menu_opts");
-
-- <FONT COLOR=red><A NAME="ref_417_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_414_16">Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_351_27">Men</A>);
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_352_27">Options</A> := CInt_2_MOS (<A HREF="terminal_interface-curses-menus__adb.htm#ref_417_7">Res</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_351_14">Get_Options</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_346_27">Options</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_358_16">Menu_Opts</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_345_27">Men</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_345_14">Get_Options</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_422_13" HREF="terminal_interface-curses-menus__ads.htm#ref_356_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_422_26" HREF="terminal_interface-curses-menus__ads.htm#ref_356_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_365_13" HREF="terminal_interface-curses-menus__ads.htm#ref_350_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_365_26" HREF="terminal_interface-curses-menus__ads.htm#ref_350_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_58_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_424_7">Mos</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_367_7">Mos</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_351_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_356_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_424_7">Mos</A>);
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_424_7">Mos</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_356_13">Get_Options</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_430_14" HREF="terminal_interface-curses-menus__ads.htm#ref_365_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_430_26" HREF="terminal_interface-curses-menus__ads.htm#ref_365_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_431_26" HREF="terminal_interface-curses-menus__ads.htm#ref_366_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_345_14">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_350_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_367_7">Mos</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_367_7">Mos</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_350_13">Get_Options</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_373_14" HREF="terminal_interface-curses-menus__ads.htm#ref_359_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_373_26" HREF="terminal_interface-curses-menus__ads.htm#ref_359_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_374_26" HREF="terminal_interface-curses-menus__ads.htm#ref_360_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_433_16">Set_Menu_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_433_30" HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_434_30" HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_376_16">Set_Menu_Win</A></span> (<span class="symbol"><A NAME="ref_376_30" HREF="terminal_interface-curses-menus__adb.htm#ref_376_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_377_30" HREF="terminal_interface-curses-menus__adb.htm#ref_376_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Win, "set_menu_win");
-
-- <FONT COLOR=red><A NAME="ref_437_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Set_Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_365_26">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_366_26">Win</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_437_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_437_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_365_14">Set_Window</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_376_16">Set_Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_359_26">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_360_26">Win</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_359_14">Set_Window</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_444_13" HREF="terminal_interface-curses-menus__ads.htm#ref_371_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_444_25" HREF="terminal_interface-curses-menus__ads.htm#ref_371_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_384_13" HREF="terminal_interface-curses-menus__ads.htm#ref_365_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_384_25" HREF="terminal_interface-curses-menus__ads.htm#ref_365_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_446_16">Menu_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_446_26" HREF="terminal_interface-curses-menus__adb.htm#ref_446_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_386_16">Menu_Win</A></span> (<span class="symbol"><A NAME="ref_386_26" HREF="terminal_interface-curses-menus__adb.htm#ref_386_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Menu_Win, "menu_win");
-
-- <FONT COLOR=red><A NAME="ref_449_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_446_16">Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_371_25">Men</A>);
-+ <span class="symbol"><A NAME="ref_389_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_386_16">Menu_Win</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_365_25">Men</A>);
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_449_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_371_13">Get_Window</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_389_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_365_13">Get_Window</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_454_14" HREF="terminal_interface-curses-menus__ads.htm#ref_376_14">Set_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_454_30" HREF="terminal_interface-curses-menus__ads.htm#ref_376_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_455_30" HREF="terminal_interface-curses-menus__ads.htm#ref_377_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_394_14" HREF="terminal_interface-curses-menus__ads.htm#ref_370_14">Set_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_394_30" HREF="terminal_interface-curses-menus__ads.htm#ref_370_30">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_395_30" HREF="terminal_interface-curses-menus__ads.htm#ref_371_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_457_16">Set_Menu_Sub</A></FONT> (<FONT COLOR=red><A NAME="ref_457_30" HREF="terminal_interface-curses-menus__adb.htm#ref_457_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_458_30" HREF="terminal_interface-curses-menus__adb.htm#ref_457_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_397_16">Set_Menu_Sub</A></span> (<span class="symbol"><A NAME="ref_397_30" HREF="terminal_interface-curses-menus__adb.htm#ref_397_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_398_30" HREF="terminal_interface-curses-menus__adb.htm#ref_397_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Sub, "set_menu_sub");
-
-- <FONT COLOR=red><A NAME="ref_461_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_457_16">Set_Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_376_30">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_377_30">Win</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_461_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_461_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_376_14">Set_Sub_Window</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_397_16">Set_Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_370_30">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_371_30">Win</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_370_14">Set_Sub_Window</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_468_13" HREF="terminal_interface-curses-menus__ads.htm#ref_382_13">Get_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_468_29" HREF="terminal_interface-curses-menus__ads.htm#ref_382_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_405_13" HREF="terminal_interface-curses-menus__ads.htm#ref_376_13">Get_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_405_29" HREF="terminal_interface-curses-menus__ads.htm#ref_376_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_470_16">Menu_Sub</A></FONT> (<FONT COLOR=red><A NAME="ref_470_26" HREF="terminal_interface-curses-menus__adb.htm#ref_470_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_407_16">Menu_Sub</A></span> (<span class="symbol"><A NAME="ref_407_26" HREF="terminal_interface-curses-menus__adb.htm#ref_407_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Menu_Sub, "menu_sub");
-
-- <FONT COLOR=red><A NAME="ref_473_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_470_16">Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_382_29">Men</A>);
-+ <span class="symbol"><A NAME="ref_410_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_407_16">Menu_Sub</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_376_29">Men</A>);
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_473_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_382_13">Get_Sub_Window</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_410_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_376_13">Get_Sub_Window</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_478_14" HREF="terminal_interface-curses-menus__ads.htm#ref_387_14">Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_478_21" HREF="terminal_interface-curses-menus__ads.htm#ref_387_21">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_479_21" HREF="terminal_interface-curses-menus__ads.htm#ref_388_21">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_480_21" HREF="terminal_interface-curses-menus__ads.htm#ref_389_21">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>)
-- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_482_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_483_16">M_Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_483_25" HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_484_25" HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">Yp</A></FONT>, <FONT COLOR=red><A NAME="ref_484_29" HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">Xp</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_482_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_415_14" HREF="terminal_interface-curses-menus__ads.htm#ref_381_14">Scale</A></span> (<span class="symbol"><A NAME="ref_415_21" HREF="terminal_interface-curses-menus__ads.htm#ref_381_21">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_416_21" HREF="terminal_interface-curses-menus__ads.htm#ref_382_21">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_417_21" HREF="terminal_interface-curses-menus__ads.htm#ref_383_21">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>)
-+ <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_419_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_420_16">M_Scale</A></span> (<span class="symbol"><A NAME="ref_420_25" HREF="terminal_interface-curses-menus__adb.htm#ref_420_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_421_25" HREF="terminal_interface-curses-menus__adb.htm#ref_420_16">Yp</A></span>, <span class="symbol"><A NAME="ref_421_29" HREF="terminal_interface-curses-menus__adb.htm#ref_420_16">Xp</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_419_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, M_Scale, "scale_menu");
-
-- <FONT COLOR=red><A NAME="ref_487_7">X</A></FONT>, <FONT COLOR=red><A NAME="ref_487_10">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_488_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_483_16">M_Scale</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_387_21">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_487_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_487_7">X</A>'<b>Access</b>);
-+ <span class="symbol"><A NAME="ref_424_7">X</A></span>, <span class="symbol"><A NAME="ref_424_10">Y</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_488_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_488_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_388_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_487_10">Y</A>);
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_389_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_487_7">X</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_387_14">Scale</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_497_14" HREF="terminal_interface-curses-menus__ads.htm#ref_398_14">Position_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_497_31" HREF="terminal_interface-curses-menus__ads.htm#ref_398_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_420_16">M_Scale</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_381_21">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_424_10">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_424_7">X</A>'<b>Access</b>));
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_382_21">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_424_10">Y</A>);
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_383_21">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_424_7">X</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_381_14">Scale</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_431_14" HREF="terminal_interface-curses-menus__ads.htm#ref_392_14">Position_Cursor</A></span> (<span class="symbol"><A NAME="ref_431_31" HREF="terminal_interface-curses-menus__ads.htm#ref_392_31">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_499_16">Pos_Menu_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_499_33" HREF="terminal_interface-curses-menus__adb.htm#ref_499_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_433_16">Pos_Menu_Cursor</A></span> (<span class="symbol"><A NAME="ref_433_33" HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Pos_Menu_Cursor, "pos_menu_cursor");
-
-- <FONT COLOR=red><A NAME="ref_502_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_499_16">Pos_Menu_Cursor</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_398_31">Men</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_502_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_502_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_398_14">Position_Cursor</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_433_16">Pos_Menu_Cursor</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_392_31">Men</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_392_14">Position_Cursor</A>;
-
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_510_14" HREF="terminal_interface-curses-menus__ads.htm#ref_407_14">Set_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_510_24" HREF="terminal_interface-curses-menus__ads.htm#ref_407_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_511_24" HREF="terminal_interface-curses-menus__ads.htm#ref_408_24">Mark</A></FONT> : String)
-- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_513_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_514_16">Set_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_514_26" HREF="terminal_interface-curses-menus__adb.htm#ref_514_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_515_26" HREF="terminal_interface-curses-menus__adb.htm#ref_514_16">Mark</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_513_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_441_14" HREF="terminal_interface-curses-menus__ads.htm#ref_401_14">Set_Mark</A></span> (<span class="symbol"><A NAME="ref_441_24" HREF="terminal_interface-curses-menus__ads.htm#ref_401_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_442_24" HREF="terminal_interface-curses-menus__ads.htm#ref_402_24">Mark</A></span> : String)
-+ <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_444_12">Char_Ptr</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char;
-+ <b>function</b> <span class="symbol"><A NAME="ref_445_16">Set_Mark</A></span> (<span class="symbol"><A NAME="ref_445_26" HREF="terminal_interface-curses-menus__adb.htm#ref_445_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_446_26" HREF="terminal_interface-curses-menus__adb.htm#ref_445_16">Mark</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_444_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Mark, "set_menu_mark");
-
-- <FONT COLOR=red><A NAME="ref_518_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_408_24">Mark</A>'Length);
-- <FONT COLOR=red><A NAME="ref_519_7">Len</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_520_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_408_24">Mark</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_518_7">Txt</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_519_7">Len</A>);
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_520_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_514_16">Set_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_407_24">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_518_7">Txt</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_518_7">Txt</A>'First)'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_520_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_520_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_407_14">Set_Mark</A>;
-+ <span class="symbol"><A NAME="ref_449_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_402_24">Mark</A>'Length);
-+ <span class="symbol"><A NAME="ref_450_7">Len</A></span> : size_t;
-+ <b>begin</b>
-+ To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_402_24">Mark</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_449_7">Txt</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_450_7">Len</A>);
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_445_16">Set_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_401_24">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_449_7">Txt</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_449_7">Txt</A>'First)'<b>Access</b>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_401_14">Set_Mark</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_529_14" HREF="terminal_interface-curses-menus__ads.htm#ref_413_14">Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_529_20" HREF="terminal_interface-curses-menus__ads.htm#ref_413_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_530_20" HREF="terminal_interface-curses-menus__ads.htm#ref_414_20">Mark</A></FONT> : <b>out</b> String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_456_14" HREF="terminal_interface-curses-menus__ads.htm#ref_407_14">Mark</A></span> (<span class="symbol"><A NAME="ref_456_20" HREF="terminal_interface-curses-menus__ads.htm#ref_407_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_457_20" HREF="terminal_interface-curses-menus__ads.htm#ref_408_20">Mark</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_532_16">Get_Menu_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_532_31" HREF="terminal_interface-curses-menus__adb.htm#ref_532_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_459_16">Get_Menu_Mark</A></span> (<span class="symbol"><A NAME="ref_459_31" HREF="terminal_interface-curses-menus__adb.htm#ref_459_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Get_Menu_Mark, "menu_mark");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_532_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_413_20">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_414_20">Mark</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_413_14">Mark</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_459_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_407_20">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_408_20">Mark</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_407_14">Mark</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_538_13" HREF="terminal_interface-curses-menus__ads.htm#ref_417_14">Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_538_19" HREF="terminal_interface-curses-menus__ads.htm#ref_417_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_465_13" HREF="terminal_interface-curses-menus__ads.htm#ref_411_14">Mark</A></span> (<span class="symbol"><A NAME="ref_465_19" HREF="terminal_interface-curses-menus__ads.htm#ref_411_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_540_16">Get_Menu_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_540_31" HREF="terminal_interface-curses-menus__adb.htm#ref_540_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_467_16">Get_Menu_Mark</A></span> (<span class="symbol"><A NAME="ref_467_31" HREF="terminal_interface-curses-menus__adb.htm#ref_467_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Get_Menu_Mark, "menu_mark");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_540_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_417_20">Men</A>));
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_417_14">Mark</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_467_16">Get_Menu_Mark</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_411_20">Men</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_411_14">Mark</A>;
-
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_547_14" HREF="terminal_interface-curses-menus__ads.htm#ref_427_14">Set_Foreground</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_548_7" HREF="terminal_interface-curses-menus__ads.htm#ref_428_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_549_7" HREF="terminal_interface-curses-menus__ads.htm#ref_429_7">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_550_7" HREF="terminal_interface-curses-menus__ads.htm#ref_430_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First)
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_474_14" HREF="terminal_interface-curses-menus__ads.htm#ref_421_14">Set_Foreground</A></span>
-+ (<span class="symbol"><A NAME="ref_475_7" HREF="terminal_interface-curses-menus__ads.htm#ref_422_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_476_7" HREF="terminal_interface-curses-menus__ads.htm#ref_423_7">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_477_7" HREF="terminal_interface-curses-menus__ads.htm#ref_424_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_552_16">Set_Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_552_31" HREF="terminal_interface-curses-menus__adb.htm#ref_552_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_553_31" HREF="terminal_interface-curses-menus__adb.htm#ref_552_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_479_16">Set_Menu_Fore</A></span> (<span class="symbol"><A NAME="ref_479_31" HREF="terminal_interface-curses-menus__adb.htm#ref_479_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_480_31" HREF="terminal_interface-curses-menus__adb.htm#ref_479_16">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Fore, "set_menu_fore");
-
-- <FONT COLOR=red><A NAME="ref_556_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_430_7">Color</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_429_7">Fore</A>);
-- <FONT COLOR=red><A NAME="ref_559_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_552_16">Set_Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_428_7">Men</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-menus__adb.htm#ref_556_7">Ch</A>));
-+ <span class="symbol"><A NAME="ref_483_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_424_7">Color</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_423_7">Fore</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_559_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_559_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_427_14">Set_Foreground</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_479_16">Set_Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_422_7">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_483_7">Ch</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_421_14">Set_Foreground</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_566_14" HREF="terminal_interface-curses-menus__ads.htm#ref_435_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_566_26" HREF="terminal_interface-curses-menus__ads.htm#ref_435_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_567_26" HREF="terminal_interface-curses-menus__ads.htm#ref_436_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_490_14" HREF="terminal_interface-curses-menus__ads.htm#ref_429_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_490_26" HREF="terminal_interface-curses-menus__ads.htm#ref_429_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_491_26" HREF="terminal_interface-curses-menus__ads.htm#ref_430_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_569_16">Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_569_27" HREF="terminal_interface-curses-menus__adb.htm#ref_569_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_493_16">Menu_Fore</A></span> (<span class="symbol"><A NAME="ref_493_27" HREF="terminal_interface-curses-menus__adb.htm#ref_493_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Menu_Fore, "menu_fore");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_436_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_569_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_435_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_435_14">Foreground</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_430_26">Fore</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_493_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_429_26">Men</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_429_14">Foreground</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_575_14" HREF="terminal_interface-curses-menus__ads.htm#ref_440_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_575_26" HREF="terminal_interface-curses-menus__ads.htm#ref_440_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_576_26" HREF="terminal_interface-curses-menus__ads.htm#ref_441_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_577_26" HREF="terminal_interface-curses-menus__ads.htm#ref_442_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_499_14" HREF="terminal_interface-curses-menus__ads.htm#ref_434_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_499_26" HREF="terminal_interface-curses-menus__ads.htm#ref_434_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_500_26" HREF="terminal_interface-curses-menus__ads.htm#ref_435_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_501_26" HREF="terminal_interface-curses-menus__ads.htm#ref_436_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_579_16">Menu_Fore</A></FONT> (<FONT COLOR=red><A NAME="ref_579_27" HREF="terminal_interface-curses-menus__adb.htm#ref_579_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_503_16">Menu_Fore</A></span> (<span class="symbol"><A NAME="ref_503_27" HREF="terminal_interface-curses-menus__adb.htm#ref_503_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Menu_Fore, "menu_fore");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_441_26">Fore</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_579_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_440_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_442_26">Color</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_579_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_440_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_440_14">Foreground</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_586_14" HREF="terminal_interface-curses-menus__ads.htm#ref_447_14">Set_Background</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_587_7" HREF="terminal_interface-curses-menus__ads.htm#ref_448_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_588_7" HREF="terminal_interface-curses-menus__ads.htm#ref_449_7">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_589_7" HREF="terminal_interface-curses-menus__ads.htm#ref_450_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First)
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_435_26">Fore</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_503_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_434_26">Men</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_436_26">Color</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_503_16">Menu_Fore</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_434_26">Men</A>).<A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_434_14">Foreground</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_510_14" HREF="terminal_interface-curses-menus__ads.htm#ref_441_14">Set_Background</A></span>
-+ (<span class="symbol"><A NAME="ref_511_7" HREF="terminal_interface-curses-menus__ads.htm#ref_442_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_512_7" HREF="terminal_interface-curses-menus__ads.htm#ref_443_7">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_513_7" HREF="terminal_interface-curses-menus__ads.htm#ref_444_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_591_16">Set_Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_591_31" HREF="terminal_interface-curses-menus__adb.htm#ref_591_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_592_31" HREF="terminal_interface-curses-menus__adb.htm#ref_591_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_515_16">Set_Menu_Back</A></span> (<span class="symbol"><A NAME="ref_515_31" HREF="terminal_interface-curses-menus__adb.htm#ref_515_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_516_31" HREF="terminal_interface-curses-menus__adb.htm#ref_515_16">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Back, "set_menu_back");
-
-- <FONT COLOR=red><A NAME="ref_595_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_450_7">Color</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_449_7">Back</A>);
-- <FONT COLOR=red><A NAME="ref_598_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_591_16">Set_Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_448_7">Men</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-menus__adb.htm#ref_595_7">Ch</A>));
-+ <span class="symbol"><A NAME="ref_519_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_444_7">Color</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_443_7">Back</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_598_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_598_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_447_14">Set_Background</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_515_16">Set_Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_442_7">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_519_7">Ch</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_441_14">Set_Background</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_605_14" HREF="terminal_interface-curses-menus__ads.htm#ref_455_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_605_26" HREF="terminal_interface-curses-menus__ads.htm#ref_455_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_606_26" HREF="terminal_interface-curses-menus__ads.htm#ref_456_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_526_14" HREF="terminal_interface-curses-menus__ads.htm#ref_449_14">Background</A></span> (<span class="symbol"><A NAME="ref_526_26" HREF="terminal_interface-curses-menus__ads.htm#ref_449_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_527_26" HREF="terminal_interface-curses-menus__ads.htm#ref_450_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_608_16">Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_608_27" HREF="terminal_interface-curses-menus__adb.htm#ref_608_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_529_16">Menu_Back</A></span> (<span class="symbol"><A NAME="ref_529_27" HREF="terminal_interface-curses-menus__adb.htm#ref_529_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Menu_Back, "menu_back");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_456_26">Back</A> := Chtype_To_AttrChar (<A HREF="terminal_interface-curses-menus__adb.htm#ref_608_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_455_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_455_14">Background</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_450_26">Back</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_529_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_449_26">Men</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_449_14">Background</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_614_14" HREF="terminal_interface-curses-menus__ads.htm#ref_460_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_614_26" HREF="terminal_interface-curses-menus__ads.htm#ref_460_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_615_26" HREF="terminal_interface-curses-menus__ads.htm#ref_461_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_616_26" HREF="terminal_interface-curses-menus__ads.htm#ref_462_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_535_14" HREF="terminal_interface-curses-menus__ads.htm#ref_454_14">Background</A></span> (<span class="symbol"><A NAME="ref_535_26" HREF="terminal_interface-curses-menus__ads.htm#ref_454_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_536_26" HREF="terminal_interface-curses-menus__ads.htm#ref_455_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_537_26" HREF="terminal_interface-curses-menus__ads.htm#ref_456_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_618_16">Menu_Back</A></FONT> (<FONT COLOR=red><A NAME="ref_618_27" HREF="terminal_interface-curses-menus__adb.htm#ref_618_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_539_16">Menu_Back</A></span> (<span class="symbol"><A NAME="ref_539_27" HREF="terminal_interface-curses-menus__adb.htm#ref_539_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Menu_Back, "menu_back");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_461_26">Back</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_618_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_460_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_462_26">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_618_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_460_26">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_460_14">Background</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_625_14" HREF="terminal_interface-curses-menus__ads.htm#ref_467_14">Set_Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_625_24" HREF="terminal_interface-curses-menus__ads.htm#ref_468_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_626_24" HREF="terminal_interface-curses-menus__ads.htm#ref_469_7">Grey</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_627_24" HREF="terminal_interface-curses-menus__ads.htm#ref_470_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First)
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_455_26">Back</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_539_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_454_26">Men</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_456_26">Color</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_539_16">Menu_Back</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_454_26">Men</A>).<A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_454_14">Background</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_546_14" HREF="terminal_interface-curses-menus__ads.htm#ref_461_14">Set_Grey</A></span> (<span class="symbol"><A NAME="ref_546_24" HREF="terminal_interface-curses-menus__ads.htm#ref_462_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_547_24" HREF="terminal_interface-curses-menus__ads.htm#ref_463_7">Grey</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_548_24" HREF="terminal_interface-curses-menus__ads.htm#ref_464_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_629_16">Set_Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_629_31" HREF="terminal_interface-curses-menus__adb.htm#ref_629_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_630_31" HREF="terminal_interface-curses-menus__adb.htm#ref_629_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_550_16">Set_Menu_Grey</A></span> (<span class="symbol"><A NAME="ref_550_31" HREF="terminal_interface-curses-menus__adb.htm#ref_550_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_551_31" HREF="terminal_interface-curses-menus__adb.htm#ref_550_16">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Grey, "set_menu_grey");
-
-- <FONT COLOR=red><A NAME="ref_633_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_470_7">Color</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_469_7">Grey</A>);
-+ <span class="symbol"><A NAME="ref_554_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_464_7">Color</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_463_7">Grey</A>);
-
-- <FONT COLOR=red><A NAME="ref_637_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_629_16">Set_Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_468_7">Men</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses-menus__adb.htm#ref_633_7">Ch</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_637_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_637_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_467_14">Set_Grey</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_550_16">Set_Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_462_7">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_554_7">Ch</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_461_14">Set_Grey</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_644_14" HREF="terminal_interface-curses-menus__ads.htm#ref_475_14">Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_644_20" HREF="terminal_interface-curses-menus__ads.htm#ref_475_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_645_20" HREF="terminal_interface-curses-menus__ads.htm#ref_476_20">Grey</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_562_14" HREF="terminal_interface-curses-menus__ads.htm#ref_469_14">Grey</A></span> (<span class="symbol"><A NAME="ref_562_20" HREF="terminal_interface-curses-menus__ads.htm#ref_469_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_563_20" HREF="terminal_interface-curses-menus__ads.htm#ref_470_20">Grey</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_647_16">Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_647_27" HREF="terminal_interface-curses-menus__adb.htm#ref_647_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_565_16">Menu_Grey</A></span> (<span class="symbol"><A NAME="ref_565_27" HREF="terminal_interface-curses-menus__adb.htm#ref_565_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Menu_Grey, "menu_grey");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_476_20">Grey</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_647_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_475_20">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_475_14">Grey</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_470_20">Grey</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_565_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_469_20">Men</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_469_14">Grey</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_653_14" HREF="terminal_interface-curses-menus__ads.htm#ref_480_14">Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_653_20" HREF="terminal_interface-curses-menus__ads.htm#ref_481_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_654_20" HREF="terminal_interface-curses-menus__ads.htm#ref_482_7">Grey</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_655_20" HREF="terminal_interface-curses-menus__ads.htm#ref_483_7">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_571_14" HREF="terminal_interface-curses-menus__ads.htm#ref_474_14">Grey</A></span> (<span class="symbol"><A NAME="ref_571_20" HREF="terminal_interface-curses-menus__ads.htm#ref_475_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_572_20" HREF="terminal_interface-curses-menus__ads.htm#ref_476_7">Grey</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_573_20" HREF="terminal_interface-curses-menus__ads.htm#ref_477_7">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_657_16">Menu_Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_657_27" HREF="terminal_interface-curses-menus__adb.htm#ref_657_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_575_16">Menu_Grey</A></span> (<span class="symbol"><A NAME="ref_575_27" HREF="terminal_interface-curses-menus__adb.htm#ref_575_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Menu_Grey, "menu_grey");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_482_7">Grey</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_657_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_481_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_483_7">Color</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_657_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_481_7">Men</A>)).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_480_14">Grey</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_476_7">Grey</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_575_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_475_7">Men</A>).<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_477_7">Color</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_575_16">Menu_Grey</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_475_7">Men</A>).<A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_474_14">Grey</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_664_14" HREF="terminal_interface-curses-menus__ads.htm#ref_488_14">Set_Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_664_33" HREF="terminal_interface-curses-menus__ads.htm#ref_488_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_665_33" HREF="terminal_interface-curses-menus__ads.htm#ref_489_33">Pad</A></FONT> : Character := Space)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_582_14" HREF="terminal_interface-curses-menus__ads.htm#ref_482_14">Set_Pad_Character</A></span> (<span class="symbol"><A NAME="ref_582_33" HREF="terminal_interface-curses-menus__ads.htm#ref_482_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_583_33" HREF="terminal_interface-curses-menus__ads.htm#ref_483_33">Pad</A></span> : Character := Space)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_667_16">Set_Menu_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_667_30" HREF="terminal_interface-curses-menus__adb.htm#ref_667_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_668_30" HREF="terminal_interface-curses-menus__adb.htm#ref_667_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_585_16">Set_Menu_Pad</A></span> (<span class="symbol"><A NAME="ref_585_30" HREF="terminal_interface-curses-menus__adb.htm#ref_585_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_586_30" HREF="terminal_interface-curses-menus__adb.htm#ref_585_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Pad, "set_menu_pad");
-
-- <FONT COLOR=red><A NAME="ref_671_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_667_16">Set_Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_488_33">Men</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#ref_489_33">Pad</A>)));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_671_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_671_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_488_14">Set_Pad_Character</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_585_16">Set_Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_482_33">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (Character'Pos (<A HREF="terminal_interface-curses-menus__ads.htm#ref_483_33">Pad</A>))));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_482_14">Set_Pad_Character</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_679_14" HREF="terminal_interface-curses-menus__ads.htm#ref_494_14">Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_679_29" HREF="terminal_interface-curses-menus__ads.htm#ref_494_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_680_29" HREF="terminal_interface-curses-menus__ads.htm#ref_495_29">Pad</A></FONT> : <b>out</b> Character)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_593_14" HREF="terminal_interface-curses-menus__ads.htm#ref_488_14">Pad_Character</A></span> (<span class="symbol"><A NAME="ref_593_29" HREF="terminal_interface-curses-menus__ads.htm#ref_488_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_594_29" HREF="terminal_interface-curses-menus__ads.htm#ref_489_29">Pad</A></span> : <b>out</b> Character)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_682_16">Menu_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_682_26" HREF="terminal_interface-curses-menus__adb.htm#ref_682_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_596_16">Menu_Pad</A></span> (<span class="symbol"><A NAME="ref_596_26" HREF="terminal_interface-curses-menus__adb.htm#ref_596_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Menu_Pad, "menu_pad");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_495_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-menus__adb.htm#ref_682_16">Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_494_29">Men</A>));
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_494_14">Pad_Character</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_688_14" HREF="terminal_interface-curses-menus__ads.htm#ref_504_14">Set_Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_688_27" HREF="terminal_interface-curses-menus__ads.htm#ref_504_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_689_27" HREF="terminal_interface-curses-menus__ads.htm#ref_505_27">Descr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0;
-- <FONT COLOR=red><A NAME="ref_690_27" HREF="terminal_interface-curses-menus__ads.htm#ref_506_27">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := 0;
-- <FONT COLOR=red><A NAME="ref_691_27" HREF="terminal_interface-curses-menus__ads.htm#ref_507_27">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0)
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_489_29">Pad</A> := Character'Val (<A HREF="terminal_interface-curses-menus__adb.htm#ref_596_16">Menu_Pad</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_488_29">Men</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_488_14">Pad_Character</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_602_14" HREF="terminal_interface-curses-menus__ads.htm#ref_498_14">Set_Spacing</A></span> (<span class="symbol"><A NAME="ref_602_27" HREF="terminal_interface-curses-menus__ads.htm#ref_498_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_603_27" HREF="terminal_interface-curses-menus__ads.htm#ref_499_27">Descr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> := 0;
-+ <span class="symbol"><A NAME="ref_604_27" HREF="terminal_interface-curses-menus__ads.htm#ref_500_27">Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> := 0;
-+ <span class="symbol"><A NAME="ref_605_27" HREF="terminal_interface-curses-menus__ads.htm#ref_501_27">Col</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> := 0)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_693_16">Set_Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_693_29" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_694_29" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">D</A></FONT>, <FONT COLOR=red><A NAME="ref_694_32" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">R</A></FONT>, <FONT COLOR=red><A NAME="ref_694_35" HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">C</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_607_16">Set_Spacing</A></span> (<span class="symbol"><A NAME="ref_607_29" HREF="terminal_interface-curses-menus__adb.htm#ref_607_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_608_29" HREF="terminal_interface-curses-menus__adb.htm#ref_607_16">D</A></span>, <span class="symbol"><A NAME="ref_608_32" HREF="terminal_interface-curses-menus__adb.htm#ref_607_16">R</A></span>, <span class="symbol"><A NAME="ref_608_35" HREF="terminal_interface-curses-menus__adb.htm#ref_607_16">C</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Spacing, "set_menu_spacing");
-
-- <FONT COLOR=red><A NAME="ref_697_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_693_16">Set_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_504_27">Men</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_505_27">Descr</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_506_27">Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_507_27">Col</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_697_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_697_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_504_14">Set_Spacing</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_707_14" HREF="terminal_interface-curses-menus__ads.htm#ref_512_14">Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_707_23" HREF="terminal_interface-curses-menus__ads.htm#ref_512_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_708_23" HREF="terminal_interface-curses-menus__ads.htm#ref_513_23">Descr</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_709_23" HREF="terminal_interface-curses-menus__ads.htm#ref_514_23">Row</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_710_23" HREF="terminal_interface-curses-menus__ads.htm#ref_515_23">Col</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_712_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_713_16">Get_Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_713_29" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_714_29" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">D</A></FONT>, <FONT COLOR=red><A NAME="ref_714_32" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">R</A></FONT>, <FONT COLOR=red><A NAME="ref_714_35" HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">C</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_712_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_607_16">Set_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_498_27">Men</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_499_27">Descr</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_500_27">Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_501_27">Col</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_498_14">Set_Spacing</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_618_14" HREF="terminal_interface-curses-menus__ads.htm#ref_506_14">Spacing</A></span> (<span class="symbol"><A NAME="ref_618_23" HREF="terminal_interface-curses-menus__ads.htm#ref_506_23">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_619_23" HREF="terminal_interface-curses-menus__ads.htm#ref_507_23">Descr</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_620_23" HREF="terminal_interface-curses-menus__ads.htm#ref_508_23">Row</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_621_23" HREF="terminal_interface-curses-menus__ads.htm#ref_509_23">Col</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
-+ <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_623_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_624_16">Get_Spacing</A></span> (<span class="symbol"><A NAME="ref_624_29" HREF="terminal_interface-curses-menus__adb.htm#ref_624_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_625_29" HREF="terminal_interface-curses-menus__adb.htm#ref_624_16">D</A></span>, <span class="symbol"><A NAME="ref_625_32" HREF="terminal_interface-curses-menus__adb.htm#ref_624_16">R</A></span>, <span class="symbol"><A NAME="ref_625_35" HREF="terminal_interface-curses-menus__adb.htm#ref_624_16">C</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_623_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Get_Spacing, "menu_spacing");
-
-- <FONT COLOR=red><A NAME="ref_717_7">D</A></FONT>, <FONT COLOR=red><A NAME="ref_717_10">R</A></FONT>, <FONT COLOR=red><A NAME="ref_717_13">C</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_718_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_713_16">Get_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_512_23">Men</A>,
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_717_7">D</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_717_10">R</A>'<b>Access</b>,
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_717_13">C</A>'<b>Access</b>);
-+ <span class="symbol"><A NAME="ref_628_7">D</A></span>, <span class="symbol"><A NAME="ref_628_10">R</A></span>, <span class="symbol"><A NAME="ref_628_13">C</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_718_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_718_7">Res</A>);
-- <b>else</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_513_23">Descr</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_7">D</A>);
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_514_23">Row</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_10">R</A>);
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_515_23">Col</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_13">C</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_512_14">Spacing</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_732_13" HREF="terminal_interface-curses-menus__ads.htm#ref_524_13">Set_Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_732_26" HREF="terminal_interface-curses-menus__ads.htm#ref_524_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_733_26" HREF="terminal_interface-curses-menus__ads.htm#ref_525_26">Text</A></FONT> : String) <b>return</b> Boolean
-- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_735_12">Char_Ptr</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_736_16">Set_Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_736_29" HREF="terminal_interface-curses-menus__adb.htm#ref_736_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_737_29" HREF="terminal_interface-curses-menus__adb.htm#ref_736_16">Pattern</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_735_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_624_16">Get_Spacing</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_506_23">Men</A>,
-+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_628_7">D</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_628_10">R</A>'<b>Access</b>,
-+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_628_13">C</A>'<b>Access</b>));
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_507_23">Descr</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_628_7">D</A>);
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_508_23">Row</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_628_10">R</A>);
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_509_23">Col</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_628_13">C</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_506_14">Spacing</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_639_13" HREF="terminal_interface-curses-menus__ads.htm#ref_518_13">Set_Pattern</A></span> (<span class="symbol"><A NAME="ref_639_26" HREF="terminal_interface-curses-menus__ads.htm#ref_518_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_640_26" HREF="terminal_interface-curses-menus__ads.htm#ref_519_26">Text</A></span> : String) <b>return</b> Boolean
-+ <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_642_12">Char_Ptr</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char;
-+ <b>function</b> <span class="symbol"><A NAME="ref_643_16">Set_Pattern</A></span> (<span class="symbol"><A NAME="ref_643_29" HREF="terminal_interface-curses-menus__adb.htm#ref_643_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_644_29" HREF="terminal_interface-curses-menus__adb.htm#ref_643_16">Pattern</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_642_12">Char_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Pattern, "set_menu_pattern");
-
-- <FONT COLOR=red><A NAME="ref_740_7">S</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_525_26">Text</A>'Length);
-- <FONT COLOR=red><A NAME="ref_741_7">L</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_742_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
-- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_525_26">Text</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_740_7">S</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_741_7">L</A>);
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_742_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_736_16">Set_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_524_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_740_7">S</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_740_7">S</A>'First)'<b>Access</b>);
-- <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_742_7">Res</A> <b>is</b>
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_89_4">E_No_Match</A> =&gt; <b>return</b> False;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> =&gt; <b>return</b> True;
-- <b>when</b> <b>others</b> =&gt;
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_742_7">Res</A>);
-+ <span class="symbol"><A NAME="ref_647_7">S</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-menus__ads.htm#ref_519_26">Text</A>'Length);
-+ <span class="symbol"><A NAME="ref_648_7">L</A></span> : size_t;
-+ <span class="symbol"><A NAME="ref_649_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
-+ <b>begin</b>
-+ To_C (<A HREF="terminal_interface-curses-menus__ads.htm#ref_519_26">Text</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_647_7">S</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_648_7">L</A>);
-+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_649_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_643_16">Set_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_518_26">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_647_7">S</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_647_7">S</A>'First)'<b>Access</b>);
-+ <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_649_7">Res</A> <b>is</b>
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_77_7">E_No_Match</A> =&gt;
- <b>return</b> False;
-+ <b>when</b> <b>others</b> =&gt;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_649_7">Res</A>);
-+ <b>return</b> True;
- <b>end</b> <b>case</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_524_13">Set_Pattern</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_518_13">Set_Pattern</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_755_14" HREF="terminal_interface-curses-menus__ads.htm#ref_531_14">Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_755_23" HREF="terminal_interface-curses-menus__ads.htm#ref_531_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_756_23" HREF="terminal_interface-curses-menus__ads.htm#ref_532_23">Text</A></FONT> : <b>out</b> String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_662_14" HREF="terminal_interface-curses-menus__ads.htm#ref_525_14">Pattern</A></span> (<span class="symbol"><A NAME="ref_662_23" HREF="terminal_interface-curses-menus__ads.htm#ref_525_23">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_663_23" HREF="terminal_interface-curses-menus__ads.htm#ref_526_23">Text</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_758_16">Get_Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_758_29" HREF="terminal_interface-curses-menus__adb.htm#ref_758_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_58_12">chars_ptr</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_665_16">Get_Pattern</A></span> (<span class="symbol"><A NAME="ref_665_29" HREF="terminal_interface-curses-menus__adb.htm#ref_665_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_56_12">chars_ptr</A>;
- <b>pragma</b> Import (C, Get_Pattern, "menu_pattern");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_758_16">Get_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_531_23">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_532_23">Text</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_531_14">Pattern</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_764_14" HREF="terminal_interface-curses-menus__ads.htm#ref_541_14">Set_Format</A></FONT> (<FONT COLOR=red><A NAME="ref_764_26" HREF="terminal_interface-curses-menus__ads.htm#ref_541_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_765_26" HREF="terminal_interface-curses-menus__ads.htm#ref_542_26">Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_766_26" HREF="terminal_interface-curses-menus__ads.htm#ref_543_26">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_768_16">Set_Menu_Fmt</A></FONT> (<FONT COLOR=red><A NAME="ref_768_30" HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_769_30" HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_770_30" HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_665_16">Get_Pattern</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_525_23">Men</A>), <A HREF="terminal_interface-curses-menus__ads.htm#ref_526_23">Text</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_525_14">Pattern</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_671_14" HREF="terminal_interface-curses-menus__ads.htm#ref_535_14">Set_Format</A></span> (<span class="symbol"><A NAME="ref_671_26" HREF="terminal_interface-curses-menus__ads.htm#ref_535_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_672_26" HREF="terminal_interface-curses-menus__ads.htm#ref_536_26">Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_673_26" HREF="terminal_interface-curses-menus__ads.htm#ref_537_26">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_675_16">Set_Menu_Fmt</A></span> (<span class="symbol"><A NAME="ref_675_30" HREF="terminal_interface-curses-menus__adb.htm#ref_675_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_676_30" HREF="terminal_interface-curses-menus__adb.htm#ref_675_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_677_30" HREF="terminal_interface-curses-menus__adb.htm#ref_675_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Fmt, "set_menu_format");
-
-- <FONT COLOR=red><A NAME="ref_773_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_768_16">Set_Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_541_26">Men</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_542_26">Lines</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_543_26">Columns</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_773_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_773_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_541_14">Set_Format</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_782_14" HREF="terminal_interface-curses-menus__ads.htm#ref_555_14">Format</A></FONT> (<FONT COLOR=red><A NAME="ref_782_22" HREF="terminal_interface-curses-menus__ads.htm#ref_555_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_783_22" HREF="terminal_interface-curses-menus__ads.htm#ref_556_22">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_784_22" HREF="terminal_interface-curses-menus__ads.htm#ref_557_22">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>)
-- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_786_12">C_Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_787_16">Menu_Fmt</A></FONT> (<FONT COLOR=red><A NAME="ref_787_26" HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_788_26" HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">Y</A></FONT>, <FONT COLOR=red><A NAME="ref_788_29" HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">X</A></FONT> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_786_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_675_16">Set_Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_535_26">Men</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_536_26">Lines</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_537_26">Columns</A>)));
-+
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_535_14">Set_Format</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_687_14" HREF="terminal_interface-curses-menus__ads.htm#ref_549_14">Format</A></span> (<span class="symbol"><A NAME="ref_687_22" HREF="terminal_interface-curses-menus__ads.htm#ref_549_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_688_22" HREF="terminal_interface-curses-menus__ads.htm#ref_550_22">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_689_22" HREF="terminal_interface-curses-menus__ads.htm#ref_551_22">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>)
-+ <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_691_12">C_Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_692_16">Menu_Fmt</A></span> (<span class="symbol"><A NAME="ref_692_26" HREF="terminal_interface-curses-menus__adb.htm#ref_692_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_693_26" HREF="terminal_interface-curses-menus__adb.htm#ref_692_16">Y</A></span>, <span class="symbol"><A NAME="ref_693_29" HREF="terminal_interface-curses-menus__adb.htm#ref_692_16">X</A></span> : <A HREF="terminal_interface-curses-menus__adb.htm#ref_691_12">C_Int_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Menu_Fmt, "menu_format");
-
-- <FONT COLOR=red><A NAME="ref_791_7">L</A></FONT>, <FONT COLOR=red><A NAME="ref_791_10">C</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_792_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_787_16">Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_555_22">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_791_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_791_10">C</A>'<b>Access</b>);
-+ <span class="symbol"><A NAME="ref_696_7">L</A></span>, <span class="symbol"><A NAME="ref_696_10">C</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_792_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_792_7">Res</A>);
-- <b>else</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_556_22">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_791_7">L</A>);
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_557_22">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_791_10">C</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_555_14">Format</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_802_14" HREF="terminal_interface-curses-menus__ads.htm#ref_569_14">Set_Item_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_802_34" HREF="terminal_interface-curses-menus__ads.htm#ref_569_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_803_34" HREF="terminal_interface-curses-menus__ads.htm#ref_570_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>)
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_692_16">Menu_Fmt</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_549_22">Men</A>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_696_7">L</A>'<b>Access</b>, <A HREF="terminal_interface-curses-menus__adb.htm#ref_696_10">C</A>'<b>Access</b>));
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_550_22">Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_696_7">L</A>);
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_551_22">Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_696_10">C</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_549_14">Format</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_703_14" HREF="terminal_interface-curses-menus__ads.htm#ref_563_14">Set_Item_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_703_34" HREF="terminal_interface-curses-menus__ads.htm#ref_563_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_704_34" HREF="terminal_interface-curses-menus__ads.htm#ref_564_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_805_16">Set_Item_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_805_31" HREF="terminal_interface-curses-menus__adb.htm#ref_805_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_806_31" HREF="terminal_interface-curses-menus__adb.htm#ref_805_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_706_16">Set_Item_Init</A></span> (<span class="symbol"><A NAME="ref_706_31" HREF="terminal_interface-curses-menus__adb.htm#ref_706_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_707_31" HREF="terminal_interface-curses-menus__adb.htm#ref_706_16">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Item_Init, "set_item_init");
-
-- <FONT COLOR=red><A NAME="ref_809_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_805_16">Set_Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_569_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_570_34">Proc</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_809_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_809_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_569_14">Set_Item_Init_Hook</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_706_16">Set_Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_563_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_564_34">Proc</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_563_14">Set_Item_Init_Hook</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_816_14" HREF="terminal_interface-curses-menus__ads.htm#ref_575_14">Set_Item_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_816_34" HREF="terminal_interface-curses-menus__ads.htm#ref_575_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_817_34" HREF="terminal_interface-curses-menus__ads.htm#ref_576_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_714_14" HREF="terminal_interface-curses-menus__ads.htm#ref_569_14">Set_Item_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_714_34" HREF="terminal_interface-curses-menus__ads.htm#ref_569_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_715_34" HREF="terminal_interface-curses-menus__ads.htm#ref_570_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_819_16">Set_Item_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_819_31" HREF="terminal_interface-curses-menus__adb.htm#ref_819_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_820_31" HREF="terminal_interface-curses-menus__adb.htm#ref_819_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_717_16">Set_Item_Term</A></span> (<span class="symbol"><A NAME="ref_717_31" HREF="terminal_interface-curses-menus__adb.htm#ref_717_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_718_31" HREF="terminal_interface-curses-menus__adb.htm#ref_717_16">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Item_Term, "set_item_term");
-
-- <FONT COLOR=red><A NAME="ref_823_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_819_16">Set_Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_575_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_576_34">Proc</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_823_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_823_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_575_14">Set_Item_Term_Hook</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_717_16">Set_Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_569_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_570_34">Proc</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_569_14">Set_Item_Term_Hook</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_830_14" HREF="terminal_interface-curses-menus__ads.htm#ref_581_14">Set_Menu_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_830_34" HREF="terminal_interface-curses-menus__ads.htm#ref_581_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_831_34" HREF="terminal_interface-curses-menus__ads.htm#ref_582_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_725_14" HREF="terminal_interface-curses-menus__ads.htm#ref_575_14">Set_Menu_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_725_34" HREF="terminal_interface-curses-menus__ads.htm#ref_575_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_726_34" HREF="terminal_interface-curses-menus__ads.htm#ref_576_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_833_16">Set_Menu_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_833_31" HREF="terminal_interface-curses-menus__adb.htm#ref_833_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_834_31" HREF="terminal_interface-curses-menus__adb.htm#ref_833_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_728_16">Set_Menu_Init</A></span> (<span class="symbol"><A NAME="ref_728_31" HREF="terminal_interface-curses-menus__adb.htm#ref_728_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_729_31" HREF="terminal_interface-curses-menus__adb.htm#ref_728_16">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Init, "set_menu_init");
-
-- <FONT COLOR=red><A NAME="ref_837_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_833_16">Set_Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_581_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_582_34">Proc</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_837_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_837_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_581_14">Set_Menu_Init_Hook</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_728_16">Set_Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_575_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_576_34">Proc</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_575_14">Set_Menu_Init_Hook</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_844_14" HREF="terminal_interface-curses-menus__ads.htm#ref_587_14">Set_Menu_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_844_34" HREF="terminal_interface-curses-menus__ads.htm#ref_587_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_845_34" HREF="terminal_interface-curses-menus__ads.htm#ref_588_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_736_14" HREF="terminal_interface-curses-menus__ads.htm#ref_581_14">Set_Menu_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_736_34" HREF="terminal_interface-curses-menus__ads.htm#ref_581_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_737_34" HREF="terminal_interface-curses-menus__ads.htm#ref_582_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_847_16">Set_Menu_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_847_31" HREF="terminal_interface-curses-menus__adb.htm#ref_847_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_848_31" HREF="terminal_interface-curses-menus__adb.htm#ref_847_16">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_739_16">Set_Menu_Term</A></span> (<span class="symbol"><A NAME="ref_739_31" HREF="terminal_interface-curses-menus__adb.htm#ref_739_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_740_31" HREF="terminal_interface-curses-menus__adb.htm#ref_739_16">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Menu_Term, "set_menu_term");
-
-- <FONT COLOR=red><A NAME="ref_851_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_847_16">Set_Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_587_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_588_34">Proc</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_851_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_851_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_587_14">Set_Menu_Term_Hook</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_739_16">Set_Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_581_34">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_582_34">Proc</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_581_14">Set_Menu_Term_Hook</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_858_13" HREF="terminal_interface-curses-menus__ads.htm#ref_593_13">Get_Item_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_858_33" HREF="terminal_interface-curses-menus__ads.htm#ref_593_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_747_13" HREF="terminal_interface-curses-menus__ads.htm#ref_587_13">Get_Item_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_747_33" HREF="terminal_interface-curses-menus__ads.htm#ref_587_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_860_16">Item_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_860_27" HREF="terminal_interface-curses-menus__adb.htm#ref_860_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_749_16">Item_Init</A></span> (<span class="symbol"><A NAME="ref_749_27" HREF="terminal_interface-curses-menus__adb.htm#ref_749_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>;
- <b>pragma</b> Import (C, Item_Init, "item_init");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_860_16">Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_593_33">Men</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_593_13">Get_Item_Init_Hook</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_749_16">Item_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_587_33">Men</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_587_13">Get_Item_Init_Hook</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_866_13" HREF="terminal_interface-curses-menus__ads.htm#ref_598_13">Get_Item_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_866_33" HREF="terminal_interface-curses-menus__ads.htm#ref_598_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_755_13" HREF="terminal_interface-curses-menus__ads.htm#ref_592_13">Get_Item_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_755_33" HREF="terminal_interface-curses-menus__ads.htm#ref_592_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_868_16">Item_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_868_27" HREF="terminal_interface-curses-menus__adb.htm#ref_868_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_757_16">Item_Term</A></span> (<span class="symbol"><A NAME="ref_757_27" HREF="terminal_interface-curses-menus__adb.htm#ref_757_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>;
- <b>pragma</b> Import (C, Item_Term, "item_term");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_868_16">Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_598_33">Men</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_598_13">Get_Item_Term_Hook</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_757_16">Item_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_592_33">Men</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_592_13">Get_Item_Term_Hook</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_874_13" HREF="terminal_interface-curses-menus__ads.htm#ref_603_13">Get_Menu_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_874_33" HREF="terminal_interface-curses-menus__ads.htm#ref_603_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_763_13" HREF="terminal_interface-curses-menus__ads.htm#ref_597_13">Get_Menu_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_763_33" HREF="terminal_interface-curses-menus__ads.htm#ref_597_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_876_16">Menu_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_876_27" HREF="terminal_interface-curses-menus__adb.htm#ref_876_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_765_16">Menu_Init</A></span> (<span class="symbol"><A NAME="ref_765_27" HREF="terminal_interface-curses-menus__adb.htm#ref_765_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>;
- <b>pragma</b> Import (C, Menu_Init, "menu_init");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_876_16">Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_603_33">Men</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_603_13">Get_Menu_Init_Hook</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_765_16">Menu_Init</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_597_33">Men</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_597_13">Get_Menu_Init_Hook</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_882_13" HREF="terminal_interface-curses-menus__ads.htm#ref_608_13">Get_Menu_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_882_33" HREF="terminal_interface-curses-menus__ads.htm#ref_608_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_771_13" HREF="terminal_interface-curses-menus__ads.htm#ref_602_13">Get_Menu_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_771_33" HREF="terminal_interface-curses-menus__ads.htm#ref_602_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_884_16">Menu_Term</A></FONT> (<FONT COLOR=red><A NAME="ref_884_27" HREF="terminal_interface-curses-menus__adb.htm#ref_884_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_773_16">Menu_Term</A></span> (<span class="symbol"><A NAME="ref_773_27" HREF="terminal_interface-curses-menus__adb.htm#ref_773_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>;
- <b>pragma</b> Import (C, Menu_Term, "menu_term");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_884_16">Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_608_33">Men</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_608_13">Get_Menu_Term_Hook</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_890_14" HREF="terminal_interface-curses-menus__ads.htm#ref_617_14">Redefine</A></FONT> (<FONT COLOR=red><A NAME="ref_890_24" HREF="terminal_interface-curses-menus__ads.htm#ref_617_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_891_24" HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_773_16">Menu_Term</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_602_33">Men</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_602_13">Get_Menu_Term_Hook</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_779_14" HREF="terminal_interface-curses-menus__ads.htm#ref_611_14">Redefine</A></span> (<span class="symbol"><A NAME="ref_779_24" HREF="terminal_interface-curses-menus__ads.htm#ref_611_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_780_24" HREF="terminal_interface-curses-menus__ads.htm#ref_612_24">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_176_9">Item_Array_Access</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_893_16">Set_Items</A></FONT> (<FONT COLOR=red><A NAME="ref_893_27" HREF="terminal_interface-curses-menus__adb.htm#ref_893_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_894_27" HREF="terminal_interface-curses-menus__adb.htm#ref_893_16">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_782_16">Set_Items</A></span> (<span class="symbol"><A NAME="ref_782_27" HREF="terminal_interface-curses-menus__adb.htm#ref_782_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_783_27" HREF="terminal_interface-curses-menus__adb.htm#ref_782_16">Items</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Set_Items, "set_menu_items");
-
-- <FONT COLOR=red><A NAME="ref_897_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A>;
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>;
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#ref_612_24">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_612_24">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_612_24">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_612_24">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_111_4">Menu_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_897_7">Res</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_893_16">Set_Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_617_24">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_618_24">Items</A>.<b>all</b>'Address);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_897_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_897_7">Res</A>);
-- <b>end</b> <b>if</b>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_782_16">Set_Items</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_611_24">Men</A>, <A HREF="terminal_interface-curses-menus__ads.htm#ref_612_24">Items</A>.<b>all</b>'Address));
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_617_14">Redefine</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_611_14">Redefine</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_910_13" HREF="terminal_interface-curses-menus__ads.htm#ref_633_13">Item_Count</A></FONT> (<FONT COLOR=red><A NAME="ref_910_25" HREF="terminal_interface-curses-menus__ads.htm#ref_633_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> Natural
-+ <b>function</b> <span class="symbol"><A NAME="ref_795_13" HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Item_Count</A></span> (<span class="symbol"><A NAME="ref_795_25" HREF="terminal_interface-curses-menus__ads.htm#ref_627_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> Natural
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_912_16">Count</A></FONT> (<FONT COLOR=red><A NAME="ref_912_23" HREF="terminal_interface-curses-menus__adb.htm#ref_912_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_797_16">Count</A></span> (<span class="symbol"><A NAME="ref_797_23" HREF="terminal_interface-curses-menus__adb.htm#ref_797_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Count, "item_count");
- <b>begin</b>
-- <b>return</b> Natural (<A HREF="terminal_interface-curses-menus__adb.htm#ref_912_16">Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_633_25">Men</A>));
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_633_13">Item_Count</A>;
-+ <b>return</b> Natural (<A HREF="terminal_interface-curses-menus__adb.htm#ref_797_16">Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_627_25">Men</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Item_Count</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_918_13" HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Items</A></FONT> (<FONT COLOR=red><A NAME="ref_918_20" HREF="terminal_interface-curses-menus__ads.htm#ref_627_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_919_20" HREF="terminal_interface-curses-menus__ads.htm#ref_628_20">Index</A></FONT> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_803_13" HREF="terminal_interface-curses-menus__ads.htm#ref_621_13">Items</A></span> (<span class="symbol"><A NAME="ref_803_20" HREF="terminal_interface-curses-menus__ads.htm#ref_621_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_804_20" HREF="terminal_interface-curses-menus__ads.htm#ref_622_20">Index</A></span> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>
- <b>is</b>
- <b>use</b> I_Array;
-
-- <b>function</b> C_Mitems (<FONT COLOR=red><A NAME="ref_923_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> Pointer;
-+ <b>function</b> C_Mitems (<span class="symbol"><A NAME="ref_808_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> Pointer;
- <b>pragma</b> Import (C, C_Mitems, "menu_items");
-
-- P : Pointer := C_Mitems (<A HREF="terminal_interface-curses-menus__ads.htm#ref_627_20">Men</A>);
-+ P : Pointer := C_Mitems (<A HREF="terminal_interface-curses-menus__ads.htm#ref_621_20">Men</A>);
- <b>begin</b>
-- <b>if</b> P = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_628_20">Index</A> &gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_633_13">Item_Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_627_20">Men</A>) <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>;
-+ <b>if</b> P = <b>null</b> <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_622_20">Index</A> &gt; <A HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Item_Count</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_621_20">Men</A>) <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_111_4">Menu_Exception</A>;
- <b>else</b>
-- P := P + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_628_20">Index</A>) - 1);
-+ P := P + ptrdiff_t (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_622_20">Index</A>) - 1);
- <b>return</b> P.<b>all</b>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Items</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_621_13">Items</A>;
-
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_937_13" HREF="terminal_interface-curses-menus__ads.htm#ref_642_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_937_21" HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_822_13" HREF="terminal_interface-curses-menus__ads.htm#ref_636_13">Create</A></span> (<span class="symbol"><A NAME="ref_822_21" HREF="terminal_interface-curses-menus__ads.htm#ref_636_21">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_176_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_939_16">Newmenu</A></FONT> (<FONT COLOR=red><A NAME="ref_939_25" HREF="terminal_interface-curses-menus__adb.htm#ref_939_16">Items</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_824_16">Newmenu</A></span> (<span class="symbol"><A NAME="ref_824_25" HREF="terminal_interface-curses-menus__adb.htm#ref_824_16">Items</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
- <b>pragma</b> Import (C, Newmenu, "new_menu");
-
-- <FONT COLOR=red><A NAME="ref_942_7">M</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_827_7">M</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>;
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-menus__ads.htm#ref_636_21">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_636_21">Items</A>'Last) = <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_636_21">Items</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_636_21">Items</A>'Last) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_111_4">Menu_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-menus__adb.htm#ref_942_7">M</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_939_16">Newmenu</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_642_21">Items</A>.<b>all</b>'Address);
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_942_7">M</A> = <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_116_4">Menu_Exception</A>;
-+ <A HREF="terminal_interface-curses-menus__adb.htm#ref_827_7">M</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_824_16">Newmenu</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_636_21">Items</A>.<b>all</b>'Address);
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_827_7">M</A> = <A HREF="terminal_interface-curses-menus__ads.htm#ref_58_4">Null_Menu</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_111_4">Menu_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_942_7">M</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_827_7">M</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_642_13">Create</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_636_13">Create</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_956_14" HREF="terminal_interface-curses-menus__ads.htm#ref_649_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_956_22" HREF="terminal_interface-curses-menus__ads.htm#ref_649_22">Men</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_841_14" HREF="terminal_interface-curses-menus__ads.htm#ref_643_14">Delete</A></span> (<span class="symbol"><A NAME="ref_841_22" HREF="terminal_interface-curses-menus__ads.htm#ref_643_22">Men</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_958_16">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_958_22" HREF="terminal_interface-curses-menus__adb.htm#ref_958_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_843_16">Free</A></span> (<span class="symbol"><A NAME="ref_843_22" HREF="terminal_interface-curses-menus__adb.htm#ref_843_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Free, "free_menu");
-
-- <FONT COLOR=red><A NAME="ref_961_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_958_16">Free</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_649_22">Men</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_961_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_961_7">Res</A>);
-- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_649_22">Men</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_649_14">Delete</A>;
--
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_970_13" HREF="terminal_interface-curses-menus__ads.htm#ref_664_13">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_970_21" HREF="terminal_interface-curses-menus__ads.htm#ref_664_21">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_971_21" HREF="terminal_interface-curses-menus__ads.htm#ref_665_21">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_658_9">Driver_Result</A>
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_843_16">Free</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_643_22">Men</A>));
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_643_22">Men</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_58_4">Null_Menu</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_643_14">Delete</A>;
-+
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_852_13" HREF="terminal_interface-curses-menus__ads.htm#ref_658_13">Driver</A></span> (<span class="symbol"><A NAME="ref_852_21" HREF="terminal_interface-curses-menus__ads.htm#ref_658_21">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_853_21" HREF="terminal_interface-curses-menus__ads.htm#ref_659_21">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_652_9">Driver_Result</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_973_16">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_973_24" HREF="terminal_interface-curses-menus__adb.htm#ref_973_16">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_974_24" HREF="terminal_interface-curses-menus__adb.htm#ref_973_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_855_16">Driver</A></span> (<span class="symbol"><A NAME="ref_855_24" HREF="terminal_interface-curses-menus__adb.htm#ref_855_16">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_856_24" HREF="terminal_interface-curses-menus__adb.htm#ref_855_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A>;
- <b>pragma</b> Import (C, Driver, "menu_driver");
-
-- <FONT COLOR=red><A NAME="ref_977_7">R</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_12">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_973_16">Driver</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_664_21">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_665_21">Key</A>));
-+ <span class="symbol"><A NAME="ref_859_7">R</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_9">Eti_Error</A> := <A HREF="terminal_interface-curses-menus__adb.htm#ref_855_16">Driver</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_658_21">Men</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_659_21">Key</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_977_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_80_4">E_Ok</A> <b>then</b>
-- <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_977_7">R</A> <b>is</b>
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_4">E_Unknown_Command</A> =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_660_27">Unknown_Request</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_89_4">E_No_Match</A> =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_661_27">No_Match</A>;
-- <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_4">E_Request_Denied</A> |
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_90_4">E_Not_Selectable</A> =&gt; <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_659_27">Request_Denied</A>;
-- <b>when</b> <b>others</b> =&gt;
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_96_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_977_7">R</A>);
-- <b>end</b> <b>case</b>;
-- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_658_27">Menu_Ok</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_664_13">Driver</A>;
-+ <b>case</b> <A HREF="terminal_interface-curses-menus__adb.htm#ref_859_7">R</A> <b>is</b>
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_78_7">E_Unknown_Command</A> =&gt;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_654_27">Unknown_Request</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_77_7">E_No_Match</A> =&gt;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_655_27">No_Match</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_74_7">E_Request_Denied</A> | <A HREF="terminal_interface-curses-aux__ads.htm#ref_76_7">E_Not_Selectable</A> =&gt;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_653_27">Request_Denied</A>;
-+ <b>when</b> <b>others</b> =&gt;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_88_14">Eti_Exception</A> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_859_7">R</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_652_27">Menu_Ok</A>;
-+ <b>end</b> <b>case</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_658_13">Driver</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_992_14" HREF="terminal_interface-curses-menus__ads.htm#ref_184_14">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_992_20" HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>;
-- <FONT COLOR=red><A NAME="ref_993_20" HREF="terminal_interface-curses-menus__ads.htm#ref_185_20">Free_Items</A></FONT> : Boolean := False)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_874_14" HREF="terminal_interface-curses-menus__ads.htm#ref_178_14">Free</A></span> (<span class="symbol"><A NAME="ref_874_20" HREF="terminal_interface-curses-menus__ads.htm#ref_178_20">IA</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_176_9">Item_Array_Access</A>;
-+ <span class="symbol"><A NAME="ref_875_20" HREF="terminal_interface-curses-menus__ads.htm#ref_179_20">Free_Items</A></span> : Boolean := False)
- <b>is</b>
- <b>procedure</b> Release <b>is</b> <b>new</b> Ada.Unchecked_Deallocation
-- (Item_Array, <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>);
-+ (Item_Array, <A HREF="terminal_interface-curses-menus__ads.htm#ref_176_9">Item_Array_Access</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_185_20">Free_Items</A> <b>then</b>
-- <b>for</b> <FONT COLOR=red><A NAME="ref_999_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>'First .. (<A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>'Last - 1) <b>loop</b>
-- <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_999_14">I</A>) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> <b>then</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_207_14">Delete</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_999_14">I</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_178_20">IA</A> /= <b>null</b> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_179_20">Free_Items</A> <b>then</b>
-+ <b>for</b> <span class="symbol"><A NAME="ref_881_14">I</A></span> <b>in</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_178_20">IA</A>'First .. (<A HREF="terminal_interface-curses-menus__ads.htm#ref_178_20">IA</A>'Last - 1) <b>loop</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_178_20">IA</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_881_14">I</A>) /= <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_201_14">Delete</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_178_20">IA</A>.<b>all</b> (<A HREF="terminal_interface-curses-menus__adb.htm#ref_881_14">I</A>));
- <b>end</b> <b>if</b>;
- <b>end</b> <b>loop</b>;
- <b>end</b> <b>if</b>;
-- Release (<A HREF="terminal_interface-curses-menus__ads.htm#ref_184_20">IA</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_184_14">Free</A>;
-+ Release (<A HREF="terminal_interface-curses-menus__ads.htm#ref_178_20">IA</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_178_14">Free</A>;
-
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1009_13" HREF="terminal_interface-curses-menus__ads.htm#ref_148_13">Default_Menu_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_891_13" HREF="terminal_interface-curses-menus__ads.htm#ref_145_13">Default_Menu_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>
- <b>is</b>
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_356_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_148_13">Default_Menu_Options</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_350_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_58_4">Null_Menu</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_145_13">Default_Menu_Options</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1015_13" HREF="terminal_interface-curses-menus__ads.htm#ref_172_13">Default_Item_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_897_13" HREF="terminal_interface-curses-menus__ads.htm#ref_166_13">Default_Item_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>
- <b>is</b>
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_260_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_172_13">Default_Item_Options</A>;
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-+ <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_254_13">Get_Options</A> (<A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_166_13">Default_Item_Options</A>;
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-menus__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-menus__ads.htm 2011-03-19 23:18:40.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-menus__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,685 +1,691 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-menus.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-menus.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-menus.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-menus.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Menu --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.28 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 18:35:22 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- menu binding.</EM></FONT>
--<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT>
--<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Menu --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.31 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:57 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> System;
- <b>with</b> Ada.Characters.Latin_1;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_49_35" HREF="terminal_interface-curses-menus__adb.htm#ref_51_40">Menus</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>);
-- <b>pragma</b> Linker_Options ("-lmenu");
-- <b>pragma</b> Linker_Options ("-lncurses");
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_45_35" HREF="terminal_interface-curses-menus__adb.htm#ref_49_40">Menus</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>);
-+ <b>pragma</b> Linker_Options ("-lmenu" &amp; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_9_4">DFT_ARG_SUFFIX</A>);
-
- Space : Character <b>renames</b> Ada.Characters.Latin_1.Space;
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_56_9">Item</A></FONT> <b>is</b> <b>private</b>;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_57_9">Menu</A></FONT> <b>is</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_51_9">Item</A></span> <b>is</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_52_9">Menu</A></span> <b>is</b> <b>private</b>;
-
-- <FONT COLOR=green><EM>---------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Interface constants --</EM></FONT>
-- <FONT COLOR=green><EM>---------------------------</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_62_4">Null_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_63_4">Null_Menu</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
--
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_65_12">Menu_Request_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>
-- <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1) .. (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 17);
--
-- <FONT COLOR=green><EM>-- The prefix M_ stands for "Menu Request"</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_69_4">M_Left_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 1;
-- <FONT COLOR=red><A NAME="ref_70_4">M_Right_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 2;
-- <FONT COLOR=red><A NAME="ref_71_4">M_Up_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 3;
-- <FONT COLOR=red><A NAME="ref_72_4">M_Down_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 4;
-- <FONT COLOR=red><A NAME="ref_73_4">M_ScrollUp_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 5;
-- <FONT COLOR=red><A NAME="ref_74_4">M_ScrollDown_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 6;
-- <FONT COLOR=red><A NAME="ref_75_4">M_ScrollDown_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 7;
-- <FONT COLOR=red><A NAME="ref_76_4">M_ScrollUp_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 8;
-- <FONT COLOR=red><A NAME="ref_77_4">M_First_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 9;
-- <FONT COLOR=red><A NAME="ref_78_4">M_Last_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 10;
-- <FONT COLOR=red><A NAME="ref_79_4">M_Next_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 11;
-- <FONT COLOR=red><A NAME="ref_80_4">M_Previous_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 12;
-- <FONT COLOR=red><A NAME="ref_81_4">M_Toggle_Item</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 13;
-- <FONT COLOR=red><A NAME="ref_82_4">M_Clear_Pattern</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 14;
-- <FONT COLOR=red><A NAME="ref_83_4">M_Back_Pattern</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 15;
-- <FONT COLOR=red><A NAME="ref_84_4">M_Next_Match</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 16;
-- <FONT COLOR=red><A NAME="ref_85_4">M_Previous_Match</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 17;
--
-- <FONT COLOR=green><EM>-- For those who like the old 'C' names for the request codes</EM></FONT>
-- REQ_LEFT_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_69_4">M_Left_Item</A>;
-- REQ_RIGHT_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_70_4">M_Right_Item</A>;
-- REQ_UP_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_71_4">M_Up_Item</A>;
-- REQ_DOWN_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_72_4">M_Down_Item</A>;
-- REQ_SCR_ULINE : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_73_4">M_ScrollUp_Line</A>;
-- REQ_SCR_DLINE : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_74_4">M_ScrollDown_Line</A>;
-- REQ_SCR_DPAGE : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_75_4">M_ScrollDown_Page</A>;
-- REQ_SCR_UPAGE : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_76_4">M_ScrollUp_Page</A>;
-- REQ_FIRST_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_77_4">M_First_Item</A>;
-- REQ_LAST_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_78_4">M_Last_Item</A>;
-- REQ_NEXT_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_79_4">M_Next_Item</A>;
-- REQ_PREV_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_80_4">M_Previous_Item</A>;
-- REQ_TOGGLE_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_81_4">M_Toggle_Item</A>;
-- REQ_CLEAR_PATTERN : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_82_4">M_Clear_Pattern</A>;
-- REQ_BACK_PATTERN : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_83_4">M_Back_Pattern</A>;
-- REQ_NEXT_MATCH : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_84_4">M_Next_Match</A>;
-- REQ_PREV_MATCH : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_85_4">M_Previous_Match</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_106_14" HREF="terminal_interface-curses-menus__adb.htm#ref_77_14">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_106_28" HREF="terminal_interface-curses-menus__adb.htm#ref_77_28">Key</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>;
-- <FONT COLOR=red><A NAME="ref_107_28" HREF="terminal_interface-curses-menus__adb.htm#ref_78_28">Name</A></FONT> : <b>out</b> String);
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_109_14" HREF="terminal_interface-curses-menus__adb.htm#ref_86_13">Request_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_109_28" HREF="terminal_interface-curses-menus__adb.htm#ref_86_27">Key</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_12">Menu_Request_Code</A>) <b>return</b> String;
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
--
-- <FONT COLOR=green><EM>------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Exceptions --</EM></FONT>
-- <FONT COLOR=green><EM>------------------</EM></FONT>
--
-- <FONT COLOR=red><A NAME="ref_116_4">Menu_Exception</A></FONT> : <b>exception</b>;
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>-- Menu options</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <b>pragma</b> Warnings (Off);
-- <b>type</b> <FONT COLOR=red><A NAME="ref_121_9">Menu_Option_Set</A></FONT> <b>is</b>
-+ <span class="comment"><EM>---------------------------</EM></span>
-+ <span class="comment"><EM>-- Interface constants --</EM></span>
-+ <span class="comment"><EM>---------------------------</EM></span>
-+ <span class="symbol"><A NAME="ref_57_4">Null_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_58_4">Null_Menu</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_60_12">Menu_Request_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A>
-+ <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 1) .. (<A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 17);
-+
-+ <span class="comment"><EM>-- The prefix M_ stands for "Menu Request"</EM></span>
-+ <span class="symbol"><A NAME="ref_64_4">M_Left_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 1;
-+ <span class="symbol"><A NAME="ref_65_4">M_Right_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 2;
-+ <span class="symbol"><A NAME="ref_66_4">M_Up_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 3;
-+ <span class="symbol"><A NAME="ref_67_4">M_Down_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 4;
-+ <span class="symbol"><A NAME="ref_68_4">M_ScrollUp_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 5;
-+ <span class="symbol"><A NAME="ref_69_4">M_ScrollDown_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 6;
-+ <span class="symbol"><A NAME="ref_70_4">M_ScrollDown_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 7;
-+ <span class="symbol"><A NAME="ref_71_4">M_ScrollUp_Page</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 8;
-+ <span class="symbol"><A NAME="ref_72_4">M_First_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 9;
-+ <span class="symbol"><A NAME="ref_73_4">M_Last_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 10;
-+ <span class="symbol"><A NAME="ref_74_4">M_Next_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 11;
-+ <span class="symbol"><A NAME="ref_75_4">M_Previous_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 12;
-+ <span class="symbol"><A NAME="ref_76_4">M_Toggle_Item</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 13;
-+ <span class="symbol"><A NAME="ref_77_4">M_Clear_Pattern</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 14;
-+ <span class="symbol"><A NAME="ref_78_4">M_Back_Pattern</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 15;
-+ <span class="symbol"><A NAME="ref_79_4">M_Next_Match</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 16;
-+ <span class="symbol"><A NAME="ref_80_4">M_Previous_Match</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 17;
-+
-+ <span class="comment"><EM>-- For those who like the old 'C' names for the request codes</EM></span>
-+ REQ_LEFT_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_64_4">M_Left_Item</A>;
-+ REQ_RIGHT_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_65_4">M_Right_Item</A>;
-+ REQ_UP_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_66_4">M_Up_Item</A>;
-+ REQ_DOWN_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_67_4">M_Down_Item</A>;
-+ REQ_SCR_ULINE : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_68_4">M_ScrollUp_Line</A>;
-+ REQ_SCR_DLINE : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_69_4">M_ScrollDown_Line</A>;
-+ REQ_SCR_DPAGE : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_70_4">M_ScrollDown_Page</A>;
-+ REQ_SCR_UPAGE : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_71_4">M_ScrollUp_Page</A>;
-+ REQ_FIRST_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_72_4">M_First_Item</A>;
-+ REQ_LAST_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_73_4">M_Last_Item</A>;
-+ REQ_NEXT_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_74_4">M_Next_Item</A>;
-+ REQ_PREV_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_75_4">M_Previous_Item</A>;
-+ REQ_TOGGLE_ITEM : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_76_4">M_Toggle_Item</A>;
-+ REQ_CLEAR_PATTERN : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_77_4">M_Clear_Pattern</A>;
-+ REQ_BACK_PATTERN : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_78_4">M_Back_Pattern</A>;
-+ REQ_NEXT_MATCH : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_79_4">M_Next_Match</A>;
-+ REQ_PREV_MATCH : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_80_4">M_Previous_Match</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_101_14" HREF="terminal_interface-curses-menus__adb.htm#ref_59_14">Request_Name</A></span> (<span class="symbol"><A NAME="ref_101_28" HREF="terminal_interface-curses-menus__adb.htm#ref_59_28">Key</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A>;
-+ <span class="symbol"><A NAME="ref_102_28" HREF="terminal_interface-curses-menus__adb.htm#ref_60_28">Name</A></span> : <b>out</b> String);
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_104_14" HREF="terminal_interface-curses-menus__adb.htm#ref_68_13">Request_Name</A></span> (<span class="symbol"><A NAME="ref_104_28" HREF="terminal_interface-curses-menus__adb.htm#ref_68_27">Key</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_60_12">Menu_Request_Code</A>) <b>return</b> String;
-+ <span class="comment"><EM>-- Same as function</EM></span>
-+
-+ <span class="comment"><EM>------------------</EM></span>
-+ <span class="comment"><EM>-- Exceptions --</EM></span>
-+ <span class="comment"><EM>------------------</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_111_4">Menu_Exception</A></span> : <b>exception</b>;
-+ <span class="comment"><EM>--</EM></span>
-+ <span class="comment"><EM>-- Menu options</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_115_9">Menu_Option_Set</A></span> <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_123_10">One_Valued</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_124_10">Show_Descriptions</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_125_10">Row_Major_Order</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_126_10">Ignore_Case</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_127_10">Show_Matches</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_128_10">Non_Cyclic</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_129_10">Unused</A></FONT> : Boolean;
-+ <span class="symbol"><A NAME="ref_117_10">One_Valued</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_118_10">Show_Descriptions</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_119_10">Row_Major_Order</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_120_10">Ignore_Case</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_121_10">Show_Matches</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_122_10">Non_Cyclic</A></span> : Boolean;
- <b>end</b> <b>record</b>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>);
-+ <b>pragma</b> Convention (C_Pass_By_Copy, <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>);
-
-- <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A> <b>use</b>
-+ <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A> <b>use</b>
- <b>record</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_123_10">One_Valued</A> <b>at</b> 0 <b>range</b> 0 .. 0;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_124_10">Show_Descriptions</A> <b>at</b> 0 <b>range</b> 1 .. 1;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_125_10">Row_Major_Order</A> <b>at</b> 0 <b>range</b> 2 .. 2;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_126_10">Ignore_Case</A> <b>at</b> 0 <b>range</b> 3 .. 3;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_127_10">Show_Matches</A> <b>at</b> 0 <b>range</b> 4 .. 4;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_128_10">Non_Cyclic</A> <b>at</b> 0 <b>range</b> 5 .. 5;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_129_10">Unused</A> <b>at</b> 0 <b>range</b> 6 .. 31;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_117_10">One_Valued</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_257_4">O_ONEVALUE_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_258_4">O_ONEVALUE_Last</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_118_10">Show_Descriptions</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_259_4">O_SHOWDESC_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_260_4">O_SHOWDESC_Last</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_119_10">Row_Major_Order</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_261_4">O_ROWMAJOR_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_262_4">O_ROWMAJOR_Last</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_120_10">Ignore_Case</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_263_4">O_IGNORECASE_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_264_4">O_IGNORECASE_Last</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_10">Show_Matches</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_265_4">O_SHOWMATCH_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_266_4">O_SHOWMATCH_Last</A>;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_122_10">Non_Cyclic</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_267_4">O_NONCYCLIC_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_268_4">O_NONCYCLIC_Last</A>;
- <b>end</b> <b>record</b>;
-- <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>'Size <b>use</b> 32;
-- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT>
-- <FONT COLOR=green><EM>-- different on your system.</EM></FONT>
-+ <b>pragma</b> Warnings (Off);
-+ <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>'Size <b>use</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_269_4">Menu_Options_Size</A>;
- <b>pragma</b> Warnings (On);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_148_13" HREF="terminal_interface-curses-menus__adb.htm#ref_1009_13">Default_Menu_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>;
-- <FONT COLOR=green><EM>-- Initial default options for a menu.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_148_13">Default_Menu_Options</A>);
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>-- Item options</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <b>pragma</b> Warnings (Off);
-- <b>type</b> <FONT COLOR=red><A NAME="ref_155_9">Item_Option_Set</A></FONT> <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_145_13" HREF="terminal_interface-curses-menus__adb.htm#ref_891_13">Default_Menu_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>;
-+ <span class="comment"><EM>-- Initial default options for a menu.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_145_13">Default_Menu_Options</A>);
-+ <span class="comment"><EM>--</EM></span>
-+ <span class="comment"><EM>-- Item options</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_151_9">Item_Option_Set</A></span> <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_157_10">Selectable</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_158_10">Unused</A></FONT> : Boolean;
-+ <span class="symbol"><A NAME="ref_153_10">Selectable</A></span> : Boolean;
- <b>end</b> <b>record</b>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>);
-+ <b>pragma</b> Convention (C_Pass_By_Copy, <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>);
-
-- <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A> <b>use</b>
-+ <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A> <b>use</b>
- <b>record</b>
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_157_10">Selectable</A> <b>at</b> 0 <b>range</b> 0 .. 0;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_158_10">Unused</A> <b>at</b> 0 <b>range</b> 1 .. 31;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_153_10">Selectable</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_273_4">O_SELECTABLE_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_274_4">O_SELECTABLE_Last</A>;
- <b>end</b> <b>record</b>;
-- <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>'Size <b>use</b> 32;
-- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT>
-- <FONT COLOR=green><EM>-- different on your system.</EM></FONT>
-+ <b>pragma</b> Warnings (Off);
-+ <b>for</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>'Size <b>use</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_275_4">Item_Options_Size</A>;
- <b>pragma</b> Warnings (On);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_172_13" HREF="terminal_interface-curses-menus__adb.htm#ref_1015_13">Default_Item_Options</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>;
-- <FONT COLOR=green><EM>-- Initial default options for an item.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_172_13">Default_Item_Options</A>);
--
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>-- Item Array</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <b>type</b> Item_Array <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_166_13" HREF="terminal_interface-curses-menus__adb.htm#ref_897_13">Default_Item_Options</A></span> <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>;
-+ <span class="comment"><EM>-- Initial default options for an item.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_166_13">Default_Item_Options</A>);
-+
-+ <span class="comment"><EM>--</EM></span>
-+ <span class="comment"><EM>-- Item Array</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <b>type</b> Item_Array <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
- <b>pragma</b> Convention (C, Item_Array);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_182_9">Item_Array_Access</A></FONT> <b>is</b> <b>access</b> Item_Array;
-+ <b>type</b> <span class="symbol"><A NAME="ref_176_9">Item_Array_Access</A></span> <b>is</b> <b>access</b> Item_Array;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_184_14" HREF="terminal_interface-curses-menus__adb.htm#ref_992_14">Free</A></FONT> (<FONT COLOR=red><A NAME="ref_184_20" HREF="terminal_interface-curses-menus__adb.htm#ref_992_20">IA</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>;
-- <FONT COLOR=red><A NAME="ref_185_20" HREF="terminal_interface-curses-menus__adb.htm#ref_993_20">Free_Items</A></FONT> : Boolean := False);
-- <FONT COLOR=green><EM>-- Release the memory for an allocated item array</EM></FONT>
-- <FONT COLOR=green><EM>-- If Free_Items is True, call Delete() for all the items in</EM></FONT>
-- <FONT COLOR=green><EM>-- the array.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_new.3x.html">mitem_new.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_195_13" HREF="terminal_interface-curses-menus__adb.htm#ref_94_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_195_21" HREF="terminal_interface-curses-menus__adb.htm#ref_94_21">Name</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_196_21" HREF="terminal_interface-curses-menus__adb.htm#ref_95_21">Description</A></FONT> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Not inlined.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>function</b> New_Item (<FONT COLOR=red><A NAME="ref_201_23">Name</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_202_23">Description</A></FONT> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>
-- <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_195_13">Create</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_207_14" HREF="terminal_interface-curses-menus__adb.htm#ref_124_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_207_22" HREF="terminal_interface-curses-menus__adb.htm#ref_124_22">Itm</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">free_item()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Resets Itm to Null_Item</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_value.3x.html">mitem_value.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_216_14" HREF="terminal_interface-curses-menus__adb.htm#ref_152_14">Set_Value</A></FONT> (<FONT COLOR=red><A NAME="ref_216_25" HREF="terminal_interface-curses-menus__adb.htm#ref_152_25">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_217_25" HREF="terminal_interface-curses-menus__adb.htm#ref_153_25">Value</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_value.3x.html">set_item_value()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_216_14">Set_Value</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_222_13" HREF="terminal_interface-curses-menus__adb.htm#ref_166_13">Value</A></FONT> (<FONT COLOR=red><A NAME="ref_222_20" HREF="terminal_interface-curses-menus__adb.htm#ref_166_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_value.3x.html">item_value()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_222_13">Value</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_visible.3x.html">mitem_visible.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_6"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_231_13" HREF="terminal_interface-curses-menus__adb.htm#ref_179_13">Visible</A></FONT> (<FONT COLOR=red><A NAME="ref_231_22" HREF="terminal_interface-curses-menus__adb.htm#ref_179_22">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_visible.3x.html">item_visible()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_231_13">Visible</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_opts.3x.html">mitem_opts.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_7"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_240_14" HREF="terminal_interface-curses-menus__adb.htm#ref_191_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_240_27" HREF="terminal_interface-curses-menus__adb.htm#ref_191_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_241_27" HREF="terminal_interface-curses-menus__adb.htm#ref_192_27">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">set_item_opts()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- An overloaded Set_Options is defined later. Pragma Inline appears there</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_8"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_246_14" HREF="terminal_interface-curses-menus__adb.htm#ref_207_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_246_30" HREF="terminal_interface-curses-menus__adb.htm#ref_207_30">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_247_30" HREF="terminal_interface-curses-menus__adb.htm#ref_208_30">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>;
-- <FONT COLOR=red><A NAME="ref_248_30" HREF="terminal_interface-curses-menus__adb.htm#ref_209_30">On</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts_on()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: item_opts_off()</EM></FONT>
-- <FONT COLOR=green><EM>-- An overloaded Switch_Options is defined later.</EM></FONT>
-- <FONT COLOR=green><EM>-- Pragma Inline appears there</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_9"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_255_14" HREF="terminal_interface-curses-menus__adb.htm#ref_231_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_255_27" HREF="terminal_interface-curses-menus__adb.htm#ref_231_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_256_27" HREF="terminal_interface-curses-menus__adb.htm#ref_232_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_10"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_260_13" HREF="terminal_interface-curses-menus__adb.htm#ref_242_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_260_26" HREF="terminal_interface-curses-menus__adb.htm#ref_242_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_155_9">Item_Option_Set</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- An overloaded Get_Options is defined later. Pragma Inline appears there</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_name.3x.html">mitem_name.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_11"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_269_14" HREF="terminal_interface-curses-menus__adb.htm#ref_250_14">Name</A></FONT> (<FONT COLOR=red><A NAME="ref_269_20" HREF="terminal_interface-curses-menus__adb.htm#ref_250_20">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_270_20" HREF="terminal_interface-curses-menus__adb.htm#ref_251_20">Name</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_272_14" HREF="terminal_interface-curses-menus__adb.htm#ref_259_13">Name</A></FONT> (<FONT COLOR=red><A NAME="ref_272_20" HREF="terminal_interface-curses-menus__adb.htm#ref_259_19">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Implemented as function</EM></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_178_14" HREF="terminal_interface-curses-menus__adb.htm#ref_874_14">Free</A></span> (<span class="symbol"><A NAME="ref_178_20" HREF="terminal_interface-curses-menus__adb.htm#ref_874_20">IA</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_176_9">Item_Array_Access</A>;
-+ <span class="symbol"><A NAME="ref_179_20" HREF="terminal_interface-curses-menus__adb.htm#ref_875_20">Free_Items</A></span> : Boolean := False);
-+ <span class="comment"><EM>-- Release the memory for an allocated item array</EM></span>
-+ <span class="comment"><EM>-- If Free_Items is True, call Delete() for all the items in</EM></span>
-+ <span class="comment"><EM>-- the array.</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_new.3x.html">mitem_new.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_189_13" HREF="terminal_interface-curses-menus__adb.htm#ref_76_13">Create</A></span> (<span class="symbol"><A NAME="ref_189_21" HREF="terminal_interface-curses-menus__adb.htm#ref_76_21">Name</A></span> : String;
-+ <span class="symbol"><A NAME="ref_190_21" HREF="terminal_interface-curses-menus__adb.htm#ref_77_21">Description</A></span> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></span>
-+ <span class="comment"><EM>-- Not inlined.</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>function</b> New_Item (<span class="symbol"><A NAME="ref_195_23">Name</A></span> : String;
-+ <span class="symbol"><A NAME="ref_196_23">Description</A></span> : String := "") <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>
-+ <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_189_13">Create</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_201_14" HREF="terminal_interface-curses-menus__adb.htm#ref_106_14">Delete</A></span> (<span class="symbol"><A NAME="ref_201_22" HREF="terminal_interface-curses-menus__adb.htm#ref_106_22">Itm</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_new.3x.html">free_item()</A></EM></span>
-+ <span class="comment"><EM>-- Resets Itm to Null_Item</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_value.3x.html">mitem_value.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_210_14" HREF="terminal_interface-curses-menus__adb.htm#ref_130_14">Set_Value</A></span> (<span class="symbol"><A NAME="ref_210_25" HREF="terminal_interface-curses-menus__adb.htm#ref_130_25">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_211_25" HREF="terminal_interface-curses-menus__adb.htm#ref_131_25">Value</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_value.3x.html">set_item_value()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_210_14">Set_Value</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_216_13" HREF="terminal_interface-curses-menus__adb.htm#ref_141_13">Value</A></span> (<span class="symbol"><A NAME="ref_216_20" HREF="terminal_interface-curses-menus__adb.htm#ref_141_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_value.3x.html">item_value()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_216_13">Value</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_visible.3x.html">mitem_visible.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_6"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_225_13" HREF="terminal_interface-curses-menus__adb.htm#ref_154_13">Visible</A></span> (<span class="symbol"><A NAME="ref_225_22" HREF="terminal_interface-curses-menus__adb.htm#ref_154_22">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_visible.3x.html">item_visible()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_225_13">Visible</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_opts.3x.html">mitem_opts.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_7"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_234_14" HREF="terminal_interface-curses-menus__adb.htm#ref_166_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_234_27" HREF="terminal_interface-curses-menus__adb.htm#ref_166_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_235_27" HREF="terminal_interface-curses-menus__adb.htm#ref_167_27">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">set_item_opts()</A></EM></span>
-+ <span class="comment"><EM>-- An overloaded Set_Options is defined later. Pragma Inline appears there</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_8"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_240_14" HREF="terminal_interface-curses-menus__adb.htm#ref_177_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_240_30" HREF="terminal_interface-curses-menus__adb.htm#ref_177_30">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_241_30" HREF="terminal_interface-curses-menus__adb.htm#ref_178_30">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_242_30" HREF="terminal_interface-curses-menus__adb.htm#ref_179_30">On</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts_on()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: item_opts_off()</EM></span>
-+ <span class="comment"><EM>-- An overloaded Switch_Options is defined later.</EM></span>
-+ <span class="comment"><EM>-- Pragma Inline appears there</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_9"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_249_14" HREF="terminal_interface-curses-menus__adb.htm#ref_196_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_249_27" HREF="terminal_interface-curses-menus__adb.htm#ref_196_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_250_27" HREF="terminal_interface-curses-menus__adb.htm#ref_197_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_10"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_254_13" HREF="terminal_interface-curses-menus__adb.htm#ref_206_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_254_26" HREF="terminal_interface-curses-menus__adb.htm#ref_206_26">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_151_9">Item_Option_Set</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></EM></span>
-+ <span class="comment"><EM>-- An overloaded Get_Options is defined later. Pragma Inline appears there</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_name.3x.html">mitem_name.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_11"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_263_14" HREF="terminal_interface-curses-menus__adb.htm#ref_214_14">Name</A></span> (<span class="symbol"><A NAME="ref_263_20" HREF="terminal_interface-curses-menus__adb.htm#ref_214_20">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_264_20" HREF="terminal_interface-curses-menus__adb.htm#ref_215_20">Name</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_266_14" HREF="terminal_interface-curses-menus__adb.htm#ref_223_13">Name</A></span> (<span class="symbol"><A NAME="ref_266_20" HREF="terminal_interface-curses-menus__adb.htm#ref_223_19">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></EM></span>
-+ <span class="comment"><EM>-- Implemented as function</EM></span>
- <b>pragma</b> Inline (Name);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_12"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_278_14" HREF="terminal_interface-curses-menus__adb.htm#ref_267_14">Description</A></FONT> (<FONT COLOR=red><A NAME="ref_278_27" HREF="terminal_interface-curses-menus__adb.htm#ref_267_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=red><A NAME="ref_279_27" HREF="terminal_interface-curses-menus__adb.htm#ref_268_27">Description</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_282_14" HREF="terminal_interface-curses-menus__adb.htm#ref_276_13">Description</A></FONT> (<FONT COLOR=red><A NAME="ref_282_27" HREF="terminal_interface-curses-menus__adb.htm#ref_276_26">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Implemented as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_12"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_272_14" HREF="terminal_interface-curses-menus__adb.htm#ref_231_14">Description</A></span> (<span class="symbol"><A NAME="ref_272_27" HREF="terminal_interface-curses-menus__adb.htm#ref_231_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="symbol"><A NAME="ref_273_27" HREF="terminal_interface-curses-menus__adb.htm#ref_232_27">Description</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_276_14" HREF="terminal_interface-curses-menus__adb.htm#ref_240_13">Description</A></span> (<span class="symbol"><A NAME="ref_276_27" HREF="terminal_interface-curses-menus__adb.htm#ref_240_26">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></EM></span>
-+ <span class="comment"><EM>-- Implemented as function</EM></span>
- <b>pragma</b> Inline (Description);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/mitem_current.3x.html">mitem_current.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_13"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_292_14" HREF="terminal_interface-curses-menus__adb.htm#ref_284_14">Set_Current</A></FONT> (<FONT COLOR=red><A NAME="ref_292_27" HREF="terminal_interface-curses-menus__adb.htm#ref_284_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_293_27" HREF="terminal_interface-curses-menus__adb.htm#ref_285_27">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">set_current_item()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_292_14">Set_Current</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_14"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_298_13" HREF="terminal_interface-curses-menus__adb.htm#ref_298_13">Current</A></FONT> (<FONT COLOR=red><A NAME="ref_298_22" HREF="terminal_interface-curses-menus__adb.htm#ref_298_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">current_item()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_298_13">Current</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_15"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_303_14" HREF="terminal_interface-curses-menus__adb.htm#ref_311_14">Set_Top_Row</A></FONT> (<FONT COLOR=red><A NAME="ref_303_27" HREF="terminal_interface-curses-menus__adb.htm#ref_311_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_304_27" HREF="terminal_interface-curses-menus__adb.htm#ref_312_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">set_top_row()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_303_14">Set_Top_Row</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_16"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_309_13" HREF="terminal_interface-curses-menus__adb.htm#ref_325_13">Top_Row</A></FONT> (<FONT COLOR=red><A NAME="ref_309_22" HREF="terminal_interface-curses-menus__adb.htm#ref_325_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">top_row()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_309_13">Top_Row</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_17"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_314_13" HREF="terminal_interface-curses-menus__adb.htm#ref_338_13">Get_Index</A></FONT> (<FONT COLOR=red><A NAME="ref_314_24" HREF="terminal_interface-curses-menus__adb.htm#ref_338_24">Itm</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>) <b>return</b> Positive;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">item_index()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Please note that in this binding we start the numbering of items</EM></FONT>
-- <FONT COLOR=green><EM>-- with 1. So this is number is one more than you get from the low</EM></FONT>
-- <FONT COLOR=green><EM>-- level call.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_314_13">Get_Index</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_post.3x.html">menu_post.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_18"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_326_14" HREF="terminal_interface-curses-menus__adb.htm#ref_351_14">Post</A></FONT> (<FONT COLOR=red><A NAME="ref_326_20" HREF="terminal_interface-curses-menus__adb.htm#ref_351_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_327_20" HREF="terminal_interface-curses-menus__adb.htm#ref_352_20">Post</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_post.3x.html">post_menu()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: unpost_menu()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_326_14">Post</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_opts.3x.html">menu_opts.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_19"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_337_14" HREF="terminal_interface-curses-menus__adb.htm#ref_371_14">Set_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_337_27" HREF="terminal_interface-curses-menus__adb.htm#ref_371_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_338_27" HREF="terminal_interface-curses-menus__adb.htm#ref_372_27">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">set_menu_opts()</A></EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/mitem_current.3x.html">mitem_current.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_13"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_286_14" HREF="terminal_interface-curses-menus__adb.htm#ref_248_14">Set_Current</A></span> (<span class="symbol"><A NAME="ref_286_27" HREF="terminal_interface-curses-menus__adb.htm#ref_248_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_287_27" HREF="terminal_interface-curses-menus__adb.htm#ref_249_27">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">set_current_item()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_286_14">Set_Current</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_14"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_292_13" HREF="terminal_interface-curses-menus__adb.htm#ref_259_13">Current</A></span> (<span class="symbol"><A NAME="ref_292_22" HREF="terminal_interface-curses-menus__adb.htm#ref_259_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">current_item()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_292_13">Current</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_15"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_297_14" HREF="terminal_interface-curses-menus__adb.htm#ref_272_14">Set_Top_Row</A></span> (<span class="symbol"><A NAME="ref_297_27" HREF="terminal_interface-curses-menus__adb.htm#ref_272_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_298_27" HREF="terminal_interface-curses-menus__adb.htm#ref_273_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">set_top_row()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_297_14">Set_Top_Row</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_16"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_303_13" HREF="terminal_interface-curses-menus__adb.htm#ref_283_13">Top_Row</A></span> (<span class="symbol"><A NAME="ref_303_22" HREF="terminal_interface-curses-menus__adb.htm#ref_283_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">top_row()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_303_13">Top_Row</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_17"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_308_13" HREF="terminal_interface-curses-menus__adb.htm#ref_296_13">Get_Index</A></span> (<span class="symbol"><A NAME="ref_308_24" HREF="terminal_interface-curses-menus__adb.htm#ref_296_24">Itm</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>) <b>return</b> Positive;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/mitem_current.3x.html">item_index()</A></EM></span>
-+ <span class="comment"><EM>-- Please note that in this binding we start the numbering of items</EM></span>
-+ <span class="comment"><EM>-- with 1. So this is number is one more than you get from the low</EM></span>
-+ <span class="comment"><EM>-- level call.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_308_13">Get_Index</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_post.3x.html">menu_post.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_18"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_320_14" HREF="terminal_interface-curses-menus__adb.htm#ref_309_14">Post</A></span> (<span class="symbol"><A NAME="ref_320_20" HREF="terminal_interface-curses-menus__adb.htm#ref_309_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_321_20" HREF="terminal_interface-curses-menus__adb.htm#ref_310_20">Post</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_post.3x.html">post_menu()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: unpost_menu()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_320_14">Post</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_opts.3x.html">menu_opts.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_19"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_331_14" HREF="terminal_interface-curses-menus__adb.htm#ref_325_14">Set_Options</A></span> (<span class="symbol"><A NAME="ref_331_27" HREF="terminal_interface-curses-menus__adb.htm#ref_325_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_332_27" HREF="terminal_interface-curses-menus__adb.htm#ref_326_27">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">set_menu_opts()</A></EM></span>
- <b>pragma</b> Inline (Set_Options);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_20"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_343_14" HREF="terminal_interface-curses-menus__adb.htm#ref_387_14">Switch_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_343_30" HREF="terminal_interface-curses-menus__adb.htm#ref_387_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_344_30" HREF="terminal_interface-curses-menus__adb.htm#ref_388_30">Options</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>;
-- <FONT COLOR=red><A NAME="ref_345_30" HREF="terminal_interface-curses-menus__adb.htm#ref_389_30">On</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts_on()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: menu_opts_off()</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_20"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_337_14" HREF="terminal_interface-curses-menus__adb.htm#ref_336_14">Switch_Options</A></span> (<span class="symbol"><A NAME="ref_337_30" HREF="terminal_interface-curses-menus__adb.htm#ref_336_30">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_338_30" HREF="terminal_interface-curses-menus__adb.htm#ref_337_30">Options</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>;
-+ <span class="symbol"><A NAME="ref_339_30" HREF="terminal_interface-curses-menus__adb.htm#ref_338_30">On</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts_on()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: menu_opts_off()</EM></span>
- <b>pragma</b> Inline (Switch_Options);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_21"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_351_14" HREF="terminal_interface-curses-menus__adb.htm#ref_411_14">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_351_27" HREF="terminal_interface-curses-menus__adb.htm#ref_411_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_352_27" HREF="terminal_interface-curses-menus__adb.htm#ref_412_27">Options</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_22"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_356_13" HREF="terminal_interface-curses-menus__adb.htm#ref_422_13">Get_Options</A></FONT> (<FONT COLOR=red><A NAME="ref_356_26" HREF="terminal_interface-curses-menus__adb.htm#ref_422_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_121_9">Menu_Option_Set</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_21"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_345_14" HREF="terminal_interface-curses-menus__adb.htm#ref_355_14">Get_Options</A></span> (<span class="symbol"><A NAME="ref_345_27" HREF="terminal_interface-curses-menus__adb.htm#ref_355_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_346_27" HREF="terminal_interface-curses-menus__adb.htm#ref_356_27">Options</A></span> : <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_22"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_350_13" HREF="terminal_interface-curses-menus__adb.htm#ref_365_13">Get_Options</A></span> (<span class="symbol"><A NAME="ref_350_26" HREF="terminal_interface-curses-menus__adb.htm#ref_365_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A> := <A HREF="terminal_interface-curses-menus__ads.htm#ref_58_4">Null_Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_115_9">Menu_Option_Set</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></EM></span>
- <b>pragma</b> Inline (Get_Options);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_win.3x.html">menu_win.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_23"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_365_14" HREF="terminal_interface-curses-menus__adb.htm#ref_430_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_365_26" HREF="terminal_interface-curses-menus__adb.htm#ref_430_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_366_26" HREF="terminal_interface-curses-menus__adb.htm#ref_431_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_win()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_365_14">Set_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_24"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_371_13" HREF="terminal_interface-curses-menus__adb.htm#ref_444_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_371_25" HREF="terminal_interface-curses-menus__adb.htm#ref_444_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">menu_win()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_371_13">Get_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_25"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_376_14" HREF="terminal_interface-curses-menus__adb.htm#ref_454_14">Set_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_376_30" HREF="terminal_interface-curses-menus__adb.htm#ref_454_30">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_377_30" HREF="terminal_interface-curses-menus__adb.htm#ref_455_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_sub()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_376_14">Set_Sub_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_26"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_382_13" HREF="terminal_interface-curses-menus__adb.htm#ref_468_13">Get_Sub_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_382_29" HREF="terminal_interface-curses-menus__adb.htm#ref_468_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">menu_sub()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_382_13">Get_Sub_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_27"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_387_14" HREF="terminal_interface-curses-menus__adb.htm#ref_478_14">Scale</A></FONT> (<FONT COLOR=red><A NAME="ref_387_21" HREF="terminal_interface-curses-menus__adb.htm#ref_478_21">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_388_21" HREF="terminal_interface-curses-menus__adb.htm#ref_479_21">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_389_21" HREF="terminal_interface-curses-menus__adb.htm#ref_480_21">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_win.3x.html">scale_menu()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_387_14">Scale</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_cursor.3x.html">menu_cursor.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_28"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_398_14" HREF="terminal_interface-curses-menus__adb.htm#ref_497_14">Position_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_398_31" HREF="terminal_interface-curses-menus__adb.htm#ref_497_31">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_cursor.3x.html">pos_menu_cursor()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_398_14">Position_Cursor</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_mark.3x.html">menu_mark.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_29"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_407_14" HREF="terminal_interface-curses-menus__adb.htm#ref_510_14">Set_Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_407_24" HREF="terminal_interface-curses-menus__adb.htm#ref_510_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_408_24" HREF="terminal_interface-curses-menus__adb.htm#ref_511_24">Mark</A></FONT> : String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">set_menu_mark()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_407_14">Set_Mark</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_30"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_413_14" HREF="terminal_interface-curses-menus__adb.htm#ref_529_14">Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_413_20" HREF="terminal_interface-curses-menus__adb.htm#ref_529_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_414_20" HREF="terminal_interface-curses-menus__adb.htm#ref_530_20">Mark</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_417_14" HREF="terminal_interface-curses-menus__adb.htm#ref_538_13">Mark</A></FONT> (<FONT COLOR=red><A NAME="ref_417_20" HREF="terminal_interface-curses-menus__adb.htm#ref_538_19">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Implemented as function</EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_win.3x.html">menu_win.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_23"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_359_14" HREF="terminal_interface-curses-menus__adb.htm#ref_373_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_359_26" HREF="terminal_interface-curses-menus__adb.htm#ref_373_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_360_26" HREF="terminal_interface-curses-menus__adb.htm#ref_374_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_win()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_359_14">Set_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_24"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_365_13" HREF="terminal_interface-curses-menus__adb.htm#ref_384_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_365_25" HREF="terminal_interface-curses-menus__adb.htm#ref_384_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">menu_win()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_365_13">Get_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_25"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_370_14" HREF="terminal_interface-curses-menus__adb.htm#ref_394_14">Set_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_370_30" HREF="terminal_interface-curses-menus__adb.htm#ref_394_30">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_371_30" HREF="terminal_interface-curses-menus__adb.htm#ref_395_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_sub()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_370_14">Set_Sub_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_26"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_376_13" HREF="terminal_interface-curses-menus__adb.htm#ref_405_13">Get_Sub_Window</A></span> (<span class="symbol"><A NAME="ref_376_29" HREF="terminal_interface-curses-menus__adb.htm#ref_405_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">menu_sub()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_376_13">Get_Sub_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_27"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_381_14" HREF="terminal_interface-curses-menus__adb.htm#ref_415_14">Scale</A></span> (<span class="symbol"><A NAME="ref_381_21" HREF="terminal_interface-curses-menus__adb.htm#ref_415_21">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_382_21" HREF="terminal_interface-curses-menus__adb.htm#ref_416_21">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_383_21" HREF="terminal_interface-curses-menus__adb.htm#ref_417_21">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_win.3x.html">scale_menu()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_381_14">Scale</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_cursor.3x.html">menu_cursor.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_28"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_392_14" HREF="terminal_interface-curses-menus__adb.htm#ref_431_14">Position_Cursor</A></span> (<span class="symbol"><A NAME="ref_392_31" HREF="terminal_interface-curses-menus__adb.htm#ref_431_31">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_cursor.3x.html">pos_menu_cursor()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_392_14">Position_Cursor</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_mark.3x.html">menu_mark.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_29"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_401_14" HREF="terminal_interface-curses-menus__adb.htm#ref_441_14">Set_Mark</A></span> (<span class="symbol"><A NAME="ref_401_24" HREF="terminal_interface-curses-menus__adb.htm#ref_441_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_402_24" HREF="terminal_interface-curses-menus__adb.htm#ref_442_24">Mark</A></span> : String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">set_menu_mark()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_401_14">Set_Mark</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_30"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_407_14" HREF="terminal_interface-curses-menus__adb.htm#ref_456_14">Mark</A></span> (<span class="symbol"><A NAME="ref_407_20" HREF="terminal_interface-curses-menus__adb.htm#ref_456_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_408_20" HREF="terminal_interface-curses-menus__adb.htm#ref_457_20">Mark</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_411_14" HREF="terminal_interface-curses-menus__adb.htm#ref_465_13">Mark</A></span> (<span class="symbol"><A NAME="ref_411_20" HREF="terminal_interface-curses-menus__adb.htm#ref_465_19">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></EM></span>
-+ <span class="comment"><EM>-- Implemented as function</EM></span>
- <b>pragma</b> Inline (Mark);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_attributes.3x.html">menu_attributes.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_31"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_427_14" HREF="terminal_interface-curses-menus__adb.htm#ref_547_14">Set_Foreground</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_428_7" HREF="terminal_interface-curses-menus__adb.htm#ref_548_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_429_7" HREF="terminal_interface-curses-menus__adb.htm#ref_549_7">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_430_7" HREF="terminal_interface-curses-menus__adb.htm#ref_550_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_fore()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_427_14">Set_Foreground</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_32"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_435_14" HREF="terminal_interface-curses-menus__adb.htm#ref_566_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_435_26" HREF="terminal_interface-curses-menus__adb.htm#ref_566_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_436_26" HREF="terminal_interface-curses-menus__adb.htm#ref_567_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_33"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_440_14" HREF="terminal_interface-curses-menus__adb.htm#ref_575_14">Foreground</A></FONT> (<FONT COLOR=red><A NAME="ref_440_26" HREF="terminal_interface-curses-menus__adb.htm#ref_575_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_441_26" HREF="terminal_interface-curses-menus__adb.htm#ref_576_26">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_442_26" HREF="terminal_interface-curses-menus__adb.htm#ref_577_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_attributes.3x.html">menu_attributes.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_31"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_421_14" HREF="terminal_interface-curses-menus__adb.htm#ref_474_14">Set_Foreground</A></span>
-+ (<span class="symbol"><A NAME="ref_422_7" HREF="terminal_interface-curses-menus__adb.htm#ref_475_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_423_7" HREF="terminal_interface-curses-menus__adb.htm#ref_476_7">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_424_7" HREF="terminal_interface-curses-menus__adb.htm#ref_477_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_fore()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_421_14">Set_Foreground</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_32"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_429_14" HREF="terminal_interface-curses-menus__adb.htm#ref_490_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_429_26" HREF="terminal_interface-curses-menus__adb.htm#ref_490_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_430_26" HREF="terminal_interface-curses-menus__adb.htm#ref_491_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_33"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_434_14" HREF="terminal_interface-curses-menus__adb.htm#ref_499_14">Foreground</A></span> (<span class="symbol"><A NAME="ref_434_26" HREF="terminal_interface-curses-menus__adb.htm#ref_499_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_435_26" HREF="terminal_interface-curses-menus__adb.htm#ref_500_26">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_436_26" HREF="terminal_interface-curses-menus__adb.htm#ref_501_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></EM></span>
- <b>pragma</b> Inline (Foreground);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_34"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_447_14" HREF="terminal_interface-curses-menus__adb.htm#ref_586_14">Set_Background</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_448_7" HREF="terminal_interface-curses-menus__adb.htm#ref_587_7">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_449_7" HREF="terminal_interface-curses-menus__adb.htm#ref_588_7">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_450_7" HREF="terminal_interface-curses-menus__adb.htm#ref_589_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_back()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_34"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_441_14" HREF="terminal_interface-curses-menus__adb.htm#ref_510_14">Set_Background</A></span>
-+ (<span class="symbol"><A NAME="ref_442_7" HREF="terminal_interface-curses-menus__adb.htm#ref_511_7">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_443_7" HREF="terminal_interface-curses-menus__adb.htm#ref_512_7">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_444_7" HREF="terminal_interface-curses-menus__adb.htm#ref_513_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_back()</A></EM></span>
- <b>pragma</b> Inline (Set_Background);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_35"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_455_14" HREF="terminal_interface-curses-menus__adb.htm#ref_605_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_455_26" HREF="terminal_interface-curses-menus__adb.htm#ref_605_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_456_26" HREF="terminal_interface-curses-menus__adb.htm#ref_606_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_36"#2|</EM></FONT>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_460_14" HREF="terminal_interface-curses-menus__adb.htm#ref_614_14">Background</A></FONT> (<FONT COLOR=red><A NAME="ref_460_26" HREF="terminal_interface-curses-menus__adb.htm#ref_614_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_461_26" HREF="terminal_interface-curses-menus__adb.htm#ref_615_26">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_462_26" HREF="terminal_interface-curses-menus__adb.htm#ref_616_26">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_35"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_449_14" HREF="terminal_interface-curses-menus__adb.htm#ref_526_14">Background</A></span> (<span class="symbol"><A NAME="ref_449_26" HREF="terminal_interface-curses-menus__adb.htm#ref_526_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_450_26" HREF="terminal_interface-curses-menus__adb.htm#ref_527_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></EM></span>
-+ <span class="comment"><EM>-- #1A NAME="AFU_36"#2|</EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_454_14" HREF="terminal_interface-curses-menus__adb.htm#ref_535_14">Background</A></span> (<span class="symbol"><A NAME="ref_454_26" HREF="terminal_interface-curses-menus__adb.htm#ref_535_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_455_26" HREF="terminal_interface-curses-menus__adb.htm#ref_536_26">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_456_26" HREF="terminal_interface-curses-menus__adb.htm#ref_537_26">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></EM></span>
- <b>pragma</b> Inline (Background);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_37"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_467_14" HREF="terminal_interface-curses-menus__adb.htm#ref_625_14">Set_Grey</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_468_7" HREF="terminal_interface-curses-menus__adb.htm#ref_625_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_469_7" HREF="terminal_interface-curses-menus__adb.htm#ref_626_24">Grey</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_470_7" HREF="terminal_interface-curses-menus__adb.htm#ref_627_24">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_grey()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_467_14">Set_Grey</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_38"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_475_14" HREF="terminal_interface-curses-menus__adb.htm#ref_644_14">Grey</A></FONT> (<FONT COLOR=red><A NAME="ref_475_20" HREF="terminal_interface-curses-menus__adb.htm#ref_644_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_476_20" HREF="terminal_interface-curses-menus__adb.htm#ref_645_20">Grey</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_39"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_480_14" HREF="terminal_interface-curses-menus__adb.htm#ref_653_14">Grey</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_481_7" HREF="terminal_interface-curses-menus__adb.htm#ref_653_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_482_7" HREF="terminal_interface-curses-menus__adb.htm#ref_654_20">Grey</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_483_7" HREF="terminal_interface-curses-menus__adb.htm#ref_655_20">Color</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_37"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_461_14" HREF="terminal_interface-curses-menus__adb.htm#ref_546_14">Set_Grey</A></span>
-+ (<span class="symbol"><A NAME="ref_462_7" HREF="terminal_interface-curses-menus__adb.htm#ref_546_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_463_7" HREF="terminal_interface-curses-menus__adb.htm#ref_547_24">Grey</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_464_7" HREF="terminal_interface-curses-menus__adb.htm#ref_548_24">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_grey()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_461_14">Set_Grey</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_38"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_469_14" HREF="terminal_interface-curses-menus__adb.htm#ref_562_14">Grey</A></span> (<span class="symbol"><A NAME="ref_469_20" HREF="terminal_interface-curses-menus__adb.htm#ref_562_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_470_20" HREF="terminal_interface-curses-menus__adb.htm#ref_563_20">Grey</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_39"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_474_14" HREF="terminal_interface-curses-menus__adb.htm#ref_571_14">Grey</A></span>
-+ (<span class="symbol"><A NAME="ref_475_7" HREF="terminal_interface-curses-menus__adb.htm#ref_571_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_476_7" HREF="terminal_interface-curses-menus__adb.htm#ref_572_20">Grey</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_477_7" HREF="terminal_interface-curses-menus__adb.htm#ref_573_20">Color</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></EM></span>
- <b>pragma</b> Inline (Grey);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_40"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_488_14" HREF="terminal_interface-curses-menus__adb.htm#ref_664_14">Set_Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_488_33" HREF="terminal_interface-curses-menus__adb.htm#ref_664_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_489_33" HREF="terminal_interface-curses-menus__adb.htm#ref_665_33">Pad</A></FONT> : Character := Space);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_pad()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_488_14">Set_Pad_Character</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_41"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_494_14" HREF="terminal_interface-curses-menus__adb.htm#ref_679_14">Pad_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_494_29" HREF="terminal_interface-curses-menus__adb.htm#ref_679_29">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_495_29" HREF="terminal_interface-curses-menus__adb.htm#ref_680_29">Pad</A></FONT> : <b>out</b> Character);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_pad()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_494_14">Pad_Character</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_spacing.3x.html">menu_spacing.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_42"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_504_14" HREF="terminal_interface-curses-menus__adb.htm#ref_688_14">Set_Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_504_27" HREF="terminal_interface-curses-menus__adb.htm#ref_688_27">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_505_27" HREF="terminal_interface-curses-menus__adb.htm#ref_689_27">Descr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0;
-- <FONT COLOR=red><A NAME="ref_506_27" HREF="terminal_interface-curses-menus__adb.htm#ref_690_27">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := 0;
-- <FONT COLOR=red><A NAME="ref_507_27" HREF="terminal_interface-curses-menus__adb.htm#ref_691_27">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := 0);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_spacing.3x.html">set_menu_spacing()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_504_14">Set_Spacing</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_43"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_512_14" HREF="terminal_interface-curses-menus__adb.htm#ref_707_14">Spacing</A></FONT> (<FONT COLOR=red><A NAME="ref_512_23" HREF="terminal_interface-curses-menus__adb.htm#ref_707_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_513_23" HREF="terminal_interface-curses-menus__adb.htm#ref_708_23">Descr</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_514_23" HREF="terminal_interface-curses-menus__adb.htm#ref_709_23">Row</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_515_23" HREF="terminal_interface-curses-menus__adb.htm#ref_710_23">Col</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_spacing.3x.html">menu_spacing()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_512_14">Spacing</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_pattern.3x.html">menu_pattern.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_44"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_524_13" HREF="terminal_interface-curses-menus__adb.htm#ref_732_13">Set_Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_524_26" HREF="terminal_interface-curses-menus__adb.htm#ref_732_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_525_26" HREF="terminal_interface-curses-menus__adb.htm#ref_733_26">Text</A></FONT> : String) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_pattern.3x.html">set_menu_pattern()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Return TRUE if the pattern matches, FALSE otherwise</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_524_13">Set_Pattern</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_45"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_531_14" HREF="terminal_interface-curses-menus__adb.htm#ref_755_14">Pattern</A></FONT> (<FONT COLOR=red><A NAME="ref_531_23" HREF="terminal_interface-curses-menus__adb.htm#ref_755_23">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_532_23" HREF="terminal_interface-curses-menus__adb.htm#ref_756_23">Text</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_pattern.3x.html">menu_pattern()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_531_14">Pattern</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_format.3x.html">menu_format.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_46"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_541_14" HREF="terminal_interface-curses-menus__adb.htm#ref_764_14">Set_Format</A></FONT> (<FONT COLOR=red><A NAME="ref_541_26" HREF="terminal_interface-curses-menus__adb.htm#ref_764_26">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_542_26" HREF="terminal_interface-curses-menus__adb.htm#ref_765_26">Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_543_26" HREF="terminal_interface-curses-menus__adb.htm#ref_766_26">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>);
-- <FONT COLOR=green><EM>-- Not implemented: 0 argument for Lines or Columns;</EM></FONT>
-- <FONT COLOR=green><EM>-- instead use Format to get the current sizes</EM></FONT>
-- <FONT COLOR=green><EM>-- The default format is 16 rows, 1 column. Calling</EM></FONT>
-- <FONT COLOR=green><EM>-- set_menu_format with a null menu pointer will change this</EM></FONT>
-- <FONT COLOR=green><EM>-- default. A zero row or column argument to set_menu_format</EM></FONT>
-- <FONT COLOR=green><EM>-- is interpreted as a request not to change the current</EM></FONT>
-- <FONT COLOR=green><EM>-- value.</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_format.3x.html">set_menu_format()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_541_14">Set_Format</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_47"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_555_14" HREF="terminal_interface-curses-menus__adb.htm#ref_782_14">Format</A></FONT> (<FONT COLOR=red><A NAME="ref_555_22" HREF="terminal_interface-curses-menus__adb.htm#ref_782_22">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_556_22" HREF="terminal_interface-curses-menus__adb.htm#ref_783_22">Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_557_22" HREF="terminal_interface-curses-menus__adb.htm#ref_784_22">Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_format.3x.html">menu_format()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_555_14">Format</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_hook.3x.html">menu_hook.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_565_9">Menu_Hook_Function</A></FONT> <b>is</b> <b>access</b> <b>procedure</b> (<FONT COLOR=red><A NAME="ref_565_49">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>);
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_48"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_569_14" HREF="terminal_interface-curses-menus__adb.htm#ref_802_14">Set_Item_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_569_34" HREF="terminal_interface-curses-menus__adb.htm#ref_802_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_570_34" HREF="terminal_interface-curses-menus__adb.htm#ref_803_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_init()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_569_14">Set_Item_Init_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_49"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_575_14" HREF="terminal_interface-curses-menus__adb.htm#ref_816_14">Set_Item_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_575_34" HREF="terminal_interface-curses-menus__adb.htm#ref_816_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_576_34" HREF="terminal_interface-curses-menus__adb.htm#ref_817_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_term()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_575_14">Set_Item_Term_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_50"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_581_14" HREF="terminal_interface-curses-menus__adb.htm#ref_830_14">Set_Menu_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_581_34" HREF="terminal_interface-curses-menus__adb.htm#ref_830_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_582_34" HREF="terminal_interface-curses-menus__adb.htm#ref_831_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_init()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_581_14">Set_Menu_Init_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_51"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_587_14" HREF="terminal_interface-curses-menus__adb.htm#ref_844_14">Set_Menu_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_587_34" HREF="terminal_interface-curses-menus__adb.htm#ref_844_34">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_588_34" HREF="terminal_interface-curses-menus__adb.htm#ref_845_34">Proc</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_term()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_587_14">Set_Menu_Term_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_52"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_593_13" HREF="terminal_interface-curses-menus__adb.htm#ref_858_13">Get_Item_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_593_33" HREF="terminal_interface-curses-menus__adb.htm#ref_858_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">item_init()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_593_13">Get_Item_Init_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_53"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_598_13" HREF="terminal_interface-curses-menus__adb.htm#ref_866_13">Get_Item_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_598_33" HREF="terminal_interface-curses-menus__adb.htm#ref_866_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">item_term()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_598_13">Get_Item_Term_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_54"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_603_13" HREF="terminal_interface-curses-menus__adb.htm#ref_874_13">Get_Menu_Init_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_603_33" HREF="terminal_interface-curses-menus__adb.htm#ref_874_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_init()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_603_13">Get_Menu_Init_Hook</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_55"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_608_13" HREF="terminal_interface-curses-menus__adb.htm#ref_882_13">Get_Menu_Term_Hook</A></FONT> (<FONT COLOR=red><A NAME="ref_608_33" HREF="terminal_interface-curses-menus__adb.htm#ref_882_33">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_565_9">Menu_Hook_Function</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_term()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_608_13">Get_Menu_Term_Hook</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_items.3x.html">menu_items.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_56"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_617_14" HREF="terminal_interface-curses-menus__adb.htm#ref_890_14">Redefine</A></FONT> (<FONT COLOR=red><A NAME="ref_617_24" HREF="terminal_interface-curses-menus__adb.htm#ref_890_24">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_618_24" HREF="terminal_interface-curses-menus__adb.htm#ref_891_24">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_items.3x.html">set_menu_items()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_617_14">Redefine</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_622_14">Set_Items</A></FONT> (<FONT COLOR=red><A NAME="ref_622_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_623_25">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>) <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_617_14">Redefine</A>;
-- <FONT COLOR=green><EM>-- pragma Inline (Set_Items);</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_57"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_627_13" HREF="terminal_interface-curses-menus__adb.htm#ref_918_13">Items</A></FONT> (<FONT COLOR=red><A NAME="ref_627_20" HREF="terminal_interface-curses-menus__adb.htm#ref_918_20">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_628_20" HREF="terminal_interface-curses-menus__adb.htm#ref_919_20">Index</A></FONT> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_items.3x.html">menu_items()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Items</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_58"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_633_13" HREF="terminal_interface-curses-menus__adb.htm#ref_910_13">Item_Count</A></FONT> (<FONT COLOR=red><A NAME="ref_633_25" HREF="terminal_interface-curses-menus__adb.htm#ref_910_25">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>) <b>return</b> Natural;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_items.3x.html">item_count()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_633_13">Item_Count</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_new.3x.html">menu_new.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_59"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_642_13" HREF="terminal_interface-curses-menus__adb.htm#ref_937_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_642_21" HREF="terminal_interface-curses-menus__adb.htm#ref_937_21">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_new.3x.html">new_menu()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Not inlined</EM></FONT>
--
-- <b>function</b> New_Menu (<FONT COLOR=red><A NAME="ref_646_23">Items</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_182_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_642_13">Create</A>;
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_60"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_649_14" HREF="terminal_interface-curses-menus__adb.htm#ref_956_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_649_22" HREF="terminal_interface-curses-menus__adb.htm#ref_956_22">Men</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_new.3x.html">free_menu()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Reset Men to Null_Menu</EM></FONT>
-- <FONT COLOR=green><EM>-- Not inlined</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/menu_driver.3x.html">menu_driver.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_658_9">Driver_Result</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_658_27">Menu_Ok</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_659_27">Request_Denied</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_660_27">Unknown_Request</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_661_27">No_Match</A></FONT>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_61"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_664_13" HREF="terminal_interface-curses-menus__adb.htm#ref_970_13">Driver</A></FONT> (<FONT COLOR=red><A NAME="ref_664_21" HREF="terminal_interface-curses-menus__adb.htm#ref_970_21">Men</A></FONT> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A>;
-- <FONT COLOR=red><A NAME="ref_665_21" HREF="terminal_interface-curses-menus__adb.htm#ref_971_21">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_658_9">Driver_Result</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/menu_driver.3x.html">menu_driver()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Driver is not inlined</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_62"#2|</EM></FONT>
-- <FONT COLOR=green><EM>-- Not Implemented: menu_request_name, menu_request_by_name</EM></FONT>
--<FONT COLOR=green><EM>-------------------------------------------------------------------------------</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_40"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_482_14" HREF="terminal_interface-curses-menus__adb.htm#ref_582_14">Set_Pad_Character</A></span> (<span class="symbol"><A NAME="ref_482_33" HREF="terminal_interface-curses-menus__adb.htm#ref_582_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_483_33" HREF="terminal_interface-curses-menus__adb.htm#ref_583_33">Pad</A></span> : Character := Space);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_pad()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_482_14">Set_Pad_Character</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_41"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_488_14" HREF="terminal_interface-curses-menus__adb.htm#ref_593_14">Pad_Character</A></span> (<span class="symbol"><A NAME="ref_488_29" HREF="terminal_interface-curses-menus__adb.htm#ref_593_29">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_489_29" HREF="terminal_interface-curses-menus__adb.htm#ref_594_29">Pad</A></span> : <b>out</b> Character);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_pad()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_488_14">Pad_Character</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_spacing.3x.html">menu_spacing.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_42"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_498_14" HREF="terminal_interface-curses-menus__adb.htm#ref_602_14">Set_Spacing</A></span> (<span class="symbol"><A NAME="ref_498_27" HREF="terminal_interface-curses-menus__adb.htm#ref_602_27">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_499_27" HREF="terminal_interface-curses-menus__adb.htm#ref_603_27">Descr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> := 0;
-+ <span class="symbol"><A NAME="ref_500_27" HREF="terminal_interface-curses-menus__adb.htm#ref_604_27">Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> := 0;
-+ <span class="symbol"><A NAME="ref_501_27" HREF="terminal_interface-curses-menus__adb.htm#ref_605_27">Col</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> := 0);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_spacing.3x.html">set_menu_spacing()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_498_14">Set_Spacing</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_43"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_506_14" HREF="terminal_interface-curses-menus__adb.htm#ref_618_14">Spacing</A></span> (<span class="symbol"><A NAME="ref_506_23" HREF="terminal_interface-curses-menus__adb.htm#ref_618_23">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_507_23" HREF="terminal_interface-curses-menus__adb.htm#ref_619_23">Descr</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_508_23" HREF="terminal_interface-curses-menus__adb.htm#ref_620_23">Row</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_509_23" HREF="terminal_interface-curses-menus__adb.htm#ref_621_23">Col</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_spacing.3x.html">menu_spacing()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_506_14">Spacing</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_pattern.3x.html">menu_pattern.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_44"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_518_13" HREF="terminal_interface-curses-menus__adb.htm#ref_639_13">Set_Pattern</A></span> (<span class="symbol"><A NAME="ref_518_26" HREF="terminal_interface-curses-menus__adb.htm#ref_639_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_519_26" HREF="terminal_interface-curses-menus__adb.htm#ref_640_26">Text</A></span> : String) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_pattern.3x.html">set_menu_pattern()</A></EM></span>
-+ <span class="comment"><EM>-- Return TRUE if the pattern matches, FALSE otherwise</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_518_13">Set_Pattern</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_45"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_525_14" HREF="terminal_interface-curses-menus__adb.htm#ref_662_14">Pattern</A></span> (<span class="symbol"><A NAME="ref_525_23" HREF="terminal_interface-curses-menus__adb.htm#ref_662_23">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_526_23" HREF="terminal_interface-curses-menus__adb.htm#ref_663_23">Text</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_pattern.3x.html">menu_pattern()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_525_14">Pattern</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_format.3x.html">menu_format.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_46"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_535_14" HREF="terminal_interface-curses-menus__adb.htm#ref_671_14">Set_Format</A></span> (<span class="symbol"><A NAME="ref_535_26" HREF="terminal_interface-curses-menus__adb.htm#ref_671_26">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_536_26" HREF="terminal_interface-curses-menus__adb.htm#ref_672_26">Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_537_26" HREF="terminal_interface-curses-menus__adb.htm#ref_673_26">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>);
-+ <span class="comment"><EM>-- Not implemented: 0 argument for Lines or Columns;</EM></span>
-+ <span class="comment"><EM>-- instead use Format to get the current sizes</EM></span>
-+ <span class="comment"><EM>-- The default format is 16 rows, 1 column. Calling</EM></span>
-+ <span class="comment"><EM>-- set_menu_format with a null menu pointer will change this</EM></span>
-+ <span class="comment"><EM>-- default. A zero row or column argument to set_menu_format</EM></span>
-+ <span class="comment"><EM>-- is interpreted as a request not to change the current</EM></span>
-+ <span class="comment"><EM>-- value.</EM></span>
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_format.3x.html">set_menu_format()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_535_14">Set_Format</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_47"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_549_14" HREF="terminal_interface-curses-menus__adb.htm#ref_687_14">Format</A></span> (<span class="symbol"><A NAME="ref_549_22" HREF="terminal_interface-curses-menus__adb.htm#ref_687_22">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_550_22" HREF="terminal_interface-curses-menus__adb.htm#ref_688_22">Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_551_22" HREF="terminal_interface-curses-menus__adb.htm#ref_689_22">Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_format.3x.html">menu_format()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_549_14">Format</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_hook.3x.html">menu_hook.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_559_9">Menu_Hook_Function</A></span> <b>is</b> <b>access</b> <b>procedure</b> (<span class="symbol"><A NAME="ref_559_49">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>);
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_48"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_563_14" HREF="terminal_interface-curses-menus__adb.htm#ref_703_14">Set_Item_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_563_34" HREF="terminal_interface-curses-menus__adb.htm#ref_703_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_564_34" HREF="terminal_interface-curses-menus__adb.htm#ref_704_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_init()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_563_14">Set_Item_Init_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_49"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_569_14" HREF="terminal_interface-curses-menus__adb.htm#ref_714_14">Set_Item_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_569_34" HREF="terminal_interface-curses-menus__adb.htm#ref_714_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_570_34" HREF="terminal_interface-curses-menus__adb.htm#ref_715_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_term()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_569_14">Set_Item_Term_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_50"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_575_14" HREF="terminal_interface-curses-menus__adb.htm#ref_725_14">Set_Menu_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_575_34" HREF="terminal_interface-curses-menus__adb.htm#ref_725_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_576_34" HREF="terminal_interface-curses-menus__adb.htm#ref_726_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_init()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_575_14">Set_Menu_Init_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_51"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_581_14" HREF="terminal_interface-curses-menus__adb.htm#ref_736_14">Set_Menu_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_581_34" HREF="terminal_interface-curses-menus__adb.htm#ref_736_34">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_582_34" HREF="terminal_interface-curses-menus__adb.htm#ref_737_34">Proc</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_term()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_581_14">Set_Menu_Term_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_52"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_587_13" HREF="terminal_interface-curses-menus__adb.htm#ref_747_13">Get_Item_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_587_33" HREF="terminal_interface-curses-menus__adb.htm#ref_747_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">item_init()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_587_13">Get_Item_Init_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_53"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_592_13" HREF="terminal_interface-curses-menus__adb.htm#ref_755_13">Get_Item_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_592_33" HREF="terminal_interface-curses-menus__adb.htm#ref_755_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">item_term()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_592_13">Get_Item_Term_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_54"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_597_13" HREF="terminal_interface-curses-menus__adb.htm#ref_763_13">Get_Menu_Init_Hook</A></span> (<span class="symbol"><A NAME="ref_597_33" HREF="terminal_interface-curses-menus__adb.htm#ref_763_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_init()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_597_13">Get_Menu_Init_Hook</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_55"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_602_13" HREF="terminal_interface-curses-menus__adb.htm#ref_771_13">Get_Menu_Term_Hook</A></span> (<span class="symbol"><A NAME="ref_602_33" HREF="terminal_interface-curses-menus__adb.htm#ref_771_33">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_559_9">Menu_Hook_Function</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_term()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_602_13">Get_Menu_Term_Hook</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_items.3x.html">menu_items.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_56"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_611_14" HREF="terminal_interface-curses-menus__adb.htm#ref_779_14">Redefine</A></span> (<span class="symbol"><A NAME="ref_611_24" HREF="terminal_interface-curses-menus__adb.htm#ref_779_24">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_612_24" HREF="terminal_interface-curses-menus__adb.htm#ref_780_24">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_176_9">Item_Array_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_items.3x.html">set_menu_items()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_611_14">Redefine</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_616_14">Set_Items</A></span> (<span class="symbol"><A NAME="ref_616_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_617_25">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_176_9">Item_Array_Access</A>) <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_611_14">Redefine</A>;
-+ <span class="comment"><EM>-- pragma Inline (Set_Items);</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_57"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_621_13" HREF="terminal_interface-curses-menus__adb.htm#ref_803_13">Items</A></span> (<span class="symbol"><A NAME="ref_621_20" HREF="terminal_interface-curses-menus__adb.htm#ref_803_20">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_622_20" HREF="terminal_interface-curses-menus__adb.htm#ref_804_20">Index</A></span> : Positive) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_items.3x.html">menu_items()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_621_13">Items</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_58"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_627_13" HREF="terminal_interface-curses-menus__adb.htm#ref_795_13">Item_Count</A></span> (<span class="symbol"><A NAME="ref_627_25" HREF="terminal_interface-curses-menus__adb.htm#ref_795_25">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>) <b>return</b> Natural;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_items.3x.html">item_count()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-menus__ads.htm#ref_627_13">Item_Count</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_new.3x.html">menu_new.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_59"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_636_13" HREF="terminal_interface-curses-menus__adb.htm#ref_822_13">Create</A></span> (<span class="symbol"><A NAME="ref_636_21" HREF="terminal_interface-curses-menus__adb.htm#ref_822_21">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_176_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_new.3x.html">new_menu()</A></EM></span>
-+ <span class="comment"><EM>-- Not inlined</EM></span>
-+
-+ <b>function</b> New_Menu (<span class="symbol"><A NAME="ref_640_23">Items</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_176_9">Item_Array_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A> <b>renames</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_636_13">Create</A>;
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_60"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_643_14" HREF="terminal_interface-curses-menus__adb.htm#ref_841_14">Delete</A></span> (<span class="symbol"><A NAME="ref_643_22" HREF="terminal_interface-curses-menus__adb.htm#ref_841_22">Men</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_new.3x.html">free_menu()</A></EM></span>
-+ <span class="comment"><EM>-- Reset Men to Null_Menu</EM></span>
-+ <span class="comment"><EM>-- Not inlined</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/menu_driver.3x.html">menu_driver.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_652_9">Driver_Result</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_652_27">Menu_Ok</A></span>,
-+ <span class="symbol"><A NAME="ref_653_27">Request_Denied</A></span>,
-+ <span class="symbol"><A NAME="ref_654_27">Unknown_Request</A></span>,
-+ <span class="symbol"><A NAME="ref_655_27">No_Match</A></span>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_61"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_658_13" HREF="terminal_interface-curses-menus__adb.htm#ref_852_13">Driver</A></span> (<span class="symbol"><A NAME="ref_658_21" HREF="terminal_interface-curses-menus__adb.htm#ref_852_21">Men</A></span> : <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A>;
-+ <span class="symbol"><A NAME="ref_659_21" HREF="terminal_interface-curses-menus__adb.htm#ref_853_21">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_652_9">Driver_Result</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/menu_driver.3x.html">menu_driver()</A></EM></span>
-+ <span class="comment"><EM>-- Driver is not inlined</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_62"#2|</EM></span>
-+ <span class="comment"><EM>-- Not Implemented: menu_request_name, menu_request_by_name</EM></span>
-+<span class="comment"><EM>-------------------------------------------------------------------------------</EM></span>
- <b>private</b>
-- <b>type</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-- <b>type</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-+ <b>type</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-+ <b>type</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_62_4">Null_Item</A> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_56_9">Item</A> := 0;
-- <A HREF="terminal_interface-curses-menus__ads.htm#ref_63_4">Null_Menu</A> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_9">Menu</A> := 0;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_57_4">Null_Item</A> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_51_9">Item</A> := 0;
-+ <A HREF="terminal_interface-curses-menus__ads.htm#ref_58_4">Null_Menu</A> : <b>constant</b> <A HREF="terminal_interface-curses-menus__ads.htm#ref_52_9">Menu</A> := 0;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_49_35">Menus</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-menus__ads.htm#ref_45_35">Menus</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-mouse__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-mouse__adb.htm 2011-03-19 23:18:40.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-mouse__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,160 +1,172 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-mouse.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-mouse.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-mouse.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-mouse.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Mouse --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.24 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Mouse --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.24 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_46_40" HREF="terminal_interface-curses-mouse__ads.htm#ref_48_35">Mouse</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_46_40" HREF="terminal_interface-curses-mouse__ads.htm#ref_44_35">Mouse</A></span> <b>is</b>
-
- <b>use</b> <b>type</b> System.Bit_Order;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_50_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_94_13">Has_Mouse</A></FONT> <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_50_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_90_13">Has_Mouse</A></span> <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_52_16">Mouse_Avail</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_52_16">Mouse_Avail</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Mouse_Avail, "has_mouse");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_769_13">Has_Key</A> (<A HREF="terminal_interface-curses__ads.htm#ref_204_4">Key_Mouse</A>) <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_52_16">Mouse_Avail</A> /= 0 <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_937_13">Has_Key</A> (<A HREF="terminal_interface-curses__ads.htm#ref_375_4">Key_Mouse</A>) <b>or</b> <b>else</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_52_16">Mouse_Avail</A> /= 0 <b>then</b>
- <b>return</b> True;
- <b>else</b>
- <b>return</b> False;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_94_13">Has_Mouse</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_90_13">Has_Mouse</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_129_13">Get_Mouse</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_62_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_125_13">Get_Mouse</A></span> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>
- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_64_12">Event_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_64_12">Event_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_66_16">Getmouse</A></FONT> (<FONT COLOR=red><A NAME="ref_66_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_66_16">Ev</A></FONT> : <A HREF="terminal_interface-curses-mouse__adb.htm#ref_64_12">Event_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_66_16">Getmouse</A></span> (<span class="symbol"><A NAME="ref_66_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_66_16">Ev</A></span> : <A HREF="terminal_interface-curses-mouse__adb.htm#ref_64_12">Event_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Getmouse, "getmouse");
-
-- <FONT COLOR=red><A NAME="ref_69_7">Event</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>;
-+ <span class="symbol"><A NAME="ref_69_7">Event</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_66_16">Getmouse</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_69_7">Event</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_66_16">Getmouse</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_69_7">Event</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
- <b>return</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_69_7">Event</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_129_13">Get_Mouse</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_125_13">Get_Mouse</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_77_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_97_14">Register_Reportable_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_77_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>;
-- <FONT COLOR=red><A NAME="ref_78_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_99_7">State</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>;
-- <FONT COLOR=red><A NAME="ref_79_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_100_7">Mask</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_77_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_93_14">Register_Reportable_Event</A></span> (<span class="symbol"><A NAME="ref_77_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_94_7">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
-+ <span class="symbol"><A NAME="ref_78_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_95_7">State</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>;
-+ <span class="symbol"><A NAME="ref_79_41" HREF="terminal_interface-curses-mouse__ads.htm#ref_96_7">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_81_7">Button_Nr</A></FONT> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A>);
-- <FONT COLOR=red><A NAME="ref_82_7">State_Nr</A></FONT> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_99_7">State</A>);
-+ <span class="symbol"><A NAME="ref_81_7">Button_Nr</A></span> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_94_7">Button</A>);
-+ <span class="symbol"><A NAME="ref_82_7">State_Nr</A></span> : <b>constant</b> Natural := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>'Pos (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_95_7">State</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_73_12">Modifier_Keys</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_99_7">State</A> /= <A HREF="terminal_interface-curses-mouse__ads.htm#ref_76_26">Pressed</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_94_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_69_12">Modifier_Keys</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_95_7">State</A> /= <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_26">Pressed</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>else</b>
-- <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_98_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_12">Real_Buttons</A> <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_100_7">Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_100_7">Mask</A> <b>or</b> ((2 ** (6 * <A HREF="terminal_interface-curses-mouse__adb.htm#ref_81_7">Button_Nr</A>)) ** <A HREF="terminal_interface-curses-mouse__adb.htm#ref_82_7">State_Nr</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_94_7">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_68_12">Real_Buttons</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_96_7">Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_96_7">Mask</A> <b>or</b> ((2 ** (6 * <A HREF="terminal_interface-curses-mouse__adb.htm#ref_81_7">Button_Nr</A>)) ** <A HREF="terminal_interface-curses-mouse__adb.htm#ref_82_7">State_Nr</A>);
- <b>else</b>
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_100_7">Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_100_7">Mask</A> <b>or</b> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_212_4">BUTTON_CTRL</A> ** (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_81_7">Button_Nr</A> - 4));
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_96_7">Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_96_7">Mask</A> <b>or</b> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_186_4">BUTTON_CTRL</A> ** (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_81_7">Button_Nr</A> - 4));
- <b>end</b> <b>if</b>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_97_14">Register_Reportable_Event</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_93_14">Register_Reportable_Event</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_95_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_106_14">Register_Reportable_Events</A></FONT> (<FONT COLOR=red><A NAME="ref_95_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_107_7">Button</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>;
-- <FONT COLOR=red><A NAME="ref_96_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_108_7">State</A></FONT> : Button_States;
-- <FONT COLOR=red><A NAME="ref_97_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_109_7">Mask</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_95_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_102_14">Register_Reportable_Events</A></span> (<span class="symbol"><A NAME="ref_95_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_103_7">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
-+ <span class="symbol"><A NAME="ref_96_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_104_7">State</A></span> : Button_States;
-+ <span class="symbol"><A NAME="ref_97_42" HREF="terminal_interface-curses-mouse__ads.htm#ref_105_7">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>)
- <b>is</b>
- <b>begin</b>
-- <b>for</b> <FONT COLOR=red><A NAME="ref_100_11">S</A></FONT> <b>in</b> Button_States'<b>Range</b> <b>loop</b>
-- <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_108_7">State</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_100_11">S</A>) <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_97_14">Register_Reportable_Event</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_107_7">Button</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#ref_100_11">S</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_109_7">Mask</A>);
-+ <b>for</b> <span class="symbol"><A NAME="ref_100_11">S</A></span> <b>in</b> Button_States'<b>Range</b> <b>loop</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_104_7">State</A> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_100_11">S</A>) <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_93_14">Register_Reportable_Event</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_103_7">Button</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#ref_100_11">S</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_105_7">Mask</A>);
- <b>end</b> <b>if</b>;
- <b>end</b> <b>loop</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_106_14">Register_Reportable_Events</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_102_14">Register_Reportable_Events</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_107_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_119_13">Start_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_107_26" HREF="terminal_interface-curses-mouse__ads.htm#ref_119_26">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_62_4">All_Events</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_107_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_115_13">Start_Mouse</A></span> (<span class="symbol"><A NAME="ref_107_26" HREF="terminal_interface-curses-mouse__ads.htm#ref_115_26">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_58_4">All_Events</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_110_16">MMask</A></FONT> (<FONT COLOR=red><A NAME="ref_110_23" HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">M</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-- <FONT COLOR=red><A NAME="ref_111_23" HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">O</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>) <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_110_16">MMask</A></span> (<span class="symbol"><A NAME="ref_110_23" HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">M</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
-+ <span class="symbol"><A NAME="ref_111_23" HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">O</A></span> : <b>access</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>) <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
- <b>pragma</b> Import (C, MMask, "mousemask");
-- <FONT COLOR=red><A NAME="ref_113_7">R</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-- <FONT COLOR=red><A NAME="ref_114_7">Old</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-+ <span class="symbol"><A NAME="ref_113_7">R</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
-+ <span class="symbol"><A NAME="ref_114_7">Old</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_113_7">R</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">MMask</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_119_26">Mask</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#ref_114_7">Old</A>'<b>Access</b>);
-- <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_113_7">R</A> = <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A> <b>then</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A>;
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_113_7">R</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#ref_110_16">MMask</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_115_26">Mask</A>, <A HREF="terminal_interface-curses-mouse__adb.htm#ref_114_7">Old</A>'<b>Access</b>);
-+ <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_113_7">R</A> = <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_4">No_Events</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1040_14">Beep</A>;
- <b>end</b> <b>if</b>;
- <b>return</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_114_7">Old</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_119_13">Start_Mouse</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_115_13">Start_Mouse</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_123_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_124_14">End_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_123_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_124_25">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_123_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_120_14">End_Mouse</A></span> (<span class="symbol"><A NAME="ref_123_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_120_25">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_4">No_Events</A>)
- <b>is</b>
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_124_25">Mask</A> /= <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A> <b>then</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_120_25">Mask</A> /= <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_4">No_Events</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1040_14">Beep</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_124_14">End_Mouse</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_131_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_135_14">Dispatch_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_131_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_135_30">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-- <FONT COLOR=red><A NAME="ref_132_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_136_30">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>;
-- <FONT COLOR=red><A NAME="ref_133_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_137_30">State</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_135_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_131_14">Dispatch_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_135_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-- <FONT COLOR=red><A NAME="ref_136_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>;
-- <FONT COLOR=red><A NAME="ref_137_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_133_30">State</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>) <b>is</b>
-- <FONT COLOR=red><A NAME="ref_138_7">L</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-- <b>begin</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_70_26">Alt</A>; <FONT COLOR=green><EM>-- preset to non real button;</EM></FONT>
-- <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_217_4">BUTTON1_EVENTS</A>) /= 0 <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Left</A>;
-- <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_218_4">BUTTON2_EVENTS</A>) /= 0 <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_65_26">Middle</A>;
-- <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_219_4">BUTTON3_EVENTS</A>) /= 0 <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_66_26">Right</A>;
-- <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_220_4">BUTTON4_EVENTS</A>) /= 0 <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_67_26">Button4</A>;
-- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_12">Real_Buttons</A> <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_138_7">L</A> := 2 ** (6 * <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A>));
-- <b>for</b> <FONT COLOR=red><A NAME="ref_152_14">I</A></FONT> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>'<b>Range</b> <b>loop</b>
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_120_14">End_Mouse</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_131_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_135_14">Dispatch_Event</A></span> (<span class="symbol"><A NAME="ref_131_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_135_30">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
-+ <span class="symbol"><A NAME="ref_132_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_136_30">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
-+ <span class="symbol"><A NAME="ref_133_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_137_30">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_135_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_131_14">Dispatch_Event</A></span> (<span class="symbol"><A NAME="ref_135_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
-+ <span class="symbol"><A NAME="ref_136_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
-+ <span class="symbol"><A NAME="ref_137_30" HREF="terminal_interface-curses-mouse__adb.htm#ref_133_30">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>) <b>is</b>
-+ <span class="symbol"><A NAME="ref_138_7">L</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_66_26">Alt</A>; <span class="comment"><EM>-- preset to non real button;</EM></span>
-+ <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_189_4">BUTTON1_EVENTS</A>) /= 0 <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_26">Left</A>;
-+ <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_191_4">BUTTON2_EVENTS</A>) /= 0 <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_26">Middle</A>;
-+ <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_193_4">BUTTON3_EVENTS</A>) /= 0 <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_62_26">Right</A>;
-+ <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_195_4">BUTTON4_EVENTS</A>) /= 0 <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_63_26">Button4</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>if</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> <b>in</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_68_12">Real_Buttons</A> <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_138_7">L</A> := 2 ** (6 * <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>'Pos (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A>));
-+ <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_71_9">Button_State</A>'<b>Range</b> <b>loop</b>
- <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_138_7">L</A>) /= 0 <b>then</b>
- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_133_30">State</A> := <A HREF="terminal_interface-curses-mouse__adb.htm#ref_152_14">I</A>;
- <b>exit</b>;
-@@ -162,62 +174,62 @@
- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_138_7">L</A> := 2 * <A HREF="terminal_interface-curses-mouse__adb.htm#ref_138_7">L</A>;
- <b>end</b> <b>loop</b>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_133_30">State</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_76_26">Pressed</A>;
-- <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_212_4">BUTTON_CTRL</A>) /= 0 <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_68_26">Control</A>;
-- <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_213_4">BUTTON_SHIFT</A>) /= 0 <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_69_26">Shift</A>;
-- <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_214_4">BUTTON_ALT</A>) /= 0 <b>then</b>
-- <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_70_26">Alt</A>;
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_133_30">State</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_26">Pressed</A>;
-+ <b>if</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_186_4">BUTTON_CTRL</A>) /= 0 <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Control</A>;
-+ <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_187_4">BUTTON_SHIFT</A>) /= 0 <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_65_26">Shift</A>;
-+ <b>elsif</b> (<A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_30">Mask</A> <b>and</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_188_4">BUTTON_ALT</A>) /= 0 <b>then</b>
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_132_30">Button</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_66_26">Alt</A>;
- <b>end</b> <b>if</b>;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_14">Dispatch_Event</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_171_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_133_14">Get_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_171_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>;
-- <FONT COLOR=red><A NAME="ref_172_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_134_25">Y</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_173_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_135_25">X</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_174_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_136_25">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>;
-- <FONT COLOR=red><A NAME="ref_175_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_137_25">State</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>)
-- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_177_7">Mask</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_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_135_25">X</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_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_134_25">Y</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_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_131_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_136_25">Button</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_137_25">State</A>);
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_14">Get_Event</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_171_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_129_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_171_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_129_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>;
-+ <span class="symbol"><A NAME="ref_172_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_130_25">Y</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_173_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_131_25">X</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_174_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_132_25">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
-+ <span class="symbol"><A NAME="ref_175_25" HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>)
-+ <b>is</b>
-+ <span class="symbol"><A NAME="ref_177_7">Mask</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_129_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_166_10">Bstate</A>;
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_131_25">X</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_129_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_164_10">X</A>);
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_130_25">Y</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_129_25">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_164_13">Y</A>);
-+ <A HREF="terminal_interface-curses-mouse__adb.htm#ref_131_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_132_25">Button</A>, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_25">State</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_129_14">Get_Event</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_184_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_145_14">Unget_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_184_27" HREF="terminal_interface-curses-mouse__ads.htm#ref_145_27">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_184_14" HREF="terminal_interface-curses-mouse__ads.htm#ref_141_14">Unget_Mouse</A></span> (<span class="symbol"><A NAME="ref_184_27" HREF="terminal_interface-curses-mouse__ads.htm#ref_141_27">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_186_16">Ungetmouse</A></FONT> (<FONT COLOR=red><A NAME="ref_186_28" HREF="terminal_interface-curses-mouse__adb.htm#ref_186_16">Ev</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_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_84_9">Mouse_Event</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_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_186_16">Ungetmouse</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_145_27">Event</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <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_141_27">Event</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_145_14">Unget_Mouse</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_141_14">Unget_Mouse</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_194_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_150_13">Enclosed_In_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_194_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_150_33">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_195_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_151_33">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_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_146_13">Enclosed_In_Window</A></span> (<span class="symbol"><A NAME="ref_194_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_146_33">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_195_33" HREF="terminal_interface-curses-mouse__ads.htm#ref_147_33">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_197_16">Wenclose</A></FONT> (<FONT COLOR=red><A NAME="ref_197_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_197_40" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <FONT COLOR=red><A NAME="ref_197_51" HREF="terminal_interface-curses-mouse__adb.htm#ref_197_16">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</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_55_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_50_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_50_12">C_Int</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_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_197_16">Wenclose</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_150_33">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_151_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_55_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_151_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_10">X</A>))
-- = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b>
-+ <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_146_33">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_147_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_164_13">Y</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_147_33">Event</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_164_10">X</A>))
-+ = <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_150_13">Enclosed_In_Window</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_146_13">Enclosed_In_Window</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_209_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_157_13">Mouse_Interval</A></FONT> (<FONT COLOR=red><A NAME="ref_209_29" HREF="terminal_interface-curses-mouse__ads.htm#ref_157_29">Msec</A></FONT> : Natural := 200) <b>return</b> Natural
-+ <b>function</b> <span class="symbol"><A NAME="ref_209_13" HREF="terminal_interface-curses-mouse__ads.htm#ref_153_13">Mouse_Interval</A></span> (<span class="symbol"><A NAME="ref_209_29" HREF="terminal_interface-curses-mouse__ads.htm#ref_153_29">Msec</A></span> : Natural := 200) <b>return</b> Natural
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_211_16">Mouseinterval</A></FONT> (<FONT COLOR=red><A NAME="ref_211_31" HREF="terminal_interface-curses-mouse__adb.htm#ref_211_16">Msec</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <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_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_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_55_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_157_29">Msec</A>)));
-- <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_157_13">Mouse_Interval</A>;
-+ <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_50_12">C_Int</A> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_153_29">Msec</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_153_13">Mouse_Interval</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_48_35">Mouse</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_44_35">Mouse</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-mouse__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-mouse__ads.htm 2011-03-19 23:18:40.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-mouse__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,231 +1,219 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-mouse.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-mouse.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-mouse.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-mouse.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Mouse --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.29 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/19 12:35:58 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- mouse binding.</EM></FONT>
--<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT>
--<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Mouse --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.31 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:57 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> System;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_48_35" HREF="terminal_interface-curses-mouse__adb.htm#ref_46_40">Mouse</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_48_35">Mouse</A>);
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_44_35" HREF="terminal_interface-curses-mouse__adb.htm#ref_46_40">Mouse</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_44_35">Mouse</A>);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_mouse.3x.html">curs_mouse.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- mouse_trafo, wmouse_trafo are implemented as Transform_Coordinates</EM></FONT>
-- <FONT COLOR=green><EM>-- in the parent package.</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>-- Not implemented:</EM></FONT>
-- <FONT COLOR=green><EM>-- REPORT_MOUSE_POSITION (i.e. as a parameter to Register_Reportable_Event</EM></FONT>
-- <FONT COLOR=green><EM>-- or Start_Mouse)</EM></FONT>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_60_9">Event_Mask</A></FONT> <b>is</b> <b>private</b>;
-- <FONT COLOR=red><A NAME="ref_61_4">No_Events</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-- <FONT COLOR=red><A NAME="ref_62_4">All_Events</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_64_9">Mouse_Button</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_64_26">Left</A></FONT>, <FONT COLOR=green><EM>-- aka: Button 1</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_65_26">Middle</A></FONT>, <FONT COLOR=green><EM>-- aka: Button 2</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_66_26">Right</A></FONT>, <FONT COLOR=green><EM>-- aka: Button 3</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_67_26">Button4</A></FONT>, <FONT COLOR=green><EM>-- aka: Button 4</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_68_26">Control</A></FONT>, <FONT COLOR=green><EM>-- Control Key</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_69_26">Shift</A></FONT>, <FONT COLOR=green><EM>-- Shift Key</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_70_26">Alt</A></FONT>); <FONT COLOR=green><EM>-- ALT Key</EM></FONT>
--
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_72_12">Real_Buttons</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Left</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_67_26">Button4</A>;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_73_12">Modifier_Keys</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_68_26">Control</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_70_26">Alt</A>;
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_75_9">Button_State</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_75_26">Released</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_76_26">Pressed</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_77_26">Clicked</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_78_26">Double_Clicked</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_79_26">Triple_Clicked</A></FONT>);
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_mouse.3x.html">curs_mouse.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- mouse_trafo, wmouse_trafo are implemented as Transform_Coordinates</EM></span>
-+ <span class="comment"><EM>-- in the parent package.</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <span class="comment"><EM>-- Not implemented:</EM></span>
-+ <span class="comment"><EM>-- REPORT_MOUSE_POSITION (i.e. as a parameter to Register_Reportable_Event</EM></span>
-+ <span class="comment"><EM>-- or Start_Mouse)</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_56_9">Event_Mask</A></span> <b>is</b> <b>private</b>;
-+ <span class="symbol"><A NAME="ref_57_4">No_Events</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
-+ <span class="symbol"><A NAME="ref_58_4">All_Events</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_60_9">Mouse_Button</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_60_26">Left</A></span>, <span class="comment"><EM>-- aka: Button 1</EM></span>
-+ <span class="symbol"><A NAME="ref_61_26">Middle</A></span>, <span class="comment"><EM>-- aka: Button 2</EM></span>
-+ <span class="symbol"><A NAME="ref_62_26">Right</A></span>, <span class="comment"><EM>-- aka: Button 3</EM></span>
-+ <span class="symbol"><A NAME="ref_63_26">Button4</A></span>, <span class="comment"><EM>-- aka: Button 4</EM></span>
-+ <span class="symbol"><A NAME="ref_64_26">Control</A></span>, <span class="comment"><EM>-- Control Key</EM></span>
-+ <span class="symbol"><A NAME="ref_65_26">Shift</A></span>, <span class="comment"><EM>-- Shift Key</EM></span>
-+ <span class="symbol"><A NAME="ref_66_26">Alt</A></span>); <span class="comment"><EM>-- ALT Key</EM></span>
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_68_12">Real_Buttons</A></span> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_26">Left</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_63_26">Button4</A>;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_69_12">Modifier_Keys</A></span> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Control</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_66_26">Alt</A>;
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_71_9">Button_State</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_71_26">Released</A></span>,
-+ <span class="symbol"><A NAME="ref_72_26">Pressed</A></span>,
-+ <span class="symbol"><A NAME="ref_73_26">Clicked</A></span>,
-+ <span class="symbol"><A NAME="ref_74_26">Double_Clicked</A></span>,
-+ <span class="symbol"><A NAME="ref_75_26">Triple_Clicked</A></span>);
-
-- <b>type</b> Button_States <b>is</b> <b>array</b> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>) <b>of</b> Boolean;
-+ <b>type</b> Button_States <b>is</b> <b>array</b> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>) <b>of</b> Boolean;
- <b>pragma</b> Pack (Button_States);
-
-- <FONT COLOR=red><A NAME="ref_84_4">All_Clicks</A></FONT> : <b>constant</b> Button_States := (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_77_26">Clicked</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_79_26">Triple_Clicked</A> =&gt; True,
-+ <span class="symbol"><A NAME="ref_80_4">All_Clicks</A></span> : <b>constant</b> Button_States := (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_73_26">Clicked</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_26">Triple_Clicked</A> =&gt; True,
- <b>others</b> =&gt; False);
-- <FONT COLOR=red><A NAME="ref_86_4">All_States</A></FONT> : <b>constant</b> Button_States := (<b>others</b> =&gt; True);
-+ <span class="symbol"><A NAME="ref_82_4">All_States</A></span> : <b>constant</b> Button_States := (<b>others</b> =&gt; True);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_88_9">Mouse_Event</A></FONT> <b>is</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_84_9">Mouse_Event</A></span> <b>is</b> <b>private</b>;
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_mouse.3x.html">curs_mouse.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_94_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_50_13">Has_Mouse</A></FONT> <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- Return true if a mouse device is supported, false otherwise.</EM></FONT>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_97_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_14">Register_Reportable_Event</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_98_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_41">Button</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>;
-- <FONT COLOR=red><A NAME="ref_99_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_78_41">State</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>;
-- <FONT COLOR=red><A NAME="ref_100_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_79_41">Mask</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>);
-- <FONT COLOR=green><EM>-- Stores the event described by the button and the state in the mask.</EM></FONT>
-- <FONT COLOR=green><EM>-- Before you call this the first time, you should initialize the mask</EM></FONT>
-- <FONT COLOR=green><EM>-- with the Empty_Mask constant</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_97_14">Register_Reportable_Event</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_106_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_14">Register_Reportable_Events</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_107_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_42">Button</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>;
-- <FONT COLOR=red><A NAME="ref_108_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_96_42">State</A></FONT> : Button_States;
-- <FONT COLOR=red><A NAME="ref_109_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_97_42">Mask</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>);
-- <FONT COLOR=green><EM>-- Register all events described by the Button and the State bitmap.</EM></FONT>
-- <FONT COLOR=green><EM>-- Before you call this the first time, you should initialize the mask</EM></FONT>
-- <FONT COLOR=green><EM>-- with the Empty_Mask constant</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <FONT COLOR=green><EM>-- There is one difference to mousmask(): we return the value of the</EM></FONT>
-- <FONT COLOR=green><EM>-- old mask, that means the event mask value before this call.</EM></FONT>
-- <FONT COLOR=green><EM>-- Not Implemented: The library version</EM></FONT>
-- <FONT COLOR=green><EM>-- returns a Mouse_Mask that tells which events are reported.</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_119_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_107_13">Start_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_119_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_107_26">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_62_4">All_Events</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mousemask()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_119_13">Start_Mouse</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_124_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_123_14">End_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_124_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_123_25">Mask</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A>);
-- <FONT COLOR=green><EM>-- Terminates the mouse, restores the specified event mask</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_124_14">End_Mouse</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_129_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_62_13">Get_Mouse</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">getmouse()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_129_13">Get_Mouse</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_133_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_14">Get_Event</A></FONT> (<FONT COLOR=red><A NAME="ref_133_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_25">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>;
-- <FONT COLOR=red><A NAME="ref_134_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_172_25">Y</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_135_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_173_25">X</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_136_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_174_25">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_9">Mouse_Button</A>;
-- <FONT COLOR=red><A NAME="ref_137_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_175_25">State</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_75_9">Button_State</A>);
-- <FONT COLOR=green><EM>-- !!! Warning: X and Y are screen coordinates. Due to ripped of lines they</EM></FONT>
-- <FONT COLOR=green><EM>-- may not be identical to window coordinates.</EM></FONT>
-- <FONT COLOR=green><EM>-- Not Implemented: Get_Event only reports one event, the C library</EM></FONT>
-- <FONT COLOR=green><EM>-- version supports multiple events, e.g. {click-1, click-3}</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_133_14">Get_Event</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_145_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_14">Unget_Mouse</A></FONT> (<FONT COLOR=red><A NAME="ref_145_27" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_27">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">ungetmouse()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_145_14">Unget_Mouse</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_150_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_13">Enclosed_In_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_150_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_33">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_151_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_195_33">Event</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">wenclose()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- But : use event instead of screen coordinates.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_150_13">Enclosed_In_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_157_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_13">Mouse_Interval</A></FONT> (<FONT COLOR=red><A NAME="ref_157_29" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_29">Msec</A></FONT> : Natural := 200) <b>return</b> Natural;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mouseinterval()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_157_13">Mouse_Interval</A>);
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_mouse.3x.html">curs_mouse.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_90_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_50_13">Has_Mouse</A></span> <b>return</b> Boolean;
-+ <span class="comment"><EM>-- Return true if a mouse device is supported, false otherwise.</EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_93_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_14">Register_Reportable_Event</A></span>
-+ (<span class="symbol"><A NAME="ref_94_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_41">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
-+ <span class="symbol"><A NAME="ref_95_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_78_41">State</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>;
-+ <span class="symbol"><A NAME="ref_96_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_79_41">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>);
-+ <span class="comment"><EM>-- Stores the event described by the button and the state in the mask.</EM></span>
-+ <span class="comment"><EM>-- Before you call this the first time, you should initialize the mask</EM></span>
-+ <span class="comment"><EM>-- with the Empty_Mask constant</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_93_14">Register_Reportable_Event</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_102_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_14">Register_Reportable_Events</A></span>
-+ (<span class="symbol"><A NAME="ref_103_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_42">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
-+ <span class="symbol"><A NAME="ref_104_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_96_42">State</A></span> : Button_States;
-+ <span class="symbol"><A NAME="ref_105_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_97_42">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>);
-+ <span class="comment"><EM>-- Register all events described by the Button and the State bitmap.</EM></span>
-+ <span class="comment"><EM>-- Before you call this the first time, you should initialize the mask</EM></span>
-+ <span class="comment"><EM>-- with the Empty_Mask constant</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <span class="comment"><EM>-- There is one difference to mousmask(): we return the value of the</EM></span>
-+ <span class="comment"><EM>-- old mask, that means the event mask value before this call.</EM></span>
-+ <span class="comment"><EM>-- Not Implemented: The library version</EM></span>
-+ <span class="comment"><EM>-- returns a Mouse_Mask that tells which events are reported.</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_115_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_107_13">Start_Mouse</A></span> (<span class="symbol"><A NAME="ref_115_26" HREF="terminal_interface-curses-mouse__adb.htm#ref_107_26">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_58_4">All_Events</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mousemask()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_115_13">Start_Mouse</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_120_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_123_14">End_Mouse</A></span> (<span class="symbol"><A NAME="ref_120_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_123_25">Mask</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_4">No_Events</A>);
-+ <span class="comment"><EM>-- Terminates the mouse, restores the specified event mask</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_120_14">End_Mouse</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_125_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_62_13">Get_Mouse</A></span> <b>return</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>;
-+ <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_125_13">Get_Mouse</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_129_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_129_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>;
-+ <span class="symbol"><A NAME="ref_130_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_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_131_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_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_132_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_60_9">Mouse_Button</A>;
-+ <span class="symbol"><A NAME="ref_133_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_71_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>
-+ <span class="comment"><EM>-- version supports multiple events, e.g. {click-1, click-3}</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_129_14">Get_Event</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_141_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_14">Unget_Mouse</A></span> (<span class="symbol"><A NAME="ref_141_27" HREF="terminal_interface-curses-mouse__adb.htm#ref_184_27">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_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_141_14">Unget_Mouse</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_146_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_13">Enclosed_In_Window</A></span> (<span class="symbol"><A NAME="ref_146_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_194_33">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_147_33" HREF="terminal_interface-curses-mouse__adb.htm#ref_195_33">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_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_146_13">Enclosed_In_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_153_13" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_13">Mouse_Interval</A></span> (<span class="symbol"><A NAME="ref_153_29" HREF="terminal_interface-curses-mouse__adb.htm#ref_209_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_153_13">Mouse_Interval</A>);
-
- <b>private</b>
-- <b>type</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.unsigned_long;
-+ <b>type</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> <b>is</b> <b>new</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.unsigned_long;
-
-- <b>type</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A> <b>is</b>
-+ <b>type</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A> <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_166_10">Id</A></FONT> : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'First) ..
-- Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Last);
-- <FONT COLOR=red><A NAME="ref_168_10">X</A></FONT>, <FONT COLOR=red><A NAME="ref_168_13">Y</A></FONT>, <FONT COLOR=red><A NAME="ref_168_16">Z</A></FONT> : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int'First) ..
-- Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int'Last);
-- <FONT COLOR=red><A NAME="ref_170_10">Bstate</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A>;
-+ <span class="symbol"><A NAME="ref_162_10">Id</A></span> : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'First) ..
-+ Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Last);
-+ <span class="symbol"><A NAME="ref_164_10">X</A></span>, <span class="symbol"><A NAME="ref_164_13">Y</A></span>, <span class="symbol"><A NAME="ref_164_16">Z</A></span> : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int'First) ..
-+ Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int'Last);
-+ <span class="symbol"><A NAME="ref_166_10">Bstate</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
- <b>end</b> <b>record</b>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A>);
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>);
-
-- <b>for</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_88_9">Mouse_Event</A> <b>use</b>
-+ <b>for</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A> <b>use</b>
- <b>record</b>
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_166_10">Id</A> <b>at</b> 0 <b>range</b> 0 .. 15;
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_10">X</A> <b>at</b> 0 <b>range</b> 32 .. 63;
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_13">Y</A> <b>at</b> 0 <b>range</b> 64 .. 95;
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_168_16">Z</A> <b>at</b> 0 <b>range</b> 96 .. 127;
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_170_10">Bstate</A> <b>at</b> 0 <b>range</b> 128 .. 159;
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_162_10">Id</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_310_4">MEVENT_id_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_311_4">MEVENT_id_Last</A>;
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_164_10">X</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_312_4">MEVENT_x_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_313_4">MEVENT_x_Last</A>;
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_164_13">Y</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_314_4">MEVENT_y_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_315_4">MEVENT_y_Last</A>;
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_164_16">Z</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_316_4">MEVENT_z_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_317_4">MEVENT_z_Last</A>;
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_166_10">Bstate</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_318_4">MEVENT_bstate_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_319_4">MEVENT_bstate_Last</A>;
- <b>end</b> <b>record</b>;
-- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT>
-- <FONT COLOR=green><EM>-- different on your system.</EM></FONT>
-+ <b>for</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>'Size <b>use</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_320_4">MEVENT_Size</A>;
-+ Generation_Bit_Order : System.Bit_Order <b>renames</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_10_4">Bit_Order</A>;
-
-- <FONT COLOR=red><A NAME="ref_185_4">Generation_Bit_Order</A></FONT> : <b>constant</b> System.Bit_Order := System.Low_Order_First;
-- <FONT COLOR=green><EM>-- This constant may be different on your system.</EM></FONT>
-+ <span class="symbol"><A NAME="ref_186_4">BUTTON_CTRL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_352_4">BUTTON_CTRL</A>;
-+ <span class="symbol"><A NAME="ref_187_4">BUTTON_SHIFT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_353_4">BUTTON_SHIFT</A>;
-+ <span class="symbol"><A NAME="ref_188_4">BUTTON_ALT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_354_4">BUTTON_ALT</A>;
-+ <span class="symbol"><A NAME="ref_189_4">BUTTON1_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_330_4">all_events_button_1</A>;
-+ <span class="symbol"><A NAME="ref_191_4">BUTTON2_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_337_4">all_events_button_2</A>;
-+ <span class="symbol"><A NAME="ref_193_4">BUTTON3_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_344_4">all_events_button_3</A>;
-+ <span class="symbol"><A NAME="ref_195_4">BUTTON4_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_351_4">all_events_button_4</A>;
-+ <span class="symbol"><A NAME="ref_197_4">ALL_MOUSE_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_356_4">ALL_MOUSE_EVENTS</A>;
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_4">No_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := 0;
-+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_58_4">All_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_197_4">ALL_MOUSE_EVENTS</A>;
-
-- <FONT COLOR=red><A NAME="ref_188_4">BUTTON1_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000001#;
-- <FONT COLOR=red><A NAME="ref_189_4">BUTTON1_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000002#;
-- <FONT COLOR=red><A NAME="ref_190_4">BUTTON1_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000004#;
-- <FONT COLOR=red><A NAME="ref_191_4">BUTTON1_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000010#;
-- <FONT COLOR=red><A NAME="ref_192_4">BUTTON1_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000020#;
-- <FONT COLOR=red><A NAME="ref_193_4">BUTTON1_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000040#;
-- <FONT COLOR=red><A NAME="ref_194_4">BUTTON2_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000100#;
-- <FONT COLOR=red><A NAME="ref_195_4">BUTTON2_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000200#;
-- <FONT COLOR=red><A NAME="ref_196_4">BUTTON2_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000400#;
-- <FONT COLOR=red><A NAME="ref_197_4">BUTTON2_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000001000#;
-- <FONT COLOR=red><A NAME="ref_198_4">BUTTON2_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000002000#;
-- <FONT COLOR=red><A NAME="ref_199_4">BUTTON2_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000004000#;
-- <FONT COLOR=red><A NAME="ref_200_4">BUTTON3_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000010000#;
-- <FONT COLOR=red><A NAME="ref_201_4">BUTTON3_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000020000#;
-- <FONT COLOR=red><A NAME="ref_202_4">BUTTON3_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000040000#;
-- <FONT COLOR=red><A NAME="ref_203_4">BUTTON3_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000100000#;
-- <FONT COLOR=red><A NAME="ref_204_4">BUTTON3_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000200000#;
-- <FONT COLOR=red><A NAME="ref_205_4">BUTTON3_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000400000#;
-- <FONT COLOR=red><A NAME="ref_206_4">BUTTON4_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00001000000#;
-- <FONT COLOR=red><A NAME="ref_207_4">BUTTON4_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00002000000#;
-- <FONT COLOR=red><A NAME="ref_208_4">BUTTON4_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00004000000#;
-- <FONT COLOR=red><A NAME="ref_209_4">BUTTON4_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00010000000#;
-- <FONT COLOR=red><A NAME="ref_210_4">BUTTON4_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00020000000#;
-- <FONT COLOR=red><A NAME="ref_211_4">BUTTON4_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00040000000#;
-- <FONT COLOR=red><A NAME="ref_212_4">BUTTON_CTRL</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00100000000#;
-- <FONT COLOR=red><A NAME="ref_213_4">BUTTON_SHIFT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00200000000#;
-- <FONT COLOR=red><A NAME="ref_214_4">BUTTON_ALT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00400000000#;
-- <FONT COLOR=red><A NAME="ref_215_4">REPORT_MOUSE_POSITION</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#01000000000#;
-- <FONT COLOR=red><A NAME="ref_216_4">ALL_MOUSE_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00777777777#;
-- <FONT COLOR=red><A NAME="ref_217_4">BUTTON1_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000000077#;
-- <FONT COLOR=red><A NAME="ref_218_4">BUTTON2_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000007700#;
-- <FONT COLOR=red><A NAME="ref_219_4">BUTTON3_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00000770000#;
-- <FONT COLOR=red><A NAME="ref_220_4">BUTTON4_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 8#00077000000#;
--
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_4">No_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := 0;
-- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_62_4">All_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_216_4">ALL_MOUSE_EVENTS</A>;
--
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_48_35">Mouse</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-mouse__ads.htm#ref_44_35">Mouse</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm 2011-02-25 23:43:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,84 +1,96 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-panels-user_data.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-panels-user_data.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-panels-user_data.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-panels-user_data.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Panels.User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
--<b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>;
--<b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Panels.User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-+<b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>;
-+<b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<FONT COLOR=red><A NAME="ref_47_47" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<span class="symbol"><A NAME="ref_47_47" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A></span> <b>is</b>
-
-- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
-+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_51_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_52_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_54_29">Data</A></FONT> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_51_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_29">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_52_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_54_29">Data</A></span> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_54_16">Set_Panel_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_54_35" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_55_35" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Addr</A></FONT> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_54_16">Set_Panel_Userptr</A></span> (<span class="symbol"><A NAME="ref_54_35" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_55_35" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Addr</A></span> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Set_Panel_Userptr, "set_panel_userptr");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Set_Panel_Userptr</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_29">Pan</A>, <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_54_29">Data</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_54_16">Set_Panel_Userptr</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_29">Pan</A>, <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_54_29">Data</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_14">Set_User_Data</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_63_13" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_63_28" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_28">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_63_13" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_63_28" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_28">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_65_16">Panel_Userptr</A></FONT> (<FONT COLOR=red><A NAME="ref_65_31" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_65_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_65_16">Panel_Userptr</A></span> (<span class="symbol"><A NAME="ref_65_31" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_65_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>;
- <b>pragma</b> Import (C, Panel_Userptr, "panel_userptr");
- <b>begin</b>
- <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_65_16">Panel_Userptr</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_28">Pan</A>);
- <b>end</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_13">Get_User_Data</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_71_14" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_71_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_72_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_60_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_71_14" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_71_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_29">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_72_29" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_60_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_60_29">Data</A> := <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_64_13">Get_User_Data</A> (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_29">Pan</A>);
- <b>end</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_59_14">Get_User_Data</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-panels-user_data__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-panels-user_data__ads.htm 2010-01-09 20:31:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-panels-user_data__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,75 +1,87 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-panels-user_data.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-panels-user_data.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-panels-user_data.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-panels-user_data.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Panels.User_Data --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.15 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Panels.User_Data --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.15 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_43_9" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User</A></FONT> <b>is</b> <b>limited</b> <b>private</b>;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_44_9" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_43_9">User</A>;
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<FONT COLOR=red><A NAME="ref_45_42" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_47_47">User_Data</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/panel.3x.html">panel.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_53_14" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_51_14">Set_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_53_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_51_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_54_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_52_29">Data</A></FONT> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">set_panel_userptr</A></EM></FONT>
-+ <b>type</b> <span class="symbol"><A NAME="ref_43_9" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User</A></span> <b>is</b> <b>limited</b> <b>private</b>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_44_9" HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_43_9">User</A>;
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<span class="symbol"><A NAME="ref_45_42" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_47_47">User_Data</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/panel.3x.html">panel.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_53_14" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_51_14">Set_User_Data</A></span> (<span class="symbol"><A NAME="ref_53_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_51_29">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_54_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_52_29">Data</A></span> : <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">set_panel_userptr</A></EM></span>
- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_53_14">Set_User_Data</A>);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_71_14">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_59_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_71_29">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_60_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_72_29">Data</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_userptr</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_63_13">Get_User_Data</A></FONT> (<FONT COLOR=red><A NAME="ref_64_28" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_63_28">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_userptr</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_71_14">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_59_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_71_29">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_60_29" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_72_29">Data</A></span> : <b>out</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_userptr</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_63_13">Get_User_Data</A></span> (<span class="symbol"><A NAME="ref_64_28" HREF="terminal_interface-curses-panels-user_data__adb.htm#ref_63_28">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_44_9">User_Access</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_userptr</A></EM></span>
-+ <span class="comment"><EM>-- Same as function</EM></span>
- <b>pragma</b> Inline (Get_User_Data);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>.<A HREF="terminal_interface-curses-panels-user_data__ads.htm#ref_45_42">User_Data</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-panels__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-panels__adb.htm 2011-02-25 23:43:50.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-panels__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,171 +1,183 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-panels.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-panels.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-panels.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-panels.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Panels --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2004,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Panels --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2004,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.14 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_45_40" HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_45_40" HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A></span> <b>is</b>
-
-- <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
-+ <b>use</b> <b>type</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_49_13" HREF="terminal_interface-curses-panels__ads.htm#ref_67_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_49_21" HREF="terminal_interface-curses-panels__ads.htm#ref_67_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_49_13" HREF="terminal_interface-curses-panels__ads.htm#ref_66_13">Create</A></span> (<span class="symbol"><A NAME="ref_49_21" HREF="terminal_interface-curses-panels__ads.htm#ref_66_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_51_16">Newpanel</A></FONT> (<FONT COLOR=red><A NAME="ref_51_26" HREF="terminal_interface-curses-panels__adb.htm#ref_51_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_51_16">Newpanel</A></span> (<span class="symbol"><A NAME="ref_51_26" HREF="terminal_interface-curses-panels__adb.htm#ref_51_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
- <b>pragma</b> Import (C, Newpanel, "new_panel");
-
-- <FONT COLOR=red><A NAME="ref_54_7">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_54_7">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses-panels__adb.htm#ref_54_7">Pan</A> := <A HREF="terminal_interface-curses-panels__adb.htm#ref_51_16">Newpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_67_21">Win</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_54_7">Pan</A> = <A HREF="terminal_interface-curses-panels__ads.htm#ref_54_4">Null_Panel</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <A HREF="terminal_interface-curses-panels__adb.htm#ref_54_7">Pan</A> := <A HREF="terminal_interface-curses-panels__adb.htm#ref_51_16">Newpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_66_21">Win</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_54_7">Pan</A> = <A HREF="terminal_interface-curses-panels__ads.htm#ref_53_4">Null_Panel</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
- <b>return</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_54_7">Pan</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_67_13">Create</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_66_13">Create</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_63_14" HREF="terminal_interface-curses-panels__ads.htm#ref_77_14">Bottom</A></FONT> (<FONT COLOR=red><A NAME="ref_63_22" HREF="terminal_interface-curses-panels__ads.htm#ref_77_22">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_63_14" HREF="terminal_interface-curses-panels__ads.htm#ref_76_14">Bottom</A></span> (<span class="symbol"><A NAME="ref_63_22" HREF="terminal_interface-curses-panels__ads.htm#ref_76_22">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_65_16">Bottompanel</A></FONT> (<FONT COLOR=red><A NAME="ref_65_29" HREF="terminal_interface-curses-panels__adb.htm#ref_65_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_65_16">Bottompanel</A></span> (<span class="symbol"><A NAME="ref_65_29" HREF="terminal_interface-curses-panels__adb.htm#ref_65_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Bottompanel, "bottom_panel");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_65_16">Bottompanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_77_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_65_16">Bottompanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_76_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_77_14">Bottom</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_76_14">Bottom</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_73_14" HREF="terminal_interface-curses-panels__ads.htm#ref_82_14">Top</A></FONT> (<FONT COLOR=red><A NAME="ref_73_19" HREF="terminal_interface-curses-panels__ads.htm#ref_82_19">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_73_14" HREF="terminal_interface-curses-panels__ads.htm#ref_81_14">Top</A></span> (<span class="symbol"><A NAME="ref_73_19" HREF="terminal_interface-curses-panels__ads.htm#ref_81_19">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_75_16">Toppanel</A></FONT> (<FONT COLOR=red><A NAME="ref_75_26" HREF="terminal_interface-curses-panels__adb.htm#ref_75_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_75_16">Toppanel</A></span> (<span class="symbol"><A NAME="ref_75_26" HREF="terminal_interface-curses-panels__adb.htm#ref_75_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Toppanel, "top_panel");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_75_16">Toppanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_82_19">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_75_16">Toppanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_81_19">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_82_14">Top</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_81_14">Top</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_83_14" HREF="terminal_interface-curses-panels__ads.htm#ref_87_14">Show</A></FONT> (<FONT COLOR=red><A NAME="ref_83_20" HREF="terminal_interface-curses-panels__ads.htm#ref_87_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_83_14" HREF="terminal_interface-curses-panels__ads.htm#ref_86_14">Show</A></span> (<span class="symbol"><A NAME="ref_83_20" HREF="terminal_interface-curses-panels__ads.htm#ref_86_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_85_16">Showpanel</A></FONT> (<FONT COLOR=red><A NAME="ref_85_27" HREF="terminal_interface-curses-panels__adb.htm#ref_85_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_85_16">Showpanel</A></span> (<span class="symbol"><A NAME="ref_85_27" HREF="terminal_interface-curses-panels__adb.htm#ref_85_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Showpanel, "show_panel");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_85_16">Showpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_87_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_85_16">Showpanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_86_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_87_14">Show</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_86_14">Show</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_93_14" HREF="terminal_interface-curses-panels__ads.htm#ref_97_14">Hide</A></FONT> (<FONT COLOR=red><A NAME="ref_93_20" HREF="terminal_interface-curses-panels__ads.htm#ref_97_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_93_14" HREF="terminal_interface-curses-panels__ads.htm#ref_96_14">Hide</A></span> (<span class="symbol"><A NAME="ref_93_20" HREF="terminal_interface-curses-panels__ads.htm#ref_96_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_95_16">Hidepanel</A></FONT> (<FONT COLOR=red><A NAME="ref_95_27" HREF="terminal_interface-curses-panels__adb.htm#ref_95_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_95_16">Hidepanel</A></span> (<span class="symbol"><A NAME="ref_95_27" HREF="terminal_interface-curses-panels__adb.htm#ref_95_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Hidepanel, "hide_panel");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_95_16">Hidepanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_97_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_95_16">Hidepanel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_96_20">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_97_14">Hide</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_96_14">Hide</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_103_13" HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_103_25" HREF="terminal_interface-curses-panels__ads.htm#ref_102_25">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_103_13" HREF="terminal_interface-curses-panels__ads.htm#ref_101_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_103_25" HREF="terminal_interface-curses-panels__ads.htm#ref_101_25">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_105_16">Panel_Win</A></FONT> (<FONT COLOR=red><A NAME="ref_105_27" HREF="terminal_interface-curses-panels__adb.htm#ref_105_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_105_16">Panel_Win</A></span> (<span class="symbol"><A NAME="ref_105_27" HREF="terminal_interface-curses-panels__adb.htm#ref_105_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Panel_Win, "panel_window");
-
-- <FONT COLOR=red><A NAME="ref_108_7">Win</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-panels__adb.htm#ref_105_16">Panel_Win</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_102_25">Pan</A>);
-+ <span class="symbol"><A NAME="ref_108_7">Win</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses-panels__adb.htm#ref_105_16">Panel_Win</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_101_25">Pan</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_108_7">Win</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_108_7">Win</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
- <b>return</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_108_7">Win</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_101_13">Get_Window</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_116_14" HREF="terminal_interface-curses-panels__ads.htm#ref_111_14">Replace</A></FONT> (<FONT COLOR=red><A NAME="ref_116_23" HREF="terminal_interface-curses-panels__ads.htm#ref_111_23">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_117_23" HREF="terminal_interface-curses-panels__ads.htm#ref_112_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_116_14" HREF="terminal_interface-curses-panels__ads.htm#ref_110_14">Replace</A></span> (<span class="symbol"><A NAME="ref_116_23" HREF="terminal_interface-curses-panels__ads.htm#ref_110_23">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_117_23" HREF="terminal_interface-curses-panels__ads.htm#ref_111_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_119_16">Replace_Pan</A></FONT> (<FONT COLOR=red><A NAME="ref_119_29" HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_120_29" HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_119_16">Replace_Pan</A></span> (<span class="symbol"><A NAME="ref_119_29" HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_120_29" HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Replace_Pan, "replace_panel");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Replace_Pan</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_111_23">Pan</A>, <A HREF="terminal_interface-curses-panels__ads.htm#ref_112_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_119_16">Replace_Pan</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_110_23">Pan</A>, <A HREF="terminal_interface-curses-panels__ads.htm#ref_111_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_111_14">Replace</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_110_14">Replace</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_128_14" HREF="terminal_interface-curses-panels__ads.htm#ref_117_14">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_128_20" HREF="terminal_interface-curses-panels__ads.htm#ref_117_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_129_20" HREF="terminal_interface-curses-panels__ads.htm#ref_118_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_130_20" HREF="terminal_interface-curses-panels__ads.htm#ref_119_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_132_16">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_132_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_133_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_134_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_128_14" HREF="terminal_interface-curses-panels__ads.htm#ref_116_14">Move</A></span> (<span class="symbol"><A NAME="ref_128_20" HREF="terminal_interface-curses-panels__ads.htm#ref_116_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_129_20" HREF="terminal_interface-curses-panels__ads.htm#ref_117_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_130_20" HREF="terminal_interface-curses-panels__ads.htm#ref_118_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_132_16">Move</A></span> (<span class="symbol"><A NAME="ref_132_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_133_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_134_22" HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Move, "move_panel");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Move</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_117_20">Pan</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_118_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_119_20">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_132_16">Move</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_116_20">Pan</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_117_20">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_118_20">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_117_14">Move</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_116_14">Move</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_142_13" HREF="terminal_interface-curses-panels__ads.htm#ref_124_13">Is_Hidden</A></FONT> (<FONT COLOR=red><A NAME="ref_142_24" HREF="terminal_interface-curses-panels__ads.htm#ref_124_24">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_142_13" HREF="terminal_interface-curses-panels__ads.htm#ref_123_13">Is_Hidden</A></span> (<span class="symbol"><A NAME="ref_142_24" HREF="terminal_interface-curses-panels__ads.htm#ref_123_24">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_144_16">Panel_Hidden</A></FONT> (<FONT COLOR=red><A NAME="ref_144_30" HREF="terminal_interface-curses-panels__adb.htm#ref_144_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_144_16">Panel_Hidden</A></span> (<span class="symbol"><A NAME="ref_144_30" HREF="terminal_interface-curses-panels__adb.htm#ref_144_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Panel_Hidden, "panel_hidden");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_144_16">Panel_Hidden</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_124_24">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_144_16">Panel_Hidden</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_123_24">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_68_4">Curses_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_124_13">Is_Hidden</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_123_13">Is_Hidden</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_154_14" HREF="terminal_interface-curses-panels__ads.htm#ref_139_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_154_22" HREF="terminal_interface-curses-panels__ads.htm#ref_139_22">Pan</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_154_14" HREF="terminal_interface-curses-panels__ads.htm#ref_138_14">Delete</A></span> (<span class="symbol"><A NAME="ref_154_22" HREF="terminal_interface-curses-panels__ads.htm#ref_138_22">Pan</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_156_16">Del_Panel</A></FONT> (<FONT COLOR=red><A NAME="ref_156_27" HREF="terminal_interface-curses-panels__adb.htm#ref_156_16">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_156_16">Del_Panel</A></span> (<span class="symbol"><A NAME="ref_156_27" HREF="terminal_interface-curses-panels__adb.htm#ref_156_16">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Del_Panel, "del_panel");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_156_16">Del_Panel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_139_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_60_4">Panel_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-panels__adb.htm#ref_156_16">Del_Panel</A> (<A HREF="terminal_interface-curses-panels__ads.htm#ref_138_22">Pan</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_59_4">Panel_Exception</A>;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses-panels__ads.htm#ref_139_22">Pan</A> := <A HREF="terminal_interface-curses-panels__ads.htm#ref_54_4">Null_Panel</A>;
-- <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_139_14">Delete</A>;
-+ <A HREF="terminal_interface-curses-panels__ads.htm#ref_138_22">Pan</A> := <A HREF="terminal_interface-curses-panels__ads.htm#ref_53_4">Null_Panel</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_138_14">Delete</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-panels__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-panels__ads.htm 2010-05-29 21:56:06.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-panels__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,153 +1,164 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-panels.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-panels.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-panels.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-panels.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Panels --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.20 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Panels --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.22 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:57 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> System;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_44_35" HREF="terminal_interface-curses-panels__adb.htm#ref_45_40">Panels</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>);
-- <b>pragma</b> Linker_Options ("-lpanel");
-- <b>pragma</b> Linker_Options ("-lncurses");
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_49_9">Panel</A></FONT> <b>is</b> <b>private</b>;
--
-- <FONT COLOR=green><EM>---------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Interface constants --</EM></FONT>
-- <FONT COLOR=green><EM>---------------------------</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_54_4">Null_Panel</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
--
-- <FONT COLOR=green><EM>-------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Exceptions --</EM></FONT>
-- <FONT COLOR=green><EM>-------------------</EM></FONT>
--
-- <FONT COLOR=red><A NAME="ref_60_4">Panel_Exception</A></FONT> : <b>exception</b>;
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/panel.3x.html">panel.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_67_13" HREF="terminal_interface-curses-panels__adb.htm#ref_49_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_67_21" HREF="terminal_interface-curses-panels__adb.htm#ref_49_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">new_panel()</A></EM></FONT>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_44_35" HREF="terminal_interface-curses-panels__adb.htm#ref_45_40">Panels</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>);
-+ <b>pragma</b> Linker_Options ("-lpanel" &amp; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_9_4">DFT_ARG_SUFFIX</A>);
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_48_9">Panel</A></span> <b>is</b> <b>private</b>;
-+
-+ <span class="comment"><EM>---------------------------</EM></span>
-+ <span class="comment"><EM>-- Interface constants --</EM></span>
-+ <span class="comment"><EM>---------------------------</EM></span>
-+ <span class="symbol"><A NAME="ref_53_4">Null_Panel</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+
-+ <span class="comment"><EM>-------------------</EM></span>
-+ <span class="comment"><EM>-- Exceptions --</EM></span>
-+ <span class="comment"><EM>-------------------</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_59_4">Panel_Exception</A></span> : <b>exception</b>;
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/panel.3x.html">panel.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_66_13" HREF="terminal_interface-curses-panels__adb.htm#ref_49_13">Create</A></span> (<span class="symbol"><A NAME="ref_66_21" HREF="terminal_interface-curses-panels__adb.htm#ref_49_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">new_panel()</A></EM></span>
- <b>pragma</b> Inline (Create);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>function</b> New_Panel (<FONT COLOR=red><A NAME="ref_72_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A> <b>renames</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_67_13">Create</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">new_panel()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- pragma Inline (New_Panel);</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_77_14" HREF="terminal_interface-curses-panels__adb.htm#ref_63_14">Bottom</A></FONT> (<FONT COLOR=red><A NAME="ref_77_22" HREF="terminal_interface-curses-panels__adb.htm#ref_63_22">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">bottom_panel()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_77_14">Bottom</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_82_14" HREF="terminal_interface-curses-panels__adb.htm#ref_73_14">Top</A></FONT> (<FONT COLOR=red><A NAME="ref_82_19" HREF="terminal_interface-curses-panels__adb.htm#ref_73_19">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">top_panel()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_82_14">Top</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_87_14" HREF="terminal_interface-curses-panels__adb.htm#ref_83_14">Show</A></FONT> (<FONT COLOR=red><A NAME="ref_87_20" HREF="terminal_interface-curses-panels__adb.htm#ref_83_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">show_panel()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_87_14">Show</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_6"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_92_14">Update_Panels</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">update_panels()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>function</b> New_Panel (<span class="symbol"><A NAME="ref_71_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A> <b>renames</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_66_13">Create</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">new_panel()</A></EM></span>
-+ <span class="comment"><EM>-- pragma Inline (New_Panel);</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_76_14" HREF="terminal_interface-curses-panels__adb.htm#ref_63_14">Bottom</A></span> (<span class="symbol"><A NAME="ref_76_22" HREF="terminal_interface-curses-panels__adb.htm#ref_63_22">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">bottom_panel()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_76_14">Bottom</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_81_14" HREF="terminal_interface-curses-panels__adb.htm#ref_73_14">Top</A></span> (<span class="symbol"><A NAME="ref_81_19" HREF="terminal_interface-curses-panels__adb.htm#ref_73_19">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">top_panel()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_81_14">Top</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_86_14" HREF="terminal_interface-curses-panels__adb.htm#ref_83_14">Show</A></span> (<span class="symbol"><A NAME="ref_86_20" HREF="terminal_interface-curses-panels__adb.htm#ref_83_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">show_panel()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_86_14">Show</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_6"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_91_14">Update_Panels</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">update_panels()</A></EM></span>
- <b>pragma</b> Import (C, Update_Panels, "update_panels");
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_7"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_97_14" HREF="terminal_interface-curses-panels__adb.htm#ref_93_14">Hide</A></FONT> (<FONT COLOR=red><A NAME="ref_97_20" HREF="terminal_interface-curses-panels__adb.htm#ref_93_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">hide_panel()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_97_14">Hide</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_8"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_102_13" HREF="terminal_interface-curses-panels__adb.htm#ref_103_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_102_25" HREF="terminal_interface-curses-panels__adb.htm#ref_103_25">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_window()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_9"#2|</EM></FONT>
-- <b>function</b> Panel_Window (<FONT COLOR=red><A NAME="ref_107_27">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> <b>renames</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_102_13">Get_Window</A>;
-- <FONT COLOR=green><EM>-- pragma Inline (Panel_Window);</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_10"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_111_14" HREF="terminal_interface-curses-panels__adb.htm#ref_116_14">Replace</A></FONT> (<FONT COLOR=red><A NAME="ref_111_23" HREF="terminal_interface-curses-panels__adb.htm#ref_116_23">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_112_23" HREF="terminal_interface-curses-panels__adb.htm#ref_117_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">replace_panel()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_111_14">Replace</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_11"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_117_14" HREF="terminal_interface-curses-panels__adb.htm#ref_128_14">Move</A></FONT> (<FONT COLOR=red><A NAME="ref_117_20" HREF="terminal_interface-curses-panels__adb.htm#ref_128_20">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=red><A NAME="ref_118_20" HREF="terminal_interface-curses-panels__adb.htm#ref_129_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_119_20" HREF="terminal_interface-curses-panels__adb.htm#ref_130_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">move_panel()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_117_14">Move</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_12"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_124_13" HREF="terminal_interface-curses-panels__adb.htm#ref_142_13">Is_Hidden</A></FONT> (<FONT COLOR=red><A NAME="ref_124_24" HREF="terminal_interface-curses-panels__adb.htm#ref_142_24">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_hidden()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_124_13">Is_Hidden</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_13"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_129_13">Above</A></FONT> (<FONT COLOR=red><A NAME="ref_129_20" HREF="terminal_interface-curses-panels__ads.htm#ref_129_13">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_above()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_7"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_96_14" HREF="terminal_interface-curses-panels__adb.htm#ref_93_14">Hide</A></span> (<span class="symbol"><A NAME="ref_96_20" HREF="terminal_interface-curses-panels__adb.htm#ref_93_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">hide_panel()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_96_14">Hide</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_8"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_101_13" HREF="terminal_interface-curses-panels__adb.htm#ref_103_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_101_25" HREF="terminal_interface-curses-panels__adb.htm#ref_103_25">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_window()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_101_13">Get_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_9"#2|</EM></span>
-+ <b>function</b> Panel_Window (<span class="symbol"><A NAME="ref_106_27">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> <b>renames</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_101_13">Get_Window</A>;
-+ <span class="comment"><EM>-- pragma Inline (Panel_Window);</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_10"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_110_14" HREF="terminal_interface-curses-panels__adb.htm#ref_116_14">Replace</A></span> (<span class="symbol"><A NAME="ref_110_23" HREF="terminal_interface-curses-panels__adb.htm#ref_116_23">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_111_23" HREF="terminal_interface-curses-panels__adb.htm#ref_117_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">replace_panel()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_110_14">Replace</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_11"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_116_14" HREF="terminal_interface-curses-panels__adb.htm#ref_128_14">Move</A></span> (<span class="symbol"><A NAME="ref_116_20" HREF="terminal_interface-curses-panels__adb.htm#ref_128_20">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="symbol"><A NAME="ref_117_20" HREF="terminal_interface-curses-panels__adb.htm#ref_129_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_118_20" HREF="terminal_interface-curses-panels__adb.htm#ref_130_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">move_panel()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_116_14">Move</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_12"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_123_13" HREF="terminal_interface-curses-panels__adb.htm#ref_142_13">Is_Hidden</A></span> (<span class="symbol"><A NAME="ref_123_24" HREF="terminal_interface-curses-panels__adb.htm#ref_142_24">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_hidden()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses-panels__ads.htm#ref_123_13">Is_Hidden</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_13"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_128_13">Above</A></span> (<span class="symbol"><A NAME="ref_128_20" HREF="terminal_interface-curses-panels__ads.htm#ref_128_13">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_above()</A></EM></span>
- <b>pragma</b> Import (C, Above, "panel_above");
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_14"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_134_13">Below</A></FONT> (<FONT COLOR=red><A NAME="ref_134_20" HREF="terminal_interface-curses-panels__ads.htm#ref_134_13">Pan</A></FONT> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_below()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_14"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_133_13">Below</A></span> (<span class="symbol"><A NAME="ref_133_20" HREF="terminal_interface-curses-panels__ads.htm#ref_133_13">Pan</A></span> : <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>) <b>return</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">panel_below()</A></EM></span>
- <b>pragma</b> Import (C, Below, "panel_below");
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_15"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_139_14" HREF="terminal_interface-curses-panels__adb.htm#ref_154_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_139_22" HREF="terminal_interface-curses-panels__adb.htm#ref_154_22">Pan</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/panel.3x.html">del_panel()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_15"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_138_14" HREF="terminal_interface-curses-panels__adb.htm#ref_154_14">Delete</A></span> (<span class="symbol"><A NAME="ref_138_22" HREF="terminal_interface-curses-panels__adb.htm#ref_154_22">Pan</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/panel.3x.html">del_panel()</A></EM></span>
- <b>pragma</b> Inline (Delete);
-
- <b>private</b>
-- <b>type</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-- <A HREF="terminal_interface-curses-panels__ads.htm#ref_54_4">Null_Panel</A> : <b>constant</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_49_9">Panel</A> := 0;
-+ <b>type</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-+ <A HREF="terminal_interface-curses-panels__ads.htm#ref_53_4">Null_Panel</A> : <b>constant</b> <A HREF="terminal_interface-curses-panels__ads.htm#ref_48_9">Panel</A> := 0;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-panels__ads.htm#ref_44_35">Panels</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-putwin__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-putwin__adb.htm 2011-03-19 23:18:41.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-putwin__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,83 +1,95 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-putwin.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-putwin.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-putwin.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-putwin.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.PutWin --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.3 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.PutWin --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.3 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-
- <b>with</b> Ada.Streams.Stream_IO.C_Streams;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C_Streams;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C_Streams;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_45_40" HREF="terminal_interface-curses-putwin__ads.htm#ref_43_35">PutWin</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_45_40" HREF="terminal_interface-curses-putwin__ads.htm#ref_43_35">PutWin</A></span> <b>is</b>
-
-- <b>package</b> <FONT COLOR=red><A NAME="ref_47_12">ICS</A></FONT> <b>renames</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C_Streams;
-- <b>package</b> <FONT COLOR=red><A NAME="ref_48_12">ACS</A></FONT> <b>renames</b> Ada.Streams.Stream_IO.C_Streams;
-- <b>use</b> <b>type</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_51_14" HREF="terminal_interface-curses-putwin__ads.htm#ref_45_14">Put_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_51_26" HREF="terminal_interface-curses-putwin__ads.htm#ref_45_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_52_26" HREF="terminal_interface-curses-putwin__ads.htm#ref_46_26">File</A></FONT> : Ada.Streams.Stream_IO.File_Type) <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_53_16">putwin</A></FONT> (<FONT COLOR=red><A NAME="ref_53_24" HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_53_38" HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">f</A></FONT> : <A HREF="terminal_interface-curses-putwin__adb.htm#ref_47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>package</b> <span class="symbol"><A NAME="ref_47_12">ICS</A></span> <b>renames</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C_Streams;
-+ <b>package</b> <span class="symbol"><A NAME="ref_48_12">ACS</A></span> <b>renames</b> Ada.Streams.Stream_IO.C_Streams;
-+ <b>use</b> <b>type</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_51_14" HREF="terminal_interface-curses-putwin__ads.htm#ref_45_14">Put_Window</A></span> (<span class="symbol"><A NAME="ref_51_26" HREF="terminal_interface-curses-putwin__ads.htm#ref_45_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_52_26" HREF="terminal_interface-curses-putwin__ads.htm#ref_46_26">File</A></span> : Ada.Streams.Stream_IO.File_Type) <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_53_16">putwin</A></span> (<span class="symbol"><A NAME="ref_53_24" HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_53_38" HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">f</A></span> : <A HREF="terminal_interface-curses-putwin__adb.htm#ref_47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, putwin, "putwin");
-
-- <FONT COLOR=red><A NAME="ref_56_7">R</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">putwin</A> (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_45_26">Win</A>, <A HREF="terminal_interface-curses-putwin__adb.htm#ref_48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_46_26">File</A>));
-+ <span class="symbol"><A NAME="ref_56_7">R</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#ref_53_16">putwin</A> (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_45_26">Win</A>, <A HREF="terminal_interface-curses-putwin__adb.htm#ref_48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_46_26">File</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#ref_56_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_4">Curses_Ok</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#ref_56_7">R</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_4">Curses_Ok</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-putwin__ads.htm#ref_45_14">Put_Window</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_63_13" HREF="terminal_interface-curses-putwin__ads.htm#ref_48_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_63_25" HREF="terminal_interface-curses-putwin__ads.htm#ref_48_25">File</A></FONT> : Ada.Streams.Stream_IO.File_Type)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_65_16">getwin</A></FONT> (<FONT COLOR=red><A NAME="ref_65_24" HREF="terminal_interface-curses-putwin__adb.htm#ref_65_16">f</A></FONT> : <A HREF="terminal_interface-curses-putwin__adb.htm#ref_47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_63_13" HREF="terminal_interface-curses-putwin__ads.htm#ref_48_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_63_25" HREF="terminal_interface-curses-putwin__ads.htm#ref_48_25">File</A></span> : Ada.Streams.Stream_IO.File_Type)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_65_16">getwin</A></span> (<span class="symbol"><A NAME="ref_65_24" HREF="terminal_interface-curses-putwin__adb.htm#ref_65_16">f</A></span> : <A HREF="terminal_interface-curses-putwin__adb.htm#ref_47_12">ICS</A>.FILEs) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, getwin, "getwin");
-
-- <FONT COLOR=red><A NAME="ref_68_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#ref_65_16">getwin</A> (<A HREF="terminal_interface-curses-putwin__adb.htm#ref_48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_48_25">File</A>));
-+ <span class="symbol"><A NAME="ref_68_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses-putwin__adb.htm#ref_65_16">getwin</A> (<A HREF="terminal_interface-curses-putwin__adb.htm#ref_48_12">ACS</A>.C_Stream (<A HREF="terminal_interface-curses-putwin__ads.htm#ref_48_25">File</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#ref_68_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-putwin__adb.htm#ref_68_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>else</b>
- <b>return</b> <A HREF="terminal_interface-curses-putwin__adb.htm#ref_68_7">W</A>;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-putwin__ads.htm#ref_48_13">Get_Window</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__ads.htm#ref_43_35">PutWin</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__ads.htm#ref_43_35">PutWin</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-putwin__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-putwin__ads.htm 2006-09-23 20:31:32.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-putwin__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,56 +1,68 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-putwin.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-putwin.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-putwin.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-putwin.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.PutWin --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.3 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.PutWin --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.3 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-
- <b>with</b> Ada.Streams.Stream_IO;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_43_35" HREF="terminal_interface-curses-putwin__adb.htm#ref_45_40">PutWin</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_43_35" HREF="terminal_interface-curses-putwin__adb.htm#ref_45_40">PutWin</A></span> <b>is</b>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_45_14" HREF="terminal_interface-curses-putwin__adb.htm#ref_51_14">Put_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_45_26" HREF="terminal_interface-curses-putwin__adb.htm#ref_51_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_46_26" HREF="terminal_interface-curses-putwin__adb.htm#ref_52_26">File</A></FONT> : Ada.Streams.Stream_IO.File_Type);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_45_14" HREF="terminal_interface-curses-putwin__adb.htm#ref_51_14">Put_Window</A></span> (<span class="symbol"><A NAME="ref_45_26" HREF="terminal_interface-curses-putwin__adb.htm#ref_51_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_46_26" HREF="terminal_interface-curses-putwin__adb.htm#ref_52_26">File</A></span> : Ada.Streams.Stream_IO.File_Type);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_48_13" HREF="terminal_interface-curses-putwin__adb.htm#ref_63_13">Get_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_48_25" HREF="terminal_interface-curses-putwin__adb.htm#ref_63_25">File</A></FONT> : Ada.Streams.Stream_IO.File_Type) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_48_13" HREF="terminal_interface-curses-putwin__adb.htm#ref_63_13">Get_Window</A></span> (<span class="symbol"><A NAME="ref_48_25" HREF="terminal_interface-curses-putwin__adb.htm#ref_63_25">File</A></span> : Ada.Streams.Stream_IO.File_Type) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__ads.htm#ref_43_35">PutWin</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-putwin__ads.htm#ref_43_35">PutWin</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-termcap__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-termcap__adb.htm 2011-03-19 23:18:41.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-termcap__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,82 +1,94 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-termcap.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-termcap.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-termcap.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-termcap.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Termcap --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 2000-2006,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Termcap --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 2000-2006,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_47_40" HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_47_40" HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A></span> <b>is</b>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_49_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_59_13">Get_Entry</A></FONT> (<FONT COLOR=red><A NAME="ref_49_24" HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A></FONT> : String) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_49_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_59_13">Get_Entry</A></span> (<span class="symbol"><A NAME="ref_49_24" HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A></span> : String) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_51_16">tgetent</A></FONT> (<FONT COLOR=red><A NAME="ref_51_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">name</A></FONT> : char_array; <FONT COLOR=red><A NAME="ref_51_44" HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">val</A></FONT> : char_array)
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_51_16">tgetent</A></span> (<span class="symbol"><A NAME="ref_51_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">name</A></span> : char_array; <span class="symbol"><A NAME="ref_51_44" HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">val</A></span> : char_array)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, tgetent, "tgetent");
-- <FONT COLOR=red><A NAME="ref_54_7">NameTxt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A>'Length);
-- <FONT COLOR=red><A NAME="ref_55_7">Length</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_56_7">ignored</A></FONT> : <b>constant</b> char_array (0 .. 0) := (0 =&gt; nul);
-- <FONT COLOR=red><A NAME="ref_57_7">result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_54_7">NameTxt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A>'Length);
-+ <span class="symbol"><A NAME="ref_55_7">Length</A></span> : size_t;
-+ <span class="symbol"><A NAME="ref_56_7">ignored</A></span> : <b>constant</b> char_array (0 .. 0) := (0 =&gt; nul);
-+ <span class="symbol"><A NAME="ref_57_7">result</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_59_24">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_54_7">NameTxt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_55_7">Length</A>);
- <A HREF="terminal_interface-curses-termcap__adb.htm#ref_57_7">result</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#ref_51_16">tgetent</A> (char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_56_7">ignored</A>), <A HREF="terminal_interface-curses-termcap__adb.htm#ref_54_7">NameTxt</A>);
- <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#ref_57_7">result</A> = -1 <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>else</b>
- <b>return</b> Boolean'Val (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_57_7">result</A>);
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_59_13">Get_Entry</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_69_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_63_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="ref_69_23" HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A></FONT> : String) <b>return</b> Boolean
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_69_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_63_13">Get_Flag</A></span> (<span class="symbol"><A NAME="ref_69_23" HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A></span> : String) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_71_16">tgetflag</A></FONT> (<FONT COLOR=red><A NAME="ref_71_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_71_16">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_71_16">tgetflag</A></span> (<span class="symbol"><A NAME="ref_71_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_71_16">id</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, tgetflag, "tgetflag");
-- <FONT COLOR=red><A NAME="ref_73_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A>'Length);
-- <FONT COLOR=red><A NAME="ref_74_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_73_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A>'Length);
-+ <span class="symbol"><A NAME="ref_74_7">Length</A></span> : size_t;
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_63_23">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_73_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_74_7">Length</A>);
- <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#ref_71_16">tgetflag</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_73_7">Txt</A>) = 0 <b>then</b>
-@@ -86,15 +98,15 @@
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_63_13">Get_Flag</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_85_14" HREF="terminal_interface-curses-termcap__ads.htm#ref_67_14">Get_Number</A></FONT> (<FONT COLOR=red><A NAME="ref_85_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_86_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_68_26">Value</A></FONT> : <b>out</b> Integer;
-- <FONT COLOR=red><A NAME="ref_87_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_69_26">Result</A></FONT> : <b>out</b> Boolean)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_85_14" HREF="terminal_interface-curses-termcap__ads.htm#ref_67_14">Get_Number</A></span> (<span class="symbol"><A NAME="ref_85_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A></span> : String;
-+ <span class="symbol"><A NAME="ref_86_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_68_26">Value</A></span> : <b>out</b> Integer;
-+ <span class="symbol"><A NAME="ref_87_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_69_26">Result</A></span> : <b>out</b> Boolean)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_89_16">tgetnum</A></FONT> (<FONT COLOR=red><A NAME="ref_89_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_89_16">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_89_16">tgetnum</A></span> (<span class="symbol"><A NAME="ref_89_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_89_16">id</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, tgetnum, "tgetnum");
-- <FONT COLOR=red><A NAME="ref_91_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A>'Length);
-- <FONT COLOR=red><A NAME="ref_92_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_91_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A>'Length);
-+ <span class="symbol"><A NAME="ref_92_7">Length</A></span> : size_t;
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_67_26">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_91_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_92_7">Length</A>);
- <A HREF="terminal_interface-curses-termcap__ads.htm#ref_68_26">Value</A> := Integer (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_89_16">tgetnum</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_91_7">Txt</A>));
-@@ -105,40 +117,40 @@
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_67_14">Get_Number</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_104_14" HREF="terminal_interface-curses-termcap__ads.htm#ref_73_14">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_104_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_105_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_74_26">Value</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_106_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_75_26">Result</A></FONT> : <b>out</b> Boolean)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_104_14" HREF="terminal_interface-curses-termcap__ads.htm#ref_73_14">Get_String</A></span> (<span class="symbol"><A NAME="ref_104_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A></span> : String;
-+ <span class="symbol"><A NAME="ref_105_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_74_26">Value</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_106_26" HREF="terminal_interface-curses-termcap__ads.htm#ref_75_26">Result</A></span> : <b>out</b> Boolean)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_108_16">tgetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_108_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">id</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_109_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">buf</A></FONT> : char_array) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_108_16">tgetstr</A></span> (<span class="symbol"><A NAME="ref_108_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">id</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_109_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">buf</A></span> : char_array) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, tgetstr, "tgetstr");
-- <FONT COLOR=red><A NAME="ref_111_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A>'Length);
-- <FONT COLOR=red><A NAME="ref_112_7">Length</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_113_7">Txt2</A></FONT> : chars_ptr;
-- <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <FONT COLOR=green><EM>-- does it need to be 1024?</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_115_7">Return_Buffer</A></FONT> : <b>constant</b> t := (<b>others</b> =&gt; nul);
-+ <span class="symbol"><A NAME="ref_111_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A>'Length);
-+ <span class="symbol"><A NAME="ref_112_7">Length</A></span> : size_t;
-+ <span class="symbol"><A NAME="ref_113_7">Txt2</A></span> : chars_ptr;
-+ <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <span class="comment"><EM>-- does it need to be 1024?</EM></span>
-+ <span class="symbol"><A NAME="ref_115_7">Return_Buffer</A></span> : <b>constant</b> t := (<b>others</b> =&gt; nul);
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_73_26">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_111_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_112_7">Length</A>);
- <A HREF="terminal_interface-curses-termcap__adb.htm#ref_113_7">Txt2</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#ref_108_16">tgetstr</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_111_7">Txt</A>, char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_115_7">Return_Buffer</A>));
- <b>if</b> <A HREF="terminal_interface-curses-termcap__adb.htm#ref_113_7">Txt2</A> = Null_Ptr <b>then</b>
- <A HREF="terminal_interface-curses-termcap__ads.htm#ref_75_26">Result</A> := False;
- <b>else</b>
-- <A HREF="terminal_interface-curses-termcap__ads.htm#ref_74_26">Value</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_113_7">Txt2</A>);
-+ <A HREF="terminal_interface-curses-termcap__ads.htm#ref_74_26">Value</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_113_7">Txt2</A>);
- <A HREF="terminal_interface-curses-termcap__ads.htm#ref_75_26">Result</A> := True;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_73_14">Get_String</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_127_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_76_13">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_127_25" HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A></FONT> : String) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_127_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_76_13">Get_String</A></span> (<span class="symbol"><A NAME="ref_127_25" HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A></span> : String) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_129_16">tgetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_129_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">Id</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_130_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">buf</A></FONT> : char_array) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_129_16">tgetstr</A></span> (<span class="symbol"><A NAME="ref_129_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">Id</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_130_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">buf</A></span> : char_array) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, tgetstr, "tgetstr");
-- <FONT COLOR=red><A NAME="ref_132_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A>'Length);
-- <FONT COLOR=red><A NAME="ref_133_7">Length</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_134_7">Txt2</A></FONT> : chars_ptr;
-- <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <FONT COLOR=green><EM>-- does it need to be 1024?</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_136_7">Phony_Txt</A></FONT> : <b>constant</b> t := (<b>others</b> =&gt; nul);
-+ <span class="symbol"><A NAME="ref_132_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A>'Length);
-+ <span class="symbol"><A NAME="ref_133_7">Length</A></span> : size_t;
-+ <span class="symbol"><A NAME="ref_134_7">Txt2</A></span> : chars_ptr;
-+ <b>type</b> t <b>is</b> <b>new</b> char_array (0 .. 1024); <span class="comment"><EM>-- does it need to be 1024?</EM></span>
-+ <span class="symbol"><A NAME="ref_136_7">Phony_Txt</A></span> : <b>constant</b> t := (<b>others</b> =&gt; nul);
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_76_25">Name</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_132_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_133_7">Length</A>);
- <A HREF="terminal_interface-curses-termcap__adb.htm#ref_134_7">Txt2</A> := <A HREF="terminal_interface-curses-termcap__adb.htm#ref_129_16">tgetstr</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_132_7">Txt</A>, char_array (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_136_7">Phony_Txt</A>));
-@@ -149,21 +161,21 @@
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_76_13">Get_String</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_148_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_53_13">TGoto</A></FONT> (<FONT COLOR=red><A NAME="ref_148_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_149_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_54_20">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_150_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_55_20">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Termcap_String <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_151_16">tgoto</A></FONT> (<FONT COLOR=red><A NAME="ref_151_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">cap</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_152_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_153_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_148_13" HREF="terminal_interface-curses-termcap__ads.htm#ref_53_13">TGoto</A></span> (<span class="symbol"><A NAME="ref_148_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A></span> : String;
-+ <span class="symbol"><A NAME="ref_149_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_54_20">Col</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_150_20" HREF="terminal_interface-curses-termcap__ads.htm#ref_55_20">Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>) <b>return</b> Termcap_String <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_151_16">tgoto</A></span> (<span class="symbol"><A NAME="ref_151_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">cap</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_152_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_153_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, tgoto);
-- <FONT COLOR=red><A NAME="ref_155_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A>'Length);
-- <FONT COLOR=red><A NAME="ref_156_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_155_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A>'Length);
-+ <span class="symbol"><A NAME="ref_156_7">Length</A></span> : size_t;
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_53_20">Cap</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_155_7">Txt</A>, <A HREF="terminal_interface-curses-termcap__adb.htm#ref_156_7">Length</A>);
-- <b>return</b> Termcap_String (<A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A>
-- (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">tgoto</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_155_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_54_20">Col</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_55_20">Row</A>))));
-+ <b>return</b> Termcap_String (<A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A>
-+ (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_151_16">tgoto</A> (<A HREF="terminal_interface-curses-termcap__adb.htm#ref_155_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_54_20">Col</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-termcap__ads.htm#ref_55_20">Row</A>))));
- <b>end</b> <A HREF="terminal_interface-curses-termcap__ads.htm#ref_53_13">TGoto</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-termcap__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-termcap__ads.htm 2008-10-11 21:36:31.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-termcap__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,86 +1,98 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-termcap.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-termcap.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-termcap.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-termcap.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Termcap --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.3 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_42_35" HREF="terminal_interface-curses-termcap__adb.htm#ref_47_40">Termcap</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page curs_termcap.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not implemented: tputs (see curs_terminfo)</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Termcap --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.3 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_42_35" HREF="terminal_interface-curses-termcap__adb.htm#ref_47_40">Termcap</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page curs_termcap.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not implemented: tputs (see curs_terminfo)</EM></span>
-
- <b>type</b> Termcap_String <b>is</b> <b>new</b> String;
-
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_53_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_148_13">TGoto</A></FONT> (<FONT COLOR=red><A NAME="ref_53_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_148_20">Cap</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_54_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_149_20">Col</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_55_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_150_20">Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Termcap_String;
-- <FONT COLOR=green><EM>-- AKA: tgoto()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_59_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_49_13">Get_Entry</A></FONT> (<FONT COLOR=red><A NAME="ref_59_24" HREF="terminal_interface-curses-termcap__adb.htm#ref_49_24">Name</A></FONT> : String) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: tgetent()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_63_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_69_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="ref_63_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_69_23">Name</A></FONT> : String) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: tgetflag()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_67_14" HREF="terminal_interface-curses-termcap__adb.htm#ref_85_14">Get_Number</A></FONT> (<FONT COLOR=red><A NAME="ref_67_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_85_26">Name</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_68_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_86_26">Value</A></FONT> : <b>out</b> Integer;
-- <FONT COLOR=red><A NAME="ref_69_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_87_26">Result</A></FONT> : <b>out</b> Boolean);
-- <FONT COLOR=green><EM>-- AKA: tgetnum()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_73_14" HREF="terminal_interface-curses-termcap__adb.htm#ref_104_14">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_73_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_104_26">Name</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_74_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_105_26">Value</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_75_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_106_26">Result</A></FONT> : <b>out</b> Boolean);
-- <b>function</b> <FONT COLOR=red><A NAME="ref_76_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_127_13">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_76_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_127_25">Name</A></FONT> : String) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- Returns True if the string is found.</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: tgetstr()</EM></FONT>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_53_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_148_13">TGoto</A></span> (<span class="symbol"><A NAME="ref_53_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_148_20">Cap</A></span> : String;
-+ <span class="symbol"><A NAME="ref_54_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_149_20">Col</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_55_20" HREF="terminal_interface-curses-termcap__adb.htm#ref_150_20">Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>) <b>return</b> Termcap_String;
-+ <span class="comment"><EM>-- AKA: tgoto()</EM></span>
-+
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_59_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_49_13">Get_Entry</A></span> (<span class="symbol"><A NAME="ref_59_24" HREF="terminal_interface-curses-termcap__adb.htm#ref_49_24">Name</A></span> : String) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: tgetent()</EM></span>
-+
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_63_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_69_13">Get_Flag</A></span> (<span class="symbol"><A NAME="ref_63_23" HREF="terminal_interface-curses-termcap__adb.htm#ref_69_23">Name</A></span> : String) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: tgetflag()</EM></span>
-+
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_67_14" HREF="terminal_interface-curses-termcap__adb.htm#ref_85_14">Get_Number</A></span> (<span class="symbol"><A NAME="ref_67_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_85_26">Name</A></span> : String;
-+ <span class="symbol"><A NAME="ref_68_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_86_26">Value</A></span> : <b>out</b> Integer;
-+ <span class="symbol"><A NAME="ref_69_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_87_26">Result</A></span> : <b>out</b> Boolean);
-+ <span class="comment"><EM>-- AKA: tgetnum()</EM></span>
-+
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_73_14" HREF="terminal_interface-curses-termcap__adb.htm#ref_104_14">Get_String</A></span> (<span class="symbol"><A NAME="ref_73_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_104_26">Name</A></span> : String;
-+ <span class="symbol"><A NAME="ref_74_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_105_26">Value</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_75_26" HREF="terminal_interface-curses-termcap__adb.htm#ref_106_26">Result</A></span> : <b>out</b> Boolean);
-+ <b>function</b> <span class="symbol"><A NAME="ref_76_13" HREF="terminal_interface-curses-termcap__adb.htm#ref_127_13">Get_String</A></span> (<span class="symbol"><A NAME="ref_76_25" HREF="terminal_interface-curses-termcap__adb.htm#ref_127_25">Name</A></span> : String) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- Returns True if the string is found.</EM></span>
-+ <span class="comment"><EM>-- AKA: tgetstr()</EM></span>
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-termcap__ads.htm#ref_42_35">Termcap</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-terminfo__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-terminfo__adb.htm 2011-03-19 23:18:41.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-terminfo__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,62 +1,74 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-terminfo.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-terminfo.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-terminfo.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-terminfo.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Terminfo --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.6 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Terminfo --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.6 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>; <b>use</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings;
- <b>with</b> Ada.Unchecked_Conversion;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_48_40" HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_48_40" HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A></span> <b>is</b>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_50_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_52_13">Is_MinusOne_Pointer</A></FONT> (<FONT COLOR=red><A NAME="ref_50_34" HREF="terminal_interface-curses-terminfo__adb.htm#ref_52_34">P</A></FONT> : chars_ptr) <b>return</b> Boolean;
-+ <b>function</b> <span class="symbol"><A NAME="ref_50_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_52_13">Is_MinusOne_Pointer</A></span> (<span class="symbol"><A NAME="ref_50_34" HREF="terminal_interface-curses-terminfo__adb.htm#ref_52_34">P</A></span> : chars_ptr) <b>return</b> Boolean;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_52_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A></FONT> (<FONT COLOR=red><A NAME="ref_52_34" HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_34">P</A></FONT> : chars_ptr) <b>return</b> Boolean <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_53_12">Weird_Address</A></FONT> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-- <FONT COLOR=red><A NAME="ref_54_7">Invalid_Pointer</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_53_12">Weird_Address</A> := -1;
-+ <b>function</b> <span class="symbol"><A NAME="ref_52_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A></span> (<span class="symbol"><A NAME="ref_52_34" HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_34">P</A></span> : chars_ptr) <b>return</b> Boolean <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_53_12">Weird_Address</A></span> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-+ <span class="symbol"><A NAME="ref_54_7">Invalid_Pointer</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_53_12">Weird_Address</A> := -1;
- <b>function</b> To_Weird <b>is</b> <b>new</b> Ada.Unchecked_Conversion
- (Source =&gt; chars_ptr, Target =&gt; <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_53_12">Weird_Address</A>);
- <b>begin</b>
-@@ -68,100 +80,100 @@
- <b>end</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A>;
- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A>);
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_67_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="ref_67_23" HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A></FONT> : String) <b>return</b> Boolean
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_67_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_13">Get_Flag</A></span> (<span class="symbol"><A NAME="ref_67_23" HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A></span> : String) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_69_16">tigetflag</A></FONT> (<FONT COLOR=red><A NAME="ref_69_27" HREF="terminal_interface-curses-terminfo__adb.htm#ref_69_16">id</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_69_16">tigetflag</A></span> (<span class="symbol"><A NAME="ref_69_27" HREF="terminal_interface-curses-terminfo__adb.htm#ref_69_16">id</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, tigetflag);
-- <FONT COLOR=red><A NAME="ref_71_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A>'Length);
-- <FONT COLOR=red><A NAME="ref_72_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_71_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A>'Length);
-+ <span class="symbol"><A NAME="ref_72_7">Length</A></span> : size_t;
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_23">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_71_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_72_7">Length</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_69_16">tigetflag</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_71_7">Txt</A>) = <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_74_4">Curses_True</A>) <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_69_16">tigetflag</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_71_7">Txt</A>) = <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_67_4">Curses_True</A>) <b>then</b>
- <b>return</b> True;
- <b>else</b>
- <b>return</b> False;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_64_13">Get_Flag</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_83_14" HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_14">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_83_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_84_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_58_26">Value</A></FONT> : <b>out</b> Terminfo_String;
-- <FONT COLOR=red><A NAME="ref_85_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_59_26">Result</A></FONT> : <b>out</b> Boolean)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_83_14" HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_14">Get_String</A></span> (<span class="symbol"><A NAME="ref_83_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A></span> : String;
-+ <span class="symbol"><A NAME="ref_84_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_58_26">Value</A></span> : <b>out</b> Terminfo_String;
-+ <span class="symbol"><A NAME="ref_85_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_59_26">Result</A></span> : <b>out</b> Boolean)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_87_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_87_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_87_16">id</A></FONT> : char_array) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_87_16">tigetstr</A></span> (<span class="symbol"><A NAME="ref_87_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_87_16">id</A></span> : char_array) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, tigetstr, "tigetstr");
-- <FONT COLOR=red><A NAME="ref_89_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A>'Length);
-- <FONT COLOR=red><A NAME="ref_90_7">Length</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_91_7">Txt2</A></FONT> : chars_ptr;
-+ <span class="symbol"><A NAME="ref_89_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A>'Length);
-+ <span class="symbol"><A NAME="ref_90_7">Length</A></span> : size_t;
-+ <span class="symbol"><A NAME="ref_91_7">Txt2</A></span> : chars_ptr;
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_26">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_89_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_90_7">Length</A>);
- <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_91_7">Txt2</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_87_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_89_7">Txt</A>);
- <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_91_7">Txt2</A> = Null_Ptr <b>then</b>
- <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_59_26">Result</A> := False;
- <b>elsif</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_91_7">Txt2</A>) <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_58_26">Value</A> := Terminfo_String (<A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_91_7">Txt2</A>));
-+ <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_58_26">Value</A> := Terminfo_String (<A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_91_7">Txt2</A>));
- <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_59_26">Result</A> := True;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_57_14">Get_String</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_106_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_13">Has_String</A></FONT> (<FONT COLOR=red><A NAME="ref_106_25" HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A></FONT> : String) <b>return</b> Boolean
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_106_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_13">Has_String</A></span> (<span class="symbol"><A NAME="ref_106_25" HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A></span> : String) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_108_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_108_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_108_16">id</A></FONT> : char_array) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_108_16">tigetstr</A></span> (<span class="symbol"><A NAME="ref_108_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_108_16">id</A></span> : char_array) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, tigetstr, "tigetstr");
-- <FONT COLOR=red><A NAME="ref_110_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A>'Length);
-- <FONT COLOR=red><A NAME="ref_111_7">Length</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_112_7">Txt2</A></FONT> : chars_ptr;
-+ <span class="symbol"><A NAME="ref_110_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A>'Length);
-+ <span class="symbol"><A NAME="ref_111_7">Length</A></span> : size_t;
-+ <span class="symbol"><A NAME="ref_112_7">Txt2</A></span> : chars_ptr;
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_25">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_110_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_111_7">Length</A>);
- <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_112_7">Txt2</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_108_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_110_7">Txt</A>);
- <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_112_7">Txt2</A> = Null_Ptr <b>then</b>
- <b>return</b> False;
- <b>elsif</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_50_13">Is_MinusOne_Pointer</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_112_7">Txt2</A>) <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_60_13">Has_String</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_126_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_13">Get_Number</A></FONT> (<FONT COLOR=red><A NAME="ref_126_25" HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A></FONT> : String) <b>return</b> Integer <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_127_16">tigetstr</A></FONT> (<FONT COLOR=red><A NAME="ref_127_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_127_16">s</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_126_13" HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_13">Get_Number</A></span> (<span class="symbol"><A NAME="ref_126_25" HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A></span> : String) <b>return</b> Integer <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_127_16">tigetstr</A></span> (<span class="symbol"><A NAME="ref_127_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_127_16">s</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, tigetstr);
-- <FONT COLOR=red><A NAME="ref_129_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A>'Length);
-- <FONT COLOR=red><A NAME="ref_130_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_129_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A>'Length);
-+ <span class="symbol"><A NAME="ref_130_7">Length</A></span> : size_t;
- <b>begin</b>
- To_C (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_25">Name</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_129_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_130_7">Length</A>);
- <b>return</b> Integer (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_127_16">tigetstr</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_129_7">Txt</A>));
- <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_68_13">Get_Number</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_137_14" HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_14">Put_String</A></FONT> (<FONT COLOR=red><A NAME="ref_137_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A></FONT> : Terminfo_String;
-- <FONT COLOR=red><A NAME="ref_138_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_77_26">affcnt</A></FONT> : Natural := 1;
-- <FONT COLOR=red><A NAME="ref_139_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_78_26">putc</A></FONT> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A> := <b>null</b>) <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_140_16">tputs</A></FONT> (<FONT COLOR=red><A NAME="ref_140_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">str</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_141_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">affcnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_142_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">putc</A></FONT> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_143_16">putp</A></FONT> (<FONT COLOR=red><A NAME="ref_143_22" HREF="terminal_interface-curses-terminfo__adb.htm#ref_143_16">str</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_137_14" HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_14">Put_String</A></span> (<span class="symbol"><A NAME="ref_137_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A></span> : Terminfo_String;
-+ <span class="symbol"><A NAME="ref_138_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_77_26">affcnt</A></span> : Natural := 1;
-+ <span class="symbol"><A NAME="ref_139_26" HREF="terminal_interface-curses-terminfo__ads.htm#ref_78_26">putc</A></span> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A> := <b>null</b>) <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_140_16">tputs</A></span> (<span class="symbol"><A NAME="ref_140_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">str</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_141_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">affcnt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_142_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">putc</A></span> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_143_16">putp</A></span> (<span class="symbol"><A NAME="ref_143_22" HREF="terminal_interface-curses-terminfo__adb.htm#ref_143_16">str</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, tputs);
- <b>pragma</b> Import (C, putp);
-- <FONT COLOR=red><A NAME="ref_146_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A>'Length);
-- <FONT COLOR=red><A NAME="ref_147_7">Length</A></FONT> : size_t;
-- <FONT COLOR=red><A NAME="ref_148_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_146_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A>'Length);
-+ <span class="symbol"><A NAME="ref_147_7">Length</A></span> : size_t;
-+ <span class="symbol"><A NAME="ref_148_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
- To_C (String (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_26">Str</A>), <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_146_7">Txt</A>, <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_147_7">Length</A>);
- <b>if</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_78_26">putc</A> = <b>null</b> <b>then</b>
- <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_148_7">Err</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_143_16">putp</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_146_7">Txt</A>);
- <b>else</b>
-- <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_148_7">Err</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">tputs</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_146_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_77_26">affcnt</A>), <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_78_26">putc</A>);
-+ <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_148_7">Err</A> := <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_140_16">tputs</A> (<A HREF="terminal_interface-curses-terminfo__adb.htm#ref_146_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_77_26">affcnt</A>), <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_78_26">putc</A>);
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_148_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-terminfo__adb.htm#ref_148_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_76_14">Put_String</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-terminfo__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-terminfo__ads.htm 2011-02-25 23:43:50.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-terminfo__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,87 +1,99 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-terminfo.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-terminfo.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-terminfo.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-terminfo.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Terminfo --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.3 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_44_35" HREF="terminal_interface-curses-terminfo__adb.htm#ref_48_40">Terminfo</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page curs_terminfo.3x</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not implemented: setupterm, setterm, set_curterm, del_curterm,</EM></FONT>
-- <FONT COLOR=green><EM>-- restartterm, tparm, putp, vidputs, vidattr,</EM></FONT>
-- <FONT COLOR=green><EM>-- mvcur</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Terminfo --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.3 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_44_35" HREF="terminal_interface-curses-terminfo__adb.htm#ref_48_40">Terminfo</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page curs_terminfo.3x</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not implemented: setupterm, setterm, set_curterm, del_curterm,</EM></span>
-+ <span class="comment"><EM>-- restartterm, tparm, putp, vidputs, vidattr,</EM></span>
-+ <span class="comment"><EM>-- mvcur</EM></span>
-
- <b>type</b> Terminfo_String <b>is</b> <b>new</b> String;
-
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_57_14" HREF="terminal_interface-curses-terminfo__adb.htm#ref_83_14">Get_String</A></FONT> (<FONT COLOR=red><A NAME="ref_57_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_83_26">Name</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_58_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_84_26">Value</A></FONT> : <b>out</b> Terminfo_String;
-- <FONT COLOR=red><A NAME="ref_59_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_85_26">Result</A></FONT> : <b>out</b> Boolean);
-- <b>function</b> <FONT COLOR=red><A NAME="ref_60_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_106_13">Has_String</A></FONT> (<FONT COLOR=red><A NAME="ref_60_25" HREF="terminal_interface-curses-terminfo__adb.htm#ref_106_25">Name</A></FONT> : String) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: tigetstr()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_64_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_67_13">Get_Flag</A></FONT> (<FONT COLOR=red><A NAME="ref_64_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_67_23">Name</A></FONT> : String) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: tigetflag()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_68_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_126_13">Get_Number</A></FONT> (<FONT COLOR=red><A NAME="ref_68_25" HREF="terminal_interface-curses-terminfo__adb.htm#ref_126_25">Name</A></FONT> : String) <b>return</b> Integer;
-- <FONT COLOR=green><EM>-- AKA: tigetnum()</EM></FONT>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_57_14" HREF="terminal_interface-curses-terminfo__adb.htm#ref_83_14">Get_String</A></span> (<span class="symbol"><A NAME="ref_57_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_83_26">Name</A></span> : String;
-+ <span class="symbol"><A NAME="ref_58_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_84_26">Value</A></span> : <b>out</b> Terminfo_String;
-+ <span class="symbol"><A NAME="ref_59_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_85_26">Result</A></span> : <b>out</b> Boolean);
-+ <b>function</b> <span class="symbol"><A NAME="ref_60_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_106_13">Has_String</A></span> (<span class="symbol"><A NAME="ref_60_25" HREF="terminal_interface-curses-terminfo__adb.htm#ref_106_25">Name</A></span> : String) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: tigetstr()</EM></span>
-+
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_64_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_67_13">Get_Flag</A></span> (<span class="symbol"><A NAME="ref_64_23" HREF="terminal_interface-curses-terminfo__adb.htm#ref_67_23">Name</A></span> : String) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: tigetflag()</EM></span>
-+
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_68_13" HREF="terminal_interface-curses-terminfo__adb.htm#ref_126_13">Get_Number</A></span> (<span class="symbol"><A NAME="ref_68_25" HREF="terminal_interface-curses-terminfo__adb.htm#ref_126_25">Name</A></span> : String) <b>return</b> Integer;
-+ <span class="comment"><EM>-- AKA: tigetnum()</EM></span>
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_71_9">putctype</A></FONT> <b>is</b> <b>access</b> <b>function</b> (<FONT COLOR=red><A NAME="ref_71_38">c</A></FONT> : <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int)
-- <b>return</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.int;
-+ <b>type</b> <span class="symbol"><A NAME="ref_71_9">putctype</A></span> <b>is</b> <b>access</b> <b>function</b> (<span class="symbol"><A NAME="ref_71_38">c</A></span> : <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int)
-+ <b>return</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A>);
-
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_76_14" HREF="terminal_interface-curses-terminfo__adb.htm#ref_137_14">Put_String</A></FONT> (<FONT COLOR=red><A NAME="ref_76_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_137_26">Str</A></FONT> : Terminfo_String;
-- <FONT COLOR=red><A NAME="ref_77_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_138_26">affcnt</A></FONT> : Natural := 1;
-- <FONT COLOR=red><A NAME="ref_78_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_139_26">putc</A></FONT> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A> := <b>null</b>);
-- <FONT COLOR=green><EM>-- AKA: tputs()</EM></FONT>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_76_14" HREF="terminal_interface-curses-terminfo__adb.htm#ref_137_14">Put_String</A></span> (<span class="symbol"><A NAME="ref_76_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_137_26">Str</A></span> : Terminfo_String;
-+ <span class="symbol"><A NAME="ref_77_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_138_26">affcnt</A></span> : Natural := 1;
-+ <span class="symbol"><A NAME="ref_78_26" HREF="terminal_interface-curses-terminfo__adb.htm#ref_139_26">putc</A></span> : <A HREF="terminal_interface-curses-terminfo__ads.htm#ref_71_9">putctype</A> := <b>null</b>);
-+ <span class="comment"><EM>-- AKA: tputs()</EM></span>
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-terminfo__ads.htm#ref_44_35">Terminfo</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm 2011-03-19 23:18:41.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,69 +1,81 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-aux.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-aux.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-aux.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-aux.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Aux --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.13 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_42_48" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A></FONT> <b>is</b>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_44_14" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_45_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_46_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_47_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_51_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>;
-- <FONT COLOR=red><A NAME="ref_48_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_52_7">Signal</A></FONT> : Boolean := True;
-- <FONT COLOR=red><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A></FONT> : Boolean := False)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Aux --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.13 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_42_48" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A></span> <b>is</b>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_44_14" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A></span>
-+ (<span class="symbol"><A NAME="ref_45_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_46_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A></span> : String;
-+ <span class="symbol"><A NAME="ref_47_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_51_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>;
-+ <span class="symbol"><A NAME="ref_48_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_52_7">Signal</A></span> : Boolean := True;
-+ <span class="symbol"><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A></span> : Boolean := False)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_51_7">L</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>;
-- <FONT COLOR=red><A NAME="ref_52_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>;
-- <FONT COLOR=red><A NAME="ref_53_7">W</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_51_7">Width</A>;
-- <FONT COLOR=red><A NAME="ref_54_7">LC</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_55_7">CC</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_56_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_57_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_51_7">L</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>;
-+ <span class="symbol"><A NAME="ref_52_7">Len</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>;
-+ <span class="symbol"><A NAME="ref_53_7">W</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_51_7">Width</A>;
-+ <span class="symbol"><A NAME="ref_54_7">LC</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_55_7">CC</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_56_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_57_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_17" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_17">Output</A></FONT> (<FONT COLOR=red><A NAME="ref_59_25" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_25">From</A></FONT>, <FONT COLOR=red><A NAME="ref_59_31" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_31">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_17" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_17">Output</A></span> (<span class="symbol"><A NAME="ref_59_25" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_25">From</A></span>, <span class="symbol"><A NAME="ref_59_31" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_61_31">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_61_17" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_17">Output</A></FONT> (<FONT COLOR=red><A NAME="ref_61_25" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_25">From</A></FONT>, <FONT COLOR=red><A NAME="ref_61_31" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_31">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_61_17" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_17">Output</A></span> (<span class="symbol"><A NAME="ref_61_25" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_25">From</A></span>, <span class="symbol"><A NAME="ref_61_31" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_31">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>)
- <b>is</b>
- <b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &gt; 0 <b>then</b>
-@@ -71,13 +83,13 @@
- <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>;
- <b>end</b> <b>if</b>;
- <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> <b>then</b>
-- <FONT COLOR=green><EM>-- LRM A10.6 (7) says this</EM></FONT>
-+ <span class="comment"><EM>-- LRM A10.6 (7) says this</EM></span>
- <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>;
- <b>end</b> <b>if</b>;
-
- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &lt;= <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_54_7">LC</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A>);
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_54_7">LC</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A> <b>then</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_52_7">Signal</A> <b>then</b>
- <b>raise</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_134_4">Layout_Error</A>;
- <b>else</b>
-@@ -86,20 +98,20 @@
- <b>else</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &lt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> <b>and</b> <b>then</b> <b>not</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A> <b>then</b>
- <b>declare</b>
-- <FONT COLOR=red><A NAME="ref_84_22">Filler</A></FONT> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>))
-+ <span class="symbol"><A NAME="ref_84_22">Filler</A></span> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>))
- := (<b>others</b> =&gt; ' ');
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_84_22">Filler</A>);
- <b>end</b>;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_56_7">Y</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_57_7">X</A>);
-- <b>if</b> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_57_7">X</A> + <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>)) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_56_7">Y</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_57_7">X</A>);
-+ <b>if</b> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_57_7">X</A> + <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>)) &gt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_55_7">CC</A> <b>then</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>);
- <b>end</b> <b>if</b>;
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_25">From</A> .. <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_31">To</A>));
- <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> &lt; <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A> <b>then</b>
- <b>declare</b>
-- <FONT COLOR=red><A NAME="ref_97_22">Filler</A></FONT> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>))
-+ <span class="symbol"><A NAME="ref_97_22">Filler</A></span> : <b>constant</b> String (1 .. (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_53_7">W</A> - <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>))
- := (<b>others</b> =&gt; ' ');
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A>, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_97_22">Filler</A>);
-@@ -110,18 +122,18 @@
- <b>end</b> <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_17">Output</A>;
-
- <b>begin</b>
-- <b>pragma</b> Assert (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A> /= <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A>);
-+ <b>pragma</b> Assert (<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_49_7">Win</A> /= <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A>);
- <b>if</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_53_7">Ljust</A> <b>then</b>
- <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> := 1;
-- <b>for</b> <FONT COLOR=red><A NAME="ref_111_14">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length <b>loop</b>
-+ <b>for</b> <span class="symbol"><A NAME="ref_111_14">I</A></span> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length <b>loop</b>
- <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A>) = ' ';
- <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> + 1;
- <b>end</b> <b>loop</b>;
- <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> - 1;
- <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_59_17">Output</A> (1, <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_52_7">Len</A>);
-- <b>else</b> <FONT COLOR=green><EM>-- input buffer is not left justified</EM></FONT>
-+ <b>else</b> <span class="comment"><EM>-- input buffer is not left justified</EM></span>
- <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length;
-- <b>for</b> <FONT COLOR=red><A NAME="ref_119_14">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length <b>loop</b>
-+ <b>for</b> <span class="symbol"><A NAME="ref_119_14">I</A></span> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A>'Length <b>loop</b>
- <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_50_7">Buf</A> (<A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A>) = ' ';
- <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> := <A HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_51_7">L</A> - 1;
- <b>end</b> <b>loop</b>;
-@@ -130,5 +142,5 @@
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-aux__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-aux__ads.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-aux__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,61 +1,73 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-aux.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-aux.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-aux.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-aux.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Aux --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2009/12/26 17:38:58 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>private</b> <b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_42_51" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_42_48">Aux</A></FONT> <b>is</b>
-- <FONT COLOR=green><EM>-- pragma Preelaborate (Aux);</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Aux --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.14 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2009/12/26 17:38:58 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>private</b> <b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_42_51" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_42_48">Aux</A></span> <b>is</b>
-+ <span class="comment"><EM>-- pragma Preelaborate (Aux);</EM></span>
-
-- <FONT COLOR=green><EM>-- This routine is called from the Text_IO output routines for numeric</EM></FONT>
-- <FONT COLOR=green><EM>-- and enumeration types.</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_48_14" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_44_14">Put_Buf</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_45_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=green><EM>-- The output window</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_46_7">Buf</A></FONT> : String; <FONT COLOR=green><EM>-- The buffer containing the text</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_47_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; <FONT COLOR=green><EM>-- The width of the output field</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_48_7">Signal</A></FONT> : Boolean := True; <FONT COLOR=green><EM>-- If true, we raise Layout_Error</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_49_7">Ljust</A></FONT> : Boolean := False); <FONT COLOR=green><EM>-- The Buf is left justified</EM></FONT>
-+ <span class="comment"><EM>-- This routine is called from the Text_IO output routines for numeric</EM></span>
-+ <span class="comment"><EM>-- and enumeration types.</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_48_14" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_44_14">Put_Buf</A></span>
-+ (<span class="symbol"><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_45_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="comment"><EM>-- The output window</EM></span>
-+ <span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_46_7">Buf</A></span> : String; <span class="comment"><EM>-- The buffer containing the text</EM></span>
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_47_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>; <span class="comment"><EM>-- The width of the output field</EM></span>
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_48_7">Signal</A></span> : Boolean := True; <span class="comment"><EM>-- If true, we raise Layout_Error</EM></span>
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-aux__adb.htm#ref_49_7">Ljust</A></span> : Boolean := False); <span class="comment"><EM>-- The Buf is left justified</EM></span>
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-complex_io__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-complex_io__adb.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-complex_io__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,61 +1,73 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-complex_io.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-complex_io.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-complex_io.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-complex_io.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Complex_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Complex_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</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_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_43_48" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_IO</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_43_48" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_IO</A></span> <b>is</b>
-
- <b>package</b> FIO <b>is</b> <b>new</b>
-- <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A> (Complex_Types.Real'Base);
-+ <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A> (Complex_Types.Real'Base);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_48_14" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_55_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_48_14" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_49_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_55_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- Item : Complex;
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_57_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_58_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_59_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>)
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_57_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_58_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_59_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_55_7">Win</A>, '(');
-@@ -65,15 +77,15 @@
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A> (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_55_7">Win</A>, ')');
- <b>end</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_63_14" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_61_14">Put</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_63_14" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_61_14">Put</A></span>
- (Item : Complex;
-- <FONT COLOR=red><A NAME="ref_65_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_63_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_66_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_64_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_65_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>)
-+ <span class="symbol"><A NAME="ref_65_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_63_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_66_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_64_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_65_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, Item, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_63_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_64_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_65_7">Exp</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_61_14">Put</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-complex_io__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-complex_io__ads.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-complex_io__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,76 +1,88 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-complex_io.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-complex_io.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-complex_io.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-complex_io.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Complex_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Complex_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Numerics.Generic_Complex_Types;
-
- <b>generic</b>
- <b>with</b> <b>package</b> <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_Types</A> <b>is</b> <b>new</b> Ada.Numerics.Generic_Complex_Types (&lt;&gt;);
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_46_43" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_43_48">Complex_IO</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_46_43" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_43_48">Complex_IO</A></span> <b>is</b>
-
- <b>use</b> Complex_Types;
-
-- <FONT COLOR=red><A NAME="ref_50_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 2;
-- <FONT COLOR=red><A NAME="ref_51_4">Default_Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := Real'<b>Digits</b> - 1;
-- <FONT COLOR=red><A NAME="ref_52_4">Default_Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 3;
-+ <span class="symbol"><A NAME="ref_50_4">Default_Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 2;
-+ <span class="symbol"><A NAME="ref_51_4">Default_Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := Real'<b>Digits</b> - 1;
-+ <span class="symbol"><A NAME="ref_52_4">Default_Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 3;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_54_14" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_48_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_49_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_54_14" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_48_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_49_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_54_14">Item</A> : Complex;
-- <FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_51_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_52_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_53_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>);
-+ <span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_51_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_52_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_53_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_63_14">Put</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_63_14">Put</A></span>
- (<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_61_14">Item</A> : Complex;
-- <FONT COLOR=red><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_65_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_66_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_65_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_67_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>);
-+ <span class="symbol"><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_65_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_50_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_66_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_51_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_65_7" HREF="terminal_interface-curses-text_io-complex_io__adb.htm#ref_67_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_52_4">Default_Exp</A>);
-
- <b>private</b>
- <b>pragma</b> Inline (Put);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-complex_io__ads.htm#ref_46_43">Complex_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-decimal_io__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-decimal_io__adb.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-decimal_io__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,65 +1,77 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-decimal_io.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-decimal_io.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-decimal_io.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-decimal_io.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Decimal_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Decimal_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Text_IO;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Decimal_IO</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Decimal_IO</A></span> <b>is</b>
-
-- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
- <b>package</b> DIO <b>is</b> <b>new</b> Ada.Text_IO.Decimal_IO (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_50_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_51_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_52_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_53_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_54_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_55_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_50_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_51_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_52_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_53_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_54_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_55_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-- <FONT COLOR=red><A NAME="ref_57_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_54_7">Aft</A>;
-+ <span class="symbol"><A NAME="ref_56_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-+ <span class="symbol"><A NAME="ref_57_7">Len</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_54_7">Aft</A>;
- <b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_55_7">Exp</A> &gt; 0 <b>then</b>
- <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_57_7">Len</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_57_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_55_7">Exp</A>;
-@@ -68,14 +80,14 @@
- <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_57_7">Len</A>, False);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_50_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_57_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_58_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_59_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_60_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_61_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>) <b>is</b>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_57_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_58_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_59_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_60_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_61_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>) <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_58_7">Item</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_59_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_60_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_61_7">Exp</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_57_14">Put</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Decimal_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Decimal_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-decimal_io__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-decimal_io__ads.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-decimal_io__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,72 +1,84 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-decimal_io.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-decimal_io.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-decimal_io.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-decimal_io.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Decimal_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Decimal_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>delta</b> &lt;&gt; <b>digits</b> &lt;&gt;;
-+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>delta</b> &lt;&gt; <b>digits</b> &lt;&gt;;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_44_48">Decimal_IO</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_44_48">Decimal_IO</A></span> <b>is</b>
-
-- <FONT COLOR=red><A NAME="ref_46_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>'Fore;
-- <FONT COLOR=red><A NAME="ref_47_4">Default_Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>'Aft;
-- <FONT COLOR=red><A NAME="ref_48_4">Default_Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_49_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_52_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_53_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_54_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_66_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_67_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_68_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_69_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_70_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>);
-+ <span class="symbol"><A NAME="ref_46_4">Default_Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>'Fore;
-+ <span class="symbol"><A NAME="ref_47_4">Default_Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>'Aft;
-+ <span class="symbol"><A NAME="ref_48_4">Default_Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_49_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_52_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_53_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_54_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_66_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_67_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_68_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_69_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-decimal_io__adb.htm#ref_70_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_48_4">Default_Exp</A>);
-
- <b>private</b>
- <b>pragma</b> Inline (Put);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Decimal_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-decimal_io__ads.htm#ref_44_43">Decimal_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-enumeration_io__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__adb.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,65 +1,77 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-enumeration_io.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-enumeration_io.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-enumeration_io.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-enumeration_io.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Enumeration_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Enumeration_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Text_IO;
- <b>with</b> Ada.Characters.Handling; <b>use</b> Ada.Characters.Handling;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_45_48" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enumeration_IO</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_45_48" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enumeration_IO</A></span> <b>is</b>
-
-- <b>package</b> <FONT COLOR=red><A NAME="ref_47_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+ <b>package</b> <span class="symbol"><A NAME="ref_47_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
- <b>package</b> EIO <b>is</b> <b>new</b> Ada.Text_IO.Enumeration_IO (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_49_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_53_7">Set</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_49_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_53_7">Set</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-- <FONT COLOR=red><A NAME="ref_57_7">Tset</A></FONT> : Ada.Text_IO.Type_Set;
-+ <span class="symbol"><A NAME="ref_56_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-+ <span class="symbol"><A NAME="ref_57_7">Tset</A></span> : Ada.Text_IO.Type_Set;
- <b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_53_7">Set</A> /= <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_46">Mixed_Case</A> <b>then</b>
- <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_57_7">Tset</A> := Ada.Text_IO.Type_Set'Val (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A>'Pos (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_53_7">Set</A>));
-@@ -73,14 +85,14 @@
- <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_47_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_50_7">Win</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_52_7">Width</A>, True, True);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_49_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_71_14" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_55_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_72_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_56_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>;
-- <FONT COLOR=red><A NAME="ref_73_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_57_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_74_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_58_7">Set</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_71_14" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_55_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_72_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_56_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>;
-+ <span class="symbol"><A NAME="ref_73_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_57_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_74_7" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_58_7">Set</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_49_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_56_7">Item</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_57_7">Width</A>, <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_58_7">Set</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_55_14">Put</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enumeration_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enumeration_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-enumeration_io__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__ads.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-enumeration_io__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,69 +1,81 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-enumeration_io.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-enumeration_io.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-enumeration_io.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-enumeration_io.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Enumeration_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Enumeration_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enum</A></FONT> <b>is</b> (&lt;&gt;);
-+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enum</A></span> <b>is</b> (&lt;&gt;);
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_45_48">Enumeration_IO</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_45_48">Enumeration_IO</A></span> <b>is</b>
-
-- <FONT COLOR=red><A NAME="ref_46_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0;
-- <FONT COLOR=red><A NAME="ref_47_4">Default_Setting</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_46">Mixed_Case</A>;
-+ <span class="symbol"><A NAME="ref_46_4">Default_Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0;
-+ <span class="symbol"><A NAME="ref_47_4">Default_Setting</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_46">Mixed_Case</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_50_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_51_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_52_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_53_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_54_7">Set</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_71_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_72_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>;
-- <FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_73_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_74_7">Set</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_50_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_51_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_52_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_53_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_54_7">Set</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_71_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_72_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_42_9">Enum</A>;
-+ <span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_73_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-enumeration_io__adb.htm#ref_74_7">Set</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_53_9">Type_Set</A> := <A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_47_4">Default_Setting</A>);
-
- <b>private</b>
- <b>pragma</b> Inline (Put);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enumeration_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-enumeration_io__ads.htm#ref_44_43">Enumeration_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-fixed_io__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-fixed_io__adb.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-fixed_io__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,65 +1,77 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-fixed_io.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-fixed_io.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-fixed_io.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-fixed_io.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Fixed_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Fixed_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Text_IO;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Fixed_IO</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Fixed_IO</A></span> <b>is</b>
-
-- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
- <b>package</b> FIXIO <b>is</b> <b>new</b> Ada.Text_IO.Fixed_IO (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_50_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_51_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_52_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_53_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_54_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_55_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_50_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_51_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_52_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_53_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_54_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_55_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-- <FONT COLOR=red><A NAME="ref_57_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_54_7">Aft</A>;
-+ <span class="symbol"><A NAME="ref_56_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-+ <span class="symbol"><A NAME="ref_57_7">Len</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_54_7">Aft</A>;
- <b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_55_7">Exp</A> &gt; 0 <b>then</b>
- <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_57_7">Len</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_57_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_55_7">Exp</A>;
-@@ -68,14 +80,14 @@
- <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_57_7">Len</A>, False);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_50_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_57_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_58_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_59_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_60_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_61_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>) <b>is</b>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_57_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_58_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_59_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_60_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_61_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>) <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_58_7">Item</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_59_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_60_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_61_7">Exp</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_57_14">Put</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Fixed_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Fixed_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-fixed_io__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-fixed_io__ads.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-fixed_io__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,72 +1,84 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-fixed_io.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-fixed_io.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-fixed_io.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-fixed_io.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Fixed_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Fixed_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>delta</b> &lt;&gt;;
-+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>delta</b> &lt;&gt;;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_44_48">Fixed_IO</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_44_48">Fixed_IO</A></span> <b>is</b>
-
-- <FONT COLOR=red><A NAME="ref_46_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>'Fore;
-- <FONT COLOR=red><A NAME="ref_47_4">Default_Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>'Aft;
-- <FONT COLOR=red><A NAME="ref_48_4">Default_Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_49_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_52_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_53_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_54_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_66_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_67_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_68_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_69_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_70_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>);
-+ <span class="symbol"><A NAME="ref_46_4">Default_Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>'Fore;
-+ <span class="symbol"><A NAME="ref_47_4">Default_Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>'Aft;
-+ <span class="symbol"><A NAME="ref_48_4">Default_Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 0;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_49_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_52_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_53_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_54_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_66_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_67_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_68_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_69_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-fixed_io__adb.htm#ref_70_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_48_4">Default_Exp</A>);
-
- <b>private</b>
- <b>pragma</b> Inline (Put);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Fixed_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-fixed_io__ads.htm#ref_44_43">Fixed_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-float_io__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-float_io__adb.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-float_io__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,65 +1,77 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-float_io.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-float_io.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-float_io.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-float_io.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Float_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Float_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Text_IO;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A></span> <b>is</b>
-
-- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
- <b>package</b> FIO <b>is</b> <b>new</b> Ada.Text_IO.Float_IO (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_50_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_51_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_52_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_53_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_54_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_55_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_50_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_51_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_52_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_53_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_54_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_55_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_56_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-- <FONT COLOR=red><A NAME="ref_57_7">Len</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_54_7">Aft</A>;
-+ <span class="symbol"><A NAME="ref_56_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-+ <span class="symbol"><A NAME="ref_57_7">Len</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_53_7">Fore</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_54_7">Aft</A>;
- <b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_55_7">Exp</A> &gt; 0 <b>then</b>
- <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_57_7">Len</A> := <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_57_7">Len</A> + 1 + <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_55_7">Exp</A>;
-@@ -68,15 +80,15 @@
- <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_51_7">Win</A>, <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_56_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_57_7">Len</A>, False);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_50_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_57_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_58_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_59_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_60_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_61_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_57_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_67_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_58_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_68_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_59_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_69_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_60_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_70_7" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_61_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_50_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_58_7">Item</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_59_7">Fore</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_60_7">Aft</A>, <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_61_7">Exp</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_57_14">Put</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-float_io__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-float_io__ads.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-float_io__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,72 +1,84 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-float_io.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-float_io.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-float_io.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-float_io.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Float_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Float_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>digits</b> &lt;&gt;;
-+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>digits</b> &lt;&gt;;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_44_48">Float_IO</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_44_48">Float_IO</A></span> <b>is</b>
-
-- <FONT COLOR=red><A NAME="ref_46_4">Default_Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 2;
-- <FONT COLOR=red><A NAME="ref_47_4">Default_Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>'<b>Digits</b> - 1;
-- <FONT COLOR=red><A NAME="ref_48_4">Default_Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 3;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_49_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_52_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_53_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_54_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_66_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_67_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_68_7">Fore</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>;
-- <FONT COLOR=red><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_69_7">Aft</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>;
-- <FONT COLOR=red><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_70_7">Exp</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>);
-+ <span class="symbol"><A NAME="ref_46_4">Default_Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 2;
-+ <span class="symbol"><A NAME="ref_47_4">Default_Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>'<b>Digits</b> - 1;
-+ <span class="symbol"><A NAME="ref_48_4">Default_Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := 3;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_49_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_52_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_54_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_53_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_55_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_54_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_57_14" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_66_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_67_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_59_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_68_7">Fore</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_46_4">Default_Fore</A>;
-+ <span class="symbol"><A NAME="ref_60_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_69_7">Aft</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_47_4">Default_Aft</A>;
-+ <span class="symbol"><A NAME="ref_61_7" HREF="terminal_interface-curses-text_io-float_io__adb.htm#ref_70_7">Exp</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_48_4">Default_Exp</A>);
-
- <b>private</b>
- <b>pragma</b> Inline (Put);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-float_io__ads.htm#ref_44_43">Float_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-integer_io__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-integer_io__adb.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-integer_io__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,76 +1,88 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-integer_io.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-integer_io.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-integer_io.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-integer_io.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Integer_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Integer_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Text_IO;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Integer_IO</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Integer_IO</A></span> <b>is</b>
-
-- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
- <b>package</b> IIO <b>is</b> <b>new</b> Ada.Text_IO.Integer_IO (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_49_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_53_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_49_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_53_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_55_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-+ <span class="symbol"><A NAME="ref_55_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
- <b>begin</b>
- IIO.Put (<A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_51_7">Item</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_53_7">Base</A>);
- <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_50_7">Win</A>, <A HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_52_7">Width</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_49_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_55_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_62_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_56_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_57_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_58_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_55_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_62_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_56_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_57_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_58_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_49_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_56_7">Item</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_57_7">Width</A>, <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_58_7">Base</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_55_14">Put</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Integer_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Integer_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-integer_io__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-integer_io__ads.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-integer_io__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,69 +1,81 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-integer_io.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-integer_io.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-integer_io.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-integer_io.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Integer_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Integer_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>range</b> &lt;&gt;;
-+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>range</b> &lt;&gt;;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_44_48">Integer_IO</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_44_48">Integer_IO</A></span> <b>is</b>
-
-- <FONT COLOR=red><A NAME="ref_46_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>'Width;
-- <FONT COLOR=red><A NAME="ref_47_4">Default_Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := 10;
-+ <span class="symbol"><A NAME="ref_46_4">Default_Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>'Width;
-+ <span class="symbol"><A NAME="ref_47_4">Default_Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := 10;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_49_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_53_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_61_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_62_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_63_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_64_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_49_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_53_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_61_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_62_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_63_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-integer_io__adb.htm#ref_64_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_47_4">Default_Base</A>);
-
- <b>private</b>
- <b>pragma</b> Inline (Put);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Integer_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-integer_io__ads.htm#ref_44_43">Integer_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-modular_io__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-modular_io__adb.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-modular_io__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,76 +1,88 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-modular_io.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-modular_io.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-modular_io.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-modular_io.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Modular_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.11 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Modular_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Text_IO;
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Modular_IO</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_48" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Modular_IO</A></span> <b>is</b>
-
-- <b>package</b> <FONT COLOR=red><A NAME="ref_46_12">Aux</A></FONT> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
-+ <b>package</b> <span class="symbol"><A NAME="ref_46_12">Aux</A></span> <b>renames</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_42_51">Aux</A>;
- <b>package</b> MIO <b>is</b> <b>new</b> Ada.Text_IO.Modular_IO (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_49_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_53_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_49_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_53_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_55_7">Buf</A></FONT> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
-+ <span class="symbol"><A NAME="ref_55_7">Buf</A></span> : String (1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A>'Last);
- <b>begin</b>
- MIO.Put (<A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_51_7">Item</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_53_7">Base</A>);
- <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_46_12">Aux</A>.<A HREF="terminal_interface-curses-text_io-aux__ads.htm#ref_48_14">Put_Buf</A> (<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_50_7">Win</A>, <A HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_55_7">Buf</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_52_7">Width</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_49_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_55_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_62_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_56_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_57_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_58_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_61_14" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_55_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_62_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_56_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_63_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_57_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_64_7" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_58_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_49_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_56_7">Item</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_57_7">Width</A>, <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_58_7">Base</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_55_14">Put</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Modular_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Modular_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io-modular_io__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io-modular_io__ads.htm 2010-01-09 20:31:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io-modular_io__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,69 +1,81 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io-modular_io.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io-modular_io.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io-modular_io.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io-modular_io.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO.Modular_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.12 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO.Modular_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.12 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>generic</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Num</A></FONT> <b>is</b> <b>mod</b> &lt;&gt;;
-+ <b>type</b> <span class="symbol"><A NAME="ref_42_9" HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Num</A></span> <b>is</b> <b>mod</b> &lt;&gt;;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<FONT COLOR=red><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_44_48">Modular_IO</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<span class="symbol"><A NAME="ref_44_43" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_44_48">Modular_IO</A></span> <b>is</b>
-
-- <FONT COLOR=red><A NAME="ref_46_4">Default_Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>'Width;
-- <FONT COLOR=red><A NAME="ref_47_4">Default_Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := 10;
-+ <span class="symbol"><A NAME="ref_46_4">Default_Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>'Width;
-+ <span class="symbol"><A NAME="ref_47_4">Default_Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := 10;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_49_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_50_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_51_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_52_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_53_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>);
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_61_14">Put</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_62_7">Item</A></FONT> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>;
-- <FONT COLOR=red><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_63_7">Width</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>;
-- <FONT COLOR=red><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_64_7">Base</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_49_14" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_49_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_50_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_50_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_51_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_51_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_52_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_52_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_53_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_53_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>);
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_55_14" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_61_14">Put</A></span>
-+ (<span class="symbol"><A NAME="ref_56_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_62_7">Item</A></span> : <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_42_9">Num</A>;
-+ <span class="symbol"><A NAME="ref_57_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_63_7">Width</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_50_12">Field</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_46_4">Default_Width</A>;
-+ <span class="symbol"><A NAME="ref_58_7" HREF="terminal_interface-curses-text_io-modular_io__adb.htm#ref_64_7">Base</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_51_12">Number_Base</A> := <A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_47_4">Default_Base</A>);
-
- <b>private</b>
- <b>pragma</b> Inline (Put);
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Modular_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>.<A HREF="terminal_interface-curses-text_io-modular_io__ads.htm#ref_44_43">Modular_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io__adb.htm 2011-03-26 21:54:30.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,190 +1,202 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.20 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:38:49 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_42_40" HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A></FONT> <b>is</b>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.22 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:32:18 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_42_40" HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A></span> <b>is</b>
-
-- <FONT COLOR=red><A NAME="ref_44_4">Default_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A>;
-+ <span class="symbol"><A NAME="ref_44_4">Default_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_46_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_59_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_46_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_59_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_46_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_59_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_46_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_59_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__adb.htm#ref_44_4">Default_Window</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_59_26">Win</A>;
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_59_14">Set_Window</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_52_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_52_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
- <b>is</b>
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_44_4">Default_Window</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_44_4">Default_Window</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
- <b>else</b>
- <b>return</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_44_4">Default_Window</A>;
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>;
- <b>pragma</b> Inline (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_63_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_65_14">Flush</A></FONT> (<FONT COLOR=red><A NAME="ref_63_21" HREF="terminal_interface-curses-text_io__ads.htm#ref_65_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_63_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_65_14">Flush</A></span> (<span class="symbol"><A NAME="ref_63_21" HREF="terminal_interface-curses-text_io__ads.htm#ref_65_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1047_14">Refresh</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_65_21">Win</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1215_14">Refresh</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_65_21">Win</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_65_14">Flush</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_69_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_66_14">Flush</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_69_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_66_14">Flush</A></span>
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_65_14">Flush</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_66_14">Flush</A>;
-
-- <FONT COLOR=green><EM>--------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Specification of line and page lengths --</EM></FONT>
-- <FONT COLOR=green><EM>--------------------------------------------</EM></FONT>
--
-- <FONT COLOR=green><EM>-- There are no set routines in this package. I assume, that you allocate</EM></FONT>
-- <FONT COLOR=green><EM>-- the window with an appropriate size.</EM></FONT>
-- <FONT COLOR=green><EM>-- A scroll-window is interpreted as an page with unbounded page length,</EM></FONT>
-- <FONT COLOR=green><EM>-- i.e. it returns the conventional 0 as page length.</EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_84_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_77_13">Line_Length</A></FONT> (<FONT COLOR=red><A NAME="ref_84_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_77_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>
-- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_86_7">N_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_87_7">N_Cols</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_77_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_86_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_87_7">N_Cols</A>);
-- <FONT COLOR=green><EM>-- if Natural (N_Cols) &gt; Natural (Count'Last) then</EM></FONT>
-- <FONT COLOR=green><EM>-- raise Layout_Error;</EM></FONT>
-- <FONT COLOR=green><EM>-- end if;</EM></FONT>
-+ <span class="comment"><EM>--------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- Specification of line and page lengths --</EM></span>
-+ <span class="comment"><EM>--------------------------------------------</EM></span>
-+
-+ <span class="comment"><EM>-- There are no set routines in this package. I assume, that you allocate</EM></span>
-+ <span class="comment"><EM>-- the window with an appropriate size.</EM></span>
-+ <span class="comment"><EM>-- A scroll-window is interpreted as an page with unbounded page length,</EM></span>
-+ <span class="comment"><EM>-- i.e. it returns the conventional 0 as page length.</EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_84_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_77_13">Line_Length</A></span> (<span class="symbol"><A NAME="ref_84_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_77_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>
-+ <b>is</b>
-+ <span class="symbol"><A NAME="ref_86_7">N_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_87_7">N_Cols</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_77_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_86_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_87_7">N_Cols</A>);
-+ <span class="comment"><EM>-- if Natural (N_Cols) &gt; Natural (Count'Last) then</EM></span>
-+ <span class="comment"><EM>-- raise Layout_Error;</EM></span>
-+ <span class="comment"><EM>-- end if;</EM></span>
- <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_87_7">N_Cols</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_77_13">Line_Length</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_96_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_78_13">Line_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_96_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_78_13">Line_Length</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>
- <b>is</b>
- <b>begin</b>
- <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_77_13">Line_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_78_13">Line_Length</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_102_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A></FONT> (<FONT COLOR=red><A NAME="ref_102_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_102_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A></span> (<span class="symbol"><A NAME="ref_102_26" HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_104_7">N_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_105_7">N_Cols</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_104_7">N_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_105_7">N_Cols</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1024_13">Scrolling_Allowed</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A>) <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1192_13">Scrolling_Allowed</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A>) <b>then</b>
- <b>return</b> 0;
- <b>else</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_104_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_105_7">N_Cols</A>);
-- <FONT COLOR=green><EM>-- if Natural (N_Lines) &gt; Natural (Count'Last) then</EM></FONT>
-- <FONT COLOR=green><EM>-- raise Layout_Error;</EM></FONT>
-- <FONT COLOR=green><EM>-- end if;</EM></FONT>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_26">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_104_7">N_Lines</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_105_7">N_Cols</A>);
-+ <span class="comment"><EM>-- if Natural (N_Lines) &gt; Natural (Count'Last) then</EM></span>
-+ <span class="comment"><EM>-- raise Layout_Error;</EM></span>
-+ <span class="comment"><EM>-- end if;</EM></span>
- <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_104_7">N_Lines</A>);
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_118_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_81_13">Page_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_118_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_81_13">Page_Length</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>
- <b>is</b>
- <b>begin</b>
- <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_81_13">Page_Length</A>;
-
-- <FONT COLOR=green><EM>------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Column, Line, and Page Control --</EM></FONT>
-- <FONT COLOR=green><EM>------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_127_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_127_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_127_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1)
-+ <span class="comment"><EM>------------------------------------</EM></span>
-+ <span class="comment"><EM>-- Column, Line, and Page Control --</EM></span>
-+ <span class="comment"><EM>------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_127_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A></span> (<span class="symbol"><A NAME="ref_127_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_127_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_129_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>);
-+ <span class="symbol"><A NAME="ref_129_7">P_Size</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>);
- <b>begin</b>
- <b>if</b> <b>not</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A>'Valid <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-
-- <b>for</b> <FONT COLOR=red><A NAME="ref_135_11">I</A></FONT> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A> <b>loop</b>
-+ <b>for</b> <span class="symbol"><A NAME="ref_135_11">I</A></span> <b>in</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_38">Spacing</A> <b>loop</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_129_7">P_Size</A> &gt; 0 <b>and</b> <b>then</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>) &gt;= <A HREF="terminal_interface-curses-text_io__adb.htm#ref_129_7">P_Size</A> <b>then</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>);
- <b>else</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_530_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>, ASCII.LF);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_698_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_24">Win</A>, ASCII.LF);
- <b>end</b> <b>if</b>;
- <b>end</b> <b>loop</b>;
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_144_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_87_14">New_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_144_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_87_24">Spacing</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_144_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_87_14">New_Line</A></span> (<span class="symbol"><A NAME="ref_144_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_87_24">Spacing</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_87_24">Spacing</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_87_14">New_Line</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_150_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_150_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_89_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_150_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A></span> (<span class="symbol"><A NAME="ref_150_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_89_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1082_14">Clear</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_24">Win</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1250_14">Clear</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_24">Win</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_156_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_90_14">New_Page</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_156_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_90_14">New_Page</A></span>
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_90_14">New_Page</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_162_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_14">Set_Col</A></FONT> (<FONT COLOR=red><A NAME="ref_162_23" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_162_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_38">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_162_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_14">Set_Col</A></span> (<span class="symbol"><A NAME="ref_162_23" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_162_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_92_38">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_164_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_165_7">X1</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_166_7">X2</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_167_7">N</A></FONT> : Natural;
-+ <span class="symbol"><A NAME="ref_164_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_165_7">X1</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_166_7">X2</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_167_7">N</A></span> : Natural;
- <b>begin</b>
- <b>if</b> <b>not</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_38">To</A>'Valid <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-
-- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_164_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_164_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A>);
- <A HREF="terminal_interface-curses-text_io__adb.htm#ref_167_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_38">To</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#ref_167_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#ref_167_7">N</A> - 1;
-- <A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_167_7">N</A>);
-+ <A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_167_7">N</A>);
- <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A> &gt; <A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A> <b>then</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A>, 1);
- <A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A> := 0;
- <b>end</b> <b>if</b>;
- <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A> &lt; <A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A> <b>then</b>
- <b>declare</b>
-- <FONT COLOR=red><A NAME="ref_182_13">Filler</A></FONT> : <b>constant</b> String (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A>) .. (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A>) - 1))
-+ <span class="symbol"><A NAME="ref_182_13">Filler</A></span> : <b>constant</b> String (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_165_7">X1</A>) .. (Integer (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_166_7">X2</A>) - 1))
- := (<b>others</b> =&gt; ' ');
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_23">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_182_13">Filler</A>);
-@@ -192,27 +204,27 @@
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_14">Set_Col</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_190_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_93_14">Set_Col</A></FONT> (<FONT COLOR=red><A NAME="ref_190_23" HREF="terminal_interface-curses-text_io__ads.htm#ref_93_23">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_190_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_93_14">Set_Col</A></span> (<span class="symbol"><A NAME="ref_190_23" HREF="terminal_interface-curses-text_io__ads.htm#ref_93_23">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_92_14">Set_Col</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_93_23">To</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_93_14">Set_Col</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_196_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_14">Set_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_196_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_196_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_38">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_196_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_14">Set_Line</A></span> (<span class="symbol"><A NAME="ref_196_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_196_38" HREF="terminal_interface-curses-text_io__ads.htm#ref_95_38">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_198_7">Y1</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_199_7">Y2</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_200_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_201_7">N</A></FONT> : Natural;
-+ <span class="symbol"><A NAME="ref_198_7">Y1</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_199_7">Y2</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_200_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_201_7">N</A></span> : Natural;
- <b>begin</b>
- <b>if</b> <b>not</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_38">To</A>'Valid <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-
-- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_24">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_198_7">Y1</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_200_7">X</A>);
-- <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_200_7">X</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_24">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_198_7">Y1</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_200_7">X</A>);
-+ <b>pragma</b> Warnings (Off, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_200_7">X</A>); <span class="comment"><EM>-- unreferenced</EM></span>
- <A HREF="terminal_interface-curses-text_io__adb.htm#ref_201_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_38">To</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#ref_201_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#ref_201_7">N</A> - 1;
-- <A HREF="terminal_interface-curses-text_io__adb.htm#ref_199_7">Y2</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_201_7">N</A>);
-+ <A HREF="terminal_interface-curses-text_io__adb.htm#ref_199_7">Y2</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_201_7">N</A>);
- <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_199_7">Y2</A> &lt; <A HREF="terminal_interface-curses-text_io__adb.htm#ref_198_7">Y1</A> <b>then</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_24">Win</A>);
- <A HREF="terminal_interface-curses-text_io__adb.htm#ref_198_7">Y1</A> := 0;
-@@ -222,123 +234,123 @@
- <b>end</b> <b>if</b>;
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_14">Set_Line</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_220_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_96_14">Set_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_220_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_96_24">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_220_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_96_14">Set_Line</A></span> (<span class="symbol"><A NAME="ref_220_24" HREF="terminal_interface-curses-text_io__ads.htm#ref_96_24">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_95_14">Set_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_96_24">To</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_96_14">Set_Line</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_226_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_98_13">Col</A></FONT> (<FONT COLOR=red><A NAME="ref_226_18" HREF="terminal_interface-curses-text_io__ads.htm#ref_98_18">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_226_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_98_13">Col</A></span> (<span class="symbol"><A NAME="ref_226_18" HREF="terminal_interface-curses-text_io__ads.htm#ref_98_18">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_228_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_229_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_230_7">N</A></FONT> : Natural;
-+ <span class="symbol"><A NAME="ref_228_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_229_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_230_7">N</A></span> : Natural;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_98_18">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_228_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_229_7">X</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_98_18">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_228_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_229_7">X</A>);
- <A HREF="terminal_interface-curses-text_io__adb.htm#ref_230_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_229_7">X</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#ref_230_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#ref_230_7">N</A> + 1;
-- <FONT COLOR=green><EM>-- if N &gt; Natural (Count'Last) then</EM></FONT>
-- <FONT COLOR=green><EM>-- raise Layout_Error;</EM></FONT>
-- <FONT COLOR=green><EM>-- end if;</EM></FONT>
-+ <span class="comment"><EM>-- if N &gt; Natural (Count'Last) then</EM></span>
-+ <span class="comment"><EM>-- raise Layout_Error;</EM></span>
-+ <span class="comment"><EM>-- end if;</EM></span>
- <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_230_7">N</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_98_13">Col</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_240_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_99_13">Col</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_240_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_99_13">Col</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>
- <b>is</b>
- <b>begin</b>
- <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_98_13">Col</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_99_13">Col</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_246_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A></FONT> (<FONT COLOR=red><A NAME="ref_246_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_101_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_246_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A></span> (<span class="symbol"><A NAME="ref_246_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_101_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_248_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_249_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_250_7">N</A></FONT> : Natural;
-+ <span class="symbol"><A NAME="ref_248_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_249_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_250_7">N</A></span> : Natural;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_248_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_249_7">X</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_248_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_249_7">X</A>);
- <A HREF="terminal_interface-curses-text_io__adb.htm#ref_250_7">N</A> := Natural (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_248_7">Y</A>); <A HREF="terminal_interface-curses-text_io__adb.htm#ref_250_7">N</A> := <A HREF="terminal_interface-curses-text_io__adb.htm#ref_250_7">N</A> + 1;
-- <FONT COLOR=green><EM>-- if N &gt; Natural (Count'Last) then</EM></FONT>
-- <FONT COLOR=green><EM>-- raise Layout_Error;</EM></FONT>
-- <FONT COLOR=green><EM>-- end if;</EM></FONT>
-+ <span class="comment"><EM>-- if N &gt; Natural (Count'Last) then</EM></span>
-+ <span class="comment"><EM>-- raise Layout_Error;</EM></span>
-+ <span class="comment"><EM>-- end if;</EM></span>
- <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_250_7">N</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_260_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_102_13">Line</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_260_13" HREF="terminal_interface-curses-text_io__ads.htm#ref_102_13">Line</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>
- <b>is</b>
- <b>begin</b>
- <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_101_13">Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_102_13">Line</A>;
-
-- <FONT COLOR=green><EM>-----------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Characters Output --</EM></FONT>
-- <FONT COLOR=green><EM>-----------------------</EM></FONT>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_270_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_270_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_270_34" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_34">Item</A></FONT> : Character)
-- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_272_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>);
-- <FONT COLOR=red><A NAME="ref_273_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_274_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_275_7">L</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_276_7">C</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-+ <span class="comment"><EM>-----------------------</EM></span>
-+ <span class="comment"><EM>-- Characters Output --</EM></span>
-+ <span class="comment"><EM>-----------------------</EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_270_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A></span> (<span class="symbol"><A NAME="ref_270_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_270_34" HREF="terminal_interface-curses-text_io__ads.htm#ref_108_34">Item</A></span> : Character)
-+ <b>is</b>
-+ <span class="symbol"><A NAME="ref_272_7">P_Size</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>);
-+ <span class="symbol"><A NAME="ref_273_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_274_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_275_7">L</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_276_7">C</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
- <b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_272_7">P_Size</A> &gt; 0 <b>then</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_273_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_274_7">X</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_275_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_276_7">C</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_273_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_274_7">X</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_275_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_276_7">C</A>);
- <b>if</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_273_7">Y</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#ref_275_7">L</A> <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_274_7">X</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#ref_276_7">C</A> <b>then</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>);
- <b>end</b> <b>if</b>;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses__ads.htm#ref_530_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_34">Item</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_698_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_34">Item</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_288_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_109_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_288_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_109_19">Item</A></FONT> : Character)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_288_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_109_14">Put</A></span> (<span class="symbol"><A NAME="ref_288_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_109_19">Item</A></span> : Character)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_108_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_109_19">Item</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_109_14">Put</A>;
-
-- <FONT COLOR=green><EM>--------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Strings-Output --</EM></FONT>
-- <FONT COLOR=green><EM>--------------------</EM></FONT>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_298_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_298_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_298_34" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A></FONT> : String)
-- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_300_7">P_Size</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>);
-- <FONT COLOR=red><A NAME="ref_301_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_302_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_303_7">L</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_304_7">C</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-+ <span class="comment"><EM>--------------------</EM></span>
-+ <span class="comment"><EM>-- Strings-Output --</EM></span>
-+ <span class="comment"><EM>--------------------</EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_298_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A></span> (<span class="symbol"><A NAME="ref_298_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_298_34" HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A></span> : String)
-+ <b>is</b>
-+ <span class="symbol"><A NAME="ref_300_7">P_Size</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> := <A HREF="terminal_interface-curses-text_io__ads.htm#ref_80_13">Page_Length</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>);
-+ <span class="symbol"><A NAME="ref_301_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_302_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_303_7">L</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_304_7">C</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
- <b>begin</b>
- <b>if</b> <A HREF="terminal_interface-curses-text_io__adb.htm#ref_300_7">P_Size</A> &gt; 0 <b>then</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_301_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_302_7">X</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_303_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_304_7">C</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_301_7">Y</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_302_7">X</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_303_7">L</A>, <A HREF="terminal_interface-curses-text_io__adb.htm#ref_304_7">C</A>);
- <b>if</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_301_7">Y</A> + 1) = <A HREF="terminal_interface-curses-text_io__adb.htm#ref_303_7">L</A> <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses-text_io__adb.htm#ref_302_7">X</A> + 1 + <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A>'Length) &gt;= <A HREF="terminal_interface-curses-text_io__adb.htm#ref_304_7">C</A> <b>then</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_89_14">New_Page</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>);
- <b>end</b> <b>if</b>;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses__ads.htm#ref_655_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_823_14">Add</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_19">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_34">Item</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_316_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_116_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_316_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_116_19">Item</A></FONT> : String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_316_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_116_14">Put</A></span> (<span class="symbol"><A NAME="ref_316_19" HREF="terminal_interface-curses-text_io__ads.htm#ref_116_19">Item</A></span> : String)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_116_19">Item</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_116_14">Put</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_322_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_118_14">Put_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_323_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_119_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_324_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_120_7">Item</A></FONT> : String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_322_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_118_14">Put_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_323_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_119_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_324_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_120_7">Item</A></span> : String)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_115_14">Put</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_119_7">Win</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_120_7">Item</A>);
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_86_14">New_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_119_7">Win</A>, 1);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_118_14">Put_Line</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_331_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_122_14">Put_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_332_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_123_7">Item</A></FONT> : String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_331_14" HREF="terminal_interface-curses-text_io__ads.htm#ref_122_14">Put_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_332_7" HREF="terminal_interface-curses-text_io__ads.htm#ref_123_7">Item</A></span> : String)
- <b>is</b>
- <b>begin</b>
- <A HREF="terminal_interface-curses-text_io__ads.htm#ref_118_14">Put_Line</A> (<A HREF="terminal_interface-curses-text_io__ads.htm#ref_62_13">Get_Window</A>, <A HREF="terminal_interface-curses-text_io__ads.htm#ref_123_7">Item</A>);
- <b>end</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_122_14">Put_Line</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-text_io__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-text_io__ads.htm 2011-03-26 21:54:30.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-text_io__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,142 +1,154 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-text_io.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-text_io.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-text_io.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-text_io.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Text_IO --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Text_IO --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.14 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> Ada.Text_IO;
- <b>with</b> Ada.IO_Exceptions;
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_44_35" HREF="terminal_interface-curses-text_io__adb.htm#ref_42_40">Text_IO</A></FONT> <b>is</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_44_35" HREF="terminal_interface-curses-text_io__adb.htm#ref_42_40">Text_IO</A></span> <b>is</b>
-
- <b>use</b> <b>type</b> Ada.Text_IO.Count;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_47_12">Count</A></FONT> <b>is</b> Ada.Text_IO.Count;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_48_12">Positive_Count</A></FONT> <b>is</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>'Last;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_47_12">Count</A></span> <b>is</b> Ada.Text_IO.Count;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_48_12">Positive_Count</A></span> <b>is</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>'Last;
-
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_50_12">Field</A></FONT> <b>is</b> Ada.Text_IO.Field;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_51_12">Number_Base</A></FONT> <b>is</b> Integer <b>range</b> 2 .. 16;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_50_12">Field</A></span> <b>is</b> Ada.Text_IO.Field;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_51_12">Number_Base</A></span> <b>is</b> Integer <b>range</b> 2 .. 16;
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_53_9">Type_Set</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_53_22">Lower_Case</A></FONT>, <FONT COLOR=red><A NAME="ref_53_34">Upper_Case</A></FONT>, <FONT COLOR=red><A NAME="ref_53_46">Mixed_Case</A></FONT>);
-+ <b>type</b> <span class="symbol"><A NAME="ref_53_9">Type_Set</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_53_22">Lower_Case</A></span>, <span class="symbol"><A NAME="ref_53_34">Upper_Case</A></span>, <span class="symbol"><A NAME="ref_53_46">Mixed_Case</A></span>);
-
-- <FONT COLOR=green><EM>-- For most of the routines you will see a version without a Window</EM></FONT>
-- <FONT COLOR=green><EM>-- type parameter. They will operate on a default window, which can</EM></FONT>
-- <FONT COLOR=green><EM>-- be set by the user. It is initially equal to Standard_Window.</EM></FONT>
-+ <span class="comment"><EM>-- For most of the routines you will see a version without a Window</EM></span>
-+ <span class="comment"><EM>-- type parameter. They will operate on a default window, which can</EM></span>
-+ <span class="comment"><EM>-- be set by the user. It is initially equal to Standard_Window.</EM></span>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_59_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_46_14">Set_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_59_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_46_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- Set Win as the default window</EM></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_59_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_46_14">Set_Window</A></span> (<span class="symbol"><A NAME="ref_59_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_46_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- Set Win as the default window</EM></span>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_52_13">Get_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- Get the current default window</EM></FONT>
-+ <b>function</b> <span class="symbol"><A NAME="ref_62_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_52_13">Get_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- Get the current default window</EM></span>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_65_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_63_14">Flush</A></FONT> (<FONT COLOR=red><A NAME="ref_65_21" HREF="terminal_interface-curses-text_io__adb.htm#ref_63_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_69_14">Flush</A></FONT>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_65_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_63_14">Flush</A></span> (<span class="symbol"><A NAME="ref_65_21" HREF="terminal_interface-curses-text_io__adb.htm#ref_63_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_66_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_69_14">Flush</A></span>;
-
-- <FONT COLOR=green><EM>--------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Specification of line and page lengths --</EM></FONT>
-- <FONT COLOR=green><EM>--------------------------------------------</EM></FONT>
-+ <span class="comment"><EM>--------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- Specification of line and page lengths --</EM></span>
-+ <span class="comment"><EM>--------------------------------------------</EM></span>
-
-- <FONT COLOR=green><EM>-- There are no set routines in this package. I assume, that you allocate</EM></FONT>
-- <FONT COLOR=green><EM>-- the window with an appropriate size.</EM></FONT>
-- <FONT COLOR=green><EM>-- A scroll-window is interpreted as an page with unbounded page length,</EM></FONT>
-- <FONT COLOR=green><EM>-- i.e. it returns the conventional 0 as page length.</EM></FONT>
-+ <span class="comment"><EM>-- There are no set routines in this package. I assume, that you allocate</EM></span>
-+ <span class="comment"><EM>-- the window with an appropriate size.</EM></span>
-+ <span class="comment"><EM>-- A scroll-window is interpreted as an page with unbounded page length,</EM></span>
-+ <span class="comment"><EM>-- i.e. it returns the conventional 0 as page length.</EM></span>
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_77_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_84_13">Line_Length</A></FONT> (<FONT COLOR=red><A NAME="ref_77_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_84_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_78_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_96_13">Line_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_77_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_84_13">Line_Length</A></span> (<span class="symbol"><A NAME="ref_77_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_84_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_78_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_96_13">Line_Length</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_80_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_102_13">Page_Length</A></FONT> (<FONT COLOR=red><A NAME="ref_80_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_102_26">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_81_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_118_13">Page_Length</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_80_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_102_13">Page_Length</A></span> (<span class="symbol"><A NAME="ref_80_26" HREF="terminal_interface-curses-text_io__adb.htm#ref_102_26">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_81_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_118_13">Page_Length</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_47_12">Count</A>;
-
-- <FONT COLOR=green><EM>------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Column, Line, and Page Control --</EM></FONT>
-- <FONT COLOR=green><EM>------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_86_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_14">New_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_86_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_86_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_38">Spacing</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1);
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_87_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_144_14">New_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_87_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_144_24">Spacing</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1);
-+ <span class="comment"><EM>------------------------------------</EM></span>
-+ <span class="comment"><EM>-- Column, Line, and Page Control --</EM></span>
-+ <span class="comment"><EM>------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_86_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_14">New_Line</A></span> (<span class="symbol"><A NAME="ref_86_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_86_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_127_38">Spacing</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_87_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_144_14">New_Line</A></span> (<span class="symbol"><A NAME="ref_87_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_144_24">Spacing</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A> := 1);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_89_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_150_14">New_Page</A></FONT> (<FONT COLOR=red><A NAME="ref_89_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_150_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_90_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_156_14">New_Page</A></FONT>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_89_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_150_14">New_Page</A></span> (<span class="symbol"><A NAME="ref_89_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_150_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_90_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_156_14">New_Page</A></span>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_92_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_14">Set_Col</A></FONT> (<FONT COLOR=red><A NAME="ref_92_23" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_92_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_38">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>);
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_93_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_190_14">Set_Col</A></FONT> (<FONT COLOR=red><A NAME="ref_93_23" HREF="terminal_interface-curses-text_io__adb.htm#ref_190_23">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_92_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_14">Set_Col</A></span> (<span class="symbol"><A NAME="ref_92_23" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_92_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_162_38">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_93_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_190_14">Set_Col</A></span> (<span class="symbol"><A NAME="ref_93_23" HREF="terminal_interface-curses-text_io__adb.htm#ref_190_23">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_95_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_14">Set_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_95_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_95_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_38">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>);
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_96_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_220_14">Set_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_96_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_220_24">To</A></FONT> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_95_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_14">Set_Line</A></span> (<span class="symbol"><A NAME="ref_95_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_95_38" HREF="terminal_interface-curses-text_io__adb.htm#ref_196_38">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_96_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_220_14">Set_Line</A></span> (<span class="symbol"><A NAME="ref_96_24" HREF="terminal_interface-curses-text_io__adb.htm#ref_220_24">To</A></span> : <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_98_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_226_13">Col</A></FONT> (<FONT COLOR=red><A NAME="ref_98_18" HREF="terminal_interface-curses-text_io__adb.htm#ref_226_18">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_99_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_240_13">Col</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_98_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_226_13">Col</A></span> (<span class="symbol"><A NAME="ref_98_18" HREF="terminal_interface-curses-text_io__adb.htm#ref_226_18">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_99_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_240_13">Col</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_101_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_246_13">Line</A></FONT> (<FONT COLOR=red><A NAME="ref_101_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_246_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_102_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_260_13">Line</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_101_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_246_13">Line</A></span> (<span class="symbol"><A NAME="ref_101_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_246_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_102_13" HREF="terminal_interface-curses-text_io__adb.htm#ref_260_13">Line</A></span> <b>return</b> <A HREF="terminal_interface-curses-text_io__ads.htm#ref_48_12">Positive_Count</A>;
-
-- <FONT COLOR=green><EM>-----------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Characters-Output --</EM></FONT>
-- <FONT COLOR=green><EM>-----------------------</EM></FONT>
-+ <span class="comment"><EM>-----------------------</EM></span>
-+ <span class="comment"><EM>-- Characters-Output --</EM></span>
-+ <span class="comment"><EM>-----------------------</EM></span>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_108_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_108_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_108_34" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_34">Item</A></FONT> : Character);
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_109_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_288_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_109_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_288_19">Item</A></FONT> : Character);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_108_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_14">Put</A></span> (<span class="symbol"><A NAME="ref_108_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_108_34" HREF="terminal_interface-curses-text_io__adb.htm#ref_270_34">Item</A></span> : Character);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_109_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_288_14">Put</A></span> (<span class="symbol"><A NAME="ref_109_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_288_19">Item</A></span> : Character);
-
-- <FONT COLOR=green><EM>--------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Strings-Output --</EM></FONT>
-- <FONT COLOR=green><EM>--------------------</EM></FONT>
-+ <span class="comment"><EM>--------------------</EM></span>
-+ <span class="comment"><EM>-- Strings-Output --</EM></span>
-+ <span class="comment"><EM>--------------------</EM></span>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_115_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_115_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_115_34" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_34">Item</A></FONT> : String);
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_116_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_316_14">Put</A></FONT> (<FONT COLOR=red><A NAME="ref_116_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_316_19">Item</A></FONT> : String);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_115_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_14">Put</A></span> (<span class="symbol"><A NAME="ref_115_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_115_34" HREF="terminal_interface-curses-text_io__adb.htm#ref_298_34">Item</A></span> : String);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_116_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_316_14">Put</A></span> (<span class="symbol"><A NAME="ref_116_19" HREF="terminal_interface-curses-text_io__adb.htm#ref_316_19">Item</A></span> : String);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_118_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_322_14">Put_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_119_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_323_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_120_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_324_7">Item</A></FONT> : String);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_118_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_322_14">Put_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_119_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_323_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_120_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_324_7">Item</A></span> : String);
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_122_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_331_14">Put_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_123_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_332_7">Item</A></FONT> : String);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_122_14" HREF="terminal_interface-curses-text_io__adb.htm#ref_331_14">Put_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_123_7" HREF="terminal_interface-curses-text_io__adb.htm#ref_332_7">Item</A></span> : String);
-
-- <FONT COLOR=green><EM>-- Exceptions</EM></FONT>
-+ <span class="comment"><EM>-- Exceptions</EM></span>
-
-- <FONT COLOR=red><A NAME="ref_127_4">Status_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Status_Error;
-- <FONT COLOR=red><A NAME="ref_128_4">Mode_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Mode_Error;
-- <FONT COLOR=red><A NAME="ref_129_4">Name_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Name_Error;
-- <FONT COLOR=red><A NAME="ref_130_4">Use_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Use_Error;
-- <FONT COLOR=red><A NAME="ref_131_4">Device_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Device_Error;
-- <FONT COLOR=red><A NAME="ref_132_4">End_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.End_Error;
-- <FONT COLOR=red><A NAME="ref_133_4">Data_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Data_Error;
-- <FONT COLOR=red><A NAME="ref_134_4">Layout_Error</A></FONT> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Layout_Error;
-+ <span class="symbol"><A NAME="ref_127_4">Status_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Status_Error;
-+ <span class="symbol"><A NAME="ref_128_4">Mode_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Mode_Error;
-+ <span class="symbol"><A NAME="ref_129_4">Name_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Name_Error;
-+ <span class="symbol"><A NAME="ref_130_4">Use_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Use_Error;
-+ <span class="symbol"><A NAME="ref_131_4">Device_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Device_Error;
-+ <span class="symbol"><A NAME="ref_132_4">End_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.End_Error;
-+ <span class="symbol"><A NAME="ref_133_4">Data_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Data_Error;
-+ <span class="symbol"><A NAME="ref_134_4">Layout_Error</A></span> : <b>exception</b> <b>renames</b> Ada.IO_Exceptions.Layout_Error;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-text_io__ads.htm#ref_44_35">Text_IO</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-trace__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-trace__adb.htm 2011-03-19 23:18:42.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-trace__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,62 +1,74 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-trace.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-trace.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-trace.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-trace.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Trace --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 2000-2004,2009 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.7 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Trace --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 2000-2009,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.11 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_42_40" HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_42_40" HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A></span> <b>is</b>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_44_14" HREF="terminal_interface-curses-trace__ads.htm#ref_106_14">Trace_On</A></FONT> (<FONT COLOR=red><A NAME="ref_44_24" HREF="terminal_interface-curses-trace__ads.htm#ref_106_24">x</A></FONT> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>) <b>is</b>
-- <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses-trace__ads.htm#ref_106_24">x</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_44_14" HREF="terminal_interface-curses-trace__ads.htm#ref_114_14">Trace_On</A></span> (<span class="symbol"><A NAME="ref_44_24" HREF="terminal_interface-curses-trace__ads.htm#ref_114_24">x</A></span> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A>) <b>is</b>
-+ <b>pragma</b> Warnings (Off, <A HREF="terminal_interface-curses-trace__ads.htm#ref_114_24">x</A>); <span class="comment"><EM>-- unreferenced</EM></span>
- <b>begin</b>
- <b>null</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_106_14">Trace_On</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_114_14">Trace_On</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_50_14" HREF="terminal_interface-curses-trace__ads.htm#ref_110_14">Trace_Put</A></FONT> (<FONT COLOR=red><A NAME="ref_50_25" HREF="terminal_interface-curses-trace__ads.htm#ref_110_25">str</A></FONT> : String) <b>is</b>
-- <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses-trace__ads.htm#ref_110_25">str</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_50_14" HREF="terminal_interface-curses-trace__ads.htm#ref_118_14">Trace_Put</A></span> (<span class="symbol"><A NAME="ref_50_25" HREF="terminal_interface-curses-trace__ads.htm#ref_118_25">str</A></span> : String) <b>is</b>
-+ <b>pragma</b> Warnings (Off, <A HREF="terminal_interface-curses-trace__ads.htm#ref_118_25">str</A>); <span class="comment"><EM>-- unreferenced</EM></span>
- <b>begin</b>
- <b>null</b>;
-- <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_110_14">Trace_Put</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_118_14">Trace_Put</A>;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses-trace__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses-trace__ads.htm 2011-03-19 23:18:42.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses-trace__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,122 +1,142 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses-trace.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses-trace.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses-trace.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-trace.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses.Trace --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 2000 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Eugene V. Melaragno &lt;aldomel@ix.netcom.com&gt; 2000</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.1 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses.Trace --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 2000,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Author: Eugene V. Melaragno &lt;aldomel@ix.netcom.com&gt; 2000</EM></span>
-+<span class="comment"><EM>-- Version Control:</EM></span>
-+<span class="comment"><EM>-- @Revision: 1.4 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<FONT COLOR=red><A NAME="ref_42_35" HREF="terminal_interface-curses-trace__adb.htm#ref_42_40">Trace</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>);
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_42_35" HREF="terminal_interface-curses-trace__adb.htm#ref_42_40">Trace</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>);
-
-- <b>pragma</b> Warnings (Off);
-- <b>type</b> <FONT COLOR=red><A NAME="ref_46_9">Trace_Attribute_Set</A></FONT> <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_45_9">Trace_Attribute_Set</A></span> <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_48_10">Times</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_49_10">Tputs</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_50_10">Update</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_51_10">Cursor_Move</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_52_10">Character_Output</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_53_10">Calls</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_54_10">Virtual_Puts</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_55_10">Input_Events</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_56_10">TTY_State</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_57_10">Internal_Calls</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_58_10">Character_Calls</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_59_10">Termcap_TermInfo</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_60_10">Attributes_And_Colors</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_61_10">Unused</A></FONT> : Boolean;
-+ <span class="symbol"><A NAME="ref_47_10">Times</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_48_10">Tputs</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_49_10">Update</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_50_10">Cursor_Move</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_51_10">Character_Output</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_52_10">Calls</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_53_10">Virtual_Puts</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_54_10">Input_Events</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_55_10">TTY_State</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_56_10">Internal_Calls</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_57_10">Character_Calls</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_58_10">Termcap_TermInfo</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_59_10">Attribute_Color</A></span> : Boolean;
- <b>end</b> <b>record</b>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>);
-+ <b>pragma</b> Convention (C_Pass_By_Copy, <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A>);
-
-- <b>for</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> <b>use</b>
-+ <b>for</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A> <b>use</b>
- <b>record</b>
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_48_10">Times</A> <b>at</b> 0 <b>range</b> 0 .. 0;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_49_10">Tputs</A> <b>at</b> 0 <b>range</b> 1 .. 1;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_50_10">Update</A> <b>at</b> 0 <b>range</b> 2 .. 2;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_51_10">Cursor_Move</A> <b>at</b> 0 <b>range</b> 3 .. 3;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_52_10">Character_Output</A> <b>at</b> 0 <b>range</b> 4 .. 4;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_53_10">Calls</A> <b>at</b> 0 <b>range</b> 5 .. 5;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_54_10">Virtual_Puts</A> <b>at</b> 0 <b>range</b> 6 .. 6;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_55_10">Input_Events</A> <b>at</b> 0 <b>range</b> 7 .. 7;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_56_10">TTY_State</A> <b>at</b> 0 <b>range</b> 8 .. 8;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_57_10">Internal_Calls</A> <b>at</b> 0 <b>range</b> 9 .. 9;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_58_10">Character_Calls</A> <b>at</b> 0 <b>range</b> 10 .. 10;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_59_10">Termcap_TermInfo</A> <b>at</b> 0 <b>range</b> 11 .. 11;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_60_10">Attributes_And_Colors</A> <b>at</b> 0 <b>range</b> 12 .. 12;
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_61_10">Unused</A> <b>at</b> 0 <b>range</b> 13 .. 31;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_47_10">Times</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_360_4">TRACE_TIMES_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_361_4">TRACE_TIMES_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_48_10">Tputs</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_362_4">TRACE_TPUTS_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_363_4">TRACE_TPUTS_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_49_10">Update</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_364_4">TRACE_UPDATE_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_365_4">TRACE_UPDATE_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_50_10">Cursor_Move</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_366_4">TRACE_MOVE_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_367_4">TRACE_MOVE_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_51_10">Character_Output</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_368_4">TRACE_CHARPUT_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_369_4">TRACE_CHARPUT_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_52_10">Calls</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_370_4">TRACE_CALLS_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_371_4">TRACE_CALLS_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_53_10">Virtual_Puts</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_372_4">TRACE_VIRTPUT_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_373_4">TRACE_VIRTPUT_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_54_10">Input_Events</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_374_4">TRACE_IEVENT_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_375_4">TRACE_IEVENT_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_55_10">TTY_State</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_376_4">TRACE_BITS_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_377_4">TRACE_BITS_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_56_10">Internal_Calls</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_378_4">TRACE_ICALLS_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_379_4">TRACE_ICALLS_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_57_10">Character_Calls</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_380_4">TRACE_CCALLS_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_381_4">TRACE_CCALLS_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_58_10">Termcap_TermInfo</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_382_4">TRACE_DATABASE_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_383_4">TRACE_DATABASE_Last</A>;
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_59_10">Attribute_Color</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_384_4">TRACE_ATTRS_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_385_4">TRACE_ATTRS_Last</A>;
- <b>end</b> <b>record</b>;
-- <b>for</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>'Size <b>use</b> 32;
-- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT>
-- <FONT COLOR=green><EM>-- different on your system.</EM></FONT>
--
-+ <b>pragma</b> Warnings (Off);
-+ <b>for</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A>'Size <b>use</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_386_4">Trace_Size</A>;
- <b>pragma</b> Warnings (On);
-
-- <FONT COLOR=red><A NAME="ref_88_4">Trace_Disable</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> := (<b>others</b> =&gt; False);
-+ <span class="symbol"><A NAME="ref_96_4">Trace_Disable</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A> := (<b>others</b> =&gt; False);
-
-- <FONT COLOR=red><A NAME="ref_90_4">Trace_Ordinary</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> :=
-- (<A HREF="terminal_interface-curses-trace__ads.htm#ref_48_10">Times</A> =&gt; True,
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_49_10">Tputs</A> =&gt; True,
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_50_10">Update</A> =&gt; True,
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_51_10">Cursor_Move</A> =&gt; True,
-- <A HREF="terminal_interface-curses-trace__ads.htm#ref_52_10">Character_Output</A> =&gt; True,
-+ <span class="symbol"><A NAME="ref_98_4">Trace_Ordinary</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A> :=
-+ (<A HREF="terminal_interface-curses-trace__ads.htm#ref_47_10">Times</A> =&gt; True,
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_48_10">Tputs</A> =&gt; True,
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_49_10">Update</A> =&gt; True,
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_50_10">Cursor_Move</A> =&gt; True,
-+ <A HREF="terminal_interface-curses-trace__ads.htm#ref_51_10">Character_Output</A> =&gt; True,
- <b>others</b> =&gt; False);
-- <FONT COLOR=red><A NAME="ref_97_4">Trace_Maximum</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A> := (<b>others</b> =&gt; True);
-+ <span class="symbol"><A NAME="ref_105_4">Trace_Maximum</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A> := (<b>others</b> =&gt; True);
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_trace.3x.html">curs_trace.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_trace.3x.html">curs_trace.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_106_14" HREF="terminal_interface-curses-trace__adb.htm#ref_44_14">Trace_On</A></FONT> (<FONT COLOR=red><A NAME="ref_106_24" HREF="terminal_interface-curses-trace__adb.htm#ref_44_24">x</A></FONT> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>);
-- <FONT COLOR=green><EM>-- The debugging library has trace.</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_114_14" HREF="terminal_interface-curses-trace__adb.htm#ref_44_14">Trace_On</A></span> (<span class="symbol"><A NAME="ref_114_24" HREF="terminal_interface-curses-trace__adb.htm#ref_44_24">x</A></span> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A>);
-+ <span class="comment"><EM>-- The debugging library has trace.</EM></span>
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_110_14" HREF="terminal_interface-curses-trace__adb.htm#ref_50_14">Trace_Put</A></FONT> (<FONT COLOR=red><A NAME="ref_110_25" HREF="terminal_interface-curses-trace__adb.htm#ref_50_25">str</A></FONT> : String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_trace.3x.html">_tracef()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_118_14" HREF="terminal_interface-curses-trace__adb.htm#ref_50_14">Trace_Put</A></span> (<span class="symbol"><A NAME="ref_118_25" HREF="terminal_interface-curses-trace__adb.htm#ref_50_25">str</A></span> : String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_trace.3x.html">_tracef()</A></EM></span>
-
-- <FONT COLOR=red><A NAME="ref_113_4">Current_Trace_Setting</A></FONT> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_46_9">Trace_Attribute_Set</A>;
-- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-trace__ads.htm#ref_113_4">Current_Trace_Setting</A>, "_nc_tracing");
-+ <span class="symbol"><A NAME="ref_121_4">Current_Trace_Setting</A></span> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A>;
-+ <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-trace__ads.htm#ref_121_4">Current_Trace_Setting</A>, "_nc_tracing");
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses__adb.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses__adb.htm 2011-03-26 21:54:31.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses__adb.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,85 +1,97 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses.adb</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses.adb</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses.adb </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses.adb </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- B O D Y --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.8 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/22 23:02:14 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- B O D Y --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.14 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:05 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> System;
-
--<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.Strings;
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C;
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings; <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.Strings;
- <b>with</b> Ada.Characters.Handling; <b>use</b> Ada.Characters.Handling;
- <b>with</b> Ada.Strings.Fixed;
-
--<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<FONT COLOR=red><A NAME="ref_50_33" HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A></FONT> <b>is</b>
-+<b>package</b> <b>body</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<span class="symbol"><A NAME="ref_50_33" HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A></span> <b>is</b>
-
-- <b>use</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_35">Aux</A>;
-+ <b>use</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_45_35">Aux</A>;
- <b>use</b> <b>type</b> System.Bit_Order;
-
-- <b>package</b> <FONT COLOR=red><A NAME="ref_55_12">ASF</A></FONT> <b>renames</b> Ada.Strings.Fixed;
-+ <b>package</b> <span class="symbol"><A NAME="ref_55_12">ASF</A></span> <b>renames</b> Ada.Strings.Fixed;
-
- <b>type</b> chtype_array <b>is</b> <b>array</b> (size_t <b>range</b> &lt;&gt;)
-- <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
-+ <b>of</b> <b>aliased</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Convention (C, chtype_array);
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_62_13" HREF="terminal_interface-curses__ads.htm#ref_1618_13">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_62_23" HREF="terminal_interface-curses__ads.htm#ref_1618_23">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> String
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_62_13" HREF="terminal_interface-curses__ads.htm#ref_1786_13">Key_Name</A></span> (<span class="symbol"><A NAME="ref_62_23" HREF="terminal_interface-curses__ads.htm#ref_1786_23">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>) <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_64_16">Keyname</A></FONT> (<FONT COLOR=red><A NAME="ref_64_25" HREF="terminal_interface-curses__adb.htm#ref_64_16">K</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_64_16">Keyname</A></span> (<span class="symbol"><A NAME="ref_64_25" HREF="terminal_interface-curses__adb.htm#ref_64_16">K</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Keyname, "keyname");
-
-- <FONT COLOR=red><A NAME="ref_67_7">Ch</A></FONT> : Character;
-+ <span class="symbol"><A NAME="ref_67_7">Ch</A></span> : Character;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1618_23">Key</A> &lt;= Character'Pos (Character'Last) <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A> := Character'Val (<A HREF="terminal_interface-curses__ads.htm#ref_1618_23">Key</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1786_23">Key</A> &lt;= Character'Pos (Character'Last) <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A> := Character'Val (<A HREF="terminal_interface-curses__ads.htm#ref_1786_23">Key</A>);
- <b>if</b> Is_Control (<A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>) <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1629_13">Un_Control</A> (<A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>));
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1797_13">Un_Control</A> (<A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>));
- <b>elsif</b> Is_Graphic (<A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>) <b>then</b>
- <b>declare</b>
-- <FONT COLOR=red><A NAME="ref_77_16">S</A></FONT> : String (1 .. 1);
-+ <span class="symbol"><A NAME="ref_77_16">S</A></span> : String (1 .. 1);
- <b>begin</b>
- <A HREF="terminal_interface-curses__adb.htm#ref_77_16">S</A> (1) := <A HREF="terminal_interface-curses__adb.htm#ref_67_7">Ch</A>;
- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_77_16">S</A>;
-@@ -88,2475 +100,2476 @@
- <b>return</b> "";
- <b>end</b> <b>if</b>;
- <b>else</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_64_16">Keyname</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1618_23">Key</A>)));
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_64_16">Keyname</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1786_23">Key</A>)));
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1618_13">Key_Name</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1786_13">Key_Name</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_90_14" HREF="terminal_interface-curses__ads.htm#ref_1612_14">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_90_24" HREF="terminal_interface-curses__ads.htm#ref_1612_24">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>;
-- <FONT COLOR=red><A NAME="ref_91_24" HREF="terminal_interface-curses__ads.htm#ref_1613_24">Name</A></FONT> : <b>out</b> String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_90_14" HREF="terminal_interface-curses__ads.htm#ref_1780_14">Key_Name</A></span> (<span class="symbol"><A NAME="ref_90_24" HREF="terminal_interface-curses__ads.htm#ref_1780_24">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>;
-+ <span class="symbol"><A NAME="ref_91_24" HREF="terminal_interface-curses__ads.htm#ref_1781_24">Name</A></span> : <b>out</b> String)
- <b>is</b>
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_55_12">ASF</A>.Move (<A HREF="terminal_interface-curses__ads.htm#ref_1618_13">Key_Name</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1612_24">Key</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1613_24">Name</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1612_14">Key_Name</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_55_12">ASF</A>.Move (<A HREF="terminal_interface-curses__ads.htm#ref_1786_13">Key_Name</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1780_24">Key</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1781_24">Name</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1780_14">Key_Name</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_98_14" HREF="terminal_interface-curses__ads.htm#ref_488_14">Init_Screen</A></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_98_14" HREF="terminal_interface-curses__ads.htm#ref_656_14">Init_Screen</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_100_16">Initscr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_100_16">Initscr</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Initscr, "initscr");
-
-- <FONT COLOR=red><A NAME="ref_103_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_103_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>begin</b>
- <A HREF="terminal_interface-curses__adb.htm#ref_103_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_100_16">Initscr</A>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_103_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_103_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_488_14">Init_Screen</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_656_14">Init_Screen</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_111_14" HREF="terminal_interface-curses__ads.htm#ref_497_14">End_Windows</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_111_14" HREF="terminal_interface-curses__ads.htm#ref_665_14">End_Windows</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_113_16">Endwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_113_16">Endwin</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Endwin, "endwin");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_113_16">Endwin</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_113_16">Endwin</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_497_14">End_Windows</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_665_14">End_Windows</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_121_13" HREF="terminal_interface-curses__ads.htm#ref_504_13">Is_End_Window</A></FONT> <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_121_13" HREF="terminal_interface-curses__ads.htm#ref_672_13">Is_End_Window</A></span> <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_123_16">Isendwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_123_16">Isendwin</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, Isendwin, "isendwin");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_123_16">Isendwin</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_123_16">Isendwin</A> = <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_504_13">Is_End_Window</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_133_14" HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_133_27" HREF="terminal_interface-curses__ads.htm#ref_513_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_134_27" HREF="terminal_interface-curses__ads.htm#ref_514_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_135_27" HREF="terminal_interface-curses__ads.htm#ref_515_27">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_137_16">Wmove</A></FONT> (<FONT COLOR=red><A NAME="ref_137_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_138_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_139_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>
-- ) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_672_13">Is_End_Window</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_133_14" HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A></span> (<span class="symbol"><A NAME="ref_133_27" HREF="terminal_interface-curses__ads.htm#ref_681_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_134_27" HREF="terminal_interface-curses__ads.htm#ref_682_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_135_27" HREF="terminal_interface-curses__ads.htm#ref_683_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_137_16">Wmove</A></span> (<span class="symbol"><A NAME="ref_137_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_138_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_139_23" HREF="terminal_interface-curses__adb.htm#ref_137_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>
-+ ) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wmove, "wmove");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_137_16">Wmove</A> (<A HREF="terminal_interface-curses__ads.htm#ref_513_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_514_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_515_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_137_16">Wmove</A> (<A HREF="terminal_interface-curses__ads.htm#ref_681_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_682_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_683_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_148_14" HREF="terminal_interface-curses__ads.htm#ref_525_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_148_19" HREF="terminal_interface-curses__ads.htm#ref_525_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_149_19" HREF="terminal_interface-curses__ads.htm#ref_526_19">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>)
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_148_14" HREF="terminal_interface-curses__ads.htm#ref_693_14">Add</A></span> (<span class="symbol"><A NAME="ref_148_19" HREF="terminal_interface-curses__ads.htm#ref_693_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_149_19" HREF="terminal_interface-curses__ads.htm#ref_694_19">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_151_16">Waddch</A></FONT> (<FONT COLOR=red><A NAME="ref_151_24" HREF="terminal_interface-curses__adb.htm#ref_151_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_152_24" HREF="terminal_interface-curses__adb.htm#ref_151_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_151_16">Waddch</A></span> (<span class="symbol"><A NAME="ref_151_24" HREF="terminal_interface-curses__adb.htm#ref_151_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_152_24" HREF="terminal_interface-curses__adb.htm#ref_151_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Waddch, "waddch");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_151_16">Waddch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_525_19">Win</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_526_19">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_151_16">Waddch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_693_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_694_19">Ch</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_525_14">Add</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_693_14">Add</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_160_14" HREF="terminal_interface-curses__ads.htm#ref_530_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_160_19" HREF="terminal_interface-curses__ads.htm#ref_530_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_161_19" HREF="terminal_interface-curses__ads.htm#ref_531_19">Ch</A></FONT> : Character)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_160_14" HREF="terminal_interface-curses__ads.htm#ref_698_14">Add</A></span> (<span class="symbol"><A NAME="ref_160_19" HREF="terminal_interface-curses__ads.htm#ref_698_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_161_19" HREF="terminal_interface-curses__ads.htm#ref_699_19">Ch</A></span> : Character)
- <b>is</b>
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_525_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_530_19">Win</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_531_19">Ch</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_530_14">Add</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_170_14" HREF="terminal_interface-curses__ads.htm#ref_536_14">Add</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_171_7" HREF="terminal_interface-curses__ads.htm#ref_537_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_172_7" HREF="terminal_interface-curses__ads.htm#ref_538_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_173_7" HREF="terminal_interface-curses__ads.htm#ref_539_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_174_7" HREF="terminal_interface-curses__ads.htm#ref_540_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_176_16">mvwaddch</A></FONT> (<FONT COLOR=red><A NAME="ref_176_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_177_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">Y</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_178_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">X</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_179_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_693_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_698_19">Win</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_699_19">Ch</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_698_14">Add</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_170_14" HREF="terminal_interface-curses__ads.htm#ref_704_14">Add</A></span>
-+ (<span class="symbol"><A NAME="ref_171_7" HREF="terminal_interface-curses__ads.htm#ref_705_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_172_7" HREF="terminal_interface-curses__ads.htm#ref_706_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_173_7" HREF="terminal_interface-curses__ads.htm#ref_707_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_174_7" HREF="terminal_interface-curses__ads.htm#ref_708_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_176_16">mvwaddch</A></span> (<span class="symbol"><A NAME="ref_176_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_177_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">Y</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_178_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">X</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_179_26" HREF="terminal_interface-curses__adb.htm#ref_176_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, mvwaddch, "mvwaddch");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_176_16">mvwaddch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_537_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_538_7">Line</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_539_7">Column</A>),
-- AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_540_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_536_14">Add</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_189_14" HREF="terminal_interface-curses__ads.htm#ref_544_14">Add</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_190_7" HREF="terminal_interface-curses__ads.htm#ref_545_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_191_7" HREF="terminal_interface-curses__ads.htm#ref_546_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_192_7" HREF="terminal_interface-curses__ads.htm#ref_547_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_193_7" HREF="terminal_interface-curses__ads.htm#ref_548_7">Ch</A></FONT> : Character)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_536_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_545_7">Win</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_546_7">Line</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_547_7">Column</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_548_7">Ch</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_544_14">Add</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_204_14" HREF="terminal_interface-curses__ads.htm#ref_553_14">Add_With_Immediate_Echo</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_205_7" HREF="terminal_interface-curses__ads.htm#ref_554_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_206_7" HREF="terminal_interface-curses__ads.htm#ref_555_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>)
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_176_16">mvwaddch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_705_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_706_7">Line</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_707_7">Column</A>),
-+ <A HREF="terminal_interface-curses__ads.htm#ref_708_7">Ch</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_704_14">Add</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_190_14" HREF="terminal_interface-curses__ads.htm#ref_712_14">Add</A></span>
-+ (<span class="symbol"><A NAME="ref_191_7" HREF="terminal_interface-curses__ads.htm#ref_713_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_192_7" HREF="terminal_interface-curses__ads.htm#ref_714_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_193_7" HREF="terminal_interface-curses__ads.htm#ref_715_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_194_7" HREF="terminal_interface-curses__ads.htm#ref_716_7">Ch</A></span> : Character)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_704_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_713_7">Win</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_714_7">Line</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_715_7">Column</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_716_7">Ch</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_712_14">Add</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_205_14" HREF="terminal_interface-curses__ads.htm#ref_721_14">Add_With_Immediate_Echo</A></span>
-+ (<span class="symbol"><A NAME="ref_206_7" HREF="terminal_interface-curses__ads.htm#ref_722_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_207_7" HREF="terminal_interface-curses__ads.htm#ref_723_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_208_16">Wechochar</A></FONT> (<FONT COLOR=red><A NAME="ref_208_27" HREF="terminal_interface-curses__adb.htm#ref_208_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_209_27" HREF="terminal_interface-curses__adb.htm#ref_208_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_209_16">Wechochar</A></span> (<span class="symbol"><A NAME="ref_209_27" HREF="terminal_interface-curses__adb.htm#ref_209_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_210_27" HREF="terminal_interface-curses__adb.htm#ref_209_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wechochar, "wechochar");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_208_16">Wechochar</A> (<A HREF="terminal_interface-curses__ads.htm#ref_554_7">Win</A>, AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_555_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_209_16">Wechochar</A> (<A HREF="terminal_interface-curses__ads.htm#ref_722_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_723_7">Ch</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_553_14">Add_With_Immediate_Echo</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_721_14">Add_With_Immediate_Echo</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_217_14" HREF="terminal_interface-curses__ads.htm#ref_559_14">Add_With_Immediate_Echo</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_218_7" HREF="terminal_interface-curses__ads.htm#ref_560_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_219_7" HREF="terminal_interface-curses__ads.htm#ref_561_7">Ch</A></FONT> : Character)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_553_14">Add_With_Immediate_Echo</A>
-- (<A HREF="terminal_interface-curses__ads.htm#ref_560_7">Win</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_561_7">Ch</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_559_14">Add_With_Immediate_Echo</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_229_13" HREF="terminal_interface-curses__ads.htm#ref_571_13">Create</A></FONT> (<FONT COLOR=red><A NAME="ref_229_21" HREF="terminal_interface-curses__ads.htm#ref_572_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_230_21" HREF="terminal_interface-curses__ads.htm#ref_573_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_231_21" HREF="terminal_interface-curses__ads.htm#ref_574_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_232_21" HREF="terminal_interface-curses__ads.htm#ref_575_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_234_16">Newwin</A></FONT> (<FONT COLOR=red><A NAME="ref_234_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_235_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_236_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_237_24" HREF="terminal_interface-curses__adb.htm#ref_234_16">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_218_14" HREF="terminal_interface-curses__ads.htm#ref_727_14">Add_With_Immediate_Echo</A></span>
-+ (<span class="symbol"><A NAME="ref_219_7" HREF="terminal_interface-curses__ads.htm#ref_728_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_220_7" HREF="terminal_interface-curses__ads.htm#ref_729_7">Ch</A></span> : Character)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_721_14">Add_With_Immediate_Echo</A>
-+ (<A HREF="terminal_interface-curses__ads.htm#ref_728_7">Win</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_729_7">Ch</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_727_14">Add_With_Immediate_Echo</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_230_13" HREF="terminal_interface-curses__ads.htm#ref_739_13">Create</A></span> (<span class="symbol"><A NAME="ref_230_21" HREF="terminal_interface-curses__ads.htm#ref_740_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_231_21" HREF="terminal_interface-curses__ads.htm#ref_741_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_232_21" HREF="terminal_interface-curses__ads.htm#ref_742_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_233_21" HREF="terminal_interface-curses__ads.htm#ref_743_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_235_16">Newwin</A></span> (<span class="symbol"><A NAME="ref_235_24" HREF="terminal_interface-curses__adb.htm#ref_235_16">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_236_24" HREF="terminal_interface-curses__adb.htm#ref_235_16">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_237_24" HREF="terminal_interface-curses__adb.htm#ref_235_16">First_Line_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_238_24" HREF="terminal_interface-curses__adb.htm#ref_235_16">First_Column_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Newwin, "newwin");
-
-- <FONT COLOR=red><A NAME="ref_240_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_241_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_240_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_234_16">Newwin</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_572_7">Number_Of_Lines</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_573_7">Number_Of_Columns</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_574_7">First_Line_Position</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_575_7">First_Column_Position</A>));
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_240_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_241_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_235_16">Newwin</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_740_7">Number_Of_Lines</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_741_7">Number_Of_Columns</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_742_7">First_Line_Position</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_743_7">First_Column_Position</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_241_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_240_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_571_13">Create</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_241_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_739_13">Create</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_252_14" HREF="terminal_interface-curses__ads.htm#ref_590_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_252_22" HREF="terminal_interface-curses__ads.htm#ref_590_22">Win</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_253_14" HREF="terminal_interface-curses__ads.htm#ref_758_14">Delete</A></span> (<span class="symbol"><A NAME="ref_253_22" HREF="terminal_interface-curses__ads.htm#ref_758_22">Win</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_254_16">Wdelwin</A></FONT> (<FONT COLOR=red><A NAME="ref_254_25" HREF="terminal_interface-curses__adb.htm#ref_254_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_255_16">Wdelwin</A></span> (<span class="symbol"><A NAME="ref_255_25" HREF="terminal_interface-curses__adb.htm#ref_255_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wdelwin, "delwin");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_254_16">Wdelwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_590_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_255_16">Wdelwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_758_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses__ads.htm#ref_590_22">Win</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_590_14">Delete</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_758_22">Win</A> := <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_758_14">Delete</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_263_13" HREF="terminal_interface-curses__ads.htm#ref_596_13">Sub_Window</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_264_7" HREF="terminal_interface-curses__ads.htm#ref_597_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_265_7" HREF="terminal_interface-curses__ads.htm#ref_598_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_266_7" HREF="terminal_interface-curses__ads.htm#ref_599_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_267_7" HREF="terminal_interface-curses__ads.htm#ref_600_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_268_7" HREF="terminal_interface-curses__ads.htm#ref_601_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_270_16">Subwin</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_271_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_272_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_273_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_274_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_275_10" HREF="terminal_interface-curses__adb.htm#ref_270_16">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_264_13" HREF="terminal_interface-curses__ads.htm#ref_764_13">Sub_Window</A></span>
-+ (<span class="symbol"><A NAME="ref_265_7" HREF="terminal_interface-curses__ads.htm#ref_765_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_266_7" HREF="terminal_interface-curses__ads.htm#ref_766_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_267_7" HREF="terminal_interface-curses__ads.htm#ref_767_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_268_7" HREF="terminal_interface-curses__ads.htm#ref_768_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_269_7" HREF="terminal_interface-curses__ads.htm#ref_769_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_271_16">Subwin</A></span>
-+ (<span class="symbol"><A NAME="ref_272_10" HREF="terminal_interface-curses__adb.htm#ref_271_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_273_10" HREF="terminal_interface-curses__adb.htm#ref_271_16">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_274_10" HREF="terminal_interface-curses__adb.htm#ref_271_16">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_275_10" HREF="terminal_interface-curses__adb.htm#ref_271_16">First_Line_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_276_10" HREF="terminal_interface-curses__adb.htm#ref_271_16">First_Column_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Subwin, "subwin");
-
-- <FONT COLOR=red><A NAME="ref_278_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_279_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_278_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_270_16">Subwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_597_7">Win</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_598_7">Number_Of_Lines</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_599_7">Number_Of_Columns</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_600_7">First_Line_Position</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_601_7">First_Column_Position</A>));
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_278_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_278_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_596_13">Sub_Window</A>;
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_291_13" HREF="terminal_interface-curses__ads.htm#ref_606_13">Derived_Window</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_292_7" HREF="terminal_interface-curses__ads.htm#ref_607_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_293_7" HREF="terminal_interface-curses__ads.htm#ref_608_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_294_7" HREF="terminal_interface-curses__ads.htm#ref_609_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_295_7" HREF="terminal_interface-curses__ads.htm#ref_610_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_296_7" HREF="terminal_interface-curses__ads.htm#ref_611_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_298_16">Derwin</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_299_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_300_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_301_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_302_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_303_10" HREF="terminal_interface-curses__adb.htm#ref_298_16">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_279_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_271_16">Subwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_765_7">Win</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_766_7">Number_Of_Lines</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_767_7">Number_Of_Columns</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_768_7">First_Line_Position</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_769_7">First_Column_Position</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_279_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_279_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_764_13">Sub_Window</A>;
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_292_13" HREF="terminal_interface-curses__ads.htm#ref_774_13">Derived_Window</A></span>
-+ (<span class="symbol"><A NAME="ref_293_7" HREF="terminal_interface-curses__ads.htm#ref_775_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_294_7" HREF="terminal_interface-curses__ads.htm#ref_776_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_295_7" HREF="terminal_interface-curses__ads.htm#ref_777_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_296_7" HREF="terminal_interface-curses__ads.htm#ref_778_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_297_7" HREF="terminal_interface-curses__ads.htm#ref_779_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_299_16">Derwin</A></span>
-+ (<span class="symbol"><A NAME="ref_300_10" HREF="terminal_interface-curses__adb.htm#ref_299_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_301_10" HREF="terminal_interface-curses__adb.htm#ref_299_16">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_302_10" HREF="terminal_interface-curses__adb.htm#ref_299_16">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_303_10" HREF="terminal_interface-curses__adb.htm#ref_299_16">First_Line_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_304_10" HREF="terminal_interface-curses__adb.htm#ref_299_16">First_Column_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Derwin, "derwin");
-
-- <FONT COLOR=red><A NAME="ref_306_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_307_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_306_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_298_16">Derwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_607_7">Win</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_608_7">Number_Of_Lines</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_609_7">Number_Of_Columns</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_610_7">First_Line_Position</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_611_7">First_Column_Position</A>));
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_306_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_307_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_299_16">Derwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_775_7">Win</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_776_7">Number_Of_Lines</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_777_7">Number_Of_Columns</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_778_7">First_Line_Position</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_779_7">First_Column_Position</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_307_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_306_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_606_13">Derived_Window</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_307_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_774_13">Derived_Window</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_319_13" HREF="terminal_interface-curses__ads.htm#ref_616_13">Duplicate</A></FONT> (<FONT COLOR=red><A NAME="ref_319_24" HREF="terminal_interface-curses__ads.htm#ref_616_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_320_13" HREF="terminal_interface-curses__ads.htm#ref_784_13">Duplicate</A></span> (<span class="symbol"><A NAME="ref_320_24" HREF="terminal_interface-curses__ads.htm#ref_784_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_321_16">Dupwin</A></FONT> (<FONT COLOR=red><A NAME="ref_321_24" HREF="terminal_interface-curses__adb.htm#ref_321_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_322_16">Dupwin</A></span> (<span class="symbol"><A NAME="ref_322_24" HREF="terminal_interface-curses__adb.htm#ref_322_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Dupwin, "dupwin");
-
-- <FONT COLOR=red><A NAME="ref_324_7">W</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__adb.htm#ref_321_16">Dupwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_616_24">Win</A>);
-+ <span class="symbol"><A NAME="ref_325_7">W</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__adb.htm#ref_322_16">Dupwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_784_24">Win</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_324_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_325_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_324_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_616_13">Duplicate</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_325_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_784_13">Duplicate</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_332_14" HREF="terminal_interface-curses__ads.htm#ref_621_14">Move_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_332_27" HREF="terminal_interface-curses__ads.htm#ref_621_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_333_27" HREF="terminal_interface-curses__ads.htm#ref_622_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_334_27" HREF="terminal_interface-curses__ads.htm#ref_623_27">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_333_14" HREF="terminal_interface-curses__ads.htm#ref_789_14">Move_Window</A></span> (<span class="symbol"><A NAME="ref_333_27" HREF="terminal_interface-curses__ads.htm#ref_789_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_334_27" HREF="terminal_interface-curses__ads.htm#ref_790_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_335_27" HREF="terminal_interface-curses__ads.htm#ref_791_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_336_16">Mvwin</A></FONT> (<FONT COLOR=red><A NAME="ref_336_23" HREF="terminal_interface-curses__adb.htm#ref_336_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_337_23" HREF="terminal_interface-curses__adb.htm#ref_336_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_338_23" HREF="terminal_interface-curses__adb.htm#ref_336_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_337_16">Mvwin</A></span> (<span class="symbol"><A NAME="ref_337_23" HREF="terminal_interface-curses__adb.htm#ref_337_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_338_23" HREF="terminal_interface-curses__adb.htm#ref_337_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_339_23" HREF="terminal_interface-curses__adb.htm#ref_337_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Mvwin, "mvwin");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_336_16">Mvwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_621_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_622_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_623_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_337_16">Mvwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_789_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_790_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_791_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_621_14">Move_Window</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_789_14">Move_Window</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_346_14" HREF="terminal_interface-curses__ads.htm#ref_628_14">Move_Derived_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_346_35" HREF="terminal_interface-curses__ads.htm#ref_628_35">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_347_35" HREF="terminal_interface-curses__ads.htm#ref_629_35">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_348_35" HREF="terminal_interface-curses__ads.htm#ref_630_35">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_350_16">Mvderwin</A></FONT> (<FONT COLOR=red><A NAME="ref_350_26" HREF="terminal_interface-curses__adb.htm#ref_350_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_351_26" HREF="terminal_interface-curses__adb.htm#ref_350_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_352_26" HREF="terminal_interface-curses__adb.htm#ref_350_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_347_14" HREF="terminal_interface-curses__ads.htm#ref_796_14">Move_Derived_Window</A></span> (<span class="symbol"><A NAME="ref_347_35" HREF="terminal_interface-curses__ads.htm#ref_796_35">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_348_35" HREF="terminal_interface-curses__ads.htm#ref_797_35">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_349_35" HREF="terminal_interface-curses__ads.htm#ref_798_35">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_351_16">Mvderwin</A></span> (<span class="symbol"><A NAME="ref_351_26" HREF="terminal_interface-curses__adb.htm#ref_351_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_352_26" HREF="terminal_interface-curses__adb.htm#ref_351_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_353_26" HREF="terminal_interface-curses__adb.htm#ref_351_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Mvderwin, "mvderwin");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_350_16">Mvderwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_628_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_629_35">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_630_35">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_351_16">Mvderwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_796_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_797_35">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_798_35">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_628_14">Move_Derived_Window</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_796_14">Move_Derived_Window</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_360_14" HREF="terminal_interface-curses__ads.htm#ref_645_14">Set_Synch_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_360_30" HREF="terminal_interface-curses__ads.htm#ref_645_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_361_30" HREF="terminal_interface-curses__ads.htm#ref_646_30">Mode</A></FONT> : Boolean := False)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_361_14" HREF="terminal_interface-curses__ads.htm#ref_813_14">Set_Synch_Mode</A></span> (<span class="symbol"><A NAME="ref_361_30" HREF="terminal_interface-curses__ads.htm#ref_813_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_362_30" HREF="terminal_interface-curses__ads.htm#ref_814_30">Mode</A></span> : Boolean := False)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_363_16">Syncok</A></FONT> (<FONT COLOR=red><A NAME="ref_363_24" HREF="terminal_interface-curses__adb.htm#ref_363_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_364_24" HREF="terminal_interface-curses__adb.htm#ref_363_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_364_16">Syncok</A></span> (<span class="symbol"><A NAME="ref_364_24" HREF="terminal_interface-curses__adb.htm#ref_364_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_365_24" HREF="terminal_interface-curses__adb.htm#ref_364_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Syncok, "syncok");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_363_16">Syncok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_645_30">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_646_30">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_364_16">Syncok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_813_30">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_814_30">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_645_14">Set_Synch_Mode</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_372_14" HREF="terminal_interface-curses__ads.htm#ref_655_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_372_19" HREF="terminal_interface-curses__ads.htm#ref_655_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_373_19" HREF="terminal_interface-curses__ads.htm#ref_656_19">Str</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_374_19" HREF="terminal_interface-curses__ads.htm#ref_657_19">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_376_16">Waddnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_376_26" HREF="terminal_interface-curses__adb.htm#ref_376_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_377_26" HREF="terminal_interface-curses__adb.htm#ref_376_16">Str</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_378_26" HREF="terminal_interface-curses__adb.htm#ref_376_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_813_14">Set_Synch_Mode</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_373_14" HREF="terminal_interface-curses__ads.htm#ref_823_14">Add</A></span> (<span class="symbol"><A NAME="ref_373_19" HREF="terminal_interface-curses__ads.htm#ref_823_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_374_19" HREF="terminal_interface-curses__ads.htm#ref_824_19">Str</A></span> : String;
-+ <span class="symbol"><A NAME="ref_375_19" HREF="terminal_interface-curses__ads.htm#ref_825_19">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_377_16">Waddnstr</A></span> (<span class="symbol"><A NAME="ref_377_26" HREF="terminal_interface-curses__adb.htm#ref_377_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_378_26" HREF="terminal_interface-curses__adb.htm#ref_377_16">Str</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_379_26" HREF="terminal_interface-curses__adb.htm#ref_377_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Waddnstr, "waddnstr");
-
-- <FONT COLOR=red><A NAME="ref_381_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_656_19">Str</A>'Length);
-- <FONT COLOR=red><A NAME="ref_382_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_382_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_824_19">Str</A>'Length);
-+ <span class="symbol"><A NAME="ref_383_7">Length</A></span> : size_t;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_656_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_381_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_382_7">Length</A>);
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_376_16">Waddnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_655_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_381_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_657_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_655_14">Add</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_390_14" HREF="terminal_interface-curses__ads.htm#ref_664_14">Add</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_391_7" HREF="terminal_interface-curses__ads.htm#ref_664_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_392_7" HREF="terminal_interface-curses__ads.htm#ref_665_19">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_393_7" HREF="terminal_interface-curses__ads.htm#ref_666_19">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_394_7" HREF="terminal_interface-curses__ads.htm#ref_667_19">Str</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_395_7" HREF="terminal_interface-curses__ads.htm#ref_668_19">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_664_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_665_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_666_19">Column</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_655_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_664_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_667_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_668_19">Len</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_664_14">Add</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_402_14" HREF="terminal_interface-curses__ads.htm#ref_679_14">Add</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_403_7" HREF="terminal_interface-curses__ads.htm#ref_679_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_404_7" HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Attributed_String</A>;
-- <FONT COLOR=red><A NAME="ref_405_7" HREF="terminal_interface-curses__ads.htm#ref_681_19">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_407_16">Waddchnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_407_28" HREF="terminal_interface-curses__adb.htm#ref_407_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_408_28" HREF="terminal_interface-curses__adb.htm#ref_407_16">Str</A></FONT> : chtype_array;
-- <FONT COLOR=red><A NAME="ref_409_28" HREF="terminal_interface-curses__adb.htm#ref_407_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_824_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_382_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_383_7">Length</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_377_16">Waddnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_823_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_382_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_825_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_823_14">Add</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_391_14" HREF="terminal_interface-curses__ads.htm#ref_832_14">Add</A></span>
-+ (<span class="symbol"><A NAME="ref_392_7" HREF="terminal_interface-curses__ads.htm#ref_832_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_393_7" HREF="terminal_interface-curses__ads.htm#ref_833_19">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_394_7" HREF="terminal_interface-curses__ads.htm#ref_834_19">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_395_7" HREF="terminal_interface-curses__ads.htm#ref_835_19">Str</A></span> : String;
-+ <span class="symbol"><A NAME="ref_396_7" HREF="terminal_interface-curses__ads.htm#ref_836_19">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_832_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_833_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_834_19">Column</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_823_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_832_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_835_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_836_19">Len</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_832_14">Add</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_403_14" HREF="terminal_interface-curses__ads.htm#ref_847_14">Add</A></span>
-+ (<span class="symbol"><A NAME="ref_404_7" HREF="terminal_interface-curses__ads.htm#ref_847_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_405_7" HREF="terminal_interface-curses__ads.htm#ref_848_19">Str</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Attributed_String</A>;
-+ <span class="symbol"><A NAME="ref_406_7" HREF="terminal_interface-curses__ads.htm#ref_849_19">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_408_16">Waddchnstr</A></span> (<span class="symbol"><A NAME="ref_408_28" HREF="terminal_interface-curses__adb.htm#ref_408_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_409_28" HREF="terminal_interface-curses__adb.htm#ref_408_16">Str</A></span> : chtype_array;
-+ <span class="symbol"><A NAME="ref_410_28" HREF="terminal_interface-curses__adb.htm#ref_408_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Waddchnstr, "waddchnstr");
-
-- <FONT COLOR=red><A NAME="ref_412_7">Txt</A></FONT> : chtype_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A>'Length);
-+ <span class="symbol"><A NAME="ref_413_7">Txt</A></span> : chtype_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_848_19">Str</A>'Length);
- <b>begin</b>
-- <b>for</b> <FONT COLOR=red><A NAME="ref_414_11">Length</A></FONT> <b>in</b> 1 .. size_t (<A HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A>'Length) <b>loop</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_412_7">Txt</A> (<A HREF="terminal_interface-curses__adb.htm#ref_414_11">Length</A> - 1) := <A HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A> (Natural (<A HREF="terminal_interface-curses__adb.htm#ref_414_11">Length</A>));
-+ <b>for</b> <span class="symbol"><A NAME="ref_415_11">Length</A></span> <b>in</b> 1 .. size_t (<A HREF="terminal_interface-curses__ads.htm#ref_848_19">Str</A>'Length) <b>loop</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_413_7">Txt</A> (<A HREF="terminal_interface-curses__adb.htm#ref_415_11">Length</A> - 1) := <A HREF="terminal_interface-curses__ads.htm#ref_848_19">Str</A> (Natural (<A HREF="terminal_interface-curses__adb.htm#ref_415_11">Length</A>));
- <b>end</b> <b>loop</b>;
-- <A HREF="terminal_interface-curses__adb.htm#ref_412_7">Txt</A> (<A HREF="terminal_interface-curses__ads.htm#ref_680_19">Str</A>'Length) := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_407_16">Waddchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_679_19">Win</A>,
-- <A HREF="terminal_interface-curses__adb.htm#ref_412_7">Txt</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_681_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_679_14">Add</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_425_14" HREF="terminal_interface-curses__ads.htm#ref_688_14">Add</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_426_7" HREF="terminal_interface-curses__ads.htm#ref_688_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_427_7" HREF="terminal_interface-curses__ads.htm#ref_689_19">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_428_7" HREF="terminal_interface-curses__ads.htm#ref_690_19">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_429_7" HREF="terminal_interface-curses__ads.htm#ref_691_19">Str</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Attributed_String</A>;
-- <FONT COLOR=red><A NAME="ref_430_7" HREF="terminal_interface-curses__ads.htm#ref_692_19">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_688_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_689_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_690_19">Column</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_679_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_688_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_691_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_692_19">Len</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_688_14">Add</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_437_14" HREF="terminal_interface-curses__ads.htm#ref_706_14">Border</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_438_7" HREF="terminal_interface-curses__ads.htm#ref_707_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_439_7" HREF="terminal_interface-curses__ads.htm#ref_708_7">Left_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_440_7" HREF="terminal_interface-curses__ads.htm#ref_709_7">Right_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_441_7" HREF="terminal_interface-curses__ads.htm#ref_710_7">Top_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_442_7" HREF="terminal_interface-curses__ads.htm#ref_711_7">Bottom_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_443_7" HREF="terminal_interface-curses__ads.htm#ref_712_7">Upper_Left_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_444_7" HREF="terminal_interface-curses__ads.htm#ref_713_7">Upper_Right_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_445_7" HREF="terminal_interface-curses__ads.htm#ref_714_7">Lower_Left_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_446_7" HREF="terminal_interface-curses__ads.htm#ref_715_7">Lower_Right_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_448_16">Wborder</A></FONT> (<FONT COLOR=red><A NAME="ref_448_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_449_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">LS</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-- <FONT COLOR=red><A NAME="ref_450_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">RS</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-- <FONT COLOR=red><A NAME="ref_451_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">TS</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-- <FONT COLOR=red><A NAME="ref_452_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">BS</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-- <FONT COLOR=red><A NAME="ref_453_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">ULC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-- <FONT COLOR=red><A NAME="ref_454_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">URC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-- <FONT COLOR=red><A NAME="ref_455_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">LLC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-- <FONT COLOR=red><A NAME="ref_456_25" HREF="terminal_interface-curses__adb.htm#ref_448_16">LRC</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_413_7">Txt</A> (<A HREF="terminal_interface-curses__ads.htm#ref_848_19">Str</A>'Length) := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_408_16">Waddchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_847_19">Win</A>,
-+ <A HREF="terminal_interface-curses__adb.htm#ref_413_7">Txt</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_849_19">Len</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_847_14">Add</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_427_14" HREF="terminal_interface-curses__ads.htm#ref_856_14">Add</A></span>
-+ (<span class="symbol"><A NAME="ref_428_7" HREF="terminal_interface-curses__ads.htm#ref_856_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_429_7" HREF="terminal_interface-curses__ads.htm#ref_857_19">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_430_7" HREF="terminal_interface-curses__ads.htm#ref_858_19">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_431_7" HREF="terminal_interface-curses__ads.htm#ref_859_19">Str</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Attributed_String</A>;
-+ <span class="symbol"><A NAME="ref_432_7" HREF="terminal_interface-curses__ads.htm#ref_860_19">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_856_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_857_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_858_19">Column</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_847_14">Add</A> (<A HREF="terminal_interface-curses__ads.htm#ref_856_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_859_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_860_19">Len</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_856_14">Add</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_439_14" HREF="terminal_interface-curses__ads.htm#ref_874_14">Border</A></span>
-+ (<span class="symbol"><A NAME="ref_440_7" HREF="terminal_interface-curses__ads.htm#ref_875_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_441_7" HREF="terminal_interface-curses__ads.htm#ref_876_7">Left_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_442_7" HREF="terminal_interface-curses__ads.htm#ref_877_7">Right_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_443_7" HREF="terminal_interface-curses__ads.htm#ref_878_7">Top_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_444_7" HREF="terminal_interface-curses__ads.htm#ref_879_7">Bottom_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_445_7" HREF="terminal_interface-curses__ads.htm#ref_880_7">Upper_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_446_7" HREF="terminal_interface-curses__ads.htm#ref_881_7">Upper_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_447_7" HREF="terminal_interface-curses__ads.htm#ref_882_7">Lower_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_448_7" HREF="terminal_interface-curses__ads.htm#ref_883_7">Lower_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_450_16">Wborder</A></span> (<span class="symbol"><A NAME="ref_450_25" HREF="terminal_interface-curses__adb.htm#ref_450_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_451_25" HREF="terminal_interface-curses__adb.htm#ref_450_16">LS</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_452_25" HREF="terminal_interface-curses__adb.htm#ref_450_16">RS</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_453_25" HREF="terminal_interface-curses__adb.htm#ref_450_16">TS</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_454_25" HREF="terminal_interface-curses__adb.htm#ref_450_16">BS</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_455_25" HREF="terminal_interface-curses__adb.htm#ref_450_16">ULC</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_456_25" HREF="terminal_interface-curses__adb.htm#ref_450_16">URC</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_457_25" HREF="terminal_interface-curses__adb.htm#ref_450_16">LLC</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_458_25" HREF="terminal_interface-curses__adb.htm#ref_450_16">LRC</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wborder, "wborder");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_448_16">Wborder</A> (<A HREF="terminal_interface-curses__ads.htm#ref_707_7">Win</A>,
-- AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_708_7">Left_Side_Symbol</A>),
-- AttrChar_To_Chtype (<A HREF="terminal_interface-curses__ads.htm#ref_709_7">Right_Side_Symbol</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_710_7">Top_Side_Symbol</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_711_7">Bottom_Side_Symbol</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_712_7">Upper_Left_Corner_Symbol</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_713_7">Upper_Right_Corner_Symbol</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_714_7">Lower_Left_Corner_Symbol</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_715_7">Lower_Right_Corner_Symbol</A>)
-- ) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A>
-- <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_706_14">Border</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_474_14" HREF="terminal_interface-curses__ads.htm#ref_722_14">Box</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_475_7" HREF="terminal_interface-curses__ads.htm#ref_723_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_476_7" HREF="terminal_interface-curses__ads.htm#ref_724_7">Vertical_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_477_7" HREF="terminal_interface-curses__ads.htm#ref_725_7">Horizontal_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_706_14">Border</A> (<A HREF="terminal_interface-curses__ads.htm#ref_723_7">Win</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_724_7">Vertical_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#ref_724_7">Vertical_Symbol</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_725_7">Horizontal_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#ref_725_7">Horizontal_Symbol</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_722_14">Box</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_485_14" HREF="terminal_interface-curses__ads.htm#ref_730_14">Horizontal_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_486_7" HREF="terminal_interface-curses__ads.htm#ref_731_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_487_7" HREF="terminal_interface-curses__ads.htm#ref_732_7">Line_Size</A></FONT> : Natural;
-- <FONT COLOR=red><A NAME="ref_488_7" HREF="terminal_interface-curses__ads.htm#ref_733_7">Line_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_490_16">Whline</A></FONT> (<FONT COLOR=red><A NAME="ref_490_24" HREF="terminal_interface-curses__adb.htm#ref_490_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_491_24" HREF="terminal_interface-curses__adb.htm#ref_490_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-- <FONT COLOR=red><A NAME="ref_492_24" HREF="terminal_interface-curses__adb.htm#ref_490_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_450_16">Wborder</A> (<A HREF="terminal_interface-curses__ads.htm#ref_875_7">Win</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_876_7">Left_Side_Symbol</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_877_7">Right_Side_Symbol</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_878_7">Top_Side_Symbol</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_879_7">Bottom_Side_Symbol</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_880_7">Upper_Left_Corner_Symbol</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_881_7">Upper_Right_Corner_Symbol</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_882_7">Lower_Left_Corner_Symbol</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_883_7">Lower_Right_Corner_Symbol</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_874_14">Border</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_475_14" HREF="terminal_interface-curses__ads.htm#ref_890_14">Box</A></span>
-+ (<span class="symbol"><A NAME="ref_476_7" HREF="terminal_interface-curses__ads.htm#ref_891_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_477_7" HREF="terminal_interface-curses__ads.htm#ref_892_7">Vertical_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_478_7" HREF="terminal_interface-curses__ads.htm#ref_893_7">Horizontal_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_874_14">Border</A> (<A HREF="terminal_interface-curses__ads.htm#ref_891_7">Win</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_892_7">Vertical_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#ref_892_7">Vertical_Symbol</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_893_7">Horizontal_Symbol</A>, <A HREF="terminal_interface-curses__ads.htm#ref_893_7">Horizontal_Symbol</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_890_14">Box</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_486_14" HREF="terminal_interface-curses__ads.htm#ref_898_14">Horizontal_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_487_7" HREF="terminal_interface-curses__ads.htm#ref_899_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_488_7" HREF="terminal_interface-curses__ads.htm#ref_900_7">Line_Size</A></span> : Natural;
-+ <span class="symbol"><A NAME="ref_489_7" HREF="terminal_interface-curses__ads.htm#ref_901_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_491_16">Whline</A></span> (<span class="symbol"><A NAME="ref_491_24" HREF="terminal_interface-curses__adb.htm#ref_491_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_492_24" HREF="terminal_interface-curses__adb.htm#ref_491_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_493_24" HREF="terminal_interface-curses__adb.htm#ref_491_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Whline, "whline");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_490_16">Whline</A> (<A HREF="terminal_interface-curses__ads.htm#ref_731_7">Win</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_733_7">Line_Symbol</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_732_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_730_14">Horizontal_Line</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_502_14" HREF="terminal_interface-curses__ads.htm#ref_739_14">Vertical_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_503_7" HREF="terminal_interface-curses__ads.htm#ref_740_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_504_7" HREF="terminal_interface-curses__ads.htm#ref_741_7">Line_Size</A></FONT> : Natural;
-- <FONT COLOR=red><A NAME="ref_505_7" HREF="terminal_interface-curses__ads.htm#ref_742_7">Line_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_507_16">Wvline</A></FONT> (<FONT COLOR=red><A NAME="ref_507_24" HREF="terminal_interface-curses__adb.htm#ref_507_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_508_24" HREF="terminal_interface-curses__adb.htm#ref_507_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-- <FONT COLOR=red><A NAME="ref_509_24" HREF="terminal_interface-curses__adb.htm#ref_507_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_491_16">Whline</A> (<A HREF="terminal_interface-curses__ads.htm#ref_899_7">Win</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_901_7">Line_Symbol</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_900_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_898_14">Horizontal_Line</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_504_14" HREF="terminal_interface-curses__ads.htm#ref_907_14">Vertical_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_505_7" HREF="terminal_interface-curses__ads.htm#ref_908_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_506_7" HREF="terminal_interface-curses__ads.htm#ref_909_7">Line_Size</A></span> : Natural;
-+ <span class="symbol"><A NAME="ref_507_7" HREF="terminal_interface-curses__ads.htm#ref_910_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_509_16">Wvline</A></span> (<span class="symbol"><A NAME="ref_509_24" HREF="terminal_interface-curses__adb.htm#ref_509_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_510_24" HREF="terminal_interface-curses__adb.htm#ref_509_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_511_24" HREF="terminal_interface-curses__adb.htm#ref_509_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wvline, "wvline");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_507_16">Wvline</A> (<A HREF="terminal_interface-curses__ads.htm#ref_740_7">Win</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_742_7">Line_Symbol</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_741_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_739_14">Vertical_Line</A>;
--
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_520_13" HREF="terminal_interface-curses__ads.htm#ref_753_13">Get_Keystroke</A></FONT> (<FONT COLOR=red><A NAME="ref_520_28" HREF="terminal_interface-curses__ads.htm#ref_753_28">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_509_16">Wvline</A> (<A HREF="terminal_interface-curses__ads.htm#ref_908_7">Win</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_910_7">Line_Symbol</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_909_7">Line_Size</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_907_14">Vertical_Line</A>;
-+
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_523_13" HREF="terminal_interface-curses__ads.htm#ref_921_13">Get_Keystroke</A></span> (<span class="symbol"><A NAME="ref_523_28" HREF="terminal_interface-curses__ads.htm#ref_921_28">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_523_16">Wgetch</A></FONT> (<FONT COLOR=red><A NAME="ref_523_24" HREF="terminal_interface-curses__adb.htm#ref_523_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_526_16">Wgetch</A></span> (<span class="symbol"><A NAME="ref_526_24" HREF="terminal_interface-curses__adb.htm#ref_526_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wgetch, "wgetch");
-
-- <FONT COLOR=red><A NAME="ref_526_7">C</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_523_16">Wgetch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_753_28">Win</A>);
-+ <span class="symbol"><A NAME="ref_529_7">C</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_526_16">Wgetch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_921_28">Win</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_526_7">C</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_529_7">C</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_88_4">Key_None</A>;
- <b>else</b>
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> (<A HREF="terminal_interface-curses__adb.htm#ref_526_7">C</A>);
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A> (<A HREF="terminal_interface-curses__adb.htm#ref_529_7">C</A>);
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_753_13">Get_Keystroke</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_921_13">Get_Keystroke</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_535_14" HREF="terminal_interface-curses__ads.htm#ref_764_14">Undo_Keystroke</A></FONT> (<FONT COLOR=red><A NAME="ref_535_30" HREF="terminal_interface-curses__ads.htm#ref_764_30">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_538_14" HREF="terminal_interface-curses__ads.htm#ref_932_14">Undo_Keystroke</A></span> (<span class="symbol"><A NAME="ref_538_30" HREF="terminal_interface-curses__ads.htm#ref_932_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_537_16">Ungetch</A></FONT> (<FONT COLOR=red><A NAME="ref_537_25" HREF="terminal_interface-curses__adb.htm#ref_537_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_540_16">Ungetch</A></span> (<span class="symbol"><A NAME="ref_540_25" HREF="terminal_interface-curses__adb.htm#ref_540_16">Ch</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Ungetch, "ungetch");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_537_16">Ungetch</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_764_30">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_540_16">Ungetch</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_932_30">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_764_14">Undo_Keystroke</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_932_14">Undo_Keystroke</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_545_13" HREF="terminal_interface-curses__ads.htm#ref_769_13">Has_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_545_22" HREF="terminal_interface-curses__ads.htm#ref_769_22">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_548_13" HREF="terminal_interface-curses__ads.htm#ref_937_13">Has_Key</A></span> (<span class="symbol"><A NAME="ref_548_22" HREF="terminal_interface-curses__ads.htm#ref_937_22">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_547_16">Haskey</A></FONT> (<FONT COLOR=red><A NAME="ref_547_24" HREF="terminal_interface-curses__adb.htm#ref_547_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_550_16">Haskey</A></span> (<span class="symbol"><A NAME="ref_550_24" HREF="terminal_interface-curses__adb.htm#ref_550_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Haskey, "has_key");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_547_16">Haskey</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_769_22">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_550_16">Haskey</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_937_22">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_68_4">Curses_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_769_13">Has_Key</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_937_13">Has_Key</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_557_13" HREF="terminal_interface-curses__ads.htm#ref_776_13">Is_Function_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_557_30" HREF="terminal_interface-curses__ads.htm#ref_776_30">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_560_13" HREF="terminal_interface-curses__ads.htm#ref_944_13">Is_Function_Key</A></span> (<span class="symbol"><A NAME="ref_560_30" HREF="terminal_interface-curses__ads.htm#ref_944_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>) <b>return</b> Boolean
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_559_7">L</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>) +
-- Natural (<A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A>'Last));
-+ <span class="symbol"><A NAME="ref_562_7">L</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> := <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#ref_110_4">Key_F0</A>) +
-+ Natural (<A HREF="terminal_interface-curses__ads.htm#ref_948_12">Function_Key_Number</A>'Last));
- <b>begin</b>
-- <b>if</b> (<A HREF="terminal_interface-curses__ads.htm#ref_776_30">Key</A> &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>) <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses__ads.htm#ref_776_30">Key</A> &lt;= <A HREF="terminal_interface-curses__adb.htm#ref_559_7">L</A>) <b>then</b>
-+ <b>if</b> (<A HREF="terminal_interface-curses__ads.htm#ref_944_30">Key</A> &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_110_4">Key_F0</A>) <b>and</b> <b>then</b> (<A HREF="terminal_interface-curses__ads.htm#ref_944_30">Key</A> &lt;= <A HREF="terminal_interface-curses__adb.htm#ref_562_7">L</A>) <b>then</b>
- <b>return</b> True;
- <b>else</b>
- <b>return</b> False;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_776_13">Is_Function_Key</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_944_13">Is_Function_Key</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_569_13" HREF="terminal_interface-curses__ads.htm#ref_783_13">Function_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_569_27" HREF="terminal_interface-curses__ads.htm#ref_783_27">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_572_13" HREF="terminal_interface-curses__ads.htm#ref_951_13">Function_Key</A></span> (<span class="symbol"><A NAME="ref_572_27" HREF="terminal_interface-curses__ads.htm#ref_951_27">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_948_12">Function_Key_Number</A>
- <b>is</b>
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_776_13">Is_Function_Key</A> (<A HREF="terminal_interface-curses__ads.htm#ref_783_27">Key</A>) <b>then</b>
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A> (<A HREF="terminal_interface-curses__ads.htm#ref_783_27">Key</A> - <A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_944_13">Is_Function_Key</A> (<A HREF="terminal_interface-curses__ads.htm#ref_951_27">Key</A>) <b>then</b>
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_948_12">Function_Key_Number</A> (<A HREF="terminal_interface-curses__ads.htm#ref_951_27">Key</A> - <A HREF="terminal_interface-curses__ads.htm#ref_110_4">Key_F0</A>);
- <b>else</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_783_13">Function_Key</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_951_13">Function_Key</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_580_13" HREF="terminal_interface-curses__ads.htm#ref_788_13">Function_Key_Code</A></FONT> (<FONT COLOR=red><A NAME="ref_580_32" HREF="terminal_interface-curses__ads.htm#ref_788_32">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_583_13" HREF="terminal_interface-curses__ads.htm#ref_956_13">Function_Key_Code</A></span> (<span class="symbol"><A NAME="ref_583_32" HREF="terminal_interface-curses__ads.htm#ref_956_32">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_948_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>
- <b>is</b>
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#ref_98_4">Key_F0</A>) + Natural (<A HREF="terminal_interface-curses__ads.htm#ref_788_32">Key</A>));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_788_13">Function_Key_Code</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_586_14" HREF="terminal_interface-curses__ads.htm#ref_802_14">Standout</A></FONT> (<FONT COLOR=red><A NAME="ref_586_24" HREF="terminal_interface-curses__ads.htm#ref_802_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_587_24" HREF="terminal_interface-curses__ads.htm#ref_803_24">On</A></FONT> : Boolean := True)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A> (Natural (<A HREF="terminal_interface-curses__ads.htm#ref_110_4">Key_F0</A>) + Natural (<A HREF="terminal_interface-curses__ads.htm#ref_956_32">Key</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_956_13">Function_Key_Code</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_589_14" HREF="terminal_interface-curses__ads.htm#ref_970_14">Standout</A></span> (<span class="symbol"><A NAME="ref_589_24" HREF="terminal_interface-curses__ads.htm#ref_970_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_590_24" HREF="terminal_interface-curses__ads.htm#ref_971_24">On</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_589_16">wstandout</A></FONT> (<FONT COLOR=red><A NAME="ref_589_27" HREF="terminal_interface-curses__adb.htm#ref_589_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_592_16">wstandout</A></span> (<span class="symbol"><A NAME="ref_592_27" HREF="terminal_interface-curses__adb.htm#ref_592_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, wstandout, "wstandout");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_591_16">wstandend</A></FONT> (<FONT COLOR=red><A NAME="ref_591_27" HREF="terminal_interface-curses__adb.htm#ref_591_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_594_16">wstandend</A></span> (<span class="symbol"><A NAME="ref_594_27" HREF="terminal_interface-curses__adb.htm#ref_594_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, wstandend, "wstandend");
-
-- <FONT COLOR=red><A NAME="ref_594_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_597_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_803_24">On</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_594_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_589_16">wstandout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_802_24">Win</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_971_24">On</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_597_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_592_16">wstandout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_970_24">Win</A>);
- <b>else</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_594_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_591_16">wstandend</A> (<A HREF="terminal_interface-curses__ads.htm#ref_802_24">Win</A>);
-+ <A HREF="terminal_interface-curses__adb.htm#ref_597_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_594_16">wstandend</A> (<A HREF="terminal_interface-curses__ads.htm#ref_970_24">Win</A>);
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_594_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_597_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_802_14">Standout</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_970_14">Standout</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_606_14" HREF="terminal_interface-curses__ads.htm#ref_808_14">Switch_Character_Attribute</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_607_7" HREF="terminal_interface-curses__ads.htm#ref_809_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_608_7" HREF="terminal_interface-curses__ads.htm#ref_810_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_609_7" HREF="terminal_interface-curses__ads.htm#ref_811_7">On</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_609_14" HREF="terminal_interface-curses__ads.htm#ref_976_14">Switch_Character_Attribute</A></span>
-+ (<span class="symbol"><A NAME="ref_610_7" HREF="terminal_interface-curses__ads.htm#ref_977_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_611_7" HREF="terminal_interface-curses__ads.htm#ref_978_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_612_7" HREF="terminal_interface-curses__ads.htm#ref_979_7">On</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_611_16">Wattron</A></FONT> (<FONT COLOR=red><A NAME="ref_611_25" HREF="terminal_interface-curses__adb.htm#ref_611_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_612_25" HREF="terminal_interface-curses__adb.htm#ref_611_16">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_614_16">Wattron</A></span> (<span class="symbol"><A NAME="ref_614_25" HREF="terminal_interface-curses__adb.htm#ref_614_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_615_25" HREF="terminal_interface-curses__adb.htm#ref_614_16">C_Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wattron, "wattr_on");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_614_16">Wattroff</A></FONT> (<FONT COLOR=red><A NAME="ref_614_26" HREF="terminal_interface-curses__adb.htm#ref_614_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_615_26" HREF="terminal_interface-curses__adb.htm#ref_614_16">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_617_16">Wattroff</A></span> (<span class="symbol"><A NAME="ref_617_26" HREF="terminal_interface-curses__adb.htm#ref_617_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_618_26" HREF="terminal_interface-curses__adb.htm#ref_617_16">C_Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wattroff, "wattr_off");
-- <FONT COLOR=green><EM>-- In Ada we use the On Boolean to control whether or not we want to</EM></FONT>
-- <FONT COLOR=green><EM>-- switch on or off the attributes in the set.</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_619_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_620_7">AC</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_810_7">Attr</A>);
-- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_811_7">On</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_619_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_611_16">Wattron</A> (<A HREF="terminal_interface-curses__ads.htm#ref_809_7">Win</A>, AttrChar_To_AttrType (<A HREF="terminal_interface-curses__adb.htm#ref_620_7">AC</A>));
-- <b>else</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_619_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_614_16">Wattroff</A> (<A HREF="terminal_interface-curses__ads.htm#ref_809_7">Win</A>, AttrChar_To_AttrType (<A HREF="terminal_interface-curses__adb.htm#ref_620_7">AC</A>));
-- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_619_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_808_14">Switch_Character_Attribute</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_634_14" HREF="terminal_interface-curses__ads.htm#ref_819_14">Set_Character_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_635_7" HREF="terminal_interface-curses__ads.htm#ref_820_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_636_7" HREF="terminal_interface-curses__ads.htm#ref_821_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_637_7" HREF="terminal_interface-curses__ads.htm#ref_822_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_639_16">Wattrset</A></FONT> (<FONT COLOR=red><A NAME="ref_639_26" HREF="terminal_interface-curses__adb.htm#ref_639_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_640_26" HREF="terminal_interface-curses__adb.htm#ref_639_16">C_Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>pragma</b> Import (C, Wattrset, "wattrset"); <FONT COLOR=green><EM>-- ??? wattr_set</EM></FONT>
-- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_639_16">Wattrset</A> (<A HREF="terminal_interface-curses__ads.htm#ref_820_7">Win</A>,
-- AttrChar_To_AttrType (<A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'
-- (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_822_7">Color</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_821_7">Attr</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_819_14">Set_Character_Attributes</A>;
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_652_13" HREF="terminal_interface-curses__ads.htm#ref_828_13">Get_Character_Attribute</A></FONT> (<FONT COLOR=red><A NAME="ref_652_38" HREF="terminal_interface-curses__ads.htm#ref_829_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_655_16">Wattrget</A></FONT> (<FONT COLOR=red><A NAME="ref_655_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_656_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Atr</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>;
-- <FONT COLOR=red><A NAME="ref_657_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Col</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_658_26" HREF="terminal_interface-curses__adb.htm#ref_655_16">Opt</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="comment"><EM>-- In Ada we use the On Boolean to control whether or not we want to</EM></span>
-+ <span class="comment"><EM>-- switch on or off the attributes in the set.</EM></span>
-+ <span class="symbol"><A NAME="ref_622_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_623_7">AC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_978_7">Attr</A>);
-+ <b>begin</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_979_7">On</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_622_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_614_16">Wattron</A> (<A HREF="terminal_interface-curses__ads.htm#ref_977_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_623_7">AC</A>);
-+ <b>else</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_622_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_617_16">Wattroff</A> (<A HREF="terminal_interface-curses__ads.htm#ref_977_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_623_7">AC</A>);
-+ <b>end</b> <b>if</b>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_622_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_976_14">Switch_Character_Attribute</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_637_14" HREF="terminal_interface-curses__ads.htm#ref_987_14">Set_Character_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_638_7" HREF="terminal_interface-curses__ads.htm#ref_988_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_639_7" HREF="terminal_interface-curses__ads.htm#ref_989_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_640_7" HREF="terminal_interface-curses__ads.htm#ref_990_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_642_16">Wattrset</A></span> (<span class="symbol"><A NAME="ref_642_26" HREF="terminal_interface-curses__adb.htm#ref_642_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_643_26" HREF="terminal_interface-curses__adb.htm#ref_642_16">C_Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>pragma</b> Import (C, Wattrset, "wattrset"); <span class="comment"><EM>-- ??? wattr_set</EM></span>
-+ <b>begin</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_642_16">Wattrset</A> (<A HREF="terminal_interface-curses__ads.htm#ref_988_7">Win</A>, (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_990_7">Color</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_989_7">Attr</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_987_14">Set_Character_Attributes</A>;
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_654_13" HREF="terminal_interface-curses__ads.htm#ref_996_13">Get_Character_Attribute</A></span> (<span class="symbol"><A NAME="ref_654_38" HREF="terminal_interface-curses__ads.htm#ref_997_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_657_16">Wattrget</A></span> (<span class="symbol"><A NAME="ref_657_26" HREF="terminal_interface-curses__adb.htm#ref_657_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_658_26" HREF="terminal_interface-curses__adb.htm#ref_657_16">Atr</A></span> : <b>access</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_659_26" HREF="terminal_interface-curses__adb.htm#ref_657_16">Col</A></span> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_660_26" HREF="terminal_interface-curses__adb.htm#ref_657_16">Opt</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wattrget, "wattr_get");
-
-- <FONT COLOR=red><A NAME="ref_661_7">Attr</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>;
-- <FONT COLOR=red><A NAME="ref_662_7">Col</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_663_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_655_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#ref_829_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_661_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_662_7">Col</A>'<b>Access</b>,
-+ <span class="symbol"><A NAME="ref_663_7">Attr</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_664_7">Col</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_665_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_657_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#ref_997_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_663_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_664_7">Col</A>'<b>Access</b>,
- System.Null_Address);
-- <FONT COLOR=red><A NAME="ref_665_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_663_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_4">Curses_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_665_7">Ch</A> := AttrType_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_661_7">Attr</A>);
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_665_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_665_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_4">Curses_Ok</A> <b>then</b>
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_663_7">Attr</A>.<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
- <b>else</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_828_13">Get_Character_Attribute</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_996_13">Get_Character_Attribute</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_675_13" HREF="terminal_interface-curses__ads.htm#ref_834_13">Get_Character_Attribute</A></FONT> (<FONT COLOR=red><A NAME="ref_675_38" HREF="terminal_interface-curses__ads.htm#ref_835_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_675_13" HREF="terminal_interface-curses__ads.htm#ref_1002_13">Get_Character_Attribute</A></span> (<span class="symbol"><A NAME="ref_675_38" HREF="terminal_interface-curses__ads.htm#ref_1003_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_678_16">Wattrget</A></FONT> (<FONT COLOR=red><A NAME="ref_678_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_679_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Atr</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>;
-- <FONT COLOR=red><A NAME="ref_680_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Col</A></FONT> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_681_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Opt</A></FONT> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_678_16">Wattrget</A></span> (<span class="symbol"><A NAME="ref_678_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_679_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Atr</A></span> : <b>access</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_680_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Col</A></span> : <b>access</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_681_26" HREF="terminal_interface-curses__adb.htm#ref_678_16">Opt</A></span> : System.Address) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wattrget, "wattr_get");
-
-- <FONT COLOR=red><A NAME="ref_684_7">Attr</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>;
-- <FONT COLOR=red><A NAME="ref_685_7">Col</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_686_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_678_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#ref_835_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_684_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_685_7">Col</A>'<b>Access</b>,
-+ <span class="symbol"><A NAME="ref_684_7">Attr</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_685_7">Col</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_686_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_678_16">Wattrget</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1003_7">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_684_7">Attr</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_685_7">Col</A>'<b>Access</b>,
- System.Null_Address);
-- <FONT COLOR=red><A NAME="ref_688_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_686_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_71_4">Curses_Ok</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_688_7">Ch</A> := AttrType_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_684_7">Attr</A>);
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_688_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_686_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_4">Curses_Ok</A> <b>then</b>
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_684_7">Attr</A>.<A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A>;
- <b>else</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_834_13">Get_Character_Attribute</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1002_13">Get_Character_Attribute</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_698_14" HREF="terminal_interface-curses__ads.htm#ref_840_14">Set_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_698_25" HREF="terminal_interface-curses__ads.htm#ref_840_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_699_25" HREF="terminal_interface-curses__ads.htm#ref_841_25">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_696_14" HREF="terminal_interface-curses__ads.htm#ref_1008_14">Set_Color</A></span> (<span class="symbol"><A NAME="ref_696_25" HREF="terminal_interface-curses__ads.htm#ref_1008_25">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_697_25" HREF="terminal_interface-curses__ads.htm#ref_1009_25">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_701_16">Wset_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_701_28" HREF="terminal_interface-curses__adb.htm#ref_701_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_702_28" HREF="terminal_interface-curses__adb.htm#ref_701_16">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_703_28" HREF="terminal_interface-curses__adb.htm#ref_701_16">Opts</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_62_12">C_Void_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_699_16">Wset_Color</A></span> (<span class="symbol"><A NAME="ref_699_28" HREF="terminal_interface-curses__adb.htm#ref_699_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_700_28" HREF="terminal_interface-curses__adb.htm#ref_699_16">Color</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_701_28" HREF="terminal_interface-curses__adb.htm#ref_699_16">Opts</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Void_Ptr</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wset_Color, "wcolor_set");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_701_16">Wset_Color</A> (<A HREF="terminal_interface-curses__ads.htm#ref_840_25">Win</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_841_25">Pair</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_62_12">C_Void_Ptr</A> (System.Null_Address)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_840_14">Set_Color</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_713_14" HREF="terminal_interface-curses__ads.htm#ref_847_14">Change_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_714_7" HREF="terminal_interface-curses__ads.htm#ref_848_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_715_7" HREF="terminal_interface-curses__ads.htm#ref_849_7">Count</A></FONT> : Integer := -1;
-- <FONT COLOR=red><A NAME="ref_716_7" HREF="terminal_interface-curses__ads.htm#ref_850_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_717_7" HREF="terminal_interface-curses__ads.htm#ref_851_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_719_16">Wchgat</A></FONT> (<FONT COLOR=red><A NAME="ref_719_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_720_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_721_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Attr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_64_12">C_AttrType</A>;
-- <FONT COLOR=red><A NAME="ref_722_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_723_24" HREF="terminal_interface-curses__adb.htm#ref_719_16">Opts</A></FONT> : System.Address := System.Null_Address)
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>pragma</b> Import (C, Wchgat, "wchgat");
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_699_16">Wset_Color</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1008_25">Win</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1009_25">Pair</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_57_12">C_Void_Ptr</A> (System.Null_Address)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1008_14">Set_Color</A>;
-
-- <FONT COLOR=red><A NAME="ref_727_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> :=
-- (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First, <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_850_7">Attr</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_712_14" HREF="terminal_interface-curses__ads.htm#ref_1015_14">Change_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_713_7" HREF="terminal_interface-curses__ads.htm#ref_1016_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_714_7" HREF="terminal_interface-curses__ads.htm#ref_1017_7">Count</A></span> : Integer := -1;
-+ <span class="symbol"><A NAME="ref_715_7" HREF="terminal_interface-curses__ads.htm#ref_1018_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_716_7" HREF="terminal_interface-curses__ads.htm#ref_1019_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_718_16">Wchgat</A></span> (<span class="symbol"><A NAME="ref_718_24" HREF="terminal_interface-curses__adb.htm#ref_718_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_719_24" HREF="terminal_interface-curses__adb.htm#ref_718_16">Cnt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_720_24" HREF="terminal_interface-curses__adb.htm#ref_718_16">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_721_24" HREF="terminal_interface-curses__adb.htm#ref_718_16">Color</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_722_24" HREF="terminal_interface-curses__adb.htm#ref_718_16">Opts</A></span> : System.Address := System.Null_Address)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>pragma</b> Import (C, Wchgat, "wchgat");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_719_16">Wchgat</A> (<A HREF="terminal_interface-curses__ads.htm#ref_848_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_849_7">Count</A>), AttrChar_To_AttrType (<A HREF="terminal_interface-curses__adb.htm#ref_727_7">Ch</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_851_7">Color</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_847_14">Change_Attributes</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_736_14" HREF="terminal_interface-curses__ads.htm#ref_856_14">Change_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_737_7" HREF="terminal_interface-curses__ads.htm#ref_857_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_738_7" HREF="terminal_interface-curses__ads.htm#ref_858_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'First;
-- <FONT COLOR=red><A NAME="ref_739_7" HREF="terminal_interface-curses__ads.htm#ref_859_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'First;
-- <FONT COLOR=red><A NAME="ref_740_7" HREF="terminal_interface-curses__ads.htm#ref_860_7">Count</A></FONT> : Integer := -1;
-- <FONT COLOR=red><A NAME="ref_741_7" HREF="terminal_interface-curses__ads.htm#ref_861_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_742_7" HREF="terminal_interface-curses__ads.htm#ref_862_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_857_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_858_7">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_859_7">Column</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_847_14">Change_Attributes</A> (<A HREF="terminal_interface-curses__ads.htm#ref_857_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_860_7">Count</A>, <A HREF="terminal_interface-curses__ads.htm#ref_861_7">Attr</A>, <A HREF="terminal_interface-curses__ads.htm#ref_862_7">Color</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_856_14">Change_Attributes</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_749_14" HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A></FONT>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_718_16">Wchgat</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1016_7">Win</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1017_7">Count</A>),
-+ (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1018_7">Attr</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1019_7">Color</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1015_14">Change_Attributes</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_737_14" HREF="terminal_interface-curses__ads.htm#ref_1024_14">Change_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_738_7" HREF="terminal_interface-curses__ads.htm#ref_1025_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_739_7" HREF="terminal_interface-curses__ads.htm#ref_1026_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>'First;
-+ <span class="symbol"><A NAME="ref_740_7" HREF="terminal_interface-curses__ads.htm#ref_1027_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>'First;
-+ <span class="symbol"><A NAME="ref_741_7" HREF="terminal_interface-curses__ads.htm#ref_1028_7">Count</A></span> : Integer := -1;
-+ <span class="symbol"><A NAME="ref_742_7" HREF="terminal_interface-curses__ads.htm#ref_1029_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_743_7" HREF="terminal_interface-curses__ads.htm#ref_1030_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1025_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1026_7">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1027_7">Column</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1015_14">Change_Attributes</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1025_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1028_7">Count</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1029_7">Attr</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1030_7">Color</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1024_14">Change_Attributes</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_750_14" HREF="terminal_interface-curses__ads.htm#ref_1040_14">Beep</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_751_16">Beeper</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_752_16">Beeper</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Beeper, "beep");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_751_16">Beeper</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_752_16">Beeper</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1040_14">Beep</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_759_14" HREF="terminal_interface-curses__ads.htm#ref_877_14">Flash_Screen</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_760_14" HREF="terminal_interface-curses__ads.htm#ref_1045_14">Flash_Screen</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_761_16">Flash</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_762_16">Flash</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Flash, "flash");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_761_16">Flash</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_762_16">Flash</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_877_14">Flash_Screen</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_769_14" HREF="terminal_interface-curses__ads.htm#ref_888_14">Set_Cbreak_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_769_31" HREF="terminal_interface-curses__ads.htm#ref_888_31">SwitchOn</A></FONT> : Boolean := True)
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1045_14">Flash_Screen</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_770_14" HREF="terminal_interface-curses__ads.htm#ref_1056_14">Set_Cbreak_Mode</A></span> (<span class="symbol"><A NAME="ref_770_31" HREF="terminal_interface-curses__ads.htm#ref_1056_31">SwitchOn</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_771_16">Cbreak</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_772_16">Cbreak</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Cbreak, "cbreak");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_773_16">NoCbreak</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_774_16">NoCbreak</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, NoCbreak, "nocbreak");
-
-- <FONT COLOR=red><A NAME="ref_776_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_777_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_888_31">SwitchOn</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_776_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_771_16">Cbreak</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1056_31">SwitchOn</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_777_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_772_16">Cbreak</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_776_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_773_16">NoCbreak</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_777_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_774_16">NoCbreak</A>;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_776_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_777_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_888_14">Set_Cbreak_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1056_14">Set_Cbreak_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_788_14" HREF="terminal_interface-curses__ads.htm#ref_894_14">Set_Raw_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_788_28" HREF="terminal_interface-curses__ads.htm#ref_894_28">SwitchOn</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_789_14" HREF="terminal_interface-curses__ads.htm#ref_1062_14">Set_Raw_Mode</A></span> (<span class="symbol"><A NAME="ref_789_28" HREF="terminal_interface-curses__ads.htm#ref_1062_28">SwitchOn</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_790_16">Raw</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_791_16">Raw</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Raw, "raw");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_792_16">NoRaw</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_793_16">NoRaw</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, NoRaw, "noraw");
-
-- <FONT COLOR=red><A NAME="ref_795_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_796_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_894_28">SwitchOn</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_795_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_790_16">Raw</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1062_28">SwitchOn</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_796_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_791_16">Raw</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_795_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_792_16">NoRaw</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_796_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_793_16">NoRaw</A>;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_795_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_796_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_894_14">Set_Raw_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1062_14">Set_Raw_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_807_14" HREF="terminal_interface-curses__ads.htm#ref_900_14">Set_Echo_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_807_29" HREF="terminal_interface-curses__ads.htm#ref_900_29">SwitchOn</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_808_14" HREF="terminal_interface-curses__ads.htm#ref_1068_14">Set_Echo_Mode</A></span> (<span class="symbol"><A NAME="ref_808_29" HREF="terminal_interface-curses__ads.htm#ref_1068_29">SwitchOn</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_809_16">Echo</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_810_16">Echo</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Echo, "echo");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_811_16">NoEcho</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_812_16">NoEcho</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, NoEcho, "noecho");
-
-- <FONT COLOR=red><A NAME="ref_814_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_815_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_900_29">SwitchOn</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_814_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_809_16">Echo</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1068_29">SwitchOn</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_815_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_810_16">Echo</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_814_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_811_16">NoEcho</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_815_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_812_16">NoEcho</A>;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_814_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_815_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_900_14">Set_Echo_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1068_14">Set_Echo_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_826_14" HREF="terminal_interface-curses__ads.htm#ref_906_14">Set_Meta_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_826_29" HREF="terminal_interface-curses__ads.htm#ref_906_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_827_29" HREF="terminal_interface-curses__ads.htm#ref_907_29">SwitchOn</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_827_14" HREF="terminal_interface-curses__ads.htm#ref_1074_14">Set_Meta_Mode</A></span> (<span class="symbol"><A NAME="ref_827_29" HREF="terminal_interface-curses__ads.htm#ref_1074_29">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_828_29" HREF="terminal_interface-curses__ads.htm#ref_1075_29">SwitchOn</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_829_16">Meta</A></FONT> (<FONT COLOR=red><A NAME="ref_829_22" HREF="terminal_interface-curses__adb.htm#ref_829_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_829_34" HREF="terminal_interface-curses__adb.htm#ref_829_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_830_16">Meta</A></span> (<span class="symbol"><A NAME="ref_830_22" HREF="terminal_interface-curses__adb.htm#ref_830_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_830_34" HREF="terminal_interface-curses__adb.htm#ref_830_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Meta, "meta");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_829_16">Meta</A> (<A HREF="terminal_interface-curses__ads.htm#ref_906_29">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_907_29">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_830_16">Meta</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1074_29">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1075_29">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_906_14">Set_Meta_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1074_14">Set_Meta_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_837_14" HREF="terminal_interface-curses__ads.htm#ref_912_14">Set_KeyPad_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_837_31" HREF="terminal_interface-curses__ads.htm#ref_912_31">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_838_31" HREF="terminal_interface-curses__ads.htm#ref_913_31">SwitchOn</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_838_14" HREF="terminal_interface-curses__ads.htm#ref_1080_14">Set_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_838_31" HREF="terminal_interface-curses__ads.htm#ref_1080_31">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_839_31" HREF="terminal_interface-curses__ads.htm#ref_1081_31">SwitchOn</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_840_16">Keypad</A></FONT> (<FONT COLOR=red><A NAME="ref_840_24" HREF="terminal_interface-curses__adb.htm#ref_840_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_840_36" HREF="terminal_interface-curses__adb.htm#ref_840_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_841_16">Keypad</A></span> (<span class="symbol"><A NAME="ref_841_24" HREF="terminal_interface-curses__adb.htm#ref_841_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_841_36" HREF="terminal_interface-curses__adb.htm#ref_841_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Keypad, "keypad");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_840_16">Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_912_31">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_913_31">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_841_16">Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1080_31">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1081_31">SwitchOn</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_912_14">Set_KeyPad_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1080_14">Set_KeyPad_Mode</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_848_13" HREF="terminal_interface-curses__ads.htm#ref_917_13">Get_KeyPad_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_848_30" HREF="terminal_interface-curses__ads.htm#ref_917_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>function</b> <span class="symbol"><A NAME="ref_849_13" HREF="terminal_interface-curses__ads.htm#ref_1085_13">Get_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_849_30" HREF="terminal_interface-curses__ads.htm#ref_1085_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_851_16">Is_Keypad</A></FONT> (<FONT COLOR=red><A NAME="ref_851_27" HREF="terminal_interface-curses__adb.htm#ref_851_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_852_16">Is_Keypad</A></span> (<span class="symbol"><A NAME="ref_852_27" HREF="terminal_interface-curses__adb.htm#ref_852_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, Is_Keypad, "is_keypad");
- <b>begin</b>
-- <b>return</b> (<A HREF="terminal_interface-curses__adb.htm#ref_851_16">Is_Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_917_30">Win</A>) /= <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_917_13">Get_KeyPad_Mode</A>;
-+ <b>return</b> (<A HREF="terminal_interface-curses__adb.htm#ref_852_16">Is_Keypad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1085_30">Win</A>) /= <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1085_13">Get_KeyPad_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_857_14" HREF="terminal_interface-curses__ads.htm#ref_925_14">Half_Delay</A></FONT> (<FONT COLOR=red><A NAME="ref_857_26" HREF="terminal_interface-curses__ads.htm#ref_925_26">Amount</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_922_9">Half_Delay_Amount</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_858_14" HREF="terminal_interface-curses__ads.htm#ref_1093_14">Half_Delay</A></span> (<span class="symbol"><A NAME="ref_858_26" HREF="terminal_interface-curses__ads.htm#ref_1093_26">Amount</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1090_9">Half_Delay_Amount</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_859_16">Halfdelay</A></FONT> (<FONT COLOR=red><A NAME="ref_859_27" HREF="terminal_interface-curses__adb.htm#ref_859_16">Amount</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_860_16">Halfdelay</A></span> (<span class="symbol"><A NAME="ref_860_27" HREF="terminal_interface-curses__adb.htm#ref_860_16">Amount</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Halfdelay, "halfdelay");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_859_16">Halfdelay</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_925_26">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_860_16">Halfdelay</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1093_26">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_925_14">Half_Delay</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1093_14">Half_Delay</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_867_14" HREF="terminal_interface-curses__ads.htm#ref_930_14">Set_Flush_On_Interrupt_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_868_7" HREF="terminal_interface-curses__ads.htm#ref_931_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_869_7" HREF="terminal_interface-curses__ads.htm#ref_932_7">Mode</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_868_14" HREF="terminal_interface-curses__ads.htm#ref_1098_14">Set_Flush_On_Interrupt_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_869_7" HREF="terminal_interface-curses__ads.htm#ref_1099_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_870_7" HREF="terminal_interface-curses__ads.htm#ref_1100_7">Mode</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_871_16">Intrflush</A></FONT> (<FONT COLOR=red><A NAME="ref_871_27" HREF="terminal_interface-curses__adb.htm#ref_871_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_871_41" HREF="terminal_interface-curses__adb.htm#ref_871_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_872_16">Intrflush</A></span> (<span class="symbol"><A NAME="ref_872_27" HREF="terminal_interface-curses__adb.htm#ref_872_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_872_41" HREF="terminal_interface-curses__adb.htm#ref_872_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Intrflush, "intrflush");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_871_16">Intrflush</A> (<A HREF="terminal_interface-curses__ads.htm#ref_931_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_932_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_872_16">Intrflush</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1099_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1100_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_930_14">Set_Flush_On_Interrupt_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1098_14">Set_Flush_On_Interrupt_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_879_14" HREF="terminal_interface-curses__ads.htm#ref_937_14">Set_Queue_Interrupt_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_880_7" HREF="terminal_interface-curses__ads.htm#ref_938_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_881_7" HREF="terminal_interface-curses__ads.htm#ref_939_7">Flush</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_880_14" HREF="terminal_interface-curses__ads.htm#ref_1105_14">Set_Queue_Interrupt_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_881_7" HREF="terminal_interface-curses__ads.htm#ref_1106_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_882_7" HREF="terminal_interface-curses__ads.htm#ref_1107_7">Flush</A></span> : Boolean := True)
- <b>is</b>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_883_17">Qiflush</A></FONT>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_884_17">Qiflush</A></span>;
- <b>pragma</b> Import (C, Qiflush, "qiflush");
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_885_17">No_Qiflush</A></FONT>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_886_17">No_Qiflush</A></span>;
- <b>pragma</b> Import (C, No_Qiflush, "noqiflush");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_938_7">Win</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1106_7">Win</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_939_7">Flush</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_883_17">Qiflush</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1107_7">Flush</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_884_17">Qiflush</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_885_17">No_Qiflush</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_886_17">No_Qiflush</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_937_14">Set_Queue_Interrupt_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1105_14">Set_Queue_Interrupt_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_898_14" HREF="terminal_interface-curses__ads.htm#ref_945_14">Set_NoDelay_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_899_7" HREF="terminal_interface-curses__ads.htm#ref_946_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_900_7" HREF="terminal_interface-curses__ads.htm#ref_947_7">Mode</A></FONT> : Boolean := False)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_899_14" HREF="terminal_interface-curses__ads.htm#ref_1113_14">Set_NoDelay_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_900_7" HREF="terminal_interface-curses__ads.htm#ref_1114_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_901_7" HREF="terminal_interface-curses__ads.htm#ref_1115_7">Mode</A></span> : Boolean := False)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_902_16">Nodelay</A></FONT> (<FONT COLOR=red><A NAME="ref_902_25" HREF="terminal_interface-curses__adb.htm#ref_902_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_902_39" HREF="terminal_interface-curses__adb.htm#ref_902_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_903_16">Nodelay</A></span> (<span class="symbol"><A NAME="ref_903_25" HREF="terminal_interface-curses__adb.htm#ref_903_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_903_39" HREF="terminal_interface-curses__adb.htm#ref_903_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Nodelay, "nodelay");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_902_16">Nodelay</A> (<A HREF="terminal_interface-curses__ads.htm#ref_946_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_947_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_903_16">Nodelay</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1114_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1115_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_945_14">Set_NoDelay_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1113_14">Set_NoDelay_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_910_14" HREF="terminal_interface-curses__ads.htm#ref_954_14">Set_Timeout_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_910_32" HREF="terminal_interface-curses__ads.htm#ref_954_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_911_32" HREF="terminal_interface-curses__ads.htm#ref_955_32">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_951_9">Timeout_Mode</A>;
-- <FONT COLOR=red><A NAME="ref_912_32" HREF="terminal_interface-curses__ads.htm#ref_956_32">Amount</A></FONT> : Natural)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_911_14" HREF="terminal_interface-curses__ads.htm#ref_1122_14">Set_Timeout_Mode</A></span> (<span class="symbol"><A NAME="ref_911_32" HREF="terminal_interface-curses__ads.htm#ref_1122_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_912_32" HREF="terminal_interface-curses__ads.htm#ref_1123_32">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1119_9">Timeout_Mode</A>;
-+ <span class="symbol"><A NAME="ref_913_32" HREF="terminal_interface-curses__ads.htm#ref_1124_32">Amount</A></span> : Natural)
- <b>is</b>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_914_17">Wtimeout</A></FONT> (<FONT COLOR=red><A NAME="ref_914_27" HREF="terminal_interface-curses__adb.htm#ref_914_17">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_914_41" HREF="terminal_interface-curses__adb.htm#ref_914_17">Amount</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_915_17">Wtimeout</A></span> (<span class="symbol"><A NAME="ref_915_27" HREF="terminal_interface-curses__adb.htm#ref_915_17">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_915_41" HREF="terminal_interface-curses__adb.htm#ref_915_17">Amount</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>);
- <b>pragma</b> Import (C, Wtimeout, "wtimeout");
-
-- <FONT COLOR=red><A NAME="ref_917_7">Time</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_918_7">Time</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_955_32">Mode</A> <b>is</b>
-- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_951_26">Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A> := -1;
-- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_951_36">Non_Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A> := 0;
-- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_951_50">Delayed</A> =&gt;
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_956_32">Amount</A> = 0 <b>then</b>
-+ <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1123_32">Mode</A> <b>is</b>
-+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1119_26">Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_918_7">Time</A> := -1;
-+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1119_36">Non_Blocking</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_918_7">Time</A> := 0;
-+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1119_50">Delayed</A> =&gt;
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1124_32">Amount</A> = 0 <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_956_32">Amount</A>);
-+ <A HREF="terminal_interface-curses__adb.htm#ref_918_7">Time</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1124_32">Amount</A>);
- <b>end</b> <b>case</b>;
-- <A HREF="terminal_interface-curses__adb.htm#ref_914_17">Wtimeout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_954_32">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_917_7">Time</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_954_14">Set_Timeout_Mode</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_915_17">Wtimeout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1122_32">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_918_7">Time</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1122_14">Set_Timeout_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_931_14" HREF="terminal_interface-curses__ads.htm#ref_966_14">Set_Escape_Timer_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_932_7" HREF="terminal_interface-curses__ads.htm#ref_967_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_933_7" HREF="terminal_interface-curses__ads.htm#ref_968_7">Timer_Off</A></FONT> : Boolean := False)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_932_14" HREF="terminal_interface-curses__ads.htm#ref_1134_14">Set_Escape_Timer_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_933_7" HREF="terminal_interface-curses__ads.htm#ref_1135_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_934_7" HREF="terminal_interface-curses__ads.htm#ref_1136_7">Timer_Off</A></span> : Boolean := False)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_935_16">Notimeout</A></FONT> (<FONT COLOR=red><A NAME="ref_935_27" HREF="terminal_interface-curses__adb.htm#ref_935_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_935_41" HREF="terminal_interface-curses__adb.htm#ref_935_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_936_16">Notimeout</A></span> (<span class="symbol"><A NAME="ref_936_27" HREF="terminal_interface-curses__adb.htm#ref_936_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_936_41" HREF="terminal_interface-curses__adb.htm#ref_936_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Notimeout, "notimeout");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_935_16">Notimeout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_967_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_968_7">Timer_Off</A>)))
-- = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_936_16">Notimeout</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1135_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1136_7">Timer_Off</A>)))
-+ = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_966_14">Set_Escape_Timer_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1134_14">Set_Escape_Timer_Mode</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_945_14" HREF="terminal_interface-curses__ads.htm#ref_977_14">Set_NL_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_945_27" HREF="terminal_interface-curses__ads.htm#ref_977_27">SwitchOn</A></FONT> : Boolean := True)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_947_14" HREF="terminal_interface-curses__ads.htm#ref_1145_14">Set_NL_Mode</A></span> (<span class="symbol"><A NAME="ref_947_27" HREF="terminal_interface-curses__ads.htm#ref_1145_27">SwitchOn</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_947_16">NL</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_949_16">NL</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, NL, "nl");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_949_16">NoNL</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_951_16">NoNL</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, NoNL, "nonl");
-
-- <FONT COLOR=red><A NAME="ref_952_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_954_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_977_27">SwitchOn</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_952_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_947_16">NL</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1145_27">SwitchOn</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_954_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_949_16">NL</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_952_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_949_16">NoNL</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_954_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_951_16">NoNL</A>;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_952_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_954_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_977_14">Set_NL_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1145_14">Set_NL_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_964_14" HREF="terminal_interface-curses__ads.htm#ref_983_14">Clear_On_Next_Update</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_965_7" HREF="terminal_interface-curses__ads.htm#ref_984_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_966_7" HREF="terminal_interface-curses__ads.htm#ref_985_7">Do_Clear</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_966_14" HREF="terminal_interface-curses__ads.htm#ref_1151_14">Clear_On_Next_Update</A></span>
-+ (<span class="symbol"><A NAME="ref_967_7" HREF="terminal_interface-curses__ads.htm#ref_1152_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_968_7" HREF="terminal_interface-curses__ads.htm#ref_1153_7">Do_Clear</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_968_16">Clear_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_968_26" HREF="terminal_interface-curses__adb.htm#ref_968_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_968_38" HREF="terminal_interface-curses__adb.htm#ref_968_16">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_970_16">Clear_Ok</A></span> (<span class="symbol"><A NAME="ref_970_26" HREF="terminal_interface-curses__adb.htm#ref_970_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_970_38" HREF="terminal_interface-curses__adb.htm#ref_970_16">Flag</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Clear_Ok, "clearok");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_968_16">Clear_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_984_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_985_7">Do_Clear</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_970_16">Clear_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1152_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1153_7">Do_Clear</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_983_14">Clear_On_Next_Update</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1151_14">Clear_On_Next_Update</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_976_14" HREF="terminal_interface-curses__ads.htm#ref_990_14">Use_Insert_Delete_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_977_7" HREF="terminal_interface-curses__ads.htm#ref_991_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_978_7" HREF="terminal_interface-curses__ads.htm#ref_992_7">Do_Idl</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_978_14" HREF="terminal_interface-curses__ads.htm#ref_1158_14">Use_Insert_Delete_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_979_7" HREF="terminal_interface-curses__ads.htm#ref_1159_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_980_7" HREF="terminal_interface-curses__ads.htm#ref_1160_7">Do_Idl</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_980_16">IDL_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_980_24" HREF="terminal_interface-curses__adb.htm#ref_980_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_980_36" HREF="terminal_interface-curses__adb.htm#ref_980_16">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_982_16">IDL_Ok</A></span> (<span class="symbol"><A NAME="ref_982_24" HREF="terminal_interface-curses__adb.htm#ref_982_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_982_36" HREF="terminal_interface-curses__adb.htm#ref_982_16">Flag</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, IDL_Ok, "idlok");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_980_16">IDL_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_991_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_992_7">Do_Idl</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_982_16">IDL_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1159_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1160_7">Do_Idl</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_990_14">Use_Insert_Delete_Line</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1158_14">Use_Insert_Delete_Line</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_988_14" HREF="terminal_interface-curses__ads.htm#ref_997_14">Use_Insert_Delete_Character</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_989_7" HREF="terminal_interface-curses__ads.htm#ref_998_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_990_7" HREF="terminal_interface-curses__ads.htm#ref_999_7">Do_Idc</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_990_14" HREF="terminal_interface-curses__ads.htm#ref_1165_14">Use_Insert_Delete_Character</A></span>
-+ (<span class="symbol"><A NAME="ref_991_7" HREF="terminal_interface-curses__ads.htm#ref_1166_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_992_7" HREF="terminal_interface-curses__ads.htm#ref_1167_7">Do_Idc</A></span> : Boolean := True)
- <b>is</b>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_992_17">IDC_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_992_25" HREF="terminal_interface-curses__adb.htm#ref_992_17">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_992_37" HREF="terminal_interface-curses__adb.htm#ref_992_17">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_994_17">IDC_Ok</A></span> (<span class="symbol"><A NAME="ref_994_25" HREF="terminal_interface-curses__adb.htm#ref_994_17">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_994_37" HREF="terminal_interface-curses__adb.htm#ref_994_17">Flag</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>);
- <b>pragma</b> Import (C, IDC_Ok, "idcok");
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_992_17">IDC_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_998_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_999_7">Do_Idc</A>)));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_997_14">Use_Insert_Delete_Character</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_994_17">IDC_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1166_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1167_7">Do_Idc</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1165_14">Use_Insert_Delete_Character</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_998_14" HREF="terminal_interface-curses__ads.htm#ref_1004_14">Leave_Cursor_After_Update</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_999_7" HREF="terminal_interface-curses__ads.htm#ref_1005_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1000_7" HREF="terminal_interface-curses__ads.htm#ref_1006_7">Do_Leave</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1000_14" HREF="terminal_interface-curses__ads.htm#ref_1172_14">Leave_Cursor_After_Update</A></span>
-+ (<span class="symbol"><A NAME="ref_1001_7" HREF="terminal_interface-curses__ads.htm#ref_1173_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1002_7" HREF="terminal_interface-curses__ads.htm#ref_1174_7">Do_Leave</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1002_16">Leave_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_1002_26" HREF="terminal_interface-curses__adb.htm#ref_1002_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1002_38" HREF="terminal_interface-curses__adb.htm#ref_1002_16">Flag</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1004_16">Leave_Ok</A></span> (<span class="symbol"><A NAME="ref_1004_26" HREF="terminal_interface-curses__adb.htm#ref_1004_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1004_38" HREF="terminal_interface-curses__adb.htm#ref_1004_16">Flag</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Leave_Ok, "leaveok");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1002_16">Leave_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1005_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1006_7">Do_Leave</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1004_16">Leave_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1173_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1174_7">Do_Leave</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1004_14">Leave_Cursor_After_Update</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1172_14">Leave_Cursor_After_Update</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1010_14" HREF="terminal_interface-curses__ads.htm#ref_1011_14">Immediate_Update_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1011_7" HREF="terminal_interface-curses__ads.htm#ref_1012_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1012_7" HREF="terminal_interface-curses__ads.htm#ref_1013_7">Mode</A></FONT> : Boolean := False)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1012_14" HREF="terminal_interface-curses__ads.htm#ref_1179_14">Immediate_Update_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_1013_7" HREF="terminal_interface-curses__ads.htm#ref_1180_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1014_7" HREF="terminal_interface-curses__ads.htm#ref_1181_7">Mode</A></span> : Boolean := False)
- <b>is</b>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1014_17">Immedok</A></FONT> (<FONT COLOR=red><A NAME="ref_1014_26" HREF="terminal_interface-curses__adb.htm#ref_1014_17">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1014_40" HREF="terminal_interface-curses__adb.htm#ref_1014_17">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1016_17">Immedok</A></span> (<span class="symbol"><A NAME="ref_1016_26" HREF="terminal_interface-curses__adb.htm#ref_1016_17">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1016_40" HREF="terminal_interface-curses__adb.htm#ref_1016_17">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>);
- <b>pragma</b> Import (C, Immedok, "immedok");
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_1014_17">Immedok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1012_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1013_7">Mode</A>)));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1011_14">Immediate_Update_Mode</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1016_17">Immedok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1180_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1181_7">Mode</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1179_14">Immediate_Update_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1020_14" HREF="terminal_interface-curses__ads.htm#ref_1018_14">Allow_Scrolling</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1021_7" HREF="terminal_interface-curses__ads.htm#ref_1019_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1022_7" HREF="terminal_interface-curses__ads.htm#ref_1020_7">Mode</A></FONT> : Boolean := False)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1022_14" HREF="terminal_interface-curses__ads.htm#ref_1186_14">Allow_Scrolling</A></span>
-+ (<span class="symbol"><A NAME="ref_1023_7" HREF="terminal_interface-curses__ads.htm#ref_1187_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1024_7" HREF="terminal_interface-curses__ads.htm#ref_1188_7">Mode</A></span> : Boolean := False)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1024_16">Scrollok</A></FONT> (<FONT COLOR=red><A NAME="ref_1024_26" HREF="terminal_interface-curses__adb.htm#ref_1024_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1024_40" HREF="terminal_interface-curses__adb.htm#ref_1024_16">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1026_16">Scrollok</A></span> (<span class="symbol"><A NAME="ref_1026_26" HREF="terminal_interface-curses__adb.htm#ref_1026_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1026_40" HREF="terminal_interface-curses__adb.htm#ref_1026_16">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Scrollok, "scrollok");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1024_16">Scrollok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1019_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1020_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1026_16">Scrollok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1187_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1188_7">Mode</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1018_14">Allow_Scrolling</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1186_14">Allow_Scrolling</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1032_13" HREF="terminal_interface-curses__ads.htm#ref_1024_13">Scrolling_Allowed</A></FONT> (<FONT COLOR=red><A NAME="ref_1032_32" HREF="terminal_interface-curses__ads.htm#ref_1024_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>function</b> <span class="symbol"><A NAME="ref_1034_13" HREF="terminal_interface-curses__ads.htm#ref_1192_13">Scrolling_Allowed</A></span> (<span class="symbol"><A NAME="ref_1034_32" HREF="terminal_interface-curses__ads.htm#ref_1192_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1035_16">Is_Scroll_Ok</A></FONT> (<FONT COLOR=red><A NAME="ref_1035_30" HREF="terminal_interface-curses__adb.htm#ref_1035_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1037_16">Is_Scroll_Ok</A></span> (<span class="symbol"><A NAME="ref_1037_30" HREF="terminal_interface-curses__adb.htm#ref_1037_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, Is_Scroll_Ok, "is_scrollok");
- <b>begin</b>
-- <b>return</b> (<A HREF="terminal_interface-curses__adb.htm#ref_1035_16">Is_Scroll_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1024_32">Win</A>) /= <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1024_13">Scrolling_Allowed</A>;
-+ <b>return</b> (<A HREF="terminal_interface-curses__adb.htm#ref_1037_16">Is_Scroll_Ok</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1192_32">Win</A>) /= <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1192_13">Scrolling_Allowed</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1041_14" HREF="terminal_interface-curses__ads.htm#ref_1029_14">Set_Scroll_Region</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1042_7" HREF="terminal_interface-curses__ads.htm#ref_1030_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1043_7" HREF="terminal_interface-curses__ads.htm#ref_1031_7">Top_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1044_7" HREF="terminal_interface-curses__ads.htm#ref_1032_7">Bottom_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1046_16">Wsetscrreg</A></FONT> (<FONT COLOR=red><A NAME="ref_1046_28" HREF="terminal_interface-curses__adb.htm#ref_1046_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1047_28" HREF="terminal_interface-curses__adb.htm#ref_1046_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1048_28" HREF="terminal_interface-curses__adb.htm#ref_1046_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1043_14" HREF="terminal_interface-curses__ads.htm#ref_1197_14">Set_Scroll_Region</A></span>
-+ (<span class="symbol"><A NAME="ref_1044_7" HREF="terminal_interface-curses__ads.htm#ref_1198_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1045_7" HREF="terminal_interface-curses__ads.htm#ref_1199_7">Top_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1046_7" HREF="terminal_interface-curses__ads.htm#ref_1200_7">Bottom_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1048_16">Wsetscrreg</A></span> (<span class="symbol"><A NAME="ref_1048_28" HREF="terminal_interface-curses__adb.htm#ref_1048_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1049_28" HREF="terminal_interface-curses__adb.htm#ref_1048_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1050_28" HREF="terminal_interface-curses__adb.htm#ref_1048_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wsetscrreg, "wsetscrreg");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1046_16">Wsetscrreg</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1030_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1031_7">Top_Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1032_7">Bottom_Line</A>))
-- = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1029_14">Set_Scroll_Region</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1057_14" HREF="terminal_interface-curses__ads.htm#ref_1042_14">Update_Screen</A></FONT>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1048_16">Wsetscrreg</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1198_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1199_7">Top_Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1200_7">Bottom_Line</A>))
-+ = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1197_14">Set_Scroll_Region</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1060_14" HREF="terminal_interface-curses__ads.htm#ref_1210_14">Update_Screen</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1059_16">Do_Update</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1062_16">Do_Update</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Do_Update, "doupdate");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1059_16">Do_Update</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1062_16">Do_Update</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1042_14">Update_Screen</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1210_14">Update_Screen</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1067_14" HREF="terminal_interface-curses__ads.htm#ref_1047_14">Refresh</A></FONT> (<FONT COLOR=red><A NAME="ref_1067_23" HREF="terminal_interface-curses__ads.htm#ref_1047_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1070_14" HREF="terminal_interface-curses__ads.htm#ref_1215_14">Refresh</A></span> (<span class="symbol"><A NAME="ref_1070_23" HREF="terminal_interface-curses__ads.htm#ref_1215_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1069_16">Wrefresh</A></FONT> (<FONT COLOR=red><A NAME="ref_1069_26" HREF="terminal_interface-curses__adb.htm#ref_1069_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1072_16">Wrefresh</A></span> (<span class="symbol"><A NAME="ref_1072_26" HREF="terminal_interface-curses__adb.htm#ref_1072_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wrefresh, "wrefresh");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1069_16">Wrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1047_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1072_16">Wrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1215_23">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1047_14">Refresh</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1215_14">Refresh</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1077_14" HREF="terminal_interface-curses__ads.htm#ref_1054_14">Refresh_Without_Update</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1078_7" HREF="terminal_interface-curses__ads.htm#ref_1055_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1080_14" HREF="terminal_interface-curses__ads.htm#ref_1222_14">Refresh_Without_Update</A></span>
-+ (<span class="symbol"><A NAME="ref_1081_7" HREF="terminal_interface-curses__ads.htm#ref_1223_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1080_16">Wnoutrefresh</A></FONT> (<FONT COLOR=red><A NAME="ref_1080_30" HREF="terminal_interface-curses__adb.htm#ref_1080_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1083_16">Wnoutrefresh</A></span> (<span class="symbol"><A NAME="ref_1083_30" HREF="terminal_interface-curses__adb.htm#ref_1083_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wnoutrefresh, "wnoutrefresh");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1080_16">Wnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1055_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1083_16">Wnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1223_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1054_14">Refresh_Without_Update</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1222_14">Refresh_Without_Update</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1088_14" HREF="terminal_interface-curses__ads.htm#ref_1061_14">Redraw</A></FONT> (<FONT COLOR=red><A NAME="ref_1088_22" HREF="terminal_interface-curses__ads.htm#ref_1061_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1091_14" HREF="terminal_interface-curses__ads.htm#ref_1229_14">Redraw</A></span> (<span class="symbol"><A NAME="ref_1091_22" HREF="terminal_interface-curses__ads.htm#ref_1229_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1090_16">Redrawwin</A></FONT> (<FONT COLOR=red><A NAME="ref_1090_27" HREF="terminal_interface-curses__adb.htm#ref_1090_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1093_16">Redrawwin</A></span> (<span class="symbol"><A NAME="ref_1093_27" HREF="terminal_interface-curses__adb.htm#ref_1093_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Redrawwin, "redrawwin");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1090_16">Redrawwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1061_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1093_16">Redrawwin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1229_22">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1061_14">Redraw</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1229_14">Redraw</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1098_14" HREF="terminal_interface-curses__ads.htm#ref_1065_14">Redraw</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1099_7" HREF="terminal_interface-curses__ads.htm#ref_1065_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1100_7" HREF="terminal_interface-curses__ads.htm#ref_1066_22">Begin_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1101_7" HREF="terminal_interface-curses__ads.htm#ref_1067_22">Line_Count</A></FONT> : Positive)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1101_14" HREF="terminal_interface-curses__ads.htm#ref_1233_14">Redraw</A></span>
-+ (<span class="symbol"><A NAME="ref_1102_7" HREF="terminal_interface-curses__ads.htm#ref_1233_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1103_7" HREF="terminal_interface-curses__ads.htm#ref_1234_22">Begin_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1104_7" HREF="terminal_interface-curses__ads.htm#ref_1235_22">Line_Count</A></span> : Positive)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1103_16">Wredrawln</A></FONT> (<FONT COLOR=red><A NAME="ref_1103_27" HREF="terminal_interface-curses__adb.htm#ref_1103_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1103_41" HREF="terminal_interface-curses__adb.htm#ref_1103_16">First</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <FONT COLOR=red><A NAME="ref_1103_56" HREF="terminal_interface-curses__adb.htm#ref_1103_16">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1106_16">Wredrawln</A></span> (<span class="symbol"><A NAME="ref_1106_27" HREF="terminal_interface-curses__adb.htm#ref_1106_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1106_41" HREF="terminal_interface-curses__adb.htm#ref_1106_16">First</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>; <span class="symbol"><A NAME="ref_1106_56" HREF="terminal_interface-curses__adb.htm#ref_1106_16">Cnt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wredrawln, "wredrawln");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1103_16">Wredrawln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1065_22">Win</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1066_22">Begin_Line</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1067_22">Line_Count</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1106_16">Wredrawln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1233_22">Win</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1234_22">Begin_Line</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1235_22">Line_Count</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1065_14">Redraw</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1233_14">Redraw</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1115_14" HREF="terminal_interface-curses__ads.htm#ref_1076_14">Erase</A></FONT> (<FONT COLOR=red><A NAME="ref_1115_21" HREF="terminal_interface-curses__ads.htm#ref_1076_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1119_14" HREF="terminal_interface-curses__ads.htm#ref_1244_14">Erase</A></span> (<span class="symbol"><A NAME="ref_1119_21" HREF="terminal_interface-curses__ads.htm#ref_1244_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1117_16">Werase</A></FONT> (<FONT COLOR=red><A NAME="ref_1117_24" HREF="terminal_interface-curses__adb.htm#ref_1117_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1121_16">Werase</A></span> (<span class="symbol"><A NAME="ref_1121_24" HREF="terminal_interface-curses__adb.htm#ref_1121_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Werase, "werase");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1117_16">Werase</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1076_21">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1121_16">Werase</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1244_21">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1076_14">Erase</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1244_14">Erase</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1125_14" HREF="terminal_interface-curses__ads.htm#ref_1082_14">Clear</A></FONT> (<FONT COLOR=red><A NAME="ref_1125_21" HREF="terminal_interface-curses__ads.htm#ref_1083_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1129_14" HREF="terminal_interface-curses__ads.htm#ref_1250_14">Clear</A></span> (<span class="symbol"><A NAME="ref_1129_21" HREF="terminal_interface-curses__ads.htm#ref_1251_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1127_16">Wclear</A></FONT> (<FONT COLOR=red><A NAME="ref_1127_24" HREF="terminal_interface-curses__adb.htm#ref_1127_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1131_16">Wclear</A></span> (<span class="symbol"><A NAME="ref_1131_24" HREF="terminal_interface-curses__adb.htm#ref_1131_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wclear, "wclear");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1127_16">Wclear</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1083_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1131_16">Wclear</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1251_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1082_14">Clear</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1250_14">Clear</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1135_14" HREF="terminal_interface-curses__ads.htm#ref_1089_14">Clear_To_End_Of_Screen</A></FONT> (<FONT COLOR=red><A NAME="ref_1135_38" HREF="terminal_interface-curses__ads.htm#ref_1090_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1139_14" HREF="terminal_interface-curses__ads.htm#ref_1257_14">Clear_To_End_Of_Screen</A></span> (<span class="symbol"><A NAME="ref_1139_38" HREF="terminal_interface-curses__ads.htm#ref_1258_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1137_16">Wclearbot</A></FONT> (<FONT COLOR=red><A NAME="ref_1137_27" HREF="terminal_interface-curses__adb.htm#ref_1137_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1141_16">Wclearbot</A></span> (<span class="symbol"><A NAME="ref_1141_27" HREF="terminal_interface-curses__adb.htm#ref_1141_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wclearbot, "wclrtobot");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1137_16">Wclearbot</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1090_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1141_16">Wclearbot</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1258_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1089_14">Clear_To_End_Of_Screen</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1257_14">Clear_To_End_Of_Screen</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1145_14" HREF="terminal_interface-curses__ads.htm#ref_1096_14">Clear_To_End_Of_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1145_36" HREF="terminal_interface-curses__ads.htm#ref_1097_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1149_14" HREF="terminal_interface-curses__ads.htm#ref_1264_14">Clear_To_End_Of_Line</A></span> (<span class="symbol"><A NAME="ref_1149_36" HREF="terminal_interface-curses__ads.htm#ref_1265_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1147_16">Wcleareol</A></FONT> (<FONT COLOR=red><A NAME="ref_1147_27" HREF="terminal_interface-curses__adb.htm#ref_1147_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1151_16">Wcleareol</A></span> (<span class="symbol"><A NAME="ref_1151_27" HREF="terminal_interface-curses__adb.htm#ref_1151_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wcleareol, "wclrtoeol");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1147_16">Wcleareol</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1097_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1151_16">Wcleareol</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1265_7">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1096_14">Clear_To_End_Of_Line</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1155_14" HREF="terminal_interface-curses__ads.htm#ref_1110_14">Set_Background</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1156_7" HREF="terminal_interface-curses__ads.htm#ref_1111_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1157_7" HREF="terminal_interface-curses__ads.htm#ref_1112_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>)
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1264_14">Clear_To_End_Of_Line</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1159_14" HREF="terminal_interface-curses__ads.htm#ref_1278_14">Set_Background</A></span>
-+ (<span class="symbol"><A NAME="ref_1160_7" HREF="terminal_interface-curses__ads.htm#ref_1279_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1161_7" HREF="terminal_interface-curses__ads.htm#ref_1280_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
- <b>is</b>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1159_17">WBackground</A></FONT> (<FONT COLOR=red><A NAME="ref_1159_30" HREF="terminal_interface-curses__adb.htm#ref_1159_17">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1159_42" HREF="terminal_interface-curses__adb.htm#ref_1159_17">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1163_17">WBackground</A></span> (<span class="symbol"><A NAME="ref_1163_30" HREF="terminal_interface-curses__adb.htm#ref_1163_17">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1163_42" HREF="terminal_interface-curses__adb.htm#ref_1163_17">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
- <b>pragma</b> Import (C, WBackground, "wbkgdset");
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_1159_17">WBackground</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1111_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1112_7">Ch</A>));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1110_14">Set_Background</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1163_17">WBackground</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1279_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1280_7">Ch</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1278_14">Set_Background</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1165_14" HREF="terminal_interface-curses__ads.htm#ref_1118_14">Change_Background</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1166_7" HREF="terminal_interface-curses__ads.htm#ref_1119_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1167_7" HREF="terminal_interface-curses__ads.htm#ref_1120_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1169_14" HREF="terminal_interface-curses__ads.htm#ref_1286_14">Change_Background</A></span>
-+ (<span class="symbol"><A NAME="ref_1170_7" HREF="terminal_interface-curses__ads.htm#ref_1287_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1171_7" HREF="terminal_interface-curses__ads.htm#ref_1288_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1169_16">WChangeBkgd</A></FONT> (<FONT COLOR=red><A NAME="ref_1169_29" HREF="terminal_interface-curses__adb.htm#ref_1169_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1169_41" HREF="terminal_interface-curses__adb.htm#ref_1169_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1173_16">WChangeBkgd</A></span> (<span class="symbol"><A NAME="ref_1173_29" HREF="terminal_interface-curses__adb.htm#ref_1173_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1173_41" HREF="terminal_interface-curses__adb.htm#ref_1173_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, WChangeBkgd, "wbkgd");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1169_16">WChangeBkgd</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1119_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1120_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1173_16">WChangeBkgd</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1287_7">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1288_7">Ch</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1118_14">Change_Background</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1286_14">Change_Background</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1177_13" HREF="terminal_interface-curses__ads.htm#ref_1127_13">Get_Background</A></FONT> (<FONT COLOR=red><A NAME="ref_1177_29" HREF="terminal_interface-curses__ads.htm#ref_1127_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1182_13" HREF="terminal_interface-curses__ads.htm#ref_1295_13">Get_Background</A></span> (<span class="symbol"><A NAME="ref_1182_29" HREF="terminal_interface-curses__ads.htm#ref_1295_29">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1180_16">Wgetbkgd</A></FONT> (<FONT COLOR=red><A NAME="ref_1180_26" HREF="terminal_interface-curses__adb.htm#ref_1180_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1185_16">Wgetbkgd</A></span> (<span class="symbol"><A NAME="ref_1185_26" HREF="terminal_interface-curses__adb.htm#ref_1185_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Wgetbkgd, "getbkgd");
- <b>begin</b>
-- <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1180_16">Wgetbkgd</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1127_29">Win</A>));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1127_13">Get_Background</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1186_14" HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_1186_35" HREF="terminal_interface-curses__ads.htm#ref_1154_35">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1187_35" HREF="terminal_interface-curses__ads.htm#ref_1155_35">Start</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1188_35" HREF="terminal_interface-curses__ads.htm#ref_1156_35">Count</A></FONT> : Positive;
-- <FONT COLOR=red><A NAME="ref_1189_35" HREF="terminal_interface-curses__ads.htm#ref_1157_35">State</A></FONT> : Boolean)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1191_16">Wtouchln</A></FONT> (<FONT COLOR=red><A NAME="ref_1191_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1192_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Sta</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1193_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Cnt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1194_26" HREF="terminal_interface-curses__adb.htm#ref_1191_16">Chg</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1185_16">Wgetbkgd</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1295_29">Win</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1295_13">Get_Background</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1191_14" HREF="terminal_interface-curses__ads.htm#ref_1322_14">Change_Lines_Status</A></span> (<span class="symbol"><A NAME="ref_1191_35" HREF="terminal_interface-curses__ads.htm#ref_1322_35">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1192_35" HREF="terminal_interface-curses__ads.htm#ref_1323_35">Start</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1193_35" HREF="terminal_interface-curses__ads.htm#ref_1324_35">Count</A></span> : Positive;
-+ <span class="symbol"><A NAME="ref_1194_35" HREF="terminal_interface-curses__ads.htm#ref_1325_35">State</A></span> : Boolean)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1196_16">Wtouchln</A></span> (<span class="symbol"><A NAME="ref_1196_26" HREF="terminal_interface-curses__adb.htm#ref_1196_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1197_26" HREF="terminal_interface-curses__adb.htm#ref_1196_16">Sta</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1198_26" HREF="terminal_interface-curses__adb.htm#ref_1196_16">Cnt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1199_26" HREF="terminal_interface-curses__adb.htm#ref_1196_16">Chg</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wtouchln, "wtouchln");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1191_16">Wtouchln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1154_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1155_35">Start</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1156_35">Count</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1157_35">State</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1196_16">Wtouchln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1322_35">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1323_35">Start</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1324_35">Count</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1325_35">State</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1322_14">Change_Lines_Status</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1203_14" HREF="terminal_interface-curses__ads.htm#ref_1143_14">Touch</A></FONT> (<FONT COLOR=red><A NAME="ref_1203_21" HREF="terminal_interface-curses__ads.htm#ref_1143_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1209_14" HREF="terminal_interface-curses__ads.htm#ref_1311_14">Touch</A></span> (<span class="symbol"><A NAME="ref_1209_21" HREF="terminal_interface-curses__ads.htm#ref_1311_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_1205_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1206_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1211_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1212_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1143_21">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1205_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1206_7">X</A>);
-- <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses__adb.htm#ref_1206_7">X</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1143_21">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#ref_1205_7">Y</A>), True);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1143_14">Touch</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1311_21">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1211_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1212_7">X</A>);
-+ <b>pragma</b> Warnings (Off, <A HREF="terminal_interface-curses__adb.htm#ref_1212_7">X</A>); <span class="comment"><EM>-- unreferenced</EM></span>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1322_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1311_21">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#ref_1211_7">Y</A>), True);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1311_14">Touch</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1213_14" HREF="terminal_interface-curses__ads.htm#ref_1138_14">Untouch</A></FONT> (<FONT COLOR=red><A NAME="ref_1213_23" HREF="terminal_interface-curses__ads.htm#ref_1138_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1219_14" HREF="terminal_interface-curses__ads.htm#ref_1306_14">Untouch</A></span> (<span class="symbol"><A NAME="ref_1219_23" HREF="terminal_interface-curses__ads.htm#ref_1306_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_1215_7">Y</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1216_7">X</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1221_7">Y</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1222_7">X</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1138_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1215_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1216_7">X</A>);
-- <b>pragma</b> Unreferenced (<A HREF="terminal_interface-curses__adb.htm#ref_1216_7">X</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1138_23">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#ref_1215_7">Y</A>), False);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1138_14">Untouch</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1306_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1221_7">Y</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1222_7">X</A>);
-+ <b>pragma</b> Warnings (Off, <A HREF="terminal_interface-curses__adb.htm#ref_1222_7">X</A>); <span class="comment"><EM>-- unreferenced</EM></span>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1322_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1306_23">Win</A>, 0, Positive (<A HREF="terminal_interface-curses__adb.htm#ref_1221_7">Y</A>), False);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1306_14">Untouch</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1223_14" HREF="terminal_interface-curses__ads.htm#ref_1147_14">Touch</A></FONT> (<FONT COLOR=red><A NAME="ref_1223_21" HREF="terminal_interface-curses__ads.htm#ref_1147_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1224_21" HREF="terminal_interface-curses__ads.htm#ref_1148_21">Start</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1225_21" HREF="terminal_interface-curses__ads.htm#ref_1149_21">Count</A></FONT> : Positive)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1229_14" HREF="terminal_interface-curses__ads.htm#ref_1315_14">Touch</A></span> (<span class="symbol"><A NAME="ref_1229_21" HREF="terminal_interface-curses__ads.htm#ref_1315_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1230_21" HREF="terminal_interface-curses__ads.htm#ref_1316_21">Start</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1231_21" HREF="terminal_interface-curses__ads.htm#ref_1317_21">Count</A></span> : Positive)
- <b>is</b>
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1147_21">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1148_21">Start</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1149_21">Count</A>, True);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1147_14">Touch</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1322_14">Change_Lines_Status</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1315_21">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1316_21">Start</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1317_21">Count</A>, True);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1315_14">Touch</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1231_13" HREF="terminal_interface-curses__ads.htm#ref_1162_13">Is_Touched</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1232_7" HREF="terminal_interface-curses__ads.htm#ref_1162_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1233_7" HREF="terminal_interface-curses__ads.htm#ref_1163_25">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_1237_13" HREF="terminal_interface-curses__ads.htm#ref_1330_13">Is_Touched</A></span>
-+ (<span class="symbol"><A NAME="ref_1238_7" HREF="terminal_interface-curses__ads.htm#ref_1330_25">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1239_7" HREF="terminal_interface-curses__ads.htm#ref_1331_25">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1235_16">WLineTouched</A></FONT> (<FONT COLOR=red><A NAME="ref_1235_30" HREF="terminal_interface-curses__adb.htm#ref_1235_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1235_42" HREF="terminal_interface-curses__adb.htm#ref_1235_16">L</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1241_16">WLineTouched</A></span> (<span class="symbol"><A NAME="ref_1241_30" HREF="terminal_interface-curses__adb.htm#ref_1241_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1241_42" HREF="terminal_interface-curses__adb.htm#ref_1241_16">L</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, WLineTouched, "is_linetouched");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1235_16">WLineTouched</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1162_25">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1163_25">Line</A>)) = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1241_16">WLineTouched</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1330_25">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1331_25">Line</A>)) = <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1162_13">Is_Touched</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1330_13">Is_Touched</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1245_13" HREF="terminal_interface-curses__ads.htm#ref_1167_13">Is_Touched</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1246_7" HREF="terminal_interface-curses__ads.htm#ref_1167_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_1251_13" HREF="terminal_interface-curses__ads.htm#ref_1335_13">Is_Touched</A></span>
-+ (<span class="symbol"><A NAME="ref_1252_7" HREF="terminal_interface-curses__ads.htm#ref_1335_25">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1248_16">WWinTouched</A></FONT> (<FONT COLOR=red><A NAME="ref_1248_29" HREF="terminal_interface-curses__adb.htm#ref_1248_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1254_16">WWinTouched</A></span> (<span class="symbol"><A NAME="ref_1254_29" HREF="terminal_interface-curses__adb.htm#ref_1254_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, WWinTouched, "is_wintouched");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1248_16">WWinTouched</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1167_25">Win</A>) = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1254_16">WWinTouched</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1335_25">Win</A>) = <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1167_13">Is_Touched</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1258_14" HREF="terminal_interface-curses__ads.htm#ref_1176_14">Copy</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1259_7" HREF="terminal_interface-curses__ads.htm#ref_1177_7">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1260_7" HREF="terminal_interface-curses__ads.htm#ref_1178_7">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1261_7" HREF="terminal_interface-curses__ads.htm#ref_1179_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1262_7" HREF="terminal_interface-curses__ads.htm#ref_1180_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1263_7" HREF="terminal_interface-curses__ads.htm#ref_1181_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1264_7" HREF="terminal_interface-curses__ads.htm#ref_1182_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1265_7" HREF="terminal_interface-curses__ads.htm#ref_1183_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1266_7" HREF="terminal_interface-curses__ads.htm#ref_1184_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1267_7" HREF="terminal_interface-curses__ads.htm#ref_1185_7">Non_Destructive_Mode</A></FONT> : Boolean := True)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1269_16">Copywin</A></FONT> (<FONT COLOR=red><A NAME="ref_1269_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1270_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1271_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Str</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1272_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Slc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1273_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dtr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1274_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dlc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1275_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Dbr</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1276_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Drc</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1277_25" HREF="terminal_interface-curses__adb.htm#ref_1269_16">Ndm</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1335_13">Is_Touched</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1264_14" HREF="terminal_interface-curses__ads.htm#ref_1344_14">Copy</A></span>
-+ (<span class="symbol"><A NAME="ref_1265_7" HREF="terminal_interface-curses__ads.htm#ref_1345_7">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1266_7" HREF="terminal_interface-curses__ads.htm#ref_1346_7">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1267_7" HREF="terminal_interface-curses__ads.htm#ref_1347_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1268_7" HREF="terminal_interface-curses__ads.htm#ref_1348_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1269_7" HREF="terminal_interface-curses__ads.htm#ref_1349_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1270_7" HREF="terminal_interface-curses__ads.htm#ref_1350_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1271_7" HREF="terminal_interface-curses__ads.htm#ref_1351_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1272_7" HREF="terminal_interface-curses__ads.htm#ref_1352_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1273_7" HREF="terminal_interface-curses__ads.htm#ref_1353_7">Non_Destructive_Mode</A></span> : Boolean := True)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1275_16">Copywin</A></span> (<span class="symbol"><A NAME="ref_1275_25" HREF="terminal_interface-curses__adb.htm#ref_1275_16">Src</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1276_25" HREF="terminal_interface-curses__adb.htm#ref_1275_16">Dst</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1277_25" HREF="terminal_interface-curses__adb.htm#ref_1275_16">Str</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1278_25" HREF="terminal_interface-curses__adb.htm#ref_1275_16">Slc</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1279_25" HREF="terminal_interface-curses__adb.htm#ref_1275_16">Dtr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1280_25" HREF="terminal_interface-curses__adb.htm#ref_1275_16">Dlc</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1281_25" HREF="terminal_interface-curses__adb.htm#ref_1275_16">Dbr</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1282_25" HREF="terminal_interface-curses__adb.htm#ref_1275_16">Drc</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1283_25" HREF="terminal_interface-curses__adb.htm#ref_1275_16">Ndm</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Copywin, "copywin");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1269_16">Copywin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1177_7">Source_Window</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_1178_7">Destination_Window</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1179_7">Source_Top_Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1180_7">Source_Left_Column</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1181_7">Destination_Top_Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1182_7">Destination_Left_Column</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1183_7">Destination_Bottom_Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1184_7">Destination_Right_Column</A>),
-- Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1185_7">Non_Destructive_Mode</A>)
-- ) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1176_14">Copy</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1294_14" HREF="terminal_interface-curses__ads.htm#ref_1190_14">Overwrite</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1295_7" HREF="terminal_interface-curses__ads.htm#ref_1190_25">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1296_7" HREF="terminal_interface-curses__ads.htm#ref_1191_25">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1275_16">Copywin</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1345_7">Source_Window</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1346_7">Destination_Window</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1347_7">Source_Top_Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1348_7">Source_Left_Column</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1349_7">Destination_Top_Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1350_7">Destination_Left_Column</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1351_7">Destination_Bottom_Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1352_7">Destination_Right_Column</A>),
-+ Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1353_7">Non_Destructive_Mode</A>)
-+ ) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1344_14">Copy</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1301_14" HREF="terminal_interface-curses__ads.htm#ref_1358_14">Overwrite</A></span>
-+ (<span class="symbol"><A NAME="ref_1302_7" HREF="terminal_interface-curses__ads.htm#ref_1358_25">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1303_7" HREF="terminal_interface-curses__ads.htm#ref_1359_25">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1298_16">Overwrite</A></FONT> (<FONT COLOR=red><A NAME="ref_1298_27" HREF="terminal_interface-curses__adb.htm#ref_1298_16">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1298_41" HREF="terminal_interface-curses__adb.htm#ref_1298_16">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1305_16">Overwrite</A></span> (<span class="symbol"><A NAME="ref_1305_27" HREF="terminal_interface-curses__adb.htm#ref_1305_16">Src</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1305_41" HREF="terminal_interface-curses__adb.htm#ref_1305_16">Dst</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Overwrite, "overwrite");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1298_16">Overwrite</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1190_25">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1191_25">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1305_16">Overwrite</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1358_25">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1359_25">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1190_14">Overwrite</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1358_14">Overwrite</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1306_14" HREF="terminal_interface-curses__ads.htm#ref_1196_14">Overlay</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1307_7" HREF="terminal_interface-curses__ads.htm#ref_1196_23">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1308_7" HREF="terminal_interface-curses__ads.htm#ref_1197_23">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1313_14" HREF="terminal_interface-curses__ads.htm#ref_1364_14">Overlay</A></span>
-+ (<span class="symbol"><A NAME="ref_1314_7" HREF="terminal_interface-curses__ads.htm#ref_1364_23">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1315_7" HREF="terminal_interface-curses__ads.htm#ref_1365_23">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1310_16">Overlay</A></FONT> (<FONT COLOR=red><A NAME="ref_1310_25" HREF="terminal_interface-curses__adb.htm#ref_1310_16">Src</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1310_39" HREF="terminal_interface-curses__adb.htm#ref_1310_16">Dst</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1317_16">Overlay</A></span> (<span class="symbol"><A NAME="ref_1317_25" HREF="terminal_interface-curses__adb.htm#ref_1317_16">Src</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1317_39" HREF="terminal_interface-curses__adb.htm#ref_1317_16">Dst</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Overlay, "overlay");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1310_16">Overlay</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1196_23">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1197_23">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1317_16">Overlay</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1364_23">Source_Window</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1365_23">Destination_Window</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1196_14">Overlay</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1364_14">Overlay</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1319_14" HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1320_7" HREF="terminal_interface-curses__ads.htm#ref_1207_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1321_7" HREF="terminal_interface-curses__ads.htm#ref_1208_7">Lines</A></FONT> : Integer := 1) <FONT COLOR=green><EM>-- default is to insert one line above</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1326_14" HREF="terminal_interface-curses__ads.htm#ref_1374_14">Insert_Delete_Lines</A></span>
-+ (<span class="symbol"><A NAME="ref_1327_7" HREF="terminal_interface-curses__ads.htm#ref_1375_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1328_7" HREF="terminal_interface-curses__ads.htm#ref_1376_7">Lines</A></span> : Integer := 1) <span class="comment"><EM>-- default is to insert one line above</EM></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1323_16">Winsdelln</A></FONT> (<FONT COLOR=red><A NAME="ref_1323_27" HREF="terminal_interface-curses__adb.htm#ref_1323_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1323_39" HREF="terminal_interface-curses__adb.htm#ref_1323_16">N</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1330_16">Winsdelln</A></span> (<span class="symbol"><A NAME="ref_1330_27" HREF="terminal_interface-curses__adb.htm#ref_1330_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1330_39" HREF="terminal_interface-curses__adb.htm#ref_1330_16">N</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Winsdelln, "winsdelln");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1323_16">Winsdelln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1207_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1208_7">Lines</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1330_16">Winsdelln</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1375_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1376_7">Lines</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1374_14">Insert_Delete_Lines</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1331_14" HREF="terminal_interface-curses__ads.htm#ref_1214_14">Delete_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1331_27" HREF="terminal_interface-curses__ads.htm#ref_1214_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1338_14" HREF="terminal_interface-curses__ads.htm#ref_1382_14">Delete_Line</A></span> (<span class="symbol"><A NAME="ref_1338_27" HREF="terminal_interface-curses__ads.htm#ref_1382_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1214_27">Win</A>, -1);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1214_14">Delete_Line</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1374_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1382_27">Win</A>, -1);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1382_14">Delete_Line</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1337_14" HREF="terminal_interface-curses__ads.htm#ref_1220_14">Insert_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1337_27" HREF="terminal_interface-curses__ads.htm#ref_1220_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1344_14" HREF="terminal_interface-curses__ads.htm#ref_1388_14">Insert_Line</A></span> (<span class="symbol"><A NAME="ref_1344_27" HREF="terminal_interface-curses__ads.htm#ref_1388_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1220_27">Win</A>, 1);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1220_14">Insert_Line</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1374_14">Insert_Delete_Lines</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1388_27">Win</A>, 1);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1388_14">Insert_Line</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1344_14" HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1345_7" HREF="terminal_interface-curses__ads.htm#ref_1231_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1346_7" HREF="terminal_interface-curses__ads.htm#ref_1232_7">Number_Of_Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_1347_7" HREF="terminal_interface-curses__ads.htm#ref_1233_7">Number_Of_Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1351_14" HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A></span>
-+ (<span class="symbol"><A NAME="ref_1352_7" HREF="terminal_interface-curses__ads.htm#ref_1399_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1353_7" HREF="terminal_interface-curses__ads.htm#ref_1400_7">Number_Of_Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_1354_7" HREF="terminal_interface-curses__ads.htm#ref_1401_7">Number_Of_Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1349_16">GetMaxY</A></FONT> (<FONT COLOR=red><A NAME="ref_1349_25" HREF="terminal_interface-curses__adb.htm#ref_1349_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1356_16">GetMaxY</A></span> (<span class="symbol"><A NAME="ref_1356_25" HREF="terminal_interface-curses__adb.htm#ref_1356_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, GetMaxY, "getmaxy");
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1352_16">GetMaxX</A></FONT> (<FONT COLOR=red><A NAME="ref_1352_25" HREF="terminal_interface-curses__adb.htm#ref_1352_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1359_16">GetMaxX</A></span> (<span class="symbol"><A NAME="ref_1359_25" HREF="terminal_interface-curses__adb.htm#ref_1359_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, GetMaxX, "getmaxx");
-
-- <FONT COLOR=red><A NAME="ref_1355_7">Y</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1349_16">GetMaxY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1231_7">Win</A>);
-- <FONT COLOR=red><A NAME="ref_1356_7">X</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1352_16">GetMaxX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1231_7">Win</A>);
-+ <span class="symbol"><A NAME="ref_1362_7">Y</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1356_16">GetMaxY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1399_7">Win</A>);
-+ <span class="symbol"><A NAME="ref_1363_7">X</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1359_16">GetMaxX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1399_7">Win</A>);
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1232_7">Number_Of_Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1355_7">Y</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1233_7">Number_Of_Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1356_7">X</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1362_14" HREF="terminal_interface-curses__ads.htm#ref_1238_14">Get_Window_Position</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1363_7" HREF="terminal_interface-curses__ads.htm#ref_1239_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1364_7" HREF="terminal_interface-curses__ads.htm#ref_1240_7">Top_Left_Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1365_7" HREF="terminal_interface-curses__ads.htm#ref_1241_7">Top_Left_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1400_7">Number_Of_Lines</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1362_7">Y</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1401_7">Number_Of_Columns</A> := <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1363_7">X</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1369_14" HREF="terminal_interface-curses__ads.htm#ref_1406_14">Get_Window_Position</A></span>
-+ (<span class="symbol"><A NAME="ref_1370_7" HREF="terminal_interface-curses__ads.htm#ref_1407_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1371_7" HREF="terminal_interface-curses__ads.htm#ref_1408_7">Top_Left_Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1372_7" HREF="terminal_interface-curses__ads.htm#ref_1409_7">Top_Left_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1367_16">GetBegY</A></FONT> (<FONT COLOR=red><A NAME="ref_1367_25" HREF="terminal_interface-curses__adb.htm#ref_1367_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1374_16">GetBegY</A></span> (<span class="symbol"><A NAME="ref_1374_25" HREF="terminal_interface-curses__adb.htm#ref_1374_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, GetBegY, "getbegy");
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1370_16">GetBegX</A></FONT> (<FONT COLOR=red><A NAME="ref_1370_25" HREF="terminal_interface-curses__adb.htm#ref_1370_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1377_16">GetBegX</A></span> (<span class="symbol"><A NAME="ref_1377_25" HREF="terminal_interface-curses__adb.htm#ref_1377_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, GetBegX, "getbegx");
-
-- <FONT COLOR=red><A NAME="ref_1373_7">Y</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1367_16">GetBegY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1239_7">Win</A>));
-- <FONT COLOR=red><A NAME="ref_1374_7">X</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1370_16">GetBegX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1239_7">Win</A>));
-+ <span class="symbol"><A NAME="ref_1380_7">Y</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1374_16">GetBegY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1407_7">Win</A>));
-+ <span class="symbol"><A NAME="ref_1381_7">X</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1377_16">GetBegX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1407_7">Win</A>));
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1240_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1373_7">Y</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1241_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1374_7">X</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1238_14">Get_Window_Position</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1380_14" HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1381_7" HREF="terminal_interface-curses__ads.htm#ref_1247_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1382_7" HREF="terminal_interface-curses__ads.htm#ref_1248_7">Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1383_7" HREF="terminal_interface-curses__ads.htm#ref_1249_7">Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1408_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1380_7">Y</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1409_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1381_7">X</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1406_14">Get_Window_Position</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1387_14" HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A></span>
-+ (<span class="symbol"><A NAME="ref_1388_7" HREF="terminal_interface-curses__ads.htm#ref_1415_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1389_7" HREF="terminal_interface-curses__ads.htm#ref_1416_7">Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1390_7" HREF="terminal_interface-curses__ads.htm#ref_1417_7">Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1385_16">GetCurY</A></FONT> (<FONT COLOR=red><A NAME="ref_1385_25" HREF="terminal_interface-curses__adb.htm#ref_1385_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1392_16">GetCurY</A></span> (<span class="symbol"><A NAME="ref_1392_25" HREF="terminal_interface-curses__adb.htm#ref_1392_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, GetCurY, "getcury");
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1388_16">GetCurX</A></FONT> (<FONT COLOR=red><A NAME="ref_1388_25" HREF="terminal_interface-curses__adb.htm#ref_1388_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1395_16">GetCurX</A></span> (<span class="symbol"><A NAME="ref_1395_25" HREF="terminal_interface-curses__adb.htm#ref_1395_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, GetCurX, "getcurx");
-
-- <FONT COLOR=red><A NAME="ref_1391_7">Y</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1385_16">GetCurY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1247_7">Win</A>));
-- <FONT COLOR=red><A NAME="ref_1392_7">X</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1388_16">GetCurX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1247_7">Win</A>));
-+ <span class="symbol"><A NAME="ref_1398_7">Y</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1392_16">GetCurY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1415_7">Win</A>));
-+ <span class="symbol"><A NAME="ref_1399_7">X</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1395_16">GetCurX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1415_7">Win</A>));
- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1248_7">Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1391_7">Y</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1249_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1392_7">X</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1398_14" HREF="terminal_interface-curses__ads.htm#ref_1254_14">Get_Origin_Relative_To_Parent</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1399_7" HREF="terminal_interface-curses__ads.htm#ref_1255_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1400_7" HREF="terminal_interface-curses__ads.htm#ref_1256_7">Top_Left_Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1401_7" HREF="terminal_interface-curses__ads.htm#ref_1257_7">Top_Left_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1402_7" HREF="terminal_interface-curses__ads.htm#ref_1258_7">Is_Not_A_Subwindow</A></FONT> : <b>out</b> Boolean)
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1416_7">Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1398_7">Y</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1417_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1399_7">X</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1405_14" HREF="terminal_interface-curses__ads.htm#ref_1422_14">Get_Origin_Relative_To_Parent</A></span>
-+ (<span class="symbol"><A NAME="ref_1406_7" HREF="terminal_interface-curses__ads.htm#ref_1423_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1407_7" HREF="terminal_interface-curses__ads.htm#ref_1424_7">Top_Left_Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1408_7" HREF="terminal_interface-curses__ads.htm#ref_1425_7">Top_Left_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1409_7" HREF="terminal_interface-curses__ads.htm#ref_1426_7">Is_Not_A_Subwindow</A></span> : <b>out</b> Boolean)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1404_16">GetParY</A></FONT> (<FONT COLOR=red><A NAME="ref_1404_25" HREF="terminal_interface-curses__adb.htm#ref_1404_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1411_16">GetParY</A></span> (<span class="symbol"><A NAME="ref_1411_25" HREF="terminal_interface-curses__adb.htm#ref_1411_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, GetParY, "getpary");
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1407_16">GetParX</A></FONT> (<FONT COLOR=red><A NAME="ref_1407_25" HREF="terminal_interface-curses__adb.htm#ref_1407_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1414_16">GetParX</A></span> (<span class="symbol"><A NAME="ref_1414_25" HREF="terminal_interface-curses__adb.htm#ref_1414_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, GetParX, "getparx");
-
-- <FONT COLOR=red><A NAME="ref_1410_7">Y</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1404_16">GetParY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1255_7">Win</A>);
-- <FONT COLOR=red><A NAME="ref_1411_7">X</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1407_16">GetParX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1255_7">Win</A>);
-+ <span class="symbol"><A NAME="ref_1417_7">Y</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1411_16">GetParY</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1423_7">Win</A>);
-+ <span class="symbol"><A NAME="ref_1418_7">X</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1414_16">GetParX</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1423_7">Win</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1410_7">Y</A> = -1 <b>then</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1256_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'Last;
-- <A HREF="terminal_interface-curses__ads.htm#ref_1257_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'Last;
-- <A HREF="terminal_interface-curses__ads.htm#ref_1258_7">Is_Not_A_Subwindow</A> := True;
-- <b>else</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1256_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1410_7">Y</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1257_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1411_7">X</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1258_7">Is_Not_A_Subwindow</A> := False;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1254_14">Get_Origin_Relative_To_Parent</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1424_13" HREF="terminal_interface-curses__ads.htm#ref_1269_13">New_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_1424_22" HREF="terminal_interface-curses__ads.htm#ref_1269_22">Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_1425_22" HREF="terminal_interface-curses__ads.htm#ref_1270_22">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1417_7">Y</A> = -1 <b>then</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1424_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>'Last;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1425_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>'Last;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1426_7">Is_Not_A_Subwindow</A> := True;
-+ <b>else</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1424_7">Top_Left_Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1417_7">Y</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1425_7">Top_Left_Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1418_7">X</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1426_7">Is_Not_A_Subwindow</A> := False;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1422_14">Get_Origin_Relative_To_Parent</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1431_13" HREF="terminal_interface-curses__ads.htm#ref_1437_13">New_Pad</A></span> (<span class="symbol"><A NAME="ref_1431_22" HREF="terminal_interface-curses__ads.htm#ref_1437_22">Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_1432_22" HREF="terminal_interface-curses__ads.htm#ref_1438_22">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1427_16">Newpad</A></FONT> (<FONT COLOR=red><A NAME="ref_1427_24" HREF="terminal_interface-curses__adb.htm#ref_1427_16">Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <FONT COLOR=red><A NAME="ref_1427_39" HREF="terminal_interface-curses__adb.htm#ref_1427_16">Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1434_16">Newpad</A></span> (<span class="symbol"><A NAME="ref_1434_24" HREF="terminal_interface-curses__adb.htm#ref_1434_16">Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>; <span class="symbol"><A NAME="ref_1434_39" HREF="terminal_interface-curses__adb.htm#ref_1434_16">Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Newpad, "newpad");
-
-- <FONT COLOR=red><A NAME="ref_1430_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1437_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_1430_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1427_16">Newpad</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1269_22">Lines</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1270_22">Columns</A>));
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1430_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1430_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1269_13">New_Pad</A>;
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1439_13" HREF="terminal_interface-curses__ads.htm#ref_1275_13">Sub_Pad</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1440_7" HREF="terminal_interface-curses__ads.htm#ref_1276_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1441_7" HREF="terminal_interface-curses__ads.htm#ref_1277_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_1442_7" HREF="terminal_interface-curses__ads.htm#ref_1278_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_1443_7" HREF="terminal_interface-curses__ads.htm#ref_1279_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1444_7" HREF="terminal_interface-curses__ads.htm#ref_1280_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1446_16">Subpad</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1447_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1448_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1449_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1450_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1451_10" HREF="terminal_interface-curses__adb.htm#ref_1446_16">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1437_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1434_16">Newpad</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1437_22">Lines</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1438_22">Columns</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1437_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1437_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1437_13">New_Pad</A>;
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_1446_13" HREF="terminal_interface-curses__ads.htm#ref_1443_13">Sub_Pad</A></span>
-+ (<span class="symbol"><A NAME="ref_1447_7" HREF="terminal_interface-curses__ads.htm#ref_1444_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1448_7" HREF="terminal_interface-curses__ads.htm#ref_1445_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_1449_7" HREF="terminal_interface-curses__ads.htm#ref_1446_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_1450_7" HREF="terminal_interface-curses__ads.htm#ref_1447_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1451_7" HREF="terminal_interface-curses__ads.htm#ref_1448_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1453_16">Subpad</A></span>
-+ (<span class="symbol"><A NAME="ref_1454_10" HREF="terminal_interface-curses__adb.htm#ref_1453_16">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1455_10" HREF="terminal_interface-curses__adb.htm#ref_1453_16">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1456_10" HREF="terminal_interface-curses__adb.htm#ref_1453_16">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1457_10" HREF="terminal_interface-curses__adb.htm#ref_1453_16">First_Line_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1458_10" HREF="terminal_interface-curses__adb.htm#ref_1453_16">First_Column_Position</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>pragma</b> Import (C, Subpad, "subpad");
-
-- <FONT COLOR=red><A NAME="ref_1454_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1461_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_1454_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1446_16">Subpad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1276_7">Pad</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1277_7">Number_Of_Lines</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1278_7">Number_Of_Columns</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1279_7">First_Line_Position</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1280_7">First_Column_Position</A>));
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1454_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1454_7">W</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1275_13">Sub_Pad</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1467_14" HREF="terminal_interface-curses__ads.htm#ref_1285_14">Refresh</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1468_7" HREF="terminal_interface-curses__ads.htm#ref_1286_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1469_7" HREF="terminal_interface-curses__ads.htm#ref_1287_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1470_7" HREF="terminal_interface-curses__ads.htm#ref_1288_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1471_7" HREF="terminal_interface-curses__ads.htm#ref_1289_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1472_7" HREF="terminal_interface-curses__ads.htm#ref_1290_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1473_7" HREF="terminal_interface-curses__ads.htm#ref_1291_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1474_7" HREF="terminal_interface-curses__ads.htm#ref_1292_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1476_16">Prefresh</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1477_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1478_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1479_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1480_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1481_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1482_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1483_10" HREF="terminal_interface-curses__adb.htm#ref_1476_16">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1461_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1453_16">Subpad</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1444_7">Pad</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1445_7">Number_Of_Lines</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1446_7">Number_Of_Columns</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1447_7">First_Line_Position</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1448_7">First_Column_Position</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1461_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1461_7">W</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1443_13">Sub_Pad</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1474_14" HREF="terminal_interface-curses__ads.htm#ref_1453_14">Refresh</A></span>
-+ (<span class="symbol"><A NAME="ref_1475_7" HREF="terminal_interface-curses__ads.htm#ref_1454_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1476_7" HREF="terminal_interface-curses__ads.htm#ref_1455_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1477_7" HREF="terminal_interface-curses__ads.htm#ref_1456_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1478_7" HREF="terminal_interface-curses__ads.htm#ref_1457_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1479_7" HREF="terminal_interface-curses__ads.htm#ref_1458_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1480_7" HREF="terminal_interface-curses__ads.htm#ref_1459_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1481_7" HREF="terminal_interface-curses__ads.htm#ref_1460_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1483_16">Prefresh</A></span>
-+ (<span class="symbol"><A NAME="ref_1484_10" HREF="terminal_interface-curses__adb.htm#ref_1483_16">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1485_10" HREF="terminal_interface-curses__adb.htm#ref_1483_16">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1486_10" HREF="terminal_interface-curses__adb.htm#ref_1483_16">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1487_10" HREF="terminal_interface-curses__adb.htm#ref_1483_16">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1488_10" HREF="terminal_interface-curses__adb.htm#ref_1483_16">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1489_10" HREF="terminal_interface-curses__adb.htm#ref_1483_16">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1490_10" HREF="terminal_interface-curses__adb.htm#ref_1483_16">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Prefresh, "prefresh");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1476_16">Prefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1286_7">Pad</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1287_7">Source_Top_Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1288_7">Source_Left_Column</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1289_7">Destination_Top_Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1290_7">Destination_Left_Column</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1291_7">Destination_Bottom_Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1292_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1285_14">Refresh</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1497_14" HREF="terminal_interface-curses__ads.htm#ref_1297_14">Refresh_Without_Update</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1498_7" HREF="terminal_interface-curses__ads.htm#ref_1298_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1499_7" HREF="terminal_interface-curses__ads.htm#ref_1299_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1500_7" HREF="terminal_interface-curses__ads.htm#ref_1300_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1501_7" HREF="terminal_interface-curses__ads.htm#ref_1301_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1502_7" HREF="terminal_interface-curses__ads.htm#ref_1302_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1503_7" HREF="terminal_interface-curses__ads.htm#ref_1303_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1504_7" HREF="terminal_interface-curses__ads.htm#ref_1304_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1506_16">Pnoutrefresh</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1507_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1508_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1509_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1510_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1511_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1512_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1513_10" HREF="terminal_interface-curses__adb.htm#ref_1506_16">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1483_16">Prefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1454_7">Pad</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1455_7">Source_Top_Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1456_7">Source_Left_Column</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1457_7">Destination_Top_Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1458_7">Destination_Left_Column</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1459_7">Destination_Bottom_Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1460_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1453_14">Refresh</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1505_14" HREF="terminal_interface-curses__ads.htm#ref_1465_14">Refresh_Without_Update</A></span>
-+ (<span class="symbol"><A NAME="ref_1506_7" HREF="terminal_interface-curses__ads.htm#ref_1466_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1507_7" HREF="terminal_interface-curses__ads.htm#ref_1467_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1508_7" HREF="terminal_interface-curses__ads.htm#ref_1468_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1509_7" HREF="terminal_interface-curses__ads.htm#ref_1469_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1510_7" HREF="terminal_interface-curses__ads.htm#ref_1470_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1511_7" HREF="terminal_interface-curses__ads.htm#ref_1471_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1512_7" HREF="terminal_interface-curses__ads.htm#ref_1472_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1514_16">Pnoutrefresh</A></span>
-+ (<span class="symbol"><A NAME="ref_1515_10" HREF="terminal_interface-curses__adb.htm#ref_1514_16">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1516_10" HREF="terminal_interface-curses__adb.htm#ref_1514_16">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1517_10" HREF="terminal_interface-curses__adb.htm#ref_1514_16">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1518_10" HREF="terminal_interface-curses__adb.htm#ref_1514_16">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1519_10" HREF="terminal_interface-curses__adb.htm#ref_1514_16">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1520_10" HREF="terminal_interface-curses__adb.htm#ref_1514_16">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1521_10" HREF="terminal_interface-curses__adb.htm#ref_1514_16">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Pnoutrefresh, "pnoutrefresh");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1506_16">Pnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1298_7">Pad</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1299_7">Source_Top_Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1300_7">Source_Left_Column</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1301_7">Destination_Top_Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1302_7">Destination_Left_Column</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1303_7">Destination_Bottom_Row</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1304_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1297_14">Refresh_Without_Update</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1527_14" HREF="terminal_interface-curses__ads.htm#ref_1309_14">Add_Character_To_Pad_And_Echo_It</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1528_7" HREF="terminal_interface-curses__ads.htm#ref_1310_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1529_7" HREF="terminal_interface-curses__ads.htm#ref_1311_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>)
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1514_16">Pnoutrefresh</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1466_7">Pad</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1467_7">Source_Top_Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1468_7">Source_Left_Column</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1469_7">Destination_Top_Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1470_7">Destination_Left_Column</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1471_7">Destination_Bottom_Row</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1472_7">Destination_Right_Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1465_14">Refresh_Without_Update</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1536_14" HREF="terminal_interface-curses__ads.htm#ref_1477_14">Add_Character_To_Pad_And_Echo_It</A></span>
-+ (<span class="symbol"><A NAME="ref_1537_7" HREF="terminal_interface-curses__ads.htm#ref_1478_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1538_7" HREF="terminal_interface-curses__ads.htm#ref_1479_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1531_16">Pechochar</A></FONT> (<FONT COLOR=red><A NAME="ref_1531_27" HREF="terminal_interface-curses__adb.htm#ref_1531_16">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1531_41" HREF="terminal_interface-curses__adb.htm#ref_1531_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1540_16">Pechochar</A></span> (<span class="symbol"><A NAME="ref_1540_27" HREF="terminal_interface-curses__adb.htm#ref_1540_16">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1540_41" HREF="terminal_interface-curses__adb.htm#ref_1540_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Pechochar, "pechochar");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1531_16">Pechochar</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1310_7">Pad</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1311_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1540_16">Pechochar</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1478_7">Pad</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1479_7">Ch</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1309_14">Add_Character_To_Pad_And_Echo_It</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1477_14">Add_Character_To_Pad_And_Echo_It</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1540_14" HREF="terminal_interface-curses__ads.htm#ref_1314_14">Add_Character_To_Pad_And_Echo_It</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1541_7" HREF="terminal_interface-curses__ads.htm#ref_1315_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1542_7" HREF="terminal_interface-curses__ads.htm#ref_1316_7">Ch</A></FONT> : Character)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1309_14">Add_Character_To_Pad_And_Echo_It</A>
-- (<A HREF="terminal_interface-curses__ads.htm#ref_1315_7">Pad</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1316_7">Ch</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1314_14">Add_Character_To_Pad_And_Echo_It</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1552_14" HREF="terminal_interface-curses__ads.htm#ref_1324_14">Scroll</A></FONT> (<FONT COLOR=red><A NAME="ref_1552_22" HREF="terminal_interface-curses__ads.htm#ref_1324_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1553_22" HREF="terminal_interface-curses__ads.htm#ref_1325_22">Amount</A></FONT> : Integer := 1)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1549_14" HREF="terminal_interface-curses__ads.htm#ref_1482_14">Add_Character_To_Pad_And_Echo_It</A></span>
-+ (<span class="symbol"><A NAME="ref_1550_7" HREF="terminal_interface-curses__ads.htm#ref_1483_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1551_7" HREF="terminal_interface-curses__ads.htm#ref_1484_7">Ch</A></span> : Character)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1477_14">Add_Character_To_Pad_And_Echo_It</A>
-+ (<A HREF="terminal_interface-curses__ads.htm#ref_1483_7">Pad</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>'(<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1484_7">Ch</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1482_14">Add_Character_To_Pad_And_Echo_It</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1561_14" HREF="terminal_interface-curses__ads.htm#ref_1492_14">Scroll</A></span> (<span class="symbol"><A NAME="ref_1561_22" HREF="terminal_interface-curses__ads.htm#ref_1492_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1562_22" HREF="terminal_interface-curses__ads.htm#ref_1493_22">Amount</A></span> : Integer := 1)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1555_16">Wscrl</A></FONT> (<FONT COLOR=red><A NAME="ref_1555_23" HREF="terminal_interface-curses__adb.htm#ref_1555_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1555_37" HREF="terminal_interface-curses__adb.htm#ref_1555_16">N</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1564_16">Wscrl</A></span> (<span class="symbol"><A NAME="ref_1564_23" HREF="terminal_interface-curses__adb.htm#ref_1564_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1564_37" HREF="terminal_interface-curses__adb.htm#ref_1564_16">N</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wscrl, "wscrl");
-
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1555_16">Wscrl</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1324_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1325_22">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1564_16">Wscrl</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1492_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1493_22">Amount</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1324_14">Scroll</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1492_14">Scroll</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1565_14" HREF="terminal_interface-curses__ads.htm#ref_1336_14">Delete_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_1565_32" HREF="terminal_interface-curses__ads.htm#ref_1336_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1574_14" HREF="terminal_interface-curses__ads.htm#ref_1504_14">Delete_Character</A></span> (<span class="symbol"><A NAME="ref_1574_32" HREF="terminal_interface-curses__ads.htm#ref_1504_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1567_16">Wdelch</A></FONT> (<FONT COLOR=red><A NAME="ref_1567_24" HREF="terminal_interface-curses__adb.htm#ref_1567_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1576_16">Wdelch</A></span> (<span class="symbol"><A NAME="ref_1576_24" HREF="terminal_interface-curses__adb.htm#ref_1576_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wdelch, "wdelch");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1567_16">Wdelch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1336_32">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1576_16">Wdelch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1504_32">Win</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1336_14">Delete_Character</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1504_14">Delete_Character</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1575_14" HREF="terminal_interface-curses__ads.htm#ref_1341_14">Delete_Character</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1576_7" HREF="terminal_interface-curses__ads.htm#ref_1342_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1577_7" HREF="terminal_interface-curses__ads.htm#ref_1343_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1578_7" HREF="terminal_interface-curses__ads.htm#ref_1344_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1580_16">Mvwdelch</A></FONT> (<FONT COLOR=red><A NAME="ref_1580_26" HREF="terminal_interface-curses__adb.htm#ref_1580_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1581_26" HREF="terminal_interface-curses__adb.htm#ref_1580_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1582_26" HREF="terminal_interface-curses__adb.htm#ref_1580_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1584_14" HREF="terminal_interface-curses__ads.htm#ref_1509_14">Delete_Character</A></span>
-+ (<span class="symbol"><A NAME="ref_1585_7" HREF="terminal_interface-curses__ads.htm#ref_1510_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1586_7" HREF="terminal_interface-curses__ads.htm#ref_1511_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1587_7" HREF="terminal_interface-curses__ads.htm#ref_1512_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1589_16">Mvwdelch</A></span> (<span class="symbol"><A NAME="ref_1589_26" HREF="terminal_interface-curses__adb.htm#ref_1589_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1590_26" HREF="terminal_interface-curses__adb.htm#ref_1589_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1591_26" HREF="terminal_interface-curses__adb.htm#ref_1589_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Mvwdelch, "mvwdelch");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1580_16">Mvwdelch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1342_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1343_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1344_7">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1589_16">Mvwdelch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1510_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1511_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1512_7">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1341_14">Delete_Character</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1590_13" HREF="terminal_interface-curses__ads.htm#ref_1354_13">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1590_19" HREF="terminal_interface-curses__ads.htm#ref_1354_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1509_14">Delete_Character</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1599_13" HREF="terminal_interface-curses__ads.htm#ref_1522_13">Peek</A></span> (<span class="symbol"><A NAME="ref_1599_19" HREF="terminal_interface-curses__ads.htm#ref_1522_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1593_16">Winch</A></FONT> (<FONT COLOR=red><A NAME="ref_1593_23" HREF="terminal_interface-curses__adb.htm#ref_1593_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1602_16">Winch</A></span> (<span class="symbol"><A NAME="ref_1602_23" HREF="terminal_interface-curses__adb.htm#ref_1602_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Winch, "winch");
- <b>begin</b>
-- <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1593_16">Winch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1354_19">Win</A>));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1354_13">Peek</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1602_16">Winch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1522_19">Win</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1522_13">Peek</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1599_13" HREF="terminal_interface-curses__ads.htm#ref_1360_13">Peek</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1600_7" HREF="terminal_interface-curses__ads.htm#ref_1361_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1601_7" HREF="terminal_interface-curses__ads.htm#ref_1362_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1602_7" HREF="terminal_interface-curses__ads.htm#ref_1363_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1604_16">Mvwinch</A></FONT> (<FONT COLOR=red><A NAME="ref_1604_25" HREF="terminal_interface-curses__adb.htm#ref_1604_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1605_25" HREF="terminal_interface-curses__adb.htm#ref_1604_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1606_25" HREF="terminal_interface-curses__adb.htm#ref_1604_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1608_13" HREF="terminal_interface-curses__ads.htm#ref_1528_13">Peek</A></span>
-+ (<span class="symbol"><A NAME="ref_1609_7" HREF="terminal_interface-curses__ads.htm#ref_1529_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1610_7" HREF="terminal_interface-curses__ads.htm#ref_1530_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1611_7" HREF="terminal_interface-curses__ads.htm#ref_1531_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1613_16">Mvwinch</A></span> (<span class="symbol"><A NAME="ref_1613_25" HREF="terminal_interface-curses__adb.htm#ref_1613_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1614_25" HREF="terminal_interface-curses__adb.htm#ref_1613_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1615_25" HREF="terminal_interface-curses__adb.htm#ref_1613_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Mvwinch, "mvwinch");
- <b>begin</b>
-- <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1604_16">Mvwinch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1361_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1362_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1363_7">Column</A>)));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1360_13">Peek</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1612_14" HREF="terminal_interface-curses__ads.htm#ref_1373_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1612_22" HREF="terminal_interface-curses__ads.htm#ref_1373_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1613_22" HREF="terminal_interface-curses__ads.htm#ref_1374_22">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1613_16">Mvwinch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1529_7">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1530_7">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1531_7">Column</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1528_13">Peek</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1621_14" HREF="terminal_interface-curses__ads.htm#ref_1541_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1621_22" HREF="terminal_interface-curses__ads.htm#ref_1541_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1622_22" HREF="terminal_interface-curses__ads.htm#ref_1542_22">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1615_16">Winsch</A></FONT> (<FONT COLOR=red><A NAME="ref_1615_24" HREF="terminal_interface-curses__adb.htm#ref_1615_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_1615_38" HREF="terminal_interface-curses__adb.htm#ref_1615_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1624_16">Winsch</A></span> (<span class="symbol"><A NAME="ref_1624_24" HREF="terminal_interface-curses__adb.htm#ref_1624_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>; <span class="symbol"><A NAME="ref_1624_38" HREF="terminal_interface-curses__adb.htm#ref_1624_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Winsch, "winsch");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1615_16">Winsch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1373_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1374_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1624_16">Winsch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1541_22">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1542_22">Ch</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1373_14">Insert</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1541_14">Insert</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1623_14" HREF="terminal_interface-curses__ads.htm#ref_1379_14">Insert</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1624_7" HREF="terminal_interface-curses__ads.htm#ref_1379_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1625_7" HREF="terminal_interface-curses__ads.htm#ref_1380_22">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1626_7" HREF="terminal_interface-curses__ads.htm#ref_1381_22">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1627_7" HREF="terminal_interface-curses__ads.htm#ref_1382_22">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1629_16">Mvwinsch</A></FONT> (<FONT COLOR=red><A NAME="ref_1629_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1630_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Lin</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1631_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1632_26" HREF="terminal_interface-curses__adb.htm#ref_1629_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1632_14" HREF="terminal_interface-curses__ads.htm#ref_1547_14">Insert</A></span>
-+ (<span class="symbol"><A NAME="ref_1633_7" HREF="terminal_interface-curses__ads.htm#ref_1547_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1634_7" HREF="terminal_interface-curses__ads.htm#ref_1548_22">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1635_7" HREF="terminal_interface-curses__ads.htm#ref_1549_22">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1636_7" HREF="terminal_interface-curses__ads.htm#ref_1550_22">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1638_16">Mvwinsch</A></span> (<span class="symbol"><A NAME="ref_1638_26" HREF="terminal_interface-curses__adb.htm#ref_1638_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1639_26" HREF="terminal_interface-curses__adb.htm#ref_1638_16">Lin</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1640_26" HREF="terminal_interface-curses__adb.htm#ref_1638_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1641_26" HREF="terminal_interface-curses__adb.htm#ref_1638_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Mvwinsch, "mvwinsch");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1629_16">Mvwinsch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1379_22">Win</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1380_22">Line</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1381_22">Column</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1382_22">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1379_14">Insert</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1643_14" HREF="terminal_interface-curses__ads.htm#ref_1391_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1643_22" HREF="terminal_interface-curses__ads.htm#ref_1391_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1644_22" HREF="terminal_interface-curses__ads.htm#ref_1392_22">Str</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_1645_22" HREF="terminal_interface-curses__ads.htm#ref_1393_22">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1647_16">Winsnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1647_26" HREF="terminal_interface-curses__adb.htm#ref_1647_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1648_26" HREF="terminal_interface-curses__adb.htm#ref_1647_16">Str</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_1649_26" HREF="terminal_interface-curses__adb.htm#ref_1647_16">Len</A></FONT> : Integer := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1638_16">Mvwinsch</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1547_22">Win</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1548_22">Line</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1549_22">Column</A>),
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1550_22">Ch</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1547_14">Insert</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1653_14" HREF="terminal_interface-curses__ads.htm#ref_1559_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1653_22" HREF="terminal_interface-curses__ads.htm#ref_1559_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1654_22" HREF="terminal_interface-curses__ads.htm#ref_1560_22">Str</A></span> : String;
-+ <span class="symbol"><A NAME="ref_1655_22" HREF="terminal_interface-curses__ads.htm#ref_1561_22">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1657_16">Winsnstr</A></span> (<span class="symbol"><A NAME="ref_1657_26" HREF="terminal_interface-curses__adb.htm#ref_1657_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1658_26" HREF="terminal_interface-curses__adb.htm#ref_1657_16">Str</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_1659_26" HREF="terminal_interface-curses__adb.htm#ref_1657_16">Len</A></span> : Integer := -1) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Winsnstr, "winsnstr");
-
-- <FONT COLOR=red><A NAME="ref_1652_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1392_22">Str</A>'Length);
-- <FONT COLOR=red><A NAME="ref_1653_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_1662_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1560_22">Str</A>'Length);
-+ <span class="symbol"><A NAME="ref_1663_7">Length</A></span> : size_t;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1392_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1652_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1653_7">Length</A>);
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1647_16">Winsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1391_22">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1652_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1393_22">Len</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1391_14">Insert</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1661_14" HREF="terminal_interface-curses__ads.htm#ref_1400_14">Insert</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1662_7" HREF="terminal_interface-curses__ads.htm#ref_1400_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1663_7" HREF="terminal_interface-curses__ads.htm#ref_1401_22">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1664_7" HREF="terminal_interface-curses__ads.htm#ref_1402_22">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1665_7" HREF="terminal_interface-curses__ads.htm#ref_1403_22">Str</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_1666_7" HREF="terminal_interface-curses__ads.htm#ref_1404_22">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1668_16">Mvwinsnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1668_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1669_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1670_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1671_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Str</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_1672_28" HREF="terminal_interface-curses__adb.htm#ref_1668_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1560_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1662_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1663_7">Length</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1657_16">Winsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1559_22">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1662_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1561_22">Len</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1559_14">Insert</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1671_14" HREF="terminal_interface-curses__ads.htm#ref_1568_14">Insert</A></span>
-+ (<span class="symbol"><A NAME="ref_1672_7" HREF="terminal_interface-curses__ads.htm#ref_1568_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1673_7" HREF="terminal_interface-curses__ads.htm#ref_1569_22">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1674_7" HREF="terminal_interface-curses__ads.htm#ref_1570_22">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1675_7" HREF="terminal_interface-curses__ads.htm#ref_1571_22">Str</A></span> : String;
-+ <span class="symbol"><A NAME="ref_1676_7" HREF="terminal_interface-curses__ads.htm#ref_1572_22">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1678_16">Mvwinsnstr</A></span> (<span class="symbol"><A NAME="ref_1678_28" HREF="terminal_interface-curses__adb.htm#ref_1678_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1679_28" HREF="terminal_interface-curses__adb.htm#ref_1678_16">Line</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1680_28" HREF="terminal_interface-curses__adb.htm#ref_1678_16">Column</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1681_28" HREF="terminal_interface-curses__adb.htm#ref_1678_16">Str</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_1682_28" HREF="terminal_interface-curses__adb.htm#ref_1678_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Mvwinsnstr, "mvwinsnstr");
-
-- <FONT COLOR=red><A NAME="ref_1675_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1403_22">Str</A>'Length);
-- <FONT COLOR=red><A NAME="ref_1676_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_1685_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1571_22">Str</A>'Length);
-+ <span class="symbol"><A NAME="ref_1686_7">Length</A></span> : size_t;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1403_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1675_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1676_7">Length</A>);
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1668_16">Mvwinsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1400_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1401_22">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1402_22">Column</A>), <A HREF="terminal_interface-curses__adb.htm#ref_1675_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1404_22">Len</A>))
-- = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1400_14">Insert</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1685_14" HREF="terminal_interface-curses__ads.htm#ref_1416_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1685_20" HREF="terminal_interface-curses__ads.htm#ref_1416_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1686_20" HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_1687_20" HREF="terminal_interface-curses__ads.htm#ref_1418_20">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1689_16">Winnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1689_25" HREF="terminal_interface-curses__adb.htm#ref_1689_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1690_25" HREF="terminal_interface-curses__adb.htm#ref_1689_16">Str</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_1691_25" HREF="terminal_interface-curses__adb.htm#ref_1689_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1571_22">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1685_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1686_7">Length</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1678_16">Mvwinsnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1568_22">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1569_22">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1570_22">Column</A>), <A HREF="terminal_interface-curses__adb.htm#ref_1685_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1572_22">Len</A>))
-+ = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1568_14">Insert</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1696_14" HREF="terminal_interface-curses__ads.htm#ref_1584_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1696_20" HREF="terminal_interface-curses__ads.htm#ref_1584_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1697_20" HREF="terminal_interface-curses__ads.htm#ref_1585_20">Str</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_1698_20" HREF="terminal_interface-curses__ads.htm#ref_1586_20">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1700_16">Winnstr</A></span> (<span class="symbol"><A NAME="ref_1700_25" HREF="terminal_interface-curses__adb.htm#ref_1700_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1701_25" HREF="terminal_interface-curses__adb.htm#ref_1700_16">Str</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_1702_25" HREF="terminal_interface-curses__adb.htm#ref_1700_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Winnstr, "winnstr");
-
-- <FONT COLOR=red><A NAME="ref_1694_7">N</A></FONT> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1418_20">Len</A>;
-- <FONT COLOR=red><A NAME="ref_1695_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Length);
-- <FONT COLOR=red><A NAME="ref_1696_7">Cnt</A></FONT> : Natural;
-+ <span class="symbol"><A NAME="ref_1705_7">N</A></span> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1586_20">Len</A>;
-+ <span class="symbol"><A NAME="ref_1706_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1585_20">Str</A>'Length);
-+ <span class="symbol"><A NAME="ref_1707_7">Cnt</A></span> : Natural;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A> &lt; 0 <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Length;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1705_7">N</A> &lt; 0 <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1705_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1585_20">Str</A>'Length;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Length <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1705_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1585_20">Str</A>'Length <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses__adb.htm#ref_1695_7">Txt</A> (0) := <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char'First;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1689_16">Winnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1416_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1695_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1694_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- To_Ada (<A HREF="terminal_interface-curses__adb.htm#ref_1695_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1696_7">Cnt</A>, True);
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1696_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Length <b>then</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1696_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1417_20">Str</A>'Last) := (<b>others</b> =&gt; ' ');
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1416_14">Peek</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1714_14" HREF="terminal_interface-curses__ads.htm#ref_1425_14">Peek</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1715_7" HREF="terminal_interface-curses__ads.htm#ref_1425_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1716_7" HREF="terminal_interface-curses__ads.htm#ref_1426_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1717_7" HREF="terminal_interface-curses__ads.htm#ref_1427_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1718_7" HREF="terminal_interface-curses__ads.htm#ref_1428_20">Str</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_1719_7" HREF="terminal_interface-curses__ads.htm#ref_1429_20">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1425_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1426_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1427_20">Column</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1416_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1425_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1428_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1429_20">Len</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1425_14">Peek</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1726_14" HREF="terminal_interface-curses__ads.htm#ref_1440_14">Peek</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1727_7" HREF="terminal_interface-curses__ads.htm#ref_1440_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1728_7" HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Attributed_String</A>;
-- <FONT COLOR=red><A NAME="ref_1729_7" HREF="terminal_interface-curses__ads.htm#ref_1442_20">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1731_16">Winchnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1731_27" HREF="terminal_interface-curses__adb.htm#ref_1731_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1732_27" HREF="terminal_interface-curses__adb.htm#ref_1731_16">Str</A></FONT> : chtype_array; <FONT COLOR=green><EM>-- out</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_1733_27" HREF="terminal_interface-curses__adb.htm#ref_1731_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1706_7">Txt</A> (0) := <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char'First;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1700_16">Winnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1584_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1706_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1705_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ To_Ada (<A HREF="terminal_interface-curses__adb.htm#ref_1706_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1585_20">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1707_7">Cnt</A>, True);
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1707_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1585_20">Str</A>'Length <b>then</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1585_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1585_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1707_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1585_20">Str</A>'Last) := (<b>others</b> =&gt; ' ');
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1584_14">Peek</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1725_14" HREF="terminal_interface-curses__ads.htm#ref_1593_14">Peek</A></span>
-+ (<span class="symbol"><A NAME="ref_1726_7" HREF="terminal_interface-curses__ads.htm#ref_1593_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1727_7" HREF="terminal_interface-curses__ads.htm#ref_1594_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1728_7" HREF="terminal_interface-curses__ads.htm#ref_1595_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1729_7" HREF="terminal_interface-curses__ads.htm#ref_1596_20">Str</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_1730_7" HREF="terminal_interface-curses__ads.htm#ref_1597_20">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1593_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1594_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1595_20">Column</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1584_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1593_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1596_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1597_20">Len</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1593_14">Peek</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1737_14" HREF="terminal_interface-curses__ads.htm#ref_1608_14">Peek</A></span>
-+ (<span class="symbol"><A NAME="ref_1738_7" HREF="terminal_interface-curses__ads.htm#ref_1608_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1739_7" HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Attributed_String</A>;
-+ <span class="symbol"><A NAME="ref_1740_7" HREF="terminal_interface-curses__ads.htm#ref_1610_20">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1742_16">Winchnstr</A></span> (<span class="symbol"><A NAME="ref_1742_27" HREF="terminal_interface-curses__adb.htm#ref_1742_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1743_27" HREF="terminal_interface-curses__adb.htm#ref_1742_16">Str</A></span> : chtype_array; <span class="comment"><EM>-- out</EM></span>
-+ <span class="symbol"><A NAME="ref_1744_27" HREF="terminal_interface-curses__adb.htm#ref_1742_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Winchnstr, "winchnstr");
-
-- <FONT COLOR=red><A NAME="ref_1736_7">N</A></FONT> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1442_20">Len</A>;
-- <FONT COLOR=red><A NAME="ref_1737_7">Txt</A></FONT> : <b>constant</b> chtype_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Length)
-- := (0 =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>);
-- <FONT COLOR=red><A NAME="ref_1739_7">Cnt</A></FONT> : Natural := 0;
-+ <span class="symbol"><A NAME="ref_1747_7">N</A></span> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1610_20">Len</A>;
-+ <span class="symbol"><A NAME="ref_1748_7">Txt</A></span> : <b>constant</b> chtype_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A>'Length)
-+ := (0 =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>);
-+ <span class="symbol"><A NAME="ref_1750_7">Cnt</A></span> : Natural := 0;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A> &lt; 0 <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Length;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1747_7">N</A> &lt; 0 <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1747_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A>'Length;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Length <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1747_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A>'Length <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1731_16">Winchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1440_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1737_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1736_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1742_16">Winchnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1608_20">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1748_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1747_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>for</b> <FONT COLOR=red><A NAME="ref_1750_11">To</A></FONT> <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'<b>Range</b> <b>loop</b>
-- <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses__adb.htm#ref_1737_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A>)) = <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1750_11">To</A>) := <A HREF="terminal_interface-curses__adb.htm#ref_1737_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A>));
-- <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A> + 1;
-+ <b>for</b> <span class="symbol"><A NAME="ref_1761_11">To</A></span> <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A>'<b>Range</b> <b>loop</b>
-+ <b>exit</b> <b>when</b> <A HREF="terminal_interface-curses__adb.htm#ref_1748_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#ref_1750_7">Cnt</A>)) = <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1761_11">To</A>) := <A HREF="terminal_interface-curses__adb.htm#ref_1748_7">Txt</A> (size_t (<A HREF="terminal_interface-curses__adb.htm#ref_1750_7">Cnt</A>));
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1750_7">Cnt</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1750_7">Cnt</A> + 1;
- <b>end</b> <b>loop</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Length <b>then</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1739_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1441_20">Str</A>'Last) :=
-- (<b>others</b> =&gt; (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; ' ',
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>));
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1440_14">Peek</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1763_14" HREF="terminal_interface-curses__ads.htm#ref_1449_14">Peek</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1764_7" HREF="terminal_interface-curses__ads.htm#ref_1449_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1765_7" HREF="terminal_interface-curses__ads.htm#ref_1450_20">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1766_7" HREF="terminal_interface-curses__ads.htm#ref_1451_20">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1767_7" HREF="terminal_interface-curses__ads.htm#ref_1452_20">Str</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Attributed_String</A>;
-- <FONT COLOR=red><A NAME="ref_1768_7" HREF="terminal_interface-curses__ads.htm#ref_1453_20">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1449_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1450_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1451_20">Column</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1440_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1449_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1452_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1453_20">Len</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1449_14">Peek</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1775_14" HREF="terminal_interface-curses__ads.htm#ref_1465_14">Get</A></FONT> (<FONT COLOR=red><A NAME="ref_1775_19" HREF="terminal_interface-curses__ads.htm#ref_1465_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1776_19" HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_1777_19" HREF="terminal_interface-curses__ads.htm#ref_1467_19">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1779_16">Wgetnstr</A></FONT> (<FONT COLOR=red><A NAME="ref_1779_26" HREF="terminal_interface-curses__adb.htm#ref_1779_16">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1780_26" HREF="terminal_interface-curses__adb.htm#ref_1779_16">Str</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_1781_26" HREF="terminal_interface-curses__adb.htm#ref_1779_16">Len</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1750_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A>'Length <b>then</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1750_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1609_20">Str</A>'Last) :=
-+ (<b>others</b> =&gt; (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; ' ',
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>));
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1608_14">Peek</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1774_14" HREF="terminal_interface-curses__ads.htm#ref_1617_14">Peek</A></span>
-+ (<span class="symbol"><A NAME="ref_1775_7" HREF="terminal_interface-curses__ads.htm#ref_1617_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1776_7" HREF="terminal_interface-curses__ads.htm#ref_1618_20">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1777_7" HREF="terminal_interface-curses__ads.htm#ref_1619_20">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1778_7" HREF="terminal_interface-curses__ads.htm#ref_1620_20">Str</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Attributed_String</A>;
-+ <span class="symbol"><A NAME="ref_1779_7" HREF="terminal_interface-curses__ads.htm#ref_1621_20">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1617_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1618_20">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1619_20">Column</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1608_14">Peek</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1617_20">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1620_20">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1621_20">Len</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1617_14">Peek</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1786_14" HREF="terminal_interface-curses__ads.htm#ref_1633_14">Get</A></span> (<span class="symbol"><A NAME="ref_1786_19" HREF="terminal_interface-curses__ads.htm#ref_1633_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1787_19" HREF="terminal_interface-curses__ads.htm#ref_1634_19">Str</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_1788_19" HREF="terminal_interface-curses__ads.htm#ref_1635_19">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1790_16">Wgetnstr</A></span> (<span class="symbol"><A NAME="ref_1790_26" HREF="terminal_interface-curses__adb.htm#ref_1790_16">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1791_26" HREF="terminal_interface-curses__adb.htm#ref_1790_16">Str</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_1792_26" HREF="terminal_interface-curses__adb.htm#ref_1790_16">Len</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Wgetnstr, "wgetnstr");
-
-- <FONT COLOR=red><A NAME="ref_1784_7">N</A></FONT> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1467_19">Len</A>;
-- <FONT COLOR=red><A NAME="ref_1785_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Length);
-- <FONT COLOR=red><A NAME="ref_1786_7">Cnt</A></FONT> : Natural;
-+ <span class="symbol"><A NAME="ref_1795_7">N</A></span> : Integer := <A HREF="terminal_interface-curses__ads.htm#ref_1635_19">Len</A>;
-+ <span class="symbol"><A NAME="ref_1796_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1634_19">Str</A>'Length);
-+ <span class="symbol"><A NAME="ref_1797_7">Cnt</A></span> : Natural;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A> &lt; 0 <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Length;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1795_7">N</A> &lt; 0 <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1795_7">N</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1634_19">Str</A>'Length;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Length <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1795_7">N</A> &gt; <A HREF="terminal_interface-curses__ads.htm#ref_1634_19">Str</A>'Length <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses__adb.htm#ref_1785_7">Txt</A> (0) := <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char'First;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1779_16">Wgetnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1465_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1785_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1784_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- To_Ada (<A HREF="terminal_interface-curses__adb.htm#ref_1785_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1786_7">Cnt</A>, True);
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1786_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Length <b>then</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1786_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1466_19">Str</A>'Last) := (<b>others</b> =&gt; ' ');
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1465_14">Get</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1804_14" HREF="terminal_interface-curses__ads.htm#ref_1476_14">Get</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1805_7" HREF="terminal_interface-curses__ads.htm#ref_1476_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1806_7" HREF="terminal_interface-curses__ads.htm#ref_1477_19">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1807_7" HREF="terminal_interface-curses__ads.htm#ref_1478_19">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1808_7" HREF="terminal_interface-curses__ads.htm#ref_1479_19">Str</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_1809_7" HREF="terminal_interface-curses__ads.htm#ref_1480_19">Len</A></FONT> : Integer := -1)
-- <b>is</b>
-- <b>begin</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1476_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1477_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1478_19">Column</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1465_14">Get</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1476_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1479_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1480_19">Len</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1476_14">Get</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1816_14" HREF="terminal_interface-curses__ads.htm#ref_1501_14">Init_Soft_Label_Keys</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1817_7" HREF="terminal_interface-curses__ads.htm#ref_1502_7">Format</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1493_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1493_35">Three_Two_Three</A>)
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1796_7">Txt</A> (0) := <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.char'First;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1790_16">Wgetnstr</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1633_19">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1796_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1795_7">N</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ To_Ada (<A HREF="terminal_interface-curses__adb.htm#ref_1796_7">Txt</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1634_19">Str</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1797_7">Cnt</A>, True);
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1797_7">Cnt</A> &lt; <A HREF="terminal_interface-curses__ads.htm#ref_1634_19">Str</A>'Length <b>then</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1634_19">Str</A> ((<A HREF="terminal_interface-curses__ads.htm#ref_1634_19">Str</A>'First + <A HREF="terminal_interface-curses__adb.htm#ref_1797_7">Cnt</A>) .. <A HREF="terminal_interface-curses__ads.htm#ref_1634_19">Str</A>'Last) := (<b>others</b> =&gt; ' ');
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1633_14">Get</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1815_14" HREF="terminal_interface-curses__ads.htm#ref_1644_14">Get</A></span>
-+ (<span class="symbol"><A NAME="ref_1816_7" HREF="terminal_interface-curses__ads.htm#ref_1644_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1817_7" HREF="terminal_interface-curses__ads.htm#ref_1645_19">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1818_7" HREF="terminal_interface-curses__ads.htm#ref_1646_19">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1819_7" HREF="terminal_interface-curses__ads.htm#ref_1647_19">Str</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_1820_7" HREF="terminal_interface-curses__ads.htm#ref_1648_19">Len</A></span> : Integer := -1)
-+ <b>is</b>
-+ <b>begin</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1644_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1645_19">Line</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1646_19">Column</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1633_14">Get</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1644_19">Win</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1647_19">Str</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1648_19">Len</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1644_14">Get</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1827_14" HREF="terminal_interface-curses__ads.htm#ref_1669_14">Init_Soft_Label_Keys</A></span>
-+ (<span class="symbol"><A NAME="ref_1828_7" HREF="terminal_interface-curses__ads.htm#ref_1670_7">Format</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1661_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1661_35">Three_Two_Three</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1819_16">Slk_Init</A></FONT> (<FONT COLOR=red><A NAME="ref_1819_26" HREF="terminal_interface-curses__adb.htm#ref_1819_16">Fmt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1830_16">Slk_Init</A></span> (<span class="symbol"><A NAME="ref_1830_26" HREF="terminal_interface-curses__adb.htm#ref_1830_16">Fmt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Init, "slk_init");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1819_16">Slk_Init</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1493_9">Soft_Label_Key_Format</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1502_7">Format</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1830_16">Slk_Init</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1661_9">Soft_Label_Key_Format</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1670_7">Format</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1501_14">Init_Soft_Label_Keys</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1669_14">Init_Soft_Label_Keys</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1827_14" HREF="terminal_interface-curses__ads.htm#ref_1507_14">Set_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1827_34" HREF="terminal_interface-curses__ads.htm#ref_1507_34">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>;
-- <FONT COLOR=red><A NAME="ref_1828_34" HREF="terminal_interface-curses__ads.htm#ref_1508_34">Text</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_1829_34" HREF="terminal_interface-curses__ads.htm#ref_1509_34">Fmt</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1498_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1498_33">Left</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1831_16">Slk_Set</A></FONT> (<FONT COLOR=red><A NAME="ref_1831_25" HREF="terminal_interface-curses__adb.htm#ref_1831_16">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1832_25" HREF="terminal_interface-curses__adb.htm#ref_1831_16">Txt</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_1833_25" HREF="terminal_interface-curses__adb.htm#ref_1831_16">Fmt</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1838_14" HREF="terminal_interface-curses__ads.htm#ref_1675_14">Set_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1838_34" HREF="terminal_interface-curses__ads.htm#ref_1675_34">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1665_9">Label_Number</A>;
-+ <span class="symbol"><A NAME="ref_1839_34" HREF="terminal_interface-curses__ads.htm#ref_1676_34">Text</A></span> : String;
-+ <span class="symbol"><A NAME="ref_1840_34" HREF="terminal_interface-curses__ads.htm#ref_1677_34">Fmt</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1666_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1666_33">Left</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1842_16">Slk_Set</A></span> (<span class="symbol"><A NAME="ref_1842_25" HREF="terminal_interface-curses__adb.htm#ref_1842_16">Label</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1843_25" HREF="terminal_interface-curses__adb.htm#ref_1842_16">Txt</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_1844_25" HREF="terminal_interface-curses__adb.htm#ref_1842_16">Fmt</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Set, "slk_set");
-
-- <FONT COLOR=red><A NAME="ref_1836_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1508_34">Text</A>'Length);
-- <FONT COLOR=red><A NAME="ref_1837_7">Len</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_1847_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1676_34">Text</A>'Length);
-+ <span class="symbol"><A NAME="ref_1848_7">Len</A></span> : size_t;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1508_34">Text</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1836_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1837_7">Len</A>);
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1831_16">Slk_Set</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1507_34">Label</A>), <A HREF="terminal_interface-curses__adb.htm#ref_1836_7">Txt</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1498_9">Label_Justification</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1509_34">Fmt</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1676_34">Text</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1847_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_1848_7">Len</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1842_16">Slk_Set</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1675_34">Label</A>), <A HREF="terminal_interface-curses__adb.htm#ref_1847_7">Txt</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1666_9">Label_Justification</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1677_34">Fmt</A>))) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1507_14">Set_Soft_Label_Key</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1675_14">Set_Soft_Label_Key</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1846_14" HREF="terminal_interface-curses__ads.htm#ref_1514_14">Refresh_Soft_Label_Keys</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1858_14" HREF="terminal_interface-curses__ads.htm#ref_1682_14">Refresh_Soft_Label_Keys</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1848_16">Slk_Refresh</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1860_16">Slk_Refresh</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Refresh, "slk_refresh");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1848_16">Slk_Refresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1860_16">Slk_Refresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1514_14">Refresh_Soft_Label_Keys</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1682_14">Refresh_Soft_Label_Keys</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1856_14" HREF="terminal_interface-curses__ads.htm#ref_1519_14">Refresh_Soft_Label_Keys_Without_Update</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1868_14" HREF="terminal_interface-curses__ads.htm#ref_1687_14">Refresh_Soft_Label_Keys_Without_Update</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1858_16">Slk_Noutrefresh</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1870_16">Slk_Noutrefresh</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Noutrefresh, "slk_noutrefresh");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1858_16">Slk_Noutrefresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1870_16">Slk_Noutrefresh</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1519_14">Refresh_Soft_Label_Keys_Without_Update</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1687_14">Refresh_Soft_Label_Keys_Without_Update</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1866_14" HREF="terminal_interface-curses__ads.htm#ref_1524_14">Get_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1866_34" HREF="terminal_interface-curses__ads.htm#ref_1524_34">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>;
-- <FONT COLOR=red><A NAME="ref_1867_34" HREF="terminal_interface-curses__ads.htm#ref_1525_34">Text</A></FONT> : <b>out</b> String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1878_14" HREF="terminal_interface-curses__ads.htm#ref_1692_14">Get_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1878_34" HREF="terminal_interface-curses__ads.htm#ref_1692_34">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1665_9">Label_Number</A>;
-+ <span class="symbol"><A NAME="ref_1879_34" HREF="terminal_interface-curses__ads.htm#ref_1693_34">Text</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1869_16">Slk_Label</A></FONT> (<FONT COLOR=red><A NAME="ref_1869_27" HREF="terminal_interface-curses__adb.htm#ref_1869_16">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1881_16">Slk_Label</A></span> (<span class="symbol"><A NAME="ref_1881_27" HREF="terminal_interface-curses__adb.htm#ref_1881_16">Label</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Slk_Label, "slk_label");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1869_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1524_34">Label</A>)), <A HREF="terminal_interface-curses__ads.htm#ref_1525_34">Text</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1524_14">Get_Soft_Label_Key</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1881_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1692_34">Label</A>)), <A HREF="terminal_interface-curses__ads.htm#ref_1693_34">Text</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1692_14">Get_Soft_Label_Key</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1875_13" HREF="terminal_interface-curses__ads.htm#ref_1529_13">Get_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1875_33" HREF="terminal_interface-curses__ads.htm#ref_1529_33">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>) <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_1887_13" HREF="terminal_interface-curses__ads.htm#ref_1697_13">Get_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1887_33" HREF="terminal_interface-curses__ads.htm#ref_1697_33">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1665_9">Label_Number</A>) <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1877_16">Slk_Label</A></FONT> (<FONT COLOR=red><A NAME="ref_1877_27" HREF="terminal_interface-curses__adb.htm#ref_1877_16">Label</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1889_16">Slk_Label</A></span> (<span class="symbol"><A NAME="ref_1889_27" HREF="terminal_interface-curses__adb.htm#ref_1889_16">Label</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Slk_Label, "slk_label");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1877_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1529_33">Label</A>)));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1529_13">Get_Soft_Label_Key</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1889_16">Slk_Label</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1697_33">Label</A>)));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1697_13">Get_Soft_Label_Key</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1883_14" HREF="terminal_interface-curses__ads.htm#ref_1535_14">Clear_Soft_Label_Keys</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1895_14" HREF="terminal_interface-curses__ads.htm#ref_1703_14">Clear_Soft_Label_Keys</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1885_16">Slk_Clear</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1897_16">Slk_Clear</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Clear, "slk_clear");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1885_16">Slk_Clear</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1897_16">Slk_Clear</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1535_14">Clear_Soft_Label_Keys</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1703_14">Clear_Soft_Label_Keys</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1893_14" HREF="terminal_interface-curses__ads.htm#ref_1540_14">Restore_Soft_Label_Keys</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1905_14" HREF="terminal_interface-curses__ads.htm#ref_1708_14">Restore_Soft_Label_Keys</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1895_16">Slk_Restore</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1907_16">Slk_Restore</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Restore, "slk_restore");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1895_16">Slk_Restore</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1907_16">Slk_Restore</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1540_14">Restore_Soft_Label_Keys</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1708_14">Restore_Soft_Label_Keys</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1903_14" HREF="terminal_interface-curses__ads.htm#ref_1545_14">Touch_Soft_Label_Keys</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1915_14" HREF="terminal_interface-curses__ads.htm#ref_1713_14">Touch_Soft_Label_Keys</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1905_16">Slk_Touch</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1917_16">Slk_Touch</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Touch, "slk_touch");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1905_16">Slk_Touch</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1917_16">Slk_Touch</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1545_14">Touch_Soft_Label_Keys</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1713_14">Touch_Soft_Label_Keys</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1913_14" HREF="terminal_interface-curses__ads.htm#ref_1550_14">Switch_Soft_Label_Key_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1914_7" HREF="terminal_interface-curses__ads.htm#ref_1551_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_1915_7" HREF="terminal_interface-curses__ads.htm#ref_1552_7">On</A></FONT> : Boolean := True)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1925_14" HREF="terminal_interface-curses__ads.htm#ref_1718_14">Switch_Soft_Label_Key_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_1926_7" HREF="terminal_interface-curses__ads.htm#ref_1719_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_1927_7" HREF="terminal_interface-curses__ads.htm#ref_1720_7">On</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1917_16">Slk_Attron</A></FONT> (<FONT COLOR=red><A NAME="ref_1917_28" HREF="terminal_interface-curses__adb.htm#ref_1917_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1929_16">Slk_Attron</A></span> (<span class="symbol"><A NAME="ref_1929_28" HREF="terminal_interface-curses__adb.htm#ref_1929_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Attron, "slk_attron");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1919_16">Slk_Attroff</A></FONT> (<FONT COLOR=red><A NAME="ref_1919_29" HREF="terminal_interface-curses__adb.htm#ref_1919_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1931_16">Slk_Attroff</A></span> (<span class="symbol"><A NAME="ref_1931_29" HREF="terminal_interface-curses__adb.htm#ref_1931_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Attroff, "slk_attroff");
-
-- <FONT COLOR=red><A NAME="ref_1922_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1923_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1551_7">Attr</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-+ <span class="symbol"><A NAME="ref_1934_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_1935_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1719_7">Attr</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1552_7">On</A> <b>then</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_1922_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1917_16">Slk_Attron</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1923_7">Ch</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1720_7">On</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1934_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1929_16">Slk_Attron</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1935_7">Ch</A>);
- <b>else</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_1922_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1919_16">Slk_Attroff</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1923_7">Ch</A>));
-+ <A HREF="terminal_interface-curses__adb.htm#ref_1934_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1931_16">Slk_Attroff</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1935_7">Ch</A>);
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1922_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1934_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1550_14">Switch_Soft_Label_Key_Attributes</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1718_14">Switch_Soft_Label_Key_Attributes</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1937_14" HREF="terminal_interface-curses__ads.htm#ref_1558_14">Set_Soft_Label_Key_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1938_7" HREF="terminal_interface-curses__ads.htm#ref_1559_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_1939_7" HREF="terminal_interface-curses__ads.htm#ref_1560_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1949_14" HREF="terminal_interface-curses__ads.htm#ref_1726_14">Set_Soft_Label_Key_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_1950_7" HREF="terminal_interface-curses__ads.htm#ref_1727_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_1951_7" HREF="terminal_interface-curses__ads.htm#ref_1728_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1941_16">Slk_Attrset</A></FONT> (<FONT COLOR=red><A NAME="ref_1941_29" HREF="terminal_interface-curses__adb.htm#ref_1941_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1953_16">Slk_Attrset</A></span> (<span class="symbol"><A NAME="ref_1953_29" HREF="terminal_interface-curses__adb.htm#ref_1953_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Attrset, "slk_attrset");
-
-- <FONT COLOR=red><A NAME="ref_1944_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1559_7">Attr</A>,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1560_7">Color</A>);
-+ <span class="symbol"><A NAME="ref_1956_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1727_7">Attr</A>,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_1728_7">Color</A>);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1941_16">Slk_Attrset</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1944_7">Ch</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1953_16">Slk_Attrset</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1956_7">Ch</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1558_14">Set_Soft_Label_Key_Attributes</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1726_14">Set_Soft_Label_Key_Attributes</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1953_13" HREF="terminal_interface-curses__ads.htm#ref_1565_13">Get_Soft_Label_Key_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1965_13" HREF="terminal_interface-curses__ads.htm#ref_1733_13">Get_Soft_Label_Key_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1955_16">Slk_Attr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1967_16">Slk_Attr</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Slk_Attr, "slk_attr");
-
-- <FONT COLOR=red><A NAME="ref_1958_7">Attr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1955_16">Slk_Attr</A>;
-+ <span class="symbol"><A NAME="ref_1970_7">Attr</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1967_16">Slk_Attr</A>;
- <b>begin</b>
-- <b>return</b> Chtype_To_AttrChar (<A HREF="terminal_interface-curses__adb.htm#ref_1958_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1565_13">Get_Soft_Label_Key_Attributes</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1970_7">Attr</A>.<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1733_13">Get_Soft_Label_Key_Attributes</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1963_13" HREF="terminal_interface-curses__ads.htm#ref_1569_13">Get_Soft_Label_Key_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1975_13" HREF="terminal_interface-curses__ads.htm#ref_1737_13">Get_Soft_Label_Key_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1965_16">Slk_Attr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1977_16">Slk_Attr</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Slk_Attr, "slk_attr");
-
-- <FONT COLOR=red><A NAME="ref_1968_7">Attr</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1965_16">Slk_Attr</A>;
-+ <span class="symbol"><A NAME="ref_1980_7">Attr</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__adb.htm#ref_1977_16">Slk_Attr</A>;
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#ref_1968_7">Attr</A>).<A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1569_13">Get_Soft_Label_Key_Attributes</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_1980_7">Attr</A>.<A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1737_13">Get_Soft_Label_Key_Attributes</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1973_14" HREF="terminal_interface-curses__ads.htm#ref_1574_14">Set_Soft_Label_Key_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_1973_40" HREF="terminal_interface-curses__ads.htm#ref_1574_40">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1985_14" HREF="terminal_interface-curses__ads.htm#ref_1742_14">Set_Soft_Label_Key_Color</A></span> (<span class="symbol"><A NAME="ref_1985_40" HREF="terminal_interface-curses__ads.htm#ref_1742_40">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1975_16">Slk_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_1975_27" HREF="terminal_interface-curses__adb.htm#ref_1975_16">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1987_16">Slk_Color</A></span> (<span class="symbol"><A NAME="ref_1987_27" HREF="terminal_interface-curses__adb.htm#ref_1987_16">Color</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Slk_Color, "slk_color");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1975_16">Slk_Color</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1574_40">Pair</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1987_16">Slk_Color</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1742_40">Pair</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1574_14">Set_Soft_Label_Key_Color</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1742_14">Set_Soft_Label_Key_Color</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1984_14" HREF="terminal_interface-curses__ads.htm#ref_1588_14">Enable_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1984_26" HREF="terminal_interface-curses__ads.htm#ref_1588_26">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>;
-- <FONT COLOR=red><A NAME="ref_1985_26" HREF="terminal_interface-curses__ads.htm#ref_1589_26">Enable</A></FONT> : Boolean := True)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1996_14" HREF="terminal_interface-curses__ads.htm#ref_1756_14">Enable_Key</A></span> (<span class="symbol"><A NAME="ref_1996_26" HREF="terminal_interface-curses__ads.htm#ref_1756_26">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>;
-+ <span class="symbol"><A NAME="ref_1997_26" HREF="terminal_interface-curses__ads.htm#ref_1757_26">Enable</A></span> : Boolean := True)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1987_16">Keyok</A></FONT> (<FONT COLOR=red><A NAME="ref_1987_23" HREF="terminal_interface-curses__adb.htm#ref_1987_16">Keycode</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_1988_23" HREF="terminal_interface-curses__adb.htm#ref_1987_16">On_Off</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_1999_16">Keyok</A></span> (<span class="symbol"><A NAME="ref_1999_23" HREF="terminal_interface-curses__adb.htm#ref_1999_16">Keycode</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_2000_23" HREF="terminal_interface-curses__adb.htm#ref_1999_16">On_Off</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Keyok, "keyok");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1987_16">Keyok</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1588_26">Key</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1589_26">Enable</A>)))
-- = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1588_14">Enable_Key</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1997_14" HREF="terminal_interface-curses__ads.htm#ref_1598_14">Define_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1997_26" HREF="terminal_interface-curses__ads.htm#ref_1598_26">Definition</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_1998_26" HREF="terminal_interface-curses__ads.htm#ref_1599_26">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>)
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_1999_16">Keyok</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1756_26">Key</A>), <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1757_26">Enable</A>)))
-+ = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1756_14">Enable_Key</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2010_14" HREF="terminal_interface-curses__ads.htm#ref_1766_14">Define_Key</A></span> (<span class="symbol"><A NAME="ref_2010_26" HREF="terminal_interface-curses__ads.htm#ref_1766_26">Definition</A></span> : String;
-+ <span class="symbol"><A NAME="ref_2011_26" HREF="terminal_interface-curses__ads.htm#ref_1767_26">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2000_16">Defkey</A></FONT> (<FONT COLOR=red><A NAME="ref_2000_24" HREF="terminal_interface-curses__adb.htm#ref_2000_16">Def</A></FONT> : char_array;
-- <FONT COLOR=red><A NAME="ref_2001_24" HREF="terminal_interface-curses__adb.htm#ref_2000_16">Key</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2013_16">Defkey</A></span> (<span class="symbol"><A NAME="ref_2013_24" HREF="terminal_interface-curses__adb.htm#ref_2013_16">Def</A></span> : char_array;
-+ <span class="symbol"><A NAME="ref_2014_24" HREF="terminal_interface-curses__adb.htm#ref_2013_16">Key</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Defkey, "define_key");
-
-- <FONT COLOR=red><A NAME="ref_2004_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1598_26">Definition</A>'Length);
-- <FONT COLOR=red><A NAME="ref_2005_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_2017_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1766_26">Definition</A>'Length);
-+ <span class="symbol"><A NAME="ref_2018_7">Length</A></span> : size_t;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1598_26">Definition</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2004_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2005_7">Length</A>);
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2000_16">Defkey</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2004_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1599_26">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1598_14">Define_Key</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2013_14" HREF="terminal_interface-curses__ads.htm#ref_1624_14">Un_Control</A></FONT> (<FONT COLOR=red><A NAME="ref_2013_26" HREF="terminal_interface-curses__ads.htm#ref_1624_26">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
-- <FONT COLOR=red><A NAME="ref_2014_26" HREF="terminal_interface-curses__ads.htm#ref_1625_26">Str</A></FONT> : <b>out</b> String)
-+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1766_26">Definition</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2017_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2018_7">Length</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2013_16">Defkey</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2017_7">Txt</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1767_26">Key</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1766_14">Define_Key</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2026_14" HREF="terminal_interface-curses__ads.htm#ref_1792_14">Un_Control</A></span> (<span class="symbol"><A NAME="ref_2026_26" HREF="terminal_interface-curses__ads.htm#ref_1792_26">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_2027_26" HREF="terminal_interface-curses__ads.htm#ref_1793_26">Str</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2016_16">Unctrl</A></FONT> (<FONT COLOR=red><A NAME="ref_2016_24" HREF="terminal_interface-curses__adb.htm#ref_2016_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2029_16">Unctrl</A></span> (<span class="symbol"><A NAME="ref_2029_24" HREF="terminal_interface-curses__adb.htm#ref_2029_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Unctrl, "unctrl");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2016_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1624_26">Ch</A>)), <A HREF="terminal_interface-curses__ads.htm#ref_1625_26">Str</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1624_14">Un_Control</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2029_16">Unctrl</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1792_26">Ch</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1793_26">Str</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1792_14">Un_Control</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2022_13" HREF="terminal_interface-curses__ads.htm#ref_1629_13">Un_Control</A></FONT> (<FONT COLOR=red><A NAME="ref_2022_25" HREF="terminal_interface-curses__ads.htm#ref_1629_25">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_2035_13" HREF="terminal_interface-curses__ads.htm#ref_1797_13">Un_Control</A></span> (<span class="symbol"><A NAME="ref_2035_25" HREF="terminal_interface-curses__ads.htm#ref_1797_25">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2024_16">Unctrl</A></FONT> (<FONT COLOR=red><A NAME="ref_2024_24" HREF="terminal_interface-curses__adb.htm#ref_2024_16">Ch</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>) <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2037_16">Unctrl</A></span> (<span class="symbol"><A NAME="ref_2037_24" HREF="terminal_interface-curses__adb.htm#ref_2037_16">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Unctrl, "unctrl");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2024_16">Unctrl</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">AttrChar_To_Chtype</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1629_25">Ch</A>)));
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1629_13">Un_Control</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2037_16">Unctrl</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1797_25">Ch</A>));
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1797_13">Un_Control</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2030_14" HREF="terminal_interface-curses__ads.htm#ref_1635_14">Delay_Output</A></FONT> (<FONT COLOR=red><A NAME="ref_2030_28" HREF="terminal_interface-curses__ads.htm#ref_1635_28">Msecs</A></FONT> : Natural)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2043_14" HREF="terminal_interface-curses__ads.htm#ref_1803_14">Delay_Output</A></span> (<span class="symbol"><A NAME="ref_2043_28" HREF="terminal_interface-curses__ads.htm#ref_1803_28">Msecs</A></span> : Natural)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2032_16">Delayoutput</A></FONT> (<FONT COLOR=red><A NAME="ref_2032_29" HREF="terminal_interface-curses__adb.htm#ref_2032_16">Msecs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2045_16">Delayoutput</A></span> (<span class="symbol"><A NAME="ref_2045_29" HREF="terminal_interface-curses__adb.htm#ref_2045_16">Msecs</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Delayoutput, "delay_output");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2032_16">Delayoutput</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1635_28">Msecs</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2045_16">Delayoutput</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1803_28">Msecs</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1635_14">Delay_Output</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1803_14">Delay_Output</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2040_14" HREF="terminal_interface-curses__ads.htm#ref_1640_14">Flush_Input</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2053_14" HREF="terminal_interface-curses__ads.htm#ref_1808_14">Flush_Input</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2042_16">Flushinp</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2055_16">Flushinp</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Flushinp, "flushinp");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2042_16">Flushinp</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> <FONT COLOR=green><EM>-- docu says that never happens, but...</EM></FONT>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2055_16">Flushinp</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b> <span class="comment"><EM>-- docu says that never happens, but...</EM></span>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1640_14">Flush_Input</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2050_13" HREF="terminal_interface-curses__ads.htm#ref_1649_13">Baudrate</A></FONT> <b>return</b> Natural
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1808_14">Flush_Input</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2063_13" HREF="terminal_interface-curses__ads.htm#ref_1817_13">Baudrate</A></span> <b>return</b> Natural
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2052_16">Baud</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2065_16">Baud</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Baud, "baudrate");
- <b>begin</b>
-- <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2052_16">Baud</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1649_13">Baudrate</A>;
-+ <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2065_16">Baud</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1817_13">Baudrate</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2058_13" HREF="terminal_interface-curses__ads.htm#ref_1654_13">Erase_Character</A></FONT> <b>return</b> Character
-+ <b>function</b> <span class="symbol"><A NAME="ref_2071_13" HREF="terminal_interface-curses__ads.htm#ref_1822_13">Erase_Character</A></span> <b>return</b> Character
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2060_16">Erasechar</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2073_16">Erasechar</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Erasechar, "erasechar");
- <b>begin</b>
-- <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2060_16">Erasechar</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1654_13">Erase_Character</A>;
-+ <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2073_16">Erasechar</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1822_13">Erase_Character</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2066_13" HREF="terminal_interface-curses__ads.htm#ref_1659_13">Kill_Character</A></FONT> <b>return</b> Character
-+ <b>function</b> <span class="symbol"><A NAME="ref_2079_13" HREF="terminal_interface-curses__ads.htm#ref_1827_13">Kill_Character</A></span> <b>return</b> Character
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2068_16">Killchar</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2081_16">Killchar</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Killchar, "killchar");
- <b>begin</b>
-- <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2068_16">Killchar</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1659_13">Kill_Character</A>;
-+ <b>return</b> Character'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2081_16">Killchar</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1827_13">Kill_Character</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2074_13" HREF="terminal_interface-curses__ads.htm#ref_1664_13">Has_Insert_Character</A></FONT> <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_2087_13" HREF="terminal_interface-curses__ads.htm#ref_1832_13">Has_Insert_Character</A></span> <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2076_16">Has_Ic</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2089_16">Has_Ic</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, Has_Ic, "has_ic");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2076_16">Has_Ic</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2089_16">Has_Ic</A> = <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1664_13">Has_Insert_Character</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1832_13">Has_Insert_Character</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2086_13" HREF="terminal_interface-curses__ads.htm#ref_1669_13">Has_Insert_Line</A></FONT> <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_2099_13" HREF="terminal_interface-curses__ads.htm#ref_1837_13">Has_Insert_Line</A></span> <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2088_16">Has_Il</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2101_16">Has_Il</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, Has_Il, "has_il");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2088_16">Has_Il</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2101_16">Has_Il</A> = <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1669_13">Has_Insert_Line</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1837_13">Has_Insert_Line</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2098_13" HREF="terminal_interface-curses__ads.htm#ref_1674_13">Supported_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2111_13" HREF="terminal_interface-curses__ads.htm#ref_1842_13">Supported_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2100_16">Termattrs</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_63_12">C_Chtype</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2113_16">Termattrs</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
- <b>pragma</b> Import (C, Termattrs, "termattrs");
-
-- <FONT COLOR=red><A NAME="ref_2103_7">Ch</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Chtype_To_AttrChar</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2100_16">Termattrs</A>);
-+ <span class="symbol"><A NAME="ref_2116_7">Ch</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2113_16">Termattrs</A>;
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_2103_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1674_13">Supported_Attributes</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_2116_7">Ch</A>.<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1842_13">Supported_Attributes</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2108_14" HREF="terminal_interface-curses__ads.htm#ref_1679_14">Long_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_2108_25" HREF="terminal_interface-curses__ads.htm#ref_1679_25">Name</A></FONT> : <b>out</b> String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2121_14" HREF="terminal_interface-curses__ads.htm#ref_1847_14">Long_Name</A></span> (<span class="symbol"><A NAME="ref_2121_25" HREF="terminal_interface-curses__ads.htm#ref_1847_25">Name</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2110_16">Longname</A></FONT> <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2123_16">Longname</A></span> <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Longname, "longname");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2110_16">Longname</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1679_25">Name</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1679_14">Long_Name</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2123_16">Longname</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1847_25">Name</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1847_14">Long_Name</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2116_13" HREF="terminal_interface-curses__ads.htm#ref_1683_13">Long_Name</A></FONT> <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_2129_13" HREF="terminal_interface-curses__ads.htm#ref_1851_13">Long_Name</A></span> <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2118_16">Longname</A></FONT> <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2131_16">Longname</A></span> <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Longname, "longname");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2118_16">Longname</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1683_13">Long_Name</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2131_16">Longname</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1851_13">Long_Name</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2124_14" HREF="terminal_interface-curses__ads.htm#ref_1689_14">Terminal_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_2124_29" HREF="terminal_interface-curses__ads.htm#ref_1689_29">Name</A></FONT> : <b>out</b> String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2137_14" HREF="terminal_interface-curses__ads.htm#ref_1857_14">Terminal_Name</A></span> (<span class="symbol"><A NAME="ref_2137_29" HREF="terminal_interface-curses__ads.htm#ref_1857_29">Name</A></span> : <b>out</b> String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2126_16">Termname</A></FONT> <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2139_16">Termname</A></span> <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Termname, "termname");
- <b>begin</b>
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_116_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2126_16">Termname</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1689_29">Name</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1689_14">Terminal_Name</A>;
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_92_14">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2139_16">Termname</A>, <A HREF="terminal_interface-curses__ads.htm#ref_1857_29">Name</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1857_14">Terminal_Name</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2132_13" HREF="terminal_interface-curses__ads.htm#ref_1693_13">Terminal_Name</A></FONT> <b>return</b> String
-+ <b>function</b> <span class="symbol"><A NAME="ref_2145_13" HREF="terminal_interface-curses__ads.htm#ref_1861_13">Terminal_Name</A></span> <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2134_16">Termname</A></FONT> <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2147_16">Termname</A></span> <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, Termname, "termname");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2134_16">Termname</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1693_13">Terminal_Name</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2140_14" HREF="terminal_interface-curses__ads.htm#ref_1714_14">Init_Pair</A></FONT> (<FONT COLOR=red><A NAME="ref_2140_25" HREF="terminal_interface-curses__ads.htm#ref_1714_25">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_301_12">Redefinable_Color_Pair</A>;
-- <FONT COLOR=red><A NAME="ref_2141_25" HREF="terminal_interface-curses__ads.htm#ref_1715_25">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>;
-- <FONT COLOR=red><A NAME="ref_2142_25" HREF="terminal_interface-curses__ads.htm#ref_1716_25">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2144_16">Initpair</A></FONT> (<FONT COLOR=red><A NAME="ref_2144_26" HREF="terminal_interface-curses__adb.htm#ref_2144_16">Pair</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_2145_26" HREF="terminal_interface-curses__adb.htm#ref_2144_16">Fore</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_2146_26" HREF="terminal_interface-curses__adb.htm#ref_2144_16">Back</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2147_16">Termname</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1861_13">Terminal_Name</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2153_14" HREF="terminal_interface-curses__ads.htm#ref_1882_14">Init_Pair</A></span> (<span class="symbol"><A NAME="ref_2153_25" HREF="terminal_interface-curses__ads.htm#ref_1882_25">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_411_12">Redefinable_Color_Pair</A>;
-+ <span class="symbol"><A NAME="ref_2154_25" HREF="terminal_interface-curses__ads.htm#ref_1883_25">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>;
-+ <span class="symbol"><A NAME="ref_2155_25" HREF="terminal_interface-curses__ads.htm#ref_1884_25">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2157_16">Initpair</A></span> (<span class="symbol"><A NAME="ref_2157_26" HREF="terminal_interface-curses__adb.htm#ref_2157_16">Pair</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_2158_26" HREF="terminal_interface-curses__adb.htm#ref_2157_16">Fore</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_2159_26" HREF="terminal_interface-curses__adb.htm#ref_2157_16">Back</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Initpair, "init_pair");
- <b>begin</b>
-- <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1714_25">Pair</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_426_13">Number_Of_Color_Pairs</A> <b>then</b>
-+ <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1882_25">Pair</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_562_13">Number_Of_Color_Pairs</A> <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-- <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1715_25">Fore</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A> <b>or</b> <b>else</b>
-- Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1716_25">Back</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A> <b>then</b>
-+ <b>if</b> Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1883_25">Fore</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_559_13">Number_Of_Colors</A> <b>or</b> <b>else</b>
-+ Integer (<A HREF="terminal_interface-curses__ads.htm#ref_1884_25">Back</A>) &gt;= <A HREF="terminal_interface-curses__ads.htm#ref_559_13">Number_Of_Colors</A>
-+ <b>then</b>
- <b>raise</b> Constraint_Error;
- <b>end</b> <b>if</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2144_16">Initpair</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1714_25">Pair</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1715_25">Fore</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1716_25">Back</A>))
-- = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1714_14">Init_Pair</A>;
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2162_14" HREF="terminal_interface-curses__ads.htm#ref_1721_14">Pair_Content</A></FONT> (<FONT COLOR=red><A NAME="ref_2162_28" HREF="terminal_interface-curses__ads.htm#ref_1721_28">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>;
-- <FONT COLOR=red><A NAME="ref_2163_28" HREF="terminal_interface-curses__ads.htm#ref_1722_28">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>;
-- <FONT COLOR=red><A NAME="ref_2164_28" HREF="terminal_interface-curses__ads.htm#ref_1723_28">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>)
-- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_2166_12">C_Short_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2167_16">Paircontent</A></FONT> (<FONT COLOR=red><A NAME="ref_2167_29" HREF="terminal_interface-curses__adb.htm#ref_2167_16">Pair</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_2168_29" HREF="terminal_interface-curses__adb.htm#ref_2167_16">Fp</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#ref_2166_12">C_Short_Access</A>;
-- <FONT COLOR=red><A NAME="ref_2169_29" HREF="terminal_interface-curses__adb.htm#ref_2167_16">Bp</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#ref_2166_12">C_Short_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2157_16">Initpair</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1882_25">Pair</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1883_25">Fore</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1884_25">Back</A>))
-+ = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1882_14">Init_Pair</A>;
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2177_14" HREF="terminal_interface-curses__ads.htm#ref_1889_14">Pair_Content</A></span> (<span class="symbol"><A NAME="ref_2177_28" HREF="terminal_interface-curses__ads.htm#ref_1889_28">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>;
-+ <span class="symbol"><A NAME="ref_2178_28" HREF="terminal_interface-curses__ads.htm#ref_1890_28">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>;
-+ <span class="symbol"><A NAME="ref_2179_28" HREF="terminal_interface-curses__ads.htm#ref_1891_28">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>)
-+ <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_2181_12">C_Short_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2182_16">Paircontent</A></span> (<span class="symbol"><A NAME="ref_2182_29" HREF="terminal_interface-curses__adb.htm#ref_2182_16">Pair</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_2183_29" HREF="terminal_interface-curses__adb.htm#ref_2182_16">Fp</A></span> : <A HREF="terminal_interface-curses__adb.htm#ref_2181_12">C_Short_Access</A>;
-+ <span class="symbol"><A NAME="ref_2184_29" HREF="terminal_interface-curses__adb.htm#ref_2182_16">Bp</A></span> : <A HREF="terminal_interface-curses__adb.htm#ref_2181_12">C_Short_Access</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Paircontent, "pair_content");
-
-- <FONT COLOR=red><A NAME="ref_2172_7">F</A></FONT>, <FONT COLOR=red><A NAME="ref_2172_10">B</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_2187_7">F</A></span>, <span class="symbol"><A NAME="ref_2187_10">B</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2167_16">Paircontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1721_28">Pair</A>), <A HREF="terminal_interface-curses__adb.htm#ref_2172_7">F</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2172_10">B</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2182_16">Paircontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1889_28">Pair</A>), <A HREF="terminal_interface-curses__adb.htm#ref_2187_7">F</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2187_10">B</A>'<b>Access</b>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1722_28">Fore</A> := <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2172_7">F</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1723_28">Back</A> := <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2172_10">B</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1890_28">Fore</A> := <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2187_7">F</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1891_28">Back</A> := <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2187_10">B</A>);
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1721_14">Pair_Content</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1889_14">Pair_Content</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2182_13" HREF="terminal_interface-curses__ads.htm#ref_1728_13">Has_Colors</A></FONT> <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_2197_13" HREF="terminal_interface-curses__ads.htm#ref_1896_13">Has_Colors</A></span> <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2184_16">Hascolors</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2199_16">Hascolors</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, Hascolors, "has_colors");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2184_16">Hascolors</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2199_16">Hascolors</A> = <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1728_13">Has_Colors</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1896_13">Has_Colors</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2194_14" HREF="terminal_interface-curses__ads.htm#ref_1733_14">Init_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_2194_26" HREF="terminal_interface-curses__ads.htm#ref_1733_26">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>;
-- <FONT COLOR=red><A NAME="ref_2195_26" HREF="terminal_interface-curses__ads.htm#ref_1734_26">Red</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>;
-- <FONT COLOR=red><A NAME="ref_2196_26" HREF="terminal_interface-curses__ads.htm#ref_1735_26">Green</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>;
-- <FONT COLOR=red><A NAME="ref_2197_26" HREF="terminal_interface-curses__ads.htm#ref_1736_26">Blue</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>)
-- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2199_16">Initcolor</A></FONT> (<FONT COLOR=red><A NAME="ref_2199_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Col</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_2200_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Red</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_2201_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Green</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-- <FONT COLOR=red><A NAME="ref_2202_27" HREF="terminal_interface-curses__adb.htm#ref_2199_16">Blue</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2209_14" HREF="terminal_interface-curses__ads.htm#ref_1901_14">Init_Color</A></span> (<span class="symbol"><A NAME="ref_2209_26" HREF="terminal_interface-curses__ads.htm#ref_1901_26">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>;
-+ <span class="symbol"><A NAME="ref_2210_26" HREF="terminal_interface-curses__ads.htm#ref_1902_26">Red</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>;
-+ <span class="symbol"><A NAME="ref_2211_26" HREF="terminal_interface-curses__ads.htm#ref_1903_26">Green</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>;
-+ <span class="symbol"><A NAME="ref_2212_26" HREF="terminal_interface-curses__ads.htm#ref_1904_26">Blue</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>)
-+ <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2214_16">Initcolor</A></span> (<span class="symbol"><A NAME="ref_2214_27" HREF="terminal_interface-curses__adb.htm#ref_2214_16">Col</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_2215_27" HREF="terminal_interface-curses__adb.htm#ref_2214_16">Red</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_2216_27" HREF="terminal_interface-curses__adb.htm#ref_2214_16">Green</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_2217_27" HREF="terminal_interface-curses__adb.htm#ref_2214_16">Blue</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Initcolor, "init_color");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2199_16">Initcolor</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1733_26">Color</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1734_26">Red</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1735_26">Green</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1736_26">Blue</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2214_16">Initcolor</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1901_26">Color</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1902_26">Red</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1903_26">Green</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1904_26">Blue</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1733_14">Init_Color</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1901_14">Init_Color</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2211_13" HREF="terminal_interface-curses__ads.htm#ref_1741_13">Can_Change_Color</A></FONT> <b>return</b> Boolean
-+ <b>function</b> <span class="symbol"><A NAME="ref_2227_13" HREF="terminal_interface-curses__ads.htm#ref_1909_13">Can_Change_Color</A></span> <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2213_16">Canchangecolor</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2229_16">Canchangecolor</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>;
- <b>pragma</b> Import (C, Canchangecolor, "can_change_color");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2213_16">Canchangecolor</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2229_16">Canchangecolor</A> = <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A> <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1741_13">Can_Change_Color</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1909_13">Can_Change_Color</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2223_14" HREF="terminal_interface-curses__ads.htm#ref_1746_14">Color_Content</A></FONT> (<FONT COLOR=red><A NAME="ref_2223_29" HREF="terminal_interface-curses__ads.htm#ref_1746_29">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>;
-- <FONT COLOR=red><A NAME="ref_2224_29" HREF="terminal_interface-curses__ads.htm#ref_1747_29">Red</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>;
-- <FONT COLOR=red><A NAME="ref_2225_29" HREF="terminal_interface-curses__ads.htm#ref_1748_29">Green</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>;
-- <FONT COLOR=red><A NAME="ref_2226_29" HREF="terminal_interface-curses__ads.htm#ref_1749_29">Blue</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2239_14" HREF="terminal_interface-curses__ads.htm#ref_1914_14">Color_Content</A></span> (<span class="symbol"><A NAME="ref_2239_29" HREF="terminal_interface-curses__ads.htm#ref_1914_29">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>;
-+ <span class="symbol"><A NAME="ref_2240_29" HREF="terminal_interface-curses__ads.htm#ref_1915_29">Red</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>;
-+ <span class="symbol"><A NAME="ref_2241_29" HREF="terminal_interface-curses__ads.htm#ref_1916_29">Green</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>;
-+ <span class="symbol"><A NAME="ref_2242_29" HREF="terminal_interface-curses__ads.htm#ref_1917_29">Blue</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>)
- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_2228_12">C_Short_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_2244_12">C_Short_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2230_16">Colorcontent</A></FONT> (<FONT COLOR=red><A NAME="ref_2230_30" HREF="terminal_interface-curses__adb.htm#ref_2230_16">Color</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>; <FONT COLOR=red><A NAME="ref_2230_47" HREF="terminal_interface-curses__adb.htm#ref_2230_16">R</A></FONT>, <FONT COLOR=red><A NAME="ref_2230_50" HREF="terminal_interface-curses__adb.htm#ref_2230_16">G</A></FONT>, <FONT COLOR=red><A NAME="ref_2230_53" HREF="terminal_interface-curses__adb.htm#ref_2230_16">B</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#ref_2228_12">C_Short_Access</A>)
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2246_16">Colorcontent</A></span> (<span class="symbol"><A NAME="ref_2246_30" HREF="terminal_interface-curses__adb.htm#ref_2246_16">Color</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>; <span class="symbol"><A NAME="ref_2246_47" HREF="terminal_interface-curses__adb.htm#ref_2246_16">R</A></span>, <span class="symbol"><A NAME="ref_2246_50" HREF="terminal_interface-curses__adb.htm#ref_2246_16">G</A></span>, <span class="symbol"><A NAME="ref_2246_53" HREF="terminal_interface-curses__adb.htm#ref_2246_16">B</A></span> : <A HREF="terminal_interface-curses__adb.htm#ref_2244_12">C_Short_Access</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Colorcontent, "color_content");
-
-- <FONT COLOR=red><A NAME="ref_2234_7">R</A></FONT>, <FONT COLOR=red><A NAME="ref_2234_10">G</A></FONT>, <FONT COLOR=red><A NAME="ref_2234_13">B</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A>;
-+ <span class="symbol"><A NAME="ref_2250_7">R</A></span>, <span class="symbol"><A NAME="ref_2250_10">G</A></span>, <span class="symbol"><A NAME="ref_2250_13">B</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2230_16">Colorcontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_56_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1746_29">Color</A>), <A HREF="terminal_interface-curses__adb.htm#ref_2234_7">R</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2234_10">G</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2234_13">B</A>'<b>Access</b>) =
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2246_16">Colorcontent</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_51_12">C_Short</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1914_29">Color</A>), <A HREF="terminal_interface-curses__adb.htm#ref_2250_7">R</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2250_10">G</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2250_13">B</A>'<b>Access</b>) =
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>else</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1747_29">Red</A> := <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2234_7">R</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1748_29">Green</A> := <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2234_10">G</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1749_29">Blue</A> := <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2234_13">B</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1915_29">Red</A> := <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2250_7">R</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1916_29">Green</A> := <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2250_10">G</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1917_29">Blue</A> := <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2250_13">B</A>);
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1746_14">Color_Content</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1914_14">Color_Content</A>;
-
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2247_14" HREF="terminal_interface-curses__ads.htm#ref_1761_14">Save_Curses_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_2247_32" HREF="terminal_interface-curses__ads.htm#ref_1761_32">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1758_9">Curses_Mode</A>)
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2264_14" HREF="terminal_interface-curses__ads.htm#ref_1929_14">Save_Curses_Mode</A></span> (<span class="symbol"><A NAME="ref_2264_32" HREF="terminal_interface-curses__ads.htm#ref_1929_32">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Mode</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2249_16">Def_Prog_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2266_16">Def_Prog_Mode</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Def_Prog_Mode, "def_prog_mode");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2251_16">Def_Shell_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2268_16">Def_Shell_Mode</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Def_Shell_Mode, "def_shell_mode");
-
-- <FONT COLOR=red><A NAME="ref_2254_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_2271_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1761_32">Mode</A> <b>is</b>
-- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1758_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2254_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2249_16">Def_Prog_Mode</A>;
-- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1758_33">Shell</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2254_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2251_16">Def_Shell_Mode</A>;
-+ <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1929_32">Mode</A> <b>is</b>
-+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2271_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2266_16">Def_Prog_Mode</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_33">Shell</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2271_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2268_16">Def_Shell_Mode</A>;
- <b>end</b> <b>case</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2254_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2271_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1761_14">Save_Curses_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1929_14">Save_Curses_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2265_14" HREF="terminal_interface-curses__ads.htm#ref_1767_14">Reset_Curses_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_2265_33" HREF="terminal_interface-curses__ads.htm#ref_1767_33">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1758_9">Curses_Mode</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2282_14" HREF="terminal_interface-curses__ads.htm#ref_1935_14">Reset_Curses_Mode</A></span> (<span class="symbol"><A NAME="ref_2282_33" HREF="terminal_interface-curses__ads.htm#ref_1935_33">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Mode</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2267_16">Reset_Prog_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2284_16">Reset_Prog_Mode</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Reset_Prog_Mode, "reset_prog_mode");
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2269_16">Reset_Shell_Mode</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2286_16">Reset_Shell_Mode</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Reset_Shell_Mode, "reset_shell_mode");
-
-- <FONT COLOR=red><A NAME="ref_2272_7">Err</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_2289_7">Err</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1767_33">Mode</A> <b>is</b>
-- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1758_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2272_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2267_16">Reset_Prog_Mode</A>;
-- <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1758_33">Shell</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2272_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2269_16">Reset_Shell_Mode</A>;
-+ <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1935_33">Mode</A> <b>is</b>
-+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_25">Curses</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2289_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2284_16">Reset_Prog_Mode</A>;
-+ <b>when</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_33">Shell</A> =&gt; <A HREF="terminal_interface-curses__adb.htm#ref_2289_7">Err</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2286_16">Reset_Shell_Mode</A>;
- <b>end</b> <b>case</b>;
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2272_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2289_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1767_14">Reset_Curses_Mode</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1935_14">Reset_Curses_Mode</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2283_14" HREF="terminal_interface-curses__ads.htm#ref_1773_14">Save_Terminal_State</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2300_14" HREF="terminal_interface-curses__ads.htm#ref_1941_14">Save_Terminal_State</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2285_16">Savetty</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2302_16">Savetty</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Savetty, "savetty");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2285_16">Savetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2302_16">Savetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1773_14">Save_Terminal_State</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1941_14">Save_Terminal_State</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2293_14" HREF="terminal_interface-curses__ads.htm#ref_1778_14">Reset_Terminal_State</A></FONT>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2310_14" HREF="terminal_interface-curses__ads.htm#ref_1946_14">Reset_Terminal_State</A></span>
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2295_16">Resetty</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2312_16">Resetty</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Resetty, "resetty");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2295_16">Resetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2312_16">Resetty</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1778_14">Reset_Terminal_State</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1946_14">Reset_Terminal_State</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2303_14" HREF="terminal_interface-curses__ads.htm#ref_1791_14">Rip_Off_Lines</A></FONT> (<FONT COLOR=red><A NAME="ref_2303_29" HREF="terminal_interface-curses__ads.htm#ref_1791_29">Lines</A></FONT> : Integer;
-- <FONT COLOR=red><A NAME="ref_2304_29" HREF="terminal_interface-curses__ads.htm#ref_1792_29">Proc</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1782_9">Stdscr_Init_Proc</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2320_14" HREF="terminal_interface-curses__ads.htm#ref_1959_14">Rip_Off_Lines</A></span> (<span class="symbol"><A NAME="ref_2320_29" HREF="terminal_interface-curses__ads.htm#ref_1959_29">Lines</A></span> : Integer;
-+ <span class="symbol"><A NAME="ref_2321_29" HREF="terminal_interface-curses__ads.htm#ref_1960_29">Proc</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1950_9">Stdscr_Init_Proc</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2306_16">Ripoffline</A></FONT> (<FONT COLOR=red><A NAME="ref_2306_28" HREF="terminal_interface-curses__adb.htm#ref_2306_16">Lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_2307_28" HREF="terminal_interface-curses__adb.htm#ref_2306_16">Proc</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1782_9">Stdscr_Init_Proc</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2323_16">Ripoffline</A></span> (<span class="symbol"><A NAME="ref_2323_28" HREF="terminal_interface-curses__adb.htm#ref_2323_16">Lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_2324_28" HREF="terminal_interface-curses__adb.htm#ref_2323_16">Proc</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1950_9">Stdscr_Init_Proc</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Ripoffline, "_nc_ripoffline");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2306_16">Ripoffline</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1791_29">Lines</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1792_29">Proc</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2323_16">Ripoffline</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1959_29">Lines</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1960_29">Proc</A>) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1791_14">Rip_Off_Lines</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1959_14">Rip_Off_Lines</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2315_14" HREF="terminal_interface-curses__ads.htm#ref_1803_14">Set_Cursor_Visibility</A></FONT> (<FONT COLOR=red><A NAME="ref_2315_37" HREF="terminal_interface-curses__ads.htm#ref_1803_37">Visibility</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_1800_9">Cursor_Visibility</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2332_14" HREF="terminal_interface-curses__ads.htm#ref_1971_14">Set_Cursor_Visibility</A></span> (<span class="symbol"><A NAME="ref_2332_37" HREF="terminal_interface-curses__ads.htm#ref_1971_37">Visibility</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_1968_9">Cursor_Visibility</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2317_16">Curs_Set</A></FONT> (<FONT COLOR=red><A NAME="ref_2317_26" HREF="terminal_interface-curses__adb.htm#ref_2317_16">Curs</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2334_16">Curs_Set</A></span> (<span class="symbol"><A NAME="ref_2334_26" HREF="terminal_interface-curses__adb.htm#ref_2334_16">Curs</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Curs_Set, "curs_set");
-
-- <FONT COLOR=red><A NAME="ref_2320_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_2337_7">Res</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <A HREF="terminal_interface-curses__adb.htm#ref_2320_7">Res</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2317_16">Curs_Set</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1800_9">Cursor_Visibility</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1803_37">Visibility</A>));
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2320_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1803_37">Visibility</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1800_9">Cursor_Visibility</A>'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2320_7">Res</A>);
-+ <A HREF="terminal_interface-curses__adb.htm#ref_2337_7">Res</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2334_16">Curs_Set</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1968_9">Cursor_Visibility</A>'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1971_37">Visibility</A>));
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2337_7">Res</A> /= <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1971_37">Visibility</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1968_9">Cursor_Visibility</A>'Val (<A HREF="terminal_interface-curses__adb.htm#ref_2337_7">Res</A>);
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1803_14">Set_Cursor_Visibility</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1971_14">Set_Cursor_Visibility</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2328_14" HREF="terminal_interface-curses__ads.htm#ref_1808_14">Nap_Milli_Seconds</A></FONT> (<FONT COLOR=red><A NAME="ref_2328_33" HREF="terminal_interface-curses__ads.htm#ref_1808_33">Ms</A></FONT> : Natural)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2345_14" HREF="terminal_interface-curses__ads.htm#ref_1976_14">Nap_Milli_Seconds</A></span> (<span class="symbol"><A NAME="ref_2345_33" HREF="terminal_interface-curses__ads.htm#ref_1976_33">Ms</A></span> : Natural)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2330_16">Napms</A></FONT> (<FONT COLOR=red><A NAME="ref_2330_23" HREF="terminal_interface-curses__adb.htm#ref_2330_16">Ms</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2347_16">Napms</A></span> (<span class="symbol"><A NAME="ref_2347_23" HREF="terminal_interface-curses__adb.htm#ref_2347_16">Ms</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Napms, "napms");
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2330_16">Napms</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1808_33">Ms</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2347_16">Napms</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1976_33">Ms</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1808_14">Nap_Milli_Seconds</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2339_13" HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_2341_7">Result</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2341_7">Result</A>, "stdscr");
-- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_2341_7">Result</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2347_13" HREF="terminal_interface-curses__ads.htm#ref_483_13">Current_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1976_14">Nap_Milli_Seconds</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2355_13" HREF="terminal_interface-curses__ads.htm#ref_550_13">Lines</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_2349_7">Result</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2349_7">Result</A>, "curscr");
-+ <b>function</b> <span class="symbol"><A NAME="ref_2357_16">LINES_As_Function</A></span> <b>return</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+ <b>pragma</b> Import (C, LINES_As_Function, "LINES_as_function");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_2349_7">Result</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_483_13">Current_Window</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2357_16">LINES_As_Function</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_550_13">Lines</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2355_13" HREF="terminal_interface-curses__ads.htm#ref_414_13">Lines</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2363_13" HREF="terminal_interface-curses__ads.htm#ref_553_13">Columns</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_2357_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2357_7">Result</A>, "LINES");
-+ <b>function</b> <span class="symbol"><A NAME="ref_2365_16">COLS_As_Function</A></span> <b>return</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+ <b>pragma</b> Import (C, COLS_As_Function, "COLS_as_function");
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2357_7">Result</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_414_13">Lines</A>;
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2365_16">COLS_As_Function</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_553_13">Columns</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2363_13" HREF="terminal_interface-curses__ads.htm#ref_417_13">Columns</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2371_13" HREF="terminal_interface-curses__ads.htm#ref_556_13">Tab_Size</A></span> <b>return</b> Natural
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_2365_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2365_7">Result</A>, "COLS");
-- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2365_7">Result</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_13">Columns</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2373_16">TABSIZE_As_Function</A></span> <b>return</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+ <b>pragma</b> Import (C, TABSIZE_As_Function, "TABSIZE_as_function");
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2371_13" HREF="terminal_interface-curses__ads.htm#ref_420_13">Tab_Size</A></FONT> <b>return</b> Natural
-- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_2373_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2373_7">Result</A>, "TABSIZE");
- <b>begin</b>
-- <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2373_7">Result</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_420_13">Tab_Size</A>;
-+ <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2373_16">TABSIZE_As_Function</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_556_13">Tab_Size</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2379_13" HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A></FONT> <b>return</b> Natural
-+ <b>function</b> <span class="symbol"><A NAME="ref_2380_13" HREF="terminal_interface-curses__ads.htm#ref_559_13">Number_Of_Colors</A></span> <b>return</b> Natural
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_2381_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2381_7">Result</A>, "COLORS");
-+ <b>function</b> <span class="symbol"><A NAME="ref_2382_16">COLORS_As_Function</A></span> <b>return</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+ <b>pragma</b> Import (C, COLORS_As_Function, "COLORS_as_function");
- <b>begin</b>
-- <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2381_7">Result</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A>;
-+ <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2382_16">COLORS_As_Function</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_559_13">Number_Of_Colors</A>;
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2387_13" HREF="terminal_interface-curses__ads.htm#ref_426_13">Number_Of_Color_Pairs</A></FONT> <b>return</b> Natural
-+ <b>function</b> <span class="symbol"><A NAME="ref_2388_13" HREF="terminal_interface-curses__ads.htm#ref_562_13">Number_Of_Color_Pairs</A></span> <b>return</b> Natural
- <b>is</b>
-- <FONT COLOR=red><A NAME="ref_2389_7">Result</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_2389_7">Result</A>, "COLOR_PAIRS");
-+ <b>function</b> <span class="symbol"><A NAME="ref_2390_16">COLOR_PAIRS_As_Function</A></span> <b>return</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.int;
-+ <b>pragma</b> Import (C, COLOR_PAIRS_As_Function, "COLOR_PAIRS_as_function");
- <b>begin</b>
-- <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2389_7">Result</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_426_13">Number_Of_Color_Pairs</A>;
--
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2396_14" HREF="terminal_interface-curses__ads.htm#ref_1816_14">Transform_Coordinates</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_2397_7" HREF="terminal_interface-curses__ads.htm#ref_1817_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_2398_7" HREF="terminal_interface-curses__ads.htm#ref_1818_7">Line</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_2399_7" HREF="terminal_interface-curses__ads.htm#ref_1819_7">Column</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_2400_7" HREF="terminal_interface-curses__ads.htm#ref_1820_7">Dir</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1815_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1815_33">From_Screen</A>)
-+ <b>return</b> Natural (<A HREF="terminal_interface-curses__adb.htm#ref_2390_16">COLOR_PAIRS_As_Function</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_562_13">Number_Of_Color_Pairs</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2396_14" HREF="terminal_interface-curses__ads.htm#ref_1984_14">Transform_Coordinates</A></span>
-+ (<span class="symbol"><A NAME="ref_2397_7" HREF="terminal_interface-curses__ads.htm#ref_1985_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_2398_7" HREF="terminal_interface-curses__ads.htm#ref_1986_7">Line</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_2399_7" HREF="terminal_interface-curses__ads.htm#ref_1987_7">Column</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_2400_7" HREF="terminal_interface-curses__ads.htm#ref_1988_7">Dir</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1983_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1983_33">From_Screen</A>)
- <b>is</b>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_2402_12">Int_Access</A></FONT> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2403_16">Transform</A></FONT> (<FONT COLOR=red><A NAME="ref_2403_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_2404_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">Y</A></FONT>, <FONT COLOR=red><A NAME="ref_2404_30" HREF="terminal_interface-curses__adb.htm#ref_2403_16">X</A></FONT> : <A HREF="terminal_interface-curses__adb.htm#ref_2402_12">Int_Access</A>;
-- <FONT COLOR=red><A NAME="ref_2405_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">Dir</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>type</b> <span class="symbol"><A NAME="ref_2402_12">Int_Access</A></span> <b>is</b> <b>access</b> <b>all</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2403_16">Transform</A></span> (<span class="symbol"><A NAME="ref_2403_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_2404_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">Y</A></span>, <span class="symbol"><A NAME="ref_2404_30" HREF="terminal_interface-curses__adb.htm#ref_2403_16">X</A></span> : <A HREF="terminal_interface-curses__adb.htm#ref_2402_12">Int_Access</A>;
-+ <span class="symbol"><A NAME="ref_2405_27" HREF="terminal_interface-curses__adb.htm#ref_2403_16">Dir</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, Transform, "wmouse_trafo");
-
-- <FONT COLOR=red><A NAME="ref_2408_7">X</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1819_7">Column</A>);
-- <FONT COLOR=red><A NAME="ref_2409_7">Y</A></FONT> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1818_7">Line</A>);
-- <FONT COLOR=red><A NAME="ref_2410_7">D</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A>;
-- <FONT COLOR=red><A NAME="ref_2411_7">R</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_2408_7">X</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1987_7">Column</A>);
-+ <span class="symbol"><A NAME="ref_2409_7">Y</A></span> : <b>aliased</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1986_7">Line</A>);
-+ <span class="symbol"><A NAME="ref_2410_7">D</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> := <A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A>;
-+ <span class="symbol"><A NAME="ref_2411_7">R</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1820_7">Dir</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1815_46">To_Screen</A> <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1988_7">Dir</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1983_46">To_Screen</A> <b>then</b>
- <A HREF="terminal_interface-curses__adb.htm#ref_2410_7">D</A> := 1;
- <b>end</b> <b>if</b>;
-- <A HREF="terminal_interface-curses__adb.htm#ref_2411_7">R</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2403_16">Transform</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1817_7">W</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2409_7">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2408_7">X</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2410_7">D</A>);
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2411_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_75_4">Curses_False</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>else</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_1818_7">Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2409_7">Y</A>);
-- <A HREF="terminal_interface-curses__ads.htm#ref_1819_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2408_7">X</A>);
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1816_14">Transform_Coordinates</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2425_14" HREF="terminal_interface-curses__ads.htm#ref_1833_14">Use_Default_Colors</A></FONT> <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2426_16">C_Use_Default_Colors</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <A HREF="terminal_interface-curses__adb.htm#ref_2411_7">R</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2403_16">Transform</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1985_7">W</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2409_7">Y</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2408_7">X</A>'<b>Access</b>, <A HREF="terminal_interface-curses__adb.htm#ref_2410_7">D</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2411_7">R</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_68_4">Curses_False</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>else</b>
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1986_7">Line</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2409_7">Y</A>);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_1987_7">Column</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2408_7">X</A>);
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1984_14">Transform_Coordinates</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2425_14" HREF="terminal_interface-curses__ads.htm#ref_2003_14">Use_Default_Colors</A></span> <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2426_16">C_Use_Default_Colors</A></span> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, C_Use_Default_Colors, "use_default_colors");
-- <FONT COLOR=red><A NAME="ref_2428_7">Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2426_16">C_Use_Default_Colors</A>;
-+ <span class="symbol"><A NAME="ref_2428_7">Err</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2426_16">C_Use_Default_Colors</A>;
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2428_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2428_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1833_14">Use_Default_Colors</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2003_14">Use_Default_Colors</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2435_14" HREF="terminal_interface-curses__ads.htm#ref_1838_14">Assume_Default_Colors</A></FONT> (<FONT COLOR=red><A NAME="ref_2435_37" HREF="terminal_interface-curses__ads.htm#ref_1838_37">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>;
-- <FONT COLOR=red><A NAME="ref_2436_37" HREF="terminal_interface-curses__ads.htm#ref_1839_37">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2435_14" HREF="terminal_interface-curses__ads.htm#ref_2008_14">Assume_Default_Colors</A></span> (<span class="symbol"><A NAME="ref_2435_37" HREF="terminal_interface-curses__ads.htm#ref_2008_37">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_2000_4">Default_Color</A>;
-+ <span class="symbol"><A NAME="ref_2436_37" HREF="terminal_interface-curses__ads.htm#ref_2009_37">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_2000_4">Default_Color</A>)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2438_16">C_Assume_Default_Colors</A></FONT> (<FONT COLOR=red><A NAME="ref_2438_41" HREF="terminal_interface-curses__adb.htm#ref_2438_16">Fore</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_2439_41" HREF="terminal_interface-curses__adb.htm#ref_2438_16">Back</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2438_16">C_Assume_Default_Colors</A></span> (<span class="symbol"><A NAME="ref_2438_41" HREF="terminal_interface-curses__adb.htm#ref_2438_16">Fore</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_2439_41" HREF="terminal_interface-curses__adb.htm#ref_2438_16">Back</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, C_Assume_Default_Colors, "assume_default_colors");
-
-- <FONT COLOR=red><A NAME="ref_2442_7">Err</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2438_16">C_Assume_Default_Colors</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1838_37">Fore</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1839_37">Back</A>));
-+ <span class="symbol"><A NAME="ref_2442_7">Err</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> := <A HREF="terminal_interface-curses__adb.htm#ref_2438_16">C_Assume_Default_Colors</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_2008_37">Fore</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_2009_37">Back</A>));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2442_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2442_7">Err</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1838_14">Assume_Default_Colors</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2450_13" HREF="terminal_interface-curses__ads.htm#ref_1848_13">Curses_Version</A></FONT> <b>return</b> String
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2008_14">Assume_Default_Colors</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2450_13" HREF="terminal_interface-curses__ads.htm#ref_2018_13">Curses_Version</A></span> <b>return</b> String
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2452_16">curses_versionC</A></FONT> <b>return</b> chars_ptr;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2452_16">curses_versionC</A></span> <b>return</b> chars_ptr;
- <b>pragma</b> Import (C, curses_versionC, "curses_version");
-- <FONT COLOR=red><A NAME="ref_2454_7">Result</A></FONT> : <b>constant</b> chars_ptr := <A HREF="terminal_interface-curses__adb.htm#ref_2452_16">curses_versionC</A>;
-+ <span class="symbol"><A NAME="ref_2454_7">Result</A></span> : <b>constant</b> chars_ptr := <A HREF="terminal_interface-curses__adb.htm#ref_2452_16">curses_versionC</A>;
- <b>begin</b>
-- <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2454_7">Result</A>);
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1848_13">Curses_Version</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2459_14" HREF="terminal_interface-curses__ads.htm#ref_1861_14">Curses_Free_All</A></FONT> <b>is</b>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2460_17">curses_freeall</A></FONT>;
-+ <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_97_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2454_7">Result</A>);
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2018_13">Curses_Version</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2459_14" HREF="terminal_interface-curses__ads.htm#ref_2031_14">Curses_Free_All</A></span> <b>is</b>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2460_17">curses_freeall</A></span>;
- <b>pragma</b> Import (C, curses_freeall, "_nc_freeall");
- <b>begin</b>
-- <FONT COLOR=green><EM>-- Use this only for testing: you cannot use curses after calling it,</EM></FONT>
-- <FONT COLOR=green><EM>-- so it has to be the "last" thing done before exiting the program.</EM></FONT>
-- <FONT COLOR=green><EM>-- This will not really free ALL of memory used by curses. That is</EM></FONT>
-- <FONT COLOR=green><EM>-- because it cannot free the memory used for stdout's setbuf. The</EM></FONT>
-- <FONT COLOR=green><EM>-- _nc_free_and_exit() procedure can do that, but it can be invoked</EM></FONT>
-- <FONT COLOR=green><EM>-- safely only from C - and again, that only as the "last" thing done</EM></FONT>
-- <FONT COLOR=green><EM>-- before exiting the program.</EM></FONT>
-+ <span class="comment"><EM>-- Use this only for testing: you cannot use curses after calling it,</EM></span>
-+ <span class="comment"><EM>-- so it has to be the "last" thing done before exiting the program.</EM></span>
-+ <span class="comment"><EM>-- This will not really free ALL of memory used by curses. That is</EM></span>
-+ <span class="comment"><EM>-- because it cannot free the memory used for stdout's setbuf. The</EM></span>
-+ <span class="comment"><EM>-- _nc_free_and_exit() procedure can do that, but it can be invoked</EM></span>
-+ <span class="comment"><EM>-- safely only from C - and again, that only as the "last" thing done</EM></span>
-+ <span class="comment"><EM>-- before exiting the program.</EM></span>
- <A HREF="terminal_interface-curses__adb.htm#ref_2460_17">curses_freeall</A>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1861_14">Curses_Free_All</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2473_13" HREF="terminal_interface-curses__ads.htm#ref_1853_13">Use_Extended_Names</A></FONT> (<FONT COLOR=red><A NAME="ref_2473_33" HREF="terminal_interface-curses__ads.htm#ref_1853_33">Enable</A></FONT> : Boolean) <b>return</b> Boolean
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2031_14">Curses_Free_All</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2473_13" HREF="terminal_interface-curses__ads.htm#ref_2023_13">Use_Extended_Names</A></span> (<span class="symbol"><A NAME="ref_2473_33" HREF="terminal_interface-curses__ads.htm#ref_2023_33">Enable</A></span> : Boolean) <b>return</b> Boolean
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2475_16">use_extended_namesC</A></FONT> (<FONT COLOR=red><A NAME="ref_2475_37" HREF="terminal_interface-curses__adb.htm#ref_2475_16">e</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2475_16">use_extended_namesC</A></span> (<span class="symbol"><A NAME="ref_2475_37" HREF="terminal_interface-curses__adb.htm#ref_2475_16">e</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, use_extended_namesC, "use_extended_names");
-
-- <FONT COLOR=red><A NAME="ref_2478_7">Res</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> :=
-- <A HREF="terminal_interface-curses__adb.htm#ref_2475_16">use_extended_namesC</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_1853_33">Enable</A>)));
-+ <span class="symbol"><A NAME="ref_2478_7">Res</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> :=
-+ <A HREF="terminal_interface-curses__adb.htm#ref_2475_16">use_extended_namesC</A> (<A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> (Boolean'Pos (<A HREF="terminal_interface-curses__ads.htm#ref_2023_33">Enable</A>)));
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2478_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1927_4">Curses_Bool_False</A>) <b>then</b>
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2478_7">Res</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_2100_4">Curses_Bool_False</A>) <b>then</b>
- <b>return</b> False;
- <b>else</b>
- <b>return</b> True;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1853_13">Use_Extended_Names</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2488_14" HREF="terminal_interface-curses__ads.htm#ref_1869_14">Screen_Dump_To_File</A></FONT> (<FONT COLOR=red><A NAME="ref_2488_35" HREF="terminal_interface-curses__ads.htm#ref_1869_35">Filename</A></FONT> : String)
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2023_13">Use_Extended_Names</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2488_14" HREF="terminal_interface-curses__ads.htm#ref_2039_14">Screen_Dump_To_File</A></span> (<span class="symbol"><A NAME="ref_2488_35" HREF="terminal_interface-curses__ads.htm#ref_2039_35">Filename</A></span> : String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2490_16">scr_dump</A></FONT> (<FONT COLOR=red><A NAME="ref_2490_26" HREF="terminal_interface-curses__adb.htm#ref_2490_16">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2490_16">scr_dump</A></span> (<span class="symbol"><A NAME="ref_2490_26" HREF="terminal_interface-curses__adb.htm#ref_2490_16">f</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, scr_dump, "scr_dump");
-- <FONT COLOR=red><A NAME="ref_2492_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1869_35">Filename</A>'Length);
-- <FONT COLOR=red><A NAME="ref_2493_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_2492_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_2039_35">Filename</A>'Length);
-+ <span class="symbol"><A NAME="ref_2493_7">Length</A></span> : size_t;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1869_35">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2492_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2493_7">Length</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2490_16">scr_dump</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2492_7">Txt</A>) <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_2039_35">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2492_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2493_7">Length</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2490_16">scr_dump</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2492_7">Txt</A>) <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1869_14">Screen_Dump_To_File</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2039_14">Screen_Dump_To_File</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2501_14" HREF="terminal_interface-curses__ads.htm#ref_1873_14">Screen_Restore_From_File</A></FONT> (<FONT COLOR=red><A NAME="ref_2501_40" HREF="terminal_interface-curses__ads.htm#ref_1873_40">Filename</A></FONT> : String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2501_14" HREF="terminal_interface-curses__ads.htm#ref_2043_14">Screen_Restore_From_File</A></span> (<span class="symbol"><A NAME="ref_2501_40" HREF="terminal_interface-curses__ads.htm#ref_2043_40">Filename</A></span> : String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2503_16">scr_restore</A></FONT> (<FONT COLOR=red><A NAME="ref_2503_29" HREF="terminal_interface-curses__adb.htm#ref_2503_16">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2503_16">scr_restore</A></span> (<span class="symbol"><A NAME="ref_2503_29" HREF="terminal_interface-curses__adb.htm#ref_2503_16">f</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, scr_restore, "scr_restore");
-- <FONT COLOR=red><A NAME="ref_2505_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1873_40">Filename</A>'Length);
-- <FONT COLOR=red><A NAME="ref_2506_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_2505_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_2043_40">Filename</A>'Length);
-+ <span class="symbol"><A NAME="ref_2506_7">Length</A></span> : size_t;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1873_40">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2505_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2506_7">Length</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2503_16">scr_restore</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2505_7">Txt</A>) <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_2043_40">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2505_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2506_7">Length</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2503_16">scr_restore</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2505_7">Txt</A>) <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1873_14">Screen_Restore_From_File</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2043_14">Screen_Restore_From_File</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2514_14" HREF="terminal_interface-curses__ads.htm#ref_1877_14">Screen_Init_From_File</A></FONT> (<FONT COLOR=red><A NAME="ref_2514_37" HREF="terminal_interface-curses__ads.htm#ref_1877_37">Filename</A></FONT> : String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2514_14" HREF="terminal_interface-curses__ads.htm#ref_2047_14">Screen_Init_From_File</A></span> (<span class="symbol"><A NAME="ref_2514_37" HREF="terminal_interface-curses__ads.htm#ref_2047_37">Filename</A></span> : String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2516_16">scr_init</A></FONT> (<FONT COLOR=red><A NAME="ref_2516_26" HREF="terminal_interface-curses__adb.htm#ref_2516_16">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2516_16">scr_init</A></span> (<span class="symbol"><A NAME="ref_2516_26" HREF="terminal_interface-curses__adb.htm#ref_2516_16">f</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, scr_init, "scr_init");
-- <FONT COLOR=red><A NAME="ref_2518_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1877_37">Filename</A>'Length);
-- <FONT COLOR=red><A NAME="ref_2519_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_2518_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_2047_37">Filename</A>'Length);
-+ <span class="symbol"><A NAME="ref_2519_7">Length</A></span> : size_t;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1877_37">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2518_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2519_7">Length</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2516_16">scr_init</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2518_7">Txt</A>) <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_2047_37">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2518_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2519_7">Length</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2516_16">scr_init</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2518_7">Txt</A>) <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1877_14">Screen_Init_From_File</A>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2047_14">Screen_Init_From_File</A>;
-
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2527_14" HREF="terminal_interface-curses__ads.htm#ref_1881_14">Screen_Set_File</A></FONT> (<FONT COLOR=red><A NAME="ref_2527_31" HREF="terminal_interface-curses__ads.htm#ref_1881_31">Filename</A></FONT> : String)
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2527_14" HREF="terminal_interface-curses__ads.htm#ref_2051_14">Screen_Set_File</A></span> (<span class="symbol"><A NAME="ref_2527_31" HREF="terminal_interface-curses__ads.htm#ref_2051_31">Filename</A></span> : String)
- <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2529_16">scr_set</A></FONT> (<FONT COLOR=red><A NAME="ref_2529_25" HREF="terminal_interface-curses__adb.htm#ref_2529_16">f</A></FONT> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ <b>function</b> <span class="symbol"><A NAME="ref_2529_16">scr_set</A></span> (<span class="symbol"><A NAME="ref_2529_25" HREF="terminal_interface-curses__adb.htm#ref_2529_16">f</A></span> : char_array) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, scr_set, "scr_set");
-- <FONT COLOR=red><A NAME="ref_2531_7">Txt</A></FONT> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_1881_31">Filename</A>'Length);
-- <FONT COLOR=red><A NAME="ref_2532_7">Length</A></FONT> : size_t;
-+ <span class="symbol"><A NAME="ref_2531_7">Txt</A></span> : char_array (0 .. <A HREF="terminal_interface-curses__ads.htm#ref_2051_31">Filename</A>'Length);
-+ <span class="symbol"><A NAME="ref_2532_7">Length</A></span> : size_t;
- <b>begin</b>
-- To_C (<A HREF="terminal_interface-curses__ads.htm#ref_1881_31">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2531_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2532_7">Length</A>);
-- <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2529_16">scr_set</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2531_7">Txt</A>) <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1881_14">Screen_Set_File</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_2540_14" HREF="terminal_interface-curses__ads.htm#ref_1913_14">Resize</A></FONT> (<FONT COLOR=red><A NAME="ref_2540_22" HREF="terminal_interface-curses__ads.htm#ref_1913_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_2541_22" HREF="terminal_interface-curses__ads.htm#ref_1914_22">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_2542_22" HREF="terminal_interface-curses__ads.htm#ref_1915_22">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>is</b>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_2543_16">wresize</A></FONT> (<FONT COLOR=red><A NAME="ref_2543_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_2544_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">lines</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-- <FONT COLOR=red><A NAME="ref_2545_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">columns</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>;
-+ To_C (<A HREF="terminal_interface-curses__ads.htm#ref_2051_31">Filename</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2531_7">Txt</A>, <A HREF="terminal_interface-curses__adb.htm#ref_2532_7">Length</A>);
-+ <b>if</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A> = <A HREF="terminal_interface-curses__adb.htm#ref_2529_16">scr_set</A> (<A HREF="terminal_interface-curses__adb.htm#ref_2531_7">Txt</A>) <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
-+ <b>end</b> <b>if</b>;
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2051_14">Screen_Set_File</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2540_14" HREF="terminal_interface-curses__ads.htm#ref_2083_14">Resize</A></span> (<span class="symbol"><A NAME="ref_2540_22" HREF="terminal_interface-curses__ads.htm#ref_2083_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_2541_22" HREF="terminal_interface-curses__ads.htm#ref_2084_22">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_2542_22" HREF="terminal_interface-curses__ads.htm#ref_2085_22">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>) <b>is</b>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2543_16">wresize</A></span> (<span class="symbol"><A NAME="ref_2543_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_2544_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">lines</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
-+ <span class="symbol"><A NAME="ref_2545_25" HREF="terminal_interface-curses__adb.htm#ref_2543_16">columns</A></span> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A>;
- <b>pragma</b> Import (C, wresize);
- <b>begin</b>
-- <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2543_16">wresize</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1913_22">Win</A>,
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1914_22">Number_Of_Lines</A>),
-- <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1915_22">Number_Of_Columns</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b>
-- <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_385_4">Curses_Exception</A>;
-+ <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_2543_16">wresize</A> (<A HREF="terminal_interface-curses__ads.htm#ref_2083_22">Win</A>,
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_2084_22">Number_Of_Lines</A>),
-+ <A HREF="terminal_interface-curses-aux__ads.htm#ref_50_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_2085_22">Number_Of_Columns</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_65_4">Curses_Err</A>
-+ <b>then</b>
-+ <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_521_4">Curses_Exception</A>;
- <b>end</b> <b>if</b>;
-- <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1913_14">Resize</A>;
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
-+ <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_2083_14">Resize</A>;
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface-curses__ads.htm 2011-04-02 19:53:41.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -1,1935 +1,2120 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface-curses.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface-curses.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface.Curses --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.44 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2011/03/19 23:05:56 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- curses binding.</EM></FONT>
--<FONT COLOR=green><EM>-- This module is generated. Please don't change it manually!</EM></FONT>
--<FONT COLOR=green><EM>-- Run the generator instead.</EM></FONT>
--<FONT COLOR=green><EM>-- |</EM></FONT>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface.Curses --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.47 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2014/05/24 21:31:57 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
- <b>with</b> System.Storage_Elements;
--<b>with</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C; <FONT COLOR=green><EM>-- We need this for some assertions.</EM></FONT>
-+<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <span class="comment"><EM>-- We need this for some assertions.</EM></span>
-
--<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<FONT COLOR=red><A NAME="ref_49_28" HREF="terminal_interface-curses__adb.htm#ref_50_33">Curses</A></FONT> <b>is</b>
-- <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>);
-- <b>pragma</b> Linker_Options ("-lncurses");
--
-- <FONT COLOR=red><A NAME="ref_53_4">NC_Major_Version</A></FONT> : <b>constant</b> := 5; <FONT COLOR=green><EM>-- Major version of the library</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_54_4">NC_Minor_Version</A></FONT> : <b>constant</b> := 9; <FONT COLOR=green><EM>-- Minor version of the library</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_55_4">NC_Version</A></FONT> : <b>constant</b> String := "5.9"; <FONT COLOR=green><EM>-- Version of library</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_57_9">Window</A></FONT> <b>is</b> <b>private</b>;
-- <FONT COLOR=red><A NAME="ref_58_4">Null_Window</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_60_9">Line_Position</A></FONT> <b>is</b> <b>new</b> Integer; <FONT COLOR=green><EM>-- line coordinate</EM></FONT>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_61_9">Column_Position</A></FONT> <b>is</b> <b>new</b> Integer; <FONT COLOR=green><EM>-- column coordinate</EM></FONT>
--
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_63_12">Line_Count</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'Last;
-- <FONT COLOR=green><EM>-- Type to count lines. We do not allow null windows, so must be positive</EM></FONT>
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_65_12">Column_Count</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'Last;
-- <FONT COLOR=green><EM>-- Type to count columns. We do not allow null windows, so must be positive</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_68_9">Key_Code</A></FONT> <b>is</b> <b>new</b> Integer;
-- <FONT COLOR=green><EM>-- That is anything including real characters, special keys and logical</EM></FONT>
-- <FONT COLOR=green><EM>-- request codes.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- FIXME: The "-1" should be Curses_Err</EM></FONT>
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_73_12">Real_Key_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A> <b>range</b> -1 .. 8#777#;
-- <FONT COLOR=green><EM>-- This are the codes that potentially represent a real keystroke.</EM></FONT>
-- <FONT COLOR=green><EM>-- Not all codes may be possible on a specific terminal. To check the</EM></FONT>
-- <FONT COLOR=green><EM>-- availability of a special key, the Has_Key function is provided.</EM></FONT>
--
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_78_12">Special_Key_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>
-- <b>range</b> 8#400# .. <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>'Last;
-- <FONT COLOR=green><EM>-- Type for a function- or special key number</EM></FONT>
-+<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>;
-
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_82_12">Normal_Key_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A> <b>range</b>
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<span class="symbol"><A NAME="ref_47_28" HREF="terminal_interface-curses__adb.htm#ref_50_33">Curses</A></span> <b>is</b>
-+ <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>);
-+ <b>pragma</b> Linker_Options ("-lncurses" &amp; <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_9_4">DFT_ARG_SUFFIX</A>);
-+
-+ <span class="symbol"><A NAME="ref_51_4">Major_Version</A></span> : <b>constant</b> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_21_4">NCURSES_VERSION_MAJOR</A>;
-+ <span class="symbol"><A NAME="ref_52_4">Minor_Version</A></span> : <b>constant</b> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_22_4">NCURSES_VERSION_MINOR</A>;
-+ NC_Version : String <b>renames</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_23_4">Version</A>;
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_55_9">Window</A></span> <b>is</b> <b>private</b>;
-+ <span class="symbol"><A NAME="ref_56_4">Null_Window</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_58_9">Line_Position</A></span> <b>is</b> <b>new</b> Integer; <span class="comment"><EM>-- line coordinate</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_59_9">Column_Position</A></span> <b>is</b> <b>new</b> Integer; <span class="comment"><EM>-- column coordinate</EM></span>
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_61_12">Line_Count</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>'Last;
-+ <span class="comment"><EM>-- Type to count lines. We do not allow null windows, so must be positive</EM></span>
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_63_12">Column_Count</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>'Last;
-+ <span class="comment"><EM>-- Type to count columns. We do not allow null windows, so must be positive</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_66_9">Key_Code</A></span> <b>is</b> <b>new</b> Integer;
-+ <span class="comment"><EM>-- That is anything including real characters, special keys and logical</EM></span>
-+ <span class="comment"><EM>-- request codes.</EM></span>
-+
-+ <span class="comment"><EM>-- FIXME: The "-1" should be Curses_Err</EM></span>
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_71_12">Real_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A> <b>range</b> -1 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_99_4">KEY_MAX</A>;
-+ <span class="comment"><EM>-- This are the codes that potentially represent a real keystroke.</EM></span>
-+ <span class="comment"><EM>-- Not all codes may be possible on a specific terminal. To check the</EM></span>
-+ <span class="comment"><EM>-- availability of a special key, the Has_Key function is provided.</EM></span>
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_76_12">Special_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>
-+ <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>. <A HREF="terminal_interface-curses_constants__ads.htm#ref_98_4">KEY_MIN</A> - 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>'Last;
-+ <span class="comment"><EM>-- Type for a function- or special key number</EM></span>
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_80_12">Normal_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A> <b>range</b>
- Character'Pos (Character'First) .. Character'Pos (Character'Last);
-- <FONT COLOR=green><EM>-- This are the codes for regular (incl. non-graphical) characters.</EM></FONT>
-+ <span class="comment"><EM>-- This are the codes for regular (incl. non-graphical) characters.</EM></span>
-+
-+ <span class="comment"><EM>-- For those who like to use the original key names we produce them were</EM></span>
-+ <span class="comment"><EM>-- they differ from the original.</EM></span>
-
-- <FONT COLOR=green><EM>-- Constants for function- and special keys</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_88_4">Key_None</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#400#;
-- <FONT COLOR=red><A NAME="ref_89_4">Key_Code_Yes</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#400#;
-- <FONT COLOR=red><A NAME="ref_90_4">Key_Min</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#401#;
-- <FONT COLOR=red><A NAME="ref_91_4">Key_Break</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#401#;
-- <FONT COLOR=red><A NAME="ref_92_4">Key_Cursor_Down</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#402#;
-- <FONT COLOR=red><A NAME="ref_93_4">Key_Cursor_Up</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#403#;
-- <FONT COLOR=red><A NAME="ref_94_4">Key_Cursor_Left</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#404#;
-- <FONT COLOR=red><A NAME="ref_95_4">Key_Cursor_Right</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#405#;
-- <FONT COLOR=red><A NAME="ref_96_4">Key_Home</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#406#;
-- <FONT COLOR=red><A NAME="ref_97_4">Key_Backspace</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#407#;
-- <FONT COLOR=red><A NAME="ref_98_4">Key_F0</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#410#;
-- <FONT COLOR=red><A NAME="ref_99_4">Key_F1</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#411#;
-- <FONT COLOR=red><A NAME="ref_100_4">Key_F2</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#412#;
-- <FONT COLOR=red><A NAME="ref_101_4">Key_F3</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#413#;
-- <FONT COLOR=red><A NAME="ref_102_4">Key_F4</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#414#;
-- <FONT COLOR=red><A NAME="ref_103_4">Key_F5</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#415#;
-- <FONT COLOR=red><A NAME="ref_104_4">Key_F6</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#416#;
-- <FONT COLOR=red><A NAME="ref_105_4">Key_F7</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#417#;
-- <FONT COLOR=red><A NAME="ref_106_4">Key_F8</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#420#;
-- <FONT COLOR=red><A NAME="ref_107_4">Key_F9</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#421#;
-- <FONT COLOR=red><A NAME="ref_108_4">Key_F10</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#422#;
-- <FONT COLOR=red><A NAME="ref_109_4">Key_F11</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#423#;
-- <FONT COLOR=red><A NAME="ref_110_4">Key_F12</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#424#;
-- <FONT COLOR=red><A NAME="ref_111_4">Key_F13</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#425#;
-- <FONT COLOR=red><A NAME="ref_112_4">Key_F14</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#426#;
-- <FONT COLOR=red><A NAME="ref_113_4">Key_F15</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#427#;
-- <FONT COLOR=red><A NAME="ref_114_4">Key_F16</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#430#;
-- <FONT COLOR=red><A NAME="ref_115_4">Key_F17</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#431#;
-- <FONT COLOR=red><A NAME="ref_116_4">Key_F18</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#432#;
-- <FONT COLOR=red><A NAME="ref_117_4">Key_F19</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#433#;
-- <FONT COLOR=red><A NAME="ref_118_4">Key_F20</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#434#;
-- <FONT COLOR=red><A NAME="ref_119_4">Key_F21</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#435#;
-- <FONT COLOR=red><A NAME="ref_120_4">Key_F22</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#436#;
-- <FONT COLOR=red><A NAME="ref_121_4">Key_F23</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#437#;
-- <FONT COLOR=red><A NAME="ref_122_4">Key_F24</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#440#;
-- <FONT COLOR=red><A NAME="ref_123_4">Key_Delete_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#510#;
-- <FONT COLOR=red><A NAME="ref_124_4">Key_Insert_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#511#;
-- <FONT COLOR=red><A NAME="ref_125_4">Key_Delete_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#512#;
-- <FONT COLOR=red><A NAME="ref_126_4">Key_Insert_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#513#;
-- <FONT COLOR=red><A NAME="ref_127_4">Key_Exit_Insert_Mode</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#514#;
-- <FONT COLOR=red><A NAME="ref_128_4">Key_Clear_Screen</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#515#;
-- <FONT COLOR=red><A NAME="ref_129_4">Key_Clear_End_Of_Screen</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#516#;
-- <FONT COLOR=red><A NAME="ref_130_4">Key_Clear_End_Of_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#517#;
-- <FONT COLOR=red><A NAME="ref_131_4">Key_Scroll_1_Forward</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#520#;
-- <FONT COLOR=red><A NAME="ref_132_4">Key_Scroll_1_Backward</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#521#;
-- <FONT COLOR=red><A NAME="ref_133_4">Key_Next_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#522#;
-- <FONT COLOR=red><A NAME="ref_134_4">Key_Previous_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#523#;
-- <FONT COLOR=red><A NAME="ref_135_4">Key_Set_Tab</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#524#;
-- <FONT COLOR=red><A NAME="ref_136_4">Key_Clear_Tab</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#525#;
-- <FONT COLOR=red><A NAME="ref_137_4">Key_Clear_All_Tabs</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#526#;
-- <FONT COLOR=red><A NAME="ref_138_4">Key_Enter_Or_Send</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#527#;
-- <FONT COLOR=red><A NAME="ref_139_4">Key_Soft_Reset</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#530#;
-- <FONT COLOR=red><A NAME="ref_140_4">Key_Reset</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#531#;
-- <FONT COLOR=red><A NAME="ref_141_4">Key_Print</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#532#;
-- <FONT COLOR=red><A NAME="ref_142_4">Key_Bottom</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#533#;
-- <FONT COLOR=red><A NAME="ref_143_4">Key_Upper_Left_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#534#;
-- <FONT COLOR=red><A NAME="ref_144_4">Key_Upper_Right_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#535#;
-- <FONT COLOR=red><A NAME="ref_145_4">Key_Center_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#536#;
-- <FONT COLOR=red><A NAME="ref_146_4">Key_Lower_Left_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#537#;
-- <FONT COLOR=red><A NAME="ref_147_4">Key_Lower_Right_Of_Keypad</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#540#;
-- <FONT COLOR=red><A NAME="ref_148_4">Key_Back_Tab</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#541#;
-- <FONT COLOR=red><A NAME="ref_149_4">Key_Beginning</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#542#;
-- <FONT COLOR=red><A NAME="ref_150_4">Key_Cancel</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#543#;
-- <FONT COLOR=red><A NAME="ref_151_4">Key_Close</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#544#;
-- <FONT COLOR=red><A NAME="ref_152_4">Key_Command</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#545#;
-- <FONT COLOR=red><A NAME="ref_153_4">Key_Copy</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#546#;
-- <FONT COLOR=red><A NAME="ref_154_4">Key_Create</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#547#;
-- <FONT COLOR=red><A NAME="ref_155_4">Key_End</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#550#;
-- <FONT COLOR=red><A NAME="ref_156_4">Key_Exit</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#551#;
-- <FONT COLOR=red><A NAME="ref_157_4">Key_Find</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#552#;
-- <FONT COLOR=red><A NAME="ref_158_4">Key_Help</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#553#;
-- <FONT COLOR=red><A NAME="ref_159_4">Key_Mark</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#554#;
-- <FONT COLOR=red><A NAME="ref_160_4">Key_Message</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#555#;
-- <FONT COLOR=red><A NAME="ref_161_4">Key_Move</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#556#;
-- <FONT COLOR=red><A NAME="ref_162_4">Key_Next</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#557#;
-- <FONT COLOR=red><A NAME="ref_163_4">Key_Open</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#560#;
-- <FONT COLOR=red><A NAME="ref_164_4">Key_Options</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#561#;
-- <FONT COLOR=red><A NAME="ref_165_4">Key_Previous</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#562#;
-- <FONT COLOR=red><A NAME="ref_166_4">Key_Redo</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#563#;
-- <FONT COLOR=red><A NAME="ref_167_4">Key_Reference</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#564#;
-- <FONT COLOR=red><A NAME="ref_168_4">Key_Refresh</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#565#;
-- <FONT COLOR=red><A NAME="ref_169_4">Key_Replace</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#566#;
-- <FONT COLOR=red><A NAME="ref_170_4">Key_Restart</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#567#;
-- <FONT COLOR=red><A NAME="ref_171_4">Key_Resume</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#570#;
-- <FONT COLOR=red><A NAME="ref_172_4">Key_Save</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#571#;
-- <FONT COLOR=red><A NAME="ref_173_4">Key_Shift_Begin</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#572#;
-- <FONT COLOR=red><A NAME="ref_174_4">Key_Shift_Cancel</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#573#;
-- <FONT COLOR=red><A NAME="ref_175_4">Key_Shift_Command</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#574#;
-- <FONT COLOR=red><A NAME="ref_176_4">Key_Shift_Copy</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#575#;
-- <FONT COLOR=red><A NAME="ref_177_4">Key_Shift_Create</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#576#;
-- <FONT COLOR=red><A NAME="ref_178_4">Key_Shift_Delete_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#577#;
-- <FONT COLOR=red><A NAME="ref_179_4">Key_Shift_Delete_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#600#;
-- <FONT COLOR=red><A NAME="ref_180_4">Key_Select</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#601#;
-- <FONT COLOR=red><A NAME="ref_181_4">Key_Shift_End</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#602#;
-- <FONT COLOR=red><A NAME="ref_182_4">Key_Shift_Clear_End_Of_Line</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#603#;
-- <FONT COLOR=red><A NAME="ref_183_4">Key_Shift_Exit</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#604#;
-- <FONT COLOR=red><A NAME="ref_184_4">Key_Shift_Find</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#605#;
-- <FONT COLOR=red><A NAME="ref_185_4">Key_Shift_Help</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#606#;
-- <FONT COLOR=red><A NAME="ref_186_4">Key_Shift_Home</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#607#;
-- <FONT COLOR=red><A NAME="ref_187_4">Key_Shift_Insert_Char</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#610#;
-- <FONT COLOR=red><A NAME="ref_188_4">Key_Shift_Cursor_Left</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#611#;
-- <FONT COLOR=red><A NAME="ref_189_4">Key_Shift_Message</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#612#;
-- <FONT COLOR=red><A NAME="ref_190_4">Key_Shift_Move</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#613#;
-- <FONT COLOR=red><A NAME="ref_191_4">Key_Shift_Next_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#614#;
-- <FONT COLOR=red><A NAME="ref_192_4">Key_Shift_Options</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#615#;
-- <FONT COLOR=red><A NAME="ref_193_4">Key_Shift_Previous_Page</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#616#;
-- <FONT COLOR=red><A NAME="ref_194_4">Key_Shift_Print</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#617#;
-- <FONT COLOR=red><A NAME="ref_195_4">Key_Shift_Redo</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#620#;
-- <FONT COLOR=red><A NAME="ref_196_4">Key_Shift_Replace</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#621#;
-- <FONT COLOR=red><A NAME="ref_197_4">Key_Shift_Cursor_Right</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#622#;
-- <FONT COLOR=red><A NAME="ref_198_4">Key_Shift_Resume</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#623#;
-- <FONT COLOR=red><A NAME="ref_199_4">Key_Shift_Save</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#624#;
-- <FONT COLOR=red><A NAME="ref_200_4">Key_Shift_Suspend</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#625#;
-- <FONT COLOR=red><A NAME="ref_201_4">Key_Shift_Undo</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#626#;
-- <FONT COLOR=red><A NAME="ref_202_4">Key_Suspend</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#627#;
-- <FONT COLOR=red><A NAME="ref_203_4">Key_Undo</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#630#;
-- <FONT COLOR=red><A NAME="ref_204_4">Key_Mouse</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#631#;
-- <FONT COLOR=red><A NAME="ref_205_4">Key_Resize</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> := 8#632#;
--
-- <FONT COLOR=red><A NAME="ref_207_4">Key_Max</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>
-- := <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>'Last;
--
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_210_12">User_Key_Code</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>
-- <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_207_4">Key_Max</A> + 129) .. <A HREF="terminal_interface-curses__ads.htm#ref_68_9">Key_Code</A>'Last;
-- <FONT COLOR=green><EM>-- This is reserved for user defined key codes. The range between Key_Max</EM></FONT>
-- <FONT COLOR=green><EM>-- and the first user code is reserved for subsystems like menu and forms.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- For those who like to use the original key names we produce them were</EM></FONT>
-- <FONT COLOR=green><EM>-- they differ from the original. Please note that they may differ in</EM></FONT>
-- <FONT COLOR=green><EM>-- lower/upper case.</EM></FONT>
-- KEY_DOWN : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_92_4">Key_Cursor_Down</A>;
-- KEY_UP : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_93_4">Key_Cursor_Up</A>;
-- KEY_LEFT : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_94_4">Key_Cursor_Left</A>;
-- KEY_RIGHT : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_95_4">Key_Cursor_Right</A>;
-- KEY_DL : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_123_4">Key_Delete_Line</A>;
-- KEY_IL : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_124_4">Key_Insert_Line</A>;
-- KEY_DC : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_125_4">Key_Delete_Char</A>;
-- KEY_IC : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_126_4">Key_Insert_Char</A>;
-- KEY_EIC : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_127_4">Key_Exit_Insert_Mode</A>;
-- KEY_CLEAR : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_128_4">Key_Clear_Screen</A>;
-- KEY_EOS : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_129_4">Key_Clear_End_Of_Screen</A>;
-- KEY_EOL : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_130_4">Key_Clear_End_Of_Line</A>;
-- KEY_SF : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_131_4">Key_Scroll_1_Forward</A>;
-- KEY_SR : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_132_4">Key_Scroll_1_Backward</A>;
-- KEY_NPAGE : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_133_4">Key_Next_Page</A>;
-- KEY_PPAGE : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_134_4">Key_Previous_Page</A>;
-- KEY_STAB : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_135_4">Key_Set_Tab</A>;
-- KEY_CTAB : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_136_4">Key_Clear_Tab</A>;
-- KEY_CATAB : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_137_4">Key_Clear_All_Tabs</A>;
-- KEY_ENTER : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_138_4">Key_Enter_Or_Send</A>;
-- KEY_SRESET : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_139_4">Key_Soft_Reset</A>;
-- KEY_LL : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_142_4">Key_Bottom</A>;
-- KEY_A1 : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_143_4">Key_Upper_Left_Of_Keypad</A>;
-- KEY_A3 : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_144_4">Key_Upper_Right_Of_Keypad</A>;
-- KEY_B2 : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_145_4">Key_Center_Of_Keypad</A>;
-- KEY_C1 : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_146_4">Key_Lower_Left_Of_Keypad</A>;
-- KEY_C3 : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_147_4">Key_Lower_Right_Of_Keypad</A>;
-- KEY_BTAB : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_148_4">Key_Back_Tab</A>;
-- KEY_BEG : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_149_4">Key_Beginning</A>;
-- KEY_SBEG : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_173_4">Key_Shift_Begin</A>;
-- KEY_SCANCEL : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_174_4">Key_Shift_Cancel</A>;
-- KEY_SCOMMAND : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_175_4">Key_Shift_Command</A>;
-- KEY_SCOPY : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_176_4">Key_Shift_Copy</A>;
-- KEY_SCREATE : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_177_4">Key_Shift_Create</A>;
-- KEY_SDC : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_178_4">Key_Shift_Delete_Char</A>;
-- KEY_SDL : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_179_4">Key_Shift_Delete_Line</A>;
-- KEY_SEND : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_181_4">Key_Shift_End</A>;
-- KEY_SEOL : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_182_4">Key_Shift_Clear_End_Of_Line</A>;
-- KEY_SEXIT : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_183_4">Key_Shift_Exit</A>;
-- KEY_SFIND : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_184_4">Key_Shift_Find</A>;
-- KEY_SHELP : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_185_4">Key_Shift_Help</A>;
-- KEY_SHOME : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_186_4">Key_Shift_Home</A>;
-- KEY_SIC : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_187_4">Key_Shift_Insert_Char</A>;
-- KEY_SLEFT : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_188_4">Key_Shift_Cursor_Left</A>;
-- KEY_SMESSAGE : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_189_4">Key_Shift_Message</A>;
-- KEY_SMOVE : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_190_4">Key_Shift_Move</A>;
-- KEY_SNEXT : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_191_4">Key_Shift_Next_Page</A>;
-- KEY_SOPTIONS : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_192_4">Key_Shift_Options</A>;
-- KEY_SPREVIOUS : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_193_4">Key_Shift_Previous_Page</A>;
-- KEY_SPRINT : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_194_4">Key_Shift_Print</A>;
-- KEY_SREDO : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_195_4">Key_Shift_Redo</A>;
-- KEY_SREPLACE : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_196_4">Key_Shift_Replace</A>;
-- KEY_SRIGHT : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_197_4">Key_Shift_Cursor_Right</A>;
-- KEY_SRSUME : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_198_4">Key_Shift_Resume</A>;
-- KEY_SSAVE : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_199_4">Key_Shift_Save</A>;
-- KEY_SSUSPEND : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_200_4">Key_Shift_Suspend</A>;
-- KEY_SUNDO : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_201_4">Key_Shift_Undo</A>;
--
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_278_9">Color_Number</A></FONT> <b>is</b> <b>range</b> -1 .. Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Last);
-- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Size;
-- <FONT COLOR=green><EM>-- (n)curses uses a short for the color index</EM></FONT>
-- <FONT COLOR=green><EM>-- The model is, that a Color_Number is an index into an array of</EM></FONT>
-- <FONT COLOR=green><EM>-- (potentially) definable colors. Some of those indices are</EM></FONT>
-- <FONT COLOR=green><EM>-- predefined (see below), although they may not really exist.</EM></FONT>
--
-- <FONT COLOR=red><A NAME="ref_285_4">Default_Color</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := -1;
-- <FONT COLOR=red><A NAME="ref_286_4">Black</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 0;
-- <FONT COLOR=red><A NAME="ref_287_4">Red</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 1;
-- <FONT COLOR=red><A NAME="ref_288_4">Green</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 2;
-- <FONT COLOR=red><A NAME="ref_289_4">Yellow</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 3;
-- <FONT COLOR=red><A NAME="ref_290_4">Blue</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 4;
-- <FONT COLOR=red><A NAME="ref_291_4">Magenta</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 5;
-- <FONT COLOR=red><A NAME="ref_292_4">Cyan</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 6;
-- <FONT COLOR=red><A NAME="ref_293_4">White</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := 7;
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_295_9">RGB_Value</A></FONT> <b>is</b> <b>range</b> 0 .. Integer (<A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Last);
-- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.short'Size;
-- <FONT COLOR=green><EM>-- Some system may allow to redefine a color by setting RGB values.</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_299_9">Color_Pair</A></FONT> <b>is</b> <b>range</b> 0 .. 255;
-- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'Size <b>use</b> 8;
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_301_12">Redefinable_Color_Pair</A></FONT> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> <b>range</b> 1 .. 255;
-- <FONT COLOR=green><EM>-- (n)curses reserves 1 Byte for the color-pair number. Color Pair 0</EM></FONT>
-- <FONT COLOR=green><EM>-- is fixed (Black &amp; White). A color pair is simply a combination of</EM></FONT>
-- <FONT COLOR=green><EM>-- two colors described by Color_Numbers, one for the foreground and</EM></FONT>
-- <FONT COLOR=green><EM>-- the other for the background</EM></FONT>
-+ <span class="comment"><EM>-- Constants for function- and special keys</EM></span>
-+ <span class="symbol"><A NAME="ref_88_4">Key_None</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_98_4">KEY_MIN</A> - 1;
-+ <span class="symbol"><A NAME="ref_90_4">Key_Min</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_98_4">KEY_MIN</A>;
-+ <span class="symbol"><A NAME="ref_92_4">Key_Break</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_104_4">KEY_BREAK</A>;
-+ <span class="symbol"><A NAME="ref_94_4">KEY_DOWN</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_105_4">KEY_DOWN</A>;
-+ Key_Cursor_Down : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_94_4">KEY_DOWN</A>;
-+ <span class="symbol"><A NAME="ref_97_4">KEY_UP</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_106_4">KEY_UP</A>;
-+ Key_Cursor_Up : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_97_4">KEY_UP</A>;
-+ <span class="symbol"><A NAME="ref_100_4">KEY_LEFT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_107_4">KEY_LEFT</A>;
-+ Key_Cursor_Left : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_100_4">KEY_LEFT</A>;
-+ <span class="symbol"><A NAME="ref_103_4">KEY_RIGHT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_108_4">KEY_RIGHT</A>;
-+ Key_Cursor_Right : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_103_4">KEY_RIGHT</A>;
-+ <span class="symbol"><A NAME="ref_106_4">Key_Home</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_109_4">KEY_HOME</A>;
-+ <span class="symbol"><A NAME="ref_108_4">Key_Backspace</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_110_4">KEY_BACKSPACE</A>;
-+ <span class="symbol"><A NAME="ref_110_4">Key_F0</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_111_4">KEY_F0</A>;
-+ <span class="symbol"><A NAME="ref_112_4">Key_F1</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_112_4">KEY_F1</A>;
-+ <span class="symbol"><A NAME="ref_114_4">Key_F2</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_113_4">KEY_F2</A>;
-+ <span class="symbol"><A NAME="ref_116_4">Key_F3</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_114_4">KEY_F3</A>;
-+ <span class="symbol"><A NAME="ref_118_4">Key_F4</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_115_4">KEY_F4</A>;
-+ <span class="symbol"><A NAME="ref_120_4">Key_F5</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_116_4">KEY_F5</A>;
-+ <span class="symbol"><A NAME="ref_122_4">Key_F6</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_117_4">KEY_F6</A>;
-+ <span class="symbol"><A NAME="ref_124_4">Key_F7</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_118_4">KEY_F7</A>;
-+ <span class="symbol"><A NAME="ref_126_4">Key_F8</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_119_4">KEY_F8</A>;
-+ <span class="symbol"><A NAME="ref_128_4">Key_F9</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_120_4">KEY_F9</A>;
-+ <span class="symbol"><A NAME="ref_130_4">Key_F10</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_121_4">KEY_F10</A>;
-+ <span class="symbol"><A NAME="ref_132_4">Key_F11</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_122_4">KEY_F11</A>;
-+ <span class="symbol"><A NAME="ref_134_4">Key_F12</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_123_4">KEY_F12</A>;
-+ <span class="symbol"><A NAME="ref_136_4">Key_F13</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_124_4">KEY_F13</A>;
-+ <span class="symbol"><A NAME="ref_138_4">Key_F14</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_125_4">KEY_F14</A>;
-+ <span class="symbol"><A NAME="ref_140_4">Key_F15</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_126_4">KEY_F15</A>;
-+ <span class="symbol"><A NAME="ref_142_4">Key_F16</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_127_4">KEY_F16</A>;
-+ <span class="symbol"><A NAME="ref_144_4">Key_F17</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_128_4">KEY_F17</A>;
-+ <span class="symbol"><A NAME="ref_146_4">Key_F18</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_129_4">KEY_F18</A>;
-+ <span class="symbol"><A NAME="ref_148_4">Key_F19</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_130_4">KEY_F19</A>;
-+ <span class="symbol"><A NAME="ref_150_4">Key_F20</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_131_4">KEY_F20</A>;
-+ <span class="symbol"><A NAME="ref_152_4">Key_F21</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_132_4">KEY_F21</A>;
-+ <span class="symbol"><A NAME="ref_154_4">Key_F22</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_133_4">KEY_F22</A>;
-+ <span class="symbol"><A NAME="ref_156_4">Key_F23</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_134_4">KEY_F23</A>;
-+ <span class="symbol"><A NAME="ref_158_4">Key_F24</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_135_4">KEY_F24</A>;
-+ <span class="symbol"><A NAME="ref_160_4">KEY_DL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_136_4">KEY_DL</A>;
-+ Key_Delete_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_160_4">KEY_DL</A>;
-+ <span class="symbol"><A NAME="ref_163_4">KEY_IL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_137_4">KEY_IL</A>;
-+ Key_Insert_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_163_4">KEY_IL</A>;
-+ <span class="symbol"><A NAME="ref_166_4">KEY_DC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_138_4">KEY_DC</A>;
-+ Key_Delete_Char : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_166_4">KEY_DC</A>;
-+ <span class="symbol"><A NAME="ref_169_4">KEY_IC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_139_4">KEY_IC</A>;
-+ Key_Insert_Char : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_169_4">KEY_IC</A>;
-+ <span class="symbol"><A NAME="ref_172_4">KEY_EIC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_140_4">KEY_EIC</A>;
-+ Key_Exit_Insert_Mode : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_172_4">KEY_EIC</A>;
-+ <span class="symbol"><A NAME="ref_175_4">KEY_CLEAR</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_141_4">KEY_CLEAR</A>;
-+ Key_Clear_Screen : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_175_4">KEY_CLEAR</A>;
-+ <span class="symbol"><A NAME="ref_178_4">KEY_EOS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_142_4">KEY_EOS</A>;
-+ Key_Clear_End_Of_Screen : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_178_4">KEY_EOS</A>;
-+ <span class="symbol"><A NAME="ref_181_4">KEY_EOL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_143_4">KEY_EOL</A>;
-+ Key_Clear_End_Of_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_181_4">KEY_EOL</A>;
-+ <span class="symbol"><A NAME="ref_184_4">KEY_SF</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_144_4">KEY_SF</A>;
-+ Key_Scroll_1_Forward : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_184_4">KEY_SF</A>;
-+ <span class="symbol"><A NAME="ref_187_4">KEY_SR</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_145_4">KEY_SR</A>;
-+ Key_Scroll_1_Backward : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_187_4">KEY_SR</A>;
-+ <span class="symbol"><A NAME="ref_190_4">KEY_NPAGE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_146_4">KEY_NPAGE</A>;
-+ Key_Next_Page : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_190_4">KEY_NPAGE</A>;
-+ <span class="symbol"><A NAME="ref_193_4">KEY_PPAGE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_147_4">KEY_PPAGE</A>;
-+ Key_Previous_Page : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_193_4">KEY_PPAGE</A>;
-+ <span class="symbol"><A NAME="ref_196_4">KEY_STAB</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_148_4">KEY_STAB</A>;
-+ Key_Set_Tab : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_196_4">KEY_STAB</A>;
-+ <span class="symbol"><A NAME="ref_199_4">KEY_CTAB</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_149_4">KEY_CTAB</A>;
-+ Key_Clear_Tab : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_199_4">KEY_CTAB</A>;
-+ <span class="symbol"><A NAME="ref_202_4">KEY_CATAB</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_150_4">KEY_CATAB</A>;
-+ Key_Clear_All_Tabs : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_202_4">KEY_CATAB</A>;
-+ <span class="symbol"><A NAME="ref_205_4">KEY_ENTER</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_151_4">KEY_ENTER</A>;
-+ Key_Enter_Or_Send : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_205_4">KEY_ENTER</A>;
-+ <span class="symbol"><A NAME="ref_208_4">KEY_SRESET</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_152_4">KEY_SRESET</A>;
-+ Key_Soft_Reset : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_208_4">KEY_SRESET</A>;
-+ <span class="symbol"><A NAME="ref_211_4">Key_Reset</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_153_4">KEY_RESET</A>;
-+ <span class="symbol"><A NAME="ref_213_4">Key_Print</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_154_4">KEY_PRINT</A>;
-+ <span class="symbol"><A NAME="ref_215_4">KEY_LL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_155_4">KEY_LL</A>;
-+ Key_Bottom : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_215_4">KEY_LL</A>;
-+ <span class="symbol"><A NAME="ref_218_4">KEY_A1</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_156_4">KEY_A1</A>;
-+ Key_Upper_Left_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_218_4">KEY_A1</A>;
-+ <span class="symbol"><A NAME="ref_221_4">KEY_A3</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_157_4">KEY_A3</A>;
-+ Key_Upper_Right_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_221_4">KEY_A3</A>;
-+ <span class="symbol"><A NAME="ref_224_4">KEY_B2</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_158_4">KEY_B2</A>;
-+ Key_Center_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_224_4">KEY_B2</A>;
-+ <span class="symbol"><A NAME="ref_227_4">KEY_C1</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_159_4">KEY_C1</A>;
-+ Key_Lower_Left_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_227_4">KEY_C1</A>;
-+ <span class="symbol"><A NAME="ref_230_4">KEY_C3</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_160_4">KEY_C3</A>;
-+ Key_Lower_Right_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_230_4">KEY_C3</A>;
-+ <span class="symbol"><A NAME="ref_233_4">KEY_BTAB</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_161_4">KEY_BTAB</A>;
-+ Key_Back_Tab : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_233_4">KEY_BTAB</A>;
-+ <span class="symbol"><A NAME="ref_236_4">KEY_BEG</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_162_4">KEY_BEG</A>;
-+ Key_Beginning : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_236_4">KEY_BEG</A>;
-+ <span class="symbol"><A NAME="ref_239_4">Key_Cancel</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_163_4">KEY_CANCEL</A>;
-+ <span class="symbol"><A NAME="ref_241_4">Key_Close</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_164_4">KEY_CLOSE</A>;
-+ <span class="symbol"><A NAME="ref_243_4">Key_Command</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_165_4">KEY_COMMAND</A>;
-+ <span class="symbol"><A NAME="ref_245_4">Key_Copy</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_166_4">KEY_COPY</A>;
-+ <span class="symbol"><A NAME="ref_247_4">Key_Create</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_167_4">KEY_CREATE</A>;
-+ <span class="symbol"><A NAME="ref_249_4">Key_End</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_168_4">KEY_END</A>;
-+ <span class="symbol"><A NAME="ref_251_4">Key_Exit</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_169_4">KEY_EXIT</A>;
-+ <span class="symbol"><A NAME="ref_253_4">Key_Find</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_170_4">KEY_FIND</A>;
-+ <span class="symbol"><A NAME="ref_255_4">Key_Help</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_171_4">KEY_HELP</A>;
-+ <span class="symbol"><A NAME="ref_257_4">Key_Mark</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_172_4">KEY_MARK</A>;
-+ <span class="symbol"><A NAME="ref_259_4">Key_Message</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_173_4">KEY_MESSAGE</A>;
-+ <span class="symbol"><A NAME="ref_261_4">Key_Move</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_174_4">KEY_MOVE</A>;
-+ <span class="symbol"><A NAME="ref_263_4">Key_Next</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_175_4">KEY_NEXT</A>;
-+ <span class="symbol"><A NAME="ref_265_4">Key_Open</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_176_4">KEY_OPEN</A>;
-+ <span class="symbol"><A NAME="ref_267_4">Key_Options</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_177_4">KEY_OPTIONS</A>;
-+ <span class="symbol"><A NAME="ref_269_4">Key_Previous</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_178_4">KEY_PREVIOUS</A>;
-+ <span class="symbol"><A NAME="ref_271_4">Key_Redo</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_179_4">KEY_REDO</A>;
-+ <span class="symbol"><A NAME="ref_273_4">Key_Reference</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_180_4">KEY_REFERENCE</A>;
-+ <span class="symbol"><A NAME="ref_275_4">Key_Refresh</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_181_4">KEY_REFRESH</A>;
-+ <span class="symbol"><A NAME="ref_277_4">Key_Replace</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_182_4">KEY_REPLACE</A>;
-+ <span class="symbol"><A NAME="ref_279_4">Key_Restart</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_183_4">KEY_RESTART</A>;
-+ <span class="symbol"><A NAME="ref_281_4">Key_Resume</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_184_4">KEY_RESUME</A>;
-+ <span class="symbol"><A NAME="ref_283_4">Key_Save</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_185_4">KEY_SAVE</A>;
-+ <span class="symbol"><A NAME="ref_285_4">KEY_SBEG</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_186_4">KEY_SBEG</A>;
-+ Key_Shift_Begin : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_285_4">KEY_SBEG</A>;
-+ <span class="symbol"><A NAME="ref_288_4">KEY_SCANCEL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_187_4">KEY_SCANCEL</A>;
-+ Key_Shift_Cancel : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_288_4">KEY_SCANCEL</A>;
-+ <span class="symbol"><A NAME="ref_291_4">KEY_SCOMMAND</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_188_4">KEY_SCOMMAND</A>;
-+ Key_Shift_Command : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_291_4">KEY_SCOMMAND</A>;
-+ <span class="symbol"><A NAME="ref_294_4">KEY_SCOPY</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_189_4">KEY_SCOPY</A>;
-+ Key_Shift_Copy : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_294_4">KEY_SCOPY</A>;
-+ <span class="symbol"><A NAME="ref_297_4">KEY_SCREATE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_190_4">KEY_SCREATE</A>;
-+ Key_Shift_Create : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_297_4">KEY_SCREATE</A>;
-+ <span class="symbol"><A NAME="ref_300_4">KEY_SDC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_191_4">KEY_SDC</A>;
-+ Key_Shift_Delete_Char : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_300_4">KEY_SDC</A>;
-+ <span class="symbol"><A NAME="ref_303_4">KEY_SDL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_192_4">KEY_SDL</A>;
-+ Key_Shift_Delete_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_303_4">KEY_SDL</A>;
-+ <span class="symbol"><A NAME="ref_306_4">Key_Select</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_193_4">KEY_SELECT</A>;
-+ <span class="symbol"><A NAME="ref_308_4">KEY_SEND</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_194_4">KEY_SEND</A>;
-+ Key_Shift_End : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_308_4">KEY_SEND</A>;
-+ <span class="symbol"><A NAME="ref_311_4">KEY_SEOL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_195_4">KEY_SEOL</A>;
-+ Key_Shift_Clear_End_Of_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_311_4">KEY_SEOL</A>;
-+ <span class="symbol"><A NAME="ref_314_4">KEY_SEXIT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_196_4">KEY_SEXIT</A>;
-+ Key_Shift_Exit : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_314_4">KEY_SEXIT</A>;
-+ <span class="symbol"><A NAME="ref_317_4">KEY_SFIND</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_197_4">KEY_SFIND</A>;
-+ Key_Shift_Find : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_317_4">KEY_SFIND</A>;
-+ <span class="symbol"><A NAME="ref_320_4">KEY_SHELP</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_198_4">KEY_SHELP</A>;
-+ Key_Shift_Help : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_320_4">KEY_SHELP</A>;
-+ <span class="symbol"><A NAME="ref_323_4">KEY_SHOME</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_199_4">KEY_SHOME</A>;
-+ Key_Shift_Home : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_323_4">KEY_SHOME</A>;
-+ <span class="symbol"><A NAME="ref_326_4">KEY_SIC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_200_4">KEY_SIC</A>;
-+ Key_Shift_Insert_Char : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_326_4">KEY_SIC</A>;
-+ <span class="symbol"><A NAME="ref_329_4">KEY_SLEFT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_201_4">KEY_SLEFT</A>;
-+ Key_Shift_Cursor_Left : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_329_4">KEY_SLEFT</A>;
-+ <span class="symbol"><A NAME="ref_332_4">KEY_SMESSAGE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_202_4">KEY_SMESSAGE</A>;
-+ Key_Shift_Message : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_332_4">KEY_SMESSAGE</A>;
-+ <span class="symbol"><A NAME="ref_335_4">KEY_SMOVE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_203_4">KEY_SMOVE</A>;
-+ Key_Shift_Move : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_335_4">KEY_SMOVE</A>;
-+ <span class="symbol"><A NAME="ref_338_4">KEY_SNEXT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_204_4">KEY_SNEXT</A>;
-+ Key_Shift_Next_Page : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_338_4">KEY_SNEXT</A>;
-+ <span class="symbol"><A NAME="ref_341_4">KEY_SOPTIONS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_205_4">KEY_SOPTIONS</A>;
-+ Key_Shift_Options : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_341_4">KEY_SOPTIONS</A>;
-+ <span class="symbol"><A NAME="ref_344_4">KEY_SPREVIOUS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_206_4">KEY_SPREVIOUS</A>;
-+ Key_Shift_Previous_Page : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_344_4">KEY_SPREVIOUS</A>;
-+ <span class="symbol"><A NAME="ref_347_4">KEY_SPRINT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_207_4">KEY_SPRINT</A>;
-+ Key_Shift_Print : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_347_4">KEY_SPRINT</A>;
-+ <span class="symbol"><A NAME="ref_350_4">KEY_SREDO</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_208_4">KEY_SREDO</A>;
-+ Key_Shift_Redo : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_350_4">KEY_SREDO</A>;
-+ <span class="symbol"><A NAME="ref_353_4">KEY_SREPLACE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_209_4">KEY_SREPLACE</A>;
-+ Key_Shift_Replace : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_4">KEY_SREPLACE</A>;
-+ <span class="symbol"><A NAME="ref_356_4">KEY_SRIGHT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_210_4">KEY_SRIGHT</A>;
-+ Key_Shift_Cursor_Right : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_356_4">KEY_SRIGHT</A>;
-+ <span class="symbol"><A NAME="ref_359_4">KEY_SRSUME</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_211_4">KEY_SRSUME</A>;
-+ Key_Shift_Resume : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_359_4">KEY_SRSUME</A>;
-+ <span class="symbol"><A NAME="ref_362_4">KEY_SSAVE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_212_4">KEY_SSAVE</A>;
-+ Key_Shift_Save : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_362_4">KEY_SSAVE</A>;
-+ <span class="symbol"><A NAME="ref_365_4">KEY_SSUSPEND</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_213_4">KEY_SSUSPEND</A>;
-+ Key_Shift_Suspend : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_365_4">KEY_SSUSPEND</A>;
-+ <span class="symbol"><A NAME="ref_368_4">KEY_SUNDO</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_214_4">KEY_SUNDO</A>;
-+ Key_Shift_Undo : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_368_4">KEY_SUNDO</A>;
-+ <span class="symbol"><A NAME="ref_371_4">Key_Suspend</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_215_4">KEY_SUSPEND</A>;
-+ <span class="symbol"><A NAME="ref_373_4">Key_Undo</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_216_4">KEY_UNDO</A>;
-+ <span class="symbol"><A NAME="ref_375_4">Key_Mouse</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_217_4">KEY_MOUSE</A>;
-+ <span class="symbol"><A NAME="ref_377_4">Key_Resize</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_218_4">KEY_RESIZE</A>;
-+ <span class="symbol"><A NAME="ref_379_4">Key_Max</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
-+ := <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>'Last;
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_382_12">User_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A>
-+ <b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 129) .. <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A>'Last;
-+ <span class="comment"><EM>-- This is reserved for user defined key codes. The range between Key_Max</EM></span>
-+ <span class="comment"><EM>-- and the first user code is reserved for subsystems like menu and forms.</EM></span>
-+
-+ <span class="comment"><EM>--------------------------------------------------------------------------</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_389_9">Color_Number</A></span> <b>is</b> <b>range</b> -1 .. Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Last);
-+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Size;
-+ <span class="comment"><EM>-- (n)curses uses a short for the color index</EM></span>
-+ <span class="comment"><EM>-- The model is, that a Color_Number is an index into an array of</EM></span>
-+ <span class="comment"><EM>-- (potentially) definable colors. Some of those indices are</EM></span>
-+ <span class="comment"><EM>-- predefined (see below), although they may not really exist.</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_396_4">Black</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_69_4">COLOR_BLACK</A>;
-+ <span class="symbol"><A NAME="ref_397_4">Red</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_70_4">COLOR_RED</A>;
-+ <span class="symbol"><A NAME="ref_398_4">Green</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_71_4">COLOR_GREEN</A>;
-+ <span class="symbol"><A NAME="ref_399_4">Yellow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_72_4">COLOR_YELLOW</A>;
-+ <span class="symbol"><A NAME="ref_400_4">Blue</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_73_4">COLOR_BLUE</A>;
-+ <span class="symbol"><A NAME="ref_401_4">Magenta</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_74_4">COLOR_MAGENTA</A>;
-+ <span class="symbol"><A NAME="ref_402_4">Cyan</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_75_4">COLOR_CYAN</A>;
-+ <span class="symbol"><A NAME="ref_403_4">White</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_76_4">COLOR_WHITE</A>;
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_405_9">RGB_Value</A></span> <b>is</b> <b>range</b> 0 .. Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Last);
-+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Size;
-+ <span class="comment"><EM>-- Some system may allow to redefine a color by setting RGB values.</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_409_9">Color_Pair</A></span> <b>is</b> <b>range</b> 0 .. 255;
-+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'Size <b>use</b> 8;
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_411_12">Redefinable_Color_Pair</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> <b>range</b> 1 .. 255;
-+ <span class="comment"><EM>-- (n)curses reserves 1 Byte for the color-pair number. Color Pair 0</EM></span>
-+ <span class="comment"><EM>-- is fixed (Black &amp; White). A color pair is simply a combination of</EM></span>
-+ <span class="comment"><EM>-- two colors described by Color_Numbers, one for the foreground and</EM></span>
-+ <span class="comment"><EM>-- the other for the background</EM></span>
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_307_9">Character_Attribute_Set</A></FONT> <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_417_9">Character_Attribute_Set</A></span> <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_309_10">Stand_Out</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_310_10">Under_Line</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_311_10">Reverse_Video</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_312_10">Blink</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_313_10">Dim_Character</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_314_10">Bold_Character</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_315_10">Alternate_Character_Set</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_316_10">Invisible_Character</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_317_10">Protected_Character</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_318_10">Horizontal</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_319_10">Left</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_320_10">Low</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_321_10">Right</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_322_10">Top</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_323_10">Vertical</A></FONT> : Boolean;
-- <FONT COLOR=red><A NAME="ref_324_10">Unused</A></FONT> : Boolean;
-+ <span class="symbol"><A NAME="ref_419_10">Stand_Out</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_420_10">Under_Line</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_421_10">Reverse_Video</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_422_10">Blink</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_423_10">Dim_Character</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_424_10">Bold_Character</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_425_10">Protected_Character</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_426_10">Invisible_Character</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_427_10">Alternate_Character_Set</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_428_10">Horizontal</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_429_10">Left</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_430_10">Low</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_431_10">Right</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_432_10">Top</A></span> : Boolean;
-+ <span class="symbol"><A NAME="ref_433_10">Vertical</A></span> : Boolean;
- <b>end</b> <b>record</b>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>);
-
-- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> <b>use</b>
-+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> <b>use</b>
- <b>record</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_309_10">Stand_Out</A> <b>at</b> 0 <b>range</b> 0 .. 0;
-- <A HREF="terminal_interface-curses__ads.htm#ref_310_10">Under_Line</A> <b>at</b> 0 <b>range</b> 1 .. 1;
-- <A HREF="terminal_interface-curses__ads.htm#ref_311_10">Reverse_Video</A> <b>at</b> 0 <b>range</b> 2 .. 2;
-- <A HREF="terminal_interface-curses__ads.htm#ref_312_10">Blink</A> <b>at</b> 0 <b>range</b> 3 .. 3;
-- <A HREF="terminal_interface-curses__ads.htm#ref_313_10">Dim_Character</A> <b>at</b> 0 <b>range</b> 4 .. 4;
-- <A HREF="terminal_interface-curses__ads.htm#ref_314_10">Bold_Character</A> <b>at</b> 0 <b>range</b> 5 .. 5;
-- <A HREF="terminal_interface-curses__ads.htm#ref_315_10">Alternate_Character_Set</A> <b>at</b> 0 <b>range</b> 6 .. 6;
-- <A HREF="terminal_interface-curses__ads.htm#ref_316_10">Invisible_Character</A> <b>at</b> 0 <b>range</b> 7 .. 7;
-- <A HREF="terminal_interface-curses__ads.htm#ref_317_10">Protected_Character</A> <b>at</b> 0 <b>range</b> 8 .. 8;
-- <A HREF="terminal_interface-curses__ads.htm#ref_318_10">Horizontal</A> <b>at</b> 0 <b>range</b> 9 .. 9;
-- <A HREF="terminal_interface-curses__ads.htm#ref_319_10">Left</A> <b>at</b> 0 <b>range</b> 10 .. 10;
-- <A HREF="terminal_interface-curses__ads.htm#ref_320_10">Low</A> <b>at</b> 0 <b>range</b> 11 .. 11;
-- <A HREF="terminal_interface-curses__ads.htm#ref_321_10">Right</A> <b>at</b> 0 <b>range</b> 12 .. 12;
-- <A HREF="terminal_interface-curses__ads.htm#ref_322_10">Top</A> <b>at</b> 0 <b>range</b> 13 .. 13;
-- <A HREF="terminal_interface-curses__ads.htm#ref_323_10">Vertical</A> <b>at</b> 0 <b>range</b> 14 .. 14;
-- <A HREF="terminal_interface-curses__ads.htm#ref_324_10">Unused</A> <b>at</b> 0 <b>range</b> 15 .. 15;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_419_10">Stand_Out</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_35_4">A_STANDOUT_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_36_4">A_STANDOUT_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_420_10">Under_Line</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_37_4">A_UNDERLINE_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_38_4">A_UNDERLINE_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_421_10">Reverse_Video</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_39_4">A_REVERSE_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_40_4">A_REVERSE_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_422_10">Blink</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_41_4">A_BLINK_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_42_4">A_BLINK_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_423_10">Dim_Character</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_43_4">A_DIM_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_44_4">A_DIM_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_424_10">Bold_Character</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_45_4">A_BOLD_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_46_4">A_BOLD_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_425_10">Protected_Character</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_47_4">A_PROTECT_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_48_4">A_PROTECT_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_426_10">Invisible_Character</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_49_4">A_INVIS_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_50_4">A_INVIS_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_427_10">Alternate_Character_Set</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_51_4">A_ALTCHARSET_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_52_4">A_ALTCHARSET_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_428_10">Horizontal</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_53_4">A_HORIZONTAL_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_54_4">A_HORIZONTAL_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_429_10">Left</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_55_4">A_LEFT_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_56_4">A_LEFT_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_430_10">Low</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_57_4">A_LOW_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_58_4">A_LOW_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_431_10">Right</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_59_4">A_RIGHT_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_60_4">A_RIGHT_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_432_10">Top</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_61_4">A_TOP_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_62_4">A_TOP_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_433_10">Vertical</A> <b>at</b> 0 <b>range</b>
-+ <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_63_4">A_VERTICAL_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_64_4">A_VERTICAL_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
- <b>end</b> <b>record</b>;
-- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>'Size <b>use</b> 16;
-- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT>
-- <FONT COLOR=green><EM>-- different on your system.</EM></FONT>
-- <FONT COLOR=green><EM>-- (n)curses uses all but the lowest 16 Bits for Attributes.</EM></FONT>
-
-- <FONT COLOR=red><A NAME="ref_352_4">Normal_Video</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := (<b>others</b> =&gt; False);
-+ <span class="symbol"><A NAME="ref_485_4">Normal_Video</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := (<b>others</b> =&gt; False);
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_354_9">Attributed_Character</A></FONT> <b>is</b>
-+ <b>type</b> <span class="symbol"><A NAME="ref_487_9">Attributed_Character</A></span> <b>is</b>
- <b>record</b>
-- <FONT COLOR=red><A NAME="ref_356_10">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_357_10">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>;
-- <FONT COLOR=red><A NAME="ref_358_10">Ch</A></FONT> : Character;
-+ <span class="symbol"><A NAME="ref_489_10">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_490_10">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>;
-+ <span class="symbol"><A NAME="ref_491_10">Ch</A></span> : Character;
- <b>end</b> <b>record</b>;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <FONT COLOR=green><EM>-- This is the counterpart for the chtype in C.</EM></FONT>
-+ <b>pragma</b> Convention (C_Pass_By_Copy, <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
-+ <span class="comment"><EM>-- This is the counterpart for the chtype in C.</EM></span>
-
-- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> <b>use</b>
-+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> <b>use</b>
- <b>record</b>
-- <A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> <b>at</b> 0 <b>range</b> 0 .. 7;
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> <b>at</b> 0 <b>range</b> 8 .. 15;
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> <b>at</b> 0 <b>range</b> 16 .. 31;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_29_4">A_CHARTEXT_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_30_4">A_CHARTEXT_Last</A>;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_31_4">A_COLOR_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_32_4">A_COLOR_Last</A>;
-+ <b>pragma</b> Warnings (Off);
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
-+ .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_34_4">Attr_Last</A>;
-+ <b>pragma</b> Warnings (On);
- <b>end</b> <b>record</b>;
-- <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>'Size <b>use</b> 32;
-- <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT>
-- <FONT COLOR=green><EM>-- different on your system.</EM></FONT>
--
-- <FONT COLOR=red><A NAME="ref_373_4">Default_Character</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>
-- := (<A HREF="terminal_interface-curses__ads.htm#ref_358_10">Ch</A> =&gt; Character'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_357_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First,
-- <A HREF="terminal_interface-curses__ads.htm#ref_356_10">Attr</A> =&gt; (<b>others</b> =&gt; False)); <FONT COLOR=green><EM>-- preelaboratable Normal_Video</EM></FONT>
--
-- <b>type</b> Attributed_String <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
-- <b>pragma</b> Pack (Attributed_String);
-- <FONT COLOR=green><EM>-- In this binding we allow strings of attributed characters.</EM></FONT>
--
-- <FONT COLOR=green><EM>------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- Exceptions --</EM></FONT>
-- <FONT COLOR=green><EM>------------------</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_385_4">Curses_Exception</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_386_4">Wrong_Curses_Version</A></FONT> : <b>exception</b>;
--
-- <FONT COLOR=green><EM>-- Those exceptions are raised by the ETI (Extended Terminal Interface)</EM></FONT>
-- <FONT COLOR=green><EM>-- subpackets for Menu and Forms handling.</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_391_4">Eti_System_Error</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_392_4">Eti_Bad_Argument</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_393_4">Eti_Posted</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_394_4">Eti_Connected</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_395_4">Eti_Bad_State</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_396_4">Eti_No_Room</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_397_4">Eti_Not_Posted</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_398_4">Eti_Unknown_Command</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_399_4">Eti_No_Match</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_400_4">Eti_Not_Selectable</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_401_4">Eti_Not_Connected</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_402_4">Eti_Request_Denied</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_403_4">Eti_Invalid_Field</A></FONT> : <b>exception</b>;
-- <FONT COLOR=red><A NAME="ref_404_4">Eti_Current</A></FONT> : <b>exception</b>;
--
-- <FONT COLOR=green><EM>--------------------------------------------------------------------------</EM></FONT>
-- <FONT COLOR=green><EM>-- External C variables</EM></FONT>
-- <FONT COLOR=green><EM>-- Conceptually even in C this are kind of constants, but they are</EM></FONT>
-- <FONT COLOR=green><EM>-- initialized and sometimes changed by the library routines at runtime</EM></FONT>
-- <FONT COLOR=green><EM>-- depending on the type of terminal. I believe the best way to model</EM></FONT>
-- <FONT COLOR=green><EM>-- this is to use functions.</EM></FONT>
-- <FONT COLOR=green><EM>--------------------------------------------------------------------------</EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_414_13" HREF="terminal_interface-curses__adb.htm#ref_2355_13">Lines</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_414_13">Lines</A>);
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_417_13" HREF="terminal_interface-curses__adb.htm#ref_2363_13">Columns</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_417_13">Columns</A>);
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_420_13" HREF="terminal_interface-curses__adb.htm#ref_2371_13">Tab_Size</A></FONT> <b>return</b> Natural;
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_420_13">Tab_Size</A>);
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_423_13" HREF="terminal_interface-curses__adb.htm#ref_2379_13">Number_Of_Colors</A></FONT> <b>return</b> Natural;
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_423_13">Number_Of_Colors</A>);
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_426_13" HREF="terminal_interface-curses__adb.htm#ref_2387_13">Number_Of_Color_Pairs</A></FONT> <b>return</b> Natural;
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_426_13">Number_Of_Color_Pairs</A>);
--
-- <b>type</b> C_ACS_Map <b>is</b> <b>array</b> (Character'Val (0) .. Character'Val (127))
-- <b>of</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
-- <FONT COLOR=red><A NAME="ref_431_4">ACS_Map</A></FONT> : C_ACS_Map;
-- <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__ads.htm#ref_431_4">ACS_Map</A>, "acs_map");
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>-- Constants for several characters from the Alternate Character Set</EM></FONT>
-- <FONT COLOR=green><EM>-- You must use these constants as indices into the ACS_Map array</EM></FONT>
-- <FONT COLOR=green><EM>-- to get the corresponding attributed character at runtime.</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_439_4">ACS_Upper_Left_Corner</A></FONT> : <b>constant</b> Character := 'l';
-- <FONT COLOR=red><A NAME="ref_440_4">ACS_Lower_Left_Corner</A></FONT> : <b>constant</b> Character := 'm';
-- <FONT COLOR=red><A NAME="ref_441_4">ACS_Upper_Right_Corner</A></FONT> : <b>constant</b> Character := 'k';
-- <FONT COLOR=red><A NAME="ref_442_4">ACS_Lower_Right_Corner</A></FONT> : <b>constant</b> Character := 'j';
-- <FONT COLOR=red><A NAME="ref_443_4">ACS_Left_Tee</A></FONT> : <b>constant</b> Character := 't';
-- <FONT COLOR=red><A NAME="ref_444_4">ACS_Right_Tee</A></FONT> : <b>constant</b> Character := 'u';
-- <FONT COLOR=red><A NAME="ref_445_4">ACS_Bottom_Tee</A></FONT> : <b>constant</b> Character := 'v';
-- <FONT COLOR=red><A NAME="ref_446_4">ACS_Top_Tee</A></FONT> : <b>constant</b> Character := 'w';
-- <FONT COLOR=red><A NAME="ref_447_4">ACS_Horizontal_Line</A></FONT> : <b>constant</b> Character := 'q';
-- <FONT COLOR=red><A NAME="ref_448_4">ACS_Vertical_Line</A></FONT> : <b>constant</b> Character := 'x';
-- <FONT COLOR=red><A NAME="ref_449_4">ACS_Plus_Symbol</A></FONT> : <b>constant</b> Character := 'n';
-- <FONT COLOR=red><A NAME="ref_450_4">ACS_Scan_Line_1</A></FONT> : <b>constant</b> Character := 'o';
-- <FONT COLOR=red><A NAME="ref_451_4">ACS_Scan_Line_9</A></FONT> : <b>constant</b> Character := 's';
-- <FONT COLOR=red><A NAME="ref_452_4">ACS_Diamond</A></FONT> : <b>constant</b> Character := Character'Val (96);
-- <FONT COLOR=red><A NAME="ref_453_4">ACS_Checker_Board</A></FONT> : <b>constant</b> Character := 'a';
-- <FONT COLOR=red><A NAME="ref_454_4">ACS_Degree</A></FONT> : <b>constant</b> Character := 'f';
-- <FONT COLOR=red><A NAME="ref_455_4">ACS_Plus_Minus</A></FONT> : <b>constant</b> Character := 'g';
-- <FONT COLOR=red><A NAME="ref_456_4">ACS_Bullet</A></FONT> : <b>constant</b> Character := '~';
-- <FONT COLOR=red><A NAME="ref_457_4">ACS_Left_Arrow</A></FONT> : <b>constant</b> Character := ',';
-- <FONT COLOR=red><A NAME="ref_458_4">ACS_Right_Arrow</A></FONT> : <b>constant</b> Character := '+';
-- <FONT COLOR=red><A NAME="ref_459_4">ACS_Down_Arrow</A></FONT> : <b>constant</b> Character := '.';
-- <FONT COLOR=red><A NAME="ref_460_4">ACS_Up_Arrow</A></FONT> : <b>constant</b> Character := '-';
-- <FONT COLOR=red><A NAME="ref_461_4">ACS_Board_Of_Squares</A></FONT> : <b>constant</b> Character := 'h';
-- <FONT COLOR=red><A NAME="ref_462_4">ACS_Lantern</A></FONT> : <b>constant</b> Character := 'i';
-- <FONT COLOR=red><A NAME="ref_463_4">ACS_Solid_Block</A></FONT> : <b>constant</b> Character := '0';
-- <FONT COLOR=red><A NAME="ref_464_4">ACS_Scan_Line_3</A></FONT> : <b>constant</b> Character := 'p';
-- <FONT COLOR=red><A NAME="ref_465_4">ACS_Scan_Line_7</A></FONT> : <b>constant</b> Character := 'r';
-- <FONT COLOR=red><A NAME="ref_466_4">ACS_Less_Or_Equal</A></FONT> : <b>constant</b> Character := 'y';
-- <FONT COLOR=red><A NAME="ref_467_4">ACS_Greater_Or_Equal</A></FONT> : <b>constant</b> Character := 'z';
-- <FONT COLOR=red><A NAME="ref_468_4">ACS_PI</A></FONT> : <b>constant</b> Character := '{';
-- <FONT COLOR=red><A NAME="ref_469_4">ACS_Not_Equal</A></FONT> : <b>constant</b> Character := '|';
-- <FONT COLOR=red><A NAME="ref_470_4">ACS_Sterling</A></FONT> : <b>constant</b> Character := '}';
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_initscr.3x.html">curs_initscr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Not implemented: newterm, set_term, delscreen</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_478_13" HREF="terminal_interface-curses__adb.htm#ref_2339_13">Standard_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">stdscr</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_483_13" HREF="terminal_interface-curses__adb.htm#ref_2347_13">Current_Window</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">curscr</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_483_13">Current_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_488_14" HREF="terminal_interface-curses__adb.htm#ref_98_14">Init_Screen</A></FONT>;
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_491_14">Init_Windows</A></FONT> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_488_14">Init_Screen</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">initscr()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_488_14">Init_Screen</A>);
-- <FONT COLOR=green><EM>-- pragma Inline (Init_Windows);</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_497_14" HREF="terminal_interface-curses__adb.htm#ref_111_14">End_Windows</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">endwin()</A></EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_499_14">End_Screen</A></FONT> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_497_14">End_Windows</A>;
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_497_14">End_Windows</A>);
-- <FONT COLOR=green><EM>-- pragma Inline (End_Screen);</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_6"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_504_13" HREF="terminal_interface-curses__adb.htm#ref_121_13">Is_End_Window</A></FONT> <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">isendwin()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_504_13">Is_End_Window</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_move.3x.html">curs_move.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_7"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_513_14" HREF="terminal_interface-curses__adb.htm#ref_133_14">Move_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_513_27" HREF="terminal_interface-curses__adb.htm#ref_133_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_514_27" HREF="terminal_interface-curses__adb.htm#ref_134_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_515_27" HREF="terminal_interface-curses__adb.htm#ref_135_27">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_move.3x.html">wmove()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: move()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_513_14">Move_Cursor</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_addch.3x.html">curs_addch.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_8"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_525_14" HREF="terminal_interface-curses__adb.htm#ref_148_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_525_19" HREF="terminal_interface-curses__adb.htm#ref_148_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_526_19" HREF="terminal_interface-curses__adb.htm#ref_149_19">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">waddch()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: addch()</EM></FONT>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_530_14" HREF="terminal_interface-curses__adb.htm#ref_160_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_530_19" HREF="terminal_interface-curses__adb.htm#ref_160_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_531_19" HREF="terminal_interface-curses__adb.htm#ref_161_19">Ch</A></FONT> : Character);
-- <FONT COLOR=green><EM>-- Add a single character at the current logical cursor position to</EM></FONT>
-- <FONT COLOR=green><EM>-- the window. Use the current windows attributes.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_9"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_536_14" HREF="terminal_interface-curses__adb.htm#ref_170_14">Add</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_537_7" HREF="terminal_interface-curses__adb.htm#ref_171_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_538_7" HREF="terminal_interface-curses__adb.htm#ref_172_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_539_7" HREF="terminal_interface-curses__adb.htm#ref_173_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_540_7" HREF="terminal_interface-curses__adb.htm#ref_174_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">mvwaddch()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvaddch()</EM></FONT>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_544_14" HREF="terminal_interface-curses__adb.htm#ref_189_14">Add</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_545_7" HREF="terminal_interface-curses__adb.htm#ref_190_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_546_7" HREF="terminal_interface-curses__adb.htm#ref_191_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_547_7" HREF="terminal_interface-curses__adb.htm#ref_192_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_548_7" HREF="terminal_interface-curses__adb.htm#ref_193_7">Ch</A></FONT> : Character);
-- <FONT COLOR=green><EM>-- Move to the position and add a single character into the window</EM></FONT>
-- <FONT COLOR=green><EM>-- There are more Add routines, so the Inline pragma follows later</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_10"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_553_14" HREF="terminal_interface-curses__adb.htm#ref_204_14">Add_With_Immediate_Echo</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_554_7" HREF="terminal_interface-curses__adb.htm#ref_205_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_555_7" HREF="terminal_interface-curses__adb.htm#ref_206_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">wechochar()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: echochar()</EM></FONT>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_559_14" HREF="terminal_interface-curses__adb.htm#ref_217_14">Add_With_Immediate_Echo</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_560_7" HREF="terminal_interface-curses__adb.htm#ref_218_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_561_7" HREF="terminal_interface-curses__adb.htm#ref_219_7">Ch</A></FONT> : Character);
-- <FONT COLOR=green><EM>-- Add a character and do an immediate refresh of the screen.</EM></FONT>
-+ <b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>'Size <b>use</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_65_4">chtype_Size</A>;
-+
-+ <span class="symbol"><A NAME="ref_509_4">Default_Character</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>
-+ := (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
-+ <A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; (<b>others</b> =&gt; False)); <span class="comment"><EM>-- preelaboratable Normal_Video</EM></span>
-+
-+ <b>type</b> Attributed_String <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <b>pragma</b> Convention (C, Attributed_String);
-+ <span class="comment"><EM>-- In this binding we allow strings of attributed characters.</EM></span>
-+
-+ <span class="comment"><EM>------------------</EM></span>
-+ <span class="comment"><EM>-- Exceptions --</EM></span>
-+ <span class="comment"><EM>------------------</EM></span>
-+ <span class="symbol"><A NAME="ref_521_4">Curses_Exception</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_522_4">Wrong_Curses_Version</A></span> : <b>exception</b>;
-+
-+ <span class="comment"><EM>-- Those exceptions are raised by the ETI (Extended Terminal Interface)</EM></span>
-+ <span class="comment"><EM>-- subpackets for Menu and Forms handling.</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <span class="symbol"><A NAME="ref_527_4">Eti_System_Error</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_528_4">Eti_Bad_Argument</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_529_4">Eti_Posted</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_530_4">Eti_Connected</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_531_4">Eti_Bad_State</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_532_4">Eti_No_Room</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_533_4">Eti_Not_Posted</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_534_4">Eti_Unknown_Command</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_535_4">Eti_No_Match</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_536_4">Eti_Not_Selectable</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_537_4">Eti_Not_Connected</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_538_4">Eti_Request_Denied</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_539_4">Eti_Invalid_Field</A></span> : <b>exception</b>;
-+ <span class="symbol"><A NAME="ref_540_4">Eti_Current</A></span> : <b>exception</b>;
-+
-+ <span class="comment"><EM>--------------------------------------------------------------------------</EM></span>
-+ <span class="comment"><EM>-- External C variables</EM></span>
-+ <span class="comment"><EM>-- Conceptually even in C this are kind of constants, but they are</EM></span>
-+ <span class="comment"><EM>-- initialized and sometimes changed by the library routines at runtime</EM></span>
-+ <span class="comment"><EM>-- depending on the type of terminal. I believe the best way to model</EM></span>
-+ <span class="comment"><EM>-- this is to use functions.</EM></span>
-+ <span class="comment"><EM>--------------------------------------------------------------------------</EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_550_13" HREF="terminal_interface-curses__adb.htm#ref_2355_13">Lines</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_550_13">Lines</A>);
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_553_13" HREF="terminal_interface-curses__adb.htm#ref_2363_13">Columns</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_553_13">Columns</A>);
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_556_13" HREF="terminal_interface-curses__adb.htm#ref_2371_13">Tab_Size</A></span> <b>return</b> Natural;
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_556_13">Tab_Size</A>);
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_559_13" HREF="terminal_interface-curses__adb.htm#ref_2380_13">Number_Of_Colors</A></span> <b>return</b> Natural;
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_559_13">Number_Of_Colors</A>);
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_562_13" HREF="terminal_interface-curses__adb.htm#ref_2388_13">Number_Of_Color_Pairs</A></span> <b>return</b> Natural;
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_562_13">Number_Of_Color_Pairs</A>);
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_565_12">ACS_Index</A></span> <b>is</b> Character <b>range</b>
-+ Character'Val (0) .. Character'Val (127);
-+ <b>function</b> <span class="symbol"><A NAME="ref_567_13">ACS_Map</A></span> (<span class="symbol"><A NAME="ref_567_22" HREF="terminal_interface-curses__ads.htm#ref_567_13">Index</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <b>pragma</b> Import (C, ACS_Map, "acs_map_as_function");
-+
-+ <span class="comment"><EM>-- Constants for several characters from the Alternate Character Set</EM></span>
-+ <span class="comment"><EM>-- You must use these constants as indices into the ACS_Map function</EM></span>
-+ <span class="comment"><EM>-- to get the corresponding attributed character at runtime</EM></span>
-+ <span class="symbol"><A NAME="ref_573_4">ACS_Upper_Left_Corner</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_222_4">ACS_ULCORNER</A>);
-+ <span class="symbol"><A NAME="ref_575_4">ACS_Lower_Left_Corner</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_223_4">ACS_LLCORNER</A>);
-+ <span class="symbol"><A NAME="ref_577_4">ACS_Upper_Right_Corner</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_224_4">ACS_URCORNER</A>);
-+ <span class="symbol"><A NAME="ref_579_4">ACS_Lower_Right_Corner</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_225_4">ACS_LRCORNER</A>);
-+ <span class="symbol"><A NAME="ref_581_4">ACS_Left_Tee</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_226_4">ACS_LTEE</A>);
-+ <span class="symbol"><A NAME="ref_583_4">ACS_Right_Tee</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_227_4">ACS_RTEE</A>);
-+ <span class="symbol"><A NAME="ref_585_4">ACS_Bottom_Tee</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_228_4">ACS_BTEE</A>);
-+ <span class="symbol"><A NAME="ref_587_4">ACS_Top_Tee</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_229_4">ACS_TTEE</A>);
-+ <span class="symbol"><A NAME="ref_589_4">ACS_Horizontal_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_230_4">ACS_HLINE</A>);
-+ <span class="symbol"><A NAME="ref_591_4">ACS_Vertical_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_231_4">ACS_VLINE</A>);
-+ <span class="symbol"><A NAME="ref_593_4">ACS_Plus_Symbol</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_232_4">ACS_PLUS</A>);
-+ <span class="symbol"><A NAME="ref_595_4">ACS_Scan_Line_1</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_233_4">ACS_S1</A>);
-+ <span class="symbol"><A NAME="ref_597_4">ACS_Scan_Line_9</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_234_4">ACS_S9</A>);
-+ <span class="symbol"><A NAME="ref_599_4">ACS_Diamond</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_235_4">ACS_DIAMOND</A>);
-+ <span class="symbol"><A NAME="ref_601_4">ACS_Checker_Board</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_236_4">ACS_CKBOARD</A>);
-+ <span class="symbol"><A NAME="ref_603_4">ACS_Degree</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_237_4">ACS_DEGREE</A>);
-+ <span class="symbol"><A NAME="ref_605_4">ACS_Plus_Minus</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_238_4">ACS_PLMINUS</A>);
-+ <span class="symbol"><A NAME="ref_607_4">ACS_Bullet</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_239_4">ACS_BULLET</A>);
-+ <span class="symbol"><A NAME="ref_609_4">ACS_Left_Arrow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_240_4">ACS_LARROW</A>);
-+ <span class="symbol"><A NAME="ref_611_4">ACS_Right_Arrow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_241_4">ACS_RARROW</A>);
-+ <span class="symbol"><A NAME="ref_613_4">ACS_Down_Arrow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_242_4">ACS_DARROW</A>);
-+ <span class="symbol"><A NAME="ref_615_4">ACS_Up_Arrow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_243_4">ACS_UARROW</A>);
-+ <span class="symbol"><A NAME="ref_617_4">ACS_Board_Of_Squares</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_244_4">ACS_BOARD</A>);
-+ <span class="symbol"><A NAME="ref_619_4">ACS_Lantern</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_245_4">ACS_LANTERN</A>);
-+ <span class="symbol"><A NAME="ref_621_4">ACS_Solid_Block</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_246_4">ACS_BLOCK</A>);
-+ <span class="symbol"><A NAME="ref_623_4">ACS_Scan_Line_3</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_247_4">ACS_S3</A>);
-+ <span class="symbol"><A NAME="ref_625_4">ACS_Scan_Line_7</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_248_4">ACS_S7</A>);
-+ <span class="symbol"><A NAME="ref_627_4">ACS_Less_Or_Equal</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_249_4">ACS_LEQUAL</A>);
-+ <span class="symbol"><A NAME="ref_629_4">ACS_Greater_Or_Equal</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_250_4">ACS_GEQUAL</A>);
-+ <span class="symbol"><A NAME="ref_631_4">ACS_PI</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_251_4">ACS_PI</A>);
-+ <span class="symbol"><A NAME="ref_633_4">ACS_Not_Equal</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_252_4">ACS_NEQUAL</A>);
-+ <span class="symbol"><A NAME="ref_635_4">ACS_Sterling</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
-+ := Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_253_4">ACS_STERLING</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_initscr.3x.html">curs_initscr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Not implemented: newterm, set_term, delscreen</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_644_13">Standard_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">stdscr</A></EM></span>
-+ <b>pragma</b> Import (C, Standard_Window, "stdscr_as_function");
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_650_13">Current_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">curscr</A></EM></span>
-+ <b>pragma</b> Import (C, Current_Window, "curscr_as_function");
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_650_13">Current_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_656_14" HREF="terminal_interface-curses__adb.htm#ref_98_14">Init_Screen</A></span>;
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_659_14">Init_Windows</A></span> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_656_14">Init_Screen</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">initscr()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_656_14">Init_Screen</A>);
-+ <span class="comment"><EM>-- pragma Inline (Init_Windows);</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_665_14" HREF="terminal_interface-curses__adb.htm#ref_111_14">End_Windows</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">endwin()</A></EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_667_14">End_Screen</A></span> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_665_14">End_Windows</A>;
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_665_14">End_Windows</A>);
-+ <span class="comment"><EM>-- pragma Inline (End_Screen);</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_6"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_672_13" HREF="terminal_interface-curses__adb.htm#ref_121_13">Is_End_Window</A></span> <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">isendwin()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_672_13">Is_End_Window</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_move.3x.html">curs_move.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_7"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_681_14" HREF="terminal_interface-curses__adb.htm#ref_133_14">Move_Cursor</A></span> (<span class="symbol"><A NAME="ref_681_27" HREF="terminal_interface-curses__adb.htm#ref_133_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_682_27" HREF="terminal_interface-curses__adb.htm#ref_134_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_683_27" HREF="terminal_interface-curses__adb.htm#ref_135_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_move.3x.html">wmove()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: move()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_addch.3x.html">curs_addch.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_8"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_693_14" HREF="terminal_interface-curses__adb.htm#ref_148_14">Add</A></span> (<span class="symbol"><A NAME="ref_693_19" HREF="terminal_interface-curses__adb.htm#ref_148_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_694_19" HREF="terminal_interface-curses__adb.htm#ref_149_19">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">waddch()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: addch()</EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_698_14" HREF="terminal_interface-curses__adb.htm#ref_160_14">Add</A></span> (<span class="symbol"><A NAME="ref_698_19" HREF="terminal_interface-curses__adb.htm#ref_160_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_699_19" HREF="terminal_interface-curses__adb.htm#ref_161_19">Ch</A></span> : Character);
-+ <span class="comment"><EM>-- Add a single character at the current logical cursor position to</EM></span>
-+ <span class="comment"><EM>-- the window. Use the current windows attributes.</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_9"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_704_14" HREF="terminal_interface-curses__adb.htm#ref_170_14">Add</A></span>
-+ (<span class="symbol"><A NAME="ref_705_7" HREF="terminal_interface-curses__adb.htm#ref_171_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_706_7" HREF="terminal_interface-curses__adb.htm#ref_172_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_707_7" HREF="terminal_interface-curses__adb.htm#ref_173_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_708_7" HREF="terminal_interface-curses__adb.htm#ref_174_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">mvwaddch()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvaddch()</EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_712_14" HREF="terminal_interface-curses__adb.htm#ref_190_14">Add</A></span>
-+ (<span class="symbol"><A NAME="ref_713_7" HREF="terminal_interface-curses__adb.htm#ref_191_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_714_7" HREF="terminal_interface-curses__adb.htm#ref_192_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_715_7" HREF="terminal_interface-curses__adb.htm#ref_193_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_716_7" HREF="terminal_interface-curses__adb.htm#ref_194_7">Ch</A></span> : Character);
-+ <span class="comment"><EM>-- Move to the position and add a single character into the window</EM></span>
-+ <span class="comment"><EM>-- There are more Add routines, so the Inline pragma follows later</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_10"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_721_14" HREF="terminal_interface-curses__adb.htm#ref_205_14">Add_With_Immediate_Echo</A></span>
-+ (<span class="symbol"><A NAME="ref_722_7" HREF="terminal_interface-curses__adb.htm#ref_206_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_723_7" HREF="terminal_interface-curses__adb.htm#ref_207_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">wechochar()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: echochar()</EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_727_14" HREF="terminal_interface-curses__adb.htm#ref_218_14">Add_With_Immediate_Echo</A></span>
-+ (<span class="symbol"><A NAME="ref_728_7" HREF="terminal_interface-curses__adb.htm#ref_219_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_729_7" HREF="terminal_interface-curses__adb.htm#ref_220_7">Ch</A></span> : Character);
-+ <span class="comment"><EM>-- Add a character and do an immediate refresh of the screen.</EM></span>
- <b>pragma</b> Inline (Add_With_Immediate_Echo);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_window.3x.html">curs_window.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not Implemented: wcursyncup</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_11"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_571_13" HREF="terminal_interface-curses__adb.htm#ref_229_13">Create</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_572_7" HREF="terminal_interface-curses__adb.htm#ref_229_21">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_573_7" HREF="terminal_interface-curses__adb.htm#ref_230_21">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_574_7" HREF="terminal_interface-curses__adb.htm#ref_231_21">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_575_7" HREF="terminal_interface-curses__adb.htm#ref_232_21">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- Not Implemented: Default Number_Of_Lines, Number_Of_Columns</EM></FONT>
-- <FONT COLOR=green><EM>-- the C version lets them be 0, see the man page.</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">newwin()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_571_13">Create</A>);
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_window.3x.html">curs_window.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not Implemented: wcursyncup</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_11"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_739_13" HREF="terminal_interface-curses__adb.htm#ref_230_13">Create</A></span>
-+ (<span class="symbol"><A NAME="ref_740_7" HREF="terminal_interface-curses__adb.htm#ref_230_21">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_741_7" HREF="terminal_interface-curses__adb.htm#ref_231_21">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_742_7" HREF="terminal_interface-curses__adb.htm#ref_232_21">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_743_7" HREF="terminal_interface-curses__adb.htm#ref_233_21">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- Not Implemented: Default Number_Of_Lines, Number_Of_Columns</EM></span>
-+ <span class="comment"><EM>-- the C version lets them be 0, see the man page.</EM></span>
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">newwin()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_739_13">Create</A>);
-
- <b>function</b> New_Window
-- (<FONT COLOR=red><A NAME="ref_582_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_583_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_584_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_585_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>
-- <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_571_13">Create</A>;
-- <FONT COLOR=green><EM>-- pragma Inline (New_Window);</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_12"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_590_14" HREF="terminal_interface-curses__adb.htm#ref_252_14">Delete</A></FONT> (<FONT COLOR=red><A NAME="ref_590_22" HREF="terminal_interface-curses__adb.htm#ref_252_22">Win</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">delwin()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Reset Win to Null_Window</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_590_14">Delete</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_13"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_596_13" HREF="terminal_interface-curses__adb.htm#ref_263_13">Sub_Window</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_597_7" HREF="terminal_interface-curses__adb.htm#ref_264_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_598_7" HREF="terminal_interface-curses__adb.htm#ref_265_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_599_7" HREF="terminal_interface-curses__adb.htm#ref_266_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_600_7" HREF="terminal_interface-curses__adb.htm#ref_267_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_601_7" HREF="terminal_interface-curses__adb.htm#ref_268_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">subwin()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_596_13">Sub_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_14"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_606_13" HREF="terminal_interface-curses__adb.htm#ref_291_13">Derived_Window</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_607_7" HREF="terminal_interface-curses__adb.htm#ref_292_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_608_7" HREF="terminal_interface-curses__adb.htm#ref_293_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_609_7" HREF="terminal_interface-curses__adb.htm#ref_294_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_610_7" HREF="terminal_interface-curses__adb.htm#ref_295_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_611_7" HREF="terminal_interface-curses__adb.htm#ref_296_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">derwin()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_606_13">Derived_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_15"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_616_13" HREF="terminal_interface-curses__adb.htm#ref_319_13">Duplicate</A></FONT> (<FONT COLOR=red><A NAME="ref_616_24" HREF="terminal_interface-curses__adb.htm#ref_319_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">dupwin()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_616_13">Duplicate</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_16"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_621_14" HREF="terminal_interface-curses__adb.htm#ref_332_14">Move_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_621_27" HREF="terminal_interface-curses__adb.htm#ref_332_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_622_27" HREF="terminal_interface-curses__adb.htm#ref_333_27">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_623_27" HREF="terminal_interface-curses__adb.htm#ref_334_27">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvwin()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_621_14">Move_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_17"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_628_14" HREF="terminal_interface-curses__adb.htm#ref_346_14">Move_Derived_Window</A></FONT> (<FONT COLOR=red><A NAME="ref_628_35" HREF="terminal_interface-curses__adb.htm#ref_346_35">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_629_35" HREF="terminal_interface-curses__adb.htm#ref_347_35">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_630_35" HREF="terminal_interface-curses__adb.htm#ref_348_35">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvderwin()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_628_14">Move_Derived_Window</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_18"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_635_14">Synchronize_Upwards</A></FONT> (<FONT COLOR=red><A NAME="ref_635_35" HREF="terminal_interface-curses__ads.htm#ref_635_14">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncup()</A></EM></FONT>
-+ (<span class="symbol"><A NAME="ref_750_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_751_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_752_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_753_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
-+ <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_739_13">Create</A>;
-+ <span class="comment"><EM>-- pragma Inline (New_Window);</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_12"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_758_14" HREF="terminal_interface-curses__adb.htm#ref_253_14">Delete</A></span> (<span class="symbol"><A NAME="ref_758_22" HREF="terminal_interface-curses__adb.htm#ref_253_22">Win</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">delwin()</A></EM></span>
-+ <span class="comment"><EM>-- Reset Win to Null_Window</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_758_14">Delete</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_13"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_764_13" HREF="terminal_interface-curses__adb.htm#ref_264_13">Sub_Window</A></span>
-+ (<span class="symbol"><A NAME="ref_765_7" HREF="terminal_interface-curses__adb.htm#ref_265_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_766_7" HREF="terminal_interface-curses__adb.htm#ref_266_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_767_7" HREF="terminal_interface-curses__adb.htm#ref_267_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_768_7" HREF="terminal_interface-curses__adb.htm#ref_268_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_769_7" HREF="terminal_interface-curses__adb.htm#ref_269_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">subwin()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_764_13">Sub_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_14"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_774_13" HREF="terminal_interface-curses__adb.htm#ref_292_13">Derived_Window</A></span>
-+ (<span class="symbol"><A NAME="ref_775_7" HREF="terminal_interface-curses__adb.htm#ref_293_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_776_7" HREF="terminal_interface-curses__adb.htm#ref_294_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_777_7" HREF="terminal_interface-curses__adb.htm#ref_295_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_778_7" HREF="terminal_interface-curses__adb.htm#ref_296_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_779_7" HREF="terminal_interface-curses__adb.htm#ref_297_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">derwin()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_774_13">Derived_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_15"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_784_13" HREF="terminal_interface-curses__adb.htm#ref_320_13">Duplicate</A></span> (<span class="symbol"><A NAME="ref_784_24" HREF="terminal_interface-curses__adb.htm#ref_320_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">dupwin()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_784_13">Duplicate</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_16"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_789_14" HREF="terminal_interface-curses__adb.htm#ref_333_14">Move_Window</A></span> (<span class="symbol"><A NAME="ref_789_27" HREF="terminal_interface-curses__adb.htm#ref_333_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_790_27" HREF="terminal_interface-curses__adb.htm#ref_334_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_791_27" HREF="terminal_interface-curses__adb.htm#ref_335_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvwin()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_789_14">Move_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_17"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_796_14" HREF="terminal_interface-curses__adb.htm#ref_347_14">Move_Derived_Window</A></span> (<span class="symbol"><A NAME="ref_796_35" HREF="terminal_interface-curses__adb.htm#ref_347_35">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_797_35" HREF="terminal_interface-curses__adb.htm#ref_348_35">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_798_35" HREF="terminal_interface-curses__adb.htm#ref_349_35">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvderwin()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_796_14">Move_Derived_Window</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_18"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_803_14">Synchronize_Upwards</A></span> (<span class="symbol"><A NAME="ref_803_35" HREF="terminal_interface-curses__ads.htm#ref_803_14">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncup()</A></EM></span>
- <b>pragma</b> Import (C, Synchronize_Upwards, "wsyncup");
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_19"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_640_14">Synchronize_Downwards</A></FONT> (<FONT COLOR=red><A NAME="ref_640_37" HREF="terminal_interface-curses__ads.htm#ref_640_14">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncdown()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_19"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_808_14">Synchronize_Downwards</A></span> (<span class="symbol"><A NAME="ref_808_37" HREF="terminal_interface-curses__ads.htm#ref_808_14">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncdown()</A></EM></span>
- <b>pragma</b> Import (C, Synchronize_Downwards, "wsyncdown");
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_20"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_645_14" HREF="terminal_interface-curses__adb.htm#ref_360_14">Set_Synch_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_645_30" HREF="terminal_interface-curses__adb.htm#ref_360_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_646_30" HREF="terminal_interface-curses__adb.htm#ref_361_30">Mode</A></FONT> : Boolean := False);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_window.3x.html">syncok()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_645_14">Set_Synch_Mode</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_addstr.3x.html">curs_addstr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_21"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_655_14" HREF="terminal_interface-curses__adb.htm#ref_372_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_655_19" HREF="terminal_interface-curses__adb.htm#ref_372_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_656_19" HREF="terminal_interface-curses__adb.htm#ref_373_19">Str</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_657_19" HREF="terminal_interface-curses__adb.htm#ref_374_19">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">waddnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: waddstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: addnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: addstr()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_22"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_664_14" HREF="terminal_interface-curses__adb.htm#ref_390_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_664_19" HREF="terminal_interface-curses__adb.htm#ref_391_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_665_19" HREF="terminal_interface-curses__adb.htm#ref_392_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_666_19" HREF="terminal_interface-curses__adb.htm#ref_393_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_667_19" HREF="terminal_interface-curses__adb.htm#ref_394_7">Str</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_668_19" HREF="terminal_interface-curses__adb.htm#ref_395_7">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">mvwaddnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvwaddstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvaddnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvaddstr()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_addchstr.3x.html">curs_addchstr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_23"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_679_14" HREF="terminal_interface-curses__adb.htm#ref_402_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_679_19" HREF="terminal_interface-curses__adb.htm#ref_403_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_680_19" HREF="terminal_interface-curses__adb.htm#ref_404_7">Str</A></FONT> : Attributed_String;
-- <FONT COLOR=red><A NAME="ref_681_19" HREF="terminal_interface-curses__adb.htm#ref_405_7">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">waddchnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: waddchstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: addchnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: addchstr()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_24"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_688_14" HREF="terminal_interface-curses__adb.htm#ref_425_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_688_19" HREF="terminal_interface-curses__adb.htm#ref_426_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_689_19" HREF="terminal_interface-curses__adb.htm#ref_427_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_690_19" HREF="terminal_interface-curses__adb.htm#ref_428_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_691_19" HREF="terminal_interface-curses__adb.htm#ref_429_7">Str</A></FONT> : Attributed_String;
-- <FONT COLOR=red><A NAME="ref_692_19" HREF="terminal_interface-curses__adb.htm#ref_430_7">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">mvwaddchnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvwaddchstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvaddchnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvaddchstr()</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_20"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_813_14" HREF="terminal_interface-curses__adb.htm#ref_361_14">Set_Synch_Mode</A></span> (<span class="symbol"><A NAME="ref_813_30" HREF="terminal_interface-curses__adb.htm#ref_361_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_814_30" HREF="terminal_interface-curses__adb.htm#ref_362_30">Mode</A></span> : Boolean := False);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">syncok()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_813_14">Set_Synch_Mode</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_addstr.3x.html">curs_addstr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_21"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_823_14" HREF="terminal_interface-curses__adb.htm#ref_373_14">Add</A></span> (<span class="symbol"><A NAME="ref_823_19" HREF="terminal_interface-curses__adb.htm#ref_373_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_824_19" HREF="terminal_interface-curses__adb.htm#ref_374_19">Str</A></span> : String;
-+ <span class="symbol"><A NAME="ref_825_19" HREF="terminal_interface-curses__adb.htm#ref_375_19">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">waddnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: waddstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: addnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: addstr()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_22"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_832_14" HREF="terminal_interface-curses__adb.htm#ref_391_14">Add</A></span> (<span class="symbol"><A NAME="ref_832_19" HREF="terminal_interface-curses__adb.htm#ref_392_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_833_19" HREF="terminal_interface-curses__adb.htm#ref_393_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_834_19" HREF="terminal_interface-curses__adb.htm#ref_394_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_835_19" HREF="terminal_interface-curses__adb.htm#ref_395_7">Str</A></span> : String;
-+ <span class="symbol"><A NAME="ref_836_19" HREF="terminal_interface-curses__adb.htm#ref_396_7">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">mvwaddnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvwaddstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvaddnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvaddstr()</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_addchstr.3x.html">curs_addchstr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_23"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_847_14" HREF="terminal_interface-curses__adb.htm#ref_403_14">Add</A></span> (<span class="symbol"><A NAME="ref_847_19" HREF="terminal_interface-curses__adb.htm#ref_404_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_848_19" HREF="terminal_interface-curses__adb.htm#ref_405_7">Str</A></span> : Attributed_String;
-+ <span class="symbol"><A NAME="ref_849_19" HREF="terminal_interface-curses__adb.htm#ref_406_7">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">waddchnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: waddchstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: addchnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: addchstr()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_24"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_856_14" HREF="terminal_interface-curses__adb.htm#ref_427_14">Add</A></span> (<span class="symbol"><A NAME="ref_856_19" HREF="terminal_interface-curses__adb.htm#ref_428_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_857_19" HREF="terminal_interface-curses__adb.htm#ref_429_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_858_19" HREF="terminal_interface-curses__adb.htm#ref_430_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_859_19" HREF="terminal_interface-curses__adb.htm#ref_431_7">Str</A></span> : Attributed_String;
-+ <span class="symbol"><A NAME="ref_860_19" HREF="terminal_interface-curses__adb.htm#ref_432_7">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">mvwaddchnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvwaddchstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvaddchnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvaddchstr()</EM></span>
- <b>pragma</b> Inline (Add);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_border.3x.html">curs_border.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Not implemented: mvhline, mvwhline, mvvline, mvwvline</EM></FONT>
-- <FONT COLOR=green><EM>-- | use Move_Cursor then Horizontal_Line or Vertical_Line</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_25"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_706_14" HREF="terminal_interface-curses__adb.htm#ref_437_14">Border</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_707_7" HREF="terminal_interface-curses__adb.htm#ref_438_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_708_7" HREF="terminal_interface-curses__adb.htm#ref_439_7">Left_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_709_7" HREF="terminal_interface-curses__adb.htm#ref_440_7">Right_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_710_7" HREF="terminal_interface-curses__adb.htm#ref_441_7">Top_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_711_7" HREF="terminal_interface-curses__adb.htm#ref_442_7">Bottom_Side_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_712_7" HREF="terminal_interface-curses__adb.htm#ref_443_7">Upper_Left_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_713_7" HREF="terminal_interface-curses__adb.htm#ref_444_7">Upper_Right_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_714_7" HREF="terminal_interface-curses__adb.htm#ref_445_7">Lower_Left_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_715_7" HREF="terminal_interface-curses__adb.htm#ref_446_7">Lower_Right_Corner_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_border.3x.html">curs_border.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Not implemented: mvhline, mvwhline, mvvline, mvwvline</EM></span>
-+ <span class="comment"><EM>-- | use Move_Cursor then Horizontal_Line or Vertical_Line</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_25"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_874_14" HREF="terminal_interface-curses__adb.htm#ref_439_14">Border</A></span>
-+ (<span class="symbol"><A NAME="ref_875_7" HREF="terminal_interface-curses__adb.htm#ref_440_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_876_7" HREF="terminal_interface-curses__adb.htm#ref_441_7">Left_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_877_7" HREF="terminal_interface-curses__adb.htm#ref_442_7">Right_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_878_7" HREF="terminal_interface-curses__adb.htm#ref_443_7">Top_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_879_7" HREF="terminal_interface-curses__adb.htm#ref_444_7">Bottom_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_880_7" HREF="terminal_interface-curses__adb.htm#ref_445_7">Upper_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_881_7" HREF="terminal_interface-curses__adb.htm#ref_446_7">Upper_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_882_7" HREF="terminal_interface-curses__adb.htm#ref_447_7">Lower_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_883_7" HREF="terminal_interface-curses__adb.htm#ref_448_7">Lower_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>
- );
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wborder()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: border()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_706_14">Border</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_26"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_722_14" HREF="terminal_interface-curses__adb.htm#ref_474_14">Box</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_723_7" HREF="terminal_interface-curses__adb.htm#ref_475_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_724_7" HREF="terminal_interface-curses__adb.htm#ref_476_7">Vertical_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>;
-- <FONT COLOR=red><A NAME="ref_725_7" HREF="terminal_interface-curses__adb.htm#ref_477_7">Horizontal_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_border.3x.html">box()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_722_14">Box</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_27"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_730_14" HREF="terminal_interface-curses__adb.htm#ref_485_14">Horizontal_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_731_7" HREF="terminal_interface-curses__adb.htm#ref_486_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_732_7" HREF="terminal_interface-curses__adb.htm#ref_487_7">Line_Size</A></FONT> : Natural;
-- <FONT COLOR=red><A NAME="ref_733_7" HREF="terminal_interface-curses__adb.htm#ref_488_7">Line_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_border.3x.html">whline()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: hline()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_730_14">Horizontal_Line</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_28"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_739_14" HREF="terminal_interface-curses__adb.htm#ref_502_14">Vertical_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_740_7" HREF="terminal_interface-curses__adb.htm#ref_503_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_741_7" HREF="terminal_interface-curses__adb.htm#ref_504_7">Line_Size</A></FONT> : Natural;
-- <FONT COLOR=red><A NAME="ref_742_7" HREF="terminal_interface-curses__adb.htm#ref_505_7">Line_Symbol</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_373_4">Default_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wvline()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: vline()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_739_14">Vertical_Line</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_getch.3x.html">curs_getch.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not implemented: mvgetch, mvwgetch</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_29"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_753_13" HREF="terminal_interface-curses__adb.htm#ref_520_13">Get_Keystroke</A></FONT> (<FONT COLOR=red><A NAME="ref_753_28" HREF="terminal_interface-curses__adb.htm#ref_520_28">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">wgetch()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: getch()</EM></FONT>
-- <FONT COLOR=green><EM>-- Get a character from the keyboard and echo it - if enabled - to the</EM></FONT>
-- <FONT COLOR=green><EM>-- window.</EM></FONT>
-- <FONT COLOR=green><EM>-- If for any reason (i.e. a timeout) we could not get a character the</EM></FONT>
-- <FONT COLOR=green><EM>-- returned keycode is Key_None.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_753_13">Get_Keystroke</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_30"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_764_14" HREF="terminal_interface-curses__adb.htm#ref_535_14">Undo_Keystroke</A></FONT> (<FONT COLOR=red><A NAME="ref_764_30" HREF="terminal_interface-curses__adb.htm#ref_535_30">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">ungetch()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_764_14">Undo_Keystroke</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_31"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_769_13" HREF="terminal_interface-curses__adb.htm#ref_545_13">Has_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_769_22" HREF="terminal_interface-curses__adb.htm#ref_545_22">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">has_key()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_769_13">Has_Key</A>);
--
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <FONT COLOR=green><EM>-- | Some helper functions</EM></FONT>
-- <FONT COLOR=green><EM>-- |</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_776_13" HREF="terminal_interface-curses__adb.htm#ref_557_13">Is_Function_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_776_30" HREF="terminal_interface-curses__adb.htm#ref_557_30">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- Return True if the Key is a function key (i.e. one of F0 .. F63)</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_776_13">Is_Function_Key</A>);
--
-- <b>subtype</b> <FONT COLOR=red><A NAME="ref_780_12">Function_Key_Number</A></FONT> <b>is</b> Integer <b>range</b> 0 .. 63;
-- <FONT COLOR=green><EM>-- (n)curses allows for 64 function keys.</EM></FONT>
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_783_13" HREF="terminal_interface-curses__adb.htm#ref_569_13">Function_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_783_27" HREF="terminal_interface-curses__adb.htm#ref_569_27">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A>;
-- <FONT COLOR=green><EM>-- Return the number of the function key. If the code is not a</EM></FONT>
-- <FONT COLOR=green><EM>-- function key, a CONSTRAINT_ERROR will be raised.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_783_13">Function_Key</A>);
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_788_13" HREF="terminal_interface-curses__adb.htm#ref_580_13">Function_Key_Code</A></FONT> (<FONT COLOR=red><A NAME="ref_788_32" HREF="terminal_interface-curses__adb.htm#ref_580_32">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_780_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>;
-- <FONT COLOR=green><EM>-- Return the key code for a given function-key number.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_788_13">Function_Key_Code</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_attr.3x.html">curs_attr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Not implemented attr_off, wattr_off,</EM></FONT>
-- <FONT COLOR=green><EM>-- | attr_on, wattr_on, attr_set, wattr_set</EM></FONT>
--
-- <FONT COLOR=green><EM>-- PAIR_NUMBER</EM></FONT>
-- <FONT COLOR=green><EM>-- PAIR_NUMBER(c) is the same as c.Color</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_32"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_802_14" HREF="terminal_interface-curses__adb.htm#ref_586_14">Standout</A></FONT> (<FONT COLOR=red><A NAME="ref_802_24" HREF="terminal_interface-curses__adb.htm#ref_586_24">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_803_24" HREF="terminal_interface-curses__adb.htm#ref_587_24">On</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: wstandout()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: wstandend()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_33"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_808_14" HREF="terminal_interface-curses__adb.htm#ref_606_14">Switch_Character_Attribute</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_809_7" HREF="terminal_interface-curses__adb.htm#ref_607_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_810_7" HREF="terminal_interface-curses__adb.htm#ref_608_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_811_7" HREF="terminal_interface-curses__adb.htm#ref_609_7">On</A></FONT> : Boolean := True); <FONT COLOR=green><EM>-- if False we switch Off.</EM></FONT>
-- <FONT COLOR=green><EM>-- Switches those Attributes set to true in the list.</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattron()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: wattroff()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: attron()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: attroff()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_34"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_819_14" HREF="terminal_interface-curses__adb.htm#ref_634_14">Set_Character_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_820_7" HREF="terminal_interface-curses__adb.htm#ref_635_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_821_7" HREF="terminal_interface-curses__adb.htm#ref_636_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_822_7" HREF="terminal_interface-curses__adb.htm#ref_637_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattrset()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: attrset()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_819_14">Set_Character_Attributes</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_35"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_828_13" HREF="terminal_interface-curses__adb.htm#ref_652_13">Get_Character_Attribute</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_829_7" HREF="terminal_interface-curses__adb.htm#ref_652_38">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: attr_get()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_36"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_834_13" HREF="terminal_interface-curses__adb.htm#ref_675_13">Get_Character_Attribute</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_835_7" HREF="terminal_interface-curses__adb.htm#ref_675_38">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></FONT>
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wborder()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: border()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_874_14">Border</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_26"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_890_14" HREF="terminal_interface-curses__adb.htm#ref_475_14">Box</A></span>
-+ (<span class="symbol"><A NAME="ref_891_7" HREF="terminal_interface-curses__adb.htm#ref_476_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_892_7" HREF="terminal_interface-curses__adb.htm#ref_477_7">Vertical_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
-+ <span class="symbol"><A NAME="ref_893_7" HREF="terminal_interface-curses__adb.htm#ref_478_7">Horizontal_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">box()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_890_14">Box</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_27"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_898_14" HREF="terminal_interface-curses__adb.htm#ref_486_14">Horizontal_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_899_7" HREF="terminal_interface-curses__adb.htm#ref_487_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_900_7" HREF="terminal_interface-curses__adb.htm#ref_488_7">Line_Size</A></span> : Natural;
-+ <span class="symbol"><A NAME="ref_901_7" HREF="terminal_interface-curses__adb.htm#ref_489_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">whline()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: hline()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_898_14">Horizontal_Line</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_28"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_907_14" HREF="terminal_interface-curses__adb.htm#ref_504_14">Vertical_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_908_7" HREF="terminal_interface-curses__adb.htm#ref_505_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_909_7" HREF="terminal_interface-curses__adb.htm#ref_506_7">Line_Size</A></span> : Natural;
-+ <span class="symbol"><A NAME="ref_910_7" HREF="terminal_interface-curses__adb.htm#ref_507_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wvline()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: vline()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_907_14">Vertical_Line</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_getch.3x.html">curs_getch.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not implemented: mvgetch, mvwgetch</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_29"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_921_13" HREF="terminal_interface-curses__adb.htm#ref_523_13">Get_Keystroke</A></span> (<span class="symbol"><A NAME="ref_921_28" HREF="terminal_interface-curses__adb.htm#ref_523_28">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">wgetch()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: getch()</EM></span>
-+ <span class="comment"><EM>-- Get a character from the keyboard and echo it - if enabled - to the</EM></span>
-+ <span class="comment"><EM>-- window.</EM></span>
-+ <span class="comment"><EM>-- If for any reason (i.e. a timeout) we could not get a character the</EM></span>
-+ <span class="comment"><EM>-- returned keycode is Key_None.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_921_13">Get_Keystroke</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_30"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_932_14" HREF="terminal_interface-curses__adb.htm#ref_538_14">Undo_Keystroke</A></span> (<span class="symbol"><A NAME="ref_932_30" HREF="terminal_interface-curses__adb.htm#ref_538_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">ungetch()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_932_14">Undo_Keystroke</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_31"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_937_13" HREF="terminal_interface-curses__adb.htm#ref_548_13">Has_Key</A></span> (<span class="symbol"><A NAME="ref_937_22" HREF="terminal_interface-curses__adb.htm#ref_548_22">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">has_key()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_937_13">Has_Key</A>);
-+
-+ <span class="comment"><EM>-- |</EM></span>
-+ <span class="comment"><EM>-- | Some helper functions</EM></span>
-+ <span class="comment"><EM>-- |</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_944_13" HREF="terminal_interface-curses__adb.htm#ref_560_13">Is_Function_Key</A></span> (<span class="symbol"><A NAME="ref_944_30" HREF="terminal_interface-curses__adb.htm#ref_560_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- Return True if the Key is a function key (i.e. one of F0 .. F63)</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_944_13">Is_Function_Key</A>);
-+
-+ <b>subtype</b> <span class="symbol"><A NAME="ref_948_12">Function_Key_Number</A></span> <b>is</b> Integer <b>range</b> 0 .. 63;
-+ <span class="comment"><EM>-- (n)curses allows for 64 function keys.</EM></span>
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_951_13" HREF="terminal_interface-curses__adb.htm#ref_572_13">Function_Key</A></span> (<span class="symbol"><A NAME="ref_951_27" HREF="terminal_interface-curses__adb.htm#ref_572_27">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_948_12">Function_Key_Number</A>;
-+ <span class="comment"><EM>-- Return the number of the function key. If the code is not a</EM></span>
-+ <span class="comment"><EM>-- function key, a CONSTRAINT_ERROR will be raised.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_951_13">Function_Key</A>);
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_956_13" HREF="terminal_interface-curses__adb.htm#ref_583_13">Function_Key_Code</A></span> (<span class="symbol"><A NAME="ref_956_32" HREF="terminal_interface-curses__adb.htm#ref_583_32">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_948_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>;
-+ <span class="comment"><EM>-- Return the key code for a given function-key number.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_956_13">Function_Key_Code</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_attr.3x.html">curs_attr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Not implemented attr_off, wattr_off,</EM></span>
-+ <span class="comment"><EM>-- | attr_on, wattr_on, attr_set, wattr_set</EM></span>
-+
-+ <span class="comment"><EM>-- PAIR_NUMBER</EM></span>
-+ <span class="comment"><EM>-- PAIR_NUMBER(c) is the same as c.Color</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_32"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_970_14" HREF="terminal_interface-curses__adb.htm#ref_589_14">Standout</A></span> (<span class="symbol"><A NAME="ref_970_24" HREF="terminal_interface-curses__adb.htm#ref_589_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_971_24" HREF="terminal_interface-curses__adb.htm#ref_590_24">On</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: wstandout()</EM></span>
-+ <span class="comment"><EM>-- AKA: wstandend()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_33"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_976_14" HREF="terminal_interface-curses__adb.htm#ref_609_14">Switch_Character_Attribute</A></span>
-+ (<span class="symbol"><A NAME="ref_977_7" HREF="terminal_interface-curses__adb.htm#ref_610_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_978_7" HREF="terminal_interface-curses__adb.htm#ref_611_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_979_7" HREF="terminal_interface-curses__adb.htm#ref_612_7">On</A></span> : Boolean := True); <span class="comment"><EM>-- if False we switch Off.</EM></span>
-+ <span class="comment"><EM>-- Switches those Attributes set to true in the list.</EM></span>
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattron()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: wattroff()</EM></span>
-+ <span class="comment"><EM>-- AKA: attron()</EM></span>
-+ <span class="comment"><EM>-- AKA: attroff()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_34"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_987_14" HREF="terminal_interface-curses__adb.htm#ref_637_14">Set_Character_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_988_7" HREF="terminal_interface-curses__adb.htm#ref_638_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_989_7" HREF="terminal_interface-curses__adb.htm#ref_639_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_990_7" HREF="terminal_interface-curses__adb.htm#ref_640_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattrset()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: attrset()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_987_14">Set_Character_Attributes</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_35"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_996_13" HREF="terminal_interface-curses__adb.htm#ref_654_13">Get_Character_Attribute</A></span>
-+ (<span class="symbol"><A NAME="ref_997_7" HREF="terminal_interface-curses__adb.htm#ref_654_38">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: attr_get()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_36"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1002_13" HREF="terminal_interface-curses__adb.htm#ref_675_13">Get_Character_Attribute</A></span>
-+ (<span class="symbol"><A NAME="ref_1003_7" HREF="terminal_interface-curses__adb.htm#ref_675_38">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></span>
- <b>pragma</b> Inline (Get_Character_Attribute);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_37"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_840_14" HREF="terminal_interface-curses__adb.htm#ref_698_14">Set_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_840_25" HREF="terminal_interface-curses__adb.htm#ref_698_25">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_841_25" HREF="terminal_interface-curses__adb.htm#ref_699_25">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wcolor_set()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: color_set()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_840_14">Set_Color</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_38"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_847_14" HREF="terminal_interface-curses__adb.htm#ref_713_14">Change_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_848_7" HREF="terminal_interface-curses__adb.htm#ref_714_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_849_7" HREF="terminal_interface-curses__adb.htm#ref_715_7">Count</A></FONT> : Integer := -1;
-- <FONT COLOR=red><A NAME="ref_850_7" HREF="terminal_interface-curses__adb.htm#ref_716_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_851_7" HREF="terminal_interface-curses__adb.htm#ref_717_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wchgat()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: chgat()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_39"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_856_14" HREF="terminal_interface-curses__adb.htm#ref_736_14">Change_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_857_7" HREF="terminal_interface-curses__adb.htm#ref_737_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_858_7" HREF="terminal_interface-curses__adb.htm#ref_738_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>'First;
-- <FONT COLOR=red><A NAME="ref_859_7" HREF="terminal_interface-curses__adb.htm#ref_739_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>'First;
-- <FONT COLOR=red><A NAME="ref_860_7" HREF="terminal_interface-curses__adb.htm#ref_740_7">Count</A></FONT> : Integer := -1;
-- <FONT COLOR=red><A NAME="ref_861_7" HREF="terminal_interface-curses__adb.htm#ref_741_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_862_7" HREF="terminal_interface-curses__adb.htm#ref_742_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">mvwchgat()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvchgat()</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_37"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1008_14" HREF="terminal_interface-curses__adb.htm#ref_696_14">Set_Color</A></span> (<span class="symbol"><A NAME="ref_1008_25" HREF="terminal_interface-curses__adb.htm#ref_696_25">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1009_25" HREF="terminal_interface-curses__adb.htm#ref_697_25">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wcolor_set()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: color_set()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1008_14">Set_Color</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_38"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1015_14" HREF="terminal_interface-curses__adb.htm#ref_712_14">Change_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_1016_7" HREF="terminal_interface-curses__adb.htm#ref_713_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1017_7" HREF="terminal_interface-curses__adb.htm#ref_714_7">Count</A></span> : Integer := -1;
-+ <span class="symbol"><A NAME="ref_1018_7" HREF="terminal_interface-curses__adb.htm#ref_715_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_1019_7" HREF="terminal_interface-curses__adb.htm#ref_716_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wchgat()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: chgat()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_39"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1024_14" HREF="terminal_interface-curses__adb.htm#ref_737_14">Change_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_1025_7" HREF="terminal_interface-curses__adb.htm#ref_738_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1026_7" HREF="terminal_interface-curses__adb.htm#ref_739_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>'First;
-+ <span class="symbol"><A NAME="ref_1027_7" HREF="terminal_interface-curses__adb.htm#ref_740_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>'First;
-+ <span class="symbol"><A NAME="ref_1028_7" HREF="terminal_interface-curses__adb.htm#ref_741_7">Count</A></span> : Integer := -1;
-+ <span class="symbol"><A NAME="ref_1029_7" HREF="terminal_interface-curses__adb.htm#ref_742_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_1030_7" HREF="terminal_interface-curses__adb.htm#ref_743_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">mvwchgat()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvchgat()</EM></span>
- <b>pragma</b> Inline (Change_Attributes);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_beep.3x.html">curs_beep.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_40"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_872_14" HREF="terminal_interface-curses__adb.htm#ref_749_14">Beep</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">beep()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_872_14">Beep</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_41"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_877_14" HREF="terminal_interface-curses__adb.htm#ref_759_14">Flash_Screen</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">flash()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_877_14">Flash_Screen</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_inopts.3x.html">curs_inopts.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- | Not implemented : typeahead</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_42"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_888_14" HREF="terminal_interface-curses__adb.htm#ref_769_14">Set_Cbreak_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_888_31" HREF="terminal_interface-curses__adb.htm#ref_769_31">SwitchOn</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">cbreak()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: nocbreak()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_888_14">Set_Cbreak_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_43"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_894_14" HREF="terminal_interface-curses__adb.htm#ref_788_14">Set_Raw_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_894_28" HREF="terminal_interface-curses__adb.htm#ref_788_28">SwitchOn</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">raw()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: noraw()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_894_14">Set_Raw_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_44"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_900_14" HREF="terminal_interface-curses__adb.htm#ref_807_14">Set_Echo_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_900_29" HREF="terminal_interface-curses__adb.htm#ref_807_29">SwitchOn</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">echo()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: noecho()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_900_14">Set_Echo_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_45"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_906_14" HREF="terminal_interface-curses__adb.htm#ref_826_14">Set_Meta_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_906_29" HREF="terminal_interface-curses__adb.htm#ref_826_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_907_29" HREF="terminal_interface-curses__adb.htm#ref_827_29">SwitchOn</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">meta()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_906_14">Set_Meta_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_46"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_912_14" HREF="terminal_interface-curses__adb.htm#ref_837_14">Set_KeyPad_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_912_31" HREF="terminal_interface-curses__adb.htm#ref_837_31">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_913_31" HREF="terminal_interface-curses__adb.htm#ref_838_31">SwitchOn</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">keypad()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_912_14">Set_KeyPad_Mode</A>);
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_beep.3x.html">curs_beep.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_40"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1040_14" HREF="terminal_interface-curses__adb.htm#ref_750_14">Beep</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">beep()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1040_14">Beep</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_41"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1045_14" HREF="terminal_interface-curses__adb.htm#ref_760_14">Flash_Screen</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">flash()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1045_14">Flash_Screen</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_inopts.3x.html">curs_inopts.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- | Not implemented : typeahead</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <span class="comment"><EM>-- #1A NAME="AFU_42"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1056_14" HREF="terminal_interface-curses__adb.htm#ref_770_14">Set_Cbreak_Mode</A></span> (<span class="symbol"><A NAME="ref_1056_31" HREF="terminal_interface-curses__adb.htm#ref_770_31">SwitchOn</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">cbreak()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: nocbreak()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1056_14">Set_Cbreak_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_43"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1062_14" HREF="terminal_interface-curses__adb.htm#ref_789_14">Set_Raw_Mode</A></span> (<span class="symbol"><A NAME="ref_1062_28" HREF="terminal_interface-curses__adb.htm#ref_789_28">SwitchOn</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">raw()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: noraw()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1062_14">Set_Raw_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_44"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1068_14" HREF="terminal_interface-curses__adb.htm#ref_808_14">Set_Echo_Mode</A></span> (<span class="symbol"><A NAME="ref_1068_29" HREF="terminal_interface-curses__adb.htm#ref_808_29">SwitchOn</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">echo()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: noecho()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1068_14">Set_Echo_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_45"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1074_14" HREF="terminal_interface-curses__adb.htm#ref_827_14">Set_Meta_Mode</A></span> (<span class="symbol"><A NAME="ref_1074_29" HREF="terminal_interface-curses__adb.htm#ref_827_29">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1075_29" HREF="terminal_interface-curses__adb.htm#ref_828_29">SwitchOn</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">meta()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1074_14">Set_Meta_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_46"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1080_14" HREF="terminal_interface-curses__adb.htm#ref_838_14">Set_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_1080_31" HREF="terminal_interface-curses__adb.htm#ref_838_31">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1081_31" HREF="terminal_interface-curses__adb.htm#ref_839_31">SwitchOn</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">keypad()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1080_14">Set_KeyPad_Mode</A>);
-
-- <b>function</b> <FONT COLOR=red><A NAME="ref_917_13" HREF="terminal_interface-curses__adb.htm#ref_848_13">Get_KeyPad_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_917_30" HREF="terminal_interface-curses__adb.htm#ref_848_30">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-+ <b>function</b> <span class="symbol"><A NAME="ref_1085_13" HREF="terminal_interface-curses__adb.htm#ref_849_13">Get_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_1085_30" HREF="terminal_interface-curses__adb.htm#ref_849_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
- <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- This has no pendant in C. There you've to look into the WINDOWS</EM></FONT>
-- <FONT COLOR=green><EM>-- structure to get the value. Bad practice, not repeated in Ada.</EM></FONT>
-+ <span class="comment"><EM>-- This has no pendant in C. There you've to look into the WINDOWS</EM></span>
-+ <span class="comment"><EM>-- structure to get the value. Bad practice, not repeated in Ada.</EM></span>
-
-- <b>type</b> <FONT COLOR=red><A NAME="ref_922_9">Half_Delay_Amount</A></FONT> <b>is</b> <b>range</b> 1 .. 255;
-+ <b>type</b> <span class="symbol"><A NAME="ref_1090_9">Half_Delay_Amount</A></span> <b>is</b> <b>range</b> 1 .. 255;
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_47"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_925_14" HREF="terminal_interface-curses__adb.htm#ref_857_14">Half_Delay</A></FONT> (<FONT COLOR=red><A NAME="ref_925_26" HREF="terminal_interface-curses__adb.htm#ref_857_26">Amount</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_922_9">Half_Delay_Amount</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">halfdelay()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_925_14">Half_Delay</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_48"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_930_14" HREF="terminal_interface-curses__adb.htm#ref_867_14">Set_Flush_On_Interrupt_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_931_7" HREF="terminal_interface-curses__adb.htm#ref_868_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_932_7" HREF="terminal_interface-curses__adb.htm#ref_869_7">Mode</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">intrflush()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_930_14">Set_Flush_On_Interrupt_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_49"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_937_14" HREF="terminal_interface-curses__adb.htm#ref_879_14">Set_Queue_Interrupt_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_938_7" HREF="terminal_interface-curses__adb.htm#ref_880_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_939_7" HREF="terminal_interface-curses__adb.htm#ref_881_7">Flush</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">qiflush()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: noqiflush()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_937_14">Set_Queue_Interrupt_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_50"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_945_14" HREF="terminal_interface-curses__adb.htm#ref_898_14">Set_NoDelay_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_946_7" HREF="terminal_interface-curses__adb.htm#ref_899_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_947_7" HREF="terminal_interface-curses__adb.htm#ref_900_7">Mode</A></FONT> : Boolean := False);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">nodelay()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_945_14">Set_NoDelay_Mode</A>);
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_951_9">Timeout_Mode</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_951_26">Blocking</A></FONT>, <FONT COLOR=red><A NAME="ref_951_36">Non_Blocking</A></FONT>, <FONT COLOR=red><A NAME="ref_951_50">Delayed</A></FONT>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_51"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_954_14" HREF="terminal_interface-curses__adb.htm#ref_910_14">Set_Timeout_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_954_32" HREF="terminal_interface-curses__adb.htm#ref_910_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_955_32" HREF="terminal_interface-curses__adb.htm#ref_911_32">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_951_9">Timeout_Mode</A>;
-- <FONT COLOR=red><A NAME="ref_956_32" HREF="terminal_interface-curses__adb.htm#ref_912_32">Amount</A></FONT> : Natural); <FONT COLOR=green><EM>-- in Milliseconds</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">wtimeout()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: timeout()</EM></FONT>
-- <FONT COLOR=green><EM>-- Instead of overloading the semantic of the sign of amount, we</EM></FONT>
-- <FONT COLOR=green><EM>-- introduce the Timeout_Mode parameter. This should improve</EM></FONT>
-- <FONT COLOR=green><EM>-- readability. For Blocking and Non_Blocking, the Amount is not</EM></FONT>
-- <FONT COLOR=green><EM>-- evaluated.</EM></FONT>
-- <FONT COLOR=green><EM>-- We do not inline this procedure.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_52"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_966_14" HREF="terminal_interface-curses__adb.htm#ref_931_14">Set_Escape_Timer_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_967_7" HREF="terminal_interface-curses__adb.htm#ref_932_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_968_7" HREF="terminal_interface-curses__adb.htm#ref_933_7">Timer_Off</A></FONT> : Boolean := False);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">notimeout()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_966_14">Set_Escape_Timer_Mode</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_outopts.3x.html">curs_outopts.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_53"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_977_14" HREF="terminal_interface-curses__adb.htm#ref_945_14">Set_NL_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_977_27" HREF="terminal_interface-curses__adb.htm#ref_945_27">SwitchOn</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">nl()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: nonl()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_977_14">Set_NL_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_54"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_983_14" HREF="terminal_interface-curses__adb.htm#ref_964_14">Clear_On_Next_Update</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_984_7" HREF="terminal_interface-curses__adb.htm#ref_965_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_985_7" HREF="terminal_interface-curses__adb.htm#ref_966_7">Do_Clear</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">clearok()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_983_14">Clear_On_Next_Update</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_55"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_990_14" HREF="terminal_interface-curses__adb.htm#ref_976_14">Use_Insert_Delete_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_991_7" HREF="terminal_interface-curses__adb.htm#ref_977_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_992_7" HREF="terminal_interface-curses__adb.htm#ref_978_7">Do_Idl</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idlok()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_990_14">Use_Insert_Delete_Line</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_56"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_997_14" HREF="terminal_interface-curses__adb.htm#ref_988_14">Use_Insert_Delete_Character</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_998_7" HREF="terminal_interface-curses__adb.htm#ref_989_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_999_7" HREF="terminal_interface-curses__adb.htm#ref_990_7">Do_Idc</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idcok()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_997_14">Use_Insert_Delete_Character</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_57"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1004_14" HREF="terminal_interface-curses__adb.htm#ref_998_14">Leave_Cursor_After_Update</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1005_7" HREF="terminal_interface-curses__adb.htm#ref_999_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1006_7" HREF="terminal_interface-curses__adb.htm#ref_1000_7">Do_Leave</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">leaveok()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1004_14">Leave_Cursor_After_Update</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_58"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1011_14" HREF="terminal_interface-curses__adb.htm#ref_1010_14">Immediate_Update_Mode</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1012_7" HREF="terminal_interface-curses__adb.htm#ref_1011_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1013_7" HREF="terminal_interface-curses__adb.htm#ref_1012_7">Mode</A></FONT> : Boolean := False);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">immedok()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1011_14">Immediate_Update_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_59"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1018_14" HREF="terminal_interface-curses__adb.htm#ref_1020_14">Allow_Scrolling</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1019_7" HREF="terminal_interface-curses__adb.htm#ref_1021_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1020_7" HREF="terminal_interface-curses__adb.htm#ref_1022_7">Mode</A></FONT> : Boolean := False);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">scrollok()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1018_14">Allow_Scrolling</A>);
--
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1024_13" HREF="terminal_interface-curses__adb.htm#ref_1032_13">Scrolling_Allowed</A></FONT> (<FONT COLOR=red><A NAME="ref_1024_32" HREF="terminal_interface-curses__adb.htm#ref_1032_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- There is no such function in the C interface.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1024_13">Scrolling_Allowed</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_60"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1029_14" HREF="terminal_interface-curses__adb.htm#ref_1041_14">Set_Scroll_Region</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1030_7" HREF="terminal_interface-curses__adb.htm#ref_1042_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1031_7" HREF="terminal_interface-curses__adb.htm#ref_1043_7">Top_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1032_7" HREF="terminal_interface-curses__adb.htm#ref_1044_7">Bottom_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">wsetscrreg()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: setscrreg()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1029_14">Set_Scroll_Region</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_refresh.3x.html">curs_refresh.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_61"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1042_14" HREF="terminal_interface-curses__adb.htm#ref_1057_14">Update_Screen</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">doupdate()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1042_14">Update_Screen</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_62"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1047_14" HREF="terminal_interface-curses__adb.htm#ref_1067_14">Refresh</A></FONT> (<FONT COLOR=red><A NAME="ref_1047_23" HREF="terminal_interface-curses__adb.htm#ref_1067_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wrefresh()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- There is an overloaded Refresh for Pads.</EM></FONT>
-- <FONT COLOR=green><EM>-- The Inline pragma appears there</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: refresh()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_63"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1054_14" HREF="terminal_interface-curses__adb.htm#ref_1077_14">Refresh_Without_Update</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1055_7" HREF="terminal_interface-curses__adb.htm#ref_1078_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wnoutrefresh()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- There is an overloaded Refresh_Without_Update for Pads.</EM></FONT>
-- <FONT COLOR=green><EM>-- The Inline pragma appears there</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_64"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1061_14" HREF="terminal_interface-curses__adb.htm#ref_1088_14">Redraw</A></FONT> (<FONT COLOR=red><A NAME="ref_1061_22" HREF="terminal_interface-curses__adb.htm#ref_1088_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">redrawwin()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_65"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1065_14" HREF="terminal_interface-curses__adb.htm#ref_1098_14">Redraw</A></FONT> (<FONT COLOR=red><A NAME="ref_1065_22" HREF="terminal_interface-curses__adb.htm#ref_1099_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1066_22" HREF="terminal_interface-curses__adb.htm#ref_1100_7">Begin_Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1067_22" HREF="terminal_interface-curses__adb.htm#ref_1101_7">Line_Count</A></FONT> : Positive);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wredrawln()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_47"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1093_14" HREF="terminal_interface-curses__adb.htm#ref_858_14">Half_Delay</A></span> (<span class="symbol"><A NAME="ref_1093_26" HREF="terminal_interface-curses__adb.htm#ref_858_26">Amount</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1090_9">Half_Delay_Amount</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">halfdelay()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1093_14">Half_Delay</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_48"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1098_14" HREF="terminal_interface-curses__adb.htm#ref_868_14">Set_Flush_On_Interrupt_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_1099_7" HREF="terminal_interface-curses__adb.htm#ref_869_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1100_7" HREF="terminal_interface-curses__adb.htm#ref_870_7">Mode</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">intrflush()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1098_14">Set_Flush_On_Interrupt_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_49"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1105_14" HREF="terminal_interface-curses__adb.htm#ref_880_14">Set_Queue_Interrupt_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_1106_7" HREF="terminal_interface-curses__adb.htm#ref_881_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1107_7" HREF="terminal_interface-curses__adb.htm#ref_882_7">Flush</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">qiflush()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: noqiflush()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1105_14">Set_Queue_Interrupt_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_50"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1113_14" HREF="terminal_interface-curses__adb.htm#ref_899_14">Set_NoDelay_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_1114_7" HREF="terminal_interface-curses__adb.htm#ref_900_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1115_7" HREF="terminal_interface-curses__adb.htm#ref_901_7">Mode</A></span> : Boolean := False);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">nodelay()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1113_14">Set_NoDelay_Mode</A>);
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_1119_9">Timeout_Mode</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1119_26">Blocking</A></span>, <span class="symbol"><A NAME="ref_1119_36">Non_Blocking</A></span>, <span class="symbol"><A NAME="ref_1119_50">Delayed</A></span>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_51"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1122_14" HREF="terminal_interface-curses__adb.htm#ref_911_14">Set_Timeout_Mode</A></span> (<span class="symbol"><A NAME="ref_1122_32" HREF="terminal_interface-curses__adb.htm#ref_911_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1123_32" HREF="terminal_interface-curses__adb.htm#ref_912_32">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1119_9">Timeout_Mode</A>;
-+ <span class="symbol"><A NAME="ref_1124_32" HREF="terminal_interface-curses__adb.htm#ref_913_32">Amount</A></span> : Natural); <span class="comment"><EM>-- in Milliseconds</EM></span>
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">wtimeout()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: timeout()</EM></span>
-+ <span class="comment"><EM>-- Instead of overloading the semantic of the sign of amount, we</EM></span>
-+ <span class="comment"><EM>-- introduce the Timeout_Mode parameter. This should improve</EM></span>
-+ <span class="comment"><EM>-- readability. For Blocking and Non_Blocking, the Amount is not</EM></span>
-+ <span class="comment"><EM>-- evaluated.</EM></span>
-+ <span class="comment"><EM>-- We do not inline this procedure.</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_52"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1134_14" HREF="terminal_interface-curses__adb.htm#ref_932_14">Set_Escape_Timer_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_1135_7" HREF="terminal_interface-curses__adb.htm#ref_933_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1136_7" HREF="terminal_interface-curses__adb.htm#ref_934_7">Timer_Off</A></span> : Boolean := False);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">notimeout()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1134_14">Set_Escape_Timer_Mode</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_outopts.3x.html">curs_outopts.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_53"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1145_14" HREF="terminal_interface-curses__adb.htm#ref_947_14">Set_NL_Mode</A></span> (<span class="symbol"><A NAME="ref_1145_27" HREF="terminal_interface-curses__adb.htm#ref_947_27">SwitchOn</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">nl()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: nonl()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1145_14">Set_NL_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_54"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1151_14" HREF="terminal_interface-curses__adb.htm#ref_966_14">Clear_On_Next_Update</A></span>
-+ (<span class="symbol"><A NAME="ref_1152_7" HREF="terminal_interface-curses__adb.htm#ref_967_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1153_7" HREF="terminal_interface-curses__adb.htm#ref_968_7">Do_Clear</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">clearok()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1151_14">Clear_On_Next_Update</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_55"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1158_14" HREF="terminal_interface-curses__adb.htm#ref_978_14">Use_Insert_Delete_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_1159_7" HREF="terminal_interface-curses__adb.htm#ref_979_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1160_7" HREF="terminal_interface-curses__adb.htm#ref_980_7">Do_Idl</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idlok()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1158_14">Use_Insert_Delete_Line</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_56"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1165_14" HREF="terminal_interface-curses__adb.htm#ref_990_14">Use_Insert_Delete_Character</A></span>
-+ (<span class="symbol"><A NAME="ref_1166_7" HREF="terminal_interface-curses__adb.htm#ref_991_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1167_7" HREF="terminal_interface-curses__adb.htm#ref_992_7">Do_Idc</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idcok()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1165_14">Use_Insert_Delete_Character</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_57"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1172_14" HREF="terminal_interface-curses__adb.htm#ref_1000_14">Leave_Cursor_After_Update</A></span>
-+ (<span class="symbol"><A NAME="ref_1173_7" HREF="terminal_interface-curses__adb.htm#ref_1001_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1174_7" HREF="terminal_interface-curses__adb.htm#ref_1002_7">Do_Leave</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">leaveok()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1172_14">Leave_Cursor_After_Update</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_58"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1179_14" HREF="terminal_interface-curses__adb.htm#ref_1012_14">Immediate_Update_Mode</A></span>
-+ (<span class="symbol"><A NAME="ref_1180_7" HREF="terminal_interface-curses__adb.htm#ref_1013_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1181_7" HREF="terminal_interface-curses__adb.htm#ref_1014_7">Mode</A></span> : Boolean := False);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">immedok()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1179_14">Immediate_Update_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_59"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1186_14" HREF="terminal_interface-curses__adb.htm#ref_1022_14">Allow_Scrolling</A></span>
-+ (<span class="symbol"><A NAME="ref_1187_7" HREF="terminal_interface-curses__adb.htm#ref_1023_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1188_7" HREF="terminal_interface-curses__adb.htm#ref_1024_7">Mode</A></span> : Boolean := False);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">scrollok()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1186_14">Allow_Scrolling</A>);
-+
-+ <b>function</b> <span class="symbol"><A NAME="ref_1192_13" HREF="terminal_interface-curses__adb.htm#ref_1034_13">Scrolling_Allowed</A></span> (<span class="symbol"><A NAME="ref_1192_32" HREF="terminal_interface-curses__adb.htm#ref_1034_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- There is no such function in the C interface.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1192_13">Scrolling_Allowed</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_60"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1197_14" HREF="terminal_interface-curses__adb.htm#ref_1043_14">Set_Scroll_Region</A></span>
-+ (<span class="symbol"><A NAME="ref_1198_7" HREF="terminal_interface-curses__adb.htm#ref_1044_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1199_7" HREF="terminal_interface-curses__adb.htm#ref_1045_7">Top_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1200_7" HREF="terminal_interface-curses__adb.htm#ref_1046_7">Bottom_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">wsetscrreg()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: setscrreg()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1197_14">Set_Scroll_Region</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_refresh.3x.html">curs_refresh.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_61"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1210_14" HREF="terminal_interface-curses__adb.htm#ref_1060_14">Update_Screen</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">doupdate()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1210_14">Update_Screen</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_62"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1215_14" HREF="terminal_interface-curses__adb.htm#ref_1070_14">Refresh</A></span> (<span class="symbol"><A NAME="ref_1215_23" HREF="terminal_interface-curses__adb.htm#ref_1070_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wrefresh()</A></EM></span>
-+ <span class="comment"><EM>-- There is an overloaded Refresh for Pads.</EM></span>
-+ <span class="comment"><EM>-- The Inline pragma appears there</EM></span>
-+ <span class="comment"><EM>-- AKA: refresh()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_63"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1222_14" HREF="terminal_interface-curses__adb.htm#ref_1080_14">Refresh_Without_Update</A></span>
-+ (<span class="symbol"><A NAME="ref_1223_7" HREF="terminal_interface-curses__adb.htm#ref_1081_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wnoutrefresh()</A></EM></span>
-+ <span class="comment"><EM>-- There is an overloaded Refresh_Without_Update for Pads.</EM></span>
-+ <span class="comment"><EM>-- The Inline pragma appears there</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_64"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1229_14" HREF="terminal_interface-curses__adb.htm#ref_1091_14">Redraw</A></span> (<span class="symbol"><A NAME="ref_1229_22" HREF="terminal_interface-curses__adb.htm#ref_1091_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">redrawwin()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_65"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1233_14" HREF="terminal_interface-curses__adb.htm#ref_1101_14">Redraw</A></span> (<span class="symbol"><A NAME="ref_1233_22" HREF="terminal_interface-curses__adb.htm#ref_1102_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1234_22" HREF="terminal_interface-curses__adb.htm#ref_1103_7">Begin_Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1235_22" HREF="terminal_interface-curses__adb.htm#ref_1104_7">Line_Count</A></span> : Positive);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_refresh.3x.html">wredrawln()</A></EM></span>
- <b>pragma</b> Inline (Redraw);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_clear.3x.html">curs_clear.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_66"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1076_14" HREF="terminal_interface-curses__adb.htm#ref_1115_14">Erase</A></FONT> (<FONT COLOR=red><A NAME="ref_1076_21" HREF="terminal_interface-curses__adb.htm#ref_1115_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">werase()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: erase()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1076_14">Erase</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_67"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1082_14" HREF="terminal_interface-curses__adb.htm#ref_1125_14">Clear</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1083_7" HREF="terminal_interface-curses__adb.htm#ref_1125_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclear()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: clear()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1082_14">Clear</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_68"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1089_14" HREF="terminal_interface-curses__adb.htm#ref_1135_14">Clear_To_End_Of_Screen</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1090_7" HREF="terminal_interface-curses__adb.htm#ref_1135_38">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclrtobot()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: clrtobot()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1089_14">Clear_To_End_Of_Screen</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_69"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1096_14" HREF="terminal_interface-curses__adb.htm#ref_1145_14">Clear_To_End_Of_Line</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1097_7" HREF="terminal_interface-curses__adb.htm#ref_1145_36">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclrtoeol()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: clrtoeol()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1096_14">Clear_To_End_Of_Line</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_bkgd.3x.html">curs_bkgd.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_70"#2|</EM></FONT>
-- <FONT COLOR=green><EM>-- TODO: we could have Set_Background(Window; Character_Attribute_Set)</EM></FONT>
-- <FONT COLOR=green><EM>-- because in C it is common to see bkgdset(A_BOLD) or</EM></FONT>
-- <FONT COLOR=green><EM>-- bkgdset(COLOR_PAIR(n))</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1110_14" HREF="terminal_interface-curses__adb.htm#ref_1155_14">Set_Background</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1111_7" HREF="terminal_interface-curses__adb.htm#ref_1156_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1112_7" HREF="terminal_interface-curses__adb.htm#ref_1157_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdset()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: bkgdset()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1110_14">Set_Background</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_71"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1118_14" HREF="terminal_interface-curses__adb.htm#ref_1165_14">Change_Background</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1119_7" HREF="terminal_interface-curses__adb.htm#ref_1166_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1120_7" HREF="terminal_interface-curses__adb.htm#ref_1167_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgd()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: bkgd()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1118_14">Change_Background</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_72"#2|</EM></FONT>
-- <FONT COLOR=green><EM>-- ? wbkgdget is not listed in curs_bkgd, getbkgd is thpough.</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1127_13" HREF="terminal_interface-curses__adb.htm#ref_1177_13">Get_Background</A></FONT> (<FONT COLOR=red><A NAME="ref_1127_29" HREF="terminal_interface-curses__adb.htm#ref_1177_29">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdget()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: bkgdget()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1127_13">Get_Background</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_touch.3x.html">curs_touch.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_73"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1138_14" HREF="terminal_interface-curses__adb.htm#ref_1213_14">Untouch</A></FONT> (<FONT COLOR=red><A NAME="ref_1138_23" HREF="terminal_interface-curses__adb.htm#ref_1213_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">untouchwin()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1138_14">Untouch</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_74"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1143_14" HREF="terminal_interface-curses__adb.htm#ref_1203_14">Touch</A></FONT> (<FONT COLOR=red><A NAME="ref_1143_21" HREF="terminal_interface-curses__adb.htm#ref_1203_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">touchwin()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_75"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1147_14" HREF="terminal_interface-curses__adb.htm#ref_1223_14">Touch</A></FONT> (<FONT COLOR=red><A NAME="ref_1147_21" HREF="terminal_interface-curses__adb.htm#ref_1223_21">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1148_21" HREF="terminal_interface-curses__adb.htm#ref_1224_21">Start</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1149_21" HREF="terminal_interface-curses__adb.htm#ref_1225_21">Count</A></FONT> : Positive);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">touchline()</A></EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_clear.3x.html">curs_clear.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_66"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1244_14" HREF="terminal_interface-curses__adb.htm#ref_1119_14">Erase</A></span> (<span class="symbol"><A NAME="ref_1244_21" HREF="terminal_interface-curses__adb.htm#ref_1119_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">werase()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: erase()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1244_14">Erase</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_67"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1250_14" HREF="terminal_interface-curses__adb.htm#ref_1129_14">Clear</A></span>
-+ (<span class="symbol"><A NAME="ref_1251_7" HREF="terminal_interface-curses__adb.htm#ref_1129_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclear()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: clear()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1250_14">Clear</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_68"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1257_14" HREF="terminal_interface-curses__adb.htm#ref_1139_14">Clear_To_End_Of_Screen</A></span>
-+ (<span class="symbol"><A NAME="ref_1258_7" HREF="terminal_interface-curses__adb.htm#ref_1139_38">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclrtobot()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: clrtobot()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1257_14">Clear_To_End_Of_Screen</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_69"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1264_14" HREF="terminal_interface-curses__adb.htm#ref_1149_14">Clear_To_End_Of_Line</A></span>
-+ (<span class="symbol"><A NAME="ref_1265_7" HREF="terminal_interface-curses__adb.htm#ref_1149_36">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_clear.3x.html">wclrtoeol()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: clrtoeol()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1264_14">Clear_To_End_Of_Line</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_bkgd.3x.html">curs_bkgd.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_70"#2|</EM></span>
-+ <span class="comment"><EM>-- TODO: we could have Set_Background(Window; Character_Attribute_Set)</EM></span>
-+ <span class="comment"><EM>-- because in C it is common to see bkgdset(A_BOLD) or</EM></span>
-+ <span class="comment"><EM>-- bkgdset(COLOR_PAIR(n))</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1278_14" HREF="terminal_interface-curses__adb.htm#ref_1159_14">Set_Background</A></span>
-+ (<span class="symbol"><A NAME="ref_1279_7" HREF="terminal_interface-curses__adb.htm#ref_1160_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1280_7" HREF="terminal_interface-curses__adb.htm#ref_1161_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdset()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: bkgdset()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1278_14">Set_Background</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_71"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1286_14" HREF="terminal_interface-curses__adb.htm#ref_1169_14">Change_Background</A></span>
-+ (<span class="symbol"><A NAME="ref_1287_7" HREF="terminal_interface-curses__adb.htm#ref_1170_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1288_7" HREF="terminal_interface-curses__adb.htm#ref_1171_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgd()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: bkgd()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1286_14">Change_Background</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_72"#2|</EM></span>
-+ <span class="comment"><EM>-- ? wbkgdget is not listed in curs_bkgd, getbkgd is thpough.</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1295_13" HREF="terminal_interface-curses__adb.htm#ref_1182_13">Get_Background</A></span> (<span class="symbol"><A NAME="ref_1295_29" HREF="terminal_interface-curses__adb.htm#ref_1182_29">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_bkgd.3x.html">wbkgdget()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: bkgdget()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1295_13">Get_Background</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_touch.3x.html">curs_touch.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_73"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1306_14" HREF="terminal_interface-curses__adb.htm#ref_1219_14">Untouch</A></span> (<span class="symbol"><A NAME="ref_1306_23" HREF="terminal_interface-curses__adb.htm#ref_1219_23">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">untouchwin()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1306_14">Untouch</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_74"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1311_14" HREF="terminal_interface-curses__adb.htm#ref_1209_14">Touch</A></span> (<span class="symbol"><A NAME="ref_1311_21" HREF="terminal_interface-curses__adb.htm#ref_1209_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">touchwin()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_75"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1315_14" HREF="terminal_interface-curses__adb.htm#ref_1229_14">Touch</A></span> (<span class="symbol"><A NAME="ref_1315_21" HREF="terminal_interface-curses__adb.htm#ref_1229_21">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1316_21" HREF="terminal_interface-curses__adb.htm#ref_1230_21">Start</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1317_21" HREF="terminal_interface-curses__adb.htm#ref_1231_21">Count</A></span> : Positive);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">touchline()</A></EM></span>
- <b>pragma</b> Inline (Touch);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_76"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1154_14" HREF="terminal_interface-curses__adb.htm#ref_1186_14">Change_Lines_Status</A></FONT> (<FONT COLOR=red><A NAME="ref_1154_35" HREF="terminal_interface-curses__adb.htm#ref_1186_35">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1155_35" HREF="terminal_interface-curses__adb.htm#ref_1187_35">Start</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1156_35" HREF="terminal_interface-curses__adb.htm#ref_1188_35">Count</A></FONT> : Positive;
-- <FONT COLOR=red><A NAME="ref_1157_35" HREF="terminal_interface-curses__adb.htm#ref_1189_35">State</A></FONT> : Boolean);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">wtouchln()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1154_14">Change_Lines_Status</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_77"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1162_13" HREF="terminal_interface-curses__adb.htm#ref_1231_13">Is_Touched</A></FONT> (<FONT COLOR=red><A NAME="ref_1162_25" HREF="terminal_interface-curses__adb.htm#ref_1232_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1163_25" HREF="terminal_interface-curses__adb.htm#ref_1233_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">is_linetouched()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_78"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1167_13" HREF="terminal_interface-curses__adb.htm#ref_1245_13">Is_Touched</A></FONT> (<FONT COLOR=red><A NAME="ref_1167_25" HREF="terminal_interface-curses__adb.htm#ref_1246_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">is_wintouched()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_76"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1322_14" HREF="terminal_interface-curses__adb.htm#ref_1191_14">Change_Lines_Status</A></span> (<span class="symbol"><A NAME="ref_1322_35" HREF="terminal_interface-curses__adb.htm#ref_1191_35">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1323_35" HREF="terminal_interface-curses__adb.htm#ref_1192_35">Start</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1324_35" HREF="terminal_interface-curses__adb.htm#ref_1193_35">Count</A></span> : Positive;
-+ <span class="symbol"><A NAME="ref_1325_35" HREF="terminal_interface-curses__adb.htm#ref_1194_35">State</A></span> : Boolean);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">wtouchln()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1322_14">Change_Lines_Status</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_77"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1330_13" HREF="terminal_interface-curses__adb.htm#ref_1237_13">Is_Touched</A></span> (<span class="symbol"><A NAME="ref_1330_25" HREF="terminal_interface-curses__adb.htm#ref_1238_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1331_25" HREF="terminal_interface-curses__adb.htm#ref_1239_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">is_linetouched()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_78"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1335_13" HREF="terminal_interface-curses__adb.htm#ref_1251_13">Is_Touched</A></span> (<span class="symbol"><A NAME="ref_1335_25" HREF="terminal_interface-curses__adb.htm#ref_1252_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_touch.3x.html">is_wintouched()</A></EM></span>
- <b>pragma</b> Inline (Is_Touched);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_overlay.3x.html">curs_overlay.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_79"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1176_14" HREF="terminal_interface-curses__adb.htm#ref_1258_14">Copy</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1177_7" HREF="terminal_interface-curses__adb.htm#ref_1259_7">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1178_7" HREF="terminal_interface-curses__adb.htm#ref_1260_7">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1179_7" HREF="terminal_interface-curses__adb.htm#ref_1261_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1180_7" HREF="terminal_interface-curses__adb.htm#ref_1262_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1181_7" HREF="terminal_interface-curses__adb.htm#ref_1263_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1182_7" HREF="terminal_interface-curses__adb.htm#ref_1264_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1183_7" HREF="terminal_interface-curses__adb.htm#ref_1265_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1184_7" HREF="terminal_interface-curses__adb.htm#ref_1266_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1185_7" HREF="terminal_interface-curses__adb.htm#ref_1267_7">Non_Destructive_Mode</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">copywin()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1176_14">Copy</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_80"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1190_14" HREF="terminal_interface-curses__adb.htm#ref_1294_14">Overwrite</A></FONT> (<FONT COLOR=red><A NAME="ref_1190_25" HREF="terminal_interface-curses__adb.htm#ref_1295_7">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1191_25" HREF="terminal_interface-curses__adb.htm#ref_1296_7">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">overwrite()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1190_14">Overwrite</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_81"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1196_14" HREF="terminal_interface-curses__adb.htm#ref_1306_14">Overlay</A></FONT> (<FONT COLOR=red><A NAME="ref_1196_23" HREF="terminal_interface-curses__adb.htm#ref_1307_7">Source_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1197_23" HREF="terminal_interface-curses__adb.htm#ref_1308_7">Destination_Window</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">overlay()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1196_14">Overlay</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_deleteln.3x.html">curs_deleteln.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_82"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1206_14" HREF="terminal_interface-curses__adb.htm#ref_1319_14">Insert_Delete_Lines</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1207_7" HREF="terminal_interface-curses__adb.htm#ref_1320_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1208_7" HREF="terminal_interface-curses__adb.htm#ref_1321_7">Lines</A></FONT> : Integer := 1); <FONT COLOR=green><EM>-- default is to insert one line above</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">winsdelln()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: insdelln()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1206_14">Insert_Delete_Lines</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_83"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1214_14" HREF="terminal_interface-curses__adb.htm#ref_1331_14">Delete_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1214_27" HREF="terminal_interface-curses__adb.htm#ref_1331_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">wdeleteln()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: deleteln()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1214_14">Delete_Line</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_84"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1220_14" HREF="terminal_interface-curses__adb.htm#ref_1337_14">Insert_Line</A></FONT> (<FONT COLOR=red><A NAME="ref_1220_27" HREF="terminal_interface-curses__adb.htm#ref_1337_27">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">winsertln()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: insertln()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1220_14">Insert_Line</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_getyx.3x.html">curs_getyx.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_85"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1230_14" HREF="terminal_interface-curses__adb.htm#ref_1344_14">Get_Size</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1231_7" HREF="terminal_interface-curses__adb.htm#ref_1345_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1232_7" HREF="terminal_interface-curses__adb.htm#ref_1346_7">Number_Of_Lines</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_1233_7" HREF="terminal_interface-curses__adb.htm#ref_1347_7">Number_Of_Columns</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getmaxyx()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1230_14">Get_Size</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_86"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1238_14" HREF="terminal_interface-curses__adb.htm#ref_1362_14">Get_Window_Position</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1239_7" HREF="terminal_interface-curses__adb.htm#ref_1363_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1240_7" HREF="terminal_interface-curses__adb.htm#ref_1364_7">Top_Left_Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1241_7" HREF="terminal_interface-curses__adb.htm#ref_1365_7">Top_Left_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getbegyx()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1238_14">Get_Window_Position</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_87"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1246_14" HREF="terminal_interface-curses__adb.htm#ref_1380_14">Get_Cursor_Position</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1247_7" HREF="terminal_interface-curses__adb.htm#ref_1381_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1248_7" HREF="terminal_interface-curses__adb.htm#ref_1382_7">Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1249_7" HREF="terminal_interface-curses__adb.htm#ref_1383_7">Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getyx()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1246_14">Get_Cursor_Position</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_88"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1254_14" HREF="terminal_interface-curses__adb.htm#ref_1398_14">Get_Origin_Relative_To_Parent</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1255_7" HREF="terminal_interface-curses__adb.htm#ref_1399_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1256_7" HREF="terminal_interface-curses__adb.htm#ref_1400_7">Top_Left_Line</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1257_7" HREF="terminal_interface-curses__adb.htm#ref_1401_7">Top_Left_Column</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1258_7" HREF="terminal_interface-curses__adb.htm#ref_1402_7">Is_Not_A_Subwindow</A></FONT> : <b>out</b> Boolean);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getparyx()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Instead of placing -1 in the coordinates as return, we use a Boolean</EM></FONT>
-- <FONT COLOR=green><EM>-- to return the info that the window has no parent.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1254_14">Get_Origin_Relative_To_Parent</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_pad.3x.html">curs_pad.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_89"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1269_13" HREF="terminal_interface-curses__adb.htm#ref_1424_13">New_Pad</A></FONT> (<FONT COLOR=red><A NAME="ref_1269_22" HREF="terminal_interface-curses__adb.htm#ref_1424_22">Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_1270_22" HREF="terminal_interface-curses__adb.htm#ref_1425_22">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">newpad()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1269_13">New_Pad</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_90"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1275_13" HREF="terminal_interface-curses__adb.htm#ref_1439_13">Sub_Pad</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1276_7" HREF="terminal_interface-curses__adb.htm#ref_1440_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1277_7" HREF="terminal_interface-curses__adb.htm#ref_1441_7">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_1278_7" HREF="terminal_interface-curses__adb.htm#ref_1442_7">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>;
-- <FONT COLOR=red><A NAME="ref_1279_7" HREF="terminal_interface-curses__adb.htm#ref_1443_7">First_Line_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1280_7" HREF="terminal_interface-curses__adb.htm#ref_1444_7">First_Column_Position</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">subpad()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1275_13">Sub_Pad</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_91"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1285_14" HREF="terminal_interface-curses__adb.htm#ref_1467_14">Refresh</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1286_7" HREF="terminal_interface-curses__adb.htm#ref_1468_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1287_7" HREF="terminal_interface-curses__adb.htm#ref_1469_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1288_7" HREF="terminal_interface-curses__adb.htm#ref_1470_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1289_7" HREF="terminal_interface-curses__adb.htm#ref_1471_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1290_7" HREF="terminal_interface-curses__adb.htm#ref_1472_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1291_7" HREF="terminal_interface-curses__adb.htm#ref_1473_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1292_7" HREF="terminal_interface-curses__adb.htm#ref_1474_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">prefresh()</A></EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_overlay.3x.html">curs_overlay.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_79"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1344_14" HREF="terminal_interface-curses__adb.htm#ref_1264_14">Copy</A></span>
-+ (<span class="symbol"><A NAME="ref_1345_7" HREF="terminal_interface-curses__adb.htm#ref_1265_7">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1346_7" HREF="terminal_interface-curses__adb.htm#ref_1266_7">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1347_7" HREF="terminal_interface-curses__adb.htm#ref_1267_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1348_7" HREF="terminal_interface-curses__adb.htm#ref_1268_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1349_7" HREF="terminal_interface-curses__adb.htm#ref_1269_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1350_7" HREF="terminal_interface-curses__adb.htm#ref_1270_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1351_7" HREF="terminal_interface-curses__adb.htm#ref_1271_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1352_7" HREF="terminal_interface-curses__adb.htm#ref_1272_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1353_7" HREF="terminal_interface-curses__adb.htm#ref_1273_7">Non_Destructive_Mode</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">copywin()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1344_14">Copy</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_80"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1358_14" HREF="terminal_interface-curses__adb.htm#ref_1301_14">Overwrite</A></span> (<span class="symbol"><A NAME="ref_1358_25" HREF="terminal_interface-curses__adb.htm#ref_1302_7">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1359_25" HREF="terminal_interface-curses__adb.htm#ref_1303_7">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">overwrite()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1358_14">Overwrite</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_81"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1364_14" HREF="terminal_interface-curses__adb.htm#ref_1313_14">Overlay</A></span> (<span class="symbol"><A NAME="ref_1364_23" HREF="terminal_interface-curses__adb.htm#ref_1314_7">Source_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1365_23" HREF="terminal_interface-curses__adb.htm#ref_1315_7">Destination_Window</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_overlay.3x.html">overlay()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1364_14">Overlay</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_deleteln.3x.html">curs_deleteln.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_82"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1374_14" HREF="terminal_interface-curses__adb.htm#ref_1326_14">Insert_Delete_Lines</A></span>
-+ (<span class="symbol"><A NAME="ref_1375_7" HREF="terminal_interface-curses__adb.htm#ref_1327_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1376_7" HREF="terminal_interface-curses__adb.htm#ref_1328_7">Lines</A></span> : Integer := 1); <span class="comment"><EM>-- default is to insert one line above</EM></span>
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">winsdelln()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: insdelln()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1374_14">Insert_Delete_Lines</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_83"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1382_14" HREF="terminal_interface-curses__adb.htm#ref_1338_14">Delete_Line</A></span> (<span class="symbol"><A NAME="ref_1382_27" HREF="terminal_interface-curses__adb.htm#ref_1338_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">wdeleteln()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: deleteln()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1382_14">Delete_Line</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_84"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1388_14" HREF="terminal_interface-curses__adb.htm#ref_1344_14">Insert_Line</A></span> (<span class="symbol"><A NAME="ref_1388_27" HREF="terminal_interface-curses__adb.htm#ref_1344_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_deleteln.3x.html">winsertln()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: insertln()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1388_14">Insert_Line</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_getyx.3x.html">curs_getyx.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_85"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1398_14" HREF="terminal_interface-curses__adb.htm#ref_1351_14">Get_Size</A></span>
-+ (<span class="symbol"><A NAME="ref_1399_7" HREF="terminal_interface-curses__adb.htm#ref_1352_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1400_7" HREF="terminal_interface-curses__adb.htm#ref_1353_7">Number_Of_Lines</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_1401_7" HREF="terminal_interface-curses__adb.htm#ref_1354_7">Number_Of_Columns</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getmaxyx()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1398_14">Get_Size</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_86"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1406_14" HREF="terminal_interface-curses__adb.htm#ref_1369_14">Get_Window_Position</A></span>
-+ (<span class="symbol"><A NAME="ref_1407_7" HREF="terminal_interface-curses__adb.htm#ref_1370_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1408_7" HREF="terminal_interface-curses__adb.htm#ref_1371_7">Top_Left_Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1409_7" HREF="terminal_interface-curses__adb.htm#ref_1372_7">Top_Left_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getbegyx()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1406_14">Get_Window_Position</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_87"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1414_14" HREF="terminal_interface-curses__adb.htm#ref_1387_14">Get_Cursor_Position</A></span>
-+ (<span class="symbol"><A NAME="ref_1415_7" HREF="terminal_interface-curses__adb.htm#ref_1388_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1416_7" HREF="terminal_interface-curses__adb.htm#ref_1389_7">Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1417_7" HREF="terminal_interface-curses__adb.htm#ref_1390_7">Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getyx()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1414_14">Get_Cursor_Position</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_88"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1422_14" HREF="terminal_interface-curses__adb.htm#ref_1405_14">Get_Origin_Relative_To_Parent</A></span>
-+ (<span class="symbol"><A NAME="ref_1423_7" HREF="terminal_interface-curses__adb.htm#ref_1406_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1424_7" HREF="terminal_interface-curses__adb.htm#ref_1407_7">Top_Left_Line</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1425_7" HREF="terminal_interface-curses__adb.htm#ref_1408_7">Top_Left_Column</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1426_7" HREF="terminal_interface-curses__adb.htm#ref_1409_7">Is_Not_A_Subwindow</A></span> : <b>out</b> Boolean);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getyx.3x.html">getparyx()</A></EM></span>
-+ <span class="comment"><EM>-- Instead of placing -1 in the coordinates as return, we use a Boolean</EM></span>
-+ <span class="comment"><EM>-- to return the info that the window has no parent.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1422_14">Get_Origin_Relative_To_Parent</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_pad.3x.html">curs_pad.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_89"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1437_13" HREF="terminal_interface-curses__adb.htm#ref_1431_13">New_Pad</A></span> (<span class="symbol"><A NAME="ref_1437_22" HREF="terminal_interface-curses__adb.htm#ref_1431_22">Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_1438_22" HREF="terminal_interface-curses__adb.htm#ref_1432_22">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">newpad()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1437_13">New_Pad</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_90"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1443_13" HREF="terminal_interface-curses__adb.htm#ref_1446_13">Sub_Pad</A></span>
-+ (<span class="symbol"><A NAME="ref_1444_7" HREF="terminal_interface-curses__adb.htm#ref_1447_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1445_7" HREF="terminal_interface-curses__adb.htm#ref_1448_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_1446_7" HREF="terminal_interface-curses__adb.htm#ref_1449_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
-+ <span class="symbol"><A NAME="ref_1447_7" HREF="terminal_interface-curses__adb.htm#ref_1450_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1448_7" HREF="terminal_interface-curses__adb.htm#ref_1451_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">subpad()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1443_13">Sub_Pad</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_91"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1453_14" HREF="terminal_interface-curses__adb.htm#ref_1474_14">Refresh</A></span>
-+ (<span class="symbol"><A NAME="ref_1454_7" HREF="terminal_interface-curses__adb.htm#ref_1475_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1455_7" HREF="terminal_interface-curses__adb.htm#ref_1476_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1456_7" HREF="terminal_interface-curses__adb.htm#ref_1477_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1457_7" HREF="terminal_interface-curses__adb.htm#ref_1478_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1458_7" HREF="terminal_interface-curses__adb.htm#ref_1479_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1459_7" HREF="terminal_interface-curses__adb.htm#ref_1480_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1460_7" HREF="terminal_interface-curses__adb.htm#ref_1481_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">prefresh()</A></EM></span>
- <b>pragma</b> Inline (Refresh);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_92"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1297_14" HREF="terminal_interface-curses__adb.htm#ref_1497_14">Refresh_Without_Update</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1298_7" HREF="terminal_interface-curses__adb.htm#ref_1498_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1299_7" HREF="terminal_interface-curses__adb.htm#ref_1499_7">Source_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1300_7" HREF="terminal_interface-curses__adb.htm#ref_1500_7">Source_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1301_7" HREF="terminal_interface-curses__adb.htm#ref_1501_7">Destination_Top_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1302_7" HREF="terminal_interface-curses__adb.htm#ref_1502_7">Destination_Left_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1303_7" HREF="terminal_interface-curses__adb.htm#ref_1503_7">Destination_Bottom_Row</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1304_7" HREF="terminal_interface-curses__adb.htm#ref_1504_7">Destination_Right_Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">pnoutrefresh()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_92"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1465_14" HREF="terminal_interface-curses__adb.htm#ref_1505_14">Refresh_Without_Update</A></span>
-+ (<span class="symbol"><A NAME="ref_1466_7" HREF="terminal_interface-curses__adb.htm#ref_1506_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1467_7" HREF="terminal_interface-curses__adb.htm#ref_1507_7">Source_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1468_7" HREF="terminal_interface-curses__adb.htm#ref_1508_7">Source_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1469_7" HREF="terminal_interface-curses__adb.htm#ref_1509_7">Destination_Top_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1470_7" HREF="terminal_interface-curses__adb.htm#ref_1510_7">Destination_Left_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1471_7" HREF="terminal_interface-curses__adb.htm#ref_1511_7">Destination_Bottom_Row</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1472_7" HREF="terminal_interface-curses__adb.htm#ref_1512_7">Destination_Right_Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">pnoutrefresh()</A></EM></span>
- <b>pragma</b> Inline (Refresh_Without_Update);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_93"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1309_14" HREF="terminal_interface-curses__adb.htm#ref_1527_14">Add_Character_To_Pad_And_Echo_It</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1310_7" HREF="terminal_interface-curses__adb.htm#ref_1528_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1311_7" HREF="terminal_interface-curses__adb.htm#ref_1529_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">pechochar()</A></EM></FONT>
--
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1314_14" HREF="terminal_interface-curses__adb.htm#ref_1540_14">Add_Character_To_Pad_And_Echo_It</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1315_7" HREF="terminal_interface-curses__adb.htm#ref_1541_7">Pad</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1316_7" HREF="terminal_interface-curses__adb.htm#ref_1542_7">Ch</A></FONT> : Character);
-+ <span class="comment"><EM>-- #1A NAME="AFU_93"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1477_14" HREF="terminal_interface-curses__adb.htm#ref_1536_14">Add_Character_To_Pad_And_Echo_It</A></span>
-+ (<span class="symbol"><A NAME="ref_1478_7" HREF="terminal_interface-curses__adb.htm#ref_1537_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1479_7" HREF="terminal_interface-curses__adb.htm#ref_1538_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_pad.3x.html">pechochar()</A></EM></span>
-+
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1482_14" HREF="terminal_interface-curses__adb.htm#ref_1549_14">Add_Character_To_Pad_And_Echo_It</A></span>
-+ (<span class="symbol"><A NAME="ref_1483_7" HREF="terminal_interface-curses__adb.htm#ref_1550_7">Pad</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1484_7" HREF="terminal_interface-curses__adb.htm#ref_1551_7">Ch</A></span> : Character);
- <b>pragma</b> Inline (Add_Character_To_Pad_And_Echo_It);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_scroll.3x.html">curs_scroll.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_94"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1324_14" HREF="terminal_interface-curses__adb.htm#ref_1552_14">Scroll</A></FONT> (<FONT COLOR=red><A NAME="ref_1324_22" HREF="terminal_interface-curses__adb.htm#ref_1552_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1325_22" HREF="terminal_interface-curses__adb.htm#ref_1553_22">Amount</A></FONT> : Integer := 1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scroll.3x.html">wscrl()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: scroll()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: scrl()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1324_14">Scroll</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_delch.3x.html">curs_delch.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_95"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1336_14" HREF="terminal_interface-curses__adb.htm#ref_1565_14">Delete_Character</A></FONT> (<FONT COLOR=red><A NAME="ref_1336_32" HREF="terminal_interface-curses__adb.htm#ref_1565_32">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_delch.3x.html">wdelch()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: delch()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_96"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1341_14" HREF="terminal_interface-curses__adb.htm#ref_1575_14">Delete_Character</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1342_7" HREF="terminal_interface-curses__adb.htm#ref_1576_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1343_7" HREF="terminal_interface-curses__adb.htm#ref_1577_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1344_7" HREF="terminal_interface-curses__adb.htm#ref_1578_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_delch.3x.html">mvwdelch()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvdelch()</EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_scroll.3x.html">curs_scroll.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_94"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1492_14" HREF="terminal_interface-curses__adb.htm#ref_1561_14">Scroll</A></span> (<span class="symbol"><A NAME="ref_1492_22" HREF="terminal_interface-curses__adb.htm#ref_1561_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1493_22" HREF="terminal_interface-curses__adb.htm#ref_1562_22">Amount</A></span> : Integer := 1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scroll.3x.html">wscrl()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: scroll()</EM></span>
-+ <span class="comment"><EM>-- AKA: scrl()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1492_14">Scroll</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_delch.3x.html">curs_delch.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_95"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1504_14" HREF="terminal_interface-curses__adb.htm#ref_1574_14">Delete_Character</A></span> (<span class="symbol"><A NAME="ref_1504_32" HREF="terminal_interface-curses__adb.htm#ref_1574_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_delch.3x.html">wdelch()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: delch()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_96"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1509_14" HREF="terminal_interface-curses__adb.htm#ref_1584_14">Delete_Character</A></span>
-+ (<span class="symbol"><A NAME="ref_1510_7" HREF="terminal_interface-curses__adb.htm#ref_1585_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1511_7" HREF="terminal_interface-curses__adb.htm#ref_1586_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1512_7" HREF="terminal_interface-curses__adb.htm#ref_1587_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_delch.3x.html">mvwdelch()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvdelch()</EM></span>
- <b>pragma</b> Inline (Delete_Character);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_inch.3x.html">curs_inch.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_97"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1354_13" HREF="terminal_interface-curses__adb.htm#ref_1590_13">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1354_19" HREF="terminal_interface-curses__adb.htm#ref_1590_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>)
-- <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
-- <FONT COLOR=green><EM>-- AKA: inch()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inch.3x.html">winch()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_98"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1360_13" HREF="terminal_interface-curses__adb.htm#ref_1599_13">Peek</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1361_7" HREF="terminal_interface-curses__adb.htm#ref_1600_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1362_7" HREF="terminal_interface-curses__adb.htm#ref_1601_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1363_7" HREF="terminal_interface-curses__adb.htm#ref_1602_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inch.3x.html">mvwinch()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvinch()</EM></FONT>
-- <FONT COLOR=green><EM>-- More Peek's follow, pragma Inline appears later.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_insch.3x.html">curs_insch.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_99"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1373_14" HREF="terminal_interface-curses__adb.htm#ref_1612_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1373_22" HREF="terminal_interface-curses__adb.htm#ref_1612_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1374_22" HREF="terminal_interface-curses__adb.htm#ref_1613_22">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_insch.3x.html">winsch()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: insch()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_100"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1379_14" HREF="terminal_interface-curses__adb.htm#ref_1623_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1379_22" HREF="terminal_interface-curses__adb.htm#ref_1624_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1380_22" HREF="terminal_interface-curses__adb.htm#ref_1625_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1381_22" HREF="terminal_interface-curses__adb.htm#ref_1626_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1382_22" HREF="terminal_interface-curses__adb.htm#ref_1627_7">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_insch.3x.html">mvwinsch()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvinsch()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_insstr.3x.html">curs_insstr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_101"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1391_14" HREF="terminal_interface-curses__adb.htm#ref_1643_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1391_22" HREF="terminal_interface-curses__adb.htm#ref_1643_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1392_22" HREF="terminal_interface-curses__adb.htm#ref_1644_22">Str</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_1393_22" HREF="terminal_interface-curses__adb.htm#ref_1645_22">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_insstr.3x.html">winsnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: winsstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: insnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: insstr()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_102"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1400_14" HREF="terminal_interface-curses__adb.htm#ref_1661_14">Insert</A></FONT> (<FONT COLOR=red><A NAME="ref_1400_22" HREF="terminal_interface-curses__adb.htm#ref_1662_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1401_22" HREF="terminal_interface-curses__adb.htm#ref_1663_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1402_22" HREF="terminal_interface-curses__adb.htm#ref_1664_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1403_22" HREF="terminal_interface-curses__adb.htm#ref_1665_7">Str</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_1404_22" HREF="terminal_interface-curses__adb.htm#ref_1666_7">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_insstr.3x.html">mvwinsnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvwinsstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvinsnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvinsstr()</EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_inch.3x.html">curs_inch.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_97"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1522_13" HREF="terminal_interface-curses__adb.htm#ref_1599_13">Peek</A></span> (<span class="symbol"><A NAME="ref_1522_19" HREF="terminal_interface-curses__adb.htm#ref_1599_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
-+ <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="comment"><EM>-- AKA: inch()</EM></span>
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inch.3x.html">winch()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_98"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1528_13" HREF="terminal_interface-curses__adb.htm#ref_1608_13">Peek</A></span>
-+ (<span class="symbol"><A NAME="ref_1529_7" HREF="terminal_interface-curses__adb.htm#ref_1609_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1530_7" HREF="terminal_interface-curses__adb.htm#ref_1610_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1531_7" HREF="terminal_interface-curses__adb.htm#ref_1611_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inch.3x.html">mvwinch()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvinch()</EM></span>
-+ <span class="comment"><EM>-- More Peek's follow, pragma Inline appears later.</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_insch.3x.html">curs_insch.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_99"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1541_14" HREF="terminal_interface-curses__adb.htm#ref_1621_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1541_22" HREF="terminal_interface-curses__adb.htm#ref_1621_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1542_22" HREF="terminal_interface-curses__adb.htm#ref_1622_22">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_insch.3x.html">winsch()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: insch()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_100"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1547_14" HREF="terminal_interface-curses__adb.htm#ref_1632_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1547_22" HREF="terminal_interface-curses__adb.htm#ref_1633_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1548_22" HREF="terminal_interface-curses__adb.htm#ref_1634_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1549_22" HREF="terminal_interface-curses__adb.htm#ref_1635_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1550_22" HREF="terminal_interface-curses__adb.htm#ref_1636_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_insch.3x.html">mvwinsch()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvinsch()</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_insstr.3x.html">curs_insstr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_101"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1559_14" HREF="terminal_interface-curses__adb.htm#ref_1653_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1559_22" HREF="terminal_interface-curses__adb.htm#ref_1653_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1560_22" HREF="terminal_interface-curses__adb.htm#ref_1654_22">Str</A></span> : String;
-+ <span class="symbol"><A NAME="ref_1561_22" HREF="terminal_interface-curses__adb.htm#ref_1655_22">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_insstr.3x.html">winsnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: winsstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: insnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: insstr()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_102"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1568_14" HREF="terminal_interface-curses__adb.htm#ref_1671_14">Insert</A></span> (<span class="symbol"><A NAME="ref_1568_22" HREF="terminal_interface-curses__adb.htm#ref_1672_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1569_22" HREF="terminal_interface-curses__adb.htm#ref_1673_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1570_22" HREF="terminal_interface-curses__adb.htm#ref_1674_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1571_22" HREF="terminal_interface-curses__adb.htm#ref_1675_7">Str</A></span> : String;
-+ <span class="symbol"><A NAME="ref_1572_22" HREF="terminal_interface-curses__adb.htm#ref_1676_7">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_insstr.3x.html">mvwinsnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvwinsstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvinsnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvinsstr()</EM></span>
- <b>pragma</b> Inline (Insert);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_instr.3x.html">curs_instr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_103"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1416_14" HREF="terminal_interface-curses__adb.htm#ref_1685_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1416_20" HREF="terminal_interface-curses__adb.htm#ref_1685_20">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1417_20" HREF="terminal_interface-curses__adb.htm#ref_1686_20">Str</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_1418_20" HREF="terminal_interface-curses__adb.htm#ref_1687_20">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_instr.3x.html">winnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: winstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: innstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: instr()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_104"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1425_14" HREF="terminal_interface-curses__adb.htm#ref_1714_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1425_20" HREF="terminal_interface-curses__adb.htm#ref_1715_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1426_20" HREF="terminal_interface-curses__adb.htm#ref_1716_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1427_20" HREF="terminal_interface-curses__adb.htm#ref_1717_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1428_20" HREF="terminal_interface-curses__adb.htm#ref_1718_7">Str</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_1429_20" HREF="terminal_interface-curses__adb.htm#ref_1719_7">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_instr.3x.html">mvwinnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvwinstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvinnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvinstr()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_inchstr.3x.html">curs_inchstr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_105"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1440_14" HREF="terminal_interface-curses__adb.htm#ref_1726_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1440_20" HREF="terminal_interface-curses__adb.htm#ref_1727_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1441_20" HREF="terminal_interface-curses__adb.htm#ref_1728_7">Str</A></FONT> : <b>out</b> Attributed_String;
-- <FONT COLOR=red><A NAME="ref_1442_20" HREF="terminal_interface-curses__adb.htm#ref_1729_7">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inchstr.3x.html">winchnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: winchstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: inchnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: inchstr()</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_106"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1449_14" HREF="terminal_interface-curses__adb.htm#ref_1763_14">Peek</A></FONT> (<FONT COLOR=red><A NAME="ref_1449_20" HREF="terminal_interface-curses__adb.htm#ref_1764_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1450_20" HREF="terminal_interface-curses__adb.htm#ref_1765_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1451_20" HREF="terminal_interface-curses__adb.htm#ref_1766_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1452_20" HREF="terminal_interface-curses__adb.htm#ref_1767_7">Str</A></FONT> : <b>out</b> Attributed_String;
-- <FONT COLOR=red><A NAME="ref_1453_20" HREF="terminal_interface-curses__adb.htm#ref_1768_7">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_inchstr.3x.html">mvwinchnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvwinchstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvinchnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvinchstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- We do not inline the Peek procedures</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_getstr.3x.html">curs_getstr.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_107"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1465_14" HREF="terminal_interface-curses__adb.htm#ref_1775_14">Get</A></FONT> (<FONT COLOR=red><A NAME="ref_1465_19" HREF="terminal_interface-curses__adb.htm#ref_1775_19">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1466_19" HREF="terminal_interface-curses__adb.htm#ref_1776_19">Str</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_1467_19" HREF="terminal_interface-curses__adb.htm#ref_1777_19">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getstr.3x.html">wgetnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: wgetstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: getnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: getstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- actually getstr is not supported because that results in buffer</EM></FONT>
-- <FONT COLOR=green><EM>-- overflows.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_108"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1476_14" HREF="terminal_interface-curses__adb.htm#ref_1804_14">Get</A></FONT> (<FONT COLOR=red><A NAME="ref_1476_19" HREF="terminal_interface-curses__adb.htm#ref_1805_7">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1477_19" HREF="terminal_interface-curses__adb.htm#ref_1806_7">Line</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1478_19" HREF="terminal_interface-curses__adb.htm#ref_1807_7">Column</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1479_19" HREF="terminal_interface-curses__adb.htm#ref_1808_7">Str</A></FONT> : <b>out</b> String;
-- <FONT COLOR=red><A NAME="ref_1480_19" HREF="terminal_interface-curses__adb.htm#ref_1809_7">Len</A></FONT> : Integer := -1);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_getstr.3x.html">mvwgetnstr()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvwgetstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvgetnstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: mvgetstr()</EM></FONT>
-- <FONT COLOR=green><EM>-- Get is not inlined</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_slk.3x.html">curs_slk.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- Not Implemented: slk_attr_on, slk_attr_off, slk_attr_set</EM></FONT>
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_1493_9">Soft_Label_Key_Format</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1493_35">Three_Two_Three</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_1494_35">Four_Four</A></FONT>,
-- <FONT COLOR=red><A NAME="ref_1495_35">PC_Style</A></FONT>, <FONT COLOR=green><EM>-- ncurses specific</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_1496_35">PC_Style_With_Index</A></FONT>); <FONT COLOR=green><EM>-- "</EM></FONT>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_1497_9">Label_Number</A></FONT> <b>is</b> <b>new</b> Positive <b>range</b> 1 .. 12;
-- <b>type</b> <FONT COLOR=red><A NAME="ref_1498_9">Label_Justification</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1498_33">Left</A></FONT>, <FONT COLOR=red><A NAME="ref_1498_39">Centered</A></FONT>, <FONT COLOR=red><A NAME="ref_1498_49">Right</A></FONT>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_109"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1501_14" HREF="terminal_interface-curses__adb.htm#ref_1816_14">Init_Soft_Label_Keys</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1502_7" HREF="terminal_interface-curses__adb.htm#ref_1817_7">Format</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1493_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1493_35">Three_Two_Three</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_init()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1501_14">Init_Soft_Label_Keys</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_110"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1507_14" HREF="terminal_interface-curses__adb.htm#ref_1827_14">Set_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1507_34" HREF="terminal_interface-curses__adb.htm#ref_1827_34">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>;
-- <FONT COLOR=red><A NAME="ref_1508_34" HREF="terminal_interface-curses__adb.htm#ref_1828_34">Text</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_1509_34" HREF="terminal_interface-curses__adb.htm#ref_1829_34">Fmt</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1498_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1498_33">Left</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_set()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- We do not inline this procedure</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_111"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1514_14" HREF="terminal_interface-curses__adb.htm#ref_1846_14">Refresh_Soft_Label_Keys</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_refresh()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1514_14">Refresh_Soft_Label_Keys</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_112"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1519_14" HREF="terminal_interface-curses__adb.htm#ref_1856_14">Refresh_Soft_Label_Keys_Without_Update</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_noutrefresh()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1519_14">Refresh_Soft_Label_Keys_Without_Update</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_113"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1524_14" HREF="terminal_interface-curses__adb.htm#ref_1866_14">Get_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1524_34" HREF="terminal_interface-curses__adb.htm#ref_1866_34">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>;
-- <FONT COLOR=red><A NAME="ref_1525_34" HREF="terminal_interface-curses__adb.htm#ref_1867_34">Text</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_label()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_114"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1529_13" HREF="terminal_interface-curses__adb.htm#ref_1875_13">Get_Soft_Label_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1529_33" HREF="terminal_interface-curses__adb.htm#ref_1875_33">Label</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1497_9">Label_Number</A>) <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_label()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_instr.3x.html">curs_instr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_103"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1584_14" HREF="terminal_interface-curses__adb.htm#ref_1696_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1584_20" HREF="terminal_interface-curses__adb.htm#ref_1696_20">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1585_20" HREF="terminal_interface-curses__adb.htm#ref_1697_20">Str</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_1586_20" HREF="terminal_interface-curses__adb.htm#ref_1698_20">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_instr.3x.html">winnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: winstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: innstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: instr()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_104"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1593_14" HREF="terminal_interface-curses__adb.htm#ref_1725_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1593_20" HREF="terminal_interface-curses__adb.htm#ref_1726_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1594_20" HREF="terminal_interface-curses__adb.htm#ref_1727_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1595_20" HREF="terminal_interface-curses__adb.htm#ref_1728_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1596_20" HREF="terminal_interface-curses__adb.htm#ref_1729_7">Str</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_1597_20" HREF="terminal_interface-curses__adb.htm#ref_1730_7">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_instr.3x.html">mvwinnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvwinstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvinnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvinstr()</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_inchstr.3x.html">curs_inchstr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_105"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1608_14" HREF="terminal_interface-curses__adb.htm#ref_1737_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1608_20" HREF="terminal_interface-curses__adb.htm#ref_1738_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1609_20" HREF="terminal_interface-curses__adb.htm#ref_1739_7">Str</A></span> : <b>out</b> Attributed_String;
-+ <span class="symbol"><A NAME="ref_1610_20" HREF="terminal_interface-curses__adb.htm#ref_1740_7">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inchstr.3x.html">winchnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: winchstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: inchnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: inchstr()</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_106"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1617_14" HREF="terminal_interface-curses__adb.htm#ref_1774_14">Peek</A></span> (<span class="symbol"><A NAME="ref_1617_20" HREF="terminal_interface-curses__adb.htm#ref_1775_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1618_20" HREF="terminal_interface-curses__adb.htm#ref_1776_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1619_20" HREF="terminal_interface-curses__adb.htm#ref_1777_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1620_20" HREF="terminal_interface-curses__adb.htm#ref_1778_7">Str</A></span> : <b>out</b> Attributed_String;
-+ <span class="symbol"><A NAME="ref_1621_20" HREF="terminal_interface-curses__adb.htm#ref_1779_7">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_inchstr.3x.html">mvwinchnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvwinchstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvinchnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvinchstr()</EM></span>
-+ <span class="comment"><EM>-- We do not inline the Peek procedures</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_getstr.3x.html">curs_getstr.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_107"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1633_14" HREF="terminal_interface-curses__adb.htm#ref_1786_14">Get</A></span> (<span class="symbol"><A NAME="ref_1633_19" HREF="terminal_interface-curses__adb.htm#ref_1786_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1634_19" HREF="terminal_interface-curses__adb.htm#ref_1787_19">Str</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_1635_19" HREF="terminal_interface-curses__adb.htm#ref_1788_19">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getstr.3x.html">wgetnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: wgetstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: getnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: getstr()</EM></span>
-+ <span class="comment"><EM>-- actually getstr is not supported because that results in buffer</EM></span>
-+ <span class="comment"><EM>-- overflows.</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_108"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1644_14" HREF="terminal_interface-curses__adb.htm#ref_1815_14">Get</A></span> (<span class="symbol"><A NAME="ref_1644_19" HREF="terminal_interface-curses__adb.htm#ref_1816_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1645_19" HREF="terminal_interface-curses__adb.htm#ref_1817_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1646_19" HREF="terminal_interface-curses__adb.htm#ref_1818_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1647_19" HREF="terminal_interface-curses__adb.htm#ref_1819_7">Str</A></span> : <b>out</b> String;
-+ <span class="symbol"><A NAME="ref_1648_19" HREF="terminal_interface-curses__adb.htm#ref_1820_7">Len</A></span> : Integer := -1);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_getstr.3x.html">mvwgetnstr()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: mvwgetstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvgetnstr()</EM></span>
-+ <span class="comment"><EM>-- AKA: mvgetstr()</EM></span>
-+ <span class="comment"><EM>-- Get is not inlined</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_slk.3x.html">curs_slk.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- Not Implemented: slk_attr_on, slk_attr_off, slk_attr_set</EM></span>
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_1661_9">Soft_Label_Key_Format</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1661_35">Three_Two_Three</A></span>,
-+ <span class="symbol"><A NAME="ref_1662_35">Four_Four</A></span>,
-+ <span class="symbol"><A NAME="ref_1663_35">PC_Style</A></span>, <span class="comment"><EM>-- ncurses specific</EM></span>
-+ <span class="symbol"><A NAME="ref_1664_35">PC_Style_With_Index</A></span>); <span class="comment"><EM>-- "</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_1665_9">Label_Number</A></span> <b>is</b> <b>new</b> Positive <b>range</b> 1 .. 12;
-+ <b>type</b> <span class="symbol"><A NAME="ref_1666_9">Label_Justification</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1666_33">Left</A></span>, <span class="symbol"><A NAME="ref_1666_39">Centered</A></span>, <span class="symbol"><A NAME="ref_1666_49">Right</A></span>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_109"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1669_14" HREF="terminal_interface-curses__adb.htm#ref_1827_14">Init_Soft_Label_Keys</A></span>
-+ (<span class="symbol"><A NAME="ref_1670_7" HREF="terminal_interface-curses__adb.htm#ref_1828_7">Format</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1661_9">Soft_Label_Key_Format</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1661_35">Three_Two_Three</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_init()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1669_14">Init_Soft_Label_Keys</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_110"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1675_14" HREF="terminal_interface-curses__adb.htm#ref_1838_14">Set_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1675_34" HREF="terminal_interface-curses__adb.htm#ref_1838_34">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1665_9">Label_Number</A>;
-+ <span class="symbol"><A NAME="ref_1676_34" HREF="terminal_interface-curses__adb.htm#ref_1839_34">Text</A></span> : String;
-+ <span class="symbol"><A NAME="ref_1677_34" HREF="terminal_interface-curses__adb.htm#ref_1840_34">Fmt</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1666_9">Label_Justification</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1666_33">Left</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_set()</A></EM></span>
-+ <span class="comment"><EM>-- We do not inline this procedure</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_111"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1682_14" HREF="terminal_interface-curses__adb.htm#ref_1858_14">Refresh_Soft_Label_Keys</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_refresh()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1682_14">Refresh_Soft_Label_Keys</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_112"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1687_14" HREF="terminal_interface-curses__adb.htm#ref_1868_14">Refresh_Soft_Label_Keys_Without_Update</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_noutrefresh()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1687_14">Refresh_Soft_Label_Keys_Without_Update</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_113"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1692_14" HREF="terminal_interface-curses__adb.htm#ref_1878_14">Get_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1692_34" HREF="terminal_interface-curses__adb.htm#ref_1878_34">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1665_9">Label_Number</A>;
-+ <span class="symbol"><A NAME="ref_1693_34" HREF="terminal_interface-curses__adb.htm#ref_1879_34">Text</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_label()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_114"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1697_13" HREF="terminal_interface-curses__adb.htm#ref_1887_13">Get_Soft_Label_Key</A></span> (<span class="symbol"><A NAME="ref_1697_33" HREF="terminal_interface-curses__adb.htm#ref_1887_33">Label</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1665_9">Label_Number</A>) <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_label()</A></EM></span>
-+ <span class="comment"><EM>-- Same as function</EM></span>
- <b>pragma</b> Inline (Get_Soft_Label_Key);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_115"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1535_14" HREF="terminal_interface-curses__adb.htm#ref_1883_14">Clear_Soft_Label_Keys</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_clear()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1535_14">Clear_Soft_Label_Keys</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_116"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1540_14" HREF="terminal_interface-curses__adb.htm#ref_1893_14">Restore_Soft_Label_Keys</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_restore()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1540_14">Restore_Soft_Label_Keys</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_117"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1545_14" HREF="terminal_interface-curses__adb.htm#ref_1903_14">Touch_Soft_Label_Keys</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_touch()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1545_14">Touch_Soft_Label_Keys</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_118"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1550_14" HREF="terminal_interface-curses__adb.htm#ref_1913_14">Switch_Soft_Label_Key_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1551_7" HREF="terminal_interface-curses__adb.htm#ref_1914_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=red><A NAME="ref_1552_7" HREF="terminal_interface-curses__adb.htm#ref_1915_7">On</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attron()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: slk_attroff()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1550_14">Switch_Soft_Label_Key_Attributes</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_119"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1558_14" HREF="terminal_interface-curses__adb.htm#ref_1937_14">Set_Soft_Label_Key_Attributes</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1559_7" HREF="terminal_interface-curses__adb.htm#ref_1938_7">Attr</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_352_4">Normal_Video</A>;
-- <FONT COLOR=red><A NAME="ref_1560_7" HREF="terminal_interface-curses__adb.htm#ref_1939_7">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attrset()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1558_14">Set_Soft_Label_Key_Attributes</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_120"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1565_13" HREF="terminal_interface-curses__adb.htm#ref_1953_13">Get_Soft_Label_Key_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attr()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_121"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1569_13" HREF="terminal_interface-curses__adb.htm#ref_1963_13">Get_Soft_Label_Key_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attr()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_115"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1703_14" HREF="terminal_interface-curses__adb.htm#ref_1895_14">Clear_Soft_Label_Keys</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_clear()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1703_14">Clear_Soft_Label_Keys</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_116"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1708_14" HREF="terminal_interface-curses__adb.htm#ref_1905_14">Restore_Soft_Label_Keys</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_restore()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1708_14">Restore_Soft_Label_Keys</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_117"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1713_14" HREF="terminal_interface-curses__adb.htm#ref_1915_14">Touch_Soft_Label_Keys</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_touch()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1713_14">Touch_Soft_Label_Keys</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_118"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1718_14" HREF="terminal_interface-curses__adb.htm#ref_1925_14">Switch_Soft_Label_Key_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_1719_7" HREF="terminal_interface-curses__adb.htm#ref_1926_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="symbol"><A NAME="ref_1720_7" HREF="terminal_interface-curses__adb.htm#ref_1927_7">On</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attron()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: slk_attroff()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1718_14">Switch_Soft_Label_Key_Attributes</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_119"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1726_14" HREF="terminal_interface-curses__adb.htm#ref_1949_14">Set_Soft_Label_Key_Attributes</A></span>
-+ (<span class="symbol"><A NAME="ref_1727_7" HREF="terminal_interface-curses__adb.htm#ref_1950_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
-+ <span class="symbol"><A NAME="ref_1728_7" HREF="terminal_interface-curses__adb.htm#ref_1951_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attrset()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1726_14">Set_Soft_Label_Key_Attributes</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_120"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1733_13" HREF="terminal_interface-curses__adb.htm#ref_1965_13">Get_Soft_Label_Key_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attr()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_121"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1737_13" HREF="terminal_interface-curses__adb.htm#ref_1975_13">Get_Soft_Label_Key_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_attr()</A></EM></span>
- <b>pragma</b> Inline (Get_Soft_Label_Key_Attributes);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_122"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1574_14" HREF="terminal_interface-curses__adb.htm#ref_1973_14">Set_Soft_Label_Key_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_1574_40" HREF="terminal_interface-curses__adb.htm#ref_1973_40">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_color()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1574_14">Set_Soft_Label_Key_Color</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/keybound.3x.html">keybound.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not Implemented: keybound</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/keyok.3x.html">keyok.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_123"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1588_14" HREF="terminal_interface-curses__adb.htm#ref_1984_14">Enable_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1588_26" HREF="terminal_interface-curses__adb.htm#ref_1984_26">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>;
-- <FONT COLOR=red><A NAME="ref_1589_26" HREF="terminal_interface-curses__adb.htm#ref_1985_26">Enable</A></FONT> : Boolean := True);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/keyok.3x.html">keyok()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1588_14">Enable_Key</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/define_key.3x.html">define_key.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_124"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1598_14" HREF="terminal_interface-curses__adb.htm#ref_1997_14">Define_Key</A></FONT> (<FONT COLOR=red><A NAME="ref_1598_26" HREF="terminal_interface-curses__adb.htm#ref_1997_26">Definition</A></FONT> : String;
-- <FONT COLOR=red><A NAME="ref_1599_26" HREF="terminal_interface-curses__adb.htm#ref_1998_26">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_78_12">Special_Key_Code</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/define_key.3x.html">define_key()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1598_14">Define_Key</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_util.3x.html">curs_util.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- | Not implemented : filter, use_env</EM></FONT>
-- <FONT COLOR=green><EM>-- | putwin, getwin are in the child package PutWin</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_125"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1612_14" HREF="terminal_interface-curses__adb.htm#ref_90_14">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_1612_24" HREF="terminal_interface-curses__adb.htm#ref_90_24">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>;
-- <FONT COLOR=red><A NAME="ref_1613_24" HREF="terminal_interface-curses__adb.htm#ref_91_24">Name</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">keyname()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- The external name for a real keystroke.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_126"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1618_13" HREF="terminal_interface-curses__adb.htm#ref_62_13">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_1618_23" HREF="terminal_interface-curses__adb.htm#ref_62_23">Key</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">keyname()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-- <FONT COLOR=green><EM>-- We do not inline this routine</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_127"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1624_14" HREF="terminal_interface-curses__adb.htm#ref_2013_14">Un_Control</A></FONT> (<FONT COLOR=red><A NAME="ref_1624_26" HREF="terminal_interface-curses__adb.htm#ref_2013_26">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>;
-- <FONT COLOR=red><A NAME="ref_1625_26" HREF="terminal_interface-curses__adb.htm#ref_2014_26">Str</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">unctrl()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_128"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1629_13" HREF="terminal_interface-curses__adb.htm#ref_2022_13">Un_Control</A></FONT> (<FONT COLOR=red><A NAME="ref_1629_25" HREF="terminal_interface-curses__adb.htm#ref_2022_25">Ch</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_354_9">Attributed_Character</A>) <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">unctrl()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_122"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1742_14" HREF="terminal_interface-curses__adb.htm#ref_1985_14">Set_Soft_Label_Key_Color</A></span> (<span class="symbol"><A NAME="ref_1742_40" HREF="terminal_interface-curses__adb.htm#ref_1985_40">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_slk.3x.html">slk_color()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1742_14">Set_Soft_Label_Key_Color</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/keybound.3x.html">keybound.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not Implemented: keybound</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/keyok.3x.html">keyok.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_123"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1756_14" HREF="terminal_interface-curses__adb.htm#ref_1996_14">Enable_Key</A></span> (<span class="symbol"><A NAME="ref_1756_26" HREF="terminal_interface-curses__adb.htm#ref_1996_26">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>;
-+ <span class="symbol"><A NAME="ref_1757_26" HREF="terminal_interface-curses__adb.htm#ref_1997_26">Enable</A></span> : Boolean := True);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/keyok.3x.html">keyok()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1756_14">Enable_Key</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/define_key.3x.html">define_key.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_124"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1766_14" HREF="terminal_interface-curses__adb.htm#ref_2010_14">Define_Key</A></span> (<span class="symbol"><A NAME="ref_1766_26" HREF="terminal_interface-curses__adb.htm#ref_2010_26">Definition</A></span> : String;
-+ <span class="symbol"><A NAME="ref_1767_26" HREF="terminal_interface-curses__adb.htm#ref_2011_26">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/define_key.3x.html">define_key()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1766_14">Define_Key</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_util.3x.html">curs_util.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- | Not implemented : filter, use_env</EM></span>
-+ <span class="comment"><EM>-- | putwin, getwin are in the child package PutWin</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_125"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1780_14" HREF="terminal_interface-curses__adb.htm#ref_90_14">Key_Name</A></span> (<span class="symbol"><A NAME="ref_1780_24" HREF="terminal_interface-curses__adb.htm#ref_90_24">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>;
-+ <span class="symbol"><A NAME="ref_1781_24" HREF="terminal_interface-curses__adb.htm#ref_91_24">Name</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">keyname()</A></EM></span>
-+ <span class="comment"><EM>-- The external name for a real keystroke.</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_126"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1786_13" HREF="terminal_interface-curses__adb.htm#ref_62_13">Key_Name</A></span> (<span class="symbol"><A NAME="ref_1786_23" HREF="terminal_interface-curses__adb.htm#ref_62_23">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>) <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">keyname()</A></EM></span>
-+ <span class="comment"><EM>-- Same as function</EM></span>
-+ <span class="comment"><EM>-- We do not inline this routine</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_127"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1792_14" HREF="terminal_interface-curses__adb.htm#ref_2026_14">Un_Control</A></span> (<span class="symbol"><A NAME="ref_1792_26" HREF="terminal_interface-curses__adb.htm#ref_2026_26">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
-+ <span class="symbol"><A NAME="ref_1793_26" HREF="terminal_interface-curses__adb.htm#ref_2027_26">Str</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">unctrl()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_128"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1797_13" HREF="terminal_interface-curses__adb.htm#ref_2035_13">Un_Control</A></span> (<span class="symbol"><A NAME="ref_1797_25" HREF="terminal_interface-curses__adb.htm#ref_2035_25">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>) <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">unctrl()</A></EM></span>
-+ <span class="comment"><EM>-- Same as function</EM></span>
- <b>pragma</b> Inline (Un_Control);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_129"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1635_14" HREF="terminal_interface-curses__adb.htm#ref_2030_14">Delay_Output</A></FONT> (<FONT COLOR=red><A NAME="ref_1635_28" HREF="terminal_interface-curses__adb.htm#ref_2030_28">Msecs</A></FONT> : Natural);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">delay_output()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1635_14">Delay_Output</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_130"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1640_14" HREF="terminal_interface-curses__adb.htm#ref_2040_14">Flush_Input</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_util.3x.html">flushinp()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1640_14">Flush_Input</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_termattrs.3x.html">curs_termattrs.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_131"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1649_13" HREF="terminal_interface-curses__adb.htm#ref_2050_13">Baudrate</A></FONT> <b>return</b> Natural;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">baudrate()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1649_13">Baudrate</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_132"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1654_13" HREF="terminal_interface-curses__adb.htm#ref_2058_13">Erase_Character</A></FONT> <b>return</b> Character;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">erasechar()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1654_13">Erase_Character</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_133"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1659_13" HREF="terminal_interface-curses__adb.htm#ref_2066_13">Kill_Character</A></FONT> <b>return</b> Character;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">killchar()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1659_13">Kill_Character</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_134"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1664_13" HREF="terminal_interface-curses__adb.htm#ref_2074_13">Has_Insert_Character</A></FONT> <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">has_ic()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1664_13">Has_Insert_Character</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_135"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1669_13" HREF="terminal_interface-curses__adb.htm#ref_2086_13">Has_Insert_Line</A></FONT> <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">has_il()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1669_13">Has_Insert_Line</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_136"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1674_13" HREF="terminal_interface-curses__adb.htm#ref_2098_13">Supported_Attributes</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_307_9">Character_Attribute_Set</A>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termattrs()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1674_13">Supported_Attributes</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_137"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1679_14" HREF="terminal_interface-curses__adb.htm#ref_2108_14">Long_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_1679_25" HREF="terminal_interface-curses__adb.htm#ref_2108_25">Name</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">longname()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_138"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1683_13" HREF="terminal_interface-curses__adb.htm#ref_2116_13">Long_Name</A></FONT> <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">longname()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_129"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1803_14" HREF="terminal_interface-curses__adb.htm#ref_2043_14">Delay_Output</A></span> (<span class="symbol"><A NAME="ref_1803_28" HREF="terminal_interface-curses__adb.htm#ref_2043_28">Msecs</A></span> : Natural);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">delay_output()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1803_14">Delay_Output</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_130"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1808_14" HREF="terminal_interface-curses__adb.htm#ref_2053_14">Flush_Input</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_util.3x.html">flushinp()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1808_14">Flush_Input</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_termattrs.3x.html">curs_termattrs.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_131"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1817_13" HREF="terminal_interface-curses__adb.htm#ref_2063_13">Baudrate</A></span> <b>return</b> Natural;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">baudrate()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1817_13">Baudrate</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_132"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1822_13" HREF="terminal_interface-curses__adb.htm#ref_2071_13">Erase_Character</A></span> <b>return</b> Character;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">erasechar()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1822_13">Erase_Character</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_133"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1827_13" HREF="terminal_interface-curses__adb.htm#ref_2079_13">Kill_Character</A></span> <b>return</b> Character;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">killchar()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1827_13">Kill_Character</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_134"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1832_13" HREF="terminal_interface-curses__adb.htm#ref_2087_13">Has_Insert_Character</A></span> <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">has_ic()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1832_13">Has_Insert_Character</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_135"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1837_13" HREF="terminal_interface-curses__adb.htm#ref_2099_13">Has_Insert_Line</A></span> <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">has_il()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1837_13">Has_Insert_Line</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_136"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1842_13" HREF="terminal_interface-curses__adb.htm#ref_2111_13">Supported_Attributes</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termattrs()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1842_13">Supported_Attributes</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_137"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1847_14" HREF="terminal_interface-curses__adb.htm#ref_2121_14">Long_Name</A></span> (<span class="symbol"><A NAME="ref_1847_25" HREF="terminal_interface-curses__adb.htm#ref_2121_25">Name</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">longname()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_138"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1851_13" HREF="terminal_interface-curses__adb.htm#ref_2129_13">Long_Name</A></span> <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">longname()</A></EM></span>
-+ <span class="comment"><EM>-- Same as function</EM></span>
- <b>pragma</b> Inline (Long_Name);
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_139"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1689_14" HREF="terminal_interface-curses__adb.htm#ref_2124_14">Terminal_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_1689_29" HREF="terminal_interface-curses__adb.htm#ref_2124_29">Name</A></FONT> : <b>out</b> String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termname()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_140"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1693_13" HREF="terminal_interface-curses__adb.htm#ref_2132_13">Terminal_Name</A></FONT> <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termname()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- Same as function</EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_139"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1857_14" HREF="terminal_interface-curses__adb.htm#ref_2137_14">Terminal_Name</A></span> (<span class="symbol"><A NAME="ref_1857_29" HREF="terminal_interface-curses__adb.htm#ref_2137_29">Name</A></span> : <b>out</b> String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termname()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_140"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1861_13" HREF="terminal_interface-curses__adb.htm#ref_2145_13">Terminal_Name</A></span> <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_termattrs.3x.html">termname()</A></EM></span>
-+ <span class="comment"><EM>-- Same as function</EM></span>
- <b>pragma</b> Inline (Terminal_Name);
-
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_color.3x.html">curs_color.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- COLOR_PAIR</EM></FONT>
-- <FONT COLOR=green><EM>-- COLOR_PAIR(n) in C is the same as</EM></FONT>
-- <FONT COLOR=green><EM>-- Attributed_Character(Ch =&gt; Nul, Color =&gt; n, Attr =&gt; Normal_Video)</EM></FONT>
-- <FONT COLOR=green><EM>-- In C you often see something like c = c | COLOR_PAIR(n);</EM></FONT>
-- <FONT COLOR=green><EM>-- This is equivalent to c.Color := n;</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_141"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1709_14">Start_Color</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">start_color()</A></EM></FONT>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_color.3x.html">curs_color.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- COLOR_PAIR</EM></span>
-+ <span class="comment"><EM>-- COLOR_PAIR(n) in C is the same as</EM></span>
-+ <span class="comment"><EM>-- Attributed_Character(Ch =&gt; Nul, Color =&gt; n, Attr =&gt; Normal_Video)</EM></span>
-+ <span class="comment"><EM>-- In C you often see something like c = c | COLOR_PAIR(n);</EM></span>
-+ <span class="comment"><EM>-- This is equivalent to c.Color := n;</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_141"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1877_14">Start_Color</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">start_color()</A></EM></span>
- <b>pragma</b> Import (C, Start_Color, "start_color");
-
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_142"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1714_14" HREF="terminal_interface-curses__adb.htm#ref_2140_14">Init_Pair</A></FONT> (<FONT COLOR=red><A NAME="ref_1714_25" HREF="terminal_interface-curses__adb.htm#ref_2140_25">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_301_12">Redefinable_Color_Pair</A>;
-- <FONT COLOR=red><A NAME="ref_1715_25" HREF="terminal_interface-curses__adb.htm#ref_2141_25">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>;
-- <FONT COLOR=red><A NAME="ref_1716_25" HREF="terminal_interface-curses__adb.htm#ref_2142_25">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">init_pair()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1714_14">Init_Pair</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_143"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1721_14" HREF="terminal_interface-curses__adb.htm#ref_2162_14">Pair_Content</A></FONT> (<FONT COLOR=red><A NAME="ref_1721_28" HREF="terminal_interface-curses__adb.htm#ref_2162_28">Pair</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>;
-- <FONT COLOR=red><A NAME="ref_1722_28" HREF="terminal_interface-curses__adb.htm#ref_2163_28">Fore</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>;
-- <FONT COLOR=red><A NAME="ref_1723_28" HREF="terminal_interface-curses__adb.htm#ref_2164_28">Back</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">pair_content()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1721_14">Pair_Content</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_144"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1728_13" HREF="terminal_interface-curses__adb.htm#ref_2182_13">Has_Colors</A></FONT> <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">has_colors()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1728_13">Has_Colors</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_145"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1733_14" HREF="terminal_interface-curses__adb.htm#ref_2194_14">Init_Color</A></FONT> (<FONT COLOR=red><A NAME="ref_1733_26" HREF="terminal_interface-curses__adb.htm#ref_2194_26">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>;
-- <FONT COLOR=red><A NAME="ref_1734_26" HREF="terminal_interface-curses__adb.htm#ref_2195_26">Red</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>;
-- <FONT COLOR=red><A NAME="ref_1735_26" HREF="terminal_interface-curses__adb.htm#ref_2196_26">Green</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>;
-- <FONT COLOR=red><A NAME="ref_1736_26" HREF="terminal_interface-curses__adb.htm#ref_2197_26">Blue</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">init_color()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1733_14">Init_Color</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_146"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1741_13" HREF="terminal_interface-curses__adb.htm#ref_2211_13">Can_Change_Color</A></FONT> <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">can_change_color()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1741_13">Can_Change_Color</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_147"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1746_14" HREF="terminal_interface-curses__adb.htm#ref_2223_14">Color_Content</A></FONT> (<FONT COLOR=red><A NAME="ref_1746_29" HREF="terminal_interface-curses__adb.htm#ref_2223_29">Color</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A>;
-- <FONT COLOR=red><A NAME="ref_1747_29" HREF="terminal_interface-curses__adb.htm#ref_2224_29">Red</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>;
-- <FONT COLOR=red><A NAME="ref_1748_29" HREF="terminal_interface-curses__adb.htm#ref_2225_29">Green</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>;
-- <FONT COLOR=red><A NAME="ref_1749_29" HREF="terminal_interface-curses__adb.htm#ref_2226_29">Blue</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_295_9">RGB_Value</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_color.3x.html">color_content()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1746_14">Color_Content</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_kernel.3x.html">curs_kernel.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Not implemented: getsyx, setsyx</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_1758_9">Curses_Mode</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1758_25">Curses</A></FONT>, <FONT COLOR=red><A NAME="ref_1758_33">Shell</A></FONT>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_148"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1761_14" HREF="terminal_interface-curses__adb.htm#ref_2247_14">Save_Curses_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_1761_32" HREF="terminal_interface-curses__adb.htm#ref_2247_32">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1758_9">Curses_Mode</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">def_prog_mode()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: def_shell_mode()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1761_14">Save_Curses_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_149"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1767_14" HREF="terminal_interface-curses__adb.htm#ref_2265_14">Reset_Curses_Mode</A></FONT> (<FONT COLOR=red><A NAME="ref_1767_33" HREF="terminal_interface-curses__adb.htm#ref_2265_33">Mode</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1758_9">Curses_Mode</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">reset_prog_mode()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- AKA: reset_shell_mode()</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1767_14">Reset_Curses_Mode</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_150"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1773_14" HREF="terminal_interface-curses__adb.htm#ref_2283_14">Save_Terminal_State</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">savetty()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1773_14">Save_Terminal_State</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_151"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1778_14" HREF="terminal_interface-curses__adb.htm#ref_2293_14">Reset_Terminal_State</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">resetty();</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1778_14">Reset_Terminal_State</A>);
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_1782_9">Stdscr_Init_Proc</A></FONT> <b>is</b> <b>access</b>
-- <b>function</b> (<FONT COLOR=red><A NAME="ref_1783_17">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>;
-- <FONT COLOR=red><A NAME="ref_1784_17">Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>) <b>return</b> Integer;
-- <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__ads.htm#ref_1782_9">Stdscr_Init_Proc</A>);
-- <FONT COLOR=green><EM>-- N.B.: the return value is actually ignored, but it seems to be</EM></FONT>
-- <FONT COLOR=green><EM>-- a good practice to return 0 if you think all went fine</EM></FONT>
-- <FONT COLOR=green><EM>-- and -1 otherwise.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_152"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1791_14" HREF="terminal_interface-curses__adb.htm#ref_2303_14">Rip_Off_Lines</A></FONT> (<FONT COLOR=red><A NAME="ref_1791_29" HREF="terminal_interface-curses__adb.htm#ref_2303_29">Lines</A></FONT> : Integer;
-- <FONT COLOR=red><A NAME="ref_1792_29" HREF="terminal_interface-curses__adb.htm#ref_2304_29">Proc</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1782_9">Stdscr_Init_Proc</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">ripoffline()</A></EM></FONT>
-- <FONT COLOR=green><EM>-- N.B.: to be more precise, this uses a ncurses specific enhancement of</EM></FONT>
-- <FONT COLOR=green><EM>-- ripoffline(), in which the Lines argument absolute value is the</EM></FONT>
-- <FONT COLOR=green><EM>-- number of lines to be ripped of. The official ripoffline() only</EM></FONT>
-- <FONT COLOR=green><EM>-- uses the sign of Lines to remove a single line from bottom or top.</EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1791_14">Rip_Off_Lines</A>);
--
-- <b>type</b> <FONT COLOR=red><A NAME="ref_1800_9">Cursor_Visibility</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1800_31">Invisible</A></FONT>, <FONT COLOR=red><A NAME="ref_1800_42">Normal</A></FONT>, <FONT COLOR=red><A NAME="ref_1800_50">Very_Visible</A></FONT>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_153"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1803_14" HREF="terminal_interface-curses__adb.htm#ref_2315_14">Set_Cursor_Visibility</A></FONT> (<FONT COLOR=red><A NAME="ref_1803_37" HREF="terminal_interface-curses__adb.htm#ref_2315_37">Visibility</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_1800_9">Cursor_Visibility</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">curs_set()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1803_14">Set_Cursor_Visibility</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_154"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1808_14" HREF="terminal_interface-curses__adb.htm#ref_2328_14">Nap_Milli_Seconds</A></FONT> (<FONT COLOR=red><A NAME="ref_1808_33" HREF="terminal_interface-curses__adb.htm#ref_2328_33">Ms</A></FONT> : Natural);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">napms()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1808_14">Nap_Milli_Seconds</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Some useful helpers.</EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_1815_9">Transform_Direction</A></FONT> <b>is</b> (<FONT COLOR=red><A NAME="ref_1815_33">From_Screen</A></FONT>, <FONT COLOR=red><A NAME="ref_1815_46">To_Screen</A></FONT>);
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1816_14" HREF="terminal_interface-curses__adb.htm#ref_2396_14">Transform_Coordinates</A></FONT>
-- (<FONT COLOR=red><A NAME="ref_1817_7" HREF="terminal_interface-curses__adb.htm#ref_2397_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1818_7" HREF="terminal_interface-curses__adb.htm#ref_2398_7">Line</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1819_7" HREF="terminal_interface-curses__adb.htm#ref_2399_7">Column</A></FONT> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>;
-- <FONT COLOR=red><A NAME="ref_1820_7" HREF="terminal_interface-curses__adb.htm#ref_2400_7">Dir</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_1815_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1815_33">From_Screen</A>);
-- <FONT COLOR=green><EM>-- This procedure transforms screen coordinates into coordinates relative</EM></FONT>
-- <FONT COLOR=green><EM>-- to the window and vice versa, depending on the Dir parameter.</EM></FONT>
-- <FONT COLOR=green><EM>-- Screen coordinates are the position information for the physical device.</EM></FONT>
-- <FONT COLOR=green><EM>-- An Curses_Exception will be raised if Line and Column are not in the</EM></FONT>
-- <FONT COLOR=green><EM>-- Window or if you pass the Null_Window as argument.</EM></FONT>
-- <FONT COLOR=green><EM>-- We do not inline this procedure</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/default_colors.3x.html">default_colors.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_155"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1833_14" HREF="terminal_interface-curses__adb.htm#ref_2425_14">Use_Default_Colors</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/default_colors.3x.html">use_default_colors()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1833_14">Use_Default_Colors</A>);
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_156"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1838_14" HREF="terminal_interface-curses__adb.htm#ref_2435_14">Assume_Default_Colors</A></FONT> (<FONT COLOR=red><A NAME="ref_1838_37" HREF="terminal_interface-curses__adb.htm#ref_2435_37">Fore</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>;
-- <FONT COLOR=red><A NAME="ref_1839_37" HREF="terminal_interface-curses__adb.htm#ref_2436_37">Back</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_278_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_285_4">Default_Color</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/default_colors.3x.html">assume_default_colors()</A></EM></FONT>
-- <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1838_14">Assume_Default_Colors</A>);
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_extend.3x.html">curs_extend.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_157"#2|</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1848_13" HREF="terminal_interface-curses__adb.htm#ref_2450_13">Curses_Version</A></FONT> <b>return</b> String;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_extend.3x.html">curses_version()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_158"#2|</EM></FONT>
-- <FONT COLOR=green><EM>-- The returnvalue is the previous setting of the flag</EM></FONT>
-- <b>function</b> <FONT COLOR=red><A NAME="ref_1853_13" HREF="terminal_interface-curses__adb.htm#ref_2473_13">Use_Extended_Names</A></FONT> (<FONT COLOR=red><A NAME="ref_1853_33" HREF="terminal_interface-curses__adb.htm#ref_2473_33">Enable</A></FONT> : Boolean) <b>return</b> Boolean;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_extend.3x.html">use_extended_names()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_trace.3x.html">curs_trace.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_159"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1861_14" HREF="terminal_interface-curses__adb.htm#ref_2459_14">Curses_Free_All</A></FONT>;
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_trace.3x.html">_nc_freeall()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_scr_dump.3x.html">curs_scr_dump.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_160"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1869_14" HREF="terminal_interface-curses__adb.htm#ref_2488_14">Screen_Dump_To_File</A></FONT> (<FONT COLOR=red><A NAME="ref_1869_35" HREF="terminal_interface-curses__adb.htm#ref_2488_35">Filename</A></FONT> : String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_dump()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_161"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1873_14" HREF="terminal_interface-curses__adb.htm#ref_2501_14">Screen_Restore_From_File</A></FONT> (<FONT COLOR=red><A NAME="ref_1873_40" HREF="terminal_interface-curses__adb.htm#ref_2501_40">Filename</A></FONT> : String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_restore()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_162"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1877_14" HREF="terminal_interface-curses__adb.htm#ref_2514_14">Screen_Init_From_File</A></FONT> (<FONT COLOR=red><A NAME="ref_1877_37" HREF="terminal_interface-curses__adb.htm#ref_2514_37">Filename</A></FONT> : String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_init()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_163"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1881_14" HREF="terminal_interface-curses__adb.htm#ref_2527_14">Screen_Set_File</A></FONT> (<FONT COLOR=red><A NAME="ref_1881_31" HREF="terminal_interface-curses__adb.htm#ref_2527_31">Filename</A></FONT> : String);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_set()</A></EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_print.3x.html">curs_print.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not implemented: mcprint</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_printw.3x.html">curs_printw.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not implemented: printw, wprintw, mvprintw, mvwprintw, vwprintw,</EM></FONT>
-- <FONT COLOR=green><EM>-- vw_printw</EM></FONT>
-- <FONT COLOR=green><EM>-- Please use the Ada style Text_IO child packages for formatted</EM></FONT>
-- <FONT COLOR=green><EM>-- printing. It does not make a lot of sense to map the printf style</EM></FONT>
-- <FONT COLOR=green><EM>-- C functions to Ada.</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/curs_scanw.3x.html">curs_scanw.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not implemented: scanw, wscanw, mvscanw, mvwscanw, vwscanw, vw_scanw</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/resizeterm.3x.html">resizeterm.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- Not Implemented: resizeterm</EM></FONT>
--
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
-- <FONT COLOR=green><EM>-- | Man page <A HREF="../man/wresize.3x.html">wresize.3x</A></EM></FONT>
-- <FONT COLOR=green><EM>-- |=====================================================================</EM></FONT>
--
-- <FONT COLOR=green><EM>-- #1A NAME="AFU_164"#2|</EM></FONT>
-- <b>procedure</b> <FONT COLOR=red><A NAME="ref_1913_14" HREF="terminal_interface-curses__adb.htm#ref_2540_14">Resize</A></FONT> (<FONT COLOR=red><A NAME="ref_1913_22" HREF="terminal_interface-curses__adb.htm#ref_2540_22">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_478_13">Standard_Window</A>;
-- <FONT COLOR=red><A NAME="ref_1914_22" HREF="terminal_interface-curses__adb.htm#ref_2541_22">Number_Of_Lines</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Line_Count</A>;
-- <FONT COLOR=red><A NAME="ref_1915_22" HREF="terminal_interface-curses__adb.htm#ref_2542_22">Number_Of_Columns</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_65_12">Column_Count</A>);
-- <FONT COLOR=green><EM>-- AKA: <A HREF="../man/wresize.3x.html">wresize()</A></EM></FONT>
-+ <span class="comment"><EM>-- #1A NAME="AFU_142"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1882_14" HREF="terminal_interface-curses__adb.htm#ref_2153_14">Init_Pair</A></span> (<span class="symbol"><A NAME="ref_1882_25" HREF="terminal_interface-curses__adb.htm#ref_2153_25">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_411_12">Redefinable_Color_Pair</A>;
-+ <span class="symbol"><A NAME="ref_1883_25" HREF="terminal_interface-curses__adb.htm#ref_2154_25">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>;
-+ <span class="symbol"><A NAME="ref_1884_25" HREF="terminal_interface-curses__adb.htm#ref_2155_25">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">init_pair()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1882_14">Init_Pair</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_143"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1889_14" HREF="terminal_interface-curses__adb.htm#ref_2177_14">Pair_Content</A></span> (<span class="symbol"><A NAME="ref_1889_28" HREF="terminal_interface-curses__adb.htm#ref_2177_28">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>;
-+ <span class="symbol"><A NAME="ref_1890_28" HREF="terminal_interface-curses__adb.htm#ref_2178_28">Fore</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>;
-+ <span class="symbol"><A NAME="ref_1891_28" HREF="terminal_interface-curses__adb.htm#ref_2179_28">Back</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">pair_content()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1889_14">Pair_Content</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_144"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1896_13" HREF="terminal_interface-curses__adb.htm#ref_2197_13">Has_Colors</A></span> <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">has_colors()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1896_13">Has_Colors</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_145"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1901_14" HREF="terminal_interface-curses__adb.htm#ref_2209_14">Init_Color</A></span> (<span class="symbol"><A NAME="ref_1901_26" HREF="terminal_interface-curses__adb.htm#ref_2209_26">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>;
-+ <span class="symbol"><A NAME="ref_1902_26" HREF="terminal_interface-curses__adb.htm#ref_2210_26">Red</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>;
-+ <span class="symbol"><A NAME="ref_1903_26" HREF="terminal_interface-curses__adb.htm#ref_2211_26">Green</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>;
-+ <span class="symbol"><A NAME="ref_1904_26" HREF="terminal_interface-curses__adb.htm#ref_2212_26">Blue</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">init_color()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1901_14">Init_Color</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_146"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_1909_13" HREF="terminal_interface-curses__adb.htm#ref_2227_13">Can_Change_Color</A></span> <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">can_change_color()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1909_13">Can_Change_Color</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_147"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1914_14" HREF="terminal_interface-curses__adb.htm#ref_2239_14">Color_Content</A></span> (<span class="symbol"><A NAME="ref_1914_29" HREF="terminal_interface-curses__adb.htm#ref_2239_29">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>;
-+ <span class="symbol"><A NAME="ref_1915_29" HREF="terminal_interface-curses__adb.htm#ref_2240_29">Red</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>;
-+ <span class="symbol"><A NAME="ref_1916_29" HREF="terminal_interface-curses__adb.htm#ref_2241_29">Green</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>;
-+ <span class="symbol"><A NAME="ref_1917_29" HREF="terminal_interface-curses__adb.htm#ref_2242_29">Blue</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_color.3x.html">color_content()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1914_14">Color_Content</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_kernel.3x.html">curs_kernel.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Not implemented: getsyx, setsyx</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_1926_9">Curses_Mode</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1926_25">Curses</A></span>, <span class="symbol"><A NAME="ref_1926_33">Shell</A></span>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_148"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1929_14" HREF="terminal_interface-curses__adb.htm#ref_2264_14">Save_Curses_Mode</A></span> (<span class="symbol"><A NAME="ref_1929_32" HREF="terminal_interface-curses__adb.htm#ref_2264_32">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Mode</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">def_prog_mode()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: def_shell_mode()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1929_14">Save_Curses_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_149"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1935_14" HREF="terminal_interface-curses__adb.htm#ref_2282_14">Reset_Curses_Mode</A></span> (<span class="symbol"><A NAME="ref_1935_33" HREF="terminal_interface-curses__adb.htm#ref_2282_33">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Mode</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">reset_prog_mode()</A></EM></span>
-+ <span class="comment"><EM>-- AKA: reset_shell_mode()</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1935_14">Reset_Curses_Mode</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_150"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1941_14" HREF="terminal_interface-curses__adb.htm#ref_2300_14">Save_Terminal_State</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">savetty()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1941_14">Save_Terminal_State</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_151"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1946_14" HREF="terminal_interface-curses__adb.htm#ref_2310_14">Reset_Terminal_State</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">resetty();</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1946_14">Reset_Terminal_State</A>);
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_1950_9">Stdscr_Init_Proc</A></span> <b>is</b> <b>access</b>
-+ <b>function</b> (<span class="symbol"><A NAME="ref_1951_17">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
-+ <span class="symbol"><A NAME="ref_1952_17">Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>) <b>return</b> Integer;
-+ <b>pragma</b> Convention (C, <A HREF="terminal_interface-curses__ads.htm#ref_1950_9">Stdscr_Init_Proc</A>);
-+ <span class="comment"><EM>-- N.B.: the return value is actually ignored, but it seems to be</EM></span>
-+ <span class="comment"><EM>-- a good practice to return 0 if you think all went fine</EM></span>
-+ <span class="comment"><EM>-- and -1 otherwise.</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_152"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1959_14" HREF="terminal_interface-curses__adb.htm#ref_2320_14">Rip_Off_Lines</A></span> (<span class="symbol"><A NAME="ref_1959_29" HREF="terminal_interface-curses__adb.htm#ref_2320_29">Lines</A></span> : Integer;
-+ <span class="symbol"><A NAME="ref_1960_29" HREF="terminal_interface-curses__adb.htm#ref_2321_29">Proc</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1950_9">Stdscr_Init_Proc</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">ripoffline()</A></EM></span>
-+ <span class="comment"><EM>-- N.B.: to be more precise, this uses a ncurses specific enhancement of</EM></span>
-+ <span class="comment"><EM>-- ripoffline(), in which the Lines argument absolute value is the</EM></span>
-+ <span class="comment"><EM>-- number of lines to be ripped of. The official ripoffline() only</EM></span>
-+ <span class="comment"><EM>-- uses the sign of Lines to remove a single line from bottom or top.</EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1959_14">Rip_Off_Lines</A>);
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_1968_9">Cursor_Visibility</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1968_31">Invisible</A></span>, <span class="symbol"><A NAME="ref_1968_42">Normal</A></span>, <span class="symbol"><A NAME="ref_1968_50">Very_Visible</A></span>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_153"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1971_14" HREF="terminal_interface-curses__adb.htm#ref_2332_14">Set_Cursor_Visibility</A></span> (<span class="symbol"><A NAME="ref_1971_37" HREF="terminal_interface-curses__adb.htm#ref_2332_37">Visibility</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_1968_9">Cursor_Visibility</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">curs_set()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1971_14">Set_Cursor_Visibility</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_154"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1976_14" HREF="terminal_interface-curses__adb.htm#ref_2345_14">Nap_Milli_Seconds</A></span> (<span class="symbol"><A NAME="ref_1976_33" HREF="terminal_interface-curses__adb.htm#ref_2345_33">Ms</A></span> : Natural);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_kernel.3x.html">napms()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1976_14">Nap_Milli_Seconds</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Some useful helpers.</EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_1983_9">Transform_Direction</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1983_33">From_Screen</A></span>, <span class="symbol"><A NAME="ref_1983_46">To_Screen</A></span>);
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_1984_14" HREF="terminal_interface-curses__adb.htm#ref_2396_14">Transform_Coordinates</A></span>
-+ (<span class="symbol"><A NAME="ref_1985_7" HREF="terminal_interface-curses__adb.htm#ref_2397_7">W</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_1986_7" HREF="terminal_interface-curses__adb.htm#ref_2398_7">Line</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
-+ <span class="symbol"><A NAME="ref_1987_7" HREF="terminal_interface-curses__adb.htm#ref_2399_7">Column</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
-+ <span class="symbol"><A NAME="ref_1988_7" HREF="terminal_interface-curses__adb.htm#ref_2400_7">Dir</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1983_9">Transform_Direction</A> := <A HREF="terminal_interface-curses__ads.htm#ref_1983_33">From_Screen</A>);
-+ <span class="comment"><EM>-- This procedure transforms screen coordinates into coordinates relative</EM></span>
-+ <span class="comment"><EM>-- to the window and vice versa, depending on the Dir parameter.</EM></span>
-+ <span class="comment"><EM>-- Screen coordinates are the position information for the physical device.</EM></span>
-+ <span class="comment"><EM>-- An Curses_Exception will be raised if Line and Column are not in the</EM></span>
-+ <span class="comment"><EM>-- Window or if you pass the Null_Window as argument.</EM></span>
-+ <span class="comment"><EM>-- We do not inline this procedure</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/default_colors.3x.html">default_colors.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_2000_4">Default_Color</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := -1;
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_155"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2003_14" HREF="terminal_interface-curses__adb.htm#ref_2425_14">Use_Default_Colors</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/default_colors.3x.html">use_default_colors()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_2003_14">Use_Default_Colors</A>);
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_156"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2008_14" HREF="terminal_interface-curses__adb.htm#ref_2435_14">Assume_Default_Colors</A></span> (<span class="symbol"><A NAME="ref_2008_37" HREF="terminal_interface-curses__adb.htm#ref_2435_37">Fore</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_2000_4">Default_Color</A>;
-+ <span class="symbol"><A NAME="ref_2009_37" HREF="terminal_interface-curses__adb.htm#ref_2436_37">Back</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses__ads.htm#ref_2000_4">Default_Color</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/default_colors.3x.html">assume_default_colors()</A></EM></span>
-+ <b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_2008_14">Assume_Default_Colors</A>);
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_extend.3x.html">curs_extend.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_157"#2|</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2018_13" HREF="terminal_interface-curses__adb.htm#ref_2450_13">Curses_Version</A></span> <b>return</b> String;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_extend.3x.html">curses_version()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_158"#2|</EM></span>
-+ <span class="comment"><EM>-- The returnvalue is the previous setting of the flag</EM></span>
-+ <b>function</b> <span class="symbol"><A NAME="ref_2023_13" HREF="terminal_interface-curses__adb.htm#ref_2473_13">Use_Extended_Names</A></span> (<span class="symbol"><A NAME="ref_2023_33" HREF="terminal_interface-curses__adb.htm#ref_2473_33">Enable</A></span> : Boolean) <b>return</b> Boolean;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_extend.3x.html">use_extended_names()</A></EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_trace.3x.html">curs_trace.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_159"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2031_14" HREF="terminal_interface-curses__adb.htm#ref_2459_14">Curses_Free_All</A></span>;
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_trace.3x.html">_nc_freeall()</A></EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_scr_dump.3x.html">curs_scr_dump.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_160"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2039_14" HREF="terminal_interface-curses__adb.htm#ref_2488_14">Screen_Dump_To_File</A></span> (<span class="symbol"><A NAME="ref_2039_35" HREF="terminal_interface-curses__adb.htm#ref_2488_35">Filename</A></span> : String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_dump()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_161"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2043_14" HREF="terminal_interface-curses__adb.htm#ref_2501_14">Screen_Restore_From_File</A></span> (<span class="symbol"><A NAME="ref_2043_40" HREF="terminal_interface-curses__adb.htm#ref_2501_40">Filename</A></span> : String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_restore()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_162"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2047_14" HREF="terminal_interface-curses__adb.htm#ref_2514_14">Screen_Init_From_File</A></span> (<span class="symbol"><A NAME="ref_2047_37" HREF="terminal_interface-curses__adb.htm#ref_2514_37">Filename</A></span> : String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_init()</A></EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_163"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2051_14" HREF="terminal_interface-curses__adb.htm#ref_2527_14">Screen_Set_File</A></span> (<span class="symbol"><A NAME="ref_2051_31" HREF="terminal_interface-curses__adb.htm#ref_2527_31">Filename</A></span> : String);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/curs_scr_dump.3x.html">scr_set()</A></EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_print.3x.html">curs_print.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not implemented: mcprint</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_printw.3x.html">curs_printw.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not implemented: printw, wprintw, mvprintw, mvwprintw, vwprintw,</EM></span>
-+ <span class="comment"><EM>-- vw_printw</EM></span>
-+ <span class="comment"><EM>-- Please use the Ada style Text_IO child packages for formatted</EM></span>
-+ <span class="comment"><EM>-- printing. It does not make a lot of sense to map the printf style</EM></span>
-+ <span class="comment"><EM>-- C functions to Ada.</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/curs_scanw.3x.html">curs_scanw.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not implemented: scanw, wscanw, mvscanw, mvwscanw, vwscanw, vw_scanw</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/resizeterm.3x.html">resizeterm.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- Not Implemented: resizeterm</EM></span>
-+
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+ <span class="comment"><EM>-- | Man page <A HREF="../man/wresize.3x.html">wresize.3x</A></EM></span>
-+ <span class="comment"><EM>-- |=====================================================================</EM></span>
-+
-+ <span class="comment"><EM>-- #1A NAME="AFU_164"#2|</EM></span>
-+ <b>procedure</b> <span class="symbol"><A NAME="ref_2083_14" HREF="terminal_interface-curses__adb.htm#ref_2540_14">Resize</A></span> (<span class="symbol"><A NAME="ref_2083_22" HREF="terminal_interface-curses__adb.htm#ref_2540_22">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
-+ <span class="symbol"><A NAME="ref_2084_22" HREF="terminal_interface-curses__adb.htm#ref_2541_22">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
-+ <span class="symbol"><A NAME="ref_2085_22" HREF="terminal_interface-curses__adb.htm#ref_2542_22">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>);
-+ <span class="comment"><EM>-- AKA: <A HREF="../man/wresize.3x.html">wresize()</A></EM></span>
-
- <b>private</b>
-- <b>type</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-- <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := 0;
-+ <b>type</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
-+ <A HREF="terminal_interface-curses__ads.htm#ref_56_4">Null_Window</A> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := 0;
-+
-+ <span class="comment"><EM>-- The next constants are generated and may be different on your</EM></span>
-+ <span class="comment"><EM>-- architecture.</EM></span>
-+ <span class="comment"><EM>--</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_2096_4">Sizeof_Bool</A></span> : <b>constant</b> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_11_4">Sizeof_Bool</A>;
-+
-+ <b>type</b> <span class="symbol"><A NAME="ref_2098_9">Curses_Bool</A></span> <b>is</b> <b>mod</b> 2 ** <A HREF="terminal_interface-curses__ads.htm#ref_2096_4">Sizeof_Bool</A>;
-
-- <FONT COLOR=green><EM>-- The next constants are generated and may be different on your</EM></FONT>
-- <FONT COLOR=green><EM>-- architecture.</EM></FONT>
-- <FONT COLOR=green><EM>--</EM></FONT>
-- <FONT COLOR=red><A NAME="ref_1925_4">Sizeof_bool</A></FONT> : <b>constant</b> Natural := 1; <FONT COLOR=green><EM>-- bool</EM></FONT>
-- <b>type</b> <FONT COLOR=red><A NAME="ref_1926_9">Curses_Bool</A></FONT> <b>is</b> <b>mod</b> 2 ** <A HREF="interfac__ads.htm#ref_38_9">Interfaces</A>.C.char'Size;
-- <FONT COLOR=red><A NAME="ref_1927_4">Curses_Bool_False</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_1926_9">Curses_Bool</A> := 0;
-+ <span class="symbol"><A NAME="ref_2100_4">Curses_Bool_False</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_2098_9">Curses_Bool</A> := 0;
-
--<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_49_28">Curses</A>;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>;
- </PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface-curses_constants__ads.htm
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface-curses_constants__ads.htm 2014-05-24 22:10:16.000000000 +0000
-@@ -0,0 +1,405 @@
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface-curses_constants.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
-+<BODY>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses_constants.ads </H1></DIV><HR>
-+<PRE>
-+<span class="comment"><EM>-- Generated by the C program ./generate (source ./gen.c).</EM></span>
-+<span class="comment"><EM>-- Do not edit this file directly.</EM></span>
-+<span class="comment"><EM>-- The values provided here may vary on your system.</EM></span>
-+
-+<b>with</b> System;
-+<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<span class="symbol"><A NAME="ref_6_28">Curses_Constants</A></span> <b>is</b>
-+ <b>pragma</b> Pure;
-+
-+ <span class="symbol"><A NAME="ref_9_4">DFT_ARG_SUFFIX</A></span> : <b>constant</b> String := "";
-+ <span class="symbol"><A NAME="ref_10_4">Bit_Order</A></span> : <b>constant</b> System.Bit_Order := System.Low_Order_First;
-+ <span class="symbol"><A NAME="ref_11_4">Sizeof_Bool</A></span> : <b>constant</b> := 8;
-+ <span class="symbol"><A NAME="ref_12_4">OK</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_13_4">ERR</A></span> : <b>constant</b> := -1;
-+ <b>pragma</b> Warnings (Off); <span class="comment"><EM>-- redefinition of Standard.True and False</EM></span>
-+ <span class="symbol"><A NAME="ref_15_4">TRUE</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_16_4">FALSE</A></span> : <b>constant</b> := 0;
-+ <b>pragma</b> Warnings (On);
-+
-+ <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> := 5;
-+ <span class="symbol"><A NAME="ref_22_4">NCURSES_VERSION_MINOR</A></span> : <b>constant</b> := 9;
-+ <span class="symbol"><A NAME="ref_23_4">Version</A></span> : <b>constant</b> String := "5.9";
-+
-+ <span class="comment"><EM>-- Character non-color attributes from attr(3NCURSES)</EM></span>
-+
-+ <span class="comment"><EM>-- attr_t and chtype may be signed in C.</EM></span>
-+ <b>type</b> <span class="symbol"><A NAME="ref_28_9">attr_t</A></span> <b>is</b> <b>mod</b> 2 ** 32;
-+ <span class="symbol"><A NAME="ref_29_4">A_CHARTEXT_First</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_30_4">A_CHARTEXT_Last</A></span> : <b>constant</b> := 7;
-+ <span class="symbol"><A NAME="ref_31_4">A_COLOR_First</A></span> : <b>constant</b> := 8;
-+ <span class="symbol"><A NAME="ref_32_4">A_COLOR_Last</A></span> : <b>constant</b> := 15;
-+ <span class="symbol"><A NAME="ref_33_4">Attr_First</A></span> : <b>constant</b> := 16;
-+ <span class="symbol"><A NAME="ref_34_4">Attr_Last</A></span> : <b>constant</b> := 31;
-+ <span class="symbol"><A NAME="ref_35_4">A_STANDOUT_First</A></span> : <b>constant</b> := 16;
-+ <span class="symbol"><A NAME="ref_36_4">A_STANDOUT_Last</A></span> : <b>constant</b> := 16;
-+ <span class="symbol"><A NAME="ref_37_4">A_UNDERLINE_First</A></span> : <b>constant</b> := 17;
-+ <span class="symbol"><A NAME="ref_38_4">A_UNDERLINE_Last</A></span> : <b>constant</b> := 17;
-+ <span class="symbol"><A NAME="ref_39_4">A_REVERSE_First</A></span> : <b>constant</b> := 18;
-+ <span class="symbol"><A NAME="ref_40_4">A_REVERSE_Last</A></span> : <b>constant</b> := 18;
-+ <span class="symbol"><A NAME="ref_41_4">A_BLINK_First</A></span> : <b>constant</b> := 19;
-+ <span class="symbol"><A NAME="ref_42_4">A_BLINK_Last</A></span> : <b>constant</b> := 19;
-+ <span class="symbol"><A NAME="ref_43_4">A_DIM_First</A></span> : <b>constant</b> := 20;
-+ <span class="symbol"><A NAME="ref_44_4">A_DIM_Last</A></span> : <b>constant</b> := 20;
-+ <span class="symbol"><A NAME="ref_45_4">A_BOLD_First</A></span> : <b>constant</b> := 21;
-+ <span class="symbol"><A NAME="ref_46_4">A_BOLD_Last</A></span> : <b>constant</b> := 21;
-+ <span class="symbol"><A NAME="ref_47_4">A_PROTECT_First</A></span> : <b>constant</b> := 24;
-+ <span class="symbol"><A NAME="ref_48_4">A_PROTECT_Last</A></span> : <b>constant</b> := 24;
-+ <span class="symbol"><A NAME="ref_49_4">A_INVIS_First</A></span> : <b>constant</b> := 23;
-+ <span class="symbol"><A NAME="ref_50_4">A_INVIS_Last</A></span> : <b>constant</b> := 23;
-+ <span class="symbol"><A NAME="ref_51_4">A_ALTCHARSET_First</A></span> : <b>constant</b> := 22;
-+ <span class="symbol"><A NAME="ref_52_4">A_ALTCHARSET_Last</A></span> : <b>constant</b> := 22;
-+ <span class="symbol"><A NAME="ref_53_4">A_HORIZONTAL_First</A></span> : <b>constant</b> := 25;
-+ <span class="symbol"><A NAME="ref_54_4">A_HORIZONTAL_Last</A></span> : <b>constant</b> := 25;
-+ <span class="symbol"><A NAME="ref_55_4">A_LEFT_First</A></span> : <b>constant</b> := 26;
-+ <span class="symbol"><A NAME="ref_56_4">A_LEFT_Last</A></span> : <b>constant</b> := 26;
-+ <span class="symbol"><A NAME="ref_57_4">A_LOW_First</A></span> : <b>constant</b> := 27;
-+ <span class="symbol"><A NAME="ref_58_4">A_LOW_Last</A></span> : <b>constant</b> := 27;
-+ <span class="symbol"><A NAME="ref_59_4">A_RIGHT_First</A></span> : <b>constant</b> := 28;
-+ <span class="symbol"><A NAME="ref_60_4">A_RIGHT_Last</A></span> : <b>constant</b> := 28;
-+ <span class="symbol"><A NAME="ref_61_4">A_TOP_First</A></span> : <b>constant</b> := 29;
-+ <span class="symbol"><A NAME="ref_62_4">A_TOP_Last</A></span> : <b>constant</b> := 29;
-+ <span class="symbol"><A NAME="ref_63_4">A_VERTICAL_First</A></span> : <b>constant</b> := 30;
-+ <span class="symbol"><A NAME="ref_64_4">A_VERTICAL_Last</A></span> : <b>constant</b> := 30;
-+ <span class="symbol"><A NAME="ref_65_4">chtype_Size</A></span> : <b>constant</b> := 32;
-+
-+ <span class="comment"><EM>-- predefined color numbers from color(3NCURSES)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_69_4">COLOR_BLACK</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_70_4">COLOR_RED</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_71_4">COLOR_GREEN</A></span> : <b>constant</b> := 2;
-+ <span class="symbol"><A NAME="ref_72_4">COLOR_YELLOW</A></span> : <b>constant</b> := 3;
-+ <span class="symbol"><A NAME="ref_73_4">COLOR_BLUE</A></span> : <b>constant</b> := 4;
-+ <span class="symbol"><A NAME="ref_74_4">COLOR_MAGENTA</A></span> : <b>constant</b> := 5;
-+ <span class="symbol"><A NAME="ref_75_4">COLOR_CYAN</A></span> : <b>constant</b> := 6;
-+ <span class="symbol"><A NAME="ref_76_4">COLOR_WHITE</A></span> : <b>constant</b> := 7;
-+
-+ <span class="comment"><EM>-- ETI return codes from ncurses.h</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_80_4">E_OK</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_81_4">E_SYSTEM_ERROR</A></span> : <b>constant</b> := -1;
-+ <span class="symbol"><A NAME="ref_82_4">E_BAD_ARGUMENT</A></span> : <b>constant</b> := -2;
-+ <span class="symbol"><A NAME="ref_83_4">E_POSTED</A></span> : <b>constant</b> := -3;
-+ <span class="symbol"><A NAME="ref_84_4">E_CONNECTED</A></span> : <b>constant</b> := -4;
-+ <span class="symbol"><A NAME="ref_85_4">E_BAD_STATE</A></span> : <b>constant</b> := -5;
-+ <span class="symbol"><A NAME="ref_86_4">E_NO_ROOM</A></span> : <b>constant</b> := -6;
-+ <span class="symbol"><A NAME="ref_87_4">E_NOT_POSTED</A></span> : <b>constant</b> := -7;
-+ <span class="symbol"><A NAME="ref_88_4">E_UNKNOWN_COMMAND</A></span> : <b>constant</b> := -8;
-+ <span class="symbol"><A NAME="ref_89_4">E_NO_MATCH</A></span> : <b>constant</b> := -9;
-+ <span class="symbol"><A NAME="ref_90_4">E_NOT_SELECTABLE</A></span> : <b>constant</b> := -10;
-+ <span class="symbol"><A NAME="ref_91_4">E_NOT_CONNECTED</A></span> : <b>constant</b> := -11;
-+ <span class="symbol"><A NAME="ref_92_4">E_REQUEST_DENIED</A></span> : <b>constant</b> := -12;
-+ <span class="symbol"><A NAME="ref_93_4">E_INVALID_FIELD</A></span> : <b>constant</b> := -13;
-+ <span class="symbol"><A NAME="ref_94_4">E_CURRENT</A></span> : <b>constant</b> := -14;
-+
-+ <span class="comment"><EM>-- Input key codes not defined in any ncurses manpage</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_98_4">KEY_MIN</A></span> : <b>constant</b> := 257;
-+ <span class="symbol"><A NAME="ref_99_4">KEY_MAX</A></span> : <b>constant</b> := 511;
-+ <span class="symbol"><A NAME="ref_100_4">KEY_CODE_YES</A></span> : <b>constant</b> := 256;
-+
-+ <span class="comment"><EM>-- Input key codes from getch(3NCURSES)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_104_4">KEY_BREAK</A></span> : <b>constant</b> := 257;
-+ <span class="symbol"><A NAME="ref_105_4">KEY_DOWN</A></span> : <b>constant</b> := 258;
-+ <span class="symbol"><A NAME="ref_106_4">KEY_UP</A></span> : <b>constant</b> := 259;
-+ <span class="symbol"><A NAME="ref_107_4">KEY_LEFT</A></span> : <b>constant</b> := 260;
-+ <span class="symbol"><A NAME="ref_108_4">KEY_RIGHT</A></span> : <b>constant</b> := 261;
-+ <span class="symbol"><A NAME="ref_109_4">KEY_HOME</A></span> : <b>constant</b> := 262;
-+ <span class="symbol"><A NAME="ref_110_4">KEY_BACKSPACE</A></span> : <b>constant</b> := 263;
-+ <span class="symbol"><A NAME="ref_111_4">KEY_F0</A></span> : <b>constant</b> := 264;
-+ <span class="symbol"><A NAME="ref_112_4">KEY_F1</A></span> : <b>constant</b> := 265;
-+ <span class="symbol"><A NAME="ref_113_4">KEY_F2</A></span> : <b>constant</b> := 266;
-+ <span class="symbol"><A NAME="ref_114_4">KEY_F3</A></span> : <b>constant</b> := 267;
-+ <span class="symbol"><A NAME="ref_115_4">KEY_F4</A></span> : <b>constant</b> := 268;
-+ <span class="symbol"><A NAME="ref_116_4">KEY_F5</A></span> : <b>constant</b> := 269;
-+ <span class="symbol"><A NAME="ref_117_4">KEY_F6</A></span> : <b>constant</b> := 270;
-+ <span class="symbol"><A NAME="ref_118_4">KEY_F7</A></span> : <b>constant</b> := 271;
-+ <span class="symbol"><A NAME="ref_119_4">KEY_F8</A></span> : <b>constant</b> := 272;
-+ <span class="symbol"><A NAME="ref_120_4">KEY_F9</A></span> : <b>constant</b> := 273;
-+ <span class="symbol"><A NAME="ref_121_4">KEY_F10</A></span> : <b>constant</b> := 274;
-+ <span class="symbol"><A NAME="ref_122_4">KEY_F11</A></span> : <b>constant</b> := 275;
-+ <span class="symbol"><A NAME="ref_123_4">KEY_F12</A></span> : <b>constant</b> := 276;
-+ <span class="symbol"><A NAME="ref_124_4">KEY_F13</A></span> : <b>constant</b> := 277;
-+ <span class="symbol"><A NAME="ref_125_4">KEY_F14</A></span> : <b>constant</b> := 278;
-+ <span class="symbol"><A NAME="ref_126_4">KEY_F15</A></span> : <b>constant</b> := 279;
-+ <span class="symbol"><A NAME="ref_127_4">KEY_F16</A></span> : <b>constant</b> := 280;
-+ <span class="symbol"><A NAME="ref_128_4">KEY_F17</A></span> : <b>constant</b> := 281;
-+ <span class="symbol"><A NAME="ref_129_4">KEY_F18</A></span> : <b>constant</b> := 282;
-+ <span class="symbol"><A NAME="ref_130_4">KEY_F19</A></span> : <b>constant</b> := 283;
-+ <span class="symbol"><A NAME="ref_131_4">KEY_F20</A></span> : <b>constant</b> := 284;
-+ <span class="symbol"><A NAME="ref_132_4">KEY_F21</A></span> : <b>constant</b> := 285;
-+ <span class="symbol"><A NAME="ref_133_4">KEY_F22</A></span> : <b>constant</b> := 286;
-+ <span class="symbol"><A NAME="ref_134_4">KEY_F23</A></span> : <b>constant</b> := 287;
-+ <span class="symbol"><A NAME="ref_135_4">KEY_F24</A></span> : <b>constant</b> := 288;
-+ <span class="symbol"><A NAME="ref_136_4">KEY_DL</A></span> : <b>constant</b> := 328;
-+ <span class="symbol"><A NAME="ref_137_4">KEY_IL</A></span> : <b>constant</b> := 329;
-+ <span class="symbol"><A NAME="ref_138_4">KEY_DC</A></span> : <b>constant</b> := 330;
-+ <span class="symbol"><A NAME="ref_139_4">KEY_IC</A></span> : <b>constant</b> := 331;
-+ <span class="symbol"><A NAME="ref_140_4">KEY_EIC</A></span> : <b>constant</b> := 332;
-+ <span class="symbol"><A NAME="ref_141_4">KEY_CLEAR</A></span> : <b>constant</b> := 333;
-+ <span class="symbol"><A NAME="ref_142_4">KEY_EOS</A></span> : <b>constant</b> := 334;
-+ <span class="symbol"><A NAME="ref_143_4">KEY_EOL</A></span> : <b>constant</b> := 335;
-+ <span class="symbol"><A NAME="ref_144_4">KEY_SF</A></span> : <b>constant</b> := 336;
-+ <span class="symbol"><A NAME="ref_145_4">KEY_SR</A></span> : <b>constant</b> := 337;
-+ <span class="symbol"><A NAME="ref_146_4">KEY_NPAGE</A></span> : <b>constant</b> := 338;
-+ <span class="symbol"><A NAME="ref_147_4">KEY_PPAGE</A></span> : <b>constant</b> := 339;
-+ <span class="symbol"><A NAME="ref_148_4">KEY_STAB</A></span> : <b>constant</b> := 340;
-+ <span class="symbol"><A NAME="ref_149_4">KEY_CTAB</A></span> : <b>constant</b> := 341;
-+ <span class="symbol"><A NAME="ref_150_4">KEY_CATAB</A></span> : <b>constant</b> := 342;
-+ <span class="symbol"><A NAME="ref_151_4">KEY_ENTER</A></span> : <b>constant</b> := 343;
-+ <span class="symbol"><A NAME="ref_152_4">KEY_SRESET</A></span> : <b>constant</b> := 344;
-+ <span class="symbol"><A NAME="ref_153_4">KEY_RESET</A></span> : <b>constant</b> := 345;
-+ <span class="symbol"><A NAME="ref_154_4">KEY_PRINT</A></span> : <b>constant</b> := 346;
-+ <span class="symbol"><A NAME="ref_155_4">KEY_LL</A></span> : <b>constant</b> := 347;
-+ <span class="symbol"><A NAME="ref_156_4">KEY_A1</A></span> : <b>constant</b> := 348;
-+ <span class="symbol"><A NAME="ref_157_4">KEY_A3</A></span> : <b>constant</b> := 349;
-+ <span class="symbol"><A NAME="ref_158_4">KEY_B2</A></span> : <b>constant</b> := 350;
-+ <span class="symbol"><A NAME="ref_159_4">KEY_C1</A></span> : <b>constant</b> := 351;
-+ <span class="symbol"><A NAME="ref_160_4">KEY_C3</A></span> : <b>constant</b> := 352;
-+ <span class="symbol"><A NAME="ref_161_4">KEY_BTAB</A></span> : <b>constant</b> := 353;
-+ <span class="symbol"><A NAME="ref_162_4">KEY_BEG</A></span> : <b>constant</b> := 354;
-+ <span class="symbol"><A NAME="ref_163_4">KEY_CANCEL</A></span> : <b>constant</b> := 355;
-+ <span class="symbol"><A NAME="ref_164_4">KEY_CLOSE</A></span> : <b>constant</b> := 356;
-+ <span class="symbol"><A NAME="ref_165_4">KEY_COMMAND</A></span> : <b>constant</b> := 357;
-+ <span class="symbol"><A NAME="ref_166_4">KEY_COPY</A></span> : <b>constant</b> := 358;
-+ <span class="symbol"><A NAME="ref_167_4">KEY_CREATE</A></span> : <b>constant</b> := 359;
-+ <span class="symbol"><A NAME="ref_168_4">KEY_END</A></span> : <b>constant</b> := 360;
-+ <span class="symbol"><A NAME="ref_169_4">KEY_EXIT</A></span> : <b>constant</b> := 361;
-+ <span class="symbol"><A NAME="ref_170_4">KEY_FIND</A></span> : <b>constant</b> := 362;
-+ <span class="symbol"><A NAME="ref_171_4">KEY_HELP</A></span> : <b>constant</b> := 363;
-+ <span class="symbol"><A NAME="ref_172_4">KEY_MARK</A></span> : <b>constant</b> := 364;
-+ <span class="symbol"><A NAME="ref_173_4">KEY_MESSAGE</A></span> : <b>constant</b> := 365;
-+ <span class="symbol"><A NAME="ref_174_4">KEY_MOVE</A></span> : <b>constant</b> := 366;
-+ <span class="symbol"><A NAME="ref_175_4">KEY_NEXT</A></span> : <b>constant</b> := 367;
-+ <span class="symbol"><A NAME="ref_176_4">KEY_OPEN</A></span> : <b>constant</b> := 368;
-+ <span class="symbol"><A NAME="ref_177_4">KEY_OPTIONS</A></span> : <b>constant</b> := 369;
-+ <span class="symbol"><A NAME="ref_178_4">KEY_PREVIOUS</A></span> : <b>constant</b> := 370;
-+ <span class="symbol"><A NAME="ref_179_4">KEY_REDO</A></span> : <b>constant</b> := 371;
-+ <span class="symbol"><A NAME="ref_180_4">KEY_REFERENCE</A></span> : <b>constant</b> := 372;
-+ <span class="symbol"><A NAME="ref_181_4">KEY_REFRESH</A></span> : <b>constant</b> := 373;
-+ <span class="symbol"><A NAME="ref_182_4">KEY_REPLACE</A></span> : <b>constant</b> := 374;
-+ <span class="symbol"><A NAME="ref_183_4">KEY_RESTART</A></span> : <b>constant</b> := 375;
-+ <span class="symbol"><A NAME="ref_184_4">KEY_RESUME</A></span> : <b>constant</b> := 376;
-+ <span class="symbol"><A NAME="ref_185_4">KEY_SAVE</A></span> : <b>constant</b> := 377;
-+ <span class="symbol"><A NAME="ref_186_4">KEY_SBEG</A></span> : <b>constant</b> := 378;
-+ <span class="symbol"><A NAME="ref_187_4">KEY_SCANCEL</A></span> : <b>constant</b> := 379;
-+ <span class="symbol"><A NAME="ref_188_4">KEY_SCOMMAND</A></span> : <b>constant</b> := 380;
-+ <span class="symbol"><A NAME="ref_189_4">KEY_SCOPY</A></span> : <b>constant</b> := 381;
-+ <span class="symbol"><A NAME="ref_190_4">KEY_SCREATE</A></span> : <b>constant</b> := 382;
-+ <span class="symbol"><A NAME="ref_191_4">KEY_SDC</A></span> : <b>constant</b> := 383;
-+ <span class="symbol"><A NAME="ref_192_4">KEY_SDL</A></span> : <b>constant</b> := 384;
-+ <span class="symbol"><A NAME="ref_193_4">KEY_SELECT</A></span> : <b>constant</b> := 385;
-+ <span class="symbol"><A NAME="ref_194_4">KEY_SEND</A></span> : <b>constant</b> := 386;
-+ <span class="symbol"><A NAME="ref_195_4">KEY_SEOL</A></span> : <b>constant</b> := 387;
-+ <span class="symbol"><A NAME="ref_196_4">KEY_SEXIT</A></span> : <b>constant</b> := 388;
-+ <span class="symbol"><A NAME="ref_197_4">KEY_SFIND</A></span> : <b>constant</b> := 389;
-+ <span class="symbol"><A NAME="ref_198_4">KEY_SHELP</A></span> : <b>constant</b> := 390;
-+ <span class="symbol"><A NAME="ref_199_4">KEY_SHOME</A></span> : <b>constant</b> := 391;
-+ <span class="symbol"><A NAME="ref_200_4">KEY_SIC</A></span> : <b>constant</b> := 392;
-+ <span class="symbol"><A NAME="ref_201_4">KEY_SLEFT</A></span> : <b>constant</b> := 393;
-+ <span class="symbol"><A NAME="ref_202_4">KEY_SMESSAGE</A></span> : <b>constant</b> := 394;
-+ <span class="symbol"><A NAME="ref_203_4">KEY_SMOVE</A></span> : <b>constant</b> := 395;
-+ <span class="symbol"><A NAME="ref_204_4">KEY_SNEXT</A></span> : <b>constant</b> := 396;
-+ <span class="symbol"><A NAME="ref_205_4">KEY_SOPTIONS</A></span> : <b>constant</b> := 397;
-+ <span class="symbol"><A NAME="ref_206_4">KEY_SPREVIOUS</A></span> : <b>constant</b> := 398;
-+ <span class="symbol"><A NAME="ref_207_4">KEY_SPRINT</A></span> : <b>constant</b> := 399;
-+ <span class="symbol"><A NAME="ref_208_4">KEY_SREDO</A></span> : <b>constant</b> := 400;
-+ <span class="symbol"><A NAME="ref_209_4">KEY_SREPLACE</A></span> : <b>constant</b> := 401;
-+ <span class="symbol"><A NAME="ref_210_4">KEY_SRIGHT</A></span> : <b>constant</b> := 402;
-+ <span class="symbol"><A NAME="ref_211_4">KEY_SRSUME</A></span> : <b>constant</b> := 403;
-+ <span class="symbol"><A NAME="ref_212_4">KEY_SSAVE</A></span> : <b>constant</b> := 404;
-+ <span class="symbol"><A NAME="ref_213_4">KEY_SSUSPEND</A></span> : <b>constant</b> := 405;
-+ <span class="symbol"><A NAME="ref_214_4">KEY_SUNDO</A></span> : <b>constant</b> := 406;
-+ <span class="symbol"><A NAME="ref_215_4">KEY_SUSPEND</A></span> : <b>constant</b> := 407;
-+ <span class="symbol"><A NAME="ref_216_4">KEY_UNDO</A></span> : <b>constant</b> := 408;
-+ <span class="symbol"><A NAME="ref_217_4">KEY_MOUSE</A></span> : <b>constant</b> := 409;
-+ <span class="symbol"><A NAME="ref_218_4">KEY_RESIZE</A></span> : <b>constant</b> := 410;
-+
-+ <span class="comment"><EM>-- alternate character codes (ACS) from addch(3NCURSES)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_222_4">ACS_ULCORNER</A></span> : <b>constant</b> := 108;
-+ <span class="symbol"><A NAME="ref_223_4">ACS_LLCORNER</A></span> : <b>constant</b> := 109;
-+ <span class="symbol"><A NAME="ref_224_4">ACS_URCORNER</A></span> : <b>constant</b> := 107;
-+ <span class="symbol"><A NAME="ref_225_4">ACS_LRCORNER</A></span> : <b>constant</b> := 106;
-+ <span class="symbol"><A NAME="ref_226_4">ACS_LTEE</A></span> : <b>constant</b> := 116;
-+ <span class="symbol"><A NAME="ref_227_4">ACS_RTEE</A></span> : <b>constant</b> := 117;
-+ <span class="symbol"><A NAME="ref_228_4">ACS_BTEE</A></span> : <b>constant</b> := 118;
-+ <span class="symbol"><A NAME="ref_229_4">ACS_TTEE</A></span> : <b>constant</b> := 119;
-+ <span class="symbol"><A NAME="ref_230_4">ACS_HLINE</A></span> : <b>constant</b> := 113;
-+ <span class="symbol"><A NAME="ref_231_4">ACS_VLINE</A></span> : <b>constant</b> := 120;
-+ <span class="symbol"><A NAME="ref_232_4">ACS_PLUS</A></span> : <b>constant</b> := 110;
-+ <span class="symbol"><A NAME="ref_233_4">ACS_S1</A></span> : <b>constant</b> := 111;
-+ <span class="symbol"><A NAME="ref_234_4">ACS_S9</A></span> : <b>constant</b> := 115;
-+ <span class="symbol"><A NAME="ref_235_4">ACS_DIAMOND</A></span> : <b>constant</b> := 96;
-+ <span class="symbol"><A NAME="ref_236_4">ACS_CKBOARD</A></span> : <b>constant</b> := 97;
-+ <span class="symbol"><A NAME="ref_237_4">ACS_DEGREE</A></span> : <b>constant</b> := 102;
-+ <span class="symbol"><A NAME="ref_238_4">ACS_PLMINUS</A></span> : <b>constant</b> := 103;
-+ <span class="symbol"><A NAME="ref_239_4">ACS_BULLET</A></span> : <b>constant</b> := 126;
-+ <span class="symbol"><A NAME="ref_240_4">ACS_LARROW</A></span> : <b>constant</b> := 44;
-+ <span class="symbol"><A NAME="ref_241_4">ACS_RARROW</A></span> : <b>constant</b> := 43;
-+ <span class="symbol"><A NAME="ref_242_4">ACS_DARROW</A></span> : <b>constant</b> := 46;
-+ <span class="symbol"><A NAME="ref_243_4">ACS_UARROW</A></span> : <b>constant</b> := 45;
-+ <span class="symbol"><A NAME="ref_244_4">ACS_BOARD</A></span> : <b>constant</b> := 104;
-+ <span class="symbol"><A NAME="ref_245_4">ACS_LANTERN</A></span> : <b>constant</b> := 105;
-+ <span class="symbol"><A NAME="ref_246_4">ACS_BLOCK</A></span> : <b>constant</b> := 48;
-+ <span class="symbol"><A NAME="ref_247_4">ACS_S3</A></span> : <b>constant</b> := 112;
-+ <span class="symbol"><A NAME="ref_248_4">ACS_S7</A></span> : <b>constant</b> := 114;
-+ <span class="symbol"><A NAME="ref_249_4">ACS_LEQUAL</A></span> : <b>constant</b> := 121;
-+ <span class="symbol"><A NAME="ref_250_4">ACS_GEQUAL</A></span> : <b>constant</b> := 122;
-+ <span class="symbol"><A NAME="ref_251_4">ACS_PI</A></span> : <b>constant</b> := 123;
-+ <span class="symbol"><A NAME="ref_252_4">ACS_NEQUAL</A></span> : <b>constant</b> := 124;
-+ <span class="symbol"><A NAME="ref_253_4">ACS_STERLING</A></span> : <b>constant</b> := 125;
-+
-+ <span class="comment"><EM>-- Menu_Options from opts(3MENU)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_257_4">O_ONEVALUE_First</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_258_4">O_ONEVALUE_Last</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_259_4">O_SHOWDESC_First</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_260_4">O_SHOWDESC_Last</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_261_4">O_ROWMAJOR_First</A></span> : <b>constant</b> := 2;
-+ <span class="symbol"><A NAME="ref_262_4">O_ROWMAJOR_Last</A></span> : <b>constant</b> := 2;
-+ <span class="symbol"><A NAME="ref_263_4">O_IGNORECASE_First</A></span> : <b>constant</b> := 3;
-+ <span class="symbol"><A NAME="ref_264_4">O_IGNORECASE_Last</A></span> : <b>constant</b> := 3;
-+ <span class="symbol"><A NAME="ref_265_4">O_SHOWMATCH_First</A></span> : <b>constant</b> := 4;
-+ <span class="symbol"><A NAME="ref_266_4">O_SHOWMATCH_Last</A></span> : <b>constant</b> := 4;
-+ <span class="symbol"><A NAME="ref_267_4">O_NONCYCLIC_First</A></span> : <b>constant</b> := 5;
-+ <span class="symbol"><A NAME="ref_268_4">O_NONCYCLIC_Last</A></span> : <b>constant</b> := 5;
-+ <span class="symbol"><A NAME="ref_269_4">Menu_Options_Size</A></span> : <b>constant</b> := 32;
-+
-+ <span class="comment"><EM>-- Item_Options from menu_opts(3MENU)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_273_4">O_SELECTABLE_First</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_274_4">O_SELECTABLE_Last</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_275_4">Item_Options_Size</A></span> : <b>constant</b> := 32;
-+
-+ <span class="comment"><EM>-- Field_Options from field_opts(3FORM)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_279_4">O_VISIBLE_First</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_280_4">O_VISIBLE_Last</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_281_4">O_ACTIVE_First</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_282_4">O_ACTIVE_Last</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_283_4">O_PUBLIC_First</A></span> : <b>constant</b> := 2;
-+ <span class="symbol"><A NAME="ref_284_4">O_PUBLIC_Last</A></span> : <b>constant</b> := 2;
-+ <span class="symbol"><A NAME="ref_285_4">O_EDIT_First</A></span> : <b>constant</b> := 3;
-+ <span class="symbol"><A NAME="ref_286_4">O_EDIT_Last</A></span> : <b>constant</b> := 3;
-+ <span class="symbol"><A NAME="ref_287_4">O_WRAP_First</A></span> : <b>constant</b> := 4;
-+ <span class="symbol"><A NAME="ref_288_4">O_WRAP_Last</A></span> : <b>constant</b> := 4;
-+ <span class="symbol"><A NAME="ref_289_4">O_BLANK_First</A></span> : <b>constant</b> := 5;
-+ <span class="symbol"><A NAME="ref_290_4">O_BLANK_Last</A></span> : <b>constant</b> := 5;
-+ <span class="symbol"><A NAME="ref_291_4">O_AUTOSKIP_First</A></span> : <b>constant</b> := 6;
-+ <span class="symbol"><A NAME="ref_292_4">O_AUTOSKIP_Last</A></span> : <b>constant</b> := 6;
-+ <span class="symbol"><A NAME="ref_293_4">O_NULLOK_First</A></span> : <b>constant</b> := 7;
-+ <span class="symbol"><A NAME="ref_294_4">O_NULLOK_Last</A></span> : <b>constant</b> := 7;
-+ <span class="symbol"><A NAME="ref_295_4">O_PASSOK_First</A></span> : <b>constant</b> := 8;
-+ <span class="symbol"><A NAME="ref_296_4">O_PASSOK_Last</A></span> : <b>constant</b> := 8;
-+ <span class="symbol"><A NAME="ref_297_4">O_STATIC_First</A></span> : <b>constant</b> := 9;
-+ <span class="symbol"><A NAME="ref_298_4">O_STATIC_Last</A></span> : <b>constant</b> := 9;
-+ <span class="symbol"><A NAME="ref_299_4">Field_Options_Size</A></span> : <b>constant</b> := 32;
-+
-+ <span class="comment"><EM>-- Field_Options from opts(3FORM)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_303_4">O_NL_OVERLOAD_First</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_304_4">O_NL_OVERLOAD_Last</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_305_4">O_BS_OVERLOAD_First</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_306_4">O_BS_OVERLOAD_Last</A></span> : <b>constant</b> := 1;
-+
-+ <span class="comment"><EM>-- MEVENT structure from mouse(3NCURSES)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_310_4">MEVENT_id_First</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_311_4">MEVENT_id_Last</A></span> : <b>constant</b> := 15;
-+ <span class="symbol"><A NAME="ref_312_4">MEVENT_x_First</A></span> : <b>constant</b> := 32;
-+ <span class="symbol"><A NAME="ref_313_4">MEVENT_x_Last</A></span> : <b>constant</b> := 63;
-+ <span class="symbol"><A NAME="ref_314_4">MEVENT_y_First</A></span> : <b>constant</b> := 64;
-+ <span class="symbol"><A NAME="ref_315_4">MEVENT_y_Last</A></span> : <b>constant</b> := 95;
-+ <span class="symbol"><A NAME="ref_316_4">MEVENT_z_First</A></span> : <b>constant</b> := 96;
-+ <span class="symbol"><A NAME="ref_317_4">MEVENT_z_Last</A></span> : <b>constant</b> := 127;
-+ <span class="symbol"><A NAME="ref_318_4">MEVENT_bstate_First</A></span> : <b>constant</b> := 128;
-+ <span class="symbol"><A NAME="ref_319_4">MEVENT_bstate_Last</A></span> : <b>constant</b> := 191;
-+ <span class="symbol"><A NAME="ref_320_4">MEVENT_Size</A></span> : <b>constant</b> := 192;
-+
-+ <span class="comment"><EM>-- mouse events from mouse(3NCURSES)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_324_4">BUTTON1_RELEASED</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_325_4">BUTTON1_PRESSED</A></span> : <b>constant</b> := 2;
-+ <span class="symbol"><A NAME="ref_326_4">BUTTON1_CLICKED</A></span> : <b>constant</b> := 4;
-+ <span class="symbol"><A NAME="ref_327_4">BUTTON1_DOUBLE_CLICKED</A></span> : <b>constant</b> := 8;
-+ <span class="symbol"><A NAME="ref_328_4">BUTTON1_TRIPLE_CLICKED</A></span> : <b>constant</b> := 16;
-+ <span class="symbol"><A NAME="ref_329_4">BUTTON1_RESERVED_EVENT</A></span> : <b>constant</b> := 32;
-+ <span class="symbol"><A NAME="ref_330_4">all_events_button_1</A></span> : <b>constant</b> := 63;
-+ <span class="symbol"><A NAME="ref_331_4">BUTTON2_RELEASED</A></span> : <b>constant</b> := 64;
-+ <span class="symbol"><A NAME="ref_332_4">BUTTON2_PRESSED</A></span> : <b>constant</b> := 128;
-+ <span class="symbol"><A NAME="ref_333_4">BUTTON2_CLICKED</A></span> : <b>constant</b> := 256;
-+ <span class="symbol"><A NAME="ref_334_4">BUTTON2_DOUBLE_CLICKED</A></span> : <b>constant</b> := 512;
-+ <span class="symbol"><A NAME="ref_335_4">BUTTON2_TRIPLE_CLICKED</A></span> : <b>constant</b> := 1024;
-+ <span class="symbol"><A NAME="ref_336_4">BUTTON2_RESERVED_EVENT</A></span> : <b>constant</b> := 2048;
-+ <span class="symbol"><A NAME="ref_337_4">all_events_button_2</A></span> : <b>constant</b> := 4032;
-+ <span class="symbol"><A NAME="ref_338_4">BUTTON3_RELEASED</A></span> : <b>constant</b> := 4096;
-+ <span class="symbol"><A NAME="ref_339_4">BUTTON3_PRESSED</A></span> : <b>constant</b> := 8192;
-+ <span class="symbol"><A NAME="ref_340_4">BUTTON3_CLICKED</A></span> : <b>constant</b> := 16384;
-+ <span class="symbol"><A NAME="ref_341_4">BUTTON3_DOUBLE_CLICKED</A></span> : <b>constant</b> := 32768;
-+ <span class="symbol"><A NAME="ref_342_4">BUTTON3_TRIPLE_CLICKED</A></span> : <b>constant</b> := 65536;
-+ <span class="symbol"><A NAME="ref_343_4">BUTTON3_RESERVED_EVENT</A></span> : <b>constant</b> := 131072;
-+ <span class="symbol"><A NAME="ref_344_4">all_events_button_3</A></span> : <b>constant</b> := 258048;
-+ <span class="symbol"><A NAME="ref_345_4">BUTTON4_RELEASED</A></span> : <b>constant</b> := 262144;
-+ <span class="symbol"><A NAME="ref_346_4">BUTTON4_PRESSED</A></span> : <b>constant</b> := 524288;
-+ <span class="symbol"><A NAME="ref_347_4">BUTTON4_CLICKED</A></span> : <b>constant</b> := 1048576;
-+ <span class="symbol"><A NAME="ref_348_4">BUTTON4_DOUBLE_CLICKED</A></span> : <b>constant</b> := 2097152;
-+ <span class="symbol"><A NAME="ref_349_4">BUTTON4_TRIPLE_CLICKED</A></span> : <b>constant</b> := 4194304;
-+ <span class="symbol"><A NAME="ref_350_4">BUTTON4_RESERVED_EVENT</A></span> : <b>constant</b> := 8388608;
-+ <span class="symbol"><A NAME="ref_351_4">all_events_button_4</A></span> : <b>constant</b> := 16515072;
-+ <span class="symbol"><A NAME="ref_352_4">BUTTON_CTRL</A></span> : <b>constant</b> := 16777216;
-+ <span class="symbol"><A NAME="ref_353_4">BUTTON_SHIFT</A></span> : <b>constant</b> := 33554432;
-+ <span class="symbol"><A NAME="ref_354_4">BUTTON_ALT</A></span> : <b>constant</b> := 67108864;
-+ <span class="symbol"><A NAME="ref_355_4">REPORT_MOUSE_POSITION</A></span> : <b>constant</b> := 134217728;
-+ <span class="symbol"><A NAME="ref_356_4">ALL_MOUSE_EVENTS</A></span> : <b>constant</b> := 134217727;
-+
-+ <span class="comment"><EM>-- trace selection from trace(3NCURSES)</EM></span>
-+
-+ <span class="symbol"><A NAME="ref_360_4">TRACE_TIMES_First</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_361_4">TRACE_TIMES_Last</A></span> : <b>constant</b> := 0;
-+ <span class="symbol"><A NAME="ref_362_4">TRACE_TPUTS_First</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_363_4">TRACE_TPUTS_Last</A></span> : <b>constant</b> := 1;
-+ <span class="symbol"><A NAME="ref_364_4">TRACE_UPDATE_First</A></span> : <b>constant</b> := 2;
-+ <span class="symbol"><A NAME="ref_365_4">TRACE_UPDATE_Last</A></span> : <b>constant</b> := 2;
-+ <span class="symbol"><A NAME="ref_366_4">TRACE_MOVE_First</A></span> : <b>constant</b> := 3;
-+ <span class="symbol"><A NAME="ref_367_4">TRACE_MOVE_Last</A></span> : <b>constant</b> := 3;
-+ <span class="symbol"><A NAME="ref_368_4">TRACE_CHARPUT_First</A></span> : <b>constant</b> := 4;
-+ <span class="symbol"><A NAME="ref_369_4">TRACE_CHARPUT_Last</A></span> : <b>constant</b> := 4;
-+ <span class="symbol"><A NAME="ref_370_4">TRACE_CALLS_First</A></span> : <b>constant</b> := 5;
-+ <span class="symbol"><A NAME="ref_371_4">TRACE_CALLS_Last</A></span> : <b>constant</b> := 5;
-+ <span class="symbol"><A NAME="ref_372_4">TRACE_VIRTPUT_First</A></span> : <b>constant</b> := 6;
-+ <span class="symbol"><A NAME="ref_373_4">TRACE_VIRTPUT_Last</A></span> : <b>constant</b> := 6;
-+ <span class="symbol"><A NAME="ref_374_4">TRACE_IEVENT_First</A></span> : <b>constant</b> := 7;
-+ <span class="symbol"><A NAME="ref_375_4">TRACE_IEVENT_Last</A></span> : <b>constant</b> := 7;
-+ <span class="symbol"><A NAME="ref_376_4">TRACE_BITS_First</A></span> : <b>constant</b> := 8;
-+ <span class="symbol"><A NAME="ref_377_4">TRACE_BITS_Last</A></span> : <b>constant</b> := 8;
-+ <span class="symbol"><A NAME="ref_378_4">TRACE_ICALLS_First</A></span> : <b>constant</b> := 9;
-+ <span class="symbol"><A NAME="ref_379_4">TRACE_ICALLS_Last</A></span> : <b>constant</b> := 9;
-+ <span class="symbol"><A NAME="ref_380_4">TRACE_CCALLS_First</A></span> : <b>constant</b> := 10;
-+ <span class="symbol"><A NAME="ref_381_4">TRACE_CCALLS_Last</A></span> : <b>constant</b> := 10;
-+ <span class="symbol"><A NAME="ref_382_4">TRACE_DATABASE_First</A></span> : <b>constant</b> := 11;
-+ <span class="symbol"><A NAME="ref_383_4">TRACE_DATABASE_Last</A></span> : <b>constant</b> := 11;
-+ <span class="symbol"><A NAME="ref_384_4">TRACE_ATTRS_First</A></span> : <b>constant</b> := 12;
-+ <span class="symbol"><A NAME="ref_385_4">TRACE_ATTRS_Last</A></span> : <b>constant</b> := 12;
-+ <span class="symbol"><A NAME="ref_386_4">Trace_Size</A></span> : <b>constant</b> := 32;
-+<b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>;
-+</PRE></BODY></HTML>
-Index: doc/html/ada/terminal_interface__ads.htm
---- ncurses-5.9/doc/html/ada/terminal_interface__ads.htm 2006-09-23 20:31:33.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ada/terminal_interface__ads.htm 2013-05-18 21:41:07.000000000 +0000
-@@ -1,53 +1,65 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
--<HTML><HEAD><TITLE>terminal_interface.ads</TITLE></HEAD>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+<HTML>
-+<HEAD>
-+<TITLE>terminal_interface.ads</TITLE>
-+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-+<style type="text/css">
-+*.comment {
-+ color: green;
-+}
-+*.symbol {
-+ color: red;
-+}
-+</style>
-+</HEAD>
- <BODY>
--<HR><DIV ALIGN="center"><H1> File : terminal_interface.ads </H1></DIV><HR>
-+<HR><DIV style="text-align:center"><H1> File : terminal_interface.ads </H1></DIV><HR>
- <PRE>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Terminal_Interface --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- S P E C --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Copyright (c) 1998,2006 Free Software Foundation, Inc. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></FONT>
--<FONT COLOR=green><EM>-- copy of this software and associated documentation files (the --</EM></FONT>
--<FONT COLOR=green><EM>-- "Software"), to deal in the Software without restriction, including --</EM></FONT>
--<FONT COLOR=green><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></FONT>
--<FONT COLOR=green><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></FONT>
--<FONT COLOR=green><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></FONT>
--<FONT COLOR=green><EM>-- furnished to do so, subject to the following conditions: --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- The above copyright notice and this permission notice shall be included --</EM></FONT>
--<FONT COLOR=green><EM>-- in all copies or substantial portions of the Software. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></FONT>
--<FONT COLOR=green><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></FONT>
--<FONT COLOR=green><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></FONT>
--<FONT COLOR=green><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></FONT>
--<FONT COLOR=green><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></FONT>
--<FONT COLOR=green><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></FONT>
--<FONT COLOR=green><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></FONT>
--<FONT COLOR=green><EM>-- --</EM></FONT>
--<FONT COLOR=green><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></FONT>
--<FONT COLOR=green><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></FONT>
--<FONT COLOR=green><EM>-- sale, use or other dealings in this Software without prior written --</EM></FONT>
--<FONT COLOR=green><EM>-- authorization. --</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<FONT COLOR=green><EM>-- Author: Juergen Pfeifer, 1996</EM></FONT>
--<FONT COLOR=green><EM>-- Version Control:</EM></FONT>
--<FONT COLOR=green><EM>-- @Revision: 1.14 @</EM></FONT>
--<FONT COLOR=green><EM>-- @Date: 2006/06/25 14:30:22 @</EM></FONT>
--<FONT COLOR=green><EM>-- Binding Version 01.00</EM></FONT>
--<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT>
--<b>package</b> <FONT COLOR=red><A NAME="ref_42_9">Terminal_Interface</A></FONT> <b>is</b>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Terminal_Interface --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- S P E C --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<span class="comment"><EM>-- Copyright (c) 1998,2006 Free Software Foundation, Inc. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
-+<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
-+<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
-+<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
-+<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
-+<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
-+<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
-+<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
-+<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
-+<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
-+<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
-+<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
-+<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
-+<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
-+<span class="comment"><EM>-- --</EM></span>
-+<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
-+<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
-+<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
-+<span class="comment"><EM>-- authorization. --</EM></span>
-+<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.14 @</EM></span>
-+<span class="comment"><EM>-- @Date: 2006/06/25 14:30:22 @</EM></span>
-+<span class="comment"><EM>-- Binding Version 01.00</EM></span>
-+<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
-+<b>package</b> <span class="symbol"><A NAME="ref_42_9">Terminal_Interface</A></span> <b>is</b>
- <b>pragma</b> Pure (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>);
--<FONT COLOR=green><EM>--</EM></FONT>
--<FONT COLOR=green><EM>-- Everything is in the child units</EM></FONT>
--<FONT COLOR=green><EM>--</EM></FONT>
-+<span class="comment"><EM>--</EM></span>
-+<span class="comment"><EM>-- Everything is in the child units</EM></span>
-+<span class="comment"><EM>--</EM></span>
- <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>;
- </PRE></BODY></HTML>
-Index: doc/html/announce.html
-Prereq: 1.55
---- ncurses-5.9/doc/html/announce.html 2011-04-04 09:46:33.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/announce.html 2013-05-17 23:34:26.000000000 +0000
-@@ -1,6 +1,6 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
-- $Id: announce.html,v 1.55 2011/04/04 09:46:33 tom Exp $
-+ $Id: announce.html,v 1.56 2013/05/17 23:34:26 tom Exp $
- ****************************************************************************
- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
- * *
-Index: doc/html/hackguide.html
-Prereq: 1.28
---- ncurses-5.9/doc/html/hackguide.html 2010-12-04 16:44:21.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/hackguide.html 2013-05-17 23:29:18.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
-- $Id: hackguide.html,v 1.28 2010/12/04 16:44:21 tom Exp $
-+ $Id: hackguide.html,v 1.29 2013/05/17 23:29:18 tom Exp $
- ****************************************************************************
-- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-Index: doc/html/index.html
-Prereq: 1.5
---- ncurses-5.9/doc/html/index.html 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/index.html 2013-05-17 23:30:29.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
-- $Id: index.html,v 1.5 2010/12/04 18:36:44 tom Exp $
-+ $Id: index.html,v 1.6 2013/05/17 23:30:29 tom Exp $
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 *
-Index: doc/html/man/adacurses-config.1.html
---- ncurses-5.9/doc/html/man/adacurses-config.1.html 2011-04-04 22:46:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/adacurses-config.1.html 2014-08-16 20:43:07.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2010-2011,2014 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: MKada_config.in,v 1.5 2011/03/26 14:44:51 tom Exp @
-+ * @Id: MKada_config.in,v 1.8 2014/06/07 19:32:52 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -78,12 +78,66 @@
- <STRONG>--help</STRONG> prints a list of the <STRONG>adacurses-config</STRONG> script's
- options.
-
-+ If no options are given, <STRONG>adacurses-config</STRONG> prints the com-
-+ bination of <STRONG>--cflags</STRONG> and <STRONG>--libs</STRONG> that <STRONG>gnatmake</STRONG> expects (see
-+ example).
-+
-+
-+</PRE>
-+<H2>EXAMPLE</H2><PRE>
-+ For example, supposing that you want to compile the "Hello
-+ World!" program for AdaCurses. Make a file named
-+ "hello.adb":
-+ with Terminal_Interface.Curses; use Terminal_Interface.Curses;
-+
-+ procedure Hello is
-+
-+ Visibility : Cursor_Visibility := Invisible;
-+ done : Boolean := False;
-+ c : Key_Code;
-+
-+ begin
-+
-+ Init_Screen;
-+ Set_Echo_Mode (False);
-+
-+ Set_Cursor_Visibility (Visibility);
-+ Set_Timeout_Mode (Standard_Window, Non_Blocking, 0);
-+
-+ Move_Cursor (Line =&gt; Lines / 2, Column =&gt; (Columns - 12) / 2);
-+ Add (Str =&gt; "Hello World!");
-+
-+ while not done loop
-+
-+ c := Get_Keystroke (Standard_Window);
-+ case c is
-+ when Character'Pos ('q') =&gt; done := True;
-+ when others =&gt; null;
-+ end case;
-+
-+ Nap_Milli_Seconds (50);
-+
-+ end loop;
-+
-+ End_Windows;
-+
-+ end Hello;
-+
-+ Then, using
-+ gnatmake `adacurses-config --cflags` hello -largs
-+ `adacurses-config --libs`
-+
-+ or (simpler):
-+ gnatmake hello `adacurses-config`
-+
-+ you will compile and link the program.
-+
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
-
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
-
-Index: doc/html/man/captoinfo.1m.html
---- ncurses-5.9/doc/html/man/captoinfo.1m.html 2011-04-04 22:46:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/captoinfo.1m.html 2014-08-16 20:43:07.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-@@ -87,8 +87,8 @@
-
- </PRE>
- <H2>FILES</H2><PRE>
-- /usr/share/terminfo Compiled terminal description
-- database.
-+ /usr/share/terminfo Compiled terminal description data-
-+ base.
-
-
- </PRE>
-@@ -101,7 +101,6 @@
- has not mistakenly translated a completely unknown and
- random capability and/or syntax error.
-
--
- Nonstd Std From Terminfo
- name name capability
- -----------------------------------------------
-@@ -116,8 +115,8 @@
- EN @7 XENIX key_end
- GE ae XENIX exit_alt_charset_mode
- GS as XENIX enter_alt_charset_mode
--
- HM kh XENIX key_home
-+
- LD kL XENIX key_dl
- PD kN XENIX key_npage
- PN po XENIX prtr_off
-@@ -139,7 +138,6 @@
- bilities for forms drawing, designed to take advantage of
- the IBM PC high-half graphics. They were as follows:
-
--
- Cap Graphic
- -----------------------------
- G2 upper left
-@@ -182,7 +180,6 @@
- font0 s0ds
- font1 s1ds
- font2 s2ds
--
- font3 s3ds
-
- Additionally, the AIX <EM>box1</EM> capability will be automati-
-@@ -208,7 +205,7 @@
- <H2>SEE ALSO</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 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
- </PRE>
-Index: doc/html/man/clear.1.html
---- ncurses-5.9/doc/html/man/clear.1.html 2011-04-04 22:46:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/clear.1.html 2014-08-16 20:43:07.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: clear.1,v 1.8 2010/12/04 18:36:44 tom Exp @
-+ * @Id: clear.1,v 1.10 2013/06/22 22:22:11 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -57,9 +57,11 @@
-
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
-- <STRONG>clear</STRONG> clears your screen if this is possible. It looks in
-- the environment for the terminal type and then in the <STRONG>ter-</STRONG>
-- <STRONG>minfo</STRONG> database to figure out how to clear the screen.
-+ <STRONG>clear</STRONG> clears your screen if this is possible, including
-+ its scrollback buffer (if the extended "E3" capability is
-+ defined). <STRONG>clear</STRONG> looks in the environment for the terminal
-+ type and then in the <STRONG>terminfo</STRONG> database to determine how to
-+ clear the screen.
-
- <STRONG>clear</STRONG> ignores any command-line parameters that may be
- present.
-@@ -69,7 +71,7 @@
- <H2>SEE ALSO</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 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
-
-Index: doc/html/man/curs_add_wch.3x.html
---- ncurses-5.9/doc/html/man/curs_add_wch.3x.html 2011-02-25 23:24:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_add_wch.3x.html 2013-12-21 21:59:35.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2001-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2001-2011,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_add_wch.3x,v 1.14 2011/01/15 15:27:43 tom Exp @
-+ * @Id: curs_add_wch.3x,v 1.15 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -77,17 +77,17 @@
- ous 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 cursor then
-- advances to the next spacing character on the screen.
-+ 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 specified by <EM>wch</EM>
-+ characters at that location are preserved. The non-
-+ spacing characters of <EM>wch</EM> 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 <STRONG>addch</STRONG> were called.
-+ <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 <STRONG>addch</STRONG> were called.
-
- The <STRONG>echo_wchar</STRONG> function is functionally equivalent to a
- call to <STRONG>add_wch</STRONG> followed by a call to <STRONG>refresh</STRONG>. Similarly,
-@@ -99,11 +99,10 @@
- functions instead of their equivalents.
-
- <STRONG>Line</STRONG> <STRONG>Graphics</STRONG>
-- Like <STRONG><A HREF="addch.3x.html">addch(3x)</A></STRONG>, <STRONG>addch_wch</STRONG> accepts symbols which make it
-+ Like <STRONG><A HREF="curs_addch.3x.html">curs_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 correspond to the same VT100
-- line-drawing set as <STRONG><A HREF="addch.3x.html">addch(3x)</A></STRONG>.
--
-+ line-drawing set as <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>.
-
- <EM>Name</EM> <EM>Unicode</EM> <EM>Default</EM> <EM>Description</EM>
- ----------------------------------------------------------------
-@@ -111,8 +110,8 @@
- WACS_BOARD 0x2592 # board of squares
- WACS_BTEE 0x2534 + bottom tee
- WACS_BULLET 0x00b7 o bullet
--
- WACS_CKBOARD 0x2592 : checker board (stipple)
-+
- WACS_DARROW 0x2193 v arrow pointing down
- WACS_DEGREE 0x00b0 ' degree symbol
- WACS_DIAMOND 0x25c6 + diamond
-@@ -144,7 +143,6 @@
- The wide-character configuration of ncurses also defines
- symbols for thick- and double-lines:
-
--
- <EM>Name</EM> <EM>Unicode</EM> <EM>Default</EM> <EM>Description</EM>
- ---------------------------------------------------------------------
- WACS_T_ULCORNER 0x250f + thick upper left corner
-@@ -172,7 +170,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on
- success.
-
-@@ -217,7 +215,7 @@
- </PRE>
- <H2>SEE ALSO</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><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="putwc.3.html">putwc(3)</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>
-
-
-
-Index: doc/html/man/curs_add_wchstr.3x.html
---- ncurses-5.9/doc/html/man/curs_add_wchstr.3x.html 2011-01-09 01:03:05.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_add_wchstr.3x.html 2013-05-17 22:24:17.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_add_wchstr.3x,v 1.9 2010/12/04 18:36:44 tom Exp @
-+ * @Id: curs_add_wchstr.3x,v 1.10 2012/11/03 22:54:43 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -47,7 +47,7 @@
-
- </PRE>
- <H2>NAME</H2><PRE>
-- <STRONG>add_wchstr</STRONG>, <STRONG>add_wchnstr</STRONG>, <STRONG>wadd_wchstr</STRONG>, <STRONG>wadd_wchnstr</STRONG>,
-+ <STRONG>add_wchstr</STRONG>, <STRONG>add_wchnstr</STRONG>, <STRONG>wadd_wchstr</STRONG>, <STRONG>wadd_wchnstr</STRONG>,
- <STRONG>mvadd_wchstr</STRONG>, <STRONG>mvadd_wchnstr</STRONG>, <STRONG>mvwadd_wchstr</STRONG>, <STRONG>mvwadd_wchnstr</STRONG>
- - add an array of complex characters (and attributes) to a
- curses window
-@@ -69,39 +69,42 @@
-
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
-- These routines copy the array of complex characters <EM>wchstr</EM>
-- into the window image structure at and after the current
-- cursor position. The four routines with <EM>n</EM> as the last
-- argument copy at most <EM>n</EM> elements, but no more than will
-- fit on the line. If <STRONG>n</STRONG>=<STRONG>-1</STRONG> then the whole array is copied,
-- to the maximum number of characters that will fit on the
-- line.
--
-- The window cursor is <EM>not</EM> advanced. These routines work
-- faster than <STRONG>waddnstr</STRONG>. On the other hand, they do not per-
-- form checking (such as for the newline, backspace, or car-
-- riage return characters), they do not advance the current
-- cursor position, they do not expand other control charac-
-- ters to ^-escapes, and they truncate the string if it
-- crosses the right margin, rather than wrapping it around
-- to the new line.
--
-- These routines end successfully on encountering a null
-- <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>, or when they have filled the current line. If a
-- complex character cannot completely fit at the end of the
-- current line, the remaining columns are filled with the
-+ These functions copy the (null-terminated) array of com-
-+ plex characters <EM>wchstr</EM> into the window image structure
-+ starting at the current cursor position. The four func-
-+ tions with <EM>n</EM> as the last argument copy at most <EM>n</EM> elements,
-+ but no more than will fit on the line. If <STRONG>n</STRONG>=<STRONG>-1</STRONG> then the
-+ whole array is copied, to the maximum number of characters
-+ that will fit on the line.
-+
-+ The window cursor is <EM>not</EM> advanced. These functions work
-+ faster than <STRONG>waddnstr</STRONG>. On the other hand:
-+
-+ <STRONG>o</STRONG> they do not perform checking (such as for the newline,
-+ backspace, or carriage return characters),
-+
-+ <STRONG>o</STRONG> they do not advance the current cursor position,
-+
-+ <STRONG>o</STRONG> they do not expand other control characters to ^-es-
-+ capes, and
-+
-+ <STRONG>o</STRONG> they truncate the string if it crosses the right mar-
-+ gin, rather than wrapping it around to the new line.
-+
-+ These functions end successfully on encountering a null
-+ <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>, or when they have filled the current line. If a
-+ complex character cannot completely fit at the end of the
-+ current line, the remaining columns are filled with the
- background character and rendition.
-
-
- </PRE>
--<H2>NOTES</H2><PRE>
-- All functions except <STRONG>wadd_wchnstr</STRONG> may be macros.
-+<H2>RETURN VALUE</H2><PRE>
-+ All functions return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
-+ on success.
-
--
--</PRE>
--<H2>RETURN VALUES</H2><PRE>
-- All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on
-- success.
-+ X/Open does not define any error conditions. This imple-
-+ mentation returns an error if the window pointer is null.
-
- Functions with a "mv" prefix first perform a cursor move-
- ment using <STRONG>wmove</STRONG>, and return an error if the position is
-@@ -109,14 +112,22 @@
-
-
- </PRE>
-+<H2>NOTES</H2><PRE>
-+ All functions except <STRONG>wadd_wchnstr</STRONG> may be macros.
-+
-+
-+</PRE>
- <H2>PORTABILITY</H2><PRE>
-- All these entry points are described in the XSI Curses
-- standard, Issue 4.
-+ These entry points are described in the XSI Curses stan-
-+ dard, Issue 4.
-
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>, <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
-+ <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
-+
-+ Comparable functions in the narrow-character (ncurses) li-
-+ brary are described in <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>.
-
-
-
-Index: doc/html/man/curs_addch.3x.html
---- ncurses-5.9/doc/html/man/curs_addch.3x.html 2011-02-25 23:24:50.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_addch.3x.html 2014-05-24 22:05:34.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2014 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_addch.3x,v 1.32 2011/01/15 14:15:10 tom Exp @
-+ * @Id: curs_addch.3x,v 1.33 2014/05/24 19:47:41 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -70,20 +70,34 @@
- The <STRONG>addch</STRONG>, <STRONG>waddch</STRONG>, <STRONG>mvaddch</STRONG> and <STRONG>mvwaddch</STRONG> routines put the
- character <EM>ch</EM> into the given window at its current window
- position, which is then advanced. They are analogous to
-- <STRONG>putchar</STRONG> in <STRONG><A HREF="stdio.3.html">stdio(3)</A></STRONG>. If the advance is at the right mar-
-- gin, the cursor automatically wraps to the beginning of
-- the next line. At the bottom of the current scrolling
-- region, if <STRONG>scrollok</STRONG> is enabled, the scrolling region is
-- scrolled up one line.
-+ <STRONG>putchar</STRONG> in <STRONG>stdio(3)</STRONG>. If the advance is at the right mar-
-+ gin:
-+
-+ <STRONG>o</STRONG> The cursor automatically wraps to the beginning of the
-+ next line.
-+
-+ <STRONG>o</STRONG> At the bottom of the current scrolling region, and if
-+ <STRONG>scrollok</STRONG> is enabled, the scrolling region is scrolled
-+ up one line.
-+
-+ <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
-
- If <EM>ch</EM> is a tab, newline, or backspace, the cursor is moved
-- appropriately within the window. Backspace moves the cur-
-- sor one character left; at the left edge of a window it
-- does nothing. Newline does a <STRONG>clrtoeol</STRONG>, then moves the
-- cursor to the window left margin on the next line,
-- scrolling the window if on the last line. Tabs are con-
-- sidered to be at every eighth column. The tab interval
-- may be altered by setting the <STRONG>TABSIZE</STRONG> variable.
-+ appropriately within the window:
-+
-+ <STRONG>o</STRONG> Backspace moves the cursor one character left; at the
-+ left edge of a window it does nothing.
-+
-+ <STRONG>o</STRONG> Newline does a <STRONG>clrtoeol</STRONG>, then moves the cursor to the
-+ window left margin on the next line, scrolling the
-+ window if on the last line.
-+
-+ <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 control character other than tab, newline, or
- backspace, it is drawn in <STRONG>^</STRONG><EM>X</EM> notation. Calling <STRONG>winch</STRONG>
-@@ -112,9 +126,8 @@
- characters to the screen with routines of the <STRONG>addch</STRONG> fam-
- ily. The default character listed below is used if the
- <STRONG>acsc</STRONG> capability does not define a terminal-specific
-- replacement for it. The names are taken from VT100
-- nomenclature.
--
-+ replacement for it. The names are taken from VT100 nomen-
-+ clature.
-
- <EM>Name</EM> <EM>Default</EM> <EM>Description</EM>
- --------------------------------------------------
-@@ -202,7 +215,7 @@
- <H2>SEE ALSO</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><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><A HREF="putc.3.html">putc(3)</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>.
-Index: doc/html/man/curs_addchstr.3x.html
---- ncurses-5.9/doc/html/man/curs_addchstr.3x.html 2011-01-09 01:03:04.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_addchstr.3x.html 2013-05-17 22:24:17.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_addchstr.3x,v 1.15 2010/12/04 18:36:44 tom Exp @
-+ * @Id: curs_addchstr.3x,v 1.16 2012/11/03 22:54:43 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -62,62 +62,63 @@
- <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>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>
-
-
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
-- These routines copy <EM>chstr</EM> into the window image structure
-- at and after the current cursor position. The four rou-
-- tines with <EM>n</EM> as the last argument copy at most <EM>n</EM> elements,
-- but no more than will fit on the line. If <STRONG>n</STRONG>=<STRONG>-1</STRONG> then the
-- whole string is copied, to the maximum number of charac-
-- ters that will fit on the line.
--
-- The window cursor is <EM>not</EM> advanced, and these routines work
-- faster than <STRONG>waddnstr</STRONG>. On the other hand, they do not per-
-- form any kind of checking (such as for the newline,
-- backspace, or carriage return characters), they do not ad-
-- vance the current cursor position, they do not expand oth-
-- er control characters to ^-escapes, and they truncate the
-- string if it crosses the right margin, rather than wrap-
-- ping it around to the new line.
-+ These functions copy the (null-terminated) <EM>chstr</EM> array in-
-+ to the window image structure starting at the current cur-
-+ sor position. The four functions with <EM>n</EM> as the last argu-
-+ ment copy at most <EM>n</EM> elements, but no more than will fit on
-+ the line. If <STRONG>n</STRONG>=<STRONG>-1</STRONG> then the whole array is copied, to the
-+ maximum number of characters that will fit on the line.
-+
-+ The window cursor is <EM>not</EM> advanced. These functions work
-+ faster than <STRONG>waddnstr</STRONG>. On the other hand:
-+
-+ <STRONG>o</STRONG> they do not perform checking (such as for the newline,
-+ backspace, or carriage return characters),
-+
-+ <STRONG>o</STRONG> they do not advance the current cursor position,
-+
-+ <STRONG>o</STRONG> they do not expand other control characters to ^-es-
-+ capes, and
-+
-+ <STRONG>o</STRONG> they truncate the string if it crosses the right mar-
-+ gin, rather than wrapping it around to the new line.
-
-
- </PRE>
--<H2>RETURN VALUES</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 successful completion, unless other-
-- wise noted in the preceding routine descriptions.
-+<H2>RETURN VALUE</H2><PRE>
-+ All functions return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
-+ on success.
-
-- X/Open does not define any error conditions. This imple-
-+ X/Open does not define any error conditions. This imple-
- mentation returns an error if the window pointer is null.
-
-- Functions with a "mv" prefix first perform a cursor move-
-- ment using <STRONG>wmove</STRONG>, and return an error if the position is
-+ Functions with a "mv" prefix first perform a cursor move-
-+ ment using <STRONG>wmove</STRONG>, and return an error if the position is
- outside the window, or if the window pointer is null.
-
-
- </PRE>
- <H2>NOTES</H2><PRE>
-- Note that all routines except <STRONG>waddchnstr</STRONG> may be macros.
-+ All functions except <STRONG>waddchnstr</STRONG> may be macros.
-
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- These entry points are described in the XSI Curses stan-
-+ These entry points are described in the XSI Curses stan-
- dard, Issue 4.
-
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
-+ <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>.
-
-- Comparable functions in the wide-character (ncursesw) li-
-+ Comparable functions in the wide-character (ncursesw) li-
- brary are described in <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>.
-
-
-Index: doc/html/man/curs_addstr.3x.html
---- ncurses-5.9/doc/html/man/curs_addstr.3x.html 2011-01-09 01:03:05.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_addstr.3x.html 2013-05-17 22:24:17.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_addstr.3x,v 1.16 2010/12/04 18:36:44 tom Exp @
-+ * @Id: curs_addstr.3x,v 1.17 2012/11/03 22:57:31 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -68,26 +68,32 @@
-
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
-- These routines write the characters of the (null-terminat-
-- ed) character string <EM>str</EM> on the given window. It is simi-
-- lar to calling <STRONG>waddch</STRONG> once for each character in the
-- string. The four routines with <EM>n</EM> as the last argument
-- write at most <EM>n</EM> characters. If <EM>n</EM> is -1, then the entire
-- string will be added, up to the maximum number of charac-
-- ters that will fit on the line, or until a terminating
-- null is reached.
-+ 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.
-+
-+ The <EM>mv</EM> functions perform cursor movement once, before
-+ writing any characters. Thereafter, the cursor is ad-
-+ vanced 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> characters, or until a terminating null is reached.
-+ If <EM>n</EM> is -1, then the entire string will be added.
-
-
- </PRE>
- <H2>RETURN VALUE</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 successful completion.
-+ All functions return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
-+ on success.
-
- X/Open does not define any error conditions. This imple-
-- mentation returns an error if the window pointer is null
-- or if the string pointer is null or if the corresponding
-- calls to <STRONG>waddch</STRONG> return an error.
-+ mentation returns an error
-+
-+ <STRONG>o</STRONG> if the window pointer is null or
-+
-+ <STRONG>o</STRONG> if the string pointer is null or
-+
-+ <STRONG>o</STRONG> if the corresponding calls to <STRONG>waddch</STRONG> return an error.
-
- Functions with a "mv" prefix first perform a cursor move-
- ment using <STRONG>wmove</STRONG>, and return an error if the position is
-@@ -96,16 +102,13 @@
-
- </PRE>
- <H2>NOTES</H2><PRE>
-- Note that all of these routines except <STRONG>waddstr</STRONG> and
-- <STRONG>waddnstr</STRONG> may be macros.
-+ All of these functions except <STRONG>waddnstr</STRONG> may be macros.
-
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- All these entry points are described in the XSI Curses
-- standard, Issue 4. The XSI errors EILSEQ and EOVERFLOW,
-- associated with extended-level conformance, are not yet
-- detected.
-+ These functions are described in the XSI Curses standard,
-+ Issue 4.
-
-
- </PRE>
-Index: doc/html/man/curs_addwstr.3x.html
---- ncurses-5.9/doc/html/man/curs_addwstr.3x.html 2011-01-09 01:03:05.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_addwstr.3x.html 2013-05-17 22:24:17.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_addwstr.3x,v 1.10 2010/12/04 18:36:44 tom Exp @
-+ * @Id: curs_addwstr.3x,v 1.11 2012/11/03 22:57:31 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -68,43 +68,51 @@
-
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
-- These routines write the characters of the (null-terminat-
-- ed) <STRONG>wchar_t</STRONG> character string <EM>wstr</EM> on the given window. It
-- is similar to constructing a <STRONG>cchar_t</STRONG> for each wchar_t in
-- the string, then calling <STRONG>wadd_wch</STRONG> for the resulting
-+ These functions write the characters of the (null-termi-
-+ nated) <STRONG>wchar_t</STRONG> character string <EM>wstr</EM> on the given window.
-+ It is similar to constructing a <STRONG>cchar_t</STRONG> for each wchar_t
-+ in the string, then calling <STRONG>wadd_wch</STRONG> for the resulting
- <STRONG>cchar_t</STRONG>.
-
-- The <EM>mv</EM> routines perform cursor movement once, before writ-
-- ing any characters. Thereafter, the cursor is advanced as
-- a side-effect of writing to the window.
-+ The <EM>mv</EM> functions perform cursor movement once, before
-+ writing any characters. Thereafter, the cursor is ad-
-+ vanced as a side-effect of writing to the window.
-
-- The four routines with <EM>n</EM> as the last argument write at
-- most <EM>n</EM> <STRONG>wchar_t</STRONG> characters. If <EM>n</EM> is -1, then the entire
-- string will be added, up to the maximum number of charac-
-- ters that will fit on the line, or until a terminating
-- null is reached.
-+ The four functions with <EM>n</EM> as the last argument write at
-+ most <EM>n</EM> <STRONG>wchar_t</STRONG> characters, or until a terminating null is
-+ reached. If <EM>n</EM> is -1, then the entire string will be
-+ added.
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-- All routines return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> on
-- success.
-+<H2>RETURN VALUE</H2><PRE>
-+ All functions return the integer <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>
-+ on success.
-
-- Functions with a "mv" prefix first perform a cursor move-
-- ment using <STRONG>wmove</STRONG>, and return an error if the position is
-+ X/Open does not define any error conditions. This imple-
-+ mentation returns an error
-+
-+ <STRONG>o</STRONG> if the window pointer is null or
-+
-+ <STRONG>o</STRONG> if the string pointer is null or
-+
-+ <STRONG>o</STRONG> if the corresponding calls to <STRONG>wadd_wch</STRONG> return an er-
-+ ror.
-+
-+ Functions with a "mv" prefix first perform a cursor move-
-+ ment using <STRONG>wmove</STRONG>, and return an error if the position is
- outside the window, or if the window pointer is null.
-
-
- </PRE>
- <H2>NOTES</H2><PRE>
-- Note that all of these routines except <STRONG>waddnwstr</STRONG> may be
-- macros.
-+ All of these functions except <STRONG>waddnwstr</STRONG> may be macros.
-
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- All these entry points are described in the XSI Curses
-- standard, Issue 4.
-+ These functions are described in the XSI Curses standard,
-+ Issue 4.
-
-
- </PRE>
-Index: doc/html/man/curs_attr.3x.html
---- ncurses-5.9/doc/html/man/curs_attr.3x.html 2011-02-25 23:24:50.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_attr.3x.html 2013-12-21 19:55:41.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_attr.3x,v 1.36 2010/12/04 18:36:44 tom Exp @
-+ * @Id: curs_attr.3x,v 1.39 2013/09/21 20:39:49 Sven.Joachim Exp @
- -->
- <HTML>
- <HEAD>
-@@ -148,19 +148,36 @@
- be passed to the routines <STRONG>attron</STRONG>, <STRONG>attroff</STRONG>, and <STRONG>attrset</STRONG>, or
- OR'd with the characters passed to <STRONG>addch</STRONG>.
-
-+ <EM>Name</EM> <EM>Description</EM>
-+ ------------------------------------------------------------
-+ <STRONG>A_NORMAL</STRONG> Normal display (no highlight)
-+ <STRONG>A_STANDOUT</STRONG> Best highlighting mode of the terminal.
-+ <STRONG>A_UNDERLINE</STRONG> Underlining
-+ <STRONG>A_REVERSE</STRONG> Reverse video
-+ <STRONG>A_BLINK</STRONG> Blinking
-+ <STRONG>A_DIM</STRONG> Half bright
-+ <STRONG>A_BOLD</STRONG> Extra bright or bold
-+ <STRONG>A_PROTECT</STRONG> Protected mode
-+ <STRONG>A_INVIS</STRONG> Invisible or blank mode
-+ <STRONG>A_ALTCHARSET</STRONG> Alternate character set
-+ <STRONG>A_ITALIC</STRONG> Italics (non-X/Open extension)
-+ <STRONG>A_CHARTEXT</STRONG> Bit-mask to extract a character
-+ <STRONG>COLOR_PAIR(</STRONG><EM>n</EM><STRONG>)</STRONG> Color-pair number <EM>n</EM>
-+
-+ These video attributes are supported by <STRONG>attr_on</STRONG> and relat-
-+ ed functions (which also support the attributes recognized
-+ by <STRONG>attron</STRONG>, etc.):
-+
-+ <EM>Name</EM> <EM>Description</EM>
-+ -----------------------------------------
-+ <STRONG>WA_HORIZONTAL</STRONG> Horizontal highlight
-+ <STRONG>WA_LEFT</STRONG> Left highlight
-+ <STRONG>WA_LOW</STRONG> Low highlight
-+ <STRONG>WA_RIGHT</STRONG> Right highlight
-+ <STRONG>WA_TOP</STRONG> Top highlight
-+ <STRONG>WA_VERTICAL</STRONG> Vertical highlight
-
-- <STRONG>A_NORMAL</STRONG> Normal display (no highlight)
-- <STRONG>A_STANDOUT</STRONG> Best highlighting mode of the terminal.
-- <STRONG>A_UNDERLINE</STRONG> Underlining
-- <STRONG>A_REVERSE</STRONG> Reverse video
-- <STRONG>A_BLINK</STRONG> Blinking
-- <STRONG>A_DIM</STRONG> Half bright
-- <STRONG>A_BOLD</STRONG> Extra bright or bold
-- <STRONG>A_PROTECT</STRONG> Protected mode
-- <STRONG>A_INVIS</STRONG> Invisible or blank mode
-- <STRONG>A_ALTCHARSET</STRONG> Alternate character set
-- <STRONG>A_CHARTEXT</STRONG> Bit-mask to extract a character
-- <STRONG>COLOR_PAIR(</STRONG><EM>n</EM><STRONG>)</STRONG> Color-pair number <EM>n</EM>
-+ For consistency
-
- The following macro is the reverse of <STRONG>COLOR_PAIR(</STRONG><EM>n</EM><STRONG>)</STRONG>:
-
-@@ -202,33 +219,44 @@
- correctly manipulate all other highlights (specifically,
- <STRONG>A_ALTCHARSET</STRONG>, <STRONG>A_PROTECT</STRONG>, and <STRONG>A_INVIS</STRONG>).
-
-+ This implementation provides the <STRONG>A_ITALIC</STRONG> attribute for
-+ terminals which have the <EM>enter</EM><STRONG>_</STRONG><EM>italics</EM><STRONG>_</STRONG><EM>mode</EM> (sitm) and <EM>ex-</EM>
-+ <EM>it</EM><STRONG>_</STRONG><EM>italics</EM><STRONG>_</STRONG><EM>mode</EM> (ritm) capabilities. Italics are not men-
-+ tioned in X/Open Curses. Unlike the other video at-
-+ tributes, <STRONG>I_ITALIC</STRONG> is unrelated to the <EM>set</EM><STRONG>_</STRONG><EM>attributes</EM> ca-
-+ pabilities. This implementation makes the assumption that
-+ <EM>exit</EM><STRONG>_</STRONG><EM>attribute</EM><STRONG>_</STRONG><EM>mode</EM> may also reset italics.
-+
- XSI Curses added the new entry points, <STRONG>attr_get</STRONG>, <STRONG>attr_on</STRONG>,
- <STRONG>attr_off</STRONG>, <STRONG>attr_set</STRONG>, <STRONG>wattr_on</STRONG>, <STRONG>wattr_off</STRONG>, <STRONG>wattr_get</STRONG>, <STRONG>wat-</STRONG>
- <STRONG>tr_set</STRONG>. These are intended to work with a new series of
-- highlight macros prefixed with <STRONG>WA_</STRONG>.
--
-- Older versions of this library did not force an update of
-- the screen when changing the attributes. Use <STRONG>touchwin</STRONG> to
-- force the screen to match the updated attributes.
-+ highlight macros prefixed with <STRONG>WA_</STRONG>. The older macros have
-+ direct counterparts in the newer set of names:
-
-+ <EM>Name</EM> <EM>Description</EM>
-+ ------------------------------------------------------------
-+ <STRONG>WA_NORMAL</STRONG> Normal display (no highlight)
-+ <STRONG>WA_STANDOUT</STRONG> Best highlighting mode of the terminal.
-+ <STRONG>WA_UNDERLINE</STRONG> Underlining
-+ <STRONG>WA_REVERSE</STRONG> Reverse video
-+ <STRONG>WA_BLINK</STRONG> Blinking
-+ <STRONG>WA_DIM</STRONG> Half bright
-+ <STRONG>WA_BOLD</STRONG> Extra bright or bold
-+ <STRONG>WA_ALTCHARSET</STRONG> Alternate character set
-
-- <STRONG>WA_NORMAL</STRONG> Normal display (no highlight)
-- <STRONG>WA_STANDOUT</STRONG> Best highlighting mode of the terminal.
-- <STRONG>WA_UNDERLINE</STRONG> Underlining
-- <STRONG>WA_REVERSE</STRONG> Reverse video
-- <STRONG>WA_BLINK</STRONG> Blinking
-- <STRONG>WA_DIM</STRONG> Half bright
-- <STRONG>WA_BOLD</STRONG> Extra bright or bold
-- <STRONG>WA_ALTCHARSET</STRONG> Alternate character set
-+ Older versions of this library did not force an update of
-+ the screen when changing the attributes. Use <STRONG>touchwin</STRONG> to
-+ force the screen to match the updated attributes.
-
- The XSI curses standard specifies that each pair of corre-
-- sponding <STRONG>A_</STRONG> and <STRONG>WA_</STRONG>-using functions operates on the same
-+ sponding <STRONG>A_</STRONG> and <STRONG>WA_</STRONG>-using functions operates on the same
- current-highlight information.
-
- The XSI standard extended conformance level adds new high-
- lights <STRONG>A_HORIZONTAL</STRONG>, <STRONG>A_LEFT</STRONG>, <STRONG>A_LOW</STRONG>, <STRONG>A_RIGHT</STRONG>, <STRONG>A_TOP</STRONG>, <STRONG>A_VER-</STRONG>
-- <STRONG>TICAL</STRONG> (and corresponding <STRONG>WA_</STRONG> macros for each) which this
-- implementation does not yet support.
-+ <STRONG>TICAL</STRONG> (and corresponding <STRONG>WA_</STRONG> macros for each). As of Au-
-+ gust 2013, no known terminal provides these highlights
-+ (i.e., via the <STRONG>sgr1</STRONG> capability).
-
-
- </PRE>
-Index: doc/html/man/curs_beep.3x.html
---- ncurses-5.9/doc/html/man/curs_beep.3x.html 2011-01-09 01:03:05.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_beep.3x.html 2013-05-17 22:24:17.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_bkgd.3x.html
---- ncurses-5.9/doc/html/man/curs_bkgd.3x.html 2011-01-09 01:03:06.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_bkgd.3x.html 2013-05-17 22:24:17.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2003,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_bkgrnd.3x.html
---- ncurses-5.9/doc/html/man/curs_bkgrnd.3x.html 2011-01-09 01:03:06.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_bkgrnd.3x.html 2013-05-17 22:24:17.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_bkgrnd.3x,v 1.4 2010/12/04 18:49:20 tom Exp @
-+ * @Id: curs_bkgrnd.3x,v 1.5 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -102,7 +102,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- The <STRONG>bkgrndset</STRONG> and <STRONG>wbkgrndset</STRONG> routines do not return a
- value.
-
-Index: doc/html/man/curs_border.3x.html
---- ncurses-5.9/doc/html/man/curs_border.3x.html 2011-01-09 01:03:06.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_border.3x.html 2013-05-17 22:24:17.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_border_set.3x.html
---- ncurses-5.9/doc/html/man/curs_border_set.3x.html 2011-01-22 21:01:21.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_border_set.3x.html 2013-05-17 22:24:17.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2002-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2011,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_border_set.3x,v 1.10 2011/01/15 12:56:18 tom Exp @
-+ * @Id: curs_border_set.3x,v 1.11 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -154,7 +154,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- Upon successful completion, these functions return <STRONG>OK</STRONG>.
- Otherwise, they return <STRONG>ERR</STRONG>.
-
-Index: doc/html/man/curs_clear.3x.html
---- ncurses-5.9/doc/html/man/curs_clear.3x.html 2011-01-09 01:03:06.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_clear.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_color.3x.html
---- ncurses-5.9/doc/html/man/curs_color.3x.html 2011-01-09 01:03:06.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_color.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_delch.3x.html
---- ncurses-5.9/doc/html/man/curs_delch.3x.html 2011-01-09 01:03:07.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_delch.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_deleteln.3x.html
---- ncurses-5.9/doc/html/man/curs_deleteln.3x.html 2011-01-09 01:03:07.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_deleteln.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_extend.3x.html
---- ncurses-5.9/doc/html/man/curs_extend.3x.html 2011-01-09 01:03:07.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_extend.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1999-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_get_wch.3x.html
---- ncurses-5.9/doc/html/man/curs_get_wch.3x.html 2010-09-18 21:35:17.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_get_wch.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_get_wch.3x,v 1.7 2010/08/14 23:31:42 tom Exp @
-+ * @Id: curs_get_wch.3x,v 1.8 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -122,7 +122,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- When <STRONG>get_wch</STRONG>, <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, and <STRONG>mvwget_wch</STRONG> func-
- tions successfully report the pressing of a function key,
- they return <STRONG>KEY_CODE_YES</STRONG>. When they successfully report a
-Index: doc/html/man/curs_get_wstr.3x.html
---- ncurses-5.9/doc/html/man/curs_get_wstr.3x.html 2011-01-09 01:03:08.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_get_wstr.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_get_wstr.3x,v 1.8 2010/12/04 18:36:44 tom Exp @
-+ * @Id: curs_get_wstr.3x,v 1.9 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -118,7 +118,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- All of these functions return <STRONG>OK</STRONG> upon successful comple-
- tion. Otherwise, they return <STRONG>ERR</STRONG>.
-
-Index: doc/html/man/curs_getcchar.3x.html
---- ncurses-5.9/doc/html/man/curs_getcchar.3x.html 2011-01-09 01:03:07.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_getcchar.3x.html 2013-12-21 21:39:16.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2001-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_getcchar.3x,v 1.15 2010/12/04 18:36:44 tom Exp @
-+ * @Id: curs_getcchar.3x,v 1.16 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -128,7 +128,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- 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.
-@@ -143,7 +143,7 @@
- </PRE>
- <H2>SEE ALSO</H2><PRE>
- Functions: <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>, <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,
-- <STRONG><A HREF="wcwidth.3.html">wcwidth(3)</A></STRONG>.
-+ <STRONG>wcwidth(3)</STRONG>.
-
-
-
-Index: doc/html/man/curs_getch.3x.html
---- ncurses-5.9/doc/html/man/curs_getch.3x.html 2011-02-25 23:24:52.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_getch.3x.html 2014-05-24 22:05:35.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_getch.3x,v 1.36 2011/01/22 19:38:51 tom Exp @
-+ * @Id: curs_getch.3x,v 1.39 2014/05/24 20:16:31 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -76,14 +76,24 @@
- waits until a character is typed or the specified timeout
- has been reached.
-
-- Unless <STRONG>noecho</STRONG> has been set, then the character will also
-- be echoed into the designated window according to the fol-
-- lowing rules: if the character is the current erase char-
-- acter, left arrow, or backspace, the cursor is moved one
-- space to the left and that screen position is erased as if
-- <STRONG>delch</STRONG> had been called. If the character value is any oth-
-- er <STRONG>KEY_</STRONG> define, the user is alerted with a <STRONG>beep</STRONG> call.
-- Otherwise the character is simply output to the screen.
-+ If <STRONG>echo</STRONG> is enabled, and the window is not a pad, then the
-+ character will also be echoed into the designated window
-+ according to the following rules:
-+
-+ <STRONG>o</STRONG> If the character is the current erase character, left
-+ arrow, or backspace, the cursor is moved one space to
-+ the left and that screen position is erased as if
-+ <STRONG>delch</STRONG> had been called.
-+
-+ <STRONG>o</STRONG> If the character value is any other <STRONG>KEY_</STRONG> define, the
-+ user is alerted with a <STRONG>beep</STRONG> call.
-+
-+ <STRONG>o</STRONG> If the character is a carriage-return, and if <STRONG>nl</STRONG> is
-+ enabled, it is translated to a line-feed after echo-
-+ ing.
-+
-+ <STRONG>o</STRONG> Otherwise the character is simply output to the
-+ screen.
-
- If the window is not a pad, and it has been moved or modi-
- fied since the last call to <STRONG>wrefresh</STRONG>, <STRONG>wrefresh</STRONG> will be
-@@ -93,7 +103,7 @@
- ken for that function key is returned instead of the raw
- characters. Possible function keys are defined in <STRONG>&lt;curs-</STRONG>
- <STRONG>es.h&gt;</STRONG> as macros with values outside the range of 8-bit
-- characters whose names begin with <STRONG>KEY_</STRONG>. Thus, a variable
-+ characters whose names begin with <STRONG>KEY_</STRONG>. Thus, a variable
- intended to hold the return value of a function key must
- be of short size or larger.
-
-@@ -110,15 +120,14 @@
- be returned by the next call to <STRONG>wgetch</STRONG>. There is just one
- input queue for all windows.
-
--
- <STRONG>Function</STRONG> <STRONG>Keys</STRONG>
- The following function keys, defined in <STRONG>&lt;curses.h&gt;</STRONG>, might
- be returned by <STRONG>getch</STRONG> if <STRONG>keypad</STRONG> has been enabled. Note
- that not all of these are necessarily supported on any
- particular terminal.
-
--
- <EM>Name</EM> <EM>Key</EM> <EM>name</EM>
-+ -------------------------------------------------
- KEY_BREAK Break key
- KEY_DOWN The four arrow keys ...
- KEY_UP
-@@ -169,6 +178,7 @@
- KEY_MESSAGE Message key
- KEY_MOUSE Mouse event read
- KEY_MOVE Move key
-+
- KEY_NEXT Next object key
- KEY_OPEN Open key
- KEY_OPTIONS Options key
-@@ -180,7 +190,6 @@
- KEY_RESIZE Screen resized
- KEY_RESTART Restart key
- KEY_RESUME Resume key
--
- KEY_SAVE Save key
- KEY_SBEG Shifted beginning key
- KEY_SCANCEL Shifted cancel key
-@@ -233,21 +242,18 @@
- sion of <STRONG>KEY_MOUSE</STRONG>.
-
-
--
- </PRE>
- <H2>RETURN VALUE</H2><PRE>
- All routines return the integer <STRONG>ERR</STRONG> upon failure and an
- integer value other than <STRONG>ERR</STRONG> (<STRONG>OK</STRONG> in the case of ungetch())
- upon successful completion.
-
-- <STRONG>ungetch</STRONG>
-- returns an error if there is no more room in
-- the FIFO.
--
-- <STRONG>wgetch</STRONG>
-- returns an error if the window pointer is
-- null, or if its timeout expires without having
-- any data.
-+ <STRONG>ungetch</STRONG>
-+ returns ERR if there is no more room in the FIFO.
-+
-+ <STRONG>wgetch</STRONG>
-+ returns ERR if the window pointer is null, or if
-+ its timeout expires without having any data.
-
- Functions with a "mv" prefix first perform a cursor move-
- ment using <STRONG>wmove</STRONG>, and return an error if the position is
-@@ -321,7 +327,7 @@
- documentation. Under historical curses implementations,
- it varied depending on whether the operating system's im-
- plementation of handled signal receipt interrupts a
-- <STRONG><A HREF="read.2.html">read(2)</A></STRONG> call in progress or not, and also (in some imple-
-+ <STRONG>read(2)</STRONG> call in progress or not, and also (in some imple-
- mentations) depending on whether an input timeout or non-
- blocking mode has been set.
-
-Index: doc/html/man/curs_getstr.3x.html
---- ncurses-5.9/doc/html/man/curs_getstr.3x.html 2011-01-09 01:03:08.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_getstr.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_getyx.3x.html
---- ncurses-5.9/doc/html/man/curs_getyx.3x.html 2011-01-09 01:03:08.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_getyx.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_in_wch.3x.html
---- ncurses-5.9/doc/html/man/curs_in_wch.3x.html 2011-01-09 01:03:10.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_in_wch.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_in_wchstr.3x.html
---- ncurses-5.9/doc/html/man/curs_in_wchstr.3x.html 2011-01-09 01:03:10.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_in_wchstr.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_in_wchstr.3x,v 1.8 2010/12/04 18:36:44 tom Exp @
-+ * @Id: curs_in_wchstr.3x,v 1.9 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -90,7 +90,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- Upon successful completion, these functions return <STRONG>OK</STRONG>.
- Otherwise, they return <STRONG>ERR</STRONG>.
-
-Index: doc/html/man/curs_inch.3x.html
---- ncurses-5.9/doc/html/man/curs_inch.3x.html 2011-01-09 01:03:08.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_inch.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/curs_inchstr.3x.html
---- ncurses-5.9/doc/html/man/curs_inchstr.3x.html 2011-01-09 01:03:09.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_inchstr.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_initscr.3x.html
---- ncurses-5.9/doc/html/man/curs_initscr.3x.html 2011-01-09 01:03:09.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_initscr.3x.html 2014-05-24 22:05:35.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_initscr.3x,v 1.17 2010/12/04 18:36:58 tom Exp @
-+ * @Id: curs_initscr.3x,v 1.20 2014/03/01 22:31:22 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -86,22 +86,34 @@
- use <STRONG>newterm</STRONG>. The routine <STRONG>newterm</STRONG> should be called once
- for each terminal. It returns a variable of type <STRONG>SCREEN</STRONG> <STRONG>*</STRONG>
- which should be saved as a reference to that terminal.
-- The arguments are the <EM>type</EM> of the terminal to be used in
-- place of <STRONG>$TERM</STRONG>, a file pointer for output to the terminal,
-- and another file pointer for input from the terminal (if
-- <EM>type</EM> is <STRONG>NULL</STRONG>, <STRONG>$TERM</STRONG> will be used). The program must also
-- call <STRONG>endwin</STRONG> for each terminal being used before exiting
-- from <STRONG>curses</STRONG>. If <STRONG>newterm</STRONG> is called more than once for the
-- same terminal, the first terminal referred to must be the
-- last one for which <STRONG>endwin</STRONG> is called.
--
-- A program should always call <STRONG>endwin</STRONG> before exiting or es-
-- caping from <STRONG>curses</STRONG> mode temporarily. This routine re-
-- stores tty modes, moves the cursor to the lower left-hand
-- corner of the screen and resets the terminal into the
-- proper non-visual mode. Calling <STRONG>refresh</STRONG> or <STRONG>doupdate</STRONG> after
-- a temporary escape causes the program to resume visual
-- mode.
-+ <STRONG>newterm</STRONG>'s arguments are
-+
-+ <STRONG>o</STRONG> the <EM>type</EM> of the terminal to be used in place of <STRONG>$TERM</STRONG>,
-+
-+ <STRONG>o</STRONG> a file pointer for output to the terminal, and
-+
-+ <STRONG>o</STRONG> another file pointer for input from the terminal
-+
-+ If the <EM>type</EM> parameter is <STRONG>NULL</STRONG>, <STRONG>$TERM</STRONG> will be used.
-+
-+ The program must also call <STRONG>endwin</STRONG> for each terminal being
-+ used before exiting from <STRONG>curses</STRONG>. If <STRONG>newterm</STRONG> is called
-+ more than once for the same terminal, the first terminal
-+ referred to must be the last one for which <STRONG>endwin</STRONG> is
-+ called.
-+
-+ A program should always call <STRONG>endwin</STRONG> before exiting or es-
-+ caping from <STRONG>curses</STRONG> mode temporarily. This routine
-+
-+ <STRONG>o</STRONG> restores tty modes,
-+
-+ <STRONG>o</STRONG> moves the cursor to the lower left-hand corner of the
-+ screen and
-+
-+ <STRONG>o</STRONG> resets the terminal into the proper non-visual mode.
-+
-+ Calling <STRONG>refresh</STRONG> or <STRONG>doupdate</STRONG> after a temporary escape caus-
-+ es the program to resume visual mode.
-
- The <STRONG>isendwin</STRONG> routine returns <STRONG>TRUE</STRONG> if <STRONG>endwin</STRONG> has been
- called without any subsequent calls to <STRONG>wrefresh</STRONG>, and <STRONG>FALSE</STRONG>
-@@ -128,8 +140,17 @@
- Routines that return pointers always return <STRONG>NULL</STRONG> on error.
-
- X/Open defines no error conditions. In this implementa-
-- tion <STRONG>endwin</STRONG> returns an error if the terminal was not ini-
-- tialized.
-+ tion
-+
-+ <STRONG>o</STRONG> <STRONG>endwin</STRONG> returns an error if the terminal was not ini-
-+ tialized.
-+
-+ <STRONG>o</STRONG> <STRONG>newterm</STRONG> returns an error if it cannot allocate the da-
-+ ta structures for the screen, or for the top-level
-+ windows within the screen, i.e., <STRONG>curscr</STRONG>, <STRONG>newscr</STRONG>, or
-+ <STRONG>stdscr</STRONG>.
-+
-+ <STRONG>o</STRONG> <STRONG>set_term</STRONG> returns no error.
-
-
- </PRE>
-@@ -139,20 +160,28 @@
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- These functions are described in the XSI Curses standard,
-+ These functions are described in the XSI Curses standard,
- Issue 4. It specifies that portable applications must not
- call <STRONG>initscr</STRONG> more than once.
-
- Old versions of curses, e.g., BSD 4.4, may have returned a
-- null pointer from <STRONG>initscr</STRONG> when an error is detected,
-- rather than exiting. It is safe but redundant to check
-+ null pointer from <STRONG>initscr</STRONG> when an error is detected,
-+ rather than exiting. It is safe but redundant to check
- the return value of <STRONG>initscr</STRONG> in XSI Curses.
-
-+ If the TERM variable is missing or empty, <STRONG>initscr</STRONG> uses the
-+ value "unknown", which normally corresponds to a terminal
-+ entry with the <EM>generic</EM> (<EM>gn</EM>) capability. Generic entries
-+ are detected by <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> and cannot be used for full-
-+ screen operation. Other implementations may handle a
-+ missing/empty TERM variable differently.
-+
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,
-- <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>.
-+ <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG>curs_vari-</STRONG>
-+ <STRONG><A HREF="curs_variables.3x.html">ables(3x)</A></STRONG>.
-
-
-
-Index: doc/html/man/curs_inopts.3x.html
---- ncurses-5.9/doc/html/man/curs_inopts.3x.html 2011-01-09 01:03:09.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_inopts.3x.html 2013-12-21 21:39:16.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_inopts.3x,v 1.15 2010/12/04 18:40:45 tom Exp @
-+ * @Id: curs_inopts.3x,v 1.18 2013/07/20 19:42:02 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -135,7 +135,7 @@
-
- Initially, whether the terminal returns 7 or 8 significant
- bits on input depends on the control mode of the tty driv-
-- er [see <STRONG><A HREF="termio.7.html">termio(7)</A></STRONG>]. To force 8 bits to be returned, in-
-+ er [see <STRONG>termio(7)</STRONG>]. To force 8 bits to be returned, in-
- voke <STRONG>meta</STRONG>(<EM>win</EM>, <STRONG>TRUE</STRONG>); this is equivalent, under POSIX, to
- setting the CS8 flag on the terminal. To force 7 bits to
- be returned, invoke <STRONG>meta</STRONG>(<EM>win</EM>, <STRONG>FALSE</STRONG>); this is equivalent,
-@@ -168,7 +168,7 @@
-
- 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><A HREF="termio.7.html">termio(7)</A></STRONG>]. When <STRONG>qiflush</STRONG>
-+ characters will not be done [see <STRONG>termio(7)</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
-@@ -185,7 +185,7 @@
- additional capability of being able to block for only <EM>de-</EM>
- <EM>lay</EM> milliseconds (where <EM>delay</EM> is positive).
-
-- The <STRONG>curses</STRONG> library does ``line-breakout optimization'' by
-+ The <STRONG>curses</STRONG> library does "line-breakout optimization" by
- looking for typeahead periodically while updating the
- screen. If input is found, and it is coming from a tty,
- the current update is postponed until <STRONG>refresh</STRONG> or <STRONG>doupdate</STRONG>
-@@ -229,24 +229,58 @@
- ty, set echo or noecho explicitly just after initializa-
- tion, even if your program remains in cooked mode.
-
-+ When <STRONG>keypad</STRONG> is first enabled, ncurses loads the key-defi-
-+ nitions for the current terminal description. If the ter-
-+ minal description includes extended string capabilities,
-+ e.g., from using the <STRONG>-x</STRONG> option of tic, then ncurses also
-+ defines keys for the capabilities whose names begin with
-+ "k". The corresponding keycodes are generated and (de-
-+ pending on previous loads of terminal descriptions) may
-+ differ from one execution of a program to the next. The
-+ generated keycodes are recognized by the <STRONG>keyname</STRONG> function
-+ (which will then return a name beginning with "k" denoting
-+ the terminfo capability name rather than "K", used for
-+ curses key-names). On the other hand, an application can
-+ use <STRONG>define_key</STRONG> to establish a specific keycode for a given
-+ string. This makes it possible for an application to
-+ check for an extended capability's presence with <EM>tigetstr</EM>,
-+ and reassign the keycode to match its own needs.
-+
-+ Low-level applications can use <STRONG>tigetstr</STRONG> to obtain the def-
-+ inition of any particular string capability. Higher-level
-+ applications which use the curses <STRONG>wgetch</STRONG> and similar func-
-+ tions to return keycodes rely upon the order in which the
-+ strings are loaded. If more than one key definition has
-+ the same string value, then <STRONG>wgetch</STRONG> can return only one
-+ keycode. Most curses implementations (including ncurses)
-+ load key definitions in the order defined by the array of
-+ string capability names. The last key to be loaded deter-
-+ mines the keycode which will be returned. In ncurses, you
-+ may also have extended capabilities interpreted as key
-+ definitions. These are loaded after the predefined keys,
-+ and if a capability's value is the same as a previously-
-+ loaded key definition, the later definition is the one
-+ used.
-+
-
- </PRE>
- <H2>NOTES</H2><PRE>
-- Note that <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>meta</STRONG>, <STRONG>node-</STRONG>
-- <STRONG>lay</STRONG>, <STRONG>notimeout</STRONG>, <STRONG>noqiflush</STRONG>, <STRONG>qiflush</STRONG>, <STRONG>timeout</STRONG>, and <STRONG>wtimeout</STRONG>
-+ Note that <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>meta</STRONG>, <STRONG>node-</STRONG>
-+ <STRONG>lay</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 respectively. Mixing raw/noraw
-- and cbreak/nocbreak calls leads to tty driver control
-- states that are hard to predict or understand; it is not
-+ that they attempt to restore to normal (`cooked') mode
-+ from raw and cbreak modes respectively. Mixing raw/noraw
-+ and cbreak/nocbreak calls leads to tty driver control
-+ states that are hard to predict or understand; it is not
- recommended.
-
-
- </PRE>
- <H2>SEE ALSO</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_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="termio.7.html">termio(7)</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_initscr.3x.html">curs_initscr(3x)</A></STRONG>,
-+ <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>, <STRONG>termio(7)</STRONG>
-
-
-
-Index: doc/html/man/curs_ins_wch.3x.html
---- ncurses-5.9/doc/html/man/curs_ins_wch.3x.html 2011-01-09 01:03:10.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_ins_wch.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_ins_wstr.3x.html
---- ncurses-5.9/doc/html/man/curs_ins_wstr.3x.html 2011-01-09 01:03:10.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_ins_wstr.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_ins_wstr.3x,v 1.6 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_ins_wstr.3x,v 1.7 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -102,7 +102,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- Upon successful completion, these functions return OK.
- Otherwise, they return ERR.
-
-Index: doc/html/man/curs_insch.3x.html
---- ncurses-5.9/doc/html/man/curs_insch.3x.html 2011-01-09 01:03:09.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_insch.3x.html 2013-05-17 22:24:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_insstr.3x.html
---- ncurses-5.9/doc/html/man/curs_insstr.3x.html 2011-01-09 01:03:09.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_insstr.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_instr.3x.html
---- ncurses-5.9/doc/html/man/curs_instr.3x.html 2011-01-09 01:03:10.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_instr.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_inwstr.3x.html
---- ncurses-5.9/doc/html/man/curs_inwstr.3x.html 2011-01-09 01:03:11.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_inwstr.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2012 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_inwstr.3x,v 1.7 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_inwstr.3x,v 1.8 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -87,7 +87,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- All routines return <STRONG>ERR</STRONG> upon failure. Upon successful com-
- pletion, the *<STRONG>inwstr</STRONG> routines return <STRONG>OK</STRONG>, and the *<STRONG>innwstr</STRONG>
- routines return the number of characters read into the
-Index: doc/html/man/curs_kernel.3x.html
---- ncurses-5.9/doc/html/man/curs_kernel.3x.html 2011-01-09 01:03:11.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_kernel.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_legacy.3x.html
---- ncurses-5.9/doc/html/man/curs_legacy.3x.html 2011-01-09 01:03:11.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_legacy.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 2007,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_memleaks.3x.html
---- ncurses-5.9/doc/html/man/curs_memleaks.3x.html 2011-01-09 01:03:11.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_memleaks.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 2008,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_mouse.3x.html
---- ncurses-5.9/doc/html/man/curs_mouse.3x.html 2011-02-25 23:24:55.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_mouse.3x.html 2013-12-21 19:55:43.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_mouse.3x,v 1.38 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_mouse.3x,v 1.39 2013/06/22 18:09:42 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -59,13 +59,12 @@
-
- <STRONG>typedef</STRONG> <STRONG>unsigned</STRONG> <STRONG>long</STRONG> <STRONG>mmask_t;</STRONG>
-
-- typedef struct
-- {
-- short id; <EM>/*</EM> <EM>ID</EM> <EM>to</EM> <EM>distinguish</EM> <EM>multiple</EM> <EM>devices</EM> <EM>*/</EM>
-+ <STRONG>typedef</STRONG> <STRONG>struct</STRONG> <STRONG>{</STRONG>
-+ <STRONG>short</STRONG> <STRONG>id;</STRONG> <EM>/*</EM> <EM>ID</EM> <EM>to</EM> <EM>distinguish</EM> <EM>multiple</EM> <EM>devices</EM> <EM>*/</EM>
- <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>y,</STRONG> <STRONG>z;</STRONG> <EM>/*</EM> <EM>event</EM> <EM>coordinates</EM> <EM>*/</EM>
- <STRONG>mmask_t</STRONG> <STRONG>bstate;</STRONG> <EM>/*</EM> <EM>button</EM> <EM>state</EM> <EM>bits</EM> <EM>*/</EM>
-- <STRONG>}</STRONG>
-- <STRONG>MEVENT;</STRONG>
-+ <STRONG>}</STRONG> <STRONG>MEVENT;</STRONG>
-+
- <STRONG>bool</STRONG> <STRONG>has_mouse(void);</STRONG>
- <STRONG>int</STRONG> <STRONG>getmouse(MEVENT</STRONG> <STRONG>*event);</STRONG>
- <STRONG>int</STRONG> <STRONG>ungetmouse(MEVENT</STRONG> <STRONG>*event);</STRONG>
-@@ -98,7 +97,6 @@
-
- Here are the mouse event type masks which may be defined:
-
--
- <EM>Name</EM> <EM>Description</EM>
- ---------------------------------------------------------------------
- BUTTON1_PRESSED mouse button 1 down
-@@ -111,11 +109,10 @@
- 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
-Index: doc/html/man/curs_move.3x.html
---- ncurses-5.9/doc/html/man/curs_move.3x.html 2011-01-09 01:03:12.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_move.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_opaque.3x.html
---- ncurses-5.9/doc/html/man/curs_opaque.3x.html 2011-01-09 01:03:12.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_opaque.3x.html 2014-05-24 22:05:36.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2007-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2007-2013,2014 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_opaque.3x,v 1.9 2010/12/04 18:40:45 tom Exp @
-+ * @Id: curs_opaque.3x,v 1.11 2014/03/15 19:24:23 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -69,6 +69,7 @@
- <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>
-
-
-@@ -76,7 +77,7 @@
- <H2>DESCRIPTION</H2><PRE>
- This implementation provides functions which return prop-
- erties set in the WINDOW structure, allowing it to be
-- ``opaque'' if the symbol <STRONG>NCURSES_OPAQUE</STRONG> is defined:
-+ "opaque" if the symbol <STRONG>NCURSES_OPAQUE</STRONG> is defined:
-
- <STRONG>is_cleared</STRONG>
- returns the value set in <STRONG>clearok</STRONG>
-@@ -116,6 +117,9 @@
- <STRONG>is_syncok</STRONG>
- returns the value set in <STRONG>syncok</STRONG>
-
-+ <STRONG>wgetdelay</STRONG>
-+ returns the delay timeout as set in <STRONG>wtimeout</STRONG>.
-+
- <STRONG>wgetparent</STRONG>
- returns the parent WINDOW pointer for subwindows, or
- NULL for windows having no parent.
-Index: doc/html/man/curs_outopts.3x.html
---- ncurses-5.9/doc/html/man/curs_outopts.3x.html 2011-01-09 01:03:12.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_outopts.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_overlay.3x.html
---- ncurses-5.9/doc/html/man/curs_overlay.3x.html 2011-01-09 01:03:12.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_overlay.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_overlay.3x,v 1.16 2010/12/04 18:40:45 tom Exp @
-+ * @Id: curs_overlay.3x,v 1.17 2013/04/06 23:48:51 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -72,7 +72,7 @@
- (blanks are not copied) whereas <STRONG>overwrite</STRONG> is destructive.
-
- The <STRONG>copywin</STRONG> routine provides a finer granularity of con-
-- trol over the <STRONG>overlay</STRONG> and <STRONG>overwrite</STRONG> routines. Like in the
-+ trol over the <STRONG>overlay</STRONG> and <STRONG>overwrite</STRONG> routines. As in the
- <STRONG>prefresh</STRONG> routine, a rectangle is specified in the destina-
- tion window, (<EM>dminrow</EM>, <EM>dmincol</EM>) and (<EM>dmaxrow</EM>, <EM>dmaxcol</EM>),
- and the upper-left-corner coordinates of the source win-
-Index: doc/html/man/curs_pad.3x.html
---- ncurses-5.9/doc/html/man/curs_pad.3x.html 2011-01-09 01:03:12.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_pad.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_print.3x.html
---- ncurses-5.9/doc/html/man/curs_print.3x.html 2011-01-09 01:03:12.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_print.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_printw.3x.html
---- ncurses-5.9/doc/html/man/curs_printw.3x.html 2011-01-09 01:03:13.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_printw.3x.html 2013-12-21 21:39:17.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-@@ -69,12 +69,12 @@
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
- The <STRONG>printw</STRONG>, <STRONG>wprintw</STRONG>, <STRONG>mvprintw</STRONG> and <STRONG>mvwprintw</STRONG> routines are
-- analogous to <STRONG>printf</STRONG> [see <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>]. In effect, the
-+ analogous to <STRONG>printf</STRONG> [see <STRONG>printf(3)</STRONG>]. In effect, the
- string that would be output by <STRONG>printf</STRONG> is output instead as
- though <STRONG>waddstr</STRONG> were used on the given window.
-
- The <STRONG>vwprintw</STRONG> and <STRONG>wv_printw</STRONG> routines are analogous to
-- <STRONG>vprintf</STRONG> [see <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>] and perform a <STRONG>wprintw</STRONG> using a
-+ <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 defined in
- <STRONG>&lt;stdarg.h&gt;</STRONG>.
-@@ -111,7 +111,7 @@
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>, <STRONG>vprintf(3)</STRONG>
-+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG>printf(3)</STRONG>, <STRONG>vprintf(3)</STRONG>
-
-
-
-Index: doc/html/man/curs_refresh.3x.html
---- ncurses-5.9/doc/html/man/curs_refresh.3x.html 2011-01-09 01:03:13.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_refresh.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_scanw.3x.html
---- ncurses-5.9/doc/html/man/curs_scanw.3x.html 2011-01-09 01:03:13.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_scanw.3x.html 2013-12-21 22:17:44.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-@@ -66,9 +66,9 @@
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
- The <STRONG>scanw</STRONG>, <STRONG>wscanw</STRONG> and <STRONG>mvscanw</STRONG> routines are analogous to
-- <STRONG>scanf</STRONG> [see <STRONG><A HREF="scanf.3.html">scanf(3)</A></STRONG>]. The effect of these routines is as
-+ <STRONG>scanf</STRONG> [see <STRONG>scanf(3)</STRONG>]. The effect of these routines is as
- though <STRONG>wgetstr</STRONG> were called on the window, and the result-
-- ing line used as input for <STRONG><A HREF="sscanf.3.html">sscanf(3)</A></STRONG>. Fields which do not
-+ ing line used as input for <STRONG>sscanf(3)</STRONG>. Fields which do not
- map to a variable in the <EM>fmt</EM> field are lost.
-
- The <STRONG>vwscanw</STRONG> and <STRONG>vw_scanw</STRONG> routines are analogous to <STRONG>vscanf</STRONG>.
-@@ -118,7 +118,7 @@
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>, <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>, <STRONG><A HREF="scanf.3.html">scanf(3)</A></STRONG>
-+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>, <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>, <STRONG>scanf(3)</STRONG>
-
-
-
-Index: doc/html/man/curs_scr_dump.3x.html
---- ncurses-5.9/doc/html/man/curs_scr_dump.3x.html 2011-01-09 01:03:13.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_scr_dump.3x.html 2013-12-21 21:39:17.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-@@ -122,7 +122,7 @@
- </PRE>
- <H2>SEE ALSO</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_refresh.3x.html">curs_refresh(3x)</A></STRONG>,
-- <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="system.3.html">system(3)</A></STRONG>
-+ <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG>system(3)</STRONG>
-
-
-
-Index: doc/html/man/curs_scroll.3x.html
---- ncurses-5.9/doc/html/man/curs_scroll.3x.html 2011-01-09 01:03:13.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_scroll.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_slk.3x.html
---- ncurses-5.9/doc/html/man/curs_slk.3x.html 2011-01-09 01:03:14.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_slk.3x.html 2013-05-17 22:24:19.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_sp_funcs.3x.html
---- ncurses-5.9/doc/html/man/curs_sp_funcs.3x.html 2011-02-25 23:24:57.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_sp_funcs.3x.html 2013-12-21 21:59:38.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2010,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_sp_funcs.3x,v 1.5 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_sp_funcs.3x,v 1.6 2013/06/22 17:53:59 tom Exp @
- * ***************************************************************************
- * ***************************************************************************
- * ***************************************************************************
-@@ -131,7 +131,7 @@
- <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>int</STRONG> <STRONG>slk_attr_sp((SCREEN*);</STRONG>
-+ <STRONG>int</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>
-@@ -193,16 +193,15 @@
- functions which improve the ability to manage multiple
- screens. This feature can be added to any of the configu-
- rations supported by ncurses; it adds new entrypoints
-- without changing the meaning of any of the existing ones.
--
-+ without changing the meaning of any of the existing ones.
-
- <STRONG>IMPROVED</STRONG> <STRONG>FUNCTIONS</STRONG>
-- Most of the functions are new versions of existing func-
-+ Most of the functions are new versions of existing func-
- tions. A parameter is added at the front of the parameter
- list. It is a SCREEN pointer.
-
-- The existing functions all use the current screen, which
-- is a static variable. The extended functions use the
-+ The existing functions all use the current screen, which
-+ is a static variable. The extended functions use the
- specified screen, thereby reducing the number of variables
- which must be modified to update multiple screens.
-
-@@ -210,22 +209,22 @@
- Here are the new functions:
-
- ceiling_panel
-- this returns a pointer to the topmost panel in the
-+ this returns a pointer to the topmost panel in the
- given screen.
-
- ground_panel
-- this returns a pointer to the lowest panel in the
-+ this returns a pointer to the lowest panel in the
- given screen.
-
- new_prescr
-- when creating a new screen, the library uses static
-- variables which have been preset, e.g., by
-- <STRONG><A HREF="use_env.3x.html">use_env(3x)</A></STRONG>, <STRONG><A HREF="filter.3x.html">filter(3x)</A></STRONG>, etc. With the screen-point-
-+ when creating a new screen, the library uses static
-+ variables which have been preset, e.g., by
-+ <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, etc. With the screen-point-
- er extension, there are situations where it must cre-
-- ate a current screen before the unextended library
-- does. The <STRONG>new_prescr</STRONG> function is used internally to
-+ ate a current screen before the unextended library
-+ does. The <STRONG>new_prescr</STRONG> function is used internally to
- handle these cases. It is also provided as an entry-
-- point to allow applications to customize the library
-+ point to allow applications to customize the library
- initialization.
-
-
-@@ -234,37 +233,36 @@
- This extension introduces some new names:
-
- NCURSES_SP_FUNCS
-- This is set to the library patch-level number. In
-- the unextended library, this is zero (0), to make it
-+ This is set to the library patch-level number. In
-+ the unextended library, this is zero (0), to make it
- useful for checking if the extension is provided.
-
- NCURSES_SP_NAME
-- The new functions are named using the macro <EM>NCURS-</EM>
-- <EM>ES</EM><STRONG>_</STRONG><EM>SP</EM><STRONG>_</STRONG><EM>NAME</EM>, which hides the actual implementation.
-+ The new functions are named using the macro <EM>NCURS-</EM>
-+ <EM>ES</EM><STRONG>_</STRONG><EM>SP</EM><STRONG>_</STRONG><EM>NAME</EM>, which hides the actual implementation.
- Currently this adds a "_sp" suffix to the name of the
-- unextended function. This manual page indexes the
-+ unextended function. This manual page indexes the
- extensions showing the full name. However the proper
-- usage of these functions uses the macro, to provide
-+ usage of these functions uses the macro, to provide
- for the possibility of changing the naming convention
- for specific library configurations.
-
- NCURSES_SP_OUTC
-- This is a new function-pointer type to use in the
-- screen-pointer functions where an <EM>NCURSES</EM><STRONG>_</STRONG><EM>OUTC</EM> is
-+ This is a new function-pointer type to use in the
-+ screen-pointer functions where an <EM>NCURSES</EM><STRONG>_</STRONG><EM>OUTC</EM> is
- used in the unextended library.
-
- NCURSES_OUTC
-- This is a function-pointer type used for the cases
-- where a function passes characters to the output
-- stream, e.g., <STRONG><A HREF="vidputs.3x.html">vidputs(3x)</A></STRONG>.
--
-+ This is a function-pointer type used for the cases
-+ where a function passes characters to the output
-+ stream, e.g., <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>.
-
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- These routines are specific to ncurses. They were not
-- supported on Version 7, BSD or System V implementations.
-- It is recommended that any code depending on ncurses ex-
-+ These routines are specific to ncurses. They were not
-+ supported on Version 7, BSD or System V implementations.
-+ It is recommended that any code depending on ncurses ex-
- tensions be conditioned using <EM>NCURSES</EM><STRONG>_</STRONG><EM>SP</EM><STRONG>_</STRONG><EM>FUNCS</EM>.
-
-
-Index: doc/html/man/curs_termattrs.3x.html
---- ncurses-5.9/doc/html/man/curs_termattrs.3x.html 2011-02-25 23:24:58.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_termattrs.3x.html 2013-05-17 22:24:20.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-@@ -111,11 +111,11 @@
-
- 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 use-
-- ful when a <STRONG>curses</STRONG> program needs complete control over the
-+ substitute a different video attribute for it. The <STRONG>ter-</STRONG>
-+ <STRONG>mattrs</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.
-
- The <STRONG>termname</STRONG> routine returns the terminal name used by
-Index: doc/html/man/curs_termcap.3x.html
---- ncurses-5.9/doc/html/man/curs_termcap.3x.html 2011-01-09 01:03:14.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_termcap.3x.html 2013-12-21 21:39:17.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_termcap.3x,v 1.26 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_termcap.3x,v 1.30 2013/01/19 15:58:48 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -79,39 +79,62 @@
- bilities of entries for which a terminfo entry has been
- compiled.
-
-- The <STRONG>tgetent</STRONG> routine loads the entry for <EM>name</EM>. It returns
-- 1 on success, 0 if there is no such entry, and -1 if the
-- terminfo database could not be found. The emulation ig-
-- nores the buffer pointer <EM>bp</EM>.
-+ <STRONG>INITIALIZATION</STRONG>
-+ The <STRONG>tgetent</STRONG> routine loads the entry for <EM>name</EM>. It returns:
-
-+ 1 on success,
-+
-+ 0 if there is no such entry (or that it is a generic
-+ type, having too little information for curses ap-
-+ plications to run), and
-+
-+ -1 if the terminfo database could not be found.
-+
-+ This differs from the <EM>termcap</EM> library in two ways:
-+
-+ <STRONG>o</STRONG> The emulation ignores the buffer pointer <EM>bp</EM>. The
-+ <EM>termcap</EM> library would store a copy of the terminal
-+ description in the area referenced by this pointer.
-+ However, ncurses stores its terminal descriptions
-+ in compiled binary form, which is not the same
-+ thing.
-+
-+ <STRONG>o</STRONG> There is a difference in return codes. The <EM>termcap</EM>
-+ library does not check if the terminal description
-+ is marked with the <EM>generic</EM> capability, or if the
-+ terminal description has cursor-addressing.
-+
-+ <STRONG>CAPABILITY</STRONG> <STRONG>VALUES</STRONG>
- The <STRONG>tgetflag</STRONG> routine gets the boolean entry for <EM>id</EM>, or ze-
- ro if it is not available.
-
-- The <STRONG>tgetnum</STRONG> routine gets the numeric entry for <EM>id</EM>, or -1
-+ The <STRONG>tgetnum</STRONG> routine gets the numeric entry for <EM>id</EM>, or -1
- if it is not available.
-
-- The <STRONG>tgetstr</STRONG> routine returns the string entry for <EM>id</EM>, or
-- zero if it is not available. Use <STRONG>tputs</STRONG> to output the re-
-- turned string. The return value will also be copied to
-- the buffer pointed to by <EM>area</EM>, and the <EM>area</EM> value will be
-+ The <STRONG>tgetstr</STRONG> routine returns the string entry for <EM>id</EM>, or
-+ zero if it is not available. Use <STRONG>tputs</STRONG> to output the re-
-+ turned string. The return value will also be copied to
-+ the buffer pointed to by <EM>area</EM>, and the <EM>area</EM> value will be
- updated to point past the null ending this value.
-
- Only the first two characters of the <STRONG>id</STRONG> parameter of <STRONG>tget-</STRONG>
- <STRONG>flag</STRONG>, <STRONG>tgetnum</STRONG> and <STRONG>tgetstr</STRONG> are compared in lookups.
-
-- The <STRONG>tgoto</STRONG> routine instantiates the parameters into the
-- given capability. The output from this routine is to be
-+ <STRONG>FORMATTING</STRONG> <STRONG>CAPABILITIES</STRONG>
-+ The <STRONG>tgoto</STRONG> routine instantiates the parameters into the
-+ given capability. The output from this routine is to be
- passed to <STRONG>tputs</STRONG>.
-
-- The <STRONG>tputs</STRONG> routine is described on the <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
-+ The <STRONG>tputs</STRONG> routine is described on the <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
- manual page. It can retrieve capabilities by either term-
- cap or terminfo name.
-
-+ <STRONG>GLOBAL</STRONG> <STRONG>VARIABLES</STRONG>
- The variables <STRONG>PC</STRONG>, <STRONG>UP</STRONG> and <STRONG>BC</STRONG> are set by <STRONG>tgetent</STRONG> to the ter-
- minfo entry's data for <STRONG>pad_char</STRONG>, <STRONG>cursor_up</STRONG> and
-- <STRONG>backspace_if_not_bs</STRONG>, respectively. <STRONG>UP</STRONG> is not used by
-+ <STRONG>backspace_if_not_bs</STRONG>, respectively. <STRONG>UP</STRONG> is not used by
- ncurses. <STRONG>PC</STRONG> is used in the <STRONG>tdelay_output</STRONG> function. <STRONG>BC</STRONG> is
-- used in the <STRONG>tgoto</STRONG> emulation. The variable <STRONG>ospeed</STRONG> is set
-+ used in the <STRONG>tgoto</STRONG> emulation. The variable <STRONG>ospeed</STRONG> is set
- by ncurses in a system-specific coding to reflect the ter-
- minal speed.
-
-@@ -119,7 +142,7 @@
- </PRE>
- <H2>RETURN VALUE</H2><PRE>
- Except where explicitly noted, routines that return an in-
-- teger return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4 only specifies
-+ teger return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4 only specifies
- "an integer value other than <STRONG>ERR</STRONG>") upon successful comple-
- tion.
-
-@@ -129,54 +152,76 @@
- </PRE>
- <H2>BUGS</H2><PRE>
- If you call <STRONG>tgetstr</STRONG> to fetch <STRONG>ca</STRONG> or any other parameterized
-- string, be aware that it will be returned in terminfo no-
-+ string, be aware that it will be returned in terminfo no-
- tation, not the older and not-quite-compatible termcap no-
-- tation. This will not cause problems if all you do with
-- it is call <STRONG>tgoto</STRONG> or <STRONG>tparm</STRONG>, which both expand terminfo-
-- style strings as terminfo. (The <STRONG>tgoto</STRONG> function, if con-
-- figured to support termcap, will check if the string is
-- indeed terminfo-style by looking for "%p" parameters or
-- "$&lt;..&gt;" delays, and invoke a termcap-style parser if the
-+ tation. This will not cause problems if all you do with
-+ it is call <STRONG>tgoto</STRONG> or <STRONG>tparm</STRONG>, which both expand terminfo-
-+ style strings as terminfo. (The <STRONG>tgoto</STRONG> function, if con-
-+ figured to support termcap, will check if the string is
-+ indeed terminfo-style by looking for "%p" parameters or
-+ "$&lt;..&gt;" delays, and invoke a termcap-style parser if the
- string does not appear to be terminfo).
-
-- Because terminfo conventions for representing padding in
-- string capabilities differ from termcap's, <STRONG>tputs("50");</STRONG>
-- will put out a literal "50" rather than busy-waiting for
-+ Because terminfo conventions for representing padding in
-+ string capabilities differ from termcap's, <STRONG>tputs("50");</STRONG>
-+ will put out a literal "50" rather than busy-waiting for
- 50 milliseconds. Cope with it.
-
-- Note that termcap has nothing analogous to terminfo's <STRONG>sgr</STRONG>
-- string. One consequence of this is that termcap applica-
-- tions assume me (terminfo <STRONG>sgr0</STRONG>) does not reset the alter-
-- nate character set. This implementation checks for, and
-+ Note that termcap has nothing analogous to terminfo's <STRONG>sgr</STRONG>
-+ string. One consequence of this is that termcap applica-
-+ tions assume me (terminfo <STRONG>sgr0</STRONG>) does not reset the alter-
-+ nate character set. This implementation checks for, and
- modifies the data shown to the termcap interface to accom-
- modate termcap's limitation in this respect.
-
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- The XSI Curses standard, Issue 4 describes these func-
-- tions. However, they are marked TO BE WITHDRAWN and may
-+ The XSI Curses standard, Issue 4 describes these func-
-+ tions. However, they are marked TO BE WITHDRAWN and may
- be removed in future versions.
-
-- 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 returned ever since SVr1. In par-
-- ticular, an omission in the XSI Curses documentation has
-- been misinterpreted to mean that <STRONG>tgetent</STRONG> returns <STRONG>OK</STRONG> or
-+ 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 returned ever since SVr1. In par-
-+ ticular, 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
-- compatibility with the <EM>termcap</EM> library, that is a defect
-+ compatibility with the <EM>termcap</EM> library, that is a defect
- in XCurses, Issue 4, Version 2 rather than in ncurses.
-
-- External variables are provided for support of certain
-- termcap applications. However, termcap applications' use
-+ External variables are provided for support of certain
-+ termcap applications. However, termcap applications' use
- of those variables is poorly documented, e.g., not distin-
-- guishing between input and output. In particular, some
-+ guishing between input and output. In particular, some
- applications are reported to declare and/or modify <STRONG>ospeed</STRONG>.
-
-+ 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 the trailing NUL for the parameter name. Tak-
-+ ing into account these issues:
-+
-+ <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 description. You should not rely upon
-+ this behavior in portable programs. This implementa-
-+ tion disallows matches against single-character capa-
-+ bility names.
-+
-+ <STRONG>o</STRONG> This implementation disallows matches by the termcap
-+ interface against extended capability names which are
-+ longer than two characters.
-+
-
- </PRE>
- <H2>SEE ALSO</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><A HREF="putc.3.html">putc(3)</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="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>.
-+
-+ http://invisible-island.net/ncurses/tctest.html
-
-
-
-Index: doc/html/man/curs_terminfo.3x.html
---- ncurses-5.9/doc/html/man/curs_terminfo.3x.html 2011-01-09 01:03:15.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_terminfo.3x.html 2013-12-21 21:39:18.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1999-2011,2013 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,12 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_terminfo.3x,v 1.35 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_terminfo.3x,v 1.43 2013/07/20 19:29:59 tom Exp @
-+ * ***************************************************************************
-+ * ***************************************************************************
-+ * ***************************************************************************
-+ * ***************************************************************************
-+ * ***************************************************************************
- -->
- <HTML>
- <HEAD>
-@@ -68,7 +73,7 @@
- <STRONG>int</STRONG> <STRONG>putp(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>vidputs(chtype</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(int));</STRONG>
- <STRONG>int</STRONG> <STRONG>vidattr(chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
-- <STRONG>int</STRONG> <STRONG>vid_puts(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>(*</STRONG><EM>putc</EM><STRONG>)(char));</STRONG>
-+ <STRONG>int</STRONG> <STRONG>vid_puts(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>(*</STRONG><EM>putc</EM><STRONG>)(int));</STRONG>
- <STRONG>int</STRONG> <STRONG>vid_attr(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>mvcur(int</STRONG> <EM>oldrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldcol</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newrow</EM>, int <EM>newcol</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>tigetflag(char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
-@@ -85,38 +90,51 @@
- tion keys. For all other functionality, <STRONG>curses</STRONG> routines
- are more suitable and their use is recommended.
-
-+ <STRONG>Initialization</STRONG>
- Initially, <STRONG>setupterm</STRONG> should be called. Note that <STRONG>se-</STRONG>
- <STRONG>tupterm</STRONG> is automatically called by <STRONG>initscr</STRONG> and <STRONG>newterm</STRONG>.
- This defines the set of terminal-dependent variables
-- [listed in <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>]. The <STRONG>terminfo</STRONG> variables <STRONG>lines</STRONG> and
-- <STRONG>columns</STRONG> are initialized by <STRONG>setupterm</STRONG> as follows:
-+ [listed in <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>].
-
-- If <STRONG>use_env(FALSE)</STRONG> has been called, values for <STRONG>lines</STRONG>
-- and <STRONG>columns</STRONG> specified in <STRONG>terminfo</STRONG> are used.
-+ Each initialization routine provides applications with the
-+ terminal capabilities either directly (via header defini-
-+ tions), or by special functions. The header files <STRONG>curs-</STRONG>
-+ <STRONG>es.h</STRONG> and <STRONG>term.h</STRONG> should be included (in this order) to get
-+ the definitions for these strings, numbers, and flags.
-
-- Otherwise, if the environment variables <STRONG>LINES</STRONG> and
-- <STRONG>COLUMNS</STRONG> exist, their values are used. If these en-
-- vironment variables do not exist and the program is
-- running in a window, the current window size is
-- used. Otherwise, if the environment variables do
-- not exist, the values for <STRONG>lines</STRONG> and <STRONG>columns</STRONG> speci-
-- fied in the <STRONG>terminfo</STRONG> database are used.
--
-- The header files <STRONG>curses.h</STRONG> and <STRONG>term.h</STRONG> should be included
-- (in this order) to get the definitions for these strings,
-- numbers, and flags. Parameterized strings should be
-- passed through <STRONG>tparm</STRONG> to instantiate them. All <STRONG>terminfo</STRONG>
-- strings [including the output of <STRONG>tparm</STRONG>] should be printed
-- with <STRONG>tputs</STRONG> or <STRONG>putp</STRONG>. Call the <STRONG>reset_shell_mode</STRONG> to restore
-- the tty modes before exiting [see <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>]. Pro-
-- grams which use cursor addressing should output <STRONG>en-</STRONG>
-- <STRONG>ter_ca_mode</STRONG> upon startup and should output <STRONG>exit_ca_mode</STRONG>
-- before exiting. Programs desiring shell escapes should
-- call
--
-- <STRONG>reset_shell_mode</STRONG> and output <STRONG>exit_ca_mode</STRONG> before the shell
-- is called and should output <STRONG>enter_ca_mode</STRONG> and call <STRONG>re-</STRONG>
-- <STRONG>set_prog_mode</STRONG> after returning from the shell.
-+ The <STRONG>terminfo</STRONG> variables <STRONG>lines</STRONG> and <STRONG>columns</STRONG> are initialized
-+ by <STRONG>setupterm</STRONG> as follows:
-+
-+ <STRONG>o</STRONG> If <STRONG>use_env(FALSE)</STRONG> has been called, values for <STRONG>lines</STRONG>
-+ and <STRONG>columns</STRONG> specified in <STRONG>terminfo</STRONG> are used.
-+
-+ <STRONG>o</STRONG> Otherwise, if the environment variables <STRONG>LINES</STRONG> and <STRONG>COL-</STRONG>
-+ <STRONG>UMNS</STRONG> exist, their values are used. If these environ-
-+ ment variables do not exist and the program is running
-+ in a window, the current window size is used. Other-
-+ wise, if the environment variables do not exist, the
-+ values for <STRONG>lines</STRONG> and <STRONG>columns</STRONG> specified in the <STRONG>terminfo</STRONG>
-+ database are used.
-+
-+ Parameterized strings should be passed through <STRONG>tparm</STRONG> to
-+ instantiate them. All <STRONG>terminfo</STRONG> strings [including the
-+ output of <STRONG>tparm</STRONG>] should be printed with <STRONG>tputs</STRONG> or <STRONG>putp</STRONG>.
-+ Call <STRONG>reset_shell_mode</STRONG> to restore the tty modes before ex-
-+ iting [see <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>].
-+
-+ Programs which use cursor addressing should
-+
-+ <STRONG>o</STRONG> output <STRONG>enter_ca_mode</STRONG> upon startup and
-+
-+ <STRONG>o</STRONG> output <STRONG>exit_ca_mode</STRONG> before exiting.
-+
-+ Programs which execute shell subprocesses should
-+
-+ <STRONG>o</STRONG> call <STRONG>reset_shell_mode</STRONG> and output <STRONG>exit_ca_mode</STRONG> before
-+ the shell is called and
-+
-+ <STRONG>o</STRONG> output <STRONG>enter_ca_mode</STRONG> and call <STRONG>reset_prog_mode</STRONG> after
-+ returning from the shell.
-
- The <STRONG>setupterm</STRONG> routine reads in the <STRONG>terminfo</STRONG> database, ini-
- tializing the <STRONG>terminfo</STRONG> structures, but does not set up the
-@@ -129,54 +147,74 @@
- <EM>rret</EM>. A return value of <STRONG>OK</STRONG> combined with status of <STRONG>1</STRONG> in
- <EM>errret</EM> is normal. If <STRONG>ERR</STRONG> is returned, examine <EM>errret</EM>:
-
-- <STRONG>1</STRONG> means that the terminal is hardcopy, cannot be
-- used for curses applications.
-+ <STRONG>1</STRONG> means that the terminal is hardcopy, cannot be used
-+ for curses applications.
-+
-+ <STRONG>setupterm</STRONG> determines if the entry is a hardcopy type
-+ by checking the <EM>hc</EM> (<EM>hardcopy</EM>) capability.
-
-- <STRONG>0</STRONG> means that the terminal could not be found, or
-- that it is a generic type, having too little
-- information for curses applications to run.
-+ <STRONG>0</STRONG> means that the terminal could not be found, or that
-+ it is a generic type, having too little information
-+ for curses applications to run.
-
-- <STRONG>-1</STRONG> means that the <STRONG>terminfo</STRONG> database could not be
-- found.
-+ <STRONG>setupterm</STRONG> determines if the entry is a generic type
-+ by checking the <EM>gn</EM> (<EM>generic</EM>) capability.
-
-- If <EM>errret</EM> is null, <STRONG>setupterm</STRONG> prints an error message upon
-+ <STRONG>-1</STRONG> means that the <STRONG>terminfo</STRONG> database could not be found.
-+
-+ If <EM>errret</EM> is null, <STRONG>setupterm</STRONG> prints an error message upon
- finding an error and exits. Thus, the simplest call is:
-
- <STRONG>setupterm((char</STRONG> <STRONG>*)0,</STRONG> <STRONG>1,</STRONG> <STRONG>(int</STRONG> <STRONG>*)0);</STRONG>,
-
-- which uses all the defaults and sends the output to <STRONG>std-</STRONG>
-+ which uses all the defaults and sends the output to <STRONG>std-</STRONG>
- <STRONG>out</STRONG>.
-
-- The <STRONG>setterm</STRONG> routine is being replaced by <STRONG>setupterm</STRONG>. The
-- call:
-+ 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 included here for BSD compatibility,
-- and is not recommended for new programs.
-+ <STRONG>setterm</STRONG> routine is provided for BSD compatibility, and is
-+ not recommended for new programs.
-
-- The <STRONG>set_curterm</STRONG> routine sets the variable <STRONG>cur_term</STRONG> to
-- <EM>nterm</EM>, and makes all of the <STRONG>terminfo</STRONG> boolean, numeric, and
-- string variables use the values from <EM>nterm</EM>. It returns
-- the old value of <STRONG>cur_term</STRONG>.
-+ <STRONG>The</STRONG> <STRONG>Terminal</STRONG> <STRONG>State</STRONG>
-+ The <STRONG>setupterm</STRONG> routine stores its information about the
-+ terminal in a <STRONG>TERMINAL</STRONG> structure pointed to by the global
-+ variable <STRONG>cur_term</STRONG>. If it detects an error, or decides
-+ that the terminal is unsuitable (hardcopy or generic), it
-+ discards this information, making it not available to ap-
-+ plications.
-+
-+ If <STRONG>setupterm</STRONG> is called repeatedly for the same terminal
-+ type, it will reuse the information. It maintains only
-+ one copy of a given terminal's capabilities in memory. If
-+ it is called for different terminal types, <STRONG>setupterm</STRONG> allo-
-+ cates new storage for each set of terminal capabilities.
-+
-+ The <STRONG>set_curterm</STRONG> routine sets <STRONG>cur_term</STRONG> to <EM>nterm</EM>, and makes
-+ all of the <STRONG>terminfo</STRONG> boolean, numeric, and string variables
-+ use the values from <EM>nterm</EM>. It returns the old value of
-+ <STRONG>cur_term</STRONG>.
-
-- The <STRONG>del_curterm</STRONG> routine frees the space pointed to by
-+ The <STRONG>del_curterm</STRONG> routine frees the space pointed to by
- <EM>oterm</EM> and makes it available for further use. If <EM>oterm</EM> is
-- the same as <STRONG>cur_term</STRONG>, references to any of the <STRONG>terminfo</STRONG>
-- boolean, numeric, and string variables thereafter may re-
-- fer to invalid memory locations until another <STRONG>setupterm</STRONG>
-+ the same as <STRONG>cur_term</STRONG>, references to any of the <STRONG>terminfo</STRONG>
-+ boolean, numeric, and string variables thereafter may re-
-+ fer to invalid memory locations until another <STRONG>setupterm</STRONG>
- has been called.
-
- The <STRONG>restartterm</STRONG> routine is similar to <STRONG>setupterm</STRONG> and
-- <STRONG>initscr</STRONG>, except that it is called after restoring memory
-- to a previous state (for example, when reloading a game
-- saved as a core image dump). It assumes that the windows
-- and the input and output options are the same as when mem-
-- ory was saved, but the terminal type and baud rate may be
-- different. Accordingly, it saves various tty state bits,
-- calls <STRONG>setupterm</STRONG>, and then restores the bits.
-+ <STRONG>initscr</STRONG>, except that it is called after restoring memory
-+ to a previous state (for example, when reloading a game
-+ saved as a core image dump). <STRONG>restartterm</STRONG> assumes that the
-+ windows and the input and output options are the same as
-+ when memory was saved, but the terminal type and baud rate
-+ may be different. Accordingly, <STRONG>restartterm</STRONG> saves various
-+ tty state bits, calls <STRONG>setupterm</STRONG>, and then restores the
-+ bits.
-
-+ <STRONG>Formatting</STRONG> <STRONG>Output</STRONG>
- The <STRONG>tparm</STRONG> routine instantiates the string <EM>str</EM> with parame-
- ters <EM>pi</EM>. A pointer is returned to the result of <EM>str</EM> with
- the parameters applied.
-@@ -185,6 +223,7 @@
- rather than a fixed-parameter list. Its numeric parame-
- ters are integers (int) rather than longs.
-
-+ <STRONG>Output</STRONG> <STRONG>Functions</STRONG>
- The <STRONG>tputs</STRONG> routine applies padding information to the
- string <EM>str</EM> and outputs it. The <EM>str</EM> must be a terminfo
- string variable or the return value from <STRONG>tparm</STRONG>, <STRONG>tgetstr</STRONG>,
-@@ -218,36 +257,48 @@
- takes effect immediately (rather than at the next re-
- fresh).
-
-+ <STRONG>Terminal</STRONG> <STRONG>Capability</STRONG> <STRONG>Functions</STRONG>
- 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>cap-</EM>
-- <EM>name</EM> passed to them, such as <STRONG>xenl</STRONG>.
-+ <EM>name</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.
-+
-+ The <STRONG>tigetflag</STRONG> routine returns
-+
-+ <STRONG>-1</STRONG> if <EM>capname</EM> is not a boolean capability, or
-+
-+ <STRONG>0</STRONG> if it is canceled or absent from the terminal de-
-+ scription.
-
-- The <STRONG>tigetflag</STRONG> routine returns the value <STRONG>-1</STRONG> if <EM>capname</EM> is
-- not a boolean capability, or <STRONG>0</STRONG> if it is canceled or absent
-- from the terminal description.
--
-- The <STRONG>tigetnum</STRONG> routine returns the value <STRONG>-2</STRONG> if <EM>capname</EM> is
-- not a numeric capability, or <STRONG>-1</STRONG> if it is canceled or ab-
-- sent from the terminal description.
--
-- The <STRONG>tigetstr</STRONG> routine returns the value <STRONG>(char</STRONG> <STRONG>*)-1</STRONG> if <EM>cap-</EM>
-- <EM>name</EM> is not a string capability, or <STRONG>0</STRONG> if it is canceled or
-- absent from the terminal description.
--
-- The <EM>capname</EM> for each capability is given in the table col-
-- umn entitled <EM>capname</EM> code in the capabilities section of
-- <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
-+ The <STRONG>tigetnum</STRONG> routine returns
-
-+ <STRONG>-2</STRONG> if <EM>capname</EM> is not a numeric capability, or
-+
-+ <STRONG>-1</STRONG> if it is canceled or absent from the terminal de-
-+ scription.
-+
-+ The <STRONG>tigetstr</STRONG> routine returns
-+
-+ <STRONG>(char</STRONG> <STRONG>*)-1</STRONG>
-+ if <EM>capname</EM> is not a string capability, or
-+
-+ <STRONG>0</STRONG> if it is canceled or absent from the terminal de-
-+ scription.
-+
-+ <STRONG>Terminal</STRONG> <STRONG>Capability</STRONG> <STRONG>Names</STRONG>
-+ These null-terminated arrays contain the short terminfo
-+ names ("codes"), the <STRONG>termcap</STRONG> names, and the long terminfo
-+ names ("fnames") for each of the predefined <STRONG>terminfo</STRONG> vari-
-+ ables:
- <STRONG>char</STRONG> <STRONG>*boolnames[]</STRONG>, <STRONG>*boolcodes[]</STRONG>, <STRONG>*boolfnames[]</STRONG>
-
- <STRONG>char</STRONG> <STRONG>*numnames[]</STRONG>, <STRONG>*numcodes[]</STRONG>, <STRONG>*numfnames[]</STRONG>
-
- <STRONG>char</STRONG> <STRONG>*strnames[]</STRONG>, <STRONG>*strcodes[]</STRONG>, <STRONG>*strfnames[]</STRONG>
-
-- These null-terminated arrays contain the <EM>capnames</EM>, the
-- <STRONG>termcap</STRONG> codes, and the full C names, for each of the <STRONG>ter-</STRONG>
-- <STRONG>minfo</STRONG> variables.
--
-
- </PRE>
- <H2>RETURN VALUE</H2><PRE>
-@@ -261,49 +312,64 @@
- X/Open defines no error conditions. In this implementa-
- tion
-
-- <STRONG>del_curterm</STRONG>
-- returns an error if its terminal parameter is
-- null.
--
-- <STRONG>putp</STRONG> calls <STRONG>tputs</STRONG>, returning the same error-codes.
--
-- <STRONG>restartterm</STRONG>
-- returns an error if the associated call to <STRONG>se-</STRONG>
-- <STRONG>tupterm</STRONG> returns an error.
--
-- <STRONG>setupterm</STRONG>
-- returns an error if it cannot allocate enough
-- memory, or create the initial windows (stdscr,
-- curscr, newscr). Other error conditions 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 value of
-- the output function <EM>putc</EM>.
--
--
--</PRE>
--<H2>NOTES</H2><PRE>
-- The <STRONG>setupterm</STRONG> routine should be used in place of <STRONG>setterm</STRONG>.
-- It may be useful when you want to test for terminal capa-
-- bilities without committing to the allocation of storage
-- involved in <STRONG>initscr</STRONG>.
--
-- Note that <STRONG>vidattr</STRONG> and <STRONG>vidputs</STRONG> may be macros.
-+ <STRONG>del_curterm</STRONG>
-+ returns an error if its terminal parameter is
-+ null.
-+
-+ <STRONG>putp</STRONG> calls <STRONG>tputs</STRONG>, returning the same error-codes.
-+
-+ <STRONG>restartterm</STRONG>
-+ returns an error if the associated call to <STRONG>se-</STRONG>
-+ <STRONG>tupterm</STRONG> returns an error.
-+
-+ <STRONG>setupterm</STRONG>
-+ returns an error if it cannot allocate enough
-+ memory, or create the initial windows (stdscr,
-+ curscr, newscr). Other error conditions 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 value of
-+ the output function <EM>putc</EM>.
-
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- The function <STRONG>setterm</STRONG> is not described by X/Open and must
-- be considered non-portable. All other functions are as
-+ 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 non-portable. All other functions are as
- described by X/Open.
-
-- <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
-+ <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.
-
-+ 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 value "unknown".
-+
-+ <STRONG>o</STRONG> <STRONG>setupterm</STRONG> allows explicit use of the the windows con-
-+ sole driver by checking if $TERM is set to "#win32con"
-+ or an abbreviation of that string.
-+
-+ 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 ad-
-+ dition to the limitation that the terminal was left in
-+ block-buffered mode on exit (like SystemV curses), it was
-+ problematic because <STRONG>ncurses</STRONG> did not allow a reliable way
-+ to cleanup on receiving SIGTSTP. The current version 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-
-+ level functions in <STRONG>ncurses</STRONG> use alternate versions of these
-+ functions using the more reliable buffering scheme.
-+
- 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.
-@@ -323,12 +389,12 @@
- zeroes are fine for this purpose.
-
- In response to comments by Thomas E. Dickey, X/Open Curses
-- Issue 7 proposed the <STRONG>tiparam</STRONG> function in mid-2009.
-+ Issue 7 proposed the <STRONG>tiparm</STRONG> function in mid-2009.
-
- X/Open notes that after calling <STRONG>mvcur</STRONG>, the curses state
- may not match the actual terminal state, and that an ap-
- plication should touch and refresh the window before re-
-- suming normal curses calls. Both ncurses and System V Re-
-+ suming normal curses calls. Both <STRONG>ncurses</STRONG> and System V Re-
- lease 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 docu-
- mented as a terminfo function, <STRONG>mvcur</STRONG> is really a curses
-@@ -339,15 +405,18 @@
- for the old ordinates. In that case, the old location is
- unknown.
-
-+ 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 stored in the arrays described in this
-- section.
-+ <STRONG>tic</STRONG> <STRONG>-x</STRONG>, are not stored in the arrays described here.
-
-
- </PRE>
- <H2>SEE ALSO</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>curs_term-</STRONG>
-- <STRONG><A HREF="curs_termcap.3x.html">cap(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><A HREF="putc.3.html">putc(3)</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>curs_term-</STRONG>
-+ <STRONG><A HREF="curs_termcap.3x.html">cap(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>
-
-
-Index: doc/html/man/curs_threads.3x.html
---- ncurses-5.9/doc/html/man/curs_threads.3x.html 2011-01-09 01:03:15.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_threads.3x.html 2014-05-24 22:05:37.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2012,2014 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_threads.3x,v 1.18 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_threads.3x,v 1.20 2014/03/15 19:25:28 tom Exp @
- * ***************************************************************************
- * ***************************************************************************
- -->
-@@ -61,9 +61,9 @@
- <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_WINDOW_CB</STRONG> <STRONG>func,</STRONG> <STRONG>void</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_SCREEN_CB</STRONG> <STRONG>func,</STRONG> <STRONG>void</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>
-
-
-@@ -552,6 +552,7 @@
- wget_wstr screen (input-operation)
- wgetbkgrnd window
- wgetch screen (input-operation)
-+ wgetdelay window
- wgetn_wstr screen (input-operation)
- wgetnstr screen (input-operation)
- wgetparent window
-@@ -582,8 +583,8 @@
- wnoutrefresh screen
- wprintw window
- wredrawln window
-- wrefresh screen
-
-+ wrefresh screen
- wresize window locks(windowlist)
- wscanw screen
- wscrl window
-Index: doc/html/man/curs_touch.3x.html
---- ncurses-5.9/doc/html/man/curs_touch.3x.html 2011-01-09 01:03:15.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_touch.3x.html 2013-05-17 22:24:20.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_trace.3x.html
---- ncurses-5.9/doc/html/man/curs_trace.3x.html 2011-01-09 01:03:16.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_trace.3x.html 2013-05-17 22:24:20.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 2000-2009,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/curs_util.3x.html
---- ncurses-5.9/doc/html/man/curs_util.3x.html 2011-02-25 23:24:59.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_util.3x.html 2013-12-21 19:55:44.000000000 +0000
-@@ -1,7 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
-+ * t
- ****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_util.3x,v 1.32 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_util.3x,v 1.37 2013/07/20 19:43:45 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -48,8 +49,8 @@
- </PRE>
- <H2>NAME</H2><PRE>
- <STRONG>delay_output</STRONG>, <STRONG>filter</STRONG>, <STRONG>flushinp</STRONG>, <STRONG>getwin</STRONG>, <STRONG>key_name</STRONG>, <STRONG>keyname</STRONG>,
-- <STRONG>nofilter</STRONG>, <STRONG>putwin</STRONG>, <STRONG>unctrl</STRONG>, <STRONG>use_env</STRONG>, <STRONG>wunctrl</STRONG> - miscellaneous
-- <STRONG>curses</STRONG> utility routines
-+ <STRONG>nofilter</STRONG>, <STRONG>putwin</STRONG>, <STRONG>unctrl</STRONG>, <STRONG>use_env</STRONG>, <STRONG>use_tioctl</STRONG>, <STRONG>wunctrl</STRONG> -
-+ miscellaneous <STRONG>curses</STRONG> utility routines
-
-
- </PRE>
-@@ -63,6 +64,7 @@
- <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>
-@@ -122,16 +124,66 @@
- <STRONG>$TERM</STRONG>. The limitation arises because the <STRONG>filter</STRONG> routine
- modifies the in-memory copy of the terminal information.
-
-- The <STRONG>use_env</STRONG> routine, if used, is called before <STRONG>initscr</STRONG> or
-- <STRONG>newterm</STRONG> are called. When called with <STRONG>FALSE</STRONG> as an argu-
-- ment, the values of <STRONG>lines</STRONG> and <STRONG>columns</STRONG> specified in the
-- <EM>terminfo</EM> database will be used, even if environment vari-
-- ables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> (used by default) are set, or if
-- <STRONG>curses</STRONG> is running in a window (in which case default be-
-- havior would be to use the window size if <STRONG>LINES</STRONG> and
-- <STRONG>COLUMNS</STRONG> are not set). Note that setting <STRONG>LINES</STRONG> or <STRONG>COLUMNS</STRONG>
-- overrides the corresponding size which may be obtained
-- from the operating system.
-+ The <STRONG>use_env</STRONG> routine, if used, should be called before
-+ <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> are called (because those compute the
-+ screen size). It modifies the way <STRONG>ncurses</STRONG> treats environ-
-+ ment variables when determining the screen size.
-+
-+ <STRONG>o</STRONG> Normally ncurses looks first at the terminal database
-+ for the screen size.
-+
-+ If <STRONG>use_env</STRONG> was called with <STRONG>FALSE</STRONG> for parameter, it
-+ stops here unless If <STRONG>use_tioctl</STRONG> was also called with
-+ <STRONG>TRUE</STRONG> for parameter.
-+
-+ <STRONG>o</STRONG> Then it asks for the screen size via operating system
-+ calls. If successful, it overrides the values from
-+ the terminal database.
-+
-+ <STRONG>o</STRONG> Finally (unless <STRONG>use_env</STRONG> was called with <STRONG>FALSE</STRONG> parame-
-+ ter), ncurses examines the <STRONG>LINES</STRONG> or <STRONG>COLUMNS</STRONG> environ-
-+ ment variables, using a value in those to override the
-+ results from the operating system or terminal data-
-+ base.
-+
-+ Ncurses also updates the screen size in response to
-+ SIGWINCH, unless overridden by the <STRONG>LINES</STRONG> or <STRONG>COLUMNS</STRONG>
-+ environment variables,
-+
-+ The <STRONG>use_tioctl</STRONG> routine, if used, should be called before
-+ <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> are called (because those compute the
-+ screen size). After <STRONG>use_tioctl</STRONG> is called with <STRONG>TRUE</STRONG> as an
-+ argument, ncurses modifies the last step in its computa-
-+ tion of screen size as follows:
-+
-+ <STRONG>o</STRONG> checks if the <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> environment variables
-+ are set to a number greater than zero.
-+
-+ <STRONG>o</STRONG> for each, ncurses updates the corresponding environ-
-+ ment variable with the value that it has obtained via
-+ operating system call or from the terminal database.
-+
-+ <STRONG>o</STRONG> ncurses re-fetches the value of the environment vari-
-+ ables so that it is still the environment variables
-+ which set the screen size.
-+
-+ The <STRONG>use_env</STRONG> and <STRONG>use_tioctl</STRONG> routines combine as summarized
-+ here:
-+
-+ <EM>use</EM><STRONG>_</STRONG><EM>env</EM> <EM>use</EM><STRONG>_</STRONG><EM>tioctl</EM> <EM>Summary</EM>
-+ ----------------------------------------------------------------
-+ TRUE FALSE This is the default behavior. ncurses
-+ uses operating system calls unless over-
-+ ridden by $LINES or $COLUMNS environment
-+ variables.
-+ TRUE TRUE ncurses updates $LINES and $COLUMNS
-+ based on operating system calls.
-+
-+ FALSE TRUE ncurses ignores $LINES and $COLUMNS, us-
-+ es operating system calls to obtain
-+ size.
-+ FALSE FALSE ncurses relies on the terminal database
-+ to determine size.
-
- The <STRONG>putwin</STRONG> routine writes all data associated with window
- <EM>win</EM> into the file to which <EM>filep</EM> points. This information
-@@ -191,60 +243,60 @@
- control code. If <STRONG>use_legacy_coding</STRONG> has been called
- with a <STRONG>2</STRONG> parameter, <STRONG>unctrl</STRONG> returns the parameter,
- i.e., a one-character string with the parameter as
-- the first character. Otherwise, it returns ``~@'',
-- ``~A'', etc., analogous to ``^@'', ``^A'', C0 con-
-- trols.
--
-- X/Open Curses does not document whether <STRONG>unctrl</STRONG> can
-- be called before initializing curses. This imple-
-- mentation permits that, and returns the ``~@'',
-- etc., values in that case.
-+ the first character. Otherwise, it returns "~@",
-+ "~A", etc., analogous to "^@", "^A", C0 controls.
-
-- <STRONG>o</STRONG> parameter values outside the 0 to 255 range. <STRONG>unc-</STRONG>
-+ X/Open Curses does not document whether <STRONG>unctrl</STRONG> can
-+ be called before initializing curses. This imple-
-+ mentation permits that, and returns the "~@", etc.,
-+ values in that case.
-+
-+ <STRONG>o</STRONG> parameter values outside the 0 to 255 range. <STRONG>unc-</STRONG>
- <STRONG>trl</STRONG> returns a null pointer.
-
- The SVr4 documentation describes the action of <STRONG>filter</STRONG> only
-- in the vaguest terms. The description here is adapted
-- from the XSI Curses standard (which erroneously fails to
-+ in the vaguest terms. The description here is adapted
-+ from the XSI Curses standard (which erroneously fails to
- describe the disabling of <STRONG>cuu</STRONG>).
-
-- The strings returned by <STRONG>unctrl</STRONG> in this implementation are
-- determined at compile time, showing C1 controls from the
-- upper-128 codes with a `~' prefix rather than `^'. Other
-- implementations have different conventions. For example,
-- they may show both sets of control characters with `^',
-- and strip the parameter to 7 bits. Or they may ignore C1
-- controls and treat all of the upper-128 codes as print-
-+ The strings returned by <STRONG>unctrl</STRONG> in this implementation are
-+ determined at compile time, showing C1 controls from the
-+ upper-128 codes with a `~' prefix rather than `^'. Other
-+ implementations have different conventions. For example,
-+ they may show both sets of control characters with `^',
-+ and strip the parameter to 7 bits. Or they may ignore C1
-+ controls and treat all of the upper-128 codes as print-
- able. This implementation uses 8 bits but does not modify
- the string to reflect locale. The <STRONG>use_legacy_coding</STRONG> func-
- tion allows the caller to change the output of <STRONG>unctrl</STRONG>.
-
-- Likewise, the <STRONG>meta</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 af-
-- ter curses is initialized. X/Open Curses does not docu-
-- ment the treatment of codes 128 to 159. When treating
-- them as ``meta'' keys (or if <STRONG>keyname</STRONG> is called before ini-
-- tializing curses), this implementation returns strings
-- ``M-^@'', ``M-^A'', etc.
--
-- The <STRONG>keyname</STRONG> function may return the names of user-defined
-- string capabilities which are defined in the terminfo en-
-- try via the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>. This implementation auto-
-- matically assigns at run-time keycodes to user-defined
-- strings which begin with "k". The keycodes start at
-- KEY_MAX, but are not guaranteed to be the same value for
-- different runs because user-defined codes are merged from
-- all terminal descriptions which have been loaded. The
-- <STRONG>use_extended_names</STRONG> function controls whether this data is
-- loaded when the terminal description is read by the li-
-+ Likewise, the <STRONG>meta</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.
-+
-+ The <STRONG>keyname</STRONG> function may return the names of user-defined
-+ string capabilities which are defined in the terminfo en-
-+ try via the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>. This implementation auto-
-+ matically assigns at run-time keycodes to user-defined
-+ strings which begin with "k". The keycodes start at
-+ KEY_MAX, but are not guaranteed to be the same value for
-+ different runs because user-defined codes are merged from
-+ all terminal descriptions which have been loaded. The
-+ <STRONG>use_extended_names</STRONG> function controls whether this data is
-+ loaded when the terminal description is read by the li-
- brary.
-
-- The <STRONG>nofilter</STRONG> routine is specific to ncurses. It was not
-- supported on Version 7, BSD or System V implementations.
-- It is recommended that any code depending on ncurses ex-
-- tensions be conditioned using NCURSES_VERSION.
-+ The <STRONG>nofilter</STRONG> and <STRONG>use_tioctl</STRONG> routines are specific to
-+ ncurses. They were 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.
-
-
- </PRE>
-Index: doc/html/man/curs_variables.3x.html
---- ncurses-5.9/doc/html/man/curs_variables.3x.html 2011-01-09 01:03:16.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_variables.3x.html 2013-12-21 21:59:38.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2010,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_variables.3x,v 1.4 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_variables.3x,v 1.6 2013/12/21 18:41:32 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -73,10 +73,10 @@
- <STRONG><A HREF="ncurses.3x.html">es(3x)</A></STRONG> manual page.
-
- Depending on the configuration, these may be actual vari-
-- ables, or macros (see <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>) which provide
-- read-only access to <EM>curses</EM>'s state. In either case, ap-
-- plications should treat them as read-only to avoid confus-
-- ing the library.
-+ ables, or macros (see <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> and
-+ <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>) which provide read-only access to <EM>curs-</EM>
-+ <EM>es</EM>'s state. In either case, applications should treat
-+ them as read-only to avoid confusing the library.
-
- <STRONG>COLOR_PAIRS</STRONG>
- After initializing curses, this variable contains the num-
-@@ -133,7 +133,7 @@
- </PRE>
- <H2>NOTES</H2><PRE>
- The curses library is initialized using either
-- <STRONG><A HREF="initscr.3x.html">initscr(3x)</A></STRONG>, or <STRONG><A HREF="newterm.3x.html">newterm(3x)</A></STRONG>.
-+ <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, or <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>.
-
- If <STRONG>curses</STRONG> is configured to use separate curses/terminfo
- libraries, most of these variables reside in the curses
-@@ -148,8 +148,8 @@
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG>termin-</STRONG>
-- <STRONG><A HREF="terminfo.3x.html">fo(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
-+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,
-+ <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
-
-
-
-Index: doc/html/man/curs_window.3x.html
---- ncurses-5.9/doc/html/man/curs_window.3x.html 2011-01-09 01:03:17.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/curs_window.3x.html 2014-05-24 22:05:37.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2014 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: curs_window.3x,v 1.17 2010/12/04 18:38:55 tom Exp @
-+ * @Id: curs_window.3x,v 1.18 2014/03/01 23:36:38 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -56,13 +56,16 @@
- <H2>SYNOPSIS</H2><PRE>
- <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
-
-- <STRONG>WINDOW</STRONG> <STRONG>*newwin(int</STRONG> <STRONG>nlines,</STRONG> <STRONG>int</STRONG> <STRONG>ncols,</STRONG> <STRONG>int</STRONG> <STRONG>begin_y,</STRONG>
-- <STRONG>int</STRONG> <STRONG>begin_x);</STRONG>
-+ <STRONG>WINDOW</STRONG> <STRONG>*newwin(</STRONG>
-+ <STRONG>int</STRONG> <STRONG>nlines,</STRONG> <STRONG>int</STRONG> <STRONG>ncols,</STRONG>
-+ <STRONG>int</STRONG> <STRONG>begin_y,</STRONG> <STRONG>int</STRONG> <STRONG>begin_x);</STRONG>
- <STRONG>int</STRONG> <STRONG>delwin(WINDOW</STRONG> <STRONG>*win);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvwin(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x);</STRONG>
-- <STRONG>WINDOW</STRONG> <STRONG>*subwin(WINDOW</STRONG> <STRONG>*orig,</STRONG> <STRONG>int</STRONG> <STRONG>nlines,</STRONG> <STRONG>int</STRONG> <STRONG>ncols,</STRONG>
-+ <STRONG>WINDOW</STRONG> <STRONG>*subwin(WINDOW</STRONG> <STRONG>*orig,</STRONG>
-+ <STRONG>int</STRONG> <STRONG>nlines,</STRONG> <STRONG>int</STRONG> <STRONG>ncols,</STRONG>
- <STRONG>int</STRONG> <STRONG>begin_y,</STRONG> <STRONG>int</STRONG> <STRONG>begin_x);</STRONG>
-- <STRONG>WINDOW</STRONG> <STRONG>*derwin(WINDOW</STRONG> <STRONG>*orig,</STRONG> <STRONG>int</STRONG> <STRONG>nlines,</STRONG> <STRONG>int</STRONG> <STRONG>ncols,</STRONG>
-+ <STRONG>WINDOW</STRONG> <STRONG>*derwin(WINDOW</STRONG> <STRONG>*orig,</STRONG>
-+ <STRONG>int</STRONG> <STRONG>nlines,</STRONG> <STRONG>int</STRONG> <STRONG>ncols,</STRONG>
- <STRONG>int</STRONG> <STRONG>begin_y,</STRONG> <STRONG>int</STRONG> <STRONG>begin_x);</STRONG>
- <STRONG>int</STRONG> <STRONG>mvderwin(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>par_y,</STRONG> <STRONG>int</STRONG> <STRONG>par_x);</STRONG>
- <STRONG>WINDOW</STRONG> <STRONG>*dupwin(WINDOW</STRONG> <STRONG>*win);</STRONG>
-@@ -76,10 +79,16 @@
- <H2>DESCRIPTION</H2><PRE>
- Calling <STRONG>newwin</STRONG> creates and returns a pointer to a new win-
- dow with the given number of lines and columns. The upper
-- left-hand corner of the window is at line <EM>begin</EM>_<EM>y</EM>, column
-- <EM>begin</EM>_<EM>x</EM>. If either <EM>nlines</EM> or <EM>ncols</EM> is zero, they default
-- to <STRONG>LINES</STRONG> <STRONG>-</STRONG> <EM>begin</EM>_<EM>y</EM> and <STRONG>COLS</STRONG> <STRONG>-</STRONG> <EM>begin</EM>_<EM>x</EM>. A new full-screen
-- window is created by calling <STRONG>newwin(0,0,0,0)</STRONG>.
-+ left-hand corner of the window is at
-+ line <EM>begin</EM>_<EM>y</EM>,
-+ column <EM>begin</EM>_<EM>x</EM>
-+
-+ If either <EM>nlines</EM> or <EM>ncols</EM> is zero, they default to
-+ <STRONG>LINES</STRONG> <STRONG>-</STRONG> <EM>begin</EM>_<EM>y</EM> and
-+ <STRONG>COLS</STRONG> <STRONG>-</STRONG> <EM>begin</EM>_<EM>x</EM>.
-+
-+ A new full-screen window is created by calling
-+ <STRONG>newwin(0,0,0,0)</STRONG>.
-
- Calling <STRONG>delwin</STRONG> deletes the named window, freeing all memo-
- ry associated with it (it does not actually erase the win-
-@@ -95,13 +104,11 @@
- Calling <STRONG>subwin</STRONG> creates and returns a pointer to a new win-
- dow with the given number of lines, <EM>nlines</EM>, and columns,
- <EM>ncols</EM>. The window is at position (<EM>begin</EM>_<EM>y</EM>, <EM>begin</EM>_<EM>x</EM>) on
-- the screen. (This position is relative to the screen, and
-- not to the window <EM>orig</EM>.) The window is made in the middle
-- of the window <EM>orig</EM>, so that changes made to one window
-- will affect both windows. The subwindow shares memory
-- with the window <EM>orig</EM>. When using this routine, it is nec-
-- essary to call <STRONG>touchwin</STRONG> or <STRONG>touchline</STRONG> on <EM>orig</EM> before call-
-- ing <STRONG>wrefresh</STRONG> on the subwindow.
-+ the screen. The subwindow shares memory with the window
-+ <EM>orig</EM>, so that changes made to one window will affect both
-+ windows. When using this routine, it is necessary to call
-+ <STRONG>touchwin</STRONG> or <STRONG>touchline</STRONG> on <EM>orig</EM> before calling <STRONG>wrefresh</STRONG> on
-+ the subwindow.
-
- Calling <STRONG>derwin</STRONG> is the same as calling <STRONG>subwin,</STRONG> except that
- <EM>begin</EM>_<EM>y</EM> and <EM>begin</EM>_<EM>x</EM> are relative to the origin of the win-
-@@ -143,30 +150,50 @@
- X/Open defines no error conditions. In this implementa-
- tion
-
-- <STRONG>delwin</STRONG>
-- returns an error if the window pointer is
-- null, or if the window is the parent of anoth-
-- er window.
--
-- This implementation also maintains a list of
-- windows, and checks that the pointer passed to
-- <STRONG>delwin</STRONG> is one that it created, returning an
-- error if it was not..
--
-- <STRONG>mvderwin</STRONG>
-- returns an error if the window pointer is
-- null, or if some part of the window would be
-- placed off-screen.
--
-- <STRONG>mvwin</STRONG>
-- returns an error if the window pointer is
-- null, or if the window is really a pad, or if
-- some part of the window would be placed off-
-- screen.
--
-- <STRONG>syncok</STRONG>
-- returns an error if the window pointer is
-- null.
-+ <STRONG>delwin</STRONG>
-+ returns an error if the window pointer is null, or if
-+ the window is the parent of another window.
-+
-+ <STRONG>derwin</STRONG>
-+ returns an error if the parent window pointer is
-+ null, or if any of its ordinates or dimensions is
-+ negative, or if the resulting window does not fit in-
-+ side the parent window.
-+
-+ <STRONG>dupwin</STRONG>
-+ returns an error if the window pointer is null.
-+
-+ This implementation also maintains a list of windows,
-+ and checks that the pointer passed to <STRONG>delwin</STRONG> is one
-+ that it created, returning an error if it was not..
-+
-+ <STRONG>mvderwin</STRONG>
-+ returns an error if the window pointer is null, or if
-+ some part of the window would be placed off-screen.
-+
-+ <STRONG>mvwin</STRONG>
-+ returns an error if the window pointer is null, or if
-+ the window is really a pad, or if some part of the
-+ window would be placed off-screen.
-+
-+ <STRONG>newwin</STRONG>
-+ will fail if either of its beginning ordinates is
-+ negative, or if either the number of lines or columns
-+ is negative.
-+
-+ <STRONG>syncok</STRONG>
-+ returns an error if the window pointer is null.
-+
-+ <STRONG>subwin</STRONG>
-+ returns an error if the parent window pointer is
-+ null, or if any of its ordinates or dimensions is
-+ negative, or if the resulting window does not fit in-
-+ side the parent window.
-+
-+ The functions which return a window pointer may also fail
-+ if there is insufficient memory for its data structures.
-+ Any of these functions will fail if the screen has not
-+ been initialized, i.e., with <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>.
-
-
- </PRE>
-Index: doc/html/man/default_colors.3x.html
---- ncurses-5.9/doc/html/man/default_colors.3x.html 2011-01-09 01:03:17.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/default_colors.3x.html 2013-12-21 21:39:18.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-@@ -159,7 +159,7 @@
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG><A HREF="ded.1.html">ded(1)</A></STRONG>.
-+ <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>, <STRONG>ded(1)</STRONG>.
-
-
- </PRE>
-Index: doc/html/man/define_key.3x.html
---- ncurses-5.9/doc/html/man/define_key.3x.html 2011-01-09 01:03:17.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/define_key.3x.html 2013-05-17 22:24:20.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/form.3x.html
---- ncurses-5.9/doc/html/man/form.3x.html 2011-04-04 22:46:40.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form.3x.html 2014-08-16 20:43:11.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2014 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: form.3x,v 1.24 2010/12/04 18:40:45 tom Exp @
-+ * @Id: form.3x,v 1.25 2014/08/16 20:31:45 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -213,37 +213,34 @@
-
-
- </PRE>
--<H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for
-- detailed descriptions of the entry points.
--
--
--</PRE>
- <H2>NOTES</H2><PRE>
- 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 libn-
-+ In your library list, libform.a should be before libn-
- curses.a; that is, you want to say `-lform -lncurses', not
-- the other way around (which would give you a link error
-+ the other way around (which would give you a link error
- using most linkers).
-
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- These routines emulate the System V forms library. They
-+ These routines emulate the System V forms library. They
- were not supported on Version 7 or BSD versions.
-
-
- </PRE>
- <H2>AUTHORS</H2><PRE>
-- Juergen Pfeifer. Manual pages and adaptation for ncurses
-+ Juergen Pfeifer. Manual pages and adaptation for ncurses
- by Eric S. Raymond.
-
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ <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 5.9 (patch 20140816).
-
-
-
-Index: doc/html/man/form_cursor.3x.html
---- ncurses-5.9/doc/html/man/form_cursor.3x.html 2011-01-09 01:03:17.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_cursor.3x.html 2013-05-17 22:24:20.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_data.3x.html
---- ncurses-5.9/doc/html/man/form_data.3x.html 2011-01-09 01:03:18.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_data.3x.html 2013-05-17 22:24:20.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_driver.3x.html
---- ncurses-5.9/doc/html/man/form_driver.3x.html 2011-01-09 01:03:18.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_driver.3x.html 2013-12-21 21:59:38.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-@@ -342,7 +342,7 @@
-
- </PRE>
- <H2>SEE ALSO</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="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_variables.3x.html">form_variables(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>.
-
-
- </PRE>
-Index: doc/html/man/form_field.3x.html
---- ncurses-5.9/doc/html/man/form_field.3x.html 2011-01-09 01:03:18.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_field.3x.html 2013-05-17 22:24:20.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: form_field.3x,v 1.10 2010/12/04 18:40:45 tom Exp @
-+ * @Id: form_field.3x,v 1.11 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -78,7 +78,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- The function <STRONG>form_fields</STRONG> returns a pointer (which may be
- <STRONG>NULL</STRONG>). It does not set errno.
-
-Index: doc/html/man/form_field_attributes.3x.html
---- ncurses-5.9/doc/html/man/form_field_attributes.3x.html 2011-01-09 01:03:18.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_field_attributes.3x.html 2013-05-17 22:24:20.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_field_buffer.3x.html
---- ncurses-5.9/doc/html/man/form_field_buffer.3x.html 2011-02-25 23:25:01.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_field_buffer.3x.html 2013-05-17 22:24:20.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-@@ -151,8 +151,8 @@
- When configured for wide characters, <STRONG>field_buffer</STRONG> returns
- a pointer to 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>.
-+ the data. It will be freed on the next call to <STRONG>field_buf-</STRONG>
-+ <STRONG>fer</STRONG> to return the same buffer. <STRONG>&lt;curses.h&gt;</STRONG>.
-
-
- </PRE>
-Index: doc/html/man/form_field_info.3x.html
---- ncurses-5.9/doc/html/man/form_field_info.3x.html 2011-01-09 01:03:19.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_field_info.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_field_just.3x.html
---- ncurses-5.9/doc/html/man/form_field_just.3x.html 2011-01-09 01:03:19.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_field_just.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_field_new.3x.html
---- ncurses-5.9/doc/html/man/form_field_new.3x.html 2011-01-09 01:03:19.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_field_new.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_field_opts.3x.html
---- ncurses-5.9/doc/html/man/form_field_opts.3x.html 2011-01-09 01:03:19.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_field_opts.3x.html 2014-08-09 21:01:53.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2014 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: form_field_opts.3x,v 1.16 2010/12/04 18:41:07 tom Exp @
-+ * @Id: form_field_opts.3x,v 1.17 2014/07/26 21:21:57 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -75,11 +75,8 @@
- The function <STRONG>field_opts</STRONG> returns the field's current option
- bits.
-
-- The following options are defined (all are on by default):
--
-- O_VISIBLE
-- The field is displayed. If this option is off, dis-
-- play of the field is suppressed.
-+ The following standard options are defined (all are on by
-+ default):
-
- O_ACTIVE
- The field is visited during processing. If this
-@@ -87,43 +84,54 @@
- navigation keys. Please notice that an invisible
- field appears to be inactive also.
-
-- O_PUBLIC
-- The field contents are displayed as data is entered.
--
-- O_EDIT
-- The field can be edited.
--
-- O_WRAP
-- Words that do not fit on a line are wrapped to the
-- next line. Words are blank-separated.
-+ O_AUTOSKIP
-+ Skip to the next field when this one fills.
-
- O_BLANK
-- The field is cleared whenever a character is entered
-+ The field is cleared whenever a character is entered
- at the first position.
-
-- O_AUTOSKIP
-- Skip to the next field when this one fills.
-+ O_EDIT
-+ The field can be edited.
-
- O_NULLOK
- Allow a blank field.
-
-+ O_PASSOK
-+ Validate field only if modified by user.
-+
-+ O_PUBLIC
-+ The field contents are displayed as data is entered.
-+
- O_STATIC
-- Field buffers are fixed to field's original size.
-+ Field buffers are fixed to field's original size.
- Turn this option off to create a dynamic field.
-
-- O_PASSOK
-- Validate field only if modified by user.
-+ O_VISIBLE
-+ The field is displayed. If this option is off, dis-
-+ play of the field is suppressed.
-+
-+ O_WRAP
-+ Words that do not fit on a line are wrapped to the
-+ next line. Words are blank-separated.
-+
-+ One extension option is defined (extensions are off by
-+ default):
-+
-+ O_DYNAMIC_JUSTIFY
-+ Permit dynamic fields to be justified, like static
-+ fields.
-
-
- </PRE>
- <H2>RETURN VALUE</H2><PRE>
-- Except for <STRONG>field_opts</STRONG>, each routine returns one of the
-+ Except for <STRONG>field_opts</STRONG>, each routine returns one of the
- following:
-
- <STRONG>E_OK</STRONG> The routine succeeded.
-
- <STRONG>E_BAD_ARGUMENT</STRONG>
-- Routine detected an incorrect or out-of-range argu-
-+ Routine detected an incorrect or out-of-range argu-
- ment.
-
- <STRONG>E_CURRENT</STRONG>
-@@ -135,7 +143,7 @@
-
- </PRE>
- <H2>SEE ALSO</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_just.3x.html">form_field_just(3x)</A></STRONG>.
-
-
- </PRE>
-@@ -146,13 +154,13 @@
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- These routines emulate the System V forms library. They
-+ These routines emulate the System V forms library. They
- were not supported on Version 7 or BSD versions.
-
-
- </PRE>
- <H2>AUTHORS</H2><PRE>
-- Juergen Pfeifer. Manual pages and adaptation for new
-+ Juergen Pfeifer. Manual pages and adaptation for new
- curses by Eric S. Raymond.
-
-
-Index: doc/html/man/form_field_userptr.3x.html
---- ncurses-5.9/doc/html/man/form_field_userptr.3x.html 2011-01-09 01:03:20.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_field_userptr.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_field_validation.3x.html
---- ncurses-5.9/doc/html/man/form_field_validation.3x.html 2011-01-09 01:03:20.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_field_validation.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/form_fieldtype.3x.html
---- ncurses-5.9/doc/html/man/form_fieldtype.3x.html 2011-02-25 23:25:02.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_fieldtype.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-@@ -112,8 +112,8 @@
- <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> func-
-- tion allows forms programmers to define successor and
-- predecessor functions for the field type. These functions
-+ tion allows forms programmers to define successor and pre-
-+ decessor functions for the field type. These functions
- take the field pointer and an argument-block structure as
- arguments.
-
-Index: doc/html/man/form_hook.3x.html
---- ncurses-5.9/doc/html/man/form_hook.3x.html 2011-01-09 01:03:20.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_hook.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_new.3x.html
---- ncurses-5.9/doc/html/man/form_new.3x.html 2011-01-09 01:03:20.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_new.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_new_page.3x.html
---- ncurses-5.9/doc/html/man/form_new_page.3x.html 2011-01-09 01:03:20.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_new_page.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_opts.3x.html
---- ncurses-5.9/doc/html/man/form_opts.3x.html 2011-01-09 01:03:21.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_opts.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_page.3x.html
---- ncurses-5.9/doc/html/man/form_page.3x.html 2011-01-09 01:03:21.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_page.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_post.3x.html
---- ncurses-5.9/doc/html/man/form_post.3x.html 2011-01-09 01:03:21.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_post.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_requestname.3x.html
---- ncurses-5.9/doc/html/man/form_requestname.3x.html 2011-01-09 01:03:21.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_requestname.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_userptr.3x.html
---- ncurses-5.9/doc/html/man/form_userptr.3x.html 2011-01-09 01:03:21.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_userptr.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/form_variables.3x.html
---- ncurses-5.9/doc/html/man/form_variables.3x.html 2011-01-09 01:03:21.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_variables.3x.html 2013-12-21 21:59:39.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2010,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: form_variables.3x,v 1.3 2010/12/04 18:38:55 tom Exp @
-+ * @Id: form_variables.3x,v 1.4 2013/06/22 17:58:32 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -68,7 +68,7 @@
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
- These are building blocks for the form library, defining
-- fields that can be created using <STRONG><A HREF="set_fieldtype.3x.html">set_fieldtype(3x)</A></STRONG>. Each
-+ fields that can be created using <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>. Each
- provides functions for field- and character-validation,
- according to the given datatype.
-
-Index: doc/html/man/form_win.3x.html
---- ncurses-5.9/doc/html/man/form_win.3x.html 2011-01-09 01:03:22.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/form_win.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/index.html
-Prereq: 1.4
---- ncurses-5.9/doc/html/man/index.html 2010-01-09 20:36:50.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/index.html 2013-06-07 20:12:36.000000000 +0000
-@@ -1,8 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN">
- <!--
-- $Id: index.html,v 1.4 2010/01/09 20:36:50 tom Exp $
-+ $Id: index.html,v 1.7 2013/06/07 20:12:36 tom Exp $
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 *
-@@ -29,39 +28,83 @@
- * authorization. *
- ****************************************************************************
- -->
--<HTML>
--<HEAD>
--<TITLE>NCURSES &ndash; Manual Pages</TITLE>
--<LINK REV=MADE HREF="mailto:dickey@invisible-island.net">
--</HEAD>
--<BODY>
--<HR>
--<ul>
--<li>Programs:
--<ul>
--<li><a href = "captoinfo.1m.html">captoinfo &ndash; convert a termcap description into a terminfo description</a>
--<li><a href = "clear.1.html">clear &ndash; clear the terminal screen</a>
--<li><a href = "infocmp.1m.html">infocmp &ndash; compare or print out terminfo descriptions</a>
--<li><a href = "infotocap.1m.html">infotocap &ndash; convert a terminfo description into a termcap description</a>
--<li><a href = "tabs.1.html">tabs &ndash; set tabs on a terminal</a>
--<li><a href = "tic.1m.html">tic &ndash; the terminfo entry-description compiler</a>
--<li><a href = "toe.1m.html">toe &ndash; table of (terminfo) entries</a>
--<li><a href = "tput.1.html">tput &ndash; initialize a terminal or query terminfo database</a>
--<li><a href = "tset.1.html">tset &ndash; terminal initialization</a>
--</ul>
--<li>Libraries:
--<ul>
--<li><a href = "ncurses.3x.html">ncurses &ndash; CRT screen handling and optimization package</a>
--<li><a href = "panel.3x.html">panel- panel stack extension for curses</a>
--<li><a href = "form.3x.html">form &ndash; curses extension for programming forms</a>
--<li><a href = "menu.3x.html">menu &ndash; curses extension for programming menus</a>
--</ul>
--<li>File formats:
--<ul>
--<li><a href = "terminfo.5.html">terminfo &ndash; terminal capability data base</a>
--<li><a href = "term.5.html">term &ndash; format of compiled term file.</a>
--<li><a href = "term.7.html">term &ndash; conventions for naming terminal types</a>
--</ul>
--</ul>
--</BODY>
--</HTML>
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-+
-+<html>
-+<head>
-+ <meta name="generator" content=
-+ "HTML Tidy for Linux (vers 25 March 2009), see www.w3.org">
-+
-+ <title>NCURSES &ndash; Manual Pages</title>
-+ <link rev="MADE" href="mailto:dickey@invisible-island.net">
-+ <meta http-equiv="Content-Type" content=
-+ "text/html; charset=us-ascii">
-+</head>
-+
-+<body>
-+ <ul>
-+ <li>Programs:
-+
-+ <ul>
-+ <li><a href="captoinfo.1m.html">captoinfo &ndash; convert a
-+ termcap description into a terminfo description</a></li>
-+
-+ <li><a href="clear.1.html">clear &ndash; clear the terminal
-+ screen</a></li>
-+
-+ <li><a href="infocmp.1m.html">infocmp &ndash; compare or
-+ print out terminfo descriptions</a></li>
-+
-+ <li><a href="infotocap.1m.html">infotocap &ndash; convert a
-+ terminfo description into a termcap description</a></li>
-+
-+ <li><a href="tabs.1.html">tabs &ndash; set tabs on a
-+ terminal</a></li>
-+
-+ <li><a href="tic.1m.html">tic &ndash; the terminfo
-+ entry-description compiler</a></li>
-+
-+ <li><a href="toe.1m.html">toe &ndash; table of (terminfo)
-+ entries</a></li>
-+
-+ <li><a href="tput.1.html">tput &ndash; initialize a
-+ terminal or query terminfo database</a></li>
-+
-+ <li><a href="tset.1.html">tset &ndash; terminal
-+ initialization</a></li>
-+ </ul>
-+ </li>
-+
-+ <li>Libraries:
-+
-+ <ul>
-+ <li><a href="ncurses.3x.html">ncurses &ndash; CRT screen
-+ handling and optimization package</a></li>
-+
-+ <li><a href="panel.3x.html">panel- panel stack extension
-+ for curses</a></li>
-+
-+ <li><a href="form.3x.html">form &ndash; curses extension
-+ for programming forms</a></li>
-+
-+ <li><a href="menu.3x.html">menu &ndash; curses extension
-+ for programming menus</a></li>
-+ </ul>
-+ </li>
-+
-+ <li>File formats:
-+
-+ <ul>
-+ <li><a href="terminfo.5.html">terminfo &ndash; terminal
-+ capability data base</a></li>
-+
-+ <li><a href="term.5.html">term &ndash; format of compiled
-+ term file.</a></li>
-+
-+ <li><a href="term.7.html">term &ndash; conventions for
-+ naming terminal types</a></li>
-+ </ul>
-+ </li>
-+ </ul>
-+</body>
-+</html>
-Index: doc/html/man/infocmp.1m.html
---- ncurses-5.9/doc/html/man/infocmp.1m.html 2011-04-04 22:46:44.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/infocmp.1m.html 2014-08-16 20:43:12.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: infocmp.1m,v 1.46 2010/12/04 18:40:45 tom Exp @
-+ * @Id: infocmp.1m,v 1.54 2014/03/29 23:18:29 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -53,7 +53,7 @@
-
- </PRE>
- <H2>SYNOPSIS</H2><PRE>
-- <STRONG>infocmp</STRONG> [<STRONG>-1CEFGILTUVcdegilnpqrtux</STRONG>]
-+ <STRONG>infocmp</STRONG> [<STRONG>-1CDEFGIKLTUVcdegilnpqrtux</STRONG>]
- [<STRONG>-v</STRONG> <EM>n</EM>] [<STRONG>-s</STRONG> <STRONG>d</STRONG>| <STRONG>i</STRONG>| <STRONG>l</STRONG>| <STRONG>c</STRONG>] [<STRONG>-R</STRONG> <STRONG>subset</STRONG>]
- [<STRONG>-w</STRONG> <EM>width</EM>] [<STRONG>-A</STRONG> <EM>directory</EM>] [<STRONG>-B</STRONG> <EM>directory</EM>]
- [<EM>termname</EM>...]
-@@ -72,76 +72,91 @@
- <STRONG>Default</STRONG> <STRONG>Options</STRONG>
- If no options are specified and zero or one <EM>termnames</EM> are
- specified, the <STRONG>-I</STRONG> option will be assumed. If more than
-- one <EM>termname</EM> is specified, the <STRONG>-d</STRONG> option will be assumed.
-+ one <EM>termname</EM> is specified, the <STRONG>-d</STRONG> option will be assumed.
-
- <STRONG>Comparison</STRONG> <STRONG>Options</STRONG> <STRONG>[-d]</STRONG> <STRONG>[-c]</STRONG> <STRONG>[-n]</STRONG>
-- <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 will depend on the type of the capability:
-- <STRONG>F</STRONG> for boolean variables, <STRONG>-1</STRONG> for integer variables, and
-+ <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 will depend on the type of the capability:
-+ <STRONG>F</STRONG> for boolean variables, <STRONG>-1</STRONG> for integer variables, and
- <STRONG>NULL</STRONG> for string variables.
-
-- The <STRONG>-d</STRONG> option produces a list of each capability that is
-- different between two entries. This option is useful to
-- show the difference between two entries, created by dif-
-+ The <STRONG>-d</STRONG> option produces a list of each capability that is
-+ different between two entries. This option is useful to
-+ show the difference between two entries, created by dif-
- ferent people, for the same or similar terminals.
-
-- The <STRONG>-c</STRONG> option produces a list of each capability that is
-- common between two entries. Capabilities that are not set
-- are ignored. This option can be used as a quick check to
-- see if the <STRONG>-u</STRONG> option is worth using.
--
-- The <STRONG>-n</STRONG> option produces a list of each capability that is
-- in neither entry. If no <EM>termnames</EM> are given, the environ-
-- ment variable <STRONG>TERM</STRONG> will be used for both of the <EM>termnames</EM>.
-- This can be used as a quick check to see if anything was
-- left out of a description.
-+ The <STRONG>-c</STRONG> option produces a list of each capability that is
-+ common between two or more entries. Capabilities that are
-+ not set are ignored. This option can be used as a quick
-+ check to see if the <STRONG>-u</STRONG> option is worth using.
-+
-+ The <STRONG>-n</STRONG> option produces a list of each capability that is
-+ in none of the given entries. If no <EM>termnames</EM> are given,
-+ the environment variable <STRONG>TERM</STRONG> will be used for both of the
-+ <EM>termnames</EM>. This can be used as a quick check to see if
-+ anything was left out of a description.
-
- <STRONG>Source</STRONG> <STRONG>Listing</STRONG> <STRONG>Options</STRONG> <STRONG>[-I]</STRONG> <STRONG>[-L]</STRONG> <STRONG>[-C]</STRONG> <STRONG>[-r]</STRONG>
-- The <STRONG>-I</STRONG>, <STRONG>-L</STRONG>, and <STRONG>-C</STRONG> options will produce a source listing
-+ 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;
- <STRONG>-C</STRONG> use the <STRONG>termcap</STRONG> names
- <STRONG>-r</STRONG> when using <STRONG>-C</STRONG>, put out all capabilities in <STRONG>termcap</STRONG> form
-+ <STRONG>-K</STRONG> modifies the <STRONG>-C</STRONG> option, improving BSD-compatibility.
-
-- If no <EM>termnames</EM> are given, the environment variable <STRONG>TERM</STRONG>
-+ If no <EM>termnames</EM> are given, the environment variable <STRONG>TERM</STRONG>
- will be used for the terminal name.
-
-- The source produced by the <STRONG>-C</STRONG> option may be used directly
-- as a <STRONG>termcap</STRONG> entry, but not all parameterized strings can
-+ The source produced by the <STRONG>-C</STRONG> option may be used directly
-+ as a <STRONG>termcap</STRONG> entry, but not all parameterized strings can
- be changed to the <STRONG>termcap</STRONG> format. <STRONG>infocmp</STRONG> will attempt to
-- convert most of the parameterized information, and any-
-- thing not converted will be plainly marked in the output
-+ convert most of the parameterized information, and any-
-+ thing not converted will be plainly marked in the output
- and commented out. These should be edited by hand.
-
-- All padding information for strings will be collected
-- together and placed at the beginning of the string where
-- <STRONG>termcap</STRONG> expects it. Mandatory padding (padding informa-
-+ For best results when converting to <STRONG>termcap</STRONG> format, you
-+ should use both <STRONG>-C</STRONG> and <STRONG>-r</STRONG>. Normally a termcap description
-+ is limited to 1023 bytes. infocmp trims away less essen-
-+ tial parts to make it fit. If you are converting to one
-+ of the (rare) termcap implementations which accept an
-+ unlimited size of termcap, you may want to add the <STRONG>-T</STRONG>
-+ option. More often however, you must help the termcap
-+ implementation, and trim 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. Mandatory padding (padding informa-
- tion 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>terminfo</STRONG> capabilities will be translated;
-- only those variables which were part of <STRONG>termcap</STRONG> will nor-
-- mally be output. Specifying the <STRONG>-r</STRONG> option will take off
-- this restriction, allowing all capabilities to be output
-- in <EM>termcap</EM> form.
-+ only those variables which were part of <STRONG>termcap</STRONG> will nor-
-+ mally 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. Manda-
-- tory 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
-+ the capability, not all capabilities are output. Manda-
-+ tory 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
-+ Some common <STRONG>terminfo</STRONG> parameter sequences, their <STRONG>termcap</STRONG>
-+ equivalents, and some terminal types which commonly have
- such sequences, are:
-
- <STRONG>terminfo</STRONG> <STRONG>termcap</STRONG> Representative Terminals
-@@ -154,66 +169,77 @@
- <STRONG>%p2</STRONG> is printed before <STRONG>%p1</STRONG> <STRONG>%r</STRONG> hp
-
- <STRONG>Use=</STRONG> <STRONG>Option</STRONG> <STRONG>[-u]</STRONG>
-- 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 dif-
-- ferences 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 dif-
-+ ferences 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
-+ the other terminals. In this manner, it is possible to
-+ retrofit generic terminfo entries into a terminal's
- description. Or, if two similar terminals exist, but were
-- coded at different times or by different people so that
-+ coded at different times or by different people so that
- each description is a full description, using <STRONG>infocmp</STRONG> will
- show what can be done to change one description to be rel-
- ative 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
-+ 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 capabil-
-- ity gives a different value for the capability than that
-+ ity 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
-+ 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 con-
- tain differing entries for the same capabilities will pro-
-- duce different results depending on the order that the
-- entries are given in. <STRONG>infocmp</STRONG> will flag any such incon-
-- sistencies between the other <EM>termname</EM> entries as they are
-+ duce different results depending on the order that the
-+ entries are given in. <STRONG>infocmp</STRONG> will flag any such incon-
-+ sistencies between the other <EM>termname</EM> entries as they are
- found.
-
-- Alternatively, specifying a capability <EM>after</EM> a <STRONG>use=</STRONG> entry
-+ Alternatively, specifying a capability <EM>after</EM> a <STRONG>use=</STRONG> entry
- that contains that capability will cause the second speci-
-- fication to be ignored. Using <STRONG>infocmp</STRONG> to recreate a
-+ fication to be ignored. Using <STRONG>infocmp</STRONG> to recreate a
- description can be a useful check to make sure that every-
-- thing was specified correctly in the original source
-+ thing 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 speci-
-- fying 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
-+ Another error that does not cause incorrect compiled
-+ files, but will slow down the compilation time, is speci-
-+ fying 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>]
-- The location of the compiled <STRONG>terminfo</STRONG> database is taken
-- from the environment variable <STRONG>TERMINFO</STRONG> . If the variable
-- is not defined, or the terminal is not found in that loca-
-- tion, the system <STRONG>terminfo</STRONG> database, in <STRONG>/usr/share/ter-</STRONG>
-- <STRONG>minfo</STRONG>, will be used. The options <STRONG>-A</STRONG> and <STRONG>-B</STRONG> may be used to
-- override this location. The <STRONG>-A</STRONG> option will set <STRONG>TERMINFO</STRONG>
-- for the first <EM>termname</EM> and the <STRONG>-B</STRONG> option will set <STRONG>TERMINFO</STRONG>
-- for the other <EM>termnames</EM>. With this, it is possible to
-- compare descriptions for a terminal with the same name
-- located in two different databases. This is useful for
-- comparing descriptions for the same terminal created by
-- different people.
-+ Like other <STRONG>ncurses</STRONG> utilities, infocmp looks for the termi-
-+ nal descriptions in several places. You can use the <STRONG>TER-</STRONG>
-+ <STRONG>MINFO</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 to search when comparing terminal descrip-
-+ tions:
-+
-+ <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 descrip-
-+ tions for a terminal with the same name located in two
-+ different databases. For instance, you can use this fea-
-+ ture for comparing descriptions for the same terminal cre-
-+ ated by different people.
-
- <STRONG>Other</STRONG> <STRONG>Options</STRONG>
-+ <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 characters.
-@@ -222,67 +248,71 @@
- rather than discarding them. Capabilities are com-
- mented 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 capability structure in the
-- <STRONG>&lt;term.h&gt;</STRONG>). This option is useful for preparing ver-
-- sions 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
-+ 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 ver-
-+ sions 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
-+ 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 capabil-
- ities 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 <STRONG>&lt;term.h&gt;</STRONG>). This option
-+ <STRONG>-e</STRONG> Dump the capabilities of the given terminal as a 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.
-
-- <STRONG>-F</STRONG> compare terminfo files. This assumes that two fol-
-- lowing arguments are filenames. The files are
-- searched for pairwise matches between entries, with
-+ <STRONG>-F</STRONG> compare terminfo files. This assumes that two fol-
-+ lowing arguments are filenames. The files are
-+ searched for pairwise matches between entries, with
- two entries considered to match if any of their names
-- do. The report printed to standard output lists
-- entries with no matches in the other file, and
-- entries with more than one match. For entries with
-- exactly one match it includes a difference report.
-- Normally, to reduce the volume of the report, use
-- references are not resolved before looking for dif-
-+ do. The report printed to standard output lists
-+ entries with no matches in the other file, and
-+ entries with more than one match. For entries with
-+ exactly one match it includes a difference report.
-+ Normally, to reduce the volume of the report, use
-+ references are not resolved before looking for dif-
- ferences, but resolution can be forced by also speci-
- fying <STRONG>-r</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 readabil-
- ity.
-
- <STRONG>-G</STRONG> Display constant literals in decimal form rather than
- their character equivalents.
-
-- <STRONG>-g</STRONG> Display constant character literals in quoted form
-+ <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. For each
-- string, the code tries to analyze it into actions in
-+ (<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>), strings in the entry. For each
-+ string, the code tries to analyze it into actions in
- terms of the other capabilities in the entry, certain
-- X3.64/ISO 6429/ECMA-48 capabilities, and certain DEC
-- VT-series private modes (the set of recognized spe-
-- cial sequences has been selected for completeness
-- over the existing terminfo database). Each report
-- line consists of the capability name, followed by a
-+ X3.64/ISO 6429/ECMA-48 capabilities, and certain DEC
-+ VT-series private modes (the set of recognized spe-
-+ cial sequences has been selected for completeness
-+ over the existing terminfo database). Each report
-+ line consists of the capability name, followed by a
- colon and space, followed by a printable expansion of
-- the capability string with sections matching recog-
-- nized actions translated into {}-bracketed descrip-
-- tions. Here is a list of the DEC/ANSI special
-+ the capability string with sections matching recog-
-+ nized actions translated into {}-bracketed descrip-
-+ tions. Here is a list of the DEC/ANSI special
- sequences recognized: i.
-
- Action Meaning
- -----------------------------------------
- RIS full reset
-+
- SC save cursor
- RC restore cursor
- LL home-down
-@@ -310,21 +340,20 @@
- DEC[+-]CKM application cursor keys
- DEC[+-]ANM set VT52 mode
- DEC[+-]COLM 132-column mode
--
- DEC[+-]SCLM smooth scroll
- DEC[+-]SCNM reverse video mode
- DEC[+-]OM origin mode
- DEC[+-]AWM wraparound mode
- DEC[+-]ARM auto-repeat mode
-
-- It also recognizes a SGR action corresponding to
-- ANSI/ISO 6429/ECMA Set Graphics Rendition, with the
-- values NORMAL, BOLD, UNDERLINE, BLINK, and REVERSE.
-- All but NORMAL may be prefixed with `+' (turn on) or
-+ It also recognizes a SGR action corresponding to
-+ ANSI/ISO 6429/ECMA Set Graphics Rendition, with the
-+ values NORMAL, BOLD, UNDERLINE, BLINK, and REVERSE.
-+ All but NORMAL may be prefixed with `+' (turn on) or
- `-' (turn off).
-
-- An SGR0 designates an empty highlight sequence (equivalent
-- to {SGR:NORMAL}).
-+ An SGR0 designates an empty highlight sequence
-+ (equivalent to {SGR:NORMAL}).
-
- <STRONG>-l</STRONG> Set output format to terminfo.
-
-@@ -398,18 +427,19 @@
-
- </PRE>
- <H2>FILES</H2><PRE>
-- /usr/share/terminfo Compiled terminal description
-- database.
-+ /usr/share/terminfo Compiled terminal description data-
-+ base.
-
-
- </PRE>
- <H2>EXTENSIONS</H2><PRE>
-- The <STRONG>-E</STRONG>, <STRONG>-F</STRONG>, <STRONG>-G</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.
-+ The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-E</STRONG>, <STRONG>-F</STRONG>, <STRONG>-G</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.
-
- 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>
-+ 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>.
-
-
-@@ -420,10 +450,12 @@
-
- </PRE>
- <H2>SEE ALSO</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="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>.
-
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ http://invisible-island.net/ncurses/tctest.html
-+
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
- </PRE>
-Index: doc/html/man/infotocap.1m.html
---- ncurses-5.9/doc/html/man/infotocap.1m.html 2011-04-04 22:46:44.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/infotocap.1m.html 2014-08-16 20:43:12.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-@@ -80,8 +80,8 @@
-
- </PRE>
- <H2>FILES</H2><PRE>
-- /usr/share/terminfo Compiled terminal description
-- database.
-+ /usr/share/terminfo Compiled terminal description data-
-+ base.
-
-
- </PRE>
-@@ -94,7 +94,7 @@
- <H2>SEE ALSO</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>
-
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
- </PRE>
-Index: doc/html/man/key_defined.3x.html
---- ncurses-5.9/doc/html/man/key_defined.3x.html 2011-01-09 01:03:23.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/key_defined.3x.html 2013-05-17 22:24:21.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 2003-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/keybound.3x.html
---- ncurses-5.9/doc/html/man/keybound.3x.html 2011-01-09 01:03:23.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/keybound.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/keyok.3x.html
---- ncurses-5.9/doc/html/man/keyok.3x.html 2011-01-09 01:03:23.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/keyok.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/legacy_coding.3x.html
---- ncurses-5.9/doc/html/man/legacy_coding.3x.html 2011-01-09 01:03:23.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/legacy_coding.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 2005-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/menu.3x.html
---- ncurses-5.9/doc/html/man/menu.3x.html 2011-04-04 22:46:45.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu.3x.html 2014-08-16 20:43:12.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2014 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: menu.3x,v 1.21 2010/12/04 18:40:45 tom Exp @
-+ * @Id: menu.3x,v 1.22 2014/08/16 20:32:08 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -196,37 +196,34 @@
-
-
- </PRE>
--<H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "menu_" for
-- detailed descriptions of the entry points.
--
--
--</PRE>
- <H2>NOTES</H2><PRE>
- 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 libn-
-+ In your library list, libmenu.a should be before libn-
- curses.a; that is, you want to say `-lmenu -lncurses', not
-- the other way around (which would usually give a link-
-+ the other way around (which would usually give a link-
- error).
-
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- These routines emulate the System V menu library. They
-+ These routines emulate the System V menu library. They
- were not supported on Version 7 or BSD versions.
-
-
- </PRE>
- <H2>AUTHORS</H2><PRE>
-- Juergen Pfeifer. Manual pages and adaptation for ncurses
-+ Juergen Pfeifer. Manual pages and adaptation for ncurses
- by Eric S. Raymond.
-
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ <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 5.9 (patch 20140816).
-
-
-
-Index: doc/html/man/menu_attributes.3x.html
---- ncurses-5.9/doc/html/man/menu_attributes.3x.html 2011-01-09 01:03:24.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_attributes.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_cursor.3x.html
---- ncurses-5.9/doc/html/man/menu_cursor.3x.html 2011-01-09 01:03:24.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_cursor.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_driver.3x.html
---- ncurses-5.9/doc/html/man/menu_driver.3x.html 2011-02-25 23:25:05.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_driver.3x.html 2013-12-21 21:59:40.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-@@ -119,8 +119,8 @@
- Clear the menu pattern buffer.
-
- REQ_BACK_PATTERN
-- Delete the previous character from the pattern
-- buffer.
-+ Delete the previous character from the pattern buf-
-+ fer.
-
- REQ_NEXT_MATCH
- Move to the next item matching the pattern match.
-@@ -128,20 +128,20 @@
- REQ_PREV_MATCH
- Move to the previous item matching the pattern match.
-
-- If the second argument is a printable character, the code
-- appends it to the pattern buffer and attempts to move to
-- the next item matching the new pattern. If there is no
-+ If the second argument is a printable character, the code
-+ appends it to the pattern buffer and attempts to move to
-+ the next item matching the new pattern. If there is no
- such match, <STRONG>menu_driver</STRONG> returns <STRONG>E_NO_MATCH</STRONG> and deletes the
- appended character from the buffer.
-
-- If the second argument is one of the above pre-defined
-+ If the second argument is one of the above pre-defined
- requests, the corresponding action is performed.
-
- <STRONG>MOUSE</STRONG> <STRONG>HANDLING</STRONG>
-- If the second argument is the KEY_MOUSE special key, the
-+ If the second argument is the KEY_MOUSE special key, the
- associated mouse event is translated into one of the above
-- pre-defined requests. Currently only clicks in the user
-- window (e.g., inside the menu display area or the decora-
-+ pre-defined requests. Currently only clicks in the user
-+ window (e.g., inside the menu display area or the decora-
- tion window) are handled.
-
- If you click above the display region of the menu:
-@@ -160,32 +160,32 @@
-
- <STRONG>o</STRONG> a REQ_LAST_ITEM is generated for a triple-click.
-
-- If you click at an item inside the display area of the
-+ If you click at an item inside the display area of the
- menu:
-
- <STRONG>o</STRONG> the menu cursor is positioned to that item.
-
-- <STRONG>o</STRONG> If you double-click an item a REQ_TOGGLE_ITEM is gen-
-+ <STRONG>o</STRONG> If you double-click an item a REQ_TOGGLE_ITEM is gen-
- erated and <STRONG>E_UNKNOWN_COMMAND</STRONG> is returned. This return
-- value makes sense, because a double click usually
-+ value makes sense, because a double click usually
- means that an item-specific action should be returned.
- It is exactly the purpose of this return value to sig-
-- nal that an application specific command should be
-+ nal that an application specific command should be
- executed.
-
-- <STRONG>o</STRONG> If a translation into a request was done, <STRONG>menu_driver</STRONG>
-+ <STRONG>o</STRONG> If a translation into a request was done, <STRONG>menu_driver</STRONG>
- returns the result of this request.
-
-- If you clicked outside the user window or the mouse event
-- could not be translated into a menu request an
-+ If you clicked outside the user window or the mouse event
-+ could not be translated into a menu request an
- <STRONG>E_REQUEST_DENIED</STRONG> is returned.
-
- <STRONG>APPLICATION-DEFINED</STRONG> <STRONG>COMMANDS</STRONG>
- 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 application-specific command and returns
-+ above pre-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
-+ defined relative to <STRONG>MAX_COMMAND</STRONG>, the maximum value of
- these pre-defined requests.
-
-
-@@ -199,7 +199,7 @@
- System error occurred (see <STRONG>errno</STRONG>).
-
- <STRONG>E_BAD_ARGUMENT</STRONG>
-- Routine detected an incorrect or out-of-range argu-
-+ Routine detected an incorrect or out-of-range argu-
- ment.
-
- <STRONG>E_BAD_STATE</STRONG>
-@@ -221,7 +221,7 @@
-
- </PRE>
- <H2>SEE ALSO</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="getch.3x.html">getch(3x)</A></STRONG>.
-+ <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">curs_getch(3x)</A></STRONG>.
-
-
- </PRE>
-@@ -232,14 +232,14 @@
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- These routines emulate the System V menu library. They
-- were not supported on Version 7 or BSD versions. The sup-
-+ These routines emulate the System V menu library. They
-+ were not supported on Version 7 or BSD versions. The sup-
- port for mouse events is ncurses specific.
-
-
- </PRE>
- <H2>AUTHORS</H2><PRE>
-- Juergen Pfeifer. Manual pages and adaptation for new
-+ Juergen Pfeifer. Manual pages and adaptation for new
- curses by Eric S. Raymond.
-
-
-Index: doc/html/man/menu_format.3x.html
---- ncurses-5.9/doc/html/man/menu_format.3x.html 2011-01-09 01:03:24.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_format.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_hook.3x.html
---- ncurses-5.9/doc/html/man/menu_hook.3x.html 2011-01-09 01:03:24.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_hook.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_items.3x.html
---- ncurses-5.9/doc/html/man/menu_items.3x.html 2011-01-09 01:03:24.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_items.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: menu_items.3x,v 1.9 2010/12/04 18:40:45 tom Exp @
-+ * @Id: menu_items.3x,v 1.10 2012/11/03 23:03:59 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -74,7 +74,7 @@
-
-
- </PRE>
--<H2>RETURN VALUES</H2><PRE>
-+<H2>RETURN VALUE</H2><PRE>
- The function <STRONG>menu_items</STRONG> returns a pointer (which may be
- <STRONG>NULL</STRONG>). It does not set errno.
-
-Index: doc/html/man/menu_mark.3x.html
---- ncurses-5.9/doc/html/man/menu_mark.3x.html 2011-01-09 01:03:24.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_mark.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_new.3x.html
---- ncurses-5.9/doc/html/man/menu_new.3x.html 2011-01-09 01:03:25.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_new.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_opts.3x.html
---- ncurses-5.9/doc/html/man/menu_opts.3x.html 2011-01-09 01:03:25.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_opts.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_pattern.3x.html
---- ncurses-5.9/doc/html/man/menu_pattern.3x.html 2011-01-09 01:03:25.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_pattern.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/menu_post.3x.html
---- ncurses-5.9/doc/html/man/menu_post.3x.html 2011-01-09 01:03:25.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_post.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_requestname.3x.html
---- ncurses-5.9/doc/html/man/menu_requestname.3x.html 2011-01-09 01:03:25.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_requestname.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_spacing.3x.html
---- ncurses-5.9/doc/html/man/menu_spacing.3x.html 2011-01-09 01:03:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_spacing.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_userptr.3x.html
---- ncurses-5.9/doc/html/man/menu_userptr.3x.html 2011-01-09 01:03:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_userptr.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/menu_win.3x.html
---- ncurses-5.9/doc/html/man/menu_win.3x.html 2011-01-09 01:03:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/menu_win.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/mitem_current.3x.html
---- ncurses-5.9/doc/html/man/mitem_current.3x.html 2011-01-09 01:03:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/mitem_current.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/mitem_name.3x.html
---- ncurses-5.9/doc/html/man/mitem_name.3x.html 2011-01-09 01:03:26.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/mitem_name.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/mitem_new.3x.html
---- ncurses-5.9/doc/html/man/mitem_new.3x.html 2011-01-09 01:03:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/mitem_new.3x.html 2013-05-17 22:24:22.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/mitem_opts.3x.html
---- ncurses-5.9/doc/html/man/mitem_opts.3x.html 2011-01-09 01:03:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/mitem_opts.3x.html 2013-05-17 22:24:23.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/mitem_userptr.3x.html
---- ncurses-5.9/doc/html/man/mitem_userptr.3x.html 2011-01-09 01:03:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/mitem_userptr.3x.html 2013-05-17 22:24:23.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/mitem_value.3x.html
---- ncurses-5.9/doc/html/man/mitem_value.3x.html 2011-01-09 01:03:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/mitem_value.3x.html 2013-05-17 22:24:23.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/mitem_visible.3x.html
---- ncurses-5.9/doc/html/man/mitem_visible.3x.html 2011-01-09 01:03:27.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/mitem_visible.3x.html 2013-05-17 22:24:23.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-Index: doc/html/man/ncurses.3x.html
---- ncurses-5.9/doc/html/man/ncurses.3x.html 2011-04-04 22:46:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/ncurses.3x.html 2014-08-16 20:43:14.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: ncurses.3x,v 1.103 2011/02/05 23:21:29 tom Exp @
-+ * @Id: ncurses.3x,v 1.119 2014/08/09 20:54:30 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -60,10 +60,10 @@
- <H2>DESCRIPTION</H2><PRE>
- The <STRONG>ncurses</STRONG> library routines give the user a terminal-
- independent method of updating character screens with rea-
-- sonable 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 5.9 (patch 20110404).
-+ sonable optimization. This implementation is "new curses"
-+ (ncurses) and is the approved replacement for 4.4BSD clas-
-+ sic curses, which has been discontinued. This describes
-+ <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
- The <STRONG>ncurses</STRONG> library emulates the curses library of System
- V Release 4 UNIX, and XPG4 (X/Open Portability Guide)
-@@ -150,48 +150,48 @@
- Among those, the most basic routines are <STRONG>move</STRONG> and <STRONG>addch</STRONG>.
- More general versions of these routines are included with
- names beginning with <STRONG>w</STRONG>, allowing the user to specify a
-- window. The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.
-+ window. The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.
-
-- After using routines to manipulate a window, <STRONG>refresh</STRONG> is
-- called, telling <STRONG>curses</STRONG> to make the user's CRT screen look
-- like <STRONG>stdscr</STRONG>. The characters in a window are actually of
-- type <STRONG>chtype</STRONG>, (character and attribute data) so that other
-- information about the character may also be stored with
-+ After using routines to manipulate a window, <STRONG>refresh</STRONG> is
-+ called, telling <STRONG>curses</STRONG> to make the user's CRT screen look
-+ like <STRONG>stdscr</STRONG>. The characters in a window are actually of
-+ type <STRONG>chtype</STRONG>, (character and attribute data) so that other
-+ information about the character may also be stored with
- each character.
-
-- Special windows called <EM>pads</EM> may also be manipulated.
-+ 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 dis-
-+ the screen and whose contents need not be completely dis-
- played. 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 char-
-- acters to show up in such modes as underlined, in reverse
-- video, or in color on terminals that support such display
-+ In addition to drawing characters on the screen, video
-+ attributes and colors may be supported, causing the char-
-+ acters 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 values. The video attributes, line drawing
-- characters, and input values use names, defined in
-+ be output. On input, <STRONG>curses</STRONG> is also able to translate
-+ 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>.
-
- 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
-+ 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
-+ 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 pro-
-- gram using <STRONG>curses</STRONG> checks for a local terminal definition
-- before checking in the standard place. For example, if
-+ If the environment variable <STRONG>TERMINFO</STRONG> is defined, any pro-
-+ gram 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 defini-
- tion 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
-+ 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>,
-@@ -200,119 +200,117 @@
-
- <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
-
-- This is useful for developing experimental definitions or
-+ This is useful for developing experimental definitions or
- when write permission in <STRONG>/usr/share/terminfo</STRONG> is not avail-
- able.
-
-- 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
-+ 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 <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the val-
- ues <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
-
-- The <STRONG>curses</STRONG> routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable
-+ 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
-+ clearing and redrawing a screen containing garbage. The
- <STRONG>curscr</STRONG> can be used in only a few routines.
-
- <STRONG>Routine</STRONG> <STRONG>and</STRONG> <STRONG>Argument</STRONG> <STRONG>Names</STRONG>
-- Many <STRONG>curses</STRONG> routines have two or more versions. The rou-
-+ Many <STRONG>curses</STRONG> routines have two or more versions. The rou-
- tines prefixed with <STRONG>w</STRONG> require a window argument. The rou-
- tines prefixed with <STRONG>p</STRONG> require a pad argument. Those with-
- out 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 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. The
-+ 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. 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
-+ 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
-+ 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>WIN-</STRONG>
- <STRONG>DOW</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>WIN-</STRONG>
-- <STRONG>DOW</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
-+ 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>WIN-</STRONG>
-+ <STRONG>DOW</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 configuration of the library. There are two common
-+ This manual page describes functions which may appear in
-+ any configuration of the library. There are two common
- configurations of the library:
-
- ncurses
- the "normal" library, which handles 8-bit
- characters. The normal (8-bit) library stores
-- characters combined with attributes in <STRONG>chtype</STRONG>
-+ characters combined with attributes in <STRONG>chtype</STRONG>
- data.
-
-- 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
-+ 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
-+ Each cell (row and column) in a <STRONG>WINDOW</STRONG> is
- stored as a <STRONG>chtype</STRONG>.
-
- ncursesw
-- the so-called "wide" library, which handles
-- multibyte characters (see the section on
-+ 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
-+ includes all of the calls from the "normal"
-+ library. It adds about one third more calls
- using data types which store multibyte charac-
- ters:
-
- <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 char-
-+ corresponds to <STRONG>chtype</STRONG>. However it is a
-+ structure, because more data is stored
-+ than can fit into an integer. The char-
- acters 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 sepa-
-+ integer value - and there may be more
-+ than one character per cell. The video
-+ attributes and color are stored in sepa-
- rate fields of the structure.
-
- Each cell (row and column) in a <STRONG>WINDOW</STRONG> is
- stored as a <STRONG>cchar_t</STRONG>.
-
- <STRONG>wchar_t</STRONG>
-- stores a "wide" character. Like <STRONG>chtype</STRONG>,
-+ 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,
-+ 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 "nor-
-- mal" library. There is a naming convention
-- which relates many of the normal/wide vari-
-- ants: a "_w" is inserted into the name. For
-+ which are analogous to functions in the "nor-
-+ mal" library. There is a naming convention
-+ which relates many of the normal/wide vari-
-+ ants: a "_w" is inserted into the name. For
- example, <STRONG>waddch</STRONG> becomes <STRONG>wadd_wch</STRONG>.
-
--
- <STRONG>Routine</STRONG> <STRONG>Name</STRONG> <STRONG>Index</STRONG>
- The following table lists each <STRONG>curses</STRONG> routine and the name
-- of the manual page on which it is described. Routines
-- flagged with `*' are ncurses-specific, not described by
-+ of the manual page on which it is 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>*
-@@ -376,9 +374,9 @@
- echo <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
- echo_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
- echochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
--
- endwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
- 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>
- filter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
-@@ -442,9 +440,9 @@
- intrflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
- inwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
- is_cleared <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
--
- is_idcok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
- is_idlok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
-+
- is_immedok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
- is_keypad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
- is_leaveok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
-@@ -508,9 +506,9 @@
- mvinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
- mvinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
- mvinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
--
- mvinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
- mvinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
-+
- mvprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
- mvscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
- mvvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
-@@ -574,9 +572,9 @@
- pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(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>
- printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
-+
- putp <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
- putwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
- qiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
-@@ -640,9 +638,9 @@
- tigetstr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
- timeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
- touchline <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
--
- touchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
- tparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
-+
- tputs <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
- tputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
- trace <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
-@@ -656,6 +654,7 @@
- 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>
-@@ -706,8 +705,8 @@
- wgetbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
- wgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
- wgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
--
- wgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
-+
- wgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
- whline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
- whline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
-@@ -752,11 +751,14 @@
-
- </PRE>
- <H2>RETURN VALUE</H2><PRE>
-- Routines that return an integer return <STRONG>ERR</STRONG> upon failure
-- and an integer value other than <STRONG>ERR</STRONG> upon successful com-
-- pletion, unless otherwise noted in the routine descrip-
-+ Routines that return an integer return <STRONG>ERR</STRONG> upon failure
-+ and an integer value other than <STRONG>ERR</STRONG> upon successful com-
-+ pletion, unless otherwise noted in the routine descrip-
- tions.
-
-+ 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>,
-@@ -772,53 +774,57 @@
- ing the runtime behavior of the <STRONG>ncurses</STRONG> library. The most
- important ones have been already discussed in detail.
-
-- BAUDRATE
-- The debugging library checks this environment symbol
-- when the application has redirected output to a file.
-- The symbol'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.
--
- CC 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 symbol. Very few ter-
-+ (i.e., the <STRONG>cmdch</STRONG> capability) of the loaded terminfo
-+ entries to the value of this variable. Very few ter-
- minfo entries provide this feature.
-
-- Because this name is also used in development envi-
-- ronments to represent the C compiler's name, <STRONG>ncurses</STRONG>
-+ Because this name is also used in development envi-
-+ ronments to represent the C compiler's name, <STRONG>ncurses</STRONG>
- ignores it if it does not happen to be a single char-
- acter.
-
-+ BAUDRATE
-+ The debugging library checks this environment vari-
-+ able 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.
-+
- COLUMNS
- Specify the width of the screen in characters.
-- Applications running in a windowing environment usu-
-- ally 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
-+ Applications running in a windowing environment usu-
-+ ally 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. However, setting <STRONG>COLUMNS</STRONG> and/or <STRONG>LINES</STRONG>
-+ 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 descriptions, e.g.,
-+ 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
-+ 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 exter-
-- nal environment (including system calls) to determine
-- the screen size.
-+ nal environment (but not including system calls) to
-+ determine the screen size. Use the <STRONG>use_tioctl</STRONG> func-
-+ tion to update <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> to match the screen
-+ size obtained from system calls or the terminal data-
-+ base.
-
- ESCDELAY
- Specifies the total time, in milliseconds, for which
-@@ -858,234 +864,305 @@
-
- LINES
- Like COLUMNS, specify the height of the screen in
-- characters. See COLUMNS for a detailed description.
-+ characters. See COLUMNS for a detailed description.
-
- MOUSE_BUTTONS_123
- This applies only to the OS/2 EMX port. It specifies
-- the order of buttons on the mouse. OS/2 numbers a
-+ 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 symbol lets you customize the mouse. The symbol
-- must be three numeric digits 1-3 in any order, e.g.,
-- 123 or 321. If it is not specified, <STRONG>ncurses</STRONG> uses
-- 132.
-+ 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 specified,
-+ <STRONG>ncurses</STRONG> uses 132.
-
- NCURSES_ASSUMED_COLORS
-- Override the compiled-in assumption that the termi-
-- nal'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 vari-
-- able by proving a 2-element list: foreground,back-
-- ground. 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 posi-
-+ Override the compiled-in assumption that the termi-
-+ nal'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 vari-
-+ able by proving a 2-element list: foreground,back-
-+ ground. 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 posi-
- tive value from zero to the terminfo <STRONG>max_colors</STRONG> value
- is allowed.
-
-+ NCURSES_CONSOLE2
-+ This applies only to the MinGW port of ncurses.
-+
-+ The <STRONG>Console2</STRONG> program's handling of the Microsoft Con-
-+ sole 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 environ-
-+ ment variable <STRONG>NCGDB</STRONG> has the same effect.
-+
- NCURSES_GPM_TERMS
-- This applies only to ncurses configured to use the
-+ 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 TERM envi-
-- ronment variable is matched. Setting it to an empty
-- value disables the GPM interface; using the built-in
-+ or more terminal names against which the TERM envi-
-+ ronment 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
-+ If the environment variable is absent, ncurses will
- attempt to open GPM if TERM contains "linux".
-
- NCURSES_NO_HARD_TABS
-- <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
-+ <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.
-
-- NCURSES_NO_MAGIC_COOKIES
-+ NCURSES_NO_MAGIC_COOKIE
- 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 termi-
-+ requires special handling to make highlighting and
-+ other video attributes display properly. You can
-+ suppress the highlighting entirely for these termi-
- nals by setting this environment variable.
-
- NCURSES_NO_PADDING
-- 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 applica-
-- tions. Terminal emulators can duplicate all of the
-+ 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 applica-
-+ tions. 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
-+ 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., tim-
- ing. Unless a hardware terminal is interfaced into a
-- terminal concentrator (which does flow control), it
-- (or your application) must manage dataflow, prevent-
-- ing overruns. The cheapest solution (no hardware
-+ terminal concentrator (which does flow control), it
-+ (or your application) must manage dataflow, prevent-
-+ ing 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
-+ 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
-+ 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 symbol to disable all but
-- mandatory padding. Mandatory padding is used as a
-- part of special control 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>.
-
- NCURSES_NO_SETBUF
-- Normally <STRONG>ncurses</STRONG> enables buffered output during ter-
-- minal initialization. This is done (as in SVr4
-- curses) for performance reasons. For testing pur-
-- poses, both of <STRONG>ncurses</STRONG> and certain applications, this
-- feature is made optional. Setting the
-- NCURSES_NO_SETBUF variable disables output buffering,
-- leaving the output in the original (usually line
-- buffered) mode.
-+ This setting is obsolete. Before changes
-+
-+ <STRONG>o</STRONG> started with 5.9 patch 20120825 and
-+
-+ <STRONG>o</STRONG> continued though 5.9 patch 20130126
-+
-+ <STRONG>ncurses</STRONG> enabled buffered output during terminal ini-
-+ tialization. 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 vari-
-+ able 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 the standard out-
-+ put.
-+
-+ 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.
-
- NCURSES_NO_UTF8_ACS
- During initialization, the <STRONG>ncurses</STRONG> library checks for
-- special cases where VT100 line-drawing (and the cor-
-- responding alternate character set 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 TERM environment
-- variable for these. For other special cases, you
-- should set this environment variable. Doing this
-- tells ncurses to use Unicode values which correspond
-+ special cases where VT100 line-drawing (and the cor-
-+ responding alternate character set 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 TERM 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 termi-
- nal emulators.
-
-- When setting this variable, you should set it to a
-- nonzero value. Setting it to zero (or to a nonnum-
-- ber) disables the special check for "linux" and
-+ When setting this variable, you should set it to a
-+ nonzero value. Setting it to zero (or to a nonnum-
-+ ber) 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 can be com-
-+ 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 com-
- piled using <STRONG>tic</STRONG> <STRONG>-x</STRONG>. For example
-
- # linux console, if patched to provide working
- # VT100 shift-in/shift-out, with corresponding font.
- linux-vt100|linux console with VT100 line-graphics,
-- U8#0, use=linux,
-+ U8#0, use=linux,
-
- # uxterm with vt100Graphics resource set to false
- xterm-utf8|xterm relying on UTF-8 line-graphics,
-- U8#1, use=xterm,
-+ U8#1, use=xterm,
-
- The name "U8" is chosen to be two characters, to per-
-- mit it to be used by applications that use ncurses'
-+ mit it to be used by applications that use ncurses'
- termcap interface.
-
- NCURSES_TRACE
-- During initialization, the <STRONG>ncurses</STRONG> debugging library
-- checks the NCURSES_TRACE symbol. 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 application will write the
-+ 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 application will write the
- file <STRONG>trace</STRONG> to the current directory.
-
-- TERM Denotes your terminal type. Each terminal type is
-+ TERM 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 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 def-
-+ initions.
-+
-+ 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 termi-
-+ nal. 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.
-+
- TERMCAP
- If the <STRONG>ncurses</STRONG> library has been configured with <EM>term-</EM>
-- <EM>cap</EM> support, <STRONG>ncurses</STRONG> will check for a terminal's
-+ <EM>cap</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 TERMCAP symbol contains either a terminal
-- description (with newlines stripped out), or a file
-- name telling where the information denoted by the
-- TERM symbol exists. In either case, setting it
-- directs <STRONG>ncurses</STRONG> to ignore the usual place for this
-- information, e.g., /etc/termcap.
-+ The TERMCAP environment variable contains either a
-+ terminal description (with newlines stripped out), or
-+ a file name telling where the information denoted by
-+ the TERM environment variable exists. In either
-+ case, setting it directs <STRONG>ncurses</STRONG> to ignore the usual
-+ place for this information, e.g., /etc/termcap.
-
- TERMINFO
- Overrides the directory in which <STRONG>ncurses</STRONG> searches for
- your terminal description. This is the simplest, but
-- not the only way to change the list of directories.
-+ not the only way to change the list of directories.
- The complete list of directories in order follows:
-
-- <STRONG>o</STRONG> the last directory to which <STRONG>ncurses</STRONG> wrote, if
-+ <STRONG>o</STRONG> the last directory to which <STRONG>ncurses</STRONG> wrote, if
- any, is searched first
-
-- <STRONG>o</STRONG> the directory specified by the TERMINFO symbol
-+ <STRONG>o</STRONG> the directory specified by the TERMINFO environ-
-+ ment variable
-
- <STRONG>o</STRONG> $HOME/.terminfo
-
-- <STRONG>o</STRONG> directories listed in the TERMINFO_DIRS symbol
-+ <STRONG>o</STRONG> directories listed in the TERMINFO_DIRS environ-
-+ ment variable
-+
-+ <STRONG>o</STRONG> one or more directories whose names are config-
-+ ured and compiled into the ncurses library, i.e.,
-
-- <STRONG>o</STRONG> one or more directories whose names are config-
-- ured and compiled into the ncurses library, e.g.,
-- /usr/share/terminfo
-+ <STRONG>o</STRONG> /usr/local/ncurses/share/ter-
-+ minfo:/usr/share/terminfo (corresponding to
-+ the TERMINFO_DIRS variable)
-+
-+ <STRONG>o</STRONG> /usr/share/terminfo (corresponding to the
-+ TERMINFO variable)
-
- TERMINFO_DIRS
-- Specifies a list of directories to search for termi-
-- nal descriptions. The list is separated by colons
-- (i.e., ":") on Unix, semicolons on OS/2 EMX. All of
-- the terminal descriptions are in terminfo form, which
-- makes a subdirectory named for the first letter of
-- the terminal names therein.
-+ Specifies a list of directories to search for termi-
-+ nal descriptions. The list is separated by colons
-+ (i.e., ":") on Unix, semicolons on OS/2 EMX.
-+
-+ All of the terminal descriptions are in terminfo
-+ form. Normally these are stored in a directory tree,
-+ using subdirectories named by the first letter of the
-+ terminal names therein.
-+
-+ If <STRONG>ncurses</STRONG> is built with a hashed database, then each
-+ entry in this list can also be the path of the corre-
-+ sponding database file.
-+
-+ If <STRONG>ncurses</STRONG> is built with a support for reading term-
-+ cap files directly, then an entry in this list may be
-+ the path of a termcap file.
-
- TERMPATH
-- If TERMCAP does not hold a file name then <STRONG>ncurses</STRONG>
-- checks the TERMPATH symbol. This is a list of file-
-- names separated by spaces or colons (i.e., ":") on
-- Unix, semicolons on OS/2 EMX. If the TERMPATH symbol
-- is not set, <STRONG>ncurses</STRONG> looks in the files /etc/termcap,
-- /usr/share/misc/termcap and $HOME/.termcap, in that
-+ If TERMCAP does not hold a file name then <STRONG>ncurses</STRONG>
-+ checks the TERMPATH environment variable. This is a
-+ list of filenames separated by spaces or colons
-+ (i.e., ":") on Unix, semicolons on OS/2 EMX.
-+
-+ If the TERMPATH environment variable is not set,
-+ <STRONG>ncurses</STRONG> looks in the files /etc/termcap,
-+ /usr/share/misc/termcap and $HOME/.termcap, 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 setuid or setgid permissions:
-- $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
-+ The library may be configured to disregard the following
-+ variables when 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>ALTERNATE CONFIGURATIONS</H2><PRE>
-- 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
-+ 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>SYN-</STRONG>
-+ The standard include for <STRONG>ncurses</STRONG> is as noted in <STRONG>SYN-</STRONG>
- <STRONG>OPSIS</STRONG>:
-
- <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
-
-- 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 subdirectory,
-+ 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 subdirectory,
- e.g.,
-
- <STRONG>#include</STRONG> <STRONG>&lt;ncurses/curses.h&gt;</STRONG>
-
-- It also omits a symbolic link which would allow you
-+ 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>--disable-overwrite</STRONG> option is used) puts the header
-+ 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.,
-+ library names have a "w" appended to them, i.e.,
- instead of
-
- <STRONG>-lncurses</STRONG>
-@@ -1095,18 +1172,29 @@
- <STRONG>-lncursesw</STRONG>
-
- You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when com-
-- piling for the wide-character library to use the
-- extended (wide-character) functions. The <STRONG>curses.h</STRONG>
-- file which is installed for the wide-character
-- library is designed to be compatible with the normal
-+ piling for the wide-character library to use the
-+ extended (wide-character) functions. 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> struc-
-- ture differs, and very few applications require more
-- than a pointer to <STRONG>WINDOW</STRONG>s. 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
-+ ture differs, and very few applications require more
-+ than a pointer to <STRONG>WINDOW</STRONG>s. 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 <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 changes to
-+ work with this convention.
-+
- --with-shared
-
- --with-normal
-@@ -1114,16 +1202,16 @@
- --with-debug
-
- --with-profile
-- 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>.
-+ The shared and normal (static) library names differ
-+ by their suffixes, e.g., <STRONG>libncurses.so</STRONG> and <STRONG>libn-</STRONG>
-+ <STRONG>curses.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-trace
-- The <STRONG>trace</STRONG> function normally resides in the debug
-+ The <STRONG>trace</STRONG> function normally resides in the debug
- library, but it is sometimes useful to configure this
-- in the shared library. Configure scripts should
-+ in the shared library. Configure scripts should
- check for the function's existence rather than assum-
- ing it is always in the debug library.
-
-@@ -1131,14 +1219,14 @@
- </PRE>
- <H2>FILES</H2><PRE>
- /usr/share/tabset
-- directory containing initialization files for the
-+ directory containing initialization files for the
- terminal capability database /usr/share/terminfo ter-
- minal capability database
-
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_"
-+ <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>
-
-@@ -1148,52 +1236,61 @@
- The <STRONG>ncurses</STRONG> library can be compiled with an option
- (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term-
- cap 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
-+ 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>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 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
-+ 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 SIGWINCH 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.
-+ 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> man-
- ual pages for details.
-
- The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi-
-- nals which implement the ISO-6429 SGR 39 and SGR 49 con-
-+ nals which implement the ISO-6429 SGR 39 and SGR 49 con-
- trols, 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 col-
-- ored text on a background whose color is set indepen-
-- dently, providing better control over color contrasts.
-+ its original foreground and background colors. From the
-+ users' perspective, the application is able to draw col-
-+ ored text on a background whose color is set indepen-
-+ dently, 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 output to a printer attached to the terminal
-+ 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>PORTABILITY</H2><PRE>
-- The <STRONG>ncurses</STRONG> library is intended to be BASE-level confor-
-+ The <STRONG>ncurses</STRONG> library is intended to be BASE-level confor-
- mant with XSI Curses. The EXTENDED XSI Curses functional-
- ity (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> sections of the library man
-+ 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 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 applica-
-+ tion 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:
-
- <STRONG>o</STRONG> The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it
-@@ -1227,31 +1324,31 @@
-
- <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.
-+ multiple screens. See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details.
-
-- In historic curses versions, delays embedded in the capa-
-+ In historic curses versions, delays embedded in the capa-
- bilities <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 implementa-
-- tion, 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
-+ delay bits in the UNIX tty driver. In this implementa-
-+ tion, 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 portability correspondingly.
-
-
- </PRE>
- <H2>NOTES</H2><PRE>
-- The header file <STRONG>&lt;curses.h&gt;</STRONG> automatically includes the
-+ 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>.
-
-- If standard output from a <STRONG>ncurses</STRONG> program is re-directed
-- to something which is not a tty, screen updates will be
-+ 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 fea-
- ture of AT&amp;T System V Release 3 curses.
-
-
- </PRE>
- <H2>AUTHORS</H2><PRE>
-- Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
-+ Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
- Based on pcurses by Pavel Curtis.
-
-
-Index: doc/html/man/ncurses5-config.1.html
---- ncurses-5.9/doc/html/man/ncurses5-config.1.html 2011-04-04 22:46:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/ncurses5-config.1.html 2014-08-16 20:43:14.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 2010 Free Software Foundation, Inc. *
-@@ -105,10 +105,11 @@
-
- <STRONG>--terminfo-dirs</STRONG>
- echos the $TERMINFO_DIRS directory list, e.g.,
-- /usr/local/ncurses/lib/terminfo:/usr/share/terminfo
-+ /usr/local/ncurses/share/terminfo:/usr/share/ter-
-+ minfo
-
- <STRONG>--termpath</STRONG>
-- echos the $TERMPATH termcap list, if support for
-+ echos the $TERMPATH termcap list, if support for
- termcap is configured.
-
- <STRONG>--help</STRONG> prints this message
-@@ -118,7 +119,7 @@
- <H2>SEE ALSO</H2><PRE>
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>
-
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
-
-Index: doc/html/man/panel.3x.html
---- ncurses-5.9/doc/html/man/panel.3x.html 2011-04-04 22:46:49.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/panel.3x.html 2014-08-16 20:43:14.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-@@ -174,35 +174,35 @@
-
- </PRE>
- <H2>DIAGNOSTICS</H2><PRE>
-- Each routine that returns a pointer returns <STRONG>NULL</STRONG> if an
-- error occurs. Each routine that returns an int value
-+ 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 successfully and <STRONG>ERR</STRONG> if not.
-
-
- </PRE>
- <H2>COMPATIBILITY</H2><PRE>
-- Reasonable care has been taken to ensure compatibility
-- with the native panel facility introduced in SVr3.2
-- (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.
-+ Reasonable care has been taken to ensure compatibility
-+ with the native panel facility introduced in SVr3.2
-+ (inspection of the SVr4 manual pages suggests the program-
-+ ming interface is unchanged). The <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 implementation, and work equally well with dis-
-+ The functions <STRONG>show_panel()</STRONG> and <STRONG>top_panel()</STRONG> are identical
-+ in this implementation, and work equally well with dis-
- played or hidden panels. In the native System V implemen-
- tation, <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
-+ 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>NOTE</H2><PRE>
-- In your library list, libpanel.a should be before libn-
-- curses.a; that is, you want to say `-lpanel -lncurses',
-+ In your library list, libpanel.a should be before libn-
-+ curses.a; that is, you want to say `-lpanel -lncurses',
- not the other way around (which would usually give a link-
- error).
-
-@@ -218,14 +218,14 @@
- <H2>SEE ALSO</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 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
- </PRE>
- <H2>AUTHOR</H2><PRE>
-- Originally written by Warren Tucker &lt;wht@n4hgf.mt-
-- park.ga.us&gt;, primarily to assist in porting u386mon to
-- systems without a native panels library. Repackaged for
-+ Originally written by Warren Tucker &lt;wht@n4hgf.mt-
-+ park.ga.us&gt;, primarily to assist in porting u386mon to
-+ systems without a native panels library. Repackaged for
- ncurses by Zeyd ben-Halim.
-
-
-Index: doc/html/man/resizeterm.3x.html
---- ncurses-5.9/doc/html/man/resizeterm.3x.html 2011-01-09 01:03:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/resizeterm.3x.html 2013-12-21 19:55:47.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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,8 +27,8 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * Author: Thomas E. Dickey 1996-2005
-- * @Id: resizeterm.3x,v 1.14 2010/12/04 18:38:55 tom Exp @
-+ * Author: Thomas E. Dickey 1996-on
-+ * @Id: resizeterm.3x,v 1.17 2013/06/22 20:41:54 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -69,28 +69,29 @@
- terminal (e.g., xterm). The function <STRONG>resizeterm</STRONG> resizes
- the standard and current windows to the specified dimen-
- sions, and adjusts other bookkeeping data used by the
-- <STRONG>ncurses</STRONG> library that record the window dimensions.
-+ <STRONG>ncurses</STRONG> library that record the window dimensions such as
-+ the <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> variables.
-
-- Most of the work is done by the inner function
-+ Most of the work is done by the inner function
- <STRONG>resize_term</STRONG>. The outer function <STRONG>resizeterm</STRONG> adds bookkeep-
-- ing for the SIGWINCH handler. When resizing the windows,
-- <STRONG>resize_term</STRONG> blank-fills the areas that are extended. The
-+ ing for the SIGWINCH handler. When resizing the windows,
-+ <STRONG>resize_term</STRONG> blank-fills the areas that are extended. The
- calling application should fill in these areas with appro-
-- priate data. The <STRONG>resize_term</STRONG> function attempts to resize
-- all windows. However, due to the calling convention of
-- pads, it is not possible to resize these without addi-
-+ priate data. The <STRONG>resize_term</STRONG> function attempts to resize
-+ all windows. However, due to the calling convention of
-+ pads, it is not possible to resize these without addi-
- tional interaction with the application.
-
-- A support function <STRONG>is_term_resized</STRONG> is provided so that
-- applications can check if the <STRONG>resize_term</STRONG> function would
-+ A support function <STRONG>is_term_resized</STRONG> is provided so that
-+ applications can check if the <STRONG>resize_term</STRONG> function would
- modify the window structures. It returns TRUE if the win-
- dows would be modified, and FALSE otherwise.
-
-
- </PRE>
- <H2>RETURN VALUE</H2><PRE>
-- Except as notes, these function return the integer <STRONG>ERR</STRONG>
-- upon failure and <STRONG>OK</STRONG> on success. They will fail if either
-+ 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 memory for the windows.
-
-@@ -98,29 +99,27 @@
- </PRE>
- <H2>NOTES</H2><PRE>
- While these functions are intended to be used to support a
-- signal handler (i.e., for SIGWINCH), care should be taken
-- to avoid invoking them in a context where <STRONG>malloc</STRONG> or <STRONG>real-</STRONG>
-- <STRONG>loc</STRONG> may have been interrupted, since it uses those func-
-+ signal handler (i.e., for SIGWINCH), care should be taken
-+ to avoid invoking them in a context where <STRONG>malloc</STRONG> or <STRONG>real-</STRONG>
-+ <STRONG>loc</STRONG> may have been interrupted, since it uses those func-
- tions.
-
-- If ncurses is configured to supply its own SIGWINCH han-
-- dler, the <STRONG>resizeterm</STRONG> function ungetch's a <STRONG>KEY_RESIZE</STRONG> which
-- will be read on the next call to <STRONG>getch</STRONG>. This is used to
-+ If ncurses is configured to supply its own SIGWINCH han-
-+ dler, the <STRONG>resizeterm</STRONG> function <STRONG>ungetch</STRONG>'s a <STRONG>KEY_RESIZE</STRONG> which
-+ will be read on the next call to <STRONG>getch</STRONG>. This is used to
- alert an application that the screen size has changed, and
-- that it should repaint special features such as pads that
-+ that it should repaint special features such as pads that
- cannot be done automatically.
-
-- 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 system. Thus, even if a SIG-
-- WINCH is received, no screen size change may be recorded.
-- In that case, no <STRONG>KEY_RESIZE</STRONG> is queued for the next call to
-- <STRONG>getch</STRONG>; an <STRONG>ERR</STRONG> will be returned instead.
-+ 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 system. Thus, even if a SIG-
-+ WINCH is received, no screen size change may be recorded.
-
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="wresize.3x.html">wresize(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="wresize.3x.html">wresize(3x)</A></STRONG>.
-
-
- </PRE>
-Index: doc/html/man/tabs.1.html
---- ncurses-5.9/doc/html/man/tabs.1.html 2011-04-04 22:46:50.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/tabs.1.html 2014-08-16 20:43:14.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2011,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: tabs.1,v 1.8 2010/12/04 18:40:45 tom Exp @
-+ * @Id: tabs.1,v 1.11 2013/06/22 18:11:57 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -52,7 +52,7 @@
-
- </PRE>
- <H2>SYNOPSIS</H2><PRE>
-- <STRONG>tabs</STRONG> [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-ahuUV</STRONG>] <EM>file...</EM>
-+ <STRONG>tabs</STRONG> [<EM>options</EM>]] <EM>[tabstop-list]</EM>
-
-
- </PRE>
-@@ -85,14 +85,17 @@
- any debugging option, but not to modify the terminal
- settings.
-
-- The <STRONG>tabs</STRONG> program processes a single list of tab stops.
-- The last option to be processed which defines a list is
-+ <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 list to be processed.
-
- <STRONG>Implicit</STRONG> <STRONG>Lists</STRONG>
-- 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
-+ 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.
-@@ -100,17 +103,18 @@
- Use "<STRONG>-8</STRONG>" to set tabs to the standard interval.
-
- <STRONG>Explicit</STRONG> <STRONG>Lists</STRONG>
-- An explicit list can be defined after the options (this
-- does not use a "-"). The values in the list must be in
-+ 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
-+ Use a '+' to treat a number as an increment relative to
- the previous value, e.g.,
-
- tabs 1,+5,+5,+5,+5
-+
- which is equivalent to the 1,6,11,16,21 example.
-
- <STRONG>Predefined</STRONG> <STRONG>Tab-Stops</STRONG>
-@@ -137,18 +141,18 @@
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- X/Open describes a <STRONG>+m</STRONG> option, to set a terminal's left-
-- margin. Very few of the entries in the terminal database
-+ X/Open describes a <STRONG>+m</STRONG> option, to set a terminal's left-
-+ margin. Very few of the entries in the terminal database
- provide this capability.
-
-- The <STRONG>-d</STRONG> (debug) and <STRONG>-n</STRONG> (no-op) options are extensions not
-+ The <STRONG>-d</STRONG> (debug) and <STRONG>-n</STRONG> (no-op) options are extensions not
- provided by other implementations.
-
-- Documentation for other implementations states that there
-- is a limit on the number of tab stops. While some termi-
-+ Documentation for other implementations states that there
-+ is a limit on the number of tab stops. While some termi-
- nals may not accept an arbitrary number of tab stops, this
-- implementation will attempt to set tab stops up to the
-- right margin of the screen, if the given list happens to
-+ implementation will attempt to set tab stops up to the
-+ right margin of the screen, if the given list happens to
- be that long.
-
-
-@@ -156,7 +160,7 @@
- <H2>SEE ALSO</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>.
-
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
-
-Index: doc/html/man/term.5.html
---- ncurses-5.9/doc/html/man/term.5.html 2011-01-09 01:03:28.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/term.5.html 2013-05-17 22:24:23.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/man/term.7.html
---- ncurses-5.9/doc/html/man/term.7.html 2011-02-25 23:25:09.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/term.7.html 2013-05-17 22:24:23.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2011 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: term.7,v 1.22 2010/12/04 18:41:07 tom Exp @
-+ * @Id: term.7,v 1.23 2011/12/17 23:32:17 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -85,9 +85,9 @@
- the tty device and baud rate.
-
- Setting your own <STRONG>TERM</STRONG> value may also be useful if you have
-- created a custom entry incorporating options (such as
-- visual bell or reverse-video) which you wish to override
-- the system default type for your line.
-+ created a custom entry incorporating options (such as vis-
-+ ual bell or reverse-video) which you wish to override the
-+ system default type for your line.
-
- Terminal type descriptions are stored as files of capabil-
- ity data underneath /usr/share/terminfo. To browse a list
-Index: doc/html/man/term_variables.3x.html
---- ncurses-5.9/doc/html/man/term_variables.3x.html 2011-01-09 01:03:29.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/term_variables.3x.html 2014-05-24 22:05:40.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2011,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: term_variables.3x,v 1.2 2010/12/04 18:38:55 tom Exp @
-+ * @Id: term_variables.3x,v 1.4 2013/12/21 22:17:39 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -99,8 +99,8 @@
- <STRONG>Current</STRONG> <STRONG>Terminal</STRONG> <STRONG>Data</STRONG>
- After initializing the curses or terminfo interfaces, the
- <STRONG>cur_term</STRONG> contains data describing the current terminal.
-- This variable is also set as a side-effect of <STRONG><A HREF="set_term.3x.html">set_term(3x)</A></STRONG>
-- and <STRONG><A HREF="delscreen.3x.html">delscreen(3x)</A></STRONG>.
-+ This variable is also set as a side-effect of <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
-+ and <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>.
-
- It is possible to save a value of <STRONG>cur_term</STRONG> for subsequent
- use as a parameter to <STRONG>set_term</STRONG>, for switching between
-@@ -108,7 +108,7 @@
- from <STRONG>newterm</STRONG> or <STRONG>setupterm</STRONG> to reuse in <STRONG>set_term</STRONG>.
-
- <STRONG>Terminfo</STRONG> <STRONG>Names</STRONG>
-- The <STRONG><A HREF="tic.1.html">tic(1)</A></STRONG> and <STRONG><A HREF="infocmp.1.html">infocmp(1)</A></STRONG> programs use lookup tables for
-+ The <STRONG><A HREF="tic.1m.html">tic(1m)</A></STRONG> and <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG> programs use lookup tables for
- the long and short names of terminfo capabilities, as well
- as the corresponding names for termcap capabilities.
- These are available to other applications, though the
-@@ -130,8 +130,8 @@
-
- </PRE>
- <H2>NOTES</H2><PRE>
-- The low-level terminfo interface is initialized using <STRONG>se-</STRONG>
-- <STRONG><A HREF="setupterm.3x.html">tupterm(3x)</A></STRONG>. The upper-level curses interface uses the
-+ The low-level terminfo interface is initialized using
-+ <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>. The upper-level curses interface uses the
- low-level terminfo interface, internally.
-
-
-@@ -149,8 +149,8 @@
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>, <STRONG>termin-</STRONG>
-- <STRONG><A HREF="terminfo.3x.html">fo(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
-+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>,
-+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
-
-
-
-Index: doc/html/man/terminfo.5.html
---- ncurses-5.9/doc/html/man/terminfo.5.html 2011-04-04 22:46:51.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/terminfo.5.html 2014-08-16 20:43:14.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- * DO NOT EDIT THIS FILE BY HAND!
-@@ -6,7 +6,7 @@
- * Note: this must be run through tbl before nroff.
- * The magic cookie on the first line triggers this under some man programs.
- ****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -32,9 +32,9 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: terminfo.head,v 1.18 2010/07/31 16:08:48 tom Exp @
-+ * @Id: terminfo.head,v 1.21 2013/03/09 22:11:36 tom Exp @
- * Head of terminfo man page ends here
-- * @Id: terminfo.tail,v 1.53 2010/12/04 18:38:55 tom Exp @
-+ * @Id: terminfo.tail,v 1.68 2013/11/09 15:20:48 tom Exp @
- * Beginning of terminfo.tail file
- * This file is part of ncurses.
- * See "terminfo.head" for copyright.
-@@ -73,12 +73,12 @@
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
- <EM>Terminfo</EM> is a data base describing terminals, used by
-- screen-oriented programs such as <STRONG><A HREF="nvi.1.html">nvi(1)</A></STRONG>, <STRONG><A HREF="rogue.1.html">rogue(1)</A></STRONG> and
-+ screen-oriented programs such as <STRONG>nvi(1)</STRONG>, <STRONG>rogue(1)</STRONG> and
- libraries such as <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>. <EM>Terminfo</EM> describes termi-
- nals by giving a set of capabilities which they have, by
- specifying how to perform screen operations, and by speci-
- fying padding requirements and initialization sequences.
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
- Entries in <EM>terminfo</EM> consist of a sequence of `,' separated
- fields (embedded commas may be escaped with a backslash or
-@@ -106,14 +106,13 @@
- Terminal names (except for the last, verbose entry) should
- be chosen 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
-+ root name, thus "hp2621". This name should not contain
- hyphens. Modes that the hardware can be in, or user pref-
- erences, 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 pos-
- sible:
-
--
- <STRONG>Suffix</STRONG> <STRONG>Meaning</STRONG> <STRONG>Example</STRONG>
- -<EM>nn</EM> Number of lines on the screen aaa-60
- -<EM>n</EM>p Number of pages of memory c100-4p
-@@ -126,14 +125,14 @@
- -ns No status line hp2626-ns
- -rv Reverse video c100-rv
- -s Enable status line vt100-s
--
- -vb Use visible bell instead of beep wy370-vb
-+
- -w Wide mode (&gt; 80 columns, usually 132) vt100-w
-
- For more on terminal naming conventions, see the <STRONG>term(7)</STRONG>
- manual page.
-
-- <STRONG>Capabilities</STRONG>
-+ <STRONG>Predefined</STRONG> <STRONG>Capabilities</STRONG>
- The following is a complete table of the capabilities
- included in a terminfo description block and available to
- terminfo-using code. In each line of the table,
-@@ -176,133 +175,134 @@
- These are the boolean capabilities:
-
-
-- <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-
-+ <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-
-+ auto_right_margin am am terminal has auto-
- matic margins
-- back_color_erase bce ut screen erased with
-+ back_color_erase bce ut screen erased with
- background color
-- can_change ccc cc terminal can re-
-+ can_change ccc cc terminal can re-
- define existing col-
- ors
-- ceol_standout_glitch xhp xs standout not erased
-+ ceol_standout_glitch xhp xs standout not erased
- by overwriting (hp)
-- col_addr_glitch xhpa YA only positive motion
-+ col_addr_glitch xhpa YA only positive motion
- for hpa/mhpa caps
-
-
-- cpi_changes_res cpix YF changing character
-+
-+ cpi_changes_res cpix YF changing character
- pitch changes reso-
- lution
-- cr_cancels_micro_mode crxm YB using cr turns off
-+ cr_cancels_micro_mode crxm YB using cr turns off
- micro mode
-- dest_tabs_magic_smso xt xt tabs destructive,
-+ dest_tabs_magic_smso xt xt tabs destructive,
- magic so char
- (t1061)
-- eat_newline_glitch xenl xn newline ignored
-+ eat_newline_glitch xenl xn newline ignored
- after 80 cols (con-
- cept)
-- erase_overstrike eo eo can erase over-
-+ erase_overstrike eo eo can erase over-
- strikes with a blank
-- generic_type gn gn generic line type
-- hard_copy hc hc hardcopy terminal
-- hard_cursor chts HC cursor is hard to
-+ 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
-+ has_meta_key km km Has a meta key
- (i.e., sets 8th-bit)
-- has_print_wheel daisy YC printer needs opera-
-+ has_print_wheel daisy YC printer needs opera-
- tor to change char-
- acter set
-- has_status_line hs hs has extra status
-+ has_status_line hs hs has extra status
- line
-- hue_lightness_saturation hls hl terminal uses only
-+ hue_lightness_saturation hls hl terminal uses only
- HLS color notation
- (Tektronix)
-- insert_null_glitch in in insert mode distin-
-+ insert_null_glitch in in insert mode distin-
- guishes nulls
-- lpi_changes_res lpix YG changing line pitch
-+ lpi_changes_res lpix YG changing line pitch
- changes resolution
-- memory_above da da display may be
-+ memory_above da da display may be
- retained above the
- screen
-- memory_below db db display may be
-+ memory_below db db display may be
- retained below the
- screen
-- move_insert_mode mir mi safe to move while
-+ move_insert_mode mir mi safe to move while
- in insert mode
-- move_standout_mode msgr ms safe to move while
-+ move_standout_mode msgr ms safe to move while
- in standout mode
-- needs_xon_xoff nxon nx padding will not
-+ needs_xon_xoff nxon nx padding will not
- work, xon/xoff
- required
-- no_esc_ctlc xsb xb beehive (f1=escape,
-+ no_esc_ctlc xsb xb beehive (f1=escape,
- f2=ctrl C)
-- no_pad_char npc NP pad character does
-+ no_pad_char npc NP pad character does
- not exist
-- non_dest_scroll_region ndscr ND scrolling region is
-+ non_dest_scroll_region ndscr ND scrolling region is
- non-destructive
-- non_rev_rmcup nrrmc NR smcup does not
-+ non_rev_rmcup nrrmc NR smcup does not
- reverse rmcup
-- over_strike os os terminal can over-
-+ over_strike os os terminal can over-
- strike
-- prtr_silent mc5i 5i printer will not
-+ prtr_silent mc5i 5i printer will not
- echo on screen
-- row_addr_glitch xvpa YD only positive motion
-+ row_addr_glitch xvpa YD only positive motion
- for vpa/mvpa caps
-- semi_auto_right_margin sam YE printing in last
-+ semi_auto_right_margin sam YE printing in last
- column causes cr
-- status_line_esc_ok eslok es escape can be used
-+ status_line_esc_ok eslok es escape can be used
- on the status line
-- tilde_glitch hz hz cannot print ~'s
-+ tilde_glitch hz hz cannot print ~'s
- (hazeltine)
-
-
-- transparent_underline ul ul underline character
-+ transparent_underline ul ul underline character
- overstrikes
-- xon_xoff xon xo terminal uses
-+ xon_xoff xon xo terminal uses
- xon/xoff handshaking
-
- These are the numeric capabilities:
-
-
-- <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG>
-- <STRONG>Numeric</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG>
-- columns cols co number of columns in
-+ <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG>
-+ <STRONG>Numeric</STRONG> <STRONG>name</STRONG> <STRONG>Code</STRONG>
-+ columns cols co number of columns in
- a line
-- init_tabs it it tabs initially every
-+ init_tabs it it tabs initially every
- # spaces
-- label_height lh lh rows in each label
-- label_width lw lw columns in each
-+ label_height lh lh rows in each label
-+ label_width lw lw columns in each
- label
-- lines lines li number of lines on
-+ lines lines li number of lines on
- screen or page
-- lines_of_memory lm lm lines of memory if &gt;
-+ lines_of_memory lm lm lines of memory if &gt;
- line. 0 means varies
-- magic_cookie_glitch xmc sg number of blank
-+ magic_cookie_glitch xmc sg number of blank
- characters left by
- smso or rmso
-- max_attributes ma ma maximum combined
-+ max_attributes ma ma maximum combined
- attributes terminal
- can handle
-- max_colors colors Co maximum number of
-+ max_colors colors Co maximum number of
- colors on screen
-- max_pairs pairs pa maximum number of
-+ max_pairs pairs pa maximum number of
- color-pairs on the
- screen
-- maximum_windows wnum MW maximum number of
-+ maximum_windows wnum MW maximum number of
- defineable windows
-- no_color_video ncv NC video attributes
-+ no_color_video ncv NC video attributes
- that cannot be used
- with colors
-- num_labels nlab Nl number of labels on
-+ num_labels nlab Nl number of labels on
- screen
-- padding_baud_rate pb pb lowest baud rate
-+ padding_baud_rate pb pb lowest baud rate
- where padding needed
-- virtual_terminal vt vt virtual terminal
-+ virtual_terminal vt vt virtual terminal
- number (CB/unix)
-- width_status_line wsl ws number of columns in
-+ width_status_line wsl ws number of columns in
- status line
-
- The following numeric capabilities are present in the
-@@ -310,47 +310,47 @@
- man page. They came in 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
-+ <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
-+ bit_image_type bitype Yp type of bit-image
- device
-- buffer_capacity bufsz Ya numbers of bytes
-+ buffer_capacity bufsz Ya numbers of bytes
- buffered before
- printing
-- buttons btns BT number of buttons on
-+ buttons btns BT number of buttons on
- mouse
-- dot_horz_spacing spinh Yc spacing of dots hor-
-+ dot_horz_spacing spinh Yc spacing of dots hor-
- izontally in dots
- per inch
-
-- dot_vert_spacing spinv Yb spacing of pins ver-
-+ dot_vert_spacing spinv Yb spacing of pins ver-
- tically in pins per
- inch
-- max_micro_address maddr Yd maximum value in
-+ max_micro_address maddr Yd maximum value in
- micro_..._address
-- max_micro_jump mjump Ye maximum value in
-+ max_micro_jump mjump Ye maximum value in
- parm_..._micro
-- micro_col_size mcs Yf character step size
-+ micro_col_size mcs Yf character step size
- when in micro mode
-- micro_line_size mls Yg line step size when
-+ micro_line_size mls Yg line step size when
- in micro mode
-- number_of_pins npins Yh numbers of pins in
-+ number_of_pins npins Yh numbers of pins in
- print-head
-- output_res_char orc Yi horizontal resolu-
-+ output_res_char orc Yi horizontal resolu-
- tion in units per
- line
-- output_res_horz_inch orhi Yk horizontal resolu-
-+ output_res_horz_inch orhi Yk horizontal resolu-
- tion in units per
- inch
-- output_res_line orl Yj vertical resolution
-+ output_res_line orl Yj vertical resolution
- in units per line
-- output_res_vert_inch orvi Yl vertical resolution
-+ output_res_vert_inch orvi Yl vertical resolution
- in units per inch
-- print_rate cps Ym print rate in char-
-+ print_rate cps Ym print rate in char-
- acters per second
-- wide_char_size widcs Yn character step size
-+ wide_char_size widcs Yn character step size
- when in double wide
- mode
-
-@@ -402,8 +402,8 @@
- prototype !?
- create_window cwin CW define a window #1
- from #2,#3 to #4,#5
-- cursor_address cup cm move to row #1
-- columns #2
-+ cursor_address cup cm move to row #1 col-
-+ umns #2
- cursor_down cud1 do down one line
- cursor_home home ho home cursor (if no
- cup)
-@@ -904,8 +904,8 @@
- zero_motion zerom Zx No motion for subse-
- quent character
-
-- The following string capabilities are present in the
-- SVr4.0 term structure, but were originally not documented
-+ The following string capabilities are present in the
-+ SVr4.0 term structure, but were originally not documented
- in the man page.
-
-
-@@ -989,13 +989,14 @@
- bottom margins to
- #1, #2
-
-- The XSI Curses standard added these. They are some
-- post-4.1 versions of System V curses, e.g., Solaris 2.5
-- and IRIX 6.x. 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!
-+ The XSI Curses standard added these hardcopy capabili-
-+ ties. 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. Accord-
-+ ing 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!
-
-
- <STRONG>Variable</STRONG> <STRONG>Cap-</STRONG> <STRONG>TCap</STRONG> <STRONG>Description</STRONG>
-@@ -1015,123 +1016,210 @@
- set_a_attributes sgr1 sA Define second set of
- video attributes
- #1-#6
-- set_pglen_inch slengthsL YI Set page length
-- to #1 hundredth of
-- an inch
-+ set_pglen_inch slengthYI Set page length to
-+ #1 hundredth of an
-+ inch (some implemen-
-+ tations use sL for
-+ termcap).
-+
-+ <STRONG>User-Defined</STRONG> <STRONG>Capabilities</STRONG>
-+ 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 capa-
-+ bilities.
-+
-+ <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 capabil-
-+ ity. The <STRONG>use_extended_names</STRONG> function makes this informa-
-+ tion 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 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 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.
-
- <STRONG>A</STRONG> <STRONG>Sample</STRONG> <STRONG>Entry</STRONG>
- The following entry, describing an ANSI-standard terminal,
-- is representative of what a <STRONG>terminfo</STRONG> entry for a modern
-+ is representative of what a <STRONG>terminfo</STRONG> entry for a modern
- terminal typically looks like.
-
-- ansi|ansi/pc-term compatible with color,
-- mc5i,
-- colors#8, ncv#3, pairs#64,
-- cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC,
-- cuu=\E[%p1%dA, dch=\E[%p1%dP, dl=\E[%p1%dM,
-- ech=\E[%p1%dX, el1=\E[1K, hpa=\E[%p1%dG, ht=\E[I,
-- ich=\E[%p1%d@, il=\E[%p1%dL, indn=\E[%p1%dS, .indn=\E[%p1%dT,
-- kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, kf1=\E[M, kf10=\E[V,
-- kf11=\E[W, kf12=\E[X, kf2=\E[N, kf3=\E[O, kf4=\E[P,
-- kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T, kf9=\E[U,
-- kich1=\E[L, mc4=\E[4i, mc5=\E[5i, nel=\r\E[S,
-- op=\E[37;40m, rep=%p1%c\E[%p2%{1}%-%db,
-- rin=\E[%p1%dT, s0ds=\E(B, s1ds=\E)B, s2ds=\E*B,
-- s3ds=\E+B, 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}%=%t3%e%p1%d%;m,
-- sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m,
-- sgr0=\E[0;10m, tbc=\E[2g, u6=\E[%d;%dR, u7=\E[6n,
-- u8=\E[?%[;0123456789]c, u9=\E[c, vpa=\E[%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 lines beginning with ``#''.
-- Capabilities in <EM>terminfo</EM> are of three types: Boolean capa-
-- bilities which indicate that the terminal has some partic-
-- ular feature, numeric capabilities giving the size of the
-- terminal or the size of particular delays, and string
-- capabilities, which give a sequence which can be used to
-- perform particular terminal operations.
-+ ansi|ansi/pc-term compatible with color,
-+ am, mc5i, mir, msgr,
-+ colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64,
-+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260
-+ j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303
-+ u\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,
-+ cr=^M, 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,
-+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
-+ el1=\E[1K, home=\E[H, hpa=\E[%i%p1%dG, ht=\E[I, hts=\EH,
-+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ indn=\E[%p1%dS, invis=\E[8m, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L,
-+ mc4=\E[4i, mc5=\E[5i, nel=\r\E[S, op=\E[39;49m,
-+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, rin=\E[%p1%dT,
-+ rmacs=\E[10m, rmpch=\E[10m, rmso=\E[m, rmul=\E[m,
-+ s0ds=\E(B, s1ds=\E)B, s2ds=\E*B, s3ds=\E+B,
-+ 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%;
-+ %?%p6%t;1%;
-+ %?%p7%t;8%;
-+ %?%p9%t;11%;m,
-+ sgr0=\E[0;10m, smacs=\E[11m, smpch=\E[11m, smso=\E[7m,
-+ 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 lines beginning with "#".
-+ Capabilities in <EM>terminfo</EM> are of three types:
-+
-+ <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 perform particular terminal operations.
-
- <STRONG>Types</STRONG> <STRONG>of</STRONG> <STRONG>Capabilities</STRONG>
-- 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
-+ 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 <STRONG>cols</STRONG>, which indicates the number of columns the ter-
-- minal has, gives the value `80' for ansi. Values for
-+ followed by the character "#" and then a positive value.
-+ Thus <STRONG>cols</STRONG>, which indicates the number of columns the ter-
-+ minal has, gives the value "80" for ansi. Values for
- numeric capabilities may be specified in decimal, octal or
-- hexadecimal, using the C programming language conventions
-+ 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
-+ 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
-- `,'.
-+ an "=", and then a string ending at the next following
-+ ",".
-
-- A number of escape sequences are provided in the string
-+ A number of escape sequences are provided in the string
- valued capabilities for easy encoding of characters there.
-- Both <STRONG>\E</STRONG> and <STRONG>\e</STRONG> map to an ESCAPE character, <STRONG>^x</STRONG> maps to a
-- control-x for any appropriate x, and the sequences <STRONG>\n</STRONG> <STRONG>\l</STRONG>
-- <STRONG>\r</STRONG> <STRONG>\t</STRONG> <STRONG>\b</STRONG> <STRONG>\f</STRONG> <STRONG>\s</STRONG> give a newline, line-feed, return, tab,
-- backspace, form-feed, and space. Other escapes include <STRONG>\^</STRONG>
-- for <STRONG>^</STRONG>, <STRONG>\\</STRONG> for <STRONG>\</STRONG>, <STRONG>\</STRONG>, for comma, <STRONG>\:</STRONG> for <STRONG>:</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, provid-
-- ing CS7 is specified. See <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>.) 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 are supplied by <EM>tputs</EM> to provide
-- this delay. The delay must be a number with at most one
-+ Both <STRONG>\E</STRONG> and <STRONG>\e</STRONG> map to an ESCAPE character, <STRONG>^x</STRONG> maps to a
-+ control-x for any appropriate x, and the sequences <STRONG>\n</STRONG> <STRONG>\l</STRONG>
-+ <STRONG>\r</STRONG> <STRONG>\t</STRONG> <STRONG>\b</STRONG> <STRONG>\f</STRONG> <STRONG>\s</STRONG> give a newline, line-feed, return, tab,
-+ backspace, form-feed, and space. Other escapes include
-+
-+ <STRONG>o</STRONG> <STRONG>\^</STRONG> for <STRONG>^</STRONG>,
-+
-+ <STRONG>o</STRONG> <STRONG>\\</STRONG> for <STRONG>\</STRONG>,
-+
-+ <STRONG>o</STRONG> <STRONG>\</STRONG>, for comma,
-+
-+ <STRONG>o</STRONG> <STRONG>\:</STRONG> for <STRONG>:</STRONG>,
-+
-+ <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 termi-
-+ nals, providing CS7 is specified. See <STRONG>stty(1)</STRONG>.
-+
-+ The reason for this quirk is to maintain binary com-
-+ patibility of the compiled terminfo files with other
-+ implementations, e.g., the SVr4 systems, which docu-
-+ ment this. Compiled terminfo files use null-termi-
-+ nated 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 are supplied by <EM>tputs</EM> to provide
-+ this delay. The delay must be a number with at most one
- decimal place of precision; it may be followed by suffixes
-- `*' or '/' or both. 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
-+ "*" or "/" or both. 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. 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
-+ 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. 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
-+ 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.
-
--
- <STRONG>Fetching</STRONG> <STRONG>Compiled</STRONG> <STRONG>Descriptions</STRONG>
-- If the environment variable TERMINFO is set, it is inter-
-- preted as the pathname of a directory containing the com-
-- piled description you are working on. Only that directory
-- is searched.
--
-- If TERMINFO is not set, the <STRONG>ncurses</STRONG> version of the ter-
-- minfo reader code will instead look in the directory
-- <STRONG>$HOME/.terminfo</STRONG> for a compiled description. If it fails
-- to find one there, and the environment variable TER-
-- MINFO_DIRS is set, it will interpret the contents of that
-- variable as a list of colon- separated directories to be
-- searched (an empty entry is interpreted as a command to
-- search <EM>/usr/share/terminfo</EM>). If no description is found
-- in any of the TERMINFO_DIRS directories, the fetch fails.
--
-- If neither TERMINFO nor TERMINFO_DIRS is set, the last
-- place tried will be the system terminfo directory,
-- <EM>/usr/share/terminfo</EM>.
--
-- (Neither the <STRONG>$HOME/.terminfo</STRONG> lookups nor TERMINFO_DIRS
-- extensions are supported under stock System V ter-
-- minfo/curses.)
-+ 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 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>$HOME/.terminfo</STRONG> for a compiled descrip-
-+ tion.
-+
-+ <STRONG>o</STRONG> Next, if the environment variable TERMINFO_DIRS is
-+ set, <STRONG>ncurses</STRONG> will interpret the contents of that vari-
-+ able 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 adacent colons) is
-+ interpreted as the system location <EM>/usr/share/ter-</EM>
-+ <EM>minfo</EM>.
-+
-+ <STRONG>o</STRONG> Finally, <STRONG>ncurses</STRONG> searches these compiled-in locations:
-+
-+ <STRONG>o</STRONG> a list of directories
-+ (/usr/local/ncurses/share/terminfo:/usr/share/ter-
-+ minfo), and
-
-+ <STRONG>o</STRONG> the system terminfo directory, <EM>/usr/share/terminfo</EM>
-+ (the compiled-in default).
-
- <STRONG>Preparing</STRONG> <STRONG>Descriptions</STRONG>
- We now outline how to prepare descriptions of terminals.
-@@ -1147,12 +1235,11 @@
- To get the padding for insert line right (if the terminal
- manufacturer did not document it) a severe test is to edit
- a large file at 9600 baud, delete 16 or so lines from the
-- middle of the screen, then hit the `u' key several times
-+ middle of the screen, then hit the "u" key several times
- quickly. If the terminal messes up, more padding is usu-
- ally needed. A similar test can be used for insert char-
- acter.
-
--
- <STRONG>Basic</STRONG> <STRONG>Capabilities</STRONG>
- The number of columns on each line for the terminal is
- given by the <STRONG>cols</STRONG> numeric capability. If the terminal is
-@@ -1178,7 +1265,7 @@
- as <STRONG>cub1</STRONG>. Similarly, codes to move to the right, up, and
- down should be given as <STRONG>cuf1</STRONG>, <STRONG>cuu1</STRONG>, and <STRONG>cud1</STRONG>. These local
- cursor motions should not alter the text they pass over,
-- for example, you would not normally use `<STRONG>cuf1</STRONG>= ' because
-+ for example, you would not normally use "<STRONG>cuf1</STRONG>= " because
- the space would erase the character moved over.
-
- A very important point here is that the local cursor
-@@ -1190,137 +1277,135 @@
- left corner of the screen and send the <STRONG>ind</STRONG> (index) string.
-
- To scroll text down, a program goes to the top left corner
-- of the screen and sends the <STRONG>ri</STRONG> (reverse index) string.
-- The strings <STRONG>ind</STRONG> and <STRONG>ri</STRONG> are undefined when not on their
-+ of the screen and sends the <STRONG>ri</STRONG> (reverse index) string.
-+ The strings <STRONG>ind</STRONG> and <STRONG>ri</STRONG> are undefined when not on their
- respective corners of the screen.
-
- Parameterized versions of the scrolling sequences are <STRONG>indn</STRONG>
- and <STRONG>rin</STRONG> which have the same semantics as <STRONG>ind</STRONG> and <STRONG>ri</STRONG> except
-- that they take one parameter, and scroll that many lines.
-- They are also undefined except at the appropriate edge of
-+ that they take one parameter, and scroll that many lines.
-+ They are also undefined except at the appropriate edge of
- the screen.
-
-- The <STRONG>am</STRONG> capability tells whether the cursor sticks at the
-- right edge of the screen when text is output, but this
-+ The <STRONG>am</STRONG> capability tells whether the cursor sticks at the
-+ right edge of the screen when text is output, but this
- does not necessarily apply to a <STRONG>cuf1</STRONG> from the last column.
-- The only local motion which is defined from the left edge
-- is if <STRONG>bw</STRONG> is given, then a <STRONG>cub1</STRONG> from the left edge will
-- move to the right edge of the previous row. If <STRONG>bw</STRONG> is not
-- given, the effect is undefined. This is useful for draw-
-- ing 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
-- 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>
-+ The only local motion which is defined from the left edge
-+ is if <STRONG>bw</STRONG> is given, then a <STRONG>cub1</STRONG> from the left edge will
-+ move to the right edge of the previous row. If <STRONG>bw</STRONG> is not
-+ given, the effect is undefined. This is useful for draw-
-+ ing 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
-+ 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" terminals. Thus the model 33 teletype is
-+ "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,
-+ bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os,
-
- while the Lear Siegler ADM-3 is described as
-
- adm3|3|lsi adm3,
-- am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J,
-- ind=^J, lines#24,
--
-+ am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J,
-+ ind=^J, lines#24,
-
- <STRONG>Parameterized</STRONG> <STRONG>Strings</STRONG>
-- Cursor addressing and other strings requiring parameters
-- in the terminal are described by a parameterized string
-- capability, with <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG> like escapes <STRONG>%x</STRONG> in it. For
-- example, to address the cursor, the <STRONG>cup</STRONG> capability is
-+ 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
-+ 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 special case. Other
-- operations, including "%t" pop their operand from the
-+ 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 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:
-
-+ <STRONG>%%</STRONG> outputs "%"
-
-- %% outputs `%'
--
-- %<EM>[[</EM>:<EM>]flags][width[.precision]][</EM>doxXs<EM>]</EM>
-- as in <STRONG>printf</STRONG>, flags are [-+#] and space. Use a `:'
-- to allow the next character to be a `-' flag, avoid-
-+ <STRONG>%</STRONG><EM>[[</EM>:<EM>]flags][width[.precision]][</EM><STRONG>doxXs</STRONG><EM>]</EM>
-+ as in <STRONG>printf</STRONG>, flags are <EM>[-+#]</EM> and <EM>space</EM>. Use a ":"
-+ to allow the next character to be a "-" flag, avoid-
- ing interpreting "%-" as an operator.
-
- %c print pop() like %c in <STRONG>printf</STRONG>
-
-- %s print pop() like %s in <STRONG>printf</STRONG>
-+ <STRONG>%s</STRONG> print pop() like %s in <STRONG>printf</STRONG>
-
-- %p[1-9]
-+ <STRONG>%p</STRONG><EM>[1-9]</EM>
- push <EM>i</EM>'th parameter
-
-- %P[a-z]
-- set dynamic variable [a-z] to pop()
-+ <STRONG>%P</STRONG><EM>[a-z]</EM>
-+ set dynamic variable <EM>[a-z]</EM> to pop()
-
-- %g[a-z]
-- get dynamic variable [a-z] and push it
-+ <STRONG>%g</STRONG><EM>[a-z]/</EM>
-+ get dynamic variable <EM>[a-z]</EM> and push it
-
-- %P[A-Z]
-- set static variable [a-z] to pop()
-+ <STRONG>%P</STRONG><EM>[A-Z]</EM>
-+ set static variable <EM>[a-z]</EM> to <EM>pop()</EM>
-
-- %g[A-Z]
-- get static variable [a-z] and push it
--
-- The terms "static" and "dynamic" are misleading.
-- Historically, these are simply two different sets of
-- variables, whose values are not reset between calls
-- to <STRONG>tparm</STRONG>. However, that fact is not documented in
-- other implementations. Relying on it will adversely
-+ <STRONG>%g</STRONG><EM>[A-Z]</EM>
-+ get static variable <EM>[a-z]</EM> and push it
-+
-+ The terms "static" and "dynamic" are misleading.
-+ Historically, these are simply two different sets of
-+ variables, whose values are not reset between calls
-+ to <STRONG>tparm</STRONG>. However, that fact is not documented in
-+ other implementations. Relying on it will adversely
- impact portability to other implementations.
-
-- %'<EM>c</EM>' char constant <EM>c</EM>
-+ <STRONG>%'</STRONG><EM>c</EM><STRONG>'</STRONG> char constant <EM>c</EM>
-
-- %{<EM>nn</EM>}
-+ <STRONG>%{</STRONG><EM>nn</EM><STRONG>}</STRONG>
- integer constant <EM>nn</EM>
-
-- %l push strlen(pop)
-+ <STRONG>%l</STRONG> push strlen(pop)
-
-- %+ %- %* %/ %m
-- arithmetic (%m is mod): push(pop() op pop())
-+ <STRONG>%+</STRONG>, <STRONG>%-</STRONG>, <STRONG>%*</STRONG>, <STRONG>%/</STRONG>, <STRONG>%m</STRONG>
-+ arithmetic (%m is mod): <EM>push(pop()</EM> <EM>op</EM> <EM>pop())</EM>
-
-- %&amp; %| %^
-- bit operations (AND, OR and exclusive-OR): push(pop()
-- op pop())
-+ <STRONG>%&amp;</STRONG>, <STRONG>%|</STRONG>, <STRONG>%^</STRONG>
-+ bit operations (AND, OR and exclusive-OR): <EM>push(pop()</EM>
-+ <EM>op</EM> <EM>pop())</EM>
-
-- %= %&gt; %&lt;
-- logical operations: push(pop() op pop())
-+ <STRONG>%=</STRONG>, <STRONG>%&gt;</STRONG>, <STRONG>%&lt;</STRONG>
-+ logical operations: <EM>push(pop()</EM> <EM>op</EM> <EM>pop())</EM>
-
-- %A, %O
-+ <STRONG>%A</STRONG>, <STRONG>%O</STRONG>
- logical AND and OR operations (for conditionals)
-
-- %! %~
-- unary operations (logical and bit complement):
-+ <STRONG>%!</STRONG>, <STRONG>%~</STRONG>
-+ unary operations (logical and bit complement):
- push(op pop())
-
-- %i add 1 to first two parameters (for ANSI terminals)
-+ <STRONG>%i</STRONG> add 1 to first two parameters (for ANSI terminals)
-
-- %? <EM>expr</EM> %t <EM>thenpart</EM> %e <EM>elsepart</EM> %;
-- This forms an if-then-else. The %e <EM>elsepart</EM> is
-- optional. Usually the %? <EM>expr</EM> part pushes a value
-- onto the stack, and %t pops it from the stack, test-
-- ing if it is nonzero (true). If it is zero (false),
-- control passes to the %e (else) part.
-+ <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, test-
-+ ing 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:
-- %? c1 %t b1 %e c2 %t b2 %e c3 %t b3 %e c4 %t b4 %e %;
-+ <STRONG>%?</STRONG> c1 <STRONG>%t</STRONG> b1 <STRONG>%e</STRONG> c2 <STRONG>%t</STRONG> b2 <STRONG>%e</STRONG> c3 <STRONG>%t</STRONG> b3 <STRONG>%e</STRONG> c4 <STRONG>%t</STRONG> b4 <STRONG>%e</STRONG> <STRONG>%;</STRONG>
-
- where ci are conditions, bi are bodies.
-
-@@ -1332,7 +1417,7 @@
-
- Binary operations are in postfix form with the operands in
- the usual order. That is, to get x-5 one would use
-- "%gx%{5}%-". %P and %g variables are persistent across
-+ "%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,
-@@ -1342,241 +1427,238 @@
- its. 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
-+ 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
-+ 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 col-
- umn 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 space (32),
-- adds them (pushing the sum on the stack in place of the
-- two previous values) and outputs that value as a charac-
-- ter. Then the same is done for the second parameter.
-+ '%+%c%p2%' '%+%c". After sending "\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 charac-
-+ ter. Then the same is done for the second parameter.
- More complex arithmetic is possible using the stack.
-
--
- <STRONG>Cursor</STRONG> <STRONG>Motions</STRONG>
- 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
-+ 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 corner of the screen,
-- not of memory. (Thus, the \EH sequence on HP terminals
-+ 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 address-
-- ing, these can be given as single parameter capabilities
-+ ing, these can be given as single parameter capabilities
- <STRONG>hpa</STRONG> (horizontal position absolute) and <STRONG>vpa</STRONG> (vertical posi-
- tion 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.
-+ 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 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
-+ 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
- cursor addressing, a one screen-sized window must be fixed
-- into the terminal for cursor addressing to work properly.
-+ 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
-+ 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>.
-
--
- <STRONG>Area</STRONG> <STRONG>Clears</STRONG>
- If the terminal can clear from the current position to the
-- end of the line, leaving the cursor where it is, this
-+ 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
-+ 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 available.)
-
--
- <STRONG>Insert/delete</STRONG> <STRONG>line</STRONG> <STRONG>and</STRONG> <STRONG>vertical</STRONG> <STRONG>motions</STRONG>
-- 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
-+ 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
-+ 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 takes two parameters: the top and
-+ 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
-+ 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
-+ 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 combination of index with the memory-lock feature
-- found on some terminals (like the HP-700/90 series, which
-+ 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 ter-
-+ 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 ter-
- minals with those features.
-
-- 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 some-
-- thing to the bottom line, move the cursor to the top of
-+ 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 some-
-+ thing 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 simu-
-- late destructive scrolling; their documentation cautions
-- you not to define <STRONG>csr</STRONG> unless this is true. This <STRONG>curses</STRONG>
-+ 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 simu-
-+ late 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>ndstr</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
-+ of memory, which all commands affect, it should be given
- as the parameterized string <STRONG>wind</STRONG>. The four parameters are
-- the starting and ending lines in memory and the starting
-+ the starting and ending lines in memory and the starting
- and ending columns in memory, in that order.
-
-- If the terminal can retain display memory above, then the
-- <STRONG>da</STRONG> capability should be given; if display memory can be
-- retained below, then <STRONG>db</STRONG> should be given. These indicate
-- that deleting a line or scrolling may bring non-blank
-- lines up from below or that scrolling back with <STRONG>ri</STRONG> may
-+ If the terminal can retain display memory above, then the
-+ <STRONG>da</STRONG> capability should be given; if display memory can be
-+ retained below, then <STRONG>db</STRONG> should be given. These indicate
-+ that deleting a line or scrolling may bring non-blank
-+ lines up from below or that scrolling back with <STRONG>ri</STRONG> may
- bring down non-blank lines.
-
--
- <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG>
-- 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 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 ter-
-- minal 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 ter-
-- minals whose insert mode cannot be described with the sin-
-- gle attribute.
-+ 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 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 clear-
-+ ing 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 posi-
-+ tion 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
-+ 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 it here.
--
-- If your terminal has both, insert mode is usually prefer-
-- able 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
-+ 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 charac-
-+ ter 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 prefer-
-+ able 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
-+ 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
-+ 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 after an insert of a single
-+ milliseconds 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>
-+ 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 mode, give this as a number of milliseconds
-- padding in <STRONG>rmp</STRONG>.
-+ in insert mode, give this as a number of milliseconds pad-
-+ ding 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
-+ 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 charac-
-- ter, <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
-+ Finally, you can specify <STRONG>dch1</STRONG> to delete a single charac-
-+ ter, <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 without moving the cursor) can be given as <STRONG>ech</STRONG>
-+ 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.
-
--
- <STRONG>Highlighting,</STRONG> <STRONG>Underlining,</STRONG> <STRONG>and</STRONG> <STRONG>Visible</STRONG> <STRONG>Bells</STRONG>
- If your terminal has one or more kinds of display
-- attributes, these can be represented in a number of dif-
-+ attributes, these can be represented in a number of dif-
- ferent ways. You should choose one display form as <EM>stand-</EM>
- <EM>out</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,
-+ 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 spa-
-+ ces 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
-@@ -1605,19 +1687,18 @@
-
- For example, the DEC vt220 supports most of the modes:
-
-+ <STRONG>tparm</STRONG> <STRONG>parameter</STRONG> <STRONG>attribute</STRONG> <STRONG>escape</STRONG> <STRONG>sequence</STRONG>
-
-- <STRONG>tparm</STRONG> <STRONG>parameter</STRONG> <STRONG>attribute</STRONG> <STRONG>escape</STRONG> <STRONG>sequence</STRONG>
--
-- none none \E[0m
-- p1 standout \E[0;1;7m
-- p2 underline \E[0;4m
-- p3 reverse \E[0;7m
-- p4 blink \E[0;5m
-- p5 dim not available
-- p6 bold \E[0;1m
-- p7 invis \E[0;8m
-- p8 protect not used
-- p9 altcharset ^O (off) ^N (on)
-+ none none \E[0m
-+ p1 standout \E[0;1;7m
-+ p2 underline \E[0;4m
-+ p3 reverse \E[0;7m
-+ p4 blink \E[0;5m
-+ p5 dim not available
-+ p6 bold \E[0;1m
-+ p7 invis \E[0;8m
-+ 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
-@@ -1637,23 +1718,21 @@
- Writing out the above sequences, along with their depen-
- dencies yields
-
-+ <STRONG>sequence</STRONG> <STRONG>when</STRONG> <STRONG>to</STRONG> <STRONG>output</STRONG> <STRONG>terminfo</STRONG> <STRONG>translation</STRONG>
-
-- <STRONG>sequence</STRONG> <STRONG>when</STRONG> <STRONG>to</STRONG> <STRONG>output</STRONG> <STRONG>terminfo</STRONG> <STRONG>translation</STRONG>
--
-- \E[0 always \E[0
-- ;1 if p1 or p6 %?%p1%p6%|%t;1%;
-- ;4 if p2 %?%p2%|%t;4%;
-- ;5 if p4 %?%p4%|%t;5%;
--
-- ;7 if p1 or p3 %?%p1%p3%|%t;7%;
-- ;8 if p7 %?%p7%|%t;8%;
-- m always m
-- ^N or ^O if p9 ^N, else ^O %?%p9%t^N%e^O%;
-+ \E[0 always \E[0
-+ ;1 if p1 or p6 %?%p1%p6%|%t;1%;
-+ ;4 if p2 %?%p2%|%t;4%;
-+ ;5 if p4 %?%p4%|%t;5%;
-+ ;7 if p1 or p3 %?%p1%p3%|%t;7%;
-+ ;8 if p7 %?%p7%|%t;8%;
-+ m always m
-+ ^N or ^O if p9 ^N, else ^O %?%p9%t^N%e^O%;
-
- Putting this all together into the sgr sequence gives:
-
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;
-- %?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ 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
-@@ -1664,8 +1743,8 @@
- 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
-+ 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
-@@ -1695,7 +1774,6 @@
- erasable with a blank, then this should be indicated by
- giving <STRONG>eo</STRONG>.
-
--
- <STRONG>Keypad</STRONG> <STRONG>and</STRONG> <STRONG>Function</STRONG> <STRONG>Keys</STRONG>
- If the terminal has a keypad that transmits codes when the
- keys are pressed, this information can be given. Note
-@@ -1704,27 +1782,57 @@
- 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> respectively. If there are func-
-- tion 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 given as <STRONG>lf0,</STRONG> <STRONG>lf1,</STRONG> <STRONG>...,</STRONG> <STRONG>lf10</STRONG>. The codes
-- transmitted by certain other special keys can be given:
-- <STRONG>kll</STRONG> (home down), <STRONG>kbs</STRONG> (backspace), <STRONG>ktbc</STRONG> (clear all tabs),
-- <STRONG>kctab</STRONG> (clear the tab stop in this column), <STRONG>kclr</STRONG> (clear
-- screen or erase key), <STRONG>kdch1</STRONG> (delete character), <STRONG>kdl1</STRONG>
-- (delete line), <STRONG>krmir</STRONG> (exit insert mode), <STRONG>kel</STRONG> (clear to end
-- of line), <STRONG>ked</STRONG> (clear to end of screen), <STRONG>kich1</STRONG> (insert
-- character or enter insert mode), <STRONG>kil1</STRONG> (insert line), <STRONG>knp</STRONG>
-- (next page), <STRONG>kpp</STRONG> (previous page), <STRONG>kind</STRONG> (scroll for-
-- ward/down), <STRONG>kri</STRONG> (scroll backward/up), <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 direc-
-- tional pad are needed.
-+
-+ 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 func-
-+ tion 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 given as <STRONG>lf0,</STRONG> <STRONG>lf1,</STRONG> <STRONG>...,</STRONG> <STRONG>lf10</STRONG>.
-+
-+ The codes transmitted by certain other special keys can be
-+ given:
-+
-+ <STRONG>o</STRONG> <STRONG>kll</STRONG> (home down),
-+
-+ <STRONG>o</STRONG> <STRONG>kbs</STRONG> (backspace),
-+
-+ <STRONG>o</STRONG> <STRONG>ktbc</STRONG> (clear all tabs),
-+
-+ <STRONG>o</STRONG> <STRONG>kctab</STRONG> (clear the tab stop in this column),
-+
-+ <STRONG>o</STRONG> <STRONG>kclr</STRONG> (clear screen or erase key),
-+
-+ <STRONG>o</STRONG> <STRONG>kdch1</STRONG> (delete character),
-+
-+ <STRONG>o</STRONG> <STRONG>kdl1</STRONG> (delete line),
-+
-+ <STRONG>o</STRONG> <STRONG>krmir</STRONG> (exit insert mode),
-+
-+ <STRONG>o</STRONG> <STRONG>kel</STRONG> (clear to end of line),
-+
-+ <STRONG>o</STRONG> <STRONG>ked</STRONG> (clear to end of screen),
-+
-+ <STRONG>o</STRONG> <STRONG>kich1</STRONG> (insert character or enter insert mode),
-+
-+ <STRONG>o</STRONG> <STRONG>kil1</STRONG> (insert line),
-+
-+ <STRONG>o</STRONG> <STRONG>knp</STRONG> (next page),
-+
-+ <STRONG>o</STRONG> <STRONG>kpp</STRONG> (previous page),
-+
-+ <STRONG>o</STRONG> <STRONG>kind</STRONG> (scroll forward/down),
-+
-+ <STRONG>o</STRONG> <STRONG>kri</STRONG> (scroll backward/up),
-+
-+ <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 use-
-+ ful 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
-@@ -1746,12 +1854,11 @@
- or more pln sequences to make sure that the change becomes
- visible.
-
--
- <STRONG>Tabs</STRONG> <STRONG>and</STRONG> <STRONG>Initialization</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). A ``back-tab'' command which moves leftward to the
-- preceding tab stop can be given as <STRONG>cbt</STRONG>. By convention, if
-+ I). A "back-tab" command which moves leftward to the pre-
-+ ceding 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
-@@ -1851,9 +1958,8 @@
- ter as a pad, then this can be given as <STRONG>pad</STRONG>. Only the
- first character of the <STRONG>pad</STRONG> string is used.
-
--
- <STRONG>Status</STRONG> <STRONG>Lines</STRONG>
-- Some terminals have an extra `status line' which is not
-+ 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).
-
-@@ -1883,110 +1989,105 @@
- 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. They are documented here in case they ever
-+ The <STRONG>ncurses</STRONG> implementation does not yet use any of these
-+ capabilities. They are documented here in case they ever
- become important.
-
--
- <STRONG>Line</STRONG> <STRONG>Graphics</STRONG>
-- Many terminals have alternate character sets useful for
-- forms-drawing. Terminfo and <STRONG>curses</STRONG> build in support for
-- the drawing characters supported by the VT100, with some
-- characters from the AT&amp;T 4410v1 added. This alternate
-+ Many terminals have alternate character sets useful for
-+ forms-drawing. Terminfo and <STRONG>curses</STRONG> build in support for
-+ 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>VT100</STRONG>
-- <STRONG>Name</STRONG> <STRONG>Name</STRONG> <STRONG>Default</STRONG> <STRONG>Name</STRONG>
-- UK pound sign ACS_STERLING f }
-- arrow pointing down ACS_DARROW v .
-- arrow pointing left ACS_LARROW &lt; ,
-- arrow pointing right ACS_RARROW &gt; +
-- arrow pointing up ACS_UARROW ^ -
-- board of squares ACS_BOARD # h
-- bullet ACS_BULLET o ~
-- checker board (stipple) ACS_CKBOARD : a
-- degree symbol ACS_DEGREE \ f
-- diamond ACS_DIAMOND + `
-- greater-than-or-equal-to ACS_GEQUAL &gt; z
-- greek pi ACS_PI * {
-- horizontal line ACS_HLINE - q
-- lantern symbol ACS_LANTERN # i
-- large plus or crossover ACS_PLUS + n
-- less-than-or-equal-to ACS_LEQUAL &lt; y
--
-- lower left corner ACS_LLCORNER + m
-- lower right corner ACS_LRCORNER + j
-- not-equal ACS_NEQUAL ! |
-- plus/minus ACS_PLMINUS # g
-- scan line 1 ACS_S1 ~ o
-- scan line 3 ACS_S3 - p
-- scan line 7 ACS_S7 - r
-- scan line 9 ACS_S9 _ s
-- solid square block ACS_BLOCK # 0
-- tee pointing down ACS_TTEE + w
-- tee pointing left ACS_RTEE + u
-- tee pointing right ACS_LTEE + t
-- tee pointing up ACS_BTEE + v
-- upper left corner ACS_ULCORNER + l
-- upper right corner ACS_URCORNER + k
-- vertical line ACS_VLINE | x
--
-- 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 correspond-
-- ing graphic. Then read off the VT100/your terminal char-
-- acter pairs right to left in sequence; these become the
-+ <STRONG>Glyph</STRONG> <STRONG>ACS</STRONG> <STRONG>Ascii</STRONG> <STRONG>VT100</STRONG>
-+ <STRONG>Name</STRONG> <STRONG>Name</STRONG> <STRONG>Default</STRONG> <STRONG>Name</STRONG>
-+ UK pound sign ACS_STERLING f }
-+ arrow pointing down ACS_DARROW v .
-+ arrow pointing left ACS_LARROW &lt; ,
-+ arrow pointing right ACS_RARROW &gt; +
-+ arrow pointing up ACS_UARROW ^ -
-+ board of squares ACS_BOARD # h
-+ bullet ACS_BULLET o ~
-+ checker board (stipple) ACS_CKBOARD : a
-+ degree symbol ACS_DEGREE \ f
-+ diamond ACS_DIAMOND + `
-+ greater-than-or-equal-to ACS_GEQUAL &gt; z
-+ greek pi ACS_PI * {
-+ horizontal line ACS_HLINE - q
-+ lantern symbol ACS_LANTERN # i
-+ large plus or crossover ACS_PLUS + n
-+ less-than-or-equal-to ACS_LEQUAL &lt; y
-+ lower left corner ACS_LLCORNER + m
-+ lower right corner ACS_LRCORNER + j
-+ not-equal ACS_NEQUAL ! |
-+ plus/minus ACS_PLMINUS # g
-+ scan line 1 ACS_S1 ~ o
-+ scan line 3 ACS_S3 - p
-+ scan line 7 ACS_S7 - r
-+ scan line 9 ACS_S9 _ s
-+ solid square block ACS_BLOCK # 0
-+ tee pointing down ACS_TTEE + w
-+ tee pointing left ACS_RTEE + u
-+ tee pointing right ACS_LTEE + t
-+ tee pointing up ACS_BTEE + v
-+ upper left corner ACS_ULCORNER + l
-+ upper right corner ACS_URCORNER + k
-+ vertical line ACS_VLINE | x
-+
-+ 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 correspond-
-+ ing graphic. Then read off the VT100/your terminal char-
-+ acter pairs right to left in sequence; these become the
- ACSC string.
-
--
- <STRONG>Color</STRONG> <STRONG>Handling</STRONG>
-- Most color terminals are either `Tektronix-like' or `HP-
-- like'. Tektronix-like terminals have a predefined set of
-- N colors (where N usually 8), and can set character-cell
-+ Most color terminals are either "Tektronix-like" or "HP-
-+ like". Tektronix-like terminals have a predefined set of
-+ N colors (where N usually 8), and can set character-cell
- foreground and background characters independently, mixing
-- them into N * N color-pairs. On HP-like terminals, the
-+ them into N * N color-pairs. On HP-like terminals, the
- use must set each color pair up separately (foreground and
-- background are not independently settable). Up to M
-- color-pairs may be set up from 2*M different colors.
-+ background are not independently settable). Up to M
-+ color-pairs may be set up from 2*M 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> (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 current background color
-- rather than the power-up default background; these should
-+ 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 current background color
-+ rather than the power-up default background; these should
- have the boolean capability <STRONG>bce</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
-+ 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
-+ <STRONG>setaf</STRONG>/<STRONG>setab</STRONG>; the XPG4 draft says that "If the terminal
- supports ANSI escape sequences to set background and fore-
-- ground, they should be coded as <STRONG>setaf</STRONG> and <STRONG>setab</STRONG>, respec-
-- tively. If the terminal supports other escape sequences
-- to set background and foreground, they should be coded as
-- <STRONG>setf</STRONG> and <STRONG>setb</STRONG>, respectively. The <EM>vidputs()</EM> function and
-- the refresh functions use <STRONG>setaf</STRONG> and <STRONG>setab</STRONG> if they are
-+ ground, they should be coded as <STRONG>setaf</STRONG> and <STRONG>setab</STRONG>, respec-
-+ tively. If the terminal supports other escape sequences
-+ to set background and foreground, they should be coded as
-+ <STRONG>setf</STRONG> and <STRONG>setb</STRONG>, respectively. The <EM>vidputs()</EM> function and
-+ the refresh functions use <STRONG>setaf</STRONG> and <STRONG>setab</STRONG> if they are
- defined."
-
-- The <STRONG>setaf</STRONG>/<STRONG>setab</STRONG> and <STRONG>setf</STRONG>/<STRONG>setb</STRONG> capabilities take a single
-+ 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
-+ 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
-+ <STRONG>ncurses</STRONG> libraries). The terminal hardware is 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
- red <STRONG>COLOR_RED</STRONG> 1 max,0,0
-@@ -1997,7 +2098,7 @@
- cyan <STRONG>COLOR_CYAN</STRONG> 6 0,max,max
- white <STRONG>COLOR_WHITE</STRONG> 7 max,max,max
-
-- The argument values of <STRONG>setf</STRONG>/<STRONG>setb</STRONG> historically correspond
-+ The argument values of <STRONG>setf</STRONG>/<STRONG>setb</STRONG> historically correspond
- to a different mapping, i.e.,
-
- <STRONG>Color</STRONG> <STRONG>#define</STRONG> <STRONG>Value</STRONG> <STRONG>RGB</STRONG>
-@@ -2009,132 +2110,137 @@
- magenta <STRONG>COLOR_MAGENTA</STRONG> 5 max,0,max
- 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 capa-
-- bilities; otherwise red/blue will be interchanged on the
-+ bilities; otherwise red/blue will be interchanged on the
- display.
-
-- On an HP-like terminal, use <STRONG>scp</STRONG> with a color-pair number
-+ On an HP-like terminal, use <STRONG>scp</STRONG> with a color-pair number
- parameter to set which color pair is current.
-
-- On a Tektronix-like terminal, the capability <STRONG>ccc</STRONG> may be
-- present to indicate that colors can be modified. If so,
-+ On a Tektronix-like terminal, the capability <STRONG>ccc</STRONG> may be
-+ present to 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.
-+ - 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 capability <STRONG>hls</STRONG>
-+ (Red, Green, Blue) values. If the boolean capability <STRONG>hls</STRONG>
- is present, they are instead as HLS (Hue, Lightness, Satu-
- ration) indices. The ranges are terminal-dependent.
-
-- On an HP-like terminal, <STRONG>initp</STRONG> may give a capability for
-- changing a color-pair value. It will take seven parame-
-- ters; 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
-+ On an HP-like terminal, <STRONG>initp</STRONG> may give a capability for
-+ changing a color-pair value. It will take seven parame-
-+ ters; 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.
-+ 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 col-
-- ors are enabled. The correspondence with the attributes
-+ This is a bit-mask of attributes not to be used when col-
-+ ors are enabled. The correspondence with the attributes
- understood by <STRONG>curses</STRONG> is as follows:
-
--
-- <STRONG>Attribute</STRONG> <STRONG>Bit</STRONG> <STRONG>Decimal</STRONG>
-- A_STANDOUT 0 1
-- A_UNDERLINE 1 2
-- A_REVERSE 2 4
-- A_BLINK 3 8
-- A_DIM 4 16
-- A_BOLD 5 32
-- A_INVIS 6 64
-- A_PROTECT 7 128
-- A_ALTCHARSET 8 256
--
-- 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>
-+ <STRONG>Attribute</STRONG> <STRONG>Bit</STRONG> <STRONG>Decimal</STRONG> <STRONG>Set</STRONG> <STRONG>by</STRONG>
-+ A_STANDOUT 0 1 sgr
-+ A_UNDERLINE 1 2 sgr
-+ A_REVERSE 2 4 sgr
-+ A_BLINK 3 8 sgr
-+ A_DIM 4 16 sgr
-+ 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
-+ A_LOW 11 2048 sgr1
-+ A_RIGHT 12 4096 sgr1
-+ A_TOP 13 8192 sgr1
-+ 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. These should have an <STRONG>ncv</STRONG>
- capability of 2.
-
-- SVr4 curses does nothing with <STRONG>ncv</STRONG>, ncurses recognizes it
-+ SVr4 curses does nothing with <STRONG>ncv</STRONG>, ncurses recognizes it
- and optimizes the output in favor of colors.
-
--
- <STRONG>Miscellaneous</STRONG>
-- If the terminal requires other than a null (zero) charac-
-- ter as a pad, then this can be given as pad. Only the
-- first character of the pad string is used. If the termi-
-+ If the terminal requires other than a null (zero) charac-
-+ ter as a pad, then this can be given as pad. Only the
-+ first character of the pad string is used. If the termi-
- nal 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
-+ 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
-+ 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 sub-
-- scripts on hard-copy terminals. If a hard-copy terminal
-- can eject to the next page (form feed), give this as <STRONG>ff</STRONG>
-+ scripts 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 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 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
-+ 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> capa-
-- bility to identify it. The following convention is sup-
-- ported on some UNIX systems: The environment is to be
-- searched for a <STRONG>CC</STRONG> variable, and if found, all occurrences
-+ capabilities. This character is given in the <STRONG>cmdch</STRONG> capa-
-+ bility to identify it. The following convention is sup-
-+ ported 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 are replaced with the character
- in the environment variable.
-
-- Terminal descriptions that do not represent a specific
-+ 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
-+ <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
-+ 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 and off, they can be given as <STRONG>smm</STRONG> and <STRONG>rmm</STRONG>.
-+ 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 of <STRONG>lm</STRONG>#0 indicates that the
-+ 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 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 vir-
-- tual terminal protocol, the terminal number can be given
-+ tual terminal protocol, the terminal number can be given
- as <STRONG>vt</STRONG>.
-
- Media copy strings which control an auxiliary printer con-
- nected to the terminal can be given as <STRONG>mc0</STRONG>: print the con-
-- tents 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
-+ tents 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 termi-
- nal screen when the printer is on. A variation <STRONG>mc5p</STRONG> takes
- one parameter, and leaves the printer on for as many char-
-- acters as the value of the parameter, then turns the
-- printer off. The parameter should not exceed 255. All
-+ acters 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.
-
--
- <STRONG>Glitches</STRONG> <STRONG>and</STRONG> <STRONG>Braindamage</STRONG>
-- Hazeltine terminals, which do not allow `~' characters to
-+ 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>
-@@ -2147,10 +2253,10 @@
- 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-
-+ "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 standout mode it is instead neces-
-+ not possible to position the cursor on top of a "magic
-+ cookie", that to erase standout mode it is instead neces-
- sary to use delete and insert line. The ncurses implemen-
- tation ignores this glitch.
-
-@@ -2159,13 +2265,12 @@
- ing 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'.
-+ capability was called "beehive_glitch"; it is now
-+ "no_esc_ctl_c".
-
- Other specific terminal problems may be corrected by
- adding more capabilities of the form <STRONG>x</STRONG><EM>x</EM>.
-
--
- <STRONG>Similar</STRONG> <STRONG>Terminals</STRONG>
- If there are two very similar terminals, one (the variant)
- can be defined as being just like the other (the base)
-@@ -2183,14 +2288,13 @@
- the use reference that imports it, where <EM>xx</EM> is the capa-
- bility. For example, the entry
-
-- 2621-nl, smkx@, rmkx@, use=2621,
-+ 2621-nl, smkx@, rmkx@, use=2621,
-
- defines a 2621-nl that does not have the <STRONG>smkx</STRONG> or <STRONG>rmkx</STRONG>
- capabilities, and hence does not turn on the function key
- labels when in visual mode. This is useful for different
- modes for a terminal, or for different user preferences.
-
--
- <STRONG>Pitfalls</STRONG> <STRONG>of</STRONG> <STRONG>Long</STRONG> <STRONG>Entries</STRONG>
- Long terminfo entries are unlikely to be a problem; to
- date, no entry has even approached terminfo's 4096-byte
-@@ -2229,21 +2333,21 @@
- libraries strip off the final newline, too (GNU termcap
- does not). Now suppose:
-
-- * a termcap entry before expansion is more than 1023
-- bytes long,
-+ <STRONG>o</STRONG> a termcap entry before expansion is more than 1023
-+ bytes long,
-
-- * and the application has only allocated a 1k buffer,
-+ <STRONG>o</STRONG> and the application has only allocated a 1k buffer,
-
-- * 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,
--
-- * 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).
-+ <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 the whole
-+ termcap file).
-
- Then <STRONG>tgetent()</STRONG> will overwrite memory, perhaps its stack,
- and probably core dump the program. Programs like telnet
-@@ -2288,61 +2392,72 @@
-
- </PRE>
- <H2>EXTENSIONS</H2><PRE>
-- Some SVr4 <STRONG>curses</STRONG> implementations, and all previous to
-- SVr4, do not interpret the %A and %O operators in parame-
-+ 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 interpret the %A and %O operators in parame-
- ter 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 possi-
-- bility that an XPG4 implementation making the opposite
-- interpretation may need terminfo entries made for <STRONG>ncurses</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 possi-
-+ bility 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-
-+ The <STRONG>ncurses</STRONG> library handles insert-character and insert-
- character modes in a slightly non-standard way to get bet-
-- ter update efficiency. See the <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG>
-+ ter update efficiency. See the <STRONG>Insert/Delete</STRONG> <STRONG>Character</STRONG>
- subsection above.
-
-- The parameter substitutions for <STRONG>set_clock</STRONG> and <STRONG>dis-</STRONG>
-- <STRONG>play_clock</STRONG> are not documented in SVr4 or the XSI Curses
-+ The parameter substitutions for <STRONG>set_clock</STRONG> and <STRONG>dis-</STRONG>
-+ <STRONG>play_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>
-- wants to interpret it as <STRONG>KEY_MOUSE</STRONG>, for use by terminals
-- and emulators like xterm that can return mouse-tracking
-+ Be careful assigning the <STRONG>kmous</STRONG> capability. The <STRONG>ncurses</STRONG>
-+ 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.
-
-- Different commercial ports of terminfo and curses support
-- different subsets of the XSI Curses standard and (in some
-+ X/Open Curses does not mention italics. Portable applica-
-+ tions 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 extension sets. Here is a summary, accu-
- rate as of October 1995:
-
- <STRONG>SVR4,</STRONG> <STRONG>Solaris,</STRONG> <STRONG>ncurses</STRONG> -- These support all SVr4 capabili-
- ties.
-
-- <STRONG>SGI</STRONG> -- Supports the SVr4 set, adds one undocumented
-+ <STRONG>SGI</STRONG> -- Supports the SVr4 set, adds one undocumented
- extended string capability (<STRONG>set_pglen</STRONG>).
-
-- <STRONG>SVr1,</STRONG> <STRONG>Ultrix</STRONG> -- These support a restricted subset of ter-
-- minfo capabilities. The booleans end with <STRONG>xon_xoff</STRONG>; the
-- numerics with <STRONG>width_status_line</STRONG>; and the strings with
-+ <STRONG>SVr1,</STRONG> <STRONG>Ultrix</STRONG> -- These support a restricted subset of ter-
-+ minfo 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>HP/UX</STRONG> -- Supports the SVr1 subset, plus the SVr[234]
-+ <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 func-
-- tion keys 11 through 63, plus <STRONG>plab_norm</STRONG>, <STRONG>label_on</STRONG>, and
-+ tion 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>AIX</STRONG> -- Supports the SVr1 subset, plus function keys 11
-- through 63, plus a number of incompatible string table
-+ <STRONG>AIX</STRONG> -- Supports the SVr1 subset, plus function keys 11
-+ through 63, plus a number of incompatible string table
- extensions.
-
-- <STRONG>OSF</STRONG> -- Supports both the SVr4 set and the AIX extensions.
-+ <STRONG>OSF</STRONG> -- Supports both the SVr4 set and the AIX extensions.
-
-
- </PRE>
-@@ -2353,7 +2468,7 @@
-
- </PRE>
- <H2>SEE ALSO</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="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="printf.3.html">printf(3)</A></STRONG>, <STRONG><A HREF="term.5.html">term(5)</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>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>.
-
-
-Index: doc/html/man/tic.1m.html
---- ncurses-5.9/doc/html/man/tic.1m.html 2011-04-04 22:46:51.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/tic.1m.html 2014-08-16 20:43:15.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: tic.1m,v 1.47 2010/12/04 18:38:55 tom Exp @
-+ * @Id: tic.1m,v 1.60 2014/05/24 22:00:11 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -52,60 +52,135 @@
-
- </PRE>
- <H2>SYNOPSIS</H2><PRE>
-- <STRONG>tic</STRONG> [<STRONG>-1CGILNTUVacfgrstx</STRONG>] [<STRONG>-e</STRONG> <EM>names</EM>] [<STRONG>-o</STRONG> <EM>dir</EM>] [<STRONG>-R</STRONG> <EM>subset</EM>]
-- [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-w</STRONG>[<EM>n</EM>]] <EM>file</EM>
-+ <STRONG>tic</STRONG> [<STRONG>-01CDGIKLNTUVacfgrstx</STRONG>] [<STRONG>-e</STRONG> <EM>names</EM>] [<STRONG>-o</STRONG> <EM>dir</EM>] [<STRONG>-R</STRONG> <EM>sub-</EM>
-+ <EM>set</EM>] [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-w</STRONG>[<EM>n</EM>]] <EM>file</EM>
-
-
- </PRE>
- <H2>DESCRIPTION</H2><PRE>
-- The command <STRONG>tic</STRONG> translates a <STRONG>terminfo</STRONG> file from source
-+ The <STRONG>tic</STRONG> command translates a <STRONG>terminfo</STRONG> file from source
- format into compiled format. The compiled format is nec-
- essary for use with the library routines in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>.
-
-- The results are normally placed in the system terminfo
-- directory <STRONG>/usr/share/terminfo</STRONG>. There are two ways to
-- change this behavior.
-+ As described in <STRONG><A HREF="term.5.html">term(5)</A></STRONG>, the database may be either a
-+ directory tree (one file per terminal entry) or a hashed
-+ database (one record per 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/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 ".db", then that is used.
-+
-+ 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 container if it does not exist. For a direc-
-+ tory, this would be the "terminfo" leaf, versus a "ter-
-+ minfo.db" file.
-
-- First, you may override the system default by setting the
-- variable <STRONG>TERMINFO</STRONG> in your shell environment to a valid
-- (existing) directory name.
--
-- Secondly, if <STRONG>tic</STRONG> cannot get access to <EM>/usr/share/terminfo</EM>
-- or your TERMINFO directory, it looks for the directory
-- <EM>$HOME/.terminfo</EM>; if that directory exists, the entry is
-- placed there.
-+ 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 data-
-+ base. 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>TER-</STRONG>
-+ <STRONG>MINFO</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 location specified using your TERMINFO vari-
-+ able, 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
-- for a TERMINFO directory first, look at <EM>$HOME/.terminfo</EM> if
-- TERMINFO is not set, and finally look in <EM>/usr/share/ter-</EM>
-- <EM>minfo</EM>.
-+ in succession
-+
-+ <STRONG>o</STRONG> a location specified with the TERMINFO environment
-+ variable,
-+
-+ <STRONG>o</STRONG> <EM>$HOME/.terminfo</EM>,
-+
-+ <STRONG>o</STRONG> directories listed in the TERMINFO_DIRS environment
-+ variable,
-+
-+ <STRONG>o</STRONG> a compiled-in list of directories
-+ (/usr/local/ncurses/share/terminfo:/usr/share/ter-
-+ minfo), and
-+
-+ <STRONG>o</STRONG> the system terminfo database (<EM>/usr/share/terminfo</EM>).
-+
-+ <STRONG>OPTIONS</STRONG>
-+ <STRONG>-0</STRONG> restricts the output to a single line
-
- <STRONG>-1</STRONG> restricts the output to a single column
-
- <STRONG>-a</STRONG> tells <STRONG>tic</STRONG> to retain commented-out capabilities
- rather than discarding them. Capabilities are com-
-- mented 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
-+ mented 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
-+ <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
-+ 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.
-+ 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 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 in ter-
-+ minfo.
-+
-+ <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 problems and bad use links. If you specify
- <STRONG>-C</STRONG> (<STRONG>-I</STRONG>) with this option, the code will print warn-
- ings about entries which, after use resolution, are
- more than 1023 (4096) bytes long. Due to a fixed
-- buffer length in older termcap libraries (and a
-- documented limit in terminfo), these entries may
-- cause core dumps.
-+ buffer length in older termcap libraries, as well
-+ as buggy checking for the buffer length (and a doc-
-+ umented limit in terminfo), these entries may cause
-+ core dumps with other implementations.
-+
-+ <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 capabili-
-+ ties; 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, 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
-+ 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
-@@ -130,128 +205,133 @@
-
- <STRONG>-I</STRONG> Force source translation to terminfo format.
-
-- <STRONG>-L</STRONG> Force source translation to terminfo format using
-+ <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 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 num-
-- ber of assumptions about the defaults of string
-- capabilities <STRONG>reset1_string</STRONG>, <STRONG>carriage_return</STRONG>, <STRONG>cur-</STRONG>
-- <STRONG>sor_left</STRONG>, <STRONG>cursor_down</STRONG>, <STRONG>scroll_forward</STRONG>, <STRONG>tab</STRONG>, <STRONG>new-</STRONG>
-- <STRONG>line</STRONG>, <STRONG>key_backspace</STRONG>, <STRONG>key_left</STRONG>, and <STRONG>key_down</STRONG>, then
-- attempts to use obsolete termcap capabilities to
-+ ber of assumptions about the defaults of string
-+ capabilities <STRONG>reset1_string</STRONG>, <STRONG>carriage_return</STRONG>, <STRONG>cur-</STRONG>
-+ <STRONG>sor_left</STRONG>, <STRONG>cursor_down</STRONG>, <STRONG>scroll_forward</STRONG>, <STRONG>tab</STRONG>, <STRONG>new-</STRONG>
-+ <STRONG>line</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 also normally suppresses
- output of obsolete termcap capabilities such as <STRONG>bs</STRONG>.
-- This option forces a more literal translation that
-+ This option forces a more literal translation that
- also preserves the obsolete capabilities.
-
-- <STRONG>-o</STRONG><EM>dir</EM> Write compiled entries to given directory. Over-
-- rides the TERMINFO environment variable.
-+ <STRONG>-o</STRONG><EM>dir</EM> Write compiled entries to given database location.
-+ Overrides the TERMINFO environment variable.
-
- <STRONG>-R</STRONG><EM>subset</EM>
-- Restrict output to a given subset. This option is
-- for use with archaic versions of terminfo like
-+ 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 out-
-+ the full set of SVR4/XSI Curses terminfo; and out-
- right broken ports like AIX 3.x that have their own
-- extensions incompatible with SVr4/XSI. Available
-+ 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 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 multi-
-- ple tc capabilities per entry.
--
-- <STRONG>-s</STRONG> Summarize the compile by showing the directory into
-- which entries are written, and the number of
-- entries which are compiled.
-+ <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 pre-
-+ paring 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 loca-
-+ tion 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.,
-+ 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.
-+ <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 file. Normally, it infers data which is
-- commonly missing in older terminfo data, or in term-
-+ <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 term-
- caps.
-
- <STRONG>-V</STRONG> reports the version of ncurses which was used in this
- program, and exits.
-
-- <STRONG>-v</STRONG><EM>n</EM> specifies that (verbose) output be written to stan-
-- dard error trace information showing <STRONG>tic</STRONG>'s progress.
-- The optional parameter <EM>n</EM> is a number from 1 to 10,
-- inclusive, indicating the desired level of detail of
-- information. If <EM>n</EM> is omitted, the default level is
-- 1. If <EM>n</EM> is specified and greater than 1, the level
-+ <STRONG>-v</STRONG><EM>n</EM> specifies that (verbose) output be written to stan-
-+ dard error trace information showing <STRONG>tic</STRONG>'s progress.
-+ The optional parameter <EM>n</EM> is a number from 1 to 10,
-+ inclusive, indicating the desired level of detail of
-+ information. 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.
-
-- <STRONG>-w</STRONG><EM>n</EM> specifies the width of the output. The parameter is
-- optional. If it is omitted, it defaults to 60.
-+ The debug flag levels are as follows:
-
-- <STRONG>-x</STRONG> Treat unknown capabilities as user-defined. 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.
-+ 1 Names of files created and linked
-
-- <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 particu-
-- lar terminal.
-+ 2 Information related to the "use" facility
-
-- The debug flag levels are as follows:
-+ 3 Statistics from the hashing algorithm
-
-- 1 Names of files created and linked
-+ 5 String-table memory allocations
-
-- 2 Information related to the ``use'' facility
-+ 7 Entries into the string-table
-
-- 3 Statistics from the hashing algorithm
-+ 8 List of tokens encountered by scanner
-
-- 5 String-table memory allocations
-+ 9 All values computed in construction of the
-+ hash table
-
-- 7 Entries into the string-table
-+ If the debug level <EM>n</EM> is not given, it is taken to be
-+ one.
-
-- 8 List of tokens encountered by scanner
-+ <STRONG>-w</STRONG><EM>n</EM> specifies the width of the output. The parameter is
-+ optional. If it is omitted, it defaults to 60.
-
-- 9 All values computed in construction of the hash ta-
-- ble
-+ <STRONG>-x</STRONG> Treat unknown capabilities as user-defined. 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.
-
-- If the debug level <EM>n</EM> is not given, it is taken to be one.
-+ <STRONG>PARAMETERS</STRONG>
-+ <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 descrip-
-+ tion in the file describes the capabilities of a
-+ particular terminal.
-+
-+ 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.
-
-+ <STRONG>PROCESSING</STRONG>
- All but one of the capabilities recognized by <STRONG>tic</STRONG> are doc-
- umented in <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>. The exception is the <STRONG>use</STRONG> capabil-
- ity.
-
-- 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. If the environment
-- variable <STRONG>TERMINFO</STRONG> is set, that directory is searched
-- instead of <STRONG>/usr/share/terminfo</STRONG>.) <STRONG>tic</STRONG> duplicates the capa-
-- bilities in <EM>entry</EM>-<EM>name</EM> for the current entry, with the
-- exception of those capabilities that explicitly are
-+ 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, 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>
-+ 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>.
-
-- If the environment variable <STRONG>TERMINFO</STRONG> is set, the compiled
-- results are placed there instead of <STRONG>/usr/share/terminfo</STRONG>.
--
- Total compiled entries cannot exceed 4096 bytes. The name
- field cannot exceed 512 bytes. Terminal names exceeding
- the maximum alias length (32 characters on systems with
-@@ -266,35 +346,35 @@
- 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 description fields may be
-- treated that way and check them for dangerous characters.
-+ treated that way and check them for dangerous characters.
-
-
- </PRE>
- <H2>EXTENSIONS</H2><PRE>
-- Unlike the stock SVr4 <STRONG>tic</STRONG> command, this implementation can
-- actually compile termcap sources. In fact, entries in
-- terminfo and termcap syntax can be mixed in a single
-- source file. See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for the list of termcap
-- names taken to be equivalent to terminfo names.
-+ Unlike the SVr4 <STRONG>tic</STRONG> command, this implementation can actu-
-+ ally compile termcap sources. In fact, entries in ter-
-+ minfo and termcap syntax can be mixed in a single source
-+ file. See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for the list of 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>
-+ 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 anywhere in the source file, or any-
-- where in the file tree rooted at <STRONG>TERMINFO</STRONG> (if <STRONG>TERMINFO</STRONG> is
-- defined), or in the user's <EM>$HOME/.terminfo</EM> directory (if
-- it exists), or (finally) anywhere in the system's file
-- tree of compiled entries.
-+ where 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
-+ 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.
-
-- The <STRONG>-C</STRONG>, <STRONG>-G</STRONG>, <STRONG>-I</STRONG>, <STRONG>-N</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-o</STRONG>, <STRONG>-r</STRONG>,
-- <STRONG>-s</STRONG>, <STRONG>-t</STRONG> and <STRONG>-x</STRONG> options are not supported under SVr4. The
-- SVr4 <STRONG>-c</STRONG> mode does not report bad use links.
-+ The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-C</STRONG>, <STRONG>-G</STRONG>, <STRONG>-I</STRONG>, <STRONG>-N</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>,
-+ <STRONG>-o</STRONG>, <STRONG>-r</STRONG>, <STRONG>-s</STRONG>, <STRONG>-t</STRONG> and <STRONG>-x</STRONG> options are not supported under
-+ SVr4. The SVr4 <STRONG>-c</STRONG> mode does not report bad use links.
-
-- System V does not compile entries to or read entries from
-- your <EM>$HOME/.terminfo</EM> directory unless TERMINFO is explic-
-+ System V does not compile entries to or read entries from
-+ your <EM>$HOME/.terminfo</EM> database unless TERMINFO is explic-
- itly set to it.
-
-
-@@ -306,10 +386,10 @@
-
- </PRE>
- <H2>SEE ALSO</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="terminfo.5.html">terminfo(5)</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="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>.
-
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
- </PRE>
-Index: doc/html/man/toe.1m.html
---- ncurses-5.9/doc/html/man/toe.1m.html 2011-04-04 22:46:51.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/toe.1m.html 2014-08-16 20:43:15.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2011 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: toe.1m,v 1.23 2010/12/04 18:40:45 tom Exp @
-+ * @Id: toe.1m,v 1.26 2012/01/01 00:40:51 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -52,7 +52,7 @@
-
- </PRE>
- <H2>SYNOPSIS</H2><PRE>
-- <STRONG>toe</STRONG> [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-ahuUV</STRONG>] <EM>file...</EM>
-+ <STRONG>toe</STRONG> [<STRONG>-v</STRONG>[<EM>n</EM>]] [<STRONG>-ahsuUV</STRONG>] <EM>file...</EM>
-
-
- </PRE>
-@@ -71,6 +71,14 @@
- 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, showing (like <STRONG>conflict(1)</STRONG>) which entries
-+ which belong to a given terminal database. An "*"
-+ marks entries which differ, and "+" marks equiva-
-+ lent entries.
-+
-+ <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 dependencies in the given terminfo/termcap
-@@ -111,7 +119,7 @@
- <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><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
-
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
-
-Index: doc/html/man/tput.1.html
---- ncurses-5.9/doc/html/man/tput.1.html 2011-04-04 22:46:51.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/tput.1.html 2014-08-16 20:43:15.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- * t
- ****************************************************************************
-- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -28,7 +28,7 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: tput.1,v 1.29 2010/12/04 18:41:07 tom Exp @
-+ * @Id: tput.1,v 1.32 2012/07/14 21:06:45 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -66,7 +66,7 @@
- <H2>DESCRIPTION</H2><PRE>
- 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><A HREF="sh.1.html">sh(1)</A></STRONG>), to initialize or reset
-+ 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 capability's
- type:
-@@ -87,7 +87,7 @@
-
- Before using a value returned on the standard output, the
- application should test the exit code (e.g., <STRONG>$?</STRONG>, see
-- <STRONG><A HREF="sh.1.html">sh(1)</A></STRONG>) to be sure it is <STRONG>0</STRONG>. (See the <STRONG>EXIT</STRONG> <STRONG>CODES</STRONG> and <STRONG>DIAG-</STRONG>
-+ <STRONG>sh(1)</STRONG>) to be sure it is <STRONG>0</STRONG>. (See the <STRONG>EXIT</STRONG> <STRONG>CODES</STRONG> and <STRONG>DIAG-</STRONG>
- <STRONG>NOSTICS</STRONG> sections.) For a complete list of capabilities
- and the <EM>capname</EM> associated with each, see <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
-
-@@ -95,54 +95,53 @@
- option is unnecessary, because the default is taken
- from the environment variable <STRONG>TERM</STRONG>. If <STRONG>-T</STRONG> is spec-
- ified, then the shell variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG>
-- will be ignored,and the operating system will not
-- be queried for the actual screen size.
-+ will also be ignored.
-
- <EM>capname</EM>
-- indicates the capability from the <STRONG>terminfo</STRONG>
-- database. When <STRONG>termcap</STRONG> support is compiled in, the
-+ indicates the capability from the <STRONG>terminfo</STRONG> data-
-+ base. When <STRONG>termcap</STRONG> support is compiled in, the
- <STRONG>termcap</STRONG> name for the capability is also accepted.
-
-- <EM>parms</EM> If the capability is a string that takes parame-
-+ <EM>parms</EM> If the capability is a string that takes parame-
- ters, the arguments <EM>parms</EM> will be instantiated into
- the string.
-
-- Most parameters are numbers. Only a few terminfo
-+ Most parameters are numbers. Only a few terminfo
- capabilities require string parameters; <STRONG>tput</STRONG> uses a
- table to decide which to pass as strings. Normally
-- <STRONG>tput</STRONG> uses <STRONG>tparm</STRONG> (3x) to perform the substitution.
-+ <STRONG>tput</STRONG> uses <STRONG>tparm</STRONG> (3x) to perform the substitution.
- If no parameters are given for the capability, <STRONG>tput</STRONG>
-- writes the string without performing the
-- substitution.
-+ writes the string without performing the substitu-
-+ tion.
-
-- <STRONG>-S</STRONG> allows more than one capability per invocation of
-+ <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>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
-+ (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).
-
- Again, <STRONG>tput</STRONG> uses a table and the presence of param-
-- eters in its input to decide whether to use <STRONG>tparm</STRONG>
-+ eters in its input to decide whether to use <STRONG>tparm</STRONG>
- (3x), and how to interpret the parameters.
-
-- <STRONG>-V</STRONG> reports the version of ncurses which was used in
-+ <STRONG>-V</STRONG> reports the version of ncurses which was used in
- this program, and exits.
-
-- <STRONG>init</STRONG> If the <STRONG>terminfo</STRONG> database is present and an entry
-+ <STRONG>init</STRONG> If the <STRONG>terminfo</STRONG> database is present and an entry
- for the user's terminal exists (see <STRONG>-T</STRONG><EM>type</EM>, above),
- the following will occur:
-
-- (1) if present, the terminal's initialization
-- strings will be output as detailed in the
-- <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> section on <EM>Tabs</EM> <EM>and</EM> <EM>Initializa-</EM>
-+ (1) if present, the terminal's initialization
-+ strings will be output as detailed in the
-+ <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> section on <EM>Tabs</EM> <EM>and</EM> <EM>Initializa-</EM>
- <EM>tion</EM>,
-
-- (2) any delays (e.g., newline) specified in the
-+ (2) any delays (e.g., newline) specified in the
- entry will be set in the tty driver,
-
-- (3) tabs expansion will be turned on or off
-+ (3) tabs expansion will be turned on or off
- according to the specification in the entry,
- and
-
-@@ -153,22 +152,22 @@
- for any of the four above activities, that activity
- will silently be skipped.
-
-- <STRONG>reset</STRONG> Instead of putting out initialization strings, the
-- terminal's reset strings will be output if present
-- (<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>, <STRONG>rf</STRONG>). If the reset strings are not
-- present, but initialization strings are, the ini-
-- tialization strings will be output. Otherwise,
-+ <STRONG>reset</STRONG> Instead of putting out initialization strings, the
-+ terminal's reset strings will be output if present
-+ (<STRONG>rs1</STRONG>, <STRONG>rs2</STRONG>, <STRONG>rs3</STRONG>, <STRONG>rf</STRONG>). If the reset strings are not
-+ present, but initialization strings are, the ini-
-+ tialization strings will be output. Otherwise,
- <STRONG>reset</STRONG> acts identically to <STRONG>init</STRONG>.
-
- <STRONG>longname</STRONG>
-- If the <STRONG>terminfo</STRONG> database is present and an entry
-- for the user's terminal exists (see <STRONG>-T</STRONG><EM>type</EM> above),
-+ If the <STRONG>terminfo</STRONG> 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> database
- [see <STRONG><A HREF="term.5.html">term(5)</A></STRONG>].
-
-- If <STRONG>tput</STRONG> is invoked by a link named <STRONG>reset</STRONG>, this has the
-+ 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>. See <STRONG>tset</STRONG> for comparison, which
- has similar behavior.
-
-@@ -177,13 +176,13 @@
- <H2>EXAMPLES</H2><PRE>
- <STRONG>tput</STRONG> <STRONG>init</STRONG>
- Initialize the terminal according to the type of ter-
-- minal in the environmental variable <STRONG>TERM</STRONG>. This com-
-- mand should be included in everyone's .profile after
-+ minal in the environmental variable <STRONG>TERM</STRONG>. This com-
-+ mand should be included in everyone's .profile after
- the environmental variable <STRONG>TERM</STRONG> has been exported, as
-- illustrated on the <STRONG><A HREF="profile.5.html">profile(5)</A></STRONG> manual page.
-+ illustrated on the <STRONG>profile(5)</STRONG> manual page.
-
- <STRONG>tput</STRONG> <STRONG>-T5620</STRONG> <STRONG>reset</STRONG>
-- Reset an AT&amp;T 5620 terminal, overriding the type of
-+ Reset an AT&amp;T 5620 terminal, overriding the type of
- terminal in the environmental variable <STRONG>TERM</STRONG>.
-
- <STRONG>tput</STRONG> <STRONG>cup</STRONG> <STRONG>0</STRONG> <STRONG>0</STRONG>
-@@ -263,29 +262,29 @@
- type of <EM>capname</EM>:
-
- <EM>boolean</EM>
-- a value of <STRONG>0</STRONG> is set for TRUE and <STRONG>1</STRONG> for FALSE.
-+ 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 terminal <EM>type</EM> (the value of <EM>capname</EM>
-- is returned on standard output); a value of <STRONG>1</STRONG>
-+ <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 ter-
-- minal <EM>type</EM> (nothing is written to standard
-+ minal <EM>type</EM> (nothing is written to standard
- output).
-
- <EM>integer</EM>
-- a value of <STRONG>0</STRONG> is always set, whether or not
-+ a value of <STRONG>0</STRONG> is always set, whether or not
- <EM>capname</EM> is defined for this terminal <EM>type</EM>. To
-- determine if <EM>capname</EM> is defined for this ter-
-+ determine if <EM>capname</EM> is defined for this ter-
- minal <EM>type</EM>, the user must test the value writ-
-- ten to standard output. A value of <STRONG>-1</STRONG> means
-- that <EM>capname</EM> is not defined for this terminal
-+ ten to standard output. A value of <STRONG>-1</STRONG> means
-+ that <EM>capname</EM> is not defined for this terminal
- <EM>type</EM>.
-
-- <EM>other</EM> <STRONG>reset</STRONG> or <STRONG>init</STRONG> may fail to find their respec-
-- tive files. In that case, the exit code is
-+ <EM>other</EM> <STRONG>reset</STRONG> or <STRONG>init</STRONG> may fail to find their respec-
-+ tive files. In that case, the exit code is
- set to 4 + <STRONG>errno</STRONG>.
-
-- Any other exit code indicates an error; see the DIAGNOS-
-+ Any other exit code indicates an error; see the DIAGNOS-
- TICS section.
-
-
-@@ -294,11 +293,10 @@
- <STRONG>tput</STRONG> prints the following error messages and sets the cor-
- responding exit codes.
-
--
- exit code error message
- ---------------------------------------------------------------------
-- <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>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>1</STRONG> no error message is printed, see the <STRONG>EXIT</STRONG> <STRONG>CODES</STRONG> section.
- <STRONG>2</STRONG> usage error
-@@ -310,25 +308,37 @@
-
- </PRE>
- <H2>PORTABILITY</H2><PRE>
-- The <STRONG>longname</STRONG> and <STRONG>-S</STRONG> options, and the parameter-substitu-
-- tion features used in the <STRONG>cup</STRONG> example, are not supported
-+ The <STRONG>longname</STRONG> and <STRONG>-S</STRONG> options, and the parameter-substitu-
-+ tion features used in the <STRONG>cup</STRONG> example, are not supported
- in BSD curses or in AT&amp;T/USL curses before SVr4.
-
-- X/Open documents only the operands for <STRONG>clear</STRONG>, <STRONG>init</STRONG> and
-- <STRONG>reset</STRONG>. In this implementation, <STRONG>clear</STRONG> is part of the <EM>cap-</EM>
-+ X/Open documents only the operands for <STRONG>clear</STRONG>, <STRONG>init</STRONG> and
-+ <STRONG>reset</STRONG>. In this implementation, <STRONG>clear</STRONG> is part of the <EM>cap-</EM>
- <EM>name</EM> support. 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 provide support for <EM>capname</EM>
-- operands. A few platforms such as FreeBSD and NetBSD rec-
-- ognize termcap names rather than terminfo capability names
-- in their respective <STRONG>tput</STRONG> commands.
-+ such as AIX and Tru64 provide support for <EM>capname</EM> oper-
-+ ands.
-+
-+ A few platforms such as FreeBSD and NetBSD recognize term-
-+ cap names rather than terminfo capability names in their
-+ respective <STRONG>tput</STRONG> commands.
-+
-+ Most implementations which provide support for <EM>capname</EM> op-
-+ erands 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> to know which type to use.
-+ This implementation uses a table to determine that for the
-+ standard <EM>capname</EM> operands, and an internal library func-
-+ tion to analyze nonstandard <EM>capname</EM> operands. Other
-+ implementations may simply guess that an operand contain-
-+ ing only digits is intended to be a number.
-
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>, <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>, <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</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="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>.
-
-- This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
-
-Index: doc/html/man/tset.1.html
---- ncurses-5.9/doc/html/man/tset.1.html 2011-04-04 22:46:52.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/tset.1.html 2014-08-16 20:43:15.000000000 +0000
-@@ -1,7 +1,7 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2013 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 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************
-- * @Id: tset.1,v 1.25 2010/12/04 18:38:55 tom Exp @
-+ * @Id: tset.1,v 1.29 2013/12/21 22:15:53 tom Exp @
- -->
- <HTML>
- <HEAD>
-@@ -74,14 +74,14 @@
- tion, <EM>getty</EM> does this job by setting <STRONG>TERM</STRONG> according to the
- type passed to it by <EM>/etc/inittab</EM>.)
-
-- 4. The default terminal type, ``unknown''.
-+ 4. The default terminal type, "unknown".
-
- 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 question mark
-- (``?''), the user is prompted for confirmation of the ter-
-- minal type. An empty response confirms the type, or,
-+ ("?"), the user is prompted for confirmation of the termi-
-+ nal 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 terminfo entry
- for the terminal is retrieved. If no terminfo entry is
-@@ -116,8 +116,9 @@
-
- The options are as follows:
-
-- <STRONG>-c</STRONG> Set control characters and modes. <STRONG>-e</STRONG> Set the erase
-- character to <EM>ch</EM>.
-+ <STRONG>-c</STRONG> Set control characters and modes.
-+
-+ <STRONG>-e</STRONG> Set the erase character to <EM>ch</EM>.
-
- <STRONG>-I</STRONG> Do not send the terminal or tab initialization
- strings to the terminal.
-@@ -126,36 +127,35 @@
-
- <STRONG>-k</STRONG> Set the line kill character to <EM>ch</EM>.
-
-- <STRONG>-m</STRONG> Specify a mapping from a port type to a terminal.
-+ <STRONG>-m</STRONG> Specify a mapping from a port type to a terminal.
- See the section <STRONG>TERMINAL</STRONG> <STRONG>TYPE</STRONG> <STRONG>MAPPING</STRONG> for more infor-
- mation.
-
-- <STRONG>-Q</STRONG> Do not display any values for the erase, interrupt
-+ <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 characters which differ from the
-+ values for control characters which differ from the
- system's default values.
-
-- <STRONG>-q</STRONG> The terminal type is displayed to the standard out-
-- put, and the terminal is not initialized in any way.
-+ <STRONG>-q</STRONG> The terminal type is displayed to the standard out-
-+ put, and the terminal is not initialized in any way.
- The option `-' by itself is equivalent but archaic.
-
- <STRONG>-r</STRONG> Print the terminal type to the standard error output.
-
- <STRONG>-s</STRONG> Print the sequence of shell commands to initialize
- the environment variable <STRONG>TERM</STRONG> to the standard output.
-- See the section <STRONG>SETTING</STRONG> <STRONG>THE</STRONG> <STRONG>ENVIRONMENT</STRONG> for details.
-+ See the section <STRONG>SETTING</STRONG> <STRONG>THE</STRONG> <STRONG>ENVIRONMENT</STRONG> for details.
-
- <STRONG>-V</STRONG> reports the version of ncurses which was used in this
- program, and exits.
-
-- <STRONG>-w</STRONG> Resize the window to match the size deduced via
-+ <STRONG>-w</STRONG> Resize the window to match the size deduced via
- <STRONG>setupterm</STRONG>. Normally this has no effect, unless
- <STRONG>setupterm</STRONG> is not able to detect the window size.
-
- The arguments for the <STRONG>-e</STRONG>, <STRONG>-i</STRONG>, and <STRONG>-k</STRONG> options may either be
-- entered as actual characters or by using the `hat' nota-
-- tion, i.e., control-h may be specified as ``^H'' or
-- ``^h''.
-+ entered as actual characters or by using the `hat' nota-
-+ tion, i.e., control-h may be specified as "^H" or "^h".
-
-
- </PRE>
-@@ -167,7 +167,7 @@
- When the <STRONG>-s</STRONG> option is specified, the commands to enter the
- information into the shell's environment are written to
- the standard output. If the <STRONG>SHELL</STRONG> environmental variable
-- ends in ``csh'', the commands are for <STRONG>csh</STRONG>, otherwise, they
-+ ends in "csh", the commands are for <STRONG>csh</STRONG>, otherwise, they
- are for <STRONG>sh</STRONG>. Note, the <STRONG>csh</STRONG> commands set and unset the
- shell variable <STRONG>noglob</STRONG>, leaving it unset. The following
- line in the <STRONG>.login</STRONG> or <STRONG>.profile</STRONG> files will initialize the
-@@ -187,21 +187,21 @@
- terminal used on such ports.
-
- The purpose of the <STRONG>-m</STRONG> option is to map from some set of
-- conditions to a terminal type, that is, to tell <STRONG>tset</STRONG> ``If
-+ conditions to a terminal type, that is, to tell <STRONG>tset</STRONG> "If
- I'm on this port at a particular speed, guess that I'm on
-- that kind of terminal''.
-+ that kind of terminal".
-
- The argument to the <STRONG>-m</STRONG> option consists of an optional port
- type, an optional operator, an optional baud rate specifi-
-- cation, an optional colon (``:'') character and a terminal
-+ cation, an optional colon (":") character and a terminal
- type. The port type is a string (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.
-+ 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
-@@ -232,8 +232,8 @@
- 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 (``!'').
-+ insert a backslash character ("\") before any exclamation
-+ marks ("!").
-
-
- </PRE>
-@@ -248,14 +248,14 @@
- <H2>COMPATIBILITY</H2><PRE>
- The <STRONG>tset</STRONG> utility has been provided for backward-compati-
- bility with BSD environments (under most modern UNIXes,
-- <STRONG>/etc/inittab</STRONG> and <STRONG><A HREF="getty.1.html">getty(1)</A></STRONG> can set <STRONG>TERM</STRONG> appropriately for
-+ <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
- tset, with a few exceptions specified here.
-
- The <STRONG>-S</STRONG> option of BSD tset no longer works; it prints an
- error message to stderr and dies. The <STRONG>-s</STRONG> option only sets
-- <STRONG>TERM</STRONG>, not <STRONG>TERMCAP</STRONG>. Both these changes are because the
-+ <STRONG>TERM</STRONG>, not <STRONG>TERMCAP</STRONG>. Both of these changes are because the
- <STRONG>TERMCAP</STRONG> variable is no longer supported under terminfo-
- based <STRONG>ncurses</STRONG>, which makes <STRONG>tset</STRONG> <STRONG>-S</STRONG> useless (we made it die
- noisily rather than silently induce lossage).
-@@ -316,10 +316,10 @@
-
- </PRE>
- <H2>SEE ALSO</H2><PRE>
-- <STRONG><A HREF="csh.1.html">csh(1)</A></STRONG>, <STRONG><A HREF="sh.1.html">sh(1)</A></STRONG>, <STRONG><A HREF="stty.1.html">stty(1)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG><A HREF="tty.4.html">tty(4)</A></STRONG>, ter-
-- <STRONG><A HREF="minfo.5.html">minfo(5)</A></STRONG>, <STRONG><A HREF="ttys.5.html">ttys(5)</A></STRONG>, <STRONG><A HREF="environ.7.html">environ(7)</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 5.9 (patch 20110404).
-+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20140816).
-
-
-
-Index: doc/html/man/wresize.3x.html
---- ncurses-5.9/doc/html/man/wresize.3x.html 2011-01-09 01:03:30.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/man/wresize.3x.html 2013-05-17 22:24:24.000000000 +0000
-@@ -1,4 +1,4 @@
--<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
- ****************************************************************************
- * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-Index: doc/html/ncurses-intro.html
-Prereq: 1.44
---- ncurses-5.9/doc/html/ncurses-intro.html 2010-12-04 16:46:22.000000000 +0000
-+++ ncurses-5.9-20141206/doc/html/ncurses-intro.html 2013-05-17 23:29:27.000000000 +0000
-@@ -1,8 +1,8 @@
--<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
- <!--
-- $Id: ncurses-intro.html,v 1.44 2010/12/04 16:46:22 tom Exp $
-+ $Id: ncurses-intro.html,v 1.46 2013/05/17 23:29:27 tom Exp $
- ****************************************************************************
-- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -431,6 +431,7 @@
- Here is a sample program to motivate the discussion:
-
- <PRE>
-+#include &lt;stdlib.h&gt;
- #include &lt;curses.h&gt;
- #include &lt;signal.h&gt;
-
-Index: doc/ncurses-intro.doc
---- ncurses-5.9/doc/ncurses-intro.doc 2007-03-03 23:45:04.000000000 +0000
-+++ ncurses-5.9-20141206/doc/ncurses-intro.doc 2012-04-28 22:48:33.000000000 +0000
-@@ -333,6 +333,7 @@
-
- Here is a sample program to motivate the discussion:
- #include <curses.h>
-+#include <curses.h>
- #include <signal.h>
-
- static void finish(int sig);
-Index: form/Makefile.in
-Prereq: 1.53
---- ncurses-5.9/form/Makefile.in 2010-11-27 21:45:27.000000000 +0000
-+++ ncurses-5.9-20141206/form/Makefile.in 2014-11-15 13:54:00.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.53 2010/11/27 21:45:27 tom Exp $
-+# $Id: Makefile.in,v 1.59 2014/11/15 13:54:00 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -51,14 +51,21 @@
-
- MODEL = @DFT_LWR_MODEL@
- DESTDIR = @DESTDIR@
-+top_srcdir = @top_srcdir@
- srcdir = @srcdir@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
- bindir = @bindir@
- libdir = @libdir@
- includedir = @includedir@
-+includesubdir = @includesubdir@
-+
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-+
-+PACKAGE = @PACKAGE@
-
- LIBTOOL = @LIBTOOL@
-+LIBTOOL_OPTS = @LIBTOOL_OPTS@ @EXPORT_SYMS@
- LIBTOOL_CLEAN = @LIB_CLEAN@
- LIBTOOL_COMPILE = @LIB_COMPILE@
- LIBTOOL_LINK = @LIB_LINK@
-@@ -84,7 +91,7 @@
- CPP = @CPP@
- CFLAGS = @CFLAGS@
-
--CPPFLAGS = -I@top_srcdir@/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
-+CPPFLAGS = -I${top_srcdir}/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
-
- CCFLAGS = $(CPPFLAGS) $(CFLAGS)
-
-@@ -102,6 +109,8 @@
- SHLIB_DIRS = -L../lib
- SHLIB_LIST = $(SHLIB_DIRS) -lncurses@LIB_SUFFIX@ @SHLIB_LIST@
-
-+RPATH_LIST = @RPATH_LIST@
-+VERSIONED_SYMS = @VERSIONED_SYMS@
- MK_SHARED_LIB = @MK_SHARED_LIB@
-
- NCURSES_MAJOR = @NCURSES_MAJOR@
-@@ -111,7 +120,7 @@
-
- RANLIB = @LIB_PREP@
-
--LIBRARIES = @LIBS_TO_MAKE@
-+LIBRARIES = @Libs_To_Make@
-
- LINT = @LINT@
- LINT_OPTS = @LINT_OPTS@
-Index: form/fld_arg.c
-Prereq: 1.12
---- ncurses-5.9/form/fld_arg.c 2010-01-23 21:14:35.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_arg.c 2012-06-10 00:27:49.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_arg.c,v 1.12 2010/01/23 21:14:35 tom Exp $")
-+MODULE_ID("$Id: fld_arg.c,v 1.13 2012/06/10 00:27:49 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -71,7 +71,7 @@
-
- if (typ != 0 && make_arg != (void *)0)
- {
-- typ->status |= _HAS_ARGS;
-+ SetStatus(typ, _HAS_ARGS);
- typ->makearg = make_arg;
- typ->copyarg = copy_arg;
- typ->freearg = free_arg;
-Index: form/fld_def.c
-Prereq: 1.38
---- ncurses-5.9/form/fld_def.c 2010-01-23 21:14:35.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_def.c 2014-07-26 21:08:55.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_def.c,v 1.38 2010/01/23 21:14:35 tom Exp $")
-+MODULE_ID("$Id: fld_def.c,v 1.41 2014/07/26 21:08:55 tom Exp $")
-
- /* this can't be readonly */
- static FIELD default_field =
-@@ -53,7 +53,7 @@
- (int)' ', /* pad */
- A_NORMAL, /* fore */
- A_NORMAL, /* back */
-- ALL_FIELD_OPTS, /* opts */
-+ STD_FIELD_OPTS, /* opts */
- (FIELD *)0, /* snext */
- (FIELD *)0, /* sprev */
- (FIELD *)0, /* link */
-@@ -65,8 +65,7 @@
- NCURSES_FIELD_EXTENSION
- };
-
--NCURSES_EXPORT_VAR(FIELD *)
--_nc_Default_Field = &default_field;
-+NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field = &default_field;
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -186,10 +185,12 @@
- {
- if ((typ->status & _LINKED_TYPE) != 0)
- {
-- assert(argp != 0);
-- _nc_Free_Argument(typ->left, argp->left);
-- _nc_Free_Argument(typ->right, argp->right);
-- free(argp);
-+ if (argp != 0)
-+ {
-+ _nc_Free_Argument(typ->left, argp->left);
-+ _nc_Free_Argument(typ->right, argp->right);
-+ free(argp);
-+ }
- }
- else
- {
-@@ -293,14 +294,14 @@
- {
- T((T_CREATE("field %p"), (void *)New_Field));
- *New_Field = default_field;
-- New_Field->rows = rows;
-- New_Field->cols = cols;
-+ New_Field->rows = (short)rows;
-+ New_Field->cols = (short)cols;
- New_Field->drows = rows + nrow;
- New_Field->dcols = cols;
-- New_Field->frow = frow;
-- New_Field->fcol = fcol;
-+ New_Field->frow = (short)frow;
-+ New_Field->fcol = (short)fcol;
- New_Field->nrow = nrow;
-- New_Field->nbuf = nbuf;
-+ New_Field->nbuf = (short)nbuf;
- New_Field->link = New_Field;
-
- #if USE_WIDEC_SUPPORT
-Index: form/fld_dup.c
-Prereq: 1.13
---- ncurses-5.9/form/fld_dup.c 2010-01-23 21:14:35.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_dup.c 2012-03-11 00:37:16.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_dup.c,v 1.13 2010/01/23 21:14:35 tom Exp $")
-+MODULE_ID("$Id: fld_dup.c,v 1.14 2012/03/11 00:37:16 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -60,8 +60,8 @@
- {
- T((T_CREATE("field %p"), (void *)New_Field));
- *New_Field = *_nc_Default_Field;
-- New_Field->frow = frow;
-- New_Field->fcol = 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;
-Index: form/fld_ftchoice.c
-Prereq: 1.12
---- ncurses-5.9/form/fld_ftchoice.c 2010-01-23 21:14:35.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_ftchoice.c 2012-06-10 00:27:49.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_ftchoice.c,v 1.12 2010/01/23 21:14:35 tom Exp $")
-+MODULE_ID("$Id: fld_ftchoice.c,v 1.13 2012/06/10 00:27:49 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -56,7 +56,7 @@
- if (!typ || !next_choice || !prev_choice)
- RETURN(E_BAD_ARGUMENT);
-
-- typ->status |= _HAS_CHOICE;
-+ SetStatus(typ, _HAS_CHOICE);
- #if NCURSES_INTEROP_FUNCS
- typ->enum_next.onext = next_choice;
- typ->enum_prev.oprev = prev_choice;
-Index: form/fld_ftlink.c
-Prereq: 1.14
---- ncurses-5.9/form/fld_ftlink.c 2010-01-23 21:14:35.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_ftlink.c 2012-06-10 00:27:49.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_ftlink.c,v 1.14 2010/01/23 21:14:35 tom Exp $")
-+MODULE_ID("$Id: fld_ftlink.c,v 1.15 2012/06/10 00:27:49 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -62,11 +62,11 @@
- {
- T((T_CREATE("fieldtype %p"), (void *)nftyp));
- *nftyp = *_nc_Default_FieldType;
-- nftyp->status |= _LINKED_TYPE;
-+ SetStatus(nftyp, _LINKED_TYPE);
- if ((type1->status & _HAS_ARGS) || (type2->status & _HAS_ARGS))
-- nftyp->status |= _HAS_ARGS;
-+ SetStatus(nftyp, _HAS_ARGS);
- if ((type1->status & _HAS_CHOICE) || (type2->status & _HAS_CHOICE))
-- nftyp->status |= _HAS_CHOICE;
-+ SetStatus(nftyp, _HAS_CHOICE);
- nftyp->left = type1;
- nftyp->right = type2;
- type1->ref++;
-Index: form/fld_just.c
-Prereq: 1.12
---- ncurses-5.9/form/fld_just.c 2010-01-23 21:14:35.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_just.c 2012-03-11 00:37:16.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_just.c,v 1.12 2010/01/23 21:14:35 tom Exp $")
-+MODULE_ID("$Id: fld_just.c,v 1.13 2012/03/11 00:37:16 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -59,7 +59,7 @@
- Normalize_Field(field);
- if (field->just != just)
- {
-- field->just = just;
-+ field->just = (short) just;
- res = _nc_Synchronize_Attributes(field);
- }
- else
-Index: form/fld_link.c
-Prereq: 1.12
---- ncurses-5.9/form/fld_link.c 2010-01-23 21:14:35.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_link.c 2012-03-11 00:37:16.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_link.c,v 1.12 2010/01/23 21:14:35 tom Exp $")
-+MODULE_ID("$Id: fld_link.c,v 1.13 2012/03/11 00:37:16 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -61,8 +61,8 @@
- {
- T((T_CREATE("field %p"), (void *)New_Field));
- *New_Field = *_nc_Default_Field;
-- New_Field->frow = frow;
-- New_Field->fcol = fcol;
-+ New_Field->frow = (short) frow;
-+ New_Field->fcol = (short) fcol;
-
- New_Field->link = field->link;
- field->link = New_Field;
-Index: form/fld_max.c
-Prereq: 1.10
---- ncurses-5.9/form/fld_max.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_max.c 2013-08-24 22:59:28.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_max.c,v 1.10 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: fld_max.c,v 1.13 2013/08/24 22:59:28 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -62,13 +62,13 @@
- RETURN(E_BAD_ARGUMENT);
- }
- field->maxgrow = maxgrow;
-- field->status &= ~_MAY_GROW;
-- if (!(field->opts & O_STATIC))
-+ ClrStatus(field, _MAY_GROW);
-+ if (!((unsigned)field->opts & O_STATIC))
- {
- if ((maxgrow == 0) ||
- (single_line_field && (field->dcols < maxgrow)) ||
- (!single_line_field && (field->drows < maxgrow)))
-- field->status |= _MAY_GROW;
-+ SetStatus(field, _MAY_GROW);
- }
- }
- RETURN(E_OK);
-Index: form/fld_move.c
-Prereq: 1.10
---- ncurses-5.9/form/fld_move.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_move.c 2012-03-11 00:37:16.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_move.c,v 1.10 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: fld_move.c,v 1.11 2012/03/11 00:37:16 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -56,8 +56,8 @@
- if (field->form)
- RETURN(E_CONNECTED);
-
-- field->frow = frow;
-- field->fcol = fcol;
-+ field->frow = (short) frow;
-+ field->fcol = (short) fcol;
- RETURN(E_OK);
- }
-
-Index: form/fld_page.c
-Prereq: 1.10
---- ncurses-5.9/form/fld_page.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_page.c 2012-06-10 00:12:47.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_page.c,v 1.10 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: fld_page.c,v 1.12 2012/06/10 00:12:47 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -54,9 +54,9 @@
- RETURN(E_CONNECTED);
-
- if (new_page_flag)
-- field->status |= _NEWPAGE;
-+ SetStatus(field, _NEWPAGE);
- else
-- field->status &= ~_NEWPAGE;
-+ ClrStatus(field, _NEWPAGE);
-
- RETURN(E_OK);
- }
-Index: form/fld_stat.c
-Prereq: 1.12
---- ncurses-5.9/form/fld_stat.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/fld_stat.c 2012-06-10 00:13:09.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fld_stat.c,v 1.12 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: fld_stat.c,v 1.14 2012/06/10 00:13:09 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -51,9 +51,9 @@
- Normalize_Field(field);
-
- if (status)
-- field->status |= _CHANGED;
-+ SetStatus(field, _CHANGED);
- else
-- field->status &= ~_CHANGED;
-+ ClrStatus(field, _CHANGED);
-
- RETURN(E_OK);
- }
-Index: form/form.h
-Prereq: 0.21
---- ncurses-5.9/form/form.h 2009-11-07 19:31:11.000000000 +0000
-+++ ncurses-5.9-20141206/form/form.h 2014-07-26 20:52:28.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -30,10 +30,11 @@
- * Author: Juergen Pfeifer, 1995,1997 *
- ****************************************************************************/
-
--/* $Id: form.h,v 0.21 2009/11/07 19:31:11 tom Exp $ */
-+/* $Id: form.h,v 0.24 2014/07/26 20:52:28 tom Exp $ */
-
- #ifndef FORM_H
- #define FORM_H
-+/* *INDENT-OFF*/
-
- #include <curses.h>
- #include <eti.h>
-@@ -203,6 +204,7 @@
- #define O_NULLOK (0x0080U)
- #define O_PASSOK (0x0100U)
- #define O_STATIC (0x0200U)
-+#define O_DYNAMIC_JUSTIFY (0x0400U) /* ncurses extension */
-
- /* form options */
- #define O_NL_OVERLOAD (0x0001U)
-@@ -396,6 +398,9 @@
- extern NCURSES_EXPORT(int) unpost_form (FORM *);
- extern NCURSES_EXPORT(int) pos_form_cursor (FORM *);
- extern NCURSES_EXPORT(int) form_driver (FORM *,int);
-+# if NCURSES_WIDECHAR
-+extern NCURSES_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);
-@@ -418,5 +423,6 @@
- #ifdef __cplusplus
- }
- #endif
-+/* *INDENT-ON*/
-
--#endif /* FORM_H */
-+#endif /* FORM_H */
-Index: form/form.priv.h
-Prereq: 0.32
---- ncurses-5.9/form/form.priv.h 2009-11-07 21:26:43.000000000 +0000
-+++ ncurses-5.9-20141206/form/form.priv.h 2014-11-01 13:56:14.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -30,11 +30,11 @@
- * Author: Juergen Pfeifer, 1995,1997 *
- ****************************************************************************/
-
--/* $Id: form.priv.h,v 0.32 2009/11/07 21:26:43 tom Exp $ */
-+/* $Id: form.priv.h,v 0.38 2014/11/01 13:56:14 tom Exp $ */
-
- #ifndef FORM_PRIV_H
- #define FORM_PRIV_H 1
--
-+/* *INDENT-OFF*/
- #include "curses.priv.h"
- #include "mf_common.h"
-
-@@ -119,12 +119,14 @@
-
- /* Calculate the total size of all buffers for this field */
- #define Total_Buffer_Size(field) \
-- ( (Buffer_Length(field) + 1) * (1+(field)->nbuf) * sizeof(FIELD_CELL) )
-+ ( (size_t)(Buffer_Length(field) + 1) * (size_t)(1+(field)->nbuf) * sizeof(FIELD_CELL) )
-
- /* Logic to determine whether or not a field is single lined */
- #define Single_Line_Field(field) \
- (((field)->rows + (field)->nrow) == 1)
-
-+#define Field_Has_Option(f,o) ((((unsigned)(f)->opts) & o) != 0)
-+
- /* Logic to determine whether or not a field is selectable */
- #define Field_Is_Selectable(f) (((unsigned)((f)->opts) & O_SELECTABLE)==O_SELECTABLE)
- #define Field_Is_Not_Selectable(f) (((unsigned)((f)->opts) & O_SELECTABLE)!=O_SELECTABLE)
-@@ -146,7 +148,7 @@
- O_NL_OVERLOAD |\
- O_BS_OVERLOAD )
-
--#define ALL_FIELD_OPTS (Field_Options)( \
-+#define STD_FIELD_OPTS (Field_Options)( \
- O_VISIBLE |\
- O_ACTIVE |\
- O_PUBLIC |\
-@@ -156,7 +158,11 @@
- O_AUTOSKIP|\
- O_NULLOK |\
- O_PASSOK |\
-- O_STATIC )
-+ O_STATIC)
-+
-+#define ALL_FIELD_OPTS (Field_Options)( \
-+ STD_FIELD_OPTS |\
-+ O_DYNAMIC_JUSTIFY)
-
- #define C_BLANK ' '
- #define is_blank(c) ((c)==C_BLANK)
-@@ -214,11 +220,11 @@
-
- #ifdef TRACE
-
--#define returnField(code) TRACE_RETURN(code,field)
--#define returnFieldPtr(code) TRACE_RETURN(code,field_ptr)
--#define returnForm(code) TRACE_RETURN(code,form)
--#define returnFieldType(code) TRACE_RETURN(code,field_type)
--#define returnFormHook(code) TRACE_RETURN(code,form_hook)
-+#define returnField(code) TRACE_RETURN1(code,field)
-+#define returnFieldPtr(code) TRACE_RETURN1(code,field_ptr)
-+#define returnForm(code) TRACE_RETURN1(code,form)
-+#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 *);
-@@ -293,5 +299,6 @@
- result = ((*buffer || (l < width)) ? FALSE : TRUE); \
- }
- #endif
-+/* *INDENT-ON*/
-
- #endif /* FORM_PRIV_H */
-Index: form/frm_data.c
-Prereq: 1.15
---- ncurses-5.9/form/frm_data.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/frm_data.c 2013-08-24 22:44:05.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: frm_data.c,v 1.15 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: frm_data.c,v 1.16 2013/08/24 22:44:05 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -103,7 +103,7 @@
- }
- }
- #else
-- cell = winch(w);
-+ cell = (FIELD_CELL) winch(w);
- if (ChCharOf(cell) != ChCharOf(pad))
- {
- result = FALSE;
-Index: form/frm_def.c
-Prereq: 1.25
---- ncurses-5.9/form/frm_def.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/frm_def.c 2012-03-11 00:37:16.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: frm_def.c,v 1.25 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: frm_def.c,v 1.26 2012/03/11 00:37:16 tom Exp $")
-
- /* this can't be readonly */
- static FORM default_form =
-@@ -199,14 +199,14 @@
- for (j = 0; j < field_cnt; j++)
- {
- if (j == 0)
-- pg->pmin = j;
-+ pg->pmin = (short) j;
- else
- {
- if (fields[j]->status & _NEWPAGE)
- {
-- pg->pmax = j - 1;
-+ pg->pmax = (short) (j - 1);
- pg++;
-- pg->pmin = j;
-+ pg->pmin = (short) j;
- }
- }
-
-@@ -214,14 +214,14 @@
- maximum_col_in_field = fields[j]->fcol + fields[j]->cols;
-
- if (form->rows < maximum_row_in_field)
-- form->rows = maximum_row_in_field;
-+ form->rows = (short) maximum_row_in_field;
- if (form->cols < maximum_col_in_field)
-- form->cols = maximum_col_in_field;
-+ form->cols = (short) maximum_col_in_field;
- }
-
-- pg->pmax = field_cnt - 1;
-- form->maxfield = field_cnt;
-- form->maxpage = 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++)
-@@ -230,8 +230,8 @@
-
- for (j = form->page[page_nr].pmin; j <= form->page[page_nr].pmax; j++)
- {
-- fields[j]->index = j;
-- fields[j]->page = page_nr;
-+ fields[j]->index = (short) j;
-+ fields[j]->page = (short) page_nr;
- fld = Insert_Field_By_Position(fields[j], fld);
- }
- if (fld)
-Index: form/frm_driver.c
-Prereq: 1.98
---- ncurses-5.9/form/frm_driver.c 2010-05-01 21:11:43.000000000 +0000
-+++ ncurses-5.9-20141206/form/frm_driver.c 2014-09-25 21:55:24.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: frm_driver.c,v 1.98 2010/05/01 21:11:43 tom Exp $")
-+MODULE_ID("$Id: frm_driver.c,v 1.115 2014/09/25 21:55:24 tom Exp $")
-
- /*----------------------------------------------------------------------------
- This is the core module of the form library. It contains the majority
-@@ -172,29 +172,30 @@
- instead of a derived window because it contains invisible parts.
- This is true for non-public fields and for scrollable fields. */
- #define Has_Invisible_Parts(field) \
-- (!((field)->opts & O_PUBLIC) || \
-+ (!(Field_Has_Option(field, O_PUBLIC)) || \
- Is_Scroll_Field(field))
-
- /* Logic to decide whether or not a field needs justification */
- #define Justification_Allowed(field) \
- (((field)->just != NO_JUSTIFICATION) && \
- (Single_Line_Field(field)) && \
-- (((field)->dcols == (field)->cols) && \
-- ((field)->opts & O_STATIC)) )
-+ ((Field_Has_Option(field, O_STATIC) && \
-+ ((field)->dcols == (field)->cols)) || \
-+ Field_Has_Option(field, O_DYNAMIC_JUSTIFY)))
-
- /* 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 */
- #define Set_Field_Window_Attributes(field,win) \
--( wbkgdset((win),(chtype)((field)->pad | (field)->back)), \
-- (void) wattrset((win),(field)->fore) )
-+( wbkgdset((win),(chtype)((chtype)((field)->pad) | (field)->back)), \
-+ (void) wattrset((win), (int)(field)->fore) )
-
- /* Logic to decide whether or not a field really appears on the form */
- #define Field_Really_Appears(field) \
- ((field->form) &&\
- (field->form->status & _POSTED) &&\
-- (field->opts & O_VISIBLE) &&\
-+ (Field_Has_Option(field, O_VISIBLE)) &&\
- (field->page == field->form->curpage))
-
- /* Logic to determine whether or not we are on the first position in the
-@@ -601,8 +602,8 @@
- {
- if (form->status & _WINDOW_MODIFIED)
- {
-- form->status &= ~_WINDOW_MODIFIED;
-- form->status |= _FCHECK_REQUIRED;
-+ ClrStatus(form, _WINDOW_MODIFIED);
-+ SetStatus(form, _FCHECK_REQUIRED);
- Window_To_Buffer(form, form->current);
- wmove(form->w, form->currow, form->curcol);
- }
-@@ -653,7 +654,7 @@
- growth = Minimum(field->maxgrow - field->dcols, growth);
- field->dcols += growth;
- if (field->dcols == field->maxgrow)
-- field->status &= ~_MAY_GROW;
-+ ClrStatus(field, _MAY_GROW);
- }
- else
- {
-@@ -662,7 +663,7 @@
- growth = Minimum(field->maxgrow - field->drows, growth);
- field->drows += growth;
- if (field->drows == field->maxgrow)
-- field->status &= ~_MAY_GROW;
-+ ClrStatus(field, _MAY_GROW);
- }
- /* drows, dcols changed, so we get really the new buffer length */
- new_buflen = Buffer_Length(field);
-@@ -674,7 +675,7 @@
- field->drows = old_drows;
- if ((single_line_field && (field->dcols != field->maxgrow)) ||
- (!single_line_field && (field->drows != field->maxgrow)))
-- field->status |= _MAY_GROW;
-+ SetStatus(field, _MAY_GROW);
- }
- else
- {
-@@ -753,7 +754,7 @@
- (field->dcols != field->maxgrow)) ||
- (!single_line_field &&
- (field->drows != field->maxgrow)))
-- field->status |= _MAY_GROW;
-+ SetStatus(field, _MAY_GROW);
- free(newbuf);
- }
- }
-@@ -860,7 +861,7 @@
- field = form->current;
- formwin = Get_Form_Window(form);
-
-- if (field->opts & O_PUBLIC)
-+ if (Field_Has_Option(field, O_PUBLIC))
- {
- if (Is_Scroll_Field(field))
- {
-@@ -897,19 +898,19 @@
- if (form->currow < form->toprow)
- {
- form->toprow = form->currow;
-- field->status |= _NEWTOP;
-+ SetStatus(field, _NEWTOP);
- }
- if (form->currow >= row_after_bottom)
- {
- form->toprow = form->currow - field->rows + 1;
-- field->status |= _NEWTOP;
-+ SetStatus(field, _NEWTOP);
- }
- if (field->status & _NEWTOP)
- {
- /* means we have to copy whole range */
- first_modified_row = form->toprow;
- first_unmodified_row = first_modified_row + field->rows;
-- field->status &= ~_NEWTOP;
-+ ClrStatus(field, _NEWTOP);
- }
- else
- {
-@@ -983,21 +984,22 @@
-
- if (len > 0)
- {
-- assert(win && (field->drows == 1) && (field->dcols == field->cols));
-+ assert(win && (field->drows == 1));
-
-- switch (field->just)
-- {
-- case JUSTIFY_LEFT:
-- break;
-- case JUSTIFY_CENTER:
-- col = (field->cols - len) / 2;
-- break;
-- case JUSTIFY_RIGHT:
-- col = field->cols - len;
-- break;
-- default:
-- break;
-- }
-+ if (field->cols - len >= 0)
-+ switch (field->just)
-+ {
-+ case JUSTIFY_LEFT:
-+ break;
-+ case JUSTIFY_CENTER:
-+ col = (field->cols - len) / 2;
-+ break;
-+ case JUSTIFY_RIGHT:
-+ col = field->cols - len;
-+ break;
-+ default:
-+ break;
-+ }
-
- wmove(win, 0, col);
- myADDNSTR(win, bp, len);
-@@ -1111,27 +1113,27 @@
- return E_SYSTEM_ERROR;
- else
- {
-- if (field->opts & O_VISIBLE)
-+ if (Field_Has_Option(field, O_VISIBLE))
- {
- Set_Field_Window_Attributes(field, win);
- }
- else
- {
-- (void)wattrset(win, WINDOW_ATTRS(fwin));
-+ (void)wattrset(win, (int)WINDOW_ATTRS(fwin));
- }
- werase(win);
- }
-
- if (!bEraseFlag)
- {
-- if (field->opts & O_PUBLIC)
-+ if (Field_Has_Option(field, O_PUBLIC))
- {
- if (Justification_Allowed(field))
- Perform_Justification(field, win);
- else
- Buffer_To_Window(field, win);
- }
-- field->status &= ~_NEWTOP;
-+ ClrStatus(field, _NEWTOP);
- }
- wsyncup(win);
- delwin(win);
-@@ -1170,18 +1172,18 @@
- form->currow = form->curcol = form->toprow = form->begincol = 0;
- werase(form->w);
-
-- if ((field->opts & O_PUBLIC) && Justification_Allowed(field))
-+ if ((Field_Has_Option(field, O_PUBLIC)) && Justification_Allowed(field))
- Undo_Justification(field, form->w);
- else
- Buffer_To_Window(field, form->w);
-
-- field->status |= _NEWTOP;
-+ SetStatus(field, _NEWTOP);
- res = _nc_Refresh_Current_Field(form);
- }
- else
- res = Display_Field(field);
- }
-- field->status |= _CHANGED;
-+ SetStatus(field, _CHANGED);
- return (res);
- }
-
-@@ -1211,7 +1213,7 @@
- return (E_SYSTEM_ERROR);
-
- for (linked_field = field->link;
-- linked_field != field;
-+ (linked_field != field) && (linked_field != 0);
- linked_field = linked_field->link)
- {
- if (((syncres = Synchronize_Field(linked_field)) != E_OK) &&
-@@ -1256,7 +1258,7 @@
- werase(form->w);
- wmove(form->w, form->currow, form->curcol);
-
-- if (field->opts & O_PUBLIC)
-+ if (Field_Has_Option(field, O_PUBLIC))
- {
- if (Justification_Allowed(field))
- Undo_Justification(field, form->w);
-@@ -1272,7 +1274,7 @@
- field->rows - 1, field->cols - 1, 0);
- wsyncup(formwin);
- Buffer_To_Window(field, form->w);
-- field->status |= _NEWTOP; /* fake refresh to paint all */
-+ SetStatus(field, _NEWTOP); /* fake refresh to paint all */
- _nc_Refresh_Current_Field(form);
- }
- }
-@@ -1326,34 +1328,34 @@
- field->opts = oldopts;
- returnCode(E_CURRENT);
- }
-- if ((form->curpage == field->page))
-+ if (form->curpage == field->page)
- {
-- if (changed_opts & O_VISIBLE)
-+ if ((unsigned)changed_opts & O_VISIBLE)
- {
-- if (newopts & O_VISIBLE)
-+ if ((unsigned)newopts & O_VISIBLE)
- res = Display_Field(field);
- else
- res = Erase_Field(field);
- }
- else
- {
-- if ((changed_opts & O_PUBLIC) &&
-- (newopts & O_VISIBLE))
-+ if (((unsigned)changed_opts & O_PUBLIC) &&
-+ ((unsigned)newopts & O_VISIBLE))
- res = Display_Field(field);
- }
- }
- }
- }
-
-- if (changed_opts & O_STATIC)
-+ if ((unsigned)changed_opts & O_STATIC)
- {
- bool single_line_field = Single_Line_Field(field);
- int res2 = E_OK;
-
-- if (newopts & O_STATIC)
-+ if ((unsigned)newopts & O_STATIC)
- {
- /* the field becomes now static */
-- field->status &= ~_MAY_GROW;
-+ ClrStatus(field, _MAY_GROW);
- /* if actually we have no hidden columns, justification may
- occur again */
- if (single_line_field &&
-@@ -1371,7 +1373,7 @@
- (single_line_field && (field->dcols < field->maxgrow)) ||
- (!single_line_field && (field->drows < field->maxgrow)))
- {
-- field->status |= _MAY_GROW;
-+ SetStatus(field, _MAY_GROW);
- /* a field with justification now changes its behavior,
- so we must redisplay it */
- if (single_line_field &&
-@@ -1424,18 +1426,18 @@
- !(form->status & _POSTED))
- {
- if ((form->w) &&
-- (field->opts & O_VISIBLE) &&
-+ (Field_Has_Option(field, O_VISIBLE)) &&
- (field->form->curpage == field->page))
- {
- _nc_Refresh_Current_Field(form);
-- if (field->opts & O_PUBLIC)
-+ if (Field_Has_Option(field, O_PUBLIC))
- {
- if (field->drows > field->rows)
- {
- if (form->toprow == 0)
-- field->status &= ~_NEWTOP;
-+ ClrStatus(field, _NEWTOP);
- else
-- field->status |= _NEWTOP;
-+ SetStatus(field, _NEWTOP);
- }
- else
- {
-@@ -1444,7 +1446,24 @@
- Window_To_Buffer(form, field);
- werase(form->w);
- Perform_Justification(field, form->w);
-- wsyncup(form->w);
-+ if (Field_Has_Option(field, O_DYNAMIC_JUSTIFY) &&
-+ (form->w->_parent == 0))
-+ {
-+ copywin(form->w,
-+ Get_Form_Window(form),
-+ 0,
-+ 0,
-+ field->frow,
-+ field->fcol,
-+ field->frow,
-+ field->cols + field->fcol - 1,
-+ 0);
-+ wsyncup(Get_Form_Window(form));
-+ }
-+ else
-+ {
-+ wsyncup(form->w);
-+ }
- }
- }
- }
-@@ -1469,7 +1488,7 @@
- delwin(form->w);
- form->w = new_window;
-
-- form->status &= ~_WINDOW_MODIFIED;
-+ ClrStatus(form, _WINDOW_MODIFIED);
- Set_Field_Window_Attributes(field, form->w);
-
- if (Has_Invisible_Parts(field))
-@@ -1998,7 +2017,7 @@
- {
- res = fct(form);
- if (res == E_OK)
-- form->current->status |= _NEWTOP;
-+ SetStatus(form->current, _NEWTOP);
- }
- return (res);
- }
-@@ -2430,7 +2449,7 @@
- int result = E_REQUEST_DENIED;
- bool Last_Row = ((field->drows - 1) == form->currow);
-
-- if ((field->opts & O_WRAP) && /* wrapping wanted */
-+ if ((Field_Has_Option(field, O_WRAP)) && /* wrapping wanted */
- (!Single_Line_Field(field)) && /* must be multi-line */
- (There_Is_No_Room_For_A_Char_In_Line(form)) && /* line is full */
- (!Last_Row || Growable(field))) /* there are more lines */
-@@ -2513,7 +2532,7 @@
- editable fields.
- */
- if ((fct == FE_Delete_Previous) &&
-- (form->opts & O_BS_OVERLOAD) &&
-+ ((unsigned)form->opts & O_BS_OVERLOAD) &&
- First_Position_In_Current_Field(form))
- {
- res = Inter_Field_Navigation(FN_Previous_Field, form);
-@@ -2522,7 +2541,7 @@
- {
- if (fct == FE_New_Line)
- {
-- if ((form->opts & O_NL_OVERLOAD) &&
-+ if (((unsigned)form->opts & O_NL_OVERLOAD) &&
- First_Position_In_Current_Field(form))
- {
- res = Inter_Field_Navigation(FN_Next_Field, form);
-@@ -2534,11 +2553,11 @@
- else
- {
- /* From now on, everything must be editable */
-- if (form->current->opts & O_EDIT)
-+ if ((unsigned)form->current->opts & O_EDIT)
- {
- res = fct(form);
- if (res == E_OK)
-- form->status |= _WINDOW_MODIFIED;
-+ SetStatus(form, _WINDOW_MODIFIED);
- }
- }
- }
-@@ -2571,7 +2590,7 @@
- if (Last_Row &&
- (!(Growable(field) && !Single_Line_Field(field))))
- {
-- if (!(form->opts & O_NL_OVERLOAD))
-+ if (!((unsigned)form->opts & O_NL_OVERLOAD))
- returnCode(E_REQUEST_DENIED);
- wmove(form->w, form->currow, form->curcol);
- wclrtoeol(form->w);
-@@ -2579,7 +2598,7 @@
- handled in the generic routine. The reason is,
- that FN_Next_Field may fail, but the form is
- definitively changed */
-- form->status |= _WINDOW_MODIFIED;
-+ SetStatus(form, _WINDOW_MODIFIED);
- returnCode(Inter_Field_Navigation(FN_Next_Field, form));
- }
- else
-@@ -2595,7 +2614,7 @@
- wclrtoeol(form->w);
- form->currow++;
- form->curcol = 0;
-- form->status |= _WINDOW_MODIFIED;
-+ SetStatus(form, _WINDOW_MODIFIED);
- returnCode(E_OK);
- }
- }
-@@ -2605,7 +2624,7 @@
- if (Last_Row &&
- !(Growable(field) && !Single_Line_Field(field)))
- {
-- if (!(form->opts & O_NL_OVERLOAD))
-+ if (!((unsigned)form->opts & O_NL_OVERLOAD))
- returnCode(E_REQUEST_DENIED);
- returnCode(Inter_Field_Navigation(FN_Next_Field, form));
- }
-@@ -2627,7 +2646,7 @@
- wmove(form->w, form->currow, form->curcol);
- winsertln(form->w);
- myADDNSTR(form->w, bp, (int)(t - bp));
-- form->status |= _WINDOW_MODIFIED;
-+ SetStatus(form, _WINDOW_MODIFIED);
- returnCode(E_OK);
- }
- }
-@@ -2926,7 +2945,7 @@
- EM_Overlay_Mode(FORM *form)
- {
- T((T_CALLED("EM_Overlay_Mode(%p)"), (void *)form));
-- form->status |= _OVLMODE;
-+ SetStatus(form, _OVLMODE);
- returnCode(E_OK);
- }
-
-@@ -2942,7 +2961,7 @@
- EM_Insert_Mode(FORM *form)
- {
- T((T_CALLED("EM_Insert_Mode(%p)"), (void *)form));
-- form->status &= ~_OVLMODE;
-+ ClrStatus(form, _OVLMODE);
- returnCode(E_OK);
- }
-
-@@ -3111,7 +3130,7 @@
- {
- if (typ)
- {
-- if (field->opts & O_NULLOK)
-+ if (Field_Has_Option(field, O_NULLOK))
- {
- FIELD_CELL *bp = field->buf;
-
-@@ -3168,12 +3187,12 @@
-
- Synchronize_Buffer(form);
- if ((form->status & _FCHECK_REQUIRED) ||
-- (!(field->opts & O_PASSOK)))
-+ (!(Field_Has_Option(field, O_PASSOK))))
- {
- if (!Check_Field(form, field->type, field, (TypeArgument *)(field->arg)))
- return FALSE;
-- form->status &= ~_FCHECK_REQUIRED;
-- field->status |= _CHANGED;
-+ ClrStatus(form, _FCHECK_REQUIRED);
-+ SetStatus(field, _CHANGED);
- Synchronize_Linked_Fields(field);
- }
- return TRUE;
-@@ -3273,14 +3292,15 @@
- do
- {
- field = (field == last_on_page) ? first : field + 1;
-- if (((*field)->opts & O_VISIBLE))
-+ if (Field_Has_Option(*field, O_VISIBLE))
- break;
- }
- while (proposed != (*field));
-
- proposed = *field;
-
-- if ((proposed == *last_on_page) && !(proposed->opts & O_VISIBLE))
-+ if ((proposed == *last_on_page) &&
-+ !((unsigned)proposed->opts & O_VISIBLE))
- {
- /* This means, there is also no visible field on the page.
- So we propose the first one and hope the very best...
-@@ -3816,11 +3836,11 @@
- FIELD *last_field, *field_on_page;
-
- werase(Get_Form_Window(form));
-- form->curpage = page;
-+ form->curpage = (short)page;
- last_field = field_on_page = form->field[form->page[page].smin];
- do
- {
-- if (field_on_page->opts & O_VISIBLE)
-+ if ((unsigned)field_on_page->opts & O_VISIBLE)
- if ((res = Display_Field(field_on_page)) != E_OK)
- return (res);
- field_on_page = field_on_page->snext;
-@@ -3981,6 +4001,94 @@
- Helper routines for the core form driver.
- --------------------------------------------------------------------------*/
-
-+# if USE_WIDEC_SUPPORT
-+/*---------------------------------------------------------------------------
-+| Facility : libnform
-+| Function : static int Data_Entry_w(FORM * form, wchar_t c)
-+|
-+| Description : Enter the wide character c into at the current
-+| position of the current field of the form.
-+|
-+| Return Values : E_OK - success
-+| E_REQUEST_DENIED - driver could not process the request
-+| E_SYSTEM_ERROR -
-++--------------------------------------------------------------------------*/
-+static int
-+Data_Entry_w(FORM *form, wchar_t c)
-+{
-+ FIELD *field = form->current;
-+ int result = E_REQUEST_DENIED;
-+
-+ T((T_CALLED("Data_Entry(%p,%s)"), (void *)form, _tracechtype((chtype)c)));
-+ if ((Field_Has_Option(field, O_EDIT))
-+#if FIX_FORM_INACTIVE_BUG
-+ && (Field_Has_Option(field, O_ACTIVE))
-+#endif
-+ )
-+ {
-+ wchar_t given[2];
-+ cchar_t temp_ch;
-+
-+ given[0] = c;
-+ given[1] = 1;
-+ setcchar(&temp_ch, given, 0, 0, (void *)0);
-+ if ((Field_Has_Option(field, O_BLANK)) &&
-+ First_Position_In_Current_Field(form) &&
-+ !(form->status & _FCHECK_REQUIRED) &&
-+ !(form->status & _WINDOW_MODIFIED))
-+ werase(form->w);
-+
-+ if (form->status & _OVLMODE)
-+ {
-+ wadd_wch(form->w, &temp_ch);
-+ }
-+ else
-+ /* no _OVLMODE */
-+ {
-+ bool There_Is_Room = Is_There_Room_For_A_Char_In_Line(form);
-+
-+ if (!(There_Is_Room ||
-+ ((Single_Line_Field(field) && Growable(field)))))
-+ RETURN(E_REQUEST_DENIED);
-+
-+ if (!There_Is_Room && !Field_Grown(field, 1))
-+ RETURN(E_SYSTEM_ERROR);
-+
-+ wins_wch(form->w, &temp_ch);
-+ }
-+
-+ if ((result = Wrapping_Not_Necessary_Or_Wrapping_Ok(form)) == E_OK)
-+ {
-+ bool End_Of_Field = (((field->drows - 1) == form->currow) &&
-+ ((field->dcols - 1) == form->curcol));
-+
-+ form->status |= _WINDOW_MODIFIED;
-+ if (End_Of_Field && !Growable(field) && (Field_Has_Option(field, O_AUTOSKIP)))
-+ result = Inter_Field_Navigation(FN_Next_Field, form);
-+ else
-+ {
-+ if (End_Of_Field && Growable(field) && !Field_Grown(field, 1))
-+ result = E_SYSTEM_ERROR;
-+ else
-+ {
-+ /*
-+ * We have just added a byte to the form field. It may have
-+ * been part of a multibyte character. If it was, the
-+ * addch_used field is nonzero and we should not try to move
-+ * to a new column.
-+ */
-+ if (WINDOW_EXT(form->w, addch_used) == 0)
-+ IFN_Next_Character(form);
-+
-+ result = E_OK;
-+ }
-+ }
-+ }
-+ }
-+ RETURN(result);
-+}
-+# endif
-+
- /*---------------------------------------------------------------------------
- | Facility : libnform
- | Function : static int Data_Entry(FORM * form,int c)
-@@ -3999,13 +4107,13 @@
- int result = E_REQUEST_DENIED;
-
- T((T_CALLED("Data_Entry(%p,%s)"), (void *)form, _tracechtype((chtype)c)));
-- if ((field->opts & O_EDIT)
-+ if ((Field_Has_Option(field, O_EDIT))
- #if FIX_FORM_INACTIVE_BUG
-- && (field->opts & O_ACTIVE)
-+ && (Field_Has_Option(field, O_ACTIVE))
- #endif
- )
- {
-- if ((field->opts & O_BLANK) &&
-+ if ((Field_Has_Option(field, O_BLANK)) &&
- First_Position_In_Current_Field(form) &&
- !(form->status & _FCHECK_REQUIRED) &&
- !(form->status & _WINDOW_MODIFIED))
-@@ -4035,8 +4143,8 @@
- bool End_Of_Field = (((field->drows - 1) == form->currow) &&
- ((field->dcols - 1) == form->curcol));
-
-- form->status |= _WINDOW_MODIFIED;
-- if (End_Of_Field && !Growable(field) && (field->opts & O_AUTOSKIP))
-+ SetStatus(form, _WINDOW_MODIFIED);
-+ if (End_Of_Field && !Growable(field) && (Field_Has_Option(field, O_AUTOSKIP)))
- result = Inter_Field_Navigation(FN_Next_Field, form);
- else
- {
-@@ -4228,7 +4336,10 @@
-
- if ((c >= MIN_FORM_COMMAND && c <= MAX_FORM_COMMAND) &&
- ((bindings[c - MIN_FORM_COMMAND].keycode & Key_Mask) == c))
-- BI = &(bindings[c - MIN_FORM_COMMAND]);
-+ {
-+ TR(TRACE_CALLS, ("form_request %s", form_request_name(c)));
-+ BI = &(bindings[c - MIN_FORM_COMMAND]);
-+ }
-
- if (BI)
- {
-@@ -4246,7 +4357,7 @@
- NULL /* Choice Request is generic */
- };
- size_t nMethods = (sizeof(Generic_Methods) / sizeof(Generic_Methods[0]));
-- size_t method = (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;
-@@ -4255,9 +4366,13 @@
- Generic_Method fct = Generic_Methods[method];
-
- if (fct)
-- res = fct(BI->cmd, form);
-+ {
-+ res = fct(BI->cmd, form);
-+ }
- else
-- res = (BI->cmd) (form);
-+ {
-+ res = (BI->cmd) (form);
-+ }
- }
- }
- #ifdef NCURSES_MOUSE_VERSION
-@@ -4360,6 +4475,195 @@
- RETURN(res);
- }
-
-+# if USE_WIDEC_SUPPORT
-+/*---------------------------------------------------------------------------
-+| Facility : libnform
-+| Function : int form_driver_w(FORM * form,int type,wchar_t c)
-+|
-+| Description : This is the workhorse of the forms system.
-+|
-+| Input is either a key code (request) or a wide char
-+| returned by e.g. get_wch (). The type must be passed
-+| as well,so that we are able to determine whether the char
-+| is a multibyte char or a request.
-+
-+| If it is a request, the form driver executes
-+| the request and returns the result. If it is data
-+| (printable character), it enters the data into the
-+| current position in the current field. If it is not
-+| recognized, the form driver assumes it is an application
-+| defined command and returns E_UNKNOWN_COMMAND.
-+| Application defined command should be defined relative
-+| to MAX_FORM_COMMAND, the maximum value of a request.
-+|
-+| Return Values : E_OK - success
-+| E_SYSTEM_ERROR - system error
-+| E_BAD_ARGUMENT - an argument is incorrect
-+| E_NOT_POSTED - form is not posted
-+| E_INVALID_FIELD - field contents are invalid
-+| E_BAD_STATE - called from inside a hook routine
-+| E_REQUEST_DENIED - request failed
-+| E_NOT_CONNECTED - no fields are connected to the form
-+| E_UNKNOWN_COMMAND - command not known
-++--------------------------------------------------------------------------*/
-+NCURSES_EXPORT(int)
-+form_driver_w(FORM *form, int type, wchar_t c)
-+{
-+ const Binding_Info *BI = (Binding_Info *) 0;
-+ int res = E_UNKNOWN_COMMAND;
-+
-+ T((T_CALLED("form_driver(%p,%d)"), (void *)form, (int)c));
-+
-+ if (!form)
-+ RETURN(E_BAD_ARGUMENT);
-+
-+ if (!(form->field))
-+ RETURN(E_NOT_CONNECTED);
-+
-+ assert(form->page);
-+
-+ if (c == (wchar_t)FIRST_ACTIVE_MAGIC)
-+ {
-+ form->current = _nc_First_Active_Field(form);
-+ RETURN(E_OK);
-+ }
-+
-+ assert(form->current &&
-+ form->current->buf &&
-+ (form->current->form == form)
-+ );
-+
-+ if (form->status & _IN_DRIVER)
-+ RETURN(E_BAD_STATE);
-+
-+ if (!(form->status & _POSTED))
-+ RETURN(E_NOT_POSTED);
-+
-+ /* check if this is a keycode or a (wide) char */
-+ if (type == KEY_CODE_YES)
-+ {
-+ if ((c >= MIN_FORM_COMMAND && c <= MAX_FORM_COMMAND) &&
-+ ((bindings[c - MIN_FORM_COMMAND].keycode & Key_Mask) == c))
-+ BI = &(bindings[c - MIN_FORM_COMMAND]);
-+ }
-+
-+ if (BI)
-+ {
-+ typedef int (*Generic_Method) (int (*const) (FORM *), FORM *);
-+ static const Generic_Method Generic_Methods[] =
-+ {
-+ Page_Navigation, /* overloaded to call field&form hooks */
-+ Inter_Field_Navigation, /* overloaded to call field hooks */
-+ NULL, /* Intra-Field is generic */
-+ Vertical_Scrolling, /* Overloaded to check multi-line */
-+ Horizontal_Scrolling, /* Overloaded to check single-line */
-+ Field_Editing, /* Overloaded to mark modification */
-+ NULL, /* Edit Mode is generic */
-+ NULL, /* Field Validation is generic */
-+ 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 */
-+
-+ if ((method >= nMethods) || !(BI->cmd))
-+ res = E_SYSTEM_ERROR;
-+ else
-+ {
-+ Generic_Method fct = Generic_Methods[method];
-+
-+ if (fct)
-+ res = fct(BI->cmd, form);
-+ else
-+ res = (BI->cmd) (form);
-+ }
-+ }
-+#ifdef NCURSES_MOUSE_VERSION
-+ else if (KEY_MOUSE == c)
-+ {
-+ MEVENT event;
-+ WINDOW *win = form->win ? form->win : StdScreen(Get_Form_Screen(form));
-+ WINDOW *sub = form->sub ? form->sub : win;
-+
-+ getmouse(&event);
-+ if ((event.bstate & (BUTTON1_CLICKED |
-+ BUTTON1_DOUBLE_CLICKED |
-+ BUTTON1_TRIPLE_CLICKED))
-+ && wenclose(win, event.y, event.x))
-+ { /* we react only if the click was in the userwin, that means
-+ * inside the form display area or at the decoration window.
-+ */
-+ int ry = event.y, rx = event.x; /* screen coordinates */
-+
-+ res = E_REQUEST_DENIED;
-+ if (mouse_trafo(&ry, &rx, FALSE))
-+ { /* rx, ry are now "curses" coordinates */
-+ if (ry < sub->_begy)
-+ { /* we clicked above the display region; this is
-+ * interpreted as "scroll up" request
-+ */
-+ if (event.bstate & BUTTON1_CLICKED)
-+ res = form_driver(form, REQ_PREV_FIELD);
-+ else if (event.bstate & BUTTON1_DOUBLE_CLICKED)
-+ res = form_driver(form, REQ_PREV_PAGE);
-+ else if (event.bstate & BUTTON1_TRIPLE_CLICKED)
-+ res = form_driver(form, REQ_FIRST_FIELD);
-+ }
-+ else if (ry > sub->_begy + sub->_maxy)
-+ { /* we clicked below the display region; this is
-+ * interpreted as "scroll down" request
-+ */
-+ if (event.bstate & BUTTON1_CLICKED)
-+ res = form_driver(form, REQ_NEXT_FIELD);
-+ else if (event.bstate & BUTTON1_DOUBLE_CLICKED)
-+ res = form_driver(form, REQ_NEXT_PAGE);
-+ else if (event.bstate & BUTTON1_TRIPLE_CLICKED)
-+ res = form_driver(form, REQ_LAST_FIELD);
-+ }
-+ 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;
-+
-+ for (i = min_field; i <= max_field; ++i)
-+ {
-+ FIELD *field = form->field[i];
-+
-+ if (Field_Is_Selectable(field)
-+ && Field_encloses(field, ry, rx) == E_OK)
-+ {
-+ res = _nc_Set_Current_Field(form, field);
-+ if (res == E_OK)
-+ res = _nc_Position_Form_Cursor(form);
-+ if (res == E_OK
-+ && (event.bstate & BUTTON1_DOUBLE_CLICKED))
-+ res = E_UNKNOWN_COMMAND;
-+ break;
-+ }
-+ }
-+ }
-+ }
-+ }
-+ }
-+ else
-+ res = E_REQUEST_DENIED;
-+ }
-+#endif /* NCURSES_MOUSE_VERSION */
-+ else if (type == OK)
-+ {
-+ res = Data_Entry_w(form, c);
-+ }
-+
-+ _nc_Refresh_Current_Field(form);
-+ RETURN(res);
-+}
-+# endif /* USE_WIDEC_SUPPORT */
-+
- /*----------------------------------------------------------------------------
- Field-Buffer manipulation routines.
- The effects of setting a buffer are tightly coupled to the core of the form
-@@ -4389,8 +4693,8 @@
- {
- FIELD_CELL *p;
- int res = E_OK;
-- unsigned int i;
-- unsigned int len;
-+ int i;
-+ int len;
-
- #if USE_WIDEC_SUPPORT
- FIELD_CELL *widevalue = 0;
-@@ -4408,7 +4712,7 @@
- /* for a growable field we must assume zero terminated strings, because
- somehow we have to detect the length of what should be copied.
- */
-- unsigned int vlen = strlen(value);
-+ int vlen = (int)strlen(value);
-
- if (vlen > len)
- {
-@@ -4448,10 +4752,10 @@
- }
- else
- {
-- for (i = 0; i < (unsigned)field->drows; ++i)
-+ for (i = 0; i < field->drows; ++i)
- {
-- (void)mvwin_wchnstr(field->working, 0, i * field->dcols,
-- widevalue + (i * field->dcols),
-+ (void)mvwin_wchnstr(field->working, 0, (int)i * field->dcols,
-+ widevalue + ((int)i * field->dcols),
- field->dcols);
- }
- for (i = 0; i < len; ++i)
-@@ -4512,7 +4816,7 @@
- {
- #if USE_WIDEC_SUPPORT
- FIELD_CELL *data = Address_Of_Nth_Buffer(field, buffer);
-- unsigned need = 0;
-+ size_t need = 0;
- int size = Buffer_Length(field);
- int n;
-
-@@ -4526,7 +4830,7 @@
-
- init_mb(state);
- next = _nc_wcrtomb(0, data[n].chars[0], &state);
-- if (!isEILSEQ(next))
-+ if (next > 0)
- need += next;
- }
- }
-@@ -4613,14 +4917,14 @@
- {
- result[need] = wch;
- }
-- passed += status;
-+ passed += (size_t) status;
- ++need;
- }
- else
- {
- if (pass)
- {
-- result[need] = source[passed];
-+ result[need] = (wchar_t)source[passed];
- }
- ++need;
- ++passed;
-@@ -4633,7 +4937,7 @@
- break;
- result = typeCalloc(wchar_t, need);
-
-- *lengthp = need;
-+ *lengthp = (int)need;
- if (result == 0)
- break;
- }
-Index: form/frm_hook.c
-Prereq: 1.15
---- ncurses-5.9/form/frm_hook.c 2010-01-23 21:12:08.000000000 +0000
-+++ ncurses-5.9-20141206/form/frm_hook.c 2012-03-11 00:37:16.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,13 +32,13 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: frm_hook.c,v 1.15 2010/01/23 21:12:08 tom Exp $")
-+MODULE_ID("$Id: frm_hook.c,v 1.16 2012/03/11 00:37:16 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 (FORM *form, Form_Hook func)\
- {\
-- T((T_CALLED("set_" #typ"_"#name"(%p,%p)"), form, func));\
-+ T((T_CALLED("set_" #typ"_"#name"(%p,%p)"), (void *) form, func));\
- (Normalize_Form( form ) -> typ ## name) = func ;\
- RETURN(E_OK);\
- }
-Index: form/frm_opts.c
-Prereq: 1.15
---- ncurses-5.9/form/frm_opts.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/frm_opts.c 2013-08-24 22:58:47.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: frm_opts.c,v 1.15 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: frm_opts.c,v 1.17 2013/08/24 22:58:47 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -49,8 +49,8 @@
- {
- T((T_CALLED("set_form_opts(%p,%d)"), (void *)form, opts));
-
-- opts &= ALL_FORM_OPTS;
-- if (opts & ~ALL_FORM_OPTS)
-+ opts &= (Form_Options) ALL_FORM_OPTS;
-+ if ((unsigned)opts & ~ALL_FORM_OPTS)
- RETURN(E_BAD_ARGUMENT);
- else
- {
-@@ -71,7 +71,7 @@
- form_opts(const FORM *form)
- {
- T((T_CALLED("form_opts(%p)"), (const void *)form));
-- returnCode((int)(Normalize_Form(form)->opts & ALL_FORM_OPTS));
-+ returnCode((Form_Options) ((unsigned)Normalize_Form(form)->opts & ALL_FORM_OPTS));
- }
-
- /*---------------------------------------------------------------------------
-@@ -89,8 +89,8 @@
- {
- T((T_CALLED("form_opts_on(%p,%d)"), (void *)form, opts));
-
-- opts &= ALL_FORM_OPTS;
-- if (opts & ~ALL_FORM_OPTS)
-+ opts &= (Form_Options) ALL_FORM_OPTS;
-+ if ((unsigned)opts & ~ALL_FORM_OPTS)
- RETURN(E_BAD_ARGUMENT);
- else
- {
-@@ -114,8 +114,8 @@
- {
- T((T_CALLED("form_opts_off(%p,%d)"), (void *)form, opts));
-
-- opts &= ALL_FORM_OPTS;
-- if (opts & ~ALL_FORM_OPTS)
-+ opts &= (Form_Options) ALL_FORM_OPTS;
-+ if ((unsigned)opts & ~ALL_FORM_OPTS)
- RETURN(E_BAD_ARGUMENT);
- else
- {
-Index: form/frm_page.c
-Prereq: 1.11
---- ncurses-5.9/form/frm_page.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/frm_page.c 2012-06-10 00:28:04.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: frm_page.c,v 1.11 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: frm_page.c,v 1.12 2012/06/10 00:28:04 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -58,7 +58,7 @@
-
- if (!(form->status & _POSTED))
- {
-- form->curpage = page;
-+ form->curpage = (short)page;
- form->current = _nc_First_Active_Field(form);
- }
- else
-Index: form/frm_post.c
-Prereq: 1.10
---- ncurses-5.9/form/frm_post.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/frm_post.c 2012-06-10 00:27:49.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -32,7 +32,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: frm_post.c,v 1.10 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: frm_post.c,v 1.11 2012/06/10 00:27:49 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnform
-@@ -77,7 +77,7 @@
- if ((err = _nc_Set_Form_Page(form, page, form->current)) != E_OK)
- RETURN(err);
-
-- form->status |= _POSTED;
-+ SetStatus(form, _POSTED);
-
- Call_Hook(form, forminit);
- Call_Hook(form, fieldinit);
-@@ -117,7 +117,7 @@
- werase(Get_Form_Window(form));
- delwin(form->w);
- form->w = (WINDOW *)0;
-- form->status &= ~_POSTED;
-+ ClrStatus(form, _POSTED);
- RETURN(E_OK);
- }
-
-Index: form/frm_req_name.c
-Prereq: 1.17
---- ncurses-5.9/form/frm_req_name.c 2009-10-10 16:17:01.000000000 +0000
-+++ ncurses-5.9-20141206/form/frm_req_name.c 2012-07-21 23:17:23.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2012 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 *
-@@ -37,7 +37,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: frm_req_name.c,v 1.17 2009/10/10 16:17:01 tom Exp $")
-+MODULE_ID("$Id: frm_req_name.c,v 1.18 2012/07/21 23:17:23 tom Exp $")
-
- static const char *request_names[MAX_FORM_COMMAND - MIN_FORM_COMMAND + 1] =
- {
-@@ -144,23 +144,26 @@
- /* because the table is so small, it doesn't really hurt
- to run sequentially through it.
- */
-- unsigned int i = 0;
-- char buf[16];
-+ 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)
-+ if (str != 0 && (i = strlen(str)) != 0)
- {
-- strncpy(buf, str, sizeof(buf));
-- while ((i < sizeof(buf)) && (buf[i] != '\0'))
-+ if (i > sizeof(buf) - 2)
-+ i = sizeof(buf) - 2;
-+ memcpy(buf, str, i);
-+ buf[i] = '\0';
-+
-+ for (i = 0; buf[i] != '\0'; ++i)
- {
- buf[i] = (char)toupper(UChar(buf[i]));
-- i++;
- }
-
- for (i = 0; i < A_SIZE; i++)
- {
-- if (strncmp(request_names[i], buf, sizeof(buf)) == 0)
-+ if (strcmp(request_names[i], buf) == 0)
- returnCode(MIN_FORM_COMMAND + (int)i);
- }
- }
-Index: form/fty_generic.c
-Prereq: 1.5
---- ncurses-5.9/form/fty_generic.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/fty_generic.c 2012-06-10 00:27:49.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2010,2012 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 *
-@@ -34,7 +34,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fty_generic.c,v 1.5 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: fty_generic.c,v 1.6 2012/06/10 00:27:49 tom Exp $")
-
- /*
- * This is not a full implementation of a field type, but adds some
-@@ -119,7 +119,7 @@
- if (res)
- {
- *res = *_nc_Default_FieldType;
-- res->status |= (_HAS_ARGS | _GENERIC);
-+ SetStatus(res, (_HAS_ARGS | _GENERIC));
- res->fieldcheck.gfcheck = field_check;
- res->charcheck.gccheck = char_check;
- res->genericarg = Generic_This_Type;
-Index: form/fty_int.c
-Prereq: 1.25
---- ncurses-5.9/form/fty_int.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/fty_int.c 2012-02-23 10:02:15.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -34,7 +34,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fty_int.c,v 1.25 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: fty_int.c,v 1.26 2012/02/23 10:02:15 tom Exp $")
-
- #if USE_WIDEC_SUPPORT
- #define isDigit(c) (iswdigit((wint_t)(c)) || isdigit(UChar(c)))
-@@ -233,7 +233,8 @@
- }
- if (result)
- {
-- sprintf(buf, "%.*ld", (prec > 0 ? prec : 0), val);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
-+ "%.*ld", (prec > 0 ? prec : 0), val);
- set_field_buffer(field, 0, buf);
- }
- }
-Index: form/fty_num.c
-Prereq: 1.28
---- ncurses-5.9/form/fty_num.c 2010-01-23 21:14:36.000000000 +0000
-+++ ncurses-5.9-20141206/form/fty_num.c 2012-02-23 10:02:15.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -34,7 +34,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fty_num.c,v 1.28 2010/01/23 21:14:36 tom Exp $")
-+MODULE_ID("$Id: fty_num.c,v 1.29 2012/02/23 10:02:15 tom Exp $")
-
- #if HAVE_LOCALE_H
- #include <locale.h>
-@@ -271,7 +271,8 @@
- }
- if (result)
- {
-- sprintf(buf, "%.*f", (prec > 0 ? prec : 0), val);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
-+ "%.*f", (prec > 0 ? prec : 0), val);
- set_field_buffer(field, 0, buf);
- }
- }
-Index: form/fty_regex.c
-Prereq: 1.24
---- ncurses-5.9/form/fty_regex.c 2010-01-23 21:14:37.000000000 +0000
-+++ ncurses-5.9-20141206/form/fty_regex.c 2012-10-27 20:12:53.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -34,7 +34,7 @@
-
- #include "form.priv.h"
-
--MODULE_ID("$Id: fty_regex.c,v 1.24 2010/01/23 21:14:37 tom Exp $")
-+MODULE_ID("$Id: fty_regex.c,v 1.25 2012/10/27 20:12:53 tom Exp $")
-
- #if HAVE_REGEX_H_FUNCS /* We prefer POSIX regex */
- #include <regex.h>
-@@ -123,9 +123,8 @@
- (REG_EXTENDED | REG_NOSUB | REG_NEWLINE)))
- {
- T((T_CREATE("regex_t %p"), (void *)preg->pRegExp));
-- preg->refCount = typeMalloc(unsigned long, 1);
--
-- *(preg->refCount) = 1;
-+ if ((preg->refCount = typeMalloc(unsigned long, 1)) != 0)
-+ *(preg->refCount) = 1;
- }
- else
- {
-@@ -151,9 +150,8 @@
-
- T((T_CREATE("RegExp_Arg %p"), pArg));
- pArg->compiled_expression = NULL;
-- pArg->refCount = typeMalloc(unsigned long, 1);
--
-- *(pArg->refCount) = 1;
-+ if ((pArg->refCount = typeMalloc(unsigned long, 1)) != 0)
-+ *(pArg->refCount) = 1;
-
- do
- {
-Index: form/llib-lformtw
---- ncurses-5.9/form/llib-lformtw 2010-01-09 22:01:40.000000000 +0000
-+++ ncurses-5.9-20141206/form/llib-lformtw 2013-12-14 22:18:50.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2010,2013 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 @@
- ****************************************************************************/
-
- /****************************************************************************
-- * Author: Thomas E. Dickey 2010 *
-+ * Author: Thomas E. Dickey 2010-on *
- ****************************************************************************/
- /* LINTLIBRARY */
-
-@@ -494,6 +494,13 @@
- int c)
- { return(*(int *)0); }
-
-+#undef form_driver_w
-+int form_driver_w(
-+ FORM *form,
-+ int type,
-+ wchar_t c)
-+ { return(*(int *)0); }
-+
- #undef set_field_buffer
- int set_field_buffer(
- FIELD *field,
-Index: form/llib-lformw
---- ncurses-5.9/form/llib-lformw 2010-01-09 21:54:33.000000000 +0000
-+++ ncurses-5.9-20141206/form/llib-lformw 2013-12-14 22:19:40.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2013 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 @@
- ****************************************************************************/
-
- /****************************************************************************
-- * Author: Thomas E. Dickey 2002-2005,2010 *
-+ * Author: Thomas E. Dickey 2002-on *
- ****************************************************************************/
- /* LINTLIBRARY */
-
-@@ -494,6 +494,13 @@
- int c)
- { return(*(int *)0); }
-
-+#undef form_driver_w
-+int form_driver_w(
-+ FORM *form,
-+ int type,
-+ wchar_t c)
-+ { return(*(int *)0); }
-+
- #undef set_field_buffer
- int set_field_buffer(
- FIELD *field,
-Index: include/Caps
-Prereq: 1.37
---- ncurses-5.9/include/Caps 2010-12-04 18:47:13.000000000 +0000
-+++ ncurses-5.9-20141206/include/Caps 2011-10-15 23:10:18.000000000 +0000
-@@ -1,5 +1,5 @@
- ##############################################################################
--# Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2010,2011 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"), #
-@@ -29,7 +29,7 @@
- # Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995
- # and: Eric S. Raymond <esr@snark.thyrsus.com>
- #
--# $Id: Caps,v 1.37 2010/12/04 18:47:13 tom Exp $
-+# $Id: Caps,v 1.38 2011/10/15 23:10:18 tom Exp $
- #
- # This is the master termcap/terminfo capability table.
- #
-@@ -738,11 +738,13 @@
- #%.ad
- #%
- #%.in .8i
--#%The XSI Curses standard added these. They are some post-4.1
--#%versions of System V curses, e.g., Solaris 2.5 and IRIX 6.x.
--#%The \fBncurses\fR 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
-+#%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 \fBYI\fP, the \fBncurses\fR 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!
- #%
- #%.na
-@@ -760,7 +762,7 @@
- enter_top_hl_mode ethlm str Xt - - ----- Enter top highlight mode
- enter_vertical_hl_mode evhlm str Xv - - ----- Enter vertical highlight mode
- set_a_attributes sgr1 str sA - - ----- Define second set of video attributes #1-#6
--set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch
-+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap).
- #%.TE
- #%.ad
- #
-Index: include/Caps.aix4
-Prereq: 1.8
---- ncurses-5.9/include/Caps.aix4 2010-12-04 18:47:13.000000000 +0000
-+++ ncurses-5.9-20141206/include/Caps.aix4 2011-10-15 23:19:16.000000000 +0000
-@@ -1,5 +1,5 @@
- ##############################################################################
--# Copyright (c) 2001-2006,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 2001-2010,2011 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"), #
-@@ -28,7 +28,7 @@
- #
- # Author: Thomas Dickey
- #
--# $Id: Caps.aix4,v 1.8 2010/12/04 18:47:13 tom Exp $
-+# $Id: Caps.aix4,v 1.9 2011/10/15 23:19:16 tom Exp $
- #
- # This is an adaptation of ncurses' termcap/terminfo capability table, which
- # is designed to align with AIX 4.x's terminfo.
-@@ -840,11 +840,13 @@
- #%.ad
- #%
- #%.in .8i
--#%The XSI Curses standard added these. They are some post-4.1
--#%versions of System V curses, e.g., Solaris 2.5 and IRIX 6.x.
--#%The \fBncurses\fR 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
-+#%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 \fBYI\fP, the \fBncurses\fR 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!
- #%
- #%.na
-@@ -862,7 +864,7 @@
- enter_top_hl_mode ethlm str Xt - - ----- Enter top highlight mode
- enter_vertical_hl_mode evhlm str Xv - - ----- Enter vertical highlight mode
- set_a_attributes sgr1 str sA - - ----- Define second set of video attributes #1-#6
--set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch
-+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap).
- #%.TE
- #%.ad
- #
-Index: include/Caps.hpux11
-Prereq: 1.5
---- ncurses-5.9/include/Caps.hpux11 2010-12-04 18:47:13.000000000 +0000
-+++ ncurses-5.9-20141206/include/Caps.hpux11 2011-10-15 23:20:04.000000000 +0000
-@@ -1,5 +1,5 @@
- ##############################################################################
--# Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 2002-2010,2011 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"), #
-@@ -28,7 +28,7 @@
- #
- # Author: Thomas Dickey
- #
--# $Id: Caps.hpux11,v 1.5 2010/12/04 18:47:13 tom Exp $
-+# $Id: Caps.hpux11,v 1.6 2011/10/15 23:20:04 tom Exp $
- #
- # This is an adaptation of ncurses' termcap/terminfo capability table, which
- # is designed to align with HPUX 11.x's terminfo.
-@@ -746,11 +746,13 @@
- #%.ad
- #%
- #%.in .8i
--#%The XSI Curses standard added these. They are some post-4.1
--#%versions of System V curses, e.g., Solaris 2.5 and IRIX 6.x.
--#%The \fBncurses\fR 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
-+#%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 \fBYI\fP, the \fBncurses\fR 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!
- #%
- #%.na
-@@ -761,7 +763,7 @@
- #%lw25 lw6 lw2 lw20.
- #%\fBVariable Cap- TCap Description\fR
- #%\fBString name Code\fR
--set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch
-+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap).
- enter_horizontal_hl_mode ehhlm str Xh - - ----- Enter horizontal highlight mode
- enter_left_hl_mode elhlm str Xl - - ----- Enter left highlight mode
- enter_low_hl_mode elohlm str Xo - - ----- Enter low highlight mode
-Index: include/Caps.keys
-Prereq: 1.4
---- ncurses-5.9/include/Caps.keys 2010-12-04 18:47:13.000000000 +0000
-+++ ncurses-5.9-20141206/include/Caps.keys 2013-07-20 17:59:24.000000000 +0000
-@@ -1,5 +1,5 @@
- ##############################################################################
--# Copyright (c) 2001-2006,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 2001-2011,2013 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"), #
-@@ -29,7 +29,7 @@
- # Author: Thomas Dickey
- # and: Ilya Zakharevich
- #
--# $Id: Caps.keys,v 1.4 2010/12/04 18:47:13 tom Exp $
-+# $Id: Caps.keys,v 1.7 2013/07/20 17:59:24 tom Exp $
- #
- # This is an adaptation of ncurses' termcap/terminfo capability table, which
- # is illustrates an experimental extension to describe alt-, shift- and
-@@ -229,11 +229,11 @@
- over_strike os bool os - - YBCG- terminal can overstrike
- status_line_esc_ok eslok bool es - - YB-G- escape can be used on the status line
- dest_tabs_magic_smso xt bool xt - - YBCGE tabs destructive, magic so char (t1061)
--tilde_glitch hz bool hz - - YB-GE can't print ~'s (hazeltine)
-+tilde_glitch hz bool hz - - YB-GE cannot print ~'s (hazeltine)
- transparent_underline ul bool ul - - YBCGE underline character overstrikes
- xon_xoff xon bool xo - - YB--- terminal uses xon/xoff handshaking
--needs_xon_xoff nxon bool nx - - ----- padding won't work, xon/xoff required
--prtr_silent mc5i bool 5i - - ----- printer won't echo on screen
-+needs_xon_xoff nxon bool nx - - ----- padding will not work, xon/xoff required
-+prtr_silent mc5i bool 5i - - ----- printer will not echo on screen
- hard_cursor chts bool HC - - ----- cursor is hard to see
- non_rev_rmcup nrrmc bool NR - - ----- smcup does not reverse rmcup
- no_pad_char npc bool NP - - ----- pad character does not exist
-@@ -277,7 +277,7 @@
- # These came in with SVr4's color support
- max_colors colors num Co - - ----- maximum number of colors on screen
- max_pairs pairs num pa - - ----- maximum number of color-pairs on the screen
--no_color_video ncv num NC - - ----- video attributes that can't be used with colors
-+no_color_video ncv num NC - - ----- video attributes that cannot be used with colors
- #%.TE
- #%.ad
- #%
-@@ -828,11 +828,13 @@
- #%.ad
- #%
- #%.in .8i
--#%The XSI Curses standard added these. They are some post-4.1
--#%versions of System V curses, e.g., Solaris 2.5 and IRIX 6.x.
--#%The \fBncurses\fR 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
-+#%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 \fBYI\fP, the \fBncurses\fR 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!
- #%
- #%.na
-@@ -850,7 +852,7 @@
- enter_top_hl_mode ethlm str Xt - - ----- Enter top highlight mode
- enter_vertical_hl_mode evhlm str Xv - - ----- Enter vertical highlight mode
- set_a_attributes sgr1 str sA - - ----- Define second set of video attributes #1-#6
--set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch
-+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap).
- #%.TE
- #%.ad
- #
-Index: include/Caps.osf1r5
-Prereq: 1.5
---- ncurses-5.9/include/Caps.osf1r5 2010-12-04 18:47:13.000000000 +0000
-+++ ncurses-5.9-20141206/include/Caps.osf1r5 2011-10-15 22:52:09.000000000 +0000
-@@ -1,5 +1,5 @@
- ##############################################################################
--# Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 2002-2010,2011 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"), #
-@@ -28,7 +28,7 @@
- #
- # Author: Thomas Dickey
- #
--# $Id: Caps.osf1r5,v 1.5 2010/12/04 18:47:13 tom Exp $
-+# $Id: Caps.osf1r5,v 1.6 2011/10/15 22:52:09 tom Exp $
- #
- # This is an adaptation of ncurses' termcap/terminfo capability table, which
- # is designed to align with OSF/1 version 5 (Tru64) terminfo.
-@@ -769,7 +769,7 @@
- xoff_character xoffc str XF - - ----- XOFF character
- xon_character xonc str XN - - ----- XON character
- zero_motion zerom str Zx - - ----- No motion for subsequent character
--set_pglen_inch slength str sL - - ----- YI Set page length to #1 hundredth of an inch
-+set_pglen_inch slength str YI - - ----- Set page length to #1 hundredth of an inch (some implementations use sL for termcap).
- enter_horizontal_hl_mode ehhlm str Xh - - ----- Enter horizontal highlight mode
- enter_left_hl_mode elhlm str Xl - - ----- Enter left highlight mode
- enter_low_hl_mode elohlm str Xo - - ----- Enter low highlight mode
-Index: include/MKkey_defs.sh
-Prereq: 1.14
---- ncurses-5.9/include/MKkey_defs.sh 2003-12-06 17:10:09.000000000 +0000
-+++ ncurses-5.9-20141206/include/MKkey_defs.sh 2013-03-09 16:32:01.000000000 +0000
-@@ -1,7 +1,7 @@
- #! /bin/sh
--# $Id: MKkey_defs.sh,v 1.14 2003/12/06 17:10:09 tom Exp $
-+# $Id: MKkey_defs.sh,v 1.15 2013/03/09 16:32:01 tom Exp $
- ##############################################################################
--# Copyright (c) 2001-2002,2003 Free Software Foundation, Inc. #
-+# Copyright (c) 2001-2003,2013 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"), #
-@@ -65,9 +65,12 @@
- key_event kv1 str V1 KEY_EVENT + ----- We were interrupted by an event
- EOF
-
-+THIS=./`basename $0`
-+PARM=./`basename $DATA`
-+
- cat <<EOF
- /*
-- * These definitions were generated by $0 $DATA
-+ * These definitions were generated by $THIS $PARM
- */
- EOF
-
-Index: include/MKparametrized.sh
-Prereq: 1.6
---- ncurses-5.9/include/MKparametrized.sh 2006-04-22 21:36:16.000000000 +0000
-+++ ncurses-5.9-20141206/include/MKparametrized.sh 2014-05-24 15:07:19.000000000 +0000
-@@ -1,6 +1,6 @@
- #!/bin/sh
- ##############################################################################
--# Copyright (c) 1998-2000,2006 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2006,2014 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"), #
-@@ -26,7 +26,7 @@
- # use or other dealings in this Software without prior written #
- # authorization. #
- ##############################################################################
--# $Id: MKparametrized.sh,v 1.6 2006/04/22 21:36:16 tom Exp $
-+# $Id: MKparametrized.sh,v 1.7 2014/05/24 15:07:19 tom Exp $
- #
- # MKparametrized.sh -- generate indirection vectors for various sort methods
- #
-@@ -53,10 +53,11 @@
- # this, that would be cleaner....
-
- ${AWK-awk} <$CAPS '
--$3 != "str" {next;}
--$1 ~ /^acs_/ {print "-1,\t/* ", $2, " */"; count++; next;}
--$0 ~ /#[0-9]/ {print "1,\t/* ", $2, " */"; count++; next;}
-- {print "0,\t/* ", $2, " */"; count++;}
--END {printf("} /* %d entries */;\n\n", count);}
-+$3 != "str" {next;}
-+$1 ~ /^acs_/ {print "-1,\t/* ", $2, " */"; count++; next;}
-+$1 ~ /^label_format/ {print "-1,\t/* ", $2, " */"; count++; next;}
-+$0 ~ /#[0-9]/ {print "1,\t/* ", $2, " */"; count++; next;}
-+ {print "0,\t/* ", $2, " */"; count++;}
-+END {printf("} /* %d entries */;\n\n", count);}
- '
-
-Index: include/MKterm.h.awk.in
-Prereq: 1.58
---- ncurses-5.9/include/MKterm.h.awk.in 2010-01-09 19:53:26.000000000 +0000
-+++ ncurses-5.9-20141206/include/MKterm.h.awk.in 2013-08-17 19:21:56.000000000 +0000
-@@ -1,7 +1,7 @@
- # vile:awkmode
- BEGIN {
- print "/****************************************************************************"
-- print " * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *"
-+ print " * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. *"
- print " * *"
- print " * Permission is hereby granted, free of charge, to any person obtaining a *"
- print " * copy of this software and associated documentation files (the *"
-@@ -34,7 +34,7 @@
- print "/* and: Thomas E. Dickey 1995-on */"
- print "/****************************************************************************/"
- print ""
-- print "/* $Id: MKterm.h.awk.in,v 1.58 2010/01/09 19:53:26 tom Exp $ */"
-+ print "/* $Id: MKterm.h.awk.in,v 1.62 2013/08/17 19:21:56 tom Exp $ */"
- print ""
- print "/*"
- print "** term.h -- Definition of struct term"
-@@ -62,6 +62,12 @@
- print "#undef NCURSES_SBOOL"
- print "#define NCURSES_SBOOL @NCURSES_SBOOL@"
- print ""
-+ print "#undef NCURSES_USE_DATABASE"
-+ print "#define NCURSES_USE_DATABASE @NCURSES_USE_DATABASE@"
-+ print ""
-+ print "#undef NCURSES_USE_TERMCAP"
-+ print "#define NCURSES_USE_TERMCAP @NCURSES_USE_TERMCAP@"
-+ print ""
- print "#undef NCURSES_XNAMES"
- print "#define NCURSES_XNAMES @NCURSES_XNAMES@"
- print ""
-@@ -93,41 +99,6 @@
- print "#include <termio.h>"
- print "#define TTY struct termio"
- print ""
-- print "/* Add definitions to make termio look like termios."
-- print " * But ifdef it, since there are some implementations"
-- print " * that try to do this for us in a fake <termio.h>."
-- print " */"
-- print "#ifndef TCSANOW"
-- print "#define TCSANOW TCSETA"
-- print "#endif"
-- print "#ifndef TCSADRAIN"
-- print "#define TCSADRAIN TCSETAW"
-- print "#endif"
-- print "#ifndef TCSAFLUSH"
-- print "#define TCSAFLUSH TCSETAF"
-- print "#endif"
-- print "#ifndef tcsetattr"
-- print "#define tcsetattr(fd, cmd, arg) ioctl(fd, cmd, arg)"
-- print "#endif"
-- print "#ifndef tcgetattr"
-- print "#define tcgetattr(fd, arg) ioctl(fd, TCGETA, arg)"
-- print "#endif"
-- print "#ifndef cfgetospeed"
-- print "#define cfgetospeed(t) ((t)->c_cflag & CBAUD)"
-- print "#endif"
-- print "#ifndef TCIFLUSH "
-- print "#define TCIFLUSH 0"
-- print "#endif"
-- print "#ifndef TCOFLUSH "
-- print "#define TCOFLUSH 1"
-- print "#endif"
-- print "#ifndef TCIOFLUSH "
-- print "#define TCIOFLUSH 2"
-- print "#endif"
-- print "#ifndef tcflush"
-- print "#define tcflush(fd, arg) ioctl(fd, TCFLSH, arg)"
-- print "#endif"
-- print ""
- print "#else /* !HAVE_TERMIO_H */"
- print ""
- print "#if __MINGW32__"
-@@ -281,6 +252,7 @@
- print "extern NCURSES_EXPORT(int) _nc_get_tty_mode (TTY *buf);"
- print "extern NCURSES_EXPORT(int) _nc_read_entry (const char * const, char * const, TERMTYPE *const);"
- print "extern NCURSES_EXPORT(int) _nc_read_file_entry (const char *const, TERMTYPE *);"
-+ print "extern NCURSES_EXPORT(void) _nc_init_termtype (TERMTYPE *const);"
- print "extern NCURSES_EXPORT(int) _nc_read_termtype (TERMTYPE *, 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);"
-Index: include/Makefile.in
-Prereq: 1.40
---- ncurses-5.9/include/Makefile.in 2010-11-27 21:45:27.000000000 +0000
-+++ ncurses-5.9-20141206/include/Makefile.in 2013-08-03 23:10:51.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.40 2010/11/27 21:45:27 tom Exp $
-+# $Id: Makefile.in,v 1.41 2013/08/03 23:10:51 tom Exp $
- ##############################################################################
--# Copyright (c) 1998,2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2010,2013 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"), #
-@@ -48,6 +48,9 @@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
- includedir = @includedir@
-+includesubdir = @includesubdir@
-+
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-
- INSTALL = @INSTALL@
- INSTALL_DATA = @INSTALL_DATA@
-Index: include/curses.h.in
-Prereq: 1.220
---- ncurses-5.9/include/curses.h.in 2011-01-22 19:47:20.000000000 +0000
-+++ ncurses-5.9-20141206/include/curses.h.in 2014-08-09 20:39:44.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -32,7 +32,7 @@
- * and: Thomas E. Dickey 1996-on *
- ****************************************************************************/
-
--/* $Id: curses.h.in,v 1.220 2011/01/22 19:47:20 tom Exp $ */
-+/* $Id: curses.h.in,v 1.241 2014/08/09 20:39:44 tom Exp $ */
-
- #ifndef __NCURSES_H
- #define __NCURSES_H
-@@ -59,6 +59,10 @@
- */
- #include <ncurses_dll.h>
-
-+#if @HAVE_STDINT_H@
-+#include <stdint.h>
-+#endif
-+
- /*
- * User-definable tweak to disable the include of <stdbool.h>.
- */
-@@ -70,12 +74,6 @@
- * NCURSES_ATTR_T is used to quiet compiler warnings when building ncurses
- * configured using --disable-macros.
- */
--#ifdef NCURSES_NOMACROS
--#ifndef NCURSES_ATTR_T
--#define NCURSES_ATTR_T attr_t
--#endif
--#endif /* NCURSES_NOMACROS */
--
- #ifndef NCURSES_ATTR_T
- #define NCURSES_ATTR_T int
- #endif
-@@ -91,11 +89,20 @@
- #define NCURSES_INLINE @NCURSES_INLINE@
-
- /*
-- * The internal type used for color values
-+ * The internal type used for color values, and for color-pairs. The latter
-+ * allows the curses library to enumerate the combinations of foreground and
-+ * background colors used by an application, and is normally the product of the
-+ * total foreground and background colors.
-+ *
-+ * X/Open uses "short" for both of these types, ultimately because they are
-+ * numbers from the terminal database, which uses 16-bit signed values.
- */
- #undef NCURSES_COLOR_T
- #define NCURSES_COLOR_T short
-
-+#undef NCURSES_PAIRS_T
-+#define NCURSES_PAIRS_T short
-+
- /*
- * Definition used to make WINDOW and similar structs opaque.
- */
-@@ -129,6 +136,13 @@
- #define NCURSES_TPARM_VARARGS @NCURSES_TPARM_VARARGS@
-
- /*
-+ * Control type used for tparm's arguments. While X/Open equates long and
-+ * char* values, this is not always workable for 64-bit platforms.
-+ */
-+#undef NCURSES_TPARM_ARG
-+#define NCURSES_TPARM_ARG @NCURSES_TPARM_ARG@
-+
-+/*
- * NCURSES_CH_T is used in building the library, but not used otherwise in
- * this header file, since that would make the normal/wide-character versions
- * of the header incompatible.
-@@ -140,8 +154,8 @@
- typedef unsigned chtype;
- typedef unsigned mmask_t;
- #else
--typedef unsigned @cf_cv_typeof_chtype@ chtype;
--typedef unsigned @cf_cv_typeof_mmask_t@ mmask_t;
-+typedef @cf_cv_typeof_chtype@ chtype;
-+typedef @cf_cv_typeof_mmask_t@ mmask_t;
- #endif
-
- /*
-@@ -151,15 +165,21 @@
-
- /*
- * With XPG4, you must define _XOPEN_SOURCE_EXTENDED, it is redundant (or
-- * conflicting) when _XOPEN_SOURCE is 500 or greater.
-+ * conflicting) when _XOPEN_SOURCE is 500 or greater. If NCURSES_WIDECHAR is
-+ * not already defined, e.g., if the platform relies upon nonstandard feature
-+ * test macros, define it at this point if the standard feature test macros
-+ * indicate that it should be defined.
- */
--#undef NCURSES_WIDECHAR
--#if defined(_XOPEN_SOURCE_EXTENDED) || defined(_XPG5)
--#define NCURSES_WIDECHAR
-+#ifndef NCURSES_WIDECHAR
-+#if defined(_XOPEN_SOURCE_EXTENDED) || (defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE - 0 >= 500))
-+#define NCURSES_WIDECHAR 1
-+#else
-+#define NCURSES_WIDECHAR 0
- #endif
-+#endif /* NCURSES_WIDECHAR */
-
- #include <stdarg.h> /* we need va_list */
--#ifdef NCURSES_WIDECHAR
-+#if NCURSES_WIDECHAR
- #include <stddef.h> /* we want wchar_t */
- #endif
-
-@@ -231,6 +251,10 @@
- #define WA_TOP A_TOP
- #define WA_VERTICAL A_VERTICAL
-
-+#if @NCURSES_EXT_FUNCS@
-+#define WA_ITALIC A_ITALIC /* ncurses extension */
-+#endif
-+
- /* colors */
- #define COLOR_BLACK 0
- #define COLOR_RED 1
-@@ -250,7 +274,7 @@
- extern NCURSES_EXPORT_VAR(chtype) acs_map[];
- #endif
-
--#define NCURSES_ACS(c) (acs_map[NCURSES_CAST(unsigned char,c)])
-+#define NCURSES_ACS(c) (acs_map[NCURSES_CAST(unsigned char,(c))])
-
- /* VT100 symbols begin here */
- #define ACS_ULCORNER NCURSES_ACS('l') /* upper left corner */
-@@ -342,7 +366,7 @@
-
- typedef chtype attr_t; /* ...must be at least as wide as chtype */
-
--#ifdef NCURSES_WIDECHAR
-+#if NCURSES_WIDECHAR
-
- #if @NCURSES_LIBUTF8@
- #ifdef mblen /* libutf8.h defines it w/o undefining first */
-@@ -366,7 +390,7 @@
- /*
- * cchar_t stores an array of CCHARW_MAX wide characters. The first is
- * normally a spacing character. The others are non-spacing. If those
-- * (spacing and nonspacing) do not fill the array, a null L'\0' follows.
-+ * (spacing and nonspacing) do not fill the array, a null L'\0' follows.
- * Otherwise, a null is assumed to follow when extracting via getcchar().
- */
- #define CCHARW_MAX @NCURSES_CCHARW_MAX@
-@@ -434,7 +458,7 @@
-
- NCURSES_SIZE_T _yoffset; /* real begy is _begy + _yoffset */
-
--#ifdef NCURSES_WIDECHAR
-+#if NCURSES_WIDECHAR
- cchar_t _bkgrnd; /* current background char/attribute pair */
- #if @NCURSES_EXT_COLORS@
- int _color; /* current color-pair for non-space character */
-@@ -556,10 +580,10 @@
- extern NCURSES_EXPORT(int) attroff (NCURSES_ATTR_T); /* generated */
- extern NCURSES_EXPORT(int) attron (NCURSES_ATTR_T); /* generated */
- extern NCURSES_EXPORT(int) attrset (NCURSES_ATTR_T); /* generated */
--extern NCURSES_EXPORT(int) attr_get (attr_t *, short *, void *); /* generated */
-+extern NCURSES_EXPORT(int) attr_get (attr_t *, NCURSES_PAIRS_T *, void *); /* generated */
- extern NCURSES_EXPORT(int) attr_off (attr_t, void *); /* generated */
- extern NCURSES_EXPORT(int) attr_on (attr_t, void *); /* generated */
--extern NCURSES_EXPORT(int) attr_set (attr_t, short, void *); /* generated */
-+extern NCURSES_EXPORT(int) attr_set (attr_t, NCURSES_PAIRS_T, void *); /* generated */
- extern NCURSES_EXPORT(int) baudrate (void); /* implemented */
- extern NCURSES_EXPORT(int) beep (void); /* implemented */
- extern NCURSES_EXPORT(int) bkgd (chtype); /* generated */
-@@ -568,13 +592,13 @@
- extern NCURSES_EXPORT(int) box (WINDOW *, chtype, chtype); /* generated */
- extern NCURSES_EXPORT(bool) can_change_color (void); /* implemented */
- extern NCURSES_EXPORT(int) cbreak (void); /* implemented */
--extern NCURSES_EXPORT(int) chgat (int, attr_t, short, const void *); /* generated */
-+extern NCURSES_EXPORT(int) chgat (int, attr_t, NCURSES_PAIRS_T, const void *); /* generated */
- extern NCURSES_EXPORT(int) clear (void); /* generated */
- extern NCURSES_EXPORT(int) clearok (WINDOW *,bool); /* implemented */
- extern NCURSES_EXPORT(int) clrtobot (void); /* generated */
- extern NCURSES_EXPORT(int) clrtoeol (void); /* generated */
--extern NCURSES_EXPORT(int) color_content (short,short*,short*,short*); /* implemented */
--extern NCURSES_EXPORT(int) color_set (short,void*); /* generated */
-+extern NCURSES_EXPORT(int) color_content (NCURSES_COLOR_T,NCURSES_COLOR_T*,NCURSES_COLOR_T*,NCURSES_COLOR_T*); /* implemented */
-+extern NCURSES_EXPORT(int) color_set (NCURSES_PAIRS_T,void*); /* generated */
- extern NCURSES_EXPORT(int) COLOR_PAIR (int); /* generated */
- extern NCURSES_EXPORT(int) copywin (const WINDOW*,WINDOW*,int,int,int,int,int,int,int); /* implemented */
- extern NCURSES_EXPORT(int) curs_set (int); /* implemented */
-@@ -613,8 +637,8 @@
- extern NCURSES_EXPORT(int) inchnstr (chtype *, int); /* generated */
- extern NCURSES_EXPORT(int) inchstr (chtype *); /* generated */
- extern NCURSES_EXPORT(WINDOW *) initscr (void); /* implemented */
--extern NCURSES_EXPORT(int) init_color (short,short,short,short); /* implemented */
--extern NCURSES_EXPORT(int) init_pair (short,short,short); /* implemented */
-+extern NCURSES_EXPORT(int) init_color (NCURSES_COLOR_T,NCURSES_COLOR_T,NCURSES_COLOR_T,NCURSES_COLOR_T); /* implemented */
-+extern NCURSES_EXPORT(int) init_pair (NCURSES_PAIRS_T,NCURSES_COLOR_T,NCURSES_COLOR_T); /* implemented */
- extern NCURSES_EXPORT(int) innstr (char *, int); /* generated */
- extern NCURSES_EXPORT(int) insch (chtype); /* generated */
- extern NCURSES_EXPORT(int) insdelln (int); /* generated */
-@@ -638,7 +662,7 @@
- extern NCURSES_EXPORT(int) mvaddchstr (int, int, const chtype *); /* generated */
- extern NCURSES_EXPORT(int) mvaddnstr (int, int, const char *, int); /* generated */
- extern NCURSES_EXPORT(int) mvaddstr (int, int, const char *); /* generated */
--extern NCURSES_EXPORT(int) mvchgat (int, int, int, attr_t, short, const void *); /* generated */
-+extern NCURSES_EXPORT(int) mvchgat (int, int, int, attr_t, NCURSES_PAIRS_T, const void *); /* generated */
- extern NCURSES_EXPORT(int) mvcur (int,int,int,int); /* implemented */
- extern NCURSES_EXPORT(int) mvdelch (int, int); /* generated */
- extern NCURSES_EXPORT(int) mvderwin (WINDOW *, int, int); /* implemented */
-@@ -664,7 +688,7 @@
- extern NCURSES_EXPORT(int) mvwaddchstr (WINDOW *, int, int, const chtype *); /* generated */
- extern NCURSES_EXPORT(int) mvwaddnstr (WINDOW *, int, int, const char *, int); /* generated */
- extern NCURSES_EXPORT(int) mvwaddstr (WINDOW *, int, int, const char *); /* generated */
--extern NCURSES_EXPORT(int) mvwchgat (WINDOW *, int, int, int, attr_t, short, const void *);/* generated */
-+extern NCURSES_EXPORT(int) mvwchgat (WINDOW *, int, int, int, attr_t, NCURSES_PAIRS_T, const void *);/* generated */
- extern NCURSES_EXPORT(int) mvwdelch (WINDOW *, int, int); /* generated */
- extern NCURSES_EXPORT(int) mvwgetch (WINDOW *, int, int); /* generated */
- extern NCURSES_EXPORT(int) mvwgetnstr (WINDOW *, int, int, char *, int); /* generated */
-@@ -698,7 +722,7 @@
- extern NCURSES_EXPORT(int) notimeout (WINDOW *,bool); /* implemented */
- extern NCURSES_EXPORT(int) overlay (const WINDOW*,WINDOW *); /* implemented */
- extern NCURSES_EXPORT(int) overwrite (const WINDOW*,WINDOW *); /* implemented */
--extern NCURSES_EXPORT(int) pair_content (short,short*,short*); /* implemented */
-+extern NCURSES_EXPORT(int) pair_content (NCURSES_PAIRS_T,NCURSES_COLOR_T*,NCURSES_COLOR_T*); /* implemented */
- extern NCURSES_EXPORT(int) PAIR_NUMBER (int); /* generated */
- extern NCURSES_EXPORT(int) pechochar (WINDOW *, const chtype); /* implemented */
- extern NCURSES_EXPORT(int) pnoutrefresh (WINDOW*,int,int,int,int,int,int);/* implemented */
-@@ -732,9 +756,9 @@
- extern NCURSES_EXPORT(int) slk_attr_on (attr_t,void*); /* generated:WIDEC */
- extern NCURSES_EXPORT(int) slk_attrset (const chtype); /* implemented */
- extern NCURSES_EXPORT(attr_t) slk_attr (void); /* implemented */
--extern NCURSES_EXPORT(int) slk_attr_set (const attr_t,short,void*); /* implemented */
-+extern NCURSES_EXPORT(int) slk_attr_set (const attr_t,NCURSES_PAIRS_T,void*); /* implemented */
- extern NCURSES_EXPORT(int) slk_clear (void); /* implemented */
--extern NCURSES_EXPORT(int) slk_color (short); /* implemented */
-+extern NCURSES_EXPORT(int) slk_color (NCURSES_PAIRS_T); /* implemented */
- extern NCURSES_EXPORT(int) slk_init (int); /* implemented */
- extern NCURSES_EXPORT(char *) slk_label (int); /* implemented */
- extern NCURSES_EXPORT(int) slk_noutrefresh (void); /* implemented */
-@@ -757,6 +781,7 @@
- extern NCURSES_EXPORT(int) ungetch (int); /* implemented */
- extern NCURSES_EXPORT(int) untouchwin (WINDOW *); /* generated */
- extern NCURSES_EXPORT(void) use_env (bool); /* implemented */
-+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 */
-@@ -772,18 +797,18 @@
- extern NCURSES_EXPORT(int) wattron (WINDOW *, int); /* generated */
- extern NCURSES_EXPORT(int) wattroff (WINDOW *, int); /* generated */
- extern NCURSES_EXPORT(int) wattrset (WINDOW *, int); /* generated */
--extern NCURSES_EXPORT(int) wattr_get (WINDOW *, attr_t *, short *, void *); /* generated */
-+extern NCURSES_EXPORT(int) wattr_get (WINDOW *, attr_t *, NCURSES_PAIRS_T *, void *); /* generated */
- extern NCURSES_EXPORT(int) wattr_on (WINDOW *, attr_t, void *); /* implemented */
- extern NCURSES_EXPORT(int) wattr_off (WINDOW *, attr_t, void *); /* implemented */
--extern NCURSES_EXPORT(int) wattr_set (WINDOW *, attr_t, short, void *); /* generated */
-+extern NCURSES_EXPORT(int) wattr_set (WINDOW *, attr_t, NCURSES_PAIRS_T, void *); /* generated */
- extern NCURSES_EXPORT(int) wbkgd (WINDOW *, chtype); /* implemented */
- extern NCURSES_EXPORT(void) wbkgdset (WINDOW *,chtype); /* implemented */
- extern NCURSES_EXPORT(int) wborder (WINDOW *,chtype,chtype,chtype,chtype,chtype,chtype,chtype,chtype); /* implemented */
--extern NCURSES_EXPORT(int) wchgat (WINDOW *, int, attr_t, short, const void *);/* implemented */
-+extern NCURSES_EXPORT(int) wchgat (WINDOW *, int, attr_t, NCURSES_PAIRS_T, const void *);/* implemented */
- extern NCURSES_EXPORT(int) wclear (WINDOW *); /* implemented */
- extern NCURSES_EXPORT(int) wclrtobot (WINDOW *); /* implemented */
- extern NCURSES_EXPORT(int) wclrtoeol (WINDOW *); /* implemented */
--extern NCURSES_EXPORT(int) wcolor_set (WINDOW*,short,void*); /* implemented */
-+extern NCURSES_EXPORT(int) wcolor_set (WINDOW*,NCURSES_PAIRS_T,void*); /* implemented */
- extern NCURSES_EXPORT(void) wcursyncup (WINDOW *); /* implemented */
- extern NCURSES_EXPORT(int) wdelch (WINDOW *); /* implemented */
- extern NCURSES_EXPORT(int) wdeleteln (WINDOW *); /* generated */
-@@ -832,7 +857,7 @@
- #if NCURSES_TPARM_VARARGS
- extern NCURSES_EXPORT(char *) tparm (NCURSES_CONST char *, ...); /* special */
- #else
--extern NCURSES_EXPORT(char *) tparm (NCURSES_CONST char *, long,long,long,long,long,long,long,long,long); /* special */
-+extern NCURSES_EXPORT(char *) tparm (NCURSES_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 (NCURSES_CONST char *, ...); /* special */
- #endif
-
-@@ -854,7 +879,7 @@
- /*
- * vid_attr() was implemented originally based on a draft of X/Open curses.
- */
--#ifndef NCURSES_WIDECHAR
-+#if !NCURSES_WIDECHAR
- #define vid_attr(a,pair,opts) vidattr(a)
- #endif
-
-@@ -903,6 +928,7 @@
- extern NCURSES_EXPORT(bool) is_scrollok (const WINDOW *); /* @GENERATED_EXT_FUNCS@ */
- extern NCURSES_EXPORT(bool) is_subwin (const WINDOW *); /* @GENERATED_EXT_FUNCS@ */
- extern NCURSES_EXPORT(bool) is_syncok (const WINDOW *); /* @GENERATED_EXT_FUNCS@ */
-+extern NCURSES_EXPORT(int) wgetdelay (const WINDOW *); /* @GENERATED_EXT_FUNCS@ */
- extern NCURSES_EXPORT(int) wgetscrreg (const WINDOW *, int *, int *); /* @GENERATED_EXT_FUNCS@ */
-
- #else
-@@ -929,7 +955,7 @@
- extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(can_change_color) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(cbreak) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(curs_set) (SCREEN*, int); /* implemented:SP_FUNC */
--extern NCURSES_EXPORT(int) NCURSES_SP_NAME(color_content) (SCREEN*, short, short*, short*, short*); /* implemented:SP_FUNC */
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(color_content) (SCREEN*, NCURSES_PAIRS_T, NCURSES_COLOR_T*, NCURSES_COLOR_T*, NCURSES_COLOR_T*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(def_prog_mode) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(def_shell_mode) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(delay_output) (SCREEN*, int); /* implemented:SP_FUNC */
-@@ -945,8 +971,8 @@
- extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(has_colors) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(has_ic) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(has_il) (SCREEN*); /* implemented:SP_FUNC */
--extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_color) (SCREEN*, short, short, short, short); /* implemented:SP_FUNC */
--extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_pair) (SCREEN*, short, short, short); /* implemented:SP_FUNC */
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_color) (SCREEN*, NCURSES_COLOR_T, NCURSES_COLOR_T, NCURSES_COLOR_T, NCURSES_COLOR_T); /* implemented:SP_FUNC */
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(init_pair) (SCREEN*, NCURSES_PAIRS_T, NCURSES_COLOR_T, NCURSES_COLOR_T); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(intrflush) (SCREEN*, WINDOW*, bool); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(bool) NCURSES_SP_NAME(isendwin) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(NCURSES_CONST char *) NCURSES_SP_NAME(keyname) (SCREEN*, int); /* implemented:SP_FUNC */
-@@ -963,7 +989,7 @@
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(nonl) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(void) NCURSES_SP_NAME(noqiflush) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(noraw) (SCREEN*); /* implemented:SP_FUNC */
--extern NCURSES_EXPORT(int) NCURSES_SP_NAME(pair_content) (SCREEN*, short, short*, short*); /* implemented:SP_FUNC */
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(pair_content) (SCREEN*, NCURSES_PAIRS_T, NCURSES_COLOR_T*, NCURSES_COLOR_T*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(void) NCURSES_SP_NAME(qiflush) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(raw) (SCREEN*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(reset_prog_mode) (SCREEN*); /* implemented:SP_FUNC */
-@@ -978,9 +1004,9 @@
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_attron) (SCREEN*, const chtype); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_attrset) (SCREEN*, const chtype); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(attr_t) NCURSES_SP_NAME(slk_attr) (SCREEN*); /* implemented:SP_FUNC */
--extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_attr_set) (SCREEN*, const attr_t, short, void*); /* implemented:SP_FUNC */
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_attr_set) (SCREEN*, const attr_t, NCURSES_PAIRS_T, void*); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_clear) (SCREEN*); /* implemented:SP_FUNC */
--extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_color) (SCREEN*, short); /* implemented:SP_FUNC */
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_color) (SCREEN*, NCURSES_PAIRS_T); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_init) (SCREEN*, int); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(slk_label) (SCREEN*, int); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(slk_noutrefresh) (SCREEN*); /* implemented:SP_FUNC */
-@@ -994,6 +1020,7 @@
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(typeahead) (SCREEN*, int); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(ungetch) (SCREEN*, int); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(void) NCURSES_SP_NAME(use_env) (SCREEN*, bool); /* implemented:SP_FUNC */
-+extern NCURSES_EXPORT(void) NCURSES_SP_NAME(use_tioctl) (SCREEN*, bool); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vidattr) (SCREEN*, chtype); /* implemented:SP_FUNC */
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vidputs) (SCREEN*, chtype, NCURSES_SP_OUTC); /* implemented:SP_FUNC */
- #if @NCURSES_EXT_FUNCS@
-@@ -1022,7 +1049,7 @@
- /* attributes */
-
- #define NCURSES_ATTR_SHIFT 8
--#define NCURSES_BITS(mask,shift) ((mask) << ((shift) + NCURSES_ATTR_SHIFT))
-+#define NCURSES_BITS(mask,shift) (NCURSES_CAST(chtype,(mask)) << ((shift) + NCURSES_ATTR_SHIFT))
-
- #define A_NORMAL (@cf_cv_1UL@ - @cf_cv_1UL@)
- #define A_ATTRIBUTES NCURSES_BITS(~(@cf_cv_1UL@ - @cf_cv_1UL@),0)
-@@ -1044,6 +1071,10 @@
- #define A_TOP NCURSES_BITS(@cf_cv_1UL@,21)
- #define A_VERTICAL NCURSES_BITS(@cf_cv_1UL@,22)
-
-+#if @NCURSES_EXT_FUNCS@
-+#define A_ITALIC NCURSES_BITS(@cf_cv_1UL@,23) /* ncurses extension */
-+#endif
-+
- /*
- * Most of the pseudo functions are macros that either provide compatibility
- * with older versions of curses, or provide inline functionality to improve
-@@ -1084,7 +1115,7 @@
- */
-
- #define wgetstr(w, s) wgetnstr(w, s, -1)
--#define getnstr(s, n) wgetnstr(stdscr, s, n)
-+#define getnstr(s, n) wgetnstr(stdscr, s, (n))
-
- #define setterm(term) setupterm(term, 1, (int *)0)
-
-@@ -1115,9 +1146,9 @@
- #define wattroff(win,at) wattr_off(win, NCURSES_CAST(attr_t, at), NULL)
-
- #if !NCURSES_OPAQUE
--#if defined(NCURSES_WIDECHAR) && @NCURSES_EXT_COLORS@
-+#if NCURSES_WIDECHAR && @NCURSES_EXT_COLORS@
- #define wattrset(win,at) ((win) \
-- ? ((win)->_color = PAIR_NUMBER(at), \
-+ ? ((win)->_color = NCURSES_CAST(int, PAIR_NUMBER(at)), \
- (win)->_attrs = NCURSES_CAST(attr_t, at), \
- OK) \
- : ERR)
-@@ -1137,15 +1168,15 @@
-
- #define box(win, v, h) wborder(win, v, v, h, h, 0, 0, 0, 0)
- #define border(ls, rs, ts, bs, tl, tr, bl, br) wborder(stdscr, ls, rs, ts, bs, tl, tr, bl, br)
--#define hline(ch, n) whline(stdscr, ch, n)
--#define vline(ch, n) wvline(stdscr, ch, n)
-+#define hline(ch, n) whline(stdscr, ch, (n))
-+#define vline(ch, n) wvline(stdscr, ch, (n))
-
- #define winstr(w, s) winnstr(w, s, -1)
- #define winchstr(w, s) winchnstr(w, s, -1)
- #define winsstr(w, s) winsnstr(w, s, -1)
-
- #if !NCURSES_OPAQUE
--#define redrawwin(win) wredrawln(win, 0, (win)->_maxy+1)
-+#define redrawwin(win) wredrawln(win, 0, ((win) ? (win)->_maxy+1 : -1))
- #endif /* NCURSES_OPAQUE */
-
- #define waddstr(win,str) waddnstr(win,str,-1)
-@@ -1154,55 +1185,55 @@
- /*
- * These apply to the first 256 color pairs.
- */
--#define COLOR_PAIR(n) NCURSES_BITS(n, 0)
--#define PAIR_NUMBER(a) (NCURSES_CAST(int,((NCURSES_CAST(unsigned long,a) & A_COLOR) >> NCURSES_ATTR_SHIFT)))
-+#define COLOR_PAIR(n) NCURSES_BITS((n), 0)
-+#define PAIR_NUMBER(a) (NCURSES_CAST(int,((NCURSES_CAST(unsigned long,(a)) & A_COLOR) >> NCURSES_ATTR_SHIFT)))
-
- /*
- * pseudo functions for standard screen
- */
-
--#define addch(ch) waddch(stdscr,ch)
--#define addchnstr(str,n) waddchnstr(stdscr,str,n)
--#define addchstr(str) waddchstr(stdscr,str)
--#define addnstr(str,n) waddnstr(stdscr,str,n)
--#define addstr(str) waddnstr(stdscr,str,-1)
--#define attroff(at) wattroff(stdscr,at)
--#define attron(at) wattron(stdscr,at)
--#define attrset(at) wattrset(stdscr,at)
--#define attr_get(ap,cp,o) wattr_get(stdscr,ap,cp,o)
--#define attr_off(a,o) wattr_off(stdscr,a,o)
--#define attr_on(a,o) wattr_on(stdscr,a,o)
--#define attr_set(a,c,o) wattr_set(stdscr,a,c,o)
--#define bkgd(ch) wbkgd(stdscr,ch)
--#define bkgdset(ch) wbkgdset(stdscr,ch)
--#define chgat(n,a,c,o) wchgat(stdscr,n,a,c,o)
-+#define addch(ch) waddch(stdscr,(ch))
-+#define addchnstr(str,n) waddchnstr(stdscr,(str),(n))
-+#define addchstr(str) waddchstr(stdscr,(str))
-+#define addnstr(str,n) waddnstr(stdscr,(str),(n))
-+#define addstr(str) waddnstr(stdscr,(str),-1)
-+#define attroff(at) wattroff(stdscr,(at))
-+#define attron(at) wattron(stdscr,(at))
-+#define attrset(at) wattrset(stdscr,(at))
-+#define attr_get(ap,cp,o) wattr_get(stdscr,(ap),(cp),(o))
-+#define attr_off(a,o) wattr_off(stdscr,(a),(o))
-+#define attr_on(a,o) wattr_on(stdscr,(a),(o))
-+#define attr_set(a,c,o) wattr_set(stdscr,(a),(c),(o))
-+#define bkgd(ch) wbkgd(stdscr,(ch))
-+#define bkgdset(ch) wbkgdset(stdscr,(ch))
-+#define chgat(n,a,c,o) wchgat(stdscr,(n),(a),(c),(o))
- #define clear() wclear(stdscr)
- #define clrtobot() wclrtobot(stdscr)
- #define clrtoeol() wclrtoeol(stdscr)
--#define color_set(c,o) wcolor_set(stdscr,c,o)
-+#define color_set(c,o) wcolor_set(stdscr,(c),(o))
- #define delch() wdelch(stdscr)
- #define deleteln() winsdelln(stdscr,-1)
--#define echochar(c) wechochar(stdscr,c)
-+#define echochar(c) wechochar(stdscr,(c))
- #define erase() werase(stdscr)
- #define getch() wgetch(stdscr)
--#define getstr(str) wgetstr(stdscr,str)
-+#define getstr(str) wgetstr(stdscr,(str))
- #define inch() winch(stdscr)
--#define inchnstr(s,n) winchnstr(stdscr,s,n)
--#define inchstr(s) winchstr(stdscr,s)
--#define innstr(s,n) winnstr(stdscr,s,n)
--#define insch(c) winsch(stdscr,c)
--#define insdelln(n) winsdelln(stdscr,n)
-+#define inchnstr(s,n) winchnstr(stdscr,(s),(n))
-+#define inchstr(s) winchstr(stdscr,(s))
-+#define innstr(s,n) winnstr(stdscr,(s),(n))
-+#define insch(c) winsch(stdscr,(c))
-+#define insdelln(n) winsdelln(stdscr,(n))
- #define insertln() winsdelln(stdscr,1)
--#define insnstr(s,n) winsnstr(stdscr,s,n)
--#define insstr(s) winsstr(stdscr,s)
--#define instr(s) winstr(stdscr,s)
--#define move(y,x) wmove(stdscr,y,x)
-+#define insnstr(s,n) winsnstr(stdscr,(s),(n))
-+#define insstr(s) winsstr(stdscr,(s))
-+#define instr(s) winstr(stdscr,(s))
-+#define move(y,x) wmove(stdscr,(y),(x))
- #define refresh() wrefresh(stdscr)
--#define scrl(n) wscrl(stdscr,n)
--#define setscrreg(t,b) wsetscrreg(stdscr,t,b)
-+#define scrl(n) wscrl(stdscr,(n))
-+#define setscrreg(t,b) wsetscrreg(stdscr,(t),(b))
- #define standend() wstandend(stdscr)
- #define standout() wstandout(stdscr)
--#define timeout(delay) wtimeout(stdscr,delay)
-+#define timeout(delay) wtimeout(stdscr,(delay))
- #define wdeleteln(win) winsdelln(win,-1)
- #define winsertln(win) winsdelln(win,1)
-
-@@ -1210,70 +1241,75 @@
- * mv functions
- */
-
--#define mvwaddch(win,y,x,ch) (wmove(win,y,x) == ERR ? ERR : waddch(win,ch))
--#define mvwaddchnstr(win,y,x,str,n) (wmove(win,y,x) == ERR ? ERR : waddchnstr(win,str,n))
--#define mvwaddchstr(win,y,x,str) (wmove(win,y,x) == ERR ? ERR : waddchnstr(win,str,-1))
--#define mvwaddnstr(win,y,x,str,n) (wmove(win,y,x) == ERR ? ERR : waddnstr(win,str,n))
--#define mvwaddstr(win,y,x,str) (wmove(win,y,x) == ERR ? ERR : waddnstr(win,str,-1))
--#define mvwdelch(win,y,x) (wmove(win,y,x) == ERR ? ERR : wdelch(win))
--#define mvwchgat(win,y,x,n,a,c,o) (wmove(win,y,x) == ERR ? ERR : wchgat(win,n,a,c,o))
--#define mvwgetch(win,y,x) (wmove(win,y,x) == ERR ? ERR : wgetch(win))
--#define mvwgetnstr(win,y,x,str,n) (wmove(win,y,x) == ERR ? ERR : wgetnstr(win,str,n))
--#define mvwgetstr(win,y,x,str) (wmove(win,y,x) == ERR ? ERR : wgetstr(win,str))
--#define mvwhline(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : whline(win,c,n))
--#define mvwinch(win,y,x) (wmove(win,y,x) == ERR ? NCURSES_CAST(chtype, ERR) : winch(win))
--#define mvwinchnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : winchnstr(win,s,n))
--#define mvwinchstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : winchstr(win,s))
--#define mvwinnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : winnstr(win,s,n))
--#define mvwinsch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : winsch(win,c))
--#define mvwinsnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : winsnstr(win,s,n))
--#define mvwinsstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : winsstr(win,s))
--#define mvwinstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : winstr(win,s))
--#define mvwvline(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : wvline(win,c,n))
--
--#define mvaddch(y,x,ch) mvwaddch(stdscr,y,x,ch)
--#define mvaddchnstr(y,x,str,n) mvwaddchnstr(stdscr,y,x,str,n)
--#define mvaddchstr(y,x,str) mvwaddchstr(stdscr,y,x,str)
--#define mvaddnstr(y,x,str,n) mvwaddnstr(stdscr,y,x,str,n)
--#define mvaddstr(y,x,str) mvwaddstr(stdscr,y,x,str)
--#define mvchgat(y,x,n,a,c,o) mvwchgat(stdscr,y,x,n,a,c,o)
--#define mvdelch(y,x) mvwdelch(stdscr,y,x)
--#define mvgetch(y,x) mvwgetch(stdscr,y,x)
--#define mvgetnstr(y,x,str,n) mvwgetnstr(stdscr,y,x,str,n)
--#define mvgetstr(y,x,str) mvwgetstr(stdscr,y,x,str)
--#define mvhline(y,x,c,n) mvwhline(stdscr,y,x,c,n)
--#define mvinch(y,x) mvwinch(stdscr,y,x)
--#define mvinchnstr(y,x,s,n) mvwinchnstr(stdscr,y,x,s,n)
--#define mvinchstr(y,x,s) mvwinchstr(stdscr,y,x,s)
--#define mvinnstr(y,x,s,n) mvwinnstr(stdscr,y,x,s,n)
--#define mvinsch(y,x,c) mvwinsch(stdscr,y,x,c)
--#define mvinsnstr(y,x,s,n) mvwinsnstr(stdscr,y,x,s,n)
--#define mvinsstr(y,x,s) mvwinsstr(stdscr,y,x,s)
--#define mvinstr(y,x,s) mvwinstr(stdscr,y,x,s)
--#define mvvline(y,x,c,n) mvwvline(stdscr,y,x,c,n)
-+#define mvwaddch(win,y,x,ch) (wmove((win),(y),(x)) == ERR ? ERR : waddch((win),(ch)))
-+#define mvwaddchnstr(win,y,x,str,n) (wmove((win),(y),(x)) == ERR ? ERR : waddchnstr((win),(str),(n)))
-+#define mvwaddchstr(win,y,x,str) (wmove((win),(y),(x)) == ERR ? ERR : waddchnstr((win),(str),-1))
-+#define mvwaddnstr(win,y,x,str,n) (wmove((win),(y),(x)) == ERR ? ERR : waddnstr((win),(str),(n)))
-+#define mvwaddstr(win,y,x,str) (wmove((win),(y),(x)) == ERR ? ERR : waddnstr((win),(str),-1))
-+#define mvwdelch(win,y,x) (wmove((win),(y),(x)) == ERR ? ERR : wdelch(win))
-+#define mvwchgat(win,y,x,n,a,c,o) (wmove((win),(y),(x)) == ERR ? ERR : wchgat((win),(n),(a),(c),(o)))
-+#define mvwgetch(win,y,x) (wmove((win),(y),(x)) == ERR ? ERR : wgetch(win))
-+#define mvwgetnstr(win,y,x,str,n) (wmove((win),(y),(x)) == ERR ? ERR : wgetnstr((win),(str),(n)))
-+#define mvwgetstr(win,y,x,str) (wmove((win),(y),(x)) == ERR ? ERR : wgetstr((win),(str)))
-+#define mvwhline(win,y,x,c,n) (wmove((win),(y),(x)) == ERR ? ERR : whline((win),(c),(n)))
-+#define mvwinch(win,y,x) (wmove((win),(y),(x)) == ERR ? NCURSES_CAST(chtype, ERR) : winch(win))
-+#define mvwinchnstr(win,y,x,s,n) (wmove((win),(y),(x)) == ERR ? ERR : winchnstr((win),(s),(n)))
-+#define mvwinchstr(win,y,x,s) (wmove((win),(y),(x)) == ERR ? ERR : winchstr((win),(s)))
-+#define mvwinnstr(win,y,x,s,n) (wmove((win),(y),(x)) == ERR ? ERR : winnstr((win),(s),(n)))
-+#define mvwinsch(win,y,x,c) (wmove((win),(y),(x)) == ERR ? ERR : winsch((win),(c)))
-+#define mvwinsnstr(win,y,x,s,n) (wmove((win),(y),(x)) == ERR ? ERR : winsnstr((win),(s),(n)))
-+#define mvwinsstr(win,y,x,s) (wmove((win),(y),(x)) == ERR ? ERR : winsstr((win),(s)))
-+#define mvwinstr(win,y,x,s) (wmove((win),(y),(x)) == ERR ? ERR : winstr((win),(s)))
-+#define mvwvline(win,y,x,c,n) (wmove((win),(y),(x)) == ERR ? ERR : wvline((win),(c),(n)))
-+
-+#define mvaddch(y,x,ch) mvwaddch(stdscr,(y),(x),(ch))
-+#define mvaddchnstr(y,x,str,n) mvwaddchnstr(stdscr,(y),(x),(str),(n))
-+#define mvaddchstr(y,x,str) mvwaddchstr(stdscr,(y),(x),(str))
-+#define mvaddnstr(y,x,str,n) mvwaddnstr(stdscr,(y),(x),(str),(n))
-+#define mvaddstr(y,x,str) mvwaddstr(stdscr,(y),(x),(str))
-+#define mvchgat(y,x,n,a,c,o) mvwchgat(stdscr,(y),(x),(n),(a),(c),(o))
-+#define mvdelch(y,x) mvwdelch(stdscr,(y),(x))
-+#define mvgetch(y,x) mvwgetch(stdscr,(y),(x))
-+#define mvgetnstr(y,x,str,n) mvwgetnstr(stdscr,(y),(x),(str),(n))
-+#define mvgetstr(y,x,str) mvwgetstr(stdscr,(y),(x),(str))
-+#define mvhline(y,x,c,n) mvwhline(stdscr,(y),(x),(c),(n))
-+#define mvinch(y,x) mvwinch(stdscr,(y),(x))
-+#define mvinchnstr(y,x,s,n) mvwinchnstr(stdscr,(y),(x),(s),(n))
-+#define mvinchstr(y,x,s) mvwinchstr(stdscr,(y),(x),(s))
-+#define mvinnstr(y,x,s,n) mvwinnstr(stdscr,(y),(x),(s),(n))
-+#define mvinsch(y,x,c) mvwinsch(stdscr,(y),(x),(c))
-+#define mvinsnstr(y,x,s,n) mvwinsnstr(stdscr,(y),(x),(s),(n))
-+#define mvinsstr(y,x,s) mvwinsstr(stdscr,(y),(x),(s))
-+#define mvinstr(y,x,s) mvwinstr(stdscr,(y),(x),(s))
-+#define mvvline(y,x,c,n) mvwvline(stdscr,(y),(x),(c),(n))
-
- /*
- * Some wide-character functions can be implemented without the extensions.
- */
- #if !NCURSES_OPAQUE
--#define getbkgd(win) ((win)->_bkgd)
-+#define getbkgd(win) ((win) ? ((win)->_bkgd) : 0)
- #endif /* NCURSES_OPAQUE */
-
- #define slk_attr_off(a,v) ((v) ? ERR : slk_attroff(a))
- #define slk_attr_on(a,v) ((v) ? ERR : slk_attron(a))
-
- #if !NCURSES_OPAQUE
--#if defined(NCURSES_WIDECHAR) && @NCURSES_EXT_COLORS@
--#define wattr_set(win,a,p,opts) ((win)->_attrs = ((a) & ~A_COLOR), \
-- (win)->_color = (p), \
-+#if NCURSES_WIDECHAR && @NCURSES_EXT_COLORS@
-+#define wattr_set(win,a,p,opts) (((win) \
-+ ? ((win)->_attrs = ((a) & ~A_COLOR), \
-+ (win)->_color = (p)) \
-+ : OK), \
- OK)
--#define wattr_get(win,a,p,opts) ((void)((a) != (void *)0 && (*(a) = (win)->_attrs)), \
-- (void)((p) != (void *)0 && (*(p) = (short)(win)->_color)), \
-+#define wattr_get(win,a,p,opts) ((void)(((a) != (void *)0) ? (*(a) = (win) ? (win)->_attrs : 0) : OK), \
-+ (void)(((p) != (void *)0) ? (*(p) = (NCURSES_PAIRS_T) ((win) ? (win)->_color : 0)) : OK), \
- OK)
- #else
--#define wattr_set(win,a,p,opts) ((win)->_attrs = (((a) & ~A_COLOR) | (attr_t)COLOR_PAIR(p)), OK)
--#define wattr_get(win,a,p,opts) ((void)((a) != (void *)0 && (*(a) = (win)->_attrs)), \
-- (void)((p) != (void *)0 && (*(p) = (short)PAIR_NUMBER((win)->_attrs))), \
-+#define wattr_set(win,a,p,opts) (((win) \
-+ ? ((win)->_attrs = (((a) & ~A_COLOR) | (attr_t)COLOR_PAIR(p))) \
-+ : OK), \
-+ OK)
-+#define wattr_get(win,a,p,opts) ((void)(((a) != (void *)0) ? (*(a) = (win) ? (win)->_attrs : 0) : OK), \
-+ (void)(((p) != (void *)0) ? (*(p) = (NCURSES_PAIRS_T) ((win) ? PAIR_NUMBER((win)->_attrs) : 0)) : OK), \
- OK)
- #endif
- #endif /* NCURSES_OPAQUE */
-@@ -1312,6 +1348,7 @@
- #define is_scrollok(win) ((win) ? (win)->_scroll : FALSE)
- #define is_subwin(win) ((win) ? ((win)->_flags & _SUBWIN) != 0 : FALSE)
- #define is_syncok(win) ((win) ? (win)->_sync : FALSE)
-+#define wgetdelay(win) ((win) ? (win)->_delay : 0)
- #define wgetparent(win) ((win) ? (win)->_parent : 0)
- #define wgetscrreg(win,t,b) ((win) ? (*(t) = (win)->_regtop, *(b) = (win)->_regbottom, OK) : ERR)
- #endif
-Index: include/curses.tail
-Prereq: 1.20
---- ncurses-5.9/include/curses.tail 2010-03-28 19:10:55.000000000 +0000
-+++ ncurses-5.9-20141206/include/curses.tail 2011-10-29 20:03:22.000000000 +0000
-@@ -1,4 +1,4 @@
--/* $Id: curses.tail,v 1.20 2010/03/28 19:10:55 tom Exp $ */
-+/* $Id: curses.tail,v 1.21 2011/10/29 20:03:22 tom Exp $ */
- /*
- * vile:cmode:
- * This file is part of ncurses, designed to be appended after curses.h.in
-@@ -133,7 +133,7 @@
- extern NCURSES_EXPORT(char *) _tracechar (int);
- extern NCURSES_EXPORT(char *) _tracechtype (chtype);
- extern NCURSES_EXPORT(char *) _tracechtype2 (int, chtype);
--#ifdef NCURSES_WIDECHAR
-+#if NCURSES_WIDECHAR
- #define _tracech_t _tracecchar_t
- extern NCURSES_EXPORT(char *) _tracecchar_t (const cchar_t *);
- #define _tracech_t2 _tracecchar_t2
-Index: include/curses.wide
-Prereq: 1.42
---- ncurses-5.9/include/curses.wide 2010-03-30 00:39:41.000000000 +0000
-+++ ncurses-5.9-20141206/include/curses.wide 2014-02-01 22:00:32.000000000 +0000
-@@ -1,4 +1,4 @@
--/* $Id: curses.wide,v 1.42 2010/03/30 00:39:41 tom Exp $ */
-+/* $Id: curses.wide,v 1.46 2014/02/01 22:00:32 tom Exp $ */
- /*
- * vile:cmode:
- * This file is part of ncurses, designed to be appended after curses.h.in
-@@ -6,11 +6,11 @@
- */
- #define _XOPEN_CURSES 1
-
--#ifdef NCURSES_WIDECHAR
-+#if NCURSES_WIDECHAR
-
- extern NCURSES_EXPORT_VAR(cchar_t *) _nc_wacs;
-
--#define NCURSES_WACS(c) (&_nc_wacs[(unsigned char)c])
-+#define NCURSES_WACS(c) (&_nc_wacs[NCURSES_CAST(unsigned char,(c))])
-
- #define WACS_BSSB NCURSES_WACS('l')
- #define WACS_SSBB NCURSES_WACS('m')
-@@ -135,7 +135,7 @@
- extern NCURSES_EXPORT(int) get_wch (wint_t *); /* generated:WIDEC */
- extern NCURSES_EXPORT(int) get_wstr (wint_t *); /* generated:WIDEC */
- extern NCURSES_EXPORT(int) getbkgrnd (cchar_t *); /* generated:WIDEC */
--extern NCURSES_EXPORT(int) getcchar (const cchar_t *, wchar_t*, attr_t*, short*, void*); /* implemented */
-+extern NCURSES_EXPORT(int) getcchar (const cchar_t *, wchar_t*, attr_t*, NCURSES_PAIRS_T*, void*); /* implemented */
- extern NCURSES_EXPORT(int) getn_wstr (wint_t *, int); /* generated:WIDEC */
- extern NCURSES_EXPORT(int) hline_set (const cchar_t *, int); /* generated:WIDEC */
- extern NCURSES_EXPORT(int) in_wch (cchar_t *); /* generated:WIDEC */
-@@ -185,12 +185,12 @@
- extern NCURSES_EXPORT(int) mvwinwstr (WINDOW *, int, int, wchar_t *); /* generated:WIDEC */
- extern NCURSES_EXPORT(int) mvwvline_set (WINDOW *, int,int, const cchar_t *,int); /* generated:WIDEC */
- extern NCURSES_EXPORT(int) pecho_wchar (WINDOW *, const cchar_t *); /* implemented */
--extern NCURSES_EXPORT(int) setcchar (cchar_t *, const wchar_t *, const attr_t, short, const void *); /* implemented */
-+extern NCURSES_EXPORT(int) setcchar (cchar_t *, const wchar_t *, const attr_t, NCURSES_PAIRS_T, const void *); /* implemented */
- extern NCURSES_EXPORT(int) slk_wset (int, const wchar_t *, int); /* implemented */
- extern NCURSES_EXPORT(attr_t) term_attrs (void); /* implemented */
- extern NCURSES_EXPORT(int) unget_wch (const wchar_t); /* implemented */
--extern NCURSES_EXPORT(int) vid_attr (attr_t, short, void *); /* implemented */
--extern NCURSES_EXPORT(int) vid_puts (attr_t, short, void *, NCURSES_OUTC); /* implemented */
-+extern NCURSES_EXPORT(int) vid_attr (attr_t, NCURSES_PAIRS_T, void *); /* implemented */
-+extern NCURSES_EXPORT(int) vid_puts (attr_t, NCURSES_PAIRS_T, void *, NCURSES_OUTC); /* implemented */
- extern NCURSES_EXPORT(int) vline_set (const cchar_t *, int); /* generated:WIDEC */
- extern NCURSES_EXPORT(int) wadd_wch (WINDOW *,const cchar_t *); /* implemented */
- extern NCURSES_EXPORT(int) wadd_wchnstr (WINDOW *,const cchar_t *,int); /* implemented */
-@@ -221,8 +221,8 @@
- extern NCURSES_EXPORT(attr_t) NCURSES_SP_NAME(term_attrs) (SCREEN*); /* 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, short, void *); /* implemented:SP_FUNC */
--extern NCURSES_EXPORT(int) NCURSES_SP_NAME(vid_puts) (SCREEN*, attr_t, short, void *, NCURSES_SP_OUTC); /* 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 */
- #endif
-
- #ifndef NCURSES_NOMACROS
-@@ -230,77 +230,77 @@
- /*
- * XSI curses macros for XPG4 conformance.
- */
--#define add_wch(c) wadd_wch(stdscr,c)
--#define add_wchnstr(str,n) wadd_wchnstr(stdscr,str,n)
--#define add_wchstr(str) wadd_wchstr(stdscr,str)
--#define addnwstr(wstr,n) waddnwstr(stdscr,wstr,n)
--#define addwstr(wstr) waddwstr(stdscr,wstr)
--#define bkgrnd(c) wbkgrnd(stdscr,c)
--#define bkgrndset(c) wbkgrndset(stdscr,c)
--#define border_set(l,r,t,b,tl,tr,bl,br) wborder_set(stdscr,l,r,t,b,tl,tr,bl,br)
--#define box_set(w,v,h) wborder_set(w,v,v,h,h,0,0,0,0)
--#define echo_wchar(c) wecho_wchar(stdscr,c)
--#define get_wch(c) wget_wch(stdscr,c)
--#define get_wstr(t) wget_wstr(stdscr,t)
--#define getbkgrnd(wch) wgetbkgrnd(stdscr,wch)
--#define getn_wstr(t,n) wgetn_wstr(stdscr,t,n)
--#define hline_set(c,n) whline_set(stdscr,c,n)
--#define in_wch(c) win_wch(stdscr,c)
--#define in_wchnstr(c,n) win_wchnstr(stdscr,c,n)
--#define in_wchstr(c) win_wchstr(stdscr,c)
--#define innwstr(c,n) winnwstr(stdscr,c,n)
--#define ins_nwstr(t,n) wins_nwstr(stdscr,t,n)
--#define ins_wch(c) wins_wch(stdscr,c)
--#define ins_wstr(t) wins_wstr(stdscr,t)
--#define inwstr(c) winwstr(stdscr,c)
--#define vline_set(c,n) wvline_set(stdscr,c,n)
--#define wadd_wchstr(win,str) wadd_wchnstr(win,str,-1)
--#define waddwstr(win,wstr) waddnwstr(win,wstr,-1)
--#define wget_wstr(w,t) wgetn_wstr(w,t,-1)
--#define win_wchstr(w,c) win_wchnstr(w,c,-1)
--#define wins_wstr(w,t) wins_nwstr(w,t,-1)
-+#define add_wch(c) wadd_wch(stdscr,(c))
-+#define add_wchnstr(str,n) wadd_wchnstr(stdscr,(str),(n))
-+#define add_wchstr(str) wadd_wchstr(stdscr,(str))
-+#define addnwstr(wstr,n) waddnwstr(stdscr,(wstr),(n))
-+#define addwstr(wstr) waddwstr(stdscr,(wstr))
-+#define bkgrnd(c) wbkgrnd(stdscr,(c))
-+#define bkgrndset(c) wbkgrndset(stdscr,(c))
-+#define border_set(l,r,t,b,tl,tr,bl,br) wborder_set(stdscr,(l),(r),(t),(b),tl,tr,bl,br)
-+#define box_set(w,v,h) wborder_set((w),(v),(v),(h),(h),0,0,0,0)
-+#define echo_wchar(c) wecho_wchar(stdscr,(c))
-+#define get_wch(c) wget_wch(stdscr,(c))
-+#define get_wstr(t) wget_wstr(stdscr,(t))
-+#define getbkgrnd(wch) wgetbkgrnd(stdscr,(wch))
-+#define getn_wstr(t,n) wgetn_wstr(stdscr,(t),(n))
-+#define hline_set(c,n) whline_set(stdscr,(c),(n))
-+#define in_wch(c) win_wch(stdscr,(c))
-+#define in_wchnstr(c,n) win_wchnstr(stdscr,(c),(n))
-+#define in_wchstr(c) win_wchstr(stdscr,(c))
-+#define innwstr(c,n) winnwstr(stdscr,(c),(n))
-+#define ins_nwstr(t,n) wins_nwstr(stdscr,(t),(n))
-+#define ins_wch(c) wins_wch(stdscr,(c))
-+#define ins_wstr(t) wins_wstr(stdscr,(t))
-+#define inwstr(c) winwstr(stdscr,(c))
-+#define vline_set(c,n) wvline_set(stdscr,(c),(n))
-+#define wadd_wchstr(win,str) wadd_wchnstr((win),(str),-1)
-+#define waddwstr(win,wstr) waddnwstr((win),(wstr),-1)
-+#define wget_wstr(w,t) wgetn_wstr((w),(t),-1)
-+#define win_wchstr(w,c) win_wchnstr((w),(c),-1)
-+#define wins_wstr(w,t) wins_nwstr((w),(t),-1)
-
- #if !NCURSES_OPAQUE
--#define wgetbkgrnd(win,wch) (*wch = win->_bkgrnd, OK)
-+#define wgetbkgrnd(win,wch) ((win) ? (*(wch) = (win)->_bkgrnd) : *(wch), OK)
- #endif
-
--#define mvadd_wch(y,x,c) mvwadd_wch(stdscr,y,x,c)
--#define mvadd_wchnstr(y,x,s,n) mvwadd_wchnstr(stdscr,y,x,s,n)
--#define mvadd_wchstr(y,x,s) mvwadd_wchstr(stdscr,y,x,s)
--#define mvaddnwstr(y,x,wstr,n) mvwaddnwstr(stdscr,y,x,wstr,n)
--#define mvaddwstr(y,x,wstr) mvwaddwstr(stdscr,y,x,wstr)
--#define mvget_wch(y,x,c) mvwget_wch(stdscr,y,x,c)
--#define mvget_wstr(y,x,t) mvwget_wstr(stdscr,y,x,t)
--#define mvgetn_wstr(y,x,t,n) mvwgetn_wstr(stdscr,y,x,t,n)
--#define mvhline_set(y,x,c,n) mvwhline_set(stdscr,y,x,c,n)
--#define mvin_wch(y,x,c) mvwin_wch(stdscr,y,x,c)
--#define mvin_wchnstr(y,x,c,n) mvwin_wchnstr(stdscr,y,x,c,n)
--#define mvin_wchstr(y,x,c) mvwin_wchstr(stdscr,y,x,c)
--#define mvinnwstr(y,x,c,n) mvwinnwstr(stdscr,y,x,c,n)
--#define mvins_nwstr(y,x,t,n) mvwins_nwstr(stdscr,y,x,t,n)
--#define mvins_wch(y,x,c) mvwins_wch(stdscr,y,x,c)
--#define mvins_wstr(y,x,t) mvwins_wstr(stdscr,y,x,t)
--#define mvinwstr(y,x,c) mvwinwstr(stdscr,y,x,c)
--#define mvvline_set(y,x,c,n) mvwvline_set(stdscr,y,x,c,n)
--
--#define mvwadd_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : wadd_wch(win,c))
--#define mvwadd_wchnstr(win,y,x,s,n) (wmove(win,y,x) == ERR ? ERR : wadd_wchnstr(win,s,n))
--#define mvwadd_wchstr(win,y,x,s) (wmove(win,y,x) == ERR ? ERR : wadd_wchstr(win,s))
--#define mvwaddnwstr(win,y,x,wstr,n) (wmove(win,y,x) == ERR ? ERR : waddnwstr(win,wstr,n))
--#define mvwaddwstr(win,y,x,wstr) (wmove(win,y,x) == ERR ? ERR : waddwstr(win,wstr))
--#define mvwget_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : wget_wch(win,c))
--#define mvwget_wstr(win,y,x,t) (wmove(win,y,x) == ERR ? ERR : wget_wstr(win,t))
--#define mvwgetn_wstr(win,y,x,t,n) (wmove(win,y,x) == ERR ? ERR : wgetn_wstr(win,t,n))
--#define mvwhline_set(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : whline_set(win,c,n))
--#define mvwin_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : win_wch(win,c))
--#define mvwin_wchnstr(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : win_wchnstr(win,c,n))
--#define mvwin_wchstr(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : win_wchstr(win,c))
--#define mvwinnwstr(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : winnwstr(win,c,n))
--#define mvwins_nwstr(win,y,x,t,n) (wmove(win,y,x) == ERR ? ERR : wins_nwstr(win,t,n))
--#define mvwins_wch(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : wins_wch(win,c))
--#define mvwins_wstr(win,y,x,t) (wmove(win,y,x) == ERR ? ERR : wins_wstr(win,t))
--#define mvwinwstr(win,y,x,c) (wmove(win,y,x) == ERR ? ERR : winwstr(win,c))
--#define mvwvline_set(win,y,x,c,n) (wmove(win,y,x) == ERR ? ERR : wvline_set(win,c,n))
-+#define mvadd_wch(y,x,c) mvwadd_wch(stdscr,(y),(x),(c))
-+#define mvadd_wchnstr(y,x,s,n) mvwadd_wchnstr(stdscr,(y),(x),(s),(n))
-+#define mvadd_wchstr(y,x,s) mvwadd_wchstr(stdscr,(y),(x),(s))
-+#define mvaddnwstr(y,x,wstr,n) mvwaddnwstr(stdscr,(y),(x),(wstr),(n))
-+#define mvaddwstr(y,x,wstr) mvwaddwstr(stdscr,(y),(x),(wstr))
-+#define mvget_wch(y,x,c) mvwget_wch(stdscr,(y),(x),(c))
-+#define mvget_wstr(y,x,t) mvwget_wstr(stdscr,(y),(x),(t))
-+#define mvgetn_wstr(y,x,t,n) mvwgetn_wstr(stdscr,(y),(x),(t),(n))
-+#define mvhline_set(y,x,c,n) mvwhline_set(stdscr,(y),(x),(c),(n))
-+#define mvin_wch(y,x,c) mvwin_wch(stdscr,(y),(x),(c))
-+#define mvin_wchnstr(y,x,c,n) mvwin_wchnstr(stdscr,(y),(x),(c),(n))
-+#define mvin_wchstr(y,x,c) mvwin_wchstr(stdscr,(y),(x),(c))
-+#define mvinnwstr(y,x,c,n) mvwinnwstr(stdscr,(y),(x),(c),(n))
-+#define mvins_nwstr(y,x,t,n) mvwins_nwstr(stdscr,(y),(x),(t),(n))
-+#define mvins_wch(y,x,c) mvwins_wch(stdscr,(y),(x),(c))
-+#define mvins_wstr(y,x,t) mvwins_wstr(stdscr,(y),(x),(t))
-+#define mvinwstr(y,x,c) mvwinwstr(stdscr,(y),(x),(c))
-+#define mvvline_set(y,x,c,n) mvwvline_set(stdscr,(y),(x),(c),(n))
-+
-+#define mvwadd_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : wadd_wch((win),(c)))
-+#define mvwadd_wchnstr(win,y,x,s,n) (wmove(win,(y),(x)) == ERR ? ERR : wadd_wchnstr((win),(s),(n)))
-+#define mvwadd_wchstr(win,y,x,s) (wmove(win,(y),(x)) == ERR ? ERR : wadd_wchstr((win),(s)))
-+#define mvwaddnwstr(win,y,x,wstr,n) (wmove(win,(y),(x)) == ERR ? ERR : waddnwstr((win),(wstr),(n)))
-+#define mvwaddwstr(win,y,x,wstr) (wmove(win,(y),(x)) == ERR ? ERR : waddwstr((win),(wstr)))
-+#define mvwget_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : wget_wch((win),(c)))
-+#define mvwget_wstr(win,y,x,t) (wmove(win,(y),(x)) == ERR ? ERR : wget_wstr((win),(t)))
-+#define mvwgetn_wstr(win,y,x,t,n) (wmove(win,(y),(x)) == ERR ? ERR : wgetn_wstr((win),(t),(n)))
-+#define mvwhline_set(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : whline_set((win),(c),(n)))
-+#define mvwin_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : win_wch((win),(c)))
-+#define mvwin_wchnstr(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : win_wchnstr((win),(c),(n)))
-+#define mvwin_wchstr(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : win_wchstr((win),(c)))
-+#define mvwinnwstr(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : winnwstr((win),(c),(n)))
-+#define mvwins_nwstr(win,y,x,t,n) (wmove(win,(y),(x)) == ERR ? ERR : wins_nwstr((win),(t),(n)))
-+#define mvwins_wch(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : wins_wch((win),(c)))
-+#define mvwins_wstr(win,y,x,t) (wmove(win,(y),(x)) == ERR ? ERR : wins_wstr((win),(t)))
-+#define mvwinwstr(win,y,x,c) (wmove(win,(y),(x)) == ERR ? ERR : winwstr((win),(c)))
-+#define mvwvline_set(win,y,x,c,n) (wmove(win,(y),(x)) == ERR ? ERR : wvline_set((win),(c),(n)))
-
- #endif /* NCURSES_NOMACROS */
-
-Index: include/hashed_db.h
-Prereq: 1.5
---- ncurses-5.9/include/hashed_db.h 2006-08-19 15:58:34.000000000 +0000
-+++ ncurses-5.9-20141206/include/hashed_db.h 2014-04-12 22:41:10.000000000 +0000
-@@ -31,7 +31,7 @@
- ****************************************************************************/
-
- /*
-- * $Id: hashed_db.h,v 1.5 2006/08/19 15:58:34 tom Exp $
-+ * $Id: hashed_db.h,v 1.6 2014/04/12 22:41:10 tom Exp $
- */
-
- #ifndef HASHED_DB_H
-@@ -41,6 +41,8 @@
-
- #if USE_HASHED_DB
-
-+#define DB_DBM_HSEARCH 0 /* quiet gcc -Wundef with db6 */
-+
- #include <db.h>
-
- #ifndef DBN_SUFFIX
-Index: include/headers
-Prereq: 1.10
---- ncurses-5.9/include/headers 2009-09-05 17:46:30.000000000 +0000
-+++ ncurses-5.9-20141206/include/headers 2013-10-20 00:32:21.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: headers,v 1.10 2009/09/05 17:46:30 tom Exp $
-+# $Id: headers,v 1.13 2013/10/20 00:32:21 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2012,2013 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"), #
-@@ -29,14 +29,24 @@
- #
- # Author: Thomas E. Dickey 1996-on
- #
--term.h
- curses.h
- unctrl.h
--termcap.h
- ncurses_dll.h
-+
-+# Support for termcap (and tic, etc.), which can be a separate library
-+@ termlib
-+term.h
-+termcap.h
-+
-+# Headers used only for tic, other programs using internal interfaces
- @ ticlib
- $(srcdir)/tic.h
- $(srcdir)/term_entry.h
- $(srcdir)/nc_tparm.h
-
-+# Porting
-+@ port_win32con
-+$(srcdir)/ncurses_mingw.h
-+$(srcdir)/nc_mingw.h
-+
- # vile:makemode
-Index: include/nc_alloc.h
-Prereq: 1.18
---- ncurses-5.9/include/nc_alloc.h 2010-11-20 22:59:49.000000000 +0000
-+++ ncurses-5.9-20141206/include/nc_alloc.h 2013-01-26 21:56:51.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -29,10 +29,11 @@
- /****************************************************************************
- * Author: Thomas E. Dickey 1996-on *
- ****************************************************************************/
--/* $Id: nc_alloc.h,v 1.18 2010/11/20 22:59:49 tom Exp $ */
-+/* $Id: nc_alloc.h,v 1.22 2013/01/26 21:56:51 tom Exp $ */
-
- #ifndef NC_ALLOC_included
- #define NC_ALLOC_included 1
-+/* *INDENT-OFF* */
-
- #ifdef __cplusplus
- extern "C" {
-@@ -94,6 +95,7 @@
- /* doalloc.c */
- extern NCURSES_EXPORT(void *) _nc_doalloc(void *, size_t);
- #if !HAVE_STRDUP
-+#undef strdup
- #define strdup _nc_strdup
- extern NCURSES_EXPORT(char *) _nc_strdup(const char *);
- #endif
-@@ -101,12 +103,14 @@
- /* entries.c */
- extern NCURSES_EXPORT(void) _nc_leaks_tinfo(void);
-
--#define typeMalloc(type,elts) (type *)malloc((elts)*sizeof(type))
--#define typeCalloc(type,elts) (type *)calloc((elts),sizeof(type))
--#define typeRealloc(type,elts,ptr) (type *)_nc_doalloc(ptr, (elts)*sizeof(type))
-+#define typeMalloc(type,elts) (type *)malloc((size_t)(elts)*sizeof(type))
-+#define typeCalloc(type,elts) (type *)calloc((size_t)(elts),sizeof(type))
-+#define typeRealloc(type,elts,ptr) (type *)_nc_doalloc(ptr, (size_t)(elts)*sizeof(type))
-
- #ifdef __cplusplus
- }
- #endif
-
-+/* *INDENT-ON* */
-+
- #endif /* NC_ALLOC_included */
-Index: include/nc_string.h
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/include/nc_string.h 2013-12-15 01:09:19.000000000 +0000
-@@ -0,0 +1,77 @@
-+/****************************************************************************
-+ * Copyright (c) 2012,2013 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 E. Dickey 2012 *
-+ ****************************************************************************/
-+
-+#ifndef STRING_HACKS_H
-+#define STRING_HACKS_H 1
-+
-+#include <ncurses_cfg.h>
-+
-+/*
-+ * $Id: nc_string.h,v 1.4 2013/12/15 01:09:19 tom Exp $
-+ *
-+ * String-hacks. Use these macros to stifle warnings on (presumably) correct
-+ * uses of strcat, strcpy and sprintf.
-+ *
-+ * By the way -
-+ * A fundamental limitation of the interfaces (and frequent issue in bug
-+ * reports using these functions) is that sizes are passed as unsigned values
-+ * (with associated sign-extension problems), limiting their effectiveness
-+ * when checking for buffer overflow.
-+ */
-+
-+#ifdef __cplusplus
-+#define NCURSES_VOID /* nothing */
-+#else
-+#define NCURSES_VOID (void)
-+#endif
-+
-+#if USE_STRING_HACKS && HAVE_STRLCAT
-+#define _nc_STRCAT(d,s,n) NCURSES_VOID strlcat((d),(s),NCURSES_CAST(size_t,n))
-+#else
-+#define _nc_STRCAT(d,s,n) NCURSES_VOID strcat((d),(s))
-+#endif
-+
-+#if USE_STRING_HACKS && HAVE_STRLCPY
-+#define _nc_STRCPY(d,s,n) NCURSES_VOID strlcpy((d),(s),NCURSES_CAST(size_t,n))
-+#else
-+#define _nc_STRCPY(d,s,n) NCURSES_VOID strcpy((d),(s))
-+#endif
-+
-+#if USE_STRING_HACKS && HAVE_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_SLIMIT(n) /* nothing */
-+#endif
-+
-+#endif /* STRING_HACKS_H */
-Index: include/nc_termios.h
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/include/nc_termios.h 2014-05-03 19:40:10.000000000 +0000
-@@ -0,0 +1,161 @@
-+/****************************************************************************
-+ * Copyright (c) 2011,2014 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 E. Dickey 2011 *
-+ ****************************************************************************/
-+
-+/* $Id: nc_termios.h,v 1.3 2014/05/03 19:40:10 juergen Exp $ */
-+
-+#ifndef NC_TERMIOS_included
-+#define NC_TERMIOS_included 1
-+
-+#if HAVE_TERMIOS_H && HAVE_TCGETATTR
-+
-+#else /* !HAVE_TERMIOS_H */
-+
-+#if HAVE_TERMIO_H
-+
-+/* Add definitions to make termio look like termios.
-+ * But ifdef it, since there are some implementations
-+ * that try to do this for us in a fake <termio.h>.
-+ */
-+#ifndef TCSADRAIN
-+#define TCSADRAIN TCSETAW
-+#endif
-+#ifndef TCSAFLUSH
-+#define TCSAFLUSH TCSETAF
-+#endif
-+#ifndef tcsetattr
-+#define tcsetattr(fd, cmd, arg) ioctl(fd, cmd, arg)
-+#endif
-+#ifndef tcgetattr
-+#define tcgetattr(fd, arg) ioctl(fd, TCGETA, arg)
-+#endif
-+#ifndef cfgetospeed
-+#define cfgetospeed(t) ((t)->c_cflag & CBAUD)
-+#endif
-+#ifndef TCIFLUSH
-+#define TCIFLUSH 0
-+#endif
-+#ifndef tcflush
-+#define tcflush(fd, arg) ioctl(fd, TCFLSH, arg)
-+#endif
-+
-+#else /* !HAVE_TERMIO_H */
-+
-+#if __MINGW32__
-+
-+/* lflag bits */
-+#define ISIG 0x0001
-+#define ICANON 0x0002
-+#define ECHO 0x0004
-+#define ECHOE 0x0008
-+#define ECHOK 0x0010
-+#define ECHONL 0x0020
-+#define NOFLSH 0x0040
-+#define IEXTEN 0x0100
-+
-+#define VEOF 4
-+#define VERASE 5
-+#define VINTR 6
-+#define VKILL 7
-+#define VMIN 9
-+#define VQUIT 10
-+#define VTIME 16
-+
-+/* iflag bits */
-+#define IGNBRK 0x00001
-+#define BRKINT 0x00002
-+#define IGNPAR 0x00004
-+#define INPCK 0x00010
-+#define ISTRIP 0x00020
-+#define INLCR 0x00040
-+#define IGNCR 0x00080
-+#define ICRNL 0x00100
-+#define IXON 0x00400
-+#define IXOFF 0x01000
-+#define PARMRK 0x10000
-+
-+/* oflag bits */
-+#define OPOST 0x00001
-+
-+/* cflag bits */
-+#define CBAUD 0x0100f
-+#define B0 0x00000
-+#define B50 0x00001
-+#define B75 0x00002
-+#define B110 0x00003
-+#define B134 0x00004
-+#define B150 0x00005
-+#define B200 0x00006
-+#define B300 0x00007
-+#define B600 0x00008
-+#define B1200 0x00009
-+#define B1800 0x0000a
-+#define B2400 0x0000b
-+#define B4800 0x0000c
-+#define B9600 0x0000d
-+
-+#define CSIZE 0x00030
-+#define CS8 0x00030
-+#define CSTOPB 0x00040
-+#define CREAD 0x00080
-+#define PARENB 0x00100
-+#define PARODD 0x00200
-+#define HUPCL 0x00400
-+#define CLOCAL 0x00800
-+
-+#define TCIFLUSH 0
-+#define TCSADRAIN 3
-+
-+#ifndef cfgetospeed
-+#define cfgetospeed(t) ((t)->c_cflag & CBAUD)
-+#endif
-+
-+#ifndef tcsetattr
-+#define tcsetattr(fd, opt, arg) _nc_mingw_tcsetattr(fd, opt, arg)
-+#endif
-+
-+#ifndef tcgetattr
-+#define tcgetattr(fd, arg) _nc_mingw_tcgetattr(fd, arg)
-+#endif
-+
-+#ifndef tcflush
-+#define tcflush(fd, queue) _nc_mingw_tcflush(fd, queue)
-+#endif
-+
-+#undef ttyname
-+#define ttyname(fd) NULL
-+
-+#endif /* __MINGW32__ */
-+#endif /* HAVE_TERMIO_H */
-+
-+#endif /* HAVE_TERMIOS_H */
-+
-+#endif /* NC_TERMIOS_included */
-Index: include/nc_tparm.h
-Prereq: 1.5
---- ncurses-5.9/include/nc_tparm.h 2010-12-25 20:27:22.000000000 +0000
-+++ ncurses-5.9-20141206/include/nc_tparm.h 2012-02-18 21:34:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2006,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2006-2010,2012 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 *
-@@ -30,7 +30,7 @@
- * Author: Thomas E. Dickey 2006 *
- ****************************************************************************/
-
--/* $Id: nc_tparm.h,v 1.5 2010/12/25 20:27:22 tom Exp $ */
-+/* $Id: nc_tparm.h,v 1.6 2012/02/18 21:34:42 tom Exp $ */
-
- #ifndef NC_TPARM_included
- #define NC_TPARM_included 1
-@@ -40,8 +40,12 @@
- * assumption of the varargs code.
- */
- #ifndef TPARM_ARG
-+#ifdef NCURSES_TPARM_ARG
-+#define TPARM_ARG NCURSES_TPARM_ARG
-+#else
- #define TPARM_ARG long
- #endif
-+#endif /* TPARAM_ARG */
-
- #define TPARM_N(n) (TPARM_ARG)(n)
-
-Index: include/ncurses_defs
-Prereq: 1.46
---- ncurses-5.9/include/ncurses_defs 2011-03-22 09:17:59.000000000 +0000
-+++ ncurses-5.9-20141206/include/ncurses_defs 2014-09-05 08:46:16.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: ncurses_defs,v 1.46 2011/03/22 09:17:59 tom Exp $
-+# $Id: ncurses_defs,v 1.66 2014/09/05 08:46:16 tom Exp $
- ##############################################################################
--# Copyright (c) 2000-2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 2000-2013,2014 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"), #
-@@ -33,7 +33,7 @@
-
- BROKEN_LINKER
- BSD_TPUTS
--CC_HAS_PROTOS
-+CGETENT_CONST /* nothing */
- CPP_HAS_PARAM_INIT
- CURSES_ACS_ARRAY acs_map
- CURSES_WACS_ARRAY _nc_wacs
-@@ -41,6 +41,7 @@
- ETIP_NEEDS_MATH_H
- GCC_NORETURN /* nothing */
- GCC_UNUSED /* nothing */
-+HAVE_ASSUME_DEFAULT_COLORS
- HAVE_BIG_CORE
- HAVE_BSD_CGETENT
- HAVE_BSD_SIGNAL_H
-@@ -69,6 +70,7 @@
- HAVE_GPP_BUILTIN_H
- HAVE_GXX_BUILTIN_H
- HAVE_HAS_KEY
-+HAVE_INTTYPES_H
- HAVE_IOSTREAM
- HAVE_ISASCII
- HAVE_ISSETUGID
-@@ -102,6 +104,7 @@
- HAVE_POLL
- HAVE_POLL_H
- HAVE_PURIFY
-+HAVE_PUTENV
- HAVE_PUTWC
- HAVE_PUTWIN 1
- HAVE_REGEXPR_H_FUNCS
-@@ -115,6 +118,7 @@
- HAVE_SELECT
- HAVE_SETBUF
- HAVE_SETBUFFER
-+HAVE_SETENV
- HAVE_SETUPTERM 1
- HAVE_SETVBUF
- HAVE_SGTTY_H
-@@ -123,7 +127,11 @@
- HAVE_SIZECHANGE
- HAVE_SLK_COLOR
- HAVE_SLK_INIT 1
-+HAVE_SNPRINTF
-+HAVE_STDINT_H
- HAVE_STRDUP
-+HAVE_STRLCAT
-+HAVE_STRLCPY
- HAVE_STRSTR
- HAVE_SYMLINK
- HAVE_SYS_BSDTYPES_H
-@@ -153,10 +161,17 @@
- HAVE_TYPEINFO
- HAVE_TYPE_ATTR_T
- HAVE_TYPE_SIGACTION
-+HAVE_UNCTRL_H 1
- HAVE_UNISTD_H
- HAVE_UNLINK
- HAVE_USE_DEFAULT_COLORS
-+HAVE_USE_ENV 1
-+HAVE_USE_EXTENDED_NAMES
-+HAVE_USE_SCREEN
-+HAVE_USE_WINDOW
- HAVE_VFSCANF
-+HAVE_VIDPUTS 1
-+HAVE_VID_PUTS 1
- HAVE_VSNPRINTF
- HAVE_VSSCANF
- HAVE_WCSRTOMBS
-@@ -175,11 +190,12 @@
- NCURSES_EXT_COLORS
- NCURSES_EXT_FUNCS
- NCURSES_NO_PADDING
-+NCURSES_OSPEED_COMPAT
- NCURSES_PATHSEP ':'
-+NCURSES_WIDECHAR
- NEED_PTEM_H
- NO_LEAKS
- PURE_TERMINFO
--RETSIGTYPE
- STDC_HEADERS
- SVR4_ACTION
- SVR4_TERMIO
-@@ -189,7 +205,6 @@
- TIME_WITH_SYS_TIME
- TYPEOF_CHTYPE
- USE_COLORFGBG
--USE_DATABASE
- USE_GETCAP
- USE_GETCAP_CACHE
- USE_HARD_TABS
-@@ -205,9 +220,9 @@
- USE_SAFE_SPRINTF
- USE_SCROLL_HINTS
- USE_SIGWINCH
-+USE_STRING_HACKS
- USE_SYMLINKS
- USE_SYSMOUSE
--USE_TERMCAP
- USE_WEAK_SYMBOLS
- USE_WIDEC_SUPPORT
- USE_XMC_SUPPORT
-Index: include/ncurses_dll.h.in
-Prereq: 1.8
---- ncurses-5.9/include/ncurses_dll.h.in 2009-04-04 22:26:27.000000000 +0000
-+++ ncurses-5.9-20141206/include/ncurses_dll.h.in 2014-08-02 21:30:20.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2014 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 *
-@@ -25,11 +25,27 @@
- * sale, use or other dealings in this Software without prior written *
- * authorization. *
- ****************************************************************************/
--/* $Id: ncurses_dll.h.in,v 1.8 2009/04/04 22:26:27 tom Exp $ */
-+/* $Id: ncurses_dll.h.in,v 1.9 2014/08/02 21:30:20 tom Exp $ */
-
- #ifndef NCURSES_DLL_H_incl
- #define NCURSES_DLL_H_incl 1
-
-+/* 2014-08-02 workaround for broken MinGW compiler.
-+ * Oddly, only TRACE is mapped to trace - the other -D's are okay.
-+ * suggest TDM as an alternative.
-+ */
-+#if defined(__MINGW64__)
-+#elif defined(__MINGW32__)
-+#if (__GNUC__ == 4) && (__GNUC_MINOR__ == 8)
-+
-+#ifdef trace
-+#undef trace
-+#define TRACE
-+#endif
-+
-+#endif /* broken compiler */
-+#endif /* MingW */
-+
- /*
- * For reentrant code, we map the various global variables into SCREEN by
- * using functions to access them.
-Index: include/ncurses_mingw.h
-Prereq: 1.1
---- ncurses-5.9/include/ncurses_mingw.h 2008-12-14 19:22:16.000000000 +0000
-+++ ncurses-5.9-20141206/include/ncurses_mingw.h 2014-05-03 19:40:19.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2014 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 *
-@@ -31,10 +31,10 @@
- * *
- ****************************************************************************/
-
--/* $Id: ncurses_mingw.h,v 1.1 2008/12/14 19:22:16 juergen Exp $ */
-+/* $Id: ncurses_mingw.h,v 1.3 2014/05/03 19:40:19 juergen Exp $ */
-
- /*
-- * This is a placholder up to now and describes what needs to be implemented
-+ * This is a placeholder up to now and describes what needs to be implemented
- * to support I/O to external terminals with ncurses on the Windows OS.
- */
-
-@@ -47,118 +47,36 @@
- #undef TERMIOS
- #define TERMIOS 1
-
--#define InvalidHandle ((TERM_HANDLE)-1)
--#define InvalidConsoleHandle(s) ((s)==InvalidHandle)
--
- typedef unsigned char cc_t;
--typedef unsigned int speed_t;
- typedef unsigned int tcflag_t;
-+typedef unsigned int speed_t;
-+typedef unsigned short otcflag_t;
-+typedef unsigned char ospeed_t;
-
--#define NCCS 32
-+#define NCCS 18
- struct termios
- {
-- tcflag_t c_iflag; /* input mode */
-- tcflag_t c_oflag; /* output mode */
-- tcflag_t c_cflag; /* control mode */
-- tcflag_t c_lflag; /* local mode */
-- cc_t c_line; /* line discipline */
-- cc_t c_cc[NCCS]; /* control characters */
-- speed_t c_ispeed; /* input speed */
-- speed_t c_ospeed; /* c_ospeed */
-+ tcflag_t c_iflag;
-+ tcflag_t c_oflag;
-+ tcflag_t c_cflag;
-+ tcflag_t c_lflag;
-+ char c_line;
-+ cc_t c_cc[NCCS];
-+ speed_t c_ispeed;
-+ speed_t c_ospeed;
- };
-
--/* c_cc chars */
--#define VINTR 0
--#define VQUIT 1
--#define VERASE 2
--#define VKILL 3
--#define VEOF 4
--#define VTIME 5
--#define VMIN 6
--
--/* c_iflag bits */
--#define ISTRIP 0000040
--#define INLCR 0000100
--#define IGNCR 0000200
--#define ICRNL 0000400
--#define BRKINT 0000002
--#define PARMRK 0000010
--#define IXON 0002000
--#define IGNBRK 0000001
--#define IGNPAR 0000004
--#define INPCK 0000020
--#define IXOFF 0010000
--
--/* c_oflag bits */
--#define OPOST 0000001
--
--/* c_cflag bit meaning */
--#define CBAUD 0010017
--#define CSIZE 0000060
--#define CS8 0000060
--#define B0 0000000
--#define B50 0000001
--#define B75 0000002
--#define B110 0000003
--#define B134 0000004
--#define B150 0000005
--#define B200 0000006
--#define B300 0000007
--#define B600 0000010
--#define B1200 0000011
--#define B1800 0000012
--#define B2400 0000013
--#define B4800 0000014
--#define B9600 0000015
--#define CLOCAL 0004000
--#define CREAD 0000200
--#define CSTOPB 0000100
--#define HUPCL 0002000
--#define PARENB 0000400
--#define PARODD 0001000
--
--/* c_lflag bits */
--#define ECHO 0000010
--#define ECHONL 0000100
--#define ISIG 0000001
--#define IEXTEN 0100000
--#define ICANON 0000002
--#define NOFLSH 0000200
--#define ECHOE 0000020
--#define ECHOK 0000040
--
--/* tcflush() */
--#define TCIFLUSH 0
--
--/* tcsetattr uses these */
--#define TCSADRAIN 1
--
--/* ioctls */
--#define TCGETA 0x5405
--#define TCFLSH 0x540B
--#define TIOCGWINSZ 0x5413
--
--extern int _nc_mingw_ioctl(int fd, long int request, struct termios* arg);
--extern void _nc_set_term_driver(void* term);
--
--#ifndef cfgetospeed
--#define cfgetospeed(t) ((t)->c_cflag & CBAUD)
--#endif
--
--#ifndef tcsetattr
--#define tcsetattr(fd, cmd, arg) _nc_mingw_ioctl(fd, cmd, arg)
--#endif
--
--#ifndef tcgetattr
--#define tcgetattr(fd, arg) _nc_mingw_ioctl(fd, TCGETA, arg)
--#endif
--
--#ifndef tcflush
--#define tcflush(fd, arg) _nc_mingw_ioctl(fd, TCFLSH, arg)
--#endif
--
--#undef ttyname
--#define ttyname(fd) NULL
-+extern NCURSES_EXPORT(int) _nc_mingw_tcsetattr(
-+ int fd,
-+ int optional_actions,
-+ const struct termios* arg);
-+extern NCURSES_EXPORT(int) _nc_mingw_tcgetattr(
-+ int fd,
-+ struct termios* arg);
-+extern NCURSES_EXPORT(int) _nc_mingw_tcflush(
-+ int fd,
-+ int queue);
-+extern NCURSES_EXPORT(void) _nc_set_term_driver(void* term);
-
--#endif
--#endif
-+#endif /* _NC_MINGWH */
-+#endif /* __MINGW32__ */
-Index: include/term_entry.h
-Prereq: 1.37
---- ncurses-5.9/include/term_entry.h 2009-07-11 16:52:29.000000000 +0000
-+++ ncurses-5.9-20141206/include/term_entry.h 2014-11-01 14:47:00.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -32,7 +32,7 @@
- * and: Thomas E. Dickey 1998-on *
- ****************************************************************************/
-
--/* $Id: term_entry.h,v 1.37 2009/07/11 16:52:29 tom Exp $ */
-+/* $Id: term_entry.h,v 1.45 2014/11/01 14:47:00 tom Exp $ */
-
- /*
- * term_entry.h -- interface to entry-manipulation code
-@@ -47,28 +47,46 @@
-
- #include <term.h>
-
-+ /*
-+ * see db_iterator.c - this enumeration lists the places searched for a
-+ * terminal description and defines the order in which they are searched.
-+ */
-+ typedef enum {
-+ dbdTIC = 0, /* special, used by tic when writing entry */
-+#if NCURSES_USE_DATABASE
-+ dbdEnvOnce, /* the $TERMINFO environment variable */
-+ dbdHome, /* $HOME/.terminfo */
-+ dbdEnvList, /* the $TERMINFO_DIRS environment variable */
-+ dbdCfgList, /* the compiled-in TERMINFO_DIRS value */
-+ dbdCfgOnce, /* the compiled-in TERMINFO value */
-+#endif
-+#if NCURSES_USE_TERMCAP
-+ dbdEnvOnce2, /* the $TERMCAP environment variable */
-+ dbdEnvList2, /* the $TERMPATH environment variable */
-+ dbdCfgList2, /* the compiled-in TERMPATH */
-+#endif
-+ dbdLAST
-+ } DBDIRS;
-+
- #define MAX_USES 32
- #define MAX_CROSSLINKS 16
-
--typedef struct entry {
-- TERMTYPE tterm;
-- unsigned nuses;
-- struct
-- {
-- char *name;
-- struct entry *link;
-- long line;
-- }
-- uses[MAX_USES];
-- int ncrosslinks;
-- struct entry *crosslinks[MAX_CROSSLINKS];
-- long cstart, cend;
-- long startline;
-- struct entry *next;
-- struct entry *last;
--}
--ENTRY;
--
-+ typedef struct entry {
-+ TERMTYPE tterm;
-+ unsigned nuses;
-+ struct {
-+ char *name;
-+ struct entry *link;
-+ long line;
-+ } uses[MAX_USES];
-+ int ncrosslinks;
-+ struct entry *crosslinks[MAX_CROSSLINKS];
-+ long cstart, cend;
-+ long startline;
-+ struct entry *next;
-+ struct entry *last;
-+ } ENTRY;
-+/* *INDENT-OFF* */
- #if NCURSES_XNAMES
- #define NUM_BOOLEANS(tp) (tp)->num_Booleans
- #define NUM_NUMBERS(tp) (tp)->num_Numbers
-@@ -132,7 +150,7 @@
-
- /* alloc_ttype.c: elementary allocation code */
- extern NCURSES_EXPORT(void) _nc_align_termtype (TERMTYPE *, TERMTYPE *);
--extern NCURSES_EXPORT(void) _nc_copy_termtype (TERMTYPE *, TERMTYPE *);
-+extern NCURSES_EXPORT(void) _nc_copy_termtype (TERMTYPE *, const TERMTYPE *);
-
- /* free_ttype.c: elementary allocation code */
- extern NCURSES_EXPORT(void) _nc_free_termtype (TERMTYPE *);
-@@ -152,7 +170,7 @@
- extern NCURSES_EXPORT(int) _nc_capcmp (const char *, const char *);
-
- /* write_entry.c: writing an entry to the file system */
--extern NCURSES_EXPORT(void) _nc_set_writedir (char *);
-+extern NCURSES_EXPORT(void) _nc_set_writedir (const char *);
- extern NCURSES_EXPORT(void) _nc_write_entry (TERMTYPE *const);
-
- /* comp_parse.c: entry list handling */
-@@ -166,9 +184,9 @@
-
- /* trace_xnames.c */
- extern NCURSES_EXPORT(void) _nc_trace_xnames (TERMTYPE *);
-+/* *INDENT-ON* */
-
- #ifdef __cplusplus
- }
- #endif
--
--#endif /* NCURSES_TERM_ENTRY_H_incl */
-+#endif /* NCURSES_TERM_ENTRY_H_incl */
-Index: include/tic.h
-Prereq: 1.65
---- ncurses-5.9/include/tic.h 2009-08-08 17:52:46.000000000 +0000
-+++ ncurses-5.9-20141206/include/tic.h 2012-03-17 18:22:10.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -33,14 +33,14 @@
- ****************************************************************************/
-
- /*
-- * $Id: tic.h,v 1.65 2009/08/08 17:52:46 tom Exp $
-+ * $Id: tic.h,v 1.69 2012/03/17 18:22:10 tom Exp $
- * tic.h - Global variables and structures for the terminfo
- * compiler.
- */
-
- #ifndef __TIC_H
- #define __TIC_H
--
-+/* *INDENT-OFF* */
- #ifdef __cplusplus
- extern "C" {
- #endif
-@@ -224,6 +224,12 @@
-
- #define NOTFOUND ((struct name_table_entry *) 0)
-
-+/*
-+ * The casts are required for correct sign-propagation with systems such as
-+ * AIX, IRIX64, Solaris which default to unsigned characters. The C standard
-+ * leaves this detail unspecified.
-+ */
-+
- /* out-of-band values for representing absent capabilities */
- #define ABSENT_BOOLEAN ((signed char)-1) /* 255 */
- #define ABSENT_NUMERIC (-1)
-@@ -248,6 +254,8 @@
- #define TERMINFO "/usr/share/terminfo"
- #endif
-
-+#ifdef NCURSES_TERM_ENTRY_H_incl
-+
- /* access.c */
- extern NCURSES_EXPORT(unsigned) _nc_pathlast (const char *);
- extern NCURSES_EXPORT(bool) _nc_is_abs_path (const char *);
-@@ -270,6 +278,7 @@
- extern NCURSES_EXPORT_VAR(int) _nc_curr_col;
- extern NCURSES_EXPORT_VAR(int) _nc_curr_line;
- extern NCURSES_EXPORT_VAR(int) _nc_syntax;
-+extern NCURSES_EXPORT_VAR(int) _nc_strict_bsd;
- extern NCURSES_EXPORT_VAR(long) _nc_comment_end;
- extern NCURSES_EXPORT_VAR(long) _nc_comment_start;
- extern NCURSES_EXPORT_VAR(long) _nc_curr_file_pos;
-@@ -314,23 +323,6 @@
- extern const char * _nc_progname;
-
- /* db_iterator.c */
--typedef enum {
-- dbdTIC = 0,
--#if USE_DATABASE
-- dbdEnvOnce,
-- dbdHome,
-- dbdEnvList,
-- dbdCfgList,
-- dbdCfgOnce,
--#endif
--#if USE_TERMCAP
-- dbdEnvOnce2,
-- dbdEnvList2,
-- dbdCfgList2,
--#endif
-- dbdLAST
--} DBDIRS;
--
- extern NCURSES_EXPORT(const char *) _nc_next_db(DBDIRS *, int *);
- extern NCURSES_EXPORT(const char *) _nc_tic_dir (const char *);
- extern NCURSES_EXPORT(void) _nc_first_db(DBDIRS *, int *);
-@@ -339,8 +331,11 @@
- /* write_entry.c */
- extern NCURSES_EXPORT(int) _nc_tic_written (void);
-
-+#endif /* NCURSES_TERM_ENTRY_H_incl */
-+
- #ifdef __cplusplus
- }
- #endif
-
-+/* *INDENT-ON* */
- #endif /* __TIC_H */
-Index: man/MKada_config.in
-Prereq: 1.5
---- ncurses-5.9/man/MKada_config.in 2011-03-26 14:44:51.000000000 +0000
-+++ ncurses-5.9-20141206/man/MKada_config.in 2014-06-07 19:32:52.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2010,2011 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2010-2011,2014 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: MKada_config.in,v 1.5 2011/03/26 14:44:51 tom Exp $
-+.\" $Id: MKada_config.in,v 1.8 2014/06/07 19:32:52 tom Exp $
- .TH ADACURSES "1" "" "" "User Commands"
- .SH NAME
- adacurses\-config \- helper script for AdaCurses libraries
-@@ -50,6 +50,71 @@
- .TP
- \fB\-\-help\fR
- prints a list of the \fBadacurses\-config\fP script's options.
-+.PP
-+If no options are given, \fBadacurses\-config\fP prints the combination
-+of
-+\fB\-\-cflags\fR and
-+\fB\-\-libs\fR
-+that \fBgnatmake\fP expects (see example).
-+.SH EXAMPLE
-+.PP
-+For example, supposing that you want to compile the "Hello World!"
-+program for AdaCurses.
-+Make a file named "hello.adb":
-+.RS
-+.nf
-+.ft CW
-+with Terminal_Interface.Curses; use Terminal_Interface.Curses;
-+
-+procedure Hello is
-+
-+ Visibility : Cursor_Visibility := Invisible;
-+ done : Boolean := False;
-+ c : Key_Code;
-+
-+begin
-+
-+ Init_Screen;
-+ Set_Echo_Mode (False);
-+
-+ Set_Cursor_Visibility (Visibility);
-+ Set_Timeout_Mode (Standard_Window, Non_Blocking, 0);
-+
-+ Move_Cursor (Line => Lines / 2, Column => (Columns - 12) / 2);
-+ Add (Str => "Hello World!");
-+
-+ while not done loop
-+
-+ c := Get_Keystroke (Standard_Window);
-+ case c is
-+ when Character'Pos ('q') => done := True;
-+ when others => null;
-+ end case;
-+
-+ Nap_Milli_Seconds (50);
-+ end loop;
-+
-+ End_Windows;
-+
-+end Hello;
-+.fi
-+.RE
-+.PP
-+Then, using
-+.RS
-+.ft CW
-+gnatmake `adacurses-config --cflags` hello -largs `adacurses-config --libs`
-+.ft
-+.RE
-+.PP
-+or (simpler):
-+.RS
-+.ft CW
-+gnatmake hello `adacurses-config`
-+.ft
-+.RE
-+.PP
-+you will compile and link the program.
- .SH "SEE ALSO"
- \fBcurses\fR(3X)
- .PP
-Index: man/Makefile.in
-Prereq: 1.45
---- ncurses-5.9/man/Makefile.in 2010-11-27 21:45:27.000000000 +0000
-+++ ncurses-5.9-20141206/man/Makefile.in 2013-08-04 20:23:20.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.45 2010/11/27 21:45:27 tom Exp $
-+# $Id: Makefile.in,v 1.47 2013/08/04 20:23:20 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2010,2013 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"), #
-@@ -41,8 +41,12 @@
- srcdir = @srcdir@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
-+datarootdir = @datarootdir@
- datadir = @datadir@
- mandir = @mandir@
-+includesubdir = @includesubdir@
-+
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-
- INSTALL = @INSTALL@
- INSTALL_DATA = @INSTALL_DATA@
-Index: man/clear.1
-Prereq: 1.8
---- ncurses-5.9/man/clear.1 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/man/clear.1 2013-06-22 22:22:11.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2013 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: clear.1,v 1.8 2010/12/04 18:36:44 tom Exp $
-+.\" $Id: clear.1,v 1.10 2013/06/22 22:22:11 tom Exp $
- .TH @CLEAR@ 1 ""
- .ds n 5
- .SH NAME
-@@ -35,9 +35,10 @@
- \fB@CLEAR@\fR
- .br
- .SH DESCRIPTION
--\fB@CLEAR@\fR clears your screen if this is possible. It looks in the
--environment for the terminal type and then in the \fBterminfo\fR database to
--figure out how to clear the screen.
-+\fB@CLEAR@\fR clears your screen if this is possible,
-+including its scrollback buffer (if the extended "E3" capability is defined).
-+\fB@CLEAR@\fR looks in the environment for the terminal type and then in the
-+\fBterminfo\fR database to determine how to clear the screen.
- .PP
- \fB@CLEAR@\fR ignores any command-line parameters that may be present.
- .SH SEE ALSO
-Index: man/curs_add_wch.3x
-Prereq: 1.14
---- ncurses-5.9/man/curs_add_wch.3x 2011-01-15 15:27:43.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_add_wch.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2001-2010,2011 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2001-2011,2012 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_add_wch.3x,v 1.14 2011/01/15 15:27:43 tom Exp $
-+.\" $Id: curs_add_wch.3x,v 1.15 2012/11/03 23:03:59 tom Exp $
- .TH curs_add_wch 3X ""
- .de bP
- .IP \(bu 4
-@@ -176,7 +176,7 @@
- WACS_D_VLINE 0x2551 | double vertical line
- WACS_D_PLUS 0x256c + double large plus or crossover
- .TE
--.SH RETURN VALUES
-+.SH RETURN VALUE
- .PP
- All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success.
- .PP
-Index: man/curs_add_wchstr.3x
-Prereq: 1.9
---- ncurses-5.9/man/curs_add_wchstr.3x 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_add_wchstr.3x 2012-11-03 22:54:43.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2002-2010,2012 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 *
-@@ -26,8 +26,13 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_add_wchstr.3x,v 1.9 2010/12/04 18:36:44 tom Exp $
-+.\" $Id: curs_add_wchstr.3x,v 1.10 2012/11/03 22:54:43 tom Exp $
- .TH curs_add_wchstr 3X ""
-+.de bP
-+.IP \(bu 4
-+..
-+.na
-+.hy 0
- .SH NAME
- \fBadd_wchstr\fR,
- \fBadd_wchnstr\fR,
-@@ -37,10 +42,12 @@
- \fBmvadd_wchnstr\fR,
- \fBmvwadd_wchstr\fR,
- \fBmvwadd_wchnstr\fR \- add an array of complex characters (and attributes) to a curses window
-+.ad
-+.hy
- .SH SYNOPSIS
--.B #include <curses.h>
--.PP
- .nf
-+\fB#include <curses.h>\fR
-+.PP
- \fBint add_wchstr(const cchar_t *\fR\fIwchstr\fR\fB);\fR
- .br
- \fBint add_wchnstr(const cchar_t *\fR\fIwchstr\fR\fB, int \fR\fIn\fR\fB);\fR
-@@ -58,38 +65,53 @@
- \fBint mvwadd_wchnstr(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const cchar_t *\fR\fIwchstr\fR\fB, int \fR\fIn\fR\fB);\fR
- .fi
- .SH DESCRIPTION
--These routines copy the array of complex characters \fIwchstr\fR
--into the window image structure at and after the current cursor position.
--The four routines with \fIn\fR as the last
--argument copy at most \fIn\fR elements, but no more than will fit on the line.
-+These functions copy the (null-terminated)
-+array of complex characters \fIwchstr\fR
-+into the window image structure
-+starting at the current cursor position.
-+The four functions with \fIn\fR as the last
-+argument copy at most \fIn\fR elements,
-+but no more than will fit on the line.
- If \fBn\fR=\fB\-1\fR then the whole array is copied,
- to the maximum number of characters that will fit on the line.
- .PP
- The window cursor is \fInot\fR advanced.
--These routines work faster than \fBwaddnstr\fR.
--On the other hand, they do not perform checking
-+These functions work faster than \fBwaddnstr\fR.
-+On the other hand:
-+.bP
-+they do not perform checking
- (such as for the newline, backspace, or carriage return characters),
-+.bP
- they do not advance the current cursor position,
--they do not expand other control characters to ^-escapes,
--and they truncate the string if it crosses the right margin,
-+.bP
-+they do not expand other control characters to ^-escapes, and
-+.bP
-+they truncate the string if it crosses the right margin,
- rather than wrapping it around to the new line.
- .PP
--These routines end successfully
-+These functions end successfully
- on encountering a null \fIcchar_t\fR, or
- when they have filled the current line.
- If a complex character cannot completely fit at the end of the current line,
- the remaining columns are filled with the background character and rendition.
--.SH NOTES
--All functions except \fBwadd_wchnstr\fR may be macros.
--.SH RETURN VALUES
--All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success.
-+.SH RETURN VALUE
-+All functions 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
-+if the window pointer is null.
- .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.
-+.SH NOTES
-+All functions except \fBwadd_wchnstr\fR may be macros.
- .SH PORTABILITY
--All these entry points are described in the XSI Curses standard, Issue 4.
-+These entry points are described in the XSI Curses standard, Issue 4.
- .SH SEE ALSO
--\fBcurses\fR(3X),
--\fBcurs_addchstr\fR(3X),
--\fBcurs_addwstr\fR(3X)
-+\fBcurs_addwstr\fR(3X),
-+\fBcurses\fR(3X).
-+.PP
-+Comparable functions in the narrow-character (ncurses) library are
-+described in
-+\fBcurs_addchstr\fR(3X).
-Index: man/curs_addch.3x
-Prereq: 1.32
---- ncurses-5.9/man/curs_addch.3x 2011-01-15 14:15:10.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_addch.3x 2014-05-24 19:47:41.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2011,2014 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,8 +27,11 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_addch.3x,v 1.32 2011/01/15 14:15:10 tom Exp $
-+.\" $Id: curs_addch.3x,v 1.33 2014/05/24 19:47:41 tom Exp $
- .TH curs_addch 3X ""
-+.de bP
-+.IP \(bu 4
-+..
- .SH NAME
- \fBaddch\fR,
- \fBwaddch\fR,
-@@ -55,17 +58,29 @@
- The \fBaddch\fR, \fBwaddch\fR, \fBmvaddch\fR and \fBmvwaddch\fR routines put
- the character \fIch\fR into the given window at its current window position,
- which is then advanced. They are analogous to \fBputchar\fR in \fBstdio\fR(3).
--If the advance is at the right margin, the cursor automatically wraps to the
--beginning of the next line. At the bottom of the current scrolling region, if
--\fBscrollok\fR is enabled, the scrolling region is scrolled up one line.
-+If the advance is at the right margin:
-+.bP
-+The cursor automatically wraps to the beginning of the next line.
-+.bP
-+At the bottom of the current scrolling region,
-+and if \fBscrollok\fR is enabled,
-+the scrolling region is scrolled up one line.
-+.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
- .PP
- If \fIch\fR is a tab, newline, or backspace,
--the cursor is moved appropriately within the window.
-+the cursor is moved appropriately within the window:
-+.bP
- Backspace moves the cursor one character left; at the left
- edge of a window it does nothing.
-+.bP
- Newline does a \fBclrtoeol\fR,
- then moves the cursor to the window left margin on the next line,
- scrolling the window if on the last line.
-+.bP
- Tabs are considered to be at every eighth column.
- The tab interval may be altered by setting the \fBTABSIZE\fR variable.
- .PP
-Index: man/curs_addchstr.3x
-Prereq: 1.15
---- ncurses-5.9/man/curs_addchstr.3x 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_addchstr.3x 2012-11-03 22:54:43.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2012 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 *
-@@ -26,8 +26,11 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_addchstr.3x,v 1.15 2010/12/04 18:36:44 tom Exp $
-+.\" $Id: curs_addchstr.3x,v 1.16 2012/11/03 22:54:43 tom Exp $
- .TH curs_addchstr 3X ""
-+.de bP
-+.IP \(bu 4
-+..
- .na
- .hy 0
- .SH NAME
-@@ -42,6 +45,7 @@
- .ad
- .hy
- .SH SYNOPSIS
-+.nf
- \fB#include <curses.h>\fR
- .PP
- \fBint addchstr(const chtype *chstr);\fR
-@@ -59,24 +63,33 @@
- \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
-+.fi
- .SH DESCRIPTION
--These routines copy \fIchstr\fR into the window image structure at and after
--the current cursor position. The four routines with \fIn\fR as the last
--argument copy at most \fIn\fR elements, but no more than will fit on the line.
--If \fBn\fR=\fB\-1\fR then the whole string is copied, to the maximum number of
--characters that will fit on the line.
-+These functions copy the (null-terminated)
-+\fIchstr\fR array
-+into the window image structure
-+starting at the current cursor position.
-+The four functions with \fIn\fR as the last
-+argument copy at most \fIn\fR elements,
-+but no more than will fit on the line.
-+If \fBn\fR=\fB\-1\fR then the whole array is copied,
-+to the maximum number of characters that will fit on the line.
- .PP
--The window cursor is \fInot\fR advanced, and these routines work faster than
--\fBwaddnstr\fR. On the other hand, they do not perform any kind of checking
--(such as for the newline, backspace, or carriage return characters), they do not
--advance the current cursor position, they do not expand other control characters
--to ^-escapes, and they truncate the string if it crosses the right margin,
-+The window cursor is \fInot\fR advanced.
-+These functions work faster than \fBwaddnstr\fR.
-+On the other hand:
-+.bP
-+they do not perform checking
-+(such as for the newline, backspace, or carriage return characters),
-+.bP
-+they do not advance the current cursor position,
-+.bP
-+they do not expand other control characters to ^-escapes, and
-+.bP
-+they truncate the string if it crosses the right margin,
- rather than wrapping it around to the new line.
--.SH RETURN VALUES
--All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success
--(the SVr4 manuals specify only "an integer value other than \fBERR\fR") upon
--successful completion, unless otherwise noted in the preceding routine
--descriptions.
-+.SH RETURN VALUE
-+All functions 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
-@@ -86,10 +99,11 @@
- \fBwmove\fP, and return an error if the position is outside the window,
- or if the window pointer is null.
- .SH NOTES
--Note that all routines except \fBwaddchnstr\fR may be macros.
-+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).
- .PP
- Comparable functions in the wide-character (ncursesw) library are
-Index: man/curs_addstr.3x
-Prereq: 1.16
---- ncurses-5.9/man/curs_addstr.3x 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_addstr.3x 2012-11-03 22:57:31.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2012 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 *
-@@ -26,8 +26,11 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_addstr.3x,v 1.16 2010/12/04 18:36:44 tom Exp $
-+.\" $Id: curs_addstr.3x,v 1.17 2012/11/03 22:57:31 tom Exp $
- .TH curs_addstr 3X ""
-+.de bP
-+.IP \(bu 4
-+..
- .na
- .hy 0
- .SH NAME
-@@ -62,34 +65,37 @@
- \fBint mvwaddnstr(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const char *\fR\fIstr, int \fR\fIn\fR\fB);\fR
- .fi
- .SH DESCRIPTION
--These routines write the characters of the (null-terminated) character string
-+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.
--The four routines with \fIn\fR as the last argument
--write at most \fIn\fR characters.
--If \fIn\fR is \-1, then the entire string will be added,
--up to the maximum number of characters that will fit on the line,
-+.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,
- or until a terminating null is reached.
-+If \fIn\fR is \-1, then the entire string will be added.
- .SH RETURN VALUE
--All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success
--(the SVr4 manuals specify only "an integer value other than \fBERR\fR") upon
--successful completion.
-+All functions 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 the string pointer is null or
-+.bP
- if the corresponding calls to \fBwaddch\fP return an error.
- .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.
- .SH NOTES
--Note that all of these routines except \fBwaddstr\fR and \fBwaddnstr\fR may be
--macros.
-+All of these functions except \fBwaddnstr\fR may be macros.
- .SH PORTABILITY
--All these entry points are described in the XSI Curses standard, Issue 4. The
--XSI errors EILSEQ and EOVERFLOW, associated with extended-level conformance,
--are not yet detected.
-+These functions are described in the XSI Curses standard, Issue 4.
- .SH SEE ALSO
--\fBcurses\fR(3X), \fBcurs_addch\fR(3X).
-+\fBcurses\fR(3X),
-+\fBcurs_addch\fR(3X).
-Index: man/curs_addwstr.3x
-Prereq: 1.10
---- ncurses-5.9/man/curs_addwstr.3x 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_addwstr.3x 2012-11-03 22:57:31.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2002-2010,2012 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 *
-@@ -26,8 +26,11 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_addwstr.3x,v 1.10 2010/12/04 18:36:44 tom Exp $
-+.\" $Id: curs_addwstr.3x,v 1.11 2012/11/03 22:57:31 tom Exp $
- .TH curs_addwstr 3X ""
-+.de bP
-+.IP \(bu 4
-+..
- .na
- .hy 0
- .SH NAME
-@@ -62,31 +65,39 @@
- \fBint mvwaddnwstr(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const wchar_t *\fR\fIwstr\fR\fB, int \fR\fIn\fR\fB);\fR
- .fi
- .SH DESCRIPTION
--These routines write the characters of the
-+These functions write the characters of the
- (null-terminated) \fBwchar_t\fR character string
- \fIwstr\fR on the given window.
- It is similar to constructing a \fBcchar_t\fR for each wchar_t in the string,
- then calling \fBwadd_wch\fR for the resulting \fBcchar_t\fR.
- .PP
--The \fImv\fR routines perform cursor movement once, before writing any
-+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 routines with \fIn\fR as the last argument
--write at most \fIn\fR \fBwchar_t\fR characters.
--If \fIn\fR is \-1, then the entire string will be added,
--up to the maximum number of characters that will fit on the line,
-+The four functions with \fIn\fR as the last argument
-+write at most \fIn\fR \fBwchar_t\fR characters,
- or until a terminating null is reached.
--.SH RETURN VALUES
--All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success.
-+If \fIn\fR is \-1, then the entire string will be added.
-+.SH RETURN VALUE
-+All functions 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 the string pointer is null or
-+.bP
-+if the corresponding calls to \fBwadd_wch\fP return an error.
- .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.
- .SH NOTES
--Note that all of these routines except \fBwaddnwstr\fR may be macros.
-+All of these functions except \fBwaddnwstr\fR may be macros.
- .SH PORTABILITY
--All these entry points are described in the XSI Curses standard, Issue 4.
-+These functions are described in the XSI Curses standard, Issue 4.
- .SH SEE ALSO
- \fBcurses\fR(3X),
- \fBcurs_add_wch\fR(3X)
-Index: man/curs_attr.3x
-Prereq: 1.36
---- ncurses-5.9/man/curs_attr.3x 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_attr.3x 2013-09-21 20:39:49.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2013 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: curs_attr.3x,v 1.36 2010/12/04 18:36:44 tom Exp $
-+.\" $Id: curs_attr.3x,v 1.39 2013/09/21 20:39:49 Sven.Joachim Exp $
- .TH curs_attr 3X ""
- .na
- .hy 0
-@@ -164,9 +164,12 @@
- the routines \fBattron\fR, \fBattroff\fR, and \fBattrset\fR, or OR'd with the
- characters passed to \fBaddch\fR.
- .PP
-+.RS
- .TS
--center ;
-+l l
-+_ _ _
- l l .
-+\fIName\fR \fIDescription\fR
- \fBA_NORMAL\fR Normal display (no highlight)
- \fBA_STANDOUT\fR Best highlighting mode of the terminal.
- \fBA_UNDERLINE\fR Underlining
-@@ -177,9 +180,30 @@
- \fBA_PROTECT\fR Protected mode
- \fBA_INVIS\fR Invisible or blank mode
- \fBA_ALTCHARSET\fR Alternate character set
-+\fBA_ITALIC\fR Italics (non-X/Open extension)
- \fBA_CHARTEXT\fR Bit-mask to extract a character
- \fBCOLOR_PAIR(\fR\fIn\fR\fB)\fR Color-pair number \fIn\fR
- .TE
-+.RE
-+.PP
-+These video attributes are supported by \fBattr_on\fP and related functions
-+(which also support the attributes recognized by \fBattron\fP, etc.):
-+.RS
-+.TS
-+l l
-+_ _ _
-+l l .
-+\fIName\fR \fIDescription\fR
-+\fBWA_HORIZONTAL\fR Horizontal highlight
-+\fBWA_LEFT\fR Left highlight
-+\fBWA_LOW\fR Low highlight
-+\fBWA_RIGHT\fR Right highlight
-+\fBWA_TOP\fR Top highlight
-+\fBWA_VERTICAL\fR Vertical highlight
-+.TE
-+.RE
-+.PP
-+For consistency
- .PP
- The following macro is the reverse of \fBCOLOR_PAIR(\fR\fIn\fR\fB)\fR:
- .PP
-@@ -214,19 +238,27 @@
- SVr4 curses, these functions correctly manipulate all other highlights
- (specifically, \fBA_ALTCHARSET\fR, \fBA_PROTECT\fR, and \fBA_INVIS\fR).
- .PP
-+This implementation provides the \fBA_ITALIC\fP attribute for terminals
-+which have the \fIenter_italics_mode\fP (sitm) and \fIexit_italics_mode\fP (ritm) capabilities.
-+Italics are not mentioned in X/Open Curses.
-+Unlike the other video attributes, \fBI_ITALIC\fP is unrelated
-+to the \fIset_attributes\fP capabilities.
-+This implementation makes the assumption that
-+\fIexit_attribute_mode\fP may also reset italics.
-+.PP
- XSI Curses added the new entry points, \fBattr_get\fR, \fBattr_on\fR,
- \fBattr_off\fR, \fBattr_set\fR, \fBwattr_on\fR, \fBwattr_off\fR,
- \fBwattr_get\fR, \fBwattr_set\fR. These are intended to work with
- a new series of highlight macros prefixed with \fBWA_\fR.
-+The older macros have direct counterparts in the newer set of names:
- .PP
--Older versions of this library did not force an update of the screen
--when changing the attributes.
--Use \fBtouchwin\fR to force the screen to match the updated attributes.
--.PP
-+.RS
- .ne 9
- .TS
--center ;
-+l l
-+_ _ _
- l l .
-+\fIName\fR \fIDescription\fR
- \fBWA_NORMAL\fR Normal display (no highlight)
- \fBWA_STANDOUT\fR Best highlighting mode of the terminal.
- \fBWA_UNDERLINE\fR Underlining
-@@ -236,6 +268,11 @@
- \fBWA_BOLD\fR Extra bright or bold
- \fBWA_ALTCHARSET\fR Alternate character set
- .TE
-+.RE
-+.PP
-+Older versions of this library did not force an update of the screen
-+when changing the attributes.
-+Use \fBtouchwin\fR to force the screen to match the updated attributes.
- .PP
- The XSI curses standard specifies that each pair of corresponding \fBA_\fR
- and \fBWA_\fR-using functions operates on the same current-highlight
-@@ -243,8 +280,10 @@
- .PP
- The XSI standard extended conformance level adds new highlights
- \fBA_HORIZONTAL\fR, \fBA_LEFT\fR, \fBA_LOW\fR, \fBA_RIGHT\fR, \fBA_TOP\fR,
--\fBA_VERTICAL\fR (and corresponding \fBWA_\fR macros for each) which this
--implementation does not yet support.
-+\fBA_VERTICAL\fR (and corresponding \fBWA_\fR macros for each).
-+As of August 2013,
-+no known terminal provides these highlights
-+(i.e., via the \fBsgr1\fP capability).
- .SH RETURN VALUE
- All routines return the integer \fBOK\fR on success, or \fBERR\fP on failure.
- .PP
-Index: man/curs_bkgrnd.3x
-Prereq: 1.4
---- ncurses-5.9/man/curs_bkgrnd.3x 2010-12-04 18:49:20.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_bkgrnd.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2002-2010,2012 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_bkgrnd.3x,v 1.4 2010/12/04 18:49:20 tom Exp $
-+.\" $Id: curs_bkgrnd.3x,v 1.5 2012/11/03 23:03:59 tom Exp $
- .TH curs_bkgrnd 3X ""
- .SH NAME
- \fBbkgrnd\fR,
-@@ -89,7 +89,7 @@
- \fBbkgrndset\fR, and
- \fBgetbkgrnd\fR
- may be macros.
--.SH RETURN VALUES
-+.SH RETURN VALUE
- The \fBbkgrndset\fR and \fBwbkgrndset\fR routines do not return a value.
- .PP
- Upon successful completion, the other functions return \fBOK\fR.
-Index: man/curs_border_set.3x
-Prereq: 1.10
---- ncurses-5.9/man/curs_border_set.3x 2011-01-15 12:56:18.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_border_set.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2002-2010,2011 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2002-2011,2012 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_border_set.3x,v 1.10 2011/01/15 12:56:18 tom Exp $
-+.\" $Id: curs_border_set.3x,v 1.11 2012/11/03 23:03:59 tom Exp $
- .TH curs_border_set 3X ""
- .na
- .hy 0
-@@ -187,7 +187,7 @@
- \fBvline_set\fR
- may be macros.
- .br
--.SH RETURN VALUES
-+.SH RETURN VALUE
- .PP
- Upon successful completion, these functions return
- \fBOK\fR.
-Index: man/curs_color.3x
-Prereq: 1.35
---- ncurses-5.9/man/curs_color.3x 2010-12-20 00:50:58.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_color.3x 2014-11-16 00:44:29.000000000 +0000
-@@ -26,11 +26,16 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_color.3x,v 1.35 2010/12/20 00:50:58 tom Exp $
-+.\" $Id: curs_color.3x,v 1.36 2014/11/16 00:44:29 tom Exp $
- .TH curs_color 3X ""
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
- .de bP
- .IP \(bu 4
- ..
-+.ds n 5
- .na
- .hy 0
- .SH NAME
-@@ -63,99 +68,135 @@
- .br
- .SH DESCRIPTION
- .SS Overview
--\fBcurses\fR support color attributes on terminals with that capability. To
--use these routines \fBstart_color\fR must be called, usually right after
--\fBinitscr\fR. Colors are always used in pairs (referred to as color-pairs).
-+\fBcurses\fR support color attributes on terminals with that capability.
-+To use these routines \fBstart_color\fR must be called, usually right after
-+\fBinitscr\fR.
-+Colors are always used in pairs (referred to as color-pairs).
- A color-pair consists of a foreground color (for characters) and a background
--color (for the blank field on which the characters are displayed). A
--programmer initializes a color-pair with the routine \fBinit_pair\fR. After it
--has been initialized, \fBCOLOR_PAIR\fR(\fIn\fR), a macro defined in
-+color (for the blank field on which the characters are displayed).
-+A programmer initializes a color-pair with the routine \fBinit_pair\fR.
-+After it has been initialized, \fBCOLOR_PAIR\fR(\fIn\fR), a macro defined in
- \fB<curses.h>\fR, can be used as a new video attribute.
- .PP
- If a terminal is capable of redefining colors, the programmer can use the
--routine \fBinit_color\fR to change the definition of a color. The routines
--\fBhas_colors\fR and \fBcan_change_color\fR return \fBTRUE\fR or \fBFALSE\fR,
-+routine \fBinit_color\fR to change the definition of a color.
-+The routines \fBhas_colors\fR and \fBcan_change_color\fR
-+return \fBTRUE\fR or \fBFALSE\fR,
- depending on whether the terminal has color capabilities and whether the
--programmer can change the colors. The routine \fBcolor_content\fR allows a
-+programmer can change the colors.
-+The routine \fBcolor_content\fR allows a
- programmer to extract the amounts of red, green, and blue components in an
--initialized color. The routine \fBpair_content\fR allows a programmer to find
-+initialized color.
-+The routine \fBpair_content\fR allows a programmer to find
- out how a given color-pair is currently defined.
- .SS Routine Descriptions
--The \fBstart_color\fR routine requires no arguments. It must be
--called if the programmer wants to use colors, and before any other
--color manipulation routine is called. It is good practice to call
--this routine right after \fBinitscr\fR. \fBstart_color\fR initializes
--eight basic colors (black, red, green, yellow, blue, magenta, cyan,
-+The \fBstart_color\fR routine requires no arguments.
-+It must be called if the programmer wants to use colors, and before any other
-+color manipulation routine is called.
-+It is good practice to call this routine right after \fBinitscr\fR.
-+\fBstart_color\fR initializes eight basic colors (black, red, green, yellow, blue, magenta, cyan,
- and white), and two global variables, \fBCOLORS\fR and
- \fBCOLOR_PAIRS\fR (respectively defining the maximum number of colors
--and color-pairs the terminal can support). It also restores the
--colors on the terminal to the values they had when the terminal was
-+and color-pairs the terminal can support).
-+It also restores the colors on the terminal to the values they had when the terminal was
- just turned on.
- .PP
--The \fBinit_pair\fR routine changes the definition of a color-pair. It takes
--three arguments: the number of the color-pair to be changed, the foreground
-+These limits apply to color values and color pairs.
-+Values outside these limits are not legal, and may result in a runtime error:
-+.bP
-+\fBCOLORS\fP corresponds to the terminal database's \fBmax_colors\fP capability,
-+which is typically a signed 16-bit integer (see \fBterminfo\fR(\*n)).
-+.bP
-+color values are expected to be in the range \fB0\fP to \fBCOLORS\-1\fP,
-+inclusive (including \fB0\fP and \fBCOLORS\-1\fP).
-+.bP
-+a special color value \fB\-1\fP is used in certain extended functions
-+to denote the \fIdefault color\fP (see \fBuse_default_colors\fP).
-+.bP
-+\fBCOLOR_PAIRS\fP corresponds to the terminal database's \fBmax_pairs\fP capability,
-+which is typically a signed 16-bit integer (see \fBterminfo\fR(\*n)).
-+.bP
-+legal color pair values are in the range \fB1\fP to \fBCOLOR_PAIRS\-1\fP,
-+inclusive.
-+.bP
-+color pair \fB0\fP is special; it denotes \*(``no color\*(''.
-+.IP
-+Color pair \fB0\fP is assumed to be white on black,
-+but is actually whatever the terminal implements before color is initialized.
-+It cannot be modified by the application.
-+.PP
-+The \fBinit_pair\fR routine changes the definition of a color-pair.
-+It takes three arguments: the number of the color-pair to be changed, the foreground
- color number, and the background color number.
- For portable applications:
- .bP
--The value of the first argument
--must be between \fB1\fR and \fBCOLOR_PAIRS\-1\fR,
--except that if default colors are used (see \fBuse_default_colors\fP)
-+The first argument must be a legal color pair value.
-+If default colors are used (see \fBuse_default_colors\fP)
- the upper limit is adjusted to allow for extra pairs which use
- a default color in foreground and/or background.
- .bP
--The value of the second and
--third arguments must be between 0 and \fBCOLORS\fR.
--Color pair 0 is assumed to be white on black,
--but is actually whatever the terminal implements before color is initialized.
--It cannot be modified by the application.
-+The second and third arguments must be legal color values.
- .PP
--If the color-pair was previously
--initialized, the screen is refreshed and all occurrences of that color-pair
-+If the color-pair was previously initialized,
-+the screen is refreshed and all occurrences of that color-pair
- are changed to the new definition.
- .PP
--As an extension, ncurses allows you to set color pair 0 via
-+As an extension, ncurses allows you to set color pair \fB0\fP via
- the \fBassume_default_colors\fR routine, or to specify the use of
- default colors (color number \fB\-1\fR) if you first invoke the
- \fBuse_default_colors\fR routine.
- .PP
--The \fBinit_color\fR routine changes the definition of a color. It takes four
--arguments: the number of the color to be changed followed by three RGB values
--(for the amounts of red, green, and blue components). The value of the first
--argument must be between \fB0\fR and \fBCOLORS\fR. (See the section
--\fBColors\fR for the default color index.) Each of the last three arguments
--must be a value between 0 and 1000. When \fBinit_color\fR is used, all
-+The \fBinit_color\fR routine changes the definition of a color.
-+It takes four arguments: the number of the color to be changed followed by three RGB values
-+(for the amounts of red, green, and blue components).
-+The first argument must be a legal color value;
-+default colors are not allowed here.
-+(See the section \fBColors\fR for the default color index.)
-+Each of the last three arguments
-+must be a value in the range \fB0\fP through \fB1000\fP.
-+When \fBinit_color\fR is used, all
- occurrences of that color on the screen immediately change to the new
- definition.
- .PP
--The \fBhas_colors\fR routine requires no arguments. It returns \fBTRUE\fR if
--the terminal can manipulate colors; otherwise, it returns \fBFALSE\fR. This
--routine facilitates writing terminal-independent programs. For example, a
--programmer can use it to decide whether to use color or some other video
--attribute.
--.PP
--The \fBcan_change_color\fR routine requires no arguments. It returns
--\fBTRUE\fR if the terminal supports colors and can change their definitions;
--other, it returns \fBFALSE\fR. This routine facilitates writing
--terminal-independent programs.
-+The \fBhas_colors\fR routine requires no arguments.
-+It returns \fBTRUE\fR if
-+the terminal can manipulate colors; otherwise, it returns \fBFALSE\fR.
-+This routine facilitates writing terminal-independent programs.
-+For example, a programmer can use it to decide
-+whether to use color or some other video attribute.
-+.PP
-+The \fBcan_change_color\fR routine requires no arguments.
-+It returns \fBTRUE\fR if the terminal supports colors
-+and can change their definitions;
-+other, it returns \fBFALSE\fR.
-+This routine facilitates writing terminal-independent programs.
- .PP
- The \fBcolor_content\fR routine gives programmers a way to find the intensity
--of the red, green, and blue (RGB) components in a color. It requires four
--arguments: the color number, and three addresses of \fBshort\fRs for storing
-+of the red, green, and blue (RGB) components in a color.
-+It requires four arguments: the color number, and three addresses
-+of \fBshort\fRs for storing
- the information about the amounts of red, green, and blue components in the
--given color. The value of the first argument must be between 0 and
--\fBCOLORS\fR. The values that are stored at the addresses pointed to by the
--last three arguments are between 0 (no component) and 1000 (maximum amount of
--component).
-+given color.
-+The first argument must be a legal color value, i.e.,
-+\fB0\fP through \fBCOLORS\-1\fP, inclusive.
-+The values that are stored at the addresses pointed to by the
-+last three arguments are in the range
-+\fB0\fP (no component) through \fB1000\fP (maximum amount of component), inclusive.
- .PP
- The \fBpair_content\fR routine allows programmers to find out what colors a
--given color-pair consists of. It requires three arguments: the color-pair
-+given color-pair consists of.
-+It requires three arguments: the color-pair
- number, and two addresses of \fBshort\fRs for storing the foreground and the
--background color numbers. The value of the first argument must be between 1
--and \fBCOLOR_PAIRS\-1\fR. The values that are stored at the addresses pointed
--to by the second and third arguments are between 0 and \fBCOLORS\fR.
-+background color numbers.
-+The first argument must be a legal color value,
-+i.e., in the range \fB1\fP through \fBCOLOR_PAIRS\-1\fR, inclusive.
-+The values that are stored at the addresses pointed
-+to by the second and third arguments are in the
-+range \fB0\fP through \fBCOLORS\fR, inclusive.
- .SS Colors
--In \fB<curses.h>\fR the following macros are defined. These are the default
--colors. \fBcurses\fR also assumes that \fBCOLOR_BLACK\fR is the default
-+In \fB<curses.h>\fR the following macros are defined.
-+These are the default colors.
-+\fBcurses\fR also assumes that \fBCOLOR_BLACK\fR is the default
- background color for all terminals.
- .PP
- .nf
-@@ -178,10 +219,10 @@
- .PP
- X/Open defines no error conditions.
- This implementation will return \fBERR\fR on attempts to
--use color values outside the range 0 to COLORS\-1
-+use color values outside the range \fB0\fP to COLORS\-1
- (except for the default colors extension),
--or use color pairs outside the range 0 to COLOR_PAIRS\-1.
--Color values used in \fBinit_color\fP must be in the range 0 to 1000.
-+or use color pairs outside the range \fB0\fP to \fBCOLOR_PAIRS\-1\fP.
-+Color values used in \fBinit_color\fP must be in the range \fB0\fP to \fB1000\fP.
- An error is returned from all functions
- if the terminal has not been initialized.
- An error is returned from secondary functions such as \fBinit_pair\fP
-@@ -200,21 +241,24 @@
- In the \fIncurses\fR implementation, there is a separate color activation flag,
- color palette, color pairs table, and associated COLORS and COLOR_PAIRS counts
- for each screen; the \fBstart_color\fR function only affects the current
--screen. The SVr4/XSI interface is not really designed with this in mind, and
-+screen.
-+The SVr4/XSI interface is not really designed with this in mind, and
- historical implementations may use a single shared color palette.
- .PP
- Note that setting an implicit background color via a color pair affects only
--character cells that a character write operation explicitly touches. To change
-+character cells that a character write operation explicitly touches.
-+To change
- the background color used when parts of a window are blanked by erasing or
- scrolling operations, see \fBcurs_bkgd\fR(3X).
- .PP
- Several caveats apply on 386 and 486 machines with VGA-compatible graphics:
- .bP
--COLOR_YELLOW is actually brown. To get yellow, use COLOR_YELLOW combined with
--the \fBA_BOLD\fR attribute.
-+COLOR_YELLOW is actually brown.
-+To get yellow, use COLOR_YELLOW combined with the \fBA_BOLD\fR attribute.
- .bP
--The A_BLINK attribute should in theory cause the background to go bright. This
--often fails to work, and even some cards for which it mostly works (such as the
-+The A_BLINK attribute should in theory cause the background to go bright.
-+This often fails to work, and even some cards for which it mostly works
-+(such as the
- Paradise and compatibles) do the wrong thing when you try to set a bright
- "yellow" background (you get a blinking yellow foreground instead).
- .bP
-Index: man/curs_get_wch.3x
-Prereq: 1.7
---- ncurses-5.9/man/curs_get_wch.3x 2010-08-14 23:31:42.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_get_wch.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2002-2010,2012 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_get_wch.3x,v 1.7 2010/08/14 23:31:42 tom Exp $
-+.\" $Id: curs_get_wch.3x,v 1.8 2012/11/03 23:03:59 tom Exp $
- .TH curs_get_wch 3X ""
- .SH NAME
- \fBget_wch\fR,
-@@ -132,7 +132,7 @@
- .PP
- All functions except \fBwget_wch\fR and \fBunget_wch\fR
- may be macros.
--.SH RETURN VALUES
-+.SH RETURN VALUE
- When
- \fBget_wch\fR,
- \fBwget_wch\fR,
-Index: man/curs_get_wstr.3x
-Prereq: 1.8
---- ncurses-5.9/man/curs_get_wstr.3x 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_get_wstr.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2002-2010,2012 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_get_wstr.3x,v 1.8 2010/12/04 18:36:44 tom Exp $
-+.\" $Id: curs_get_wstr.3x,v 1.9 2012/11/03 23:03:59 tom Exp $
- .TH curs_get_wstr 3X ""
- .na
- .hy 0
-@@ -144,7 +144,7 @@
- is no way to distinguish a \fBKEY_\fR value from a valid \fBwchar_t\fR value.
- .PP
- All of these routines except \fBwgetn_wstr\fR may be macros.
--.SH RETURN VALUES
-+.SH RETURN VALUE
- All of these functions return \fBOK\fR upon successful completion.
- Otherwise, they return \fBERR\fR.
- .PP
-Index: man/curs_getcchar.3x
-Prereq: 1.15
---- ncurses-5.9/man/curs_getcchar.3x 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_getcchar.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2001-2010,2012 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_getcchar.3x,v 1.15 2010/12/04 18:36:44 tom Exp $
-+.\" $Id: curs_getcchar.3x,v 1.16 2012/11/03 23:03:59 tom Exp $
- .TH curs_getcchar 3X ""
- .de bP
- .IP \(bu 4
-@@ -116,7 +116,7 @@
- The \fIwcval\fP argument may be a value generated by a call to
- \fBsetcchar\fP or by a function that has a \fBcchar_t\fP output argument.
- If \fIwcval\fP is constructed by any other means, the effect is unspecified.
--.SH RETURN VALUES
-+.SH RETURN VALUE
- .PP
- When \fIwch\fP is a null pointer,
- \fBgetcchar\fP returns the number of wide characters referenced by
-Index: man/curs_getch.3x
-Prereq: 1.36
---- ncurses-5.9/man/curs_getch.3x 2011-01-22 19:38:51.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_getch.3x 2014-05-24 20:16:31.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2012,2014 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: curs_getch.3x,v 1.36 2011/01/22 19:38:51 tom Exp $
-+.\" $Id: curs_getch.3x,v 1.39 2014/05/24 20:16:31 tom Exp $
- .TH curs_getch 3X ""
- .na
- .hy 0
-@@ -71,14 +71,21 @@
- the program waits until a character is typed or the
- specified timeout has been reached.
- .PP
--Unless \fBnoecho\fR has been set,
-+If \fBecho\fR is enabled, and the window is not a pad,
- then the character will also be echoed into the
- designated window according to the following rules:
--if the character is the current erase character, left arrow, or backspace,
-+.bP
-+If the character is the current erase character, left arrow, or backspace,
- the cursor is moved one space to the left and that screen position is erased
- as if \fBdelch\fR had been called.
-+.bP
- If the character value is any other \fBKEY_\fR define, the user is alerted
- with a \fBbeep\fR call.
-+.bP
-+If the character is a carriage-return,
-+and if \fBnl\fP is enabled,
-+it is translated to a line-feed after echoing.
-+.bP
- Otherwise the character is simply output to the screen.
- .PP
- If the window is not a pad, and it has been moved or modified since the last
-@@ -89,7 +96,8 @@
- that function key is returned instead of the raw characters.
- Possible function
- keys are defined in \fB<curses.h>\fR as macros with values outside the range
--of 8-bit characters whose names begin with \fBKEY_\fR. Thus, a variable
-+of 8-bit characters whose names begin with \fBKEY_\fR.
-+Thus, a variable
- intended to hold the return value of a function key must be of short size or
- larger.
- .PP
-@@ -111,12 +119,12 @@
- \fBgetch\fR if \fBkeypad\fR has been enabled.
- Note that not all of these are
- necessarily supported on any particular terminal.
--.sp
-+.PP
- .TS
- center tab(/) ;
--l l
- l l .
- \fIName\fR/\fIKey\fR \fIname\fR
-+_
- KEY_BREAK/Break key
- KEY_DOWN/The four arrow keys ...
- KEY_UP
-@@ -237,14 +245,14 @@
- All routines return the integer \fBERR\fR upon failure and an integer value
- other than \fBERR\fR (\fBOK\fR in the case of ungetch()) upon successful
- completion.
--.RS
-+.RS 3
- .TP 5
- \fBungetch\fP
--returns an error
-+returns ERR
- if there is no more room in the FIFO.
--.TP 5
-+.TP
- \fBwgetch\fP
--returns an error
-+returns ERR
- if the window pointer is null, or
- if its timeout expires without having any data.
- .RE
-Index: man/curs_in_wchstr.3x
-Prereq: 1.8
---- ncurses-5.9/man/curs_in_wchstr.3x 2010-12-04 18:36:44.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_in_wchstr.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2002-2010,2012 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_in_wchstr.3x,v 1.8 2010/12/04 18:36:44 tom Exp $
-+.\" $Id: curs_in_wchstr.3x,v 1.9 2012/11/03 23:03:59 tom Exp $
- .TH curs_in_wchstr 3X ""
- .na
- .hy 0
-@@ -98,7 +98,7 @@
- \fBmvwin_wchnstr\fR, or
- \fBwin_wchnstr\fR
- is recommended.
--.SH RETURN VALUES
-+.SH RETURN VALUE
- Upon successful completion, these functions return
- \fBOK\fR.
- Otherwise, they return
-Index: man/curs_initscr.3x
-Prereq: 1.17
---- ncurses-5.9/man/curs_initscr.3x 2010-12-04 18:36:58.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_initscr.3x 2014-03-01 22:31:22.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2013,2014 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 *
-@@ -26,8 +26,15 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_initscr.3x,v 1.17 2010/12/04 18:36:58 tom Exp $
-+.\" $Id: curs_initscr.3x,v 1.20 2014/03/01 22:31:22 tom Exp $
- .TH curs_initscr 3X ""
-+.de bP
-+.IP \(bu 4
-+..
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
- .na
- .hy 0
- .SH NAME
-@@ -56,49 +63,71 @@
- .br
- .SH DESCRIPTION
- \fBinitscr\fR is normally the first \fBcurses\fR routine to call when
--initializing a program. A few special routines sometimes need to be
--called before it; these are \fBslk_init\fR, \fBfilter\fR, \fBripoffline\fR,
--\fBuse_env\fR. For multiple-terminal applications, \fBnewterm\fR may be
--called before \fBinitscr\fR.
-+initializing a program.
-+A few special routines sometimes need to be called before it;
-+these are \fBslk_init\fR, \fBfilter\fR, \fBripoffline\fR,
-+\fBuse_env\fR.
-+For multiple-terminal applications,
-+\fBnewterm\fR may be called before \fBinitscr\fR.
- .PP
- The initscr code determines the terminal type and initializes all \fBcurses\fR
--data structures. \fBinitscr\fR also causes the first call to \fBrefresh\fR to
--clear the screen. If errors occur, \fBinitscr\fR writes an appropriate error
--message to standard error and exits; otherwise, a pointer is returned to
--\fBstdscr\fR.
-+data structures.
-+\fBinitscr\fR also causes the first call to \fBrefresh\fR to clear the screen.
-+If errors occur, \fBinitscr\fR writes an appropriate error
-+message to standard error and exits;
-+otherwise, a pointer is returned to \fBstdscr\fR.
- .PP
- A program that outputs to more than one terminal should use the \fBnewterm\fR
--routine for each terminal instead of \fBinitscr\fR. A program that needs to
--inspect capabilities, so it can continue to run in a line-oriented mode if the
-+routine for each terminal instead of \fBinitscr\fR.
-+A program that needs to inspect capabilities,
-+so it can continue to run in a line-oriented mode if the
- terminal cannot support a screen-oriented program, would also use
--\fBnewterm\fR. The routine \fBnewterm\fR should be called once for each
--terminal. It returns a variable of type \fBSCREEN *\fR which should be saved
--as a reference to that terminal. The arguments are the \fItype\fR of the
--terminal to be used in place of \fB$TERM\fR, a file pointer for output to the
--terminal, and another file pointer for input from the terminal (if \fItype\fR
--is \fBNULL\fR, \fB$TERM\fR will be used). The program must also call
-+\fBnewterm\fR.
-+The routine \fBnewterm\fR should be called once for each terminal.
-+It returns a variable of type \fBSCREEN *\fR which should be saved
-+as a reference to that terminal.
-+\fBnewterm\fP's arguments are
-+.bP
-+the \fItype\fR of the terminal to be used in place of \fB$TERM\fR,
-+.bP
-+a file pointer for output to the terminal, and
-+.bP
-+another file pointer for input from the terminal
-+.PP
-+If the \fItype\fR parameter is \fBNULL\fR, \fB$TERM\fR will be used.
-+.PP
-+The program must also call
- \fBendwin\fR for each terminal being used before exiting from \fBcurses\fR.
- If \fBnewterm\fR is called more than once for the same terminal, the first
- terminal referred to must be the last one for which \fBendwin\fR is called.
- .PP
- A program should always call \fBendwin\fR before exiting or escaping from
--\fBcurses\fR mode temporarily. This routine restores tty modes, moves the
--cursor to the lower left-hand corner of the screen and resets the terminal into
--the proper non-visual mode. Calling \fBrefresh\fR or \fBdoupdate\fR after a
-+\fBcurses\fR mode temporarily.
-+This routine
-+.bP
-+restores tty modes,
-+.bP
-+moves the cursor to the lower left-hand corner of the screen and
-+.bP
-+resets the terminal into
-+the proper non-visual mode.
-+.PP
-+Calling \fBrefresh\fR or \fBdoupdate\fR after a
- temporary escape causes the program to resume visual mode.
- .PP
- The \fBisendwin\fR routine returns \fBTRUE\fR if \fBendwin\fR has been
--called without any subsequent calls to \fBwrefresh\fR, and \fBFALSE\fR
--otherwise.
-+called without any subsequent calls to \fBwrefresh\fR,
-+and \fBFALSE\fR otherwise.
- .PP
--The \fBset_term\fR routine is used to switch between different
--terminals. The screen reference \fBnew\fR becomes the new current
--terminal. The previous terminal is returned by the routine. This is
--the only routine which manipulates \fBSCREEN\fR pointers; all other
--routines affect only the current terminal.
-+The \fBset_term\fR routine is used to switch between different terminals.
-+The screen reference \fBnew\fR becomes the new current terminal.
-+The previous terminal is returned by the routine.
-+This is the only routine which manipulates \fBSCREEN\fR pointers;
-+all other routines affect only the current terminal.
- .PP
- The \fBdelscreen\fR routine frees storage associated with the
--\fBSCREEN\fR data structure. The \fBendwin\fR routine does not do
-+\fBSCREEN\fR data structure.
-+The \fBendwin\fR routine does not do
- this, so \fBdelscreen\fR should be called after \fBendwin\fR if a
- particular \fBSCREEN\fR is no longer needed.
- .SH RETURN VALUE
-@@ -109,22 +138,41 @@
- .PP
- X/Open defines no error conditions.
- In this implementation
-+.bP
- \fBendwin\fP returns an error if the terminal was not initialized.
-+.bP
-+\fBnewterm\fP
-+returns an error if it cannot allocate the data structures for the screen,
-+or for the top-level windows within the screen,
-+i.e.,
-+\fBcurscr\fP, \fBnewscr\fP, or \fBstdscr\fP.
-+.bP
-+\fBset_term\fP
-+returns no error.
- .SH NOTES
- Note that \fBinitscr\fR and \fBnewterm\fR may be macros.
- .SH PORTABILITY
--These functions are described in the XSI Curses standard, Issue 4. It
--specifies that portable applications must not call \fBinitscr\fR more than
--once.
-+These functions are described in the XSI Curses standard, Issue 4.
-+It specifies that portable applications must not
-+call \fBinitscr\fR more than once.
- .PP
- Old versions of curses, e.g., BSD 4.4, may have returned a null pointer
- from \fBinitscr\fR when an error is detected, rather than exiting.
- It is safe but redundant to check the return value of \fBinitscr\fR
- in XSI Curses.
-+.PP
-+If the TERM variable is missing or empty, \fBinitscr\fP uses the
-+value \*(``unknown\*('',
-+which normally corresponds to a terminal entry with the \fIgeneric\fP
-+(\fIgn\fP) capability.
-+Generic entries are detected by \fBsetupterm\fP(3X) and cannot be
-+used for full-screen operation.
-+Other implementations may handle a missing/empty TERM variable differently.
- .SH SEE ALSO
- \fBcurses\fR(3X),
- \fBcurs_kernel\fR(3X),
- \fBcurs_refresh\fR(3X),
- \fBcurs_slk\fR(3X),
-+\fBcurs_terminfo\fR(3X),
- \fBcurs_util\fR(3X),
- \fBcurs_variables\fR(3X).
-Index: man/curs_inopts.3x
-Prereq: 1.15
---- ncurses-5.9/man/curs_inopts.3x 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_inopts.3x 2013-07-20 19:42:02.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2012,2013 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 *
-@@ -26,8 +26,12 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_inopts.3x,v 1.15 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: curs_inopts.3x,v 1.18 2013/07/20 19:42:02 tom Exp $
- .TH curs_inopts 3X ""
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
- .na
- .hy 0
- .SH NAME
-@@ -188,11 +192,13 @@
- plus the additional capability of being able to block for only
- \fIdelay\fR milliseconds (where \fIdelay\fR is positive).
- .PP
--The \fBcurses\fR library does ``line-breakout optimization'' by looking for
--typeahead periodically while updating the screen. If input is found,
--and it is coming from a tty, the current update is postponed until
--\fBrefresh\fR or \fBdoupdate\fR is called again. This allows faster
--response to commands typed in advance. Normally, the input FILE
-+The \fBcurses\fR library does \*(``line-breakout optimization\*(''
-+by looking for typeahead periodically while updating the screen.
-+If input is found, and it is coming from a tty,
-+the current update is postponed until
-+\fBrefresh\fR or \fBdoupdate\fR is called again.
-+This allows faster response to commands typed in advance.
-+Normally, the input FILE
- pointer passed to \fBnewterm\fR, or \fBstdin\fR in the case that
- \fBinitscr\fR was used, will be used to do this typeahead checking.
- The \fBtypeahead\fR routine specifies that the file descriptor
-@@ -223,6 +229,42 @@
- 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
- just after initialization, even if your program remains in cooked mode.
-+.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,
-+e.g., from using the \fB\-x\fP option of @TIC@,
-+then ncurses also defines keys for the capabilities whose names
-+begin with "k".
-+The corresponding keycodes are generated and (depending on previous
-+loads of terminal descriptions) may differ from one execution of a
-+program to the next.
-+The generated keycodes are recognized by the \fBkeyname\fP function
-+(which will then return a name beginning with "k" denoting the
-+terminfo capability name rather than "K", used for curses key-names).
-+On the other hand, an application can use \fBdefine_key\fP to establish
-+a specific keycode for a given string.
-+This makes it possible for an application to check for an extended
-+capability's presence with \fItigetstr\fP,
-+and reassign the keycode to match its own needs.
-+.PP
-+Low-level applications can use \fBtigetstr\fP to obtain the definition
-+of any particular string capability.
-+Higher-level applications which use the curses \fBwgetch\fP
-+and similar functions to return keycodes rely upon the order in which
-+the strings are loaded.
-+If more than one key definition has the same string value,
-+then \fBwgetch\fP can return only one keycode.
-+Most curses implementations (including ncurses)
-+load key definitions in the order
-+defined by the array of string capability names.
-+The last key to be loaded determines the keycode which will be returned.
-+In ncurses, you may also have extended capabilities interpreted as
-+key definitions.
-+These are loaded after the predefined keys,
-+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,
-@@ -233,4 +275,9 @@
- respectively. Mixing raw/noraw and cbreak/nocbreak calls leads to tty driver
- control states that are hard to predict or understand; it is not recommended.
- .SH SEE ALSO
--\fBcurses\fR(3X), \fBcurs_getch\fR(3X), \fBcurs_initscr\fR(3X), \fBtermio\fR(7)
-+\fBcurses\fR(3X),
-+\fBcurs_getch\fR(3X),
-+\fBcurs_initscr\fR(3X),
-+\fBcurs_util\fR(3X),
-+\fBdefine_key\fR(3X),
-+\fBtermio\fR(7)
-Index: man/curs_ins_wstr.3x
-Prereq: 1.6
---- ncurses-5.9/man/curs_ins_wstr.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_ins_wstr.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2002-2010,2012 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_ins_wstr.3x,v 1.6 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_ins_wstr.3x,v 1.7 2012/11/03 23:03:59 tom Exp $
- .TH curs_ins_wstr 3X ""
- .na
- .hy 0
-@@ -92,7 +92,7 @@
- functions will fail.
- XSI does not define what will happen if a nonspacing character follows
- a control character.
--.SH RETURN VALUES
-+.SH RETURN VALUE
- Upon successful completion, these functions return OK.
- Otherwise, they return ERR.
- .PP
-Index: man/curs_inwstr.3x
-Prereq: 1.7
---- ncurses-5.9/man/curs_inwstr.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_inwstr.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2002-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2002-2010,2012 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_inwstr.3x,v 1.7 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_inwstr.3x,v 1.8 2012/11/03 23:03:59 tom Exp $
- .TH curs_inwstr 3X ""
- .SH NAME
- \fBinwstr\fR,
-@@ -72,7 +72,7 @@
- Note that all routines except
- \fBwinnwstr\fR
- may be macros.
--.SH RETURN VALUES
-+.SH RETURN VALUE
- All routines return
- \fBERR\fR
- upon failure. Upon
-Index: man/curs_mouse.3x
-Prereq: 1.38
---- ncurses-5.9/man/curs_mouse.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_mouse.3x 2014-10-10 09:31:18.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2013,2014 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: curs_mouse.3x,v 1.38 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_mouse.3x,v 1.40 2014/10/10 09:31:18 tom Exp $
- .TH curs_mouse 3X ""
- .na
- .hy 0
-@@ -40,20 +40,18 @@
- .ad
- .hy
- .SH SYNOPSIS
--.nf
--\fB#include <curses.h>
-+\fB#include <curses.h>\fR
- .PP
--\fBtypedef unsigned long mmask_t;
-+\fBtypedef unsigned long mmask_t;\fR
- .PP
--typedef struct
--{
-- short id; \fI/* ID to distinguish multiple devices */\fB
-- int x, y, z; \fI/* event coordinates */\fB
-- mmask_t bstate; \fI/* button state bits */\fB
--}
--MEVENT;\fR
-+.nf
-+\fBtypedef struct {\fR
-+\fB short id; \fR\fI/* ID to distinguish multiple devices */\fR
-+\fB int x, y, z; \fR\fI/* event coordinates */\fR
-+\fB mmask_t bstate; \fR\fI/* button state bits */\fR
-+\fB} MEVENT;\fR
- .fi
--.br
-+.PP
- \fBbool has_mouse(void);\fR
- .br
- \fBint getmouse(MEVENT *event);\fR
-@@ -137,7 +135,7 @@
- _
- .TE
- .PP
--Once a class of mouse events have been made visible in a window,
-+Once a class of mouse events has been made visible in a window,
- calling the \fBwgetch\fR function on that window may return
- \fBKEY_MOUSE\fR as an indicator that a mouse event has been queued.
- To read the event data and pop the event off the queue, call
-@@ -285,10 +283,17 @@
- .RS
- \\E[?1000%?%p1%{1}%=%th%el%;
- .RE
-+.PP
- The z member in the event structure is not presently used.
- It is intended
- for use with touch screens (which may be pressure-sensitive) or with
- 3D-mice/trackballs/power gloves.
-+.PP
-+The \fBALL_MOUSE_EVENTS\fP class does not include \fBREPORT_MOUSE_POSITION\fP.
-+They are distinct.
-+For example, in xterm,
-+wheel/scrolling mice send position reports as a sequence of
-+presses of buttons 4 or 5 without matching button-releases.
- .SH BUGS
- Mouse events under xterm will not in fact be ignored during cooked mode,
- if they have been enabled by \fBmousemask\fR.
-Index: man/curs_opaque.3x
-Prereq: 1.9
---- ncurses-5.9/man/curs_opaque.3x 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_opaque.3x 2014-03-15 19:24:23.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2007-2009,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2007-2013,2014 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 *
-@@ -26,8 +26,12 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_opaque.3x,v 1.9 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: curs_opaque.3x,v 1.11 2014/03/15 19:24:23 tom Exp $
- .TH curs_opaque 3X ""
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
- .na
- .hy 0
- .SH NAME
-@@ -74,11 +78,13 @@
- .br
- \fBWINDOW * wgetparent(const WINDOW *win);\fR
- .br
-+\fBint wgetdelay(const WINDOW *win);\fR
-+.br
- \fBint wgetscrreg(const WINDOW *win, int *top, int *bottom);\fR
- .br
- .SH DESCRIPTION
- This implementation provides functions which return properties
--set in the WINDOW structure, allowing it to be ``opaque'' if
-+set in the WINDOW structure, allowing it to be \*(``opaque\*('' if
- the symbol \fBNCURSES_OPAQUE\fR is defined:
- .TP 5
- \fBis_cleared\fR
-@@ -119,12 +125,16 @@
- \fBis_syncok\fR
- returns the value set in \fBsyncok\fR
- .TP 5
-+\fBwgetdelay\fR
-+returns the delay timeout as set in \fBwtimeout\fP.
-+.TP 5
- \fBwgetparent\fR
- returns the parent WINDOW pointer for subwindows,
- or NULL for windows having no parent.
- .TP 5
- \fBwgetscrreg\fR
--returns the top and bottom rows for the scrolling margin as set in \fBwsetscrreg\fP.
-+returns the top and bottom rows for the scrolling margin
-+as set in \fBwsetscrreg\fP.
- .SH RETURN VALUE
- These functions all return TRUE or FALSE, except as noted.
- .SH NOTES
-Index: man/curs_overlay.3x
-Prereq: 1.16
---- ncurses-5.9/man/curs_overlay.3x 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_overlay.3x 2013-04-06 23:48:51.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2013 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_overlay.3x,v 1.16 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: curs_overlay.3x,v 1.17 2013/04/06 23:48:51 tom Exp $
- .TH curs_overlay 3X ""
- .na
- .hy 0
-@@ -48,18 +48,21 @@
- \fBint dmaxcol, int overlay);\fR
- .SH DESCRIPTION
- The \fBoverlay\fR and \fBoverwrite\fR routines overlay \fIsrcwin\fR on
--top of \fIdstwin\fR. \fIscrwin\fR and \fIdstwin\fR are not required
--to be the same size; only text where the two windows overlap is
--copied. The difference is that \fBoverlay\fR is non-destructive
-+top of \fIdstwin\fR.
-+\fIscrwin\fR and \fIdstwin\fR are not required
-+to be the same size; only text where the two windows overlap is copied.
-+The difference is that \fBoverlay\fR is non-destructive
- (blanks are not copied) whereas \fBoverwrite\fR is destructive.
- .PP
- The \fBcopywin\fR routine provides a finer granularity of control over the
--\fBoverlay\fR and \fBoverwrite\fR routines. Like in the \fBprefresh\fR
--routine, a rectangle is specified in the destination window, (\fIdminrow\fR,
-+\fBoverlay\fR and \fBoverwrite\fR routines.
-+As in the \fBprefresh\fR routine,
-+a rectangle is specified in the destination window, (\fIdminrow\fR,
- \fIdmincol\fR) and (\fIdmaxrow\fR, \fIdmaxcol\fR), and the upper-left-corner
--coordinates of the source window, (\fIsminrow\fR, \fIsmincol\fR). If the
--argument \fIoverlay\fR is \fBtrue\fR, then copying is non-destructive, as in
--\fBoverlay\fR.
-+coordinates of the source window, (\fIsminrow\fR, \fIsmincol\fR).
-+If the argument \fIoverlay\fR is \fBtrue\fR,
-+then copying is non-destructive,
-+as in \fBoverlay\fR.
- .SH RETURN VALUE
- Routines that return an integer return \fBERR\fR upon failure, and \fBOK\fR
- (SVr4 only specifies "an integer value other than \fBERR\fR") upon successful
-@@ -75,7 +78,8 @@
- Note that \fBoverlay\fR and \fBoverwrite\fR may be macros.
- .SH PORTABILITY
- The XSI Curses standard, Issue 4 describes these functions (adding the const
--qualifiers). It further specifies their behavior in the presence of characters
-+qualifiers).
-+It further specifies their behavior in the presence of characters
- with multibyte renditions (not yet supported in this implementation).
- .SH SEE ALSO
- \fBcurses\fR(3X), \fBcurs_pad\fR(3X), \fBcurs_refresh\fR(3X)
-Index: man/curs_sp_funcs.3x
-Prereq: 1.5
---- ncurses-5.9/man/curs_sp_funcs.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_sp_funcs.3x 2013-06-22 17:53:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2010,2013 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_sp_funcs.3x,v 1.5 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_sp_funcs.3x,v 1.6 2013/06/22 17:53:59 tom Exp $
- .TH curs_sp_funcs 3X ""
- .na
- .hy 0
-@@ -186,7 +186,7 @@
- .br
- \fBint slk_attrset_sp(SCREEN*, const chtype);\fR
- .br
--\fBint slk_attr_sp((SCREEN*);\fR
-+\fBint slk_attr_sp(SCREEN*);\fR
- .br
- \fBint slk_clear_sp(SCREEN*);\fR
- .br
-Index: man/curs_termcap.3x
-Prereq: 1.26
---- ncurses-5.9/man/curs_termcap.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_termcap.3x 2013-01-19 15:58:48.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2012,2013 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 *
-@@ -26,8 +26,11 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_termcap.3x,v 1.26 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_termcap.3x,v 1.30 2013/01/19 15:58:48 tom Exp $
- .TH curs_termcap 3X ""
-+.de bP
-+.IP \(bu 4
-+..
- .na
- .hy 0
- .ds n 5
-@@ -75,11 +78,39 @@
- routines are emulated using the \fIterminfo\fR database. Thus, they
- can only be used to query the capabilities of entries for which a
- terminfo entry has been compiled.
-+.SS INITIALIZATION
- .PP
- The \fBtgetent\fR routine loads the entry for \fIname\fR.
--It returns 1 on success, 0 if there is no such entry, and \-1 if the
--terminfo database could not be found.
-+It returns:
-+.RS 3
-+.TP 3
-+1
-+on success,
-+.TP 3
-+0
-+if there is no such entry
-+(or that it is a generic type, having too little information for curses
-+applications to run), and
-+.TP 3
-+\-1
-+if the terminfo database could not be found.
-+.RE
-+.PP
-+This differs from the \fItermcap\fP library in two ways:
-+.RS 3
-+.bP
- The emulation ignores the buffer pointer \fIbp\fR.
-+The \fItermcap\fP library would store a copy of the terminal
-+description in the area referenced by this pointer.
-+However, ncurses stores its terminal descriptions in compiled
-+binary form, which is not the same thing.
-+.bP
-+There is a difference in return codes.
-+The \fItermcap\fP library does not check if the terminal
-+description is marked with the \fIgeneric\fP capability,
-+or if the terminal description has cursor-addressing.
-+.RE
-+.SS CAPABILITY VALUES
- .PP
- The \fBtgetflag\fR routine gets the boolean entry for \fIid\fR,
- or zero if it is not available.
-@@ -98,12 +129,14 @@
- \fBtgetflag\fR,
- \fBtgetnum\fR and
- \fBtgetstr\fR are compared in lookups.
-+.SS FORMATTING CAPABILITIES
- .PP
- The \fBtgoto\fR routine instantiates the parameters into the given capability.
- The output from this routine is to be passed to \fBtputs\fR.
- .PP
- The \fBtputs\fR routine is described on the \fBcurs_terminfo\fR(3X) manual
- page. It can retrieve capabilities by either termcap or terminfo name.
-+.SS GLOBAL VARIABLES
- .PP
- The variables
- \fBPC\fR,
-@@ -165,8 +198,28 @@
- e.g., not distinguishing between input and output.
- In particular, some applications are reported to declare and/or
- modify \fBospeed\fR.
-+.PP
-+The comment that only the first two characters of the \fBid\fR 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 \fBtgetstr\fP, \fBtgetnum\fP and \fBtgetflag\fP.
-+Some applications assume that the termcap interface does not require
-+the trailing NUL for the parameter name.
-+Taking into account these issues:
-+.bP
-+As a special case,
-+\fBtgetflag\fP matched against a single-character identifier
-+provided that was at the end of the terminal description.
-+You should not rely upon this behavior in portable programs.
-+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.
- .SH SEE ALSO
- \fBcurses\fR(3X),
- \fBterminfo\fR(\*n),
- \fBterm_variables\fR(3X),
- \fBputc\fR(3).
-+.sp
-+http://invisible-island.net/ncurses/tctest.html
-Index: man/curs_terminfo.3x
-Prereq: 1.35
---- ncurses-5.9/man/curs_terminfo.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_terminfo.3x 2013-07-20 19:29:59.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1999-2011,2013 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 *
-@@ -26,8 +26,15 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_terminfo.3x,v 1.35 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_terminfo.3x,v 1.43 2013/07/20 19:29:59 tom Exp $
- .TH curs_terminfo 3X ""
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
-+.de bP
-+.IP \(bu 4
-+..
- .ds n 5
- .na
- .hy 0
-@@ -77,7 +84,7 @@
- .br
- \fBint vidattr(chtype \fR\fIattrs\fR\fB);\fR
- .br
--\fBint vid_puts(attr_t \fR\fIattrs\fR\fB, short \fR\fIpair\fR\fB, void *\fR\fIopts\fR\fB, int (*\fR\fIputc\fR\fB)(char));\fR
-+\fBint vid_puts(attr_t \fR\fIattrs\fR\fB, short \fR\fIpair\fR\fB, void *\fR\fIopts\fR\fB, int (*\fR\fIputc\fR\fB)(int));\fR
- .br
- \fBint vid_attr(attr_t \fR\fIattrs\fR\fB, short \fR\fIpair\fR\fB, void *\fR\fIopts\fR\fB);\fR
- .br
-@@ -98,40 +105,54 @@
- capabilities, such as programming function keys. For all other
- functionality, \fBcurses\fR routines are more suitable and their use is
- recommended.
-+.SS Initialization
- .PP
- Initially, \fBsetupterm\fR should be called. Note that
- \fBsetupterm\fR is automatically called by \fBinitscr\fR and
- \fBnewterm\fR. This defines the set of terminal-dependent variables
- [listed in \fBterminfo\fR(\*n)].
-+.PP
-+Each initialization routine provides applications with the
-+terminal capabilities either directly (via header definitions),
-+or by special functions.
-+The header files \fBcurses.h\fR and \fBterm.h\fR should be included (in this
-+order) to get the definitions for these strings, numbers, and flags.
-+.PP
- The \fBterminfo\fR variables
- \fBlines\fR and \fBcolumns\fR are initialized by \fBsetupterm\fR as
- follows:
--.RS
--.PP
-+.bP
- If \fBuse_env(FALSE)\fR has been called, values for
- \fBlines\fR and \fBcolumns\fR specified in \fBterminfo\fR are used.
--.PP
-+.bP
- Otherwise, if the environment variables \fBLINES\fR and \fBCOLUMNS\fR
- exist, their values are used. If these environment variables do not
- exist and the program is running in a window, the current window size
- is used. Otherwise, if the environment variables do not exist, the
- values for \fBlines\fR and \fBcolumns\fR specified in the
- \fBterminfo\fR database are used.
--.RE
- .PP
--The header files \fBcurses.h\fR and \fBterm.h\fR should be included (in this
--order) to get the definitions for these strings, numbers, and flags.
- Parameterized strings should be passed through \fBtparm\fR to instantiate them.
- All \fBterminfo\fR strings [including the output of \fBtparm\fR] should be printed
--with \fBtputs\fR or \fBputp\fR. Call the \fBreset_shell_mode\fR to restore the
--tty modes before exiting [see \fBcurs_kernel\fR(3X)]. Programs which use
--cursor addressing should output \fBenter_ca_mode\fR upon startup and should
--output \fBexit_ca_mode\fR before exiting. Programs desiring shell escapes
--should call
--.PP
--\fBreset_shell_mode\fR and output \fBexit_ca_mode\fR before the shell
--is called and should output \fBenter_ca_mode\fR and call
--\fBreset_prog_mode\fR after returning from the shell.
-+with \fBtputs\fR or \fBputp\fR.
-+Call \fBreset_shell_mode\fR to restore the
-+tty modes before exiting [see \fBcurs_kernel\fR(3X)].
-+.PP
-+Programs which use
-+cursor addressing should
-+.bP
-+output \fBenter_ca_mode\fR upon startup and
-+.bP
-+output \fBexit_ca_mode\fR before exiting.
-+.PP
-+Programs which execute shell subprocesses should
-+.bP
-+call \fBreset_shell_mode\fR and
-+output \fBexit_ca_mode\fR before the shell
-+is called and
-+.bP
-+output \fBenter_ca_mode\fR and
-+call \fBreset_prog_mode\fR after returning from the shell.
- .PP
- The \fBsetupterm\fR routine reads in the \fBterminfo\fR database,
- initializing the \fBterminfo\fR structures, but does not set up the
-@@ -146,19 +167,23 @@
- A return value of \fBOK\fR combined with status of \fB1\fR in \fIerrret\fR
- is normal.
- If \fBERR\fR is returned, examine \fIerrret\fR:
--.RS
- .TP 5
- .B 1
- means that the terminal is hardcopy, cannot be used for curses applications.
-+.IP
-+\fBsetupterm\fP determines if the entry is a hardcopy type by
-+checking the \fIhc\fP (\fIhardcopy\fP) capability.
- .TP 5
- .B 0
- means that the terminal could not be found,
- or that it is a generic type,
- having too little information for curses applications to run.
-+.IP
-+\fBsetupterm\fP determines if the entry is a generic type by
-+checking the \fIgn\fP (\fIgeneric\fP) capability.
- .TP 5
- .B \-1
- means that the \fBterminfo\fR database could not be found.
--.RE
- .PP
- If \fIerrret\fR is
- null, \fBsetupterm\fR prints an error message upon finding an error
-@@ -168,18 +193,33 @@
- .sp
- which uses all the defaults and sends the output to \fBstdout\fR.
- .PP
--The \fBsetterm\fR routine is being replaced by \fBsetupterm\fR. The call:
-+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 included here for BSD compatibility, and
-+The \fBsetterm\fR routine is provided for BSD compatibility, and
- is not recommended for new programs.
-+.\" ***************************************************************************
-+.SS The Terminal State
-+.PP
-+The \fBsetupterm\fR routine stores its information about the terminal
-+in a \fBTERMINAL\fP structure pointed to by the global variable \fBcur_term\fP.
-+If it detects an error,
-+or decides that the terminal is unsuitable (hardcopy or generic),
-+it discards this information,
-+making it not available to applications.
-+.PP
-+If \fBsetupterm\fP is called repeatedly for the same terminal type,
-+it will reuse the information.
-+It maintains only one copy of a given terminal's capabilities in memory.
-+If it is called for different terminal types,
-+\fBsetupterm\fP allocates new storage for each set of terminal capabilities.
- .PP
--The \fBset_curterm\fR routine sets the variable \fBcur_term\fR to
-+The \fBset_curterm\fR routine sets \fBcur_term\fR to
- \fInterm\fR, and makes all of the \fBterminfo\fR boolean, numeric, and
--string variables use the values from \fInterm\fR. It returns the old value
--of \fBcur_term\fR.
-+string variables use the values from \fInterm\fR.
-+It returns the old value of \fBcur_term\fR.
- .PP
- The \fBdel_curterm\fR routine frees the space pointed to by
- \fIoterm\fR and makes it available for further use. If \fIoterm\fR is
-@@ -189,11 +229,14 @@
- .PP
- The \fBrestartterm\fR routine is similar to \fBsetupterm\fR and \fBinitscr\fR,
- except that it is called after restoring memory to a previous state (for
--example, when reloading a game saved as a core image dump). It assumes that
--the windows and the input and output options are the same as when memory was
--saved, but the terminal type and baud rate may be different. Accordingly,
--it saves various tty state bits, calls \fBsetupterm\fP,
--and then restores the bits.
-+example, when reloading a game saved as a core image dump).
-+\fBrestartterm\fP assumes that the windows and the input and output options
-+are the same as when memory was saved,
-+but the terminal type and baud rate may be different.
-+Accordingly, \fBrestartterm\fP saves various tty state bits,
-+calls \fBsetupterm\fP, and then restores the bits.
-+.\" ***************************************************************************
-+.SS Formatting Output
- .PP
- The \fBtparm\fR routine instantiates the string \fIstr\fR with
- parameters \fIpi\fR. A pointer is returned to the result of \fIstr\fR
-@@ -202,6 +245,8 @@
- \fBtiparm\fP is a newer form of \fBtparm\fP which uses \fI<stdarg.h>\fP
- rather than a fixed-parameter list.
- Its numeric parameters are integers (int) rather than longs.
-+.\" ***************************************************************************
-+.SS Output Functions
- .PP
- The \fBtputs\fR routine applies padding information to the string
- \fIstr\fR and outputs it. The \fIstr\fR must be a terminfo string
-@@ -235,26 +280,48 @@
- .PP
- The \fBmvcur\fR routine provides low-level cursor motion. It takes
- effect immediately (rather than at the next refresh).
-+.\" ***************************************************************************
-+.SS Terminal Capability Functions
- .PP
- The \fBtigetflag\fR, \fBtigetnum\fR and \fBtigetstr\fR routines return
- the value of the capability corresponding to the \fBterminfo\fR
- \fIcapname\fR passed to them, such as \fBxenl\fR.
-+The \fIcapname\fR for each capability is given in the table column entitled
-+\fIcapname\fR code in the capabilities section of \fBterminfo\fR(\*n).
- .PP
--The \fBtigetflag\fR routine returns the value \fB\-1\fR if
--\fIcapname\fR is not a boolean capability,
--or \fB0\fR if it is canceled or absent from the terminal description.
--.PP
--The \fBtigetnum\fR routine returns the value \fB\-2\fR if
--\fIcapname\fR is not a numeric capability,
--or \fB\-1\fR if it is canceled or absent from the terminal description.
-+These routines return special values to denote errors.
- .PP
--The \fBtigetstr\fR routine returns the value \fB(char *)\-1\fR
-+The \fBtigetflag\fR routine returns
-+.TP
-+\fB\-1\fR
-+if \fIcapname\fR is not a boolean capability,
-+or
-+.TP
-+\fB0\fR
-+if it is canceled or absent from the terminal description.
-+.PP
-+The \fBtigetnum\fR routine returns
-+.TP
-+\fB\-2\fR
-+if \fIcapname\fR is not a numeric capability, or
-+.TP
-+\fB\-1\fR
-+if it is canceled or absent from the terminal description.
-+.PP
-+The \fBtigetstr\fR routine returns
-+.TP
-+\fB(char *)\-1\fR
- if \fIcapname\fR is not a string capability,
--or \fB0\fR if it is canceled or absent from the terminal description.
--.PP
--The \fIcapname\fR for each capability is given in the table column entitled
--\fIcapname\fR code in the capabilities section of \fBterminfo\fR(\*n).
--.sp
-+or
-+.TP
-+\fB0\fR
-+if it is canceled or absent from the terminal description.
-+.\" ***************************************************************************
-+.SS Terminal Capability Names
-+These null-terminated arrays contain
-+the short terminfo names ("codes"),
-+the \fBtermcap\fR names, and the long terminfo names ("fnames")
-+for each of the predefined \fBterminfo\fR variables:
- .RS
- \fBchar *boolnames[]\fR, \fB*boolcodes[]\fR, \fB*boolfnames[]\fR
- .sp
-@@ -262,10 +329,6 @@
- .sp
- \fBchar *strnames[]\fR, \fB*strcodes[]\fR, \fB*strfnames[]\fR
- .RE
--.PP
--These null-terminated arrays contain the \fIcapnames\fR, the
--\fBtermcap\fR codes, and the full C names, for each of the
--\fBterminfo\fR variables.
- .SH RETURN VALUE
- Routines that return an integer return \fBERR\fR upon failure and \fBOK\fR
- (SVr4 only specifies "an integer value other than \fBERR\fR") upon successful
-@@ -275,7 +338,7 @@
- .PP
- X/Open defines no error conditions.
- In this implementation
--.RS
-+.RS 5
- .TP 5
- \fBdel_curterm\fP
- returns an error
-@@ -300,19 +363,41 @@
- X/Open states that \fBtputs\fP ignores the return value
- of the output function \fIputc\fP.
- .RE
--.SH NOTES
--The \fBsetupterm\fR routine should be used in place of \fBsetterm\fR.
--It may be useful when you want to test for terminal capabilities without
--committing to the allocation of storage involved in \fBinitscr\fR.
--.PP
--Note that \fBvidattr\fR and \fBvidputs\fR may be macros.
- .SH PORTABILITY
-+X/Open notes that \fBvidattr\fR and \fBvidputs\fR may be macros.
-+.PP
- The function \fBsetterm\fR is not described by X/Open and must
--be considered non-portable. All other functions are as described by X/Open.
-+be considered non-portable.
-+All other functions are as described by X/Open.
- .PP
- \fBsetupterm\fP copies the terminal name to the array \fBttytype\fP.
- This is not part of X/Open Curses, but is assumed by some applications.
- .PP
-+If configured to use the terminal-driver,
-+e.g., for the MinGW port,
-+.bP
-+\fBsetupterm\fP interprets a missing/empty TERM variable as the
-+special value \*(``unknown\*(''.
-+.bP
-+\fBsetupterm\fP allows explicit use of the
-+the windows console driver by checking if $TERM is set to
-+\*(``#win32con\*('' or an abbreviation of that string.
-+.PP
-+Older versions of \fBncurses\fP assumed that the file descriptor passed to
-+\fBsetupterm\fP from \fBinitscr\fP or \fBnewterm\fP uses buffered I/O,
-+and would write to the corresponding stream.
-+In addition to the limitation that the terminal was left in block-buffered
-+mode on exit (like SystemV curses),
-+it was problematic because \fBncurses\fP
-+did not allow a reliable way to cleanup on receiving SIGTSTP.
-+The current version uses output buffers managed directly by \fBncurses\fP.
-+Some of the low-level functions described in this manual page write
-+to the standard output.
-+They are not signal-safe.
-+The high-level functions in \fBncurses\fP use
-+alternate versions of these functions
-+using the more reliable buffering scheme.
-+.PP
- In System V Release 4, \fBset_curterm\fR has an \fBint\fR return type and
- returns \fBOK\fR or \fBERR\fR. We have chosen to implement the X/Open Curses
- semantics.
-@@ -332,12 +417,12 @@
- zeroes are fine for this purpose.
- .PP
- In response to comments by Thomas E. Dickey,
--X/Open Curses Issue 7 proposed the \fBtiparam\fP function in mid-2009.
-+X/Open Curses Issue 7 proposed the \fBtiparm\fP function in mid-2009.
- .PP
- X/Open notes that after calling \fBmvcur\fR, the curses state may not match the
- actual terminal state, and that an application should touch and refresh
- the window before resuming normal curses calls.
--Both ncurses and System V Release 4 curses implement \fBmvcur\fR using
-+Both \fBncurses\fP and System V Release 4 curses implement \fBmvcur\fR using
- the SCREEN data allocated in either \fBinitscr\fR or \fBnewterm\fR.
- So though it is documented as a terminfo function,
- \fBmvcur\fR is really a curses function which is not well specified.
-@@ -346,8 +431,12 @@
- This implementation allows the caller to use \-1's for the old ordinates.
- In that case, the old location is unknown.
- .PP
--Extended terminal capability names, e.g., as defined by \fBtic\ \-x\fP,
--are not stored in the arrays described in this section.
-+Other implementions may not declare the capability name arrays.
-+Some provide them without declaring them.
-+X/Open does not specify them.
-+.PP
-+Extended terminal capability names, e.g., as defined by \fB@TIC@\ \-x\fP,
-+are not stored in the arrays described here.
- .SH SEE ALSO
- \fBcurses\fR(3X),
- \fBcurs_initscr\fR(3X),
-Index: man/curs_threads.3x
-Prereq: 1.18
---- ncurses-5.9/man/curs_threads.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_threads.3x 2014-03-15 19:25:28.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2008,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2008-2012,2014 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_threads.3x,v 1.18 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_threads.3x,v 1.20 2014/03/15 19:25:28 tom Exp $
- .TH curs_threads 3X ""
- .de bP
- .IP \(bu 4
-@@ -51,9 +51,9 @@
- .br
- \fBint set_tabsize(int size);\fR
- .br
--\fBint use_screen(SCREEN *scr, NCURSES_WINDOW_CB func, void *data);\fR
-+\fBint use_screen(SCREEN *scr, NCURSES_SCREEN_CB func, void *data);\fR
- .br
--\fBint use_window(WINDOW *win, NCURSES_SCREEN_CB func, void *data);\fR
-+\fBint use_window(WINDOW *win, NCURSES_WINDOW_CB func, void *data);\fR
- .br
- .SH DESCRIPTION
- This implementation can be configured to provide rudimentary support
-@@ -540,6 +540,7 @@
- wget_wstr/screen (input-operation)
- wgetbkgrnd/window
- wgetch/screen (input-operation)
-+wgetdelay/window
- wgetn_wstr/screen (input-operation)
- wgetnstr/screen (input-operation)
- wgetparent/window
-Index: man/curs_util.3x
-Prereq: 1.32
---- ncurses-5.9/man/curs_util.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_util.3x 2013-07-20 19:43:45.000000000 +0000
-@@ -1,5 +1,6 @@
-+'\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2012,2013 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 *
-@@ -26,8 +27,12 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_util.3x,v 1.32 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_util.3x,v 1.37 2013/07/20 19:43:45 tom Exp $
- .TH curs_util 3X ""
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
- .de bP
- .IP \(bu 4
- ..
-@@ -44,6 +49,7 @@
- \fBputwin\fR,
- \fBunctrl\fR,
- \fBuse_env\fR,
-+\fBuse_tioctl\fR,
- \fBwunctrl\fR \- miscellaneous \fBcurses\fR utility routines
- .ad
- .hy
-@@ -64,6 +70,8 @@
- .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
-@@ -80,10 +88,12 @@
- The corresponding \fBwunctrl\fR returns a printable representation of
- a wide character.
- .PP
--The \fBkeyname\fR routine returns a character string corresponding to the key \fIc\fR:
-+The \fBkeyname\fR routine returns a character string
-+corresponding to the key \fIc\fR:
- .RS 3
- .bP
--Printable characters are displayed as themselves, e.g., a one-character string containing the key.
-+Printable characters are displayed as themselves,
-+e.g., a one-character string containing the key.
- .bP
- Control characters are displayed in the \fB^\fR\fIX\fR notation.
- .bP
-@@ -123,16 +133,70 @@
- The limitation arises because the \fBfilter\fP routine modifies the
- in-memory copy of the terminal information.
- .PP
--The \fBuse_env\fR routine, if used, is called before \fBinitscr\fR or
--\fBnewterm\fR are called. When called with \fBFALSE\fR as an
--argument, the values of \fBlines\fR and \fBcolumns\fR specified in the
--\fIterminfo\fR database will be used, even if environment variables
--\fBLINES\fR and \fBCOLUMNS\fR (used by default) are set, or if
--\fBcurses\fR is running in a window (in which case default behavior
--would be to use the window size if \fBLINES\fR and \fBCOLUMNS\fR are
--not set).
--Note that setting \fBLINES\fR or \fBCOLUMNS\fR overrides the
--corresponding size which may be obtained from the operating system.
-+The \fBuse_env\fR routine, if used,
-+should be called before \fBinitscr\fR or
-+\fBnewterm\fR are called
-+(because those compute the screen size).
-+It modifies the way \fBncurses\fP treats environment variables
-+when determining the screen size.
-+.bP
-+Normally ncurses looks first at the terminal database for the screen size.
-+.IP
-+If \fBuse_env\fP was called with \fBFALSE\fP for parameter,
-+it stops here unless
-+If \fBuse_tioctl\fP was also called with \fBTRUE\fP for parameter.
-+.bP
-+Then it asks for the screen size via operating system calls.
-+If successful,
-+it overrides the values from the terminal database.
-+.bP
-+Finally (unless \fBuse_env\fP was called with \fBFALSE\fP parameter),
-+ncurses examines the \fBLINES\fR or \fBCOLUMNS\fR environment variables,
-+using a value in those to override the results
-+from the operating system or terminal database.
-+.IP
-+Ncurses also updates the screen size in response to SIGWINCH,
-+unless overridden by the \fBLINES\fR or \fBCOLUMNS\fR environment variables,
-+.PP
-+The \fBuse_tioctl\fR routine, if used,
-+should be called before \fBinitscr\fR or \fBnewterm\fR are called
-+(because those compute the screen size).
-+After \fBuse_tioctl\fR is called with \fBTRUE\fR as an argument,
-+ncurses modifies the last step in its computation of screen size as follows:
-+.bP
-+checks if the \fBLINES\fR and \fBCOLUMNS\fR environment variables
-+are set to a number greater than zero.
-+.bP
-+for each, ncurses updates the corresponding environment variable
-+with the value that it has obtained via operating system call
-+or from the terminal database.
-+.bP
-+ncurses re-fetches the value of the environment variables so that
-+it is still the environment variables which set the screen size.
-+.PP
-+The \fBuse_env\fP and \fBuse_tioctl\fP routines combine as
-+summarized here:
-+.TS
-+center tab(/);
-+l l l
-+_ _ _
-+lw7 lw7 lw40.
-+\fIuse_env\fR/\fIuse_tioctl\fR/\fISummary\fR
-+TRUE/FALSE/T{
-+This is the default behavior.
-+ncurses uses operating system calls
-+unless overridden by $LINES or $COLUMNS environment variables.
-+T}
-+TRUE/TRUE/T{
-+ncurses updates $LINES and $COLUMNS based on operating system calls.
-+T}
-+FALSE/TRUE/T{
-+ncurses ignores $LINES and $COLUMNS, uses operating system calls to obtain size.
-+T}
-+FALSE/FALSE/T{
-+ncurses relies on the terminal database to determine size.
-+T}
-+.TE
- .PP
- The \fBputwin\fR routine writes all data associated with window \fIwin\fR into
- the file to which \fIfilep\fR points. This information can be later retrieved
-@@ -145,7 +209,8 @@
- The \fBdelay_output\fR routine inserts an \fIms\fR millisecond pause
- in output. This routine should not be used extensively because
- padding characters are used rather than a CPU pause.
--If no padding character is specified, this uses \fBnapms\fR to perform the delay.
-+If no padding character is specified,
-+this uses \fBnapms\fR to perform the delay.
- .PP
- The \fBflushinp\fR routine throws away any typeahead that has been typed by the
- user and has not yet been read by the program.
-@@ -183,12 +248,13 @@
- If \fBuse_legacy_coding\fP 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., analogous to ``^@'', ``^A'', C0 controls.
-+Otherwise, it returns \*(``~@\*('', \*(``~A\*('', etc.,
-+analogous to \*(``^@\*('', \*(``^A\*('', C0 controls.
- .IP
- X/Open Curses does not document whether \fBunctrl\fP can be called before
- initializing curses.
- This implementation permits that,
--and returns the ``~@'', etc., values in that case.
-+and returns the \*(``~@\*('', etc., values in that case.
- .bP
- parameter values outside the 0 to 255 range.
- \fBunctrl\fP returns a null pointer.
-@@ -214,17 +280,17 @@
- Likewise, the \fBmeta\fP 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).
-+for \*(``meta\*('' keys (codes in the range 128 to 255).
- Both \fBuse_legacy_coding\fP and \fBmeta\fP 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
-+When treating them as \*(``meta\*('' keys
- (or if \fBkeyname\fP is called before initializing curses),
--this implementation returns strings ``M\-^@'', ``M\-^A'', etc.
-+this implementation returns strings \*(``M\-^@\*('', \*(``M\-^A\*('', etc.
- .PP
- The \fBkeyname\fP function may return the names of user-defined
- string capabilities which are defined in the terminfo entry via the \fB\-x\fP
--option of \fBtic\fP.
-+option of \fB@TIC@\fP.
- This implementation automatically assigns at run-time keycodes to
- user-defined strings which begin with "k".
- The keycodes start at KEY_MAX, but are not guaranteed to be
-@@ -233,8 +299,8 @@
- The \fBuse_extended_names\fP function controls whether this data is
- loaded when the terminal description is read by the library.
- .PP
--The \fBnofilter\fP routine is specific to ncurses.
--It was not supported on Version 7, BSD or System V implementations.
-+The \fBnofilter\fP and \fBuse_tioctl\fP routines are specific to ncurses.
-+They were 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
-Index: man/curs_variables.3x
-Prereq: 1.4
---- ncurses-5.9/man/curs_variables.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_variables.3x 2013-12-21 18:41:32.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2010,2013 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_variables.3x,v 1.4 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_variables.3x,v 1.6 2013/12/21 18:41:32 tom Exp $
- .TH curs_variables 3X ""
- .de bP
- .IP \(bu 4
-@@ -74,7 +74,7 @@
- A more complete description is given in the \fBcurses\fP(3X) manual page.
- .PP
- Depending on the configuration, these may be actual variables,
--or macros (see \fBcurs_threads\fR(3X))
-+or macros (see \fBcurs_threads\fR(3X) and \fBcurs_opaque\fR(3X))
- which provide read-only access to \fIcurses\fP's state.
- In either case, applications should treat them as read-only to avoid
- confusing the library.
-@@ -129,7 +129,8 @@
- not provided in most other implementations of curses.
- .SH SEE ALSO
- \fBcurses\fR(3X),
-+\fBcurs_opaque\fR(3X),
-+\fBcurs_terminfo\fR(3X),
- \fBcurs_threads\fR(3X),
- \fBterm_variables\fR(3X),
--\fBterminfo\fR(3X),
- \fBterminfo\fR(\*n).
-Index: man/curs_window.3x
-Prereq: 1.17
---- ncurses-5.9/man/curs_window.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/curs_window.3x 2014-03-01 23:36:38.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2014 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: curs_window.3x,v 1.17 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: curs_window.3x,v 1.18 2014/03/01 23:36:38 tom Exp $
- .TH curs_window 3X ""
- .na
- .hy 0
-@@ -47,17 +47,20 @@
- .SH SYNOPSIS
- \fB#include <curses.h>\fR
- .sp
--\fBWINDOW *newwin(int nlines, int ncols, int begin_y,\fR
-- \fBint begin_x);\fR
-+\fBWINDOW *newwin(\fR
-+ \fBint nlines, int ncols,\fR
-+ \fBint begin_y, int begin_x);\fR
- .br
- \fBint delwin(WINDOW *win);\fR
- .br
- \fBint mvwin(WINDOW *win, int y, int x);\fR
- .br
--\fBWINDOW *subwin(WINDOW *orig, int nlines, int ncols,\fR
-+\fBWINDOW *subwin(WINDOW *orig,\fR
-+ \fBint nlines, int ncols,\fR
- \fBint begin_y, int begin_x);\fR
- .br
--\fBWINDOW *derwin(WINDOW *orig, int nlines, int ncols,\fR
-+\fBWINDOW *derwin(WINDOW *orig,\fR
-+ \fBint nlines, int ncols,\fR
- \fBint begin_y, int begin_x);\fR
- .br
- \fBint mvderwin(WINDOW *win, int par_y, int par_x);\fR
-@@ -74,53 +77,70 @@
- .br
- .SH DESCRIPTION
- Calling \fBnewwin\fR creates and returns a pointer to a new window with the
--given number of lines and columns. The upper left-hand corner of the window is
--at line \fIbegin\fR_\fIy\fR, column \fIbegin\fR_\fIx\fR. If either
--\fInlines\fR or \fIncols\fR is zero, they default to \fBLINES \-\fR
--\fIbegin\fR_\fIy\fR and \fBCOLS \-\fR \fIbegin\fR_\fIx\fR. A new full-screen
--window is created by calling \fBnewwin(0,0,0,0)\fR.
-+given number of lines and columns.
-+The upper left-hand corner of the window is
-+at
-+.RS
-+line \fIbegin\fR_\fIy\fR,
-+.br
-+column \fIbegin\fR_\fIx\fR
-+.RE
-+.PP
-+If either
-+\fInlines\fR or \fIncols\fR is zero, they default to
-+.RS
-+\fBLINES \-\fR \fIbegin\fR_\fIy\fR and
-+.br
-+\fBCOLS \-\fR \fIbegin\fR_\fIx\fR.
-+.RE
-+.PP
-+A new full-screen window is created by calling \fBnewwin(0,0,0,0)\fR.
- .PP
- Calling \fBdelwin\fR deletes the named window, freeing all memory
- associated with it (it does not actually erase the window's screen
--image). Subwindows must be deleted before the main window can be
--deleted.
-+image).
-+Subwindows must be deleted before the main window can be deleted.
- .PP
- Calling \fBmvwin\fR moves the window so that the upper left-hand
--corner is at position (\fIx\fR, \fIy\fR). If the move would cause the
--window to be off the screen, it is an error and the window is not
--moved. Moving subwindows is allowed, but should be avoided.
-+corner is at position (\fIx\fR, \fIy\fR).
-+If the move would cause the window to be off the screen,
-+it is an error and the window is not moved.
-+Moving subwindows is allowed, but should be avoided.
- .PP
- Calling \fBsubwin\fR creates and returns a pointer to a new window
--with the given number of lines, \fInlines\fR, and columns,
--\fIncols\fR. The window is at position (\fIbegin\fR_\fIy\fR,
--\fIbegin\fR_\fIx\fR) on the screen. (This position is relative to the
--screen, and not to the window \fIorig\fR.) The window is made in the
--middle of the window \fIorig\fR, so that changes made to one window
--will affect both windows. The subwindow shares memory with the window
--\fIorig\fR. When using this routine, it is necessary to call
-+with the given number of lines, \fInlines\fR, and columns, \fIncols\fR.
-+The window is at position (\fIbegin\fR_\fIy\fR,
-+\fIbegin\fR_\fIx\fR) on the screen.
-+The subwindow shares memory with the window \fIorig\fR,
-+so that changes made to one window
-+will affect both windows.
-+When using this routine, it is necessary to call
- \fBtouchwin\fR or \fBtouchline\fR on \fIorig\fR before calling
- \fBwrefresh\fR on the subwindow.
- .PP
- Calling \fBderwin\fR is the same as calling \fBsubwin,\fR except that
- \fIbegin\fR_\fIy\fR and \fIbegin\fR_\fIx\fR are relative to the origin
--of the window \fIorig\fR rather than the screen. There is no
--difference between the subwindows and the derived windows.
-+of the window \fIorig\fR rather than the screen.
-+There is no difference between the subwindows and the derived windows.
- .PP
- Calling \fBmvderwin\fR moves a derived window (or subwindow)
--inside its parent window. The screen-relative parameters of the
--window are not changed. This routine is used to display different
-+inside its parent window.
-+The screen-relative parameters of the window are not changed.
-+This routine is used to display different
- parts of the parent window at the same physical position on the
- screen.
- .PP
- Calling \fBdupwin\fR creates an exact duplicate of the window \fIwin\fR.
- .PP
- Calling \fBwsyncup\fR touches all locations in ancestors of \fIwin\fR that are
--changed in \fIwin\fR. If \fBsyncok\fR is called with second argument
-+changed in \fIwin\fR.
-+If \fBsyncok\fR is called with second argument
- \fBTRUE\fR then \fBwsyncup\fR is called automatically whenever there is a
- change in the window.
- .PP
- The \fBwsyncdown\fR routine touches each location in \fIwin\fR that has been
--touched in any of its ancestor windows. This routine is called by
-+touched in any of its ancestor windows.
-+This routine is called by
- \fBwrefresh\fR, so it should almost never be necessary to call it manually.
- .PP
- The routine \fBwcursyncup\fR updates the current cursor position of all the
-@@ -135,11 +155,18 @@
- .PP
- X/Open defines no error conditions.
- In this implementation
--.RS
- .TP 5
- \fBdelwin\fR
- returns an error if the window pointer is null, or
- if the window is the parent of another window.
-+.TP 5
-+\fBderwin\fP
-+returns an error if the parent window pointer is null, or
-+if any of its ordinates or dimensions is negative, or
-+if the resulting window does not fit inside the parent window.
-+.TP 5
-+\fBdupwin\fP
-+returns an error if the window pointer is null.
- .IP
- This implementation also maintains a list of windows,
- and checks that the pointer passed to \fBdelwin\fP is one that
-@@ -156,10 +183,23 @@
- if the window is really a pad, or
- if some part of the window would be placed off-screen.
- .TP 5
-+\fBnewwin\fP
-+will fail if either of its beginning ordinates is negative, or
-+if either the number of lines or columns is negative.
-+.TP 5
- \fBsyncok\fP
- returns an error
- if the window pointer is null.
--.RE
-+.TP 5
-+\fBsubwin\fP
-+returns an error if the parent window pointer is null, or
-+if any of its ordinates or dimensions is negative, or
-+if the resulting window does not fit inside the parent window.
-+.PP
-+The functions which return a window pointer
-+may also fail if there is insufficient memory for its data structures.
-+Any of these functions will fail if the screen has not been initialized,
-+i.e., with \fBinitscr\fP or \fBnewterm\fP.
- .SH NOTES
- If many small changes are made to the window, the \fBwsyncup\fR option could
- degrade performance.
-@@ -171,11 +211,12 @@
- incompletely implemented, and not well tested.
- .PP
- The System V curses documentation is very unclear about what \fBwsyncup\fR
--and \fBwsyncdown\fR actually do. It seems to imply that they are only
-+and \fBwsyncdown\fR actually do.
-+It seems to imply that they are only
- supposed to touch exactly those lines that are affected by ancestor changes.
- The language here, and the behavior of the \fBcurses\fR implementation,
--is patterned on the XPG4 curses standard. The weaker XPG4 spec may result
--in slower updates.
-+is patterned on the XPG4 curses standard.
-+The weaker XPG4 spec may result in slower updates.
- .SH PORTABILITY
- The XSI Curses standard, Issue 4 describes these functions.
- .SH SEE ALSO
-Index: man/form.3x
-Prereq: 1.24
---- ncurses-5.9/man/form.3x 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/form.3x 2014-08-16 20:31:45.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2014 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: form.3x,v 1.24 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: form.3x,v 1.25 2014/08/16 20:31:45 tom Exp $
- .TH form 3X ""
- .SH NAME
- \fBform\fR \- curses extension for programming forms
-@@ -189,9 +189,6 @@
- .TP 5
- .B E_UNKNOWN_COMMAND
- The form driver code saw an unknown request code.
--.SH SEE ALSO
--\fBcurses\fR(3X) and related pages whose names begin "form_" for detailed
--descriptions of the entry points.
- .SH NOTES
- The header file \fB<form.h>\fR automatically includes the header files
- \fB<curses.h>\fR and \fB<eti.h>\fR.
-@@ -206,5 +203,8 @@
- Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric
- S. Raymond.
- .SH SEE ALSO
-+\fBcurses\fR(3X) and related pages whose names begin "form_" for detailed
-+descriptions of the entry points.
-+.PP
- This describes \fBncurses\fR
- version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
-Index: man/form_field.3x
-Prereq: 1.10
---- ncurses-5.9/man/form_field.3x 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/form_field.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2012 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: form_field.3x,v 1.10 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: form_field.3x,v 1.11 2012/11/03 23:03:59 tom Exp $
- .TH form_field 3X ""
- .SH NAME
- \fBform_field\fR \- make and break connections between fields and forms
-@@ -52,7 +52,7 @@
- .PP
- The function \fBmove_field\fR moves the given field (which must be disconnected)
- to a specified location on the screen.
--.SH RETURN VALUES
-+.SH RETURN VALUE
- The function \fBform_fields\fR returns a pointer (which may be \fBNULL\fR).
- It does not set errno.
- .PP
-Index: man/form_field_opts.3x
-Prereq: 1.16
---- ncurses-5.9/man/form_field_opts.3x 2010-12-04 18:41:07.000000000 +0000
-+++ ncurses-5.9-20141206/man/form_field_opts.3x 2014-07-26 21:21:57.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2014 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: form_field_opts.3x,v 1.16 2010/12/04 18:41:07 tom Exp $
-+.\" $Id: form_field_opts.3x,v 1.17 2014/07/26 21:21:57 tom Exp $
- .TH form_field_opts 3X ""
- .SH NAME
- \fBform_field_opts\fR \- set and get field options
-@@ -54,42 +54,47 @@
- .PP
- The function \fBfield_opts\fR returns the field's current option bits.
- .PP
--The following options are defined (all are on by default):
--.TP 5
--O_VISIBLE
--The field is displayed. If this option is off, display of the field is
--suppressed.
-+The following standard options are defined (all are on by default):
- .TP 5
- O_ACTIVE
- The field is visited during processing. If this option is off, the field will
- not be reachable by navigation keys. Please notice that an invisible field
- appears to be inactive also.
- .TP 5
--O_PUBLIC
--The field contents are displayed as data is entered.
--.TP 5
--O_EDIT
--The field can be edited.
--.TP 5
--O_WRAP
--Words that do not fit on a line are wrapped to the next line. Words are
--blank-separated.
-+O_AUTOSKIP
-+Skip to the next field when this one fills.
- .TP 5
- O_BLANK
- The field is cleared whenever a character is entered at the first position.
- .TP 5
--O_AUTOSKIP
--Skip to the next field when this one fills.
-+O_EDIT
-+The field can be edited.
- .TP 5
- O_NULLOK
- Allow a blank field.
- .TP 5
-+O_PASSOK
-+Validate field only if modified by user.
-+.TP 5
-+O_PUBLIC
-+The field contents are displayed as data is entered.
-+.TP 5
- O_STATIC
- Field buffers are fixed to field's original size.
- Turn this option off to create a dynamic field.
- .TP 5
--O_PASSOK
--Validate field only if modified by user.
-+O_VISIBLE
-+The field is displayed. If this option is off, display of the field is
-+suppressed.
-+.TP 5
-+O_WRAP
-+Words that do not fit on a line are wrapped to the next line. Words are
-+blank-separated.
-+.PP
-+One extension option is defined (extensions are off by default):
-+.TP 5
-+O_DYNAMIC_JUSTIFY
-+Permit dynamic fields to be justified, like static fields.
- .SH RETURN VALUE
- Except for \fBfield_opts\fR, each routine returns one of the following:
- .TP 5
-@@ -105,7 +110,9 @@
- .B E_SYSTEM_ERROR
- System error occurred (see \fBerrno\fR).
- .SH SEE ALSO
--\fBcurses\fR(3X), \fBform\fR(3X).
-+\fBcurses\fR(3X),
-+\fBform\fR(3X).
-+\fBform_field_just\fR(3X).
- .SH NOTES
- The header file \fB<form.h>\fR automatically includes the header file
- \fB<curses.h>\fR.
-Index: man/form_variables.3x
-Prereq: 1.3
---- ncurses-5.9/man/form_variables.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/form_variables.3x 2013-06-22 17:58:32.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2010,2013 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: form_variables.3x,v 1.3 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: form_variables.3x,v 1.4 2013/06/22 17:58:32 tom Exp $
- .TH form_variables 3X ""
- .ds n 5
- .na
-@@ -45,7 +45,6 @@
- .SH SYNOPSIS
- .nf
- \fB#include <form.h>\fR
--.br
- .PP
- \fBFIELDTYPE * TYPE_ALNUM;\fR
- \fBFIELDTYPE * TYPE_ALPHA;\fR
-@@ -54,7 +53,6 @@
- \fBFIELDTYPE * TYPE_IPV4;\fR
- \fBFIELDTYPE * TYPE_NUMERIC;\fR
- \fBFIELDTYPE * TYPE_REGEXP;\fR
--.br
- .fi
- .SH DESCRIPTION
- These are building blocks for the form library,
-Index: man/infocmp.1m
-Prereq: 1.46
---- ncurses-5.9/man/infocmp.1m 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/infocmp.1m 2014-03-29 23:18:29.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2013,2014 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,9 +27,12 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: infocmp.1m,v 1.46 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: infocmp.1m,v 1.54 2014/03/29 23:18:29 tom Exp $
- .TH @INFOCMP@ 1M ""
- .ds n 5
-+.de bP
-+.IP \(bu 4
-+..
- .ds d @TERMINFO@
- .SH NAME
- \fB@INFOCMP@\fR \- compare or print out \fIterminfo\fR descriptions
-@@ -37,10 +40,12 @@
- \fB@INFOCMP@\fR [\fB\-\
- 1\
- C\
-+D\
- E\
- F\
- G\
- I\
-+K\
- L\
- T\
- U\
-@@ -69,32 +74,40 @@
- \fB@INFOCMP@\fR can be used to compare a binary \fBterminfo\fR entry with other
- terminfo entries, rewrite a \fBterminfo\fR description to take advantage of the
- \fBuse=\fR terminfo field, or print out a \fBterminfo\fR description from the
--binary file (\fBterm\fR) in a variety of formats. In all cases, the boolean
-+binary file (\fBterm\fR) 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.
- .SS Default Options
- If no options are specified and zero or one \fItermnames\fR are specified, the
--\fB\-I\fR option will be assumed. If more than one \fItermname\fR is specified,
-+\fB\-I\fR option will be assumed.
-+If more than one \fItermname\fR is specified,
- the \fB\-d\fR option will be assumed.
- .SS Comparison Options [\-d] [\-c] [\-n]
- \fB@INFOCMP@\fR compares the \fBterminfo\fR description of the first terminal
- \fItermname\fR with each of the descriptions given by the entries for the other
--terminal's \fItermnames\fR. If a capability is defined for only one of the
-+terminal's \fItermnames\fR.
-+If a capability is defined for only one of the
- terminals, the value returned will depend on the type of the capability:
- \fBF\fR for boolean variables, \fB\-1\fR for integer variables, and \fBNULL\fR
- for string variables.
- .PP
- The \fB\-d\fR option produces a list of each capability that is different
--between two entries. This option is useful to show the difference between two
-+between two entries.
-+This option is useful to show the difference between two
- entries, created by different people, for the same or similar terminals.
- .PP
- The \fB\-c\fR option produces a list of each capability that is common between
--two entries. Capabilities that are not set are ignored. This option can be
-+two or more entries.
-+Capabilities that are not set are ignored.
-+This option can be
- used as a quick check to see if the \fB\-u\fR option is worth using.
- .PP
--The \fB\-n\fR option produces a list of each capability that is in neither
--entry. If no \fItermnames\fR are given, the environment variable \fBTERM\fR
--will be used for both of the \fItermnames\fR. This can be used as a quick
-+The \fB\-n\fR option produces a list of each capability that is in none of
-+the given entries.
-+If no \fItermnames\fR are given, the environment variable \fBTERM\fR
-+will be used for both of the \fItermnames\fR.
-+This can be used as a quick
- check to see if anything was left out of a description.
- .SS Source Listing Options [\-I] [\-L] [\-C] [\-r]
- The \fB\-I\fR, \fB\-L\fR, and \fB\-C\fR options will produce a source listing for
-@@ -107,6 +120,7 @@
- \fB\-L\fR/use the long C variable name listed in <\fBterm.h\fR>
- \fB\-C\fR/use the \fBtermcap\fR names
- \fB\-r\fR/when using \fB\-C\fR, put out all capabilities in \fBtermcap\fR form
-+\fB\-K\fR/modifies the \fB\-C\fP option, improving BSD-compatibility.
- .TE
- .PP
- If no \fItermnames\fR are given, the environment variable \fBTERM\fR will be
-@@ -114,26 +128,48 @@
- .PP
- The source produced by the \fB\-C\fR option may be used directly as a
- \fBtermcap\fR entry, but not all parameterized strings can be changed to
--the \fBtermcap\fR format. \fB@INFOCMP@\fR will attempt to convert most of the
-+the \fBtermcap\fR format.
-+\fB@INFOCMP@\fR will attempt to convert most of the
- parameterized information, and anything not converted will be plainly marked in
--the output and commented out. These should be edited by hand.
-+the output and commented out.
-+These should be edited by hand.
-+.PP
-+For best results when converting to \fBtermcap\fP format,
-+you should use both \fB\-C\fP and \fB\-r\fP.
-+Normally a termcap description is limited to 1023 bytes.
-+@INFOCMP@ trims away less essential parts to make it fit.
-+If you are converting to one of the (rare) termcap implementations
-+which accept an unlimited size of termcap,
-+you may want to add the \fB\-T\fP option.
-+More often however, you must help the termcap implementation,
-+and trim excess whitespace (use the \fB\-0\fP option for that).
- .PP
- All padding information for strings will be collected together and placed
--at the beginning of the string where \fBtermcap\fR expects it. Mandatory
-+at the beginning of the string where \fBtermcap\fR expects it.
-+Mandatory
- padding (padding information with a trailing '/') will become optional.
- .PP
- All \fBtermcap\fR variables no longer supported by \fBterminfo\fR, but which
--are derivable from other \fBterminfo\fR variables, will be output. Not all
-+are derivable from other \fBterminfo\fR variables, will be output.
-+Not all
- \fBterminfo\fR capabilities will be translated; only those variables which were
--part of \fBtermcap\fR will normally be output. Specifying the \fB\-r\fR option
-+part of \fBtermcap\fR will normally be output.
-+Specifying the \fB\-r\fR option
- will take off this restriction, allowing all capabilities to be output in
- \fItermcap\fR form.
-+Normally you would use both the \fB\-C\fP and \fB\-r\fP options.
-+The actual format used incorporates some improvements for escaped characters
-+from terminfo format.
-+For a stricter BSD-compatible translation, use the \fB\-K\fR option
-+rather than \fB\-C\fP.
- .PP
- Note that because padding is collected to the beginning of the capability, not
--all capabilities are output. Mandatory padding is not supported. Because
-+all capabilities are output.
-+Mandatory padding is not supported.
-+Because
- \fBtermcap\fR strings are not as flexible, it is not always possible to convert
--a \fBterminfo\fR string capability into an equivalent \fBtermcap\fR format. A
--subsequent conversion of the \fBtermcap\fR file back into \fBterminfo\fR format
-+a \fBterminfo\fR string capability into an equivalent \fBtermcap\fR format.
-+A subsequent conversion of the \fBtermcap\fR file back into \fBterminfo\fR format
- will not necessarily reproduce the original \fBterminfo\fR
- source.
- .PP
-@@ -156,27 +192,33 @@
- .SS Use= Option [\-u]
- The \fB\-u\fR option produces a \fBterminfo\fR source description of the first
- terminal \fItermname\fR which is relative to the sum of the descriptions given
--by the entries for the other terminals \fItermnames\fR. It does this by
-+by the entries for the other terminals \fItermnames\fR.
-+It does this by
- analyzing the differences between the first \fItermname\fR and the other
- \fItermnames\fR and producing a description with \fBuse=\fR 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 exist, but
-+other terminals.
-+In this manner, it is possible to retrofit generic terminfo
-+entries into a terminal's description.
-+Or, if two similar terminals exist, but
- were coded at different times or by different people so that each description
- 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
- 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
-+value for it.
-+A capability's value gets 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.
- .PP
--The order of the other \fItermname\fR entries is significant. Since the
--terminfo compiler \fBtic\fR does a left-to-right scan of the capabilities,
-+The order of the other \fItermname\fR entries is significant.
-+Since the
-+terminfo compiler \fB@TIC@\fR does a left-to-right scan of the capabilities,
- specifying two \fBuse=\fR entries that contain differing entries for the same
- capabilities will produce different results depending on the order that the
--entries are given in. \fB@INFOCMP@\fR will flag any such inconsistencies between
-+entries are given in.
-+\fB@INFOCMP@\fR will flag any such inconsistencies between
- the other \fItermname\fR entries as they are found.
- .PP
- Alternatively, specifying a capability \fIafter\fR a \fBuse=\fR entry that
-@@ -187,29 +229,48 @@
- .PP
- Another error that does not cause incorrect compiled files, but will slow down
- the compilation time, is specifying extra \fBuse=\fR fields that are
--superfluous. \fB@INFOCMP@\fR will flag any other \fItermname use=\fR fields that
-+superfluous.
-+\fB@INFOCMP@\fR will flag any other \fItermname use=\fR fields that
- were not needed.
- .SS Changing Databases [\-A \fIdirectory\fR] [\-B \fIdirectory\fR]
--The location of the compiled \fBterminfo\fR database is taken from the
--environment variable \fBTERMINFO\fR . If the variable is not defined, or the
--terminal is not found in that location, the system \fBterminfo\fR database,
--in \fB@TERMINFO@\fR, will be used. The options \fB\-A\fR
--and \fB\-B\fR may be used to override this location. The \fB\-A\fR option will
--set \fBTERMINFO\fR for the first \fItermname\fR and the \fB\-B\fR option will
--set \fBTERMINFO\fR for the other \fItermnames\fR. With this, it is possible to
-+Like other \fBncurses\fP utilities,
-+@INFOCMP@ looks for the terminal descriptions in several places.
-+You can use the \fBTERMINFO\fP and \fBTERMINFO_DIRS\fP environment variables
-+to override the compiled-in default list of places to search
-+(see \fBcurses\fP(3X) for details).
-+.PP
-+You can also use the options \fB\-A\fR
-+and \fB\-B\fR to override the list of places to search
-+when comparing terminal descriptions:
-+.bP
-+The \fB\-A\fR option sets the location for the first \fItermname\fR
-+.bP
-+The \fB\-B\fR option sets the location for the other \fItermnames\fR.
-+.PP
-+Using these options, it is possible to
- compare descriptions for a terminal with the same name located in two different
--databases. This is useful for comparing descriptions for the same terminal
-+databases.
-+For instance,
-+you can use this feature for comparing descriptions for the same terminal
- created by different people.
- .SS Other Options
- .TP 5
-+\fB\-0\fR
-+causes the fields to be printed on one line, without wrapping.
-+.TP 5
- \fB\-1\fR
--causes the fields to be printed out one to a line. Otherwise,
-+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 characters.
- .TP
- \fB\-a\fR
- tells \fB@INFOCMP@\fP to retain commented-out capabilities rather than discarding
--them. Capabilities are commented by prefixing them with a period.
-+them.
-+Capabilities are commented by prefixing them with a period.
-+.TP
-+\fB\-D\fR
-+tells \fB@INFOCMP@\fP to print the database locations that it knows about, and exit.
- .TP 5
- \fB\-E\fR
- Dump the capabilities of the given terminal as tables, needed in
-@@ -231,12 +292,15 @@
- for a given terminal type.
- .TP 5
- \fB\-F\fR
--compare terminfo files. This assumes that two following arguments are
--filenames. The files are searched for pairwise matches between
-+compare terminfo files.
-+This assumes that two following arguments are filenames.
-+The files are searched for pairwise matches between
- entries, with two entries considered to match if any of their names do.
- The report printed to standard output lists entries with no matches in
--the other file, and entries with more than one match. For entries
--with exactly one match it includes a difference report. Normally,
-+the other file, and entries with more than one match.
-+For entries
-+with exactly one match it includes a difference report.
-+Normally,
- to reduce the volume of the report, use references are
- not resolved before looking for differences, but resolution can be forced
- by also specifying \fB\-r\fR.
-@@ -255,14 +319,17 @@
- .TP 5
- \fB\-i\fR
- Analyze the initialization (\fBis1\fR, \fBis2\fR, \fBis3\fR), and reset
--(\fBrs1\fR, \fBrs2\fR, \fBrs3\fR), strings in the entry. For each string, the
-+(\fBrs1\fR, \fBrs2\fR, \fBrs3\fR), strings in the entry.
-+For each string, the
- code tries to analyze it into actions in terms of the other capabilities in the
- entry, certain X3.64/ISO 6429/ECMA\-48 capabilities, and certain DEC VT-series
- private modes (the set of recognized special sequences has been selected for
--completeness over the existing terminfo database). Each report line consists
-+completeness over the existing terminfo database).
-+Each report line consists
- of the capability name, followed by a colon and space, followed by a printable
- expansion of the capability string with sections matching recognized actions
--translated into {}-bracketed descriptions. Here is a list of the DEC/ANSI
-+translated into {}-bracketed descriptions.
-+Here is a list of the DEC/ANSI
- special sequences recognized:
- i.
- .TS
-@@ -308,8 +375,9 @@
- .sp
- It also recognizes a SGR action corresponding to ANSI/ISO 6429/ECMA Set
- Graphics Rendition, with the values NORMAL, BOLD, UNDERLINE, BLINK, and
--REVERSE. All but NORMAL may be prefixed with `+' (turn on) or `\-' (turn off).
--.PP
-+REVERSE.
-+All but NORMAL may be prefixed with `+' (turn on) or `\-' (turn off).
-+.IP
- An SGR0 designates an empty highlight sequence (equivalent to {SGR:NORMAL}).
- .TP 5
- \fB\-l\fR
-@@ -323,12 +391,15 @@
- "\-" for absent capabilities, "@" for canceled rather than "NULL".
- .TP 5
- \fB\-R\fR\fIsubset\fR
--Restrict output to a given subset. This option is for use with archaic
-+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 variants such as AIX
--that have their own extensions incompatible with SVr4/XSI. Available terminfo
-+that have their own extensions incompatible with SVr4/XSI.
-+Available terminfo
- subsets are "SVr1", "Ultrix", "HP", and "AIX"; see \fBterminfo\fR(\*n) for
--details. You can also choose the subset "BSD" which selects only capabilities
-+details.
-+You can also choose the subset "BSD" which selects only capabilities
- with termcap equivalents recognized by 4.4BSD.
- .TP
- \fB\-s \fR\fI[d|i|l|c]\fR
-@@ -362,7 +433,7 @@
- descriptions are limited (e.g., 1023 for termcap, 4096 for terminfo).
- .TP
- \fB\-t\fR
--tells \fBtic\fP to discard commented-out capabilities.
-+tells \fB@TIC@\fP to discard commented-out capabilities.
- Normally when translating from terminfo to termcap,
- untranslatable capabilities are commented-out.
- .TP 5
-@@ -385,13 +456,15 @@
- \fB\-x\fR
- print information for user-defined capabilities.
- These are extensions to the terminfo repertoire which can be loaded
--using the \fB\-x\fR option of \fBtic\fP.
-+using the \fB\-x\fR option of \fB@TIC@\fP.
- .SH FILES
- .TP 20
- \*d
- Compiled terminal description database.
- .SH EXTENSIONS
- The
-+\fB\-0\fR,
-+\fB\-1\fR,
- \fB\-E\fR,
- \fB\-F\fR,
- \fB\-G\fR,
-@@ -410,7 +483,8 @@
- options are not supported in SVr4 curses.
- .PP
- The \fB\-r\fR 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
-+Actual BSD curses versions will have a more restricted set.
-+To see only the
- 4.4BSD set, use \fB\-r\fR \fB\-RBSD\fR.
- .SH BUGS
- The \fB\-F\fR option of \fB@INFOCMP@\fR(1M) should be a \fB@TOE@\fR(1M) mode.
-@@ -421,6 +495,8 @@
- \fB@TOE@\fR(1M),
- \fBcurses\fR(3X),
- \fBterminfo\fR(\*n).
-+.sp
-+http://invisible-island.net/ncurses/tctest.html
- .PP
- This describes \fBncurses\fR
- version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
-Index: man/manhtml.aliases
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/man/manhtml.aliases 2013-12-21 21:44:52.000000000 +0000
-@@ -0,0 +1,16 @@
-+# $Id: manhtml.aliases,v 1.1 2013/12/21 21:44:52 tom Exp $
-+# Items in this list will be linked to the corresponding manpages by man2html
-+addch(3X) curs_addch(3X)
-+delscreen(3X) curs_initscr(3X)
-+filter(3X) curs_util(3X)
-+form_fieldtype(3X) form_fieldtype(3X)
-+getch(3X) curs_getch(3X)
-+infocmp(1) infocmp(1M)
-+initscr(3X) curs_initscr(3X)
-+newterm(3X) curs_initscr(3X)
-+set_fieldtype(3X) form_fieldtype(3X)
-+set_term(3X) curs_initscr(3X)
-+setupterm(3X) curs_terminfo(3X)
-+tic(1) tic(1M)
-+use_env(3X) curs_util(3X)
-+vidputs(3X) curs_terminfo(3X)
-Index: man/manhtml.externs
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/man/manhtml.externs 2013-12-21 22:11:29.000000000 +0000
-@@ -0,0 +1,24 @@
-+# $Id: manhtml.externs,v 1.3 2013/12/21 22:11:29 tom Exp $
-+# Items in this list will not be linked by man2html
-+conflict(1)
-+csh(1)
-+ded(1)
-+environ(7)
-+getty(1)
-+nvi(1)
-+printf(3)
-+profile(5)
-+putc(3)
-+putwc(3)
-+read(2)
-+rogue(1)
-+scanf(3)
-+sh(1)
-+sscanf(3)
-+stdio(3)
-+stty(1)
-+system(3)
-+termio(7)
-+tty(4)
-+ttys(5)
-+wcwidth(3)
-Index: man/menu.3x
-Prereq: 1.21
---- ncurses-5.9/man/menu.3x 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/menu.3x 2014-08-16 20:32:08.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2014 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: menu.3x,v 1.21 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: menu.3x,v 1.22 2014/08/16 20:32:08 tom Exp $
- .TH menu 3X ""
- .SH NAME
- \fBmenu\fR \- curses extension for programming menus
-@@ -166,9 +166,6 @@
- .TP 5
- .B E_UNKNOWN_COMMAND
- The menu driver code saw an unknown request code.
--.SH SEE ALSO
--\fBcurses\fR(3X) and related pages whose names begin "menu_" for detailed
--descriptions of the entry points.
- .SH NOTES
- The header file \fB<menu.h>\fR automatically includes the header files
- \fB<curses.h>\fR and \fB<eti.h>\fR.
-@@ -183,5 +180,8 @@
- Juergen Pfeifer. Manual pages and adaptation for ncurses by Eric
- S. Raymond.
- .SH SEE ALSO
-+\fBcurses\fR(3X) and related pages whose names begin "menu_" for detailed
-+descriptions of the entry points.
-+.PP
- This describes \fBncurses\fR
- version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
-Index: man/menu_items.3x
-Prereq: 1.9
---- ncurses-5.9/man/menu_items.3x 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/menu_items.3x 2012-11-03 23:03:59.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2012 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: menu_items.3x,v 1.9 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: menu_items.3x,v 1.10 2012/11/03 23:03:59 tom Exp $
- .TH menu_items 3X ""
- .SH NAME
- \fBmenu_items\fR \- make and break connections between items and menus
-@@ -47,7 +47,7 @@
- The function \fBmenu_items\fR returns the item array of the given menu.
- .PP
- The function \fBitem_count\fR returns the count of items in \fImenu\fR.
--.SH RETURN VALUES
-+.SH RETURN VALUE
- The function \fBmenu_items\fR returns a pointer (which may be \fBNULL\fR).
- It does not set errno.
- .PP
-Index: man/ncurses.3x
-Prereq: 1.103
---- ncurses-5.9/man/ncurses.3x 2011-02-05 23:21:29.000000000 +0000
-+++ ncurses-5.9-20141206/man/ncurses.3x 2014-08-09 20:54:30.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2013,2014 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,9 +27,13 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: ncurses.3x,v 1.103 2011/02/05 23:21:29 tom Exp $
-+.\" $Id: ncurses.3x,v 1.119 2014/08/09 20:54:30 tom Exp $
- .hy 0
- .TH ncurses 3X ""
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
- .de bP
- .IP \(bu 4
- ..
-@@ -43,7 +47,7 @@
- .SH DESCRIPTION
- The \fBncurses\fR library routines give the user a terminal-independent method
- of updating character screens with reasonable optimization.
--This implementation is ``new curses'' (ncurses) and
-+This implementation is \*(``new curses\*('' (ncurses) and
- is the approved replacement for
- 4.4BSD classic curses, which has been discontinued.
- This describes \fBncurses\fR
-@@ -55,8 +59,10 @@
- XSI stands for X/Open System Interfaces Extension.
- The \fBncurses\fR library is freely redistributable in source form.
- Differences from the SVr4
--curses are summarized under the \fBEXTENSIONS\fP and \fBPORTABILITY\fP sections below and
--described in detail in the respective \fBEXTENSIONS\fP, \fBPORTABILITY\fP and \fBBUGS\fP sections
-+curses are summarized under the
-+\fBEXTENSIONS\fP and \fBPORTABILITY\fP sections below and
-+described in detail in the respective
-+\fBEXTENSIONS\fP, \fBPORTABILITY\fP and \fBBUGS\fP sections
- of individual man pages.
- .PP
- The \fBncurses\fR library also provides many useful extensions,
-@@ -108,9 +114,9 @@
- .sp
- Before a \fBcurses\fR 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 \fBtput init\fR command
-+This can be done by executing the \fB@TPUT@ init\fR command
- after the shell environment variable \fBTERM\fR has been exported.
--\fBtset(1)\fR is usually responsible for doing this.
-+\fB@TSET@(1)\fR is usually responsible for doing this.
- [See \fBterminfo\fR(\*n) for further details.]
- .PP
- The \fBncurses\fR library permits manipulation of data structures,
-@@ -637,6 +643,7 @@
- use_env/\fBcurs_util\fR(3X)
- use_extended_names/\fBcurs_extend\fR(3X)*
- use_legacy_coding/\fBlegacy_coding\fR(3X)*
-+use_tioctl/\fBcurs_util\fR(3X)
- vid_attr/\fBcurs_terminfo\fR(3X)
- vid_puts/\fBcurs_terminfo\fR(3X)
- vidattr/\fBcurs_terminfo\fR(3X)
-@@ -734,9 +741,16 @@
- integer value other than \fBERR\fR upon successful completion, unless
- otherwise noted in the routine descriptions.
- .PP
-+As a general rule, routines check for null pointers passed as parameters,
-+and handle this as an error.
-+.PP
- All macros return the value of the \fBw\fR version, except \fBsetscrreg\fR,
- \fBwsetscrreg\fR, \fBgetyx\fR, \fBgetbegyx\fR, and \fBgetmaxyx\fR.
--The return values of \fBsetscrreg\fR, \fBwsetscrreg\fR, \fBgetyx\fR, \fBgetbegyx\fR, and
-+The return values of
-+\fBsetscrreg\fR,
-+\fBwsetscrreg\fR,
-+\fBgetyx\fR,
-+\fBgetbegyx\fR, and
- \fBgetmaxyx\fR are undefined (i.e., these should not be used as the
- right-hand side of assignment statements).
- .PP
-@@ -746,24 +760,24 @@
- runtime behavior of the \fBncurses\fR library.
- The most important ones have been already discussed in detail.
- .TP 5
--BAUDRATE
--The debugging library checks this environment symbol when the application
--has redirected output to a file.
--The symbol's numeric value is used for the baudrate.
--If no value is found, \fBncurses\fR uses 9600.
--This allows testers to construct repeatable test-cases
--that take into account costs that depend on baudrate.
--.TP 5
- CC
- When set, change occurrences of the command_character
- (i.e., the \fBcmdch\fP capability)
--of the loaded terminfo entries to the value of this symbol.
-+of the loaded terminfo entries to the value of this variable.
- Very few terminfo entries provide this feature.
- .IP
- Because this name is also used in development environments to represent
- the C compiler's name, \fBncurses\fR ignores it if it does not happen to
- be a single character.
- .TP 5
-+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, \fBncurses\fR uses 9600.
-+This allows testers to construct repeatable test-cases
-+that take into account costs that depend on baudrate.
-+.TP 5
- COLUMNS
- Specify the width of the screen in characters.
- Applications running in a windowing environment usually are able to
-@@ -786,7 +800,9 @@
- a terminal description for terminals which are run as emulations.
- .IP
- Use the \fBuse_env\fR function to disable all use of external environment
--(including system calls) to determine the screen size.
-+(but not including system calls) to determine the screen size.
-+Use the \fBuse_tioctl\fR function to update \fBCOLUMNS\fP or \fBLINES\fP
-+to match the screen size obtained from system calls or the terminal database.
- .TP 5
- ESCDELAY
- Specifies the total time, in milliseconds, for which ncurses will
-@@ -837,8 +853,8 @@
- .br
- 3 = middle.
- .sp
--This symbol lets you customize the mouse.
--The symbol must be three numeric digits 1\-3 in any order, e.g., 123 or 321.
-+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 specified, \fBncurses\fR uses 132.
- .TP 5
- NCURSES_ASSUMED_COLORS
-@@ -852,6 +868,17 @@
- To make it green-on-black, set it to "2,0".
- Any positive value from zero to the terminfo \fBmax_colors\fR value is allowed.
- .TP 5
-+NCURSES_CONSOLE2
-+This applies only to the MinGW port of ncurses.
-+.IP
-+The \fBConsole2\fP program's handling of the Microsoft Console API call
-+\fBCreateConsoleScreenBuffer\fP 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 \fBNCGDB\fP has the same effect.
-+.TP 5
- NCURSES_GPM_TERMS
- This applies only to ncurses configured to use the GPM interface.
- .IP
-@@ -871,7 +898,7 @@
- Set this environment variable to disable the feature.
- You can also adjust your \fBstty\fP settings to avoid the problem.
- .TP 5
--NCURSES_NO_MAGIC_COOKIES
-+NCURSES_NO_MAGIC_COOKIE
- 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
-@@ -899,19 +926,44 @@
- You may wish to use these descriptions,
- but not want to pay the performance penalty.
- .IP
--Set the NCURSES_NO_PADDING symbol to disable all but mandatory
-+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 \fIflash\fR.
- .TP 5
- NCURSES_NO_SETBUF
--Normally \fBncurses\fR enables buffered output during terminal initialization.
--This is done (as in SVr4 curses) for performance reasons.
-+This setting is obsolete.
-+Before changes
-+.RS
-+.bP
-+started with 5.9 patch 20120825
-+and
-+.bP
-+continued
-+though 5.9 patch 20130126
-+.RE
-+.IP
-+\fBncurses\fR enabled buffered output during terminal initialization.
-+This was done (as in SVr4 curses) for performance reasons.
- For testing purposes, both of \fBncurses\fR and certain applications,
--this feature is made optional.
-+this feature was made optional.
- Setting the NCURSES_NO_SETBUF variable
--disables output buffering, leaving the output in the original (usually
-+disabled output buffering, leaving the output in the original (usually
- line buffered) mode.
-+.IP
-+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.
-+.IP
-+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 \fBputp\fP still use the
-+standard output.
-+But high-level curses calls do not.
- .TP 5
- NCURSES_NO_UTF8_ACS
- During initialization, the \fBncurses\fR library
-@@ -933,20 +985,22 @@
- .IP
- As an alternative to the environment variable,
- ncurses checks for an extended terminfo capability \fBU8\fP.
--This is a numeric capability which can be compiled using \fBtic\ \-x\fP.
-+This is a numeric capability which can be compiled using \fB@TIC@\ \-x\fP.
- For example
- .RS 5
-+.ft CW
- .sp
- .nf
- # linux console, if patched to provide working
- # VT100 shift-in/shift-out, with corresponding font.
- linux-vt100|linux console with VT100 line-graphics,
-- U8#0, use=linux,
-+ U8#0, use=linux,
- .sp
- # uxterm with vt100Graphics resource set to false
- xterm-utf8|xterm relying on UTF-8 line-graphics,
-- U8#1, use=xterm,
-+ U8#1, use=xterm,
- .fi
-+.ft
- .RE
- .IP
- The name "U8" is chosen to be two characters,
-@@ -955,7 +1009,7 @@
- .TP 5
- NCURSES_TRACE
- During initialization, the \fBncurses\fR debugging library
--checks the NCURSES_TRACE symbol.
-+checks the NCURSES_TRACE environment variable.
- If it is defined, to a numeric value, \fBncurses\fR calls the \fBtrace\fR
- function, using that value as the argument.
- .IP
-@@ -967,15 +1021,31 @@
- TERM
- Denotes your terminal type.
- Each terminal type is distinct, though many are similar.
-+.IP
-+\fBTERM\fP 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.
-+.IP
-+If you set \fBTERM\fP 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 (\fBxterm\fP being a rare exception),
-+terminal emulators which allow you to
-+specify \fBTERM\fP as a parameter or configuration value do
-+not change their behavior to match that setting.
- .TP 5
- TERMCAP
- If the \fBncurses\fR library has been configured with \fItermcap\fR
- support, \fBncurses\fR will check for a terminal's description in
- termcap form if it is not available in the terminfo database.
- .IP
--The TERMCAP symbol contains either a terminal description (with
-+The TERMCAP environment variable contains either a terminal description (with
- newlines stripped out),
--or a file name telling where the information denoted by the TERM symbol exists.
-+or a file name telling where the information denoted by
-+the TERM environment variable exists.
- In either case, setting it directs \fBncurses\fR to ignore
- the usual place for this information, e.g., /etc/termcap.
- .TP 5
-@@ -988,33 +1058,51 @@
- .bP
- the last directory to which \fBncurses\fR wrote, if any, is searched first
- .bP
--the directory specified by the TERMINFO symbol
-+the directory specified by the TERMINFO environment variable
- .bP
- $HOME/.terminfo
- .bP
--directories listed in the TERMINFO_DIRS symbol
-+directories listed in the TERMINFO_DIRS environment variable
- .bP
- one or more directories whose names are configured and compiled into the
--ncurses library, e.g.,
--@TERMINFO@
-+ncurses library, i.e.,
-+.RS
-+.bP
-+@TERMINFO_DIRS@ (corresponding to the TERMINFO_DIRS variable)
-+.bP
-+@TERMINFO@ (corresponding to the TERMINFO variable)
-+.RE
- .RE
- .TP 5
- TERMINFO_DIRS
- Specifies a list of directories to search for terminal descriptions.
- The list is separated by colons (i.e., ":") on Unix, semicolons on OS/2 EMX.
--All of the terminal descriptions are in terminfo form, which makes
--a subdirectory named for the first letter of the terminal names therein.
-+.IP
-+All of the terminal descriptions are in terminfo form.
-+Normally these are stored in a directory tree,
-+using subdirectories named by the first letter of the terminal names therein.
-+.IP
-+If \fBncurses\fP is built with a hashed database,
-+then each entry in this list can also be the path of the corresponding
-+database file.
-+.IP
-+If \fBncurses\fP is built with a support for reading termcap files
-+directly, then an entry in this list may be the path of a termcap file.
- .TP 5
- TERMPATH
- If TERMCAP does not hold a file name then \fBncurses\fR checks
--the TERMPATH symbol.
--This is a list of filenames separated by spaces or colons (i.e., ":") on Unix, semicolons on OS/2 EMX.
--If the TERMPATH symbol is not set, \fBncurses\fR looks in the files
-+the TERMPATH environment variable.
-+This is a list of filenames separated by spaces or colons (i.e., ":") on Unix,
-+semicolons on OS/2 EMX.
-+.IP
-+If the TERMPATH environment variable is not set,
-+\fBncurses\fR looks in the files
- /etc/termcap, /usr/share/misc/termcap and $HOME/.termcap, in that order.
- .PP
- The library may be configured to disregard the following variables when the
- current user is the superuser (root), or if the application uses setuid or
- setgid permissions:
-+.IP
- $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
- .SH ALTERNATE CONFIGURATIONS
- Several different configurations are possible,
-@@ -1042,8 +1130,9 @@
- to build executables.
- .TP 5
- \-\-enable\-widec
--The configure script renames the library and (if the \fB\-\-disable\-overwrite\fP
--option is used) puts the header files in a different subdirectory.
-+The configure script renames the library and
-+(if the \fB\-\-disable\-overwrite\fP 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
- .RS
-@@ -1068,6 +1157,16 @@
- to allow applications to be built using either library
- from the same set of headers.
- .TP 5
-+\-\-with\-pthread
-+The configure script renames the library.
-+All of the library names have a "t" appended to them
-+(before any "w" added by \fB\-\-enable\-widec\fP).
-+.IP
-+The global variables such as \fBLINES\fP 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 changes to work with this convention.
-+.TP 5
- \-\-with\-shared
- .TP
- \-\-with\-normal
-@@ -1093,8 +1192,8 @@
- @TERMINFO@
- terminal capability database
- .SH SEE ALSO
--\fBterminfo\fR(\*n) and related pages whose names begin "curs_" for detailed routine
--descriptions.
-+\fBterminfo\fR(\*n) and related pages whose names begin
-+"curs_" for detailed routine descriptions.
- .br
- \fBcurs_variables\fR(3X)
- .SH EXTENSIONS
-@@ -1144,6 +1243,15 @@
- the XSI Curses and \fBncurses\fR calls) are described in \fBPORTABILITY\fR
- sections of the library man pages.
- .PP
-+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.
-+.PP
- This implementation also contains several extensions:
- .bP
- The routine \fBhas_key\fR is not part of XPG4, nor is it present in SVr4.
-Index: man/resizeterm.3x
-Prereq: 1.14
---- ncurses-5.9/man/resizeterm.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/resizeterm.3x 2013-06-22 20:41:54.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2012,2013 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 *
-@@ -26,9 +26,9 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" Author: Thomas E. Dickey 1996-2005
-+.\" Author: Thomas E. Dickey 1996-on
- .\"
--.\" $Id: resizeterm.3x,v 1.14 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: resizeterm.3x,v 1.17 2013/06/22 20:41:54 tom Exp $
- .TH resizeterm 3X ""
- .SH NAME
- \fBis_term_resized\fR,
-@@ -48,7 +48,8 @@
- primarily for use by programs running in an X Window terminal (e.g., xterm).
- The function \fBresizeterm\fR resizes the standard and current windows
- to the specified dimensions, and adjusts other bookkeeping data used by
--the \fBncurses\fR library that record the window dimensions.
-+the \fBncurses\fR library that record the window dimensions
-+such as the \fBLINES\fP and \fBCOLS\fP variables.
- .LP
- Most of the work is done by the inner function \fBresize_term\fR.
- The outer function \fBresizeterm\fR adds bookkeeping for the SIGWINCH handler.
-@@ -64,7 +65,7 @@
- can check if the \fBresize_term\fR function would modify the window structures.
- It returns TRUE if the windows would be modified, and FALSE otherwise.
- .SH RETURN VALUE
--Except as notes, these function return
-+Except as noted, these functions return
- the integer \fBERR\fR upon failure and \fBOK\fR 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 memory for the windows.
-@@ -75,7 +76,7 @@
- since it uses those functions.
- .PP
- If ncurses is configured to supply its own SIGWINCH handler,
--the \fBresizeterm\fR function ungetch's a \fBKEY_RESIZE\fR which
-+the \fBresizeterm\fR function \fBungetch\fP's a \fBKEY_RESIZE\fR which
- will be read on the next call to \fBgetch\fR.
- This is used to alert an application that the screen size has changed,
- and that it should repaint special features such as pads that cannot
-@@ -86,9 +87,8 @@
- the operating system.
- Thus, even if a SIGWINCH is received,
- no screen size change may be recorded.
--In that case, no \fBKEY_RESIZE\fP is queued for the next call to \fBgetch\fP;
--an \fBERR\fP will be returned instead.
- .SH SEE ALSO
-+\fBcurs_getch\fR(3X),
- \fBcurs_variables\fR(3X),
- \fBwresize\fR(3X).
- .SH AUTHOR
-Index: man/tabs.1
-Prereq: 1.8
---- ncurses-5.9/man/tabs.1 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/tabs.1 2013-06-22 18:11:57.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2008-2011,2013 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 *
-@@ -26,19 +26,18 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: tabs.1,v 1.8 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: tabs.1,v 1.11 2013/06/22 18:11:57 tom Exp $
- .TH @TABS@ 1 ""
- .ds n 5
- .SH NAME
--\fBtabs\fR \- set tabs on a terminal
-+\fB@TABS@\fR \- set tabs on a terminal
- .SH SYNOPSIS
--\fBtabs\fR [\fB\-v\fR[\fIn\fR]] [\fB\-ahuUV\fR] \fIfile...\fR
--.br
-+\fB@TABS@\fR [\fIoptions\fR]] \fI[tabstop-list]\fR
- .SH DESCRIPTION
- .PP
--The \fBtabs\fP program clears and sets tab-stops on the terminal.
-+The \fB@TABS@\fP program clears and sets tab-stops on the terminal.
- This uses the terminfo \fIclear_all_tabs\fP and \fIset_tab\fP capabilities.
--If either is absent, \fBtabs\fP is unable to clear/set tab-stops.
-+If either is absent, \fB@TABS@\fP is unable to clear/set tab-stops.
- The terminal should be configured to use hard tabs, e.g.,
- .sp
- .RS
-@@ -48,8 +47,8 @@
- .SS General Options
- .TP 5
- .BI \-T "name"
--Tell \fBtabs\fP which terminal type to use.
--If this option is not given, \fBtabs\fP will use the \fB$TERM\fP
-+Tell \fB@TABS@\fP which terminal type to use.
-+If this option is not given, \fB@TABS@\fP will use the \fB$TERM\fP
- environment variable.
- If that is not set, it will use the \fIansi+tabs\fP entry.
- .TP 5
-@@ -59,10 +58,13 @@
- The second data line shows the actual tab-stops, marked with asterisks.
- .TP 5
- .B \-n
--This option tells \fBtabs\fP to check the options and run any debugging
-+This option tells \fB@TABS@\fP to check the options and run any debugging
- option, but not to modify the terminal settings.
-+.TP
-+\fB\-V\fR
-+reports the version of ncurses which was used in this program, and exits.
- .PP
--The \fBtabs\fP program processes a single list of tab stops.
-+The \fB@TABS@\fP program processes a single list of tab stops.
- The last option to be processed which defines a list is the one that
- determines the list to be processed.
- .SS Implicit Lists
-Index: man/term.7
-Prereq: 1.22
---- ncurses-5.9/man/term.7 2010-12-04 18:41:07.000000000 +0000
-+++ ncurses-5.9-20141206/man/term.7 2011-12-17 23:32:17.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2007,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2011 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: term.7,v 1.22 2010/12/04 18:41:07 tom Exp $
-+.\" $Id: term.7,v 1.23 2011/12/17 23:32:17 tom Exp $
- .TH term 7
- .ds n 5
- .ds d @TERMINFO@
-@@ -55,7 +55,7 @@
- are in fact using a VT100-superset console, 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. The \fBtset\fP(1) utility may be of assistance;
-+taste in your shell profile. The \fB@TSET@\fP(1) utility may be of assistance;
- you can give it a set of rules for deducing or requesting a terminal type based
- on the tty device and baud rate.
- .PP
-Index: man/term_variables.3x
-Prereq: 1.2
---- ncurses-5.9/man/term_variables.3x 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/term_variables.3x 2013-12-21 22:17:39.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 2011,2013 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 *
-@@ -26,7 +26,7 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: term_variables.3x,v 1.2 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: term_variables.3x,v 1.4 2013/12/21 22:17:39 tom Exp $
- .TH term_variables 3X ""
- .ds n 5
- .na
-@@ -110,7 +110,7 @@
- Alternatively, one can save the return value from \fBnewterm\fP
- or \fBsetupterm\fP to reuse in \fBset_term\fP.
- .SS Terminfo Names
--The \fBtic\fP(1) and \fBinfocmp\fP(1) programs use lookup tables for
-+The \fB@TIC@\fP(1) and \fB@INFOCMP@\fP(1) programs use lookup tables for
- the long and short names of terminfo capabilities,
- as well as the corresponding names for termcap capabilities.
- These are available to other applications,
-@@ -134,7 +134,10 @@
- On initialization of the curses or terminfo interfaces,
- \fBsetupterm\fP copies the terminal name to the array \fBttytype\fP.
- .SH NOTES
--The low-level terminfo interface is initialized using \fBsetupterm\fR(3X).
-+The low-level terminfo interface is initialized using
-+.hy 0
-+\fBsetupterm\fR(3X).
-+.hy
- The upper-level curses interface uses the low-level terminfo interface,
- internally.
- .SH PORTABILITY
-@@ -146,8 +149,9 @@
- Some implementations provide the variables in their libraries,
- but omit them from the header files.
- .SH SEE ALSO
-+.hy 0
- \fBcurses\fR(3X),
- \fBcurs_terminfo\fR(3X),
- \fBcurs_threads\fR(3X),
--\fBterminfo\fR(3X),
- \fBterminfo\fR(\*n).
-+.hy
-Index: man/terminfo.head
-Prereq: 1.18
---- ncurses-5.9/man/terminfo.head 2010-07-31 16:08:48.000000000 +0000
-+++ ncurses-5.9-20141206/man/terminfo.head 2013-03-09 22:11:36.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2012,2013 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 *
-@@ -26,10 +26,17 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: terminfo.head,v 1.18 2010/07/31 16:08:48 tom Exp $
-+.\" $Id: terminfo.head,v 1.21 2013/03/09 22:11:36 tom Exp $
- .TH terminfo 5 "" "" "File Formats"
- .ds n 5
- .ds d @TERMINFO@
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
-+.de bP
-+.IP \(bu 4
-+..
- .SH NAME
- terminfo \- terminal capability data base
- .SH SYNOPSIS
-@@ -74,7 +81,7 @@
- Terminal names (except for the last, verbose entry) should
- be chosen using the following conventions.
- The particular piece of hardware making up the terminal should
--have a root name, thus ``hp2621''.
-+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.
-@@ -102,6 +109,6 @@
- .TE
- .PP
- For more on terminal naming conventions, see the \fBterm(7)\fR manual page.
--.SS Capabilities
-+.SS Predefined Capabilities
- .\" Head of terminfo man page ends here
- .ps -1
-Index: man/terminfo.tail
-Prereq: 1.53
---- ncurses-5.9/man/terminfo.tail 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/terminfo.tail 2013-11-09 15:20:48.000000000 +0000
-@@ -1,8 +1,51 @@
--.\" $Id: terminfo.tail,v 1.53 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: terminfo.tail,v 1.68 2013/11/09 15:20:48 tom Exp $
- .\" Beginning of terminfo.tail file
- .\" This file is part of ncurses.
- .\" See "terminfo.head" for copyright.
- .ps +1
-+.SS User-Defined Capabilities
-+.
-+The preceding section listed the \fIpredefined\fP 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.
-+.PP
-+\fBncurses\fP addresses this limitation by allowing user-defined capabilities.
-+The \fB@TIC@\fP and \fB@INFOCMP@\fP programs provide
-+the \fB\-x\fP option for this purpose.
-+When \fB\-x\fP is set,
-+\fB@TIC@\fP treats unknown capabilities as user-defined.
-+That is, if \fB@TIC@\fP 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 \fBuse_extended_names\fP function makes this information
-+conditionally available to applications.
-+The ncurses library provides the data leaving most of the behavior
-+to applications:
-+.bP
-+User-defined capability strings whose name begins
-+with \*(``k\*('' are treated as function keys.
-+.bP
-+The types (boolean, number, string) determined by \fB@TIC@\fP
-+can be inferred by successful calls on \fBtigetflag\fP, etc.
-+.bP
-+If the capability name happens to be two characters,
-+the capability is also available through the termcap interface.
-+.PP
-+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.
- .
- .SS A Sample Entry
- .
-@@ -10,42 +53,54 @@
- of what a \fBterminfo\fR entry for a modern terminal typically looks like.
- .PP
- .nf
--.in -2
--.ta .3i
- .ft CW
- \s-2ansi|ansi/pc-term compatible with color,
-- mc5i,
-- colors#8, ncv#3, pairs#64,
-- cub=\\E[%p1%dD, cud=\\E[%p1%dB, cuf=\\E[%p1%dC,
-- cuu=\\E[%p1%dA, dch=\\E[%p1%dP, dl=\\E[%p1%dM,
-- ech=\\E[%p1%dX, el1=\\E[1K, hpa=\\E[%p1%dG, ht=\\E[I,
-- ich=\\E[%p1%d@, il=\\E[%p1%dL, indn=\\E[%p1%dS, .indn=\\E[%p1%dT,
-- kbs=^H, kcbt=\\E[Z, kcub1=\\E[D, kcud1=\\E[B,
-- kcuf1=\\E[C, kcuu1=\\E[A, kf1=\\E[M, kf10=\\E[V,
-- kf11=\\E[W, kf12=\\E[X, kf2=\\E[N, kf3=\\E[O, kf4=\\E[P,
-- kf5=\\E[Q, kf6=\\E[R, kf7=\\E[S, kf8=\\E[T, kf9=\\E[U,
-- kich1=\\E[L, mc4=\\E[4i, mc5=\\E[5i, nel=\\r\\E[S,
-- op=\\E[37;40m, rep=%p1%c\\E[%p2%{1}%\-%db,
-- rin=\\E[%p1%dT, s0ds=\\E(B, s1ds=\\E)B, s2ds=\\E*B,
-- s3ds=\\E+B, 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}%=%t3%e%p1%d%;m,
-- sgr=\\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p8%t;11%;%?%p9%t;12%;m,
-- sgr0=\\E[0;10m, tbc=\\E[2g, u6=\\E[%d;%dR, u7=\\E[6n,
-- u8=\\E[?%[;0123456789]c, u9=\\E[c, vpa=\\E[%p1%dd,\s+2
--.in +2
-+ am, mc5i, mir, msgr,
-+ colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64,
-+ acsc=+\\020\\,\\021-\\030.^Y0\\333`\\004a\\261f\\370g\\361h\\260
-+ j\\331k\\277l\\332m\\300n\\305o~p\\304q\\304r\\304s_t\\303
-+ u\\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,
-+ cr=^M, 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,
-+ dl=\\E[%p1%dM, dl1=\\E[M, ech=\\E[%p1%dX, ed=\\E[J, el=\\E[K,
-+ el1=\\E[1K, home=\\E[H, hpa=\\E[%i%p1%dG, ht=\\E[I, hts=\\EH,
-+ ich=\\E[%p1%d@, il=\\E[%p1%dL, il1=\\E[L, ind=^J,
-+ indn=\\E[%p1%dS, invis=\\E[8m, kbs=^H, kcbt=\\E[Z, kcub1=\\E[D,
-+ kcud1=\\E[B, kcuf1=\\E[C, kcuu1=\\E[A, khome=\\E[H, kich1=\\E[L,
-+ mc4=\\E[4i, mc5=\\E[5i, nel=\\r\\E[S, op=\\E[39;49m,
-+ rep=%p1%c\\E[%p2%{1}%-%db, rev=\\E[7m, rin=\\E[%p1%dT,
-+ rmacs=\\E[10m, rmpch=\\E[10m, rmso=\\E[m, rmul=\\E[m,
-+ s0ds=\\E(B, s1ds=\\E)B, s2ds=\\E*B, s3ds=\\E+B,
-+ 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%;
-+ %?%p6%t;1%;
-+ %?%p7%t;8%;
-+ %?%p9%t;11%;m,
-+ sgr0=\\E[0;10m, smacs=\\E[11m, smpch=\\E[11m, smso=\\E[7m,
-+ 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,
- .fi
- .ft R
- .PP
- 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 ``#''.
-+Comments may be included on lines beginning with \*(``#\*(''.
- Capabilities in
- .I terminfo
- are of three types:
-+.bP
- Boolean capabilities which indicate that the terminal has
--some particular feature, numeric capabilities giving the size of the terminal
--or the size of particular delays, and string
-+some particular feature,
-+.bP
-+numeric capabilities giving the size of the terminal
-+or the size of particular delays, and
-+.bP
-+string
- capabilities, which give a sequence which can be used to perform particular
- terminal operations.
- .PP
-@@ -58,15 +113,15 @@
- (i.e., an automatic return and line-feed
- when the end of a line is reached) is indicated by the capability \fBam\fR.
- Hence the description of ansi includes \fBam\fR.
--Numeric capabilities are followed by the character `#' and then a positive value.
-+Numeric capabilities are followed by the character \*(``#\*('' and then a positive value.
- Thus \fBcols\fR, which indicates the number of columns the terminal has,
--gives the value `80' for ansi.
-+gives the 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).
- .PP
- Finally, string valued capabilities, such as \fBel\fR (clear to end of line
--sequence) are given by the two-character code, an `=', and then a string
--ending at the next following `,'.
-+sequence) are given by the two-character code, an \*(``=\*('', and then a string
-+ending at the next following \*(``,\*(''.
- .PP
- A number of escape sequences are provided in the string valued capabilities
- for easy encoding of characters there.
-@@ -75,14 +130,29 @@
- \fB^x\fR maps to a control-x for any appropriate x, and the sequences
- \fB\en \el \er \et \eb \ef \es\fR give
- a newline, line-feed, return, tab, backspace, form-feed, and space.
--Other escapes include \fB\e^\fR for \fB^\fR,
-+Other escapes include
-+.bP
-+\fB\e^\fR for \fB^\fR,
-+.bP
- \fB\e\e\fR for \fB\e\fR,
-+.bP
- \fB\e\fR, for comma,
-+.bP
- \fB\e:\fR for \fB:\fR,
-+.bP
- and \fB\e0\fR for null.
--(\fB\e0\fR will produce \e200, which does not terminate a string but behaves
-+.IP
-+\fB\e0\fR will produce \e200, which does not terminate a string but behaves
- as a null character on most terminals, providing CS7 is specified.
--See stty(1).)
-+See stty(1).
-+.IP
-+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.
-+.PP
- Finally, characters may be given as three octal digits after a \fB\e\fR.
- .PP
- A delay in milliseconds may appear anywhere in a string capability, enclosed in
-@@ -90,8 +160,8 @@
- .I tputs
- to provide this delay.
- The delay must be a number with at most one decimal
--place of precision; it may be followed by suffixes `*' or '/' or both.
--A `*'
-+place of precision; it may be followed by suffixes \*(``*\*('' or \*(``/\*('' or both.
-+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.
-@@ -100,7 +170,7 @@
- .IR lines
- affected.) Normally, padding is advisory if the device has the \fBxon\fR
- capability; it is used for cost computation but does not trigger delays.
--A `/'
-+A \*(``/\*(''
- suffix indicates that the padding is mandatory and forces a delay of the given
- number of milliseconds even on devices for which \fBxon\fR is present to
- indicate flow control.
-@@ -115,27 +185,36 @@
- .PP
- .SS Fetching Compiled Descriptions
- .PP
-+The \fBncurses\fP 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,
-+\fBncurses\fP eliminates duplicates in its search list.
-+.bP
- 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.
--.PP
--If TERMINFO is not set, the \fBncurses\fR version of the terminfo reader code
--will instead look in the directory \fB$HOME/.terminfo\fR
-+Only that directory is searched.
-+.bP
-+If TERMINFO is not set,
-+\fBncurses\fR will instead look in the directory \fB$HOME/.terminfo\fR
- for a compiled description.
--If it fails to find one there, and the environment variable TERMINFO_DIRS is
--set, it will interpret the contents of that variable as a list of colon-
--separated directories to be searched (an empty entry is interpreted as a
--command to search \fI\*d\fR).
--If no description is found in any of the
--TERMINFO_DIRS directories, the fetch fails.
--.PP
--If neither TERMINFO nor TERMINFO_DIRS is set, the last place tried will be the
--system terminfo directory, \fI\*d\fR.
--.PP
--(Neither the \fB$HOME/.terminfo\fR lookups nor TERMINFO_DIRS extensions are
--supported under stock System V terminfo/curses.)
--.PP
-+.bP
-+Next, if the environment variable TERMINFO_DIRS is set,
-+\fBncurses\fR will interpret the contents of that variable
-+as a list of colon-separated directories (or database files) to be searched.
-+.IP
-+An empty directory name (i.e., if the variable begins or ends
-+with a colon, or contains adacent colons)
-+is interpreted as the system location \fI\*d\fR.
-+.bP
-+Finally, \fBncurses\fP searches these compiled-in locations:
-+.RS
-+.bP
-+a list of directories (@TERMINFO_DIRS@), and
-+.bP
-+the system terminfo directory, \fI\*d\fR (the compiled-in default).
-+.RE
- .SS Preparing Descriptions
- .PP
- We now outline how to prepare descriptions of terminals.
-@@ -154,7 +233,7 @@
- .PP
- To get the padding for insert line right (if the terminal manufacturer
- did not document it) a severe test is to edit a large file at 9600 baud,
--delete 16 or so lines from the middle of the screen, then hit the `u'
-+delete 16 or so lines from the middle of the screen, then hit the \*(``u\*(''
- key several times quickly.
- If the terminal messes up, more padding is usually needed.
- A similar test can be used for insert character.
-@@ -198,7 +277,7 @@
- and
- .BR cud1 .
- These local cursor motions should not alter the text they pass over,
--for example, you would not normally use `\fBcuf1\fP=\ ' because the
-+for example, you would not normally use \*(``\fBcuf1\fP=\ \*('' because the
- space would erase the character moved over.
- .PP
- A very important point here is that the local cursor motions encoded
-@@ -275,9 +354,10 @@
- .ft CW
- .\".in -2
- \s-133\||\|tty33\||\|tty\||\|model 33 teletype,
-- bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os,\s+1
-+ bel=^G, cols#72, cr=^M, cud1=^J, hc, ind=^J, os,\s+1
- .\".in +2
- .ft R
-+.fi
- .PP
- while the Lear Siegler \s-1ADM-3\s0 is described as
- .PP
-@@ -286,8 +366,8 @@
- .ft CW
- .\".in -2
- \s-1adm3\||\|3\||\|lsi adm3,
-- am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J,
-- ind=^J, lines#24,\s+1
-+ am, bel=^G, clear=^Z, cols#80, cr=^M, cub1=^H, cud1=^J,
-+ ind=^J, lines#24,\s+1
- .\".in +2
- .ft R
- .fi
-@@ -296,9 +376,8 @@
- .PP
- Cursor addressing and other strings requiring parameters
- in the terminal are described by a
--parameterized string capability, with
--.IR printf (3)
--like escapes \fB%x\fR in it.
-+parameterized string capability,
-+with \fIprintf\fP-like escapes such as \fI%x\fR in it.
- For example, to address the cursor, the
- .B cup
- capability is given, using two parameters:
-@@ -321,34 +400,34 @@
- The \fB%\fR encodings have the following meanings:
- .PP
- .TP 5
--\s-1%%
--outputs `%'
-+\fB%%\fP
-+outputs \*(``%\*(''
- .TP
--%\fI[[\fP:\fI]flags][width[.precision]][\fPdoxXs\fI]\fP
--as in \fBprintf\fP, flags are [\-+#] and space.
--Use a `:' to allow the next character to be a `\-' flag,
-+\fB%\fP\fI[[\fP:\fI]flags][width[.precision]][\fP\fBdoxXs\fP\fI]\fP
-+as in \fBprintf\fP, flags are \fI[\-+#]\fP and \fIspace\fP.
-+Use a \*(``:\*('' to allow the next character to be a \*(``\-\*('' flag,
- avoiding interpreting "%\-" as an operator.
- .TP
--%c
-+\f(CW%c\fP
- print pop() like %c in \fBprintf\fP
- .TP
--%s
-+\fB%s\fP
- print pop() like %s in \fBprintf\fP
- .TP
--%p[1\-9]
-+\fB%p\fP\fI[1\-9]\fP
- push \fIi\fP'th parameter
- .TP
--%P[a\-z]
--set dynamic variable [a\-z] to pop()
-+\fB%P\fP\fI[a\-z]\fP
-+set dynamic variable \fI[a\-z]\fP to pop()
- .TP
--%g[a\-z]
--get dynamic variable [a\-z] and push it
-+\fB%g\fP\fI[a\-z]/\fP
-+get dynamic variable \fI[a\-z]\fP and push it
- .TP
--%P[A\-Z]
--set static variable [a\-z] to pop()
-+\fB%P\fP\fI[A\-Z]\fP
-+set static variable \fI[a\-z]\fP to \fIpop()\fP
- .TP
--%g[A\-Z]
--get static variable [a\-z] and push it
-+\fB%g\fP\fI[A\-Z]\fP
-+get static variable \fI[a\-z]\fP and push it
- .IP
- The terms "static" and "dynamic" are misleading.
- Historically, these are simply two different sets of variables,
-@@ -356,48 +435,48 @@
- However, that fact is not documented in other implementations.
- Relying on it will adversely impact portability to other implementations.
- .TP
--%'\fIc\fP'
-+\fB%'\fP\fIc\fP\fB'\fP
- char constant \fIc\fP
- .TP
--%{\fInn\fP}
-+\fB%{\fP\fInn\fP\fB}\fP
- integer constant \fInn\fP
- .TP
--%l
-+\fB%l\fP
- push strlen(pop)
- .TP
--%+ %\- %* %/ %m
--arithmetic (%m is mod): push(pop() op pop())
-+\fB%+\fP, \fB%\-\fP, \fB%*\fP, \fB%/\fP, \fB%m\fP
-+arithmetic (%m is mod): \fIpush(pop() op pop())\fP
- .TP
--%& %| %^
--bit operations (AND, OR and exclusive-OR): push(pop() op pop())
-+\fB%&\fP, \fB%|\fP, \fB%^\fP
-+bit operations (AND, OR and exclusive-OR): \fIpush(pop() op pop())\fP
- .TP
--%= %> %<
--logical operations: push(pop() op pop())
-+\fB%=\fP, \fB%>\fP, \fB%<\fP
-+logical operations: \fIpush(pop() op pop())\fP
- .TP
--%A, %O
-+\fB%A\fP, \fB%O\fP
- logical AND and OR operations (for conditionals)
- .TP
--%! %~
-+\fB%!\fP, \fB%~\fP
- unary operations (logical and bit complement): push(op pop())
- .TP
--%i
-+\fB%i\fP
- add 1 to first two parameters (for ANSI terminals)
- .TP
--%? \fIexpr\fP %t \fIthenpart\fP %e \fIelsepart\fP %;
-+\fB%?\fP \fIexpr\fP \fB%t\fP \fIthenpart\fP \fB%e\fP \fIelsepart\fP \fB%;\fP
- This forms an if-then-else.
--The %e \fIelsepart\fP is optional.
--Usually the %? \fIexpr\fP part pushes a value onto the stack,
--and %t pops it from the stack, testing if it is nonzero (true).
--If it is zero (false), control passes to the %e (else) part.
-+The \fB%e\fP \fIelsepart\fP is optional.
-+Usually the \fB%?\fP \fIexpr\fP part pushes a value onto the stack,
-+and \fB%t\fP pops it from the stack, testing if it is nonzero (true).
-+If it is zero (false), control passes to the \fB%e\fP (else) part.
- .IP
- It is possible to form else-if's a la Algol 68:
- .RS
--%? c\d1\u %t b\d1\u %e c\d2\u %t b\d2\u %e c\d3\u %t b\d3\u %e c\d4\u %t b\d4\u %e %;
-+\fB%?\fP c\d1\u \fB%t\fP b\d1\u \fB%e\fP c\d2\u \fB%t\fP b\d2\u \fB%e\fP c\d3\u \fB%t\fP b\d3\u \fB%e\fP c\d4\u \fB%t\fP b\d4\u \fB%e\fP \fB%;\fP
- .RE
- .IP
- where c\di\u are conditions, b\di\u are bodies.
- .IP
--Use the \fB\-f\fP option of \fBtic\fP or \fB@INFOCMP@\fP to see
-+Use the \fB\-f\fP option of \fB@TIC@\fP or \fB@INFOCMP@\fP to see
- the structure of if-then-else's.
- Some strings, e.g., \fBsgr\fP can be very complicated when written
- on one line.
-@@ -405,7 +484,7 @@
- .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}%-".
--%P and %g variables are
-+\fB%P\fP and \fB%g\fP variables are
- persistent across escape-string evaluations.
- .PP
- Consider the HP2645, which, to get to row 3 and column 12, needs
-@@ -429,7 +508,7 @@
- .PP
- A final example is the \s-1LSI ADM\s0-3a, which uses row and column
- offset by a blank character, thus \*(lqcup=\eE=%p1%' '%+%c%p2%' '%+%c\*(rq.
--After sending `\eE=', this pushes the first parameter, pushes the
-+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.
- Then the same is done for the second parameter.
-@@ -593,6 +672,7 @@
- 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.
-+.PP
- You can determine the
- kind of terminal you have by clearing the screen and then typing
- text separated by cursor motions.
-@@ -608,6 +688,7 @@
- current line and onto the next as you insert, you have the second type of
- terminal, and should give the capability \fBin\fR, which stands for
- \*(lqinsert null\*(rq.
-+.PP
- 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.
-@@ -642,7 +723,7 @@
- in \fBip\fR (a string option).
- Any other sequence which may need to be
- sent after an insert of a single character may also be given in \fBip\fR.
--If your terminal needs both to be placed into an `insert mode' and
-+If your terminal needs both to be placed into an \*(``insert mode\*('' and
- a special code to precede each inserted character, then both
- .BR smir / rmir
- and
-@@ -792,6 +873,7 @@
- .PP
- Writing out the above sequences, along with their dependencies yields
- .PP
-+.ne 11
- .TS
- center;
- l l l
-@@ -799,6 +881,7 @@
- lw18 lw14 lw18.
- \fBsequence when to output terminfo translation\fP
-
-+.ft CW
- \\E[0 always \\E[0
- ;1 if p1 or p6 %?%p1%p6%|%t;1%;
- ;4 if p2 %?%p2%|%t;4%;
-@@ -807,14 +890,17 @@
- ;8 if p7 %?%p7%|%t;8%;
- m always m
- ^N or ^O if p9 ^N, else ^O %?%p9%t^N%e^O%;
-+.ft R
- .TE
- .PP
- Putting this all together into the sgr sequence gives:
- .PP
-+.ft CW
- .nf
-- sgr=\\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;
-- %?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\\016%e\\017%;,
-+ 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%;,
- .fi
-+.ft R
- .PP
- Remember that if you specify sgr, you must also specify sgr0.
- Also, some implementations rely on sgr being given if sgr0 is,
-@@ -824,9 +910,9 @@
- The only drawback to adding an sgr string is that termcap also
- assumes that sgr0 does not exit alternate character set mode.
- .PP
--Terminals with the ``magic cookie'' glitch
-+Terminals with the \*(``magic cookie\*('' glitch
- .RB ( xmc )
--deposit special ``cookies'' when they receive mode-setting sequences,
-+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
-@@ -871,6 +957,7 @@
- If the keypad can be set to transmit or not transmit,
- give these codes as \fBsmkx\fR and \fBrmkx\fR.
- Otherwise the keypad is assumed to always transmit.
-+.PP
- The codes sent by the left arrow, right arrow, up arrow, down arrow,
- and home keys can be given as
- \fBkcub1, kcuf1, kcuu1, kcud1, \fRand\fB khome\fR respectively.
-@@ -878,41 +965,60 @@
- can be given as \fBkf0, kf1, ..., kf10\fR.
- If these keys have labels other than the default f0 through f10, the labels
- can be given as \fBlf0, lf1, ..., lf10\fR.
-+.PP
- The codes transmitted by certain other special keys can be given:
-+.bP
- .B kll
- (home down),
-+.bP
- .B kbs
- (backspace),
-+.bP
- .B ktbc
- (clear all tabs),
-+.bP
- .B kctab
- (clear the tab stop in this column),
-+.bP
- .B kclr
- (clear screen or erase key),
-+.bP
- .B kdch1
- (delete character),
-+.bP
- .B kdl1
- (delete line),
-+.bP
- .B krmir
- (exit insert mode),
-+.bP
- .B kel
- (clear to end of line),
-+.bP
- .B ked
- (clear to end of screen),
-+.bP
- .B kich1
- (insert character or enter insert mode),
-+.bP
- .B kil1
- (insert line),
-+.bP
- .B knp
- (next page),
-+.bP
- .B kpp
- (previous page),
-+.bP
- .B kind
- (scroll forward/down),
-+.bP
- .B kri
- (scroll backward/up),
-+.bP
- .B khts
- (set a tab stop in this column).
-+.PP
- 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
- .BR ka1 ,
-@@ -956,7 +1062,7 @@
- tab stop can be given as
- .B ht
- (usually control I).
--A ``back-tab'' command which moves leftward to the preceding tab stop can
-+A \*(``back-tab\*('' command which moves leftward to the preceding tab stop can
- be given as
- .BR cbt .
- By convention, if the teletype modes indicate that tabs are being
-@@ -974,7 +1080,7 @@
- .B it
- is given, showing the number of spaces the tabs are set to.
- This is normally used by the
--.IR tset
-+.IR @TSET@
- command to determine 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,
-@@ -1131,7 +1237,7 @@
- string is used.
- .PP
- .SS Status Lines
--Some terminals have an extra `status line' which is not normally used by
-+Some terminals have an extra \*(``status line\*('' which is not normally used by
- software (and thus not counted in the terminal's \fBlines\fR capability).
- .PP
- The simplest case is a status line which is cursor-addressable but not
-@@ -1223,7 +1329,7 @@
- .PP
- .SS Color Handling
- .PP
--Most color terminals are either `Tektronix-like' or `HP-like'.
-+Most color terminals are either \*(``Tektronix-like\*('' or \*(``HP-like\*(''.
- Tektronix-like
- terminals have a predefined set of N colors (where N usually 8), and can set
- character-cell foreground and background characters independently, mixing them
-@@ -1303,6 +1409,7 @@
- yellow \fBCOLOR_YELLOW\fR 6 max,max,0
- white \fBCOLOR_WHITE\fR 7 max,max,max
- .TE
-+.PP
- It is important to not confuse the two sets of color capabilities;
- otherwise red/blue will be interchanged on the display.
- .PP
-@@ -1339,18 +1446,25 @@
- .PP
- .TS
- center;
--l c c
--lw25 lw2 lw10.
--\fBAttribute Bit Decimal\fR
--A_STANDOUT 0 1
--A_UNDERLINE 1 2
--A_REVERSE 2 4
--A_BLINK 3 8
--A_DIM 4 16
--A_BOLD 5 32
--A_INVIS 6 64
--A_PROTECT 7 128
--A_ALTCHARSET 8 256
-+l l l l
-+lw20 lw2 lw10 lw10.
-+\fBAttribute Bit Decimal Set by\fR
-+A_STANDOUT 0 1 sgr
-+A_UNDERLINE 1 2 sgr
-+A_REVERSE 2 4 sgr
-+A_BLINK 3 8 sgr
-+A_DIM 4 16 sgr
-+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
-+A_LOW 11 2048 sgr1
-+A_RIGHT 12 4096 sgr1
-+A_TOP 13 8192 sgr1
-+A_VERTICAL 14 16384 sgr1
-+A_ITALIC 15 32768 sitm
- .TE
- .PP
- For example, on many IBM PC consoles, the underline attribute collides with the
-@@ -1389,7 +1503,7 @@
- .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, 'x', 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
-@@ -1420,13 +1534,13 @@
- .I virtual
- terminal descriptions for which the escape sequences are known.)
- .PP
--If the terminal has a ``meta key'' which acts as a shift key,
-+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
- .BR km .
- 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
-+If strings exist to turn this \*(``meta mode\*('' on and off, they
- can be given as
- .B smm
- and
-@@ -1470,7 +1584,7 @@
- .PP
- .SS Glitches and Braindamage
- .PP
--Hazeltine terminals, which do not allow `~' characters to be displayed should
-+Hazeltine terminals, which do not allow \*(``~\*('' characters to be displayed should
- indicate \fBhz\fR.
- .PP
- Terminals which ignore a line-feed immediately after an \fBam\fR wrap,
-@@ -1485,10 +1599,10 @@
- .PP
- Teleray terminals, where tabs turn all characters moved over to blanks,
- should indicate \fBxt\fR (destructive tabs).
--Note: the variable indicating this is now `dest_tabs_magic_smso'; in
-+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'',
-+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.
-@@ -1499,7 +1613,7 @@
- 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'.
-+\*(``beehive_glitch\*(''; it is now \*(``no_esc_ctl_c\*(''.
- .PP
- Other specific terminal problems may be corrected by adding more
- capabilities of the form \fBx\fR\fIx\fR.
-@@ -1524,8 +1638,10 @@
- A capability can be canceled by placing \fBxx@\fR to the left of the
- use reference that imports it, where \fIxx\fP is the capability.
- For example, the entry
-+.RS
- .PP
-- 2621\-nl, smkx@, rmkx@, use=2621,
-+2621\-nl, smkx@, rmkx@, use=2621,
-+.RE
- .PP
- defines a 2621\-nl that does not have the \fBsmkx\fR or \fBrmkx\fR capabilities,
- and hence does not turn on the function key labels when in visual mode.
-@@ -1570,19 +1686,15 @@
- backslash-newline pairs, which \fBtgetent()\fP strips out while reading it.
- Some termcap libraries strip off the final newline, too (GNU termcap does not).
- Now suppose:
--.TP 5
--*
-+.bP
- a termcap entry before expansion is more than 1023 bytes long,
--.TP 5
--*
-+.bP
- and the application has only allocated a 1k buffer,
--.TP 5
--*
-+.bP
- 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,
--.TP 5
--*
-+.bP
- and \fBtgetent()\fP 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 \fBtgetent()\fP has to search
-@@ -1625,6 +1737,11 @@
- SVr1, and have added extension capabilities to the string table that (in the
- 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
-+is not supported by older implementations.
-+.PP
- Some SVr4 \fBcurses\fR implementations, and all previous to SVr4, do not
- interpret the %A and %O operators in parameter strings.
- .PP
-@@ -1652,6 +1769,15 @@
- interpret it as \fBKEY_MOUSE\fR, for use by terminals and emulators like xterm
- that can return mouse-tracking information in the keyboard-input stream.
- .PP
-+X/Open Curses does not mention italics.
-+Portable applications must assume that numeric capabilities are
-+signed 16-bit values.
-+This includes the \fIno_color_video\fP (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.
-+.PP
- Different commercial ports of terminfo and curses support different subsets of
- the XSI Curses standard and (in some cases) different extension sets.
- Here
-@@ -1666,9 +1792,9 @@
- .PP
- \fBSVr1, Ultrix\fR \-\-
- These support a restricted subset of terminfo capabilities.
--The booleans
--end with \fBxon_xoff\fR; the numerics with \fBwidth_status_line\fR; and the
--strings with \fBprtr_non\fR.
-+The booleans end with \fBxon_xoff\fR;
-+the numerics with \fBwidth_status_line\fR;
-+and the strings with \fBprtr_non\fR.
- .PP
- \fBHP/UX\fR \-\-
- Supports the SVr1 subset, plus the SVr[234] numerics \fBnum_labels\fR,
-Index: man/tic.1m
-Prereq: 1.47
---- ncurses-5.9/man/tic.1m 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/tic.1m 2014-05-24 22:00:11.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2013,2014 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 *
-@@ -26,19 +26,29 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: tic.1m,v 1.47 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: tic.1m,v 1.60 2014/05/24 22:00:11 tom Exp $
- .TH @TIC@ 1M ""
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
- .ds n 5
- .ds d @TERMINFO@
-+.de bP
-+.IP \(bu 4
-+..
- .SH NAME
--\fBtic\fR \- the \fIterminfo\fR entry-description compiler
-+\fB@TIC@\fR \- the \fIterminfo\fR entry-description compiler
- .SH SYNOPSIS
--\fBtic\fR
-+\fB@TIC@\fR
- [\fB\-\
-+0\
- 1\
- C\
-+D\
- G\
- I\
-+K\
- L\
- N\
- T\
-@@ -61,31 +71,69 @@
- \fIfile\fR
- .br
- .SH DESCRIPTION
--The command \fBtic\fR translates a \fBterminfo\fR file from source
-+The \fB@TIC@\fR command translates a \fBterminfo\fR file from source
- format into compiled format.
- The compiled format is necessary for use with
- the library routines in \fBncurses\fR(3X).
- .PP
--The results are normally placed in the system terminfo
--directory \fB\*d\fR.
--There are two ways to change this behavior.
--.PP
--First, you may override the system default by setting the variable
--\fBTERMINFO\fR in your shell environment to a valid (existing) directory name.
--.PP
--Secondly, if \fBtic\fR cannot get access to \fI\*d\fR or your TERMINFO
--directory, it looks for the directory \fI$HOME/.terminfo\fR; if that directory
--exists, the entry is placed there.
--.PP
--Libraries that read terminfo entries are expected to check for a TERMINFO
--directory first, look at \fI$HOME/.terminfo\fR if TERMINFO is not set, and
--finally look in \fI\*d\fR.
-+As described in \fBterm\fR(\*n), the database may be either a directory
-+tree (one file per terminal entry) or a hashed database (one record per entry).
-+The \fB@TIC@\fR command writes only one type of entry,
-+depending on how it was built:
-+.bP
-+For directory trees, the top-level directory, e.g., /usr/share/terminfo,
-+specifies the location of the database.
-+.bP
-+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 ".db",
-+then that is used.
-+.IP
-+The default name for the hashed database is the same as the
-+default directory name (only adding a ".db" suffix).
-+.PP
-+In either case (directory or hashed database),
-+\fB@TIC@\fP will create the container if it does not exist.
-+For a directory, this would be the "terminfo" leaf,
-+versus a "terminfo.db" file.
-+.PP
-+The results are normally placed in the system terminfo database \fB\*d\fR.
-+The compiled terminal description can be placed
-+in a different terminfo database.
-+There are two ways to achieve this:
-+.bP
-+First, you may override the system default either by
-+using the \fB\-o\fP option,
-+or by setting the variable \fBTERMINFO\fR
-+in your shell environment to a valid database location.
-+.bP
-+Secondly, if \fB@TIC@\fR cannot write in \fI\*d\fR
-+or the location specified using your TERMINFO variable,
-+it looks for the directory \fI$HOME/.terminfo\fR
-+(or hashed database \fI$HOME/.terminfo.db)\fR;
-+if that location exists, the entry is placed there.
-+.PP
-+Libraries that read terminfo entries are expected to check in succession
-+.bP
-+a location specified with the TERMINFO environment variable,
-+.bP
-+\fI$HOME/.terminfo\fR,
-+.bP
-+directories listed in the TERMINFO_DIRS environment variable,
-+.bP
-+a compiled-in list of directories (@TERMINFO_DIRS@), and
-+.bP
-+the system terminfo database (\fI\*d\fR).
-+.SS OPTIONS
-+.TP
-+\fB\-0\fR
-+restricts the output to a single line
- .TP
- \fB\-1\fR
- restricts the output to a single column
- .TP
- \fB\-a\fR
--tells \fBtic\fP to retain commented-out capabilities rather than discarding
-+tells \fB@TIC@\fP to retain commented-out capabilities rather than discarding
- them.
- Capabilities are commented by prefixing them with a period.
- This sets the \fB\-x\fR option, because it treats the commented-out
-@@ -101,16 +149,49 @@
- 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 \fB\-K\fR option.
-+.IP
-+If this is combined with \fB\-c\fR, \fB@TIC@\fR makes additional checks
-+to report cases where the terminfo values do not have an exact equivalent
-+in termcap form.
-+For example:
-+.RS
-+.bP
-+\fBsgr\fP 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.
-+.bP
-+capabilities with more than one delay or with delays before the end of
-+the string will not convert completely.
-+.RE
- .TP
- \fB\-c\fR
--tells \fBtic\fP to only check \fIfile\fR for errors, including syntax problems and
-+tells \fB@TIC@\fP to only check \fIfile\fR for errors, including syntax problems and
- bad use links.
- If you specify \fB\-C\fR (\fB\-I\fR) 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 (and a documented limit in terminfo), these entries may cause core
--dumps.
-+Due to a fixed buffer length in older termcap libraries,
-+as well as buggy checking for the buffer length
-+(and a documented limit in terminfo),
-+these entries may cause core
-+dumps with other implementations.
-+.IP
-+\fB@TIC@\fP 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 \fB\-x\fP option are ignored.
-+.TP
-+\fB\-D\fR
-+tells \fB@TIC@\fP 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 \fB@TIC@\fP 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.
- .TP
- \fB\-e \fR\fInames\fR
- Limit writes and translations to the following comma-separated list of
-@@ -137,6 +218,10 @@
- \fB\-I\fR
- Force source translation to terminfo format.
- .TP
-+\fB\-K\fR
-+Suppress some longstanding ncurses extensions to termcap format,
-+e.g., "\\s" for space.
-+.TP
- \fB\-L\fR
- Force source translation to terminfo format
- using the long C variable names listed in <\fBterm.h\fR>
-@@ -155,9 +240,8 @@
- obsolete capabilities.
- .TP
- \fB\-o\fR\fIdir\fR
--Write compiled entries to given directory.
--Overrides the TERMINFO environment
--variable.
-+Write compiled entries to given database location.
-+Overrides the TERMINFO environment variable.
- .TP
- \fB\-R\fR\fIsubset\fR
- Restrict output to a given subset.
-@@ -177,7 +261,7 @@
- tc capabilities per entry.
- .TP
- \fB\-s\fR
--Summarize the compile by showing the directory into which entries
-+Summarize the compile by showing the database location into which entries
- are written, and the number of entries which are compiled.
- .TP
- \fB\-T\fR
-@@ -186,12 +270,12 @@
- descriptions are limited (e.g., 1023 for termcap, 4096 for terminfo).
- .TP
- \fB\-t\fR
--tells \fBtic\fP to discard commented-out capabilities.
-+tells \fB@TIC@\fP to discard commented-out capabilities.
- Normally when translating from terminfo to termcap,
- untranslatable capabilities are commented-out.
- .TP 5
- \fB\-U\fR
--tells \fBtic\fP to not post-process the data after parsing the source file.
-+tells \fB@TIC@\fP 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.
- .TP
-@@ -200,31 +284,13 @@
- .TP
- \fB\-v\fR\fIn\fR
- specifies that (verbose) output be written to standard error trace
--information showing \fBtic\fR's progress.
-+information showing \fB@TIC@\fR's progress.
- The optional parameter \fIn\fR is a number from 1 to 10, inclusive,
- indicating the desired level of detail of information.
- If \fIn\fR is omitted, the default level is 1.
- If \fIn\fR is specified and greater than 1, the level of
- detail is increased.
--.TP
--\fB\-w\fR\fIn\fR
--specifies the width of the output.
--The parameter is optional.
--If it is omitted, it defaults to 60.
--.TP
--\fB\-x\fR
--Treat unknown capabilities as user-defined.
--That is, if you supply a capability name which \fBtic\fP 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.
--.TP
--\fIfile\fR
--contains one or more \fBterminfo\fR terminal descriptions in source
--format [see \fBterminfo\fR(\*n)].
--Each description in the file
--describes the capabilities of a particular terminal.
-+.RS
- .PP
- The debug flag levels are as follows:
- .TP
-@@ -232,7 +298,7 @@
- Names of files created and linked
- .TP
- 2
--Information related to the ``use'' facility
-+Information related to the \*(``use\*('' facility
- .TP
- 3
- Statistics from the hashing algorithm
-@@ -250,19 +316,42 @@
- All values computed in construction of the hash table
- .LP
- If the debug level \fIn\fR is not given, it is taken to be one.
-+.RE
-+.TP
-+\fB\-w\fR\fIn\fR
-+specifies the width of the output.
-+The parameter is optional.
-+If it is omitted, it defaults to 60.
-+.TP
-+\fB\-x\fR
-+Treat unknown capabilities as user-defined.
-+That is, if you supply a capability name which \fB@TIC@\fP 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.
-+.SS PARAMETERS
-+.TP
-+\fIfile\fR
-+contains one or more \fBterminfo\fR terminal descriptions in source
-+format [see \fBterminfo\fR(\*n)].
-+Each description in the file
-+describes the capabilities of a particular terminal.
-+.IP
-+If \fIfile\fR is \*(``-\*('', then the data is read from the standard input.
-+The \fIfile\fR parameter may also be the path of a character-device.
-+.SS PROCESSING
- .PP
--All but one of the capabilities recognized by \fBtic\fR are documented
-+All but one of the capabilities recognized by \fB@TIC@\fR are documented
- in \fBterminfo\fR(\*n).
- The exception is the \fBuse\fR capability.
- .PP
- When a \fBuse\fR=\fIentry\fR\-\fIname\fR field is discovered in a
--terminal entry currently being compiled, \fBtic\fR reads in the binary
-+terminal entry currently being compiled, \fB@TIC@\fR reads in the binary
- from \fB\*d\fR to complete the entry.
- (Entries created from
- \fIfile\fR will be used first.
--If the environment variable
--\fBTERMINFO\fR is set, that directory is searched instead of
--\fB\*d\fR.) \fBtic\fR duplicates the capabilities in
-+\fB@TIC@\fR duplicates the capabilities in
- \fIentry\fR\-\fIname\fR for the current entry, with the exception of
- those capabilities that explicitly are defined in the current entry.
- .PP
-@@ -272,9 +361,6 @@
- \fBentry_name_1\fR before \fBuse=\fR for these capabilities to be
- canceled in \fBentry_name_1\fR.
- .PP
--If the environment variable \fBTERMINFO\fR is set, the compiled
--results are placed there instead of \fB\*d\fR.
--.PP
- Total compiled entries cannot exceed 4096 bytes.
- The name field cannot
- exceed 512 bytes.
-@@ -282,14 +368,14 @@
- (32 characters on systems with long filenames, 14 characters otherwise)
- will be truncated to the maximum alias length and a warning message will be printed.
- .SH COMPATIBILITY
--There is some evidence that historic \fBtic\fR implementations treated
-+There is some evidence that historic \fB@TIC@\fR implementations treated
- description fields with no whitespace in them as additional aliases or
- short names.
--This \fBtic\fR does not do that, but it does warn when
-+This \fB@TIC@\fR does not do that, but it does warn when
- description fields may be treated that way and check them for dangerous
- characters.
- .SH EXTENSIONS
--Unlike the stock SVr4 \fBtic\fR command, this implementation can actually
-+Unlike the SVr4 \fB@TIC@\fR command, this implementation can actually
- compile termcap sources.
- In fact, entries in terminfo and termcap syntax can
- be mixed in a single source file.
-@@ -298,16 +384,20 @@
- .PP
- The SVr4 manual pages are not clear on the resolution rules for \fBuse\fR
- capabilities.
--This implementation of \fBtic\fR will find \fBuse\fR targets anywhere
-+This implementation of \fB@TIC@\fR will find \fBuse\fR targets anywhere
- in the source file, or anywhere in the file tree rooted at \fBTERMINFO\fR (if
--\fBTERMINFO\fR is defined), or in the user's \fI$HOME/.terminfo\fR directory
--(if it exists), or (finally) anywhere in the system's file tree of
-+\fBTERMINFO\fR is defined),
-+or in the user's \fI$HOME/.terminfo\fR database
-+(if it exists),
-+or (finally) anywhere in the system's file tree of
- compiled entries.
- .PP
--The error messages from this \fBtic\fR have the same format as GNU C
-+The error messages from this \fB@TIC@\fR have the same format as GNU C
- error messages, and can be parsed by GNU Emacs's compile facility.
- .PP
- The
-+\fB\-0\fR,
-+\fB\-1\fR,
- \fB\-C\fR,
- \fB\-G\fR,
- \fB\-I\fR,
-@@ -329,7 +419,7 @@
- The SVr4 \fB\-c\fR mode does not report bad use links.
- .PP
- System V does not compile entries to or read entries from your
--\fI$HOME/.terminfo\fR directory unless TERMINFO is explicitly set to it.
-+\fI$HOME/.terminfo\fR database unless TERMINFO is explicitly set to it.
- .SH FILES
- .TP 5
- \fB\*d/?/*\fR
-@@ -340,6 +430,7 @@
- \fB@INFOTOCAP@\fR(1M),
- \fB@TOE@\fR(1M),
- \fBcurses\fR(3X),
-+\fBterm\fR(\*n).
- \fBterminfo\fR(\*n).
- .PP
- This describes \fBncurses\fR
-Index: man/toe.1m
-Prereq: 1.23
---- ncurses-5.9/man/toe.1m 2010-12-04 18:40:45.000000000 +0000
-+++ ncurses-5.9-20141206/man/toe.1m 2012-01-01 00:40:51.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2010,2011 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 *
-@@ -26,19 +26,19 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: toe.1m,v 1.23 2010/12/04 18:40:45 tom Exp $
-+.\" $Id: toe.1m,v 1.26 2012/01/01 00:40:51 tom Exp $
- .TH @TOE@ 1M ""
- .ds n 5
- .ds d @TERMINFO@
- .SH NAME
--\fBtoe\fR \- table of (terminfo) entries
-+\fB@TOE@\fR \- table of (terminfo) entries
- .SH SYNOPSIS
--\fBtoe\fR [\fB\-v\fR[\fIn\fR]] [\fB\-ahuUV\fR] \fIfile...\fR
-+\fB@TOE@\fR [\fB\-v\fR[\fIn\fR]] [\fB\-ahsuUV\fR] \fIfile...\fR
- .br
- .SH DESCRIPTION
- .PP
- With no options,
--\fBtoe\fR lists all available terminal types by primary name
-+\fB@TOE@\fR lists all available terminal types by primary name
- with descriptions.
- File arguments specify the directories to be scanned; if no
- such arguments are given,
-@@ -52,6 +52,15 @@
- \fB\-a\fR
- report on all of the terminal databases which ncurses would search,
- 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
-+belong to a given terminal database.
-+An "*" marks entries which differ, and "+" marks equivalent entries.
-+.TP
-+\fB\-s\fR
-+sort the output by the entry names.
- .TP
- \fB\-u\fR \fIfile\fR
- says to write a report to the standard output,
-@@ -78,7 +87,7 @@
- .TP
- \fB\-v\fR\fIn\fR
- specifies that (verbose) output be written to standard error,
--showing \fBtoe\fR's progress.
-+showing \fB@TOE@\fR's progress.
- The optional parameter \fIn\fR is a number from 1 to 10,
- interpreted as for \fB@TIC@\fR(1M).
- .TP
-Index: man/tput.1
-Prereq: 1.29
---- ncurses-5.9/man/tput.1 2010-12-04 18:41:07.000000000 +0000
-+++ ncurses-5.9-20141206/man/tput.1 2012-07-14 21:06:45.000000000 +0000
-@@ -1,6 +1,6 @@
- '\" t
- .\"***************************************************************************
--.\" Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2011,2012 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: tput.1,v 1.29 2010/12/04 18:41:07 tom Exp $
-+.\" $Id: tput.1,v 1.32 2012/07/14 21:06:45 tom Exp $
- .TH @TPUT@ 1 ""
- .ds d @TERMINFO@
- .ds n 1
-@@ -77,11 +77,12 @@
- and the \fIcapname\fR associated with each, see \fBterminfo\fR(5).
- .TP
- \fB\-T\fR\fItype\fR
--indicates the \fItype\fR of terminal. Normally this option is
-+indicates the \fItype\fR of terminal.
-+Normally this option is
- unnecessary, because the default is taken from the environment
--variable \fBTERM\fR. If \fB\-T\fR is specified, then the shell
--variables \fBLINES\fR and \fBCOLUMNS\fR will be ignored,and the
--operating system will not be queried for the actual screen size.
-+variable \fBTERM\fR.
-+If \fB\-T\fR is specified, then the shell
-+variables \fBLINES\fR and \fBCOLUMNS\fR will also be ignored.
- .TP
- \fIcapname\fR
- indicates the capability from the \fBterminfo\fR database. When
-@@ -159,7 +160,7 @@
- .PP
- If \fB@TPUT@\fR is invoked by a link named \fBreset\fR, this has the
- same effect as \fB@TPUT@ reset\fR.
--See \fBtset\fR for comparison, which has similar behavior.
-+See \fB@TSET@\fR for comparison, which has similar behavior.
- .SH EXAMPLES
- .TP 5
- \fB@TPUT@ init\fR
-@@ -275,7 +276,7 @@
- .PP
- Any other exit code indicates an error; see the DIAGNOSTICS section.
- .SH DIAGNOSTICS
--\fBtput\fR prints the following error messages and sets the corresponding exit
-+\fB@TPUT@\fR prints the following error messages and sets the corresponding exit
- codes.
- .PP
- .ne 15
-@@ -303,17 +304,29 @@
- .PP
- X/Open documents only the operands for \fBclear\fP, \fBinit\fP and \fBreset\fP.
- In this implementation, \fBclear\fP is part of the \fIcapname\fR support.
--Other implementations of \fBtput\fP on
-+Other implementations of \fB@TPUT@\fP on
- SVr4-based systems such as Solaris, IRIX64 and HPUX
- as well as others such as AIX and Tru64
- provide support for \fIcapname\fR operands.
-+.PP
- A few platforms such as FreeBSD and NetBSD recognize termcap names rather
--than terminfo capability names in their respective \fBtput\fP commands.
-+than terminfo capability names in their respective \fB@TPUT@\fP commands.
-+.PP
-+Most implementations which provide support for \fIcapname\fR operands
-+use the \fItparm\fP function to expand parameters in it.
-+That function expects a mixture of numeric and string parameters,
-+requiring \fB@TPUT@\fP to know which type to use.
-+This implementation uses a table to determine that for
-+the standard \fIcapname\fR operands, and an internal library
-+function to analyze nonstandard \fIcapname\fR operands.
-+Other implementations may simply guess that an operand containing only digits
-+is intended to be a number.
- .SH SEE ALSO
- \fB@CLEAR@\fR(1),
- \fBstty\fR(1),
- \fBtabs\fR(\*n),
--\fBterminfo\fR(5).
-+\fBterminfo\fR(5),
-+\fBcurs_termcap\fR(3X).
- .PP
- This describes \fBncurses\fR
- version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
-Index: man/tset.1
-Prereq: 1.25
---- ncurses-5.9/man/tset.1 2010-12-04 18:38:55.000000000 +0000
-+++ ncurses-5.9-20141206/man/tset.1 2013-12-21 22:15:53.000000000 +0000
-@@ -1,5 +1,5 @@
- .\"***************************************************************************
--.\" Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+.\" Copyright (c) 1998-2011,2013 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 *
-@@ -26,12 +26,16 @@
- .\" authorization. *
- .\"***************************************************************************
- .\"
--.\" $Id: tset.1,v 1.25 2010/12/04 18:38:55 tom Exp $
-+.\" $Id: tset.1,v 1.29 2013/12/21 22:15:53 tom Exp $
- .TH @TSET@ 1 ""
-+.ie \n(.g .ds `` \(lq
-+.el .ds `` ``
-+.ie \n(.g .ds '' \(rq
-+.el .ds '' ''
- .SH NAME
--\fBtset\fR, \fBreset\fR \- terminal initialization
-+\fB@TSET@\fR, \fBreset\fR \- terminal initialization
- .SH SYNOPSIS
--\fBtset\fR [\fB\-IQVcqrsw\fR] [\fB\-\fR] [\fB\-e\fR \fIch\fR] [\fB\-i\fR \fIch\fR] [\fB\-k\fR \fIch\fR] [\fB\-m\fR \fImapping\fR] [\fIterminal\fR]
-+\fB@TSET@\fR [\fB\-IQVcqrsw\fR] [\fB\-\fR] [\fB\-e\fR \fIch\fR] [\fB\-i\fR \fIch\fR] [\fB\-k\fR \fIch\fR] [\fB\-m\fR \fImapping\fR] [\fIterminal\fR]
- .br
- \fBreset\fR [\fB\-IQVcqrsw\fR] [\fB\-\fR] [\fB\-e\fR \fIch\fR] [\fB\-i\fR \fIch\fR] [\fB\-k\fR \fIch\fR] [\fB\-m\fR \fImapping\fR] [\fIterminal\fR]
- .SH DESCRIPTION
-@@ -49,13 +53,13 @@
- \fIgetty\fR does this job by setting
- \fBTERM\fR according to the type passed to it by \fI/etc/inittab\fR.)
- .PP
--4. The default terminal type, ``unknown''.
-+4. The default terminal type, \*(``unknown\*(''.
- .PP
- If the terminal type was not specified on the command-line, the \fB\-m\fR
- option mappings are then applied (see the section
- .B TERMINAL TYPE MAPPING
- for more information).
--Then, if the terminal type begins with a question mark (``?''), the
-+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 terminfo
-@@ -72,7 +76,7 @@
- versus the other initialization.
- If neither option is given, both are assumed.
- .PP
--When invoked as \fBreset\fR, \fBtset\fR sets cooked and echo modes,
-+When invoked as \fBreset\fR, \fB@TSET@\fR sets cooked and echo modes,
- turns off cbreak and raw modes, turns on newline translation and
- resets any unset special characters to their default values before
- doing the terminal initialization described above. This is useful
-@@ -89,6 +93,7 @@
- .TP 5
- .B \-c
- Set control characters and modes.
-+.TP 5
- .B \-e
- Set the erase character to \fIch\fR.
- .TP
-@@ -109,7 +114,7 @@
- .TP
- .B \-Q
- Do not display any values for the erase, interrupt and line kill characters.
--Normally \fBtset\fR displays the values for control characters which
-+Normally \fB@TSET@\fR displays the values for control characters which
- differ from the system's default values.
- .TP
- .B \-q
-@@ -137,7 +142,7 @@
- .PP
- The arguments for the \fB\-e\fR, \fB\-i\fR, and \fB\-k\fR
- options may either be entered as actual characters or by using the `hat'
--notation, i.e., control-h may be specified as ``^H'' or ``^h''.
-+notation, i.e., control-h may be specified as \*(``^H\*('' or \*(``^h\*(''.
- .
- .SH SETTING THE ENVIRONMENT
- It is often desirable to enter the terminal type and information about
-@@ -146,35 +151,41 @@
- .PP
- When the \fB\-s\fR option is specified, the commands to enter the information
- into the shell's environment are written to the standard output. If
--the \fBSHELL\fR environmental variable ends in ``csh'', the commands
-+the \fBSHELL\fR environmental variable ends in \*(``csh\*('', the commands
- are for \fBcsh\fR, otherwise, they are for \fBsh\fR.
- Note, the \fBcsh\fR commands set and unset the shell variable
- \fBnoglob\fR, leaving it unset. The following line in the \fB.login\fR
- or \fB.profile\fR files will initialize the environment correctly:
- .sp
-- eval \`tset \-s options ... \`
-+ eval \`@TSET@ \-s options ... \`
- .
- .SH TERMINAL TYPE MAPPING
- When the terminal is not hardwired into the system (or the current
- system information is incorrect) the terminal type derived from the
- \fI/etc/ttys\fR file or the \fBTERM\fR environmental variable is often
- something generic like \fBnetwork\fR, \fBdialup\fR, or \fBunknown\fR.
--When \fBtset\fR is used in a startup script it is often desirable to
-+When \fB@TSET@\fR is used in a startup script it is often desirable to
- provide information about the type of terminal used on such ports.
- .PP
- The purpose of the \fB\-m\fR option is to map
- from some set of conditions to a terminal type, that is, to
--tell \fBtset\fR
--``If I'm on this port at a particular speed, guess that I'm on that
--kind of terminal''.
-+tell \fB@TSET@\fR
-+\*(``If I'm on this port at a particular speed,
-+guess that I'm on that kind of terminal\*(''.
- .PP
- The argument to the \fB\-m\fR 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
--operator may be any combination of ``>'', ``<'', ``@'', and ``!''; ``>''
--means greater than, ``<'' means less than, ``@'' means equal to
--and ``!'' inverts the sense of the test.
-+colon (\*(``:\*('') character and a terminal type. The port type is a
-+string (delimited by either the operator or the colon character).
-+The operator may be any combination of
-+\*(``>\*('',
-+\*(``<\*('',
-+\*(``@\*('',
-+and \*(``!\*('';
-+\*(``>\*('' means greater than,
-+\*(``<\*('' 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.
-@@ -204,53 +215,57 @@
- No whitespace characters are permitted in the \fB\-m\fR option argument.
- Also, to avoid problems with meta-characters, it is suggested that the
- entire \fB\-m\fR option argument be placed within single quote characters,
--and that \fBcsh\fR users insert a backslash character (``\e'') before
--any exclamation marks (``!'').
-+and that \fBcsh\fR users insert a backslash character (\*(``\e\*('') before
-+any exclamation marks (\*(``!\*('').
- .SH HISTORY
--The \fBtset\fR command appeared in BSD 3.0. The \fBncurses\fR implementation
-+The \fB@TSET@\fR command appeared in BSD 3.0. The \fBncurses\fR implementation
- was lightly adapted from the 4.4BSD sources for a terminfo environment by Eric
- S. Raymond <esr@snark.thyrsus.com>.
- .SH COMPATIBILITY
--The \fBtset\fR utility has been provided for backward-compatibility with BSD
-+The \fB@TSET@\fR utility has been provided for backward-compatibility with BSD
- environments (under most modern UNIXes, \fB/etc/inittab\fR and \fIgetty\fR(1)
- can set \fBTERM\fR appropriately for each dial-up line; this obviates what was
--\fBtset\fR's most important use). This implementation behaves like 4.4BSD
-+\fB@TSET@\fR's most important use). This implementation behaves like 4.4BSD
- tset, with a few exceptions specified here.
- .PP
--The \fB\-S\fR option of BSD tset no longer works; it prints an error message to stderr
--and dies. The \fB\-s\fR option only sets \fBTERM\fR, not \fBTERMCAP\fP. Both these
--changes are because the \fBTERMCAP\fR variable is no longer supported under
--terminfo-based \fBncurses\fR, which makes \fBtset \-S\fR useless (we made it die
--noisily rather than silently induce lossage).
-+The \fB\-S\fR option of BSD tset no longer works;
-+it prints an error message to stderr and dies.
-+The \fB\-s\fR option only sets \fBTERM\fR, not \fBTERMCAP\fP.
-+Both of these changes are because the \fBTERMCAP\fR variable
-+is no longer supported under terminfo-based \fBncurses\fR,
-+which makes \fB@TSET@ \-S\fR useless
-+(we made it die noisily rather than silently induce lossage).
- .PP
- There was an undocumented 4.4BSD feature that invoking tset 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.
- .PP
- The \fB\-A\fR, \fB\-E\fR, \fB\-h\fR, \fB\-u\fR and \fB\-v\fR
--options were deleted from the \fBtset\fR
-+options were deleted from the \fB@TSET@\fR
- utility in 4.4BSD.
- None of them were documented in 4.3BSD and all are
- of limited utility at best.
- The \fB\-a\fR, \fB\-d\fR, and \fB\-p\fR 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 \fB\-m\fR option instead. The
--\fB\-n\fP option remains, but has no effect. The \fB\-adnp\fR options are therefore
--omitted from the usage summary above.
--.PP
--It is still permissible to specify the \fB\-e\fR, \fB\-i\fR, and \fB\-k\fR options without
--arguments, although it is strongly recommended that such usage be fixed to
-+three options be changed to use the \fB\-m\fR option instead.
-+The \fB\-n\fP option remains, but has no effect.
-+The \fB\-adnp\fR options are therefore omitted from the usage summary above.
-+.PP
-+It is still permissible to specify the \fB\-e\fR, \fB\-i\fR,
-+and \fB\-k\fR options without arguments,
-+although it is strongly recommended that such usage be fixed to
- explicitly specify the character.
- .PP
--As of 4.4BSD, executing \fBtset\fR as \fBreset\fR no longer implies the \fB\-Q\fR
--option. Also, the interaction between the \- option and the \fIterminal\fR
--argument in some historic implementations of \fBtset\fR has been removed.
-+As of 4.4BSD,
-+executing \fB@TSET@\fR as \fBreset\fR no longer implies the \fB\-Q\fR option.
-+Also, the interaction between the \- option and the \fIterminal\fR
-+argument in some historic implementations of \fB@TSET@\fR has been removed.
- .SH ENVIRONMENT
--The \fBtset\fR command uses these environment variables:
-+The \fB@TSET@\fR command uses these environment variables:
- .TP 5
- SHELL
--tells \fBtset\fP whether to initialize \fBTERM\fP using \fBsh\fP or
-+tells \fB@TSET@\fP whether to initialize \fBTERM\fP using \fBsh\fP or
- \fBcsh\fP syntax.
- .TP 5
- TERM
-@@ -260,7 +275,7 @@
- TERMCAP
- may denote the location of a termcap database.
- If it is not an absolute pathname, e.g., begins with a `/',
--\fBtset\fP removes the variable from the environment before looking
-+\fB@TSET@\fP removes the variable from the environment before looking
- for the terminal description.
- .SH FILES
- .TP 5
-@@ -270,6 +285,7 @@
- @TERMINFO@
- terminal capability database
- .SH SEE ALSO
-+.hy 0
- csh(1),
- sh(1),
- stty(1),
-@@ -278,6 +294,7 @@
- terminfo(5),
- ttys(5),
- environ(7)
-+.hy
- .PP
- This describes \fBncurses\fR
- version @NCURSES_MAJOR@.@NCURSES_MINOR@ (patch @NCURSES_PATCH@).
-Index: menu/Makefile.in
-Prereq: 1.54
---- ncurses-5.9/menu/Makefile.in 2010-11-27 21:45:27.000000000 +0000
-+++ ncurses-5.9-20141206/menu/Makefile.in 2014-11-15 13:54:00.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.54 2010/11/27 21:45:27 tom Exp $
-+# $Id: Makefile.in,v 1.60 2014/11/15 13:54:00 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -51,14 +51,21 @@
-
- MODEL = @DFT_LWR_MODEL@
- DESTDIR = @DESTDIR@
-+top_srcdir = @top_srcdir@
- srcdir = @srcdir@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
- bindir = @bindir@
- libdir = @libdir@
- includedir = @includedir@
-+includesubdir = @includesubdir@
-+
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-+
-+PACKAGE = @PACKAGE@
-
- LIBTOOL = @LIBTOOL@
-+LIBTOOL_OPTS = @LIBTOOL_OPTS@ @EXPORT_SYMS@
- LIBTOOL_CLEAN = @LIB_CLEAN@
- LIBTOOL_COMPILE = @LIB_COMPILE@
- LIBTOOL_LINK = @LIB_LINK@
-@@ -84,7 +91,7 @@
- CPP = @CPP@
- CFLAGS = @CFLAGS@
-
--CPPFLAGS = -I@top_srcdir@/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
-+CPPFLAGS = -I${top_srcdir}/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
-
- CCFLAGS = $(CPPFLAGS) $(CFLAGS)
-
-@@ -102,6 +109,8 @@
- SHLIB_DIRS = -L../lib
- SHLIB_LIST = $(SHLIB_DIRS) -lncurses@LIB_SUFFIX@ @SHLIB_LIST@
-
-+RPATH_LIST = @RPATH_LIST@
-+VERSIONED_SYMS = @VERSIONED_SYMS@
- MK_SHARED_LIB = @MK_SHARED_LIB@
-
- NCURSES_MAJOR = @NCURSES_MAJOR@
-@@ -111,7 +120,7 @@
-
- RANLIB = @LIB_PREP@
-
--LIBRARIES = @LIBS_TO_MAKE@
-+LIBRARIES = @Libs_To_Make@
-
- LINT = @LINT@
- LINT_OPTS = @LINT_OPTS@
-Index: menu/m_attribs.c
-Prereq: 1.16
---- ncurses-5.9/menu/m_attribs.c 2010-01-23 21:16:54.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_attribs.c 2012-03-10 23:43:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -37,7 +37,7 @@
-
- #include "menu.priv.h"
-
--MODULE_ID("$Id: m_attribs.c,v 1.16 2010/01/23 21:16:54 tom Exp $")
-+MODULE_ID("$Id: m_attribs.c,v 1.17 2012/03/10 23:43:41 tom Exp $")
-
- /* Macro to redraw menu if it is posted and changed */
- #define Refresh_Menu(menu) \
-@@ -51,7 +51,7 @@
- #define GEN_MENU_ATTR_SET_FCT( name ) \
- NCURSES_IMPEXP int NCURSES_API set_menu_ ## name (MENU* menu, chtype attr) \
- {\
-- T((T_CALLED("set_menu_" #name "(%p,%s)"), menu, _traceattr(attr))); \
-+ T((T_CALLED("set_menu_" #name "(%p,%s)"), (void *) menu, _traceattr(attr))); \
- if (!(attr==A_NORMAL || (attr & A_ATTRIBUTES)==attr))\
- RETURN(E_BAD_ARGUMENT);\
- if (menu && ( menu -> name != attr))\
-Index: menu/m_driver.c
-Prereq: 1.29
---- ncurses-5.9/menu/m_driver.c 2010-01-23 21:20:10.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_driver.c 2012-03-10 23:43:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -37,7 +37,7 @@
-
- #include "menu.priv.h"
-
--MODULE_ID("$Id: m_driver.c,v 1.29 2010/01/23 21:20:10 tom Exp $")
-+MODULE_ID("$Id: m_driver.c,v 1.31 2012/03/10 23:43:41 tom Exp $")
-
- /* Macros */
-
-@@ -47,7 +47,7 @@
-
- /* Add a new character to the match pattern buffer */
- #define Add_Character_To_Pattern(menu,ch) \
-- { (menu)->pattern[((menu)->pindex)++] = (ch);\
-+ { (menu)->pattern[((menu)->pindex)++] = (char) (ch);\
- (menu)->pattern[(menu)->pindex] = '\0'; }
-
- /*---------------------------------------------------------------------------
-@@ -537,7 +537,11 @@
- result = E_UNKNOWN_COMMAND;
- }
-
-- if (E_OK == result)
-+ if (item == 0)
-+ {
-+ result = E_BAD_STATE;
-+ }
-+ else if (E_OK == result)
- {
- /* Adjust the top row if it turns out that the current item unfortunately
- doesn't appear in the menu window */
-Index: menu/m_format.c
-Prereq: 1.16
---- ncurses-5.9/menu/m_format.c 2010-01-23 21:20:10.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_format.c 2012-06-09 23:54:02.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -37,7 +37,7 @@
-
- #include "menu.priv.h"
-
--MODULE_ID("$Id: m_format.c,v 1.16 2010/01/23 21:20:10 tom Exp $")
-+MODULE_ID("$Id: m_format.c,v 1.18 2012/06/09 23:54:02 tom Exp $")
-
- #define minimum(a,b) ((a)<(b) ? (a): (b))
-
-@@ -81,8 +81,8 @@
- if (menu->pattern)
- Reset_Pattern(menu);
-
-- menu->frows = rows;
-- menu->fcols = cols;
-+ menu->frows = (short)rows;
-+ menu->fcols = (short)cols;
-
- assert(rows > 0 && cols > 0);
- total_rows = (menu->nitems - 1) / cols + 1;
-@@ -90,21 +90,21 @@
- minimum(menu->nitems, cols) :
- (menu->nitems - 1) / total_rows + 1;
-
-- menu->rows = total_rows;
-- menu->cols = total_cols;
-- menu->arows = minimum(total_rows, rows);
-+ menu->rows = (short)total_rows;
-+ menu->cols = (short)total_cols;
-+ menu->arows = (short)minimum(total_rows, rows);
- menu->toprow = 0;
- menu->curitem = *(menu->items);
- assert(menu->curitem);
-- menu->status |= _LINK_NEEDED;
-+ SetStatus(menu, _LINK_NEEDED);
- _nc_Calculate_Item_Length_and_Width(menu);
- }
- else
- {
- if (rows > 0)
-- _nc_Default_Menu.frows = rows;
-+ _nc_Default_Menu.frows = (short)rows;
- if (cols > 0)
-- _nc_Default_Menu.fcols = cols;
-+ _nc_Default_Menu.fcols = (short)cols;
- }
-
- RETURN(E_OK);
-Index: menu/m_global.c
-Prereq: 1.25
---- ncurses-5.9/menu/m_global.c 2010-01-23 21:20:10.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_global.c 2014-03-15 20:37:22.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -37,7 +37,7 @@
-
- #include "menu.priv.h"
-
--MODULE_ID("$Id: m_global.c,v 1.25 2010/01/23 21:20:10 tom Exp $")
-+MODULE_ID("$Id: m_global.c,v 1.28 2014/03/15 20:37:22 tom Exp $")
-
- static char mark[] = "-";
- /* *INDENT-OFF* */
-@@ -117,17 +117,17 @@
- assert(menu && menu->items);
- for (items = menu->items; *items; items++)
- {
-- check = _nc_Calculate_Text_Width(&((*items)->name));
-+ check = (unsigned)_nc_Calculate_Text_Width(&((*items)->name));
- if (check > MaximumNameLength)
- MaximumNameLength = check;
-
-- check = _nc_Calculate_Text_Width(&((*items)->description));
-+ check = (unsigned)_nc_Calculate_Text_Width(&((*items)->description));
- if (check > MaximumDescriptionLength)
- MaximumDescriptionLength = check;
- }
-
-- menu->namelen = MaximumNameLength;
-- menu->desclen = MaximumDescriptionLength;
-+ menu->namelen = (short)MaximumNameLength;
-+ menu->desclen = (short)MaximumDescriptionLength;
- T(("ComputeMaximum_NameDesc_Lengths %d,%d", menu->namelen, menu->desclen));
- }
-
-@@ -195,7 +195,7 @@
- {
- (*item)->value = FALSE;
- }
-- (*item)->index = ItemCount++;
-+ (*item)->index = (short)ItemCount++;
- (*item)->imenu = menu;
- }
- }
-@@ -206,7 +206,7 @@
- if (ItemCount != 0)
- {
- menu->items = items;
-- menu->nitems = ItemCount;
-+ menu->nitems = (short)ItemCount;
- ComputeMaximum_NameDesc_Lengths(menu);
- if ((menu->pattern = typeMalloc(char, (unsigned)(1 + menu->namelen))))
- {
-@@ -256,7 +256,7 @@
- T((T_CALLED("_nc_menu_text_width(%p)"), (const void *)item));
- if (result != 0 && item->str != 0)
- {
-- int count = mbstowcs(0, item->str, 0);
-+ int count = (int)mbstowcs(0, item->str, 0);
- wchar_t *temp = 0;
-
- if (count > 0
-@@ -343,7 +343,7 @@
-
- assert(menu);
-
-- menu->height = 1 + menu->spc_rows * (menu->arows - 1);
-+ menu->height = (short)(1 + menu->spc_rows * (menu->arows - 1));
-
- l = calculate_actual_width(menu, TRUE);
- l += menu->marklen;
-@@ -354,10 +354,10 @@
- l += menu->spc_desc;
- }
-
-- menu->itemlen = l;
-+ menu->itemlen = (short)l;
- l *= menu->cols;
- l += (menu->cols - 1) * menu->spc_cols; /* for the padding between the columns */
-- menu->width = l;
-+ menu->width = (short)l;
-
- T(("_nc_CalculateItem_Length_and_Width columns %d, item %d, width %d",
- menu->cols,
-@@ -388,7 +388,7 @@
- int Last_in_Column;
- bool cycle = (menu->opt & O_NONCYCLIC) ? FALSE : TRUE;
-
-- menu->status &= ~_LINK_NEEDED;
-+ ClrStatus(menu, _LINK_NEEDED);
-
- if (menu->opt & O_ROWMAJOR)
- {
-@@ -431,8 +431,8 @@
- (cycle ? menu->items[(row + 1) < menu->rows ?
- Number_Of_Items - 1 : col] :
- (ITEM *) 0);
-- item->x = col;
-- item->y = row;
-+ item->x = (short)col;
-+ item->y = (short)row;
- if (++col == Number_Of_Columns)
- {
- row++;
-@@ -482,8 +482,8 @@
- (ITEM *) 0
- );
-
-- item->x = col;
-- item->y = row;
-+ item->x = (short)col;
-+ item->y = (short)row;
- if ((++row) == Number_Of_Rows)
- {
- col++;
-@@ -568,7 +568,9 @@
-
- cur_item = menu->curitem;
- assert(cur_item);
-- menu->toprow = new_toprow;
-+ menu->toprow = (short)(((menu->rows - menu->frows) >= 0)
-+ ? min(menu->rows - menu->frows, new_toprow)
-+ : 0);
- menu->curitem = new_current_item;
-
- if (mterm_called)
-@@ -590,7 +592,9 @@
- }
- else
- { /* if we are not posted, this is quite simple */
-- menu->toprow = new_toprow;
-+ menu->toprow = (short)(((menu->rows - menu->frows) >= 0)
-+ ? min(menu->rows - menu->frows, new_toprow)
-+ : 0);
- menu->curitem = new_current_item;
- }
- }
-Index: menu/m_hook.c
-Prereq: 1.15
---- ncurses-5.9/menu/m_hook.c 2010-01-23 21:16:54.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_hook.c 2012-03-10 23:43:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -37,13 +37,13 @@
-
- #include "menu.priv.h"
-
--MODULE_ID("$Id: m_hook.c,v 1.15 2010/01/23 21:16:54 tom Exp $")
-+MODULE_ID("$Id: m_hook.c,v 1.16 2012/03/10 23:43:41 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 )\
- {\
-- T((T_CALLED("set_" #typ "_" #name "(%p,%p)"), menu, func));\
-+ T((T_CALLED("set_" #typ "_" #name "(%p,%p)"), (void *) menu, func));\
- (Normalize_Menu(menu) -> typ ## name = func );\
- RETURN(E_OK);\
- }
-Index: menu/m_item_new.c
-Prereq: 1.30
---- ncurses-5.9/menu/m_item_new.c 2010-01-23 21:20:11.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_item_new.c 2012-06-09 23:55:15.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -44,7 +44,7 @@
- #endif
- #endif
-
--MODULE_ID("$Id: m_item_new.c,v 1.30 2010/01/23 21:20:11 tom Exp $")
-+MODULE_ID("$Id: m_item_new.c,v 1.33 2012/06/09 23:55:15 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnmenu
-@@ -62,7 +62,7 @@
- int result = TRUE;
-
- #if USE_WIDEC_SUPPORT
-- int count = mbstowcs(0, s, 0);
-+ int count = (int)mbstowcs(0, s, 0);
- wchar_t *temp = 0;
-
- assert(s);
-@@ -127,13 +127,13 @@
- {
- *item = _nc_Default_Item; /* hope we have struct assignment */
-
-- item->name.length = strlen(name);
-+ item->name.length = (unsigned short)strlen(name);
- item->name.str = name;
-
- if (description && (*description != '\0') &&
- Is_Printable_String(description))
- {
-- item->description.length = strlen(description);
-+ item->description.length = (unsigned short)strlen(description);
- item->description.str = description;
- }
- else
-@@ -195,12 +195,12 @@
- NCURSES_EXPORT(int)
- set_menu_mark(MENU * menu, const char *mark)
- {
-- unsigned l;
-+ short l;
-
- T((T_CALLED("set_menu_mark(%p,%s)"), (void *)menu, _nc_visbuf(mark)));
-
- if (mark && (*mark != '\0') && Is_Printable_String(mark))
-- l = strlen(mark);
-+ l = (short)strlen(mark);
- else
- l = 0;
-
-@@ -213,7 +213,7 @@
- {
- /* If the menu is already posted, the geometry is fixed. Then
- we can only accept a mark with exactly the same length */
-- if (menu->marklen != (int)l)
-+ if (menu->marklen != l)
- RETURN(E_BAD_ARGUMENT);
- }
- menu->marklen = l;
-@@ -222,14 +222,13 @@
- menu->mark = strdup(mark);
- if (menu->mark)
- {
-- strcpy(menu->mark, mark);
- if (menu != &_nc_Default_Menu)
-- menu->status |= _MARK_ALLOCATED;
-+ SetStatus(menu, _MARK_ALLOCATED);
- }
- else
- {
- menu->mark = old_mark;
-- menu->marklen = (old_mark != 0) ? strlen(old_mark) : 0;
-+ menu->marklen = (short)((old_mark != 0) ? strlen(old_mark) : 0);
- RETURN(E_SYSTEM_ERROR);
- }
- }
-Index: menu/m_pad.c
-Prereq: 1.12
---- ncurses-5.9/menu/m_pad.c 2010-01-23 21:20:10.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_pad.c 2012-03-10 23:43:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -37,7 +37,7 @@
-
- #include "menu.priv.h"
-
--MODULE_ID("$Id: m_pad.c,v 1.12 2010/01/23 21:20:10 tom Exp $")
-+MODULE_ID("$Id: m_pad.c,v 1.13 2012/03/10 23:43:41 tom Exp $")
-
- /* Macro to redraw menu if it is posted and changed */
- #define Refresh_Menu(menu) \
-@@ -69,7 +69,7 @@
- RETURN(E_BAD_ARGUMENT);
-
- Normalize_Menu(menu);
-- menu->pad = pad;
-+ menu->pad = (unsigned char)pad;
-
- if (do_refresh)
- Refresh_Menu(menu);
-Index: menu/m_post.c
-Prereq: 1.29
---- ncurses-5.9/menu/m_post.c 2010-05-01 19:18:27.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_post.c 2012-06-09 23:54:35.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -37,7 +37,7 @@
-
- #include "menu.priv.h"
-
--MODULE_ID("$Id: m_post.c,v 1.29 2010/05/01 19:18:27 tom Exp $")
-+MODULE_ID("$Id: m_post.c,v 1.31 2012/06/09 23:54:35 tom Exp $")
-
- /*---------------------------------------------------------------------------
- | Facility : libnmenu
-@@ -67,7 +67,7 @@
- - it is a onevalued menu and it is the current item
- - or it has a selection value
- */
-- wattron(menu->win, menu->back);
-+ wattron(menu->win, (int)menu->back);
- if (item->value || (item == menu->curitem))
- {
- if (menu->marklen)
-@@ -79,13 +79,13 @@
- item. */
- if (!(menu->opt & O_ONEVALUE) && item->value && item != menu->curitem)
- {
-- wattron(menu->win, menu->fore);
-+ wattron(menu->win, (int)menu->fore);
- isfore = TRUE;
- }
- waddstr(menu->win, menu->mark);
- if (isfore)
- {
-- wattron(menu->win, menu->fore);
-+ wattron(menu->win, (int)menu->fore);
- isfore = FALSE;
- }
- }
-@@ -93,7 +93,7 @@
- else /* otherwise we have to wipe out the marker area */
- for (ch = ' ', i = menu->marklen; i > 0; i--)
- waddch(menu->win, ch);
-- wattroff(menu->win, menu->back);
-+ wattroff(menu->win, (int)menu->back);
- count += menu->marklen;
-
- /* First we have to calculate the attribute depending on selectability
-@@ -101,19 +101,19 @@
- */
- if (!(item->opt & O_SELECTABLE))
- {
-- wattron(menu->win, menu->grey);
-+ wattron(menu->win, (int)menu->grey);
- isgrey = TRUE;
- }
- else
- {
- if (item->value || item == menu->curitem)
- {
-- wattron(menu->win, menu->fore);
-+ wattron(menu->win, (int)menu->fore);
- isfore = TRUE;
- }
- else
- {
-- wattron(menu->win, menu->back);
-+ wattron(menu->win, (int)menu->back);
- isback = TRUE;
- }
- }
-@@ -158,10 +158,10 @@
- assert(cx >= 0 && cy >= 0);
- getyx(menu->win, ncy, ncx);
- if (isgrey)
-- wattroff(menu->win, menu->grey);
-+ wattroff(menu->win, (int)menu->grey);
- else if (isfore)
-- wattroff(menu->win, menu->fore);
-- wattron(menu->win, menu->back);
-+ wattroff(menu->win, (int)menu->fore);
-+ wattron(menu->win, (int)menu->back);
- for (j = 1; j < menu->spc_rows; j++)
- {
- if ((item_y + j) < getmaxy(menu->win))
-@@ -175,17 +175,17 @@
- }
- wmove(menu->win, ncy, ncx);
- if (!isback)
-- wattroff(menu->win, menu->back);
-+ wattroff(menu->win, (int)menu->back);
- }
- }
-
- /* Remove attributes */
- if (isfore)
-- wattroff(menu->win, menu->fore);
-+ wattroff(menu->win, (int)menu->fore);
- if (isback)
-- wattroff(menu->win, menu->back);
-+ wattroff(menu->win, (int)menu->back);
- if (isgrey)
-- wattroff(menu->win, menu->grey);
-+ wattroff(menu->win, (int)menu->grey);
- }
-
- /*---------------------------------------------------------------------------
-@@ -225,7 +225,7 @@
- {
- _nc_Post_Item(menu, hitem);
-
-- wattron(menu->win, menu->back);
-+ wattron(menu->win, (int)menu->back);
- if (((hitem = hitem->right) != lasthor) && hitem)
- {
- int i, j, cy, cx;
-@@ -244,7 +244,7 @@
- }
- }
- while (hitem && (hitem != lasthor));
-- wattroff(menu->win, menu->back);
-+ wattroff(menu->win, (int)menu->back);
-
- item = item->down;
- y += menu->spc_rows;
-@@ -305,7 +305,7 @@
- else
- RETURN(E_NOT_CONNECTED);
-
-- menu->status |= _POSTED;
-+ SetStatus(menu, _POSTED);
-
- if (!(menu->opt & O_ONEVALUE))
- {
-@@ -369,7 +369,7 @@
- delwin(menu->win);
- menu->win = (WINDOW *)0;
-
-- menu->status &= ~_POSTED;
-+ ClrStatus(menu, _POSTED);
-
- RETURN(E_OK);
- }
-Index: menu/m_req_name.c
-Prereq: 1.21
---- ncurses-5.9/menu/m_req_name.c 2009-10-10 16:17:23.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_req_name.c 2012-07-21 23:27:32.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2012 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 *
-@@ -37,7 +37,7 @@
-
- #include "menu.priv.h"
-
--MODULE_ID("$Id: m_req_name.c,v 1.21 2009/10/10 16:17:23 tom Exp $")
-+MODULE_ID("$Id: m_req_name.c,v 1.22 2012/07/21 23:27:32 tom Exp $")
-
- static const char *request_names[MAX_MENU_COMMAND - MIN_MENU_COMMAND + 1] =
- {
-@@ -99,23 +99,26 @@
- /* because the table is so small, it doesn't really hurt
- to run sequentially through it.
- */
-- unsigned int i = 0;
-+ size_t i = 0;
- char buf[16];
-
- T((T_CALLED("menu_request_by_name(%s)"), _nc_visbuf(str)));
-
-- if (str)
-+ if (str != 0 && (i = strlen(str)) != 0)
- {
-- strncpy(buf, str, sizeof(buf));
-- while ((i < sizeof(buf)) && (buf[i] != '\0'))
-+ if (i > sizeof(buf) - 2)
-+ i = sizeof(buf) - 2;
-+ memcpy(buf, str, i);
-+ buf[i] = '\0';
-+
-+ for (i = 0; buf[i] != '\0'; ++i)
- {
- buf[i] = (char)toupper(UChar(buf[i]));
-- i++;
- }
-
- for (i = 0; i < A_SIZE; i++)
- {
-- if (strncmp(request_names[i], buf, sizeof(buf)) == 0)
-+ if (strcmp(request_names[i], buf) == 0)
- returnCode(MIN_MENU_COMMAND + (int)i);
- }
- }
-Index: menu/m_spacing.c
-Prereq: 1.18
---- ncurses-5.9/menu/m_spacing.c 2010-01-23 21:20:10.000000000 +0000
-+++ ncurses-5.9-20141206/menu/m_spacing.c 2012-03-10 23:43:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -37,7 +37,7 @@
-
- #include "menu.priv.h"
-
--MODULE_ID("$Id: m_spacing.c,v 1.18 2010/01/23 21:20:10 tom Exp $")
-+MODULE_ID("$Id: m_spacing.c,v 1.19 2012/03/10 23:43:41 tom Exp $")
-
- #define MAX_SPC_DESC ((TABSIZE) ? (TABSIZE) : 8)
- #define MAX_SPC_COLS ((TABSIZE) ? (TABSIZE) : 8)
-@@ -70,9 +70,9 @@
- ((s_col < 0) || (s_col > MAX_SPC_COLS)))
- RETURN(E_BAD_ARGUMENT);
-
-- m->spc_desc = s_desc ? s_desc : 1;
-- m->spc_rows = s_row ? s_row : 1;
-- m->spc_cols = s_col ? s_col : 1;
-+ m->spc_desc = (short)(s_desc ? s_desc : 1);
-+ m->spc_rows = (short)(s_row ? s_row : 1);
-+ m->spc_cols = (short)(s_col ? s_col : 1);
- _nc_Calculate_Item_Length_and_Width(m);
-
- RETURN(E_OK);
-Index: menu/menu.priv.h
-Prereq: 1.23
---- ncurses-5.9/menu/menu.priv.h 2009-02-28 21:02:57.000000000 +0000
-+++ ncurses-5.9-20141206/menu/menu.priv.h 2014-11-01 14:47:00.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -30,7 +30,7 @@
- * Author: Juergen Pfeifer, 1995,1997 *
- ****************************************************************************/
-
--/* $Id: menu.priv.h,v 1.23 2009/02/28 21:02:57 juergen Exp $ */
-+/* $Id: menu.priv.h,v 1.25 2014/11/01 14:47:00 tom Exp $ */
-
- /***************************************************************************
- * Module menu.priv.h *
-@@ -39,6 +39,7 @@
-
- #ifndef MENU_PRIV_H_incl
- #define MENU_PRIV_H_incl 1
-+/* *INDENT-OFF* */
-
- #include "curses.priv.h"
- #include "mf_common.h"
-@@ -99,10 +100,11 @@
- */
- #define Adjust_Current_Item(menu,row,item) \
- { if ((item)->y < row) \
-- row = (item)->y;\
-- if ( (item)->y >= (row + (menu)->arows) )\
-- row = ( (item)->y < ((menu)->rows - row) ) ? \
-- (item)->y : (menu)->rows - (menu)->arows;\
-+ row = (short) (item)->y; \
-+ if ( (item)->y >= (row + (menu)->arows) ) \
-+ row = (short) (( (item)->y < ((menu)->rows - row) ) \
-+ ? (item)->y \
-+ : (menu)->rows - (menu)->arows); \
- _nc_New_TopRow_and_CurrentItem(menu,row,item); }
-
- /* Reset the match pattern buffer */
-@@ -128,12 +130,12 @@
-
- #ifdef TRACE
-
--#define returnItem(code) TRACE_RETURN(code,item)
--#define returnItemPtr(code) TRACE_RETURN(code,item_ptr)
--#define returnItemOpts(code) TRACE_RETURN(code,item_opts)
--#define returnMenu(code) TRACE_RETURN(code,menu)
--#define returnMenuHook(code) TRACE_RETURN(code,menu_hook)
--#define returnMenuOpts(code) TRACE_RETURN(code,menu_opts)
-+#define returnItem(code) TRACE_RETURN1(code,item)
-+#define returnItemPtr(code) TRACE_RETURN1(code,item_ptr)
-+#define returnItemOpts(code) TRACE_RETURN1(code,item_opts)
-+#define returnMenu(code) TRACE_RETURN1(code,menu)
-+#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 **);
-@@ -152,5 +154,6 @@
- #define returnMenuOpts(code) return code
-
- #endif /* TRACE/!TRACE */
-+/* *INDENT-ON* */
-
- #endif /* MENU_PRIV_H_incl */
-Index: menu/mf_common.h
-Prereq: 0.22
---- ncurses-5.9/menu/mf_common.h 2005-11-26 15:26:52.000000000 +0000
-+++ ncurses-5.9-20141206/menu/mf_common.h 2012-06-10 00:06:54.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2004,2012 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 *
-@@ -30,7 +30,7 @@
- * Author: Juergen Pfeifer, 1995,1997 *
- ****************************************************************************/
-
--/* $Id: mf_common.h,v 0.22 2005/11/26 15:26:52 tom Exp $ */
-+/* $Id: mf_common.h,v 0.24 2012/06/10 00:06:54 tom Exp $ */
-
- /* Common internal header for menu and form library */
-
-@@ -63,10 +63,9 @@
- #if USE_RCS_IDS
- #define MODULE_ID(id) static const char Ident[] = id;
- #else
--#define MODULE_ID(id) /*nothing*/
-+#define MODULE_ID(id) /*nothing */
- #endif
-
--
- /* Maximum regular 8-bit character code */
- #define MAX_REGULAR_CHARACTER (0xff)
-
-@@ -80,16 +79,19 @@
- #endif
-
- /* The few common values in the status fields for menus and forms */
--#define _POSTED (0x01U) /* menu or form is posted */
--#define _IN_DRIVER (0x02U) /* menu or form is processing hook routine */
-+#define _POSTED (0x01U) /* menu or form is posted */
-+#define _IN_DRIVER (0x02U) /* menu or form is processing hook routine */
-+
-+#define SetStatus(target,mask) (target)->status |= (unsigned short) (mask)
-+#define ClrStatus(target,mask) (target)->status = (unsigned short) (target->status & (~mask))
-
- /* Call object hook */
- #define Call_Hook( object, handler ) \
- if ( (object) != 0 && ((object)->handler) != (void *) 0 )\
- {\
-- (object)->status |= _IN_DRIVER;\
-+ SetStatus(object, _IN_DRIVER);\
- (object)->handler(object);\
-- (object)->status &= ~_IN_DRIVER;\
-+ ClrStatus(object, _IN_DRIVER);\
- }
-
- #endif /* MF_COMMON_H_incl */
-Index: misc/Makefile.in
-Prereq: 1.56
---- ncurses-5.9/misc/Makefile.in 2011-02-21 01:09:31.000000000 +0000
-+++ ncurses-5.9-20141206/misc/Makefile.in 2014-09-23 22:12:42.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.56 2011/02/21 01:09:31 tom Exp $
-+# $Id: Makefile.in,v 1.62 2014/09/23 22:12:42 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -56,7 +56,11 @@
- exec_prefix = @exec_prefix@
- bindir = @bindir@
- libdir = @libdir@
-+datarootdir = @datarootdir@
- datadir = @datadir@
-+includesubdir = @includesubdir@
-+
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-
- tabsetdir = $(datadir)/tabset
- ticdir = @TERMINFO@
-@@ -77,7 +81,7 @@
-
- sources :: terminfo.tmp
-
--install : install.data install.libs
-+install : @MISC_INSTALL_DATA@ install.libs
-
- install.data : terminfo.tmp \
- $(DESTDIR)$(libdir) \
-@@ -120,7 +124,8 @@
-
- run_tic.sed :
- WHICH_XTERM=@WHICH_XTERM@ \
-- ticdir=${ticdir} \
-+ XTERM_KBS=@XTERM_KBS@ \
-+ datadir=${datadir} \
- $(SHELL) $(srcdir)/gen_edit.sh >$@
-
- $(DESTDIR)$(bindir) \
-@@ -130,7 +135,7 @@
- $(DESTDIR)$(PKG_CONFIG_LIBDIR) :
- mkdir -p $@
-
--uninstall : uninstall.data uninstall.libs
-+uninstall : @MISC_UNINSTALL_DATA@ uninstall.libs
-
- uninstall.data :
- -test -d $(DESTDIR)$(tabsetdir) && rm -rf $(DESTDIR)$(tabsetdir)
-@@ -139,7 +144,7 @@
-
- uninstall.libs :
- -rm -f $(DESTDIR)$(bindir)/$(NCURSES_CONFIG)
--@MAKE_PC_FILES@ $(SHELL) 'for name in *.pc; do rm -f $(DESTDIR)$(PKG_CONFIG_LIBDIR)/$$name; done'
-+@MAKE_PC_FILES@ $(SHELL) -c 'for name in *.pc; do rm -f $(DESTDIR)$(PKG_CONFIG_LIBDIR)/$$name; done'
-
- tags :
-
-Index: misc/gen-pkgconfig.in
-Prereq: 1.8
---- ncurses-5.9/misc/gen-pkgconfig.in 2010-02-06 22:12:07.000000000 +0000
-+++ ncurses-5.9-20141206/misc/gen-pkgconfig.in 2014-01-18 20:21:45.000000000 +0000
-@@ -1,7 +1,7 @@
- #!@SHELL@
--# $Id: gen-pkgconfig.in,v 1.8 2010/02/06 22:12:07 Miroslav.Lichvar Exp $
-+# $Id: gen-pkgconfig.in,v 1.16 2014/01/18 20:21:45 tom Exp $
- ##############################################################################
--# Copyright (c) 2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 2009-2013,2014 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"), #
-@@ -28,7 +28,7 @@
- # authorization. #
- ##############################################################################
- #
--# Author: Thomas E. Dickey, 2009
-+# Author: Thomas E. Dickey
- #
- # The complete configure script for ncurses is the ncurses5-config (or similar
- # name, depending on the flavor, e.g., ncursesw5-config, ncurses6-config, etc).
-@@ -39,22 +39,22 @@
- # library, except that the tinfo library does not depend on ncurses.
- LIB_NAME=@LIB_NAME@
- TINFO_NAME=@TINFO_NAME@
--PANEL_NAME=panel # @PANEL_NAME@
--MENU_NAME=menu # @MENU_NAME@
--FORM_NAME=form # @FORM_NAME@
--CXX_NAME=ncurses++ # @CXX_NAME@
-+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@
-
- prefix="@prefix@"
- exec_prefix="@exec_prefix@"
--includedir="@includedir@"
-+includedir="@includedir@@includesubdir@"
- libdir="@libdir@"
-
- show_prefix='@prefix@'
- show_exec_prefix='@exec_prefix@'
--show_includedir='@includedir@'
-+show_includedir='@includedir@@includesubdir@'
- show_libdir='@libdir@'
-
- MAIN_LIBRARY="${LIB_NAME}@DFT_ARG_SUFFIX@"
-@@ -63,59 +63,42 @@
- MENU_LIBRARY="${MENU_NAME}@DFT_ARG_SUFFIX@"
- FORM_LIBRARY="${FORM_NAME}@DFT_ARG_SUFFIX@"
-
--SUB_LIBRARY_REQ=${SUB_LIBRARY}
--if test $TINFO_NAME = $LIB_NAME ; then
-- SUB_LIBRARY_REQ=
-+if test "$includedir" = "/usr/include" ; then
-+ CFLAGS=
-+else
-+ CFLAGS="-I\${includedir}"
- fi
-
--for lib in ../lib/*
--do
-- name=`basename $lib`
-- if test "$name" = "*" ; then
-- break
-- fi
--
-- root=`basename $name "$DFT_DEP_SUFFIX"`
-- if test "$name" = "$root" ; then
-- root=`basename $name "$CXX_LIB_SUFFIX"`
-- if test "$name" = "$root" ; then
-- continue
-- fi
-- fi
-+if test "$libdir" = "/usr/lib" ; then
-+ LDFLAGS=
-+else
-+ LDFLAGS="-L\${libdir}"
-+fi
-
-- name=`echo "$name" | sed -e 's/^lib//' -e 's/\..*$//'`
-+for name in @PC_MODULES_TO_MAKE@
-+do
-+ name="${name}"
-
- desc="ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@"
-+ reqs=
-+
- if test $name = $MAIN_LIBRARY ; then
-- reqs=$SUB_LIBRARY_REQ
- desc="$desc library"
- elif test $name = $SUB_LIBRARY ; then
-- reqs=
- desc="$desc terminal interface library"
- elif expr $name : ".*${CXX_NAME}.*" >/dev/null ; then
-- reqs="$PANEL_LIBRARY $MENU_LIBRARY $FORM_LIBRARY $MAIN_LIBRARY $SUB_LIBRARY_REQ"
-+ reqs="$PANEL_LIBRARY, $MENU_LIBRARY, $FORM_LIBRARY, $MAIN_LIBRARY"
- desc="$desc add-on library"
- else
-- reqs="$MAIN_LIBRARY $SUB_LIBRARY_REQ"
-+ reqs="$MAIN_LIBRARY"
- desc="$desc add-on library"
- fi
-
-- if test "$includedir" = "/usr/include" ; then
-- cflags=
-- else
-- cflags="-I\${includedir}"
-- fi
--
-- if test "$libdir" = "/usr/lib" ; then
-- libs=
-- else
-- libs="-L\${libdir}"
-- fi
-- libs="$libs -l$name"
--
-- # add dependencies that pkg-config cannot guess about
-- if test -z "$reqs" ; then
-- libs="$libs @LIBS@"
-+ if test $name != $SUB_LIBRARY && test $SUB_LIBRARY != $MAIN_LIBRARY ; then
-+ if test $name != $TINFO_NAME ; then
-+ test -n "$reqs" && reqs="$reqs, "
-+ reqs="${reqs}${SUB_LIBRARY}"
-+ fi
- fi
-
- echo "** creating ${name}.pc"
-@@ -130,10 +113,13 @@
- Name: $name
- Description: $desc
- Version: \${version}
--Requires: $reqs
--Libs: $libs
--Cflags: $cflags
-+URL: http://invisible-island.net/ncurses
-+Requires.private: $reqs
-+Libs: $LDFLAGS -l$name
-+Libs.private: @LIBS@
-+Cflags: $CFLAGS
- EOF
-- # pr -f ${name}.pc
-+
-+ #pr -f ${name}.pc
- done
- # vile:shmode
-Index: misc/gen_edit.sh
-Prereq: 1.1
---- ncurses-5.9/misc/gen_edit.sh 2004-07-11 15:01:29.000000000 +0000
-+++ ncurses-5.9-20141206/misc/gen_edit.sh 2012-04-01 15:04:37.000000000 +0000
-@@ -1,6 +1,6 @@
- #!/bin/sh
- ##############################################################################
--# Copyright (c) 2004 Free Software Foundation, Inc. #
-+# Copyright (c) 2004-2011,2012 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"), #
-@@ -29,7 +29,7 @@
- #
- # Author: Thomas E. Dickey
- #
--# $Id: gen_edit.sh,v 1.1 2004/07/11 15:01:29 tom Exp $
-+# $Id: gen_edit.sh,v 1.5 2012/04/01 15:04:37 tom Exp $
- # Generate a sed-script for converting the terminfo.src to the form which will
- # be installed.
- #
-@@ -37,22 +37,82 @@
- # The leaf directory names (lib, tabset, terminfo)
- #
-
--: ${ticdir=@TERMINFO@}
--: ${xterm_new=@WHICH_XTERM@}
-+linux_dft=linux2.2
-+
-+: ${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).
--TABSET=`echo $ticdir | sed -e 's%/terminfo$%/tabset%'`
-+TABSET=${datadir}/tabset
- if test "x$TABSET" != "x/usr/share/tabset" ; then
- cat <<EOF
- s%/usr/share/tabset%$TABSET%g
- EOF
- fi
-
--if test "$xterm_new" != "xterm-new" ; then
-+if test "$WHICH_XTERM" != "xterm-new" ; then
-+echo "** using $WHICH_XTERM terminal description for XTerm entry" >&2
- cat <<EOF
- /^# This is xterm for ncurses/,/^$/{
- s/use=xterm-new,/use=$WHICH_XTERM,/
- }
- EOF
- fi
-+
-+if test "$XTERM_KBS" != "BS" ; then
-+echo "** using DEL for XTerm backspace-key" >&2
-+cat <<EOF
-+/^xterm+kbs|fragment for backspace key/,/^#/{
-+ s/kbs=^H,/kbs=^?,/
-+}
-+EOF
-+fi
-+
-+# Work around incompatibities built into Linux console. The 2.6 series added
-+# a patch to fixup the SI/SO behavior, which is closer to vt100, but the older
-+# kernels do not recognize those controls. All of the kernels recognize the
-+# older flavor of rmacs/smacs, but beginning in the late 1990s, changes made
-+# as part of implementing UTF-8 prevent using those for line-drawing when the
-+# console is in UTF-8 mode. Taking into account the fact that it took about
-+# ten years to provide (and distribute) the 2.6 series' change for SI/SO, the
-+# default remains "linux2.2".
-+case x$WHICH_LINUX in #(vi
-+xauto)
-+ system=`uname -s 2>/dev/null`
-+ if test "x$system" = xLinux
-+ then
-+ case x`uname -r` in
-+ x1.*)
-+ WHICH_LINUX=linux-c
-+ ;;
-+ x2.[0-4]*)
-+ WHICH_LINUX=linux2.2
-+ ;;
-+ *)
-+ WHICH_LINUX=linux3.0
-+ ;;
-+ esac
-+ else
-+ WHICH_LINUX=$linux_dft
-+ fi
-+ ;;
-+xlinux*)
-+ # allow specific setting
-+ ;;
-+*)
-+ WHICH_LINUX=$linux_dft
-+ ;;
-+esac
-+
-+if test $WHICH_LINUX != $linux_dft
-+then
-+echo "** using $WHICH_LINUX terminal description for Linux console" >&2
-+cat <<EOF
-+/^# This is Linux console for ncurses/,/^$/{
-+ s/use=$linux_dft,/use=$WHICH_LINUX,/
-+}
-+EOF
-+fi
-Index: misc/ncurses-config.in
-Prereq: 1.25
---- ncurses-5.9/misc/ncurses-config.in 2011-03-19 22:43:38.000000000 +0000
-+++ ncurses-5.9-20141206/misc/ncurses-config.in 2012-11-11 00:14:28.000000000 +0000
-@@ -1,7 +1,7 @@
- #!@SHELL@
--# $Id: ncurses-config.in,v 1.25 2011/03/19 22:43:38 tom Exp $
-+# $Id: ncurses-config.in,v 1.30 2012/11/11 00:14:28 tom Exp $
- ##############################################################################
--# Copyright (c) 2006-2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 2006-2011,2012 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"), #
-@@ -30,22 +30,48 @@
- #
- # Author: Thomas E. Dickey, 2006-on
-
-+LANG=C; export LANG
-+LANGUAGE=C; export LANGUAGE
-+LC_ALL=C; export LC_ALL
-+LC_CTYPE=C; export LC_CTYPE
-+
- prefix="@prefix@"
- exec_prefix="@exec_prefix@"
-
- bindir="@bindir@"
- includedir="@includedir@"
- libdir="@libdir@"
-+datarootdir="@datarootdir@"
- datadir="@datadir@"
- mandir="@mandir@"
-
- THIS="@LIB_NAME@@DFT_ARG_SUFFIX@"
- TINFO_LIB="@TINFO_ARG_SUFFIX@"
-+RPATH_LIST="@RPATH_LIST@"
-
--LANG=C; export LANG
--LANGUAGE=C; export LANGUAGE
--LC_ALL=C; export LC_ALL
--LC_CTYPE=C; export LC_CTYPE
-+# Ensure that RPATH_LIST contains only absolute pathnames, if it is nonempty.
-+# We cannot filter it out within the build-process since the variable is used
-+# in some special cases of installation using a relative path.
-+if test -n "$RPATH_LIST"
-+then
-+ save_IFS="$IFS"
-+ IFS='@PATH_SEPARATOR@'
-+ filtered=
-+ for item in $RPATH_LIST
-+ do
-+ case "$item" in
-+ ./*|../*|*/..|*/../*)
-+ ;;
-+ *)
-+ test -n "$filtered" && filtered="${filtered}@PATH_SEPARATOR@"
-+ filtered="${filtered}${item}"
-+ ;;
-+ esac
-+ done
-+ IFS="$save_IFS"
-+ # if the result is empty, there is little we can do to fix it
-+ RPATH_LIST="$filtered"
-+fi
-
- # with --disable-overwrite, we installed into a subdirectory, but transformed
- # the headers to include like this:
-@@ -83,13 +109,19 @@
- ENDECHO
- ;;
- --libs)
-+ if test "$libdir" = /usr/lib
-+ then
-+ LIBDIR=
-+ else
-+ LIBDIR=-L$libdir
-+ fi
- if test @TINFO_NAME@ = @LIB_NAME@ ; then
- sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO
-- -L$libdir @EXTRA_LDFLAGS@ -l${THIS} @LIBS@
-+ $LIBDIR @EXTRA_LDFLAGS@ -l${THIS} @LIBS@
- ENDECHO
- else
- sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO
-- -L$libdir @EXTRA_LDFLAGS@ -l${THIS} -l${TINFO_LIB} @LIBS@
-+ $LIBDIR @EXTRA_LDFLAGS@ -l${THIS} -l${TINFO_LIB} @LIBS@
- ENDECHO
- fi
- ;;
-@@ -163,4 +195,5 @@
- esac
- shift
- done
-+# vi:ts=4 sw=4
- # vile:shmode
-Index: misc/run_tic.in
-Prereq: 1.32
---- ncurses-5.9/misc/run_tic.in 2011-02-23 23:30:15.000000000 +0000
-+++ ncurses-5.9-20141206/misc/run_tic.in 2012-10-06 19:00:51.000000000 +0000
-@@ -1,7 +1,7 @@
- #!@SHELL@
--# $Id: run_tic.in,v 1.32 2011/02/23 23:30:15 tom Exp $
-+# $Id: run_tic.in,v 1.34 2012/10/06 19:00:51 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2011,2012 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"), #
-@@ -41,13 +41,14 @@
- # The script is designed to be run from the misc/Makefile as
- # make install.data
-
--: ${suffix:=@PROG_EXT@}
-+: ${suffix:=@EXEEXT@}
- : ${DESTDIR:=@DESTDIR@}
- : ${prefix:=@prefix@}
- : ${exec_prefix:=@exec_prefix@}
- : ${bindir:=@bindir@}
- : ${top_srcdir:=@top_srcdir@}
- : ${srcdir:=@srcdir@}
-+: ${datarootdir:=@datarootdir@}
- : ${datadir:=@datadir@}
- : ${TIC_PATH:=@TIC_PATH@}
- : ${ticdir:=@TERMINFO@}
-Index: misc/terminfo.src
---- ncurses-5.9/misc/terminfo.src 2011-02-20 20:46:53.000000000 +0000
-+++ ncurses-5.9-20141206/misc/terminfo.src 2014-10-19 01:16:56.000000000 +0000
-@@ -6,8 +6,8 @@
- # Report bugs and new terminal descriptions to
- # bug-ncurses@gnu.org
- #
--# $Revision: 1.383 $
--# $Date: 2011/02/20 20:46:53 $
-+# $Revision: 1.525 $
-+# $Date: 2014/10/19 01:16:56 $
- #
- # 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
-@@ -321,7 +321,7 @@
- # DEL and ^C are hardcoded to act as kill characters.
- # ^D acts as a line break (just like newline).
- # It also interprets
--# \033];xxx\007
-+# \033];xxx\007
- # for compatibility with xterm -TD
- 9term|Plan9 terminal emulator for X,
- am,
-@@ -376,11 +376,19 @@
- dim=\E[2m,
- sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p5%t2;%;%?%p7%t8;%;m,
- use=ansi+sgr, use=ansi+sgrso, use=ansi+sgrul,
--ansi+pp|ansi printer port,
-- mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
- ansi+csr|ansi scroll-region plus cursor save & restore,
- csr=\E[%i%p1%d;%p2%dr, rc=\E8, sc=\E7,
-
-+# The normal (ANSI) flavor of "media copy" building block asserts that
-+# characters sent to the printer do not echo on the screen. DEC terminals
-+# can also be put into autoprinter mode, where each line is sent to the
-+# printer as you move off that line, e.g., by a carriage return.
-+ansi+pp|ansi printer port,
-+ mc5i,
-+ mc0=\E[i, mc4=\E[4i, mc5=\E[5i,
-+dec+pp|DEC autoprinter mode,
-+ mc0=\E[i, mc4=\E[?4i, mc5=\E[?5i,
-+
- # The IBM PC alternate character set. Plug this into any Intel console entry.
- # We use \E[11m for rmacs rather than \E[12m so the <acsc> string can use the
- # ROM graphics for control characters such as the diamond, up- and down-arrow.
-@@ -456,9 +464,10 @@
- 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,
- dch=\E[%p1%dP, dispc=\E=%p1%dg, ech=\E[%p1%dX,
-- hpa=\E[%i%p1%dG, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL,
-- indn=\E[%p1%dS, rc=\E7, rin=\E[%p1%dT, rmam=\E[?7l, sc=\E7,
-- smam=\E[?7h, tbc=\E[g, vpa=\E[%i%p1%dd,
-+ hpa=\E[%i%p1%dG, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
-+ il=\E[%p1%dL, indn=\E[%p1%dS, rc=\E7, rin=\E[%p1%dT,
-+ rmam=\E[?7l, sc=\E7, smam=\E[?7h, tbc=\E[g,
-+ vpa=\E[%i%p1%dd,
-
- #### ANSI/ECMA-48 terminals and terminal emulators
- #
-@@ -488,7 +497,7 @@
- # ansi-mtabs adds relative addressing and minimal tab support
- ansi-mtabs|any ansi terminal with pessimistic assumptions,
- it#8,
-- ht=^I, use=ansi+local1, use=ansi-mini,
-+ ht=^I, use=ansi-mini, use=ansi+local1,
-
- # ANSI X3.64 from emory!mlhhh (Hugh Hansard) via BRL
- #
-@@ -655,7 +664,7 @@
- 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}%<%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,
-+ 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,
-
- #
-@@ -689,12 +698,8 @@
- is2=U4 PC-DOS Public Domain NANSI.SYS with keypad redefined for vi 9-29-86\n\E[;75;8p,
- use=ansi.sysk,
-
--#### ANSI console types
--#
-+#### Atari ST terminals
-
--#############################################################################
--#
--# Atari ST terminals.
- # From Guido Flohr <gufl0000@stud.uni-sb.de>.
- #
- tw52|tw52-color|Toswin window manager with color,
-@@ -799,9 +804,6 @@
- rmul=\EzH, rs1=\Ez_\Eb@\EcA, sgr0=\Ez_, smcup=\Ev\Ee\Ez_,
- smso=\Ep, smul=\EyH,
-
--#### Atari ST
--#
--
- # From: Simson L. Garfinkel <simsong@media-lab.mit.edu>
- atari-old|atari st,
- OTbs, am,
-@@ -835,16671 +837,17280 @@
- ri=\EI, rmcup=, rmso=\Eq, rs1=\Ez_\Eb@\EcA, sc=\Ej, sgr0=\Eq,
- smcup=\Ee, smso=\Ep,
-
--#### BeOS
--#
--# BeOS entry for Terminal program Seems to be almost ANSI
--beterm|BeOS Terminal,
-- am, eo, mir, msgr, xenl, xon,
-- colors#8, cols#80, it#8, lines#25, ncv#5, pairs#64,
-- bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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,
-- hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, 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=^M^J, 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,
--
--#### Linux consoles
--#
-+#### Apple Terminal.app
-
--# This entry is good for the 1.2.13 or later version of the Linux console.
-+# nsterm*|Apple_Terminal - AppKit Terminal.app
- #
--# ***************************************************************************
--# * *
--# * WARNING: *
--# * Linuxes come with a default keyboard mapping kcbt=^I. This entry, in *
--# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab *
--# * character. Here are the keymap replacement lines that will set this up: *
--# * *
--# keycode 15 = Tab Tab
--# alt keycode 15 = Meta_Tab
--# shift keycode 15 = F26
--# string F26 ="\033[Z"
--# * *
--# * This has to use a key slot which is unfortunate (any unused one will *
--# * do, F26 is the higher-numbered one). The change ought to be built *
--# * into the kernel tables. *
--# * *
--# ***************************************************************************
-+# Terminal.app is a Terminal emulator bundled with NeXT's NeXTStep and
-+# OPENSTEP/Mach operating systems, and with Apple's Rhapsody, Mac OS X
-+# Server and Mac OS X operating systems. There is also a
-+# "terminal.app" in GNUStep, but I believe it to be an unrelated
-+# codebase and I have not attempted to describe it here.
- #
--# All linux kernels since 1.2.13 (at least) set the screen size
--# themselves; this entry assumes that capability.
-+# For NeXTStep, OPENSTEP/Mach, Rhapsody and Mac OS X Server 1.0, you
-+# are pretty much on your own. Use "nsterm-7-m" and hope for the best.
-+# You might also try "nsterm-7" and "nsterm-old" if you suspect your
-+# version supports color.
- #
--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\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-- bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- 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, ech=\E[%p1%dX, ed=\E[J,
-- el=\E[K, el1=\E[1K, flash=\E[?5h\E[?5l$<200/>, 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=^J, kb2=\E[G, kbs=\177,
-- 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=^M^J, 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%;%?%p7%t;8%;%?%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,
--
--linux-m|Linux console no color,
-- colors@, pairs@,
-- setab@, setaf@, setb@, setf@, use=linux,
--
--# The 1.3.x kernels add color-change capabilities; if yours doesn't have this
--# and it matters, turn off <ccc>. The %02x escape used to implement this is
--# 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,
-- 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,
-- 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'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p3%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p4%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;,
-- oc=\E]R, use=linux-basic,
--
--# 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>.
--linux|linux console,
-- civis=\E[?25l\E[?1c, cnorm=\E[?25h\E[?0c,
-- cvvis=\E[?25h\E[?8c, use=linux-c-nc,
--
--# Subject: linux 2.6.26 vt back_color_erase
--# Changes to the Linux console driver broke bce model as reported in
--# https://bugzilla.novell.com/show_bug.cgi?id=418613
--# apparently from
--# http://lkml.org/lkml/2008/4/26/305
--# http://groups.google.com/group/fa.linux.kernel/browse_thread/thread/87f98338f0d636bb/aa96e8b86cee0d1e?lnk=st&q=#aa96e8b86cee0d1e
--linux2.6.26|linux console w/o bce,
-- bce@, use=linux,
--
--# 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,
-- 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,
-- 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,
-- use=linux, use=klone+koi8acs,
--
--# 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,
-- use=linux, use=klone+koi8acs,
--
--# Entry for the latin1 and latin2 fonts
--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,
-- use=linux,
--
--# 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,
-- acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~,
-- rmacs=\E(K, rmpch@, sgr@, sgr0=\E[0m\E(K\017, smacs=\E(0,
-- smpch@, use=linux,
--
--# This is based on the Linux console (relies on the console to perform some
--# of the functionality), but does not recognize as many control sequences.
--# The program comes bundled with an old (circa 1998) copy of the Linux
--# console terminfo. It recognizes some non-ANSI/VT100 sequences such as
--# \E* move cursor to home, as as \E[H
--# \E,X same as \E(X
--# \EE move cursor to beginning of row
--# \E[y,xf same as \E[y,xH
-+# To determine the version of Terminal.app you're using by running:
- #
--# Note: The status-line support is buggy (dsl does not work).
--kon|kon2|jfbterm|Kanji ON Linux console,
-- ccc@, hs,
-- civis@, cnorm@, cvvis@, dsl=\E[?H, flash@, fsl=\E[?F, initc@,
-- initp@, kcbt@, oc@, op=\E[37;40m, rs1=\Ec, tsl=\E[?T,
-- use=linux,
--
--# 16-color linux console entry; this works with a 256-character
--# console font but bright background colors turn into dim ones when
--# you use a 512-character console font. This uses bold for bright
--# foreground colors and blink for bright background colors.
--linux-16color|linux console with 16 colors,
-- colors#16, ncv#54, pairs#256,
-- setab=\E[4%p1%{8}%m%d%?%p1%{8}%>%t;5%e%p1%{8}%=%t;2%e;25%;m,
-- setaf=\E[3%p1%{8}%m%d%?%p1%{8}%>%t;1%e%p1%{8}%=%t;2%e;21%;m,
-- use=linux,
--
--# bterm (bogl 0.1.18)
--# Implementation is in bogl-term.c
--# Key capabilities from linux terminfo entry
-+# echo "$TERM_PROGRAM" "$TERM_PROGRAM_VERSION"
- #
--# Notes:
--# bterm only supports acs using wide-characters, has case for these: qjxamlkut
--# bterm does not support sgr, since it only processes one parameter -TD
--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=^M, cub1=^H, cud1=^J,
-- cup=\E[%i%p1%d;%p2%dH, ed=\E[J, el=\E[K, home=\E[H, ind=^J,
-- kb2=\E[G, kbs=\177, 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=^M^J,
-- op=\E49;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,
--
--#### Mach
-+# For Apple_Terminal v309+, use "nsterm-256color" (or "nsterm-bce")
- #
--
--# From: Matthew Vernon <mcv21@pick.sel.cam.ac.uk>
--mach|Mach Console,
-- am, km,
-- cols#80, it#8, lines#25,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-- cuu=\E[%p1%dA, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J,
-- el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\E[9, kend=\E[Y, kf1=\EOP, kf10=\EOY, kf2=\EOQ,
-- kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW,
-- 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,
-- rmul=\E[0m, smul=\E[1m, use=mach,
--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,
--
--# From: Marcus Brinkmann
--# http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/hurd/hurd/console/
-+# For Apple_Terminal v200+, use "nsterm-16color" (a.k.a. "nsterm")
- #
--# Comments in the original are summarized here:
-+# For Apple_Terminal v71+/v100+, use "nsterm-bce".
- #
--# hurd uses 8-bit characters (km).
-+# For Apple_Terminal v51+, use "nsterm-7-c" or "nsterm-7-c-s".
- #
--# Although it doesn't do XON/XOFF, we don't want padding characters (xon).
-+# For Apple_Terminal v41+, use "nsterm-old", or "nsterm-s".
- #
--# Regarding compatibility to vt100: hurd doesn't specify <xenl>, as we don't
--# have the eat_newline_glitch. It doesn't support setting or removing tab
--# stops (hts/tbc).
-+# For all earlier versions (Apple_Terminal), try "nsterm-7-m"
-+# (monochrome) or "nsterm-7" (color); "nsterm-7-m-s" and "nsterm-7-s"
-+# might work too, but really you're on your own here since these
-+# systems are very obsolete and I can't test them. I do welcome
-+# patches, though :).
-+
-+# Other Terminals:
- #
--# hurd uses ^H instead of \E[D for cub1, as only ^H implements <bw> and it is
--# one byte instead three.
-+# For GNUstep_Terminal, you're probably best off using "linux" or
-+# writing your own terminfo.
-+
-+# For MacTelnet, you're on your own. It's a different codebase, and
-+# seems to be somewhere between "vt102", "ncsa" and "xterm-color".
-+
-+# For iTerm.app, see "iterm".
-+
- #
--# <ich1> is not included because hurd has insert mode.
-+# The AppKit Terminal.app descriptions all have names beginning with
-+# "nsterm". Note that the statusline (-s) versions use the window
-+# titlebar as a phony status line, and may produce warnings during
-+# compilation as a result ("tsl uses 0 parameters, expected 1".)
-+# Ignore these warnings, or even ignore these entries entirely. Apps
-+# which need to position the cursor or do other fancy stuff inside the
-+# status line won't work with these entries. They're primarily useful
-+# for programs like Pine which provide simple notifications in the
-+# status line. Please note that non-ASCII characters don't work right
-+# in the status line, since Terminal.app incorrectly interprets their
-+# Unicode codepoints as MacRoman codepoints (in earlier Mac OS X
-+# versions) or only accepts status lines consisting entirely of
-+# characters from the first 256 Unicode positions (including C1 but
-+# not C0 or DEL.)
- #
--# hurd doesn't use ^J for scrolling, because this could put things into the
--# scrollback buffer.
-+# The Mythology* of AppKit Terminal.app:
- #
--# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode.
--# This is a GNU extension.
-+# In the days of NeXTSTep 0.x and 1.x there were two incompatible
-+# bundled terminal emulators, Shell and Terminal. Scott Hess wrote a
-+# shareware replacement for Terminal called "Stuart" which NeXT bought
-+# and used as the basis for the Terminal.app in NeXTstep 2+,
-+# OPENSTEP/Mach, Apple Rhapsody, Mac OS X Server 1.0, and Mac OS X. I
-+# don't know the TERM_PROGRAM and TERM_PROGRAM_VERSION settings or
-+# capabilities for the early versions, but I believe that the
-+# TERM_PROGRAM_VERSION may have been reset at some point.
- #
--# The original has commented-out ncv, but is restored here.
-+# The early versions were tailored to the NeXT character set. Sometime
-+# after the Apple aquisition the encoding was swiched to MacRoman
-+# (initally with serious altcharset bugs due to incomplete conversion
-+# of the old NeXT code,) and then later to UTF-8. Alos sometime during
-+# or just prior to the early days of Mac OS X, the Terminal grew ANSI
-+# 8-color support (initially buggy when combined with attributes, but
-+# that was later fixed.) More recently, around Mac OS X version 10.3
-+# or so (Terminal.app v100+) xterm-like 16-color support was added. In
-+# some versions (for instance 133-1 which shipped with Mac OS X
-+# version 10.4) this suffered from the <bce> bug, but that seems to
-+# have been fixed in Mac OS X version 10.5 (Terminal.app v240.2+).
- #
--# Reading the source, RIS resets cnorm, but not xmous.
--hurd|The GNU Hurd console server,
-- am, bce, bw, eo, km, mir, msgr, xon,
-- colors#8, it#8, ncv#18, pairs#64,
-- acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
-- clear=\Ec, cnorm=\E[?25h, cr=^M, 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, indn=\E[%p1%dS,
-- invis=\E[8m, kb2=\E[G, kbs=\177, 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~, 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=^M^J, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\E[T,
-- rin=\E[%p1%dT, ritm=\E[23m, 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, sitm=\E[3m, smacs=\E[11m, smir=\E[4h,
-- smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, grbom=\E[>1l,
-- gsbom=\E[>1h,
--
--#### OSF Unix
-+# In the early days of Mac OS X the terminal was fairly buggy and
-+# would routinely crash under load. Many of these bugs seem to have
-+# been fixed around Mac OS X version 10.3 (Terminal.app v100+) but
-+# some may still remain. This change seems to correspond to
-+# Terminal.app reporting "xterm-color" as $TERM rather than "vt100" as
-+# it did previously.
- #
--
--# OSF/1 1.1 Snapshot 2
--pmcons|pmconsole|PMAX console,
-- am,
-- cols#128, lines#57,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ht=^I,
-- ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
--
--# SCO console and SOS-Syscons console for 386bsd
--# (scoansi: had unknown capabilities
--# :Gc=N:Gd=K:Gh=M:Gl=L:Gu=J:Gv=\072:\
--# :GC=E:GD=B:GH=D:GL=\64:GU=A:GV=\63:GR=C:
--# :G1=?:G2=Z:G3=@:G4=Y:G5=;:G6=I:G7=H:G8=<:\
--# :CW=\E[M:NU=\E[N:RF=\E[O:RC=\E[P:\
--# :WL=\E[S:WR=\E[T:CL=\E[U:CR=\E[V:\
--# I renamed GS/GE/HM/EN/PU/PD/RT and added klone+sgr-dumb, based
--# on the <smacs>=\E[12m -- esr)
-+# * This may correspond with what actually happened, but I don't
-+# know. It is based on guesswork, hearsay, private correspondence,
-+# my faulty memory, and the following online sources and references:
- #
--# klone+sgr-dumb is an error since the acsc does not match -TD
-+# [1] "Three Scotts and a Duane" by Simson L. Garfinkel
-+# http://www.nextcomputers.org/NeXTfiles/Articles/NeXTWORLD/93.8/93.8.Dec.Community1.html
- #
--# In this description based on SCO's keyboard(HW) manpage list of default
--# function key values:
--# F13-F24 are shifted F1-F12
--# F25-F36 are control F1-F12
--# F37-F48 are shift+control F1-F12
-+# [2] NeXTSTEP entry from Wikipedia, the free encyclopedia
-+# https://secure.wikimedia.org/wikipedia/en/wiki/Nextstep
- #
--# hpa/vpa work in the console, but not in scoterm:
--# hpa=\E[%p1%dG,
--# vpa=\E[%p1%dd,
-+# * Renamed the AppKit Terminal.app entry from "Apple_Terminal" to
-+# "nsterm" to comply with the name length and case conventions and
-+# limitations of various software packages [notably Solaris terminfo
-+# and UNIX.] A single Apple_Terminal alias is retained for
-+# backwards-compatbility.
- #
--# SCO's terminfo uses
--# kLFT=\E[d,
--# kRIT=\E[c,
--# which do not work (console or scoterm).
-+# * Added function key support (F1-F4). These only work in Terminal.app
-+# version 51, hopefully the capabilities won't cause problems for people
-+# using version 41.
- #
--# Console documents only 3 attributes can be set with SGR (so we don't use sgr).
--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\:\:;;<<==>>FFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXX`\204a0fxgqh2jYk?lZm@nEqDtCu4vAwBx3yszr{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,
-- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-- cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[=0;12C, dch=\E[%p1%dP,
-- dch1=\E[P, dispc=\E[=%p1%dg, dl=\E[%p1%dM, dl1=\E[M,
-- ed=\E[m\E[J, el=\E[m\E[K, el1=\E[1K, home=\E[H, ht=^I,
-- hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L,
-- ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, kbeg=\E[E, kbs=^H,
-- kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W,
-- kf12=\E[X, kf13=\E[Y, kf15=\E[a, kf16=\E[b, kf17=\E[c,
-- kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f, kf21=\E[g,
-- kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k, kf26=\E[l,
-- kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O, kf30=\E[p,
-- kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t, kf35=\E[u,
-- kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y, kf4=\E[P,
-- kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\, 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, knp=\E[G, kpp=\E[I, op=\E[0;37;40m, rc=\E8,
-- rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m,
-- rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sc=\E7,
-- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0;10m,
-- smacs=\E[12m, smam=\E[?7h, smso=\E[7m, smul=\E[4m,
--scoansi-new|SCO Extended ANSI standard crt (5.0.6),
-- km,
-- civis=\E[=0c, cnorm=\E[=1c, csr=\E[%i%p1%d;%p2%dr,
-- cvvis=\E[=2c, mgc=\E[=r, oc=\E[51m, op=\E[50m,
-- rep=\E[%p1%d;%p2%db, rmm=\E[=11L,
-- sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%;m,
-- smgb=\E[=1;0m, smgbp=\E[=1;%i%p1%dm,
-- smglp=\E[=2;%i%p1%dm, smgr=\E[=3;0m,
-- smgrp=\E[=3;%i%p1%dm, smgt=\E[=0;0m,
-- smgtp=\E[=0;%i%p1%dm, smm=\E[=10L,
-- wind=\E[%i%p1%d;%p2%d;%i%p3%d;%p4%dr,
-- use=scoansi-old,
--# make this easy to change...
--scoansi|SCO Extended ANSI standard crt,
-- use=scoansi-old,
--
--# This actually describes the generic SVr4 display driver for Intel boxes.
--# The <dim=\E[2m> isn't documented and therefore may not be reliable.
--# From: Eric Raymond <esr@snark.thyrsus.com> Mon Nov 27 19:00:53 EST 1995
--att6386|at386|386at|AT&T WGS 6386 console,
-- am, bw, eo, xon,
-- cols#80, it#8, lines#25,
-- acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[=C,
-- clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, 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[1M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
-- home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
-- ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=\E[S,
-- indn=\E[%p1%dS, invis=\E[9m, is2=\E[0;10;39m, kbs=^H,
-- kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\E[P, 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[@,
-- knp=\E[U, kpp=\E[V, krmir=\E0, nel=\r\E[S, rc=\E8, rev=\E[7m,
-- ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m, rmso=\E[m, rmul=\E[m,
-- sc=\E7,
-- sgr=\E[10m\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p9%t;12%e;10%;%?%p7%t;9%;m,
-- sgr0=\E[0;10m, smacs=\E[12m, smso=\E[7m, smul=\E[4m,
-- tbc=\E[3g, vpa=\E[%i%p1%dd, use=klone+color,
--# (pc6300plus: removed ":KM=/usr/lib/ua/kmap.s5:"; renamed BO/EE/CI/CV -- esr)
--pc6300plus|AT&T 6300 plus,
-- OTbs, am, xon,
-- cols#80, lines#24,
-- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[=C,
-- clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, cub1=^H, cud1=\E[B,
-- cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A,
-- dch1=\E[1P, dim=\E[2m, dl1=\E[1M, ed=\E[0J, el=\E[0K,
-- home=\E[H, hts=\EH, ich1=\E[1@, il1=\E[1L, ind=^J,
-- invis=\E[9m, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kf1=\EOc, kf10=\EOu, kf2=\EOd, kf3=\EOe,
-- kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\EOk,
-- nel=^M^J, rev=\E[7m, rmso=\E[m, rmul=\E[m, sgr0=\E[m,
-- smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-+# * Added "full color" (-c) entries which support the 16-color mode in
-+# version 51.
-+#
-+# * By default, version 51 uses UTF-8 encoding with broken altcharset
-+# support, so "ASCII" (-7) entries without altcharset support were
-+# added.
-
--# From: Benjamin C. W. Sittler <bsittler@nmt.edu>
-+# nsterm - AppKit Terminal.app
- #
--# I have a UNIX PC which I use as a terminal attached to my Linux PC.
--# Unfortunately, the UNIX PC terminfo entry that comes with ncurses
--# is broken. All the special key sequences are broken, making it unusable
--# with Emacs. The problem stems from the following:
-+# Apple's Mac OS X includes a Terminal.app derived from the old NeXT
-+# Terminal.app. It is a partial VT100 emulation with some xterm-like
-+# extensions. This terminfo was written to describe versions 41
-+# (shipped with Mac OS X version 10.0) and 51 (shipped with Mac OS X
-+# version 10.1) of Terminal.app.
- #
--# The UNIX PC has a plethora of keys (103 of them, and there's no numeric
--# keypad!), loadable fonts, and strange highlighting modes ("dithered"
--# half-intensity, "smeared" bold, and real strike-out, for example.) It also
--# uses resizable terminal windows, but the bundled terminal program always
--# uses an 80x24 window (and doesn't support seem to support a 132-column
--# mode.)
-+# Terminal.app runs under the Mac OS X Quartz windowing system (and
-+# other AppKit-supported windowing systems.) On the Mac OS X machine I
-+# use, the executable for Terminal.app is:
-+# /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal
- #
--# HISTORY: The UNIX PC was one of the first machines with a GUI, and used a
--# library which was a superset of SVr3.5 curses (called tam, for "terminal
--# access method".) tam includes support for real, overlapping windows,
--# onscreen function key labels, and bitmap graphics. But since the primary
--# user interface on the UNIX PC was a GUI program (ua, for "user
--# assistant",) and remote administration was considered important for the
--# machine, tam also supported VT100-compatible terminals attached to the
--# serial port or used across the StarLan network. To simulate the extra keys
--# not present on a VT100, users could press ESC and a two-letter sequence,
--# such as u d (Undo) or U D (Shift-Undo.) These two-letter sequences,
--# however, were not the same as those sent by the actual Undo key. The
--# actual Undo key sends ESC 0 s unshifted, and ESC 0 S shifted, for example.
--# (If you're interested in adding some of the tam calls to ncurses, btw, I
--# have the full documentation and several programs which use tam. It also
--# used an extended terminfo format to describe key sequences, special
--# highlighting modes, etc.)
-+# If you're looking for a description of the full-screen system
-+# console which runs under Apple's Darwin operating system on PowerPC
-+# platforms, see the "xnuppc" entry instead.
- #
--# KEYS: This means that ncurses would quite painful on the UNIX PC, since
--# there are two sequences for every key-modifier combination (local keyboard
--# sequence and remote "VT100" sequence.) But I doubt many people are trying
--# to use ncurses on the UNIX PC, since ncurses doesn't properly handle the
--# GUI. Unfortunately, the terminfo entry (and the termcap, too, I presume)
--# seem to have been built from the manual describing the VT100 sequences.
--# This means it doesn't work for a real live UNIX PC.
-+# There were no function keys in version 41. In version 51, there are
-+# four working function keys (F1, F2, F3 and F4.) The function keys
-+# are included in all of these entries.
- #
--# FONTS: The UNIX PC also has a strange interpretation of "alternate
--# character set". Rather than the VT100 graphics you might expect, it allows
--# up to 8 custom fonts to be loaded at any given time. This means that
--# programs expecting VT100 graphics will usually be disappointed. For this
--# reason I have disabled the smacs/rmacs sequences, but they could easily be
--# re-enabled. Here are the relevant control sequences (from the ESCAPE(7)
--# manpage), should you wish to do so:
-+# It does not support mouse pointer position reporting. Under some
-+# circumstances the cursor can be positioned using option-click; this
-+# works by comparing the cursor position and the selected position,
-+# and simulating enough cursor-key presses to move the cursor to the
-+# selected position. This technique fails in all but the simplest
-+# applications.
- #
--# SGR10 - Select font 0 - ESC [ 10 m or SO
--# SGR11 - Select font 1 - ESC [ 11 m or SI
--# SGR12 - Select font 2 - ESC [ 12 m
--# ... (etc.)
--# SGR17 - Select font 7 - ESC [ 17 m
-+# It provides partial ANSI color support (background colors interacted
-+# badly with bold in version 41, though, as reflected in :ncv:.) The
-+# monochrome (-m) entries are useful if you've disabled color support
-+# or use a monochrome monitor. The full color (-c) entries are useful
-+# in version 51, which doesn't exhibit the background color bug. They
-+# also enable an xterm-compatible 16-color mode.
- #
--# Graphics for line drawing are not reliably found at *any* character
--# location because the UNIX PC has dynamically reloadable fonts. I use font
--# 0 for regular text and font 1 for italics, but this is by no means
--# universal. So ASCII line drawing is in order if smacs/rmacs are enabled.
-+# The configurable titlebar is set using xterm-compatible sequences;
-+# it is used as a status bar in the statusline (-s) entries. Its width
-+# depends on font sizes and window sizes, but 50 characters seems to
-+# be the default for an 80x24 window.
- #
--# MISC: The cursor visible/cursor invisible sequences were swapped in the
--# distributed terminfo.
-+# The MacRoman character encoding is used for some of the alternate
-+# characters in the "MacRoman" entries; the "ASCII" (-7) entries
-+# disable alternate character set support entirely, and the "VT100"
-+# (-acs) entries rely instead on Terminal.app's own buggy VT100
-+# graphics emulation, which seems to think the character encoding is
-+# the old NeXT charset instead of MacRoman. The "ASCII" (-7) entries
-+# are useful in Terminal.app version 51, which supports UTF-8 and
-+# other ASCII-compatible character encodings but does not correctly
-+# implement VT100 graphics; once VT100 graphics are correctly
-+# implemented in Terminal.app, the "VT100" (-acs) entries should be
-+# usable in any ASCII-compatible character encoding [except perhaps
-+# in UTF-8, where some experts argue for disallowing alternate
-+# characters entirely.]
- #
--# To ameliorate these problems (and fix a few highlighting bugs) I rewrote
--# the UNIX PC terminfo entry. The modified version works great with Lynx,
--# Emacs, and XEmacs running on my Linux PC and displaying on the UNIX PC
--# attached by serial cable. In Emacs, even the Undo key works, and many
--# applications can now use the F1-F8 keys.
-+# Terminal.app reports "vt100" as the terminal type, but exports
-+# several environment variables which may aid detection in a shell
-+# profile (i.e. .profile or .login):
- #
--# esr's notes:
--# Terminfo entry for the AT&T Unix PC 7300
--# from escape(7) in Unix PC 7300 Manual.
--# Somewhat similar to a vt100-am (but different enough
--# to redo this from scratch.)
-+# TERM=vt100
-+# TERM_PROGRAM=Apple_Terminal
-+# TERM_PROGRAM_VERSION=41 # in Terminal.app version 41
-+# TERM_PROGRAM_VERSION=51 # in Terminal.app version 51
- #
--# /***************************************************************
--# *
--# * FONT LOADING PROGRAM FOR THE UNIX PC
--# *
--# * This routine loads a font defined in the file ALTFONT
--# * into font memory slot #1. Once the font has been loaded,
--# * it can be used as an alternative character set.
--# *
--# * The call to ioctl with the argument WIOCLFONT is the key
--# * to this routine. For more information, see window(7) in
--# * the PC 7300 documentation.
--# ***************************************************************/
--# #include <string.h> /* needed for strcpy call */
--# #include <sys/window.h> /* needed for ioctl call */
--# #define FNSIZE 60 /* font name size */
--# #define ALTFONT "/usr/lib/wfont/special.8.ft" /* font file */
--# /*
--# * The file /usr/lib/wfont/special.8.ft comes with the
--# * standard PC software. It defines a graphics character set
--# * similar to that of the Teletype 5425 terminal. To view
--# * this or other fonts in /usr/lib/wfont, use the command
--# * cfont <filename>. For further information on fonts see
--# * cfont(1) in the PC 7300 documentation.
--# */
-+# For example, the following Bourne shell script would detect the
-+# correct terminal type:
- #
--# struct altfdata /* structure for alt font data */
--# {
--# short altf_slot; /* memory slot number */
--# char altf_name[FNSIZE]; /* font name (file name) */
--# };
--# ldfont()
--# {
--# int wd; /* window in which altfont will be */
--# struct altfdata altf;
--# altf.altf_slot=1;
--# strcpy(altf.altf_name,ALTFONT);
--# for (wd =1; wd < 12; wd++) {
--# ioctl(wd, WIOCLFONT,&altf);
--# }
--# }
-+# if [ :"$TERM" = :"vt100" -a :"$TERM_PROGRAM" = :"Apple_Terminal" ]
-+# then
-+# export TERM
-+# if [ :"$TERM_PROGRAM_VERSION" = :41 ]
-+# then
-+# TERM="nsterm-old"
-+# else
-+# TERM="nsterm-c-7"
-+# fi
-+# fi
- #
--# (att7300: added <civis>/<cnorm>/<ich1>/<invis> from the BSDI entry,
--# they're confirmed by the man page for the System V display---esr)
-+# In a C shell derivative, this would be accomplished by:
- #
--att7300|unixpc|pc7300|3b1|s4|AT&T UNIX PC Model 7300,
-- am, xon,
-+# if ( $?TERM && $?TERM_PROGRAM && $?TERM_PROGRAM_VERSION) then
-+# if ( :"$TERM" == :"vt100" && :"$TERM_PROGRAM" == :"Apple_Terminal" ) then
-+# if ( :"$TERM_PROGRAM_VERSION" == :41 ) then
-+# setenv TERM "nsterm-old"
-+# else
-+# setenv TERM "nsterm-c-7"
-+# endif
-+# endif
-+# endif
-+
-+# The '+' entries are building blocks
-+nsterm+7|AppKit Terminal.app v41+ basic capabilities w/ASCII charset,
-+ am, bw, msgr, xenl, xon,
- cols#80, it#8, lines#24,
-- bel=^G, blink=\E[9m, bold=\E[1m, cbt=\E^I, civis=\E[=1C,
-- clear=\E[2J\E[H, cnorm=\E[=0C, cr=^M, 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, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M,
-- ed=\E[0J, el=\E[0K, home=\E[H, ich1=\E[@, il=\E[%p1%dL,
-- il1=\E[L, ind=^J, invis=\E[9m, is1=\017\E[=1w, kBEG=\ENB,
-- kCAN=\EOW, kCPY=\END, kCRT=\EON, kDC=\ENF, kDL=\ENE,
-- kEND=\ENN, kEOL=\EOA, kFND=\EOX, kHLP=\EOM, kHOM=\ENM,
-- kIC=\ENJ, kLFT=\ENK, kMOV=\ENC, kNXT=\ENH, kOPT=\EOR,
-- kPRV=\ENG, kRDO=\EOT, kRIT=\ENL, kRPL=\EOY, kSAV=\EOO,
-- kUND=\EOS, kbeg=\ENb, kbs=^H, kcan=\EOw, kcbt=\E[Z,
-- kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\ENf,
-- ked=\E[J, kel=\EOa, kend=\E0, kext=\EOk, kf1=\EOc, kf2=\EOd,
-- kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj,
-- kfnd=\EOx, khlp=\EOm, khome=\E[H, kich1=\ENj, kind=\E[B,
-- kmov=\ENc, kmrk=\ENi, knp=\E[U, knxt=\ENh, kopn=\EOv,
-- kopt=\EOr, kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt,
-- kref=\EOb, krfr=\ENa, kri=\E[A, krpl=\EOy, krst=\EOB,
-- ksav=\EOo, kslt=\ENI, kund=\EOs, nel=\EE, rev=\E[7m, ri=\EM,
-- rmso=\E[m, rmul=\E[m, sgr0=\E[0;10m, smso=\E[7m,
-- smul=\E[4m,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-+ dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K,
-+ el1=\E[1K, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L,
-+ ind=^J, invis=\E[8m, kbs=\177, kcub1=\EOD, kcud1=\EOB,
-+ kcuf1=\EOC, kcuu1=\EOA, kent=\EOM, rc=\E8, rev=\E[7m, ri=\EM,
-+ rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m,
-+ sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m,
-+ smul=\E[4m, tbc=\E[3g, use=vt100+enq, use=vt100+pfkeys,
-
--# Sent by Stefan Stapelberg <stefan@rent-a-guru.de>, 24 Feb 1997, this is
--# from SGI's terminfo database. SGI's entry shows F9-F12 with the codes
--# for the application keypad mode. We have added iris-ansi-ap rather than
--# change the original to keypad mode.
--#
--# (iris-ansi: added rmam/smam based on init string -- esr)
--#
--# This entry, and those derived from it, is used in xwsh (also known as
--# winterm). Some capabilities that do not fit into the terminfo model
--# include the shift- and control-functionkeys:
--#
--# F1-F12 generate different codes when shift or control modifiers are used.
--# For example:
--# F1 \E[001q
--# shift F1 \E[013q
--# control-F1 \E[025q
--#
--# In application keypad mode, F9-F12 generate codes like vt100 PF1-PF4, i.e.,
--# \EOP to \EOS. The shifted and control modifiers still do the same thing.
--#
--# The cursor keys also have different codes:
--# control-up \E[162q
--# control-down \E[165q
--# control-left \E[159q
--# control-right \E[168q
--#
--# shift-up \E[161q
--# shift-down \E[164q
--# shift-left \E[158q
--# shift-right \E[167q
--#
--# control-tab \[072q
--#
--iris-ansi|iris-ansi-net|IRIS emulating 40 line ANSI terminal (almost VT100),
-- am,
-- cols#80, it#8, lines#40,
-- bel=^G, bold=\E[1m, clear=\E[H\E[2J,
-- cnorm=\E[9/y\E[12/y\E[=6l, cr=^M, cub=\E[%p1%dD,
-- cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC,
-- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA,
-- cuu1=\E[A, cvvis=\E[10/y\E[=1h\E[=2l\E[=6h,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-- home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-- is2=\E[?1l\E>\E[?7h\E[100g\E[0m\E7\E[r\E8, kDC=\E[P,
-- kEND=\E[147q, kHOM=\E[143q, kLFT=\E[158q, kPRT=\E[210q,
-- kRIT=\E[167q, kSPD=\E[218q, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177,
-- kend=\E[146q, kent=^M, kf1=\E[001q, kf10=\E[010q,
-- kf11=\E[011q, kf12=\E[012q, kf2=\E[002q, kf3=\E[003q,
-- kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q,
-- kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q,
-- knp=\E[154q, kpp=\E[150q, kprt=\E[209q, krmir=\E[146q,
-- kspd=\E[217q, nel=\EE, pfkey=\EP101;%p1%d.y%p2%s\E\\,
-- rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, rmso=\E[m, rmul=\E[m,
-- sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[1;7m, smul=\E[4m,
-- tbc=\E[3g,
--iris-ansi-ap|IRIS ANSI in application-keypad mode,
-- is2=\E[?1l\E=\E[?7h, kent=\EOM, kf10=\E[010q,
-- kf11=\E[011q, kf12=\E[012q, kf9=\E[009q, use=iris-ansi,
-+nsterm+acs|AppKit Terminal.app v41+ basic capabilities w/VT100 alternate-charset,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ enacs=\E(B\E)0, rmacs=^O,
-+ 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, use=nsterm+7,
-
--# From the man-page, this is a quasi-vt100 emulator that runs on SGI's IRIX
--# (T.Dickey 98/1/24)
--iris-color|xwsh|IRIX ANSI with color,
-- ncv#33,
-- csr=\E[%i%p1%d;%p2%dr, dch=\E[%p1%dP, dim=\E[2m,
-- ech=\E[%p1%dX, ich=\E[%p1%d@, rc=\E8, ritm=\E[23m,
-- rmul=\E[24m, rs1=\Ec,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- sitm=\E[3m, use=vt100+enq, use=klone+color,
-- use=iris-ansi-ap,
-+nsterm+mac|AppKit Terminal.app v41+ basic capabilities w/MacRoman alternate-charset,
-+ 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,
-+ 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, use=nsterm+7,
-
--# The following is a version of the ibm-pc entry distributed with PC/IX,
--# (Interactive Systems' System 3 for the Big Blue), modified by Richard
--# McIntosh at UCB/CSM. The :pt: and :uc: have been removed from the original,
--# (the former is untrue, and the latter failed under UCB/man); standout and
--# underline modes have been added. Note: this entry describes the "native"
--# capabilities of the PC monochrome display, without ANY emulation; most
--# communications packages (but NOT PC/IX connect) do some kind of emulation.
--pcix|PC/IX console,
-- am, bw, eo,
-- cols#80, lines#24,
-- clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-- home=\E[H, rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m,
-- smul=\E[4m,
-+# compare with xterm+sl-twm
-+nsterm+s|AppKit Terminal.app v41+ status-line (window titlebar) support,
-+ wsl#50, use=xterm+sl-twm,
-
--# (ibmpcx: this entry used to be known as ibmx.
--# It formerly included the following extension capabilities:
--# :GC=b:GL=v:GR=t:RT=^J:\
--# :GH=\E[196g:GV=\E[179g:\
--# :GU=\E[193g:GD=\E[194g:\
--# :G1=\E[191g:G2=\E[218g:G3=\E[192g:G4=\E[217g:\
--# :CW=\E[E:NU=\E[F:RF=\E[G:RC=\E[H:\
--# :WL=\E[K:WR=\E[L:CL=\E[M:CR=\E[N:\
--# I renamed GS/GE/WL/WR/CL/CR/PU/PD/HM/EN; also, removed a duplicate
--# ":kh=\E[Y:". Added IBM-PC forms characters and highlights, they match
--# what was there before. -- esr)
--ibmpcx|xenix|ibmx|IBM PC xenix console display,
-- OTbs, am, msgr,
-- cols#80, lines#25,
-- clear=^L, cub1=^H, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
-- ed=\E[J, el=\E[K, home=\E[H, ich1=\E[@, il1=\E[L, kbs=^H,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[d,
-- kf1=\E[K, kf2=\E[L, kf3=\E[M, kf4=\E[N, khome=\E[Y, knp=\E[e,
-- kpp=\E[Z, use=klone+acs, use=klone+sgr8,
-+nsterm+c|AppKit Terminal.app v51+ full color support (including 16 colors),
-+ op=\E[0m, use=ibm+16color,
-
--#### QNX
-+nsterm+c41|AppKit Terminal.app v41 color support,
-+ colors#8, ncv#37, pairs#64,
-+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-+
-+# These are different combinations of the building blocks
-+
-+# ASCII charset (-7)
-+nsterm-m-7|nsterm-7-m|AppKit Terminal.app v41+ w/ASCII charset (monochrome),
-+ use=nsterm+7,
-+
-+nsterm-m-s-7|nsterm-7-m-s|AppKit Terminal.app v41+ w/ASCII charset (monochrome w/statusline),
-+ use=nsterm+s, use=nsterm+7,
-+
-+nsterm-7|AppKit Terminal.app v41+ w/ASCII charset (color),
-+ use=nsterm+c41, use=nsterm+7,
-+
-+nsterm-7-c|nsterm-c-7|AppKit Terminal.app v51+ w/ASCII charset (full color),
-+ use=nsterm+c, use=nsterm+7,
-+
-+nsterm-s-7|nsterm-7-s|AppKit Terminal.app v41+ w/ASCII charset (color w/statusline),
-+ use=nsterm+s, use=nsterm+c41, use=nsterm+7,
-+
-+nsterm-c-s-7|nsterm-7-c-s|AppKit Terminal.app v51+ w/ASCII charset (full color w/statusline),
-+ use=nsterm+s, use=nsterm+c, use=nsterm+7,
-+
-+# VT100 alternate-charset (-acs)
-+nsterm-m-acs|nsterm-acs-m|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome),
-+ use=nsterm+acs,
-+
-+nsterm-m-s-acs|nsterm-acs-m-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome w/statusline),
-+ use=nsterm+s, use=nsterm+acs,
-+
-+nsterm-acs|AppKit Terminal.app v41+ w/VT100 alternate-charset (color),
-+ use=nsterm+c41, use=nsterm+acs,
-+
-+nsterm-c-acs|nsterm-acs-c|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color),
-+ use=nsterm+c, use=nsterm+acs,
-+
-+nsterm-s-acs|nsterm-acs-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (color w/statusline),
-+ use=nsterm+s, use=nsterm+c41, use=nsterm+acs,
-+
-+nsterm-c-s-acs|nsterm-acs-c-s|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color w/statusline),
-+ use=nsterm+s, use=nsterm+c, use=nsterm+acs,
-+
-+# MacRoman charset
-+nsterm-m|AppKit Terminal.app v41+ w/MacRoman charset (monochrome),
-+ use=nsterm+mac,
-+
-+nsterm-m-s|AppKit Terminal.app v41+ w/MacRoman charset (monochrome w/statusline),
-+ use=nsterm+s, use=nsterm+mac,
-+
-+nsterm-old|AppKit Terminal.app v41+ w/MacRoman charset (color),
-+ use=nsterm+c41, use=nsterm+mac,
-+
-+nsterm-c|AppKit Terminal.app v51+ w/MacRoman charset (full color),
-+ use=nsterm+c, use=nsterm+mac,
-+
-+nsterm-s|AppKit Terminal.app v41+ w/MacRoman charset (color w/statusline),
-+ use=nsterm+s, use=nsterm+c41, use=nsterm+mac,
-+
-+nsterm-c-s|AppKit Terminal.app v51+ w/MacRoman charset (full color w/statusline),
-+ use=nsterm+s, use=nsterm+c, use=nsterm+mac,
-+
-+# In Mac OS X version 10.5 the format of the preferences has changed
-+# and a new, more complex technique is needed, e.g.,
-+#
-+# python -c 'import sys,objc;NSUserDefaults=objc.lookUpClass(
-+# "NSUserDefaults");ud=NSUserDefaults.alloc();
-+# ud.init();prefs=ud.persistentDomainForName_(
-+# "com.apple.Terminal");prefs["Window Settings"][
-+# prefs["Default Window Settings"]]["TerminalType"
-+# ]=sys.argv[1];ud.setPersistentDomain_forName_(prefs,
-+# "com.apple.Terminal")' nsterm-16color
-+#
-+# and it is still not settable from the preferences dialog. This is
-+# tracked under rdar://problem/7365108 and rdar://problem/7365134
-+# in Apple's bug reporter.
- #
-+# In OS X 10.7 (Leopard) the TERM which can be set in the preferences dialog
-+# defaults to xterm-color. Alternative selections are ansi, dtterm, rxvt,
-+# 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,
-
--# QNX 4.0 Console
--# Michael's original version of this entry had <am@>, <smcup=\Ei>,
--# <rmcup=\Eh\ER>; this was so terminfo applications could write the lower
--# right corner without triggering a scroll. The ncurses terminfo library can
--# handle this case with the <ich1> capability, and prefers <am> for better
--# 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,
-- 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\303u\264v\301w\302x\263,
-- bel=^G, blink=\E{, bold=\E<, civis=\Ey0, clear=\EH\EJ,
-- cnorm=\Ey1, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\Ey2,
-- dch1=\Ef, dl1=\EF, ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\Ee,
-- il1=\EE, ind=^J, kBEG=\377\356, kCAN=\377\263,
-- kCMD=\377\267, kCPY=\377\363, kCRT=\377\364,
-- kDL=\377\366, kEND=\377\301, kEOL=\377\311,
-- kEXT=\377\367, kFND=\377\370, kHLP=\377\371,
-- kHOM=\377\260, kIC=\377\340, kLFT=\377\264,
-- kMOV=\377\306, kMSG=\377\304, kNXT=\377\272,
-- kOPT=\377\372, kPRT=\377\275, kPRV=\377\262,
-- kRDO=\377\315, kRES=\377\374, kRIT=\377\266,
-- kRPL=\377\373, kSAV=\377\307, kSPD=\377\303,
-- kUND=\377\337, kbeg=\377\300, kcan=\377\243, kcbt=\377\0,
-- kclo=\377\343, kclr=\377\341, kcmd=\377\245,
-- kcpy=\377\265, kcrt=\377\305, kctab=\377\237,
-- kcub1=\377\244, kcud1=\377\251, kcuf1=\377\246,
-- kcuu1=\377\241, kdch1=\377\254, kdl1=\377\274,
-- ked=\377\314, kel=\377\310, kend=\377\250, kent=\377\320,
-- kext=\377\270, kf1=\377\201, kf10=\377\212,
-- kf11=\377\256, kf12=\377\257, kf13=\377\213,
-- kf14=\377\214, kf15=\377\215, kf16=\377\216,
-- kf17=\377\217, kf18=\377\220, kf19=\377\221,
-- kf2=\377\202, kf20=\377\222, kf21=\377\223,
-- kf22=\377\224, kf23=\377\333, kf24=\377\334,
-- kf25=\377\225, kf26=\377\226, kf27=\377\227,
-- kf28=\377\230, kf29=\377\231, kf3=\377\203,
-- kf30=\377\232, kf31=\377\233, kf32=\377\234,
-- kf33=\377\235, kf34=\377\236, kf35=\377\276,
-- kf36=\377\277, kf37=\377\321, kf38=\377\322,
-- kf39=\377\323, kf4=\377\204, kf40=\377\324,
-- kf41=\377\325, kf42=\377\326, kf43=\377\327,
-- kf44=\377\330, kf45=\377\331, kf46=\377\332,
-- kf47=\377\316, kf48=\377\317, kf5=\377\205, kf6=\377\206,
-- kf7=\377\207, kf8=\377\210, kf9=\377\211, kfnd=\377\346,
-- khlp=\377\350, khome=\377\240, khts=\377\342,
-- kich1=\377\253, kil1=\377\273, kind=\377\261,
-- kmov=\377\351, kmrk=\377\355, kmsg=\377\345,
-- knp=\377\252, knxt=\377\312, kopn=\377\357,
-- kopt=\377\353, kpp=\377\242, kprt=\377\255,
-- kprv=\377\302, krdo=\377\336, kref=\377\354,
-- kres=\377\360, krfr=\377\347, kri=\377\271,
-- krmir=\377\313, krpl=\377\362, krst=\377\352,
-- ksav=\377\361, kslt=\377\247, kspd=\377\335,
-- ktbc=\377\344, kund=\377\365, mvpa=\E!%p1%02d, op=\ER,
-- rep=\Eg%p2%{32}%+%c%p1%c, rev=\E(, ri=\EI, rmcup=\Eh\ER,
-- rmso=\E), rmul=\E], rs1=\ER, setb=\E@%p1%Pb%gb%gf%d%d,
-- setf=\E@%p1%Pf%gb%gf%d%d, sgr0=\E}\E]\E>\E), smcup=\Ei,
-- smso=\E(, smul=\E[,
-+# 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
-+# version 10.5 does not.
- #
-+# This entry is based on newsgroup comments by Alain Bench, Christian Ebert,
-+# and D P Schreber comparing to nsterm-c-s-acs.
- #
--qnxt|qnxt4|QNX4 terminal,
-- crxm, use=qnx4,
-+# In Mac OS X version 10.4 and earlier, D P Schreber notes that $TERM
-+# can be set in Terminal.app, e.g.,
- #
--qnxm|QNX4 with mouse events,
-- maddr#1,
-- chr=\E/, cvr=\E", is1=\E/0t, mcub=\E/>1h, mcub1=\E/>7h,
-- mcud=\E/>1h, mcud1=\E/>1l\E/>9h, mcuf=\E/>1h\E/>9l,
-- mcuf1=\E/>7l, mcuu=\E/>6h, mcuu1=\E/>6l, rmicm=\E/>2l,
-- smicm=\E/>2h, use=qnx4,
-+# defaults write com.apple.Terminal TermCapString nsterm-bce
- #
--qnxw|QNX4 windows,
-- xvpa, use=qnxm,
-+# and that it is not set in Terminal's preferences dialog.
- #
--# Monochrome QNX4 terminal or console. Setting this terminal type will
--# allow an application running on a color console to behave as if it
--# were a monochrome terminal. Output will be through stdout instead of
--# console writes because the term routines will recognize that the
--# terminal name starts with 'qnxt'.
-+# Modified for OS X 10.8, omitting bw based on testing with tack -TD
- #
--qnxtmono|Monochrome QNX4 terminal or console,
-- colors@, pairs@,
-- scp@, use=qnx4,
-+# Notes:
-+# * The terminal description matches the default settings.
-+# * The keyboard is configurable via a dialog.
-+# * By default khome, kend, knext and kprev are honored only with a
-+# shift-modifier.
-+# * There are bindings for control left/right arrow (but not up/down).
-+# Added those to nsterm-16color, which is the version used for OS X 10.6
-+# * "Allow VT100 application keypage mode" is by default disabled.
-+# There is no way to press keypad-comma unless application mode is enabled
-+# and used.
-+# * 132-column mode stopped working during vttest's tests. Consider it broken.
-+# * CHT, REP, SU, SD are buggy.
-+# * ECH works (also in Leopard), but is not used here for compatibility.
-+# * The terminal preferences dialog replaces xterm-color by xterm-16color and
-+# xterm-256color. However, it adds "nsterm", so it is possible to use the
-+# nsterm entry from this file to override the MacPorts (20110404) or
-+# system (20081102) copy of this file.
-+# + In OS X 10.8 (Mountain Lion) the TERM which can be set in the preferences
-+# dialog defaults to xterm-256color. Alternative selections are ansi,
-+# dtterm, rxvt, vt52, vt100, vt102, xterm and xterm-16color. However,
-+# the menu says "Declare terminal as" without promising to actually emulate
-+# the corresponding terminals. Indeed, changing TERM does not affect the
-+# emulation itself. This means that
-+# + the function-keys do not match for dtterm for kf1-kf4 as well as
-+# khome/kend
-+# + the color model is the same for each setting of TERM (does not match
-+# ansi or dtterm).
-+# + the shift/control/meta key modifiers from rxvt and xterm variants are not
-+# recognised except for a few special cases, i.e., kRIT5 and kLFT5.
-+# + the vt52 emulation does not give a usable shell because screen-clearing
-+# does not work as expected.
-+# + selecting "xterm" or "xterm-16color" sets TERM to "xterm-256color".
-+nsterm-bce|AppKit Terminal.app v71+/v100.1.8+ with Mac OS X version 10.3/10.4 (bce),
-+ bce, use=nsterm-16color,
-
--# 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,
-- am,
-- civis@, cnorm@, cvvis@, dch1@, ich1@, kRES@, kRPL@, kUND@, kspd@,
-- rep@, rmcup@, rmso=\E>, setb@, setf@, smcup@, smso=\E<, use=qnx4,
-+# This is tested with OS X 10.8 (Mountain Lion), 2012/08/11
-+# TERM_PROGRAM_VERSION=309
-+# Earlier reports state that these differences also apply to OS X 10.7 (Lion),
-+# TERM_PROGRAM_VERSION=303
-+nsterm-256color|Terminal.app in OS X 10.8,
-+ use=xterm+256setaf, use=nsterm-bce,
-
--# QNX ANSI terminal definition
--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=^M,
-- 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,
-- dl=\E[%p1%dM, dl1=\E[1M, dsl=\E[r, ech=\E[%p1%dX, ed=\E[J,
-- el=\E[K, el1=\E[1K\E[X, flash=\E[?5h$<200>\E[?5l,
-- fsl=\E[?6h\E8, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
-- ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L,
-- ind=\E[S, indn=\E[%p1%dS, invis=\E[9m,
-- is2=\E>\E[?1l\E[?7h\E[0;10;39;49m, is3=\E(B\E)0,
-- kBEG=\ENn, kCAN=\E[s, kCMD=\E[t, kCPY=\ENs, kCRT=\ENt,
-- kDL=\ENv, kEXT=\ENw, kFND=\ENx, kHLP=\ENy, kHOM=\E[h,
-- kLFT=\E[d, kNXT=\E[u, kOPT=\ENz, kPRV=\E[v, kRIT=\E[c,
-- kbs=^H, kcan=\E[S, kcbt=\E[Z, kclo=\ENc, kclr=\ENa,
-- kcmd=\E[G, kcpy=\E[g, kctab=\E[z, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[p, kend=\E[Y,
-- kext=\E[y, kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EOA,
-- kf13=\EOp, kf14=\EOq, kf15=\EOr, kf16=\EOs, kf17=\EOt,
-- kf18=\EOu, kf19=\EOv, kf2=\EOQ, kf20=\EOw, kf21=\EOx,
-- kf22=\EOy, kf23=\EOz, kf24=\EOa, kf25=\E[1~, kf26=\E[2~,
-- kf27=\E[3~, kf28=\E[4~, kf29=\E[5~, kf3=\EOR, kf30=\E[6~,
-- kf31=\E[7~, kf32=\E[8~, kf33=\E[9~, kf34=\E[10~,
-- kf35=\E[11~, kf36=\E[12~, kf37=\E[17~, kf38=\E[18~,
-- kf39=\E[19~, kf4=\EOS, kf40=\E[20~, kf41=\E[21~,
-- kf42=\E[22~, kf43=\E[23~, kf44=\E[24~, kf45=\E[25~,
-- kf46=\E[26~, kf47=\E[27~, kf48=\E[28~, kf5=\EOT, kf6=\EOU,
-- kf7=\EOV, kf8=\EOW, kf9=\EOX, kfnd=\ENf, khlp=\ENh,
-- khome=\E[H, khts=\ENb, kich1=\E[@, kil1=\E[`, kind=\E[a,
-- kmov=\ENi, kmrk=\ENm, kmsg=\ENe, knp=\E[U, kopn=\ENo,
-- kopt=\ENk, kpp=\E[V, kref=\ENl, kres=\ENp, krfr=\ENg,
-- kri=\E[b, krpl=\ENr, krst=\ENj, ksav=\ENq, kslt=\E[T,
-- ktbc=\ENd, kund=\ENu, ll=\E[99H, nel=\EE, op=\E[39;49m,
-- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\E[T,
-- rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmso=\E[27m,
-- rmul=\E[24m, rs1=\017\E[?7h\E[0;39;49m$<2>\E>\E[?1l,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-- 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}%=%t3%e%p1%d%;m,
-- sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;9%;m%?%p9%t\016%e\017%;,
-- 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,
-+# This is an alias which should always point to the "current" version
-+nsterm|Apple_Terminal|AppKit Terminal.app,
-+ use=nsterm-256color,
-+
-+# iTerm.app from http://iterm.sourceforge.net/ is an alternative (and
-+# more featureful) terminal emulator for Mac OS X. It is similar
-+# enough in capabilities to nsterm-16color that I have derived this
-+# description from that one, but as far as I know they share no code.
-+# Many of the features are user-configurable, but I attempt only to
-+# describe the default configuration.
- #
--qansi|QNX ansi with console writes,
-- daisy, xhpa, use=qansi-g,
-+# NOTE: When tack tests (csr) + (nel) iTerm.app crashes, so (csr) is
-+# disabled.
-+iTerm.app|iterm|iTerm.app terminal emulator for Mac OS X,
-+ bce, bw@,
-+ csr@, dim@, kend=\EOF, khome=\EOH,
-+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ use=xterm+256setaf, use=nsterm-16color,
-+
-+# xnuppc - Darwin PowerPC Console (a.k.a. "darwin")
- #
--qansi-t|QNX ansi without console writes,
-- crxm, use=qansi,
-+# On PowerPC platforms, Apple's Darwin operating system uses a
-+# full-screen system console derived from a NetBSD framebuffer
-+# console. It is an ANSI-style terminal, and is not really VT-100
-+# compatible.
- #
--qansi-m|QNX ansi with mouse,
-- maddr#1,
-- chr=\E[, cvr=\E], is1=\E[0t, mcub=\E[>1h, mcub1=\E[>7h,
-- mcud=\E[>1h, mcud1=\E[>1l\E[>9h, mcuf=\E[>1h\E[>9l,
-- mcuf1=\E[>7l, mcuu=\E[>6h, mcuu1=\E[>6l, rmicm=\E[>2l,
-- smicm=\E[>2h, use=qansi,
-+# Under Mac OS X, this is the system console driver used while in
-+# single-user mode [reachable by holding down Command-S during the
-+# boot process] and when logged in using console mode [reachable by
-+# typing ">console" at the graphical login prompt.]
- #
--qansi-w|QNX ansi for windows,
-- xvpa, use=qansi-m,
--
--#### NetBSD consoles
-+# If you're looking for a description of the Terminal.app terminal
-+# emulator which runs under the Mac OS X Quartz windowing system (and
-+# other AppKit-supported windowing systems,) see the "nsterm"
-+# entry instead.
- #
--# pcvt termcap database entries (corresponding to release 3.31)
--# Author's last edit-date: [Fri Sep 15 20:29:10 1995]
-+# NOTE: Under Mac OS X version 10.1, the default login window does not
-+# prompt for user name, instead requiring an icon to be selected from
-+# a list of known users. Since the special ">console" login is not in
-+# this list, you must make one of two changes in the Login Window
-+# panel of the Login section of System Prefs to make the special
-+# ">console" login accessible. The first option is to enable 'Show
-+# "Other User" in list for network users', which will add a special
-+# "Other..." icon to the graphical login panel. Selecting "Other..."
-+# will present the regular graphical login prompt. The second option
-+# is to change the 'Display Login Window as:' setting to 'Name and
-+# password entry fields', which replaces the login panel with a
-+# graphical login prompt.
- #
--# (For the terminfo master file, I translated these into terminfo syntax.
--# Then I dropped all the pseudo-HP entries. we don't want and can't use
--# the :Xs: flag. Then I split :is: into a size-independent <is1> and a
--# size-dependent <is2>. Finally, I added <rmam>/<smam> -- esr)
-+# There are no function keys, at least not in Darwin 1.3.
-+#
-+# It has no mouse support.
-+#
-+# It has full ANSI color support, and color combines correctly with
-+# all three supported attributes: bold, inverse-video and underline.
-+# However, bold colored text is almost unreadable (bolding is
-+# accomplished using shifting and or-ing, and looks smeared) so bold
-+# has been excluded from the list of color-compatible attributes
-+# [using (ncv)]. The monochrome entry (-m) is useful if you use a
-+# monochrome monitor.
-+#
-+# There is one serious bug with this terminal emulation's color
-+# support: repositioning the cursor onto a cell with non-matching
-+# colors obliterates that cell's contents, replacing it with a blank
-+# and displaying a colored cursor in the "current" colors. There is
-+# no complete workaround at present [other than using the monochrome
-+# (-m) entries,] but removing the (msgr) capability seemed to help.
-+#
-+# The "standout" chosen was simple reverse-video, although a colorful
-+# standout might be more aesthetically pleasing. Similarly, the bold
-+# chosen is the terminal's own smeared bold, although a simple
-+# color-change might be more readable. The color-bold (-b) entries
-+# uses magenta colored text for bolding instead. The fancy color (-f
-+# and -f2) entries use color for bold, standout and underlined text
-+# (underlined text is still underlined, though.)
-+#
-+# Apparently the terminal emulator does support a VT-100-style
-+# alternate character set, but all the alternate character set
-+# positions have been left blank in the font. For this reason, no
-+# alternate character set capabilities have been included in this
-+# description. The console driver appears to be ASCII-only, so (enacs)
-+# has been excluded [although the VT-100 sequence does work.]
-+#
-+# The default Mac OS X and Darwin installation reports "vt100" as the
-+# terminal type, and exports no helpful environment variables. To fix
-+# this, change the "console" entry in /etc/ttys from "vt100" to
-+# "xnuppc-WxH", where W and H are the character dimensions of your
-+# console (see below.)
-+#
-+# The font used by the terminal emulator is apparently one originally
-+# drawn by Ka-Ping Yee, and uses 8x16-pixel characters. This
-+# file includes descriptions for the following geometries:
-+#
-+# Pixels Characters Entry Name (append -m for monochrome)
-+# -------------------------------------------------------------------
-+# 640x400 80x25 xnuppc-80x25
-+# 640x480 80x30 xnuppc-80x30
-+# 720x480 90x30 xnuppc-90x30
-+# 800x600 100x37 xnuppc-100x37
-+# 896x600 112x37 xnuppc-112x37
-+# 1024x640 128x40 xnuppc-128x40
-+# 1024x768 128x48 xnuppc-128x48
-+# 1152x768 144x48 xnuppc-144x48
-+# 1280x1024 160x64 xnuppc-160x64
-+# 1600x1024 200x64 xnuppc-200x64
-+# 1600x1200 200x75 xnuppc-200x75
-+# 2048x1536 256x96 xnuppc-256x96
-+#
-+# The basic "xnuppc" entry includes no size information, and the
-+# emulator includes no reporting capability, so you'll be at the mercy
-+# of the TTY device (which reports incorrectly on my hardware.) The
-+# color-bold entries do not include size information.
-
--# NOTE: <ich1> has been taken out of this entry. for reference, it should
--# be <ich1=\E[@>. For discussion, see ICH/ICH1 VERSUS RMIR/SMIR below.
--# (esr: added <civis> and <cnorm> to resolve NetBSD Problem Report #4583)
--pcvtXX|pcvt vt200 emulator (DEC VT220),
-- am, km, mir, msgr, xenl,
-- it#8, vt#3,
-- acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
-- clear=\E[H\E[J, cnorm=\E[?25h, cr=^M,
-- 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,
-- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, 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, indn=\E[%p1%dS,
-- is1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=\177,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- kdch1=\E[3~, kf1=\E[17~, kf2=\E[18~, kf3=\E[19~,
-- kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~,
-- khome=\E[1~, kich1=\E[2~, kll=\E[4~, knp=\E[6~, kpp=\E[5~,
-- nel=\EE, rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100,
-- ri=\EM, rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l,
-- rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
-- 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,
-+# The '+' entries are building blocks
-+xnuppc+basic|Darwin PowerPC Console basic capabilities,
-+ am, bce, mir, xenl,
-+ it#8,
-+ bold=\E[1m, clear=\E[H\E[J, cr=^M, 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, dsl=\E]2;\007, ed=\E[J, el=\E[K,
-+ el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=\177,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8,
-+ rev=\E[7m, ri=\EM, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m,
-+ rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-+ sc=\E7,
-+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m,
-+ sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m,
-+ smul=\E[4m, tbc=\E[3g, use=vt100+keypad,
-
--# 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,
-- cols#80, lines#25,
-- is2=\E[1;25r\E[25;1H, use=pcvtXX,
--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,
-- cols#80, lines#35,
-- is2=\E[1;35r\E[35;1H, use=pcvtXX,
--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,
-- cols#80, lines#43,
-- is2=\E[1;43r\E[43;1H, use=pcvtXX,
--pcvt50|dec vt220 emulation with 50 lines,
-- cols#80, lines#50,
-- is2=\E[1;50r\E[50;1H, use=pcvtXX,
-+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,
-
--# 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,
-- cols#132, lines#25,
-- is2=\E[1;25r\E[25;1H, use=pcvtXX,
--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,
-- cols#132, lines#35,
-- is2=\E[1;35r\E[35;1H, use=pcvtXX,
--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,
-- cols#132, lines#43,
-- is2=\E[1;43r\E[43;1H, use=pcvtXX,
--pcvt50w|dec vt220 emulation with 50 lines and 132 cols,
-- cols#132, lines#50,
-- is2=\E[1;50r\E[50;1H, use=pcvtXX,
-+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,
-
--# OpenBSD implements a color variation
--pcvt25-color|dec vt220 emulation with 25 lines and color,
-+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,
-+ 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),
- 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~,
-- kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
-- kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf5=\E[17~,
-- kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, use=pcvtXX,
-- use=ecma+color,
-
--# Terminfo entries to enable the use of the ncurses library in colour on a
--# NetBSD-arm32 console (only tested on a RiscPC).
--# Created by Dave Millen <dmill@globalnet.co.uk> 22.07.98
--# modified codes for setf/setb to setaf/setab, then to klone+color, corrected
--# typo in invis - TD
--arm100|arm100-am|Arm(RiscPC) ncurses compatible (for 640x480),
-- am, bce, msgr, xenl, xon,
-- cols#80, it#8, lines#30,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-- clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-- cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>,
-- enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J,
-- invis=\E[8m$<2>, ka1=\E[q, ka3=\E[s, kb2=\E[r, kbs=^H,
-- kc1=\E[p, kc3=\E[n, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kent=\E[M, kf0=\E[y, kf1=\E[P, kf10=\E[x,
-- kf2=\E[Q, kf3=\E[R, kf4=\E[S, kf5=\E[t, kf6=\E[u, kf7=\E[v,
-- kf8=\E[l, kf9=\E[w, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>,
-- rmacs=^O, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>,
-- rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-- sc=\E7,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<2>,
-- sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=,
-- smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, use=ecma+sgr,
-- use=klone+color,
-+xnuppc+80x30|Darwin PowerPC Console 80x30 support (640x480 pixels),
-+ cols#80, lines#30,
-
--arm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768),
-- cols#132, lines#50, use=arm100,
-+xnuppc+90x30|Darwin PowerPC Console 90x30 support (720x480 pixels),
-+ cols#90, lines#30,
-
--# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine
--# manufactured by Sharp for the Japenese market.
--# 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,
-+xnuppc+100x37|Darwin PowerPC Console 100x37 support (800x600 pixels),
-+ cols#100, lines#37,
-
--# <tv@pobox.com>:
--# Entry for the DNARD OpenFirmware console, close to ANSI but not quite.
--#
--# (still unfinished, but good enough so far.)
--ofcons|DNARD OpenFirmware console,
-- bw,
-- cols#80, lines#30,
-- bel=^G, blink=\2337;2m, bold=\2331m, clear=^L, cr=^M,
-- cub=\233%p1%dD, cub1=\233D, cud=\233%p1%dB, cud1=\233B,
-- cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH,
-- cuu=\233%p1%dA, cuu1=\233A, dch=\233%p1%dP, dch1=\233P,
-- dim=\2332m, dl=\233%p1%dM, dl1=\233M, ed=\233J, el=\233K,
-- flash=^G, ht=^I, ich=\233%p1%d@, ich1=\233@, il=\233%p1%dL,
-- il1=\233L, ind=^J, invis=\2338m, kbs=^H, kcub1=\233D,
-- kcud1=\233B, kcuf1=\233C, kcuu1=\233A, kdch1=\233P,
-- kf1=\2330P, kf10=\2330M, kf2=\2330Q, kf3=\2330W,
-- kf4=\2330x, kf5=\2330t, kf6=\2330u, kf7=\2330q, kf8=\2330r,
-- kf9=\2330p, knp=\233/, kpp=\233?, nel=^M^J, rev=\2337m,
-- rmso=\2330m, rmul=\2330m,
-- sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m,
-- sgr0=\2330m,
-+xnuppc+112x37|Darwin PowerPC Console 112x37 support (896x600 pixels),
-+ cols#112, lines#37,
-
--# NetBSD "wscons" emulator in vt220 mode.
--# This entry is based on the NetBSD termcap entry, correcting the ncv value.
--# The emulator renders underlined text in red. Colors are otherwise usable.
--#
--# Testing the emulator and reading the source code (NetBSD 2.0), it appears
--# that "vt220" is inaccurate. There are a few vt220-features, but most of the
--# vt220 screens in vttest do not work with this emulator. For instance, it
--# identifies itself (primary DA response) as a vt220 with selective erase. But
--# the selective erase feature does not work. The secondary response is copied
--# from Kermit's emulation of vt220, does not correspond to actual vt220. At
--# the level of detail in a termcap, it is a passable emulator, since ECH does
--# work. Don't use it on a VMS system -TD
--wsvt25|NetBSD wscons in 25 line DEC VT220 mode,
-- bce, msgr,
-- colors#8, cols#80, it#8, lines#25, ncv#2, pairs#64,
-- is2=\E[r\E[25;1H, 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,
-+xnuppc+128x40|Darwin PowerPC Console 128x40 support (1024x640 pixels),
-+ cols#128, lines#40,
-
--wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta,
-- km, use=wsvt25,
-+xnuppc+128x48|Darwin PowerPC Console 128x48 support (1024x768 pixels),
-+ cols#128, lines#48,
-
--# `rasterconsole' provided by 4.4BSD, NetBSD and OpenBSD on SPARC, and
--# DECstation/pmax.
--rcons|BSD rasterconsole,
-- use=sun-il,
--# Color version of above. Color currently only provided by NetBSD.
--rcons-color|BSD rasterconsole with ANSI color,
-- bce,
-- colors#8, pairs#64,
-- op=\E[m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=rcons,
-+xnuppc+144x48|Darwin PowerPC Console 144x48 support (1152x768 pixels),
-+ cols#144, lines#48,
-
--# mgterm -- MGL/MGL2, MobileGear Graphic Library
--# for PocketBSD,PocketLinux,NetBSD/{hpcmips,mac68k}
--# -- the setf/setb are probably incorrect, more likely setaf/setab -TD
--# -- compare with cons25w
--mgterm,
-- OTbs, OTpt, am, bce, bw, eo, km, msgr, npc,
-- colors#8, cols#80, it#8, lines#18, pairs#64,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-- cr=^M, 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,
-- dch=\E[%p1%dP, dch1=\E[P, dim=\E[30;1m, dl=\E[%p1%dM,
-- dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
-- home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich=\E[%p1%d@,
-- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-- indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[F,
-- kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf2=\E[N,
-- kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T,
-- kf9=\E[U, khome=\E[H, kich1=\E[L, knp=\E[G, kpp=\E[I,
-- nel=\E[E, op=\E[x, rc=\E8, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT,
-- rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7, setb=\E[4%p1%dm,
-- setf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd,
-+xnuppc+160x64|Darwin PowerPC Console 160x64 support (1280x1024 pixels),
-+ cols#160, lines#64,
-
--#### FreeBSD console entries
--#
--# From: Andrey Chernov <ache@astral.msk.su> 29 Mar 1996
--# Andrey Chernov maintains the FreeBSD termcap distributions.
--#
--# Note: Users of FreeBSD 2.1.0 and older versions must either upgrade
--# or comment out the :cb: capability in the console entry.
--#
--# Alexander Lukyanov reports:
--# I have seen FreeBSD-2.1.5R... The old el1 bug changed, but it is still there.
--# Now el1 clears not only to the line beginning, but also a large chunk
--# of previous line. But there is another bug - ech does not work at all.
--#
-+xnuppc+200x64|Darwin PowerPC Console 200x64 support (1600x1024 pixels),
-+ cols#200, lines#64,
-
--# for syscons
--# common entry without semigraphics
--# Bug: The <op> capability resets attributes.
--# Bug? The ech and el1 attributes appear to move the cursor in some cases; for
--# instance el1 does if the cursor is moved to the right margin first. Removed
--# by T.Dickey 97/5/3 (ech=\E[%p1%dX, el1=\E[1K)
--#
--# Setting colors turns off reverse; we cannot guarantee order, so use ncv.
--# Note that this disables standout with color.
--#
--# The emulator sends difference strings based on shift- and control-keys,
--# like scoansi:
--# 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),
-- 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,
-- cnorm=\E[=0C, cr=^M, 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[=1C, dch=\E[%p1%dP, dch1=\E[P, dim=\E[30;1m,
-- dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
-- home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich=\E[%p1%d@,
-- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-- indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[F,
-- kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf13=\E[Y,
-- kf14=\E[Z, kf15=\E[a, kf16=\E[b, kf17=\E[c, kf18=\E[d,
-- kf19=\E[e, kf2=\E[N, kf20=\E[f, kf21=\E[g, kf22=\E[h,
-- kf23=\E[i, kf24=\E[j, kf25=\E[k, kf26=\E[l, kf27=\E[m,
-- kf28=\E[n, kf29=\E[o, kf3=\E[O, kf30=\E[p, kf31=\E[q,
-- kf32=\E[r, kf33=\E[s, kf34=\E[t, kf35=\E[u, kf36=\E[v,
-- kf37=\E[w, kf38=\E[x, kf39=\E[y, kf4=\E[P, kf40=\E[z,
-- kf41=\E[@, kf42=\E[[, kf43=\E[\\, 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,
-- knp=\E[G, kpp=\E[I, nel=\E[E, op=\E[x, rc=\E8, rev=\E[7m,
-- ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7,
-- setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-- 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,
--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),
-- kbs=\177, kdch1=\E[3~, use=cons25,
--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),
-- lines#30, use=cons25,
--cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode),
-- lines#30, use=cons25-m,
--cons43|ansi80x43|freebsd console (43-line ansi mode),
-- lines#43, use=cons25,
--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),
-- lines#50, use=cons25,
--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),
-- lines#60, use=cons25,
--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,
-- 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),
-- 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),
-- lines#50, use=cons25r,
--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),
-- lines#60, use=cons25r,
--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,
-- 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),
-- 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),
-- lines#50, use=cons25l1,
--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),
-- lines#60, use=cons25l1,
--cons60l1-m|cons60-iso-m|freebsd console w/iso 8859-1 chars (60-line mono),
-- lines#60, use=cons25l1-m,
-+xnuppc+200x75|Darwin PowerPC Console 200x75 support (1600x1200 pixels),
-+ cols#200, lines#75,
-
--#### 386BSD and BSD/OS Consoles
--#
-+xnuppc+256x96|Darwin PowerPC Console 256x96 support (2048x1536 pixels),
-+ cols#256, lines#96,
-
--# 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,
-- OTbs, am, bw, eo, xon,
-- cols#80, lines#25,
-- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263,
-- bold=\E[7m, clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-- home=\E[H, ind=\E[S, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, khome=\E[Y, ri=\E[T, rmso=\E[1;0x\E[2;7x,
-- rmul=\E[1;0x\E[2;7x, sgr0=\E[m\E[1;0x\E[2;7x,
-- smso=\E[1;7x\E[2;0x, smul=\E[1;7x\E[2;0x,
-+# These are different combinations of the building blocks
-
--# description of BSD/386 console emulator in version 1.0 (supplied by BSDI)
--oldpc3|oldibmpc3|old IBM PC BSD/386 Console,
-- OTbs, km,
-- lines#25,
-- bel=^G, bold=\E[=15F, cr=^M, cud1=^J, dim=\E[=8F, dl1=\E[M,
-- ht=^I, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L, kll=\E[F,
-- knp=\E[G, kpp=\E[I, nel=^M^J, sgr0=\E[=R,
-+xnuppc-m|darwin-m|Darwin PowerPC Console (monochrome),
-+ use=xnuppc+basic,
-
--# Description of BSD/OS console emulator in version 1.1, 2.0, 2.1
--# Note, the emulator supports many of the additional console features
--# listed in the iBCS2 (e.g. character-set selection) though not all
--# are described here. This entry really ought to be upgraded.
--# Also note, the console will also work with fewer lines after doing
--# "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,
-- 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,
-+xnuppc|darwin|Darwin PowerPC Console (color),
-+ use=xnuppc+c, use=xnuppc+basic,
-
--bsdos-pc-nobold|BSD/OS PC console w/o bold,
-- use=klone+color, use=bsdos-pc-m,
-+xnuppc-m-b|darwin-m-b|Darwin PowerPC Console (monochrome w/color-bold),
-+ use=xnuppc+b,
-
--bsdos-pc-m|bsdos-pc-mono|BSD/OS PC console mono,
-- OTbs, am, eo, km, xon,
-- cols#80, it#8, lines#25,
-- bel=^G, clear=\Ec, cr=^M, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L,
-- kll=\E[F, knp=\E[G, kpp=\E[I, nel=^M^J, rc=\E8, sc=\E7,
-- sgr=\E[0;10%?%p1%t;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m%?%p5%t\E[=8F%;,
-- use=klone+sgr8,
-+xnuppc-b|darwin-b|Darwin PowerPC Console (color w/color-bold),
-+ use=xnuppc+b, use=xnuppc+c,
-
--# Old names for BSD/OS PC console used in releases before 4.1.
--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,
-- use=bsdos-pc,
-+xnuppc-m-f|darwin-m-f|Darwin PowerPC Console (fancy monochrome),
-+ use=xnuppc+f,
-
--# BSD/OS on the SPARC
--bsdos-sparc|Sun SPARC BSD/OS Console,
-- use=sun,
-+xnuppc-f|darwin-f|Darwin PowerPC Console (fancy color),
-+ use=xnuppc+f, use=xnuppc+c,
-
--# BSD/OS on the PowerPC
--bsdos-ppc|PowerPC BSD/OS Console,
-- use=bsdos-pc,
-+xnuppc-m-f2|darwin-m-f2|Darwin PowerPC Console (alternate fancy monochrome),
-+ use=xnuppc+f2,
-
--#### DEC VT52
--# (<acsc>/<rmacs>/<smacs> capabilities aren't in DEC's official entry -- esr)
--#
--# Actually (TD pointed this out at the time the acsc string was added):
--# vt52 shouldn't define full acsc since most of the cells don't match.
--# see vt100 manual page A-31. This is the list that does match:
--# f degree
--# g plus/minus
--# h right-arrow
--# k down-arrow
--# m scan-1
--# o scan-3
--# q scan-5
--# s scan-7
--# The line-drawing happens to work in several terminal emulators, but should
--# 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,
-- OTbs,
-- cols#80, it#8, lines#24,
-- acsc=+h.k0affggolpnqprrss, bel=^G, clear=\EH\EJ, cr=^M,
-- 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=^J, kbs=^H, kcub1=\ED, kcud1=\EB,
-- kcuf1=\EC, kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF,
-+xnuppc-f2|darwin-f2|Darwin PowerPC Console (alternate fancy color),
-+ use=xnuppc+f2, use=xnuppc+c,
-
--#### DEC VT100 and compatibles
--#
--# DEC terminals from the vt100 forward are collected here. Older DEC terminals
--# and micro consoles can be found in the `obsolete' section. More details on
--# the relationship between the VT100 and ANSI X3.64/ISO 6429/ECMA-48 may be
--# found near the end of this file.
--#
--# Except where noted, these entries are DEC's official terminfos.
--# 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.
--#
--# In October 1995 DEC sold its terminals business, including the VT and Dorio
--# line and trademark, to SunRiver Data Systems. SunRiver has since changed
--# its name to Boundless Technologies; see http://www.boundless.com.
--#
-+# Combinations for specific screen sizes
-+xnuppc-80x25-m|darwin-80x25-m|Darwin PowerPC Console (monochrome) 80x25,
-+ use=xnuppc+80x25, use=xnuppc+basic,
-
--# NOTE: Any VT100 emulation, whether in hardware or software, almost
--# certainly includes what DEC called the `Level 1 editing extension' codes;
--# only the very oldest VT100s lacked these and there probably aren't any of
--# those left alive. To capture these, use one of the VT102 entries.
--#
--# Note that the <xenl> glitch in vt100 is not quite the same as on the Concept,
--# since the cursor is left in a different position while in the
--# weird state (concept at beginning of next line, vt100 at end
--# of this line) so all versions of vi before 3.7 don't handle
--# <xenl> right on vt100. The correct way to handle <xenl> is when
--# you output the char in column 80, immediately output CR LF
--# and then assume you are in column 1 of the next line. If <xenl>
--# is on, am should be on too.
-+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,
-+ use=xnuppc+80x30, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+90x30, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+100x37, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+112x37, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+128x40, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+128x48, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+144x48, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+160x64, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+200x64, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+200x75, use=xnuppc+basic,
-+
-+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,
-+ use=xnuppc+256x96, use=xnuppc+basic,
-+
-+xnuppc-256x96|darwin-256x96|Darwin PowerPC Console (color) 256x96,
-+ use=xnuppc+c, use=xnuppc+256x96, use=xnuppc+basic,
-+
-+
-+#### BeOS
- #
--# I assume you have smooth scroll off or are at a slow enough baud
--# rate that it doesn't matter (1200? or less). Also this assumes
--# that you set auto-nl to "on", if you set it off use vt100-nam
--# below.
-+# BeOS entry for Terminal program Seems to be almost ANSI
-+beterm|BeOS Terminal,
-+ am, eo, mir, msgr, xenl, xon,
-+ colors#8, cols#80, it#8, lines#25, ncv#5, pairs#64,
-+ bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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,
-+ hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, 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=^M^J, 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,
-+
-+#### Linux consoles
- #
--# The padding requirements listed here are guesses. It is strongly
--# recommended that xon/xoff be enabled, as this is assumed here.
-+
-+# This entry is good for the 1.2.13 or later version of the Linux console.
- #
--# The vt100 uses <rs2> and <rf> rather than <is2>/<tbc>/<hts> because the
--# tab settings are in non-volatile memory and don't need to be
--# reset upon login. Also setting the number of columns glitches
--# the screen annoyingly. You can type "reset" to get them set.
-+# ***************************************************************************
-+# * *
-+# * WARNING: *
-+# * Linuxes come with a default keyboard mapping kcbt=^I. This entry, in *
-+# * response to user requests, assumes kcbt=\E[Z, the ANSI/ECMA reverse-tab *
-+# * character. Here are the keymap replacement lines that will set this up: *
-+# * *
-+# keycode 15 = Tab Tab
-+# alt keycode 15 = Meta_Tab
-+# shift keycode 15 = F26
-+# string F26 ="\033[Z"
-+# * *
-+# * This has to use a key slot which is unfortunate (any unused one will *
-+# * do, F26 is the higher-numbered one). The change ought to be built *
-+# * into the kernel tables. *
-+# * *
-+# ***************************************************************************
- #
--# The VT100 series terminals have cursor ("arrows") keys which can operate
--# in two different modes: Cursor Mode and Application Mode. Cursor Mode
--# is the reset state, and is assumed to be the normal state. Application
--# Mode is the "set" state. In Cursor Mode, the cursor keys transmit
--# "Esc [ {code}" sequences, conforming to ANSI standards. In Application
--# Mode, the cursor keys transmit "Esc O <code>" sequences. Application Mode
--# was provided primarily as an aid to the porting of VT52 applications. It is
--# assumed that the cursor keys are normally in Cursor Mode, and expected that
--# applications such as vi will always transmit the <smkx> string. Therefore,
--# the definitions for the cursor keys are made to match what the terminal
--# transmits after the <smkx> string is transmitted. If the <smkx> string
--# is a null string or is not defined, then cursor keys are assumed to be in
--# "Cursor Mode", and the cursor keys definitions should match that assumption,
--# else the application may fail. It is also expected that applications will
--# always transmit the <rmkx> string to the terminal before they exit.
-+# All linux kernels since 1.2.13 (at least) set the screen size
-+# themselves; this entry assumes that capability.
- #
--# The VT100 series terminals have an auxiliary keypad, commonly referred to as
--# the "Numeric Keypad", because it is a cluster of numeric and function keys.
--# The Numeric Keypad which can operate in two different modes: Numeric Mode and
--# Application Mode. Numeric Mode is the reset state, and is assumed to be
--# the normal state. Application Mode is the "set" state. In Numeric Mode,
--# the numeric and punctuation keys transmit ASCII 7-bit characters, and the
--# Enter key transmits the same as the Return key (Note: the Return key
--# can be configured to send either LF (\015) or CR LF). In Application Mode,
--# all the keypad keys transmit "Esc O {code}" sequences. The PF1 - PF4 keys
--# always send the same "Esc O {code}" sequences. It is assumed that the keypad
--# is normally in Numeric Mode. If an application requires that the keypad be
--# in Application Mode then it is expected that the user, or the application,
--# will set the TERM environment variable to point to a terminfo entry which has
--# defined the <smkx> string to include the codes that switch the keypad into
--# Application Mode, and the terminfo entry will also define function key
--# fields to match the Application Mode control codes. If the <smkx> string
--# is a null string or is not defined, then the keypad is assumed to be in
--# Numeric Mode. If the <smkx> string switches the keypad into Application
--# Mode, it is expected that the <rmkx> string will contain the control codes
--# necessary to reset the keypad to "Normal" mode, and it is also expected that
--# applications which transmit the <smkx> string will also always transmit the
--# <rmkx> string to the terminal before they exit.
--#
--# Here's a diagram of the VT100 keypad keys with their bindings.
--# The top line is the name of the key (some DEC keyboards have the keys
--# labelled somewhat differently, like GOLD instead of PF1, but this is
--# the most "official" name). The second line is the escape sequence it
--# generates in Application Keypad mode (where "$" means the ESC
--# character). The third line contains two items, first the mapping of
--# the key in terminfo, and then in termcap.
--# _______________________________________
--# | PF1 | PF2 | PF3 | PF4 |
--# | $OP | $OQ | $OR | $OS |
--# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
--# | 7 8 9 - |
--# | $Ow | $Ox | $Oy | $Om |
--# |_kf9__k9_|_kf10_k;_|_kf0__k0_|_________|
--# | 4 | 5 | 6 | , |
--# | $Ot | $Ou | $Ov | $Ol |
--# |_kf5__k5_|_kf6__k6_|_kf7__k7_|_kf8__k8_|
--# | 1 | 2 | 3 | |
--# | $Oq | $Or | $Os | enter |
--# |_ka1__K1_|_kb2__K2_|_ka3__K3_| $OM |
--# | 0 | . | |
--# | $Op | $On | |
--# |___kc1_______K4____|_kc3__K5_|_kent_@8_|
--#
--# Note however, that the arrangement of the 5-key ka1-kc3 do not follow the
--# 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,
-- ka1=\EOq, ka3=\EOs, kb2=\EOr, kc1=\EOp, kc3=\EOn,
--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,
-- kf0=\EOy, kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl,
-- kf9=\EOw, use=vt100+pfkeys,
--#
--# A better adaptation to modern keyboards such as the PC's, which have a dozen
--# function keys and the keypad 2,4,6,8 keys are labeled with arrows keys, is to
--# use the 5-key arrangement to model the arrow keys as suggested in the
--# terminfo guidelines:
--# _______________________________________
--# | PF1 | PF2 | PF3 | PF4 |
--# | $OP | $OQ | $OR | $OS |
--# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
--# | 7 8 9 - |
--# | $Ow | $Ox | $Oy | $Om |
--# |_ka1__K1_|_________|_ka3__K3_|_________|
--# | 4 | 5 | 6 | , |
--# | $Ot | $Ou | $Ov | $Ol |
--# |_________|_kb2__K2_|_________|_________|
--# | 1 | 2 | 3 | |
--# | $Oq | $Or | $Os | enter |
--# |_kc1__K4_|_________|_kc3__K5_| $OM |
--# | 0 | . | |
--# | $Op | $On | |
--# |___________________|_________|_kent_@8_|
--#
--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,
--#
--vt100+enq|ncurses extension for vt100-style ENQ,
-- u8=\E[?1;2c, use=ansi+enq,
--vt102+enq|ncurses extension for vt102-style ENQ,
-- u8=\E[?6c, use=ansi+enq,
--#
--# And here, for those of you with orphaned VT100s lacking documentation, is
--# a description of the soft switches invoked when you do `Set Up'.
--#
--# Scroll 0-Jump Shifted 3 0-#
--# | 1-Smooth | 1-British pound sign
--# | Autorepeat 0-Off | Wrap Around 0-Off
--# | | 1-On | | 1-On
--# | | Screen 0-Dark Bkg | | New Line 0-Off
--# | | | 1-Light Bkg | | | 1-On
--# | | | Cursor 0-Underline | | | Interlace 0-Off
--# | | | | 1-Block | | | | 1-On
--# | | | | | | | |
--# 1 1 0 1 1 1 1 1 0 1 0 0 0 0 1 0 <--Standard Settings
--# | | | | | | | |
--# | | | Auto XON/XOFF 0-Off | | | Power 0-60 Hz
--# | | | 1-On | | | 1-50 Hz
--# | | Ansi/VT52 0-VT52 | | Bits Per Char. 0-7 Bits
--# | | 1-ANSI | | 1-8 Bits
--# | Keyclick 0-Off | Parity 0-Off
--# | 1-On | 1-On
--# Margin Bell 0-Off Parity Sense 0-Odd
--# 1-On 1-Even
--#
--# The following SET-UP modes are assumed for normal operation:
--# ANSI_MODE AUTO_XON/XOFF_ON NEWLINE_OFF 80_COLUMNS
--# WRAP_AROUND_ON JUMP_SCROLL_OFF
--# Other SET-UP modes may be set for operator convenience or communication
--# requirements; I recommend
--# AUTOREPEAT_ON BLOCK_CURSOR MARGIN_BELL_OFF SHIFTED_3_#
--# Unless you have a graphics add-on such as Digital Engineering's VT640
--# (and even then, whenever it can be arranged!) you should set
--# INTERLACE_OFF
--#
--# (vt100: I added <rmam>/<smam> based on the init string, also <OTbs>. -- esr)
--vt100|vt100-am|dec vt100 (w/advanced video),
-- OTbs, am, mc5i, msgr, xenl, xon,
-- cols#80, it#8, lines#24, vt#3,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-- clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+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\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-+ bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr,
- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-- cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>,
-- enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, lf1=pf1,
-- lf2=pf2, lf3=pf3, lf4=pf4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
-- rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l,
-- rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>,
-- sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=,
-- smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g,
-- use=vt100+fnkeys,
--vt100nam|vt100-nam|vt100 no automargins,
-- am@, xenl@, use=vt100-am,
--vt100-vb|dec vt100 (w/advanced video) & no beep,
-- bel@, flash=\E[?5h\E[?5l, use=vt100,
-+ 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, ech=\E[%p1%dX, ed=\E[J,
-+ el=\E[K, el1=\E[1K, flash=\E[?5h\E[?5l$<200/>, 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=^J, kb2=\E[G, kbs=\177,
-+ 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=^M^J, 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,
-
--# Ordinary vt100 in 132 column ("wide") mode.
--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),
-- cols#132, lines#14, vt@,
-- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-nam,
-+linux-m|Linux console no color,
-+ colors@, pairs@,
-+ setab@, setaf@, setb@, setf@, use=linux,
-
--# vt100 with no advanced video.
--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),
-- cols#132, lines#14, use=vt100-nav,
-+# The 1.3.x kernels add color-change capabilities; if yours doesn't have this
-+# and it matters, turn off <ccc>. The %02x escape used to implement this is
-+# 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,
-+ 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,
-+ 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'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p3%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%p4%{255}%*%{1000}%/%Pr%gr%{16}%/%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;%gr%{15}%&%Px%?%gx%{9}%>%t%gx%{10}%-%'a'%+%c%e%gx%d%;,
-+ oc=\E]R, use=linux-basic,
-
--# vt100 with one of the 24 lines used as a status line.
--# We put the status line on the top.
--vt100-s|vt100-s-top|vt100-top-s|vt100 for use with top sysline,
-- eslok, hs,
-- lines#23,
-- clear=\E[2;1H\E[J$<50>, csr=\E[%i%i%p1%d;%p2%dr,
-- cup=\E[%i%p1%{1}%+%d;%p2%dH$<5>, dsl=\E7\E[1;24r\E8,
-- fsl=\E8, home=\E[2;1H, is2=\E7\E[2;24r\E8,
-- tsl=\E7\E[1;%p1%dH\E[1K, use=vt100-am,
-+# 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,
-+ civis=\E[?25l\E[?1c, cnorm=\E[?25h\E[?0c,
-+ cvvis=\E[?25h\E[?8c, use=linux-c-nc,
-
--# Status line at bottom.
--# Clearing the screen will clobber status line.
--vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline,
-- eslok, hs,
-- lines#23,
-- dsl=\E7\E[1;24r\E8, fsl=\E8, is2=\E[1;23r\E[23;1H,
-- tsl=\E7\E[24;%p1%dH\E[1K, use=vt100-am,
-+# Linux 2.6.x has a fix for SI/SO to work with UTF-8 encoding added here:
-+# http://lkml.indiana.edu/hypermail/linux/kernel/0602.2/0868.html
-+# Using SI/SO has the drawback that it confuses screen. SCS would work.
-+# However, SCS is buggy (see comment in Debian #515609) -TD
-+# Further, this breaks longstanding workarounds for Linux console's line
-+# drawing (see Debian 665959) -TD
-+linux2.6|linux 2.6.x console,
-+ 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%;,
-+ sgr0=\E[m\017, smacs=^N, use=linux2.2,
-+
-+# 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[3;J, use=linux2.6,
-
--# 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,
-- dch1=\E[P, dl1=\E[M, il1=\E[L, rmir=\E[4l, smir=\E[4h,
-- use=vt100,
--vt102-w|dec vt102 in wide mode,
-- cols#132,
-- rs3=\E[?3h, use=vt102,
-+# This is Linux console for ncurses.
-+linux|linux console,
-+ use=linux2.2,
-
--# Many brain-dead PC comm programs that pretend to be `vt100-compatible'
--# fail to interpret the ^O and ^N escapes properly. Symptom: the <sgr0>
--# string in the canonical vt100 entry above leaves the screen littered
--# with little snowflake or star characters (IBM PC ROM character \017 = ^O)
--# after highlight turnoffs. This entry should fix that, and even leave
--# ACS support working, at the cost of making multiple-highlight changes
--# slightly more expensive.
--# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995
--vt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes),
-- sgr@, sgr0=\E[m, use=vt102,
-+# Subject: linux 2.6.26 vt back_color_erase
-+# Changes to the Linux console driver broke bce model as reported in
-+# https://bugzilla.novell.com/show_bug.cgi?id=418613
-+# 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,
-+ bce@, use=linux2.6,
-
--# VT125 Graphics CRT. Clear screen also erases graphics
--# Some vt125's came configured with vt102 support.
--vt125|vt125 graphics terminal,
-- mir,
-- clear=\E[H\E[2J\EPpS(E)\E\\$<50>, use=vt100,
-+# 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,
-+ ich@, ich1@, use=linux,
-
--# 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,
-- OTbs, am, xenl,
-- cols#80, it#8, lines#24, vt#3,
-- bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>,
-- clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub1=^H, cud1=^J, cuf1=\E[C$<2/>,
-- cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>,
-- ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I,
-- is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB,
-- kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR,
-- kf4=\EOS, nel=^M^J, rc=\E8, rev=\E[7m$<2/>, ri=\EM$<5/>,
-- rmam=\E[?7h, rmkx=\E[?1l\E>, rmso=\E[m$<2/>,
-- rmul=\E[m$<2/>,
-- rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- sgr0=\E[m$<2/>, smam=\E[?7h, smkx=\E[?1h\E=,
-- smso=\E[7m$<2/>, smul=\E[4m$<2/>,
-+# 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,
-+ 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,
-+ use=linux, use=klone+koi8acs,
-
--# vt132 - like vt100 but slower and has ins/del line and such.
--# I'm told that <smir>/<rmir> are backwards in the terminal from the
--# manual and from the ANSI standard, this describes the actual
--# terminal. I've never actually used a vt132 myself, so this
--# is untested.
--#
--vt132|DEC vt132,
-- xenl,
-- dch1=\E[P$<7>, dl1=\E[M$<99>, il1=\E[L$<99>, ind=\n$<30>,
-- ip=$<7>, rmir=\E[4h, smir=\E[4l, use=vt100,
-+# 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,
-+ use=linux, use=klone+koi8acs,
-
--# This vt220 description maps F5--F9 to the second block of function keys
--# at the top of the keyboard. The "DO" key is used as F10 to avoid conflict
--# with the key marked (ESC) on the vt220. See vt220d for an alternate mapping.
--# PF1--PF4 are used as F1--F4.
-+# Entry for the latin1 and latin2 fonts
-+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,
-+ use=linux,
-+
-+# 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,
-+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~,
-+ rmacs=\E(K, rmpch@, sgr@, sgr0=\E[0m\E(K\017, smacs=\E(0,
-+ smpch@, use=linux,
-+
-+# This is based on the Linux console (relies on the console to perform some
-+# of the functionality), but does not recognize as many control sequences.
-+# The program comes bundled with an old (circa 1998) copy of the Linux
-+# console terminfo. It recognizes some non-ANSI/VT100 sequences such as
-+# \E* move cursor to home, as as \E[H
-+# \E,X same as \E(X
-+# \EE move cursor to beginning of row
-+# \E[y,xf same as \E[y,xH
- #
--vt220-old|vt200-old|DEC VT220 in vt100 emulation mode,
-- OTbs, OTpt, am, mir, xenl, xon,
-- cols#80, lines#24, vt#3,
-- OTnl=^J,
-- 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=^M,
-- 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,
-- 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,
-+# Note: The status-line support is buggy (dsl does not work).
-+kon|kon2|jfbterm|Kanji ON Linux console,
-+ ccc@, hs,
-+ civis@, cnorm@, cvvis@, dsl=\E[?H, flash@, fsl=\E[?F, initc@,
-+ initp@, kcbt@, oc@, op=\E[37;40m, rs1=\Ec, tsl=\E[?T,
-+ use=linux,
-
--# 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
--# designation to accommodate bug in pcvt -TD
--vt220|vt200|dec vt220,
-- OTbs, am, mc5i, mir, msgr, xenl, xon,
-- cols#80, it#8, lines#24, vt#3,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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, enacs=\E)0,
-- flash=\E[?5h$<200/>\E[?5l, home=\E[H, ht=^I, hts=\EH,
-- ich=\E[%p1%d@, if=/usr/share/tabset/vt100,
-- il=\E[%p1%dL, il1=\E[L, ind=\ED,
-- is2=\E[?7h\E[>\E[?1h\E F\E[?4l, kbs=^H, 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~,
-- 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, mc0=\E[i, mc4=\E[4i,
-- mc5=\E[5i, 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,
--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,
-- OTbs, am, mc5i, mir, msgr, xenl, xon,
-- cols#80, it#8, lines#24, vt#3,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\2335m, bold=\2331m, clear=\233H\233J, cr=^M,
-- csr=\233%i%p1%d;%p2%dr, cub=\233%p1%dD, cub1=^H,
-- cud=\233%p1%dB, cud1=^J, cuf=\233%p1%dC, cuf1=\233C,
-- cup=\233%i%p1%d;%p2%dH, cuu=\233%p1%dA, cuu1=\233A,
-- dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M,
-- ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K, enacs=\E)0,
-- flash=\233?5h$<200/>\233?5l, home=\233H, ht=^I, hts=\EH,
-- ich=\233%p1%d@, if=/usr/share/tabset/vt100,
-- il=\233%p1%dL, il1=\233L, ind=\ED,
-- is2=\233?7h\233>\233?1h\E F\233?4l, kbs=^H,
-- kcub1=\233D, kcud1=\233B, kcuf1=\233C, kcuu1=\233A,
-- kf1=\EOP, kf10=\23321~, kf11=\23323~, kf12=\23324~,
-- kf13=\23325~, kf14=\23326~, kf17=\23331~, kf18=\23332~,
-- kf19=\23333~, kf2=\EOQ, kf20=\23334~, kf3=\EOR, kf4=\EOS,
-- kf6=\23317~, kf7=\23318~, kf8=\23319~, kf9=\23320~,
-- kfnd=\2331~, khlp=\23328~, khome=\233H, kich1=\2332~,
-- knp=\2336~, kpp=\2335~, krdo=\23329~, kslt=\2334~, lf1=pf1,
-- lf2=pf2, lf3=pf3, lf4=pf4, mc0=\233i, mc4=\2334i, mc5=\2335i,
-- nel=\EE, rc=\E8, rev=\2337m, ri=\EM, rmacs=\E(B,
-- rmam=\233?7l, rmir=\2334l, rmso=\23327m, rmul=\23324m,
-- rs1=\233?3l, sc=\E7,
-- 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,
-+# 16-color linux console entry; this works with a 256-character
-+# console font but bright background colors turn into dim ones when
-+# you use a 512-character console font. This uses bold for bright
-+# foreground colors and blink for bright background colors.
-+linux-16color|linux console with 16 colors,
-+ colors#16, ncv#63, pairs#256,
-+ 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;21%;m,
-+ use=linux,
-
--# vt220d:
--# This vt220 description regards F6--F10 as the second block of function keys
--# at the top of the keyboard. This mapping follows the description given
--# in the VT220 Programmer Reference Manual and agrees with the labeling
--# on some terminals that emulate the vt220. There is no support for an F5.
--# See vt220 for an alternate mapping.
-+# bterm (bogl 0.1.18)
-+# Implementation is in bogl-term.c
-+# Key capabilities from linux terminfo entry
- #
--vt220d|DEC VT220 in vt100 mode with DEC function key labeling,
-+# Notes:
-+# bterm only supports acs using wide-characters, has case for these: qjxamlkut
-+# bterm does not support sgr, since it only processes one parameter -TD
-+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=^M, cub1=^H, cud1=^J,
-+ cup=\E[%i%p1%d;%p2%dH, ed=\E[J, el=\E[K, home=\E[H, ind=^J,
-+ kb2=\E[G, kbs=\177, 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~, kf20=\E[34~, kf5@, kf6=\E[17~,
-- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, use=vt220-old,
-+ 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=^M^J,
-+ 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,
-
--vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins,
-- am@,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt220,
-+#### Mach
-+#
-
--# vt220 termcap written Tue Oct 25 20:41:10 1988 by Alex Latzko
--# (not an official DEC entry!)
--# The problem with real vt220 terminals is they don't send escapes when in
--# in vt220 mode. This can be gotten around two ways. 1> don't send
--# escapes or 2> put the vt220 into vt100 mode and use all the nifty
--# features of vt100 advanced video which it then has.
-+# From: Matthew Vernon <mcv21@pick.sel.cam.ac.uk>
-+mach|Mach Console,
-+ am, km,
-+ cols#80, it#8, lines#25,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-+ cuu=\E[%p1%dA, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J,
-+ el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\E[9, kend=\E[Y, kf1=\EOP, kf10=\EOY, kf2=\EOQ,
-+ kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW,
-+ 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,
-+ rmul=\E[0m, smul=\E[1m, use=mach,
-+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,
-+
-+# From: Samuel Thibault
-+# Source: git://git.sv.gnu.org/hurd/gnumach.git
-+# Files: i386/i386at/kd.c
-+#
-+# Added nel, hpa, sgr and removed rmacs, smacs based on source -TD
-+mach-gnu|GNU Mach,
-+ acsc=+>\,<-\^.v0\333`+a\261f\370g\361h\260i#j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, ech=\E[%p1%dX,
-+ el1=\E[1K, hpa=\E[%i%p1%dG, ich=\E[%p1%d@, ich1=\E[@,
-+ indn=\E[%p1%dS, invis=\E[8m, nel=\EE, rin=\E[%p1%dT,
-+ 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,
-+ use=mach,
-+
-+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/
- #
--# This entry takes the view of putting a vt220 into vt100 mode so
--# you can use the escape key in emacs and everything else which needs it.
-+# Comments in the original are summarized here:
- #
--# You probably don't want to use this on a VMS machine since VMS will think
--# it has a vt220 and will get fouled up coming out of emacs
-+# hurd uses 8-bit characters (km).
- #
--# From: Alexander Latzko <latzko@marsenius.rutgers.edu>, 30 Dec 1996
--# (Added vt100 <rc>,<sc> to quiet a tic warning -- esr)
--vt200-js|vt220-js|dec vt200 series with jump scroll,
-- am,
-- cols#80,
-- bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub1=^H, cud1=^J, 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, il1=\E[L, ind=\ED,
-- is2=\E[61"p\E[H\E[?3l\E[?4l\E[?1l\E[?5l\E[?6l\E[?7h\E[?8h\E[?25h\E>\E[m,
-- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=^M\ED, rc=\E8,
-- rf=/usr/share/tabset/vt100, ri=\EM, rmdc=, rmir=\E[4l,
-- 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,
--
--# This was DEC's vt320. Use the purpose-built one below instead
--#vt320|DEC VT320 in vt100 emulation mode,
--# use=vt220,
--
--# Use v320n for SCO's LYRIX. Otherwise, use Adam Thompson's vt320-nam.
-+# Although it doesn't do XON/XOFF, we don't want padding characters (xon).
- #
--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,
--
--# These entries are not DEC's official ones, they were purpose-built for the
--# VT320. Here are the designer's notes:
--# <kel> is end on a PC kbd. Actually 'select' on a VT. Mapped to
--# 'Erase to End of Field'... since nothing seems to use 'end' anyways...
--# khome is Home on a PC kbd. Actually 'FIND' on a VT.
--# Things that use <knxt> usually use tab anyways... and things that don't use
--# tab usually use <knxt> instead...
--# kprv is same as tab - Backtab is useless...
--# I left out <sgr> because of its RIDICULOUS complexity,
--# and the resulting fact that it causes the termcap translation of the entry
--# 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,
-- am, eslok, 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=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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, fsl=\E[0$},
-- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL,
-- il1=\E[L, ind=\ED,
-- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H,
-- kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- kdch1=\E[3~, kel=\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~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
-- kf9=\E[20~, khome=\E[1~, kich1=\E[2~, knp=\E[6~, knxt=^I,
-- kpp=\E[5~, kprv=\E[Z, kslt=\E[4~, mc0=\E[i, mc4=\E[?4i,
-- mc5=\E[?5i, nel=\EE, rc=\E8, rev=\E[7m,
-- rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B,
-- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m,
-- rmul=\E[m,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H,
-- 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, smam=\E[?7h, smir=\E[4h,
-- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-- tsl=\E[1$}\E[H\E[K, use=vt220+keypad,
--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,
-- 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,
-- 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,
--
--# VT330 and VT340 -- These are ReGIS and SIXEL graphics terminals
--# which are pretty much a superset of the VT320. They have the
--# 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
--# support VT131 and ANSI block mode, but as with much of these things,
--# termcap/terminfo doesn't deal with these features.
--#
--# Note that this entry is are 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
--# arrow keys. Emacs v19 is smarter and mines its keys directly out of
--# your termcap or terminfo entry,
--#
--# 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,
-- 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=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- 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\E[?5l$<200/>, 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 F\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,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
-- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2,
-- lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m,
-- rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B,
-- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, 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, 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,
--
--# 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).
-+# Regarding compatibility to vt100: hurd doesn't specify <xenl>, as we don't
-+# have the eat_newline_glitch. It doesn't support setting or removing tab
-+# stops (hts/tbc).
- #
--# VT400/420 -- This terminal is a superset of the vt320. It adds the multiple
--# text pages and long text pages with selectable length of the vt340, along
--# with left and right margins, rectangular area text copy, fill, and erase
--# operations, selected region character attribute change operations,
--# page memory and rectangle checksums, insert/delete column, reception
--# macros, and other features too numerous to remember right now. TERMCAP
--# can only take advantage of a few of these added features.
-+# hurd uses ^H instead of \E[D for cub1, as only ^H implements <bw> and it is
-+# one byte instead three.
- #
--# Note that this entry is are 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
--# arrow keys. Emacs v19 is smarter and mines its keys directly out of
--# your termcap entry,
-+# <ich1> is not included because hurd has insert mode.
- #
--# 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,
-- 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=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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$<10/>,
-- el=\E[K$<4/>, flash=\E[?5h\E[?5l$<200/>, fsl=\E[$},
-- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
-- il=\E[%p1%dL, il1=\E[L, ind=\ED,
-- is2=\E<\E F\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,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
-- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2,
-- lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m,
-- rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B,
-- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
-- rmul=\E[24m, rs1=\E<\E[?3l\E[!p\E[?7h, 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, 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,
--
--# (vt420: I removed <kf0>, it collided with <kf10>. I also restored
--# a missing <sc> -- esr)
--vt420|DEC VT420,
-- am, mir, xenl, xon,
-- cols#80, lines#24, vt#3,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-- clear=\E[H\E[2J$<50>, cr=^M, 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/vt300, 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~, 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[m, rmul=\E[m, 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$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h,
-- smkx=\E=, smso=\E[7m, smul=\E[4m,
--
--# 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
--# straightforward (keys 1-5 are not defined on real terminals, though some
--# emulators define these):
-+# hurd doesn't use ^J for scrolling, because this could put things into the
-+# scrollback buffer.
- #
--# if (key < 16) then value = key;
--# else if (key < 21) then value = key + 1;
--# else if (key < 25) then value = key + 2;
--# else if (key < 27) then value = key + 3;
--# else if (key < 30) then value = key + 4;
--# else value = key + 5;
-+# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode.
-+# This is a GNU extension.
- #
--# The string must be the hexadecimal equivalent, e.g., "5052494E" for "PRINT".
--# There's no provision in terminfo for emitting a string in this format, so the
--# application has to know it.
-+# The original has commented-out ncv, but is restored here.
- #
--vt420pc|DEC VT420 w/PC keyboard,
-- kdch1=\177, kend=\E[4~, kf1=\E[11~, kf10=\E[21~,
-- kf11=\E[23~, kf12=\E[24~, kf13=\E[11;2~, kf14=\E[12;2~,
-- kf15=\E[13;2~, kf16=\E[14;2~, kf17=\E[15;2~,
-- kf18=\E[17;2~, kf19=\E[18;2~, kf2=\E[12~, kf20=\E[19;2~,
-- kf21=\E[20;2~, kf22=\E[21;2~, kf23=\E[23;2~,
-- kf24=\E[24;2~, kf25=\E[23~, kf26=\E[24~, kf27=\E[25~,
-- kf28=\E[26~, kf29=\E[28~, kf3=\E[13~, kf30=\E[29~,
-- kf31=\E[31~, kf32=\E[32~, kf33=\E[33~, kf34=\E[34~,
-- kf35=\E[35~, kf36=\E[36~, kf37=\E[23;2~, kf38=\E[24;2~,
-- kf39=\E[25;2~, kf4=\E[14~, kf40=\E[26;2~, kf41=\E[28;2~,
-- kf42=\E[29;2~, 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\:,
-- 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\\,
-- use=vt420,
--
--vt420pcdos|DEC VT420 w/PC for DOS Merge,
-- lines#25,
-- dispc=%?%p1%{19}%=%t\E\023\021%e%p1%{32}%<%t\E%p1%c%e%p1%{127}%=%t\E\177%e%p1%c%;,
-- pctrm@,
-- rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sgr@,
-- sgr0=\E[m, smsc=\E[?1;2r\E[34h, use=vt420pc,
--
--vt420f|DEC VT420 with VT kbd; VT400 mode; F1-F5 used as Fkeys,
-- kdch1=\177, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~,
-+# Reading the source, RIS resets cnorm, but not xmous.
-+hurd|The GNU Hurd console server,
-+ am, bce, bw, eo, km, mir, msgr, xenl, xon,
-+ colors#8, it#8, ncv#18, pairs#64,
-+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
-+ clear=\Ec, cnorm=\E[?25h, cr=^M, 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, indn=\E[%p1%dS,
-+ invis=\E[8m, kb2=\E[G, kbs=\177, 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~, 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~,
-- khome=\E[H, lf1=\EOP, lf2=\EOQ, lf3=\EOR, lf4=\EOS,
-- use=vt420,
--
--vt510|DEC VT510,
-- use=vt420,
--vt510pc|DEC VT510 w/PC keyboard,
-- use=vt420pc,
--vt510pcdos|DEC VT510 w/PC for DOS Merge,
-- use=vt420pcdos,
-+ 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=^M^J, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\E[T,
-+ rin=\E[%p1%dT, ritm=\E[23m, 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, sitm=\E[3m, smacs=\E[11m, smir=\E[4h,
-+ smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd, grbom=\E[>1l,
-+ gsbom=\E[>1h,
-
--# VT520/VT525
--#
--# The VT520 is a monochrome text terminal capable of managing up to
--# four independent sessions in the terminal. It has multiple ANSI
--# emulations (VT520, VT420, VT320, VT220, VT100, VT PCTerm, SCO Console)
--# and ASCII emulations (WY160/60, PCTerm, 50/50+, 150/120, TVI 950,
--# 925 910+, ADDS A2). This terminfo data is for the ANSI emulations only.
-+#### QNX
- #
--# Terminal Set-Up is entered by pressing [F3], [Caps Lock]/[F3] or
--# [Alt]/[Print Screen] depending upon which keyboard and which
--# terminal mode is being used. If Set-Up has been disabled or
--# assigned to an unknown key, Set-Up may be entered by pressing
--# [F3] as the first key after power up, regardless of keyboard type.
--# (vt520: I added <rmam>/<smam> based on the init string, also <sc> -- esr)
--vt520|DEC VT520,
-- am, mir, xenl, xon,
-- cols#80, lines#24, vt#3,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-- clear=\E[H\E[2J$<50>, cr=^M, 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/vt300, 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~,
-- 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\\,
-- rc=\E8, rev=\E[7m$<2>, rf=/usr/share/tabset/vt300,
-- ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l,
-- rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-- rmso=\E[m, rmul=\E[m, 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$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h,
-- smso=\E[7m, smul=\E[4m,
--
--# (vt525: I added <rmam>/<smam> based on the init string;
--# removed <rmso>=\E[m, <rmul>=\E[m, added <sc> -- esr)
--vt525|DEC VT525,
-- am, mir, xenl, xon,
-- cols#80, lines#24, vt#3,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-- clear=\E[H\E[2J$<50>, cr=^M, 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/vt300, 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~,
-- 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\\,
-- rc=\E8, rev=\E[7m$<2>, rf=/usr/share/tabset/vt300,
-- ri=\EM, rmacs=\E(B$<4>, rmam=\E[?7l, rmir=\E[4l,
-- rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-- rmso=\E[m, rmul=\E[m, 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$<2>, smacs=\E(0$<2>, smam=\E[?7h, smir=\E[4h,
-- smso=\E[7m, smul=\E[4m,
-
--#### VT100 emulations
-+# QNX 4.0 Console
-+# Michael's original version of this entry had <am@>, <smcup=\Ei>,
-+# <rmcup=\Eh\ER>; this was so terminfo applications could write the lower
-+# right corner without triggering a scroll. The ncurses terminfo library can
-+# handle this case with the <ich1> capability, and prefers <am> for better
-+# 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,
-+ 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\303u\264v\301w\302x\263,
-+ bel=^G, blink=\E{, bold=\E<, civis=\Ey0, clear=\EH\EJ,
-+ cnorm=\Ey1, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\Ey2,
-+ dch1=\Ef, dl1=\EF, ed=\EJ, el=\EK, home=\EH, ht=^I, ich1=\Ee,
-+ il1=\EE, ind=^J, kBEG=\377\356, kCAN=\377\263,
-+ kCMD=\377\267, kCPY=\377\363, kCRT=\377\364,
-+ kDL=\377\366, kEND=\377\301, kEOL=\377\311,
-+ kEXT=\377\367, kFND=\377\370, kHLP=\377\371,
-+ kHOM=\377\260, kIC=\377\340, kLFT=\377\264,
-+ kMOV=\377\306, kMSG=\377\304, kNXT=\377\272,
-+ kOPT=\377\372, kPRT=\377\275, kPRV=\377\262,
-+ kRDO=\377\315, kRES=\377\374, kRIT=\377\266,
-+ kRPL=\377\373, kSAV=\377\307, kSPD=\377\303,
-+ kUND=\377\337, kbeg=\377\300, kcan=\377\243, kcbt=\377\0,
-+ kclo=\377\343, kclr=\377\341, kcmd=\377\245,
-+ kcpy=\377\265, kcrt=\377\305, kctab=\377\237,
-+ kcub1=\377\244, kcud1=\377\251, kcuf1=\377\246,
-+ kcuu1=\377\241, kdch1=\377\254, kdl1=\377\274,
-+ ked=\377\314, kel=\377\310, kend=\377\250, kent=\377\320,
-+ kext=\377\270, kf1=\377\201, kf10=\377\212,
-+ kf11=\377\256, kf12=\377\257, kf13=\377\213,
-+ kf14=\377\214, kf15=\377\215, kf16=\377\216,
-+ kf17=\377\217, kf18=\377\220, kf19=\377\221,
-+ kf2=\377\202, kf20=\377\222, kf21=\377\223,
-+ kf22=\377\224, kf23=\377\333, kf24=\377\334,
-+ kf25=\377\225, kf26=\377\226, kf27=\377\227,
-+ kf28=\377\230, kf29=\377\231, kf3=\377\203,
-+ kf30=\377\232, kf31=\377\233, kf32=\377\234,
-+ kf33=\377\235, kf34=\377\236, kf35=\377\276,
-+ kf36=\377\277, kf37=\377\321, kf38=\377\322,
-+ kf39=\377\323, kf4=\377\204, kf40=\377\324,
-+ kf41=\377\325, kf42=\377\326, kf43=\377\327,
-+ kf44=\377\330, kf45=\377\331, kf46=\377\332,
-+ kf47=\377\316, kf48=\377\317, kf5=\377\205, kf6=\377\206,
-+ kf7=\377\207, kf8=\377\210, kf9=\377\211, kfnd=\377\346,
-+ khlp=\377\350, khome=\377\240, khts=\377\342,
-+ kich1=\377\253, kil1=\377\273, kind=\377\261,
-+ kmov=\377\351, kmrk=\377\355, kmsg=\377\345,
-+ knp=\377\252, knxt=\377\312, kopn=\377\357,
-+ kopt=\377\353, kpp=\377\242, kprt=\377\255,
-+ kprv=\377\302, krdo=\377\336, kref=\377\354,
-+ kres=\377\360, krfr=\377\347, kri=\377\271,
-+ krmir=\377\313, krpl=\377\362, krst=\377\352,
-+ ksav=\377\361, kslt=\377\247, kspd=\377\335,
-+ ktbc=\377\344, kund=\377\365, mvpa=\E!%p1%02d, op=\ER,
-+ rep=\Eg%p2%{32}%+%c%p1%c, rev=\E(, ri=\EI, rmcup=\Eh\ER,
-+ rmso=\E), rmul=\E], rs1=\ER, setb=\E@%p1%Pb%gb%gf%d%d,
-+ setf=\E@%p1%Pf%gb%gf%d%d, sgr0=\E}\E]\E>\E), smcup=\Ei,
-+ smso=\E(, smul=\E[,
- #
-+#
-+qnxt|qnxt4|QNX4 terminal,
-+ crxm, use=qnx4,
-+#
-+qnxm|QNX4 with mouse events,
-+ maddr#1,
-+ chr=\E/, cvr=\E", is1=\E/0t, mcub=\E/>1h, mcub1=\E/>7h,
-+ mcud=\E/>1h, mcud1=\E/>1l\E/>9h, mcuf=\E/>1h\E/>9l,
-+ mcuf1=\E/>7l, mcuu=\E/>6h, mcuu1=\E/>6l, rmicm=\E/>2l,
-+ smicm=\E/>2h, use=qnx4,
-+#
-+qnxw|QNX4 windows,
-+ xvpa, use=qnxm,
-+#
-+# Monochrome QNX4 terminal or console. Setting this terminal type will
-+# allow an application running on a color console to behave as if it
-+# were a monochrome terminal. Output will be through stdout instead of
-+# console writes because the term routines will recognize that the
-+# terminal name starts with 'qnxt'.
-+#
-+qnxtmono|Monochrome QNX4 terminal or console,
-+ colors@, pairs@,
-+ scp@, use=qnx4,
-
--# John Hawkinson <jhawk@MIT.EDU> tells us that the EWAN telnet for Windows
--# (the best Windows telnet as of September 1995) presents the name `dec-vt100'
--# to telnetd. Michael Deutschmann <ldeutsch@mail.netshop.net> informs us
--# that this works best with a stock vt100 entry.
--dec-vt100|EWAN telnet's vt100 emulation,
-- use=vt100,
--
--# From: Adrian Garside <94ajg2@eng.cam.ac.uk>, 19 Nov 1996
--dec-vt220|DOS tnvt200 terminal emulator,
-- am@, use=vt220,
--
--# 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...
--# 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,
-- 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),
-- 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,
--
--# CRT is shareware. It implements some xterm features, including mouse.
--crt|crt-vt220|CRT 2.3 emulating VT220,
-- bce, msgr,
-- ncv@,
-- hts=\EH, use=vt100+enq, use=vt220, use=ecma+color,
-+# 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,
-+ am,
-+ civis@, cnorm@, cvvis@, dch1@, ich1@, kRES@, kRPL@, kUND@, kspd@,
-+ rep@, rmcup@, rmso=\E>, setb@, setf@, smcup@, smso=\E<, use=qnx4,
-
--# PuTTY 0.55 (released 3 August 2004)
--# http://www.chiark.greenend.org.uk/~sgtatham/putty/
-+# QNX ANSI terminal definition
-+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=^M,
-+ 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,
-+ dl=\E[%p1%dM, dl1=\E[1M, dsl=\E[r, ech=\E[%p1%dX, ed=\E[J,
-+ el=\E[K, el1=\E[1K\E[X, flash=\E[?5h$<200>\E[?5l,
-+ fsl=\E[?6h\E8, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
-+ ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L,
-+ ind=\E[S, indn=\E[%p1%dS, invis=\E[9m,
-+ is2=\E>\E[?1l\E[?7h\E[0;10;39;49m, is3=\E(B\E)0,
-+ kBEG=\ENn, kCAN=\E[s, kCMD=\E[t, kCPY=\ENs, kCRT=\ENt,
-+ kDL=\ENv, kEXT=\ENw, kFND=\ENx, kHLP=\ENy, kHOM=\E[h,
-+ kLFT=\E[d, kNXT=\E[u, kOPT=\ENz, kPRV=\E[v, kRIT=\E[c,
-+ kbs=^H, kcan=\E[S, kcbt=\E[Z, kclo=\ENc, kclr=\ENa,
-+ kcmd=\E[G, kcpy=\E[g, kctab=\E[z, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[p, kend=\E[Y,
-+ kext=\E[y, kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EOA,
-+ kf13=\EOp, kf14=\EOq, kf15=\EOr, kf16=\EOs, kf17=\EOt,
-+ kf18=\EOu, kf19=\EOv, kf2=\EOQ, kf20=\EOw, kf21=\EOx,
-+ kf22=\EOy, kf23=\EOz, kf24=\EOa, kf25=\E[1~, kf26=\E[2~,
-+ kf27=\E[3~, kf28=\E[4~, kf29=\E[5~, kf3=\EOR, kf30=\E[6~,
-+ kf31=\E[7~, kf32=\E[8~, kf33=\E[9~, kf34=\E[10~,
-+ kf35=\E[11~, kf36=\E[12~, kf37=\E[17~, kf38=\E[18~,
-+ kf39=\E[19~, kf4=\EOS, kf40=\E[20~, kf41=\E[21~,
-+ kf42=\E[22~, kf43=\E[23~, kf44=\E[24~, kf45=\E[25~,
-+ kf46=\E[26~, kf47=\E[27~, kf48=\E[28~, kf5=\EOT, kf6=\EOU,
-+ kf7=\EOV, kf8=\EOW, kf9=\EOX, kfnd=\ENf, khlp=\ENh,
-+ khome=\E[H, khts=\ENb, kich1=\E[@, kil1=\E[`, kind=\E[a,
-+ kmov=\ENi, kmrk=\ENm, kmsg=\ENe, knp=\E[U, kopn=\ENo,
-+ kopt=\ENk, kpp=\E[V, kref=\ENl, kres=\ENp, krfr=\ENg,
-+ kri=\E[b, krpl=\ENr, krst=\ENj, ksav=\ENq, kslt=\E[T,
-+ ktbc=\ENd, kund=\ENu, ll=\E[99H, nel=\EE, op=\E[39;49m,
-+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\E[T,
-+ rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmso=\E[27m,
-+ rmul=\E[24m, rs1=\017\E[?7h\E[0;39;49m$<2>\E>\E[?1l,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-+ 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}%=%t3%e%p1%d%;m,
-+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;9%;m%?%p9%t\016%e\017%;,
-+ 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,
- #
--# Comparing with 0.51, vttest is much better (only a few problems with the
--# cursor position reports and wrapping).
-+qansi|QNX ansi with console writes,
-+ daisy, xhpa, use=qansi-g,
- #
--# PuTTY 0.51 (released 14 December 2000)
-+qansi-t|QNX ansi without console writes,
-+ crxm, use=qansi,
- #
--# 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,
--# it is intended to be VT102 plus selected features. By default, it sets $TERM
--# to xterm, which is incorrect, since several features are misimplemented:
-+qansi-m|QNX ansi with mouse,
-+ maddr#1,
-+ chr=\E[, cvr=\E], is1=\E[0t, mcub=\E[>1h, mcub1=\E[>7h,
-+ mcud=\E[>1h, mcud1=\E[>1l\E[>9h, mcuf=\E[>1h\E[>9l,
-+ mcuf1=\E[>7l, mcuu=\E[>6h, mcuu1=\E[>6l, rmicm=\E[>2l,
-+ smicm=\E[>2h, use=qansi,
- #
--# Alt+key always sends ESC+key, so 'km' capability is removed.
-+qansi-w|QNX ansi for windows,
-+ xvpa, use=qansi-m,
-+
-+#### SCO consoles
-+
-+# SCO console and SOS-Syscons console for 386bsd
-+# (scoansi: had unknown capabilities
-+# :Gc=N:Gd=K:Gh=M:Gl=L:Gu=J:Gv=\072:\
-+# :GC=E:GD=B:GH=D:GL=\64:GU=A:GV=\63:GR=C:
-+# :G1=?:G2=Z:G3=@:G4=Y:G5=;:G6=I:G7=H:G8=<:\
-+# :CW=\E[M:NU=\E[N:RF=\E[O:RC=\E[P:\
-+# :WL=\E[S:WR=\E[T:CL=\E[U:CR=\E[V:\
-+# I renamed GS/GE/HM/EN/PU/PD/RT and added klone+sgr-dumb, based
-+# on the <smacs>=\E[12m -- esr)
- #
--# Control responses, wrapping and tabs are buggy, failing a couple of
--# screens in vttest.
-+# klone+sgr-dumb is an error since the acsc does not match -TD
- #
--# xterm mouse support is not implemented (unrelease version may).
-+# In this description based on SCO's keyboard(HW) manpage list of default
-+# function key values:
-+# F13-F24 are shifted F1-F12
-+# F25-F36 are control F1-F12
-+# F37-F48 are shift+control F1-F12
- #
--# Several features such as backspace/delete are optional; this entry documents
--# the default behavior -TD
--
--putty|PuTTY terminal emulator,
-- am, bce, bw, ccc, hs, 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=^M,
-- 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,
-- dch=\E[%p1%dP, dch1=\E[P,
-- dispc=%?%p1%{8}%=%t\E%%G\342\227\230\E%%@%e%p1%{10}%=%t\E%%G\342\227\231\E%%@%e%p1%{12}%=%t\E%%G\342\231\0\E%%@%e%p1%{13}%=%t\E%%G\342\231\252\E%%@%e%p1%{14}%=%t\E%%G\342\231\253\E%%@%e%p1%{15}%=%t\E%%G\342\230\274\E%%@%e%p1%{27}%=%t\E%%G\342\206\220\E%%@%e%p1%{155}%=%t\E%%G\340\202\242\E%%@%e%p1%c%;,
-- dl=\E[%p1%dM, dl1=\E[M, dsl=\E]0;\007, ech=\E[%p1%dX,
-- ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
-- flash=\E[?5h\E[?5l, fsl=^G, home=\E[H, hpa=\E[%i%p1%dG,
-- ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- indn=\E[%p1%dS,
-- 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,
-- kb2=\E[G, kbs=\177, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~,
-- 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~,
-- khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
-- kspd=^Z, nel=^M^J, oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m,
-- ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l,
-- rmcup=\E[2J\E[?47l, rmir=\E[4l, rmpch=\E[10m,
-- rmso=\E[27m, rmul=\E[24m,
-- rs2=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l,
-- s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, sc=\E7,
-- setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h,
-- smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m,
-- tbc=\E[3g, tsl=\E]0;, vpa=\E[%i%p1%dd, use=vt102+enq,
--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,
--# palette is hardcoded...
--putty-256color|PuTTY 0.58 with xterm 256-colors,
-- initc@, use=xterm+256color, use=putty,
-+# hpa/vpa work in the console, but not in scoterm:
-+# hpa=\E[%p1%dG,
-+# vpa=\E[%p1%dd,
-+#
-+# SCO's terminfo uses
-+# kLFT=\E[d,
-+# kRIT=\E[c,
-+# which do not work (console or scoterm).
-+#
-+# Console documents only 3 attributes can be set with SGR (so we don't use sgr).
-+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\:\:;;<<==>>FFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXX`\204a0fxgqh2jYk?lZm@nEqDtCu4vAwBx3yszr{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,
-+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-+ cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[=0;12C, dch=\E[%p1%dP,
-+ dch1=\E[P, dispc=\E[=%p1%dg, dl=\E[%p1%dM, dl1=\E[M,
-+ ed=\E[m\E[J, el=\E[m\E[K, el1=\E[1K, home=\E[H, ht=^I,
-+ hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L,
-+ ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, kbeg=\E[E, kbs=^H,
-+ kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W,
-+ kf12=\E[X, kf13=\E[Y, kf15=\E[a, kf16=\E[b, kf17=\E[c,
-+ kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f, kf21=\E[g,
-+ kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k, kf26=\E[l,
-+ kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O, kf30=\E[p,
-+ kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t, kf35=\E[u,
-+ kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y, kf4=\E[P,
-+ kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\, 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, knp=\E[G, kpp=\E[I, op=\E[0;37;40m, rc=\E8,
-+ rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m,
-+ rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sc=\E7,
-+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0;10m,
-+ smacs=\E[12m, smam=\E[?7h, smso=\E[7m, smul=\E[4m,
-+scoansi-new|SCO Extended ANSI standard crt (5.0.6),
-+ km,
-+ civis=\E[=0c, cnorm=\E[=1c, csr=\E[%i%p1%d;%p2%dr,
-+ cvvis=\E[=2c, mgc=\E[=r, oc=\E[51m, op=\E[50m,
-+ rep=\E[%p1%d;%p2%db, rmm=\E[=11L,
-+ sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;12%e;10%;m,
-+ smgb=\E[=1;0m, smgbp=\E[=1;%i%p1%dm,
-+ smglp=\E[=2;%i%p1%dm, smgr=\E[=3;0m,
-+ smgrp=\E[=3;%i%p1%dm, smgt=\E[=0;0m,
-+ smgtp=\E[=0;%i%p1%dm, smm=\E[=10L,
-+ wind=\E[%i%p1%d;%p2%d;%i%p3%d;%p4%dr,
-+ use=scoansi-old,
-+# make this easy to change...
-+scoansi|SCO Extended ANSI standard crt,
-+ use=scoansi-old,
-
--# One of the keyboard selections is "VT100+".
--# pterm (the X11 port) uses shifted F1-F10 as F11-F20
--putty-vt100|VT100+ keyboard layout,
-- kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EO[, kf2=\EOQ,
-- kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW,
-- kf9=\EOX, use=putty,
-+#### SGI consoles
-
--# This entry is for Tera Term Pro version 2.3, for MS-Windows 95/NT written by
--# T. Teranishi dated Mar 10, 1998. It is a free software terminal emulator
--# (communication program) which supports:
-+# Sent by Stefan Stapelberg <stefan@rent-a-guru.de>, 24 Feb 1997, this is
-+# from SGI's terminfo database. SGI's entry shows F9-F12 with the codes
-+# for the application keypad mode. We have added iris-ansi-ap rather than
-+# change the original to keypad mode.
- #
--# - Serial port connections.
--# - TCP/IP (telnet) connections.
--# - VT100 emulation, and selected VT200/300 emulation.
--# - TEK4010 emulation.
--# - File transfer protocols (Kermit, XMODEM, ZMODEM, B-PLUS and
--# Quick-VAN).
--# - Scripts using the "Tera Term Language".
--# - Japanese and Russian character sets.
-+# (iris-ansi: added rmam/smam based on init string -- esr)
- #
--# The program does not come with terminfo or termcap entries. However, the
--# emulation (testing with vttest and ncurses) is reasonably close to vt100 (no
--# vt52 or doublesize character support; blinking is done with color). Besides
--# the HPA, VPA extensions it also implements CPL and CNL.
-+# This entry, and those derived from it, is used in xwsh (also known as
-+# winterm). Some capabilities that do not fit into the terminfo model
-+# include the shift- and control-functionkeys:
- #
--# All of the function keys can be remapped. This description shows the default
--# mapping, as installed. Both vt100 PF1-PF4 keys and quasi-vt220 F1-F4 keys
--# are supported. F13-F20 are obtained by shifting F3-F10. The editing keypad
--# is laid out like vt220, rather than the face codes on the PC keyboard, i.e,
--# kfnd Insert
--# kslt Delete
--# kich1 Home
--# kdch1 PageUp
--# kpp End
--# knp PageDown
-+# F1-F12 generate different codes when shift or control modifiers are used.
-+# For example:
-+# F1 \E[001q
-+# shift F1 \E[013q
-+# control-F1 \E[025q
- #
--# ANSI colors are implemented, but cannot be combined with video attributes
--# except for reverse.
-+# In application keypad mode, F9-F12 generate codes like vt100 PF1-PF4, i.e.,
-+# \EOP to \EOS. The shifted and control modifiers still do the same thing.
- #
--# No fonts are supplied with the program, so the acsc string is chosen to
--# correspond with the default Microsoft terminal font.
-+# The cursor keys also have different codes:
-+# control-up \E[162q
-+# control-down \E[165q
-+# control-left \E[159q
-+# control-right \E[168q
- #
--# Tera Term recognizes some xterm sequences, including those for setting and
--# retrieving the window title, and for setting the window size (i.e., using
--# "resize -s"), though it does not pass SIGWINCH to the application if the
--# user resizes the window with the mouse.
--teraterm2.3|Tera Term Pro,
-- km, xon@,
-- ncv#43, vt@,
-- 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\E[?5l$<200/>, hpa=\E[%i%p1%dG,
-- il=\E[%p1%dL, il1=\E[L, 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~, 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,
--
--# Version 4.59 has regular vt100 line-drawing (so it is no longer necessary
--# to choose a Windows OEM font).
-+# shift-up \E[161q
-+# shift-down \E[164q
-+# shift-left \E[158q
-+# shift-right \E[167q
- #
--# Testing with tack:
--# - it does not have xenl (suppress that)
--# - underline seems to work with color (modify ncv).
--# Testing with vttest:
--# - wrapping differs from vt100 (menu 1).
--# - it recognizes xterm's X10 and normal mouse tracking, but none of the
--# other flavors.
--# - it recognizes the dtterm window controls for reporting size in
--# characters and pixels.
--# - it passes SIGWINCH.
--teraterm4.59|Tera Term Pro,
-- bce, xenl@,
-- ncv#41,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- kmous=\E[M, use=teraterm2.3,
-+# control-tab \[072q
-+#
-+iris-ansi|iris-ansi-net|IRIS emulating 40 line ANSI terminal (almost VT100),
-+ am,
-+ cols#80, it#8, lines#40,
-+ bel=^G, bold=\E[1m, clear=\E[H\E[2J,
-+ cnorm=\E[9/y\E[12/y\E[=6l, cr=^M, cub=\E[%p1%dD,
-+ cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC,
-+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA,
-+ cuu1=\E[A, cvvis=\E[10/y\E[=1h\E[=2l\E[=6h,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-+ home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-+ is2=\E[?1l\E>\E[?7h\E[100g\E[0m\E7\E[r\E8, kDC=\E[P,
-+ kEND=\E[147q, kHOM=\E[143q, kLFT=\E[158q, kPRT=\E[210q,
-+ kRIT=\E[167q, kSPD=\E[218q, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177,
-+ kend=\E[146q, kent=^M, kf1=\E[001q, kf10=\E[010q,
-+ kf11=\E[011q, kf12=\E[012q, kf2=\E[002q, kf3=\E[003q,
-+ kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q,
-+ kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q,
-+ knp=\E[154q, kpp=\E[150q, kprt=\E[209q, krmir=\E[146q,
-+ kspd=\E[217q, nel=\EE, pfkey=\EP101;%p1%d.y%p2%s\E\\,
-+ rc=\E8, rev=\E[7m, ri=\EM, rmam=\E[?7l, rmso=\E[m, rmul=\E[m,
-+ sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[1;7m, smul=\E[4m,
-+ tbc=\E[3g,
-+iris-ansi-ap|IRIS ANSI in application-keypad mode,
-+ is2=\E[?1l\E=\E[?7h, kent=\EOM, kf10=\E[010q,
-+ kf11=\E[011q, kf12=\E[012q, kf9=\E[009q, use=iris-ansi,
-
--teraterm|Tera Term,
-- use=teraterm4.59,
-+# From the man-page, this is a quasi-vt100 emulator that runs on SGI's IRIX
-+# (T.Dickey 98/1/24)
-+iris-color|xwsh|IRIX ANSI with color,
-+ ncv#33,
-+ csr=\E[%i%p1%d;%p2%dr, dch=\E[%p1%dP, dim=\E[2m,
-+ ech=\E[%p1%dX, ich=\E[%p1%d@, rc=\E8, ritm=\E[23m,
-+ rmul=\E[24m, rs1=\Ec,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sitm=\E[3m, use=vt100+enq, use=klone+color,
-+ use=iris-ansi-ap,
-
--# Tested with WinNT 4.0, the telnet application assumes the screensize is
--# 25x80. This entry uses the 'Terminal' font, to get line-drawing characters.
-+#### OpenBSD consoles
- #
--# Other notes:
--# a) Fails tack's cup (cursor-addressing) test, though cup works well enough
--# for casual (occasional) use. Also fails several of the vttest screens,
--# 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,
-- 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\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-- ka1@, ka3@, kb2@, kc1@, kc3@, kent@, kf0@, kf1@, kf10@, kf2@, kf3@, kf4@,
-- kf5@, kf6@, kf7@, kf8@, kf9@, tbc@, use=vt102+enq, use=vt100,
--
--# Tested with Windows 2000, the telnet application runs in a console window,
--# also using 'Terminal' font.
-+# From: Alexei Malinin <Alexei.Malinin@mail.ru>; October, 2011.
- #
--# Other notes:
--# a) This version has no function keys or numeric keypad. Unlike the older
--# version, the numeric keypad is entirely ignored.
--# b) The program sets $TERM to "ansi", which of course is inaccurate.
--ms-vt100-color|vtnt|windows 2000 ansi (sic),
-+# The following terminal descriptions for the AMD/Intel PC console
-+# were prepared based on information contained in the OpenBSD-4.9
-+# termtypes.master and wscons(4) & vga(4) manuals (2010, November).
-+#
-+# Added bce based on testing with tack -TD
-+# Added several capabilities to pccon+base, reading wsemul_vt100_subr.c -TD
-+# Changed kbs to DEL and removed keys that duplicate stty settings -TD
-+#
-+pccon+keys|OpenBSD PC keyboard keys,
-+ kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\E[3~, kend=\E[8~, kent=^M, 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~, 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,
-+ sgr=\E[0%?%p1%p3%|%t;7%;m, sgr0=\E[m,
-+pccon+sgr+acs|sgr and default ASCII pseudographics for OpenBSD PC console,
-+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ enacs=\E)0$<5>, rmacs=\E(B$<5>,
-+ sgr=\E[0%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;$<5>,
-+ sgr0=\E[m\E(B$<5>, smacs=\E(0$<5>,
-+pccon+colors|ANSI colors for OpenBSD PC console,
- bce,
-- dch=\E[%p1%dP, ich=\E[%p1%d@, use=ecma+color,
-- use=ms-vt100,
-+ colors#8, pairs#64,
-+ op=\E[m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-+pccon+base|base capabilities for OpenBSD PC console,
-+ am, km, mc5i, msgr, npc, nxon, xenl, xon,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, 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[m, rs2=\Ec$<50>, smam=\E[?7h, smso=\E[7m,
-+ tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n,
-+pccon0-m|OpenBSD PC console without colors & with simple ASCII pseudographics,
-+ use=pccon+base, use=pccon+sgr+acs0, 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,
-+pccon|OpenBSD PC console,
-+ use=pccon-m, use=pccon+colors,
-
--# Based on comments from Federico Bianchi:
--#
--# vt100+ is basically a VT102-noSGR with ANSI.SYS colors and a different
--# scheme for PF keys.
-+#### NetBSD consoles
- #
--# and PuTTY wishlist:
-+# pcvt termcap database entries (corresponding to release 3.31)
-+# Author's last edit-date: [Fri Sep 15 20:29:10 1995]
- #
--# The modifiers are represented as the codes listed above, prefixed to
--# the normal sequences. If the modifier is pressed alone, its sequence
--# is transmitted twice in succession. If multiple modifiers apply,
--# they're transmitted in the order shift, control, alt.
--#
--# Shift \E^S
--# Alt \E^A,
--# Ctrl \E^C,
--ms-vt100+|vt100+|windows XP vt100+ (sic),
-- kdch1=\E-, kend=\Ek, kf1=\E1, kf10=\E0, kf11=\E!, kf12=\E@,
-- kf13=\E\023\E1, kf14=\E\023\E2, kf15=\E\023\E3,
-- kf16=\E\023\E4, kf17=\E\023\E5, kf18=\E\023\E6,
-- kf19=\E\023\E7, kf2=\E2, kf20=\E\023\E8, kf21=\E\023\E9,
-- kf22=\E\023\E0, kf23=\E\023\E!, kf24=\E\023\E@,
-- kf25=\E\003\E1, kf26=\E\003\E2, kf27=\E\003\E3,
-- kf28=\E\003\E4, kf29=\E\003\E5, kf3=\E3, kf30=\E\003\E6,
-- kf31=\E\003\E7, kf32=\E\003\E8, kf33=\E\003\E9,
-- kf34=\E\003\E0, kf35=\E\003\E!, kf36=\E\003\E@,
-- kf37=\E\001\E1, kf38=\E\001\E2, kf39=\E\001\E3, kf4=\E4,
-- kf40=\E\001\E4, kf41=\E\001\E5, kf42=\E\001\E6,
-- kf43=\E\001\E7, kf44=\E\001\E8, kf45=\E\001\E9,
-- kf46=\E\001\E0, kf47=\E\001\E!, kf48=\E\001\E@, kf5=\E5,
-- kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, khome=\Eh, kich1=\E+,
-- knp=\E/, kpp=\E?, use=ms-vt100-color,
-+# (For the terminfo master file, I translated these into terminfo syntax.
-+# Then I dropped all the pseudo-HP entries. we don't want and can't use
-+# the :Xs: flag. Then I split :is: into a size-independent <is1> and a
-+# size-dependent <is2>. Finally, I added <rmam>/<smam> -- esr)
-
--ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+,
-- use=ms-vt100+,
-+# NOTE: <ich1> has been taken out of this entry. for reference, it should
-+# be <ich1=\E[@>. For discussion, see ICH/ICH1 VERSUS RMIR/SMIR below.
-+# (esr: added <civis> and <cnorm> to resolve NetBSD Problem Report #4583)
-+pcvtXX|pcvt vt200 emulator (DEC VT220),
-+ am, km, mir, msgr, xenl,
-+ it#8, vt#3,
-+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
-+ clear=\E[H\E[J, cnorm=\E[?25h, cr=^M,
-+ 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,
-+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, 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, indn=\E[%p1%dS,
-+ is1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=\177,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-+ kdch1=\E[3~, kf1=\E[17~, kf2=\E[18~, kf3=\E[19~,
-+ kf4=\E[20~, kf5=\E[21~, kf6=\E[23~, kf7=\E[24~, kf8=\E[25~,
-+ khome=\E[1~, kich1=\E[2~, kll=\E[4~, knp=\E[6~, kpp=\E[5~,
-+ nel=\EE, rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100,
-+ ri=\EM, rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmir=\E[4l,
-+ rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
-+ 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,
-
--# expect-5.44.1.15/example/tkterm
--# a minimal subset of a vt100 (compare with "news-unk).
-+# 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,
-+ cols#80, lines#25,
-+ is2=\E[1;25r\E[25;1H, use=pcvtXX,
-+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,
-+ cols#80, lines#35,
-+ is2=\E[1;35r\E[35;1H, use=pcvtXX,
-+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,
-+ cols#80, lines#43,
-+ is2=\E[1;43r\E[43;1H, use=pcvtXX,
-+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,
-+ cols#132, lines#25,
-+ is2=\E[1;25r\E[25;1H, use=pcvtXX,
-+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,
-+ cols#132, lines#35,
-+ is2=\E[1;35r\E[35;1H, use=pcvtXX,
-+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,
-+ cols#132, lines#43,
-+ is2=\E[1;43r\E[43;1H, use=pcvtXX,
-+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,
-+ 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~,
-+ kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
-+ kf2=\EOQ, kf20=\E[34~, kf3=\EOR, kf4=\EOS, kf5=\E[17~,
-+ kf6=\E[18~, kf7=\E[19~, kf8=\E[20~, kf9=\E[21~, use=pcvtXX,
-+ use=ecma+color,
-+
-+# Terminfo entries to enable the use of the ncurses library in colour on a
-+# NetBSD-arm32 console (only tested on a RiscPC).
-+# Created by Dave Millen <dmill@globalnet.co.uk> 22.07.98
-+# modified codes for setf/setb to setaf/setab, then to klone+color, corrected
-+# typo in invis - TD
-+arm100|arm100-am|Arm(RiscPC) ncurses compatible (for 640x480),
-+ am, bce, msgr, xenl, xon,
-+ cols#80, it#8, lines#30,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-+ clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-+ cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>,
-+ enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J,
-+ invis=\E[8m$<2>, ka1=\E[q, ka3=\E[s, kb2=\E[r, kbs=^H,
-+ kc1=\E[p, kc3=\E[n, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kent=\E[M, kf0=\E[y, kf1=\E[P, kf10=\E[x,
-+ kf2=\E[Q, kf3=\E[R, kf4=\E[S, kf5=\E[t, kf6=\E[u, kf7=\E[v,
-+ kf8=\E[l, kf9=\E[w, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>,
-+ rmacs=^O, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>,
-+ rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-+ sc=\E7,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<2>,
-+ sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=,
-+ smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g, use=ecma+sgr,
-+ use=klone+color,
-+
-+arm100-w|arm100-wam|Arm(RiscPC) ncurses compatible (for 1024x768),
-+ cols#132, lines#50, use=arm100,
-+
-+# NetBSD/x68k console vt200 emulator. This port runs on a 68K machine
-+# manufactured by Sharp for the Japenese market.
-+# 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,
-+
-+# <tv@pobox.com>:
-+# Entry for the DNARD OpenFirmware console, close to ANSI but not quite.
- #
--# The missing "=" in smkx is not a typo (here), but an error in tkterm.
--tt|tkterm|Don Libes' tk text widget terminal emulator,
-- clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-- cup=\E[%p1%d;%p2%dH, cuu1=\E[A, ind=^J, kf1=\EOP, kf2=\EOQ,
-- kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW,
-- kf9=\EOX, rmkx=\E[?1l\E>, rmso=\E[m, smkx=\E[?1h\E,
-- smso=\E[7m,
-+# (still unfinished, but good enough so far.)
-+ofcons|DNARD OpenFirmware console,
-+ bw,
-+ cols#80, lines#30,
-+ bel=^G, blink=\2335m, bold=\2331m, clear=^L, cr=^M,
-+ cub=\233%p1%dD, cub1=\233D, cud=\233%p1%dB, cud1=\233B,
-+ cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH,
-+ cuu=\233%p1%dA, cuu1=\233A, dch=\233%p1%dP, dch1=\233P,
-+ dim=\2332m, dl=\233%p1%dM, dl1=\233M, ed=\233J, el=\233K,
-+ flash=^G, ht=^I, ich=\233%p1%d@, ich1=\233@, il=\233%p1%dL,
-+ il1=\233L, ind=^J, invis=\2338m, kbs=^H, kcub1=\233D,
-+ kcud1=\233B, kcuf1=\233C, kcuu1=\233A, kdch1=\233P,
-+ kf1=\2330P, kf10=\2330M, kf2=\2330Q, kf3=\2330W,
-+ kf4=\2330x, kf5=\2330t, kf6=\2330u, kf7=\2330q, kf8=\2330r,
-+ kf9=\2330p, knp=\233/, kpp=\233?, nel=^M^J, rev=\2337m,
-+ rmso=\2330m, rmul=\2330m,
-+ sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t2%;%?%p7%t8%;%?%p1%p3%|%t;7%;m,
-+ sgr0=\2330m, smso=\2337m, smul=\2334m,
-
--#### X terminal emulators
-+# NetBSD "wscons" emulator in vt220 mode.
-+# This entry is based on the NetBSD termcap entry, correcting the ncv value.
-+# The emulator renders underlined text in red. Colors are otherwise usable.
- #
--# You can add the following line to your .Xdefaults to change the terminal type
--# set by the xterms you start up to my-xterm:
-+# Testing the emulator and reading the source code (NetBSD 2.0), it appears
-+# that "vt220" is inaccurate. There are a few vt220-features, but most of the
-+# vt220 screens in vttest do not work with this emulator. For instance, it
-+# identifies itself (primary DA response) as a vt220 with selective erase. But
-+# the selective erase feature does not work. The secondary response is copied
-+# from Kermit's emulation of vt220, does not correspond to actual vt220. At
-+# the level of detail in a termcap, it is a passable emulator, since ECH does
-+# work. Don't use it on a VMS system -TD
-+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,
-+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=vt220,
-+
-+wsvt25m|NetBSD wscons in 25 line DEC VT220 mode with Meta,
-+ km, use=wsvt25,
-+
-+# NetBSD 6.x still uses wscons, with minor changes (2014/02/22) -TD
- #
--# *termName: my-xterm
-+# TERM is by default vt100 for the console, wsvt25 for other ttys.
-+# Initial testing set TERM=xterm, based on comments by developers, found too
-+# many differences to continue in that path. However, test-results may be
-+# useful to people curious about compatibility with xterm.
- #
--# System administrators can change the default entry for xterm instances
--# by adding a similar line to /usr/X11/lib/X11/app-defaults/XTerm. In either
--# case, xterm will detect and reject an invalid terminal type, falling back
--# to the default of xterm.
-+# Testing with tack:
-+# -----------------
-+# Failed: cbt, bel, flash, cvvis, smul (color), blink, invis
-+# There is color-bleeding in the color-pairs screen.
-+# Attributes do not work with color
-+# Failed: vpa/hpa
-+# Failed: kf1-kf4, kf13-kf48, khome, kend
-+# (effectively xterm-r6 for function-keys)
-+# None of the function or cursor key-modifiers are encoded.
-+# Console hangs in the smm/rmm test if TERM=xterm, does not show test
- #
-+# Testing with vttest:
-+# -------------------
-+# Identifies as vt220 with selective erase
-+# (however, selective erase refers to DECSCA, SPA)
-+# Does not implement vt52
-+# Uses spaces to simulate double-size characters
-+# Does not support 8-bit controls
-+# Does not support VT220 reports
-+# Does not support send/receive mode
-+# Supports ECH (like rxvt)
-+# Does not support DECSCA
-+# Does not support any of the ISO-6429 cursor-movement
-+# Does not support any of the ISO-6429 miscellaneous tests
-+# (SL/SR also leave unexpected char on screen too)
-+# Background does not change in menu 11.6.9 (SGR 22-27)
-+# None of the xterm special features tests work
-+netbsd6|NetBSD wscons in 25 line DEC VT100 mode,
-+ kbs=\177, use=wsvt25,
-
--# X10/6.6 11/7/86, minus alternate screen, plus (csr)
--# (xterm: ":MT:" changed to ":km:"; added <smam>/<rmam> based on init string;
--# removed (hs, eslok, tsl=\E[?E\E[?%i%dT, fsl=\E[?F, dsl=\E[?E)
--# as these seem not to work -- esr)
--x10term|vs100-x10|xterm terminal emulator (X10 window system),
-- OTbs, am, km, mir, msgr, xenl, xon,
-- cols#80, it#8, lines#65,
-- bold=\E[1m, clear=\E[H\E[2J, csr=\E[%i%p1%d;%p2%dr,
-- cub1=^H, cud1=^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, ed=\E[J, el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL,
-- il1=\E[L, ind=^J, is2=\E\E[m\E[?7h\E[?1;4l, kbs=^H,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP,
-- kf2=\EOQ, kf3=\EOR, kf4=\EOS, rev=\E[7m, ri=\EM, rmam=\E[?7l,
-- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-- sgr0=\E[m, smam=\E[?7h, smir=\E[4h, smkx=\E[?1h\E=,
-- smso=\E[7m, smul=\E[4m,
--# Compatible with the R5 xterm
--# (from the XFree86 3.2 distribution, <blink=@> removed)
--# added khome/kend, rmir/smir, rmul/smul, hts based on the R5 xterm code - TD
--# corrected typos in rs2 string - TD
--# added u6-u9 -TD
--xterm-r5|xterm R5 version,
-- OTbs, am, km, msgr, xenl,
-- cols#80, it#8, lines#24,
-- bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+# `rasterconsole' provided by 4.4BSD, NetBSD and OpenBSD on SPARC, and
-+# DECstation/pmax.
-+rcons|BSD rasterconsole,
-+ use=sun-il,
-+# Color version of above. Color currently only provided by NetBSD.
-+rcons-color|BSD rasterconsole with ANSI color,
-+ bce,
-+ colors#8, pairs#64,
-+ op=\E[m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=rcons,
-+
-+# mgterm -- MGL/MGL2, MobileGear Graphic Library
-+# for PocketBSD,PocketLinux,NetBSD/{hpcmips,mac68k}
-+# -- the setf/setb are probably incorrect, more likely setaf/setab -TD
-+# -- compare with cons25w
-+mgterm,
-+ OTbs, OTpt, am, bce, bw, eo, km, msgr, npc,
-+ colors#8, cols#80, it#8, lines#18, pairs#64,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-+ cr=^M, 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,
-- 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=^J, kbs=^H, 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, 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,
--# 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
--# (khome/kend do not actually work in X11R5 or X11R6, but many people use this
--# for compatibility with other emulators).
--xterm-r6|xterm-old|xterm X11R6 version,
-- OTbs, am, km, mir, msgr, xenl,
-- cols#80, it#8, lines#24,
-- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-- el=\E[K, enacs=\E)0, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL,
-- il1=\E[L, ind=^J,
-- is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, 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~, 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,
-- 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=vt100+enq,
--# This is the base xterm entry for the xterm supplied with XFree86 3.2 & up.
--# The name has been changed and some aliases have been removed.
--xterm-xf86-v32|xterm terminal emulator (XFree86 3.2 Window System),
-- OTbs, am, bce, km, mir, msgr, xenl,
-- 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=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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, enacs=\E(B\E)0,
-- flash=\E[?5h$<100/>\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=^J,
-- is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>,
-- kbeg=\EOE, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-- kcuu1=\EOA, kdch1=\177, kend=\EOF, 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~, khome=\EOH, 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, rmam=\E[?7l,
-- rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E[?1l\E>,
-- rmso=\E[27m, rmul=\E[24m, rs1=^O,
-- rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>, sc=\E7,
-- 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}%=%t3%e%p1%d%;m,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-- 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=vt100+enq,
-- use=ecma+color, 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.
--xterm-xf86-v33|xterm terminal emulator (XFree86 3.3 Window System),
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=xterm-xf86-v32,
--
--# This version was released in XFree86 3.3.3 (November 1998).
--# Besides providing printer support, it exploits a new feature that allows
--# xterm to use terminfo-based descriptions with the titeInhibit resource.
--# -- the distribution contained incorrect khome/kend values -TD
--xterm-xf86-v333|xterm terminal emulator (XFree86 3.3.3 Window System),
-- mc5i,
-- blink=\E[5m, ich1@, invis=\E[8m,
-- is2=\E[!p\E[?3;4l\E[4l\E>, kdch1=\E[3~, kfnd@, kslt@,
-- mc0=\E[i, mc4=\E[4i, mc5=\E[5i, rmcup=\E[?1047l\E[?1048l,
-- rs1=\Ec, rs2=\E[!p\E[?3;4l\E[4l\E>,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- smcup=\E[?1048h\E[?1047h, use=xterm-xf86-v33,
--
--# This version was released in XFree86 4.0.
--xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System),
-- npc,
-- kDC=\E[3;5~, kEND=\EO5F, kHOM=\EO5H, kIC=\E[2;5~,
-- kLFT=\EO5D, kNXT=\E[6;5~, kPRV=\E[5;5~, kRIT=\EO5C, ka1@,
-- ka3@, kb2=\EOE, kc1@, kc3@, kcbt=\E[Z, kdch1=\E[3~, kend=\EOF,
-- kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S,
-- kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~,
-- kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~,
-- kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P, kf26=\EO5Q,
-- kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~, 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=\EO6P,
-- kf38=\EO6Q, kf39=\EO6R, kf40=\EO6S, 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~, khome=\EOH, rmcup=\E[?1049l,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-- smcup=\E[?1049h, use=xterm-xf86-v333,
--
--# This version was released in XFree86 4.3.
--xterm-xf86-v43|xterm terminal emulator (XFree86 4.3 Window System),
-- kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~,
-- kLFT=\E[1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C,
-- kbeg@,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- use=xterm-xf86-v40,
--
--# 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, indn=\E[%p1%dS,
-- rin=\E[%p1%dT, use=xterm-xf86-v43,
--
--xterm-xfree86|xterm terminal emulator (XFree86),
-- use=xterm-xf86-v44,
--
--# This version reflects the current xterm features.
--xterm-new|modern xterm terminal emulator,
-- npc,
-- indn=\E[%p1%dS, kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H,
-- kIC=\E[2;2~, kNXT=\E[6;2~, kPRV=\E[5;2~, kb2=\EOE,
-- kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- kend=\EOF, kent=\EOM, khome=\EOH, kich1=\E[2~, kmous=\E[M,
-- knp=\E[6~, kpp=\E[5~, rin=\E[%p1%dT, use=xterm+pcfkeys,
-- use=xterm-basic,
--#
--# This fragment describes as much of XFree86 xterm's "pc-style" function
--# keys as will fit into terminfo's 60 function keys.
--# From ctlseqs.ms:
--# Code Modifiers
--# ---------------------------------
--# 2 Shift
--# 3 Alt
--# 4 Shift + Alt
--# 5 Control
--# 6 Shift + Control
--# 7 Alt + Control
--# 8 Shift + Alt + Control
--# ---------------------------------
--# The meta key may also be used as a modifier in this scheme, adding another
--# bit to the parameter.
--xterm+pcfkeys|fragment for PC-style fkeys,
-- use=xterm+app, use=xterm+pcf2, use=xterm+pcc2,
-- use=xterm+pce2,
--#
--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,
-+ dch=\E[%p1%dP, dch1=\E[P, dim=\E[30;1m, dl=\E[%p1%dM,
-+ dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
-+ home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich=\E[%p1%d@,
-+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-+ indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[F,
-+ kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf2=\E[N,
-+ kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T,
-+ kf9=\E[U, khome=\E[H, kich1=\E[L, knp=\E[G, kpp=\E[I,
-+ nel=\E[E, op=\E[x, rc=\E8, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT,
-+ rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7, setb=\E[4%p1%dm,
-+ setf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, vpa=\E[%i%p1%dd,
-
--xterm+app|fragment with cursor keys in application mode,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\EOF,
-- khome=\EOH,
--#
--# The "PC-style" modifier scheme was introduced in xterm patch #94 (1999/3/27)
--# and revised in patch #167 (2002/8/24). Some other terminal emulators copied
--# the earlier scheme, as noted in the "use=" clauses in this file.
-+#### FreeBSD console entries
- #
--# The original assignments from patch #94 for cursor-keys had some technical
--# issues:
-+# From: Andrey Chernov <ache@astral.msk.su> 29 Mar 1996
-+# Andrey Chernov maintains the FreeBSD termcap distributions.
- #
--# A parameter for a function-key to represent a modifier is just more
--# bits. But for a cursor-key it may change the behavior of the
--# application. For instance, emacs decodes the first parameter of a
--# cursor-key as a repeat count.
-+# Note: Users of FreeBSD 2.1.0 and older versions must either upgrade
-+# or comment out the :cb: capability in the console entry.
- #
--# A parameterized string should (really) not begin with SS3 (\EO).
--# Rather, CSI (\E[) should be used.
-+# Alexander Lukyanov reports:
-+# I have seen FreeBSD-2.1.5R... The old el1 bug changed, but it is still there.
-+# Now el1 clears not only to the line beginning, but also a large chunk
-+# of previous line. But there is another bug - ech does not work at all.
- #
--# For these reasons, the original assignments were deprecated. For
--# compatibility reasons, they are still available as a setting of xterm's
--# modifyCursorKeys resource. These fragments list the modified cursor-keys
--# that might apply to xterm+pcfkeys with different values of that resource.
--xterm+pcc3|fragment with modifyCursorKeys:3,
-- kLFT=\E[>1;2D, kRIT=\E[>1;2C, kind=\E[>1;2B,
-- kri=\E[>1;2A, kDN=\E[>1;2B, kDN3=\E[>1;3B, kDN4=\E[>1;4B,
-- kDN5=\E[>1;5B, kDN6=\E[>1;6B, kDN7=\E[>1;7B,
-- kLFT3=\E[>1;3D, kLFT4=\E[>1;4D, kLFT5=\E[>1;5D,
-- kLFT6=\E[>1;6D, kLFT7=\E[>1;7D, kRIT3=\E[>1;3C,
-- kRIT4=\E[>1;4C, kRIT5=\E[>1;5C, kRIT6=\E[>1;6C,
-- kRIT7=\E[>1;7C, kUP=\E[>1;2A, kUP3=\E[>1;3A,
-- kUP4=\E[>1;4A, kUP5=\E[>1;5A, kUP6=\E[>1;6A,
-- kUP7=\E[>1;7A,
--
--xterm+pcc2|fragment with modifyCursorKeys:2,
-- kLFT=\E[1;2D, kRIT=\E[1;2C, kind=\E[1;2B, kri=\E[1;2A,
-- kDN=\E[1;2B, kDN3=\E[1;3B, kDN4=\E[1;4B, kDN5=\E[1;5B,
-- kDN6=\E[1;6B, kDN7=\E[1;7B, kLFT3=\E[1;3D, kLFT4=\E[1;4D,
-- kLFT5=\E[1;5D, kLFT6=\E[1;6D, kLFT7=\E[1;7D,
-- kRIT3=\E[1;3C, kRIT4=\E[1;4C, kRIT5=\E[1;5C,
-- kRIT6=\E[1;6C, kRIT7=\E[1;7C, kUP=\E[1;2A, kUP3=\E[1;3A,
-- kUP4=\E[1;4A, kUP5=\E[1;5A, kUP6=\E[1;6A, kUP7=\E[1;7A,
--
--xterm+pcc1|fragment with modifyCursorKeys:1,
-- kLFT=\E[2D, kRIT=\E[2C, kind=\E[2B, kri=\E[2A, kDN=\E[2B,
-- kDN3=\E[3B, kDN4=\E[4B, kDN5=\E[5B, kDN6=\E[6B, kDN7=\E[7B,
-- kLFT3=\E[3D, kLFT4=\E[4D, kLFT5=\E[5D, kLFT6=\E[6D,
-- kLFT7=\E[7D, kRIT3=\E[3C, kRIT4=\E[4C, kRIT5=\E[5C,
-- kRIT6=\E[6C, kRIT7=\E[7C, kUP=\E[2A, kUP3=\E[3A,
-- kUP4=\E[4A, kUP5=\E[5A, kUP6=\E[6A, kUP7=\E[7A,
--
--xterm+pcc0|fragment with modifyCursorKeys:0,
-- kLFT=\EO2D, kRIT=\EO2C, kind=\EO2B, kri=\EO2A, kDN=\EO2B,
-- kDN3=\EO3B, kDN4=\EO4B, kDN5=\EO5B, kDN6=\EO6B, kDN7=\EO7B,
-- kLFT3=\EO3D, kLFT4=\EO4D, kLFT5=\EO5D, kLFT6=\EO6D,
-- kLFT7=\EO7D, kRIT3=\EO3C, kRIT4=\EO4C, kRIT5=\EO5C,
-- kRIT6=\EO6C, kRIT7=\EO7C, kUP=\EO2A, kUP3=\EO3A,
-- kUP4=\EO4A, kUP5=\EO5A, kUP6=\EO6A, kUP7=\EO7A,
-
-+# for syscons
-+# common entry without semigraphics
-+# Bug: The <op> capability resets attributes.
-+# Bug? The ech and el1 attributes appear to move the cursor in some cases; for
-+# instance el1 does if the cursor is moved to the right margin first. Removed
-+# by T.Dickey 97/5/3 (ech=\E[%p1%dX, el1=\E[1K)
- #
--# Here are corresponding fragments from xterm patch #216:
-+# Setting colors turns off reverse; we cannot guarantee order, so use ncv.
-+# Note that this disables standout with color.
- #
--xterm+pcf0|fragment with modifyFunctionKeys:0,
-- kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
-- kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S,
-- 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=\EO5P, kf26=\EO5Q,
-- kf27=\EO5R, kf28=\EO5S, 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=\EO6P, kf38=\EO6Q, kf39=\EO6R,
-- kf4=\EOS, kf40=\EO6S, 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=\EO3P,
-- kf5=\E[15~, kf50=\EO3Q, kf51=\EO3R, kf52=\EO3S,
-- 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=\EO4P,
-- kf62=\EO4Q, kf63=\EO4R, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-+# The emulator sends difference strings based on shift- and control-keys,
-+# like scoansi:
-+# 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),
-+ 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,
-+ cnorm=\E[=0C, cr=^M, 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[=1C, dch=\E[%p1%dP, dch1=\E[P, dim=\E[30;1m,
-+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
-+ home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich=\E[%p1%d@,
-+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-+ indn=\E[%p1%dS, kb2=\E[E, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177, kend=\E[F,
-+ kf1=\E[M, kf10=\E[V, kf11=\E[W, kf12=\E[X, kf13=\E[Y,
-+ kf14=\E[Z, kf15=\E[a, kf16=\E[b, kf17=\E[c, kf18=\E[d,
-+ kf19=\E[e, kf2=\E[N, kf20=\E[f, kf21=\E[g, kf22=\E[h,
-+ kf23=\E[i, kf24=\E[j, kf25=\E[k, kf26=\E[l, kf27=\E[m,
-+ kf28=\E[n, kf29=\E[o, kf3=\E[O, kf30=\E[p, kf31=\E[q,
-+ kf32=\E[r, kf33=\E[s, kf34=\E[t, kf35=\E[u, kf36=\E[v,
-+ kf37=\E[w, kf38=\E[x, kf39=\E[y, kf4=\E[P, kf40=\E[z,
-+ kf41=\E[@, kf42=\E[[, kf43=\E[\\, 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,
-+ knp=\E[G, kpp=\E[I, nel=\E[E, op=\E[x, rc=\E8, rev=\E[7m,
-+ ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, rs2=\E[x\E[m\Ec, sc=\E7,
-+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-+ 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,
-+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),
-+ kbs=\177, kdch1=\E[3~, use=cons25,
-+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),
-+ lines#30, use=cons25,
-+cons30-m|ansi80x30-mono|freebsd console (30-line mono ansi mode),
-+ lines#30, use=cons25-m,
-+cons43|ansi80x43|freebsd console (43-line ansi mode),
-+ lines#43, use=cons25,
-+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),
-+ lines#50, use=cons25,
-+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),
-+ lines#60, use=cons25,
-+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,
-+ 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),
-+ 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),
-+ lines#50, use=cons25r,
-+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),
-+ lines#60, use=cons25r,
-+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,
-+ 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),
-+ 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),
-+ lines#50, use=cons25l1,
-+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),
-+ lines#60, use=cons25l1,
-+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,
-+# which is intended to be xterm-compatible. See for example
-+# http://svnweb.freebsd.org/base/stable/8/sys/dev/syscons/
-+# in particular scterm-teken.c
- #
--xterm+pcf2|fragment with modifyFunctionKeys:2,
-- 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~,
-+# For FreeBSD 9 and 10:
-+# --------------------
-+# The /etc/ttys entries for console and other ttys are all configured to set
-+# TERM=xterm.
- #
--# Chunks from xterm #230:
--xterm+pce2|fragment with modifyCursorKeys:2,
-- kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~,
-- kNXT=\E[6;2~, kPRV=\E[5;2~, kich1=\E[2~, knp=\E[6~,
-- kpp=\E[5~, kDC3=\E[3;3~, kDC4=\E[3;4~, kDC5=\E[3;5~,
-- kDC6=\E[3;6~, kDC7=\E[3;7~, kEND3=\E[1;3F, kEND4=\E[1;4F,
-- kEND5=\E[1;5F, kEND6=\E[1;6F, kEND7=\E[1;7F,
-- kHOM3=\E[1;3H, kHOM4=\E[1;4H, kHOM5=\E[1;5H,
-- kHOM6=\E[1;6H, kHOM7=\E[1;7H, kIC3=\E[2;3~, kIC4=\E[2;4~,
-- kIC5=\E[2;5~, kIC6=\E[2;6~, kIC7=\E[2;7~, kNXT3=\E[6;3~,
-- kNXT4=\E[6;4~, kNXT5=\E[6;5~, kNXT6=\E[6;6~,
-- kNXT7=\E[6;7~, kPRV3=\E[5;3~, kPRV4=\E[5;4~,
-- kPRV5=\E[5;5~, kPRV6=\E[5;6~, kPRV7=\E[5;7~,
-- use=xterm+edit,
-+# Testing with tack:
-+# There is no VT100 line-drawing (uses +'s and -'s)
-+# Shifted f1-f12 give cons25 codes, rather than xterm function-keys
-+#
-+# Testing with vttest:
-+# Menu 2 diamonds don't work, blink ditto, light background ditto
-+# The terminal identifies itself as VT100 with AVO
-+# There is no VT52 support
-+# There is no doublesize character support
-+# The terminal supports ECH (like rxvt)
-+# The terminal does not support send/receive mode
-+# The terminal supports all of the ISO-6429 cursor-movement
-+# The terminal supports some of the ISO-6429 miscellaneous tests
-+# (SL/SR also leave unexpected char on screen too)
-+#
-+# Considering cons25 as a base, the line-drawing mostly works, but is missing
-+# the cells which happen to have ASCII control-character values:
-+# - ^X arrow pointing up
-+# . ^Y arrow pointing down
-+# i ^Y lantern
-+# ` ^D diamond
-+#
-+# Those are removed from this entry's acsc string to avoid confusion.
-+# The resulting description provides correct line-drawing and function-keys -TD
-+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=^M, 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,
-
--xterm+edit|fragment for 6-key editing-keypad,
-- kdch1=\E[3~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
-- use=xterm+pc+edit,
-+#### 386BSD and BSD/OS Consoles
-+#
-
--xterm+pc+edit|fragment for pc-style editing keypad,
-- kend=\E[4~, khome=\E[1~,
-+# 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,
-+ OTbs, am, bw, eo, xon,
-+ cols#80, lines#25,
-+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263,
-+ bold=\E[7m, clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-+ home=\E[H, ind=\E[S, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, khome=\E[Y, ri=\E[T, rmso=\E[1;0x\E[2;7x,
-+ rmul=\E[1;0x\E[2;7x, sgr0=\E[m\E[1;0x\E[2;7x,
-+ smso=\E[1;7x\E[2;0x, smul=\E[1;7x\E[2;0x,
-
--xterm+vt+edit|fragment for vt220-style editing keypad,
-- kfnd=\E[1~, kslt=\E[4~,
-+# description of BSD/386 console emulator in version 1.0 (supplied by BSDI)
-+oldpc3|oldibmpc3|old IBM PC BSD/386 Console,
-+ OTbs, km,
-+ lines#25,
-+ bel=^G, bold=\E[=15F, cr=^M, cud1=^J, dim=\E[=8F, dl1=\E[M,
-+ ht=^I, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L, kll=\E[F,
-+ knp=\E[G, kpp=\E[I, nel=^M^J, sgr0=\E[=R,
-
--#
--# 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
--# is shown here (because that is used in mrxvt and mlterm):
--xterm+r6f2|xterm with oldFunctionKeys and modifyFunctionKeys:2,
-- kf1=\E[11~, kf13=\E[11;2~, kf14=\E[12;2~, kf15=\E[13;2~,
-- kf16=\E[14;2~, kf2=\E[12~, kf25=\E[11;5~, kf26=\E[12;5~,
-- kf27=\E[13;5~, kf28=\E[14;5~, kf3=\E[13~, kf37=\E[11;6~,
-- kf38=\E[12;6~, kf39=\E[13;6~, kf4=\E[14~, kf40=\E[14;6~,
-- kf49=\E[11;3~, kf50=\E[12;3~, kf51=\E[13;3~,
-- kf52=\E[14;3~, kf61=\E[11;4~, kf62=\E[12;4~,
-- kf63=\E[13;4~, use=xterm+pcf2,
--#
--# This chunk is used for building the VT220/Sun/PC keyboard variants.
--xterm-basic|modern xterm terminal emulator - common,
-- OTbs, am, bce, km, mc5i, mir, msgr, xenl, AX,
-- 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=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+# Description of BSD/OS console emulator in version 1.1, 2.0, 2.1
-+# Note, the emulator supports many of the additional console features
-+# listed in the iBCS2 (e.g. character-set selection) though not all
-+# are described here. This entry really ought to be upgraded.
-+# Also note, the console will also work with fewer lines after doing
-+# "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,
-+ 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,
-+
-+bsdos-pc-nobold|BSD/OS PC console w/o bold,
-+ use=klone+color, use=bsdos-pc-m,
-+
-+bsdos-pc-m|bsdos-pc-mono|BSD/OS PC console mono,
-+ OTbs, am, eo, km, xon,
-+ cols#80, it#8, lines#25,
-+ bel=^G, clear=\Ec, cr=^M, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=^J, 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, 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=^J, invis=\E[8m, is2=\E[!p\E[?3;4l\E[4l\E>, kbs=^H,
-- kmous=\E[M, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, meml=\El,
-- memu=\Em, op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM,
-- rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l, rmir=\E[4l,
-- rmkx=\E[?1l\E>, rmm=\E[?1034l, 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}%=%t3%e%p1%d%;m,
-- setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
-- sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%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, smcup=\E[?1049h,
-- smir=\E[4h, smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m,
-- smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, use=vt100+enq,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kich1=\E[L,
-+ kll=\E[F, knp=\E[G, kpp=\E[I, nel=^M^J, rc=\E8, sc=\E7,
-+ sgr=\E[0;10%?%p1%t;7%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m%?%p5%t\E[=8F%;,
-+ use=klone+sgr8,
-
--# From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997
--# In retrospect, something like xterm-r6 was intended here -TD
--xterm-xi|xterm on XI Graphics Accelerated X under BSD/OS 3.1,
-- rmso=\E[m, rmul=\E[m, use=xterm-xf86-v33,
-+# Old names for BSD/OS PC console used in releases before 4.1.
-+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,
-+ use=bsdos-pc,
-
--# 16-colors is one of the variants of XFree86 3.3 xterm, updated for 4.0 (T.Dickey)
--# If configured to support 88- or 256-colors (which is fairly common in 2009),
--# 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}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
-- use=ibm+16color, use=xterm-new,
-+# BSD/OS on the SPARC
-+bsdos-sparc|Sun SPARC BSD/OS Console,
-+ use=sun,
-
--# 256-colors is a compile-time feature of XFree86 xterm beginning with
--# patch #111 (1999/7/10) -TD
--xterm+256color|xterm 256-color feature,
-- ccc,
-- colors#256, pairs#32767,
-- initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
-- 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,
-- setb@, setf@,
-+# BSD/OS on the PowerPC
-+bsdos-ppc|PowerPC BSD/OS Console,
-+ use=bsdos-pc,
-
--# 88-colors is a compile-time feature of XFree86 xterm beginning with
--# patch #115 (1999/9/18) -TD
-+
-+#### DEC VT52
-+# (<acsc>/<rmacs>/<smacs> capabilities aren't in DEC's official entry -- esr)
- #
--# Note that the escape sequences used are the same as for 256-colors - xterm
--# has a different table of default color resource values. If built for
--# 256-colors, it can still handle an 88-color palette by using the initc
--# capability.
-+# Actually (TD pointed this out at the time the acsc string was added):
-+# vt52 shouldn't define full acsc since most of the cells don't match.
-+# see vt100 manual page A-31. This is the list that does match:
-+# f degree
-+# g plus/minus
-+# h right-arrow
-+# k down-arrow
-+# m scan-1
-+# o scan-3
-+# q scan-5
-+# s scan-7
-+# The line-drawing happens to work in several terminal emulators, but should
-+# 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,
-+ OTbs,
-+ cols#80, it#8, lines#24,
-+ acsc=+h.k0affggolpnqprrss, bel=^G, clear=\EH\EJ, cr=^M,
-+ 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=^J, kbs=^H, kcub1=\ED, kcud1=\EB,
-+ kcuf1=\EC, kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF,
-+
-+#### DEC VT100 and compatibles
- #
--# At this time (2007/7/14), except for rxvt 2.7.x, none of the other terminals
--# which support the xterm+256color feature support the associated initc
--# capability. So it is cancelled in the entries which use this and/or the
--# xterm+256color block.
-+# DEC terminals from the vt100 forward are collected here. Older DEC terminals
-+# and micro consoles can be found in the `obsolete' section. More details on
-+# the relationship between the VT100 and ANSI X3.64/ISO 6429/ECMA-48 may be
-+# found near the end of this file.
- #
--# 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,
-- colors#88, pairs#7744, use=xterm+256color,
--
--# These variants of XFree86 3.9.16 xterm are built as a configure option.
--xterm-256color|xterm with 256 colors,
-- use=xterm+256color, use=xterm-new,
--xterm-88color|xterm with 88 colors,
-- use=xterm+88color, use=xterm-256color,
--
--# These two are used to demonstrate the any-event mouse support, i.e., by
--# using an extended name "XM" which tells ncurses to put the terminal into
--# a special mode when initializing the xterm mouse.
--xterm-1002|testing xterm-mouse,
-- XM=\E[?1002%?%p1%{1}%=%th%el%;, use=xterm-new,
--xterm-1003|testing xterm-mouse,
-- XM=\E[?1003%?%p1%{1}%=%th%el%;, use=xterm-new,
--
--# 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.
--# To use it, your decTerminalID resource must be set to 200 or above.
-+# Except where noted, these entries are DEC's official terminfos.
-+# 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.
- #
--# HTS \E H \210
--# RI \E M \215
--# SS3 \E O \217
--# CSI \E [ \233
-+# In October 1995 DEC sold its terminals business, including the VT and Dorio
-+# line and trademark, to SunRiver Data Systems. SunRiver has since changed
-+# its name to Boundless Technologies; see http://www.boundless.com.
- #
--xterm-8bit|xterm terminal emulator 8-bit controls (X Window System),
-- OTbs, am, bce, km, mc5i, mir, msgr, npc, xenl, AX,
-- colors#8, cols#80, it#8, lines#24, pairs#64,
-- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\2335m, bold=\2331m, cbt=\233Z,
-- civis=\233?25l, clear=\233H\2332J,
-- cnorm=\233?25l\233?25h, cr=^M, csr=\233%i%p1%d;%p2%dr,
-- cub=\233%p1%dD, cub1=^H, cud=\233%p1%dB, cud1=^J,
-- cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH,
-- cuu=\233%p1%dA, cuu1=\233A, cvvis=\233?12;25h,
-- dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M,
-- ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K,
-- flash=\233?5h$<100/>\233?5l, home=\233H,
-- hpa=\233%i%p1%dG, ht=^I, hts=\210, ich=\233%p1%d@,
-- il=\233%p1%dL, il1=\233L, ind=^J, invis=\2338m,
-- is2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8,
-- ka1=\217w, ka3=\217u, kb2=\217y, kbeg=\217E, kbs=^H,
-- kc1=\217q, kc3=\217s, kcbt=\233Z, kcub1=\217D, kcud1=\217B,
-- kcuf1=\217C, kcuu1=\217A, kdch1=\2333~, kend=\2334~,
-- kent=\217M, kf1=\23311~, kf10=\23321~, kf11=\23323~,
-- kf12=\23324~, kf13=\23325~, kf14=\23326~, kf15=\23328~,
-- kf16=\23329~, kf17=\23331~, kf18=\23332~, kf19=\23333~,
-- kf2=\23312~, kf20=\23334~, kf3=\23313~, kf4=\23314~,
-- kf5=\23315~, kf6=\23317~, kf7=\23318~, kf8=\23319~,
-- kf9=\23320~, khome=\2331~, kich1=\2332~, kmous=\233M,
-- knp=\2336~, kpp=\2335~, mc0=\233i, mc4=\2334i, mc5=\2335i,
-- meml=\El, memu=\Em, op=\23339;49m, rc=\E8, rev=\2337m,
-- ri=\215, rmacs=\E(B, rmam=\233?7l, rmcup=\233?1049l,
-- rmir=\2334l, rmkx=\233?1l\E>, rmso=\23327m, rmul=\23324m,
-- rs1=\Ec,
-- rs2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8,
-- sc=\E7, setab=\2334%p1%dm, setaf=\2333%p1%dm,
-- setb=\2334%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
-- setf=\2333%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
-- sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
-- sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h,
-- smcup=\233?1049h, smir=\2334h, smkx=\233?1h\E=,
-- smso=\2337m, smul=\2334m, tbc=\2333g, u6=\233[%i%d;%dR,
-- u7=\E[6n, u8=\233[?1;2c, u9=\E[c, vpa=\233%i%p1%dd,
--
--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,
--
--xterm-sco|xterm with SCO function keys,
-- kbeg=\E[E, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W,
-- kf12=\E[X, kf13=\E[Y, kf14=\E[Z, kf15=\E[a, kf16=\E[b,
-- kf17=\E[c, kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f,
-- kf21=\E[g, kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k,
-- kf26=\E[l, kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O,
-- kf30=\E[p, kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t,
-- kf35=\E[u, kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y,
-- kf4=\E[P, kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\,
-- 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,
-
--# 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
--# sunKeyboard resource to true:
--# + maps the editing keypad
--# + interprets control-function-key as a second array of keys, so a
--# 12-fkey keyboard can support vt220's 20-fkeys.
--# + maps numeric keypad "+" to ",".
--# + uses DEC-style control sequences for the application keypad.
-+# NOTE: Any VT100 emulation, whether in hardware or software, almost
-+# certainly includes what DEC called the `Level 1 editing extension' codes;
-+# only the very oldest VT100s lacked these and there probably aren't any of
-+# those left alive. To capture these, use one of the VT102 entries.
- #
--xterm-vt220|xterm emulating vt220,
-- 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,
--
--xterm-vt52|xterm emulating dec vt52,
-- cols#80, it#8, lines#24,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, clear=\EH\EJ, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC,
-- cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, ed=\EJ, el=\EK,
-- home=\EH, ht=^I, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB,
-- kcuf1=\EC, kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF,
--
--xterm-noapp|xterm with cursor keys in normal mode,
-- rmcup@, rmkx=\E>, smcup@, smkx=\E=, use=xterm+noapp,
-- use=xterm,
--
--xterm-24|vs100|xterms|xterm terminal emulator (X Window System),
-- lines#24, use=xterm-old,
--
--# This is xterm for ncurses.
--xterm|xterm terminal emulator (X Window System),
-- use=xterm-new,
--
--# This entry assumes that xterm's handling of VT100 SI/SO is disabled by
--# setting the vt100Graphics resource to false.
--xterm-utf8|xterm with no VT100 line-drawing in UTF-8 mode,
-- U8#1, use=xterm,
--
--# These entries allow access to the X titlebar and icon name as a status line.
--# Note that twm (and possibly window managers descended from it such as tvtwm,
--# ctwm, and vtwm) track windows by icon-name; thus, you don't want to mess
--# with it.
--xterm+sl|access X title line and icon name,
-- hs,
-- wsl#40,
-- dsl=\E]0;\007, fsl=^G, tsl=\E]0;, use=xterm,
--xterm+sl-twm|access X title line (pacify twm-descended window managers),
-- hs,
-- wsl#40,
-- dsl=\E]2;\007, fsl=^G, tsl=\E]2;, use=xterm,
--
-+# Note that the <xenl> glitch in vt100 is not quite the same as on the Concept,
-+# since the cursor is left in a different position while in the
-+# weird state (concept at beginning of next line, vt100 at end
-+# of this line) so all versions of vi before 3.7 don't handle
-+# <xenl> right on vt100. The correct way to handle <xenl> is when
-+# you output the char in column 80, immediately output CR LF
-+# and then assume you are in column 1 of the next line. If <xenl>
-+# is on, am should be on too.
- #
--# The following xterm variants don't depend on your base version
-+# I assume you have smooth scroll off or are at a slow enough baud
-+# rate that it doesn't matter (1200? or less). Also this assumes
-+# that you set auto-nl to "on", if you set it off use vt100-nam
-+# below.
- #
--# xterm with bold instead of underline
--xterm-bold|xterm terminal emulator (X11R6 Window System) standout w/bold,
-- smso=\E[7m, smul=\E[1m, use=xterm-old,
--# (kterm: this had extension capabilities ":KJ:TY=ascii:" -- esr)
--# (kterm should not invoke DEC Graphics as the alternate character set
--# -- Kenji Rikitake)
--# (proper setting of enacs, smacs, rmacs makes kterm to use DEC Graphics
--# -- MATSUMOTO Shoji)
--# kterm implements acsc via built-in table of X Drawable's
--kterm|kterm kanji terminal emulator (X window system),
-- eslok, hs, XT,
-- ncv@,
-- acsc=``aajjkkllmmnnooppqqrrssttuuvvwwxx~~,
-- csr=\E[%i%p1%d;%p2%dr, dsl=\E[?H, enacs=, fsl=\E[?F,
-- kmous=\E[M, rc=\E8, rmacs=\E(B, rmam=\E[?7l, sc=\E7,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;,
-- sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h,
-- tsl=\E[?E\E[?%i%p1%dT, use=xterm-r6, use=ecma+color,
--kterm-color|kterm-co|kterm with ANSI colors,
-- ncv@, use=kterm, use=ecma+color,
--# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
--xterm-nic|xterm with ich/ich1 suppressed for non-curses programs,
-- ich@, ich1@, use=xterm,
--# From: Mark Sheppard <kimble@mistral.co.uk>, 4 May 1996
--xterm1|xterm terminal emulator ignoring the alternate screen buffer,
-- rmcup@, smcup@, use=xterm,
--
--# This describes the capabilities of color_xterm, an xterm variant from
--# before ECMA-64 color support was folded into the main-line xterm release.
--# This entry is straight from color_xterm's maintainer.
--# From: Jacob Mandelson <jlm@ugcs.caltech.edu>, 09 Nov 1996
--# The README's with the distribution also say that it supports SGR 21, 24, 25
--# and 27, but they are not present in the terminfo or termcap.
--color_xterm|cx|cx100|color_xterm color terminal emulator for X,
-- OTbs, am, km, mir, msgr, xenl, XT,
-- cols#80, it#8, lines#65, ncv@,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-- el=\E[K, el1=\E[1K, enacs=\E(B\E)0, home=\E[H, ht=^I,
-- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- is1=\E[r\E[m\E[?7h\E[?4;6l\E[4l, kbs=^H, kcub1=\EOD,
-- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 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~, kich1=\E[2~,
-- kmous=\E[M, knp=\E[6~, kpp=\E[5~, rc=\E8, rev=\E[7m, ri=\EM,
-- rmacs=^O, rmam=\E[?7l, rmcup=\E>\E[?41;1r, rmir=\E[4l,
-- rmso=\E[27m, rmul=\E[24m,
-- rs1=\E(B\017\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E<,
-- sc=\E7,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[0m\017, smacs=^N, smam=\E[?7h,
-- smcup=\E[?1;41s\E[?1;41h\E=, smir=\E[4h, smso=\E[7m,
-- smul=\E[4m, use=ecma+color, use=vt220+keypad,
--
--# The 'nxterm' distributed with Redhat Linux 5.2 is a slight rehack of
--# xterm-sb_right-ansi-3d, which implements ANSI colors, but does not support
--# SGR 39 or 49. SGR 0 does reset colors (along with everything else). This
--# description is "compatible" with color_xterm, rxvt and XFree86 xterm, except
--# that each of those implements the home, end, delete keys differently.
-+# The padding requirements listed here are guesses. It is strongly
-+# recommended that xon/xoff be enabled, as this is assumed here.
- #
--# Redhat Linux 6.x distributes XFree86 xterm as "nxterm", which uses bce
--# colors; note that this is not compatible with the 5.2 version.
--# csw (2002-05-15): make xterm-color primary instead of nxterm, to
--# match XFree86's xterm.terminfo usage and prevent circular links
--xterm-color|nxterm|generic color xterm,
-- ncv@,
-- op=\E[m, use=xterm-r6, use=klone+color,
--
--# this describes the alpha-version of Gnome terminal shipped with Redhat 6.0
--gnome-rh62|Gnome terminal,
-- bce,
-- kdch1=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-- use=xterm-color,
--
--# GNOME Terminal 1.4.0.4 (Redhat 7.2)
--#
--# This implements a subset of vt102 with a random selection of features from
--# other terminals such as color and function-keys.
-+# The vt100 uses <rs2> and <rf> rather than <is2>/<tbc>/<hts> because the
-+# tab settings are in non-volatile memory and don't need to be
-+# reset upon login. Also setting the number of columns glitches
-+# the screen annoyingly. You can type "reset" to get them set.
- #
--# shift-f1 to shift-f10 are f11 to f20
-+# The VT100 series terminals have cursor ("arrows") keys which can operate
-+# in two different modes: Cursor Mode and Application Mode. Cursor Mode
-+# is the reset state, and is assumed to be the normal state. Application
-+# Mode is the "set" state. In Cursor Mode, the cursor keys transmit
-+# "Esc [ {code}" sequences, conforming to ANSI standards. In Application
-+# Mode, the cursor keys transmit "Esc O <code>" sequences. Application Mode
-+# was provided primarily as an aid to the porting of VT52 applications. It is
-+# assumed that the cursor keys are normally in Cursor Mode, and expected that
-+# applications such as vi will always transmit the <smkx> string. Therefore,
-+# the definitions for the cursor keys are made to match what the terminal
-+# transmits after the <smkx> string is transmitted. If the <smkx> string
-+# is a null string or is not defined, then cursor keys are assumed to be in
-+# "Cursor Mode", and the cursor keys definitions should match that assumption,
-+# else the application may fail. It is also expected that applications will
-+# always transmit the <rmkx> string to the terminal before they exit.
- #
--# NumLock changes the application keypad to approximate vt100 keypad, except
--# that there is no escape sequence matching comma (,).
-+# The VT100 series terminals have an auxiliary keypad, commonly referred to as
-+# the "Numeric Keypad", because it is a cluster of numeric and function keys.
-+# The Numeric Keypad which can operate in two different modes: Numeric Mode and
-+# Application Mode. Numeric Mode is the reset state, and is assumed to be
-+# the normal state. Application Mode is the "set" state. In Numeric Mode,
-+# the numeric and punctuation keys transmit ASCII 7-bit characters, and the
-+# Enter key transmits the same as the Return key (Note: the Return key
-+# can be configured to send either LF (\015) or CR LF). In Application Mode,
-+# all the keypad keys transmit "Esc O {code}" sequences. The PF1 - PF4 keys
-+# always send the same "Esc O {code}" sequences. It is assumed that the keypad
-+# is normally in Numeric Mode. If an application requires that the keypad be
-+# in Application Mode then it is expected that the user, or the application,
-+# will set the TERM environment variable to point to a terminfo entry which has
-+# defined the <smkx> string to include the codes that switch the keypad into
-+# Application Mode, and the terminfo entry will also define function key
-+# fields to match the Application Mode control codes. If the <smkx> string
-+# is a null string or is not defined, then the keypad is assumed to be in
-+# Numeric Mode. If the <smkx> string switches the keypad into Application
-+# Mode, it is expected that the <rmkx> string will contain the control codes
-+# necessary to reset the keypad to "Normal" mode, and it is also expected that
-+# applications which transmit the <smkx> string will also always transmit the
-+# <rmkx> string to the terminal before they exit.
- #
--# Other defects observed:
--# vt100 LNM mode is not implemented.
--# vt100 80/132 column mode is not implemented.
--# vt100 DECALN is not implemented.
--# vt100 DECSCNM mode is not implemented, so flash does not work.
--# vt100 TBC (tab reset) is not implemented.
--# xterm alternate screen controls do not restore cursor position properly
--# 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,
-- 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,
--
--# GNOME Terminal 2.0.1 (Redhat 8.0)
-+# Here's a diagram of the VT100 keypad keys with their bindings.
-+# The top line is the name of the key (some DEC keyboards have the keys
-+# labelled somewhat differently, like GOLD instead of PF1, but this is
-+# the most "official" name). The second line is the escape sequence it
-+# generates in Application Keypad mode (where "$" means the ESC
-+# character). The third line contains two items, first the mapping of
-+# the key in terminfo, and then in termcap.
-+# _______________________________________
-+# | PF1 | PF2 | PF3 | PF4 |
-+# | $OP | $OQ | $OR | $OS |
-+# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
-+# | 7 8 9 - |
-+# | $Ow | $Ox | $Oy | $Om |
-+# |_kf9__k9_|_kf10_k;_|_kf0__k0_|_________|
-+# | 4 | 5 | 6 | , |
-+# | $Ot | $Ou | $Ov | $Ol |
-+# |_kf5__k5_|_kf6__k6_|_kf7__k7_|_kf8__k8_|
-+# | 1 | 2 | 3 | |
-+# | $Oq | $Or | $Os | enter |
-+# |_ka1__K1_|_kb2__K2_|_ka3__K3_| $OM |
-+# | 0 | . | |
-+# | $Op | $On | |
-+# |___kc1_______K4____|_kc3__K5_|_kent_@8_|
- #
--# Documentation now claims it implements vt220 (which is demonstrably false).
--# However, it does implement ECH, which is a vt220 feature. And there are
--# workable vt100 LNM, DECALN, DECSNM modes, making it possible to display
--# more of its bugs using vttest.
-+# Note however, that the arrangement of the 5-key ka1-kc3 do not follow the
-+# 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,
-+ ka1=\EOq, ka3=\EOs, kb2=\EOr, kc1=\EOp, kc3=\EOn,
-+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,
-+ kf0=\EOy, kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl,
-+ kf9=\EOw, use=vt100+pfkeys,
- #
--# However, note that bce and msgr are broken in this release. Tabs (tbc and
--# hts) are broken as well. Sometimes flash (as in xterm-new) works.
-+# A better adaptation to modern keyboards such as the PC's, which have a dozen
-+# function keys and the keypad 2,4,6,8 keys are labeled with arrows keys, is to
-+# use the 5-key arrangement to model the arrow keys as suggested in the
-+# terminfo guidelines:
-+# _______________________________________
-+# | PF1 | PF2 | PF3 | PF4 |
-+# | $OP | $OQ | $OR | $OS |
-+# |_kf1__k1_|_kf2__k2_|_kf3__k3_|_kf4__k4_|
-+# | 7 8 9 - |
-+# | $Ow | $Ox | $Oy | $Om |
-+# |_ka1__K1_|_________|_ka3__K3_|_________|
-+# | 4 | 5 | 6 | , |
-+# | $Ot | $Ou | $Ov | $Ol |
-+# |_________|_kb2__K2_|_________|_________|
-+# | 1 | 2 | 3 | |
-+# | $Oq | $Or | $Os | enter |
-+# |_kc1__K4_|_________|_kc3__K5_| $OM |
-+# | 0 | . | |
-+# | $Op | $On | |
-+# |___________________|_________|_kent_@8_|
- #
--# kf1 and kf10 are not tested since they're assigned (hardcoded?) to menu
--# operations. Shift-tab generates a distinct sequence so it can be argued
--# that it implements kcbt.
--gnome-rh80|GNOME Terminal,
-- bce@, msgr@,
-- ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, kbs=\177,
-- kcbt=\E^I, op=\E[39;49m, use=gnome-rh72,
--
--# GNOME Terminal 2.2.1 (Redhat 9.0)
-+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,
- #
--# bce and msgr are repaired.
--gnome-rh90|GNOME Terminal,
-- bce, msgr,
-- hpa=\E[%i%p1%dG, kDC=\E[3;2~, kLFT=\EO2D, kRIT=\EO2C,
-- kb2=\E[E, kcbt=\E[Z, kend=\EOF, khome=\EOH, tbc=\E[3g,
-- vpa=\E[%i%p1%dd, use=xterm+pcf0, use=xterm+pcfkeys,
-- use=gnome-rh80,
--
--# GNOME Terminal 2.14.2 (Fedora Core 5)
--# Ed Catmur notes that gnome-terminal has recognized soft-reset since May 2002.
--gnome-fc5|GNOME Terminal,
-- rs1=\Ec,
-- rs2=\E7\E[r\E8\E[m\E[?7h\E[!p\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h,
-- use=ansi+enq, use=xterm+pcc0, use=gnome-rh90,
--
--# GNOME Terminal 2.18.1 (2007 snapshot)
-+vt100+enq|ncurses extension for vt100-style ENQ,
-+ u8=\E[?1;2c, use=ansi+enq,
-+vt102+enq|ncurses extension for vt102-style ENQ,
-+ u8=\E[?6c, use=ansi+enq,
- #
--# For any "recent" version of gnome-terminal, it is futile to attempt to
--# support modifiers on cursor- and keypad keys because the program usually
--# is hardcoded to set $TERM to "xterm", and on startup, it builds a subset
--# of the keys (which more/less correspond to the termcap values), and will
--# 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,
--gnome-2007|GNOME Terminal snapshot 2.18.1,
-- use=vte-2007,
--
--# GNOME Terminal 2.22.3 (2008 snapshot)
-+# And here, for those of you with orphaned VT100s lacking documentation, is
-+# a description of the soft switches invoked when you do `Set Up'.
- #
--# In vttest, it claims to be a vt220 with national replacement character-sets,
--# but aside from the identifier string, implements only a small fraction of
--# vt220's behavior, which will make it less usable on a VMS system (unclear
--# what the intent of the developer is, since the NRC feature exposed in vttest
--# by this change does not work).
--vte-2008|VTE in GNOME Terminal snapshot 2.22.3,
-- use=vte+pcfkeys, use=vte-2007,
--gnome-2008|GNOME Terminal snapshot 2.22.3,
-- use=vte-2008,
--
--# GNOME terminal may automatically use the contents of the "xterm" terminfo to
--# supply key information which is not built into the program. With 2.22.3,
--# this list is built into the program (which addresses the inadvertant use of
--# random terminfo data, though using a set of values which does not correspond
--# to any that xterm produces - still not solving the problem that GNOME
--# terminal hardcodes the $TERM variable as "xterm").
-+# Scroll 0-Jump Shifted 3 0-#
-+# | 1-Smooth | 1-British pound sign
-+# | Autorepeat 0-Off | Wrap Around 0-Off
-+# | | 1-On | | 1-On
-+# | | Screen 0-Dark Bkg | | New Line 0-Off
-+# | | | 1-Light Bkg | | | 1-On
-+# | | | Cursor 0-Underline | | | Interlace 0-Off
-+# | | | | 1-Block | | | | 1-On
-+# | | | | | | | |
-+# 1 1 0 1 1 1 1 1 0 1 0 0 0 0 1 0 <--Standard Settings
-+# | | | | | | | |
-+# | | | Auto XON/XOFF 0-Off | | | Power 0-60 Hz
-+# | | | 1-On | | | 1-50 Hz
-+# | | Ansi/VT52 0-VT52 | | Bits Per Char. 0-7 Bits
-+# | | 1-ANSI | | 1-8 Bits
-+# | Keyclick 0-Off | Parity 0-Off
-+# | 1-On | 1-On
-+# Margin Bell 0-Off Parity Sense 0-Odd
-+# 1-On 1-Even
- #
--# terminfo modifier code keys
--# kf13-kf24 shift 2 F1 to F12
--# kf25-kf36 control 5 F1 to F12
--# kf37-kf48 shift/control 6 F1 to F12
--# kf49-kf60 alt 3 F1 to F12
--# kf61-kf63 shift-alt 4 F1 to F3
-+# The following SET-UP modes are assumed for normal operation:
-+# ANSI_MODE AUTO_XON/XOFF_ON NEWLINE_OFF 80_COLUMNS
-+# WRAP_AROUND_ON JUMP_SCROLL_OFF
-+# Other SET-UP modes may be set for operator convenience or communication
-+# requirements; I recommend
-+# AUTOREPEAT_ON BLOCK_CURSOR MARGIN_BELL_OFF SHIFTED_3_#
-+# Unless you have a graphics add-on such as Digital Engineering's VT640
-+# (and even then, whenever it can be arranged!) you should set
-+# INTERLACE_OFF
- #
--# The parameters with \EO (SS3) are technically an error, since SS3 should have
--# no parameters. This appears to be rote copying based on xterm+pcc0.
--vte+pcfkeys|VTE's variation on xterm+pcfkeys,
-- kf1=\EOP, kf13=\EO1;2P, kf14=\EO1;2Q, kf15=\EO1;2R,
-- kf16=\EO1;2S, kf2=\EOQ, kf25=\EO1;5P, kf26=\EO1;5Q,
-- kf27=\EO1;5R, kf28=\EO1;5S, kf3=\EOR, kf37=\EO1;6P,
-- kf38=\EO1;6Q, kf39=\EO1;6R, kf4=\EOS, kf40=\EO1;6S,
-- kf49=\EO1;3P, kf50=\EO1;3Q, kf51=\EO1;3R, kf52=\EO1;3S,
-- kf61=\EO1;4P, kf62=\EO1;4Q, kf63=\EO1;4R,
-- use=xterm+pcfkeys,
--gnome+pcfkeys|VTE's variation on xterm+pcfkeys,
-- use=vte+pcfkeys,
--
--vte|VTE aka GNOME Terminal,
-- use=vte-2008,
--gnome|GNOME Terminal,
-- use=vte,
--
--# palette is hardcoded...
--vte-256color|VTE with xterm 256-colors,
-- initc@, use=xterm+256color, use=vte,
--gnome-256color|GNOME Terminal with xterm 256-colors,
-- use=vte-256color,
-+# (vt100: I added <rmam>/<smam> based on the init string, also <OTbs>. -- esr)
-+vt100|vt100-am|dec vt100 (w/advanced video),
-+ OTbs, am, mc5i, msgr, xenl, xon,
-+ cols#80, it#8, lines#24, vt#3,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-+ clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-+ cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>,
-+ enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, lf1=pf1,
-+ lf2=pf2, lf3=pf3, lf4=pf4, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
-+ rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l,
-+ rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>,
-+ sgr0=\E[m\017$<2>, smacs=^N, smam=\E[?7h, smkx=\E[?1h\E=,
-+ smso=\E[7m$<2>, smul=\E[4m$<2>, tbc=\E[3g,
-+ use=vt100+fnkeys,
-+vt100nam|vt100-nam|vt100 no automargins,
-+ am@, xenl@, use=vt100-am,
-+vt100-vb|dec vt100 (w/advanced video) & no beep,
-+ bel@, flash=\E[?5h\E[?5l, use=vt100,
-
--# XFCE Terminal 0.2.5.4beta2
--#
--# This is based on some of the same source code, e.g., the VTE library, as
--# gnome-terminal, but has fewer features, fails more screens in vttest.
--# Since most of the terminfo-related behavior is due to the VTE library,
--# the terminfo is the same as gnome-terminal.
--xfce|Xfce Terminal,
-- use=vte,
-+# Ordinary vt100 in 132 column ("wide") mode.
-+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),
-+ cols#132, lines#14, vt@,
-+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=vt100-nam,
-
--# Multi-Gnome-Terminal 1.6.2
--#
--# This does not use VTE, and does have different behavior (compare xfce and
--# gnome).
--mgt|Multi GNOME Terminal,
-- indn=\E[%p1%dS, rin=\E[%p1%dT, use=xterm-xf86-v333,
-+# vt100 with no advanced video.
-+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),
-+ cols#132, lines#14, use=vt100-nav,
-
--# This is kvt 0-18.7, shipped with Redhat 6.0 (though whether it supports bce
--# or not is debatable).
--kvt|KDE terminal,
-- bce, km@,
-- kdch1=\177, kend=\E[F, khome=\E[H, use=xterm-color,
-+# vt100 with one of the 24 lines used as a status line.
-+# We put the status line on the top.
-+vt100-s|vt100-s-top|vt100-top-s|vt100 for use with top sysline,
-+ eslok, hs,
-+ lines#23,
-+ clear=\E[2;1H\E[J$<50>, csr=\E[%i%i%p1%d;%p2%dr,
-+ cup=\E[%i%p1%{1}%+%d;%p2%dH$<5>, dsl=\E7\E[1;24r\E8,
-+ fsl=\E8, home=\E[2;1H, is2=\E7\E[2;24r\E8,
-+ tsl=\E7\E[1;%p1%dH\E[1K, use=vt100-am,
-
--# Konsole 1.0.1
--# (formerly known as kvt)
-+# Status line at bottom.
-+# Clearing the screen will clobber status line.
-+vt100-s-bot|vt100-bot-s|vt100 for use with bottom sysline,
-+ eslok, hs,
-+ lines#23,
-+ dsl=\E7\E[1;24r\E8, fsl=\E8, is2=\E[1;23r\E[23;1H,
-+ tsl=\E7\E[24;%p1%dH\E[1K, use=vt100-am,
-+
-+# 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,
-+ dch1=\E[P, dl1=\E[M, il1=\E[L, rmir=\E[4l, smir=\E[4h,
-+ use=vt100,
-+vt102-w|dec vt102 in wide mode,
-+ cols#132,
-+ rs3=\E[?3h, use=vt102,
-+
-+# Many brain-dead PC comm programs that pretend to be `vt100-compatible'
-+# fail to interpret the ^O and ^N escapes properly. Symptom: the <sgr0>
-+# string in the canonical vt100 entry above leaves the screen littered
-+# with little snowflake or star characters (IBM PC ROM character \017 = ^O)
-+# after highlight turnoffs. This entry should fix that, and even leave
-+# ACS support working, at the cost of making multiple-highlight changes
-+# slightly more expensive.
-+# From: Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995
-+vt102-nsgr|vt102 no sgr (use if you see snowflakes after highlight changes),
-+ sgr@, sgr0=\E[m, use=vt102,
-+
-+# VT125 Graphics CRT. Clear screen also erases graphics
-+# Some vt125's came configured with vt102 support.
-+vt125|vt125 graphics terminal,
-+ mir,
-+ clear=\E[H\E[2J\EPpS(E)\E\\$<50>, use=vt100,
-+
-+# 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,
-+ OTbs, am, xenl,
-+ cols#80, it#8, lines#24, vt#3,
-+ bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>,
-+ clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub1=^H, cud1=^J, cuf1=\E[C$<2/>,
-+ cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>,
-+ ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I,
-+ is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB,
-+ kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR,
-+ kf4=\EOS, nel=^M^J, rc=\E8, rev=\E[7m$<2/>, ri=\EM$<5/>,
-+ rmam=\E[?7h, rmkx=\E[?1l\E>, rmso=\E[m$<2/>,
-+ rmul=\E[m$<2/>,
-+ rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr0=\E[m$<2/>, smam=\E[?7h, smkx=\E[?1h\E=,
-+ smso=\E[7m$<2/>, smul=\E[4m$<2/>,
-+
-+# vt132 - like vt100 but slower and has ins/del line and such.
-+# I'm told that <smir>/<rmir> are backwards in the terminal from the
-+# manual and from the ANSI standard, this describes the actual
-+# terminal. I've never actually used a vt132 myself, so this
-+# is untested.
- #
--# This program hardcodes $TERM to 'xterm', which is not accurate. However, to
--# simplify this entry (and point out why konsole isn't xterm), we base this on
--# xterm-r6. The default keyboard appears to be 'linux'.
-+vt132|DEC vt132,
-+ xenl,
-+ dch1=\E[P$<7>, dl1=\E[M$<99>, il1=\E[L$<99>, ind=\n$<30>,
-+ ip=$<7>, rmir=\E[4h, smir=\E[4l, use=vt100,
-+
-+# This vt220 description maps F5--F9 to the second block of function keys
-+# at the top of the keyboard. The "DO" key is used as F10 to avoid conflict
-+# with the key marked (ESC) on the vt220. See vt220d for an alternate mapping.
-+# PF1--PF4 are used as F1--F4.
- #
--# Notes:
--# a) konsole implements several features from XFree86 xterm, though none of
--# that is documented - except of course in its source code - apparently
--# because its implementors are unaccustomed to reading documentation - as
--# evidenced by the sparse and poorly edited documentation distributed with
--# konsole. Some features such as the 1049 private mode are recognized but
--# incorrectly implemented as a duplicate of the 47 private mode.
--# b) even with the "vt100 (historical)" keyboard setting, the numeric keypad
--# sends PC-style escapes rather than vt100.
--# c) fails vttest menu 3 (Test of character sets) because it does not properly
--# parse some control sequences. Also fails vttest Primary Device Attributes
--# by sending a bogus code (in the source it says it's supposed to be a
--# vt220, which is doubly incorrect because it does not implement vt220
--# control sequences except for a few special cases). Treat it as a
--# mildly-broken vt102.
-+# added msgr -TD
-+vt220-old|vt200-old|DEC VT220 in vt100 emulation mode,
-+ OTbs, OTpt, am, mir, msgr, xenl, xon,
-+ cols#80, lines#24, vt#3,
-+ OTnl=^J,
-+ 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=^M,
-+ 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,
-+ 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,
-+
-+# 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
-+# designation to accommodate bug in pcvt -TD
- #
--# Update for konsole 1.3.2:
--# The 1049 private mode works (but see the other xterm screens in vttest).
--# Primary Device Attributes now returns the code for a vt100 with advanced
--# video option. Perhaps that's intended to be a "mildly-broken vt102".
-+# Here's a picture of the VT220 editing keypad:
-+# +--------+--------+--------+
-+# | Find | Insert | Remove |
-+# +--------+--------+--------+
-+# | Select | Prev | Next |
-+# +--------+--------+--------+
-+vt220|vt200|dec vt220,
-+ OTbs, am, mir, msgr, xenl, xon,
-+ cols#80, it#8, lines#24, vt#3,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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, enacs=\E)0,
-+ flash=\E[?5h$<200/>\E[?5l, home=\E[H, ht=^I, hts=\EH,
-+ ich=\E[%p1%d@, if=/usr/share/tabset/vt100,
-+ il=\E[%p1%dL, il1=\E[L, ind=\ED,
-+ is2=\E[?7h\E[>\E[?1l\E F\E[?4l, kbs=^H, 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~, 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,
-+ 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,
-+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,
-+ OTbs, am, mc5i, mir, msgr, xenl, xon,
-+ cols#80, it#8, lines#24, vt#3,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\2335m, bold=\2331m, clear=\233H\233J, cr=^M,
-+ csr=\233%i%p1%d;%p2%dr, cub=\233%p1%dD, cub1=^H,
-+ cud=\233%p1%dB, cud1=^J, cuf=\233%p1%dC, cuf1=\233C,
-+ cup=\233%i%p1%d;%p2%dH, cuu=\233%p1%dA, cuu1=\233A,
-+ dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M,
-+ ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K, enacs=\E)0,
-+ flash=\233?5h$<200/>\233?5l, home=\233H, ht=^I, hts=\EH,
-+ ich=\233%p1%d@, if=/usr/share/tabset/vt100,
-+ il=\233%p1%dL, il1=\233L, ind=\ED,
-+ is2=\233?7h\233>\233?1l\E F\233?4l, kbs=^H,
-+ kcub1=\233D, kcud1=\233B, kcuf1=\233C, kcuu1=\233A,
-+ kdch1=\2333~, kf1=\EOP, kf10=\23321~, kf11=\23323~,
-+ kf12=\23324~, kf13=\23325~, kf14=\23326~, kf17=\23331~,
-+ kf18=\23332~, kf19=\23333~, kf2=\EOQ, kf20=\23334~,
-+ kf3=\EOR, kf4=\EOS, kf6=\23317~, kf7=\23318~, kf8=\23319~,
-+ kf9=\23320~, kfnd=\2331~, khlp=\23328~, khome=\233H,
-+ kich1=\2332~, knp=\2336~, kpp=\2335~, krdo=\23329~,
-+ kslt=\2334~, lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, mc0=\233i,
-+ mc4=\2334i, mc5=\2335i, nel=\EE, rc=\E8, rev=\2337m, ri=\EM,
-+ rmacs=\E(B, rmam=\233?7l, rmir=\2334l, rmso=\23327m,
-+ rmul=\23324m, rs1=\233?3l, sc=\E7,
-+ 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,
-+
-+# vt220d:
-+# This vt220 description regards F6--F10 as the second block of function keys
-+# at the top of the keyboard. This mapping follows the description given
-+# in the VT220 Programmer Reference Manual and agrees with the labeling
-+# on some terminals that emulate the vt220. There is no support for an F5.
-+# See vt220 for an alternate mapping.
- #
--# Updated for konsole 1.6.4:
--# add konsole-solaris
-+vt220d|DEC VT220 in vt100 mode with DEC function key labeling,
-+ 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@, kf6=\E[17~,
-+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, use=vt220-old,
-+
-+vt220-nam|v200-nam|VT220 in vt100 mode with no auto margins,
-+ am@,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8h, use=vt220,
-+
-+# vt220 termcap written Tue Oct 25 20:41:10 1988 by Alex Latzko
-+# (not an official DEC entry!)
-+# The problem with real vt220 terminals is they don't send escapes when in
-+# in vt220 mode. This can be gotten around two ways. 1> don't send
-+# escapes or 2> put the vt220 into vt100 mode and use all the nifty
-+# features of vt100 advanced video which it then has.
- #
--# Updated for konsole 1.6.6:
--# add control-key modifiers for function-keys, etc.
-+# This entry takes the view of putting a vt220 into vt100 mode so
-+# you can use the escape key in emacs and everything else which needs it.
- #
--# vttest menu 1 shows that both konsole and gnome terminal do wrapping
--# different from xterm (and vt100's). They have the same behavior in this
--# detail, but it is unclear which copies the other.
--konsole-base|KDE console window,
-- bce, km@, npc, XT,
-- ncv@,
-- bel@, blink=\E[5m, civis=\E[?25l, cnorm=\E[?25h,
-- ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l,
-- hpa=\E[%i%p1%dG, indn=\E[%p1%dS, kbs=\177, kdch1@,
-- 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@, rin=\E[%p1%dT, rmam=\E[?7l,
-- rmso=\E[27m, rmul=\E[24m,
-- 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%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[0m\017, smam=\E[?7h, vpa=\E[%i%p1%dd,
-- use=ecma+color, use=xterm-r6,
--konsole-linux|KDE console window with linux keyboard,
-- kdch1=\E[3~, 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~, kf8=\E[19~, kf9=\E[20~,
-- use=konsole-base,
--konsole-solaris|KDE console window with Solaris keyboard,
-- kbs=^H, kend=\E[4~, khome=\E[1~, use=konsole-vt100,
--# KDE's "XFree86 3.x.x" keyboard is based on reading the xterm terminfo rather
--# than testing the code.
--konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm,
-- kend=\E[4~, khome=\E[1~, use=konsole-vt100,
--# The value for kbs reflects local customization rather than the settings used
--# for XFree86 xterm.
--konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm,
-- kend=\EOF, khome=\EOH, use=konsole+pcfkeys,
-- use=konsole-vt100,
--# Konsole does not implement shifted cursor-keys.
--konsole+pcfkeys|konsole subset of xterm+pcfkeys,
-- kLFT@, kRIT@, kcbt=\E[Z, kind@, kri@, kDN@, kUP@, use=xterm+pcc2,
-- use=xterm+pcf0,
--# KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but
--# it is still useful for deriving the other entries.
--konsole-vt100|KDE console window with vt100 (sic) keyboard,
-- kbs=\177, kdch1=\E[3~, kend=\E[F, kf1=\E[11~, kf10=\E[21~,
-- kf11=\E[23~, kf12=\E[24~, kf13@, kf14@, kf15@, kf16@, kf17@,
-- kf18@, kf19@, kf2=\E[12~, kf20@, kf3=\E[13~, kf4=\E[14~,
-- kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-- khome=\E[H, use=konsole-base,
--konsole-vt420pc|KDE console window with vt420 pc keyboard,
-- kbs=^H, kdch1=\177, use=konsole-vt100,
--konsole-16color|klone of xterm-16color,
-- ncv#32, use=ibm+16color, use=konsole,
--# make a default entry for konsole
--konsole|KDE console window,
-- use=konsole-xf4x,
-+# You probably don't want to use this on a VMS machine since VMS will think
-+# it has a vt220 and will get fouled up coming out of emacs
-+#
-+# 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,
-+ am, msgr,
-+ cols#80,
-+ bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub1=^H, cud1=^J, 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, il1=\E[L, ind=\ED,
-+ is2=\E[61"p\E[H\E[?3l\E[?4l\E[?1h\E[?5l\E[?6l\E[?7h\E[?8h\E[?25h\E>\E[m,
-+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=^M\ED, rc=\E8,
-+ rf=/usr/share/tabset/vt100, ri=\EM, rmdc=, rmir=\E[4l,
-+ 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,
-
--# palette is hardcoded...
--konsole-256color|KDE console window with xterm 256-colors,
-- initc@, use=xterm+256color, use=konsole,
-+# This was DEC's vt320. Use the purpose-built one below instead
-+#vt320|DEC VT320 in vt100 emulation mode,
-+# use=vt220,
-
--# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD
--#
--# It is nominally a vt102 emulator, with features borrowed from rxvt and
--# xterm.
--#
--# The function keys are numbered based on shift/control/alt modifiers, except
--# that the control-modifier itself is used to spawn a new copy of mlterm (the
--# "-P" option). So control/F1 to control/F12 may not be usable, depending on
--# how it is configured.
--#
--# kf1 to kf12 \E[11~ to \E[24~
--# shift kf1 to kf12 \E[11;2~ to \E[24;2~
--# alt kf1 to kf12 \E[11;3~ to \E[24;3~
--# shift/alt kf1 to kf12 \E[11;4~ to \E[24;4~
--# control kf1 to kf12 \E[11;5~ to \E[24;5~ (maybe)
--# control/shift kf1 to kf12 \E[11;6~ to \E[24;6~
--# control/alt kf1 to kf12 \E[11;7~ to \E[24;7~
--# control/shift/alt kf1 to kf12 \E[11;8~ to \E[24;8~
-+# Use v320n for SCO's LYRIX. Otherwise, use Adam Thompson's vt320-nam.
- #
--mlterm|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,
-+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,
-+
-+# These entries are not DEC's official ones, they were purpose-built for the
-+# VT320. Here are the designer's notes:
-+# <kel> is end on a PC kbd. Actually 'select' on a VT. Mapped to
-+# 'Erase to End of Field'... since nothing seems to use 'end' anyways...
-+# khome is Home on a PC kbd. Actually 'FIND' on a VT.
-+# Things that use <knxt> usually use tab anyways... and things that don't use
-+# tab usually use <knxt> instead...
-+# kprv is same as tab - Backtab is useless...
-+# I left out <sgr> because of its RIDICULOUS complexity,
-+# and the resulting fact that it causes the termcap translation of the entry
-+# 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,
-+ 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=^M,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=^J, 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, enacs=,
-- 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=^J, indn=\E[%p1%dS,
-- is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>,
-- kbs=\177, 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,
-- rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l,
-- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
-- 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\E(B%;,
-- sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h,
-- 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=mlterm+pcfkeys, 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
--# (when available), it could use the extended names introduced for xterm.
--mlterm+pcfkeys|fragment for PC-style fkeys,
-- kLFT=\EO1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\EO1;2C,
-- kDN=\EO1;2B, kDN3=\EO1;3B, kDN4=\EO1;4B, kDN5=\EO1;5B,
-- kDN6=\EO1;6B, kDN7=\EO1;7B, kIC5=\E[2;5~, kIC6=\E[2;6~,
-- kLFT3=\EO1;3D, kLFT4=\EO1;4D, kLFT5=\EO1;5D,
-- kLFT6=\EO1;6D, kLFT7=\EO1;7D, kNXT5=\E[6;5~,
-- kNXT6=\E[6;6~, kPRV5=\E[5;5~, kPRV6=\E[5;6~,
-- kRIT3=\EO1;3C, kRIT4=\EO1;4C, kRIT5=\EO1;5C,
-- kRIT6=\EO1;6C, kRIT7=\EO1;7C, kUP=\EO1;2A, kUP3=\EO1;3A,
-- kUP4=\EO1;4A, kUP5=\EO1;5A, kUP6=\EO1;6A, kUP7=\EO1;7A,
-+ 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,
-+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H,
-+ kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-+ kdch1=\E[3~, kel=\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~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
-+ kf9=\E[20~, khome=\E[1~, kich1=\E[2~, knp=\E[6~, knxt=^I,
-+ kpp=\E[5~, kprv=\E[Z, kslt=\E[4~, nel=\EE, rc=\E8, rev=\E[7m,
-+ rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B,
-+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m,
-+ rmul=\E[m,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r\E[24;1H,
-+ 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, 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,
-+ 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,
-+ 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,
-+ 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,
-
--mlterm-256color|mlterm 3.0 with xterm 256-colors,
-- use=xterm+256color, use=rxvt,
-+# VT330 and VT340 -- These are ReGIS and SIXEL graphics terminals
-+# which are pretty much a superset of the VT320. They have the
-+# 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
-+# support VT131 and ANSI block mode, but as with much of these things,
-+# termcap/terminfo doesn't deal with these features.
-+#
-+# Note that this entry is are 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
-+# arrow keys. Emacs v19 is smarter and mines its keys directly out of
-+# your termcap or terminfo entry,
-+#
-+# 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,
-+ 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=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ 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\E[?5l$<200/>, 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 F\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,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
-+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2,
-+ lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m,
-+ rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B,
-+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, 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, 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,
-
--# From: Thomas Dickey <dickey@clark.net> 04 Oct 1997
--# Updated: Oezguer Kesim <kesim@math.fu-berlin.de> 02 Nov 1997
--# Notes:
--# rxvt 2.21b uses
--# smacs=\E(B\E)U^N, rmacs=\E(B\E)0^O,
--# but some applications don't work with that.
--# It also has an AIX extension
--# box2=lqkxjmwuvtn,
--# and
--# ech=\E[%p1%dX,
--# but the latter does not work correctly.
-+# 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).
- #
--# The distributed terminfo says it implements hpa and vpa, but they are not
--# implemented correctly, using relative rather than absolute positioning.
-+# VT400/420 -- This terminal is a superset of the vt320. It adds the multiple
-+# text pages and long text pages with selectable length of the vt340, along
-+# with left and right margins, rectangular area text copy, fill, and erase
-+# operations, selected region character attribute change operations,
-+# page memory and rectangle checksums, insert/delete column, reception
-+# macros, and other features too numerous to remember right now. TERMCAP
-+# can only take advantage of a few of these added features.
- #
--# rxvt is normally configured to look for "xterm" or "xterm-color" as $TERM.
--# Since rxvt is not really compatible with xterm, it should be configured as
--# "rxvt" or "rxvt-color".
-+# Note that this entry is are 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
-+# arrow keys. Emacs v19 is smarter and mines its keys directly out of
-+# your termcap entry,
- #
--# removed dch/dch1 because they are inconsistent with bce/ech -TD
--# remove km as per tack test -TD
--rxvt-basic|rxvt terminal base (X Window System),
-- OTbs, am, bce, eo, mir, msgr, xenl, xon, XT,
-- cols#80, it#8, lines#24,
-+# 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,
-+ 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=^M,
-+ blink=\E[5m, bold=\E[1m, civis=\E[?25l,
-+ clear=\E[H\E[J$<10/>, cnorm=\E[?25h, cr=^M,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-- enacs=\E(B\E)0, flash=\E[?5h\E[?5l, home=\E[H, ht=^I,
-- hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L,
-- ind=^J, 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=^H,
-- kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
-- rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E>, 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,
-- s0ds=\E(B, s1ds=\E(0, sc=\E7,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%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,
--# Key Codes from rxvt reference:
--#
--# Note: Shift + F1-F10 generates F11-F20
--#
--# For the keypad, use Shift to temporarily override Application-Keypad
--# setting use Num_Lock to toggle Application-Keypad setting if Num_Lock
--# is off, escape sequences toggle Application-Keypad setting.
--# Also note that values of Home, End, Delete may have been compiled
--# differently on your system.
--#
--# Normal Shift Control Ctrl+Shift
--# Tab ^I ESC [ Z ^I ESC [ Z
--# BackSpace ^H ^? ^? ^?
--# Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @
--# Insert ESC [ 2 ~ paste ESC [ 2 ^ ESC [ 2 @
--# Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
--# Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @
--# Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @
--# Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @
--# Home ESC [ 7 ~ ESC [ 7 $ ESC [ 7 ^ ESC [ 7 @
--# End ESC [ 8 ~ ESC [ 8 $ ESC [ 8 ^ ESC [ 8 @
--# Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
--# F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^
--# F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^
--# F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^
--# F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^
--# F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^
--# F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^
--# F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^
--# F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^
--# F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^
--# F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^
--# F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @
--# F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @
--# F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @
--# F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @
--# F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @
--# F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @
--# F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @
--# F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @
--# F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @
--# F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @
--#
--# Application
--# Up ESC [ A ESC [ a ESC O a ESC O A
--# Down ESC [ B ESC [ b ESC O b ESC O B
--# Right ESC [ C ESC [ c ESC O c ESC O C
--# Left ESC [ D ESC [ d ESC O d ESC O D
--# KP_Enter ^M ESC O M
--# KP_F1 ESC O P ESC O P
--# KP_F2 ESC O Q ESC O Q
--# KP_F3 ESC O R ESC O R
--# KP_F4 ESC O S ESC O S
--# XK_KP_Multiply * ESC O j
--# XK_KP_Add + ESC O k
--# XK_KP_Separator , ESC O l
--# XK_KP_Subtract - ESC O m
--# XK_KP_Decimal . ESC O n
--# XK_KP_Divide / ESC O o
--# XK_KP_0 0 ESC O p
--# XK_KP_1 1 ESC O q
--# XK_KP_2 2 ESC O r
--# XK_KP_3 3 ESC O s
--# XK_KP_4 4 ESC O t
--# XK_KP_5 5 ESC O u
--# XK_KP_6 6 ESC O v
--# XK_KP_7 7 ESC O w
--# XK_KP_8 8 ESC O x
--# XK_KP_9 9 ESC O y
-+ 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$<10/>,
-+ el=\E[K$<4/>, flash=\E[?5h\E[?5l$<200/>, fsl=\E[$},
-+ home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
-+ il=\E[%p1%dL, il1=\E[L, ind=\ED,
-+ is2=\E<\E F\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,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
-+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2,
-+ lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m,
-+ rf=/usr/share/tabset/vt300, ri=\EM, rmacs=\E(B,
-+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
-+ rmul=\E[24m, rs1=\E<\E[?3l\E[!p\E[?7h, 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, 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,
-+
-+# (vt420: I removed <kf0>, it collided with <kf10>. I also restored
-+# a missing <sc> -- esr)
-+# add msgr and other capabilities from vt220 -TD
-+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=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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>,
-+ 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,
-+
-+# 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
-+# straightforward (keys 1-5 are not defined on real terminals, though some
-+# emulators define these):
- #
--# The source-code for rxvt actually defines mappings for F21-F35, using
--# "ESC [ 35 ~" to "ESC [ 49 ~". Keyboards with more than 12 function keys
--# are rare, so this entry uses the shift- and control-modifiers as in
--# xterm+pcfkeys to define keys past F12.
-+# if (key < 16) then value = key;
-+# else if (key < 21) then value = key + 1;
-+# else if (key < 25) then value = key + 2;
-+# else if (key < 27) then value = key + 3;
-+# else if (key < 30) then value = key + 4;
-+# else value = key + 5;
- #
--# kIC is normally not used, since rxvt performs a paste for that (shifted
--# insert), unless private mode 35 is set.
-+# The string must be the hexadecimal equivalent, e.g., "5052494E" for "PRINT".
-+# There's no provision in terminfo for emitting a string in this format, so the
-+# application has to know it.
- #
--# kDN, kDN5, kDN6, etc are extensions based on the names from xterm+pcfkeys -TD
--# Removed kDN6, etc (control+shift) since rxvt does not implement this -TD
--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~,
-+vt420pc|DEC VT420 w/PC keyboard,
-+ kdch1=\177, kend=\E[4~, kf1=\E[11~, kf10=\E[21~,
-+ kf11=\E[23~, kf12=\E[24~, kf13=\E[11;2~, kf14=\E[12;2~,
-+ kf15=\E[13;2~, kf16=\E[14;2~, kf17=\E[15;2~,
-+ kf18=\E[17;2~, kf19=\E[18;2~, kf2=\E[12~, kf20=\E[19;2~,
-+ kf21=\E[20;2~, kf22=\E[21;2~, kf23=\E[23;2~,
-+ kf24=\E[24;2~, kf25=\E[23~, kf26=\E[24~, kf27=\E[25~,
-+ kf28=\E[26~, kf29=\E[28~, kf3=\E[13~, kf30=\E[29~,
-+ kf31=\E[31~, kf32=\E[32~, kf33=\E[33~, kf34=\E[34~,
-+ kf35=\E[35~, kf36=\E[36~, kf37=\E[23;2~, kf38=\E[24;2~,
-+ kf39=\E[25;2~, kf4=\E[14~, kf40=\E[26;2~, kf41=\E[28;2~,
-+ kf42=\E[29;2~, 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\:,
-+ 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\\,
-+ use=vt420,
-+
-+vt420pcdos|DEC VT420 w/PC for DOS Merge,
-+ lines#25,
-+ dispc=%?%p1%{19}%=%t\E\023\021%e%p1%{32}%<%t\E%p1%c%e%p1%{127}%=%t\E\177%e%p1%c%;,
-+ pctrm@,
-+ rmsc=\E[?0;0r\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sgr@,
-+ sgr0=\E[m, smsc=\E[?1;2r\E[34h, use=vt420pc,
-+
-+vt420f|DEC VT420 with VT kbd; VT400 mode; F1-F5 used as Fkeys,
-+ kdch1=\177, 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@,
-+ 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~, 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,
--
--rxvt|rxvt terminal emulator (X Window System),
-- ncv@,
-- hpa=\E[%i%p1%dG, kf0=\E[21~, sgr0=\E[m\017,
-- vpa=\E[%i%p1%dd, use=rxvt-basic, use=ecma+color,
--rxvt-color|rxvt terminal emulator (X Window System),
-- use=rxvt,
--rxvt-256color|rxvt 2.7.9 with xterm 256-colors,
-- use=xterm+256color, use=rxvt,
--rxvt-88color|rxvt 2.7.9 with xterm 88-colors,
-- use=xterm+88color, use=rxvt,
--rxvt-xpm|rxvt terminal emulator (X Window System),
-- use=rxvt,
--rxvt-cygwin|rxvt terminal emulator (X Window System) on cygwin,
-- acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-- use=rxvt,
--rxvt-cygwin-native|rxvt terminal emulator (native MS Window System port) on cygwin,
-- acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330~\376,
-- use=rxvt-cygwin,
-+ khome=\E[H, lf1=\EOP, lf2=\EOQ, lf3=\EOR, lf4=\EOS,
-+ use=vt420,
-
--# This variant is supposed to work with rxvt 2.7.7 when compiled with
--# NO_BRIGHTCOLOR defined. rxvt needs more work...
--rxvt-16color|xterm with 16 colors like aixterm,
-- ncv#32, use=ibm+16color, use=rxvt,
-+vt510|DEC VT510,
-+ use=vt420,
-+vt510pc|DEC VT510 w/PC keyboard,
-+ use=vt420pc,
-+vt510pcdos|DEC VT510 w/PC for DOS Merge,
-+ use=vt420pcdos,
-
--# mrxvt 0.5.4
-+# VT520/VT525
- #
--# mrxvt is based on rxvt 2.7.11, but has by default XTERM_FKEYS defined, which
--# makes its function-keys different from other flavors of rxvt -TD
--mrxvt|multitabbed rxvt,
-- XT,
-- kEND=\E[8;2~, kHOM=\E[7;2~, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, kend=\E[8~, khome=\E[7~,
-- kEND3=\E[8;3~, kEND4=\E[8;4~, kEND5=\E[8;5~,
-- kEND6=\E[8;6~, kEND7=\E[8;7~, kHOM3=\E[7;3~,
-- kHOM4=\E[7;4~, kHOM5=\E[7;5~, kHOM6=\E[7;6~,
-- kHOM7=\E[7;7~, use=xterm+r6f2, use=xterm+pcfkeys,
-- use=rxvt,
-+# The VT520 is a monochrome text terminal capable of managing up to
-+# four independent sessions in the terminal. It has multiple ANSI
-+# emulations (VT520, VT420, VT320, VT220, VT100, VT PCTerm, SCO Console)
-+# and ASCII emulations (WY160/60, PCTerm, 50/50+, 150/120, TVI 950,
-+# 925 910+, ADDS A2). This terminfo data is for the ANSI emulations only.
-+#
-+# Terminal Set-Up is entered by pressing [F3], [Caps Lock]/[F3] or
-+# [Alt]/[Print Screen] depending upon which keyboard and which
-+# terminal mode is being used. If Set-Up has been disabled or
-+# assigned to an unknown key, Set-Up may be entered by pressing
-+# [F3] as the first key after power up, regardless of keyboard type.
-+vt520|DEC VT520,
-+ use=ansi+rca, use=vt420, use=ansi+tabs,
-
--mrxvt-256color|multitabbed rxvt with 256 colors,
-- use=xterm+256color, use=mrxvt,
-+vt525|DEC VT525,
-+ use=vt520,
-
--# From: Michael Jennings <mej@valinux.com>
-+# I just got a brand new Boundless VT520 with that company's "ANSI 2011"
-+# Keyboard, which replaces the old LK41R-AA keyboard.
- #
--# Eterm 0.9.3
-+# In trying to get the function keys to work, I had to cobble my own
-+# terminfo.src entry, since the existing vt520 entry doesn't include most of
-+# the function keys. If I blend the entries for "vt420f" and "vt220+keypad"
-+# I seem to get them all -Mike Gran
-+vt520ansi|Boundless VT520 ANSI,
-+ use=ansi+rca, use=vt420f, use=vt220+keypad,
-+ use=ansi+tabs,
-+
-+#### VT100 emulations
- #
--# removed kf0 which conflicts with kf10 -TD
--# remove cvvis which conflicts with cnorm -TD
--# Eterm does not implement control/shift cursor keys such as kDN6, or kPRV/kNXT
--# but does otherwise follow the rxvt+pcfkeys model -TD
--# remove nonworking flash -TD
--# remove km as per tack test -TD
--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=^M,
-- 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,
-- 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,
-- 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=^J,
-- is1=\E[?47l\E>\E[?1l,
-- is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kNXT@,
-- kPRV@, ka1=\E[7~, ka3=\E[5~, kb2=\EOu, kbeg=\EOu, kbs=^H,
-- kc1=\E[8~, kc3=\E[6~, kent=\EOM, khlp=\E[28~, kmous=\E[M,
-- mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
-- rmam=\E[?7l, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=,
-- 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,
-- sc=\E7,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-- 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,
-
--Eterm-256color|Eterm with xterm 256-colors,
-- use=xterm+256color, use=Eterm,
-+# John Hawkinson <jhawk@MIT.EDU> tells us that the EWAN telnet for Windows
-+# (the best Windows telnet as of September 1995) presents the name `dec-vt100'
-+# to telnetd. Michael Deutschmann <ldeutsch@mail.netshop.net> informs us
-+# that this works best with a stock vt100 entry.
-+dec-vt100|EWAN telnet's vt100 emulation,
-+ use=vt100,
-
--Eterm-88color|Eterm with 88 colors,
-- use=xterm+88color, use=Eterm,
-+# From: Adrian Garside <94ajg2@eng.cam.ac.uk>, 19 Nov 1996
-+dec-vt220|DOS tnvt200 terminal emulator,
-+ am@, use=vt220,
-
--# Based on rxvt 2.4.8, it has a few differences in key bindings
--aterm|AfterStep terminal,
-- XT,
-- kbs=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=rxvt,
-+# 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...
-+# 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,
-+ 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),
-+ 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,
-
--# xiterm 0.5-5.2
--# This is not based on xterm's source...
--# vttest shows several problems with keyboard, cursor-movements.
--# see also http://invisible-island.net/xterm/xterm.faq.html#bug_xiterm
--xiterm|internationalized terminal emulator for X,
-- km@,
-- kbs=\177, kdch1=\E[3~, use=klone+color, use=xterm-r6,
-+# CRT is shareware. It implements some xterm features, including mouse.
-+crt|crt-vt220|CRT 2.3 emulating VT220,
-+ bce, msgr,
-+ ncv@,
-+ hts=\EH, use=vt100+enq, use=vt220, use=ecma+color,
-
--# These (xtermc and xtermm) are distributed with Solaris. They refer to a
--# variant of xterm which is apparently no longer supported, but are interesting
--# because they illustrate SVr4 curses mouse controls - T.Dickey
--xtermm|xterm terminal emulator (monocrome),
-- OTbs, am, km, mir, msgr, xenl,
-- btns#3, cols#80, it#8, lines#24,
-+# PuTTY 0.55 (released 3 August 2004)
-+# http://www.chiark.greenend.org.uk/~sgtatham/putty/
-+#
-+# 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)
-+#
-+# 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,
-+# it is intended to be VT102 plus selected features. By default, it sets $TERM
-+# to xterm, which is incorrect, since several features are misimplemented:
-+#
-+# Alt+key always sends ESC+key, so 'km' capability is removed.
-+#
-+# Control responses, wrapping and tabs are buggy, failing a couple of
-+# screens in vttest.
-+#
-+# xterm mouse support is not implemented (unrelease version may).
-+#
-+# Several features such as backspace/delete are optional; this entry documents
-+# the default behavior -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@, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D,
-- cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-- el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, getm=\E[%p1%dY,
-- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD,
-- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[Y, kf0=\EOy,
-- kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf5=\EOT, kf6=\EOU,
-- kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\E[H, kmous=\E[^_,
-- knp=\E[U, kpp=\E[V, rc=\E8, reqmp=\E[492Z, rev=\E[7m, ri=\EM,
-- rmacs=^O, rmcup=\E@0\E[?4r, rmso=\E[m,
-- rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
-+ clear=\E[H\E[J, cnorm=\E[?25h, cr=^M,
-+ 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,
-+ dch=\E[%p1%dP, dch1=\E[P,
-+ dispc=%?%p1%{8}%=%t\E%%G\342\227\230\E%%@%e%p1%{10}%=%t\E%%G\342\227\231\E%%@%e%p1%{12}%=%t\E%%G\342\231\0\E%%@%e%p1%{13}%=%t\E%%G\342\231\252\E%%@%e%p1%{14}%=%t\E%%G\342\231\253\E%%@%e%p1%{15}%=%t\E%%G\342\230\274\E%%@%e%p1%{27}%=%t\E%%G\342\206\220\E%%@%e%p1%{155}%=%t\E%%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\E[?5l, home=\E[H,
-+ hpa=\E[%i%p1%dG, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L,
-+ ind=^J, indn=\E[%p1%dS,
-+ 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,
-+ kb2=\E[G, kbs=\177, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[3~, kend=\E[4~,
-+ 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~,
-+ khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
-+ kspd=^Z, nel=^M^J, oc=\E]R, op=\E[39;49m, rc=\E8, rev=\E[7m,
-+ ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l,
-+ rmcup=\E[2J\E[?47l, rmir=\E[4l, rmpch=\E[10m,
-+ rmso=\E[27m, rmul=\E[24m,
-+ rs2=\E<\E["p\E[50;6"p\Ec\E[?3l\E]R\E[?1000l,
-+ s0ds=\E[10m, s1ds=\E[11m, s2ds=\E[12m, sc=\E7,
-+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smcup=\E@0\E[?4s\E[?4h\E@1,
-- smso=\E[7m, tbc=\E[3g, use=vt100+fnkeys,
--
--xtermc|xterm terminal emulator (color),
-- colors#8, ncv#7, pairs#64,
-- op=\E[100m, 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}%=%t3%e%p1%d%;m,
-- use=xtermm,
--
--# From: David J. MacKenzie <djm@va.pubnix.com> 20 Apr 1995
--# Here's a termcap entry I've been using for xterm_color, which comes
--# with BSD/OS 2.0, and the X11R6 contrib tape too I think. Besides the
--# color stuff, I also have a status line defined as the window manager
--# title bar. [I have translated it to terminfo -- ESR]
--xterm-pcolor|xterm with color used for highlights and status line,
-- bold=\E[1m\E[43m, rev=\E[7m\E[34m, smso=\E[7m\E[31m,
-- smul=\E[4m\E[42m, use=xterm+sl, use=xterm-r6,
-+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smcup=\E[?47h,
-+ smir=\E[4h, smpch=\E[11m, smso=\E[7m, smul=\E[4m,
-+ tbc=\E[3g, vpa=\E[%i%p1%dd, E3=\E[3;J, use=vt102+enq,
-+ use=xterm+sl,
-+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,
-+# palette is hardcoded...
-+putty-256color|PuTTY 0.58 with xterm 256-colors,
-+ use=xterm+256setaf, use=putty,
-
--# 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,
-- am, da, db, mir, xhp,
-- 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=^M,
-- 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=^J, 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,
-- 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, rmir=\ER, rmkx=\E&s0A, rmln=\E&j@, rmso=\E&d@,
-- rmul=\E&d@,
-- sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;,
-- 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,
--# HPUX 11 provides a color version.
--hpterm-color|HP X11 terminal emulator with color,
-- ccc,
-- colors#64, pairs#8,
-- home=\E&a0y0C,
-- 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,
-+# One of the keyboard selections is "VT100+".
-+# pterm (the X11 port) uses shifted F1-F10 as F11-F20
-+putty-vt100|VT100+ keyboard layout,
-+ kf1=\EOP, kf10=\EOY, kf11=\EOZ, kf12=\EO[, kf2=\EOQ,
-+ kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW,
-+ kf9=\EOX, use=putty,
-
--# This entry describes an xterm with Sun-style function keys enabled
--# via the X resource setting "xterm*sunFunctionKeys:true"
--# To understand <kf11>/<kf12> note that L1,L2 and F11,F12 are the same.
--# The <kf13>...<kf20> keys are L3-L10. We don't set <kf16=\E[197z>
--# because we want it to be seen as <kcpy>.
--# The <kf31>...<kf45> keys are R1-R15. We treat some of these in accordance
--# with their Sun keyboard labels instead.
--# From: Simon J. Gerraty <sjg@zen.void.oz.au> 10 Jan 1996
--xterm-sun|xterm with sunFunctionKeys true,
-- kb2=\E[218z, kcpy=\E[197z, kcub1=\EOD, kcud1=\EOB,
-- kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3z, kend=\E[220z,
-- kent=\EOM, kf1=\E[224z, kf10=\E[233z, kf11=\E[192z,
-- kf12=\E[193z, kf13=\E[194z, kf14=\E[195z, kf15=\E[196z,
-- kf17=\E[198z, kf18=\E[199z, kf19=\E[200z, kf2=\E[225z,
-- kf20=\E[201z, kf3=\E[226z, kf31=\E[208z, kf32=\E[209z,
-- kf33=\E[210z, kf34=\E[211z, kf35=\E[212z, kf36=\E[213z,
-- kf38=\E[215z, kf4=\E[227z, kf40=\E[217z, kf42=\E[219z,
-- kf44=\E[221z, kf45=\E[222z, kf46=\E[234z, kf47=\E[235z,
-- 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,
--xterms-sun|small (80x24) xterm with sunFunctionKeys true,
-- cols#80, lines#24, use=xterm-sun,
-+# Unlike xterm-sco, this leaves kmous ambiguous with kf1.
-+#
-+# Use modifiers to obtain function keys past 12:
-+# F1-F12 - normal
-+# F13-F24 - shift
-+# F25-F36 - control/alt
-+# F37-F48 - control/shift
-+#
-+putty-sco|putty with SCO function keys,
-+ kbeg=\E[E, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W,
-+ kf12=\E[X, kf13=\E[Y, kf14=\E[Z, kf15=\E[a, kf16=\E[b,
-+ kf17=\E[c, kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f,
-+ kf21=\E[g, kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k,
-+ kf26=\E[l, kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O,
-+ kf30=\E[p, kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t,
-+ kf35=\E[u, kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y,
-+ kf4=\E[P, kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\,
-+ 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, knp=\E[G, kpp=\E[I, use=putty,
-
--# This is for the extensible terminal emulator on the X11R6 contrib tape.
--# It corresponds to emu's internal emulation:
--# emu -term emu
--# emu's default sets TERM to "xterm", but that doesn't work well -TD
--# fixes: remove bogus rmacs/smacs, change oc to op, add bce, am -TD
--# fixes: add civis, cnorm, sgr -TD
--emu|emu native mode,
-- am, bce, mir, msgr, xon,
-- colors#15, cols#80, it#8, lines#24, pairs#64, vt#200,
-- acsc=61a\202f\260g2j\213k\214l\215m\216n\217o\220q\222s\224t\225u\226v\227w\230x\231~\244,
-- bel=^G, blink=\EW, bold=\EU, civis=\EZ, clear=\EP\EE0;0;,
-- cnorm=\Ea, cr=^M, csr=\Ek%p1%d;%p2%d;, cub=\Eq-%p1%d;,
-- cub1=^H, cud=\Ep%p1%d;, cud1=\EB, cuf=\Eq%p1%d;, cuf1=\EC,
-- cup=\EE%p1%d;%p2%d;, cuu=\Ep-%p1%d;, cuu1=\EA,
-- dch=\EI%p1%d;, dch1=\EI1;, dl=\ER%p1%d;, dl1=\ER1;,
-- ech=\Ej%p1%d;, ed=\EN, el=\EK, el1=\EL, home=\EE0;0;, ht=^I,
-- hts=\Eh, il=\EQ%p1%d;, il1=\EQ1;, ind=\EG,
-- is2=\ES\Er0;\Es0;, kbs=^H, kcub1=\EC, kcud1=\EB, kcuf1=\ED,
-- kcuu1=\EA, kdch1=\177, kent=^M, kf0=\EF00, kf1=\EF01,
-- kf10=\EF10, kf11=\EF11, kf12=\EF12, kf13=\EF13, kf14=\EF14,
-- kf15=\EF15, kf16=\EF16, kf17=\EF17, kf18=\EF18, kf19=\EF19,
-- kf2=\EF02, kf20=\EF20, kf3=\EF03, kf4=\EF04, kf5=\EF05,
-- kf6=\EF06, kf7=\EF07, kf8=\EF08, kf9=\EF09, kfnd=\Efind,
-- kich1=\Eins, knp=\Enext, kpp=\Eprior, kslt=\Esel,
-- op=\Es0;\Er0;, rev=\ET, ri=\EF, rmir=\EX, rmso=\ES, rmul=\ES,
-- rs2=\ES\Es0;\Er0;, setab=\Es%i%p1%d;,
-- setaf=\Er%i%p1%d;,
-- sgr=\ES%?%p1%t\ET%;%?%p2%t\EV%;%?%p3%t\ET%;%?%p4%t\EW%;%?%p6%t\EU%;,
-- sgr0=\ES, smir=\EY, smso=\ET, smul=\EV, tbc=\Ej,
--
--# vt220 Terminfo entry for the Emu emulation, corresponds to
--# emu -term vt220
--# with NumLock set (to make the keypad transmit kf0-kf9).
--# fixes: add am, xenl, corrected sgr0 -TD
--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=^M,
-- 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,
-- dch=\E[%p1%dP, dch1=\E[1P, dl=\E[%p1%dM, dl1=\E[1M,
-- ed=\E[0J, el=\E[0K, el1=\E[1K, enacs=\E)0, home=\E[H, ht=^I,
-- 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,
-- 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, smacs=^N, smcup=\E[?1l\E=, smkx=\E=,
-- smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g,
--# A commercial product, Reportedly a version of Xterm with an OPEN LOOK UI,
--# print interface, ANSI X3.64 colour escape sequences, etc. Newsgroup postings
--# indicate that it emulates more than one terminal, but incompletely.
-+# This entry is for Tera Term Pro version 2.3, for MS-Windows 95/NT written by
-+# T. Teranishi dated Mar 10, 1998. It is a free software terminal emulator
-+# (communication program) which supports:
- #
--# This is adapted from a FreeBSD bug-report by Daniel Rudy <dcrudy@pacbell.net>
--# It is based on vt102's entry, with some subtle differences, but also
--# has status line
--# supports ANSI colors (except for 'op' string)
--# apparently implements alternate screen like xterm
--# does not use padding, of course.
--mvterm|vv100|SwitchTerm aka mvTERM,
-- am, eslok, hs, km, mir, msgr, xenl,
-- colors#8, cols#80, it#8, lines#24, pairs#64,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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[?E, ed=\E[J, el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0,
-- fsl=\E[?F, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOy,
-- kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw,
-- op=\E[100m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
-- rmcup=\E[2J\E[?47l\E8, rmkx=\E[?1l\E>, rmso=\E[m,
-- rmul=\E[m,
-- rs2=\E>\E[1;3;4;5;6l\E[?7h\E[100m\E[m\E[r\E[2J\E[H,
-- sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smcup=\E7\E[?47h,
-- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-- tsl=\E[?E\E[?%i%p1%dT, use=vt100+fnkeys,
--
--### MTERM
-+# - Serial port connections.
-+# - TCP/IP (telnet) connections.
-+# - VT100 emulation, and selected VT200/300 emulation.
-+# - TEK4010 emulation.
-+# - File transfer protocols (Kermit, XMODEM, ZMODEM, B-PLUS and
-+# Quick-VAN).
-+# - Scripts using the "Tera Term Language".
-+# - Japanese and Russian character sets.
- #
--# This application is available by email from <mouse@Rodents.Montreal.QC.CA>.
-+# The program does not come with terminfo or termcap entries. However, the
-+# emulation (testing with vttest and ncurses) is reasonably close to vt100 (no
-+# vt52 or doublesize character support; blinking is done with color). Besides
-+# the HPA, VPA extensions it also implements CPL and CNL.
- #
--# "mterm -type ansi" sets $TERM to "ansi"
--mterm-ansi|ANSI emulation,
-- am, bw, mir, msgr,
-- it#8,
-- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-- 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, ech=\E[%p1%dX, ed=\E[J,
-- el=\E[K, home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=,
-- il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS,
-- invis=\E[8m, is2=\E)0\017, kbs=^H, nel=\EE, rev=\E[7m,
-- ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmir=\E[4l, rmso=\E[27m,
-- rmul=\E[24m,
-- 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, smacs=^N, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-- vpa=\E[%i%p1%dd,
--# mterm normally sets $TERM to "mterm"
--mterm|mouse-sun|Der Mouse term,
-- am, bw, mir,
-- it#8,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^N, cuf1=^S,
-- cup=\006%p1%d.%p2%d., cuu1=^X, dch1=^Y, dl1=^K, ed=^B, el=^C,
-- home=^P, ht=^I, il1=^A, ind=^U, kbs=^H, ll=^R, nel=^M^U, ri=^W,
-- rmir=^O, rmso=^T, smir=^Q, smso=^V,
--# "mterm -type decansi" sets $TERM to "decansi"
-+# All of the function keys can be remapped. This description shows the default
-+# mapping, as installed. Both vt100 PF1-PF4 keys and quasi-vt220 F1-F4 keys
-+# are supported. F13-F20 are obtained by shifting F3-F10. The editing keypad
-+# is laid out like vt220, rather than the face codes on the PC keyboard, i.e,
-+# kfnd Insert
-+# kslt Delete
-+# kich1 Home
-+# kdch1 PageUp
-+# kpp End
-+# knp PageDown
- #
--# note: kdch1, kfnd, kslt are in the source code, but do not work -TD
--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=^M,
-- 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,
-- 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, 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, indn=\E[%p1%dS, 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~,
-+# ANSI colors are implemented, but cannot be combined with video attributes
-+# except for reverse.
-+#
-+# No fonts are supplied with the program, so the acsc string is chosen to
-+# correspond with the default Microsoft terminal font.
-+#
-+# Tera Term recognizes some xterm sequences, including those for setting and
-+# retrieving the window title, and for setting the window size (i.e., using
-+# "resize -s"), though it does not pass SIGWINCH to the application if the
-+# user resizes the window with the mouse.
-+teraterm2.3|Tera Term Pro,
-+ km, xon@,
-+ ncv#43, vt@,
-+ 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\E[?5l$<200/>, hpa=\E[%i%p1%dG,
-+ il=\E[%p1%dL, il1=\E[L, 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, rin=\E[%p1%dT, 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, 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,
-+ kpp=\E[5~, kslt=\E[4~, 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,
-
--#### VWM
--#
--# vwmterm is a terminal emulator written for the VWM console window manager
-+# Version 4.59 has regular vt100 line-drawing (so it is no longer necessary
-+# to choose a Windows OEM font).
- #
--vwmterm|(vwm term),
-- am, bce, ccc, mir, msgr, npc, xenl, xon,
-- colors#8, pairs#64,
-+# Testing with tack:
-+# - it does not have xenl (suppress that)
-+# - underline seems to work with color (modify ncv).
-+# Testing with vttest:
-+# - wrapping differs from vt100 (menu 1).
-+# - it recognizes xterm's X10 and normal mouse tracking, but none of the
-+# other flavors.
-+# - it recognizes the dtterm window controls for reporting size in
-+# characters and pixels.
-+# - it passes SIGWINCH.
-+teraterm4.59|Tera Term Pro,
-+ bce, xenl@,
-+ ncv#41,
- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
-- clear=\E[H\E[J, cnorm=\E[?25h, cr=^M, 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=^J, 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, rmcup=\E[?1049l, rs1=\E[H\E[J\E[m\Ec,
-- 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%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m,
-- sgr0=\E[0;10m, smacs=\E[11m, smam=\E[?7h,
-- smcup=\E[?1049h, smso=\E[3m, smul=\E[4m,
-+ kmous=\E[M, use=teraterm2.3,
-
--#### MGR
--#
--# MGR is a Bell Labs window system lighter-weight than X.
--# These entries describe MGR's xterm-equivalent.
--# They are courtesy of Vincent Broman <broman@nosc.mil> 14 Jan 1997
-+teraterm|Tera Term,
-+ use=teraterm4.59,
-+
-+# Tested with WinNT 4.0, the telnet application assumes the screensize is
-+# 25x80. This entry uses the 'Terminal' font, to get line-drawing characters.
- #
-+# Other notes:
-+# a) Fails tack's cup (cursor-addressing) test, though cup works well enough
-+# for casual (occasional) use. Also fails several of the vttest screens,
-+# 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,
-+ 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\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-+ ka1@, ka3@, kb2@, kc1@, kc3@, kent@, kf0@, kf1@, kf10@, kf2@, kf3@, kf4@,
-+ kf5@, kf6@, kf7@, kf8@, kf9@, tbc@, use=vt102+enq, use=vt100,
-
--mgr|Bellcore MGR (non X) window system terminal emulation,
-- am, km,
-- bel=^G, bold=\E2n, civis=\E9h, clear=^L, cnorm=\Eh, cr=^M,
-- csr=\E%p1%d;%p2%dt, cub1=^H, cud1=\Ef, cuf1=\Er,
-- cup=\E%p2%d;%p1%dM, cuu1=\Eu, cvvis=\E0h,
-- dch=\E%p1%dE$<5>, dch1=\EE, dl=\E%p1%dd$<3*>,
-- dl1=\Ed$<3>, ed=\EC, el=\Ec, hd=\E1;2f, ht=^I, hu=\E1;2u,
-- ich=\E%p1%dA$<5>, ich1=\EA, il=\E%p1%da$<3*>,
-- il1=\Ea$<3>, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, nel=^M^J, rev=\E1n, rmam=\E5S,
-- rmso=\E0n, rmul=\E0n, sgr0=\E0n, smam=\E5s, smso=\E1n,
-- smul=\E4n,
--mgr-sun|Mgr window with Sun keyboard,
-- ka1=\E[214z, ka3=\E[216z, kb2=\E[218z, kc1=\E[220z,
-- kc3=\E[222z, kcpy=\E[197z, kend=\E[220z, kent=\E[250z,
-- kf1=\E[224z, kf10=\E[233z, kf11=\E[234z, kf12=\E[235z,
-- kf2=\E[225z, kf3=\E[226z, kf4=\E[227z, kf5=\E[228z,
-- kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, kf9=\E[232z,
-- kfnd=\E[200z, khlp=\E[207z, khome=\E[214z, knp=\E[222z,
-- kopn=\E[198z, kpp=\E[216z, kund=\E[195z, use=mgr,
--mgr-linux|Mgr window with Linux keyboard,
-- ka1=\E[H, ka3=\E[5~, kb2=\E[G, kc1=\E[Y, kc3=\E[6~,
-- kdch1=\E[3~, kend=\E[4~, kf0=\E[[J, 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~, knp=\E[6~, kpp=\E[5~, use=mgr,
-+# Tested with Windows 2000, the telnet application runs in a console window,
-+# also using 'Terminal' font.
-+#
-+# Other notes:
-+# a) This version has no function keys or numeric keypad. Unlike the older
-+# version, the numeric keypad is entirely ignored.
-+# b) The program sets $TERM to "ansi", which of course is inaccurate.
-+ms-vt100-color|vtnt|windows 2000 ansi (sic),
-+ bce,
-+ dch=\E[%p1%dP, ich=\E[%p1%d@, use=ecma+color,
-+ use=ms-vt100,
-
--######## UNIX VIRTUAL TERMINALS, VIRTUAL CONSOLES, AND TELNET CLIENTS
-+# Based on comments from Federico Bianchi:
-+#
-+# vt100+ is basically a VT102-noSGR with ANSI.SYS colors and a different
-+# scheme for PF keys.
-+#
-+# and PuTTY wishlist:
-+#
-+# The modifiers are represented as the codes listed above, prefixed to
-+# the normal sequences. If the modifier is pressed alone, its sequence
-+# is transmitted twice in succession. If multiple modifiers apply,
-+# they're transmitted in the order shift, control, alt.
- #
-+# Shift \E^S
-+# Alt \E^A,
-+# Ctrl \E^C,
-+ms-vt100+|vt100+|windows XP vt100+ (sic),
-+ kdch1=\E-, kend=\Ek, kf1=\E1, kf10=\E0, kf11=\E!, kf12=\E@,
-+ kf13=\E\023\E1, kf14=\E\023\E2, kf15=\E\023\E3,
-+ kf16=\E\023\E4, kf17=\E\023\E5, kf18=\E\023\E6,
-+ kf19=\E\023\E7, kf2=\E2, kf20=\E\023\E8, kf21=\E\023\E9,
-+ kf22=\E\023\E0, kf23=\E\023\E!, kf24=\E\023\E@,
-+ kf25=\E\003\E1, kf26=\E\003\E2, kf27=\E\003\E3,
-+ kf28=\E\003\E4, kf29=\E\003\E5, kf3=\E3, kf30=\E\003\E6,
-+ kf31=\E\003\E7, kf32=\E\003\E8, kf33=\E\003\E9,
-+ kf34=\E\003\E0, kf35=\E\003\E!, kf36=\E\003\E@,
-+ kf37=\E\001\E1, kf38=\E\001\E2, kf39=\E\001\E3, kf4=\E4,
-+ kf40=\E\001\E4, kf41=\E\001\E5, kf42=\E\001\E6,
-+ kf43=\E\001\E7, kf44=\E\001\E8, kf45=\E\001\E9,
-+ kf46=\E\001\E0, kf47=\E\001\E!, kf48=\E\001\E@, kf5=\E5,
-+ kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, khome=\Eh, kich1=\E+,
-+ knp=\E/, kpp=\E?, use=ms-vt100-color,
-
--# Columbus UNIX virtual terminal. This terminal also appears in
--# UNIX 4.0 and successors as line discipline 1 (?), but is
--# undocumented and does not really work quite right.
--cbunix|cb unix virtual terminal,
-- OTbs, am, da, db,
-- cols#80, lines#24, lm#0,
-- bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\EG%p2%c%p1%c, cuu1=\EA, dch1=\EM, dl1=\EN, ed=\EL,
-- el=\EK, ich1=\EO, il1=\EP, ind=^J, kcub1=\ED, kcud1=\EB,
-- kcuf1=\EC, kcuu1=\EA, khome=\EE, rmso=\Eb^D, rmul=\Eb^A,
-- smso=\Ea^D, smul=\Ea^A,
--# (vremote: removed obsolete ":nl@:" -- esr)
--vremote|virtual remote terminal,
-- am@,
-- cols#79, use=cbunix,
-+ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+,
-+ use=ms-vt100+,
-
--pty|4bsd pseudo teletype,
-- cup=\EG%p1%{32}%+%c%p2%{32}%+%c, rmso=\Eb$, rmul=\Eb!,
-- smso=\Ea$, smul=\Ea!, use=cbunix,
-+# expect-5.44.1.15/example/tkterm
-+# a minimal subset of a vt100 (compare with "news-unk).
-+#
-+# The missing "=" in smkx is not a typo (here), but an error in tkterm.
-+tt|tkterm|Don Libes' tk text widget terminal emulator,
-+ clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-+ cup=\E[%p1%d;%p2%dH, cuu1=\E[A, ind=^J, kf1=\EOP, kf2=\EOQ,
-+ kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW,
-+ kf9=\EOX, rmkx=\E[?1l\E>, rmso=\E[m, smkx=\E[?1h\E,
-+ smso=\E[7m,
-
--# The codes supported by the term.el terminal emulation in GNU Emacs 19.30
--eterm|gnu emacs term.el terminal emulation,
-- am, mir, xenl,
-- cols#80, lines#24,
-- bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+######## X TERMINAL EMULATORS
-+#### XTERM
-+#
-+# You can add the following line to your .Xdefaults to change the terminal type
-+# set by the xterms you start up to my-xterm:
-+#
-+# *termName: my-xterm
-+#
-+# System administrators can change the default entry for xterm instances
-+# by adding a similar line to /usr/X11/lib/X11/app-defaults/XTerm. In either
-+# case, xterm will detect and reject an invalid terminal type, falling back
-+# to the default of xterm.
-+#
-+
-+# X10/6.6 11/7/86, minus alternate screen, plus (csr)
-+# (xterm: ":MT:" changed to ":km:"; added <smam>/<rmam> based on init string;
-+# removed (hs, eslok, tsl=\E[?E\E[?%i%dT, fsl=\E[?F, dsl=\E[?E)
-+# as these seem not to work -- esr)
-+x10term|vs100-x10|xterm terminal emulator (X10 window system),
-+ OTbs, am, km, mir, msgr, xenl, xon,
-+ cols#80, it#8, lines#65,
-+ bold=\E[1m, clear=\E[H\E[2J, csr=\E[%i%p1%d;%p2%dr,
-+ cub1=^H, cud1=^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, ed=\E[J, el=\E[K, home=\E[H, ht=^I, il=\E[%p1%dL,
-+ il1=\E[L, ind=^J, is2=\E\E[m\E[?7h\E[?1;4l, kbs=^H,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP,
-+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, rev=\E[7m, ri=\EM, rmam=\E[?7l,
-+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-+ sgr0=\E[m, smam=\E[?7h, smir=\E[4h, smkx=\E[?1h\E=,
-+ smso=\E[7m, smul=\E[4m,
-+# Compatible with the R5 xterm
-+# (from the XFree86 3.2 distribution, <blink=@> removed)
-+# added khome/kend, rmir/smir, rmul/smul, hts based on the R5 xterm code - TD
-+# corrected typos in rs2 string - TD
-+# added u6-u9 -TD
-+xterm-r5|xterm R5 version,
-+ OTbs, am, km, msgr, xenl,
-+ cols#80, it#8, lines#24,
-+ bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-- el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, rev=\E[7m,
-- rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmso=\E[m, rmul=\E[m,
-- sgr0=\E[m, smcup=\E7\E[?47h, smir=\E[4h, smso=\E[7m,
-- smul=\E[4m,
--
--# The codes supported by the term.el terminal emulation in GNU Emacs 22.2
--eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96,
-- am, mir, msgr, xenl,
-- colors#8, cols#80, lines#24, pairs#64,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+ el=\E[K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, 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, 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,
-+# 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
-+# (khome/kend do not actually work in X11R5 or X11R6, but many people use this
-+# for compatibility with other emulators).
-+xterm-r6|xterm X11R6 version,
-+ OTbs, am, km, mir, msgr, xenl,
-+ cols#80, it#8, lines#24,
-+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-- el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, kbs=\177,
-+ el=\E[K, enacs=\E)0, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL,
-+ il1=\E[L, ind=^J,
-+ is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8, kbs=^H,
- 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,
-- 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,
--
--# Entries for use by the `screen' program by Juergen Weigert,
--# Michael Schroeder, Oliver Laumann. The screen and
--# screen-w entries came with version 3.7.1. The screen2 and screen3 entries
--# come from University of Wisconsin and may be older.
--# (screen: added <cnorm> on ANSI model -- esr)
--#
--# 'screen' defines extensions to termcap. Some are used in its terminal
--# description:
--# G0 (bool) Terminal can deal with ISO 2022 font selection sequences.
--# AX (bool) Does understand ANSI set default fg/bg color
--# (\E[39m / \E[49m).
--# S0 (str) Switch charset 'G0' to the specified charset.
--# E0 (str) Switch charset 'G0' back to standard charset.
--#
--# tested with screen 3.09.08
--screen|VT 100/ANSI X3.64 virtual terminal,
-- OTbs, OTpt, am, km, mir, msgr, xenl, G0,
-- colors#8, cols#80, it#8, lines#24, ncv@, pairs#64, U8#1,
-- acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
-- clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=^M,
-+ 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,
-+ 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=vt100+enq,
-+xterm-old|antique xterm version,
-+ use=xterm-r6,
-+# This is the base xterm entry for the xterm supplied with XFree86 3.2 & up.
-+# The name has been changed and some aliases have been removed.
-+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=^M,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
-- cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-- dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
-- flash=\Eg, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, 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,
-- rmcup=\E[?1049l, 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%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smcup=\E[?1049h, smir=\E[4h,
-- smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, tbc=\E[3g, E0=\E(B,
-- S0=\E(%p1%c, use=ecma+color,
--# 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,
-- bce,
-- ech@, use=screen,
--screen-s|VT 100/ANSI X3.64 virtual terminal with hardstatus line,
-- dsl=\E_\E\\, fsl=\E\\, tsl=\E_, use=screen,
--
--# ======================================================================
--# Entries for GNU Screen with 16 colors.
--# Those variations permit to benefit from 16 colors palette, and from
--# bold font and blink attribute separated from bright colors. But they
--# are less portable than the generic "screen" 8 color entries: Their
--# usage makes real sense only if the terminals you attach and reattach
--# do all support 16 color palette.
--
--screen-16color|GNU Screen with 16 colors,
-- use=ibm+16color, use=screen,
--
--screen-16color-s|GNU Screen with 16 colors and status line,
-- use=ibm+16color, use=screen-s,
--
--screen-16color-bce|GNU Screen with 16 colors and BCE,
-- use=ibm+16color, use=screen-bce,
-+ 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, enacs=\E(B\E)0,
-+ flash=\E[?5h$<100/>\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=^J,
-+ is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>,
-+ kbeg=\EOE, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-+ kcuu1=\EOA, kdch1=\177, kend=\EOF, 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~, khome=\EOH, 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, rmam=\E[?7l,
-+ rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E[?1l\E>,
-+ rmso=\E[27m, rmul=\E[24m, rs1=^O,
-+ rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>, sc=\E7,
-+ 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}%=%t3%e%p1%d%;m,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-+ 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=vt100+enq,
-+ use=ecma+color, use=vt220+keypad,
-
--screen-16color-bce-s|GNU Screen with 16 colors, BCE, and status line,
-- bce, use=ibm+16color, use=screen-s,
-+# This is the stock xterm entry supplied with XFree86 3.3, which uses VT100
-+# codes for F1-F4 except while in VT220 mode.
-+xterm-xf86-v33|xterm terminal emulator (XFree86 3.3 Window System),
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=xterm-xf86-v32,
-
--# ======================================================================
--# Entries for GNU Screen 4.02 with --enable-colors256.
-+# This version was released in XFree86 3.3.3 (November 1998).
-+# Besides providing printer support, it exploits a new feature that allows
-+# xterm to use terminfo-based descriptions with the titeInhibit resource.
-+# -- the distribution contained incorrect khome/kend values -TD
-+xterm-xf86-v333|xterm terminal emulator (XFree86 3.3.3 Window System),
-+ blink=\E[5m, ich1@, invis=\E[8m,
-+ is2=\E[!p\E[?3;4l\E[4l\E>, kdch1=\E[3~, kfnd@, kslt@,
-+ rmcup=\E[?1047l\E[?1048l, rs1=\Ec,
-+ rs2=\E[!p\E[?3;4l\E[4l\E>,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ smcup=\E[?1048h\E[?1047h, use=ansi+pp,
-+ use=xterm-xf86-v33,
-
--screen-256color|GNU Screen with 256 colors,
-- ccc@,
-- initc@, use=xterm+256color, use=screen,
-+# This version was released in XFree86 4.0.
-+xterm-xf86-v40|xterm terminal emulator (XFree86 4.0 Window System),
-+ npc,
-+ kDC=\E[3;5~, kEND=\EO5F, kHOM=\EO5H, kIC=\E[2;5~,
-+ kLFT=\EO5D, kNXT=\E[6;5~, kPRV=\E[5;5~, kRIT=\EO5C, ka1@,
-+ ka3@, kb2=\EOE, kc1@, kc3@, kcbt=\E[Z, kdch1=\E[3~, kend=\EOF,
-+ kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S,
-+ kf17=\E[15;2~, kf18=\E[17;2~, kf19=\E[18;2~,
-+ kf20=\E[19;2~, kf21=\E[20;2~, kf22=\E[21;2~,
-+ kf23=\E[23;2~, kf24=\E[24;2~, kf25=\EO5P, kf26=\EO5Q,
-+ kf27=\EO5R, kf28=\EO5S, kf29=\E[15;5~, 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=\EO6P,
-+ kf38=\EO6Q, kf39=\EO6R, kf40=\EO6S, 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~, khome=\EOH, rmcup=\E[?1049l,
-+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-+ smcup=\E[?1049h, use=xterm-xf86-v333,
-
--screen-256color-s|GNU Screen with 256 colors and status line,
-- ccc@,
-- initc@, use=xterm+256color, use=screen-s,
-+# This version was released in XFree86 4.3.
-+xterm-xf86-v43|xterm terminal emulator (XFree86 4.3 Window System),
-+ kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~,
-+ kLFT=\E[1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C,
-+ kbeg@,
-+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ use=xterm-xf86-v40,
-
--screen-256color-bce|GNU Screen with 256 colors and BCE,
-- ccc@,
-- initc@, use=xterm+256color, use=screen-bce,
-+# 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, indn=\E[%p1%dS,
-+ rin=\E[%p1%dT, use=xterm-xf86-v43,
-
--screen-256color-bce-s|GNU Screen with 256 colors, BCE, and status line,
-- bce, ccc@,
-- initc@, use=xterm+256color, use=screen-s,
-+xterm-xfree86|xterm terminal emulator (XFree86),
-+ use=xterm-xf86-v44,
-
--# ======================================================================
-+# This version reflects the current xterm features.
-+xterm-new|modern xterm terminal emulator,
-+ npc,
-+ indn=\E[%p1%dS, kb2=\EOE, kcbt=\E[Z, kent=\EOM,
-+ rin=\E[%p1%dT, use=xterm+pcfkeys, use=xterm+tmux,
-+ use=xterm-basic,
-
--# Read the fine manpage:
--# When screen tries to figure out a terminal name for
--# itself, it first looks for an entry named "screen.<term>",
--# where <term> is the contents of your $TERM variable. If
--# no such entry exists, screen tries "screen" (or "screen-w"
--# if the terminal is wide (132 cols or more)). If even this
--# entry cannot be found, "vt100" is used as a substitute.
-+# This fragment is for people who cannot agree on what the backspace key
-+# should send.
-+xterm+kbs|fragment for backspace key,
-+ kbs=^H,
- #
--# Notwithstanding the manpage, screen uses its own notion of the termcap
--# and some keys from "screen.<term>" are ignored. Here is an entry which
--# covers those (tested with screen 4.00.02) -TD
--screen+fkeys|function-keys according to screen,
-- kend=\E[4~, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kfnd@,
-- khome=\E[1~, kslt@,
-+# This fragment describes as much of XFree86 xterm's "pc-style" function
-+# keys as will fit into terminfo's 60 function keys.
-+# From ctlseqs.ms:
-+# Code Modifiers
-+# ---------------------------------
-+# 2 Shift
-+# 3 Alt
-+# 4 Shift + Alt
-+# 5 Control
-+# 6 Shift + Control
-+# 7 Alt + Control
-+# 8 Shift + Alt + Control
-+# ---------------------------------
-+# The meta key may also be used as a modifier in this scheme, adding another
-+# bit to the parameter.
-+xterm+pcfkeys|fragment for PC-style fkeys,
-+ use=xterm+app, use=xterm+pcf2, use=xterm+pcc2,
-+ use=xterm+pce2,
- #
--# Here are a few customized entries which are useful -TD
-+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,
-+
-+xterm+app|fragment with cursor keys in application mode,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\EOF,
-+ khome=\EOH,
- #
--# Notes:
--# (a) screen does not support invis.
--# (b) screen's implementation of bw is incorrect according to tack.
--# (c) screen appears to hardcode the strings for khome/kend, making it
--# necessary to override the "use=" clause's values (screen+fkeys).
--# (d) screen sets $TERMCAP to a termcap-formatted copy of the 'screen' entry,
--# which is NOT the same as the terminfo screen.<term>.
--# (e) when screen finds one of these customized entries, it sets $TERM to
--# match. Hence, no "screen.xterm" entry is provided, since that would
--# create heartburn for people running remote xterm's.
-+# The "PC-style" modifier scheme was introduced in xterm patch #94 (1999/3/27)
-+# and revised in patch #167 (2002/8/24). Some other terminal emulators copied
-+# the earlier scheme, as noted in the "use=" clauses in this file.
- #
--# xterm (-xfree86 or -r6) does not normally support kIC, kNXT and kPRV
--# since the default translations override the built-in keycode
--# translation. They are suppressed here to show what is tested by tack.
--screen.xterm-xfree86|screen.xterm-new|screen customized for modern xterm,
-- bce@, bw,
-- invis@, kIC@, kNXT@, kPRV@, meml@, memu@,
-- sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m,
-- use=screen+fkeys, use=xterm-new,
--# xterm-r6 does not really support khome/kend unless it is propped up by
--# the translations resource.
--screen.xterm-r6|screen customized for X11R6 xterm,
-- bw, use=screen+fkeys, use=xterm-r6,
--# Color applications running in screen and TeraTerm do not play well together
--# on Solaris because Sun's curses implementation gets confused.
--screen.teraterm|disable ncv in teraterm,
-- ncv#127,
-- 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,
-- use=screen+fkeys, use=screen,
--# Other terminals
--screen.rxvt|screen in rxvt,
-- bw, XT,
-- cvvis@, flash@, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-- kcuu1=\EOA, use=screen+fkeys, use=vt100+enq,
-- use=rxvt+pcfkeys, use=vt220+keypad, use=screen,
--screen.Eterm|screen in Eterm,
-- use=screen+fkeys, use=Eterm,
--screen.mrxvt|screen in mrxvt,
-- use=screen+fkeys, use=mrxvt,
--screen.vte|screen in any VTE-based terminal,
-- use=screen+fkeys, use=vte,
--screen.gnome|screen in GNOME Terminal,
-- use=screen+fkeys, use=gnome,
--screen.konsole|screen in KDE console window,
-- use=screen+fkeys, use=konsole,
--# fix the backspace key
--screen.linux|screen in linux console,
-- bw,
-- kbs=\177, kcbt@, use=screen+fkeys, use=screen,
--screen.mlterm|screen in mlterm,
-- use=screen+fkeys, use=mlterm,
--
--# The default "screen" entry is reasonably portable, but not optimal for the
--# most widely-used terminal emulators. The "bce" capability is supported in
--# screen since 3.9.13, and when used, will require fewer characters to be sent
--# to the terminal for updates.
-+# The original assignments from patch #94 for cursor-keys had some technical
-+# issues:
- #
--# If you are using only terminals which support bce, then you can use this
--# feature in your screen configuration.
-+# A parameter for a function-key to represent a modifier is just more
-+# bits. But for a cursor-key it may change the behavior of the
-+# application. For instance, emacs decodes the first parameter of a
-+# cursor-key as a repeat count.
- #
--# Adding these lines to your ".screenrc" file will allow using these customized
--# entries:
--# term screen-bce
--# bce on
--# defbce on
--screen-bce.xterm-new|screen optimized for modern xterm,
-- bce,
-- ech@, use=screen.xterm-new,
--screen-bce.rxvt|screen optimized for rxvt,
-- bce,
-- ech@, use=screen.rxvt,
--screen-bce.Eterm|screen optimized for Eterm,
-- bce,
-- ech@, use=screen.Eterm,
--screen-bce.mrxvt|screen optimized for mrxvt,
-- bce,
-- ech@, use=screen.mrxvt,
--screen-bce.gnome|screen optimized for GNOME-Terminal,
-- bce,
-- ech@, use=screen.gnome,
--screen-bce.konsole|screen optimized for KDE console window,
-- bce,
-- ech@, use=screen.konsole,
--screen-bce.linux|screen optimized for linux console,
-- bce,
-- ech@, use=screen.linux,
--screen-bce.mlterm|screen optimized for mlterm,
-- bce,
-- ech@, use=screen.mlterm,
-+# A parameterized string should (really) not begin with SS3 (\EO).
-+# Rather, CSI (\E[) should be used.
-+#
-+# For these reasons, the original assignments were deprecated. For
-+# compatibility reasons, they are still available as a setting of xterm's
-+# modifyCursorKeys resource. These fragments list the modified cursor-keys
-+# that might apply to xterm+pcfkeys with different values of that resource.
-+xterm+pcc3|fragment with modifyCursorKeys:3,
-+ kLFT=\E[>1;2D, kRIT=\E[>1;2C, kind=\E[>1;2B,
-+ kri=\E[>1;2A, kDN=\E[>1;2B, kDN3=\E[>1;3B, kDN4=\E[>1;4B,
-+ kDN5=\E[>1;5B, kDN6=\E[>1;6B, kDN7=\E[>1;7B,
-+ kLFT3=\E[>1;3D, kLFT4=\E[>1;4D, kLFT5=\E[>1;5D,
-+ kLFT6=\E[>1;6D, kLFT7=\E[>1;7D, kRIT3=\E[>1;3C,
-+ kRIT4=\E[>1;4C, kRIT5=\E[>1;5C, kRIT6=\E[>1;6C,
-+ kRIT7=\E[>1;7C, kUP=\E[>1;2A, kUP3=\E[>1;3A,
-+ kUP4=\E[>1;4A, kUP5=\E[>1;5A, kUP6=\E[>1;6A,
-+ kUP7=\E[>1;7A,
-
--screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols,
-- cols#132, use=screen,
-+xterm+pcc2|fragment with modifyCursorKeys:2,
-+ kLFT=\E[1;2D, kRIT=\E[1;2C, kind=\E[1;2B, kri=\E[1;2A,
-+ kDN=\E[1;2B, kDN3=\E[1;3B, kDN4=\E[1;4B, kDN5=\E[1;5B,
-+ kDN6=\E[1;6B, kDN7=\E[1;7B, kLFT3=\E[1;3D, kLFT4=\E[1;4D,
-+ kLFT5=\E[1;5D, kLFT6=\E[1;6D, kLFT7=\E[1;7D,
-+ kRIT3=\E[1;3C, kRIT4=\E[1;4C, kRIT5=\E[1;5C,
-+ kRIT6=\E[1;6C, kRIT7=\E[1;7C, kUP=\E[1;2A, kUP3=\E[1;3A,
-+ kUP4=\E[1;4A, kUP5=\E[1;5A, kUP6=\E[1;6A, kUP7=\E[1;7A,
-
--screen2|old VT 100/ANSI X3.64 virtual terminal,
-- cols#80, it#8, lines#24,
-- cbt=\E[Z, clear=\E[2J\E[H, cr=^M, 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,
-- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J,
-- el=\E[K, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=, il=\E[%p1%dL,
-- il1=\E[L, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-- kcuu1=\EA, kf0=\E~, kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV,
-- kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\E0I, khome=\EH,
-- nel=^M^J, rc=\E8, ri=\EM, rmir=\E[4l, rmso=\E[23m,
-- rmul=\E[24m, rs1=\Ec, sc=\E7, sgr0=\E[m, smir=\E[4h,
-- smso=\E[3m, smul=\E[4m, tbc=\E[3g,
--# (screen3: removed unknown ":xv:LP:G0:" -- esr)
--screen3|older VT 100/ANSI X3.64 virtual terminal,
-- km, mir, msgr,
-- cols#80, it#8, lines#24,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-- cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
-- 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@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=^H, kcub1=\EOD,
-- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ,
-- kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM,
-- rmir=\E[4l, rmkx=\E>, rmso=\E[23m, rmul=\E[24m, rs1=\Ec,
-- sc=\E7, sgr0=\E[m, smir=\E[4h, smkx=\E=, smso=\E[3m,
-- smul=\E[4m, tbc=\E[3g,
-+xterm+pcc1|fragment with modifyCursorKeys:1,
-+ kLFT=\E[2D, kRIT=\E[2C, kind=\E[2B, kri=\E[2A, kDN=\E[2B,
-+ kDN3=\E[3B, kDN4=\E[4B, kDN5=\E[5B, kDN6=\E[6B, kDN7=\E[7B,
-+ kLFT3=\E[3D, kLFT4=\E[4D, kLFT5=\E[5D, kLFT6=\E[6D,
-+ kLFT7=\E[7D, kRIT3=\E[3C, kRIT4=\E[4C, kRIT5=\E[5C,
-+ kRIT6=\E[6C, kRIT7=\E[7C, kUP=\E[2A, kUP3=\E[3A,
-+ kUP4=\E[4A, kUP5=\E[5A, kUP6=\E[6A, kUP7=\E[7A,
-+
-+xterm+pcc0|fragment with modifyCursorKeys:0,
-+ kLFT=\EO2D, kRIT=\EO2C, kind=\EO2B, kri=\EO2A, kDN=\EO2B,
-+ kDN3=\EO3B, kDN4=\EO4B, kDN5=\EO5B, kDN6=\EO6B, kDN7=\EO7B,
-+ kLFT3=\EO3D, kLFT4=\EO4D, kLFT5=\EO5D, kLFT6=\EO6D,
-+ kLFT7=\EO7D, kRIT3=\EO3C, kRIT4=\EO4C, kRIT5=\EO5C,
-+ kRIT6=\EO6C, kRIT7=\EO7C, kUP=\EO2A, kUP3=\EO3A,
-+ kUP4=\EO4A, kUP5=\EO5A, kUP6=\EO6A, kUP7=\EO7A,
-
--# Francesco Potorti <F.Potorti@cnuce.cnr.it>:
--# NCSA telnet is one of the most used telnet clients for the Macintosh. It has
--# been maintained until recently by the National Center for Supercomputer
--# Applications, and it is feature rich, stable and free. It can be downloaded
--# from www.ncsa.edu. This terminfo description file is based on xterm-vt220,
--# xterm+sl, and the docs at NCSA. It works well.
- #
--# NCSA Telnet 2.6 for Macintosh in vt220 8-bit emulation mode
--# The terminal options should be set as follows:
--# Xterm sequences ON
--# use VT wrap mode ON
--# use Emacs arrow keys OFF
--# CTRL-COMND is Emacs meta ON
--# 8 bit mode ON
--# answerback string: "ncsa-vt220-8"
--# setup keys: all disabled
-+# Here are corresponding fragments from xterm patch #216:
- #
--# Application mode is not used.
-+xterm+pcf0|fragment with modifyFunctionKeys:0,
-+ kf1=\EOP, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
-+ kf13=\EO2P, kf14=\EO2Q, kf15=\EO2R, kf16=\EO2S,
-+ 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=\EO5P, kf26=\EO5Q,
-+ kf27=\EO5R, kf28=\EO5S, 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=\EO6P, kf38=\EO6Q, kf39=\EO6R,
-+ kf4=\EOS, kf40=\EO6S, 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=\EO3P,
-+ kf5=\E[15~, kf50=\EO3Q, kf51=\EO3R, kf52=\EO3S,
-+ 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=\EO4P,
-+ kf62=\EO4Q, kf63=\EO4R, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
- #
--# Other special mappings:
--# Apple VT220
--# HELP Find
--# HOME Insert here
--# PAGEUP Remove
--# DEL Select
--# END Prev Screen
--# PAGEDOWN Next Screen
-+xterm+pcf2|fragment with modifyFunctionKeys:2,
-+ 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~,
- #
--# Though it supports ANSI color, NCSA Telnet uses color to represent blinking
--# text.
-+# Chunks from xterm #230:
-+xterm+pce2|fragment with modifyCursorKeys:2,
-+ kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~,
-+ kNXT=\E[6;2~, kPRV=\E[5;2~, kich1=\E[2~, knp=\E[6~,
-+ kpp=\E[5~, kDC3=\E[3;3~, kDC4=\E[3;4~, kDC5=\E[3;5~,
-+ kDC6=\E[3;6~, kDC7=\E[3;7~, kEND3=\E[1;3F, kEND4=\E[1;4F,
-+ kEND5=\E[1;5F, kEND6=\E[1;6F, kEND7=\E[1;7F,
-+ kHOM3=\E[1;3H, kHOM4=\E[1;4H, kHOM5=\E[1;5H,
-+ kHOM6=\E[1;6H, kHOM7=\E[1;7H, kIC3=\E[2;3~, kIC4=\E[2;4~,
-+ kIC5=\E[2;5~, kIC6=\E[2;6~, kIC7=\E[2;7~, kNXT3=\E[6;3~,
-+ kNXT4=\E[6;4~, kNXT5=\E[6;5~, kNXT6=\E[6;6~,
-+ kNXT7=\E[6;7~, kPRV3=\E[5;3~, kPRV4=\E[5;4~,
-+ kPRV5=\E[5;5~, kPRV6=\E[5;6~, kPRV7=\E[5;7~,
-+ use=xterm+edit,
-+
-+xterm+edit|fragment for 6-key editing-keypad,
-+ kdch1=\E[3~, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
-+ use=xterm+pc+edit,
-+
-+xterm+pc+edit|fragment for pc-style editing keypad,
-+ kend=\E[4~, khome=\E[1~,
-+
-+xterm+vt+edit|fragment for vt220-style editing keypad,
-+ kfnd=\E[1~, kslt=\E[4~,
-+
- #
--# The status-line manipulation is a mapping of the xterm-compatible control
--# sequences for setting the window-title. So you must use tsl and fsl in
--# pairs, since the latter ends the string that is loaded to the window-title.
--ncsa-m|ncsa-vt220-8|NCSA Telnet 2.6 for Macintosh in vt220-8 mode,
-- am, hs, km, mir, msgr, xenl,
-+# 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
-+# is shown here (because that is used in mrxvt and mlterm):
-+xterm+r6f2|xterm with oldFunctionKeys and modifyFunctionKeys:2,
-+ kf1=\E[11~, kf13=\E[11;2~, kf14=\E[12;2~, kf15=\E[13;2~,
-+ kf16=\E[14;2~, kf2=\E[12~, kf25=\E[11;5~, kf26=\E[12;5~,
-+ kf27=\E[13;5~, kf28=\E[14;5~, kf3=\E[13~, kf37=\E[11;6~,
-+ kf38=\E[12;6~, kf39=\E[13;6~, kf4=\E[14~, kf40=\E[14;6~,
-+ kf49=\E[11;3~, kf50=\E[12;3~, kf51=\E[13;3~,
-+ kf52=\E[14;3~, kf61=\E[11;4~, kf62=\E[12;4~,
-+ kf63=\E[13;4~, use=xterm+pcf2,
-+#
-+# 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,
-+ colors#8, cols#80, it#8, lines#24, pairs#64,
- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
-- clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M,
-+ 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=^M,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=^J, 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]0;\007, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0,
-- flash=\E[?5h\E[?5l, fsl=^G, home=\E[H, ht=^I, hts=\EH,
-- ich=\E[%p1%d@, if=/usr/share/tabset/vt100,
-- il=\E[%p1%dL, il1=\E[L, ind=\n$<150*>,
-- is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>, kbs=^H,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\E[4~, kend=\E[5~, kf1=\E[17~, kf10=\E[28~,
-- kf11=\E[29~, kf12=\E[31~, kf13=\E[32~, kf14=\E[33~,
-- kf15=\E[34~, kf2=\E[18, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~,
-- kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khlp=\E[1~,
-- khome=\E[2~, knp=\E[6~, kpp=\E[3~, mc4=\E[4i, mc5=\E[5i,
-- rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EM,
-- rmacs=\E(B, rmam=\E[?7l, rmcup=\E[2J\E8, rmir=\E[4l,
-- rmso=\E[27m, rmul=\E[24m,
-- rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;4;6l\E[4l\E>, 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%;,
-- 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, tsl=\E]0;,
-- u8=\E[?62;1;6c, 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,
-- hs@,
-- dsl@, fsl@, tsl@, use=ncsa,
--ncsa-m-ns|NCSA Telnet 2.6 for Macintosh in vt220-8 mode,
-- hs@,
-- dsl@, fsl@, tsl@, use=ncsa-m,
--# alternate -TD:
--# The documented function-key mapping refers to the Apple Extended Keyboard
--# (e.g., NCSA Telnet's F1 corresponds to a VT220 F6). We use the VT220-style
--# codes, however, since the numeric keypad (VT100) PF1-PF4 are available on
--# some keyboards and many applications require these as F1-F4.
--#
--ncsa-vt220|NCSA Telnet using vt220-compatible function keys,
-- 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~, use=ncsa,
--
--#### Pilot Pro Palm-Top
--#
--# Termcap for Top Gun Telnet and SSH on the Palm Pilot.
--# http://www.ai/~iang/TGssh/
--pilot|tgtelnet|Top Gun Telnet on the Palm Pilot Professional,
-- OTbs, am, xenl,
-- cols#39, lines#16,
-- bel=^G, clear=\Ec, cr=^M, cub1=^H, cud1=^J,
-- cup=\Em%p1%{32}%+%c%p2%{32}%+%c, home=\Em\s\s, ht=^I,
-- ind=^J, kbs=^H, kcub1=^H, kcud1=^J, knp=^L, kpp=^K, nel=\Em~\s,
-- rmso=\EB, smso=\Eb,
--
--# From: Federico Bianchi <bianchi@www.arte.unipi.it>
--# These entries are for the Embeddable Linux Kernel System (ELKS)
--# project - an heavily stripped down Linux to be run on 16 bit
--# boxes or, eventually, to be used in embedded systems - and have been
--# adapted from the stock ELKS termcap. The project itself looks stalled,
--# and the latest improvements I know of date back to March 2000.
--#
--# To cope with the ELKS dumb console I added an "elks-glasstty" entry;
--# as an added bonus, this deals with all the capabilities common to
--# both VT52 and ANSI (or, eventually, "special") modes.
--
--elks-glasstty|ELKS glass-TTY capabilities,
-- OTbs, am,
-- cols#80, it#8, lines#25,
-- bel=^G, cr=^M, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J,
-- nel=^M^J,
-+ 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=^J, 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,
-+ ritm=\E[23m, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l,
-+ rmir=\E[4l, rmkx=\E[?1l\E>, rmm=\E[?1034l, 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}%=%t3%e%p1%d%;m,
-+ setf=\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
-+ 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, sitm=\E[3m, smacs=\E(0, smam=\E[?7h,
-+ smcup=\E[?1049h, 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[3;J, use=ansi+pp, use=xterm+kbs,
-+ use=vt100+enq,
-
--elks-vt52|ELKS vt52 console,
-- clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\EK,
-- home=\EH, use=elks-glasstty,
-+# From: David J. MacKenzie <djm@va.pubnix.com>, 14 Nov 1997
-+# In retrospect, something like xterm-r6 was intended here -TD
-+xterm-xi|xterm on XI Graphics Accelerated X under BSD/OS 3.1,
-+ rmso=\E[m, rmul=\E[m, use=xterm-xf86-v33,
-
--elks-ansi|ELKS ANSI console,
-- clear=\E[H\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H,
-- rmso=\E[m, smso=\E[7m, use=elks-glasstty,
-+# 16-colors is one of the variants of XFree86 3.3 xterm, updated for 4.0 (T.Dickey)
-+# If configured to support 88- or 256-colors (which is fairly common in 2009),
-+# 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}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
-+ use=ibm+16color, use=xterm-new,
-
--# As a matter of fact, ELKS 0.0.83 on PCs defaults to ANSI emulation
--# instead of VT52, but the "elks" entry still refers to the latter.
-+# 256-colors is a compile-time feature of XFree86 xterm beginning with
-+# patch #111 (1999/7/10) -TD
-+xterm+256color|xterm 256-color feature,
-+ ccc,
-+ colors#256, pairs#32767,
-+ initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
-+ 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,
-+ setb@, setf@,
-
--elks|default ELKS console,
-- use=elks-vt52,
-+xterm+256setaf|xterm 256-color (set-only),
-+ ccc@,
-+ colors#256, pairs#32767,
-+ initc@,
-+ 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,
-+ setb@, setf@,
-
--# Project SIBO (for Psion 3 palmtops) console is identical to the ELKS
--# one but in screen size
-+# 88-colors is a compile-time feature of XFree86 xterm beginning with
-+# patch #115 (1999/9/18) -TD
-+#
-+# Note that the escape sequences used are the same as for 256-colors - xterm
-+# has a different table of default color resource values. If built for
-+# 256-colors, it can still handle an 88-color palette by using the initc
-+# capability.
-+#
-+# At this time (2007/7/14), except for rxvt 2.7.x, none of the other terminals
-+# which support the xterm+256color feature support the associated initc
-+# capability. So it is cancelled in the entries which use this and/or the
-+# xterm+256color block.
-+#
-+# 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,
-+ colors#88, pairs#7744, use=xterm+256color,
-
--sibo|ELKS SIBO console,
-- cols#61, it#8, lines#20, use=elks-vt52,
-+# These variants of XFree86 3.9.16 xterm are built as a configure option.
-+xterm-256color|xterm with 256 colors,
-+ use=xterm+256color, use=xterm-new,
-+xterm-88color|xterm with 88 colors,
-+ use=xterm+88color, use=xterm-256color,
-
--######## COMMERCIAL WORKSTATION CONSOLES
--#
-+# This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who
-+# asked for some of xterm's advanced features to be added to its terminfo
-+# entry. It defines extended capabilities not found in standard terminfo or
-+# termcap. These are useful in tmux, for instance, hence the name.
-+#
-+# One caveat in adding extended capabilities in ncurses is that if the names
-+# are longer than two characters, then they will not be visible through the
-+# termcap interface.
-+#
-+# Ms modifies the selection/clipboard. Its parameters are
-+# p1 = the storage unit (clipboard, selection or cut buffer)
-+# p2 = the base64-encoded clipboard content.
-+#
-+# Ss is used to set the cursor style as described by the DECSCUSR
-+# function to a block or underline.
-+# Se resets the cursor style to the terminal power-on default.
-+#
-+# Cs and Cr set and reset the cursor colour.
-+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,
-
--#### Alpha consoles
-+# 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.
-+# To use it, your decTerminalID resource must be set to 200 or above.
-+#
-+# HTS \E H \210
-+# RI \E M \215
-+# SS3 \E O \217
-+# CSI \E [ \233
- #
-+xterm-8bit|xterm terminal emulator 8-bit controls (X Window System),
-+ OTbs, am, bce, km, mc5i, mir, msgr, npc, xenl, AX,
-+ colors#8, cols#80, it#8, lines#24, pairs#64,
-+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\2335m, bold=\2331m, cbt=\233Z,
-+ civis=\233?25l, clear=\233H\2332J,
-+ cnorm=\233?25l\233?25h, cr=^M, csr=\233%i%p1%d;%p2%dr,
-+ cub=\233%p1%dD, cub1=^H, cud=\233%p1%dB, cud1=^J,
-+ cuf=\233%p1%dC, cuf1=\233C, cup=\233%i%p1%d;%p2%dH,
-+ cuu=\233%p1%dA, cuu1=\233A, cvvis=\233?12;25h,
-+ dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M,
-+ ech=\233%p1%dX, ed=\233J, el=\233K, el1=\2331K,
-+ flash=\233?5h$<100/>\233?5l, home=\233H,
-+ hpa=\233%i%p1%dG, ht=^I, hts=\210, ich=\233%p1%d@,
-+ il=\233%p1%dL, il1=\233L, ind=^J, invis=\2338m,
-+ is2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8,
-+ ka1=\217w, ka3=\217u, kb2=\217y, kbeg=\217E, kc1=\217q,
-+ kc3=\217s, kcbt=\233Z, kcub1=\217D, kcud1=\217B,
-+ kcuf1=\217C, kcuu1=\217A, kdch1=\2333~, kend=\2334~,
-+ kent=\217M, kf1=\23311~, kf10=\23321~, kf11=\23323~,
-+ kf12=\23324~, kf13=\23325~, kf14=\23326~, kf15=\23328~,
-+ kf16=\23329~, kf17=\23331~, kf18=\23332~, kf19=\23333~,
-+ kf2=\23312~, kf20=\23334~, kf3=\23313~, kf4=\23314~,
-+ kf5=\23315~, kf6=\23317~, kf7=\23318~, kf8=\23319~,
-+ kf9=\23320~, khome=\2331~, kich1=\2332~, kmous=\233M,
-+ knp=\2336~, kpp=\2335~, mc0=\233i, mc4=\2334i, mc5=\2335i,
-+ meml=\El, memu=\Em, op=\23339;49m, rc=\E8, rev=\2337m,
-+ ri=\215, rmacs=\E(B, rmam=\233?7l, rmcup=\233?1049l,
-+ rmir=\2334l, rmkx=\233?1l\E>, rmso=\23327m, rmul=\23324m,
-+ rs1=\Ec,
-+ rs2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8,
-+ sc=\E7, setab=\2334%p1%dm, setaf=\2333%p1%dm,
-+ setb=\2334%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
-+ setf=\2333%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
-+ sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
-+ sgr0=\2330m\E(B, smacs=\E(0, smam=\233?7h,
-+ smcup=\233?1049h, smir=\2334h, smkx=\233?1h\E=,
-+ smso=\2337m, smul=\2334m, tbc=\2333g, u6=\233[%i%d;%dR,
-+ u7=\E[6n, u8=\233[?1;2c, u9=\E[c, vpa=\233%i%p1%dd,
-+ use=xterm+kbs,
-
--# This is from the OSF/1 Release 1.0 termcap file
--pccons|pcconsole|ANSI (mostly) Alpha PC console terminal emulation,
-- am, xon,
-- cols#80, lines#25,
-- bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
-- el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L, kbs=^H,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H,
-- nel=^M^J, rev=\E[7m, rmso=\E[m, sgr0=\E[m, smso=\E[7m,
-+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,
-
--#### Sun consoles
-+xterm-sco|xterm with SCO function keys,
-+ kbeg=\E[E, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\177, kend=\E[F, kf1=\E[M, kf10=\E[V, kf11=\E[W,
-+ kf12=\E[X, kf13=\E[Y, kf14=\E[Z, kf15=\E[a, kf16=\E[b,
-+ kf17=\E[c, kf18=\E[d, kf19=\E[e, kf2=\E[N, kf20=\E[f,
-+ kf21=\E[g, kf22=\E[h, kf23=\E[i, kf24=\E[j, kf25=\E[k,
-+ kf26=\E[l, kf27=\E[m, kf28=\E[n, kf29=\E[o, kf3=\E[O,
-+ kf30=\E[p, kf31=\E[q, kf32=\E[r, kf33=\E[s, kf34=\E[t,
-+ kf35=\E[u, kf36=\E[v, kf37=\E[w, kf38=\E[x, kf39=\E[y,
-+ kf4=\E[P, kf40=\E[z, kf41=\E[@, kf42=\E[[, kf43=\E[\\,
-+ 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,
-+
-+# 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
-+# sunKeyboard resource to true:
-+# + maps the editing keypad
-+# + interprets control-function-key as a second array of keys, so a
-+# 12-fkey keyboard can support vt220's 20-fkeys.
-+# + maps numeric keypad "+" to ",".
-+# + uses DEC-style control sequences for the application keypad.
- #
-+xterm-vt220|xterm emulating vt220,
-+ 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,
-
--# :is1: resets scrolling region in case a previous user had used "tset vt100"
--oldsun|Sun Microsystems Workstation console,
-- OTbs, am, km, mir, msgr,
-- cols#80, it#8, lines#34,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=\E[B, 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, ed=\E[J, el=\E[K, ht=^I,
-- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- is1=\E[1r, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H,
-- rmso=\E[m, sgr0=\E[m, smso=\E[7m,
--# From: Alexander Lukyanov <lav@video.yars.free.net>, 14 Nov 1995
--# <lines> capability later corrected by J.T. Conklin <jtc@cygnus.com>
--# SGR 1, 4 aren't supported - removed bold/underline (T.Dickey 17 Jan 1998)
--sun-il|Sun Microsystems console with working insert-line,
-- am, km, msgr,
-- cols#80, lines#34,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^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, ed=\E[J, el=\E[K, ht=^I,
-- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- kb2=\E[218z, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kdch1=\177, kend=\E[220z, kf1=\E[224z,
-- kf10=\E[233z, kf11=\E[234z, kf12=\E[235z, kf2=\E[225z,
-- kf3=\E[226z, kf4=\E[227z, kf5=\E[228z, kf6=\E[229z,
-- kf7=\E[230z, kf8=\E[231z, kf9=\E[232z, khome=\E[214z,
-- knp=\E[222z, kopt=\E[194z, kpp=\E[216z, kres=\E[193z,
-- kund=\E[195z, rev=\E[7m, rmso=\E[m, rmul@, rs2=\E[s,
-- sgr=\E[0%?%p1%p3%|%t;7%;m, sgr0=\E[m, smso=\E[7m,
-- u8=\E[1t, u9=\E[11t,
--# On some versions of CGSIX framebuffer firmware (SparcStation 5), <il1>/<il>
--# flake out on the last line. Unfortunately, without them the terminal has no
--# way to scroll.
--sun-cgsix|sun-ss5|Sun SparcStation 5 console,
-- il@, il1@, use=sun-il,
--# If you are using an SS5, change the sun definition to use sun-ss5.
--sun|sun1|sun2|Sun Microsystems Inc. workstation console,
-- use=sun-il,
-+xterm-vt52|xterm emulating dec vt52,
-+ cols#80, it#8, lines#24,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, clear=\EH\EJ, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC,
-+ cup=\EY%p1%' '%+%c%p2%' '%+%c, cuu1=\EA, ed=\EJ, el=\EK,
-+ home=\EH, ht=^I, ind=^J, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-+ kcuu1=\EA, nel=^M^J, ri=\EI, rmacs=\EG, smacs=\EF,
-+ use=xterm+kbs,
-
--# From: <john@ucbrenoir> Tue Sep 24 13:14:44 1985
--sun-s|Sun Microsystems Workstation window with status line,
-+xterm-noapp|xterm with cursor keys in normal mode,
-+ rmcup@, rmkx=\E>, smcup@, smkx=\E=, use=xterm+noapp,
-+ use=xterm,
-+
-+xterm-24|vs100|xterms|xterm terminal emulator (X Window System),
-+ lines#24, use=xterm-old,
-+
-+# This is xterm for ncurses.
-+xterm|xterm terminal emulator (X Window System),
-+ use=xterm-new,
-+
-+# This entry assumes that xterm's handling of VT100 SI/SO is disabled by
-+# setting the vt100Graphics resource to false.
-+xterm-utf8|xterm with no VT100 line-drawing in UTF-8 mode,
-+ U8#1, use=xterm,
-+
-+# These building-blocks allow access to the X titlebar and icon name as a
-+# status line. There are a few problems in using them in entries:
-+#
-+# a) tsl should have a parameter to denote the column on which to transfer to
-+# the status line.
-+# b) the "0" code for xterm updates both icon-title and window title. Some
-+# window managers such as twm (and possibly window managers descended from
-+# it such as tvtwm, ctwm, and vtwm) track windows by icon-name. Thus, you
-+# don't want to mess with icon-name when using those window managers.
-+#
-+# The extension "TS" is preferable, because it does not accept a parameter.
-+# However, if you are using a non-extended terminfo, "TS" is not visible.
-+xterm+sl|access X title line and icon name,
- hs,
-- dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun,
--sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs,
-+ dsl=\E]0;\007, fsl=^G, tsl=\E]0;, TS=\E]0;,
-+xterm+sl-twm|access X title line (pacify twm-descended window managers),
- hs,
-- dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun-e,
--sun-48|Sun 48-line window,
-- cols#80, lines#48, use=sun,
--sun-34|Sun 34-line window,
-- cols#80, lines#34, use=sun,
--sun-24|Sun 24-line window,
-- cols#80, lines#24, use=sun,
--sun-17|Sun 17-line window,
-- cols#80, lines#17, use=sun,
--sun-12|Sun 12-line window,
-- cols#80, lines#12, use=sun,
--sun-1|Sun 1-line window for sysline,
-- eslok, hs,
-- cols#80, lines#1,
-- dsl=^L, fsl=\E[K, tsl=^M, use=sun,
--sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character,
-- ich1@, rmir@, smir@, use=sun,
--sun-c|sun-cmd|Sun Microsystems Workstation console with scrollable history,
-- lines#35,
-- rmcup=\E[>4h, smcup=\E[>4l, use=sun,
--sun-type4|Sun Workstation console with type 4 keyboard,
-- kcub1=\E[217z, kcud1=\E[221z, kcuf1=\E[219z,
-- kcuu1=\E[215z, use=sun-il,
-+ dsl=\E]2;\007, fsl=^G, tsl=\E]2;, TS=\E]2;,
-
--# Most of the current references to sun-color are from users wondering why this
--# is the default on install. Details from reading the wscons manpage, adding
--# cub, etc., here (rather than in the base sun-il entry) since it is not clear
--# when those were added -TD (2005-05-28)
--#
--# According to wscons manpage, color is supported only on IA systems.
--# Sun's terminfo entry documents bold and smul/rmul capabilities, but wscons
--# does not list these. It also sets ncv#3, however that corresponds to
--# underline and standout.
-+# In contrast, this block can be used for a DEC vt320 and up. There are two
-+# controls used.
- #
--# Since the documentation and terminfo do not agree, see also current code at
--# http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/tem_safe.c
-+# DECSASD (select active status display)
-+# \E[0$} Main display
-+# \E[1$} Status line
-+#
-+# DECSSDT (select status line type)
-+# \E[0$~ No status line
-+# \E[1$~ Indicator status line
-+# \E[2$~ Host-writable status line
-+#
-+# The building block assumes that the terminal always shows something at the
-+# status line (either the indicator, or status line). That is because if no
-+# status line is used, then the terminal makes that line part of the user
-+# window, changing its size without notice.
-+#
-+# Because there is no "esl" (enable status line) capability, the "tsl"
-+# capability ensures that the status line is host-writable. A DEC terminal
-+# will clear the status line when changing from indicator to host-writable
-+# mode.
-+#
-+# Once on the status line, the row part of cursor addressing is ignored. Since
-+# tsl expects a parameter (to specify the column), the shortest addressing that
-+# can be used for this purpose is HPA, e.g., \E[5d to go to column 5.
- #
--# That (actually a different driver which "supports" sun-color) also supports
--# these features:
--# vpa=\E[%i%p1%dd
--# hpa=\E[%i%p1%d`
--# cbt=\E[Z
--# dim=\E[2m
--# blink=\E[5m
--# It supports bold, but not underline -TD (2009-09-19)
--sun-color|Sun Microsystems Workstation console with color support (IA systems),
-- colors#8, ncv#3, pairs#64,
-- cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC,
-- cuu=\E[%p1%dA, home=\E[H, op=\E[0m, 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}%=%t3%e%p1%d%;m,
-- use=sun,
-+dec+sl|DEC VTxx status line,
-+ eslok, hs,
-+ dsl=\E[1$~, fsl=\E[0$}, tsl=\E[2$~\E[1$}\E[%i%p1%d`,
-
--#### Iris consoles
- #
--
--# (wsiris: this had extension capabilities
--# :HS=\E7F2:HE=\E7F7:\
--# :CT#2:CZ=*Bblack,red,green,yellow,blue,magenta,cyan,*Fwhite:
--# 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),
-- OTbs, OTnc, OTpt, am,
-- OTkn#3, cols#80, it#8, lines#40,
-- OTnl=\EB, bel=^G, clear=\Ev, cnorm=\E>, cub1=^H, cud1=\EB,
-- cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA,
-- cvvis=\E;, dim=\E7F2, dl1=\EM, ed=\EJ, el=\EK,
-- flash=\E7F4\E7B1\013\E7F7\E7B0, home=\EH, ht=^I, il1=\EL,
-- ind=^J, is2=\E7B0\E7F7\E7C2\E7R3, kcub1=\ED, kcud1=\EB,
-- kcuf1=\EC, kcuu1=\EA, kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3,
-- kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, ri=\EI,
-- rmso=\E0@, rmul=\E7R3\E0@, sgr0=\E7F7, smso=\E9P,
-- smul=\E7R2\E9P,
--
--#### NeWS consoles
--#
--# Console terminal windows under the NeWS (Sun's Display Postscript windowing
--# environment). Note: these have nothing to do with Sony's News workstation
--# line.
-+# The following xterm variants don't depend on your base version
- #
-+# xterm with bold instead of underline
-+xterm-bold|xterm terminal emulator (X11R6 Window System) standout w/bold,
-+ sgr=%?%p9%t\016%e\017%;B\E[0%?%p6%t;1%;%?%p2%t;1%;%?%p1%p3%|%t;7%;m,
-+ smso=\E[7m, smul=\E[1m, use=xterm-old,
-
--# Entry for NeWS's psterm from Eric Messick & Hugh Daniel
--# (psterm: unknown ":sl=\EOl:el=\ENl:" removed -- esr)
--psterm|psterm-basic|NeWS psterm-80x34,
-- OTbs, am, hs, km, ul,
-- cols#80, it#8, lines#34,
-- blink=\EOb, bold=\EOd, clear=^L, csr=\EE%p1%d;%p2%d;,
-- cub1=\ET, cud1=\EP, cuf1=\EV, cup=\E%p1%d;%p2%d;, cuu1=\EY,
-- dch1=\EF, dl1=\EK, ed=\EB, el=\EC, flash=\EZ, fsl=\ENl,
-- home=\ER, ht=^I, il1=\EA, ind=\EW, is1=\EN*, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, ll=\EU, rc=^\, rev=\EOr,
-- ri=\EX, rmcup=\ENt, rmir=\ENi, rmso=\ENo, rmul=\ENu, sc=^],
-- sgr0=\EN*, smcup=\EOt, smir=\EOi, smso=\EOo, smul=\EOu,
-- tsl=\EOl,
--psterm-96x48|NeWS psterm 96x48,
-- cols#96, lines#48, use=psterm,
--psterm-90x28|NeWS psterm 90x28,
-- cols#90, lines#28, use=psterm,
--psterm-80x24|NeWS psterm 80x24,
-- cols#80, lines#24, use=psterm,
--# This is a faster termcap for psterm. Warning: if you use this termcap,
--# some control characters you type will do strange things to the screen.
--# (psterm-fast: unknown ":sl=^Ol:el=^Nl:" -- esr)
--psterm-fast|NeWS psterm fast version (flaky ctrl chars),
-- OTbs, am, hs, km, ul,
-- cols#80, it#8, lines#34,
-- blink=^Ob, bold=^Od, clear=^L, csr=\005%p1%d;%p2%d;,
-- cub1=^T, cud1=^P, cuf1=^V, cup=\004%p1%d;%p2%d;, cuu1=^Y,
-- dch1=^F, dl1=^K, ed=^B, el=^C, flash=^Z, fsl=^Nl, home=^R, ht=^I,
-- il1=^A, ind=^W, is1=^N*, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, ll=^U, rc=^\, rev=^Or, ri=^X, rmcup=^Nt, rmir=^Ni,
-- rmso=^No, rmul=^Nu, sc=^], sgr0=^N*, smcup=^Ot, smir=^Oi,
-- smso=^Oo, smul=^Ou, tsl=^Ol,
-+# See the note on ICH/ICH1 VERSUS RMIR/SMIR near the end of file
-+xterm-nic|xterm with ich/ich1 suppressed for non-curses programs,
-+ ich@, ich1@, use=xterm,
-+# From: Mark Sheppard <kimble@mistral.co.uk>, 4 May 1996
-+xterm1|xterm terminal emulator ignoring the alternate screen buffer,
-+ rmcup@, smcup@, use=xterm,
-
--#### NeXT consoles
--#
--# Use `glasstty' for the Workspace application
--#
-+#### XTERM Mouse
-+# The xterm mouse protocol is used by other terminal emulators.
-+# In this section, two extended capabilities are used to illustrate the mouse
-+# protocol: XM and xm. The "XM" capability is recognized by ncurses to allow
-+# enabling/disabling other mouse protocols. The "xm" capability describes the
-+# mouse response; currently there is no interpreter which would use this
-+# information to make the mouse support completely data-driven.
-+
-+# Here is the "original" xterm mouse protocol.
-+#
-+# First seen in X10.3, February 1986, this likely dates from 1985 based on the
-+# copyright dates in the sources. A comment in charproc.c notes "MIT bogus
-+# sequence", referring to the fact that it does not correspond to a "real"
-+# terminal. The mouse responses for the X10 protocol are sent only for
-+# button-presses.
-+xterm+x10mouse|X10 xterm mouse protocol,
-+ kmous=\E[M, XM=\E[?9%?%p1%{1}%=%th%el%;,
-+ xm=\E[M%p3%' '%+%c%p2%'!'%+%c%p1%'!'%+%c,
-+xterm-x10mouse|X10 xterm mouse,
-+ use=xterm+x10mouse, use=xterm,
-+
-+# Here is the conventional xterm mouse protocol, introduced with X11R1 in
-+# September 1987.
-+#
-+# The mouse responses for the X11 protocol covered button releases, as well as
-+# modifiers:
-+# shift 4
-+# alt/meta 8 (technically the "mod1" mask, because X11 has no such keys)
-+# control 16
-+#
-+# The modifiers are not reflected in this description because as used in xterm
-+# they are normally inaccessible because the translations resources assign
-+# shift and control to other features. However, they are important because
-+# they take up space in the first byte of the response. The other bits of this
-+# byte are used to encode the button number for both presses and releases.
-+# In the X11 protocol, any button-release is encoded with "3" (the lowest 2
-+# bits in the byte). Later work on XFree86 xterm used the remaining 3 bits to
-+# provide additional features, e.g., wheel mouse.
-+#
-+# X11R1's xterm also supported an "emacs" mouse protocol, with final character
-+# "t" or "T", which was activated by double-clicking. The "t" response was
-+# used when the starting/ending positions were the same.
-+#
-+# X11R3 (February 1988) added the highlight/tracking mode.
-+#
-+# X11R4 (December 1989) added the control sequences document, listing the
-+# control sequences for the X10/X11 protocols without descriptions. It also
-+# mentioned the "emacs" ("T") response. Comments in button.c referred to the
-+# X11 protocol as "DEC vt200 compatible", although DEC offered no such terminal.
-+#
-+# X11R5 (November 1993) gave a description of the mouse protocol.
-+#
-+# X11R6 (January 1995) moved the control sequences document out of the xterm
-+# source-directory to xc/doc/specs/xterm, polishing the formatting but adding
-+# no new information.
-+xterm+x11mouse|X11 xterm mouse protocol,
-+ kmous=\E[M, XM=\E[?1000%?%p1%{1}%=%th%el%;,
-+ xm=\E[M%?%p4%t3%e%p3%' '%+%c%;%p2%'!'%+%c%p1%'!'%+%c,
-+xterm-x11mouse|X11 mouse,
-+ use=xterm+x11mouse, use=xterm,
-+
-+# Here is a suggested description of the xterm highlighting protocol.
-+# A more complicated example could be constructed to account for the "t"
-+# response.
-+xterm+x11hilite|X11 xterm mouse protocol with highlight,
-+ kmous=\E[M, XM=\E[?1001%?%p1%{1}%=%th%el%;,
-+ xm=\E[%p7%'!'%+%p6%'!'%+%c%p9%'!'%+%c%p8%'!'%+%c%p2%'!'%+%c%p1%'!'%+%cT,
-+xterm-x11hilite|X11 mouse with highlight,
-+ use=xterm+x11mouse, use=xterm,
-+
-+# The preceding were the sources from X Consortium. Other sources (or patches)
-+# were available. Starting in mid-1995, XFree86 developers collected some of
-+# those changes and began improvements, e.g., to support color. This was, by
-+# the way, around the same time that rxvt developers began implementing color,
-+# though dates (and attributions) are not well documented. I became interested
-+# in xterm in late 1995, and involved in early 1996. To complete the picture,
-+# CDE's dtterm was introduced around the same time, with no mouse protocol -TD
-+
-+# xterm patch #83 (1998/10/7), added Jason Bacon's changes to provide an
-+# "any-event" mouse mode.
-+xterm+sm+1002|xterm any-event mouse,
-+ kmous=\E[M, XM=\E[?1002%?%p1%{1}%=%th%el%;,
-+xterm-1002|xterm any-event mouse,
-+ use=xterm+sm+1002, use=xterm,
-
--# From: Dave Wetzel <dave@turbocat.snafu.de> 22 Dec 1995
--next|NeXT console,
-- am, xt,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H,
-- ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J,
-- rmso=\E[4;1m, sgr0=\E[m, smso=\E[4;2m,
--nextshell|NeXT Shell application,
-- am,
-- cols#80,
-- bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, kbs=^H, kcub1=^H,
-- kcud1=^J, nel=^M^J,
-+xterm+sm+1003|testing xterm-mouse,
-+ kmous=\E[M, XM=\E[?1003%?%p1%{1}%=%th%el%;,
-
--#### Sony NEWS workstations
--#
-+xterm-1003|testing xterm-mouse,
-+ use=xterm+sm+1003, use=xterm,
-
--# (news-unk: this had :KB=news: -- esr)
--news-unk|SONY NEWS vt100 emulator common entry,
-- OTbs, OTpt, am, xenl,
-- cols#80,
-- OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J,
-- cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M,
-- ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-- if=/usr/share/tabset/vt100, il=\E[%p1%dL, il1=\E[L,
-- is2=\E[?7h\E[?1l\E[?3l\E7\E8, kbs=^H, kcub1=\EOD,
-- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOY, kf1=\EOP,
-- kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV,
-- kf8=\EOW, kf9=\EOX, rc=\E8, rev=\E[7m, ri=\EM,
-- rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[r, sc=\E7,
-- sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
--#
--# (news-29: this had :TY=ascii: --esr)
--news-29,
-- lines#29, use=news-unk,
--# (news-29-euc: this had :TY=euc: --esr)
--news-29-euc,
-- use=news-29,
--# (news-29-sjis: this had :TY=sjis: --esr)
--news-29-sjis,
-- use=news-29,
--#
--# (news-33: this had :TY=ascii: --esr)
--news-33,
-- lines#33, use=news-unk,
--# (news-33-euc: this had :TY=euc: --esr)
--news-33-euc,
-- use=news-33,
--# (news-33-sjis: this had :TY=sjis: --esr)
--news-33-sjis,
-- use=news-33,
--#
--# (news-42: this had :TY=ascii: --esr)
--news-42,
-- lines#42, use=news-unk,
--# (news-42-euc: this had :TY=euc: --esr)
--news-42-euc,
-- use=news-42,
--# (news-42-sjis: this had :TY=sjis: --esr)
--news-42-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,
-- OTbs, OTpt, am, xenl,
-- cols#80, vt#3,
-- OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[;H\E[2J,
-- cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-- home=\E[H, ht=^I, if=/usr/share/tabset/vt100, kbs=^H,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP,
-- kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, rev=\E[7m, ri=\EM,
-- rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- 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,
-- OTbs,
-- lines#40,
-- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8,
-- 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,
-- 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,
-- OTbs,
-- lines#40,
-- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8,
-- 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,
-- OTbs,
-- lines#31,
-- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8,
-- use=news-old-unk,
--#
--# (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,
-- OTbs,
-- lines#33,
-- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;33r\E8,
-- 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,
-- OTbs,
-- lines#31,
-- is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8,
-- use=news-old-unk,
--#
--# (news28: this had :DE=^H:, I think that's <OTbs>, and :KB=nws1200: --esr)
--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;28r\E8,
-- use=news-old-unk,
--#
--# (news29: this had :TY=ascii:KB=nws1200:\ --esr)
--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;29r\E8,
-- use=news-old-unk,
--#
--# (news511: this had :TY=sjis: --esr)
--nwp511|nwp-511|nwp-511 vt100,
-- OTbs, OTpt, am, xenl,
-- cols#80, lines#24,
-- clear=\E[;H\E[2J$<20/>, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A$<2/>, dl1=\E[M,
-- ed=\E[J$<30/>, el=\E[K$<3/>,
-- flash=\E[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l,
-- il1=\E[L, is2=\E[?5l\E[?1l\E>\E[?7h\E[?8h, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ,
-- kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\E#W, khome=\E[H,
-- ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>,
-- rs2=\E7\E[r\E8\E[?5l\E[?1l\E>\E[?7h\E[?8h,
-- smso=\E[7m$<2/>, smul=\E[4m$<2/>,
--# (news517: this had :TY=sjis:. --esr)
--nwp517|nwp-517|nwp-517 vt200 80 cols 30 rows,
-- eslok, hs,
-- 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,
--# (news517-w: this had :TY=sjis:. --esr)
--nwp517-w|nwp-517-w|nwp-517 vt200 132 cols 50 rows,
-- eslok, hs,
-- cols#132, lines#50,
-- 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,
-+# xterm patch #116 (1999/9/25) added Stephen P Wall's changes to support DEC
-+# locator mode.
-
--#### Common Desktop Environment
--#
-+# xterm patch #120 (1999/10/28) added my change to support wheel mouse, by
-+# dropping support for the X11 mouse protocol's shift-modifier and using
-+# available bits in the first byte of the response to encode buttons 4 and 5.
-+# xterm patch #126 (2000/2/8) amended that change to avoid conflicting with
-+# older configurations which might have used the obsolete modifiers.
-+
-+# xterm patch #262 (2010/8/30) added Ryan Johnson's changes to provide a mode
-+# where the coordinates in the mouse response would be encoded in UTF-8,
-+# thereby extending the range of coordinates past 222=(255-33). This is the
-+# "1005" mouse mode.
-+xterm+sm+1005|xterm UTF-8 mouse,
-+ kmous=\E[M, XM=\E[?1005;1000%?%p1%{1}%=%th%el%;,
-+ xm=\E[M%?%p4%t3%e%p3%' '%+%c%;%p2%'!'%+%u%p1%'!'%+%u,
-+xterm-1005|xterm UTF-8 mouse,
-+ use=xterm+sm+1005, use=xterm,
-+
-+# xterm patch #277 (2012/1/7) provides a mode where the mouse response uses
-+# SGR-style parameters.
-+#
-+# Someone stated that the 1005 mouse mode would not be handled properly in luit.
-+# (By the way, this is a problem with the X11 protocol). A more plausible
-+# criticism is that the responses provided by the 1005 mode are not distinct
-+# from the non-1005 responses.
-+#
-+# As an alternative (and fixing the longstanding limitation of X11 mouse
-+# protocol regarding button-releases), I provided this:
-+xterm+sm+1006|xterm SGR-mouse,
-+ kmous=\E[<, XM=\E[?1006;1000%?%p1%{1}%=%th%el%;,
-+ xm=\E[<%p1%d;%p2%d;%p3%d;%?%p4%tM%em%;,
-+xterm-1006|xterm SGR-mouse,
-+ use=xterm+sm+1006, use=xterm,
-
--# This ships with Sun's CDE in Solaris 2.5
--# Corrected Sun Aug 9 1998 by Alexander V. Lukyanov <lav@video.yars.free.net>
--dtterm|CDE desktop terminal,
-- am, mir, msgr, xenl, xon,
-- cols#80, it#8, lines#24, lm#0, ncv@,
-+#### KTERM
-+# (kterm: this had extension capabilities ":KJ:TY=ascii:" -- esr)
-+# (kterm should not invoke DEC Graphics as the alternate character set
-+# -- Kenji Rikitake)
-+# (proper setting of enacs, smacs, rmacs makes kterm to use DEC Graphics
-+# -- MATSUMOTO Shoji)
-+# kterm implements acsc via built-in table of X Drawable's
-+kterm|kterm kanji terminal emulator (X window system),
-+ eslok, hs, XT,
-+ ncv@,
-+ acsc=``aajjkkllmmnnooppqqrrssttuuvvwwxx~~,
-+ csr=\E[%i%p1%d;%p2%dr, dsl=\E[?H, enacs=, fsl=\E[?F,
-+ kmous=\E[M, rc=\E8, rmacs=\E(B, rmam=\E[?7l, sc=\E7,
-+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;,
-+ sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h,
-+ tsl=\E[?E\E[?%i%p1%dT, use=xterm-r6, use=ecma+color,
-+kterm-color|kterm-co|kterm with ANSI colors,
-+ ncv@, use=kterm, use=ecma+color,
-+
-+#### Other XTERM
-+# These (xtermc and xtermm) are distributed with Solaris. They refer to a
-+# variant of xterm which is apparently no longer supported, but are interesting
-+# because they illustrate SVr4 curses mouse controls - T.Dickey
-+xtermm|xterm terminal emulator (monocrome),
-+ OTbs, am, km, mir, msgr, xenl,
-+ btns#3, cols#80, it#8, lines#24,
- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
-- clear=\E[H\E[J, cnorm=\E[?25h, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ bel=^G, blink@, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\E[D,
- cud=\E[%p1%dB, cud1=^J, 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, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
-- enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, home=\E[H,
-- 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,
-- rmam=\E[?7l, rmir=\E[4l, rmso=\E[22;27m, rmul=\E[24m,
-+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J,
-+ el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0, getm=\E[%p1%dY,
-+ home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD,
-+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kend=\E[Y, kf0=\EOy,
-+ kf10=\EOY, kf11=\EOZ, kf12=\EOA, kf5=\EOT, kf6=\EOU,
-+ kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\E[H, kmous=\E[^_,
-+ knp=\E[U, kpp=\E[V, rc=\E8, reqmp=\E[492Z, rev=\E[7m, ri=\EM,
-+ rmacs=^O, rmcup=\E@0\E[?4r, rmso=\E[m,
-+ rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smcup=\E@0\E[?4s\E[?4h\E@1,
-+ smso=\E[7m, tbc=\E[3g, use=vt100+fnkeys,
-+
-+xtermc|xterm terminal emulator (color),
-+ colors#8, ncv#7, pairs#64,
-+ op=\E[100m, 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}%=%t3%e%p1%d%;m,
-+ use=xtermm,
-+
-+# From: David J. MacKenzie <djm@va.pubnix.com> 20 Apr 1995
-+# Here's a termcap entry I've been using for xterm_color, which comes
-+# with BSD/OS 2.0, and the X11R6 contrib tape too I think. Besides the
-+# color stuff, I also have a status line defined as the window manager
-+# title bar. [I have translated it to terminfo -- ESR]
-+xterm-pcolor|xterm with color used for highlights and status line,
-+ wsl#40,
-+ bold=\E[1;43m, rev=\E[7;34m,
-+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1;43%;%?%p2%t;4;42%;%?%p1%t;7;31%;%?%p3%t;7;34%;%?%p4%t;5%;%?%p7%t;8%;m,
-+ smso=\E[7;31m, smul=\E[4;42m, use=xterm+sl, use=xterm-r6,
-+
-+# This describes the capabilities of color_xterm, an xterm variant from
-+# before ECMA-64 color support was folded into the main-line xterm release.
-+# This entry is straight from color_xterm's maintainer.
-+# From: Jacob Mandelson <jlm@ugcs.caltech.edu>, 09 Nov 1996
-+# The README's with the distribution also say that it supports SGR 21, 24, 25
-+# and 27, but they are not present in the terminfo or termcap.
-+color_xterm|cx|cx100|color_xterm color terminal emulator for X,
-+ OTbs, am, km, mir, msgr, xenl, XT,
-+ cols#80, it#8, lines#65, ncv@,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-+ el=\E[K, el1=\E[1K, enacs=\E(B\E)0, home=\E[H, ht=^I,
-+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ is1=\E[r\E[m\E[?7h\E[?4;6l\E[4l, kbs=^H, kcub1=\EOD,
-+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 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~, kich1=\E[2~,
-+ kmous=\E[M, knp=\E[6~, kpp=\E[5~, rc=\E8, rev=\E[7m, ri=\EM,
-+ rmacs=^O, rmam=\E[?7l, rmcup=\E>\E[?41;1r, rmir=\E[4l,
-+ rmso=\E[27m, rmul=\E[24m,
-+ rs1=\E(B\017\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l\E<,
- 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,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[0m\017, smacs=^N, smam=\E[?7h,
-+ smcup=\E[?1;41s\E[?1;41h\E=, smir=\E[4h, smso=\E[7m,
-+ smul=\E[4m, use=ecma+color, use=vt220+keypad,
-
--#### Non-Unix Consoles
-+# The 'nxterm' distributed with Redhat Linux 5.2 is a slight rehack of
-+# xterm-sb_right-ansi-3d, which implements ANSI colors, but does not support
-+# SGR 39 or 49. SGR 0 does reset colors (along with everything else). This
-+# description is "compatible" with color_xterm, rxvt and XFree86 xterm, except
-+# that each of those implements the home, end, delete keys differently.
- #
-+# Redhat Linux 6.x distributes XFree86 xterm as "nxterm", which uses bce
-+# colors; note that this is not compatible with the 5.2 version.
-+# csw (2002-05-15): make xterm-color primary instead of nxterm, to
-+# match XFree86's xterm.terminfo usage and prevent circular links
-+xterm-color|nxterm|generic color xterm,
-+ ncv@,
-+ op=\E[m, use=xterm-r6, use=klone+color,
-+
-+# This entry describes an xterm with Sun-style function keys enabled
-+# via the X resource setting "xterm*sunFunctionKeys:true"
-+# To understand <kf11>/<kf12> note that L1,L2 and F11,F12 are the same.
-+# The <kf13>...<kf20> keys are L3-L10. We don't set <kf16=\E[197z>
-+# because we want it to be seen as <kcpy>.
-+# The <kf31>...<kf45> keys are R1-R15. We treat some of these in accordance
-+# with their Sun keyboard labels instead.
-+# From: Simon J. Gerraty <sjg@zen.void.oz.au> 10 Jan 1996
-+xterm-sun|xterm with sunFunctionKeys true,
-+ kb2=\E[218z, kcpy=\E[197z, kcub1=\EOD, kcud1=\EOB,
-+ kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3z, kend=\E[220z,
-+ kent=\EOM, kf1=\E[224z, kf10=\E[233z, kf11=\E[192z,
-+ kf12=\E[193z, kf13=\E[194z, kf14=\E[195z, kf15=\E[196z,
-+ kf17=\E[198z, kf18=\E[199z, kf19=\E[200z, kf2=\E[225z,
-+ kf20=\E[201z, kf3=\E[226z, kf31=\E[208z, kf32=\E[209z,
-+ kf33=\E[210z, kf34=\E[211z, kf35=\E[212z, kf36=\E[213z,
-+ kf38=\E[215z, kf4=\E[227z, kf40=\E[217z, kf42=\E[219z,
-+ kf44=\E[221z, kf45=\E[222z, kf46=\E[234z, kf47=\E[235z,
-+ 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,
-+xterms-sun|small (80x24) xterm with sunFunctionKeys true,
-+ cols#80, lines#24, use=xterm-sun,
-
--### EMX termcap.dat compatibility modes
-+#### GNOME (VTE)
-+# this describes the alpha-version of Gnome terminal shipped with Redhat 6.0
-+gnome-rh62|Gnome terminal,
-+ bce,
-+ kdch1=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-+ use=xterm-color,
-+
-+# GNOME Terminal 1.4.0.4 (Redhat 7.2)
- #
--# Also (possibly only EMX, so we don't put it in ansi.sys, etc): set the
--# no_color_video to inform the application that standout(1), underline(2)
--# reverse(4) and invisible(64) don't work with color.
--emx-base|DOS special keys,
-- bce, bw,
-- it#8, ncv#71,
-- bel=^G, use=ansi.sys,
-+# This implements a subset of vt102 with a random selection of features from
-+# other terminals such as color and function-keys.
-+#
-+# shift-f1 to shift-f10 are f11 to f20
-+#
-+# NumLock changes the application keypad to approximate vt100 keypad, except
-+# that there is no escape sequence matching comma (,).
-+#
-+# Other defects observed:
-+# vt100 LNM mode is not implemented.
-+# vt100 80/132 column mode is not implemented.
-+# vt100 DECALN is not implemented.
-+# vt100 DECSCNM mode is not implemented, so flash does not work.
-+# vt100 TBC (tab reset) is not implemented.
-+# xterm alternate screen controls do not restore cursor position properly
-+# 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,
-+ 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,
-
--# Except for the "-emx" suffixes, these are as distributed with EMX 0.9b,
--# a Unix-style environment used on OS/2. (Note that the suffix makes some
--# names longer than 14 characters, the nominal maximum).
-+# GNOME Terminal 2.0.1 (Redhat 8.0)
- #
--# Removed: rmacs=\E[10m, smacs=\E[11m, because OS/2 does not implement acs.
--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=^M, cub1=^H,
-- cud1=^J, 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\E[?5l,
-- home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, ind=^J,
-- kb2=\E[G, kbs=^H, kf0=\0D, kll=\0O, kspd=^Z, nel=^M^J,
-- rev=\E[5;37;41m, rmir=\E[4l, rmpch=\E[10m,
-- rmso=\E[0;44m\E[1;33m, 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,
--# 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,
-- rmso=\E[0;37;44m, rmul=\E[0;37;44m, rs1=\Ec,
-- setaf=\E[3%p1%dm, sgr0=\E[0;37;44m, smso=\E[1;37;46m,
-- smul=\E[1;36;44m, use=ansi-emx,
--# nice colors for Emacs (white on black, mode line black on cyan)
--ansi-color-3-emx|ANSI.SYS color 3,
-- clear=\E[0;37;40m\E[H\E[J, rev=\E[1;37;46m,
-- rmso=\E[0;37;40m, rmul=\E[0;37;40m, rs1=\Ec,
-- setaf=\E[3%p1%dm, sgr0=\E[0;10m, smso=\E[1;37;46m,
-- smul=\E[0;36;40m, use=ansi-emx,
--mono-emx|stupid monochrome ansi terminal with only one kind of emphasis,
-- am,
-- cols#80, it#8, lines#24,
-- clear=\E[H\E[2J$<50>, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H,
-- ht=^I, kb2=\E[G, kbs=^H, kcub1=\0K, kcud1=\0P, kcuf1=\0M,
-- kcuu1=\0H, kf0=\0D, kf1=\0;, kf2=\0<, kf3=\0=, kf4=\0>,
-- kf5=\0?, kf6=\0@, kf7=\0A, kf8=\0B, kf9=\0C, khome=\0G,
-- kich1=\0R, kll=\0O, knp=\0Q, kpp=\0I, nel=^M^J, rev=\E[7m,
-- sgr0=\E[0m,
-+# Documentation now claims it implements vt220 (which is demonstrably false).
-+# However, it does implement ECH, which is a vt220 feature. And there are
-+# workable vt100 LNM, DECALN, DECSNM modes, making it possible to display
-+# more of its bugs using vttest.
-+#
-+# However, note that bce and msgr are broken in this release. Tabs (tbc and
-+# hts) are broken as well. Sometimes flash (as in xterm-new) works.
-+#
-+# kf1 and kf10 are not tested since they're assigned (hardcoded?) to menu
-+# operations. Shift-tab generates a distinct sequence so it can be argued
-+# that it implements kcbt.
-+gnome-rh80|GNOME Terminal,
-+ bce@, msgr@,
-+ ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l, kbs=\177,
-+ kcbt=\E^I, op=\E[39;49m, use=gnome-rh72,
-
--# Use this for cygwin32 (tested with beta 19.1)
--# 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@,
-- use=ansi.sys,
-+# GNOME Terminal 2.2.1 (Redhat 9.0)
-+#
-+# bce and msgr are repaired.
-+gnome-rh90|GNOME Terminal,
-+ bce, msgr, XT,
-+ hpa=\E[%i%p1%dG, kDC=\E[3;2~, kLFT=\EO2D, kRIT=\EO2C,
-+ kb2=\E[E, kcbt=\E[Z, kend=\EOF, khome=\EOH, tbc=\E[3g,
-+ vpa=\E[%i%p1%dd, use=xterm+pcf0, use=xterm+pcfkeys,
-+ use=gnome-rh80,
-
--# Use this for cygwin (tested with version 1.1.0).
--# I've combined pcansi and linux. Some values of course were different and
--# I've indicated which of these were and which I used.
--# Cheers, earnie_boyd@yahoo.com
--# several changes based on running with tack and comparing with older entry -TD
--# more changes from csw:
--# add cbt [backtab]
--# remove eo [erase overstrike with blank]
--# change clear was \E[H\E[J now \E[2J (faster?)
--# remove cols
--# remove lines
--# remove ncv#3 [colors collide with highlights, bitmask] not applicable
--# to MSDOS box?
--# add cub [cursor back param]
--# add cuf [cursor forward param]
--# add cuu [cursor up param]
--# add cud [cursor down param]
--# add hs [has status line]
--# add fsl [return from status line]
--# add tsl [go to status line]
--# add smacs [Start alt charset] (not sure if this works)
--# add rmacs [End alt charset] (ditto)
--# add smcup [enter_ca_mode] (save console; thanks Corinna)
--# add rmcup [exit_ca_mode] (restore console; thanks Corinna)
--# add kb2 [center of keypad]
--# add u8 [user string 8] \E[?6c
--# add el [clear to end of line] \E[K
--# Notes:
--# cnorm [make cursor normal] not implemented
--# flash [flash] not implemented
--# blink [blink] not implemented very usefully in cygwin? \E[5m
--# dim [dim] not implemented very usefully in cygwin? \E[2m
--# cub1 [cursor back 1] typically \E[D, but ^H is faster?
--# kNXT [shifted next key] not implemented
--# kPRV [shifted prev key] not implemented
--# khome [home key] really is \E[1~ NOT \E[H
--# tbc [clear tab stops] not implemented
--# xenl [newline ignnored after 80 cols] messes up last line? Ehud Karni
--# smpch [Start PC charset] is \E[11m, same as smacs
--# rmpch [End PC charset] is \E[10m, same as rmacs
--# mir [move in insert mode] fails in tack?
--# bce [back color erase] causes problems with change background color?
--# cvvis [make cursor very visible] causes a stackdump when testing with
--# testcurs using the output option? \E[?25h\E[?8c
--# civis [make cursor invisible] causes everything to stackdump? \E[?25l\E[?1c
--# ech [erase characters param] broken \E[%p1%dX
--# kcbt [back-tab key] not implemented in cygwin? \E[Z
--#
--# 2005/11/12 -TD
--# Remove cbt since it does not work in current cygwin
--# Add 'mir' and 'in' flags based on tack
--cygwin|ansi emulation for Cygwin,
-- am, hs, mir, msgr, xon,
-- colors#8, it#8, pairs#64,
-- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-- bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, 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, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-- dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, fsl=^G, home=\E[H,
-- hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, 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=^M^J, 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%;%?%p4%t;5%;%?%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,
-+# GNOME Terminal 2.14.2 (Fedora Core 5)
-+# Ed Catmur notes that gnome-terminal has recognized soft-reset since May 2002.
-+gnome-fc5|GNOME Terminal,
-+ rs1=\Ec,
-+ rs2=\E7\E[r\E8\E[m\E[?7h\E[!p\E[?1;3;4;6l\E[4l\E>\E[?1000l\E[?25h,
-+ use=ansi+enq, use=xterm+pcc0, use=gnome-rh90,
-
--# I've supplied this so that you can help test new values and add other
--# features. Cheers, earnie_boyd@yahoo.com.
-+# GNOME Terminal 2.18.1 (2007 snapshot)
- #
--# Some features are from pcansi. The op value is from linux. Function-keys
--# are from linux. These have been tested not to cause problems. xenl was in
--# this list, but DOES cause problems so it has been removed
--cygwinDBG|Debug Version for Cygwin,
-- am, eo, mir, msgr, xon,
-- colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64,
-- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\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=^M, 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\E[?5l$<200/>, 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=^J, 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=^M^J, 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%;%?%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,
-+# For any "recent" version of gnome-terminal, it is futile to attempt to
-+# support modifiers on cursor- and keypad keys because the program usually
-+# is hardcoded to set $TERM to "xterm", and on startup, it builds a subset
-+# of the keys (which more/less correspond to the termcap values), and will
-+# 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,
-+gnome-2007|GNOME Terminal snapshot 2.18.1,
-+ use=vte-2007,
-
--# Key definitions:
--# The encodings for unshifted arrow keys, F1-F12, Home, Insert, etc. match the
--# encodings used by other x86 environments. All others are invented for DJGPP.
--# Oddly enough, while several combinations of modifiers are tabulated, there is
--# none for shifted cursor keys.
-+# GNOME Terminal 2.22.3 (2008 snapshot)
- #
--# F1 \E[[A
--# F2 \E[[B
--# F3 \E[[C
--# F4 \E[[D
--# F5 \E[[E
--# F6 \E[17~
--# F7 \E[18~
--# F8 \E[19~
--# F9 \E[20~
--# F10 \E[21~
--# F11 \E[23~
--# F12 \E[24~
-+# In vttest, it claims to be a vt220 with national replacement character-sets,
-+# but aside from the identifier string, implements only a small fraction of
-+# vt220's behavior, which will make it less usable on a VMS system (unclear
-+# what the intent of the developer is, since the NRC feature exposed in vttest
-+# by this change does not work).
-+vte-2008|VTE in GNOME Terminal snapshot 2.22.3,
-+ use=vte+pcfkeys, use=vte-2007,
-+gnome-2008|GNOME Terminal snapshot 2.22.3,
-+ use=vte-2008,
-+
-+# GNOME Terminal 3.6.0 (2012)
-+# VTE 0.34.1 was marked in git 2012-10-15 (three days after patch was applied
-+# in ncurses). It inherited from gnome-fc5, which broke the modified forms
-+# of f1-f4 -TD
-+#
-+# Testing with tack shows that flash does not/has not worked -TD
-+vte-2012|VTE 0.34.1,
-+ ncv#16,
-+ dim=\E[2m, flash@, invis=\E[8m, ritm=\E[23m,
-+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p5%t;2%;%?%p7%t;8%;%?%p1%p3%|%t;7%;m%?%p9%t\016%e\017%;,
-+ sitm=\E[3m, use=vte-2008,
-+# Version 3.6.1 sets TERM to xterm-256color (still hardcoded), which has
-+# 61 differences from a correct entry for gnome terminal.
-+gnome-2012|GNOME Terminal 3.6.0,
-+ use=vte-2012,
-+
-+# GNOME terminal may automatically use the contents of the "xterm" terminfo to
-+# supply key information which is not built into the program. With 2.22.3,
-+# this list is built into the program (which addresses the inadvertant use of
-+# random terminfo data, though using a set of values which does not correspond
-+# to any that xterm produces - still not solving the problem that GNOME
-+# terminal hardcodes the $TERM variable as "xterm").
- #
--# Delete \E[3~
--# Down Arrow \E[B
--# End \E[4~
--# Home \E[1~
--# Insert \E[2~
--# Left Arrow \E[D
--# Page Down \E[6~
--# Page Up \E[5~
--# Right Arrow \E[C
--# Up Arrow \E[A
-+# terminfo modifier code keys
-+# kf13-kf24 shift 2 F1 to F12
-+# kf25-kf36 control 5 F1 to F12
-+# kf37-kf48 shift/control 6 F1 to F12
-+# kf49-kf60 alt 3 F1 to F12
-+# kf61-kf63 shift-alt 4 F1 to F3
- #
--# Shift-F1 \E[25~
--# Shift-F2 \E[26~
--# Shift-F3 \E[27~
--# Shift-F4 \E[28~
--# Shift-F5 \E[29~
--# Shift-F6 \E[30~
--# Shift-F7 \E[31~
--# Shift-F8 \E[32~
--# Shift-F9 \E[33~
--# Shift-F10 \E[34~
--# Shift-F11 \E[35~
--# Shift-F12 \E[36~
-+# The parameters with \EO (SS3) are technically an error, since SS3 should have
-+# no parameters. This appears to be rote copying based on xterm+pcc0.
-+vte+pcfkeys|VTE's variation on xterm+pcfkeys,
-+ kf1=\EOP, kf13=\EO1;2P, kf14=\EO1;2Q, kf15=\EO1;2R,
-+ kf16=\EO1;2S, kf2=\EOQ, kf25=\EO1;5P, kf26=\EO1;5Q,
-+ kf27=\EO1;5R, kf28=\EO1;5S, kf3=\EOR, kf37=\EO1;6P,
-+ kf38=\EO1;6Q, kf39=\EO1;6R, kf4=\EOS, kf40=\EO1;6S,
-+ kf49=\EO1;3P, kf50=\EO1;3Q, kf51=\EO1;3R, kf52=\EO1;3S,
-+ kf61=\EO1;4P, kf62=\EO1;4Q, kf63=\EO1;4R,
-+ use=xterm+pcfkeys,
-+gnome+pcfkeys|VTE's variation on xterm+pcfkeys,
-+ use=vte+pcfkeys,
-+
-+vte|VTE aka GNOME Terminal,
-+ use=vte-2012,
-+gnome|GNOME Terminal,
-+ use=vte,
-+
-+# palette is hardcoded...
-+vte-256color|VTE with xterm 256-colors,
-+ use=xterm+256color, use=vte,
-+gnome-256color|GNOME Terminal with xterm 256-colors,
-+ use=vte-256color,
-+
-+# XFCE Terminal 0.2.5.4beta2
- #
--# Ctrl-F1 \E[47~
--# Ctrl-F2 \E[48~
--# Ctrl-F3 \E[49~
--# Ctrl-F4 \E[50~
--# Ctrl-F5 \E[51~
--# Ctrl-F6 \E[52~
--# Ctrl-F7 \E[53~
--# Ctrl-F8 \E[54~
--# Ctrl-F9 \E[55~
--# Ctrl-F10 \E[56~
--# Ctrl-F11 \E[57~
--# Ctrl-F12 \E[58~
-+# This is based on some of the same source code, e.g., the VTE library, as
-+# gnome-terminal, but has fewer features, fails more screens in vttest.
-+# Since most of the terminfo-related behavior is due to the VTE library,
-+# the terminfo is the same as gnome-terminal.
-+xfce|Xfce Terminal,
-+ use=vte-2008,
-+
-+#### Other GNOME
-+# Multi-Gnome-Terminal 1.6.2
- #
--# Ctrl-Delete \E[43~
--# Ctrl-Down Arrow \E[38~
--# Ctrl-End \E[44~
--# Ctrl-Home \E[41~
--# Ctrl-Insert \E[42~
--# Ctrl-Left Arrow \E[39~
--# Ctrl-Page Down \E[46~
--# Ctrl-Page Up \E[45~
--# Ctrl-Right Arrow \E[40~
--# Ctrl-Up Arrow \E[37~
-+# This does not use VTE, and does have different behavior (compare xfce and
-+# gnome).
-+mgt|Multi GNOME Terminal,
-+ indn=\E[%p1%dS, rin=\E[%p1%dT, use=xterm-xf86-v333,
-+
-+#### KDE
-+# This is kvt 0-18.7, shipped with Redhat 6.0 (though whether it supports bce
-+# or not is debatable).
-+kvt|KDE terminal,
-+ bce, km@,
-+ kdch1=\177, kend=\E[F, khome=\E[H, use=xterm-color,
-+
-+# Konsole 1.0.1
-+# (formerly known as kvt)
- #
--# Alt-F1 \E[59~
--# Alt-F2 \E[60~
--# Alt-F3 \E[61~
--# Alt-F4 \E[62~
--# Alt-F5 \E[63~
--# Alt-F6 \E[64~
--# Alt-F7 \E[65~
--# Alt-F8 \E[66~
--# Alt-F9 \E[67~
--# Alt-F10 \E[68~
--# Alt-F11 \E[79~
--# Alt-F12 \E[80~
-+# This program hardcodes $TERM to 'xterm', which is not accurate. However, to
-+# simplify this entry (and point out why konsole isn't xterm), we base this on
-+# xterm-r6. The default keyboard appears to be 'linux'.
- #
--# Alt-Delete \E[65~
--# Alt-Down Arrow \E[60~
--# Alt-End \E[66~
--# Alt-Home \E[41~
--# Alt-Insert \E[64~
--# Alt-Left Arrow \E[61~
--# Alt-Page Down \E[68~
--# Alt-Page Up \E[67~
--# Alt-Right Arrow \E[62~
--# Alt-Up Arrow \E[59~
-+# Notes:
-+# a) konsole implements several features from XFree86 xterm, though none of
-+# that is documented - except of course in its source code - apparently
-+# because its implementors are unaccustomed to reading documentation - as
-+# evidenced by the sparse and poorly edited documentation distributed with
-+# konsole. Some features such as the 1049 private mode are recognized but
-+# incorrectly implemented as a duplicate of the 47 private mode.
-+# b) even with the "vt100 (historical)" keyboard setting, the numeric keypad
-+# sends PC-style escapes rather than vt100.
-+# c) fails vttest menu 3 (Test of character sets) because it does not properly
-+# parse some control sequences. Also fails vttest Primary Device Attributes
-+# by sending a bogus code (in the source it says it's supposed to be a
-+# vt220, which is doubly incorrect because it does not implement vt220
-+# control sequences except for a few special cases). Treat it as a
-+# mildly-broken vt102.
- #
--# Also:
--# Alt-A \E[82~
--# Alt-B \E[82~
--# Alt-C \E[83~
--# Alt-D \E[84~
--# Alt-E \E[85~
--# Alt-F \E[86~
--# Alt-G \E[87~
--# Alt-H \E[88~
--# Alt-I \E[89~
--# Alt-J \E[90~
--# Alt-K \E[91~
--# Alt-L \E[92~
--# Alt-M \E[93~
--# Alt-N \E[94~
--# Alt-O \E[95~
--# Alt-P \E[96~
--# Alt-Q \E[97~
--# Alt-R \E[98~
--# Alt-S \E[99~
--# Alt-T \E[100~
--# Alt-U \E[101~
--# Alt-V \E[102~
--# Alt-W \E[103~
--# Alt-X \E[104~
--# Alt-Y \E[105~
--# Alt-Z \E[106~
--djgpp|ansi emulation for DJGPP alpha,
-- am, bce, msgr, xhp, xon, xt,
-- colors#8, it#8, pairs#64,
-- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\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, civis=\E[1v,
-- clear=\E[H\E[J, cnorm=\E[v, cr=^M, 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[2v, 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, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@,
-- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-- indn=\E[%p1%dS, 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=^M^J,
-- op=\E[37;40m, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, 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,
-+# Update for konsole 1.3.2:
-+# The 1049 private mode works (but see the other xterm screens in vttest).
-+# Primary Device Attributes now returns the code for a vt100 with advanced
-+# video option. Perhaps that's intended to be a "mildly-broken vt102".
-+#
-+# Updated for konsole 1.6.4:
-+# add konsole-solaris
-+#
-+# Updated for konsole 1.6.6:
-+# add control-key modifiers for function-keys, etc.
-+#
-+# Updated for konsole 2.12.4:
-+# add sitm/ritm
-+#
-+# vttest menu 1 shows that both konsole and gnome terminal do wrapping
-+# different from xterm (and vt100's). They have the same behavior in this
-+# detail, but it is unclear which copies the other.
-+konsole-base|KDE console window,
-+ bce, km@, npc, XT,
-+ ncv@,
-+ bel@, blink=\E[5m, civis=\E[?25l, cnorm=\E[?25h,
-+ ech=\E[%p1%dX, flash=\E[?5h$<100/>\E[?5l,
-+ hpa=\E[%i%p1%dG, indn=\E[%p1%dS, kbs=\177, 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@, rin=\E[%p1%dT, ritm=\E[23m,
-+ rmam=\E[?7l, rmso=\E[27m, rmul=\E[24m,
-+ 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%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[0m\017, sitm=\E[3m, smam=\E[?7h, vpa=\E[%i%p1%dd,
-+ use=ecma+color, use=xterm-r6,
-+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~,
-+ kf8=\E[19~, kf9=\E[20~, use=konsole-base,
-+konsole-solaris|KDE console window with Solaris keyboard,
-+ kbs=^H, kend=\E[4~, khome=\E[1~, use=konsole-vt100,
-+# KDE's "XFree86 3.x.x" keyboard is based on reading the xterm terminfo rather
-+# than testing the code.
-+konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm,
-+ kend=\E[4~, khome=\E[1~, use=konsole-vt100,
-+# The value for kbs reflects local customization rather than the settings used
-+# for XFree86 xterm.
-+konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm,
-+ kend=\EOF, khome=\EOH, use=konsole+pcfkeys,
-+ use=konsole-vt100,
-+# Konsole does not implement shifted cursor-keys.
-+konsole+pcfkeys|konsole subset of xterm+pcfkeys,
-+ kLFT@, kRIT@, kcbt=\E[Z, kind@, kri@, kDN@, kUP@, use=xterm+pcc2,
-+ use=xterm+pcf0,
-+# KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but
-+# it is still useful for deriving the other entries.
-+konsole-vt100|KDE console window with vt100 (sic) keyboard,
-+ kbs=\177, kdch1=\E[3~, kend=\E[F, kf1=\E[11~, kf10=\E[21~,
-+ kf11=\E[23~, kf12=\E[24~, kf13@, kf14@, kf15@, kf16@, kf17@,
-+ kf18@, kf19@, kf2=\E[12~, kf20@, kf3=\E[13~, kf4=\E[14~,
-+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-+ khome=\E[H, use=konsole-base,
-+konsole-vt420pc|KDE console window with vt420 pc keyboard,
-+ kbs=^H, kdch1=\177, use=konsole-vt100,
-+konsole-16color|klone of xterm-16color,
-+ ncv#32, use=ibm+16color, use=konsole,
-+# make a default entry for konsole
-+konsole|KDE console window,
-+ use=konsole-xf4x,
-
--djgpp203|Entry for DJGPP 2.03,
-- OTbs, am,
-- cols#80, it#8, lines#25,
-- bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H,
-- kcud1=^J, nel=^M^J,
-+# palette is hardcoded...
-+konsole-256color|KDE console window with xterm 256-colors,
-+ use=xterm+256setaf, use=konsole,
-
--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,
-- clear=\E[H\E[2J, cnorm=\E[v, cr=^M, 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, cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P,
-- 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, indn=\E[%p1%dS, 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=^M^J, rev=\E[7m,
-- ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, setab=\E[4%p1%dm,
-- setaf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-+#### MLTERM
-+# http://mlterm.sourceforge.net/
-
--# This is tested using U/Win's telnet. Scrolling is omitted because it is
--# buggy. Another odd bug appears when displaying "~" in alternate character
--# set (the emulator spits out error messages). Compare with att6386 -TD
--uwin|U/Win 3.2 console,
-- am, eo, in, msgr, xenl, xon,
-- colors#8, it#8, ncv#58, pairs#64,
-- 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=^M, cub1=^H, cud1=^J,
-- 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=\177, 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=^M^J, 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,
-+mlterm|multi lingual terminal emulator,
-+ use=mlterm3,
-
--# This entry fits the Windows NT console when the _POSIX_TERM environment
--# variable is set to 'on'. While the Windows NT POSIX console is seldom used,
--# the Telnet client supplied with both the Windows for WorkGroup 3.11 TCP/IP
--# stack and the Win32 (i.e., Windows 95 and Windows NT 3.1 or later) operating
--# systems is not, and (surprise!) they match very well.
-+# 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 tack and vttest -TD
-+mlterm3|multi lingual terminal emulator,
-+ kf1=\E[11~, kf2=\E[12~, kf3=\E[13~, kf4=\E[14~,
-+ ritm=\E[23m, sitm=\E[3m, use=xterm+app, use=xterm+pcf0,
-+ use=xterm+pcc2, use=xterm+pce2, use=mlterm2,
-+
-+# This is mlterm 2.9.3's mlterm.ti, with some additions/corrections -TD
- #
--# See: MS Knowledge Base item Q108581, dated 13-MAY-1997, titled "Setting Up
--# VI POSIX Editor for Windows NT 3.1". True to Microsoft form, not only
--# are the installation instructions a pile of mind-numbing bureaucratese,
--# but the termcap entry is actually broken and unusable as given; the :do:
--# capability is misspelled "d".
-+# It is nominally a vt102 emulator, with features borrowed from rxvt and
-+# xterm.
- #
--# To use this, you need to a bunch of environment variables:
-+# The function keys are numbered based on shift/control/alt modifiers, except
-+# that the control-modifier itself is used to spawn a new copy of mlterm (the
-+# "-P" option). So control/F1 to control/F12 may not be usable, depending on
-+# how it is configured.
- #
--# SET _POSIX_TERM=on
--# SET TERM=ansi
--# SET TERMCAP=location of termcap file in POSIX file format
--# which is case-sensitive.
--# e.g. SET TERMCAP=//D/RESKIT35/posix/termcap
--# SET TMP=//C/TEMP
-+# kf1 to kf12 \E[11~ to \E[24~
-+# shift kf1 to kf12 \E[11;2~ to \E[24;2~
-+# alt kf1 to kf12 \E[11;3~ to \E[24;3~
-+# shift/alt kf1 to kf12 \E[11;4~ to \E[24;4~
-+# control kf1 to kf12 \E[11;5~ to \E[24;5~ (maybe)
-+# control/shift kf1 to kf12 \E[11;6~ to \E[24;6~
-+# control/alt kf1 to kf12 \E[11;7~ to \E[24;7~
-+# control/shift/alt kf1 to kf12 \E[11;8~ to \E[24;8~
- #
--# Important note: setting the TMP environment variable in POSIX style renders
--# it incompatible with a lot of other applications, including Visual C++. So
--# you should have a separate command window just for vi. All the other
--# variables may be permanently set in the Control Panel\System applet.
-+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=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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, enacs=,
-+ 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=^J, indn=\E[%p1%dS,
-+ is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>,
-+ kbs=\177, 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,
-+ rin=\E[%p1%dT, rmacs=\E(B, rmam=\E[?7l, rmcup=\E[?1049l,
-+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
-+ 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\E(B%;,
-+ sgr0=\E[m\E(B, smacs=\E(0, smam=\E[?7h, smcup=\E[?1049h,
-+ 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=mlterm+pcfkeys, 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
-+# (when available), it could use the extended names introduced for xterm.
-+mlterm+pcfkeys|fragment for PC-style fkeys,
-+ kLFT=\EO1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\EO1;2C,
-+ kDN=\EO1;2B, kDN3=\EO1;3B, kDN4=\EO1;4B, kDN5=\EO1;5B,
-+ kDN6=\EO1;6B, kDN7=\EO1;7B, kIC5=\E[2;5~, kIC6=\E[2;6~,
-+ kLFT3=\EO1;3D, kLFT4=\EO1;4D, kLFT5=\EO1;5D,
-+ kLFT6=\EO1;6D, kLFT7=\EO1;7D, kNXT5=\E[6;5~,
-+ kNXT6=\E[6;6~, kPRV5=\E[5;5~, kPRV6=\E[5;6~,
-+ kRIT3=\EO1;3C, kRIT4=\EO1;4C, kRIT5=\EO1;5C,
-+ kRIT6=\EO1;6C, kRIT7=\EO1;7C, kUP=\EO1;2A, kUP3=\EO1;3A,
-+ kUP4=\EO1;4A, kUP5=\EO1;5A, kUP6=\EO1;6A, kUP7=\EO1;7A,
-+
-+mlterm-256color|mlterm 3.0 with xterm 256-colors,
-+ use=xterm+256color, use=mlterm,
-+
-+#### RXVT
-+# From: Thomas Dickey <dickey@clark.net> 04 Oct 1997
-+# Updated: Oezguer Kesim <kesim@math.fu-berlin.de> 02 Nov 1997
-+# Notes:
-+# rxvt 2.21b uses
-+# smacs=\E(B\E)U^N, rmacs=\E(B\E)0^O,
-+# but some applications don't work with that.
-+# It also has an AIX extension
-+# box2=lqkxjmwuvtn,
-+# and
-+# ech=\E[%p1%dX,
-+# but the latter does not work correctly.
- #
--# You can find out more about the restrictions of this facility at
--# <http://www.nentug.org/unix-to-nt/ntposix.htm>.
-+# The distributed terminfo says it implements hpa and vpa, but they are not
-+# implemented correctly, using relative rather than absolute positioning.
- #
--# From: Federico Bianchi <bianchi@magna.cisid.unipi.it>, 15 Jan 1997
--ansi-nt|psx_ansi|Microsoft Windows NT console POSIX ANSI mode,
-- am, bw, msgr,
-- cols#80, it#8, lines#25,
-- bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-- home=\E[H, ht=^I, ind=\E[S, kbs=^H, kcub1=\E[D, kcud1=\E[V,
-- kcuf1=\E[C, kcuu1=\E[A, nel=\r\E[S, rc=\E[u, rev=\E[7m,
-- ri=\E[T, rmso=\E[m, sc=\E[s, sgr0=\E[0m, smso=\E[7m,
--# From: jew@venus.sunquest.com
--# Date: 19 Feb 93 23:41:07 GMT
--# Here's a combination of ansi and vt100 termcap
--# entries that works nearly perfectly for me
--# (Gateway 2000 Handbook and Microsoft Works 3.0):
--pcmw|PC running Microsoft Works,
-- am, xenl,
-- cols#80, it#8, lines#24, vt#3,
-- bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>,
-- clear=\E[;H\E[2J$<50/>, cr=^M, cub1=^H, cud1=^J,
-- cuf1=\E[C$<2/>, cup=\E[%i%p1%d;%p2%dH$<5/>,
-- cuu1=\E[A$<2/>, ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H,
-- ht=^I, hts=\EH$<2/>, ind=\ED$<5/>, is2=\E[1;24r\E[24;1H,
-- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\r\ED$<5/>,
-- rc=\E8, rev=\E[7m$<2/>, rf=/usr/share/lib/tabset/vt100,
-- ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- sgr0=\E[m$<2/>, smso=\E[7m$<2/>, smul=\E[4m$<2/>,
-- tbc=\E[3g$<2/>,
--
--# From: Federico Bianchi
--# This is the entry for the OpenNT terminal.
--# The ntconsole name is for backward compatability.
--# This is for OpenNT 2.0 and later.
--# Later OpenNT was renamed to Interix.
-+# rxvt is normally configured to look for "xterm" or "xterm-color" as $TERM.
-+# Since rxvt is not really compatible with xterm, it should be configured as
-+# "rxvt" or "rxvt-color".
- #
--# Presently it is distributed by Microsoft as Services For Unix (SFU).
--# The 3.5 beta contains ncurses 4.2 (that is header files and executables,
--# the documentation dates from 1.9.9e) -TD
--
--interix|opennt|opennt-25|ntconsole|ntconsole-25|OpenNT-term compatible with color,
-- am, bw, msgr,
-- colors#8, cols#80, lines#25, ncv#3, pairs#64,
-- acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-- bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[2J, cub=\E[%p1%dD,
-- cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC,
-- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA,
-- cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K,
-- home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-- indn=\E[%p1%dS, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[M, kend=\E[U, kf0=\EFA,
-- kf1=\EF1, kf10=\EFA, kf11=\EFB, kf12=\EFC, kf13=\EFD,
-- kf14=\EFE, kf15=\EFF, kf16=\EFG, kf17=\EFH, kf18=\EFI,
-- kf19=\EFJ, kf2=\EF2, kf20=\EFK, kf21=\EFL, kf22=\EFM,
-- kf23=\EFN, kf24=\EFO, kf25=\EFP, kf26=\EFQ, kf27=\EFR,
-- kf28=\EFS, kf29=\EFT, kf3=\EF3, kf30=\EFU, kf31=\EFV,
-- kf32=\EFW, kf33=\EFX, kf34=\EFY, kf35=\EFZ, kf36=\EFa,
-- kf37=\EFb, kf38=\EFc, kf39=\EFd, kf4=\EF4, kf40=\EFe,
-- kf41=\EFf, kf42=\EFg, kf43=\EFh, kf44=\EFi, kf45=\EFj,
-- kf46=\EFk, kf47=\EFm, kf48=\EFn, kf49=\EFo, kf5=\EF5,
-- kf50=\EFp, kf51=\EFq, kf52=\EFr, kf53=\EFs, kf54=\EFt,
-- kf55=\EFu, kf56=\EFv, kf57=\EFw, kf58=\EFx, kf59=\EFy,
-- kf6=\EF6, kf60=\EFz, kf61=\EF+, kf62=\EF-,
-- kf63=\EF\014 kf64=\EF$, kf7=\EF7, kf8=\EF8, kf9=\EF9,
-- kich1=\E[L, kll=\E[U, knp=\E[T, kpp=\E[S, ll=\E[U, nel=^M^J,
-- op=\E[m, rc=\E[u, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT,
-- rmcup=\E[2b\E[u\r\E[K, rmso=\E[m, rmul=\E[m, rs1=\Ec,
-- sc=\E[s, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-- setb=\E[%p1%{40}%+%dm, setf=\E[%p1%{30}%+%dm,
-- sgr0=\E[0m, smcup=\E[s\E[1b, smso=\E[7m, smul=\E[4m,
--
--opennt-35|ntconsole-35|OpenNT-term35 compatible with color,
-- lines#35, use=opennt,
--
--opennt-50|ntconsole-50|OpenNT-term50 compatible with color,
-- lines#50, use=opennt,
--
--opennt-60|ntconsole-60|OpenNT-term60 compatible with color,
-- lines#60, use=opennt,
--
--opennt-100|ntconsole-100|OpenNT-term100 compatible with color,
-- lines#100, use=opennt,
--
--# OpenNT wide terminals
--opennt-w|opennt-25-w|ntconsole-w|ntconsole-25-w|OpenNT-term-w compat with color,
-- cols#125, use=opennt,
--
--opennt-35-w|ntconsole-35-w|OpenNT-term35-w compatible with color,
-- lines#35, use=opennt-w,
--
--opennt-50-w|ntconsole-50-w|OpenNT-term50-w compatible with color,
-- lines#50, use=opennt-w,
--
--opennt-60-w|ntconsole-60-w|OpenNT-term60-w compatible with color,
-- lines#60, use=opennt-w,
--
--opennt-w-vt|opennt-25-w-vt|ntconsole-w-vt|ntconsole-25-w-vt|OpenNT-term-w-vt compat with color,
-- cols#132, use=opennt,
--
--# OpenNT terminals with no smcup/rmcup (names match termcap entries)
--interix-nti|opennt-nti|opennt-25-nti|ntconsole-25-nti|OpenNT-nti compatible with color,
-- rmcup@, smcup@, use=opennt,
--
--opennt-35-nti|ntconsole-35-nti|OpenNT-term35-nti compatible with color,
-- lines#35, use=opennt-nti,
--
--opennt-50-nti|ntconsole-50-nti|OpenNT-term50-nti compatible with color,
-- lines#50, use=opennt-nti,
--
--opennt-60-nti|ntconsole-60-nti|OpenNT-term60-nti compatible with color,
-- lines#60, use=opennt-nti,
--
--opennt-100-nti|ntconsole-100-nti|OpenNT-term100-nti compatible with color,
-- lines#100, use=opennt-nti,
--
--######## COMMON TERMINAL TYPES
-+# removed dch/dch1 because they are inconsistent with bce/ech -TD
-+# remove km as per tack test -TD
-+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=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-+ enacs=\E(B\E)0, flash=\E[?5h\E[?5l, home=\E[H, ht=^I,
-+ hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L,
-+ ind=^J, 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=^H,
-+ kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
-+ rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E>, 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,
-+ s0ds=\E(B, s1ds=\E(0, sc=\E7,
-+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%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,
-+# Key Codes from rxvt reference:
- #
--# This section describes terminal classes and maker brands that are still
--# quite common, but have proprietary command sets not blessed by ANSI.
-+# Note: Shift + F1-F10 generates F11-F20
- #
--
--#### Altos
-+# For the keypad, use Shift to temporarily override Application-Keypad
-+# setting use Num_Lock to toggle Application-Keypad setting if Num_Lock
-+# is off, escape sequences toggle Application-Keypad setting.
-+# Also note that values of Home, End, Delete may have been compiled
-+# differently on your system.
- #
--# Altos made a moderately successful line of UNIX boxes. In 1990 they were
--# bought out by Acer, a major Taiwanese manufacturer of PC-clones.
--# Acer has a web site at http://www.acer.com.
-+# Normal Shift Control Ctrl+Shift
-+# Tab ^I ESC [ Z ^I ESC [ Z
-+# BackSpace ^H ^? ^? ^?
-+# Find ESC [ 1 ~ ESC [ 1 $ ESC [ 1 ^ ESC [ 1 @
-+# Insert ESC [ 2 ~ paste ESC [ 2 ^ ESC [ 2 @
-+# Execute ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
-+# Select ESC [ 4 ~ ESC [ 4 $ ESC [ 4 ^ ESC [ 4 @
-+# Prior ESC [ 5 ~ scroll-up ESC [ 5 ^ ESC [ 5 @
-+# Next ESC [ 6 ~ scroll-down ESC [ 6 ^ ESC [ 6 @
-+# Home ESC [ 7 ~ ESC [ 7 $ ESC [ 7 ^ ESC [ 7 @
-+# End ESC [ 8 ~ ESC [ 8 $ ESC [ 8 ^ ESC [ 8 @
-+# Delete ESC [ 3 ~ ESC [ 3 $ ESC [ 3 ^ ESC [ 3 @
-+# F1 ESC [ 11 ~ ESC [ 23 ~ ESC [ 11 ^ ESC [ 23 ^
-+# F2 ESC [ 12 ~ ESC [ 24 ~ ESC [ 12 ^ ESC [ 24 ^
-+# F3 ESC [ 13 ~ ESC [ 25 ~ ESC [ 13 ^ ESC [ 25 ^
-+# F4 ESC [ 14 ~ ESC [ 26 ~ ESC [ 14 ^ ESC [ 26 ^
-+# F5 ESC [ 15 ~ ESC [ 28 ~ ESC [ 15 ^ ESC [ 28 ^
-+# F6 ESC [ 17 ~ ESC [ 29 ~ ESC [ 17 ^ ESC [ 29 ^
-+# F7 ESC [ 18 ~ ESC [ 31 ~ ESC [ 18 ^ ESC [ 31 ^
-+# F8 ESC [ 19 ~ ESC [ 32 ~ ESC [ 19 ^ ESC [ 32 ^
-+# F9 ESC [ 20 ~ ESC [ 33 ~ ESC [ 20 ^ ESC [ 33 ^
-+# F10 ESC [ 21 ~ ESC [ 34 ~ ESC [ 21 ^ ESC [ 34 ^
-+# F11 ESC [ 23 ~ ESC [ 23 $ ESC [ 23 ^ ESC [ 23 @
-+# F12 ESC [ 24 ~ ESC [ 24 $ ESC [ 24 ^ ESC [ 24 @
-+# F13 ESC [ 25 ~ ESC [ 25 $ ESC [ 25 ^ ESC [ 25 @
-+# F14 ESC [ 26 ~ ESC [ 26 $ ESC [ 26 ^ ESC [ 26 @
-+# F15 (Help) ESC [ 28 ~ ESC [ 28 $ ESC [ 28 ^ ESC [ 28 @
-+# F16 (Menu) ESC [ 29 ~ ESC [ 29 $ ESC [ 29 ^ ESC [ 29 @
-+# F17 ESC [ 31 ~ ESC [ 31 $ ESC [ 31 ^ ESC [ 31 @
-+# F18 ESC [ 32 ~ ESC [ 32 $ ESC [ 32 ^ ESC [ 32 @
-+# F19 ESC [ 33 ~ ESC [ 33 $ ESC [ 33 ^ ESC [ 33 @
-+# F20 ESC [ 34 ~ ESC [ 34 $ ESC [ 34 ^ ESC [ 34 @
- #
--# Altos descriptions from Ted Mittelstaedt <tedm@agora.rain.com> 4 Sep 1993
--# His comments suggest they were shipped with the system.
-+# Application
-+# Up ESC [ A ESC [ a ESC O a ESC O A
-+# Down ESC [ B ESC [ b ESC O b ESC O B
-+# Right ESC [ C ESC [ c ESC O c ESC O C
-+# Left ESC [ D ESC [ d ESC O d ESC O D
-+# KP_Enter ^M ESC O M
-+# KP_F1 ESC O P ESC O P
-+# KP_F2 ESC O Q ESC O Q
-+# KP_F3 ESC O R ESC O R
-+# KP_F4 ESC O S ESC O S
-+# XK_KP_Multiply * ESC O j
-+# XK_KP_Add + ESC O k
-+# XK_KP_Separator , ESC O l
-+# XK_KP_Subtract - ESC O m
-+# XK_KP_Decimal . ESC O n
-+# XK_KP_Divide / ESC O o
-+# XK_KP_0 0 ESC O p
-+# XK_KP_1 1 ESC O q
-+# XK_KP_2 2 ESC O r
-+# XK_KP_3 3 ESC O s
-+# XK_KP_4 4 ESC O t
-+# XK_KP_5 5 ESC O u
-+# XK_KP_6 6 ESC O v
-+# XK_KP_7 7 ESC O w
-+# XK_KP_8 8 ESC O x
-+# XK_KP_9 9 ESC O y
-+#
-+# The source-code for rxvt actually defines mappings for F21-F35, using
-+# "ESC [ 35 ~" to "ESC [ 49 ~". Keyboards with more than 12 function keys
-+# are rare, so this entry uses the shift- and control-modifiers as in
-+# xterm+pcfkeys to define keys past F12.
- #
-+# kIC is normally not used, since rxvt performs a paste for that (shifted
-+# insert), unless private mode 35 is set.
-+#
-+# kDN, kDN5, kDN6, etc are extensions based on the names from xterm+pcfkeys -TD
-+# Removed kDN6, etc (control+shift) since rxvt does not implement this -TD
-+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,
-
--# (altos2: had extension capabilities
--# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\
--# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\
--# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\
--# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r:
--# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\
--# :YU=^AQ\r:YD=^AR\r:YR=^AS\r:YL=^AT\r:\
--# :HL=^AP\r:SP=\E[i:\
--# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:\
--# :LO=\E[0q:LC=\E[5q:LL=\E[6q:\
--# 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,
-- cols#80, it#8, lines#24, xmc#0,
-- clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[1B, cuf1=\E[1C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[1A, dch1=\E[P, dl1=\E[M,
-- ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@,
-- if=/usr/share/tabset/vt100, il1=\E[L, ind=^J,
-- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kDL=^Am\r,
-- kEOL=^An\r, kbs=^H, kcbt=^AK\r, kclr=^AL\r, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=^AM\r, kel=^AN\r,
-- kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf32=^A`\r,
-- kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r,
-- kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r,
-- kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-- kf8=^AG\r, kf9=^AH\r, khome=\E[f, kil1=^AJ\r, kind=^AO\r,
-- nel=^M^J, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sgr0=\E[m,
-- smam=\E[?7h, smso=\E[7m, smul=\E[4m,
--# (altos3: had extension capabilities
--# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\
--# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\
--# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\
--# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r:
--# :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,
-- blink=\E[5p, ri=\EM, sgr0=\E[p, use=altos2,
--altos4|alt4|altos-4|altos IV,
-- use=wy50,
--# (altos7: had extension capabilities:
--# :GG#0:GI=\EH8:GF=\EH7:\
--# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\
--# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\
--# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\
--# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r:
--# 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. 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,
-- am, mir,
-- cols#80, lines#24, xmc#0,
-- acsc=j5k3l2m1n8q\:t4u9v=w0x6, blink=\EG2, bold=\EGt,
-- clear=\E+^^, cr=^M, cub1=^H, cud1=^J, 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=^J, invis=\EG1,
-- 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=^J, 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,
-- kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r,
-- kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r,
-- kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-- kf8=^AG\r, kf9=^AH\r, khome=^^, kil1=^AJ\r, kind=^AO\r,
-- knp=\EK, kpp=\EJ, mc4=\EJ, mc5=\Ed#, nel=^M^J, ri=\Ej,
-- rmir=\Er, smir=\Eq, use=adm+sgr,
--altos7pc|alt7pc|altos PC VII,
-- kend=\ET, use=altos7,
--
--#### Hewlett-Packard (hp)
-+# rxvt was originally "xvt", first announced in April 1993:
-+# http://www.informatica.co.cr/linux-desktops/research/1993/0416.html
- #
--# Hewlett-Packard
--# 8000 Foothills Blvd
--# Roseville, CA 95747
--# Vox: 1-(916)-785-4363 (Technical response line for VDTs)
--# 1-(800)-633-3600 (General customer support)
-+# Though its change-log does not mention this, John Davis has stated that he
-+# was the author of the changes to use the bce ("new color model") which was
-+# incorporated into rxvt 2.11 (June 15, 1995). The change-log does not give
-+# dates, nor give developer's names. Initial color support was added for rxvt
-+# "2.0", which was sometime in 1994.
-+#
-+# rxvt had usable color support with 2.16 (April 2, 1996), with some help by my work on
-+# vttest, as well as bug reports to Mark Olesen. For instance, the fix
-+# mentioned here
-+# http://web.archiveorange.com/archive/v/6ETvLb5wHtbbzCaS4S9J
-+# was from one of my bug-reports -TD
-+#
-+# While the color model both for xterm and rxvt was based on Linux console,
-+# Olesen (or possibly Davis) diverged in one respect from Linux's bce color
-+# behavior: inserting/deleting characters does not fill the newly empty cell
-+# with the default background color.
-+rxvt|rxvt terminal emulator (X Window System),
-+ ncv@,
-+ hpa=\E[%i%p1%dG, kf0=\E[21~, sgr0=\E[m\017,
-+ vpa=\E[%i%p1%dd, use=rxvt-basic, use=ecma+color,
-+rxvt-color|rxvt terminal emulator (X Window System),
-+ use=rxvt,
-+rxvt-256color|rxvt 2.7.9 with xterm 256-colors,
-+ use=xterm+256color, use=rxvt,
-+rxvt-88color|rxvt 2.7.9 with xterm 88-colors,
-+ use=xterm+88color, use=rxvt,
-+rxvt-xpm|rxvt terminal emulator (X Window System),
-+ use=rxvt,
-+rxvt-cygwin|rxvt terminal emulator (X Window System) on cygwin,
-+ acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-+ use=rxvt,
-+rxvt-cygwin-native|rxvt terminal emulator (native MS Window System port) on cygwin,
-+ acsc=+\257\,\256-\^0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330~\376,
-+ use=rxvt-cygwin,
-+
-+# This variant is supposed to work with rxvt 2.7.7 when compiled with
-+# NO_BRIGHTCOLOR defined. rxvt needs more work...
-+rxvt-16color|xterm with 16 colors like aixterm,
-+ ncv#32, use=ibm+16color, use=rxvt,
-+
-+#### MRXVT
-+# mrxvt 0.5.4
- #
-+# mrxvt is based on rxvt 2.7.11, but has by default XTERM_FKEYS defined, which
-+# makes its function-keys different from other flavors of rxvt -TD
- #
--# As of March 1998, HP no longer has any terminals in production.
--# The 700 series (22, 32, 41, 44, 92, 94, 96, 98) is still being
--# supported (they still have parts). So are the 2392a and 2394a.
--# See the WORKSTATION CONSOLES section for the 700s.
-+# Testing with tack:
-+# + made custom description (below) to work, though it sets TERM=xterm.
- #
-+# Testing with vttest:
-+# + While "based on" rxvt, some of the basic functionality is broken. The
-+# window collapses to a single line when running several of the screens
-+# in vttest, e.g., the tests for cursor movement, screen features,
-+# double-sized characters.
-+# + The vt52 test works properly, but this is an exception. Due to the
-+# other bug(s) most of vttest is untestable.
-+# + the color test using ECH shows a gap in the bce model, like rxvt.
-+#
-+# Testing with xterm "vttest" scripts:
-+# + resize.pl does not work because mrxvt does implement CSI 18 t
-+# (not in rxvt, but not documented by mrxvt) but not CSI 19 t.
-+# + none of the "dynamic colors" (OSC colors) scripts work.
-+mrxvt|multitabbed rxvt,
-+ XT,
-+ kEND=\E[8;2~, kHOM=\E[7;2~, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, kend=\E[8~, khome=\E[7~,
-+ kEND3=\E[8;3~, kEND4=\E[8;4~, kEND5=\E[8;5~,
-+ kEND6=\E[8;6~, kEND7=\E[8;7~, kHOM3=\E[7;3~,
-+ kHOM4=\E[7;4~, kHOM5=\E[7;5~, kHOM6=\E[7;6~,
-+ kHOM7=\E[7;7~, use=xterm+r6f2, use=xterm+pcfkeys,
-+ use=rxvt,
-
--# Generic HP terminal - this should (hopefully) work on any HP 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=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\E&a%p2%dc%p1%dY$<6>, cuu1=\EA, dch1=\EP, dl1=\EM,
-- ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL,
-- ind=^J, kbs=^H, kcbt=\Ei, rmir=\ER, rmso=\E&d@, rmul=\E&d@,
-- sgr0=\E&d@, smir=\EQ, smso=\E&dJ, smul=\E&dD, tbc=\E3,
-- vpa=\E&a%p1%dY,
--
--hp110|hewlett-packard model 110 portable,
-- lines#16, use=hpgeneric,
--
--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,
-- kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev,
-- kf8=\Ew,
--
--# The hp2621s use the same keys for the arrows and function keys,
--# 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,
-- 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,
-- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh,
-- kind=\ES, kll=\EF, kri=\ET,
-+mrxvt-256color|multitabbed rxvt with 256 colors,
-+ use=xterm+256color, use=mrxvt,
-
--# Generic stuff from the HP 262x series
-+#### ETERM
-+# From: Michael Jennings <mej@valinux.com>
- #
--hp262x|HP 262x terminals,
-- xhp,
-- blink=\E&dA, dch1=\EP$<2>, ed=\EJ, ht=\011$<2>, ind=\ES,
-- invis=\E&dS, ip=$<2>, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-- kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh,
-- kich1=\EQ, kil1=\EL, kind=\ES, knp=\EU, kpp=\EV, kri=\ET,
-- krmir=\ER, rev=\E&dB, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@,
-- sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%c,
-- sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB, smul=\E&dD,
--
--# Note: no <home> on HPs since that homes to top of memory, not screen.
--# Due to severe 2621 braindamage, the only way to get the arrow keys to
--# transmit anything at all is to turn on the function key labels
--# with <smkx>, and even then the user has to hold down shift!
--# The default 2621 turns off the labels except when it has to to
--# enable the function keys. If your installation prefers labels
--# on all the time, or off all the time (at the "expense" of the
--# function keys), use 2621-nl or 2621-wl.
-+# Eterm 0.9.3
- #
--# Note: there are newer ROMs for 2621's that allow you to set
--# strap A so the regular arrow keys xmit \EA, etc, as with the
--# 2645. However, even with this strap set, the terminal stops
--# xmitting if you reset it, until you unset and reset the strap!
--# 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,
-- 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,
-- is2=\E&jA\r, rmkx=\E&jA, use=hp2621-fl,
--hp2621-fl|hp 2621,
-- xhp@, xon,
-- pb#19200,
-- cbt=\Ei, cup=\E&a%p2%dc%p1%dY, dch1=\EP$<2>, ht=\011$<2>,
-- ip=$<2>, is2=\E&j@\r, rmkx=\E&j@, rmso=\E&d@, rmul=\E&d@,
-- sgr0=\E&d@, smkx=\E&jB, smso=\E&dD, smul=\E&dD,
-- use=hp+pfk+cr, use=hpgeneric,
-+# removed kf0 which conflicts with kf10 -TD
-+# remove cvvis which conflicts with cnorm -TD
-+# Eterm does not implement control/shift cursor keys such as kDN6, or kPRV/kNXT
-+# but does otherwise follow the rxvt+pcfkeys model -TD
-+# remove nonworking flash -TD
-+# remove km as per tack test -TD
-+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=^M,
-+ 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,
-+ 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,
-+ 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=^J,
-+ is1=\E[?47l\E>\E[?1l,
-+ is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kNXT@,
-+ kPRV@, ka1=\E[7~, ka3=\E[5~, kb2=\EOu, kbeg=\EOu, kbs=^H,
-+ kc1=\E[8~, kc3=\E[6~, kent=\EOM, khlp=\E[28~, kmous=\E[M,
-+ mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
-+ rmam=\E[?7l, rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=,
-+ 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,
-+ sc=\E7,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-+ 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,
-
--# To use hp2621p printer, setenv TERM=2621p, PRINTER=2612p
--hp2621p|hp 2621 with printer,
-- mc4=\E&p13C, mc5=\E&p11C, use=hp2621,
-+Eterm-256color|Eterm with xterm 256-colors,
-+ use=xterm+256color, use=Eterm,
-
--hp2621p-a|hp2621p with fn as arrows,
-- use=hp+pfk+arrows, use=hp2621p,
-+Eterm-88color|Eterm with 88 colors,
-+ use=xterm+88color, use=Eterm,
-
--# hp2621 with k45 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,
-+#### ATERM
-+# Based on rxvt 2.4.8, it has a few differences in key bindings
-+aterm|AfterStep terminal,
-+ XT,
-+ kbs=\177, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, use=rxvt,
-
--# 2621 using all 48 lines of memory, only 24 visible at any time.
--hp2621-48|48 line 2621,
-- lines#48,
-- cup=\E&a%p2%dc%p1%dR, home=\EH, vpa=\E&a%p1%dR,
-- use=hp2621,
-+#### XITERM
-+# xiterm 0.5-5.2
-+# This is not based on xterm's source...
-+# vttest shows several problems with keyboard, cursor-movements.
-+# see also http://invisible-island.net/xterm/xterm.faq.html#bug_xiterm
-+xiterm|internationalized terminal emulator for X,
-+ km@,
-+ kbs=\177, kdch1=\E[3~, use=klone+color, use=xterm-r6,
-
--# 2621 with no labels ever. Also prevents vi delays on escape.
--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,
-- ht@, use=hp2621,
-+#### HPTERM
-+# 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,
-+ am, da, db, mir, xhp,
-+ 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=^M,
-+ 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=^J, 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,
-+ 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, rmir=\ER, rmkx=\E&s0A, rmln=\E&j@, rmso=\E&d@,
-+ rmul=\E&d@,
-+ sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;,
-+ 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,
-+# HPUX 11 provides a color version.
-+hpterm-color|HP X11 terminal emulator with color,
-+ ccc,
-+ colors#64, pairs#8,
-+ home=\E&a0y0C,
-+ 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,
-
--# Hp 2624 B with 4 or 10 pages of memory.
--#
--# Some assumptions are made with this entry. These settings are
--# NOT set up by the initialization strings.
--#
--# Port Configuration
--# RecvPace=Xon/Xoff
--# XmitPace=Xon/Xoff
--# StripNulDel=Yes
--#
--# Terminal Configuration
--# InhHndShk=Yes
--# InhDC2=Yes
--# XmitFnctn(A)=No
--# InhEolWrp=No
-+#### EMU
-+# This is for the extensible terminal emulator on the X11R6 contrib tape.
-+# It corresponds to emu's internal emulation:
-+# emu -term emu
-+# emu's default sets TERM to "xterm", but that doesn't work well -TD
-+# fixes: remove bogus rmacs/smacs, change oc to op, add bce, am -TD
-+# fixes: add civis, cnorm, sgr -TD
-+emu|emu native mode,
-+ am, bce, mir, msgr, xon,
-+ colors#15, cols#80, it#8, lines#24, pairs#64, vt#200,
-+ acsc=61a\202f\260g2j\213k\214l\215m\216n\217o\220q\222s\224t\225u\226v\227w\230x\231~\244,
-+ bel=^G, blink=\EW, bold=\EU, civis=\EZ, clear=\EP\EE0;0;,
-+ cnorm=\Ea, cr=^M, csr=\Ek%p1%d;%p2%d;, cub=\Eq-%p1%d;,
-+ cub1=^H, cud=\Ep%p1%d;, cud1=\EB, cuf=\Eq%p1%d;, cuf1=\EC,
-+ cup=\EE%p1%d;%p2%d;, cuu=\Ep-%p1%d;, cuu1=\EA,
-+ dch=\EI%p1%d;, dch1=\EI1;, dl=\ER%p1%d;, dl1=\ER1;,
-+ ech=\Ej%p1%d;, ed=\EN, el=\EK, el1=\EL, home=\EE0;0;, ht=^I,
-+ hts=\Eh, il=\EQ%p1%d;, il1=\EQ1;, ind=\EG,
-+ is2=\ES\Er0;\Es0;, kbs=^H, kcub1=\EC, kcud1=\EB, kcuf1=\ED,
-+ kcuu1=\EA, kdch1=\177, kent=^M, kf0=\EF00, kf1=\EF01,
-+ kf10=\EF10, kf11=\EF11, kf12=\EF12, kf13=\EF13, kf14=\EF14,
-+ kf15=\EF15, kf16=\EF16, kf17=\EF17, kf18=\EF18, kf19=\EF19,
-+ kf2=\EF02, kf20=\EF20, kf3=\EF03, kf4=\EF04, kf5=\EF05,
-+ kf6=\EF06, kf7=\EF07, kf8=\EF08, kf9=\EF09, kfnd=\Efind,
-+ kich1=\Eins, knp=\Enext, kpp=\Eprior, kslt=\Esel,
-+ op=\Es0;\Er0;, rev=\ET, ri=\EF, rmir=\EX, rmso=\ES, rmul=\ES,
-+ rs2=\ES\Es0;\Er0;, setab=\Es%i%p1%d;,
-+ setaf=\Er%i%p1%d;,
-+ sgr=\ES%?%p1%t\ET%;%?%p2%t\EV%;%?%p3%t\ET%;%?%p4%t\EW%;%?%p6%t\EU%;,
-+ sgr0=\ES, smir=\EY, smso=\ET, smul=\EV, tbc=\Ej,
-+
-+# vt220 Terminfo entry for the Emu emulation, corresponds to
-+# emu -term vt220
-+# with NumLock set (to make the keypad transmit kf0-kf9).
-+# fixes: add am, xenl, corrected sgr0 -TD
-+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=^M,
-+ 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,
-+ dch=\E[%p1%dP, dch1=\E[1P, dl=\E[%p1%dM, dl1=\E[1M,
-+ ed=\E[0J, el=\E[0K, el1=\E[1K, enacs=\E)0, home=\E[H, ht=^I,
-+ 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,
-+ 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, smacs=^N, smcup=\E[?1l\E=, smkx=\E=,
-+ smso=\E[0;7m, smul=\E[0;4m, tbc=\E[3g,
-+
-+#### MVTERM
-+# A commercial product, Reportedly a version of Xterm with an OPEN LOOK UI,
-+# print interface, ANSI X3.64 colour escape sequences, etc. Newsgroup postings
-+# indicate that it emulates more than one terminal, but incompletely.
- #
--# Note: the 2624 DOES have a true <home>, believe it or not!
-+# This is adapted from a FreeBSD bug-report by Daniel Rudy <dcrudy@pacbell.net>
-+# It is based on vt102's entry, with some subtle differences, but also
-+# has status line
-+# supports ANSI colors (except for 'op' string)
-+# apparently implements alternate screen like xterm
-+# does not use padding, of course.
-+mvterm|vv100|SwitchTerm aka mvTERM,
-+ am, eslok, hs, km, mir, msgr, xenl,
-+ colors#8, cols#80, it#8, lines#24, pairs#64,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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[?E, ed=\E[J, el=\E[K, el1=\E[1K$<3>, enacs=\E(B\E)0,
-+ fsl=\E[?F, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOy,
-+ kf10=\EOx, kf5=\EOt, kf6=\EOu, kf7=\EOv, kf8=\EOl, kf9=\EOw,
-+ op=\E[100m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
-+ rmcup=\E[2J\E[?47l\E8, rmkx=\E[?1l\E>, rmso=\E[m,
-+ rmul=\E[m,
-+ rs2=\E>\E[1;3;4;5;6l\E[?7h\E[100m\E[m\E[r\E[2J\E[H,
-+ sc=\E7, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smcup=\E7\E[?47h,
-+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-+ tsl=\E[?E\E[?%i%p1%dT, use=vt100+fnkeys,
-+
-+#### MTERM
- #
--# The 2624 has an "error line" to which messages can be sent.
--# This is CLOSE to what is expected for a "status line". However,
--# after a message is sent to the "error line", the next carriage
--# return is EATEN and the "error line" is turned back off again!
--# So I guess we can't define <hs>, <eslok>, <wsl>, <dsl>, <fsl>, <tsl>.
-+# This application is available by email from <mouse@Rodents.Montreal.QC.CA>.
- #
--# This entry supports emacs (and any other program that uses raw
--# mode) at 4800 baud and less. I couldn't get the padding right
--# for 9600.
-+# "mterm -type ansi" sets $TERM to "ansi"
-+mterm-ansi|ANSI emulation,
-+ am, bw, mir, msgr,
-+ it#8,
-+ acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+ 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, ech=\E[%p1%dX, ed=\E[J,
-+ el=\E[K, home=\E[H, hpa=\E[%i%p1%d`, ht=^I, ich1=,
-+ il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS,
-+ invis=\E[8m, is2=\E)0\017, kbs=^H, nel=\EE, rev=\E[7m,
-+ ri=\E[T, rin=\E[%p1%dT, rmacs=^O, rmir=\E[4l, rmso=\E[27m,
-+ rmul=\E[24m,
-+ 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, smacs=^N, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-+ vpa=\E[%i%p1%dd,
-+# mterm normally sets $TERM to "mterm"
-+mterm|mouse-sun|Der Mouse term,
-+ am, bw, mir,
-+ it#8,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^N, cuf1=^S,
-+ cup=\006%p1%d.%p2%d., cuu1=^X, dch1=^Y, dl1=^K, ed=^B, el=^C,
-+ home=^P, ht=^I, il1=^A, ind=^U, kbs=^H, ll=^R, nel=^M^U, ri=^W,
-+ rmir=^O, rmso=^T, smir=^Q, smso=^V,
-+# "mterm -type decansi" sets $TERM to "decansi"
- #
--# (hp2624: replaced NUL sequences in flash with mandatory pauses -- esr)
--hp2624|hp2624a|hp2624b|hp2624b-4p|Hewlett Packard 2624 B,
-- da, db,
-- lm#96,
-- flash=\E&w13F$<66/>\E&w12F$<66/>\E&w13F$<66/>\E&w12F,
-- use=hp+labels, use=scrhp,
-+# note: kdch1, kfnd, kslt are in the source code, but do not work -TD
-+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=^M,
-+ 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,
-+ 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, 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, indn=\E[%p1%dS, 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, rin=\E[%p1%dT, 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, 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,
-
--# This hp2626 entry does not use any of the fancy windowing stuff
--# of the 2626.
--#
--# Indeed, terminfo does not yet handle such stuff. Since changing
--# any window clears memory, it is probably not possible to use
--# this for screen opt.
--#
--# ed is incredibly slow most of the time - I am guessing at the
--# exact padding. Since the terminal uses xoff/xon this is intended
--# only for cost computation, so that the terminal will prefer el
--# or even dl1 which is probably faster!
-+#### VWM
-+# http://vwm.sourceforge.net/
- #
--# \ED\EJ\EC hack for ed from Ed Bradford - apparently ed is only
--# extra slow on the last line of the window.
-+# VWM 2.0.2 (2009-05-01)
-+# vwmterm is a terminal emulator written for the VWM console window manager.
-+# This version is obsolete, replaced by libvterm in 2.1.0 (2009-10-23).
-+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=^M, 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=^J, 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, rmcup=\E[?1049l, rs1=\E[H\E[J\E[m\Ec,
-+ 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%;%?%p6%t;1%;%?%p7%t;8%;%?%p9%t;11%;m,
-+ sgr0=\E[0;10m, smacs=\E[11m, smam=\E[?7h,
-+ smcup=\E[?1049h, smso=\E[3m, smul=\E[4m,
-+
-+#### MGR
- #
--# The padding probably should be changed.
-+# MGR is a Bell Labs window system lighter-weight than X.
-+# These entries describe MGR's xterm-equivalent.
-+# They are courtesy of Vincent Broman <broman@nosc.mil> 14 Jan 1997
- #
--hp2626|hp2626a|hp2626p|hp 2626,
-- da, db,
-- lm#0, pb#19200,
-- ed=\ED\EJ$<500>\EC, indn=\E&r%p1%dD, ip=$<4>,
-- is2=\E&j@\r, rin=\E&r%p1%dU, use=hp+pfk+cr,
-- use=hp+labels, use=scrhp,
-
--# This entry is for sysline. It allocates a 23 line window with
--# a 115 line workspace for regular use, and a 1 line window for
--# the status line.
--#
--# This assumes port 2 is being used.
--# Turn off horizontal line, Create ws #1 with 115 lines,
--# Create ws #2 with 1 line, Create window #1 lines 1-23,
--# Create window #2 lines 24-24, Attach cursor to workspace #1.
--# 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,
-- eslok, hs,
-- lines#23,
-- fsl=\E&d@\E&w7f2p1I\E&w4f1I,
-- is1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \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,
-- is1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I \E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r,
-- use=hp2626,
--# Various entries useful for small windows on 2626.
--hp2626-12|hewlett-packard 2626 12 lines,
-- lines#12, use=hp2626,
--hp2626-12x40|hewlett-packard 2626 12 lines 40 columns,
-- cols#40, lines#12, use=hp2626,
--hp2626-x40|hewlett-packard 2626 40 columns,
-- cols#40, use=hp2626,
--hp2626-12-s|hewlett-packard 2626 11 lines plus status,
-- lines#11, use=hp2626-s,
-+mgr|Bellcore MGR (non X) window system terminal emulation,
-+ am, km,
-+ bel=^G, bold=\E2n, civis=\E9h, clear=^L, cnorm=\Eh, cr=^M,
-+ csr=\E%p1%d;%p2%dt, cub1=^H, cud1=\Ef, cuf1=\Er,
-+ cup=\E%p2%d;%p1%dM, cuu1=\Eu, cvvis=\E0h,
-+ dch=\E%p1%dE$<5>, dch1=\EE, dl=\E%p1%dd$<3*>,
-+ dl1=\Ed$<3>, ed=\EC, el=\Ec, hd=\E1;2f, ht=^I, hu=\E1;2u,
-+ ich=\E%p1%dA$<5>, ich1=\EA, il=\E%p1%da$<3*>,
-+ il1=\Ea$<3>, ind=^J, kbs=^H, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, nel=^M^J, rev=\E1n, rmam=\E5S,
-+ rmso=\E0n, rmul=\E0n, sgr0=\E0n, smam=\E5s, smso=\E1n,
-+ smul=\E4n,
-+mgr-sun|Mgr window with Sun keyboard,
-+ ka1=\E[214z, ka3=\E[216z, kb2=\E[218z, kc1=\E[220z,
-+ kc3=\E[222z, kcpy=\E[197z, kend=\E[220z, kent=\E[250z,
-+ kf1=\E[224z, kf10=\E[233z, kf11=\E[234z, kf12=\E[235z,
-+ kf2=\E[225z, kf3=\E[226z, kf4=\E[227z, kf5=\E[228z,
-+ kf6=\E[229z, kf7=\E[230z, kf8=\E[231z, kf9=\E[232z,
-+ kfnd=\E[200z, khlp=\E[207z, khome=\E[214z, knp=\E[222z,
-+ kopn=\E[198z, kpp=\E[216z, kund=\E[195z, use=mgr,
-+mgr-linux|Mgr window with Linux keyboard,
-+ ka1=\E[H, ka3=\E[5~, kb2=\E[G, kc1=\E[Y, kc3=\E[6~,
-+ kdch1=\E[3~, kend=\E[4~, kf0=\E[[J, 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~, knp=\E[6~, kpp=\E[5~, use=mgr,
-
-+#### SIMPLETERM
-+# st.suckless.org
-+# st-0.4.1
-+#
-+# This version uses a table which supports a single modifier (a subset of
-+# xterm's keys, using the same scheme). Because it supports only a single
-+# modifier in this table, function keys f36-f48 are normally unavailable
-+# because they are assigned to modifier-4.
-+#
-+# The program assigns TERM to match the program name (the upstream source says
-+# "st", but Debian renames it to "stterm").
-+#
-+# The source includes two entries which are not useful here:
-+# st-meta| simpleterm with meta key,
-+# st-meta-256color| simpleterm with meta key and 256 colors,
-+# because st's notion of "meta" does not correspond to the terminfo definition.
-+# Rather, it acts like xterm - when the meta feature is disabled.
-+#
-+# Removed invis -TD
-+st|stterm| simpleterm 0.4.1,
-+ am, bce, hs, mir, msgr, ul, xenl,
-+ colors#8, cols#80, it#8, lines#24, ncv#3, 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=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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\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=^J, indn=\E[%p1%dS,
-+ is2=\E[4l\E>\E[?1034l, kDC=\E[3;2~, kEND=\E[1;2F,
-+ kHOM=\E[1;2H, kIC=\E[2;2~, kLFT=\E[1;2D, kNXT=\E[6;2~,
-+ kPRV=\E[5;2~, kRIT=\E[1;2C, ka1=\E[1~, ka3=\E[5~, kb2=\EOu,
-+ kbs=\177, 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~,
-+ 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~, op=\E[39;49m,
-+ rc=\E8, rev=\E[7m, ri=\EM, ritm=\E[23m, rmacs=\E(B,
-+ rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
-+ rmul=\E[m, 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}%=%t3%e%p1%d%;m,
-+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%;m,
-+ sgr0=\E[0m, sitm=\E[3m, smacs=\E(0, smcup=\E[?1049h,
-+ smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
-+ tbc=\E[3g, tsl=\E]0;, u6=\E[%i%d;%dR, u7=\E[6n,
-+ u8=\E[?1;2c, u9=\E[c, vpa=\E[%i%p1%dd,
- #
--# hp2627 color tubes from University of Wisconsin
-+# st-0.1.1
- #
--hp2627a-rev|hp 2627 with reverse video colors,
-- cr=^M, cud1=^J, ht=^I, ind=^J,
-- is2=\E&v0m1a0b0c1x1y1z1i0a0b1c1x1y1z0i0S\E&j@\r\E3\r,
-- kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, rmul=\E&v0S\E&d@,
-- smul=\E&dD\E&v1S, use=hp2621-nl,
--hp2627a|hp 2627 color terminal with no labels,
-- cr=^M, cud1=^J, ht=^I, ind=^J,
-- is2=\E&v0m1a1b0c1i0a1b1c2i1a0b0c0i0S\E&j@\r\E3\r,
-- kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, 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,
-- cr=^M, cud1=^J, ht=^I, ind=^J,
-- is2=\E&v0m1a0b0c2i1a1b0c1i0a1b1c0i0S\E&j@\r\E3\r,
-- kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, use=hp2627a,
-+# Note: the original terminfo description uses leading blank to persuade
-+# ncurses to use "st" as its name. Proper fix for that is to use "st" as an
-+# alias.
-+#
-+# Reading the code shows it should work for aixterm 16-colors
-+# - added st-16color
-+#
-+# Using tack:
-+# - set eo (erase-overstrike)
-+# - set xenl
-+# - tbc doesn't work
-+# - hts works
-+# - cbt doesn't work
-+# - 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,
-+ 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=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub1=^H, cud=\E[%p1%dB, cud1=^J, 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=^J, indn=\E[%p1%dS, kbs=\177,
-+ 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,
-+st-16color|stterm-16color|simpleterm with 16-colors,
-+ use=ibm+16color, use=st,
-+# 256 colors "works", but when running xterm's test-scripts, some garbage is
-+# shown in the titlebar.
-+#
-+# terminal wants to use TERM=stterm-256color, but that is longer than 14
-+# characters, making the choice nonportable.
-+st-256color|stterm-256color|simpleterm with 256 colors,
-+ use=xterm+256color, use=st,
-+
-+#### TERMINATOR
-+# https://code.google.com/p/jessies/
-+# Tested using their Debian package org.jessies.terminator 6.104.3256 on 64-bit
-+# Debian/current -TD (2011/8/20)
-+#
-+# There are some packaging problems:
-+# a) using Java, the program starts off using 50Mb, and climbs from there,
-+# up to 114Mb after testing (no scrollback).
-+# b) it insists on reinstalling its terminal description in $HOME/.terminfo
-+# (two copies, just in case the host happens to be Mac OS X).
-+# I deleted this after testing with tack.
-+#
-+# Issues/features found with tack:
-+# a) tbc does not work (implying that hts also is broken).
-+# Comparing with the tabs utility shows a problem with the last tabstop on
-+# a line.
-+# b) has xterm-style shifted function-key strings
-+# meta also is used, but control is ignored.
-+# c) has xterm-style modifiers for cursor keys (shift, control, shift+control, meta)
-+# d) some combinations of shift/control send xterm-style sequences for
-+# insert/delete/home/end.
-+# e) numeric keypad sends only numbers (compare with vttest).
-+# f) meta mode (km) is not implemented.
-+#
-+# Issues found with ncurses test-program:
-+# a) bce is inconsistently implemented
-+# b) widths of Unicode values above 256 do not always agree with wcwidth.
-+#
-+# Checked with vttest, found low degree of compatibility there.
-+#
-+# Checked with xterm's scripts, found that the 256-color palette is fixed.
-+#
-+# Fixes:
-+# a) add sgr string
-+# b) corrected sgr0 to reset alternate character set
-+# c) modified smacs/rmacs to use SCS rather than SI/SO
-+# d) removed bce
-+# e) removed km
-+terminator|Terminator no line wrap,
-+ eo, mir, msgr, xenl, xon,
-+ colors#256, cols#80, it#8, lines#24, lm#0, pairs#32767,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bold=\E[1m, civis=\E[?25l, clear=\E[H\E[2J,
-+ cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ 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, 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=^J,
-+ 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=^H,
-+ 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~,
-+ op=\E[39;49m, rc=\E8, rev=\E[7m, ri=\EM, rmacs=\E(B,
-+ rmcup=\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>,
-+ s0ds=\E(B, s1ds=\E(0, sc=\E7, setab=\E[48;5;%p1%dm,
-+ setaf=\E[38;5;%p1%dm,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e\E(B%;,
-+ sgr0=\E[m\E(B, smacs=\E(0, smcup=\E7\E[?47h, smir=\E[4h,
-+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd,
-+ use=xterm+sl-twm,
-+
-+#### TERMINOLOGY
-+# http://enlightenment.org
-+#
-+# 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
-+#
-+# General comments:
-+# cursor does not fill on focus
-+# there are pervasive problems with clearing/erasing parts of the screen
-+# resizing the window causes it to stop listening to the keyboard
-+# tack -
-+# doesn't understand vt100 CPR needed for resize
-+# no CBT
-+# no cvvis
-+# has invis
-+# no blink
-+# uses bce model for colors, but (see below) fails the vttest screens
-+# has partial support for 256color feature.
-+# tack function-keys (a subset of xterm+pcf0), and
-+# tack cursor-keys (a subset of xterm+pce2):
-+# ctrl+shift (ignored)
-+# 2 shift
-+# shift-alt modifier -> shift (2)
-+# 3 alt
-+# 4
-+# 5 ctrl
-+# tack modifiers did not work for fkeys in 0.3.0; subset works in 0.6.1
-+# ctrl + khome/kend works - none of the other modifiers do
-+# vttest -
-+# spits lots of messages from termptyesc.c especially in vttest.
-+# no 132-column mode
-+# fails menu 1, 2 (definitely not vt100-compatible)
-+# primary (claims vt420 with several options, apparently none work) and
-+# secondary report says (perhaps... vt420): \E[>41;285;0c
-+# CHA, HPR, VPA, CNL, CPL work
-+# BCE with ED/EL - fail
-+# BCE with ECH/indexing - fail
-+# SD/SU work
-+# unlike teken, background light/dark works
-+# can set title
-+# X10 and Normal mouse work
-+# Any-event mouse works
-+# Mouse button-event works
-+#
-+# This description uses xterm+pcf0, which is misleading because the program
-+# does not handle combinations of modifiers - but listing them all would
-+# involve more effort than its developers spent -TD
-+terminology|EFL-based terminal emulator,
-+ mc5i@, xon@,
-+ blink@, ed@, el@, el1@, invis=\E[8m, kLFT=\E[1;2D,
-+ kRIT=\E[1;2C, kf10=\E[21~, kf11=\E[23~, kf12=\E[24~,
-+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-+ kind=\E[1;2B, kri=\E[1;2A,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<2>,
-+ vpa=\E[%i%p1%dd, kDC3=\E[3;3~, kDC4=\E[3;4~,
-+ kDC5=\E[3;5~, kDC6=\E[3;6~, kDC7=\E[3;7~, kDN=\E[1;2B,
-+ kDN3=\E[1;3B, kDN4=\E[1;4B, kDN5=\E[1;5B, kDN6=\E[1;6B,
-+ kDN7=\E[1;7B, kEND5=\E[1;5F, kHOM5=\E[1;5H,
-+ kLFT3=\E[1;3D, kLFT4=\E[1;4D, kLFT5=\E[1;5D,
-+ kLFT6=\E[1;6D, kLFT7=\E[1;7D, kRIT3=\E[1;3C,
-+ kRIT4=\E[1;4C, kRIT5=\E[1;5C, kRIT6=\E[1;6C,
-+ kRIT7=\E[1;7C, kUP=\E[1;2A, use=xterm+pcf0, use=vt100,
-+ use=xterm+256setaf,
-
--# hp2640a doesn't have the Y cursor addressing feature, and C is
--# memory relative instead of screen relative, as we need.
-+######## UNIX VIRTUAL TERMINALS, VIRTUAL CONSOLES, AND TELNET CLIENTS
- #
--hp2640a|hp 2640a,
-- cup@, rmkx@, smkx@, use=hp2645,
--
--hp2640b|hp2644a|hp 264x series,
-- rmkx@, smkx@, use=hp2645,
--
--# (hp2641a: removed unknown :gu: -- esr)
--hp2641a|hp2645a|hp2647a|HP 264?A series BRL entry,
-- am, da, db, mir, xhp,
-- cols#80, lines#24,
-- bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM,
-- ed=\EJ, el=\EK, hpa=\E&a%p1%2dC, ht=^I,
-- if=/usr/share/tabset/std, il1=\EL, ind=^J,
-- is2=\EE$<500/>, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J,
-- rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB,
-- vpa=\E&a%p1%2dY,
--
--# This terminal should be used at 4800 baud or less. It needs padding for
--# plain characters at 9600, I guessed at an appropriate cr delay. It really
--# wants ^E/^F handshaking, but that doesn't work well even if you write
--# software to support it.
--hp2645|hp45|HP 2645 series,
-- pb#9600,
-- blink=\E&dA, cr=\r$<20>, dim=\E&dH, kctab=\E2, kcub1=\ED,
-- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM,
-- ked=\EJ, kel=\EK, khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL,
-- kind=\ES, knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, rev=\E&dB,
-- rmkx=\E&s0A,
-- sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c,
-- sgr0=\E&d@, smkx=\E&s1A, smul=\E&dD, use=hpgeneric,
--# You should use this terminal at 4800 baud or less.
--hp2648|hp2648a|HP 2648a graphics terminal,
-- clear=\EH\EJ$<50>, cup=\E&a%p2%dc%p1%dY$<20>,
-- dch1=\EP$<7>, ip=$<5>, use=hp2645,
--
--# 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,
-- 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,
-- da, db,
-- lh#1, lm#48,
-- acsc@,
-- pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s,
-- rmacs@,
-- sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c,
-- sgr0=\E&d@, smacs@, use=hp+labels, use=scrhp,
-+# Columbus UNIX virtual terminal. This terminal also appears in
-+# UNIX 4.0 and successors as line discipline 1 (?), but is
-+# undocumented and does not really work quite right.
-+cbunix|cb unix virtual terminal,
-+ OTbs, am, da, db,
-+ cols#80, lines#24, lm#0,
-+ bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\EG%p2%c%p1%c, cuu1=\EA, dch1=\EM, dl1=\EN, ed=\EL,
-+ el=\EK, ich1=\EO, il1=\EP, ind=^J, kcub1=\ED, kcud1=\EB,
-+ kcuf1=\EC, kcuu1=\EA, khome=\EE, rmso=\Eb^D, rmul=\Eb^A,
-+ smso=\Ea^D, smul=\Ea^A,
-+# (vremote: removed obsolete ":nl@:" -- esr)
-+vremote|virtual remote terminal,
-+ am@,
-+ cols#79, use=cbunix,
-
--hp2621-a|hp2621a-a|hp2621 with fn as arrows,
-- use=hp+pfk+arrows, use=hp2621-fl,
-+pty|4bsd pseudo teletype,
-+ cup=\EG%p1%{32}%+%c%p2%{32}%+%c, rmso=\Eb$, rmul=\Eb!,
-+ smso=\Ea$, smul=\Ea!, use=cbunix,
-
--# newer hewlett packard terminals
-+#### Emacs
-
--newhpkeyboard|generic entry for HP extended keyboard,
-- kbs=^H, kcbt=\Ei, kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-- kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh,
-- kich1=\EQ, kil1=\EL, kind=\ET, kll=\EF, knp=\EU, kpp=\EV,
-- kri=\ES, krmir=\ER, rmkx=\E&s0A, smkx=\E&s1A,
-- use=hp+pfk-cr,
-+# The codes supported by the term.el terminal emulation in GNU Emacs 19.30
-+eterm|gnu emacs term.el terminal emulation,
-+ am, mir, xenl,
-+ cols#80, lines#24,
-+ bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-+ el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, rev=\E[7m,
-+ rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmso=\E[m, rmul=\E[m,
-+ sgr0=\E[m, smcup=\E7\E[?47h, smir=\E[4h, smso=\E[7m,
-+ smul=\E[4m,
-
--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*dHjGkTlRmFn/q\,t5u6v8w7x.,
-- bel=^G, blink=\E&dA, bold=\E&dF, cbt=\Ei, cr=^M, cub1=^H,
-- cud1=^J, cuf1=\EC, cuu1=\EA, dch1=\EP$<2>, dim=\E&dH,
-- dl1=\EM, ed=\EJ, el=\EK, ht=\011$<2>, hts=\E1, il1=\EL, ind=^J,
-- invis=\E&dS, ip=$<2>, is1=\E&jB$<8>, nel=^M^J,
-- pfkey=\E&f0a%p1%dk0d%p2%l%dL%p2%s,
-- pfloc=\E&f1a%p1%dk0d%p2%l%dL%p2%s,
-- pfx=\E&f2a%p1%dk0d%p2%l%dL%p2%s, rev=\E&dB, ri=\ET,
-- rmacs=^O, rmir=\ER, rmso=\E&d@, rmul=\E&d@, rs1=\Eg,
-- sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c%?%p9%t\016%e\017%;,
-- sgr0=\E&d@\017, smacs=^N, smir=\EQ, smso=\E&dJ, smul=\E&dD,
-- tbc=\E3, use=newhpkeyboard,
-+# The codes supported by the term.el terminal emulation in GNU Emacs 22.2
-+eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96,
-+ am, mir, msgr, xenl,
-+ colors#8, cols#80, lines#24, pairs#64,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-+ el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m, kbs=\177,
-+ 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,
-+ 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,
-
--memhp|memory relative addressing for new HP ttys,
-- vt#6,
-- clear=\EH\EJ$<40>, cub=\E&a-%p1%dC, cud=\E&a+%p1%dR,
-- cuf=\E&a+%p1%dC, cup=\E&a%p1%dr%p2%dC, cuu=\E&a-%p1%dR,
-- home=\EH, hpa=\E&a%p1%dC, ll=\E&a23R\r,
-- mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dR, use=newhp,
-+#### Screen
-
--scrhp|screen relative addressing for new HP ttys,
-- clear=\E&a0c0Y\EJ$<40>, cub=\E&a-%p1%dC,
-- cud=\E&a+%p1%dR, cuf=\E&a+%p1%dC,
-- cup=\E&a%p1%dy%p2%dC$<10>, cuu=\E&a-%p1%dR,
-- home=\E&a0y0C, hpa=\E&a%p1%dC, ll=\E&a0y0C\EA,
-- mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dY, use=newhp,
-+# Entries for use by the `screen' program by Juergen Weigert,
-+# Michael Schroeder, Oliver Laumann. The screen and
-+# screen-w entries came with version 3.7.1. The screen2 and screen3 entries
-+# come from University of Wisconsin and may be older.
-+# (screen: added <cnorm> on ANSI model -- esr)
-+#
-+# 'screen' defines extensions to termcap. Some are used in its terminal
-+# description:
-+# G0 (bool) Terminal can deal with ISO 2022 font selection sequences.
-+# AX (bool) Does understand ANSI set default fg/bg color
-+# (\E[39m / \E[49m).
-+# S0 (str) Switch charset 'G0' to the specified charset.
-+# E0 (str) Switch charset 'G0' back to standard charset.
-+#
-+# Initially tested with screen 3.09.08
-+#
-+# According to its manual page
-+#
-+# Screen is a full-screen window manager that multiplexes a physical
-+# terminal between several processes (typically interactive shells). Each
-+# virtual terminal provides the functions of a DEC VT100 terminal and, in
-+# addition, several control functions from the ISO 6429 (ECMA 48, ANSI
-+# X3.64) and ISO 2022 standards (e.g. insert/delete line and support for
-+# multiple character sets).
-+#
-+# However, there is a design error in its support for video highlights. The
-+# program uses a table (rendlist) which equates the SGR codes to terminal
-+# capabilities. That, and color-decoding are hardcoded in screen; its behavior
-+# is modified only by the presence or absence of the corresponding capabilities.
-+# Not by their values.
-+#
-+# If screen sets the TERMCAP variable, it uses hardcoded strings which
-+# correspond to the rendlist table.
-+#
-+# The table gives this information:
-+#
-+# SGR capability
-+# --- ---------
-+# 1 bold
-+# 2 dim
-+# 3 standout
-+# 4 underline
-+# 5 blink
-+# - (unused 6)
-+# 7 reverse
-+# - (unused 8-21)
-+# 22 reset bold, standout and dim
-+# 23 reset standout
-+# 24 reset underline
-+# 25 reset blink
-+# - (unused 26)
-+# 27 reset reverse
-+#
-+# ECMA-48 differs from this: 3 and 23 set and reset italics, respectively.
-+# ECMA-48 does not define "standout" - that is a termcap/terminfo abstraction.
-+# Without some redesign of screen, it is not possible to extend the set of
-+# capabilities. Substitution would be possible, e.g., sending italics in
-+# place of underline.
-+#
-+# Because screen uses hard-coded parsing, it does not check if two capabilities
-+# use the same value. For example, changing standout to be the same as any of
-+# the other capabilities will confuse screen. Curses applications which use
-+# sgr are not impacted (because that usually resets all capabilities before
-+# setting any), but termcap applications do not use sgr -TD
-+screen|VT 100/ANSI X3.64 virtual terminal,
-+ OTbs, OTpt, am, km, mir, msgr, xenl, G0,
-+ colors#8, cols#80, it#8, lines#24, ncv@, pairs#64, U8#1,
-+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
-+ clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
-+ cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-+ dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
-+ flash=\Eg, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, 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,
-+ rmcup=\E[?1049l, 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%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smcup=\E[?1049h, smir=\E[4h,
-+ smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, tbc=\E[3g, E0=\E(B,
-+ S0=\E(%p1%c, use=ecma+color,
-+# 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,
-+ bce,
-+ ech@, use=screen,
-+screen-s|VT 100/ANSI X3.64 virtual terminal with hardstatus line,
-+ dsl=\E_\E\\, fsl=\E\\, tsl=\E_, use=screen,
-
--# (hp+labels: added label values from a BRL termcap -- esr)
--hp+labels|"standard" label info for new HP ttys,
-- lh#2, lw#8, nlab#8,
-- lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8,
-- pln=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s,
-- rmln=\E&j@, smln=\E&jB,
-+# ======================================================================
-+# Entries for GNU Screen with 16 colors.
-+# Those variations permit to benefit from 16 colors palette, and from
-+# bold font and blink attribute separated from bright colors. But they
-+# are less portable than the generic "screen" 8 color entries: Their
-+# usage makes real sense only if the terminals you attach and reattach
-+# do all support 16 color palette.
-
--hp+printer|"standard" printer info for HP ttys,
-- ff=\E&p4u0C, mc0=\EH\E&p4dF, mc4=\E&p13C, mc5=\E&p11C,
-+screen-16color|GNU Screen with 16 colors,
-+ use=ibm+16color, use=screen,
-
-+screen-16color-s|GNU Screen with 16 colors and status line,
-+ use=ibm+16color, use=screen-s,
-
--# The new hp2621b is kind of a cross between the old 2621 and the
--# 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,
-- lh#1, lm#48, lw#8, nlab#8,
-- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh,
-- kind=\ET, kll=\EF, kri=\ES,
-- pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%{111}%p1%+%c\r,
-- smln=\E&jB, use=hp2621,
-+screen-16color-bce|GNU Screen with 16 colors and BCE,
-+ use=ibm+16color, use=screen-bce,
-
--hp2621b-p|hp 2621b with printer,
-- use=hp+printer, use=hp2621b,
-+screen-16color-bce-s|GNU Screen with 16 colors, BCE, and status line,
-+ bce, use=ibm+16color, use=screen-s,
-
--# 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,
-- use=newhpkeyboard, use=hp2621b,
-+# ======================================================================
-+# Entries for GNU Screen 4.02 with --enable-colors256.
-
--hp2621b-kx-p|hp 2621b with new keyboard & printer,
-- use=hp+printer, use=hp2621b-kx,
-+screen-256color|GNU Screen with 256 colors,
-+ use=xterm+256setaf, use=screen,
-
--# Some assumptions are made in the following entries.
--# These settings are NOT set up by the initialization strings.
--#
--# Port Configuration
--# RecvPace=Xon/Xoff XmitPace=Xon/Xoff StripNulDel=Yes
-+screen-256color-s|GNU Screen with 256 colors and status line,
-+ use=xterm+256setaf, use=screen-s,
-+
-+screen-256color-bce|GNU Screen with 256 colors and BCE,
-+ bce, use=xterm+256setaf, use=screen-bce,
-+
-+screen-256color-bce-s|GNU Screen with 256 colors, BCE, and status line,
-+ bce, use=xterm+256setaf, use=screen-s,
-+
-+# ======================================================================
-+
-+# Read the fine manpage:
-+# When screen tries to figure out a terminal name for
-+# itself, it first looks for an entry named "screen.<term>",
-+# where <term> is the contents of your $TERM variable. If
-+# no such entry exists, screen tries "screen" (or "screen-w"
-+# if the terminal is wide (132 cols or more)). If even this
-+# entry cannot be found, "vt100" is used as a substitute.
- #
--# Terminal Configuration
--# InhHndShk(G)=Yes InhDC2(H)=Yes
--# XmitFnctn(A)=No InhEolWrp=No
-+# Notwithstanding the manpage, screen uses its own notion of the termcap
-+# and some keys from "screen.<term>" are ignored. Here is an entry which
-+# covers those (tested with screen 4.00.02) -TD
-+screen+fkeys|function-keys according to screen,
-+ kend=\E[4~, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kfnd@,
-+ khome=\E[1~, kslt@,
-+
-+# See explanation before "screen" entry. Cancel italics so that applications
-+# do not assume screen supports the feature. Add this tweak to entries which
-+# extend screen for terminals which do support italics.
-+screen+italics|screen cannot support italics,
-+ ritm@, sitm@,
- #
-+# Here are a few customized entries which are useful -TD
- #
--# Hp 2622a & hp2623a display and graphics terminals
-+# Notes:
-+# (a) screen does not support invis.
-+# (b) screen's implementation of bw is incorrect according to tack.
-+# (c) screen appears to hardcode the strings for khome/kend, making it
-+# necessary to override the "use=" clause's values (screen+fkeys).
-+# (d) screen sets $TERMCAP to a termcap-formatted copy of the 'screen' entry,
-+# which is NOT the same as the terminfo screen.<term>.
-+# (e) when screen finds one of these customized entries, it sets $TERM to
-+# match. Hence, no "screen.xterm" entry is provided, since that would
-+# create heartburn for people running remote xterm's.
- #
--hp2622|hp2622a|hp 2622,
-- da, db,
-- lm#0, pb#19200,
-- is2=\E&dj@\r, use=hp+pfk+cr, use=hp+labels, use=scrhp,
-+# xterm (-xfree86 or -r6) does not normally support kIC, kNXT and kPRV
-+# since the default translations override the built-in keycode
-+# translation. They are suppressed here to show what is tested by tack.
-+screen.xterm-xfree86|screen.xterm-new|screen customized for modern xterm,
-+ bce@, bw,
-+ invis@, kIC@, kNXT@, kPRV@, meml@, memu@,
-+ sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;m,
-+ E3@, use=screen+italics, use=screen+fkeys, use=xterm-new,
-+# xterm-r6 does not really support khome/kend unless it is propped up by
-+# the translations resource.
-+screen.xterm-r6|screen customized for X11R6 xterm,
-+ bw, use=screen+fkeys, use=xterm-r6,
-+# Color applications running in screen and TeraTerm do not play well together
-+# on Solaris because Sun's curses implementation gets confused.
-+screen.teraterm|disable ncv in teraterm,
-+ ncv#127,
-+ 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,
-+ use=screen+fkeys, use=screen,
-+# Other terminals
-+screen.rxvt|screen in rxvt,
-+ bw, XT,
-+ cvvis@, flash@, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-+ kcuu1=\EOA, use=screen+fkeys, use=vt100+enq,
-+ use=rxvt+pcfkeys, use=vt220+keypad, use=screen,
-+screen.Eterm|screen in Eterm,
-+ use=screen+fkeys, use=Eterm,
-+screen.mrxvt|screen in mrxvt,
-+ use=screen+fkeys, use=mrxvt,
-+screen.vte|screen in any VTE-based terminal,
-+ use=screen+italics, use=screen+fkeys, use=vte,
-+screen.gnome|screen in GNOME Terminal,
-+ use=screen+italics, use=screen+fkeys, use=gnome,
-+screen.konsole|screen in KDE console window,
-+ use=screen+italics, use=screen+fkeys, use=konsole,
-+# fix the backspace key
-+screen.linux|screen in linux console,
-+ bw,
-+ kbs=\177, kcbt@, use=screen+fkeys, use=screen,
-+screen.mlterm|screen in mlterm,
-+ use=screen+fkeys, use=mlterm,
-
--# The 2623 is a 2622 with extra graphics hardware.
--hp2623|hp2623a|hp 2623,
-- use=hp2622,
-+# The default "screen" entry is reasonably portable, but not optimal for the
-+# most widely-used terminal emulators. The "bce" capability is supported in
-+# screen since 3.9.13, and when used, will require fewer characters to be sent
-+# to the terminal for updates.
-+#
-+# If you are using only terminals which support bce, then you can use this
-+# feature in your screen configuration.
-+#
-+# Adding these lines to your ".screenrc" file will allow using these customized
-+# entries:
-+# term screen-bce
-+# bce on
-+# defbce on
-+screen-bce.xterm-new|screen optimized for modern xterm,
-+ bce,
-+ ech@, use=screen+italics, use=screen.xterm-new,
-+screen-bce.rxvt|screen optimized for rxvt,
-+ bce,
-+ ech@, use=screen.rxvt,
-+screen-bce.Eterm|screen optimized for Eterm,
-+ bce,
-+ ech@, use=screen.Eterm,
-+screen-bce.mrxvt|screen optimized for mrxvt,
-+ bce,
-+ ech@, use=screen.mrxvt,
-+screen-bce.gnome|screen optimized for GNOME-Terminal,
-+ bce,
-+ ech@, use=screen+italics, use=screen.gnome,
-+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,
-+ bce,
-+ ech@, use=screen.linux,
-+screen-bce.mlterm|screen optimized for mlterm,
-+ bce,
-+ ech@, use=screen.mlterm,
-
--hp2624b-p|hp2624b-4p-p|hewlett packard 2624 B with printer,
-- use=hp+printer, use=hp2624,
-+screen-w|VT 100/ANSI X3.64 virtual terminal with 132 cols,
-+ cols#132, use=screen,
-
--# 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,
-- lm#240, use=hp2624,
-+screen2|old VT 100/ANSI X3.64 virtual terminal,
-+ cols#80, it#8, lines#24,
-+ cbt=\E[Z, clear=\E[2J\E[H, cr=^M, 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,
-+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J,
-+ el=\E[K, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=, il=\E[%p1%dL,
-+ il1=\E[L, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-+ kcuu1=\EA, kf0=\E~, kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV,
-+ kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\E0I, khome=\EH,
-+ nel=^M^J, rc=\E8, ri=\EM, rmir=\E[4l, rmso=\E[23m,
-+ rmul=\E[24m, rs1=\Ec, sc=\E7, sgr0=\E[m, smir=\E[4h,
-+ smso=\E[3m, smul=\E[4m, tbc=\E[3g,
-+# (screen3: removed unknown ":xv:LP:G0:" -- esr)
-+screen3|older VT 100/ANSI X3.64 virtual terminal,
-+ km, mir, msgr,
-+ cols#80, it#8, lines#24,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-+ cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
-+ 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@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0, kbs=^H, kcub1=\EOD,
-+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ,
-+ kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM,
-+ rmir=\E[4l, rmkx=\E>, rmso=\E[23m, rmul=\E[24m, rs1=\Ec,
-+ sc=\E7, sgr0=\E[m, smir=\E[4h, smkx=\E=, smso=\E[3m,
-+ smul=\E[4m, tbc=\E[3g,
-
--hp2624b-10p-p|hewlett packard 2624 B w/ extra memory & printer,
-- lm#240, use=hp2624b-p,
-+#### NCSA Telnet
-
--# Color manipulations for HP terminals
--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.%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,
-- oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5I\E&v1b1c6I\E&v1x1y7I,
-- op=\E&v0S, scp=\E&v%p1%dS,
--
--# <is2> sets the screen to be 80 columns wide
--hp2397a|hp2397|hewlett packard 2397A color terminal,
-- is2=\E&w6f80X, use=memhp, use=hp+labels, use=hp+color,
-+# Francesco Potorti <F.Potorti@cnuce.cnr.it>:
-+# NCSA telnet is one of the most used telnet clients for the Macintosh. It has
-+# been maintained until recently by the National Center for Supercomputer
-+# Applications, and it is feature rich, stable and free. It can be downloaded
-+# from www.ncsa.edu. This terminfo description file is based on xterm-vt220,
-+# xterm+sl, and the docs at NCSA. It works well.
-+#
-+# NCSA Telnet 2.6 for Macintosh in vt220 8-bit emulation mode
-+# The terminal options should be set as follows:
-+# Xterm sequences ON
-+# use VT wrap mode ON
-+# use Emacs arrow keys OFF
-+# CTRL-COMND is Emacs meta ON
-+# 8 bit mode ON
-+# answerback string: "ncsa-vt220-8"
-+# setup keys: all disabled
-+#
-+# Application mode is not used.
-+#
-+# Other special mappings:
-+# Apple VT220
-+# HELP Find
-+# HOME Insert here
-+# PAGEUP Remove
-+# DEL Select
-+# END Prev Screen
-+# PAGEDOWN Next Screen
-+#
-+# Though it supports ANSI color, NCSA Telnet uses color to represent blinking
-+# text.
-+#
-+# The status-line manipulation is a mapping of the xterm-compatible control
-+# sequences for setting the window-title. So you must use tsl and fsl in
-+# pairs, since the latter ends the string that is loaded to the window-title.
-+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=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-+ el=\E[K, el1=\E[1K, enacs=\E)0, flash=\E[?5h\E[?5l,
-+ home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-+ if=/usr/share/tabset/vt100, il=\E[%p1%dL, il1=\E[L,
-+ ind=\n$<150*>,
-+ is2=\E7\E[r\E[m\E[?7h\E[?1;4;6l\E[4l\E8\E>, kbs=^H,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\E[4~, kend=\E[5~, kf1=\E[17~, kf10=\E[28~,
-+ kf11=\E[29~, kf12=\E[31~, kf13=\E[32~, kf14=\E[33~,
-+ kf15=\E[34~, kf2=\E[18, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~,
-+ kf6=\E[23~, kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khlp=\E[1~,
-+ khome=\E[2~, knp=\E[6~, kpp=\E[3~, mc4=\E[4i, mc5=\E[5i,
-+ rc=\E8, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EM,
-+ rmacs=\E(B, rmam=\E[?7l, rmcup=\E[2J\E8, rmir=\E[4l,
-+ rmso=\E[27m, rmul=\E[24m,
-+ rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;4;6l\E[4l\E>, 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%;,
-+ 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,
-+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,
-+ hs@,
-+ dsl@, fsl@, tsl@, use=ncsa,
-+ncsa-m-ns|NCSA Telnet 2.6 for Macintosh in vt220-8 mode,
-+ hs@,
-+ dsl@, fsl@, tsl@, use=ncsa-m,
-+# alternate -TD:
-+# The documented function-key mapping refers to the Apple Extended Keyboard
-+# (e.g., NCSA Telnet's F1 corresponds to a VT220 F6). We use the VT220-style
-+# codes, however, since the numeric keypad (VT100) PF1-PF4 are available on
-+# some keyboards and many applications require these as F1-F4.
-+#
-+ncsa-vt220|NCSA Telnet using vt220-compatible function keys,
-+ 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~, use=ncsa,
-
--# HP 700/44 Setup parameters:
--# Terminal Mode HP-PCterm
--# Inhibit Auto Wrap NO
--# Status Line Host Writable
--# PC Character Set YES
--# Twenty-Five Line Mode YES
--# XON/XOFF @128 or 64 (sc)
--# Keycode Mode NO or YES (sc)
--# Backspace Key BS or BS/DEL
-+#### Pilot Pro Palm-Top
- #
--# <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,
-- 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=^M, 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=^J,
-- 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~,
-- kf2=\E[18~, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~, kf6=\E[23~,
-- kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khome=\E[1~, knp=\E[6~,
-- kpp=\E[5~, rmam=\E[?7l,
-- 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,
-+# Termcap for Top Gun Telnet and SSH on the Palm Pilot.
-+# http://www.ai/~iang/TGssh/
-+pilot|tgtelnet|Top Gun Telnet on the Palm Pilot Professional,
-+ OTbs, am, xenl,
-+ cols#39, lines#16,
-+ bel=^G, clear=\Ec, cr=^M, cub1=^H, cud1=^J,
-+ cup=\Em%p1%{32}%+%c%p2%{32}%+%c, home=\Em\s\s, ht=^I,
-+ ind=^J, kbs=^H, kcub1=^H, kcud1=^J, knp=^L, kpp=^K, nel=\Em~\s,
-+ rmso=\EB, smso=\Eb,
-+
-+# From: Federico Bianchi <bianchi@www.arte.unipi.it>
-+# These entries are for the Embeddable Linux Kernel System (ELKS)
-+# project - an heavily stripped down Linux to be run on 16 bit
-+# boxes or, eventually, to be used in embedded systems - and have been
-+# adapted from the stock ELKS termcap. The project itself looks stalled,
-+# and the latest improvements I know of date back to March 2000.
- #
--# (hp2392: copied <rmir> here from hpex -- esr)
--hp2392|239x series,
-- cols#80,
-- cbt=\Ei, cup=\E&a%p1%dy%p2%dC, kf1=\Ep\r, kf2=\Eq\r,
-- kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r,
-- kf8=\Ew\r, khome=\Eh, kind=\EU, knp=\Eu, kpp=\Ev, kri=\EV,
-- rmir=\ER, rmul=\E&d@, smir=\EQ, smul=\E&dD, vpa=\E&a%p1%dY,
-- use=hpsub,
-+# To cope with the ELKS dumb console I added an "elks-glasstty" entry;
-+# as an added bonus, this deals with all the capabilities common to
-+# both VT52 and ANSI (or, eventually, "special") modes.
-
--hpsub|hp terminals -- capability subset,
-- am, da, db, mir, xhp, xon,
-- lines#24,
-- bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC,
-- cuu1=\EA, dch1=\EP, dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC,
-- ht=^I, if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J,
-- is2=\E&s1A\E<\E&k0\\, kbs=^H, kcub1=\ED, kcud1=\EB,
-- kcuf1=\EC, kcuu1=\EA, khome=\Eh, rmkx=\E&s0A, rmso=\E&d@,
-- sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB,
-+elks-glasstty|ELKS glass-TTY capabilities,
-+ OTbs, am,
-+ cols#80, it#8, lines#25,
-+ bel=^G, cr=^M, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J,
-+ nel=^M^J,
-
--# hpex:
--# May be used for most 24 x 80 hp terminals,
--# but has no padding added, so may allow runover in some terminals at high
--# baud rates. Will not work for hp2640a or hp2640b terminals, hp98x6 and
--# hp98x5 terminal emulators or hp98x6 consoles.
--# Adds xy-cursor addressing, vertical cursor addressing, home,
--# last line, and underline capabilities.
-+elks-vt52|ELKS vt52 console,
-+ clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\EK,
-+ home=\EH, use=elks-glasstty,
-+
-+elks-ansi|ELKS ANSI console,
-+ clear=\E[H\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H,
-+ rmso=\E[m, smso=\E[7m, use=elks-glasstty,
-+
-+# As a matter of fact, ELKS 0.0.83 on PCs defaults to ANSI emulation
-+# instead of VT52, but the "elks" entry still refers to the latter.
-+
-+elks|default ELKS console,
-+ use=elks-vt52,
-+
-+# Project SIBO (for Psion 3 palmtops) console is identical to the ELKS
-+# one but in screen size
-+
-+sibo|ELKS SIBO console,
-+ cols#61, it#8, lines#20, use=elks-vt52,
-+
-+######## COMMERCIAL WORKSTATION CONSOLES
- #
--# (hpex: removed memory-lock capabilities ":ml=\El:mu=\Em:",
--# moved <rmir> here from hpsub -- esr)
--hpex|hp extended capabilites,
-- cr=^M, cud1=^J, cup=\E&a%p1%dy%p2%dC, ht=^I, ind=^J, kbs=^H,
-- kcub1=^H, kcud1=^J, nel=^M^J, 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,
-- 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=^M, 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=^J, 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,
-- 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, rmir=\ER, rmkx=\E&s0A,
-- rmln=\E&j@, rmso=\E&d@, rmul=\E&d@,
-- sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;,
-- sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smln=\E&jB, smso=\E&dB,
-- smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
-+#### Alpha consoles
-+#
-
--# HP 236 console
--# From: <ddavis@ic.berkeley.edu>
--hp236|hp236 internal terminal emulator,
-- OTbs, am,
-- cols#80, lines#24,
-- clear=\EF, cnorm=\EDE, cub1=^H,
-- cup=\EE%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\EDB,
-- dch1=\EJ, dl1=\EH, el=\EK, ich1=\EI, il1=\EG, rmso=\ECI,
-- sgr0=\ECI, smso=\EBI,
-+# This is from the OSF/1 Release 1.0 termcap file
-+pccons|pcconsole|ANSI (mostly) Alpha PC console terminal emulation,
-+ am, xon,
-+ cols#80, lines#25,
-+ bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
-+ el=\E[K, home=\E[H, ht=^I, ich1=\E[@, il1=\E[L, kbs=^H,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H,
-+ nel=^M^J, rev=\E[7m, rmso=\E[m, sgr0=\E[m, smso=\E[7m,
-
--# This works on a hp300 console running Utah 4.3 BSD
--# From: Craig Leres <leres@okeeffe.berkeley.edu>
--hp300h|HP Catseye console,
-- OTbs, am, da, db, mir, xhp,
-- cols#128, lines#51, lm#0, xmc#0,
-- bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, 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,
-- if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J, kbs=^H,
-- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh,
-- rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@,
-- smir=\EQ, smkx=\E&s1A, smso=\E&dB, smul=\E&dD, tbc=\E3,
-- vpa=\E&a%p1%dY,
--# From: Greg Couch <gregc@ernie.berkeley.edu>
--hp9837|hp98720|hp98721|HP 9000/300 workstations,
-- OTbs, am, da, db, mir, xhp,
-- cols#128, it#8, lines#46, lm#0,
-- bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, 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=^J, is2=\E&v0m1b0i&j@, kbs=^H, kcub1=\ED,
-- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM,
-- ked=\EJ, kel=\EK, khome=\Eh, kich1=\EQ, kil1=\EL, knp=\EU,
-- kpp=\EV, rmir=\ER, rmkx=\E&s0A, rmso=\E&v0S, rmul=\E&d@,
-- sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smso=\E&v5S, smul=\E&dD,
-- tbc=\E3, vpa=\E&a%p1%dY,
--# HP 9845 desktop computer from BRL
--# (hp9845: removed unknown capability :gu: -- esr)
--hp9845|HP 9845,
-- OTbs, am, da, db, eo, mir, xhp,
-- cols#80, lines#21,
-- OTbc=\ED, clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC,
-- cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM,
-- ed=\EJ, el=\EK, if=/usr/share/tabset/std, il1=\EL,
-- rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB,
--# From: Charles A. Finnell of MITRE <finnell@mitre.org>, developed 07SEP90
--# (hp98550: replaced /usr/share/tabset/9837 with std because <it#8>,<hts=\E1>;
--# added empty <acsc> to avoid warnings re <smacs>/<rmacs> --esr)
--hp98550|hp98550a|HP 9000 Series 300 color console,
-- OTbs, am, da, db, mir, xhp,
-- cols#128, it#8, lines#49, lm#0,
-- acsc=, bel=^G, blink=\E&dA, bold=\E&dJ, cbt=\Ei, civis=\E*dR,
-- clear=\EH\EJ, cnorm=\E*dQ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- 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=^J, 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,
--# 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)
--hp700-wy|HP700/41 emulating wyse30,
-- OTbs, am, bw, mir, msgr,
-- cols#80, it#8, lines#24, xmc#1,
-- cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^V, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\EY, el=\ET$<10/>, home=^^, ht=^I, hts=\E1,
-- if=/usr/share/tabset/stdcrt, il1=\EE$<0.7*/>,
-- is1=\E~"\EC\Er\E(\EG0\003\E`9\E`1, kbs=\177, kcbt=\EI,
-- kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, ked=\EY,
-- kel=\ET, khome=^^, khts=\EI, kich1=\Eq, krmir=\Er, ll=^^^K,
-- ri=\Ej, rmir=\Er, rmso=\EG0$<10/>, rmul=\EG0$<10/>,
-- sgr0=\EG0$<10/>, smir=\Eq, smso=\EG4$<10/>,
-- smul=\EG8$<10/>, tbc=\E0, vpa=\E[%p1%{32}%+%c,
--hp70092|hp70092a|hp70092A|HP 700/92,
-- am, da, db, xhp,
-- cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8,
-- acsc=0cjgktlrmfn/q\,t5u6v8w7x., bel=^G, blink=\E&dA,
-- bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, 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,
-+#### Sun consoles
-+#
-
--bobcat|sbobcat|HP 9000 model 300 console,
-- am, da, db, mir, xhp,
-- cols#128, it#8, lines#47, xmc#0,
-- cbt=\Ei, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC,
-- cup=\E&a%p1%dy%p2%dC$<6/>, cuu1=\EA, dch1=\EP,
-- dl1=\EM$<10*/>, ed=\EJ, el=\EK, hpa=\E&a%p1%dC$<6/>, ht=^I,
-- il1=\EL$<10*/>, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB,
-- kcuf1=\EC, kcuu1=\EA, khome=\Eh, nel=^M^J, rmir=\ER,
-- rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, smir=\EQ,
-- smkx=\E&s1A, smso=\E&dB, smul=\E&dD, vpa=\E&a%p1%dY$<6/>,
--gator-t|HP 9000 model 237 emulating extra-tall AAA,
-- lines#94, use=gator,
--gator|HP 9000 model 237 emulating AAA,
-- bw, km, mir, ul,
-- cols#128, it#8, lines#47,
-- bel=^G, cbt=\E[Z, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J,
-- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM,
-- dch=\E[%p1%dP$<4/>, dch1=\E[P, dl=\E[%p1%dM$<1*/>,
-- dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%i%p1%d`,
-- ht=^I, ich=\E[%p1%d@$<4/>, ich1=\E[@, il=\E[%p1%dL$<1*/>,
-- il1=\E[L, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J,
-- 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,
--gator-52t|HP 9000 model 237 emulating extra-tall VT52,
-- lines#94, use=gator-52,
-+# :is1: resets scrolling region in case a previous user had used "tset vt100"
-+oldsun|Sun Microsystems Workstation console,
-+ OTbs, am, km, mir, msgr,
-+ cols#80, it#8, lines#34,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=\E[B, 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, ed=\E[J, el=\E[K, ht=^I,
-+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ is1=\E[1r, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H,
-+ rmso=\E[m, sgr0=\E[m, smso=\E[7m,
-+# From: Alexander Lukyanov <lav@video.yars.free.net>, 14 Nov 1995
-+# <lines> capability later corrected by J.T. Conklin <jtc@cygnus.com>
-+# SGR 1, 4 aren't supported - removed bold/underline (T.Dickey 17 Jan 1998)
-+sun-il|Sun Microsystems console with working insert-line,
-+ am, km, msgr,
-+ cols#80, lines#34,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^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, ed=\E[J, el=\E[K, ht=^I,
-+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ kb2=\E[218z, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kdch1=\177, kend=\E[220z, kf1=\E[224z,
-+ kf10=\E[233z, kf11=\E[234z, kf12=\E[235z, kf2=\E[225z,
-+ kf3=\E[226z, kf4=\E[227z, kf5=\E[228z, kf6=\E[229z,
-+ kf7=\E[230z, kf8=\E[231z, kf9=\E[232z, khome=\E[214z,
-+ kich1=\E[247z, knp=\E[222z, kopt=\E[194z, kpp=\E[216z,
-+ kres=\E[193z, kund=\E[195z, rev=\E[7m, rmso=\E[m, rmul@,
-+ rs2=\E[s, sgr=\E[0%?%p1%p3%|%t;7%;m, sgr0=\E[m,
-+ smso=\E[7m, u8=\E[1t, u9=\E[11t,
-+# On some versions of CGSIX framebuffer firmware (SparcStation 5), <il1>/<il>
-+# flake out on the last line. Unfortunately, without them the terminal has no
-+# way to scroll.
-+sun-cgsix|sun-ss5|Sun SparcStation 5 console,
-+ il@, il1@, use=sun-il,
-+# If you are using an SS5, change the sun definition to use sun-ss5.
-+sun|sun1|sun2|Sun Microsystems Inc. workstation console,
-+ use=sun-il,
-
--#### Honeywell-Bull
-+sun+sl|Sun Workstation window status line,
-+ hs,
-+ dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l,
-+
-+# From: <john@ucbrenoir> Tue Sep 24 13:14:44 1985
-+sun-s|Sun Microsystems Workstation window with status line,
-+ hs,
-+ dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun,
-+sun-e-s|sun-s-e|Sun Microsystems Workstation with status hacked for emacs,
-+ hs,
-+ dsl=\E]l\E\\, fsl=\E\\, tsl=\E]l, use=sun-e,
-+sun-48|Sun 48-line window,
-+ cols#80, lines#48, use=sun,
-+sun-34|Sun 34-line window,
-+ cols#80, lines#34, use=sun,
-+sun-24|Sun 24-line window,
-+ cols#80, lines#24, use=sun,
-+sun-17|Sun 17-line window,
-+ cols#80, lines#17, use=sun,
-+sun-12|Sun 12-line window,
-+ cols#80, lines#12, use=sun,
-+sun-1|Sun 1-line window for sysline,
-+ eslok, hs,
-+ cols#80, lines#1,
-+ dsl=^L, fsl=\E[K, tsl=^M, use=sun,
-+sun-e|sun-nic|sune|Sun Microsystems Workstation without insert character,
-+ ich1@, rmir@, smir@, use=sun,
-+sun-c|sun-cmd|Sun Microsystems Workstation console with scrollable history,
-+ lines#35,
-+ rmcup=\E[>4h, smcup=\E[>4l, use=sun,
-+sun-type4|Sun Workstation console with type 4 keyboard,
-+ kcub1=\E[217z, kcud1=\E[221z, kcuf1=\E[219z,
-+ kcuu1=\E[215z, use=sun-il,
-+
-+# Most of the current references to sun-color are from users wondering why this
-+# is the default on install. Details from reading the wscons manpage, adding
-+# cub, etc., here (rather than in the base sun-il entry) since it is not clear
-+# when those were added -TD (2005-05-28)
- #
--# From: Michael Haardt <michael@gandalf.moria> 11 Jan 93
-+# According to wscons manpage, color is supported only on IA systems.
-+# Sun's terminfo entry documents bold and smul/rmul capabilities, but wscons
-+# does not list these. It also sets ncv#3, however that corresponds to
-+# underline and standout.
-+#
-+# Since the documentation and terminfo do not agree, see also current code at
-+# http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/tem_safe.c
- #
-+# That (actually a different driver which "supports" sun-color) also supports
-+# these features:
-+# vpa=\E[%i%p1%dd
-+# hpa=\E[%i%p1%d`
-+# cbt=\E[Z
-+# dim=\E[2m
-+# blink=\E[5m
-+# It supports bold, but not underline -TD (2009-09-19)
-+sun-color|Sun Microsystems Workstation console with color support (IA systems),
-+ colors#8, ncv#3, pairs#64,
-+ bold=\E[1m, cub=\E[%p1%dD, cud=\E[%p1%dB, cuf=\E[%p1%dC,
-+ cuu=\E[%p1%dA, home=\E[H, op=\E[0m, rs2=\E[s,
-+ 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}%=%t3%e%p1%d%;m,
-+ sgr=\E[0%?%p6%t;1%;%?%p1%p3%|%t;7%;m, sgr0=\E[m,
-+ smso=\E[7m, use=sun,
-
--# Honeywell Bull terminal. Its cursor and function keys send single
--# control characters and it has standout/underline glitch. Most programs
--# do not like these features/bugs. Visual bell is realized by flashing the
--# "keyboard locked" LED.
--dku7003-dumb|Honeywell Bull DKU 7003 dumb mode,
-- cols#80, lines#25,
-- clear=^]^_, cr=^M, cub1=^Y, cud1=^K, cuf1=^X,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, ed=^_, el=\E[K,
-- flash=\E[2h\E[2l, home=^], ht=^I, ind=^J, kbs=^H, kcub1=^Y,
-- kcud1=^K, kcuf1=^X, kcuu1=^Z, khome=^], nel=^M^J,
--dku7003|Honeywell Bull DKU 7003 all features described,
-- msgr,
-- xmc#1,
-- blink=\E[5m, bold=\E[7m, dim=\E[2m, rev=\E[7m, rmso=\E[m,
-- rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-- use=dku7003-dumb,
-+#### Iris consoles
-+#
-
--#### Lear-Siegler (adm)
-+# (wsiris: this had extension capabilities
-+# :HS=\E7F2:HE=\E7F7:\
-+# :CT#2:CZ=*Bblack,red,green,yellow,blue,magenta,cyan,*Fwhite:
-+# 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),
-+ OTbs, OTnc, OTpt, am,
-+ OTkn#3, cols#80, it#8, lines#40,
-+ OTnl=\EB, bel=^G, clear=\Ev, cnorm=\E>, cub1=^H, cud1=\EB,
-+ cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA,
-+ cvvis=\E;, dim=\E7F2, dl1=\EM, ed=\EJ, el=\EK,
-+ flash=\E7F4\E7B1\013\E7F7\E7B0, home=\EH, ht=^I, il1=\EL,
-+ ind=^J, is2=\E7B0\E7F7\E7C2\E7R3, kcub1=\ED, kcud1=\EB,
-+ kcuf1=\EC, kcuu1=\EA, kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3,
-+ kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8, kf9=\E9, ri=\EI,
-+ rmso=\E0@, rmul=\E7R3\E0@, sgr0=\E7F7, smso=\E9P,
-+ smul=\E7R2\E9P,
-+
-+#### NeWS consoles
- #
--# 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
--# emulations (usually their stupidest, and usually labeled adm3, though
--# these `adm3' emulations normally have adm3a+ capabilities).
-+# Console terminal windows under the NeWS (Sun's Display Postscript windowing
-+# environment). Note: these have nothing to do with Sony's News workstation
-+# line.
- #
--# WARNING: Some early ADM terminals (including the ADM3 and ADM5) had a
--# `diagnostic feature' that sending them a ^G while pin 22 (`Ring Indicator')
--# was being held to ground would trigger a send of the top line on the screen.
--# A quick fix might be to drop back to a cheesy 4-wire cable with pin 22
--# hanging in the air. (Thanks to Eric Fischer, <eric@fudge.uchicago.edu>,
--# for clearing up this point.)
-
--adm1a|adm1|lsi adm1a,
-- am,
-- cols#80, lines#24,
-- bel=^G, clear=\E;$<1>, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, home=^^,
-- ind=^J,
--adm2|lsi adm2,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\EY, el=\ET, home=^^, ich1=\EQ, il1=\EE, ind=^J,
-- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^,
--# (adm3: removed obsolete ":ma=^K^P:" -- esr)
--adm3|lsi adm3,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, ind=^J,
--# The following ADM-3A switch settings are assumed for normal operation:
--# SPACE U/L_DISP CLR_SCRN 24_LINE
--# CUR_CTL LC_EN AUTO_NL FDX
--# Other switches may be set for operator convenience or communication
--# requirements. I recommend
--# DISABLE_KB_LOCK LOCAL_OFF 103 202_OFF
--# ETX_OFF EOT_OFF
--# Most of these terminals required an option ROM to support lower case display.
--# Open the case and look at the motherboard; if you see an open 24-pin DIP
--# socket, you may be out of luck.
-+# Entry for NeWS's psterm from Eric Messick & Hugh Daniel
-+# (psterm: unknown ":sl=\EOl:el=\ENl:" removed -- esr)
-+psterm|psterm-basic|NeWS psterm-80x34,
-+ OTbs, am, hs, km, ul,
-+ cols#80, it#8, lines#34,
-+ blink=\EOb, bold=\EOd, clear=^L, csr=\EE%p1%d;%p2%d;,
-+ cub1=\ET, cud1=\EP, cuf1=\EV, cup=\E%p1%d;%p2%d;, cuu1=\EY,
-+ dch1=\EF, dl1=\EK, ed=\EB, el=\EC, flash=\EZ, fsl=\ENl,
-+ home=\ER, ht=^I, il1=\EA, ind=\EW, is1=\EN*, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, ll=\EU, rc=^\, rev=\EOr,
-+ ri=\EX, rmcup=\ENt, rmir=\ENi, rmso=\ENo, rmul=\ENu, sc=^],
-+ sgr0=\EN*, smcup=\EOt, smir=\EOi, smso=\EOo, smul=\EOu,
-+ tsl=\EOl,
-+psterm-96x48|NeWS psterm 96x48,
-+ cols#96, lines#48, use=psterm,
-+psterm-90x28|NeWS psterm 90x28,
-+ cols#90, lines#28, use=psterm,
-+psterm-80x24|NeWS psterm 80x24,
-+ cols#80, lines#24, use=psterm,
-+# This is a faster termcap for psterm. Warning: if you use this termcap,
-+# some control characters you type will do strange things to the screen.
-+# (psterm-fast: unknown ":sl=^Ol:el=^Nl:" -- esr)
-+psterm-fast|NeWS psterm fast version (flaky ctrl chars),
-+ OTbs, am, hs, km, ul,
-+ cols#80, it#8, lines#34,
-+ blink=^Ob, bold=^Od, clear=^L, csr=\005%p1%d;%p2%d;,
-+ cub1=^T, cud1=^P, cuf1=^V, cup=\004%p1%d;%p2%d;, cuu1=^Y,
-+ dch1=^F, dl1=^K, ed=^B, el=^C, flash=^Z, fsl=^Nl, home=^R, ht=^I,
-+ il1=^A, ind=^W, is1=^N*, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, ll=^U, rc=^\, rev=^Or, ri=^X, rmcup=^Nt, rmir=^Ni,
-+ rmso=^No, rmul=^Nu, sc=^], sgr0=^N*, smcup=^Ot, smir=^Oi,
-+ smso=^Oo, smul=^Ou, tsl=^Ol,
-+
-+#### NeXT consoles
- #
--# (adm3a: some capabilities merged in from BRl entry -- esr)
--adm3a|lsi adm3a,
-- OTbs, am,
-- cols#80, lines#24,
-- OTma=^K^P, OTnl=^J, bel=^G, clear=\032$<1/>, cr=^M, cub1=^H,
-- cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=^K, home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L,
-- kcuu1=^K, rs2=^N,
--adm3a+|adm3a plus,
-- kbs=^H, use=adm3a,
--# (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do=^J:" -- esr)
--adm5|lsi adm5,
-- xmc#1,
-- bel=^G, cr=^M, cud1=^J, ed=\EY, el=\ET, kbs=^H, khome=^^,
-- rmso=\EG, smso=\EG, use=adm3a+,
--# A lot of terminals other than adm11s use these. Wherever you see
--# use=adm+sgr with some of its capabilities disabled, try the
--# disabled ones. They may well work but not have been documented or
--# expressed in the using entry. We'd like to cook up an <sgr> but the
--# <rmacs>/<smacs> sequences of the using entries vary too much.
--adm+sgr|adm style highlight capabilities,
-- invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0, sgr0=\EG0,
-- smso=\EG4, smul=\EG8,
--# LSI ADM-11 from George William Hartwig, Jr. <geo@BRL-TGR.ARPA> via BRL
--# Status line additions from Stephen J. Muir <stephen%comp.lancs.ac.uk@ucl-cs>
--# <khome> from <stephen%comp.lancs.ac.uk@ucl-cs.arpa>. <clear> could also
--# be ^Z, according to his entry.
--# (adm11: <smul>=\EG4 was obviously erroneous because it also said
--# <rev>=\EG4. Looking at other ADMs confirms this -- esr)
--adm11|LSI ADM-11,
-- OTbs, am, hs,
-- OTkn#8, cols#80, lines#24,
-- OTnl=^J, bel=^G, blink=\EG2, clear=\E*, cr=^M, cub1=^H,
-- cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=^K, dsl=\Eh, ed=\EY, el=\ET, fsl=\E(\r, home=^^, ht=^I,
-- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r,
-- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r,
-- kf7=^AF\r, kf8=^AG\r, khome=^^, nel=^M^J, tsl=\EF\E),
-- use=adm+sgr,
--# From: Andrew Scott Beals <bandy@lll-crg.ARPA>
--# Corrected by Olaf Siebert <rhialto@polder.ubc.kun.nl>, 11 May 1995
--# Supervisor mode info by Ari Wuolle, <awuolle@delta.hut.fi>, 27 Aug 1996
--# (adm12: removed obsolete ":kn:ma=j^Jk^P^K^Pl ^R^L^L :". This formerly had
--# <is2>=\Eq but that looked wrong; this <is2> is from Dave Yost <esquire!yost>
--# via BRL. That entry asserted <xmc#1>, but I've left that out because
--# neither earlier nor later ADMSs have it -- esr)
-+# Use `glasstty' for the Workspace application
- #
--# You will need to get into the supervisor setup before you can set
--# baudrate etc. for your ADM-12+. Press Shift-Ctrl-Setup and you should
--# see a lot more setup options.
-+
-+# From: Dave Wetzel <dave@turbocat.snafu.de> 22 Dec 1995
-+next|NeXT console,
-+ am, xt,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H,
-+ ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J,
-+ rmso=\E[4;1m, sgr0=\E[m, smso=\E[4;2m,
-+nextshell|NeXT Shell application,
-+ am,
-+ cols#80,
-+ bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, kbs=^H, kcub1=^H,
-+ kcud1=^J, nel=^M^J,
-+
-+#### Sony NEWS workstations
- #
--# While in supervisor setup you can also use following codes:
-+
-+# (news-unk: this had :KB=news: -- esr)
-+news-unk|SONY NEWS vt100 emulator common entry,
-+ OTbs, OTpt, am, xenl,
-+ cols#80,
-+ OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J,
-+ cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M,
-+ ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-+ if=/usr/share/tabset/vt100, il=\E[%p1%dL, il1=\E[L,
-+ is2=\E[?7h\E[?1h\E[?3l\E7\E8, kbs=^H, kcub1=\EOD,
-+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOY, kf1=\EOP,
-+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV,
-+ kf8=\EOW, kf9=\EOX, rc=\E8, rev=\E[7m, ri=\EM,
-+ rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[r, sc=\E7,
-+ sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
- #
--# Ctrl-P Personality character selections (configure for example what
--# arrow keys send, if I recall correctly)
--# Ctrl-T tabs 1-80 use left&right to move and up to set and
--# Ctrl-V tabs 81-158 down to clear tab. Shift-Ctrl-M sets right margin at cursor
--# Ctrl-B Binary setup (probably not needed. I think that everything can
--# be set using normal setup)
--# Ctrl-A Answerback mode (enter answerback message)
--# Ctrl-U User friendly mode (normal setup)
--# Ctrl-D Defaults entire setup and function keys from EPROM tables
--# Ctrl-S Save both setup and functions keys. Takes from 6 to 10 seconds.
--# Ctrl-R Reads both setup and functions keys from NVM.
--# Shift-Ctrl-X Unlock keyboard and cancel received X-OFF status
-+# (news-29: this had :TY=ascii: --esr)
-+news-29,
-+ lines#29, use=news-unk,
-+# (news-29-euc: this had :TY=euc: --esr)
-+news-29-euc,
-+ use=news-29,
-+# (news-29-sjis: this had :TY=sjis: --esr)
-+news-29-sjis,
-+ use=news-29,
- #
--# ADM-12+ supports hardware handshaking, but it is DTR/CTS as opposed to
--# RTS/CTS used nowadays with virtually every modem and computer. 19200
--# bps works fine with hardware flow control.
-+# (news-33: this had :TY=ascii: --esr)
-+news-33,
-+ lines#33, use=news-unk,
-+# (news-33-euc: this had :TY=euc: --esr)
-+news-33-euc,
-+ use=news-33,
-+# (news-33-sjis: this had :TY=sjis: --esr)
-+news-33-sjis,
-+ use=news-33,
- #
--# The following null-modem cable should fix this and enable you to use
--# RTS/CTS handshaking (which Linux supports, use CRTSCTS setting). Also
--# set ADM-12+ for DTR handshaking from supervisor setup.
-+# (news-42: this had :TY=ascii: --esr)
-+news-42,
-+ lines#42, use=news-unk,
-+# (news-42-euc: this had :TY=euc: --esr)
-+news-42-euc,
-+ use=news-42,
-+# (news-42-sjis: this had :TY=sjis: --esr)
-+news-42-sjis,
-+ use=news-42,
- #
--# PC Serial ADM-12+
--# -------- -------
--# 2 - 3
--# 3 - 2
--# 4 - 5
--# 5 - 20
--# 6,8 - 4
--# 7 - 7
--# 20 - 6,8
-+# NEWS-OS old termcap entry
- #
--adm12|lsi adm12,
-- OTbs, OTpt, am, mir,
-- OTug#1, cols#80, it#8, lines#24,
-- bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\EY, el=\ET, home=^^, hts=\E1, ich1=\EQ, il1=\EE,
-- is2=\E0 \E1 \E1 \E1 \E1 \E1 \E1 \E1 \E1,
-- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r,
-- kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r,
-- 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,
-- OTbs, am,
-- cols#80, it#8, lines#24,
-- bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cuf1=^L,
-- cup=\E=%i%p2%{31}%+%c%p1%{31}%+%c, cuu1=^K, dch1=\EW,
-- 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,
-- xmc#1,
-- bel=^G, cr=^M, cud1=^J, dch1=\EW, dl1=30*\ER, ed=\EY, el=\ET,
-- ich1=\EQ, il1=30*\EE, ind=^J, invis@, kbs=^H, kcub1=^H,
-- kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, use=adm+sgr,
-- use=adm3a,
--# (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,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\Ey, el=\Et, home=^^, ht=\Ei, ich1=\EQ, il1=\EE,
-- is2=\E%\014\014\014\016\003\0\003\002\003\002\0\0\0\0\0\0\0\0\0\0\0,
-- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r,
-- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r,
-- kf7=^AF\r, khome=^^, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5,
-- lf6=F6, lf7=F7, rmso=\E(, sgr0=\E(, smso=\E),
--# ADM 31 DIP Switches
-+# (news-old-unk: this had :KB=news:TY=sjis: --esr)
-+news-old-unk|SONY NEWS vt100 emulator common entry,
-+ OTbs, OTpt, am, xenl,
-+ cols#80, vt#3,
-+ OTnl=^J, bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[;H\E[2J,
-+ cr=^M, csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-+ home=\E[H, ht=^I, if=/usr/share/tabset/vt100, kbs=^H,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP,
-+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8, rev=\E[7m, ri=\EM,
-+ rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
- #
--# This information comes from two versions of the manual for the
--# Lear-Siegler ADM 31.
-+# (nwp512: this had :DE=^H:, which I think means <OTbs> --esr)
-+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;40r\E8,
-+ use=news-old-unk,
- #
--# Main board:
--# rear of case
--# +-||||-------------------------------------+
--# + S1S2 ||S +
--# + ||3 +
--# + +
--# + ||S +
--# + ||4 +
--# + +
--# + +
--# + +
--# + +
--# + +
--# +-+ +-+
--# + +
--# + S5 S6 S7 +
--# + == == == +
--# +----------------------------------------------+
--# front of case (keyboard)
--#
--# S1 - Data Rate - Modem
--# S2 - Data Rate - Printer
--# ------------------------
--# Data Rate Setting
--# -------------------
--# 50 0 0 0 0
--# 75 1 0 0 0
--# 110 0 1 0 0
--# 134.5 1 1 0 0
--# 150 0 0 1 0
--# 300 1 0 1 0
--# 600 0 1 1 0
--# 1200 1 1 1 0
--# 1800 0 0 0 1
--# 2000 1 0 0 1
--# 2400 0 1 0 1
--# 3600 1 1 0 1
--# 4800 0 0 1 1
--# 7200 1 0 1 1
--# 9600 0 1 1 1
--# x 1 1 1 1
--#
--# S3 - Interface/Printer/Attributes
--# ---------------------------------
--# Printer Busy Control
--# sw1 sw2 sw3
--# ---------------
--# off off off Busy not active, CD disabled
--# off off on Busy not active, CD enabled
--# off on off Busy active on J5-20, CD disabled
--# on off off Busy active on J5-19, CD disabled - Factory Set.
--# on off on Busy active on J5-19, CD enabled
--#
--# sw4 Used in conjuction with S4 for comm interface control - Fact 0
--#
--# sw5 Secondary Channel Control (Hardware implementation only) - Fact 0
--#
--# sw6 ON enables printer BUSY active LOW - Factory Setting
--# OFF enables printer BUSY active HIGH - If set to this, ADM31 senses
--#
--# sw7 ON - steady cursor - Factory Setting
--# OFF - blinking cursor
--#
--# sw8 ON causes selected attribute character to be displayed
--# OFF causes SPACE to be displayed instead - Factory Setting
--#
--# S4 - Interface
--# --------------
--# Modem Interface
--# S3 S4 S4 S4 S4
--# sw4 sw1 sw2 sw3 sw4
--# ---------------------------
--# OFF ON OFF ON OFF Enable RS-232C interface, Direct Connect and
--# Current Loop disabled - Factory Setting
--# ON ON OFF ON OFF Enable Current Loop interface, Direct Connect
--# disabled
--# OFF OFF ON OFF ON Enable Direct Connect interface, RS-232C and
--# Current Loop Disabled
--#
--# sw5 ON disables dot stretching mode - Factory Setting
--# OFF enables dot stretching mode
--# sw6 ON enables blanking function
--# OFF enables underline function - Factory Setting
--# sw7 ON causes NULLS to be displayed as NULLS
--# OFF causes NULLS to be displayed as SPACES - Factory Setting
--#
--# S5 - Word Structure
--# -------------------
--# sw1 ON enables BREAK key - Factory Setting
--# OFF disables BREAK key
--# sw2 ON selects 50Hz monitor refresh rate
--# OFF selects 60Hz monitor refresh rate - Factory Setting
--#
--# Modem Port Selection
--# sw3 sw4 sw5
--# ---------------
--# ON ON ON Selects 7 DATA bits, even parity, 2 STOP bits
--# OFF ON ON Selects 7 DATA bits, odd parity, 2 STOP bits
--# ON OFF ON Selects 7 DATA bits, even parity, 1 STOP bit - Factory Set.
--# OFF OFF ON Selects 7 DATA bits, odd parity, 1 STOP bit
--# ON ON OFF Selects 8 DATA bits, no parity, 2 STOP bits
--# OFF ON OFF Selects 8 DATA bits, no parity, 1 STOP bit
--# ON OFF OFF Selects 8 DATA bits, even parity, 1 STOP bit
--# OFF OFF OFF Selects 8 DATA bits, odd parity, 1 STOP bit
--#
--# sw6 ON sends bit 8 a 1 (mark)
--# OFF sends bit 8 as 0 (space) - Factory Setting
--# sw7 ON selects Block Mode
--# OFF selects Conversation Mode - Factory Setting
--# sw8 ON selects Full Duplex operation
--# OFF selects Half Duplex operation - Factory Setting
-+# (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,
-+ lines#42,
-+ is2=\E[?7h\E[?1l\E[?3l\E7\E[1;42r\E8,
-+ use=news-old-unk,
- #
--# S6 - Printer
--# ------------
--# sw1, sw2, sw6, sw7 Reserved - Factory 0
-+# (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,
-+ OTbs,
-+ lines#40,
-+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;40r\E8,
-+ use=news-old-unk,
- #
--# Printer Port Selection
--# same as Modem above, bit 8 (when 8 DATA bits) is always = 0
-+# (nwp513: this had :DE=^H: and the alias vt100-bm --esr)
-+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;31r\E8,
-+ use=news-old-unk,
- #
--# sw8 ON enables Printer Port
--# OFF disables Printer Port - Factory Setting
-+# (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,
-+ OTbs,
-+ lines#33,
-+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;33r\E8,
-+ use=news-old-unk,
- #
--# S7 - Polling Address
--# --------------------
--# sw1-7 Establish ASCII character which designates terminal polling address
--# ON = logic 0
--# OFF = logic 1 - Factory Setting
--# sw8 ON enables Polling Option
--# OFF disables Polling Option - Factory Setting
-+# (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,
-+ OTbs,
-+ lines#31,
-+ is2=\E7\E[r\E8\EE\EE\EE\EM\EM\EM\E[?7h\E[?1l\E[?3l\E7\E[1;31r\E8,
-+ use=news-old-unk,
- #
-+# (news28: this had :DE=^H:, I think that's <OTbs>, and :KB=nws1200: --esr)
-+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;28r\E8,
-+ use=news-old-unk,
- #
--# On some older adm31s, S4 does not exist, and S5-sw6 is not defined.
-+# (news29: this had :TY=ascii:KB=nws1200:\ --esr)
-+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;29r\E8,
-+ use=news-old-unk,
- #
--# This adm31 entry uses underline as the standout mode.
--# If the adm31 gives you trouble with standout mode, check the DIP switch in
--# 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,
-- OTbs, am, mir,
-- cols#80, lines#24,
-- bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\EY, el=\ET, home=^^, il1=\EE, ind=^J, is2=\Eu\E0,
-- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r,
-- kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r,
-- kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, rmir=\Er, rmso=\EG0,
-- rmul=\EG0, sgr0=\EG0, smir=\Eq, smso=\EG1, smul=\EG1,
--adm31-old|o31|old adm31,
-- rmul@, smso=\EG4, smul@, use=adm31,
--# LSI ADM-36 from Col. George L. Sicherman <gloria!colonel> via BRL
--adm36|LSI ADM36,
-- OTbs, OTpt,
-- OTkn#4,
-- 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,
--# (adm42: removed obsolete ":ma=^K^P:" -- esr)
--adm42|lsi adm42,
-- OTbs, am,
-+# (news511: this had :TY=sjis: --esr)
-+nwp511|nwp-511|nwp-511 vt100,
-+ OTbs, OTpt, am, xenl,
- cols#80, lines#24,
-- bel=^G, cbt=\EI, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET, ht=^I,
-- il1=\EE$<270>, ind=^J, invis@, ip=$<6*>, kcub1=^H, kcud1=^J,
-- kcuf1=^L, kcuu1=^K, khome=^^, pad=\177, rmir=\Er, rmul@,
-- smir=\Eq, smul@, use=adm+sgr,
--# 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,
-- 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,
-- el=\ET\EF \011, il1=\EE\EF \011, rmir=\Er\EF \011,
-- smir=\Eq\EF \011, use=adm42,
--# ADM 1178 terminal -- rather like an ADM-42. Manual is dated March 1 1985.
--# The insert mode of this terminal is commented out because it's broken for our
--# 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,
-- am,
-- cols#80, lines#24, xmc#1,
-- bel=^G, bold=\E(, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J,
-- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET,
-- home=^^, ht=^I, il1=\EE, ind=^J, ip=$<6*/>, kbs=^H, kcub1=^H,
-- kcud1=^J, nel=^M^J, pad=\177, rev=\EG4, rmso=\EG0, rmul=\EG0,
-- sgr0=\E), smso=\EG4, smul=\EG1,
-+ clear=\E[;H\E[2J$<20/>, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A$<2/>, dl1=\E[M,
-+ ed=\E[J$<30/>, el=\E[K$<3/>,
-+ flash=\E[?5h\0\0\0\0\0\0\0\0\0\0\0\0\0\E[?5l,
-+ il1=\E[L, is2=\E[?5l\E[?1l\E>\E[?7h\E[?8h, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ,
-+ kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\E#W, khome=\E[H,
-+ ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>,
-+ rs2=\E7\E[r\E8\E[?5l\E[?1l\E>\E[?7h\E[?8h,
-+ smso=\E[7m$<2/>, smul=\E[4m$<2/>,
-+# (news517: this had :TY=sjis:. --esr)
-+nwp517|nwp-517|nwp-517 vt200 80 cols 30 rows,
-+ eslok, hs,
-+ 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,
-+# (news517-w: this had :TY=sjis:. --esr)
-+nwp517-w|nwp-517-w|nwp-517 vt200 132 cols 50 rows,
-+ eslok, hs,
-+ cols#132, lines#50,
-+ 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,
-
--#### Prime
--#
--# Yes, Prime made terminals. These entries were posted by Kevin J. Cummings
--# <cummings@primerd.prime.com> on 14 Dec 1992 and lightly edited by esr.
--# Prime merged with ComputerVision in the late 1980s; you can reach them at:
--#
--# ComputerVision Services
--# 500 Old Connecticut Path
--# Framingham, Mass.
-+#### Common Desktop Environment
- #
-
--# Standout mode is dim reverse-video.
--pt100|pt200|wren|fenix|prime pt100/pt200,
-- am, bw, mir, msgr,
-- cols#80, it#8, lines#24,
-- cbt=\E[Z, clear=\E?, cr=^M, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E0%p1%{33}%+%c%p2%{33}%+%c, cuu=\E[%p1%dA,
-- cuu1=\EM, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl1=\E[M,
-- ed=\E[J\E[r, el=\E[K\E[t, flash=\E$$<200/>\E$P,
-- home=\E$B, ht=^I, il1=\E[L\E[t, ind=^J, kbs=^H, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E$A, nel=^M^J,
-- rmcup=, rmir=\E[4l, rmkx=\E[>13l, rmso=\E[m, rmul=\E[m,
-- sgr0=\E[m,
-- smcup=\E[>1l\E[>2l\E[>16l\E[4l\E[>9l\E[20l\E[>3l\E[>7h\E[>12l\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,
-- cols#132,
-- cup=\E[%i%p1%d;%p2%dH, use=pt100,
--pt250|Prime PT250,
-- rmso@, smso@, use=pt100,
--pt250w|Prime PT250 in 132-column mode,
-- rmso@, smso@, use=pt100w,
-+# This ships with Sun's CDE in Solaris 2.5
-+# Corrected Sun Aug 9 1998 by Alexander V. Lukyanov <lav@video.yars.free.net>
-+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=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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, ech=\E[%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K,
-+ enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, home=\E[H,
-+ 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,
-+ 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,
-
--#### Qume (qvt)
--#
--# Qume, Inc.
--# 3475-A North 1st Street
--# San Jose CA 95134
--# Vox: (800)-457-4447
--# Fax: (408)-473-1510
--# Net: josed@techsupp.wyse.com (Jose D'Oliveira)
--#
--# Qume was bought by Wyse, but still (as of early 1995) has its own support
--# group and production division.
--#
--# Discontinued Qume models:
--#
--# The qvt101 and qvt102 listed here are long obsolete; so is the qvt101+
--# built to replace them, and a qvt119+ which was a 101+ with available wide
--# mode (132 columns). There was a qvt103 which added vt100/vt131 emulations
--# and an ANSI-compatible qvt203 that replaced it. Qume started producing
--# ANSI-compatible terminals with the qvt323 and qvt61.
--#
--# Current Qume models (as of February 1995):
--#
--# All current Qume terminals have ANSI-compatible operation modes.
--# Qume is still producing the qvt62, which features emulations for other
--# popular lines such as ADDS, and dual-host capabilities. The qvt82 is
--# designed for use as a SCO ANSI terminal. The qvt70 is a color terminal
--# with many emulations including Wyse370, Wyse 325, etc. Their newest
--# model is the qvt520, which is vt420-compatible.
-+######## Non-Unix Consoles
- #
--# There are some ancient printing Qume terminals under `Daisy Wheel Printers'
--#
--# 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,
-- xmc#1, use=qvt101+,
--
--# This used to have <cvvis=\E.2> but no <cnorm> or <civis>. The BSD termcap
--# file had <cvvis=\EM4 \200\200\200>. I've done the safe thing and yanked
--# both. The <rev> is from BSD, which also claimed bold=\E( and dim=\E).
--# What seems to be going on here is that this entry was designed so that
--# the normal highlight is bold and standout is dim plus something else
--# (reverse-video maybe? But then, are there two <rev> sequences?)
--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=^M, cub1=^H, cud1=^J,
-- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\EY, el=\ET,
-- flash=\Eb$<200>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1,
-- ich1=\EQ, il1=\EE, ind=^J, invis@, kbs=^H, kcbt=\EI, kcub1=^H,
-- kcud1=^J, kcuf1=^L, kcuu1=^K, kdl1=\ER, ked=\EY, kel=\ET,
-- kf1=^A@\r, kf10=^AI\r, kf2=^AA\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, mc4=\EA, mc5=\E@, rmso=\E(,
-- smso=\E0P\E), tbc=\E3, tsl=\Eg\Ef, use=adm+sgr,
--qvt102|qume qvt 102,
-- cnorm=\E., use=qvt101,
--# (qvt103: added <rmam>/<smam> based on init string -- esr)
--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>,
-- clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-- cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I,
-- hts=\EH, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-- kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8,
-- rev=\E[7m$<2>, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E[?1l\E>,
-- rmso=\E[m$<2>, rmul=\E[m$<2>,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;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,
-- 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,
-- am, hs, mir, msgr,
-- cols#80, lines#24, xmc#0,
-- bel=^G, cbt=\EI, clear=\E*1, cnorm=\E.4, cr=^M, cub1=^H,
-- cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=^K, cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey,
-- el=\Et, flash=\En0$<200>\En1, fsl=^M, home=^^, ht=^I,
-- hts=\E1, il1=\EE, ind=^J, is2=\EDF\EC\EG0\Er\E(\E%EX,
-- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r,
-- kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r,
-- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^,
-- mc4=\EA, mc5=\E@, ri=\EJ, rmir=\Er, smir=\Eq, smul=\EG8,
-- tbc=\E3, tsl=\Eg\Ef, use=adm+sgr,
--qvt119+-25|qvt119p-25|QVT 119 PLUS with 25 data lines,
-- lines#25, use=qvt119+,
--qvt119+-w|qvt119p-w|qvt119-w|QVT 119 and 119 PLUS in 132 column mode,
-- cols#132,
-- 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,
-- 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),
-- cols#132, lines#24,
-- rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt203,
--#
--# Since a command is present for enabling 25 data lines,
--# a specific terminfo entry may be generated for the 203.
--# If one is desired for the QVT 119 PLUS then 25 lines must
--# be selected in the status line (setup line 9).
-+#### EMX termcap.dat compatibility modes
- #
--qvt203-25|QVT 203 PLUS with 25 by 80 column mode,
-- cols#80, lines#25,
-- is2=\E[=40h\E[?3l, use=qvt203,
--qvt203-25-w|QVT 203 PLUS with 25 by 132 columns,
-- cols#132, lines#25,
-- rs2=\E[?3h\E[=40h, use=qvt203,
-+# Also (possibly only EMX, so we don't put it in ansi.sys, etc): set the
-+# no_color_video to inform the application that standout(1), underline(2)
-+# reverse(4) and invisible(64) don't work with color.
-+emx-base|DOS special keys,
-+ bce, bw,
-+ it#8, ncv#71,
-+ bel=^G, use=ansi.sys,
-
--#### Televideo (tvi)
--#
--# TeleVideo
--# 550 East Brokaw Road
--# PO Box 49048 95161
--# San Jose CA 95112
--# Vox: (408)-954-8333
--# Fax: (408)-954-0623
--#
--#
--# These require incredible amounts of padding.
-+# Except for the "-emx" suffixes, these are as distributed with EMX 0.9b,
-+# a Unix-style environment used on OS/2. (Note that the suffix makes some
-+# names longer than 14 characters, the nominal maximum).
- #
--# All of these terminals (912 to 970 and the tvipt) are discontinued. Newer
--# Televideo terminals are ANSI and PC-ANSI compatible.
-+# Removed: rmacs=\E[10m, smacs=\E[11m, because OS/2 does not implement acs.
-+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=^M, cub1=^H,
-+ cud1=^J, 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\E[?5l,
-+ home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, ind=^J,
-+ kb2=\E[G, kbs=^H, kf0=\0D, kll=\0O, kspd=^Z, nel=^M^J,
-+ rev=\E[5;37;41m, rmir=\E[4l, rmpch=\E[10m,
-+ rmso=\E[0;44m\E[1;33m, 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,
-+# 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,
-+ rmso=\E[0;37;44m, rmul=\E[0;37;44m, rs1=\Ec,
-+ setaf=\E[3%p1%dm, sgr0=\E[0;37;44m, smso=\E[1;37;46m,
-+ smul=\E[1;36;44m, use=ansi-emx,
-+# nice colors for Emacs (white on black, mode line black on cyan)
-+ansi-color-3-emx|ANSI.SYS color 3,
-+ clear=\E[0;37;40m\E[H\E[J, rev=\E[1;37;46m,
-+ rmso=\E[0;37;40m, rmul=\E[0;37;40m, rs1=\Ec,
-+ setaf=\E[3%p1%dm, sgr0=\E[0;10m, smso=\E[1;37;46m,
-+ smul=\E[0;36;40m, use=ansi-emx,
-+mono-emx|stupid monochrome ansi terminal with only one kind of emphasis,
-+ am,
-+ cols#80, it#8, lines#24,
-+ clear=\E[H\E[2J$<50>, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, el=\E[K, home=\E[H,
-+ ht=^I, kb2=\E[G, kbs=^H, kcub1=\0K, kcud1=\0P, kcuf1=\0M,
-+ kcuu1=\0H, kf0=\0D, kf1=\0;, kf2=\0<, kf3=\0=, kf4=\0>,
-+ kf5=\0?, kf6=\0@, kf7=\0A, kf8=\0B, kf9=\0C, khome=\0G,
-+ kich1=\0R, kll=\0O, knp=\0Q, kpp=\0I, nel=^M^J, rev=\E[7m,
-+ sgr0=\E[0m,
-
--tvi803|televideo 803,
-- clear=\E*$<10>, use=tvi950,
-+#### Cygwin
-
--# Vanilla tvi910 -- W. Gish <cswarren@violet> 10/29/86
--# Switch settings are:
--#
--# S1 1 2 3 4
--# D D D D 9600
--# D D D U 50
--# D D U D 75
--# D D U U 110
--# D U D D 135
--# D U D U 150
--# D U U D 300
--# D U U U 600
--# U D D D 1200
--# U D D U 1800
--# U D U D 2400
--# U D U U 3600
--# U U D D 4800
--# U U D U 7200
--# U U U D 9600
--# U U U U 19200
--#
--# S1 5 6 7 8
--# U D X D 7N1 (data bits, parity, stop bits) (X means ignored)
--# U D X U 7N2
--# U U D D 7O1
--# U U D U 7O2
--# U U U D 7E1
--# U U U U 7E2
--# D D X D 8N1
--# D D X U 8N2
--# D U D D 8O1
--# D U U U 8E2
--#
--# S1 9 Autowrap
--# U on
--# D off
--#
--# S1 10 CR/LF
--# U do CR/LF when CR received
--# D do CR when CR received
--#
--# S2 1 Mode
--# U block
--# D conversational
--#
--# S2 2 Duplex
--# U half
--# D full
-+# Use this for cygwin32 (tested with beta 19.1)
-+# 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@,
-+ use=ansi.sys,
-+
-+# Use this for cygwin (tested with version 1.1.0).
-+# I've combined pcansi and linux. Some values of course were different and
-+# I've indicated which of these were and which I used.
-+# Cheers, earnie_boyd@yahoo.com
-+# several changes based on running with tack and comparing with older entry -TD
-+# more changes from csw:
-+# add cbt [backtab]
-+# remove eo [erase overstrike with blank]
-+# change clear was \E[H\E[J now \E[2J (faster?)
-+# remove cols
-+# remove lines
-+# remove ncv#3 [colors collide with highlights, bitmask] not applicable
-+# to MSDOS box?
-+# add cub [cursor back param]
-+# add cuf [cursor forward param]
-+# add cuu [cursor up param]
-+# add cud [cursor down param]
-+# add hs [has status line]
-+# add fsl [return from status line]
-+# add tsl [go to status line]
-+# add smacs [Start alt charset] (not sure if this works)
-+# add rmacs [End alt charset] (ditto)
-+# add smcup [enter_ca_mode] (save console; thanks Corinna)
-+# add rmcup [exit_ca_mode] (restore console; thanks Corinna)
-+# add kb2 [center of keypad]
-+# add u8 [user string 8] \E[?6c
-+# add el [clear to end of line] \E[K
-+# Notes:
-+# cnorm [make cursor normal] not implemented
-+# flash [flash] not implemented
-+# blink [blink] not implemented very usefully in cygwin? \E[5m
-+# dim [dim] not implemented very usefully in cygwin? \E[2m
-+# cub1 [cursor back 1] typically \E[D, but ^H is faster?
-+# kNXT [shifted next key] not implemented
-+# kPRV [shifted prev key] not implemented
-+# khome [home key] really is \E[1~ NOT \E[H
-+# tbc [clear tab stops] not implemented
-+# xenl [newline ignnored after 80 cols] messes up last line? Ehud Karni
-+# smpch [Start PC charset] is \E[11m, same as smacs
-+# rmpch [End PC charset] is \E[10m, same as rmacs
-+# mir [move in insert mode] fails in tack?
-+# bce [back color erase] causes problems with change background color?
-+# cvvis [make cursor very visible] causes a stackdump when testing with
-+# testcurs using the output option? \E[?25h\E[?8c
-+# civis [make cursor invisible] causes everything to stackdump? \E[?25l\E[?1c
-+# ech [erase characters param] broken \E[%p1%dX
-+# kcbt [back-tab key] not implemented in cygwin? \E[Z
- #
--# S2 3 Hertz
--# U 50
--# D 60
-+# 2005/11/12 -TD
-+# Remove cbt since it does not work in current cygwin
-+# Add 'mir' and 'in' flags based on tack
-+cygwin|ansi emulation for Cygwin,
-+ am, hs, mir, msgr, xon,
-+ colors#8, it#8, pairs#64,
-+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-+ bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=^M, 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, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-+ dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, fsl=^G, home=\E[H,
-+ hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, 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=^M^J, 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,
-+
-+# I've supplied this so that you can help test new values and add other
-+# features. Cheers, earnie_boyd@yahoo.com.
- #
--# S2 4 Edit mode
--# U local
--# D duplex
-+# Some features are from pcansi. The op value is from linux. Function-keys
-+# are from linux. These have been tested not to cause problems. xenl was in
-+# this list, but DOES cause problems so it has been removed
-+cygwinDBG|Debug Version for Cygwin,
-+ am, eo, mir, msgr, xon,
-+ colors#8, cols#80, it#8, lines#24, ncv#3, pairs#64,
-+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\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=^M, 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\E[?5l$<200/>, 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=^J, 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=^M^J, 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,
-+
-+#### DJGPP
-+
-+# Key definitions:
-+# The encodings for unshifted arrow keys, F1-F12, Home, Insert, etc. match the
-+# encodings used by other x86 environments. All others are invented for DJGPP.
-+# Oddly enough, while several combinations of modifiers are tabulated, there is
-+# none for shifted cursor keys.
- #
--# S2 5 Cursor type
--# U underline
--# D block
-+# F1 \E[[A
-+# F2 \E[[B
-+# F3 \E[[C
-+# F4 \E[[D
-+# F5 \E[[E
-+# F6 \E[17~
-+# F7 \E[18~
-+# F8 \E[19~
-+# F9 \E[20~
-+# F10 \E[21~
-+# F11 \E[23~
-+# F12 \E[24~
- #
--# S2 6 Cursor down key
--# U send ^J
--# D send ^V
-+# Delete \E[3~
-+# Down Arrow \E[B
-+# End \E[4~
-+# Home \E[1~
-+# Insert \E[2~
-+# Left Arrow \E[D
-+# Page Down \E[6~
-+# Page Up \E[5~
-+# Right Arrow \E[C
-+# Up Arrow \E[A
- #
--# S2 7 Screen colour
--# U green on black
--# D black on green
-+# Shift-F1 \E[25~
-+# Shift-F2 \E[26~
-+# Shift-F3 \E[27~
-+# Shift-F4 \E[28~
-+# Shift-F5 \E[29~
-+# Shift-F6 \E[30~
-+# Shift-F7 \E[31~
-+# Shift-F8 \E[32~
-+# Shift-F9 \E[33~
-+# Shift-F10 \E[34~
-+# Shift-F11 \E[35~
-+# Shift-F12 \E[36~
- #
--# S2 8 DSR status (pin 6)
--# U disconnected
--# D connected
-+# Ctrl-F1 \E[47~
-+# Ctrl-F2 \E[48~
-+# Ctrl-F3 \E[49~
-+# Ctrl-F4 \E[50~
-+# Ctrl-F5 \E[51~
-+# Ctrl-F6 \E[52~
-+# Ctrl-F7 \E[53~
-+# Ctrl-F8 \E[54~
-+# Ctrl-F9 \E[55~
-+# Ctrl-F10 \E[56~
-+# Ctrl-F11 \E[57~
-+# Ctrl-F12 \E[58~
- #
--# S2 9 DCD status (pin 8)
--# U disconnected
--# D duplex
-+# Ctrl-Delete \E[43~
-+# Ctrl-Down Arrow \E[38~
-+# Ctrl-End \E[44~
-+# Ctrl-Home \E[41~
-+# Ctrl-Insert \E[42~
-+# Ctrl-Left Arrow \E[39~
-+# Ctrl-Page Down \E[46~
-+# Ctrl-Page Up \E[45~
-+# Ctrl-Right Arrow \E[40~
-+# Ctrl-Up Arrow \E[37~
- #
--# S2 10 DTR status (pin 20)
--# U disconnected
--# 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,
-- OTbs, am, msgr,
-- cols#80, it#8, lines#24, xmc#1,
-- bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET,
-- home=\E=\001\001, hpa=\E]%p1%{32}%+%c, ht=^I,
-- if=/usr/share/tabset/stdcrt, ind=^J, invis@, kbs=^H,
-- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r, kf1=^A@\r,
-- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r,
-- kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^,
-- vpa=\E[%p1%{32}%+%c, use=adm+sgr,
--# From: Alan R. Rogers <rogers%albany@csnet-relay>
--# as subsequently hacked over by someone at SCO
--# (tvi910+: removed obsolete ":ma=^K^P^L :" -- esr)
-+# Alt-F1 \E[59~
-+# Alt-F2 \E[60~
-+# Alt-F3 \E[61~
-+# Alt-F4 \E[62~
-+# Alt-F5 \E[63~
-+# Alt-F6 \E[64~
-+# Alt-F7 \E[65~
-+# Alt-F8 \E[66~
-+# Alt-F9 \E[67~
-+# Alt-F10 \E[68~
-+# Alt-F11 \E[79~
-+# Alt-F12 \E[80~
- #
--# Here are the 910+'s DIP switches (U = up, D = down, X = don't care):
-+# Alt-Delete \E[65~
-+# Alt-Down Arrow \E[60~
-+# Alt-End \E[66~
-+# Alt-Home \E[41~
-+# Alt-Insert \E[64~
-+# Alt-Left Arrow \E[61~
-+# Alt-Page Down \E[68~
-+# Alt-Page Up \E[67~
-+# Alt-Right Arrow \E[62~
-+# Alt-Up Arrow \E[59~
- #
--# S1 1 2 3 4:
--# D D D D 9600 D D D U 50 D D U D 75 D D U U 110
--# D U D D 135 D U D U 150 D U U D 300 D U U U 600
--# U D D D 1200 U D D U 1800 U D U D 2400 U D U U 3600
--# U U D D 4800 U U D U 7200 U U U D 9600 U U U U 19200
--#
--# S1 5 6 7 8:
--# U D X D 7N1 U D X U 7N2 U U D D 7O1 U U D U 7O2
--# U U U D 7E1 U U U U 7E2 D D X D 8N1 D D X U 8N2
--# D U D D 8O1 D U U U 8E2
--#
--# S1 9 Autowrap (U = on, D = off)
--# S1 10 CR/LF (U = CR/LF on CR received, D = CR on CR received)
--# S2 1 Mode (U = block, D = conversational)
--# S2 2 Duplex (U = half, D = full)
--# S2 3 Hertz (U = 50, D = 60)
--# S2 4 Edit mode (U = local, D = duplex)
--# S2 5 Cursor type (U = underline, D = block)
--# S2 6 Cursor down key (U = send ^J, D = send ^V)
--# S2 7 Screen colour (U = green on black, D = black on green)
--# S2 8 DSR status (pin 6) (U = disconnected, D = connected)
--# S2 9 DCD status (pin 8) (U = disconnected, D = connected)
--# S2 10 DTR status (pin 20) (U = disconnected, D = connected)
--#
--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,
-- ll=\E=7\s, use=tvi910,
-+# Also:
-+# Alt-A \E[82~
-+# Alt-B \E[82~
-+# Alt-C \E[83~
-+# Alt-D \E[84~
-+# Alt-E \E[85~
-+# Alt-F \E[86~
-+# Alt-G \E[87~
-+# Alt-H \E[88~
-+# Alt-I \E[89~
-+# Alt-J \E[90~
-+# Alt-K \E[91~
-+# Alt-L \E[92~
-+# Alt-M \E[93~
-+# Alt-N \E[94~
-+# Alt-O \E[95~
-+# Alt-P \E[96~
-+# Alt-Q \E[97~
-+# Alt-R \E[98~
-+# Alt-S \E[99~
-+# Alt-T \E[100~
-+# Alt-U \E[101~
-+# Alt-V \E[102~
-+# Alt-W \E[103~
-+# Alt-X \E[104~
-+# Alt-Y \E[105~
-+# Alt-Z \E[106~
-+djgpp|ansi emulation for DJGPP alpha,
-+ am, bce, msgr, xhp, xon, xt,
-+ colors#8, it#8, pairs#64,
-+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\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, civis=\E[1v,
-+ clear=\E[H\E[J, cnorm=\E[v, cr=^M, 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[2v, 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, hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@,
-+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-+ indn=\E[%p1%dS, 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=^M^J,
-+ op=\E[37;40m, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, 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,
-
--# (tvi912: removed obsolete ":ma=^K^P^L :", added <flash> and
--# <khome> from BRL entry -- esr)
--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=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER$<33*>, ed=\Ey, el=\ET, flash=\Eb$<50/>\Ed, home=^^,
-- ht=^I, hts=\E1, ich1=\EQ, if=/usr/share/tabset/stdcrt,
-- il1=\EE$<33*>, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L,
-- kcuu1=^K, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r,
-- kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r,
-- kf9=^AH\r, khome=^^, rmso=\Ek, rmul=\Em, smso=\Ej, smul=\El,
-- tbc=\E3,
--# 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,
-- cup@, use=tvi912c,
-+djgpp203|Entry for DJGPP 2.03,
-+ OTbs, am,
-+ cols#80, it#8, lines#25,
-+ bel=^G, cr=^M, cub1=^H, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H,
-+ kcud1=^J, nel=^M^J,
-
--# tvi{912,920}[bc] - TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C
--# From: Benjamin C. W. Sittler
--#
--# Someone has put a scanned copy of the manual online at:
--# http://vt100.net/televideo/912b-om/
--#
--# These terminals were produced ca. 1979, and had a 12" monochrome
--# screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit
--# ASCII, and were generally similar to adm3a but with attributes
--# (including some with magic cookies), fancy half-duplex mode, and
--# different bugs.
--#
--# Some operations reqire truly incredible amounts of padding. The
--# insert_line (<il1>) and delete_line (<dl1>) operations in particular
--# are so slow as to be nearly unusable.
--#
--# There may or may not have been a separate, earlier series of 912/920
--# terminals (without the "B" and "C" suffix); I have never seen one,
--# and the manual only describes the "B" and "C" series. The 912 and 920
--# are quite distinct from the 914 and 924, which were much nicer non-
--# magic-cookie terminals similar to the 950.
--#
--# This is a new description for the following TeleVideo terminals,
--# distinguished chiefly by their keyboards:
-+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,
-+ clear=\E[H\E[2J, cnorm=\E[v, cr=^M, 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, cvvis=\E[2v, dch=\E[%p1%dP, dch1=\E[P,
-+ 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, indn=\E[%p1%dS, 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=^M^J, rev=\E[7m,
-+ ri=\E[T, rin=\E[%p1%dT, rmso=\E[m, setab=\E[4%p1%dm,
-+ setaf=\E[3%p1%dm, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-+
-+#### U/Win
-+
-+# This is tested using U/Win's telnet. Scrolling is omitted because it is
-+# buggy. Another odd bug appears when displaying "~" in alternate character
-+# set (the emulator spits out error messages). Compare with att6386 -TD
-+uwin|U/Win 3.2 console,
-+ am, eo, in, msgr, xenl, xon,
-+ colors#8, it#8, ncv#58, pairs#64,
-+ 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=^M, cub1=^H, cud1=^J,
-+ 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=\177, 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=^M^J, 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,
-+
-+#### Microsoft (miscellaneous)
-+
-+# This entry fits the Windows NT console when the _POSIX_TERM environment
-+# variable is set to 'on'. While the Windows NT POSIX console is seldom used,
-+# the Telnet client supplied with both the Windows for WorkGroup 3.11 TCP/IP
-+# stack and the Win32 (i.e., Windows 95 and Windows NT 3.1 or later) operating
-+# systems is not, and (surprise!) they match very well.
- #
--# TVI-912B - very odd layout, no function keys (84 keys)
--# TVI-920B - typewriter layout, no function keys (103 keys)
--# TVI-912C - very odd layout, function keys F1-F11 (82 keys)
--# TVI-920C - typewriter layout, function keys F1-F11 (101 keys)
-+# See: MS Knowledge Base item Q108581, dated 13-MAY-1997, titled "Setting Up
-+# VI POSIX Editor for Windows NT 3.1". True to Microsoft form, not only
-+# are the installation instructions a pile of mind-numbing bureaucratese,
-+# but the termcap entry is actually broken and unusable as given; the :do:
-+# capability is misspelled "d".
- #
--# To choose a setting for the TERM variable, start with the model:
-+# To use this, you need to a bunch of environment variables:
- #
--# Model || base name
--# ----------||-----------
--# TVI-912B || tvi912b
--# TVI-912C || tvi912c
--# TVI-920B || tvi920b
--# TVI-920C || tvi920c
-+# SET _POSIX_TERM=on
-+# SET TERM=ansi
-+# SET TERMCAP=location of termcap file in POSIX file format
-+# which is case-sensitive.
-+# e.g. SET TERMCAP=//D/RESKIT35/posix/termcap
-+# SET TMP=//C/TEMP
- #
--# Then add a suffix from the following table describing installed options
--# and how you'd like to use the terminal:
-+# Important note: setting the TMP environment variable in POSIX style renders
-+# it incompatible with a lot of other applications, including Visual C++. So
-+# you should have a separate command window just for vi. All the other
-+# variables may be permanently set in the Control Panel\System applet.
- #
--# Use Video | Second | Visual | Magic | Page || feature
--# Attributes | Page | Bell | Cookies | Print || suffix
--# ------------|--------|--------|---------|-------||---------
--# No | No | N/A | N/A | No || -unk
--# No | No | N/A | N/A | Yes || -p
--# No | Yes | No | N/A | No || -2p-unk
--# No | Yes | No | N/A | Yes || -2p-p
--# No | Yes | Yes | N/A | No || -vb-unk
--# No | Yes | Yes | N/A | Yes || -vb-p
--# Yes | No | N/A | No | N/A ||
--# Yes | No | N/A | Yes | N/A || -mc
--# Yes | Yes | No | No | N/A || -2p
--# Yes | Yes | No | Yes | N/A || -2p-mc
--# Yes | Yes | Yes | No | N/A || -vb
--# Yes | Yes | Yes | Yes | N/A || -vb-mc
-+# You can find out more about the restrictions of this facility at
-+# <http://www.nentug.org/unix-to-nt/ntposix.htm>.
- #
--# So e.g. a model 920 C with second page memory option, visual bell
--# and no magic cookies would be tvi920c-vb; a model 912 B without the
--# second page memory option and using magic cookies would be
--# tvi912b-mc
-+# From: Federico Bianchi <bianchi@magna.cisid.unipi.it>, 15 Jan 1997
-+ansi-nt|psx_ansi|Microsoft Windows NT console POSIX ANSI mode,
-+ am, bw, msgr,
-+ cols#80, it#8, lines#25,
-+ bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-+ home=\E[H, ht=^I, ind=\E[S, kbs=^H, kcub1=\E[D, kcud1=\E[V,
-+ kcuf1=\E[C, kcuu1=\E[A, nel=\r\E[S, rc=\E[u, rev=\E[7m,
-+ ri=\E[T, rmso=\E[m, sc=\E[s, sgr0=\E[0m, smso=\E[7m,
-+# From: jew@venus.sunquest.com
-+# Date: 19 Feb 93 23:41:07 GMT
-+# Here's a combination of ansi and vt100 termcap
-+# entries that works nearly perfectly for me
-+# (Gateway 2000 Handbook and Microsoft Works 3.0):
-+pcmw|PC running Microsoft Works,
-+ am, xenl,
-+ cols#80, it#8, lines#24, vt#3,
-+ bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>,
-+ clear=\E[;H\E[2J$<50/>, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=\E[C$<2/>, cup=\E[%i%p1%d;%p2%dH$<5/>,
-+ cuu1=\E[A$<2/>, ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H,
-+ ht=^I, hts=\EH$<2/>, ind=\ED$<5/>, is2=\E[1;24r\E[24;1H,
-+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\r\ED$<5/>,
-+ rc=\E8, rev=\E[7m$<2/>, rf=/usr/share/tabset/vt100,
-+ ri=\EM$<5/>, rmso=\E[m$<2/>, rmul=\E[m$<2/>,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr0=\E[m$<2/>, smso=\E[7m$<2/>, smul=\E[4m$<2/>,
-+ tbc=\E[3g$<2/>,
-+
-+# From: Federico Bianchi
-+# This is the entry for the OpenNT terminal.
-+# The ntconsole name is for backward compatability.
-+# This is for OpenNT 2.0 and later.
-+# Later OpenNT was renamed to Interix.
- #
--# PADDING
--#
--# At 9600 baud, the terminal is prone to overflow its input buffer
--# during complex operations (insert/delete
--# character/line/screen/page), and it does not signal this over the
--# RS232 cable. The typical symptom of an overrun is that the terminal
--# starts beeping, and output becomes garbled.
-+# Presently it is distributed by Microsoft as Services For Unix (SFU).
-+# The 3.5 beta contains ncurses 4.2 (that is header files and executables,
-+# the documentation dates from 1.9.9e) -TD
-+
-+interix|opennt|opennt-25|ntconsole|ntconsole-25|OpenNT-term compatible with color,
-+ am, bw, msgr,
-+ colors#8, cols#80, lines#25, ncv#3, pairs#64,
-+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-+ bel=^G, bold=\E[1m, cbt=\E[Z, clear=\E[2J, cub=\E[%p1%dD,
-+ cub1=\E[D, cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC,
-+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA,
-+ cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K,
-+ home=\E[H, ht=^I, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-+ indn=\E[%p1%dS, kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[M, kend=\E[U, kf0=\EFA,
-+ kf1=\EF1, kf10=\EFA, kf11=\EFB, kf12=\EFC, kf13=\EFD,
-+ kf14=\EFE, kf15=\EFF, kf16=\EFG, kf17=\EFH, kf18=\EFI,
-+ kf19=\EFJ, kf2=\EF2, kf20=\EFK, kf21=\EFL, kf22=\EFM,
-+ kf23=\EFN, kf24=\EFO, kf25=\EFP, kf26=\EFQ, kf27=\EFR,
-+ kf28=\EFS, kf29=\EFT, kf3=\EF3, kf30=\EFU, kf31=\EFV,
-+ kf32=\EFW, kf33=\EFX, kf34=\EFY, kf35=\EFZ, kf36=\EFa,
-+ kf37=\EFb, kf38=\EFc, kf39=\EFd, kf4=\EF4, kf40=\EFe,
-+ kf41=\EFf, kf42=\EFg, kf43=\EFh, kf44=\EFi, kf45=\EFj,
-+ kf46=\EFk, kf47=\EFm, kf48=\EFn, kf49=\EFo, kf5=\EF5,
-+ kf50=\EFp, kf51=\EFq, kf52=\EFr, kf53=\EFs, kf54=\EFt,
-+ kf55=\EFu, kf56=\EFv, kf57=\EFw, kf58=\EFx, kf59=\EFy,
-+ kf6=\EF6, kf60=\EFz, kf61=\EF+, kf62=\EF-,
-+ kf63=\EF\014 kf64=\EF$, kf7=\EF7, kf8=\EF8, kf9=\EF9,
-+ kich1=\E[L, kll=\E[U, knp=\E[T, kpp=\E[S, ll=\E[U, nel=^M^J,
-+ op=\E[m, rc=\E[u, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT,
-+ rmcup=\E[2b\E[u\r\E[K, rmso=\E[m, rmul=\E[m, rs1=\Ec,
-+ sc=\E[s, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-+ setb=\E[%p1%{40}%+%dm, setf=\E[%p1%{30}%+%dm,
-+ sgr0=\E[0m, smcup=\E[s\E[1b, smso=\E[7m, smul=\E[4m,
-+
-+opennt-35|ntconsole-35|OpenNT-term35 compatible with color,
-+ lines#35, use=opennt,
-+
-+opennt-50|ntconsole-50|OpenNT-term50 compatible with color,
-+ lines#50, use=opennt,
-+
-+opennt-60|ntconsole-60|OpenNT-term60 compatible with color,
-+ lines#60, use=opennt,
-+
-+opennt-100|ntconsole-100|OpenNT-term100 compatible with color,
-+ lines#100, use=opennt,
-+
-+# OpenNT wide terminals
-+opennt-w|opennt-25-w|ntconsole-w|ntconsole-25-w|OpenNT-term-w compat with color,
-+ cols#125, use=opennt,
-+
-+opennt-35-w|ntconsole-35-w|OpenNT-term35-w compatible with color,
-+ lines#35, use=opennt-w,
-+
-+opennt-50-w|ntconsole-50-w|OpenNT-term50-w compatible with color,
-+ lines#50, use=opennt-w,
-+
-+opennt-60-w|ntconsole-60-w|OpenNT-term60-w compatible with color,
-+ lines#60, use=opennt-w,
-+
-+opennt-w-vt|opennt-25-w-vt|ntconsole-w-vt|ntconsole-25-w-vt|OpenNT-term-w-vt compat with color,
-+ cols#132, use=opennt,
-+
-+# OpenNT terminals with no smcup/rmcup (names match termcap entries)
-+interix-nti|opennt-nti|opennt-25-nti|ntconsole-25-nti|OpenNT-nti compatible with color,
-+ rmcup@, smcup@, use=opennt,
-+
-+opennt-35-nti|ntconsole-35-nti|OpenNT-term35-nti compatible with color,
-+ lines#35, use=opennt-nti,
-+
-+opennt-50-nti|ntconsole-50-nti|OpenNT-term50-nti compatible with color,
-+ lines#50, use=opennt-nti,
-+
-+opennt-60-nti|ntconsole-60-nti|OpenNT-term60-nti compatible with color,
-+ lines#60, use=opennt-nti,
-+
-+opennt-100-nti|ntconsole-100-nti|OpenNT-term100-nti compatible with color,
-+ lines#100, use=opennt-nti,
-+
-+######## COMMON TERMINAL TYPES
- #
--# The padding delays in this terminfo were derived using tack(1)
--# running on a Linux box connected to a TVI-920C with a later-model
--# (A49C1-style) ROM running at 9600 baud, so your mileage may
--# vary. The numbers below seem to give the terminal enough time so
--# that it doesn't overflow its input buffer and start losing
--# characters.
-+# This section describes terminal classes and maker brands that are still
-+# quite common, but have proprietary command sets not blessed by ANSI.
- #
--# KEYS
-+
-+#### Altos
- #
--# If you want to use the FUNCT key on a tvi912[bc], use the
--# corresponding tvi920[bc] terminfo with FUNCT + ... equivalents from
--# the following table (these also work on the 920 series):
-+# Altos made a moderately successful line of UNIX boxes. In 1990 they were
-+# bought out by Acer, a major Taiwanese manufacturer of PC-clones.
-+# Acer has a web site at http://www.acer.com.
- #
--# Unshifted Function Keys:
-+# Altos descriptions from Ted Mittelstaedt <tedm@agora.rain.com> 4 Sep 1993
-+# His comments suggest they were shipped with the system.
- #
--# Key | capname|| Equivalent
--# -----|--------||------------
--# F1 | <kf1> || FUNCT + @
--# F2 | <kf2> || FUNCT + A
--# F3 | <kf3> || FUNCT + B
--# F4 | <kf4> || FUNCT + C
--# F5 | <kf5> || FUNCT + D
--# F6 | <kf6> || FUNCT + E
--# F7 | <kf7> || FUNCT + F
--# F8 | <kf8> || FUNCT + G
--# F9 | <kf9> || FUNCT + H
--# F10 | <kf10> || FUNCT + I
--# F11 | <kf11> || FUNCT + J
-+
-+# (altos2: had extension capabilities
-+# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\
-+# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\
-+# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\
-+# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r:
-+# :XU=^Aq\r:XD=^Ar\r:XR=^As\r:XL=^At\r:\
-+# :YU=^AQ\r:YD=^AR\r:YR=^AS\r:YL=^AT\r:\
-+# :HL=^AP\r:SP=\E[i:\
-+# :IS=\E[@:DE=\E[P:IL=\E[L:NS=\E[S:PS=\E[T:\
-+# :LO=\E[0q:LC=\E[5q:LL=\E[6q:\
-+# 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,
-+ cols#80, it#8, lines#24, xmc#0,
-+ clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[1B, cuf1=\E[1C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[1A, dch1=\E[P, dl1=\E[M,
-+ ed=\E[J, el=\E[K, home=\E[H, ht=^I, ich1=\E[@,
-+ if=/usr/share/tabset/vt100, il1=\E[L, ind=^J,
-+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kDL=^Am\r,
-+ kEOL=^An\r, kbs=^H, kcbt=^AK\r, kclr=^AL\r, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=^AM\r, kel=^AN\r,
-+ kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf32=^A`\r,
-+ kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r,
-+ kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r,
-+ kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-+ kf8=^AG\r, kf9=^AH\r, khome=\E[f, kil1=^AJ\r, kind=^AO\r,
-+ nel=^M^J, rmam=\E[?7l, rmso=\E[m, rmul=\E[m, sgr0=\E[m,
-+ smam=\E[?7h, smso=\E[7m, smul=\E[4m,
-+# (altos3: had extension capabilities
-+# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\
-+# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\
-+# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\
-+# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r:
-+# :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,
-+ blink=\E[5p, ri=\EM, sgr0=\E[p, use=altos2,
-+altos4|alt4|altos-4|altos IV,
-+ use=wy50,
-+# (altos7: had extension capabilities:
-+# :GG#0:GI=\EH8:GF=\EH7:\
-+# :c0=^A`\r:c1=^Aa\r:c2=^Ab\r:c3=^Ac\r:\
-+# :c4=^Ad\r:c5=^Ae\r:c6=^Af\r:c7=^Ag\r:\
-+# :c8=^Ah\r:c9=^Ai\r:cA=^Aj\r:cB=^Ak\r:\
-+# :cC=^Al\r:cD=^Am\r:cE=^An\r:cF=^Ao\r:
-+# 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. 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,
-+ am, mir,
-+ cols#80, lines#24, xmc#0,
-+ acsc=j5k3l2m1n8q\:t4u9v=w0x6, blink=\EG2, bold=\EGt,
-+ clear=\E+^^, cr=^M, cub1=^H, cud1=^J, 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=^J, invis=\EG1,
-+ 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=^J, 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,
-+ kf33=^Aa\r, kf34=^Ab\r, kf35=^Ac\r, kf36=^Ad\r, kf37=^Ae\r,
-+ kf38=^Af\r, kf39=^Ag\r, kf4=^AC\r, kf40=^Ah\r, kf41=^Ai\r,
-+ kf42=^Aj\r, kf43=^Ak\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-+ kf8=^AG\r, kf9=^AH\r, khome=^^, kil1=^AJ\r, kind=^AO\r,
-+ knp=\EK, kpp=\EJ, mc4=\EJ, mc5=\Ed#, nel=^M^J, ri=\Ej,
-+ rmir=\Er, smir=\Eq, use=adm+sgr,
-+altos7pc|alt7pc|altos PC VII,
-+ kend=\ET, use=altos7,
-+
-+#### Hewlett-Packard (hp)
- #
--# Shifted Function Keys:
-+# Hewlett-Packard
-+# 8000 Foothills Blvd
-+# Roseville, CA 95747
-+# Vox: 1-(916)-785-4363 (Technical response line for VDTs)
-+# 1-(800)-633-3600 (General customer support)
- #
--# SHIFT + Key | capname|| Equivalent
--# -------------|--------||------------
--# SHIFT + F1 | <kf12> || FUNCT + `
--# SHIFT + F2 | <kf13> || FUNCT + a
--# SHIFT + F3 | <kf14> || FUNCT + b
--# SHIFT + F4 | <kf15> || FUNCT + c
--# SHIFT + F5 | <kf16> || FUNCT + d
--# SHIFT + F6 | <kf17> || FUNCT + e
--# SHIFT + F7 | <kf18> || FUNCT + f
--# SHIFT + F8 | <kf19> || FUNCT + g
--# SHIFT + F9 | <kf20> || FUNCT + h
--# SHIFT + F10 | <kf21> || FUNCT + i
--# SHIFT + F11 | <kf22> || FUNCT + j
- #
--# PORTS AND SWITCH SETTINGS
-+# As of March 1998, HP no longer has any terminals in production.
-+# The 700 series (22, 32, 41, 44, 92, 94, 96, 98) is still being
-+# supported (they still have parts). So are the 2392a and 2394a.
-+# See the WORKSTATION CONSOLES section for the 700s.
- #
--# Here are the switch settings for the TVI-912B/TVI-920B and
--# TVI-912C/TVI-920C:
-+
-+# Generic HP terminal - this should (hopefully) work on any HP 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=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\E&a%p2%dc%p1%dY$<6>, cuu1=\EA, dch1=\EP, dl1=\EM,
-+ ed=\EJ, el=\EK, hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL,
-+ ind=^J, kbs=^H, kcbt=\Ei, rmir=\ER, rmso=\E&d@, rmul=\E&d@,
-+ sgr0=\E&d@, smir=\EQ, smso=\E&dJ, smul=\E&dD, tbc=\E3,
-+ vpa=\E&a%p1%dY,
-+
-+hp110|hewlett-packard model 110 portable,
-+ lines#16, use=hpgeneric,
-+
-+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,
-+ kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev,
-+ kf8=\Ew,
-+
-+# The hp2621s use the same keys for the arrows and function keys,
-+# 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,
-+ 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,
-+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh,
-+ kind=\ES, kll=\EF, kri=\ET,
-+
-+# Generic stuff from the HP 262x series
- #
--# S1 (Line), and S3 (Printer) baud rates -- put one, and only one, switch down:
--# 2: 9600 3: 4800 4: 2400 5: 1200
--# 6: 600 7: 300 8: 150 9: 75
--# 10: 110
--#
--# S2 UART/Terminal options:
--# Up Down
--# 1: Not used Not allowed
--# 2: Alternate character set Standard character set
--# 3: Full duplex Half duplex
--# 4: 50 Hz refresh 60 Hz refresh
--# 5: No parity Send parity
--# 6: 2 stop bits 1 stop bit
--# 7: 8 data bits 7 data bits
--# 8: Not used Not allowed on Rev E or lower
--# 9: Even parity Odd parity
--# 10: Steady cursor Blinking cursor
--# (On Rev E or lower, use W25 instead of switch 10.)
--#
--# S5 UART/Terminal options:
--# Open Closed
--# 1: P3-6 Not connected DSR received on P3-6
--# 2: P3-8 Not connected DCD received on P3-8
-+hp262x|HP 262x terminals,
-+ xhp,
-+ blink=\E&dA, dch1=\EP$<2>, ed=\EJ, ht=\011$<2>, ind=\ES,
-+ invis=\E&dS, ip=$<2>, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-+ kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh,
-+ kich1=\EQ, kil1=\EL, kind=\ES, knp=\EU, kpp=\EV, kri=\ET,
-+ krmir=\ER, rev=\E&dB, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@,
-+ sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%c,
-+ sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB, smul=\E&dD,
-+
-+# Note: no <home> on HPs since that homes to top of memory, not screen.
-+# Due to severe 2621 braindamage, the only way to get the arrow keys to
-+# transmit anything at all is to turn on the function key labels
-+# with <smkx>, and even then the user has to hold down shift!
-+# The default 2621 turns off the labels except when it has to to
-+# enable the function keys. If your installation prefers labels
-+# on all the time, or off all the time (at the "expense" of the
-+# function keys), use 2621-nl or 2621-wl.
- #
--# 3 Open, 4 Open: P3-20 Not connected
--# 3 Open, 4 Closed: DTR on when terminal is on
--# 3 Closed, 4 Open: DTR is connected to RTS
--# 3 Closed, 4 Closed: Not allowed
-+# Note: there are newer ROMs for 2621's that allow you to set
-+# strap A so the regular arrow keys xmit \EA, etc, as with the
-+# 2645. However, even with this strap set, the terminal stops
-+# xmitting if you reset it, until you unset and reset the strap!
-+# 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,
-+ 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,
-+ is2=\E&jA\r, rmkx=\E&jA, use=hp2621-fl,
-+hp2621-fl|hp 2621,
-+ xhp@, xon,
-+ pb#19200,
-+ cbt=\Ei, cup=\E&a%p2%dc%p1%dY, dch1=\EP$<2>, ht=\011$<2>,
-+ ip=$<2>, is2=\E&j@\r, rmkx=\E&j@, rmso=\E&d@, rmul=\E&d@,
-+ sgr0=\E&d@, smkx=\E&jB, smso=\E&dD, smul=\E&dD,
-+ use=hp+pfk+cr, use=hpgeneric,
-+
-+# To use hp2621p printer, setenv TERM=2621p, PRINTER=2612p
-+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,
-+ 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,
-+ 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,
-+ kcub1@, kcud1@, kcuf1@, kcuu1@, khome@, rmkx@, smkx@,
-+ use=hp2621-fl,
-+
-+# Needed for UCB ARPAVAX console, since lsi-11 expands tabs
-+# (wrong).
- #
--# 5 Closed: HDX printer (hardware control) Rev. K with extension port off,
--# all data transmitted out of the modem port (P3) will also be
--# transmitted out of the printer port (P4).
-+hp2621-nt|hp 2621 w/no tabs,
-+ ht@, use=hp2621,
-+
-+# Hp 2624 B with 4 or 10 pages of memory.
- #
--# 6 Open, 7 Open: Not allowed
--# 6 Open, 7 Closed: 20ma current loop input
--# 6 Closed, 7 Open: RS232 input
--# 6 Closed, 7 Closed: Not allowed
-+# Some assumptions are made with this entry. These settings are
-+# NOT set up by the initialization strings.
- #
--# Jumper options:
--# If the jumper is installed, the effect will occur (the next time the terminal
--# is switched on).
-+# Port Configuration
-+# RecvPace=Xon/Xoff
-+# XmitPace=Xon/Xoff
-+# StripNulDel=Yes
- #
--# S4/W31: Enables automatic LF upon receipt of CR from
--# remote or keyboard.
--# S4/W32: Enables transmission of EOT at the end of Send. If not
--# installed, a carriage return is sent.
--# S4/W33: Disables automatic carriage return in column 80.
--# S4/W34: Selects Page Print Mode as initial condition. If not
--# installed, Extension Mode is selected.
-+# Terminal Configuration
-+# InhHndShk=Yes
-+# InhDC2=Yes
-+# XmitFnctn(A)=No
-+# InhEolWrp=No
- #
--# NON-STANDARD CAPABILITIES
-+# Note: the 2624 DOES have a true <home>, believe it or not!
- #
--# Sending <u9> or <u7> returns a cursor position report in the format
--# YX\r, where Y and X are as in <cup>. This format is described in
--# <u8> and <u6>, but it's not clear how one should write an
--# appropriate scanf string, since we need to subtract %' ' from the
--# character after reading it. The <u9> capability is used by tack(1)
--# to synchronize during padding tests, and seems to work for that
--# purpose.
-+# The 2624 has an "error line" to which messages can be sent.
-+# This is CLOSE to what is expected for a "status line". However,
-+# after a message is sent to the "error line", the next carriage
-+# return is EATEN and the "error line" is turned back off again!
-+# So I guess we can't define <hs>, <eslok>, <wsl>, <dsl>, <fsl>, <tsl>.
- #
--# This description also includes the obsolete termcap capabilities
--# has_hardware_tabs (<OTpt>) and backspaces_with_bs (<OTbs>).
-+# This entry supports emacs (and any other program that uses raw
-+# mode) at 4800 baud and less. I couldn't get the padding right
-+# for 9600.
- #
--# FEATURES NOT YET DESCRIBED IN THIS TERMINFO
-+# (hp2624: replaced NUL sequences in flash with mandatory pauses -- esr)
-+hp2624|hp2624a|hp2624b|hp2624b-4p|Hewlett Packard 2624 B,
-+ da, db,
-+ lm#96,
-+ flash=\E&w13F$<66/>\E&w12F$<66/>\E&w13F$<66/>\E&w12F,
-+ use=hp+labels, use=scrhp,
-+
-+# This hp2626 entry does not use any of the fancy windowing stuff
-+# of the 2626.
- #
--# The FUNCT modifier actually works with every normal key by sending
--# ^AX\r, where X is the sequence normally sent by that key. This is a
--# sort of meta key not currently describable in terminfo.
-+# Indeed, terminfo does not yet handle such stuff. Since changing
-+# any window clears memory, it is probably not possible to use
-+# this for screen opt.
- #
--# There are quite a few other keys (especially on the 920 models,) but
--# they are for the most part only useful in block mode.
-+# ed is incredibly slow most of the time - I am guessing at the
-+# exact padding. Since the terminal uses xoff/xon this is intended
-+# only for cost computation, so that the terminal will prefer el
-+# or even dl1 which is probably faster!
- #
--# These terminals have lots of forms manipulation features, mainly
--# useful in block mode, including "clear X to nulls" (vs. "clear X to
--# spaces"; nulls are sentinels for "send X" operations); "send X"
--# operations for uploading all or part of the screen; and block-mode
--# editing keys (they don't send escape sequences, but manipulate video
--# memory directly). Block mode is used for local editing, and protect
--# mode (in conjunction with the "write protect" attribute,
--# a.k.a. half-intensity outside of protect mode) is used to control
--# which parts of the screen are edited/sent/printed (by <mc0>).
-+# \ED\EJ\EC hack for ed from Ed Bradford - apparently ed is only
-+# extra slow on the last line of the window.
- #
--# There are at least two major families of ROM, "early" and
--# A49B1/A49C1; the major difference seems to be that the latter ROMs
--# support a few extra escape sequences for manipulating the off-screen
--# memory page, and for sending whole pages back to the host (mainly
--# useful in block mode.) The descriptions in this file don't use any
--# of those sequences: set cursor position including page (\E-PYX,
--# where P is \s for page 0 and ! for page 1 [actually only the LSB of
--# P is taken into account, so e.g. 0 and 1 work too,] and Y and X are
--# as in <cup>); read cursor position (\E/), which is analogous to <u9>
--# and returns PYX\r, where P is \s for page 0 or ! for page 1, and YX
--# are as in <cup>, and some "send page" features mainly useful for
--# forms manipulation.
-+# The padding probably should be changed.
- #
--# The keyboard enable (\E") and disable (\E#) sequences are unused,
--# except that a terminal reset (<is2>) enables the keyboard.
-+hp2626|hp2626a|hp2626p|hp 2626,
-+ da, db,
-+ lm#0, pb#19200,
-+ ed=\ED\EJ$<500>\EC, indn=\E&r%p1%dD, ip=$<4>,
-+ is2=\E&j@\r, rin=\E&r%p1%dU, use=hp+pfk-cr,
-+ use=hp+labels, use=scrhp,
-+
-+# This entry is for sysline. It allocates a 23 line window with
-+# a 115 line workspace for regular use, and a 1 line window for
-+# the status line.
- #
--# Auto-flip mode (\Ev) is likely faster than the scrolling mode (\Ew)
--# enabled in <is2>, but auto-flip is very jarring so we don't use it.
-+# This assumes port 2 is being used.
-+# Turn off horizontal line, Create ws #1 with 115 lines,
-+# Create ws #2 with 1 line, Create window #1 lines 1-23,
-+# Create window #2 lines 24-24, Attach cursor to workspace #1.
-+# Note that this clears the tabs so it must be done by tset before
-+# it sets the tabs.
- #
--# BUGS
-+hp2626-s|hp 2626 using only 23 lines,
-+ eslok, hs,
-+ lines#23,
-+ fsl=\E&d@\E&w7f2p1I\E&w4f1I,
-+ is1=\E&q3t0{0H \E&w0f115n1I \E&w0f1n2I \E&w2f1i0d0u22l0S \E&w2f2i0d23u23l0S \E&w7f2p1I \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,
-+ is1=\E&q3t0{0H \E&w0f118n1I \E&w0f1n2I \E&w2f1i0d0u23l0S \E&w3f2I \E&w7f2p1I \r,
-+ use=hp2626,
-+# Various entries useful for small windows on 2626.
-+hp2626-12|hewlett-packard 2626 12 lines,
-+ lines#12, use=hp2626,
-+hp2626-12x40|hewlett-packard 2626 12 lines 40 columns,
-+ cols#40, lines#12, use=hp2626,
-+hp2626-x40|hewlett-packard 2626 40 columns,
-+ cols#40, use=hp2626,
-+hp2626-12-s|hewlett-packard 2626 11 lines plus status,
-+ lines#11, use=hp2626-s,
-+
- #
--# At least up to the A49B1 and A49C1 ROMs, there are no \Eb and \Ed
--# sequences (I infer that in some TeleVideo terminal they may invert
--# and uninvert the display) so the <flash> sequence given here is a
--# cheesy page-flip instead.
-+# hp2627 color tubes from University of Wisconsin
- #
--# The back_tab (<cbt>) sequence (\EI) doesn't work according to
--# tack(1), so it is not included in the descriptions below.
-+hp2627a-rev|hp 2627 with reverse video colors,
-+ cr=^M, cud1=^J, ht=^I, ind=^J,
-+ is2=\E&v0m1a0b0c1x1y1z1i0a0b1c1x1y1z0i0S\E&j@\r\E3\r,
-+ kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, rmul=\E&v0S\E&d@,
-+ smul=\E&dD\E&v1S, use=hp2621-nl,
-+hp2627a|hp 2627 color terminal with no labels,
-+ cr=^M, cud1=^J, ht=^I, ind=^J,
-+ is2=\E&v0m1a1b0c1i0a1b1c2i1a0b0c0i0S\E&j@\r\E3\r,
-+ kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, 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,
-+ cr=^M, cud1=^J, ht=^I, ind=^J,
-+ is2=\E&v0m1a0b0c2i1a1b0c1i0a1b1c0i0S\E&j@\r\E3\r,
-+ kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, use=hp2627a,
-+
-+# hp2640a doesn't have the Y cursor addressing feature, and C is
-+# memory relative instead of screen relative, as we need.
- #
--# It's not clear whether auto_left_margin (<bw>) flag should be set
--# for these terminals; tack says yes, so it is set here, but this
--# differs from other descriptions I've seen.
--#
--# Extension print mode (<mc5>) echoes all characters to the printer
--# port [in addition to displaying them] except for the page print mode
--# sequence (<mc4>); this is a slight violation of the terminfo
--# definition for <mc5> but I don't expect it to cause problems. We
--# reset to page print mode in <rs1> since it may have been enabled
--# accidentally.
--#
--# The descriptions with plus signs (+) are building blocks.
--
--tvi912b-unk|tvi912c-unk|TeleVideo TVI-912B or TVI-912C (no attributes),
-- OTbs, OTpt, am, bw,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=\032$<50>, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=^K, dch1=\EW$<30>,
-- dl1=\ER$<1*>$<100>, ed=\Ey$<2*>$<10>, el=\ET$<15>,
-- home=^^, ht=^I, hts=\E1, ich1=\EQ$<30>,
-- if=/usr/share/tabset/stdcrt, il1=\EE$<1*>$<100>,
-- ind=\n$<10>, is2=\Ew\EA\E'\E"\E(, kcub1=^H, kcud1=^J,
-- kcuf1=^L, kcuu1=^K, kdch1=\177, kent=^M, khome=^^, mc4=\EA,
-- mc5=\E@, rs1=\Ek\010\Em\010\Eq\032, tbc=\E3, u6=%c%c\r,
-- u7=\E?, u8=%c%c\r, u9=\E?,
--
--# This isn't included in the basic capabilities because it is
--# typically unusable in combination with the full range of video
--# attributes, since the magic cookie attributes turn into ASCII
--# control characters, and the half-intensity ("protected") attribute
--# converts all affected characters to spaces.
--
--tvi912b+printer|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C page print support,
-- mc0=\EP,
--
--# This uses half-intensity mode (<dim>) for standout (<smso>), and
--# exposes no other attributes (half-intensity is the only attribute
--# that does not generate a magic cookie.)
--
--tvi912b+dim|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C half-intensity attribute support,
-- msgr,
-- dim=\E), rmso=\E(, sgr=\E%?%p1%p5%|%t)%e(%;, sgr0=\E(,
-- smso=\E),
--
--# Full magic-cookie attribute support, with half-intensity reverse
--# video for standout. Note that we add a space in the <dim> sequence
--# to give a consistent magic-cookie count. Also note that <sgr> uses
--# backspacing (in the TVI-supported order) to apply all requested
--# attributes with only a single magic cookie.
-+hp2640a|hp 2640a,
-+ cup@, rmkx@, smkx@, use=hp2645,
-
--tvi912b+mc|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C full magic-cookie attribute support,
-- xmc#1,
-- blink=\E\^, dim=\E)\s, invis=\E_, rev=\Ej, rmso=\E(\Ek,
-- rmul=\Em,
-- sgr=\E%?%p1%p5%|%t)%e(%; \010\E%?%p1%p3%|%tj%ek%;\010\E%?%p2%tl%em%;\010\E%?%p7%t_%e%?%p4%t\^%eq%;%;,
-- sgr0=\E(\Ek\010\Em\010\Eq, smso=\E)\Ej, smul=\El,
-+hp2640b|hp2644a|hp 264x series,
-+ rmkx@, smkx@, use=hp2645,
-
--# This uses the second page memory option to save & restore screen
--# contents. If your terminal is missing the option, this description
--# should still work, but that has not been tested.
-+# (hp2641a: removed unknown :gu: -- esr)
-+hp2641a|hp2645a|hp2647a|HP 264?A series BRL entry,
-+ am, da, db, mir, xhp,
-+ cols#80, lines#24,
-+ bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM,
-+ ed=\EJ, el=\EK, hpa=\E&a%p1%2dC, ht=^I,
-+ if=/usr/share/tabset/std, il1=\EL, ind=^J,
-+ is2=\EE$<500/>, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J,
-+ rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB,
-+ vpa=\E&a%p1%2dY,
-
--tvi912b+2p|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option support,
-- flash=\EK$<100>\EK, rmcup=\032$<50>\EK\E=7\s,
-- smcup=\EK\032$<50>\E(\Ek\010\Em\010\Eq\032$<50>,
-+# This terminal should be used at 4800 baud or less. It needs padding for
-+# plain characters at 9600, I guessed at an appropriate cr delay. It really
-+# wants ^E/^F handshaking, but that doesn't work well even if you write
-+# software to support it.
-+hp2645|hp45|HP 2645 series,
-+ pb#9600,
-+ blink=\E&dA, cr=\r$<20>, dim=\E&dH, kctab=\E2, kcub1=\ED,
-+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM,
-+ ked=\EJ, kel=\EK, khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL,
-+ kind=\ES, knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, rev=\E&dB,
-+ rmkx=\E&s0A,
-+ sgr=\E&d%{64}%?%p1%t%{66}%|%;%?%p2%t%{68}%|%;%?%p3%t%{66}%|%;%?%p4%t%{65}%|%;%?%p5%t%{72}%|%;%?%p6%t%{66}%|%;%c,
-+ sgr0=\E&d@, smkx=\E&s1A, smul=\E&dD, use=hpgeneric,
-+# You should use this terminal at 4800 baud or less.
-+hp2648|hp2648a|HP 2648a graphics terminal,
-+ clear=\EH\EJ$<50>, cup=\E&a%p2%dc%p1%dY$<20>,
-+ dch1=\EP$<7>, ip=$<5>, use=hp2645,
-
--# This simulates flashing by briefly toggling to the other page
--# (kludge!)
-+# 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,
-+ OTbs, use=hp2622,
-
--tvi912b+vb|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option "visible bell" support,
-- bel=\EK$<100>\EK, use=tvi912b+2p,
-+# 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,
-+ da, db,
-+ lh#1, lm#48,
-+ acsc@,
-+ pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s,
-+ rmacs@,
-+ sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c,
-+ sgr0=\E&d@, smacs@, use=hp+labels, use=scrhp,
-
--# Function keys (<kf12> .. <kf22> are shifted <kf1> .. <kf11>)
-+hp2621-a|hp2621a-a|hp2621 with fn as arrows,
-+ use=hp+pfk+arrows, use=hp2621-fl,
-
--tvi920b+fn|TeleVideo TVI-920B and TVI-920C function key support,
-- kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^A`\r, kf13=^Aa\r,
-- kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r, kf17=^Ae\r, kf18=^Af\r,
-- kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r, 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,
-+# newer hewlett packard terminals
-
--# Combinations of the basic building blocks
-+newhpkeyboard|generic entry for HP extended keyboard,
-+ kbs=^H, kcbt=\Ei, kclr=\EJ, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-+ kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK, khome=\Eh,
-+ kich1=\EQ, kil1=\EL, kind=\ET, kll=\EF, knp=\EU, kpp=\EV,
-+ kri=\ES, krmir=\ER, rmkx=\E&s0A, smkx=\E&s1A,
-+ use=hp+pfk-cr,
-
--tvi912b-2p-unk|tvi912c-2p-unk|tvi912b-unk-2p|tvi912c-unk-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes),
-- use=tvi912b+2p, use=tvi912b-unk,
-+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*dHjGkTlRmFn/q\,t5u6v8w7x.,
-+ bel=^G, blink=\E&dA, bold=\E&dF, cbt=\Ei, cr=^M, cub1=^H,
-+ cud1=^J, cuf1=\EC, cuu1=\EA, dch1=\EP$<2>, dim=\E&dH,
-+ dl1=\EM, ed=\EJ, el=\EK, ht=\011$<2>, hts=\E1, il1=\EL, ind=^J,
-+ invis=\E&dS, ip=$<2>, is1=\E&jB$<8>, nel=^M^J,
-+ pfkey=\E&f0a%p1%dk0d%p2%l%dL%p2%s,
-+ pfloc=\E&f1a%p1%dk0d%p2%l%dL%p2%s,
-+ pfx=\E&f2a%p1%dk0d%p2%l%dL%p2%s, rev=\E&dB, ri=\ET,
-+ rmacs=^O, rmir=\ER, rmso=\E&d@, rmul=\E&d@, rs1=\Eg,
-+ sgr=\E&d%{0}%Pa%?%p4%t%{1}%ga%+%Pa%;%?%p1%p3%|%p6%|%t%{2}%ga%+%Pa%;%?%p2%p6%|%t%{4}%ga%+%Pa%;%?%p1%p5%|%t%{8}%ga%+%Pa%;%?%p7%t%?%ga%ts%ga%{64}%+%e%{83}%;%e%?%ga%t%ga%{64}%+%e%{64}%;%;%c%?%p9%t\016%e\017%;,
-+ sgr0=\E&d@\017, smacs=^N, smir=\EQ, smso=\E&dJ, smul=\E&dD,
-+ tbc=\E3, use=newhpkeyboard,
-
--tvi912b-vb-unk|tvi912c-vb-unk|tvi912b-unk-vb|tvi912c-unk-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes),
-- use=tvi912b+vb, use=tvi912b-unk,
-+memhp|memory relative addressing for new HP ttys,
-+ vt#6,
-+ clear=\EH\EJ$<40>, cub=\E&a-%p1%dC, cud=\E&a+%p1%dR,
-+ cuf=\E&a+%p1%dC, cup=\E&a%p1%dr%p2%dC, cuu=\E&a-%p1%dR,
-+ home=\EH, hpa=\E&a%p1%dC, ll=\E&a23R\r,
-+ mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dR, use=newhp,
-
--tvi912b-p|tvi912c-p|TeleVideo TVI-912B or TVI-912C (no attributes; page print),
-- use=tvi912b+printer, use=tvi912b-unk,
-+scrhp|screen relative addressing for new HP ttys,
-+ clear=\E&a0c0Y\EJ$<40>, cub=\E&a-%p1%dC,
-+ cud=\E&a+%p1%dR, cuf=\E&a+%p1%dC,
-+ cup=\E&a%p1%dy%p2%dC$<10>, cuu=\E&a-%p1%dR,
-+ home=\E&a0y0C, hpa=\E&a%p1%dC, ll=\E&a0y0C\EA,
-+ mrcup=\E&a%p1%dr%p2%dC, vpa=\E&a%p1%dY, use=newhp,
-
--tvi912b-2p-p|tvi912c-2p-p|tvi912b-p-2p|tvi912c-p-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes; page print),
-- use=tvi912b+2p, use=tvi912b+printer, use=tvi912b-unk,
-+# (hp+labels: added label values from a BRL termcap -- esr)
-+hp+labels|"standard" label info for new HP ttys,
-+ lh#2, lw#8, nlab#8,
-+ lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8,
-+ pln=\E&f2a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d0L%?%ga%!%t %;%p2%s,
-+ rmln=\E&j@, smln=\E&jB,
-
--tvi912b-vb-p|tvi912c-vb-p|tvi912b-p-vb|tvi912c-p-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes; page print),
-- use=tvi912b+vb, use=tvi912b+printer, use=tvi912b-unk,
-+hp+printer|"standard" printer info for HP ttys,
-+ ff=\E&p4u0C, mc0=\EH\E&p4dF, mc4=\E&p13C, mc5=\E&p11C,
-
--tvi912b-2p|tvi912c-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; half-intensity attribute),
-- use=tvi912b+2p, use=tvi912b+dim, use=tvi912b-unk,
-
--tvi912b-2p-mc|tvi912c-2p-mc|tvi912b-mc-2p|tvi912c-mc-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; magic cookies),
-- use=tvi912b+2p, use=tvi912b+mc, use=tvi912b-unk,
-+# The new hp2621b is kind of a cross between the old 2621 and the
-+# 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,
-+ lh#1, lm#48, lw#8, nlab#8,
-+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh,
-+ kind=\ET, kll=\EF, kri=\ES,
-+ pln=\E&f0a%p1%dk%p2%l%Pa%?%ga%t%ga%d%e1%;d3L%?%ga%!%t%{32}%c%;%p2%s\E%{111}%p1%+%c\r,
-+ smln=\E&jB, use=hp2621,
-
--tvi912b-vb|tvi912c-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; half-intensity attribute),
-- use=tvi912b+vb, use=tvi912b+dim, use=tvi912b-unk,
-+hp2621b-p|hp 2621b with printer,
-+ use=hp+printer, use=hp2621b,
-
--tvi912b-vb-mc|tvi912c-vb-mc|tvi912b-mc-vb|tvi912c-mc-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; magic cookies),
-- use=tvi912b+vb, use=tvi912b+mc, use=tvi912b-unk,
-+# 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,
-+ use=newhpkeyboard, use=hp2621b,
-
--tvi912b|tvi912c|TeleVideo TVI-912B or TVI-912C (half-intensity attribute),
-- use=tvi912b+dim, use=tvi912b-unk,
-+hp2621b-kx-p|hp 2621b with new keyboard & printer,
-+ use=hp+printer, use=hp2621b-kx,
-
--tvi912b-mc|tvi912c-mc|TeleVideo TVI-912B or TVI-912C (magic cookies),
-- use=tvi912b+mc, use=tvi912b-unk,
-+# Some assumptions are made in the following entries.
-+# These settings are NOT set up by the initialization strings.
-+#
-+# Port Configuration
-+# RecvPace=Xon/Xoff XmitPace=Xon/Xoff StripNulDel=Yes
-+#
-+# Terminal Configuration
-+# InhHndShk(G)=Yes InhDC2(H)=Yes
-+# XmitFnctn(A)=No InhEolWrp=No
-+#
-+#
-+# Hp 2622a & hp2623a display and graphics terminals
-+#
-+hp2622|hp2622a|hp 2622,
-+ da, db,
-+ lm#0, pb#19200,
-+ is2=\E&dj@\r, use=hp+pfk-cr, use=hp+labels, use=scrhp,
-
--tvi920b-unk|tvi920c-unk|TeleVideo TVI-920B or TVI-920C (no attributes),
-- use=tvi920b+fn, use=tvi912b-unk,
-+# The 2623 is a 2622 with extra graphics hardware.
-+hp2623|hp2623a|hp 2623,
-+ use=hp2622,
-
--tvi920b-2p-unk|tvi920c-2p-unk|tvi920b-unk-2p|tvi920c-unk-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes),
-- use=tvi920b+fn, use=tvi912b+2p, use=tvi912b-unk,
-+hp2624b-p|hp2624b-4p-p|hewlett packard 2624 B with printer,
-+ use=hp+printer, use=hp2624,
-
--tvi920b-vb-unk|tvi920c-vb-unk|tvi920b-unk-vb|tvi920c-unk-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes),
-- use=tvi920b+fn, use=tvi912b+vb, use=tvi912b-unk,
-+# 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,
-+ lm#240, use=hp2624,
-
--tvi920b-p|tvi920c-p|TeleVideo TVI-920B or TVI-920C (no attributes; page print),
-- use=tvi920b+fn, use=tvi912b+printer, use=tvi912b-unk,
-+hp2624b-10p-p|hewlett packard 2624 B w/ extra memory & printer,
-+ lm#240, use=hp2624b-p,
-
--tvi920b-2p-p|tvi920c-2p-p|tvi920b-p-2p|tvi920c-p-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes; page print),
-- use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+printer,
-- use=tvi912b-unk,
-+# Color manipulations for HP terminals
-+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.%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,
-+ oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5I\E&v1b1c6I\E&v1x1y7I,
-+ op=\E&v0S, scp=\E&v%p1%dS,
-
--tvi920b-vb-p|tvi920c-vb-p|tvi920b-p-vb|tvi920c-p-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes; page print),
-- use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+printer,
-- use=tvi912b-unk,
-+# <is2> sets the screen to be 80 columns wide
-+hp2397a|hp2397|hewlett packard 2397A color terminal,
-+ is2=\E&w6f80X, use=memhp, use=hp+labels, use=hp+color,
-
--tvi920b-2p|tvi920c-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; half-intensity attribute),
-- use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+dim,
-- use=tvi912b-unk,
--
--tvi920b-2p-mc|tvi920c-2p-mc|tvi920b-mc-2p|tvi920c-mc-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; magic cookies),
-- use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+mc,
-- use=tvi912b-unk,
--
--tvi920b-vb|tvi920c-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; half-intensity attribute),
-- use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+dim,
-- use=tvi912b-unk,
-+# HP 700/44 Setup parameters:
-+# Terminal Mode HP-PCterm
-+# Inhibit Auto Wrap NO
-+# Status Line Host Writable
-+# PC Character Set YES
-+# Twenty-Five Line Mode YES
-+# XON/XOFF @128 or 64 (sc)
-+# Keycode Mode NO or YES (sc)
-+# Backspace Key BS or BS/DEL
-+#
-+# <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,
-+ 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=^M, 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=^J,
-+ 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~,
-+ kf2=\E[18~, kf3=\E[19~, kf4=\E[20~, kf5=\E[21~, kf6=\E[23~,
-+ kf7=\E[24~, kf8=\E[25~, kf9=\E[26~, khome=\E[1~, knp=\E[6~,
-+ kpp=\E[5~, rmam=\E[?7l,
-+ 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,
-+#
-+# (hp2392: copied <rmir> here from hpex -- esr)
-+hp2392|239x series,
-+ cols#80,
-+ cbt=\Ei, cup=\E&a%p1%dy%p2%dC, kf1=\Ep\r, kf2=\Eq\r,
-+ kf3=\Er\r, kf4=\Es\r, kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r,
-+ kf8=\Ew\r, khome=\Eh, kind=\EU, knp=\Eu, kpp=\Ev, kri=\EV,
-+ rmir=\ER, rmul=\E&d@, smir=\EQ, smul=\E&dD, vpa=\E&a%p1%dY,
-+ use=hpsub,
-
--tvi920b-vb-mc|tvi920c-vb-mc|tvi920b-mc-vb|tvi920c-mc-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; magic cookies),
-- use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+mc,
-- use=tvi912b-unk,
-+hpsub|hp terminals -- capability subset,
-+ am, da, db, mir, xhp, xon,
-+ lines#24,
-+ bel=^G, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC,
-+ cuu1=\EA, dch1=\EP, dl1=\EM, ed=\EJ, el=\EK, hpa=\E&a%p1%dC,
-+ ht=^I, if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J,
-+ is2=\E&s1A\E<\E&k0\\, kbs=^H, kcub1=\ED, kcud1=\EB,
-+ kcuf1=\EC, kcuu1=\EA, khome=\Eh, rmkx=\E&s0A, rmso=\E&d@,
-+ sgr0=\E&d@, smkx=\E&s1A, smso=\E&dB,
-
--tvi920b|tvi920c|TeleVideo TVI-920B or TVI-920C (half-intensity attribute),
-- use=tvi920b+fn, use=tvi912b+dim, use=tvi912b-unk,
-+# hpex:
-+# May be used for most 24 x 80 hp terminals,
-+# but has no padding added, so may allow runover in some terminals at high
-+# baud rates. Will not work for hp2640a or hp2640b terminals, hp98x6 and
-+# hp98x5 terminal emulators or hp98x6 consoles.
-+# Adds xy-cursor addressing, vertical cursor addressing, home,
-+# last line, and underline capabilities.
-+#
-+# (hpex: removed memory-lock capabilities ":ml=\El:mu=\Em:",
-+# moved <rmir> here from hpsub -- esr)
-+hpex|hp extended capabilites,
-+ cr=^M, cud1=^J, cup=\E&a%p1%dy%p2%dC, ht=^I, ind=^J, kbs=^H,
-+ kcub1=^H, kcud1=^J, nel=^M^J, rmir=\ER, rmul=\E&d@, smir=\EQ,
-+ smul=\E&dD, vpa=\E&a%p1%dY, use=hpsub,
-
--tvi920b-mc|tvi920c-mc|TeleVideo TVI-920B or TVI-920C (magic cookies),
-- use=tvi920b+fn, use=tvi912b+mc, use=tvi912b-unk,
-+# From: Ville Sulko <Ville.Sulko@bip.atk.tpo.fi>, 05 Aug 1996
-+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=^M, 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=^J, 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,
-+ 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, rmir=\ER, rmkx=\E&s0A,
-+ rmln=\E&j@, rmso=\E&d@, rmul=\E&d@,
-+ sgr=\E&d%?%p7%t%{115}%c%;%p1%p3%|%p6%|%{2}%*%p2%{4}%*%+%p4%+%p5%{8}%*%+%{64}%+%c%?%p9%t%'\016'%c%e%'\017'%c%;,
-+ sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smln=\E&jB, smso=\E&dB,
-+ smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
-
--# 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,
-- OTbs, OTpt, am, hs, xenl, xhp,
-- cols#80, lines#24, xmc#0,
-- acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K,
-- cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY,
-- el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ,
-- if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, invis@,
-- is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z, kcub1=^H,
-- kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER$<1*/>,
-- ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE, nel=^M^J, rmacs=\E%%,
-- rmir=, smacs=\E$, smir=, tsl=\Ef\EG0, use=adm+sgr,
--# 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,
-- am, hs, xenl, xhp,
-- cols#80, lines#24, xmc#0,
-- acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K,
-- cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY,
-- el=\ET, flash=\Eb$<200/>\Ed, fsl=\Eg, home=^^, ht=^I,
-- ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J,
-- invis@, is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z,
-- kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW,
-- kdl1=\ER$<1*/>, ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE,
-- nel=^M^J, rmacs=\E%%, smacs=\E$, tsl=\Ef\EG0, use=adm+sgr,
--# (tvi92D: removed :ko=bt: before translation, I see no backtab cap -- esr)
--tvi92D|tvi92B with DTR instead of XON/XOFF & better padding,
-- dl1=\ER$<2*/>, il1=\EE$<2*/>,
-- is2=\El\E"\EF1\E.3\016\EA\E<, kdl1=\ER$<2*/>,
-- kil1=\EE$<2*/>, use=tvi92B,
-+# HP 236 console
-+# From: <ddavis@ic.berkeley.edu>
-+hp236|hp236 internal terminal emulator,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ clear=\EF, cnorm=\EDE, cub1=^H,
-+ cup=\EE%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\EDB,
-+ dch1=\EJ, dl1=\EH, el=\EK, ich1=\EI, il1=\EG, rmso=\ECI,
-+ sgr0=\ECI, smso=\EBI,
-
--# (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,
-- 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,
-- cnorm=\E.3, cr=^M, csr=\E_%p1%{32}%+%c%p2%{32}%+%c,
-- cub1=^H, cud1=^V, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\E.1,
-- dch1=\EW, dl1=\ER, dsl=\Es0\Ef\031, ed=\Ey, el=\Et,
-- flash=\Eb$<200>\Ed, fsl=\031\Es1, home=^^, ht=^I, hts=\E1,
-- ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J,
-- invis@, is1=\017\E%\E'\E(\EDF\EC\EG0\EN0\Es0\Ev0,
-- kbs=^H, kclr=\E*0, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K,
-- kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A@\r, kf1=^AA\r,
-- kf10=^AJ\r, kf11=^AK\r, kf12=^AL\r, kf13=^AM\r, kf14=^AN\r,
-- kf15=^AO\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, khome=^^,
-- kich1=\EQ, kil1=\EE, lf0=F1, lf1=F2, lf10=F11, lf2=F3, lf3=F4,
-- lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10,
-- pfkey=\E|%p1%{49}%+%c%p2%s\031, ri=\Ej, tbc=\E3, tsl=\Ef,
-- use=adm+sgr,
-+# This works on a hp300 console running Utah 4.3 BSD
-+# From: Craig Leres <leres@okeeffe.berkeley.edu>
-+hp300h|HP Catseye console,
-+ OTbs, am, da, db, mir, xhp,
-+ cols#128, lines#51, lm#0, xmc#0,
-+ bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, 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,
-+ if=/usr/share/tabset/stdcrt, il1=\EL, ind=^J, kbs=^H,
-+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\Eh,
-+ rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@,
-+ smir=\EQ, smkx=\E&s1A, smso=\E&dB, smul=\E&dD, tbc=\E3,
-+ vpa=\E&a%p1%dY,
-+# From: Greg Couch <gregc@ernie.berkeley.edu>
-+hp9837|hp98720|hp98721|HP 9000/300 workstations,
-+ OTbs, am, da, db, mir, xhp,
-+ cols#128, it#8, lines#46, lm#0,
-+ bel=^G, cbt=\Ei, clear=\E&a0y0C\EJ, 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=^J, is2=\E&v0m1b0i&j@, kbs=^H, kcub1=\ED,
-+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM,
-+ ked=\EJ, kel=\EK, khome=\Eh, kich1=\EQ, kil1=\EL, knp=\EU,
-+ kpp=\EV, rmir=\ER, rmkx=\E&s0A, rmso=\E&v0S, rmul=\E&d@,
-+ sgr0=\E&d@, smir=\EQ, smkx=\E&s1A, smso=\E&v5S, smul=\E&dD,
-+ tbc=\E3, vpa=\E&a%p1%dY,
-+# HP 9845 desktop computer from BRL
-+# (hp9845: removed unknown capability :gu: -- esr)
-+hp9845|HP 9845,
-+ OTbs, am, da, db, eo, mir, xhp,
-+ cols#80, lines#21,
-+ OTbc=\ED, clear=\EH\EJ, cub1=\ED, cud1=\EB, cuf1=\EC,
-+ cup=\E&a%p2%2dc%p1%2dY, cuu1=\EA, dch1=\EP, dl1=\EM,
-+ ed=\EJ, el=\EK, if=/usr/share/tabset/std, il1=\EL,
-+ rmir=\ER, rmso=\E&d@, smir=\EQ, smso=\E&dB,
-+# From: Charles A. Finnell of MITRE <finnell@mitre.org>, developed 07SEP90
-+# (hp98550: replaced /usr/share/tabset/9837 with std because <it#8>,<hts=\E1>;
-+# added empty <acsc> to avoid warnings re <smacs>/<rmacs> --esr)
-+hp98550|hp98550a|HP 9000 Series 300 color console,
-+ OTbs, am, da, db, mir, xhp,
-+ cols#128, it#8, lines#49, lm#0,
-+ acsc=, bel=^G, blink=\E&dA, bold=\E&dJ, cbt=\Ei, civis=\E*dR,
-+ clear=\EH\EJ, cnorm=\E*dQ, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ 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=^J, 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,
-+# 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)
-+hp700-wy|HP700/41 emulating wyse30,
-+ OTbs, am, bw, mir, msgr,
-+ cols#80, it#8, lines#24, xmc#1,
-+ cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^V, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\EY, el=\ET$<10/>, home=^^, ht=^I, hts=\E1,
-+ if=/usr/share/tabset/stdcrt, il1=\EE$<0.7*/>,
-+ is1=\E~"\EC\Er\E(\EG0\003\E`9\E`1, kbs=\177, kcbt=\EI,
-+ kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, ked=\EY,
-+ kel=\ET, khome=^^, khts=\EI, kich1=\Eq, krmir=\Er, ll=^^^K,
-+ ri=\Ej, rmir=\Er, rmso=\EG0$<10/>, rmul=\EG0$<10/>,
-+ sgr0=\EG0$<10/>, smir=\Eq, smso=\EG4$<10/>,
-+ smul=\EG8$<10/>, tbc=\E0, vpa=\E[%p1%{32}%+%c,
-+hp70092|hp70092a|hp70092A|HP 700/92,
-+ am, da, db, xhp,
-+ cols#80, lh#2, lines#24, lm#0, lw#8, nlab#8,
-+ acsc=0cjgktlrmfn/q\,t5u6v8w7x., bel=^G, blink=\E&dA,
-+ bold=\E&dB, cbt=\Ei, clear=\E&a0y0C\EJ, cr=^M, 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,
-
--# TVI925 DIP switches. In each of these, D = Down and U = Up,
-+bobcat|sbobcat|HP 9000 model 300 console,
-+ am, da, db, mir, xhp,
-+ cols#128, it#8, lines#47, xmc#0,
-+ cbt=\Ei, clear=\EH\EJ, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC,
-+ cup=\E&a%p1%dy%p2%dC$<6/>, cuu1=\EA, dch1=\EP,
-+ dl1=\EM$<10*/>, ed=\EJ, el=\EK, hpa=\E&a%p1%dC$<6/>, ht=^I,
-+ il1=\EL$<10*/>, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB,
-+ kcuf1=\EC, kcuu1=\EA, khome=\Eh, nel=^M^J, rmir=\ER,
-+ rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@, sgr0=\E&d@, smir=\EQ,
-+ smkx=\E&s1A, smso=\E&dB, smul=\E&dD, vpa=\E&a%p1%dY$<6/>,
-+gator-t|HP 9000 model 237 emulating extra-tall AAA,
-+ lines#94, use=gator,
-+gator|HP 9000 model 237 emulating AAA,
-+ bw, km, mir, ul,
-+ cols#128, it#8, lines#47,
-+ bel=^G, cbt=\E[Z, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM,
-+ dch=\E[%p1%dP$<4/>, dch1=\E[P, dl=\E[%p1%dM$<1*/>,
-+ dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, hpa=\E[%i%p1%d`,
-+ ht=^I, ich=\E[%p1%d@$<4/>, ich1=\E[@, il=\E[%p1%dL$<1*/>,
-+ il1=\E[L, kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J,
-+ 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,
-+gator-52t|HP 9000 model 237 emulating extra-tall VT52,
-+ lines#94, use=gator-52,
-+
-+#### Honeywell-Bull
- #
--# Here are the settings for the external (baud) switches (S1):
-+# From: Michael Haardt <michael@gandalf.moria> 11 Jan 93
- #
--# Position Baud
--# 7 8 9 10 [Printer]
--# 1 2 3 4 [Main RS232]
--# -----------------------------------------------------
--# D D D D 9600
--# D D D U 50
--# D D U D 75
--# D D U U 110
--# D U D D 135
--# D U D U 150
--# D U U D 300
--# D U U U 600
--# U D D D 1200
--# U D D U 1800
--# U D U D 2400
--# U D U U 3600
--# U U D D 4800
--# U U D U 7200
--# U U U D 9600
--# U U U U 19200
-+
-+# Honeywell Bull terminal. Its cursor and function keys send single
-+# control characters and it has standout/underline glitch. Most programs
-+# do not like these features/bugs. Visual bell is realized by flashing the
-+# "keyboard locked" LED.
-+dku7003-dumb|Honeywell Bull DKU 7003 dumb mode,
-+ cols#80, lines#25,
-+ clear=^]^_, cr=^M, cub1=^Y, cud1=^K, cuf1=^X,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, ed=^_, el=\E[K,
-+ flash=\E[2h\E[2l, home=^], ht=^I, ind=^J, kbs=^H, kcub1=^Y,
-+ kcud1=^K, kcuf1=^X, kcuu1=^Z, khome=^], nel=^M^J,
-+dku7003|Honeywell Bull DKU 7003 all features described,
-+ msgr,
-+ xmc#1,
-+ blink=\E[5m, bold=\E[7m, dim=\E[2m, rev=\E[7m, rmso=\E[m,
-+ rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-+ use=dku7003-dumb,
-+
-+#### Lear-Siegler (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
-+# emulations (usually their stupidest, and usually labeled adm3, though
-+# these `adm3' emulations normally have adm3a+ capabilities).
- #
--# Settings for word length and stop-bits (S1)
-+# WARNING: Some early ADM terminals (including the ADM3 and ADM5) had a
-+# `diagnostic feature' that sending them a ^G while pin 22 (`Ring Indicator')
-+# was being held to ground would trigger a send of the top line on the screen.
-+# A quick fix might be to drop back to a cheesy 4-wire cable with pin 22
-+# hanging in the air. (Thanks to Eric Fischer, <eric@fudge.uchicago.edu>,
-+# for clearing up this point.)
-+
-+adm1a|adm1|lsi adm1a,
-+ am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\E;$<1>, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, home=^^,
-+ ind=^J,
-+adm2|lsi adm2,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\EY, el=\ET, home=^^, ich1=\EQ, il1=\EE, ind=^J,
-+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^,
-+# (adm3: removed obsolete ":ma=^K^P:" -- esr)
-+adm3|lsi adm3,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, ind=^J,
-+# The following ADM-3A switch settings are assumed for normal operation:
-+# SPACE U/L_DISP CLR_SCRN 24_LINE
-+# CUR_CTL LC_EN AUTO_NL FDX
-+# Other switches may be set for operator convenience or communication
-+# requirements. I recommend
-+# DISABLE_KB_LOCK LOCAL_OFF 103 202_OFF
-+# ETX_OFF EOT_OFF
-+# Most of these terminals required an option ROM to support lower case display.
-+# Open the case and look at the motherboard; if you see an open 24-pin DIP
-+# socket, you may be out of luck.
- #
--# Position Description
--# 5 6
--# ---------------------------
--# U - 7-bit word
--# D - 8-bit word
--# - U 2 stop bits
--# - D 1 stop bit
-+# (adm3a: some capabilities merged in from BRl entry -- esr)
-+adm3a|lsi adm3a,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ OTma=^K^P, OTnl=^J, bel=^G, clear=\032$<1/>, cr=^M, cub1=^H,
-+ cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c,
-+ cuu1=^K, home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L,
-+ kcuu1=^K, rs2=^N,
-+adm3a+|adm3a plus,
-+ kbs=^H, use=adm3a,
-+# (adm5: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" & duplicate ":do=^J:" -- esr)
-+adm5|lsi adm5,
-+ xmc#1,
-+ bel=^G, cr=^M, cud1=^J, ed=\EY, el=\ET, kbs=^H, khome=^^,
-+ rmso=\EG, smso=\EG, use=adm3a+,
-+# A lot of terminals other than adm11s use these. Wherever you see
-+# use=adm+sgr with some of its capabilities disabled, try the
-+# disabled ones. They may well work but not have been documented or
-+# expressed in the using entry. We'd like to cook up an <sgr> but the
-+# <rmacs>/<smacs> sequences of the using entries vary too much.
-+adm+sgr|adm style highlight capabilities,
-+ invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0, sgr0=\EG0,
-+ smso=\EG4, smul=\EG8,
-+# LSI ADM-11 from George William Hartwig, Jr. <geo@BRL-TGR.ARPA> via BRL
-+# Status line additions from Stephen J. Muir <stephen%comp.lancs.ac.uk@ucl-cs>
-+# <khome> from <stephen%comp.lancs.ac.uk@ucl-cs.arpa>. <clear> could also
-+# be ^Z, according to his entry.
-+# (adm11: <smul>=\EG4 was obviously erroneous because it also said
-+# <rev>=\EG4. Looking at other ADMs confirms this -- esr)
-+adm11|LSI ADM-11,
-+ OTbs, am, hs,
-+ OTkn#8, cols#80, lines#24,
-+ OTnl=^J, bel=^G, blink=\EG2, clear=\E*, cr=^M, cub1=^H,
-+ cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c,
-+ cuu1=^K, dsl=\Eh, ed=\EY, el=\ET, fsl=\E(\r, home=^^, ht=^I,
-+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r,
-+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r,
-+ kf7=^AF\r, kf8=^AG\r, khome=^^, nel=^M^J, tsl=\EF\E),
-+ use=adm+sgr,
-+# From: Andrew Scott Beals <bandy@lll-crg.ARPA>
-+# Corrected by Olaf Siebert <rhialto@polder.ubc.kun.nl>, 11 May 1995
-+# Supervisor mode info by Ari Wuolle, <awuolle@delta.hut.fi>, 27 Aug 1996
-+# (adm12: removed obsolete ":kn:ma=j^Jk^P^K^Pl ^R^L^L :". This formerly had
-+# <is2>=\Eq but that looked wrong; this <is2> is from Dave Yost <esquire!yost>
-+# via BRL. That entry asserted <xmc#1>, but I've left that out because
-+# neither earlier nor later ADMSs have it -- esr)
- #
-+# You will need to get into the supervisor setup before you can set
-+# baudrate etc. for your ADM-12+. Press Shift-Ctrl-Setup and you should
-+# see a lot more setup options.
- #
--# S2 (external) settings
-+# While in supervisor setup you can also use following codes:
- #
--# Position Up Dn Description
--# --------------------------------------------
--# 1 X Local edit
--# X Duplex edit (transmit editing keys)
--# --------------------------------------------
--# 2 X 912/920 emulation
--# X 925
--# --------------------------------------------
--# 3 X
--# 4 X No parity
--# 5 X
--# --------------------------------------------
--# 3 X
--# 4 X Odd parity
--# 5 X
--# --------------------------------------------
--# 3 X
--# 4 X Even parity
--# 5 X
--# --------------------------------------------
--# 3 X
--# 4 X Mark parity
--# 5 X
--# --------------------------------------------
--# 3 X
--# 4 X Space parity
--# 5 X
--# --------------------------------------------
--# 6 X White on black display
--# X Black on white display
--# --------------------------------------------
--# 7 X Half Duplex
--# 8 X
--# --------------------------------------------
--# 7 X Full Duplex
--# 8 X
--# --------------------------------------------
--# 7 X Block mode
--# 8 X
--# --------------------------------------------
--# 9 X 50 Hz
--# X 60 Hz
--# --------------------------------------------
--# 10 X CR/LF (Auto LF)
--# X CR only
-+# Ctrl-P Personality character selections (configure for example what
-+# arrow keys send, if I recall correctly)
-+# Ctrl-T tabs 1-80 use left&right to move and up to set and
-+# Ctrl-V tabs 81-158 down to clear tab. Shift-Ctrl-M sets right margin at cursor
-+# Ctrl-B Binary setup (probably not needed. I think that everything can
-+# be set using normal setup)
-+# Ctrl-A Answerback mode (enter answerback message)
-+# Ctrl-U User friendly mode (normal setup)
-+# Ctrl-D Defaults entire setup and function keys from EPROM tables
-+# Ctrl-S Save both setup and functions keys. Takes from 6 to 10 seconds.
-+# Ctrl-R Reads both setup and functions keys from NVM.
-+# Shift-Ctrl-X Unlock keyboard and cancel received X-OFF status
- #
--# S3 (internal switch) settings:
-+# ADM-12+ supports hardware handshaking, but it is DTR/CTS as opposed to
-+# RTS/CTS used nowadays with virtually every modem and computer. 19200
-+# bps works fine with hardware flow control.
- #
--# Position Up Dn Description
--# --------------------------------------------
--# 1 X Keyclick off
--# X Keyclick on
--# --------------------------------------------
--# 2 X English
--# 3 X
--# --------------------------------------------
--# 2 X German
--# 3 X
--# --------------------------------------------
--# 2 X French
--# 3 X
--# --------------------------------------------
--# 2 X Spanish
--# 3 X
--# --------------------------------------------
--# 4 X Blinking block cursor
--# 5 X
--# --------------------------------------------
--# 4 X Blinking underline cursor
--# 5 X
--# --------------------------------------------
--# 4 X Steady block cursor
--# 5 X
--# --------------------------------------------
--# 4 X Steady underline cursor
--# 5 X
--# --------------------------------------------
--# 6 X Screen blanking timer (ON)
--# X Screen blanking timer (OFF)
--# --------------------------------------------
--# 7 X Page attributes
--# X Line attributes
--# --------------------------------------------
--# 8 X DCD disconnected
--# X DCD connected
--# --------------------------------------------
--# 9 X DSR disconnected
--# X DSR connected
--# --------------------------------------------
--# 10 X DTR Disconnected
--# X DTR connected
--# --------------------------------------------
--#
--# (tvi925: BSD has <clear=\E*>. I got <is2> and <ri> from there -- esr)
--tvi925|televideo 925,
-- OTbs, am, bw, hs, ul,
-- cols#80, lines#24, xmc#1,
-- bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=^M, cub1=^H, cud1=^V,
-- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eh, ed=\EY, el=\ET,
-- flash=\Eb$<200>\Ed, fsl=^M\Eg, home=^^, ht=^I, hts=\E1,
-- ich1=\EQ, il1=\EE, ind=^J, invis@, is2=\El\E", kbs=^H, kclr=^Z,
-- kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER,
-- ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\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, ri=\Ej, tbc=\E3,
-- tsl=\Eh\Ef, use=adm+sgr,
--# TeleVideo 925 from Mitch Bradley <sun!wmb> via BRL
--# to avoid "magic cookie" standout glitch:
--tvi925-hi|TeleVideo Model 925 with half intensity standout mode,
-- xmc@,
-- kbs=^H, kcub1=^H, kcud1=^J, rmso=\E(, smso=\E), use=tvi925,
--
--# From: Todd Litwin <litwin@litwin.jpl.nasa.gov> 28 May 1993
--# Originally Tim Curry, Univ. of Central Fla., <duke!ucf-cs!tim> 5/21/82
--# for additional capabilities,
--# The following tvi descriptions from B:pjphar and virus!mike
--# is for all 950s. It sets the following attributes:
--# full duplex (\EDF) write protect off (\E()
--# conversation mode (\EC) graphics mode off (\E%)
--# white on black (\Ed) auto page flip off (\Ew)
--# turn off status line (\Eg) clear status line (\Ef\r)
--# normal video (\E0) monitor mode off (\EX or \Eu)
--# edit mode (\Er) load blank char to space (\Ee\040)
--# line edit mode (\EO) enable buffer control (^O)
--# protect mode off (\E\047) duplex edit keys (\El)
--# program unshifted send key to send line all (\E016)
--# program shifted send key to send line unprotected (\E004)
--# set the following to nulls:
--# field delimiter (\Ex0\200\200)
--# line delimiter (\Ex1\200\200)
--# start-protected field delimiter (\Ex2\200\200)
--# end-protected field delimiter (\Ex3\200\200)
--# set end of text delimiter to carriage return/null (\Ex4\r\200)
-+# The following null-modem cable should fix this and enable you to use
-+# RTS/CTS handshaking (which Linux supports, use CRTSCTS setting). Also
-+# set ADM-12+ for DTR handshaking from supervisor setup.
- #
--# TVI 950 Switch Setting Reference Charts
-+# PC Serial ADM-12+
-+# -------- -------
-+# 2 - 3
-+# 3 - 2
-+# 4 - 5
-+# 5 - 20
-+# 6,8 - 4
-+# 7 - 7
-+# 20 - 6,8
- #
--# TABLE 1:
-+adm12|lsi adm12,
-+ OTbs, OTpt, am, mir,
-+ OTug#1, cols#80, it#8, lines#24,
-+ bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\EY, el=\ET, home=^^, hts=\E1, ich1=\EQ, il1=\EE,
-+ is2=\E0 \E1 \E1 \E1 \E1 \E1 \E1 \E1 \E1,
-+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r,
-+ kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r,
-+ 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,
-+ OTbs, am,
-+ cols#80, it#8, lines#24,
-+ bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cuf1=^L,
-+ cup=\E=%i%p2%{31}%+%c%p1%{31}%+%c, cuu1=^K, dch1=\EW,
-+ 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,
-+ xmc#1,
-+ bel=^G, cr=^M, cud1=^J, dch1=\EW, dl1=\ER$<30*>, ed=\EY,
-+ el=\ET, ich1=\EQ, il1=\EE$<30*>, ind=^J, invis@, kbs=^H,
-+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^,
-+ use=adm+sgr, use=adm3a,
-+# (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,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\Ey, el=\Et, home=^^, ht=\Ei, ich1=\EQ, il1=\EE,
-+ is2=\E%\014\014\014\016\003\0\003\002\003\002\0\0\0\0\0\0\0\0\0\0\0,
-+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf1=^A@\r,
-+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r,
-+ kf7=^AF\r, khome=^^, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5,
-+ lf6=F6, lf7=F7, rmso=\E(, sgr0=\E(, smso=\E),
-+# ADM 31 DIP Switches
- #
--# S1 1 2 3 4 5 6 7 8 9 10
--# +-----------------------+-----+-----+-----------------------+
--# | Computer Baud Rate |Data |Stop | Printer Baud Rate |
--# | |Bits |Bits | |
--# +------+-----------------------+-----+-----+-----------------------+
--# | Up | See | 7 | 2 | See |
--# +------+-----------------------+-----+-----+-----------------------+
--# | Down | TABLE 2 | 8 | 1 | TABLE 2 |
--# +------+-----------------------+-----+-----+-----------------------+
-+# This information comes from two versions of the manual for the
-+# Lear-Siegler ADM 31.
- #
-+# Main board:
-+# rear of case
-+# +-||||-------------------------------------+
-+# + S1S2 ||S +
-+# + ||3 +
-+# + +
-+# + ||S +
-+# + ||4 +
-+# + +
-+# + +
-+# + +
-+# + +
-+# + +
-+# +-+ +-+
-+# + +
-+# + S5 S6 S7 +
-+# + == == == +
-+# +----------------------------------------------+
-+# front of case (keyboard)
- #
--# S2 1 2 3 4 5 6 7 8 9 10
--# +-----+-----+-----------------+-----+-----------+-----+-----+
--# |Edit |Cursr| Parity |Video|Transmiss'n| Hz |Click|
--# +------+-----+-----+-----------------+-----+-----------+-----+-----+
--# | Up | Dplx|Blink| See |GonBk| See | 60 | Off |
--# +------+-----+-----+-----------------+-----+-----------+-----+-----+
--# | Down |Local|St'dy| TABLE 3 |BkonG| CHART | 50 | On |
--# +------+-----+-----+-----------------+-----+-----------+-----+-----+
-+# S1 - Data Rate - Modem
-+# S2 - Data Rate - Printer
-+# ------------------------
-+# Data Rate Setting
-+# -------------------
-+# 50 0 0 0 0
-+# 75 1 0 0 0
-+# 110 0 1 0 0
-+# 134.5 1 1 0 0
-+# 150 0 0 1 0
-+# 300 1 0 1 0
-+# 600 0 1 1 0
-+# 1200 1 1 1 0
-+# 1800 0 0 0 1
-+# 2000 1 0 0 1
-+# 2400 0 1 0 1
-+# 3600 1 1 0 1
-+# 4800 0 0 1 1
-+# 7200 1 0 1 1
-+# 9600 0 1 1 1
-+# x 1 1 1 1
- #
--# TABLE 2:
-+# S3 - Interface/Printer/Attributes
-+# ---------------------------------
-+# Printer Busy Control
-+# sw1 sw2 sw3
-+# ---------------
-+# off off off Busy not active, CD disabled
-+# off off on Busy not active, CD enabled
-+# off on off Busy active on J5-20, CD disabled
-+# on off off Busy active on J5-19, CD disabled - Factory Set.
-+# on off on Busy active on J5-19, CD enabled
- #
--# +-----------+-----+-----+-----+-----+-----------+
--# | Display | 1 | 2 | 3 | 4 | Baud |
--# +-----------+-----+-----+-----+-----+ |
--# | Printer | 7 | 8 | 9 | 10 | Rate |
--# +-----------+-----+-----+-----+-----+-----------+
--# | D | D | D | D | 9600 |
--# | U | D | D | D | 50 |
--# | D | U | D | D | 75 |
--# | U | U | D | D | 110 |
--# | D | D | U | D | 135 |
--# | U | D | U | D | 150 |
--# | D | U | U | D | 300 |
--# | U | U | U | D | 600 |
--# | D | D | D | U | 1200 |
--# | U | D | D | U | 1800 |
--# | D | U | D | U | 2400 |
--# | U | U | D | U | 3600 |
--# | D | D | U | U | 4800 |
--# | U | D | U | U | 7200 |
--# | D | U | U | U | 9600 |
--# | U | U | U | U | 19200 |
--# +-----+-----+-----+-----+-----------+
-+# sw4 Used in conjuction with S4 for comm interface control - Fact 0
- #
--# TABLE 3:
--# +-----+-----+-----+-----------+
--# | 3 | 4 | 5 | Parity |
--# +-----+-----+-----+-----------+
--# | X | X | D | None |
--# | D | D | U | Odd |
--# | D | U | U | Even |
--# | U | D | U | Mark |
--# | U | U | U | Space |
--# +-----+-----+-----+-----------+
--# X = don't care
-+# sw5 Secondary Channel Control (Hardware implementation only) - Fact 0
- #
--# CHART:
--# +-----+-----+-----------------+
--# | 7 | 8 | Communication |
--# +-----+-----+-----------------+
--# | D | D | Half Duplex |
--# | D | U | Full Duplex |
--# | U | D | Block |
--# | U | U | Local |
--# +-----+-----+-----------------+
-+# sw6 ON enables printer BUSY active LOW - Factory Setting
-+# OFF enables printer BUSY active HIGH - If set to this, ADM31 senses
- #
--# (tvi950: early versions had obsolete ":ma=^Vj^Kk^Hh^Ll^^H:".
--# I also inserted <ich1> and <kich1>; the :ko: string indicated that <ich>
--# should be present and all tvi native modes use the same string for this.
--# Finally, note that BSD has cud1=^V. -- esr)
--tvi950|televideo 950,
-- OTbs, am, hs, mir, msgr, xenl, xon,
-- cols#80, it#8, lines#24, xmc#1,
-- acsc=b\011c\014d\re\ni\013, bel=^G, cbt=\EI, clear=\E*,
-- cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey, el=\Et, flash=\Eb$<200/>\Ed,
-- fsl=^M, home=^^, ht=^I, hts=\E1, ich1=\EQ, il1=\EE, ind=^J,
-- invis@,
-- is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\Ef\r,
-- kbs=^H, kcbt=\EI, kclr=\E*, kcub1=^H, kcud1=^V, kcuf1=^L,
-- kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A0\r,
-- kf1=^A@\r, kf2=^AA\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, mc4=\Ea, mc5=\E`, ri=\Ej, rmacs=^X,
-- rmir=\Er, smacs=^U, smir=\Eq, tbc=\E3, tsl=\Eg\Ef,
-- use=adm+sgr,
-+# sw7 ON - steady cursor - Factory Setting
-+# OFF - blinking cursor
- #
--# is for 950 with two pages adds the following:
--# set 48 line page (\E\\2)
--# place cursor at page 0, line 24, column 1 (\E-07 )
--# set local (no send) edit keys (\Ek)
-+# sw8 ON causes selected attribute character to be displayed
-+# OFF causes SPACE to be displayed instead - Factory Setting
- #
--# two page 950 adds the following:
--# when entering ex, set 24 line page (\E\\1)
--# when exiting ex, reset 48 line page (\E\\2)
--# place cursor at 0,24,1 (\E-07 )
--# set duplex (send) edit keys (\El) when entering vi
--# set local (no send) edit keys (\Ek) when exiting vi
-+# S4 - Interface
-+# --------------
-+# Modem Interface
-+# S3 S4 S4 S4 S4
-+# sw4 sw1 sw2 sw3 sw4
-+# ---------------------------
-+# OFF ON OFF ON OFF Enable RS-232C interface, Direct Connect and
-+# Current Loop disabled - Factory Setting
-+# ON ON OFF ON OFF Enable Current Loop interface, Direct Connect
-+# disabled
-+# OFF OFF ON OFF ON Enable Direct Connect interface, RS-232C and
-+# Current Loop Disabled
- #
--tvi950-2p|televideo950 w/2 pages,
-- is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \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 \011,
-- rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s,
-- smkx=\El, use=tvi950,
-+# sw5 ON disables dot stretching mode - Factory Setting
-+# OFF enables dot stretching mode
-+# sw6 ON enables blanking function
-+# OFF enables underline function - Factory Setting
-+# sw7 ON causes NULLS to be displayed as NULLS
-+# OFF causes NULLS to be displayed as SPACES - Factory Setting
- #
--# is for 950 with four pages adds the following:
--# set 96 line page (\E\\3)
--# place cursor at page 0, line 24, column 1 (\E-07 )
-+# S5 - Word Structure
-+# -------------------
-+# sw1 ON enables BREAK key - Factory Setting
-+# OFF disables BREAK key
-+# sw2 ON selects 50Hz monitor refresh rate
-+# OFF selects 60Hz monitor refresh rate - Factory Setting
- #
--# four page 950 adds the following:
--# when entering ex, set 24 line page (\E\\1)
--# when exiting ex, reset 96 line page (\E\\3)
--# place cursor at 0,24,1 (\E-07 )
-+# Modem Port Selection
-+# sw3 sw4 sw5
-+# ---------------
-+# ON ON ON Selects 7 DATA bits, even parity, 2 STOP bits
-+# OFF ON ON Selects 7 DATA bits, odd parity, 2 STOP bits
-+# ON OFF ON Selects 7 DATA bits, even parity, 1 STOP bit - Factory Set.
-+# OFF OFF ON Selects 7 DATA bits, odd parity, 1 STOP bit
-+# ON ON OFF Selects 8 DATA bits, no parity, 2 STOP bits
-+# OFF ON OFF Selects 8 DATA bits, no parity, 1 STOP bit
-+# ON OFF OFF Selects 8 DATA bits, even parity, 1 STOP bit
-+# OFF OFF OFF Selects 8 DATA bits, odd parity, 1 STOP bit
- #
--tvi950-4p|televideo950 w/4 pages,
-- is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \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 \011,
-- rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s,
-- smkx=\El, use=tvi950,
-+# sw6 ON sends bit 8 a 1 (mark)
-+# OFF sends bit 8 as 0 (space) - Factory Setting
-+# sw7 ON selects Block Mode
-+# OFF selects Conversation Mode - Factory Setting
-+# sw8 ON selects Full Duplex operation
-+# OFF selects Half Duplex operation - Factory Setting
- #
--# <is2> for reverse video 950 changes the following:
--# set reverse video (\Ed)
-+# S6 - Printer
-+# ------------
-+# sw1, sw2, sw6, sw7 Reserved - Factory 0
- #
--# set vb accordingly (\Ed ...delay... \Eb)
-+# Printer Port Selection
-+# same as Modem above, bit 8 (when 8 DATA bits) is always = 0
- #
--tvi950-rv|televideo950 rev video,
-- flash=\Ed$<200/>\Eb,
-- is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0,
-- use=tvi950,
--
--# tvi950-rv-2p uses the appropriate entries from 950-2p and 950-rv
--tvi950-rv-2p|televideo950 rev video w/2 pages,
-- flash=\Ed$<200/>\Eb,
-- is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \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,
-- rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s,
-- 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,
-- flash=\Ed$<200/>\Eb,
-- is2=\EDF\EC\Eb\EG0\Er\EO\E'\E(\E%\Ew\EX\Ee \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,
-- rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s,
-- smkx=\El, use=tvi950,
--# From: Andreas Stolcke <stolcke@icsi.berkeley.edu>
--# (tvi955: removed obsolete ":ma:=^Vj^Kk^Hh^Ll^^H";
--# removed incorrect (and overridden) ":do=^J:"; fixed broken continuations in
--# the :rs: string, inserted the <ich> implied by the termcap :ko: string. Note
--# the :ko: string had :cl: in it, which means that one of the original
--# <clear=\E*>, <kclr=\EY> had to be wrong; set <kclr=\E*> because that's what
--# the 950 has. Finally, corrected the <kel> string to match the 950 and what
--# ko implies -- esr)
--# If the BSD termcap file was right, <cup=\E=%p1%{32}%+%c%p2%{32}%+%c> would
--# also work.
--tvi955|televideo 955,
-- OTbs, mc5i, msgr@,
-- it#8, xmc@,
-- acsc=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ, blink=\EG2,
-- civis=\E.0, cnorm=\E.2, cud1=^V, cup=\E[%i%p1%d;%p2%dH,
-- cvvis=\E.1, dim=\E[=5h, ind@, invis=\EG1,
-- is2=\E[=3l\EF1\Ed\EG0\E[=5l\E%\El, kctab=\E2, khts=\E1,
-- knp=\EK, kpp=\EJ, krmir=\EQ, ktbc=\E3, mc0=\EP, rmacs=\E%%,
-- rmam=\E[=7l, rmxon=^N,
-- rs1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\0\E0p\E4\0\Ef\r,
-- sgr0=\EG0\E[=5l, smacs=\E$, smam=\E[=7h, smxon=^O,
-- use=tvi950,
--tvi955-w|955-w|televideo955 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,
-- 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
--# (tvi970: removed ":sg#0:"; removed <rmso>=\E[m, <rmul>=\E[m;
--# added <am>/<csr>/<home>/<hpa>/<vpa>/<smcup>/<rmcup> from BRL.
--# 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,
-- 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,
-- cub1=^H, cud1=\ED, cuf1=\E[C, cup=\E[%i%p1%d;%p2%df,
-- cuu1=\EM, cvvis=\E[1Q, dch1=\E[P, dl1=\E[M, dsl=\Eg\Ef\r,
-- ed=\E[J, el=\E[K, flash=\E[5m$<200/>\E[m, home=\E[H,
-- hpa=\E[%i%p1%dG, ht=^I, il1=\E[L,
-- is2=\E<\E[?21l\E[19h\E[1Q\E[10l\E[7l\E[H\E[2J,
-- kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kf1=\E?a, 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[H, ri=\EM, rmacs=\E(B,
-- rmam=\E[?7h, rmcup=, rmir=\E[4l, rmso=\E[m, rmul=\E[m,
-- 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,
-- 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,
-- 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
--# per line (rather than 40), Esc K chooses the normal character set. Not sure
--# padding is needed, but adapted from the tvi920c termcap. The <smso> and
--# <smul> strings are klutzy, but at least use no screen space.
--# (tvipt: removed obsolete ":ma=^Kk^Ll^R^L:". I wish we knew <rmam>,
--# its absence means <smam>=\Ev isn't safe to use. -- esr)
--# 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,
-- OTbs, am,
-- cols#80, lines#24,
-- cbt=\EI, clear=^Z, cub1=^H, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER$<5*>,
-- ed=\EY, el=\ET, home=^^, if=/usr/share/tabset/stdcrt,
-- il1=\EE$<5*>, is2=\Ev\Eu\EK, kbs=^H, kcub1=^H, kcud1=^J,
-- 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,
-- 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,
-- acsc='r0_jhkglfmeniopqksqtmulvownxj, bel=^G,
-- blink=\EG2, bold=\EG\,, cbt=\EI, civis=\E.0, clear=^Z,
-- cnorm=\E.3, cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD,
-- cub1=^H, cud=\E[%p1%dB, cud1=^V, cuf=\E[%p1%dC, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu=\E[%p1%dA,
-- cuu1=^K, cvvis=\E.2, dch=\E[%p1%dP, dch1=\EW, dim=\EGp,
-- dl=\E[%p1%dM, dl1=\ER, dsl=\E_30\r, ech=\E[%p1%d@, ed=\EY,
-- el=\ET, flash=\Eb$<15>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1,
-- ich=\E[%p1%d@, if=/usr/share/tabset/stdcrt,
-- il=\E[%p1%dL, il1=\EE, ind=^J, indn=\E[%p1%dS, invis=\EG1,
-- ip=$<3>,
-- is1=\E"\E%\E'\E(\EG@\EO\EX\E[=5l\E[=6l\E[=7h\Ed\Er,
-- is2=\EF2\EG0\E\\L, is3=\E<\E[=4l\E[=8h, kHOM=\E\s\s\s,
-- kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K,
-- kdch1=\EW, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r,
-- kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r,
-- kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, ll=\E[25;1H,
-- mc0=\E[0;0i, mc4=\Ea, mc5=\E`, nel=^M^J,
-- pfkey=\E|%p1%{48}%+%c3%p2%s\031,
-- pfloc=\E|%p1%{48}%+%c2%p2%s\031,
-- pfx=\E|%p1%{48}%+%c1%p2%s\031,
-- pln=\E_%p1%{63}%+%c%p2%s\r, prot=\E&,
-- rep=\E[%p2%db%p1%c, rev=\EG4,
-- rf=/usr/share/tabset/stdcrt, ri=\Ej, rin=\E[%p1%dT,
-- rmacs=\E%%, rmam=\E[=7l, rmcup=\E.3\Er\E[1;25r\E[25;0H,
-- rmdc=\0, rmir=\Er, rmln=\E[4;1v, rmso=\EG0, rmul=\EG0,
-- rmxon=^N, rs1=\EC\EDF\E[0;0v\E[8;1v\E[=65l,
-- rs2=\E.b\E[10;20v\E[14;1v\E[3;0v\E[7;0v\E[=11.h\E[=12.h\E[=13.h\E[=14.h\E[=15l\E[=20h\E[=60l\E[=61h\E[=9l\E[=10l\E[=21l\E[=23l\E[=3l\E_40\E_50\En\Ew\Ee \Ex0\0\0\Ex1\0\0\Ex2\0\0\Ex3\0\0\Ex4\0\0\E1,
-- rs3=\E[=19h\E.3\E9\E0O\0\0\0\0\0\E0o\0\0\0\0\0\E0J\177\0\0\0\0,
-- sgr=\EG0%?%p1%t\EGt%;%?%p2%t\EG8%;%?%p3%t\EG4%;%?%p4%t\EG2%;%?%p5%t\EGp%;%?%p6%t\EG\,%;%?%p7%t\EG1%;%?%p9%t\E$%e\E%%%;,
-- sgr0=\EG0, smacs=\E$, smam=\E=7h, smcup=\E.2, smdc=\Er,
-- smir=\Eq, smln=\E[4;2v, smso=\EGt, smul=\EG8, smxon=^O,
-- tbc=\E3, tsl=\E[4;1v\E_30, uc=\EG8\EG0,
--
--#### Visual (vi)
-+# sw8 ON enables Printer Port
-+# OFF disables Printer Port - Factory Setting
- #
--# In September 1993, Visual Technology of Westboro, Massachusetts,
--# merged with White Pine Software of Nashua, New Hampshire.
-+# S7 - Polling Address
-+# --------------------
-+# sw1-7 Establish ASCII character which designates terminal polling address
-+# ON = logic 0
-+# OFF = logic 1 - Factory Setting
-+# sw8 ON enables Polling Option
-+# OFF disables Polling Option - Factory Setting
- #
--# White Pine Software may be contacted at +1 603/886-9050.
--# Or visit White Pine on the World Wide Web at URL http://www.wpine.com.
- #
--
--# Visual 50 from Beau Shekita, BTL-Whippany <whuxlb!ejs>
--# Recently I hacked together the following termcap for Visual
--# Technology's Visual 50 terminal. It's a slight modification of
--# the vt52 termcap.
--# It's intended to run when the Visual 50 is in vt52 emulation mode
--# (I know what you're thinking; if it's emulating a vt52, then why
--# another termcap? Well, it turns out that the Visual 50 can handle
--# <dl1> and db(?) among other things, which the vt52 can't)
--# The termcap works OK for the most part. The only problem is on
--# character inserts. The whole line gets painfully redrawn for each
--# character typed. Any suggestions?
--# 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,
-- OTbs, OTpt, am, da, db, msgr,
-- cols#80, it#8, lines#24,
-- OTnl=^J, bel=^G, cbt=\Ez$<4/>, clear=\EH\EJ, cr=^M, cub1=^H,
-- cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=\EA, dl1=\EM$<3*/>, ed=\EJ, el=\EK$<16/>, home=\EH,
-- ht=^I, il1=\EL, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB,
-- kcuf1=\EC, kcuu1=\EA, kf1=\EP, kf2=\EQ, kf3=\ER, kf4=\EV,
-- kf5=\EE, kf6=\E], kf7=\EL, kf8=\Ev, kf9=\EM, khome=\EH,
-- nel=^M^J, ri=\EI, rmso=\ET, rmul=\EW, smso=\EU, smul=\ES,
--# this one was BSD & SCO's vi50
--vi50adm|visual 50 in adm3a mode,
-- am, msgr,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\EM,
-- ed=\Ek, el=\EK, home=\EH, ht=^I, il1=\EL, ind=^J, kbs=^H,
-- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\EH,
-- rmso=\ET, smso=\EU,
--# From: Jeff Siegal <jbs@quiotix.com>
--vi55|Visual 55,
-- OTbs, am, mir, msgr,
-- cols#80, it#8, lines#24,
-- clear=\Ev, csr=\E_%p1%{65}%+%c%p2%{65}%+%c, cub1=^H,
-- cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=\EA, dch1=\Ew, dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I,
-- il1=\EL, is2=\Ev\E_AX\Eb\EW\E9P\ET, kbs=^H, kcub1=\ED,
-- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EI, rmir=\Eb, rmso=\ET,
-- smir=\Ea, smso=\EU,
--
--# Visual 200 from BRL
--# The following switch settings are assumed for normal operation:
--# FULL_DUPLEX SCROLL CR
--# AUTO_NEW_LINE_ON VISUAL_200_EMULATION_MODE
--# Other switches may be set for operator convenience or communication
--# requirements.
--# Character insertion is kludged in order to get around the "beep" misfeature.
--# (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,
-- OTbs, OTpt, am, mir, msgr,
-- OTkn#10, cols#80, it#8, lines#24,
-- acsc=, bel=^G, cbt=\Ez, clear=\Ev, cnorm=\Ec, cr=^M, cub1=^H,
-- cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=\EA, cvvis=\Ed, dch1=\EO, dim=\E4, dl1=\EM, ed=\Ey,
-- el=\Ex, home=\EH, ht=^I, hts=\E1, il1=\EL, ind=^J, invis=\Ea,
-- kbs=^H, kclr=\Ev, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-- kcuu1=\EA, kdch1=\EO, kdl1=\EM, ked=\EJ, kel=\Et, 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, khome=\EH, khts=\E1, kich1=\Ei,
-- kil1=\EL, krmir=\Ej, mc0=\EH\E], mc4=\EX, mc5=\EW, ri=\EI,
-- rmacs=\EG, rmkx=\E>, rmso=\E3,
-- rs1=\E3\Eb\Ej\E\El\EG\Ec\Ek\EX, sgr0=\E3\Eb, smacs=\EF,
-- smkx=\E=, smso=\E4, tbc=\Eg,
--# The older Visuals didn't come with function keys. This entry uses
--# <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,
-- 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,
-- cnorm@, cvvis@, ri@, rmso=\E3, smso=\E4, use=vi200,
--
--# the function keys are programmable but we don't reprogram them to their
--# default values with <is2> because programming them is very verbose. maybe
--# 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,
-- am, bw, mir, xenl,
-+# On some older adm31s, S4 does not exist, and S5-sw6 is not defined.
-+#
-+# This adm31 entry uses underline as the standout mode.
-+# If the adm31 gives you trouble with standout mode, check the DIP switch in
-+# 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,
-+ OTbs, am, mir,
- cols#80, lines#24,
-- bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B,
-- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-- dch1=\E[P$<40>, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-- il1=\E[L, ind=^J,
-- is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[1Q\E[0;1(D\E[8s,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kf1=\E_A\E\\, kf2=\E_B\E\\, kf3=\E_C\E\\, kf4=\E_D\E\\,
-- kf5=\E_E\E\\, kf6=\E_F\E\\, kf7=\E_G\E\\, kf8=\E_H\E\\,
-- kf9=\E_I\E\\, khome=\E[H, ri=\EM, rmam=\E[?7l, rmir=\E[4l,
-- rmso=\E[m, rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h,
-- 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),
-- 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.
--# The best place to look for the escape sequences is page A1-1 of the
--# Visual 500 manual. The initialization sequence given here may be
--# overkill, but it does leave out some of the initializations which can
--# be done with the menus in set-up mode.
--# The :xp: line below is so that emacs can understand the padding requirements
--# 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,
-- am, mir, msgr,
-- cols#80, it#8, lines#33,
-- acsc=, cbt=\Ez$<4/>, clear=\Ev$<6*/>, cr=^M,
-- csr=\E(%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=\EB,
-- cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA,
-- dch1=\EO$<3*/>, dl1=\EM$<3*/>, ed=\Ey$<3*/>,
-- el=\Ex$<16/>, home=\EH, ht=\011$<8/>, il1=\EL\Ex$<3*/>,
-- ind=^J,
-- is2=\E3\E\001\E\007\E\003\Ek\EG\Ed\EX\El\E>\Eb\E\\,
-- kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-- khome=\EH, nel=^M^J, 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,
--# and with 33 lines. clear screen is modified here to
--# also clear the graphics.
--vi550|visual 550 ansi x3.64,
-- lines#33,
-- clear=\030\E[H\E[2J, use=vi300,
--
--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,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
-- dsl=\EP2;1~\E\\, ed=\E[J, el=\E[K, fsl=\E\\, il1=\E[L,
-- ind=\ED, is1=\E>\E[?3l\E[?4l\E[?7h\E[?8h\E[1;24r,
-- rev=\E[7m, ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m,
-- sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, tsl=\EP2~,
-+ bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\EY, el=\ET, home=^^, il1=\EE, ind=^J, is2=\Eu\E0,
-+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r,
-+ kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r,
-+ kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, rmir=\Er, rmso=\EG0,
-+ rmul=\EG0, sgr0=\EG0, smir=\Eq, smso=\EG1, smul=\EG1,
-+adm31-old|o31|old adm31,
-+ rmul@, smso=\EG4, smul@, use=adm31,
-+# LSI ADM-36 from Col. George L. Sicherman <gloria!colonel> via BRL
-+adm36|LSI ADM36,
-+ OTbs, OTpt,
-+ OTkn#4,
-+ 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,
-+# (adm42: removed obsolete ":ma=^K^P:" -- esr)
-+adm42|lsi adm42,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, cbt=\EI, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET, ht=^I,
-+ il1=\EE$<270>, ind=^J, invis@, ip=$<6*>, kcub1=^H, kcud1=^J,
-+ kcuf1=^L, kcuu1=^K, khome=^^, pad=\177, rmir=\Er, rmul@,
-+ smir=\Eq, smul@, use=adm+sgr,
-+# 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,
-+ 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,
-+ el=\ET\EF \011, il1=\EE\EF \011, rmir=\Er\EF \011,
-+ smir=\Eq\EF \011, use=adm42,
-+# ADM 1178 terminal -- rather like an ADM-42. Manual is dated March 1 1985.
-+# The insert mode of this terminal is commented out because it's broken for our
-+# 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,
-+ am,
-+ cols#80, lines#24, xmc#1,
-+ bel=^G, bold=\E(, cbt=\EI, clear=\E+, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ cvvis=\EC\E3 \E3(, dch1=\EW, dl1=\ER, ed=\EY, el=\ET,
-+ home=^^, ht=^I, il1=\EE, ind=^J, ip=$<6*/>, kbs=^H, kcub1=^H,
-+ kcud1=^J, nel=^M^J, pad=\177, rev=\EG4, rmso=\EG0, rmul=\EG0,
-+ sgr0=\E), smso=\EG4, smul=\EG1,
-
--#### Wyse (wy)
-+#### Prime
- #
--# Wyse Technology
--# 3471 North First Street
--# San Jose, CA 95134
--# Vox: (408)-473-1200
--# Fax: (408) 473-1222
--# Web: http://www.wyse.com
-+# Yes, Prime made terminals. These entries were posted by Kevin J. Cummings
-+# <cummings@primerd.prime.com> on 14 Dec 1992 and lightly edited by esr.
-+# Prime merged with ComputerVision in the late 1980s; you can reach them at:
- #
--# Wyse sales can be reached by phone at 1-800-GET-WYSE. Tech support is at
--# (800)-800-WYSE (option 5 gets you a human). There's a Web page at the
--# obvious address, <http://www.wyse.com>. They keep terminfo entries at
--# <http://www.wyse.co.uk/support/appnotes/idxappnt.htm>.
-+# ComputerVision Services
-+# 500 Old Connecticut Path
-+# Framingham, Mass.
- #
--# Wyse bought out Link Technology, Inc. in 1990 and closed it down in 1995.
--# They now own the Qume and Amdek brands, too. So these are the people to
--# talk with about all Link, Qume, and Amdek terminals.
-+
-+# Standout mode is dim reverse-video.
-+pt100|pt200|wren|fenix|prime pt100/pt200,
-+ am, bw, mir, msgr,
-+ cols#80, it#8, lines#24,
-+ cbt=\E[Z, clear=\E?, cr=^M, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=\ED, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E0%p1%{33}%+%c%p2%{33}%+%c, cuu=\E[%p1%dA,
-+ cuu1=\EM, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl1=\E[M,
-+ ed=\E[J\E[r, el=\E[K\E[t, flash=\E$$<200/>\E$P,
-+ home=\E$B, ht=^I, il1=\E[L\E[t, ind=^J, kbs=^H, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E$A, nel=^M^J,
-+ rmcup=, rmir=\E[4l, rmkx=\E[>13l, rmso=\E[m, rmul=\E[m,
-+ sgr0=\E[m,
-+ smcup=\E[>1l\E[>2l\E[>16l\E[4l\E[>9l\E[20l\E[>3l\E[>7h\E[>12l\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,
-+ cols#132,
-+ cup=\E[%i%p1%d;%p2%dH, use=pt100,
-+pt250|Prime PT250,
-+ rmso@, smso@, use=pt100,
-+pt250w|Prime PT250 in 132-column mode,
-+ rmso@, smso@, use=pt100w,
-+
-+#### Qume (qvt)
- #
--# These entries include a few small fixes.
--# I canceled the bel capacities in the vb entries.
--# I made two trivial syntax fixes in the wyse30 entry.
--# I made some entries relative to adm+sgr.
-+# Qume, Inc.
-+# 3475-A North 1st Street
-+# San Jose CA 95134
-+# Vox: (800)-457-4447
-+# Fax: (408)-473-1510
-+# Net: josed@techsupp.wyse.com (Jose D'Oliveira)
- #
-+# Qume was bought by Wyse, but still (as of early 1995) has its own support
-+# group and production division.
- #
--# Note: The wyse75, wyse85, and wyse99 have been discontinued.
--
--# Although the Wyse 30 can support more than one attribute
--# it requires magic cookies to do so. Many applications do not
--# function well with magic cookies. The following terminfo uses
--# the protect mode to support one attribute (dim) without cookies.
--# If more than one attribute is needed then the wy30-mc terminfo
--# should be used.
-+# Discontinued Qume models:
- #
--wy30|wyse30|Wyse 30,
-- am, bw, hs, mc5i, mir, msgr, xon,
-- cols#80, lh#1, lines#24, lw#8, ma#1, nlab#8, wsl#45,
-- acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI,
-- civis=\E`0, clear=\E+$<80>, cnorm=\E`1, cr=^M, cub1=^H,
-- cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=^K, dch1=\EW$<10>, dim=\E`7\E), dl1=\ER$<1>,
-- dsl=\EF\r, ed=\EY$<80>, el=\ET, flash=\E`8$<100/>\E`9,
-- fsl=^M, home=^^, ht=\011$<1>, hts=\E1, il1=\EE$<2>,
-- ind=\n$<2>, ip=$<2>, is2=\E'\E(\E\^3\E`9\016\024,
-- kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L,
-- kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kent=\E7,
-- kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r,
-- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=^^, kich1=\EQ,
-- kil1=\EE, knp=\EK, kpp=\EJ, krpl=\Er, ll=^^^K, mc0=\EP, mc4=^T,
-- mc5=^X, nel=^M^J, pfx=\Ez%p1%{63}%+%c%p2%s\177,
-- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), ri=\Ej$<3>,
-- rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(,
-- sgr=%?%p1%p5%p8%|%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;,
-- sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10,
-- smso=\E`7\E), tbc=\E0, tsl=\EF,
-+# The qvt101 and qvt102 listed here are long obsolete; so is the qvt101+
-+# built to replace them, and a qvt119+ which was a 101+ with available wide
-+# mode (132 columns). There was a qvt103 which added vt100/vt131 emulations
-+# and an ANSI-compatible qvt203 that replaced it. Qume started producing
-+# ANSI-compatible terminals with the qvt323 and qvt61.
- #
--# This terminal description uses the non-hidden attribute mode
--# (with magic cookie).
-+# Current Qume models (as of February 1995):
- #
--# (wy30-mc: added <smcup> to suppress tic warning --esr)
--wy30-mc|wyse30-mc|wyse 30 with magic cookies,
-- msgr@,
-- ma@, xmc#1,
-- blink=\EG2, dim=\EGp, prot=\EG0\E), rmacs=\EG0\EH\003,
-- rmcup=\EG0, rmso=\EG0,
-- sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;,
-- sgr0=\EG0\E(\EH\003, smacs=\EG0\EH\002, smcup=,
-- smso=\EG4, use=wy30, use=adm+sgr,
--# The mandatory pause used by <flash> does not work with
--# 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,
-- bel@, use=wy30,
-+# All current Qume terminals have ANSI-compatible operation modes.
-+# Qume is still producing the qvt62, which features emulations for other
-+# popular lines such as ADDS, and dual-host capabilities. The qvt82 is
-+# designed for use as a SCO ANSI terminal. The qvt70 is a color terminal
-+# with many emulations including Wyse370, Wyse 325, etc. Their newest
-+# model is the qvt520, which is vt420-compatible.
- #
--# The Wyse 50 can support one attribute (e.g. Dim, Inverse,
--# Normal) without magic cookies by using the protect mode.
--# The following description uses this feature, but when more
--# than one attribute is put on the screen at once, all attributes
--# will be changed to be the same as the last attribute given.
--# The Wyse 50 can support more attributes when used with magic
--# cookies. The wy50-mc terminal description uses magic cookies
--# to correctly handle multiple attributes on a screen.
-+# There are some ancient printing Qume terminals under `Daisy Wheel Printers'
- #
--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=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI,
-- civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, cub1=^H,
-+# 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,
-+ xmc#1, use=qvt101+,
-+
-+# This used to have <cvvis=\E.2> but no <cnorm> or <civis>. The BSD termcap
-+# file had <cvvis=\EM4 \200\200\200>. I've done the safe thing and yanked
-+# both. The <rev> is from BSD, which also claimed bold=\E( and dim=\E).
-+# What seems to be going on here is that this entry was designed so that
-+# the normal highlight is bold and standout is dim plus something else
-+# (reverse-video maybe? But then, are there two <rev> sequences?)
-+#
-+# 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,
-+ am, bw, hs, ul,
-+ cols#80, lines#24, xmc#0,
-+ bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\EY, el=\ET,
-+ flash=\Eb$<200>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1,
-+ ich1=\EQ, il1=\EE, ind=^J, invis@, kbs=^H, kcbt=\EI, kcub1=^H,
-+ kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY,
-+ kel=\ET, kf1=^A@\r, kf10=^AI\r, kf2=^AA\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, mc4=\EA, mc5=\E@,
-+ rmso=\E(, smso=\E0P\E), tbc=\E3, tsl=\Eg\Ef, use=adm+sgr,
-+qvt102|qume qvt 102,
-+ cnorm=\E., use=qvt101,
-+# (qvt103: added <rmam>/<smam> based on init string -- esr)
-+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>,
-+ clear=\E[H\E[2J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-+ cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, home=\E[H, ht=^I,
-+ hts=\EH, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-+ kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rc=\E8,
-+ rev=\E[7m$<2>, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E[?1l\E>,
-+ rmso=\E[m$<2>, rmul=\E[m$<2>,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;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,
-+ 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,
-+ am, hs, mir, msgr,
-+ cols#80, lines#24, xmc#0,
-+ bel=^G, cbt=\EI, clear=\E*1, cnorm=\E.4, cr=^M, cub1=^H,
- cud1=^J, 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=^M,
-- 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,
-- kcbt=\EI, kcub1=^H, kcud1=^J, 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,
-- kf16=^AO\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r,
-+ cuu1=^K, cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey,
-+ el=\Et, flash=\En0$<200>\En1, fsl=^M, home=^^, ht=^I,
-+ hts=\E1, il1=\EE, ind=^J, is2=\EDF\EC\EG0\Er\E(\E%EX,
-+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r,
-+ kf1=^A@\r, kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er,
-- ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J,
-- pfx=\Ez%p1%{63}%+%c%p2%s\177,
-- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), rev=\E`6\E),
-- ri=\Ej, rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(,
-- sgr=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;,
-- sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10,
-- smso=\E`6\E), tbc=\E0, tsl=\EF,
-+ mc4=\EA, mc5=\E@, ri=\EJ, rmir=\Er, smir=\Eq, smul=\EG8,
-+ tbc=\E3, tsl=\Eg\Ef, use=adm+sgr,
-+qvt119+-25|qvt119p-25|QVT 119 PLUS with 25 data lines,
-+ lines#25, use=qvt119+,
-+qvt119+-w|qvt119p-w|qvt119-w|QVT 119 and 119 PLUS in 132 column mode,
-+ cols#132,
-+ 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,
-+ 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),
-+ cols#132, lines#24,
-+ rs2=\E>\E[?3h\E[?4l\E[?5l\E[?8h, use=qvt203,
- #
--# This terminal description uses the non-hidden attribute mode
--# (with magic cookie).
-+# Since a command is present for enabling 25 data lines,
-+# a specific terminfo entry may be generated for the 203.
-+# If one is desired for the QVT 119 PLUS then 25 lines must
-+# be selected in the status line (setup line 9).
- #
--# The mandatory pause used by flash does not work with some
--# older versions of terminfo. If you see this effect then
--# 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,
-- msgr@,
-- ma@, xmc#1,
-- blink=\EG2, dim=\EGp, prot=\EG0\E), rev=\EG4,
-- rmacs=\EG0\EH\003, rmcup=\EG0, rmso=\EG0,
-- sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%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,
-- bel@, use=wy50,
--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,
-- bel@, use=wy50-w,
-+qvt203-25|QVT 203 PLUS with 25 by 80 column mode,
-+ cols#80, lines#25,
-+ is2=\E[=40h\E[?3l, use=qvt203,
-+qvt203-25-w|QVT 203 PLUS with 25 by 132 columns,
-+ cols#132, lines#25,
-+ rs2=\E[?3h\E[=40h, use=qvt203,
-
-+#### Televideo (tvi)
- #
--# The Wyse 350 is a Wyse 50 with color.
--# Unfortunately this means that it has magic cookies.
--# The color attributes are designed to overlap the reverse, dim and
--# underline attributes. This is nice for monochrome applications
--# because you can make underline stuff green (or any other color)
--# but for true color applications it's not so hot because you cannot
--# mix color with reverse, dim or underline.
--# To further complicate things one of the attributes must be
--# black (either the foreground or the background). In reverse video
--# the background changes color with black letters. In normal video
--# the foreground changes colors on a black background.
--# This terminfo uses some of the more advanced features of curses
--# to display both color and blink. In the final analysis I am not
--# sure that the wy350 runs better with this terminfo than it does
--# with the wy50 terminfo (with user adjusted colors).
-+# TeleVideo
-+# 550 East Brokaw Road
-+# PO Box 49048 95161
-+# San Jose CA 95112
-+# Vox: (408)-954-8333
-+# Fax: (408)-954-0623
- #
--# The mandatory pause used by flash does not work with
--# older versions of terminfo. If you see this effect then
--# unset xon and delete the / from the delay.
--# i.e. change $<100/> to $<100>
- #
--# Bug: The <op> capability resets attributes.
--wy350|wyse350|Wyse 350,
-- am, bw, hs, mc5i, mir, xon,
-- colors#8, cols#80, lh#1, lines#24, lw#8, ncv#55, nlab#8, pairs#8,
-- wsl#45, xmc#1,
-- acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2,
-- cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M,
-- cub1=^H, cud1=^J, cuf1=^L,
-- 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=^M, home=^^, ht=^I, hts=\E1,
-- 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=^J, 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,
-- kf16=^AO\r, kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er,
-- ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J, oc=\E%?, op=\EG0,
-- pfx=\Ez%p1%{63}%+%c%p2%s\177,
-- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\EG0\E), ri=\Ej,
-- rmacs=\EG0\EH\003, rmir=\Er, rmln=\EA11, setb=,
-- setf=%?%p1%{0}%=%t%{76}%e%p1%{1}%=%t%{64}%e%p1%{2}%=%t%{8}%e%p1%{3}%=%t%{72}%e%p1%{4}%=%t%{4}%e%p1%{5}%=%t%{68}%e%p1%{6}%=%t%{12}%e%p1%{7}%=%t%{0}%;%PC\EG%gC%gA%+%{48}%+%c,
-- sgr=%{0}%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;%PA\EG%?%gC%t%gC%e%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p5%t%{64}%|%;%;%gA%+%{48}%+%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\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,
-- bel@, use=wy350,
--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,
-- bel@, use=wy350-w,
-+# These require incredible amounts of padding.
- #
--# This terminfo description is untested.
--# The wyse100 emulates an adm31, so the adm31 entry should work.
-+# All of these terminals (912 to 970 and the tvipt) are discontinued. Newer
-+# Televideo terminals are ANSI and PC-ANSI compatible.
-+
-+tvi803|televideo 803,
-+ clear=\E*$<10>, use=tvi950,
-+
-+# Vanilla tvi910 -- W. Gish <cswarren@violet> 10/29/86
-+# Switch settings are:
- #
--wy100|wyse 100,
-- hs, mir,
-- cols#80, lines#24, xmc#1,
-- bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, dsl=\EA31, ed=\EY, el=\ET, fsl=^M, il1=\EE, ind=^J,
-- invis@, is2=\Eu\E0, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L,
-- kcuu1=^K, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r,
-- kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=\E{,
-- rmir=\Er, smir=\Eq, tsl=\EF, use=adm+sgr,
-+# S1 1 2 3 4
-+# D D D D 9600
-+# D D D U 50
-+# D D U D 75
-+# D D U U 110
-+# D U D D 135
-+# D U D U 150
-+# D U U D 300
-+# D U U U 600
-+# U D D D 1200
-+# U D D U 1800
-+# U D U D 2400
-+# U D U U 3600
-+# U U D D 4800
-+# U U D U 7200
-+# U U U D 9600
-+# U U U U 19200
- #
--# The Wyse 120/150 has most of the features of the Wyse 60.
--# This terminal does not need padding up to 9600 baud!
--# <msgr> should be set but the clear screen fails when in
--# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear
--# then set <msgr>.
--#
--wy120|wyse120|wy150|wyse150|Wyse 120/150,
-- am, bw, hs, km, mc5i, mir, msgr, xon,
-- cols#80, it#8, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45,
-- acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~,
-- bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>,
-- cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>,
-- dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>,
-- flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=\011$<1>,
-- hts=\E1, il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1,
-- is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El,
-- is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H,
-- kcud1=^J, 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, kf16=^AO\r,
-- kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K,
-- mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>,
-- pfloc=\EZ2%p1%{63}%+%c%p2%s\177,
-- 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>,
-- 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%{64}%|%;%?%p7%t%{1}%|%;%c,
-- sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/,
-- smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21,
-- tbc=\E0, tsl=\EF, use=adm+sgr,
-+# S1 5 6 7 8
-+# U D X D 7N1 (data bits, parity, stop bits) (X means ignored)
-+# U D X U 7N2
-+# U U D D 7O1
-+# U U D U 7O2
-+# U U U D 7E1
-+# U U U U 7E2
-+# D D X D 8N1
-+# D D X U 8N2
-+# D U D D 8O1
-+# D U U U 8E2
- #
--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,
-+# S1 9 Autowrap
-+# U on
-+# D off
- #
--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,
-+# S1 10 CR/LF
-+# U do CR/LF when CR received
-+# D do CR when CR received
- #
--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,
-+# S2 1 Mode
-+# U block
-+# D conversational
- #
--wy120-vb|wyse120-vb|wy150-vb|wyse150-vb|Wyse 120/150 visible bell,
-- bel@, use=wy120,
-+# S2 2 Duplex
-+# U half
-+# D full
- #
--wy120-w-vb|wy120-wvb|wyse120-wvb|wy150-w-vb|wyse150-w-vb|Wyse 120/150 132-column visible bell,
-- bel@, use=wy120-w,
-+# S2 3 Hertz
-+# U 50
-+# D 60
- #
--# The Wyse 60 is like the Wyse 50 but with more padding.
--# The reset strings are slow and the pad times very depending
--# on other parameters such as font loading. I have tried
--# to follow the following outline:
-+# S2 4 Edit mode
-+# U local
-+# D duplex
- #
--# <rs1> -> set personality
--# <rs2> -> set number of columns
--# <rs3> -> set number of lines
--# <is1> -> select the proper font
--# <is2> -> do the initialization
--# <is3> -> set up display memory (2 pages)
-+# S2 5 Cursor type
-+# U underline
-+# D block
- #
--# The Wyse 60's that have vt100 emulation are slower than the
--# older Wyse 60's. This change happened mid-1987.
--# The capabilities effected are <dch1> <dl1> <il1> <ind> <ri>
-+# S2 6 Cursor down key
-+# U send ^J
-+# D send ^V
- #
--# The meta key is only half right. This terminal will return the
--# high order bit set when you hit CTRL-function_key
-+# S2 7 Screen colour
-+# U green on black
-+# D black on green
- #
--# It may be useful to assign two function keys with the
--# values \E=(\s look at old data in page 1
--# \E=W, look at bottom of page 1
--# where \s is a space ( ).
-+# S2 8 DSR status (pin 6)
-+# U disconnected
-+# D connected
- #
--# Note:
--# The Wyse 60 runs faster when the XON/XOFF
--# handshake is turned off.
-+# S2 9 DCD status (pin 8)
-+# U disconnected
-+# D duplex
- #
--# (wy60: we use \E{ rather than ^^ for home (both are documented) to avoid
--# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr)
--wy60|wyse60|Wyse 60,
-- am, bw, hs, km, mc5i, mir, msgr,
-- cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#45,
-- acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~,
-- bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<100>,
-- cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- dch1=\EW$<11>, dclk=\E`b, dim=\EGp, dl1=\ER$<5>, dsl=\EF\r,
-- ed=\EY$<100>, el=\ET, flash=\E`8$<100/>\E`9, fsl=^M,
-- home=\E{, ht=\011$<1>, hts=\E1, il1=\EE$<4>, ind=\n$<5>,
-- ip=$<3>, is1=\EcB0\EcC1,
-- is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El,
-- is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H,
-- kcud1=^J, 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, kf16=^AO\r,
-+# S2 10 DTR status (pin 20)
-+# U disconnected
-+# 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,
-+ OTbs, am, msgr,
-+ cols#80, it#8, lines#24, xmc#1,
-+ bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET,
-+ home=\E=\001\001, hpa=\E]%p1%{32}%+%c, ht=^I,
-+ if=/usr/share/tabset/stdcrt, ind=^J, invis@, kbs=^H,
-+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kf0=^AI\r, kf1=^A@\r,
- kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K,
-- mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>,
-- pfloc=\EZ2%p1%{63}%+%c%p2%s\177,
-- pfx=\EZ1%p1%{63}%+%c%p2%s\177,
-- pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<7>,
-- rmacs=\EcD, rmam=\Ed., rmclk=\E`c, rmcup=\Ew1, rmir=\Er,
-- rmln=\EA11, rmxon=\Ec20, rs1=\E~!\E~4$<150>,
-- rs2=\EeG$<150>, rs3=\EwG\Ee($<200>,
-- 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,
-- sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/,
-- smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21,
-- tbc=\E0, tsl=\EF, use=adm+sgr,
-+ kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^,
-+ vpa=\E[%p1%{32}%+%c, use=adm+sgr,
-+# From: Alan R. Rogers <rogers%albany@csnet-relay>
-+# as subsequently hacked over by someone at SCO
-+# (tvi910+: removed obsolete ":ma=^K^P^L :" -- esr)
- #
--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,
-+# Here are the 910+'s DIP switches (U = up, D = down, X = don't care):
- #
--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,
-- lh@, lines#25, lw@, nlab@,
-- pln@, rs3=\EwG\Ee)$<200>, use=wy60-w,
-+# S1 1 2 3 4:
-+# D D D D 9600 D D D U 50 D D U D 75 D D U U 110
-+# D U D D 135 D U D U 150 D U U D 300 D U U U 600
-+# U D D D 1200 U D D U 1800 U D U D 2400 U D U U 3600
-+# U U D D 4800 U U D U 7200 U U U D 9600 U U U U 19200
- #
--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,
-- 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,
-+# S1 5 6 7 8:
-+# U D X D 7N1 U D X U 7N2 U U D D 7O1 U U D U 7O2
-+# U U U D 7E1 U U U U 7E2 D D X D 8N1 D D X U 8N2
-+# D U D D 8O1 D U U U 8E2
- #
--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,
-- lh@, lines#43, lw@, nlab@,
-- pln@, rs3=\Ee+$<150>, use=wy60-42-w,
-+# S1 9 Autowrap (U = on, D = off)
-+# S1 10 CR/LF (U = CR/LF on CR received, D = CR on CR received)
-+# S2 1 Mode (U = block, D = conversational)
-+# S2 2 Duplex (U = half, D = full)
-+# S2 3 Hertz (U = 50, D = 60)
-+# S2 4 Edit mode (U = local, D = duplex)
-+# S2 5 Cursor type (U = underline, D = block)
-+# S2 6 Cursor down key (U = send ^J, D = send ^V)
-+# S2 7 Screen colour (U = green on black, D = black on green)
-+# S2 8 DSR status (pin 6) (U = disconnected, D = connected)
-+# S2 9 DCD status (pin 8) (U = disconnected, D = connected)
-+# S2 10 DTR status (pin 20) (U = disconnected, D = connected)
- #
--wy60-vb|wyse60-vb|Wyse 60 visible bell,
-- bel@, use=wy60,
--wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column visible bell,
-- bel@, use=wy60-w,
-+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,
-+ ll=\E=7\s, use=tvi910,
-
--# The Wyse-99GT looks at lot like the Wyse 60 except that it
--# does not have the 42/43 line mode. In the Wyse-60 the "lines"
--# setup parameter controls the number of lines on the screen.
--# For the Wyse 99GT the "lines" setup parameter controls the
--# number of lines in a page. The screen can display 25 lines max.
--# The Wyse-99GT also has personalities for the VT220 and
--# Tektronix 4014. But this has no bearing on the native mode.
-+# (tvi912: removed obsolete ":ma=^K^P^L :", added <flash> and
-+# <khome> from BRL entry -- esr)
-+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=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER$<33*>, ed=\Ey, el=\ET, flash=\Eb$<50/>\Ed, home=^^,
-+ ht=^I, hts=\E1, ich1=\EQ, if=/usr/share/tabset/stdcrt,
-+ il1=\EE$<33*>, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L,
-+ kcuu1=^K, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r,
-+ kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r,
-+ kf9=^AH\r, khome=^^, rmso=\Ek, rmul=\Em, smso=\Ej, smul=\El,
-+ tbc=\E3,
-+# 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,
-+ cup@, use=tvi912c,
-+
-+# tvi{912,920}[bc] - TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C
-+# From: Benjamin C. W. Sittler
- #
--# (msgr) should be set but the clear screen fails when in
--# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear
--# then set msgr, else use msgr@.
-+# Someone has put a scanned copy of the manual online at:
-+# http://vt100.net/televideo/912b-om/
- #
--# u0 -> enter Tektronix mode
--# u1 -> exit Tektronix mode
--#
--wy99gt|wyse99gt|Wyse 99gt,
-- msgr@,
-- 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,
-- u0=\E~>\E8, u1=\E[42h, use=wy60,
-+# These terminals were produced ca. 1979, and had a 12" monochrome
-+# screen, supported 75-9600 baud (no handshaking), monochrome, 7-bit
-+# ASCII, and were generally similar to adm3a but with attributes
-+# (including some with magic cookies), fancy half-duplex mode, and
-+# different bugs.
- #
--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,
-+# Some operations reqire truly incredible amounts of padding. The
-+# insert_line (<il1>) and delete_line (<dl1>) operations in particular
-+# are so slow as to be nearly unusable.
- #
--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,
-+# There may or may not have been a separate, earlier series of 912/920
-+# terminals (without the "B" and "C" suffix); I have never seen one,
-+# and the manual only describes the "B" and "C" series. The 912 and 920
-+# are quite distinct from the 914 and 924, which were much nicer non-
-+# magic-cookie terminals similar to the 950.
- #
--wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines,
-- lh@, lines#25, lw@, nlab@,
-- pln@, rs2=\E`;$<150>, use=wy99gt-w,
-+# This is a new description for the following TeleVideo terminals,
-+# distinguished chiefly by their keyboards:
- #
--wy99gt-vb|wyse99gt-vb|Wyse 99gt visible bell,
-- bel@, use=wy99gt,
-+# TVI-912B - very odd layout, no function keys (84 keys)
-+# TVI-920B - typewriter layout, no function keys (103 keys)
-+# TVI-912C - very odd layout, function keys F1-F11 (82 keys)
-+# TVI-920C - typewriter layout, function keys F1-F11 (101 keys)
- #
--wy99gt-w-vb|wy99gt-wvb|wyse99gt-wvb|Wyse 99gt 132-column visible bell,
-- bel@, use=wy99gt-w,
--
--# Can't set tabs! Other bugs (ANSI mode only):
--# - can't redefine function keys (anyway, key redefinition in ANSI mode
--# is too much complex to be described);
--# - meta key can't be described (the terminal forgets it when reset);
--# The xon-xoff handshaking can't be disabled while in ansi personality, so
--# emacs can't work at speed greater than 9600 baud. No padding is needed at
--# this speed.
--# dch1 has been commented out because it causes annoying glittering when
--# vi deletes one character at the beginning of a line with tabs in it.
--# dch makes sysgen(1M) have a horrible behaviour when deleting
--# a screen and makes screen(1) behave badly, so it is disabled too. The nice
--# thing is that vi goes crazy if smir-rmir are present and both dch-dch1 are
--# not, so smir and rmir are commented out as well.
--# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998
--wy99-ansi|Wyse WY-99GT in ansi mode (int'l PC keyboard),
-- am, km, mc5i, mir, msgr, xenl,
-- cols#80, it#8, lines#25, vt#3,
-- acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
-- clear=\E[H\E[J$<200>, cnorm=\E[34h\E[?25h, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<1>,
-- cub1=\010$<1>, cud=\E[%p1%dB, cud1=\ED,
-- cuf=\E[%p1%dC$<1>, cuf1=\E[C$<1>,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
-- cvvis=\E[34l\E[?25h, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M,
-- ech=\E[%p1%dX, ed=\E[J$<8*>, el=\E[K$<1>, el1=\E[1K$<1>,
-- enacs=\E)0, flash=\E[?5h$<30/>\E[?5l, home=\E[H,
-- hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL,
-- il1=\E[L, ind=\n$<1>, invis=\E[8m,
-- is2=\E7\E[1r\E8\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[4i,
-- kbs=^H, kcbt=\E[z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-- kcuu1=\EOA, kf1=\EOP, kf10=\E[21~, kf11=\E[23~,
-- kf12=\E[24~, kf17=\E[K, kf18=\E[31~, kf19=\E[32~, kf2=\EOQ,
-- kf20=\E[33~, kf21=\E[34~, kf22=\E[35~, kf23=\E[1~,
-- kf24=\E[2~, kf3=\EOR, kf4=\EOS, kf5=\E[M, kf6=\E[17~,
-- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, ll=\E[24E, mc0=\E[?19h,
-- mc4=\E[4i, mc5=\E[5i, nel=\EE, prot=\E[1"q, rc=\E8,
-- rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l,
-- rmkx=\E[?1l, rmso=\E[27m, rmul=\E[24m,
-- rs2=\E[61"p\E[40h\E[?6l\E[1r\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[24E\E[4i,
-- sc=\E7,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%O%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m\E[%?%p8%t1%;"q%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017\E["q, smacs=^N, smam=\E[?7h, smir=\E[4h,
-- smkx=\E[?1h, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd,
--
--# This is the american terminal. Here tabs work fine.
--# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998
--wy99a-ansi|Wyse WY-99GT in ansi mode (US PC keyboard),
-- hts=\EH, is3=\E[?5l, rs3=\E[?5l, tbc=\E[3g, use=wy99-ansi,
--
--# This terminal (firmware version 02) has a lot of bugs:
--# - can't set tabs;
--# - other bugs in ANSI modes (see above).
--# This description disables handshaking when using cup. This is because
--# GNU emacs doesn't like Xon-Xoff handshaking. This means the terminal
--# cannot be used at speeds greater than 9600 baud, because at greater
--# speeds handshaking is needed even for character sending. If you use
--# DTR handshaking, you can use even greater speeds.
--# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998
--wy99f|wy99fgt|wy-99fgt|Wyse WY-99GT (int'l PC keyboard),
-- am, bw, hs, km, mc5i, mir, msgr, xon,
-- cols#80, it#8, lines#25, wsl#46,
-- acsc='x+y.w_vi~j(k'l&m%n)o9q*s8t-u.v\,w+x=, bel=^G,
-- blink=\EG2, cbt=\EI, civis=\E`0, clear=\E'\E(\032,
-- cnorm=\E`4\E`1, cr=^M, cub1=^H, cud1=\Ej, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- cvvis=\E`2\E`1, dch1=\EW, dim=\EGp, dl1=\ER, dsl=\EF\r,
-- ed=\EY$<8*>, el=\ET$<8>, enacs=\Ec@1J$<2000>,
-- flash=\E\^1$<30/>\E\^0, fsl=^M, home=^^, ht=^I, il1=\EE,
-- ind=^J, 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,
-- ka1=^^, ka3=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H,
-- kcud1=^J, 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,
-- kf16=^Ac\r, kf17=^Ad\r, kf18=^Ae\r, kf19=^Af\r, kf2=^AA\r,
-- kf20=^Ag\r, kf21=^Ah\r, kf22=^Ai\r, kf23=^Aj\r, kf24=^Ak\r,
-- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-- kf8=^AG\r, kf9=^AH\r, kprt=\EP, mc0=\EP, mc4=^T, mc5=\Ed#,
-- 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/\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)%;%?%p9%t\EcE%e\EcD%;,
-- sgr0=\E(\EG0, smacs=\EcE, smam=\Ed/, smcup=\Ec20\Ec30,
-- smir=\Eq, smso=\EG4, smxon=\Ec21\Ec31, tsl=\EF,
--
--# This is the american terminal. Here tabs work.
--# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998
--wy99fa|wy99fgta|wy-99fgta|Wyse WY-99GT (US PC keyboard),
-- hts=\E1, tbc=\E0, use=wy99f,
--
-+# To choose a setting for the TERM variable, start with the model:
- #
--# The Wyse 160 is combination of the WY-60 and the WY-99gt.
--# The reset strings are slow and the pad times very depending
--# on other parameters such as font loading. I have tried
--# to follow the following outline:
-+# Model || base name
-+# ----------||-----------
-+# TVI-912B || tvi912b
-+# TVI-912C || tvi912c
-+# TVI-920B || tvi920b
-+# TVI-920C || tvi920c
- #
--# <rs1> -> set personality
--# <rs2> -> set number of columns
--# <rs3> -> set number of lines
--# <is1> -> select the proper font
--# <is2> -> do the initialization
--# <is3> -> set up display memory (2 pages)
-+# Then add a suffix from the following table describing installed options
-+# and how you'd like to use the terminal:
- #
--# The display memory may be used for either text or graphics.
--# When "Display Memory = Shared" the terminal will have more pages
--# but garbage may be left on the screen when you switch from
--# graphics to text. If "Display Memory = Unshared" then the
--# text area will be only one page long.
-+# Use Video | Second | Visual | Magic | Page || feature
-+# Attributes | Page | Bell | Cookies | Print || suffix
-+# ------------|--------|--------|---------|-------||---------
-+# No | No | N/A | N/A | No || -unk
-+# No | No | N/A | N/A | Yes || -p
-+# No | Yes | No | N/A | No || -2p-unk
-+# No | Yes | No | N/A | Yes || -2p-p
-+# No | Yes | Yes | N/A | No || -vb-unk
-+# No | Yes | Yes | N/A | Yes || -vb-p
-+# Yes | No | N/A | No | N/A ||
-+# Yes | No | N/A | Yes | N/A || -mc
-+# Yes | Yes | No | No | N/A || -2p
-+# Yes | Yes | No | Yes | N/A || -2p-mc
-+# Yes | Yes | Yes | No | N/A || -vb
-+# Yes | Yes | Yes | Yes | N/A || -vb-mc
- #
--# (wy160: we use \E{ rather than ^^ for home (both are documented) to avoid
--# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr)
--wy160|wyse160|Wyse 160,
-- am, bw, hs, km, mc5i, mir, msgr,
-- cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#38,
-- acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~,
-- bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<30>,
-- cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<5>,
-- dclk=\E`b, dim=\EGp, dl1=\ER$<1>, dsl=\EF\r, ed=\EY$<30>,
-- el=\ET$<5>, flash=\E`8$<100/>\E`9, fsl=^M, home=\E{, ht=^I,
-- hts=\E1, il1=\EE$<1>, ind=\n$<1>, ip=$<2>, is1=\EcB0\EcC1,
-- is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El,
-- is3=\Ew0$<100>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H,
-- kcud1=^J, 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, kf16=^AO\r,
-- kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K,
-- mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<1>,
-- pfloc=\EZ2%p1%{63}%+%c%p2%s\177,
-- pfx=\EZ1%p1%{63}%+%c%p2%s\177,
-- 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>,
-- 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,
-- sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/,
-- smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21,
-- tbc=\E0, tsl=\EF, use=adm+sgr,
-+# So e.g. a model 920 C with second page memory option, visual bell
-+# and no magic cookies would be tvi920c-vb; a model 912 B without the
-+# second page memory option and using magic cookies would be
-+# tvi912b-mc
- #
--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,
-+# PADDING
- #
--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,
-- lh@, lines#25, lw@, nlab@,
-- pln@, rs3=\EwG\Ee)$<200>, use=wy160-w,
-+# At 9600 baud, the terminal is prone to overflow its input buffer
-+# during complex operations (insert/delete
-+# character/line/screen/page), and it does not signal this over the
-+# RS232 cable. The typical symptom of an overrun is that the terminal
-+# starts beeping, and output becomes garbled.
- #
--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,
-- 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,
-+# The padding delays in this terminfo were derived using tack(1)
-+# running on a Linux box connected to a TVI-920C with a later-model
-+# (A49C1-style) ROM running at 9600 baud, so your mileage may
-+# vary. The numbers below seem to give the terminal enough time so
-+# that it doesn't overflow its input buffer and start losing
-+# characters.
- #
--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,
-- lh@, lines#43, lw@, nlab@,
-- pln@, rs3=\Ee+$<150>, use=wy160-42-w,
-+# KEYS
- #
--wy160-vb|wyse160-vb|Wyse 160 visible bell,
-- bel@, use=wy160,
--wy160-w-vb|wy160-wvb|wyse160-wvb|Wyse 160 132-column visible bell,
-- bel@, use=wy160-w,
-+# If you want to use the FUNCT key on a tvi912[bc], use the
-+# corresponding tvi920[bc] terminfo with FUNCT + ... equivalents from
-+# the following table (these also work on the 920 series):
- #
--# The Wyse 75 is a vt100 lookalike without advanced video.
-+# Unshifted Function Keys:
- #
--# The Wyse 75 can support one attribute (e.g. Dim, Inverse,
--# Underline) without magic cookies. The following description
--# uses this capability, but when more than one attribute is
--# put on the screen at once, all attributes will be changed
--# to be the same as the last attribute given.
--# The Wyse 75 can support more attributes when used with magic
--# cookies. The wy75-mc terminal description uses magic cookies
--# to correctly handle multiple attributes on a screen.
-+# Key | capname|| Equivalent
-+# -----|--------||------------
-+# F1 | <kf1> || FUNCT + @
-+# F2 | <kf2> || FUNCT + A
-+# F3 | <kf3> || FUNCT + B
-+# F4 | <kf4> || FUNCT + C
-+# F5 | <kf5> || FUNCT + D
-+# F6 | <kf6> || FUNCT + E
-+# F7 | <kf7> || FUNCT + F
-+# F8 | <kf8> || FUNCT + G
-+# F9 | <kf9> || FUNCT + H
-+# F10 | <kf10> || FUNCT + I
-+# F11 | <kf11> || FUNCT + J
- #
--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=^M, csr=\E[%i%p1%d;%p2%dr$<2>,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- 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\,\E[30l$<250>, 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,
-- kf1=\E[?5i, 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[?3i,
-- kf20=\E[34~, kf21=\E[35~, kf3=\E[2i, kf4=\E[@, kf5=\E[M,
-- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~,
-- khlp=\E[28~, khome=\E[H, kich1=\E[@, kil1=\E[L, knp=\E[6~,
-- kpp=\E[5~, kprt=\E[?5i, kslt=\E[4~, mc0=\E[0i, mc4=\E[4i,
-- mc5=\E[5i, rc=\E8, rev=\E[1t\E[7m, ri=\EM$<2>, 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$<80>, rs3=\E[?5l,
-- sc=\E7,
-- sgr=%?%p5%t\E[0t%;%?%p3%p1%|%t\E[1t%;%?%p2%t\E[2t%;%?%p4%t\E[3t%;%?%p1%p2%p3%p4%p5%|%|%|%|%t\E[7m%e\E[m%;%?%p9%t\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,
-+# Shifted Function Keys:
- #
--# This terminal description uses the non-hidden attribute mode
--# (with magic cookie).
-+# SHIFT + Key | capname|| Equivalent
-+# -------------|--------||------------
-+# SHIFT + F1 | <kf12> || FUNCT + `
-+# SHIFT + F2 | <kf13> || FUNCT + a
-+# SHIFT + F3 | <kf14> || FUNCT + b
-+# SHIFT + F4 | <kf15> || FUNCT + c
-+# SHIFT + F5 | <kf16> || FUNCT + d
-+# SHIFT + F6 | <kf17> || FUNCT + e
-+# SHIFT + F7 | <kf18> || FUNCT + f
-+# SHIFT + F8 | <kf19> || FUNCT + g
-+# SHIFT + F9 | <kf20> || FUNCT + h
-+# SHIFT + F10 | <kf21> || FUNCT + i
-+# SHIFT + F11 | <kf22> || FUNCT + j
- #
--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,
-- rev=\E[16p, rmacs=\E[0p\017, rmso=\E[0p, rmul=\E[0p,
-- sgr=\E[%{0}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{16}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{1}%|%;%?%p7%t%{4}%|%;%dp%?%p9%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,
-- pb@,
-- bel@, use=wy75,
--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,
-- pb@,
-- bel@, use=wy75-w,
-+# PORTS AND SWITCH SETTINGS
- #
--# Wyse 85 emulating a vt220 7 bit mode.
--# 24 line screen with status line.
-+# Here are the switch settings for the TVI-912B/TVI-920B and
-+# TVI-912C/TVI-920C:
- #
--# The vt220 mode permits more function keys but it wipes out
--# the escape key. I strongly recommend that <f11> be set to
--# escape (esc).
--# The terminal may have to be set for 8 data bits and 2 stop
--# bits for the arrow keys to work.
--# The Wyse 85 runs faster with XON/XOFF enabled. Also the
--# <dch> and <ich> work best when XON/XOFF is set. <ich> and
--# <dch> leave trash on the screen when used without XON/XOFF.
-+# S1 (Line), and S3 (Printer) baud rates -- put one, and only one, switch down:
-+# 2: 9600 3: 4800 4: 2400 5: 1200
-+# 6: 600 7: 300 8: 150 9: 75
-+# 10: 110
- #
--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=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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\,\E[30l$<300>,
-- 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,
-- 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,
-+# S2 UART/Terminal options:
-+# Up Down
-+# 1: Not used Not allowed
-+# 2: Alternate character set Standard character set
-+# 3: Full duplex Half duplex
-+# 4: 50 Hz refresh 60 Hz refresh
-+# 5: No parity Send parity
-+# 6: 2 stop bits 1 stop bit
-+# 7: 8 data bits 7 data bits
-+# 8: Not used Not allowed on Rev E or lower
-+# 9: Even parity Odd parity
-+# 10: Steady cursor Blinking cursor
-+# (On Rev E or lower, use W25 instead of switch 10.)
- #
--# Wyse 85 with visual bell.
--wy85-vb|wyse85-vb|wyse 85 with visible bell,
-- bel@, flash=\E[30h\E\,\E[30l$<300>, use=wy85,
-+# S5 UART/Terminal options:
-+# Open Closed
-+# 1: P3-6 Not connected DSR received on P3-6
-+# 2: P3-8 Not connected DCD received on P3-8
- #
--# Wyse 85 in 132-column mode.
--wy85-w|wyse85-w|wyse 85 in 132-column mode,
-- cols#132, wsl#132,
-- rs2=\E[35h\E[?3h$<70>, use=wy85,
-+# 3 Open, 4 Open: P3-20 Not connected
-+# 3 Open, 4 Closed: DTR on when terminal is on
-+# 3 Closed, 4 Open: DTR is connected to RTS
-+# 3 Closed, 4 Closed: Not allowed
- #
--# Wyse 85 in 132-column mode with visual bell.
--wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns,
-- bel@, use=wy85-w,
--
--# From: Kevin Turner <kevint@aracnet.com>, 12 Jul 1998
--# This copes with an apparent firmware bug in the wy85. He writes:
--# "What I did was change leave the terminal cursor keys set to Normal
--# (instead of application), and change \E[ to \233 for all the keys in
--# terminfo. At one point, I found some reference indicating that this
--# terminal bug (not sending \E[) was acknowledged by Wyse (so it's not just
--# me), but I can't find that and the server under my bookmark to "Wyse
--# Technical" isn't responding. So there's the question of wether the wy85
--# terminfo should reflect the manufactuer's intended behaviour of the terminal
--# or the actual."
--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=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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\,\E[30l$<300>,
-- 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,
-- kcuf1=\233C, kcuu1=\233A, kdch1=\2333~, kent=\EOM,
-- kf1=\EOP, kf10=\23321~, kf11=\23323~, kf12=\23324~,
-- kf13=\23325~, kf14=\23326~, kf15=\23328~, kf16=\23329~,
-- kf17=\23331~, kf18=\23332~, kf19=\23333~, kf2=\EOQ,
-- kf20=\23334~, kf3=\EOR, kf4=\EOS, kf6=\23317~, kf7=\23318~,
-- kf8=\23319~, kf9=\23320~, kfnd=\2331~, khlp=\23328~,
-- khome=\23326~, kich1=\2332~, knp=\2336~, kpp=\2335~,
-- kslt=\2334~, 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,
-+# 5 Closed: HDX printer (hardware control) Rev. K with extension port off,
-+# all data transmitted out of the modem port (P3) will also be
-+# transmitted out of the printer port (P4).
- #
--# Wyse 185 emulating a vt320 7 bit mode.
-+# 6 Open, 7 Open: Not allowed
-+# 6 Open, 7 Closed: 20ma current loop input
-+# 6 Closed, 7 Open: RS232 input
-+# 6 Closed, 7 Closed: Not allowed
- #
--# This terminal always displays 25 lines. These lines may be used
--# as 24 data lines and a terminal status line (top or bottom) or
--# 25 data lines. The 48 and 50 line modes change the page size
--# and not the number of lines on the screen.
-+# Jumper options:
-+# If the jumper is installed, the effect will occur (the next time the terminal
-+# is switched on).
- #
--# The Compose Character key can be used as a meta key if changed
--# by set-up.
-+# S4/W31: Enables automatic LF upon receipt of CR from
-+# remote or keyboard.
-+# S4/W32: Enables transmission of EOT at the end of Send. If not
-+# installed, a carriage return is sent.
-+# S4/W33: Disables automatic carriage return in column 80.
-+# S4/W34: Selects Page Print Mode as initial condition. If not
-+# installed, Extension Mode is selected.
- #
--wy185|wyse185|wyse 185,
-- am, hs, km, 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$<40>, cnorm=\E[34h\E[?25h, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<3>,
-- dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>,
-- dsl=\E7\E[99;0H\E[K\E8, ech=\E[%p1%dX, ed=\E[J$<40>,
-- el=\E[K, el1=\E[1K, enacs=\E)0,
-- flash=\E[30h\E\,\E[30l$<100>, fsl=\E[1;24r\E8,
-- home=\E[H, hpa=\E[%i%p1%d`, ht=^I, hts=\EH,
-- ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, 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;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,
-- 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,
-- 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%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- 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,
-+# NON-STANDARD CAPABILITIES
- #
--# Wyse 185 with 24 data lines and top status (terminal status)
--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,
-+# Sending <u9> or <u7> returns a cursor position report in the format
-+# YX\r, where Y and X are as in <cup>. This format is described in
-+# <u8> and <u6>, but it's not clear how one should write an
-+# appropriate scanf string, since we need to subtract %' ' from the
-+# character after reading it. The <u9> capability is used by tack(1)
-+# to synchronize during padding tests, and seems to work for that
-+# purpose.
- #
--# Wyse 185 with visual bell.
--wy185-vb|wyse185-vb|wyse 185+flash,
-- bel@, use=wy185,
-+# This description also includes the obsolete termcap capabilities
-+# has_hardware_tabs (<OTpt>) and backspaces_with_bs (<OTbs>).
- #
--# 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,
-+# FEATURES NOT YET DESCRIBED IN THIS TERMINFO
- #
--# Wyse 185 in 132-column mode with visual bell.
--wy185-wvb|wyse185-wvb|wyse 185+flash+132 cols,
-- bel@, use=wy185-w,
--
--# wy325 terminfo entries
--# Done by Joe H. Davis 3-9-92
--
--# lines 25 columns 80
-+# The FUNCT modifier actually works with every normal key by sending
-+# ^AX\r, where X is the sequence normally sent by that key. This is a
-+# sort of meta key not currently describable in terminfo.
- #
--wy325|wyse325|Wyse epc,
-- am, bw, hs, mc5i, mir,
-- cols#80, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45,
-- acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~,
-- bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>,
-- cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>,
-- dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>,
-- flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=^I, hts=\E1,
-- il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1,
-- is2=\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El,
-- is3=\Ew0$<16>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H,
-- kcud1=^J, 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, kf16=^AO\r,
-- kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K,
-- mc0=\EP, mc4=^T, mc5=\Ed#,
-- pfloc=\EZ2%p1%{63}%+%c%p2%s\177,
-- 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>,
-- 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%{64}%|%;%?%p7%t%{1}%|%;%c,
-- sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/,
-- smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, tbc=\E0,
-- tsl=\EF, use=adm+sgr,
--
-+# There are quite a few other keys (especially on the 920 models,) but
-+# they are for the most part only useful in block mode.
- #
--# lines 24 columns 80 vb
-+# These terminals have lots of forms manipulation features, mainly
-+# useful in block mode, including "clear X to nulls" (vs. "clear X to
-+# spaces"; nulls are sentinels for "send X" operations); "send X"
-+# operations for uploading all or part of the screen; and block-mode
-+# editing keys (they don't send escape sequences, but manipulate video
-+# memory directly). Block mode is used for local editing, and protect
-+# mode (in conjunction with the "write protect" attribute,
-+# a.k.a. half-intensity outside of protect mode) is used to control
-+# which parts of the screen are edited/sent/printed (by <mc0>).
- #
--wy325-vb|wyse325-vb|wyse-325 with visual bell,
-- bel@, use=wy325,
--
-+# There are at least two major families of ROM, "early" and
-+# A49B1/A49C1; the major difference seems to be that the latter ROMs
-+# support a few extra escape sequences for manipulating the off-screen
-+# memory page, and for sending whole pages back to the host (mainly
-+# useful in block mode.) The descriptions in this file don't use any
-+# of those sequences: set cursor position including page (\E-PYX,
-+# where P is \s for page 0 and ! for page 1 [actually only the LSB of
-+# P is taken into account, so e.g. 0 and 1 work too,] and Y and X are
-+# as in <cup>); read cursor position (\E/), which is analogous to <u9>
-+# and returns PYX\r, where P is \s for page 0 or ! for page 1, and YX
-+# are as in <cup>, and some "send page" features mainly useful for
-+# forms manipulation.
- #
--# lines 24 columns 132
-+# The keyboard enable (\E") and disable (\E#) sequences are unused,
-+# except that a terminal reset (<is2>) enables the keyboard.
- #
--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,
-+# Auto-flip mode (\Ev) is likely faster than the scrolling mode (\Ew)
-+# enabled in <is2>, but auto-flip is very jarring so we don't use it.
- #
--# lines 25 columns 80
-+# BUGS
- #
--wy325-25|wyse325-25|wy325-80|wyse-325|wyse-325 25 lines,
-- lh@, lines#25, lw@, nlab@,
-- pln@, rs3=\EwG\Ee)$<100>, use=wy325,
-+# At least up to the A49B1 and A49C1 ROMs, there are no \Eb and \Ed
-+# sequences (I infer that in some TeleVideo terminal they may invert
-+# and uninvert the display) so the <flash> sequence given here is a
-+# cheesy page-flip instead.
- #
--# lines 25 columns 132
-+# The back_tab (<cbt>) sequence (\EI) doesn't work according to
-+# tack(1), so it is not included in the descriptions below.
- #
--wy325-25w|wyse325-25w|wy325 132 columns,
-- lh@, lines#25, lw@, nlab@,
-- pln@, rs3=\EwG\Ee)$<100>, use=wy325-w,
-+# It's not clear whether auto_left_margin (<bw>) flag should be set
-+# for these terminals; tack says yes, so it is set here, but this
-+# differs from other descriptions I've seen.
- #
--# lines 25 columns 132 vb
-+# Extension print mode (<mc5>) echoes all characters to the printer
-+# port [in addition to displaying them] except for the page print mode
-+# sequence (<mc4>); this is a slight violation of the terminfo
-+# definition for <mc5> but I don't expect it to cause problems. We
-+# reset to page print mode in <rs1> since it may have been enabled
-+# accidentally.
- #
--wy325-w-vb|wy325-wvb|wyse325-wvb|wyse-325 wide mode reverse video,
-- bel@, use=wy325-w,
-+# The descriptions with plus signs (+) are building blocks.
-
--#
--# lines 42 columns 80
--#
--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,
-- 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,
-- bel@, use=wy325-w,
--#
--# lines 43 columns 80
--#
--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,
-- 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,
-- bel@, use=wy325-w,
-+tvi912b-unk|tvi912c-unk|TeleVideo TVI-912B or TVI-912C (no attributes),
-+ OTbs, OTpt, am, bw,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=\032$<50>, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%' '%+%c%p2%' '%+%c, cuu1=^K, dch1=\EW$<30>,
-+ dl1=\ER$<1*>$<100>, ed=\Ey$<2*>$<10>, el=\ET$<15>,
-+ home=^^, ht=^I, hts=\E1, ich1=\EQ$<30>,
-+ if=/usr/share/tabset/stdcrt, il1=\EE$<1*>$<100>,
-+ ind=\n$<10>, is2=\Ew\EA\E'\E"\E(, kcub1=^H, kcud1=^J,
-+ kcuf1=^L, kcuu1=^K, kdch1=\177, kent=^M, khome=^^, mc4=\EA,
-+ mc5=\E@, rs1=\Ek\010\Em\010\Eq\032, tbc=\E3, u6=%c%c\r,
-+ u7=\E?, u8=%c%c\r, u9=\E?,
-
--# Wyse 370 -- 24 line screen with status line.
--#
--# The terminal may have to be set for 8 data bits and 2 stop
--# bits for the arrow keys to work.
--#
--# If you change keyboards the terminal will send different
--# escape sequences.
--# The following definition is for the basic terminal without
--# function keys.
--#
--# <u0> -> enter Tektronix 4010/4014 mode
--# <u1> -> exit Tektronix 4010/4014 mode
--# <u2> -> enter ASCII mode (from any ANSI mode)
--# <u3> -> exit ASCII mode (goto native ANSI mode)
--# <u4> -> enter Tek 4207 ANSI mode (from any ANSI mode)
--# <u5> -> exit Tek 4207 mode (goto native ANSI mode)
--#
--# Bug: The <op> capability resets attributes.
--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{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
-- clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A,
-- cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<1*>, dch1=\E[P$<1>,
-- dclk=\E[31h, dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>,
-- dsl=\E[40l, ech=\E[%p1%dX$<.1*>, ed=\E[J$<40>,
-- el=\E[K$<10>, el1=\E[1K$<12>, enacs=\E)0,
-- flash=\E[30h\E\,\E[30l$<300>, fsl=\E[1;24r\E8,
-- home=\E[H, hpa=\E[%i%p1%d`, ht=\011$<1>, hts=\EH,
-- ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>,
-- ind=\n$<2>,
-- initc=\E[66;%p1%d;%?%p2%{250}%<%t%{0}%e%p2%{500}%<%t%{16}%e%p2%{750}%<%t%{32}%e%{48}%;%?%p3%{250}%<%t%{0}%e%p3%{500}%<%t%{4}%e%p3%{750}%<%t%{8}%e%{12}%;%?%p4%{250}%<%t%{0}%e%p4%{500}%<%t%{1}%e%p4%{750}%<%t%{2}%e%{3}%;%{1}%+%+%+%dw,
-- invis=\E[8m, ip=$<1>, is1=\E[90;1"p\E[?5W$<6>,
-- is2=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h,
-- is3=\E>\017\E)0\E(B\E[63;0w\E[m, mc0=\E[0i, mc4=\E[4i,
-- mc5=\E[5i,
-- oc=\E[60w\E[63;0w\E[66;1;4w\E[66;2;13w\E[66;3;16w\E[66;4;49w\E[66;5;51w\E[66;6;61w\E[66;7;64w,
-- op=\E[m, rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O,
-- rmam=\E[?7l, rmclk=\E[31l, rmcup=\E[ R, rmir=\E[4l,
-- rmkx=\E>, rmso=\E[27m, rmul=\E[24m,
-- rs1=\E[13l\E[3l\E!p\E[?4i, rs2=\E[35h\E[?3l$<8>,
-- rs3=\E[?5l, sc=\E7, setb=\E[62;%p1%dw, setf=\E[61;%p1%dw,
-- 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, smcup=\E[ Q,
-- smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m,
-- tbc=\E[3g, tsl=\E[40l\E[40h\E7\E[99;%i%p1%dH,
-- u0=\E[?38h\E8, u1=\E[?38l\E)0, u2=\E[92;52"p, u3=\E~B,
-- u4=\E[92;76"p, u5=\E%!1\E[90;1"p, vpa=\E[%i%p1%dd,
--#
--# Function key set for the ASCII (wy-50 compatible) keyboard
--# This is the default 370.
--#
--wy370|wyse370|wy370-101k|Wyse 370 with 101 key keyboard,
-- kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kdch1=\EOQ, kdl1=\EOQ, kent=\EOM, kf1=\E[?4i,
-- kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
-- kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf2=\E[?3i,
-- kf3=\E[2i, kf4=\E[@, kf5=\E[M, kf6=\E[17~, kf7=\E[18~,
-- kf8=\E[19~, kf9=\E[20~, khome=\E[H, kich1=\EOP, kil1=\EOP,
-- knp=\E[U, kpp=\E[V, use=wy370-nk,
--#
--# Function key set for the VT-320 (and wy85) compatible keyboard
-+# This isn't included in the basic capabilities because it is
-+# typically unusable in combination with the full range of video
-+# attributes, since the magic cookie attributes turn into ASCII
-+# control characters, and the half-intensity ("protected") attribute
-+# converts all affected characters to spaces.
-+
-+tvi912b+printer|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C page print support,
-+ mc0=\EP,
-+
-+# This uses half-intensity mode (<dim>) for standout (<smso>), and
-+# exposes no other attributes (half-intensity is the only attribute
-+# that does not generate a magic cookie.)
-+
-+tvi912b+dim|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C half-intensity attribute support,
-+ msgr,
-+ dim=\E), rmso=\E(, sgr=\E%?%p1%p5%|%t)%e(%;, sgr0=\E(,
-+ smso=\E),
-+
-+# Full magic-cookie attribute support, with half-intensity reverse
-+# video for standout. Note that we add a space in the <dim> sequence
-+# to give a consistent magic-cookie count. Also note that <sgr> uses
-+# backspacing (in the TVI-supported order) to apply all requested
-+# attributes with only a single magic cookie.
-+
-+tvi912b+mc|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C full magic-cookie attribute support,
-+ xmc#1,
-+ blink=\E\^, dim=\E)\s, invis=\E_, rev=\Ej, rmso=\E(\Ek,
-+ rmul=\Em,
-+ sgr=\E%?%p1%p5%|%t)%e(%; \010\E%?%p1%p3%|%tj%ek%;\010\E%?%p2%tl%em%;\010\E%?%p7%t_%e%?%p4%t\^%eq%;%;,
-+ sgr0=\E(\Ek\010\Em\010\Eq, smso=\E)\Ej, smul=\El,
-+
-+# This uses the second page memory option to save & restore screen
-+# contents. If your terminal is missing the option, this description
-+# should still work, but that has not been tested.
-+
-+tvi912b+2p|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option support,
-+ flash=\EK$<100>\EK, rmcup=\032$<50>\EK\E=7\s,
-+ smcup=\EK\032$<50>\E(\Ek\010\Em\010\Eq\032$<50>,
-+
-+# This simulates flashing by briefly toggling to the other page
-+# (kludge!)
-+
-+tvi912b+vb|TeleVideo TVI-912B/TVI-920B and TVI-912C/TVI-920C second page memory option "visible bell" support,
-+ bel=\EK$<100>\EK, use=tvi912b+2p,
-+
-+# Function keys (<kf12> .. <kf22> are shifted <kf1> .. <kf11>)
-+
-+tvi920b+fn|TeleVideo TVI-920B and TVI-920C function key support,
-+ kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^A`\r, kf13=^Aa\r,
-+ kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r, kf17=^Ae\r, kf18=^Af\r,
-+ kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r, 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,
-+
-+# Combinations of the basic building blocks
-+
-+tvi912b-2p-unk|tvi912c-2p-unk|tvi912b-unk-2p|tvi912c-unk-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes),
-+ use=tvi912b+2p, use=tvi912b-unk,
-+
-+tvi912b-vb-unk|tvi912c-vb-unk|tvi912b-unk-vb|tvi912c-unk-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes),
-+ use=tvi912b+vb, use=tvi912b-unk,
-+
-+tvi912b-p|tvi912c-p|TeleVideo TVI-912B or TVI-912C (no attributes; page print),
-+ use=tvi912b+printer, use=tvi912b-unk,
-+
-+tvi912b-2p-p|tvi912c-2p-p|tvi912b-p-2p|tvi912c-p-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; no attributes; page print),
-+ use=tvi912b+2p, use=tvi912b+printer, use=tvi912b-unk,
-+
-+tvi912b-vb-p|tvi912c-vb-p|tvi912b-p-vb|tvi912c-p-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; no attributes; page print),
-+ use=tvi912b+vb, use=tvi912b+printer, use=tvi912b-unk,
-+
-+tvi912b-2p|tvi912c-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; half-intensity attribute),
-+ use=tvi912b+2p, use=tvi912b+dim, use=tvi912b-unk,
-+
-+tvi912b-2p-mc|tvi912c-2p-mc|tvi912b-mc-2p|tvi912c-mc-2p|TeleVideo TVI-912B or TVI-912C (second page memory option; magic cookies),
-+ use=tvi912b+2p, use=tvi912b+mc, use=tvi912b-unk,
-+
-+tvi912b-vb|tvi912c-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; half-intensity attribute),
-+ use=tvi912b+vb, use=tvi912b+dim, use=tvi912b-unk,
-+
-+tvi912b-vb-mc|tvi912c-vb-mc|tvi912b-mc-vb|tvi912c-mc-vb|TeleVideo TVI-912B or TVI-912C (second page memory option "visible bell"; magic cookies),
-+ use=tvi912b+vb, use=tvi912b+mc, use=tvi912b-unk,
-+
-+tvi912b|tvi912c|TeleVideo TVI-912B or TVI-912C (half-intensity attribute),
-+ use=tvi912b+dim, use=tvi912b-unk,
-+
-+tvi912b-mc|tvi912c-mc|TeleVideo TVI-912B or TVI-912C (magic cookies),
-+ use=tvi912b+mc, use=tvi912b-unk,
-+
-+tvi920b-unk|tvi920c-unk|TeleVideo TVI-920B or TVI-920C (no attributes),
-+ use=tvi920b+fn, use=tvi912b-unk,
-+
-+tvi920b-2p-unk|tvi920c-2p-unk|tvi920b-unk-2p|tvi920c-unk-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes),
-+ use=tvi920b+fn, use=tvi912b+2p, use=tvi912b-unk,
-+
-+tvi920b-vb-unk|tvi920c-vb-unk|tvi920b-unk-vb|tvi920c-unk-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes),
-+ use=tvi920b+fn, use=tvi912b+vb, use=tvi912b-unk,
-+
-+tvi920b-p|tvi920c-p|TeleVideo TVI-920B or TVI-920C (no attributes; page print),
-+ use=tvi920b+fn, use=tvi912b+printer, use=tvi912b-unk,
-+
-+tvi920b-2p-p|tvi920c-2p-p|tvi920b-p-2p|tvi920c-p-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; no attributes; page print),
-+ use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+printer,
-+ use=tvi912b-unk,
-+
-+tvi920b-vb-p|tvi920c-vb-p|tvi920b-p-vb|tvi920c-p-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; no attributes; page print),
-+ use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+printer,
-+ use=tvi912b-unk,
-+
-+tvi920b-2p|tvi920c-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; half-intensity attribute),
-+ use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+dim,
-+ use=tvi912b-unk,
-+
-+tvi920b-2p-mc|tvi920c-2p-mc|tvi920b-mc-2p|tvi920c-mc-2p|TeleVideo TVI-920B or TVI-920C (second page memory option; magic cookies),
-+ use=tvi920b+fn, use=tvi912b+2p, use=tvi912b+mc,
-+ use=tvi912b-unk,
-+
-+tvi920b-vb|tvi920c-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; half-intensity attribute),
-+ use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+dim,
-+ use=tvi912b-unk,
-+
-+tvi920b-vb-mc|tvi920c-vb-mc|tvi920b-mc-vb|tvi920c-mc-vb|TeleVideo TVI-920B or TVI-920C (second page memory option "visible bell"; magic cookies),
-+ use=tvi920b+fn, use=tvi912b+vb, use=tvi912b+mc,
-+ use=tvi912b-unk,
-+
-+tvi920b|tvi920c|TeleVideo TVI-920B or TVI-920C (half-intensity attribute),
-+ use=tvi920b+fn, use=tvi912b+dim, use=tvi912b-unk,
-+
-+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
-+# 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,
-+ OTbs, OTpt, am, hs, xenl, xhp,
-+ cols#80, lines#24, xmc#0,
-+ acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K,
-+ cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY,
-+ el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ,
-+ if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J, invis@,
-+ is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z, kcub1=^H,
-+ kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER$<1*/>,
-+ ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE, nel=^M^J, rmacs=\E%%,
-+ rmir=, smacs=\E$, smir=, tsl=\Ef\EG0, use=adm+sgr,
-+# 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,
-+ am, hs, xenl, xhp,
-+ cols#80, lines#24, xmc#0,
-+ acsc=, clear=^Z, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<3/>, cuu1=^K,
-+ cvvis=\E.2, dch1=\EW, dl1=\ER$<1*/>, dsl=\Ef\r\Eg, ed=\EY,
-+ el=\ET, flash=\Eb$<200/>\Ed, fsl=\Eg, home=^^, ht=^I,
-+ ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J,
-+ invis@, is2=\El\E"\EF1\E.3\017\EA\E<, kbs=^H, kclr=^Z,
-+ kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW,
-+ kdl1=\ER$<1*/>, ked=\EY, kel=\ET, kich1=\EQ, kil1=\EE,
-+ nel=^M^J, rmacs=\E%%, smacs=\E$, tsl=\Ef\EG0, use=adm+sgr,
-+# (tvi92D: removed :ko=bt: before translation, I see no backtab cap -- esr)
-+tvi92D|tvi92B with DTR instead of XON/XOFF & better padding,
-+ dl1=\ER$<2*/>, il1=\EE$<2*/>,
-+ is2=\El\E"\EF1\E.3\016\EA\E<, kdl1=\ER$<2*/>,
-+ kil1=\EE$<2*/>, use=tvi92B,
-+
-+# (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,
-+ 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,
-+ cnorm=\E.3, cr=^M, csr=\E_%p1%{32}%+%c%p2%{32}%+%c,
-+ cub1=^H, cud1=^V, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, cvvis=\E.1,
-+ dch1=\EW, dl1=\ER, dsl=\Es0\Ef\031, ed=\Ey, el=\Et,
-+ flash=\Eb$<200>\Ed, fsl=\031\Es1, home=^^, ht=^I, hts=\E1,
-+ ich1=\EQ, if=/usr/share/tabset/stdcrt, il1=\EE, ind=^J,
-+ invis@, is1=\017\E%\E'\E(\EDF\EC\EG0\EN0\Es0\Ev0,
-+ kbs=^H, kclr=\E*0, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K,
-+ kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A@\r, kf1=^AA\r,
-+ kf10=^AJ\r, kf11=^AK\r, kf12=^AL\r, kf13=^AM\r, kf14=^AN\r,
-+ kf15=^AO\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, khome=^^,
-+ kich1=\EQ, kil1=\EE, lf0=F1, lf1=F2, lf10=F11, lf2=F3, lf3=F4,
-+ lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10,
-+ pfkey=\E|%p1%{49}%+%c%p2%s\031, ri=\Ej, tbc=\E3, tsl=\Ef,
-+ use=adm+sgr,
-+
-+# TVI925 DIP switches. In each of these, D = Down and U = Up,
- #
--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,
-+# Here are the settings for the external (baud) switches (S1):
- #
--# Function key set for the PC compatible keyboard
-+# Position Baud
-+# 7 8 9 10 [Printer]
-+# 1 2 3 4 [Main RS232]
-+# -----------------------------------------------------
-+# D D D D 9600
-+# D D D U 50
-+# D D U D 75
-+# D D U U 110
-+# D U D D 135
-+# D U D U 150
-+# D U U D 300
-+# D U U U 600
-+# U D D D 1200
-+# U D D U 1800
-+# U D U D 2400
-+# U D U U 3600
-+# U U D D 4800
-+# U U D U 7200
-+# U U U D 9600
-+# U U U U 19200
- #
--wy370-EPC|Wyse 370 with 102 key keyboard,
-- kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kend=\E[1~, kent=\EOM, kf1=\EOP, kf10=\E[21~,
-- kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-- kf5=\E[M, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-- khome=\E[H, kich1=\E[2~, knp=\E[U, kpp=\E[V, use=wy370-nk,
- #
--# Wyse 370 with visual bell.
--wy370-vb|Wyse 370 with visible bell,
-- bel@, use=wy370,
-+# Settings for word length and stop-bits (S1)
- #
--# Wyse 370 in 132-column mode.
--wy370-w|Wyse 370 in 132-column mode,
-- cols#132, wsl#132,
-- rs2=\E[35h\E[?3h$<70>, use=wy370,
-+# Position Description
-+# 5 6
-+# ---------------------------
-+# U - 7-bit word
-+# D - 8-bit word
-+# - U 2 stop bits
-+# - D 1 stop bit
- #
--# Wyse 370 in 132-column mode with visual bell.
--wy370-wvb|Wyse 370 with visible bell 132-columns,
-- flash=\E[30h\E\,\E[30l$<300>, use=wy370-w,
--wy370-rv|Wyse 370 reverse video,
-- rs3=\E[32h\E[?5h, use=wy370,
- #
--# Wyse 99gt Tektronix 4010/4014 emulator,
-+# S2 (external) settings
- #
--wy99gt-tek|Wyse 99gt Tektronix 4010/4014 emulator,
-- am, os,
-- cols#74, lines#35,
-- bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s,
-- cup=\035%{3040}%{89}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037,
-- cuu1=^K, ff=^L,
-- hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037,
-- home=^]7`x @\037,
-- hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037,
-- is2=\E8, nel=^M^J, u0=\E~>\E8, u1=\E[42h,
--#
--# Wyse 160 Tektronix 4010/4014 emulator,
-+# Position Up Dn Description
-+# --------------------------------------------
-+# 1 X Local edit
-+# X Duplex edit (transmit editing keys)
-+# --------------------------------------------
-+# 2 X 912/920 emulation
-+# X 925
-+# --------------------------------------------
-+# 3 X
-+# 4 X No parity
-+# 5 X
-+# --------------------------------------------
-+# 3 X
-+# 4 X Odd parity
-+# 5 X
-+# --------------------------------------------
-+# 3 X
-+# 4 X Even parity
-+# 5 X
-+# --------------------------------------------
-+# 3 X
-+# 4 X Mark parity
-+# 5 X
-+# --------------------------------------------
-+# 3 X
-+# 4 X Space parity
-+# 5 X
-+# --------------------------------------------
-+# 6 X White on black display
-+# X Black on white display
-+# --------------------------------------------
-+# 7 X Half Duplex
-+# 8 X
-+# --------------------------------------------
-+# 7 X Full Duplex
-+# 8 X
-+# --------------------------------------------
-+# 7 X Block mode
-+# 8 X
-+# --------------------------------------------
-+# 9 X 50 Hz
-+# X 60 Hz
-+# --------------------------------------------
-+# 10 X CR/LF (Auto LF)
-+# X CR only
- #
--wy160-tek|Wyse 160 Tektronix 4010/4014 emulator,
-- cup=\035%{3103}%{91}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037,
-- home=^]8`g @\037, use=wy99gt-tek,
-+# S3 (internal switch) settings:
- #
--# Wyse 370 Tektronix 4010/4014 emulator,
-+# Position Up Dn Description
-+# --------------------------------------------
-+# 1 X Keyclick off
-+# X Keyclick on
-+# --------------------------------------------
-+# 2 X English
-+# 3 X
-+# --------------------------------------------
-+# 2 X German
-+# 3 X
-+# --------------------------------------------
-+# 2 X French
-+# 3 X
-+# --------------------------------------------
-+# 2 X Spanish
-+# 3 X
-+# --------------------------------------------
-+# 4 X Blinking block cursor
-+# 5 X
-+# --------------------------------------------
-+# 4 X Blinking underline cursor
-+# 5 X
-+# --------------------------------------------
-+# 4 X Steady block cursor
-+# 5 X
-+# --------------------------------------------
-+# 4 X Steady underline cursor
-+# 5 X
-+# --------------------------------------------
-+# 6 X Screen blanking timer (ON)
-+# X Screen blanking timer (OFF)
-+# --------------------------------------------
-+# 7 X Page attributes
-+# X Line attributes
-+# --------------------------------------------
-+# 8 X DCD disconnected
-+# X DCD connected
-+# --------------------------------------------
-+# 9 X DSR disconnected
-+# X DSR connected
-+# --------------------------------------------
-+# 10 X DTR Disconnected
-+# X DTR connected
-+# --------------------------------------------
- #
--wy370-tek|Wyse 370 Tektronix 4010/4014 emulator,
-- am, os,
-- cols#80, lines#36,
-- bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s,
-- cup=\035%{775}%{108}%p1%*%{5}%/%-%Py%p2%{64}%*%{4}%+%{5}%/%Px%gy%{32}%/%{31}%&%{32}%+%c%gy%{31}%&%{96}%+%c%gx%{32}%/%{31}%&%{32}%+%c%gx%{31}%&%{64}%+%c\037,
-- cuu1=^K, ff=^L,
-- hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037,
-- home=^]8g @\037,
-- hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037,
-- is2=\E8, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^I, kcuu1=^K,
-- nel=^M^J, u0=\E[?38h\E8, u1=\E[?38l\E)0,
--
--# Vendor-supplied Wyse entries end here.
-+# (tvi925: BSD has <clear=\E*>. I got <is2> and <ri> from there -- esr)
-+tvi925|televideo 925,
-+ OTbs, am, bw, hs, ul,
-+ cols#80, lines#24, xmc#1,
-+ bel=^G, cbt=\EI, clear=^Z, cnorm=\E.4, cr=^M, cub1=^H, cud1=^V,
-+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ cvvis=\E.2, dch1=\EW, dl1=\ER, dsl=\Eh, ed=\EY, el=\ET,
-+ flash=\Eb$<200>\Ed, fsl=^M\Eg, home=^^, ht=^I, hts=\E1,
-+ ich1=\EQ, il1=\EE, ind=^J, invis@, is2=\El\E", kbs=^H, kclr=^Z,
-+ kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER,
-+ ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\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, ri=\Ej, tbc=\E3,
-+ tsl=\Eh\Ef, use=adm+sgr,
-+# TeleVideo 925 from Mitch Bradley <sun!wmb> via BRL
-+# to avoid "magic cookie" standout glitch:
-+tvi925-hi|TeleVideo Model 925 with half intensity standout mode,
-+ xmc@,
-+ kbs=^H, kcub1=^H, kcud1=^J, rmso=\E(, smso=\E), use=tvi925,
-
-+# From: Todd Litwin <litwin@litwin.jpl.nasa.gov> 28 May 1993
-+# Originally Tim Curry, Univ. of Central Fla., <duke!ucf-cs!tim> 5/21/82
-+# for additional capabilities,
-+# The following tvi descriptions from B:pjphar and virus!mike
-+# is for all 950s. It sets the following attributes:
-+# full duplex (\EDF) write protect off (\E()
-+# conversation mode (\EC) graphics mode off (\E%)
-+# white on black (\Ed) auto page flip off (\Ew)
-+# turn off status line (\Eg) clear status line (\Ef\r)
-+# normal video (\E0) monitor mode off (\EX or \Eu)
-+# edit mode (\Er) load blank char to space (\Ee\040)
-+# line edit mode (\EO) enable buffer control (^O)
-+# protect mode off (\E\047) duplex edit keys (\El)
-+# program unshifted send key to send line all (\E016)
-+# program shifted send key to send line unprotected (\E004)
-+# set the following to nulls:
-+# field delimiter (\Ex0\200\200)
-+# line delimiter (\Ex1\200\200)
-+# start-protected field delimiter (\Ex2\200\200)
-+# end-protected field delimiter (\Ex3\200\200)
-+# set end of text delimiter to carriage return/null (\Ex4\r\200)
- #
--#TITLE: TERMINFO ENTRY WY520
--#DATE: 8/5/93
--# The WY520 terminfo is based on the WY285 entry published on the WYSE
--# BBS with the addition of more function keys and special keys.
--#
--# rs1 -> set personality
--# rs2 -> set number of columns
--# rs3 -> set number of lines
--# is1 -> select the proper font
--# is2 -> do the initialization
--# is3 -> If this string is empty then rs3 gets sent.
--#
--# Wyse 520 emulating a vt420 7 bit mode with default ANSI keyboard
--# - The BS key is programmed to generate BS in smcup since
--# is2 doesn't seem to work.
--# - Remove and shift/Remove: delete a character
--# - Insert : enter insert mode
--# - Find : delete to end of file
--# - Select : clear a line
--# - F11, F12, F13: send default sequences (not ESC, BS, LF)
--# - F14 : Home key
--# - Bottom status line (host writable line) is used.
--# - smkx,rmkx are removed because this would put the numeric
--# keypad in Dec application mode which doesn't seem to work
--# with SCO applications.
--#
--wy520|wyse520|wyse 520,
-- am, hs, km, mc5i, mir, 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$<40>, cnorm=\E[34h\E[?25h, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<30>,
-- dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, dsl=\E[0$~,
-- ech=\E[%p1%dX, ed=\E[J$<40>, el=\E[K, el1=\E[1K,
-- enacs=\E)0, fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%d`, ht=^I,
-- hts=\EH, ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>,
-- 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,
-- 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%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- 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,
-+# TVI 950 Switch Setting Reference Charts
- #
--# Wyse 520 with 24 data lines and status (terminal status)
--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,
-+# TABLE 1:
- #
--# Wyse 520 with visual bell.
--wy520-vb|wyse520-vb|wyse 520 with visible bell,
-- flash=\E[30h\E\,\E[30l$<100>, use=wy520,
-+# S1 1 2 3 4 5 6 7 8 9 10
-+# +-----------------------+-----+-----+-----------------------+
-+# | Computer Baud Rate |Data |Stop | Printer Baud Rate |
-+# | |Bits |Bits | |
-+# +------+-----------------------+-----+-----+-----------------------+
-+# | Up | See | 7 | 2 | See |
-+# +------+-----------------------+-----+-----+-----------------------+
-+# | Down | TABLE 2 | 8 | 1 | TABLE 2 |
-+# +------+-----------------------+-----+-----+-----------------------+
- #
--# 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,
-- flash=\E[30h\E\,\E[30l$<100>, use=wy520-w,
-+# S2 1 2 3 4 5 6 7 8 9 10
-+# +-----+-----+-----------------+-----+-----------+-----+-----+
-+# |Edit |Cursr| Parity |Video|Transmiss'n| Hz |Click|
-+# +------+-----+-----+-----------------+-----+-----------+-----+-----+
-+# | Up | Dplx|Blink| See |GonBk| See | 60 | Off |
-+# +------+-----+-----+-----------------+-----+-----------+-----+-----+
-+# | Down |Local|St'dy| TABLE 3 |BkonG| CHART | 50 | On |
-+# +------+-----+-----+-----------------+-----+-----------+-----+-----+
- #
-+# TABLE 2:
- #
--# Wyse 520 emulating a vt420 7 bit mode.
--# The DEL key is programmed to generate BS in is2.
--# With EPC keyboard.
--# - 'End' key will clear till end of line on EPC keyboard
--# - Shift/End : ignored.
--# - Insert : enter insert mode.
--# - 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,
-- kdch1=\177, 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,
-- hs@,
-- dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@,
-- use=wy520-epc,
-+# +-----------+-----+-----+-----+-----+-----------+
-+# | Display | 1 | 2 | 3 | 4 | Baud |
-+# +-----------+-----+-----+-----+-----+ |
-+# | Printer | 7 | 8 | 9 | 10 | Rate |
-+# +-----------+-----+-----+-----+-----+-----------+
-+# | D | D | D | D | 9600 |
-+# | U | D | D | D | 50 |
-+# | D | U | D | D | 75 |
-+# | U | U | D | D | 110 |
-+# | D | D | U | D | 135 |
-+# | U | D | U | D | 150 |
-+# | D | U | U | D | 300 |
-+# | U | U | U | D | 600 |
-+# | D | D | D | U | 1200 |
-+# | U | D | D | U | 1800 |
-+# | D | U | D | U | 2400 |
-+# | U | U | D | U | 3600 |
-+# | D | D | U | U | 4800 |
-+# | U | D | U | U | 7200 |
-+# | D | U | U | U | 9600 |
-+# | U | U | U | U | 19200 |
-+# +-----+-----+-----+-----+-----------+
- #
--# Wyse 520 with visual bell.
--wy520-epc-vb|wyse520-pc-vb|wyse 520 with visible bell and EPC keyboard,
-- flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc,
-+# TABLE 3:
-+# +-----+-----+-----+-----------+
-+# | 3 | 4 | 5 | Parity |
-+# +-----+-----+-----+-----------+
-+# | X | X | D | None |
-+# | D | D | U | Odd |
-+# | D | U | U | Even |
-+# | U | D | U | Mark |
-+# | U | U | U | Space |
-+# +-----+-----+-----+-----------+
-+# X = don't care
- #
--# Wyse 520 in 132-column mode.
--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,
-+# CHART:
-+# +-----+-----+-----------------+
-+# | 7 | 8 | Communication |
-+# +-----+-----+-----------------+
-+# | D | D | Half Duplex |
-+# | D | U | Full Duplex |
-+# | U | D | Block |
-+# | U | U | Local |
-+# +-----+-----+-----------------+
- #
--# 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,
-- flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc-w,
-+# (tvi950: early versions had obsolete ":ma=^Vj^Kk^Hh^Ll^^H:".
-+# I also inserted <ich1> and <kich1>; the :ko: string indicated that <ich>
-+# should be present and all tvi native modes use the same string for this.
-+# Finally, note that BSD has cud1=^V. -- esr)
-+tvi950|televideo 950,
-+ OTbs, am, hs, mir, msgr, xenl, xon,
-+ cols#80, it#8, lines#24, xmc#1,
-+ acsc=b\011c\014d\re\ni\013, bel=^G, cbt=\EI, clear=\E*,
-+ cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, dsl=\Eg\Ef\r, ed=\Ey, el=\Et, flash=\Eb$<200/>\Ed,
-+ fsl=^M, home=^^, ht=^I, hts=\E1, ich1=\EQ, il1=\EE, ind=^J,
-+ invis@,
-+ is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0\Ef\r,
-+ kbs=^H, kcbt=\EI, kclr=\E*, kcub1=^H, kcud1=^V, kcuf1=^L,
-+ kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\Ey, kel=\Et, kf0=^A0\r,
-+ kf1=^A@\r, kf2=^AA\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, mc4=\Ea, mc5=\E`, ri=\Ej, rmacs=^X,
-+ rmir=\Er, smacs=^U, smir=\Eq, tbc=\E3, tsl=\Eg\Ef,
-+ use=adm+sgr,
- #
--# Wyse 520 in 80-column, 36 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,
-+# is for 950 with two pages adds the following:
-+# set 48 line page (\E\\2)
-+# place cursor at page 0, line 24, column 1 (\E-07 )
-+# set local (no send) edit keys (\Ek)
- #
--# Wyse 520 in 80-column, 48 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,
-+# two page 950 adds the following:
-+# when entering ex, set 24 line page (\E\\1)
-+# when exiting ex, reset 48 line page (\E\\2)
-+# place cursor at 0,24,1 (\E-07 )
-+# set duplex (send) edit keys (\El) when entering vi
-+# set local (no send) edit keys (\Ek) when exiting vi
- #
--# Wyse 520 in 132-column, 36 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,
-+tvi950-2p|televideo950 w/2 pages,
-+ is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \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 \011,
-+ rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s,
-+ smkx=\El, use=tvi950,
- #
--# Wyse 520 in 132-column, 48 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$|,
-- use=wy520-48,
-+# is for 950 with four pages adds the following:
-+# set 96 line page (\E\\3)
-+# place cursor at page 0, line 24, column 1 (\E-07 )
- #
-+# four page 950 adds the following:
-+# when entering ex, set 24 line page (\E\\1)
-+# when exiting ex, reset 96 line page (\E\\3)
-+# place cursor at 0,24,1 (\E-07 )
- #
--# Wyse 520 in 80-column, 36 lines with 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,
-+tvi950-4p|televideo950 w/4 pages,
-+ is2=\EDF\EC\Ed\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \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 \011,
-+ rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s,
-+ smkx=\El, use=tvi950,
- #
--# Wyse 520 in 80-column, 48 lines with 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,
-+# <is2> for reverse video 950 changes the following:
-+# set reverse video (\Ed)
- #
--# Wyse 520 in 132-column, 36 lines with 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,
-+# set vb accordingly (\Ed ...delay... \Eb)
- #
--# Wyse 520 in 132-column, 48 lines with 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$|,
-- use=wy520-48pc,
--
--# From: John Gilmore <hoptoad!gnu@lll-crg.arpa>
--# (wyse-vp: removed <if=/usr/share/tabset/wyse-adds>, there's no such
--# file and we don't know what <hts> is -- esr)
--wyse-vp|Wyse 50 in ADDS Viewpoint emulation mode with "enhance" on,
-- OTbs, am,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, 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=^J,
-- is2=\E`\:\E`9\017\Er, kbs=^H, kcub1=^U, kcud1=^J, kcuf1=^F,
-- kcuu1=^Z, khome=^A, ll=^A^Z, nel=^M^J, rmir=\Er, rmso=^O,
-- 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,
-- is2=\E[1;24r\E[?10;3l\E[?1;25h\E[4l\E[m\E(B\E=,
-- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- khome=\EOH, rmkx=\E[?1l\E>$<10/>, smkx=\E[?1h\E=$<10/>,
-- use=wy75,
--
--# From: Eric Freudenthal <freudent@eric.ultra.nyu.edu>
--wy100q|Wyse 100 for Quotron,
-- OTbs,
-- cols#80, lines#24, xmc#1,
-- cbt=\EI, clear=^Z, cub1=^H, cud1=^J, 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=^J,
-- kcuf1=^L, kcuu1=^K, ri=\Ej, rmir=\Er, smir=\Eq, use=adm+sgr,
-+tvi950-rv|televideo950 rev video,
-+ flash=\Ed$<200/>\Eb,
-+ is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \017\011\El\E016\E004\Ex0\0\0\Ex1\0\0\Ex2\0\0\011\Ex3\0\0\Ex4\r\0,
-+ use=tvi950,
-
--#### Kermit terminal emulations
--#
--# Obsolete Kermit versions may be listed in the section describing obsolete
--# non-ANSI terminal emulators later in the file.
--#
-+# tvi950-rv-2p uses the appropriate entries from 950-2p and 950-rv
-+tvi950-rv-2p|televideo950 rev video w/2 pages,
-+ flash=\Ed$<200/>\Eb,
-+ is2=\EDF\EC\Eb\EG0\Eg\Er\EO\E'\E(\E%\Ew\EX\Ee \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,
-+ rmcup=\E\\2\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s,
-+ smkx=\El, use=tvi950,
-
--# KERMIT standard all versions.
--# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi.
--# (kermit: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr)
--# From: greg small <gts@populi.berkeley.edu> 9-25-84
--kermit|standard kermit,
-- OTbs,
-- cols#80, lines#24,
-- clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
-- el=\EK, home=\EH, is2=K0 Standard Kermit 9-25-84\n,
-- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^,
--kermit-am|standard kermit plus auto-margin,
-- am,
-- is2=K1 Standard Kermit plus Automatic Margins\n,
-- use=kermit,
--# IBMPC Kermit 1.2.
--# Bugs: <ed>, <el>: do not work except at beginning of line! <clear> does
--# not work, but fake with :cl=\EH\EJ (since :cd=\EJ: works at beginning of
--# line).
--# From: greg small <gts@populi.berkeley.edu> 8-30-84
--pckermit|pckermit12|UCB IBMPC Kermit 1.2,
-- am,
-- lines#25,
-- clear=\EH\EJ, ed@, el@,
-- is2=K2 UCB IBMPC Kermit 1.2 8-30-84\n, use=kermit,
--# IBMPC Kermit 1.20
--# Cannot use line 25, now acts funny like ansi special scrolling region.
--# Initialization must escape from that region by cursor position to line 24.
--# Cannot use character insert because 1.20 goes crazy if insert at col 80.
--# Does not use :am: because autowrap is lost when kermit dropped and restarted.
--# From: greg small <gts@populi.berkeley.edu> 12-19-84
--pckermit120|UCB IBMPC Kermit 1.20,
-- it#8, lines#24,
-- cud1=\EB, cvvis=\EO\Eq\EEK3, dch1=\EN, dl1=\EM, ht=^I,
-- il1=\EL,
-- is2=\EO\Eq\EJ\EY7 K3 UCB IBMPC Kermit 1.20 12-19-84\n,
-- rmir@, rmso=\Eq, smir@, smso=\Ep, use=kermit,
--# MS-DOS Kermit 2.27 for the IBMPC
--# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi.
--# Cannot use line 25, now acts funny like ansi special scrolling region.
--# Initialization must escape from that region by cursor position to line 24.
--# Does not use am: because autowrap is lost when kermit dropped and restarted.
--# Reverse video for standout like H19.
--# (msk227: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr)
--# From: greg small <gts@populi.berkeley.edu> 3-17-85
--msk227|mskermit227|MS-DOS Kermit 2.27 for the IBMPC,
-- OTbs, am@,
-+# tvi950-rv uses the appropriate entries from 950-4p and 950-rv
-+tvi950-rv-4p|televideo950 rev video w/4 pages,
-+ flash=\Ed$<200/>\Eb,
-+ is2=\EDF\EC\Eb\EG0\Er\EO\E'\E(\E%\Ew\EX\Ee \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,
-+ rmcup=\E\\3\E-07\s, rmkx=\Ek, smcup=\E\\1\E-07\s,
-+ smkx=\El, use=tvi950,
-+# From: Andreas Stolcke <stolcke@icsi.berkeley.edu>
-+# (tvi955: removed obsolete ":ma:=^Vj^Kk^Hh^Ll^^H";
-+# removed incorrect (and overridden) ":do=^J:"; fixed broken continuations in
-+# the :rs: string, inserted the <ich> implied by the termcap :ko: string. Note
-+# the :ko: string had :cl: in it, which means that one of the original
-+# <clear=\E*>, <kclr=\EY> had to be wrong; set <kclr=\E*> because that's what
-+# the 950 has. Finally, corrected the <kel> string to match the 950 and what
-+# ko implies -- esr)
-+# If the BSD termcap file was right, <cup=\E=%p1%{32}%+%c%p2%{32}%+%c> would
-+# also work.
-+tvi955|televideo 955,
-+ OTbs, mc5i, msgr@,
-+ it#8, xmc@,
-+ acsc=0_`RjHkGlFmEnIoPqKsQtMuLvOwNxJ, blink=\EG2,
-+ civis=\E.0, cnorm=\E.2, cud1=^V, cup=\E[%i%p1%d;%p2%dH,
-+ cvvis=\E.1, dim=\E[=5h, ind@, invis=\EG1,
-+ is2=\E[=3l\EF1\Ed\EG0\E[=5l\E%\El, kctab=\E2, khts=\E1,
-+ knp=\EK, kpp=\EJ, krmir=\EQ, ktbc=\E3, mc0=\EP, rmacs=\E%%,
-+ rmam=\E[=7l, rmxon=^N,
-+ rs1=\EDF\EC\Eg\Er\EO\E'\E(\Ew\EX\Ee \017\E0P\E6\0\E0p\E4\0\Ef\r,
-+ sgr0=\EG0\E[=5l, smacs=\E$, smam=\E[=7h, smxon=^O,
-+ use=tvi950,
-+tvi955-w|955-w|televideo955 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,
-+ 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
-+# (tvi970: removed ":sg#0:"; removed <rmso>=\E[m, <rmul>=\E[m;
-+# added <am>/<csr>/<home>/<hpa>/<vpa>/<smcup>/<rmcup> from BRL.
-+# 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,
-+ OTbs, OTpt, am, da, db, mir, msgr,
- cols#80, it#8, lines#24,
-- clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA,
-- cvvis=\EO\Eq\EG\EwK4, dch1=\EN, dl1=\EM, ed=\EJ, el=\EK,
-- home=\EH, ht=^I, il1=\EL,
-- is2=\EO\Eq\EG\Ew\EJ\EY7 K4 MS Kermit 2.27 for the IBMPC 3-17-85\n,
-- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rc=\Ek,
-- rmir=\EO, rmso=\Eq, sc=\Ej, smir=\E@, smso=\Ep,
--# MS-DOS Kermit 2.27 with automatic margins
--# From: greg small <gts@populi.berkeley.edu> 3-17-85
--msk227am|mskermit227am|UCB MS-DOS Kermit 2.27 with automatic margins,
-- am,
-- cvvis=\EO\Eq\EG\EvK5,
-- is2=\EO\Eq\EG\Ev\EJ\EY7 K5 MS Kermit 2.27 +automatic margins 3-17-85\n,
-- use=msk227,
--# MS-DOS Kermit 2.27 UCB 227.14 for the IBM PC
--# Automatic margins now default. Use ansi <sgr> for highlights.
--# Define function keys.
--# (msk22714: removed obsolete ":kn#10:" -- esr)
--# From: greg small <gts@populi.berkeley.edu> 3-17-85
--msk22714|mskermit22714|UCB MS-DOS Kermit 2.27 UCB 227.14 IBM PC,
-- am,
-- bold=\E[1m, cvvis=\EO\Eq\EG\EvK6,
-- is2=\EO\Eq\EG\Ev\EJ\EY7 K6 MS Kermit 2.27 UCB 227.14 IBM PC 3-17-85\n,
-- kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6,
-- kf7=\E7, kf8=\E8, kf9=\E9, rev=\E[7m, rmso=\E[m, rmul=\E[m,
-- sgr0=\E[m, smso=\E[1m, smul=\E[4m, use=mskermit227,
--# This was designed for a VT320 emulator, but it is probably a good start
--# at support for the VT320 itself.
--# Please send changes with explanations to bug-gnu-emacs@prep.ai.mit.edu.
--# (vt320-k3: I added <rmam>/<smam> based on the init string -- esr)
--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=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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[0$~, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
-- flash=\E[?5h\E[?5l\E[?5h\E[?5l\E[?5h\E[?5l,
-- fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
-- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- is2=\E>\E F\E[?1l\E[?7h\E[r\E[2$~, kbs=^H, kcub1=\EOD,
-- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdl1=\E[3~, kf0=\E[21~,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
-- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kich1=\E[2~, knp=\E[6~,
-- kpp=\E[5~, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, nel=^M^J, rc=\E8,
-- rev=\E[7m, ri=\EM, rin=\E[%p1%dL, rmacs=\E(B, rmam=\E[?7l,
-- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
-- rs1=\E(B\E)B\E>\E F\E[4;20l\E[12h\E[?1;5;6;38;42l\E[?7;25h\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,
--# 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,
-- 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=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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\E[?5l, fsl=\E[$}, home=\E[H, ht=^I, hts=\EH,
-- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L$<3/>, ind=\ED,
-- is2=\E>\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,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
-- kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2,
-- lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m,
-- rf=/usr/share/tabset/vt100, ri=\EM, rmacs=^O,
-- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
-- 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,
--
--######## NON-ANSI TERMINAL EMULATIONS
--#
-+ acsc=, cbt=\E[Z, clear=\E[H\E[2J, csr=\E[%i%p1%d;%p2%dr,
-+ cub1=^H, cud1=\ED, cuf1=\E[C, cup=\E[%i%p1%d;%p2%df,
-+ cuu1=\EM, cvvis=\E[1Q, dch1=\E[P, dl1=\E[M, dsl=\Eg\Ef\r,
-+ ed=\E[J, el=\E[K, flash=\E[5m$<200/>\E[m, home=\E[H,
-+ hpa=\E[%i%p1%dG, ht=^I, il1=\E[L,
-+ is2=\E<\E[?21l\E[19h\E[1Q\E[10l\E[7l\E[H\E[2J,
-+ kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kf1=\E?a, 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[H, ri=\EM, rmacs=\E(B,
-+ rmam=\E[?7h, rmcup=, rmir=\E[4l, rmso=\E[m, rmul=\E[m,
-+ 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,
-+ 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,
-+ 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
-+# per line (rather than 40), Esc K chooses the normal character set. Not sure
-+# padding is needed, but adapted from the tvi920c termcap. The <smso> and
-+# <smul> strings are klutzy, but at least use no screen space.
-+# (tvipt: removed obsolete ":ma=^Kk^Ll^R^L:". I wish we knew <rmam>,
-+# its absence means <smam>=\Ev isn't safe to use. -- esr)
-+# 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,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ cbt=\EI, clear=^Z, cub1=^H, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER$<5*>,
-+ ed=\EY, el=\ET, home=^^, if=/usr/share/tabset/stdcrt,
-+ il1=\EE$<5*>, is2=\Ev\Eu\EK, kbs=^H, kcub1=^H, kcud1=^J,
-+ 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,
-+ 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,
-+ acsc='r0_jhkglfmeniopqksqtmulvownxj, bel=^G,
-+ blink=\EG2, bold=\EG\,, cbt=\EI, civis=\E.0, clear=^Z,
-+ cnorm=\E.3, cr=^M, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD,
-+ cub1=^H, cud=\E[%p1%dB, cud1=^V, cuf=\E[%p1%dC, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu=\E[%p1%dA,
-+ cuu1=^K, cvvis=\E.2, dch=\E[%p1%dP, dch1=\EW, dim=\EGp,
-+ dl=\E[%p1%dM, dl1=\ER, dsl=\E_30\r, ech=\E[%p1%d@, ed=\EY,
-+ el=\ET, flash=\Eb$<15>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1,
-+ ich=\E[%p1%d@, if=/usr/share/tabset/stdcrt,
-+ il=\E[%p1%dL, il1=\EE, ind=^J, indn=\E[%p1%dS, invis=\EG1,
-+ ip=$<3>,
-+ is1=\E"\E%\E'\E(\EG@\EO\EX\E[=5l\E[=6l\E[=7h\Ed\Er,
-+ is2=\EF2\EG0\E\\L, is3=\E<\E[=4l\E[=8h, kHOM=\E\s\s\s,
-+ kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K,
-+ kdch1=\EW, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r,
-+ kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r,
-+ kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^, ll=\E[25;1H,
-+ mc0=\E[0;0i, mc4=\Ea, mc5=\E`, nel=^M^J,
-+ pfkey=\E|%p1%{48}%+%c3%p2%s\031,
-+ pfloc=\E|%p1%{48}%+%c2%p2%s\031,
-+ pfx=\E|%p1%{48}%+%c1%p2%s\031,
-+ pln=\E_%p1%{63}%+%c%p2%s\r, prot=\E&,
-+ rep=\E[%p2%db%p1%c, rev=\EG4,
-+ rf=/usr/share/tabset/stdcrt, ri=\Ej, rin=\E[%p1%dT,
-+ rmacs=\E%%, rmam=\E[=7l, rmcup=\E.3\Er\E[1;25r\E[25;0H,
-+ rmdc=\0, rmir=\Er, rmln=\E[4;1v, rmso=\EG0, rmul=\EG0,
-+ rmxon=^N, rs1=\EC\EDF\E[0;0v\E[8;1v\E[=65l,
-+ rs2=\E.b\E[10;20v\E[14;1v\E[3;0v\E[7;0v\E[=11.h\E[=12.h\E[=13.h\E[=14.h\E[=15l\E[=20h\E[=60l\E[=61h\E[=9l\E[=10l\E[=21l\E[=23l\E[=3l\E_40\E_50\En\Ew\Ee \Ex0\0\0\Ex1\0\0\Ex2\0\0\Ex3\0\0\Ex4\0\0\E1,
-+ rs3=\E[=19h\E.3\E9\E0O\0\0\0\0\0\E0o\0\0\0\0\0\E0J\177\0\0\0\0,
-+ sgr=\EG0%?%p1%t\EGt%;%?%p2%t\EG8%;%?%p3%t\EG4%;%?%p4%t\EG2%;%?%p5%t\EGp%;%?%p6%t\EG\,%;%?%p7%t\EG1%;%?%p8%t\E&%;%?%p9%t\E$%e\E%%%;,
-+ sgr0=\EG0\E%, smacs=\E$, smam=\E=7h, smcup=\E.2, smdc=\Er,
-+ smir=\Eq, smln=\E[4;2v, smso=\EGt, smul=\EG8, smxon=^O,
-+ tbc=\E3, tsl=\E[4;1v\E_30, uc=\EG8\EG0,
-
--#### Avatar
--#
--# These entries attempt to describe Avatar, a terminal emulation used with
--# MS-DOS bulletin-board systems. It was designed to give ANSI-like
--# capabilities, but with cheaper (shorter) control sequences. Messy design,
--# excessively dependent on PC idiosyncracies, but apparently rather popular
--# in the BBS world.
--#
--# No color support. Avatar doesn't fit either of the Tektronix or HP color
--# models that terminfo knows about. An Avatar color attribute is the
--# low 7 bits of the IBM-PC display-memory attribute. Bletch.
-+#### Visual (vi)
- #
--# I wrote these entries while looking at the Avatar spec. I don't have
--# the facilities to test them. Let me know if they work, or don't.
-+# In September 1993, Visual Technology of Westboro, Massachusetts,
-+# merged with White Pine Software of Nashua, New Hampshire.
- #
--# Avatar escapes not used by these entries (because maybe you're smarter
--# and more motivated than I am and can figure out how to wrap terminfo
--# around some of them, and because they are weird enough to be funny):
--# level 0:
--# ^L -- clear window/reset current attribute to default
--# ^V^A%p1%c -- set current color attribute, parameter decodes as follows:
-+# White Pine Software may be contacted at +1 603/886-9050.
-+# Or visit White Pine on the World Wide Web at URL http://www.wpine.com.
- #
--# bit: 6 5 4 3 2 1 0
--# | | | | |
--# +---+---+ | +---+---+
--# | | |
--# | | foreground color
--# | foreground intensity
--# background color
--# level 0+:
--# ^V^J%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) up by p1 lines
--# ^V^K%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) down by p1 lines
--# ^V^L%p1%c%p2%c%p3%c -- clear p2 lines and p3 cols w/attr %p1
--# ^V^M%p1%c%p2%c%p3%c%p4%c -- fill p3 lines & p4 cols w/char p2+attr %p1
--# (^V^L and ^V^M set the current attribute as a side-effect.)
--# ^V ^Y <a> [...] <c> -- repeat pattern. <a> specifies the number of bytes
--# in the pattern, <c> the number of times the pattern
--# should be repeated. If either value is 0, no-op.
--# The pattern can contain Avatar console codes,
--# including other ^V ^Y patterns.
--# level 1:
--# ^V^O -- clockwise mode on; turn print direction right each time you
--# hit a window edge (yes, really). Turned off by CR
--# ^V^P -- no-op
--# ^V^Q%c -- query the driver
--# ^V^R -- driver reset
--# ^V^S -- Sound tone (PC-specific)
--# ^V^T -- change highlight at current cursor poition to %c
--# ^V^U%p1%c%p2%c -- highlight window <a> with attribute <b>
--# ^V^V%p1%c%p2%c%p3%c%p4%c%p5%c
--# -- define window
--#
--# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995
--# (The <blink>/<bold>/<rev>/<smacs>/<smul>/<smso> capabilities exist only to
--# tell ncurses that the corresponding highlights exist; it should use <sgr>,
--# which is the only method that will actually work for multiple highlights.)
--#
--# Update by TD - 2004: half of this was inconsistent. Found documentation
--# and repaired most of the damage. sgr0 is probably incorrect, but the
--# available documentation gives no clues for a workable string.
--avatar0|avatar terminal emulator level 0,
-- am, bce, msgr,
-- cols#80, it#8, lines#25,
-- blink=^V^B, bold=^V^A^P, cr=^M, cub1=^V^E, cud1=^V^D,
-- cuf1=^V^F, cup=\026\010%p1%c%p2%c, cuu1=^V^C, el=^V^G,
-- ind=^J, invis=^V^A\0, rep=\031%p1%c%p2%c, rev=^V^Ap,
-- rmacs@, rs2=^L,
-- sgr=%?%p1%p2%|%p3%|%p6%|%p7%|%t\026\001%?%p7%t%{128}%e%{0}%?%p1%t%{112}%|%;%?%p2%t%{1}%|%;%?%p3%t%{112}%|%;%?%p6%t%{16}%|%;%;%c%;%?%p4%t\026\002%;,
-- sgr0=^V^A^G, smacs@, smso=^V^Ap, smul=^V^A^A,
-- use=klone+acs,
--# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995
--avatar0+|avatar terminal emulator level 0+,
-- dch1=^V^N, rmir=\026\n\0\0\0\0, smir=^V^I, use=avatar0,
--# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995
--avatar|avatar1|avatar terminal emulator level 1,
-- civis=^V'^B, cnorm=^V'^A, cvvis=^V^C, dl1=^V-, il1=^V+,
-- rmam=^V", rmir=^V^P, smam=^V$, use=avatar0+,
-
--#### RBcomm
--#
--# RBComm is a lean and mean terminal emulator written by the Interrupt List
--# maintainer, Ralf Brown. It was fairly popular in the late DOS years (early
--# '90s), especially in the BBS world, and still has some loyal users due to
--# its very small memory footprint and to a cute macro language.
--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=^M, 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,
-- is2=\017\035\E(B\E)0\E[?7h\E[?3l\E[>8g, kbs=^H,
-- kcub1=^B, kcud1=^N, kcuf1=^F, kcuu1=^P, khome=^A, nel=^M\ED,
-- rc=\E8, rep=\030%p1%c%p2%c, rev=^R, ri=\EM, rmcup=, rmdc=,
-- 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,
--rbcomm-nam|IBM PC with RBcomm without autowrap,
-- am@,
-- bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J,
-- is2=\017\035\E(B\E)0\E[?7l\E[?3l\E[>8g, kbs=^H,
-- kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm,
--rbcomm-w|IBM PC with RBcomm in 132 column mode,
-- cols#132,
-- bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J,
-- is2=\017\035\E(B\E)0\E[?7h\E[?3h\E[>8g, kbs=^H,
-- kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm,
-+# Visual 50 from Beau Shekita, BTL-Whippany <whuxlb!ejs>
-+# Recently I hacked together the following termcap for Visual
-+# Technology's Visual 50 terminal. It's a slight modification of
-+# the vt52 termcap.
-+# It's intended to run when the Visual 50 is in vt52 emulation mode
-+# (I know what you're thinking; if it's emulating a vt52, then why
-+# another termcap? Well, it turns out that the Visual 50 can handle
-+# <dl1> and db(?) among other things, which the vt52 can't)
-+# The termcap works OK for the most part. The only problem is on
-+# character inserts. The whole line gets painfully redrawn for each
-+# character typed. Any suggestions?
-+# 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,
-+ OTbs, OTpt, am, da, db, msgr,
-+ cols#80, it#8, lines#24,
-+ OTnl=^J, bel=^G, cbt=\Ez$<4/>, clear=\EH\EJ, cr=^M, cub1=^H,
-+ cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-+ cuu1=\EA, dl1=\EM$<3*/>, ed=\EJ, el=\EK$<16/>, home=\EH,
-+ ht=^I, il1=\EL, ind=^J, kbs=^H, kcub1=\ED, kcud1=\EB,
-+ kcuf1=\EC, kcuu1=\EA, kf1=\EP, kf2=\EQ, kf3=\ER, kf4=\EV,
-+ kf5=\EE, kf6=\E], kf7=\EL, kf8=\Ev, kf9=\EM, khome=\EH,
-+ nel=^M^J, ri=\EI, rmso=\ET, rmul=\EW, smso=\EU, smul=\ES,
-+# this one was BSD & SCO's vi50
-+vi50adm|visual 50 in adm3a mode,
-+ am, msgr,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\EM,
-+ ed=\Ek, el=\EK, home=\EH, ht=^I, il1=\EL, ind=^J, kbs=^H,
-+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome=\EH,
-+ rmso=\ET, smso=\EU,
-+# From: Jeff Siegal <jbs@quiotix.com>
-+vi55|Visual 55,
-+ OTbs, am, mir, msgr,
-+ cols#80, it#8, lines#24,
-+ clear=\Ev, csr=\E_%p1%{65}%+%c%p2%{65}%+%c, cub1=^H,
-+ cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-+ cuu1=\EA, dch1=\Ew, dl1=\EM, ed=\EJ, el=\EK, home=\EH, ht=^I,
-+ il1=\EL, is2=\Ev\E_AX\Eb\EW\E9P\ET, kbs=^H, kcub1=\ED,
-+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EI, rmir=\Eb, rmso=\ET,
-+ smir=\Ea, smso=\EU,
-
--######## LCD DISPLAYS
--#
-+# Visual 200 from BRL
-+# The following switch settings are assumed for normal operation:
-+# FULL_DUPLEX SCROLL CR
-+# AUTO_NEW_LINE_ON VISUAL_200_EMULATION_MODE
-+# Other switches may be set for operator convenience or communication
-+# requirements.
-+# Character insertion is kludged in order to get around the "beep" misfeature.
-+# (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,
-+ OTbs, OTpt, am, mir, msgr,
-+ OTkn#10, cols#80, it#8, lines#24,
-+ acsc=, bel=^G, cbt=\Ez, clear=\Ev, cnorm=\Ec, cr=^M, cub1=^H,
-+ cud1=^J, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-+ cuu1=\EA, cvvis=\Ed, dch1=\EO, dim=\E4, dl1=\EM, ed=\Ey,
-+ el=\Ex, home=\EH, ht=^I, hts=\E1, il1=\EL, ind=^J, invis=\Ea,
-+ kbs=^H, kclr=\Ev, kctab=\E2, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-+ kcuu1=\EA, kdch1=\EO, kdl1=\EM, ked=\EJ, kel=\Et, 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, khome=\EH, khts=\E1, kich1=\Ei,
-+ kil1=\EL, krmir=\Ej, mc0=\EH\E], mc4=\EX, mc5=\EW, ri=\EI,
-+ rmacs=\EG, rmkx=\E>, rmso=\E3,
-+ rs1=\E3\Eb\Ej\E\El\EG\Ec\Ek\EX, sgr0=\E3\Eb, smacs=\EF,
-+ smkx=\E=, smso=\E4, tbc=\Eg,
-+# The older Visuals didn't come with function keys. This entry uses
-+# <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,
-+ 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,
-+ cnorm@, cvvis@, ri@, rmso=\E3, smso=\E4, use=vi200,
-
--#### Matrix Orbital
--# from: Eric Z. Ayers (eric@ale.org)
--#
--# Matrix Orbital 20x4 LCD display
--# Command Character is 0xFE (decimal 254, octal 376)
--#
--# On this device, cursor addressability isn't possible. The LCD expects:
--# 0xfe G <col> <row>
--# for cup: %p1 == row and %p2 is column
--#
--# This line:
--# cup=\376G%p2%c%p1%c
--# LOOKS like it will work, but sometimes only one of the two numbers is sent.
--# See the terminfo (5) manpage commented regarding 'Terminals which use "%c"'.
-+# the function keys are programmable but we don't reprogram them to their
-+# default values with <is2> because programming them is very verbose. maybe
-+# 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,
-+ am, bw, mir, xenl,
-+ cols#80, lines#24,
-+ bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B,
-+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-+ dch1=\E[P$<40>, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-+ il1=\E[L, ind=^J,
-+ is2=\E[7s\E[2;3;4;20;?5;?6l\E[12;?7h\E[1Q\E[0;1(D\E[8s,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kf1=\E_A\E\\, kf2=\E_B\E\\, kf3=\E_C\E\\, kf4=\E_D\E\\,
-+ kf5=\E_E\E\\, kf6=\E_F\E\\, kf7=\E_G\E\\, kf8=\E_H\E\\,
-+ kf9=\E_I\E\\, khome=\E[H, ri=\EM, rmam=\E[?7l, rmir=\E[4l,
-+ rmso=\E[m, rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h,
-+ 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),
-+ 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.
-+# The best place to look for the escape sequences is page A1-1 of the
-+# Visual 500 manual. The initialization sequence given here may be
-+# overkill, but it does leave out some of the initializations which can
-+# be done with the menus in set-up mode.
-+# The :xp: line below is so that emacs can understand the padding requirements
-+# 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,
-+ am, mir, msgr,
-+ cols#80, it#8, lines#33,
-+ acsc=, cbt=\Ez$<4/>, clear=\Ev$<6*/>, cr=^M,
-+ csr=\E(%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=\EB,
-+ cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA,
-+ dch1=\EO$<3*/>, dl1=\EM$<3*/>, ed=\Ey$<3*/>,
-+ el=\Ex$<16/>, home=\EH, ht=\011$<8/>, il1=\EL\Ex$<3*/>,
-+ ind=^J,
-+ is2=\E3\E\001\E\007\E\003\Ek\EG\Ed\EX\El\E>\Eb\E\\,
-+ kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-+ khome=\EH, nel=^M^J, 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,
-+# and with 33 lines. clear screen is modified here to
-+# also clear the graphics.
-+vi550|visual 550 ansi x3.64,
-+ lines#33,
-+ clear=\030\E[H\E[2J, use=vi300,
-+
-+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,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
-+ dsl=\EP2;1~\E\\, ed=\E[J, el=\E[K, fsl=\E\\, il1=\E[L,
-+ ind=\ED, is1=\E>\E[?3l\E[?4l\E[?7h\E[?8h\E[1;24r,
-+ rev=\E[7m, ri=\EM, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m,
-+ sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m, tsl=\EP2~,
-+ use=vt100,
-+
-+#### Wyse (wy)
- #
--# Alas, there is no cursor upline capability on this display.
-+# Wyse Technology
-+# 3471 North First Street
-+# San Jose, CA 95134
-+# Vox: (408)-473-1200
-+# Fax: (408) 473-1222
-+# Web: http://www.wyse.com
- #
--# These entries add some 'sanity stuff' to the clear function. That is, it
--# does a 'clear' and also turns OFF auto scroll, turns ON Auto Line Wrapping,
--# and turns off the cursor blinking and stuff like that.
-+# Wyse sales can be reached by phone at 1-800-GET-WYSE. Tech support is at
-+# (800)-800-WYSE (option 5 gets you a human). There's a Web page at the
-+# obvious address, <http://www.wyse.com>. They keep terminfo entries at
-+# <http://www.wyse.co.uk/support/appnotes/idxappnt.htm>.
- #
--# NOTE: calling 'beep' turns on the backlight (bell)
--# NOTE: calling 'flash' turns it on and back off (visual bell)
-+# Wyse bought out Link Technology, Inc. in 1990 and closed it down in 1995.
-+# They now own the Qume and Amdek brands, too. So these are the people to
-+# talk with about all Link, Qume, and Amdek terminals.
- #
--MtxOrb|Generic Matrix Orbital LCD display,
-- bel=\376B^A, clear=\376X\376C\376R\376K\376T,
-- cnorm=\376K\376T, cub1=\376L, cuf1=\376M,
-- flash=\376B\001$<200>\376F, home=\376H,
--MtxOrb204|20x4 Matrix Orbital LCD display,
-- cols#20, lines#4, use=MtxOrb,
--MtxOrb162|16x2 Matrix Orbital LCD display,
-- cols#16, lines#2, use=MtxOrb,
--# The end
--
--######## OLDER TERMINAL TYPES
-+# These entries include a few small fixes.
-+# I canceled the bel capacities in the vb entries.
-+# I made two trivial syntax fixes in the wyse30 entry.
-+# I made some entries relative to adm+sgr.
- #
--# This section is devoted to older commercial terminal brands that are now
--# discontinued, but known to be still in use or represented by emulations.
- #
-+# Note: The wyse75, wyse85, and wyse99 have been discontinued.
-
--#### AT&T (att, tty)
-+# Although the Wyse 30 can support more than one attribute
-+# it requires magic cookies to do so. Many applications do not
-+# function well with magic cookies. The following terminfo uses
-+# the protect mode to support one attribute (dim) without cookies.
-+# If more than one attribute is needed then the wy30-mc terminfo
-+# should be used.
- #
--# This section also includes Teletype-branded VDTs.
-+wy30|wyse30|Wyse 30,
-+ am, bw, hs, mc5i, mir, msgr, xon,
-+ cols#80, lh#1, lines#24, lw#8, ma#1, nlab#8, wsl#45,
-+ acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI,
-+ civis=\E`0, clear=\E+$<80>, cnorm=\E`1, cr=^M, cub1=^H,
-+ cud1=^J, cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c,
-+ cuu1=^K, dch1=\EW$<10>, dim=\E`7\E), dl1=\ER$<1>,
-+ dsl=\EF\r, ed=\EY$<80>, el=\ET, flash=\E`8$<100/>\E`9,
-+ fsl=^M, home=^^, ht=\011$<1>, hts=\E1, il1=\EE$<2>,
-+ ind=\n$<2>, ip=$<2>, is2=\E'\E(\E\^3\E`9\016\024,
-+ kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L,
-+ kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kent=\E7,
-+ kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r, kf5=^AD\r,
-+ kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=^^, kich1=\EQ,
-+ kil1=\EE, knp=\EK, kpp=\EJ, krpl=\Er, ll=^^^K, mc0=\EP, mc4=^T,
-+ mc5=^X, nel=^M^J, pfx=\Ez%p1%{63}%+%c%p2%s\177,
-+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), ri=\Ej$<3>,
-+ rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(,
-+ sgr=%?%p1%p5%p8%|%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;,
-+ sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10,
-+ smso=\E`7\E), tbc=\E0, tsl=\EF,
- #
--# The AT&T/Teletype terminals group was sold to SunRiver Data Systems (now
--# Boundless Technologies); for details, see the header comment on the ADDS
--# section.
-+# This terminal description uses the non-hidden attribute mode
-+# (with magic cookie).
- #
--# These are AT&T's official terminfo entries. All-caps aliases have been
--# removed.
-+# (wy30-mc: added <smcup> to suppress tic warning --esr)
-+wy30-mc|wyse30-mc|wyse 30 with magic cookies,
-+ msgr@,
-+ ma@, xmc#1,
-+ blink=\EG2, dim=\EGp, prot=\EG0\E), rmacs=\EG0\EH\003,
-+ rmcup=\EG0, rmso=\EG0,
-+ sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;,
-+ sgr0=\EG0\E(\EH\003, smacs=\EG0\EH\002, smcup=,
-+ smso=\EG4, use=wy30, use=adm+sgr,
-+# The mandatory pause used by <flash> does not work with
-+# 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,
-+ bel@, use=wy30,
- #
--att2300|sv80|AT&T 2300 Video Information Terminal 80 column mode,
-- am, eo, mir, msgr, xon,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=\E[H\E[J, cr=^M, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-- el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcbt=\E[Z, kclr=\E[J,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P,
-- kdl1=\E[M, kf1=\E[1r, kf10=\E[10r, kf11=\E[11r,
-- kf12=\E[12r, kf13=\E[13r, kf14=\E[14r, kf15=\E[15r,
-- kf16=\E[16r, kf2=\E[2r, kf3=\E[3r, kf4=\E[4r, kf5=\E[5r,
-- kf6=\E[6r, kf7=\E[7r, kf8=\E[8r, kf9=\E[9r, khome=\E[H,
-- kich1=\E[@, kil1=\E[L, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
-- rev=\E[7m, rmir=\E[4l, rmso=\E[m, sgr0=\E[m, smir=\E[4h,
-- smso=\E[7m,
--att2350|AT&T 2350 Video Information Terminal 80 column mode,
-- mc0@, mc4@, mc5@, use=att2300,
--
--# Must setup RETURN KEY - CR, REC'VD LF - INDEX.
--# Seems upward compatible with vt100, plus ins/del line/char.
--# On sgr, the protection parameter is ignored.
--# No check is made to make sure that only 3 parameters are output.
--# standout= reverse + half-intensity = 3 | 5.
--# bold= reverse + underline = 2 | 3.
--# note that half-bright blinking doesn't look different from normal blinking.
--# NOTE:you must program the function keys first, label second!
--# (att4410: a BSD entry has been seen with the following capabilities:
--# <is2=\E[?6l>, <kf1=\EOc>, <kf2=\EOd>, <kf3=\EOe>, <kf4=\EOg>,
--# <kf6=\EOh>, <kf7=\EOi>, <kf8=\EOj>, -- esr)
--att5410v1|att4410v1|tty5410v1|AT&T 4410/5410 80 columns - version 1,
-- am, hs, mir, msgr, xon,
-- cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80,
-- acsc=++\,\,--..00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[2;7m, clear=\E[H\E[J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dim=\E[2m,
-- dl1=\E[M, ed=\E[J, el=\E[K, fsl=\E8, home=\E[H, ht=^I,
-- ich1=\E[@, il1=\E[L, ind=^J, invis=\E[8m, is1=\E[?3l\E)0,
-- is3=\E[1;03q f1 \EOP\E[2;03q f2 \EOQ\E[3;03q f3 \EOR\E[4;03q f4 \EOS\E[5;03q f5 \EOT\E[6;03q f6 \EOU\E[7;03q f7 \EOV\E[8;03q f8 \EOW,
-- kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT,
-- kf6=\EOU, kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H,
-- ll=\E[24H, nel=^M^J,
-- pfx=\E[%p1%1d;%p2%l%2.2dq f%p1%1d %p2%s,
-- pln=\E[%p1%d;00q%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM,
-- rmacs=^O, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y,
-- sc=\E7,
-- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m,
-- tsl=\E7\E[25;%p1%{1}%+%dH,
--
--att4410v1-w|att5410v1-w|tty5410v1-w|AT&T 4410/5410 132 columns - version 1,
-- cols#132, wsl#132,
-- is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att5410v1,
--
--att4410|att5410|tty5410|AT&T 4410/5410 80 columns - version 2,
-- OTbs,
-- pfx=\E[%p1%d;%p2%l%02dq f%p1%d %p2%s,
-- use=att5410v1,
--
--att5410-w|att4410-w|4410-w|tty5410-w|5410-w|AT&T 4410/5410 in 132 column mode,
-- cols#132, wsl#132,
-- is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att4410,
--
--# 5410 in terms of a vt100
--# (v5410: added <rmam>/<smam> based on init string -- esr)
--v5410|att5410 in terms of a vt100,
-- am, mir, msgr, xon,
-- cols#80, it#8, lines#24, vt#3,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-- clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub1=^H, cud1=^J, cuf1=\E[C$<2>,
-- cup=\E[%i%p1%d;%p2%dH$<5>, cuu1=\E[A$<2>, dch1=\E[P,
-- dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>,
-- enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ich1=\E[@,
-- il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-- kcuu1=\EOA, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O,
-- rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>,
-- rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-- sc=\E7,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>,
-- 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,
--
-+# The Wyse 50 can support one attribute (e.g. Dim, Inverse,
-+# Normal) without magic cookies by using the protect mode.
-+# The following description uses this feature, but when more
-+# than one attribute is put on the screen at once, all attributes
-+# will be changed to be the same as the last attribute given.
-+# The Wyse 50 can support more attributes when used with magic
-+# cookies. The wy50-mc terminal description uses magic cookies
-+# to correctly handle multiple attributes on a screen.
- #
--# Teletype Model 5420 -- A souped up 5410, with multiple windows,
--# even! the 5420 has three modes: scroll, window or page mode
--# this terminfo should work in scroll or window mode, but doesn't
--# take advantage of any of the differences between them.
-+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=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, cbt=\EI,
-+ civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M, cub1=^H,
-+ cud1=^J, 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=^M,
-+ 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,
-+ kcbt=\EI, kcub1=^H, kcud1=^J, 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,
-+ kf16=^AO\r, kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er,
-+ ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J,
-+ pfx=\Ez%p1%{63}%+%c%p2%s\177,
-+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E`7\E), rev=\E`6\E),
-+ ri=\Ej, rmacs=\EH^C, rmir=\Er, rmln=\EA11, rmso=\E(,
-+ sgr=%?%p1%p3%|%t\E`6\E)%e%p5%p8%|%t\E`7\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;,
-+ sgr0=\E(\EH\003, smacs=\EH^B, smir=\Eq, smln=\EA10,
-+ smso=\E`6\E), tbc=\E0, tsl=\EF,
- #
--# Has memory below (2 lines!)
--# 3 pages of memory (plus some spare)
--# The 5410 sequences for <cup>, <cvvis>, <dch>, <dl>, <ech>, <flash>, <home>,
--# <hpa>, <hts> would work for these, but these work in both scroll and window
--# mode... Unset insert character so insert mode works
--# <is1> sets 80 column mode,
--# <is2> escape sequence:
--# 1) turn off all fonts
--# 2) function keys off, keyboard lock off, control display off,
--# insert mode off, erasure mode off,
--# 3) full duplex, monitor mode off, send graphics off, nl on lf off
--# 4) reset origin mode
--# 5) set line wraparound
--# 6) exit erasure mode, positional attribute mode, and erasure extent mode
--# 7) clear margins
--# 8) program ENTER to transmit ^J,
--# We use \212 to program the ^J because a bare ^J will get translated by
--# UNIX into a CR/LF. The enter key is needed for AT&T uOMS.
--# 1 2 3 4 5 6 7 8
--# <is3> set screen color to black,
--# No representation in terminfo for the delete word key: kdw1=\Ed
--# Key capabilities assume the power-up send sequence...
--# This <rmcup> is not strictly necessary, but it helps maximize
--# memory usefulness: <rmcup=\Ez>,
--# Alternate sgr0: <sgr0=\E[m\EW^O>,
--# Alternate sgr: <sgr=\E[%?%p1%t2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t^N%e^O%;>,
--# smkx programs the SYS PF keys to send a set sequence.
--# It also sets up labels f1, f2, ..., f8, and sends edit keys.
--# This string causes them to send the strings <kf1>-<kf8>
--# when pressed in SYS PF mode.
--# (att4415: I added <rmam>/<smam> based on the init string -- esr)
--att4415|tty5420|att5420|AT&T 4415/5420 80 cols,
-- OTbs, db, mir, xon,
-- lh#2, lm#78, lw#8, nlab#8, wsl#55,
-- cbt=\E[Z, clear=\E[x\E[J, cnorm=\E[11;0j, cub=\E[%p1%dD,
-- cud=\E[%p1%dB, cuf=\E[%p1%dC, cup=\E[%i%p1%d;%p2%dx,
-- cuu=\E[%p1%dA, cvvis=\E[11;1j, dch=\E[%p1%dP,
-- dl=\E[%p1%dM, ech=\E[%p1%ds\E[%p1%dD,
-- flash=\E[?5h$<200>\E[?5l, home=\E[x,
-- hpa=\E[%p1%{1}%+%dG, hts=\EH, ich=\E[%p1%d@, ich1@,
-- il=\E[%p1%dL, indn=\E[%p1%dE, is1=\E[?3l$<100>,
-- is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[21;1j\212,
-- is3=\E[?5l, kbeg=\Et, kcbt=\E[Z, kdch1=\E[P, kdl1=\E[M,
-- kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc, kf2=\EOd,
-- kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj,
-- kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U,
-- kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5,
-- lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?2i, mc4=\E[?9i,
-- mc5=\E[?4i, mrcup=\E[%i%p1%d;%p2%dt,
-- pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s,
-- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV,
-- rin=\E[%p1%dF, rmam=\E[?7l, rmir=\E[4l,
-- rmkx=\E[19;0j\E[21;1j\212, rmln=\E|,
-- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smam=\E[?7h, smir=\E[4h,
-- smkx=\E[19;1j\E[21;4j\Eent, smln=\E~, tbc=\E[3g,
-- tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd,
-- use=att4410,
-+# This terminal description uses the non-hidden attribute mode
-+# (with magic cookie).
-+#
-+# The mandatory pause used by flash does not work with some
-+# older versions of terminfo. If you see this effect then
-+# 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,
-+ msgr@,
-+ ma@, xmc#1,
-+ blink=\EG2, dim=\EGp, prot=\EG0\E), rev=\EG4,
-+ rmacs=\EG0\EH\003, rmcup=\EG0, rmso=\EG0,
-+ sgr=\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c%?%p8%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,
-+ bel@, use=wy50,
-+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,
-+ bel@, use=wy50-w,
-
--att4415-w|tty5420-w|att5420-w|AT&T 4415/5420 132 cols,
-- cols#132, lm#54, wsl#97,
-- is1=\E[?3h$<100>, use=att4415,
--
--att4415-rv|tty5420-rv|att5420-rv|AT&T 4415/5420 80 cols/rv,
-- flash=\E[?5l$<200>\E[?5h, is3=\E[?5h, use=att4415,
--
--att4415-w-rv|tty5420-w-rv|att5420-w-rv|AT&T 4415/5420 132 cols/rv,
-- cols#132, lm#54, wsl#97,
-- flash=\E[?5l$<200>\E[?5h, is1=\E[?3h$<100>, is3=\E[?5h,
-- use=att4415,
--
--# Note that this mode permits programming USER PF KEYS and labels
--# However, when you program user pf labels you have to reselect
--# user pf keys to make them appear!
--att4415+nl|tty5420+nl|att5420+nl|generic AT&T 4415/5420 changes for not changing labels,
-- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@,
-- pfx=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s,
-- pln=\E[%p1%d;0;0;1q%p2%:-16.16s,
--
--att4415-nl|tty5420-nl|att5420-nl|AT&T 4415/5420 without changing labels,
-- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl,
-- use=att4415,
--
--att4415-rv-nl|tty5420-rv-nl|att5420-rv-nl|AT&T 4415/5420 reverse video without changing labels,
-- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl,
-- use=att4415-rv,
--
--att4415-w-nl|tty5420-w-nl|att5420-w-nl|AT&T 4415/5420 132 cols without changing labels,
-- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl,
-- use=att4415-w,
--
--att4415-w-rv-n|tty5420-w-rv-n|att5420-w-rv-n|AT&T 4415/5420 132 cols reverse without changing labels,
-- kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl,
-- use=att4415-w-rv,
--
--att5420_2|AT&T 5420 model 2 80 cols,
-- am, db, hs, mir, msgr, xon,
-- cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- blink=\E[5m, cbt=\E[1Z, clear=\EH\EJ, cnorm=\E[11;0j,
-- cr=\EG, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- 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,
-- cvvis=\E[11;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
-- dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[0J,
-- el=\E[0K, el1=\E[1K, flash=\E[?5h$<200>\E[?5l, fsl=\E8,
-- home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH,
-- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- indn=\E[%p1%dE, invis=\E[8m,
-- is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;0j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r,
-- kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M,
-- kel=\E[2K, kend=\Ez, kent=^J, kf1=\EOc, kf2=\EOd, kf3=\EOe,
-- kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, khome=\E[H,
-- kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U,
-- kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5,
-- lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?;2i, mc4=\E[4i,
-- mc5=\E[5i, mrcup=\E[%i%p1%d;%p2%dt, nel=^M^J,
-- pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s\E~,
-- pln=\E[%p1%d;0;0;0q%p2%:-16.16s\E~, prot=\EV, rc=\E8,
-- rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmkx=\E[19;0j,
-- rmln=\E|, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y,
-- sc=\E7,
-- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smkx=\E[19;1j, smln=\E~,
-- smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-- tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd,
--att5420_2-w|AT&T 5420 model 2 in 132 column mode,
-- cols#132,
-- is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;1j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r,
-- use=att5420_2,
--
--att4418|att5418|AT&T 5418 80 cols,
-- am, xon,
-- cols#80, lines#24,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, clear=\E[H\E[2J, cr=^M, 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[1P, dim=\E[2m,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K, home=\E[H,
-- ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=^J,
-- is1=\E[?3l, is2=\E)0\E?6l\E?5l, kclr=\E[%%, kcub1=\E@,
-- kcud1=\EU, kcuf1=\EA, kcuu1=\ES, kent=\E[, kf1=\E[h,
-- kf10=\E[m, kf11=\E[n, kf12=\E[o, kf13=\E[H, kf14=\E[I,
-- kf15=\E[J, kf18=\E[K, kf19=\E[L, kf2=\E[i, kf20=\E[E,
-- kf21=\E[_, kf22=\E[M, kf23=\E[N, kf24=\E[O, kf3=\E[j,
-- kf6=\E[k, kf7=\E[l, kf8=\E[f, kf9=\E[w, khome=\Ec, rc=\E8,
-- rev=\E[7m, rmacs=^O, rmso=\E[m, rmul=\E[m, sc=\E7,
-- sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m,
--att4418-w|att5418-w|AT&T 5418 132 cols,
-- cols#132,
-- is1=\E[?3h, use=att5418,
--
--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,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP,
-- dl1=\EM, ed=\EJ, el=\Ez, home=\EH, il1=\EL, ind=\EH\EM\EY7\s,
-- kcbt=\EO, kclr=\EJ, kcub1=^H, kcud1=\EB, kcuf1=\EC,
-- kcuu1=\EA, kdch1=\EP, kdl1=\EM, kf0=\EU, kf3=\E@, khome=\EH,
-- kich1=\E\^, kil1=\EL, kind=\ES, kri=\ET,
-- lf0=segment advance, lf3=cursor tab, rmdc@, rmso=\E~,
-- rmul=\EZ, smdc@, smso=\E}, smul=\E\\,
--
--# The following is a terminfo entry for the Teletype 4424
--# asynchronous keyboard-display terminal. It supports
--# the vi editor. The terminal must be set up as follows,
- #
--# HIGHLIGHT DEFINITION 3-TONE
--# DISPLAY FUNCTION GROUP III
-+# The Wyse 350 is a Wyse 50 with color.
-+# Unfortunately this means that it has magic cookies.
-+# The color attributes are designed to overlap the reverse, dim and
-+# underline attributes. This is nice for monochrome applications
-+# because you can make underline stuff green (or any other color)
-+# but for true color applications it's not so hot because you cannot
-+# mix color with reverse, dim or underline.
-+# To further complicate things one of the attributes must be
-+# black (either the foreground or the background). In reverse video
-+# the background changes color with black letters. In normal video
-+# the foreground changes colors on a black background.
-+# This terminfo uses some of the more advanced features of curses
-+# to display both color and blink. In the final analysis I am not
-+# sure that the wy350 runs better with this terminfo than it does
-+# with the wy50 terminfo (with user adjusted colors).
- #
--# The second entry below provides limited (a la adm3a)
--# operation under GROUP II.
-+# The mandatory pause used by flash does not work with
-+# older versions of terminfo. If you see this effect then
-+# unset xon and delete the / from the delay.
-+# i.e. change $<100/> to $<100>
- #
--# This must be used with DISPLAY FUNCTION GROUP I or III
--# and HIGHLIGHT DEFINITION 3-TONE
--# The terminal has either bold or blink, depending on options
-+# Bug: The <op> capability resets attributes.
-+wy350|wyse350|Wyse 350,
-+ am, bw, hs, mc5i, mir, xon,
-+ colors#8, cols#80, lh#1, lines#24, lw#8, ncv#55, nlab#8, pairs#8,
-+ wsl#45, xmc#1,
-+ acsc=0wa_h[jukslrmqnxqzttuyv]wpxv, bel=^G, blink=\EG2,
-+ cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M,
-+ cub1=^H, cud1=^J, cuf1=^L,
-+ 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=^M, home=^^, ht=^I, hts=\E1,
-+ 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=^J, 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,
-+ kf16=^AO\r, kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er,
-+ ll=^^^K, mc0=\EP, mc4=^T, mc5=^X, nel=^M^J, oc=\E%?, op=\EG0,
-+ pfx=\Ez%p1%{63}%+%c%p2%s\177,
-+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\EG0\E), ri=\Ej,
-+ rmacs=\EG0\EH\003, rmir=\Er, rmln=\EA11, setb=,
-+ setf=%?%p1%{0}%=%t%{76}%e%p1%{1}%=%t%{64}%e%p1%{2}%=%t%{8}%e%p1%{3}%=%t%{72}%e%p1%{4}%=%t%{4}%e%p1%{5}%=%t%{68}%e%p1%{6}%=%t%{12}%e%p1%{7}%=%t%{0}%;%PC\EG%gC%gA%+%{48}%+%c,
-+ sgr=%{0}%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;%PA\EG%?%gC%t%gC%e%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p5%t%{64}%|%;%;%gA%+%{48}%+%c%?%p8%t\E)%e\E(%;%?%p9%t\EH\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,
-+ bel@, use=wy350,
-+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,
-+ bel@, use=wy350-w,
- #
--# (att4424: commented out <smcup>=\E[1m, we don't need bright locked on -- esr)
--att4424|tty4424|teletype 4424,
-- OTbs, am, xon,
-- cols#80, lines#24,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E3, bold=\E3, cbt=\EO, clear=\E[H\E[2J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=\EB, cuf=\E[%p1%dC, cuf1=\EC,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EA,
-- dch=\E[%p1%dP, dch1=\EP, dim=\EW, dl=\E[%p1%dM, dl1=\EM,
-- ed=\EJ, el=\Ez, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-- ich1=\E\^, il=\E[%p1%dL, il1=\EL, ind=^J, is2=\E[20l\E[?7h,
-- kbs=^H, kclr=\EJ, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-- khome=\E[H, nel=\EE, rev=\E}, ri=\ET, rmacs=\E(B, rmso=\E~,
-- rmul=\EZ,
-- sgr=\E[%?%p1%t7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p6%p4%|%t;5%;%?%p5%t;0%;m,
-- 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,
-- kclr@, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome@,
-- use=att4424,
--
--# This entry is not one of AT&T's official ones, it was translated from the
--# 4.4BSD termcap file. The highlight strings are different from att4424.
--# I have no idea why this is -- older firmware version, maybe?
--# 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,
-- am, da, db, mir,
-- cols#80, it#8, lines#23,
-- bel=^G, clear=\E[2;H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-- cup=\E[%i%p1%2d;%p2%2dH\E[B, cuu1=\E[A, dch1=\EP,
-- dl1=\EM, el=\E[K, ht=^I, ich1=\E\^, il1=\EL, ind=^J, ip=$<2/>,
-- is2=\E[m\E[2;24r, kbs=^H, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR,
-- kf4=\EOS, khome=\E[H, nel=^M^J, ri=\ET, rmso=\E[m, rmul=\E[m,
-- sgr0=\E[m, smso=\E[7m, smul=\E[4m,
--
--# The Teletype 5425 is really version 2 of the Teletype 5420. It
--# is quite similar, except for some minor differences. No page
--# mode, for example, so all of the <cup> sequences used above have
--# to change back to what's being used for the 5410. Many of the
--# option settings have changed their numbering as well.
-+# This terminfo description is untested.
-+# The wyse100 emulates an adm31, so the adm31 entry should work.
- #
--# This has been tested on a preliminary model.
-+wy100|wyse 100,
-+ hs, mir,
-+ cols#80, lines#24, xmc#1,
-+ bel=^G, clear=\E;, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, dsl=\EA31, ed=\EY, el=\ET, fsl=^M, il1=\EE, ind=^J,
-+ invis@, is2=\Eu\E0, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L,
-+ kcuu1=^K, kf1=^A@\r, kf2=^AA\r, kf3=^AB\r, kf4=^AC\r,
-+ kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, khome=\E{,
-+ rmir=\Er, smir=\Eq, tsl=\EF, use=adm+sgr,
- #
--# (att5425: added <rmam>/<smam> based on the init string -- esr)
--att5425|tty5425|att4425|AT&T 4425/5425,
-- am, da, db, hs, mir, msgr, xenl, xon,
-- cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z,
-- clear=\E[H\E[J, cnorm=\E[12;0j, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- cvvis=\E[12;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
-- dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[J,
-- el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
-- flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H,
-- hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dE,
-- invis=\E[8m, is1=\E<\E[?3l$<100>,
-- is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[25;1j\212,
-- is3=\E[?5l, kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[J,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P,
-- kdl1=\E[M, kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc,
-- kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi,
-- kf8=\EOj, khome=\E[H, kich1=\E[4h, kil1=\E[L, kind=\E[T,
-- kri=\E[S, ll=\E[24H, mc0=\E[?2i, mc4=\E[?9i, mc5=\E[?4i,
-- nel=^M^J,
-- pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s,
-- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, rc=\E8,
-- rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmam=\E[?7l,
-- rmir=\E[4l, rmkx=\E[21;0j\E[25;1j\212, rmln=\E|,
-- rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, sc=\E7,
-- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
-- smkx=\E[21;1j\E[25;4j\Eent\E~, smln=\E~, smso=\E[7m,
-- smul=\E[4m, tbc=\E[3g, tsl=\E7\E[25;%p1%{8}%+%dH,
-- vpa=\E[%p1%{1}%+%dd,
--
--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,
-- 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,
-- am, da, db, xon,
-- cols#80, lines#24, lm#48,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, bold=\E[5m, clear=\E[H\E[2J\E[1U\E[H\E[2J\E[1V,
-- cr=^M, 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=\EP,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[0K, home=\E[H,
-- hpa=\E[%p1%dG, ht=^I, hts=\E1, ich=\E[%p1%d@, ich1=\E\^,
-- il=\E[%p1%dL, il1=\EL, ind=^J, indn=\E[%p1%dS,
-- is1=\Ec\E[?7h, is2=\E[m\E[1;24r, kbs=^H, kcbt=\EO,
-- kclr=\E[2J, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU,
-- kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H, ll=\E[24H,
-- nel=^M^J, rc=\E8, rev=\E[7m, ri=\ET, rin=\E[%p1%dT,
-- rmacs=\E(B, rmam=\E[?7l, rmso=\E[m, rmul=\E[m,
-- rs2=\Ec\E[?3l\E[2;0y, sc=\E7, sgr0=\E[m\E(B, smacs=\E(0,
-- smam=\E[?7h, smso=\E[5m, smul=\E[4m, tbc=\E[3g,
-- vpa=\E[%p1%dd,
--
--# Terminfo entry for the AT&T 510 A Personal Terminal
--# Function keys 9 - 16 are available only after the
--# screen labeled (soft keys/action blocks) are labeled. Function key
--# 9 corresponds to the leftmost touch target on the screen,
--# function key 16 corresponds to the rightmost.
-+# The Wyse 120/150 has most of the features of the Wyse 60.
-+# This terminal does not need padding up to 9600 baud!
-+# <msgr> should be set but the clear screen fails when in
-+# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear
-+# then set <msgr>.
- #
--# This entry is based on one done by Ernie Rice at Summit, NJ and
--# changed by Anne Gallup, Skokie, IL, ttrdc!anne
--att510a|bct510a|AT&T 510A Personal Terminal,
-- am, mir, msgr, xenl, xon,
-- cols#80, lh#2, lines#24, lw#7, nlab#8,
-- acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z,
-- civis=\E[11;0|, clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M,
-- 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[11;2|, dch=\E[%p1%dP,
-- dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J,
-- el=\E[0K, el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H, ht=^I,
-- hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, is1=\E(B\E)1\E[2l,
-- is3=\E[21;1|\212, kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm,
-- kf10=\EOd, kf11=\EOe, 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,
-- mc0=\E[0i, mc4=\E[?8i, mc5=\E[?4i, nel=\EE,
-- pln=\E[%p1%dp%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM,
-- rmacs=^O, rmkx=\E[19;0|, rmso=\E[m, rmul=\E[m, sc=\E7,
-- sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smkx=\E[19;1|, smso=\E[7m,
-- smul=\E[4m, tbc=\E[3g,
-+wy120|wyse120|wy150|wyse150|Wyse 120/150,
-+ am, bw, hs, km, mc5i, mir, msgr, xon,
-+ cols#80, it#8, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45,
-+ acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~,
-+ bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>,
-+ cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>,
-+ dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>,
-+ flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=\011$<1>,
-+ hts=\E1, il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1,
-+ is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El,
-+ is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H,
-+ kcud1=^J, 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, kf16=^AO\r,
-+ kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K,
-+ mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>,
-+ pfloc=\EZ2%p1%{63}%+%c%p2%s\177,
-+ 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>,
-+ 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%{64}%|%;%?%p7%t%{1}%|%;%c,
-+ sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/,
-+ 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,
-+ 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,
-+ 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,
-+ lh@, lines#25, lw@, nlab@,
-+ pln@, rs3=\EwG\Ee)$<100>, use=wy120-w,
-+#
-+wy120-vb|wyse120-vb|wy150-vb|wyse150-vb|Wyse 120/150 visible bell,
-+ bel@, use=wy120,
-+#
-+wy120-w-vb|wy120-wvb|wyse120-wvb|wy150-w-vb|wyse150-w-vb|Wyse 120/150 132-column visible bell,
-+ bel@, use=wy120-w,
-+#
-+# The Wyse 60 is like the Wyse 50 but with more padding.
-+# The reset strings are slow and the pad times very depending
-+# on other parameters such as font loading. I have tried
-+# to follow the following outline:
-+#
-+# <rs1> -> set personality
-+# <rs2> -> set number of columns
-+# <rs3> -> set number of lines
-+# <is1> -> select the proper font
-+# <is2> -> do the initialization
-+# <is3> -> set up display memory (2 pages)
-+#
-+# The Wyse 60's that have vt100 emulation are slower than the
-+# older Wyse 60's. This change happened mid-1987.
-+# The capabilities effected are <dch1> <dl1> <il1> <ind> <ri>
-+#
-+# The meta key is only half right. This terminal will return the
-+# high order bit set when you hit CTRL-function_key
-+#
-+# It may be useful to assign two function keys with the
-+# values \E=(\s look at old data in page 1
-+# \E=W, look at bottom of page 1
-+# where \s is a space ( ).
-+#
-+# Note:
-+# The Wyse 60 runs faster when the XON/XOFF
-+# handshake is turned off.
-+#
-+# (wy60: we use \E{ rather than ^^ for home (both are documented) to avoid
-+# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr)
-+wy60|wyse60|Wyse 60,
-+ am, bw, hs, km, mc5i, mir, msgr,
-+ cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#45,
-+ acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~,
-+ bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<100>,
-+ cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ dch1=\EW$<11>, dclk=\E`b, dim=\EGp, dl1=\ER$<5>, dsl=\EF\r,
-+ ed=\EY$<100>, el=\ET, flash=\E`8$<100/>\E`9, fsl=^M,
-+ home=\E{, ht=\011$<1>, hts=\E1, il1=\EE$<4>, ind=\n$<5>,
-+ ip=$<3>, is1=\EcB0\EcC1,
-+ is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El,
-+ is3=\EwJ\Ew1$<150>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H,
-+ kcud1=^J, 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, kf16=^AO\r,
-+ kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K,
-+ mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<3>,
-+ pfloc=\EZ2%p1%{63}%+%c%p2%s\177,
-+ pfx=\EZ1%p1%{63}%+%c%p2%s\177,
-+ pln=\Ez%p1%{47}%+%c%p2%s\r, prot=\E), ri=\Ej$<7>,
-+ rmacs=\EcD, rmam=\Ed., rmclk=\E`c, rmcup=\Ew1, rmir=\Er,
-+ rmln=\EA11, rmxon=\Ec20, rs1=\E~!\E~4$<150>,
-+ rs2=\EeG$<150>, rs3=\EwG\Ee($<200>,
-+ 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,
-+ sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/,
-+ smcup=\Ew0, smir=\Eq, smln=\EA10, smso=\EGt, smxon=\Ec21,
-+ tbc=\E0, tsl=\EF, use=adm+sgr,
-+#
-+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,
-+ lh@, lines#25, lw@, nlab@,
-+ pln@, rs3=\EwG\Ee)$<200>, use=wy60,
-+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,
-+ 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,
-+ 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,
-+ lh@, lines#43, lw@, nlab@,
-+ pln@, rs3=\Ee+$<150>, use=wy60-42,
-+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,
-+#
-+wy60-vb|wyse60-vb|Wyse 60 visible bell,
-+ bel@, use=wy60,
-+wy60-w-vb|wy60-wvb|wyse60-wvb|Wyse 60 132-column visible bell,
-+ bel@, use=wy60-w,
-
--# Terminfo entry for the AT&T 510 D Personal Terminal
--# Function keys 9 through 16 are accessed by bringing up the
--# system blocks.
--# Function key 9 corresponds to the leftmost touch target on the screen,
--# function key 16 corresponds to the rightmost.
-+# The Wyse-99GT looks at lot like the Wyse 60 except that it
-+# does not have the 42/43 line mode. In the Wyse-60 the "lines"
-+# setup parameter controls the number of lines on the screen.
-+# For the Wyse 99GT the "lines" setup parameter controls the
-+# number of lines in a page. The screen can display 25 lines max.
-+# The Wyse-99GT also has personalities for the VT220 and
-+# Tektronix 4014. But this has no bearing on the native mode.
- #
--# There are problems with soft key labeling. These are due to
--# strangenesses in the native terminal that are impossible to
--# describe in a terminfo.
--att510d|bct510d|AT&T 510D Personal Terminal,
-- am, da, db, mir, msgr, xenl, xon,
-- cols#80, lh#2, lines#24, lm#48, lw#7, nlab#8,
-- acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z,
-- clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M, 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[11;2|, dch=\E[%p1%dP, dch1=\E[P,
-- dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K,
-- el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H,
-- hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS,
-- invis=\E[8m, is1=\E(B\E)1\E[5;0|, is3=\E[21;1|\212,
-- kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm, kf10=\EOd,
-- kf11=\EOe, 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,
-- pln=\E[%p1%dp%p2%:-16s, rc=\E8,
-- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM,
-- rin=\E[%p1%dT, 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,
-- sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smgl=\E4, smgr=\E5, smir=\E[4h,
-- smkx=\E[19;1|, smln=\E?, smso=\E[7m, smul=\E[4m,
-- smxon=\E[29;0|, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd,
-+# (msgr) should be set but the clear screen fails when in
-+# alt-charset mode. Try \EcE\s\s\E+\s if the screen is really clear
-+# then set msgr, else use msgr@.
-+#
-+# u0 -> enter Tektronix mode
-+# u1 -> exit Tektronix mode
-+#
-+wy99gt|wyse99gt|Wyse 99gt,
-+ msgr@,
-+ 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,
-+ u0=\E~>\E8, u1=\E[42h, use=wy60,
-+#
-+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,
-+ lh@, lines#25, lw@, nlab@,
-+ pln@, rs2=\E`\:$<150>, rs3=\EwG\Ee)$<200>, use=wy99gt,
-+#
-+wy99gt-25-w|wyse99gt-25-w|wyse 99gt 132-column 25-lines,
-+ lh@, lines#25, lw@, nlab@,
-+ pln@, rs2=\E`;$<150>, use=wy99gt-w,
-+#
-+wy99gt-vb|wyse99gt-vb|Wyse 99gt visible bell,
-+ bel@, use=wy99gt,
-+#
-+wy99gt-w-vb|wy99gt-wvb|wyse99gt-wvb|Wyse 99gt 132-column visible bell,
-+ bel@, use=wy99gt-w,
-
--# (att500: I merged this with the att513 entry, att500 just used att513 -- esr)
--att500|att513|AT&T 513 using page mode,
-- am, chts, mir, msgr, xenl, xon,
-- cols#80, lh#2, lines#24, lw#8, nlab#8,
-- acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z,
-- clear=\E[H\E[J, cnorm=\E[11;0|, cr=^M,
-- csr=%i\E[%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- cvvis=\E[11;1|, dch=\E[%p1%dP, dch1=\E[P$<1>, dim=\E[2m,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-- enacs=\E(B\E)1, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I,
-- hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- indn=\E[%p1%dE, invis=\E[8m,
-- is1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l,
-- kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON,
-- kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK,
-- kFND=\EOX, kHLP=\EOM, kHOM=\ENM, kIC=\ENJ, kLFT=\ENK,
-- kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, kOPT=\EOR, kPRT=\EOZ,
-- kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, kRIT=\ENL, kRPL=\EOY,
-- kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, kbs=^H, kcan=\EOw,
-- kcbt=\E[Z, kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd,
-- kcrt=\EOn, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=\Eent,
-- kext=\EOk, kf1=\EOc, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg,
-- kf6=\EOh, kf7=\EOi, kf8=\EOj, kfnd=\EOx, khlp=\EOm,
-- khome=\E[H, kich1=\ENj, kind=\E[S, kmov=\ENc, kmrk=\ENi,
-- kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr,
-- kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb,
-- kres=\EOq, krfr=\ENa, kri=\E[T, krpl=\EOy, krst=\EOB,
-- ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, ll=\E#2,
-- mc0=\E[?98l\E[0i, mc4=\E[?98l\E[?8i, mc5=\E[?98l\E[?4i,
-- nel=\EE,
-- pfkey=\E[%p1%d;%p2%l%d;3;0p F%p1%d %p2%s,
-- pfloc=\E[%p1%d;%p2%l%d;2;0p F%p1%d %p2%s,
-- pfx=\E[%p1%d;%p2%l%d;1;0p F%p1%d %p2%s,
-- pln=\E[%p1%dp%p2%:-16s, rc=\E8,
-- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM,
-- rin=\E[%p1%dF, rmacs=^O, rmir=\E[4l,
-- rmkx=\E[19;0|\E[21;1|\212, rmln=\E<, rmso=\E[m,
-- rmul=\E[m,
-- rs1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l\E[2;0|\E[6;1|\E[8;0|\E[19;0|\E[1{\E[?99l,
-- rs2=\E[5;0|, sc=\E7,
-- sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smir=\E[4h,
-- smkx=\E[19;1|\E[21;4|\Eent, smln=\E?, smso=\E[7m,
-- smul=\E[4m, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd,
-+# Can't set tabs! Other bugs (ANSI mode only):
-+# - can't redefine function keys (anyway, key redefinition in ANSI mode
-+# is too much complex to be described);
-+# - meta key can't be described (the terminal forgets it when reset);
-+# The xon-xoff handshaking can't be disabled while in ansi personality, so
-+# emacs can't work at speed greater than 9600 baud. No padding is needed at
-+# this speed.
-+# dch1 has been commented out because it causes annoying glittering when
-+# vi deletes one character at the beginning of a line with tabs in it.
-+# dch makes sysgen(1M) have a horrible behaviour when deleting
-+# a screen and makes screen(1) behave badly, so it is disabled too. The nice
-+# thing is that vi goes crazy if smir-rmir are present and both dch-dch1 are
-+# not, so smir and rmir are commented out as well.
-+# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998
-+wy99-ansi|Wyse WY-99GT in ansi mode (int'l PC keyboard),
-+ am, km, mc5i, mir, msgr, xenl,
-+ cols#80, it#8, lines#25, vt#3,
-+ acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
-+ clear=\E[H\E[J$<200>, cnorm=\E[34h\E[?25h, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD$<1>,
-+ cub1=\010$<1>, cud=\E[%p1%dB, cud1=\ED,
-+ cuf=\E[%p1%dC$<1>, cuf1=\E[C$<1>,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
-+ cvvis=\E[34l\E[?25h, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M,
-+ ech=\E[%p1%dX, ed=\E[J$<8*>, el=\E[K$<1>, el1=\E[1K$<1>,
-+ enacs=\E)0, flash=\E[?5h$<30/>\E[?5l, home=\E[H,
-+ hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL,
-+ il1=\E[L, ind=\n$<1>, invis=\E[8m,
-+ is2=\E7\E[1r\E8\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[4i,
-+ kbs=^H, kcbt=\E[z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-+ kcuu1=\EOA, kf1=\EOP, kf10=\E[21~, kf11=\E[23~,
-+ kf12=\E[24~, kf17=\E[K, kf18=\E[31~, kf19=\E[32~, kf2=\EOQ,
-+ kf20=\E[33~, kf21=\E[34~, kf22=\E[35~, kf23=\E[1~,
-+ kf24=\E[2~, kf3=\EOR, kf4=\EOS, kf5=\E[M, kf6=\E[17~,
-+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, ll=\E[24E, mc0=\E[?19h,
-+ mc4=\E[4i, mc5=\E[5i, nel=\EE, prot=\E[1"q, rc=\E8,
-+ rev=\E[7m, ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l,
-+ rmkx=\E[?1l, rmso=\E[27m, rmul=\E[24m,
-+ rs2=\E[61"p\E[40h\E[?6l\E[1r\E[2;3;4;13;20;34;39;36l\E[12;16;34h\E[?1;3;4;5;10;18l\E[?7;8;25h\E>\E[?5W\E(B\017\E[24E\E[4i,
-+ sc=\E7,
-+ sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%O%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m\E[%?%p8%t1%;"q%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017\E["q, smacs=^N, smam=\E[?7h, smir=\E[4h,
-+ smkx=\E[?1h, smso=\E[7m, smul=\E[4m, vpa=\E[%i%p1%dd,
-
--# 01-07-88
--# printer must be set to EMUL ANSI to accept ESC codes
--# <cuu1> stops at top margin
--# <is1> sets cpi 10,lpi 6,form 66,left 1,right 132,top 1,bottom 66,font
--# and alt font ascii,wrap on,tabs cleared
--# <is2> disables newline on LF,Emphasized off
--# The <u0> capability sets form length
--att5310|att5320|AT&T Model 53210 or 5320 matrix printer,
-- xhpa, xvpa,
-- bufsz#8192, cols#132, cps#120, it#8, lines#66, orc#10,
-- orhi#100, orl#12, orvi#72,
-- cpi=%?%p1%{10}%=%t\E[w%e%p1%{12}%=%t\E[2w%e%p1%{5}%=%t\E[5w%e%p1%{13}%=%p1%{14}%=%O%t\E[3w%e%p1%{16}%=%p1%{17}%=%O%t\E[4w%e%p1%{6}%=%t\E[6w%e%p1%{7}%=%t\E[7w%e%p1%{8}%=%t\E[8w%;,
-- cr=^M,
-- csnm=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tenglish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgermanic%e%p1%{7}%=%tfrench%e%p1%{8}%=%tcanadian_french%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline%e%p1%{12}%=%tsecurity%e%p1%{13}%=%tebcdic%e%p1%{14}%=%tapl%e%p1%{15}%=%tmosaic%;,
-- cud=\E[%p1%de, cud1=^J, cuf=\E[%p1%da, cuf1=\s, cuu1=\EM,
-- ff=^L, hpa=\E[%p1%d`, ht=^I, is1=\Ec, is2=\E[20l\r,
-- lpi=%?%p1%{2}%=%t\E[4z%e%p1%{3}%=%t\E[5z%e%p1%{4}%=%t\E[6z%e%p1%{6}%=%t\E[z%e%p1%{8}%=%t\E[2z%e%p1%{12}%=%t\E[3z%;,
-- rshm=\E[m,
-- scs=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(D%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(0%e%p1%{12}%=%t\E(1%e%p1%{13}%=%t\E(3%e%p1%{14}%=%t\E(8%e%p1%{15}%=%t\E(}%;,
-- smgbp=\E[;%p1%dr, smglp=\E[%{1}%p1%+%ds,
-- smgrp=\E[;%{1}%p1%+%ds, smgtp=\E[%p1%dr, sshm=\E[5m,
-- u0=\E[%p1%dt, vpa=\E[%p1%dd,
-+# This is the american terminal. Here tabs work fine.
-+# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998
-+wy99a-ansi|Wyse WY-99GT in ansi mode (US PC keyboard),
-+ hts=\EH, is3=\E[?5l, rs3=\E[?5l, tbc=\E[3g, use=wy99-ansi,
-
--# Teletype 5620, firmware version 1.1 (8;7;3) or earlier from BRL
--# The following SET-UP modes are assumed for normal operation:
--# CR_DEF=CR NL_DEF=INDEX DUPLEX=FULL
--# Other SET-UP modes may be set for operator convenience or communication
--# requirements. This termcap description is for the Resident Terminal Mode.
--# No delays specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
--# The BRL entry also said: UNSAFE :ll=\E[70H:
--att5620-1|tty5620-1|dmd1|Teletype 5620 with old ROMs,
-- am, xon,
-- cols#88, it#8, lines#70, vt#3,
-- bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^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, 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=^J, indn=\E[%p1%dS, kbs=^H, kclr=\E[2J,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H,
-- kll=\E[70;1H, nel=^M^J, rc=\E8, ri=\E[T, rin=\E[%p1%dT,
-- rs1=\Ec, sc=\E7,
-+# This terminal (firmware version 02) has a lot of bugs:
-+# - can't set tabs;
-+# - other bugs in ANSI modes (see above).
-+# This description disables handshaking when using cup. This is because
-+# GNU emacs doesn't like Xon-Xoff handshaking. This means the terminal
-+# cannot be used at speeds greater than 9600 baud, because at greater
-+# speeds handshaking is needed even for character sending. If you use
-+# DTR handshaking, you can use even greater speeds.
-+# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998
-+wy99f|wy99fgt|wy-99fgt|Wyse WY-99GT (int'l PC keyboard),
-+ am, bw, hs, km, mc5i, mir, msgr, xon,
-+ cols#80, it#8, lines#25, wsl#46,
-+ acsc='x+y.w_vi~j(k'l&m%n)o9q*s8t-u.v\,w+x=, bel=^G,
-+ blink=\EG2, cbt=\EI, civis=\E`0, clear=\E'\E(\032,
-+ cnorm=\E`4\E`1, cr=^M, cub1=^H, cud1=\Ej, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ cvvis=\E`2\E`1, dch1=\EW, dim=\EGp, dl1=\ER, dsl=\EF\r,
-+ ed=\EY$<8*>, el=\ET$<8>, enacs=\Ec@1J$<2000>,
-+ flash=\E\^1$<30/>\E\^0, fsl=^M, home=^^, ht=^I, il1=\EE,
-+ ind=^J, 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,
-+ ka1=^^, ka3=\EJ, kbs=^H, kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H,
-+ kcud1=^J, 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,
-+ kf16=^Ac\r, kf17=^Ad\r, kf18=^Ae\r, kf19=^Af\r, kf2=^AA\r,
-+ kf20=^Ag\r, kf21=^Ah\r, kf22=^Ai\r, kf23=^Aj\r, kf24=^Ak\r,
-+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-+ kf8=^AG\r, kf9=^AH\r, kprt=\EP, mc0=\EP, mc4=^T, mc5=\Ed#,
-+ 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/\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)%;%?%p9%t\EcE%e\EcD%;,
-+ sgr0=\E(\EG0, smacs=\EcE, smam=\Ed/, smcup=\Ec20\Ec30,
-+ smir=\Eq, smso=\EG4, smxon=\Ec21\Ec31, tsl=\EF,
-
--# 5620 terminfo (2.0 or later ROMS with char attributes)
--# The following SET-UP modes are assumed for normal operation:
--# DUPLEX=FULL GEN_FLOW=ON NEWLINE=INDEX RETURN=CR
--# Other SET-UP modes may be set for operator convenience or communication
--# requirements. This termcap description is for Resident Terminal Mode. No
--# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
--# assumptions: <ind> (scroll forward one line) is only done at screen bottom
--# Be aware that older versions of the dmd have a firmware bug that affects
--# parameter defaulting; for this terminal, the 0 in \E[0m is not optional.
--# <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,
-- OTbs, am, msgr, npc, xon,
-- cols#88, it#8, lines#70,
-- bel=^G, bold=\E[2m, clear=\E[H\E[J, cr=^M, cub1=^H,
-- cud1=\E[B, 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, 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,
-- indn=\E[%p1%dS, kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kll=\E[70;1H, nel=^J,
-- pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, rev=\E[7m, ri=\E[T,
-- rin=\E[%p1%dT, rmso=\E[0m, rmul=\E[0m, rs1=\Ec, sc=\E7,
-- sgr0=\E[0m, smso=\E[7m, smul=\E[4m,
--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,
-- lines#34, use=att5620,
--# 5620 layer running the "S" system's downloaded graphics handler:
--att5620-s|tty5620-s|layer|vitty|5620 S layer,
-- OTbs, OTpt, am,
-- cols#80, it#8, lines#72,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J,
-- cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=^K, dl1=\ED,
-- el=\EK, flash=\E^G, ht=^I, il1=\EI, ind=^J, kbs=^H, kclr=\E[2J,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H,
-- kll=\E[70;1H,
-+# This is the american terminal. Here tabs work.
-+# From: Francesco Potorti` <F.Potorti@cnuce.cnr.it>, 24 Aug 1998
-+wy99fa|wy99fgta|wy-99fgta|Wyse WY-99GT (US PC keyboard),
-+ hts=\E1, tbc=\E0, use=wy99f,
-
--# Entries for <kf15> thru <kf28> refer to the shifted system pf keys.
- #
--# Entries for <kf29> thru <kf46> refer to the alternate keypad mode
--# keys: = * / + 7 8 9 - 4 5 6 , 1 2 3 0 . ENTER
--att605|AT&T 605 80 column 102key keyboard,
-- am, eo, xon,
-- cols#80, lines#24, lw#8, nlab#8, wsl#80,
-+# The Wyse 160 is combination of the WY-60 and the WY-99gt.
-+# The reset strings are slow and the pad times very depending
-+# on other parameters such as font loading. I have tried
-+# to follow the following outline:
-+#
-+# <rs1> -> set personality
-+# <rs2> -> set number of columns
-+# <rs3> -> set number of lines
-+# <is1> -> select the proper font
-+# <is2> -> do the initialization
-+# <is3> -> set up display memory (2 pages)
-+#
-+# The display memory may be used for either text or graphics.
-+# When "Display Memory = Shared" the terminal will have more pages
-+# but garbage may be left on the screen when you switch from
-+# graphics to text. If "Display Memory = Unshared" then the
-+# text area will be only one page long.
-+#
-+# (wy160: we use \E{ rather than ^^ for home (both are documented) to avoid
-+# a bug reported by Robert Dunn, <rcdii@inlink.com> -- esr)
-+wy160|wyse160|Wyse 160,
-+ am, bw, hs, km, mc5i, mir, msgr,
-+ cols#80, lh#1, lines#24, lw#8, nlab#8, wsl#38,
-+ acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~,
-+ bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<30>,
-+ cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<5>,
-+ dclk=\E`b, dim=\EGp, dl1=\ER$<1>, dsl=\EF\r, ed=\EY$<30>,
-+ el=\ET$<5>, flash=\E`8$<100/>\E`9, fsl=^M, home=\E{, ht=^I,
-+ hts=\E1, il1=\EE$<1>, ind=\n$<1>, ip=$<2>, is1=\EcB0\EcC1,
-+ is2=\Ed$\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El,
-+ is3=\Ew0$<100>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H,
-+ kcud1=^J, 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, kf16=^AO\r,
-+ kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=\E{^K,
-+ mc0=\EP, mc4=^T, mc5=\Ed#, nel=\r\n$<1>,
-+ pfloc=\EZ2%p1%{63}%+%c%p2%s\177,
-+ pfx=\EZ1%p1%{63}%+%c%p2%s\177,
-+ 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>,
-+ 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,
-+ sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/,
-+ 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,
-+ 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,
-+ lh@, lines#25, lw@, nlab@,
-+ pln@, rs3=\EwG\Ee)$<200>, use=wy160,
-+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,
-+ 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,
-+ 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,
-+ lh@, lines#43, lw@, nlab@,
-+ pln@, rs3=\Ee+$<150>, use=wy160-42,
-+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,
-+#
-+wy160-vb|wyse160-vb|Wyse 160 visible bell,
-+ bel@, use=wy160,
-+wy160-w-vb|wy160-wvb|wyse160-wvb|Wyse 160 132-column visible bell,
-+ bel@, use=wy160-w,
-+#
-+# The Wyse 75 is a vt100 lookalike without advanced video.
-+#
-+# The Wyse 75 can support one attribute (e.g. Dim, Inverse,
-+# Underline) without magic cookies. The following description
-+# uses this capability, but when more than one attribute is
-+# put on the screen at once, all attributes will be changed
-+# to be the same as the last attribute given.
-+# The Wyse 75 can support more attributes when used with magic
-+# cookies. The wy75-mc terminal description uses magic cookies
-+# to correctly handle multiple attributes on a screen.
-+#
-+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, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-- cr=^M, cub1=^H, cud1=\E[B, 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, ed=\E[J,
-- el=\E[K, el1=\E[1K, fsl=\E8, ht=^I, ich=\E[%p1%d@, ich1=\E[@,
-- il1=\E[L, ind=^J, invis=\E[8m,
-- is1=\E[8;0|\E[?\E[13;20l\E[?\E[12h, is2=\E[m\017,
-- kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z, kclr=\E[2J,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P,
-- kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp, kf11=\ENq,
-- kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD,
-- kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH,
-- kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ,
-- kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe,
-- kf30=\EOQ, kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx,
-- kf35=\EOy, kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv,
-- kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs,
-- kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh,
-- kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, kich1=\E[@,
-- kil1=\E[L, kind=\E[S, knp=\E[U, kpp=\E[V, ll=\E[24H,
-- mc4=\E[?4i, mc5=\E[?5i, nel=\EE,
-- pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s,
-- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m,
-- rmacs=^O, rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m,
-- 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,
-- 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,
-- dch1=\E[P, dl1=\E[M, ich1=\E[@, il1=\E[L, kcbt=\E[Z,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P,
-- kdl1=\E[M, kend=\E[F, kf1=\E[M, kf10=\E[V, kf2=\E[N,
-- kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T,
-- kf9=\E[U, khome=\E[H, kich1=\E[@, knp=\E[G, kpp=\E[I,
-- rmsc=400\E[50;0|, smsc=250\E[?11l\E[50;1|, xoffc=g,
-- xonc=e, use=att605,
--att605-w|AT&T 605-w 132 column 102 key keyboard,
-- cols#132, wsl#132,
-- is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0,
-- use=att605,
--# (att610: I added <rmam>/<smam> based on the init string. I also
--# added <indn> and <rin> because the BSD file says the att615s have them,
--# and the 615 is like a 610 with a big keyboard, and most of their other
--# smart terminals support the same sequence -- esr)
--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,
-+ bel=^G, cbt=\E[Z, civis=\E[?25l, clear=\E[H\E[J$<30>,
-+ cnorm=\E[?25h, cr=^M, csr=\E[%i%p1%d;%p2%dr$<2>,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ 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\,\E[30l$<250>, 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,
-+ kf1=\E[?5i, 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[?3i,
-+ kf20=\E[34~, kf21=\E[35~, kf3=\E[2i, kf4=\E[@, kf5=\E[M,
-+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kfnd=\E[1~,
-+ khlp=\E[28~, khome=\E[H, kich1=\E[@, kil1=\E[L, knp=\E[6~,
-+ kpp=\E[5~, kprt=\E[?5i, kslt=\E[4~, mc0=\E[0i, mc4=\E[4i,
-+ mc5=\E[5i, rc=\E8, rev=\E[1t\E[7m, ri=\EM$<2>, 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$<80>, rs3=\E[?5l,
-+ sc=\E7,
-+ sgr=%?%p5%t\E[0t%;%?%p3%p1%|%t\E[1t%;%?%p2%t\E[2t%;%?%p4%t\E[3t%;%?%p1%p2%p3%p4%p5%|%|%|%|%t\E[7m%e\E[m%;%?%p9%t\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,
-+#
-+# This terminal description uses the non-hidden attribute mode
-+# (with magic cookie).
-+#
-+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,
-+ rev=\E[16p, rmacs=\E[0p\017, rmso=\E[0p, rmul=\E[0p,
-+ sgr=\E[%{0}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{16}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{1}%|%;%?%p7%t%{4}%|%;%dp%?%p9%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,
-+ pb@,
-+ bel@, use=wy75,
-+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,
-+ pb@,
-+ bel@, use=wy75-w,
-+#
-+# Wyse 85 emulating a vt220 7 bit mode.
-+# 24 line screen with status line.
-+#
-+# The vt220 mode permits more function keys but it wipes out
-+# the escape key. I strongly recommend that <f11> be set to
-+# escape (esc).
-+# The terminal may have to be set for 8 data bits and 2 stop
-+# bits for the arrow keys to work.
-+# The Wyse 85 runs faster with XON/XOFF enabled. Also the
-+# <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,
-+ 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, cnorm=\E[?25h\E[?12l, cr=^M,
-+ clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=^M,
- 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,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-- flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I,
-- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-- indn=\E[%p1%dS, invis=\E[8m,
-- is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0,
-- is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H,
-- kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr,
-- kf13=\ENs, kf14=\ENt, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg,
-- kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H,
-- kind=\E[S, kri=\E[T, ll=\E[24H, mc4=\E[?4i, mc5=\E[?5i,
-- nel=\EE,
-- pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s,
-- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m,
-- ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmir=\E[4l,
-- rmln=\E[2p, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l, sc=\E7,
-- sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%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,
--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,
-- use=att610,
--
--att610-103k|AT&T 610; 80 column; 103key keyboard,
-- kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON,
-- kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK,
-- kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH,
-- kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ,
-- kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9,
-- kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn,
-- kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M,
-- kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf9@, kfnd=\EOx,
-- khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi, kmsg=\EOl,
-- knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, kpp=\E[V,
-- kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, kres=\EOq,
-- krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB, ksav=\EOo,
-- kslt=\ENI, kspd=\EOp, kund=\EOs, use=att610,
--att610-103k-w|AT&T 610; 132 column; 103key keyboard,
-+ cud=\E[%p1%dB, cud1=^J, 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\,\E[30l$<300>,
-+ 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,
-+ 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,
-+#
-+# Wyse 85 with visual bell.
-+wy85-vb|wyse85-vb|wyse 85 with visible bell,
-+ bel@, flash=\E[30h\E\,\E[30l$<300>, use=wy85,
-+#
-+# Wyse 85 in 132-column mode.
-+wy85-w|wyse85-w|wyse 85 in 132-column mode,
- cols#132, wsl#132,
-- is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h,
-- use=att610-103k,
--att615|AT&T 615; 80 column; 98key keyboard,
-- kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE,
-- kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ,
-- kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS,
-- kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS,
-- kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt,
-- kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr,
-- kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610,
--att615-w|AT&T 615; 132 column; 98key keyboard,
-- kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE,
-- kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ,
-- kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS,
-- kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS,
-- kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt,
-- kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr,
-- kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610-w,
--att615-103k|AT&T 615; 80 column; 103key keyboard,
-- kLFT=\E[ A, kRIT=\E[ @, use=att610-103k,
--att615-103k-w|AT&T 615; 132 column; 103key keyboard,
-- kLFT=\E[ A, kRIT=\E[ @, use=att610-103k-w,
--# (att620: I added <rmam>/<smam> based on the init string and
--# <rin>/<indn> from a BSD termcap -- esr)
--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,
-+ rs2=\E[35h\E[?3h$<70>, use=wy85,
-+#
-+# Wyse 85 in 132-column mode with visual bell.
-+wy85-wvb|wyse85-wvb|wyse 85 with visible bell 132-columns,
-+ bel@, use=wy85-w,
-+
-+# From: Kevin Turner <kevint@aracnet.com>, 12 Jul 1998
-+# This copes with an apparent firmware bug in the wy85. He writes:
-+# "What I did was change leave the terminal cursor keys set to Normal
-+# (instead of application), and change \E[ to \233 for all the keys in
-+# terminfo. At one point, I found some reference indicating that this
-+# terminal bug (not sending \E[) was acknowledged by Wyse (so it's not just
-+# me), but I can't find that and the server under my bookmark to "Wyse
-+# Technical" isn't responding. So there's the question of wether the wy85
-+# terminfo should reflect the manufactuer's intended behaviour of the terminal
-+# or the actual."
-+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, cnorm=\E[?25h\E[?12l, cr=^M,
-+ clear=\E[H\E[J$<110>, cnorm=\E[?25h, cr=^M,
- 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,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-- flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I,
-- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-- indn=\E[%p1%dS, invis=\E[8m,
-- is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h,
-- is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H,
-- kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr,
-- kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD, kf17=\EOE,
-- kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH, kf21=\EOI,
-- kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR,
-- kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe, kf30=\EOQ,
-- kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx, kf35=\EOy,
-- kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv, kf4=\EOf,
-- kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs, kf44=\EOp,
-- kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj,
-- kf9=\ENo, khome=\E[H, kind=\E[S, kri=\E[T, ll=\E[24H,
-- mc4=\E[?4i, mc5=\E[?5i, nel=\EE,
-- pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s,
-- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m,
-- ri=\EM, rin=\E[%p1%dT, rmacs=\E(B\017, rmam=\E[?7l,
-- rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m,
-- rs2=\Ec\E[?3l, sc=\E7,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- 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,
--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,
-- use=att620,
--att620-103k|AT&T 620; 80 column; 103key keyboard,
-- kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON,
-- kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK,
-- kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH,
-- kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ,
-- kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9,
-- kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn,
-- kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M,
-- kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, kf17@,
-- kf18@, kf19@, kf20@, kf21@, kf22@, kf23@, kf24@, kf25@, kf26@, kf27@,
-- kf28@, kf29@, kf30@, kf31@, kf32@, kf33@, kf34@, kf35@, kf36@, kf37@,
-- kf38@, kf39@, kf40@, kf41@, kf42@, kf43@, kf44@, kf45@, kf46@, kf9@,
-- kfnd=\EOx, khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi,
-- kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr,
-- kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb,
-- kres=\EOq, krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB,
-- ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, use=att620,
--
--att620-103k-w|AT&T 620; 132 column; 103key keyboard,
-- cols#132, wsl#132,
-- is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h,
-- use=att620-103k,
--
--# AT&T (formerly Teletype) 630 Multi-Tasking Graphics terminal
--# The following SETUP modes are assumed for normal operation:
--# Local_Echo=Off Gen_Flow=On Return=CR Received_Newline=LF
--# Font_Size=Large Non-Layers_Window_Cols=80
--# Non-Layers_Window_Rows=60
--# Other SETUP modes may be set for operator convenience or communication
--# requirements. Some capabilities assume a printer attached to the Aux EIA
--# port. This termcap description is for the Fixed Non-Layers Window. No
--# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
--# (att630: added <ich1>, <blink> and <dim> from a BSD termcap file -- esr)
--att630|AT&T 630 windowing terminal,
-- OTbs, am, da, db, mir, msgr, npc, xon,
-- cols#80, it#8, lines#60, lm#0,
-- bel=^G, blink=\E[5m, cbt=\E[Z, clear=\E[H\E[J, cr=^M,
-- 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, 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, home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@,
-- il=\E[%p1%dL, il1=\E[L, ind=\ED, indn=\E[%p1%dS, is2=\E[m,
-- kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, kent=^M,
-- kf10=\ENp, kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt,
-- kf15=\ENu, kf16=\ENv, kf17=\ENw, kf18=\ENx, kf19=\ENy,
-- kf20=\ENz, kf21=\EN{, kf22=\EN|, kf23=\EN}, kf24=\EN~,
-- kf9=\ENo, khome=\E[H, kich1=\E[@, kil1=\E[L, mc4=\E[?4i,
-- mc5=\E[?5i, nel=^M^J, pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8,
-- rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmir=\E[4l, rmso=\E[m,
-- rmul=\E[m, rs2=\Ec, sc=\E7,
-- sgr=\E[0%?%p2%t;4%;%?%p1%p3%|%p4%|%p5%|%t;7%;m,
-- sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m,
--att630-24|5630-24|5630DMD-24|630MTG-24|AT&T 630 windowing terminal 24 lines,
-- lines#24, use=att630,
--
--# This is the att700 entry for 700 native emulation of the AT&T 700
--# terminal. Comments are relative to changes from the 605V2 entry and
--# att730 on which the entry is based. Comments show the terminfo
--# capability name, termcap name, and description.
--#
--# Here is what's going onm in the init string:
--# ESC [ 50;4| set 700 native mode (really is 605)
--# x ESC [ 56;ps| set lines to 24: ps=0; 40: ps=1 (plus status line)
--# ESC [ 53;0| set GenFlow to Xon/Xoff
--# ESC [ 8 ;0| set CR on NL
--# x ESC [ ? 3 l/h set workspace: 80 col(l); 132 col(h)
--# ESC [ ? 4 l jump scroll
--# ESC [ ? 5 l/h video: normal (l); reverse (h)
--# ESC [ ?13 l Labels on
--# ESC [ ?15 l parity check = no
--# ESC [ 13 l monitor mode off
--# ESC [ 20 l LF on NL (not CRLF on NL)
--# ESC [ ? 7 h autowrap on
--# ESC [ 12 h local echo off
--# ESC ( B GO = ASCII
--# ESC ) 0 G1 = Special Char & Line Drawing
--# ESC [ ? 31 l Set 7 bit controls
--#
--# Note: Most terminals, especially the 600 family use Reverse Video for
--# standout mode. DEC also uses reverse video. The VT100 uses bold in addition
--# Assume we should stay with reverse video for 70.. However, the 605V2 exits
--# standout mode with \E[m (all normal attributes). The 730 entry simply
--# exits reverse video which would leave other current attributes intact. It
--# was assumed the 730 entry to be more correct so rmso has changed. The
--# 605V2 has no sequences to turn individual attributes off, thus its setting
--# and the rmso/smso settings from the 730.
-+ cud=\E[%p1%dB, cud1=^J, 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\,\E[30l$<300>,
-+ 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,
-+ kcuf1=\233C, kcuu1=\233A, kdch1=\2333~, kent=\EOM,
-+ kf1=\EOP, kf10=\23321~, kf11=\23323~, kf12=\23324~,
-+ kf13=\23325~, kf14=\23326~, kf15=\23328~, kf16=\23329~,
-+ kf17=\23331~, kf18=\23332~, kf19=\23333~, kf2=\EOQ,
-+ kf20=\23334~, kf3=\EOR, kf4=\EOS, kf6=\23317~, kf7=\23318~,
-+ kf8=\23319~, kf9=\23320~, kfnd=\2331~, khlp=\23328~,
-+ khome=\23326~, kich1=\2332~, knp=\2336~, kpp=\2335~,
-+ kslt=\2334~, 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,
- #
--# Note: For the same reason as above in rmso I changed exit under-score mode
--# to specifically turn off underscore, rather than return to all normal
--# attributes
-+# Wyse 185 emulating a vt320 7 bit mode.
- #
--# Note: The following pkey_xmit is taken from the 605V2 which contained the
--# capability as pfxl. It was changed here to pfx since pfxl
--# will only compile successfully with Unix 4.0 tic. Also note that pfx only
--# allows strings to be parameters and label values must be programmed as
--# constant strings. Supposedly the pfxl of Version 4.0 allows both labels
--# and strings to be parameters. The 605V2 pfx entry should be examined later
--# in this regard. For reference the 730 pfxl entry is shown here for comparison
--# 730 pfx entry:
--# pfxl=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq\s\s\s
--# SYS\s\s\s\s\sF%p1%:-2d\s\s%e;0;3q%;%p2%s,
-+# This terminal always displays 25 lines. These lines may be used
-+# as 24 data lines and a terminal status line (top or bottom) or
-+# 25 data lines. The 48 and 50 line modes change the page size
-+# and not the number of lines on the screen.
- #
--# (for 4.0 tic)
--# pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s,
-+# The Compose Character key can be used as a meta key if changed
-+# by set-up.
- #
--# (for <4.0 tic)
--# pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s,
-+wy185|wyse185|wyse 185,
-+ am, hs, km, 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$<40>, cnorm=\E[34h\E[?25h, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-+ cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<3>,
-+ dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>,
-+ dsl=\E7\E[99;0H\E[K\E8, ech=\E[%p1%dX, ed=\E[J$<40>,
-+ el=\E[K, el1=\E[1K, enacs=\E)0,
-+ flash=\E[30h\E\,\E[30l$<100>, fsl=\E[1;24r\E8,
-+ home=\E[H, hpa=\E[%i%p1%d`, ht=^I, hts=\EH,
-+ ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>, 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;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,
-+ 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,
-+ 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%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ 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,
- #
--# From the AT&T 705 Multi-tasking terminal user's guide Page 8-8,8-9
-+# Wyse 185 with 24 data lines and top status (terminal status)
-+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,
- #
--# Port1 Interface
-+# Wyse 185 with visual bell.
-+wy185-vb|wyse185-vb|wyse 185+flash,
-+ bel@, use=wy185,
- #
--# modular 10 pin Connector
--# Left side Right side
--# Pin 1 2 3 4 5 6 7 8 9 10
-+# 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,
- #
--# Key (notch) at bottom
-+# Wyse 185 in 132-column mode with visual bell.
-+wy185-wvb|wyse185-wvb|wyse 185+flash+132 cols,
-+ bel@, use=wy185-w,
-+
-+# wy325 terminfo entries
-+# Done by Joe H. Davis 3-9-92
-+
-+# lines 25 columns 80
- #
--# Pin 1 DSR
--# 3 DCD
--# 4 DTR
--# 5 Sig Ground
--# 6 RD
--# 7 SD
--# 8 CTS
--# 9 RTS
--# 10 Frame Ground
-+wy325|wyse325|Wyse epc,
-+ am, bw, hs, mc5i, mir,
-+ cols#80, lh#1, lines#24, lw#8, nlab#8, pb#9601, wsl#45,
-+ acsc=+/\,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~,
-+ bel=^G, blink=\EG2, cbt=\EI, civis=\E`0, clear=\E+$<50>,
-+ cnorm=\E`1, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW$<7>,
-+ dim=\EGp, dl1=\ER$<3>, dsl=\EF\r, ed=\EY$<50>, el=\ET$<4>,
-+ flash=\E`8$<100/>\E`9, fsl=^M, home=^^, ht=^I, hts=\E1,
-+ il1=\EE$<3>, ind=\n$<3>, ip=$<2>, is1=\EcB0\EcC1,
-+ is2=\EcD\E'\Er\EH\003\Ed/\EO\Ee1\Ed*\E`@\E`9\E`1\016\024\El,
-+ is3=\Ew0$<16>, kHOM=\E{, kbs=^H, kcbt=\EI, kcub1=^H,
-+ kcud1=^J, 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, kf16=^AO\r,
-+ kf2=^AA\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, knp=\EK, kpp=\EJ, kprt=\EP, krpl=\Er, ll=^^^K,
-+ mc0=\EP, mc4=^T, mc5=\Ed#,
-+ pfloc=\EZ2%p1%{63}%+%c%p2%s\177,
-+ 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>,
-+ 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%{64}%|%;%?%p7%t%{1}%|%;%c,
-+ sgr0=\E(\EH\003\EG0\EcD, smacs=\EcE, smam=\Ed/,
-+ smcup=\Ew1, smir=\Eq, smln=\EA10, smso=\EGt, tbc=\E0,
-+ tsl=\EF, use=adm+sgr,
-+
- #
--# The manual is 189 pages and is loaded with details about the escape codes,
--# etc..... Available from AT&T CIC 800-432-6600...
--# ask for Document number 999-300-660..
-+# lines 24 columns 80 vb
- #
--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=^M,
-- 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,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-- enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fln=4\,4,
-- fsl=\E8, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-- il=\E[%p1%dL, il1=\E[L, ind=\ED, invis=\E[8m,
-- is2=\E[50;4|\E[53;0|\E[8;0|\E[?4;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0\E[?31l\E[0m\017,
-- is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z,
-- kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\E[P, kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp,
-- kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC,
-- kf16=\EOD, kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd,
-- kf20=\EOH, kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP,
-- kf25=\ENQ, kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOq,
-- kf3=\EOe, kf30=\EOr, kf31=\EOs, kf32=\EOt, kf33=\EOu,
-- kf34=\EOv, kf35=\EOw, kf36=\EOx, kf37=\EOy, kf38=\EOu,
-- kf39=\EOv, kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr,
-- kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg,
-- kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H,
-- kich1=\E[@, kil1=\E[L, knp=\E[U, kpp=\E[V, ll=\E[24H,
-- mc0=\E[i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE,
-- pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s,
-- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8,
-- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O,
-- rmir=\E[4l, rmln=\E[2p, rmso=\E[27m, rmul=\E[24m,
-- rmxon=\E[53;3|, rs1=\Ec\E[?3;5l\E[56;0|, sc=\E7,
-- sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%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,
--
--# This entry was modified 3/13/90 by JWE.
--# fixes include additions of <enacs>, correcting <rep>, and modification
--# of <kHOM>. (See comments below)
--# att730 has status line of 80 chars
--# These were commented out: <indn=\E[%p1%dS>, <rin=\E[%p1%dT>,
--# the <kf25> and up keys are used for shifted system Fkeys
--# NOTE: JWE 3/13/90 The 98 key keyboard translation for shift/HOME is
--# currently the same as <khome> (unshifted HOME or \E[H). On the 102, 102+1
--# and 122 key keyboards, the 730's translation is \E[2J. For consistency
--# <kHOM> has been commented out. The user can uncomment <kHOM> if using the
--# 102, 102+1, or 122 key keyboards
--# kHOM=\E[2J,
--# (att730: I added <rmam>/<smam> based on the init string -- esr)
--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=^M,
-- 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,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-- enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fsl=\E8,
-- home=\E[H, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
-- ind=\ED, invis=\E[8m,
-- is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B,
-- is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H,
-- kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr,
-- kf13=\ENs, kf14=\ENt, kf15=\ENu, kf16=\ENv, kf17=\ENw,
-- kf18=\ENx, kf19=\ENy, kf2=\EOd, kf20=\ENz, kf21=\EN{,
-- kf22=\EN|, kf23=\EN}, kf24=\EN~, kf25=\EOC, kf26=\EOD,
-- kf27=\EOE, kf28=\EOF, kf29=\EOG, kf3=\EOe, kf30=\EOH,
-- kf31=\EOI, kf32=\EOJ, kf33=\ENO, kf34=\ENP, kf35=\ENQ,
-- kf36=\ENR, kf37=\ENS, kf38=\ENT, kf39=\EOU, kf4=\EOf,
-- kf40=\EOV, kf41=\EOW, kf42=\EOX, kf43=\EOY, kf44=\EOZ,
-- kf45=\EO[, kf46=\EO\s, kf47=\EO], kf48=\EO\^, kf5=\EOg,
-- kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H,
-- kich1=\E[@, kil1=\E[L, kind=\E[S, kri=\E[T,
-- mc0=\E[?19h\E[0i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE,
-- pfx=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%:-2d %e;0;3q%;%p2%s,
-- pfxl=\E[%p1%d;%p2%l%02d;0;0q%p3%:-16.16s%p2%s,
-- pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8,
-- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O,
-- rmam=\E[?7l, rmir=\E[4l, rmln=\E[?13h, rmso=\E[27m,
-- rmul=\E[24m, rmxon=\E[?21l, rs2=\Ec\E[?3l, sc=\E7,
-- sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%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[?13l, smso=\E[7m, smul=\E[4m, smxon=\E[?21h,
-- swidm=\E#6, tsl=\E7\E[;%i%p1%dx,
--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,
-- lines#24, use=att730,
--att730r|730MTGr|AT&T 730 rev video windowing terminal Version,
-- flash=\E[?5l$<200>\E[?5h,
-- is1=\E[8;0|\E[?3;4;13;15l\E[?5h\E[13;20l\E[?7h\E[12h\E(B\E)B,
-- use=att730,
--att730r-41|730MTG-41r|AT&T 730r-41 rev video windowing terminal Version,
-- lines#41, use=att730r,
--att730r-24|730MTGr-24|AT&T 730r-24 rev video windowing terminal Version,
-- lines#24, use=att730r,
-+wy325-vb|wyse325-vb|wyse-325 with visual bell,
-+ bel@, use=wy325,
-
--# The following represents the screen layout along with the associated
--# bezel buttons for the 5430/pt505 terminal. The "kf" designations do
--# not appear on the screen but are shown to reference the bezel buttons.
--# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate
--# position relative to the screen.
- #
-+# lines 24 columns 132
- #
-+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,
- #
--# +----------------------------------------------------------------+
--# | |
--# XXXX | kf0 kf24 | XXXX
--# | |
--# | |
--# XXXX | kf1 kf23 | XXXX
--# | |
--# | |
--# XXXX | kf2 kf22 | XXXX
--# | |
--# | |
--# XXXX | kf3 kf21 | XXXX
--# | |
--# | |
--# XXXX | kf4 kf20 | XXXX
--# | |
--# | |
--# XXXX | kf5 kf19 | XXXX
--# | |
--# | |
--# XXXX | kf6 kf18 | XXXX
--# | |
--# | |
--# XXXX | | XXXX
--# | |
--# | |
--# +----------------------------------------------------------------+
-+# lines 25 columns 80
- #
--# XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
-+wy325-25|wyse325-25|wy325-80|wyse-325|wyse-325 25 lines,
-+ lh@, lines#25, lw@, nlab@,
-+ pln@, rs3=\EwG\Ee)$<100>, use=wy325,
- #
--# Note: XXXX represents the screen buttons
--# CMD REDRAW
-+# lines 25 columns 132
- #
--# MAIL
-+wy325-25w|wyse325-25w|wy325 132 columns,
-+ lh@, lines#25, lw@, nlab@,
-+ pln@, rs3=\EwG\Ee)$<100>, use=wy325-w,
- #
--# version 1 note:
--# The character string sent by key 'kf26' may be user programmable
--# to send either \E[16s, or \E[26s.
--# The character string sent by key 'krfr' may be user programmable
--# to send either \E[17s, or \E[27s.
-+# lines 25 columns 132 vb
- #
--# Depression of the "CMD" key sends \E! (kcmd)
--# Depression of the "MAIL" key sends \E[26s (kf26)
--# "REDRAW" same as "REFRESH" (krfr)
-+wy325-w-vb|wy325-wvb|wyse325-wvb|wyse-325 wide mode reverse video,
-+ bel@, use=wy325-w,
-+
- #
--# "kf" functions adds carriage return to output string if terminal is in
--# 'new line' mode.
-+# lines 42 columns 80
- #
--# The following are functions not covered in the table above:
-+wy325-42|wyse325-42|wyse-325 42 lines,
-+ lh@, lines#42, lw@, nlab@,
-+ pln@, rs3=\EwG\Ee)$<100>, use=wy325,
- #
--# Set keyboard character (SKC): \EPn1;Pn2w
--# Pn1= 0 Back Space key
--# Pn1= 1 Break key
--# Pn2= Program char (hex)
-+# lines 42 columns 132
- #
--# Screen Definition (SDF): \E[Pn1;Pn2;Pn3;Pn4;Pn5t
--# Pn1= Window number (1-39)
--# Pn2-Pn5= Y;X;Y;X coordinates
-+wy325-42w|wyse325-42w|wyse-325 42 lines wide mode,
-+ lh@, lines#42, lw@, nlab@,
-+ pln@, rs3=\EwG\Ee)$<100>, use=wy325-w,
- #
--# Screen Selection (SSL): \E[Pnu
--# Pn= Window number
-+# lines 42 columns 132 vb
- #
--# Set Terminal Modes (SM): \E[Pnh
--# Pn= 3 Graphics mode
--# Pn= > Cursor blink
--# Pn= < Enter new line mode
--# Pn= = Enter reverse insert/replace mode
--# Pn= ? Enter no scroll mode
-+wy325-42w-vb|wy325-42wvb|wyse-325 42 lines wide mode visual bell,
-+ bel@, use=wy325-w,
- #
--# Reset Terminal Mode (RM): \E[Pnl
--# Pn= 3 Exit graphics mode
--# Pn= > Exit cursor blink
--# Pn= < Exit new line mode
--# Pn= = Exit reverse insert/replace mode
--# Pn= ? Exit no scroll mode
-+# lines 43 columns 80
- #
--# Screen Status Report (SSR): \E[Pnp
--# Pn= 0 Request current window number
--# Pn= 1 Request current window dimensions
-+wy325-43|wyse325-43|wyse-325 43 lines,
-+ lh@, lines#43, lw@, nlab@,
-+ pln@, use=wy325,
- #
--# Device Status Report (DSR): \E[6n Request cursor position
-+# lines 43 columns 132
- #
--# Call Status Report (CSR): \E[Pnv
--# Pn= 0 Call failed
--# Pn= 1 Call successful
-+wy325-43w|wyse325-43w|wyse-325 43 lines wide mode,
-+ lh@, lines#43, lw@, nlab@,
-+ pln@, rs3=\EwG\Ee)$<100>, use=wy325-w,
- #
--# Transparent Button String (TBS): \E[Pn1;Pn2;Pn3;{string
--# Pn1= Button number to be loaded
--# Pn2= Character count of "string"
--# Pn3= Key mode being loaded:
--# 0= Unshifted
--# 1= Shifted
--# 2= Control
--# String= Text string (15 chars max)
-+# lines 43 columns 132 vb
- #
--# Screen Number Report (SNR): \E[Pnp
--# Pn= Screen number
-+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.
- #
--# Screen Dimension Report (SDR): \E[Pn1;Pn2r
--# Pn1= Number of rows available in window
--# Pn2= Number of columns available in window
-+# The terminal may have to be set for 8 data bits and 2 stop
-+# bits for the arrow keys to work.
- #
--# Cursor Position Report (CPR): \E[Pn1;Pn2R
--# Pn1= "Y" Position of cursor
--# Pn2= "X" Position of cursor
-+# If you change keyboards the terminal will send different
-+# escape sequences.
-+# The following definition is for the basic terminal without
-+# function keys.
- #
--# Request Answer Back (RAB): \E[c
-+# <u0> -> enter Tektronix 4010/4014 mode
-+# <u1> -> exit Tektronix 4010/4014 mode
-+# <u2> -> enter ASCII mode (from any ANSI mode)
-+# <u3> -> exit ASCII mode (goto native ANSI mode)
-+# <u4> -> enter Tek 4207 ANSI mode (from any ANSI mode)
-+# <u5> -> exit Tek 4207 mode (goto native ANSI mode)
- #
--# Answer Back Response (ABR): \E[?;*;30;VSV
--# *= 0 No printer available
--# *= 2 Printer available
--# V= Software version number
--# SV= Software sub version number
--# (printer-available field not documented in v1)
-+# Bug: The <op> capability resets attributes.
-+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{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
-+ clear=\E[H\E[J$<40>, cnorm=\E[34h\E[?25h, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH$<1>, cuu=\E[%p1%dA, cuu1=\E[A,
-+ cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<1*>, dch1=\E[P$<1>,
-+ dclk=\E[31h, dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>,
-+ dsl=\E[40l, ech=\E[%p1%dX$<.1*>, ed=\E[J$<40>,
-+ el=\E[K$<10>, el1=\E[1K$<12>, enacs=\E)0,
-+ flash=\E[30h\E\,\E[30l$<300>, fsl=\E[1;24r\E8,
-+ home=\E[H, hpa=\E[%i%p1%d`, ht=\011$<1>, hts=\EH,
-+ ich=\E[%p1%d@$<1*>, il=\E[%p1%dL$<2*>, il1=\E[L$<2>,
-+ ind=\n$<2>,
-+ initc=\E[66;%p1%d;%?%p2%{250}%<%t%{0}%e%p2%{500}%<%t%{16}%e%p2%{750}%<%t%{32}%e%{48}%;%?%p3%{250}%<%t%{0}%e%p3%{500}%<%t%{4}%e%p3%{750}%<%t%{8}%e%{12}%;%?%p4%{250}%<%t%{0}%e%p4%{500}%<%t%{1}%e%p4%{750}%<%t%{2}%e%{3}%;%{1}%+%+%+%dw,
-+ invis=\E[8m, ip=$<1>, is1=\E[90;1"p\E[?5W$<6>,
-+ is2=\E[2;4;20;30;40l\E[?1;10;16l\E[12h\E[?7;8;25h,
-+ is3=\E>\017\E)0\E(B\E[63;0w\E[m, mc0=\E[0i, mc4=\E[4i,
-+ mc5=\E[5i,
-+ oc=\E[60w\E[63;0w\E[66;1;4w\E[66;2;13w\E[66;3;16w\E[66;4;49w\E[66;5;51w\E[66;6;61w\E[66;7;64w,
-+ op=\E[m, rc=\E8, rev=\E[7m, ri=\EM$<2>, rmacs=^O,
-+ rmam=\E[?7l, rmclk=\E[31l, rmcup=\E[ R, rmir=\E[4l,
-+ rmkx=\E>, rmso=\E[27m, rmul=\E[24m,
-+ rs1=\E[13l\E[3l\E!p\E[?4i, rs2=\E[35h\E[?3l$<8>,
-+ rs3=\E[?5l, sc=\E7, setb=\E[62;%p1%dw, setf=\E[61;%p1%dw,
-+ 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, smcup=\E[ Q,
-+ smir=\E[4h, smkx=\E[?1l\E=, smso=\E[7m, smul=\E[4m,
-+ tbc=\E[3g, tsl=\E[40l\E[40h\E7\E[99;%i%p1%dH,
-+ u0=\E[?38h\E8, u1=\E[?38l\E)0, u2=\E[92;52"p, u3=\E~B,
-+ u4=\E[92;76"p, u5=\E%!1\E[90;1"p, vpa=\E[%i%p1%dd,
- #
--# Screen Alignment Aid: \En
-+# Function key set for the ASCII (wy-50 compatible) keyboard
-+# This is the default 370.
- #
--# Bell (lower pitch): \E[x
-+wy370|wyse370|wy370-101k|Wyse 370 with 101 key keyboard,
-+ kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kdch1=\EOQ, kdl1=\EOQ, kent=\EOM, kf1=\E[?4i,
-+ kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf13=\E[25~,
-+ kf14=\E[26~, kf15=\E[28~, kf16=\E[29~, kf2=\E[?3i,
-+ kf3=\E[2i, kf4=\E[@, kf5=\E[M, kf6=\E[17~, kf7=\E[18~,
-+ kf8=\E[19~, kf9=\E[20~, khome=\E[H, kich1=\EOP, kil1=\EOP,
-+ knp=\E[U, kpp=\E[V, use=wy370-nk,
- #
--# Dial Phone Number: \EPdstring\
--# string= Phone number to be dialed
-+# Function key set for the VT-320 (and wy85) compatible keyboard
- #
--# Set Phone Labels: \EPpstring\
--# string= Label for phone buttons
-+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,
- #
--# Set Clock: \EPchour;minute;second\
-+# Function key set for the PC compatible keyboard
- #
--# Position Clock: \EPsY;X\
--# Y= "Y" coordinate
--# X= "X" coordinate
-+wy370-EPC|Wyse 370 with 102 key keyboard,
-+ kbs=^H, kcbt=\E[Z, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kend=\E[1~, kent=\EOM, kf1=\EOP, kf10=\E[21~,
-+ kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-+ kf5=\E[M, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-+ khome=\E[H, kich1=\E[2~, knp=\E[U, kpp=\E[V, use=wy370-nk,
- #
--# Delete Clock: \Epr\
-+# Wyse 370 with visual bell.
-+wy370-vb|Wyse 370 with visible bell,
-+ bel@, use=wy370,
- #
--# Programming The Function Buttons: \EPfPn;string\
--# Pn= Button number (00-06, 18-24)
--# (kf00-kf06, kf18-kf24)
--# string= Text to sent on button depression
-+# Wyse 370 in 132-column mode.
-+wy370-w|Wyse 370 in 132-column mode,
-+ cols#132, wsl#132,
-+ rs2=\E[35h\E[?3h$<70>, use=wy370,
- #
--# The following in version 2 only:
-+# Wyse 370 in 132-column mode with visual bell.
-+wy370-wvb|Wyse 370 with visible bell 132-columns,
-+ flash=\E[30h\E\,\E[30l$<300>, use=wy370-w,
-+wy370-rv|Wyse 370 reverse video,
-+ rs3=\E[32h\E[?5h, use=wy370,
- #
--# Request For Local Directory Data: \EPp12;\
-+# Wyse 99gt Tektronix 4010/4014 emulator,
- #
--# Local Directory Data to host: \EPp11;LOCAL...DIRECTORY...DATA\
-+wy99gt-tek|Wyse 99gt Tektronix 4010/4014 emulator,
-+ am, os,
-+ cols#74, lines#35,
-+ bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s,
-+ cup=\035%{3040}%{89}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037,
-+ cuu1=^K, ff=^L,
-+ hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037,
-+ home=^]7`x @\037,
-+ hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037,
-+ is2=\E8, nel=^M^J, u0=\E~>\E8, u1=\E[42h,
- #
--# Request for Local Directory Data in print format: \EPp13;\
-+# Wyse 160 Tektronix 4010/4014 emulator,
- #
--# Enable 'Prt on Line' mode: \022 (DC2)
-+wy160-tek|Wyse 160 Tektronix 4010/4014 emulator,
-+ cup=\035%{3103}%{91}%p1%*%-%Py%p2%{55}%*%Px%gy%{128}%/%{31}%&%{32}%+%c%gy%{3}%&%{4}%*%gx%{3}%&%+%{96}%+%c%gy%{004}%/%{31}%&%{96}%+%c%gx%{128}%/%{31}%&%{32}%+%c%gx%{004}%/%{31}%&%{64}%+%c\037,
-+ home=^]8`g @\037, use=wy99gt-tek,
- #
--# Disable 'Prt on Line' mode: \024 (DC4)
-+# Wyse 370 Tektronix 4010/4014 emulator,
- #
-+wy370-tek|Wyse 370 Tektronix 4010/4014 emulator,
-+ am, os,
-+ cols#80, lines#36,
-+ bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s,
-+ cup=\035%{775}%{108}%p1%*%{5}%/%-%Py%p2%{64}%*%{4}%+%{5}%/%Px%gy%{32}%/%{31}%&%{32}%+%c%gy%{31}%&%{96}%+%c%gx%{32}%/%{31}%&%{32}%+%c%gx%{31}%&%{64}%+%c\037,
-+ cuu1=^K, ff=^L,
-+ hd=\036HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH\037,
-+ home=^]8g @\037,
-+ hu=\036DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD\037,
-+ is2=\E8, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^I, kcuu1=^K,
-+ nel=^M^J, u0=\E[?38h\E8, u1=\E[?38l\E)0,
-
--# 05-Aug-86:
--# The following Terminfo entry describes functions which are supported by
--# the AT&T 5430/pt505 terminal software version 2 and later.
--att505|pt505|att5430|gs5430|AT&T Personal Terminal 505 or 5430 GETSET terminal,
-- am, xon,
-- cols#80, it#8, lines#24,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H,
-- cnorm=\E[>l, cr=^M, cub=\E[%p1%dD, cub1=\E[D,
-- cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- cvvis=\E[>h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-- dl1=\E[M, ed=\E[0J, el=\E[0K, el1=\E[2K, home=\E[H, ht=^I,
-- il=\E[%p1%dL, il1=\E[L, ind=^J,
-- is1=\EPr\\E[0u\E[2J\E[0;0H\E[m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l,
-- kbs=^H, kcmd=\E!, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kf0=\E[00s, kf1=\E[01s, kf18=\E[18s,
-- kf19=\E[19s, kf2=\E[02s, kf20=\E[20s, kf21=\E[21s,
-- kf22=\E[22s, kf23=\E[23s, kf24=\E[24s, kf26=\E[26s,
-- kf3=\E[03s, kf4=\E[04s, kf5=\E[05s, kf6=\E[06s,
-- krfr=\E[27s, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m,
-- rmacs=\E[10m, rmam=\E[11;1j, rmir=\E[4l, rmso=\E[m,
-- rmul=\E[m, rs1=\Ec, sc=\E7, sgr0=\E[m, smacs=\E[11m,
-- smam=\E[11;0j, smir=\E[4h, smso=\E[1m, smul=\E[4m,
-+# Vendor-supplied Wyse entries end here.
-
--# The following Terminfo entry describes functions which are supported by
--# the AT&T 5430/pt505 terminal software version 1.
--att505-24|pt505-24|gs5430-24|AT&T PT505 or 5430 GETSET version 1 24 lines,
-- lines#24,
-- mc4@, mc5@, rc@, rmam@, sc@, smam@, use=att505,
--tt505-22|pt505-22|gs5430-22|AT&T PT505 or 5430 GETSET version 1 22 lines,
-- lines#22, use=att505,
- #
--#### ------------------ TERMINFO FILE CAN BE SPLIT HERE ---------------------
--# This cut mark helps make life less painful for people running ncurses tic
--# on machines with relatively little RAM. The file can be broken in half here
--# cleanly and compiled in sections -- no `use' references cross this cut
--# going forward.
-+#TITLE: TERMINFO ENTRY WY520
-+#DATE: 8/5/93
-+# The WY520 terminfo is based on the WY285 entry published on the WYSE
-+# BBS with the addition of more function keys and special keys.
- #
--
--#### Ampex (Dialogue)
-+# rs1 -> set personality
-+# rs2 -> set number of columns
-+# rs3 -> set number of lines
-+# is1 -> select the proper font
-+# is2 -> do the initialization
-+# is3 -> If this string is empty then rs3 gets sent.
- #
--# Yes, these are the same people who are better-known for making audio- and
--# videotape. I'm told they are located in Redwood City, CA.
-+# Wyse 520 emulating a vt420 7 bit mode with default ANSI keyboard
-+# - The BS key is programmed to generate BS in smcup since
-+# is2 doesn't seem to work.
-+# - Remove and shift/Remove: delete a character
-+# - Insert : enter insert mode
-+# - Find : delete to end of file
-+# - Select : clear a line
-+# - F11, F12, F13: send default sequences (not ESC, BS, LF)
-+# - F14 : Home key
-+# - Bottom status line (host writable line) is used.
-+# - smkx,rmkx are removed because this would put the numeric
-+# keypad in Dec application mode which doesn't seem to work
-+# with SCO applications.
- #
--
--# 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,
-- OTbs, am, bw, ul,
-- cols#80, it#8, lines#24,
-- bel=^G, cbt=\EI, clear=\E*$<75>, cr=^M, cub1=^H, cud1=^J,
-- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- dch1=\EW, dl1=\ER$<5*>, ed=\Ey, el=\Et, ht=^I, hts=\E1,
-- ich1=\EQ, il1=\EE$<5*>, ind=^J, 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,
-- am,
-- cols#80, lines#24,
-- bel=^G, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\Ey, el=\Et, home=^^, ich1=\EQ, il1=\EE, ind=^J,
-- is2=\EX\EA\EF, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K,
-- kdch1=\EW, kdl1=\ER, khome=^^, kich1=\EQ, kil1=\EE, ll=^^^K,
-- rmcup=\EF, rmso=\Ek, rmul=\Em, smcup=\EN, smso=\Ej, smul=\El,
--# No backspace key in the main QWERTY cluster. Fortunately, it has a
--# NEWLINE/PAGE key just above RETURN that sends a strange single-character
--# code. Given a suitable Unix (one that lets you set an echo-erase-as-BS-SP-BS
--# 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,
-- kbs=^_, use=ampex175,
--# From: Richard Bascove <atd!dsd!rcb@ucbvax.berkeley.edu>
--# (ampex210: removed obsolete ":kn#10:" -- esr)
--ampex210|a210|ampex a210,
-- OTbs, am, hs, xenl,
-- cols#80, it#8, lines#24, xmc#1,
-- cbt=\EI, clear=\E*, cub1=^H, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\Ey, el=\Et, flash=\EU\EX\EU\EX\EU\EX\EU\EX,
-- fsl=\E.2, home=^^, ht=^I, ich1=\EQ,
-- if=/usr/share/tabset/std, il1=\EE, invis@,
-- is2=\EC\Eu\E'\E(\El\EA\E%\E{\E.2\EG0\Ed\En, kcub1=^H,
-- kcud1=^V, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r,
-- kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r,
-- kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, khome=^^,
-- tsl=\E.0\Eg\E}\Ef, use=adm+sgr,
--# (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,
-- hs, xenl,
-- cols#80, it#8, lines#24,
-- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, cbt=\E[Z,
-- clear=\E[H\E[2J$<50>, cnorm=\E[?3l, cr=^M,
-- csr=%i\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B,
-- cuf1=\E[C$<2>, cup=\E[%i%p1%d;%p2%dH$<5>,
-- cuu1=\E[A$<2>, cvvis=\E[?3h, dim=\E[1m, ed=\E[J$<50>,
-- el=\E[K$<3>, home=\E[H, ht=^I, ind=^J,
-- is2=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\E[21~,
-- kf1=\E[7~, kf2=\E[8~, kf3=\E[9~, kf4=\E[10~, kf5=\E[11~,
-- kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H,
-- rev=\E[7m, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E>,
-- rmso=\E[m$<2>, rmul=\E[m$<2>, sgr0=\E[m$<2>, smam=\E[?7h,
-- smkx=\E=, smso=\E[7m$<2>, smul=\E[4m$<2>,
--ampex219w|ampex-219w|amp219w|Ampex 132 cols,
-- cols#132, lines#24,
-- bel=^G, cr=^M, cud1=^J, ind=^J,
-- is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, use=ampex219,
--# (ampex232: removed <if=/usr/share/tabset/ampex>, no file and no <hts> --esr)
--ampex232|ampex-232|Ampex Model 232,
-- am,
-- cols#80, lines#24, xmc#1,
-- cbt=\EI, civis=\E.0, clear=\E+, cnorm=\E.4, cub1=^H, cud1=^V,
-- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- dch1=\EW, dl1=\ER$<5*/>, ed=\EY, el=\ET,
-- flash=\Eb$<200/>\Ed, ht=^I, ich1=\EQ, il1=\EE$<5*/>,
-- invis@, is2=\Eg\El, kbs=^H, kcub1=^H, kcud1=^V, kcuf1=^L,
-- kcuu1=^K, 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, khome=^^, use=adm+sgr,
--# (ampex: removed <if=/usr/share/tabset/amp-132>, no file and no <hts> -- esr)
--ampex232w|Ampex Model 232 / 132 columns,
-- cols#132, lines#24,
-- is2=\E\034Eg\El, use=ampex232,
--
--#### Ann Arbor (aa)
-+wy520|wyse520|wyse 520,
-+ am, hs, km, mc5i, mir, 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$<40>, cnorm=\E[34h\E[?25h, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr$<20>, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-+ cvvis=\E[?25h\E[34l, dch=\E[%p1%dP$<3>, dch1=\E[P$<30>,
-+ dim=\E[2m, dl=\E[%p1%dM$<2*>, dl1=\E[M$<2>, dsl=\E[0$~,
-+ ech=\E[%p1%dX, ed=\E[J$<40>, el=\E[K, el1=\E[1K,
-+ enacs=\E)0, fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%d`, ht=^I,
-+ hts=\EH, ich=\E[%p1%d@$<2>, il=\E[%p1%dL$<3*>,
-+ 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,
-+ 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%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ 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,
- #
--# Ann Arbor made dream terminals for hackers -- large screen sizes and huge
--# numbers of function keys. At least some used monitors in portrait mode,
--# allowing up to 76-character screen heights! They were reachable at:
-+# Wyse 520 with 24 data lines and status (terminal status)
-+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,
- #
--# Ann Arbor Terminals
--# 6175 Jackson Road
--# Ann Arbor, MI 48103
--# (313)-663-8000
-+# Wyse 520 with visual bell.
-+wy520-vb|wyse520-vb|wyse 520 with visible bell,
-+ flash=\E[30h\E\,\E[30l$<100>, use=wy520,
- #
--# But in 1996 the phone number reaches some kitschy retail shop, and Ann Arbor
--# can't be found on the Web; I fear they're long dead. R.I.P.
-+# 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,
- #
--
--
--# Originally from Mike O'Brien@Rand and Howard Katseff at Bell Labs.
--# Highly modified 6/22 by Mike O'Brien.
--# split out into several for the various screen sizes by dave-yost@rand
--# Modifications made 3/82 by Mark Horton
--# Modified by Tom Quarles at UCB for greater efficiency and more diversity
--# status line moved to top of screen, <flash> removed 5/82
--# Some unknown person at SCO then hacked the init strings to make them more
--# efficient.
-+# Wyse 520 in 132-column mode with visual bell.
-+wy520-wvb|wyse520-wvb|wyse 520 with visible bell 132-columns,
-+ flash=\E[30h\E\,\E[30l$<100>, use=wy520-w,
- #
--# assumes the following setup:
--# A menu: 0000 1010 0001 0000
--# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19
--# C menu: 56 66 0 0 9600 0110 1100
--# D menu: 0110 1001 1 0
- #
--# Briefly, the settings are for the following modes:
--# (values are for bit set/clear with * indicating our preference
--# and the value used to test these termcaps)
--# Note that many of these settings are irrelevent to the terminfo
--# and are just set to the default mode of the terminal as shipped
--# by the factory.
-+# Wyse 520 emulating a vt420 7 bit mode.
-+# The DEL key is programmed to generate BS in is2.
-+# With EPC keyboard.
-+# - 'End' key will clear till end of line on EPC keyboard
-+# - Shift/End : ignored.
-+# - Insert : enter insert mode.
-+# - 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,
-+ kdch1=\177, 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,
- #
--# A menu: 0000 1010 0001 0000
--# Block/underline cursor*
--# blinking/nonblinking cursor*
--# key click/no key click*
--# bell/no bell at column 72*
-+# 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,
-+ hs@,
-+ dsl@, fsl@, rs3=\E[?5l\E[47h\E[40l\E[1;24r, tsl@,
-+ use=wy520-epc,
- #
--# key pad is cursor control*/key pad is numeric
--# return and line feed/return for <cr> key *
--# repeat after .5 sec*/no repeat
--# repeat at 25/15 chars per sec. *
-+# Wyse 520 with visual bell.
-+wy520-epc-vb|wyse520-pc-vb|wyse 520 with visible bell and EPC keyboard,
-+ flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc,
- #
--# hold data until pause pressed/process data unless pause pressed*
--# slow scroll/no slow scroll*
--# Hold in area/don't hold in area*
--# functions keys have default*/function keys disabled on powerup
-+# Wyse 520 in 132-column mode.
-+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,
- #
--# show/don't show position of cursor during page transmit*
--# unused
--# unused
--# unused
-+# 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,
-+ flash=\E[30h\E\,\E[30l$<100>, use=wy520-epc-w,
- #
--# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19
--# Baud rate (9600*)
-+# Wyse 520 in 80-column, 36 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,
- #
--# 2 bits of parity - 00=odd,01=even*,10=space,11=mark
--# 1 stop bit*/2 stop bits
--# parity error detection off*/on
-+# Wyse 520 in 80-column, 48 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,
- #
--# keyboard local/on line*
--# half/full duplex*
--# disable/do not disable keyboard after data transmission*
-+# Wyse 520 in 132-column, 36 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,
- #
--# transmit entire page/stop transmission at cursor*
--# transfer/do not transfer protected characters*
--# transmit all characters/transmit only selected characters*
--# transmit all selected areas/transmit only 1 selected area*
-+# Wyse 520 in 132-column, 48 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$|,
-+ use=wy520-48,
- #
--# transmit/do not transmit line separators to host*
--# transmit/do not transmit page tab stops tabs to host*
--# transmit/do not transmit column tab stop tabs to host*
--# transmit/do not transmit graphics control (underline,inverse..)*
- #
--# enable*/disable auto XON/XOFF control
--# require/do not require receipt of a DC1 from host after each LF*
--# pause key acts as a meta key/pause key is pause*
--# unused
-+# Wyse 520 in 80-column, 36 lines with 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,
- #
--# unused
--# unused
--# unused
--# unused
-+# Wyse 520 in 80-column, 48 lines with 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,
- #
--# XON character (17*)
--# XOFF character (19*)
-+# Wyse 520 in 132-column, 36 lines with 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,
- #
--# C menu: 56 66 0 0 9600 0110 1100
--# number of lines to print data on (printer) (56*)
-+# Wyse 520 in 132-column, 48 lines with 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$|,
-+ use=wy520-48pc,
-+
-+# From: John Gilmore <hoptoad!gnu@lll-crg.arpa>
-+# (wyse-vp: removed <if=/usr/share/tabset/wyse-adds>, there's no such
-+# file and we don't know what <hts> is -- esr)
-+wyse-vp|Wyse 50 in ADDS Viewpoint emulation mode with "enhance" on,
-+ OTbs, am,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, 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=^J,
-+ is2=\E`\:\E`9\017\Er, kbs=^H, kcub1=^U, kcud1=^J, kcuf1=^F,
-+ kcuu1=^Z, khome=^A, ll=^A^Z, nel=^M^J, rmir=\Er, rmso=^O,
-+ 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,
-+ is2=\E[1;24r\E[?10;3l\E[?1;25h\E[4l\E[m\E(B\E=,
-+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-+ khome=\EOH, rmkx=\E[?1l\E>$<10/>, smkx=\E[?1h\E=$<10/>,
-+ use=wy75,
-+
-+# From: Eric Freudenthal <freudent@eric.ultra.nyu.edu>
-+wy100q|Wyse 100 for Quotron,
-+ OTbs,
-+ cols#80, lines#24, xmc#1,
-+ cbt=\EI, clear=^Z, cub1=^H, cud1=^J, 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=^J,
-+ kcuf1=^L, kcuu1=^K, ri=\Ej, rmir=\Er, smir=\Eq, use=adm+sgr,
-+
-+#### Kermit terminal emulations
- #
--# number of lines on a sheet of paper (printer) (66*)
-+# Obsolete Kermit versions may be listed in the section describing obsolete
-+# non-ANSI terminal emulators later in the file.
- #
--# left margin (printer) (0*)
-+
-+# KERMIT standard all versions.
-+# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi.
-+# (kermit: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr)
-+# From: greg small <gts@populi.berkeley.edu> 9-25-84
-+kermit|standard kermit,
-+ OTbs,
-+ cols#80, lines#24,
-+ clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
-+ el=\EK, home=\EH, is2=K0 Standard Kermit 9-25-84\n,
-+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^,
-+kermit-am|standard kermit plus auto-margin,
-+ am,
-+ is2=K1 Standard Kermit plus Automatic Margins\n,
-+ use=kermit,
-+# IBMPC Kermit 1.2.
-+# Bugs: <ed>, <el>: do not work except at beginning of line! <clear> does
-+# not work, but fake with :cl=\EH\EJ (since :cd=\EJ: works at beginning of
-+# line).
-+# From: greg small <gts@populi.berkeley.edu> 8-30-84
-+pckermit|pckermit12|UCB IBMPC Kermit 1.2,
-+ am,
-+ lines#25,
-+ clear=\EH\EJ, ed@, el@,
-+ is2=K2 UCB IBMPC Kermit 1.2 8-30-84\n, use=kermit,
-+# IBMPC Kermit 1.20
-+# Cannot use line 25, now acts funny like ansi special scrolling region.
-+# Initialization must escape from that region by cursor position to line 24.
-+# Cannot use character insert because 1.20 goes crazy if insert at col 80.
-+# Does not use :am: because autowrap is lost when kermit dropped and restarted.
-+# From: greg small <gts@populi.berkeley.edu> 12-19-84
-+pckermit120|UCB IBMPC Kermit 1.20,
-+ it#8, lines#24,
-+ cud1=\EB, cvvis=\EO\Eq\EEK3, dch1=\EN, dl1=\EM, ht=^I,
-+ il1=\EL,
-+ is2=\EO\Eq\EJ\EY7 K3 UCB IBMPC Kermit 1.20 12-19-84\n,
-+ rmir@, rmso=\Eq, smir@, smso=\Ep, use=kermit,
-+# MS-DOS Kermit 2.27 for the IBMPC
-+# Straight ascii keyboard. :sr=\EI: not avail. many versions + bug prone in vi.
-+# Cannot use line 25, now acts funny like ansi special scrolling region.
-+# Initialization must escape from that region by cursor position to line 24.
-+# Does not use am: because autowrap is lost when kermit dropped and restarted.
-+# Reverse video for standout like H19.
-+# (msk227: removed obsolete ":ma=^Hh^Jj^Kk^Ll^^H:" -- esr)
-+# From: greg small <gts@populi.berkeley.edu> 3-17-85
-+msk227|mskermit227|MS-DOS Kermit 2.27 for the IBMPC,
-+ OTbs, am@,
-+ cols#80, it#8, lines#24,
-+ clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA,
-+ cvvis=\EO\Eq\EG\EwK4, dch1=\EN, dl1=\EM, ed=\EJ, el=\EK,
-+ home=\EH, ht=^I, il1=\EL,
-+ is2=\EO\Eq\EG\Ew\EJ\EY7 K4 MS Kermit 2.27 for the IBMPC 3-17-85\n,
-+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rc=\Ek,
-+ rmir=\EO, rmso=\Eq, sc=\Ej, smir=\E@, smso=\Ep,
-+# MS-DOS Kermit 2.27 with automatic margins
-+# From: greg small <gts@populi.berkeley.edu> 3-17-85
-+msk227am|mskermit227am|UCB MS-DOS Kermit 2.27 with automatic margins,
-+ am,
-+ cvvis=\EO\Eq\EG\EvK5,
-+ is2=\EO\Eq\EG\Ev\EJ\EY7 K5 MS Kermit 2.27 +automatic margins 3-17-85\n,
-+ use=msk227,
-+# MS-DOS Kermit 2.27 UCB 227.14 for the IBM PC
-+# Automatic margins now default. Use ansi <sgr> for highlights.
-+# Define function keys.
-+# (msk22714: removed obsolete ":kn#10:" -- esr)
-+# From: greg small <gts@populi.berkeley.edu> 3-17-85
-+msk22714|mskermit22714|UCB MS-DOS Kermit 2.27 UCB 227.14 IBM PC,
-+ am,
-+ bold=\E[1m, cvvis=\EO\Eq\EG\EvK6,
-+ is2=\EO\Eq\EG\Ev\EJ\EY7 K6 MS Kermit 2.27 UCB 227.14 IBM PC 3-17-85\n,
-+ kf0=\E0, kf1=\E1, kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6,
-+ kf7=\E7, kf8=\E8, kf9=\E9, rev=\E[7m, rmso=\E[m, rmul=\E[m,
-+ sgr0=\E[m, smso=\E[1m, smul=\E[4m, use=mskermit227,
-+# This was designed for a VT320 emulator, but it is probably a good start
-+# at support for the VT320 itself.
-+# Please send changes with explanations to bug-gnu-emacs@prep.ai.mit.edu.
-+# (vt320-k3: I added <rmam>/<smam> based on the init string -- esr)
-+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=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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[0$~, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
-+ flash=\E[?5h\E[?5l\E[?5h\E[?5l\E[?5h\E[?5l,
-+ fsl=\E[0$}, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
-+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ is2=\E>\E F\E[?1h\E[?7h\E[r\E[2$~, kbs=^H, kcub1=\EOD,
-+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdl1=\E[3~, kf0=\E[21~,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
-+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, kich1=\E[2~, knp=\E[6~,
-+ kpp=\E[5~, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, nel=^M^J, rc=\E8,
-+ rev=\E[7m, ri=\EM, rin=\E[%p1%dL, rmacs=\E(B, rmam=\E[?7l,
-+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m, rmul=\E[24m,
-+ rs1=\E(B\E)B\E>\E F\E[4;20l\E[12h\E[?1;5;6;38;42l\E[?7;25h\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,
-+# 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,
-+ 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=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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\E[?5l, fsl=\E[$}, home=\E[H, ht=^I, hts=\EH,
-+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L$<3/>, ind=\ED,
-+ is2=\E>\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,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf6=\E[17~,
-+ kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, lf1=pf1, lf2=pf2,
-+ lf3=pf3, lf4=pf4, nel=^M\ED, rc=\E8, rev=\E[7m,
-+ rf=/usr/share/tabset/vt100, ri=\EM, rmacs=^O,
-+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,
-+ 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,
-+
-+######## NON-ANSI TERMINAL EMULATIONS
- #
--# number of pad chars on new line to printer (0*)
-+
-+#### Avatar
- #
--# printer baud rate (9600*)
-+# These entries attempt to describe Avatar, a terminal emulation used with
-+# MS-DOS bulletin-board systems. It was designed to give ANSI-like
-+# capabilities, but with cheaper (shorter) control sequences. Messy design,
-+# excessively dependent on PC idiosyncracies, but apparently rather popular
-+# in the BBS world.
- #
--# printer parity: 00=odd,01=even*,10=space,11=mark
--# printer stop bits: 2*/1
--# print/do not print guarded areas*
-+# No color support. Avatar doesn't fit either of the Tektronix or HP color
-+# models that terminfo knows about. An Avatar color attribute is the
-+# low 7 bits of the IBM-PC display-memory attribute. Bletch.
- #
--# new line is: 01=LF,10=CR,11=CRLF*
--# unused
--# unused
-+# I wrote these entries while looking at the Avatar spec. I don't have
-+# the facilities to test them. Let me know if they work, or don't.
- #
--# D menu: 0110 1001 1 0
--# LF is newline/LF is down one line, same column*
--# wrap to preceding line if move left from col 1*/don't wrap
--# wrap to next line if move right from col 80*/don't wrap
--# backspace is/is not destructive*
-+# Avatar escapes not used by these entries (because maybe you're smarter
-+# and more motivated than I am and can figure out how to wrap terminfo
-+# around some of them, and because they are weird enough to be funny):
-+# level 0:
-+# ^L -- clear window/reset current attribute to default
-+# ^V^A%p1%c -- set current color attribute, parameter decodes as follows:
- #
--# display*/ignore DEL character
--# display will not/will scroll*
--# page/column tab stops*
--# erase everything*/erase unprotected only
-+# bit: 6 5 4 3 2 1 0
-+# | | | | |
-+# +---+---+ | +---+---+
-+# | | |
-+# | | foreground color
-+# | foreground intensity
-+# background color
-+# level 0+:
-+# ^V^J%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) up by p1 lines
-+# ^V^K%p1%c%p2%c%p3%c%p4%c%p5%c -- scroll (p2,p3) to (p4,p5) down by p1 lines
-+# ^V^L%p1%c%p2%c%p3%c -- clear p2 lines and p3 cols w/attr %p1
-+# ^V^M%p1%c%p2%c%p3%c%p4%c -- fill p3 lines & p4 cols w/char p2+attr %p1
-+# (^V^L and ^V^M set the current attribute as a side-effect.)
-+# ^V ^Y <a> [...] <c> -- repeat pattern. <a> specifies the number of bytes
-+# in the pattern, <c> the number of times the pattern
-+# should be repeated. If either value is 0, no-op.
-+# The pattern can contain Avatar console codes,
-+# including other ^V ^Y patterns.
-+# level 1:
-+# ^V^O -- clockwise mode on; turn print direction right each time you
-+# hit a window edge (yes, really). Turned off by CR
-+# ^V^P -- no-op
-+# ^V^Q%c -- query the driver
-+# ^V^R -- driver reset
-+# ^V^S -- Sound tone (PC-specific)
-+# ^V^T -- change highlight at current cursor poition to %c
-+# ^V^U%p1%c%p2%c -- highlight window <a> with attribute <b>
-+# ^V^V%p1%c%p2%c%p3%c%p4%c%p5%c
-+# -- define window
- #
--# editing extent: 0=display,1=line*,2=field,3=area
-+# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995
-+# (The <blink>/<bold>/<rev>/<smacs>/<smul>/<smso> capabilities exist only to
-+# tell ncurses that the corresponding highlights exist; it should use <sgr>,
-+# which is the only method that will actually work for multiple highlights.)
- #
--# unused
-+# Update by TD - 2004: half of this was inconsistent. Found documentation
-+# and repaired most of the damage. sgr0 is probably incorrect, but the
-+# available documentation gives no clues for a workable string.
-+avatar0|avatar terminal emulator level 0,
-+ am, bce, msgr,
-+ cols#80, it#8, lines#25,
-+ blink=^V^B, bold=^V^A^P, cr=^M, cub1=^V^E, cud1=^V^D,
-+ cuf1=^V^F, cup=\026\010%p1%c%p2%c, cuu1=^V^C, el=^V^G,
-+ ind=^J, invis=^V^A\0, rep=\031%p1%c%p2%c, rev=^V^Ap,
-+ rmacs@, rs2=^L,
-+ sgr=%?%p1%p2%|%p3%|%p6%|%p7%|%t\026\001%?%p7%t%{128}%e%{0}%?%p1%t%{112}%|%;%?%p2%t%{1}%|%;%?%p3%t%{112}%|%;%?%p6%t%{16}%|%;%;%c%;%?%p4%t\026\002%;,
-+ sgr0=^V^A^G, smacs@, smso=^V^Ap, smul=^V^A^A,
-+ use=klone+acs,
-+# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995
-+avatar0+|avatar terminal emulator level 0+,
-+ dch1=^V^N, rmir=\026\n\0\0\0\0, smir=^V^I, use=avatar0,
-+# From: Eric S. Raymond <esr@snark.thyrsus.com> 1 Nov 1995
-+avatar|avatar1|avatar terminal emulator level 1,
-+ civis=^V'^B, cnorm=^V'^A, cvvis=^V^C, dl1=^V-, il1=^V+,
-+ rmam=^V", rmir=^V^P, smam=^V$, use=avatar0+,
-+
-+#### RBcomm
- #
-+# RBComm is a lean and mean terminal emulator written by the Interrupt List
-+# maintainer, Ralf Brown. It was fairly popular in the late DOS years (early
-+# '90s), especially in the BBS world, and still has some loyal users due to
-+# its very small memory footprint and to a cute macro language.
-+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=^M, 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,
-+ is2=\017\035\E(B\E)0\E[?7h\E[?3l\E[>8g, kbs=^H,
-+ kcub1=^B, kcud1=^N, kcuf1=^F, kcuu1=^P, khome=^A, nel=^M\ED,
-+ rc=\E8, rep=\030%p1%c%p2%c, rev=^R, ri=\EM, rmcup=, rmdc=,
-+ 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,
-+rbcomm-nam|IBM PC with RBcomm without autowrap,
-+ am@,
-+ bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J,
-+ is2=\017\035\E(B\E)0\E[?7l\E[?3l\E[>8g, kbs=^H,
-+ kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm,
-+rbcomm-w|IBM PC with RBcomm in 132 column mode,
-+ cols#132,
-+ bel=^G, cr=^M, cud1=^J, ht=^I, ind=^J,
-+ is2=\017\035\E(B\E)0\E[?7h\E[?3h\E[>8g, kbs=^H,
-+ kcub1=^H, kcud1=^J, nel=^M^J, use=rbcomm,
-
--annarbor4080|aa4080|ann arbor 4080,
-- OTbs, am,
-- cols#80, lines#40,
-- bel=^G, clear=\014$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=^_,
-- cup=\017%p2%{10}%/%{16}%*%p2%{10}%m%+%c%p1%?%p1%{19}%>%t%{12}%+%;%{64}%+%c,
-- cuu1=^N, home=^K, ht=^I, hts=^]^P1, ind=^J, kbs=^^, kcub1=^H,
-- kcud1=^J, kcuf1=^_, kcuu1=^N, khome=^K, tbc=^\^P^P,
-+######## LCD DISPLAYS
-+#
-
--# Strange Ann Arbor terminal from BRL
--aas1901|Ann Arbor K4080 w/S1901 mod,
-- am,
-- cols#80, lines#40,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^_, cuu1=^N,
-- home=^K, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, ll=^O\0c,
-- nel=^M^J,
-+#### Matrix Orbital
-+# from: Eric Z. Ayers (eric@ale.org)
-+#
-+# Matrix Orbital 20x4 LCD display
-+# Command Character is 0xFE (decimal 254, octal 376)
-+#
-+# On this device, cursor addressability isn't possible. The LCD expects:
-+# 0xfe G <col> <row>
-+# for cup: %p1 == row and %p2 is column
-+#
-+# This line:
-+# cup=\376G%p2%c%p1%c
-+# LOOKS like it will work, but sometimes only one of the two numbers is sent.
-+# See the terminfo (5) manpage commented regarding 'Terminals which use "%c"'.
-+#
-+# Alas, there is no cursor upline capability on this display.
-+#
-+# These entries add some 'sanity stuff' to the clear function. That is, it
-+# does a 'clear' and also turns OFF auto scroll, turns ON Auto Line Wrapping,
-+# and turns off the cursor blinking and stuff like that.
-+#
-+# 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,
-+ bel=\376B^A, clear=\376X\376C\376R\376K\376T,
-+ cnorm=\376K\376T, cub1=\376L, cuf1=\376M,
-+ flash=\376B\001$<200>\376F, home=\376H,
-+MtxOrb204|20x4 Matrix Orbital LCD display,
-+ cols#20, lines#4, use=MtxOrb,
-+MtxOrb162|16x2 Matrix Orbital LCD display,
-+ cols#16, lines#2, use=MtxOrb,
-+# The end
-
--# If you're using the GNU termcap library, add
--# :cS=\E[%p1%d;%p2%d;%p3%d;%p4%dp:
--# to these capabilities. This is the nonstandard GNU termcap scrolling
--# capability, arguments are:
--# 1. Total number of lines on the screen.
--# 2. Number of lines above desired scroll region.
--# 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),
-- OTbs, am, km, mc5i, mir, xon,
-- cols#80, it#8,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
-- clear=\E[H\E[J$<156>, cr=^M, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^K, cuf=\E[%p1%dC, cuf1=\E[C,
-+######## OLDER TERMINAL TYPES
-+#
-+# This section is devoted to older commercial terminal brands that are now
-+# discontinued, but known to be still in use or represented by emulations.
-+#
-+
-+#### AT&T (att, tty)
-+#
-+# This section also includes Teletype-branded VDTs.
-+#
-+# The AT&T/Teletype terminals group was sold to SunRiver Data Systems (now
-+# Boundless Technologies); for details, see the header comment on the ADDS
-+# section.
-+#
-+# These are AT&T's official terminfo entries. All-caps aliases have been
-+# removed.
-+#
-+att2300|sv80|AT&T 2300 Video Information Terminal 80 column mode,
-+ am, eo, mir, msgr, xon,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=\E[H\E[J, cr=^M, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J,
-- el=\E[K$<5>, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I,
-- hts=\EH, ich=\E[%p1%d@$<4*>, ich1=\E[@$<4>, il=\E[%p1%dL,
-- il1=\E[L$<3>, ind=^K, invis=\E[8m, is1=\E[m\E7\E[H\E9\E8,
-- is3=\E[1Q\E[>20;30l\EP`+x~M\E\\, kbs=^H, kcbt=\E[Z,
-- kclr=\E[J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\E[P, kdl1=\E[M, kf1=\EOA, kf10=\EOJ, kf11=\EOK,
-- kf12=\EOL, kf13=\EOM, kf14=\EON, kf15=\EOO, kf16=\EOP,
-- kf17=\EOQ, kf18=\EOR, kf19=\EOS, kf2=\EOB, kf20=\EOT,
-- kf21=\EOU, kf22=\EOV, kf23=\EOW, kf24=\EOX, kf3=\EOC,
-- kf4=\EOD, kf5=\EOE, kf6=\EOF, kf7=\EOG, kf8=\EOH, kf9=\EOI,
-- khome=\E[H, kich1=\E[@, kil1=\E[L, krmir=\E6, mc0=\E[0i,
-- mc4=^C, mc5=\E[v, mc5p=\E[%p1%dv, rc=\E8,
-- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m,
-- rmkx=\EP`>y~[[J`8xy~[[A`4xy~[[D`6xy~[[C`2xy~[[B\E\\,
-- rmm=\E[>52l, rmso=\E[m, rmul=\E[m, sc=\E7,
-- sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m,
-- sgr0=\E[m,
-- smkx=\EP`>z~[[J`8xz~[[A`4xz~[[D`6xz~[[C`2xz~[[B\E\\,
-- smm=\E[>52h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-- vpa=\E[%p1%{1}%+%dd,
-+ el=\E[K, el1=\E[1K, home=\E[H, ht=^I, ich=\E[%p1%d@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, kbs=^H, kcbt=\E[Z, kclr=\E[J,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P,
-+ kdl1=\E[M, kf1=\E[1r, kf10=\E[10r, kf11=\E[11r,
-+ kf12=\E[12r, kf13=\E[13r, kf14=\E[14r, kf15=\E[15r,
-+ kf16=\E[16r, kf2=\E[2r, kf3=\E[3r, kf4=\E[4r, kf5=\E[5r,
-+ kf6=\E[6r, kf7=\E[7r, kf8=\E[8r, kf9=\E[9r, khome=\E[H,
-+ kich1=\E[@, kil1=\E[L, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
-+ rev=\E[7m, rmir=\E[4l, rmso=\E[m, sgr0=\E[m, smir=\E[4h,
-+ smso=\E[7m,
-+att2350|AT&T 2350 Video Information Terminal 80 column mode,
-+ mc0@, mc4@, mc5@, use=att2300,
-
--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[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m,
-- 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,
-- acsc=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}},
-- csr=\E[%i%p1%d;%p2%dr, enacs=\E(0, rmacs=^N,
-- sgr=\E[%?%p1%p3%|%!%t7;%;%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m%?%p9%t\017%e\016%;,
-- smacs=^O,
--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,
-- use=aaa+rv, use=aaa-18,
--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,
-- 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,
-- 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,
-- use=aaa+rv, use=aaa-24,
--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,
-- 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,
-- eslok, hs,
-- lines#29,
-- dsl=\E7\E[60;0;0;30p\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;30p\E8,
-- 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,
-- use=aaa+rv, use=aaa-30-s,
--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,
-- 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,
-- 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,
-- use=aaa+rv, use=aaa-30,
--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,
-- 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,
-- 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,
-- use=aaa+rv, use=aaa-36,
--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,
-- use=aaa+rv, use=aaa-40,
--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,
-- use=aaa+rv, use=aaa-48,
--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,
-- use=aaa+rv, use=aaa-60-s,
--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,
-- 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,
-- use=aaa+rv, use=aaa-60,
--aaa-db|ann arbor ambassador 30/destructive backspace,
-- OTbs@,
-- cub1=\E[D, is3=\E[1Q\E[m\E[>20l\E[>30h, use=aaa-30,
-+# Must setup RETURN KEY - CR, REC'VD LF - INDEX.
-+# Seems upward compatible with vt100, plus ins/del line/char.
-+# On sgr, the protection parameter is ignored.
-+# No check is made to make sure that only 3 parameters are output.
-+# standout= reverse + half-intensity = 3 | 5.
-+# bold= reverse + underline = 2 | 3.
-+# note that half-bright blinking doesn't look different from normal blinking.
-+# NOTE:you must program the function keys first, label second!
-+# (att4410: a BSD entry has been seen with the following capabilities:
-+# <is2=\E[?6l>, <kf1=\EOc>, <kf2=\EOd>, <kf3=\EOe>, <kf4=\EOg>,
-+# <kf6=\EOh>, <kf7=\EOi>, <kf8=\EOj>, -- esr)
-+att5410v1|att4410v1|tty5410v1|AT&T 4410/5410 80 columns - version 1,
-+ am, hs, mir, msgr, xon,
-+ cols#80, it#8, lh#2, lines#24, lw#8, nlab#8, wsl#80,
-+ acsc=++\,\,--..00``aaffgghhjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[2;7m, clear=\E[H\E[J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dim=\E[2m,
-+ dl1=\E[M, ed=\E[J, el=\E[K, fsl=\E8, home=\E[H, ht=^I,
-+ ich1=\E[@, il1=\E[L, ind=^J, invis=\E[8m, is1=\E[?3l\E)0,
-+ is3=\E[1;03q f1 \EOP\E[2;03q f2 \EOQ\E[3;03q f3 \EOR\E[4;03q f4 \EOS\E[5;03q f5 \EOT\E[6;03q f6 \EOU\E[7;03q f7 \EOV\E[8;03q f8 \EOW,
-+ kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT,
-+ kf6=\EOU, kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H,
-+ ll=\E[24H, nel=^M^J,
-+ pfx=\E[%p1%1d;%p2%l%2.2dq f%p1%1d %p2%s,
-+ pln=\E[%p1%d;00q%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM,
-+ rmacs=^O, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y,
-+ sc=\E7,
-+ sgr=\E[0%?%p1%p5%|%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m,
-+ tsl=\E7\E[25;%p1%{1}%+%dH,
-
--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,
-- use=guru+rv, use=guru-33,
--guru+s|guru status line,
-- eslok, hs,
-- dsl=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K, fsl=\E[>51l,
-- rmcup=\E[255;1p\E[255;1H\E[K, smcup=,
-- 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,
-- 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,
-- 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,
-- 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,
-- 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,
--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,
-- 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,
--guru-76-lp|guru-lp|guru with page bigger than line printer,
-- cols#134, lines#76,
-- is2=\E7\E[255;0;0;76;134;134p\E8\E[J, smcup=\E[76p,
-- use=guru+unk,
--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,
-- 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,
--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,
-- 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,
-- rs1=\E[H\E[7m\E[J,
-- sgr=\E[%?%p1%!%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m,
-- sgr0=\E[7m, smso=\E[m, smul=\E[4;7m,
-+att4410v1-w|att5410v1-w|tty5410v1-w|AT&T 4410/5410 132 columns - version 1,
-+ cols#132, wsl#132,
-+ is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att5410v1,
-
--#### Applied Digital Data Systems (adds)
--#
--# ADDS itself is long gone. ADDS was bought by NCR, and the same group made
--# ADDS and NCR terminals. When AT&T and NCR merged, the engineering for
--# terminals was merged again. Then AT&T sold the terminal business to
--# SunRiver, which later changed its name to Boundless Technologies. The
--# engineers from Teletype, AT&T terminals, ADDS, and NCR (who are still there
--# as of early 1995) are at:
--#
--# Boundless Technologies
--# 100 Marcus Boulevard
--# Hauppauge, NY 11788-3762
--# Vox: (800)-231-5445
--# Fax: (516)-342-7378
--# Web: http://boundless.com
--#
--# Their voice mail used to describe the place as "SunRiver (formerly ADDS)".
--# In 1995 Boundless acquired DEC's terminals business.
--#
-+att4410|att5410|tty5410|AT&T 4410/5410 80 columns - version 2,
-+ OTbs,
-+ pfx=\E[%p1%d;%p2%l%02dq f%p1%d %p2%s,
-+ use=att5410v1,
-
--# Regent: lowest common denominator, works on all regents.
--# (regent: renamed ":bc:" to ":le:" -- esr)
--regent|Adds Regent Series,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F, cuu1=^Z,
-- home=\EY\s\s, ind=^J, ll=^A,
--# Regent 100 has a bug where if computer sends escape when user is holding
--# down shift key it gets confused, so we avoid escape.
--regent100|Adds Regent 100,
-- xmc#1,
-- bel=^G,
-- cup=\013%p1%' '%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%c,
-- kf0=^B1\r, kf1=^B2\r, kf2=^B3\r, kf3=^B4\r, kf4=^B5\r,
-- kf5=^B6\r, kf6=^B7\r, kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3,
-- lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@,
-- sgr0=\E0@, smso=\E0P, smul=\E0`, use=regent,
--regent20|Adds Regent 20,
-- bel=^G, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, ed=\Ek, el=\EK,
-- use=regent,
--regent25|Adds Regent 25,
-- bel=^G, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, khome=^A,
-- use=regent20,
--regent40|Adds Regent 40,
-- xmc#1,
-- bel=^G, dl1=\El$<2*>, il1=\EM$<2*>, kf0=^B1\r, kf1=^B2\r,
-- kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, kf5=^B6\r, kf6=^B7\r,
-- kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, lf5=F6,
-- lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@, sgr0=\E0@, smso=\E0P,
-- smul=\E0`, use=regent25,
--regent40+|Adds Regent 40+,
-- is2=\EB, use=regent40,
--regent60|regent200|Adds Regent 60,
-- dch1=\EE, is2=\EV\EB, kdch1=\EE, kich1=\EF, krmir=\EF,
-- rmir=\EF, rmso=\ER\E0@\EV, smir=\EF, smso=\ER\E0P\EV,
-- 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,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=^L, cnorm=\017\E0`, cr=^M, cub1=^H, cud1=^J,
-- cuf1=^F, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z,
-- cvvis=\017\E0P, dl1=\El, ed=\Ek$<16.1*>, el=\EK$<16>,
-- ind=^J, is2=\017\E0`, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z,
-- 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,
-- cvvis@, rmso@, rmul@, smso@, smul@, use=viewpoint,
-+att5410-w|att4410-w|4410-w|tty5410-w|5410-w|AT&T 4410/5410 in 132 column mode,
-+ cols#132, wsl#132,
-+ is1=\E[?3h\E)0, rs2=\Ec\E[?3h\E[2;0y, use=att4410,
-+
-+# 5410 in terms of a vt100
-+# (v5410: added <rmam>/<smam> based on init string -- esr)
-+v5410|att5410 in terms of a vt100,
-+ am, mir, msgr, xon,
-+ cols#80, it#8, lines#24, vt#3,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-+ clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub1=^H, cud1=^J, cuf1=\E[C$<2>,
-+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu1=\E[A$<2>, dch1=\E[P,
-+ dl1=\E[M, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>,
-+ enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ich1=\E[@,
-+ il1=\E[L, ind=^J, kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-+ kcuu1=\EOA, rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O,
-+ rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m$<2>,
-+ rmul=\E[m$<2>, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-+ sc=\E7,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>,
-+ 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,
-
--# From: Jay S. Rouman <jsr@dexter.mi.org> 5 Jul 92
--# The <civis>/<cnorm>/<sgr>/<sgr0> strings were added by ESR from specs.
--# Theory; the vp3a+ wants \E0%c to set highlights, where normal=01000000,
--# underline=01100000, rev=01010000, blink=01000010,dim=01000001,
--# invis=01000100 and %c is the logical or of desired attributes.
--# There is also a `tag bit' enabling attributes, set by \E) and unset by \E(.
--#
--# Update by TD - 2004:
--# Adapted from
--# http://www.cs.utk.edu/~shuford/terminal/adds_viewpoint_news.txt
- #
--# COMMANDS ASCII CODE
-+# Teletype Model 5420 -- A souped up 5410, with multiple windows,
-+# even! the 5420 has three modes: scroll, window or page mode
-+# this terminfo should work in scroll or window mode, but doesn't
-+# take advantage of any of the differences between them.
- #
--# Address, Absolute ESC,=,row,column
--# Beep BEL
--# Aux Port Enable ESC,@
--# Aux Port Disable ESC,A
--# Backspace BS
--# Cursor back BS
--# Cursor down LF
--# Cursor forward FF
--# Cursor home RS
--# Cursor up VT
--# Cursor supress ETB
--# Cursor enable CAN
--# Erase to end of line ESC,T
--# Erase to end of page ESC,Y
--# Erase screen SUB
--# Keyboard lock SI
--# Keyboard unlock SO
--# Read current cursor position ESC,?
--# Set Attribute ESC,0,x (see below for values of x)
--# Tag bit reset ESC,(
--# Tag bit set ESC,)
--# Transparent Print on ESC,3
--# Transparent Print off ESC,4
-+# Has memory below (2 lines!)
-+# 3 pages of memory (plus some spare)
-+# The 5410 sequences for <cup>, <cvvis>, <dch>, <dl>, <ech>, <flash>, <home>,
-+# <hpa>, <hts> would work for these, but these work in both scroll and window
-+# mode... Unset insert character so insert mode works
-+# <is1> sets 80 column mode,
-+# <is2> escape sequence:
-+# 1) turn off all fonts
-+# 2) function keys off, keyboard lock off, control display off,
-+# insert mode off, erasure mode off,
-+# 3) full duplex, monitor mode off, send graphics off, nl on lf off
-+# 4) reset origin mode
-+# 5) set line wraparound
-+# 6) exit erasure mode, positional attribute mode, and erasure extent mode
-+# 7) clear margins
-+# 8) program ENTER to transmit ^J,
-+# We use \212 to program the ^J because a bare ^J will get translated by
-+# UNIX into a CR/LF. The enter key is needed for AT&T uOMS.
-+# 1 2 3 4 5 6 7 8
-+# <is3> set screen color to black,
-+# No representation in terminfo for the delete word key: kdw1=\Ed
-+# Key capabilities assume the power-up send sequence...
-+# This <rmcup> is not strictly necessary, but it helps maximize
-+# memory usefulness: <rmcup=\Ez>,
-+# Alternate sgr0: <sgr0=\E[m\EW^O>,
-+# Alternate sgr: <sgr=\E[%?%p1%t2;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t^N%e^O%;>,
-+# smkx programs the SYS PF keys to send a set sequence.
-+# It also sets up labels f1, f2, ..., f8, and sends edit keys.
-+# This string causes them to send the strings <kf1>-<kf8>
-+# when pressed in SYS PF mode.
-+# (att4415: I added <rmam>/<smam> based on the init string -- esr)
-+att4415|tty5420|att5420|AT&T 4415/5420 80 cols,
-+ OTbs, db, mir, xon,
-+ lh#2, lm#78, lw#8, nlab#8, wsl#55,
-+ cbt=\E[Z, clear=\E[x\E[J, cnorm=\E[11;0j, cub=\E[%p1%dD,
-+ cud=\E[%p1%dB, cuf=\E[%p1%dC, cup=\E[%i%p1%d;%p2%dx,
-+ cuu=\E[%p1%dA, cvvis=\E[11;1j, dch=\E[%p1%dP,
-+ dl=\E[%p1%dM, ech=\E[%p1%ds\E[%p1%dD,
-+ flash=\E[?5h$<200>\E[?5l, home=\E[x,
-+ hpa=\E[%p1%{1}%+%dG, hts=\EH, ich=\E[%p1%d@, ich1@,
-+ il=\E[%p1%dL, indn=\E[%p1%dE, is1=\E[?3l$<100>,
-+ is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[21;1j\212,
-+ is3=\E[?5l, kbeg=\Et, kcbt=\E[Z, kdch1=\E[P, kdl1=\E[M,
-+ kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc, kf2=\EOd,
-+ kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj,
-+ kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U,
-+ kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5,
-+ lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?2i, mc4=\E[?9i,
-+ mc5=\E[?4i, mrcup=\E[%i%p1%d;%p2%dt,
-+ pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s,
-+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV,
-+ rin=\E[%p1%dF, rmam=\E[?7l, rmir=\E[4l,
-+ rmkx=\E[19;0j\E[21;1j\212, rmln=\E|,
-+ sgr=\E[0%?%p1%p5%|%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smam=\E[?7h, smir=\E[4h,
-+ smkx=\E[19;1j\E[21;4j\Eent, smln=\E~, tbc=\E[3g,
-+ tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd,
-+ use=att4410,
-+
-+att4415-w|tty5420-w|att5420-w|AT&T 4415/5420 132 cols,
-+ cols#132, lm#54, wsl#97,
-+ is1=\E[?3h$<100>, use=att4415,
-+
-+att4415-rv|tty5420-rv|att5420-rv|AT&T 4415/5420 80 cols/rv,
-+ flash=\E[?5l$<200>\E[?5h, is3=\E[?5h, use=att4415,
-+
-+att4415-w-rv|tty5420-w-rv|att5420-w-rv|AT&T 4415/5420 132 cols/rv,
-+ cols#132, lm#54, wsl#97,
-+ flash=\E[?5l$<200>\E[?5h, is1=\E[?3h$<100>, is3=\E[?5h,
-+ use=att4415,
-+
-+# Note that this mode permits programming USER PF KEYS and labels
-+# However, when you program user pf labels you have to reselect
-+# user pf keys to make them appear!
-+att4415+nl|tty5420+nl|att5420+nl|generic AT&T 4415/5420 changes for not changing labels,
-+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@,
-+ pfx=\E[%p1%d;%p2%l%02d;0;1q F%p1%d %p2%s,
-+ pln=\E[%p1%d;0;0;1q%p2%:-16.16s,
-+
-+att4415-nl|tty5420-nl|att5420-nl|AT&T 4415/5420 without changing labels,
-+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl,
-+ use=att4415,
-+
-+att4415-rv-nl|tty5420-rv-nl|att5420-rv-nl|AT&T 4415/5420 reverse video without changing labels,
-+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl,
-+ use=att4415-rv,
-+
-+att4415-w-nl|tty5420-w-nl|att5420-w-nl|AT&T 4415/5420 132 cols without changing labels,
-+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl,
-+ use=att4415-w,
-+
-+att4415-w-rv-n|tty5420-w-rv-n|att5420-w-rv-n|AT&T 4415/5420 132 cols reverse without changing labels,
-+ kf1@, kf2@, kf3@, kf4@, kf5@, kf6@, kf7@, kf8@, use=att4415+nl,
-+ use=att4415-w-rv,
-+
-+att5420_2|AT&T 5420 model 2 80 cols,
-+ am, db, hs, mir, msgr, xon,
-+ cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ blink=\E[5m, cbt=\E[1Z, clear=\EH\EJ, cnorm=\E[11;0j,
-+ cr=\EG, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ 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,
-+ cvvis=\E[11;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
-+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[0J,
-+ el=\E[0K, el1=\E[1K, flash=\E[?5h$<200>\E[?5l, fsl=\E8,
-+ home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH,
-+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ indn=\E[%p1%dE, invis=\E[8m,
-+ is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;0j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r,
-+ kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M,
-+ kel=\E[2K, kend=\Ez, kent=^J, kf1=\EOc, kf2=\EOd, kf3=\EOe,
-+ kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, khome=\E[H,
-+ kich1=\E[4h, kil1=\E[L, kind=\E[T, kll=\Eu, knp=\E[U,
-+ kpp=\E[V, kri=\E[S, lf1=F1, lf2=F2, lf3=F3, lf4=F4, lf5=F5,
-+ lf6=F6, lf7=F7, lf8=F8, ll=\Ew, mc0=\E[?;2i, mc4=\E[4i,
-+ mc5=\E[5i, mrcup=\E[%i%p1%d;%p2%dt, nel=^M^J,
-+ pfx=\E[%p1%d;%p2%l%02dq F%p1%d %p2%s\E~,
-+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s\E~, prot=\EV, rc=\E8,
-+ rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmkx=\E[19;0j,
-+ rmln=\E|, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y,
-+ sc=\E7,
-+ sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smkx=\E[19;1j, smln=\E~,
-+ smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-+ tsl=\E7\E[25;%p1%{8}%+%dH, vpa=\E[%p1%{1}%+%dd,
-+att5420_2-w|AT&T 5420 model 2 in 132 column mode,
-+ cols#132,
-+ is1=\E[0;23r\Ex\Ey\E[2;0j\E[3;3j\E[4;0j\E[5;1j\E[6;0j\E[7;0j\E[8;0j\E[9;1j\E[10;0j\E[15;0j\E[16;1j\E[19;0j\E[20;1j\E[29;0j\E[1;24r,
-+ use=att5420_2,
-+
-+att4418|att5418|AT&T 5418 80 cols,
-+ am, xon,
-+ cols#80, lines#24,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, clear=\E[H\E[2J, cr=^M, 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[1P, dim=\E[2m,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K, home=\E[H,
-+ ich=\E[%p1%d@, ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=^J,
-+ is1=\E[?3l, is2=\E)0\E?6l\E?5l, kclr=\E[%%, kcub1=\E@,
-+ kcud1=\EU, kcuf1=\EA, kcuu1=\ES, kent=\E[, kf1=\E[h,
-+ kf10=\E[m, kf11=\E[n, kf12=\E[o, kf13=\E[H, kf14=\E[I,
-+ kf15=\E[J, kf18=\E[K, kf19=\E[L, kf2=\E[i, kf20=\E[E,
-+ kf21=\E[_, kf22=\E[M, kf23=\E[N, kf24=\E[O, kf3=\E[j,
-+ kf6=\E[k, kf7=\E[l, kf8=\E[f, kf9=\E[w, khome=\Ec, rc=\E8,
-+ rev=\E[7m, rmacs=^O, rmso=\E[m, rmul=\E[m, sc=\E7,
-+ sgr0=\E[m\017, smacs=^N, smso=\E[7m, smul=\E[4m,
-+att4418-w|att5418-w|AT&T 5418 132 cols,
-+ cols#132,
-+ is1=\E[?3h, use=att5418,
-+
-+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,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP,
-+ dl1=\EM, ed=\EJ, el=\Ez, home=\EH, il1=\EL, ind=\EH\EM\EY7\s,
-+ kcbt=\EO, kclr=\EJ, kcub1=^H, kcud1=\EB, kcuf1=\EC,
-+ kcuu1=\EA, kdch1=\EP, kdl1=\EM, kf0=\EU, kf3=\E@, khome=\EH,
-+ kich1=\E\^, kil1=\EL, kind=\ES, kri=\ET,
-+ lf0=segment advance, lf3=cursor tab, rmdc@, rmso=\E~,
-+ rmul=\EZ, smdc@, smso=\E}, smul=\E\\,
-+
-+# The following is a terminfo entry for the Teletype 4424
-+# asynchronous keyboard-display terminal. It supports
-+# the vi editor. The terminal must be set up as follows,
- #
-+# HIGHLIGHT DEFINITION 3-TONE
-+# DISPLAY FUNCTION GROUP III
- #
--# ATTRIBUTES
-+# The second entry below provides limited (a la adm3a)
-+# operation under GROUP II.
- #
--# Normal @ 0100
--# Half Intensity A 0101
--# Blinking B 0102
--# Half Intensity Blinking C 0103
--# Reverse Video P 0120
--# Reverse Video Half Intensity Q 0121
--# Reverse Video Blinking R 0122
--# Reverse Video Half Intensity
--# Blinking S 0123
--# Underlined ` 0140
--# Underlined Half Intensity a 0141
--# Underlined Blinking b 0142
--# Underlined Half Intensity
--# Blinking c 0143
--# Video suppress D 0104
--vp3a+|viewpoint3a+|adds viewpoint 3a+,
-- am, bw,
-- cols#80, it#8, lines#24,
-- blink=\E0B\E), civis=^W, clear=\E*$<80>, cnorm=^X, cr=^M,
-- cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dim=\E0A\E),
-- ed=\EY$<80>, el=\ET, home=^^, ht=^I, ind=^J, invis=\E0D\E),
-- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^,
-- nel=^M^J, rev=\E0P\E), rmso=\E(,
-- sgr=%?%p1%p2%|%p3%|%p4%|%p5%|%p7%|%t\E0%{64}%?%p1%t%{17}%|%;%?%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,
-- use=regent40,
-+# This must be used with DISPLAY FUNCTION GROUP I or III
-+# and HIGHLIGHT DEFINITION 3-TONE
-+# The terminal has either bold or blink, depending on options
- #
--# adds viewpoint 90 - from cornell
--# Note: emacs sends ei occasionally to insure the terminal is out of
--# insert mode. This unfortunately puts the viewpoint90 IN insert
--# mode. A hack to get around this is <ich1=\EF\s\EF^U>. (Also,
--# - :ei=:im=: must be present in the termcap translation.)
--# - <xhp> indicates glitch that attributes stick to location
--# - <msgr> means it's safe to move in standout mode
--# - <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,
-- OTbs, bw, msgr, xhp,
-- cols#80, lines#24,
-- clear=\EG\Ek, cub1=^H, cud1=^J, cuf1=^F,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dch1=\EE,
-- dl1=\El, ed=\Ek, el=\EK, home=\EY\s\s, ht=^I,
-- ich1=\EF \EF\025, ind=^J, kbs=^H, kcub1=^U, kcud1=^J,
-- 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=^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,
-- OTbs, am,
-+# (att4424: commented out <smcup>=\E[1m, we don't need bright locked on -- esr)
-+att4424|tty4424|teletype 4424,
-+ OTbs, am, xon,
- cols#80, lines#24,
-- bel=^G, clear=\014$<1>\013@, cr=^M, cub1=^H, cud1=^J,
-- cuf1=\E^E01, cup=\013%p1%{64}%+%c\E\005%p2%2d,
-- dl1=\E\017$<13>, il1=\E\016$<13>, ind=^J, kf0=\E0, kf1=\E1,
-- kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8,
-- kf9=\E9, rmso=^O, sgr0=^O, smso=^Y^^^N,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E3, bold=\E3, cbt=\EO, clear=\E[H\E[2J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=\EB, cuf=\E[%p1%dC, cuf1=\EC,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EA,
-+ dch=\E[%p1%dP, dch1=\EP, dim=\EW, dl=\E[%p1%dM, dl1=\EM,
-+ ed=\EJ, el=\Ez, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-+ ich1=\E\^, il=\E[%p1%dL, il1=\EL, ind=^J, is2=\E[20l\E[?7h,
-+ kbs=^H, kclr=\EJ, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-+ khome=\E[H, nel=\EE, rev=\E}, ri=\ET, rmacs=\E(B, rmso=\E~,
-+ rmul=\EZ,
-+ sgr=\E[%?%p1%t7%;%?%p2%t;4%;%?%p3%t;7%;%?%p6%t;1%;%?%p6%p4%|%t;5%;%?%p5%t;0%;m,
-+ sgr0=\EX\E~\EZ\E4\E(B, smacs=\E(0, smso=\E}, smul=\E\\,
-+ tbc=\EF,
-
--#### C. Itoh Electronics
-+att4424-1|tty4424-1|teletype 4424 in display function group I,
-+ kclr@, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, khome@,
-+ use=att4424,
-+
-+# This entry is not one of AT&T's official ones, it was translated from the
-+# 4.4BSD termcap file. The highlight strings are different from att4424.
-+# I have no idea why this is -- older firmware version, maybe?
-+# 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,
-+ am, da, db, mir,
-+ cols#80, it#8, lines#23,
-+ bel=^G, clear=\E[2;H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-+ cup=\E[%i%p1%2d;%p2%2dH\E[B, cuu1=\E[A, dch1=\EP,
-+ dl1=\EM, el=\E[K, ht=^I, ich1=\E\^, il1=\EL, ind=^J, ip=$<2/>,
-+ is2=\E[m\E[2;24r, kbs=^H, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP, kf2=\EOQ, kf3=\EOR,
-+ kf4=\EOS, khome=\E[H, nel=^M^J, ri=\ET, rmso=\E[m, rmul=\E[m,
-+ sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-+
-+# The Teletype 5425 is really version 2 of the Teletype 5420. It
-+# is quite similar, except for some minor differences. No page
-+# mode, for example, so all of the <cup> sequences used above have
-+# to change back to what's being used for the 5410. Many of the
-+# option settings have changed their numbering as well.
- #
--# As of 1995 these people no longer make terminals (they're still in the
--# printer business). Their terminals were all clones of the DEC VT series.
--# They're located in Orange County, CA.
-+# This has been tested on a preliminary model.
- #
--
--# CIT 80 - vt-52 emulator, the termcap has been modified to remove
--# the delay times and do an auto tab set rather than the indirect
--# file used in vt100.
--cit80|cit-80|citoh 80,
-- OTbs, am,
-- cols#80, lines#24,
-- clear=\E[H\EJ, cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\EJ, el=\EK, ff=^L,
-- ind=^J, is2=\E>, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-- kcuu1=\EOA, rmkx=\E[?1l\E>, smkx=\E[?1h\E=,
--# From: Tim Wood <mtxinu!sybase!tim> Fri Sep 27 09:39:12 PDT 1985
--# (cit101: added <rmam>/<smam> based on init string, merged this with c101 -- esr)
--cit101|citc|C.itoh fast vt100,
-- OTbs, am, xenl,
-- cols#80, lines#24,
-- bel=^G, clear=\E[H\E[2J, cnorm=\E[V\E8, cub1=^H, cud1=\E[B,
-- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-- cvvis=\E7\E[U, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K,
-- flash=\E[?5h$<200/>\E[?5l, ich1=\E[@, il1=\E[L,
-- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-- sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m,
-- smul=\E[4m,
--# CIE Terminals CIT-101e from Geoff Kuenning <callan!geoff> via BRL
--# The following termcap entry was created from the Callan cd100 entry. The
--# last two lines (with the capabilities in caps) are used by RM-cobol to allow
--# full selection of combinations of reverse video, underline, and blink.
--# (cit101e: removed unknown :f0=\EOp:f1=\EOq:f2=\EOr:f3=\EOs:f4=\EOt:f5=\EOu:\
--# f6=\EOv:f7=\EOw:f8=\EOx:f9=\EOy:AB=\E[0;5m:AL=\E[m:AR=\E[0;7m:AS=\E[0;5;7m:\
--# :NB=\E[0;1;5m:NM=\E[0;1m:NR=\E[0;1;7m:NS=\E[0;1;5;7m: -- esr)
--cit101e|C. Itoh CIT-101e,
-- OTbs, OTpt, am, mir, msgr,
-- cols#80, it#8, lines#24,
-- acsc=, clear=\E[H\E[J, cnorm=, csr=\E[%i%p1%2d;%p2%2dr,
-- cub1=\E[D, cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH,
-- cuu1=\E[A, cvvis=\E[?1l\E[?4l\E[?7h, dch1=\E[P, dl1=\E[M,
-- ed=\E[J, el=\E[K, if=/usr/share/tabset/vt100, il1=\E[L,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\EOT,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOm, kf6=\EOl,
-- kf7=\EOM, kf8=\EOn, rc=\E8, ri=\EM, rmacs=^O, rmir=\E[4l,
-- rmkx=\E>, rmso=\E[m, rmul=\E[m, sc=\E7, smacs=^N, smir=\E[4h,
-- smkx=\E=, smso=\E[7m, smul=\E[4m,
--# From: David S. Lawyer, June 1997:
--# The CIT 101-e was made in Japan in 1983-4 and imported by CIE
--# Terminals in Irvine, CA. It was part of CITOH Electronics. In the
--# late 1980's CIT Terminals went out of business.
--# There is no need to use the initialization string is=... (by invoking
--# tset or setterm etc.) provided that the terminal has been manually set
--# up (and the setup saved with ^S) to be compatible with this termcap. To be
--# compatible it should be in ANSI mode (not VT52). A set-up that
--# works is to set all the manually setable stuff to factory defaults
--# by pressing ^D in set-up mode. Then increse the brighness with the
--# up-arrow key since the factory default will likely be dim on an old
--# terminal. Then change any options you want (provided that they are
--# compatible with the termcap). For my terminal I set: Screen
--# Background: light; Keyclicks: silent; Auto wraparound: on; CRT saver:
--# 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),
-- 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,
-- civis=\E[1v, clear=\E[H\E[J, cnorm=\E[0;3;4v, cr=^M,
-+# (att5425: added <rmam>/<smam> based on the init string -- esr)
-+att5425|tty5425|att4425|AT&T 4425/5425,
-+ am, da, db, hs, mir, msgr, xenl, xon,
-+ cols#80, it#8, lh#2, lines#24, lm#78, lw#8, nlab#8, wsl#55,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z,
-+ clear=\E[H\E[J, cnorm=\E[12;0j, cr=^M,
- 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,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- cvvis=\E[3;5v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-- dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l\E[?5h$<200/>,
-- 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=^J, indn=\E[%p1%dS,
-- is2=\E<\E>\E[?1l\E[?3l\E[?4l\E[?5h\E[?7h\E[?8h\E[3g\E[>5g\E(B\E[m\E[20l\E[1;24r\E[24;1H,
-- kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8,
-- rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmcup=, rmir=\E[4l,
-- rmso=\E[m, rmul=\E[m, rs1=\Ec\E[?7h\E[>5g, sc=\E7,
-- sgr0=\E[m, smcup=\E[>5g\E[?7h\E[?5h, smir=\E[4h,
-- smso=\E[7m, smul=\E[4m, tbc=\E[3g, u6=\E[%i%p1%d;%p2%dR,
-- u7=\E[6n, u8=\E[?6c, u9=\E[c,
--cit101e-n|CIT-101e w/o am,
-- am@,
-- cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J,
-- use=cit101e,
--cit101e-132|CIT-101e with 132 cols,
-- cols#132,
-- kbs=^H, kcub1=^H, kcud1=^J, use=cit101e,
--cit101e-n132|CIT-101e with 132 cols w/o am,
-- am@,
-- cols#132,
-- cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J,
-- use=cit101e,
--# CIE Terminals CIT-500 from BRL
--# The following SET-UP modes are assumed for normal operation:
--# GENERATE_XON/XOFF:YES DUPLEX:FULL NEWLINE:OFF
--# AUTOWRAP:ON MODE:ANSI SCREEN_LENGTH:64_LINES
--# DSPLY_CNTRL_CODES?NO PAGE_WIDTH:80 EDIT_MODE:OFF
--# Other SET-UP modes may be set for operator convenience or communication
--# requirements.
--# Hardware tabs are assumed to be set every 8 columns; they can be set up
--# by the "reset", "tset", or "tabs" utilities. No delays are specified; use
--# "stty ixon -ixany" to enable DC3/DC1 flow control!
--# (cit500: I added <rmam>/<smam> based on the init string -- esr)
--cit500|CIE Terminals CIT-500,
-- OTbs, OTpt, mir, msgr, xon,
-- OTkn#10, cols#80, it#8, lines#64, vt#3,
-- acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
-- clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-- cuu=\E[%p1%dA, cuu1=\EM, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-- ed=\EJ, el=\EK, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL,
-- il1=\E[L, ind=^J, is2=\E<\E)0, kbs=^H, kcbt=\E[Z, kcub1=\EOD,
-- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[P, kdl1=\E[M,
-- ked=\EJ, kel=\EK, kf0=\EOP, kf1=\EOQ, kf2=\EOR, kf3=\EOS,
-- kf4=\EOU, kf5=\EOV, kf6=\EOW, kf7=\EOX, kf8=\EOY, kf9=\EOZ,
-- khome=\E[H, kich1=\E[4h, kil1=\E[L, krmir=\E[4l, lf0=PF1,
-- lf1=PF2, lf2=PF3, lf3=PF4, lf4=F15, lf5=F16, lf6=F17, lf7=F18,
-- lf8=F19, lf9=F20, ll=\E[64H, nel=\EE, rc=\E8, rev=\E[7m,
-- ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>,
-- rmso=\E[m, rmul=\E[m,
-- rs1=\E<\E2\E[20l\E[?6l\E[r\E[m\E[q\E(B\017\E)0\E>,
-- 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,
-+ cvvis=\E[12;1j, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
-+ dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%ds\E[%p1%dD, ed=\E[J,
-+ el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
-+ flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H,
-+ hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dE,
-+ invis=\E[8m, is1=\E<\E[?3l$<100>,
-+ is2=\E[m\017\E[1;2;3;4;6l\E[12;13;14;20l\E[?6;97;99l\E[?7h\E[4i\Ex\E[25;1j\212,
-+ is3=\E[?5l, kbeg=\Et, kbs=^H, kcbt=\E[Z, kclr=\E[J,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P,
-+ kdl1=\E[M, kel=\E[2K, kend=\Ez, kent=\Eent, kf1=\EOc,
-+ kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi,
-+ kf8=\EOj, khome=\E[H, kich1=\E[4h, kil1=\E[L, kind=\E[T,
-+ kri=\E[S, ll=\E[24H, mc0=\E[?2i, mc4=\E[?9i, mc5=\E[?4i,
-+ nel=^M^J,
-+ pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s,
-+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, prot=\EV, rc=\E8,
-+ rev=\E[7m, ri=\EM, rin=\E[%p1%dF, rmacs=^O, rmam=\E[?7l,
-+ rmir=\E[4l, rmkx=\E[21;0j\E[25;1j\212, rmln=\E|,
-+ rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l\E[2;0y, sc=\E7,
-+ sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p8%t\EV%;%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smam=\E[?7h, smir=\E[4h,
-+ smkx=\E[21;1j\E[25;4j\Eent\E~, smln=\E~, smso=\E[7m,
-+ smul=\E[4m, tbc=\E[3g, tsl=\E7\E[25;%p1%{8}%+%dH,
-+ vpa=\E[%p1%{1}%+%dd,
-
--# C. Itoh printers begin here
--citoh|ci8510|8510|c.itoh 8510a,
-- cols#80, it#8,
-- bold=\E!, cub1@,
-- is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073.,
-- rep=\ER%p2%03d%p1%c, ri=\Er, rmul=\EY, sgr0=\E"\EY,
-- smul=\EX, use=lpr,
--citoh-pica|citoh in pica,
-- is1=\EN, use=citoh,
--citoh-elite|citoh in elite,
-- cols#96,
-- is1=\EE,
-- is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089.,
-- use=citoh,
--citoh-comp|citoh in compressed,
-- cols#136,
-- is1=\EQ,
-- is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089\,097\,105\,113\,121\,129.,
-- use=citoh,
--# citoh has infinite cols because we don't want lp ever inserting \n\t**.
--citoh-prop|citoh-ps|ips|citoh in proportional spacing mode,
-- cols#32767,
-- is1=\EP, use=citoh,
--citoh-6lpi|citoh in 6 lines per inch mode,
-- is3=\EA, use=citoh,
--citoh-8lpi|citoh in 8 lines per inch mode,
-- lines#88,
-- is3=\EB, use=citoh,
-+att5425-nl|tty5425-nl|att4425-nl|AT&T 4425/5425 80 columns no labels,
-+ smkx=\E[21;1j\E[25;4j\Eent, use=att4425,
-
--#### Control Data (cdc)
--#
-+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,
-
--cdc456|cdc 456 terminal,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E1%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dl1=\EJ, ed=^X,
-- el=^V, home=^Y, il1=\EL, ind=^J,
-+# (att4426: his had bogus capabilities: :ri=\EM:, :ri=\E[1U:.
-+# I also added <rmam>/<smam> -- esr)
-+att4426|tty4426|teletype 4426S,
-+ am, da, db, xon,
-+ cols#80, lines#24, lm#48,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, bold=\E[5m, clear=\E[H\E[2J\E[1U\E[H\E[2J\E[1V,
-+ cr=^M, 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=\EP,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[0K, home=\E[H,
-+ hpa=\E[%p1%dG, ht=^I, hts=\E1, ich=\E[%p1%d@, ich1=\E\^,
-+ il=\E[%p1%dL, il1=\EL, ind=^J, indn=\E[%p1%dS,
-+ is1=\Ec\E[?7h, is2=\E[m\E[1;24r, kbs=^H, kcbt=\EO,
-+ kclr=\E[2J, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU,
-+ kf7=\EOV, kf8=\EOW, khome=\E[H, kll=\E[24;1H, ll=\E[24H,
-+ nel=^M^J, rc=\E8, rev=\E[7m, ri=\ET, rin=\E[%p1%dT,
-+ rmacs=\E(B, rmam=\E[?7l, rmso=\E[m, rmul=\E[m,
-+ rs2=\Ec\E[?3l\E[2;0y, sc=\E7, sgr0=\E[m\E(B, smacs=\E(0,
-+ smam=\E[?7h, smso=\E[5m, smul=\E[4m, tbc=\E[3g,
-+ vpa=\E[%p1%dd,
-
--# Assorted CDC terminals from BRL (improvements by DAG & Ferd Brundick)
--cdc721|CDC Viking,
-- OTbs, am,
-- cols#80, lines#24,
-- clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c,
-- cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I,
-- kcuu1=^W, khome=^Y,
--cdc721ll|CDC Vikingll,
-- OTbs, am,
-- cols#132, lines#24,
-- clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c,
-- cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I,
-- kcuu1=^W, khome=^Y,
--# (cdc752: the BRL entry had :ll=\E1 ^Z: commented out
--cdc752|CDC 752,
-- OTbs, am, bw, xhp,
-- cols#80, lines#24,
-- bel=^G, clear=\030\E1\s\s, cr=^M, cub1=^H, cud1=^J, cuf1=^U,
-- cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z, el=^V,
-- home=\E1\s\s, ind=^J, ll=^Y, rs1=\E1 \030\002\003\017,
--# CDC 756
--# The following switch/key settings are assumed for normal operation:
--# 96 chars SCROLL FULL duplex not BLOCK
--# Other switches may be set according to communication requirements.
--# Insert/delete-character cannot be used, as the whole display is affected.
--# "so" & "se" are commented out until jove handles "sg" correctly.
--cdc756|CDC 756,
-- OTbs, am, bw,
-- OTkn#10, cols#80, lines#24,
-- bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^U,
-- cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z,
-- dl1=\EJ$<6*/>, ed=^X, el=^V, home=^Y, il1=\EL$<6*/>, ind=^J,
-- kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z, kdch1=\EI,
-- kdl1=\EL, ked=^X, kel=^V, kf0=\EA, kf1=\EB, kf2=\EC, kf3=\ED,
-- kf4=\EE, kf5=\EF, kf6=\EG, kf7=\EH, kf8=\Ea, kf9=\Eb, khome=^Y,
-- khts=^O, kich1=\EK, kil1=\EL, lf0=F1, lf1=F2, lf2=F3, lf3=F4,
-- lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10, ll=^Y^Z,
-- rs1=\031\030\002\003\017,
--#
--# CDC 721 from Robert Viduya, Ga. Tech. <ihnp4!gatech!gitpyr!robert> via BRL.
--#
--# Part of the long initialization string defines the "DOWN" key to the left
--# of the tab key to send an ESC. The real ESC key is positioned way out
--# in right field.
--#
--# The termcap won't work in 132 column mode due to the way it it moves the
--# cursor. Termcap doesn't have the capability (as far as I could tell) to
--# handle the 721 in 132 column mode.
-+# Terminfo entry for the AT&T 510 A Personal Terminal
-+# Function keys 9 - 16 are available only after the
-+# screen labeled (soft keys/action blocks) are labeled. Function key
-+# 9 corresponds to the leftmost touch target on the screen,
-+# function key 16 corresponds to the rightmost.
- #
--# (cdc721: changed :ri: to :sr: -- esr)
--cdc721-esc|Control Data 721,
-- OTbs, OTpt, am, bw, msgr, xon,
-- OTkn#10, cols#80, it#8, lines#30,
-- bel=^G, blink=^N, cbt=^^^K, clear=^L, cub1=^H, cud1=^Z,
-- cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, cuu1=^W,
-- dch1=^^N, dim=^\, dl1=^^Q, ed=^^P, el=^K, home=^Y, hts=^^^RW,
-- ich1=^^O, il1=^^R, ind=\036W =\036U, invis=^^^R[,
-- is2=\036\022B\003\036\035\017\022\025\035\036E\036\022H\036\022J\036\022L\036\022N\036\022P\036\022Q\036\022\036\022\^\036\022b\036\022i\036W =\036\022Z\036\011C1-` `!k/o,
-- kbs=^H, kcub1=^H, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^q,
-- kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v, kf6=^^w, kf7=^^x,
-- kf8=^^y, kf9=^^z, khome=^Y, ll=^B =, rev=^^D,
-- ri=\036W =\036V, rmir=, rmkx=^^^Rl, rmso=^^E, rmul=^],
-- sgr0=\017\025\035\036E\036\022\\, smir=, smkx=^^^Rk,
-- smso=^^D, smul=^\, tbc=^^^RY,
-+# This entry is based on one done by Ernie Rice at Summit, NJ and
-+# changed by Anne Gallup, Skokie, IL, ttrdc!anne
-+att510a|bct510a|AT&T 510A Personal Terminal,
-+ am, mir, msgr, xenl, xon,
-+ cols#80, lh#2, lines#24, lw#7, nlab#8,
-+ acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z,
-+ civis=\E[11;0|, clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M,
-+ 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[11;2|, dch=\E[%p1%dP,
-+ dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J,
-+ el=\E[0K, el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H, ht=^I,
-+ hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, is1=\E(B\E)1\E[2l,
-+ is3=\E[21;1|\212, kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm,
-+ kf10=\EOd, kf11=\EOe, 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,
-+ mc0=\E[0i, mc4=\E[?8i, mc5=\E[?4i, nel=\EE,
-+ pln=\E[%p1%dp%p2%:-16s, rc=\E8, rev=\E[7m, ri=\EM,
-+ rmacs=^O, rmkx=\E[19;0|, rmso=\E[m, rmul=\E[m, sc=\E7,
-+ sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smkx=\E[19;1|, smso=\E[7m,
-+ smul=\E[4m, tbc=\E[3g,
-
--#### Getronics
--#
--# Getronics is a Dutch electronics company that at one time was called
--# `Geveke' and made async terminals; but (according to the company itself!)
--# they've lost all their documentation on the command set. The hardware
--# documentation suggests the terminals were actually manufactured by a
--# Taiwanese electronics company named Cal-Comp. There are known
--# to have been at least two models, the 33 and the 50.
-+# Terminfo entry for the AT&T 510 D Personal Terminal
-+# Function keys 9 through 16 are accessed by bringing up the
-+# system blocks.
-+# Function key 9 corresponds to the leftmost touch target on the screen,
-+# function key 16 corresponds to the rightmost.
- #
-+# There are problems with soft key labeling. These are due to
-+# strangenesses in the native terminal that are impossible to
-+# describe in a terminfo.
-+att510d|bct510d|AT&T 510D Personal Terminal,
-+ am, da, db, mir, msgr, xenl, xon,
-+ cols#80, lh#2, lines#24, lm#48, lw#7, nlab#8,
-+ acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z,
-+ clear=\E[H\E[J, cnorm=\E[11;3|, cr=^M, 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[11;2|, dch=\E[%p1%dP, dch1=\E[P,
-+ dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ed=\E[0J, el=\E[0K,
-+ el1=\E[1K, enacs=\E(B\E)1, ff=^L, home=\E[H,
-+ hpa=\E[%p1%{1}%+%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS,
-+ invis=\E[8m, is1=\E(B\E)1\E[5;0|, is3=\E[21;1|\212,
-+ kLFT=\E[u, kRIT=\E[v, kbs=^H, kcbt=\E[Z, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOm, kf10=\EOd,
-+ kf11=\EOe, 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,
-+ pln=\E[%p1%dp%p2%:-16s, rc=\E8,
-+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM,
-+ rin=\E[%p1%dT, 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,
-+ sgr=\E[0%?%p5%p6%|%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smgl=\E4, smgr=\E5, smir=\E[4h,
-+ smkx=\E[19;1|, smln=\E?, smso=\E[7m, smul=\E[4m,
-+ smxon=\E[29;0|, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd,
-
--# The 50 seems to be a top end vt220 clone, with the addition of a higher
--# screen resolution, a larger screen, at least 1 page of memory above and
--# below the screen, apparently pages of memory right and left of the screen
--# which can be panned, and about 75 function keys (15 function keys x normal,
--# shift, control, func A, func B). It also has more setup possibilities than
--# the vt220. The monitor case is dated November 1978 and the keyboard case is
--# May 1982.
--#
--# The vt100 emulation works as is. The entry below describes the rather
--# 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,
-- bw, mir, msgr,
-- cols#80, lines#25,
-- acsc=0_aaffggh jjkkllmmnnooqqssttuuvvwwxx, bel=^G,
-- blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, cr=^M,
-- 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,
-+# (att500: I merged this with the att513 entry, att500 just used att513 -- esr)
-+att500|att513|AT&T 513 using page mode,
-+ am, chts, mir, msgr, xenl, xon,
-+ cols#80, lh#2, lines#24, lw#8, nlab#8,
-+ acsc=+g\,h-f.e`bhrisjjkkllmmnnqqttuuvvwwxx{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[2;7m, cbt=\E[Z,
-+ clear=\E[H\E[J, cnorm=\E[11;0|, cr=^M,
-+ csr=%i\E[%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- dch=\E[%p1%dX, dch1=\E[X, dim=\E[2m, dl=\E[%p1%dM,
-- dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, home=\E[H,
-- hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m,
-- is2=\E0;2m\E[1;25r\E[25;1H\E[?3l\E[?7h\E[?8h,
-- ka1=\E[f, ka3=\EOQ, kb2=\EOP, kbs=^H, kc1=\EOR, kc3=\EOS,
-- kcub1=\E[D, kcud1=\E[A, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177,
-- kdl1=\EOS, kf0=\E010, kf1=\E001, kf10=\E011, kf2=\E002,
-- kf3=\E003, kf4=\E004, kf5=\E005, kf6=\E006, kf7=\E007,
-- kf8=\E008, kf9=\E009, khome=\E[f, lf2=A delete char,
-- lf3=A insert line, lf4=A delete line, lf5=A clear,
-- lf6=A ce of/cf gn, lf7=A print, lf8=A on-line,
-- lf9=A funcl0=A send, nel=^M^J, rev=\E[7m, rmacs=\E[3l,
-- rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[0;2m,
-- rmul=\E[0m, sgr0=\E[0;2m, smacs=\E3h, smam=\E?7h,
-- smir=\E[4h, smkx=\E=, smso=\E[2;7m, smul=\E[4m, tbc=\E[3g,
-- vpa=\E[%i%p1%dd,
--
--#### Human Designed Systems (Concept)
--#
--# Human Designed Systems
--# 400 Fehley Drive
--# King of Prussia, PA 19406
--# Vox: (610)-277-8300
--# Fax: (610)-275-5739
--# Net: support@hds.com
--#
--# John Martin <john@hds.com> is their termcap expert. They're mostly out of
--# the character-terminal business now (1995) and making X terminals. In
--# particular, the whole `Concept' line described here was discontinued long
--# ago.
--#
--
--# From: <vax135!hpk> Sat Jun 27 07:41:20 1981
--# Extensive changes to c108 by arpavax:eric Feb 1982
--# Some unknown person at SCO then translated it to terminfo.
--#
--# There seem to be a number of different versions of the C108 PROMS
--# (with bug fixes in its Z-80 program).
--#
--# The first one that we had would lock out the keyboard of you
--# sent lots of short lines (like /usr/dict/words) at 9600 baud.
--# Try that on your C108 and see if it sends a ^S when you type it.
--# If so, you have an old version of the PROMs.
--#
--# You should configure the C108 to send ^S/^Q before running this.
--# It is much faster (at 9600 baud) than the c100 because the delays
--# are not fixed.
--# new status line display entries for c108-8p:
--# <is3> - init str #3 - setup term for status display -
--# set programmer mode, select window 2, define window at last
--# line of memory, set bkgnd stat mesg there, select window 0.
--#
--# <tsl> - to status line - select window 2, home cursor, erase to
--# end-of-window, 1/2 bright on, goto(line#0, col#?)
--#
--# <fsl> - from status line - 1/2 bright off, select window 0
--#
--# <dsl> - disable status display - set bkgnd status mesg with
--# illegal window #
--#
--# There are probably more function keys that should be added but
--# I don't know what they are.
--#
--# No delays needed on c108 because of ^S/^Q handshaking
--#
--c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages,
-- is3=\EU\E z"\Ev\001\177 !p\E ;"\E z \Ev \001\177p\Ep\n,
-- rmcup=\Ev \001\177p\Ep\r\n, use=c108-4p,
--c108-4p|concept108-4p|concept 108 w/4 pages,
-- OTbs, eslok, hs, xon,
-- pb@,
-- acsc=jEkTl\\mMqLxU, cnorm=\Ew, cr=^M,
-- cup=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c,
-- cvvis=\EW, dch1=\E 1$<16*>, dsl=\E ;\177, fsl=\Ee\E z\s,
-- ind=^J, is1=\EK\E!\E F,
-- is3=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \001 p\Ep\n,
-- 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,
-- 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,
-- 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,
-- cols#132,
-- is1=\E F\E", rmcup=\Ev ^A0\001D\Ep\r\n,
-- smcup=\EU\Ev 8\001D\Ep\r, use=c108-8p,
-+ cvvis=\E[11;1|, dch=\E[%p1%dP, dch1=\E[P$<1>, dim=\E[2m,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-+ enacs=\E(B\E)1, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I,
-+ hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ indn=\E[%p1%dE, invis=\E[8m,
-+ is1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l,
-+ kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON,
-+ kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK,
-+ kFND=\EOX, kHLP=\EOM, kHOM=\ENM, kIC=\ENJ, kLFT=\ENK,
-+ kMOV=\ENC, kMSG=\EOL, kNXT=\ENH, kOPT=\EOR, kPRT=\EOZ,
-+ kPRV=\ENG, kRDO=\EOT, kRES=\EOQ, kRIT=\ENL, kRPL=\EOY,
-+ kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9, kbs=^H, kcan=\EOw,
-+ kcbt=\E[Z, kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd,
-+ kcrt=\EOn, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=\Eent,
-+ kext=\EOk, kf1=\EOc, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg,
-+ kf6=\EOh, kf7=\EOi, kf8=\EOj, kfnd=\EOx, khlp=\EOm,
-+ khome=\E[H, kich1=\ENj, kind=\E[S, kmov=\ENc, kmrk=\ENi,
-+ kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr,
-+ kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb,
-+ kres=\EOq, krfr=\ENa, kri=\E[T, krpl=\EOy, krst=\EOB,
-+ ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, ll=\E#2,
-+ mc0=\E[?98l\E[0i, mc4=\E[?98l\E[?8i, mc5=\E[?98l\E[?4i,
-+ nel=\EE,
-+ pfkey=\E[%p1%d;%p2%l%d;3;0p F%p1%d %p2%s,
-+ pfloc=\E[%p1%d;%p2%l%d;2;0p F%p1%d %p2%s,
-+ pfx=\E[%p1%d;%p2%l%d;1;0p F%p1%d %p2%s,
-+ pln=\E[%p1%dp%p2%:-16s, rc=\E8,
-+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM,
-+ rin=\E[%p1%dF, rmacs=^O, rmir=\E[4l,
-+ rmkx=\E[19;0|\E[21;1|\212, rmln=\E<, rmso=\E[m,
-+ rmul=\E[m,
-+ rs1=\E?\E[3;3|\E[10;0|\E[21;1|\212\E[6;1|\E[1{\E[?99l\E[2;0|\E[6;1|\E[8;0|\E[19;0|\E[1{\E[?99l,
-+ rs2=\E[5;0|, sc=\E7,
-+ sgr=\E[0%?%p1%p5%|%t;2%;%?%p2%p6%|%t;4%;%?%p4%t;5%;%?%p3%p1%|%p6%|%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smir=\E[4h,
-+ smkx=\E[19;1|\E[21;4|\Eent, smln=\E?, smso=\E[7m,
-+ smul=\E[4m, tbc=\E[3g, vpa=\E[%p1%{1}%+%dd,
-
--# Concept 100:
--# These have only window relative cursor addressing, not screen
--# relative. To get it to work right here, smcup/rmcup (which
--# were invented for the concept) lock you into a one page
--# window for screen style programs.
--#
--# To get out of the one page window, we use a clever trick:
--# we set the window size to zero ("\Ev " in rmcup) which the
--# terminal recognizes as an error and resets the window to all
--# of memory.
--#
--# This trick works on c100 but does not on c108, sigh.
--#
--# Some tty drivers use cr3 for concept, others use nl3, hence
--# the delays on cr and ind below. This padding is only needed at
--# 9600 baud and up. One or the other is commented out depending on
--# local conventions.
--#
--# 2 ms padding on <rmcup> isn't always enough. 6 works fine. Maybe
--# less than 6 but more than 2 will work.
--#
--# Note: can't use function keys f7-f10 because they are
--# indistinguishable from arrow keys (!), also, del char and
--# clear eol use xon/xoff so they probably won't work very well.
--#
--# Also note that we don't define insrt/del char/delline/eop/send
--# because they don't transmit unless we reset them - I figured
--# it was a bad idea to clobber their definitions.
--#
--# The <mc5> sequence changes the escape character to ^^ so that
--# escapes will be passed through to the printer. Only trouble
--# is that ^^ won't be - ^^ was chosen to be unlikely.
--# Unfortunately, if you're sending raster bits through to be
--# plotted, any character you choose will be likely, so we lose.
--#
--# \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,
-- 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,
-- cub1=^H, cud1=^J, cuf1=\E=,
-- cup=\Ea%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E;,
-- dch1=\E\021$<16*>, dim=\EE, dl1=\E\002$<3*>,
-- ed=\E\005$<16*>, el=\E\025$<16>, flash=\Ek$<200>\EK,
-- ht=\011$<8>, il1=\E\022$<3*>, ind=^J, 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@ \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?,
-- 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,
-- rep=\Er%p1%c%p2%{32}%+%c$<.2*>, rev=\ED,
-- rmcup=\Ev $<6>\Ep\r\n, rmir=\E\s\s, rmkx=\Ex,
-- 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,
-- cnorm@, cvvis@, flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee,
-- smso=\EE, use=c100,
--oc100|oconcept|c100-1p|old 1 page concept 100,
-- in,
-- is3@, use=c100,
-+# 01-07-88
-+# printer must be set to EMUL ANSI to accept ESC codes
-+# <cuu1> stops at top margin
-+# <is1> sets cpi 10,lpi 6,form 66,left 1,right 132,top 1,bottom 66,font
-+# and alt font ascii,wrap on,tabs cleared
-+# <is2> disables newline on LF,Emphasized off
-+# The <u0> capability sets form length
-+att5310|att5320|AT&T Model 53210 or 5320 matrix printer,
-+ xhpa, xvpa,
-+ bufsz#8192, cols#132, cps#120, it#8, lines#66, orc#10,
-+ orhi#100, orl#12, orvi#72,
-+ cpi=%?%p1%{10}%=%t\E[w%e%p1%{12}%=%t\E[2w%e%p1%{5}%=%t\E[5w%e%p1%{13}%=%p1%{14}%=%O%t\E[3w%e%p1%{16}%=%p1%{17}%=%O%t\E[4w%e%p1%{6}%=%t\E[6w%e%p1%{7}%=%t\E[7w%e%p1%{8}%=%t\E[8w%;,
-+ cr=^M,
-+ csnm=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tenglish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgermanic%e%p1%{7}%=%tfrench%e%p1%{8}%=%tcanadian_french%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline%e%p1%{12}%=%tsecurity%e%p1%{13}%=%tebcdic%e%p1%{14}%=%tapl%e%p1%{15}%=%tmosaic%;,
-+ cud=\E[%p1%de, cud1=^J, cuf=\E[%p1%da, cuf1=\s, cuu1=\EM,
-+ ff=^L, hpa=\E[%p1%d`, ht=^I, is1=\Ec, is2=\E[20l\r,
-+ lpi=%?%p1%{2}%=%t\E[4z%e%p1%{3}%=%t\E[5z%e%p1%{4}%=%t\E[6z%e%p1%{6}%=%t\E[z%e%p1%{8}%=%t\E[2z%e%p1%{12}%=%t\E[3z%;,
-+ rshm=\E[m,
-+ scs=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(D%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(0%e%p1%{12}%=%t\E(1%e%p1%{13}%=%t\E(3%e%p1%{14}%=%t\E(8%e%p1%{15}%=%t\E(}%;,
-+ smgbp=\E[;%p1%dr, smglp=\E[%{1}%p1%+%ds,
-+ smgrp=\E[;%{1}%p1%+%ds, smgtp=\E[%p1%dr, sshm=\E[5m,
-+ u0=\E[%p1%dt, vpa=\E[%p1%dd,
-
--# From: Walter Skorski <walt@genetics1.JMP.TJU.EDU>, 16-oct-1996.
--# Lots of notes, originally inline, but ncurses doesn't grok that.
--#
--# am: not available in power on mode, but turned on with \E[=107;207h in
--# is2=. Also, \E=124l in is2= could have been used to prevent needing
--# to specify xenl:, but that would have rendered the last space on the
--# last line useless.
--# bw: Not available in power on mode, but turned on with \E[=107;207h in
--# is2=.
--# clear: Could be done with \E[2J alone, except that vi (and probably most
--# other programs) assume that this also homes the cursor.
--# dsl: Go to window 2, go to the beginning of the line, use a line feed to
--# scroll the window, and go back to window 1.
--# is2: the string may cause a warning to be issued by tic that it
--# found a very long line and that it suspects that a comma is missing
--# somewhere. This warning can be ignored (unless it comes up more than
--# once). The initialization string contains the following commands:
-+# Teletype 5620, firmware version 1.1 (8;7;3) or earlier from BRL
-+# The following SET-UP modes are assumed for normal operation:
-+# CR_DEF=CR NL_DEF=INDEX DUPLEX=FULL
-+# Other SET-UP modes may be set for operator convenience or communication
-+# requirements. This termcap description is for the Resident Terminal Mode.
-+# No delays specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
-+# The BRL entry also said: UNSAFE :ll=\E[70H:
-+att5620-1|tty5620-1|dmd1|Teletype 5620 with old ROMs,
-+ am, xon,
-+ cols#88, it#8, lines#70, vt#3,
-+ bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^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, 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=^J, indn=\E[%p1%dS, kbs=^H, kclr=\E[2J,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H,
-+ kll=\E[70;1H, nel=^M^J, rc=\E8, ri=\E[T, rin=\E[%p1%dT,
-+ rs1=\Ec, sc=\E7,
-+
-+# 5620 terminfo (2.0 or later ROMS with char attributes)
-+# The following SET-UP modes are assumed for normal operation:
-+# DUPLEX=FULL GEN_FLOW=ON NEWLINE=INDEX RETURN=CR
-+# Other SET-UP modes may be set for operator convenience or communication
-+# requirements. This termcap description is for Resident Terminal Mode. No
-+# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
-+# assumptions: <ind> (scroll forward one line) is only done at screen bottom
-+# Be aware that older versions of the dmd have a firmware bug that affects
-+# parameter defaulting; for this terminal, the 0 in \E[0m is not optional.
-+# <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,
-+ OTbs, am, msgr, npc, xon,
-+ cols#88, it#8, lines#70,
-+ bel=^G, bold=\E[2m, clear=\E[H\E[J, cr=^M, cub1=^H,
-+ cud1=\E[B, 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, 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,
-+ indn=\E[%p1%dS, kbs=^H, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, kll=\E[70;1H, nel=^J,
-+ pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, rev=\E[7m, ri=\E[T,
-+ rin=\E[%p1%dT, rmso=\E[0m, rmul=\E[0m, rs1=\Ec, sc=\E7,
-+ sgr0=\E[0m, smso=\E[7m, smul=\E[4m,
-+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,
-+ lines#34, use=att5620,
-+# 5620 layer running the "S" system's downloaded graphics handler:
-+att5620-s|tty5620-s|layer|vitty|5620 S layer,
-+ OTbs, OTpt, am,
-+ cols#80, it#8, lines#72,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J,
-+ cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=^K, dl1=\ED,
-+ el=\EK, flash=\E^G, ht=^I, il1=\EI, ind=^J, kbs=^H, kclr=\E[2J,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H,
-+ kll=\E[70;1H,
-+
-+# Entries for <kf15> thru <kf28> refer to the shifted system pf keys.
- #
--# [Setup mode items changed from factory defaults:]
--# \E)0 set alternate character set to
--# graphics
--# ^O set character set to default
--# [In case it wasn't]
--# \E[m turn off all attributes
--# [In case they weren't off]
--# \E[=107; cursor wrap and
--# 207h character wrap on
--# \E[90;3u set Fkey definitions to "transmit"
--# defaults
--# \E[92;3u set cursor key definitions to
--# "transmit" defaults
--# \E[43;1u set shift F13 to transmit...
--# \177\E$P\177
--# \E[44;1u set shift F14 to transmit...
--# \177\E$Q\177
--# \E[45;1u set shift F15 to transmit...
--# \177\E$R\177
--# \E[46;1u set shift F16 to transmit...
--# \177\E$S\177
--# \E[200;1u set shift up to transmit...
--# \177\E$A\177
--# \E[201;1u set shift down to transmit...
--# \177\E$B\177
--# \E[202;1u set shift right to transmit...
--# \177\E$C\177
--# \E[203;1u set shift left to transmit...
--# \177\E$D\177
--# \E[204;1u set shift home to transmit...
--# \177\E$H\177
--# \E[212;1u set backtab to transmit...
--# \177\E$I\177
--# \E[213;1u set shift backspace to transmit...
--# \177\E$^H\177
--# \E[214;1u set shift del to transmit...
--# "\E$\177"
--# [Necessary items not mentioned in setup mode:]
--# \E[2!w move to window 2
--# \E[25;25w define window as line 25 of memory
--# \E[!w move to window 1
--# \E[2*w show current line of window 2 as
--# status line
--# \E[2+x set meta key to use high bit
--# \E[;3+} move underline to bottom of character
--#
--# All Fkeys are set to their default transmit definitions with \E[90;3u
--# in is2=. IMPORTANT: to use this terminal definition, the "quit" stty
--# setting MUST be redefined or deactivated, because the default is
--# contained in almost all of this terminal's Fkey strings! If for some
--# reason "quit" cannot be altered, the Fkeys can, but it would be
--# necessary to change ^| to ^] in all of these definitions, and add
--# \E[2;029!t to is2.
--# lines: is set to 24 because this terminal refuses to treat the 25th
--# line normally.
--# ll: Not available in power on mode, but turned on with \E[=107;207h in
--# is2=.
--# lm: Pointless, given that this definition locks a single screen of
--# memory into view, but what the hey...
--# rmso: Could use \E[1;7!{ to turn off only bold and reverse (leaving any
--# other attributes alone), but some programs expect this to turn off
--# everything.
--# rmul: Could use \E[4!{ to turn off only underline (leaving any other
--# attributes alone), but some programs expect this to turn off
--# everything.
--# sgr: Attributes are set on this terminal with the string \E[ followed by
--# a list of attribute code numbers (in decimal, separated by
--# semicolons), followed by the character m. The attribute code
--# numbers are:
--# 1 for bold;
--# 2 for dim (which is ignored in power on mode);
--# 4 for underline;
--# 5 for blinking;
--# 7 for inverse;
--# 8 for not displayable; and
--# =99 for protected (except that there are strange side
--# effects to protected characters which make them inadvisable).
--# The mapping of terminfo parameters to attributes is as follows:
--# %p1 (standout) = bold and inverse together;
--# %p2 (underline) = underline;
--# %p3 (reverse) = inverse;
--# %p4 (blink) = blinking;
--# %p5 (dim) is ignored;
--# %p6 (bold) = bold;
--# %p7 (invisible) = not displayable;
--# %p8 (protected) is ignored; and
--# %p9 (alt char set) = alt char set.
--# The code to do this is:
--# \E[0 OUTPUT \E[0
--# %?%p1%p6%O IF (standout; bold) OR
--# %t;1 THEN OUTPUT ;1
--# %; ENDIF
--# %?%p2 IF underline
--# %t;4 THEN OUTPUT ;4
--# %; ENDIF
--# %?%p4 IF blink
--# %t;5 THEN OUTPUT ;5
--# %; ENDIF
--# %?%p1%p3%O IF (standout; reverse) OR
--# %t;7 THEN OUTPUT ;7
--# %; ENDIF
--# %?%p7 IF invisible
--# %t;8 THEN OUTPUT ;8
--# %; ENDIF
--# m OUTPUT m
--# %?%p9 IF altcharset
--# %t^N THEN OUTPUT ^N
--# %e^O ELSE OUTPUT ^O
--# %; ENDIF
--# sgr0: Everything is turned off (including alternate character set), since
--# there is no way of knowing what it is that the program wants turned
--# off.
--# smul: The "underline" attribute is reconfigurable to an overline or
--# strikethru, or (as done with \E[;3+} in is2=), to a line at the true
--# bottom of the character cell. This was done to allow for more readable
--# underlined characters, and to be able to distinguish between an
--# underlined space, an underscore, and an underlined underscore.
--# xenl: Terminal can be configured to not need this, but this "glitch"
--# behavior is actually preferable with autowrap terminals.
--#
--# Parameters kf31= thru kf53= actually contain the strings sent by the shifted
--# Fkeys. There are no parameters for shifted Fkeys in terminfo. The is2
--# string modifies the 'O' in kf43 to kf46 to a '$'.
--#
--# kcbt was originally ^I but redefined in is2=.
--# kHOM was \E[H originally but redefined in is2=, as were a number of
--# other keys.
--# kDC was originally \177 but redefined in is2=.
--#
--# kbs: Shift was also ^H originally but redefined as \E$^H in is2=.
--# tsl: Go to window 2, then do an hpa=.
--#
--#------- flash=\E[8;3!}^G\E[3;3!}
--#------- flash=\E[?5h$<100>\E[?5l
--# There are two ways to flash the screen, both of which have their drawbacks.
--# The first is to set the bell mode to video, transmit a bell character, and
--# set the bell mode back - but to what? There is no way of knowing what the
--# user's old bell setting was before we messed with it. Worse, the command to
--# set the bell mode also sets the key click volume, and there is no way to say
--# "leave that alone", or to know what it's set to, either.
--# The second way to do a flash is to set the screen to inverse video, pad for a
--# tenth of a second, and set it back - but like before, there's no way to know
--# that the screen wasn't ALREADY in inverse video, or that the user may prefer
--# it that way. The point is moot anyway, since vi (and probably other
--# programs) assume that by defining flash=, you want the computer to use it
--# INSTEAD of bel=, rather than as a secondary type of signal.
--#
--#------- cvvis=\E[+{
--# The is the power on setting, which is also as visible as the cursor
--# gets.
--#------- wind=\E[%i%p1%d;%p2%d;%p3%{1}%+%d;%p4%{1}%+%dw
--# Windowing is possible, but not defined here because it is also used to
--# emulate status line functions. Allowing a program to set a window could
--# clobber the status line or render it unusable. There is additional memory,
--# but screen scroll functions are destructive and do not make use of it.
--#
--#------- dim= Not available in power on mode.
--# You have a choice of defining low intensity characters as "half bright" and
--# high intensity as "normal", or defining low as "normal" and high as "bold".
--# No matter which you choose, only one of either "half bright" or "bold" is
--# available at any time, so taking the time to override the default is
--# pointless.
--#
--#------- prot=\E[=0;99m
--# Not defined, because it appears to have some strange side effects.
--#------- pfkey=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%;
--#------- pfloc=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%;
--#------- pfx=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%d;1u\177%p2%s\177%;
--# Available, but making them available to programs is inadvisable.
--# The code to do this is:
--# %?%p1%{24}%< IF ((key; 24) <;
--# %p1%{30}%> ((key; 30) >;
--# %p1%{54}%< (key; 54) <
--# %A ) AND
--# %O ) OR
--# [that is, "IF key < 24 OR (key > 30 AND key < 54)",]
--# %t\E[ THEN OUTPUT \E[
--# %p1%d OUTPUT (key) as decimal
--# [next line applies to pfx only]
--# ;1 OUTPUT ;1
--# u OUTPUT u
--# \177 OUTPUT \177
--# %p2%s OUTPUT (string) as string
--# \177 OUTPUT \177
--# [DEL chosen as delimiter, but could be any character]
--# [implied: ELSE do nothing]
--# %; ENDIF
--#
--#------- rs2=
--# Not defined since anything it might do could be done faster and easier with
--# either Meta-Shift-Reset or the main power switch.
--#
--#------- smkx=\E[1!z
--#------- rmkx=\E[!z
--# These sequences apply to the cursor and setup keys only, not to the
--# numeric keypad. But it doesn't matter anyway, since making these
--# available to programs is inadvisable.
--# For the key definitions below, all sequences beginning with \E$ are
--# custom and programmed into the terminal via is2. \E$ also has no
--# meaning to any other terminal.
--#
--#------- cmdch=\E[;%p1%d!t
--# Available, but making it available to programs is inadvisable.
--#------- smxon=\E[1*q
--# Available, but making it available to programs is inadvisable.
--# Terminal will send XON/XOFF on buffer overflow.
--#------- rmxon=\E[*q
--# Available, but making it available to programs is inadvisable.
--# Terminal will not notify on buffer overflow.
--#------- smm=\E[2+x
--#------- rmm=\E[+x
--# Available, but making them available to programs is inadvisable.
--#
--# Printing:
--# It's not made clear in the manuals, but based on other ansi/vt type
--# terminals, it's a good guess that this terminal is capable of both
--# "transparent print" (which doesn't copy data to the screen, and
--# therefore needs mc5i: specified to say so) and "auxilliary print"
--# (which does duplicate printed data on the screen, in which case mc4=
--# and mc5= should use the \E[?4i and \E[?5i strings instead).
--
--hds200|Human Designed Systems HDS200,
-- am, bw, eslok, hs, km, mc5i, mir, msgr, xenl, xon,
-- cols#80, it#8, lines#24, lm#0,
-- acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G,
-- blink=\E[0;5m, bold=\E[0;1m, cbt=\E[Z, civis=\E[6+{,
-- clear=\E[H\E[J, cnorm=\E[+{, cr=^M,
-- 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,
-- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-- dsl=\E[2!w\r\n\E[!w, ed=\E[J, el=\E[K, el1=\E[1K,
-- fsl=\E[!w, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
-- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-- invis=\E[0;8m,
-- is2=\E)0\017\E[m\E[=107;207h\E[90;3u\E[92;3u\E[43;1u\177\E$P\177\E[44;1u\177\E$Q\177\E[45;1u\177\E$R\177\E[46;1u\177\E$S\177\E[200;1u\177\E$A\177\E[201;1u\177\E$B\177\E[202;1u\177\E$C\177\E[203;1u\177\E$D\177\E[204;1u\177\E$H\177\E[212;1u\177\E$I\177\E[213;1u\177\E$\010\177\E[214;1u"\E$\177"\E[2!w\E[25;25w\E[!w\E[2*w\E[2+x\E[;3+},
-- kDC=\E$\177, kHOM=\E$H, kLFT=\E$D, kRIT=\E$C, kbs=^H,
-- kcbt=\E$I, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\177, kent=^M, kf1=^\001\r, kf10=^\010\r,
-- kf11=^\011\r, kf12=^\012\r, kf13=\EOP, kf14=\EOQ,
-- kf15=\EOR, kf16=\EOS, kf17=^\017\r, kf18=^\018\r,
-- kf19=^\019\r, kf2=^\002\r, kf20=^\020\r, kf21=^\021\r,
-- kf22=^\022\r, kf23=^\023\r, kf3=^\003\r, kf31=^\031\r,
-- kf32=^\032\r, kf33=^\033\r, kf34=^\034\r, kf35=^\035\r,
-- kf36=^\036\r, kf37=^\037\r, kf38=^\038\r, kf39=^\039\r,
-- kf4=^\004\r, kf40=^\040\r, kf41=^\041\r, kf42=^\042\r,
-- kf43=\E$P, kf44=\E$Q, kf45=\E$R, kf46=\E$S, kf47=^\047\r,
-- kf48=^\048\r, kf49=^\049\r, kf5=^\005\r, kf50=^\050\r,
-- kf51=^\051\r, kf52=^\052\r, kf53=^\053\r, kf6=^\006\r,
-- kf7=^\007\r, kf8=^\008\r, kf9=^\009\r, khome=\E[H,
-- kind=\E[T, knp=\E[U, kpp=\E[V, kri=\E[S, ll=\E[H\E[A,
-- mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=\E[E, rc=\E8,
-- rev=\E[0;7m, ri=\EM, rmacs=^O, rmir=\E[4l, rmso=\E[m\017,
-- rmul=\E[m\017, sc=\E7,
-- sgr=\E[0%?%p1%p6%O%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%O%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, smir=\E[4h, smso=\E[0;1;7m,
-- smul=\E[0;4m, tbc=\E[3g, tsl=\E[2!w\E[%i%p1%dG,
-- vpa=\E[%i%p1%dd,
--
--# <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,
-- 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,
-- clear=\E[H\E[J$<38>, cnorm=\E[=119l, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- cvvis=\E[=119h, dch1=\E[P, dim=\E[1!{, dl=\E[%p1%dM$<4*>,
-- dl1=\E[M$<4>, ed=\E[J$<96>, el=\E[K$<6>, home=\E[H,
-- hpa=\E[%p1%{1}%+%dG, ht=\011$<4>, hts=\EH, ich=\E[%p1%d@,
-- 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,
-- kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\E^B\r, ked=\E^D\r, kf1=\EOP, kf2=\EOQ, kf3=\EOR,
-- kf4=\EOS, khome=\E[H, kich1=\E^A\r, kil1=\E^C\r, ll=\E[24H,
-- mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
-- pfloc=\E[%p1%d;0u#%p2%s#, pfx=\E[%p1%d;1u#%p2%s#,
-- prot=\E[99m, rc=\E8, rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m,
-- ri=\EM$<4>, rmacs=\016$<1>, rmcup=\E[w\E2\r\n,
-- rmir=\E[4l, rmkx=\E[!z\E[0;2u, rmso=\E[7!{, rmul=\E[4!{,
-- sc=\E7,
-- sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;m,
-- sgr0=\E[m, smacs=\017$<1>, 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,
--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,
-- 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,
-- flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h,
-- smcup=\E[H\E[1;24;1;132w, use=avt-ns,
--
--# Concept AVT with status line. We get the status line using the
--# "Background status line" feature of the terminal. We swipe the
--# first line of memory in window 2 for the status line, keeping
--# 191 lines of memory and 24 screen lines for regular use.
--# The first line is used instead of the last so that this works
--# 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,
-- 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,
-- use=avt+s, use=avt-ns,
--avt-rv|avt-rv-s|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,
-- 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,
-- 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,
--
--#### Contel Business Systems.
--#
--
--# Contel c300 and c320 terminals.
--contel300|contel320|c300|Contel Business Systems C-300 or C-320,
-- am, in, xon,
-- cols#80, lines#24, xmc#1,
-- bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
-- dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>,
-- el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH,
-- hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>,
-- 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!\r, tbc=\E3,
--# Contel c301 and c321 terminals.
--contel301|contel321|c301|c321|Contel Business Systems C-301 or C-321,
-- flash@, ich1@, ip@, rmso=\E!\0$<20>, smso=\E!\r$<20>,
-- use=contel300,
--
--#### Data General (dg)
--#
--# According to James Carlson <carlson@xylogics.com> writing in January 1995,
--# the terminals group at Data General was shut down in 1991; all these
--# terminals have thus been discontinued.
--#
--# DG terminals have function keys that respond to the SHIFT and CTRL keys,
--# e.g., SHIFT-F1 generates a different code from F1. To number the keys
--# sequentially, first the unmodified key codes are listed as F1 through F15.
--# Then their SHIFT versions are listed as F16 through F30, their CTRL versions
--# are listed as F31 through F45, and their CTRL-SHIFT versions are listed as
--# F46 through F60. This is done in the private "includes" below whose names
--# start with "dgkeys+".
--#
--# DG terminals generally support 8 bit characters. For each of these terminals
--# two descriptions are supplied:
--# 1) A default description for 8 bits/character communications, which
--# uses the default DG international character set and keyboard codes.
--# 2) A description with suffix "-7b" for 7 bits/character communications.
--# This description must use the NON-DEFAULT native keyboard language.
--
--# Unmodified fkeys (kf1-kf11), Shift fkeys (kf12-kf22), Ctrl fkeys (kf23-kf33),
--# Ctrl/Shift fdkeys (kf34-kf44).
--
--dgkeys+8b|Private entry describing DG terminal 8-bit ANSI mode special keys,
-- ka1=\233020z, ka3=\233021z, kc1=\233022z, kc3=\233023z,
-- kclr=\2332J, kcub1=\233D, kcud1=\233B, kcuf1=\233C,
-- kcuu1=\233A, kel=\233K, kf1=\233001z, kf10=\233010z,
-- kf11=\233011z, kf12=\233012z, kf13=\233013z,
-- kf14=\233014z, kf15=\233000z, kf16=\233101z,
-- kf17=\233102z, kf18=\233103z, kf19=\233104z,
-- kf2=\233002z, kf20=\233105z, kf21=\233106z,
-- kf22=\233107z, kf23=\233108z, kf24=\233109z,
-- kf25=\233110z, kf26=\233111z, kf27=\233112z,
-- kf28=\233113z, kf29=\233114z, kf3=\233003z,
-- kf30=\233100z, kf31=\233201z, kf32=\233202z,
-- kf33=\233203z, kf34=\233204z, kf35=\233205z,
-- kf36=\233206z, kf37=\233207z, kf38=\233208z,
-- kf39=\233209z, kf4=\233004z, kf40=\233210z,
-- kf41=\233211z, kf42=\233212z, kf43=\233213z,
-- kf44=\233214z, kf45=\233200z, kf46=\233301z,
-- kf47=\233302z, kf48=\233303z, kf49=\233304z,
-- kf5=\233005z, kf50=\233305z, kf51=\233306z,
-- kf52=\233307z, kf53=\233308z, kf54=\233309z,
-- kf55=\233310z, kf56=\233311z, kf57=\233312z,
-- kf58=\233313z, kf59=\233314z, kf6=\233006z,
-- kf60=\233300z, kf7=\233007z, kf8=\233008z, kf9=\233009z,
-- khome=\233H, kprt=\233i,
--
--dgkeys+7b|Private entry describing DG terminal 7-bit ANSI mode special keys,
-- ka1=\E[020z, ka3=\E[021z, kc1=\E[022z, kc3=\E[023z,
-- kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kel=\E[K, kf1=\E[001z, kf10=\E[010z, kf11=\E[011z,
-- kf12=\E[012z, kf13=\E[013z, kf14=\E[014z, kf15=\E[000z,
-- kf16=\E[101z, kf17=\E[102z, kf18=\E[103z, kf19=\E[104z,
-- kf2=\E[002z, kf20=\E[105z, kf21=\E[106z, kf22=\E[107z,
-- kf23=\E[108z, kf24=\E[109z, kf25=\E[110z, kf26=\E[111z,
-- kf27=\E[112z, kf28=\E[113z, kf29=\E[114z, kf3=\E[003z,
-- kf30=\E[100z, kf31=\E[201z, kf32=\E[202z, kf33=\E[203z,
-- kf34=\E[204z, kf35=\E[205z, kf36=\E[206z, kf37=\E[207z,
-- kf38=\E[208z, kf39=\E[209z, kf4=\E[004z, kf40=\E[210z,
-- kf41=\E[211z, kf42=\E[212z, kf43=\E[213z, kf44=\E[214z,
-- kf45=\E[200z, kf46=\E[301z, kf47=\E[302z, kf48=\E[303z,
-- kf49=\E[304z, kf5=\E[005z, kf50=\E[305z, kf51=\E[306z,
-- kf52=\E[307z, kf53=\E[308z, kf54=\E[309z, kf55=\E[310z,
-- kf56=\E[311z, kf57=\E[312z, kf58=\E[313z, kf59=\E[314z,
-- kf6=\E[006z, kf60=\E[300z, kf7=\E[007z, kf8=\E[008z,
-- kf9=\E[009z, khome=\E[H, kprt=\E[i,
--
--dgkeys+11|Private entry describing 11 minimal-subset DG mode special keys,
-- kclr=^L, kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kel=^K,
-- kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^a, kf13=^^b, kf14=^^c,
-- 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=^^#,
-- kf37=^^$, kf38=^^%%, kf39=^^&, kf4=^^t, kf40=^^', kf41=^^(,
-- kf42=^^), kf43=^^*, kf44=^^+, kf5=^^u, kf6=^^v, kf7=^^w,
-- kf8=^^x, kf9=^^y, khome=^H,
--
--dgkeys+15|Private entry describing 15 DG mode special keys,
-- kHOM=^^^H, kLFT=^^^Y, kRIT=^^^X, ka1=^^\\, ka3=^^], kc1=^^\^,
-- kc3=^^_, kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^|, kf13=^^},
-- kf14=^^~, kf15=^^p, kf16=^^a, kf17=^^b, kf18=^^c, kf19=^^d,
-- 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=^^\:,
-- kf41=^^;, kf42=^^<, kf43=^^=, kf44=^^>, kf45=^^0, kf46=^^!,
-- kf47=^^", kf48=^^#, kf49=^^$, kf5=^^u, kf50=^^%%, kf51=^^&,
-- kf52=^^', kf53=^^(, kf54=^^), kf55=^^*, kf56=^^+, kf57=^^\,,
-- kf58=^^-, kf59=^^., kf6=^^v, kf60=^^\s, kf7=^^w, kf8=^^x,
-- kf9=^^y,
--
--# Data General color terminals use the "Tektronix" color model. The total
--# number of colors varies with the terminal model, as does support for
--# attributes used in conjunction with color.
--
--# Removed u7, u8 definitions since they conflict with tack:
--# Preserve user-defined colors in at least some cases.
--# u7=^^Fh,
--# Default is ACM mode.
--# u8=^^F}20^^Fi^^F}21,
--#
--dgunix+fixed|Fixed color info for DG D430C terminals in DG-UNIX mode,
-- bce,
-- colors#16, ncv#53, pairs#256,
-- op=\036Ad\036Bd,
-- setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c,
-- setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c,
-- setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c,
--
--dg+fixed|Fixed color info for DG D430C terminals in DG mode,
-- use=dgunix+fixed,
--
--# Video attributes are coordinated using static variables set by "sgr", then
--# checked by "op", "seta[bf]", and "set[bf]" to refresh the attribute settings.
--# (D=dim, U=underline, B=blink, R=reverse.)
--dg+color8|Color info for Data General D220 and D230C terminals in ANSI mode,
-- bce,
-- colors#8, ncv#16, pairs#64,
-- op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m,
-- setab=\E[4%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-- setaf=\E[3%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-- setb=\E[4%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-- setf=\E[3%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
--
--dg+color|Color info for Data General D470C terminals in ANSI mode,
-- colors#16, ncv#53, pairs#256,
-- setab=\E[%?%p1%{8}%<%t4%p1%e=%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-- setaf=\E[%?%p1%{8}%<%t3%p1%e<%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-- setb=\E[%?%p1%{8}%<%t4%e=%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-- setf=\E[%?%p1%{8}%<%t3%e<%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-- use=dg+color8,
--
--dgmode+color8|Color info for Data General D220/D230C terminals in DG mode,
-- bce,
-- colors#8, ncv#16, pairs#64,
-- op=\036Ad\036Bd,
-- setab=\036B%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c,
-- setaf=\036A%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c,
-- setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c,
--
--dgmode+color|Color info for Data General D470C terminals in DG mode,
-- colors#16, pairs#256,
-- setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c,
-- setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c,
-- use=dgmode+color8,
--
--dgunix+ccc|Configurable color info for DG D430C terminals in DG-UNIX mode,
-- bce, ccc,
-- colors#52, ncv#53, pairs#26,
-- initp=\036RG0%p1%02X%p2%{255}%*%{1000}%/%02X%p3%{255}%*%{1000}%/%02X%p4%{255}%*%{1000}%/%02X%p5%{255}%*%{1000}%/%02X%p6%{255}%*%{1000}%/%02X%p7%{255}%*%{1000}%/%02X,
-- oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00,
-- op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D,
-- scp=\036RG2%p1%02X,
--
--# Colors are in the order: normal, reverse, dim, dim + reverse.
--dg+ccc|Configurable color info for DG D430C terminals in DG mode,
-- bce, ccc,
-- colors#52, ncv#53, pairs#26,
-- initp=\036RG0%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c%p2%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p3%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p4%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p5%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%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?00000000\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,
-- am, bw, msgr, xon,
-- cols#80, lines#24,
-- bel=^G, blink=^N, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X,
-- cup=\020%p2%c%p1%c, cuu1=^W, dim=^\, el=^K, ind=^J, is1=^R^C,
-- mc0=^Q, nel=^J, rmso=^], rmul=^U, sgr0=^O^U^], smso=^\,
-- smul=^T, use=dgkeys+11,
--
--# According to the 4.4BSD termcap file, the dg200 <cup> should be the
--# termcap equivalent of \020%p2%{128}%+%c%p1%{128}%+%c (in termcap
--# notation that's "^P%r%+\200%+\200"). Those \200s are suspicious,
--# maybe they were originally nuls (which would fit).
--
--dg200|data general dasher 200,
-- OTbs, am, bw,
-- cols#80, lines#24,
-- bel=^G, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X,
-- cup=\020%p2%c%p1%c, cuu1=^W, el=^K, home=^H, ind=^J,
-- kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^z, kf1=^^q,
-- kf2=^^r, kf3=^^s, kf4=^^t, kf5=^^u, kf6=^^v, kf7=^^w, kf8=^^x,
-- kf9=^^y, khome=^H, lf0=f10, nel=^J, rmso=^^E, rmul=^U,
-- smso=^^D, smul=^T,
--
--# Data General 210/211 (and 410?) from Lee Pearson (umich!lp) via BRL
--dg210|dg-ansi|Data General 210/211,
-- am,
-- cols#80, lines#24,
-- OTnl=\E[B, clear=\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-- home=\E[H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- khome=\E[H, nel=\r\E[H\E[A\n, rmso=\E[0;m, rmul=\E[0;m,
-- smso=\E[7;m, smul=\E[4;m,
--# From: Peter N. Wan <ihnp4!gatech!gacsr!wan>
--# courtesy of Carlos Rucalde of Vantage Software, Inc.
--# (dg211: this had <cup=\020%r%.%>., which was an ancient termcap hangover.
--# I suspect the d200 function keys actually work on the dg211, check it out.)
--dg211|Data General d211,
-- cnorm=^L, cvvis=^L^R, ht=^I, ind@, kbs=^Y, kf0@, kf1@, kf2@, kf3@,
-- kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, lf0@, nel=^M^Z, rmcup=^L,
-- rmso=\036E$<\0/>, smcup=^L^R, smso=\036D$<5/>, use=dg200,
--
--# dg450 from Cornell (not official)
--dg450|dg6134|data general 6134,
-- cub1@, cuf1=^X, use=dg200,
--
--# Not official...
--# Note: lesser Dasher terminals will not work with vi because vi insists upon
--# having a command to move straight down from any position on the bottom line
--# and scroll the screen up, or a direct vertical scroll command. The 460 and
--# above have both, the D210/211, for instance, has neither. We must use ANSI
--# mode rather than DG mode because standard UNIX tty drivers assume that ^H is
--# backspace on all terminals. This is not so in DG mode.
--# (dg460-ansi: removed obsolete ":kn#6:"; also removed ":mu=\EW:", on the
--# grounds that there is no matching ":ml:"
--# fixed garbled ":k9=\E[00\:z:" capability -- esr)
--dg460-ansi|Data General Dasher 460 in ANSI-mode,
-- OTbs, am, msgr, ul,
-- cols#80, it#8, lines#24,
-- OTnl=\ED, blink=\E[5m, clear=\E[2J, cub1=^H, cud1=\E[B,
-- cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P,
-- dim=\E[2m, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-- ich1=\E[@, il1=\E[L, ind=\E[S, is2=^^F@, kbs=\E[D,
-- 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[010z, khome=\E[H, lf0=f1, lf1=f2, lf2=f3,
-- lf3=f4, lf4=f5, lf5=f6, lf6=f7, lf7=f8, lf9=f10, rev=\E[7m,
-- ri=\E[T, rmso=\E[m, rmul=\E[05, sgr0=\E[m, smso=\E[7m,
-- smul=\E[4m,
--# From: Wayne Throop <mcnc!rti-sel!rtp47!throopw> (not official)
--# Data General 605x
--# Ought to work for a Model 6242, Type D210 as well as a 605x.
--# Note that the cursor-down key transmits ^Z. Job control users, beware!
--# 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,
-- OTbs, am, bw, ul,
-- cols#80, lines#24,
-- OTbc=^Y, bel=^G, clear=^L, cnorm=^L, cr=^M, cub1=^Y, cud1=^Z,
-- cuf1=^X, cup=\020%p2%c%p1%c, cuu1=^W, cvvis=^L^R, el=^K,
-- home=^H, ht=^I, is2=^R, kbs=^Y, kcub1=^Y, kcud1=^Z, kcuf1=^X,
-- kcuu1=^W, kf0=^^q, kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v,
-- kf6=^^w, kf7=^^x, kf8=^^y, kf9=^^z, khome=^H, rmcup=^L,
-- rmso=\0^^E, rmul=^U, smcup=^L^R, smso=\0\0\0\0\0\036D,
-- smul=^T,
-+# Entries for <kf29> thru <kf46> refer to the alternate keypad mode
-+# keys: = * / + 7 8 9 - 4 5 6 , 1 2 3 0 . ENTER
-+att605|AT&T 605 80 column 102key keyboard,
-+ am, eo, xon,
-+ cols#80, lines#24, lw#8, nlab#8, wsl#80,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-+ cr=^M, cub1=^H, cud1=\E[B, 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, ed=\E[J,
-+ el=\E[K, el1=\E[1K, fsl=\E8, ht=^I, ich=\E[%p1%d@, ich1=\E[@,
-+ il1=\E[L, ind=^J, invis=\E[8m,
-+ is1=\E[8;0|\E[?\E[13;20l\E[?\E[12h, is2=\E[m\017,
-+ kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z, kclr=\E[2J,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P,
-+ kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp, kf11=\ENq,
-+ kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD,
-+ kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH,
-+ kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ,
-+ kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe,
-+ kf30=\EOQ, kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx,
-+ kf35=\EOy, kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv,
-+ kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs,
-+ kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh,
-+ kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H, kich1=\E[@,
-+ kil1=\E[L, kind=\E[S, knp=\E[U, kpp=\E[V, ll=\E[24H,
-+ mc4=\E[?4i, mc5=\E[?5i, nel=\EE,
-+ pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s,
-+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m,
-+ rmacs=^O, rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m,
-+ 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,
-+ 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,
-+ dch1=\E[P, dl1=\E[M, ich1=\E[@, il1=\E[L, kcbt=\E[Z,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P,
-+ kdl1=\E[M, kend=\E[F, kf1=\E[M, kf10=\E[V, kf2=\E[N,
-+ kf3=\E[O, kf4=\E[P, kf5=\E[Q, kf6=\E[R, kf7=\E[S, kf8=\E[T,
-+ kf9=\E[U, khome=\E[H, kich1=\E[@, knp=\E[G, kpp=\E[I,
-+ rmsc=\E[50;0|$<400>, smsc=\E[?11l\E[50;1|$<250>,
-+ xoffc=g, xonc=e, use=att605,
-+att605-w|AT&T 605-w 132 column 102 key keyboard,
-+ cols#132, wsl#132,
-+ is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h\E(B\E)0,
-+ use=att605,
-+# (att610: I added <rmam>/<smam> based on the init string. I also
-+# added <indn> and <rin> because the BSD file says the att615s have them,
-+# and the 615 is like a 610 with a big keyboard, and most of their other
-+# smart terminals support the same sequence -- esr)
-+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=^M,
-+ 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,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-+ flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I,
-+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-+ indn=\E[%p1%dS, invis=\E[8m,
-+ is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0,
-+ is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H,
-+ kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr,
-+ kf13=\ENs, kf14=\ENt, kf2=\EOd, kf3=\EOe, kf4=\EOf, kf5=\EOg,
-+ kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H,
-+ kind=\E[S, kri=\E[T, ll=\E[24H, mc4=\E[?4i, mc5=\E[?5i,
-+ nel=\EE,
-+ pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s,
-+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m,
-+ ri=\EM, rin=\E[%p1%dT, rmacs=^O, rmam=\E[?7l, rmir=\E[4l,
-+ rmln=\E[2p, rmso=\E[m, rmul=\E[m, rs2=\Ec\E[?3l, sc=\E7,
-+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%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,
-+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,
-+ use=att610,
-
--# (Some performance can be gained over the generic DG terminal type)
--dg6053|6053|6053-dg|dg605x|605x|605x-dg|d2|d2-dg|Data General DASHER 6053,
-- xon@,
-- home=^P\0\0, ll=^P\0^W, use=dg-generic,
-+att610-103k|AT&T 610; 80 column; 103key keyboard,
-+ kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON,
-+ kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK,
-+ kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH,
-+ kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ,
-+ kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9,
-+ kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn,
-+ kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M,
-+ kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf9@, kfnd=\EOx,
-+ khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi, kmsg=\EOl,
-+ knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr, kpp=\E[V,
-+ kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb, kres=\EOq,
-+ krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB, ksav=\EOo,
-+ kslt=\ENI, kspd=\EOp, kund=\EOs, use=att610,
-+att610-103k-w|AT&T 610; 132 column; 103key keyboard,
-+ cols#132, wsl#132,
-+ is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h,
-+ use=att610-103k,
-+att615|AT&T 615; 80 column; 98key keyboard,
-+ kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE,
-+ kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ,
-+ kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS,
-+ kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS,
-+ kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt,
-+ kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr,
-+ kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610,
-+att615-w|AT&T 615; 132 column; 98key keyboard,
-+ kLFT=\E[ A, kRIT=\E[ @, kf15=\EOC, kf16=\EOD, kf17=\EOE,
-+ kf18=\EOF, kf19=\EOG, kf20=\EOH, kf21=\EOI, kf22=\EOJ,
-+ kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR, kf27=\ENS,
-+ kf28=\ENT, kf29=\EOP, kf30=\EOQ, kf31=\EOR, kf32=\EOS,
-+ kf33=\EOw, kf34=\EOx, kf35=\EOy, kf36=\EOm, kf37=\EOt,
-+ kf38=\EOu, kf39=\EOv, kf40=\EOl, kf41=\EOq, kf42=\EOr,
-+ kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, use=att610-w,
-+att615-103k|AT&T 615; 80 column; 103key keyboard,
-+ kLFT=\E[ A, kRIT=\E[ @, use=att610-103k,
-+att615-103k-w|AT&T 615; 132 column; 103key keyboard,
-+ kLFT=\E[ A, kRIT=\E[ @, use=att610-103k-w,
-+# (att620: I added <rmam>/<smam> based on the init string and
-+# <rin>/<indn> from a BSD termcap -- esr)
-+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=^M,
-+ 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,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-+ flash=\E[?5h$<200>\E[?5l, fsl=\E8, home=\E[H, ht=^I,
-+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-+ indn=\E[%p1%dS, invis=\E[8m,
-+ is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h,
-+ is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H,
-+ kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr,
-+ kf13=\ENs, kf14=\ENt, kf15=\EOC, kf16=\EOD, kf17=\EOE,
-+ kf18=\EOF, kf19=\EOG, kf2=\EOd, kf20=\EOH, kf21=\EOI,
-+ kf22=\EOJ, kf23=\ENO, kf24=\ENP, kf25=\ENQ, kf26=\ENR,
-+ kf27=\ENS, kf28=\ENT, kf29=\EOP, kf3=\EOe, kf30=\EOQ,
-+ kf31=\EOR, kf32=\EOS, kf33=\EOw, kf34=\EOx, kf35=\EOy,
-+ kf36=\EOm, kf37=\EOt, kf38=\EOu, kf39=\EOv, kf4=\EOf,
-+ kf40=\EOl, kf41=\EOq, kf42=\EOr, kf43=\EOs, kf44=\EOp,
-+ kf45=\EOn, kf46=\EOM, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj,
-+ kf9=\ENo, khome=\E[H, kind=\E[S, kri=\E[T, ll=\E[24H,
-+ mc4=\E[?4i, mc5=\E[?5i, nel=\EE,
-+ pfx=\E[%p1%d;%p2%l%02dq F%p1%1d %p2%s,
-+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8, rev=\E[7m,
-+ ri=\EM, rin=\E[%p1%dT, rmacs=\E(B\017, rmam=\E[?7l,
-+ rmir=\E[4l, rmln=\E[2p, rmso=\E[m, rmul=\E[m,
-+ rs2=\Ec\E[?3l, sc=\E7,
-+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%t;7%;%?%p7%t;8%;m%?%p9%t\E)0\016%e\E(B\017%;,
-+ 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,
-+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,
-+ use=att620,
-+att620-103k|AT&T 620; 80 column; 103key keyboard,
-+ kBEG=\ENB, kCAN=\EOW, kCMD=\EOU, kCPY=\END, kCRT=\EON,
-+ kDC=\ENF, kDL=\ENE, kEND=\ENN, kEOL=\EOA, kEXT=\EOK,
-+ kFND=\EOX, kHLP=\EOM, kMOV=\ENC, kMSG=\EOL, kNXT=\ENH,
-+ kOPT=\EOR, kPRT=\EOZ, kPRV=\ENG, kRDO=\EOT, kRES=\EOQ,
-+ kRPL=\EOY, kSAV=\EOO, kSPD=\EOP, kUND=\EOS, kbeg=\E9,
-+ kcan=\EOw, kclo=\EOV, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn,
-+ kdch1=\ENf, kdl1=\ENe, kel=\EOa, kend=\E0, kent=^M,
-+ kext=\EOk, kf10@, kf11@, kf12@, kf13@, kf14@, kf15@, kf16@, kf17@,
-+ kf18@, kf19@, kf20@, kf21@, kf22@, kf23@, kf24@, kf25@, kf26@, kf27@,
-+ kf28@, kf29@, kf30@, kf31@, kf32@, kf33@, kf34@, kf35@, kf36@, kf37@,
-+ kf38@, kf39@, kf40@, kf41@, kf42@, kf43@, kf44@, kf45@, kf46@, kf9@,
-+ kfnd=\EOx, khlp=\EOm, kich1=\ENj, kmov=\ENc, kmrk=\ENi,
-+ kmsg=\EOl, knp=\E[U, knxt=\ENh, kopn=\EOv, kopt=\EOr,
-+ kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt, kref=\EOb,
-+ kres=\EOq, krfr=\ENa, krmir=\ENj, krpl=\EOy, krst=\EOB,
-+ ksav=\EOo, kslt=\ENI, kspd=\EOp, kund=\EOs, use=att620,
-
--# Like 6053, but adds reverse video and more keypad and function keys.
--d200|d200-dg|Data General DASHER D200,
-- bold=^^D^T, home@, ll@, rev=^^D, rmso=^^E^],
-- sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;,
-- sgr0=\017\025\035\036E, smso=^^D^\, use=dgkeys+15,
-- use=dg6053,
-+att620-103k-w|AT&T 620; 132 column; 103key keyboard,
-+ cols#132, wsl#132,
-+ is1=\E[8;0|\E[?4;5;13;15l\E[13;20l\E[?3;7h\E[12h,
-+ use=att620-103k,
-
--# DASHER D210 series terminals in ANSI mode.
--# Reverse video, no insert/delete character/line, 7 bits/character only.
--#
--# Initialization string 1 sets:
--# <0 - scrolling enabled
--# <1 - blink enabled
--# <4 - print characters regardless of attributes
--d210|d214|Data General DASHER D210 series,
-- am, bw, msgr, xon,
-- cols#80, lines#24,
-- bel=^G, blink=\E[5m, bold=\E[4;7m, clear=\E[2J, cr=^M,
-+# AT&T (formerly Teletype) 630 Multi-Tasking Graphics terminal
-+# The following SETUP modes are assumed for normal operation:
-+# Local_Echo=Off Gen_Flow=On Return=CR Received_Newline=LF
-+# Font_Size=Large Non-Layers_Window_Cols=80
-+# Non-Layers_Window_Rows=60
-+# Other SETUP modes may be set for operator convenience or communication
-+# requirements. Some capabilities assume a printer attached to the Aux EIA
-+# port. This termcap description is for the Fixed Non-Layers Window. No
-+# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
-+# (att630: added <ich1>, <blink> and <dim> from a BSD termcap file -- esr)
-+att630|AT&T 630 windowing terminal,
-+ OTbs, am, da, db, mir, msgr, npc, xon,
-+ cols#80, it#8, lines#60, lm#0,
-+ bel=^G, blink=\E[5m, cbt=\E[Z, clear=\E[H\E[J, cr=^M,
- 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, dim=\E[2m, ed=\E[J, el=\E[K,
-- el1=\E[1K, home=\E[H, ind=^J, is1=\E[<0;<1;<4l,
-- ll=\E[H\E[A, nel=^J, rev=\E[7m, rmso=\E[m, rmul=\E[m,
-- sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m,
-- sgr0=\E[m, smso=\E[2;7m, smul=\E[4m, use=dgkeys+7b,
--
--# DASHER D210 series terminals in DG mode.
--# Like D200, but adds clear to end-of-screen and needs XON/XOFF.
--d210-dg|d214-dg|Data General DASHER D210 series in DG mode,
-- xon,
-- ed=^^FF, use=d200-dg,
-+ 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, home=\E[H, ht=^I, ich=\E[%p1%d@, ich1=\E[@,
-+ il=\E[%p1%dL, il1=\E[L, ind=\ED, indn=\E[%p1%dS, is2=\E[m,
-+ kbs=^H, kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, kdl1=\E[M, kent=^M,
-+ kf10=\ENp, kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt,
-+ kf15=\ENu, kf16=\ENv, kf17=\ENw, kf18=\ENx, kf19=\ENy,
-+ kf20=\ENz, kf21=\EN{, kf22=\EN|, kf23=\EN}, kf24=\EN~,
-+ kf9=\ENo, khome=\E[H, kich1=\E[@, kil1=\E[L, mc4=\E[?4i,
-+ mc5=\E[?5i, nel=^M^J, pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8,
-+ rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmir=\E[4l, rmso=\E[m,
-+ rmul=\E[m, rs2=\Ec, sc=\E7,
-+ sgr=\E[0%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%|%p4%|%t;7%;m,
-+ sgr0=\E[m, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-+att630-24|5630-24|5630DMD-24|630MTG-24|AT&T 630 windowing terminal 24 lines,
-+ lines#24, use=att630,
-
--# DASHER D211 series terminals in ANSI mode.
--# Like the D210, but with 8-bit characters and local printer support.
-+# This is the att700 entry for 700 native emulation of the AT&T 700
-+# terminal. Comments are relative to changes from the 605V2 entry and
-+# att730 on which the entry is based. Comments show the terminfo
-+# capability name, termcap name, and description.
-+#
-+# Here is what's going onm in the init string:
-+# ESC [ 50;4| set 700 native mode (really is 605)
-+# x ESC [ 56;ps| set lines to 24: ps=0; 40: ps=1 (plus status line)
-+# ESC [ 53;0| set GenFlow to Xon/Xoff
-+# ESC [ 8 ;0| set CR on NL
-+# x ESC [ ? 3 l/h set workspace: 80 col(l); 132 col(h)
-+# ESC [ ? 4 l jump scroll
-+# ESC [ ? 5 l/h video: normal (l); reverse (h)
-+# ESC [ ?13 l Labels on
-+# ESC [ ?15 l parity check = no
-+# ESC [ 13 l monitor mode off
-+# ESC [ 20 l LF on NL (not CRLF on NL)
-+# ESC [ ? 7 h autowrap on
-+# ESC [ 12 h local echo off
-+# ESC ( B GO = ASCII
-+# ESC ) 0 G1 = Special Char & Line Drawing
-+# ESC [ ? 31 l Set 7 bit controls
-+#
-+# Note: Most terminals, especially the 600 family use Reverse Video for
-+# standout mode. DEC also uses reverse video. The VT100 uses bold in addition
-+# Assume we should stay with reverse video for 70.. However, the 605V2 exits
-+# standout mode with \E[m (all normal attributes). The 730 entry simply
-+# exits reverse video which would leave other current attributes intact. It
-+# was assumed the 730 entry to be more correct so rmso has changed. The
-+# 605V2 has no sequences to turn individual attributes off, thus its setting
-+# and the rmso/smso settings from the 730.
-+#
-+# Note: For the same reason as above in rmso I changed exit under-score mode
-+# to specifically turn off underscore, rather than return to all normal
-+# attributes
-+#
-+# Note: The following pkey_xmit is taken from the 605V2 which contained the
-+# capability as pfxl. It was changed here to pfx since pfxl
-+# will only compile successfully with Unix 4.0 tic. Also note that pfx only
-+# allows strings to be parameters and label values must be programmed as
-+# constant strings. Supposedly the pfxl of Version 4.0 allows both labels
-+# and strings to be parameters. The 605V2 pfx entry should be examined later
-+# in this regard. For reference the 730 pfxl entry is shown here for comparison
-+# 730 pfx entry:
-+# pfxl=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq\s\s\s
-+# SYS\s\s\s\s\sF%p1%:-2d\s\s%e;0;3q%;%p2%s,
-+#
-+# (for 4.0 tic)
-+# pfxl=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s,
-+#
-+# (for <4.0 tic)
-+# pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s,
- #
--# Initialization string 2 sets:
--# \E[2;1;1;1v
--# 2;1 - 8 bit operations
--# 1;1 - 8 bit (international) keyboard language
--# \E(B - default primary character set (U.S. ASCII)
--# \E)4 - default secondary character set (international)
--# ^O - primary character set
-+# From the AT&T 705 Multi-tasking terminal user's guide Page 8-8,8-9
- #
--d211|d215|Data General DASHER D211 series,
-- km,
-- is2=\E[2;1;1;1v\E(B\E)4\017, mc0=\E[i, use=dgkeys+8b,
-- use=d210,
--
--# Initialization string 2 sets:
--# \E[2;0;1;0v
--# 2;0 - 7 bit operations
--# 1;0 - 7 bit (native) keyboard language
--# \E(0 - default character set (the keyboard native language)
--# ^O - primary character set
--d211-7b|d215-7b|Data General DASHER D211 series in 7 bit mode,
-- km@,
-- is2=\E[2;0;1;0v\E(0\017, use=dgkeys+7b, use=d211,
--
--# Like the D210 series, but adds support for 8-bit characters.
-+# Port1 Interface
- #
--# Reset string 2 sets:
--# ^^N - secondary character set
--# ^^FS0> - 8 bit international character set
--# ^^O - primary character set
--# ^^FS00 - default character set (matching the native keyboard language)
-+# modular 10 pin Connector
-+# Left side Right side
-+# Pin 1 2 3 4 5 6 7 8 9 10
- #
--d211-dg|d215-dg|Data General DASHER D211 series in DG mode,
-- km,
-- rs2=\036N\036FS0>\036O\036FS00, use=d210-dg,
--
--d216-dg|d216e-dg|d216+dg|d216e+dg|d217-dg|Data General DASHER D216 series in DG mode,
-- use=d211-dg,
--
--# Enhanced DG mode with changes to be more UNIX compatible.
--d216-unix|d216e-unix|d216+|d216e+|Data General DASHER D216+ in DG-UNIX mode,
-- mc5i,
-- it#8,
-- acsc=a\177j$k"l!m#n)q+t'u&v(w%x*, blink=^^PI,
-- clear=^^PH, cub1=^^PD, cud1=^^PB, cuf1=^^PC, cuu1=^^PA,
-- el=^^PE, home=^^PF, hpa=\020%p1%c\177, ht=^I, ind=^J,
-- is1=\022\003\036P@1, is3=\036Fz0, kHOM=^^Pf, kLFT=^^Pd,
-- kPRT=^^P1, kRIT=^^Pc, kclr=^^PH, kcub1=^^PD, kcud1=^^PB,
-- kcuf1=^^PC, kcuu1=^^PA, kel=^^PE, khome=^^PF, kprt=^^P0,
-- mc0=\036F?9, mc4=^^Fa, mc5=^^F`, rmacs=\036FS00,
-- rs2=\036N\036FS0E\036O\036FS00,
-- sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;\036P%?%p4%tI%eJ%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;,
-- sgr0=\036PJ\025\035\036E\036FS00, smacs=\036FS11,
-- vpa=\020\177%p1%c, use=dgkeys+15, use=d216-dg,
--d216-unix-25|d216+25|Data General DASHER D216+ in DG-UNIX mode with 25 lines,
-- lines#25,
-- is3=\036Fz2, use=d216+,
--
--d217-unix|Data General DASHER D217 in DG-UNIX mode,
-- use=d216-unix,
--d217-unix-25|Data General DASHER D217 in DG-UNIX mode with 25 lines,
-- use=d216-unix-25,
--
--# DASHER D220 color terminal in ANSI mode.
--# Like the D470C but with fewer colors and screen editing features.
-+# Key (notch) at bottom
- #
--# Initialization string 1 sets:
--# \E[<0;<1;<4l
--# <0 - scrolling enabled
--# <1 - blink enabled
--# <4 - print characters regardless of attributes
--# \E[m - all attributes off
--# Reset string 1 sets:
--# \Ec - initial mode defaults (RIS)
-+# Pin 1 DSR
-+# 3 DCD
-+# 4 DTR
-+# 5 Sig Ground
-+# 6 RD
-+# 7 SD
-+# 8 CTS
-+# 9 RTS
-+# 10 Frame Ground
- #
--d220|Data General DASHER D220,
-- mc5i@,
-- dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec,
-- use=dg+color8, use=d470c,
-+# The manual is 189 pages and is loaded with details about the escape codes,
-+# etc..... Available from AT&T CIC 800-432-6600...
-+# ask for Document number 999-300-660..
-+#
-+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=^M,
-+ 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,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-+ enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fln=4\,4,
-+ fsl=\E8, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-+ il=\E[%p1%dL, il1=\E[L, ind=\ED, invis=\E[8m,
-+ is2=\E[50;4|\E[53;0|\E[8;0|\E[?4;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)0\E[?31l\E[0m\017,
-+ is3=\E(B\E)0, kLFT=\E[ A, kRIT=\E[ @, kbs=^H, kcbt=\E[Z,
-+ kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\E[P, kdl1=\E[M, kend=\E[24;1H, kf1=\EOc, kf10=\ENp,
-+ kf11=\ENq, kf12=\ENr, kf13=\ENs, kf14=\ENt, kf15=\EOC,
-+ kf16=\EOD, kf17=\EOE, kf18=\EOF, kf19=\EOG, kf2=\EOd,
-+ kf20=\EOH, kf21=\EOI, kf22=\EOJ, kf23=\ENO, kf24=\ENP,
-+ kf25=\ENQ, kf26=\ENR, kf27=\ENS, kf28=\ENT, kf29=\EOq,
-+ kf3=\EOe, kf30=\EOr, kf31=\EOs, kf32=\EOt, kf33=\EOu,
-+ kf34=\EOv, kf35=\EOw, kf36=\EOx, kf37=\EOy, kf38=\EOu,
-+ kf39=\EOv, kf4=\EOf, kf40=\EOl, kf41=\EOq, kf42=\EOr,
-+ kf43=\EOs, kf44=\EOp, kf45=\EOn, kf46=\EOM, kf5=\EOg,
-+ kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H,
-+ kich1=\E[@, kil1=\E[L, knp=\E[U, kpp=\E[V, ll=\E[24H,
-+ mc0=\E[i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE,
-+ pfx=\E[%p1%d;%p2%l%02dq%?%p1%{9}%<%t F%p1%1d %;%p2%s,
-+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8,
-+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O,
-+ rmir=\E[4l, rmln=\E[2p, rmso=\E[27m, rmul=\E[24m,
-+ rmxon=\E[53;3|, rs1=\Ec\E[?3;5l\E[56;0|, sc=\E7,
-+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%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,
-
--d220-7b|Data General DASHER D220 in 7 bit mode,
-- mc5i@,
-- dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec,
-- use=dg+color8, use=d470c-7b,
-+# This entry was modified 3/13/90 by JWE.
-+# fixes include additions of <enacs>, correcting <rep>, and modification
-+# of <kHOM>. (See comments below)
-+# att730 has status line of 80 chars
-+# These were commented out: <indn=\E[%p1%dS>, <rin=\E[%p1%dT>,
-+# the <kf25> and up keys are used for shifted system Fkeys
-+# NOTE: JWE 3/13/90 The 98 key keyboard translation for shift/HOME is
-+# currently the same as <khome> (unshifted HOME or \E[H). On the 102, 102+1
-+# and 122 key keyboards, the 730's translation is \E[2J. For consistency
-+# <kHOM> has been commented out. The user can uncomment <kHOM> if using the
-+# 102, 102+1, or 122 key keyboards
-+# kHOM=\E[2J,
-+# (att730: I added <rmam>/<smam> based on the init string -- esr)
-+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=^M,
-+ 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,
-+ dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-+ enacs=\E(B\E)0, flash=\E[?5h$<200>\E[?5l, fsl=\E8,
-+ home=\E[H, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
-+ ind=\ED, invis=\E[8m,
-+ is1=\E[8;0|\E[?3;4;5;13;15l\E[13;20l\E[?7h\E[12h\E(B\E)B,
-+ is2=\E[m\017, is3=\E(B\E)0, kLFT=\E[ @, kRIT=\E[ A, kbs=^H,
-+ kcbt=\E[Z, kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kf1=\EOc, kf10=\ENp, kf11=\ENq, kf12=\ENr,
-+ kf13=\ENs, kf14=\ENt, kf15=\ENu, kf16=\ENv, kf17=\ENw,
-+ kf18=\ENx, kf19=\ENy, kf2=\EOd, kf20=\ENz, kf21=\EN{,
-+ kf22=\EN|, kf23=\EN}, kf24=\EN~, kf25=\EOC, kf26=\EOD,
-+ kf27=\EOE, kf28=\EOF, kf29=\EOG, kf3=\EOe, kf30=\EOH,
-+ kf31=\EOI, kf32=\EOJ, kf33=\ENO, kf34=\ENP, kf35=\ENQ,
-+ kf36=\ENR, kf37=\ENS, kf38=\ENT, kf39=\EOU, kf4=\EOf,
-+ kf40=\EOV, kf41=\EOW, kf42=\EOX, kf43=\EOY, kf44=\EOZ,
-+ kf45=\EO[, kf46=\EO\s, kf47=\EO], kf48=\EO\^, kf5=\EOg,
-+ kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\ENo, khome=\E[H,
-+ kich1=\E[@, kil1=\E[L, kind=\E[S, kri=\E[T,
-+ mc0=\E[?19h\E[0i, mc4=\E[?4i, mc5=\E[?5i, nel=\EE,
-+ pfx=\E[%?%p1%{25}%<%t%p1%e%p1%{24}%-%;%d;%p2%l%02d%?%p1%{25}%<%tq SYS F%p1%:-2d %e;0;3q%;%p2%s,
-+ pfxl=\E[%p1%d;%p2%l%02d;0;0q%p3%:-16.16s%p2%s,
-+ pln=\E[%p1%d;0;0;0q%p2%:-16.16s, rc=\E8,
-+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM, rmacs=^O,
-+ rmam=\E[?7l, rmir=\E[4l, rmln=\E[?13h, rmso=\E[27m,
-+ rmul=\E[24m, rmxon=\E[?21l, rs2=\Ec\E[?3l, sc=\E7,
-+ sgr=\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p4%t;5%;%?%p3%p1%|%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[?13l, smso=\E[7m, smul=\E[4m, smxon=\E[?21h,
-+ swidm=\E#6, tsl=\E7\E[;%i%p1%dx,
-+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,
-+ lines#24, use=att730,
-+att730r|730MTGr|AT&T 730 rev video windowing terminal Version,
-+ flash=\E[?5l$<200>\E[?5h,
-+ is1=\E[8;0|\E[?3;4;13;15l\E[?5h\E[13;20l\E[?7h\E[12h\E(B\E)B,
-+ use=att730,
-+att730r-41|730MTG-41r|AT&T 730r-41 rev video windowing terminal Version,
-+ lines#41, use=att730r,
-+att730r-24|730MTGr-24|AT&T 730r-24 rev video windowing terminal Version,
-+ lines#24, use=att730r,
-
--# Initialization string 3 sets:
--# - default cursor (solid rectangle)
--# Reset string 2 sets:
--# ^^N - secondary character set
--# ^^FS0> - 8 bit international character set
--# ^^O - primary character set
--# ^^FS00 - default character set (matching the native keyboard language)
-+# The following represents the screen layout along with the associated
-+# bezel buttons for the 5430/pt505 terminal. The "kf" designations do
-+# not appear on the screen but are shown to reference the bezel buttons.
-+# The "CMD", "MAIL", and "REDRAW" buttons are shown in their approximate
-+# position relative to the screen.
- #
--d220-dg|Data General DASHER D220 color terminal in DG mode,
-- mc5i@,
-- dl1@, home@, il1@, is2@, is3=\036FQ2, ll@, mc4@, mc5@, rs1@,
-- rs2=\036N\036FS0>\036O\036FS00, use=dgmode+color8,
-- use=d470c-dg,
--
--# DASHER D230C color terminal in ANSI mode.
--# Like the D220 but with minor ANSI compatibility improvements.
- #
--d230c|d230|Data General DASHER D230C,
-- blink=\E[5;50m, bold=\E[4;7;50m, dim=\E[2;50m, nel=^M^J,
-- 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%;,
-- sgr0=\E[50m\E)4\017, smkx=\E[2;0v, smso=\E[2;7;50m,
-- smul=\E[4;50m, use=dgkeys+7b, use=d220,
--
--d230c-dg|d230-dg|Data General DASHER D230C in DG mode,
-- use=d220-dg,
--
--# DASHER D400/D450 series terminals.
--# These add intelligent features like insert/delete to the D200 series.
- #
--# Initialization string 2 sets:
--# ^^FQ2 - default cursor (solid rectangle)
--# ^^FW - character protection disabled
--# ^^FJ - normal (80 column) mode
--# ^^F\^ - horizontal scrolling enabled (for alignment)
--# ^^FX004? - margins at columns 0 and 79
--# ^^F] - horizontal scrolling disabled
--# ^^O - primary character set
--# ^^FS00 - default character set (the keyboard native language)
--# - (should reset scrolling regions, but that glitches the screen)
--# Reset string 1 sets:
--# ^^FA - all terminal defaults except scroll rate
--# Reset string 2 sets:
--# ^^F] - horizontal scrolling disabled
--# ^^FT0 - jump scrolling
-+# +----------------------------------------------------------------+
-+# | |
-+# XXXX | kf0 kf24 | XXXX
-+# | |
-+# | |
-+# XXXX | kf1 kf23 | XXXX
-+# | |
-+# | |
-+# XXXX | kf2 kf22 | XXXX
-+# | |
-+# | |
-+# XXXX | kf3 kf21 | XXXX
-+# | |
-+# | |
-+# XXXX | kf4 kf20 | XXXX
-+# | |
-+# | |
-+# XXXX | kf5 kf19 | XXXX
-+# | |
-+# | |
-+# XXXX | kf6 kf18 | XXXX
-+# | |
-+# | |
-+# XXXX | | XXXX
-+# | |
-+# | |
-+# +----------------------------------------------------------------+
-+#
-+# XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
- #
--d400|d400-dg|d450|d450-dg|Data General DASHER D400/D450 series,
-- mc5i,
-- acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\036FQ0,
-- cnorm=\036FQ2, dch1=^^K, dl1=^^FI,
-- enacs=\036N\036FS11\036O, home=^^FG, hpa=\020%p1%c\177,
-- ich1=^^J, il1=^^FH,
-- is2=\036FQ2\036FW\036FJ\036F\^\036FX004?\036F]\036O\036FS00,
-- ll=\036FG\027, mc4=^^Fa, mc5=^^F`, ri=^^I, rmacs=^^O,
-- rs1=^^FA, rs2=\036F]\036FT0,
-- sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036%?%p9%tN%eO%;,
-- sgr0=\017\025\035\036E\036O, smacs=^^N,
-- vpa=\020\177%p1%c, use=d210-dg,
--
--# DASHER D410/D460 series terminals in ANSI mode.
--# These add a large number of intelligent terminal features.
-+# Note: XXXX represents the screen buttons
-+# CMD REDRAW
- #
--# Initialization string 1 sets:
--# \E[<0;<1;<2;<4l
--# <0 - scrolling enabled
--# <1 - blink enabled
--# <2 - horizontal scrolling enabled (for alignment)
--# <4 - print characters regardless of attributes
--# \E[5;0v - normal (80 column) mode
--# \E[1;1;80w - margins at columns 1 and 80
--# \E[1;6;<2h
--# 1 - print all characters even if protected
--# 6 - character protection disabled
--# <2 - horizontal scrolling disabled
--# - (should reset scrolling regions, but that glitches the screen)
-+# MAIL
- #
--# Initialization string 2 sets:
--# \E[3;2;2;1;1;1v
--# 3;2 - default cursor (solid rectangle)
--# 2;1 - 8 bit operations
--# 1;1 - international keyboard language
--# \E(B - default primary character set (U.S. ASCII)
--# \E)4 - default secondary character set (international)
--# ^O - primary character set
-+# version 1 note:
-+# The character string sent by key 'kf26' may be user programmable
-+# to send either \E[16s, or \E[26s.
-+# The character string sent by key 'krfr' may be user programmable
-+# to send either \E[17s, or \E[27s.
- #
--# Reset string 1 sets:
--# \Ec - initial mode defaults (RIS)
--# \E[<2h - horizontal scrolling disabled
-+# Depression of the "CMD" key sends \E! (kcmd)
-+# Depression of the "MAIL" key sends \E[26s (kf26)
-+# "REDRAW" same as "REFRESH" (krfr)
- #
--# Reset string 2 sets:
--# \E[4;0;2;1;1;1v
--# 4;0 - jump scrolling
--# 2;1 - 8 bit operations
--# 1;1 - 8 bit (international) keyboard language
--# \E(B - default primary character set (U.S. ASCII)
--# \E)4 - default secondary character set (international)
-+# "kf" functions adds carriage return to output string if terminal is in
-+# 'new line' mode.
- #
--d410|d411|d460|d461|Data General DASHER D410/D460 series,
-- mc5i,
-- acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\E[3;0v,
-- cnorm=\E[3;2v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-- dl1=\E[M, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L,
-- is1=\E[<0;<1;<2;<4l\E[5;0v\E[1;1;80w\E[1;6;<2h,
-- is2=\E[3;2;2;1;1;1v\E(B\E)4\017, mc4=\E[4i, mc5=\E[5i,
-- ri=\EM, rmacs=\E)4\017, rs1=\Ec\E[<2h,
-- rs2=\E[4;0;2;1;1;1v\E(B\E)4,
-- sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m\E)%?%p9%t6\016%e4\017%;,
-- sgr0=\E[m\E)4\017, smacs=\E)6\016, use=d211,
--
--# Initialization string 2 sets:
--# \E[3;2;2;0;1;0v
--# 3;2 - default cursor (solid rectangle)
--# 2;0 - 7 bit operations
--# 1;0 - 7 bit (native) keyboard language
--# \E(0 - default character set (the keyboard native language)
--# ^O - primary character set
-+# The following are functions not covered in the table above:
- #
--# Reset string 2 sets:
--# \E[4;0;2;0;1;0v
--# 4;0 - jump scrolling
--# 2;0 - 7 bit operations
--# 1;0 - 7 bit (native) keyboard language
--# \E(0 - default character set (the keyboard native language)
-+# Set keyboard character (SKC): \EPn1;Pn2w
-+# Pn1= 0 Back Space key
-+# Pn1= 1 Break key
-+# Pn2= Program char (hex)
- #
--d410-7b|d411-7b|d460-7b|d461-7b|Data General DASHER D410/D460 series in 7 bit mode,
-- km@,
-- enacs=\E)6, is2=\E[3;2;2;0;1;0v\E(0\017, rmacs=^O,
-- rs2=\E[4;0;2;0;1;0v\E(0,
-- sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, use=dgkeys+7b, use=d410,
--
--d410-dg|d460-dg|d411-dg|d461-dg|Data General DASHER D410/D460 series in DG mode,
-- km,
-- enacs@, rmacs=\036FS00,
-- sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;,
-- sgr0=\017\025\035\036E\036FS00, smacs=\036FS11,
-- use=d400-dg,
--
--# DASHER D410/D460 series terminals in wide (126 columns) ANSI mode.
-+# Screen Definition (SDF): \E[Pn1;Pn2;Pn3;Pn4;Pn5t
-+# Pn1= Window number (1-39)
-+# Pn2-Pn5= Y;X;Y;X coordinates
- #
--# Initialization string 1 sets:
--# \E[<0;<1;<2;<4l
--# <0 - scrolling enabled
--# <1 - blink enabled
--# <2 - horizontal scrolling enabled (for alignment)
--# <4 - print characters regardless of attributes
--# \E[5;1v - compressed (135 column) mode
--# \E[1;1;126 - margins at columns 1 and 126
--# \E[1;6;<2h
--# 1 - print all characters even if protected
--# 6 - character protection disabled
--# <2 - horizontal scrolling disabled
--# - (should reset scrolling regions, but that glitches the screen)
-+# Screen Selection (SSL): \E[Pnu
-+# Pn= Window number
- #
--# Reset string 1 sets:
--# \Ec - initial mode defaults (RIS)
--# \E[5;1v - compressed (135 column) mode
--# \E[1;1;126w - margins at columns 1 and 126
--# \E[<2h - horizontal scrolling disabled
-+# Set Terminal Modes (SM): \E[Pnh
-+# Pn= 3 Graphics mode
-+# Pn= > Cursor blink
-+# Pn= < Enter new line mode
-+# Pn= = Enter reverse insert/replace mode
-+# Pn= ? Enter no scroll mode
- #
--d410-w|d411-w|d460-w|d461-w|Data General DASHER D410/D460 series in wide mode,
-- cols#126,
-- is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h,
-- rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410,
--
--d410-7b-w|d411-7b-w|d460-7b-w|d461-7b-w|Data General DASHER D410/D460 series in wide 7 bit mode,
-- cols#126,
-- is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h,
-- rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410-7b,
--
--d412-dg|d462-dg|d462e-dg|d412+dg|d462+dg|d413-dg|d463-dg|Data General DASHER D412/D462 series in DG mode,
-- use=d410-dg,
--
--# These add intelligent features like scrolling regions.
--d412-unix|d462-unix|d412+|d462+|Data General DASHER D412+/D462+ series in Unix mode,
-- civis=\036FQ0, clear=^^FE, cnorm=\036FQ5,
-- cup=\036FP%p2%2.2X%p1%2.2X, dch1=^^K, dl1=^^FI,
-- home=^^FG, hpa=\036FP%p1%2.2XFF, ich1=^^J, il1=^^FH,
-- is2=\036FQ5\036FW\036FJ\036F\^\036FX004F\036O\036FS00,
-- ll=\036FG\036PA, mc0=^A, rc=\036F}11, ri=^^I,
-- rs1=\036FA\036FT0, rs2=\036P@1, sc=\036F}10,
-- vpa=\036FPFF%p1%2.2X,
-- wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X,
-- use=d216+,
--d412-unix-w|d462-unix-w|d412+w|d462+w|Data General DASHER D412+/D462+ series in wide Unix mode,
-- cols#132,
-- is2=\036FQ5\036FW\036FK\036F\^\036FX0083\036O\036FS00,
-- rs2=\036P@1\036FK\036FX0083,
-- wind=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X,
-- use=d412-unix,
--d412-unix-25|d462-unix-25|d412+25|d462+25|Data General DASHER D412+/D462+ series in Unix mode with 25 lines,
-- lines#25,
-- is3=\036Fz2,
-- wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X,
-- use=d462+,
--d412-unix-s|d462-unix-s|d412+s|d462+s|Data General DASHER D412+/D462+ in Unix mode with status line,
-- eslok, hs,
-- clear=\036FG\036PH, fsl=\036F}01\022,
-- is3=\036Fz2\036F}00\036FB180000\036F}01, ll@,
-- tsl=\036F}00\036FP%p1%2.2X18\036PG,
-- wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t%{23}%p2%-%2.2X0%;000\036FX%p3%2.2X%p4%2.2X,
-- use=d462+,
--
--# Relative cursor motions are confined to the current window,
--# which is not what the scrolling region specification expects.
--# Thus, relative vertical cursor positioning must be deleted.
--d412-unix-sr|d462-unix-sr|d412+sr|d462+sr|Data General DASHER D412+/D462+ in Unix mode with scrolling region,
-- csr=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;,
-- cud1@, cuu1@, ll@, use=d462+,
--
--d413-unix|d463-unix|Data General DASHER D413/D463 series in DG-UNIX mode,
-- use=d412-unix,
--d413-unix-w|d463-unix-w|Data General DASHER D413/D463 series in wide DG-UNIX mode,
-- use=d412-unix-w,
--d413-unix-25|d463-unix-25|Data General DASHER D413/D463 series in DG-UNIX mode with 25 lines,
-- use=d412-unix-25,
--d413-unix-s|d463-unix-s|Data General DASHER D413/D463 in DG-UNIX mode with status line,
-- use=d412-unix-s,
--d413-unix-sr|d463-unix-sr|Data General DASHER D413/D463 in DG-UNIX mode with scrolling region,
-- use=d412-unix-sr,
--
--d414-unix|d464-unix|Data General D414/D464 in DG-UNIX mode,
-- use=d413-unix,
--d414-unix-w|d464-unix-w|Data General D414/D464 in wide DG-UNIX mode,
-- use=d413-unix-w,
--d414-unix-25|d464-unix-25|Data General D414/D464 in DG-UNIX mode with 25 lines,
-- use=d413-unix-25,
--d414-unix-s|d464-unix-s|Data General D414/D464 in DG-UNIX mode with status line,
-- use=d413-unix-s,
--d414-unix-sr|d464-unix-sr|Data General D414/D464 in DG-UNIX mode with scrolling region,
-- use=d413-unix-sr,
--
--d430c-dg|d430-dg|Data General D430C in DG mode,
-- use=d413-dg, use=dg+fixed,
--d430c-dg-ccc|d430-dg-ccc|Data General D430C in DG mode with configurable colors,
-- use=d413-dg, use=dg+ccc,
--
--d430c-unix|d430-unix|Data General D430C in DG-UNIX mode,
-- use=d413-unix, use=dgunix+fixed,
--d430c-unix-w|d430-unix-w|Data General D430C in wide DG-UNIX mode,
-- use=d413-unix-w, use=dgunix+fixed,
--d430c-unix-25|d430-unix-25|Data General D430C in DG-UNIX mode with 25 lines,
-- use=d413-unix-25, use=dgunix+fixed,
--d430c-unix-s|d430-unix-s|Data General D430C in DG-UNIX mode with status line,
-- use=d413-unix-s, use=dgunix+fixed,
--d430c-unix-sr|d430-unix-sr|Data General D430C in DG-UNIX mode with scrolling region,
-- use=d413-unix-sr, use=dgunix+fixed,
--d430c-unix-ccc|d430-unix-ccc|Data General D430C in DG-UNIX mode with configurable colors,
-- use=d413-unix, use=dgunix+ccc,
--d430c-unix-w-ccc|d430-unix-w-ccc|Data General D430C in wide DG-UNIX mode with configurable colors,
-- use=d413-unix-w, use=dgunix+ccc,
--d430c-unix-25-ccc|d430-unix-25-ccc|Data General D430C in DG-UNIX mode with 25 lines and configurable colors,
-- use=d413-unix-25, use=dgunix+ccc,
--d430c-unix-s-ccc|d430-unix-s-ccc|Data General D430C in DG-UNIX mode with status line and configurable colors,
-- use=d413-unix-s, use=dgunix+ccc,
--d430c-unix-sr-ccc|d430-unix-sr-ccc|Data General D430C in DG-UNIX mode with scrolling region and configurable colors,
-- use=d413-unix-sr, use=dgunix+ccc,
--
--# DASHER D470C color terminal in ANSI mode.
--# Like the D460 but with 16 colors and without a compressed mode.
-+# Reset Terminal Mode (RM): \E[Pnl
-+# Pn= 3 Exit graphics mode
-+# Pn= > Exit cursor blink
-+# Pn= < Exit new line mode
-+# Pn= = Exit reverse insert/replace mode
-+# Pn= ? Exit no scroll mode
- #
--# Initialization string 1 sets:
--# \E[<0;<1;<2;<4l
--# <0 - scrolling enabled
--# <1 - blink enabled
--# <2 - horizontal scrolling enabled (for alignment)
--# <4 - print characters regardless of attributes
--# \E[1;1;80w - margins at columns 1 and 80
--# \E[1;6;<2h
--# 1 - print all characters even if protected
--# 6 - character protection disabled
--# <2 - horizontal scrolling disabled
--# - (should reset scrolling regions, but that glitches the screen)
-+# Screen Status Report (SSR): \E[Pnp
-+# Pn= 0 Request current window number
-+# Pn= 1 Request current window dimensions
- #
--d470c|d470|Data General DASHER D470C,
-- is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h,
-- 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}%;%PDm\E)%?%p9%t6\016%e4\017%;,
-- use=dg+color, use=d460,
--
--d470c-7b|d470-7b|Data General DASHER D470C in 7 bit mode,
-- is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h,
-- 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}%;%PDm%?%p9%t\016%e\017%;,
-- use=dg+color, use=d460-7b,
--
--# Initialization string 2 sets:
--# ^^FQ2 - default cursor (solid rectangle)
--# ^^FW - character protection disabled
--# ^^F\^ - horizontal scrolling enabled (for alignment)
--# ^^FX004? - margins at columns 0 and 79
--# ^^F] - horizontal scrolling disabled
--# ^^O - primary character set
--# ^^FS00 - default character set (the keyboard native language)
--# - (should reset scrolling regions, but that glitches the screen)
-+# Device Status Report (DSR): \E[6n Request cursor position
- #
--d470c-dg|d470-dg|Data General DASHER D470C in DG mode,
-- is2=\036FQ2\036FW\036F\^\036FX004?\036F]\036O\036FS00,
-- use=dgmode+color, use=d460-dg,
--
--# DASHER D555 terminal in ANSI mode.
--# Like a D411, but has an integrated phone.
--d555|Data General DASHER D555,
-- use=d411,
--d555-7b|Data General DASHER D555 in 7-bit mode,
-- use=d411-7b,
--d555-w|Data General DASHER D555 in wide mode,
-- use=d411-w,
--d555-7b-w|Data General DASHER D555 in wide 7-bit mode,
-- use=d411-7b-w,
--d555-dg|Data General DASHER D555 series in DG mode,
-- use=d411-dg,
--
--# DASHER D577 terminal in ANSI mode.
--# Like a D411, but acts as a keyboard for serial printers ("KSR" modes).
--d577|Data General DASHER D577,
-- use=d411,
--d577-7b|Data General DASHER D577 in 7-bit mode,
-- use=d411-7b,
--d577-w|Data General DASHER D577 in wide mode,
-- use=d411-w,
--d577-7b-w|Data General DASHER D577 in wide 7-bit mode,
-- use=d411-7b-w,
--
--d577-dg|d578-dg|Data General DASHER D577/D578 series in DG mode,
-- use=d411-dg,
--
--# DASHER D578 terminal.
--# Like a D577, but without compressed mode; like a D470C in this respect.
-+# Call Status Report (CSR): \E[Pnv
-+# Pn= 0 Call failed
-+# Pn= 1 Call successful
- #
--# Initialization string 1 sets:
--# \E[<0;<1;<2;<4l
--# <0 - scrolling enabled
--# <1 - blink enabled
--# <2 - horizontal scrolling enabled (for alignment)
--# <4 - print characters regardless of attributes
--# \E[1;1;80w - margins at columns 1 and 80
--# \E[1;6;<2h
--# 1 - print all characters even if protected
--# 6 - character protection disabled
--# <2 - horizontal scrolling disabled
--# - (should reset scrolling regions, but that glitches the screen)
-+# Transparent Button String (TBS): \E[Pn1;Pn2;Pn3;{string
-+# Pn1= Button number to be loaded
-+# Pn2= Character count of "string"
-+# Pn3= Key mode being loaded:
-+# 0= Unshifted
-+# 1= Shifted
-+# 2= Control
-+# String= Text string (15 chars max)
- #
--d578|Data General DASHER D578,
-- is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577,
--d578-7b|Data General DASHER D578 in 7-bit mode,
-- is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577-7b,
--
--#### Datamedia (dm)
-+# Screen Number Report (SNR): \E[Pnp
-+# Pn= Screen number
- #
--# Datamedia was headquartered in Nashua, New Hampshire until it went
--# out of business in 1993, but the ID plates on the terminals referred
--# to the factory in Pennsauken, NJ. The factory was sold to a PCB board
--# manufacturer which threw out all information about the terminals.
-+# Screen Dimension Report (SDR): \E[Pn1;Pn2r
-+# Pn1= Number of rows available in window
-+# Pn2= Number of columns available in window
- #
--
--cs10|colorscan|Datamedia Color Scan 10,
-- msgr,
-- cols#80, lines#24,
-- bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-- cup=\E[%i%p1%02d;%p2%02dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-- ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmso=\E[m, rmul=\E[m,
-- sgr0=\E[m, smso=\E[7m, smul=\E[4m,
--cs10-w|Datamedia Color Scan 10 with 132 columns,
-- cols#132,
-- cup=\E[%i%p1%02d;%p2%03dH, use=cs10,
--
--# (dm1520: removed obsolete ":ma=^\ ^_^P^YH:" -- esr)
--dm1520|dm1521|datamedia 1520,
-- OTbs, am, xenl,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\,
-- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-- home=^Y, ht=^I, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_,
-- 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,
-- OTbs, OTnc,
-- cols#80, lines#24,
-- bel=^G, clear=^^^^\177, cub1=^H, cud1=^J, cuf1=^\,
-- cup=\014%p2%{96}%^%c%p1%{96}%^%c, cuu1=^Z,
-- dch1=\020\010\030\035$<10*>,
-- dl1=\020\032\030\035$<10*>, el=^W, home=^B,
-- ich1=\020\034\030\035$<10*>,
-- il1=\020\n\030\035\030\035$<15>, ind=^J, pad=\377,
-- rmdc=^X^], rmir=\377\377\030\035$<10>, rmso=^X^],
-- smdc=^P, smir=^P, smso=^N,
--# dmchat is like DM2500, but DOES need "all that padding" (jcm 1/31/82)
--# also, has a meta-key.
--# From: <goldberger@su-csli.arpa>
--# (dmchat: ":MT:" changed to ":km:" -- esr)
--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,
-- OTbs, km,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=\EM$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA,
-- dch1=\010$<6>, dl1=\EP\EA\EQ$<130>, ed=\EJ$<2>, el=\EK,
-- home=\EH, ht=^I, il1=\EP\n\EQ$<130>, ind=^J, ip=$<6>,
-- is2=\EQ\EU\EV, rmdc=\EQ, rmir=\EQ, rmso=\EO0, smdc=\EP,
-- smir=\EP, smso=\EO1,
--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,
-- kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, kf9=\Ex\r,
-- khome=\EH, pad=\177, rmdc@, rmir=\EP, rmso@, smdc@, smso@,
-- use=dm3025,
--# Datamedia DT80 soft switches:
--# 1 0=Jump 1=Smooth
--# Autorepeat 0=off 1=on
--# Screen 0=Dark 1=light
--# Cursor 0=u/l 1=block
-+# Cursor Position Report (CPR): \E[Pn1;Pn2R
-+# Pn1= "Y" Position of cursor
-+# Pn2= "X" Position of cursor
- #
--# 2 Margin Bell 0=off 1=on
--# Keyclick 0=off 1=on
--# Ansi/VT52 0=VT52 1=Ansi
--# Xon/Xoff 0=Off 1=On
-+# Request Answer Back (RAB): \E[c
- #
--# 3 Shift3 0=Hash 1=UK Pound
--# Wrap 0=Off 1=On
--# Newline 0=Off 1=On
--# Interlace 0=Off 1=On
-+# Answer Back Response (ABR): \E[?;*;30;VSV
-+# *= 0 No printer available
-+# *= 2 Printer available
-+# V= Software version number
-+# SV= Software sub version number
-+# (printer-available field not documented in v1)
- #
--# 4 Parity 0=Odd 1=Even
--# Parity 0=Off 1=On
--# Bits/Char 0=7 1=8
--# Power 0=60Hz 1=50Hz
-+# Screen Alignment Aid: \En
- #
--# 5 Line Interface 0=EIA 1=Loop
--# Aux Interface 0=EIA 1=Loop
--# Local Copy 0=Off 1=On
--# Spare
-+# Bell (lower pitch): \E[x
- #
--# 6 Aux Parity 0=Odd 1=Even
--# Aux Parity 0=Off 1=On
--# 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,
-- clear=\E[2J\E[H, cud1=^J, 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,
-- rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-- use=vt100,
--# except in 132 column mode, where it needs a little padding.
--# 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,
-- cols#132,
-- clear=\E[H\E[2J$<50/>, cud1=^J,
-- cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<5/>,
-- ed=\E[0J$<20/>, el=\E[0K$<20/>, use=dm80,
--# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995
--dt80-sas|Datamedia DT803/DTX for SAS usage,
-- am, bw,
-- cols#80, lines#24,
-- acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~,
-- bel=^G, clear=^L, cr=^M,
-- csr=\E=%p1%{32}%+%c%{32}%c\E#1\E=%p2%{32}%+%c%{32}%c\E#2,
-- cub1=^H, cud1=\EB, cuf1=^\,
-- cup=\E=%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, dl1=\EM, ed=^K,
-- el=^], ff=^L, home=^Y, ht=^I, hts=\E'1, il1=\EL, ind=\EB,
-- is2=\E)0\E<\EP\E'0\E$2, kclr=^L, kcub1=^H, kcud1=^J,
-- kcuf1=^\, kcuu1=^_, ked=^K, kel=^], khome=^Y, mc4=^O, mc5=^N,
-- rev=\E$2\004, ri=\EI, rmacs=\EG, rmso=^X, sgr0=^X, smacs=\EF,
-- smso=\E$2\004, tbc=\E'0,
--
--# Datamedia Excel 62, 64 from Gould/SEL UTX/32 via BRL
--# These aren't end-all Excel termcaps; but do insert/delete char/line
--# and name some of the extra function keys. (Mike Feldman ccvaxa!feldman)
--# The naming convention has been bent somewhat, with the use of E? (where
--# E is for 'Excel') as # a name. This was done to distinguish the entries
--# 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,
-- dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, 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,
-- dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, 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,
-- dch1=\E[P, flash=\E[?5l\E[?5h, kbs=^H, kcub1=^H, kcud1=^J,
-- kf5=\EOu, kf6=\EOv, kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l,
-- smir=\E[4h, use=dt80,
--
--#### Falco
-+# Dial Phone Number: \EPdstring\
-+# string= Phone number to be dialed
- #
--# Falco Data Products
--# 440 Potrero Avenue
--# Sunnyvale, CA 940864-196
--# Vox: (800)-325-2648
--# Fax: (408)-745-7860
--# Net: techsup@charm.sys.falco.com
-+# Set Phone Labels: \EPpstring\
-+# string= Label for phone buttons
- #
--# Current Falco models as of 1995 are generally ANSI-compatible and support
--# emulations of DEC VT-series, Wyse, and Televideo types.
-+# Set Clock: \EPchour;minute;second\
-+#
-+# Position Clock: \EPsY;X\
-+# Y= "Y" coordinate
-+# X= "X" coordinate
-+#
-+# Delete Clock: \Epr\
-+#
-+# Programming The Function Buttons: \EPfPn;string\
-+# Pn= Button number (00-06, 18-24)
-+# (kf00-kf06, kf18-kf24)
-+# string= Text to sent on button depression
-+#
-+# The following in version 2 only:
-+#
-+# Request For Local Directory Data: \EPp12;\
-+#
-+# Local Directory Data to host: \EPp11;LOCAL...DIRECTORY...DATA\
-+#
-+# Request for Local Directory Data in print format: \EPp13;\
-+#
-+# Enable 'Prt on Line' mode: \022 (DC2)
-+#
-+# Disable 'Prt on Line' mode: \024 (DC4)
- #
-
--# 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,
-- OTbs, am,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\EY, el=\ET\EG0\010, home=^^, ht=^I, il1=\EE,
-- ind=^J, is2=\Eu\E3, kcub1=^H, kcud1=^J, 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,
-- OTbs, am, da, db, mir, msgr, ul,
-+# 05-Aug-86:
-+# The following Terminfo entry describes functions which are supported by
-+# the AT&T 5430/pt505 terminal software version 2 and later.
-+att505|pt505|att5430|gs5430|AT&T Personal Terminal 505 or 5430 GETSET terminal,
-+ am, xon,
- cols#80, it#8, lines#24,
-- bel=^G, cbt=\EI, clear=\E*, cr=^M, cub1=^H, cud1=\E[B,
-- cuf1=\E[C, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E[A,
-- dch1=\EW, dl1=\ER, ed=\EY, el=\ET\EG0\010\Eg0, ht=^I,
-- il1=\EE, ind=^J, is2=\EZ\E3\E_c, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, rmcup=\E_b, rmir=\Er,
-- 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,
-- 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>,
-- clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-- cuu1=\E[A$<2>, dch1=\E~W, dl1=\E~R, ed=\E[J$<50>,
-- el=\E[K$<3>, el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H,
-- ht=^I, hts=\EH, ich1=\E~Q, il1=\E~E, ind=^J, is1=\E~)\E~ea,
-- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l,
-- rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>,
-- 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,
-- rmcup=\E~_b, smcup=\E~_d\E[2J, use=ts100,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[2J\E[H,
-+ cnorm=\E[>l, cr=^M, cub=\E[%p1%dD, cub1=\E[D,
-+ cud=\E[%p1%dB, cud1=\E[B, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-+ cvvis=\E[>h, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-+ dl1=\E[M, ed=\E[0J, el=\E[0K, el1=\E[2K, home=\E[H, ht=^I,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ is1=\EPr\\E[0u\E[2J\E[0;0H\E[m\E[3l\E[<l\E[4l\E[>l\E[=l\E[?l,
-+ kbs=^H, kcmd=\E!, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kf0=\E[00s, kf1=\E[01s, kf18=\E[18s,
-+ kf19=\E[19s, kf2=\E[02s, kf20=\E[20s, kf21=\E[21s,
-+ kf22=\E[22s, kf23=\E[23s, kf24=\E[24s, kf26=\E[26s,
-+ kf3=\E[03s, kf4=\E[04s, kf5=\E[05s, kf6=\E[06s,
-+ krfr=\E[27s, mc4=\E[4i, mc5=\E[5i, rc=\E8, rev=\E[7m,
-+ rmacs=\E[10m, rmam=\E[11;1j, rmir=\E[4l, rmso=\E[m,
-+ rmul=\E[m, rs1=\Ec, sc=\E7, sgr0=\E[m, smacs=\E[11m,
-+ smam=\E[11;0j, smir=\E[4h, smso=\E[1m, smul=\E[4m,
-
--#### Florida Computer Graphics
-+# The following Terminfo entry describes functions which are supported by
-+# the AT&T 5430/pt505 terminal software version 1.
-+att505-24|pt505-24|gs5430-24|AT&T PT505 or 5430 GETSET version 1 24 lines,
-+ lines#24,
-+ mc4@, mc5@, rc@, rmam@, sc@, smam@, use=att505,
-+tt505-22|pt505-22|gs5430-22|AT&T PT505 or 5430 GETSET version 1 22 lines,
-+ lines#22, use=att505,
- #
--
--# Florida Computer Graphics Beacon System, using terminal emulator program
--# "host.com", as provided by FCG. This description is for an early release
--# of the "host" program. Known bug: <ed> clears the whole screen, so it's
--# commented out.
--
--# From: David Bryant <cbosg!djb> 1/7/83
--beacon|FCG Beacon System,
-- am, da, db,
-- cols#80, lines#32,
-- bel=\ESTART\r\E37\r\EEND\r$<1>,
-- blink=\ESTART\r\E61\,1\r\EEND\r, clear=\EZ$<10>, cr=^M,
-- cub1=^H, cud1=^J, cuf1=\EV,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<20>, cuu1=\EU,
-- dch1=\EW, dl1=\ER, el=\ET, home=\EH$<10>, ich1=\EQ, il1=\EE,
-- ind=^J, rev=\ESTART\r\E59\,1\r\EEND\r, rmcup=,
-- rmso=\ESTART\r\E70\,0\r\EEND\r$<20>,
-- rmul=\ESTART\r\E60\,0\r\EEND\r,
-- sgr0=\ESTART\r\E78\r\E70\,0\r\EEND\r$<20>,
-- smcup=\ESTART\r\E2\,0\r\E12\r\EEND\r$<10>,
-- smso=\ESTART\r\E70\,6\r\EEND\r$<20>,
-- smul=\ESTART\r\E60\,1\r\EEND\r,
--
--#### Fluke
-+#### ------------------ TERMINFO FILE CAN BE SPLIT HERE ---------------------
-+# This cut mark helps make life less painful for people running ncurses tic
-+# on machines with relatively little RAM. The file can be broken in half here
-+# cleanly and compiled in sections -- no `use' references cross this cut
-+# going forward.
- #
-
--# The f1720a differences from ANSI: no auto margin, destructive
--# tabs, # of lines, funny highlighting and underlining
--f1720|f1720a|fluke 1720A,
-- xt,
-- cols#80, lines#16, xmc#1,
-- bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B,
-- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J,
-- el=\E[K, ind=\ED, is2=\E[H\E[2J, kcub1=^_, kcud1=^],
-- kcuf1=^^, kcuu1=^\, ri=\EM, rmso=\E[m, rmul=\E[m, sgr0=\E[m,
-- smso=\E[7m, smul=\E[4m,
--
--#### Liberty Electronics (Freedom)
-+#### Ampex (Dialogue)
-+#
-+# Yes, these are the same people who are better-known for making audio- and
-+# videotape. I'm told they are located in Redwood City, CA.
- #
--# Liberty Electronics
--# 48089 Fremont Blvd
--# Fremont CA 94538
--# Vox: (510)-623-6000
--# Fax: (510)-623-7021
-
--# From: <faletti@berkeley.edu>
--# (f100: added empty <acsc> to suppress a tic warning;
--# made this relative to adm+sgr -- note that <invis> isn't
--# known to work for f100 but does on the f110. --esr)
--f100|freedom|freedom100|freedom model 100,
-- OTbs, am, bw, hs, mir, msgr, xon,
-- cols#80, lines#24,
-- acsc=, bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J,
-+# 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,
-+ OTbs, am, bw, ul,
-+ cols#80, it#8, lines#24,
-+ bel=^G, cbt=\EI, clear=\E*$<75>, cr=^M, cub1=^H, cud1=^J,
- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- dch1=\EW, dl1=\ER$<11.5*>, dsl=\Eg\Ef\r, ed=\EY, el=\ET,
-- flash=\Eb$<200>\Ed, fsl=^M, home=^^, hpa=\E]%p1%{32}%+%c,
-- ht=^I, hts=\E1, il1=\EE$<8.5*>, ind=^J, ip=$<6>,
-- is2=\Eg\Ef\r\Ed, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^V,
-- kcuf1=^L, kcuu1=^K, kf1=^A@\r, kf10=^AI\r, kf2=^AA\r,
-- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-- kf8=^AG\r, kf9=^AH\r, khome=^^, ri=\Ej, rmacs=\E$, rmir=\Er,
-- smacs=\E%%, smir=\Eq, tbc=\E3, tsl=\Eg\Ef,
-- vpa=\E[%p1%{32}%+%c, use=adm+sgr,
--f100-rv|freedom-rv|freedom 100 in reverse video,
-- flash=\Ed$<200>\Eb, is2=\Eg\Ef\r\Eb, use=f100,
--# The f110 and f200 have problems with vi(1). They use the ^V
--# code for the down cursor key. When kcud1 is defined in terminfo
--# as ^V, the Control Character Quoting capability (^V in insert mode)
--# is lost! It cannot be remapped in vi because it is necessary to enter
--# a ^V to to quote the ^V that is being remapped!!!
--#
--# f110/f200 users will have to decide whether
--# to lose the down cursor key or the quoting capability. We will opt
--# initially for leaving the quoting capability out, since use of VI
--# is not generally applicable to most interactive applications
--# (f110: added <ht>, <khome> & <kcbt> from f100 -- esr)
--f110|freedom110|Liberty Freedom 110,
-- bw@, eslok,
-- it#8, wsl#80,
-- blink=\EG2, bold=\EG0, civis=\E.1, cnorm=\E.2, cud1=^V,
-- dim=\EG@, dl1=\ER, dsl=\Ef\r, flash=\Eb$<200/>\Ed, il1=\EE,
-- ip@, is2@, kclr=^^, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET,
-- kf0=^AI\r, kf10@, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`,
-- ri=\EJ, rmacs=\E%%, rmir=\Er\EO, smacs=\E$, smir=\EO\Eq,
-- smso=\EG<, tsl=\Ef, use=f100,
--f110-14|Liberty Freedom 110 14inch,
-- dch1@, use=f110,
--f110-w|Liberty Freedom 110 - 132 cols,
-- cols#132, use=f110,
--f110-14w|Liberty Freedom 110 14in/132 cols,
-- cols#132,
-- dch1@, use=f110,
--# (f200: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr)
--f200|freedom200|Liberty Freedom 200,
-- OTbs, am, eslok, hs, mir, msgr, xon,
-- cols#80, it#8, lines#24, wsl#80,
-- acsc=, bel=^G, blink=\EG2, bold=\EG0, cbt=\EI, civis=\E.0,
-- clear=^Z, cnorm=\E.1, cr=^M,
-- csr=\Em0%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=^V,
-+ dch1=\EW, dl1=\ER$<5*>, ed=\Ey, el=\Et, ht=^I, hts=\E1,
-+ ich1=\EQ, il1=\EE$<5*>, ind=^J, 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,
-+ am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\E+, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\Ey, el=\Et, home=^^, ich1=\EQ, il1=\EE, ind=^J,
-+ is2=\EX\EA\EF, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K,
-+ kdch1=\EW, kdl1=\ER, khome=^^, kich1=\EQ, kil1=\EE, ll=^^^K,
-+ rmcup=\EF, rmso=\Ek, rmul=\Em, smcup=\EN, smso=\Ej, smul=\El,
-+# No backspace key in the main QWERTY cluster. Fortunately, it has a
-+# NEWLINE/PAGE key just above RETURN that sends a strange single-character
-+# code. Given a suitable Unix (one that lets you set an echo-erase-as-BS-SP-BS
-+# 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,
-+ kbs=^_, use=ampex175,
-+# From: Richard Bascove <atd!dsd!rcb@ucbvax.berkeley.edu>
-+# (ampex210: removed obsolete ":kn#10:" -- esr)
-+ampex210|a210|ampex a210,
-+ OTbs, am, hs, xenl,
-+ cols#80, it#8, lines#24, xmc#1,
-+ cbt=\EI, clear=\E*, cub1=^H, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\Ey, el=\Et, flash=\EU\EX\EU\EX\EU\EX\EU\EX,
-+ fsl=\E.2, home=^^, ht=^I, ich1=\EQ,
-+ if=/usr/share/tabset/std, il1=\EE, invis@,
-+ is2=\EC\Eu\E'\E(\El\EA\E%\E{\E.2\EG0\Ed\En, kcub1=^H,
-+ kcud1=^V, kcuf1=^L, kcuu1=^K, kf0=^A0\r, kf1=^A1\r,
-+ kf2=^A2\r, kf3=^A3\r, kf4=^A4\r, kf5=^A5\r, kf6=^A6\r,
-+ kf7=^A7\r, kf8=^A8\r, kf9=^A9\r, khome=^^,
-+ tsl=\E.0\Eg\E}\Ef, use=adm+sgr,
-+# (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,
-+ hs, xenl,
-+ cols#80, it#8, lines#24,
-+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>, cbt=\E[Z,
-+ clear=\E[H\E[2J$<50>, cnorm=\E[?3l, cr=^M,
-+ csr=%i\E[%p1%2d;%p2%2dr, cub1=^H, cud1=\E[B,
-+ cuf1=\E[C$<2>, cup=\E[%i%p1%d;%p2%dH$<5>,
-+ cuu1=\E[A$<2>, cvvis=\E[?3h, dim=\E[1m, ed=\E[J$<50>,
-+ el=\E[K$<3>, home=\E[H, ht=^I, ind=^J,
-+ is2=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\E[21~,
-+ kf1=\E[7~, kf2=\E[8~, kf3=\E[9~, kf4=\E[10~, kf5=\E[11~,
-+ kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, khome=\E[H,
-+ rev=\E[7m, ri=\EM$<5>, rmam=\E[?7l, rmkx=\E>,
-+ rmso=\E[m$<2>, rmul=\E[m$<2>, sgr0=\E[m$<2>, smam=\E[?7h,
-+ smkx=\E=, smso=\E[7m$<2>, smul=\E[4m$<2>,
-+ampex219w|ampex-219w|amp219w|Ampex 132 cols,
-+ cols#132, lines#24,
-+ bel=^G, cr=^M, cud1=^J, ind=^J,
-+ is2=\E>\E[?3h\E[?4l\E[?5l\E[?7h\E[?8h, use=ampex219,
-+# (ampex232: removed <if=/usr/share/tabset/ampex>, no file and no <hts> --esr)
-+ampex232|ampex-232|Ampex Model 232,
-+ am,
-+ cols#80, lines#24, xmc#1,
-+ cbt=\EI, civis=\E.0, clear=\E+, cnorm=\E.4, cub1=^H, cud1=^V,
- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET,
-- flash=\Eo$<200/>\En, fsl=^M, home=^^,
-- hpa=\E]%p1%{32}%+%c, hts=\E1, il1=\EE, ind=^J, kbs=^H,
-- kclr=^^, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW,
-- kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r,
-- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-- kf8=^AG\r, kf9=^AH\r, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`,
-- ri=\EJ, rmacs=\E%%, rmir=\Er, smacs=\E$, smir=\Eq, smso=\EG<,
-- tbc=\E3, tsl=\Ef, vpa=\E[%p1%{32}%+%c, use=adm+sgr,
--f200-w|Liberty Freedom 200 - 132 cols,
-- cols#132, use=f200,
--# The f200 has the ability to reprogram the down cursor key. The key is
--# reprogrammed to ^J (linefeed). This value is remembered in non-volatile RAM,
--# so powering the terminal off and on will not cause the change to be lost.
--f200vi|Liberty Freedom 200 for vi,
-- flash=\Eb$<200/>\Ed, kcud1=^J, use=f200,
--f200vi-w|Liberty Freedom 200 - 132 cols for vi,
-- cols#132, use=f200vi,
-+ dch1=\EW, dl1=\ER$<5*/>, ed=\EY, el=\ET,
-+ flash=\Eb$<200/>\Ed, ht=^I, ich1=\EQ, il1=\EE$<5*/>,
-+ invis@, is2=\Eg\El, kbs=^H, kcub1=^H, kcud1=^V, kcuf1=^L,
-+ kcuu1=^K, 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, khome=^^, use=adm+sgr,
-+# (ampex: removed <if=/usr/share/tabset/amp-132>, no file and no <hts> -- esr)
-+ampex232w|Ampex Model 232 / 132 columns,
-+ cols#132, lines#24,
-+ is2=\E\034Eg\El, use=ampex232,
-
--#### GraphOn (go)
--#
--# Graphon Corporation
--# 544 Division Street
--# Campbell, CA 95008
--# Vox: (408)-370-4080
--# Fax: (408)-370-5047
--# Net: troy@graphon.com (Troy Morrison)
-+#### Ann Arbor (aa)
- #
-+# Ann Arbor made dream terminals for hackers -- large screen sizes and huge
-+# numbers of function keys. At least some used monitors in portrait mode,
-+# allowing up to 76-character screen heights! They were reachable at:
- #
--# The go140 and go225 have been discontinued. GraphOn now makes X terminals,
--# including one odd hybrid that starts out life on power-up as a character
--# terminal, than can be switched to X graphics mode (driven over the serial
--# line) by an escape sequence. No info on this beast yet.
--# (go140: I added <rmam>/<smam> based on the init string -- esr)
--go140|graphon go-140,
-- OTbs,
-- cols#80, it#8, lines#24,
-- clear=\E[H\E[2J$<10/>, cub1=^H, cud1=\E[B, cuf1=\E[C,
-- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
-- ed=\E[J$<10/>, el=\E[K, ht=^I,
-- if=/usr/share/tabset/vt100, il1=\E[L,
-- is2=\E<\E=\E[?3l\E[?7l\E(B\E[J\E7\E[;r\E8\E[m\E[q,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP,
-- kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, ri=\EM,
-- rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m,
-- rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h,
-- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
--go140w|graphon go-140 in 132 column mode,
-- am,
-- cols#132,
-- is2=\E<\E=\E[?3h\E[?7h\E(B\E[J\E7\E[;r\E8\E[m\E[q,
-- use=go140,
--# Hacked up vt200 termcap to handle GO-225/VT220
--# From: <edm@nwnexus.WA.COM>
--# (go225: I added <rmam>/<smam> based on the init string -- esr)
--go225|go-225|Graphon 225,
-- OTbs, am, mir, xenl,
-- cols#80, it#8, lines#25, vt#3,
-- blink=\E[5m, bold=\E[1m, clear=\E[H\E[J,
-- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, 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, il1=\E[L, ind=\ED,
-- is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=^H,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP,
-- kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, rc=\E8, rev=\E[7m,
-- rf=/usr/share/tabset/vt100, ri=\EM, rmam=\E[?7l,
-- rmcup=\E[!p\E[?7h\E[2;1;1#w, rmir=\E[4l, rmkx=\E>,
-- rmso=\E[27m, rmul=\E[24m, rs1=\E[!p\E[?7h\E[2;1;1#w,
-- sc=\E7, sgr0=\E[m, smam=\E[?7h, smcup=\E[2;0#w\E[1;25r,
-- smir=\E[4h, smkx=\E=, smso=\E[7m, smul=\E[4m,
--
--#### Harris (Beehive)
-+# Ann Arbor Terminals
-+# 6175 Jackson Road
-+# Ann Arbor, MI 48103
-+# (313)-663-8000
- #
--# Bletch. These guys shared the Terminal Brain Damage laurels with Hazeltine.
--# Their terminal group is ancient history now (1995) though the parent
--# company is still in business.
-+# But in 1996 the phone number reaches some kitschy retail shop, and Ann Arbor
-+# can't be found on the Web; I fear they're long dead. R.I.P.
- #
-
--# Beehive documentation is undated and marked Preliminary and has no figures
--# so we must have early Superbee2 (Model 600, according to phone conversation
--# with mfr.). It has proved reliable except for some missing padding
--# (notably after \EK and <nl> at bottom of screen).
--#
--# The key idea is that AEP mode is poison for <cup> & that US's in
--# the local memory should be avoided like the plague. That means
--# that the 2048 character local buffer is used as 25 lines of 80
--# characters, period. No scrolling local memory, folks. It also
--# appears that we cannot use naked INS LINE feature since it uses
--# US. The sbi fakes <il1> with an 80-space insert that may be too
--# slow at low speeds; also spaces get converted to \040 which is
--# too long for some programs (not vi). DEL LINE is ok but slow.
-+
-+# Originally from Mike O'Brien@Rand and Howard Katseff at Bell Labs.
-+# Highly modified 6/22 by Mike O'Brien.
-+# split out into several for the various screen sizes by dave-yost@rand
-+# Modifications made 3/82 by Mark Horton
-+# Modified by Tom Quarles at UCB for greater efficiency and more diversity
-+# status line moved to top of screen, <flash> removed 5/82
-+# Some unknown person at SCO then hacked the init strings to make them more
-+# efficient.
- #
--# The <nl> string is designed for last line of screen ONLY; cup to
--# 25th line corrects the motion inherent in scrolling to Page 1.
-+# assumes the following setup:
-+# A menu: 0000 1010 0001 0000
-+# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19
-+# C menu: 56 66 0 0 9600 0110 1100
-+# D menu: 0110 1001 1 0
- #
--# There is one understood bug. It is that the screen appears to
--# pop to a new (blank) page after a <nel>, or leave a half-line
--# ellipsis to a quad that is the extra 48 memory locations. The
--# data received is dumped into memory but not displayed. Not to
--# worry if <cup> is being used; the lines not displayed will be,
--# whenever the cursor is moved up there. Since <cup> is addressed
--# relative to MEMORY of window, nothing is lost; but beware of
--# relative cursor motion (<cuu1>,<cud1>,<cuf1>,<cub1>). Recommended,
--# therefore, is setenv MORE -c .
-+# Briefly, the settings are for the following modes:
-+# (values are for bit set/clear with * indicating our preference
-+# and the value used to test these termcaps)
-+# Note that many of these settings are irrelevent to the terminfo
-+# and are just set to the default mode of the terminal as shipped
-+# by the factory.
- #
--# WARNING: Not all features tested.
-+# A menu: 0000 1010 0001 0000
-+# Block/underline cursor*
-+# blinking/nonblinking cursor*
-+# key click/no key click*
-+# bell/no bell at column 72*
- #
--# Timings are assembled from 3 sources. Some timings may reflect
--# SB2/Model 300 that were used if more conservative.
--# Tested on a Model 600 at 1200 and 9600 bd.
-+# key pad is cursor control*/key pad is numeric
-+# return and line feed/return for <cr> key *
-+# repeat after .5 sec*/no repeat
-+# repeat at 25/15 chars per sec. *
- #
--# The BACKSPACEkb option is cute. The NEWLINE key, so cleverly
--# placed on the keyboard and useless because of AEP, is made
--# into a backspace key. In use ESC must be pressed twice (to send)
--# and sending ^C must be prefixed by ESC to avoid that weird
--# transmit mode associated with ENTER key.
-+# hold data until pause pressed/process data unless pause pressed*
-+# slow scroll/no slow scroll*
-+# Hold in area/don't hold in area*
-+# functions keys have default*/function keys disabled on powerup
- #
--# IF TERMINAL EVER GOES CATATONIC with the cursor buzzing across
--# the screen, then it has dropped into ENTER mode; hit
--# RESET--ONLINE--!tset.
-+# show/don't show position of cursor during page transmit*
-+# unused
-+# unused
-+# unused
- #
--# As delivered this machine has a FATAL feature that will throw
--# it into that strange transmit state (SPOW) if the space bar is
--# hit after a CR is received, but before receiving a LF (or a
--# few others).
-+# B menu: 9600 0100 1000 0000 0000 1000 0000 17 19
-+# Baud rate (9600*)
- #
--# The circuits MUST be modified to eliminate the SPOW latch.
--# This is done by strapping on chip A46 of the I/O board; cut
--# the p.c. connection to Pin 5 and strap Pin 5 to Pin 8 of that
--# chip. This mod has been checked out on a Mod 600 of Superbee II.
--# With this modification absurdly high timings on cr are
--# unnecessary.
-+# 2 bits of parity - 00=odd,01=even*,10=space,11=mark
-+# 1 stop bit*/2 stop bits
-+# parity error detection off*/on
- #
--# NOTE WELL that the rear panel switch should be set to CR/LF,
--# not AEP!
-+# keyboard local/on line*
-+# half/full duplex*
-+# disable/do not disable keyboard after data transmission*
- #
--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,
-- cub1=^H, cud1=^J, cuf1=\EC$<3>, cup=\EF%p2%03d%p1%03d,
-- cuu1=\EA$<3>, dch1=\EP$<3>, dl1=\EM$<100>, ed=\EJ$<3>,
-- el=\EK$<3>, home=\EH$<1>, ht=^I, hts=\E1,
-- il1=\EN\EL$<3>\EQ \EP$<3> \EO\ER\EA$<3>,
-- ind=^J, 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.,
-- xsb,
-- cr=\r$<1>, il1=1\EN\EL$<9>\EQ \EP$<9> \EO\ER\EA,
-- use=sb1,
--# Alternate (older) description of Superbee - f1=escape, f2=^C.
--# Note: there are at least 3 kinds of superbees in the world. The sb1
--# holds onto escapes and botches ^C's. The sb2 is the best of the 3.
--# The sb3 puts garbage on the bottom of the screen when you scroll with
--# the switch in the back set to CRLF instead of AEP. This description
--# is tested on the sb2 but should work on all with either switch setting.
--# The f1/f2 business is for the sb1 and the <xsb> can be taken out for
--# 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,
-- am, da, db, xsb,
-- cols#80, it#8, lines#25,
-- clear=\EH\EJ$<3>, cnorm=^J, cr=\r$<1000>, cub1=^H, cud1=^J,
-- cuf1=\EC, cup=\EF%p2%3d%p1%3d, cuu1=\EA$<3>,
-- 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,
--# This loses on lines > 80 chars long, use at your own risk
--superbeeic|super bee with insert char,
-- ich1=, rmir=\ER, smir=\EQ, use=superbee-xsb,
--sb2|sb3|fixed superbee,
-- xsb@, use=superbee,
--
--#### Beehive Medical Electronics
-+# transmit entire page/stop transmission at cursor*
-+# transfer/do not transfer protected characters*
-+# transmit all characters/transmit only selected characters*
-+# transmit all selected areas/transmit only 1 selected area*
- #
--# Steve Seymour <srseymour@mindspring.com> writes (Wed, 03 Feb 1999):
--# Regarding your question though; Beehive terminals weren't made by Harris.
--# They were made by Beehive Medical Electronics in Utah. They went out of
--# business in the early '80s.
-+# transmit/do not transmit line separators to host*
-+# transmit/do not transmit page tab stops tabs to host*
-+# transmit/do not transmit column tab stop tabs to host*
-+# transmit/do not transmit graphics control (underline,inverse..)*
- #
--# (OK, then, I don't know why a couple of these say "harris beehive".)
-+# enable*/disable auto XON/XOFF control
-+# require/do not require receipt of a DC1 from host after each LF*
-+# pause key acts as a meta key/pause key is pause*
-+# unused
- #
--
--# 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,
-- OTbs, am, mir,
-- cols#80, lines#24,
-- cbt=\E>, clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC,
-- cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP,
-- dl1=\EM, ed=\EJ, el=\EK, home=\EH, il1=\EL, kbs=^H, kcbt=\E>,
-- kclr=\EE, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-- kdch1=\EP, kdl1=\EM, kel=\EK, khome=\EH, kich1=\EQ, kil1=\EL,
-- krmir=\E@, rmir=\E@, rmso=\Ed@, rmul=\Ed@, sgr0=\Ed@,
-- smir=\EQ, smso=\EdP, smul=\Ed`,
--# set tab is ^F, clear (one) tab is ^V, no way to clear all tabs.
--# good grief - does this entry make :sg:/:ug: when it doesn't have to?
--# 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,
-- OTbs, am,
-- cols#80, it#8, lines#20,
-- bel=^G, clear=^E^R, cr=^M, cub1=^H, cud1=^J, cuf1=^L, cuu1=^K,
-- dl1=\021$<350>, ed=^R, el=^P, home=^E, ht=^I, hts=^F,
-- il1=\023$<160>, ind=^J, ll=^E^K, rmso=\s^_, smso=^]\s,
--beehive4|bh4|beehive 4,
-- am,
-- cols#80, lines#24,
-- bel=^G, clear=\EE, cr=^M, cub1=\ED, cud1=^J, cuf1=\EC,
-- cuu1=\EA, ed=\EJ, el=\EK, home=\EH, ind=^J,
--# 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,
-- OTbs, am,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=\EE, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
-- el=\EK, ht=^I, ind=^J, 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`,
--
--# 8675, 8686, and bee from Cyrus Rahman
--# (8675: changed k10, k11...k16 to k;, F1...F6 -- esr)
--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=^J, kf6=^T, kf7=^H,
-- kf8=\177, kf9=\Ee, use=bee,
--# (8686: changed k10, k11...k16 to k;, F1...F6; fixed broken continuation
--# in :is: -- esr)
--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"8F75021B7383#\E"8F851BD7#\E"8F95021B7083#\E"8FA5021B7183#\E"8FB5021B7283#,
-- kf1=\002\Ep\003, kf10=\Ej, kf11=\EW, kf12=\002\E{\003,
-- kf13=\002\E|\003, kf14=\002\E}\003, kf15=\002\E~\003,
-- kf16=\002\E\177\003, kf2=\002\Eq\003, kf3=\002\Er\003,
-- kf4=\002\Es\003, kf5=\E3, kf6=\EI, kf7=\ER, kf8=\EJ, kf9=\E(,
-- use=bee,
--
--#### Hazeltine
-+# unused
-+# unused
-+# unused
-+# unused
- #
--# Hazeltine appears to be out of the terminal business as of 1995. These
--# guys were co-owners of the Terminal Brain Damage Hall Of Fame along with
--# Harris. They have a hazeltine.com domain (but no web page there ) and can
--# be reached at:
-+# XON character (17*)
-+# XOFF character (19*)
- #
--# Hazeltine
--# 450 East Pulaski Road
--# Greenlawn, New York 11740
-+# C menu: 56 66 0 0 9600 0110 1100
-+# number of lines to print data on (printer) (56*)
- #
--# As late as 1993, manuals for the terminal product line could still be
--# purchased from:
-+# number of lines on a sheet of paper (printer) (66*)
- #
--# TRW Customer Service Division
--# 15 Law Drive
--# P.O. Box 2076
--# Fairfield, NJ 07007-2078
-+# left margin (printer) (0*)
- #
--# They're now (1998) a subsidiary of General Electric, operating under the
--# marque "GEC-Marconi Hazeltine" and doing military avionics. Web page
--# at <http://www.gec.com/cpd/1ncpd.htm#1.55>.
-+# number of pad chars on new line to printer (0*)
- #
--
--# Since <cuf1> is blank, when you want to erase something you
--# are out of luck. You will have to do ^L's a lot to
--# 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,
-- OTbs,
-- cols#80, lines#12,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, home=^K,
-- ind=^J,
--# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981
--hz1420|hazeltine 1420,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=^J, cuf1=^P,
-- cup=\E\021%p2%c%p1%{32}%+%c, cuu1=\E^L, dl1=\E^S,
-- ed=\E^X, el=\E^O, ht=^N, il1=\E^Z, ind=^J, rmso=\E^Y,
-- smso=\E^_,
--# 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,
-- OTbs, am, hz,
-- cols#80, lines#24,
-- bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P,
-- cup=~\021%p2%p2%?%{30}%>%t%{32}%+%;%{96}%+%c%p1%{96}%+%c,
-- cuu1=~^L, dl1=~\023$<40>, ed=~\030$<10>, el=~^O, home=~^R,
-- il1=~\032$<40>, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^P,
-- kcuu1=~^L, khome=~^R, rmso=~^Y, smso=~^_,
--# h1510 assumed to be in sane escape mode. Else use h1500.
--# (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,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K, cuf1=^P,
-- cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, ed=\E^X,
-- el=\E^O, il1=\E^Z, ind=^J,
--# Hazeltine 1520
--# The following switch settings are assumed for normal operation:
--# FULL CR U/L_CASE ESCAPE
--# FORMAT_OFF EOM_A_OFF EOM_B_OFF WRAPAROUND_ON
--# Other switches may be set for operator convenience or communication
--# requirements.
--hz1520|Hazeltine 1520,
-- OTbs, am, bw, msgr,
-- cols#80, lines#24,
-- bel=^G, bold=\E^_, clear=\E^\, cr=^M, cub1=^H, cud1=^J,
-- cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S,
-- ed=\E^X, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, kbs=^H,
-- kclr=\E^\, kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L,
-- kdl1=\E^S, ked=\E^X, kel=\E^O, khome=\E^R, kil1=\E^Z,
-- 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,
-- am, hz,
-- cols#80, lines#24,
-- bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P,
-- cup=~\021%p2%c%p1%c$<1>, cuu1=~^L, dl1=~^S, ed=~^X, el=~^O,
-- home=~^R, il1=~^Z, ind=^J, rmso=~^Y, smso=~^_,
--# 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,
-- OTbs,
-- cud1=^J, 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=^J, rmso=\ET, smso=\ES, use=hz1552,
--# Note: h2000 won't work well because of a clash between upper case and ~'s.
--hz2000|hazeltine 2000,
-- OTbs, OTnc, am,
-- cols#74, lines#27,
-- bel=^G, clear=~\034$<6>, cub1=^H, cud1=^J,
-- cup=~\021%p2%c%p1%c, dl1=~\023$<6>, home=~^R,
-- il1=~\032$<6>, ind=^J, pad=\177,
--# Date: Fri Jul 23 10:27:53 1982. Some unknown person wrote:
--# I tested this termcap entry for the Hazeltine Esprit with vi. It seems
--# to work ok. There is one problem though if one types a lot of garbage
--# characters very fast vi seems not able to keep up and hangs while trying
--# to insert. That's in insert mode while trying to insert in the middle of
--# a line. It might be because the Esprit doesn't have insert char and delete
--# char as a built in function. Vi has to delete to end of line and then
--# redraw the rest of the line.
--esprit|Hazeltine Esprit I,
-- OTbs, am, bw,
-- cols#80, lines#24,
-- bel=^G, cbt=\E^T, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K,
-- cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S,
-- ed=\E^W, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, is2=\E?, kbs=^H,
-- kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L, kf0=^B0^J,
-- kf1=^B1^J, kf2=^B2^J, kf3=^B3^J, kf4=^B4^J, kf5=^B5^J,
-- kf6=^B6^J, kf7=^B7^J, kf8=^B8^J, kf9=^B9^J, 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,
-- 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
--# that the terminal would work somewhat if the auto LF/CR was turned off.
--# (hmod1: removed :dn=~^K: -- esr)
--hmod1|Hazeltine Modular 1,
-- OTbs, am, hz,
-- cols#80, lines#24,
-- bel=^G, cbt=~^T, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P,
-- cup=~\021%p2%c%p1%c, cuu1=~^L, dl1=~^S, home=~^R, il1=~^Z,
-- ind=^J, kcub1=^H, kcud1=~^K, kcuf1=^P, kcuu1=~^L, khome=~^R,
-- rc=~^Q, rmso=~^Y, sc=~^E, sgr0=~^Y, smso=~^_,
-+# printer baud rate (9600*)
- #
--# Hazeltine Executive 80 Model 30 (1554?)
--# from Will Martin <control@ALMSA-1.ARPA> via BRL
--# Like VT100, except for different "am" behavior.
--hazel|exec80|h80|he80|Hazeltine Executive 80,
-- OTbs, OTpt, am,
-- cols#80, it#8, lines#24, vt#3,
-- OTnl=^J, bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>,
-- clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub1=^H, cud1=^J, cuf1=\E[C$<2/>,
-- cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>,
-- ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I,
-- is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB,
-- kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR,
-- kf4=\EOS, rc=\E8, rev=\E[7m$<2/>,
-- rf=/usr/share/tabset/vt100, ri=\EM$<5/>,
-- rmkx=\E[?1l\E>, rmso=\E[m$<2/>, rmul=\E[m$<2/>,
-- rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- sgr0=\E[m$<2/>, smkx=\E[?1h\E=, smso=\E[7m$<2/>,
-- smul=\E[4m$<2/>,
--
--#### IBM
-+# printer parity: 00=odd,01=even*,10=space,11=mark
-+# printer stop bits: 2*/1
-+# print/do not print guarded areas*
-+#
-+# new line is: 01=LF,10=CR,11=CRLF*
-+# unused
-+# unused
-+#
-+# D menu: 0110 1001 1 0
-+# LF is newline/LF is down one line, same column*
-+# wrap to preceding line if move left from col 1*/don't wrap
-+# wrap to next line if move right from col 80*/don't wrap
-+# backspace is/is not destructive*
-+#
-+# display*/ignore DEL character
-+# display will not/will scroll*
-+# page/column tab stops*
-+# erase everything*/erase unprotected only
-+#
-+# editing extent: 0=display,1=line*,2=field,3=area
-+#
-+# unused
- #
-
--ibm327x|line mode IBM 3270 style,
-- gn,
-- clear=^M^J, el=^M, home=^M,
-+annarbor4080|aa4080|ann arbor 4080,
-+ OTbs, am,
-+ cols#80, lines#40,
-+ bel=^G, clear=\014$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=^_,
-+ cup=\017%p2%{10}%/%{16}%*%p2%{10}%m%+%c%p1%?%p1%{19}%>%t%{12}%+%;%{64}%+%c,
-+ cuu1=^N, home=^K, ht=^I, hts=^]^P1, ind=^J, kbs=^^, kcub1=^H,
-+ kcud1=^J, kcuf1=^_, kcuu1=^N, khome=^K, tbc=^\^P^P,
-
--ibm3101|i3101|IBM 3101-10,
-- OTbs, am, xon,
-- cols#80, lines#24,
-- bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
-- el=\EI, home=\EH, hts=\E0, ind=^J, kcub1=\ED, kcud1=\EB,
-- kcuf1=\EC, kcuu1=\EA, nel=^M^J, tbc=\EH,
--ibm3151|IBM 3151 display,
-- is2=\E S, rmacs=\E>B, rmcup=\E>B, rs2=\E S, s0ds=\E>B,
-- sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E>B%;,
-- sgr0=\E4@\E>B, smacs=\E>A, smcup=\E>B, use=ibm3162,
--# From: Mark Easter <marke@fsi-ssd.csg.ssd.fsi.com> 29 Oct 1992
--# removed kend, knp, kpp -TD
--ibm3161|ibm3163|wy60-316X|wyse60-316X|IBM 3161/3163 display,
-- OTbs, am, mir, msgr,
-- cols#80, it#8, lines#24,
-- acsc=j\352k\353l\354m\355n\356q\361t\364u\365v\366w\367x\370,
-- bel=^G, blink=\E4D, bold=\E4H, clear=\EH\EJ, cr=^M, cub1=\ED,
-- cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=\EA, dch1=\EQ, dl1=\EO, ed=\EJ, el=\EI, home=\EH, ind=^J,
-- invis=\E4P, kbs=^H, kcbt=\E2, kclr=\EL\r, kctab=\E1,
-- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EQ,
-- kdl1=\EO, ked=\EJ, kel=\EI, kf1=\Ea\r, kf10=\Ej\r,
-- kf11=\Ek\r, kf12=\El\r, kf13=\E!a\r, kf14=\E!b\r,
-- kf15=\E!c\r, kf16=\E!d\r, kf17=\E!e\r, kf18=\E!f\r,
-- kf19=\E!g\r, kf2=\Eb\r, kf20=\E!h\r, kf21=\E!i\r,
-- kf22=\E!j\r, kf23=\E!k\r, kf24=\E!l\r, kf3=\Ec\r,
-- kf4=\Ed\r, kf5=\Ee\r, kf6=\Ef\r, kf7=\Eg\r, kf8=\Eh\r,
-- kf9=\Ei\r, khome=\EH, khts=\E0, kich1=\EP \010, kil1=\EN,
-- ktbc=\E 1, mc4=^P^T, mc5=^P^R, rev=\E4A, rmcup=\E>A,
-- rmso=\E4@, rmul=\E4@,
-- sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E<@%;,
-- sgr0=\E4@\E<@, smcup=\E>A, smso=\E4A, smul=\E4B,
-+# Strange Ann Arbor terminal from BRL
-+aas1901|Ann Arbor K4080 w/S1901 mod,
-+ am,
-+ cols#80, lines#40,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^_, cuu1=^N,
-+ home=^K, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J, ll=^O\0c,
-+ nel=^M^J,
-
--ibm3161-C|IBM 3161-C NLS terminal using cartridge,
-- rmcup=\E>B, s0ds=\E>B, s1ds=\E>A, smcup=\E>B, use=ibm3161,
--ibm3162|IBM 3162 display,
-- blink=\E4$a, bold=\E4(a, il1=\EN, invis=\E40a, rev=\E4!a,
-- rmso=\E4>b, rmul=\E4=b, sgr0=\E4@, smso=\E4!a, smul=\E4"a,
-- use=ibm3161-C,
-+# If you're using the GNU termcap library, add
-+# :cS=\E[%p1%d;%p2%d;%p3%d;%p4%dp:
-+# to these capabilities. This is the nonstandard GNU termcap scrolling
-+# capability, arguments are:
-+# 1. Total number of lines on the screen.
-+# 2. Number of lines above desired scroll region.
-+# 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),
-+ OTbs, am, km, mc5i, mir, xon,
-+ cols#80, it#8,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
-+ clear=\E[H\E[J$<156>, cr=^M, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^K, 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, ed=\E[J,
-+ el=\E[K$<5>, home=\E[H, hpa=\E[%p1%{1}%+%dG, ht=^I,
-+ hts=\EH, ich=\E[%p1%d@$<4*>, ich1=\E[@$<4>, il=\E[%p1%dL,
-+ il1=\E[L$<3>, ind=^K, invis=\E[8m, is1=\E[m\E7\E[H\E9\E8,
-+ is3=\E[1Q\E[>20;30l\EP`+x~M\E\\, kbs=^H, kcbt=\E[Z,
-+ kclr=\E[J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\E[P, kdl1=\E[M, kf1=\EOA, kf10=\EOJ, kf11=\EOK,
-+ kf12=\EOL, kf13=\EOM, kf14=\EON, kf15=\EOO, kf16=\EOP,
-+ kf17=\EOQ, kf18=\EOR, kf19=\EOS, kf2=\EOB, kf20=\EOT,
-+ kf21=\EOU, kf22=\EOV, kf23=\EOW, kf24=\EOX, kf3=\EOC,
-+ kf4=\EOD, kf5=\EOE, kf6=\EOF, kf7=\EOG, kf8=\EOH, kf9=\EOI,
-+ khome=\E[H, kich1=\E[@, kil1=\E[L, krmir=\E6, mc0=\E[0i,
-+ mc4=^C, mc5=\E[v, mc5p=\E[%p1%dv, rc=\E8,
-+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m,
-+ rmkx=\EP`>y~[[J`8xy~[[A`4xy~[[D`6xy~[[C`2xy~[[B\E\\,
-+ rmm=\E[>52l, rmso=\E[m, rmul=\E[m, sc=\E7,
-+ sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m,
-+ sgr0=\E[m,
-+ smkx=\EP`>z~[[J`8xz~[[A`4xz~[[D`6xz~[[C`2xz~[[B\E\\,
-+ smm=\E[>52h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-+ vpa=\E[%p1%{1}%+%dd,
-+
-+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,
-+ 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,
-+ acsc=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}},
-+ csr=\E[%i%p1%d;%p2%dr, enacs=\E(0, rmacs=^N,
-+ 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,
-+ 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,
-+ use=aaa+rv, use=aaa-18,
-+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,
-+ 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,
-+ 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,
-+ use=aaa+rv, use=aaa-24,
-+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,
-+ 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,
-+ eslok, hs,
-+ lines#29,
-+ dsl=\E7\E[60;0;0;30p\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;30p\E8,
-+ 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,
-+ use=aaa+rv, use=aaa-30-s,
-+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,
-+ 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,
-+ 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,
-+ use=aaa+rv, use=aaa-30,
-+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,
-+ 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,
-+ 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,
-+ use=aaa+rv, use=aaa-36,
-+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,
-+ use=aaa+rv, use=aaa-40,
-+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,
-+ use=aaa+rv, use=aaa-48,
-+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,
-+ use=aaa+rv, use=aaa-60-s,
-+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,
-+ 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,
-+ use=aaa+rv, use=aaa-60,
-+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,
-+ 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,
-+ use=guru+rv, use=guru-33,
-+guru+s|guru status line,
-+ eslok, hs,
-+ dsl=\E7\E[;0p\E[1;1H\E[K\E[H\E8\r\n\E[K, fsl=\E[>51l,
-+ rmcup=\E[255;1p\E[255;1H\E[K, smcup=,
-+ 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,
-+ 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,
-+ 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,
-+ 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,
-+ 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,
-+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,
-+ 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,
-+guru-76-lp|guru-lp|guru with page bigger than line printer,
-+ cols#134, lines#76,
-+ is2=\E7\E[255;0;0;76;134;134p\E8\E[J, smcup=\E[76p,
-+ use=guru+unk,
-+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,
-+ 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,
-+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,
-+ 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,
-+ rs1=\E[H\E[7m\E[J,
-+ sgr=\E[%?%p6%t1;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p1%!%t7;%;%?%p7%t8;%;m,
-+ sgr0=\E[7m, smso=\E[m, smul=\E[4;7m,
-
--# This really should not use setab/setaf, but it is clear that the
--# original terminfo does not toggle red/blue colors as in setb/setf.
--ibm3164|i3164|IBM 3164,
-- msgr,
-- colors#8, pairs#64,
-- op=\E4 "@, rmcup=\E!9(N\E>B, s0ds=\E>B, s1ds=\E>A,
-- setab=\E4 %p1%{64}%+%c,
-- setaf=\E4%?%p1%t %p1%{32}%+%c%e!'%;@,
-- smcup=\E!9/N\E>B, use=ibm3161,
-+#### Applied Digital Data Systems (adds)
-+#
-+# ADDS itself is long gone. ADDS was bought by NCR, and the same group made
-+# ADDS and NCR terminals. When AT&T and NCR merged, the engineering for
-+# terminals was merged again. Then AT&T sold the terminal business to
-+# SunRiver, which later changed its name to Boundless Technologies. The
-+# engineers from Teletype, AT&T terminals, ADDS, and NCR (who are still there
-+# as of early 1995) are at:
-+#
-+# Boundless Technologies
-+# 100 Marcus Boulevard
-+# Hauppauge, NY 11788-3762
-+# Vox: (800)-231-5445
-+# Fax: (516)-342-7378
-+# Web: http://boundless.com
-+#
-+# Their voice mail used to describe the place as "SunRiver (formerly ADDS)".
-+# In 1995 Boundless acquired DEC's terminals business.
-+#
-
--ibm5151|wy60-AT|wyse60-AT|IBM 5151 Monochrome display,
-- am, bw, msgr, xon,
-- cols#80, it#8, lines#25,
-- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- 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, ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H,
-- hpa=\E[%i%p1%dG, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-- indn=\E[%p1%dS, invis=\E[8m, is2=\Ec, kbs=^H, kcbt=\E[Z,
-- kclr=\E[144q, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-- kcuu1=\E[A, kdch1=\E[P, ked=\E[148q, kel=\E[142q,
-- kend=\E[146q, kf1=\E[001q, kf10=\E[010q, kf11=\E[011q,
-- kf12=\E[012q, kf13=\E[013q, kf14=\E[014q, kf15=\E[015q,
-- kf16=\E[016q, kf17=\E[017q, kf18=\E[018q, kf19=\E[019q,
-- kf2=\E[002q, kf20=\E[020q, kf21=\E[021q, kf22=\E[022q,
-- kf23=\E[023q, kf24=\E[024q, kf25=\E[025q, kf26=\E[026q,
-- kf27=\E[027q, kf28=\E[028q, kf29=\E[029q, kf3=\E[003q,
-- kf30=\E[030q, kf31=\E[031q, kf32=\E[032q, kf33=\E[033q,
-- kf34=\E[034q, kf35=\E[035q, kf36=\E[036q, kf4=\E[004q,
-- kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q,
-- kf9=\E[009q, khome=\E[H, kich1=\E[139q, kil1=\E[140q,
-- kind=\E[151q, knp=\E[154q, kpp=\E[150q, kri=\E[155q,
-- krmir=\E[4l, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmir=\E[4l,
-- rmso=\E[m, rmul=\E[m, rs2=\Ec,
-- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m,
-- sgr0=\E[0m, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-+# Regent: lowest common denominator, works on all regents.
-+# (regent: renamed ":bc:" to ":le:" -- esr)
-+regent|Adds Regent Series,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F, cuu1=^Z,
-+ home=\EY\s\s, ind=^J, ll=^A,
-+# Regent 100 has a bug where if computer sends escape when user is holding
-+# down shift key it gets confused, so we avoid escape.
-+regent100|Adds Regent 100,
-+ xmc#1,
-+ bel=^G,
-+ cup=\013%p1%' '%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%c,
-+ kf0=^B1\r, kf1=^B2\r, kf2=^B3\r, kf3=^B4\r, kf4=^B5\r,
-+ kf5=^B6\r, kf6=^B7\r, kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3,
-+ lf3=F4, lf4=F5, lf5=F6, lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@,
-+ sgr0=\E0@, smso=\E0P, smul=\E0`, use=regent,
-+regent20|Adds Regent 20,
-+ bel=^G, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, ed=\Ek, el=\EK,
-+ use=regent,
-+regent25|Adds Regent 25,
-+ bel=^G, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z, khome=^A,
-+ use=regent20,
-+regent40|Adds Regent 40,
-+ xmc#1,
-+ bel=^G, dl1=\El$<2*>, il1=\EM$<2*>, kf0=^B1\r, kf1=^B2\r,
-+ kf2=^B3\r, kf3=^B4\r, kf4=^B5\r, kf5=^B6\r, kf6=^B7\r,
-+ kf7=^B8\r, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5, lf5=F6,
-+ lf6=F7, lf7=F8, rmso=\E0@, rmul=\E0@, sgr0=\E0@, smso=\E0P,
-+ smul=\E0`, use=regent25,
-+regent40+|Adds Regent 40+,
-+ is2=\EB, use=regent40,
-+regent60|regent200|Adds Regent 60,
-+ dch1=\EE, is2=\EV\EB, kdch1=\EE, kich1=\EF, krmir=\EF,
-+ rmir=\EF, rmso=\ER\E0@\EV, smir=\EF, smso=\ER\E0P\EV,
-+ 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,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=^L, cnorm=\017\E0`, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=^F, cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z,
-+ cvvis=\017\E0P, dl1=\El, ed=\Ek$<16.1*>, el=\EK$<16>,
-+ ind=^J, is2=\017\E0`, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z,
-+ 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,
-+ cvvis@, rmso@, rmul@, smso@, smul@, use=viewpoint,
-
--ibmaed|IBM Experimental display,
-- OTbs, am, eo, msgr,
-- cols#80, it#8, lines#52,
-- clear=\EH\EK, cub1=^H, cud1=\EB, cuf1=\EC,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EQ,
-- dl1=\EO, ed=\EJ, el=\EI, flash=\EG, home=\EH, ht=^I, ich1=\EP,
-- il1=\EN, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-- rmso=\E0, sgr0=\E0, smso=\E0,
--ibm-apl|apl|IBM apl terminal simulator,
-- lines#25, use=dm1520,
--# (ibmmono: this had an unknown `sb' boolean, I changed it to `bs'.
--# Also it had ":I0=f10:" which pretty obviously should be "l0=f10" -- esr)
--ibmmono|IBM workstation monochrome,
-- eslok, hs,
-- bold=\EZ, dl1=\EM, dsl=\Ej\EY8 \EI\Ek, fsl=\Ek, il1=\EL,
-- invis=\EF\Ef0;\Eb0;, kbs=^H, kf0=\E<, kf1=\ES, kf2=\ET,
-- kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\EY,
-- khome=\EH, kich1=\0, kind=\EE, knp=\EE, kpp=\Eg, kri=\EG,
-- lf0=f10, rev=\Ep, ri=\EA, rmso=\Ez, rmul=\Ew,
-- sgr0=\Ew\Eq\Ez\EB, smso=\EZ, smul=\EW, tsl=\Ej\EY8%+ \Eo,
-- use=ibm3101,
--ibmega|IBM Enhanced Color Display,
-- cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J,
-- nel=^M^J, use=ibmmono,
--# This color scheme is assumed in some recent IBM terminal descriptions
--# (green on black, emulated on a 16-color terminal).
--ibm+color|IBM color definitions,
-- colors#8, ncv#3, pairs#64,
-- op=\E[32m\E[40m,
-- setb=\E[%?%p1%{0}%=%t40m%e%p1%{1}%=%t41m%e%p1%{2}%=%t42m%e%p1%{3}%=%t43m%e%p1%{4}%=%t44m%e%p1%{5}%=%t45m%e%p1%{6}%=%t46m%e%p1%{7}%=%t107m%;,
-- setf=\E[%?%p1%{0}%=%t30m%e%p1%{1}%=%t31m%e%p1%{2}%=%t32m%e%p1%{3}%=%t33m%e%p1%{4}%=%t34m%e%p1%{5}%=%t35m%e%p1%{6}%=%t36m%e%p1%{7}%=%t97m%;,
--ibm+16color|IBM aixterm color definitions,
-- colors#16, pairs#256,
-- setab=\E[%?%p1%{8}%<%t%p1%{40}%+%e%p1%{92}%+%;%dm,
-- setaf=\E[%?%p1%{8}%<%t%p1%{30}%+%e%p1%{82}%+%;%dm,
-- setb=%p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m,
-- setf=%p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m,
--ibm5154|IBM 5154 Color display,
-- colors#8, ncv@, pairs#64,
-- bold@, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151,
-- use=ibm+color,
--ibmega-c|ibm5154-c|IBM Enhanced Color Display with standout and underline,
-- rmso=\EB, rmul=\EB, smso=\EF\Ef3;, smul=\EF\Ef2;,
-- use=ibmmono,
--ibmvga-c|IBM VGA display color termcap,
-- cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J,
-- nel=^M^J, use=ibmega-c,
--ibmvga|IBM VGA display,
-- cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J,
-- nel=^M^J, use=ibmega,
--# ibmapa* and ibmmono entries come from ACIS 4.3 distribution
--rtpc|ibmapa16|IBM 6155 Extended Monochrome Graphics Display,
-- lines#32,
-- dsl=\Ej\EY@ \EI\Ek, tsl=\Ej\EY@%+ \Eo, use=ibmmono,
--ibm6155|IBM 6155 Black & White display,
-- blink@, bold@, use=ibm5151,
--# Advanced Monochrome (6153) and Color (6154) Graphics Display:
--ibmapa8c|ibmapa8|IBM 6154 Advanced Graphics Display,
-- lines#31,
-- dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo, use=ibmmono,
--ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display,
-- lines#31,
-- dim=\EF\Ef7;, dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo,
-- 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;12%;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;12%;m,
-- sgr0=\E[0;10m, use=ibm5151,
--ibm6153-90|IBM 6153 Black & White display,
-- cols#90, lines#36,
-- blink@, bold@, use=ibm5151,
--ibm6153-40|IBM 6153 Black & White display,
-- cols#40, lines#12, use=ibm6153-90,
--ibm8512|ibm8513|IBM color VGA Terminal,
-- am, mir, msgr,
-- cols#80, it#8, lines#25,
-- acsc=jjkkllmmnnqqttuuvvwwxx, blink=\E[5m, bold=\E[1m,
-- clear=\E[H\E[J, cub1=\E[D, cud1=^J, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M,
-- ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, il=\E[%p1%dL,
-- il1=\E[L, is2=\Eb\E[m\017\E[?7h, kcud1=\E[B, kcuu1=\E[A,
-- kf0=\E[010q, kf1=\E[001q, kf2=\E[002q, kf3=\E[003q,
-- kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q,
-- kf8=\E[008q, kf9=\E[009q, khome=\E[H, rc=\E[u, rev=\E[7m,
-- rmacs=^O, rmam=\E[?7l, rmcup=\E[20h, rmdc=\E[4l,
-- rmir=\E[4l, rmso=\E[m, rmul=\E[m,
-- rs1=\Eb\E[m\017\E[?7h\E[H\E[J, sc=\E[s, sgr0=\E[m,
-- smacs=^N, smam=\E[?7h, smcup=\E[20;4l\E[?7h\Eb,
-- smdc=\E[4h, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-- use=ibm8503,
--hft-c|HFT with Color,
-- colors#8, pairs#64,
-- acsc=jjkkllmmnnqqttuuvvwwxx, s0ds=\E(B, s1ds=\E(0,
-- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0m\E(B,
-- use=ibm5151, use=ibm+color,
--hft-c-old|HFT with Color PC850,
-- colors#8, pairs#64,
-- setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151,
-- use=ibm+color,
--hft-old|AIWS High Function Terminal,
-- am, xon,
-- cols#80, lines#25,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-- cub1=^H, cud1=^J, 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=^J, invis=\E[8m, kbs=^H,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kf1=\E[001q, kf2=\E[002q, kf3=\E[003q, kf4=\E[004q,
-- kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q,
-- 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,
-- am, xt,
-+# From: Jay S. Rouman <jsr@dexter.mi.org> 5 Jul 92
-+# The <civis>/<cnorm>/<sgr>/<sgr0> strings were added by ESR from specs.
-+# Theory; the vp3a+ wants \E0%c to set highlights, where normal=01000000,
-+# underline=01100000, rev=01010000, blink=01000010,dim=01000001,
-+# invis=01000100 and %c is the logical or of desired attributes.
-+# There is also a `tag bit' enabling attributes, set by \E) and unset by \E(.
-+#
-+# Update by TD - 2004:
-+# Adapted from
-+# http://www.cs.utk.edu/~shuford/terminal/adds_viewpoint_news.txt
-+#
-+# COMMANDS ASCII CODE
-+#
-+# Address, Absolute ESC,=,row,column
-+# Beep BEL
-+# Aux Port Enable ESC,@
-+# Aux Port Disable ESC,A
-+# Backspace BS
-+# Cursor back BS
-+# Cursor down LF
-+# Cursor forward FF
-+# Cursor home RS
-+# Cursor up VT
-+# Cursor supress ETB
-+# Cursor enable CAN
-+# Erase to end of line ESC,T
-+# Erase to end of page ESC,Y
-+# Erase screen SUB
-+# Keyboard lock SI
-+# Keyboard unlock SO
-+# Read current cursor position ESC,?
-+# Set Attribute ESC,0,x (see below for values of x)
-+# Tag bit reset ESC,(
-+# Tag bit set ESC,)
-+# Transparent Print on ESC,3
-+# Transparent Print off ESC,4
-+#
-+#
-+# ATTRIBUTES
-+#
-+# Normal @ 0100
-+# Half Intensity A 0101
-+# Blinking B 0102
-+# Half Intensity Blinking C 0103
-+# Reverse Video P 0120
-+# Reverse Video Half Intensity Q 0121
-+# Reverse Video Blinking R 0122
-+# Reverse Video Half Intensity
-+# Blinking S 0123
-+# Underlined ` 0140
-+# Underlined Half Intensity a 0141
-+# Underlined Blinking b 0142
-+# Underlined Half Intensity
-+# Blinking c 0143
-+# Video suppress D 0104
-+vp3a+|viewpoint3a+|adds viewpoint 3a+,
-+ am, bw,
-+ cols#80, it#8, lines#24,
-+ blink=\E0B\E), civis=^W, clear=\E*$<80>, cnorm=^X, cr=^M,
-+ cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dim=\E0A\E),
-+ ed=\EY$<80>, el=\ET, home=^^, ht=^I, ind=^J, invis=\E0D\E),
-+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^,
-+ nel=^M^J, rev=\E0P\E), rmso=\E(,
-+ sgr=%?%p1%p2%|%p3%|%p4%|%p5%|%p7%|%t\E0%{64}%?%p1%t%{17}%|%;%?%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,
-+ use=regent40,
-+#
-+# adds viewpoint 90 - from cornell
-+# Note: emacs sends ei occasionally to insure the terminal is out of
-+# insert mode. This unfortunately puts the viewpoint90 IN insert
-+# mode. A hack to get around this is <ich1=\EF\s\EF^U>. (Also,
-+# - :ei=:im=: must be present in the termcap translation.)
-+# - <xhp> indicates glitch that attributes stick to location
-+# - <msgr> means it's safe to move in standout mode
-+# - <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,
-+ OTbs, bw, msgr, xhp,
- cols#80, lines#24,
-- bel=^G, clear=^Z, cub1=^H, cuf1=^\,
-- cup=\005%p1%{32}%+%c%p2%{32}%+%c, cuu1=^^, home=^K,
-- ind=^J,
--# lft-pc850 : IBM Low Function Terminal Device
--# lft "supports" underline, bold, and blink in the sense that the lft code
--# sets all the right bits. HOWEVER, depending upon the adapter, these
--# attributes may or may not be supported by the device driver.
--lft|lft-pc850|LFT-PC850|IBM LFT PC850 Device,
-- am, bw, msgr, xon,
-- cols#80, it#8, lines#25,
-- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-- cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- 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[2J, el=\E[0K,
-- home=\E[H, hpa=\E[%i%p1%dG, ich=\E[%p1%d@, il=\E[%p1%dL,
-- il1=\E[L, ind=\ED, indn=\E[%p1%dS, invis=\E[8m, is2=\Ec,
-- kbs=^H, kcbt=\E[Z, kclr=\E[144q, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, ked=\E[148q,
-- kel=\E[142q, kend=\E[146q, kf1=\E[001q, kf10=\E[010q,
-- kf11=\E[011q, kf12=\E[012q, kf13=\E[013q, kf14=\E[014q,
-- kf15=\E[015q, kf16=\E[016q, kf17=\E[017q, kf18=\E[018q,
-- kf19=\E[019q, kf2=\E[002q, kf20=\E[020q, kf21=\E[021q,
-- kf22=\E[022q, kf23=\E[023q, kf24=\E[024q, kf25=\E[025q,
-- kf26=\E[026q, kf27=\E[027q, kf28=\E[028q, kf29=\E[029q,
-- kf3=\E[003q, kf30=\E[030q, kf31=\E[031q, kf32=\E[032q,
-- kf33=\E[033q, kf34=\E[034q, kf35=\E[035q, kf36=\E[036q,
-- kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q,
-- kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q,
-- kil1=\E[140q, kind=\E[151q, knp=\E[154q, kpp=\E[150q,
-- kri=\E[155q, krmir=\E[4l, rev=\E[7m, ri=\EL, rin=\E[%p1%dT,
-- rmacs=\E(B, rmir=\E[4l, rmso=\E[0m, rmul=\E[0m, rs2=\Ec,
-- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
-- sgr0=\E[0m, smacs=\E(0, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-- tbc=\E[3g,
--ibm5081|hft|IBM Megapel Color display,
-- acsc=jjkkllmmnnqqttuuvvwwxx, blink@, bold@, s0ds=\E(B,
-- s1ds=\E(0, sgr0=\E[0m\E(B, use=ibm5154,
--ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display,
-- eslok, hs,
-- lines#33,
-- dsl=\Ej\EYA \EI\Ek, fsl=\Ek, tsl=\Ej\EYA%+ \Eo,
-- use=ibmega-c,
--ibm8503|ibm8507|ibm8604|IBM 8503 B & W VGA display,
-- use=hft-c,
--ibm8514|IBM 8514/a color VGA display,
-- eslok, hs,
-- dsl=\Ej\EYI \EI\Ek, fsl=\Ek, tsl=\Ej\EYI%+ \Eo, use=hft,
--ibm8514-c|IBM 8514 color display with standout and underline,
-- eslok, hs,
-- lines#41,
-- cr=^M, cud1=^J, dsl=\Ej\EYI \EI\Ek, fsl=\Ek, ht=^I, ind=^J,
-- kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, tsl=\Ej\EYI%+ \Eo,
-- use=ibmega-c,
-+ clear=\EG\Ek, cub1=^H, cud1=^J, cuf1=^F,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dch1=\EE,
-+ dl1=\El, ed=\Ek, el=\EK, home=\EY\s\s, ht=^I,
-+ ich1=\EF \EF\025, ind=^J, kbs=^H, kcub1=^U, kcud1=^J,
-+ 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=^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,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\014$<1>\013@, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=\E^E01, cup=\013%p1%{64}%+%c\E\005%p2%2d,
-+ dl1=\E\017$<13>, il1=\E\016$<13>, ind=^J, kf0=\E0, kf1=\E1,
-+ kf2=\E2, kf3=\E3, kf4=\E4, kf5=\E5, kf6=\E6, kf7=\E7, kf8=\E8,
-+ kf9=\E9, rmso=^O, sgr0=^O, smso=^Y^^^N,
-
-+#### C. Itoh Electronics
- #
--# AIX entries. IBM ships these with AIX 3.2.5.
--# -- added rc, sc based on manpage -TD
--# Note that we could use ibm+16color, but that is not how IBM defines this one.
--aixterm|IBM Aixterm Terminal Emulator,
-- eslok, hs,
-- acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E,
-- fsl=\E[?F, rc=\E8, ri@, s0ds=\E(B, s1ds=\E(0, sc=\E7,
-- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
-- sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6154,
--aixterm-m|IBM AIXterm Monochrome Terminal Emulator,
-- eslok, hs,
-- acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E,
-- fsl=\E[?F, ri@, s0ds=\E(B, s1ds=\E(0,
-- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m,
-- sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6153,
--aixterm-m-old|old IBM AIXterm Monochrome Terminal Emulator,
-- eslok, hs,
-- bold=\E[1m, dsl=\E[?E, fsl=\E[?F, ri@,
-- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m,
-- tsl=\E[?%p1%dT, use=ibm6153,
--jaixterm|IBM Kanji Aixterm Terminal Eemulator,
-- acsc@, use=aixterm,
--jaixterm-m|IBM Kanji AIXterm Monochrome Terminal Emulator,
-- acsc@, use=aixterm-m,
-+# As of 1995 these people no longer make terminals (they're still in the
-+# printer business). Their terminals were all clones of the DEC VT series.
-+# They're located in Orange County, CA.
-+#
-+
-+# CIT 80 - vt-52 emulator, the termcap has been modified to remove
-+# the delay times and do an auto tab set rather than the indirect
-+# file used in vt100.
-+cit80|cit-80|citoh 80,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ clear=\E[H\EJ, cr=^M, cub1=^H, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\EJ, el=\EK, ff=^L,
-+ ind=^J, is2=\E>, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-+ kcuu1=\EOA, rmkx=\E[?1l\E>, smkx=\E[?1h\E=,
-+# From: Tim Wood <mtxinu!sybase!tim> Fri Sep 27 09:39:12 PDT 1985
-+# (cit101: added <rmam>/<smam> based on init string, merged this with c101 -- esr)
-+cit101|citc|C.itoh fast vt100,
-+ OTbs, am, xenl,
-+ cols#80, lines#24,
-+ bel=^G, clear=\E[H\E[2J, cnorm=\E[V\E8, cub1=^H, cud1=\E[B,
-+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-+ cvvis=\E7\E[U, dch1=\E[P, dl1=\E[M, ed=\E[J, el=\E[K,
-+ flash=\E[?5h$<200/>\E[?5l, ich1=\E[@, il1=\E[L,
-+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[3g\E[>5g,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-+ rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-+ sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m,
-+ smul=\E[4m,
-+# CIE Terminals CIT-101e from Geoff Kuenning <callan!geoff> via BRL
-+# The following termcap entry was created from the Callan cd100 entry. The
-+# last two lines (with the capabilities in caps) are used by RM-cobol to allow
-+# full selection of combinations of reverse video, underline, and blink.
-+# (cit101e: removed unknown :f0=\EOp:f1=\EOq:f2=\EOr:f3=\EOs:f4=\EOt:f5=\EOu:\
-+# f6=\EOv:f7=\EOw:f8=\EOx:f9=\EOy:AB=\E[0;5m:AL=\E[m:AR=\E[0;7m:AS=\E[0;5;7m:\
-+# :NB=\E[0;1;5m:NM=\E[0;1m:NR=\E[0;1;7m:NS=\E[0;1;5;7m: -- esr)
-+cit101e|C. Itoh CIT-101e,
-+ OTbs, OTpt, am, mir, msgr,
-+ cols#80, it#8, lines#24,
-+ acsc=, clear=\E[H\E[J, cnorm=, csr=\E[%i%p1%2d;%p2%2dr,
-+ cub1=\E[D, cud1=\E[B, cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH,
-+ cuu1=\E[A, cvvis=\E[?1l\E[?4l\E[?7h, dch1=\E[P, dl1=\E[M,
-+ ed=\E[J, el=\E[K, if=/usr/share/tabset/vt100, il1=\E[L,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf0=\EOT,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOm, kf6=\EOl,
-+ kf7=\EOM, kf8=\EOn, rc=\E8, ri=\EM, rmacs=^O, rmir=\E[4l,
-+ rmkx=\E>, rmso=\E[m, rmul=\E[m, sc=\E7, smacs=^N, smir=\E[4h,
-+ smkx=\E=, smso=\E[7m, smul=\E[4m,
-+# From: David S. Lawyer, June 1997:
-+# The CIT 101-e was made in Japan in 1983-4 and imported by CIE
-+# Terminals in Irvine, CA. It was part of CITOH Electronics. In the
-+# late 1980's CIT Terminals went out of business.
-+# There is no need to use the initialization string is=... (by invoking
-+# tset or setterm etc.) provided that the terminal has been manually set
-+# up (and the setup saved with ^S) to be compatible with this termcap. To be
-+# compatible it should be in ANSI mode (not VT52). A set-up that
-+# works is to set all the manually setable stuff to factory defaults
-+# by pressing ^D in set-up mode. Then increse the brighness with the
-+# up-arrow key since the factory default will likely be dim on an old
-+# terminal. Then change any options you want (provided that they are
-+# compatible with the termcap). For my terminal I set: Screen
-+# Background: light; Keyclicks: silent; Auto wraparound: on; CRT saver:
-+# 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),
-+ 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,
-+ civis=\E[1v, clear=\E[H\E[J, cnorm=\E[0;3;4v, cr=^M,
-+ 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[3;5v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-+ dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l\E[?5h$<200/>,
-+ 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=^J, indn=\E[%p1%dS,
-+ is2=\E<\E>\E[?1l\E[?3l\E[?4l\E[?5h\E[?7h\E[?8h\E[3g\E[>5g\E(B\E[m\E[20l\E[1;24r\E[24;1H,
-+ kbs=\177, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, nel=\EE, rc=\E8,
-+ rev=\E[7m, ri=\EM, rin=\E[%p1%dT, rmcup=, rmir=\E[4l,
-+ rmso=\E[m, rmul=\E[m, rs1=\Ec\E[?7h\E[>5g, sc=\E7,
-+ sgr0=\E[m, smcup=\E[>5g\E[?7h\E[?5h, smir=\E[4h,
-+ smso=\E[7m, smul=\E[4m, tbc=\E[3g, u6=\E[%i%p1%d;%p2%dR,
-+ u7=\E[6n, u8=\E[?6c, u9=\E[c,
-+cit101e-n|CIT-101e w/o am,
-+ am@,
-+ cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J,
-+ use=cit101e,
-+cit101e-132|CIT-101e with 132 cols,
-+ cols#132,
-+ kbs=^H, kcub1=^H, kcud1=^J, use=cit101e,
-+cit101e-n132|CIT-101e with 132 cols w/o am,
-+ am@,
-+ cols#132,
-+ cvvis=\E[?1l\E[?4l\E[?7l, kbs=^H, kcub1=^H, kcud1=^J,
-+ use=cit101e,
-+# CIE Terminals CIT-500 from BRL
-+# The following SET-UP modes are assumed for normal operation:
-+# GENERATE_XON/XOFF:YES DUPLEX:FULL NEWLINE:OFF
-+# AUTOWRAP:ON MODE:ANSI SCREEN_LENGTH:64_LINES
-+# DSPLY_CNTRL_CODES?NO PAGE_WIDTH:80 EDIT_MODE:OFF
-+# Other SET-UP modes may be set for operator convenience or communication
-+# requirements.
-+# Hardware tabs are assumed to be set every 8 columns; they can be set up
-+# by the "reset", "tset", or "tabs" utilities. No delays are specified; use
-+# "stty ixon -ixany" to enable DC3/DC1 flow control!
-+# (cit500: I added <rmam>/<smam> based on the init string -- esr)
-+cit500|CIE Terminals CIT-500,
-+ OTbs, OTpt, mir, msgr, xon,
-+ OTkn#10, cols#80, it#8, lines#64, vt#3,
-+ acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
-+ clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-+ cuu=\E[%p1%dA, cuu1=\EM, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-+ ed=\EJ, el=\EK, home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL,
-+ il1=\E[L, ind=^J, is2=\E<\E)0, kbs=^H, kcbt=\E[Z, kcub1=\EOD,
-+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[P, kdl1=\E[M,
-+ ked=\EJ, kel=\EK, kf0=\EOP, kf1=\EOQ, kf2=\EOR, kf3=\EOS,
-+ kf4=\EOU, kf5=\EOV, kf6=\EOW, kf7=\EOX, kf8=\EOY, kf9=\EOZ,
-+ khome=\E[H, kich1=\E[4h, kil1=\E[L, krmir=\E[4l, lf0=PF1,
-+ lf1=PF2, lf2=PF3, lf3=PF4, lf4=F15, lf5=F16, lf6=F17, lf7=F18,
-+ lf8=F19, lf9=F20, ll=\E[64H, nel=\EE, rc=\E8, rev=\E[7m,
-+ ri=\EM, rmacs=^O, rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>,
-+ rmso=\E[m, rmul=\E[m,
-+ rs1=\E<\E2\E[20l\E[?6l\E[r\E[m\E[q\E(B\017\E)0\E>,
-+ 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,
-
--# This flavor is adapted from xterm, in turn from aixterm documentation -TD
--aixterm-16color|IBM Aixterm Terminal Emulator with 16 colors,
-- use=ibm+16color, use=aixterm,
-+# C. Itoh printers begin here
-+citoh|ci8510|8510|c.itoh 8510a,
-+ cols#80, it#8,
-+ bold=\E!, cub1@,
-+ is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073.,
-+ rep=\ER%p2%03d%p1%c, ri=\Er, rmul=\EY, sgr0=\E"\EY,
-+ smul=\EX, use=lpr,
-+citoh-pica|citoh in pica,
-+ is1=\EN, use=citoh,
-+citoh-elite|citoh in elite,
-+ cols#96,
-+ is1=\EE,
-+ is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089.,
-+ use=citoh,
-+citoh-comp|citoh in compressed,
-+ cols#136,
-+ is1=\EQ,
-+ is2=\E(009\,017\,025\,033\,041\,049\,057\,065\,073\,081\,089\,097\,105\,113\,121\,129.,
-+ use=citoh,
-+# citoh has infinite cols because we don't want lp ever inserting \n\t**.
-+citoh-prop|citoh-ps|ips|citoh in proportional spacing mode,
-+ cols#32767,
-+ is1=\EP, use=citoh,
-+citoh-6lpi|citoh in 6 lines per inch mode,
-+ is3=\EA, use=citoh,
-+citoh-8lpi|citoh in 8 lines per inch mode,
-+ lines#88,
-+ is3=\EB, use=citoh,
-
--#### Infoton/General Terminal Corp.
-+#### Control Data (cdc)
- #
-
--# gt100 sounds like something DEC would come out with. Let's hope they don't.
--i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100),
-+cdc456|cdc 456 terminal,
- OTbs, am,
- cols#80, lines#24,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- 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=^J, rmso=\Ea, smso=\Eb,
--i400|infoton 400,
-+ bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E1%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dl1=\EJ, ed=^X,
-+ el=^V, home=^Y, il1=\EL, ind=^J,
-+
-+# Assorted CDC terminals from BRL (improvements by DAG & Ferd Brundick)
-+cdc721|CDC Viking,
- OTbs, am,
-- cols#80, lines#25,
-- bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, 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=^J, 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=^M, cub1=^Z, cud1=^J, cuf1=^Y,
-- cup=\037%p1%c%p2%c, cuu1=^\, ed=^K, home=^H, ind=^J, ll=^H^\,
--# (infoton: used to have the no-ops <lh#0>, <lw#0>, <nlab#0> -- esr)
--infoton,
-- am,
-+ clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c,
-+ cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I,
-+ kcuu1=^W, khome=^Y,
-+cdc721ll|CDC Vikingll,
-+ OTbs, am,
-+ cols#132, lines#24,
-+ clear=^L, cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c,
-+ cuu1=^W, el=^K, home=^Y, kcub1=^H, kcud1=^J, kcuf1=^I,
-+ kcuu1=^W, khome=^Y,
-+# (cdc752: the BRL entry had :ll=\E1 ^Z: commented out
-+cdc752|CDC 752,
-+ OTbs, am, bw, xhp,
- cols#80, lines#24,
-- bel=^G, clear=^L, cr=^M, cub1=^Z, cud1=^J, cuf1=^Y, cuu1=^\,
-- ed=^K, ind=^J, ll=^H^\,
-+ bel=^G, clear=\030\E1\s\s, cr=^M, cub1=^H, cud1=^J, cuf1=^U,
-+ cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z, el=^V,
-+ home=\E1\s\s, ind=^J, ll=^Y, rs1=\E1 \030\002\003\017,
-+# CDC 756
-+# The following switch/key settings are assumed for normal operation:
-+# 96 chars SCROLL FULL duplex not BLOCK
-+# Other switches may be set according to communication requirements.
-+# Insert/delete-character cannot be used, as the whole display is affected.
-+# "so" & "se" are commented out until jove handles "sg" correctly.
-+cdc756|CDC 756,
-+ OTbs, am, bw,
-+ OTkn#10, cols#80, lines#24,
-+ bel=^G, clear=^Y^X, cr=^M, cub1=^H, cud1=^J, cuf1=^U,
-+ cup=\E1%p2%{32}%+%c%p1%{32}%+%c, cuu1=^Z,
-+ dl1=\EJ$<6*/>, ed=^X, el=^V, home=^Y, il1=\EL$<6*/>, ind=^J,
-+ kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z, kdch1=\EI,
-+ kdl1=\EL, ked=^X, kel=^V, kf0=\EA, kf1=\EB, kf2=\EC, kf3=\ED,
-+ kf4=\EE, kf5=\EF, kf6=\EG, kf7=\EH, kf8=\Ea, kf9=\Eb, khome=^Y,
-+ khts=^O, kich1=\EK, kil1=\EL, lf0=F1, lf1=F2, lf2=F3, lf3=F4,
-+ lf4=F5, lf5=F6, lf6=F7, lf7=F8, lf8=F9, lf9=F10, ll=^Y^Z,
-+ rs1=\031\030\002\003\017,
-+#
-+# CDC 721 from Robert Viduya, Ga. Tech. <ihnp4!gatech!gitpyr!robert> via BRL.
-+#
-+# Part of the long initialization string defines the "DOWN" key to the left
-+# of the tab key to send an ESC. The real ESC key is positioned way out
-+# in right field.
-+#
-+# The termcap won't work in 132 column mode due to the way it it moves the
-+# cursor. Termcap doesn't have the capability (as far as I could tell) to
-+# handle the 721 in 132 column mode.
-+#
-+# (cdc721: changed :ri: to :sr: -- esr)
-+cdc721-esc|Control Data 721,
-+ OTbs, OTpt, am, bw, msgr, xon,
-+ OTkn#10, cols#80, it#8, lines#30,
-+ bel=^G, blink=^N, cbt=^^^K, clear=^L, cub1=^H, cud1=^Z,
-+ cuf1=^X, cup=\002%p2%{32}%+%c%p1%{32}%+%c, cuu1=^W,
-+ dch1=^^N, dim=^\, dl1=^^Q, ed=^^P, el=^K, home=^Y, hts=^^^RW,
-+ ich1=^^O, il1=^^R, ind=\036W =\036U, invis=^^^R[,
-+ is2=\036\022B\003\036\035\017\022\025\035\036E\036\022H\036\022J\036\022L\036\022N\036\022P\036\022Q\036\022\036\022\^\036\022b\036\022i\036W =\036\022Z\036\011C1-` `!k/o,
-+ kbs=^H, kcub1=^H, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^q,
-+ kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v, kf6=^^w, kf7=^^x,
-+ kf8=^^y, kf9=^^z, khome=^Y, ll=^B =, rev=^^D,
-+ ri=\036W =\036V, rmir=, rmkx=^^^Rl, rmso=^^E, rmul=^],
-+ sgr0=\017\025\035\036E\036\022\\, smir=, smkx=^^^Rk,
-+ smso=^^D, smul=^\, tbc=^^^RY,
-+
-+#### Getronics
-+#
-+# Getronics is a Dutch electronics company that at one time was called
-+# `Geveke' and made async terminals; but (according to the company itself!)
-+# they've lost all their documentation on the command set. The hardware
-+# documentation suggests the terminals were actually manufactured by a
-+# Taiwanese electronics company named Cal-Comp. There are known
-+# to have been at least two models, the 33 and the 50.
-+#
-+
-+# The 50 seems to be a top end vt220 clone, with the addition of a higher
-+# screen resolution, a larger screen, at least 1 page of memory above and
-+# below the screen, apparently pages of memory right and left of the screen
-+# which can be panned, and about 75 function keys (15 function keys x normal,
-+# shift, control, func A, func B). It also has more setup possibilities than
-+# the vt220. The monitor case is dated November 1978 and the keyboard case is
-+# May 1982.
-+#
-+# The vt100 emulation works as is. The entry below describes the rather
-+# 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,
-+ bw, mir, msgr,
-+ cols#80, lines#25,
-+ acsc=0_aaffggh jjkkllmmnnooqqssttuuvvwwxx, bel=^G,
-+ blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[2J, cr=^M,
-+ 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,
-+ dch=\E[%p1%dX, dch1=\E[X, dim=\E[2m, dl=\E[%p1%dM,
-+ dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5h\E[?5l, home=\E[H,
-+ hpa=\E[%i%p1%dG, ht=^I, ich=\E[%p1%d@, ich1=\E[@,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, invis=\E[8m,
-+ is2=\E0;2m\E[1;25r\E[25;1H\E[?3l\E[?7h\E[?8h,
-+ ka1=\E[f, ka3=\EOQ, kb2=\EOP, kbs=^H, kc1=\EOR, kc3=\EOS,
-+ kcub1=\E[D, kcud1=\E[A, kcuf1=\E[C, kcuu1=\E[A, kdch1=\177,
-+ kdl1=\EOS, kf0=\E010, kf1=\E001, kf10=\E011, kf2=\E002,
-+ kf3=\E003, kf4=\E004, kf5=\E005, kf6=\E006, kf7=\E007,
-+ kf8=\E008, kf9=\E009, khome=\E[f, lf2=A delete char,
-+ lf3=A insert line, lf4=A delete line, lf5=A clear,
-+ lf6=A ce of/cf gn, lf7=A print, lf8=A on-line,
-+ lf9=A funcl0=A send, nel=^M^J, rev=\E[7m, rmacs=\E[3l,
-+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E>, rmso=\E[0;2m,
-+ rmul=\E[0m, sgr0=\E[0;2m, smacs=\E3h, smam=\E?7h,
-+ smir=\E[4h, smkx=\E=, smso=\E[2;7m, smul=\E[4m, tbc=\E[3g,
-+ vpa=\E[%i%p1%dd,
-+
-+#### Human Designed Systems (Concept)
-+#
-+# Human Designed Systems
-+# 400 Fehley Drive
-+# King of Prussia, PA 19406
-+# Vox: (610)-277-8300
-+# Fax: (610)-275-5739
-+# Net: support@hds.com
-+#
-+# John Martin <john@hds.com> is their termcap expert. They're mostly out of
-+# the character-terminal business now (1995) and making X terminals. In
-+# particular, the whole `Concept' line described here was discontinued long
-+# ago.
-+#
-+
-+# From: <vax135!hpk> Sat Jun 27 07:41:20 1981
-+# Extensive changes to c108 by arpavax:eric Feb 1982
-+# Some unknown person at SCO then translated it to terminfo.
-+#
-+# There seem to be a number of different versions of the C108 PROMS
-+# (with bug fixes in its Z-80 program).
-+#
-+# The first one that we had would lock out the keyboard of you
-+# sent lots of short lines (like /usr/dict/words) at 9600 baud.
-+# Try that on your C108 and see if it sends a ^S when you type it.
-+# If so, you have an old version of the PROMs.
-+#
-+# You should configure the C108 to send ^S/^Q before running this.
-+# It is much faster (at 9600 baud) than the c100 because the delays
-+# are not fixed.
-+# new status line display entries for c108-8p:
-+# <is3> - init str #3 - setup term for status display -
-+# set programmer mode, select window 2, define window at last
-+# line of memory, set bkgnd stat mesg there, select window 0.
-+#
-+# <tsl> - to status line - select window 2, home cursor, erase to
-+# end-of-window, 1/2 bright on, goto(line#0, col#?)
-+#
-+# <fsl> - from status line - 1/2 bright off, select window 0
-+#
-+# <dsl> - disable status display - set bkgnd status mesg with
-+# illegal window #
-+#
-+# There are probably more function keys that should be added but
-+# I don't know what they are.
-+#
-+# No delays needed on c108 because of ^S/^Q handshaking
-+#
-+c108|concept108|c108-8p|concept108-8p|concept 108 w/8 pages,
-+ is3=\EU\E z"\Ev\001\177 !p\E ;"\E z \Ev \001\177p\Ep\n,
-+ rmcup=\Ev \001\177p\Ep\r\n, use=c108-4p,
-+c108-4p|concept108-4p|concept 108 w/4 pages,
-+ OTbs, eslok, hs, xon,
-+ pb@,
-+ acsc=jEkTl\\mMqLxU, cnorm=\Ew, cr=^M,
-+ cup=\Ea%p1%?%p1%{95}%>%t\001%{96}%-%;%{32}%+%c%p2%?%p2%{95}%>%t\001%{96}%-%;%{32}%+%c,
-+ cvvis=\EW, dch1=\E 1$<16*>, dsl=\E ;\177, fsl=\Ee\E z\s,
-+ ind=^J, is1=\EK\E!\E F,
-+ is3=\EU\E z"\Ev\177 !p\E ;"\E z \Ev \001 p\Ep\n,
-+ 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,
-+ 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,
-+ 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,
-+ cols#132,
-+ is1=\E F\E", rmcup=\Ev ^A0\001D\Ep\r\n,
-+ smcup=\EU\Ev 8\001D\Ep\r, use=c108-8p,
-
--# The ICL6402 was actually the Kokusai Display System 6402.
--# The 6404 was the KDS7372 (color version of the 6402).
-+# Concept 100:
-+# These have only window relative cursor addressing, not screen
-+# relative. To get it to work right here, smcup/rmcup (which
-+# were invented for the concept) lock you into a one page
-+# window for screen style programs.
- #
--# ICL6404 control codes follow:
-+# To get out of the one page window, we use a clever trick:
-+# we set the window size to zero ("\Ev " in rmcup) which the
-+# terminal recognizes as an error and resets the window to all
-+# of memory.
- #
--#code function
--#~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--#ctrl-A set SOM position at cursor position
--#ctrl-G Bell
--#ctrl-H Backspace
--#ctrl-I Horiz tab
--#ctrl-J Linefeed
--#ctrl-K Cursor up
--#ctrl-L Cursor right
--#ctrl-M Carriage return
--#ctrl-N Disable xon/xoff to host
--#ctrl-O Enable xon/xoff to host
--#ctrl-R Enable bidirectional mode
--#ctrl-T Disable bidirectional mode
--#ctrl-V Cursor down
--#ctrl-Z Clear unprotected data to insert char
--#ctrl-^ Cursor home
--#ctrl-_ Newline
-+# This trick works on c100 but does not on c108, sigh.
- #
--#ESC lead-in char for multiple character command
-+# Some tty drivers use cr3 for concept, others use nl3, hence
-+# the delays on cr and ind below. This padding is only needed at
-+# 9600 baud and up. One or the other is commented out depending on
-+# local conventions.
- #
--#ESC space R execute power on sequence
--#ESC ! p1 p2 define scroll region:
--# p1 = scroll top line: 20h - 37h
--# p1 = scroll bottom line: 20h - 37h
--#ESC " unlock keyboard
--#ESC # lock keyboard
--#ESC $ Semi-graphics mode on
--#ESC % Semi-graphics mode off
--#ESC & protect mode on
--#ESC ' protect mode off
--#ESC ( write protect mode off (full intensity)
--#ESC ) write protect mode on (half intensity)
-+# 2 ms padding on <rmcup> isn't always enough. 6 works fine. Maybe
-+# less than 6 but more than 2 will work.
- #
--#ESC * clear screen
--#ESC + clear unprotected data to insert char
--#ESC , clear unprotected data to half intensity spaces
--#ESC - p1 p2 p3 p4 address cursor to page, row, column:
--# p1 = page number 0 - 3
--# p2 = row 20h - 7fh
--# p3 = column (lo) 20h - 7fh
--# p4 = column (hi) 20h - 21h (only 132 col)
--#ESC . p1 set cursor style:
--# p1 = 0 invisible cursor
--# p1 = 1 block blinking cursor
--# p1 = 2 block steady cursor
--# p1 = 3 underline blinking cursor
--# p1 = 4 underline steady cursor
--#ESC / transmit cursor location (page, row, column)
--#ESC 0 p1 p2 p3 p4 program edit key:
--# p1 = edit key code: '@'-'S', '`'-'s'
--# p2 p3 p4 = program data (3 bytes)
-+# Note: can't use function keys f7-f10 because they are
-+# indistinguishable from arrow keys (!), also, del char and
-+# clear eol use xon/xoff so they probably won't work very well.
- #
--#ESC 1 set tab
--#ESC 2 clear tab at cursor
--#ESC 3 clear all tabs
--#ESC 4 send unprotect line to cursor
--#ESC 5 send unprotect page to cursor
--#ESC 6 send line to cursor
--#ESC 7 send page to cursor
--#ESC 8 n set scroll mode:
--# n = 0 set jump scroll
--# n = 1 set smooth scroll
--#ESC 9 n control display:
--# n = 0 display off
--# n = 1 display on
--#ESC : clear unprotected data to null
--#ESC ; clear unprotected data to insert char
-+# Also note that we don't define insrt/del char/delline/eop/send
-+# because they don't transmit unless we reset them - I figured
-+# it was a bad idea to clobber their definitions.
- #
--#ESC < keyclick on
--#ESC = p1 p2 address cursor to row, column
--# p1 = row 20h - 7fh
--# p2 = column (lo) 20h - 7fh
--# p3 = column (hi) 20h - 21h (only 132 col)
--#ESC > keyclick off
--#ESC ? transmit cursor location (row, column)
-+# The <mc5> sequence changes the escape character to ^^ so that
-+# escapes will be passed through to the printer. Only trouble
-+# is that ^^ won't be - ^^ was chosen to be unlikely.
-+# Unfortunately, if you're sending raster bits through to be
-+# plotted, any character you choose will be likely, so we lose.
- #
--#ESC @ copy print mode on
--#ESC A copy print mode off
--#ESC B block mode on
--#ESC C block mode off (conversation mode)
--#ESC D F set full duplex
--#ESC D H set half duplex
--#ESC E line insert
--#ESC F p1 p2 set page colour (p1 = f/grnd, p2 = b/grnd)
--# 0 = black, 1 = red, 2 = green, 3 = yellow
--# 4 = blue, 5 = magenta, 6 = cyan, 7 = white
--#ESC G n set serial field attribute (n = 30h - 3Fh)
--#ESC H n full graphics mode:
--# n = 0 exit full graphics mode
--# n = 1 enter full graphics mode
--#ESC I back tab
--#ESC J back page
--#ESC K forward page
-+# \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,
-+ 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,
-+ cub1=^H, cud1=^J, cuf1=\E=,
-+ cup=\Ea%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E;,
-+ dch1=\E\021$<16*>, dim=\EE, dl1=\E\002$<3*>,
-+ ed=\E\005$<16*>, el=\E\025$<16>, flash=\Ek$<200>\EK,
-+ ht=\011$<8>, il1=\E\022$<3*>, ind=^J, 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@ \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?,
-+ 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,
-+ rep=\Er%p1%c%p2%{32}%+%c$<.2*>, rev=\ED,
-+ rmcup=\Ev $<6>\Ep\r\n, rmir=\E\s\s, rmkx=\Ex,
-+ 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,
-+ cnorm@, cvvis@, flash=\EK$<200>\Ek, is1=\Ek, rmso=\Ee,
-+ smso=\EE, use=c100,
-+oc100|oconcept|c100-1p|old 1 page concept 100,
-+ in,
-+ is3@, use=c100,
-+
-+# From: Walter Skorski <walt@genetics1.JMP.TJU.EDU>, 16-oct-1996.
-+# Lots of notes, originally inline, but ncurses doesn't grok that.
- #
--#ESC L unformatted page print
--#ESC M L move window left (132 col mode only)
--#ESC M R move window right (132 col mode only)
--#ESC N set page edit (clear line edit)
--#ESC O set line edit (clear page edit)
--#ESC P formatted page print
--#ESC Q character insert
--#ESC R line delete
--#ESC S send message unprotected only
--#ESC T erase line to insert char
--#ESC U set monitor mode (see ESC X, ESC u)
-+# am: not available in power on mode, but turned on with \E[=107;207h in
-+# is2=. Also, \E=124l in is2= could have been used to prevent needing
-+# to specify xenl:, but that would have rendered the last space on the
-+# last line useless.
-+# bw: Not available in power on mode, but turned on with \E[=107;207h in
-+# is2=.
-+# clear: Could be done with \E[2J alone, except that vi (and probably most
-+# other programs) assume that this also homes the cursor.
-+# dsl: Go to window 2, go to the beginning of the line, use a line feed to
-+# scroll the window, and go back to window 1.
-+# is2: the string may cause a warning to be issued by tic that it
-+# found a very long line and that it suspects that a comma is missing
-+# somewhere. This warning can be ignored (unless it comes up more than
-+# once). The initialization string contains the following commands:
-+#
-+# [Setup mode items changed from factory defaults:]
-+# \E)0 set alternate character set to
-+# graphics
-+# ^O set character set to default
-+# [In case it wasn't]
-+# \E[m turn off all attributes
-+# [In case they weren't off]
-+# \E[=107; cursor wrap and
-+# 207h character wrap on
-+# \E[90;3u set Fkey definitions to "transmit"
-+# defaults
-+# \E[92;3u set cursor key definitions to
-+# "transmit" defaults
-+# \E[43;1u set shift F13 to transmit...
-+# \177\E$P\177
-+# \E[44;1u set shift F14 to transmit...
-+# \177\E$Q\177
-+# \E[45;1u set shift F15 to transmit...
-+# \177\E$R\177
-+# \E[46;1u set shift F16 to transmit...
-+# \177\E$S\177
-+# \E[200;1u set shift up to transmit...
-+# \177\E$A\177
-+# \E[201;1u set shift down to transmit...
-+# \177\E$B\177
-+# \E[202;1u set shift right to transmit...
-+# \177\E$C\177
-+# \E[203;1u set shift left to transmit...
-+# \177\E$D\177
-+# \E[204;1u set shift home to transmit...
-+# \177\E$H\177
-+# \E[212;1u set backtab to transmit...
-+# \177\E$I\177
-+# \E[213;1u set shift backspace to transmit...
-+# \177\E$^H\177
-+# \E[214;1u set shift del to transmit...
-+# "\E$\177"
-+# [Necessary items not mentioned in setup mode:]
-+# \E[2!w move to window 2
-+# \E[25;25w define window as line 25 of memory
-+# \E[!w move to window 1
-+# \E[2*w show current line of window 2 as
-+# status line
-+# \E[2+x set meta key to use high bit
-+# \E[;3+} move underline to bottom of character
-+#
-+# All Fkeys are set to their default transmit definitions with \E[90;3u
-+# in is2=. IMPORTANT: to use this terminal definition, the "quit" stty
-+# setting MUST be redefined or deactivated, because the default is
-+# contained in almost all of this terminal's Fkey strings! If for some
-+# reason "quit" cannot be altered, the Fkeys can, but it would be
-+# necessary to change ^| to ^] in all of these definitions, and add
-+# \E[2;029!t to is2.
-+# lines: is set to 24 because this terminal refuses to treat the 25th
-+# line normally.
-+# ll: Not available in power on mode, but turned on with \E[=107;207h in
-+# is2=.
-+# lm: Pointless, given that this definition locks a single screen of
-+# memory into view, but what the hey...
-+# rmso: Could use \E[1;7!{ to turn off only bold and reverse (leaving any
-+# other attributes alone), but some programs expect this to turn off
-+# everything.
-+# rmul: Could use \E[4!{ to turn off only underline (leaving any other
-+# attributes alone), but some programs expect this to turn off
-+# everything.
-+# sgr: Attributes are set on this terminal with the string \E[ followed by
-+# a list of attribute code numbers (in decimal, separated by
-+# semicolons), followed by the character m. The attribute code
-+# numbers are:
-+# 1 for bold;
-+# 2 for dim (which is ignored in power on mode);
-+# 4 for underline;
-+# 5 for blinking;
-+# 7 for inverse;
-+# 8 for not displayable; and
-+# =99 for protected (except that there are strange side
-+# effects to protected characters which make them inadvisable).
-+# The mapping of terminfo parameters to attributes is as follows:
-+# %p1 (standout) = bold and inverse together;
-+# %p2 (underline) = underline;
-+# %p3 (reverse) = inverse;
-+# %p4 (blink) = blinking;
-+# %p5 (dim) is ignored;
-+# %p6 (bold) = bold;
-+# %p7 (invisible) = not displayable;
-+# %p8 (protected) is ignored; and
-+# %p9 (alt char set) = alt char set.
-+# The code to do this is:
-+# \E[0 OUTPUT \E[0
-+# %?%p1%p6%O IF (standout; bold) OR
-+# %t;1 THEN OUTPUT ;1
-+# %; ENDIF
-+# %?%p2 IF underline
-+# %t;4 THEN OUTPUT ;4
-+# %; ENDIF
-+# %?%p4 IF blink
-+# %t;5 THEN OUTPUT ;5
-+# %; ENDIF
-+# %?%p1%p3%O IF (standout; reverse) OR
-+# %t;7 THEN OUTPUT ;7
-+# %; ENDIF
-+# %?%p7 IF invisible
-+# %t;8 THEN OUTPUT ;8
-+# %; ENDIF
-+# m OUTPUT m
-+# %?%p9 IF altcharset
-+# %t^N THEN OUTPUT ^N
-+# %e^O ELSE OUTPUT ^O
-+# %; ENDIF
-+# sgr0: Everything is turned off (including alternate character set), since
-+# there is no way of knowing what it is that the program wants turned
-+# off.
-+# smul: The "underline" attribute is reconfigurable to an overline or
-+# strikethru, or (as done with \E[;3+} in is2=), to a line at the true
-+# bottom of the character cell. This was done to allow for more readable
-+# underlined characters, and to be able to distinguish between an
-+# underlined space, an underscore, and an underlined underscore.
-+# xenl: Terminal can be configured to not need this, but this "glitch"
-+# behavior is actually preferable with autowrap terminals.
- #
--#ESC V n select video attribute mode:
--# n = 0 serial field attribute mode
--# n = 1 parallel character attribute mode
--#ESC V 2 n define line attribute:
--# n = 0 single width single height
--# n = 1 single width double height
--# n = 2 double width single height
--# n = 3 double width double height
--#ESC V 3 n select character font:
--# n = 0 system font
--# n = 1 user defined font
--#ESC V 4 n select screen mode:
--# n = 0 page screen mode
--# n = 1 virtual screen mode
--#ESC V 5 n control mouse mode:
--# n = 0 disable mouse
--# n = 1 enable sample mode
--# n = 2 send mouse information
--# n = 3 enable request mode
--#ESC W character delete
--#ESC X clear monitor mode (see ESC U, ESC u)
--#ESC Y erase page to insert char
-+# Parameters kf31= thru kf53= actually contain the strings sent by the shifted
-+# Fkeys. There are no parameters for shifted Fkeys in terminfo. The is2
-+# string modifies the 'O' in kf43 to kf46 to a '$'.
- #
--#ESC Z n send user/status line:
--# n = 0 send user line
--# n = 1 send status line
--# n = 2 send terminal ID
--#ESC [ p1 p2 p3 set character attribute (parallel char mode):
--# p1: 0 = normal
--# 1 = blank
--# 2 = blink
--# 3 = blink blank (= blank)
--# 4 = reverse
--# 5 = reverse blank
--# 6 = reverse blink
--# 7 = reverse blink blank (= reverse blank)
--# 8 = underline
--# 9 = underline blank
--# : = underline blink
--# ; = underline blink blank
--# < = reverse underline
--# = = reverse underline blank
--# > = reverse underline blink
--# ? = reverse underline blink blank
--# p2, p3: f/grnd, b/grnd colour
--# (see ESC F for colours)
--# use ZZ for mono, eg.
--# ESC [ 0 Z Z for normal
--# ESC [ 4 Z Z for inverse etc.
-+# kcbt was originally ^I but redefined in is2=.
-+# kHOM was \E[H originally but redefined in is2=, as were a number of
-+# other keys.
-+# kDC was originally \177 but redefined in is2=.
- #
--#ESC \ n set page size:
--# n = 1 24 lines/page
--# n = 2 48 lines/page
--# n = 3 72 lines/page
--# n = 4 96 lines/page
--#ESC ] n set Wordstar mode:
--# n = 0 normal (KDS7372) mode
--# n = 1 Wordstar mode
-+# kbs: Shift was also ^H originally but redefined as \E$^H in is2=.
-+# tsl: Go to window 2, then do an hpa=.
- #
--#ESC b set foreground colour screen
-+#------- flash=\E[8;3!}^G\E[3;3!}
-+#------- flash=\E[?5h$<100>\E[?5l
-+# There are two ways to flash the screen, both of which have their drawbacks.
-+# The first is to set the bell mode to video, transmit a bell character, and
-+# set the bell mode back - but to what? There is no way of knowing what the
-+# user's old bell setting was before we messed with it. Worse, the command to
-+# set the bell mode also sets the key click volume, and there is no way to say
-+# "leave that alone", or to know what it's set to, either.
-+# The second way to do a flash is to set the screen to inverse video, pad for a
-+# tenth of a second, and set it back - but like before, there's no way to know
-+# that the screen wasn't ALREADY in inverse video, or that the user may prefer
-+# it that way. The point is moot anyway, since vi (and probably other
-+# programs) assume that by defining flash=, you want the computer to use it
-+# INSTEAD of bel=, rather than as a secondary type of signal.
- #
--#ESC c n enter self-test mode:
--# n = 0 exit self test mode
--# n = 1 ROM test
--# n = 2 RAM test
--# n = 3 NVRAM test
--# n = 4 screen display test
--# n = 5 main/printer port test
--# n = 6 mouse port test
--# n = 7 graphics board test
--# n = 8 graphics memory test
--# n = 9 display all 'E'
--# n = : display all 'H'
--#ESC d set background colour screen
-+#------- cvvis=\E[+{
-+# The is the power on setting, which is also as visible as the cursor
-+# gets.
-+#------- wind=\E[%i%p1%d;%p2%d;%p3%{1}%+%d;%p4%{1}%+%dw
-+# Windowing is possible, but not defined here because it is also used to
-+# emulate status line functions. Allowing a program to set a window could
-+# clobber the status line or render it unusable. There is additional memory,
-+# but screen scroll functions are destructive and do not make use of it.
- #
--#ESC e n program insert char (n = insert char)
--#ESC f text CR load user status line with 'text'
-+#------- dim= Not available in power on mode.
-+# You have a choice of defining low intensity characters as "half bright" and
-+# high intensity as "normal", or defining low as "normal" and high as "bold".
-+# No matter which you choose, only one of either "half bright" or "bold" is
-+# available at any time, so taking the time to override the default is
-+# pointless.
- #
--#ESC g display user status line on 25th line
--#ESC h display system status line on 25th line
--#ESC i tab
--#ESC j reverse linefeed
--#ESC k n duplex/local edit mode:
--# n = 0 duplex edit mode
--# n = 1 local edit mode
--#ESC l n select virtual screen:
--# n = 0 screen 1
--# n = 1 screen 2
--#ESC m save current config to NVRAM
--#ESC n p1 select display screen:
--# p1 = 0 screen 1
--# p1 = 1 screen 2
--# p1 = 2 screen 3
--# p1 = 3 screen 4
--#ESC o p1 p2 set characters/line and attribute:
--# p1 = 0 80 chars/line
-+#------- prot=\E[=0;99m
-+# Not defined, because it appears to have some strange side effects.
-+#------- pfkey=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%;
-+#------- pfloc=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%du\177%p2%s\177%;
-+#------- pfx=%?%p1%{24}%<%p1%{30}%>%p1%{54}%<%A%O%t\E[%p1%d;1u\177%p2%s\177%;
-+# Available, but making them available to programs is inadvisable.
-+# The code to do this is:
-+# %?%p1%{24}%< IF ((key; 24) <;
-+# %p1%{30}%> ((key; 30) >;
-+# %p1%{54}%< (key; 54) <
-+# %A ) AND
-+# %O ) OR
-+# [that is, "IF key < 24 OR (key > 30 AND key < 54)",]
-+# %t\E[ THEN OUTPUT \E[
-+# %p1%d OUTPUT (key) as decimal
-+# [next line applies to pfx only]
-+# ;1 OUTPUT ;1
-+# u OUTPUT u
-+# \177 OUTPUT \177
-+# %p2%s OUTPUT (string) as string
-+# \177 OUTPUT \177
-+# [DEL chosen as delimiter, but could be any character]
-+# [implied: ELSE do nothing]
-+# %; ENDIF
- #
--#ESC o p1 p2 set characters/line and attribute:
--# p1 = 0 80 chars/line
--# p1 = 1 132 chars/line
--# p2 = 0 single width single height
--# p2 = 1 single width double height
--# p2 = 2 double width single height
--# p2 = 3 double width double height
-+#------- rs2=
-+# Not defined since anything it might do could be done faster and easier with
-+# either Meta-Shift-Reset or the main power switch.
- #
--#ESC q insert mode on
--#ESC r edit mode on
--#ESC s send message all
--#ESC t erase line to null
--#ESC u clear monitor mode (see ESC U, ESC X)
--#ESC v autopage mode on
--#ESC w autopage mode off
--#ESC x p1 p2 p3 define delimiter code...
--#ESC y erase page to null
-+#------- smkx=\E[1!z
-+#------- rmkx=\E[!z
-+# These sequences apply to the cursor and setup keys only, not to the
-+# numeric keypad. But it doesn't matter anyway, since making these
-+# available to programs is inadvisable.
-+# For the key definitions below, all sequences beginning with \E$ are
-+# custom and programmed into the terminal via is2. \E$ also has no
-+# meaning to any other terminal.
- #
--#ESC z 2 p1 p2 p3 p4 draw quadrangle:
--# p1 = starting row
--# p2 = starting column
--# p3 = end row
--# p4 = end column
-+#------- cmdch=\E[;%p1%d!t
-+# Available, but making it available to programs is inadvisable.
-+#------- smxon=\E[1*q
-+# Available, but making it available to programs is inadvisable.
-+# Terminal will send XON/XOFF on buffer overflow.
-+#------- rmxon=\E[*q
-+# Available, but making it available to programs is inadvisable.
-+# Terminal will not notify on buffer overflow.
-+#------- smm=\E[2+x
-+#------- rmm=\E[+x
-+# Available, but making them available to programs is inadvisable.
- #
--#ESC { p1 p2 p3 p4 configure main port
--# (baud, stop bits, parity, word length)
-+# Printing:
-+# It's not made clear in the manuals, but based on other ansi/vt type
-+# terminals, it's a good guess that this terminal is capable of both
-+# "transparent print" (which doesn't copy data to the screen, and
-+# therefore needs mc5i: specified to say so) and "auxilliary print"
-+# (which does duplicate printed data on the screen, in which case mc4=
-+# and mc5= should use the \E[?4i and \E[?5i strings instead).
-+
-+hds200|Human Designed Systems HDS200,
-+ am, bw, eslok, hs, km, mir, msgr, xenl, xon,
-+ cols#80, it#8, lines#24, lm#0,
-+ acsc=``aaffggjjkkllmmnnooqqssttuuvvwwxx~~, bel=^G,
-+ blink=\E[0;5m, bold=\E[0;1m, cbt=\E[Z, civis=\E[6+{,
-+ clear=\E[H\E[J, cnorm=\E[+{, cr=^M,
-+ 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,
-+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-+ dsl=\E[2!w\r\n\E[!w, ed=\E[J, el=\E[K, el1=\E[1K,
-+ fsl=\E[!w, home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH,
-+ ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-+ invis=\E[0;8m,
-+ is2=\E)0\017\E[m\E[=107;207h\E[90;3u\E[92;3u\E[43;1u\177\E$P\177\E[44;1u\177\E$Q\177\E[45;1u\177\E$R\177\E[46;1u\177\E$S\177\E[200;1u\177\E$A\177\E[201;1u\177\E$B\177\E[202;1u\177\E$C\177\E[203;1u\177\E$D\177\E[204;1u\177\E$H\177\E[212;1u\177\E$I\177\E[213;1u\177\E$\010\177\E[214;1u"\E$\177"\E[2!w\E[25;25w\E[!w\E[2*w\E[2+x\E[;3+},
-+ kDC=\E$\177, kHOM=\E$H, kLFT=\E$D, kRIT=\E$C, kbs=^H,
-+ kcbt=\E$I, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\177, kent=^M, kf1=^\001\r, kf10=^\010\r,
-+ kf11=^\011\r, kf12=^\012\r, kf13=\EOP, kf14=\EOQ,
-+ kf15=\EOR, kf16=\EOS, kf17=^\017\r, kf18=^\018\r,
-+ kf19=^\019\r, kf2=^\002\r, kf20=^\020\r, kf21=^\021\r,
-+ kf22=^\022\r, kf23=^\023\r, kf3=^\003\r, kf31=^\031\r,
-+ kf32=^\032\r, kf33=^\033\r, kf34=^\034\r, kf35=^\035\r,
-+ kf36=^\036\r, kf37=^\037\r, kf38=^\038\r, kf39=^\039\r,
-+ kf4=^\004\r, kf40=^\040\r, kf41=^\041\r, kf42=^\042\r,
-+ kf43=\E$P, kf44=\E$Q, kf45=\E$R, kf46=\E$S, kf47=^\047\r,
-+ kf48=^\048\r, kf49=^\049\r, kf5=^\005\r, kf50=^\050\r,
-+ kf51=^\051\r, kf52=^\052\r, kf53=^\053\r, kf6=^\006\r,
-+ kf7=^\007\r, kf8=^\008\r, kf9=^\009\r, khome=\E[H,
-+ kind=\E[T, knp=\E[U, kpp=\E[V, kri=\E[S, ll=\E[H\E[A,
-+ nel=\E[E, rc=\E8, rev=\E[0;7m, ri=\EM, rmacs=^O, rmir=\E[4l,
-+ rmso=\E[m\017, rmul=\E[m\017, sc=\E7,
-+ sgr=\E[0%?%p1%p6%O%t;1%;%?%p2%t;4%;%?%p4%t;5%;%?%p1%p3%O%t;7%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, smir=\E[4h, smso=\E[0;1;7m,
-+ smul=\E[0;4m, tbc=\E[3g, tsl=\E[2!w\E[%i%p1%dG,
-+ vpa=\E[%i%p1%dd, use=ansi+pp,
-+
-+# <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,
-+ 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,
-+ clear=\E[H\E[J$<38>, cnorm=\E[=119l, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-+ cvvis=\E[=119h, dch1=\E[P, dim=\E[1!{, dl=\E[%p1%dM$<4*>,
-+ dl1=\E[M$<4>, ed=\E[J$<96>, el=\E[K$<6>, home=\E[H,
-+ hpa=\E[%p1%{1}%+%dG, ht=\011$<4>, hts=\EH, ich=\E[%p1%d@,
-+ 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,
-+ kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\E^B\r, ked=\E^D\r, kf1=\EOP, kf2=\EOQ, kf3=\EOR,
-+ kf4=\EOS, khome=\E[H, kich1=\E^A\r, kil1=\E^C\r, ll=\E[24H,
-+ mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
-+ pfloc=\E[%p1%d;0u#%p2%s#, pfx=\E[%p1%d;1u#%p2%s#,
-+ prot=\E[99m, rc=\E8, rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m,
-+ ri=\EM$<4>, rmacs=\016$<1>, rmcup=\E[w\E2\r\n,
-+ rmir=\E[4l, rmkx=\E[!z\E[0;2u, rmso=\E[7!{, rmul=\E[4!{,
-+ sc=\E7,
-+ sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;%?%p8%t99;%;m%?%p5%t\E[1!{%;%?%p9%t\017%e\016%;$<1>,
-+ sgr0=\E[m\016$<1>, smacs=\017$<1>,
-+ 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,
-+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,
-+ 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,
-+ flash=\E[=205l$<200>\E[=205h, is1=\E[=103h\E[=205h,
-+ smcup=\E[H\E[1;24;1;132w, use=avt-ns,
-+
-+# Concept AVT with status line. We get the status line using the
-+# "Background status line" feature of the terminal. We swipe the
-+# first line of memory in window 2 for the status line, keeping
-+# 191 lines of memory and 24 screen lines for regular use.
-+# The first line is used instead of the last so that this works
-+# 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.)
- #
--#ESC | p1 p2 text Ctrl-Y program function key with 'text':
--# p1 = function key code:
--# '1' - ';' normal f1- f11
--# '<' - 'F' shifted f1 - f11
--# p2 = program mode:
--# 1 = FDX
--# 2 = LOC
--# 3 = HDX
--# Ctrl-Y = terminator
--# (use Ctrl-P to escape ^P, ^Y )
-+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,
-+ use=avt+s, use=avt-ns,
-+avt-rv|avt-rv-s|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,
-+ 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,
-+ 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,
-+
-+#### Contel Business Systems.
- #
--#ESC } p1 p2 p3 p4 configure printer port
--# (baud, stop bits, parity, word length)
--#ESC ~ send system status
-+
-+# Contel c300 and c320 terminals.
-+contel300|contel320|c300|Contel Business Systems C-300 or C-320,
-+ am, in, xon,
-+ cols#80, lines#24, xmc#1,
-+ bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
-+ dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>,
-+ el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH,
-+ hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>,
-+ 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!\r, tbc=\E3,
-+# Contel c301 and c321 terminals.
-+contel301|contel321|c301|c321|Contel Business Systems C-301 or C-321,
-+ flash@, ich1@, ip@, rmso=\E!\0$<20>, smso=\E!\r$<20>,
-+ use=contel300,
-+
-+#### Data General (dg)
- #
--# Codes and info from Peter Disdale <pete@pdlmail.demon.co.uk> 12 May 1997
-+# According to James Carlson <carlson@xylogics.com> writing in January 1995,
-+# the terminals group at Data General was shut down in 1991; all these
-+# terminals have thus been discontinued.
- #
--# Entry is by esr going solely on above information and is UNTESTED.
--# 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,
--# full duplex, parallel attribute mode, display user status line, white
--# foreground, black background, normal highlight.
-+# DG terminals have function keys that respond to the SHIFT and CTRL keys,
-+# e.g., SHIFT-F1 generates a different code from F1. To number the keys
-+# sequentially, first the unmodified key codes are listed as F1 through F15.
-+# Then their SHIFT versions are listed as F16 through F30, their CTRL versions
-+# are listed as F31 through F45, and their CTRL-SHIFT versions are listed as
-+# F46 through F60. This is done in the private "includes" below whose names
-+# start with "dgkeys+".
- #
--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=^M,
-- csr=\E!%+%p1%{32}%+%p2%{32} cud1=\026, 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,
-- is1=\EC\E.3\EDF\EV1\Eg\E[0ZZ, nel=^_, rev=\E[4ZZ,
-- rmir=\Er, rmso=\E[%gh%{4}%^%Ph%gh%dZZ,
-- rmul=\E[%gh%{8}%^%Ph%gh%dZZ, rs2=\Eo1,
-- sgr=\E[%{0}%?%p1%t%{4}%|%;%?%p2%t%{8}%|%;%?%p3%t%{4}%|%;%?%p4%t%{2}%|%;%?%p7%t%{1}%|%;ZZ,
-- sgr0=\E[0ZZ, smir=\Eq, smso=\E[8ZZ, smul=\E[8ZZ, tbc=\E3,
--icl6404-w|kds7372-w|ICL 6404 aka Kokusai Display Systems 7372 132 cols,
-- rs2=\Eo1, use=icl6404,
-+# DG terminals generally support 8 bit characters. For each of these terminals
-+# two descriptions are supplied:
-+# 1) A default description for 8 bits/character communications, which
-+# uses the default DG international character set and keyboard codes.
-+# 2) A description with suffix "-7b" for 7 bits/character communications.
-+# This description must use the NON-DEFAULT native keyboard language.
-+
-+# Unmodified fkeys (kf1-kf11), Shift fkeys (kf12-kf22), Ctrl fkeys (kf23-kf33),
-+# Ctrl/Shift fdkeys (kf34-kf44).
-+
-+dgkeys+8b|Private entry describing DG terminal 8-bit ANSI mode special keys,
-+ ka1=\233020z, ka3=\233021z, kc1=\233022z, kc3=\233023z,
-+ kclr=\2332J, kcub1=\233D, kcud1=\233B, kcuf1=\233C,
-+ kcuu1=\233A, kel=\233K, kf1=\233001z, kf10=\233010z,
-+ kf11=\233011z, kf12=\233012z, kf13=\233013z,
-+ kf14=\233014z, kf15=\233000z, kf16=\233101z,
-+ kf17=\233102z, kf18=\233103z, kf19=\233104z,
-+ kf2=\233002z, kf20=\233105z, kf21=\233106z,
-+ kf22=\233107z, kf23=\233108z, kf24=\233109z,
-+ kf25=\233110z, kf26=\233111z, kf27=\233112z,
-+ kf28=\233113z, kf29=\233114z, kf3=\233003z,
-+ kf30=\233100z, kf31=\233201z, kf32=\233202z,
-+ kf33=\233203z, kf34=\233204z, kf35=\233205z,
-+ kf36=\233206z, kf37=\233207z, kf38=\233208z,
-+ kf39=\233209z, kf4=\233004z, kf40=\233210z,
-+ kf41=\233211z, kf42=\233212z, kf43=\233213z,
-+ kf44=\233214z, kf45=\233200z, kf46=\233301z,
-+ kf47=\233302z, kf48=\233303z, kf49=\233304z,
-+ kf5=\233005z, kf50=\233305z, kf51=\233306z,
-+ kf52=\233307z, kf53=\233308z, kf54=\233309z,
-+ kf55=\233310z, kf56=\233311z, kf57=\233312z,
-+ kf58=\233313z, kf59=\233314z, kf6=\233006z,
-+ kf60=\233300z, kf7=\233007z, kf8=\233008z, kf9=\233009z,
-+ khome=\233H, kprt=\233i,
-+
-+dgkeys+7b|Private entry describing DG terminal 7-bit ANSI mode special keys,
-+ ka1=\E[020z, ka3=\E[021z, kc1=\E[022z, kc3=\E[023z,
-+ kclr=\E[2J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kel=\E[K, kf1=\E[001z, kf10=\E[010z, kf11=\E[011z,
-+ kf12=\E[012z, kf13=\E[013z, kf14=\E[014z, kf15=\E[000z,
-+ kf16=\E[101z, kf17=\E[102z, kf18=\E[103z, kf19=\E[104z,
-+ kf2=\E[002z, kf20=\E[105z, kf21=\E[106z, kf22=\E[107z,
-+ kf23=\E[108z, kf24=\E[109z, kf25=\E[110z, kf26=\E[111z,
-+ kf27=\E[112z, kf28=\E[113z, kf29=\E[114z, kf3=\E[003z,
-+ kf30=\E[100z, kf31=\E[201z, kf32=\E[202z, kf33=\E[203z,
-+ kf34=\E[204z, kf35=\E[205z, kf36=\E[206z, kf37=\E[207z,
-+ kf38=\E[208z, kf39=\E[209z, kf4=\E[004z, kf40=\E[210z,
-+ kf41=\E[211z, kf42=\E[212z, kf43=\E[213z, kf44=\E[214z,
-+ kf45=\E[200z, kf46=\E[301z, kf47=\E[302z, kf48=\E[303z,
-+ kf49=\E[304z, kf5=\E[005z, kf50=\E[305z, kf51=\E[306z,
-+ kf52=\E[307z, kf53=\E[308z, kf54=\E[309z, kf55=\E[310z,
-+ kf56=\E[311z, kf57=\E[312z, kf58=\E[313z, kf59=\E[314z,
-+ kf6=\E[006z, kf60=\E[300z, kf7=\E[007z, kf8=\E[008z,
-+ kf9=\E[009z, khome=\E[H, kprt=\E[i,
-+
-+dgkeys+11|Private entry describing 11 minimal-subset DG mode special keys,
-+ kclr=^L, kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kel=^K,
-+ kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^a, kf13=^^b, kf14=^^c,
-+ 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=^^#,
-+ kf37=^^$, kf38=^^%%, kf39=^^&, kf4=^^t, kf40=^^', kf41=^^(,
-+ kf42=^^), kf43=^^*, kf44=^^+, kf5=^^u, kf6=^^v, kf7=^^w,
-+ kf8=^^x, kf9=^^y, khome=^H,
-+
-+dgkeys+15|Private entry describing 15 DG mode special keys,
-+ kHOM=^^^H, kLFT=^^^Y, kRIT=^^^X, ka1=^^\\, ka3=^^], kc1=^^\^,
-+ kc3=^^_, kf1=^^q, kf10=^^z, kf11=^^{, kf12=^^|, kf13=^^},
-+ kf14=^^~, kf15=^^p, kf16=^^a, kf17=^^b, kf18=^^c, kf19=^^d,
-+ 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=^^\:,
-+ kf41=^^;, kf42=^^<, kf43=^^=, kf44=^^>, kf45=^^0, kf46=^^!,
-+ kf47=^^", kf48=^^#, kf49=^^$, kf5=^^u, kf50=^^%%, kf51=^^&,
-+ kf52=^^', kf53=^^(, kf54=^^), kf55=^^*, kf56=^^+, kf57=^^\,,
-+ kf58=^^-, kf59=^^., kf6=^^v, kf60=^^\s, kf7=^^w, kf8=^^x,
-+ kf9=^^y,
-
--#### Interactive Systems Corp
--#
--# ISC used to sell OEMed and customized hardware to support ISC UNIX.
--# ISC UNIX still exists in 1995, but ISC itself is no more; they got
--# bought out by Sun.
-+# Data General color terminals use the "Tektronix" color model. The total
-+# number of colors varies with the terminal model, as does support for
-+# attributes used in conjunction with color.
-+
-+# Removed u7, u8 definitions since they conflict with tack:
-+# Preserve user-defined colors in at least some cases.
-+# u7=^^Fh,
-+# Default is ACM mode.
-+# u8=^^F}20^^Fi^^F}21,
- #
-+dgunix+fixed|Fixed color info for DG D430C terminals in DG-UNIX mode,
-+ bce,
-+ colors#16, ncv#53, pairs#256,
-+ op=\036Ad\036Bd,
-+ setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c,
-+ setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c,
-+ setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c,
-
--# From: <cithep!eric> Wed Sep 16 08:06:44 1981
--# (intext: removed obsolete ":ma=^K^P^R^L^L ::bc=^_:", also the
--# ":le=^_:" later overridden -- esr)
--intext|Interactive Systems Corporation modified owl 1200,
-- OTbs, am,
-- cols#80, it#8, lines#24, xmc#1,
-- bel=^G, cbt=^Y, clear=\014$<132>, cr=^M, cub1=^H, cud1=^J,
-- cuf1=^^, cup=\017%p1%{32}%+%c%p2%{32}%+%c, cuu1=^\,
-- dch1=\022$<5.5*>, dl1=\021$<5.5*>, ed=\026J$<5.5*>,
-- el=^Kp^R, ht=^I, il1=\020$<5.5*>, ind=^J, ip=$<5.5*>, kbs=^H,
-- kcub1=^_, kcud1=^J, 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%%,
-- smso=^V$\,,
--intext2|intextii|INTERACTIVE modified owl 1251,
-- am, bw, ul,
-- cols#80, lines#24, xmc#0,
-- bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, 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,
-- flash=\E[;;;;;;;;;2;;u$<200/>\E[;;;;;;;;;1;;u,
-- hpa=\E[%p1%{1}%+%dG, ht=^I, ich1=\E[@, il1=\E[L, ind=\E[S,
-- kbs=^H, kcub1=\ED\r, kcud1=\EB\r, kcuf1=\EC\r, kcuu1=\EA\r,
-- kf0=\E@\r, kf1=\EP\r, kf2=\EQ\r, kf3=\ES\r, kf4=\ET\r,
-- kf5=\EU\r, kf6=\EV\r, kf7=\EW\r, kf8=\EX\r, kf9=\EY\r,
-- khome=\ER\r, lf0=REFRSH, lf1=DEL CH, lf2=TABSET, lf3=GOTO,
-- lf4=+PAGE, lf5=+SRCH, lf6=-PAGE, lf7=-SRCH, lf8=LEFT,
-- lf9=RIGHT, ri=\E[T, rmso=\E[2 D, rmul=\E[2 D, smso=\E[6 D,
-- smul=\E[18 D,
-+dg+fixed|Fixed color info for DG D430C terminals in DG mode,
-+ use=dgunix+fixed,
-
--#### Kimtron (abm, kt)
--#
--# Kimtron seems to be history, but as March 1998 these people are still
--# offering repair services for Kimtron equipment:
--#
--# Com/Pair Monitor Service
--# 1105 N. Cliff Ave.
--# Sioux Falls, South Dakota 57103
--#
--# WATS voice: 1-800/398-4946
--# POTS fax: +1 605/338-8709
--# POTS voice: +1 605/338-9650
--# Email: <compair@sd.cybernex.net>
--# Internet/Web: <http://www.com-pair.com>
--#
--# Kimtron entries include (undocumented) codes for: enter dim mode,
--# enter bold mode, enter reverse mode, turn off all attributes.
--#
-+# Video attributes are coordinated using static variables set by "sgr", then
-+# checked by "op", "seta[bf]", and "set[bf]" to refresh the attribute settings.
-+# (D=dim, U=underline, B=blink, R=reverse.)
-+dg+color8|Color info for Data General D220 and D230C terminals in ANSI mode,
-+ bce,
-+ colors#8, ncv#16, pairs#64,
-+ op=\E[%?%gD%t2;%;%?%gU%t4;%;%?%gB%t5;%;%?%gR%t7;%;m,
-+ setab=\E[4%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-+ setaf=\E[3%p1%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-+ setb=\E[4%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-+ setf=\E[3%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-
--# Kimtron ABM 85 added by Dual Systems
--# (abm85: removed duplicated ":kd=^J:" -- esr)
--abm85|Kimtron ABM 85,
-- OTbs, am, bw, msgr,
-- cols#80, it#8, lines#24, xmc#1,
-- cbt=\EI, clear=\E*, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\Ey, el=\Et, ht=^I,
-- if=/usr/share/tabset/stdcrt, il1=\EE,
-- is2=\EC\EX\Eg\En\E%\Er\E(\Ek\Em\Eq, kbs=^H, kcub1=^H,
-- kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rmir=\Er, rmso=\Ek,
-- rmul=\Em, smir=\EQ, smso=\Ej, smul=\El,
--# Kimtron ABM 85H added by Dual Systems.
--# Some notes about the abm85h entries:
--# 1) there are several firmware revs of 85H in the world. Use abm85h-old for
--# firmware revs prior to SP51
--# 2) Make sure to use abm85h entry if the terminal is in 85h mode and the
--# abm85e entry if it is in tvi920 emulation mode. They are incompatible
--# in some places and NOT software settable i.e., <is2> can't fix it)
--# 3) In 85h mode, the arrow keys and special functions transmit when
--# the terminal is in dup-edit, and work only locally in local-edit.
--# Vi won't swallow `del char' for instance, but <smcup> turns on
--# dup-edit anyway so that the arrow keys will work right. If the
--# arrow keys don't work the way you like, change <smcup>, <rmcup>, and
--# <is2>. Note that 920E mode does not have software commands to toggle
--# between dup and local edit, so you get whatever was set last on the
--# terminal.
--# 4) <flash> attribute is nice, but seems too slow to work correctly
--# (\Eb<pad>\Ed)
--# 5) Make sure `hidden' attributes are selected. If `embedded' attributes
--# are selected, the <xmc@> entry should be removed.
--# 6) auto new-line should be on (selectable from setup mode only)
--#
--# From: Erik Fair <fair@ucbarpa> Sun Oct 27 07:21:05 1985
--abm85h|Kimtron ABM 85H native mode,
-- hs,
-- xmc@,
-- bel=^G, cnorm=\E.4, cvvis=\E.2, dim=\E), dsl=\Ee, flash@,
-- fsl=^M, invis@,
-- is2=\EC\EN\EX\024\016\EA\Ea\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\EG0\Ed\E.4\El,
-- kcud1=^V, sgr0=\E(\EG0, smir=\EZ, tsl=\Eg\Ef, use=adm+sgr,
-- use=abm85,
--abm85e|Kimtron ABM 85H in 920E mode,
-- xmc@,
-- bel=^G, dim=\E), flash@,
-- is2=\EC\EX\EA\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\Ek\Eq\Em,
-- rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85,
--abm85h-old|oabm85h|o85h|Kimtron ABM 85H with old firmware rev.,
-- xmc@,
-- bel=^G, dim=\E),
-- is2=\E}\EC\EX\Ee\En\E%\Er\E(\Ek\Em\Eq\Ed\ET\EC\E9\EF,
-- rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85,
--# From: <malman@bbn-vax.arpa>
--# (kt7: removed obsolete :ma=^V^J^L :" -- esr)
--kt7|kimtron model kt-7,
-- OTbs, am,
-- cols#80, it#8, lines#24,
-- cbt=\EI, clear=^Z, cub1=^H, cud1=^V, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dl1=\ER, ed=\EY, el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ,
-- if=/usr/share/tabset/stdcrt, il1=\EE, invis@, is2=\El\E",
-- kbs=^H, kcbt=\EI, kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L,
-- kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r,
-- kf1=^A@\r, kf2=^AA\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, tsl=\Ef, use=adm+sgr,
--# Renamed TB=^I to :ta:, BE=^G to :bl:, BS=^H to :kb:, N to :kS: (based on the
--# other kt7 entry and the adjacent key capabilities). Removed EE which is
--# identical to :mh:. Removed :ES=\EGD: which is some kind of highlight
--# but we can't figure out what.
--kt7ix|kimtron model kt-7 or 70 in IX mode,
-- am, bw,
-- cols#80, it#8, lines#25,
-- acsc=jYk?lZm@nEqDt4uCvAwBx3, bel=^G, blink=\EG2, cbt=\EI,
-- civis=\E.0, clear=\E*, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V,
-- cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET, fsl=^M,
-- home=^^, ht=^I, ich1=\EQ, il1=\EE, ind=^J,
-- is2=\EG0\E s\017\E~, kbs=^H, kcbt=\EI, kclr=\E*,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\ER,
-- ked=\EY, kel=\ET, kend=\EY, kf0=^AI\r, kf1=^A@\r, kf2=^AA\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, knp=\EJ,
-- nel=^M^J, pulse=\EK, rmacs=\E%%, rmir=, rmso=\EG0, rmul=\EG0,
-- sgr0=\EG0, smacs=\E$, smir=, smso=\EG4, smul=\EG8, tsl=\Ef,
-+dg+color|Color info for Data General D470C terminals in ANSI mode,
-+ colors#16, ncv#53, pairs#256,
-+ setab=\E[%?%p1%{8}%<%t4%p1%e=%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-+ setaf=\E[%?%p1%{8}%<%t3%p1%e<%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-+ setb=\E[%?%p1%{8}%<%t4%e=%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-+ setf=\E[%?%p1%{8}%<%t3%e<%;%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%d%?%gD%t;2%;%?%gU%t;4%;%?%gB%t;5%;%?%gR%t;7%;m,
-+ use=dg+color8,
-+
-+dgmode+color8|Color info for Data General D220/D230C terminals in DG mode,
-+ bce,
-+ colors#8, ncv#16, pairs#64,
-+ op=\036Ad\036Bd,
-+ setab=\036B%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c,
-+ setaf=\036A%p1%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%{48}%+%c,
-+ setb=\036B%p1%{48}%+%c, setf=\036A%p1%{48}%+%c,
-+
-+dgmode+color|Color info for Data General D470C terminals in DG mode,
-+ colors#16, pairs#256,
-+ setab=\036B%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c,
-+ setaf=\036A%p1%?%p1%{8}%<%t%{2}%&%?%p1%{1}%&%t%{4}%|%;%?%p1%{4}%&%t%{1}%|%;%;%{48}%+%c,
-+ use=dgmode+color8,
-+
-+dgunix+ccc|Configurable color info for DG D430C terminals in DG-UNIX mode,
-+ bce, ccc,
-+ colors#52, ncv#53, pairs#26,
-+ initp=\036RG0%p1%02X%p2%{255}%*%{1000}%/%02X%p3%{255}%*%{1000}%/%02X%p4%{255}%*%{1000}%/%02X%p5%{255}%*%{1000}%/%02X%p6%{255}%*%{1000}%/%02X%p7%{255}%*%{1000}%/%02X,
-+ oc=\036RG01A00FF00000000\036RG01B00000000FF00\036RG01C007F00000000\036RG01D000000007F00,
-+ op=\036RF4831A\036RF2E31B\036RF1D31C\036RF3F31D,
-+ scp=\036RG2%p1%02X,
-+
-+# Colors are in the order: normal, reverse, dim, dim + reverse.
-+dg+ccc|Configurable color info for DG D430C terminals in DG mode,
-+ bce, ccc,
-+ colors#52, ncv#53, pairs#26,
-+ initp=\036RG0%p1%{16}%/%{48}%+%c%p1%{16}%m%{48}%+%c%p2%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p3%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p4%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%c%ga%{16}%m%{48}%+%c%p5%{255}%*%{1000}%/%Pa%ga%{16}%/%{48}%+%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?00000000\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,
-+ am, bw, msgr, xon,
-+ cols#80, lines#24,
-+ bel=^G, blink=^N, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X,
-+ cup=\020%p2%c%p1%c, cuu1=^W, dim=^\, el=^K, ind=^J, is1=^R^C,
-+ mc0=^Q, nel=^J, rmso=^], rmul=^U, sgr0=^O^U^], smso=^\,
-+ smul=^T, use=dgkeys+11,
-+
-+# According to the 4.4BSD termcap file, the dg200 <cup> should be the
-+# termcap equivalent of \020%p2%{128}%+%c%p1%{128}%+%c (in termcap
-+# notation that's "^P%r%+\200%+\200"). Those \200s are suspicious,
-+# maybe they were originally nuls (which would fit).
-+
-+dg200|data general dasher 200,
-+ OTbs, am, bw,
-+ cols#80, lines#24,
-+ bel=^G, clear=^L, cr=^M, cub1=^Y, cud1=^Z, cuf1=^X,
-+ cup=\020%p2%c%p1%c, cuu1=^W, el=^K, home=^H, ind=^J,
-+ kcub1=^Y, kcud1=^Z, kcuf1=^X, kcuu1=^W, kf0=^^z, kf1=^^q,
-+ kf2=^^r, kf3=^^s, kf4=^^t, kf5=^^u, kf6=^^v, kf7=^^w, kf8=^^x,
-+ kf9=^^y, khome=^H, lf0=f10, nel=^J, rmso=^^E, rmul=^U,
-+ smso=^^D, smul=^T,
-+
-+# Data General 210/211 (and 410?) from Lee Pearson (umich!lp) via BRL
-+dg210|dg-ansi|Data General 210/211,
-+ am,
-+ cols#80, lines#24,
-+ OTnl=\E[B, clear=\E[2J, cub1=\E[D, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-+ home=\E[H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ khome=\E[H, nel=\r\E[H\E[A\n, rmso=\E[0;m, rmul=\E[0;m,
-+ smso=\E[7;m, smul=\E[4;m,
-+# From: Peter N. Wan <ihnp4!gatech!gacsr!wan>
-+# courtesy of Carlos Rucalde of Vantage Software, Inc.
-+# (dg211: this had <cup=\020%r%.%>., which was an ancient termcap hangover.
-+# I suspect the d200 function keys actually work on the dg211, check it out.)
-+dg211|Data General d211,
-+ cnorm=^L, cvvis=^L^R, ht=^I, ind@, kbs=^Y, kf0@, kf1@, kf2@, kf3@,
-+ kf4@, kf5@, kf6@, kf7@, kf8@, kf9@, lf0@, nel=^M^Z, rmcup=^L,
-+ rmso=\036E$<0/>, smcup=^L^R, smso=\036D$<5/>, use=dg200,
-+
-+# dg450 from Cornell (not official)
-+dg450|dg6134|data general 6134,
-+ cub1@, cuf1=^X, use=dg200,
-+
-+# Not official...
-+# Note: lesser Dasher terminals will not work with vi because vi insists upon
-+# having a command to move straight down from any position on the bottom line
-+# and scroll the screen up, or a direct vertical scroll command. The 460 and
-+# above have both, the D210/211, for instance, has neither. We must use ANSI
-+# mode rather than DG mode because standard UNIX tty drivers assume that ^H is
-+# backspace on all terminals. This is not so in DG mode.
-+# (dg460-ansi: removed obsolete ":kn#6:"; also removed ":mu=\EW:", on the
-+# grounds that there is no matching ":ml:"
-+dg460-ansi|Data General Dasher 460 in ANSI-mode,
-+ OTbs, am, msgr, ul,
-+ cols#80, it#8, lines#24,
-+ OTnl=\ED, blink=\E[5m, clear=\E[2J, cub1=^H, cud1=\E[B,
-+ cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P,
-+ dim=\E[2m, dl1=\E[M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-+ ich1=\E[@, il1=\E[L, ind=\E[S, is2=^^F@, kbs=\E[D,
-+ 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,
-+ 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,
-+ u7=\E[6n, u8=\E[5n, u9=\E[0n,
-+# From: Wayne Throop <mcnc!rti-sel!rtp47!throopw> (not official)
-+# Data General 605x
-+# Ought to work for a Model 6242, Type D210 as well as a 605x.
-+# Note that the cursor-down key transmits ^Z. Job control users, beware!
-+# 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,
-+ OTbs, am, bw, ul,
-+ cols#80, lines#24,
-+ OTbc=^Y, bel=^G, clear=^L, cnorm=^L, cr=^M, cub1=^Y, cud1=^Z,
-+ cuf1=^X, cup=\020%p2%c%p1%c, cuu1=^W, cvvis=^L^R, el=^K,
-+ home=^H, ht=^I, is2=^R, kbs=^Y, kcub1=^Y, kcud1=^Z, kcuf1=^X,
-+ kcuu1=^W, kf0=^^q, kf1=^^r, kf2=^^s, kf3=^^t, kf4=^^u, kf5=^^v,
-+ kf6=^^w, kf7=^^x, kf8=^^y, kf9=^^z, khome=^H, rmcup=^L,
-+ rmso=\0^^E, rmul=^U, smcup=^L^R, smso=\0\0\0\0\0\036D,
-+ smul=^T,
-
--#### Microdata/MDIS
-+# (Some performance can be gained over the generic DG terminal type)
-+dg6053|6053|6053-dg|dg605x|605x|605x-dg|d2|d2-dg|Data General DASHER 6053,
-+ xon@,
-+ home=^P\0\0, ll=^P\0^W, use=dg-generic,
-+
-+# Like 6053, but adds reverse video and more keypad and function keys.
-+d200|d200-dg|Data General DASHER D200,
-+ bold=^^D^T, home@, ll@, rev=^^D, rmso=^^E^],
-+ sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;,
-+ sgr0=\017\025\035\036E, smso=^^D^\, use=dgkeys+15,
-+ use=dg6053,
-+
-+# DASHER D210 series terminals in ANSI mode.
-+# Reverse video, no insert/delete character/line, 7 bits/character only.
- #
--# This was a line of terminals made by McDonnell-Douglas Information Systems.
--# These entries come direct from MDIS documentation. I have edited them only
--# to move primary names of the form p[0-9] * to aliases, and to comment out
--# <rmacs>/<smacs> in a couple of entries without <acsc> strings. I have
--# also removed the change history; the last version indicates this is
--# version 4.3 by A.Barkus, September 1990 (earliest entry is October 1989).
-+# Initialization string 1 sets:
-+# <0 - scrolling enabled
-+# <1 - blink enabled
-+# <4 - print characters regardless of attributes
-+d210|d214|Data General DASHER D210 series,
-+ am, bw, msgr, xon,
-+ cols#80, lines#24,
-+ bel=^G, blink=\E[5m, bold=\E[4;7m, clear=\E[2J, cr=^M,
-+ 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, dim=\E[2m, ed=\E[J, el=\E[K,
-+ el1=\E[1K, home=\E[H, ind=^J, is1=\E[<0;<1;<4l,
-+ ll=\E[H\E[A, nel=^J, rev=\E[7m, rmso=\E[m, rmul=\E[m,
-+ sgr=\E[%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;%?%p1%p3%|%p6%|%t7;%;m,
-+ sgr0=\E[m, smso=\E[2;7m, smul=\E[4m, use=dgkeys+7b,
-+
-+# DASHER D210 series terminals in DG mode.
-+# Like D200, but adds clear to end-of-screen and needs XON/XOFF.
-+d210-dg|d214-dg|Data General DASHER D210 series in DG mode,
-+ xon,
-+ ed=^^FF, use=d200-dg,
-+
-+# DASHER D211 series terminals in ANSI mode.
-+# Like the D210, but with 8-bit characters and local printer support.
-+#
-+# Initialization string 2 sets:
-+# \E[2;1;1;1v
-+# 2;1 - 8 bit operations
-+# 1;1 - 8 bit (international) keyboard language
-+# \E(B - default primary character set (U.S. ASCII)
-+# \E)4 - default secondary character set (international)
-+# ^O - primary character set
- #
-+d211|d215|Data General DASHER D211 series,
-+ km,
-+ is2=\E[2;1;1;1v\E(B\E)4\017, mc0=\E[i, use=dgkeys+8b,
-+ use=d210,
-
--# McDonnell Information Systems Terminal Family History
--# =========================================
-+# Initialization string 2 sets:
-+# \E[2;0;1;0v
-+# 2;0 - 7 bit operations
-+# 1;0 - 7 bit (native) keyboard language
-+# \E(0 - default character set (the keyboard native language)
-+# ^O - primary character set
-+d211-7b|d215-7b|Data General DASHER D211 series in 7 bit mode,
-+ km@,
-+ is2=\E[2;0;1;0v\E(0\017, use=dgkeys+7b, use=d211,
-+
-+# Like the D210 series, but adds support for 8-bit characters.
- #
--# Prism-1, Prism-2 and P99:
--# Ancient Microdata and CMC terminals, vaguely like Adds Regent 25.
-+# Reset string 2 sets:
-+# ^^N - secondary character set
-+# ^^FS0> - 8 bit international character set
-+# ^^O - primary character set
-+# ^^FS00 - default character set (matching the native keyboard language)
- #
--# Prism-4 and Prism-5:
--# Slightly less ancient range of Microdata terminals. Follow-on from
--# Prism-2, but with many enhancements. P5 has eight display pages.
-+d211-dg|d215-dg|Data General DASHER D211 series in DG mode,
-+ km,
-+ rs2=\036N\036FS0>\036O\036FS00, use=d210-dg,
-+
-+d216-dg|d216e-dg|d216+dg|d216e+dg|d217-dg|Data General DASHER D216 series in DG mode,
-+ use=d211-dg,
-+
-+# Enhanced DG mode with changes to be more UNIX compatible.
-+d216-unix|d216e-unix|d216+|d216e+|Data General DASHER D216+ in DG-UNIX mode,
-+ mc5i,
-+ it#8,
-+ acsc=a\177j$k"l!m#n)q+t'u&v(w%x*, blink=^^PI,
-+ clear=^^PH, cub1=^^PD, cud1=^^PB, cuf1=^^PC, cuu1=^^PA,
-+ el=^^PE, home=^^PF, hpa=\020%p1%c\177, ht=^I, ind=^J,
-+ is1=\022\003\036P@1, is3=\036Fz0, kHOM=^^Pf, kLFT=^^Pd,
-+ kPRT=^^P1, kRIT=^^Pc, kclr=^^PH, kcub1=^^PD, kcud1=^^PB,
-+ kcuf1=^^PC, kcuu1=^^PA, kel=^^PE, khome=^^PF, kprt=^^P0,
-+ mc0=\036F?9, mc4=^^Fa, mc5=^^F`, rmacs=\036FS00,
-+ rs2=\036N\036FS0E\036O\036FS00,
-+ sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;\036P%?%p4%tI%eJ%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;,
-+ sgr0=\036PJ\025\035\036E\036FS00, smacs=\036FS11,
-+ vpa=\020\177%p1%c, use=dgkeys+15, use=d216-dg,
-+d216-unix-25|d216+25|Data General DASHER D216+ in DG-UNIX mode with 25 lines,
-+ lines#25,
-+ is3=\036Fz2, use=d216+,
-+
-+d217-unix|Data General DASHER D217 in DG-UNIX mode,
-+ use=d216-unix,
-+d217-unix-25|Data General DASHER D217 in DG-UNIX mode with 25 lines,
-+ use=d216-unix-25,
-+
-+# DASHER D220 color terminal in ANSI mode.
-+# Like the D470C but with fewer colors and screen editing features.
- #
--# Prism-6:
--# A special terminal for use with library systems, primarily in Germany.
--# Limited numbers. Similar functionality to P5 (except attributes?).
-+# Initialization string 1 sets:
-+# \E[<0;<1;<4l
-+# <0 - scrolling enabled
-+# <1 - blink enabled
-+# <4 - print characters regardless of attributes
-+# \E[m - all attributes off
-+# Reset string 1 sets:
-+# \Ec - initial mode defaults (RIS)
- #
--# Prism-7, Prism-8 and Prism-9:
--# More recent range of MDIS terminals, in which P7 and P8
--# replace the P4 & P5, with added functionality, and P9 is the flagship.
--# The P9 has two emulation modes - P8 and ANSI - and includes a
--# large number of the DEC VT220 control sequences. Both
--# P8 and P9 support 80c/24ln/8pg and 132cl/24li/4pg formats.
-+d220|Data General DASHER D220,
-+ mc5i@,
-+ dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec,
-+ use=dg+color8, use=d470c,
-+
-+d220-7b|Data General DASHER D220 in 7 bit mode,
-+ mc5i@,
-+ dl@, dl1@, il@, il1@, is1=\E[<0;<1;<4l\E[m, mc4@, mc5@, rs1=\Ec,
-+ use=dg+color8, use=d470c-7b,
-+
-+# Initialization string 3 sets:
-+# - default cursor (solid rectangle)
-+# Reset string 2 sets:
-+# ^^N - secondary character set
-+# ^^FS0> - 8 bit international character set
-+# ^^O - primary character set
-+# ^^FS00 - default character set (matching the native keyboard language)
- #
--# Prism-12 and Prism-14:
--# Latest range, functionally very similar to the P9. The P14 has a
--# black-on-white overscanning screen.
-+d220-dg|Data General DASHER D220 color terminal in DG mode,
-+ mc5i@,
-+ dl1@, home@, il1@, is2@, is3=\036FQ2, ll@, mc4@, mc5@, rs1@,
-+ rs2=\036N\036FS0>\036O\036FS00, use=dgmode+color8,
-+ use=d470c-dg,
-+
-+# DASHER D230C color terminal in ANSI mode.
-+# Like the D220 but with minor ANSI compatibility improvements.
- #
--# The terminfo definitions given here are:
-+d230c|d230|Data General DASHER D230C,
-+ blink=\E[5;50m, bold=\E[4;7;50m, dim=\E[2;50m, nel=^M^J,
-+ 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%;,
-+ sgr0=\E[50m\E)4\017, smkx=\E[2;0v, smso=\E[2;7;50m,
-+ smul=\E[4;50m, use=dgkeys+7b, use=d220,
-+
-+d230c-dg|d230-dg|Data General DASHER D230C in DG mode,
-+ use=d220-dg,
-+
-+# DASHER D400/D450 series terminals.
-+# These add intelligent features like insert/delete to the D200 series.
- #
--# p2 - Prism-2 (or Prism-1 or P99).
-+# Initialization string 2 sets:
-+# ^^FQ2 - default cursor (solid rectangle)
-+# ^^FW - character protection disabled
-+# ^^FJ - normal (80 column) mode
-+# ^^F\^ - horizontal scrolling enabled (for alignment)
-+# ^^FX004? - margins at columns 0 and 79
-+# ^^F] - horizontal scrolling disabled
-+# ^^O - primary character set
-+# ^^FS00 - default character set (the keyboard native language)
-+# - (should reset scrolling regions, but that glitches the screen)
-+# Reset string 1 sets:
-+# ^^FA - all terminal defaults except scroll rate
-+# Reset string 2 sets:
-+# ^^F] - horizontal scrolling disabled
-+# ^^FT0 - jump scrolling
- #
--# p4 - Prism-4 (and older P7s & P8s).
--# p5 - Prism-5 (or Prism-6).
-+d400|d400-dg|d450|d450-dg|Data General DASHER D400/D450 series,
-+ mc5i,
-+ acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\036FQ0,
-+ cnorm=\036FQ2, dch1=^^K, dl1=^^FI,
-+ enacs=\036N\036FS11\036O, home=^^FG, hpa=\020%p1%c\177,
-+ ich1=^^J, il1=^^FH,
-+ is2=\036FQ2\036FW\036FJ\036F\^\036FX004?\036F]\036O\036FS00,
-+ ll=\036FG\027, mc4=^^Fa, mc5=^^F`, ri=^^I, rmacs=^^O,
-+ rs1=^^FA, rs2=\036F]\036FT0,
-+ sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036%?%p9%tN%eO%;,
-+ sgr0=\017\025\035\036E\036O, smacs=^^N,
-+ vpa=\020\177%p1%c, use=d210-dg,
-+
-+# DASHER D410/D460 series terminals in ANSI mode.
-+# These add a large number of intelligent terminal features.
- #
--# p7 - Prism-7.
--# p8 - Prism-8 (in national or multinational mode).
--# p8-w - 132 column version of p8.
--# p9 - Prism-9 in ANSI mode.
--# p9-w - 132 column version of p9.
--# p9-8 - Prism-9 in Prism-8 emulation mode.
--# p9-8-w - As p9-8, but with 132 columns.
-+# Initialization string 1 sets:
-+# \E[<0;<1;<2;<4l
-+# <0 - scrolling enabled
-+# <1 - blink enabled
-+# <2 - horizontal scrolling enabled (for alignment)
-+# <4 - print characters regardless of attributes
-+# \E[5;0v - normal (80 column) mode
-+# \E[1;1;80w - margins at columns 1 and 80
-+# \E[1;6;<2h
-+# 1 - print all characters even if protected
-+# 6 - character protection disabled
-+# <2 - horizontal scrolling disabled
-+# - (should reset scrolling regions, but that glitches the screen)
- #
--# p12 - Prism-12 in ANSI mode.
--# p12-w - 132 column version of p12.
--# p12-m - Prism-12 in MDC emulation mode.
--# p12-m-w - As p12-m, but with 132 columns.
--# p14 - Prism-14 in ANSI mode.
--# p14-w - 132 column version of p14.
--# p14-m - Prism-14 in MDC emulation mode.
--# p14-m-w - As p14-m, but with 132 columns.
-+# Initialization string 2 sets:
-+# \E[3;2;2;1;1;1v
-+# 3;2 - default cursor (solid rectangle)
-+# 2;1 - 8 bit operations
-+# 1;1 - international keyboard language
-+# \E(B - default primary character set (U.S. ASCII)
-+# \E)4 - default secondary character set (international)
-+# ^O - primary character set
- #
--# p2: Prism-2
--# -----------
-+# Reset string 1 sets:
-+# \Ec - initial mode defaults (RIS)
-+# \E[<2h - horizontal scrolling disabled
- #
--# Includes Prism-1 and basic P99 without SP or MP loaded.
--# The simplest form of Prism-type terminal.
--# Basic cursor movement and clearing operations only.
--# No video attributes.
--# Notes:
--# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next
--# value up, followed by backspace.
-+# Reset string 2 sets:
-+# \E[4;0;2;1;1;1v
-+# 4;0 - jump scrolling
-+# 2;1 - 8 bit operations
-+# 1;1 - 8 bit (international) keyboard language
-+# \E(B - default primary character set (U.S. ASCII)
-+# \E)4 - default secondary character set (international)
- #
--prism2|MDC Prism-2,
-- am, bw, msgr,
-- cols#80, lines#24,
-- bel=^G, clear=\014$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=^F,
-- cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c,
-- cuu1=^Z, ed=\EJ, el=\EK, home=^A,
-- hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c,
-- ind=^J, kbs=^H, khome=^A, vpa=\013%p1%{32}%+%c,
-+d410|d411|d460|d461|Data General DASHER D410/D460 series,
-+ mc5i,
-+ acsc=j$k"l!m#n)q+t'u&v(w%x*, civis=\E[3;0v,
-+ cnorm=\E[3;2v, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-+ dl1=\E[M, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L,
-+ is1=\E[<0;<1;<2;<4l\E[5;0v\E[1;1;80w\E[1;6;<2h,
-+ is2=\E[3;2;2;1;1;1v\E(B\E)4\017, mc4=\E[4i, mc5=\E[5i,
-+ ri=\EM, rmacs=\E)4\017, rs1=\Ec\E[<2h,
-+ rs2=\E[4;0;2;1;1;1v\E(B\E)4,
-+ sgr=\E[%?%p1%t2;7%;%?%p3%t7;%;%?%p4%t5;%;%?%p2%t4;%;%?%p1%p5%|%t2;%;%?%p6%t4;7;%;m\E)%?%p9%t6\016%e4\017%;,
-+ sgr0=\E[m\E)4\017, smacs=\E)6\016, use=d211,
-
--# p4: Prism-4
--# -----------
-+# Initialization string 2 sets:
-+# \E[3;2;2;0;1;0v
-+# 3;2 - default cursor (solid rectangle)
-+# 2;0 - 7 bit operations
-+# 1;0 - 7 bit (native) keyboard language
-+# \E(0 - default character set (the keyboard native language)
-+# ^O - primary character set
- #
--# Includes early versions of P7 & P8.
--# Basic family definition for most Prisms (except P2 and P9 ANSI).
--# Notes:
--# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next
--# value up, followed by backspace.
--# Cursor key definitions removed because they interfere with vi and csh keys.
-+# Reset string 2 sets:
-+# \E[4;0;2;0;1;0v
-+# 4;0 - jump scrolling
-+# 2;0 - 7 bit operations
-+# 1;0 - 7 bit (native) keyboard language
-+# \E(0 - default character set (the keyboard native language)
- #
--prism4|p4|P4|MDC Prism-4,
-- am, bw, hs, mc5i, msgr,
-- cols#80, lines#24, wsl#72, xmc#1,
-- bel=^G, blink=^CB, civis=^]\344, clear=\014$<20>,
-- cnorm=^]\342, cr=^M, cub1=^H, cud1=^J, cuf1=^F,
-- cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c,
-- cuu1=^Z, dim=^CA, dsl=\035\343\035\345, ed=\EJ, el=\EK,
-- fsl=^]\345, home=^A,
-- hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c,
-- ind=^J, invis=^CH, kbs=^H, khome=^A, mc0=\EU, mc4=\ET, mc5=\ER,
-- rev=^CD, rmso=^C\s, rmul=^C\s,
-- sgr=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;,
-- sgr0=^C\s, smso=^CD, smul=^CP, tsl=^]\343,
-- vpa=\013%p1%{32}%+%c,
-+d410-7b|d411-7b|d460-7b|d461-7b|Data General DASHER D410/D460 series in 7 bit mode,
-+ km@,
-+ enacs=\E)6, is2=\E[3;2;2;0;1;0v\E(0\017, rmacs=^O,
-+ rs2=\E[4;0;2;0;1;0v\E(0,
-+ sgr=\E[%?%p1%p3%|%p6%|%t7;%;%?%p4%t5;%;%?%p2%p6%|%t4;%;%?%p1%p5%|%t2;%;m%?%p9%t\016%e\017%;,
-+ sgr0=\E[m\017, smacs=^N, use=dgkeys+7b, use=d410,
-
--# p5: Prism-5
--# -----------
--#
--# Same definition as p4. Includes Prism-6 (not tested!).
--# Does not use any multi-page features.
--#
--prism5|p5|P5|MDC Prism-5,
-- use=p4,
-+d410-dg|d460-dg|d411-dg|d461-dg|Data General DASHER D410/D460 series in DG mode,
-+ km,
-+ enacs@, rmacs=\036FS00,
-+ sgr=\036%?%p1%p3%|%p6%|%tD%eE%;%?%p2%p6%|%t\024%e\025%;%?%p4%t\016%e\017%;%?%p1%p5%|%t\034%e\035%;\036FS%?%p9%t11%e00%;,
-+ sgr0=\017\025\035\036E\036FS00, smacs=\036FS11,
-+ use=d400-dg,
-
--# p7: Prism-7
--# -----------
--#
--# Similar definition to p4. Uses ANSI cursor motion to avoid network problems.
--# Notes:
--# Use p4 for very early models of P7.
--# Rev-index removed; can't send nulls to terminal in 8-bit modes.
-+# DASHER D410/D460 series terminals in wide (126 columns) ANSI mode.
- #
--prism7|p7|P7|MDC Prism-7,
-- cup=\E[%i%p1%d;%p2%dH, hpa@, vpa@, use=p4,
--
--# p8: Prism-8
--# -----------
-+# Initialization string 1 sets:
-+# \E[<0;<1;<2;<4l
-+# <0 - scrolling enabled
-+# <1 - blink enabled
-+# <2 - horizontal scrolling enabled (for alignment)
-+# <4 - print characters regardless of attributes
-+# \E[5;1v - compressed (135 column) mode
-+# \E[1;1;126 - margins at columns 1 and 126
-+# \E[1;6;<2h
-+# 1 - print all characters even if protected
-+# 6 - character protection disabled
-+# <2 - horizontal scrolling disabled
-+# - (should reset scrolling regions, but that glitches the screen)
- #
--# Similar definition to p7. Uses ANSI cursor motion to avoid network problems.
--# Supports national and multinational character sets.
--# Notes:
--# Alternate char set operations only work in multinational mode.
--# Use p4 for very early models of P8.
--# Rev-index removed; can't send nulls to terminal in 8-bit modes.
--# (esr: commented out <smacs>/<rmacs> because there's no <acsc>)
-+# Reset string 1 sets:
-+# \Ec - initial mode defaults (RIS)
-+# \E[5;1v - compressed (135 column) mode
-+# \E[1;1;126w - margins at columns 1 and 126
-+# \E[<2h - horizontal scrolling disabled
- #
--prism8|p8|P8|MDC Prism-8,
-- cup=\E[%i%p1%d;%p2%dH, hpa=\E[%i%p1%d`, is2=\E[<12h,
-- vpa=\E[%i%p1%dd, use=p4,
-+d410-w|d411-w|d460-w|d461-w|Data General DASHER D410/D460 series in wide mode,
-+ cols#126,
-+ is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h,
-+ rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410,
-
--# p8-w: Prism-8 in 132 column mode
--# --------------------------------
--#
--# 'Wide' version of p8.
--# Notes:
--# Rev-index removed; can't send nulls to terminal in 8-bit modes.
--#
--prism8-w|p8-w|P8-W|MDC Prism-8 in 132 column mode,
-+d410-7b-w|d411-7b-w|d460-7b-w|d461-7b-w|Data General DASHER D410/D460 series in wide 7 bit mode,
-+ cols#126,
-+ is1=\E[<0;<1;<2;<4l\E[5;1v\E[1;1;126w\E[1;6;<2h,
-+ rs1=\Ec\E[5;1v\E[1;1;126w\E[<2h, use=d410-7b,
-+
-+d412-dg|d462-dg|d462e-dg|d412+dg|d462+dg|d413-dg|d463-dg|Data General DASHER D412/D462 series in DG mode,
-+ use=d410-dg,
-+
-+# These add intelligent features like scrolling regions.
-+d412-unix|d462-unix|d412+|d462+|Data General DASHER D412+/D462+ series in Unix mode,
-+ civis=\036FQ0, clear=^^FE, cnorm=\036FQ5,
-+ cup=\036FP%p2%2.2X%p1%2.2X, dch1=^^K, dl1=^^FI,
-+ home=^^FG, hpa=\036FP%p1%2.2XFF, ich1=^^J, il1=^^FH,
-+ is2=\036FQ5\036FW\036FJ\036F\^\036FX004F\036O\036FS00,
-+ ll=\036FG\036PA, mc0=^A, rc=\036F}11, ri=^^I,
-+ rs1=\036FA\036FT0, rs2=\036P@1, sc=\036F}10,
-+ vpa=\036FPFF%p1%2.2X,
-+ wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X,
-+ use=d216+,
-+d412-unix-w|d462-unix-w|d412+w|d462+w|Data General DASHER D412+/D462+ series in wide Unix mode,
- cols#132,
-- is2=\E[<12h\E[<14h, use=p8,
-+ is2=\036FQ5\036FW\036FK\036F\^\036FX0083\036O\036FS00,
-+ rs2=\036P@1\036FK\036FX0083,
-+ wind=\036FB%?%p1%t%p1%2.2X1%;%p2%p1%-%{1}%+%2.2X1%?%{23}%p2%>%t001%;\036FX%p3%2.2X%p4%2.2X,
-+ use=d412-unix,
-+d412-unix-25|d462-unix-25|d412+25|d462+25|Data General DASHER D412+/D462+ series in Unix mode with 25 lines,
-+ lines#25,
-+ is3=\036Fz2,
-+ wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{24}%p2%>%t000%;\036FX%p3%2.2X%p4%2.2X,
-+ use=d462+,
-+d412-unix-s|d462-unix-s|d412+s|d462+s|Data General DASHER D412+/D462+ in Unix mode with status line,
-+ eslok, hs,
-+ clear=\036FG\036PH, fsl=\036F}01\022,
-+ is3=\036Fz2\036F}00\036FB180000\036F}01, ll@,
-+ tsl=\036F}00\036FP%p1%2.2X18\036PG,
-+ wind=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t%{23}%p2%-%2.2X0%;000\036FX%p3%2.2X%p4%2.2X,
-+ use=d462+,
-
--# p9: Prism-9 in ANSI mode
--# -------------------------
--#
--# The "flagship" model of this generation of terminals.
--# ANSI X3.64 (ISO 6429) standard sequences, plus many DEC VT220 ones.
--# Notes:
--# Tabs only reset by "reset". Otherwise assumes default (8 cols).
--# Fixes to deal with terminal firmware bugs:
--# . 'ri' uses insert-line since rev index doesn't always
--# . 'sgr0' has extra '0' since esc[m fails
--# . 'fsl' & 'dsl' use illegal char since cr is actioned wrong on line 25
--# Not covered in the current definition:
--# . Labels
--# . Programming Fn keys
--# . Graphic characters (defaults correctly to vt100)
--# . Padding values (sets xon)
--# (esr: commented out <smacs>/<rmacs> because there's no <acsc>)
--#
--prism9|p9|P9|MDC Prism-9 in ANSII mode,
-- am, bw, hs, mc5i, 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,
-- clear=^L, cnorm=\E[<4h, cr=^M, csr=\E[%i%p1%d;%p2%d%%v,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- 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[%}\024, ech=\E[%p1%dX,
-- ed=\E[J$<10>, el=\E[K, fsl=^T, home=\E[H, hpa=\E[%i%p1%d`,
-- ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- is2=\E[&p\E[<12l\E F, kbs=^H, kclr=^L, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, 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~, 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[H, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, nel=^M^J,
-- prot=\E[32%{, rc=\E[%z, rep=\E[%p2%db%p1%c, rev=\E[7m,
-- ri=\E[L, rmir=\E[4l, rmso=\E[27m, rmul=\E[24m,
-- rs2=\E[&p\E[<12l\E F\E[3g\E[9;17;25;33;41;49;57;65;73 N,
-- sc=\E[%y,
-- sgr=\E[%{0}%?%p1%p3%|%t%{7}%+%;%?%p2%t%{2}%+%;%?%p4%t%{5}%+%;%?%p6%t%{1}%+%;m%?%p8%t\E[%{32}%+%d%%{%;%?%p9%t\016%e\017%;,
-- sgr0=\E[0m\017, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-- tbc=\E[3g, tsl=\E[%i%p1%d%%}, vpa=\E[%i%p1%dd,
-+# Relative cursor motions are confined to the current window,
-+# which is not what the scrolling region specification expects.
-+# Thus, relative vertical cursor positioning must be deleted.
-+d412-unix-sr|d462-unix-sr|d412+sr|d462+sr|Data General DASHER D412+/D462+ in Unix mode with scrolling region,
-+ csr=\036FB%?%p1%t%p1%2.2X0%;%p2%p1%-%{1}%+%2.2X0%?%{23}%p2%>%t000%;,
-+ cud1@, cuu1@, ll@, use=d462+,
-+
-+d413-unix|d463-unix|Data General DASHER D413/D463 series in DG-UNIX mode,
-+ use=d412-unix,
-+d413-unix-w|d463-unix-w|Data General DASHER D413/D463 series in wide DG-UNIX mode,
-+ use=d412-unix-w,
-+d413-unix-25|d463-unix-25|Data General DASHER D413/D463 series in DG-UNIX mode with 25 lines,
-+ use=d412-unix-25,
-+d413-unix-s|d463-unix-s|Data General DASHER D413/D463 in DG-UNIX mode with status line,
-+ use=d412-unix-s,
-+d413-unix-sr|d463-unix-sr|Data General DASHER D413/D463 in DG-UNIX mode with scrolling region,
-+ use=d412-unix-sr,
-+
-+d414-unix|d464-unix|Data General D414/D464 in DG-UNIX mode,
-+ use=d413-unix,
-+d414-unix-w|d464-unix-w|Data General D414/D464 in wide DG-UNIX mode,
-+ use=d413-unix-w,
-+d414-unix-25|d464-unix-25|Data General D414/D464 in DG-UNIX mode with 25 lines,
-+ use=d413-unix-25,
-+d414-unix-s|d464-unix-s|Data General D414/D464 in DG-UNIX mode with status line,
-+ use=d413-unix-s,
-+d414-unix-sr|d464-unix-sr|Data General D414/D464 in DG-UNIX mode with scrolling region,
-+ use=d413-unix-sr,
-
--# p9-w: Prism-9 in 132 column mode
--# --------------------------------
--#
--# 'Wide' version of p9.
--#
--prism9-w|p9-w|P9-W|MDC Prism-9 in 132 column mode,
-- cols#132,
-- is2=\E[&p\E[<12l\E F\E[<14h,
-- rs2=\E[&p\E[<12l\E F\E[<14h, use=p9,
-+d430c-dg|d430-dg|Data General D430C in DG mode,
-+ use=d413-dg, use=dg+fixed,
-+d430c-dg-ccc|d430-dg-ccc|Data General D430C in DG mode with configurable colors,
-+ use=d413-dg, use=dg+ccc,
-
--# p9-8: Prism-9 in P8 mode
--# ------------------------
--#
--# P9 terminal in P8 emulation mode.
--# Similar to p8 definition.
--# Insertion and deletion operations possible.
--#
--prism9-8|p9-8|P9-8|MDC Prism-9 in P8 mode,
-- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8,
-+d430c-unix|d430-unix|Data General D430C in DG-UNIX mode,
-+ use=d413-unix, use=dgunix+fixed,
-+d430c-unix-w|d430-unix-w|Data General D430C in wide DG-UNIX mode,
-+ use=d413-unix-w, use=dgunix+fixed,
-+d430c-unix-25|d430-unix-25|Data General D430C in DG-UNIX mode with 25 lines,
-+ use=d413-unix-25, use=dgunix+fixed,
-+d430c-unix-s|d430-unix-s|Data General D430C in DG-UNIX mode with status line,
-+ use=d413-unix-s, use=dgunix+fixed,
-+d430c-unix-sr|d430-unix-sr|Data General D430C in DG-UNIX mode with scrolling region,
-+ use=d413-unix-sr, use=dgunix+fixed,
-+d430c-unix-ccc|d430-unix-ccc|Data General D430C in DG-UNIX mode with configurable colors,
-+ use=d413-unix, use=dgunix+ccc,
-+d430c-unix-w-ccc|d430-unix-w-ccc|Data General D430C in wide DG-UNIX mode with configurable colors,
-+ use=d413-unix-w, use=dgunix+ccc,
-+d430c-unix-25-ccc|d430-unix-25-ccc|Data General D430C in DG-UNIX mode with 25 lines and configurable colors,
-+ use=d413-unix-25, use=dgunix+ccc,
-+d430c-unix-s-ccc|d430-unix-s-ccc|Data General D430C in DG-UNIX mode with status line and configurable colors,
-+ use=d413-unix-s, use=dgunix+ccc,
-+d430c-unix-sr-ccc|d430-unix-sr-ccc|Data General D430C in DG-UNIX mode with scrolling region and configurable colors,
-+ use=d413-unix-sr, use=dgunix+ccc,
-
--# p9-8-w: Prism-9 in P8 and 132 column modes
--# ------------------------------------------
-+# DASHER D470C color terminal in ANSI mode.
-+# Like the D460 but with 16 colors and without a compressed mode.
- #
--# P9 terminal in P8 emulation mode and 132 column mode.
-+# Initialization string 1 sets:
-+# \E[<0;<1;<2;<4l
-+# <0 - scrolling enabled
-+# <1 - blink enabled
-+# <2 - horizontal scrolling enabled (for alignment)
-+# <4 - print characters regardless of attributes
-+# \E[1;1;80w - margins at columns 1 and 80
-+# \E[1;6;<2h
-+# 1 - print all characters even if protected
-+# 6 - character protection disabled
-+# <2 - horizontal scrolling disabled
-+# - (should reset scrolling regions, but that glitches the screen)
- #
--prism9-8-w|p9-8-w|P9-8-W|MDC Prism-9 in Prism 8 emulation and 132 column mode,
-- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-- ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8-w,
-+d470c|d470|Data General DASHER D470C,
-+ is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h,
-+ sgr=\E[%?%p3%t7;%;%?%p4%t5;%;%?%p2%t4;%;%?%p6%t4;7;%;%?%p1%t2;7;%;%?%p5%t2;%;m\E)%?%p9%t6\016%e4\017%;,
-+ use=dg+color, use=d460,
-
--# p12: Prism-12 in ANSI mode
--# ---------------------------
--#
--# See p9 definition.
--#
--prism12|p12|P12|MDC Prism-12 in ANSI mode,
-- use=p9,
-+d470c-7b|d470-7b|Data General DASHER D470C in 7 bit mode,
-+ is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h,
-+ sgr=\E[%?%p3%t7;%;%?%p4%t5;%;%?%p2%t4;%;%?%p6%t4;7;%;%?%p1%t2;7;%;%?%p5%t2;%;m%?%p9%t\016%e\017%;,
-+ use=dg+color, use=d460-7b,
-
--# p12-w: Prism-12 in 132 column mode
--# ----------------------------------
--#
--# 'Wide' version of p12.
-+# Initialization string 2 sets:
-+# ^^FQ2 - default cursor (solid rectangle)
-+# ^^FW - character protection disabled
-+# ^^F\^ - horizontal scrolling enabled (for alignment)
-+# ^^FX004? - margins at columns 0 and 79
-+# ^^F] - horizontal scrolling disabled
-+# ^^O - primary character set
-+# ^^FS00 - default character set (the keyboard native language)
-+# - (should reset scrolling regions, but that glitches the screen)
- #
--prism12-w|p12-w|P12-W|MDC Prism-12 in 132 column mode,
-- use=p9-w,
-+d470c-dg|d470-dg|Data General DASHER D470C in DG mode,
-+ is2=\036FQ2\036FW\036F\^\036FX004?\036F]\036O\036FS00,
-+ use=dgmode+color, use=d460-dg,
-
--# p12-m: Prism-12 in MDC emulation mode
--# -------------------------------------
--#
--# P12 terminal in MDC emulation mode.
--# Similar to p8 definition.
--# Insertion and deletion operations possible.
--#
--prism12-m|p12-m|P12-M|MDC Prism-12 in MDC emulation mode,
-- use=p9-8,
-+# DASHER D555 terminal in ANSI mode.
-+# Like a D411, but has an integrated phone.
-+d555|Data General DASHER D555,
-+ use=d411,
-+d555-7b|Data General DASHER D555 in 7-bit mode,
-+ use=d411-7b,
-+d555-w|Data General DASHER D555 in wide mode,
-+ use=d411-w,
-+d555-7b-w|Data General DASHER D555 in wide 7-bit mode,
-+ use=d411-7b-w,
-+d555-dg|Data General DASHER D555 series in DG mode,
-+ use=d411-dg,
-
--# p12-m-w: Prism-12 in MDC emulation and 132 column modes
--# -------------------------------------------------------
--#
--# P12 terminal in MDC emulation mode and 132 column mode.
--#
--prism12-m-w|p12-m-w|P12-M-W|MDC Prism-12 in MDC emulation and 132 column mode,
-- use=p9-8-w,
-+# DASHER D577 terminal in ANSI mode.
-+# Like a D411, but acts as a keyboard for serial printers ("KSR" modes).
-+d577|Data General DASHER D577,
-+ use=d411,
-+d577-7b|Data General DASHER D577 in 7-bit mode,
-+ use=d411-7b,
-+d577-w|Data General DASHER D577 in wide mode,
-+ use=d411-w,
-+d577-7b-w|Data General DASHER D577 in wide 7-bit mode,
-+ use=d411-7b-w,
-
--# p14: Prism-14 in ANSII mode
--# ---------------------------
-+d577-dg|d578-dg|Data General DASHER D577/D578 series in DG mode,
-+ use=d411-dg,
-+
-+# DASHER D578 terminal.
-+# Like a D577, but without compressed mode; like a D470C in this respect.
- #
--# See p9 definition.
-+# Initialization string 1 sets:
-+# \E[<0;<1;<2;<4l
-+# <0 - scrolling enabled
-+# <1 - blink enabled
-+# <2 - horizontal scrolling enabled (for alignment)
-+# <4 - print characters regardless of attributes
-+# \E[1;1;80w - margins at columns 1 and 80
-+# \E[1;6;<2h
-+# 1 - print all characters even if protected
-+# 6 - character protection disabled
-+# <2 - horizontal scrolling disabled
-+# - (should reset scrolling regions, but that glitches the screen)
- #
--prism14|p14|P14|MDC Prism-14 in ANSII mode,
-- use=p9,
-+d578|Data General DASHER D578,
-+ is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577,
-+d578-7b|Data General DASHER D578 in 7-bit mode,
-+ is1=\E[<0;<1;<2;<4l\E[1;1;80w\E[1;6;<2h, use=d577-7b,
-
--# p14-w: Prism-14 in 132 column mode
--# ----------------------------------
-+#### Datamedia (dm)
- #
--# 'Wide' version of p14.
-+# Datamedia was headquartered in Nashua, New Hampshire until it went
-+# out of business in 1993, but the ID plates on the terminals referred
-+# to the factory in Pennsauken, NJ. The factory was sold to a PCB board
-+# manufacturer which threw out all information about the terminals.
- #
--prism14-w|p14-w|P14-W|MDC Prism-14 in 132 column mode,
-- use=p9-w,
-
--# p14-m: Prism-14 in MDC emulation mode
--# -------------------------------------
-+cs10|colorscan|Datamedia Color Scan 10,
-+ msgr,
-+ cols#80, lines#24,
-+ bel=^G, clear=\E[H\E[J, cr=^M, cub1=^H, cud1=^J, cuf1=\E[C,
-+ cup=\E[%i%p1%02d;%p2%02dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-+ ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, rmso=\E[m, rmul=\E[m,
-+ sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-+cs10-w|Datamedia Color Scan 10 with 132 columns,
-+ cols#132,
-+ cup=\E[%i%p1%02d;%p2%03dH, use=cs10,
-+
-+# (dm1520: removed obsolete ":ma=^\ ^_^P^YH:" -- esr)
-+dm1520|dm1521|datamedia 1520,
-+ OTbs, am, xenl,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\,
-+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-+ home=^Y, ht=^I, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_,
-+ 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,
-+ OTbs, OTnc,
-+ cols#80, lines#24,
-+ bel=^G, clear=^^^^\177, cub1=^H, cud1=^J, cuf1=^\,
-+ cup=\014%p2%{96}%^%c%p1%{96}%^%c, cuu1=^Z,
-+ dch1=\020\010\030\035$<10*>,
-+ dl1=\020\032\030\035$<10*>, el=^W, home=^B,
-+ ich1=\020\034\030\035$<10*>,
-+ il1=\020\n\030\035\030\035$<15>, ind=^J, pad=\377,
-+ rmdc=^X^], rmir=\377\377\030\035$<10>, rmso=^X^],
-+ smdc=^P, smir=^P, smso=^N,
-+# dmchat is like DM2500, but DOES need "all that padding" (jcm 1/31/82)
-+# also, has a meta-key.
-+# From: <goldberger@su-csli.arpa>
-+# (dmchat: ":MT:" changed to ":km:" -- esr)
-+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,
-+ OTbs, km,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=\EM$<2>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\EY%p2%{32}%+%c%p1%{32}%+%c, cuu1=\EA,
-+ dch1=\010$<6>, dl1=\EP\EA\EQ$<130>, ed=\EJ$<2>, el=\EK,
-+ home=\EH, ht=^I, il1=\EP\n\EQ$<130>, ind=^J, ip=$<6>,
-+ is2=\EQ\EU\EV, rmdc=\EQ, rmir=\EQ, rmso=\EO0, smdc=\EP,
-+ smir=\EP, smso=\EO1,
-+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,
-+ kf5=\Et\r, kf6=\Eu\r, kf7=\Ev\r, kf8=\Ew\r, kf9=\Ex\r,
-+ khome=\EH, pad=\177, rmdc@, rmir=\EP, rmso@, smdc@, smso@,
-+ use=dm3025,
-+# Datamedia DT80 soft switches:
-+# 1 0=Jump 1=Smooth
-+# Autorepeat 0=off 1=on
-+# Screen 0=Dark 1=light
-+# Cursor 0=u/l 1=block
- #
--# P14 terminal in MDC emulation mode.
--# Similar to p8 definition.
--# Insertion and deletion operations possible.
-+# 2 Margin Bell 0=off 1=on
-+# Keyclick 0=off 1=on
-+# Ansi/VT52 0=VT52 1=Ansi
-+# Xon/Xoff 0=Off 1=On
- #
--prism14-m|p14-m|P14-M|MDC Prism-14 in MDC emulation mode,
-- use=p9-8,
--
--# p14-m-w: Prism-14 in MDC emulation and 132 column modes
--# -------------------------------------------------------
-+# 3 Shift3 0=Hash 1=UK Pound
-+# Wrap 0=Off 1=On
-+# Newline 0=Off 1=On
-+# Interlace 0=Off 1=On
- #
--# P14 terminal in MDC emulation mode and 132 column mode.
-+# 4 Parity 0=Odd 1=Even
-+# Parity 0=Off 1=On
-+# Bits/Char 0=7 1=8
-+# Power 0=60Hz 1=50Hz
- #
--prism14-m-w|p14-m-w|P14-M-W|MDC Prism-14 in MDC emulation and 132 column mode,
-- use=p9-8-w,
--
--# End of McDonnell Information Systems Prism definitions
-+# 5 Line Interface 0=EIA 1=Loop
-+# Aux Interface 0=EIA 1=Loop
-+# Local Copy 0=Off 1=On
-+# Spare
-+#
-+# 6 Aux Parity 0=Odd 1=Even
-+# Aux Parity 0=Off 1=On
-+# 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,
-+ clear=\E[2J\E[H, cud1=^J, 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,
-+ rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-+ use=vt100,
-+# except in 132 column mode, where it needs a little padding.
-+# 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,
-+ cols#132,
-+ clear=\E[H\E[2J$<50/>, cud1=^J,
-+ cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<5/>,
-+ ed=\E[0J$<20/>, el=\E[0K$<20/>, use=dm80,
-+# From: Adam Thompson <athompso@pangea.ca> Sept 10 1995
-+dt80-sas|Datamedia DT803/DTX for SAS usage,
-+ am, bw,
-+ cols#80, lines#24,
-+ acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~,
-+ bel=^G, clear=^L, cr=^M,
-+ csr=\E=%p1%{32}%+%c%{32}%c\E#1\E=%p2%{32}%+%c%{32}%c\E#2,
-+ cub1=^H, cud1=\EB, cuf1=^\,
-+ cup=\E=%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, dl1=\EM, ed=^K,
-+ el=^], ff=^L, home=^Y, ht=^I, hts=\E'1, il1=\EL, ind=\EB,
-+ is2=\E)0\E<\EP\E'0\E$2, kclr=^L, kcub1=^H, kcud1=^J,
-+ kcuf1=^\, kcuu1=^_, ked=^K, kel=^], khome=^Y, mc4=^O, mc5=^N,
-+ rev=\E$2\004, ri=\EI, rmacs=\EG, rmso=^X, sgr0=^X, smacs=\EF,
-+ smso=\E$2\004, tbc=\E'0,
-
--# These things were popular in the Pick database community at one time
--# From: George Land <georgeland@aol.com> 24 Sep 1996
--p8gl|prism8gl|McDonnell-Douglas Prism-8 alternate definition,
-- am, bw, hs, mir,
-- cols#80, lines#24, ma#1, wsl#78, xmc#1,
-- bel=^G, blink=^CB, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, dch1=\s^H, dim=^CA, dl1=^P,
-- ed=\EJ, el=\EK, home=^A, ind=^J, invis=^CH, kbs=^H, kcub1=^U,
-- kcud1=^J, kcuf1=^F, kcuu1=^Z, kdch1=\s^H, kdl1=^P, ked=\EJ,
-- kel=\EK, kf1=^A@\r, kf10=^AI\r, kf12=^AJ\r, kf13=^AK\r,
-- kf14=^AL\r, kf15=^AM\r, kf16=^AN\r, kf17=^AO\r, kf2=^AA\r,
-- kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-- kf8=^AG\r, kf9=^AH\r, khome=^A, lf1=F1, lf10=F10, lf2=F2,
-- lf3=F3, lf4=F4, lf5=F5, lf6=F6, lf7=F7, lf8=F8, lf9=F9, nel=^J^M,
-- pad=\0, rev=^CD, rmso=^C\s, rmul=^C\s, sgr0=^C\s, smso=^CE,
-- smul=^C0,
-+# Datamedia Excel 62, 64 from Gould/SEL UTX/32 via BRL
-+# These aren't end-all Excel termcaps; but do insert/delete char/line
-+# and name some of the extra function keys. (Mike Feldman ccvaxa!feldman)
-+# The naming convention has been bent somewhat, with the use of E? (where
-+# E is for 'Excel') as # a name. This was done to distinguish the entries
-+# 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,
-+ dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, 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,
-+ dch1=\E[P, kbs=^H, kcub1=^H, kcud1=^J, 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,
-+ dch1=\E[P, flash=\E[?5l\E[?5h, kbs=^H, kcub1=^H, kcud1=^J,
-+ kf5=\EOu, kf6=\EOv, kf7=\EOw, kf8=\EOx, kf9=\EOy, rmir=\E[4l,
-+ smir=\E[4h, use=dt80,
-
--#### Microterm (act, mime)
-+#### Falco
- #
--# The mime1 entries refer to the Microterm Mime I or Mime II.
--# The default mime is assumed to be in enhanced act iv mode.
-+# Falco Data Products
-+# 440 Potrero Avenue
-+# Sunnyvale, CA 940864-196
-+# Vox: (800)-325-2648
-+# Fax: (408)-745-7860
-+# 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.
- #
-
--# New "safe" cursor movement (5/87) from <reuss@umd5.umd.edu>. Prevents
--# freakout with out-of-range args on Sytek multiplexors. No <smso=^N> and
--# <rmso=^N> since it gets confused and it's too dim anyway. No <ich1>
--# since Sytek insists ^S means xoff.
--# (act4: found ":ic=2^S:ei=:im=:ip=.1*^V:" commented out in 8.3 -- esr)
--act4|microterm|microterm act iv,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=\014$<12/>, cr=^M, cub1=^H, cud1=^K, cuf1=^X,
-- cup=\024%p1%{24}%+%c%p2%p2%?%{47}%>%t%{48}%+%;%{80}%+%c,
-- cuu1=^Z, dch1=\004$<.1*/>, dl1=\027$<2.3*/>,
-- ed=\037$<2.2*/>, el=\036$<.1*/>, home=^],
-- il1=\001<2.3*/>, ind=^J, kcub1=^H, kcud1=^K, kcuf1=^X,
-- kcuu1=^Z,
--# The padding on :sr: and :ta: for act5 and mime is a guess and not final.
--# The act 5 has hardware tabs, but they are in columns 8, 16, 24, 32, 41 (!)...
--# (microterm5: removed obsolete ":ma==^Z^P^Xl^Kj:" -- esr)
--act5|microterm5|microterm act v,
-- kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, ri=\EH$<3>, uc=^H\EA,
-- use=act4,
--# Mimes using brightness for standout. Half bright is really dim unless
--# you turn up the brightness so far that lines show up on the screen.
--mime-fb|full bright mime1,
-- is2=^S\E, rmso=^S, smso=^Y, use=mime,
--mime-hb|half bright mime1,
-- is2=^Y\E, rmso=^Y, smso=^S, use=mime,
--# (mime: removed obsolete ":ma=^X ^K^J^Z^P:"; removed ":do=^K:" that overrode
--# the more plausible ":do=^J:" -- esr)
--# uc was at one time disabled to get around a curses bug, be wary of it
--mime|mime1|mime2|mimei|mimeii|microterm mime1,
-- OTbs, am,
-- cols#80, it#8, lines#24, vt#9,
-- bel=^G, clear=^]^C, cr=^M, cub1=^H, cud1=^J, cuf1=^X,
-- cup=\024%p1%{24}%+%c%p2%p2%?%{32}%>%t%{48}%+%;%{80}%+%c,
-- cuu1=^Z, dl1=\027$<80>, ed=^_, el=^^, home=^], ht=\011$<2>,
-- il1=\001$<80>, ind=^J, is2=^S\E^Q, kcub1=^H, kcud1=^K,
-- 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),
-+# 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,
- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EI, dch1=\ED,
-- dl1=\027$<20*>, ed=\EJ$<20*>, el=\EK, home=^^,
-- il1=\001$<20*>, ind=^J, ip=$<2>, is2=\E), kcub1=^H, kcud1=^J,
-- kcuf1=^L, kcuu1=^K, ri=\EI, rmir=^Z, rmso=\E;, rmul=\E7,
-- 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,
- cols#80, it#8, lines#24,
-- bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=^N,
-- dl1=\027$<20*>, ed=\EQ$<20*>, el=\EP, home=\EH, ht=^I,
-- il1=\001$<20*>, ind=^J, ip=$<2>, is2=^Y, kcub1=\ED,
-- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EA, rmir=^Z, rmso=\E9,
-- rmul=\E5, smir=^O, smso=\E8, smul=\E4,
--# (mime3a: removed obsolete ":ma=^X ^K^J^Z^P:" -- esr)
--mime3a|mime1 emulating 3a,
-- am@,
-- kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, use=adm3a,
--mime3ax|mime-3ax|mime1 emulating enhanced 3a,
-- it#8,
-- dl1=\027$<80>, ed=^_, el=^X, ht=\011$<3>, il1=\001$<80>,
-- use=mime3a,
--# Wed Mar 9 18:53:21 1983
--# We run our terminals at 2400 baud, so there might be some timing problems at
--# higher speeds. The major improvements in this model are the terminal now
--# scrolls down and insert mode works without redrawing the rest of the line
--# to the right of the cursor. This is done with a bit of a kludge using the
--# exit graphics mode to get out of insert, but it does not appear to hurt
--# anything when using vi at least. If you have some users using act4s with
--# programs that use curses and graphics mode this could be a problem.
--mime314|mm314|mime 314,
-- am,
-- cols#80, lines#24,
-- clear=^L, cub1=^H, cuf1=^X, cup=\024%p1%c%p2%c, cuu1=^Z,
-- dch1=^D, dl1=^W, ed=^_, el=^^, home=^], ht=^I, il1=^A, kcub1=^H,
-- kcud1=^K, kcuf1=^X, kcuu1=^Z, rmir=^V, smir=^S,
--# Microterm mime 340 from University of Wisconsin
--mm340|mime340|mime 340,
-- cols#80, lines#24,
-- clear=\032$<12/>, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-- dch1=\E#$<2.1*/>, dl1=\EV$<49.6/>, ed=\037$<2*/>,
-- el=\EL$<2.1/>, ht=^I, il1=\EU$<46/>, ind=^J, is2=\E\,,
-- kbs=^H, kcub1=^H, kcud1=^J, kcuu1=^K, nel=^M^J,
--# This came from University of Wisconsin marked "astro termcap for jooss".
--# (mt4520-rv: removed obsolete ":kn#4:" and incorrect ":ri=\E[C:";
--# also added <rmam>/<smam> based on the init string -- esr)
--mt4520-rv|micro-term 4520 reverse video,
-- am, hs, msgr, xenl, xon,
-- cols#80, it#8, lines#24, wsl#80,
-- bel=^G, clear=\E[H\E[J, cnorm=\E[0V\E8, cr=^M,
-- 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,
-- cvvis=\E7\E[0U, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-- dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l$<200/>\E[?5h,
-- fsl=\E[?5l\E[?5h, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-- ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-- is2=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[1;24r\E[24;1H\E[H\E[J,
-- kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H,
-- ll=\E[24;1H, nel=\EE, rc=\E8, rf=/usr/share/tabset/vt100,
-- ri=\EM, rmam=\E[?7l, rmso=\E[0m, rmul=\E[24m,
-- rs1=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[H\E[J,
-- sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m,
-- tbc=\E[g, tsl=\E[25;1H,
--
--# Fri Aug 5 08:11:57 1983
--# This entry works for the ergo 4000 with the following setups:
--# ansi,wraparound,newline disabled, xon/xoff disabled in both
--# setup a & c.
--#
--# WARNING!!! There are multiple versions of ERGO 4000 microcode
--# Be advised that very early versions DO NOT WORK RIGHT !!
--# Microterm does have a ROM exchange program- use it or lose big
--# (ergo400: added <rmam>/<smam> based on the init string -- esr)
--ergo4000|microterm ergo 4000,
-- da, db, msgr,
-- cols#80, lines#66,
-- bel=^G, clear=\E[H\E[2J$<80>, cr=^M, cub1=^H, cud1=\E[B,
-- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-- dch1=\E[1P$<80>, dl1=\E[1M$<5*>, ed=\E[0J$<15>,
-- el=\E[0K$<13>, ht=^I, il1=\E[1L$<5*>, ind=\ED$<20*>,
-- is2=\E<\E=\E[?1l\E[?4l\E[?5l\E[?7h\E[?8h$<300>,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP,
-- kf2=\EOQ, kf3=\EOR, kf4=\EOS, lf1=pf1, lf2=pf2, lf3=pf3,
-- lf4=pf4, ri=\EM$<20*>, rmam=\E[?7l, rmir=\E[4l,
-- rmkx=\E=$<4>, rmso=\E[m$<20>, sgr0=\E[m$<20>,
-- smam=\E[?7m, smir=\E[4h$<6>, smkx=\E=$<4>,
-- smso=\E[7m$<20>,
-+ bel=^G, clear=\E*, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\EY, el=\ET\EG0\010, home=^^, ht=^I, il1=\EE,
-+ ind=^J, is2=\Eu\E3, kcub1=^H, kcud1=^J, 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,
-+ OTbs, am, da, db, mir, msgr, ul,
-+ cols#80, it#8, lines#24,
-+ bel=^G, cbt=\EI, clear=\E*, cr=^M, cub1=^H, cud1=\E[B,
-+ cuf1=\E[C, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\E[A,
-+ dch1=\EW, dl1=\ER, ed=\EY, el=\ET\EG0\010\Eg0, ht=^I,
-+ il1=\EE, ind=^J, is2=\EZ\E3\E_c, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, khome=\E[H, rmcup=\E_b, rmir=\Er,
-+ 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,
-+ 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>,
-+ clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-+ cuu1=\E[A$<2>, dch1=\E~W, dl1=\E~R, ed=\E[J$<50>,
-+ el=\E[K$<3>, el1=\E[1K$<3>, enacs=\E(B\E)0, home=\E[H,
-+ ht=^I, hts=\EH, ich1=\E~Q, il1=\E~E, ind=^J, is1=\E~)\E~ea,
-+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-+ rc=\E8, rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l,
-+ rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>,
-+ 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,
-+ rmcup=\E~_b, smcup=\E~_d\E[2J, use=ts100,
-
--#### NCR
--#
--# NCR's terminal group was merged with AT&T's when AT&T bought the company.
--# For what happened to that group, see the ADDS section.
--#
--# There is an NCR4103 terminal that's just a re-badged Wyse-50.
-+#### Florida Computer Graphics
- #
-
--# The following vendor-supplied termcaps were captured from the Boundless
--# Technologies site, 8 March 1998. I removed all-upper-case names that were
--# identical, except for case, to lower-case ones. I also uncommented the acsc
--# capabilities.X
--#
--# The Intecolor emulation of the NCR 2900/260C color terminal is basically a
--# DEC vt200/300 with color capabilities added.
--ncr260intan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard,
-- colors#8, pairs#64,
-- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-- use=ncr260vt300an,
--# The Intecolor emulation of the NCR 2900/260C color terminal is basically a
--# DEC vt200/300 with color capabilities added.
--ncr260intwan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard,
-- colors#8, pairs#64,
-- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-- use=ncr260vt300wan,
--# The Intecolor emulation of the NCR 2900/260C color terminal is basically a
--# DEC vt200/300 with color capabilities added.
--ncr260intpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard,
-- colors#8, pairs#64,
-- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-- use=ncr260vt300pp,
--# The Intecolor emulation of the NCR 2900/260C color terminal is basicly a
--# DEC vt200/300 with color capabilities added.
--ncr260intwpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard in 132 column mode,
-- colors#8, pairs#64,
-- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-- use=ncr260vt300wpp,
--# This definition for ViewPoint supports several attributes. This means
--# that it has magic cookies (extra spaces where the attributes begin).
--# Some applications do not function well with magic cookies. The System
--# Administrator's Shell in NCR Unix SVR4 1.03 is one such application.
--# If supporting various attributes is not vital, 'xmc#1' and the extra
--# attributes can be removed.
--# Mapping to ASCII character set ('acsc' capability) can also be
--# restored if needed.
--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,
-- 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=^M, 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\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=^J, kcuf1=^F,
-- 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=\002%^M, kf22=^B&\r, kf23=^B'\r,
-- kf24=^B(\r, kf25=^B)\r, kf26=^B*\r, kf27=^B+\r,
-- kf28=^B\,\r, kf29=^B-\r, kf3=^B3\r, kf30=^B.\r, kf31=^B/\r,
-- kf32=^B0\r, kf4=^B4\r, kf5=^B5\r, kf6=^B6\r, kf7=^B7\r,
-- kf8=^B8\r, kf9=^B9\r, khome=^A, kich1=\Eq, knp=\EJ, kpp=\EJ,
-- kprt=\EP, ll=\001$<5>, mc0=\EP$<100>, mc4=^T, mc5=^R,
-- 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\EcC1\Ee7$<100>,
-- sgr0=\EG0\EH\003, smacs=\EcB1\EH\002, smir=\Eq,
-- smso=\EG4, smul=\EG8, smxon=\Ec21, tsl=\EF,
--ncr260vpwpp|NCR 2900_260 viewpoint wide mode,
-- cols#132,
-- cup=\Ea%i%p1%dR%p2%dC$<30>,
-- is2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>,
-- rs2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>,
-- use=ncr260vppp,
--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>,
-- 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$~,
-- ech=\E[%p1%dX, ed=\E[0J$<5>, el=\E[0K$<3>, el1=\E[1K$<3>,
-- fsl=\E[0$}, home=\E[H$<1>, hpa=\E[%p1%dG$<40>, ht=^I,
-- hts=\EH, ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>,
-- il1=\E[L$<5>, ind=\ED$<5>, indn=\E[%p1%dE$<5>,
-- invis=\E[8m,
-- 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,
-- 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>,
-- sc=\E7,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;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,
--ncr260vt100wan|NCR 2900_260 vt100 wide mode ansi kybd,
-- cols#132,
-- cup=\E[%i%p1%d;%p2%dH$<30>,
-- is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- use=ncr260vt100an,
--ncr260vt100pp|NCR 2900_260 vt100 with PC+ kybd,
-- is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~,
-- kend=\E[5~, khome=\E[2~, kich1=\E[1~, knp=\E[6~, kpp=\E[3~,
-- lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>,
-- rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- smkx=\E=, use=ncr260vt100an,
--ncr260vt100wpp|NCR 2900_260 vt100 wide mode pc+ kybd,
-- cols#132,
-- cup=\E[%i%p1%d;%p2%dH$<30>,
-- is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- use=ncr260vt100pp,
--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>,
-- 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$~,
-- ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>,
-- fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH,
-- ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>,
-- ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m,
-- 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,
-- 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,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>,
-- 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,
--ncr260vt200wan|NCR 2900_260 vt200 wide mode ansi kybd,
-- cols#132,
-- cup=\E[%i%p1%d;%p2%dH$<30>,
-- is2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>,
-- rs2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>,
-- use=ncr260vt200an,
--ncr260vt200pp|NCR 2900_260 vt200 with pc+ kybd,
-- ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~,
-- kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
-- lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=,
-- use=ncr260vt200an,
--ncr260vt200wpp|NCR 2900_260 vt200 wide mode pc+ kybd,
-- cols#132,
-- cup=\E[%i%p1%d;%p2%dH$<30>,
-- is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- use=ncr260vt200pp,
--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>,
-- 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$~,
-- ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>,
-- fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH,
-- ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>,
-- ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m,
-- 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,
-- 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,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<20>,
-- 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,
--ncr260vt300wan|NCR 2900_260 vt300 wide mode ansi kybd,
-+# Florida Computer Graphics Beacon System, using terminal emulator program
-+# "host.com", as provided by FCG. This description is for an early release
-+# of the "host" program. Known bug: <ed> clears the whole screen, so it's
-+# commented out.
-+
-+# From: David Bryant <cbosg!djb> 1/7/83
-+beacon|FCG Beacon System,
-+ am, da, db,
-+ cols#80, lines#32,
-+ bel=\ESTART\r\E37\r\EEND\r$<1>,
-+ blink=\ESTART\r\E61\,1\r\EEND\r, clear=\EZ$<10>, cr=^M,
-+ cub1=^H, cud1=^J, cuf1=\EV,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<20>, cuu1=\EU,
-+ dch1=\EW, dl1=\ER, el=\ET, home=\EH$<10>, ich1=\EQ, il1=\EE,
-+ ind=^J, rev=\ESTART\r\E59\,1\r\EEND\r, rmcup=,
-+ rmso=\ESTART\r\E70\,0\r\EEND\r$<20>,
-+ rmul=\ESTART\r\E60\,0\r\EEND\r,
-+ sgr0=\ESTART\r\E78\r\E70\,0\r\EEND\r$<20>,
-+ smcup=\ESTART\r\E2\,0\r\E12\r\EEND\r$<10>,
-+ smso=\ESTART\r\E70\,6\r\EEND\r$<20>,
-+ smul=\ESTART\r\E60\,1\r\EEND\r,
-+
-+#### Fluke
-+#
-+
-+# The f1720a differences from ANSI: no auto margin, destructive
-+# tabs, # of lines, funny highlighting and underlining
-+f1720|f1720a|fluke 1720A,
-+ xt,
-+ cols#80, lines#16, xmc#1,
-+ bel=^G, clear=\E[H\E[2J, cr=^M, cub1=^H, cud1=\E[B,
-+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, ed=\E[J,
-+ el=\E[K, ind=\ED, is2=\E[H\E[2J, kcub1=^_, kcud1=^],
-+ kcuf1=^^, kcuu1=^\, ri=\EM, rmso=\E[m, rmul=\E[m, sgr0=\E[m,
-+ smso=\E[7m, smul=\E[4m,
-+
-+#### Liberty Electronics (Freedom)
-+#
-+# Liberty Electronics
-+# 48089 Fremont Blvd
-+# Fremont CA 94538
-+# Vox: (510)-623-6000
-+# Fax: (510)-623-7021
-+
-+# From: <faletti@berkeley.edu>
-+# (f100: added empty <acsc> to suppress a tic warning;
-+# made this relative to adm+sgr -- note that <invis> isn't
-+# known to work for f100 but does on the f110. --esr)
-+f100|freedom|freedom100|freedom model 100,
-+ OTbs, am, bw, hs, mir, msgr, xon,
-+ cols#80, lines#24,
-+ acsc=, bel=^G, cbt=\EI, clear=^Z, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ dch1=\EW, dl1=\ER$<11.5*>, dsl=\Eg\Ef\r, ed=\EY, el=\ET,
-+ flash=\Eb$<200>\Ed, fsl=^M, home=^^, hpa=\E]%p1%{32}%+%c,
-+ ht=^I, hts=\E1, il1=\EE$<8.5*>, ind=^J, ip=$<6>,
-+ is2=\Eg\Ef\r\Ed, kbs=^H, kcbt=\EI, kcub1=^H, kcud1=^V,
-+ kcuf1=^L, kcuu1=^K, kf1=^A@\r, kf10=^AI\r, kf2=^AA\r,
-+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-+ kf8=^AG\r, kf9=^AH\r, khome=^^, ri=\Ej, rmacs=\E$, rmir=\Er,
-+ smacs=\E%%, smir=\Eq, tbc=\E3, tsl=\Eg\Ef,
-+ vpa=\E[%p1%{32}%+%c, use=adm+sgr,
-+f100-rv|freedom-rv|freedom 100 in reverse video,
-+ flash=\Ed$<200>\Eb, is2=\Eg\Ef\r\Eb, use=f100,
-+# The f110 and f200 have problems with vi(1). They use the ^V
-+# code for the down cursor key. When kcud1 is defined in terminfo
-+# as ^V, the Control Character Quoting capability (^V in insert mode)
-+# is lost! It cannot be remapped in vi because it is necessary to enter
-+# a ^V to to quote the ^V that is being remapped!!!
-+#
-+# f110/f200 users will have to decide whether
-+# to lose the down cursor key or the quoting capability. We will opt
-+# initially for leaving the quoting capability out, since use of VI
-+# is not generally applicable to most interactive applications
-+# (f110: added <ht>, <khome> & <kcbt> from f100 -- esr)
-+f110|freedom110|Liberty Freedom 110,
-+ bw@, eslok,
-+ it#8, wsl#80,
-+ blink=\EG2, bold=\EG0, civis=\E.1, cnorm=\E.2, cud1=^V,
-+ dim=\EG@, dl1=\ER, dsl=\Ef\r, flash=\Eb$<200/>\Ed, il1=\EE,
-+ ip@, is2@, kclr=^^, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET,
-+ kf0=^AI\r, kf10@, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`,
-+ ri=\EJ, rmacs=\E%%, rmir=\Er\EO, smacs=\E$, smir=\EO\Eq,
-+ smso=\EG<, tsl=\Ef, use=f100,
-+f110-14|Liberty Freedom 110 14inch,
-+ dch1@, use=f110,
-+f110-w|Liberty Freedom 110 - 132 cols,
-+ cols#132, use=f110,
-+f110-14w|Liberty Freedom 110 14in/132 cols,
- cols#132,
-- cup=\E[%i%p1%d;%p2%dH$<30>,
-- is2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>,
-- rs2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>,
-- use=ncr260vt300an,
--ncr260vt300pp|NCR 2900_260 vt300 with pc+ kybd,
-- ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~,
-- kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
-- lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=,
-- use=ncr260vt300an,
--NCR260VT300WPP|ncr260vt300wpp|NCR 2900_260 vt300 wide mode pc+ kybd,
-+ dch1@, use=f110,
-+# (f200: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr)
-+f200|freedom200|Liberty Freedom 200,
-+ OTbs, am, eslok, hs, mir, msgr, xon,
-+ cols#80, it#8, lines#24, wsl#80,
-+ acsc=, bel=^G, blink=\EG2, bold=\EG0, cbt=\EI, civis=\E.0,
-+ clear=^Z, cnorm=\E.1, cr=^M,
-+ csr=\Em0%p1%{32}%+%c%p2%{32}%+%c, cub1=^H, cud1=^V,
-+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET,
-+ flash=\Eo$<200/>\En, fsl=^M, home=^^,
-+ hpa=\E]%p1%{32}%+%c, hts=\E1, il1=\EE, ind=^J, kbs=^H,
-+ kclr=^^, kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW,
-+ kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r, kf1=^A@\r, kf2=^AA\r,
-+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-+ kf8=^AG\r, kf9=^AH\r, kich1=\EQ, kil1=\EE, mc4=\Ea, mc5=\E`,
-+ ri=\EJ, rmacs=\E%%, rmir=\Er, smacs=\E$, smir=\Eq, smso=\EG<,
-+ tbc=\E3, tsl=\Ef, vpa=\E[%p1%{32}%+%c, use=adm+sgr,
-+f200-w|Liberty Freedom 200 - 132 cols,
-+ cols#132, use=f200,
-+# The f200 has the ability to reprogram the down cursor key. The key is
-+# reprogrammed to ^J (linefeed). This value is remembered in non-volatile RAM,
-+# so powering the terminal off and on will not cause the change to be lost.
-+f200vi|Liberty Freedom 200 for vi,
-+ flash=\Eb$<200/>\Ed, kcud1=^J, use=f200,
-+f200vi-w|Liberty Freedom 200 - 132 cols for vi,
-+ cols#132, use=f200vi,
-+
-+#### GraphOn (go)
-+#
-+# Graphon Corporation
-+# 544 Division Street
-+# Campbell, CA 95008
-+# Vox: (408)-370-4080
-+# Fax: (408)-370-5047
-+# Net: troy@graphon.com (Troy Morrison)
-+#
-+#
-+# The go140 and go225 have been discontinued. GraphOn now makes X terminals,
-+# including one odd hybrid that starts out life on power-up as a character
-+# terminal, than can be switched to X graphics mode (driven over the serial
-+# line) by an escape sequence. No info on this beast yet.
-+# (go140: I added <rmam>/<smam> based on the init string -- esr)
-+go140|graphon go-140,
-+ OTbs,
-+ cols#80, it#8, lines#24,
-+ clear=\E[H\E[2J$<10/>, cub1=^H, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
-+ ed=\E[J$<10/>, el=\E[K, ht=^I,
-+ if=/usr/share/tabset/vt100, il1=\E[L,
-+ is2=\E<\E=\E[?3l\E[?7l\E(B\E[J\E7\E[;r\E8\E[m\E[q,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP,
-+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, ri=\EM,
-+ rmam=\E[?7l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m,
-+ rmul=\E[m, sgr0=\E[m, smam=\E[?7h, smir=\E[4h,
-+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
-+go140w|graphon go-140 in 132 column mode,
-+ am,
- cols#132,
-- cup=\E[%i%p1%d;%p2%dH$<30>,
-- is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-- use=ncr260vt300pp,
--# This terminfo file contains color capabilities for the Wyse325 emulation of
--# the NCR 2900/260C color terminal. Because of the structure of the command
--# (escape sequence) used to set color attributes, one of the fore/background
--# colors must be preset to a given value. I have set the background color to
--# black. The user can change this setup by altering the last section of the
--# 'setf' definition. The escape sequence to set color attributes is
--# ESC d y <foreground_color> <background_color> 1
--# In addition, the background color can be changed through the desk accessories.
--# The capablitiy 'op' sets colors to green on black (default combination).
-+ is2=\E<\E=\E[?3h\E[?7h\E(B\E[J\E7\E[;r\E8\E[m\E[q,
-+ use=go140,
-+# Hacked up vt200 termcap to handle GO-225/VT220
-+# From: <edm@nwnexus.WA.COM>
-+# (go225: I added <rmam>/<smam> based on the init string -- esr)
-+go225|go-225|Graphon 225,
-+ OTbs, am, mir, xenl,
-+ cols#80, it#8, lines#25, vt#3,
-+ blink=\E[5m, bold=\E[1m, clear=\E[H\E[J,
-+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, 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, il1=\E[L, ind=\ED,
-+ is2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, kbs=^H,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP,
-+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H, rc=\E8, rev=\E[7m,
-+ rf=/usr/share/tabset/vt100, ri=\EM, rmam=\E[?7l,
-+ rmcup=\E[!p\E[?7h\E[2;1;1#w, rmir=\E[4l, rmkx=\E>,
-+ rmso=\E[27m, rmul=\E[24m, rs1=\E[!p\E[?7h\E[2;1;1#w,
-+ sc=\E7, sgr0=\E[m, smam=\E[?7h, smcup=\E[2;0#w\E[1;25r,
-+ smir=\E[4h, smkx=\E=, smso=\E[7m, smul=\E[4m,
-+
-+#### Harris (Beehive)
-+#
-+# Bletch. These guys shared the Terminal Brain Damage laurels with Hazeltine.
-+# Their terminal group is ancient history now (1995) though the parent
-+# company is still in business.
-+#
-+
-+# Beehive documentation is undated and marked Preliminary and has no figures
-+# so we must have early Superbee2 (Model 600, according to phone conversation
-+# with mfr.). It has proved reliable except for some missing padding
-+# (notably after \EK and <nl> at bottom of screen).
-+#
-+# The key idea is that AEP mode is poison for <cup> & that US's in
-+# the local memory should be avoided like the plague. That means
-+# that the 2048 character local buffer is used as 25 lines of 80
-+# characters, period. No scrolling local memory, folks. It also
-+# appears that we cannot use naked INS LINE feature since it uses
-+# US. The sbi fakes <il1> with an 80-space insert that may be too
-+# slow at low speeds; also spaces get converted to \040 which is
-+# too long for some programs (not vi). DEL LINE is ok but slow.
-+#
-+# The <nl> string is designed for last line of screen ONLY; cup to
-+# 25th line corrects the motion inherent in scrolling to Page 1.
-+#
-+# There is one understood bug. It is that the screen appears to
-+# pop to a new (blank) page after a <nel>, or leave a half-line
-+# ellipsis to a quad that is the extra 48 memory locations. The
-+# data received is dumped into memory but not displayed. Not to
-+# worry if <cup> is being used; the lines not displayed will be,
-+# whenever the cursor is moved up there. Since <cup> is addressed
-+# relative to MEMORY of window, nothing is lost; but beware of
-+# relative cursor motion (<cuu1>,<cud1>,<cuf1>,<cub1>). Recommended,
-+# therefore, is setenv MORE -c .
-+#
-+# WARNING: Not all features tested.
-+#
-+# Timings are assembled from 3 sources. Some timings may reflect
-+# SB2/Model 300 that were used if more conservative.
-+# Tested on a Model 600 at 1200 and 9600 bd.
-+#
-+# The BACKSPACEkb option is cute. The NEWLINE key, so cleverly
-+# placed on the keyboard and useless because of AEP, is made
-+# into a backspace key. In use ESC must be pressed twice (to send)
-+# and sending ^C must be prefixed by ESC to avoid that weird
-+# transmit mode associated with ENTER key.
-+#
-+# IF TERMINAL EVER GOES CATATONIC with the cursor buzzing across
-+# the screen, then it has dropped into ENTER mode; hit
-+# RESET--ONLINE--!tset.
-+#
-+# As delivered this machine has a FATAL feature that will throw
-+# it into that strange transmit state (SPOW) if the space bar is
-+# hit after a CR is received, but before receiving a LF (or a
-+# few others).
-+#
-+# The circuits MUST be modified to eliminate the SPOW latch.
-+# This is done by strapping on chip A46 of the I/O board; cut
-+# the p.c. connection to Pin 5 and strap Pin 5 to Pin 8 of that
-+# chip. This mod has been checked out on a Mod 600 of Superbee II.
-+# With this modification absurdly high timings on cr are
-+# unnecessary.
-+#
-+# NOTE WELL that the rear panel switch should be set to CR/LF,
-+# not AEP!
-+#
-+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,
-+ cub1=^H, cud1=^J, cuf1=\EC$<3>, cup=\EF%p2%03d%p1%03d,
-+ cuu1=\EA$<3>, dch1=\EP$<3>, dl1=\EM$<100>, ed=\EJ$<3>,
-+ el=\EK$<3>, home=\EH$<1>, ht=^I, hts=\E1,
-+ il1=\EN\EL$<3>\EQ \EP$<3> \EO\ER\EA$<3>,
-+ ind=^J, 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.,
-+ xsb,
-+ cr=\r$<1>, il1=\EN$<1>\EL$<9>\EQ \EP$<9> \EO\ER\EA,
-+ use=sb1,
-+# Alternate (older) description of Superbee - f1=escape, f2=^C.
-+# Note: there are at least 3 kinds of superbees in the world. The sb1
-+# holds onto escapes and botches ^C's. The sb2 is the best of the 3.
-+# The sb3 puts garbage on the bottom of the screen when you scroll with
-+# the switch in the back set to CRLF instead of AEP. This description
-+# is tested on the sb2 but should work on all with either switch setting.
-+# The f1/f2 business is for the sb1 and the <xsb> can be taken out for
-+# 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,
-+ am, da, db, xsb,
-+ cols#80, it#8, lines#25,
-+ clear=\EH\EJ$<3>, cnorm=^J, cr=\r$<1000>, cub1=^H, cud1=^J,
-+ cuf1=\EC, cup=\EF%p2%3d%p1%3d, cuu1=\EA$<3>,
-+ 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,
-+# This loses on lines > 80 chars long, use at your own risk
-+superbeeic|super bee with insert char,
-+ ich1=, rmir=\ER, smir=\EQ, use=superbee-xsb,
-+sb2|sb3|fixed superbee,
-+ xsb@, use=superbee,
-+
-+#### Beehive Medical Electronics
- #
--# NOTE: The NCR Unix System Administrator's Shell will not function properly
--# if the 'pairs' capability is defined. Un-Comment the 'pairs'
--# capability and recompile if you wish to have it included.
-+# Steve Seymour <srseymour@mindspring.com> writes (Wed, 03 Feb 1999):
-+# Regarding your question though; Beehive terminals weren't made by Harris.
-+# They were made by Beehive Medical Electronics in Utah. They went out of
-+# business in the early '80s.
- #
--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,
-- cbt=\EI, civis=\E`0, clear=\E*$<10>, cnorm=\E`1, cr=^M,
-- 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=^M, 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\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,
-- kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kend=\ET,
-- kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r,
-- kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r,
-- kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r,
-- kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r,
-- kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r, kf30=^Am\r, kf31=^An\r,
-- kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-- kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ,
-- kprt=\EP, mc0=\EP, mc4=^T, mc5=^R,
-- 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\Ee7$<100>,
-- setb=\s,
-- setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{64}%e%p1%{8}%=%t%{57}%e%p1%{9}%=%t%{58}%e%p1%{10}%=%t%{59}%e%p1%{11}%=%t%{60}%e%p1%{12}%=%t%{61}%e%p1%{13}%=%t%{62}%e%p1%{14}%=%t%{63}%e%p1%{15}%=%t%{56}%;\Edy%c11$<100>,
-- 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,
-- 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\Ee7$<100>,
-- rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>,
-- use=ncr260wy325pp,
--# This definition for Wyse 350 supports several attributes. This means
--# that it has magic cookies (extra spaces where the attributes begin).
--# Some applications do not function well with magic cookies. The System
--# Administrator's Shell in NCR Unix SVR4 1.03 is one such application.
--# If supporting various attributes is not vital, 'xmc#1' and the extra
--# attributes can be removed.
--# Mapping to ASCII character set ('acsc' capability) can also be
--# restored if needed.
--# In addition, color capabilities have been added to this file. The drawback,
--# however, is that the background color has to be black. The foreground colors
--# are numbered 0 through 15.
-+# (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,
-+ OTbs, am, mir,
-+ cols#80, lines#24,
-+ cbt=\E>, clear=\EE, cub1=^H, cud1=\EB, cuf1=\EC,
-+ cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EP,
-+ dl1=\EM, ed=\EJ, el=\EK, home=\EH, il1=\EL, kbs=^H, kcbt=\E>,
-+ kclr=\EE, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-+ kdch1=\EP, kdl1=\EM, kel=\EK, khome=\EH, kich1=\EQ, kil1=\EL,
-+ krmir=\E@, rmir=\E@, rmso=\Ed@, rmul=\Ed@, sgr0=\Ed@,
-+ smir=\EQ, smso=\EdP, smul=\Ed`,
-+# set tab is ^F, clear (one) tab is ^V, no way to clear all tabs.
-+# good grief - does this entry make :sg:/:ug: when it doesn't have to?
-+# 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,
-+ OTbs, am,
-+ cols#80, it#8, lines#20,
-+ bel=^G, clear=^E^R, cr=^M, cub1=^H, cud1=^J, cuf1=^L, cuu1=^K,
-+ dl1=\021$<350>, ed=^R, el=^P, home=^E, ht=^I, hts=^F,
-+ il1=\023$<160>, ind=^J, ll=^E^K, rmso=\s^_, smso=^]\s,
-+beehive4|bh4|beehive 4,
-+ am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\EE, cr=^M, cub1=\ED, cud1=^J, cuf1=\EC,
-+ cuu1=\EA, ed=\EJ, el=\EK, home=\EH, ind=^J,
-+# 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,
-+ OTbs, am,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=\EE, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\EF%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
-+ el=\EK, ht=^I, ind=^J, 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`,
-+
-+# 8675, 8686, and bee from Cyrus Rahman
-+# (8675: changed k10, k11...k16 to k;, F1...F6 -- esr)
-+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=^J, kf6=^T, kf7=^H,
-+ kf8=\177, kf9=\Ee, use=bee,
-+# (8686: changed k10, k11...k16 to k;, F1...F6; fixed broken continuation
-+# in :is: -- esr)
-+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"8F75021B7383#\E"8F851BD7#\E"8F95021B7083#\E"8FA5021B7183#\E"8FB5021B7283#,
-+ kf1=\002\Ep\003, kf10=\Ej, kf11=\EW, kf12=\002\E{\003,
-+ kf13=\002\E|\003, kf14=\002\E}\003, kf15=\002\E~\003,
-+ kf16=\002\E\177\003, kf2=\002\Eq\003, kf3=\002\Er\003,
-+ kf4=\002\Es\003, kf5=\E3, kf6=\EI, kf7=\ER, kf8=\EJ, kf9=\E(,
-+ use=bee,
-+
-+#### Hazeltine
-+#
-+# Hazeltine appears to be out of the terminal business as of 1995. These
-+# guys were co-owners of the Terminal Brain Damage Hall Of Fame along with
-+# Harris. They have a hazeltine.com domain (but no web page there ) and can
-+# be reached at:
-+#
-+# Hazeltine
-+# 450 East Pulaski Road
-+# Greenlawn, New York 11740
-+#
-+# As late as 1993, manuals for the terminal product line could still be
-+# purchased from:
-+#
-+# TRW Customer Service Division
-+# 15 Law Drive
-+# P.O. Box 2076
-+# Fairfield, NJ 07007-2078
-+#
-+# They're now (1998) a subsidiary of General Electric, operating under the
-+# marque "GEC-Marconi Hazeltine" and doing military avionics. Web page
-+# at <http://www.gec.com/cpd/1ncpd.htm#1.55>.
-+#
-+
-+# Since <cuf1> is blank, when you want to erase something you
-+# are out of luck. You will have to do ^L's a lot to
-+# 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,
-+ OTbs,
-+ cols#80, lines#12,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\s, home=^K,
-+ ind=^J,
-+# From: <cbosg!ucbvax!pur-ee!cincy!chris> Thu Aug 20 09:09:18 1981
-+hz1420|hazeltine 1420,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=^J, cuf1=^P,
-+ cup=\E\021%p2%c%p1%{32}%+%c, cuu1=\E^L, dl1=\E^S,
-+ ed=\E^X, el=\E^O, ht=^N, il1=\E^Z, ind=^J, rmso=\E^Y,
-+ smso=\E^_,
-+# 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,
-+ OTbs, am, hz,
-+ cols#80, lines#24,
-+ bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P,
-+ cup=~\021%p2%p2%?%{30}%>%t%{32}%+%;%{96}%+%c%p1%{96}%+%c,
-+ cuu1=~^L, dl1=~\023$<40>, ed=~\030$<10>, el=~^O, home=~^R,
-+ il1=~\032$<40>, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^P,
-+ kcuu1=~^L, khome=~^R, rmso=~^Y, smso=~^_,
-+# h1510 assumed to be in sane escape mode. Else use h1500.
-+# (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,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K, cuf1=^P,
-+ cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S, ed=\E^X,
-+ el=\E^O, il1=\E^Z, ind=^J,
-+# Hazeltine 1520
-+# The following switch settings are assumed for normal operation:
-+# FULL CR U/L_CASE ESCAPE
-+# FORMAT_OFF EOM_A_OFF EOM_B_OFF WRAPAROUND_ON
-+# Other switches may be set for operator convenience or communication
-+# requirements.
-+hz1520|Hazeltine 1520,
-+ OTbs, am, bw, msgr,
-+ cols#80, lines#24,
-+ bel=^G, bold=\E^_, clear=\E^\, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S,
-+ ed=\E^X, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, kbs=^H,
-+ kclr=\E^\, kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L,
-+ kdl1=\E^S, ked=\E^X, kel=\E^O, khome=\E^R, kil1=\E^Z,
-+ 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,
-+ am, hz,
-+ cols#80, lines#24,
-+ bel=^G, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P,
-+ cup=~\021%p2%c%p1%c$<1>, cuu1=~^L, dl1=~^S, ed=~^X, el=~^O,
-+ home=~^R, il1=~^Z, ind=^J, rmso=~^Y, smso=~^_,
-+# 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,
-+ OTbs,
-+ cud1=^J, 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=^J, rmso=\ET, smso=\ES, use=hz1552,
-+# Note: h2000 won't work well because of a clash between upper case and ~'s.
-+hz2000|hazeltine 2000,
-+ OTbs, OTnc, am,
-+ cols#74, lines#27,
-+ bel=^G, clear=~\034$<6>, cub1=^H, cud1=^J,
-+ cup=~\021%p2%c%p1%c, dl1=~\023$<6>, home=~^R,
-+ il1=~\032$<6>, ind=^J, pad=\177,
-+# Date: Fri Jul 23 10:27:53 1982. Some unknown person wrote:
-+# I tested this termcap entry for the Hazeltine Esprit with vi. It seems
-+# to work ok. There is one problem though if one types a lot of garbage
-+# characters very fast vi seems not able to keep up and hangs while trying
-+# to insert. That's in insert mode while trying to insert in the middle of
-+# a line. It might be because the Esprit doesn't have insert char and delete
-+# char as a built in function. Vi has to delete to end of line and then
-+# redraw the rest of the line.
-+esprit|Hazeltine Esprit I,
-+ OTbs, am, bw,
-+ cols#80, lines#24,
-+ bel=^G, cbt=\E^T, clear=\E^\, cr=^M, cub1=^H, cud1=\E^K,
-+ cuf1=^P, cup=\E\021%p2%c%p1%c, cuu1=\E^L, dl1=\E^S,
-+ ed=\E^W, el=\E^O, home=\E^R, il1=\E^Z, ind=^J, is2=\E?, kbs=^H,
-+ kcub1=^H, kcud1=\E^K, kcuf1=^P, kcuu1=\E^L, kf0=^B0^J,
-+ kf1=^B1^J, kf2=^B2^J, kf3=^B3^J, kf4=^B4^J, kf5=^B5^J,
-+ kf6=^B6^J, kf7=^B7^J, kf8=^B8^J, kf9=^B9^J, 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,
-+ 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
-+# that the terminal would work somewhat if the auto LF/CR was turned off.
-+# (hmod1: removed :dn=~^K: -- esr)
-+hmod1|Hazeltine Modular 1,
-+ OTbs, am, hz,
-+ cols#80, lines#24,
-+ bel=^G, cbt=~^T, clear=~^\, cr=^M, cub1=^H, cud1=~^K, cuf1=^P,
-+ cup=~\021%p2%c%p1%c, cuu1=~^L, dl1=~^S, home=~^R, il1=~^Z,
-+ ind=^J, kcub1=^H, kcud1=~^K, kcuf1=^P, kcuu1=~^L, khome=~^R,
-+ rc=~^Q, rmso=~^Y, sc=~^E, sgr0=~^Y, smso=~^_,
- #
--# NOTE: The NCR Unix System Administrator's Shell does not function properly
--# with the 'pairs' capability defined as below. If you wish to
--# have it included, Un-comment it and recompile (using 'tic').
-+# Hazeltine Executive 80 Model 30 (1554?)
-+# from Will Martin <control@ALMSA-1.ARPA> via BRL
-+# Like VT100, except for different "am" behavior.
-+hazel|exec80|h80|he80|Hazeltine Executive 80,
-+ OTbs, OTpt, am,
-+ cols#80, it#8, lines#24, vt#3,
-+ OTnl=^J, bel=^G, blink=\E[5m$<2/>, bold=\E[1m$<2/>,
-+ clear=\E[;H\E[2J$<50/>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub1=^H, cud1=^J, cuf1=\E[C$<2/>,
-+ cup=\E[%i%p1%d;%p2%dH$<5/>, cuu1=\E[A$<2/>,
-+ ed=\E[J$<50/>, el=\E[K$<3/>, home=\E[H, ht=^I,
-+ is2=\E[1;24r\E[24;1H, kbs=^H, kcub1=\EOD, kcud1=\EOB,
-+ kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, kf2=\EOQ, kf3=\EOR,
-+ kf4=\EOS, rc=\E8, rev=\E[7m$<2/>,
-+ rf=/usr/share/tabset/vt100, ri=\EM$<5/>,
-+ rmkx=\E[?1l\E>, rmso=\E[m$<2/>, rmul=\E[m$<2/>,
-+ rs1=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr0=\E[m$<2/>, smkx=\E[?1h\E=, smso=\E[7m$<2/>,
-+ smul=\E[4m$<2/>,
-+
-+#### IBM
-+#
-+
-+ibm327x|line mode IBM 3270 style,
-+ gn,
-+ clear=^M^J, el=^M, home=^M,
-+
-+ibm3101|i3101|IBM 3101-10,
-+ OTbs, am, xon,
-+ cols#80, lines#24,
-+ bel=^G, clear=\EK, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, ed=\EJ,
-+ el=\EI, home=\EH, hts=\E0, ind=^J, kcub1=\ED, kcud1=\EB,
-+ kcuf1=\EC, kcuu1=\EA, nel=^M^J, tbc=\EH,
-+ibm3151|IBM 3151 display,
-+ is2=\E S, rmacs=\E>B, rmcup=\E>B, rs2=\E S, s0ds=\E>B,
-+ sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E>B%;,
-+ sgr0=\E4@\E>B, smacs=\E>A, smcup=\E>B, use=ibm3162,
-+# From: Mark Easter <marke@fsi-ssd.csg.ssd.fsi.com> 29 Oct 1992
-+# removed kend, knp, kpp -TD
-+ibm3161|ibm3163|wy60-316X|wyse60-316X|IBM 3161/3163 display,
-+ OTbs, am, mir, msgr,
-+ cols#80, it#8, lines#24,
-+ acsc=j\352k\353l\354m\355n\356q\361t\364u\365v\366w\367x\370,
-+ bel=^G, blink=\E4D, bold=\E4H, clear=\EH\EJ, cr=^M, cub1=\ED,
-+ cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-+ cuu1=\EA, dch1=\EQ, dl1=\EO, ed=\EJ, el=\EI, home=\EH, ind=^J,
-+ invis=\E4P, kbs=^H, kcbt=\E2, kclr=\EL\r, kctab=\E1,
-+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kdch1=\EQ,
-+ kdl1=\EO, ked=\EJ, kel=\EI, kf1=\Ea\r, kf10=\Ej\r,
-+ kf11=\Ek\r, kf12=\El\r, kf13=\E!a\r, kf14=\E!b\r,
-+ kf15=\E!c\r, kf16=\E!d\r, kf17=\E!e\r, kf18=\E!f\r,
-+ kf19=\E!g\r, kf2=\Eb\r, kf20=\E!h\r, kf21=\E!i\r,
-+ kf22=\E!j\r, kf23=\E!k\r, kf24=\E!l\r, kf3=\Ec\r,
-+ kf4=\Ed\r, kf5=\Ee\r, kf6=\Ef\r, kf7=\Eg\r, kf8=\Eh\r,
-+ kf9=\Ei\r, khome=\EH, khts=\E0, kich1=\EP \010, kil1=\EN,
-+ ktbc=\E 1, mc4=^P^T, mc5=^P^R, rev=\E4A, rmcup=\E>A,
-+ rmso=\E4@, rmul=\E4@,
-+ sgr=\E4%{64}%?%p1%t%{65}%|%;%?%p2%t%{66}%|%;%?%p3%t%{65}%|%;%?%p4%t%{68}%|%;%?%p5%t%{64}%|%;%?%p6%t%{72}%|%;%?%p7%t%{80}%|%;%c%?%p9%t\E>A%e\E<@%;,
-+ sgr0=\E4@\E<@, smcup=\E>A, smso=\E4A, smul=\E4B,
-+
-+ibm3161-C|IBM 3161-C NLS terminal using cartridge,
-+ rmcup=\E>B, s0ds=\E>B, s1ds=\E>A, smcup=\E>B, use=ibm3161,
-+ibm3162|IBM 3162 display,
-+ blink=\E4$a, bold=\E4(a, il1=\EN, invis=\E40a, rev=\E4!a,
-+ rmso=\E4>b, rmul=\E4=b, sgr0=\E4@, smso=\E4!a, smul=\E4"a,
-+ use=ibm3161-C,
-+
-+# This really should not use setab/setaf, but it is clear that the
-+# original terminfo does not toggle red/blue colors as in setb/setf.
-+ibm3164|i3164|IBM 3164,
-+ msgr,
-+ colors#8, pairs#64,
-+ op=\E4 "@, rmcup=\E!9(N\E>B, s0ds=\E>B, s1ds=\E>A,
-+ setab=\E4 %p1%{64}%+%c,
-+ setaf=\E4%?%p1%t %p1%{32}%+%c%e!'%;@,
-+ smcup=\E!9/N\E>B, use=ibm3161,
-+
-+ibm5151|wy60-AT|wyse60-AT|IBM 5151 Monochrome display,
-+ am, bw, msgr, xon,
-+ cols#80, it#8, lines#25,
-+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ 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, ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H,
-+ hpa=\E[%i%p1%dG, il=\E[%p1%dL, il1=\E[L, ind=\E[S,
-+ indn=\E[%p1%dS, invis=\E[8m, is2=\Ec, kbs=^H, kcbt=\E[Z,
-+ kclr=\E[144q, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kdch1=\E[P, ked=\E[148q, kel=\E[142q,
-+ kend=\E[146q, kf1=\E[001q, kf10=\E[010q, kf11=\E[011q,
-+ kf12=\E[012q, kf13=\E[013q, kf14=\E[014q, kf15=\E[015q,
-+ kf16=\E[016q, kf17=\E[017q, kf18=\E[018q, kf19=\E[019q,
-+ kf2=\E[002q, kf20=\E[020q, kf21=\E[021q, kf22=\E[022q,
-+ kf23=\E[023q, kf24=\E[024q, kf25=\E[025q, kf26=\E[026q,
-+ kf27=\E[027q, kf28=\E[028q, kf29=\E[029q, kf3=\E[003q,
-+ kf30=\E[030q, kf31=\E[031q, kf32=\E[032q, kf33=\E[033q,
-+ kf34=\E[034q, kf35=\E[035q, kf36=\E[036q, kf4=\E[004q,
-+ kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q,
-+ kf9=\E[009q, khome=\E[H, kich1=\E[139q, kil1=\E[140q,
-+ kind=\E[151q, knp=\E[154q, kpp=\E[150q, kri=\E[155q,
-+ krmir=\E[4l, rev=\E[7m, ri=\E[T, rin=\E[%p1%dT, rmir=\E[4l,
-+ rmso=\E[m, rmul=\E[m, rs2=\Ec,
-+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m,
-+ sgr0=\E[0m, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-+
-+ibmaed|IBM Experimental display,
-+ OTbs, am, eo, msgr,
-+ cols#80, it#8, lines#52,
-+ clear=\EH\EK, cub1=^H, cud1=\EB, cuf1=\EC,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=\EQ,
-+ dl1=\EO, ed=\EJ, el=\EI, flash=\EG, home=\EH, ht=^I, ich1=\EP,
-+ il1=\EN, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-+ rmso=\E0, sgr0=\E0, smso=\E0,
-+ibm-apl|apl|IBM apl terminal simulator,
-+ lines#25, use=dm1520,
-+# (ibmmono: this had an unknown `sb' boolean, I changed it to `bs'.
-+# Also it had ":I0=f10:" which pretty obviously should be "l0=f10" -- esr)
-+ibmmono|IBM workstation monochrome,
-+ eslok, hs,
-+ bold=\EZ, dl1=\EM, dsl=\Ej\EY8 \EI\Ek, fsl=\Ek, il1=\EL,
-+ invis=\EF\Ef0;\Eb0;, kbs=^H, kf0=\E<, kf1=\ES, kf2=\ET,
-+ kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER, kf9=\EY,
-+ khome=\EH, kich1=\0, kind=\EE, knp=\EE, kpp=\Eg, kri=\EG,
-+ lf0=f10, rev=\Ep, ri=\EA, rmso=\Ez, rmul=\Ew,
-+ sgr0=\Ew\Eq\Ez\EB, smso=\EZ, smul=\EW, tsl=\Ej\EY8%+ \Eo,
-+ use=ibm3101,
-+ibmega|IBM Enhanced Color Display,
-+ cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J,
-+ nel=^M^J, use=ibmmono,
-+# This color scheme is assumed in some recent IBM terminal descriptions
-+# (green on black, emulated on a 16-color terminal).
-+ibm+color|IBM color definitions,
-+ colors#8, ncv#3, pairs#64,
-+ op=\E[32m\E[40m,
-+ setb=\E[%?%p1%{0}%=%t40m%e%p1%{1}%=%t41m%e%p1%{2}%=%t42m%e%p1%{3}%=%t43m%e%p1%{4}%=%t44m%e%p1%{5}%=%t45m%e%p1%{6}%=%t46m%e%p1%{7}%=%t107m%;,
-+ setf=\E[%?%p1%{0}%=%t30m%e%p1%{1}%=%t31m%e%p1%{2}%=%t32m%e%p1%{3}%=%t33m%e%p1%{4}%=%t34m%e%p1%{5}%=%t35m%e%p1%{6}%=%t36m%e%p1%{7}%=%t97m%;,
-+ibm+16color|IBM aixterm color definitions,
-+ colors#16, pairs#256,
-+ setab=\E[%?%p1%{8}%<%t%p1%{40}%+%e%p1%{92}%+%;%dm,
-+ setaf=\E[%?%p1%{8}%<%t%p1%{30}%+%e%p1%{82}%+%;%dm,
-+ setb=%p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m,
-+ setf=%p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m,
-+ibm5154|IBM 5154 Color display,
-+ colors#8, ncv@, pairs#64,
-+ bold@, setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151,
-+ use=ibm+color,
-+ibmega-c|ibm5154-c|IBM Enhanced Color Display with standout and underline,
-+ rmso=\EB, rmul=\EB, smso=\EF\Ef3;, smul=\EF\Ef2;,
-+ use=ibmmono,
-+ibmvga-c|IBM VGA display color termcap,
-+ cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J,
-+ nel=^M^J, use=ibmega-c,
-+ibmvga|IBM VGA display,
-+ cr=^M, cud1=^J, ht=^I, ind=^J, kbs=^H, kcub1=^H, kcud1=^J,
-+ nel=^M^J, use=ibmega,
-+# ibmapa* and ibmmono entries come from ACIS 4.3 distribution
-+rtpc|ibmapa16|IBM 6155 Extended Monochrome Graphics Display,
-+ lines#32,
-+ dsl=\Ej\EY@ \EI\Ek, tsl=\Ej\EY@%+ \Eo, use=ibmmono,
-+ibm6155|IBM 6155 Black & White display,
-+ blink@, bold@, use=ibm5151,
-+# Advanced Monochrome (6153) and Color (6154) Graphics Display:
-+ibmapa8c|ibmapa8|IBM 6154 Advanced Graphics Display,
-+ lines#31,
-+ dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo, use=ibmmono,
-+ibmapa8c-c|ibm6154-c|IBM 6154 Advanced Color Graphics Display,
-+ lines#31,
-+ dim=\EF\Ef7;, dsl=\Ej\EY? \EI\Ek, tsl=\Ej\EY?%+ \Eo,
-+ 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;12%;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;12%;m,
-+ sgr0=\E[0;10m, use=ibm5151,
-+ibm6153-90|IBM 6153 Black & White display,
-+ cols#90, lines#36,
-+ blink@, bold@, use=ibm5151,
-+ibm6153-40|IBM 6153 Black & White display,
-+ cols#40, lines#12, use=ibm6153-90,
-+ibm8512|ibm8513|IBM color VGA Terminal,
-+ am, mir, msgr,
-+ cols#80, it#8, lines#25,
-+ acsc=jjkkllmmnnqqttuuvvwwxx, blink=\E[5m, bold=\E[1m,
-+ clear=\E[H\E[J, cub1=\E[D, cud1=^J, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dl=\E[%p1%dM, dl1=\E[M,
-+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, il=\E[%p1%dL,
-+ il1=\E[L, is2=\Eb\E[m\017\E[?7h, kcud1=\E[B, kcuu1=\E[A,
-+ kf0=\E[010q, kf1=\E[001q, kf2=\E[002q, kf3=\E[003q,
-+ kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q,
-+ kf8=\E[008q, kf9=\E[009q, khome=\E[H, rc=\E[u, rev=\E[7m,
-+ rmacs=^O, rmam=\E[?7l, rmcup=\E[20h, rmdc=\E[4l,
-+ rmir=\E[4l, rmso=\E[m, rmul=\E[m,
-+ rs1=\Eb\E[m\017\E[?7h\E[H\E[J, sc=\E[s, sgr0=\E[m,
-+ smacs=^N, smam=\E[?7h, smcup=\E[20;4l\E[?7h\Eb,
-+ smdc=\E[4h, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-+ use=ibm8503,
-+hft-c|HFT with Color,
-+ colors#8, pairs#64,
-+ acsc=jjkkllmmnnqqttuuvvwwxx, s0ds=\E(B, s1ds=\E(0,
-+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, sgr0=\E[0m\E(B,
-+ use=ibm5151, use=ibm+color,
-+hft-c-old|HFT with Color PC850,
-+ colors#8, pairs#64,
-+ setab=\E[4%p1%dm, setaf=\E[3%p1%dm, use=ibm5151,
-+ use=ibm+color,
-+hft-old|AIWS High Function Terminal,
-+ am, xon,
-+ cols#80, lines#25,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-+ cub1=^H, cud1=^J, 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=^J, invis=\E[8m, kbs=^H,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kf1=\E[001q, kf2=\E[002q, kf3=\E[003q, kf4=\E[004q,
-+ kf5=\E[005q, kf6=\E[006q, kf7=\E[007q, kf8=\E[008q,
-+ 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,
-+ am, xt,
-+ cols#80, lines#24,
-+ bel=^G, clear=^Z, cub1=^H, cuf1=^\,
-+ cup=\005%p1%{32}%+%c%p2%{32}%+%c, cuu1=^^, home=^K,
-+ ind=^J,
-+# lft-pc850 : IBM Low Function Terminal Device
-+# lft "supports" underline, bold, and blink in the sense that the lft code
-+# sets all the right bits. HOWEVER, depending upon the adapter, these
-+# attributes may or may not be supported by the device driver.
-+lft|lft-pc850|LFT-PC850|IBM LFT PC850 Device,
-+ am, bw, msgr, xon,
-+ cols#80, it#8, lines#25,
-+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-+ cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ 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[2J, el=\E[0K,
-+ home=\E[H, hpa=\E[%i%p1%dG, ich=\E[%p1%d@, il=\E[%p1%dL,
-+ il1=\E[L, ind=\ED, indn=\E[%p1%dS, invis=\E[8m, is2=\Ec,
-+ kbs=^H, kcbt=\E[Z, kclr=\E[144q, kcub1=\E[D, kcud1=\E[B,
-+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[P, ked=\E[148q,
-+ kel=\E[142q, kend=\E[146q, kf1=\E[001q, kf10=\E[010q,
-+ kf11=\E[011q, kf12=\E[012q, kf13=\E[013q, kf14=\E[014q,
-+ kf15=\E[015q, kf16=\E[016q, kf17=\E[017q, kf18=\E[018q,
-+ kf19=\E[019q, kf2=\E[002q, kf20=\E[020q, kf21=\E[021q,
-+ kf22=\E[022q, kf23=\E[023q, kf24=\E[024q, kf25=\E[025q,
-+ kf26=\E[026q, kf27=\E[027q, kf28=\E[028q, kf29=\E[029q,
-+ kf3=\E[003q, kf30=\E[030q, kf31=\E[031q, kf32=\E[032q,
-+ kf33=\E[033q, kf34=\E[034q, kf35=\E[035q, kf36=\E[036q,
-+ kf4=\E[004q, kf5=\E[005q, kf6=\E[006q, kf7=\E[007q,
-+ kf8=\E[008q, kf9=\E[009q, khome=\E[H, kich1=\E[139q,
-+ kil1=\E[140q, kind=\E[151q, knp=\E[154q, kpp=\E[150q,
-+ kri=\E[155q, krmir=\E[4l, rev=\E[7m, ri=\EL, rin=\E[%p1%dT,
-+ rmacs=\E(B, rmir=\E[4l, rmso=\E[0m, rmul=\E[0m, rs2=\Ec,
-+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
-+ sgr0=\E[0m, smacs=\E(0, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-+ tbc=\E[3g,
-+# "Megapel" refers to the display adapter, which was used with the IBM RT
-+# aka IBM 6150.
-+ibm5081|hft|IBM Megapel Color display,
-+ acsc=jjkkllmmnnqqttuuvvwwxx, blink@, bold@, s0ds=\E(B,
-+ s1ds=\E(0, sgr0=\E[0m\E(B, use=ibm5154,
-+ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display,
-+ eslok, hs,
-+ lines#33,
-+ dsl=\Ej\EYA \EI\Ek, fsl=\Ek, tsl=\Ej\EYA%+ \Eo,
-+ use=ibmega-c,
-+ibm8503|ibm8507|ibm8604|IBM 8503 B & W VGA display,
-+ use=hft-c,
-+ibm8514|IBM 8514/a color VGA display,
-+ eslok, hs,
-+ dsl=\Ej\EYI \EI\Ek, fsl=\Ek, tsl=\Ej\EYI%+ \Eo, use=hft,
-+ibm8514-c|IBM 8514 color display with standout and underline,
-+ eslok, hs,
-+ lines#41,
-+ cr=^M, cud1=^J, dsl=\Ej\EYI \EI\Ek, fsl=\Ek, ht=^I, ind=^J,
-+ kbs=^H, kcub1=^H, kcud1=^J, nel=^M^J, tsl=\Ej\EYI%+ \Eo,
-+ use=ibmega-c,
-+
- #
--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,
-- cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M,
-- 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=^M, 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\Ee7$<100>,
-- kDC=\ER, kEND=\EY, kHOM=\E{, kPRT=\E7, kRIT=^L, ka1=^^, kbs=^H,
-- kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L,
-- kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r,
-- kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r,
-- kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r,
-- kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r,
-- kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r,
-- kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r,
-- kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r,
-- khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP,
-- mc0=\EP$<10>, mc4=^T, mc5=^R,
-- 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\Ee7$<100>,
-- setb=\s,
-- setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{102}%e%p1%{8}%=%t%{97}%e%p1%{9}%=%t%{98}%e%p1%{10}%=%t%{99}%e%p1%{11}%=%t%{101}%e%p1%{12}%=%t%{106}%e%p1%{13}%=%t%{110}%e%p1%{14}%=%t%{111}%e%p1%{15}%=%t%{56}%;\Em0%c$<100>,
-- 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,
-- 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\Ee7$<200>,
-- rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>,
-- use=ncr260wy350pp,
--# This definition for Wyse 50+ supports several attributes. This means
--# that it has magic cookies (extra spaces where the attributes begin).
--# Some applications do not function well with magic cookies. The System
--# Administrator's Shell in NCR Unix SVR4 1.03 is one such application.
--# If supporting various attributes is not vital, 'xmc#1' and the extra
--# attributes can be removed.
--# Mapping to ASCII character set ('acsc' capability) can also be
--# 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+,
-- 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,
-- cbt=\EI$<5>, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M,
-- cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<30>, cuu1=\013$<5>,
-- cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>, dsl=\E`c,
-- ed=\EY$<5>, el=\ET$<5>, fsl=^M, 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"\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=^J, kcuf1=^L,
-- kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r,
-- kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r,
-- kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r,
-- kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r,
-- kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r,
-- kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r,
-- kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r,
-- khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP,
-- mc0=\EP$<10>, mc4=^T, mc5=^R,
-- 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"\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,
-- 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"\Ee4\Ex@\E`9\Ee7$<200>,
-- 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,
-- am, bw, hs, km, mc5i, mir, msgr, xon,
-- cols#80, lines#24, nlab#32,
-- acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2,
-- cbt=\EI$<15>, civis=\E`0, clear=\E*$<100>, cnorm=\E`1,
-- cr=^M, 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=^M, 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"\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$<15>, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K,
-- kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r,
-- kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r,
-- kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r,
-- kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r,
-- kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r,
-- kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r,
-- kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^,
-- kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP, mc0=\EP, mc4=^T, mc5=^R,
-- 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"\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,
-- 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"\Ee4\Ex@\E`9\Ee7$<100>,
-- rs2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>,
-- use=ncr260wy60pp,
--ncr160vppp|NCR 2900_160 viewpoint,
-- use=ncr260vppp,
--ncr160vpwpp|NCR 2900_160 viewpoint wide mode,
-- use=ncr260vpwpp,
--ncr160vt100an|NCR 2900_160 vt100 with ansi kybd,
-- use=ncr260vt100an,
--ncr160vt100pp|NCR 2900_160 vt100 with PC+ kybd,
-- use=ncr260vt100pp,
--ncr160vt100wan|NCR 2900_160 vt100 wide mode ansi kybd,
-- use=ncr260vt100wan,
--ncr160vt100wpp|NCR 2900_160 vt100 wide mode pc+ kybd,
-- use=ncr260vt100wpp,
--ncr160vt200an|NCR 2900_160 vt200 with ansi kybd,
-- use=ncr260vt200an,
--ncr160vt200pp|NCR 2900_160 vt200 with pc+ kybd,
-- use=ncr260vt200pp,
--ncr160vt200wan|NCR 2900_160 vt200 wide mode ansi kybd,
-- use=ncr260vt200wan,
--ncr160vt200wpp|NCR 2900_160 vt200 wide mode pc+ kybd,
-- use=ncr260vt200wpp,
--ncr160vt300an|NCR 2900_160 vt300 with ansi kybd,
-- use=ncr260vt300an,
--ncr160vt300pp|NCR 2900_160 vt300 with pc+ kybd,
-- use=ncr260vt300pp,
--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+,
-- use=ncr260wy50+pp,
--ncr160wy50+wpp|NCR 2900_160 wyse 50+ wide mode,
-- use=ncr260wy50+wpp,
--ncr160wy60pp|NCR 2900_160 wyse 60,
-- use=ncr260wy60pp,
--ncr160wy60wpp|NCR 2900_160 wyse 60 wide mode,
-- use=ncr260wy60wpp,
--ncrvt100an|ncrvt100pp|NCR vt100 for the 2900 terminal,
-- am, hs, mc5i, mir, msgr, xon,
-- cols#80, it#8, lines#24, nlab#32,
-- acsc=``aaffgghhiijjkkllmmnnqqttuuvvwwxxyyzz~~,
-- bel=^G, blink=\E[5m$<30>, bold=\E[1m$<30>,
-- clear=\E[2J\E[1;1H$<300>, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr$<100>, cub=\E[%p1%dD$<30>,
-- cub1=\E[D$<2>, cud=\E[%p1%dB$<30>, cud1=\E[B$<2>,
-- cuf=\E[%p1%dC$<30>, cuf1=\E[C$<2>,
-- cup=\E[%i%p1%d;%p2%dH$<100>, cuu=\E[%p1%dA$<30>,
-- cuu1=\E[A$<2>, dch=\E[%p1%dP$<40>, dch1=\E[1P$<10>,
-- dl=\E[%p1%dM$<70>, dl1=\E[M$<40>, dsl=\E[31l$<25>,
-- ed=\E[0J$<300>, el=\E[0K$<30>, el1=\E[1K$<30>,
-- enacs=\E(B\E)0$<40>, fsl=1$<10>, home=\E[H$<2>$<80>,
-- ht=^I, hts=\EH, il=\E[%p1%dL$<80>, il1=\E[B\E[L$<80>,
-- ind=\ED,
-- is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3l\E(B\E)0$<200>,
-- kLFT=\E[D, kRIT=\E[C, ka1=\E[H, kbs=^H, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kent=^M, kf1=\EOP,
-- kf2=\EOQ, kf3=\EOR, kf4=\EOS, mc0=\E[i$<100>, nel=\EE,
-- rc=\E8, rev=\E[7m$<30>, ri=\EM$<50>, rmacs=\017$<90>,
-- rmir=\E[4l$<80>, rmso=\E[0m$<30>, rmul=\E[0m$<30>,
-- rs2=\Ec\E[12;31h\E[?3;4;5;10l\E[?6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>,
-- sc=\E7,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<100>,
-- 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>,
--ncrvt100wan|NCRVT100WPP|ncrvt100wpp|NCR VT100 emulation of the 2900 terminal,
-- cols#132,
-- is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3h\E(B\E)0$<200>,
-- rs2=\Ec\E[12;31h\E[?4;5;10l\E?3;6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>,
-- use=ncrvt100an,
-+# AIX entries. IBM ships these with AIX 3.2.5.
-+# -- added rc, sc based on manpage -TD
-+# Note that we could use ibm+16color, but that is not how IBM defines this one.
-+aixterm|IBM Aixterm Terminal Emulator,
-+ eslok, hs,
-+ acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E,
-+ fsl=\E[?F, rc=\E8, ri@, s0ds=\E(B, s1ds=\E(0, sc=\E7,
-+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
-+ sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6154,
-+aixterm-m|IBM AIXterm Monochrome Terminal Emulator,
-+ eslok, hs,
-+ acsc=jjkkllmmnnqqttuuvvwwxx, bold=\E[1m, dsl=\E[?E,
-+ fsl=\E[?F, ri@, s0ds=\E(B, s1ds=\E(0,
-+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m,
-+ sgr0=\E[0;10m\E(B, tsl=\E[?%p1%dT, use=ibm6153,
-+aixterm-m-old|old IBM AIXterm Monochrome Terminal Emulator,
-+ eslok, hs,
-+ bold=\E[1m, dsl=\E[?E, fsl=\E[?F, ri@,
-+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m,
-+ tsl=\E[?%p1%dT, use=ibm6153,
-+jaixterm|IBM Kanji Aixterm Terminal Eemulator,
-+ acsc@, use=aixterm,
-+jaixterm-m|IBM Kanji AIXterm Monochrome Terminal Emulator,
-+ acsc@, use=aixterm-m,
-+
-+# This flavor is adapted from xterm, in turn from aixterm documentation -TD
-+aixterm-16color|IBM Aixterm Terminal Emulator with 16 colors,
-+ use=ibm+16color, use=aixterm,
-+
-+#### Infoton/General Terminal Corp.
- #
--# Vendor-supplied NCR termcaps end here
-
--# NCR7900 DIP switches:
-+# gt100 sounds like something DEC would come out with. Let's hope they don't.
-+i100|gt100|gt100a|General Terminal 100A (formerly Infoton 100),
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ 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=^J, rmso=\Ea, smso=\Eb,
-+i400|infoton 400,
-+ OTbs, am,
-+ cols#80, lines#25,
-+ bel=^G, clear=\E[2J, cr=^M, cub1=^H, cud1=^J, 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=^J, 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=^M, cub1=^Z, cud1=^J, cuf1=^Y,
-+ cup=\037%p1%c%p2%c, cuu1=^\, ed=^K, home=^H, ind=^J, ll=^H^\,
-+# (infoton: used to have the no-ops <lh#0>, <lw#0>, <nlab#0> -- esr)
-+infoton,
-+ am,
-+ cols#80, lines#24,
-+ bel=^G, clear=^L, cr=^M, cub1=^Z, cud1=^J, cuf1=^Y, cuu1=^\,
-+ ed=^K, ind=^J, ll=^H^\,
-+
-+# The ICL6402 was actually the Kokusai Display System 6402.
-+# The 6404 was the KDS7372 (color version of the 6402).
- #
--# Switch A:
--# 1-4 - Baud Rate
--# 5 - Parity (Odd/Even)
--# 6 - Don't Send or Do Send Spaces
--# 7 - Parity Enable
--# 8 - Stop Bits (One/Two)
-+# ICL6404 control codes follow:
- #
--# Switch B:
--# 1 - Upper/Lower Shift
--# 2 - Typewriter Shift
--# 3 - Half Duplex / Full Duplex
--# 4 - Light/Dark Background
--# 5-6 - Carriage Return Without / With Line Feed
--# 7 - Extended Mode
--# 8 - Suppress Keyboard Display
-+#code function
-+#~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-+#ctrl-A set SOM position at cursor position
-+#ctrl-G Bell
-+#ctrl-H Backspace
-+#ctrl-I Horiz tab
-+#ctrl-J Linefeed
-+#ctrl-K Cursor up
-+#ctrl-L Cursor right
-+#ctrl-M Carriage return
-+#ctrl-N Disable xon/xoff to host
-+#ctrl-O Enable xon/xoff to host
-+#ctrl-R Enable bidirectional mode
-+#ctrl-T Disable bidirectional mode
-+#ctrl-V Cursor down
-+#ctrl-Z Clear unprotected data to insert char
-+#ctrl-^ Cursor home
-+#ctrl-_ Newline
- #
--# Switch C:
--# 1 - End of line entry disabled/enabled
--# 2 - Conversational mode / (Local?) Mode
--# 3 - Control characters displayed / not displayed
--# 4 - (2-wire?) / 4-wire communications
--# 5 - RTS on and off for each character
--# 6 - (50Hz?) / 60 Hz
--# 7 - Exit after level zero diagnostics
--# 8 - RS-232 interface
-+#ESC lead-in char for multiple character command
-+#
-+#ESC space R execute power on sequence
-+#ESC ! p1 p2 define scroll region:
-+# p1 = scroll top line: 20h - 37h
-+# p1 = scroll bottom line: 20h - 37h
-+#ESC " unlock keyboard
-+#ESC # lock keyboard
-+#ESC $ Semi-graphics mode on
-+#ESC % Semi-graphics mode off
-+#ESC & protect mode on
-+#ESC ' protect mode off
-+#ESC ( write protect mode off (full intensity)
-+#ESC ) write protect mode on (half intensity)
-+#
-+#ESC * clear screen
-+#ESC + clear unprotected data to insert char
-+#ESC , clear unprotected data to half intensity spaces
-+#ESC - p1 p2 p3 p4 address cursor to page, row, column:
-+# p1 = page number 0 - 3
-+# p2 = row 20h - 7fh
-+# p3 = column (lo) 20h - 7fh
-+# p4 = column (hi) 20h - 21h (only 132 col)
-+#ESC . p1 set cursor style:
-+# p1 = 0 invisible cursor
-+# p1 = 1 block blinking cursor
-+# p1 = 2 block steady cursor
-+# p1 = 3 underline blinking cursor
-+# p1 = 4 underline steady cursor
-+#ESC / transmit cursor location (page, row, column)
-+#ESC 0 p1 p2 p3 p4 program edit key:
-+# p1 = edit key code: '@'-'S', '`'-'s'
-+# p2 p3 p4 = program data (3 bytes)
-+#
-+#ESC 1 set tab
-+#ESC 2 clear tab at cursor
-+#ESC 3 clear all tabs
-+#ESC 4 send unprotect line to cursor
-+#ESC 5 send unprotect page to cursor
-+#ESC 6 send line to cursor
-+#ESC 7 send page to cursor
-+#ESC 8 n set scroll mode:
-+# n = 0 set jump scroll
-+# n = 1 set smooth scroll
-+#ESC 9 n control display:
-+# n = 0 display off
-+# n = 1 display on
-+#ESC : clear unprotected data to null
-+#ESC ; clear unprotected data to insert char
-+#
-+#ESC < keyclick on
-+#ESC = p1 p2 address cursor to row, column
-+# p1 = row 20h - 7fh
-+# p2 = column (lo) 20h - 7fh
-+# p3 = column (hi) 20h - 21h (only 132 col)
-+#ESC > keyclick off
-+#ESC ? transmit cursor location (row, column)
-+#
-+#ESC @ copy print mode on
-+#ESC A copy print mode off
-+#ESC B block mode on
-+#ESC C block mode off (conversation mode)
-+#ESC D F set full duplex
-+#ESC D H set half duplex
-+#ESC E line insert
-+#ESC F p1 p2 set page colour (p1 = f/grnd, p2 = b/grnd)
-+# 0 = black, 1 = red, 2 = green, 3 = yellow
-+# 4 = blue, 5 = magenta, 6 = cyan, 7 = white
-+#ESC G n set serial field attribute (n = 30h - 3Fh)
-+#ESC H n full graphics mode:
-+# n = 0 exit full graphics mode
-+# n = 1 enter full graphics mode
-+#ESC I back tab
-+#ESC J back page
-+#ESC K forward page
-+#
-+#ESC L unformatted page print
-+#ESC M L move window left (132 col mode only)
-+#ESC M R move window right (132 col mode only)
-+#ESC N set page edit (clear line edit)
-+#ESC O set line edit (clear page edit)
-+#ESC P formatted page print
-+#ESC Q character insert
-+#ESC R line delete
-+#ESC S send message unprotected only
-+#ESC T erase line to insert char
-+#ESC U set monitor mode (see ESC X, ESC u)
-+#
-+#ESC V n select video attribute mode:
-+# n = 0 serial field attribute mode
-+# n = 1 parallel character attribute mode
-+#ESC V 2 n define line attribute:
-+# n = 0 single width single height
-+# n = 1 single width double height
-+# n = 2 double width single height
-+# n = 3 double width double height
-+#ESC V 3 n select character font:
-+# n = 0 system font
-+# n = 1 user defined font
-+#ESC V 4 n select screen mode:
-+# n = 0 page screen mode
-+# n = 1 virtual screen mode
-+#ESC V 5 n control mouse mode:
-+# n = 0 disable mouse
-+# n = 1 enable sample mode
-+# n = 2 send mouse information
-+# n = 3 enable request mode
-+#ESC W character delete
-+#ESC X clear monitor mode (see ESC U, ESC u)
-+#ESC Y erase page to insert char
-+#
-+#ESC Z n send user/status line:
-+# n = 0 send user line
-+# n = 1 send status line
-+# n = 2 send terminal ID
-+#ESC [ p1 p2 p3 set character attribute (parallel char mode):
-+# p1: 0 = normal
-+# 1 = blank
-+# 2 = blink
-+# 3 = blink blank (= blank)
-+# 4 = reverse
-+# 5 = reverse blank
-+# 6 = reverse blink
-+# 7 = reverse blink blank (= reverse blank)
-+# 8 = underline
-+# 9 = underline blank
-+# : = underline blink
-+# ; = underline blink blank
-+# < = reverse underline
-+# = = reverse underline blank
-+# > = reverse underline blink
-+# ? = reverse underline blink blank
-+# p2, p3: f/grnd, b/grnd colour
-+# (see ESC F for colours)
-+# use ZZ for mono, eg.
-+# ESC [ 0 Z Z for normal
-+# ESC [ 4 Z Z for inverse etc.
-+#
-+#ESC \ n set page size:
-+# n = 1 24 lines/page
-+# n = 2 48 lines/page
-+# n = 3 72 lines/page
-+# n = 4 96 lines/page
-+#ESC ] n set Wordstar mode:
-+# n = 0 normal (KDS7372) mode
-+# n = 1 Wordstar mode
-+#
-+#ESC b set foreground colour screen
-+#
-+#ESC c n enter self-test mode:
-+# n = 0 exit self test mode
-+# n = 1 ROM test
-+# n = 2 RAM test
-+# n = 3 NVRAM test
-+# n = 4 screen display test
-+# n = 5 main/printer port test
-+# n = 6 mouse port test
-+# n = 7 graphics board test
-+# n = 8 graphics memory test
-+# n = 9 display all 'E'
-+# n = : display all 'H'
-+#ESC d set background colour screen
-+#
-+#ESC e n program insert char (n = insert char)
-+#ESC f text CR load user status line with 'text'
-+#
-+#ESC g display user status line on 25th line
-+#ESC h display system status line on 25th line
-+#ESC i tab
-+#ESC j reverse linefeed
-+#ESC k n duplex/local edit mode:
-+# n = 0 duplex edit mode
-+# n = 1 local edit mode
-+#ESC l n select virtual screen:
-+# n = 0 screen 1
-+# n = 1 screen 2
-+#ESC m save current config to NVRAM
-+#ESC n p1 select display screen:
-+# p1 = 0 screen 1
-+# p1 = 1 screen 2
-+# p1 = 2 screen 3
-+# p1 = 3 screen 4
-+#ESC o p1 p2 set characters/line and attribute:
-+# p1 = 0 80 chars/line
- #
--# Switch D:
--# 1 - Reverse Channel (yes / no)
--# 2 - Manual answer (no / yes)
--# 3-4 - Cursor appearance
--# 5 - Communication Rate
--# 6 - Enable / Disable EXT turnoff
--# 7 - Enable / Disable CR turnoff
--# 8 - Enable / Disable backspace
-+#ESC o p1 p2 set characters/line and attribute:
-+# p1 = 0 80 chars/line
-+# p1 = 1 132 chars/line
-+# p2 = 0 single width single height
-+# p2 = 1 single width double height
-+# p2 = 2 double width single height
-+# p2 = 3 double width double height
- #
--# Since each attribute parameter is 0 or 1, we shift each attribute (standout,
--# reverse, blink, dim, and underline) the appropriate number of bits (by
--# multiplying the 0 or 1 by a correct factor to shift) so the bias character,
--# '@' is (effectively) "or"ed with each attribute to generate the proper third
--# character in the <ESC>0 sequence. The <sgr> string implements the following
--# equation:
-+#ESC q insert mode on
-+#ESC r edit mode on
-+#ESC s send message all
-+#ESC t erase line to null
-+#ESC u clear monitor mode (see ESC U, ESC X)
-+#ESC v autopage mode on
-+#ESC w autopage mode off
-+#ESC x p1 p2 p3 define delimiter code...
-+#ESC y erase page to null
- #
--# ((((('@' + P5) | (P4 << 1)) | (P3 << 3)) | (P2 << 4)) | (p1 * 17)) =>
--# ((((('@' + P5) + (P4 << 1)) + (P3 << 3)) + (P2 << 4)) + (p1 * 17))
-+#ESC z 2 p1 p2 p3 p4 draw quadrangle:
-+# p1 = starting row
-+# p2 = starting column
-+# p3 = end row
-+# p4 = end column
- #
--# Where: P1 <==> Standout attribute parameter
--# P2 <==> Underline attribute parameter
--# P3 <==> Reverse attribute parameter
--# P4 <==> Blink attribute parameter
--# P5 <==> Dim attribute parameter
--# From <root@goliath.un.atlantaga.NCR.COM>, init string hacked by SCO.
--ncr7900i|ncr7900|ncr 7900 model 1,
-- am, bw, ul,
-- cols#80, lines#24, xmc#1,
-- bel=^G, blink=\E0B, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^F,
-- cup=\E1%p2%c%p1%c, cuu1=^Z, dim=\E0A, ed=\Ek, el=\EK, ind=^J,
-- is2=\E0@\010\E3\E4\E7, kcub1=^U, kcud1=^J, kcuf1=^F,
-- kcuu1=^Z, khome=^A, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=\E0@,
-- rmul=\E0@,
-- sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c,
-- sgr0=\E0@, smso=\E0Q, smul=\E0`,
--ncr7900iv|ncr 7900 model 4,
-- am, bw, eslok, hs,
-- cols#80, lines#24,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J,
-- cup=\013%p1%{64}%+%c\E\005%p2%02d, dl1=\E^O, dsl=\Ey1,
-- fsl=\Ek\Ey5, home=\013@\E^E00, il1=\E^N, ind=^J, kbs=^H,
-- kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\ES, kf2=\ET,
-- kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER,
-- khome=\EH, lf6=blue, lf7=red, lf8=white, nel=^M^J,
-- tsl=\Ej\Ex5\Ex1\EY8%p1%{32}%+%c\Eo,
--# Warning: This terminal will lock out the keyboard when it receives a CTRL-D.
--# 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,
-- am, bw, ul,
-- cols#80, lines#24,
-- bel=^G, blink=\E0B, civis=^W, clear=^L, cnorm=^X, cr=^M,
-- cub1=^H, cud1=^J, cuf1=^F,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dim=\E0A,
-- ed=\Ek, el=\EK,
-- hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%c, ind=^J,
-- is2=\E4^O, kclr=^L, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z,
-- khome=^H, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=^O, rmul=^O,
-- sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c\016,
-- sgr0=^O, smso=\E0Q\016, smul=\E0`\016,
-- vpa=\013%p1%{64}%+%c,
--
--# Newbury Data Recording Limited (Newbury Data)
-+#ESC { p1 p2 p3 p4 configure main port
-+# (baud, stop bits, parity, word length)
- #
--# Have been manufacturing and reselling various peripherals for a long time
--# They don't make terminals anymore, but are still in business (in 2007).
--# Their e-mail address is at ndsales@newburydata.co.uk
--# and their post address is:
-+#ESC | p1 p2 text Ctrl-Y program function key with 'text':
-+# p1 = function key code:
-+# '1' - ';' normal f1- f11
-+# '<' - 'F' shifted f1 - f11
-+# p2 = program mode:
-+# 1 = FDX
-+# 2 = LOC
-+# 3 = HDX
-+# Ctrl-Y = terminator
-+# (use Ctrl-P to escape ^P, ^Y )
- #
--# Newbury Data Recording Ltd,
--# Premier Park, Road One,
--# Winsford, Cheshire, CW7 3PT
-+#ESC } p1 p2 p3 p4 configure printer port
-+# (baud, stop bits, parity, word length)
-+#ESC ~ send system status
- #
--# Their technical support is still good, they sent me for free a printed copy
--# of the 9500 user manual and I got it just 1 week after I first contacted them
--# (in 2005)!
--
--# 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
--# 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
--# recognized: if you type in "ESC !", the next (third) character is not
--# echoed, showing that the terminal was actually waiting for a parameter!
--ndr9500|nd9500|Newbury Data 9500,
-- am, bw, hs, mc5i, mir, msgr, ul, xon,
-- cols#80, lines#24, wsl#79,
-- acsc=jDkClBmAnIqKtMuLvOwNxJ, bel=^G, cbt=\EI, civis=\E.0,
-- clear=\E;, cnorm=\E.1, cr=^M, cub1=^H, cud1=^V, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-- dim=\E), dl1=\ER, dsl=\Eh, ed=\EY, el=\ET,
-- flash=\Eb$<50/>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1,
-- ich1=\EQ, il1=\EE, ind=^J, is2=\Ew\E'\EDF\El\Er\EO,
-- kDC=\Er, kDL=\EO, kEOL=\Et, kIC=\Eq, kcbt=\EI, kclr=^Z,
-- kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER,
-- ked=\EY, kel=\ET, kent=^M, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r,
-- kf12=^A`\r, kf13=^Aa\r, kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r,
-- kf17=^Ae\r, kf18=^Af\r, kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r,
-- 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,
-- rmacs=\E%%, rmir=\Er, rmso=\E(, rmxon=^N,
-- sgr=\E%%\E(%?%p1%p5%p8%|%|%t\E)%;%?%p9%t\E$%;,
-- sgr0=\EG0\E%%\E(, smacs=\E$, smir=\Eq, smso=\E), smxon=^O,
-- tbc=\E3, tsl=\Eg\Ef\011%p1%{32}%+%c, .kbs=^H,
--
--ndr9500-nl|NDR 9500 with no status line,
-- hs@,
-- wsl@,
-- dsl@, fsl@, tsl@, use=ndr9500,
--
--ndr9500-25|NDR 9500 with 25th line enabled,
-- lines#25, use=ndr9500,
--
--ndr9500-25-nl|NDR 9500 with 25 lines and no status line,
-- lines#25, use=ndr9500-nl,
--
--ndr9500-mc|NDR 9500 with magic cookies (enables underline inverse video invisible and blink),
-- msgr@,
-- xmc#1,
-- blink=\EG2, invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0,
-- sgr=\E%%\E(%?%p5%p8%|%t\E)%;%?%p9%t\E$%;\EG%{48}%?%p7%t%{1}%+%;%?%p4%t%{2}%+%;%?%p3%p1%|%t%{4}%+%;%?%p2%t%{8}%+%;%c,
-- sgr0=\EG0\E%%\E(, smso=\EG4, smul=\EG8, use=ndr9500,
--
--ndr9500-25-mc|NDR 500 with 25 lines and magic cookies,
-- lines#25, use=ndr9500-mc,
--
--ndr9500-mc-nl|NDR 9500 with magic cookies and no status line,
-- hs@,
-- wsl@,
-- dsl@, fsl@, tsl@, use=ndr9500-mc,
--
--ndr9500-25-mc-nl|NDR 9500 with 25 lines and magic cookies and no status line,
-- lines#25, use=ndr9500-mc-nl,
--
--#### Perkin-Elmer (Owl)
-+# Codes and info from Peter Disdale <pete@pdlmail.demon.co.uk> 12 May 1997
- #
--# These are official terminfo entries from within Perkin-Elmer.
-+# Entry is by esr going solely on above information and is UNTESTED.
-+# 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,
-+# full duplex, parallel attribute mode, display user status line, white
-+# foreground, black background, normal highlight.
- #
--
--bantam|pe550|pe6100|perkin elmer 550,
-- OTbs,
-- cols#80, lines#24,
-- bel=^G, clear=\EK$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
-- el=\EI$<20>, home=\EH, ind=^J, ll=\EH\EA,
--fox|pe1100|perkin elmer 1100,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J,
-- 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=^J, ll=\EH\EA, tbc=\E3,
--owl|pe1200|perkin elmer 1200,
-- OTbs, am, in,
-- cols#80, lines#24,
-- bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J,
-- cuf1=\EC, cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
-- dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>,
-- el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH,
-- hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>,
-- 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,
-- am,
-- cols#80, it#8, lines#24, pb#300, vt#8, xmc#1,
-- bel=^G, clear=\EK$<332>, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC,
-- cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
-- ed=\EJ$<20*>, el=\EI$<10*>, home=\EH, hts=\E1, ind=^J,
-- kf0=\ERA, kf1=\ERB, kf10=\ERK, kf2=\ERC, kf3=\ERD, kf4=\ERE,
-- kf5=\ERF, kf6=\ERG, kf7=\ERH, kf8=\ERI, kf9=\ERJ, tbc=\E3,
--# (pe7000m: this had
--# rmul=\E!\0, smul=\E!\040,
--# which is probably wrong, it collides with kf0
--pe7000m|perkin elmer 7000 series monochrome monitor,
-- am,
-+icl6404|kds7372|icl6402|kds6402|ICL 6404 aka Kokusai Display Systems 7372,
-+ OTbs, am, hs,
- cols#80, lines#24,
-- bel=^G, cbt=\E!Y, clear=\EK, cr=^M, cub1=\ED, cud1=\EB,
-- cuf1=\EC, cup=\ES%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA,
-- ed=\EJ, el=\EI, home=\EH, ind=^J,
-- is1=\E!\0\EW 7o\Egf\ES7\s, kbs=^H, kcub1=\E!V,
-- kcud1=\E!U, kcuf1=\E!W, kcuu1=\E!T, kf0=\E!\0, kf1=\E!^A,
-- kf10=\E!^J, 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,
-- is1=\E!\0\EW 7o\Egf\Eb0\Ec7\ES7\s, rmso=\Eb0,
-- rmul=\E!\0, smso=\Eb2, smul=\E!\s, use=pe7000m,
-+ bel=^G, blink=\E[2ZZ, cbt=\EI, civis=\E.0, clear=\E*,
-+ cnorm=\E.3, cr=^M,
-+ csr=\E!%+%p1%{32}%+%p2%{32} cud1=\026, 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,
-+ is1=\EC\E.3\EDF\EV1\Eg\E[0ZZ, nel=^_, rev=\E[4ZZ,
-+ rmir=\Er, rmso=\E[%gh%{4}%^%Ph%gh%dZZ,
-+ rmul=\E[%gh%{8}%^%Ph%gh%dZZ, rs2=\Eo1,
-+ sgr=\E[%'0'%?%p1%t%'8'%|%;%?%p2%t%'8'%|%;%?%p3%t%'4'%|%;%?%p4%t%'2'%|%;%?%p7%t%'1'%|%;%cZZ,
-+ sgr0=\E[0ZZ, smir=\Eq, smso=\E[8ZZ, smul=\E[8ZZ, tbc=\E3,
-+icl6404-w|kds7372-w|ICL 6404 aka Kokusai Display Systems 7372 132 cols,
-+ rs2=\Eo1, use=icl6404,
-
--#### Sperry Univac
-+#### Interactive Systems Corp
- #
--# Sperry Univac has merged with Burroughs to form Unisys.
-+# ISC used to sell OEMed and customized hardware to support ISC UNIX.
-+# ISC UNIX still exists in 1995, but ISC itself is no more; they got
-+# bought out by Sun.
- #
-
--# This entry is for the Sperry UTS30 terminal running the TTY
--# 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,
-- am, bw, hs,
-- cols#80, lines#24, wsl#40,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[1m, civis=\ER, clear=^L,
-- cnorm=\ES, cr=^M, csr=\EU%p1%{32}%+%c%p2%{32}%+%c,
-- 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, dch=\E[%p1%dP, dch1=\EM,
-- dl=\E[%p1%dM, dl1=\EL, ed=\E[J, el=\E[K, fsl=^M, home=\E[H,
-- ht=^I, ich=\E[%p1%d@, ich1=\EO, il=\E[%p1%dL, il1=\EN,
-- ind=^J, indn=\E[%p1%dB, is2=\E[U 7\E[24;1H, kbs=^H,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, khome=\E[H,
-- rc=\EX, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EI,
-- rin=\E[%p1%dA, rmacs=\Ed, rmam=\E[?7l, rmso=\E[m,
-- rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-- sc=\EW, sgr0=\E[m, smacs=\EF, smam=\E[?7m, smso=\E[7m,
-- smul=\E[4m, tsl=\E], uc=\EPB,
-+# From: <cithep!eric> Wed Sep 16 08:06:44 1981
-+# (intext: removed obsolete ":ma=^K^P^R^L^L ::bc=^_:", also the
-+# ":le=^_:" later overridden -- esr)
-+intext|Interactive Systems Corporation modified owl 1200,
-+ OTbs, am,
-+ cols#80, it#8, lines#24, xmc#1,
-+ bel=^G, cbt=^Y, clear=\014$<132>, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=^^, cup=\017%p1%{32}%+%c%p2%{32}%+%c, cuu1=^\,
-+ dch1=\022$<5.5*>, dl1=\021$<5.5*>, ed=\026J$<5.5*>,
-+ el=^Kp^R, ht=^I, il1=\020$<5.5*>, ind=^J, ip=$<5.5*>, kbs=^H,
-+ kcub1=^_, kcud1=^J, 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%%,
-+ smso=^V$\,,
-+intext2|intextii|INTERACTIVE modified owl 1251,
-+ am, bw, ul,
-+ cols#80, lines#24, xmc#0,
-+ bel=^G, cbt=\E[Z, clear=\E[H\E[2J, cr=^M, 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,
-+ flash=\E[;;;;;;;;;2;;u$<200/>\E[;;;;;;;;;1;;u,
-+ hpa=\E[%p1%{1}%+%dG, ht=^I, ich1=\E[@, il1=\E[L, ind=\E[S,
-+ kbs=^H, kcub1=\ED\r, kcud1=\EB\r, kcuf1=\EC\r, kcuu1=\EA\r,
-+ kf0=\E@\r, kf1=\EP\r, kf2=\EQ\r, kf3=\ES\r, kf4=\ET\r,
-+ kf5=\EU\r, kf6=\EV\r, kf7=\EW\r, kf8=\EX\r, kf9=\EY\r,
-+ khome=\ER\r, lf0=REFRSH, lf1=DEL CH, lf2=TABSET, lf3=GOTO,
-+ lf4=+PAGE, lf5=+SRCH, lf6=-PAGE, lf7=-SRCH, lf8=LEFT,
-+ lf9=RIGHT, ri=\E[T, rmso=\E[2 D, rmul=\E[2 D, smso=\E[6 D,
-+ smul=\E[18 D,
-
--#### Tandem
-+#### Kimtron (abm, kt)
- #
--# Tandem builds these things for use with its line of fault-tolerant
--# transaction-processing computers. They aren't generally available
--# on the merchant market, and so are fairly uncommon.
-+# Kimtron seems to be history, but as March 1998 these people are still
-+# offering repair services for Kimtron equipment:
- #
--
--tandem6510|adm3a repackaged by Tandem,
-- use=adm3a,
--
--# A funny series of terminal that TANDEM uses. The actual model numbers
--# have a fourth digit after 653 that designates minor variants. These are
--# natively block-mode and rather ugly, but they have a character mode which
--# this doubtless(?) exploits. There is a 6520 that is slightly dumber.
--# (tandem653: had ":sb=\ES:", probably someone's mistake for sf; also,
--# removed <if=/usr/share/tabset/tandem653>, no such file -- esr)
--tandem653|t653x|Tandem 653x multipage terminal,
-- OTbs, am, da, db, hs,
-- cols#80, lines#24, wsl#64, xmc#1,
-- clear=\EI, cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\023%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dsl=\Eo\r,
-- ed=\EJ, el=\EK, fsl=^M, home=\EH, ind=\ES, ri=\ET, rmso=\E6\s,
-- rmul=\E6\s, sgr0=\E6\s, smso=\E6$, smul=\E60, tsl=\Eo,
--
--#### Tandy/Radio Shack
-+# Com/Pair Monitor Service
-+# 1105 N. Cliff Ave.
-+# Sioux Falls, South Dakota 57103
- #
--# Tandy has a line of VDTs distinct from its microcomputers.
-+# WATS voice: 1-800/398-4946
-+# POTS fax: +1 605/338-8709
-+# POTS voice: +1 605/338-9650
-+# Email: <compair@sd.cybernex.net>
-+# Internet/Web: <http://www.com-pair.com>
- #
--
--dmterm|deskmate terminal,
-- am, bw,
-- cols#80, lines#24,
-- bel=^G, civis=\EG5, clear=\Ej, cnorm=\EG6, cr=^M, cub1=^H,
-- cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=\EA, dch1=\ES, dl1=\ER, ed=\EJ, el=\EK, home=\EH, ht=^I,
-- ich1=\EQ, il1=\EP, ind=\EX, invis@, kcub1=\ED, kcud1=\EB,
-- kcuf1=\EC, kcuu1=\EA, kf0=\E1, kf1=\E2, kf2=\E3, kf3=\E4,
-- kf4=\E5, kf5=\E6, kf6=\E7, kf7=\E8, kf8=\E9, kf9=\E0,
-- khome=\EH, lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6,
-- lf6=f7, lf7=f8, lf8=f9, lf9=f10, ll=\EE, rmul@, smul@,
-- use=adm+sgr,
--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=^M,
-- 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=^J, 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,
--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=^M,
-- 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=^J, 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,
--pt210|TRS-80 PT-210 printing terminal,
-- hc, os,
-- cols#80,
-- bel=^G, cr=^M, cud1=^J, ind=^J,
--
--#### Tektronix (tek)
-+# Kimtron entries include (undocumented) codes for: enter dim mode,
-+# enter bold mode, enter reverse mode, turn off all attributes.
- #
--# Tektronix tubes are graphics terminals. Most of them use modified
--# oscilloscope technology incorporating a long-persistence green phosphor,
--# and support vector graphics on a main screen with an attached "dialogue
--# area" for interactive text.
-+
-+# Kimtron ABM 85 added by Dual Systems
-+# (abm85: removed duplicated ":kd=^J:" -- esr)
-+abm85|Kimtron ABM 85,
-+ OTbs, am, bw, msgr,
-+ cols#80, it#8, lines#24, xmc#1,
-+ cbt=\EI, clear=\E*, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\Ey, el=\Et, ht=^I,
-+ if=/usr/share/tabset/stdcrt, il1=\EE,
-+ is2=\EC\EX\Eg\En\E%\Er\E(\Ek\Em\Eq, kbs=^H, kcub1=^H,
-+ kcud1=^J, kcuf1=^L, kcuu1=^K, khome=^^, rmir=\Er, rmso=\Ek,
-+ rmul=\Em, smir=\EQ, smso=\Ej, smul=\El,
-+# Kimtron ABM 85H added by Dual Systems.
-+# Some notes about the abm85h entries:
-+# 1) there are several firmware revs of 85H in the world. Use abm85h-old for
-+# firmware revs prior to SP51
-+# 2) Make sure to use abm85h entry if the terminal is in 85h mode and the
-+# abm85e entry if it is in tvi920 emulation mode. They are incompatible
-+# in some places and NOT software settable i.e., <is2> can't fix it)
-+# 3) In 85h mode, the arrow keys and special functions transmit when
-+# the terminal is in dup-edit, and work only locally in local-edit.
-+# Vi won't swallow `del char' for instance, but <smcup> turns on
-+# dup-edit anyway so that the arrow keys will work right. If the
-+# arrow keys don't work the way you like, change <smcup>, <rmcup>, and
-+# <is2>. Note that 920E mode does not have software commands to toggle
-+# between dup and local edit, so you get whatever was set last on the
-+# terminal.
-+# 4) <flash> attribute is nice, but seems too slow to work correctly
-+# (\Eb<pad>\Ed)
-+# 5) Make sure `hidden' attributes are selected. If `embedded' attributes
-+# are selected, the <xmc@> entry should be removed.
-+# 6) auto new-line should be on (selectable from setup mode only)
- #
-+# From: Erik Fair <fair@ucbarpa> Sun Oct 27 07:21:05 1985
-+abm85h|Kimtron ABM 85H native mode,
-+ hs,
-+ xmc@,
-+ bel=^G, cnorm=\E.4, cvvis=\E.2, dim=\E), dsl=\Ee, flash@,
-+ fsl=^M, invis@,
-+ is2=\EC\EN\EX\024\016\EA\Ea\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\EG0\Ed\E.4\El,
-+ kcud1=^V, sgr0=\E(\EG0, smir=\EZ, tsl=\Eg\Ef, use=adm+sgr,
-+ use=abm85,
-+abm85e|Kimtron ABM 85H in 920E mode,
-+ xmc@,
-+ bel=^G, dim=\E), flash@,
-+ is2=\EC\EX\EA\E%\E9\Ee\Er\En\E"\E}\E'\E(\Ef\r\Ek\Eq\Em,
-+ rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85,
-+abm85h-old|oabm85h|o85h|Kimtron ABM 85H with old firmware rev.,
-+ xmc@,
-+ bel=^G, dim=\E),
-+ is2=\E}\EC\EX\Ee\En\E%\Er\E(\Ek\Em\Eq\Ed\ET\EC\E9\EF,
-+ rev=\Ej, sgr0=\E(\Ek, smir=\EZ, use=abm85,
-+# From: <malman@bbn-vax.arpa>
-+# (kt7: removed obsolete :ma=^V^J^L :" -- esr)
-+kt7|kimtron model kt-7,
-+ OTbs, am,
-+ cols#80, it#8, lines#24,
-+ cbt=\EI, clear=^Z, cub1=^H, cud1=^V, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dl1=\ER, ed=\EY, el=\ET, fsl=\Eg, home=^^, ht=^I, ich1=\EQ,
-+ if=/usr/share/tabset/stdcrt, il1=\EE, invis@, is2=\El\E",
-+ kbs=^H, kcbt=\EI, kclr=^Z, kcub1=^H, kcud1=^V, kcuf1=^L,
-+ kcuu1=^K, kdch1=\EW, kdl1=\ER, ked=\EY, kel=\ET, kf0=^AI\r,
-+ kf1=^A@\r, kf2=^AA\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, tsl=\Ef, use=adm+sgr,
-+# Renamed TB=^I to :ta:, BE=^G to :bl:, BS=^H to :kb:, N to :kS: (based on the
-+# other kt7 entry and the adjacent key capabilities). Removed EE which is
-+# identical to :mh:. Removed :ES=\EGD: which is some kind of highlight
-+# but we can't figure out what.
-+kt7ix|kimtron model kt-7 or 70 in IX mode,
-+ am, bw,
-+ cols#80, it#8, lines#25,
-+ acsc=jYk?lZm@nEqDt4uCvAwBx3, bel=^G, blink=\EG2, cbt=\EI,
-+ civis=\E.0, clear=\E*, cnorm=\E.3, cr=^M, cub1=^H, cud1=^V,
-+ cuf1=^L, cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ dch1=\EW, dim=\EG@, dl1=\ER, dsl=\Ef\r, ed=\EY, el=\ET, fsl=^M,
-+ home=^^, ht=^I, ich1=\EQ, il1=\EE, ind=^J,
-+ is2=\EG0\E s\017\E~, kbs=^H, kcbt=\EI, kclr=\E*,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdl1=\ER,
-+ ked=\EY, kel=\ET, kend=\EY, kf0=^AI\r, kf1=^A@\r, kf2=^AA\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, knp=\EJ,
-+ nel=^M^J, pulse=\EK, rmacs=\E%%, rmir=, rmso=\EG0, rmul=\EG0,
-+ sgr0=\EG0, smacs=\E$, smir=, smso=\EG4, smul=\EG8, tsl=\Ef,
-
--tek|tek4012|tektronix 4012,
-- OTbs, os,
-- cols#75, lines#35,
-- bel=^G, clear=\E\014$<1000>, cr=^M, cub1=^H, cud1=^J,
-- ff=\014$<1000>, is2=\E^O,
--# (tek4013: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr)
--tek4013|tektronix 4013,
-- acsc=, rmacs=\E^O, smacs=\E^N, use=tek4012,
--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,
-- acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014,
--tek4014-sm|tektronix 4014 in small font,
-- cols#121, lines#58,
-- 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,
-- acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014-sm,
--# Tektronix 4023 from Andrew Klossner <orca!andrew.tektronix@csnet-relay>
-+#### Microdata/MDIS
- #
--# You need to have "stty nl2" in effect. Some versions of tset(1) know
--# how to set it for you.
-+# This was a line of terminals made by McDonnell-Douglas Information Systems.
-+# These entries come direct from MDIS documentation. I have edited them only
-+# to move primary names of the form p[0-9] * to aliases, and to comment out
-+# <rmacs>/<smacs> in a couple of entries without <acsc> strings. I have
-+# also removed the change history; the last version indicates this is
-+# version 4.3 by A.Barkus, September 1990 (earliest entry is October 1989).
- #
--# It's got the Magic Cookie problem around stand-out mode. If you can't
--# 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,
-- OTbs, am,
-- OTdN#4, cols#80, lines#24, vt#4, xmc#1,
-- OTnl=^J, bel=^G, clear=\E\014$<4/>, cr=^M, cub1=^H, cud1=^J,
-- cuf1=^I, cup=\034%p2%{32}%+%c%p1%{32}%+%c, kbs=^H,
-- rmso=^_@, smso=^_P,
--# It is recommended that you run the 4025 at 4800 baud or less;
--# various bugs in the terminal appear at 9600. It wedges at the
--# bottom of memory (try "cat /usr/dict/words"); ^S and ^Q typed
--# on keyboard don't work. You have to hit BREAK twice to get
--# one break at any speed - this is a documented feature.
--# Can't use cursor motion because it's memory relative, and
--# because it only works in the workspace, not the monitor.
--# Same for home. Likewise, standout only works in the workspace.
-+
-+# McDonnell Information Systems Terminal Family History
-+# =========================================
- #
--# <el> was commented out since vi and rogue seem to work better
--# simulating it with lots of spaces!
-+# Prism-1, Prism-2 and P99:
-+# Ancient Microdata and CMC terminals, vaguely like Adds Regent 25.
- #
--# <il1> and <il> had 145ms of padding, but that slowed down vi's ^U
--# and didn't seem necessary.
-+# Prism-4 and Prism-5:
-+# Slightly less ancient range of Microdata terminals. Follow-on from
-+# Prism-2, but with many enhancements. P5 has eight display pages.
- #
--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=^M,
-- cub=\037lef %p1%d\r, cub1=^H, cud=\037dow %p1%d\r,
-- cud1=^F^J, cuf=\037rig %p1%d\r, cuf1=\037rig\r,
-- cuu=\037up %p1%d\r, cuu1=^K, dch1=\037dch\r,
-- dl=\037dli %p1%d\r\006, dl1=\037dli\r\006,
-- ed=\037dli 50\r, ht=^I, ich1=\037ich\r \010,
-- il=\037up\r\037ili %p1%d\r, il1=\037up\r\037ili\r,
-- ind=^F^J,
-- is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r,
-- rmkx=\037lea p2\r\037lea p4\r\037lea p6\r\037lea p8\r\037lea f5\r,
-- smkx=\037lea p4 /h/\r\037lea p8 /k/\r\037lea p6 / /\r\037lea p2 /j/\r\037lea f5 /H/\r,
--tek4025-17|tek 4025 17 line window,
-- lines#17, use=tek4025,
--tek4025-17-ws|tek 4025 17 line window in workspace,
-- is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r\037wor 17\r\037mon 17\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/!,
-- 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
--# From: Doug Gwyn <gwyn@brl-smoke.ARPA>
--# The following status modes are assumed for normal operation (replace the
--# initial "!" by whatever the current command character is):
--# !COM 29 # NOTE: changes command character to GS (^])
--# ^]DUP
--# ^]ECH R
--# ^]EOL
--# ^]RSS T
--# ^]SNO N
--# ^]STO 9 17 25 33 41 49 57 65 73
--# Other modes may be set according to communication requirements.
--# If the command character is inadvertently changed, termcap can't restore it.
--# Insert-character cannot be made to work on both top and bottom rows.
--# Clear-to-end-of-display emulation via !DLI 988 is too grotty to use, alas.
--# There also seems to be a problem with vertical motion, perhaps involving
--# delete/insert-line, following a typed carriage return. This terminal sucks.
--# Delays not specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
--# (tek4025a: removed obsolete ":xx:". This may mean the tek4025a entry won't
--# work any more. -- esr)
--tek4025a|Tektronix 4025A,
-- OTbs, OTpt, am, bw, da, db, xon,
-- cols#80, it#8, lines#34,
-- bel=^G, cbt=\035bac;, clear=\035era;\n\035rup;, cmdch=^],
-- cr=^M, cub=\035lef %p1%d;, cub1=^H, cud=\035dow %p1%d;,
-- cud1=^J, cuf=\035rig %p1%d;, cuf1=\035rig;,
-- cuu=\035up %p1%d;, cuu1=^K, dch=\035dch %p1%d;,
-- dch1=\035dch;, dl=\035dli %p1%d;, dl1=\035dli;,
-- el=\035dch 80;, hpa=\r\035rig %p1%d;, ht=^I,
-- il1=\013\035ili;, ind=^J, indn=\035dow %p1%d;,
-- rs2=!com 29\035del 0\035rss t\035buf\035buf n\035cle\035dis\035dup\035ech r\035eol\035era g\035for n\035pad 203\035pad 209\035sno n\035sto 9 17 25 33 41 49 57 65 73\035wor 0;,
-- tbc=\035sto;,
--# From: cbosg!teklabs!davem Wed Sep 16 21:11:41 1981
--# Here's the command file that I use to get rogue to work on the 4025.
--# It should work with any program using the old curses (e.g. it better
--# 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,
-- OTbs, am,
-- cols#80, it#8, lines#33,
-- clear=\037era;, cub1=^H, cud1=^F^J, cuf1=\037rig;,
-- cup=\037jum%i%p1%d\,%p2%d;, cuu1=^K, ht=^I, ind=^F^J,
-- is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r,
-- rmcup=\037wor 0, smcup=\037wor 33h,
--# 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/!,
-- 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,
--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,
-- clear=\E[2J\E[H, cr=^M, cub1=\E[1D, cud1=\E[1B, cuf1=\E[1C,
-- cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[1A, dch1=\E[1P,
-- dim=\E[=1;<6m, dl1=\E[1M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-- il1=\E[1L, ind=\E[S, invis=\E[=6;<5, is1=\E%!1\E[m,
-- is2=\E%!1\E[?6141\E[m, kbs=^H, kcub1=\E[1D, kcud1=\E[1B,
-- kcuf1=\E[1C, kcuu1=\E[1A, rev=\E[=1;<3m, ri=\E[T,
-- rmacs=\E[m, rmcup=, rmir=\E[4l, rmso=\E[=0;<1m,
-- rmul=\E[=0;<1m, sgr0=\E[=0;<1m, smacs=\E[1m,
-- smcup=\E%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m,
-- 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,
-- am, mir, msgr, xenl, xon,
-- cols#80, it#8, lines#30, vt#3,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-- clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-- cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-- cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>,
-- enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8,
-- rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l,
-- rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>,
-- 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,
--
--# Tektronix 4105 from BRL
--# The following setup modes are assumed for normal operation:
--# CODE ansi CRLF no DABUFFER 141
--# DAENABLE yes DALINES 30 DAMODE replace
--# DAVISIBILITY yes ECHO no EDITMARGINS 1 30
--# FLAGGING input INSERTREPLACE replace LFCR no
--# ORIGINMODE relative PROMPTMODE no SELECTCHARSET G0 B
--# SELECTCHARSET G1 0 TABS -2
--# Other setup modes may be set for operator convenience or communication
--# requirements; I recommend
--# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes
--# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0
--# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU>
--# GAMODE overstrike GCURSOR 0 100 0 GSPEED 10 1
--# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>"
--# PROMPTSTRING '' QUEUESIZE 2460 WINDOW 0 0 4095 3132
--# XMTDELAY 0
--# and factory color maps. After setting these modes, save them with NVSAVE. No
--# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
--# "IC" cannot be used in combination with "im" & "ei".
--# "tek4105a" is just a guess:
--tek4105a|Tektronix 4105,
-- OTbs, OTpt, msgr, xon,
-- OTkn#8, cols#80, it#8, lines#30, vt#3,
-- acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
-- civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J,
-- cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-- cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1,
-- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-- ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1,
-- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ,
-- kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5,
-- lf5=F6, lf6=F8, ll=\E[30;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM,
-- rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1,
-- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-- rs2=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLA>\ELM0\EKE0\ENF1\EKS0\END0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>,
-- sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h,
-- smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
--
-+# Prism-6:
-+# A special terminal for use with library systems, primarily in Germany.
-+# Limited numbers. Similar functionality to P5 (except attributes?).
- #
--# Tektronix 4106/4107/4109 from BRL
--# The following setup modes are assumed for normal operation:
--# CODE ansi COLUMNMODE 80 CRLF no
--# DABUFFER 141 DAENABLE yes DALINES 32
--# DAMODE replace DAVISIBILITY yes ECHO no
--# EDITMARGINS 1 32 FLAGGING input INSERTREPLACE replace
--# LFCR no LOCKKEYBOARD no ORIGINMODE relative
--# PROMPTMODE no SELECTCHARSET G0 B SELECTCHARSET G1 0
--# TABS -2
--# Other setup modes may be set for operator convenience or communication
--# requirements; I recommend
--# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes
--# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0
--# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU>
--# GAMODE overstrike GCURSOR 0 100 0 GSPEED 9 3
--# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>"
--# PROMPTSTRING '' QUEUESIZE 2620 WINDOW 0 0 4095 3132
--# XMTDELAY 0
--# and factory color maps. After setting these modes, save them with NVSAVE. No
--# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
--# "IC" cannot be used in combination with "im" & "ei".
--tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109,
-- msgr, xon,
-- cols#80, it#8, lines#32, vt#3,
-- acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
-- civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J,
-- cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-- cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1,
-- dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-- ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH,
-- il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1,
-- kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-- kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ,
-- kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5,
-- lf5=F6, lf6=F8, ll=\E[32;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM,
-- rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1,
-- rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-- rs1=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLB0\ELM0\EKE0\ENF1\EKS0\END0\ERE0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>,
-- sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h,
-- smkx=\E[?1h\E=, smso=\E[7;42m, smul=\E[4m, tbc=\E[3g,
--
--# Tektronix 4107/4109 interpret 4 modes using "\E%!" followed by a code:
--# 0 selects Tek mode, i.e., \E%!0
--# 1 selects ANSI mode
--# 2 selects ANSI edit-mode
--# 3 selects VT52 mode
-+# Prism-7, Prism-8 and Prism-9:
-+# More recent range of MDIS terminals, in which P7 and P8
-+# replace the P4 & P5, with added functionality, and P9 is the flagship.
-+# The P9 has two emulation modes - P8 and ANSI - and includes a
-+# large number of the DEC VT220 control sequences. Both
-+# P8 and P9 support 80c/24ln/8pg and 132cl/24li/4pg formats.
-+#
-+# Prism-12 and Prism-14:
-+# Latest range, functionally very similar to the P9. The P14 has a
-+# black-on-white overscanning screen.
-+#
-+# The terminfo definitions given here are:
-+#
-+# p2 - Prism-2 (or Prism-1 or P99).
- #
--# 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,
-- OTbs, am, mir, msgr, ul, xenl, xt,
-- cols#79, it#8, lines#29,
-- bel=^G, blink=\E%!1\E[5m$<2>\E%!0,
-- bold=\E%!1\E[1m$<2>\E%!0, clear=\ELZ, cnorm=\E%!0, cr=^M,
-- cub1=^H, cud1=^J, cuf1=\EC,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\E%!3,
-- dim=\E%!1\E[<0m$<2>\E%!0, ed=\EJ, el=\EK, ht=^I, ind=^J,
-- kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-- rev=\E%!1\E[7m$<2>\E%!0, ri=\EI,
-- rmso=\E%!1\E[m$<2>\E%!0, rmul=\E%!1\E[m$<2>\E%!0,
-- sgr=\E%%!1\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>\E%%!0,
-- sgr0=\E%!1\E[m$<2>\E%!0, smso=\E%!1\E[7;5m$<2>\E%!0,
-- smul=\E%!1\E[4m$<2>\E%!0,
--# Tektronix 4207 with sysline. In the ancestral termcap file this was 4107-s;
--# see the note attached to tek4207.
--tek4207-s|Tektronix 4207 with sysline but no memory,
-- eslok, hs,
-- dsl=\E7\E[?6l\E[2K\E[?6h\E8, fsl=\E[?6h\E8,
-- is1=\E%!1\E[2;32r\E[132D\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J,
-- is2=\E7\E[?6l\E[2K\E[?6h\E8,
-- tsl=\E7\E[?6l\E[2K\E[;%i%df, use=tek4107,
--
--# The 4110 series may be a wonderful graphics series, but they make the 4025
--# look good for screen editing. In the dialog area, you can't move the cursor
--# off the bottom line. Out of the dialog area, ^K moves it up, but there
--# is no way to scroll.
-+# p4 - Prism-4 (and older P7s & P8s).
-+# p5 - Prism-5 (or Prism-6).
- #
--# Note that there is a floppy for free from Tek that makes the
--# 4112 emulate the vt52 (use the vt52 termcap). There is also
--# an expected enhancement that will use ANSI standard sequences.
-+# p7 - Prism-7.
-+# p8 - Prism-8 (in national or multinational mode).
-+# p8-w - 132 column version of p8.
-+# p9 - Prism-9 in ANSI mode.
-+# p9-w - 132 column version of p9.
-+# p9-8 - Prism-9 in Prism-8 emulation mode.
-+# p9-8-w - As p9-8, but with 132 columns.
- #
--# 4112 in non-dialog area pretending to scroll. It really wraps
--# but vi is said to work (more or less) in this mode.
-+# p12 - Prism-12 in ANSI mode.
-+# p12-w - 132 column version of p12.
-+# p12-m - Prism-12 in MDC emulation mode.
-+# p12-m-w - As p12-m, but with 132 columns.
-+# p14 - Prism-14 in ANSI mode.
-+# p14-w - 132 column version of p14.
-+# p14-m - Prism-14 in MDC emulation mode.
-+# p14-m-w - As p14-m, but with 132 columns.
- #
--# 'vi' works reasonably well with this entry.
-+# p2: Prism-2
-+# -----------
- #
--otek4112|o4112-nd|otek4113|otek4114|old tektronix 4110 series,
-- am,
-- cols#80, lines#34,
-- bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ind=^J,
-- rmcup=\EKA1\ELV1, smcup=\EKA0\ELV0\EMG0,
--# The 4112 with the ANSI compatibility enhancement
--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,
-- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM, dch1=\E[P,
-- 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,
-- OTns,
-- cuu1=^K, use=tek4112,
--tek4112-5|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,
-- OTbs, am, da, eo,
-- cols#80, lines#5,
-- clear=\ELZ, cub1=^H, cud1=^J, 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,
-- 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,
-- OTbs, am, eo,
-- cols#80, it#8, lines#34,
-- clear=\E^L, cub1=^H, cud1=^J, cuf1=^I, cuu1=^K,
-- cvvis=\ELZ\EKA0,
-- flash=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0,
-- home=\ELF7l\177 @, ht=^I, is2=\ELZ\EKA0\ELF7l\177 @,
-- ll=\ELF hl @, rmso=\EMT1, smso=\EMT2, uc=\010\EMG1_\EMG0,
--# This entry is from Tek. Inc. (Brian Biehl)
--# (tek4115: :bc: renamed to :le:, <rmam>/<smam> added based on init string -- esr)
--otek4115|Tektronix 4115,
-- OTbs, am, da, db, eo,
-- cols#80, it#8, lines#34,
-- cbt=\E[Z, clear=\E[H\E[2J,
-- cnorm=\E%!0\ELBG8\E%!1\E[34;1H, cub1=\E[D, cud1=\E[B,
-- cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-- cvvis=\E%!0\ELBB2\E%!1, dch1=\E[P, dl1=\E[M, ed=\E[J,
-- el=\E[K, home=\E[H, ht=^I, if=/usr/share/tabset/vt100,
-- il1=\E[L,
-- is2=\E%!0\E%\014\ELV0\EKA1\ELBB2\ENU@=\ELLB2\ELM0\ELV1\EKYA?\E%!1\E[<1l\E[?7h\E[?8h\E[34;1H\E[34B\E[m,
-- kbs=^H, ri=\EM, rmam=\E[?7l,
-- rmcup=\E%!0\ELBG8\E%!1\E[34;1H\E[J, rmir=\E[4l,
-- 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,
-- am, xon,
-- cols#80, lines#34,
-- bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-- cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-- 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[%p1%{1}%+%dG,
-- ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL,
-- il1=\E[L, ind=^J, invis=\E[8m, kbs=^H, kcub1=\E[D,
-- kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H,
-- rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, rmam=\E[?7l,
-- rmso=\E[m, rmul=\E[m,
-- sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m,
-- sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-- vpa=\E[%p1%{1}%+%dd,
--# 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.
--# 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,
-- lines#34,
-- csr@, dl1=\E[1M, il1=\E[1L,
-- is2=\E%\E!0\EQD1\EUX03\EKA\ELBB2\ELCE0\ELI100\ELJ2\ELLB2\ELM0\ELS1\ELX00\ELV1\E%\E!1\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-- rc@, sc@, smkx=\E=, use=vt100,
--
--# From: <jcoker@ucbic>
--# (tek4207: This was the termcap file's entry for the 4107/4207, but SCO
--# supplied another, less capable 4107 entry. So we'll use that for 4107 and
--# note that if jcoker wasn't confused you may be able to use this one.
--# I merged in <msgr>,<ind>,<ri>,<invis>,<tbc> from a BRL entry -- esr)
--tek4207|Tektronix 4207 graphics terminal with memory,
-- am, bw, mir, msgr, ul, xenl,
-- cols#80, it#8, lines#32,
-- blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J$<156/>,
-- cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-- cuu1=\EM, dch1=\E[P$<4/>, dl1=\E[M$<3/>, ed=\E[J,
-- el=\E[K$<5/>, home=\E[H, ht=^I, ich1=\E[@$<4/>,
-- il1=\E[L$<3/>, ind=\E[S, invis=\E[=6;<5,
-- is2=\E%!0\ELBP0\E%!1\E[H\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J,
-- kcub1=\E[D, kcud1=\ED, kcuf1=\E[C, kcuu1=\EM, khome=\E[H,
-- rev=\E[7m, ri=\E[T,
-- rmcup=\E[?6h\E%!0\ELBP0\E%!1\E[32;1f, rmso=\E[m,
-- rmul=\E[m, sgr0=\E[m, smcup=\E[?6l\E[H\E[J, smso=\E[7m,
-- smul=\E[4m, tbc=\E[1g,
--
--# 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,
-- OTbs,
-- cols#80, it#8, lines#32,
-- blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J,
-- csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[1M,
-- ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\E[2I, il1=\E[1L,
-- kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, rc=\E8,
-- rmcup=\E[1;1H\E[0J\E[?6h\E[?1l, rmir=\E[4l,
-- rmkx=\E[?1h, rmso=\E[27m, rmul=\E[m, sc=\E7, sgr0=\E[m,
-- smcup=\E%\E!1\E[1;32r\E[?6l\E>, smir=\E[4h,
-- smkx=\E[?1l, smso=\E[7m, smul=\E[4m,
--# Some unknown person wrote:
--# I added the is string - straight Unix has ESC ; in the login
--# 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,
-- am, bw, da, db,
-- cols#80, lines#25,
-- bel=^G, cbt=\E^I, clear=\E^E, cr=^M, cub1=^H, cud1=^J,
-- cuf1=\ES, cup=\E|%p1%{32}%+%c%p2%{32}%+%c, cuu1=\ER,
-- dch1=\E^], dl1=\E^M, ed=\E^U, el=\E^T, ht=^I, ich1=\E^\,
-- il1=\E^L, ind=^J, is2=\037\EZ\Ek, ri=\E^A, rmso=\E\s,
-- rmul=\E\s, sgr0=\E\s, smso=\E$, smul=\E!,
-+# Includes Prism-1 and basic P99 without SP or MP loaded.
-+# The simplest form of Prism-type terminal.
-+# Basic cursor movement and clearing operations only.
-+# No video attributes.
-+# Notes:
-+# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next
-+# value up, followed by backspace.
-+#
-+prism2|MDC Prism-2,
-+ am, bw, msgr,
-+ cols#80, lines#24,
-+ bel=^G, clear=\014$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=^F,
-+ cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c,
-+ cuu1=^Z, ed=\EJ, el=\EK, home=^A,
-+ hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c,
-+ ind=^J, kbs=^H, khome=^A, vpa=\013%p1%{32}%+%c,
-
--# Tektronix 4205 terminal.
-+# p4: Prism-4
-+# -----------
- #
--# am is not defined because the wrap around occurs not when the char.
--# is placed in the 80'th column, but when we are attempting to type
--# the 81'st character on the line. (esr: hmm, this is like the vt100
--# version of xenl, perhaps am + xenl would work!)
-+# Includes early versions of P7 & P8.
-+# Basic family definition for most Prisms (except P2 and P9 ANSI).
-+# Notes:
-+# Horizontal cursor qualifiers of NUL, XON and XOFF are mapped to the next
-+# value up, followed by backspace.
-+# Cursor key definitions removed because they interfere with vi and csh keys.
- #
--# Bold, dim, and standout are simulated by colors and thus not allowed
--# 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,
-- ccc, mir, msgr,
-- colors#8, cols#80, it#8, lines#30, ncv#49, pairs#63,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- bel=^G, blink=\E[5m, bold=\E[=7;<4m, cbt=\E[Z,
-- clear=\E[2J\E[H, cr=^M, 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,
-- dch1=\E[1P, dim=\E[=1;<6m, dl1=\E[1M, ech=\E%p1%dX,
-- ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0, home=\E[H, ht=^I,
-- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[1L, ind=\ED,
-- initc=\E%%!0\ETF4%?%p1%{0}%=%t0%e%p1%{1}%=%t4%e%p1%{2}%=%t3%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}%<%tE1%e%p2%{875}%<%tE\:%eF4%;%?%p3%{125}%<%t0%e%p3%{250}%<%tA2%e%p3%{375}%<%tA?%e%p3%{500}%<%tC8%e%p3%{625}%<%tD4%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\:%eF4%;\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,
-- kf7=\ES,
-- oc=\E%!0\ETFB000001F4F4F42F40030F404A4C<F450F4F46F40F47F4F40\E%!1,
-- op=\E[39;40m, rev=\E[7m, ri=\EM, rmacs=^O, rmcup=,
-- rmir=\E[4l, rmso=\E[=0;<1m, rmul=\E[24m,
-- setb=\E[=%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;,
-- setf=\E[<%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;,
-- sgr0=\E[=0;<1m\E[24;25;27m\017, smacs=^N,
-- smcup=\E%%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m,
-- smul=\E[4m, tbc=\E[1g,
-+prism4|p4|P4|MDC Prism-4,
-+ am, bw, hs, mc5i, msgr,
-+ cols#80, lines#24, wsl#72, xmc#1,
-+ bel=^G, blink=^CB, civis=^]\344, clear=\014$<20>,
-+ cnorm=^]\342, cr=^M, cub1=^H, cud1=^J, cuf1=^F,
-+ cup=\013%p1%{32}%+%c\020%p2%{10}%/%{16}%*%p2%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c,
-+ cuu1=^Z, dim=^CA, dsl=\035\343\035\345, ed=\EJ, el=\EK,
-+ fsl=^]\345, home=^A,
-+ hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%Pc%?%{17}%gc%=%{19}%gc%=%|%gc%!%|%t%{1}%gc%+%c%{8}%e%gc%;%c,
-+ ind=^J, invis=^CH, kbs=^H, khome=^A, mc0=\EU, mc4=\ET, mc5=\ER,
-+ rev=^CD, rmso=^C\s, rmul=^C\s,
-+ sgr=\003%{64}%?%p1%p3%|%t%{4}%+%;%?%p2%t%{16}%+%;%?%p4%t%{2}%+%;%?%p5%t%{1}%+%;%?%p7%t%{8}%+%;%c%?%p9%t\016%e\017%;,
-+ sgr0=^C\s, smso=^CD, smul=^CP, tsl=^]\343,
-+ vpa=\013%p1%{32}%+%c,
-
--#### Teletype (tty)
-+# p5: Prism-5
-+# -----------
- #
--# These are the hardcopy Teletypes from before AT&T bought the company,
--# clattering electromechanical dinosaurs in Bakelite cases that printed on
--# pulpy yellow roll paper. If you remember these you go back a ways.
--# Teletype-branded VDTs are listed in the AT&T section.
-+# Same definition as p4. Includes Prism-6 (not tested!).
-+# Does not use any multi-page features.
- #
--# The earliest UNIXes were designed to use these clunkers; nroff and a few
--# other programs still default to emitting codes for the Model 37.
-+prism5|p5|P5|MDC Prism-5,
-+ use=p4,
-+
-+# p7: Prism-7
-+# -----------
- #
-+# Similar definition to p4. Uses ANSI cursor motion to avoid network problems.
-+# Notes:
-+# Use p4 for very early models of P7.
-+# Rev-index removed; can't send nulls to terminal in 8-bit modes.
-+#
-+prism7|p7|P7|MDC Prism-7,
-+ cup=\E[%i%p1%d;%p2%dH, hpa@, vpa@, use=p4,
-
--tty33|tty35|model 33 or 35 teletype,
-- hc, os, xon,
-- cols#72,
-- bel=^G, cr=^M, cud1=^J, ind=^J,
--tty37|model 37 teletype,
-- OTbs, hc, os, xon,
-- bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=\E7, hd=\E9, hu=\E8,
-- ind=^J,
-+# p8: Prism-8
-+# -----------
-+#
-+# Similar definition to p7. Uses ANSI cursor motion to avoid network problems.
-+# Supports national and multinational character sets.
-+# Notes:
-+# Alternate char set operations only work in multinational mode.
-+# Use p4 for very early models of P8.
-+# Rev-index removed; can't send nulls to terminal in 8-bit modes.
-+# (esr: commented out <smacs>/<rmacs> because there's no <acsc>)
-+#
-+prism8|p8|P8|MDC Prism-8,
-+ cup=\E[%i%p1%d;%p2%dH, hpa=\E[%i%p1%d`, is2=\E[<12h,
-+ vpa=\E[%i%p1%dd, use=p4,
-
--# There are known to be at least three flavors of the tty40, all seem more
--# like IBM half duplex forms fillers than ASCII terminals. They have lots of
--# awful braindamage, such as printing a visible newline indicator after each
--# newline. The 40-1 is a half duplex terminal and is hopeless. The 40-2 is
--# braindamaged but has hope and is described here. The 40-4 is a 3270
--# lookalike and beyond hope. The terminal has visible bell but I don't know
--# it - it's null here to prevent it from showing the BL character.
--# There is an \EG in <nl> because of a bug in old vi (if stty says you have
--# 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,
-- OTbs, xon,
-- cols#80, lines#24,
-- clear=\EH$<20>\EJ$<80>, cr=\EG, cub1=^H, cud1=\EB,
-- cuf1=\EC, cuu1=\E7, dch1=\EP$<50>, dl1=\EM$<50>,
-- ed=\EJ$<75>, home=\EH$<10>, ht=\E@$<10>, hts=\E1,
-- ich1=\E\^$<50>, il1=\EL$<50>, ind=\ES$<20>, kbs=^],
-- kcub1=^H, mc4=^T, mc5=\022$<2000>, ri=\ET$<10>, rmso=\E4,
-- rs2=\023\ER$<60>, smso=\E3, tbc=\EH\E2$<80>,
--tty43|model 43 teletype,
-- OTbs, am, hc, os, xon,
-+# p8-w: Prism-8 in 132 column mode
-+# --------------------------------
-+#
-+# 'Wide' version of p8.
-+# Notes:
-+# Rev-index removed; can't send nulls to terminal in 8-bit modes.
-+#
-+prism8-w|p8-w|P8-W|MDC Prism-8 in 132 column mode,
- cols#132,
-- bel=^G, cr=^M, cub1=^H, cud1=^J, ind=^J, kbs=^H,
-+ is2=\E[<12h\E[<14h, use=p8,
-
--#### Tymshare
-+# p9: Prism-9 in ANSI mode
-+# -------------------------
-+#
-+# The "flagship" model of this generation of terminals.
-+# ANSI X3.64 (ISO 6429) standard sequences, plus many DEC VT220 ones.
-+# Notes:
-+# Tabs only reset by "reset". Otherwise assumes default (8 cols).
-+# Fixes to deal with terminal firmware bugs:
-+# . 'ri' uses insert-line since rev index doesn't always
-+# . 'sgr0' has extra '0' since esc[m fails
-+# . 'fsl' & 'dsl' use illegal char since cr is actioned wrong on line 25
-+# Not covered in the current definition:
-+# . Labels
-+# . Programming Fn keys
-+# . Graphic characters (defaults correctly to vt100)
-+# . Padding values (sets xon)
-+# (esr: commented out <smacs>/<rmacs> because there's no <acsc>)
- #
-+prism9|p9|P9|MDC Prism-9 in ANSII 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,
-+ clear=^L, cnorm=\E[<4h, cr=^M, csr=\E[%i%p1%d;%p2%d%%v,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ 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[%}\024, ech=\E[%p1%dX,
-+ ed=\E[J$<10>, el=\E[K, fsl=^T, home=\E[H, hpa=\E[%i%p1%d`,
-+ ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J,
-+ is2=\E[&p\E[<12l\E F, kbs=^H, kclr=^L, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, 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~, 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[H, nel=^M^J, prot=\E[32%{, rc=\E[%z,
-+ rep=\E[%p2%db%p1%c, rev=\E[7m, ri=\E[L, rmir=\E[4l,
-+ rmso=\E[27m, rmul=\E[24m,
-+ rs2=\E[&p\E[<12l\E F\E[3g\E[9;17;25;33;41;49;57;65;73 N,
-+ sc=\E[%y,
-+ sgr=\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p6%t;1%;m%?%p8%t\E[32%%{%;%?%p9%t\016%e\017%;,
-+ sgr0=\E[0m\017, smir=\E[4h, smso=\E[7m, smul=\E[4m,
-+ tbc=\E[3g, tsl=\E[%i%p1%d%%}, vpa=\E[%i%p1%dd,
-+ use=ansi+pp,
-
--# You can add <is2=\E<> to put this 40-column mode, though I can't
--# for the life of me think why anyone would want to.
--scanset|sc410|sc415|Tymshare Scan Set,
-- am, bw, msgr,
-- cols#80, lines#24,
-- acsc=j%k4l<m-q\,x5, bel=^G, clear=\EH\EJ, cr=^M, cub1=^H,
-- cud1=^J, cuf1=^I, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-- cuu1=^K, ed=\EJ, el=\EK, home=\EH, ind=^J, kcub1=\ED,
-- kcud1=\EB, kcuf1=\EC, kcuu1=\EA, mc0=\E;3, mc4=\E;0,
-- mc5=\E;0, rc=^C, rmacs=^O, rs1=\E>, sc=^B, smacs=^N,
-+# p9-w: Prism-9 in 132 column mode
-+# --------------------------------
-+#
-+# 'Wide' version of p9.
-+#
-+prism9-w|p9-w|P9-W|MDC Prism-9 in 132 column mode,
-+ cols#132,
-+ is2=\E[&p\E[<12l\E F\E[<14h,
-+ rs2=\E[&p\E[<12l\E F\E[<14h, use=p9,
-
--#### Volker-Craig (vc)
-+# p9-8: Prism-9 in P8 mode
-+# ------------------------
- #
--# If you saw a Byte Magazine cover with a terminal on it during the early
--# 1980s, it was probably one of these. Carl Helmers liked them because
--# they could crank 19.2 and were cheap (that is, he liked them until he tried
--# to program one...)
-+# P9 terminal in P8 emulation mode.
-+# Similar to p8 definition.
-+# Insertion and deletion operations possible.
- #
-+prism9-8|p9-8|P9-8|MDC Prism-9 in P8 mode,
-+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8,
-
--# Missing in vc303a and vc303 descriptions: they scroll 2 lines at a time
--# every other linefeed.
--vc303|vc103|vc203|volker-craig 303,
-- OTbs, OTns, am,
-- cols#80, lines#24,
-- bel=^G, clear=\014$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^I,
-- cuu1=^N, home=\013$<40>, kcub1=^H, kcud1=^J, kcuf1=^I,
-- kcuu1=^N, ll=\017$<1>W,
--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,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=\030$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^U,
-- cup=\020%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z,
-- ed=\027$<40>, el=\026$<20>, home=\031$<40>, ind=^J,
-- kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z,
--vc404-s|volker-craig 404 w/standout mode,
-- cud1=^J, rmso=^O, smso=^N, use=vc404,
--# From: <wolfgang@cs.sfu.ca>
--# (vc414: merged in cup/dl1/home from an old vc414h-noxon)
--vc414|vc414h|Volker-Craig 414H in sane escape mode.,
-- OTbs, am,
-- cols#80, lines#24,
-- 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,
-- 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,
-- clear=^L, use=vc404,
-+# p9-8-w: Prism-9 in P8 and 132 column modes
-+# ------------------------------------------
-+#
-+# P9 terminal in P8 emulation mode and 132 column mode.
-+#
-+prism9-8-w|p9-8-w|P9-8-W|MDC Prism-9 in Prism 8 emulation and 132 column mode,
-+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-+ ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L, use=p8-w,
-
--######## OBSOLETE PERSONAL-MICRO CONSOLES AND EMULATIONS
-+# p12: Prism-12 in ANSI mode
-+# ---------------------------
-+#
-+# See p9 definition.
- #
-+prism12|p12|P12|MDC Prism-12 in ANSI mode,
-+ use=p9,
-
--#### IBM PC and clones
-+# p12-w: Prism-12 in 132 column mode
-+# ----------------------------------
-+#
-+# 'Wide' version of p12.
- #
-+prism12-w|p12-w|P12-W|MDC Prism-12 in 132 column mode,
-+ use=p9-w,
-
--# The pcplot IBM-PC terminal emulation program is really messed up. It is
--# supposed to emulate a vt-100, but emulates the wraparound bug incorrectly,
--# doesn't support scrolling regions, ignores add line commands, and ignores
--# delete line commands. Consequently, the resulting behavior looks like a
--# crude adm3a-type terminal.
--# Steve Jacobson 8/85
--pcplot|pc-plot terminal emulation program,
-- xenl@,
-- csr@, dl@, dl1@, il@, il1@, rc@, sc@, use=vt100,
--# KayPro II from Richard G Turner <rturner at Darcom-Hq.ARPA>
--# I've found that my KayPro II, running MDM730, continues to emulate an
--# ADM-3A terminal, just like I was running TERM.COM. On our 4.2 UNIX
--# system the following termcap entry works well:
--# I have noticed a couple of minor glitches, but nothing I can't work
--# around. (I added two capabilities from the BRL entry -- esr)
--kaypro|kaypro2|kaypro II,
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=\032$<1/>, cr=^M, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER, ed=^W,
-- el=^X, home=^^, il1=\EE, ind=^J, kcud1=^J, kcuf1=^L, kcuu1=^K,
-+# p12-m: Prism-12 in MDC emulation mode
-+# -------------------------------------
-+#
-+# P12 terminal in MDC emulation mode.
-+# Similar to p8 definition.
-+# Insertion and deletion operations possible.
-+#
-+prism12-m|p12-m|P12-M|MDC Prism-12 in MDC emulation mode,
-+ use=p9-8,
-
--# From IBM, Thu May 5 19:35:27 1983
--# (ibmpc: commented out <smir>=\200R because we don't know <rmir> -- esr)
--ibm-pc|ibm5051|5051|IBM Personal Computer (no ANSI.SYS),
-- OTbs, am,
-- cols#80, lines#24,
-- bel=^G, clear=^L^K, cr=^M^^, cub1=^], cud1=^J, cuf1=^\,
-- cuu1=^^, home=^K, ind=\n$<10>, kcud1=^_,
-+# p12-m-w: Prism-12 in MDC emulation and 132 column modes
-+# -------------------------------------------------------
-+#
-+# P12 terminal in MDC emulation mode and 132 column mode.
-+#
-+prism12-m-w|p12-m-w|P12-M-W|MDC Prism-12 in MDC emulation and 132 column mode,
-+ use=p9-8-w,
-
--ibmpc|wy60-PC|wyse60-PC|IBM PC/XT running PC/IX,
-- OTbs, am, bw, eo, hs, km, msgr, ul,
-- cols#80, it#8, lines#24,
-- acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M,
-- 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, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
-- home=\E[H, hpa=\E[%i%p1%dG, ind=\E[S\E[B,
-- indn=\E[%p1%dS\E[%p1%dB, invis=\E[30;40m, kbs=^H,
-- kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-- kdch1=\177, kend=\E[Y, kf1=\240, kf10=\251, kf2=\241,
-- kf3=\242, kf4=\243, kf5=\244, kf6=\245, kf7=\246, kf8=\247,
-- kf9=\250, khome=\E[H, kich1=\E[^H, knp=\E[U, kpp=\E[V,
-- ll=\E[24;1H, nel=^M, rev=\E[7m, ri=\E[T\E[A,
-- rin=\E[%p1%dT\E[%p1%dA, rmso=\E[m, rmul=\E[m,
-- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m,
-- sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-+# p14: Prism-14 in ANSII mode
-+# ---------------------------
-+#
-+# See p9 definition.
-+#
-+prism14|p14|P14|MDC Prism-14 in ANSII mode,
-+ use=p9,
-
--#### Apple II
-+# p14-w: Prism-14 in 132 column mode
-+# ----------------------------------
- #
--# Apple II firmware console first, then various 80-column cards and
--# terminal emulators. For two cents I'd toss all these in the UFO file
--# along with the 40-column apple entries.
-+# 'Wide' version of p14.
- #
-+prism14-w|p14-w|P14-W|MDC Prism-14 in 132 column mode,
-+ use=p9-w,
-
--# From: brsmith@umn-cs.cs.umn.edu (Brian R. Smith) via BRL
--# 'it#8' tells UNIX that you have tabs every 8 columns. This is a
--# function of TIC, not the firmware.
--# The clear key on a IIgs will do something like clear-screen,
--# depending on what you're in.
--appleIIgs|appleIIe|appleIIc|Apple 80 column firmware interface,
-- OTbs, am, bw, eo, msgr,
-- cols#80, it#8, lines#24,
-- bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\,
-- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-- home=^Y, ht=^I, ind=^W, kbs=^H, kclr=^X, kcub1=^H, kcud1=^J,
-- kcuf1=^U, kcuu1=^K, kdch1=\177, nel=^M^W, ri=^V, rmso=^N,
-- smso=^O,
--# Apple //e with 80-column card, entry from BRL
--# The modem interface is permitted to discard LF (maybe DC1), otherwise
--# passing characters to the 80-column firmware via COUT (PR#3 assumed).
--# Auto-wrap does not work right due to newline scrolling delay, which also
--# requires that you set "stty cr2".
--# Note: Cursor addressing is only available via the Pascal V1.1 entry,
--# not via the BASIC PR#3 hook. All this nonsense can be avoided only by
--# using a terminal emulation program instead of the built-in firmware.
--apple2e|Apple //e,
-- bw, msgr,
-- cols#80, lines#24,
-- bel=^G, clear=\014$<100/>, cub1=^H, cud1=^J, cuu1=^_,
-- ed=\013$<4*/>, el=\035$<4/>, home=^Y, ht=^I, ind=^W,
-- is2=^R^N, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^K,
-- nel=\r$<100/>, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N,
-- smso=^O,
--# mcvax!vu44!vu45!wilcke uses the "ap" entry together with Ascii Express Pro
--# 4.20, with incoming and outgoing terminals both on 0, emulation On.
--apple2e-p|Apple //e via Pascal,
-- cup=\036%p2%{32}%+%c%p1%{32}%+%c, kbs=^H, kcub1=^H,
-- kcud1=^J, use=apple2e,
--# (ASCII Express) MouseTalk "Standard Apple //" emulation from BRL
--# Enable DC3/DC1 flow control with "stty ixon -ixany".
--apple-ae|ASCII Express,
-- OTbs, am, bw, msgr, nxon, xon,
-- cols#80, it#8, lines#24,
-- bel=\007$<500/>, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^U,
-- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-- home=^Y, ind=^W, is2=^R^N, kclr=^X, kcub1=^H, kcud1=^J,
-- kcuf1=^U, kcuu1=^K, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N,
-- smso=^O,
--appleII|apple ii plus,
-- OTbs, am,
-- cols#80, it#8, lines#24,
-- clear=^L, cnorm=^TC2, cub1=^H, cud1=^J, cuf1=^\,
-- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, cvvis=^TC6,
-- ed=^K, el=^], flash=\024G1$<200/>\024T1, home=\E^Y, ht=^I,
-- is2=\024T1\016, kcud1=^J, 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,
-- OTbs, am, bw,
-- cols#80, lines#24,
-- cbt=^R, clear=\014$<10*/>, cr=\r$<10*/>, cub1=^H, cud1=^J,
-- cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_,
-- ed=\013$<10*/>, el=\035$<10/>, home=^Y,
--apple-soroc|apple emulating soroc 120,
-- am,
-- cols#80, lines#24,
-- bel=^G, clear=\E*$<300>, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET,
-- home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K,
--# From Peter Harrison, Computer Graphics Lab, San Francisco
--# ucbvax!ucsfmis!harrison .....uucp
--# ucbvax!ucsfmis!harrison@BERKELEY .......ARPA
--# "These two work. If you don't have the inverse video chip for the
--# Apple with videx then remove the :so: and :se: fields."
--# (apple-videx: this used to be called DaleApple -- esr)
--apple-videx|Apple with videx videoterm 80 column board with inverse video,
-- OTbs, am, xenl,
-- cols#80, it#8, lines#24,
-- clear=\014$<300/>, cub1=^H, cud1=^J, cuf1=^\,
-- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-- home=^Y, ht=^I, kcub1=^H, kcud1=^J, kcuf1=^U, khome=^Y,
-- rmso=^Z2, sgr0=^Z2, smso=^Z3,
--# My system [for reference] : Apple ][+, 64K, Ultraterm display card,
--# Apple Cat ][ 212 modem, + more all
--# controlled by ASCII Express: Pro.
--# From Dave Shaver <isucs1!shaver>
--apple-uterm-vb|Videx Ultraterm for Apple micros with Visible Bell,
-- OTbs, am, eo, xt,
-- cols#80, lines#24,
-- acsc=, clear=^L, cuf1=^\,
-- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-- flash=^W35^W06, home=^Y,
-- is2=^V4^W06\017\rVisible Bell Installed.\016\r\n,
-- rmso=^N, smso=^O,
--apple-uterm|Ultraterm for Apple micros,
-- OTbs, am, eo, xt,
-- cols#80, lines#24,
-- acsc=, clear=^L, cuf1=^\,
-- cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-- home=^Y, is2=^V4^W06\016, rmso=^N, smso=^O,
--# from trwrba!bwong (Bradley W. Wong):
-+# p14-m: Prism-14 in MDC emulation mode
-+# -------------------------------------
- #
--# This entry assumes that you are using an apple with the UCSD Pascal
--# language card. SYSTEM.MISCINFO is assumed to be the same as that
--# supplied with the standard apple except that screenwidth should be set
--# using SETUP to 80 columns. Note that the right arrow is not mapped in
--# this termcap entry. This is because that key, on the Apple, transmits
--# a ^U and would thus preempt the more useful "up" function of vi.
-+# P14 terminal in MDC emulation mode.
-+# Similar to p8 definition.
-+# Insertion and deletion operations possible.
- #
--# HMH 2/23/81
--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,
-+prism14-m|p14-m|P14-M|MDC Prism-14 in MDC emulation mode,
-+ use=p9-8,
-+
-+# p14-m-w: Prism-14 in MDC emulation and 132 column modes
-+# -------------------------------------------------------
- #
--# Apple II+ equipped with Videx 80 column card
-+# P14 terminal in MDC emulation mode and 132 column mode.
- #
--# Terminfo from ihnp4!ihu1g!djc1 (Dave Christensen) via BRL;
--# manually converted by D A Gwyn
-+prism14-m-w|p14-m-w|P14-M-W|MDC Prism-14 in MDC emulation and 132 column mode,
-+ use=p9-8-w,
-+
-+# End of McDonnell Information Systems Prism definitions
-+
-+# These things were popular in the Pick database community at one time
-+# From: George Land <georgeland@aol.com> 24 Sep 1996
-+p8gl|prism8gl|McDonnell-Douglas Prism-8 alternate definition,
-+ am, bw, hs, mir,
-+ cols#80, lines#24, ma#1, wsl#78, xmc#1,
-+ bel=^G, blink=^CB, clear=^L, cr=^M, cub1=^U, cud1=^J, cuf1=^F,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=^Z, dch1=\s^H, dim=^CA, dl1=^P,
-+ ed=\EJ, el=\EK, home=^A, ind=^J, invis=^CH, kbs=^H, kcub1=^U,
-+ kcud1=^J, kcuf1=^F, kcuu1=^Z, kdch1=\s^H, kdl1=^P, ked=\EJ,
-+ kel=\EK, kf1=^A@\r, kf10=^AI\r, kf12=^AJ\r, kf13=^AK\r,
-+ kf14=^AL\r, kf15=^AM\r, kf16=^AN\r, kf17=^AO\r, kf2=^AA\r,
-+ kf3=^AB\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-+ kf8=^AG\r, kf9=^AH\r, khome=^A, lf1=F1, lf10=F10, lf2=F2,
-+ lf3=F3, lf4=F4, lf5=F5, lf6=F6, lf7=F7, lf8=F8, lf9=F9, nel=^J^M,
-+ pad=\0, rev=^CD, rmso=^C\s, rmul=^C\s, sgr0=^C\s, smso=^CE,
-+ smul=^C0,
-+
-+#### Microterm (act, mime)
- #
--# DO NOT use any terminal emulation with this data base, it works directly
--# with the Videx card. This has been tested with vi 1200 baud and works fine.
-+# The mime1 entries refer to the Microterm Mime I or Mime II.
-+# The default mime is assumed to be in enhanced act iv mode.
- #
--# This works great for vi, except I've noticed in pre-R2, ^U will scroll back
--# 1 screen, while in R2 ^U doesn't.
--# For inverse alternate character set add:
--# <smacs>=^O:<rmacs>=^N:
--# (apple-v: added it#8 -- esr)
--apple-videx2|Apple II+ w/ Videx card (similar to Datamedia h1520),
-- am, xenl,
-- cols#80, it#8, lines#24,
-- bel=\007$<100/>, clear=\014$<16*/>, cr=^M, cub1=^H,
-- cud1=^J, cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c,
-- cuu1=^_, ed=\013$<16*/>, el=^], home=^Y, ht=\011$<8/>,
-- ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_,
-- khome=^Y, rmso=^Z2, smso=^Z3,
--apple-videx3|vapple|Apple II with 80 col card,
-+
-+# New "safe" cursor movement (5/87) from <reuss@umd5.umd.edu>. Prevents
-+# freakout with out-of-range args on Sytek multiplexors. No <smso=^N> and
-+# <rmso=^N> since it gets confused and it's too dim anyway. No <ich1>
-+# since Sytek insists ^S means xoff.
-+# (act4: found ":ic=2^S:ei=:im=:ip=.1*^V:" commented out in 8.3 -- esr)
-+act4|microterm|microterm act iv,
- OTbs, am,
- cols#80, lines#24,
-- clear=\Ev, cub1=\ED, cud1=\EB, cuf1=\EC,
-- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\Ex,
-- home=\EH, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-- kf0=\EP, kf1=\EQ, kf2=\ER, kf3=\E\s, kf4=\E!, kf5=\E", kf6=\E#,
-- kf7=\E$, kf8=\E%%, kf9=\E&, khome=\EH,
--#From: decvax!cbosgd!cbdkc1!mww Mike Warren via BRL
--aepro|Apple II+ running ASCII Express Pro--vt52,
-+ bel=^G, clear=\014$<12/>, cr=^M, cub1=^H, cud1=^K, cuf1=^X,
-+ cup=\024%p1%{24}%+%c%p2%p2%?%{47}%>%t%{48}%+%;%{80}%+%c,
-+ cuu1=^Z, dch1=\004$<.1*/>, dl1=\027$<2.3*/>,
-+ ed=\037$<2.2*/>, el=\036$<.1*/>, home=^],
-+ il1=\001<2.3*/>, ind=^J, kcub1=^H, kcud1=^K, kcuf1=^X,
-+ kcuu1=^Z,
-+# The padding on :sr: and :ta: for act5 and mime is a guess and not final.
-+# The act 5 has hardware tabs, but they are in columns 8, 16, 24, 32, 41 (!)...
-+# (microterm5: removed obsolete ":ma==^Z^P^Xl^Kj:" -- esr)
-+act5|microterm5|microterm act v,
-+ kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, ri=\EH$<3>, uc=^H\EA,
-+ use=act4,
-+# Mimes using brightness for standout. Half bright is really dim unless
-+# you turn up the brightness so far that lines show up on the screen.
-+mime-fb|full bright mime1,
-+ is2=^S\E, rmso=^S, smso=^Y, use=mime,
-+mime-hb|half bright mime1,
-+ is2=^Y\E, rmso=^Y, smso=^S, use=mime,
-+# (mime: removed obsolete ":ma=^X ^K^J^Z^P:"; removed ":do=^K:" that overrode
-+# the more plausible ":do=^J:" -- esr)
-+# uc was at one time disabled to get around a curses bug, be wary of it
-+mime|mime1|mime2|mimei|mimeii|microterm mime1,
-+ OTbs, am,
-+ cols#80, it#8, lines#24, vt#9,
-+ bel=^G, clear=^]^C, cr=^M, cub1=^H, cud1=^J, cuf1=^X,
-+ cup=\024%p1%{24}%+%c%p2%p2%?%{32}%>%t%{48}%+%;%{80}%+%c,
-+ cuu1=^Z, dl1=\027$<80>, ed=^_, el=^^, home=^], ht=\011$<2>,
-+ il1=\001$<80>, ind=^J, is2=^S\E^Q, kcub1=^H, kcud1=^K,
-+ 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),
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EI, dch1=\ED,
-+ dl1=\027$<20*>, ed=\EJ$<20*>, el=\EK, home=^^,
-+ il1=\001$<20*>, ind=^J, ip=$<2>, is2=\E), kcub1=^H, kcud1=^J,
-+ kcuf1=^L, kcuu1=^K, ri=\EI, rmir=^Z, rmso=\E;, rmul=\E7,
-+ 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,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=\EL, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dch1=^N,
-+ dl1=\027$<20*>, ed=\EQ$<20*>, el=\EP, home=\EH, ht=^I,
-+ il1=\001$<20*>, ind=^J, ip=$<2>, is2=^Y, kcub1=\ED,
-+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, ri=\EA, rmir=^Z, rmso=\E9,
-+ rmul=\E5, smir=^O, smso=\E8, smul=\E4,
-+# (mime3a: removed obsolete ":ma=^X ^K^J^Z^P:" -- esr)
-+mime3a|mime1 emulating 3a,
-+ am@,
-+ kcub1=^H, kcud1=^K, kcuf1=^X, kcuu1=^Z, use=adm3a,
-+mime3ax|mime-3ax|mime1 emulating enhanced 3a,
-+ it#8,
-+ dl1=\027$<80>, ed=^_, el=^X, ht=\011$<3>, il1=\001$<80>,
-+ use=mime3a,
-+# Wed Mar 9 18:53:21 1983
-+# We run our terminals at 2400 baud, so there might be some timing problems at
-+# higher speeds. The major improvements in this model are the terminal now
-+# scrolls down and insert mode works without redrawing the rest of the line
-+# to the right of the cursor. This is done with a bit of a kludge using the
-+# exit graphics mode to get out of insert, but it does not appear to hurt
-+# anything when using vi at least. If you have some users using act4s with
-+# programs that use curses and graphics mode this could be a problem.
-+mime314|mm314|mime 314,
-+ am,
- cols#80, lines#24,
-- clear=\014$<300/>, cub1=\ED, cud1=\EB, cuf1=\EC,
-- 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,
-- OTbs,
-+ clear=^L, cub1=^H, cuf1=^X, cup=\024%p1%c%p2%c, cuu1=^Z,
-+ dch1=^D, dl1=^W, ed=^_, el=^^, home=^], ht=^I, il1=^A, kcub1=^H,
-+ kcud1=^K, kcuf1=^X, kcuu1=^Z, rmir=^V, smir=^S,
-+# Microterm mime 340 from University of Wisconsin
-+mm340|mime340|mime 340,
- cols#80, lines#24,
-- clear=\014$<300/>, cuf1=^\\:,
-- cup=\036%p1%{32}%+%c%p2%{32}%+%c$<100/>, cuu1=^_,
-- ed=\013$<300/>, el=^], home=\031$<200/>,
-+ clear=\032$<12/>, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K,
-+ dch1=\E#$<2.1*/>, dl1=\EV$<49.6/>, ed=\037$<2*/>,
-+ el=\EL$<2.1/>, ht=^I, il1=\EU$<46/>, ind=^J, is2=\E\,,
-+ kbs=^H, kcub1=^H, kcud1=^J, kcuu1=^K, nel=^M^J,
-+# This came from University of Wisconsin marked "astro termcap for jooss".
-+# (mt4520-rv: removed obsolete ":kn#4:" and incorrect ":ri=\E[C:";
-+# also added <rmam>/<smam> based on the init string -- esr)
-+mt4520-rv|micro-term 4520 reverse video,
-+ am, hs, msgr, xenl, xon,
-+ cols#80, it#8, lines#24, wsl#80,
-+ bel=^G, clear=\E[H\E[J, cnorm=\E[0V\E8, cr=^M,
-+ 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,
-+ cvvis=\E7\E[0U, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
-+ dl1=\E[M, ed=\E[J, el=\E[K, flash=\E[?5l$<200/>\E[?5h,
-+ fsl=\E[?5l\E[?5h, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-+ ich1=\E[@, il=\E[%p1%dL, il1=\E[L, ind=\ED,
-+ is2=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[1;24r\E[24;1H\E[H\E[J,
-+ kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, khome=\E[H,
-+ ll=\E[24;1H, nel=\EE, rc=\E8, rf=/usr/share/tabset/vt100,
-+ ri=\EM, rmam=\E[?7l, rmso=\E[0m, rmul=\E[24m,
-+ rs1=\E(B\E[2l\E>\E[20l\E[?3l\E[?5h\E[?7h\E[H\E[J,
-+ sc=\E7, sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m,
-+ tbc=\E[g, tsl=\E[25;1H,
-
--#### Apple Lisa & Macintosh
-+# Fri Aug 5 08:11:57 1983
-+# This entry works for the ergo 4000 with the following setups:
-+# ansi,wraparound,newline disabled, xon/xoff disabled in both
-+# setup a & c.
- #
-+# WARNING!!! There are multiple versions of ERGO 4000 microcode
-+# Be advised that very early versions DO NOT WORK RIGHT !!
-+# Microterm does have a ROM exchange program- use it or lose big
-+# (ergo400: added <rmam>/<smam> based on the init string -- esr)
-+ergo4000|microterm ergo 4000,
-+ da, db, msgr,
-+ cols#80, lines#66,
-+ bel=^G, clear=\E[H\E[2J$<80>, cr=^M, cub1=^H, cud1=\E[B,
-+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-+ dch1=\E[1P$<80>, dl1=\E[1M$<5*>, ed=\E[0J$<15>,
-+ el=\E[0K$<13>, ht=^I, il1=\E[1L$<5*>, ind=\ED$<20*>,
-+ is2=\E<\E=\E[?1l\E[?4l\E[?5l\E[?7h\E[?8h$<300>,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kf1=\EOP,
-+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, lf1=pf1, lf2=pf2, lf3=pf3,
-+ lf4=pf4, ri=\EM$<20*>, rmam=\E[?7l, rmir=\E[4l,
-+ rmkx=\E=$<4>, rmso=\E[m$<20>, sgr0=\E[m$<20>,
-+ smam=\E[?7m, smir=\E[4h$<6>, smkx=\E=$<4>,
-+ smso=\E[7m$<20>,
-
--# (lisa: changed <cvvis> to <cnorm> -- esr)
--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,
-- cnorm=\E[5l, cub1=^H, 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,
-- 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),
-- is2=\E>\E[0;7m\014, rmso=\E[0;7m, rmul=\E[0;7m,
-- smso=\E[m, smul=\E[4m, use=lisa,
--
--# lisaterm from ulysses!gamma!epsilon!mb2c!jed (John E. Duncan III) via BRL;
--# <is2> revised by Ferd Brundick <fsbrn@BRL.ARPA>
-+#### NCR
- #
--# These entries assume that the 'Auto Wraparound' is enabled.
--# Xon-Xoff flow control should also be enabled.
-+# NCR's terminal group was merged with AT&T's when AT&T bought the company.
-+# For what happened to that group, see the ADDS section.
- #
--# The vt100 uses :rs2: and :rf: rather than :is2:/:tbc:/:hts: because the tab
--# settings are in non-volatile memory and don't need to be reset upon login.
--# Also setting the number of columns glitches the screen annoyingly.
--# You can type "reset" to get them set.
-+# There is an NCR4103 terminal that's just a re-badged Wyse-50.
- #
--lisaterm|Apple Lisa or Lisa/2 running LisaTerm vt100 emulation,
-- OTbs, OTpt, am, xenl, xon,
-- OTkn#4, cols#80, it#8, lines#24, vt#3,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, ed=\E[J,
-- el=\E[K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, kcub1=\EOD,
-- kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOP, kf1=\EOQ,
-- kf2=\EOR, kf3=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, rc=\E8,
-- rev=\E[7m, ri=\EM, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-- rs1=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r,
-- sc=\E7, sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
-- tbc=\E[3g,
--# Lisaterm in 132 column ("wide") mode.
--lisaterm-w|Apple Lisa with Lisaterm in 132 column mode,
-+
-+# The following vendor-supplied termcaps were captured from the Boundless
-+# Technologies site, 8 March 1998. I removed all-upper-case names that were
-+# identical, except for case, to lower-case ones. I also uncommented the acsc
-+# capabilities.X
-+#
-+# The Intecolor emulation of the NCR 2900/260C color terminal is basically a
-+# DEC vt200/300 with color capabilities added.
-+ncr260intan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard,
-+ colors#8, pairs#64,
-+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-+ use=ncr260vt300an,
-+# The Intecolor emulation of the NCR 2900/260C color terminal is basically a
-+# DEC vt200/300 with color capabilities added.
-+ncr260intwan|NCR Intecolor emulation of the 2900_260C with an ANSI keyboard,
-+ colors#8, pairs#64,
-+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-+ use=ncr260vt300wan,
-+# The Intecolor emulation of the NCR 2900/260C color terminal is basically a
-+# DEC vt200/300 with color capabilities added.
-+ncr260intpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard,
-+ colors#8, pairs#64,
-+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-+ use=ncr260vt300pp,
-+# The Intecolor emulation of the NCR 2900/260C color terminal is basicly a
-+# DEC vt200/300 with color capabilities added.
-+ncr260intwpp|NCR Intecolor emulation of the 2900_260C with a PC+ keyboard in 132 column mode,
-+ colors#8, pairs#64,
-+ op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
-+ use=ncr260vt300wpp,
-+# This definition for ViewPoint supports several attributes. This means
-+# that it has magic cookies (extra spaces where the attributes begin).
-+# Some applications do not function well with magic cookies. The System
-+# Administrator's Shell in NCR Unix SVR4 1.03 is one such application.
-+# If supporting various attributes is not vital, 'xmc#1' and the extra
-+# attributes can be removed.
-+# Mapping to ASCII character set ('acsc' capability) can also be
-+# restored if needed.
-+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,
-+ 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=^M, 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\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=^J, kcuf1=^F,
-+ 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=\002%^M, kf22=^B&\r, kf23=^B'\r,
-+ kf24=^B(\r, kf25=^B)\r, kf26=^B*\r, kf27=^B+\r,
-+ kf28=^B\,\r, kf29=^B-\r, kf3=^B3\r, kf30=^B.\r, kf31=^B/\r,
-+ kf32=^B0\r, kf4=^B4\r, kf5=^B5\r, kf6=^B6\r, kf7=^B7\r,
-+ kf8=^B8\r, kf9=^B9\r, khome=^A, kich1=\Eq, knp=\EJ, kpp=\EJ,
-+ kprt=\EP, ll=\001$<5>, mc0=\EP$<100>, mc4=^T, mc5=^R,
-+ 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\EcC1\Ee7$<100>,
-+ sgr0=\EG0\EH\003, smacs=\EcB1\EH\002, smir=\Eq,
-+ smso=\EG4, smul=\EG8, smxon=\Ec21, tsl=\EF,
-+ncr260vpwpp|NCR 2900_260 viewpoint wide mode,
-+ cols#132,
-+ cup=\Ea%i%p1%dR%p2%dC$<30>,
-+ is2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>,
-+ rs2=\Ee6\E~%$<100>\E+\E`;\Ed/\E`1\EO\Ee4\Ec@0@\Ec@1A\EcB0\EcC1\Ee7$<100>,
-+ use=ncr260vppp,
-+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>,
-+ 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$~,
-+ ech=\E[%p1%dX, ed=\E[0J$<5>, el=\E[0K$<3>, el1=\E[1K$<3>,
-+ fsl=\E[0$}, home=\E[H$<1>, hpa=\E[%p1%dG$<40>, ht=^I,
-+ hts=\EH, ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>,
-+ il1=\E[L$<5>, ind=\ED$<5>, indn=\E[%p1%dE$<5>,
-+ invis=\E[8m,
-+ 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,
-+ 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>,
-+ sc=\E7,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%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,
-+ncr260vt100wan|NCR 2900_260 vt100 wide mode ansi kybd,
-+ cols#132,
-+ cup=\E[%i%p1%d;%p2%dH$<30>,
-+ is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ use=ncr260vt100an,
-+ncr260vt100pp|NCR 2900_260 vt100 with PC+ kybd,
-+ is2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~,
-+ kend=\E[5~, khome=\E[2~, kich1=\E[1~, knp=\E[6~, kpp=\E[3~,
-+ lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>,
-+ rs2=\E[!p\E[?7;19;67h\E[?1;3;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ smkx=\E=, use=ncr260vt100an,
-+ncr260vt100wpp|NCR 2900_260 vt100 wide mode pc+ kybd,
-+ cols#132,
-+ cup=\E[%i%p1%d;%p2%dH$<30>,
-+ is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ use=ncr260vt100pp,
-+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>,
-+ 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$~,
-+ ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>,
-+ fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH,
-+ ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>,
-+ ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m,
-+ 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,
-+ 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,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<20>,
-+ 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,
-+ncr260vt200wan|NCR 2900_260 vt200 wide mode ansi kybd,
- cols#132,
-- kbs=^H, kcub1=^H, kcud1=^J, use=lisaterm,
--# Although MacTerminal has insert/delete line, it is commented out here
--# since it is much faster and cleaner to use the "lock scrolling region"
--# method of inserting and deleting lines due to the MacTerminal implementation.
--# Also, the "Insert/delete ch" strings have an extra character appended to them
--# due to a bug in MacTerminal V1.1. Blink is disabled since it is not
--# supported by MacTerminal.
--mac|macintosh|Macintosh with MacTerminal,
-- xenl,
-- OTdN#30,
-- blink@, dch1=\E[P$<7/>, ich1=\E[@$<9/>, ip=$<7/>, use=lisa,
--# Lisaterm in 132 column ("wide") mode.
--mac-w|macterminal-w|Apple Macintosh with Macterminal in 132 column mode,
-- cols#132, use=mac,
--
--# nsterm*|Apple_Terminal - AppKit Terminal.app
--#
--# Terminal.app is a Terminal emulator bundled with NeXT's NeXTStep and
--# OPENSTEP/Mach operating systems, and with Apple's Rhapsody, Mac OS X
--# Server and Mac OS X operating systems. There is also a
--# "terminal.app" in GNUStep, but I believe it to be an unrelated
--# codebase and I have not attempted to describe it here.
--#
--# For NeXTStep, OPENSTEP/Mach, Rhapsody and Mac OS X Server 1.0, you
--# are pretty much on your own. Use "nsterm-7-m" and hope for the best.
--# You might also try "nsterm-7" and "nsterm-old" if you suspect your
--# version supports color.
--#
--# To determine the version of Terminal.app you're using by running:
--#
--# echo "$TERM_PROGRAM" "$TERM_PROGRAM_VERSION"
--#
--# For Apple_Terminal v200+, use "nsterm-16color" (a.k.a. "nsterm")
--#
--# For Apple_Terminal v71+/v100+, use "nsterm-bce".
--#
--# For Apple_Terminal v51+, use "nsterm-7-c" or "nsterm-7-c-s".
--#
--# For Apple_Terminal v41+, use "nsterm-old", or "nsterm-s".
--#
--# For all earlier versions (Apple_Terminal), try "nsterm-7-m"
--# (monochrome) or "nsterm-7" (color); "nsterm-7-m-s" and "nsterm-7-s"
--# might work too, but really you're on your own here since these
--# systems are very obsolete and I can't test them. I do welcome
--# patches, though :).
--
--# Other Terminals:
--#
--# For GNUstep_Terminal, you're probably best off using "linux" or
--# writing your own terminfo.
--
--# For MacTelnet, you're on your own. It's a different codebase, and
--# seems to be somewhere between "vt102", "ncsa" and "xterm-color".
--
--# For iTerm.app, see "iterm".
--
--#
--# The AppKit Terminal.app descriptions all have names beginning with
--# "nsterm". Note that the statusline (-s) versions use the window
--# titlebar as a phony status line, and may produce warnings during
--# compilation as a result ("tsl uses 0 parameters, expected 1".)
--# Ignore these warnings, or even ignore these entries entirely. Apps
--# which need to position the cursor or do other fancy stuff inside the
--# status line won't work with these entries. They're primarily useful
--# for programs like Pine which provide simple notifications in the
--# status line. Please note that non-ASCII characters don't work right
--# in the status line, since Terminal.app incorrectly interprets their
--# Unicode codepoints as MacRoman codepoints (in earlier Mac OS X
--# versions) or only accepts status lines consisting entirely of
--# characters from the first 256 Unicode positions (including C1 but
--# not C0 or DEL.)
--#
--# The Mythology* of AppKit Terminal.app:
--#
--# In the days of NeXTSTep 0.x and 1.x there were two incompatible
--# bundled terminal emulators, Shell and Terminal. Scott Hess wrote a
--# shareware replacement for Terminal called "Stuart" which NeXT bought
--# and used as the basis for the Terminal.app in NeXTstep 2+,
--# OPENSTEP/Mach, Apple Rhapsody, Mac OS X Server 1.0, and Mac OS X. I
--# don't know the TERM_PROGRAM and TERM_PROGRAM_VERSION settings or
--# capabilities for the early versions, but I believe that the
--# TERM_PROGRAM_VERSION may have been reset at some point.
--#
--# The early versions were tailored to the NeXT character set. Sometime
--# after the Apple aquisition the encoding was swiched to MacRoman
--# (initally with serious altcharset bugs due to incomplete conversion
--# of the old NeXT code,) and then later to UTF-8. Alos sometime during
--# or just prior to the early days of Mac OS X, the Terminal grew ANSI
--# 8-color support (initially buggy when combined with attributes, but
--# that was later fixed.) More recently, around Mac OS X version 10.3
--# or so (Terminal.app v100+) xterm-like 16-color support was added. In
--# some versions (for instance 133-1 which shipped with Mac OS X
--# version 10.4) this suffered from the <bce> bug, but that seems to
--# have been fixed in Mac OS X version 10.5 (Terminal.app v240.2+).
--#
--# In the early days of Mac OS X the terminal was fairly buggy and
--# would routinely crash under load. Many of these bugs seem to have
--# been fixed around Mac OS X version 10.3 (Terminal.app v100+) but
--# some may still remain. This change seems to correspond to
--# Terminal.app reporting "xterm-color" as $TERM rather than "vt100" as
--# it did previously.
--#
--# * This may correspond with what actually happened, but I don't
--# know. It is based on guesswork, hearsay, private correspondence,
--# my faulty memory, and the following online sources and references:
--#
--# [1] "Three Scotts and a Duane" by Simson L. Garfinkel
--# http://www.nextcomputers.org/NeXTfiles/Articles/NeXTWORLD/93.8/93.8.Dec.Community1.html
-+ cup=\E[%i%p1%d;%p2%dH$<30>,
-+ is2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>,
-+ rs2=\E[!p\E[?3;7;19;67h\E[?4l\E(B\E)0\017\E[2J\E[1;1H$<200>,
-+ use=ncr260vt200an,
-+ncr260vt200pp|NCR 2900_260 vt200 with pc+ kybd,
-+ ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~,
-+ kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
-+ lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=,
-+ use=ncr260vt200an,
-+ncr260vt200wpp|NCR 2900_260 vt200 wide mode pc+ kybd,
-+ cols#132,
-+ cup=\E[%i%p1%d;%p2%dH$<30>,
-+ is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ use=ncr260vt200pp,
-+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>,
-+ 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$~,
-+ ech=\E[%p1%dX$<5>, ed=\E[0J, el=\E[0K$<5>, el1=\E[1K$<5>,
-+ fsl=\E[0$}, home=\E[H, hpa=\E[%p1%dG$<40>, ht=^I, hts=\EH,
-+ ich=\E[%p1%d@$<5>, il=\E[%p1%dL$<5>, il1=\E[L$<5>,
-+ ind=\ED$<5>, indn=\E[%p1%dE$<5>, invis=\E[8m,
-+ 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,
-+ 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,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;$<20>,
-+ 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,
-+ncr260vt300wan|NCR 2900_260 vt300 wide mode ansi kybd,
-+ cols#132,
-+ cup=\E[%i%p1%d;%p2%dH$<30>,
-+ is2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>,
-+ rs2=\E[!p\E[?3;7;19;67h\E[?4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H$<200>,
-+ use=ncr260vt300an,
-+ncr260vt300pp|NCR 2900_260 vt300 with pc+ kybd,
-+ ka1=\E[H, ka3=\EOu, kb2=\E[V, kc3=\E[U, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\E[4~,
-+ kend=\E[1~, khome=\E[H, kich1=\E[2~, knp=\E[6~, kpp=\E[5~,
-+ lf1=pf1, lf2=pf2, lf3=pf3, lf4=pf4, rmkx=\E>, smkx=\E=,
-+ use=ncr260vt300an,
-+NCR260VT300WPP|ncr260vt300wpp|NCR 2900_260 vt300 wide mode pc+ kybd,
-+ cols#132,
-+ cup=\E[%i%p1%d;%p2%dH$<30>,
-+ is2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ rs2=\E[!p\E[?3;7;19;67h\E[?1;4l\E[1;0%w\E(B\E)0\017\E[2J\E[1;1H\E>$<200>,
-+ use=ncr260vt300pp,
-+# This terminfo file contains color capabilities for the Wyse325 emulation of
-+# the NCR 2900/260C color terminal. Because of the structure of the command
-+# (escape sequence) used to set color attributes, one of the fore/background
-+# colors must be preset to a given value. I have set the background color to
-+# black. The user can change this setup by altering the last section of the
-+# 'setf' definition. The escape sequence to set color attributes is
-+# ESC d y <foreground_color> <background_color> 1
-+# In addition, the background color can be changed through the desk accessories.
-+# The capablitiy 'op' sets colors to green on black (default combination).
- #
--# [2] NeXTSTEP entry from Wikipedia, the free encyclopedia
--# https://secure.wikimedia.org/wikipedia/en/wiki/Nextstep
-+# NOTE: The NCR Unix System Administrator's Shell will not function properly
-+# if the 'pairs' capability is defined. Un-Comment the 'pairs'
-+# capability and recompile if you wish to have it included.
- #
--# * Renamed the AppKit Terminal.app entry from "Apple_Terminal" to
--# "nsterm" to comply with the name length and case conventions and
--# limitations of various software packages [notably Solaris terminfo
--# and UNIX.] A single Apple_Terminal alias is retained for
--# backwards-compatbility.
-+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,
-+ cbt=\EI, civis=\E`0, clear=\E*$<10>, cnorm=\E`1, cr=^M,
-+ 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=^M, 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\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,
-+ kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K, kdch1=\EW, kend=\ET,
-+ kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r,
-+ kf14=^AM\r, kf15=^AN\r, kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r,
-+ kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r,
-+ kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r,
-+ kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r, kf30=^Am\r, kf31=^An\r,
-+ kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r, kf6=^AE\r, kf7=^AF\r,
-+ kf8=^AG\r, kf9=^AH\r, khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ,
-+ kprt=\EP, mc0=\EP, mc4=^T, mc5=^R,
-+ 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\Ee7$<100>,
-+ setb=\s,
-+ setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{64}%e%p1%{8}%=%t%{57}%e%p1%{9}%=%t%{58}%e%p1%{10}%=%t%{59}%e%p1%{11}%=%t%{60}%e%p1%{12}%=%t%{61}%e%p1%{13}%=%t%{62}%e%p1%{14}%=%t%{63}%e%p1%{15}%=%t%{56}%;\Edy%c11$<100>,
-+ 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,
-+ 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\Ee7$<100>,
-+ rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>,
-+ use=ncr260wy325pp,
-+# This definition for Wyse 350 supports several attributes. This means
-+# that it has magic cookies (extra spaces where the attributes begin).
-+# Some applications do not function well with magic cookies. The System
-+# Administrator's Shell in NCR Unix SVR4 1.03 is one such application.
-+# If supporting various attributes is not vital, 'xmc#1' and the extra
-+# attributes can be removed.
-+# Mapping to ASCII character set ('acsc' capability) can also be
-+# restored if needed.
-+# In addition, color capabilities have been added to this file. The drawback,
-+# however, is that the background color has to be black. The foreground colors
-+# are numbered 0 through 15.
- #
--# * Added function key support (F1-F4). These only work in Terminal.app
--# version 51, hopefully the capabilities won't cause problems for people
--# using version 41.
-+# NOTE: The NCR Unix System Administrator's Shell does not function properly
-+# with the 'pairs' capability defined as below. If you wish to
-+# have it included, Un-comment it and recompile (using 'tic').
- #
--# * Added "full color" (-c) entries which support the 16-color mode in
--# version 51.
-+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,
-+ cbt=\EI, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M,
-+ 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=^M, 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\Ee7$<100>,
-+ kDC=\ER, kEND=\EY, kHOM=\E{, kPRT=\E7, kRIT=^L, ka1=^^, kbs=^H,
-+ kc1=\ET, kc3=\EK, kcbt=\EI, kcub1=^H, kcud1=^J, kcuf1=^L,
-+ kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r,
-+ kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r,
-+ kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r,
-+ kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r,
-+ kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r,
-+ kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r,
-+ kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r,
-+ khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP,
-+ mc0=\EP$<10>, mc4=^T, mc5=^R,
-+ 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\Ee7$<100>,
-+ setb=\s,
-+ setf=%?%p1%{0}%=%t%{49}%e%p1%{1}%=%t%{50}%e%p1%{2}%=%t%{51}%e%p1%{3}%=%t%{52}%e%p1%{4}%=%t%{53}%e%p1%{5}%=%t%{54}%e%p1%{6}%=%t%{55}%e%p1%{7}%=%t%{102}%e%p1%{8}%=%t%{97}%e%p1%{9}%=%t%{98}%e%p1%{10}%=%t%{99}%e%p1%{11}%=%t%{101}%e%p1%{12}%=%t%{106}%e%p1%{13}%=%t%{110}%e%p1%{14}%=%t%{111}%e%p1%{15}%=%t%{56}%;\Em0%c$<100>,
-+ 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,
-+ 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\Ee7$<200>,
-+ rs2=\Ee6\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<200>,
-+ use=ncr260wy350pp,
-+# This definition for Wyse 50+ supports several attributes. This means
-+# that it has magic cookies (extra spaces where the attributes begin).
-+# Some applications do not function well with magic cookies. The System
-+# Administrator's Shell in NCR Unix SVR4 1.03 is one such application.
-+# If supporting various attributes is not vital, 'xmc#1' and the extra
-+# attributes can be removed.
-+# Mapping to ASCII character set ('acsc' capability) can also be
-+# 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+,
-+ 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,
-+ cbt=\EI$<5>, civis=\E`0, clear=\E+$<20>, cnorm=\E`1, cr=^M,
-+ cub1=\010$<5>, cud1=\n$<5>, cuf1=\014$<5>,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c$<30>, cuu1=\013$<5>,
-+ cvvis=\E`5, dch1=\EW$<50>, dim=\EGp, dl1=\ER$<5>, dsl=\E`c,
-+ ed=\EY$<5>, el=\ET$<5>, fsl=^M, 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"\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=^J, kcuf1=^L,
-+ kcuu1=^K, kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r,
-+ kf11=^AJ\r, kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r,
-+ kf16=^AO\r, kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r,
-+ kf20=^Ac\r, kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r,
-+ kf25=^Ah\r, kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r,
-+ kf3=^AB\r, kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r,
-+ kf5=^AD\r, kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r,
-+ khome=^^, kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP,
-+ mc0=\EP$<10>, mc4=^T, mc5=^R,
-+ 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"\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,
-+ 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"\Ee4\Ex@\E`9\Ee7$<200>,
-+ 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,
-+ am, bw, hs, km, mc5i, mir, msgr, xon,
-+ cols#80, lines#24, nlab#32,
-+ acsc=07a?h;j5k3l2m1n8q\:t4u9v=w0x6, bel=^G, blink=\EG2,
-+ cbt=\EI$<15>, civis=\E`0, clear=\E*$<100>, cnorm=\E`1,
-+ cr=^M, 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=^M, 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"\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$<15>, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K,
-+ kdch1=\EW, kend=\ET, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r,
-+ kf12=^AK\r, kf13=^AL\r, kf14=^AM\r, kf15=^AN\r, kf16=^AO\r,
-+ kf17=^A`\r, kf18=^Aa\r, kf19=^Ab\r, kf2=^AA\r, kf20=^Ac\r,
-+ kf21=^Ad\r, kf22=^Ae\r, kf23=^Af\r, kf24=^Ag\r, kf25=^Ah\r,
-+ kf26=^Ai\r, kf27=^Aj\r, kf28=^Ak\r, kf29=^Al\r, kf3=^AB\r,
-+ kf30=^Am\r, kf31=^An\r, kf32=^Ao\r, kf4=^AC\r, kf5=^AD\r,
-+ kf6=^AE\r, kf7=^AF\r, kf8=^AG\r, kf9=^AH\r, khome=^^,
-+ kich1=\Eq, knp=\EK, kpp=\EJ, kprt=\EP, mc0=\EP, mc4=^T, mc5=^R,
-+ 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"\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,
-+ 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"\Ee4\Ex@\E`9\Ee7$<100>,
-+ rs2=\Ee6\E~4$<100>\E+\Ed/\Ee1\Ed*\Er\EO\E`1\E`;\E`@\E~!\E"\Ee4\Ex@\E`9\Ee7$<100>,
-+ use=ncr260wy60pp,
-+ncr160vppp|NCR 2900_160 viewpoint,
-+ use=ncr260vppp,
-+ncr160vpwpp|NCR 2900_160 viewpoint wide mode,
-+ use=ncr260vpwpp,
-+ncr160vt100an|NCR 2900_160 vt100 with ansi kybd,
-+ use=ncr260vt100an,
-+ncr160vt100pp|NCR 2900_160 vt100 with PC+ kybd,
-+ use=ncr260vt100pp,
-+ncr160vt100wan|NCR 2900_160 vt100 wide mode ansi kybd,
-+ use=ncr260vt100wan,
-+ncr160vt100wpp|NCR 2900_160 vt100 wide mode pc+ kybd,
-+ use=ncr260vt100wpp,
-+ncr160vt200an|NCR 2900_160 vt200 with ansi kybd,
-+ use=ncr260vt200an,
-+ncr160vt200pp|NCR 2900_160 vt200 with pc+ kybd,
-+ use=ncr260vt200pp,
-+ncr160vt200wan|NCR 2900_160 vt200 wide mode ansi kybd,
-+ use=ncr260vt200wan,
-+ncr160vt200wpp|NCR 2900_160 vt200 wide mode pc+ kybd,
-+ use=ncr260vt200wpp,
-+ncr160vt300an|NCR 2900_160 vt300 with ansi kybd,
-+ use=ncr260vt300an,
-+ncr160vt300pp|NCR 2900_160 vt300 with pc+ kybd,
-+ use=ncr260vt300pp,
-+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+,
-+ use=ncr260wy50+pp,
-+ncr160wy50+wpp|NCR 2900_160 wyse 50+ wide mode,
-+ use=ncr260wy50+wpp,
-+ncr160wy60pp|NCR 2900_160 wyse 60,
-+ use=ncr260wy60pp,
-+ncr160wy60wpp|NCR 2900_160 wyse 60 wide mode,
-+ use=ncr260wy60wpp,
-+ncrvt100an|ncrvt100pp|NCR vt100 for the 2900 terminal,
-+ am, hs, mc5i, mir, msgr, xon,
-+ cols#80, it#8, lines#24, nlab#32,
-+ acsc=``aaffgghhiijjkkllmmnnqqttuuvvwwxxyyzz~~,
-+ bel=^G, blink=\E[5m$<30>, bold=\E[1m$<30>,
-+ clear=\E[2J\E[1;1H$<300>, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr$<100>, cub=\E[%p1%dD$<30>,
-+ cub1=\E[D$<2>, cud=\E[%p1%dB$<30>, cud1=\E[B$<2>,
-+ cuf=\E[%p1%dC$<30>, cuf1=\E[C$<2>,
-+ cup=\E[%i%p1%d;%p2%dH$<100>, cuu=\E[%p1%dA$<30>,
-+ cuu1=\E[A$<2>, dch=\E[%p1%dP$<40>, dch1=\E[1P$<10>,
-+ dl=\E[%p1%dM$<70>, dl1=\E[M$<40>, dsl=\E[31l$<25>,
-+ ed=\E[0J$<300>, el=\E[0K$<30>, el1=\E[1K$<30>,
-+ enacs=\E(B\E)0$<40>, fsl=1$<10>, home=\E[H$<2>$<80>,
-+ ht=^I, hts=\EH, il=\E[%p1%dL$<80>, il1=\E[B\E[L$<80>,
-+ ind=\ED,
-+ is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3l\E(B\E)0$<200>,
-+ kLFT=\E[D, kRIT=\E[C, ka1=\E[H, kbs=^H, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kent=^M, kf1=\EOP,
-+ kf2=\EOQ, kf3=\EOR, kf4=\EOS, mc0=\E[i$<100>, nel=\EE,
-+ rc=\E8, rev=\E[7m$<30>, ri=\EM$<50>, rmacs=\017$<90>,
-+ rmir=\E[4l$<80>, rmso=\E[0m$<30>, rmul=\E[0m$<30>,
-+ rs2=\Ec\E[12;31h\E[?3;4;5;10l\E[?6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>,
-+ sc=\E7,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<100>,
-+ 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>,
-+ncrvt100wan|NCRVT100WPP|ncrvt100wpp|NCR VT100 emulation of the 2900 terminal,
-+ cols#132,
-+ is2=\E[12h\E[?10l\E%/0n\E[P\031\E[?3h\E(B\E)0$<200>,
-+ rs2=\Ec\E[12;31h\E[?4;5;10l\E?3;6;7;19;25h\E[33;34l\E[0m\E(B\E)0\E%/0n\E[P\031$<200>,
-+ use=ncrvt100an,
- #
--# * By default, version 51 uses UTF-8 encoding with broken altcharset
--# support, so "ASCII" (-7) entries without altcharset support were
--# added.
-+# Vendor-supplied NCR termcaps end here
-
--# nsterm - AppKit Terminal.app
--#
--# Apple's Mac OS X includes a Terminal.app derived from the old NeXT
--# Terminal.app. It is a partial VT100 emulation with some xterm-like
--# extensions. This terminfo was written to describe versions 41
--# (shipped with Mac OS X version 10.0) and 51 (shipped with Mac OS X
--# version 10.1) of Terminal.app.
--#
--# Terminal.app runs under the Mac OS X Quartz windowing system (and
--# other AppKit-supported windowing systems.) On the Mac OS X machine I
--# use, the executable for Terminal.app is:
--# /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal
--#
--# If you're looking for a description of the full-screen system
--# console which runs under Apple's Darwin operating system on PowerPC
--# platforms, see the "xnuppc" entry instead.
--#
--# There were no function keys in version 41. In version 51, there are
--# four working function keys (F1, F2, F3 and F4.) The function keys
--# are included in all of these entries.
-+# NCR7900 DIP switches:
- #
--# It does not support mouse pointer position reporting. Under some
--# circumstances the cursor can be positioned using option-click; this
--# works by comparing the cursor position and the selected position,
--# and simulating enough cursor-key presses to move the cursor to the
--# selected position. This technique fails in all but the simplest
--# applications.
-+# Switch A:
-+# 1-4 - Baud Rate
-+# 5 - Parity (Odd/Even)
-+# 6 - Don't Send or Do Send Spaces
-+# 7 - Parity Enable
-+# 8 - Stop Bits (One/Two)
- #
--# It provides partial ANSI color support (background colors interacted
--# badly with bold in version 41, though, as reflected in :ncv:.) The
--# monochrome (-m) entries are useful if you've disabled color support
--# or use a monochrome monitor. The full color (-c) entries are useful
--# in version 51, which doesn't exhibit the background color bug. They
--# also enable an xterm-compatible 16-color mode.
-+# Switch B:
-+# 1 - Upper/Lower Shift
-+# 2 - Typewriter Shift
-+# 3 - Half Duplex / Full Duplex
-+# 4 - Light/Dark Background
-+# 5-6 - Carriage Return Without / With Line Feed
-+# 7 - Extended Mode
-+# 8 - Suppress Keyboard Display
- #
--# The configurable titlebar is set using xterm-compatible sequences;
--# it is used as a status bar in the statusline (-s) entries. Its width
--# depends on font sizes and window sizes, but 50 characters seems to
--# be the default for an 80x24 window.
-+# Switch C:
-+# 1 - End of line entry disabled/enabled
-+# 2 - Conversational mode / (Local?) Mode
-+# 3 - Control characters displayed / not displayed
-+# 4 - (2-wire?) / 4-wire communications
-+# 5 - RTS on and off for each character
-+# 6 - (50Hz?) / 60 Hz
-+# 7 - Exit after level zero diagnostics
-+# 8 - RS-232 interface
- #
--# The MacRoman character encoding is used for some of the alternate
--# characters in the "MacRoman" entries; the "ASCII" (-7) entries
--# disable alternate character set support entirely, and the "VT100"
--# (-acs) entries rely instead on Terminal.app's own buggy VT100
--# graphics emulation, which seems to think the character encoding is
--# the old NeXT charset instead of MacRoman. The "ASCII" (-7) entries
--# are useful in Terminal.app version 51, which supports UTF-8 and
--# other ASCII-compatible character encodings but does not correctly
--# implement VT100 graphics; once VT100 graphics are correctly
--# implemented in Terminal.app, the "VT100" (-acs) entries should be
--# usable in any ASCII-compatible character encoding [except perhaps
--# in UTF-8, where some experts argue for disallowing alternate
--# characters entirely.]
-+# Switch D:
-+# 1 - Reverse Channel (yes / no)
-+# 2 - Manual answer (no / yes)
-+# 3-4 - Cursor appearance
-+# 5 - Communication Rate
-+# 6 - Enable / Disable EXT turnoff
-+# 7 - Enable / Disable CR turnoff
-+# 8 - Enable / Disable backspace
- #
--# Terminal.app reports "vt100" as the terminal type, but exports
--# several environment variables which may aid detection in a shell
--# profile (i.e. .profile or .login):
-+# Since each attribute parameter is 0 or 1, we shift each attribute (standout,
-+# reverse, blink, dim, and underline) the appropriate number of bits (by
-+# multiplying the 0 or 1 by a correct factor to shift) so the bias character,
-+# '@' is (effectively) "or"ed with each attribute to generate the proper third
-+# character in the <ESC>0 sequence. The <sgr> string implements the following
-+# equation:
- #
--# TERM=vt100
--# TERM_PROGRAM=Apple_Terminal
--# TERM_PROGRAM_VERSION=41 # in Terminal.app version 41
--# TERM_PROGRAM_VERSION=51 # in Terminal.app version 51
-+# ((((('@' + P5) | (P4 << 1)) | (P3 << 3)) | (P2 << 4)) | (p1 * 17)) =>
-+# ((((('@' + P5) + (P4 << 1)) + (P3 << 3)) + (P2 << 4)) + (p1 * 17))
- #
--# For example, the following Bourne shell script would detect the
--# correct terminal type:
-+# Where: P1 <==> Standout attribute parameter
-+# P2 <==> Underline attribute parameter
-+# P3 <==> Reverse attribute parameter
-+# P4 <==> Blink attribute parameter
-+# P5 <==> Dim attribute parameter
-+# From <root@goliath.un.atlantaga.NCR.COM>, init string hacked by SCO.
-+ncr7900i|ncr7900|ncr 7900 model 1,
-+ am, bw, ul,
-+ cols#80, lines#24, xmc#1,
-+ bel=^G, blink=\E0B, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^F,
-+ cup=\E1%p2%c%p1%c, cuu1=^Z, dim=\E0A, ed=\Ek, el=\EK, ind=^J,
-+ is2=\E0@\010\E3\E4\E7, kcub1=^U, kcud1=^J, kcuf1=^F,
-+ kcuu1=^Z, khome=^A, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=\E0@,
-+ rmul=\E0@,
-+ sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c,
-+ sgr0=\E0@, smso=\E0Q, smul=\E0`,
-+ncr7900iv|ncr 7900 model 4,
-+ am, bw, eslok, hs,
-+ cols#80, lines#24,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J,
-+ cup=\013%p1%{64}%+%c\E\005%p2%02d, dl1=\E^O, dsl=\Ey1,
-+ fsl=\Ek\Ey5, home=\013@\E^E00, il1=\E^N, ind=^J, kbs=^H,
-+ kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA, kf1=\ES, kf2=\ET,
-+ kf3=\EU, kf4=\EV, kf5=\EW, kf6=\EP, kf7=\EQ, kf8=\ER,
-+ khome=\EH, lf6=blue, lf7=red, lf8=white, nel=^M^J,
-+ tsl=\Ej\Ex5\Ex1\EY8%p1%{32}%+%c\Eo,
-+# Warning: This terminal will lock out the keyboard when it receives a CTRL-D.
-+# 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,
-+ am, bw, ul,
-+ cols#80, lines#24,
-+ bel=^G, blink=\E0B, civis=^W, clear=^L, cnorm=^X, cr=^M,
-+ cub1=^H, cud1=^J, cuf1=^F,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z, dim=\E0A,
-+ ed=\Ek, el=\EK,
-+ hpa=\020%p1%{10}%/%{16}%*%p1%{10}%m%+%c, ind=^J,
-+ is2=\E4^O, kclr=^L, kcub1=^U, kcud1=^J, kcuf1=^F, kcuu1=^Z,
-+ khome=^H, ll=^A, mc4=^T, mc5=^R, rev=\E0P, rmso=^O, rmul=^O,
-+ sgr=\E0%p5%{64}%+%p4%{2}%*%+%p3%{16}%*%+%p2%{32}%*%+%p1%{17}%*%+%c\016,
-+ sgr0=^O, smso=\E0Q\016, smul=\E0`\016,
-+ vpa=\013%p1%{64}%+%c,
-+
-+# Newbury Data Recording Limited (Newbury Data)
- #
--# if [ :"$TERM" = :"vt100" -a :"$TERM_PROGRAM" = :"Apple_Terminal" ]
--# then
--# export TERM
--# if [ :"$TERM_PROGRAM_VERSION" = :41 ]
--# then
--# TERM="nsterm-old"
--# else
--# TERM="nsterm-c-7"
--# fi
--# fi
-+# Have been manufacturing and reselling various peripherals for a long time
-+# They don't make terminals anymore, but are still in business (in 2007).
-+# Their e-mail address is at ndsales@newburydata.co.uk
-+# and their post address is:
- #
--# In a C shell derivative, this would be accomplished by:
-+# Newbury Data Recording Ltd,
-+# Premier Park, Road One,
-+# Winsford, Cheshire, CW7 3PT
- #
--# if ( $?TERM && $?TERM_PROGRAM && $?TERM_PROGRAM_VERSION) then
--# if ( :"$TERM" == :"vt100" && :"$TERM_PROGRAM" == :"Apple_Terminal" ) then
--# if ( :"$TERM_PROGRAM_VERSION" == :41 ) then
--# setenv TERM "nsterm-old"
--# else
--# setenv TERM "nsterm-c-7"
--# endif
--# endif
--# endif
--
--# The '+' entries are building blocks
--nsterm+7|AppKit Terminal.app v41+ basic capabilities w/ASCII charset,
-- am, bw, msgr, xenl, xon,
-- cols#80, it#8, lines#24,
-- bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[J, cr=^M,
-- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-- cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-- cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
-- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
-- home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J,
-- invis=\E[8m, kbs=\177, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
-- kcuu1=\EOA, kent=\EOM, rc=\E8, rev=\E[7m, ri=\EM,
-- rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-- rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
-- sgr0=\E[m, smam=\E[?7h, smkx=\E[?1h\E=, smso=\E[7m,
-- smul=\E[4m, tbc=\E[3g, use=vt100+enq, use=vt100+pfkeys,
--
--nsterm+acs|AppKit Terminal.app v41+ basic capabilities w/VT100 alternate-charset,
-- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-- enacs=\E(B\E)0, rmacs=^O,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- 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\360jjkkllmmnno\370p\370q\321rrssttuuvvwwxxy\262z\263{\271|\255}\243~\245,
-- enacs=\E(B\E)0, rmacs=^O,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
-- sgr0=\E[m\017, smacs=^N, use=nsterm+7,
--
--nsterm+s|AppKit Terminal.app v41+ status-line (window titlebar) support,
-- hs,
-- wsl#50,
-- dsl=\E]2;\007, fsl=^G, tsl=\E]2;,
--
--nsterm+c|AppKit Terminal.app v51+ full color support (including 16 colors),
-- op=\E[0m, use=ibm+16color,
--
--nsterm+c41|AppKit Terminal.app v41 color support,
-- colors#8, ncv#37, pairs#64,
-- op=\E[0m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
--
--# These are different combinations of the building blocks
--
--# ASCII charset (-7)
--nsterm-m-7|nsterm-7-m|AppKit Terminal.app v41+ w/ASCII charset (monochrome),
-- use=nsterm+7,
--
--nsterm-m-s-7|nsterm-7-m-s|AppKit Terminal.app v41+ w/ASCII charset (monochrome w/statusline),
-- use=nsterm+s, use=nsterm+7,
--
--nsterm-7|AppKit Terminal.app v41+ w/ASCII charset (color),
-- use=nsterm+c41, use=nsterm+7,
--
--nsterm-7-c|nsterm-c-7|AppKit Terminal.app v51+ w/ASCII charset (full color),
-- use=nsterm+c, use=nsterm+7,
--
--nsterm-s-7|nsterm-7-s|AppKit Terminal.app v41+ w/ASCII charset (color w/statusline),
-- use=nsterm+s, use=nsterm+c41, use=nsterm+7,
--
--nsterm-c-s-7|nsterm-7-c-s|AppKit Terminal.app v51+ w/ASCII charset (full color w/statusline),
-- use=nsterm+s, use=nsterm+c, use=nsterm+7,
--
--# VT100 alternate-charset (-acs)
--nsterm-m-acs|nsterm-acs-m|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome),
-- use=nsterm+acs,
--
--nsterm-m-s-acs|nsterm-acs-m-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (monochrome w/statusline),
-- use=nsterm+s, use=nsterm+acs,
--
--nsterm-acs|AppKit Terminal.app v41+ w/VT100 alternate-charset (color),
-- use=nsterm+c41, use=nsterm+acs,
--
--nsterm-c-acs|nsterm-acs-c|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color),
-- use=nsterm+c, use=nsterm+acs,
-+# Their technical support is still good, they sent me for free a printed copy
-+# of the 9500 user manual and I got it just 1 week after I first contacted them
-+# (in 2005)!
-
--nsterm-s-acs|nsterm-acs-s|AppKit Terminal.app v41+ w/VT100 alternate-charset (color w/statusline),
-- use=nsterm+s, use=nsterm+c41, use=nsterm+acs,
-+# 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
-+# 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
-+# recognized: if you type in "ESC !", the next (third) character is not
-+# echoed, showing that the terminal was actually waiting for a parameter!
-+ndr9500|nd9500|Newbury Data 9500,
-+ am, bw, hs, mc5i, mir, msgr, ul, xon,
-+ cols#80, lines#24, wsl#79,
-+ acsc=jDkClBmAnIqKtMuLvOwNxJ, bel=^G, cbt=\EI, civis=\E.0,
-+ clear=\E;, cnorm=\E.1, cr=^M, cub1=^H, cud1=^V, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dch1=\EW,
-+ dim=\E), dl1=\ER, dsl=\Eh, ed=\EY, el=\ET,
-+ flash=\Eb$<50/>\Ed, fsl=^M, home=^^, ht=^I, hts=\E1,
-+ ich1=\EQ, il1=\EE, ind=^J, is2=\Ew\E'\EDF\El\Er\EO,
-+ kDC=\Er, kDL=\EO, kEOL=\Et, kIC=\Eq, kcbt=\EI, kclr=^Z,
-+ kcub1=^H, kcud1=^V, kcuf1=^L, kcuu1=^K, kdch1=\EW, kdl1=\ER,
-+ ked=\EY, kel=\ET, kent=^M, kf1=^A@\r, kf10=^AI\r, kf11=^AJ\r,
-+ kf12=^A`\r, kf13=^Aa\r, kf14=^Ab\r, kf15=^Ac\r, kf16=^Ad\r,
-+ kf17=^Ae\r, kf18=^Af\r, kf19=^Ag\r, kf2=^AA\r, kf20=^Ah\r,
-+ 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,
-+ 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,
-+ tbc=\E3, tsl=\Eg\Ef\011%p1%{32}%+%c, .kbs=^H,
-
--nsterm-c-s-acs|nsterm-acs-c-s|AppKit Terminal.app v51+ w/VT100 alternate-charset (full color w/statusline),
-- use=nsterm+s, use=nsterm+c, use=nsterm+acs,
-+ndr9500-nl|NDR 9500 with no status line,
-+ hs@,
-+ wsl@,
-+ dsl@, fsl@, tsl@, use=ndr9500,
-
--# MacRoman charset
--nsterm-m|AppKit Terminal.app v41+ w/MacRoman charset (monochrome),
-- use=nsterm+mac,
-+ndr9500-25|NDR 9500 with 25th line enabled,
-+ lines#25, use=ndr9500,
-
--nsterm-m-s|AppKit Terminal.app v41+ w/MacRoman charset (monochrome w/statusline),
-- use=nsterm+s, use=nsterm+mac,
-+ndr9500-25-nl|NDR 9500 with 25 lines and no status line,
-+ lines#25, use=ndr9500-nl,
-
--nsterm-old|AppKit Terminal.app v41+ w/MacRoman charset (color),
-- use=nsterm+c41, use=nsterm+mac,
-+ndr9500-mc|NDR 9500 with magic cookies (enables underline inverse video invisible and blink),
-+ msgr@,
-+ xmc#1,
-+ blink=\EG2, invis=\EG1, rev=\EG4, rmso=\EG0, rmul=\EG0,
-+ sgr=\E%%\E(%?%p5%p8%|%t\E)%;%?%p9%t\E$%;\EG%{48}%?%p7%t%{1}%+%;%?%p4%t%{2}%+%;%?%p3%p1%|%t%{4}%+%;%?%p2%t%{8}%+%;%c,
-+ sgr0=\EG0\E%%\E(, smso=\EG4, smul=\EG8, use=ndr9500,
-
--nsterm-c|AppKit Terminal.app v51+ w/MacRoman charset (full color),
-- use=nsterm+c, use=nsterm+mac,
-+ndr9500-25-mc|NDR 500 with 25 lines and magic cookies,
-+ lines#25, use=ndr9500-mc,
-
--nsterm-s|AppKit Terminal.app v41+ w/MacRoman charset (color w/statusline),
-- use=nsterm+s, use=nsterm+c41, use=nsterm+mac,
-+ndr9500-mc-nl|NDR 9500 with magic cookies and no status line,
-+ hs@,
-+ wsl@,
-+ dsl@, fsl@, tsl@, use=ndr9500-mc,
-
--nsterm-c-s|AppKit Terminal.app v51+ w/MacRoman charset (full color w/statusline),
-- use=nsterm+s, use=nsterm+c, use=nsterm+mac,
-+ndr9500-25-mc-nl|NDR 9500 with 25 lines and magic cookies and no status line,
-+ lines#25, use=ndr9500-mc-nl,
-
--# In Mac OS X version 10.5 the format of the preferences has changed
--# and a new, more complex technique is needed, e.g.,
-+#### Perkin-Elmer (Owl)
- #
--# python -c 'import sys,objc;NSUserDefaults=objc.lookUpClass(
--# "NSUserDefaults");ud=NSUserDefaults.alloc();
--# ud.init();prefs=ud.persistentDomainForName_(
--# "com.apple.Terminal");prefs["Window Settings"][
--# prefs["Default Window Settings"]]["TerminalType"
--# ]=sys.argv[1];ud.setPersistentDomain_forName_(prefs,
--# "com.apple.Terminal")' nsterm-16color
-+# These are official terminfo entries from within Perkin-Elmer.
- #
--# and it is still not settable from the preferences dialog. This is
--# tracked under rdar://problem/7365108 and rdar://problem/7365134
--# in Apple's bug reporter.
--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,
-- use=nsterm-c-s-acs,
-
--# The versions of Terminal.app in Mac OS X version 10.3.x seem to have
--# the background color erase bug. The newer version 240.2 in Mac OS X
--# version 10.5 does not.
-+bantam|pe550|pe6100|perkin elmer 550,
-+ OTbs,
-+ cols#80, lines#24,
-+ bel=^G, clear=\EK$<20>, cr=^M, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
-+ el=\EI$<20>, home=\EH, ind=^J, ll=\EH\EA,
-+fox|pe1100|perkin elmer 1100,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J,
-+ 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=^J, ll=\EH\EA, tbc=\E3,
-+owl|pe1200|perkin elmer 1200,
-+ OTbs, am, in,
-+ cols#80, lines#24,
-+ bel=^G, clear=\EH\EJ$<132>, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=\EC, cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
-+ dch1=\EO$<5.5*>, dl1=\EM$<5.5*>, ed=\EJ$<5.5*>,
-+ el=\EI$<5.5>, flash=\020\002$<200/>\020\003, home=\EH,
-+ hts=\E1, ich1=\EN, il1=\EL$<5.5*>, ind=^J, ip=$<5.5*>,
-+ 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,
-+ am,
-+ cols#80, it#8, lines#24, pb#300, vt#8, xmc#1,
-+ bel=^G, clear=\EK$<332>, cr=^M, cub1=\ED, cud1=\EB, cuf1=\EC,
-+ cup=\EX%p1%{32}%+%c\EY%p2%{32}%+%c, cuu1=\EA,
-+ ed=\EJ$<20*>, el=\EI$<10*>, home=\EH, hts=\E1, ind=^J,
-+ kf0=\ERA, kf1=\ERB, kf10=\ERK, kf2=\ERC, kf3=\ERD, kf4=\ERE,
-+ kf5=\ERF, kf6=\ERG, kf7=\ERH, kf8=\ERI, kf9=\ERJ, tbc=\E3,
-+# (pe7000m: this had
-+# rmul=\E!\0, smul=\E!\040,
-+# which is probably wrong, it collides with kf0
-+pe7000m|perkin elmer 7000 series monochrome monitor,
-+ am,
-+ cols#80, lines#24,
-+ bel=^G, cbt=\E!Y, clear=\EK, cr=^M, cub1=\ED, cud1=\EB,
-+ cuf1=\EC, cup=\ES%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA,
-+ ed=\EJ, el=\EI, home=\EH, ind=^J,
-+ is1=\E!\0\EW 7o\Egf\ES7\s, kbs=^H, kcub1=\E!V,
-+ kcud1=\E!U, kcuf1=\E!W, kcuu1=\E!T, kf0=\E!\0, kf1=\E!^A,
-+ kf10=\E!^J, 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,
-+ is1=\E!\0\EW 7o\Egf\Eb0\Ec7\ES7\s, rmso=\Eb0,
-+ rmul=\E!\0, smso=\Eb2, smul=\E!\s, use=pe7000m,
-+
-+#### Sperry Univac
- #
--# This entry is based on newsgroup comments by Alain Bench, Christian Ebert,
--# and D P Schreber comparing to nsterm-c-s-acs.
-+# Sperry Univac has merged with Burroughs to form Unisys.
- #
--# In Mac OS X version 10.4 and earlier, D P Schreber notes that $TERM
--# can be set in Terminal.app, e.g.,
-+
-+# This entry is for the Sperry UTS30 terminal running the TTY
-+# 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,
-+ am, bw, hs,
-+ cols#80, lines#24, wsl#40,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\ER, clear=^L,
-+ cnorm=\ES, cr=^M, csr=\EU%p1%{32}%+%c%p2%{32}%+%c,
-+ 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, dch=\E[%p1%dP, dch1=\EM,
-+ dl=\E[%p1%dM, dl1=\EL, ed=\E[J, el=\E[K, fsl=^M, home=\E[H,
-+ ht=^I, ich=\E[%p1%d@, ich1=\EO, il=\E[%p1%dL, il1=\EN,
-+ ind=^J, indn=\E[%p1%dB, is2=\E[U 7\E[24;1H, kbs=^H,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, khome=\E[H,
-+ rc=\EX, rev=\E[7m, rf=/usr/share/tabset/vt100, ri=\EI,
-+ rin=\E[%p1%dA, rmacs=\Ed, rmam=\E[?7l, rmso=\E[m,
-+ rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-+ sc=\EW, sgr0=\E[m, smacs=\EF, smam=\E[?7m, smso=\E[7m,
-+ smul=\E[4m, tsl=\E], uc=\EPB,
-+
-+#### Tandem
- #
--# defaults write com.apple.Terminal TermCapString nsterm-bce
-+# Tandem builds these things for use with its line of fault-tolerant
-+# transaction-processing computers. They aren't generally available
-+# on the merchant market, and so are fairly uncommon.
- #
--# and that it is not set in Terminal's preferences dialog.
--nsterm-bce|AppKit Terminal.app v71+/v100.1.8+ with Mac OS X version 10.3/10.4 (bce),
-- bce, bw, use=nsterm-16color,
-
--# This is an alias which should always point to the "current" version
--nsterm|Apple_Terminal|AppKit Terminal.app,
-- use=nsterm-16color,
-+tandem6510|adm3a repackaged by Tandem,
-+ use=adm3a,
-
--# iTerm.app from http://iterm.sourceforge.net/ is an alternative (and
--# more featureful) terminal emulator for Mac OS X. It is similar
--# enough in capabilities to nsterm-16color that I have derived this
--# description from that one, but as far as I know they share no code.
--# Many of the features are user-configurable, but I attempt only to
--# describe the default configuration.
--#
--# NOTE: When tack tests (csr) + (nel) iTerm.app crashes, so (csr) is
--# disabled.
--iTerm.app|iTerm.app terminal emulator for Mac OS X,
-- bce, bw@, ccc@,
-- csr@, initc@, kend=\EOF, khome=\EOH, use=xterm+256color,
-- use=nsterm-16color,
-+# A funny series of terminal that TANDEM uses. The actual model numbers
-+# have a fourth digit after 653 that designates minor variants. These are
-+# natively block-mode and rather ugly, but they have a character mode which
-+# this doubtless(?) exploits. There is a 6520 that is slightly dumber.
-+# (tandem653: had ":sb=\ES:", probably someone's mistake for sf; also,
-+# removed <if=/usr/share/tabset/tandem653>, no such file -- esr)
-+tandem653|t653x|Tandem 653x multipage terminal,
-+ OTbs, am, da, db, hs,
-+ cols#80, lines#24, wsl#64, xmc#1,
-+ clear=\EI, cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\023%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, dsl=\Eo\r,
-+ ed=\EJ, el=\EK, fsl=^M, home=\EH, ind=\ES, ri=\ET, rmso=\E6\s,
-+ rmul=\E6\s, sgr0=\E6\s, smso=\E6$, smul=\E60, tsl=\Eo,
-
--# xnuppc - Darwin PowerPC Console (a.k.a. "darwin")
-+#### Tandy/Radio Shack
- #
--# On PowerPC platforms, Apple's Darwin operating system uses a
--# full-screen system console derived from a NetBSD framebuffer
--# console. It is an ANSI-style terminal, and is not really VT-100
--# compatible.
-+# Tandy has a line of VDTs distinct from its microcomputers.
- #
--# Under Mac OS X, this is the system console driver used while in
--# single-user mode [reachable by holding down Command-S during the
--# boot process] and when logged in using console mode [reachable by
--# typing ">console" at the graphical login prompt.]
-+
-+dmterm|deskmate terminal,
-+ am, bw,
-+ cols#80, lines#24,
-+ bel=^G, civis=\EG5, clear=\Ej, cnorm=\EG6, cr=^M, cub1=^H,
-+ cud1=\EB, cuf1=\EC, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-+ cuu1=\EA, dch1=\ES, dl1=\ER, ed=\EJ, el=\EK, home=\EH, ht=^I,
-+ ich1=\EQ, il1=\EP, ind=\EX, invis@, kcub1=\ED, kcud1=\EB,
-+ kcuf1=\EC, kcuu1=\EA, kf0=\E1, kf1=\E2, kf2=\E3, kf3=\E4,
-+ kf4=\E5, kf5=\E6, kf6=\E7, kf7=\E8, kf8=\E9, kf9=\E0,
-+ khome=\EH, lf0=f1, lf1=f2, lf2=f3, lf3=f4, lf4=f5, lf5=f6,
-+ lf6=f7, lf7=f8, lf8=f9, lf9=f10, ll=\EE, rmul@, smul@,
-+ use=adm+sgr,
-+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=^M,
-+ 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=^J, 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,
-+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=^M,
-+ 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=^J, 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,
-+pt210|TRS-80 PT-210 printing terminal,
-+ hc, os,
-+ cols#80,
-+ bel=^G, cr=^M, cud1=^J, ind=^J,
-+
-+#### Tektronix (tek)
- #
--# If you're looking for a description of the Terminal.app terminal
--# emulator which runs under the Mac OS X Quartz windowing system (and
--# other AppKit-supported windowing systems,) see the "nsterm"
--# entry instead.
-+# Tektronix tubes are graphics terminals. Most of them use modified
-+# oscilloscope technology incorporating a long-persistence green phosphor,
-+# and support vector graphics on a main screen with an attached "dialogue
-+# area" for interactive text.
-+#
-+
-+tek|tek4012|tektronix 4012,
-+ OTbs, os,
-+ cols#75, lines#35,
-+ bel=^G, clear=\E\014$<1000>, cr=^M, cub1=^H, cud1=^J,
-+ ff=\014$<1000>, is2=\E^O,
-+# (tek4013: added <acsc> to suppress tic warnings re <smacs>/<rmacs> --esr)
-+tek4013|tektronix 4013,
-+ acsc=, rmacs=\E^O, smacs=\E^N, use=tek4012,
-+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,
-+ acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014,
-+tek4014-sm|tektronix 4014 in small font,
-+ cols#121, lines#58,
-+ 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,
-+ acsc=, rmacs=\E^O, smacs=\E^N, use=tek4014-sm,
-+# Tektronix 4023 from Andrew Klossner <orca!andrew.tektronix@csnet-relay>
- #
--# NOTE: Under Mac OS X version 10.1, the default login window does not
--# prompt for user name, instead requiring an icon to be selected from
--# a list of known users. Since the special ">console" login is not in
--# this list, you must make one of two changes in the Login Window
--# panel of the Login section of System Prefs to make the special
--# ">console" login accessible. The first option is to enable 'Show
--# "Other User" in list for network users', which will add a special
--# "Other..." icon to the graphical login panel. Selecting "Other..."
--# will present the regular graphical login prompt. The second option
--# is to change the 'Display Login Window as:' setting to 'Name and
--# password entry fields', which replaces the login panel with a
--# graphical login prompt.
-+# You need to have "stty nl2" in effect. Some versions of tset(1) know
-+# how to set it for you.
- #
--# There are no function keys, at least not in Darwin 1.3.
-+# It's got the Magic Cookie problem around stand-out mode. If you can't
-+# 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,
-+ OTbs, am,
-+ OTdN#4, cols#80, lines#24, vt#4, xmc#1,
-+ OTnl=^J, bel=^G, clear=\E\014$<4/>, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=^I, cup=\034%p2%{32}%+%c%p1%{32}%+%c, kbs=^H,
-+ rmso=^_@, smso=^_P,
-+# It is recommended that you run the 4025 at 4800 baud or less;
-+# various bugs in the terminal appear at 9600. It wedges at the
-+# bottom of memory (try "cat /usr/dict/words"); ^S and ^Q typed
-+# on keyboard don't work. You have to hit BREAK twice to get
-+# one break at any speed - this is a documented feature.
-+# Can't use cursor motion because it's memory relative, and
-+# because it only works in the workspace, not the monitor.
-+# Same for home. Likewise, standout only works in the workspace.
- #
--# It has no mouse support.
-+# <el> was commented out since vi and rogue seem to work better
-+# simulating it with lots of spaces!
- #
--# It has full ANSI color support, and color combines correctly with
--# all three supported attributes: bold, inverse-video and underline.
--# However, bold colored text is almost unreadable (bolding is
--# accomplished using shifting and or-ing, and looks smeared) so bold
--# has been excluded from the list of color-compatible attributes
--# [using (ncv)]. The monochrome entry (-m) is useful if you use a
--# monochrome monitor.
-+# <il1> and <il> had 145ms of padding, but that slowed down vi's ^U
-+# and didn't seem necessary.
- #
--# There is one serious bug with this terminal emulation's color
--# support: repositioning the cursor onto a cell with non-matching
--# colors obliterates that cell's contents, replacing it with a blank
--# and displaying a colored cursor in the "current" colors. There is
--# no complete workaround at present [other than using the monochrome
--# (-m) entries,] but removing the (msgr) capability seemed to help.
-+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=^M,
-+ cub=\037lef %p1%d\r, cub1=^H, cud=\037dow %p1%d\r,
-+ cud1=^F^J, cuf=\037rig %p1%d\r, cuf1=\037rig\r,
-+ cuu=\037up %p1%d\r, cuu1=^K, dch1=\037dch\r,
-+ dl=\037dli %p1%d\r\006, dl1=\037dli\r\006,
-+ ed=\037dli 50\r, ht=^I, ich1=\037ich\r \010,
-+ il=\037up\r\037ili %p1%d\r, il1=\037up\r\037ili\r,
-+ ind=^F^J,
-+ is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r,
-+ rmkx=\037lea p2\r\037lea p4\r\037lea p6\r\037lea p8\r\037lea f5\r,
-+ smkx=\037lea p4 /h/\r\037lea p8 /k/\r\037lea p6 / /\r\037lea p2 /j/\r\037lea f5 /H/\r,
-+tek4025-17|tek 4025 17 line window,
-+ lines#17, use=tek4025,
-+tek4025-17-ws|tek 4025 17 line window in workspace,
-+ is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r\037wor 17\r\037mon 17\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/!,
-+ 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
-+# From: Doug Gwyn <gwyn@brl-smoke.ARPA>
-+# The following status modes are assumed for normal operation (replace the
-+# initial "!" by whatever the current command character is):
-+# !COM 29 # NOTE: changes command character to GS (^])
-+# ^]DUP
-+# ^]ECH R
-+# ^]EOL
-+# ^]RSS T
-+# ^]SNO N
-+# ^]STO 9 17 25 33 41 49 57 65 73
-+# Other modes may be set according to communication requirements.
-+# If the command character is inadvertently changed, termcap can't restore it.
-+# Insert-character cannot be made to work on both top and bottom rows.
-+# Clear-to-end-of-display emulation via !DLI 988 is too grotty to use, alas.
-+# There also seems to be a problem with vertical motion, perhaps involving
-+# delete/insert-line, following a typed carriage return. This terminal sucks.
-+# Delays not specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
-+# (tek4025a: removed obsolete ":xx:". This may mean the tek4025a entry won't
-+# work any more. -- esr)
-+tek4025a|Tektronix 4025A,
-+ OTbs, OTpt, am, bw, da, db, xon,
-+ cols#80, it#8, lines#34,
-+ bel=^G, cbt=\035bac;, clear=\035era;\n\035rup;, cmdch=^],
-+ cr=^M, cub=\035lef %p1%d;, cub1=^H, cud=\035dow %p1%d;,
-+ cud1=^J, cuf=\035rig %p1%d;, cuf1=\035rig;,
-+ cuu=\035up %p1%d;, cuu1=^K, dch=\035dch %p1%d;,
-+ dch1=\035dch;, dl=\035dli %p1%d;, dl1=\035dli;,
-+ el=\035dch 80;, hpa=\r\035rig %p1%d;, ht=^I,
-+ il1=\013\035ili;, ind=^J, indn=\035dow %p1%d;,
-+ rs2=!com 29\035del 0\035rss t\035buf\035buf n\035cle\035dis\035dup\035ech r\035eol\035era g\035for n\035pad 203\035pad 209\035sno n\035sto 9 17 25 33 41 49 57 65 73\035wor 0;,
-+ tbc=\035sto;,
-+# From: cbosg!teklabs!davem Wed Sep 16 21:11:41 1981
-+# Here's the command file that I use to get rogue to work on the 4025.
-+# It should work with any program using the old curses (e.g. it better
-+# 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,
-+ OTbs, am,
-+ cols#80, it#8, lines#33,
-+ clear=\037era;, cub1=^H, cud1=^F^J, cuf1=\037rig;,
-+ cup=\037jum%i%p1%d\,%p2%d;, cuu1=^K, ht=^I, ind=^F^J,
-+ is2=!com 31\r\n\037sto 9 17 25 33 41 49 57 65 73\r,
-+ rmcup=\037wor 0, smcup=\037wor 33h,
-+# 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/!,
-+ 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,
-+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,
-+ clear=\E[2J\E[H, cr=^M, cub1=\E[1D, cud1=\E[1B, cuf1=\E[1C,
-+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[1A, dch1=\E[1P,
-+ dim=\E[=1;<6m, dl1=\E[1M, ed=\E[J, el=\E[K, home=\E[H, ht=^I,
-+ il1=\E[1L, ind=\E[S, invis=\E[=6;<5, is1=\E%!1\E[m,
-+ is2=\E%!1\E[?6141\E[m, kbs=^H, kcub1=\E[1D, kcud1=\E[1B,
-+ kcuf1=\E[1C, kcuu1=\E[1A, rev=\E[=1;<3m, ri=\E[T,
-+ rmacs=\E[m, rmcup=, rmir=\E[4l, rmso=\E[=0;<1m,
-+ rmul=\E[=0;<1m, sgr0=\E[=0;<1m, smacs=\E[1m,
-+ smcup=\E%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m,
-+ 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,
-+ am, mir, msgr, xenl, xon,
-+ cols#80, it#8, lines#30, vt#3,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m$<2>, bold=\E[1m$<2>,
-+ clear=\E[H\E[J$<50>, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ cuf=\E[%p1%dC, cuf1=\E[C$<2>,
-+ cup=\E[%i%p1%d;%p2%dH$<5>, cuu=\E[%p1%dA,
-+ cuu1=\E[A$<2>, ed=\E[J$<50>, el=\E[K$<3>, el1=\E[1K$<3>,
-+ enacs=\E(B\E)0, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8,
-+ rev=\E[7m$<2>, ri=\EM$<5>, rmacs=^O, rmam=\E[?7l,
-+ rmkx=\E[?1l\E>, rmso=\E[m$<2>, rmul=\E[m$<2>,
-+ rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h, sc=\E7,
-+ sgr=\E[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>,
-+ 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,
-+
-+# Tektronix 4105 from BRL
-+# The following setup modes are assumed for normal operation:
-+# CODE ansi CRLF no DABUFFER 141
-+# DAENABLE yes DALINES 30 DAMODE replace
-+# DAVISIBILITY yes ECHO no EDITMARGINS 1 30
-+# FLAGGING input INSERTREPLACE replace LFCR no
-+# ORIGINMODE relative PROMPTMODE no SELECTCHARSET G0 B
-+# SELECTCHARSET G1 0 TABS -2
-+# Other setup modes may be set for operator convenience or communication
-+# requirements; I recommend
-+# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes
-+# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0
-+# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU>
-+# GAMODE overstrike GCURSOR 0 100 0 GSPEED 10 1
-+# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>"
-+# PROMPTSTRING '' QUEUESIZE 2460 WINDOW 0 0 4095 3132
-+# XMTDELAY 0
-+# and factory color maps. After setting these modes, save them with NVSAVE. No
-+# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
-+# "IC" cannot be used in combination with "im" & "ei".
-+# "tek4105a" is just a guess:
-+tek4105a|Tektronix 4105,
-+ OTbs, OTpt, msgr, xon,
-+ OTkn#8, cols#80, it#8, lines#30, vt#3,
-+ acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
-+ civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J,
-+ cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-+ cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1,
-+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1,
-+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-+ kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ,
-+ kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5,
-+ lf5=F6, lf6=F8, ll=\E[30;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM,
-+ rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1,
-+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-+ rs2=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLA>\ELM0\EKE0\ENF1\EKS0\END0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>,
-+ sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h,
-+ smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-+
- #
--# The "standout" chosen was simple reverse-video, although a colorful
--# standout might be more aesthetically pleasing. Similarly, the bold
--# chosen is the terminal's own smeared bold, although a simple
--# color-change might be more readable. The color-bold (-b) entries
--# uses magenta colored text for bolding instead. The fancy color (-f
--# and -f2) entries use color for bold, standout and underlined text
--# (underlined text is still underlined, though.)
-+# Tektronix 4106/4107/4109 from BRL
-+# The following setup modes are assumed for normal operation:
-+# CODE ansi COLUMNMODE 80 CRLF no
-+# DABUFFER 141 DAENABLE yes DALINES 32
-+# DAMODE replace DAVISIBILITY yes ECHO no
-+# EDITMARGINS 1 32 FLAGGING input INSERTREPLACE replace
-+# LFCR no LOCKKEYBOARD no ORIGINMODE relative
-+# PROMPTMODE no SELECTCHARSET G0 B SELECTCHARSET G1 0
-+# TABS -2
-+# Other setup modes may be set for operator convenience or communication
-+# requirements; I recommend
-+# ACURSOR 1 0 AUTOREPEAT yes AUTOWRAP yes
-+# BYPASSCANCEL <LF> CURSORKEYMODE no DAINDEX 1 0 0
-+# EOFSTRING '' EOLSTRING <CR> EOMCHARS <CR> <NU>
-+# GAMODE overstrike GCURSOR 0 100 0 GSPEED 9 3
-+# IGNOREDEL no KEYEXCHAR <DL> NVDEFINE -53 "<NU>"
-+# PROMPTSTRING '' QUEUESIZE 2620 WINDOW 0 0 4095 3132
-+# XMTDELAY 0
-+# and factory color maps. After setting these modes, save them with NVSAVE. No
-+# delays are specified; use "stty ixon -ixany" to enable DC3/DC1 flow control!
-+# "IC" cannot be used in combination with "im" & "ei".
-+tek4106brl|tek4107brl|tek4109brl|Tektronix 4106 4107 or 4109,
-+ msgr, xon,
-+ cols#80, it#8, lines#32, vt#3,
-+ acsc=, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z,
-+ civis=\E%!0\ETD00\E%!1, clear=\E[H\E[J,
-+ cnorm=\E%!0\ETD10\E%!1, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-+ cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
-+ cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-+ cuu=\E[%p1%dA, cuu1=\EM, cvvis=\E%!0\ETD70\E%!1,
-+ dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
-+ ech=\E[%p1%dX, ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\EH,
-+ il=\E[%p1%dL, il1=\E[L, ind=^J, indn=\E[%p1%dS, is2=\E%!1,
-+ kbs=^H, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-+ kf0=\EOA, kf1=\EOB, kf2=\EOC, kf3=\EOD, kf4=\EOP, kf5=\EOQ,
-+ kf6=\EOR, kf7=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, lf4=F5,
-+ lf5=F6, lf6=F8, ll=\E[32;H, nel=\EE, rc=\E8, rev=\E[7m, ri=\EM,
-+ rin=\E[%p1%dT, rmacs=^O, rmcup=\E%!0\ELBH=\E%!1,
-+ rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-+ rs1=\030\E%!0\EKC\E\014\EKR0\EKF0\ENM0\ELBH=\ETF8000010F40\ELI100\ELLB0\ELM0\EKE0\ENF1\EKS0\END0\ERE0\E%!1\Ec\E[?3;5l\E[?7;8h\E[r\E[m\E>,
-+ sc=\E7, sgr0=\E[m, smacs=^N, smcup=\E[?6l, smir=\E[4h,
-+ smkx=\E[?1h\E=, smso=\E[7;42m, smul=\E[4m, tbc=\E[3g,
-+
-+# Tektronix 4107/4109 interpret 4 modes using "\E%!" followed by a code:
-+# 0 selects Tek mode, i.e., \E%!0
-+# 1 selects ANSI mode
-+# 2 selects ANSI edit-mode
-+# 3 selects VT52 mode
- #
--# Apparently the terminal emulator does support a VT-100-style
--# alternate character set, but all the alternate character set
--# positions have been left blank in the font. For this reason, no
--# alternate character set capabilities have been included in this
--# description. The console driver appears to be ASCII-only, so (enacs)
--# has been excluded [although the VT-100 sequence does work.]
-+# 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,
-+ OTbs, am, mir, msgr, ul, xenl, xt,
-+ cols#79, it#8, lines#29,
-+ bel=^G, blink=\E%!1\E[5m$<2>\E%!0,
-+ bold=\E%!1\E[1m$<2>\E%!0, clear=\ELZ, cnorm=\E%!0, cr=^M,
-+ cub1=^H, cud1=^J, cuf1=\EC,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\E%!3,
-+ dim=\E%!1\E[<0m$<2>\E%!0, ed=\EJ, el=\EK, ht=^I, ind=^J,
-+ kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-+ rev=\E%!1\E[7m$<2>\E%!0, ri=\EI,
-+ rmso=\E%!1\E[m$<2>\E%!0, rmul=\E%!1\E[m$<2>\E%!0,
-+ sgr=\E%%!1\E[%?%p1%t;7;5%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t<0%;%?%p6%t;1%;m$<2>\E%%!0,
-+ sgr0=\E%!1\E[m$<2>\E%!0, smso=\E%!1\E[7;5m$<2>\E%!0,
-+ smul=\E%!1\E[4m$<2>\E%!0,
-+# Tektronix 4207 with sysline. In the ancestral termcap file this was 4107-s;
-+# see the note attached to tek4207.
-+tek4207-s|Tektronix 4207 with sysline but no memory,
-+ eslok, hs,
-+ dsl=\E7\E[?6l\E[2K\E[?6h\E8, fsl=\E[?6h\E8,
-+ is1=\E%!1\E[2;32r\E[132D\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J,
-+ is2=\E7\E[?6l\E[2K\E[?6h\E8,
-+ tsl=\E7\E[?6l\E[2K\E[;%i%df, use=tek4107,
-+
-+# The 4110 series may be a wonderful graphics series, but they make the 4025
-+# look good for screen editing. In the dialog area, you can't move the cursor
-+# off the bottom line. Out of the dialog area, ^K moves it up, but there
-+# is no way to scroll.
- #
--# The default Mac OS X and Darwin installation reports "vt100" as the
--# terminal type, and exports no helpful environment variables. To fix
--# this, change the "console" entry in /etc/ttys from "vt100" to
--# "xnuppc-WxH", where W and H are the character dimensions of your
--# console (see below.)
-+# Note that there is a floppy for free from Tek that makes the
-+# 4112 emulate the vt52 (use the vt52 termcap). There is also
-+# an expected enhancement that will use ANSI standard sequences.
- #
--# The font used by the terminal emulator is apparently one originally
--# drawn by Ka-Ping Yee, and uses 8x16-pixel characters. This
--# file includes descriptions for the following geometries:
-+# 4112 in non-dialog area pretending to scroll. It really wraps
-+# but vi is said to work (more or less) in this mode.
- #
--# Pixels Characters Entry Name (append -m for monochrome)
--# -------------------------------------------------------------------
--# 640x400 80x25 xnuppc-80x25
--# 640x480 80x30 xnuppc-80x30
--# 720x480 90x30 xnuppc-90x30
--# 800x600 100x37 xnuppc-100x37
--# 896x600 112x37 xnuppc-112x37
--# 1024x640 128x40 xnuppc-128x40
--# 1024x768 128x48 xnuppc-128x48
--# 1152x768 144x48 xnuppc-144x48
--# 1280x1024 160x64 xnuppc-160x64
--# 1600x1024 200x64 xnuppc-200x64
--# 1600x1200 200x75 xnuppc-200x75
--# 2048x1536 256x96 xnuppc-256x96
-+# 'vi' works reasonably well with this entry.
- #
--# The basic "xnuppc" entry includes no size information, and the
--# emulator includes no reporting capability, so you'll be at the mercy
--# of the TTY device (which reports incorrectly on my hardware.) The
--# color-bold entries do not include size information.
--
--# The '+' entries are building blocks
--xnuppc+basic|Darwin PowerPC Console basic capabilities,
-- am, bce, mir, xenl,
-- it#8,
-- bold=\E[1m, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr,
-- cub=\E[%p1%dD, cub1=\E[D, cud=\E[%p1%dB, cud1=\E[B,
-+otek4112|o4112-nd|otek4113|otek4114|old tektronix 4110 series,
-+ am,
-+ cols#80, lines#34,
-+ bel=^G, clear=\E^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ind=^J,
-+ rmcup=\EKA1\ELV1, smcup=\EKA0\ELV0\EMG0,
-+# The 4112 with the ANSI compatibility enhancement
-+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,
-+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\EM, dch1=\E[P,
-+ 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,
-+ OTns,
-+ cuu1=^K, use=tek4112,
-+tek4112-5|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,
-+ OTbs, am, da, eo,
-+ cols#80, lines#5,
-+ clear=\ELZ, cub1=^H, cud1=^J, 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,
-+ 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,
-+ OTbs, am, eo,
-+ cols#80, it#8, lines#34,
-+ clear=\E^L, cub1=^H, cud1=^J, cuf1=^I, cuu1=^K,
-+ cvvis=\ELZ\EKA0,
-+ flash=\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERBA4\ERB0,
-+ home=\ELF7l\177 @, ht=^I, is2=\ELZ\EKA0\ELF7l\177 @,
-+ ll=\ELF hl @, rmso=\EMT1, smso=\EMT2, uc=\010\EMG1_\EMG0,
-+# This entry is from Tek. Inc. (Brian Biehl)
-+# (tek4115: :bc: renamed to :le:, <rmam>/<smam> added based on init string -- esr)
-+otek4115|Tektronix 4115,
-+ OTbs, am, da, db, eo,
-+ cols#80, it#8, lines#34,
-+ cbt=\E[Z, clear=\E[H\E[2J,
-+ cnorm=\E%!0\ELBG8\E%!1\E[34;1H, cub1=\E[D, cud1=\E[B,
-+ cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-+ cvvis=\E%!0\ELBB2\E%!1, dch1=\E[P, dl1=\E[M, ed=\E[J,
-+ el=\E[K, home=\E[H, ht=^I, if=/usr/share/tabset/vt100,
-+ il1=\E[L,
-+ is2=\E%!0\E%\014\ELV0\EKA1\ELBB2\ENU@=\ELLB2\ELM0\ELV1\EKYA?\E%!1\E[<1l\E[?7h\E[?8h\E[34;1H\E[34B\E[m,
-+ kbs=^H, ri=\EM, rmam=\E[?7l,
-+ rmcup=\E%!0\ELBG8\E%!1\E[34;1H\E[J, rmir=\E[4l,
-+ 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,
-+ am, xon,
-+ cols#80, lines#34,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J,
-+ cr=^M, cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
- cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-- cuu=\E[%p1%dA, cuu1=\E[A, dsl=\E]2;\007, ed=\E[J, el=\E[K,
-- el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=\177,
-- kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, rc=\E8,
-- rev=\E[7m, ri=\EM, rmam=\E[?7l, rmkx=\E[?1l\E>, rmso=\E[m,
-- rmul=\E[m, rs2=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-- sc=\E7,
-- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m,
-- 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,
-- 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,
-- 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,
-- 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,
-- 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),
-- cols#80, lines#25,
--
--xnuppc+80x30|Darwin PowerPC Console 80x30 support (640x480 pixels),
-- cols#80, lines#30,
--
--xnuppc+90x30|Darwin PowerPC Console 90x30 support (720x480 pixels),
-- cols#90, lines#30,
--
--xnuppc+100x37|Darwin PowerPC Console 100x37 support (800x600 pixels),
-- cols#100, lines#37,
--
--xnuppc+112x37|Darwin PowerPC Console 112x37 support (896x600 pixels),
-- cols#112, lines#37,
--
--xnuppc+128x40|Darwin PowerPC Console 128x40 support (1024x640 pixels),
-- cols#128, lines#40,
--
--xnuppc+128x48|Darwin PowerPC Console 128x48 support (1024x768 pixels),
-- cols#128, lines#48,
--
--xnuppc+144x48|Darwin PowerPC Console 144x48 support (1152x768 pixels),
-- cols#144, lines#48,
--
--xnuppc+160x64|Darwin PowerPC Console 160x64 support (1280x1024 pixels),
-- cols#160, lines#64,
--
--xnuppc+200x64|Darwin PowerPC Console 200x64 support (1600x1024 pixels),
-- cols#200, lines#64,
--
--xnuppc+200x75|Darwin PowerPC Console 200x75 support (1600x1200 pixels),
-- cols#200, lines#75,
--
--xnuppc+256x96|Darwin PowerPC Console 256x96 support (2048x1536 pixels),
-- cols#256, lines#96,
--
--# These are different combinations of the building blocks
--
--xnuppc-m|darwin-m|Darwin PowerPC Console (monochrome),
-- use=xnuppc+basic,
--
--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),
-- use=xnuppc+b,
--
--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),
-- use=xnuppc+f,
--
--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),
-- use=xnuppc+f2,
--
--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,
-- use=xnuppc+80x25, use=xnuppc+basic,
--
--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,
-- use=xnuppc+80x30, use=xnuppc+basic,
--
--xnuppc-80x30|darwin-80x30|Darwin PowerPC Console (color) 80x30,
-- use=xnuppc+c, use=xnuppc+80x30, use=xnuppc+basic,
-+ 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[%p1%{1}%+%dG,
-+ ht=^I, hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL,
-+ il1=\E[L, ind=^J, invis=\E[8m, kbs=^H, kcub1=\E[D,
-+ kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, khome=\E[H,
-+ rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, rmam=\E[?7l,
-+ rmso=\E[m, rmul=\E[m,
-+ sgr=\E[%?%p1%t7;%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p6%t1;%;%?%p7%t8;%;m,
-+ sgr0=\E[m, smam=\E[?7h, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-+ vpa=\E[%p1%{1}%+%dd,
-+# 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.
-+# 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,
-+ lines#34,
-+ csr@, dl1=\E[1M, il1=\E[1L,
-+ is2=\E%\E!0\EQD1\EUX03\EKA\ELBB2\ELCE0\ELI100\ELJ2\ELLB2\ELM0\ELS1\ELX00\ELV1\E%\E!1\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h,
-+ rc@, sc@, smkx=\E=, use=vt100,
-
--xnuppc-90x30-m|darwin-90x30-m|Darwin PowerPC Console (monochrome) 90x30,
-- use=xnuppc+90x30, use=xnuppc+basic,
-+# From: <jcoker@ucbic>
-+# (tek4207: This was the termcap file's entry for the 4107/4207, but SCO
-+# supplied another, less capable 4107 entry. So we'll use that for 4107 and
-+# note that if jcoker wasn't confused you may be able to use this one.
-+# I merged in <msgr>,<ind>,<ri>,<invis>,<tbc> from a BRL entry -- esr)
-+tek4207|Tektronix 4207 graphics terminal with memory,
-+ am, bw, mir, msgr, ul, xenl,
-+ cols#80, it#8, lines#32,
-+ blink=\E[5m, bold=\E[1m, cbt=\E[Z, clear=\E[H\E[J$<156/>,
-+ cub1=^H, cud1=^J, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
-+ cuu1=\EM, dch1=\E[P$<4/>, dl1=\E[M$<3/>, ed=\E[J,
-+ el=\E[K$<5/>, home=\E[H, ht=^I, ich1=\E[@$<4/>,
-+ il1=\E[L$<3/>, ind=\E[S, invis=\E[=6;<5,
-+ is2=\E%!0\ELBP0\E%!1\E[H\E[2g\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[8C\EH\E[J,
-+ kcub1=\E[D, kcud1=\ED, kcuf1=\E[C, kcuu1=\EM, khome=\E[H,
-+ rev=\E[7m, ri=\E[T,
-+ rmcup=\E[?6h\E%!0\ELBP0\E%!1\E[32;1f, rmso=\E[m,
-+ rmul=\E[m, sgr0=\E[m, smcup=\E[?6l\E[H\E[J, smso=\E[7m,
-+ smul=\E[4m, tbc=\E[1g,
-
--xnuppc-90x30|darwin-90x30|Darwin PowerPC Console (color) 90x30,
-- use=xnuppc+c, use=xnuppc+90x30, use=xnuppc+basic,
-+# 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,
-+ OTbs,
-+ cols#80, it#8, lines#32,
-+ blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J,
-+ csr=\E[%i%p1%d;%p2%dr, cub1=^H, cud1=^J, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[1M,
-+ ed=\E[J, el=\E[K, home=\E[H, ht=^I, hts=\E[2I, il1=\E[1L,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, rc=\E8,
-+ rmcup=\E[1;1H\E[0J\E[?6h\E[?1l, rmir=\E[4l,
-+ rmkx=\E[?1h, rmso=\E[27m, rmul=\E[m, sc=\E7, sgr0=\E[m,
-+ smcup=\E%\E!1\E[1;32r\E[?6l\E>, smir=\E[4h,
-+ smkx=\E[?1l, smso=\E[7m, smul=\E[4m,
-+# Some unknown person wrote:
-+# I added the is string - straight Unix has ESC ; in the login
-+# 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,
-+ am, bw, da, db,
-+ cols#80, lines#25,
-+ bel=^G, cbt=\E^I, clear=\E^E, cr=^M, cub1=^H, cud1=^J,
-+ cuf1=\ES, cup=\E|%p1%{32}%+%c%p2%{32}%+%c, cuu1=\ER,
-+ dch1=\E^], dl1=\E^M, ed=\E^U, el=\E^T, ht=^I, ich1=\E^\,
-+ il1=\E^L, ind=^J, is2=\037\EZ\Ek, ri=\E^A, rmso=\E\s,
-+ rmul=\E\s, sgr0=\E\s, smso=\E$, smul=\E!,
-
--xnuppc-100x37-m|darwin-100x37-m|Darwin PowerPC Console (monochrome) 100x37,
-- use=xnuppc+100x37, use=xnuppc+basic,
-+# Tektronix 4205 terminal.
-+#
-+# am is not defined because the wrap around occurs not when the char.
-+# is placed in the 80'th column, but when we are attempting to type
-+# the 81'st character on the line. (esr: hmm, this is like the vt100
-+# 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
-+# 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,
-+ ccc, mir, msgr,
-+ colors#8, cols#80, it#8, lines#30, ncv#49, pairs#63,
-+ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[=7;<4m, cbt=\E[Z,
-+ clear=\E[2J\E[H, cr=^M, 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,
-+ dch1=\E[1P, dim=\E[=1;<6m, dl=\E[%p1%dM, dl1=\E[1M,
-+ ech=\E%p1%dX, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E)0,
-+ home=\E[H, ht=^I, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[1L,
-+ ind=\ED,
-+ initc=\E%%!0\ETF4%?%p1%{0}%=%t0%e%p1%{1}%=%t4%e%p1%{2}%=%t3%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}%<%tE1%e%p2%{875}%<%tE\:%eF4%;%?%p3%{125}%<%t0%e%p3%{250}%<%tA2%e%p3%{375}%<%tA?%e%p3%{500}%<%tC8%e%p3%{625}%<%tD4%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\:%eF4%;\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,
-+ kf7=\ES,
-+ oc=\E%!0\ETFB000001F4F4F42F40030F404A4C<F450F4F46F40F47F4F40\E%!1,
-+ op=\E[39;40m, rev=\E[7m, ri=\EM, rmacs=^O, rmcup=,
-+ rmir=\E[4l, rmso=\E[=0;<1m, rmul=\E[24m,
-+ setb=\E[=%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;,
-+ setf=\E[<%?%p1%{0}%=%t0m%e%p1%{1}%=%t4m%e%p1%{2}%=%t3m%e%p1%{3}%=%t5m%e%p1%{4}%=%t2m%e%p1%{5}%=%t6m%e%p1%{6}%=%t7m%e1m%;,
-+ sgr0=\E[=0;<1m\E[24;25;27m\017, smacs=^N,
-+ smcup=\E%%!1\E[?6l\E[2J, smir=\E[4h, smso=\E[=2;<3m,
-+ smul=\E[4m, tbc=\E[1g,
-
--xnuppc-100x37|darwin-100x37|Darwin PowerPC Console (color) 100x37,
-- use=xnuppc+c, use=xnuppc+100x37, use=xnuppc+basic,
-+#### Teletype (tty)
-+#
-+# These are the hardcopy Teletypes from before AT&T bought the company,
-+# clattering electromechanical dinosaurs in Bakelite cases that printed on
-+# pulpy yellow roll paper. If you remember these you go back a ways.
-+# Teletype-branded VDTs are listed in the AT&T section.
-+#
-+# The earliest UNIXes were designed to use these clunkers; nroff and a few
-+# other programs still default to emitting codes for the Model 37.
-+#
-
--xnuppc-112x37-m|darwin-112x37-m|Darwin PowerPC Console (monochrome) 112x37,
-- use=xnuppc+112x37, use=xnuppc+basic,
-+tty33|tty35|model 33 or 35 teletype,
-+ hc, os, xon,
-+ cols#72,
-+ bel=^G, cr=^M, cud1=^J, ind=^J,
-+tty37|model 37 teletype,
-+ OTbs, hc, os, xon,
-+ bel=^G, cr=^M, cub1=^H, cud1=^J, cuu1=\E7, hd=\E9, hu=\E8,
-+ ind=^J,
-
--xnuppc-112x37|darwin-112x37|Darwin PowerPC Console (color) 112x37,
-- use=xnuppc+c, use=xnuppc+112x37, use=xnuppc+basic,
-+# There are known to be at least three flavors of the tty40, all seem more
-+# like IBM half duplex forms fillers than ASCII terminals. They have lots of
-+# awful braindamage, such as printing a visible newline indicator after each
-+# newline. The 40-1 is a half duplex terminal and is hopeless. The 40-2 is
-+# braindamaged but has hope and is described here. The 40-4 is a 3270
-+# lookalike and beyond hope. The terminal has visible bell but I don't know
-+# it - it's null here to prevent it from showing the BL character.
-+# There is an \EG in <nl> because of a bug in old vi (if stty says you have
-+# 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,
-+ OTbs, xon,
-+ cols#80, lines#24,
-+ clear=\EH$<20>\EJ$<80>, cr=\EG, cub1=^H, cud1=\EB,
-+ cuf1=\EC, cuu1=\E7, dch1=\EP$<50>, dl1=\EM$<50>,
-+ ed=\EJ$<75>, home=\EH$<10>, ht=\E@$<10>, hts=\E1,
-+ ich1=\E\^$<50>, il1=\EL$<50>, ind=\ES$<20>, kbs=^],
-+ kcub1=^H, mc4=^T, mc5=\022$<2000>, ri=\ET$<10>, rmso=\E4,
-+ rs2=\023\ER$<60>, smso=\E3, tbc=\EH\E2$<80>,
-+tty43|model 43 teletype,
-+ OTbs, am, hc, os, xon,
-+ cols#132,
-+ bel=^G, cr=^M, cub1=^H, cud1=^J, ind=^J, kbs=^H,
-
--xnuppc-128x40-m|darwin-128x40-m|Darwin PowerPC Console (monochrome) 128x40,
-- use=xnuppc+128x40, use=xnuppc+basic,
-+#### Tymshare
-+#
-
--xnuppc-128x40|darwin-128x40|Darwin PowerPC Console (color) 128x40,
-- use=xnuppc+c, use=xnuppc+128x40, use=xnuppc+basic,
-+# You can add <is2=\E<> to put this 40-column mode, though I can't
-+# for the life of me think why anyone would want to.
-+scanset|sc410|sc415|Tymshare Scan Set,
-+ am, bw, msgr,
-+ cols#80, lines#24,
-+ acsc=j%k4l<m-q\,x5, bel=^G, clear=\EH\EJ, cr=^M, cub1=^H,
-+ cud1=^J, cuf1=^I, cup=\EY%p1%{32}%+%c%p2%{32}%+%c,
-+ cuu1=^K, ed=\EJ, el=\EK, home=\EH, ind=^J, kcub1=\ED,
-+ kcud1=\EB, kcuf1=\EC, kcuu1=\EA, mc0=\E;3, mc4=\E;0,
-+ mc5=\E;0, rc=^C, rmacs=^O, rs1=\E>, sc=^B, smacs=^N,
-
--xnuppc-128x48-m|darwin-128x48-m|Darwin PowerPC Console (monochrome) 128x48,
-- use=xnuppc+128x48, use=xnuppc+basic,
-+#### Volker-Craig (vc)
-+#
-+# If you saw a Byte Magazine cover with a terminal on it during the early
-+# 1980s, it was probably one of these. Carl Helmers liked them because
-+# they could crank 19.2 and were cheap (that is, he liked them until he tried
-+# to program one...)
-+#
-
--xnuppc-128x48|darwin-128x48|Darwin PowerPC Console (color) 128x48,
-- use=xnuppc+c, use=xnuppc+128x48, use=xnuppc+basic,
-+# Missing in vc303a and vc303 descriptions: they scroll 2 lines at a time
-+# every other linefeed.
-+vc303|vc103|vc203|volker-craig 303,
-+ OTbs, OTns, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\014$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^I,
-+ cuu1=^N, home=\013$<40>, kcub1=^H, kcud1=^J, kcuf1=^I,
-+ kcuu1=^N, ll=\017$<1>W,
-+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,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\030$<40>, cr=^M, cub1=^H, cud1=^J, cuf1=^U,
-+ cup=\020%p1%{32}%+%c%p2%{32}%+%c, cuu1=^Z,
-+ ed=\027$<40>, el=\026$<20>, home=\031$<40>, ind=^J,
-+ kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^Z,
-+vc404-s|volker-craig 404 w/standout mode,
-+ cud1=^J, rmso=^O, smso=^N, use=vc404,
-+# From: <wolfgang@cs.sfu.ca>
-+# (vc414: merged in cup/dl1/home from an old vc414h-noxon)
-+vc414|vc414h|Volker-Craig 414H in sane escape mode.,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ 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,
-+ 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,
-+ clear=^L, use=vc404,
-
--xnuppc-144x48-m|darwin-144x48-m|Darwin PowerPC Console (monochrome) 144x48,
-- use=xnuppc+144x48, use=xnuppc+basic,
-+######## OBSOLETE PERSONAL-MICRO CONSOLES AND EMULATIONS
-+#
-
--xnuppc-144x48|darwin-144x48|Darwin PowerPC Console (color) 144x48,
-- use=xnuppc+c, use=xnuppc+144x48, use=xnuppc+basic,
-+#### IBM PC and clones
-+#
-
--xnuppc-160x64-m|darwin-160x64-m|Darwin PowerPC Console (monochrome) 160x64,
-- use=xnuppc+160x64, use=xnuppc+basic,
-+# The pcplot IBM-PC terminal emulation program is really messed up. It is
-+# supposed to emulate a vt-100, but emulates the wraparound bug incorrectly,
-+# doesn't support scrolling regions, ignores add line commands, and ignores
-+# delete line commands. Consequently, the resulting behavior looks like a
-+# crude adm3a-type terminal.
-+# Steve Jacobson 8/85
-+pcplot|pc-plot terminal emulation program,
-+ xenl@,
-+ csr@, dl@, dl1@, il@, il1@, rc@, sc@, use=vt100,
-+# KayPro II from Richard G Turner <rturner at Darcom-Hq.ARPA>
-+# I've found that my KayPro II, running MDM730, continues to emulate an
-+# ADM-3A terminal, just like I was running TERM.COM. On our 4.2 UNIX
-+# system the following termcap entry works well:
-+# I have noticed a couple of minor glitches, but nothing I can't work
-+# around. (I added two capabilities from the BRL entry -- esr)
-+kaypro|kaypro2|kaypro II,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\032$<1/>, cr=^M, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, dl1=\ER, ed=^W,
-+ el=^X, home=^^, il1=\EE, ind=^J, kcud1=^J, kcuf1=^L, kcuu1=^K,
-
--xnuppc-160x64|darwin-160x64|Darwin PowerPC Console (color) 160x64,
-- use=xnuppc+c, use=xnuppc+160x64, use=xnuppc+basic,
-+# From IBM, Thu May 5 19:35:27 1983
-+# (ibmpc: commented out <smir>=\200R because we don't know <rmir> -- esr)
-+ibm-pc|ibm5051|5051|IBM Personal Computer (no ANSI.SYS),
-+ OTbs, am,
-+ cols#80, lines#24,
-+ bel=^G, clear=^L^K, cr=^M^^, cub1=^], cud1=^J, cuf1=^\,
-+ cuu1=^^, home=^K, ind=\n$<10>, kcud1=^_,
-
--xnuppc-200x64-m|darwin-200x64-m|Darwin PowerPC Console (monochrome) 200x64,
-- use=xnuppc+200x64, use=xnuppc+basic,
-+ibmpc|wy60-PC|wyse60-PC|IBM PC/XT running PC/IX,
-+ OTbs, am, bw, eo, hs, km, msgr, ul,
-+ cols#80, it#8, lines#24,
-+ acsc=j\331k\277l\332m\300n\305q\304t\303u\264v\301w\302x\263,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\Ec, cr=^M,
-+ 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, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
-+ home=\E[H, hpa=\E[%i%p1%dG, ind=\E[S\E[B,
-+ indn=\E[%p1%dS\E[%p1%dB, invis=\E[30;40m, kbs=^H,
-+ kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\177, kend=\E[Y, kf1=\240, kf10=\251, kf2=\241,
-+ kf3=\242, kf4=\243, kf5=\244, kf6=\245, kf7=\246, kf8=\247,
-+ kf9=\250, khome=\E[H, kich1=\E[^H, knp=\E[U, kpp=\E[V,
-+ ll=\E[24;1H, nel=^M, rev=\E[7m, ri=\E[T\E[A,
-+ rin=\E[%p1%dT\E[%p1%dA, rmso=\E[m, rmul=\E[m,
-+ sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;%?%p7%t30;40%;m,
-+ sgr0=\E[m, smso=\E[7m, smul=\E[4m,
-
--xnuppc-200x64|darwin-200x64|Darwin PowerPC Console (color) 200x64,
-- use=xnuppc+c, use=xnuppc+200x64, use=xnuppc+basic,
-+#### Apple II
-+#
-+# Apple II firmware console first, then various 80-column cards and
-+# terminal emulators. For two cents I'd toss all these in the UFO file
-+# along with the 40-column apple entries.
-+#
-
--xnuppc-200x75-m|darwin-200x75-m|Darwin PowerPC Console (monochrome) 200x75,
-- use=xnuppc+200x75, use=xnuppc+basic,
-+# From: brsmith@umn-cs.cs.umn.edu (Brian R. Smith) via BRL
-+# 'it#8' tells UNIX that you have tabs every 8 columns. This is a
-+# function of TIC, not the firmware.
-+# The clear key on a IIgs will do something like clear-screen,
-+# depending on what you're in.
-+appleIIgs|appleIIe|appleIIc|Apple 80 column firmware interface,
-+ OTbs, am, bw, eo, msgr,
-+ cols#80, it#8, lines#24,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^\,
-+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-+ home=^Y, ht=^I, ind=^W, kbs=^H, kclr=^X, kcub1=^H, kcud1=^J,
-+ kcuf1=^U, kcuu1=^K, kdch1=\177, nel=^M^W, ri=^V, rmso=^N,
-+ smso=^O,
-+# Apple //e with 80-column card, entry from BRL
-+# The modem interface is permitted to discard LF (maybe DC1), otherwise
-+# passing characters to the 80-column firmware via COUT (PR#3 assumed).
-+# Auto-wrap does not work right due to newline scrolling delay, which also
-+# requires that you set "stty cr2".
-+# Note: Cursor addressing is only available via the Pascal V1.1 entry,
-+# not via the BASIC PR#3 hook. All this nonsense can be avoided only by
-+# using a terminal emulation program instead of the built-in firmware.
-+apple2e|Apple //e,
-+ bw, msgr,
-+ cols#80, lines#24,
-+ bel=^G, clear=\014$<100/>, cub1=^H, cud1=^J, cuu1=^_,
-+ ed=\013$<4*/>, el=\035$<4/>, home=^Y, ht=^I, ind=^W,
-+ is2=^R^N, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^U, kcuu1=^K,
-+ nel=\r$<100/>, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N,
-+ smso=^O,
-+# mcvax!vu44!vu45!wilcke uses the "ap" entry together with Ascii Express Pro
-+# 4.20, with incoming and outgoing terminals both on 0, emulation On.
-+apple2e-p|Apple //e via Pascal,
-+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, kbs=^H, kcub1=^H,
-+ kcud1=^J, use=apple2e,
-+# (ASCII Express) MouseTalk "Standard Apple //" emulation from BRL
-+# Enable DC3/DC1 flow control with "stty ixon -ixany".
-+apple-ae|ASCII Express,
-+ OTbs, am, bw, msgr, nxon, xon,
-+ cols#80, it#8, lines#24,
-+ bel=\007$<500/>, clear=^L, cr=^M, cub1=^H, cud1=^J, cuf1=^U,
-+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-+ home=^Y, ind=^W, is2=^R^N, kclr=^X, kcub1=^H, kcud1=^J,
-+ kcuf1=^U, kcuu1=^K, rev=^O, ri=^V, rmso=^N, rs1=^R^N, sgr0=^N,
-+ smso=^O,
-+appleII|apple ii plus,
-+ OTbs, am,
-+ cols#80, it#8, lines#24,
-+ clear=^L, cnorm=^TC2, cub1=^H, cud1=^J, cuf1=^\,
-+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, cvvis=^TC6,
-+ ed=^K, el=^], flash=\024G1$<200/>\024T1, home=\E^Y, ht=^I,
-+ is2=\024T1\016, kcud1=^J, 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,
-+ OTbs, am, bw,
-+ cols#80, lines#24,
-+ cbt=^R, clear=\014$<10*/>, cr=\r$<10*/>, cub1=^H, cud1=^J,
-+ cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_,
-+ ed=\013$<10*/>, el=\035$<10/>, home=^Y,
-+apple-soroc|apple emulating soroc 120,
-+ am,
-+ cols#80, lines#24,
-+ bel=^G, clear=\E*$<300>, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=\EY, el=\ET,
-+ home=^^, ind=^J, kcub1=^H, kcud1=^J, kcuf1=^L, kcuu1=^K,
-+# From Peter Harrison, Computer Graphics Lab, San Francisco
-+# ucbvax!ucsfmis!harrison .....uucp
-+# ucbvax!ucsfmis!harrison@BERKELEY .......ARPA
-+# "These two work. If you don't have the inverse video chip for the
-+# Apple with videx then remove the :so: and :se: fields."
-+# (apple-videx: this used to be called DaleApple -- esr)
-+apple-videx|Apple with videx videoterm 80 column board with inverse video,
-+ OTbs, am, xenl,
-+ cols#80, it#8, lines#24,
-+ clear=\014$<300/>, cub1=^H, cud1=^J, cuf1=^\,
-+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-+ home=^Y, ht=^I, kcub1=^H, kcud1=^J, kcuf1=^U, khome=^Y,
-+ rmso=^Z2, sgr0=^Z2, smso=^Z3,
-+# My system [for reference] : Apple ][+, 64K, Ultraterm display card,
-+# Apple Cat ][ 212 modem, + more all
-+# controlled by ASCII Express: Pro.
-+# From Dave Shaver <isucs1!shaver>
-+apple-uterm-vb|Videx Ultraterm for Apple micros with Visible Bell,
-+ OTbs, am, eo, xt,
-+ cols#80, lines#24,
-+ acsc=, clear=^L, cuf1=^\,
-+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-+ flash=^W35^W06, home=^Y,
-+ is2=^V4^W06\017\rVisible Bell Installed.\016\r\n,
-+ rmso=^N, smso=^O,
-+apple-uterm|Ultraterm for Apple micros,
-+ OTbs, am, eo, xt,
-+ cols#80, lines#24,
-+ acsc=, clear=^L, cuf1=^\,
-+ cup=\036%p2%{32}%+%c%p1%{32}%+%c, cuu1=^_, ed=^K, el=^],
-+ home=^Y, is2=^V4^W06\016, rmso=^N, smso=^O,
-+# from trwrba!bwong (Bradley W. Wong):
-+#
-+# This entry assumes that you are using an apple with the UCSD Pascal
-+# language card. SYSTEM.MISCINFO is assumed to be the same as that
-+# supplied with the standard apple except that screenwidth should be set
-+# using SETUP to 80 columns. Note that the right arrow is not mapped in
-+# this termcap entry. This is because that key, on the Apple, transmits
-+# a ^U and would thus preempt the more useful "up" function of vi.
-+#
-+# HMH 2/23/81
-+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,
-+#
-+# Apple II+ equipped with Videx 80 column card
-+#
-+# Terminfo from ihnp4!ihu1g!djc1 (Dave Christensen) via BRL;
-+# manually converted by D A Gwyn
-+#
-+# DO NOT use any terminal emulation with this data base, it works directly
-+# with the Videx card. This has been tested with vi 1200 baud and works fine.
-+#
-+# This works great for vi, except I've noticed in pre-R2, ^U will scroll back
-+# 1 screen, while in R2 ^U doesn't.
-+# For inverse alternate character set add:
-+# <smacs>=^O:<rmacs>=^N:
-+# (apple-v: added it#8 -- esr)
-+apple-videx2|Apple II+ w/ Videx card (similar to Datamedia h1520),
-+ am, xenl,
-+ cols#80, it#8, lines#24,
-+ bel=\007$<100/>, clear=\014$<16*/>, cr=^M, cub1=^H,
-+ cud1=^J, cuf1=^\, cup=\036%p2%{32}%+%c%p1%{32}%+%c,
-+ cuu1=^_, ed=\013$<16*/>, el=^], home=^Y, ht=\011$<8/>,
-+ ind=^J, kbs=^H, kcub1=^H, kcud1=^J, kcuf1=^\, kcuu1=^_,
-+ khome=^Y, rmso=^Z2, smso=^Z3,
-+apple-videx3|vapple|Apple II with 80 col card,
-+ OTbs, am,
-+ cols#80, lines#24,
-+ clear=\Ev, cub1=\ED, cud1=\EB, cuf1=\EC,
-+ cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, el=\Ex,
-+ home=\EH, kcub1=\ED, kcud1=\EB, kcuf1=\EC, kcuu1=\EA,
-+ kf0=\EP, kf1=\EQ, kf2=\ER, kf3=\E\s, kf4=\E!, kf5=\E", kf6=\E#,
-+ kf7=\E$, kf8=\E%%, kf9=\E&, khome=\EH,
-+#From: decvax!cbosgd!cbdkc1!mww Mike Warren via BRL
-+aepro|Apple II+ running ASCII Express Pro--vt52,
-+ OTbs,
-+ cols#80, lines#24,
-+ clear=\014$<300/>, cub1=\ED, cud1=\EB, cuf1=\EC,
-+ 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,
-+ OTbs,
-+ cols#80, lines#24,
-+ clear=\014$<300/>, cuf1=^\\:,
-+ cup=\036%p1%{32}%+%c%p2%{32}%+%c$<100/>, cuu1=^_,
-+ ed=\013$<300/>, el=^], home=\031$<200/>,
-
--xnuppc-200x75|darwin-200x75|Darwin PowerPC Console (color) 200x75,
-- use=xnuppc+c, use=xnuppc+200x75, use=xnuppc+basic,
-+#### Apple Lisa & Macintosh
-+#
-
--xnuppc-256x96-m|darwin-256x96-m|Darwin PowerPC Console (monochrome) 256x96,
-- use=xnuppc+256x96, use=xnuppc+basic,
-+# (lisa: changed <cvvis> to <cnorm> -- esr)
-+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,
-+ cnorm=\E[5l, cub1=^H, 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,
-+ 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),
-+ is2=\E>\E[0;7m\014, rmso=\E[0;7m, rmul=\E[0;7m,
-+ smso=\E[m, smul=\E[4m, use=lisa,
-
--xnuppc-256x96|darwin-256x96|Darwin PowerPC Console (color) 256x96,
-- use=xnuppc+c, use=xnuppc+256x96, use=xnuppc+basic,
-+# lisaterm from ulysses!gamma!epsilon!mb2c!jed (John E. Duncan III) via BRL;
-+# <is2> revised by Ferd Brundick <fsbrn@BRL.ARPA>
-+#
-+# These entries assume that the 'Auto Wraparound' is enabled.
-+# Xon-Xoff flow control should also be enabled.
-+#
-+# The vt100 uses :rs2: and :rf: rather than :is2:/:tbc:/:hts: because the tab
-+# settings are in non-volatile memory and don't need to be reset upon login.
-+# Also setting the number of columns glitches the screen annoyingly.
-+# You can type "reset" to get them set.
-+#
-+lisaterm|Apple Lisa or Lisa/2 running LisaTerm vt100 emulation,
-+ OTbs, OTpt, am, xenl, xon,
-+ OTkn#4, cols#80, it#8, lines#24, vt#3,
-+ bel=^G, blink=\E[5m, bold=\E[1m, clear=\E[H\E[2J, cr=^M,
-+ csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
-+ cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
-+ cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, ed=\E[J,
-+ el=\E[K, home=\E[H, ht=^I, hts=\EH, ind=^J, kbs=^H, kcub1=\EOD,
-+ kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf0=\EOP, kf1=\EOQ,
-+ kf2=\EOR, kf3=\EOS, lf0=F1, lf1=F2, lf2=F3, lf3=F4, rc=\E8,
-+ rev=\E[7m, ri=\EM, rmkx=\E[?1l\E>, rmso=\E[m, rmul=\E[m,
-+ rs1=\E>\E[?1l\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[1;24r,
-+ sc=\E7, sgr0=\E[m, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,
-+ tbc=\E[3g,
-+# Lisaterm in 132 column ("wide") mode.
-+lisaterm-w|Apple Lisa with Lisaterm in 132 column mode,
-+ cols#132,
-+ kbs=^H, kcub1=^H, kcud1=^J, use=lisaterm,
-+# Although MacTerminal has insert/delete line, it is commented out here
-+# since it is much faster and cleaner to use the "lock scrolling region"
-+# method of inserting and deleting lines due to the MacTerminal implementation.
-+# Also, the "Insert/delete ch" strings have an extra character appended to them
-+# due to a bug in MacTerminal V1.1. Blink is disabled since it is not
-+# supported by MacTerminal.
-+mac|macintosh|Macintosh with MacTerminal,
-+ xenl,
-+ OTdN#30,
-+ blink@, dch1=\E[P$<7/>, ich1=\E[@$<9/>, ip=$<7/>, use=lisa,
-+# Lisaterm in 132 column ("wide") mode.
-+mac-w|macterminal-w|Apple Macintosh with Macterminal in 132 column mode,
-+ cols#132, use=mac,
-
- #### Radio Shack/Tandy
- #
-@@ -17749,9 +18360,26 @@
- # even as single processes under SunOS and the Macintosh OS.
- #
-
--# See
--# http://www.minix3.org/manpages/man4/console.4.html
--minix|minix console (v3),
-+# See
-+# http://www.minix3.org/manpages/html4/console.html
-+minix|minix console (v3),
-+ acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
-+ kdch1=\177, kend=\E[Y, kf0=\E[21~, kf1=\E[11~, kf10=\E[21~,
-+ kf11=\E[11;2~, kf12=\E[12;2~, kf13=\E[13;2~,
-+ kf14=\E[14;2~, kf15=\E[15;2~, kf16=\E[17;2~,
-+ kf17=\E[18;2~, kf18=\E[19;2~, kf19=\E[20;2~, kf2=\E[12~,
-+ kf20=\E[21;2~, kf21=\E[11;5~, kf22=\E[12;5~,
-+ kf23=\E[13;5~, kf24=\E[14;5~, kf25=\E[15;5~,
-+ kf26=\E[17;5~, kf27=\E[18;5~, kf28=\E[19;5~,
-+ kf29=\E[20;5~, kf3=\E[13~, kf30=\E[21;5~, kf31=\E[11;6~,
-+ kf32=\E[12;6~, kf33=\E[13;6~, kf34=\E[14;6~,
-+ kf35=\E[15;6~, kf36=\E[17;6~, kf37=\E[18;6~,
-+ kf38=\E[19;6~, kf39=\E[20;6~, kf4=\E[14~, kf40=\E[21;6~,
-+ kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
-+ kich1=\E[@, knp=\E[U, kpp=\E[V, lf0@, lf1@, lf2@, lf3@, lf4@, lf5@,
-+ use=minix-3.0,
-+
-+minix-3.0|minix console (v3.0),
- use=ecma+color, use=minix-1.7,
-
- # See
-@@ -17792,7 +18420,7 @@
- am, use=minix-old,
-
- pc-minix|minix console on an Intel box,
-- use=klone+acs, use=minix,
-+ use=klone+acs, use=minix-3.0,
-
- # According to the Coherent 2.3 manual, the PC console is similar
- # to a z19. The differences seem to be (1) 25 lines, (2) no status
-@@ -17878,7 +18506,7 @@
- xerox820|x820|Xerox 820,
- am,
- cols#80, lines#24,
-- bel=^G, clear=1^Z, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
-+ bel=^G, clear=\032$<1>, cr=^M, cub1=^H, cud1=^J, cuf1=^L,
- cup=\E=%p1%{32}%+%c%p2%{32}%+%c, cuu1=^K, ed=^Q, el=^X,
- home=^^, ind=^J,
-
-@@ -18195,6 +18823,7 @@
- use=tws-generic,
- 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%;,
- smso=\E[0;4;5;7m, smul=\E[0;2m, use=tws-generic,
-
- #=========================================================#
-@@ -18274,7 +18903,7 @@
-
- # This entry covers BQ303, BQ306, BQ310, Q303, Q306, Q310
- bq300|Bull vt320 ISO Latin 1 80 columns terminal,
-- am, eo, eslok, hs, km, mc5i, mir, msgr, xenl, xon,
-+ 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,
-@@ -18298,14 +18927,14 @@
- 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,
-- mc0=\E[i, mc4=\E[4i, mc5=\E[5i, 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,
-+ 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,
- sgr=\E[%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;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$~,
-+ smul=\E[4m, tbc=\E[3g, tsl=\E[1$}\E[2$~, use=ansi+pp,
- 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 F\E[?42l\E[?4l,
-@@ -18383,12 +19012,12 @@
- 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,
-- dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM,
-+ dch=\233%p1%dP, dch1=\233P, dl=\233%p1%dM, dl1=\233M,
- dsl=\2331$}\2332$~\n\2330$}, ech=\233%p1%dX, ed=\233J,
- el=\233K, el1=\2331K, enacs=\E(B\E)0,
- flash=\233?5h$<50>\233?5l, fsl=\2330$}, home=\233H,
-- ht=^I, hts=\EH, ich=\233%p1%d@, il=\233%p1%dL, ind=\ED,
-- is1=\E[63;2"p\E[2h,
-+ ht=^I, hts=\EH, ich=\233%p1%d@, il=\233%p1%dL, il1=\233L,
-+ ind=\ED, is1=\E[63;2"p\E[2h,
- is2=\E[?2h\E[?3l\E[?5l\E[?7h\E[?8h\E>\E[?1l\E G\E[?42l\E[?4l,
- is3=\2330$}\233?25h\2332l\233H\233J, ka1=\217w,
- ka3=\217y, kb2=\217u, kbs=^H, kc1=\217q, kc3=\217s,
-@@ -18401,11 +19030,12 @@
- khlp=\23328~, kich1=\2332~, knp=\2336~, kpp=\2335~,
- krdo=\23329~, kslt=\2334~, lf1=pf1, lf2=pf2, lf3=pf3,
- lf4=pf4, mc0=\233i, mc4=\2334i, mc5=\2335i, nel=\EE, rc=\E8,
-- rev=\2337m, ri=\EM, rmacs=^O, rmam=\233?7l, rmcup=\233?7h,
-- rmir=\2334l, rmkx=\233?1l\E>, rmso=\23327m, rmul=\23324m,
-- rs1=\E[!p, rs2=\E[?3l, s0ds=\E(B, s1ds=\E(0, sc=\E7,
-+ rev=\2337m, ri=\EM, rmacs=\E(B, rmam=\233?7l,
-+ rmcup=\233?7h, rmir=\2334l, rmkx=\233?1l\E>,
-+ rmso=\23327m, rmul=\23324m, rs1=\E[!p, rs2=\E[?3l,
-+ s0ds=\E(B, s1ds=\E(0, sc=\E7,
- sgr=\233%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m%?%p9%t\E(0%e\E(B%;,
-- sgr0=\2330m\E(B, smacs=^N, smam=\233?7h,
-+ 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$~,
- bq300-8rv|Bull vt320 8-bit reverse mode 80 columns,
-@@ -18927,7 +19557,7 @@
- clear=\EE, cnorm=\Ey4, cr=^M, cub1=^H, cud1=\EB, cuf1=\EC,
- cup=\EY%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EA, cvvis=\Ex4,
- dch1=\EN, ed=\EJ, el=\EK, fsl=\Ek\Ey5, home=\EH, ht=^I, ind=^J,
-- ip=<1.5/>, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
-+ ip=$<1.5/>, kbs=^H, kcub1=\ED, kcud1=\EB, kcuf1=\EC,
- kcuu1=\EA, kf1=\ES, kf2=\ET, kf3=\EU, kf4=\EV, kf5=\EW,
- kf6=\EP, kf7=\EQ, kf8=\ER, khome=\EH, lf6=blue, lf7=red,
- lf8=white, ri=\EI, rmacs=\EG, rmir=\EO, rmso=\Eq, smacs=\EF,
-@@ -19010,14 +19640,14 @@
- cud=\E[%p1%dB, cud1=^J, 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[1P, dim=\E[2m, dl=\E[%p1%dM,
-- dsl=\E[>1l, ed=\E[J, el=\E[K, fsl=\E[u\E[>5l, home=\E[H,
-- ht=^I, hts=\EH, if=/usr/share/tabset/vt100, il=\E[%p1%dL,
-- ind=\ED, kbs=^H, kclr=\E[J, kcub1=\EOD, kcud1=\EOB,
-- kcuf1=\EOC, kcuu1=\EOA, ked=\E[J, kf0=\E[~, kf1=\EOS,
-- kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW, kf6=\EOP, kf7=\EOQ,
-- kf8=\EOR, kf9=\EOX, khome=\E[H, lf0=help, mc0=\E#7,
-- nel=^M\ED, rc=\E[r, rev=\E[7m, ri=\EM, rmcup=\E[?7h,
-- rmso=\E[m, rmul=\E[m,
-+ dl1=\E[M, dsl=\E[>1l, ed=\E[J, el=\E[K, fsl=\E[u\E[>5l,
-+ home=\E[H, ht=^I, hts=\EH, if=/usr/share/tabset/vt100,
-+ il=\E[%p1%dL, il1=\E[L, ind=\ED, kbs=^H, kclr=\E[J,
-+ kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, ked=\E[J,
-+ kf0=\E[~, kf1=\EOS, kf2=\EOT, kf3=\EOU, kf4=\EOV, kf5=\EOW,
-+ kf6=\EOP, kf7=\EOQ, kf8=\EOR, kf9=\EOX, khome=\E[H, lf0=help,
-+ mc0=\E#7, nel=^M\ED, rc=\E[r, rev=\E[7m, ri=\EM,
-+ rmcup=\E[?7h, rmso=\E[m, rmul=\E[m,
- rs1=\E<\E[1;24r\E[24;1H\E[?7h\E[>4h\E[>1;2;3;5;6;7;8;9l\E[m\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,
-@@ -19687,12 +20317,11 @@
- 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,
- il1=\E[L, ind=\ED, kbs=^H, kcub1=\E[D, kcud1=\E[B,
-- kcuf1=\E[C, kcuu1=\E[A, kdch1=P$<\233>, kf1=P$<\217>,
-- kf2=Q$<\217>, kf3=R$<\217>, kf4=S$<\217>, 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,
-+ kcuf1=\E[C, kcuu1=\E[A, kdch1=\233P, kf1=\217P, kf2=\217Q,
-+ 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,
- 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,
-@@ -19818,6 +20447,193 @@
- apollo_color|apollo color display,
- rmir@, smir@, use=vt132,
-
-+#### AT&T consoles
-+
-+# This actually describes the generic SVr4 display driver for Intel boxes.
-+# The <dim=\E[2m> isn't documented and therefore may not be reliable.
-+# From: Eric Raymond <esr@snark.thyrsus.com> Mon Nov 27 19:00:53 EST 1995
-+att6386|at386|386at|AT&T WGS 6386 console,
-+ am, bw, eo, xon,
-+ cols#80, it#8, lines#25,
-+ acsc=``a1fxgqh0jYk?lZm@nEooppqDrrsstCu4vAwBx3yyzz{{||}}~~,
-+ bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[=C,
-+ clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, 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[1M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
-+ home=\E[H, hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,
-+ ich1=\E[1@, il=\E[%p1%dL, il1=\E[1L, ind=\E[S,
-+ indn=\E[%p1%dS, invis=\E[9m, is2=\E[0;10;39m, kbs=^H,
-+ kcbt=^], kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kdch1=\E[P, 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[@,
-+ knp=\E[U, kpp=\E[V, krmir=\E0, nel=\r\E[S, rc=\E8, rev=\E[7m,
-+ ri=\E[T, rin=\E[%p1%dT, rmacs=\E[10m, rmso=\E[m, rmul=\E[m,
-+ sc=\E7,
-+ sgr=\E[10m\E[0%?%p1%p3%|%t;7%;%?%p2%t;4%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;%?%p9%t;12%e;10%;%?%p7%t;9%;m,
-+ sgr0=\E[0;10m, smacs=\E[12m, smso=\E[7m, smul=\E[4m,
-+ tbc=\E[3g, vpa=\E[%i%p1%dd, use=klone+color,
-+# (pc6300plus: removed ":KM=/usr/lib/ua/kmap.s5:"; renamed BO/EE/CI/CV -- esr)
-+pc6300plus|AT&T 6300 plus,
-+ OTbs, am, xon,
-+ cols#80, lines#24,
-+ bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[=C,
-+ clear=\E[2J\E[H, cnorm=\E[=1C, cr=^M, cub1=^H, cud1=\E[B,
-+ cuf1=\E[C, cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A,
-+ dch1=\E[1P, dim=\E[2m, dl1=\E[1M, ed=\E[0J, el=\E[0K,
-+ home=\E[H, hts=\EH, ich1=\E[1@, il1=\E[1L, ind=^J,
-+ invis=\E[9m, kbs=^H, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C,
-+ kcuu1=\E[A, kf1=\EOc, kf10=\EOu, kf2=\EOd, kf3=\EOe,
-+ kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj, kf9=\EOk,
-+ nel=^M^J, rev=\E[7m, rmso=\E[m, rmul=\E[m, sgr0=\E[m,
-+ smso=\E[7m, smul=\E[4m, tbc=\E[3g,
-+
-+# From: Benjamin C. W. Sittler <bsittler@nmt.edu>
-+#
-+# I have a UNIX PC which I use as a terminal attached to my Linux PC.
-+# Unfortunately, the UNIX PC terminfo entry that comes with ncurses
-+# is broken. All the special key sequences are broken, making it unusable
-+# with Emacs. The problem stems from the following:
-+#
-+# The UNIX PC has a plethora of keys (103 of them, and there's no numeric
-+# keypad!), loadable fonts, and strange highlighting modes ("dithered"
-+# half-intensity, "smeared" bold, and real strike-out, for example.) It also
-+# uses resizable terminal windows, but the bundled terminal program always
-+# uses an 80x24 window (and doesn't support seem to support a 132-column
-+# mode.)
-+#
-+# HISTORY: The UNIX PC was one of the first machines with a GUI, and used a
-+# library which was a superset of SVr3.5 curses (called tam, for "terminal
-+# access method".) tam includes support for real, overlapping windows,
-+# onscreen function key labels, and bitmap graphics. But since the primary
-+# user interface on the UNIX PC was a GUI program (ua, for "user
-+# assistant",) and remote administration was considered important for the
-+# machine, tam also supported VT100-compatible terminals attached to the
-+# serial port or used across the StarLan network. To simulate the extra keys
-+# not present on a VT100, users could press ESC and a two-letter sequence,
-+# such as u d (Undo) or U D (Shift-Undo.) These two-letter sequences,
-+# however, were not the same as those sent by the actual Undo key. The
-+# actual Undo key sends ESC 0 s unshifted, and ESC 0 S shifted, for example.
-+# (If you're interested in adding some of the tam calls to ncurses, btw, I
-+# have the full documentation and several programs which use tam. It also
-+# used an extended terminfo format to describe key sequences, special
-+# highlighting modes, etc.)
-+#
-+# KEYS: This means that ncurses would quite painful on the UNIX PC, since
-+# there are two sequences for every key-modifier combination (local keyboard
-+# sequence and remote "VT100" sequence.) But I doubt many people are trying
-+# to use ncurses on the UNIX PC, since ncurses doesn't properly handle the
-+# GUI. Unfortunately, the terminfo entry (and the termcap, too, I presume)
-+# seem to have been built from the manual describing the VT100 sequences.
-+# This means it doesn't work for a real live UNIX PC.
-+#
-+# FONTS: The UNIX PC also has a strange interpretation of "alternate
-+# character set". Rather than the VT100 graphics you might expect, it allows
-+# up to 8 custom fonts to be loaded at any given time. This means that
-+# programs expecting VT100 graphics will usually be disappointed. For this
-+# reason I have disabled the smacs/rmacs sequences, but they could easily be
-+# re-enabled. Here are the relevant control sequences (from the ESCAPE(7)
-+# manpage), should you wish to do so:
-+#
-+# SGR10 - Select font 0 - ESC [ 10 m or SO
-+# SGR11 - Select font 1 - ESC [ 11 m or SI
-+# SGR12 - Select font 2 - ESC [ 12 m
-+# ... (etc.)
-+# SGR17 - Select font 7 - ESC [ 17 m
-+#
-+# Graphics for line drawing are not reliably found at *any* character
-+# location because the UNIX PC has dynamically reloadable fonts. I use font
-+# 0 for regular text and font 1 for italics, but this is by no means
-+# universal. So ASCII line drawing is in order if smacs/rmacs are enabled.
-+#
-+# MISC: The cursor visible/cursor invisible sequences were swapped in the
-+# distributed terminfo.
-+#
-+# To ameliorate these problems (and fix a few highlighting bugs) I rewrote
-+# the UNIX PC terminfo entry. The modified version works great with Lynx,
-+# Emacs, and XEmacs running on my Linux PC and displaying on the UNIX PC
-+# attached by serial cable. In Emacs, even the Undo key works, and many
-+# applications can now use the F1-F8 keys.
-+#
-+# esr's notes:
-+# Terminfo entry for the AT&T Unix PC 7300
-+# from escape(7) in Unix PC 7300 Manual.
-+# Somewhat similar to a vt100-am (but different enough
-+# to redo this from scratch.)
-+#
-+# /***************************************************************
-+# *
-+# * FONT LOADING PROGRAM FOR THE UNIX PC
-+# *
-+# * This routine loads a font defined in the file ALTFONT
-+# * into font memory slot #1. Once the font has been loaded,
-+# * it can be used as an alternative character set.
-+# *
-+# * The call to ioctl with the argument WIOCLFONT is the key
-+# * to this routine. For more information, see window(7) in
-+# * the PC 7300 documentation.
-+# ***************************************************************/
-+# #include <string.h> /* needed for strcpy call */
-+# #include <sys/window.h> /* needed for ioctl call */
-+# #define FNSIZE 60 /* font name size */
-+# #define ALTFONT "/usr/lib/wfont/special.8.ft" /* font file */
-+# /*
-+# * The file /usr/lib/wfont/special.8.ft comes with the
-+# * standard PC software. It defines a graphics character set
-+# * similar to that of the Teletype 5425 terminal. To view
-+# * this or other fonts in /usr/lib/wfont, use the command
-+# * cfont <filename>. For further information on fonts see
-+# * cfont(1) in the PC 7300 documentation.
-+# */
-+#
-+# struct altfdata /* structure for alt font data */
-+# {
-+# short altf_slot; /* memory slot number */
-+# char altf_name[FNSIZE]; /* font name (file name) */
-+# };
-+# ldfont()
-+# {
-+# int wd; /* window in which altfont will be */
-+# struct altfdata altf;
-+# altf.altf_slot=1;
-+# strcpy(altf.altf_name,ALTFONT);
-+# for (wd =1; wd < 12; wd++) {
-+# ioctl(wd, WIOCLFONT,&altf);
-+# }
-+# }
-+#
-+# (att7300: added <civis>/<cnorm>/<ich1>/<invis> from the BSDI entry,
-+# they're confirmed by the man page for the System V display---esr)
-+#
-+att7300|unixpc|pc7300|3b1|s4|AT&T UNIX PC Model 7300,
-+ am, xon,
-+ cols#80, it#8, lines#24,
-+ bel=^G, blink=\E[9m, bold=\E[1m, cbt=\E^I, civis=\E[=1C,
-+ clear=\E[2J\E[H, cnorm=\E[=0C, cr=^M, 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, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M,
-+ ed=\E[0J, el=\E[0K, home=\E[H, ich1=\E[@, il=\E[%p1%dL,
-+ il1=\E[L, ind=^J, invis=\E[9m, is1=\017\E[=1w, kBEG=\ENB,
-+ kCAN=\EOW, kCPY=\END, kCRT=\EON, kDC=\ENF, kDL=\ENE,
-+ kEND=\ENN, kEOL=\EOA, kFND=\EOX, kHLP=\EOM, kHOM=\ENM,
-+ kIC=\ENJ, kLFT=\ENK, kMOV=\ENC, kNXT=\ENH, kOPT=\EOR,
-+ kPRV=\ENG, kRDO=\EOT, kRIT=\ENL, kRPL=\EOY, kSAV=\EOO,
-+ kUND=\EOS, kbeg=\ENb, kbs=^H, kcan=\EOw, kcbt=\E[Z,
-+ kclo=\EOV, kclr=\E[J, kcmd=\EOu, kcpy=\ENd, kcrt=\EOn,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kdch1=\ENf,
-+ ked=\E[J, kel=\EOa, kend=\E0, kext=\EOk, kf1=\EOc, kf2=\EOd,
-+ kf3=\EOe, kf4=\EOf, kf5=\EOg, kf6=\EOh, kf7=\EOi, kf8=\EOj,
-+ kfnd=\EOx, khlp=\EOm, khome=\E[H, kich1=\ENj, kind=\E[B,
-+ kmov=\ENc, kmrk=\ENi, knp=\E[U, knxt=\ENh, kopn=\EOv,
-+ kopt=\EOr, kpp=\E[V, kprt=\EOz, kprv=\ENg, krdo=\EOt,
-+ kref=\EOb, krfr=\ENa, kri=\E[A, krpl=\EOy, krst=\EOB,
-+ ksav=\EOo, kslt=\ENI, kund=\EOs, nel=\EE, rev=\E[7m, ri=\EM,
-+ rmso=\E[m, rmul=\E[m, sgr0=\E[0;10m, smso=\E[7m,
-+ smul=\E[4m,
-+
- #### Convergent Technology
- #
- # Burroughs bought Convergent shortly before it merged with Univac.
-@@ -19923,6 +20739,54 @@
- masscomp2|masscomp large screen version 2,
- cols#64, lines#21, use=masscomp,
-
-+#### OSF Unix
-+#
-+
-+# OSF/1 1.1 Snapshot 2
-+pmcons|pmconsole|PMAX console,
-+ am,
-+ cols#128, lines#57,
-+ bel=^G, clear=^L, cr=^M, cub1=^H, cud1=^J, cuu1=^K, ht=^I,
-+ ind=^J, kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A,
-+ kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-+
-+#### Other consoles
-+# The following is a version of the ibm-pc entry distributed with PC/IX,
-+# (Interactive Systems' System 3 for the Big Blue), modified by Richard
-+# McIntosh at UCB/CSM. The :pt: and :uc: have been removed from the original,
-+# (the former is untrue, and the latter failed under UCB/man); standout and
-+# underline modes have been added. Note: this entry describes the "native"
-+# capabilities of the PC monochrome display, without ANY emulation; most
-+# communications packages (but NOT PC/IX connect) do some kind of emulation.
-+pcix|PC/IX console,
-+ am, bw, eo,
-+ cols#80, lines#24,
-+ clear=\Ec, cub1=^H, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%i%p1%2d;%p2%2dH, cuu1=\E[A, ed=\E[J, el=\E[K,
-+ home=\E[H, rmso=\E[m, rmul=\E[m, sgr0=\E[m, smso=\E[7m,
-+ smul=\E[4m,
-+
-+# (ibmpcx: this entry used to be known as ibmx.
-+# It formerly included the following extension capabilities:
-+# :GC=b:GL=v:GR=t:RT=^J:\
-+# :GH=\E[196g:GV=\E[179g:\
-+# :GU=\E[193g:GD=\E[194g:\
-+# :G1=\E[191g:G2=\E[218g:G3=\E[192g:G4=\E[217g:\
-+# :CW=\E[E:NU=\E[F:RF=\E[G:RC=\E[H:\
-+# :WL=\E[K:WR=\E[L:CL=\E[M:CR=\E[N:\
-+# I renamed GS/GE/WL/WR/CL/CR/PU/PD/HM/EN; also, removed a duplicate
-+# ":kh=\E[Y:". Added IBM-PC forms characters and highlights, they match
-+# what was there before. -- esr)
-+ibmpcx|xenix|ibmx|IBM PC xenix console display,
-+ OTbs, am, msgr,
-+ cols#80, lines#25,
-+ clear=^L, cub1=^H, cud1=\E[B, cuf1=\E[C,
-+ cup=\E[%p1%d;%p2%dH, cuu1=\E[A, dch1=\E[P, dl1=\E[M,
-+ ed=\E[J, el=\E[K, home=\E[H, ich1=\E[@, il1=\E[L, kbs=^H,
-+ kcub1=\E[D, kcud1=\E[B, kcuf1=\E[C, kcuu1=\E[A, kend=\E[d,
-+ kf1=\E[K, kf2=\E[L, kf3=\E[M, kf4=\E[N, khome=\E[Y, knp=\E[e,
-+ kpp=\E[Z, use=klone+acs, use=klone+sgr8,
-+
- ######## OTHER OBSOLETE TYPES
- #
- # These terminals are *long* dead -- these entries are retained for
-@@ -20126,7 +20990,7 @@
- cols#80, lines#24,
- clear=^L, cub1=^H, cuf1=\EX,
- cup=\E#%p1%{32}%+%c%p2%{32}%+%c, cuu1=\EY,
-- dch1=.1*\E'D, dl1=\E&D$<2*/>, ed=\E'P, el=\E'L, ich1=,
-+ dch1=\E'D$<.1*>, dl1=\E&D$<2*/>, ed=\E'P, el=\E'L, ich1=,
- il1=\E&I$<2*/>, ip=$<.1*/>, kcub1=\EW, kcud1=\EZ,
- kcuf1=\EX, kcuu1=\EY, pad=\177, rmcup=\E"N, rmir=\E'J,
- rmso=\E"I, rmul=\E"U, smcup=\E"N, smir=\E'I, smso=\E"I,
-@@ -20217,9 +21081,9 @@
- sgr0=\EX, smacs=\EF, smso=\ET,
- env230|envision230|envision 230 graphics terminal,
- xenl@,
-- mc0=\E[0i, mc4=\E[4i, mc5=\E[5i,
-- sgr=\E[%?%p1%t;1%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>,
-- use=vt100,
-+ enacs@, mc0=\E[0i, mc4=\E[4i, mc5=\E[5i, rmacs@,
-+ sgr=\E[0%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p6%t;1%;m$<2>,
-+ sgr0=\E[0m$<2>, smacs@, use=vt100,
- # These execuports were impact-printer ttys with a 30- or maybe 15-cps acoustic
- # coupler attached, the whole rig fitting in a suitcase and more or less
- # portable. Hot stuff for c.1977 :-) -- esr
-@@ -20274,7 +21138,7 @@
- rmacs=\EH^C, rmam=\Ed., rmcup=, rmir=\Er, rmln=\EA11,
- rmxon=\Ec20, rs1=\E~!\E~4$<150>, rs2=\EeF$<150>,
- rs3=\EwG\Ee($<150>,
-- sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;\EG%{48}%?%p2%p6%|%t%{8}%|%;%?%p1%p3%|%p6%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c,
-+ sgr=%?%p8%t\E)%e\E(%;%?%p9%t\EH\002%e\EH\003%;\EG%{48}%?%p2%t%{8}%|%;%?%p1%p3%|%t%{4}%|%;%?%p4%t%{2}%|%;%?%p1%p5%|%t%{64}%|%;%?%p7%t%{1}%|%;%c,
- sgr0=\E(\EH\003\EG0\EcD, smacs=\EH^B, smam=\Ed/,
- smcup=\Ezz&\E[A\177\Ezz'\E[B\177\Ezz(\E[D\177\Ezz)\E[C\177\Ezz<\E[Q\177,
- smir=\Eq, smln=\EA10, smxon=\Ec21, tbc=\E0, tsl=\Ez(,
-@@ -20881,7 +21745,7 @@
- # assigned in System V terminfo. There are some variant extension sets out
- # there. We try to describe them here.
- #
--# XENIX extensions:
-+#### XENIX extensions:
- #
- # The XENIX extensions include a set of function-key capabilities as follows:
- #
-@@ -20946,7 +21810,7 @@
- # When translating a termcap file, ncurses tic will do this automatically.
- # The double forms characters don't fit the SVr4 terminfo model.
- #
--# AT&T Extensions:
-+#### AT&T Extensions:
- #
- # The old AT&T 5410, 5420, 5425, pc6300plus, 610, and s4 entries used a set of
- # nonstandard capabilities. Its signature is the KM capability, used to name
-@@ -20957,7 +21821,7 @@
- # FL=:LO: (enable soft labels), FE=:LF: (disable soft labels), CI=:vi: (make
- # cursor invisible), and CV=:ve: (make cursor normal).
- #
--# HP Extensions
-+#### HP Extensions
- #
- # The HP library (as of mid-1995, their term.h file version 70.1) appears to
- # have the System V capabilities up to SVr1 level. After that, it supports
-@@ -20966,7 +21830,7 @@
- # label_off, and key_f11..key_f63 capabilities like SVr4's. This makes the
- # HP binary format incompatible with SVr4's.
- #
--# IBM Extensions
-+#### IBM Extensions
- #
- # There is a set of nonstandard terminfos used by IBM's AIX operating system.
- # The AIX terminfo library diverged from SVr1 terminfo, and replaces all
-@@ -20994,7 +21858,7 @@
- # The box2 characters are the double-line versions of these forms graphics.
- # The AIX binary terminfo format is incompatible with SVr4's.
- #
--# Iris console extensions:
-+#### Iris console extensions:
- #
- # HS is half-intensity start; HE is half-intensity end
- # CT is color terminal type (for Curses & rogue)
-@@ -21003,7 +21867,7 @@
- #
- # The ncurses tic utility recognizes HS as an alias for mh <dim>.
- #
--# TC Extensions:
-+#### TC Extensions:
- #
- # There is a set of extended termcaps associated with something
- # called the "Terminal Control" or TC package created by MainStream Systems,
-@@ -21011,11 +21875,123 @@
- # CF for civis and CO for cvvis. Finally, they define a boolean :ct:
- # that flags color terminals.
- #
-+######## NCURSES USER-DEFINABLE CAPABILITIES
-+#
-+# Extensions added after ncurses 5.0 generally use the "-x" option of tic and
-+# infocmp to manipulate user-definable capabilities. Those that are intended
-+# for use in either terminfo or termcap use 2-character names. Extended
-+# function keys do not use 2-character names, and are available only with
-+# terminfo.
-+#
-+# As of mid-2012, no other terminfo/termcap implementation than ncurses
-+# supports this extension; termcap libraries can as noted above make limited
-+# use of the feature.
-+#
-+# ncurses makes explicit checks for a few user-definable capabilities: AX, U8,
-+# XM.
-+#
-+#### SCREEN Extensions:
-+#
-+# The screen program uses the termcap interface. It recognizes a few useful
-+# nonstandard capabilities. Those are used in this file.
-+#
-+# AX (bool) Does understand ANSI set default fg/bg color (\E[39m /
-+# \E[49m).
-+# G0 (bool) Terminal can deal with ISO 2022 font selection sequences.
-+# E0 (str) Switch charset 'G0' back to standard charset.
-+# S0 (str) Switch charset 'G0' to the specified charset.
-+# XT (bool) Terminal understands special xterm sequences (OSC, mouse
-+# tracking).
-+#
-+# AX is relatively straightforward; it is interpreted by ncurses to say that
-+# SGR 39/49 reset the terminal's foreground and background colors to their
-+# "default".
-+#
-+# XT is harder, since screen's manpage does not give more details. For that,
-+# we must read screen's source-code. When XT is set, screen assumes
-+#
-+# a) OSC 1 sets the title string, e.g., for the icon. Recent versions of
-+# screen may also set the terminal's name, which is (for xterm) distinct
-+# from the icon name.
-+# b) OSC 20 sets the background pixmap. This is an rxvt feature.
-+# c) OSC 39 and OSC 49 set the default foreground/background colors. Again
-+# this is an rxvt feature.
-+# d) certain mode settings enable the mouse: 9, 1000, 1001, 1002, 1003.
-+# These are from xterm, although xterm accepts mouse codes that may not be
-+# recognized by screen, e.g., 1005, 1006.
-+# e) colors beyond 0..7 are implemented by xterm's aixterm-like 16-color
-+# sequence. However, because screen uses only termcap, the values returned
-+# by Af/Ab are not usable because they rely on expressions that termcap
-+# does not support. Therefore, screen uses a hardcoded string to work
-+# around the limitation.
-+# f) all entries named "*xterm*" or "*rxvt*" have the bce flag set.
-+#
-+# The other ISO-2022 features are rarely used, but provided here to make
-+# screen's termcap features available.
-+#
-+#### XTERM Extensions:
-+#
-+# Most of the xterm extensions are for function-keys. Since patch #94 (in
-+# 1999), xterm has supported shift/control/alt/meta modifiers which produce
-+# additional function-key strings. Some other developers copied the feature,
-+# though they did not follow xterm's lead in patch #167 (in 2002), to make
-+# these key definitions less ambiguous.
-+#
-+# A few terminals provide similar functionality (sending distinct keys when
-+# a modifier is used), including rxvt.
-+#
-+# These are the extended keys defined in this file:
-+#
-+# kDC3 kDC4 kDC5 kDC6 kDC7 kDN kDN3 kDN4 kDN5 kDN6 kDN7 kEND3 kEND4 kEND5 kEND6
-+# kEND7 kHOM3 kHOM4 kHOM5 kHOM6 kHOM7 kIC3 kIC4 kIC5 kIC6 kIC7 kLFT3 kLFT4
-+# kLFT5 kLFT6 kLFT7 kNXT3 kNXT4 kNXT5 kNXT6 kNXT7 kPRV3 kPRV4 kPRV5 kPRV6 kPRV7
-+# kRIT3 kRIT4 kRIT5 kRIT6 kRIT7 kUP kUP3 kUP4 kUP5 kUP6 kUP7 ka2 kb1 kb3 kc2
-+#
-+# Here are the other xterm-related extensions which are used in this file:
-+#
-+# Cr is a string capability which resets the cursor color
-+# Cs is a string capability which sets the cursor color to a given value.
-+# The single string parameter is the color name/number, according to the
-+# implementation.
-+# Ms modifies the selection/clipboard. Its parameters are
-+# p1 = the storage unit (clipboard, selection or cut buffer)
-+# p2 = the base64-encoded clipboard content.
-+# Se resets the cursor style to the terminal power-on default.
-+# Ss is a string capability with one numeric parameter. It is used to set the
-+# cursor style as described by the DECSCUSR function to a block or
-+# underline.
-+# TS is a string capability which acts like "tsl", but uses no parameter and
-+# goes to the first column of the "status line".
-+# XM is a string capability which overrides ncurses's built-in string which
-+# enables/disables xterm mouse mode.
-+# xm shows the format of the mouse responses. Parameters are (from zero):
-+# p1 = y-ordinate
-+# p2 = x-ordinate
-+# p3 = button
-+# p4 = state, e.g., pressed or released
-+# p6 = y-ordinate starting region
-+# p7 = x-ordinate starting region
-+# p8 = y-ordinate ending region
-+# p9 = x-ordinate ending region
-+# Other extensions, used in xm:
-+# %u = UTF-8
-+#
-+#### Miscellaneous extensions:
-+#
-+# gsbom/grbom are used to enable/disable real bold (not intensity bright) mode.
-+# This was implemented for the Hurd.
-+# 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.
-+# U8 is a numeric capability which denotes a terminal emulator which does not
-+# support VT100 SI/SO when processing UTF-8 encoding. Set this to a nonzero
-+# value to enable it.
-+#
- ######## CHANGE HISTORY
- #
- # The last /etc/termcap version maintained by John Kunze was 8.3, dated 8/5/94.
--# Releases 9 and up are maintained by Eric S. Raymond as part of the ncurses
--# project.
-+# Releases 9 and 10 (up until the release of ncurses 4.2 in 1998) were
-+# maintained by Eric S. Raymond as part of the ncurses project.
- #
- # This file contains all the capability information present in John Kunze's
- # last version of the termcap master file, except as noted in the change
-@@ -21115,7 +22091,7 @@
- # * Replaced HP entries up to hpsub with purpose-built ones.
- # * Blank rmir/smir/rmdc/smdc capabilities removed.
- # * Small fixes merged in from SCO entries for lpr, fos, tvi910+, tvi924.
--# 9.4.8 (Fri Apr 7 09:36:34 EDT 199):
-+# 9.4.8 (Fri Apr 7 09:36:34 EDT 1995):
- # * Replaced the Ann Arbor entries with SCO's, the init strings are
- # more efficient (but the entries otherwise identical).
- # * Added dg211 from Shuford archive.
-@@ -22224,7 +23200,7 @@
- # * add screen.rxvt -TD
- #
- # 2008-04-28
--# * add screen+fkeys (prompted by Debian # 478094) -TD
-+# * add screen+fkeys (prompted by Debian #478094) -TD
- #
- # 2008-06-28
- # * add screen.mlterm -TD
-@@ -22280,7 +23256,7 @@
- # 2009-12-12
- # * updated nsterm* entries (Benjamin Sittler, Emanuele Giaquinta)
- #
--# 2009-12-12
-+# 2009-12-19
- # * add bw (auto-left-margin) to nsterm* entries (Benjamin Sittler)
- # * rename minix to minix-1.7, add minix entry for Minux3 -TD
- #
-@@ -22354,6 +23330,247 @@
- # * add xterm-utf8 as a demo of the U8 feature -TD
- #
- # 2011-02-20
--# * add cons25-debian entry (Brian M Carlson, Debina #607662).
-+# * add cons25-debian entry (Brian M Carlson, Debian #607662).
-+#
-+# 2011-06-11
-+# * update minix entry to minix 3.2 (Thomas Cort).
-+#
-+# 2011-07-09
-+# * fix inconsistent tabset path in pcmw (Todd C. Miller).
-+# * remove a backslash which continued comment, obscuring altos3
-+# definition with OpenBSD toolset (Nicholas Marriott).
-+#
-+# 2011-07-16
-+# * add/use xterm+tmux chunk from xterm #271 -TD
-+# * resync xterm-new entry from xterm #271 -TD
-+# * add E3 extended capability to linux-basic (Miroslav Lichvar)
-+# * add linux2.2, linux2.6, linux3.0 entries to give context for E3 -TD
-+# * add SI/SO change to linux2.6 entry (Debian #515609) -TD
-+#
-+# 2011-07-21
-+# * add kich1 to sun (Yuri Pankov)
-+# * use bold rather than reverse for smso in sun-color (Yuri Pankov).
-+#
-+# 2011-08-06
-+# * corrected k9 in dg460-ansi, add other features based on manuals -TD
-+#
-+# 2011-08-20
-+# * minor cleanup of X-terminal emulator section -TD
-+# * add terminator entry -TD
-+# * add simpleterm entry -TD
-+#
-+# 2011-09-10
-+# * add xterm+kbs fragment from xterm #272 -TD
-+#
-+# 2011-11-12
-+# * add pccon entries for OpenBSD console (Alexei Malinin)
-+#
-+# 2011-12-17
-+# * corrected old changelog comments -TD
-+#
-+# 2011-11-24
-+# * add putty-sco -TD
-+#
-+# 2012-01-28
-+# * add mach-gnu (Samuel Thibault)
-+# * add mach-gnu-color, tweaks to mach-gnu -TD
-+# * make sgr for sun-color agree with smso -TD
-+# * make sgr for prism9 agree with other caps -TD
-+# * make sgr for icl6404 agree with other caps -TD
-+# * make sgr for ofcons agree with other caps -TD
-+# * make sgr for att5410v1, att4415, att620 agree with other caps -TD
-+# * make sgr for aaa-unk, aaa-rv agree with other caps -TD
-+# * make sgr for avt-ns agree with other caps -TD
-+#
-+# 2012-02-11
-+# * make sgr for xterm-pcolor agree with other caps -TD
-+# * make sgr for att5425 agree with other caps -TD
-+# * make sgr for att630 agree with other caps -TD
-+# * make sgr for linux entries agree with other caps -TD
-+# * make sgr for tvi9065 agree with other caps -TD
-+# * make sgr for ncr260vt200an agree with other caps -TD
-+# * make sgr for ncr160vt100pp agree with other caps -TD
-+# * make sgr for ncr260vt300an agree with other caps -TD
-+# * make sgr for aaa-60-dec-rv, aaa+dec agree with other caps -TD
-+# * make sgr for cygwin, cygwinDBG agree with other caps -TD
-+#
-+# 2012-03-31
-+# * correct order of use-clauses in st-256color -TD
-+#
-+# 2012-04-01
-+# * revert 2011-07-16 change to "linux" alias, return to "linux2.2" -TD
-+#
-+# 2012-04-14
-+# * document all of the user-defined capabilities in one place -TD
-+# * add XT to some places to improve usefulness for other applications
-+# than screen, which would like to pretend that xterm's title is
-+# a status-line. -TD
-+# * change use-clauses in ansi-mtabs, hp2626, and hp2622 based on review
-+# of ordering and overrides -TD
-+#
-+# 2012-04-21
-+# * add msgr to vt420, similar DEC vtXXX entries -TD
-+# * add several missing vt420 capabilities from vt220 -TD
-+# * factor out ansi+pp from several entries -TD
-+# * change xterm+sl and xterm+sl-twm to include only the status-line
-+# capabilities and not "use=xterm", making them more generally useful
-+# as building-blocks -TD
-+# * add dec+sl building block, as example -TD
-+#
-+# 2012-04-28
-+# * fix some inconsistencies between vt320/vt420, e.g., cnorm/civis -TD
-+# * add eslok flag to dec+sl -TD
-+# * dec+sl applies to vt320 and up -TD
-+# * drop wsl width from xterm+sl -TD
-+# * reuse xterm+sl in putty and nsca-m -TD
-+# * add ansi+tabs to vt520 -TD
-+# * add ansi+enq to vt220-vt520 -TD
-+#
-+# 2012-05-05
-+# * remove p6 (bold) from opus3n1+ for consistency -TD
-+# * remove acs stuff from env230 per clues in Ingres termcap -TD
-+# * modify env230 sgr/sgr0 to match other capabilities -TD
-+# * modify smacs/rmacs in bq300-8 to match sgr/sgr0 -TD
-+# * make sgr for dku7202 agree with other caps -TD
-+# * make sgr for ibmpc agree with other caps -TD
-+# * make sgr for tek4107 agree with other caps -TD
-+# * make sgr for ndr9500 agree with other caps -TD
-+# * make sgr for sco-ansi agree with other caps -TD
-+# * make sgr for d410 agree with other caps -TD
-+# * make sgr for d210 agree with other caps -TD
-+# * make sgr for d470c, d470c-7b agree with other caps -TD
-+#
-+# 2012-05-12
-+# * rewrite vt520 entry based on vt420 -TD
-+# * corrected 'op' for bterm (report by Samuel Thibault) -TD
-+#
-+# 2012-06-02
-+# * add kdch1 to wsvt25 entry from NetBSD CVS (reported by David Lord,
-+# analysis by Martin Husemann).
-+# * add cnorm/civis to wsvt25 entry from NetBSD CVS (report/analysis by
-+# Onno van der Linden).
-+# * add kdch1 aka "Remove" to vt220 and vt220-8 entries -TD
-+# * add kdch1, etc., to qvt108 -TD
-+# * add dl1/il1 to some entries based on dl/il values -TD
-+# * add dl to simpleterm -TD
-+#
-+# 2012-06-10
-+# * modify some older xterm entries to align with xterm source -TD
-+# * separate "xterm-old" alias from "xterm-r6" -TD
-+#
-+# 2012-07-28
-+# * add E3 to xterm-basic and putty -TD
-+#
-+# 2012-08-11
-+# * add nsterm-256color, make this the default nsterm -TD
-+# * remove bw from nsterm-bce, per testing with tack -TD
-+#
-+# 2012-10-12
-+# * add vte-2012, gnome-2012, making these the defaults for vte/gnome
-+# (patch by Christian Persch).
-+#
-+# 2012-11-02
-+# * reviewed vte-2012, reverted most of the change since it was incorrect
-+# based on testing with tack -TD
-+# * un-cancel the initc in vte-256color, since this was implemented
-+# starting with version 0.20 in 2009 -TD
-+#
-+# 2013-03-16
-+# * correct typo in sgr string for sun-color,
-+# add bold for consistency with sgr,
-+# change smso for consistency with sgr -TD
-+# * correct typo in sgr string for terminator -TD
-+# * add blink to the attributes masked by ncv in linux-16color (report
-+# by Benjamin Sittler)
-+#
-+# 2013-03-23
-+# * change initialization for vt220, similar entries for consistency
-+# with cursor-key strings (NetBSD #47674) -TD
-+# * further improvements to linux-16color (Benjamin Sittler)
-+#
-+# 2013-05-11
-+# * move nsterm-related entries out of "obsolete" section to more
-+# plausible "ansi consoles" -TD
-+# * additional cleanup of table-of-contents by reordering -TD
-+#
-+# 2013-06-07
-+# * added note to clarify Terminal.app's non-emulation of the various
-+# terminal types listed in the preferences dialog -TD
-+#
-+# 2013-11-02
-+# * use TS extension to describe xterm's title-escapes -TD
-+# * modify terminator and nsterm-s to use xterm+sl-twm building block -TD
-+# * update hurd.ti, add xenl to reflect 2011-03-06 change in
-+# http://git.savannah.gnu.org/cgit/hurd/hurd.git/log/console/display.c
-+# (Debian #727119).
-+# * simplify pfkey expression in ansi.sys -TD
-+#
-+# 2013-11-10
-+# * split-out building blocks xterm+sm+1002 and xterm+sm+1003 -TD
-+#
-+# 2014-02-22
-+# * updated notes for wsvt25 based on tack and vttest -TD
-+# * add teken entry to show actual properties of FreeBSD's "xterm"
-+# console -TD
-+#
-+# 2014-03-22
-+# * add terminology entry -TD
-+# * add mlterm3 entry, use that as "mlterm" -TD
-+# * inherit mlterm-256color from mlterm -TD
-+#
-+# 2014-03-23
-+# * fix typo in "mlterm" entry (report by Gabriele Balducci) -TD
-+#
-+# 2014-03-30
-+# * cancel ccc in putty-256color and konsole-256color for consistency
-+# with the cancelled initc capability (patch by Sven Zuhlsdorf).
-+# * add xterm+256setaf building block for various terminals which only
-+# get the 256-color feature half-implemented -TD
-+# * updated "st" entry (leaving the 0.1.1 version as "simpleterm") to
-+# 0.4.1 -TD
-+#
-+# 2014-05-03
-+# * add vt520ansi (Mike Gran)
-+#
-+# 2014-05-24
-+# * correct several entries which had termcap-style padding used in
-+# terminfo: adm21, aj510, alto-h19, att605-pc, x820 -TD
-+# * correct syntax for padding in some entries: dg211, h19 -TD
-+# * correct ti924-8 which had confused padding versus octal escapes -TD
-+# * correct padding in sbi entry -TD
-+#
-+# 2014-06-07
-+# * update xterm-new to patch #305 -TD
-+# + change screen's smso to use SGR 7 (ECMA-80 reverse) rather than SGR 3
-+# (italic). This was a long-ago typo in screen 3.1.1 which was
-+# overlooked until a few terminal emulators implemented the feature -TD
-+#
-+# 2014-06-09
-+# > fix regression in screen terminfo entries (reports by Christian
-+# Ebert, Gabriele Balducci) -TD
-+# + revert the change to screen; see notes for why this did not work -TD
-+# + cancel sitm/ritm for entries which extend "screen", to work around
-+# screen's hardcoded behavior for SGR 3 -TD
-+#
-+# 2014-06-14
-+# + modify sgr for screen.xterm-new to support dim capability -TD
-+# + add dim capability to nsterm+7 -TD
-+# + cancel dim capability for iterm -TD
-+# + add dim, invis capabilities to vte-2012 -TD
-+# + add sitm/ritm to konsole-base and mlterm3 -TD
-+#
-+# 2014-10-06
-+# + add xterm-1005 and xterm-1006 entries, with suggested extension
-+# capability "xm" -TD
-+#
-+# 2014-10-07
-+# + update test-report for mrxvt -TD
-+#
-+# 2014-10-11
-+# + add xterm-x10mouse, xterm-x11mouse, etc. -TD
-+#
-+# 2014-10-18
-+# + reviewed terminology 0.6.1, add function key definitions. None of
-+# the vt100-compatibility issues were improved -TD
- #
- ######## SHANTIH! SHANTIH! SHANTIH!
-Index: mk-0th.awk
-Prereq: 1.18
---- ncurses-5.9/mk-0th.awk 2010-01-09 21:45:41.000000000 +0000
-+++ ncurses-5.9-20141206/mk-0th.awk 2012-06-30 20:56:11.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: mk-0th.awk,v 1.18 2010/01/09 21:45:41 tom Exp $
-+# $Id: mk-0th.awk,v 1.22 2012/06/30 20:56:11 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2010,2012 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"), #
-@@ -34,14 +34,62 @@
- # Variables:
- # libname (library name, e.g., "ncurses", "panel", "forms", "menus")
- # subsets (is used here to decide if wide-character code is used)
-+# ticlib (library name for libtic, e.g., "tic")
-+# termlib (library name for libtinfo, e.g., "tinfo")
- #
-+function make_lintlib(name,sources) {
-+ print ""
-+ print "clean ::"
-+ printf "\trm -f llib-l%s.*\n", name
-+ print ""
-+ print "realclean ::"
-+ printf "\trm -f llib-l%s\n", name
-+ print ""
-+ printf "llib-l%s : %s\n", name, sources
-+ printf "\tcproto -a -l -DNCURSES_ENABLE_STDBOOL_H=0 -DLINT $(CPPFLAGS) %s >$@\n", sources
-+ print ""
-+ print "lintlib ::"
-+ printf "\tsh $(srcdir)/../misc/makellib %s $(CPPFLAGS)\n", name
-+ print ""
-+ print "lint ::"
-+ printf "\t$(LINT) $(LINT_OPTS) $(CPPFLAGS) %s $(LINT_LIBS)\n", sources
-+}
-+
-+# A blank in "subsets" indicates a split-off of the library into a separate
-+# file, e.g., for libtic or libtinfo. They are all logical parts of the same
-+# library.
-+function which_library() {
-+ if ( ( which == "ticlib" ) && ( subsets ~ /ticlib / ) ) {
-+ return ticlib;
-+ } else if ( ( which == "termlib" || which == "ext_tinfo" ) && ( subsets ~ /[[:space:]]base/ ) ) {
-+ return termlib;
-+ } else {
-+ return libname;
-+ }
-+}
-+
-+function show_list(name, len, list) {
-+ if ( len > 0 ) {
-+ printf "\n%s_SRC =", toupper(name);
-+ for (n = 0; n < len; ++n)
-+ printf " \\\n\t%s", list[n];
-+ print "";
-+ make_lintlib(name, sprintf("$(%s_SRC)", toupper(name)));
-+ }
-+}
-+
- BEGIN {
- which = libname;
- using = 0;
- found = 0;
-+ count_ticlib = 0;
-+ count_termlib = 0;
-+ count_library = 0;
- }
- /^@/ {
- which = $0;
-+ sub(/^@[[:blank:]]+/, "", which);
-+ sub(/[[:blank:]]+$/, "", which);
- }
- !/^[@#]/ {
- if (using == 0)
-@@ -50,6 +98,10 @@
- print "# generated by mk-0th.awk"
- printf "# libname: %s\n", libname
- printf "# subsets: %s\n", subsets
-+ if ( libname ~ /ncurses/ ) {
-+ printf "# ticlib: %s\n", ticlib
-+ printf "# termlib: %s\n", termlib
-+ }
- print ""
- print ".SUFFIXES: .c .cc .h .i .ii"
- print ".c.i :"
-@@ -80,9 +132,18 @@
- found = 2
- }
- if ( libname == "c++" || libname == "c++w" ) {
-- printf " \\\n\t%s/%s.cc", $3, $1
-+ srcname = sprintf("%s/%s.cc", $3, $1);
-+ printf " \\\n\t%s", srcname;
- } else if ( widechar == 1 || $3 != "$(wide)" ) {
-- printf " \\\n\t%s/%s.c", $3, $1
-+ srcname = sprintf("%s/%s.c", $3, $1);
-+ printf " \\\n\t%s", srcname;
-+ if ( which_library() == libname ) {
-+ list_library[count_library++] = srcname;
-+ } else if ( which_library() == ticlib ) {
-+ list_ticlib[count_ticlib++] = srcname;
-+ } else {
-+ list_termlib[count_termlib++] = srcname;
-+ }
- }
- }
- }
-@@ -91,22 +152,11 @@
- if ( found == 1 )
- {
- print ""
-- printf "# Producing llib-l%s is time-consuming, so there's no direct-dependency for\n", libname
-- print "# it in the lintlib rule. We'll only remove in the cleanest setup."
-- print "clean ::"
-- printf "\trm -f llib-l%s.*\n", libname
-- print ""
-- print "realclean ::"
-- printf "\trm -f llib-l%s\n", libname
-- print ""
-- printf "llib-l%s : $(C_SRC)\n", libname
-- printf "\tcproto -a -l -DNCURSES_ENABLE_STDBOOL_H=0 -DLINT $(CPPFLAGS) $(C_SRC) >$@\n"
-- print ""
-- print "lintlib :"
-- printf "\tsh $(srcdir)/../misc/makellib %s $(CPPFLAGS)", libname
-- print ""
-- print "lint :"
-- print "\t$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(C_SRC) $(LINT_LIBS)"
-+ printf "# Producing llib-l%s is time-consuming, so there's no direct-dependency for\n", libname;
-+ print "# it in the lintlib rule. We'll only remove in the cleanest setup.";
-+ show_list(libname, count_library, list_library);
-+ show_list(ticlib, count_ticlib, list_ticlib);
-+ show_list(termlib, count_termlib, list_termlib);
- }
- else
- {
-@@ -115,3 +165,4 @@
- print "\t@echo no action needed"
- }
- }
-+# vile:ts=4 sw=4
-Index: mk-1st.awk
-Prereq: 1.85
---- ncurses-5.9/mk-1st.awk 2010-08-07 20:42:30.000000000 +0000
-+++ ncurses-5.9-20141206/mk-1st.awk 2013-09-07 17:54:05.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: mk-1st.awk,v 1.85 2010/08/07 20:42:30 Gabriele.Balducci Exp $
-+# $Id: mk-1st.awk,v 1.96 2013/09/07 17:54:05 Alexey.Pavlov Exp $
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2012,2013 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"), #
-@@ -34,10 +34,12 @@
- # name (library name, e.g., "ncurses", "panel", "forms", "menus")
- # 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)
- # 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)
- # subset ("none", "base", "base+ext_funcs" or "termlib", etc.)
-+# driver ("yes" or "no", depends on --enable-term-driver)
- # ShlibVer ("rel", "abi" or "auto", to augment DoLinks variable)
- # ShlibVerInfix ("yes" or "no", determines location of version #)
- # SymLink ("ln -s", etc)
-@@ -69,7 +71,7 @@
- }
- # see imp_name
- function imp_name_of(a_name) {
-- if (ShlibVerInfix == "cygdll") {
-+ if (ShlibVerInfix == "cygdll" || ShlibVerInfix == "msysdll" || ShlibVerInfix == "mingw") {
- result = sprintf("%s%s%s.a", prefix, a_name, suffix);
- } else {
- result = "";
-@@ -80,6 +82,10 @@
- function abi_name_of(a_name) {
- if (ShlibVerInfix == "cygdll") {
- 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") {
-+ 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);
- } else {
-@@ -91,6 +97,10 @@
- function rel_name_of(a_name) {
- if (ShlibVerInfix == "cygdll") {
- 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") {
-+ 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);
- } else {
-@@ -107,7 +117,7 @@
- } else {
- if ( ShlibVer == "rel" ) {
- result = rel_name_of(a_name);
-- } else if ( ShlibVer == "abi" || ShlibVer == "cygdll" ) {
-+ } else if ( ShlibVer == "abi" || ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw" ) {
- result = abi_name_of(a_name);
- } else {
- result = lib_name_of(a_name);
-@@ -124,23 +134,38 @@
- }
- }
- function rmlink(directory, dst) {
-- printf "\t-rm -f %s/%s\n", directory, dst
-+ if ( dst != "" ) {
-+ printf "\t-rm -f %s/%s\n", directory, dst
-+ }
- }
- function removelinks(directory) {
-- rmlink(directory, end_name);
-+ nlinks = 0;
-+ links[nlinks++] = end_name;
- if ( DoLinks == "reverse" ) {
- if ( ShlibVer == "rel" ) {
-- rmlink(directory, abi_name);
-- rmlink(directory, rel_name);
-+ links[nlinks++] = abi_name;
-+ links[nlinks++] = rel_name;
- } else if ( ShlibVer == "abi" ) {
-- rmlink(directory, abi_name);
-+ links[nlinks++] = abi_name;
- }
- } else {
- if ( ShlibVer == "rel" ) {
-- rmlink(directory, abi_name);
-- rmlink(directory, lib_name);
-+ links[nlinks++] = abi_name;
-+ links[nlinks++] = lib_name;
- } else if ( ShlibVer == "abi" ) {
-- rmlink(directory, lib_name);
-+ links[nlinks++] = lib_name;
-+ }
-+ }
-+ for (j = 0; j < nlinks; ++j) {
-+ found = 0;
-+ for (k = 0; k < j; ++k ) {
-+ if ( links[j] == links[k] ) {
-+ found = 1;
-+ break;
-+ }
-+ }
-+ if ( !found ) {
-+ rmlink(directory, links[j]);
- }
- }
- }
-@@ -148,7 +173,7 @@
- printf "\t$(MK_SHARED_LIB) $(%s_OBJS) $(%s) $(LDFLAGS)\n", objs, shlib_list
- }
- function sharedlinks(directory) {
-- if ( ShlibVer != "auto" && ShlibVer != "cygdll" ) {
-+ if ( ShlibVer != "auto" && ShlibVer != "cygdll" && ShlibVer != "msysdll" && ShlibVer != "mingw" ) {
- printf "\tcd %s && (", directory
- if ( DoLinks == "reverse" ) {
- if ( ShlibVer == "rel" ) {
-@@ -181,6 +206,11 @@
- dst_libs = sprintf("%s/%s", directory, end_name);
- printf "%s : \\\n", dst_libs
- printf "\t\t%s \\\n", directory
-+ if (subset == "ticlib" && driver == "yes" ) {
-+ base = name;
-+ sub(/^tic/, "ncurses", base); # workaround for "w"
-+ printf "\t\t%s/%s \\\n", directory, end_name_of(base);
-+ }
- if (subset ~ /^base/ || subset == "ticlib" ) {
- save_suffix = suffix
- sub(/^[^.]\./,".",suffix)
-@@ -223,8 +253,9 @@
- printf "\t%s %s %s\n", program, src_name, dst_name
- }
- BEGIN {
-- found = 0
-- using = 0
-+ TOOL_PREFIX = "";
-+ found = 0;
-+ using = 0;
- }
- /^@/ {
- using = 0
-@@ -233,15 +264,26 @@
- } else if (index(subset,$2) > 0) {
- if (using == 0) {
- if (found == 0) {
-+ if ( name ~ /^.*\+\+.*/ ) {
-+ if ( CXX_MODEL == "NORMAL" && MODEL == "SHARED" ) {
-+ print ""
-+ printf "# overriding model from %s to match CXX_MODEL\n", MODEL;
-+ MODEL = "NORMAL";
-+ suffix = ".a";
-+ DoLinks = "no";
-+ }
-+ }
- 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
-@@ -285,12 +327,23 @@
- if ( found == 0 )
- {
- printf "%s_OBJS =", OBJS
-- if ( $2 == "lib" )
-- found = 1
-- else
-- found = 2
-+ if ( $2 == "lib" ) {
-+ found = 1;
-+ } else if ( $2 == "c++" ) {
-+ TOOL_PREFIX = "CXX_";
-+ found = 1;
-+ } else {
-+ found = 2;
-+ }
-+ if ( $2 == "c++" ) {
-+ CC_NAME="CXX"
-+ CC_FLAG="CXXFLAGS"
-+ } else {
-+ CC_NAME="CC"
-+ CC_FLAG="CFLAGS"
-+ }
- }
-- printf " \\\n\t../%s/%s$o", model, $1
-+ printf " \\\n\t../%s/%s$o", model, $1;
- }
- }
- END {
-@@ -316,7 +369,7 @@
- print "install \\"
- print "install.libs \\"
-
-- if ( ShlibVer == "cygdll" ) {
-+ if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw") {
-
- dst_dirs = "$(DESTDIR)$(bindir) $(DESTDIR)$(libdir)";
- printf "install.%s :: %s $(LIBRARIES)\n", name, dst_dirs
-@@ -337,7 +390,7 @@
-
- if ( overwrite == "yes" && name == "ncurses" )
- {
-- if ( ShlibVer == "cygdll" ) {
-+ if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw") {
- ovr_name = sprintf("libcurses%s.a", suffix)
- printf "\t@echo linking %s to %s\n", imp_name, ovr_name
- printf "\tcd $(DESTDIR)$(libdir) && ("
-@@ -358,7 +411,7 @@
- print "uninstall \\"
- print "uninstall.libs \\"
- printf "uninstall.%s ::\n", name
-- if ( ShlibVer == "cygdll" ) {
-+ if ( ShlibVer == "cygdll" || ShlibVer == "msysdll" || ShlibVer == "mingw") {
-
- printf "\t@echo uninstalling $(DESTDIR)$(bindir)/%s\n", end_name
- printf "\t-@rm -f $(DESTDIR)$(bindir)/%s\n", end_name
-@@ -371,11 +424,7 @@
- removelinks("$(DESTDIR)$(libdir)")
- if ( overwrite == "yes" && name == "ncurses" )
- {
-- if ( ShlibVer == "cygdll" ) {
-- ovr_name = sprintf("libcurses%s.a", suffix)
-- } else {
-- ovr_name = sprintf("libcurses%s", suffix)
-- }
-+ ovr_name = sprintf("libcurses%s", suffix)
- printf "\t-@rm -f $(DESTDIR)$(libdir)/%s\n", ovr_name
- }
- }
-@@ -388,20 +437,19 @@
- }
- else if ( MODEL == "LIBTOOL" )
- {
-- if ( $2 == "c++" ) {
-- compile="CXX"
-- } else {
-- compile="CC"
-- }
- end_name = lib_name;
- printf "../lib/%s : $(%s_OBJS)\n", lib_name, OBJS
- if ( is_ticlib() ) {
-- printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(TICS_LIST)\n", compile, lib_name, OBJS, libtool_version
-+ which_list = "TICS_LIST";
- } else if ( is_termlib() ) {
-- printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(TINFO_LIST)\n", compile, lib_name, OBJS, libtool_version
-+ which_list = "TINFO_LIST";
- } else {
-- printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) -o %s $(%s_OBJS:$o=.lo) -rpath $(DESTDIR)$(libdir) %s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(SHLIB_LIST)\n", compile, lib_name, OBJS, libtool_version
-+ which_list = "SHLIB_LIST";
- }
-+ printf "\tcd ../lib && $(LIBTOOL_LINK) $(%s) $(%s) \\\n", CC_NAME, CC_FLAG;
-+ printf "\t\t-o %s $(%s_OBJS:$o=.lo) \\\n", lib_name, OBJS;
-+ printf "\t\t-rpath $(DESTDIR)$(libdir) \\\n";
-+ printf "\t\t%s $(NCURSES_MAJOR):$(NCURSES_MINOR) $(LT_UNDEF) $(%s) $(LDFLAGS)\n", libtool_version, which_list;
- print ""
- print "install \\"
- print "install.libs \\"
-@@ -419,7 +467,7 @@
- {
- end_name = lib_name;
- printf "../lib/%s : $(%s_OBJS)\n", lib_name, OBJS
-- printf "\t$(AR) $(ARFLAGS) $@ $?\n"
-+ printf "\t$(%sAR) $(%sARFLAGS) $@ $?\n", TOOL_PREFIX, TOOL_PREFIX;
- printf "\t$(RANLIB) $@\n"
- if ( host == "vxworks" )
- {
-Index: mk-hdr.awk
-Prereq: 1.3
---- ncurses-5.9/mk-hdr.awk 2010-05-15 20:10:42.000000000 +0000
-+++ ncurses-5.9-20141206/mk-hdr.awk 2013-08-03 23:09:42.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: mk-hdr.awk,v 1.3 2010/05/15 20:10:42 tom Exp $
-+# $Id: mk-hdr.awk,v 1.4 2013/08/03 23:09:42 tom Exp $
- ##############################################################################
--# Copyright (c) 2007,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 2007-2010,2013 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"), #
-@@ -73,12 +73,12 @@
- END {
- if ( count > 0 )
- {
-- print "${DESTDIR}${includedir} :"
-+ print "${INCLUDEDIR} :"
- print " mkdir -p $@"
- print ""
- print "install \\"
- print "install.libs \\"
-- print "install.includes :: ${AUTO_SRC} ${DESTDIR}${includedir} \\"
-+ print "install.includes :: ${AUTO_SRC} ${INCLUDEDIR} \\"
-
- for (i = 0; i < count - 1; ++i) {
- printf " %s \\\n", data[i]
-@@ -86,9 +86,9 @@
- printf " %s\n", data[count - 1]
-
- for (i = 0; i < count; ++i) {
-- printf " @ (cd ${DESTDIR}${includedir} && rm -f %s) ; ../headers.sh ${INSTALL_DATA} ${DESTDIR}${includedir} ${srcdir} %s\n", basename(data[i]), data[i]
-+ printf " @ (cd ${INCLUDEDIR} && rm -f %s) ; ../headers.sh ${INSTALL_DATA} ${INCLUDEDIR} ${srcdir} %s\n", basename(data[i]), data[i]
- if (data[i] == "curses.h" && compat == "yes") {
-- printf " @ (cd ${DESTDIR}${includedir} && rm -f ncurses.h && ${LN_S} %s ncurses.h)\n", data[i]
-+ printf " @ (cd ${INCLUDEDIR} && rm -f ncurses.h && ${LN_S} %s ncurses.h)\n", data[i]
- }
- }
- print ""
-@@ -97,9 +97,9 @@
- print "uninstall.includes ::"
-
- for (i = 0; i < count; ++i) {
-- printf " -@ (cd ${DESTDIR}${includedir} && rm -f %s)\n", basename(data[i])
-+ printf " -@ (cd ${INCLUDEDIR} && rm -f %s)\n", basename(data[i])
- if (data[i] == "curses.h" && compat == "yes") {
-- printf " -@ (cd ${DESTDIR}${includedir} && rm -f ncurses.h)\n"
-+ printf " -@ (cd ${INCLUDEDIR} && rm -f ncurses.h)\n"
- }
- }
- }
-Index: ncurses/Makefile.in
-Prereq: 1.130
---- ncurses-5.9/ncurses/Makefile.in 2010-11-27 21:45:27.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/Makefile.in 2014-11-15 13:54:00.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.130 2010/11/27 21:45:27 tom Exp $
-+# $Id: Makefile.in,v 1.144 2014/11/15 13:54:00 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -64,9 +64,16 @@
- bindir = @bindir@
- libdir = @libdir@
- includedir = @includedir@
-+datarootdir = @datarootdir@
- datadir = @datadir@
-+includesubdir = @includesubdir@
-+
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-+
-+PACKAGE = @PACKAGE@
-
- LIBTOOL = @LIBTOOL@
-+LIBTOOL_OPTS = @LIBTOOL_OPTS@ @EXPORT_SYMS@
- LIBTOOL_CLEAN = @LIB_CLEAN@
- LIBTOOL_COMPILE = @LIB_COMPILE@
- LIBTOOL_LINK = @LIB_LINK@
-@@ -84,6 +91,7 @@
- AWK = @AWK@
- LD = @LD@
- LN_S = @LN_S@
-+NM = @NM@
-
- CTAGS = @CTAGS@
- ETAGS = @ETAGS@
-@@ -93,13 +101,13 @@
- CFLAGS = @CFLAGS@
-
- INCDIR = $(srcdir)/../include
--CPPFLAGS = -DHAVE_CONFIG_H -I../ncurses -I$(srcdir) @CPPFLAGS@
-+CPPFLAGS = -DHAVE_CONFIG_H @CPPFLAGS@
-
- CCFLAGS = $(CPPFLAGS) $(CFLAGS)
-
--BUILD_CPPFLAGS = -I../include -DUSE_BUILD_CC @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 = -DHAVE_CONFIG_H -I../ncurses -I$(srcdir) -I$(INCDIR) $(BUILD_CPPFLAGS) @BUILD_CFLAGS@
-+BUILD_CCFLAGS = @BUILD_CFLAGS@
- BUILD_LDFLAGS = @BUILD_LDFLAGS@
- BUILD_LIBS = @BUILD_LIBS@
-
-@@ -107,7 +115,7 @@
- # is compiled into the build, or are test-programs that are not installed.
-
- BUILD_EXEEXT = @BUILD_EXEEXT@
--x = @PROG_EXT@
-+x = @EXEEXT@
-
- CFLAGS_LIBTOOL = $(CCFLAGS)
- CFLAGS_NORMAL = $(CCFLAGS)
-@@ -125,6 +133,8 @@
- TINFO_LIST = $(SHLIB_DIRS) @TINFO_LIST@
- TICS_LIST = $(SHLIB_DIRS) @TICS_LIST@
-
-+RPATH_LIST = @RPATH_LIST@
-+VERSIONED_SYMS = @VERSIONED_SYMS@
- MK_SHARED_LIB = @MK_SHARED_LIB@
-
- NCURSES_MAJOR = @NCURSES_MAJOR@
-@@ -134,7 +144,7 @@
-
- RANLIB = @LIB_PREP@
-
--LIBRARIES = @LIBS_TO_MAKE@
-+LIBRARIES = @Libs_To_Make@
-
- LINT = @LINT@
- LINT_OPTS = @LINT_OPTS@
-@@ -219,12 +229,12 @@
- make_keys$(BUILD_EXEEXT) : \
- $(tinfo)/make_keys.c \
- names.c
-- $(BUILD_CC) -o $@ $(BUILD_CCFLAGS) $(tinfo)/make_keys.c $(BUILD_LDFLAGS) $(BUILD_LIBS)
-+ $(BUILD_CC) -o $@ $(BUILD_CPPFLAGS) $(BUILD_CCFLAGS) $(tinfo)/make_keys.c $(BUILD_LDFLAGS) $(BUILD_LIBS)
-
- make_hash$(BUILD_EXEEXT) : \
- $(tinfo)/make_hash.c \
- ../include/hashsize.h
-- $(BUILD_CC) -o $@ $(BUILD_CCFLAGS) $(tinfo)/make_hash.c $(BUILD_LDFLAGS) $(BUILD_LIBS)
-+ $(BUILD_CC) -o $@ $(BUILD_CPPFLAGS) $(BUILD_CCFLAGS) $(tinfo)/make_hash.c $(BUILD_LDFLAGS) $(BUILD_LIBS)
-
- ./expanded.c : $(srcdir)/curses.priv.h $(serial)/MKexpanded.sh
- sh -e $(serial)/MKexpanded.sh "$(CPP)" $(CPPFLAGS) > $@
-@@ -254,6 +264,9 @@
- @MAKE_UPPER_TAGS@TAGS:
- @MAKE_UPPER_TAGS@ $(ETAGS) *.[ch] */*.[ch]
-
-+ncurses.map : $(LIBRARIES)
-+ $(NM) -p $(LIBRARIES) >$@
-+
- mostlyclean ::
- -rm -f core tags TAGS *~ *.bak *.i *.ln *.atac trace
- -rm -f $(TEST_PROGS)
-@@ -262,7 +275,7 @@
- -rm -f $(AUTO_SRC)
- -rm -f make_keys$(BUILD_EXEEXT)
- -rm -f make_hash$(BUILD_EXEEXT)
-- -rm -rf .libs
-+ -rm -rf .libs *.dSYM *.map
-
- distclean :: clean
- -rm -f Makefile
-@@ -282,21 +295,21 @@
- sh -e $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" implemented <../include/curses.h >$@
-
- captoinfo$x : $(tinfo)/captoinfo.c $(TEST_DEPS)
-- @ECHO_LINK@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DMAIN $(tinfo)/captoinfo.c $(TEST_LDFLAGS)
-+ @ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DMAIN $(tinfo)/captoinfo.c $(TEST_LDFLAGS)
-
- hardscroll$x : $(serial)/hardscroll.c $(TEST_DEPS)
-- @ECHO_LINK@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DSCROLLDEBUG $(serial)/hardscroll.c $(TEST_LDFLAGS)
-+ @ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DSCROLLDEBUG $(serial)/hardscroll.c $(TEST_LDFLAGS)
-
- hashmap$x : $(serial)/hashmap.c $(serial)/hardscroll.c $(TEST_DEPS)
-- @ECHO_LINK@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DHASHDEBUG $(serial)/hashmap.c $(serial)/hardscroll.c $(TEST_LDFLAGS)
-+ @ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DHASHDEBUG $(serial)/hashmap.c $(serial)/hardscroll.c $(TEST_LDFLAGS)
-
- lib_mvcur$x : $(serial)/lib_mvcur.c $(TEST_DEPS) \
- ../@DFT_OBJ_SUBDIR@/dump_entry$o
-- @ECHO_LINK@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DNCURSES_TEST -I$(serial)/../../progs $(serial)/lib_mvcur.c ../@DFT_OBJ_SUBDIR@/dump_entry$o $(TEST_LDFLAGS)
-+ @ECHO_LD@ $(LIBTOOL_LINK) -o $@ $(CFLAGS_DEFAULT) -DNCURSES_TEST -I$(serial)/../../progs $(serial)/lib_mvcur.c ../@DFT_OBJ_SUBDIR@/dump_entry$o $(TEST_LDFLAGS)
-
- link_test$x : ./link_test.c $(TEST_DEPS) \
- ../@DFT_OBJ_SUBDIR@/link_test$o
-- @ECHO_LINK@ $(CC) -o $@ $(CFLAGS_DEFAULT) ../@DFT_OBJ_SUBDIR@/link_test$o $(TEST_LDFLAGS)
-+ @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
-Index: ncurses/base/MKkeyname.awk
-Prereq: 1.45
---- ncurses-5.9/ncurses/base/MKkeyname.awk 2010-12-19 01:36:14.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/MKkeyname.awk 2013-08-24 17:37:22.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: MKkeyname.awk,v 1.45 2010/12/19 01:36:14 tom Exp $
-+# $Id: MKkeyname.awk,v 1.48 2013/08/24 17:37:22 tom Exp $
- ##############################################################################
--# Copyright (c) 1999-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1999-2012,2013 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"), #
-@@ -65,6 +65,7 @@
- print ""
- print "#define SIZEOF_TABLE 256"
- print "#define MyTable _nc_globals.keyname_table"
-+ print "#define MyInit _nc_globals.init_keyname"
- print ""
- print "NCURSES_EXPORT(NCURSES_CONST char *)"
- print "safe_keyname (SCREEN *sp, int c)"
-@@ -96,21 +97,36 @@
- print " if (result == 0 && (c >= 0 && c < SIZEOF_TABLE)) {"
- print " if (MyTable == 0)"
- print " MyTable = typeCalloc(char *, SIZEOF_TABLE);"
-+ print ""
- print " if (MyTable != 0) {"
-+ print " int m_prefix = (sp == 0 || sp->_use_meta);"
-+ print ""
-+ print " /* if sense of meta() changed, discard cached data */"
-+ print " if (MyInit != (m_prefix + 1)) {"
-+ print " MyInit = m_prefix + 1;"
-+ print " for (i = 0; i < SIZEOF_TABLE; ++i) {"
-+ print " if (MyTable[i]) {"
-+ print " FreeAndNull(MyTable[i]);"
-+ print " }"
-+ print " }"
-+ print " }"
-+ print ""
-+ print " /* create and cache result as needed */"
- print " if (MyTable[c] == 0) {"
- print " int cc = c;"
- print " p = name;"
-- print " if (cc >= 128 && (sp == 0 || sp->_use_meta)) {"
-- print " strcpy(p, \"M-\");"
-+ print "#define P_LIMIT (sizeof(name) - (size_t) (p - name))"
-+ print " if (cc >= 128 && m_prefix) {"
-+ print " _nc_STRCPY(p, \"M-\", P_LIMIT);"
- print " p += 2;"
- print " cc -= 128;"
- print " }"
- print " if (cc < 32)"
-- print " sprintf(p, \"^%c\", cc + '@');"
-+ print " _nc_SPRINTF(p, _nc_SLIMIT(P_LIMIT) \"^%c\", cc + '@');"
- print " else if (cc == 127)"
-- print " strcpy(p, \"^?\");"
-+ print " _nc_STRCPY(p, \"^?\", P_LIMIT);"
- print " else"
-- print " sprintf(p, \"%c\", cc);"
-+ print " _nc_SPRINTF(p, _nc_SLIMIT(P_LIMIT) \"%c\", cc);"
- print " MyTable[c] = strdup(name);"
- print " }"
- print " result = MyTable[c];"
-Index: ncurses/base/MKlib_gen.sh
-Prereq: 1.43
---- ncurses-5.9/ncurses/base/MKlib_gen.sh 2011-01-22 19:47:29.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/MKlib_gen.sh 2014-12-06 18:56:25.000000000 +0000
-@@ -2,10 +2,10 @@
- #
- # MKlib_gen.sh -- generate sources from curses.h macro definitions
- #
--# ($Id: MKlib_gen.sh,v 1.43 2011/01/22 19:47:29 tom Exp $)
-+# ($Id: MKlib_gen.sh,v 1.47 2014/12/06 18:56:25 tom Exp $)
- #
- ##############################################################################
--# Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2011,2014 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"), #
-@@ -410,10 +410,45 @@
- print "#undef vwprintw"
- }
- /^DECLARATIONS/ {start = 1; next;}
-- {if (start) print \$0;}
-+ {
-+ if (start) {
-+ if ( "$USE" == "generated" ) {
-+ print \$0;
-+ } else if ( \$0 ~ /^[{}]?\$/ ) {
-+ print \$0;
-+ } else if ( \$0 ~ /;/ ) {
-+ print \$0;
-+ } else {
-+ calls[start] = \$0;
-+ print \$0;
-+ start++;
-+ }
-+ }
-+ }
- END {
- if ( "$USE" != "generated" ) {
-- print "int main(void) { return 0; }"
-+ print "int main(void)"
-+ print "{"
-+ for (n = 1; n < start; ++n) {
-+ value = calls[n];
-+ if ( value !~ /P_POUNDC/ ) {
-+ gsub(/[[:blank:]]+/," ",value);
-+ sub(/^[[:alnum:]_]+ /,"",value);
-+ sub(/^\* /,"",value);
-+ gsub(/[[:alnum:]_]+ \* /,"",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);
-+ sub(/^/,"call_",value);
-+ gsub(/ (a[[:digit:]]|z) /, " 0 ", value);
-+ gsub(/ int[[:blank:]]*[(][^)]+[)][(][^)]+[)]/, "0", value);
-+ printf "\t%s;\n", value;
-+ } else {
-+ print value;
-+ }
-+ }
-+ print " return 0;"
-+ print "}"
- }
- }
- EOF1
-@@ -422,6 +457,8 @@
- #include <ncurses_cfg.h>
- #undef NCURSES_NOMACROS
- #include <curses.h>
-+#include <term.h>
-+#include <unctrl.h>
-
- DECLARATIONS
-
-@@ -437,11 +474,22 @@
- -e 's/gen_$//' \
- -e 's/ / /g' >>$TMP
-
-+cat >$ED1 <<EOF
-+s/ / /g
-+s/^ //
-+s/ $//
-+s/P_NCURSES_BOOL/NCURSES_BOOL/g
-+EOF
-+
-+# A patch discussed here:
-+# https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
-+# introduces spurious #line markers. Work around that by ignoring the system's
-+# attempt to define "bool" and using our own symbol here.
-+sed -e 's/bool/P_NCURSES_BOOL/g' $TMP > $ED2
-+cat $ED2 >$TMP
-+
- $preprocessor $TMP 2>/dev/null \
--| sed \
-- -e 's/ / /g' \
-- -e 's/^ //' \
-- -e 's/_Bool/NCURSES_BOOL/g' \
-+| sed -f $ED1 \
- | $AWK -f $AW2 \
- | sed -f $ED3 \
- | sed \
-Index: ncurses/base/MKunctrl.awk
-Prereq: 1.26
---- ncurses-5.9/ncurses/base/MKunctrl.awk 2009-07-04 22:05:15.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/MKunctrl.awk 2012-06-09 20:29:33.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: MKunctrl.awk,v 1.26 2009/07/04 22:05:15 Clemens.Ladisch Exp $
-+# $Id: MKunctrl.awk,v 1.27 2012/06/09 20:29:33 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2009,2012 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"), #
-@@ -140,7 +140,7 @@
- } else {
- stringname = "unctrl"
- }
-- print "\tint check = ChCharOf(ch);"
-+ print "\tint check = (int) ChCharOf(ch);"
- print "\tconst char *result;"
- print ""
- print "\tif (check >= 0 && check < (int)SIZEOF(unctrl_table)) {"
-Index: ncurses/base/define_key.c
-Prereq: 1.20
---- ncurses-5.9/ncurses/base/define_key.c 2009-11-28 22:53:17.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/define_key.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2014 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 *
-@@ -33,7 +33,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: define_key.c,v 1.20 2009/11/28 22:53:17 tom Exp $")
-+MODULE_ID("$Id: define_key.c,v 1.21 2014/03/08 20:32:59 tom Exp $")
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(define_key) (NCURSES_SP_DCLx const char *str, int keycode)
-@@ -47,7 +47,7 @@
- unsigned ukey = (unsigned) keycode;
-
- #ifdef USE_TERM_DRIVER
--#define CallHasKey(keycode) CallDriver_1(SP_PARM, kyExist, keycode)
-+#define CallHasKey(keycode) CallDriver_1(SP_PARM, td_kyExist, keycode)
- #else
- #define CallHasKey(keycode) NCURSES_SP_NAME(has_key)(NCURSES_SP_ARGx keycode)
- #endif
-Index: ncurses/base/keybound.c
-Prereq: 1.10
---- ncurses-5.9/ncurses/base/keybound.c 2009-10-24 22:15:47.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/keybound.c 2011-10-22 16:47:05.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1999-2006,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1999-2009,2011 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 *
-@@ -33,7 +33,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: keybound.c,v 1.10 2009/10/24 22:15:47 tom Exp $")
-+MODULE_ID("$Id: keybound.c,v 1.11 2011/10/22 16:47:05 tom Exp $")
-
- /*
- * Returns the count'th string definition which is associated with the
-@@ -46,7 +46,10 @@
-
- T((T_CALLED("keybound(%p, %d,%d)"), (void *) SP_PARM, code, count));
- if (SP_PARM != 0 && code >= 0) {
-- result = _nc_expand_try(SP_PARM->_keytry, (unsigned) code, &count, 0);
-+ result = _nc_expand_try(SP_PARM->_keytry,
-+ (unsigned) code,
-+ &count,
-+ (size_t) 0);
- }
- returnPtr(result);
- }
-Index: ncurses/base/keyok.c
-Prereq: 1.10
---- ncurses-5.9/ncurses/base/keyok.c 2009-10-24 22:15:47.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/keyok.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -33,7 +33,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: keyok.c,v 1.10 2009/10/24 22:15:47 tom Exp $")
-+MODULE_ID("$Id: keyok.c,v 1.14 2014/03/08 20:32:59 tom Exp $")
-
- /*
- * Enable (or disable) ncurses' interpretation of a keycode by adding (or
-@@ -50,37 +50,47 @@
- {
- int code = ERR;
-
-- T((T_CALLED("keyok(%p, %d,%d)"), (void *) SP_PARM, c, flag));
-+ if (HasTerminal(SP_PARM)) {
-+ T((T_CALLED("keyok(%p, %d,%d)"), (void *) SP_PARM, c, flag));
- #ifdef USE_TERM_DRIVER
-- code = CallDriver_2(sp, kyOk, c, flag);
-+ code = CallDriver_2(sp, td_kyOk, c, flag);
- #else
-- T((T_CALLED("keyok(%d,%d)"), c, flag));
-- if (c >= 0) {
-- int count = 0;
-- char *s;
-- unsigned ch = (unsigned) c;
--
-- if (flag) {
-- while ((s = _nc_expand_try(SP_PARM->_key_ok, ch, &count, 0)) != 0
-- && _nc_remove_key(&(SP_PARM->_key_ok), ch)) {
-- code = _nc_add_to_try(&(SP_PARM->_keytry), s, ch);
-- free(s);
-- count = 0;
-- if (code != OK)
-- break;
-- }
-- } else {
-- while ((s = _nc_expand_try(SP_PARM->_keytry, ch, &count, 0)) != 0
-- && _nc_remove_key(&(SP_PARM->_keytry), ch)) {
-- code = _nc_add_to_try(&(SP_PARM->_key_ok), s, ch);
-- free(s);
-- count = 0;
-- if (code != OK)
-- break;
-+ T((T_CALLED("keyok(%d,%d)"), c, flag));
-+ if (c >= 0) {
-+ int count = 0;
-+ char *s;
-+ unsigned ch = (unsigned) c;
-+
-+ if (flag) {
-+ while ((s = _nc_expand_try(SP_PARM->_key_ok,
-+ ch, &count, (size_t) 0)) != 0) {
-+ if (_nc_remove_key(&(SP_PARM->_key_ok), ch)) {
-+ code = _nc_add_to_try(&(SP_PARM->_keytry), s, ch);
-+ free(s);
-+ count = 0;
-+ if (code != OK)
-+ break;
-+ } else {
-+ free(s);
-+ }
-+ }
-+ } else {
-+ while ((s = _nc_expand_try(SP_PARM->_keytry,
-+ ch, &count, (size_t) 0)) != 0) {
-+ if (_nc_remove_key(&(SP_PARM->_keytry), ch)) {
-+ code = _nc_add_to_try(&(SP_PARM->_key_ok), s, ch);
-+ free(s);
-+ count = 0;
-+ if (code != OK)
-+ break;
-+ } else {
-+ free(s);
-+ }
-+ }
- }
- }
-- }
- #endif
-+ }
- returnCode(code);
- }
-
-Index: ncurses/base/lib_addch.c
-Prereq: 1.124
---- ncurses-5.9/ncurses/base/lib_addch.c 2010-04-24 22:41:05.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_addch.c 2014-08-16 20:41:04.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -36,7 +36,7 @@
- #include <curses.priv.h>
- #include <ctype.h>
-
--MODULE_ID("$Id: lib_addch.c,v 1.124 2010/04/24 22:41:05 tom Exp $")
-+MODULE_ID("$Id: lib_addch.c,v 1.129 2014/08/16 20:41:04 tom Exp $")
-
- static const NCURSES_CH_T blankchar = NewChar(BLANK_TEXT);
-
-@@ -209,7 +209,8 @@
- buffer[WINDOW_EXT(win, addch_used)] = '\0';
- if ((len = (int) mbrtowc(&result,
- buffer,
-- WINDOW_EXT(win, addch_used), &state)) > 0) {
-+ (size_t) WINDOW_EXT(win, addch_used),
-+ &state)) > 0) {
- attr_t attrs = AttrOf(CHDEREF(ch));
- if_EXT_COLORS(int pair = GetPair(CHDEREF(ch)));
- SetChar(CHDEREF(ch), result, attrs);
-@@ -411,10 +412,12 @@
- #endif
- const char *s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx t);
- int tabsize = 8;
-+
- /*
- * If we are using the alternate character set, forget about locale.
- * Otherwise, if unctrl() returns a single-character or the locale
-- * claims the code is printable, treat it that way.
-+ * claims the code is printable (and not also a control character),
-+ * treat it that way.
- */
- if ((AttrOf(ch) & A_ALTCHARSET)
- || (
-@@ -424,14 +427,15 @@
- s[1] == 0
- )
- || (
-- isprint(t)
-+ (isprint((int)t) && !iscntrl((int)t))
- #if USE_WIDEC_SUPPORT
- || ((sp == 0 || !sp->_legacy_coding) &&
- (WINDOW_EXT(win, addch_used)
- || !_nc_is_charable(CharOf(ch))))
- #endif
-- ))
-+ )) {
- return waddch_literal(win, ch);
-+ }
-
- /*
- * Handle carriage control and other codes that are not printable, or are
-@@ -497,7 +501,7 @@
- default:
- while (*s) {
- NCURSES_CH_T sch;
-- SetChar(sch, *s++, AttrOf(ch));
-+ SetChar(sch, UChar(*s++), AttrOf(ch));
- if_EXT_COLORS(SetPair(sch, GetPair(ch)));
- if (waddch_literal(win, sch) == ERR)
- return ERR;
-Index: ncurses/base/lib_addstr.c
-Prereq: 1.51
---- ncurses-5.9/ncurses/base/lib_addstr.c 2010-12-19 01:22:58.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_addstr.c 2011-05-28 23:02:09.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2011 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 *
-@@ -44,7 +44,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_addstr.c,v 1.51 2010/12/19 01:22:58 tom Exp $")
-+MODULE_ID("$Id: lib_addstr.c,v 1.52 2011/05/28 23:02:09 tom Exp $")
-
- NCURSES_EXPORT(int)
- waddnstr(WINDOW *win, const char *astr, int n)
-@@ -119,8 +119,10 @@
- _nc_wchstrlen(const cchar_t *s)
- {
- int result = 0;
-- while (CharOf(s[result]) != L'\0') {
-- result++;
-+ if (s != 0) {
-+ while (CharOf(s[result]) != L'\0') {
-+ result++;
-+ }
- }
- return result;
- }
-Index: ncurses/base/lib_beep.c
-Prereq: 1.15
---- ncurses-5.9/ncurses/base/lib_beep.c 2009-10-24 22:02:14.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_beep.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -46,7 +46,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_beep.c,v 1.15 2009/10/24 22:02:14 tom Exp $")
-+MODULE_ID("$Id: lib_beep.c,v 1.17 2014/03/08 20:32:59 tom Exp $")
-
- /*
- * beep()
-@@ -65,18 +65,15 @@
-
- #ifdef USE_TERM_DRIVER
- if (SP_PARM != 0)
-- res = CallDriver_1(SP_PARM, doBeepOrFlash, TRUE);
-+ res = CallDriver_1(SP_PARM, td_doBeepOrFlash, TRUE);
- #else
- /* FIXME: should make sure that we are not in altchar mode */
- if (cur_term == 0) {
- res = ERR;
- } else if (bell) {
-- TPUTS_TRACE("bell");
-- res = putp(bell);
-- _nc_flush();
-+ res = NCURSES_PUTP2_FLUSH("bell", bell);
- } else if (flash_screen) {
-- TPUTS_TRACE("flash_screen");
-- res = putp(flash_screen);
-+ res = NCURSES_PUTP2_FLUSH("flash_screen", flash_screen);
- _nc_flush();
- }
- #endif
-Index: ncurses/base/lib_bkgd.c
-Prereq: 1.43
---- ncurses-5.9/ncurses/base/lib_bkgd.c 2011-01-22 19:47:37.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_bkgd.c 2014-09-04 09:36:20.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -36,7 +36,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_bkgd.c,v 1.43 2011/01/22 19:47:37 tom Exp $")
-+MODULE_ID("$Id: lib_bkgd.c,v 1.49 2014/09/04 09:36:20 tom Exp $")
-
- /*
- * Set the window's background information.
-@@ -85,6 +85,7 @@
- cchar_t wch;
- int tmp;
-
-+ memset(&wch, 0, sizeof(wch));
- (void) wgetbkgrnd(win, &wch);
- tmp = _nc_to_char((wint_t) CharOf(wch));
-
-@@ -118,16 +119,18 @@
- {
- int code = ERR;
- int x, y;
-- NCURSES_CH_T new_bkgd = CHDEREF(ch);
-
- T((T_CALLED("wbkgd(%p,%s)"), (void *) win, _tracech_t(ch)));
-
- if (win) {
-+ NCURSES_CH_T new_bkgd = CHDEREF(ch);
- NCURSES_CH_T old_bkgrnd;
-- wgetbkgrnd(win, &old_bkgrnd);
-+
-+ memset(&old_bkgrnd, 0, sizeof(old_bkgrnd));
-+ (void) wgetbkgrnd(win, &old_bkgrnd);
-
- (void) wbkgrndset(win, CHREF(new_bkgd));
-- (void) wattrset(win, AttrOf(win->_nc_bkgd));
-+ (void) wattrset(win, (int) AttrOf(win->_nc_bkgd));
-
- for (y = 0; y <= win->_maxy; y++) {
- for (x = 0; x <= win->_maxx; x++) {
-Index: ncurses/base/lib_chgat.c
-Prereq: 1.9
---- ncurses-5.9/ncurses/base/lib_chgat.c 2010-03-31 23:38:02.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_chgat.c 2014-02-01 22:13:31.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2014 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 *
-@@ -42,14 +42,22 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_chgat.c,v 1.9 2010/03/31 23:38:02 tom Exp $")
-+MODULE_ID("$Id: lib_chgat.c,v 1.10 2014/02/01 22:13:31 tom Exp $")
-
- NCURSES_EXPORT(int)
--wchgat(WINDOW *win, int n, attr_t attr, short color, const void *opts GCC_UNUSED)
-+wchgat(WINDOW *win,
-+ int n,
-+ attr_t attr,
-+ NCURSES_PAIRS_T color,
-+ const void *opts GCC_UNUSED)
- {
- int i;
-
-- T((T_CALLED("wchgat(%p,%d,%s,%d)"), (void *) win, n, _traceattr(attr), color));
-+ T((T_CALLED("wchgat(%p,%d,%s,%d)"),
-+ (void *) win,
-+ n,
-+ _traceattr(attr),
-+ (int) color));
-
- if (win) {
- struct ldat *line = &(win->_line[win->_cury]);
-Index: ncurses/base/lib_color.c
-Prereq: 1.98
---- ncurses-5.9/ncurses/base/lib_color.c 2010-04-24 22:57:53.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_color.c 2014-03-08 20:04:44.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -45,7 +45,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_color.c,v 1.98 2010/04/24 22:57:53 tom Exp $")
-+MODULE_ID("$Id: lib_color.c,v 1.110 2014/03/08 20:04:44 tom Exp $")
-
- #ifdef USE_TERM_DRIVER
- #define CanChange InfoOf(SP_PARM).canchange
-@@ -188,7 +188,7 @@
- set_background_color(NCURSES_SP_DCLx int bg, NCURSES_SP_OUTC outc)
- {
- #ifdef USE_TERM_DRIVER
-- CallDriver_3(SP_PARM, color, FALSE, bg, outc);
-+ CallDriver_3(SP_PARM, td_color, FALSE, bg, outc);
- #else
- if (set_a_background) {
- TPUTS_TRACE("set_a_background");
-@@ -208,7 +208,7 @@
- set_foreground_color(NCURSES_SP_DCLx int fg, NCURSES_SP_OUTC outc)
- {
- #ifdef USE_TERM_DRIVER
-- CallDriver_3(SP_PARM, color, TRUE, fg, outc);
-+ CallDriver_3(SP_PARM, td_color, TRUE, fg, outc);
- #else
- if (set_a_foreground) {
- TPUTS_TRACE("set_a_foreground");
-@@ -258,14 +258,13 @@
- reset_color_pair(NCURSES_SP_DCL0)
- {
- #ifdef USE_TERM_DRIVER
-- return CallDriver(SP_PARM, rescol);
-+ return CallDriver(SP_PARM, td_rescol);
- #else
- bool result = FALSE;
-
- (void) SP_PARM;
- if (orig_pair != 0) {
-- TPUTS_TRACE("orig_pair");
-- putp(orig_pair);
-+ (void) NCURSES_PUTP2("orig_pair", orig_pair);
- result = TRUE;
- }
- return result;
-@@ -289,11 +288,10 @@
- result = TRUE;
-
- #ifdef USE_TERM_DRIVER
-- result = CallDriver(SP_PARM, rescolors);
-+ result = CallDriver(SP_PARM, td_rescolors);
- #else
- if (orig_colors != 0) {
-- TPUTS_TRACE("orig_colors");
-- putp(orig_colors);
-+ NCURSES_PUTP2("orig_colors", orig_colors);
- result = TRUE;
- }
- #endif
-@@ -331,6 +329,13 @@
- default_bg(NCURSES_SP_ARG),
- NCURSES_SP_NAME(_nc_outch));
- }
-+#if !NCURSES_EXT_COLORS
-+ /*
-+ * Without ext-colors, we cannot represent more than 256 color pairs.
-+ */
-+ if (maxpairs > 256)
-+ maxpairs = 256;
-+#endif
-
- if (maxpairs > 0 && maxcolors > 0) {
- SP_PARM->_pair_limit = maxpairs;
-@@ -383,10 +388,10 @@
-
- /* This function was originally written by Daniel Weaver <danw@znyx.com> */
- static void
--rgb2hls(short r, short g, short b, short *h, short *l, short *s)
-+rgb2hls(int r, int g, int b, NCURSES_COLOR_T *h, NCURSES_COLOR_T *l, NCURSES_COLOR_T *s)
- /* convert RGB to HLS system */
- {
-- short min, max, t;
-+ int min, max, t;
-
- if ((min = g < r ? g : r) > b)
- min = b;
-@@ -394,7 +399,7 @@
- max = b;
-
- /* calculate lightness */
-- *l = (short) ((min + max) / 20);
-+ *l = (NCURSES_COLOR_T) ((min + max) / 20);
-
- if (min == max) { /* black, white and all shades of gray */
- *h = 0;
-@@ -404,19 +409,19 @@
-
- /* calculate saturation */
- if (*l < 50)
-- *s = (short) (((max - min) * 100) / (max + min));
-+ *s = (NCURSES_COLOR_T) (((max - min) * 100) / (max + min));
- else
-- *s = (short) (((max - min) * 100) / (2000 - max - min));
-+ *s = (NCURSES_COLOR_T) (((max - min) * 100) / (2000 - max - min));
-
- /* calculate hue */
- if (r == max)
-- t = (short) (120 + ((g - b) * 60) / (max - min));
-+ t = (NCURSES_COLOR_T) (120 + ((g - b) * 60) / (max - min));
- else if (g == max)
-- t = (short) (240 + ((b - r) * 60) / (max - min));
-+ t = (NCURSES_COLOR_T) (240 + ((b - r) * 60) / (max - min));
- else
-- t = (short) (360 + ((r - g) * 60) / (max - min));
-+ t = (NCURSES_COLOR_T) (360 + ((r - g) * 60) / (max - min));
-
-- *h = t % 360;
-+ *h = (NCURSES_COLOR_T) (t % 360);
- }
-
- /*
-@@ -424,13 +429,20 @@
- * values.
- */
- NCURSES_EXPORT(int)
--NCURSES_SP_NAME(init_pair) (NCURSES_SP_DCLx short pair, short f, short b)
-+NCURSES_SP_NAME(init_pair) (NCURSES_SP_DCLx
-+ NCURSES_PAIRS_T pair,
-+ NCURSES_COLOR_T f,
-+ NCURSES_COLOR_T b)
- {
- colorpair_t result;
- colorpair_t previous;
- int maxcolors;
-
-- T((T_CALLED("init_pair(%p,%d,%d,%d)"), (void *) SP_PARM, pair, f, b));
-+ T((T_CALLED("init_pair(%p,%d,%d,%d)"),
-+ (void *) SP_PARM,
-+ (int) pair,
-+ (int) f,
-+ (int) b));
-
- if (!ValidPair(pair))
- returnCode(ERR);
-@@ -439,7 +451,7 @@
-
- previous = SP_PARM->_color_pairs[pair];
- #if NCURSES_EXT_FUNCS
-- if (SP_PARM->_default_color) {
-+ if (SP_PARM->_default_color || SP_PARM->_assumed_color) {
- bool isDefault = FALSE;
- bool wasDefault = FALSE;
- int default_pairs = SP_PARM->_default_pairs;
-@@ -498,8 +510,9 @@
- {
- if ((f < 0) || !OkColorHi(f)
- || (b < 0) || !OkColorHi(b)
-- || (pair < 1))
-+ || (pair < 1)) {
- returnCode(ERR);
-+ }
- }
-
- /*
-@@ -534,22 +547,26 @@
- SET_SCREEN_PAIR(SP_PARM, (chtype) (~0)); /* force attribute update */
-
- #ifdef USE_TERM_DRIVER
-- CallDriver_3(SP_PARM, initpair, pair, f, b);
-+ CallDriver_3(SP_PARM, td_initpair, pair, f, b);
- #else
- if (initialize_pair && InPalette(f) && InPalette(b)) {
- const color_t *tp = DefaultPalette;
-
- TR(TRACE_ATTRS,
- ("initializing pair: pair = %d, fg=(%d,%d,%d), bg=(%d,%d,%d)",
-- pair,
-- tp[f].red, tp[f].green, tp[f].blue,
-- tp[b].red, tp[b].green, tp[b].blue));
--
-- TPUTS_TRACE("initialize_pair");
-- putp(TPARM_7(initialize_pair,
-- pair,
-- tp[f].red, tp[f].green, tp[f].blue,
-- tp[b].red, tp[b].green, tp[b].blue));
-+ (int) 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));
-+
-+ 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));
- }
- #endif
-
-@@ -558,7 +575,7 @@
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
--init_pair(short pair, short f, short b)
-+init_pair(NCURSES_COLOR_T pair, NCURSES_COLOR_T f, NCURSES_COLOR_T b)
- {
- return NCURSES_SP_NAME(init_pair) (CURRENT_SCREEN, pair, f, b);
- }
-@@ -568,7 +585,10 @@
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(init_color) (NCURSES_SP_DCLx
-- short color, short r, short g, short b)
-+ NCURSES_COLOR_T color,
-+ NCURSES_COLOR_T r,
-+ NCURSES_COLOR_T g,
-+ NCURSES_COLOR_T b)
- {
- int result = ERR;
- int maxcolors;
-@@ -605,10 +625,10 @@
- }
-
- #ifdef USE_TERM_DRIVER
-- CallDriver_4(SP_PARM, initcolor, color, r, g, b);
-+ CallDriver_4(SP_PARM, td_initcolor, color, r, g, b);
- #else
-- TPUTS_TRACE("initialize_color");
-- putp(TPARM_4(initialize_color, color, r, g, b));
-+ NCURSES_PUTP2("initialize_color",
-+ TPARM_4(initialize_color, color, r, g, b));
- #endif
- SP_PARM->_color_defs = max(color + 1, SP_PARM->_color_defs);
-
-@@ -619,7 +639,10 @@
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
--init_color(short color, short r, short g, short b)
-+init_color(NCURSES_COLOR_T color,
-+ NCURSES_COLOR_T r,
-+ NCURSES_COLOR_T g,
-+ NCURSES_COLOR_T b)
- {
- return NCURSES_SP_NAME(init_color) (CURRENT_SCREEN, color, r, g, b);
- }
-@@ -628,8 +651,15 @@
- NCURSES_EXPORT(bool)
- NCURSES_SP_NAME(can_change_color) (NCURSES_SP_DCL)
- {
-+ int result = FALSE;
-+
- T((T_CALLED("can_change_color(%p)"), (void *) SP_PARM));
-- returnCode((CanChange != 0) ? TRUE : FALSE);
-+
-+ if (HasTerminal(SP_PARM) && (CanChange != 0)) {
-+ result = TRUE;
-+ }
-+
-+ returnCode(result);
- }
-
- #if NCURSES_SP_FUNCS
-@@ -643,20 +673,22 @@
- NCURSES_EXPORT(bool)
- NCURSES_SP_NAME(has_colors) (NCURSES_SP_DCL0)
- {
-- int code;
-+ int code = FALSE;
-
- (void) SP_PARM;
- T((T_CALLED("has_colors()")));
-+ if (HasTerminal(SP_PARM)) {
- #ifdef USE_TERM_DRIVER
-- code = HasColor;
-+ code = HasColor;
- #else
-- code = ((VALID_NUMERIC(max_colors) && VALID_NUMERIC(max_pairs)
-- && (((set_foreground != NULL)
-- && (set_background != NULL))
-- || ((set_a_foreground != NULL)
-- && (set_a_background != NULL))
-- || set_color_pair)) ? TRUE : FALSE);
-+ code = ((VALID_NUMERIC(max_colors) && VALID_NUMERIC(max_pairs)
-+ && (((set_foreground != NULL)
-+ && (set_background != NULL))
-+ || ((set_a_foreground != NULL)
-+ && (set_a_background != NULL))
-+ || set_color_pair)) ? TRUE : FALSE);
- #endif
-+ }
- returnCode(code);
- }
-
-@@ -670,7 +702,10 @@
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(color_content) (NCURSES_SP_DCLx
-- short color, short *r, short *g, short *b)
-+ NCURSES_COLOR_T color,
-+ NCURSES_COLOR_T *r,
-+ NCURSES_COLOR_T *g,
-+ NCURSES_COLOR_T *b)
- {
- int result = ERR;
- int maxcolors;
-@@ -710,7 +745,10 @@
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
--color_content(short color, short *r, short *g, short *b)
-+color_content(NCURSES_COLOR_T color,
-+ NCURSES_COLOR_T *r,
-+ NCURSES_COLOR_T *g,
-+ NCURSES_COLOR_T *b)
- {
- return NCURSES_SP_NAME(color_content) (CURRENT_SCREEN, color, r, g, b);
- }
-@@ -718,21 +756,23 @@
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(pair_content) (NCURSES_SP_DCLx
-- short pair, short *f, short *b)
-+ NCURSES_PAIRS_T pair,
-+ NCURSES_COLOR_T *f,
-+ NCURSES_COLOR_T *b)
- {
- int result;
-
- T((T_CALLED("pair_content(%p,%d,%p,%p)"),
- (void *) SP_PARM,
-- pair,
-+ (int) pair,
- (void *) f,
- (void *) b));
-
- if (!ValidPair(pair)) {
- result = ERR;
- } else {
-- NCURSES_COLOR_T fg = FORE_OF(SP_PARM->_color_pairs[pair]);
-- NCURSES_COLOR_T bg = BACK_OF(SP_PARM->_color_pairs[pair]);
-+ NCURSES_COLOR_T fg = (NCURSES_COLOR_T) FORE_OF(SP_PARM->_color_pairs[pair]);
-+ NCURSES_COLOR_T bg = (NCURSES_COLOR_T) BACK_OF(SP_PARM->_color_pairs[pair]);
-
- #if NCURSES_EXT_FUNCS
- if (fg == COLOR_DEFAULT)
-@@ -748,8 +788,8 @@
-
- TR(TRACE_ATTRS, ("...pair_content(%p,%d,%d,%d)",
- (void *) SP_PARM,
-- pair,
-- fg, bg));
-+ (int) pair,
-+ (int) fg, (int) bg));
- result = OK;
- }
- returnCode(result);
-@@ -757,7 +797,7 @@
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
--pair_content(short pair, short *f, short *b)
-+pair_content(NCURSES_COLOR_T pair, NCURSES_COLOR_T *f, NCURSES_COLOR_T *b)
- {
- return NCURSES_SP_NAME(pair_content) (CURRENT_SCREEN, pair, f, b);
- }
-@@ -765,17 +805,18 @@
-
- NCURSES_EXPORT(void)
- NCURSES_SP_NAME(_nc_do_color) (NCURSES_SP_DCLx
-- short old_pair,
-- short pair,
-- bool reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_SP_OUTC outc)
- {
- #ifdef USE_TERM_DRIVER
-- CallDriver_4(SP_PARM, docolor, old_pair, pair, reverse, outc);
-+ CallDriver_4(SP_PARM, td_docolor, old_pair, pair, reverse, outc);
- #else
- NCURSES_COLOR_T fg = COLOR_DEFAULT;
- NCURSES_COLOR_T bg = COLOR_DEFAULT;
-- NCURSES_COLOR_T old_fg, old_bg;
-+ NCURSES_COLOR_T old_fg = -1;
-+ NCURSES_COLOR_T old_bg = -1;
-
- if (!ValidPair(pair)) {
- return;
-@@ -787,13 +828,14 @@
- 1, outc);
- return;
- } else if (SP_PARM != 0) {
-- pair_content((short) pair, &fg, &bg);
-+ if (pair_content((NCURSES_COLOR_T) pair, &fg, &bg) == ERR)
-+ return;
- }
- }
-
- if (old_pair >= 0
- && SP_PARM != 0
-- && pair_content(old_pair, &old_fg, &old_bg) != ERR) {
-+ && pair_content((NCURSES_COLOR_T) old_pair, &old_fg, &old_bg) != ERR) {
- if ((isDefaultColor(fg) && !isDefaultColor(old_fg))
- || (isDefaultColor(bg) && !isDefaultColor(old_bg))) {
- #if NCURSES_EXT_FUNCS
-@@ -822,9 +864,9 @@
-
- #if NCURSES_EXT_FUNCS
- if (isDefaultColor(fg))
-- fg = (short) default_fg(NCURSES_SP_ARG);
-+ fg = (NCURSES_COLOR_T) default_fg(NCURSES_SP_ARG);
- if (isDefaultColor(bg))
-- bg = (short) default_bg(NCURSES_SP_ARG);
-+ bg = (NCURSES_COLOR_T) default_bg(NCURSES_SP_ARG);
- #endif
-
- if (reverse) {
-@@ -847,7 +889,7 @@
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(void)
--_nc_do_color(short old_pair, short pair, bool reverse, NCURSES_OUTC outc)
-+_nc_do_color(int old_pair, int pair, int reverse, NCURSES_OUTC outc)
- {
- SetSafeOutcWrapper(outc);
- NCURSES_SP_NAME(_nc_do_color) (CURRENT_SCREEN,
-Index: ncurses/base/lib_colorset.c
-Prereq: 1.13
---- ncurses-5.9/ncurses/base/lib_colorset.c 2009-10-24 22:02:14.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_colorset.c 2014-02-01 22:10:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2014 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 *
-@@ -41,14 +41,14 @@
- #include <curses.priv.h>
- #include <ctype.h>
-
--MODULE_ID("$Id: lib_colorset.c,v 1.13 2009/10/24 22:02:14 tom Exp $")
-+MODULE_ID("$Id: lib_colorset.c,v 1.14 2014/02/01 22:10:42 tom Exp $")
-
- NCURSES_EXPORT(int)
--wcolor_set(WINDOW *win, short color_pair_number, void *opts)
-+wcolor_set(WINDOW *win, NCURSES_PAIRS_T color_pair_number, void *opts)
- {
- int code = ERR;
-
-- T((T_CALLED("wcolor_set(%p,%d)"), (void *) win, color_pair_number));
-+ T((T_CALLED("wcolor_set(%p,%d)"), (void *) win, (int) color_pair_number));
- if (win
- && !opts
- && (SP != 0)
-Index: ncurses/base/lib_dft_fgbg.c
-Prereq: 1.25
---- ncurses-5.9/ncurses/base/lib_dft_fgbg.c 2009-10-24 22:15:00.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_dft_fgbg.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2014 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 *
-@@ -37,7 +37,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_dft_fgbg.c,v 1.25 2009/10/24 22:15:00 tom Exp $")
-+MODULE_ID("$Id: lib_dft_fgbg.c,v 1.27 2014/03/08 20:32:59 tom Exp $")
-
- /*
- * Modify the behavior of color-pair 0 so that the library doesn't assume that
-@@ -70,7 +70,7 @@
- T((T_CALLED("assume_default_colors(%p,%d,%d)"), (void *) SP_PARM, fg, bg));
- #ifdef USE_TERM_DRIVER
- if (sp != 0)
-- code = CallDriver_2(sp, defaultcolors, fg, bg);
-+ code = CallDriver_2(sp, td_defaultcolors, fg, bg);
- #else
- if ((orig_pair || orig_colors) && !initialize_pair) {
-
-@@ -80,6 +80,7 @@
- SP_PARM->_default_bg = isDefaultColor(bg) ? COLOR_DEFAULT : (bg & C_MASK);
- if (SP_PARM->_color_pairs != 0) {
- bool save = SP_PARM->_default_color;
-+ SP_PARM->_assumed_color = TRUE;
- SP_PARM->_default_color = TRUE;
- init_pair(0, (short) fg, (short) bg);
- SP_PARM->_default_color = save;
-Index: ncurses/base/lib_driver.c
-Prereq: 1.3
---- ncurses-5.9/ncurses/base/lib_driver.c 2010-12-20 00:29:17.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_driver.c 2014-04-11 08:21:23.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2012,2014 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 *
-@@ -33,7 +33,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_driver.c,v 1.3 2010/12/20 00:29:17 tom Exp $")
-+MODULE_ID("$Id: lib_driver.c,v 1.6 2014/04/11 08:21:23 jpf Exp $")
-
- typedef struct DriverEntry {
- const char *name;
-@@ -43,9 +43,9 @@
- static DRIVER_ENTRY DriverTable[] =
- {
- #ifdef __MINGW32__
-- {"win", &_nc_WIN_DRIVER},
-+ {"win32console", &_nc_WIN_DRIVER},
- #endif
-- {"tinfo", &_nc_TINFO_DRIVER}
-+ {"tinfo", &_nc_TINFO_DRIVER} /* must be last */
- };
-
- NCURSES_EXPORT(int)
-@@ -63,9 +63,11 @@
-
- for (i = 0; i < SIZEOF(DriverTable); i++) {
- res = DriverTable[i].driver;
-- if (res->CanHandle(TCB, name, errret)) {
-- use = res;
-- break;
-+ if (strcmp(DriverTable[i].name, res->td_name(TCB)) == 0) {
-+ if (res->td_CanHandle(TCB, name, errret)) {
-+ use = res;
-+ break;
-+ }
- }
- }
- if (use != 0) {
-@@ -79,7 +81,7 @@
- NCURSES_SP_NAME(has_key) (SCREEN *sp, int keycode)
- {
- T((T_CALLED("has_key(%p, %d)"), (void *) sp, keycode));
-- returnCode(IsValidTIScreen(sp) ? CallDriver_1(sp, kyExist, keycode) : FALSE);
-+ returnCode(IsValidTIScreen(sp) ? CallDriver_1(sp, td_kyExist, keycode) : FALSE);
- }
-
- NCURSES_EXPORT(int)
-@@ -94,7 +96,7 @@
- int code = ERR;
-
- if (0 != TerminalOf(sp))
-- code = CallDriver_2(sp, print, data, len);
-+ code = CallDriver_2(sp, td_print, data, len);
- return (code);
- }
-
-@@ -112,7 +114,7 @@
- T((T_CALLED("doupdate(%p)"), (void *) sp));
-
- if (IsValidScreen(sp))
-- code = CallDriver(sp, update);
-+ code = CallDriver(sp, td_update);
-
- returnCode(code);
- }
-@@ -130,7 +132,7 @@
- TR(TRACE_CALLS | TRACE_MOVE, (T_CALLED("mvcur(%p,%d,%d,%d,%d)"),
- (void *) sp, yold, xold, ynew, xnew));
- if (HasTerminal(sp)) {
-- code = CallDriver_4(sp, hwcur, yold, xold, ynew, xnew);
-+ code = CallDriver_4(sp, td_hwcur, yold, xold, ynew, xnew);
- }
- returnCode(code);
- }
-Index: ncurses/base/lib_endwin.c
-Prereq: 1.22
---- ncurses-5.9/ncurses/base/lib_endwin.c 2009-10-24 22:02:14.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_endwin.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2014 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 *
-@@ -42,7 +42,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_endwin.c,v 1.22 2009/10/24 22:02:14 tom Exp $")
-+MODULE_ID("$Id: lib_endwin.c,v 1.23 2014/03/08 20:32:59 tom Exp $")
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(endwin) (NCURSES_SP_DCL0)
-@@ -56,8 +56,8 @@
- TERMINAL_CONTROL_BLOCK *TCB = TCBOf(SP_PARM);
-
- SP_PARM->_endwin = TRUE;
-- if (TCB && TCB->drv && TCB->drv->scexit)
-- TCB->drv->scexit(SP_PARM);
-+ if (TCB && TCB->drv && TCB->drv->td_scexit)
-+ TCB->drv->td_scexit(SP_PARM);
- #else
- SP_PARM->_endwin = TRUE;
- SP_PARM->_mouse_wrap(SP_PARM);
-Index: ncurses/base/lib_flash.c
-Prereq: 1.11
---- ncurses-5.9/ncurses/base/lib_flash.c 2009-10-24 22:02:14.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_flash.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2000,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -46,7 +46,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_flash.c,v 1.11 2009/10/24 22:02:14 tom Exp $")
-+MODULE_ID("$Id: lib_flash.c,v 1.14 2014/03/08 20:32:59 tom Exp $")
-
- /*
- * flash()
-@@ -64,17 +64,15 @@
- T((T_CALLED("flash(%p)"), (void *) SP_PARM));
- #ifdef USE_TERM_DRIVER
- if (SP_PARM != 0)
-- res = CallDriver_1(SP_PARM, doBeepOrFlash, FALSE);
-+ res = CallDriver_1(SP_PARM, td_doBeepOrFlash, FALSE);
- #else
-- /* FIXME: should make sure that we are not in altchar mode */
-- if (flash_screen) {
-- TPUTS_TRACE("flash_screen");
-- res = putp(flash_screen);
-- _nc_flush();
-- } else if (bell) {
-- TPUTS_TRACE("bell");
-- res = putp(bell);
-- _nc_flush();
-+ if (HasTerminal(SP_PARM)) {
-+ /* FIXME: should make sure that we are not in altchar mode */
-+ if (flash_screen) {
-+ res = NCURSES_PUTP2_FLUSH("flash_screen", flash_screen);
-+ } else if (bell) {
-+ res = NCURSES_PUTP2_FLUSH("bell", bell);
-+ }
- }
- #endif
- returnCode(res);
-Index: ncurses/base/lib_freeall.c
-Prereq: 1.59
---- ncurses-5.9/ncurses/base/lib_freeall.c 2010-01-23 17:57:43.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_freeall.c 2012-11-17 23:53:03.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -39,7 +39,7 @@
- extern int malloc_errfd; /* FIXME */
- #endif
-
--MODULE_ID("$Id: lib_freeall.c,v 1.59 2010/01/23 17:57:43 tom Exp $")
-+MODULE_ID("$Id: lib_freeall.c,v 1.62 2012/11/17 23:53:03 tom Exp $")
-
- /*
- * Free all ncurses data. This is used for testing only (there's no practical
-@@ -70,19 +70,21 @@
-
- /* Delete only windows that're not a parent */
- for (each_window(SP_PARM, p)) {
-+ WINDOW *p_win = &(p->win);
- bool found = FALSE;
-
- for (each_window(SP_PARM, q)) {
-+ WINDOW *q_win = &(q->win);
- if ((p != q)
-- && (q->win._flags & _SUBWIN)
-- && (&(p->win) == q->win._parent)) {
-+ && (q_win->_flags & _SUBWIN)
-+ && (p_win == q_win->_parent)) {
- found = TRUE;
- break;
- }
- }
-
- if (!found) {
-- if (delwin(&(p->win)) != ERR)
-+ if (delwin(p_win) != ERR)
- deleted = TRUE;
- break;
- }
-@@ -100,7 +102,7 @@
-
- (void) _nc_printf_string(0, empty_va);
- #ifdef TRACE
-- (void) _nc_trace_buf(-1, 0);
-+ (void) _nc_trace_buf(-1, (size_t) 0);
- #endif
- #if USE_WIDEC_SUPPORT
- FreeIfNeeded(_nc_wacs);
-@@ -129,8 +131,9 @@
- NCURSES_EXPORT(void)
- NCURSES_SP_NAME(_nc_free_and_exit) (NCURSES_SP_DCLx int code)
- {
-- char *last_setbuf = (SP_PARM != 0) ? SP_PARM->_setbuf : 0;
-+ char *last_buffer = (SP_PARM != 0) ? SP_PARM->out_buffer : 0;
-
-+ NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG);
- NCURSES_SP_NAME(_nc_freeall) (NCURSES_SP_ARG);
- #ifdef TRACE
- trace(0); /* close trace file, freeing its setbuf */
-@@ -139,8 +142,7 @@
- free(_nc_varargs("?", fake));
- }
- #endif
-- fclose(stdout);
-- FreeIfNeeded(last_setbuf);
-+ FreeIfNeeded(last_buffer);
- exit(code);
- }
-
-Index: ncurses/base/lib_getch.c
-Prereq: 1.121
---- ncurses-5.9/ncurses/base/lib_getch.c 2010-12-25 23:24:04.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_getch.c 2014-05-10 20:36:57.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -42,7 +42,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_getch.c,v 1.121 2010/12/25 23:24:04 tom Exp $")
-+MODULE_ID("$Id: lib_getch.c,v 1.131 2014/05/10 20:36:57 tom Exp $")
-
- #include <fifo_defs.h>
-
-@@ -124,6 +124,17 @@
- return (sp ? sp->_use_meta : 0);
- }
-
-+#ifdef USE_TERM_DRIVER
-+# ifdef __MINGW32__
-+static HANDLE
-+_nc_get_handle(int fd)
-+{
-+ intptr_t value = _get_osfhandle(fd);
-+ return (HANDLE) value;
-+}
-+# endif
-+#endif
-+
- /*
- * Check for mouse activity, returning nonzero if we find any.
- */
-@@ -133,7 +144,16 @@
- int rc;
-
- #ifdef USE_TERM_DRIVER
-- rc = TCBOf(sp)->drv->testmouse(TCBOf(sp), delay);
-+ TERMINAL_CONTROL_BLOCK *TCB = TCBOf(sp);
-+ rc = TCBOf(sp)->drv->td_testmouse(TCBOf(sp), delay EVENTLIST_2nd(evl));
-+# ifdef __MINGW32__
-+ /* if we emulate terminfo on console, we have to use the console routine */
-+ if (IsTermInfoOnConsole(sp)) {
-+ HANDLE fd = _nc_get_handle(sp->_ifd);
-+ rc = _nc_mingw_testmouse(sp, fd, delay EVENTLIST_2nd(evl));
-+ } else
-+# endif
-+ rc = TCB->drv->td_testmouse(TCB, delay EVENTLIST_2nd(evl));
- #else
- #if USE_SYSMOUSE
- if ((sp->_mouse_type == M_SYSMOUSE)
-@@ -163,7 +183,7 @@
- static NCURSES_INLINE int
- fifo_peek(SCREEN *sp)
- {
-- int ch = sp->_fifo[peek];
-+ int ch = (peek >= 0) ? sp->_fifo[peek] : ERR;
- TR(TRACE_IEVENT, ("peeking at %d", peek));
-
- p_inc();
-@@ -173,15 +193,16 @@
- static NCURSES_INLINE int
- fifo_pull(SCREEN *sp)
- {
-- int ch;
-- ch = sp->_fifo[head];
-+ int ch = (head >= 0) ? sp->_fifo[head] : ERR;
-+
- TR(TRACE_IEVENT, ("pulling %s from %d", _nc_tracechar(sp, ch), head));
-
- if (peek == head) {
- h_inc();
- peek = head;
-- } else
-+ } else {
- h_inc();
-+ }
-
- #ifdef TRACE
- if (USE_TRACEF(TRACE_IEVENT)) {
-@@ -200,7 +221,7 @@
- int mask = 0;
-
- (void) mask;
-- if (tail == -1)
-+ if (tail < 0)
- return ERR;
-
- #ifdef HIDE_EINTR
-@@ -257,10 +278,24 @@
- n = 1;
- } else
- #endif
-+#if USE_KLIBC_KBD
-+ if (NC_ISATTY(sp->_ifd) && sp->_cbreak) {
-+ ch = _read_kbd(0, 1, !sp->_raw);
-+ n = (ch == -1) ? -1 : 1;
-+ sp->_extended_key = (ch == 0);
-+ } else
-+#endif
- { /* Can block... */
- #ifdef USE_TERM_DRIVER
- int buf;
-- n = CallDriver_1(sp, read, &buf);
-+#ifdef __MINGW32__
-+ if (NC_ISATTY(sp->_ifd) && IsTermInfoOnConsole(sp) && sp->_cbreak)
-+ n = _nc_mingw_console_read(sp,
-+ _nc_get_handle(sp->_ifd),
-+ &buf);
-+ else
-+#endif
-+ n = CallDriver_1(sp, td_read, &buf);
- ch = buf;
- #else
- unsigned char c2 = 0;
-@@ -270,7 +305,7 @@
- # endif
- _nc_globals.read_thread = pthread_self();
- # endif
-- n = (int) read(sp->_ifd, &c2, 1);
-+ n = (int) read(sp->_ifd, &c2, (size_t) 1);
- #if USE_PTHREADS_EINTR
- _nc_globals.read_thread = 0;
- #endif
-@@ -431,11 +466,11 @@
- /* ungetch in reverse order */
- #ifdef NCURSES_WGETCH_EVENTS
- rc = recur_wgetnstr(win, buf);
-- if (rc != KEY_EVENT)
-+ if (rc != KEY_EVENT && rc != ERR)
- safe_ungetch(sp, '\n');
- #else
-- (void) recur_wgetnstr(win, buf);
-- safe_ungetch(sp, '\n');
-+ if (recur_wgetnstr(win, buf) != ERR)
-+ safe_ungetch(sp, '\n');
- #endif
- for (bufp = buf + strlen(buf); bufp > buf; bufp--)
- safe_ungetch(sp, bufp[-1]);
-@@ -569,7 +604,7 @@
- *
- * If carriage return is defined as a function key in the
- * terminfo, e.g., kent, then Solaris may return either ^J (or ^M
-- * if nonl() is set) or KEY_ENTER depending on the echo() mode.
-+ * if nonl() is set) or KEY_ENTER depending on the echo() mode.
- * We echo before translating carriage return based on nonl(),
- * since the visual result simply moves the cursor to column 0.
- *
-@@ -709,10 +744,11 @@
-
- if (ptr->value != 0) { /* sequence terminated */
- TR(TRACE_IEVENT, ("end of sequence"));
-- if (peek == tail)
-+ if (peek == tail) {
- fifo_clear(sp);
-- else
-+ } else {
- head = peek;
-+ }
- return (ptr->value);
- }
-
-Index: ncurses/base/lib_getstr.c
-Prereq: 1.29
---- ncurses-5.9/ncurses/base/lib_getstr.c 2009-10-24 21:59:02.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_getstr.c 2011-10-22 16:31:35.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2011 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 *
-@@ -40,14 +40,14 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_getstr.c,v 1.29 2009/10/24 21:59:02 tom Exp $")
-+MODULE_ID("$Id: lib_getstr.c,v 1.30 2011/10/22 16:31:35 tom Exp $")
-
- /*
- * This wipes out the last character, no matter whether it was a tab, control
- * or other character, and handles reverse wraparound.
- */
- static char *
--WipeOut(WINDOW *win, int y, int x, char *first, char *last, bool echoed)
-+WipeOut(WINDOW *win, int y, int x, char *first, char *last, int echoed)
- {
- if (last > first) {
- *--last = '\0';
-Index: ncurses/base/lib_initscr.c
-Prereq: 1.39
---- ncurses-5.9/ncurses/base/lib_initscr.c 2009-02-14 20:55:49.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_initscr.c 2014-04-26 18:47:51.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2014 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 *
-@@ -45,7 +45,7 @@
- #include <sys/termio.h> /* needed for ISC */
- #endif
-
--MODULE_ID("$Id: lib_initscr.c,v 1.39 2009/02/14 20:55:49 tom Exp $")
-+MODULE_ID("$Id: lib_initscr.c,v 1.40 2014/04/26 18:47:51 juergen Exp $")
-
- NCURSES_EXPORT(WINDOW *)
- initscr(void)
-@@ -75,9 +75,9 @@
- * core when attempting to write to stdout. Opening /dev/tty
- * explicitly seems to fix the problem.
- */
-- if (isatty(fileno(stdout))) {
-+ if (NC_ISATTY(fileno(stdout))) {
- FILE *fp = fopen("/dev/tty", "w");
-- if (fp != 0 && isatty(fileno(fp))) {
-+ if (fp != 0 && NC_ISATTY(fileno(fp))) {
- fclose(stdout);
- dup2(fileno(fp), STDOUT_FILENO);
- stdout = fdopen(STDOUT_FILENO, "w");
-Index: ncurses/base/lib_insch.c
-Prereq: 1.32
---- ncurses-5.9/ncurses/base/lib_insch.c 2009-10-24 22:04:35.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_insch.c 2013-05-18 21:58:56.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -43,7 +43,7 @@
- #include <curses.priv.h>
- #include <ctype.h>
-
--MODULE_ID("$Id: lib_insch.c,v 1.32 2009/10/24 22:04:35 tom Exp $")
-+MODULE_ID("$Id: lib_insch.c,v 1.35 2013/05/18 21:58:56 tom Exp $")
-
- /*
- * Insert the given character, updating the current location to simplify
-@@ -53,6 +53,7 @@
- _nc_insert_ch(SCREEN *sp, WINDOW *win, chtype ch)
- {
- int code = OK;
-+ int ch8 = (int) ChCharOf(ch);
- NCURSES_CH_T wch;
- int count;
- NCURSES_CONST char *s;
-@@ -82,10 +83,9 @@
- #if USE_WIDEC_SUPPORT
- WINDOW_EXT(win, addch_used) == 0 &&
- #endif
-- is8bits(ChCharOf(ch)) &&
-- (isprint(ChCharOf(ch)) ||
-+ (isprint(ch8) ||
- (ChAttrOf(ch) & A_ALTCHARSET) ||
-- (sp != 0 && sp->_legacy_coding && !iscntrl(ChCharOf(ch))))) {
-+ (sp != 0 && sp->_legacy_coding && !iscntrl(ch8)))) {
- if (win->_curx <= win->_maxx) {
- struct ldat *line = &(win->_line[win->_cury]);
- NCURSES_CH_T *end = &(line->text[win->_curx]);
-@@ -101,8 +101,8 @@
- *temp1 = _nc_render(win, wch);
- win->_curx++;
- }
-- } else if (is8bits(ChCharOf(ch)) && iscntrl(ChCharOf(ch))) {
-- s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx ChCharOf(ch));
-+ } else if (iscntrl(ch8)) {
-+ s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx (chtype) ch8);
- while (*s != '\0') {
- code = _nc_insert_ch(sp, win, ChAttrOf(ch) | UChar(*s));
- if (code != OK)
-@@ -122,18 +122,14 @@
- code = _nc_insert_wch(win, &wch);
- } else if (count == -1) {
- /* handle EILSEQ */
-- if (is8bits(ch)) {
-- s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx ChCharOf(ch));
-- if (strlen(s) > 1) {
-- while (*s != '\0') {
-- code = _nc_insert_ch(sp, win,
-- ChAttrOf(ch) | UChar(*s));
-- if (code != OK)
-- break;
-- ++s;
-- }
-- } else {
-- code = ERR;
-+ s = NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx (chtype) ch8);
-+ if (strlen(s) > 1) {
-+ while (*s != '\0') {
-+ code = _nc_insert_ch(sp, win,
-+ ChAttrOf(ch) | UChar(*s));
-+ if (code != OK)
-+ break;
-+ ++s;
- }
- } else {
- code = ERR;
-Index: ncurses/base/lib_instr.c
-Prereq: 1.17
---- ncurses-5.9/ncurses/base/lib_instr.c 2009-10-24 22:55:45.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_instr.c 2014-02-01 22:09:27.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -41,7 +41,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_instr.c,v 1.17 2009/10/24 22:55:45 tom Exp $")
-+MODULE_ID("$Id: lib_instr.c,v 1.21 2014/02/01 22:09:27 tom Exp $")
-
- NCURSES_EXPORT(int)
- winnstr(WINDOW *win, char *str, int n)
-@@ -64,7 +64,7 @@
- cchar_t *cell = &(win->_line[row].text[col]);
- wchar_t *wch;
- attr_t attrs;
-- short pair;
-+ NCURSES_PAIRS_T pair;
- int n2;
- bool done = FALSE;
- mbstate_t state;
-@@ -78,11 +78,15 @@
- if (getcchar(cell, wch, &attrs, &pair, 0) == OK) {
-
- init_mb(state);
-- n3 = wcstombs(0, wch, 0);
-+ n3 = wcstombs(0, wch, (size_t) 0);
- if (!isEILSEQ(n3) && (n3 != 0)) {
-- if (((int) n3 + i) > n) {
-+ size_t need = n3 + 10 + (size_t) i;
-+ int have = (int) n3 + i;
-+
-+ /* check for loop-done as well as overflow */
-+ if (have > n || (int) need <= 0) {
- done = TRUE;
-- } else if ((tmp = typeCalloc(char, n3 + 10)) == 0) {
-+ } else if ((tmp = typeCalloc(char, need)) == 0) {
- done = TRUE;
- } else {
- init_mb(state);
-Index: ncurses/base/lib_mouse.c
-Prereq: 1.121
---- ncurses-5.9/ncurses/base/lib_mouse.c 2011-01-22 19:47:47.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_mouse.c 2014-11-01 12:27:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -84,7 +84,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_mouse.c,v 1.121 2011/01/22 19:47:47 tom Exp $")
-+MODULE_ID("$Id: lib_mouse.c,v 1.165 2014/11/01 12:27:59 tom Exp $")
-
- #include <tic.h>
-
-@@ -112,7 +112,7 @@
- #undef buttons /* symbol conflict in consio.h */
- #undef mouse_info /* symbol conflict in consio.h */
- #include <osreldate.h>
--#if (__FreeBSD_version >= 400017)
-+#if defined(__DragonFly_version) || (defined(__FreeBSD__) && (__FreeBSD_version >= 400017))
- #include <sys/consio.h>
- #include <sys/fbio.h>
- #else
-@@ -120,6 +120,17 @@
- #endif
- #endif /* use_SYSMOUSE */
-
-+#if USE_KLIBC_MOUSE
-+#include <sys/socket.h>
-+#define pipe(handles) socketpair(AF_LOCAL, SOCK_STREAM, 0, handles)
-+#define DosWrite(hfile, pbuffer, cbwrite, pcbactual) \
-+ write(hfile, pbuffer, cbwrite)
-+#define DosExit(action, result ) /* do nothing */
-+#define DosCreateThread(ptid, pfn, param, flag, cbStack) \
-+ (*(ptid) = _beginthread(pfn, NULL, cbStack, \
-+ (void *)param), (*(ptid) == -1))
-+#endif
-+
- #define MY_TRACE TRACE_ICALLS|TRACE_IEVENT
-
- #define MASK_RELEASE(x) (mmask_t) NCURSES_MOUSE_MASK(x, 001)
-@@ -148,6 +159,9 @@
- #define INVALID_EVENT -1
- #define NORMAL_EVENT 0
-
-+#define ValidEvent(ep) ((ep)->id != INVALID_EVENT)
-+#define Invalidate(ep) (ep)->id = INVALID_EVENT
-+
- #if USE_GPM_SUPPORT
-
- #ifndef LIBGPM_SONAME
-@@ -211,7 +225,7 @@
- char buf[6];
- unsigned long ignore;
-
-- strncpy(buf, key_mouse, 3); /* should be "\033[M" */
-+ strcpy(buf, "\033[M"); /* should be the same as key_mouse */
- buf[3] = ' ' + (button - 1) + (down ? 0 : 0x40);
- buf[4] = ' ' + x - LEFT_COL + 1;
- buf[5] = ' ' + y - TOP_ROW + 1;
-@@ -219,7 +233,11 @@
- }
-
- static void
-+#if USE_KLIBC_MOUSE
-+mouse_server(void *param)
-+#else
- mouse_server(unsigned long param)
-+#endif
- {
- SCREEN *sp = (SCREEN *) param;
- unsigned short fWait = MOU_WAIT;
-@@ -245,7 +263,8 @@
- /* sit and wait on the event queue */
- rc = MouReadEventQue(&mouev, &fWait, hmou);
- if (rc) {
-- sprintf(err, "Error reading mouse queue, rc=%lu.\r\n", rc);
-+ _nc_SPRINTF(err, _nc_SLIMIT(sizeof(err))
-+ "Error reading mouse queue, rc=%lu.\r\n", rc);
- break;
- }
- if (!sp->_emxmouse_activated)
-@@ -271,9 +290,11 @@
- finish:
- oldstate = mouev.fs;
- }
-- } else
-- sprintf(err, "Error setting event mask, buttons=%d, rc=%lu.\r\n",
-- nbuttons, rc);
-+ } else {
-+ _nc_SPRINTF(err, _nc_SLIMIT(sizeof(err))
-+ "Error setting event mask, buttons=%d, rc=%lu.\r\n",
-+ nbuttons, rc);
-+ }
-
- DosWrite(2, err, strlen(err), &rc);
- MouClose(hmou);
-@@ -355,9 +376,46 @@
- init_xterm_mouse(SCREEN *sp)
- {
- sp->_mouse_type = M_XTERM;
-+ sp->_mouse_format = MF_X10;
- sp->_mouse_xtermcap = tigetstr("XM");
-- if (!VALID_STRING(sp->_mouse_xtermcap))
-+ if (VALID_STRING(sp->_mouse_xtermcap)) {
-+ char *code = strstr(sp->_mouse_xtermcap, "[?");
-+ if (code != 0) {
-+ code += 2;
-+ while ((*code >= '0') && (*code <= '9')) {
-+ char *next = code;
-+ while ((*next >= '0') && (*next <= '9')) {
-+ ++next;
-+ }
-+ if (!strncmp(code, "1006", (size_t) (next - code))) {
-+ sp->_mouse_format = MF_SGR1006;
-+ }
-+#ifdef EXP_XTERM_1005
-+ if (!strncmp(code, "1005", (size_t) (next - code))) {
-+ sp->_mouse_format = MF_XTERM_1005;
-+ }
-+#endif
-+ if (*next == ';') {
-+ while (*next == ';') {
-+ ++next;
-+ }
-+ code = next;
-+ } else {
-+ break;
-+ }
-+ }
-+ }
-+ } else {
-+ int code = tigetnum("XM");
-+ switch (code) {
-+ case 1006:
-+ break;
-+ default:
-+ code = 1000;
-+ break;
-+ }
- sp->_mouse_xtermcap = "\033[?1000%?%p1%{1}%=%th%el%;";
-+ }
- }
- #endif
-
-@@ -367,23 +425,29 @@
- #if USE_EMX_MOUSE
- sp->_emxmouse_activated = enable;
- #else
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "xterm-mouse",
-- TPARM_1(sp->_mouse_xtermcap, enable));
-+ NCURSES_PUTP2("xterm-mouse", TPARM_1(sp->_mouse_xtermcap, enable));
- #endif
- sp->_mouse_active = enable;
- }
-
- #if USE_GPM_SUPPORT
- static bool
--allow_gpm_mouse(void)
-+allow_gpm_mouse(SCREEN *sp GCC_UNUSED)
- {
- bool result = FALSE;
-
-- /* GPM does printf's without checking if stdout is a terminal */
-- if (isatty(fileno(stdout))) {
-- char *list = getenv("NCURSES_GPM_TERMS");
-- char *env = getenv("TERM");
-+#if USE_WEAK_SYMBOLS
-+ /* Danger Robinson: do not use dlopen for libgpm if already loaded */
-+ if ((Gpm_Wgetch)) {
-+ if (!sp->_mouse_gpm_loaded) {
-+ T(("GPM library was already dlopen'd, not by us"));
-+ }
-+ } else
-+#endif
-+ /* GPM does printf's without checking if stdout is a terminal */
-+ if (NC_ISATTY(fileno(stdout))) {
-+ const char *list = getenv("NCURSES_GPM_TERMS");
-+ const char *env = getenv("TERM");
- if (list != 0) {
- if (env != 0) {
- result = _nc_name_match(list, env, "|:");
-@@ -506,7 +570,7 @@
-
- /* Try gpm first, because gpm may be configured to run in xterm */
- #if USE_GPM_SUPPORT
-- if (allow_gpm_mouse()) {
-+ if (allow_gpm_mouse(sp)) {
- if (!sp->_mouse_gpm_loaded) {
- #ifdef HAVE_LIBDL
- load_gpm_library(sp);
-@@ -544,7 +608,7 @@
- int rc;
-
- if (!sp->_emxmouse_buttons[0]) {
-- char *s = getenv("MOUSE_BUTTONS_123");
-+ const char *s = getenv("MOUSE_BUTTONS_123");
-
- sp->_emxmouse_buttons[0] = 1;
- if (s && strlen(s) >= 3) {
-@@ -580,7 +644,7 @@
- struct mouse_info the_mouse;
- char *the_device = 0;
-
-- if (isatty(sp->_ifd))
-+ if (NC_ISATTY(sp->_ifd))
- the_device = ttyname(sp->_ifd);
- if (the_device == 0)
- the_device = "/dev/tty";
-@@ -641,7 +705,7 @@
- #endif /* USE_SYSMOUSE */
-
- #ifdef USE_TERM_DRIVER
-- CallDriver(sp, initmouse);
-+ CallDriver(sp, td_initmouse);
- #else
- /* we know how to recognize mouse events under "xterm" */
- if (key_mouse != 0) {
-@@ -673,7 +737,7 @@
-
- sp->_mouse_eventp = FirstEV(sp);
- for (i = 0; i < EV_MAX; i++)
-- sp->_mouse_events[i].id = INVALID_EVENT;
-+ Invalidate(sp->_mouse_events + i);
-
- initialize_mousetype(sp);
-
-@@ -750,6 +814,7 @@
- eventp->bstate |= BUTTON3_RELEASED;
- break;
- default:
-+ eventp->bstate |= REPORT_MOUSE_POSITION;
- break;
- }
-
-@@ -818,157 +883,416 @@
- return result; /* true if we found an event */
- }
-
-+#if USE_EMX_MOUSE
-+#define PRESS_POSITION(n) \
-+ do { \
-+ eventp->bstate = MASK_PRESS(n); \
-+ sp->_mouse_bstate |= MASK_PRESS(n); \
-+ if (kbuf[0] & 0x40) { \
-+ eventp->bstate = MASK_RELEASE(n); \
-+ sp->_mouse_bstate &= ~MASK_PRESS(n); \
-+ } \
-+ } while (0)
-+#else
-+#define PRESS_POSITION(n) \
-+ do { \
-+ eventp->bstate = (mmask_t) (sp->_mouse_bstate & MASK_PRESS(n) \
-+ ? REPORT_MOUSE_POSITION \
-+ : MASK_PRESS(n)); \
-+ sp->_mouse_bstate |= MASK_PRESS(n); \
-+ } while (0)
-+#endif
-+
- static bool
--_nc_mouse_inline(SCREEN *sp)
--/* mouse report received in the keyboard stream -- parse its info */
-+handle_wheel(SCREEN *sp, MEVENT * eventp, int button, int wheel)
- {
-+ bool result = TRUE;
-+
-+ switch (button & 3) {
-+ case 0:
-+ if (wheel) {
-+ eventp->bstate = MASK_PRESS(4);
-+ /* Do not record in sp->_mouse_bstate; there will be no
-+ * corresponding release event.
-+ */
-+ } else {
-+ PRESS_POSITION(1);
-+ }
-+ break;
-+ case 1:
-+ if (wheel) {
-+#if NCURSES_MOUSE_VERSION == 2
-+ eventp->bstate = MASK_PRESS(5);
-+ /* See comment above for button 4 */
-+#else
-+ /* Ignore this event as it is not a true press of the button */
-+ eventp->bstate = REPORT_MOUSE_POSITION;
-+#endif
-+ } else {
-+ PRESS_POSITION(2);
-+ }
-+ break;
-+ case 2:
-+ PRESS_POSITION(3);
-+ break;
-+ default:
-+ result = FALSE;
-+ break;
-+ }
-+ return result;
-+}
-+
-+static bool
-+decode_X10_bstate(SCREEN *sp, MEVENT * eventp, unsigned intro)
-+{
-+ bool result;
- int b;
-- bool result = FALSE;
-- MEVENT *eventp = sp->_mouse_eventp;
-
-- TR(MY_TRACE, ("_nc_mouse_inline() called"));
-+ eventp->bstate = 0;
-
-- if (sp->_mouse_type == M_XTERM) {
-- unsigned char kbuf[4];
-- mmask_t prev;
-- size_t grabbed;
-- int res;
--
-- /* This code requires that your xterm entry contain the kmous
-- * capability and that it be set to the \E[M documented in the
-- * Xterm Control Sequences reference. This is how we
-- * arrange for mouse events to be reported via a KEY_MOUSE
-- * return value from wgetch(). After this value is received,
-- * _nc_mouse_inline() gets called and is immediately
-- * responsible for parsing the mouse status information
-- * following the prefix.
-- *
-- * The following quotes from the ctrlseqs.ms document in the
-- * X distribution, describing the X mouse tracking feature:
-- *
-- * Parameters for all mouse tracking escape sequences
-- * generated by xterm encode numeric parameters in a single
-- * character as value+040. For example, ! is 1.
-- *
-- * On button press or release, xterm sends ESC [ M CbCxCy.
-- * The low two bits of Cb encode button information: 0=MB1
-- * pressed, 1=MB2 pressed, 2=MB3 pressed, 3=release. The
-- * upper bits encode what modifiers were down when the
-- * button was pressed and are added together. 4=Shift,
-- * 8=Meta, 16=Control. Cx and Cy are the x and y coordinates
-- * of the mouse event. The upper left corner is (1,1).
-- *
-- * (End quote) By the time we get here, we've eaten the
-- * key prefix. FYI, the loop below is necessary because
-- * mouse click info isn't guaranteed to present as a
-- * single clist item.
-- *
-- * Wheel mice may return buttons 4 and 5 when the wheel is turned.
-- * We encode those as button presses.
-+ if (!handle_wheel(sp, eventp, (int) intro, (intro & 96) == 96)) {
-+ /*
-+ * Release events aren't reported for individual buttons, just for
-+ * the button set as a whole. However, because there are normally
-+ * no mouse events under xterm that intervene between press and
-+ * release, we can infer the button actually released by looking at
-+ * the previous event.
- */
-+ if (sp->_mouse_bstate & BUTTON_PRESSED) {
-+ eventp->bstate = BUTTON_RELEASED;
-+ for (b = 1; b <= MAX_BUTTONS; ++b) {
-+ if (!(sp->_mouse_bstate & MASK_PRESS(b)))
-+ eventp->bstate &= ~MASK_RELEASE(b);
-+ }
-+ sp->_mouse_bstate = 0;
-+ } else {
-+ /*
-+ * xterm will return a stream of release-events to let the
-+ * application know where the mouse is going, if private mode
-+ * 1002 or 1003 is enabled.
-+ */
-+ eventp->bstate = REPORT_MOUSE_POSITION;
-+ }
-+ }
-+
-+ if (intro & 4) {
-+ eventp->bstate |= BUTTON_SHIFT;
-+ }
-+ if (intro & 8) {
-+ eventp->bstate |= BUTTON_ALT;
-+ }
-+ if (intro & 16) {
-+ eventp->bstate |= BUTTON_CTRL;
-+ }
-+ result = (eventp->bstate & REPORT_MOUSE_POSITION) ? TRUE : FALSE;
-+ return result;
-+}
-+
-+/* This code requires that your xterm entry contain the kmous capability and
-+ * that it be set to the \E[M documented in the Xterm Control Sequences
-+ * reference. This is how we arrange for mouse events to be reported via a
-+ * KEY_MOUSE return value from wgetch(). After this value is received,
-+ * _nc_mouse_inline() gets called and is immediately responsible for parsing
-+ * the mouse status information following the prefix.
-+ *
-+ * The following quotes from the ctlseqs.ms document in the XTerm distribution,
-+ * describing the mouse tracking feature:
-+ *
-+ * Parameters for all mouse tracking escape sequences generated by xterm encode
-+ * numeric parameters in a single character as value+040. For example, ! is
-+ * 1.
-+ *
-+ * On button press or release, xterm sends ESC [ M CbCxCy. The low two bits of
-+ * Cb encode button information: 0=MB1 pressed, 1=MB2 pressed, 2=MB3 pressed,
-+ * 3=release. The upper bits encode what modifiers were down when the button
-+ * was pressed and are added together. 4=Shift, 8=Meta, 16=Control. Cx and Cy
-+ * are the x and y coordinates of the mouse event. The upper left corner is
-+ * (1,1).
-+ *
-+ * (End quote) By the time we get here, we've eaten the key prefix. FYI, the
-+ * loop below is necessary because mouse click info isn't guaranteed to present
-+ * as a single clist item.
-+ *
-+ * Wheel mice may return buttons 4 and 5 when the wheel is turned. We encode
-+ * those as button presses.
-+ */
-+static bool
-+decode_xterm_X10(SCREEN *sp, MEVENT * eventp)
-+{
-+ unsigned char kbuf[4];
-+ size_t grabbed;
-+ int res;
-+ bool result;
-+
- # if USE_PTHREADS_EINTR
- # if USE_WEAK_SYMBOLS
-- if ((pthread_self) && (pthread_kill) && (pthread_equal))
-+ if ((pthread_self) && (pthread_kill) && (pthread_equal))
- # endif
-- _nc_globals.read_thread = pthread_self();
-+ _nc_globals.read_thread = pthread_self();
- # endif
-- for (grabbed = 0; grabbed < 3; grabbed += (size_t) res) {
-+ for (grabbed = 0; grabbed < 3; grabbed += (size_t) res) {
-
-- /* For VIO mouse we add extra bit 64 to disambiguate button-up. */
-+ /* For VIO mouse we add extra bit 64 to disambiguate button-up. */
-+ res = (int) read(
- #if USE_EMX_MOUSE
-- res = (int) read(M_FD(sp) >= 0 ? M_FD(sp) : sp->_ifd, &kbuf, 3);
-+ (M_FD(sp) >= 0) ? M_FD(sp) : sp->_ifd,
- #else
-- res = (int) read(sp->_ifd, kbuf + grabbed, 3 - grabbed);
-+ sp->_ifd,
- #endif
-- if (res == -1)
-- break;
-- }
-+ kbuf + grabbed, 3 - grabbed);
-+ if (res == -1)
-+ break;
-+ }
- #if USE_PTHREADS_EINTR
-- _nc_globals.read_thread = 0;
-+ _nc_globals.read_thread = 0;
- #endif
-- kbuf[3] = '\0';
-+ kbuf[3] = '\0';
-
-- TR(TRACE_IEVENT,
-- ("_nc_mouse_inline sees the following xterm data: '%s'", kbuf));
-+ TR(TRACE_IEVENT,
-+ ("_nc_mouse_inline sees the following xterm data: '%s'", kbuf));
-
-- /* there's only one mouse... */
-- eventp->id = NORMAL_EVENT;
-+ /* there's only one mouse... */
-+ eventp->id = NORMAL_EVENT;
-+
-+ result = decode_X10_bstate(sp, eventp, kbuf[0]);
-+
-+ eventp->x = (kbuf[1] - ' ') - 1;
-+ eventp->y = (kbuf[2] - ' ') - 1;
-
-- /* processing code goes here */
-- eventp->bstate = 0;
-- prev = PREV(eventp)->bstate;
-+ return result;
-+}
-+
-+#ifdef EXP_XTERM_1005
-+/*
-+ * This is identical to X10/X11 responses except that there are two UTF-8
-+ * characters storing the ordinates instead of two bytes.
-+ */
-+static bool
-+decode_xterm_1005(SCREEN *sp, MEVENT * eventp)
-+{
-+ char kbuf[80];
-+ size_t grabbed;
-+ size_t limit = (sizeof(kbuf) - 1);
-+ unsigned coords[2];
-+ int res;
-+ bool result;
-+
-+ coords[0] = 0;
-+ coords[1] = 0;
-+
-+# if USE_PTHREADS_EINTR
-+# if USE_WEAK_SYMBOLS
-+ if ((pthread_self) && (pthread_kill) && (pthread_equal))
-+# endif
-+ _nc_globals.read_thread = pthread_self();
-+# endif
-+ for (grabbed = 0; grabbed < limit;) {
-
-+ res = (int) read(
- #if USE_EMX_MOUSE
--#define PRESS_POSITION(n) \
-- eventp->bstate = MASK_PRESS(n); \
-- if (kbuf[0] & 0x40) \
-- eventp->bstate = MASK_RELEASE(n)
-+ (M_FD(sp) >= 0) ? M_FD(sp) : sp->_ifd,
- #else
--#define PRESS_POSITION(n) \
-- eventp->bstate = (mmask_t) (prev & MASK_PRESS(n) \
-- ? REPORT_MOUSE_POSITION \
-- : MASK_PRESS(n))
-+ sp->_ifd,
- #endif
--
-- switch (kbuf[0] & 0x3) {
-- case 0x0:
-- if (kbuf[0] & 64)
-- eventp->bstate = MASK_PRESS(4);
-- else
-- PRESS_POSITION(1);
-+ kbuf + grabbed, 1);
-+ if (res == -1)
- break;
-+ grabbed += (size_t) res;
-+ if (grabbed > 1) {
-+ size_t check = 1;
-+ int n;
-+ int rc;
-+ for (n = 0; n < 2; ++n) {
-+ if (check >= grabbed)
-+ break;
-+ rc = _nc_conv_to_utf32(&coords[n], kbuf + check, (unsigned)
-+ (grabbed - check));
-+ if (!rc)
-+ break;
-+ check += (size_t) rc;
-+ }
-+ if (n >= 2)
-+ break;
-+ }
-+ }
-+#if USE_PTHREADS_EINTR
-+ _nc_globals.read_thread = 0;
-+#endif
-
-- case 0x1:
--#if NCURSES_MOUSE_VERSION == 2
-- if (kbuf[0] & 64)
-- eventp->bstate = MASK_PRESS(5);
-- else
-+ TR(TRACE_IEVENT,
-+ ("_nc_mouse_inline sees the following xterm data: %s",
-+ _nc_visbufn(kbuf, (int) grabbed)));
-+
-+ /* there's only one mouse... */
-+ eventp->id = NORMAL_EVENT;
-+
-+ result = decode_X10_bstate(sp, eventp, UChar(kbuf[0]));
-+
-+ eventp->x = (int) (coords[0] - ' ') - 1;
-+ eventp->y = (int) (coords[1] - ' ') - 1;
-+
-+ return result;
-+}
-+#endif /* EXP_XTERM_1005 */
-+
-+/*
-+ * ECMA-48 section 5.4
-+ */
-+#define isInter(c) ((c) >= 0x20 && (c) <= 0x2f)
-+#define isParam(c) ((c) >= 0x30 && (c) <= 0x3f)
-+#define isFinal(c) ((c) >= 0x40 && (c) <= 0x7e)
-+
-+#define MAX_PARAMS 9
-+
-+typedef struct {
-+ int nerror; /* nonzero if there are unexpected chars */
-+ int nparam; /* number of numeric parameters */
-+ int params[MAX_PARAMS];
-+ int final; /* the final-character */
-+} SGR_DATA;
-+
-+static bool
-+read_SGR(SCREEN *sp, SGR_DATA * result)
-+{
-+ char kbuf[80]; /* bigger than any possible mouse response */
-+ int grabbed = 0;
-+ int res;
-+ int ch = 0;
-+ int now = -1;
-+ int marker = 1;
-+
-+ memset(result, 0, sizeof(*result));
-+# if USE_PTHREADS_EINTR
-+# if USE_WEAK_SYMBOLS
-+ if ((pthread_self) && (pthread_kill) && (pthread_equal))
-+# endif
-+ _nc_globals.read_thread = pthread_self();
-+# endif
-+ do {
-+ res = (int) read(
-+#if USE_EMX_MOUSE
-+ (M_FD(sp) >= 0) ? M_FD(sp) : sp->_ifd,
-+#else
-+ sp->_ifd,
- #endif
-- PRESS_POSITION(2);
-+ kbuf + grabbed, 1);
-+ if (res == -1)
- break;
--
-- case 0x2:
-- PRESS_POSITION(3);
-+ if ((grabbed + 3) >= (int) sizeof(kbuf)) {
-+ result->nerror++;
- break;
--
-- case 0x3:
-- /*
-- * Release events aren't reported for individual buttons, just for
-- * the button set as a whole. However, because there are normally
-- * no mouse events under xterm that intervene between press and
-- * release, we can infer the button actually released by looking at
-- * the previous event.
-- */
-- if (prev & (BUTTON_PRESSED | BUTTON_RELEASED)) {
-- eventp->bstate = BUTTON_RELEASED;
-- for (b = 1; b <= MAX_BUTTONS; ++b) {
-- if (!(prev & MASK_PRESS(b)))
-- eventp->bstate &= ~MASK_RELEASE(b);
-- }
-- } else {
-+ }
-+ ch = UChar(kbuf[grabbed]);
-+ kbuf[grabbed + 1] = 0;
-+ switch (ch) {
-+ case '0':
-+ case '1':
-+ case '2':
-+ case '3':
-+ case '4':
-+ case '5':
-+ case '6':
-+ case '7':
-+ case '8':
-+ case '9':
-+ if (marker) {
-+ ++now;
-+ result->nparam = (now + 1);
-+ }
-+ marker = 0;
-+ result->params[now] = (result->params[now] * 10) + (ch - '0');
-+ break;
-+ case ';':
-+ if (marker) {
-+ ++now;
-+ result->nparam = (now + 1);
-+ }
-+ marker = 1;
-+ break;
-+ default:
-+ if (ch < 32 || ch > 126) {
- /*
-- * XFree86 xterm will return a stream of release-events to
-- * let the application know where the mouse is going, if the
-- * private mode 1002 or 1003 is enabled.
-+ * Technically other characters could be interspersed in the
-+ * response. Ignore those for now.
- */
-- eventp->bstate = REPORT_MOUSE_POSITION;
-+ result->nerror++;
-+ continue;
-+ } else if (isFinal(ch)) {
-+ if (marker) {
-+ result->nparam++;
-+ }
-+ result->final = ch;
-+ } else {
-+ result->nerror++;
- }
- break;
- }
-- result = (eventp->bstate & REPORT_MOUSE_POSITION) ? TRUE : FALSE;
-+ ++grabbed;
-+ } while (!isFinal(ch));
-+#if USE_PTHREADS_EINTR
-+ _nc_globals.read_thread = 0;
-+#endif
-
-- if (kbuf[0] & 4) {
-- eventp->bstate |= BUTTON_SHIFT;
-- }
-- if (kbuf[0] & 8) {
-- eventp->bstate |= BUTTON_ALT;
-+ kbuf[++grabbed] = 0;
-+ TR(TRACE_IEVENT,
-+ ("_nc_mouse_inline sees the following xterm data: '%s'", kbuf));
-+ return (grabbed > 0) && (result->nerror == 0);
-+}
-+
-+static bool
-+decode_xterm_SGR1006(SCREEN *sp, MEVENT * eventp)
-+{
-+ SGR_DATA data;
-+ bool result = FALSE;
-+ if (read_SGR(sp, &data)) {
-+ int b = data.params[0];
-+ int b3 = 1 + (b & 3);
-+
-+ result = TRUE;
-+ eventp->id = NORMAL_EVENT;
-+ if (data.final == 'M') {
-+ (void) handle_wheel(sp, eventp, b, (b & 64) == 64);
-+ } 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);
-+ if (sp->_mouse_bstate & pressed) {
-+ eventp->bstate = release;
-+ sp->_mouse_bstate &= ~pressed;
-+ } else {
-+ eventp->bstate = REPORT_MOUSE_POSITION;
-+ }
- }
-- if (kbuf[0] & 16) {
-- eventp->bstate |= BUTTON_CTRL;
-+ result = (eventp->bstate & REPORT_MOUSE_POSITION) ? TRUE : FALSE;
-+ eventp->x = (data.params[1] ? (data.params[1] - 1) : 0);
-+ eventp->y = (data.params[2] ? (data.params[2] - 1) : 0);
-+ }
-+ return result;
-+}
-+
-+static bool
-+_nc_mouse_inline(SCREEN *sp)
-+/* mouse report received in the keyboard stream -- parse its info */
-+{
-+ bool result = FALSE;
-+ MEVENT *eventp = sp->_mouse_eventp;
-+
-+ TR(MY_TRACE, ("_nc_mouse_inline() called"));
-+
-+ if (sp->_mouse_type == M_XTERM) {
-+ switch (sp->_mouse_format) {
-+ case MF_X10:
-+ result = decode_xterm_X10(sp, eventp);
-+ break;
-+ case MF_SGR1006:
-+ result = decode_xterm_SGR1006(sp, eventp);
-+ break;
-+#ifdef EXP_XTERM_1005
-+ case MF_XTERM_1005:
-+ result = decode_xterm_1005(sp, eventp);
-+ break;
-+#endif
- }
-
-- eventp->x = (kbuf[1] - ' ') - 1;
-- eventp->y = (kbuf[2] - ' ') - 1;
- TR(MY_TRACE,
- ("_nc_mouse_inline: primitive mouse-event %s has slot %ld",
- _nc_tracemouse(sp, eventp),
-@@ -976,16 +1300,30 @@
-
- /* bump the next-free pointer into the circular list */
- sp->_mouse_eventp = NEXT(eventp);
--#if 0 /* this return would be needed for QNX's mods to lib_getch.c */
-- return (TRUE);
--#endif
-+
-+ if (!result) {
-+ /* If this event is from a wheel-mouse, treat it like position
-+ * reports and avoid waiting for the release-events which will
-+ * never come.
-+ */
-+ if (eventp->bstate & BUTTON_PRESSED) {
-+ int b;
-+
-+ for (b = 4; b <= MAX_BUTTONS; ++b) {
-+ if ((eventp->bstate & MASK_PRESS(b))) {
-+ result = TRUE;
-+ break;
-+ }
-+ }
-+ }
-+ }
- }
-
- return (result);
- }
-
- static void
--mouse_activate(SCREEN *sp, bool on)
-+mouse_activate(SCREEN *sp, int on)
- {
- if (!on && !sp->_mouse_initialized)
- return;
-@@ -994,7 +1332,7 @@
- return;
-
- if (on) {
--
-+ sp->_mouse_bstate = 0;
- switch (sp->_mouse_type) {
- case M_XTERM:
- #if NCURSES_EXT_FUNCS
-@@ -1074,10 +1412,13 @@
- /* parse a run of atomic mouse events into a gesture */
- {
- MEVENT *eventp = sp->_mouse_eventp;
-- MEVENT *ep, *runp, *next, *prev = PREV(eventp);
-+ MEVENT *next, *ep;
-+ MEVENT *first_valid = NULL;
-+ MEVENT *first_invalid = NULL;
- int n;
- int b;
- bool merge;
-+ bool endLoop;
-
- TR(MY_TRACE, ("_nc_mouse_parse(%d) called", runcount));
-
-@@ -1094,7 +1435,8 @@
- *
- * It's possible that the run may not resolve to a single event (for
- * example, if the user quadruple-clicks). If so, leading events
-- * in the run are ignored.
-+ * in the run are ignored if user does not call getmouse in a loop (getting
-+ * them from newest to older).
- *
- * Note that this routine is independent of the format of the specific
- * format of the pointing-device's reports. We can use it to parse
-@@ -1102,79 +1444,110 @@
- * button basis, as long as the device-dependent mouse code puts stuff
- * on the queue in MEVENT format.
- */
-- if (runcount == 1) {
-- TR(MY_TRACE,
-- ("_nc_mouse_parse: returning simple mouse event %s at slot %ld",
-- _nc_tracemouse(sp, prev),
-- (long) IndexEV(sp, prev)));
-- return (prev->id >= NORMAL_EVENT)
-- ? ((prev->bstate & sp->_mouse_mask) ? TRUE : FALSE)
-- : FALSE;
-- }
-
-- /* find the start of the run */
-- runp = eventp;
-- for (n = runcount; n > 0; n--) {
-- runp = PREV(runp);
-+ /*
-+ * Reset all events that were not set, in case the user sometimes calls
-+ * getmouse only once and other times until there are no more events in
-+ * queue.
-+ *
-+ * This also allows reaching the beginning of the run.
-+ */
-+ ep = eventp;
-+ for (n = runcount; n < EV_MAX; n++) {
-+ Invalidate(ep);
-+ ep = NEXT(ep);
- }
-
- #ifdef TRACE
- if (USE_TRACEF(TRACE_IEVENT)) {
- _trace_slot(sp, "before mouse press/release merge:");
- _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d",
-- RunParams(sp, eventp, runp),
-+ RunParams(sp, eventp, ep),
- runcount);
- _nc_unlock_global(tracef);
- }
- #endif /* TRACE */
-
- /* first pass; merge press/release pairs */
-- do {
-- merge = FALSE;
-- for (ep = runp; (next = NEXT(ep)) != eventp; ep = next) {
-+ endLoop = FALSE;
-+ while (!endLoop) {
-+ next = NEXT(ep);
-+ if (next == eventp) {
-+ /* Will end the loop, but compact before */
-+ endLoop = TRUE;
-+ } else {
-
- #define MASK_CHANGED(x) (!(ep->bstate & MASK_PRESS(x)) \
- == !(next->bstate & MASK_RELEASE(x)))
-
-- if (ep->x == next->x && ep->y == next->y
-+ if (ValidEvent(ep) && ValidEvent(next)
-+ && ep->x == next->x && ep->y == next->y
- && (ep->bstate & BUTTON_PRESSED)
-- && MASK_CHANGED(1)
-- && MASK_CHANGED(2)
-- && MASK_CHANGED(3)
-- && MASK_CHANGED(4)
--#if NCURSES_MOUSE_VERSION == 2
-- && MASK_CHANGED(5)
--#endif
-- ) {
-+ && (!(next->bstate & BUTTON_PRESSED))) {
-+ bool changed = TRUE;
-+
- for (b = 1; b <= MAX_BUTTONS; ++b) {
-- if ((sp->_mouse_mask & MASK_CLICK(b))
-- && (ep->bstate & MASK_PRESS(b))) {
-- ep->bstate &= ~MASK_PRESS(b);
-- ep->bstate |= MASK_CLICK(b);
-- merge = TRUE;
-+ if (!MASK_CHANGED(b)) {
-+ changed = FALSE;
-+ break;
-+ }
-+ }
-+
-+ if (changed) {
-+ merge = FALSE;
-+ for (b = 1; b <= MAX_BUTTONS; ++b) {
-+ if ((sp->_mouse_mask & MASK_CLICK(b))
-+ && (ep->bstate & MASK_PRESS(b))) {
-+ next->bstate &= ~MASK_RELEASE(b);
-+ next->bstate |= MASK_CLICK(b);
-+ merge = TRUE;
-+ }
-+ }
-+ if (merge) {
-+ Invalidate(ep);
- }
- }
-- if (merge)
-- next->id = INVALID_EVENT;
- }
- }
-- } while
-- (merge);
-
-+ /* Compact valid events */
-+ if (!ValidEvent(ep)) {
-+ if ((first_valid != NULL) && (first_invalid == NULL)) {
-+ first_invalid = ep;
-+ }
-+ } else {
-+ if (first_valid == NULL) {
-+ first_valid = ep;
-+ } else if (first_invalid != NULL) {
-+ *first_invalid = *ep;
-+ Invalidate(ep);
-+ first_invalid = NEXT(first_invalid);
-+ }
-+ }
-+
-+ ep = next;
-+ }
-+
-+ if (first_invalid != NULL) {
-+ eventp = first_invalid;
-+ }
- #ifdef TRACE
- if (USE_TRACEF(TRACE_IEVENT)) {
- _trace_slot(sp, "before mouse click merge:");
-- _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d",
-- RunParams(sp, eventp, runp),
-- runcount);
-- _nc_unlock_global(tracef);
-+ if (first_valid == NULL) {
-+ _tracef("_nc_mouse_parse: no valid event");
-+ } else {
-+ _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d",
-+ RunParams(sp, eventp, first_valid),
-+ runcount);
-+ _nc_unlock_global(tracef);
-+ }
- }
- #endif /* TRACE */
-
- /*
-- * Second pass; merge click runs. At this point, click events are
-- * each followed by one invalid event. We merge click events
-- * forward in the queue.
-+ * Second pass; merge click runs. We merge click events forward in the
-+ * queue. For example, double click can be changed to triple click.
- *
- * NOTE: There is a problem with this design! If the application
- * allows enough click events to pile up in the circular queue so
-@@ -1187,87 +1560,102 @@
- * but the timer element would have to have sub-second resolution,
- * which would get us into portability trouble.
- */
-- do {
-- MEVENT *follower;
--
-- merge = FALSE;
-- for (ep = runp; (next = NEXT(ep)) != eventp; ep = next)
-- if (ep->id != INVALID_EVENT) {
-- if (next->id != INVALID_EVENT)
-- continue;
-- follower = NEXT(next);
-- if (follower->id == INVALID_EVENT)
-- continue;
--
-- /* merge click events forward */
-- if ((ep->bstate & BUTTON_CLICKED)
-- && (follower->bstate & BUTTON_CLICKED)) {
-- for (b = 1; b <= MAX_BUTTONS; ++b) {
-- if ((sp->_mouse_mask & MASK_DOUBLE_CLICK(b))
-- && (follower->bstate & MASK_CLICK(b))) {
-- follower->bstate &= ~MASK_CLICK(b);
-- follower->bstate |= MASK_DOUBLE_CLICK(b);
-- merge = TRUE;
-- }
-+ first_invalid = NULL;
-+ endLoop = (first_valid == NULL);
-+ ep = first_valid;
-+ while (!endLoop) {
-+ next = NEXT(ep);
-+
-+ if (next == eventp) {
-+ /* Will end the loop, but check event type and compact before */
-+ endLoop = TRUE;
-+ } else if (!ValidEvent(next)) {
-+ continue;
-+ } else {
-+ /* merge click events forward */
-+ if ((ep->bstate & BUTTON_CLICKED)
-+ && (next->bstate & BUTTON_CLICKED)) {
-+ merge = FALSE;
-+ for (b = 1; b <= MAX_BUTTONS; ++b) {
-+ if ((sp->_mouse_mask & MASK_DOUBLE_CLICK(b))
-+ && (ep->bstate & MASK_CLICK(b))
-+ && (next->bstate & MASK_CLICK(b))) {
-+ next->bstate &= ~MASK_CLICK(b);
-+ next->bstate |= MASK_DOUBLE_CLICK(b);
-+ merge = TRUE;
- }
-- if (merge)
-- ep->id = INVALID_EVENT;
- }
-+ if (merge) {
-+ Invalidate(ep);
-+ }
-+ }
-
-- /* merge double-click events forward */
-- if ((ep->bstate & BUTTON_DOUBLE_CLICKED)
-- && (follower->bstate & BUTTON_CLICKED)) {
-- for (b = 1; b <= MAX_BUTTONS; ++b) {
-- if ((sp->_mouse_mask & MASK_TRIPLE_CLICK(b))
-- && (follower->bstate & MASK_CLICK(b))) {
-- follower->bstate &= ~MASK_CLICK(b);
-- follower->bstate |= MASK_TRIPLE_CLICK(b);
-- merge = TRUE;
-- }
-+ /* merge double-click events forward */
-+ if ((ep->bstate & BUTTON_DOUBLE_CLICKED)
-+ && (next->bstate & BUTTON_CLICKED)) {
-+ merge = FALSE;
-+ for (b = 1; b <= MAX_BUTTONS; ++b) {
-+ if ((sp->_mouse_mask & MASK_TRIPLE_CLICK(b))
-+ && (ep->bstate & MASK_DOUBLE_CLICK(b))
-+ && (next->bstate & MASK_CLICK(b))) {
-+ next->bstate &= ~MASK_CLICK(b);
-+ next->bstate |= MASK_TRIPLE_CLICK(b);
-+ merge = TRUE;
- }
-- if (merge)
-- ep->id = INVALID_EVENT;
-+ }
-+ if (merge) {
-+ Invalidate(ep);
- }
- }
-- } while
-- (merge);
-+ }
-
--#ifdef TRACE
-- if (USE_TRACEF(TRACE_IEVENT)) {
-- _trace_slot(sp, "before mouse event queue compaction:");
-- _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d",
-- RunParams(sp, eventp, runp),
-- runcount);
-- _nc_unlock_global(tracef);
-- }
--#endif /* TRACE */
-+ /* Discard event if it does not match event mask */
-+ if (!(ep->bstate & sp->_mouse_mask2)) {
-+ Invalidate(ep);
-+ }
-
-- /*
-- * Now try to throw away trailing events flagged invalid, or that
-- * don't match the current event mask.
-- */
-- for (; runcount; prev = PREV(eventp), runcount--)
-- if (prev->id == INVALID_EVENT || !(prev->bstate & sp->_mouse_mask)) {
-- sp->_mouse_eventp = eventp = prev;
-+ /* Compact valid events */
-+ if (!ValidEvent(ep)) {
-+ if (ep == first_valid) {
-+ first_valid = next;
-+ } else if (first_invalid == NULL) {
-+ first_invalid = ep;
-+ }
-+ } else if (first_invalid != NULL) {
-+ *first_invalid = *ep;
-+ Invalidate(ep);
-+ first_invalid = NEXT(first_invalid);
- }
-+
-+ ep = next;
-+ }
-+
-+ if (first_invalid == NULL) {
-+ first_invalid = eventp;
-+ }
-+ sp->_mouse_eventp = first_invalid;
-+
- #ifdef TRACE
-- if (USE_TRACEF(TRACE_IEVENT)) {
-- _trace_slot(sp, "after mouse event queue compaction:");
-- _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d",
-- RunParams(sp, eventp, runp),
-- runcount);
-- _nc_unlock_global(tracef);
-+ if (first_valid != NULL) {
-+ if (USE_TRACEF(TRACE_IEVENT)) {
-+ _trace_slot(sp, "after mouse event queue compaction:");
-+ _tracef("_nc_mouse_parse: run starts at %ld, ends at %ld, count %d",
-+ RunParams(sp, first_invalid, first_valid),
-+ runcount);
-+ _nc_unlock_global(tracef);
-+ }
-+ for (ep = first_valid; ep != first_invalid; ep = NEXT(ep)) {
-+ if (ValidEvent(ep))
-+ TR(MY_TRACE,
-+ ("_nc_mouse_parse: returning composite mouse event %s at slot %ld",
-+ _nc_tracemouse(sp, ep),
-+ (long) IndexEV(sp, ep)));
-+ }
- }
-- for (ep = runp; ep != eventp; ep = NEXT(ep))
-- if (ep->id != INVALID_EVENT)
-- TR(MY_TRACE,
-- ("_nc_mouse_parse: returning composite mouse event %s at slot %ld",
-- _nc_tracemouse(sp, ep),
-- (long) IndexEV(sp, ep)));
- #endif /* TRACE */
-
- /* after all this, do we have a valid event? */
-- return (PREV(eventp)->id != INVALID_EVENT);
-+ return ValidEvent(PREV(first_invalid));
- }
-
- static void
-@@ -1359,7 +1747,16 @@
- /* compute the current-event pointer */
- MEVENT *prev = PREV(eventp);
-
-- if (prev->id != INVALID_EVENT) {
-+ /*
-+ * Discard events not matching mask (there could be still some if
-+ * _nc_mouse_parse was not called, e.g., when _nc_mouse_inline returns
-+ * false).
-+ */
-+ while (ValidEvent(prev) && (!(prev->bstate & SP_PARM->_mouse_mask2))) {
-+ Invalidate(prev);
-+ prev = PREV(prev);
-+ }
-+ if (ValidEvent(prev)) {
- /* copy the event we find there */
- *aevent = *prev;
-
-@@ -1367,9 +1764,16 @@
- _nc_tracemouse(SP_PARM, prev),
- (long) IndexEV(SP_PARM, prev)));
-
-- prev->id = INVALID_EVENT; /* so the queue slot becomes free */
-- SP_PARM->_mouse_eventp = PREV(prev);
-+ Invalidate(prev); /* so the queue slot becomes free */
-+ SP_PARM->_mouse_eventp = prev;
- result = OK;
-+ } else {
-+ /* Reset the provided event */
-+ aevent->bstate = 0;
-+ Invalidate(aevent);
-+ aevent->x = 0;
-+ aevent->y = 0;
-+ aevent->z = 0;
- }
- }
- returnCode(result);
-@@ -1420,6 +1824,7 @@
- /* set the mouse event mask */
- {
- mmask_t result = 0;
-+ int b;
-
- T((T_CALLED("mousemask(%p,%#lx,%p)"),
- (void *) SP_PARM,
-@@ -1447,6 +1852,22 @@
- mouse_activate(SP_PARM, (bool) (result != 0));
-
- SP_PARM->_mouse_mask = result;
-+ SP_PARM->_mouse_mask2 = result;
-+
-+ /*
-+ * Make a mask corresponding to the states we will need to
-+ * retain (temporarily) while building up the state that the
-+ * user asked for.
-+ */
-+ for (b = 1; b <= MAX_BUTTONS; ++b) {
-+ if (SP_PARM->_mouse_mask2 & MASK_TRIPLE_CLICK(b))
-+ SP_PARM->_mouse_mask2 |= MASK_DOUBLE_CLICK(b);
-+ if (SP_PARM->_mouse_mask2 & MASK_DOUBLE_CLICK(b))
-+ SP_PARM->_mouse_mask2 |= MASK_CLICK(b);
-+ if (SP_PARM->_mouse_mask2 & MASK_CLICK(b))
-+ SP_PARM->_mouse_mask2 |= (MASK_PRESS(b) |
-+ MASK_RELEASE(b));
-+ }
- }
- }
- }
-Index: ncurses/base/lib_newterm.c
-Prereq: 1.86
---- ncurses-5.9/ncurses/base/lib_newterm.c 2010-05-20 23:25:18.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_newterm.c 2014-04-26 18:00:39.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -42,17 +42,13 @@
-
- #include <curses.priv.h>
-
--#if SVR4_TERMIO && !defined(_POSIX_SOURCE)
--#define _POSIX_SOURCE
--#endif
--
- #ifndef CUR
- #define CUR SP_TERMTYPE
- #endif
-
- #include <tic.h>
-
--MODULE_ID("$Id: lib_newterm.c,v 1.86 2010/05/20 23:25:18 tom Exp $")
-+MODULE_ID("$Id: lib_newterm.c,v 1.92 2014/04/26 18:00:39 tom Exp $")
-
- #ifdef USE_TERM_DRIVER
- #define NumLabels InfoOf(SP_PARM).numlabels
-@@ -185,7 +181,7 @@
- START_TRACE();
- T((T_CALLED("newterm(%p, \"%s\", %p,%p)"),
- (void *) SP_PARM,
-- name,
-+ (name ? name : ""),
- (void *) ofp,
- (void *) ifp));
-
-@@ -204,9 +200,6 @@
- INIT_TERM_DRIVER();
- /* this loads the capability entry, then sets LINES and COLS */
- if (
--#if NCURSES_SP_FUNCS
-- SP_PARM->_prescreen &&
--#endif
- TINFO_SETUP_TERM(&new_term, name,
- fileno(_ofp), &errret, FALSE) != ERR) {
-
-@@ -283,7 +276,8 @@
- NCURSES_SP_NAME(typeahead) (NCURSES_SP_ARGx fileno(_ifp));
- #ifdef TERMIOS
- SP_PARM->_use_meta = ((new_term->Ottyb.c_cflag & CSIZE) == CS8 &&
-- !(new_term->Ottyb.c_iflag & ISTRIP));
-+ !(new_term->Ottyb.c_iflag & ISTRIP)) ||
-+ USE_KLIBC_KBD;
- #else
- SP_PARM->_use_meta = FALSE;
- #endif
-@@ -309,8 +303,8 @@
-
- /* compute movement costs so we can do better move optimization */
- #ifdef USE_TERM_DRIVER
-- TCBOf(SP_PARM)->drv->scinit(SP_PARM);
--#else
-+ TCBOf(SP_PARM)->drv->td_scinit(SP_PARM);
-+#else /* ! USE_TERM_DRIVER */
- /*
- * Check for mismatched graphic-rendition capabilities. Most SVr4
- * terminfo trees contain entries that have rmul or rmso equated to
-@@ -323,13 +317,16 @@
- #define SGR0_TEST(mode) (mode != 0) && (exit_attribute_mode == 0 || strcmp(mode, exit_attribute_mode))
- SP_PARM->_use_rmso = SGR0_TEST(exit_standout_mode);
- SP_PARM->_use_rmul = SGR0_TEST(exit_underline_mode);
-+#if USE_ITALIC
-+ SP_PARM->_use_ritm = SGR0_TEST(exit_italics_mode);
-+#endif
-
- /* compute movement costs so we can do better move optimization */
- _nc_mvcur_init();
-
- /* initialize terminal to a sane state */
- _nc_screen_init();
--#endif
-+#endif /* USE_TERM_DRIVER */
-
- /* Initialize the terminal line settings. */
- _nc_initscr(NCURSES_SP_ARG);
-Index: ncurses/base/lib_newwin.c
-Prereq: 1.69
---- ncurses-5.9/ncurses/base/lib_newwin.c 2011-03-07 21:58:17.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_newwin.c 2011-05-28 21:32:51.000000000 +0000
-@@ -43,7 +43,7 @@
- #include <curses.priv.h>
- #include <stddef.h>
-
--MODULE_ID("$Id: lib_newwin.c,v 1.69 2011/03/07 21:58:17 tom Exp $")
-+MODULE_ID("$Id: lib_newwin.c,v 1.71 2011/05/28 21:32:51 tom Exp $")
-
- #define window_is(name) ((sp)->_##name == win)
-
-@@ -141,7 +141,11 @@
- T((T_CALLED("newwin(%p, %d,%d,%d,%d)"), (void *) SP_PARM, num_lines, num_columns,
- begy, begx));
-
-- if (begy < 0 || begx < 0 || num_lines < 0 || num_columns < 0)
-+ if (begy < 0
-+ || begx < 0
-+ || num_lines < 0
-+ || num_columns < 0
-+ || SP_PARM == 0)
- returnWin(0);
-
- if (num_lines == 0)
-@@ -235,10 +239,15 @@
- NCURSES_EXPORT(WINDOW *)
- subwin(WINDOW *w, int l, int c, int y, int x)
- {
-+ WINDOW *result = 0;
-+
- T((T_CALLED("subwin(%p, %d, %d, %d, %d)"), (void *) w, l, c, y, x));
-- T(("parent has begy = %ld, begx = %ld", (long) w->_begy, (long) w->_begx));
-+ if (w != 0) {
-+ T(("parent has begy = %ld, begx = %ld", (long) w->_begy, (long) w->_begx));
-
-- returnWin(derwin(w, l, c, y - w->_begy, x - w->_begx));
-+ result = derwin(w, l, c, y - w->_begy, x - w->_begx);
-+ }
-+ returnWin(result);
- }
-
- static bool
-Index: ncurses/base/lib_overlay.c
-Prereq: 1.29
---- ncurses-5.9/ncurses/base/lib_overlay.c 2009-10-24 23:21:31.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_overlay.c 2013-04-06 23:47:13.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2013 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 *
-@@ -40,7 +40,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_overlay.c,v 1.29 2009/10/24 23:21:31 tom Exp $")
-+MODULE_ID("$Id: lib_overlay.c,v 1.31 2013/04/06 23:47:13 tom Exp $")
-
- static int
- overlap(const WINDOW *const src, WINDOW *const dst, int const flag)
-@@ -151,7 +151,10 @@
- dminrow, dmincol,
- dmaxrow, dmaxcol, over));
-
-- if (src && dst) {
-+ if (src != 0
-+ && dst != 0
-+ && dmaxrow >= dminrow
-+ && dmaxcol >= dmincol) {
- _nc_lock_global(curses);
-
- bk = AttrOf(dst->_nc_bkgd);
-@@ -160,6 +163,7 @@
- /* make sure rectangle exists in source */
- if ((sminrow + dmaxrow - dminrow) <= (src->_maxy + 1) &&
- (smincol + dmaxcol - dmincol) <= (src->_maxx + 1)) {
-+ bool copied = FALSE;
-
- T(("rectangle exists in source"));
-
-@@ -172,10 +176,18 @@
- dy <= dmaxrow;
- sy++, dy++) {
-
-+ if (dy < 0 || sy < 0)
-+ continue;
-+
- touched = FALSE;
- for (dx = dmincol, sx = smincol;
- dx <= dmaxcol;
- sx++, dx++) {
-+
-+ if (dx < 0 || sx < 0)
-+ continue;
-+ copied = TRUE;
-+
- if (over) {
- if ((CharOf(src->_line[sy].text[sx]) != L(' ')) &&
- (!CharEq(dst->_line[dy].text[dx],
-@@ -201,7 +213,8 @@
- }
- }
- T(("finished copywin"));
-- rc = OK;
-+ if (copied)
-+ rc = OK;
- }
- }
- _nc_unlock_global(curses);
-Index: ncurses/base/lib_printw.c
-Prereq: 1.20
---- ncurses-5.9/ncurses/base/lib_printw.c 2009-10-24 22:07:03.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_printw.c 2012-09-03 17:55:28.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2012 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 @@
- ****************************************************************************/
-
- /****************************************************************************
-- * Author: Thomas E. Dickey <dickey@clark.net> 1997 *
-+ * Author: Thomas E. Dickey 1997-on *
- ****************************************************************************/
-
- /*
-@@ -39,7 +39,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_printw.c,v 1.20 2009/10/24 22:07:03 tom Exp $")
-+MODULE_ID("$Id: lib_printw.c,v 1.23 2012/09/03 17:55:28 tom Exp $")
-
- NCURSES_EXPORT(int)
- printw(const char *fmt,...)
-@@ -48,10 +48,11 @@
- int code;
-
- #ifdef TRACE
-- va_start(argp, fmt);
-+ va_list argq;
-+ va_start(argq, fmt);
- T((T_CALLED("printw(%s%s)"),
-- _nc_visbuf(fmt), _nc_varargs(fmt, argp)));
-- va_end(argp);
-+ _nc_visbuf(fmt), _nc_varargs(fmt, argq)));
-+ va_end(argq);
- #endif
-
- va_start(argp, fmt);
-@@ -68,10 +69,11 @@
- int code;
-
- #ifdef TRACE
-- va_start(argp, fmt);
-+ va_list argq;
-+ va_start(argq, fmt);
- T((T_CALLED("wprintw(%p,%s%s)"),
-- (void *) win, _nc_visbuf(fmt), _nc_varargs(fmt, argp)));
-- va_end(argp);
-+ (void *) win, _nc_visbuf(fmt), _nc_varargs(fmt, argq)));
-+ va_end(argq);
- #endif
-
- va_start(argp, fmt);
-@@ -88,10 +90,11 @@
- int code;
-
- #ifdef TRACE
-- va_start(argp, fmt);
-+ va_list argq;
-+ va_start(argq, fmt);
- T((T_CALLED("mvprintw(%d,%d,%s%s)"),
-- y, x, _nc_visbuf(fmt), _nc_varargs(fmt, argp)));
-- va_end(argp);
-+ y, x, _nc_visbuf(fmt), _nc_varargs(fmt, argq)));
-+ va_end(argq);
- #endif
-
- if ((code = move(y, x)) != ERR) {
-@@ -109,10 +112,11 @@
- int code;
-
- #ifdef TRACE
-- va_start(argp, fmt);
-+ va_list argq;
-+ va_start(argq, fmt);
- T((T_CALLED("mvwprintw(%d,%d,%p,%s%s)"),
-- y, x, (void *) win, _nc_visbuf(fmt), _nc_varargs(fmt, argp)));
-- va_end(argp);
-+ y, x, (void *) win, _nc_visbuf(fmt), _nc_varargs(fmt, argq)));
-+ va_end(argq);
- #endif
-
- if ((code = wmove(win, y, x)) != ERR) {
-Index: ncurses/base/lib_refresh.c
-Prereq: 1.44
---- ncurses-5.9/ncurses/base/lib_refresh.c 2010-12-19 01:22:58.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_refresh.c 2011-06-25 19:02:22.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2011 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 *
-@@ -42,7 +42,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_refresh.c,v 1.44 2010/12/19 01:22:58 tom Exp $")
-+MODULE_ID("$Id: lib_refresh.c,v 1.45 2011/06/25 19:02:22 Vassili.Courzakis Exp $")
-
- NCURSES_EXPORT(int)
- wrefresh(WINDOW *win)
-@@ -90,12 +90,6 @@
- #endif
-
- T((T_CALLED("wnoutrefresh(%p)"), (void *) win));
--#ifdef TRACE
-- if (USE_TRACEF(TRACE_UPDATE)) {
-- _tracedump("...win", win);
-- _nc_unlock_global(tracef);
-- }
--#endif /* TRACE */
-
- /*
- * This function will break badly if we try to refresh a pad.
-@@ -104,6 +98,13 @@
- || (win->_flags & _ISPAD))
- returnCode(ERR);
-
-+#ifdef TRACE
-+ if (USE_TRACEF(TRACE_UPDATE)) {
-+ _tracedump("...win", win);
-+ _nc_unlock_global(tracef);
-+ }
-+#endif /* TRACE */
-+
- /* put them here so "win == 0" won't break our code */
- begx = win->_begx;
- begy = win->_begy;
-Index: ncurses/base/lib_restart.c
-Prereq: 1.13
---- ncurses-5.9/ncurses/base/lib_restart.c 2009-10-24 22:47:43.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_restart.c 2012-12-08 20:40:06.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -41,11 +41,7 @@
-
- #include <curses.priv.h>
-
--#if SVR4_TERMIO && !defined(_POSIX_SOURCE)
--#define _POSIX_SOURCE
--#endif
--
--MODULE_ID("$Id: lib_restart.c,v 1.13 2009/10/24 22:47:43 tom Exp $")
-+MODULE_ID("$Id: lib_restart.c,v 1.15 2012/12/08 20:40:06 tom Exp $")
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(restartterm) (NCURSES_SP_DCLx
-@@ -55,7 +51,7 @@
- {
- int result;
- #ifdef USE_TERM_DRIVER
-- TERMINAL *new_term;
-+ TERMINAL *new_term = 0;
- #endif
-
- T((T_CALLED("restartterm(%p,%s,%d,%p)"),
-Index: ncurses/base/lib_scanw.c
-Prereq: 1.12
---- ncurses-5.9/ncurses/base/lib_scanw.c 2009-10-24 22:35:14.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_scanw.c 2011-10-22 16:31:35.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2001,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2011 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 *
-@@ -40,14 +40,14 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_scanw.c,v 1.12 2009/10/24 22:35:14 tom Exp $")
-+MODULE_ID("$Id: lib_scanw.c,v 1.13 2011/10/22 16:31:35 tom Exp $")
-
- NCURSES_EXPORT(int)
- vwscanw(WINDOW *win, NCURSES_CONST char *fmt, va_list argp)
- {
- char buf[BUFSIZ];
-
-- if (wgetnstr(win, buf, sizeof(buf) - 1) == ERR)
-+ if (wgetnstr(win, buf, (int) sizeof(buf) - 1) == ERR)
- return (ERR);
-
- return (vsscanf(buf, fmt, argp));
-Index: ncurses/base/lib_screen.c
-Prereq: 1.38
---- ncurses-5.9/ncurses/base/lib_screen.c 2009-10-24 22:08:55.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_screen.c 2011-10-22 15:03:11.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2011 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 *
-@@ -39,7 +39,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_screen.c,v 1.38 2009/10/24 22:08:55 tom Exp $")
-+MODULE_ID("$Id: lib_screen.c,v 1.41 2011/10/22 15:03:11 tom Exp $")
-
- #define MAX_SIZE 0x3fff /* 16k is big enough for a window or pad */
-
-@@ -51,8 +51,11 @@
-
- T((T_CALLED("getwin(%p)"), (void *) filep));
-
-+ if (filep == 0) {
-+ returnWin(0);
-+ }
- clearerr(filep);
-- if (fread(&tmp, 1, sizeof(WINDOW), filep) < sizeof(WINDOW)
-+ if (fread(&tmp, (size_t) 1, sizeof(WINDOW), filep) < sizeof(WINDOW)
- || ferror(filep)
- || tmp._maxy == 0
- || tmp._maxy > MAX_SIZE
-@@ -110,7 +113,7 @@
-
- for (n = 0; n <= nwin->_maxy; n++) {
- clearerr(filep);
-- if (fread(nwin->_line[n].text, 1, linesize, filep) < linesize
-+ if (fread(nwin->_line[n].text, (size_t) 1, linesize, filep) < linesize
- || ferror(filep)) {
- delwin(nwin);
- returnWin(0);
-@@ -141,7 +144,7 @@
- size_t len = (size_t) (win->_maxx + 1);
-
- clearerr(filep);
-- if (fwrite(win, sizeof(WINDOW), 1, filep) != 1
-+ if (fwrite(win, sizeof(WINDOW), (size_t) 1, filep) != 1
- || ferror(filep))
- returnCode(code);
-
-@@ -189,18 +192,20 @@
- NCURSES_EXPORT(int)
- scr_dump(const char *file)
- {
-+ int result;
- FILE *fp = 0;
-
- T((T_CALLED("scr_dump(%s)"), _nc_visbuf(file)));
-
- if (_nc_access(file, W_OK) < 0
- || (fp = fopen(file, "wb")) == 0) {
-- returnCode(ERR);
-+ result = ERR;
- } else {
- (void) putwin(newscr, fp);
- (void) fclose(fp);
-- returnCode(OK);
-+ result = OK;
- }
-+ returnCode(result);
- }
-
- NCURSES_EXPORT(int)
-Index: ncurses/base/lib_scroll.c
-Prereq: 1.28
---- ncurses-5.9/ncurses/base/lib_scroll.c 2010-12-19 01:48:09.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_scroll.c 2011-10-22 16:34:50.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2011 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 *
-@@ -43,13 +43,13 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_scroll.c,v 1.28 2010/12/19 01:48:09 tom Exp $")
-+MODULE_ID("$Id: lib_scroll.c,v 1.29 2011/10/22 16:34:50 tom Exp $")
-
- NCURSES_EXPORT(void)
- _nc_scroll_window(WINDOW *win,
- int const n,
-- NCURSES_SIZE_T const top,
-- NCURSES_SIZE_T const bottom,
-+ int const top,
-+ int const bottom,
- NCURSES_CH_T blank)
- {
- int limit;
-Index: ncurses/base/lib_set_term.c
-Prereq: 1.138
---- ncurses-5.9/ncurses/base/lib_set_term.c 2010-12-20 00:42:20.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_set_term.c 2014-11-01 12:30:47.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -47,7 +47,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_set_term.c,v 1.138 2010/12/20 00:42:20 tom Exp $")
-+MODULE_ID("$Id: lib_set_term.c,v 1.150 2014/11/01 12:30:47 tom Exp $")
-
- #ifdef USE_TERM_DRIVER
- #define MaxColors InfoOf(sp).maxcolors
-@@ -188,18 +188,7 @@
- FreeIfNeeded(sp->_acs_map);
- FreeIfNeeded(sp->_screen_acs_map);
-
-- /*
-- * If the associated output stream has been closed, we can discard the
-- * set-buffer. Limit the error check to EBADF, since fflush may fail
-- * for other reasons than trying to operate upon a closed stream.
-- */
-- if (sp->_ofp != 0
-- && sp->_setbuf != 0
-- && fflush(sp->_ofp) != 0
-- && errno == EBADF) {
-- free(sp->_setbuf);
-- }
--
-+ NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG);
- NCURSES_SP_NAME(del_curterm) (NCURSES_SP_ARGx sp->_term);
- free(sp);
-
-@@ -253,8 +242,8 @@
- }
-
- #if NCURSES_EXT_FUNCS && USE_COLORFGBG
--static char *
--extract_fgbg(char *src, int *result)
-+static const char *
-+extract_fgbg(const char *src, int *result)
- {
- char *dst = 0;
- long value = strtol(src, &dst, 0);
-@@ -272,8 +261,8 @@
- }
- #endif
-
--#define ReturnScreenError() _nc_set_screen(0); \
-- returnCode(ERR)
-+#define ReturnScreenError() { _nc_set_screen(0); \
-+ returnCode(ERR); } while (0)
-
- /* OS-independent screen initializations */
- NCURSES_EXPORT(int)
-@@ -284,7 +273,7 @@
- int slines,
- int scolumns,
- FILE *output,
-- bool filtered,
-+ int filtered,
- int slk_format)
- {
- char *env;
-@@ -362,7 +351,7 @@
- slines = 1;
- SET_LINES(slines);
- #ifdef USE_TERM_DRIVER
-- CallDriver(sp, setfilter);
-+ CallDriver(sp, td_setfilter);
- #else
- clear_screen = 0;
- cursor_down = parm_down_cursor = 0;
-@@ -383,7 +372,15 @@
- sp->_lines = (NCURSES_SIZE_T) slines;
- sp->_lines_avail = (NCURSES_SIZE_T) slines;
- sp->_columns = (NCURSES_SIZE_T) scolumns;
-+
-+ fflush(output);
-+ sp->_ofd = output ? fileno(output) : -1;
- sp->_ofp = output;
-+ sp->out_limit = (size_t) ((2 + slines) * (6 + scolumns));
-+ if ((sp->out_buffer = malloc(sp->out_limit)) == 0)
-+ sp->out_limit = 0;
-+ sp->out_inuse = 0;
-+
- SP_PRE_INIT(sp);
- SetNoPadding(sp);
-
-@@ -445,7 +442,7 @@
- * decide later if it is worth having default attributes as well.
- */
- if (getenv("COLORFGBG") != 0) {
-- char *p = getenv("COLORFGBG");
-+ const char *p = getenv("COLORFGBG");
- TR(TRACE_CHARPUT | TRACE_MOVE, ("decoding COLORFGBG %s", p));
- p = extract_fgbg(p, &(sp->_default_fg));
- p = extract_fgbg(p, &(sp->_default_bg));
-@@ -510,16 +507,7 @@
-
- if (magic_cookie_glitch > 0) { /* tvi, wyse */
-
-- sp->_xmc_triggers = sp->_ok_attributes & (
-- A_STANDOUT |
-- A_UNDERLINE |
-- A_REVERSE |
-- A_BLINK |
-- A_DIM |
-- A_BOLD |
-- A_INVIS |
-- A_PROTECT
-- );
-+ sp->_xmc_triggers = sp->_ok_attributes & XMC_CONFLICT;
- #if 0
- /*
- * We "should" treat colors as an attribute. The wyse350 (and its
-@@ -584,9 +572,13 @@
-
- NCURSES_SP_NAME(_nc_init_acs) (NCURSES_SP_ARG);
- #if USE_WIDEC_SUPPORT
-+ sp->_screen_unicode = _nc_unicode_locale();
- _nc_init_wacs();
-+ if (_nc_wacs == 0) {
-+ ReturnScreenError();
-+ }
-
-- sp->_screen_acs_fix = (_nc_unicode_locale()
-+ sp->_screen_acs_fix = (sp->_screen_unicode
- && _nc_locale_breaks_acs(sp->_term));
- #endif
- env = _nc_get_locale();
-@@ -619,6 +611,7 @@
- #endif
- #if USE_SIZECHANGE
- sp->_resize = NCURSES_SP_NAME(resizeterm);
-+ sp->_ungetch = safe_ungetch;
- #endif
-
- NewScreen(sp)->_clear = TRUE;
-@@ -695,7 +688,7 @@
- _nc_setupscreen(int slines GCC_UNUSED,
- int scolumns GCC_UNUSED,
- FILE *output,
-- bool filtered,
-+ int filtered,
- int slk_format)
- {
- SCREEN *sp = 0;
-@@ -759,6 +752,7 @@
- int line,
- int (*init) (WINDOW *, int))
- {
-+ START_TRACE();
- return NCURSES_SP_NAME(_nc_ripoffline) (NCURSES_SP_ARGx
- (line < 0) ? -1 : 1,
- init);
-Index: ncurses/base/lib_slkatr_set.c
-Prereq: 1.14
---- ncurses-5.9/ncurses/base/lib_slkatr_set.c 2009-10-24 22:47:03.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_slkatr_set.c 2014-02-01 22:10:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2014 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 *
-@@ -38,12 +38,12 @@
- */
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_slkatr_set.c,v 1.14 2009/10/24 22:47:03 tom Exp $")
-+MODULE_ID("$Id: lib_slkatr_set.c,v 1.15 2014/02/01 22:10:42 tom Exp $")
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(slk_attr_set) (NCURSES_SP_DCLx
- const attr_t attr,
-- short color_pair_number,
-+ NCURSES_PAIRS_T color_pair_number,
- void *opts)
- {
- int code = ERR;
-@@ -51,7 +51,7 @@
- T((T_CALLED("slk_attr_set(%p,%s,%d)"),
- (void *) SP_PARM,
- _traceattr(attr),
-- color_pair_number));
-+ (int) color_pair_number));
-
- if (SP_PARM != 0
- && SP_PARM->_slk != 0
-@@ -71,7 +71,7 @@
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
--slk_attr_set(const attr_t attr, short color_pair_number, void *opts)
-+slk_attr_set(const attr_t attr, NCURSES_COLOR_T color_pair_number, void *opts)
- {
- return NCURSES_SP_NAME(slk_attr_set) (CURRENT_SCREEN, attr,
- color_pair_number, opts);
-Index: ncurses/base/lib_slkcolor.c
-Prereq: 1.16
---- ncurses-5.9/ncurses/base/lib_slkcolor.c 2009-10-24 22:12:21.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_slkcolor.c 2014-02-01 22:10:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2005,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2014 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 *
-@@ -38,14 +38,14 @@
- */
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_slkcolor.c,v 1.16 2009/10/24 22:12:21 tom Exp $")
-+MODULE_ID("$Id: lib_slkcolor.c,v 1.17 2014/02/01 22:10:42 tom Exp $")
-
- NCURSES_EXPORT(int)
--NCURSES_SP_NAME(slk_color) (NCURSES_SP_DCLx short color_pair_number)
-+NCURSES_SP_NAME(slk_color) (NCURSES_SP_DCLx NCURSES_PAIRS_T color_pair_number)
- {
- int code = ERR;
-
-- T((T_CALLED("slk_color(%p,%d)"), (void *) SP_PARM, color_pair_number));
-+ T((T_CALLED("slk_color(%p,%d)"), (void *) SP_PARM, (int) color_pair_number));
-
- if (SP_PARM != 0
- && SP_PARM->_slk != 0
-@@ -61,7 +61,7 @@
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
--slk_color(short color_pair_number)
-+slk_color(NCURSES_PAIRS_T color_pair_number)
- {
- return NCURSES_SP_NAME(slk_color) (CURRENT_SCREEN, color_pair_number);
- }
-Index: ncurses/base/lib_slkrefr.c
-Prereq: 1.26
---- ncurses-5.9/ncurses/base/lib_slkrefr.c 2010-05-01 19:17:28.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_slkrefr.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -43,7 +43,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_slkrefr.c,v 1.26 2010/05/01 19:17:28 tom Exp $")
-+MODULE_ID("$Id: lib_slkrefr.c,v 1.30 2014/03/08 20:32:59 tom Exp $")
-
- #ifdef USE_TERM_DRIVER
- #define NumLabels InfoOf(SP_PARM).numlabels
-@@ -97,25 +97,25 @@
- if (slk->ent[i].visible) {
- if (numlab > 0 && SLK_STDFMT(fmt)) {
- #ifdef USE_TERM_DRIVER
-- CallDriver_2(sp, hwlabel, i + 1, slk->ent[i].form_text);
-+ CallDriver_2(sp, td_hwlabel, i + 1, slk->ent[i].form_text);
- #else
- if (i < num_labels) {
-- TPUTS_TRACE("plab_norm");
-- putp(TPARM_2(plab_norm, i + 1, slk->ent[i].form_text));
-+ NCURSES_PUTP2("plab_norm",
-+ TPARM_2(plab_norm,
-+ i + 1,
-+ slk->ent[i].form_text));
- }
- #endif
- } else {
- if (fmt == 4)
- slk_paint_info(slk->win);
- wmove(slk->win, SLK_LINES(fmt) - 1, slk->ent[i].ent_x);
-- if (sp->_slk) {
-- (void) wattrset(slk->win, AttrOf(sp->_slk->attr));
-- }
-+ (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
- natural to use the current ATTRIBUTE also
- for the label window */
-- (void) wattrset(slk->win, WINDOW_ATTRS(StdScreen(sp)));
-+ (void) wattrset(slk->win, (int) WINDOW_ATTRS(StdScreen(sp)));
- }
- }
- slk->ent[i].dirty = FALSE;
-@@ -125,14 +125,12 @@
-
- if (numlab > 0) {
- #ifdef USE_TERM_DRIVER
-- CallDriver_1(sp, hwlabelOnOff, slk->hidden ? FALSE : TRUE);
-+ CallDriver_1(sp, td_hwlabelOnOff, slk->hidden ? FALSE : TRUE);
- #else
- if (slk->hidden) {
-- TPUTS_TRACE("label_off");
-- putp(label_off);
-+ NCURSES_PUTP2("label_off", label_off);
- } else {
-- TPUTS_TRACE("label_on");
-- putp(label_on);
-+ NCURSES_PUTP2("label_on", label_on);
- }
- #endif
- }
-Index: ncurses/base/lib_slkset.c
-Prereq: 1.21
---- ncurses-5.9/ncurses/base/lib_slkset.c 2010-12-25 23:43:58.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_slkset.c 2012-12-08 23:09:25.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -44,13 +44,13 @@
- #endif
- #endif
-
--MODULE_ID("$Id: lib_slkset.c,v 1.21 2010/12/25 23:43:58 tom Exp $")
-+MODULE_ID("$Id: lib_slkset.c,v 1.24 2012/12/08 23:09:25 tom Exp $")
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(slk_set) (NCURSES_SP_DCLx int i, const char *astr, int format)
- {
- SLK *slk;
-- int offset;
-+ int offset = 0;
- int numchrs;
- int numcols;
- int limit;
-@@ -111,13 +111,12 @@
- slk->ent[i].ent_text[numchrs] = '\0';
-
- if ((slk->ent[i].form_text = (char *) _nc_doalloc(slk->ent[i].form_text,
-- (unsigned) (limit +
-- numchrs + 1))
-+ (size_t) (limit +
-+ numchrs + 1))
- ) == 0)
- returnCode(ERR);
-
- switch (format) {
-- default:
- case 0: /* left-justified */
- offset = 0;
- break;
-@@ -131,16 +130,16 @@
- if (offset <= 0)
- offset = 0;
- else
-- memset(slk->ent[i].form_text, ' ', (unsigned) offset);
-+ memset(slk->ent[i].form_text, ' ', (size_t) offset);
-
- memcpy(slk->ent[i].form_text + offset,
- slk->ent[i].ent_text,
-- (unsigned) numchrs);
-+ (size_t) numchrs);
-
- if (offset < limit) {
- memset(slk->ent[i].form_text + offset + numchrs,
- ' ',
-- (unsigned) (limit - (offset + numcols)));
-+ (size_t) (limit - (offset + numcols)));
- }
-
- slk->ent[i].form_text[numchrs - numcols + limit] = 0;
-Index: ncurses/base/lib_touch.c
-Prereq: 1.11
---- ncurses-5.9/ncurses/base/lib_touch.c 2010-12-19 01:22:58.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_touch.c 2012-06-09 20:29:33.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -43,7 +43,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_touch.c,v 1.11 2010/12/19 01:22:58 tom Exp $")
-+MODULE_ID("$Id: lib_touch.c,v 1.12 2012/06/09 20:29:33 tom Exp $")
-
- NCURSES_EXPORT(bool)
- is_linetouched(WINDOW *win, int line)
-@@ -84,7 +84,7 @@
- for (i = y; i < y + n; i++) {
- if (i > win->_maxy)
- break;
-- win->_line[i].firstchar = changed ? 0 : _NOCHANGE;
-+ win->_line[i].firstchar = (NCURSES_SIZE_T) (changed ? 0 : _NOCHANGE);
- win->_line[i].lastchar = (NCURSES_SIZE_T) (changed
- ? win->_maxx
- : _NOCHANGE);
-Index: ncurses/base/lib_ungetch.c
-Prereq: 1.14
---- ncurses-5.9/ncurses/base/lib_ungetch.c 2009-10-24 22:12:21.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/lib_ungetch.c 2012-08-04 17:38:53.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -42,7 +42,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_ungetch.c,v 1.14 2009/10/24 22:12:21 tom Exp $")
-+MODULE_ID("$Id: lib_ungetch.c,v 1.16 2012/08/04 17:38:53 tom Exp $")
-
- #include <fifo_defs.h>
-
-@@ -64,13 +64,14 @@
-
- T((T_CALLED("ungetch(%p,%s)"), (void *) sp, _nc_tracechar(sp, ch)));
-
-- if (tail != -1) {
-- if (head == -1) {
-+ if (sp != 0 && tail >= 0) {
-+ if (head < 0) {
- head = 0;
- t_inc();
- peek = tail; /* no raw keys */
-- } else
-+ } else {
- h_dec();
-+ }
-
- sp->_fifo[head] = ch;
- T(("ungetch %s ok", _nc_tracechar(sp, ch)));
-Index: ncurses/base/resizeterm.c
-Prereq: 1.43
---- ncurses-5.9/ncurses/base/resizeterm.c 2011-01-10 01:34:49.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/resizeterm.c 2014-10-13 08:56:49.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2014 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 *
-@@ -45,7 +45,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: resizeterm.c,v 1.43 2011/01/10 01:34:49 tom Exp $")
-+MODULE_ID("$Id: resizeterm.c,v 1.47 2014/10/13 08:56:49 tom Exp $")
-
- /*
- * If we're trying to be reentrant, do not want any local statics.
-@@ -347,7 +347,7 @@
- (SP_PARM == 0) ? -1 : screen_lines(SP_PARM),
- (SP_PARM == 0) ? -1 : screen_columns(SP_PARM)));
-
-- if (SP_PARM == 0) {
-+ if (SP_PARM == 0 || ToLines <= 0 || ToCols <= 0) {
- returnCode(ERR);
- }
-
-@@ -365,58 +365,71 @@
- }
- #endif
- if (ToLines > screen_lines(SP_PARM)) {
-- increase_size(NCURSES_SP_ARGx
-- myLines = ToLines, myCols, was_stolen EXTRA_ARGS);
-+ result = increase_size(NCURSES_SP_ARGx
-+ myLines = ToLines,
-+ myCols,
-+ was_stolen EXTRA_ARGS);
- CurLines = myLines;
- CurCols = myCols;
- }
-
-- if (ToCols > screen_columns(SP_PARM)) {
-- increase_size(NCURSES_SP_ARGx
-- myLines, myCols = ToCols, was_stolen EXTRA_ARGS);
-+ if ((result == OK)
-+ && (ToCols > screen_columns(SP_PARM))) {
-+ result = increase_size(NCURSES_SP_ARGx
-+ myLines,
-+ myCols = ToCols,
-+ was_stolen EXTRA_ARGS);
- CurLines = myLines;
- CurCols = myCols;
- }
-
-- if (ToLines < myLines ||
-- ToCols < myCols) {
-- decrease_size(NCURSES_SP_ARGx ToLines, ToCols, was_stolen EXTRA_ARGS);
-+ if ((result == OK)
-+ && (ToLines < myLines ||
-+ ToCols < myCols)) {
-+ result = decrease_size(NCURSES_SP_ARGx
-+ ToLines,
-+ ToCols,
-+ was_stolen EXTRA_ARGS);
- }
-
-- screen_lines(SP_PARM) = (NCURSES_SIZE_T) ToLines;
-- screen_columns(SP_PARM) = (NCURSES_SIZE_T) ToCols;
-+ if (result == OK) {
-+ screen_lines(SP_PARM) = (NCURSES_SIZE_T) ToLines;
-+ screen_columns(SP_PARM) = (NCURSES_SIZE_T) ToCols;
-
- #ifdef USE_TERM_DRIVER
-- CallDriver_2(SP_PARM, setsize, ToLines, ToCols);
-+ CallDriver_2(SP_PARM, td_setsize, ToLines, ToCols);
- #else
-- lines = (NCURSES_SIZE_T) ToLines;
-- columns = (NCURSES_SIZE_T) ToCols;
-+ lines = (NCURSES_SIZE_T) ToLines;
-+ columns = (NCURSES_SIZE_T) ToCols;
- #endif
-
-- SP_PARM->_lines_avail = (NCURSES_SIZE_T) (ToLines - was_stolen);
-+ SP_PARM->_lines_avail = (NCURSES_SIZE_T) (ToLines - was_stolen);
-
-- if (SP_PARM->oldhash) {
-- FreeAndNull(SP_PARM->oldhash);
-- }
-- if (SP_PARM->newhash) {
-- FreeAndNull(SP_PARM->newhash);
-- }
-+ if (SP_PARM->oldhash) {
-+ FreeAndNull(SP_PARM->oldhash);
-+ }
-+ if (SP_PARM->newhash) {
-+ FreeAndNull(SP_PARM->newhash);
-+ }
- #ifdef TRACE
-- if (USE_TRACEF(TRACE_UPDATE)) {
-- SET_LINES(ToLines - was_stolen);
-- SET_COLS(ToCols);
-- show_window_sizes("after");
-- _nc_unlock_global(tracef);
-- }
-+ if (USE_TRACEF(TRACE_UPDATE)) {
-+ SET_LINES(ToLines - was_stolen);
-+ SET_COLS(ToCols);
-+ show_window_sizes("after");
-+ _nc_unlock_global(tracef);
-+ }
- #endif
-+ }
- }
-
-- /*
-- * Always update LINES, to allow for call from lib_doupdate.c which
-- * needs to have the count adjusted by the stolen (ripped off) lines.
-- */
-- SET_LINES(ToLines - was_stolen);
-- SET_COLS(ToCols);
-+ if (result == OK) {
-+ /*
-+ * Always update LINES, to allow for call from lib_doupdate.c which
-+ * needs to have the count adjusted by the stolen (ripped off) lines.
-+ */
-+ SET_LINES(ToLines - was_stolen);
-+ SET_COLS(ToCols);
-+ }
-
- _nc_nonsp_unlock_global(curses);
-
-@@ -453,7 +466,7 @@
- (SP_PARM == 0) ? -1 : screen_lines(SP_PARM),
- (SP_PARM == 0) ? -1 : screen_columns(SP_PARM)));
-
-- if (SP_PARM != 0) {
-+ if (SP_PARM != 0 && ToLines > 0 && ToCols > 0) {
- result = OK;
- SP_PARM->_sig_winch = FALSE;
-
-@@ -471,7 +484,6 @@
- result = NCURSES_SP_NAME(resize_term) (NCURSES_SP_ARGx ToLines, ToCols);
-
- #if USE_SIGWINCH
-- safe_ungetch(SP_PARM, KEY_RESIZE); /* so application can know this */
- clearok(CurScreen(SP_PARM), TRUE); /* screen contents are unknown */
-
- /* ripped-off lines are a special case: if we did not lengthen
-@@ -501,6 +513,9 @@
- }
- #endif
- }
-+#if USE_SIGWINCH
-+ safe_ungetch(SP_PARM, KEY_RESIZE); /* so application can know this */
-+#endif
- }
-
- returnCode(result);
-Index: ncurses/base/safe_sprintf.c
-Prereq: 1.24
---- ncurses-5.9/ncurses/base/safe_sprintf.c 2010-06-05 22:22:27.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/safe_sprintf.c 2013-01-20 01:04:32.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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,13 +27,13 @@
- ****************************************************************************/
-
- /****************************************************************************
-- * Author: Thomas E. Dickey <dickey@clark.net> 1997 *
-+ * Author: Thomas E. Dickey 1997-on *
- ****************************************************************************/
-
- #include <curses.priv.h>
- #include <ctype.h>
-
--MODULE_ID("$Id: safe_sprintf.c,v 1.24 2010/06/05 22:22:27 tom Exp $")
-+MODULE_ID("$Id: safe_sprintf.c,v 1.27 2013/01/20 01:04:32 tom Exp $")
-
- #if USE_SAFE_SPRINTF
-
-@@ -109,12 +109,16 @@
- } else if (state == Prec) {
- prec = ival;
- }
-- sprintf(fmt_arg, "%d", ival);
-+ _nc_SPRINTF(fmt_arg,
-+ _nc_SLIMIT(sizeof(fmt_arg))
-+ "%d", ival);
- fmt_len += strlen(fmt_arg);
- if ((format = _nc_doalloc(format, fmt_len)) == 0) {
-+ free(buffer);
- return -1;
- }
-- strcpy(&format[--f], fmt_arg);
-+ --f;
-+ _nc_STRCPY(&format[f], fmt_arg, fmt_len - f);
- f = strlen(format);
- } else if (isalpha(UChar(*fmt))) {
- done = TRUE;
-@@ -185,13 +189,13 @@
- format[f] = '\0';
- switch (used) {
- case 'i':
-- sprintf(buffer, format, ival);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(length) format, ival);
- break;
- case 'f':
-- sprintf(buffer, format, fval);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(length) format, fval);
- break;
- default:
-- sprintf(buffer, format, pval);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(length) format, pval);
- break;
- }
- len += (int) strlen(buffer);
-Index: ncurses/base/vsscanf.c
-Prereq: 1.18
---- ncurses-5.9/ncurses/base/vsscanf.c 2004-04-03 20:27:02.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/vsscanf.c 2012-02-22 22:26:58.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2004,2012 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 *
-@@ -38,7 +38,7 @@
-
- #if !HAVE_VSSCANF
-
--MODULE_ID("$Id: vsscanf.c,v 1.18 2004/04/03 20:27:02 tom Exp $")
-+MODULE_ID("$Id: vsscanf.c,v 1.20 2012/02/22 22:26:58 tom Exp $")
-
- #if !(HAVE_VFSCANF || HAVE__DOSCAN)
-
-@@ -293,12 +293,12 @@
-
- /* add %n, if the format was not that */
- if (chunk != cAssigned) {
-- strcat(my_fmt, "%n");
-+ _nc_STRCAT(my_fmt, "%n", len_fmt);
- }
-
- switch (chunk) {
- case cAssigned:
-- strcat(my_fmt, "%n");
-+ _nc_STRCAT(my_fmt, "%n", len_fmt);
- pointer = &eaten;
- break;
- case cInt:
-Index: ncurses/base/wresize.c
-Prereq: 1.34
---- ncurses-5.9/ncurses/base/wresize.c 2010-06-05 22:36:26.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/base/wresize.c 2011-05-21 18:55:07.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2011 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 *
-@@ -33,7 +33,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: wresize.c,v 1.34 2010/06/05 22:36:26 tom Exp $")
-+MODULE_ID("$Id: wresize.c,v 1.35 2011/05/21 18:55:07 tom Exp $")
-
- static int
- cleanup_lines(struct ldat *data, int length)
-@@ -175,9 +175,10 @@
- for (col = 0; col <= ToCols; ++col)
- s[col] = win->_nc_bkgd;
- }
-- } else {
-- assert(pline != 0);
-+ } else if (pline != 0 && pline[win->_pary + row].text != 0) {
- s = &pline[win->_pary + row].text[win->_parx];
-+ } else {
-+ s = 0;
- }
-
- if_USE_SCROLL_HINTS(new_lines[row].oldindex = row);
-Index: ncurses/build.priv.h
-Prereq: 1.6
---- ncurses-5.9/ncurses/build.priv.h 2010-05-22 20:30:35.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/build.priv.h 2012-02-22 22:17:02.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2010,2012 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 *
-@@ -30,9 +30,8 @@
- * Author: Thomas E. Dickey 2010 *
- ****************************************************************************/
-
--
- /*
-- * $Id: build.priv.h,v 1.6 2010/05/22 20:30:35 tom Exp $
-+ * $Id: build.priv.h,v 1.9 2012/02/22 22:17:02 tom Exp $
- *
- * build.priv.h
- *
-@@ -83,6 +82,7 @@
- #define SIZEOF(v) (sizeof(v) / sizeof(v[0]))
-
- #include <nc_alloc.h>
-+#include <nc_string.h>
-
- /* declare these, to avoid needing term.h */
- #if BROKEN_LINKER || USE_REENTRANT
-Index: ncurses/curses.priv.h
-Prereq: 1.475
---- ncurses-5.9/ncurses/curses.priv.h 2011-01-22 21:10:19.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/curses.priv.h 2014-11-01 13:52:34.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -34,7 +34,7 @@
- ****************************************************************************/
-
- /*
-- * $Id: curses.priv.h,v 1.475 2011/01/22 21:10:19 tom Exp $
-+ * $Id: curses.priv.h,v 1.546 2014/11/01 13:52:34 tom Exp $
- *
- * curses.priv.h
- *
-@@ -65,6 +65,7 @@
- #include <stdlib.h>
- #include <string.h>
- #include <sys/types.h>
-+#include <sys/stat.h>
-
- #if HAVE_UNISTD_H
- #include <unistd.h>
-@@ -85,6 +86,12 @@
-
- #include <errno.h>
-
-+#if defined __hpux
-+# ifndef EILSEQ
-+# define EILSEQ 47
-+# endif
-+#endif
-+
- #ifndef PATH_MAX
- # if defined(_POSIX_PATH_MAX)
- # define PATH_MAX _POSIX_PATH_MAX
-@@ -111,6 +118,14 @@
- #define USE_FUNC_POLL 0
- #endif
-
-+#if HAVE_INTTYPES_H
-+# include <inttypes.h>
-+#else
-+# if HAVE_STDINT_H
-+# include <stdint.h>
-+# endif
-+#endif
-+
- /* include signal.h before curses.h to work-around defect in glibc 2.1.3 */
- #include <signal.h>
-
-@@ -135,6 +150,15 @@
- #define USE_EMX_MOUSE 0
- #endif
-
-+/* kLIBC keyboard/mouse support */
-+#if defined(__OS2__) && defined(__KLIBC__)
-+#define USE_KLIBC_KBD 1
-+#define USE_KLIBC_MOUSE 1
-+#else
-+#define USE_KLIBC_KBD 0
-+#define USE_KLIBC_MOUSE 0
-+#endif
-+
- #define DEFAULT_MAXCLICK 166
- #define EV_MAX 8 /* size of mouse circular event queue */
-
-@@ -156,6 +180,18 @@
- #endif
-
- /*
-+ * When building in the MSYS2 environment, the automatic discovery of
-+ * the path separator in configure doesn't work properly. So, if building
-+ * for MinGW, we enforce the correct Windows PATH separator
-+ */
-+#ifdef __MINGW32__
-+# ifdef NCURSES_PATHSEP
-+# undef NCURSES_PATHSEP
-+# endif
-+# define NCURSES_PATHSEP ';'
-+#endif
-+
-+/*
- * If desired, one can configure this, disabling environment variables that
- * point to custom terminfo/termcap locations.
- */
-@@ -192,6 +228,18 @@
- #endif
-
- /*
-+ * Either/both S_ISxxx and/or S_IFxxx are defined in sys/types.h; some systems
-+ * lack one or the other.
-+ */
-+#ifndef S_ISDIR
-+#define S_ISDIR(mode) ((mode & S_IFMT) == S_IFDIR)
-+#endif
-+
-+#ifndef S_ISREG
-+#define S_ISREG(mode) ((mode & S_IFMT) == S_IFREG)
-+#endif
-+
-+/*
- * Scroll hints are useless when hashmap is used
- */
- #if !USE_SCROLL_HINTS
-@@ -208,6 +256,8 @@
- #define if_USE_SCROLL_HINTS(stmt) /*nothing*/
- #endif
-
-+#include <nc_string.h>
-+
- /*
- * Options for terminal drivers, etc...
- */
-@@ -250,14 +300,6 @@
- * Structure for palette tables
- */
-
--typedef struct
--{
-- short red, green, blue; /* what color_content() returns */
-- short r, g, b; /* params to init_color() */
-- int init; /* true if we called init_color() */
--}
--color_t;
--
- #define MAXCOLUMNS 135
- #define MAXLINES 66
- #define FIFO_SIZE MAXCOLUMNS+2 /* for nocbreak mode input */
-@@ -272,7 +314,7 @@
- #undef _XOPEN_SOURCE_EXTENDED
- #undef _XPG5
- #define _nc_bkgd _bkgd
--#define wgetbkgrnd(win, wch) *wch = win->_bkgd
-+#define wgetbkgrnd(win, wch) ((*wch = win->_bkgd) != 0 ? OK : ERR)
- #define wbkgrnd wbkgd
- #endif
-
-@@ -282,6 +324,14 @@
-
- #include <curses.h> /* we'll use -Ipath directive to get the right one! */
-
-+typedef struct
-+{
-+ NCURSES_COLOR_T red, green, blue; /* what color_content() returns */
-+ NCURSES_COLOR_T r, g, b; /* params to init_color() */
-+ int init; /* true if we called init_color() */
-+}
-+color_t;
-+
- /*
- * If curses.h did not expose the SCREEN-functions, then we do not need the
- * parameter in the corresponding unextended functions.
-@@ -312,7 +362,7 @@
- #define HasTerminal(sp) (((sp) != 0) && (0 != ((sp)->_term)))
- #define IsValidScreen(sp) (HasTerminal(sp) && !IsPreScreen(sp))
-
--#if BROKEN_LINKER || USE_REENTRANT
-+#if USE_REENTRANT
- #define CurTerm _nc_prescreen._cur_term
- #else
- #define CurTerm cur_term
-@@ -325,6 +375,7 @@
- #endif
-
- #include <term.h>
-+#include <nc_termios.h>
-
- /*
- * Reduce dependency on cur_term global by using terminfo data from SCREEN's
-@@ -341,6 +392,16 @@
- #include <nc_tparm.h>
-
- /*
-+ * Simplify ifdef's for the "*_ATTR" macros in case italics are not configured.
-+ */
-+#ifdef A_ITALIC
-+#define USE_ITALIC 1
-+#else
-+#define USE_ITALIC 0
-+#define A_ITALIC 0
-+#endif
-+
-+/*
- * Use these macros internally, to make tracing less verbose. But leave the
- * option for compiling the tracing into the library.
- */
-@@ -365,7 +426,7 @@
- #define if_EXT_COLORS(stmt) stmt
- #define SetPair(value,p) SetPair2((value).ext_color, AttrOf(value), p)
- #define SetPair2(c,a,p) c = (p), \
-- a = (unColor2(a) | (A_COLOR & ColorPair(oldColor(c))))
-+ a = (unColor2(a) | (A_COLOR & (unsigned) ColorPair(oldColor(c))))
- #define GetPair(value) GetPair2((value).ext_color, AttrOf(value))
- #define GetPair2(c,a) ((c) ? (c) : PairNumber(a))
- #define oldColor(p) (((p) > 255) ? 255 : (p))
-@@ -373,11 +434,7 @@
- #define SET_WINDOW_PAIR(w,p) (w)->_color = (p)
- #define SameAttrOf(a,b) (AttrOf(a) == AttrOf(b) && GetPair(a) == GetPair(b))
-
--#if NCURSES_SP_FUNCS
--#define VIDATTR(sp,attr,pair) NCURSES_SP_NAME(vid_attr)(sp, attr, pair, 0)
--#else
--#define VIDATTR(sp,attr,pair) vid_attr(attr, pair, 0)
--#endif
-+#define VIDATTR(sp,attr,pair) NCURSES_SP_NAME(vid_puts)(NCURSES_SP_ARGx attr, (short) pair, 0, NCURSES_OUTC_FUNC)
-
- #else /* !NCURSES_EXT_COLORS */
-
-@@ -390,14 +447,14 @@
- WINDOW_ATTRS(w) |= (A_COLOR & (attr_t) ColorPair(p))
- #define SameAttrOf(a,b) (AttrOf(a) == AttrOf(b))
-
--#if NCURSES_SP_FUNCS
--#define VIDATTR(sp,attr,pair) NCURSES_SP_NAME(vidattr)(sp, attr)
--#else
--#define VIDATTR(sp,attr,pair) vidattr(attr)
--#endif
-+#define VIDATTR(sp,attr,pair) NCURSES_SP_NAME(vidputs)(NCURSES_SP_ARGx attr, NCURSES_OUTC_FUNC)
-
- #endif /* NCURSES_EXT_COLORS */
-
-+#define NCURSES_OUTC_FUNC NCURSES_SP_NAME(_nc_outch)
-+#define NCURSES_PUTP2(name,value) NCURSES_SP_NAME(_nc_putp)(NCURSES_SP_ARGx name, value)
-+#define NCURSES_PUTP2_FLUSH(name,value) NCURSES_SP_NAME(_nc_putp_flush)(NCURSES_SP_ARGx name, value)
-+
- #if NCURSES_NO_PADDING
- #define GetNoPadding(sp) ((sp) ? (sp)->_no_padding : _nc_prescreen._no_padding)
- #define SetNoPadding(sp) _nc_set_no_padding(sp)
-@@ -467,6 +524,9 @@
- # endif
- # define _declare(name) __extension__ extern __typeof__(name) name
- # define weak_symbol(name) _weak_pragma(name) _declare(name) __attribute__((weak))
-+#else
-+# undef USE_WEAK_SYMBOLS
-+# define USE_WEAK_SYMBOLS 0
- #endif
- #endif
-
-@@ -616,6 +676,14 @@
- #endif
- } MouseType;
-
-+typedef enum {
-+ MF_X10 = 0 /* conventional 3-byte format */
-+ , MF_SGR1006 /* xterm private mode 1006, SGR-style */
-+#ifdef EXP_XTERM_1005
-+ , MF_XTERM_1005 /* xterm UTF-8 private mode 1005 */
-+#endif
-+} MouseFormat;
-+
- /*
- * Structures for scrolling.
- */
-@@ -665,6 +733,9 @@
- #if USE_GPM_SUPPORT
- #undef buttons /* term.h defines this, and gpm uses it! */
- #include <gpm.h>
-+#if USE_WEAK_SYMBOLS
-+weak_symbol(Gpm_Wgetch);
-+#endif
-
- #ifdef HAVE_LIBDL
- /* link dynamically to GPM */
-@@ -766,17 +837,23 @@
- #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;
-
-- const char *comp_sourcename;
-+ char *comp_sourcename;
- char *comp_termtype;
-
- bool have_tic_directory;
-@@ -788,6 +865,7 @@
-
- char *first_name;
- char **keyname_table;
-+ int init_keyname;
-
- int slk_format;
-
-@@ -798,6 +876,12 @@
- 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];
-+
- #ifndef USE_SP_WINDOWLIST
- WINDOWLIST *_nc_windowlist;
- #define WindowList(sp) _nc_globals._nc_windowlist
-@@ -891,6 +975,7 @@
- const char *_tputs_trace;
- #endif
- #endif
-+ bool use_tioctl;
- } NCURSES_PRESCREEN;
-
- /*
-@@ -911,11 +996,13 @@
- */
-
- struct screen {
-- int _ifd; /* input file ptr for screen */
-+ int _ifd; /* input file descriptor for screen */
-+ int _ofd; /* output file descriptor for screen */
- FILE *_ofp; /* output file ptr for screen */
-- char *_setbuf; /* buffered I/O for output */
-+ char *out_buffer; /* output buffer */
-+ size_t out_limit; /* output buffer size */
-+ size_t out_inuse; /* output buffer current use */
- bool _filtered; /* filter() was called */
-- bool _buffered; /* setvbuf uses _setbuf data */
- bool _prescreen; /* is in prescreen phase */
- bool _use_env; /* LINES & COLS from environment? */
- int _checkfd; /* filedesc for typeahead check */
-@@ -1015,6 +1102,7 @@
- int _pair_count; /* count of color pairs */
- int _pair_limit; /* actual limit of color-pairs */
- #if NCURSES_EXT_FUNCS
-+ bool _assumed_color; /* use assumed colors */
- bool _default_color; /* use default colors */
- bool _has_sgr_39_49; /* has ECMA default color support */
- int _default_fg; /* assumed default foreground */
-@@ -1031,6 +1119,13 @@
- /* used in lib_vidattr.c */
- bool _use_rmso; /* true if we may use 'rmso' */
- bool _use_rmul; /* true if we may use 'rmul' */
-+#if USE_ITALIC
-+ bool _use_ritm; /* true if we may use 'ritm' */
-+#endif
-+
-+#if USE_KLIBC_KBD
-+ bool _extended_key; /* true if an extended key */
-+#endif
-
- /*
- * These data correspond to the state of the idcok() and idlok()
-@@ -1055,7 +1150,10 @@
- void (*_mouse_wrap) (SCREEN *);
- int _mouse_fd; /* file-descriptor, if any */
- bool _mouse_active; /* true if initialized */
-- mmask_t _mouse_mask;
-+ mmask_t _mouse_mask; /* set via mousemask() */
-+ mmask_t _mouse_mask2; /* OR's in press/release bits */
-+ mmask_t _mouse_bstate;
-+ MouseFormat _mouse_format; /* type of xterm mouse protocol */
- NCURSES_CONST char *_mouse_xtermcap; /* string to enable/disable mouse */
- MEVENT _mouse_events[EV_MAX]; /* hold the last mouse event seen */
- MEVENT *_mouse_eventp; /* next free slot in event queue */
-@@ -1102,6 +1200,7 @@
- */
- #if USE_SIZECHANGE
- int (*_resize)(NCURSES_SP_DCLx int y, int x);
-+ int (*_ungetch)(SCREEN *, int);
- #endif
-
- /*
-@@ -1120,7 +1219,6 @@
- int *_oldnum_list;
- int _oldnum_size;
-
-- bool _cleanup; /* cleanup after int/quit signal */
- NCURSES_SP_OUTC _outch; /* output handler if not putc */
-
- int _legacy_coding; /* see use_legacy_coding() */
-@@ -1158,7 +1256,10 @@
- * UTF-8, but do not permit ACS at the same time (see tty_update.c).
- */
- bool _screen_acs_fix;
-+ bool _screen_unicode;
- #endif
-+
-+ bool _use_tioctl;
- };
-
- extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain;
-@@ -1168,7 +1269,7 @@
- WINDOWLIST *next;
- SCREEN *screen; /* screen containing the window */
- WINDOW win; /* WINDOW_EXT() needs to account for offset */
--#ifdef NCURSES_WIDECHAR
-+#if NCURSES_WIDECHAR
- char addch_work[(MB_LEN_MAX * 9) + 1];
- unsigned addch_used; /* number of bytes in addch_work[] */
- int addch_x; /* x-position for addch_work[] */
-@@ -1189,7 +1290,7 @@
- sp->_endwin = TRUE; \
- sp->_cursor = -1; \
- WindowList(sp) = 0; \
-- sp->_outch = NCURSES_SP_NAME(_nc_outch); \
-+ sp->_outch = NCURSES_OUTC_FUNC; \
- sp->jump = 0 \
-
- /* usually in <limits.h> */
-@@ -1267,8 +1368,8 @@
-
- #define UChar(c) ((unsigned char)(c))
- #define UShort(c) ((unsigned short)(c))
--#define ChCharOf(c) ((c) & (chtype)A_CHARTEXT)
--#define ChAttrOf(c) ((c) & (chtype)A_ATTRIBUTES)
-+#define ChCharOf(c) ((chtype)(c) & (chtype)A_CHARTEXT)
-+#define ChAttrOf(c) ((chtype)(c) & (chtype)A_ATTRIBUTES)
-
- #ifndef MB_LEN_MAX
- #define MB_LEN_MAX 8 /* should be >= MB_CUR_MAX, but that may be a function */
-@@ -1322,9 +1423,9 @@
- #define PUTC_DATA char PUTC_buf[MB_LEN_MAX]; int PUTC_i, PUTC_n; \
- mbstate_t PUT_st; wchar_t PUTC_ch
- #define PUTC_INIT init_mb (PUT_st)
--#define PUTC(ch,b) do { if(!isWidecExt(ch)) { \
-+#define PUTC(ch) do { if(!isWidecExt(ch)) { \
- if (Charable(ch)) { \
-- fputc(CharOf(ch), b); \
-+ NCURSES_OUTC_FUNC (NCURSES_SP_ARGx CharOf(ch)); \
- COUNT_OUTCHARS(1); \
- } else { \
- PUTC_INIT; \
-@@ -1336,10 +1437,14 @@
- (ch).chars[PUTC_i], &PUT_st); \
- if (PUTC_n <= 0) { \
- if (PUTC_ch && is8bits(PUTC_ch) && PUTC_i == 0) \
-- putc(PUTC_ch,b); \
-+ NCURSES_OUTC_FUNC (NCURSES_SP_ARGx CharOf(ch)); \
- break; \
-+ } else { \
-+ int PUTC_j; \
-+ for (PUTC_j = 0; PUTC_j < PUTC_n; ++PUTC_j) { \
-+ NCURSES_OUTC_FUNC (NCURSES_SP_ARGx PUTC_buf[PUTC_j]); \
-+ } \
- } \
-- IGNORE_RC(fwrite(PUTC_buf, (unsigned) PUTC_n, 1, b)); \
- } \
- COUNT_OUTCHARS(PUTC_i); \
- } } } while (0)
-@@ -1362,11 +1467,11 @@
- AttrOf(dst) |= (attr_t) (ext + 1)
-
- #define if_WIDEC(code) code
--#define Charable(ch) ((SP_PARM != 0 && SP_PARM->_legacy_coding) \
-+#define Charable(ch) (((SP_PARM->_legacy_coding) \
- || (AttrOf(ch) & A_ALTCHARSET) \
-- || (!isWidecExt(ch) && \
-+ || (!isWidecExt(ch))) && \
- (ch).chars[1] == L'\0' && \
-- _nc_is_charable(CharOf(ch))))
-+ _nc_is_charable(CharOf(ch)))
-
- #define L(ch) L ## ch
- #else /* }{ */
-@@ -1383,8 +1488,8 @@
- #define CHDEREF(wch) wch
- #define ARG_CH_T NCURSES_CH_T
- #define CARG_CH_T NCURSES_CH_T
--#define PUTC_DATA int data = 0
--#define PUTC(ch,b) do { data = CharOf(ch); putc(data,b); } while (0)
-+#define PUTC_DATA /* nothing */
-+#define PUTC(ch) NCURSES_OUTC_FUNC (NCURSES_SP_ARGx (int) ch)
-
- #define BLANK (' '|A_NORMAL)
- #define ZEROS ('\0'|A_NORMAL)
-@@ -1412,25 +1517,25 @@
-
- #define CHANGED_CELL(line,col) \
- if (line->firstchar == _NOCHANGE) \
-- line->firstchar = line->lastchar = (NCURSES_SIZE_T) col; \
-+ line->firstchar = line->lastchar = (NCURSES_SIZE_T) (col); \
- else if ((col) < line->firstchar) \
-- line->firstchar = (NCURSES_SIZE_T) col; \
-+ line->firstchar = (NCURSES_SIZE_T) (col); \
- else if ((col) > line->lastchar) \
-- line->lastchar = (NCURSES_SIZE_T) col
-+ line->lastchar = (NCURSES_SIZE_T) (col)
-
- #define CHANGED_RANGE(line,start,end) \
- if (line->firstchar == _NOCHANGE \
- || line->firstchar > (start)) \
-- line->firstchar = (NCURSES_SIZE_T) start; \
-+ line->firstchar = (NCURSES_SIZE_T) (start); \
- if (line->lastchar == _NOCHANGE \
- || line->lastchar < (end)) \
-- line->lastchar = (NCURSES_SIZE_T) end
-+ line->lastchar = (NCURSES_SIZE_T) (end)
-
- #define CHANGED_TO_EOL(line,start,end) \
- if (line->firstchar == _NOCHANGE \
- || line->firstchar > (start)) \
-- line->firstchar = (NCURSES_SIZE_T) start; \
-- line->lastchar = (NCURSES_SIZE_T) end
-+ line->firstchar = (NCURSES_SIZE_T) (start); \
-+ line->lastchar = (NCURSES_SIZE_T) (end)
-
- #define SIZEOF(v) (sizeof(v)/sizeof(v[0]))
-
-@@ -1444,6 +1549,20 @@
- #include <nc_alloc.h>
-
- /*
-+ * Use these for tic/infocmp malloc failures. Generally the ncurses library
-+ * tries to limp along after a failure.
-+ */
-+#define TYPE_MALLOC(type, size, name) \
-+ name = typeMalloc(type, size); \
-+ if (name == 0) \
-+ _nc_err_abort(MSG_NO_MEMORY)
-+
-+#define TYPE_REALLOC(type, size, name) \
-+ name = typeRealloc(type, size, name); \
-+ if (name == 0) \
-+ _nc_err_abort(MSG_NO_MEMORY)
-+
-+/*
- * TTY bit definition for converting tabs to spaces.
- */
- #ifdef TAB3
-@@ -1506,7 +1625,8 @@
-
- #define TR(n, a) if (USE_TRACEF(n)) _nc_locked_tracef a
- #define T(a) TR(TRACE_CALLS, a)
--#define TRACE_RETURN(value,type) return _nc_retrace_##type(value)
-+#define TRACE_RETURN(value,type) return _nc_retrace_##type((type)(value))
-+#define TRACE_RETURN1(value,dst) return _nc_retrace_##dst(value)
- #define TRACE_RETURN2(value,dst,src) return _nc_retrace_##dst##_##src(value)
- #define TRACE_RETURN_SP(value,type) return _nc_retrace_##type(SP_PARM, value)
-
-@@ -1515,20 +1635,20 @@
- #define returnAttr(code) TRACE_RETURN(code,attr_t)
- #define returnBits(code) TRACE_RETURN(code,unsigned)
- #define returnBool(code) TRACE_RETURN(code,bool)
--#define returnCPtr(code) TRACE_RETURN(code,cptr)
--#define returnCVoidPtr(code) TRACE_RETURN(code,cvoid_ptr)
-+#define returnCPtr(code) TRACE_RETURN1(code,cptr)
-+#define returnCVoidPtr(code) TRACE_RETURN1(code,cvoid_ptr)
- #define returnChar(code) TRACE_RETURN(code,char)
- #define returnChtype(code) TRACE_RETURN(code,chtype)
- #define returnCode(code) TRACE_RETURN(code,int)
- #define returnIntAttr(code) TRACE_RETURN2(code,int,attr_t)
- #define returnMMask(code) TRACE_RETURN_SP(code,mmask_t)
--#define returnPtr(code) TRACE_RETURN(code,ptr)
--#define returnSP(code) TRACE_RETURN(code,sp)
-+#define returnPtr(code) TRACE_RETURN1(code,ptr)
-+#define returnSP(code) TRACE_RETURN1(code,sp)
- #define returnVoid T((T_RETURN(""))); return
--#define returnVoidPtr(code) TRACE_RETURN(code,void_ptr)
--#define returnWin(code) TRACE_RETURN(code,win)
-+#define returnVoidPtr(code) TRACE_RETURN1(code,void_ptr)
-+#define returnWin(code) TRACE_RETURN1(code,win)
-
--extern NCURSES_EXPORT(NCURSES_BOOL) _nc_retrace_bool (NCURSES_BOOL);
-+extern NCURSES_EXPORT(NCURSES_BOOL) _nc_retrace_bool (int);
- extern NCURSES_EXPORT(NCURSES_CONST void *) _nc_retrace_cvoid_ptr (NCURSES_CONST void *);
- extern NCURSES_EXPORT(SCREEN *) _nc_retrace_sp (SCREEN *);
- extern NCURSES_EXPORT(WINDOW *) _nc_retrace_win (WINDOW *);
-@@ -1539,7 +1659,7 @@
- extern NCURSES_EXPORT(chtype) _nc_retrace_chtype (chtype);
- extern NCURSES_EXPORT(const char *) _nc_altcharset_name(attr_t, chtype);
- extern NCURSES_EXPORT(const char *) _nc_retrace_cptr (const char *);
--extern NCURSES_EXPORT(char) _nc_retrace_char (char);
-+extern NCURSES_EXPORT(char) _nc_retrace_char (int);
- extern NCURSES_EXPORT(int) _nc_retrace_int (int);
- extern NCURSES_EXPORT(int) _nc_retrace_int_attr_t (attr_t);
- extern NCURSES_EXPORT(mmask_t) _nc_retrace_mmask_t (SCREEN *, mmask_t);
-@@ -1619,7 +1739,9 @@
- NCURSES_EXPORT(void) name (void) { }
-
- #define ALL_BUT_COLOR ((chtype)~(A_COLOR))
--#define NONBLANK_ATTR (A_NORMAL|A_BOLD|A_DIM|A_BLINK)
-+#define NONBLANK_ATTR (A_BOLD | A_DIM | A_BLINK | A_ITALIC)
-+#define TPARM_ATTR (A_STANDOUT | A_UNDERLINE | A_REVERSE | A_BLINK | A_DIM | A_BOLD | A_ALTCHARSET | A_INVIS | A_PROTECT)
-+#define XMC_CONFLICT (A_STANDOUT | A_UNDERLINE | A_REVERSE | A_BLINK | A_DIM | A_BOLD | A_INVIS | A_PROTECT | A_ITALIC)
- #define XMC_CHANGES(c) ((c) & SP_PARM->_xmc_suppress)
-
- #define toggle_attr_on(S,at) {\
-@@ -1795,6 +1917,8 @@
- /* lib_mvcur.c */
- #define INFINITY 1000000 /* cost: too high to use */
-
-+extern NCURSES_EXPORT(int) _nc_mvcur(int yold, int xold, int ynew, int xnew);
-+
- extern NCURSES_EXPORT(void) _nc_mvcur_init (void);
- extern NCURSES_EXPORT(void) _nc_mvcur_resume (void);
- extern NCURSES_EXPORT(void) _nc_mvcur_wrap (void);
-@@ -1816,12 +1940,31 @@
- extern NCURSES_EXPORT(char *) _nc_get_locale(void);
- extern NCURSES_EXPORT(int) _nc_unicode_locale(void);
- extern NCURSES_EXPORT(int) _nc_locale_breaks_acs(TERMINAL *);
--extern NCURSES_EXPORT(int) _nc_setupterm(NCURSES_CONST char *, int, int *, bool);
--extern NCURSES_EXPORT(void) _nc_tinfo_cmdch(TERMINAL *, char);
-+extern NCURSES_EXPORT(int) _nc_setupterm(NCURSES_CONST char *, int, int *, int);
-+extern NCURSES_EXPORT(void) _nc_tinfo_cmdch(TERMINAL *, int);
-
- /* lib_set_term.c */
- extern NCURSES_EXPORT(int) _nc_ripoffline(int, int(*)(WINDOW*, int));
-
-+/* lib_setup.c */
-+#define ret_error(code, fmt, arg) if (errret) {\
-+ *errret = code;\
-+ returnCode(ERR);\
-+ } else {\
-+ fprintf(stderr, fmt, arg);\
-+ exit(EXIT_FAILURE);\
-+ }
-+
-+#define ret_error1(code, fmt, arg) ret_error(code, "'%s': " fmt, arg)
-+
-+#define ret_error0(code, msg) if (errret) {\
-+ *errret = code;\
-+ returnCode(ERR);\
-+ } else {\
-+ fprintf(stderr, msg);\
-+ exit(EXIT_FAILURE);\
-+ }
-+
- /* lib_tstp.c */
- #if USE_SIGWINCH
- extern NCURSES_EXPORT(int) _nc_handle_sigwinch(SCREEN *);
-@@ -1871,20 +2014,22 @@
- extern NCURSES_EXPORT(char *) _nc_trace_bufcat (int, const char *);
- extern NCURSES_EXPORT(char *) _nc_tracechar (SCREEN *, int);
- extern NCURSES_EXPORT(char *) _nc_tracemouse (SCREEN *, MEVENT const *);
-+extern NCURSES_EXPORT(char *) _nc_trace_mmask_t (SCREEN *, mmask_t);
- extern NCURSES_EXPORT(int) _nc_access (const char *, int);
- extern NCURSES_EXPORT(int) _nc_baudrate (int);
- extern NCURSES_EXPORT(int) _nc_freewin (WINDOW *);
- extern NCURSES_EXPORT(int) _nc_getenv_num (const char *);
--extern NCURSES_EXPORT(int) _nc_keypad (SCREEN *, bool);
-+extern NCURSES_EXPORT(int) _nc_keypad (SCREEN *, int);
- extern NCURSES_EXPORT(int) _nc_ospeed (int);
- extern NCURSES_EXPORT(int) _nc_outch (int);
-+extern NCURSES_EXPORT(int) _nc_putchar (int);
- extern NCURSES_EXPORT(int) _nc_putp(const char *, const char *);
- extern NCURSES_EXPORT(int) _nc_putp_flush(const char *, const char *);
- extern NCURSES_EXPORT(int) _nc_read_termcap_entry (const char *const, TERMTYPE *const);
--extern NCURSES_EXPORT(int) _nc_setupscreen (int, int, FILE *, bool, int);
- extern NCURSES_EXPORT(int) _nc_setup_tinfo(const char *, TERMTYPE *);
-+extern NCURSES_EXPORT(int) _nc_setupscreen (int, int, FILE *, int, int);
- extern NCURSES_EXPORT(int) _nc_timed_wait (SCREEN *, int, int, int * EVENTLIST_2nd(_nc_eventlist *));
--extern NCURSES_EXPORT(void) _nc_do_color (short, short, bool, NCURSES_OUTC);
-+extern NCURSES_EXPORT(void) _nc_do_color (int, int, int, NCURSES_OUTC);
- extern NCURSES_EXPORT(void) _nc_flush (void);
- extern NCURSES_EXPORT(void) _nc_free_and_exit (int) GCC_NORETURN;
- extern NCURSES_EXPORT(void) _nc_free_entry (ENTRY *, TERMTYPE *);
-@@ -1895,8 +2040,9 @@
- extern NCURSES_EXPORT(void) _nc_make_oldhash (int i);
- extern NCURSES_EXPORT(void) _nc_scroll_oldhash (int n, int top, int bot);
- extern NCURSES_EXPORT(void) _nc_scroll_optimize (void);
--extern NCURSES_EXPORT(void) _nc_set_buffer (FILE *, bool);
--extern NCURSES_EXPORT(void) _nc_signal_handler (bool);
-+extern NCURSES_EXPORT(void) _nc_set_buffer (FILE *, int);
-+extern NCURSES_EXPORT(void) _nc_setenv_num (const char *, int);
-+extern NCURSES_EXPORT(void) _nc_signal_handler (int);
- extern NCURSES_EXPORT(void) _nc_synchook (WINDOW *);
- extern NCURSES_EXPORT(void) _nc_trace_tries (TRIES *);
-
-@@ -1905,7 +2051,9 @@
- extern NCURSES_EXPORT(void) _nc_captoinfo_leaks(void);
- extern NCURSES_EXPORT(void) _nc_codes_leaks(void);
- extern NCURSES_EXPORT(void) _nc_comp_captab_leaks(void);
-+extern NCURSES_EXPORT(void) _nc_comp_error_leaks(void);
- extern NCURSES_EXPORT(void) _nc_comp_scan_leaks(void);
-+extern NCURSES_EXPORT(void) _nc_db_iterator_leaks(void);
- extern NCURSES_EXPORT(void) _nc_keyname_leaks(void);
- extern NCURSES_EXPORT(void) _nc_names_leaks(void);
- extern NCURSES_EXPORT(void) _nc_tgetent_leaks(void);
-@@ -1914,7 +2062,7 @@
- #if !(defined(USE_TERMLIB) || defined(USE_BUILD_CC))
- extern NCURSES_EXPORT(NCURSES_CH_T) _nc_render (WINDOW *, NCURSES_CH_T);
- extern NCURSES_EXPORT(int) _nc_waddch_nosync (WINDOW *, const NCURSES_CH_T);
--extern NCURSES_EXPORT(void) _nc_scroll_window (WINDOW *, int const, NCURSES_SIZE_T const, NCURSES_SIZE_T const, NCURSES_CH_T);
-+extern NCURSES_EXPORT(void) _nc_scroll_window (WINDOW *, int const, int const, int const, NCURSES_CH_T);
- #endif
-
- #if USE_WIDEC_SUPPORT
-@@ -1946,8 +2094,26 @@
- * Wide-character macros to hide some platform-differences.
- */
- #if USE_WIDEC_SUPPORT
-+
-+#if defined(__MINGW32__)
-+/*
-+ * 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)
-+
-+extern int __MINGW_NOTHROW _nc_mbtowc(wchar_t *, const char *, size_t);
-+#define mbtowc(pwc,s,n) _nc_mbtowc(pwc,s,n)
-+
-+extern int __MINGW_NOTHROW _nc_mblen(const char *, size_t);
-+#define mblen(s,n) _nc_mblen(s, n)
-+
-+#endif /* __MINGW32__ */
-+
- #if HAVE_MBTOWC && HAVE_MBLEN
--#define reset_mbytes(state) IGNORE_RC(mblen(NULL, 0)), IGNORE_RC(mbtowc(NULL, NULL, 0))
-+#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)
-@@ -1960,7 +2126,8 @@
- #else
- make an error
- #endif
--#endif
-+
-+#endif /* USE_WIDEC_SUPPORT */
-
- /*
- * Not everyone has vsscanf(), but we'd like to use it for scanw().
-@@ -1974,8 +2141,6 @@
-
- #define USE_SETBUF_0 0
-
--#define NC_BUFFERED(sp,flag) NCURSES_SP_NAME(_nc_set_buffer)(NCURSES_SP_ARGx sp->_ofp, flag)
--
- #define NC_OUTPUT(sp) ((sp != 0) ? sp->_ofp : stdout)
-
- /*
-@@ -2049,16 +2214,15 @@
-
- #define SetSafeOutcWrapper(outc) \
- SCREEN* sp = CURRENT_SCREEN; \
-+ struct screen outc_wrapper; \
- if (sp==0) { \
-- struct screen dummy; \
-- sp = &dummy; \
-+ sp = &outc_wrapper; \
- memset(sp,0,sizeof(struct screen)); \
- sp->_outch = _nc_outc_wrapper; \
- }\
- sp->jump = outc
-
- #ifdef USE_TERM_DRIVER
--typedef void* TERM_HANDLE;
-
- typedef struct _termInfo
- {
-@@ -2084,48 +2248,47 @@
-
- typedef struct term_driver {
- bool isTerminfo;
-- bool (*CanHandle)(struct DriverTCB*,const char*,int*);
-- void (*init)(struct DriverTCB*);
-- void (*release)(struct DriverTCB*);
-- int (*size)(struct DriverTCB*, int* Line, int *Cols);
-- int (*sgmode)(struct DriverTCB*, bool setFlag, TTY*);
-- chtype (*conattr)(struct DriverTCB*);
-- int (*hwcur)(struct DriverTCB*, int yold, int xold, int y, int x);
-- int (*mode)(struct DriverTCB*, bool progFlag, bool defFlag);
-- bool (*rescol)(struct DriverTCB*);
-- bool (*rescolors)(struct DriverTCB*);
-- void (*color)(struct DriverTCB*,bool fore, int color, int(*)(SCREEN*,int));
-- int (*doBeepOrFlash)(struct DriverTCB*, bool);
-- void (*initpair)(struct DriverTCB*,short,short,short);
-- void (*initcolor)(struct DriverTCB*,short,short,short,short);
-- void (*docolor)(struct DriverTCB*,short,short,bool,int(*)(SCREEN*,int));
-- void (*initmouse)(struct DriverTCB*);
-- int (*testmouse)(struct DriverTCB*,int);
-- void (*setfilter)(struct DriverTCB*);
-- void (*hwlabel)(struct DriverTCB*,int,char*);
-- void (*hwlabelOnOff)(struct DriverTCB*,bool);
-- int (*update)(struct DriverTCB*);
-- int (*defaultcolors)(struct DriverTCB*,int,int);
-- int (*print)(struct DriverTCB*,char*,int);
-- int (*getsize)(struct DriverTCB*,int*,int*);
-- int (*setsize)(struct DriverTCB*,int,int);
-- void (*initacs)(struct DriverTCB*,chtype*,chtype*);
-- void (*scinit)(SCREEN *);
-- void (*scexit)(SCREEN *);
-- int (*twait)(struct DriverTCB*,int,int,int* EVENTLIST_2nd(_nc_eventlist*));
-- int (*read)(struct DriverTCB*,int*);
-- int (*nap)(struct DriverTCB*,int);
-- int (*kpad)(struct DriverTCB*, bool);
-- int (*kyOk)(struct DriverTCB*, int, bool);
-- bool (*kyExist)(struct DriverTCB*, int);
-+ const char* (*td_name)(struct DriverTCB*);
-+ bool (*td_CanHandle)(struct DriverTCB*, const char*, int*);
-+ void (*td_init)(struct DriverTCB*);
-+ void (*td_release)(struct DriverTCB*);
-+ int (*td_size)(struct DriverTCB*, int* Line, int *Cols);
-+ int (*td_sgmode)(struct DriverTCB*, int setFlag, TTY*);
-+ chtype (*td_conattr)(struct DriverTCB*);
-+ int (*td_hwcur)(struct DriverTCB*, int yold, int xold, int y, int x);
-+ int (*td_mode)(struct DriverTCB*, int progFlag, int defFlag);
-+ bool (*td_rescol)(struct DriverTCB*);
-+ bool (*td_rescolors)(struct DriverTCB*);
-+ void (*td_color)(struct DriverTCB*, int fore, int color, int(*)(SCREEN*, int));
-+ int (*td_doBeepOrFlash)(struct DriverTCB*, int);
-+ void (*td_initpair)(struct DriverTCB*, int, int, int);
-+ void (*td_initcolor)(struct DriverTCB*, int, int, int, int);
-+ void (*td_docolor)(struct DriverTCB*, int, int, int, int(*)(SCREEN*, int));
-+ void (*td_initmouse)(struct DriverTCB*);
-+ int (*td_testmouse)(struct DriverTCB*, int EVENTLIST_2nd(_nc_eventlist*));
-+ void (*td_setfilter)(struct DriverTCB*);
-+ void (*td_hwlabel)(struct DriverTCB*, int, char*);
-+ void (*td_hwlabelOnOff)(struct DriverTCB*, int);
-+ int (*td_update)(struct DriverTCB*);
-+ int (*td_defaultcolors)(struct DriverTCB*, int, int);
-+ int (*td_print)(struct DriverTCB*, char*, int);
-+ int (*td_getsize)(struct DriverTCB*, int*, int*);
-+ int (*td_setsize)(struct DriverTCB*, int, int);
-+ void (*td_initacs)(struct DriverTCB*, chtype*, chtype*);
-+ void (*td_scinit)(SCREEN *);
-+ void (*td_scexit)(SCREEN *);
-+ int (*td_twait)(struct DriverTCB*, int, int, int* EVENTLIST_2nd(_nc_eventlist*));
-+ int (*td_read)(struct DriverTCB*, int*);
-+ int (*td_nap)(struct DriverTCB*, int);
-+ int (*td_kpad)(struct DriverTCB*, int);
-+ int (*td_kyOk)(struct DriverTCB*, int, int);
-+ bool (*td_kyExist)(struct DriverTCB*, int);
-+ int (*td_cursorSet)(struct DriverTCB*, int);
- } TERM_DRIVER;
-
- typedef struct DriverTCB
- {
- TERMINAL term; /* needs to be the first Element !!! */
-- TERM_HANDLE inp; /* The input handle of the Terminal */
-- TERM_HANDLE out; /* The output handle of the Terminal in shell mode */
-- TERM_HANDLE hdl; /* The output handle of the Terminal in prog mode */
- TERM_DRIVER* drv; /* The driver for that Terminal */
- SCREEN* csp; /* The screen that owns that Terminal */
- TerminalInfo info; /* Driver independent core capabilities of the Terminal */
-@@ -2166,7 +2329,7 @@
- #else
- #define TINFO_HAS_KEY NCURSES_SP_NAME(has_key)
- #define TINFO_DOUPDATE NCURSES_SP_NAME(doupdate)
--#define TINFO_MVCUR NCURSES_SP_NAME(mvcur)
-+#define TINFO_MVCUR NCURSES_SP_NAME(_nc_mvcur)
- #endif
-
- /*
-@@ -2174,7 +2337,7 @@
- */
- #ifdef USE_TERM_DRIVER
- extern NCURSES_EXPORT(void) _nc_get_screensize(SCREEN *, TERMINAL *, int *, int *);
--extern NCURSES_EXPORT(int) _nc_setupterm_ex(TERMINAL **, NCURSES_CONST char *, int , int *, bool);
-+extern NCURSES_EXPORT(int) _nc_setupterm_ex(TERMINAL **, NCURSES_CONST char *, int , int *, int);
- #define TINFO_GET_SIZE(sp, tp, lp, cp) \
- _nc_get_screensize(sp, tp, lp, cp)
- #define TINFO_SET_CURTERM(sp, tp) \
-@@ -2192,20 +2355,44 @@
- #endif /* !USE_TERM_DRIVER */
-
- #ifdef USE_TERM_DRIVER
--#ifdef __MINGW32__
-+#if defined(USE_WIN32CON_DRIVER)
- #include <nc_mingw.h>
- extern NCURSES_EXPORT_VAR(TERM_DRIVER) _nc_WIN_DRIVER;
-+extern NCURSES_EXPORT(int) _nc_mingw_isatty(int fd);
-+extern NCURSES_EXPORT(int) _nc_mingw_isconsole(int fd);
-+extern NCURSES_EXPORT(int) _nc_mingw_console_read(
-+ SCREEN *sp,
-+ HANDLE fd,
-+ int *buf);
-+extern NCURSES_EXPORT(int) _nc_mingw_testmouse(
-+ SCREEN * sp,
-+ HANDLE fd,
-+ int delay);
-+#else
- #endif
- extern NCURSES_EXPORT_VAR(TERM_DRIVER) _nc_TINFO_DRIVER;
- #endif
-
-+#if defined(USE_TERM_DRIVER) && defined(USE_WIN32CON_DRIVER)
-+#define NC_ISATTY(fd) _nc_mingw_isatty(fd)
-+#else
-+#define NC_ISATTY(fd) isatty(fd)
-+#endif
-+
- #ifdef USE_TERM_DRIVER
--#define IsTermInfo(sp) (TCBOf(sp) && ((TCBOf(sp)->drv->isTerminfo)))
-+# 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
-+# define IsTermInfoOnConsole(sp) FALSE
-+# endif
- #else
--#define IsTermInfo(sp) TRUE
-+# define IsTermInfo(sp) TRUE
-+# define HasTInfoTerminal(sp) (0 != TerminalOf(sp))
-+# define IsTermInfoOnConsole(sp) FALSE
- #endif
-
--#define HasTInfoTerminal(sp) ((0 != TerminalOf(sp)) && IsTermInfo(sp))
- #define IsValidTIScreen(sp) (HasTInfoTerminal(sp))
-
- /*
-@@ -2239,7 +2426,9 @@
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_get_tty_mode)(SCREEN*,TTY*);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_mcprint)(SCREEN*,char*, int);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_msec_cost)(SCREEN*, const char *, int);
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_mvcur)(SCREEN*, int, int, int, int);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_outch)(SCREEN*, int);
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_putchar)(SCREEN*, int);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_putp)(SCREEN*, const char *, const char*);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_putp_flush)(SCREEN*, const char *, const char *);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_resetty)(SCREEN*);
-@@ -2250,12 +2439,12 @@
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_scr_restore)(SCREEN*, const char*);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_scrolln)(SCREEN*, int, int, int, int);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_set_tty_mode)(SCREEN*, TTY*);
--extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_setupscreen)(SCREEN**, int, int, FILE *, bool, int);
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_setupscreen)(SCREEN**, int, int, FILE *, int, int);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_tgetent)(SCREEN*,char*,const char *);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_tigetnum)(SCREEN*,NCURSES_CONST char*);
--extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_vid_attr)(SCREEN *, attr_t, short, void *);
-+extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_vid_attr)(SCREEN *, attr_t, NCURSES_COLOR_T, void *);
- extern NCURSES_EXPORT(int) NCURSES_SP_NAME(_nc_vidputs)(SCREEN*,chtype,int(*) (SCREEN*, int));
--extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_do_color)(SCREEN*, short, short, bool, NCURSES_SP_OUTC);
-+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;
-@@ -2271,7 +2460,7 @@
- extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_screen_wrap)(SCREEN*);
- extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_scroll_oldhash)(SCREEN*, int n, int top, int bot);
- extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_scroll_optimize)(SCREEN*);
--extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_set_buffer)(SCREEN*, FILE *, bool);
-+extern NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_set_buffer)(SCREEN*, FILE *, int);
-
- extern NCURSES_EXPORT(void) _nc_cookie_init(SCREEN *sp);
-
-@@ -2303,6 +2492,11 @@
-
- #endif
-
-+#ifdef EXP_XTERM_1005
-+NCURSES_EXPORT(int) _nc_conv_to_utf8(unsigned char *, unsigned, unsigned);
-+NCURSES_EXPORT(int) _nc_conv_to_utf32(unsigned *, const char *, unsigned);
-+#endif
-+
- #ifdef __cplusplus
- }
- #endif
-Index: ncurses/fifo_defs.h
-Prereq: 1.6
---- ncurses-5.9/ncurses/fifo_defs.h 2008-06-28 15:52:32.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/fifo_defs.h 2012-08-04 15:59:17.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2002,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2008,2012 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 *
-@@ -34,7 +34,7 @@
- /*
- * Common macros for lib_getch.c, lib_ungetch.c
- *
-- * $Id: fifo_defs.h,v 1.6 2008/06/28 15:52:32 tom Exp $
-+ * $Id: fifo_defs.h,v 1.7 2012/08/04 15:59:17 tom Exp $
- */
-
- #ifndef FIFO_DEFS_H
-@@ -45,14 +45,42 @@
- /* peek points to next uninterpreted character */
- #define peek sp->_fifopeek
-
--#define h_inc() { head == FIFO_SIZE-1 ? head = 0 : head++; if (head == tail) head = -1, tail = 0;}
--#define h_dec() { head == 0 ? head = FIFO_SIZE-1 : head--; if (head == tail) tail = -1;}
--#define t_inc() { tail == FIFO_SIZE-1 ? tail = 0 : tail++; if (tail == head) tail = -1;}
--#define t_dec() { tail == 0 ? tail = FIFO_SIZE-1 : tail--; if (head == tail) fifo_clear(sp);}
--#define p_inc() { peek == FIFO_SIZE-1 ? peek = 0 : peek++;}
-+#define h_inc() { \
-+ (head >= FIFO_SIZE-1) \
-+ ? head = 0 \
-+ : head++; \
-+ if (head == tail) \
-+ head = -1, tail = 0; \
-+ }
-+#define h_dec() { \
-+ (head <= 0) \
-+ ? head = FIFO_SIZE-1 \
-+ : head--; \
-+ if (head == tail) \
-+ tail = -1; \
-+ }
-+#define t_inc() { \
-+ (tail >= FIFO_SIZE-1) \
-+ ? tail = 0 \
-+ : tail++; \
-+ if (tail == head) \
-+ tail = -1; \
-+ }
-+#define t_dec() { \
-+ (tail <= 0) \
-+ ? tail = FIFO_SIZE-1 \
-+ : tail--; \
-+ if (head == tail) \
-+ fifo_clear(sp); \
-+ }
-+#define p_inc() { \
-+ (peek >= FIFO_SIZE-1) \
-+ ? peek = 0 \
-+ : peek++; \
-+ }
-
--#define cooked_key_in_fifo() ((head != -1) && (peek != head))
--#define raw_key_in_fifo() ((head != -1) && (peek != tail))
-+#define cooked_key_in_fifo() ((head >= 0) && (peek != head))
-+#define raw_key_in_fifo() ((head >= 0) && (peek != tail))
-
- #undef HIDE_EINTR
-
-Index: ncurses/llib-lncurses
---- ncurses-5.9/ncurses/llib-lncurses 2011-01-08 18:57:00.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-lncurses 2013-12-14 22:09:56.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2013 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 @@
- ****************************************************************************/
-
- /****************************************************************************
-- * Author: Thomas E. Dickey 1996-2010,2011 *
-+ * Author: Thomas E. Dickey 1996-on *
- ****************************************************************************/
- /* LINTLIBRARY */
-
-@@ -95,8 +95,6 @@
-
- /* ./base/lib_addch.c */
-
--#include <ctype.h>
--
- #undef _nc_render
- chtype _nc_render(
- WINDOW *win,
-@@ -219,8 +217,6 @@
-
- /* ./base/lib_color.c */
-
--#include <tic.h>
--
- #undef COLOR_PAIRS
- int COLOR_PAIRS;
- #undef COLORS
-@@ -329,17 +325,17 @@
- #undef _nc_do_color_sp
- void _nc_do_color_sp(
- SCREEN *sp,
-- short old_pair,
-- short pair,
-- NCURSES_BOOL reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_OUTC_sp outc)
- { /* void */ }
-
- #undef _nc_do_color
- void _nc_do_color(
-- short old_pair,
-- short pair,
-- NCURSES_BOOL reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_OUTC outc)
- { /* void */ }
-
-@@ -418,85 +414,85 @@
- /* ./lib_gen.c */
-
- #undef addch
--int addch(
-+int (addch)(
- const chtype z)
- { return(*(int *)0); }
-
- #undef addchnstr
--int addchnstr(
-+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(
-+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(
-+int (attr_get)(
- attr_t *a1,
- short *a2,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_off
--int attr_off(
-+int (attr_off)(
- attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_on
--int attr_on(
-+int (attr_on)(
- attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_set
--int attr_set(
-+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(
-+int (border)(
- chtype a1,
- chtype a2,
- chtype a3,
-@@ -508,14 +504,14 @@
- { return(*(int *)0); }
-
- #undef box
--int box(
-+int (box)(
- WINDOW *a1,
- chtype a2,
- chtype z)
- { return(*(int *)0); }
-
- #undef chgat
--int chgat(
-+int (chgat)(
- int a1,
- attr_t a2,
- short a3,
-@@ -523,137 +519,137 @@
- { 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(
-+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(
-+int (getnstr)(
- char *a1,
- int z)
- { return(*(int *)0); }
-
- #undef getstr
--int getstr(
-+int (getstr)(
- char *z)
- { return(*(int *)0); }
-
- #undef hline
--int hline(
-+int (hline)(
- chtype a1,
- int z)
- { return(*(int *)0); }
-
- #undef inch
--chtype inch(void)
-+chtype (inch)(void)
- { return(*(chtype *)0); }
-
- #undef inchnstr
--int inchnstr(
-+int (inchnstr)(
- chtype *a1,
- int z)
- { return(*(int *)0); }
-
- #undef inchstr
--int inchstr(
-+int (inchstr)(
- chtype *z)
- { return(*(int *)0); }
-
- #undef innstr
--int innstr(
-+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(
-+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 (move)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvaddch
--int mvaddch(
-+int (mvaddch)(
- int a1,
- int a2,
- const chtype z)
- { return(*(int *)0); }
-
- #undef mvaddchnstr
--int mvaddchnstr(
-+int (mvaddchnstr)(
- int a1,
- int a2,
- const chtype *a3,
-@@ -661,14 +657,14 @@
- { return(*(int *)0); }
-
- #undef mvaddchstr
--int mvaddchstr(
-+int (mvaddchstr)(
- int a1,
- int a2,
- const chtype *z)
- { return(*(int *)0); }
-
- #undef mvaddnstr
--int mvaddnstr(
-+int (mvaddnstr)(
- int a1,
- int a2,
- const char *a3,
-@@ -676,14 +672,14 @@
- { return(*(int *)0); }
-
- #undef mvaddstr
--int mvaddstr(
-+int (mvaddstr)(
- int a1,
- int a2,
- const char *z)
- { return(*(int *)0); }
-
- #undef mvchgat
--int mvchgat(
-+int (mvchgat)(
- int a1,
- int a2,
- int a3,
-@@ -693,19 +689,19 @@
- { return(*(int *)0); }
-
- #undef mvdelch
--int mvdelch(
-+int (mvdelch)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvgetch
--int mvgetch(
-+int (mvgetch)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvgetnstr
--int mvgetnstr(
-+int (mvgetnstr)(
- int a1,
- int a2,
- char *a3,
-@@ -713,14 +709,14 @@
- { return(*(int *)0); }
-
- #undef mvgetstr
--int mvgetstr(
-+int (mvgetstr)(
- int a1,
- int a2,
- char *z)
- { return(*(int *)0); }
-
- #undef mvhline
--int mvhline(
-+int (mvhline)(
- int a1,
- int a2,
- chtype a3,
-@@ -728,13 +724,13 @@
- { return(*(int *)0); }
-
- #undef mvinch
--chtype mvinch(
-+chtype (mvinch)(
- int a1,
- int z)
- { return(*(chtype *)0); }
-
- #undef mvinchnstr
--int mvinchnstr(
-+int (mvinchnstr)(
- int a1,
- int a2,
- chtype *a3,
-@@ -742,14 +738,14 @@
- { return(*(int *)0); }
-
- #undef mvinchstr
--int mvinchstr(
-+int (mvinchstr)(
- int a1,
- int a2,
- chtype *z)
- { return(*(int *)0); }
-
- #undef mvinnstr
--int mvinnstr(
-+int (mvinnstr)(
- int a1,
- int a2,
- char *a3,
-@@ -757,14 +753,14 @@
- { return(*(int *)0); }
-
- #undef mvinsch
--int mvinsch(
-+int (mvinsch)(
- int a1,
- int a2,
- chtype z)
- { return(*(int *)0); }
-
- #undef mvinsnstr
--int mvinsnstr(
-+int (mvinsnstr)(
- int a1,
- int a2,
- const char *a3,
-@@ -772,21 +768,21 @@
- { return(*(int *)0); }
-
- #undef mvinsstr
--int mvinsstr(
-+int (mvinsstr)(
- int a1,
- int a2,
- const char *z)
- { return(*(int *)0); }
-
- #undef mvinstr
--int mvinstr(
-+int (mvinstr)(
- int a1,
- int a2,
- char *z)
- { return(*(int *)0); }
-
- #undef mvvline
--int mvvline(
-+int (mvvline)(
- int a1,
- int a2,
- chtype a3,
-@@ -794,7 +790,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddch
--int mvwaddch(
-+int (mvwaddch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -802,7 +798,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddchnstr
--int mvwaddchnstr(
-+int (mvwaddchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -811,7 +807,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddchstr
--int mvwaddchstr(
-+int (mvwaddchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -819,7 +815,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddnstr
--int mvwaddnstr(
-+int (mvwaddnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -828,7 +824,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddstr
--int mvwaddstr(
-+int (mvwaddstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -836,7 +832,7 @@
- { return(*(int *)0); }
-
- #undef mvwchgat
--int mvwchgat(
-+int (mvwchgat)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -847,21 +843,21 @@
- { return(*(int *)0); }
-
- #undef mvwdelch
--int mvwdelch(
-+int (mvwdelch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(int *)0); }
-
- #undef mvwgetch
--int mvwgetch(
-+int (mvwgetch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(int *)0); }
-
- #undef mvwgetnstr
--int mvwgetnstr(
-+int (mvwgetnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -870,7 +866,7 @@
- { return(*(int *)0); }
-
- #undef mvwgetstr
--int mvwgetstr(
-+int (mvwgetstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -878,7 +874,7 @@
- { return(*(int *)0); }
-
- #undef mvwhline
--int mvwhline(
-+int (mvwhline)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -887,14 +883,14 @@
- { return(*(int *)0); }
-
- #undef mvwinch
--chtype mvwinch(
-+chtype (mvwinch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(chtype *)0); }
-
- #undef mvwinchnstr
--int mvwinchnstr(
-+int (mvwinchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -903,7 +899,7 @@
- { return(*(int *)0); }
-
- #undef mvwinchstr
--int mvwinchstr(
-+int (mvwinchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -911,7 +907,7 @@
- { return(*(int *)0); }
-
- #undef mvwinnstr
--int mvwinnstr(
-+int (mvwinnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -920,7 +916,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsch
--int mvwinsch(
-+int (mvwinsch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -928,7 +924,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsnstr
--int mvwinsnstr(
-+int (mvwinsnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -937,7 +933,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsstr
--int mvwinsstr(
-+int (mvwinsstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -945,7 +941,7 @@
- { return(*(int *)0); }
-
- #undef mvwinstr
--int mvwinstr(
-+int (mvwinstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -953,7 +949,7 @@
- { return(*(int *)0); }
-
- #undef mvwvline
--int mvwvline(
-+int (mvwvline)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -962,117 +958,117 @@
- { 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 (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(
-+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(
-+int (vline)(
- chtype a1,
- int z)
- { return(*(int *)0); }
-
- #undef vw_printw
--int vw_printw(
-+int (vw_printw)(
- WINDOW *a1,
- const char *a2,
- va_list z)
- { return(*(int *)0); }
-
- #undef vw_scanw
--int vw_scanw(
-+int (vw_scanw)(
- WINDOW *a1,
- char *a2,
- va_list z)
- { return(*(int *)0); }
-
- #undef waddchstr
--int waddchstr(
-+int (waddchstr)(
- WINDOW *a1,
- const chtype *z)
- { return(*(int *)0); }
-
- #undef waddstr
--int waddstr(
-+int (waddstr)(
- WINDOW *a1,
- const char *z)
- { return(*(int *)0); }
-
- #undef wattron
--int wattron(
-+int (wattron)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattroff
--int wattroff(
-+int (wattroff)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattrset
--int wattrset(
-+int (wattrset)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattr_get
--int wattr_get(
-+int (wattr_get)(
- WINDOW *a1,
- attr_t *a2,
- short *a3,
-@@ -1080,7 +1076,7 @@
- { return(*(int *)0); }
-
- #undef wattr_set
--int wattr_set(
-+int (wattr_set)(
- WINDOW *a1,
- attr_t a2,
- short a3,
-@@ -1088,168 +1084,168 @@
- { return(*(int *)0); }
-
- #undef wdeleteln
--int wdeleteln(
-+int (wdeleteln)(
- WINDOW *z)
- { return(*(int *)0); }
-
- #undef wgetstr
--int wgetstr(
-+int (wgetstr)(
- WINDOW *a1,
- char *z)
- { return(*(int *)0); }
-
- #undef winchstr
--int winchstr(
-+int (winchstr)(
- WINDOW *a1,
- chtype *z)
- { return(*(int *)0); }
-
- #undef winsertln
--int winsertln(
-+int (winsertln)(
- WINDOW *z)
- { return(*(int *)0); }
-
- #undef winsstr
--int winsstr(
-+int (winsstr)(
- WINDOW *a1,
- const char *z)
- { return(*(int *)0); }
-
- #undef winstr
--int winstr(
-+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 wgetscrreg
--int wgetscrreg(
-+int (wgetscrreg)(
- const WINDOW *a1,
- int *a2,
- int *z)
- { return(*(int *)0); }
-
- #undef mouse_trafo
--NCURSES_BOOL mouse_trafo(
-+NCURSES_BOOL (mouse_trafo)(
- int *a1,
- int *a2,
- NCURSES_BOOL z)
-@@ -1257,8 +1253,6 @@
-
- /* ./base/lib_getch.c */
-
--#include <fifo_defs.h>
--
- #undef ESCDELAY
- int ESCDELAY;
-
-@@ -1523,6 +1517,23 @@
- void _nc_mvcur_wrap(void)
- { /* void */ }
-
-+#undef _nc_mvcur_sp
-+int _nc_mvcur_sp(
-+ 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 xnew)
-+ { return(*(int *)0); }
-+
- #undef mvcur_sp
- int mvcur_sp(
- SCREEN *sp,
-@@ -1932,8 +1943,8 @@
- void _nc_scroll_window(
- WINDOW *win,
- int const n,
-- short const top,
-- short const bottom,
-+ int const top,
-+ int const bottom,
- chtype blank)
- { /* void */ }
-
-@@ -1978,7 +1989,7 @@
- int slines,
- int scolumns,
- FILE *output,
-- NCURSES_BOOL filtered,
-+ int filtered,
- int slk_format)
- { return(*(int *)0); }
-
-@@ -1987,7 +1998,7 @@
- int slines,
- int scolumns,
- FILE *output,
-- NCURSES_BOOL filtered,
-+ int filtered,
- int slk_format)
- { return(*(int *)0); }
-
-@@ -2263,11 +2274,9 @@
-
- /* ./tty/lib_tstp.c */
-
--#include <SigAction.h>
--
- #undef _nc_signal_handler
- void _nc_signal_handler(
-- NCURSES_BOOL enable)
-+ int enable)
- { /* void */ }
-
- /* ./base/lib_ungetch.c */
-@@ -2425,9 +2434,6 @@
-
- /* ./tty/tty_update.c */
-
--#include <sys/time.h>
--#include <sys/times.h>
--
- #undef doupdate_sp
- int doupdate_sp(
- SCREEN *sp)
-@@ -2504,12 +2510,6 @@
- va_list ap)
- { return(*(char **)0); }
-
--/* ./base/memmove.c */
--
--#undef _nc_memmove
--void _nc_memmove(void)
-- { /* void */ }
--
- /* ./base/vsscanf.c */
-
- #undef _nc_vsscanf
-@@ -2769,7 +2769,7 @@
- #undef _nc_copy_termtype
- void _nc_copy_termtype(
- TERMTYPE *dst,
-- TERMTYPE *src)
-+ const TERMTYPE *src)
- { /* void */ }
-
- /* ./codes.c */
-@@ -2783,8 +2783,6 @@
-
- /* ./comp_captab.c */
-
--#include <hashsize.h>
--
- #undef _nc_get_table
- const struct name_table_entry *_nc_get_table(
- NCURSES_BOOL termcap)
-@@ -2959,6 +2957,12 @@
- const char *name)
- { return(*(int *)0); }
-
-+#undef _nc_setenv_num
-+void _nc_setenv_num(
-+ const char *name,
-+ int value)
-+ { /* void */ }
-+
- /* ./tinfo/home_terminfo.c */
-
- #undef _nc_home_terminfo
-@@ -2967,15 +2971,6 @@
-
- /* ./tinfo/init_keytry.c */
-
--#if 0
--
--#include <init_keytry.h>
--
--#undef _nc_tinfo_fkeys
--const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0};
--
--#endif
--
- #undef _nc_init_keytry
- void _nc_init_keytry(
- SCREEN *sp)
-@@ -2997,8 +2992,6 @@
-
- /* ./tinfo/lib_baudrate.c */
-
--#include <termcap.h>
--
- struct speed {
- int s;
- int sp;
-@@ -3144,8 +3137,6 @@
-
- /* ./tinfo/lib_napms.c */
-
--#include <time.h>
--
- #undef napms_sp
- int napms_sp(
- SCREEN *sp,
-@@ -3255,7 +3246,7 @@
- #undef _nc_keypad
- int _nc_keypad(
- SCREEN *sp,
-- NCURSES_BOOL flag)
-+ int flag)
- { return(*(int *)0); }
-
- /* ./tinfo/lib_raw.c */
-@@ -3329,10 +3320,6 @@
-
- /* ./tinfo/lib_setup.c */
-
--#include <locale.h>
--#include <sys/ioctl.h>
--#include <langinfo.h>
--
- #undef ttytype
- char ttytype[256];
- #undef LINES
-@@ -3364,11 +3351,22 @@
- NCURSES_BOOL f)
- { /* void */ }
-
-+#undef use_tioctl_sp
-+void use_tioctl_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
- #undef use_env
- void use_env(
- NCURSES_BOOL f)
- { /* void */ }
-
-+#undef use_tioctl
-+void use_tioctl(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
- #undef _nc_get_screensize
- void _nc_get_screensize(
- SCREEN *sp,
-@@ -3390,7 +3388,7 @@
- #undef _nc_tinfo_cmdch
- void _nc_tinfo_cmdch(
- TERMINAL *termp,
-- char proto)
-+ int proto)
- { /* void */ }
-
- #undef _nc_get_locale
-@@ -3411,7 +3409,7 @@
- char *tname,
- int Filedes,
- int *errret,
-- NCURSES_BOOL reuse)
-+ int reuse)
- { return(*(int *)0); }
-
- #undef new_prescr
-@@ -3439,12 +3437,6 @@
- const char *name)
- { return(*(int *)0); }
-
--#if 0
--
--#include <capdefaults.c>
--
--#endif
--
- #undef tgetent
- int tgetent(
- char *bufp,
-@@ -3550,7 +3542,7 @@
- int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
-- int *popcount)
-+ int *_nc_popcount)
- { return(*(int *)0); }
-
- #undef tparm
-@@ -3570,7 +3562,7 @@
- #undef PC
- char PC;
- #undef ospeed
--NCURSES_OSPEED ospeed;
-+short ospeed;
- #undef _nc_nulls_sent
- int _nc_nulls_sent;
-
-@@ -3610,12 +3602,28 @@
- int ch)
- { return(*(int *)0); }
-
-+#undef _nc_putchar_sp
-+int _nc_putchar_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar
-+int _nc_putchar(
-+ int ch)
-+ { return(*(int *)0); }
-+
- #undef putp_sp
- int putp_sp(
- SCREEN *sp,
- const char *string)
- { return(*(int *)0); }
-
-+#undef putp
-+int putp(
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_putp_sp
- int _nc_putp_sp(
- SCREEN *sp,
-@@ -3623,11 +3631,6 @@
- const char *string)
- { return(*(int *)0); }
-
--#undef putp
--int putp(
-- const char *string)
-- { return(*(int *)0); }
--
- #undef _nc_putp
- int _nc_putp(
- const char *name,
-@@ -3678,12 +3681,12 @@
-
- #undef _nc_retrace_bool
- NCURSES_BOOL _nc_retrace_bool(
-- NCURSES_BOOL code)
-+ int code)
- { return(*(NCURSES_BOOL *)0); }
-
- #undef _nc_retrace_char
- char _nc_retrace_char(
-- char code)
-+ int code)
- { return(*(char *)0); }
-
- #undef _nc_retrace_int
-@@ -3917,9 +3920,27 @@
- #undef strfnames
- char *const strfnames[] = {0};
-
-+/* ./tinfo/obsolete.c */
-+
-+#undef _nc_set_buffer_sp
-+void _nc_set_buffer_sp(
-+ SCREEN *sp,
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+#undef _nc_set_buffer
-+void _nc_set_buffer(
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
- /* ./tinfo/read_entry.c */
-
--#include <hashed_db.h>
-+#undef _nc_init_termtype
-+void _nc_init_termtype(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-
- #undef _nc_read_termtype
- int _nc_read_termtype(
-@@ -3943,27 +3964,8 @@
-
- /* ./tinfo/read_termcap.c */
-
--#include <sys/types.h>
--
--#undef _nc_read_termcap_entry
--int _nc_read_termcap_entry(
-- const char *const tn,
-- TERMTYPE *const tp)
-- { return(*(int *)0); }
--
--/* ./tinfo/setbuf.c */
--
--#undef _nc_set_buffer_sp
--void _nc_set_buffer_sp(
-- SCREEN *sp,
-- FILE *ofp,
-- NCURSES_BOOL buffered)
-- { /* void */ }
--
--#undef _nc_set_buffer
--void _nc_set_buffer(
-- FILE *ofp,
-- NCURSES_BOOL buffered)
-+#undef _nc_read_termcap
-+void _nc_read_termcap(void)
- { /* void */ }
-
- /* ./tinfo/strings.c */
-@@ -4189,6 +4191,8 @@
-
- #undef _nc_syntax
- int _nc_syntax;
-+#undef _nc_strict_bsd
-+int _nc_strict_bsd;
- #undef _nc_curr_file_pos
- long _nc_curr_file_pos;
- #undef _nc_comment_start
-Index: ncurses/llib-lncursest
---- ncurses-5.9/ncurses/llib-lncursest 2011-01-08 19:03:20.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-lncursest 2013-12-14 22:06:49.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2008-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2011,2013 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 *
-@@ -332,17 +332,17 @@
- #undef _nc_do_color_sp
- void _nc_do_color_sp(
- SCREEN *sp,
-- short old_pair,
-- short pair,
-- NCURSES_BOOL reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_OUTC_sp outc)
- { /* void */ }
-
- #undef _nc_do_color
- void _nc_do_color(
-- short old_pair,
-- short pair,
-- NCURSES_BOOL reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_OUTC outc)
- { /* void */ }
-
-@@ -420,86 +420,88 @@
-
- /* ./lib_gen.c */
-
-+#include <ncurses_cfg.h>
-+
- #undef addch
--int addch(
-+int (addch)(
- const chtype z)
- { return(*(int *)0); }
-
- #undef addchnstr
--int addchnstr(
-+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(
-+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(
-- NCURSES_ATTR_T z)
-+int (attroff)(
-+ int z)
- { return(*(int *)0); }
-
- #undef attron
--int attron(
-- NCURSES_ATTR_T z)
-+int (attron)(
-+ int z)
- { return(*(int *)0); }
-
- #undef attrset
--int attrset(
-- NCURSES_ATTR_T z)
-+int (attrset)(
-+ int z)
- { return(*(int *)0); }
-
- #undef attr_get
--int attr_get(
-+int (attr_get)(
- attr_t *a1,
- short *a2,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_off
--int attr_off(
-+int (attr_off)(
- attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_on
--int attr_on(
-+int (attr_on)(
- attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_set
--int attr_set(
-+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(
-+int (border)(
- chtype a1,
- chtype a2,
- chtype a3,
-@@ -511,14 +513,14 @@
- { return(*(int *)0); }
-
- #undef box
--int box(
-+int (box)(
- WINDOW *a1,
- chtype a2,
- chtype z)
- { return(*(int *)0); }
-
- #undef chgat
--int chgat(
-+int (chgat)(
- int a1,
- attr_t a2,
- short a3,
-@@ -526,137 +528,137 @@
- { 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(
-+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(
-+int (getnstr)(
- char *a1,
- int z)
- { return(*(int *)0); }
-
- #undef getstr
--int getstr(
-+int (getstr)(
- char *z)
- { return(*(int *)0); }
-
- #undef hline
--int hline(
-+int (hline)(
- chtype a1,
- int z)
- { return(*(int *)0); }
-
- #undef inch
--chtype inch(void)
-+chtype (inch)(void)
- { return(*(chtype *)0); }
-
- #undef inchnstr
--int inchnstr(
-+int (inchnstr)(
- chtype *a1,
- int z)
- { return(*(int *)0); }
-
- #undef inchstr
--int inchstr(
-+int (inchstr)(
- chtype *z)
- { return(*(int *)0); }
-
- #undef innstr
--int innstr(
-+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(
-+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 (move)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvaddch
--int mvaddch(
-+int (mvaddch)(
- int a1,
- int a2,
- const chtype z)
- { return(*(int *)0); }
-
- #undef mvaddchnstr
--int mvaddchnstr(
-+int (mvaddchnstr)(
- int a1,
- int a2,
- const chtype *a3,
-@@ -664,14 +666,14 @@
- { return(*(int *)0); }
-
- #undef mvaddchstr
--int mvaddchstr(
-+int (mvaddchstr)(
- int a1,
- int a2,
- const chtype *z)
- { return(*(int *)0); }
-
- #undef mvaddnstr
--int mvaddnstr(
-+int (mvaddnstr)(
- int a1,
- int a2,
- const char *a3,
-@@ -679,14 +681,14 @@
- { return(*(int *)0); }
-
- #undef mvaddstr
--int mvaddstr(
-+int (mvaddstr)(
- int a1,
- int a2,
- const char *z)
- { return(*(int *)0); }
-
- #undef mvchgat
--int mvchgat(
-+int (mvchgat)(
- int a1,
- int a2,
- int a3,
-@@ -696,19 +698,19 @@
- { return(*(int *)0); }
-
- #undef mvdelch
--int mvdelch(
-+int (mvdelch)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvgetch
--int mvgetch(
-+int (mvgetch)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvgetnstr
--int mvgetnstr(
-+int (mvgetnstr)(
- int a1,
- int a2,
- char *a3,
-@@ -716,14 +718,14 @@
- { return(*(int *)0); }
-
- #undef mvgetstr
--int mvgetstr(
-+int (mvgetstr)(
- int a1,
- int a2,
- char *z)
- { return(*(int *)0); }
-
- #undef mvhline
--int mvhline(
-+int (mvhline)(
- int a1,
- int a2,
- chtype a3,
-@@ -731,13 +733,13 @@
- { return(*(int *)0); }
-
- #undef mvinch
--chtype mvinch(
-+chtype (mvinch)(
- int a1,
- int z)
- { return(*(chtype *)0); }
-
- #undef mvinchnstr
--int mvinchnstr(
-+int (mvinchnstr)(
- int a1,
- int a2,
- chtype *a3,
-@@ -745,14 +747,14 @@
- { return(*(int *)0); }
-
- #undef mvinchstr
--int mvinchstr(
-+int (mvinchstr)(
- int a1,
- int a2,
- chtype *z)
- { return(*(int *)0); }
-
- #undef mvinnstr
--int mvinnstr(
-+int (mvinnstr)(
- int a1,
- int a2,
- char *a3,
-@@ -760,14 +762,14 @@
- { return(*(int *)0); }
-
- #undef mvinsch
--int mvinsch(
-+int (mvinsch)(
- int a1,
- int a2,
- chtype z)
- { return(*(int *)0); }
-
- #undef mvinsnstr
--int mvinsnstr(
-+int (mvinsnstr)(
- int a1,
- int a2,
- const char *a3,
-@@ -775,21 +777,21 @@
- { return(*(int *)0); }
-
- #undef mvinsstr
--int mvinsstr(
-+int (mvinsstr)(
- int a1,
- int a2,
- const char *z)
- { return(*(int *)0); }
-
- #undef mvinstr
--int mvinstr(
-+int (mvinstr)(
- int a1,
- int a2,
- char *z)
- { return(*(int *)0); }
-
- #undef mvvline
--int mvvline(
-+int (mvvline)(
- int a1,
- int a2,
- chtype a3,
-@@ -797,7 +799,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddch
--int mvwaddch(
-+int (mvwaddch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -805,7 +807,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddchnstr
--int mvwaddchnstr(
-+int (mvwaddchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -814,7 +816,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddchstr
--int mvwaddchstr(
-+int (mvwaddchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -822,7 +824,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddnstr
--int mvwaddnstr(
-+int (mvwaddnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -831,7 +833,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddstr
--int mvwaddstr(
-+int (mvwaddstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -839,7 +841,7 @@
- { return(*(int *)0); }
-
- #undef mvwchgat
--int mvwchgat(
-+int (mvwchgat)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -850,21 +852,21 @@
- { return(*(int *)0); }
-
- #undef mvwdelch
--int mvwdelch(
-+int (mvwdelch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(int *)0); }
-
- #undef mvwgetch
--int mvwgetch(
-+int (mvwgetch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(int *)0); }
-
- #undef mvwgetnstr
--int mvwgetnstr(
-+int (mvwgetnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -873,7 +875,7 @@
- { return(*(int *)0); }
-
- #undef mvwgetstr
--int mvwgetstr(
-+int (mvwgetstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -881,7 +883,7 @@
- { return(*(int *)0); }
-
- #undef mvwhline
--int mvwhline(
-+int (mvwhline)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -890,14 +892,14 @@
- { return(*(int *)0); }
-
- #undef mvwinch
--chtype mvwinch(
-+chtype (mvwinch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(chtype *)0); }
-
- #undef mvwinchnstr
--int mvwinchnstr(
-+int (mvwinchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -906,7 +908,7 @@
- { return(*(int *)0); }
-
- #undef mvwinchstr
--int mvwinchstr(
-+int (mvwinchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -914,7 +916,7 @@
- { return(*(int *)0); }
-
- #undef mvwinnstr
--int mvwinnstr(
-+int (mvwinnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -923,7 +925,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsch
--int mvwinsch(
-+int (mvwinsch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -931,7 +933,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsnstr
--int mvwinsnstr(
-+int (mvwinsnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -940,7 +942,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsstr
--int mvwinsstr(
-+int (mvwinsstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -948,7 +950,7 @@
- { return(*(int *)0); }
-
- #undef mvwinstr
--int mvwinstr(
-+int (mvwinstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -956,7 +958,7 @@
- { return(*(int *)0); }
-
- #undef mvwvline
--int mvwvline(
-+int (mvwvline)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -965,117 +967,117 @@
- { 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 (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(
-+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(
-+int (vline)(
- chtype a1,
- int z)
- { return(*(int *)0); }
-
- #undef vw_printw
--int vw_printw(
-+int (vw_printw)(
- WINDOW *a1,
- const char *a2,
- va_list z)
- { return(*(int *)0); }
-
- #undef vw_scanw
--int vw_scanw(
-+int (vw_scanw)(
- WINDOW *a1,
- char *a2,
- va_list z)
- { return(*(int *)0); }
-
- #undef waddchstr
--int waddchstr(
-+int (waddchstr)(
- WINDOW *a1,
- const chtype *z)
- { return(*(int *)0); }
-
- #undef waddstr
--int waddstr(
-+int (waddstr)(
- WINDOW *a1,
- const char *z)
- { return(*(int *)0); }
-
- #undef wattron
--int wattron(
-+int (wattron)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattroff
--int wattroff(
-+int (wattroff)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattrset
--int wattrset(
-+int (wattrset)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattr_get
--int wattr_get(
-+int (wattr_get)(
- WINDOW *a1,
- attr_t *a2,
- short *a3,
-@@ -1083,7 +1085,7 @@
- { return(*(int *)0); }
-
- #undef wattr_set
--int wattr_set(
-+int (wattr_set)(
- WINDOW *a1,
- attr_t a2,
- short a3,
-@@ -1091,168 +1093,168 @@
- { return(*(int *)0); }
-
- #undef wdeleteln
--int wdeleteln(
-+int (wdeleteln)(
- WINDOW *z)
- { return(*(int *)0); }
-
- #undef wgetstr
--int wgetstr(
-+int (wgetstr)(
- WINDOW *a1,
- char *z)
- { return(*(int *)0); }
-
- #undef winchstr
--int winchstr(
-+int (winchstr)(
- WINDOW *a1,
- chtype *z)
- { return(*(int *)0); }
-
- #undef winsertln
--int winsertln(
-+int (winsertln)(
- WINDOW *z)
- { return(*(int *)0); }
-
- #undef winsstr
--int winsstr(
-+int (winsstr)(
- WINDOW *a1,
- const char *z)
- { return(*(int *)0); }
-
- #undef winstr
--int winstr(
-+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 wgetscrreg
--int wgetscrreg(
-+int (wgetscrreg)(
- const WINDOW *a1,
- int *a2,
- int *z)
- { return(*(int *)0); }
-
- #undef mouse_trafo
--NCURSES_BOOL mouse_trafo(
-+NCURSES_BOOL (mouse_trafo)(
- int *a1,
- int *a2,
- NCURSES_BOOL z)
-@@ -1532,6 +1534,23 @@
- void _nc_mvcur_wrap(void)
- { /* void */ }
-
-+#undef _nc_mvcur_sp
-+int _nc_mvcur_sp(
-+ 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 xnew)
-+ { return(*(int *)0); }
-+
- #undef mvcur_sp
- int mvcur_sp(
- SCREEN *sp,
-@@ -1598,6 +1617,8 @@
-
- /* ./base/lib_newwin.c */
-
-+#include "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/stddef.h"
-+
- #undef _nc_freewin
- int _nc_freewin(
- WINDOW *win)
-@@ -1987,7 +2008,7 @@
- int slines,
- int scolumns,
- FILE *output,
-- NCURSES_BOOL filtered,
-+ int filtered,
- int slk_format)
- { return(*(int *)0); }
-
-@@ -1996,7 +2017,7 @@
- int slines,
- int scolumns,
- FILE *output,
-- NCURSES_BOOL filtered,
-+ int filtered,
- int slk_format)
- { return(*(int *)0); }
-
-@@ -2276,7 +2297,7 @@
-
- #undef _nc_signal_handler
- void _nc_signal_handler(
-- NCURSES_BOOL enable)
-+ int enable)
- { /* void */ }
-
- /* ./base/lib_ungetch.c */
-@@ -2513,12 +2534,6 @@
- va_list ap)
- { return(*(char **)0); }
-
--/* ./base/memmove.c */
--
--#undef _nc_memmove
--void _nc_memmove(void)
-- { /* void */ }
--
- /* ./base/vsscanf.c */
-
- #undef _nc_vsscanf
-@@ -2778,7 +2793,7 @@
- #undef _nc_copy_termtype
- void _nc_copy_termtype(
- TERMTYPE *dst,
-- TERMTYPE *src)
-+ const TERMTYPE *src)
- { /* void */ }
-
- /* ./codes.c */
-@@ -2882,6 +2897,8 @@
-
- /* ./tinfo/db_iterator.c */
-
-+#include <time.h>
-+
- #undef _nc_tic_dir
- const char *_nc_tic_dir(
- const char *path)
-@@ -2973,6 +2990,12 @@
- const char *name)
- { return(*(int *)0); }
-
-+#undef _nc_setenv_num
-+void _nc_setenv_num(
-+ const char *name,
-+ int value)
-+ { /* void */ }
-+
- /* ./tinfo/home_terminfo.c */
-
- #undef _nc_home_terminfo
-@@ -3313,7 +3336,7 @@
- #undef _nc_keypad
- int _nc_keypad(
- SCREEN *sp,
-- NCURSES_BOOL flag)
-+ int flag)
- { return(*(int *)0); }
-
- /* ./tinfo/lib_raw.c */
-@@ -3444,11 +3467,22 @@
- NCURSES_BOOL f)
- { /* void */ }
-
-+#undef use_tioctl_sp
-+void use_tioctl_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
- #undef use_env
- void use_env(
- NCURSES_BOOL f)
- { /* void */ }
-
-+#undef use_tioctl
-+void use_tioctl(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
- #undef _nc_get_screensize
- void _nc_get_screensize(
- SCREEN *sp,
-@@ -3470,7 +3504,7 @@
- #undef _nc_tinfo_cmdch
- void _nc_tinfo_cmdch(
- TERMINAL *termp,
-- char proto)
-+ int proto)
- { /* void */ }
-
- #undef _nc_get_locale
-@@ -3491,7 +3525,7 @@
- char *tname,
- int Filedes,
- int *errret,
-- NCURSES_BOOL reuse)
-+ int reuse)
- { return(*(int *)0); }
-
- #undef new_prescr
-@@ -3630,7 +3664,7 @@
- int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
-- int *popcount)
-+ int *_nc_popcount)
- { return(*(int *)0); }
-
- #undef tparm
-@@ -3650,7 +3684,7 @@
- #undef PC
- char PC;
- #undef ospeed
--NCURSES_OSPEED ospeed;
-+short ospeed;
- #undef _nc_nulls_sent
- int _nc_nulls_sent;
-
-@@ -3690,12 +3724,28 @@
- int ch)
- { return(*(int *)0); }
-
-+#undef _nc_putchar_sp
-+int _nc_putchar_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar
-+int _nc_putchar(
-+ int ch)
-+ { return(*(int *)0); }
-+
- #undef putp_sp
- int putp_sp(
- SCREEN *sp,
- const char *string)
- { return(*(int *)0); }
-
-+#undef putp
-+int putp(
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_putp_sp
- int _nc_putp_sp(
- SCREEN *sp,
-@@ -3703,11 +3753,6 @@
- const char *string)
- { return(*(int *)0); }
-
--#undef putp
--int putp(
-- const char *string)
-- { return(*(int *)0); }
--
- #undef _nc_putp
- int _nc_putp(
- const char *name,
-@@ -3772,12 +3817,12 @@
-
- #undef _nc_retrace_bool
- NCURSES_BOOL _nc_retrace_bool(
-- NCURSES_BOOL code)
-+ int code)
- { return(*(NCURSES_BOOL *)0); }
-
- #undef _nc_retrace_char
- char _nc_retrace_char(
-- char code)
-+ int code)
- { return(*(char *)0); }
-
- #undef _nc_retrace_int
-@@ -4033,10 +4078,30 @@
- char *const *_nc_strfnames(void)
- { return(*(char **)0); }
-
-+/* ./tinfo/obsolete.c */
-+
-+#undef _nc_set_buffer_sp
-+void _nc_set_buffer_sp(
-+ SCREEN *sp,
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+#undef _nc_set_buffer
-+void _nc_set_buffer(
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
- /* ./tinfo/read_entry.c */
-
- #include <hashed_db.h>
-
-+#undef _nc_init_termtype
-+void _nc_init_termtype(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
- #undef _nc_read_termtype
- int _nc_read_termtype(
- TERMTYPE *ptr,
-@@ -4061,25 +4126,8 @@
-
- #include <sys/types.h>
-
--#undef _nc_read_termcap_entry
--int _nc_read_termcap_entry(
-- const char *const tn,
-- TERMTYPE *const tp)
-- { return(*(int *)0); }
--
--/* ./tinfo/setbuf.c */
--
--#undef _nc_set_buffer_sp
--void _nc_set_buffer_sp(
-- SCREEN *sp,
-- FILE *ofp,
-- NCURSES_BOOL buffered)
-- { /* void */ }
--
--#undef _nc_set_buffer
--void _nc_set_buffer(
-- FILE *ofp,
-- NCURSES_BOOL buffered)
-+#undef _nc_read_termcap
-+void _nc_read_termcap(void)
- { /* void */ }
-
- /* ./tinfo/strings.c */
-@@ -4305,6 +4353,8 @@
-
- #undef _nc_syntax
- int _nc_syntax;
-+#undef _nc_strict_bsd
-+int _nc_strict_bsd;
- #undef _nc_curr_file_pos
- long _nc_curr_file_pos;
- #undef _nc_comment_start
-Index: ncurses/llib-lncursestw
---- ncurses-5.9/ncurses/llib-lncursestw 2011-01-08 19:11:35.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-lncursestw 2013-12-14 22:06:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2009-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2009-2011,2013 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 @@
- ****************************************************************************/
-
- /****************************************************************************
-- * Author: Thomas E. Dickey 2009-2010,2011 *
-+ * Author: Thomas E. Dickey 2009-on *
- ****************************************************************************/
- /* LINTLIBRARY */
-
-@@ -369,17 +369,17 @@
- #undef _nc_do_color_sp
- void _nc_do_color_sp(
- SCREEN *sp,
-- short old_pair,
-- short pair,
-- NCURSES_BOOL reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_OUTC_sp outc)
- { /* void */ }
-
- #undef _nc_do_color
- void _nc_do_color(
-- short old_pair,
-- short pair,
-- NCURSES_BOOL reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_OUTC outc)
- { /* void */ }
-
-@@ -457,86 +457,88 @@
-
- /* ./lib_gen.c */
-
-+#include <ncurses_cfg.h>
-+
- #undef addch
--int addch(
-+int (addch)(
- const chtype z)
- { return(*(int *)0); }
-
- #undef addchnstr
--int addchnstr(
-+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(
-+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(
-- NCURSES_ATTR_T z)
-+int (attroff)(
-+ int z)
- { return(*(int *)0); }
-
- #undef attron
--int attron(
-- NCURSES_ATTR_T z)
-+int (attron)(
-+ int z)
- { return(*(int *)0); }
-
- #undef attrset
--int attrset(
-- NCURSES_ATTR_T z)
-+int (attrset)(
-+ int z)
- { return(*(int *)0); }
-
- #undef attr_get
--int attr_get(
-+int (attr_get)(
- attr_t *a1,
- short *a2,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_off
--int attr_off(
-+int (attr_off)(
- attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_on
--int attr_on(
-+int (attr_on)(
- attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_set
--int attr_set(
-+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(
-+int (border)(
- chtype a1,
- chtype a2,
- chtype a3,
-@@ -548,14 +550,14 @@
- { return(*(int *)0); }
-
- #undef box
--int box(
-+int (box)(
- WINDOW *a1,
- chtype a2,
- chtype z)
- { return(*(int *)0); }
-
- #undef chgat
--int chgat(
-+int (chgat)(
- int a1,
- attr_t a2,
- short a3,
-@@ -563,137 +565,137 @@
- { 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(
-+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(
-+int (getnstr)(
- char *a1,
- int z)
- { return(*(int *)0); }
-
- #undef getstr
--int getstr(
-+int (getstr)(
- char *z)
- { return(*(int *)0); }
-
- #undef hline
--int hline(
-+int (hline)(
- chtype a1,
- int z)
- { return(*(int *)0); }
-
- #undef inch
--chtype inch(void)
-+chtype (inch)(void)
- { return(*(chtype *)0); }
-
- #undef inchnstr
--int inchnstr(
-+int (inchnstr)(
- chtype *a1,
- int z)
- { return(*(int *)0); }
-
- #undef inchstr
--int inchstr(
-+int (inchstr)(
- chtype *z)
- { return(*(int *)0); }
-
- #undef innstr
--int innstr(
-+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(
-+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 (move)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvaddch
--int mvaddch(
-+int (mvaddch)(
- int a1,
- int a2,
- const chtype z)
- { return(*(int *)0); }
-
- #undef mvaddchnstr
--int mvaddchnstr(
-+int (mvaddchnstr)(
- int a1,
- int a2,
- const chtype *a3,
-@@ -701,14 +703,14 @@
- { return(*(int *)0); }
-
- #undef mvaddchstr
--int mvaddchstr(
-+int (mvaddchstr)(
- int a1,
- int a2,
- const chtype *z)
- { return(*(int *)0); }
-
- #undef mvaddnstr
--int mvaddnstr(
-+int (mvaddnstr)(
- int a1,
- int a2,
- const char *a3,
-@@ -716,14 +718,14 @@
- { return(*(int *)0); }
-
- #undef mvaddstr
--int mvaddstr(
-+int (mvaddstr)(
- int a1,
- int a2,
- const char *z)
- { return(*(int *)0); }
-
- #undef mvchgat
--int mvchgat(
-+int (mvchgat)(
- int a1,
- int a2,
- int a3,
-@@ -733,19 +735,19 @@
- { return(*(int *)0); }
-
- #undef mvdelch
--int mvdelch(
-+int (mvdelch)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvgetch
--int mvgetch(
-+int (mvgetch)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvgetnstr
--int mvgetnstr(
-+int (mvgetnstr)(
- int a1,
- int a2,
- char *a3,
-@@ -753,14 +755,14 @@
- { return(*(int *)0); }
-
- #undef mvgetstr
--int mvgetstr(
-+int (mvgetstr)(
- int a1,
- int a2,
- char *z)
- { return(*(int *)0); }
-
- #undef mvhline
--int mvhline(
-+int (mvhline)(
- int a1,
- int a2,
- chtype a3,
-@@ -768,13 +770,13 @@
- { return(*(int *)0); }
-
- #undef mvinch
--chtype mvinch(
-+chtype (mvinch)(
- int a1,
- int z)
- { return(*(chtype *)0); }
-
- #undef mvinchnstr
--int mvinchnstr(
-+int (mvinchnstr)(
- int a1,
- int a2,
- chtype *a3,
-@@ -782,14 +784,14 @@
- { return(*(int *)0); }
-
- #undef mvinchstr
--int mvinchstr(
-+int (mvinchstr)(
- int a1,
- int a2,
- chtype *z)
- { return(*(int *)0); }
-
- #undef mvinnstr
--int mvinnstr(
-+int (mvinnstr)(
- int a1,
- int a2,
- char *a3,
-@@ -797,14 +799,14 @@
- { return(*(int *)0); }
-
- #undef mvinsch
--int mvinsch(
-+int (mvinsch)(
- int a1,
- int a2,
- chtype z)
- { return(*(int *)0); }
-
- #undef mvinsnstr
--int mvinsnstr(
-+int (mvinsnstr)(
- int a1,
- int a2,
- const char *a3,
-@@ -812,21 +814,21 @@
- { return(*(int *)0); }
-
- #undef mvinsstr
--int mvinsstr(
-+int (mvinsstr)(
- int a1,
- int a2,
- const char *z)
- { return(*(int *)0); }
-
- #undef mvinstr
--int mvinstr(
-+int (mvinstr)(
- int a1,
- int a2,
- char *z)
- { return(*(int *)0); }
-
- #undef mvvline
--int mvvline(
-+int (mvvline)(
- int a1,
- int a2,
- chtype a3,
-@@ -834,7 +836,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddch
--int mvwaddch(
-+int (mvwaddch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -842,7 +844,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddchnstr
--int mvwaddchnstr(
-+int (mvwaddchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -851,7 +853,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddchstr
--int mvwaddchstr(
-+int (mvwaddchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -859,7 +861,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddnstr
--int mvwaddnstr(
-+int (mvwaddnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -868,7 +870,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddstr
--int mvwaddstr(
-+int (mvwaddstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -876,7 +878,7 @@
- { return(*(int *)0); }
-
- #undef mvwchgat
--int mvwchgat(
-+int (mvwchgat)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -887,21 +889,21 @@
- { return(*(int *)0); }
-
- #undef mvwdelch
--int mvwdelch(
-+int (mvwdelch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(int *)0); }
-
- #undef mvwgetch
--int mvwgetch(
-+int (mvwgetch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(int *)0); }
-
- #undef mvwgetnstr
--int mvwgetnstr(
-+int (mvwgetnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -910,7 +912,7 @@
- { return(*(int *)0); }
-
- #undef mvwgetstr
--int mvwgetstr(
-+int (mvwgetstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -918,7 +920,7 @@
- { return(*(int *)0); }
-
- #undef mvwhline
--int mvwhline(
-+int (mvwhline)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -927,14 +929,14 @@
- { return(*(int *)0); }
-
- #undef mvwinch
--chtype mvwinch(
-+chtype (mvwinch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(chtype *)0); }
-
- #undef mvwinchnstr
--int mvwinchnstr(
-+int (mvwinchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -943,7 +945,7 @@
- { return(*(int *)0); }
-
- #undef mvwinchstr
--int mvwinchstr(
-+int (mvwinchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -951,7 +953,7 @@
- { return(*(int *)0); }
-
- #undef mvwinnstr
--int mvwinnstr(
-+int (mvwinnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -960,7 +962,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsch
--int mvwinsch(
-+int (mvwinsch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -968,7 +970,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsnstr
--int mvwinsnstr(
-+int (mvwinsnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -977,7 +979,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsstr
--int mvwinsstr(
-+int (mvwinsstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -985,7 +987,7 @@
- { return(*(int *)0); }
-
- #undef mvwinstr
--int mvwinstr(
-+int (mvwinstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -993,7 +995,7 @@
- { return(*(int *)0); }
-
- #undef mvwvline
--int mvwvline(
-+int (mvwvline)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1002,129 +1004,129 @@
- { 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 (setscrreg)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef slk_attr_off
--int slk_attr_off(
-+int (slk_attr_off)(
- const attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef slk_attr_on
--int slk_attr_on(
-+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(
-+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(
-+int (vline)(
- chtype a1,
- int z)
- { return(*(int *)0); }
-
- #undef vw_printw
--int vw_printw(
-+int (vw_printw)(
- WINDOW *a1,
- const char *a2,
- va_list z)
- { return(*(int *)0); }
-
- #undef vw_scanw
--int vw_scanw(
-+int (vw_scanw)(
- WINDOW *a1,
- char *a2,
- va_list z)
- { return(*(int *)0); }
-
- #undef waddchstr
--int waddchstr(
-+int (waddchstr)(
- WINDOW *a1,
- const chtype *z)
- { return(*(int *)0); }
-
- #undef waddstr
--int waddstr(
-+int (waddstr)(
- WINDOW *a1,
- const char *z)
- { return(*(int *)0); }
-
- #undef wattron
--int wattron(
-+int (wattron)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattroff
--int wattroff(
-+int (wattroff)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattrset
--int wattrset(
-+int (wattrset)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattr_get
--int wattr_get(
-+int (wattr_get)(
- WINDOW *a1,
- attr_t *a2,
- short *a3,
-@@ -1132,7 +1134,7 @@
- { return(*(int *)0); }
-
- #undef wattr_set
--int wattr_set(
-+int (wattr_set)(
- WINDOW *a1,
- attr_t a2,
- short a3,
-@@ -1140,205 +1142,205 @@
- { return(*(int *)0); }
-
- #undef wdeleteln
--int wdeleteln(
-+int (wdeleteln)(
- WINDOW *z)
- { return(*(int *)0); }
-
- #undef wgetstr
--int wgetstr(
-+int (wgetstr)(
- WINDOW *a1,
- char *z)
- { return(*(int *)0); }
-
- #undef winchstr
--int winchstr(
-+int (winchstr)(
- WINDOW *a1,
- chtype *z)
- { return(*(int *)0); }
-
- #undef winsertln
--int winsertln(
-+int (winsertln)(
- WINDOW *z)
- { return(*(int *)0); }
-
- #undef winsstr
--int winsstr(
-+int (winsstr)(
- WINDOW *a1,
- const char *z)
- { return(*(int *)0); }
-
- #undef winstr
--int winstr(
-+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 wgetscrreg
--int wgetscrreg(
-+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(
-+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(
-+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(
-+int (border_set)(
- const cchar_t *a1,
- const cchar_t *a2,
- const cchar_t *a3,
-@@ -1350,96 +1352,96 @@
- { return(*(int *)0); }
-
- #undef box_set
--int box_set(
-+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(
-+int (getn_wstr)(
- wint_t *a1,
- int z)
- { return(*(int *)0); }
-
- #undef hline_set
--int hline_set(
-+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(
-+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(
-+int (innwstr)(
- wchar_t *a1,
- int z)
- { return(*(int *)0); }
-
- #undef ins_nwstr
--int ins_nwstr(
-+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 (mvadd_wch)(
- int a1,
- int a2,
- const cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvadd_wchnstr
--int mvadd_wchnstr(
-+int (mvadd_wchnstr)(
- int a1,
- int a2,
- const cchar_t *a3,
-@@ -1447,14 +1449,14 @@
- { return(*(int *)0); }
-
- #undef mvadd_wchstr
--int mvadd_wchstr(
-+int (mvadd_wchstr)(
- int a1,
- int a2,
- const cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvaddnwstr
--int mvaddnwstr(
-+int (mvaddnwstr)(
- int a1,
- int a2,
- const wchar_t *a3,
-@@ -1462,28 +1464,28 @@
- { return(*(int *)0); }
-
- #undef mvaddwstr
--int mvaddwstr(
-+int (mvaddwstr)(
- int a1,
- int a2,
- const wchar_t *z)
- { return(*(int *)0); }
-
- #undef mvget_wch
--int mvget_wch(
-+int (mvget_wch)(
- int a1,
- int a2,
- wint_t *z)
- { return(*(int *)0); }
-
- #undef mvget_wstr
--int mvget_wstr(
-+int (mvget_wstr)(
- int a1,
- int a2,
- wint_t *z)
- { return(*(int *)0); }
-
- #undef mvgetn_wstr
--int mvgetn_wstr(
-+int (mvgetn_wstr)(
- int a1,
- int a2,
- wint_t *a3,
-@@ -1491,7 +1493,7 @@
- { return(*(int *)0); }
-
- #undef mvhline_set
--int mvhline_set(
-+int (mvhline_set)(
- int a1,
- int a2,
- const cchar_t *a3,
-@@ -1499,14 +1501,14 @@
- { return(*(int *)0); }
-
- #undef mvin_wch
--int mvin_wch(
-+int (mvin_wch)(
- int a1,
- int a2,
- cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvin_wchnstr
--int mvin_wchnstr(
-+int (mvin_wchnstr)(
- int a1,
- int a2,
- cchar_t *a3,
-@@ -1514,14 +1516,14 @@
- { return(*(int *)0); }
-
- #undef mvin_wchstr
--int mvin_wchstr(
-+int (mvin_wchstr)(
- int a1,
- int a2,
- cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvinnwstr
--int mvinnwstr(
-+int (mvinnwstr)(
- int a1,
- int a2,
- wchar_t *a3,
-@@ -1529,7 +1531,7 @@
- { return(*(int *)0); }
-
- #undef mvins_nwstr
--int mvins_nwstr(
-+int (mvins_nwstr)(
- int a1,
- int a2,
- const wchar_t *a3,
-@@ -1537,28 +1539,28 @@
- { return(*(int *)0); }
-
- #undef mvins_wch
--int mvins_wch(
-+int (mvins_wch)(
- int a1,
- int a2,
- const cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvins_wstr
--int mvins_wstr(
-+int (mvins_wstr)(
- int a1,
- int a2,
- const wchar_t *z)
- { return(*(int *)0); }
-
- #undef mvinwstr
--int mvinwstr(
-+int (mvinwstr)(
- int a1,
- int a2,
- wchar_t *z)
- { return(*(int *)0); }
-
- #undef mvvline_set
--int mvvline_set(
-+int (mvvline_set)(
- int a1,
- int a2,
- const cchar_t *a3,
-@@ -1566,7 +1568,7 @@
- { return(*(int *)0); }
-
- #undef mvwadd_wch
--int mvwadd_wch(
-+int (mvwadd_wch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1574,7 +1576,7 @@
- { return(*(int *)0); }
-
- #undef mvwadd_wchnstr
--int mvwadd_wchnstr(
-+int (mvwadd_wchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1583,7 +1585,7 @@
- { return(*(int *)0); }
-
- #undef mvwadd_wchstr
--int mvwadd_wchstr(
-+int (mvwadd_wchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1591,7 +1593,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddnwstr
--int mvwaddnwstr(
-+int (mvwaddnwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1600,7 +1602,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddwstr
--int mvwaddwstr(
-+int (mvwaddwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1608,7 +1610,7 @@
- { return(*(int *)0); }
-
- #undef mvwget_wch
--int mvwget_wch(
-+int (mvwget_wch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1616,7 +1618,7 @@
- { return(*(int *)0); }
-
- #undef mvwget_wstr
--int mvwget_wstr(
-+int (mvwget_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1624,7 +1626,7 @@
- { return(*(int *)0); }
-
- #undef mvwgetn_wstr
--int mvwgetn_wstr(
-+int (mvwgetn_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1633,7 +1635,7 @@
- { return(*(int *)0); }
-
- #undef mvwhline_set
--int mvwhline_set(
-+int (mvwhline_set)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1642,7 +1644,7 @@
- { return(*(int *)0); }
-
- #undef mvwin_wch
--int mvwin_wch(
-+int (mvwin_wch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1650,7 +1652,7 @@
- { return(*(int *)0); }
-
- #undef mvwin_wchnstr
--int mvwin_wchnstr(
-+int (mvwin_wchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1659,7 +1661,7 @@
- { return(*(int *)0); }
-
- #undef mvwin_wchstr
--int mvwin_wchstr(
-+int (mvwin_wchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1667,7 +1669,7 @@
- { return(*(int *)0); }
-
- #undef mvwinnwstr
--int mvwinnwstr(
-+int (mvwinnwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1676,7 +1678,7 @@
- { return(*(int *)0); }
-
- #undef mvwins_nwstr
--int mvwins_nwstr(
-+int (mvwins_nwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1685,7 +1687,7 @@
- { return(*(int *)0); }
-
- #undef mvwins_wch
--int mvwins_wch(
-+int (mvwins_wch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1693,7 +1695,7 @@
- { return(*(int *)0); }
-
- #undef mvwins_wstr
--int mvwins_wstr(
-+int (mvwins_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1701,7 +1703,7 @@
- { return(*(int *)0); }
-
- #undef mvwinwstr
--int mvwinwstr(
-+int (mvwinwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1709,7 +1711,7 @@
- { return(*(int *)0); }
-
- #undef mvwvline_set
--int mvwvline_set(
-+int (mvwvline_set)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1718,49 +1720,49 @@
- { return(*(int *)0); }
-
- #undef vline_set
--int vline_set(
-+int (vline_set)(
- const cchar_t *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wadd_wchstr
--int wadd_wchstr(
-+int (wadd_wchstr)(
- WINDOW *a1,
- const cchar_t *z)
- { return(*(int *)0); }
-
- #undef waddwstr
--int waddwstr(
-+int (waddwstr)(
- WINDOW *a1,
- const wchar_t *z)
- { return(*(int *)0); }
-
- #undef wget_wstr
--int wget_wstr(
-+int (wget_wstr)(
- WINDOW *a1,
- wint_t *z)
- { return(*(int *)0); }
-
- #undef wgetbkgrnd
--int wgetbkgrnd(
-+int (wgetbkgrnd)(
- WINDOW *a1,
- cchar_t *z)
- { return(*(int *)0); }
-
- #undef win_wchstr
--int win_wchstr(
-+int (win_wchstr)(
- WINDOW *a1,
- cchar_t *z)
- { return(*(int *)0); }
-
- #undef wins_wstr
--int wins_wstr(
-+int (wins_wstr)(
- WINDOW *a1,
- const wchar_t *z)
- { return(*(int *)0); }
-
- #undef mouse_trafo
--NCURSES_BOOL mouse_trafo(
-+NCURSES_BOOL (mouse_trafo)(
- int *a1,
- int *a2,
- NCURSES_BOOL z)
-@@ -2040,6 +2042,23 @@
- void _nc_mvcur_wrap(void)
- { /* void */ }
-
-+#undef _nc_mvcur_sp
-+int _nc_mvcur_sp(
-+ 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 xnew)
-+ { return(*(int *)0); }
-+
- #undef mvcur_sp
- int mvcur_sp(
- SCREEN *sp,
-@@ -2106,6 +2125,8 @@
-
- /* ./base/lib_newwin.c */
-
-+#include "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/stddef.h"
-+
- #undef _nc_freewin
- int _nc_freewin(
- WINDOW *win)
-@@ -2495,7 +2516,7 @@
- int slines,
- int scolumns,
- FILE *output,
-- NCURSES_BOOL filtered,
-+ int filtered,
- int slk_format)
- { return(*(int *)0); }
-
-@@ -2504,7 +2525,7 @@
- int slines,
- int scolumns,
- FILE *output,
-- NCURSES_BOOL filtered,
-+ int filtered,
- int slk_format)
- { return(*(int *)0); }
-
-@@ -2786,7 +2807,7 @@
-
- #undef _nc_signal_handler
- void _nc_signal_handler(
-- NCURSES_BOOL enable)
-+ int enable)
- { /* void */ }
-
- /* ./base/lib_ungetch.c */
-@@ -3023,12 +3044,6 @@
- va_list ap)
- { return(*(char **)0); }
-
--/* ./base/memmove.c */
--
--#undef _nc_memmove
--void _nc_memmove(void)
-- { /* void */ }
--
- /* ./base/vsscanf.c */
-
- #undef _nc_vsscanf
-@@ -3563,7 +3578,7 @@
- #undef _nc_copy_termtype
- void _nc_copy_termtype(
- TERMTYPE *dst,
-- TERMTYPE *src)
-+ const TERMTYPE *src)
- { /* void */ }
-
- /* ./codes.c */
-@@ -3667,6 +3682,8 @@
-
- /* ./tinfo/db_iterator.c */
-
-+#include <time.h>
-+
- #undef _nc_tic_dir
- const char *_nc_tic_dir(
- const char *path)
-@@ -3758,6 +3775,12 @@
- const char *name)
- { return(*(int *)0); }
-
-+#undef _nc_setenv_num
-+void _nc_setenv_num(
-+ const char *name,
-+ int value)
-+ { /* void */ }
-+
- /* ./tinfo/home_terminfo.c */
-
- #undef _nc_home_terminfo
-@@ -4098,7 +4121,7 @@
- #undef _nc_keypad
- int _nc_keypad(
- SCREEN *sp,
-- NCURSES_BOOL flag)
-+ int flag)
- { return(*(int *)0); }
-
- /* ./tinfo/lib_raw.c */
-@@ -4229,11 +4252,22 @@
- NCURSES_BOOL f)
- { /* void */ }
-
-+#undef use_tioctl_sp
-+void use_tioctl_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
- #undef use_env
- void use_env(
- NCURSES_BOOL f)
- { /* void */ }
-
-+#undef use_tioctl
-+void use_tioctl(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
- #undef _nc_get_screensize
- void _nc_get_screensize(
- SCREEN *sp,
-@@ -4255,7 +4289,7 @@
- #undef _nc_tinfo_cmdch
- void _nc_tinfo_cmdch(
- TERMINAL *termp,
-- char proto)
-+ int proto)
- { /* void */ }
-
- #undef _nc_get_locale
-@@ -4276,7 +4310,7 @@
- char *tname,
- int Filedes,
- int *errret,
-- NCURSES_BOOL reuse)
-+ int reuse)
- { return(*(int *)0); }
-
- #undef new_prescr
-@@ -4415,7 +4449,7 @@
- int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
-- int *popcount)
-+ int *_nc_popcount)
- { return(*(int *)0); }
-
- #undef tparm
-@@ -4435,7 +4469,7 @@
- #undef PC
- char PC;
- #undef ospeed
--NCURSES_OSPEED ospeed;
-+short ospeed;
- #undef _nc_nulls_sent
- int _nc_nulls_sent;
-
-@@ -4475,12 +4509,28 @@
- int ch)
- { return(*(int *)0); }
-
-+#undef _nc_putchar_sp
-+int _nc_putchar_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar
-+int _nc_putchar(
-+ int ch)
-+ { return(*(int *)0); }
-+
- #undef putp_sp
- int putp_sp(
- SCREEN *sp,
- const char *string)
- { return(*(int *)0); }
-
-+#undef putp
-+int putp(
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_putp_sp
- int _nc_putp_sp(
- SCREEN *sp,
-@@ -4488,11 +4538,6 @@
- const char *string)
- { return(*(int *)0); }
-
--#undef putp
--int putp(
-- const char *string)
-- { return(*(int *)0); }
--
- #undef _nc_putp
- int _nc_putp(
- const char *name,
-@@ -4557,12 +4602,12 @@
-
- #undef _nc_retrace_bool
- NCURSES_BOOL _nc_retrace_bool(
-- NCURSES_BOOL code)
-+ int code)
- { return(*(NCURSES_BOOL *)0); }
-
- #undef _nc_retrace_char
- char _nc_retrace_char(
-- char code)
-+ int code)
- { return(*(char *)0); }
-
- #undef _nc_retrace_int
-@@ -4829,10 +4874,30 @@
- char *const *_nc_strfnames(void)
- { return(*(char **)0); }
-
-+/* ./tinfo/obsolete.c */
-+
-+#undef _nc_set_buffer_sp
-+void _nc_set_buffer_sp(
-+ SCREEN *sp,
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+#undef _nc_set_buffer
-+void _nc_set_buffer(
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
- /* ./tinfo/read_entry.c */
-
- #include <hashed_db.h>
-
-+#undef _nc_init_termtype
-+void _nc_init_termtype(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
- #undef _nc_read_termtype
- int _nc_read_termtype(
- TERMTYPE *ptr,
-@@ -4857,25 +4922,8 @@
-
- #include <sys/types.h>
-
--#undef _nc_read_termcap_entry
--int _nc_read_termcap_entry(
-- const char *const tn,
-- TERMTYPE *const tp)
-- { return(*(int *)0); }
--
--/* ./tinfo/setbuf.c */
--
--#undef _nc_set_buffer_sp
--void _nc_set_buffer_sp(
-- SCREEN *sp,
-- FILE *ofp,
-- NCURSES_BOOL buffered)
-- { /* void */ }
--
--#undef _nc_set_buffer
--void _nc_set_buffer(
-- FILE *ofp,
-- NCURSES_BOOL buffered)
-+#undef _nc_read_termcap
-+void _nc_read_termcap(void)
- { /* void */ }
-
- /* ./tinfo/strings.c */
-@@ -5123,6 +5171,8 @@
-
- #undef _nc_syntax
- int _nc_syntax;
-+#undef _nc_strict_bsd
-+int _nc_strict_bsd;
- #undef _nc_curr_file_pos
- long _nc_curr_file_pos;
- #undef _nc_comment_start
-Index: ncurses/llib-lncursesw
---- ncurses-5.9/ncurses/llib-lncursesw 2011-01-08 19:01:11.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-lncursesw 2013-12-14 22:06:25.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2001-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2001-2011,2013 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 @@
- ****************************************************************************/
-
- /****************************************************************************
-- * Author: Thomas E. Dickey 2001-2010,2011 *
-+ * Author: Thomas E. Dickey 2001-on *
- ****************************************************************************/
- /* LINTLIBRARY */
-
-@@ -366,17 +366,17 @@
- #undef _nc_do_color_sp
- void _nc_do_color_sp(
- SCREEN *sp,
-- short old_pair,
-- short pair,
-- NCURSES_BOOL reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_OUTC_sp outc)
- { /* void */ }
-
- #undef _nc_do_color
- void _nc_do_color(
-- short old_pair,
-- short pair,
-- NCURSES_BOOL reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_OUTC outc)
- { /* void */ }
-
-@@ -454,86 +454,88 @@
-
- /* ./lib_gen.c */
-
-+#include <ncurses_cfg.h>
-+
- #undef addch
--int addch(
-+int (addch)(
- const chtype z)
- { return(*(int *)0); }
-
- #undef addchnstr
--int addchnstr(
-+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(
-+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(
-- NCURSES_ATTR_T z)
-+int (attroff)(
-+ int z)
- { return(*(int *)0); }
-
- #undef attron
--int attron(
-- NCURSES_ATTR_T z)
-+int (attron)(
-+ int z)
- { return(*(int *)0); }
-
- #undef attrset
--int attrset(
-- NCURSES_ATTR_T z)
-+int (attrset)(
-+ int z)
- { return(*(int *)0); }
-
- #undef attr_get
--int attr_get(
-+int (attr_get)(
- attr_t *a1,
- short *a2,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_off
--int attr_off(
-+int (attr_off)(
- attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_on
--int attr_on(
-+int (attr_on)(
- attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef attr_set
--int attr_set(
-+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(
-+int (border)(
- chtype a1,
- chtype a2,
- chtype a3,
-@@ -545,14 +547,14 @@
- { return(*(int *)0); }
-
- #undef box
--int box(
-+int (box)(
- WINDOW *a1,
- chtype a2,
- chtype z)
- { return(*(int *)0); }
-
- #undef chgat
--int chgat(
-+int (chgat)(
- int a1,
- attr_t a2,
- short a3,
-@@ -560,137 +562,137 @@
- { 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(
-+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(
-+int (getnstr)(
- char *a1,
- int z)
- { return(*(int *)0); }
-
- #undef getstr
--int getstr(
-+int (getstr)(
- char *z)
- { return(*(int *)0); }
-
- #undef hline
--int hline(
-+int (hline)(
- chtype a1,
- int z)
- { return(*(int *)0); }
-
- #undef inch
--chtype inch(void)
-+chtype (inch)(void)
- { return(*(chtype *)0); }
-
- #undef inchnstr
--int inchnstr(
-+int (inchnstr)(
- chtype *a1,
- int z)
- { return(*(int *)0); }
-
- #undef inchstr
--int inchstr(
-+int (inchstr)(
- chtype *z)
- { return(*(int *)0); }
-
- #undef innstr
--int innstr(
-+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(
-+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 (move)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvaddch
--int mvaddch(
-+int (mvaddch)(
- int a1,
- int a2,
- const chtype z)
- { return(*(int *)0); }
-
- #undef mvaddchnstr
--int mvaddchnstr(
-+int (mvaddchnstr)(
- int a1,
- int a2,
- const chtype *a3,
-@@ -698,14 +700,14 @@
- { return(*(int *)0); }
-
- #undef mvaddchstr
--int mvaddchstr(
-+int (mvaddchstr)(
- int a1,
- int a2,
- const chtype *z)
- { return(*(int *)0); }
-
- #undef mvaddnstr
--int mvaddnstr(
-+int (mvaddnstr)(
- int a1,
- int a2,
- const char *a3,
-@@ -713,14 +715,14 @@
- { return(*(int *)0); }
-
- #undef mvaddstr
--int mvaddstr(
-+int (mvaddstr)(
- int a1,
- int a2,
- const char *z)
- { return(*(int *)0); }
-
- #undef mvchgat
--int mvchgat(
-+int (mvchgat)(
- int a1,
- int a2,
- int a3,
-@@ -730,19 +732,19 @@
- { return(*(int *)0); }
-
- #undef mvdelch
--int mvdelch(
-+int (mvdelch)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvgetch
--int mvgetch(
-+int (mvgetch)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef mvgetnstr
--int mvgetnstr(
-+int (mvgetnstr)(
- int a1,
- int a2,
- char *a3,
-@@ -750,14 +752,14 @@
- { return(*(int *)0); }
-
- #undef mvgetstr
--int mvgetstr(
-+int (mvgetstr)(
- int a1,
- int a2,
- char *z)
- { return(*(int *)0); }
-
- #undef mvhline
--int mvhline(
-+int (mvhline)(
- int a1,
- int a2,
- chtype a3,
-@@ -765,13 +767,13 @@
- { return(*(int *)0); }
-
- #undef mvinch
--chtype mvinch(
-+chtype (mvinch)(
- int a1,
- int z)
- { return(*(chtype *)0); }
-
- #undef mvinchnstr
--int mvinchnstr(
-+int (mvinchnstr)(
- int a1,
- int a2,
- chtype *a3,
-@@ -779,14 +781,14 @@
- { return(*(int *)0); }
-
- #undef mvinchstr
--int mvinchstr(
-+int (mvinchstr)(
- int a1,
- int a2,
- chtype *z)
- { return(*(int *)0); }
-
- #undef mvinnstr
--int mvinnstr(
-+int (mvinnstr)(
- int a1,
- int a2,
- char *a3,
-@@ -794,14 +796,14 @@
- { return(*(int *)0); }
-
- #undef mvinsch
--int mvinsch(
-+int (mvinsch)(
- int a1,
- int a2,
- chtype z)
- { return(*(int *)0); }
-
- #undef mvinsnstr
--int mvinsnstr(
-+int (mvinsnstr)(
- int a1,
- int a2,
- const char *a3,
-@@ -809,21 +811,21 @@
- { return(*(int *)0); }
-
- #undef mvinsstr
--int mvinsstr(
-+int (mvinsstr)(
- int a1,
- int a2,
- const char *z)
- { return(*(int *)0); }
-
- #undef mvinstr
--int mvinstr(
-+int (mvinstr)(
- int a1,
- int a2,
- char *z)
- { return(*(int *)0); }
-
- #undef mvvline
--int mvvline(
-+int (mvvline)(
- int a1,
- int a2,
- chtype a3,
-@@ -831,7 +833,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddch
--int mvwaddch(
-+int (mvwaddch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -839,7 +841,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddchnstr
--int mvwaddchnstr(
-+int (mvwaddchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -848,7 +850,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddchstr
--int mvwaddchstr(
-+int (mvwaddchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -856,7 +858,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddnstr
--int mvwaddnstr(
-+int (mvwaddnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -865,7 +867,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddstr
--int mvwaddstr(
-+int (mvwaddstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -873,7 +875,7 @@
- { return(*(int *)0); }
-
- #undef mvwchgat
--int mvwchgat(
-+int (mvwchgat)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -884,21 +886,21 @@
- { return(*(int *)0); }
-
- #undef mvwdelch
--int mvwdelch(
-+int (mvwdelch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(int *)0); }
-
- #undef mvwgetch
--int mvwgetch(
-+int (mvwgetch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(int *)0); }
-
- #undef mvwgetnstr
--int mvwgetnstr(
-+int (mvwgetnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -907,7 +909,7 @@
- { return(*(int *)0); }
-
- #undef mvwgetstr
--int mvwgetstr(
-+int (mvwgetstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -915,7 +917,7 @@
- { return(*(int *)0); }
-
- #undef mvwhline
--int mvwhline(
-+int (mvwhline)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -924,14 +926,14 @@
- { return(*(int *)0); }
-
- #undef mvwinch
--chtype mvwinch(
-+chtype (mvwinch)(
- WINDOW *a1,
- int a2,
- int z)
- { return(*(chtype *)0); }
-
- #undef mvwinchnstr
--int mvwinchnstr(
-+int (mvwinchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -940,7 +942,7 @@
- { return(*(int *)0); }
-
- #undef mvwinchstr
--int mvwinchstr(
-+int (mvwinchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -948,7 +950,7 @@
- { return(*(int *)0); }
-
- #undef mvwinnstr
--int mvwinnstr(
-+int (mvwinnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -957,7 +959,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsch
--int mvwinsch(
-+int (mvwinsch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -965,7 +967,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsnstr
--int mvwinsnstr(
-+int (mvwinsnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -974,7 +976,7 @@
- { return(*(int *)0); }
-
- #undef mvwinsstr
--int mvwinsstr(
-+int (mvwinsstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -982,7 +984,7 @@
- { return(*(int *)0); }
-
- #undef mvwinstr
--int mvwinstr(
-+int (mvwinstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -990,7 +992,7 @@
- { return(*(int *)0); }
-
- #undef mvwvline
--int mvwvline(
-+int (mvwvline)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -999,129 +1001,129 @@
- { 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 (setscrreg)(
- int a1,
- int z)
- { return(*(int *)0); }
-
- #undef slk_attr_off
--int slk_attr_off(
-+int (slk_attr_off)(
- const attr_t a1,
- void *z)
- { return(*(int *)0); }
-
- #undef slk_attr_on
--int slk_attr_on(
-+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(
-+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(
-+int (vline)(
- chtype a1,
- int z)
- { return(*(int *)0); }
-
- #undef vw_printw
--int vw_printw(
-+int (vw_printw)(
- WINDOW *a1,
- const char *a2,
- va_list z)
- { return(*(int *)0); }
-
- #undef vw_scanw
--int vw_scanw(
-+int (vw_scanw)(
- WINDOW *a1,
- char *a2,
- va_list z)
- { return(*(int *)0); }
-
- #undef waddchstr
--int waddchstr(
-+int (waddchstr)(
- WINDOW *a1,
- const chtype *z)
- { return(*(int *)0); }
-
- #undef waddstr
--int waddstr(
-+int (waddstr)(
- WINDOW *a1,
- const char *z)
- { return(*(int *)0); }
-
- #undef wattron
--int wattron(
-+int (wattron)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattroff
--int wattroff(
-+int (wattroff)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattrset
--int wattrset(
-+int (wattrset)(
- WINDOW *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wattr_get
--int wattr_get(
-+int (wattr_get)(
- WINDOW *a1,
- attr_t *a2,
- short *a3,
-@@ -1129,7 +1131,7 @@
- { return(*(int *)0); }
-
- #undef wattr_set
--int wattr_set(
-+int (wattr_set)(
- WINDOW *a1,
- attr_t a2,
- short a3,
-@@ -1137,205 +1139,205 @@
- { return(*(int *)0); }
-
- #undef wdeleteln
--int wdeleteln(
-+int (wdeleteln)(
- WINDOW *z)
- { return(*(int *)0); }
-
- #undef wgetstr
--int wgetstr(
-+int (wgetstr)(
- WINDOW *a1,
- char *z)
- { return(*(int *)0); }
-
- #undef winchstr
--int winchstr(
-+int (winchstr)(
- WINDOW *a1,
- chtype *z)
- { return(*(int *)0); }
-
- #undef winsertln
--int winsertln(
-+int (winsertln)(
- WINDOW *z)
- { return(*(int *)0); }
-
- #undef winsstr
--int winsstr(
-+int (winsstr)(
- WINDOW *a1,
- const char *z)
- { return(*(int *)0); }
-
- #undef winstr
--int winstr(
-+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 wgetscrreg
--int wgetscrreg(
-+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(
-+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(
-+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(
-+int (border_set)(
- const cchar_t *a1,
- const cchar_t *a2,
- const cchar_t *a3,
-@@ -1347,96 +1349,96 @@
- { return(*(int *)0); }
-
- #undef box_set
--int box_set(
-+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(
-+int (getn_wstr)(
- wint_t *a1,
- int z)
- { return(*(int *)0); }
-
- #undef hline_set
--int hline_set(
-+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(
-+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(
-+int (innwstr)(
- wchar_t *a1,
- int z)
- { return(*(int *)0); }
-
- #undef ins_nwstr
--int ins_nwstr(
-+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 (mvadd_wch)(
- int a1,
- int a2,
- const cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvadd_wchnstr
--int mvadd_wchnstr(
-+int (mvadd_wchnstr)(
- int a1,
- int a2,
- const cchar_t *a3,
-@@ -1444,14 +1446,14 @@
- { return(*(int *)0); }
-
- #undef mvadd_wchstr
--int mvadd_wchstr(
-+int (mvadd_wchstr)(
- int a1,
- int a2,
- const cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvaddnwstr
--int mvaddnwstr(
-+int (mvaddnwstr)(
- int a1,
- int a2,
- const wchar_t *a3,
-@@ -1459,28 +1461,28 @@
- { return(*(int *)0); }
-
- #undef mvaddwstr
--int mvaddwstr(
-+int (mvaddwstr)(
- int a1,
- int a2,
- const wchar_t *z)
- { return(*(int *)0); }
-
- #undef mvget_wch
--int mvget_wch(
-+int (mvget_wch)(
- int a1,
- int a2,
- wint_t *z)
- { return(*(int *)0); }
-
- #undef mvget_wstr
--int mvget_wstr(
-+int (mvget_wstr)(
- int a1,
- int a2,
- wint_t *z)
- { return(*(int *)0); }
-
- #undef mvgetn_wstr
--int mvgetn_wstr(
-+int (mvgetn_wstr)(
- int a1,
- int a2,
- wint_t *a3,
-@@ -1488,7 +1490,7 @@
- { return(*(int *)0); }
-
- #undef mvhline_set
--int mvhline_set(
-+int (mvhline_set)(
- int a1,
- int a2,
- const cchar_t *a3,
-@@ -1496,14 +1498,14 @@
- { return(*(int *)0); }
-
- #undef mvin_wch
--int mvin_wch(
-+int (mvin_wch)(
- int a1,
- int a2,
- cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvin_wchnstr
--int mvin_wchnstr(
-+int (mvin_wchnstr)(
- int a1,
- int a2,
- cchar_t *a3,
-@@ -1511,14 +1513,14 @@
- { return(*(int *)0); }
-
- #undef mvin_wchstr
--int mvin_wchstr(
-+int (mvin_wchstr)(
- int a1,
- int a2,
- cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvinnwstr
--int mvinnwstr(
-+int (mvinnwstr)(
- int a1,
- int a2,
- wchar_t *a3,
-@@ -1526,7 +1528,7 @@
- { return(*(int *)0); }
-
- #undef mvins_nwstr
--int mvins_nwstr(
-+int (mvins_nwstr)(
- int a1,
- int a2,
- const wchar_t *a3,
-@@ -1534,28 +1536,28 @@
- { return(*(int *)0); }
-
- #undef mvins_wch
--int mvins_wch(
-+int (mvins_wch)(
- int a1,
- int a2,
- const cchar_t *z)
- { return(*(int *)0); }
-
- #undef mvins_wstr
--int mvins_wstr(
-+int (mvins_wstr)(
- int a1,
- int a2,
- const wchar_t *z)
- { return(*(int *)0); }
-
- #undef mvinwstr
--int mvinwstr(
-+int (mvinwstr)(
- int a1,
- int a2,
- wchar_t *z)
- { return(*(int *)0); }
-
- #undef mvvline_set
--int mvvline_set(
-+int (mvvline_set)(
- int a1,
- int a2,
- const cchar_t *a3,
-@@ -1563,7 +1565,7 @@
- { return(*(int *)0); }
-
- #undef mvwadd_wch
--int mvwadd_wch(
-+int (mvwadd_wch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1571,7 +1573,7 @@
- { return(*(int *)0); }
-
- #undef mvwadd_wchnstr
--int mvwadd_wchnstr(
-+int (mvwadd_wchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1580,7 +1582,7 @@
- { return(*(int *)0); }
-
- #undef mvwadd_wchstr
--int mvwadd_wchstr(
-+int (mvwadd_wchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1588,7 +1590,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddnwstr
--int mvwaddnwstr(
-+int (mvwaddnwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1597,7 +1599,7 @@
- { return(*(int *)0); }
-
- #undef mvwaddwstr
--int mvwaddwstr(
-+int (mvwaddwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1605,7 +1607,7 @@
- { return(*(int *)0); }
-
- #undef mvwget_wch
--int mvwget_wch(
-+int (mvwget_wch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1613,7 +1615,7 @@
- { return(*(int *)0); }
-
- #undef mvwget_wstr
--int mvwget_wstr(
-+int (mvwget_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1621,7 +1623,7 @@
- { return(*(int *)0); }
-
- #undef mvwgetn_wstr
--int mvwgetn_wstr(
-+int (mvwgetn_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1630,7 +1632,7 @@
- { return(*(int *)0); }
-
- #undef mvwhline_set
--int mvwhline_set(
-+int (mvwhline_set)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1639,7 +1641,7 @@
- { return(*(int *)0); }
-
- #undef mvwin_wch
--int mvwin_wch(
-+int (mvwin_wch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1647,7 +1649,7 @@
- { return(*(int *)0); }
-
- #undef mvwin_wchnstr
--int mvwin_wchnstr(
-+int (mvwin_wchnstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1656,7 +1658,7 @@
- { return(*(int *)0); }
-
- #undef mvwin_wchstr
--int mvwin_wchstr(
-+int (mvwin_wchstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1664,7 +1666,7 @@
- { return(*(int *)0); }
-
- #undef mvwinnwstr
--int mvwinnwstr(
-+int (mvwinnwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1673,7 +1675,7 @@
- { return(*(int *)0); }
-
- #undef mvwins_nwstr
--int mvwins_nwstr(
-+int (mvwins_nwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1682,7 +1684,7 @@
- { return(*(int *)0); }
-
- #undef mvwins_wch
--int mvwins_wch(
-+int (mvwins_wch)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1690,7 +1692,7 @@
- { return(*(int *)0); }
-
- #undef mvwins_wstr
--int mvwins_wstr(
-+int (mvwins_wstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1698,7 +1700,7 @@
- { return(*(int *)0); }
-
- #undef mvwinwstr
--int mvwinwstr(
-+int (mvwinwstr)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1706,7 +1708,7 @@
- { return(*(int *)0); }
-
- #undef mvwvline_set
--int mvwvline_set(
-+int (mvwvline_set)(
- WINDOW *a1,
- int a2,
- int a3,
-@@ -1715,49 +1717,49 @@
- { return(*(int *)0); }
-
- #undef vline_set
--int vline_set(
-+int (vline_set)(
- const cchar_t *a1,
- int z)
- { return(*(int *)0); }
-
- #undef wadd_wchstr
--int wadd_wchstr(
-+int (wadd_wchstr)(
- WINDOW *a1,
- const cchar_t *z)
- { return(*(int *)0); }
-
- #undef waddwstr
--int waddwstr(
-+int (waddwstr)(
- WINDOW *a1,
- const wchar_t *z)
- { return(*(int *)0); }
-
- #undef wget_wstr
--int wget_wstr(
-+int (wget_wstr)(
- WINDOW *a1,
- wint_t *z)
- { return(*(int *)0); }
-
- #undef wgetbkgrnd
--int wgetbkgrnd(
-+int (wgetbkgrnd)(
- WINDOW *a1,
- cchar_t *z)
- { return(*(int *)0); }
-
- #undef win_wchstr
--int win_wchstr(
-+int (win_wchstr)(
- WINDOW *a1,
- cchar_t *z)
- { return(*(int *)0); }
-
- #undef wins_wstr
--int wins_wstr(
-+int (wins_wstr)(
- WINDOW *a1,
- const wchar_t *z)
- { return(*(int *)0); }
-
- #undef mouse_trafo
--NCURSES_BOOL mouse_trafo(
-+NCURSES_BOOL (mouse_trafo)(
- int *a1,
- int *a2,
- NCURSES_BOOL z)
-@@ -2031,6 +2033,23 @@
- void _nc_mvcur_wrap(void)
- { /* void */ }
-
-+#undef _nc_mvcur_sp
-+int _nc_mvcur_sp(
-+ 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 xnew)
-+ { return(*(int *)0); }
-+
- #undef mvcur_sp
- int mvcur_sp(
- SCREEN *sp,
-@@ -2097,6 +2116,8 @@
-
- /* ./base/lib_newwin.c */
-
-+#include "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/stddef.h"
-+
- #undef _nc_freewin
- int _nc_freewin(
- WINDOW *win)
-@@ -2440,8 +2461,8 @@
- void _nc_scroll_window(
- WINDOW *win,
- int const n,
-- short const top,
-- short const bottom,
-+ int const top,
-+ int const bottom,
- cchar_t blank)
- { /* void */ }
-
-@@ -2486,7 +2507,7 @@
- int slines,
- int scolumns,
- FILE *output,
-- NCURSES_BOOL filtered,
-+ int filtered,
- int slk_format)
- { return(*(int *)0); }
-
-@@ -2495,7 +2516,7 @@
- int slines,
- int scolumns,
- FILE *output,
-- NCURSES_BOOL filtered,
-+ int filtered,
- int slk_format)
- { return(*(int *)0); }
-
-@@ -2777,7 +2798,7 @@
-
- #undef _nc_signal_handler
- void _nc_signal_handler(
-- NCURSES_BOOL enable)
-+ int enable)
- { /* void */ }
-
- /* ./base/lib_ungetch.c */
-@@ -3014,12 +3035,6 @@
- va_list ap)
- { return(*(char **)0); }
-
--/* ./base/memmove.c */
--
--#undef _nc_memmove
--void _nc_memmove(void)
-- { /* void */ }
--
- /* ./base/vsscanf.c */
-
- #undef _nc_vsscanf
-@@ -3554,7 +3569,7 @@
- #undef _nc_copy_termtype
- void _nc_copy_termtype(
- TERMTYPE *dst,
-- TERMTYPE *src)
-+ const TERMTYPE *src)
- { /* void */ }
-
- /* ./codes.c */
-@@ -3653,6 +3668,8 @@
-
- /* ./tinfo/db_iterator.c */
-
-+#include <time.h>
-+
- #undef _nc_tic_dir
- const char *_nc_tic_dir(
- const char *path)
-@@ -3744,6 +3761,12 @@
- const char *name)
- { return(*(int *)0); }
-
-+#undef _nc_setenv_num
-+void _nc_setenv_num(
-+ const char *name,
-+ int value)
-+ { /* void */ }
-+
- /* ./tinfo/home_terminfo.c */
-
- #undef _nc_home_terminfo
-@@ -3929,8 +3952,6 @@
-
- /* ./tinfo/lib_napms.c */
-
--#include <time.h>
--
- #undef napms_sp
- int napms_sp(
- SCREEN *sp,
-@@ -4040,7 +4061,7 @@
- #undef _nc_keypad
- int _nc_keypad(
- SCREEN *sp,
-- NCURSES_BOOL flag)
-+ int flag)
- { return(*(int *)0); }
-
- /* ./tinfo/lib_raw.c */
-@@ -4149,11 +4170,22 @@
- NCURSES_BOOL f)
- { /* void */ }
-
-+#undef use_tioctl_sp
-+void use_tioctl_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
- #undef use_env
- void use_env(
- NCURSES_BOOL f)
- { /* void */ }
-
-+#undef use_tioctl
-+void use_tioctl(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
- #undef _nc_get_screensize
- void _nc_get_screensize(
- SCREEN *sp,
-@@ -4175,7 +4207,7 @@
- #undef _nc_tinfo_cmdch
- void _nc_tinfo_cmdch(
- TERMINAL *termp,
-- char proto)
-+ int proto)
- { /* void */ }
-
- #undef _nc_get_locale
-@@ -4196,7 +4228,7 @@
- char *tname,
- int Filedes,
- int *errret,
-- NCURSES_BOOL reuse)
-+ int reuse)
- { return(*(int *)0); }
-
- #undef new_prescr
-@@ -4335,7 +4367,7 @@
- int _nc_tparm_analyze(
- const char *string,
- char *p_is_s[9],
-- int *popcount)
-+ int *_nc_popcount)
- { return(*(int *)0); }
-
- #undef tparm
-@@ -4355,7 +4387,7 @@
- #undef PC
- char PC;
- #undef ospeed
--NCURSES_OSPEED ospeed;
-+short ospeed;
- #undef _nc_nulls_sent
- int _nc_nulls_sent;
-
-@@ -4395,12 +4427,28 @@
- int ch)
- { return(*(int *)0); }
-
-+#undef _nc_putchar_sp
-+int _nc_putchar_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar
-+int _nc_putchar(
-+ int ch)
-+ { return(*(int *)0); }
-+
- #undef putp_sp
- int putp_sp(
- SCREEN *sp,
- const char *string)
- { return(*(int *)0); }
-
-+#undef putp
-+int putp(
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_putp_sp
- int _nc_putp_sp(
- SCREEN *sp,
-@@ -4408,11 +4456,6 @@
- const char *string)
- { return(*(int *)0); }
-
--#undef putp
--int putp(
-- const char *string)
-- { return(*(int *)0); }
--
- #undef _nc_putp
- int _nc_putp(
- const char *name,
-@@ -4463,12 +4506,12 @@
-
- #undef _nc_retrace_bool
- NCURSES_BOOL _nc_retrace_bool(
-- NCURSES_BOOL code)
-+ int code)
- { return(*(NCURSES_BOOL *)0); }
-
- #undef _nc_retrace_char
- char _nc_retrace_char(
-- char code)
-+ int code)
- { return(*(char *)0); }
-
- #undef _nc_retrace_int
-@@ -4713,10 +4756,30 @@
- #undef strfnames
- char *const strfnames[] = {0};
-
-+/* ./tinfo/obsolete.c */
-+
-+#undef _nc_set_buffer_sp
-+void _nc_set_buffer_sp(
-+ SCREEN *sp,
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+#undef _nc_set_buffer
-+void _nc_set_buffer(
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
- /* ./tinfo/read_entry.c */
-
- #include <hashed_db.h>
-
-+#undef _nc_init_termtype
-+void _nc_init_termtype(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
- #undef _nc_read_termtype
- int _nc_read_termtype(
- TERMTYPE *ptr,
-@@ -4741,25 +4804,8 @@
-
- #include <sys/types.h>
-
--#undef _nc_read_termcap_entry
--int _nc_read_termcap_entry(
-- const char *const tn,
-- TERMTYPE *const tp)
-- { return(*(int *)0); }
--
--/* ./tinfo/setbuf.c */
--
--#undef _nc_set_buffer_sp
--void _nc_set_buffer_sp(
-- SCREEN *sp,
-- FILE *ofp,
-- NCURSES_BOOL buffered)
-- { /* void */ }
--
--#undef _nc_set_buffer
--void _nc_set_buffer(
-- FILE *ofp,
-- NCURSES_BOOL buffered)
-+#undef _nc_read_termcap
-+void _nc_read_termcap(void)
- { /* void */ }
-
- /* ./tinfo/strings.c */
-@@ -5007,6 +5053,8 @@
-
- #undef _nc_syntax
- int _nc_syntax;
-+#undef _nc_strict_bsd
-+int _nc_strict_bsd;
- #undef _nc_curr_file_pos
- long _nc_curr_file_pos;
- #undef _nc_comment_start
-Index: ncurses/llib-ltic
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-ltic 2012-06-30 20:16:16.000000000 +0000
-@@ -0,0 +1,212 @@
-+/****************************************************************************
-+ * Copyright (c) 2012 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 E. Dickey 2012 *
-+ ****************************************************************************/
-+/* LINTLIBRARY */
-+
-+/* ./tinfo/alloc_entry.c */
-+
-+#include <curses.priv.h>
-+#include <tic.h>
-+
-+#undef _nc_init_entry
-+void _nc_init_entry(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_copy_entry
-+ENTRY *_nc_copy_entry(
-+ ENTRY *oldp)
-+ { return(*(ENTRY **)0); }
-+
-+#undef _nc_save_str
-+char *_nc_save_str(
-+ const char *const string)
-+ { return(*(char **)0); }
-+
-+#undef _nc_wrap_entry
-+void _nc_wrap_entry(
-+ ENTRY *const ep,
-+ NCURSES_BOOL copy_strings)
-+ { /* void */ }
-+
-+#undef _nc_merge_entry
-+void _nc_merge_entry(
-+ TERMTYPE *const to,
-+ TERMTYPE *const from)
-+ { /* void */ }
-+
-+/* ./tinfo/captoinfo.c */
-+
-+#include <ctype.h>
-+
-+#undef _nc_captoinfo
-+char *_nc_captoinfo(
-+ const char *cap,
-+ const char *s,
-+ int const parameterized)
-+ { return(*(char **)0); }
-+
-+#undef _nc_infotocap
-+char *_nc_infotocap(
-+ const char *cap,
-+ const char *str,
-+ int const parameterized)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/comp_expand.c */
-+
-+#undef _nc_tic_expand
-+char *_nc_tic_expand(
-+ const char *srcp,
-+ NCURSES_BOOL tic_format,
-+ int numbers)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/comp_parse.c */
-+
-+#undef _nc_check_termtype2
-+void (*_nc_check_termtype2)(
-+ TERMTYPE *p1,
-+ NCURSES_BOOL p2);
-+#undef _nc_check_termtype
-+void (*_nc_check_termtype)(
-+ TERMTYPE *p1);
-+
-+#undef _nc_entry_match
-+NCURSES_BOOL _nc_entry_match(
-+ 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,
-+ NCURSES_BOOL (*hook)(
-+ ENTRY *p1))
-+ { /* void */ }
-+
-+#undef _nc_resolve_uses2
-+int _nc_resolve_uses2(
-+ NCURSES_BOOL fullresolve,
-+ NCURSES_BOOL literal)
-+ { return(*(int *)0); }
-+
-+#undef _nc_resolve_uses
-+int _nc_resolve_uses(
-+ NCURSES_BOOL fullresolve)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/comp_scan.c */
-+
-+#undef _nc_syntax
-+int _nc_syntax;
-+#undef _nc_strict_bsd
-+int _nc_strict_bsd;
-+#undef _nc_curr_file_pos
-+long _nc_curr_file_pos;
-+#undef _nc_comment_start
-+long _nc_comment_start;
-+#undef _nc_comment_end
-+long _nc_comment_end;
-+#undef _nc_start_line
-+long _nc_start_line;
-+#undef _nc_curr_token
-+struct token _nc_curr_token;
-+#undef _nc_disable_period
-+NCURSES_BOOL _nc_disable_period;
-+
-+#undef _nc_reset_input
-+void _nc_reset_input(
-+ FILE *fp,
-+ char *buf)
-+ { /* void */ }
-+
-+#undef _nc_get_token
-+int _nc_get_token(
-+ NCURSES_BOOL silent)
-+ { return(*(int *)0); }
-+
-+#undef _nc_trans_string
-+int _nc_trans_string(
-+ char *ptr,
-+ char *last)
-+ { return(*(int *)0); }
-+
-+#undef _nc_push_token
-+void _nc_push_token(
-+ int tokclass)
-+ { /* void */ }
-+
-+#undef _nc_panic_mode
-+void _nc_panic_mode(
-+ char ch)
-+ { /* void */ }
-+
-+/* ./tinfo/parse_entry.c */
-+
-+#undef _nc_parse_entry
-+int _nc_parse_entry(
-+ struct entry *entryp,
-+ int literal,
-+ NCURSES_BOOL silent)
-+ { return(*(int *)0); }
-+
-+#undef _nc_capcmp
-+int _nc_capcmp(
-+ const char *s,
-+ const char *t)
-+ { return(*(int *)0); }
-+
-+typedef struct {
-+ const char *from;
-+ const char *to;
-+} assoc;
-+
-+/* ./tinfo/write_entry.c */
-+
-+#include <hashed_db.h>
-+
-+#undef _nc_set_writedir
-+void _nc_set_writedir(
-+ char *dir)
-+ { /* void */ }
-+
-+#undef _nc_write_entry
-+void _nc_write_entry(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_tic_written
-+int _nc_tic_written(void)
-+ { return(*(int *)0); }
-Index: ncurses/llib-ltict
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-ltict 2013-12-14 22:01:15.000000000 +0000
-@@ -0,0 +1,212 @@
-+/****************************************************************************
-+ * Copyright (c) 2013 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 E. Dickey 2013 *
-+ ****************************************************************************/
-+/* LINTLIBRARY */
-+
-+/* ./tinfo/alloc_entry.c */
-+
-+#include <curses.priv.h>
-+#include <tic.h>
-+
-+#undef _nc_init_entry
-+void _nc_init_entry(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_copy_entry
-+ENTRY *_nc_copy_entry(
-+ ENTRY *oldp)
-+ { return(*(ENTRY **)0); }
-+
-+#undef _nc_save_str
-+char *_nc_save_str(
-+ const char *const string)
-+ { return(*(char **)0); }
-+
-+#undef _nc_wrap_entry
-+void _nc_wrap_entry(
-+ ENTRY *const ep,
-+ NCURSES_BOOL copy_strings)
-+ { /* void */ }
-+
-+#undef _nc_merge_entry
-+void _nc_merge_entry(
-+ TERMTYPE *const to,
-+ TERMTYPE *const from)
-+ { /* void */ }
-+
-+/* ./tinfo/captoinfo.c */
-+
-+#include <ctype.h>
-+
-+#undef _nc_captoinfo
-+char *_nc_captoinfo(
-+ const char *cap,
-+ const char *s,
-+ int const parameterized)
-+ { return(*(char **)0); }
-+
-+#undef _nc_infotocap
-+char *_nc_infotocap(
-+ const char *cap,
-+ const char *str,
-+ int const parameterized)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/comp_expand.c */
-+
-+#undef _nc_tic_expand
-+char *_nc_tic_expand(
-+ const char *srcp,
-+ NCURSES_BOOL tic_format,
-+ int numbers)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/comp_parse.c */
-+
-+#undef _nc_check_termtype2
-+void (*_nc_check_termtype2)(
-+ TERMTYPE *p1,
-+ NCURSES_BOOL p2);
-+#undef _nc_check_termtype
-+void (*_nc_check_termtype)(
-+ TERMTYPE *p1);
-+
-+#undef _nc_entry_match
-+NCURSES_BOOL _nc_entry_match(
-+ 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,
-+ NCURSES_BOOL (*hook)(
-+ ENTRY *p1))
-+ { /* void */ }
-+
-+#undef _nc_resolve_uses2
-+int _nc_resolve_uses2(
-+ NCURSES_BOOL fullresolve,
-+ NCURSES_BOOL literal)
-+ { return(*(int *)0); }
-+
-+#undef _nc_resolve_uses
-+int _nc_resolve_uses(
-+ NCURSES_BOOL fullresolve)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/comp_scan.c */
-+
-+#undef _nc_syntax
-+int _nc_syntax;
-+#undef _nc_strict_bsd
-+int _nc_strict_bsd;
-+#undef _nc_curr_file_pos
-+long _nc_curr_file_pos;
-+#undef _nc_comment_start
-+long _nc_comment_start;
-+#undef _nc_comment_end
-+long _nc_comment_end;
-+#undef _nc_start_line
-+long _nc_start_line;
-+#undef _nc_curr_token
-+struct token _nc_curr_token;
-+#undef _nc_disable_period
-+NCURSES_BOOL _nc_disable_period;
-+
-+#undef _nc_reset_input
-+void _nc_reset_input(
-+ FILE *fp,
-+ char *buf)
-+ { /* void */ }
-+
-+#undef _nc_get_token
-+int _nc_get_token(
-+ NCURSES_BOOL silent)
-+ { return(*(int *)0); }
-+
-+#undef _nc_trans_string
-+int _nc_trans_string(
-+ char *ptr,
-+ char *last)
-+ { return(*(int *)0); }
-+
-+#undef _nc_push_token
-+void _nc_push_token(
-+ int tokclass)
-+ { /* void */ }
-+
-+#undef _nc_panic_mode
-+void _nc_panic_mode(
-+ char ch)
-+ { /* void */ }
-+
-+/* ./tinfo/parse_entry.c */
-+
-+#undef _nc_parse_entry
-+int _nc_parse_entry(
-+ struct entry *entryp,
-+ int literal,
-+ NCURSES_BOOL silent)
-+ { return(*(int *)0); }
-+
-+#undef _nc_capcmp
-+int _nc_capcmp(
-+ const char *s,
-+ const char *t)
-+ { return(*(int *)0); }
-+
-+typedef struct {
-+ const char *from;
-+ const char *to;
-+} assoc;
-+
-+/* ./tinfo/write_entry.c */
-+
-+#include <hashed_db.h>
-+
-+#undef _nc_set_writedir
-+void _nc_set_writedir(
-+ char *dir)
-+ { /* void */ }
-+
-+#undef _nc_write_entry
-+void _nc_write_entry(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_tic_written
-+int _nc_tic_written(void)
-+ { return(*(int *)0); }
-Index: ncurses/llib-ltictw
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-ltictw 2012-06-30 21:24:08.000000000 +0000
-@@ -0,0 +1,212 @@
-+/****************************************************************************
-+ * Copyright (c) 2012 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 E. Dickey 2012 *
-+ ****************************************************************************/
-+/* LINTLIBRARY */
-+
-+/* ./tinfo/alloc_entry.c */
-+
-+#include <curses.priv.h>
-+#include <tic.h>
-+
-+#undef _nc_init_entry
-+void _nc_init_entry(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_copy_entry
-+ENTRY *_nc_copy_entry(
-+ ENTRY *oldp)
-+ { return(*(ENTRY **)0); }
-+
-+#undef _nc_save_str
-+char *_nc_save_str(
-+ const char *const string)
-+ { return(*(char **)0); }
-+
-+#undef _nc_wrap_entry
-+void _nc_wrap_entry(
-+ ENTRY *const ep,
-+ NCURSES_BOOL copy_strings)
-+ { /* void */ }
-+
-+#undef _nc_merge_entry
-+void _nc_merge_entry(
-+ TERMTYPE *const to,
-+ TERMTYPE *const from)
-+ { /* void */ }
-+
-+/* ./tinfo/captoinfo.c */
-+
-+#include <ctype.h>
-+
-+#undef _nc_captoinfo
-+char *_nc_captoinfo(
-+ const char *cap,
-+ const char *s,
-+ int const parameterized)
-+ { return(*(char **)0); }
-+
-+#undef _nc_infotocap
-+char *_nc_infotocap(
-+ const char *cap,
-+ const char *str,
-+ int const parameterized)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/comp_expand.c */
-+
-+#undef _nc_tic_expand
-+char *_nc_tic_expand(
-+ const char *srcp,
-+ NCURSES_BOOL tic_format,
-+ int numbers)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/comp_parse.c */
-+
-+#undef _nc_check_termtype2
-+void (*_nc_check_termtype2)(
-+ TERMTYPE *p1,
-+ NCURSES_BOOL p2);
-+#undef _nc_check_termtype
-+void (*_nc_check_termtype)(
-+ TERMTYPE *p1);
-+
-+#undef _nc_entry_match
-+NCURSES_BOOL _nc_entry_match(
-+ 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,
-+ NCURSES_BOOL (*hook)(
-+ ENTRY *p1))
-+ { /* void */ }
-+
-+#undef _nc_resolve_uses2
-+int _nc_resolve_uses2(
-+ NCURSES_BOOL fullresolve,
-+ NCURSES_BOOL literal)
-+ { return(*(int *)0); }
-+
-+#undef _nc_resolve_uses
-+int _nc_resolve_uses(
-+ NCURSES_BOOL fullresolve)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/comp_scan.c */
-+
-+#undef _nc_syntax
-+int _nc_syntax;
-+#undef _nc_strict_bsd
-+int _nc_strict_bsd;
-+#undef _nc_curr_file_pos
-+long _nc_curr_file_pos;
-+#undef _nc_comment_start
-+long _nc_comment_start;
-+#undef _nc_comment_end
-+long _nc_comment_end;
-+#undef _nc_start_line
-+long _nc_start_line;
-+#undef _nc_curr_token
-+struct token _nc_curr_token;
-+#undef _nc_disable_period
-+NCURSES_BOOL _nc_disable_period;
-+
-+#undef _nc_reset_input
-+void _nc_reset_input(
-+ FILE *fp,
-+ char *buf)
-+ { /* void */ }
-+
-+#undef _nc_get_token
-+int _nc_get_token(
-+ NCURSES_BOOL silent)
-+ { return(*(int *)0); }
-+
-+#undef _nc_trans_string
-+int _nc_trans_string(
-+ char *ptr,
-+ char *last)
-+ { return(*(int *)0); }
-+
-+#undef _nc_push_token
-+void _nc_push_token(
-+ int tokclass)
-+ { /* void */ }
-+
-+#undef _nc_panic_mode
-+void _nc_panic_mode(
-+ char ch)
-+ { /* void */ }
-+
-+/* ./tinfo/parse_entry.c */
-+
-+#undef _nc_parse_entry
-+int _nc_parse_entry(
-+ struct entry *entryp,
-+ int literal,
-+ NCURSES_BOOL silent)
-+ { return(*(int *)0); }
-+
-+#undef _nc_capcmp
-+int _nc_capcmp(
-+ const char *s,
-+ const char *t)
-+ { return(*(int *)0); }
-+
-+typedef struct {
-+ const char *from;
-+ const char *to;
-+} assoc;
-+
-+/* ./tinfo/write_entry.c */
-+
-+#include <hashed_db.h>
-+
-+#undef _nc_set_writedir
-+void _nc_set_writedir(
-+ char *dir)
-+ { /* void */ }
-+
-+#undef _nc_write_entry
-+void _nc_write_entry(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_tic_written
-+int _nc_tic_written(void)
-+ { return(*(int *)0); }
-Index: ncurses/llib-lticw
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-lticw 2012-06-30 21:00:26.000000000 +0000
-@@ -0,0 +1,212 @@
-+/****************************************************************************
-+ * Copyright (c) 2012 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 E. Dickey 2012 *
-+ ****************************************************************************/
-+/* LINTLIBRARY */
-+
-+/* ./tinfo/alloc_entry.c */
-+
-+#include <curses.priv.h>
-+#include <tic.h>
-+
-+#undef _nc_init_entry
-+void _nc_init_entry(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_copy_entry
-+ENTRY *_nc_copy_entry(
-+ ENTRY *oldp)
-+ { return(*(ENTRY **)0); }
-+
-+#undef _nc_save_str
-+char *_nc_save_str(
-+ const char *const string)
-+ { return(*(char **)0); }
-+
-+#undef _nc_wrap_entry
-+void _nc_wrap_entry(
-+ ENTRY *const ep,
-+ NCURSES_BOOL copy_strings)
-+ { /* void */ }
-+
-+#undef _nc_merge_entry
-+void _nc_merge_entry(
-+ TERMTYPE *const to,
-+ TERMTYPE *const from)
-+ { /* void */ }
-+
-+/* ./tinfo/captoinfo.c */
-+
-+#include <ctype.h>
-+
-+#undef _nc_captoinfo
-+char *_nc_captoinfo(
-+ const char *cap,
-+ const char *s,
-+ int const parameterized)
-+ { return(*(char **)0); }
-+
-+#undef _nc_infotocap
-+char *_nc_infotocap(
-+ const char *cap,
-+ const char *str,
-+ int const parameterized)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/comp_expand.c */
-+
-+#undef _nc_tic_expand
-+char *_nc_tic_expand(
-+ const char *srcp,
-+ NCURSES_BOOL tic_format,
-+ int numbers)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/comp_parse.c */
-+
-+#undef _nc_check_termtype2
-+void (*_nc_check_termtype2)(
-+ TERMTYPE *p1,
-+ NCURSES_BOOL p2);
-+#undef _nc_check_termtype
-+void (*_nc_check_termtype)(
-+ TERMTYPE *p1);
-+
-+#undef _nc_entry_match
-+NCURSES_BOOL _nc_entry_match(
-+ 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,
-+ NCURSES_BOOL (*hook)(
-+ ENTRY *p1))
-+ { /* void */ }
-+
-+#undef _nc_resolve_uses2
-+int _nc_resolve_uses2(
-+ NCURSES_BOOL fullresolve,
-+ NCURSES_BOOL literal)
-+ { return(*(int *)0); }
-+
-+#undef _nc_resolve_uses
-+int _nc_resolve_uses(
-+ NCURSES_BOOL fullresolve)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/comp_scan.c */
-+
-+#undef _nc_syntax
-+int _nc_syntax;
-+#undef _nc_strict_bsd
-+int _nc_strict_bsd;
-+#undef _nc_curr_file_pos
-+long _nc_curr_file_pos;
-+#undef _nc_comment_start
-+long _nc_comment_start;
-+#undef _nc_comment_end
-+long _nc_comment_end;
-+#undef _nc_start_line
-+long _nc_start_line;
-+#undef _nc_curr_token
-+struct token _nc_curr_token;
-+#undef _nc_disable_period
-+NCURSES_BOOL _nc_disable_period;
-+
-+#undef _nc_reset_input
-+void _nc_reset_input(
-+ FILE *fp,
-+ char *buf)
-+ { /* void */ }
-+
-+#undef _nc_get_token
-+int _nc_get_token(
-+ NCURSES_BOOL silent)
-+ { return(*(int *)0); }
-+
-+#undef _nc_trans_string
-+int _nc_trans_string(
-+ char *ptr,
-+ char *last)
-+ { return(*(int *)0); }
-+
-+#undef _nc_push_token
-+void _nc_push_token(
-+ int tokclass)
-+ { /* void */ }
-+
-+#undef _nc_panic_mode
-+void _nc_panic_mode(
-+ char ch)
-+ { /* void */ }
-+
-+/* ./tinfo/parse_entry.c */
-+
-+#undef _nc_parse_entry
-+int _nc_parse_entry(
-+ struct entry *entryp,
-+ int literal,
-+ NCURSES_BOOL silent)
-+ { return(*(int *)0); }
-+
-+#undef _nc_capcmp
-+int _nc_capcmp(
-+ const char *s,
-+ const char *t)
-+ { return(*(int *)0); }
-+
-+typedef struct {
-+ const char *from;
-+ const char *to;
-+} assoc;
-+
-+/* ./tinfo/write_entry.c */
-+
-+#include <hashed_db.h>
-+
-+#undef _nc_set_writedir
-+void _nc_set_writedir(
-+ char *dir)
-+ { /* void */ }
-+
-+#undef _nc_write_entry
-+void _nc_write_entry(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_tic_written
-+int _nc_tic_written(void)
-+ { return(*(int *)0); }
-Index: ncurses/llib-ltinfo
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-ltinfo 2013-12-14 22:06:07.000000000 +0000
-@@ -0,0 +1,1526 @@
-+/****************************************************************************
-+ * Copyright (c) 2012,2013 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 E. Dickey 2012 *
-+ ****************************************************************************/
-+/* LINTLIBRARY */
-+
-+/* ./tinfo/access.c */
-+
-+#include <curses.priv.h>
-+#include <ctype.h>
-+#include <tic.h>
-+
-+#undef _nc_rootname
-+char *_nc_rootname(
-+ char *path)
-+ { return(*(char **)0); }
-+
-+#undef _nc_is_abs_path
-+NCURSES_BOOL _nc_is_abs_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_pathlast
-+unsigned _nc_pathlast(
-+ const char *path)
-+ { return(*(unsigned *)0); }
-+
-+#undef _nc_basename
-+char *_nc_basename(
-+ char *path)
-+ { return(*(char **)0); }
-+
-+#undef _nc_access
-+int _nc_access(
-+ const char *path,
-+ int mode)
-+ { return(*(int *)0); }
-+
-+#undef _nc_is_dir_path
-+NCURSES_BOOL _nc_is_dir_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_is_file_path
-+NCURSES_BOOL _nc_is_file_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_env_access
-+int _nc_env_access(void)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/add_tries.c */
-+
-+#undef _nc_add_to_try
-+int _nc_add_to_try(
-+ TRIES **tree,
-+ const char *str,
-+ unsigned code)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/alloc_ttype.c */
-+
-+#undef _nc_align_termtype
-+void _nc_align_termtype(
-+ TERMTYPE *to,
-+ TERMTYPE *from)
-+ { /* void */ }
-+
-+#undef _nc_copy_termtype
-+void _nc_copy_termtype(
-+ TERMTYPE *dst,
-+ const TERMTYPE *src)
-+ { /* void */ }
-+
-+/* ./codes.c */
-+
-+#undef boolcodes
-+char *const boolcodes[] = {0};
-+#undef numcodes
-+char *const numcodes[] = {0};
-+#undef strcodes
-+char *const strcodes[] = {0};
-+
-+/* ./comp_captab.c */
-+
-+#include <hashsize.h>
-+
-+#undef _nc_get_table
-+const struct name_table_entry *_nc_get_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const struct name_table_entry **)0); }
-+
-+#undef _nc_get_hash_table
-+const HashValue *_nc_get_hash_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const HashValue **)0); }
-+
-+#undef _nc_get_alias_table
-+const struct alias *_nc_get_alias_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const struct alias **)0); }
-+
-+#undef _nc_get_hash_info
-+const HashData *_nc_get_hash_info(
-+ NCURSES_BOOL termcap)
-+ { return(*(const HashData **)0); }
-+
-+/* ./tinfo/comp_error.c */
-+
-+#undef _nc_suppress_warnings
-+NCURSES_BOOL _nc_suppress_warnings;
-+#undef _nc_curr_line
-+int _nc_curr_line;
-+#undef _nc_curr_col
-+int _nc_curr_col;
-+
-+#undef _nc_get_source
-+const char *_nc_get_source(void)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_set_source
-+void _nc_set_source(
-+ const char *const name)
-+ { /* void */ }
-+
-+#undef _nc_set_type
-+void _nc_set_type(
-+ const char *const name)
-+ { /* void */ }
-+
-+#undef _nc_get_type
-+void _nc_get_type(
-+ char *name)
-+ { /* void */ }
-+
-+#undef _nc_warning
-+void _nc_warning(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_err_abort
-+void _nc_err_abort(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_syserr_abort
-+void _nc_syserr_abort(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+/* ./tinfo/comp_hash.c */
-+
-+#undef _nc_find_entry
-+struct name_table_entry const *_nc_find_entry(
-+ 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,
-+ NCURSES_BOOL termcap)
-+ { return(*(struct name_table_entry const **)0); }
-+
-+/* ./tinfo/db_iterator.c */
-+
-+#include <time.h>
-+
-+#undef _nc_tic_dir
-+const char *_nc_tic_dir(
-+ const char *path)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_keep_tic_dir
-+void _nc_keep_tic_dir(
-+ const char *path)
-+ { /* void */ }
-+
-+#undef _nc_last_db
-+void _nc_last_db(void)
-+ { /* void */ }
-+
-+#undef _nc_next_db
-+const char *_nc_next_db(
-+ DBDIRS *state,
-+ int *offset)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_first_db
-+void _nc_first_db(
-+ DBDIRS *state,
-+ int *offset)
-+ { /* void */ }
-+
-+/* ./tinfo/doalloc.c */
-+
-+#undef _nc_doalloc
-+void *_nc_doalloc(
-+ void *oldp,
-+ size_t amount)
-+ { return(*(void **)0); }
-+
-+/* ./tinfo/entries.c */
-+
-+#undef _nc_head
-+ENTRY *_nc_head;
-+#undef _nc_tail
-+ENTRY *_nc_tail;
-+
-+#undef _nc_free_entry
-+void _nc_free_entry(
-+ ENTRY *headp,
-+ TERMTYPE *tterm)
-+ { /* void */ }
-+
-+#undef _nc_free_entries
-+void _nc_free_entries(
-+ ENTRY *headp)
-+ { /* void */ }
-+
-+#undef _nc_delink_entry
-+ENTRY *_nc_delink_entry(
-+ ENTRY *headp,
-+ TERMTYPE *tterm)
-+ { return(*(ENTRY **)0); }
-+
-+#undef _nc_leaks_tinfo
-+void _nc_leaks_tinfo(void)
-+ { /* void */ }
-+
-+/* ./fallback.c */
-+
-+#undef _nc_fallback
-+const TERMTYPE *_nc_fallback(
-+ const char *name)
-+ { return(*(const TERMTYPE **)0); }
-+
-+/* ./tinfo/free_ttype.c */
-+
-+#undef _nc_free_termtype
-+void _nc_free_termtype(
-+ TERMTYPE *ptr)
-+ { /* void */ }
-+
-+#undef _nc_user_definable
-+NCURSES_BOOL _nc_user_definable;
-+
-+#undef use_extended_names
-+int use_extended_names(
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/getenv_num.c */
-+
-+#undef _nc_getenv_num
-+int _nc_getenv_num(
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#undef _nc_setenv_num
-+void _nc_setenv_num(
-+ const char *name,
-+ int value)
-+ { /* void */ }
-+
-+/* ./tinfo/home_terminfo.c */
-+
-+#undef _nc_home_terminfo
-+char *_nc_home_terminfo(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/init_keytry.c */
-+
-+#if 0
-+
-+#include <init_keytry.h>
-+
-+#undef _nc_tinfo_fkeys
-+const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0};
-+
-+#endif
-+
-+#undef _nc_init_keytry
-+void _nc_init_keytry(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+/* ./tinfo/lib_acs.c */
-+
-+#undef acs_map
-+chtype acs_map[128];
-+
-+#undef _nc_init_acs_sp
-+void _nc_init_acs_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_init_acs
-+void _nc_init_acs(void)
-+ { /* void */ }
-+
-+/* ./tinfo/lib_baudrate.c */
-+
-+#include <termcap.h>
-+
-+struct speed {
-+ int s;
-+ int sp;
-+};
-+
-+#undef _nc_baudrate
-+int _nc_baudrate(
-+ int OSpeed)
-+ { return(*(int *)0); }
-+
-+#undef _nc_ospeed
-+int _nc_ospeed(
-+ int BaudRate)
-+ { return(*(int *)0); }
-+
-+#undef baudrate_sp
-+int baudrate_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef baudrate
-+int baudrate(void)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_cur_term.c */
-+
-+#undef cur_term
-+TERMINAL *cur_term;
-+
-+#undef set_curterm_sp
-+TERMINAL *set_curterm_sp(
-+ SCREEN *sp,
-+ TERMINAL *termp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef set_curterm
-+TERMINAL *set_curterm(
-+ TERMINAL *termp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef del_curterm_sp
-+int del_curterm_sp(
-+ SCREEN *sp,
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+#undef del_curterm
-+int del_curterm(
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_data.c */
-+
-+#undef stdscr
-+WINDOW *stdscr;
-+#undef curscr
-+WINDOW *curscr;
-+#undef newscr
-+WINDOW *newscr;
-+#undef _nc_screen_chain
-+SCREEN *_nc_screen_chain;
-+#undef SP
-+SCREEN *SP;
-+#undef _nc_globals
-+NCURSES_GLOBALS _nc_globals;
-+#undef _nc_prescreen
-+NCURSES_PRESCREEN _nc_prescreen;
-+
-+#undef _nc_screen_of
-+SCREEN *_nc_screen_of(
-+ WINDOW *win)
-+ { return(*(SCREEN **)0); }
-+
-+/* ./tinfo/lib_has_cap.c */
-+
-+#undef has_ic_sp
-+NCURSES_BOOL has_ic_sp(
-+ SCREEN *sp)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_ic
-+NCURSES_BOOL has_ic(void)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_il_sp
-+NCURSES_BOOL has_il_sp(
-+ SCREEN *sp)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_il
-+NCURSES_BOOL has_il(void)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+/* ./tinfo/lib_kernel.c */
-+
-+#undef erasechar_sp
-+char erasechar_sp(
-+ SCREEN *sp)
-+ { return(*(char *)0); }
-+
-+#undef erasechar
-+char erasechar(void)
-+ { return(*(char *)0); }
-+
-+#undef killchar_sp
-+char killchar_sp(
-+ SCREEN *sp)
-+ { return(*(char *)0); }
-+
-+#undef killchar
-+char killchar(void)
-+ { return(*(char *)0); }
-+
-+#undef flushinp_sp
-+int flushinp_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef flushinp
-+int flushinp(void)
-+ { return(*(int *)0); }
-+
-+/* ./lib_keyname.c */
-+
-+struct kn { short offset; int code; };
-+
-+#undef keyname_sp
-+char *keyname_sp(
-+ SCREEN *sp,
-+ int c)
-+ { return(*(char **)0); }
-+
-+#undef keyname
-+char *keyname(
-+ int c)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_longname.c */
-+
-+#undef longname
-+char *longname(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_napms.c */
-+
-+#include <sys/time.h>
-+
-+#undef napms_sp
-+int napms_sp(
-+ SCREEN *sp,
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef napms
-+int napms(
-+ int ms)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_options.c */
-+
-+#undef idlok
-+int idlok(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef idcok
-+void idcok(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { /* void */ }
-+
-+#undef halfdelay_sp
-+int halfdelay_sp(
-+ SCREEN *sp,
-+ int t)
-+ { return(*(int *)0); }
-+
-+#undef halfdelay
-+int halfdelay(
-+ int t)
-+ { return(*(int *)0); }
-+
-+#undef nodelay
-+int nodelay(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef notimeout
-+int notimeout(
-+ WINDOW *win,
-+ NCURSES_BOOL f)
-+ { return(*(int *)0); }
-+
-+#undef wtimeout
-+void wtimeout(
-+ WINDOW *win,
-+ int delay)
-+ { /* void */ }
-+
-+#undef keypad
-+int keypad(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef meta
-+int meta(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef curs_set_sp
-+int curs_set_sp(
-+ SCREEN *sp,
-+ int vis)
-+ { return(*(int *)0); }
-+
-+#undef curs_set
-+int curs_set(
-+ int vis)
-+ { return(*(int *)0); }
-+
-+#undef typeahead_sp
-+int typeahead_sp(
-+ SCREEN *sp,
-+ int fd)
-+ { return(*(int *)0); }
-+
-+#undef typeahead
-+int typeahead(
-+ int fd)
-+ { return(*(int *)0); }
-+
-+#undef has_key_sp
-+int has_key_sp(
-+ SCREEN *sp,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef has_key
-+int has_key(
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp_flush_sp
-+int _nc_putp_flush_sp(
-+ SCREEN *sp,
-+ const char *name,
-+ const char *value)
-+ { return(*(int *)0); }
-+
-+#undef _nc_keypad
-+int _nc_keypad(
-+ SCREEN *sp,
-+ int flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_raw.c */
-+
-+#undef raw_sp
-+int raw_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef raw
-+int raw(void)
-+ { return(*(int *)0); }
-+
-+#undef cbreak_sp
-+int cbreak_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef cbreak
-+int cbreak(void)
-+ { return(*(int *)0); }
-+
-+#undef qiflush_sp
-+void qiflush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef qiflush
-+void qiflush(void)
-+ { /* void */ }
-+
-+#undef noraw_sp
-+int noraw_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef noraw
-+int noraw(void)
-+ { return(*(int *)0); }
-+
-+#undef nocbreak_sp
-+int nocbreak_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef nocbreak
-+int nocbreak(void)
-+ { return(*(int *)0); }
-+
-+#undef noqiflush_sp
-+void noqiflush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef noqiflush
-+void noqiflush(void)
-+ { /* void */ }
-+
-+#undef intrflush_sp
-+int intrflush_sp(
-+ SCREEN *sp,
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef intrflush
-+int intrflush(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_setup.c */
-+
-+#include <locale.h>
-+#include <sys/ioctl.h>
-+#include <langinfo.h>
-+
-+#undef ttytype
-+char ttytype[256];
-+#undef LINES
-+int LINES;
-+#undef COLS
-+int COLS;
-+#undef TABSIZE
-+int TABSIZE;
-+
-+#undef set_tabsize_sp
-+int set_tabsize_sp(
-+ SCREEN *sp,
-+ int value)
-+ { return(*(int *)0); }
-+
-+#undef set_tabsize
-+int set_tabsize(
-+ int value)
-+ { return(*(int *)0); }
-+
-+#undef _nc_handle_sigwinch
-+int _nc_handle_sigwinch(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef use_env_sp
-+void use_env_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_tioctl_sp
-+void use_tioctl_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_env
-+void use_env(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_tioctl
-+void use_tioctl(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef _nc_get_screensize
-+void _nc_get_screensize(
-+ SCREEN *sp,
-+ int *linep,
-+ int *colp)
-+ { /* void */ }
-+
-+#undef _nc_update_screensize
-+void _nc_update_screensize(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_setup_tinfo
-+int _nc_setup_tinfo(
-+ const char *const tn,
-+ TERMTYPE *const tp)
-+ { return(*(int *)0); }
-+
-+#undef _nc_tinfo_cmdch
-+void _nc_tinfo_cmdch(
-+ TERMINAL *termp,
-+ int proto)
-+ { /* void */ }
-+
-+#undef _nc_get_locale
-+char *_nc_get_locale(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_unicode_locale
-+int _nc_unicode_locale(void)
-+ { return(*(int *)0); }
-+
-+#undef _nc_locale_breaks_acs
-+int _nc_locale_breaks_acs(
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+#undef _nc_setupterm
-+int _nc_setupterm(
-+ char *tname,
-+ int Filedes,
-+ int *errret,
-+ int reuse)
-+ { return(*(int *)0); }
-+
-+#undef new_prescr
-+SCREEN *new_prescr(void)
-+ { return(*(SCREEN **)0); }
-+
-+#undef setupterm
-+int setupterm(
-+ char *tname,
-+ int Filedes,
-+ int *errret)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_termcap.c */
-+
-+#undef UP
-+char *UP;
-+#undef BC
-+char *BC;
-+
-+#undef tgetent_sp
-+int tgetent_sp(
-+ SCREEN *sp,
-+ char *bufp,
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#if 0
-+
-+#include <capdefaults.c>
-+
-+#endif
-+
-+#undef tgetent
-+int tgetent(
-+ char *bufp,
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#undef tgetflag_sp
-+int tgetflag_sp(
-+ SCREEN *sp,
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetflag
-+int tgetflag(
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetnum_sp
-+int tgetnum_sp(
-+ SCREEN *sp,
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetnum
-+int tgetnum(
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetstr_sp
-+char *tgetstr_sp(
-+ SCREEN *sp,
-+ char *id,
-+ char **area)
-+ { return(*(char **)0); }
-+
-+#undef tgetstr
-+char *tgetstr(
-+ char *id,
-+ char **area)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_termname.c */
-+
-+#undef termname_sp
-+char *termname_sp(
-+ SCREEN *sp)
-+ { return(*(char **)0); }
-+
-+#undef termname
-+char *termname(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tgoto.c */
-+
-+#undef tgoto
-+char *tgoto(
-+ const char *string,
-+ int x,
-+ int y)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_ti.c */
-+
-+#undef tigetflag_sp
-+int tigetflag_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetflag
-+int tigetflag(
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetnum_sp
-+int tigetnum_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetnum
-+int tigetnum(
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetstr_sp
-+char *tigetstr_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(char **)0); }
-+
-+#undef tigetstr
-+char *tigetstr(
-+ char *str)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tparm.c */
-+
-+#undef _nc_tparm_err
-+int _nc_tparm_err;
-+
-+#undef _nc_tparm_analyze
-+int _nc_tparm_analyze(
-+ const char *string,
-+ char *p_is_s[9],
-+ int *_nc_popcount)
-+ { return(*(int *)0); }
-+
-+#undef tparm
-+char *tparm(
-+ char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiparm
-+char *tiparm(
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tputs.c */
-+
-+#undef PC
-+char PC;
-+#undef ospeed
-+short ospeed;
-+#undef _nc_nulls_sent
-+int _nc_nulls_sent;
-+
-+#undef _nc_set_no_padding
-+void _nc_set_no_padding(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef delay_output_sp
-+int delay_output_sp(
-+ SCREEN *sp,
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef delay_output
-+int delay_output(
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef _nc_flush_sp
-+void _nc_flush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_flush
-+void _nc_flush(void)
-+ { /* void */ }
-+
-+#undef _nc_outch_sp
-+int _nc_outch_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_outch
-+int _nc_outch(
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar_sp
-+int _nc_putchar_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar
-+int _nc_putchar(
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef putp_sp
-+int putp_sp(
-+ SCREEN *sp,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef putp
-+int putp(
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp_sp
-+int _nc_putp_sp(
-+ SCREEN *sp,
-+ const char *name,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp
-+int _nc_putp(
-+ const char *name,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef tputs_sp
-+int tputs_sp(
-+ SCREEN *sp,
-+ const char *string,
-+ int affcnt,
-+ NCURSES_OUTC_sp outc)
-+ { return(*(int *)0); }
-+
-+#undef _nc_outc_wrapper
-+int _nc_outc_wrapper(
-+ SCREEN *sp,
-+ int c)
-+ { return(*(int *)0); }
-+
-+#undef tputs
-+int tputs(
-+ const char *string,
-+ int affcnt,
-+ int (*outc)(
-+ int p1))
-+ { return(*(int *)0); }
-+
-+/* ./trace/lib_trace.c */
-+
-+#undef _nc_tracing
-+unsigned _nc_tracing;
-+#undef _nc_tputs_trace
-+const char *_nc_tputs_trace = {0};
-+#undef _nc_outchars
-+long _nc_outchars;
-+
-+#undef trace
-+void trace(
-+ const unsigned int tracelevel)
-+ { /* void */ }
-+
-+#undef _tracef
-+void _tracef(
-+ const char *fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_retrace_bool
-+NCURSES_BOOL _nc_retrace_bool(
-+ int code)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_retrace_char
-+char _nc_retrace_char(
-+ int code)
-+ { return(*(char *)0); }
-+
-+#undef _nc_retrace_int
-+int _nc_retrace_int(
-+ int code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_retrace_unsigned
-+unsigned _nc_retrace_unsigned(
-+ unsigned code)
-+ { return(*(unsigned *)0); }
-+
-+#undef _nc_retrace_ptr
-+char *_nc_retrace_ptr(
-+ char *code)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_cptr
-+const char *_nc_retrace_cptr(
-+ const char *code)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_retrace_cvoid_ptr
-+void *_nc_retrace_cvoid_ptr(
-+ void *code)
-+ { return(*(void **)0); }
-+
-+#undef _nc_retrace_void_ptr
-+void *_nc_retrace_void_ptr(
-+ void *code)
-+ { return(*(void **)0); }
-+
-+#undef _nc_retrace_sp
-+SCREEN *_nc_retrace_sp(
-+ SCREEN *code)
-+ { return(*(SCREEN **)0); }
-+
-+#undef _nc_retrace_win
-+WINDOW *_nc_retrace_win(
-+ WINDOW *code)
-+ { return(*(WINDOW **)0); }
-+
-+/* ./trace/lib_traceatr.c */
-+
-+#undef _traceattr2
-+char *_traceattr2(
-+ int bufnum,
-+ chtype newmode)
-+ { return(*(char **)0); }
-+
-+#undef _traceattr
-+char *_traceattr(
-+ attr_t newmode)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_int_attr_t
-+int _nc_retrace_int_attr_t(
-+ attr_t code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_retrace_attr_t
-+attr_t _nc_retrace_attr_t(
-+ attr_t code)
-+ { return(*(attr_t *)0); }
-+
-+#undef _nc_altcharset_name
-+const char *_nc_altcharset_name(
-+ attr_t attr,
-+ chtype ch)
-+ { return(*(const char **)0); }
-+
-+#undef _tracechtype2
-+char *_tracechtype2(
-+ int bufnum,
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracechtype
-+char *_tracechtype(
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_chtype
-+chtype _nc_retrace_chtype(
-+ chtype code)
-+ { return(*(chtype *)0); }
-+
-+/* ./trace/lib_tracebits.c */
-+
-+typedef struct {
-+ unsigned int val;
-+ const char *name;
-+} BITNAMES;
-+
-+#undef _nc_trace_ttymode
-+char *_nc_trace_ttymode(
-+ struct termios *tty)
-+ { return(*(char **)0); }
-+
-+#undef _nc_tracebits
-+char *_nc_tracebits(void)
-+ { return(*(char **)0); }
-+
-+/* ./trace/lib_tracechr.c */
-+
-+#undef _nc_tracechar
-+char *_nc_tracechar(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracechar
-+char *_tracechar(
-+ int ch)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_ttyflags.c */
-+
-+#undef _nc_get_tty_mode_sp
-+int _nc_get_tty_mode_sp(
-+ SCREEN *sp,
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_get_tty_mode
-+int _nc_get_tty_mode(
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_set_tty_mode_sp
-+int _nc_set_tty_mode_sp(
-+ SCREEN *sp,
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_set_tty_mode
-+int _nc_set_tty_mode(
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef def_shell_mode_sp
-+int def_shell_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef def_shell_mode
-+int def_shell_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef def_prog_mode_sp
-+int def_prog_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef def_prog_mode
-+int def_prog_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef reset_prog_mode_sp
-+int reset_prog_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef reset_prog_mode
-+int reset_prog_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef reset_shell_mode_sp
-+int reset_shell_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef reset_shell_mode
-+int reset_shell_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef savetty_sp
-+int savetty_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef savetty
-+int savetty(void)
-+ { return(*(int *)0); }
-+
-+#undef resetty_sp
-+int resetty_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef resetty
-+int resetty(void)
-+ { return(*(int *)0); }
-+
-+/* ./tty/lib_twait.c */
-+
-+#undef _nc_timed_wait
-+int _nc_timed_wait(
-+ SCREEN *sp,
-+ int mode,
-+ int milliseconds,
-+ int *timeleft)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/name_match.c */
-+
-+#undef _nc_first_name
-+char *_nc_first_name(
-+ const char *const sp)
-+ { return(*(char **)0); }
-+
-+#undef _nc_name_match
-+int _nc_name_match(
-+ const char *const namelst,
-+ const char *const name,
-+ const char *const delim)
-+ { return(*(int *)0); }
-+
-+/* ./names.c */
-+
-+#undef boolnames
-+char *const boolnames[] = {0};
-+#undef boolfnames
-+char *const boolfnames[] = {0};
-+#undef numnames
-+char *const numnames[] = {0};
-+#undef numfnames
-+char *const numfnames[] = {0};
-+#undef strnames
-+char *const strnames[] = {0};
-+#undef strfnames
-+char *const strfnames[] = {0};
-+
-+/* ./tinfo/obsolete.c */
-+
-+#undef _nc_set_buffer_sp
-+void _nc_set_buffer_sp(
-+ SCREEN *sp,
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+#undef _nc_set_buffer
-+void _nc_set_buffer(
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+/* ./tinfo/read_entry.c */
-+
-+#include <hashed_db.h>
-+
-+#undef _nc_init_termtype
-+void _nc_init_termtype(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_read_termtype
-+int _nc_read_termtype(
-+ TERMTYPE *ptr,
-+ char *buffer,
-+ int limit)
-+ { return(*(int *)0); }
-+
-+#undef _nc_read_file_entry
-+int _nc_read_file_entry(
-+ const char *const filename,
-+ TERMTYPE *ptr)
-+ { return(*(int *)0); }
-+
-+#undef _nc_read_entry
-+int _nc_read_entry(
-+ const char *const name,
-+ char *const filename,
-+ TERMTYPE *const tp)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/read_termcap.c */
-+
-+#include <sys/types.h>
-+
-+#undef _nc_read_termcap
-+void _nc_read_termcap(void)
-+ { /* void */ }
-+
-+/* ./tinfo/strings.c */
-+
-+#undef _nc_str_init
-+string_desc *_nc_str_init(
-+ string_desc *dst,
-+ char *src,
-+ size_t len)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_str_null
-+string_desc *_nc_str_null(
-+ string_desc *dst,
-+ size_t len)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_str_copy
-+string_desc *_nc_str_copy(
-+ string_desc *dst,
-+ string_desc *src)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_safe_strcat
-+NCURSES_BOOL _nc_safe_strcat(
-+ string_desc *dst,
-+ const char *src)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_safe_strcpy
-+NCURSES_BOOL _nc_safe_strcpy(
-+ string_desc *dst,
-+ const char *src)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+/* ./trace/trace_buf.c */
-+
-+#undef _nc_trace_buf
-+char *_nc_trace_buf(
-+ int bufnum,
-+ size_t want)
-+ { return(*(char **)0); }
-+
-+#undef _nc_trace_bufcat
-+char *_nc_trace_bufcat(
-+ int bufnum,
-+ const char *value)
-+ { return(*(char **)0); }
-+
-+/* ./trace/trace_tries.c */
-+
-+#undef _nc_trace_tries
-+void _nc_trace_tries(
-+ TRIES *tree)
-+ { /* void */ }
-+
-+/* ./base/tries.c */
-+
-+#undef _nc_expand_try
-+char *_nc_expand_try(
-+ TRIES *tree,
-+ unsigned code,
-+ int *count,
-+ size_t len)
-+ { return(*(char **)0); }
-+
-+#undef _nc_remove_key
-+int _nc_remove_key(
-+ TRIES **tree,
-+ unsigned code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_remove_string
-+int _nc_remove_string(
-+ TRIES **tree,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/trim_sgr0.c */
-+
-+#undef _nc_trim_sgr0
-+char *_nc_trim_sgr0(
-+ TERMTYPE *tp)
-+ { return(*(char **)0); }
-+
-+/* ./unctrl.c */
-+
-+#undef unctrl_sp
-+char *unctrl_sp(
-+ SCREEN *sp,
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef unctrl
-+char *unctrl(
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+/* ./trace/visbuf.c */
-+
-+#undef _nc_visbuf2
-+const char *_nc_visbuf2(
-+ int bufnum,
-+ const char *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_visbuf
-+const char *_nc_visbuf(
-+ const char *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_visbufn
-+const char *_nc_visbufn(
-+ const char *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viscbuf2
-+const char *_nc_viscbuf2(
-+ int bufnum,
-+ const chtype *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viscbuf
-+const char *_nc_viscbuf(
-+ const chtype *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+/* ./base/define_key.c */
-+
-+#undef define_key_sp
-+int define_key_sp(
-+ SCREEN *sp,
-+ const char *str,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef define_key
-+int define_key(
-+ const char *str,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/hashed_db.c */
-+
-+#undef _nc_hashed_db
-+void _nc_hashed_db(void)
-+ { /* void */ }
-+
-+/* ./base/key_defined.c */
-+
-+#undef key_defined_sp
-+int key_defined_sp(
-+ SCREEN *sp,
-+ const char *str)
-+ { return(*(int *)0); }
-+
-+#undef key_defined
-+int key_defined(
-+ const char *str)
-+ { return(*(int *)0); }
-+
-+/* ./base/keybound.c */
-+
-+#undef keybound_sp
-+char *keybound_sp(
-+ SCREEN *sp,
-+ int code,
-+ int count)
-+ { return(*(char **)0); }
-+
-+#undef keybound
-+char *keybound(
-+ int code,
-+ int count)
-+ { return(*(char **)0); }
-+
-+/* ./base/keyok.c */
-+
-+#undef keyok_sp
-+int keyok_sp(
-+ SCREEN *sp,
-+ int c,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef keyok
-+int keyok(
-+ int c,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./base/version.c */
-+
-+#undef curses_version
-+const char *curses_version(void)
-+ { return(*(const char **)0); }
-Index: ncurses/llib-ltinfot
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-ltinfot 2013-12-14 22:03:58.000000000 +0000
-@@ -0,0 +1,1635 @@
-+/****************************************************************************
-+ * Copyright (c) 2013 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 E. Dickey 2013 *
-+ ****************************************************************************/
-+/* LINTLIBRARY */
-+
-+/* ./tinfo/access.c */
-+
-+#include <curses.priv.h>
-+#include <ctype.h>
-+#include <tic.h>
-+
-+#undef _nc_rootname
-+char *_nc_rootname(
-+ char *path)
-+ { return(*(char **)0); }
-+
-+#undef _nc_is_abs_path
-+NCURSES_BOOL _nc_is_abs_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_pathlast
-+unsigned _nc_pathlast(
-+ const char *path)
-+ { return(*(unsigned *)0); }
-+
-+#undef _nc_basename
-+char *_nc_basename(
-+ char *path)
-+ { return(*(char **)0); }
-+
-+#undef _nc_access
-+int _nc_access(
-+ const char *path,
-+ int mode)
-+ { return(*(int *)0); }
-+
-+#undef _nc_is_dir_path
-+NCURSES_BOOL _nc_is_dir_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_is_file_path
-+NCURSES_BOOL _nc_is_file_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_env_access
-+int _nc_env_access(void)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/add_tries.c */
-+
-+#undef _nc_add_to_try
-+int _nc_add_to_try(
-+ TRIES **tree,
-+ const char *str,
-+ unsigned code)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/alloc_ttype.c */
-+
-+#undef _nc_align_termtype
-+void _nc_align_termtype(
-+ TERMTYPE *to,
-+ TERMTYPE *from)
-+ { /* void */ }
-+
-+#undef _nc_copy_termtype
-+void _nc_copy_termtype(
-+ TERMTYPE *dst,
-+ const TERMTYPE *src)
-+ { /* void */ }
-+
-+/* ./codes.c */
-+
-+#undef _nc_boolcodes
-+char *const *_nc_boolcodes(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_numcodes
-+char *const *_nc_numcodes(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_strcodes
-+char *const *_nc_strcodes(void)
-+ { return(*(char **)0); }
-+
-+/* ./comp_captab.c */
-+
-+#include <hashsize.h>
-+
-+#undef _nc_get_table
-+const struct name_table_entry *_nc_get_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const struct name_table_entry **)0); }
-+
-+#undef _nc_get_hash_table
-+const HashValue *_nc_get_hash_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const HashValue **)0); }
-+
-+#undef _nc_get_alias_table
-+const struct alias *_nc_get_alias_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const struct alias **)0); }
-+
-+#undef _nc_get_hash_info
-+const HashData *_nc_get_hash_info(
-+ NCURSES_BOOL termcap)
-+ { return(*(const HashData **)0); }
-+
-+/* ./tinfo/comp_error.c */
-+
-+#undef _nc_suppress_warnings
-+NCURSES_BOOL _nc_suppress_warnings;
-+#undef _nc_curr_line
-+int _nc_curr_line;
-+#undef _nc_curr_col
-+int _nc_curr_col;
-+
-+#undef _nc_get_source
-+const char *_nc_get_source(void)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_set_source
-+void _nc_set_source(
-+ const char *const name)
-+ { /* void */ }
-+
-+#undef _nc_set_type
-+void _nc_set_type(
-+ const char *const name)
-+ { /* void */ }
-+
-+#undef _nc_get_type
-+void _nc_get_type(
-+ char *name)
-+ { /* void */ }
-+
-+#undef _nc_warning
-+void _nc_warning(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_err_abort
-+void _nc_err_abort(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_syserr_abort
-+void _nc_syserr_abort(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+/* ./tinfo/comp_hash.c */
-+
-+#undef _nc_find_entry
-+struct name_table_entry const *_nc_find_entry(
-+ 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,
-+ NCURSES_BOOL termcap)
-+ { return(*(struct name_table_entry const **)0); }
-+
-+/* ./tinfo/db_iterator.c */
-+
-+#include <time.h>
-+
-+#undef _nc_tic_dir
-+const char *_nc_tic_dir(
-+ const char *path)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_keep_tic_dir
-+void _nc_keep_tic_dir(
-+ const char *path)
-+ { /* void */ }
-+
-+#undef _nc_last_db
-+void _nc_last_db(void)
-+ { /* void */ }
-+
-+#undef _nc_next_db
-+const char *_nc_next_db(
-+ DBDIRS *state,
-+ int *offset)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_first_db
-+void _nc_first_db(
-+ DBDIRS *state,
-+ int *offset)
-+ { /* void */ }
-+
-+/* ./tinfo/doalloc.c */
-+
-+#undef _nc_doalloc
-+void *_nc_doalloc(
-+ void *oldp,
-+ size_t amount)
-+ { return(*(void **)0); }
-+
-+/* ./tinfo/entries.c */
-+
-+#undef _nc_head
-+ENTRY *_nc_head;
-+#undef _nc_tail
-+ENTRY *_nc_tail;
-+
-+#undef _nc_free_entry
-+void _nc_free_entry(
-+ ENTRY *headp,
-+ TERMTYPE *tterm)
-+ { /* void */ }
-+
-+#undef _nc_free_entries
-+void _nc_free_entries(
-+ ENTRY *headp)
-+ { /* void */ }
-+
-+#undef _nc_delink_entry
-+ENTRY *_nc_delink_entry(
-+ ENTRY *headp,
-+ TERMTYPE *tterm)
-+ { return(*(ENTRY **)0); }
-+
-+#undef _nc_leaks_tinfo
-+void _nc_leaks_tinfo(void)
-+ { /* void */ }
-+
-+/* ./fallback.c */
-+
-+#undef _nc_fallback
-+const TERMTYPE *_nc_fallback(
-+ const char *name)
-+ { return(*(const TERMTYPE **)0); }
-+
-+/* ./tinfo/free_ttype.c */
-+
-+#undef _nc_free_termtype
-+void _nc_free_termtype(
-+ TERMTYPE *ptr)
-+ { /* void */ }
-+
-+#undef _nc_user_definable
-+NCURSES_BOOL _nc_user_definable;
-+
-+#undef use_extended_names
-+int use_extended_names(
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/getenv_num.c */
-+
-+#undef _nc_getenv_num
-+int _nc_getenv_num(
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#undef _nc_setenv_num
-+void _nc_setenv_num(
-+ const char *name,
-+ int value)
-+ { /* void */ }
-+
-+/* ./tinfo/home_terminfo.c */
-+
-+#undef _nc_home_terminfo
-+char *_nc_home_terminfo(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/init_keytry.c */
-+
-+#if 0
-+
-+#include <init_keytry.h>
-+
-+#undef _nc_tinfo_fkeys
-+const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0};
-+
-+#endif
-+
-+#undef _nc_init_keytry
-+void _nc_init_keytry(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+/* ./tinfo/lib_acs.c */
-+
-+#undef _nc_acs_map
-+chtype *_nc_acs_map(void)
-+ { return(*(chtype **)0); }
-+
-+#undef _nc_init_acs_sp
-+void _nc_init_acs_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_init_acs
-+void _nc_init_acs(void)
-+ { /* void */ }
-+
-+/* ./tinfo/lib_baudrate.c */
-+
-+#include <termcap.h>
-+
-+struct speed {
-+ int s;
-+ int sp;
-+};
-+
-+#undef _nc_baudrate
-+int _nc_baudrate(
-+ int OSpeed)
-+ { return(*(int *)0); }
-+
-+#undef _nc_ospeed
-+int _nc_ospeed(
-+ int BaudRate)
-+ { return(*(int *)0); }
-+
-+#undef baudrate_sp
-+int baudrate_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef baudrate
-+int baudrate(void)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_cur_term.c */
-+
-+#undef _nc_get_cur_term_sp
-+TERMINAL *_nc_get_cur_term_sp(
-+ SCREEN *sp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef _nc_get_cur_term
-+TERMINAL *_nc_get_cur_term(void)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef _nc_cur_term
-+TERMINAL *_nc_cur_term(void)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef set_curterm_sp
-+TERMINAL *set_curterm_sp(
-+ SCREEN *sp,
-+ TERMINAL *termp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef set_curterm
-+TERMINAL *set_curterm(
-+ TERMINAL *termp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef del_curterm_sp
-+int del_curterm_sp(
-+ SCREEN *sp,
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+#undef del_curterm
-+int del_curterm(
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_data.c */
-+
-+#undef _nc_stdscr
-+WINDOW *_nc_stdscr(void)
-+ { return(*(WINDOW **)0); }
-+
-+#undef _nc_curscr
-+WINDOW *_nc_curscr(void)
-+ { return(*(WINDOW **)0); }
-+
-+#undef _nc_newscr
-+WINDOW *_nc_newscr(void)
-+ { return(*(WINDOW **)0); }
-+
-+#undef _nc_screen_chain
-+SCREEN *_nc_screen_chain;
-+#undef SP
-+SCREEN *SP;
-+#undef _nc_globals
-+NCURSES_GLOBALS _nc_globals;
-+#undef _nc_prescreen
-+NCURSES_PRESCREEN _nc_prescreen;
-+
-+#undef _nc_screen_of
-+SCREEN *_nc_screen_of(
-+ WINDOW *win)
-+ { return(*(SCREEN **)0); }
-+
-+#undef _nc_init_pthreads
-+void _nc_init_pthreads(void)
-+ { /* void */ }
-+
-+#undef _nc_mutex_init
-+void _nc_mutex_init(
-+ pthread_mutex_t *obj)
-+ { /* void */ }
-+
-+#undef _nc_mutex_lock
-+int _nc_mutex_lock(
-+ pthread_mutex_t *obj)
-+ { return(*(int *)0); }
-+
-+#undef _nc_mutex_trylock
-+int _nc_mutex_trylock(
-+ pthread_mutex_t *obj)
-+ { return(*(int *)0); }
-+
-+#undef _nc_mutex_unlock
-+int _nc_mutex_unlock(
-+ pthread_mutex_t *obj)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_has_cap.c */
-+
-+#undef has_ic_sp
-+NCURSES_BOOL has_ic_sp(
-+ SCREEN *sp)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_ic
-+NCURSES_BOOL has_ic(void)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_il_sp
-+NCURSES_BOOL has_il_sp(
-+ SCREEN *sp)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_il
-+NCURSES_BOOL has_il(void)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+/* ./tinfo/lib_kernel.c */
-+
-+#undef erasechar_sp
-+char erasechar_sp(
-+ SCREEN *sp)
-+ { return(*(char *)0); }
-+
-+#undef erasechar
-+char erasechar(void)
-+ { return(*(char *)0); }
-+
-+#undef killchar_sp
-+char killchar_sp(
-+ SCREEN *sp)
-+ { return(*(char *)0); }
-+
-+#undef killchar
-+char killchar(void)
-+ { return(*(char *)0); }
-+
-+#undef flushinp_sp
-+int flushinp_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef flushinp
-+int flushinp(void)
-+ { return(*(int *)0); }
-+
-+/* ./lib_keyname.c */
-+
-+struct kn { short offset; int code; };
-+
-+#undef keyname_sp
-+char *keyname_sp(
-+ SCREEN *sp,
-+ int c)
-+ { return(*(char **)0); }
-+
-+#undef keyname
-+char *keyname(
-+ int c)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_longname.c */
-+
-+#undef longname_sp
-+char *longname_sp(
-+ SCREEN *sp)
-+ { return(*(char **)0); }
-+
-+#undef longname
-+char *longname(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_napms.c */
-+
-+#undef napms_sp
-+int napms_sp(
-+ SCREEN *sp,
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef napms
-+int napms(
-+ int ms)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_options.c */
-+
-+#undef idlok
-+int idlok(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef idcok
-+void idcok(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { /* void */ }
-+
-+#undef halfdelay_sp
-+int halfdelay_sp(
-+ SCREEN *sp,
-+ int t)
-+ { return(*(int *)0); }
-+
-+#undef halfdelay
-+int halfdelay(
-+ int t)
-+ { return(*(int *)0); }
-+
-+#undef nodelay
-+int nodelay(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef notimeout
-+int notimeout(
-+ WINDOW *win,
-+ NCURSES_BOOL f)
-+ { return(*(int *)0); }
-+
-+#undef wtimeout
-+void wtimeout(
-+ WINDOW *win,
-+ int delay)
-+ { /* void */ }
-+
-+#undef keypad
-+int keypad(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef meta
-+int meta(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef curs_set_sp
-+int curs_set_sp(
-+ SCREEN *sp,
-+ int vis)
-+ { return(*(int *)0); }
-+
-+#undef curs_set
-+int curs_set(
-+ int vis)
-+ { return(*(int *)0); }
-+
-+#undef typeahead_sp
-+int typeahead_sp(
-+ SCREEN *sp,
-+ int fd)
-+ { return(*(int *)0); }
-+
-+#undef typeahead
-+int typeahead(
-+ int fd)
-+ { return(*(int *)0); }
-+
-+#undef has_key_sp
-+int has_key_sp(
-+ SCREEN *sp,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef has_key
-+int has_key(
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp_flush_sp
-+int _nc_putp_flush_sp(
-+ SCREEN *sp,
-+ const char *name,
-+ const char *value)
-+ { return(*(int *)0); }
-+
-+#undef _nc_keypad
-+int _nc_keypad(
-+ SCREEN *sp,
-+ int flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_raw.c */
-+
-+#undef raw_sp
-+int raw_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef raw
-+int raw(void)
-+ { return(*(int *)0); }
-+
-+#undef cbreak_sp
-+int cbreak_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef cbreak
-+int cbreak(void)
-+ { return(*(int *)0); }
-+
-+#undef qiflush_sp
-+void qiflush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef qiflush
-+void qiflush(void)
-+ { /* void */ }
-+
-+#undef noraw_sp
-+int noraw_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef noraw
-+int noraw(void)
-+ { return(*(int *)0); }
-+
-+#undef nocbreak_sp
-+int nocbreak_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef nocbreak
-+int nocbreak(void)
-+ { return(*(int *)0); }
-+
-+#undef noqiflush_sp
-+void noqiflush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef noqiflush
-+void noqiflush(void)
-+ { /* void */ }
-+
-+#undef intrflush_sp
-+int intrflush_sp(
-+ SCREEN *sp,
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef intrflush
-+int intrflush(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_setup.c */
-+
-+#include <locale.h>
-+#include <sys/ioctl.h>
-+#include <langinfo.h>
-+
-+#undef _nc_ttytype
-+char *_nc_ttytype(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_ptr_Lines
-+int *_nc_ptr_Lines(
-+ SCREEN *sp)
-+ { return(*(int **)0); }
-+
-+#undef _nc_LINES
-+int _nc_LINES(void)
-+ { return(*(int *)0); }
-+
-+#undef _nc_ptr_Cols
-+int *_nc_ptr_Cols(
-+ SCREEN *sp)
-+ { return(*(int **)0); }
-+
-+#undef _nc_COLS
-+int _nc_COLS(void)
-+ { return(*(int *)0); }
-+
-+#undef _nc_ptr_Tabsize
-+int *_nc_ptr_Tabsize(
-+ SCREEN *sp)
-+ { return(*(int **)0); }
-+
-+#undef _nc_TABSIZE
-+int _nc_TABSIZE(void)
-+ { return(*(int *)0); }
-+
-+#undef set_tabsize_sp
-+int set_tabsize_sp(
-+ SCREEN *sp,
-+ int value)
-+ { return(*(int *)0); }
-+
-+#undef set_tabsize
-+int set_tabsize(
-+ int value)
-+ { return(*(int *)0); }
-+
-+#undef _nc_handle_sigwinch
-+int _nc_handle_sigwinch(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef use_env_sp
-+void use_env_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_tioctl_sp
-+void use_tioctl_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_env
-+void use_env(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_tioctl
-+void use_tioctl(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef _nc_get_screensize
-+void _nc_get_screensize(
-+ SCREEN *sp,
-+ int *linep,
-+ int *colp)
-+ { /* void */ }
-+
-+#undef _nc_update_screensize
-+void _nc_update_screensize(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_setup_tinfo
-+int _nc_setup_tinfo(
-+ const char *const tn,
-+ TERMTYPE *const tp)
-+ { return(*(int *)0); }
-+
-+#undef _nc_tinfo_cmdch
-+void _nc_tinfo_cmdch(
-+ TERMINAL *termp,
-+ int proto)
-+ { /* void */ }
-+
-+#undef _nc_get_locale
-+char *_nc_get_locale(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_unicode_locale
-+int _nc_unicode_locale(void)
-+ { return(*(int *)0); }
-+
-+#undef _nc_locale_breaks_acs
-+int _nc_locale_breaks_acs(
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+#undef _nc_setupterm
-+int _nc_setupterm(
-+ char *tname,
-+ int Filedes,
-+ int *errret,
-+ int reuse)
-+ { return(*(int *)0); }
-+
-+#undef new_prescr
-+SCREEN *new_prescr(void)
-+ { return(*(SCREEN **)0); }
-+
-+#undef setupterm
-+int setupterm(
-+ char *tname,
-+ int Filedes,
-+ int *errret)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_termcap.c */
-+
-+#undef UP
-+char *UP;
-+#undef BC
-+char *BC;
-+
-+#undef tgetent_sp
-+int tgetent_sp(
-+ SCREEN *sp,
-+ char *bufp,
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#if 0
-+
-+#include <capdefaults.c>
-+
-+#endif
-+
-+#undef tgetent
-+int tgetent(
-+ char *bufp,
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#undef tgetflag_sp
-+int tgetflag_sp(
-+ SCREEN *sp,
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetflag
-+int tgetflag(
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetnum_sp
-+int tgetnum_sp(
-+ SCREEN *sp,
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetnum
-+int tgetnum(
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetstr_sp
-+char *tgetstr_sp(
-+ SCREEN *sp,
-+ char *id,
-+ char **area)
-+ { return(*(char **)0); }
-+
-+#undef tgetstr
-+char *tgetstr(
-+ char *id,
-+ char **area)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_termname.c */
-+
-+#undef termname_sp
-+char *termname_sp(
-+ SCREEN *sp)
-+ { return(*(char **)0); }
-+
-+#undef termname
-+char *termname(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tgoto.c */
-+
-+#undef tgoto
-+char *tgoto(
-+ const char *string,
-+ int x,
-+ int y)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_ti.c */
-+
-+#undef tigetflag_sp
-+int tigetflag_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetflag
-+int tigetflag(
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetnum_sp
-+int tigetnum_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetnum
-+int tigetnum(
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetstr_sp
-+char *tigetstr_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(char **)0); }
-+
-+#undef tigetstr
-+char *tigetstr(
-+ char *str)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tparm.c */
-+
-+#undef _nc_tparm_err
-+int _nc_tparm_err;
-+
-+#undef _nc_tparm_analyze
-+int _nc_tparm_analyze(
-+ const char *string,
-+ char *p_is_s[9],
-+ int *_nc_popcount)
-+ { return(*(int *)0); }
-+
-+#undef tparm
-+char *tparm(
-+ char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiparm
-+char *tiparm(
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tputs.c */
-+
-+#undef PC
-+char PC;
-+#undef ospeed
-+short ospeed;
-+#undef _nc_nulls_sent
-+int _nc_nulls_sent;
-+
-+#undef _nc_set_no_padding
-+void _nc_set_no_padding(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef delay_output_sp
-+int delay_output_sp(
-+ SCREEN *sp,
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef delay_output
-+int delay_output(
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef _nc_flush_sp
-+void _nc_flush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_flush
-+void _nc_flush(void)
-+ { /* void */ }
-+
-+#undef _nc_outch_sp
-+int _nc_outch_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_outch
-+int _nc_outch(
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar_sp
-+int _nc_putchar_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar
-+int _nc_putchar(
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef putp_sp
-+int putp_sp(
-+ SCREEN *sp,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef putp
-+int putp(
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp_sp
-+int _nc_putp_sp(
-+ SCREEN *sp,
-+ const char *name,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp
-+int _nc_putp(
-+ const char *name,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef tputs_sp
-+int tputs_sp(
-+ SCREEN *sp,
-+ const char *string,
-+ int affcnt,
-+ NCURSES_OUTC_sp outc)
-+ { return(*(int *)0); }
-+
-+#undef _nc_outc_wrapper
-+int _nc_outc_wrapper(
-+ SCREEN *sp,
-+ int c)
-+ { return(*(int *)0); }
-+
-+#undef tputs
-+int tputs(
-+ const char *string,
-+ int affcnt,
-+ int (*outc)(
-+ int p1))
-+ { return(*(int *)0); }
-+
-+/* ./trace/lib_trace.c */
-+
-+#undef _nc_tracing
-+unsigned _nc_tracing;
-+
-+#undef _nc__nc_tputs_trace
-+const char *_nc__nc_tputs_trace(void)
-+ { return(*(const char **)0); }
-+
-+#undef _nc__nc_outchars
-+long _nc__nc_outchars(void)
-+ { return(*(long *)0); }
-+
-+#undef _nc_set_tputs_trace
-+void _nc_set_tputs_trace(
-+ const char *s)
-+ { /* void */ }
-+
-+#undef _nc_count_outchars
-+void _nc_count_outchars(
-+ long increment)
-+ { /* void */ }
-+
-+#undef trace
-+void trace(
-+ const unsigned int tracelevel)
-+ { /* void */ }
-+
-+#undef _tracef
-+void _tracef(
-+ const char *fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_retrace_bool
-+NCURSES_BOOL _nc_retrace_bool(
-+ int code)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_retrace_char
-+char _nc_retrace_char(
-+ int code)
-+ { return(*(char *)0); }
-+
-+#undef _nc_retrace_int
-+int _nc_retrace_int(
-+ int code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_retrace_unsigned
-+unsigned _nc_retrace_unsigned(
-+ unsigned code)
-+ { return(*(unsigned *)0); }
-+
-+#undef _nc_retrace_ptr
-+char *_nc_retrace_ptr(
-+ char *code)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_cptr
-+const char *_nc_retrace_cptr(
-+ const char *code)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_retrace_cvoid_ptr
-+void *_nc_retrace_cvoid_ptr(
-+ void *code)
-+ { return(*(void **)0); }
-+
-+#undef _nc_retrace_void_ptr
-+void *_nc_retrace_void_ptr(
-+ void *code)
-+ { return(*(void **)0); }
-+
-+#undef _nc_retrace_sp
-+SCREEN *_nc_retrace_sp(
-+ SCREEN *code)
-+ { return(*(SCREEN **)0); }
-+
-+#undef _nc_retrace_win
-+WINDOW *_nc_retrace_win(
-+ WINDOW *code)
-+ { return(*(WINDOW **)0); }
-+
-+#undef _nc_use_tracef
-+int _nc_use_tracef(
-+ unsigned mask)
-+ { return(*(int *)0); }
-+
-+#undef _nc_locked_tracef
-+void _nc_locked_tracef(
-+ const char *fmt,
-+ ...)
-+ { /* void */ }
-+
-+/* ./trace/lib_traceatr.c */
-+
-+#undef _traceattr2
-+char *_traceattr2(
-+ int bufnum,
-+ chtype newmode)
-+ { return(*(char **)0); }
-+
-+#undef _traceattr
-+char *_traceattr(
-+ attr_t newmode)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_int_attr_t
-+int _nc_retrace_int_attr_t(
-+ attr_t code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_retrace_attr_t
-+attr_t _nc_retrace_attr_t(
-+ attr_t code)
-+ { return(*(attr_t *)0); }
-+
-+#undef _nc_altcharset_name
-+const char *_nc_altcharset_name(
-+ attr_t attr,
-+ chtype ch)
-+ { return(*(const char **)0); }
-+
-+#undef _tracechtype2
-+char *_tracechtype2(
-+ int bufnum,
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracechtype
-+char *_tracechtype(
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_chtype
-+chtype _nc_retrace_chtype(
-+ chtype code)
-+ { return(*(chtype *)0); }
-+
-+/* ./trace/lib_tracebits.c */
-+
-+typedef struct {
-+ unsigned int val;
-+ const char *name;
-+} BITNAMES;
-+
-+#undef _nc_trace_ttymode
-+char *_nc_trace_ttymode(
-+ struct termios *tty)
-+ { return(*(char **)0); }
-+
-+#undef _nc_tracebits
-+char *_nc_tracebits(void)
-+ { return(*(char **)0); }
-+
-+/* ./trace/lib_tracechr.c */
-+
-+#undef _nc_tracechar
-+char *_nc_tracechar(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracechar
-+char *_tracechar(
-+ int ch)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_ttyflags.c */
-+
-+#undef _nc_get_tty_mode_sp
-+int _nc_get_tty_mode_sp(
-+ SCREEN *sp,
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_get_tty_mode
-+int _nc_get_tty_mode(
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_set_tty_mode_sp
-+int _nc_set_tty_mode_sp(
-+ SCREEN *sp,
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_set_tty_mode
-+int _nc_set_tty_mode(
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef def_shell_mode_sp
-+int def_shell_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef def_shell_mode
-+int def_shell_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef def_prog_mode_sp
-+int def_prog_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef def_prog_mode
-+int def_prog_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef reset_prog_mode_sp
-+int reset_prog_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef reset_prog_mode
-+int reset_prog_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef reset_shell_mode_sp
-+int reset_shell_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef reset_shell_mode
-+int reset_shell_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef savetty_sp
-+int savetty_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef savetty
-+int savetty(void)
-+ { return(*(int *)0); }
-+
-+#undef resetty_sp
-+int resetty_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef resetty
-+int resetty(void)
-+ { return(*(int *)0); }
-+
-+/* ./tty/lib_twait.c */
-+
-+#include <sys/time.h>
-+
-+#undef _nc_timed_wait
-+int _nc_timed_wait(
-+ SCREEN *sp,
-+ int mode,
-+ int milliseconds,
-+ int *timeleft)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/name_match.c */
-+
-+#undef _nc_first_name
-+char *_nc_first_name(
-+ const char *const sp)
-+ { return(*(char **)0); }
-+
-+#undef _nc_name_match
-+int _nc_name_match(
-+ const char *const namelst,
-+ const char *const name,
-+ const char *const delim)
-+ { return(*(int *)0); }
-+
-+/* ./names.c */
-+
-+#undef _nc_boolnames
-+char *const *_nc_boolnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_boolfnames
-+char *const *_nc_boolfnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_numnames
-+char *const *_nc_numnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_numfnames
-+char *const *_nc_numfnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_strnames
-+char *const *_nc_strnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_strfnames
-+char *const *_nc_strfnames(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/obsolete.c */
-+
-+#undef _nc_set_buffer_sp
-+void _nc_set_buffer_sp(
-+ SCREEN *sp,
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+#undef _nc_set_buffer
-+void _nc_set_buffer(
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+/* ./tinfo/read_entry.c */
-+
-+#include <hashed_db.h>
-+
-+#undef _nc_init_termtype
-+void _nc_init_termtype(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_read_termtype
-+int _nc_read_termtype(
-+ TERMTYPE *ptr,
-+ char *buffer,
-+ int limit)
-+ { return(*(int *)0); }
-+
-+#undef _nc_read_file_entry
-+int _nc_read_file_entry(
-+ const char *const filename,
-+ TERMTYPE *ptr)
-+ { return(*(int *)0); }
-+
-+#undef _nc_read_entry
-+int _nc_read_entry(
-+ const char *const name,
-+ char *const filename,
-+ TERMTYPE *const tp)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/read_termcap.c */
-+
-+#include <sys/types.h>
-+
-+#undef _nc_read_termcap
-+void _nc_read_termcap(void)
-+ { /* void */ }
-+
-+/* ./tinfo/strings.c */
-+
-+#undef _nc_str_init
-+string_desc *_nc_str_init(
-+ string_desc *dst,
-+ char *src,
-+ size_t len)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_str_null
-+string_desc *_nc_str_null(
-+ string_desc *dst,
-+ size_t len)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_str_copy
-+string_desc *_nc_str_copy(
-+ string_desc *dst,
-+ string_desc *src)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_safe_strcat
-+NCURSES_BOOL _nc_safe_strcat(
-+ string_desc *dst,
-+ const char *src)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_safe_strcpy
-+NCURSES_BOOL _nc_safe_strcpy(
-+ string_desc *dst,
-+ const char *src)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+/* ./trace/trace_buf.c */
-+
-+#undef _nc_trace_buf
-+char *_nc_trace_buf(
-+ int bufnum,
-+ size_t want)
-+ { return(*(char **)0); }
-+
-+#undef _nc_trace_bufcat
-+char *_nc_trace_bufcat(
-+ int bufnum,
-+ const char *value)
-+ { return(*(char **)0); }
-+
-+/* ./trace/trace_tries.c */
-+
-+#undef _nc_trace_tries
-+void _nc_trace_tries(
-+ TRIES *tree)
-+ { /* void */ }
-+
-+/* ./base/tries.c */
-+
-+#undef _nc_expand_try
-+char *_nc_expand_try(
-+ TRIES *tree,
-+ unsigned code,
-+ int *count,
-+ size_t len)
-+ { return(*(char **)0); }
-+
-+#undef _nc_remove_key
-+int _nc_remove_key(
-+ TRIES **tree,
-+ unsigned code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_remove_string
-+int _nc_remove_string(
-+ TRIES **tree,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/trim_sgr0.c */
-+
-+#undef _nc_trim_sgr0
-+char *_nc_trim_sgr0(
-+ TERMTYPE *tp)
-+ { return(*(char **)0); }
-+
-+/* ./unctrl.c */
-+
-+#undef unctrl_sp
-+char *unctrl_sp(
-+ SCREEN *sp,
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef unctrl
-+char *unctrl(
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+/* ./trace/visbuf.c */
-+
-+#undef _nc_visbuf2
-+const char *_nc_visbuf2(
-+ int bufnum,
-+ const char *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_visbuf
-+const char *_nc_visbuf(
-+ const char *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_visbufn
-+const char *_nc_visbufn(
-+ const char *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viscbuf2
-+const char *_nc_viscbuf2(
-+ int bufnum,
-+ const chtype *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viscbuf
-+const char *_nc_viscbuf(
-+ const chtype *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+/* ./base/define_key.c */
-+
-+#undef define_key_sp
-+int define_key_sp(
-+ SCREEN *sp,
-+ const char *str,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef define_key
-+int define_key(
-+ const char *str,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/hashed_db.c */
-+
-+#undef _nc_hashed_db
-+void _nc_hashed_db(void)
-+ { /* void */ }
-+
-+/* ./base/key_defined.c */
-+
-+#undef key_defined_sp
-+int key_defined_sp(
-+ SCREEN *sp,
-+ const char *str)
-+ { return(*(int *)0); }
-+
-+#undef key_defined
-+int key_defined(
-+ const char *str)
-+ { return(*(int *)0); }
-+
-+/* ./base/keybound.c */
-+
-+#undef keybound_sp
-+char *keybound_sp(
-+ SCREEN *sp,
-+ int code,
-+ int count)
-+ { return(*(char **)0); }
-+
-+#undef keybound
-+char *keybound(
-+ int code,
-+ int count)
-+ { return(*(char **)0); }
-+
-+/* ./base/keyok.c */
-+
-+#undef keyok_sp
-+int keyok_sp(
-+ SCREEN *sp,
-+ int c,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef keyok
-+int keyok(
-+ int c,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./base/version.c */
-+
-+#undef curses_version
-+const char *curses_version(void)
-+ { return(*(const char **)0); }
-Index: ncurses/llib-ltinfotw
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-ltinfotw 2013-12-14 22:05:59.000000000 +0000
-@@ -0,0 +1,1668 @@
-+/****************************************************************************
-+ * Copyright (c) 2012,2013 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 E. Dickey 2012 *
-+ ****************************************************************************/
-+/* LINTLIBRARY */
-+
-+/* ./tinfo/access.c */
-+
-+#include <curses.priv.h>
-+#include <ctype.h>
-+#include <tic.h>
-+
-+#undef _nc_rootname
-+char *_nc_rootname(
-+ char *path)
-+ { return(*(char **)0); }
-+
-+#undef _nc_is_abs_path
-+NCURSES_BOOL _nc_is_abs_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_pathlast
-+unsigned _nc_pathlast(
-+ const char *path)
-+ { return(*(unsigned *)0); }
-+
-+#undef _nc_basename
-+char *_nc_basename(
-+ char *path)
-+ { return(*(char **)0); }
-+
-+#undef _nc_access
-+int _nc_access(
-+ const char *path,
-+ int mode)
-+ { return(*(int *)0); }
-+
-+#undef _nc_is_dir_path
-+NCURSES_BOOL _nc_is_dir_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_is_file_path
-+NCURSES_BOOL _nc_is_file_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_env_access
-+int _nc_env_access(void)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/add_tries.c */
-+
-+#undef _nc_add_to_try
-+int _nc_add_to_try(
-+ TRIES **tree,
-+ const char *str,
-+ unsigned code)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/alloc_ttype.c */
-+
-+#undef _nc_align_termtype
-+void _nc_align_termtype(
-+ TERMTYPE *to,
-+ TERMTYPE *from)
-+ { /* void */ }
-+
-+#undef _nc_copy_termtype
-+void _nc_copy_termtype(
-+ TERMTYPE *dst,
-+ const TERMTYPE *src)
-+ { /* void */ }
-+
-+/* ./codes.c */
-+
-+#undef _nc_boolcodes
-+char *const *_nc_boolcodes(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_numcodes
-+char *const *_nc_numcodes(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_strcodes
-+char *const *_nc_strcodes(void)
-+ { return(*(char **)0); }
-+
-+/* ./comp_captab.c */
-+
-+#include <hashsize.h>
-+
-+#undef _nc_get_table
-+const struct name_table_entry *_nc_get_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const struct name_table_entry **)0); }
-+
-+#undef _nc_get_hash_table
-+const HashValue *_nc_get_hash_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const HashValue **)0); }
-+
-+#undef _nc_get_alias_table
-+const struct alias *_nc_get_alias_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const struct alias **)0); }
-+
-+#undef _nc_get_hash_info
-+const HashData *_nc_get_hash_info(
-+ NCURSES_BOOL termcap)
-+ { return(*(const HashData **)0); }
-+
-+/* ./tinfo/comp_error.c */
-+
-+#undef _nc_suppress_warnings
-+NCURSES_BOOL _nc_suppress_warnings;
-+#undef _nc_curr_line
-+int _nc_curr_line;
-+#undef _nc_curr_col
-+int _nc_curr_col;
-+
-+#undef _nc_get_source
-+const char *_nc_get_source(void)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_set_source
-+void _nc_set_source(
-+ const char *const name)
-+ { /* void */ }
-+
-+#undef _nc_set_type
-+void _nc_set_type(
-+ const char *const name)
-+ { /* void */ }
-+
-+#undef _nc_get_type
-+void _nc_get_type(
-+ char *name)
-+ { /* void */ }
-+
-+#undef _nc_warning
-+void _nc_warning(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_err_abort
-+void _nc_err_abort(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_syserr_abort
-+void _nc_syserr_abort(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+/* ./tinfo/comp_hash.c */
-+
-+#undef _nc_find_entry
-+struct name_table_entry const *_nc_find_entry(
-+ 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,
-+ NCURSES_BOOL termcap)
-+ { return(*(struct name_table_entry const **)0); }
-+
-+/* ./tinfo/db_iterator.c */
-+
-+#include <time.h>
-+
-+#undef _nc_tic_dir
-+const char *_nc_tic_dir(
-+ const char *path)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_keep_tic_dir
-+void _nc_keep_tic_dir(
-+ const char *path)
-+ { /* void */ }
-+
-+#undef _nc_last_db
-+void _nc_last_db(void)
-+ { /* void */ }
-+
-+#undef _nc_next_db
-+const char *_nc_next_db(
-+ DBDIRS *state,
-+ int *offset)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_first_db
-+void _nc_first_db(
-+ DBDIRS *state,
-+ int *offset)
-+ { /* void */ }
-+
-+/* ./tinfo/doalloc.c */
-+
-+#undef _nc_doalloc
-+void *_nc_doalloc(
-+ void *oldp,
-+ size_t amount)
-+ { return(*(void **)0); }
-+
-+/* ./tinfo/entries.c */
-+
-+#undef _nc_head
-+ENTRY *_nc_head;
-+#undef _nc_tail
-+ENTRY *_nc_tail;
-+
-+#undef _nc_free_entry
-+void _nc_free_entry(
-+ ENTRY *headp,
-+ TERMTYPE *tterm)
-+ { /* void */ }
-+
-+#undef _nc_free_entries
-+void _nc_free_entries(
-+ ENTRY *headp)
-+ { /* void */ }
-+
-+#undef _nc_delink_entry
-+ENTRY *_nc_delink_entry(
-+ ENTRY *headp,
-+ TERMTYPE *tterm)
-+ { return(*(ENTRY **)0); }
-+
-+#undef _nc_leaks_tinfo
-+void _nc_leaks_tinfo(void)
-+ { /* void */ }
-+
-+/* ./fallback.c */
-+
-+#undef _nc_fallback
-+const TERMTYPE *_nc_fallback(
-+ const char *name)
-+ { return(*(const TERMTYPE **)0); }
-+
-+/* ./tinfo/free_ttype.c */
-+
-+#undef _nc_free_termtype
-+void _nc_free_termtype(
-+ TERMTYPE *ptr)
-+ { /* void */ }
-+
-+#undef _nc_user_definable
-+NCURSES_BOOL _nc_user_definable;
-+
-+#undef use_extended_names
-+int use_extended_names(
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/getenv_num.c */
-+
-+#undef _nc_getenv_num
-+int _nc_getenv_num(
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#undef _nc_setenv_num
-+void _nc_setenv_num(
-+ const char *name,
-+ int value)
-+ { /* void */ }
-+
-+/* ./tinfo/home_terminfo.c */
-+
-+#undef _nc_home_terminfo
-+char *_nc_home_terminfo(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/init_keytry.c */
-+
-+#if 0
-+
-+#include <init_keytry.h>
-+
-+#undef _nc_tinfo_fkeys
-+const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0};
-+
-+#endif
-+
-+#undef _nc_init_keytry
-+void _nc_init_keytry(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+/* ./tinfo/lib_acs.c */
-+
-+#undef _nc_acs_map
-+chtype *_nc_acs_map(void)
-+ { return(*(chtype **)0); }
-+
-+#undef _nc_init_acs_sp
-+void _nc_init_acs_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_init_acs
-+void _nc_init_acs(void)
-+ { /* void */ }
-+
-+/* ./tinfo/lib_baudrate.c */
-+
-+#include <termcap.h>
-+
-+struct speed {
-+ int s;
-+ int sp;
-+};
-+
-+#undef _nc_baudrate
-+int _nc_baudrate(
-+ int OSpeed)
-+ { return(*(int *)0); }
-+
-+#undef _nc_ospeed
-+int _nc_ospeed(
-+ int BaudRate)
-+ { return(*(int *)0); }
-+
-+#undef baudrate_sp
-+int baudrate_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef baudrate
-+int baudrate(void)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_cur_term.c */
-+
-+#undef _nc_get_cur_term_sp
-+TERMINAL *_nc_get_cur_term_sp(
-+ SCREEN *sp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef _nc_get_cur_term
-+TERMINAL *_nc_get_cur_term(void)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef _nc_cur_term
-+TERMINAL *_nc_cur_term(void)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef set_curterm_sp
-+TERMINAL *set_curterm_sp(
-+ SCREEN *sp,
-+ TERMINAL *termp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef set_curterm
-+TERMINAL *set_curterm(
-+ TERMINAL *termp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef del_curterm_sp
-+int del_curterm_sp(
-+ SCREEN *sp,
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+#undef del_curterm
-+int del_curterm(
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_data.c */
-+
-+#undef _nc_stdscr
-+WINDOW *_nc_stdscr(void)
-+ { return(*(WINDOW **)0); }
-+
-+#undef _nc_curscr
-+WINDOW *_nc_curscr(void)
-+ { return(*(WINDOW **)0); }
-+
-+#undef _nc_newscr
-+WINDOW *_nc_newscr(void)
-+ { return(*(WINDOW **)0); }
-+
-+#undef _nc_screen_chain
-+SCREEN *_nc_screen_chain;
-+#undef SP
-+SCREEN *SP;
-+#undef _nc_globals
-+NCURSES_GLOBALS _nc_globals;
-+#undef _nc_prescreen
-+NCURSES_PRESCREEN _nc_prescreen;
-+
-+#undef _nc_screen_of
-+SCREEN *_nc_screen_of(
-+ WINDOW *win)
-+ { return(*(SCREEN **)0); }
-+
-+#undef _nc_init_pthreads
-+void _nc_init_pthreads(void)
-+ { /* void */ }
-+
-+#undef _nc_mutex_init
-+void _nc_mutex_init(
-+ pthread_mutex_t *obj)
-+ { /* void */ }
-+
-+#undef _nc_mutex_lock
-+int _nc_mutex_lock(
-+ pthread_mutex_t *obj)
-+ { return(*(int *)0); }
-+
-+#undef _nc_mutex_trylock
-+int _nc_mutex_trylock(
-+ pthread_mutex_t *obj)
-+ { return(*(int *)0); }
-+
-+#undef _nc_mutex_unlock
-+int _nc_mutex_unlock(
-+ pthread_mutex_t *obj)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_has_cap.c */
-+
-+#undef has_ic_sp
-+NCURSES_BOOL has_ic_sp(
-+ SCREEN *sp)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_ic
-+NCURSES_BOOL has_ic(void)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_il_sp
-+NCURSES_BOOL has_il_sp(
-+ SCREEN *sp)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_il
-+NCURSES_BOOL has_il(void)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+/* ./tinfo/lib_kernel.c */
-+
-+#undef erasechar_sp
-+char erasechar_sp(
-+ SCREEN *sp)
-+ { return(*(char *)0); }
-+
-+#undef erasechar
-+char erasechar(void)
-+ { return(*(char *)0); }
-+
-+#undef killchar_sp
-+char killchar_sp(
-+ SCREEN *sp)
-+ { return(*(char *)0); }
-+
-+#undef killchar
-+char killchar(void)
-+ { return(*(char *)0); }
-+
-+#undef flushinp_sp
-+int flushinp_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef flushinp
-+int flushinp(void)
-+ { return(*(int *)0); }
-+
-+/* ./lib_keyname.c */
-+
-+struct kn { short offset; int code; };
-+
-+#undef keyname_sp
-+char *keyname_sp(
-+ SCREEN *sp,
-+ int c)
-+ { return(*(char **)0); }
-+
-+#undef keyname
-+char *keyname(
-+ int c)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_longname.c */
-+
-+#undef longname_sp
-+char *longname_sp(
-+ SCREEN *sp)
-+ { return(*(char **)0); }
-+
-+#undef longname
-+char *longname(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_napms.c */
-+
-+#undef napms_sp
-+int napms_sp(
-+ SCREEN *sp,
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef napms
-+int napms(
-+ int ms)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_options.c */
-+
-+#undef idlok
-+int idlok(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef idcok
-+void idcok(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { /* void */ }
-+
-+#undef halfdelay_sp
-+int halfdelay_sp(
-+ SCREEN *sp,
-+ int t)
-+ { return(*(int *)0); }
-+
-+#undef halfdelay
-+int halfdelay(
-+ int t)
-+ { return(*(int *)0); }
-+
-+#undef nodelay
-+int nodelay(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef notimeout
-+int notimeout(
-+ WINDOW *win,
-+ NCURSES_BOOL f)
-+ { return(*(int *)0); }
-+
-+#undef wtimeout
-+void wtimeout(
-+ WINDOW *win,
-+ int delay)
-+ { /* void */ }
-+
-+#undef keypad
-+int keypad(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef meta
-+int meta(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef curs_set_sp
-+int curs_set_sp(
-+ SCREEN *sp,
-+ int vis)
-+ { return(*(int *)0); }
-+
-+#undef curs_set
-+int curs_set(
-+ int vis)
-+ { return(*(int *)0); }
-+
-+#undef typeahead_sp
-+int typeahead_sp(
-+ SCREEN *sp,
-+ int fd)
-+ { return(*(int *)0); }
-+
-+#undef typeahead
-+int typeahead(
-+ int fd)
-+ { return(*(int *)0); }
-+
-+#undef has_key_sp
-+int has_key_sp(
-+ SCREEN *sp,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef has_key
-+int has_key(
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp_flush_sp
-+int _nc_putp_flush_sp(
-+ SCREEN *sp,
-+ const char *name,
-+ const char *value)
-+ { return(*(int *)0); }
-+
-+#undef _nc_keypad
-+int _nc_keypad(
-+ SCREEN *sp,
-+ int flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_raw.c */
-+
-+#undef raw_sp
-+int raw_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef raw
-+int raw(void)
-+ { return(*(int *)0); }
-+
-+#undef cbreak_sp
-+int cbreak_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef cbreak
-+int cbreak(void)
-+ { return(*(int *)0); }
-+
-+#undef qiflush_sp
-+void qiflush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef qiflush
-+void qiflush(void)
-+ { /* void */ }
-+
-+#undef noraw_sp
-+int noraw_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef noraw
-+int noraw(void)
-+ { return(*(int *)0); }
-+
-+#undef nocbreak_sp
-+int nocbreak_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef nocbreak
-+int nocbreak(void)
-+ { return(*(int *)0); }
-+
-+#undef noqiflush_sp
-+void noqiflush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef noqiflush
-+void noqiflush(void)
-+ { /* void */ }
-+
-+#undef intrflush_sp
-+int intrflush_sp(
-+ SCREEN *sp,
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef intrflush
-+int intrflush(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_setup.c */
-+
-+#include <locale.h>
-+#include <sys/ioctl.h>
-+#include <langinfo.h>
-+
-+#undef _nc_ttytype
-+char *_nc_ttytype(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_ptr_Lines
-+int *_nc_ptr_Lines(
-+ SCREEN *sp)
-+ { return(*(int **)0); }
-+
-+#undef _nc_LINES
-+int _nc_LINES(void)
-+ { return(*(int *)0); }
-+
-+#undef _nc_ptr_Cols
-+int *_nc_ptr_Cols(
-+ SCREEN *sp)
-+ { return(*(int **)0); }
-+
-+#undef _nc_COLS
-+int _nc_COLS(void)
-+ { return(*(int *)0); }
-+
-+#undef _nc_ptr_Tabsize
-+int *_nc_ptr_Tabsize(
-+ SCREEN *sp)
-+ { return(*(int **)0); }
-+
-+#undef _nc_TABSIZE
-+int _nc_TABSIZE(void)
-+ { return(*(int *)0); }
-+
-+#undef set_tabsize_sp
-+int set_tabsize_sp(
-+ SCREEN *sp,
-+ int value)
-+ { return(*(int *)0); }
-+
-+#undef set_tabsize
-+int set_tabsize(
-+ int value)
-+ { return(*(int *)0); }
-+
-+#undef _nc_handle_sigwinch
-+int _nc_handle_sigwinch(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef use_env_sp
-+void use_env_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_tioctl_sp
-+void use_tioctl_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_env
-+void use_env(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_tioctl
-+void use_tioctl(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef _nc_get_screensize
-+void _nc_get_screensize(
-+ SCREEN *sp,
-+ int *linep,
-+ int *colp)
-+ { /* void */ }
-+
-+#undef _nc_update_screensize
-+void _nc_update_screensize(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_setup_tinfo
-+int _nc_setup_tinfo(
-+ const char *const tn,
-+ TERMTYPE *const tp)
-+ { return(*(int *)0); }
-+
-+#undef _nc_tinfo_cmdch
-+void _nc_tinfo_cmdch(
-+ TERMINAL *termp,
-+ int proto)
-+ { /* void */ }
-+
-+#undef _nc_get_locale
-+char *_nc_get_locale(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_unicode_locale
-+int _nc_unicode_locale(void)
-+ { return(*(int *)0); }
-+
-+#undef _nc_locale_breaks_acs
-+int _nc_locale_breaks_acs(
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+#undef _nc_setupterm
-+int _nc_setupterm(
-+ char *tname,
-+ int Filedes,
-+ int *errret,
-+ int reuse)
-+ { return(*(int *)0); }
-+
-+#undef new_prescr
-+SCREEN *new_prescr(void)
-+ { return(*(SCREEN **)0); }
-+
-+#undef setupterm
-+int setupterm(
-+ char *tname,
-+ int Filedes,
-+ int *errret)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_termcap.c */
-+
-+#undef UP
-+char *UP;
-+#undef BC
-+char *BC;
-+
-+#undef tgetent_sp
-+int tgetent_sp(
-+ SCREEN *sp,
-+ char *bufp,
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#if 0
-+
-+#include <capdefaults.c>
-+
-+#endif
-+
-+#undef tgetent
-+int tgetent(
-+ char *bufp,
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#undef tgetflag_sp
-+int tgetflag_sp(
-+ SCREEN *sp,
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetflag
-+int tgetflag(
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetnum_sp
-+int tgetnum_sp(
-+ SCREEN *sp,
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetnum
-+int tgetnum(
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetstr_sp
-+char *tgetstr_sp(
-+ SCREEN *sp,
-+ char *id,
-+ char **area)
-+ { return(*(char **)0); }
-+
-+#undef tgetstr
-+char *tgetstr(
-+ char *id,
-+ char **area)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_termname.c */
-+
-+#undef termname_sp
-+char *termname_sp(
-+ SCREEN *sp)
-+ { return(*(char **)0); }
-+
-+#undef termname
-+char *termname(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tgoto.c */
-+
-+#undef tgoto
-+char *tgoto(
-+ const char *string,
-+ int x,
-+ int y)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_ti.c */
-+
-+#undef tigetflag_sp
-+int tigetflag_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetflag
-+int tigetflag(
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetnum_sp
-+int tigetnum_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetnum
-+int tigetnum(
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetstr_sp
-+char *tigetstr_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(char **)0); }
-+
-+#undef tigetstr
-+char *tigetstr(
-+ char *str)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tparm.c */
-+
-+#undef _nc_tparm_err
-+int _nc_tparm_err;
-+
-+#undef _nc_tparm_analyze
-+int _nc_tparm_analyze(
-+ const char *string,
-+ char *p_is_s[9],
-+ int *_nc_popcount)
-+ { return(*(int *)0); }
-+
-+#undef tparm
-+char *tparm(
-+ char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiparm
-+char *tiparm(
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tputs.c */
-+
-+#undef PC
-+char PC;
-+#undef ospeed
-+short ospeed;
-+#undef _nc_nulls_sent
-+int _nc_nulls_sent;
-+
-+#undef _nc_set_no_padding
-+void _nc_set_no_padding(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef delay_output_sp
-+int delay_output_sp(
-+ SCREEN *sp,
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef delay_output
-+int delay_output(
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef _nc_flush_sp
-+void _nc_flush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_flush
-+void _nc_flush(void)
-+ { /* void */ }
-+
-+#undef _nc_outch_sp
-+int _nc_outch_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_outch
-+int _nc_outch(
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar_sp
-+int _nc_putchar_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar
-+int _nc_putchar(
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef putp_sp
-+int putp_sp(
-+ SCREEN *sp,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef putp
-+int putp(
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp_sp
-+int _nc_putp_sp(
-+ SCREEN *sp,
-+ const char *name,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp
-+int _nc_putp(
-+ const char *name,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef tputs_sp
-+int tputs_sp(
-+ SCREEN *sp,
-+ const char *string,
-+ int affcnt,
-+ NCURSES_OUTC_sp outc)
-+ { return(*(int *)0); }
-+
-+#undef _nc_outc_wrapper
-+int _nc_outc_wrapper(
-+ SCREEN *sp,
-+ int c)
-+ { return(*(int *)0); }
-+
-+#undef tputs
-+int tputs(
-+ const char *string,
-+ int affcnt,
-+ int (*outc)(
-+ int p1))
-+ { return(*(int *)0); }
-+
-+/* ./trace/lib_trace.c */
-+
-+#undef _nc_tracing
-+unsigned _nc_tracing;
-+
-+#undef _nc__nc_tputs_trace
-+const char *_nc__nc_tputs_trace(void)
-+ { return(*(const char **)0); }
-+
-+#undef _nc__nc_outchars
-+long _nc__nc_outchars(void)
-+ { return(*(long *)0); }
-+
-+#undef _nc_set_tputs_trace
-+void _nc_set_tputs_trace(
-+ const char *s)
-+ { /* void */ }
-+
-+#undef _nc_count_outchars
-+void _nc_count_outchars(
-+ long increment)
-+ { /* void */ }
-+
-+#undef trace
-+void trace(
-+ const unsigned int tracelevel)
-+ { /* void */ }
-+
-+#undef _tracef
-+void _tracef(
-+ const char *fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_retrace_bool
-+NCURSES_BOOL _nc_retrace_bool(
-+ int code)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_retrace_char
-+char _nc_retrace_char(
-+ int code)
-+ { return(*(char *)0); }
-+
-+#undef _nc_retrace_int
-+int _nc_retrace_int(
-+ int code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_retrace_unsigned
-+unsigned _nc_retrace_unsigned(
-+ unsigned code)
-+ { return(*(unsigned *)0); }
-+
-+#undef _nc_retrace_ptr
-+char *_nc_retrace_ptr(
-+ char *code)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_cptr
-+const char *_nc_retrace_cptr(
-+ const char *code)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_retrace_cvoid_ptr
-+void *_nc_retrace_cvoid_ptr(
-+ void *code)
-+ { return(*(void **)0); }
-+
-+#undef _nc_retrace_void_ptr
-+void *_nc_retrace_void_ptr(
-+ void *code)
-+ { return(*(void **)0); }
-+
-+#undef _nc_retrace_sp
-+SCREEN *_nc_retrace_sp(
-+ SCREEN *code)
-+ { return(*(SCREEN **)0); }
-+
-+#undef _nc_retrace_win
-+WINDOW *_nc_retrace_win(
-+ WINDOW *code)
-+ { return(*(WINDOW **)0); }
-+
-+#undef _nc_use_tracef
-+int _nc_use_tracef(
-+ unsigned mask)
-+ { return(*(int *)0); }
-+
-+#undef _nc_locked_tracef
-+void _nc_locked_tracef(
-+ const char *fmt,
-+ ...)
-+ { /* void */ }
-+
-+/* ./trace/lib_traceatr.c */
-+
-+#undef _traceattr2
-+char *_traceattr2(
-+ int bufnum,
-+ chtype newmode)
-+ { return(*(char **)0); }
-+
-+#undef _traceattr
-+char *_traceattr(
-+ attr_t newmode)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_int_attr_t
-+int _nc_retrace_int_attr_t(
-+ attr_t code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_retrace_attr_t
-+attr_t _nc_retrace_attr_t(
-+ attr_t code)
-+ { return(*(attr_t *)0); }
-+
-+#undef _nc_altcharset_name
-+const char *_nc_altcharset_name(
-+ attr_t attr,
-+ chtype ch)
-+ { return(*(const char **)0); }
-+
-+#undef _tracechtype2
-+char *_tracechtype2(
-+ int bufnum,
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracechtype
-+char *_tracechtype(
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_chtype
-+chtype _nc_retrace_chtype(
-+ chtype code)
-+ { return(*(chtype *)0); }
-+
-+#undef _tracecchar_t2
-+char *_tracecchar_t2(
-+ int bufnum,
-+ const cchar_t *ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracecchar_t
-+char *_tracecchar_t(
-+ const cchar_t *ch)
-+ { return(*(char **)0); }
-+
-+/* ./trace/lib_tracebits.c */
-+
-+typedef struct {
-+ unsigned int val;
-+ const char *name;
-+} BITNAMES;
-+
-+#undef _nc_trace_ttymode
-+char *_nc_trace_ttymode(
-+ struct termios *tty)
-+ { return(*(char **)0); }
-+
-+#undef _nc_tracebits
-+char *_nc_tracebits(void)
-+ { return(*(char **)0); }
-+
-+/* ./trace/lib_tracechr.c */
-+
-+#undef _nc_tracechar
-+char *_nc_tracechar(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracechar
-+char *_tracechar(
-+ int ch)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_ttyflags.c */
-+
-+#undef _nc_get_tty_mode_sp
-+int _nc_get_tty_mode_sp(
-+ SCREEN *sp,
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_get_tty_mode
-+int _nc_get_tty_mode(
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_set_tty_mode_sp
-+int _nc_set_tty_mode_sp(
-+ SCREEN *sp,
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_set_tty_mode
-+int _nc_set_tty_mode(
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef def_shell_mode_sp
-+int def_shell_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef def_shell_mode
-+int def_shell_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef def_prog_mode_sp
-+int def_prog_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef def_prog_mode
-+int def_prog_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef reset_prog_mode_sp
-+int reset_prog_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef reset_prog_mode
-+int reset_prog_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef reset_shell_mode_sp
-+int reset_shell_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef reset_shell_mode
-+int reset_shell_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef savetty_sp
-+int savetty_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef savetty
-+int savetty(void)
-+ { return(*(int *)0); }
-+
-+#undef resetty_sp
-+int resetty_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef resetty
-+int resetty(void)
-+ { return(*(int *)0); }
-+
-+/* ./tty/lib_twait.c */
-+
-+#include <sys/time.h>
-+
-+#undef _nc_timed_wait
-+int _nc_timed_wait(
-+ SCREEN *sp,
-+ int mode,
-+ int milliseconds,
-+ int *timeleft)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/name_match.c */
-+
-+#undef _nc_first_name
-+char *_nc_first_name(
-+ const char *const sp)
-+ { return(*(char **)0); }
-+
-+#undef _nc_name_match
-+int _nc_name_match(
-+ const char *const namelst,
-+ const char *const name,
-+ const char *const delim)
-+ { return(*(int *)0); }
-+
-+/* ./names.c */
-+
-+#undef _nc_boolnames
-+char *const *_nc_boolnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_boolfnames
-+char *const *_nc_boolfnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_numnames
-+char *const *_nc_numnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_numfnames
-+char *const *_nc_numfnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_strnames
-+char *const *_nc_strnames(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_strfnames
-+char *const *_nc_strfnames(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/obsolete.c */
-+
-+#undef _nc_set_buffer_sp
-+void _nc_set_buffer_sp(
-+ SCREEN *sp,
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+#undef _nc_set_buffer
-+void _nc_set_buffer(
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+/* ./tinfo/read_entry.c */
-+
-+#include <hashed_db.h>
-+
-+#undef _nc_init_termtype
-+void _nc_init_termtype(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_read_termtype
-+int _nc_read_termtype(
-+ TERMTYPE *ptr,
-+ char *buffer,
-+ int limit)
-+ { return(*(int *)0); }
-+
-+#undef _nc_read_file_entry
-+int _nc_read_file_entry(
-+ const char *const filename,
-+ TERMTYPE *ptr)
-+ { return(*(int *)0); }
-+
-+#undef _nc_read_entry
-+int _nc_read_entry(
-+ const char *const name,
-+ char *const filename,
-+ TERMTYPE *const tp)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/read_termcap.c */
-+
-+#include <sys/types.h>
-+
-+#undef _nc_read_termcap
-+void _nc_read_termcap(void)
-+ { /* void */ }
-+
-+/* ./tinfo/strings.c */
-+
-+#undef _nc_str_init
-+string_desc *_nc_str_init(
-+ string_desc *dst,
-+ char *src,
-+ size_t len)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_str_null
-+string_desc *_nc_str_null(
-+ string_desc *dst,
-+ size_t len)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_str_copy
-+string_desc *_nc_str_copy(
-+ string_desc *dst,
-+ string_desc *src)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_safe_strcat
-+NCURSES_BOOL _nc_safe_strcat(
-+ string_desc *dst,
-+ const char *src)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_safe_strcpy
-+NCURSES_BOOL _nc_safe_strcpy(
-+ string_desc *dst,
-+ const char *src)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+/* ./trace/trace_buf.c */
-+
-+#undef _nc_trace_buf
-+char *_nc_trace_buf(
-+ int bufnum,
-+ size_t want)
-+ { return(*(char **)0); }
-+
-+#undef _nc_trace_bufcat
-+char *_nc_trace_bufcat(
-+ int bufnum,
-+ const char *value)
-+ { return(*(char **)0); }
-+
-+/* ./trace/trace_tries.c */
-+
-+#undef _nc_trace_tries
-+void _nc_trace_tries(
-+ TRIES *tree)
-+ { /* void */ }
-+
-+/* ./base/tries.c */
-+
-+#undef _nc_expand_try
-+char *_nc_expand_try(
-+ TRIES *tree,
-+ unsigned code,
-+ int *count,
-+ size_t len)
-+ { return(*(char **)0); }
-+
-+#undef _nc_remove_key
-+int _nc_remove_key(
-+ TRIES **tree,
-+ unsigned code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_remove_string
-+int _nc_remove_string(
-+ TRIES **tree,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/trim_sgr0.c */
-+
-+#undef _nc_trim_sgr0
-+char *_nc_trim_sgr0(
-+ TERMTYPE *tp)
-+ { return(*(char **)0); }
-+
-+/* ./unctrl.c */
-+
-+#undef unctrl_sp
-+char *unctrl_sp(
-+ SCREEN *sp,
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef unctrl
-+char *unctrl(
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+/* ./trace/visbuf.c */
-+
-+#undef _nc_visbuf2
-+const char *_nc_visbuf2(
-+ int bufnum,
-+ const char *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_visbuf
-+const char *_nc_visbuf(
-+ const char *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_visbufn
-+const char *_nc_visbufn(
-+ const char *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viswbuf2
-+const char *_nc_viswbuf2(
-+ int bufnum,
-+ const wchar_t *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viswbuf
-+const char *_nc_viswbuf(
-+ const wchar_t *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viswbufn
-+const char *_nc_viswbufn(
-+ const wchar_t *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viswibuf
-+const char *_nc_viswibuf(
-+ const wint_t *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viscbuf2
-+const char *_nc_viscbuf2(
-+ int bufnum,
-+ const cchar_t *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viscbuf
-+const char *_nc_viscbuf(
-+ const cchar_t *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+/* ./base/define_key.c */
-+
-+#undef define_key_sp
-+int define_key_sp(
-+ SCREEN *sp,
-+ const char *str,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef define_key
-+int define_key(
-+ const char *str,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/hashed_db.c */
-+
-+#undef _nc_hashed_db
-+void _nc_hashed_db(void)
-+ { /* void */ }
-+
-+/* ./base/key_defined.c */
-+
-+#undef key_defined_sp
-+int key_defined_sp(
-+ SCREEN *sp,
-+ const char *str)
-+ { return(*(int *)0); }
-+
-+#undef key_defined
-+int key_defined(
-+ const char *str)
-+ { return(*(int *)0); }
-+
-+/* ./base/keybound.c */
-+
-+#undef keybound_sp
-+char *keybound_sp(
-+ SCREEN *sp,
-+ int code,
-+ int count)
-+ { return(*(char **)0); }
-+
-+#undef keybound
-+char *keybound(
-+ int code,
-+ int count)
-+ { return(*(char **)0); }
-+
-+/* ./base/keyok.c */
-+
-+#undef keyok_sp
-+int keyok_sp(
-+ SCREEN *sp,
-+ int c,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef keyok
-+int keyok(
-+ int c,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./base/version.c */
-+
-+#undef curses_version
-+const char *curses_version(void)
-+ { return(*(const char **)0); }
-Index: ncurses/llib-ltinfow
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/llib-ltinfow 2013-12-14 22:05:51.000000000 +0000
-@@ -0,0 +1,1559 @@
-+/****************************************************************************
-+ * Copyright (c) 2012,2013 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 E. Dickey 2012 *
-+ ****************************************************************************/
-+/* LINTLIBRARY */
-+
-+/* ./tinfo/access.c */
-+
-+#include <curses.priv.h>
-+#include <ctype.h>
-+#include <tic.h>
-+
-+#undef _nc_rootname
-+char *_nc_rootname(
-+ char *path)
-+ { return(*(char **)0); }
-+
-+#undef _nc_is_abs_path
-+NCURSES_BOOL _nc_is_abs_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_pathlast
-+unsigned _nc_pathlast(
-+ const char *path)
-+ { return(*(unsigned *)0); }
-+
-+#undef _nc_basename
-+char *_nc_basename(
-+ char *path)
-+ { return(*(char **)0); }
-+
-+#undef _nc_access
-+int _nc_access(
-+ const char *path,
-+ int mode)
-+ { return(*(int *)0); }
-+
-+#undef _nc_is_dir_path
-+NCURSES_BOOL _nc_is_dir_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_is_file_path
-+NCURSES_BOOL _nc_is_file_path(
-+ const char *path)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_env_access
-+int _nc_env_access(void)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/add_tries.c */
-+
-+#undef _nc_add_to_try
-+int _nc_add_to_try(
-+ TRIES **tree,
-+ const char *str,
-+ unsigned code)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/alloc_ttype.c */
-+
-+#undef _nc_align_termtype
-+void _nc_align_termtype(
-+ TERMTYPE *to,
-+ TERMTYPE *from)
-+ { /* void */ }
-+
-+#undef _nc_copy_termtype
-+void _nc_copy_termtype(
-+ TERMTYPE *dst,
-+ const TERMTYPE *src)
-+ { /* void */ }
-+
-+/* ./codes.c */
-+
-+#undef boolcodes
-+char *const boolcodes[] = {0};
-+#undef numcodes
-+char *const numcodes[] = {0};
-+#undef strcodes
-+char *const strcodes[] = {0};
-+
-+/* ./comp_captab.c */
-+
-+#include <hashsize.h>
-+
-+#undef _nc_get_table
-+const struct name_table_entry *_nc_get_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const struct name_table_entry **)0); }
-+
-+#undef _nc_get_hash_table
-+const HashValue *_nc_get_hash_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const HashValue **)0); }
-+
-+#undef _nc_get_alias_table
-+const struct alias *_nc_get_alias_table(
-+ NCURSES_BOOL termcap)
-+ { return(*(const struct alias **)0); }
-+
-+#undef _nc_get_hash_info
-+const HashData *_nc_get_hash_info(
-+ NCURSES_BOOL termcap)
-+ { return(*(const HashData **)0); }
-+
-+/* ./tinfo/comp_error.c */
-+
-+#undef _nc_suppress_warnings
-+NCURSES_BOOL _nc_suppress_warnings;
-+#undef _nc_curr_line
-+int _nc_curr_line;
-+#undef _nc_curr_col
-+int _nc_curr_col;
-+
-+#undef _nc_get_source
-+const char *_nc_get_source(void)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_set_source
-+void _nc_set_source(
-+ const char *const name)
-+ { /* void */ }
-+
-+#undef _nc_set_type
-+void _nc_set_type(
-+ const char *const name)
-+ { /* void */ }
-+
-+#undef _nc_get_type
-+void _nc_get_type(
-+ char *name)
-+ { /* void */ }
-+
-+#undef _nc_warning
-+void _nc_warning(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_err_abort
-+void _nc_err_abort(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_syserr_abort
-+void _nc_syserr_abort(
-+ const char *const fmt,
-+ ...)
-+ { /* void */ }
-+
-+/* ./tinfo/comp_hash.c */
-+
-+#undef _nc_find_entry
-+struct name_table_entry const *_nc_find_entry(
-+ 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,
-+ NCURSES_BOOL termcap)
-+ { return(*(struct name_table_entry const **)0); }
-+
-+/* ./tinfo/db_iterator.c */
-+
-+#include <time.h>
-+
-+#undef _nc_tic_dir
-+const char *_nc_tic_dir(
-+ const char *path)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_keep_tic_dir
-+void _nc_keep_tic_dir(
-+ const char *path)
-+ { /* void */ }
-+
-+#undef _nc_last_db
-+void _nc_last_db(void)
-+ { /* void */ }
-+
-+#undef _nc_next_db
-+const char *_nc_next_db(
-+ DBDIRS *state,
-+ int *offset)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_first_db
-+void _nc_first_db(
-+ DBDIRS *state,
-+ int *offset)
-+ { /* void */ }
-+
-+/* ./tinfo/doalloc.c */
-+
-+#undef _nc_doalloc
-+void *_nc_doalloc(
-+ void *oldp,
-+ size_t amount)
-+ { return(*(void **)0); }
-+
-+/* ./tinfo/entries.c */
-+
-+#undef _nc_head
-+ENTRY *_nc_head;
-+#undef _nc_tail
-+ENTRY *_nc_tail;
-+
-+#undef _nc_free_entry
-+void _nc_free_entry(
-+ ENTRY *headp,
-+ TERMTYPE *tterm)
-+ { /* void */ }
-+
-+#undef _nc_free_entries
-+void _nc_free_entries(
-+ ENTRY *headp)
-+ { /* void */ }
-+
-+#undef _nc_delink_entry
-+ENTRY *_nc_delink_entry(
-+ ENTRY *headp,
-+ TERMTYPE *tterm)
-+ { return(*(ENTRY **)0); }
-+
-+#undef _nc_leaks_tinfo
-+void _nc_leaks_tinfo(void)
-+ { /* void */ }
-+
-+/* ./fallback.c */
-+
-+#undef _nc_fallback
-+const TERMTYPE *_nc_fallback(
-+ const char *name)
-+ { return(*(const TERMTYPE **)0); }
-+
-+/* ./tinfo/free_ttype.c */
-+
-+#undef _nc_free_termtype
-+void _nc_free_termtype(
-+ TERMTYPE *ptr)
-+ { /* void */ }
-+
-+#undef _nc_user_definable
-+NCURSES_BOOL _nc_user_definable;
-+
-+#undef use_extended_names
-+int use_extended_names(
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/getenv_num.c */
-+
-+#undef _nc_getenv_num
-+int _nc_getenv_num(
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#undef _nc_setenv_num
-+void _nc_setenv_num(
-+ const char *name,
-+ int value)
-+ { /* void */ }
-+
-+/* ./tinfo/home_terminfo.c */
-+
-+#undef _nc_home_terminfo
-+char *_nc_home_terminfo(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/init_keytry.c */
-+
-+#if 0
-+
-+#include <init_keytry.h>
-+
-+#undef _nc_tinfo_fkeys
-+const struct tinfo_fkeys _nc_tinfo_fkeys[] = {0};
-+
-+#endif
-+
-+#undef _nc_init_keytry
-+void _nc_init_keytry(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+/* ./tinfo/lib_acs.c */
-+
-+#undef acs_map
-+chtype acs_map[128];
-+
-+#undef _nc_init_acs_sp
-+void _nc_init_acs_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_init_acs
-+void _nc_init_acs(void)
-+ { /* void */ }
-+
-+/* ./tinfo/lib_baudrate.c */
-+
-+#include <termcap.h>
-+
-+struct speed {
-+ int s;
-+ int sp;
-+};
-+
-+#undef _nc_baudrate
-+int _nc_baudrate(
-+ int OSpeed)
-+ { return(*(int *)0); }
-+
-+#undef _nc_ospeed
-+int _nc_ospeed(
-+ int BaudRate)
-+ { return(*(int *)0); }
-+
-+#undef baudrate_sp
-+int baudrate_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef baudrate
-+int baudrate(void)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_cur_term.c */
-+
-+#undef cur_term
-+TERMINAL *cur_term;
-+
-+#undef set_curterm_sp
-+TERMINAL *set_curterm_sp(
-+ SCREEN *sp,
-+ TERMINAL *termp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef set_curterm
-+TERMINAL *set_curterm(
-+ TERMINAL *termp)
-+ { return(*(TERMINAL **)0); }
-+
-+#undef del_curterm_sp
-+int del_curterm_sp(
-+ SCREEN *sp,
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+#undef del_curterm
-+int del_curterm(
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_data.c */
-+
-+#undef stdscr
-+WINDOW *stdscr;
-+#undef curscr
-+WINDOW *curscr;
-+#undef newscr
-+WINDOW *newscr;
-+#undef _nc_screen_chain
-+SCREEN *_nc_screen_chain;
-+#undef SP
-+SCREEN *SP;
-+#undef _nc_globals
-+NCURSES_GLOBALS _nc_globals;
-+#undef _nc_prescreen
-+NCURSES_PRESCREEN _nc_prescreen;
-+
-+#undef _nc_screen_of
-+SCREEN *_nc_screen_of(
-+ WINDOW *win)
-+ { return(*(SCREEN **)0); }
-+
-+/* ./tinfo/lib_has_cap.c */
-+
-+#undef has_ic_sp
-+NCURSES_BOOL has_ic_sp(
-+ SCREEN *sp)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_ic
-+NCURSES_BOOL has_ic(void)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_il_sp
-+NCURSES_BOOL has_il_sp(
-+ SCREEN *sp)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef has_il
-+NCURSES_BOOL has_il(void)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+/* ./tinfo/lib_kernel.c */
-+
-+#undef erasechar_sp
-+char erasechar_sp(
-+ SCREEN *sp)
-+ { return(*(char *)0); }
-+
-+#undef erasechar
-+char erasechar(void)
-+ { return(*(char *)0); }
-+
-+#undef killchar_sp
-+char killchar_sp(
-+ SCREEN *sp)
-+ { return(*(char *)0); }
-+
-+#undef killchar
-+char killchar(void)
-+ { return(*(char *)0); }
-+
-+#undef flushinp_sp
-+int flushinp_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef flushinp
-+int flushinp(void)
-+ { return(*(int *)0); }
-+
-+/* ./lib_keyname.c */
-+
-+struct kn { short offset; int code; };
-+
-+#undef keyname_sp
-+char *keyname_sp(
-+ SCREEN *sp,
-+ int c)
-+ { return(*(char **)0); }
-+
-+#undef keyname
-+char *keyname(
-+ int c)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_longname.c */
-+
-+#undef longname
-+char *longname(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_napms.c */
-+
-+#include <sys/time.h>
-+
-+#undef napms_sp
-+int napms_sp(
-+ SCREEN *sp,
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef napms
-+int napms(
-+ int ms)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_options.c */
-+
-+#undef idlok
-+int idlok(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef idcok
-+void idcok(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { /* void */ }
-+
-+#undef halfdelay_sp
-+int halfdelay_sp(
-+ SCREEN *sp,
-+ int t)
-+ { return(*(int *)0); }
-+
-+#undef halfdelay
-+int halfdelay(
-+ int t)
-+ { return(*(int *)0); }
-+
-+#undef nodelay
-+int nodelay(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef notimeout
-+int notimeout(
-+ WINDOW *win,
-+ NCURSES_BOOL f)
-+ { return(*(int *)0); }
-+
-+#undef wtimeout
-+void wtimeout(
-+ WINDOW *win,
-+ int delay)
-+ { /* void */ }
-+
-+#undef keypad
-+int keypad(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef meta
-+int meta(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef curs_set_sp
-+int curs_set_sp(
-+ SCREEN *sp,
-+ int vis)
-+ { return(*(int *)0); }
-+
-+#undef curs_set
-+int curs_set(
-+ int vis)
-+ { return(*(int *)0); }
-+
-+#undef typeahead_sp
-+int typeahead_sp(
-+ SCREEN *sp,
-+ int fd)
-+ { return(*(int *)0); }
-+
-+#undef typeahead
-+int typeahead(
-+ int fd)
-+ { return(*(int *)0); }
-+
-+#undef has_key_sp
-+int has_key_sp(
-+ SCREEN *sp,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef has_key
-+int has_key(
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp_flush_sp
-+int _nc_putp_flush_sp(
-+ SCREEN *sp,
-+ const char *name,
-+ const char *value)
-+ { return(*(int *)0); }
-+
-+#undef _nc_keypad
-+int _nc_keypad(
-+ SCREEN *sp,
-+ int flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_raw.c */
-+
-+#undef raw_sp
-+int raw_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef raw
-+int raw(void)
-+ { return(*(int *)0); }
-+
-+#undef cbreak_sp
-+int cbreak_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef cbreak
-+int cbreak(void)
-+ { return(*(int *)0); }
-+
-+#undef qiflush_sp
-+void qiflush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef qiflush
-+void qiflush(void)
-+ { /* void */ }
-+
-+#undef noraw_sp
-+int noraw_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef noraw
-+int noraw(void)
-+ { return(*(int *)0); }
-+
-+#undef nocbreak_sp
-+int nocbreak_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef nocbreak
-+int nocbreak(void)
-+ { return(*(int *)0); }
-+
-+#undef noqiflush_sp
-+void noqiflush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef noqiflush
-+void noqiflush(void)
-+ { /* void */ }
-+
-+#undef intrflush_sp
-+int intrflush_sp(
-+ SCREEN *sp,
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef intrflush
-+int intrflush(
-+ WINDOW *win,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_setup.c */
-+
-+#include <locale.h>
-+#include <sys/ioctl.h>
-+#include <langinfo.h>
-+
-+#undef ttytype
-+char ttytype[256];
-+#undef LINES
-+int LINES;
-+#undef COLS
-+int COLS;
-+#undef TABSIZE
-+int TABSIZE;
-+
-+#undef set_tabsize_sp
-+int set_tabsize_sp(
-+ SCREEN *sp,
-+ int value)
-+ { return(*(int *)0); }
-+
-+#undef set_tabsize
-+int set_tabsize(
-+ int value)
-+ { return(*(int *)0); }
-+
-+#undef _nc_handle_sigwinch
-+int _nc_handle_sigwinch(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef use_env_sp
-+void use_env_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_tioctl_sp
-+void use_tioctl_sp(
-+ SCREEN *sp,
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_env
-+void use_env(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef use_tioctl
-+void use_tioctl(
-+ NCURSES_BOOL f)
-+ { /* void */ }
-+
-+#undef _nc_get_screensize
-+void _nc_get_screensize(
-+ SCREEN *sp,
-+ int *linep,
-+ int *colp)
-+ { /* void */ }
-+
-+#undef _nc_update_screensize
-+void _nc_update_screensize(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_setup_tinfo
-+int _nc_setup_tinfo(
-+ const char *const tn,
-+ TERMTYPE *const tp)
-+ { return(*(int *)0); }
-+
-+#undef _nc_tinfo_cmdch
-+void _nc_tinfo_cmdch(
-+ TERMINAL *termp,
-+ int proto)
-+ { /* void */ }
-+
-+#undef _nc_get_locale
-+char *_nc_get_locale(void)
-+ { return(*(char **)0); }
-+
-+#undef _nc_unicode_locale
-+int _nc_unicode_locale(void)
-+ { return(*(int *)0); }
-+
-+#undef _nc_locale_breaks_acs
-+int _nc_locale_breaks_acs(
-+ TERMINAL *termp)
-+ { return(*(int *)0); }
-+
-+#undef _nc_setupterm
-+int _nc_setupterm(
-+ char *tname,
-+ int Filedes,
-+ int *errret,
-+ int reuse)
-+ { return(*(int *)0); }
-+
-+#undef new_prescr
-+SCREEN *new_prescr(void)
-+ { return(*(SCREEN **)0); }
-+
-+#undef setupterm
-+int setupterm(
-+ char *tname,
-+ int Filedes,
-+ int *errret)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/lib_termcap.c */
-+
-+#undef UP
-+char *UP;
-+#undef BC
-+char *BC;
-+
-+#undef tgetent_sp
-+int tgetent_sp(
-+ SCREEN *sp,
-+ char *bufp,
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#if 0
-+
-+#include <capdefaults.c>
-+
-+#endif
-+
-+#undef tgetent
-+int tgetent(
-+ char *bufp,
-+ const char *name)
-+ { return(*(int *)0); }
-+
-+#undef tgetflag_sp
-+int tgetflag_sp(
-+ SCREEN *sp,
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetflag
-+int tgetflag(
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetnum_sp
-+int tgetnum_sp(
-+ SCREEN *sp,
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetnum
-+int tgetnum(
-+ char *id)
-+ { return(*(int *)0); }
-+
-+#undef tgetstr_sp
-+char *tgetstr_sp(
-+ SCREEN *sp,
-+ char *id,
-+ char **area)
-+ { return(*(char **)0); }
-+
-+#undef tgetstr
-+char *tgetstr(
-+ char *id,
-+ char **area)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_termname.c */
-+
-+#undef termname_sp
-+char *termname_sp(
-+ SCREEN *sp)
-+ { return(*(char **)0); }
-+
-+#undef termname
-+char *termname(void)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tgoto.c */
-+
-+#undef tgoto
-+char *tgoto(
-+ const char *string,
-+ int x,
-+ int y)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_ti.c */
-+
-+#undef tigetflag_sp
-+int tigetflag_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetflag
-+int tigetflag(
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetnum_sp
-+int tigetnum_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetnum
-+int tigetnum(
-+ char *str)
-+ { return(*(int *)0); }
-+
-+#undef tigetstr_sp
-+char *tigetstr_sp(
-+ SCREEN *sp,
-+ char *str)
-+ { return(*(char **)0); }
-+
-+#undef tigetstr
-+char *tigetstr(
-+ char *str)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tparm.c */
-+
-+#undef _nc_tparm_err
-+int _nc_tparm_err;
-+
-+#undef _nc_tparm_analyze
-+int _nc_tparm_analyze(
-+ const char *string,
-+ char *p_is_s[9],
-+ int *_nc_popcount)
-+ { return(*(int *)0); }
-+
-+#undef tparm
-+char *tparm(
-+ char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiparm
-+char *tiparm(
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_tputs.c */
-+
-+#undef PC
-+char PC;
-+#undef ospeed
-+short ospeed;
-+#undef _nc_nulls_sent
-+int _nc_nulls_sent;
-+
-+#undef _nc_set_no_padding
-+void _nc_set_no_padding(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef delay_output_sp
-+int delay_output_sp(
-+ SCREEN *sp,
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef delay_output
-+int delay_output(
-+ int ms)
-+ { return(*(int *)0); }
-+
-+#undef _nc_flush_sp
-+void _nc_flush_sp(
-+ SCREEN *sp)
-+ { /* void */ }
-+
-+#undef _nc_flush
-+void _nc_flush(void)
-+ { /* void */ }
-+
-+#undef _nc_outch_sp
-+int _nc_outch_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_outch
-+int _nc_outch(
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar_sp
-+int _nc_putchar_sp(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putchar
-+int _nc_putchar(
-+ int ch)
-+ { return(*(int *)0); }
-+
-+#undef putp_sp
-+int putp_sp(
-+ SCREEN *sp,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef putp
-+int putp(
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp_sp
-+int _nc_putp_sp(
-+ SCREEN *sp,
-+ const char *name,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef _nc_putp
-+int _nc_putp(
-+ const char *name,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+#undef tputs_sp
-+int tputs_sp(
-+ SCREEN *sp,
-+ const char *string,
-+ int affcnt,
-+ NCURSES_OUTC_sp outc)
-+ { return(*(int *)0); }
-+
-+#undef _nc_outc_wrapper
-+int _nc_outc_wrapper(
-+ SCREEN *sp,
-+ int c)
-+ { return(*(int *)0); }
-+
-+#undef tputs
-+int tputs(
-+ const char *string,
-+ int affcnt,
-+ int (*outc)(
-+ int p1))
-+ { return(*(int *)0); }
-+
-+/* ./trace/lib_trace.c */
-+
-+#undef _nc_tracing
-+unsigned _nc_tracing;
-+#undef _nc_tputs_trace
-+const char *_nc_tputs_trace = {0};
-+#undef _nc_outchars
-+long _nc_outchars;
-+
-+#undef trace
-+void trace(
-+ const unsigned int tracelevel)
-+ { /* void */ }
-+
-+#undef _tracef
-+void _tracef(
-+ const char *fmt,
-+ ...)
-+ { /* void */ }
-+
-+#undef _nc_retrace_bool
-+NCURSES_BOOL _nc_retrace_bool(
-+ int code)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_retrace_char
-+char _nc_retrace_char(
-+ int code)
-+ { return(*(char *)0); }
-+
-+#undef _nc_retrace_int
-+int _nc_retrace_int(
-+ int code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_retrace_unsigned
-+unsigned _nc_retrace_unsigned(
-+ unsigned code)
-+ { return(*(unsigned *)0); }
-+
-+#undef _nc_retrace_ptr
-+char *_nc_retrace_ptr(
-+ char *code)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_cptr
-+const char *_nc_retrace_cptr(
-+ const char *code)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_retrace_cvoid_ptr
-+void *_nc_retrace_cvoid_ptr(
-+ void *code)
-+ { return(*(void **)0); }
-+
-+#undef _nc_retrace_void_ptr
-+void *_nc_retrace_void_ptr(
-+ void *code)
-+ { return(*(void **)0); }
-+
-+#undef _nc_retrace_sp
-+SCREEN *_nc_retrace_sp(
-+ SCREEN *code)
-+ { return(*(SCREEN **)0); }
-+
-+#undef _nc_retrace_win
-+WINDOW *_nc_retrace_win(
-+ WINDOW *code)
-+ { return(*(WINDOW **)0); }
-+
-+/* ./trace/lib_traceatr.c */
-+
-+#undef _traceattr2
-+char *_traceattr2(
-+ int bufnum,
-+ chtype newmode)
-+ { return(*(char **)0); }
-+
-+#undef _traceattr
-+char *_traceattr(
-+ attr_t newmode)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_int_attr_t
-+int _nc_retrace_int_attr_t(
-+ attr_t code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_retrace_attr_t
-+attr_t _nc_retrace_attr_t(
-+ attr_t code)
-+ { return(*(attr_t *)0); }
-+
-+#undef _nc_altcharset_name
-+const char *_nc_altcharset_name(
-+ attr_t attr,
-+ chtype ch)
-+ { return(*(const char **)0); }
-+
-+#undef _tracechtype2
-+char *_tracechtype2(
-+ int bufnum,
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracechtype
-+char *_tracechtype(
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef _nc_retrace_chtype
-+chtype _nc_retrace_chtype(
-+ chtype code)
-+ { return(*(chtype *)0); }
-+
-+#undef _tracecchar_t2
-+char *_tracecchar_t2(
-+ int bufnum,
-+ const cchar_t *ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracecchar_t
-+char *_tracecchar_t(
-+ const cchar_t *ch)
-+ { return(*(char **)0); }
-+
-+/* ./trace/lib_tracebits.c */
-+
-+typedef struct {
-+ unsigned int val;
-+ const char *name;
-+} BITNAMES;
-+
-+#undef _nc_trace_ttymode
-+char *_nc_trace_ttymode(
-+ struct termios *tty)
-+ { return(*(char **)0); }
-+
-+#undef _nc_tracebits
-+char *_nc_tracebits(void)
-+ { return(*(char **)0); }
-+
-+/* ./trace/lib_tracechr.c */
-+
-+#undef _nc_tracechar
-+char *_nc_tracechar(
-+ SCREEN *sp,
-+ int ch)
-+ { return(*(char **)0); }
-+
-+#undef _tracechar
-+char *_tracechar(
-+ int ch)
-+ { return(*(char **)0); }
-+
-+/* ./tinfo/lib_ttyflags.c */
-+
-+#undef _nc_get_tty_mode_sp
-+int _nc_get_tty_mode_sp(
-+ SCREEN *sp,
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_get_tty_mode
-+int _nc_get_tty_mode(
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_set_tty_mode_sp
-+int _nc_set_tty_mode_sp(
-+ SCREEN *sp,
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef _nc_set_tty_mode
-+int _nc_set_tty_mode(
-+ struct termios *buf)
-+ { return(*(int *)0); }
-+
-+#undef def_shell_mode_sp
-+int def_shell_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef def_shell_mode
-+int def_shell_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef def_prog_mode_sp
-+int def_prog_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef def_prog_mode
-+int def_prog_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef reset_prog_mode_sp
-+int reset_prog_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef reset_prog_mode
-+int reset_prog_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef reset_shell_mode_sp
-+int reset_shell_mode_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef reset_shell_mode
-+int reset_shell_mode(void)
-+ { return(*(int *)0); }
-+
-+#undef savetty_sp
-+int savetty_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef savetty
-+int savetty(void)
-+ { return(*(int *)0); }
-+
-+#undef resetty_sp
-+int resetty_sp(
-+ SCREEN *sp)
-+ { return(*(int *)0); }
-+
-+#undef resetty
-+int resetty(void)
-+ { return(*(int *)0); }
-+
-+/* ./tty/lib_twait.c */
-+
-+#undef _nc_timed_wait
-+int _nc_timed_wait(
-+ SCREEN *sp,
-+ int mode,
-+ int milliseconds,
-+ int *timeleft)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/name_match.c */
-+
-+#undef _nc_first_name
-+char *_nc_first_name(
-+ const char *const sp)
-+ { return(*(char **)0); }
-+
-+#undef _nc_name_match
-+int _nc_name_match(
-+ const char *const namelst,
-+ const char *const name,
-+ const char *const delim)
-+ { return(*(int *)0); }
-+
-+/* ./names.c */
-+
-+#undef boolnames
-+char *const boolnames[] = {0};
-+#undef boolfnames
-+char *const boolfnames[] = {0};
-+#undef numnames
-+char *const numnames[] = {0};
-+#undef numfnames
-+char *const numfnames[] = {0};
-+#undef strnames
-+char *const strnames[] = {0};
-+#undef strfnames
-+char *const strfnames[] = {0};
-+
-+/* ./tinfo/obsolete.c */
-+
-+#undef _nc_set_buffer_sp
-+void _nc_set_buffer_sp(
-+ SCREEN *sp,
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+#undef _nc_set_buffer
-+void _nc_set_buffer(
-+ FILE *ofp,
-+ int buffered)
-+ { /* void */ }
-+
-+/* ./tinfo/read_entry.c */
-+
-+#include <hashed_db.h>
-+
-+#undef _nc_init_termtype
-+void _nc_init_termtype(
-+ TERMTYPE *const tp)
-+ { /* void */ }
-+
-+#undef _nc_read_termtype
-+int _nc_read_termtype(
-+ TERMTYPE *ptr,
-+ char *buffer,
-+ int limit)
-+ { return(*(int *)0); }
-+
-+#undef _nc_read_file_entry
-+int _nc_read_file_entry(
-+ const char *const filename,
-+ TERMTYPE *ptr)
-+ { return(*(int *)0); }
-+
-+#undef _nc_read_entry
-+int _nc_read_entry(
-+ const char *const name,
-+ char *const filename,
-+ TERMTYPE *const tp)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/read_termcap.c */
-+
-+#include <sys/types.h>
-+
-+#undef _nc_read_termcap
-+void _nc_read_termcap(void)
-+ { /* void */ }
-+
-+/* ./tinfo/strings.c */
-+
-+#undef _nc_str_init
-+string_desc *_nc_str_init(
-+ string_desc *dst,
-+ char *src,
-+ size_t len)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_str_null
-+string_desc *_nc_str_null(
-+ string_desc *dst,
-+ size_t len)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_str_copy
-+string_desc *_nc_str_copy(
-+ string_desc *dst,
-+ string_desc *src)
-+ { return(*(string_desc **)0); }
-+
-+#undef _nc_safe_strcat
-+NCURSES_BOOL _nc_safe_strcat(
-+ string_desc *dst,
-+ const char *src)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+#undef _nc_safe_strcpy
-+NCURSES_BOOL _nc_safe_strcpy(
-+ string_desc *dst,
-+ const char *src)
-+ { return(*(NCURSES_BOOL *)0); }
-+
-+/* ./trace/trace_buf.c */
-+
-+#undef _nc_trace_buf
-+char *_nc_trace_buf(
-+ int bufnum,
-+ size_t want)
-+ { return(*(char **)0); }
-+
-+#undef _nc_trace_bufcat
-+char *_nc_trace_bufcat(
-+ int bufnum,
-+ const char *value)
-+ { return(*(char **)0); }
-+
-+/* ./trace/trace_tries.c */
-+
-+#undef _nc_trace_tries
-+void _nc_trace_tries(
-+ TRIES *tree)
-+ { /* void */ }
-+
-+/* ./base/tries.c */
-+
-+#undef _nc_expand_try
-+char *_nc_expand_try(
-+ TRIES *tree,
-+ unsigned code,
-+ int *count,
-+ size_t len)
-+ { return(*(char **)0); }
-+
-+#undef _nc_remove_key
-+int _nc_remove_key(
-+ TRIES **tree,
-+ unsigned code)
-+ { return(*(int *)0); }
-+
-+#undef _nc_remove_string
-+int _nc_remove_string(
-+ TRIES **tree,
-+ const char *string)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/trim_sgr0.c */
-+
-+#undef _nc_trim_sgr0
-+char *_nc_trim_sgr0(
-+ TERMTYPE *tp)
-+ { return(*(char **)0); }
-+
-+/* ./unctrl.c */
-+
-+#undef unctrl_sp
-+char *unctrl_sp(
-+ SCREEN *sp,
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+#undef unctrl
-+char *unctrl(
-+ chtype ch)
-+ { return(*(char **)0); }
-+
-+/* ./trace/visbuf.c */
-+
-+#undef _nc_visbuf2
-+const char *_nc_visbuf2(
-+ int bufnum,
-+ const char *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_visbuf
-+const char *_nc_visbuf(
-+ const char *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_visbufn
-+const char *_nc_visbufn(
-+ const char *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viswbuf2
-+const char *_nc_viswbuf2(
-+ int bufnum,
-+ const wchar_t *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viswbuf
-+const char *_nc_viswbuf(
-+ const wchar_t *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viswbufn
-+const char *_nc_viswbufn(
-+ const wchar_t *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viswibuf
-+const char *_nc_viswibuf(
-+ const wint_t *buf)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viscbuf2
-+const char *_nc_viscbuf2(
-+ int bufnum,
-+ const cchar_t *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+#undef _nc_viscbuf
-+const char *_nc_viscbuf(
-+ const cchar_t *buf,
-+ int len)
-+ { return(*(const char **)0); }
-+
-+/* ./base/define_key.c */
-+
-+#undef define_key_sp
-+int define_key_sp(
-+ SCREEN *sp,
-+ const char *str,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+#undef define_key
-+int define_key(
-+ const char *str,
-+ int keycode)
-+ { return(*(int *)0); }
-+
-+/* ./tinfo/hashed_db.c */
-+
-+#undef _nc_hashed_db
-+void _nc_hashed_db(void)
-+ { /* void */ }
-+
-+/* ./base/key_defined.c */
-+
-+#undef key_defined_sp
-+int key_defined_sp(
-+ SCREEN *sp,
-+ const char *str)
-+ { return(*(int *)0); }
-+
-+#undef key_defined
-+int key_defined(
-+ const char *str)
-+ { return(*(int *)0); }
-+
-+/* ./base/keybound.c */
-+
-+#undef keybound_sp
-+char *keybound_sp(
-+ SCREEN *sp,
-+ int code,
-+ int count)
-+ { return(*(char **)0); }
-+
-+#undef keybound
-+char *keybound(
-+ int code,
-+ int count)
-+ { return(*(char **)0); }
-+
-+/* ./base/keyok.c */
-+
-+#undef keyok_sp
-+int keyok_sp(
-+ SCREEN *sp,
-+ int c,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+#undef keyok
-+int keyok(
-+ int c,
-+ NCURSES_BOOL flag)
-+ { return(*(int *)0); }
-+
-+/* ./base/version.c */
-+
-+#undef curses_version
-+const char *curses_version(void)
-+ { return(*(const char **)0); }
-Index: ncurses/modules
-Prereq: 1.117
---- ncurses-5.9/ncurses/modules 2010-08-07 18:41:02.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/modules 2013-01-26 22:17:55.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: modules,v 1.117 2010/08/07 18:41:02 tom Exp $
-+# $Id: modules,v 1.120 2013/01/26 22:17:55 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2012,2013 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"), #
-@@ -115,7 +115,6 @@
- varargs lib $(trace) $(HEADER_DEPS)
-
- # Modules for porting
--memmove lib $(base) $(HEADER_DEPS)
- vsscanf lib $(base) $(HEADER_DEPS)
-
- # actually an extension, but with its own configure option (--disable-leaks)
-@@ -199,9 +198,9 @@
- lib_twait lib $(serial) $(HEADER_DEPS)
- name_match lib $(tinfo) $(HEADER_DEPS) $(INCDIR)/tic.h
- names lib . $(HEADER_DEPS)
-+obsolete lib $(tinfo) $(HEADER_DEPS)
- read_entry lib $(tinfo) $(HEADER_DEPS) $(INCDIR)/tic.h $(INCDIR)/hashed_db.h
- read_termcap lib $(tinfo) $(HEADER_DEPS) $(INCDIR)/tic.h
--setbuf lib $(tinfo) $(HEADER_DEPS)
- strings lib $(tinfo) $(HEADER_DEPS)
- trace_buf lib $(trace) $(HEADER_DEPS)
- trace_tries lib $(trace) $(HEADER_DEPS)
-@@ -236,6 +235,7 @@
- @ port_win32con
- gettimeofday lib $(win32con) $(HEADER_DEPS)
- wcwidth lib $(win32con) $(HEADER_DEPS)
-+widechars lib $(wide) $(HEADER_DEPS)
- win_driver lib $(win32con) $(HEADER_DEPS)
-
- @ port_tinfo
-Index: ncurses/tinfo/MKcaptab.sh
-Prereq: 1.13
---- ncurses-5.9/ncurses/tinfo/MKcaptab.sh 2010-12-25 23:43:58.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/MKcaptab.sh 2011-10-22 16:34:50.000000000 +0000
-@@ -1,6 +1,6 @@
- #!/bin/sh
- ##############################################################################
--# Copyright (c) 2007-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 2007-2010,2011 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"), #
-@@ -26,7 +26,7 @@
- # use or other dealings in this Software without prior written #
- # authorization. #
- ##############################################################################
--# $Id: MKcaptab.sh,v 1.13 2010/12/25 23:43:58 tom Exp $
-+# $Id: MKcaptab.sh,v 1.14 2011/10/22 16:34:50 tom Exp $
- AWK=${1-awk}
- OPT1=${2-0}
- OPT2=${3-tinfo/MKcaptab.awk}
-@@ -99,12 +99,12 @@
- _nc_build_alias(struct alias **actual,
- const alias_table_data *source,
- const char *strings,
-- unsigned tablesize)
-+ size_t tablesize)
- {
- if (*actual == 0) {
- *actual = typeCalloc(struct alias, tablesize + 1);
- if (*actual != 0) {
-- unsigned n;
-+ size_t n;
- for (n = 0; n < tablesize; ++n) {
- add_alias(from);
- add_alias(to);
-@@ -178,7 +178,7 @@
- static int
- compare_tcap_names(const char *a, const char *b)
- {
-- return !strncmp(a, b, TCAP_LEN);
-+ return !strncmp(a, b, (size_t) TCAP_LEN);
- }
-
- static int
-Index: ncurses/tinfo/access.c
-Prereq: 1.16
---- ncurses-5.9/ncurses/tinfo/access.c 2010-01-23 17:57:43.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/access.c 2012-09-01 19:21:29.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -33,11 +33,18 @@
- #include <curses.priv.h>
-
- #include <ctype.h>
--#include <sys/stat.h>
-
- #include <tic.h>
-
--MODULE_ID("$Id: access.c,v 1.16 2010/01/23 17:57:43 tom Exp $")
-+MODULE_ID("$Id: access.c,v 1.23 2012/09/01 19:21:29 tom Exp $")
-+
-+#ifdef __TANDEM
-+#define ROOT_UID 65535
-+#endif
-+
-+#ifndef ROOT_UID
-+#define ROOT_UID 0
-+#endif
-
- #define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
-
-@@ -53,7 +60,7 @@
- result = temp;
- #if !MIXEDCASE_FILENAMES
- for (s = result; *s != '\0'; ++s) {
-- *s = LOWERCASE(*s);
-+ *s = (char) LOWERCASE(*s);
- }
- #endif
- #if defined(PROG_EXT)
-@@ -108,24 +115,33 @@
- NCURSES_EXPORT(int)
- _nc_access(const char *path, int mode)
- {
-- if (access(path, mode) < 0) {
-+ int result;
-+
-+ if (path == 0) {
-+ result = -1;
-+ } else if (access(path, mode) < 0) {
- if ((mode & W_OK) != 0
- && errno == ENOENT
- && strlen(path) < PATH_MAX) {
- char head[PATH_MAX];
-- char *leaf = _nc_basename(strcpy(head, path));
-+ char *leaf;
-
-+ _nc_STRCPY(head, path, sizeof(head));
-+ leaf = _nc_basename(head);
- if (leaf == 0)
- leaf = head;
- *leaf = '\0';
- if (head == leaf)
-- (void) strcpy(head, ".");
-+ _nc_STRCPY(head, ".", sizeof(head));
-
-- return access(head, R_OK | W_OK | X_OK);
-+ result = access(head, R_OK | W_OK | X_OK);
-+ } else {
-+ result = -1;
- }
-- return -1;
-+ } else {
-+ result = 0;
- }
-- return 0;
-+ return result;
- }
-
- NCURSES_EXPORT(bool)
-@@ -135,7 +151,7 @@
- struct stat sb;
-
- if (stat(path, &sb) == 0
-- && (sb.st_mode & S_IFMT) == S_IFDIR) {
-+ && S_ISDIR(sb.st_mode)) {
- result = TRUE;
- }
- return result;
-@@ -148,7 +164,7 @@
- struct stat sb;
-
- if (stat(path, &sb) == 0
-- && (sb.st_mode & S_IFMT) == S_IFREG) {
-+ && S_ISREG(sb.st_mode)) {
- result = TRUE;
- }
- return result;
-@@ -170,6 +186,7 @@
- || getgid() != getegid())
- return FALSE;
- #endif
-- return getuid() != 0 && geteuid() != 0; /* ...finally, disallow root */
-+ /* ...finally, disallow root */
-+ return (getuid() != ROOT_UID) && (geteuid() != ROOT_UID);
- }
- #endif
-Index: ncurses/tinfo/alloc_entry.c
-Prereq: 1.51
---- ncurses-5.9/ncurses/tinfo/alloc_entry.c 2010-12-25 23:06:01.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/alloc_entry.c 2013-08-17 19:20:38.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -47,7 +47,7 @@
-
- #include <tic.h>
-
--MODULE_ID("$Id: alloc_entry.c,v 1.51 2010/12/25 23:06:01 tom Exp $")
-+MODULE_ID("$Id: alloc_entry.c,v 1.58 2013/08/17 19:20:38 tom Exp $")
-
- #define ABSENT_OFFSET -1
- #define CANCELLED_OFFSET -2
-@@ -61,8 +61,6 @@
- _nc_init_entry(TERMTYPE *const tp)
- /* initialize a terminal type data block */
- {
-- unsigned i;
--
- #if NO_LEAKS
- if (tp == 0) {
- if (stringbuf != 0) {
-@@ -73,33 +71,11 @@
- #endif
-
- if (stringbuf == 0)
-- stringbuf = (char *) malloc(MAX_STRTAB);
--
--#if NCURSES_XNAMES
-- tp->num_Booleans = BOOLCOUNT;
-- tp->num_Numbers = NUMCOUNT;
-- tp->num_Strings = STRCOUNT;
-- tp->ext_Booleans = 0;
-- tp->ext_Numbers = 0;
-- tp->ext_Strings = 0;
--#endif
-- if (tp->Booleans == 0)
-- tp->Booleans = typeMalloc(NCURSES_SBOOL, BOOLCOUNT);
-- if (tp->Numbers == 0)
-- tp->Numbers = typeMalloc(short, NUMCOUNT);
-- if (tp->Strings == 0)
-- tp->Strings = typeMalloc(char *, STRCOUNT);
--
-- for_each_boolean(i, tp)
-- tp->Booleans[i] = FALSE;
--
-- for_each_number(i, tp)
-- tp->Numbers[i] = ABSENT_NUMERIC;
--
-- for_each_string(i, tp)
-- tp->Strings[i] = ABSENT_STRING;
-+ TYPE_MALLOC(char, (size_t) MAX_STRTAB, stringbuf);
-
- next_free = 0;
-+
-+ _nc_init_termtype(tp);
- }
-
- NCURSES_EXPORT(ENTRY *)
-@@ -131,13 +107,13 @@
- result = (stringbuf + next_free - 1);
- }
- } else if (next_free + len < MAX_STRTAB) {
-- strcpy(&stringbuf[next_free], string);
-+ _nc_STRCPY(&stringbuf[next_free], string, MAX_STRTAB);
- DEBUG(7, ("Saved string %s", _nc_visbuf(string)));
- DEBUG(7, ("at location %d", (int) next_free));
- next_free += len;
- result = (stringbuf + old_next_free);
- } else {
-- _nc_warning("Too much data, some is lost");
-+ _nc_warning("Too much data, some is lost: %s", string);
- }
- return result;
- }
-@@ -194,8 +170,7 @@
- useoffsets[i] = (int) (ep->uses[i].name - stringbuf);
- }
-
-- if ((tp->str_table = typeMalloc(char, next_free)) == (char *) 0)
-- _nc_err_abort(MSG_NO_MEMORY);
-+ TYPE_MALLOC(char, next_free, tp->str_table);
- (void) memcpy(tp->str_table, stringbuf, next_free);
-
- tp->term_names = tp->str_table + n;
-@@ -216,16 +191,18 @@
- if ((n = (unsigned) NUM_EXT_NAMES(tp)) != 0) {
- if (n < SIZEOF(offsets)) {
- size_t length = 0;
-+ size_t offset;
- for (i = 0; i < n; i++) {
- length += strlen(tp->ext_Names[i]) + 1;
- offsets[i] = (int) (tp->ext_Names[i] - stringbuf);
- }
-- if ((tp->ext_str_table = typeMalloc(char, length)) == 0)
-- _nc_err_abort(MSG_NO_MEMORY);
-- for (i = 0, length = 0; i < n; i++) {
-- tp->ext_Names[i] = tp->ext_str_table + length;
-- strcpy(tp->ext_Names[i], stringbuf + offsets[i]);
-- length += strlen(tp->ext_Names[i]) + 1;
-+ TYPE_MALLOC(char, length, tp->ext_str_table);
-+ for (i = 0, offset = 0; i < n; i++) {
-+ tp->ext_Names[i] = tp->ext_str_table + offset;
-+ _nc_STRCPY(tp->ext_Names[i],
-+ stringbuf + offsets[i],
-+ length - offset);
-+ offset += strlen(tp->ext_Names[i]) + 1;
- }
- }
- }
-Index: ncurses/tinfo/alloc_ttype.c
-Prereq: 1.22
---- ncurses-5.9/ncurses/tinfo/alloc_ttype.c 2010-12-19 00:24:09.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/alloc_ttype.c 2013-06-08 16:54:50.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1999-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1999-2012,2013 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 *
-@@ -42,7 +42,7 @@
-
- #include <tic.h>
-
--MODULE_ID("$Id: alloc_ttype.c,v 1.22 2010/12/19 00:24:09 tom Exp $")
-+MODULE_ID("$Id: alloc_ttype.c,v 1.27 2013/06/08 16:54:50 tom Exp $")
-
- #if NCURSES_XNAMES
- /*
-@@ -104,7 +104,7 @@
-
- if (to->ext_Booleans != ext_Booleans) {
- EXTEND_NUM(num_Booleans, ext_Booleans);
-- to->Booleans = typeRealloc(NCURSES_SBOOL, to->num_Booleans, to->Booleans);
-+ TYPE_REALLOC(NCURSES_SBOOL, to->num_Booleans, to->Booleans);
- for (n = to->ext_Booleans - 1,
- m = ext_Booleans - 1,
- base = to->num_Booleans - (m + 1); m >= 0; m--) {
-@@ -116,9 +116,10 @@
- }
- to->ext_Booleans = UShort(ext_Booleans);
- }
-+
- if (to->ext_Numbers != ext_Numbers) {
- EXTEND_NUM(num_Numbers, ext_Numbers);
-- to->Numbers = typeRealloc(short, to->num_Numbers, to->Numbers);
-+ TYPE_REALLOC(short, to->num_Numbers, to->Numbers);
- for (n = to->ext_Numbers - 1,
- m = ext_Numbers - 1,
- base = to->num_Numbers - (m + 1); m >= 0; m--) {
-@@ -132,7 +133,7 @@
- }
- if (to->ext_Strings != ext_Strings) {
- EXTEND_NUM(num_Strings, ext_Strings);
-- to->Strings = typeRealloc(char *, to->num_Strings, to->Strings);
-+ TYPE_REALLOC(char *, to->num_Strings, to->Strings);
- for (n = to->ext_Strings - 1,
- m = ext_Strings - 1,
- base = to->num_Strings - (m + 1); m >= 0; m--) {
-@@ -301,7 +302,7 @@
- }
- }
-
-- tp->ext_Names = typeRealloc(char *, total, tp->ext_Names);
-+ TYPE_REALLOC(char *, total, tp->ext_Names);
- for (k = total - 1; k > j; k--)
- tp->ext_Names[k] = tp->ext_Names[k - 1];
- tp->ext_Names[j] = name;
-@@ -311,21 +312,21 @@
- case BOOLEAN:
- tp->ext_Booleans++;
- tp->num_Booleans++;
-- tp->Booleans = typeRealloc(NCURSES_SBOOL, tp->num_Booleans, tp->Booleans);
-+ TYPE_REALLOC(NCURSES_SBOOL, tp->num_Booleans, tp->Booleans);
- for (k = (unsigned) (tp->num_Booleans - 1); k > j; k--)
- tp->Booleans[k] = tp->Booleans[k - 1];
- break;
- case NUMBER:
- tp->ext_Numbers++;
- tp->num_Numbers++;
-- tp->Numbers = typeRealloc(short, tp->num_Numbers, tp->Numbers);
-+ TYPE_REALLOC(short, tp->num_Numbers, tp->Numbers);
- for (k = (unsigned) (tp->num_Numbers - 1); k > j; k--)
- tp->Numbers[k] = tp->Numbers[k - 1];
- break;
- case STRING:
- tp->ext_Strings++;
- tp->num_Strings++;
-- tp->Strings = typeRealloc(char *, tp->num_Strings, tp->Strings);
-+ TYPE_REALLOC(char *, tp->num_Strings, tp->Strings);
- for (k = (unsigned) (tp->num_Strings - 1); k > j; k--)
- tp->Strings[k] = tp->Strings[k - 1];
- break;
-@@ -417,7 +418,7 @@
- * into it, updating to's counts for booleans, etc. Fortunately we do
- * this only for the terminfo compiler (tic) and comparer (infocmp).
- */
-- ext_Names = typeMalloc(char *, (size_t)(na + nb));
-+ TYPE_MALLOC(char *, (size_t)(na + nb), ext_Names);
-
- if (to->ext_Strings && (from->ext_Booleans + from->ext_Numbers))
- adjust_cancels(to, from);
-@@ -461,7 +462,7 @@
- if (nb != (ext_Booleans + ext_Numbers + ext_Strings)) {
- nb = (ext_Booleans + ext_Numbers + ext_Strings);
- realign_data(from, ext_Names, ext_Booleans, ext_Numbers, ext_Strings);
-- from->ext_Names = typeRealloc(char *, (size_t) nb, from->ext_Names);
-+ TYPE_REALLOC(char *, (size_t) nb, from->ext_Names);
- memcpy(from->ext_Names, ext_Names, sizeof(char *) * (size_t) nb);
- DEBUG(2, ("realigned %d extended names for '%s' (from)",
- NUM_EXT_NAMES(from), from->term_names));
-@@ -473,22 +474,27 @@
- #endif
-
- NCURSES_EXPORT(void)
--_nc_copy_termtype(TERMTYPE *dst, TERMTYPE *src)
-+_nc_copy_termtype(TERMTYPE *dst, const TERMTYPE *src)
- {
-+#if NCURSES_XNAMES
- unsigned i;
-+#endif
-
- *dst = *src; /* ...to copy the sizes and string-tables */
-- dst->Booleans = typeMalloc(NCURSES_SBOOL, NUM_BOOLEANS(dst));
-- dst->Numbers = typeMalloc(short, NUM_NUMBERS(dst));
-- dst->Strings = typeMalloc(char *, NUM_STRINGS(dst));
--
-- /* FIXME: use memcpy for these and similar loops */
-- for_each_boolean(i, dst)
-- dst->Booleans[i] = src->Booleans[i];
-- for_each_number(i, dst)
-- dst->Numbers[i] = src->Numbers[i];
-- for_each_string(i, dst)
-- dst->Strings[i] = src->Strings[i];
-+
-+ TYPE_MALLOC(NCURSES_SBOOL, NUM_BOOLEANS(dst), dst->Booleans);
-+ TYPE_MALLOC(short, NUM_NUMBERS(dst), dst->Numbers);
-+ TYPE_MALLOC(char *, NUM_STRINGS(dst), dst->Strings);
-+
-+ memcpy(dst->Booleans,
-+ src->Booleans,
-+ NUM_BOOLEANS(dst) * sizeof(dst->Booleans[0]));
-+ memcpy(dst->Numbers,
-+ src->Numbers,
-+ NUM_NUMBERS(dst) * sizeof(dst->Numbers[0]));
-+ memcpy(dst->Strings,
-+ src->Strings,
-+ NUM_STRINGS(dst) * sizeof(dst->Strings[0]));
-
- /* FIXME: we probably should also copy str_table and ext_str_table,
- * but tic and infocmp are not written to exploit that (yet).
-@@ -496,11 +502,10 @@
-
- #if NCURSES_XNAMES
- if ((i = NUM_EXT_NAMES(src)) != 0) {
-- dst->ext_Names = typeMalloc(char *, i);
-+ TYPE_MALLOC(char *, i, dst->ext_Names);
- memcpy(dst->ext_Names, src->ext_Names, i * sizeof(char *));
- } else {
- dst->ext_Names = 0;
- }
- #endif
--
- }
-Index: ncurses/tinfo/captoinfo.c
-Prereq: 1.58
---- ncurses-5.9/ncurses/tinfo/captoinfo.c 2010-12-04 20:08:19.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/captoinfo.c 2012-12-30 00:50:40.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -93,7 +93,7 @@
- #include <ctype.h>
- #include <tic.h>
-
--MODULE_ID("$Id: captoinfo.c,v 1.58 2010/12/04 20:08:19 tom Exp $")
-+MODULE_ID("$Id: captoinfo.c,v 1.77 2012/12/30 00:50:40 tom Exp $")
-
- #define MAX_PUSHED 16 /* max # args we can push onto the stack */
-
-@@ -114,9 +114,7 @@
- /* initialize 'my_string', 'my_length' */
- {
- if (my_string == 0)
-- my_string = typeMalloc(char, my_length = 256);
-- if (my_string == 0)
-- _nc_err_abort(MSG_NO_MEMORY);
-+ TYPE_MALLOC(char, my_length = 256, my_string);
-
- *my_string = '\0';
- return my_string;
-@@ -133,7 +131,7 @@
- _nc_err_abort(MSG_NO_MEMORY);
- d = my_string + have;
- }
-- (void) strcpy(d, s);
-+ _nc_STRCPY(d, s, my_length - have);
- return d + strlen(d);
- }
-
-@@ -240,6 +238,12 @@
- else if (parm == 2)
- parm = 1;
- }
-+
-+ while (n--) {
-+ dp = save_string(dp, "%p");
-+ dp = save_char(dp, '0' + parm);
-+ }
-+
- if (onstack == parm) {
- if (n > 1) {
- _nc_warning("string may not be optimal");
-@@ -255,11 +259,6 @@
-
- onstack = parm;
-
-- while (n--) {
-- dp = save_string(dp, "%p");
-- dp = save_char(dp, '0' + parm);
-- }
--
- if (seenn && parm < 3) {
- dp = save_string(dp, "%{96}%^");
- }
-@@ -469,73 +468,9 @@
- break;
- }
- break;
--#ifdef REVISIBILIZE
-- case '\\':
-- dp = save_char(dp, *s++);
-- dp = save_char(dp, *s++);
-- break;
-- case '\n':
-- dp = save_string(dp, "\\n");
-- s++;
-- break;
-- case '\t':
-- dp = save_string(dp, "\\t");
-- s++;
-- break;
-- case '\r':
-- dp = save_string(dp, "\\r");
-- s++;
-- break;
-- case '\200':
-- dp = save_string(dp, "\\0");
-- s++;
-- break;
-- case '\f':
-- dp = save_string(dp, "\\f");
-- s++;
-- break;
-- case '\b':
-- dp = save_string(dp, "\\b");
-- s++;
-- break;
-- case ' ':
-- dp = save_string(dp, "\\s");
-- s++;
-- break;
-- case '^':
-- dp = save_string(dp, "\\^");
-- s++;
-- break;
-- case ':':
-- dp = save_string(dp, "\\:");
-- s++;
-- break;
-- case ',':
-- dp = save_string(dp, "\\,");
-- s++;
-- break;
-- default:
-- if (*s == '\033') {
-- dp = save_string(dp, "\\E");
-- s++;
-- } else if (*s > 0 && *s < 32) {
-- dp = save_char(dp, '^');
-- dp = save_char(dp, *s + '@');
-- s++;
-- } else if (*s <= 0 || *s >= 127) {
-- dp = save_char(dp, '\\');
-- dp = save_char(dp, ((*s & 0300) >> 6) + '0');
-- dp = save_char(dp, ((*s & 0070) >> 3) + '0');
-- dp = save_char(dp, (*s & 0007) + '0');
-- s++;
-- } else
-- dp = save_char(dp, *s++);
-- break;
--#else
- default:
- dp = save_char(dp, *s++);
- break;
--#endif
- }
- }
-
-@@ -578,7 +513,7 @@
- {
- char buffer[80];
- int tst;
-- sprintf(buffer, fmt, ch1, ch2);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) fmt, ch1, ch2);
- tst = strlen(buffer) - 1;
- assert(len == tst);
- }
-@@ -597,10 +532,13 @@
- bufptr = save_char(bufptr, '\\');
- bufptr = save_char(bufptr, c1);
- } else {
-- if (c1 == (c1 & 0x1f)) /* iscntrl() returns T on 255 */
-- (void) strcpy(temp, unctrl((chtype) c1));
-- else
-- (void) sprintf(temp, "\\%03o", c1);
-+ if (c1 == (c1 & 0x1f)) { /* iscntrl() returns T on 255 */
-+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp))
-+ "%.20s", unctrl((chtype) c1));
-+ } else {
-+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp))
-+ "\\%03o", c1);
-+ }
- bufptr = save_string(bufptr, temp);
- }
- return bufptr;
-@@ -646,13 +584,15 @@
- int in0, in1, in2;
- char ch1 = 0, ch2 = 0;
- char *bufptr = init_string();
-+ char octal[4];
- int len;
- bool syntax_error = FALSE;
-
- /* we may have to move some trailing mandatory padding up front */
- padding = str + strlen(str) - 1;
-- if (padding > str && *padding == '>' && *--padding == '/') {
-- --padding;
-+ if (padding > str && *padding == '>') {
-+ if (*--padding == '/')
-+ --padding;
- while (isdigit(UChar(*padding)) || *padding == '.' || *padding == '*')
- padding--;
- if (padding > str && *padding == '<' && *--padding == '$')
-@@ -663,7 +603,7 @@
- bufptr = save_char(bufptr, *padding++);
- }
-
-- for (; *str && str != trimmed; str++) {
-+ for (; *str && ((trimmed == 0) || (str < trimmed)); str++) {
- int c1, c2;
- char *cp = 0;
-
-@@ -685,8 +625,72 @@
- } else if (str[1] == ',') {
- bufptr = save_char(bufptr, *++str);
- } else {
-+ int xx1, xx2;
-+
- bufptr = save_char(bufptr, *str++);
-- bufptr = save_char(bufptr, *str);
-+ xx1 = *str;
-+ if (_nc_strict_bsd) {
-+ if (isdigit(UChar(xx1))) {
-+ int pad = 0;
-+
-+ if (!isdigit(UChar(str[1])))
-+ pad = 2;
-+ else if (str[1] && !isdigit(UChar(str[2])))
-+ pad = 1;
-+
-+ /*
-+ * Test for "\0", "\00" or "\000" and transform those
-+ * into "\200".
-+ */
-+ if (xx1 == '0'
-+ && ((pad == 2) || (str[1] == '0'))
-+ && ((pad >= 1) || (str[2] == '0'))) {
-+ xx2 = '2';
-+ } else {
-+ xx2 = '0';
-+ pad = 0; /* FIXME - optionally pad to 3 digits */
-+ }
-+ while (pad-- > 0) {
-+ bufptr = save_char(bufptr, xx2);
-+ xx2 = '0';
-+ }
-+ } else if (strchr("E\\nrtbf", xx1) == 0) {
-+ switch (xx1) {
-+ case 'e':
-+ xx1 = 'E';
-+ break;
-+ case 'l':
-+ xx1 = 'n';
-+ break;
-+ case 's':
-+ bufptr = save_char(bufptr, '0');
-+ bufptr = save_char(bufptr, '4');
-+ xx1 = '0';
-+ break;
-+ case ':':
-+ /*
-+ * Note: termcap documentation claims that ":"
-+ * must be escaped as "\072", however the
-+ * documentation is incorrect - read the code.
-+ * The replacement does not work reliably,
-+ * so the advice is not helpful.
-+ */
-+ bufptr = save_char(bufptr, '0');
-+ bufptr = save_char(bufptr, '7');
-+ xx1 = '2';
-+ break;
-+ default:
-+ /* should not happen, but handle this anyway */
-+ _nc_SPRINTF(octal, _nc_SLIMIT(sizeof(octal))
-+ "%03o", UChar(xx1));
-+ bufptr = save_char(bufptr, octal[0]);
-+ bufptr = save_char(bufptr, octal[1]);
-+ xx1 = octal[2];
-+ break;
-+ }
-+ }
-+ }
-+ bufptr = save_char(bufptr, xx1);
- }
- } else if (str[0] == '$' && str[1] == '<') { /* discard padding */
- str += 2;
-@@ -703,7 +707,8 @@
- && ((in0 == 4 && in1 == 10 && in2 == 48)
- || (in0 == 3 && in1 == 9 && in2 == 38))) {
- /* dumb-down an optimized case from xterm-256color for termcap */
-- str = strstr(str, ";m");
-+ if ((str = strstr(str, ";m")) == 0)
-+ break; /* cannot happen */
- ++str;
- if (in2 == 48) {
- bufptr = save_string(bufptr, "[48;5;%dm");
-@@ -720,13 +725,13 @@
- bufptr = save_tc_inequality(bufptr, c1, c2);
- } else if (sscanf(str, "%%?%%{%d}%%>%%t%%'%c'%%+%%;", &c1, &ch2) == 2) {
- str = strchr(str, ';');
-- bufptr = save_tc_inequality(bufptr, c1, c2);
-+ bufptr = save_tc_inequality(bufptr, c1, ch2);
- } else if (sscanf(str, "%%?%%'%c'%%>%%t%%{%d}%%+%%;", &ch1, &c2) == 2) {
- str = strchr(str, ';');
-- bufptr = save_tc_inequality(bufptr, c1, c2);
-+ bufptr = save_tc_inequality(bufptr, ch1, c2);
- } else if (sscanf(str, "%%?%%'%c'%%>%%t%%'%c'%%+%%;", &ch1, &ch2) == 2) {
- str = strchr(str, ';');
-- bufptr = save_tc_inequality(bufptr, c1, c2);
-+ bufptr = save_tc_inequality(bufptr, ch1, ch2);
- } else if ((len = bcd_expression(str)) != 0) {
- str += len;
- bufptr = save_string(bufptr, "%B");
-@@ -741,15 +746,15 @@
- bufptr = save_tc_char(bufptr, c1);
- }
- /* FIXME: this "works" for 'delta' */
-- else if (strncmp(str, "%{2}%*%-", 8) == 0) {
-+ else if (strncmp(str, "%{2}%*%-", (size_t) 8) == 0) {
- str += 7;
- bufptr = save_string(bufptr, "%D");
-- } else if (strncmp(str, "%{96}%^", 7) == 0) {
-+ } else if (strncmp(str, "%{96}%^", (size_t) 7) == 0) {
- str += 6;
- if (saw_m++ == 0) {
- bufptr = save_string(bufptr, "%n");
- }
-- } else if (strncmp(str, "%{127}%^", 8) == 0) {
-+ } else if (strncmp(str, "%{127}%^", (size_t) 8) == 0) {
- str += 7;
- if (saw_n++ == 0) {
- bufptr = save_string(bufptr, "%m");
-@@ -772,8 +777,25 @@
- case '8':
- case '9':
- bufptr = save_char(bufptr, '%');
-- while (isdigit(UChar(*str)))
-- bufptr = save_char(bufptr, *str++);
-+ ch1 = 0;
-+ ch2 = 0;
-+ while (isdigit(UChar(*str))) {
-+ ch2 = ch1;
-+ ch1 = *str++;
-+ if (_nc_strict_bsd) {
-+ if (ch1 > '3')
-+ return 0;
-+ } else {
-+ bufptr = save_char(bufptr, ch1);
-+ }
-+ }
-+ if (_nc_strict_bsd) {
-+ if (ch2 != 0 && ch2 != '0')
-+ return 0;
-+ if (ch1 < '2')
-+ ch1 = 'd';
-+ bufptr = save_char(bufptr, ch1);
-+ }
- if (strchr("doxX.", *str)) {
- if (*str != 'd') /* termcap doesn't have octal, hex */
- return 0;
-@@ -794,6 +816,8 @@
- * termcap notation.
- */
- case 's':
-+ if (_nc_strict_bsd)
-+ return 0;
- bufptr = save_string(bufptr, "%s");
- break;
-
-@@ -826,7 +850,7 @@
- * but that may not be the end of the string.
- */
- assert(str != 0);
-- if (*str == '\0')
-+ if (str == 0 || *str == '\0')
- break;
-
- } /* endwhile (*str) */
-Index: ncurses/tinfo/comp_error.c
-Prereq: 1.31
---- ncurses-5.9/ncurses/tinfo/comp_error.c 2007-04-21 23:38:32.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/comp_error.c 2012-02-22 22:34:31.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2005,2007 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -41,7 +41,7 @@
-
- #include <tic.h>
-
--MODULE_ID("$Id: comp_error.c,v 1.31 2007/04/21 23:38:32 tom Exp $")
-+MODULE_ID("$Id: comp_error.c,v 1.36 2012/02/22 22:34:31 tom Exp $")
-
- NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings = FALSE;
- NCURSES_EXPORT_VAR(int) _nc_curr_line = 0; /* current line # in input */
-@@ -59,7 +59,8 @@
- NCURSES_EXPORT(void)
- _nc_set_source(const char *const name)
- {
-- SourceName = name;
-+ FreeIfNeeded(SourceName);
-+ SourceName = strdup(name);
- }
-
- NCURSES_EXPORT(void)
-@@ -70,7 +71,7 @@
- if (TermType != 0) {
- TermType[0] = '\0';
- if (name)
-- strncat(TermType, name, MAX_NAME_SIZE);
-+ strncat(TermType, name, (size_t) MAX_NAME_SIZE);
- }
- }
-
-@@ -84,7 +85,7 @@
- }
- #endif
- if (name != 0)
-- strcpy(name, TermType != 0 ? TermType : "");
-+ _nc_STRCPY(name, TermType != 0 ? TermType : "", MAX_NAME_SIZE);
- }
-
- static NCURSES_INLINE void
-@@ -151,3 +152,12 @@
- exit(EXIT_FAILURE);
- #endif
- }
-+
-+#if NO_LEAKS
-+NCURSES_EXPORT(void)
-+_nc_comp_error_leaks(void)
-+{
-+ FreeAndNull(SourceName);
-+ FreeAndNull(TermType);
-+}
-+#endif
-Index: ncurses/tinfo/comp_expand.c
-Prereq: 1.21
---- ncurses-5.9/ncurses/tinfo/comp_expand.c 2010-01-16 17:11:23.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/comp_expand.c 2012-03-24 18:37:17.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -35,7 +35,7 @@
- #include <ctype.h>
- #include <tic.h>
-
--MODULE_ID("$Id: comp_expand.c,v 1.21 2010/01/16 17:11:23 tom Exp $")
-+MODULE_ID("$Id: comp_expand.c,v 1.25 2012/03/24 18:37:17 tom Exp $")
-
- static int
- trailing_spaces(const char *src)
-@@ -49,6 +49,8 @@
- #define REALCTL(s) (UChar(*(s)) < 127 && iscntrl(UChar(*(s))))
- #define REALPRINT(s) (UChar(*(s)) < 127 && isprint(UChar(*(s))))
-
-+#define P_LIMIT(p) (length - (size_t)(p))
-+
- NCURSES_EXPORT(char *)
- _nc_tic_expand(const char *srcp, bool tic_format, int numbers)
- {
-@@ -61,15 +63,15 @@
- size_t need = (2 + strlen(str)) * 4;
- int ch;
-
--#if NO_LEAKS
- if (srcp == 0) {
-+#if NO_LEAKS
- if (buffer != 0) {
- FreeAndNull(buffer);
- length = 0;
- }
-+#endif
- return 0;
- }
--#endif
- if (buffer == 0 || need > length) {
- if ((buffer = typeRealloc(char, length = need, buffer)) == 0)
- return 0;
-@@ -90,7 +92,8 @@
- && str[1] != '\\'
- && REALPRINT(str + 1)
- && str[2] == S_QUOTE) {
-- sprintf(buffer + bufp, "{%d}", str[1]);
-+ _nc_SPRINTF(buffer + bufp, _nc_SLIMIT(P_LIMIT(bufp))
-+ "{%d}", str[1]);
- bufp += (int) strlen(buffer + bufp);
- str += 2;
- } else {
-@@ -177,10 +180,12 @@
- #define UnCtl(c) ((c) + '@')
- else if (REALCTL(str) && ch != '\\'
- && (!islong || isdigit(UChar(str[1])))) {
-- (void) sprintf(&buffer[bufp], "^%c", UnCtl(ch));
-+ _nc_SPRINTF(&buffer[bufp], _nc_SLIMIT(P_LIMIT(bufp))
-+ "^%c", UnCtl(ch));
- bufp += 2;
- } else {
-- (void) sprintf(&buffer[bufp], "\\%03o", ch);
-+ _nc_SPRINTF(&buffer[bufp], _nc_SLIMIT(P_LIMIT(bufp))
-+ "\\%03o", ch);
- bufp += 4;
- }
-
-Index: ncurses/tinfo/comp_parse.c
-Prereq: 1.73
---- ncurses-5.9/ncurses/tinfo/comp_parse.c 2010-12-25 23:06:37.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/comp_parse.c 2013-08-31 15:22:31.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -35,15 +35,10 @@
- /*
- * comp_parse.c -- parser driver loop and use handling.
- *
-- * _nc_read_entry_source(FILE *, literal, bool, bool (*hook)())
-- * _nc_resolve_uses2(void)
-- * _nc_free_entries(void)
-- *
- * Use this code by calling _nc_read_entry_source() on as many source
- * files as you like (either terminfo or termcap syntax). If you
- * want use-resolution, call _nc_resolve_uses2(). To free the list
- * storage, do _nc_free_entries().
-- *
- */
-
- #include <curses.priv.h>
-@@ -52,7 +47,7 @@
-
- #include <tic.h>
-
--MODULE_ID("$Id: comp_parse.c,v 1.73 2010/12/25 23:06:37 tom Exp $")
-+MODULE_ID("$Id: comp_parse.c,v 1.90 2013/08/31 15:22:31 tom Exp $")
-
- static void sanity_check2(TERMTYPE *, bool);
- NCURSES_IMPEXP void NCURSES_API(*_nc_check_termtype2) (TERMTYPE *, bool) = sanity_check2;
-@@ -61,6 +56,8 @@
- static void sanity_check(TERMTYPE *);
- NCURSES_IMPEXP void NCURSES_API(*_nc_check_termtype) (TERMTYPE *) = sanity_check;
-
-+static void fixup_acsc(TERMTYPE *, int);
-+
- static void
- enqueue(ENTRY * ep)
- /* add an entry to the in-core list */
-@@ -86,16 +83,28 @@
- if (len > MAX_NAME_SIZE)
- len = MAX_NAME_SIZE;
- (void) strncpy(dst, src, len);
-- (void) strcpy(dst + len, "|");
-+ _nc_STRCPY(dst + len, "|", MAX_NAME_SIZE);
- src = dst;
- }
- return src;
- }
- #define ForceBar(dst, src) ((strchr(src, '|') == 0) ? force_bar(dst, src) : src)
-
--NCURSES_EXPORT(bool)
--_nc_entry_match(char *n1, char *n2)
--/* do any of the aliases in a pair of terminal names match? */
-+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES
-+static char *
-+skip_index(char *name)
-+{
-+ char *bar = strchr(name, '|');
-+
-+ if (bar != 0 && (bar - name) == 2)
-+ name = bar + 1;
-+
-+ return name;
-+}
-+#endif
-+
-+static bool
-+check_collisions(char *n1, char *n2, int counter)
- {
- char *pstart, *qstart, *pend, *qend;
- char nc1[MAX_NAME_SIZE + 2];
-@@ -104,15 +113,95 @@
- n1 = ForceBar(nc1, n1);
- n2 = ForceBar(nc2, n2);
-
-- for (pstart = n1; (pend = strchr(pstart, '|')); pstart = pend + 1)
-- for (qstart = n2; (qend = strchr(qstart, '|')); qstart = qend + 1)
-+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES
-+ if ((_nc_syntax == SYN_TERMCAP) && _nc_user_definable) {
-+ n1 = skip_index(n1);
-+ n2 = skip_index(n2);
-+ }
-+#endif
-+
-+ for (pstart = n1; (pend = strchr(pstart, '|')); pstart = pend + 1) {
-+ for (qstart = n2; (qend = strchr(qstart, '|')); qstart = qend + 1) {
- if ((pend - pstart == qend - qstart)
-- && memcmp(pstart, qstart, (size_t) (pend - pstart)) == 0)
-+ && memcmp(pstart, qstart, (size_t) (pend - pstart)) == 0) {
-+ if (counter > 0)
-+ (void) fprintf(stderr, "Name collision '%.*s' between\n",
-+ (int) (pend - pstart), pstart);
- return (TRUE);
-+ }
-+ }
-+ }
-
- return (FALSE);
- }
-
-+static char *
-+next_name(char *name)
-+{
-+ if (*name != '\0')
-+ ++name;
-+ return name;
-+}
-+
-+static char *
-+name_ending(char *name)
-+{
-+ if (*name == '\0') {
-+ name = 0;
-+ } else {
-+ while (*name != '\0' && *name != '|')
-+ ++name;
-+ }
-+ return name;
-+}
-+
-+/*
-+ * Essentially, find the conflict reported in check_collisions() and remove
-+ * it from the second name, unless that happens to be the last alias.
-+ */
-+static bool
-+remove_collision(char *n1, char *n2)
-+{
-+ char *p2 = n2;
-+ char *pstart, *qstart, *pend, *qend;
-+ bool removed = FALSE;
-+
-+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES
-+ if ((_nc_syntax == SYN_TERMCAP) && _nc_user_definable) {
-+ n1 = skip_index(n1);
-+ p2 = n2 = skip_index(n2);
-+ }
-+#endif
-+
-+ for (pstart = n1; (pend = name_ending(pstart)); pstart = next_name(pend)) {
-+ for (qstart = n2; (qend = name_ending(qstart)); qstart = next_name(qend)) {
-+ if ((pend - pstart == qend - qstart)
-+ && memcmp(pstart, qstart, (size_t) (pend - pstart)) == 0) {
-+ if (qstart != p2 || *qend == '|') {
-+ if (*qend == '|')
-+ ++qend;
-+ while ((*qstart++ = *qend++) != '\0') ;
-+ fprintf(stderr, "...now\t%s\n", p2);
-+ } else {
-+ fprintf(stderr, "Cannot remove alias '%.*s'\n",
-+ (int) (qend - qstart), qstart);
-+ }
-+ removed = TRUE;
-+ break;
-+ }
-+ }
-+ }
-+
-+ return removed;
-+}
-+
-+/* do any of the aliases in a pair of terminal names match? */
-+NCURSES_EXPORT(bool)
-+_nc_entry_match(char *n1, char *n2)
-+{
-+ return check_collisions(n1, n2, 0);
-+}
-+
- /****************************************************************************
- *
- * Entry compiler and resolution logic
-@@ -198,19 +287,19 @@
-
- for_entry_list(rp) {
- if (qp > rp
-- && _nc_entry_match(qp->tterm.term_names, rp->tterm.term_names)) {
-- matchcount++;
-- if (matchcount == 1) {
-- (void) fprintf(stderr, "Name collision between %s",
-- _nc_first_name(qp->tterm.term_names));
-- multiples++;
-+ && check_collisions(qp->tterm.term_names,
-+ rp->tterm.term_names,
-+ matchcount + 1)) {
-+ if (!matchcount++) {
-+ (void) fprintf(stderr, "\t%s\n", rp->tterm.term_names);
-+ }
-+ (void) fprintf(stderr, "and\t%s\n", qp->tterm.term_names);
-+ if (!remove_collision(rp->tterm.term_names,
-+ qp->tterm.term_names)) {
-+ ++multiples;
- }
-- if (matchcount >= 1)
-- (void) fprintf(stderr, " %s", _nc_first_name(rp->tterm.term_names));
- }
- }
-- if (matchcount >= 1)
-- (void) putc('\n', stderr);
- }
- if (multiples > 0)
- return (FALSE);
-@@ -256,9 +345,7 @@
- DEBUG(2, ("%s: resolving use=%s (compiled)",
- child, lookfor));
-
-- rp = typeMalloc(ENTRY, 1);
-- if (rp == 0)
-- _nc_err_abort(MSG_NO_MEMORY);
-+ TYPE_MALLOC(ENTRY, 1, rp);
- rp->tterm = thisterm;
- rp->nuses = 0;
- rp->next = lastread;
-@@ -378,7 +465,34 @@
- for_entry_list(qp) {
- _nc_curr_line = (int) qp->startline;
- _nc_set_type(_nc_first_name(qp->tterm.term_names));
-- _nc_check_termtype2(&qp->tterm, literal);
-+ /*
-+ * tic overrides this function pointer to provide more verbose
-+ * checking.
-+ */
-+ if (_nc_check_termtype2 != sanity_check2) {
-+ SCREEN *save_SP = SP;
-+ SCREEN fake_sp;
-+ TERMINAL fake_tm;
-+ TERMINAL *save_tm = cur_term;
-+
-+ /*
-+ * Setup so that tic can use ordinary terminfo interface
-+ * to obtain capability information.
-+ */
-+ memset(&fake_sp, 0, sizeof(fake_sp));
-+ memset(&fake_tm, 0, sizeof(fake_tm));
-+ fake_sp._term = &fake_tm;
-+ fake_tm.type = qp->tterm;
-+ _nc_set_screen(&fake_sp);
-+ set_curterm(&fake_tm);
-+
-+ _nc_check_termtype2(&qp->tterm, literal);
-+
-+ _nc_set_screen(save_SP);
-+ set_curterm(save_tm);
-+ } else {
-+ fixup_acsc(&qp->tterm, literal);
-+ }
- }
- DEBUG(2, ("SANITY CHECK FINISHED"));
- }
-@@ -403,6 +517,17 @@
- #define CUR tp->
-
- static void
-+fixup_acsc(TERMTYPE *tp, int literal)
-+{
-+ if (!literal) {
-+ if (acs_chars == 0
-+ && enter_alt_charset_mode != 0
-+ && exit_alt_charset_mode != 0)
-+ acs_chars = strdup(VT_ACSC);
-+ }
-+}
-+
-+static void
- sanity_check2(TERMTYPE *tp, bool literal)
- {
- if (!PRESENT(exit_attribute_mode)) {
-@@ -422,16 +547,14 @@
- #endif /* __UNUSED__ */
- PAIRED(enter_standout_mode, exit_standout_mode);
- PAIRED(enter_underline_mode, exit_underline_mode);
-+ PAIRED(enter_italics_mode, exit_italics_mode);
- }
-
- /* we do this check/fix in postprocess_termcap(), but some packagers
- * prefer to bypass it...
- */
- if (!literal) {
-- if (acs_chars == 0
-- && enter_alt_charset_mode != 0
-- && exit_alt_charset_mode != 0)
-- acs_chars = strdup(VT_ACSC);
-+ fixup_acsc(tp, literal);
- ANDMISSING(enter_alt_charset_mode, acs_chars);
- ANDMISSING(exit_alt_charset_mode, acs_chars);
- }
-Index: ncurses/tinfo/comp_scan.c
-Prereq: 1.89
---- ncurses-5.9/ncurses/tinfo/comp_scan.c 2010-12-25 23:06:37.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/comp_scan.c 2013-11-16 19:57:50.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -50,7 +50,7 @@
- #include <ctype.h>
- #include <tic.h>
-
--MODULE_ID("$Id: comp_scan.c,v 1.89 2010/12/25 23:06:37 tom Exp $")
-+MODULE_ID("$Id: comp_scan.c,v 1.102 2013/11/16 19:57:50 tom Exp $")
-
- /*
- * Maximum length of string capability we'll accept before raising an error.
-@@ -61,6 +61,7 @@
- #define iswhite(ch) (ch == ' ' || ch == '\t')
-
- NCURSES_EXPORT_VAR (int) _nc_syntax = 0; /* termcap or terminfo? */
-+NCURSES_EXPORT_VAR (int) _nc_strict_bsd = 1; /* ncurses extended termcap? */
- NCURSES_EXPORT_VAR (long) _nc_curr_file_pos = 0; /* file offset of current line */
- NCURSES_EXPORT_VAR (long) _nc_comment_start = 0; /* start of comment range before name */
- NCURSES_EXPORT_VAR (long) _nc_comment_end = 0; /* end of comment range before name */
-@@ -127,14 +128,19 @@
- * Returns the final nonblank character on the current input buffer
- */
- static int
--last_char(void)
-+last_char(int from_end)
- {
- size_t len = strlen(bufptr);
-+ int result = 0;
-+
- while (len--) {
-- if (!isspace(UChar(bufptr[len])))
-- return bufptr[len];
-+ if (!isspace(UChar(bufptr[len]))) {
-+ if (from_end < (int) len)
-+ result = bufptr[(int) len - from_end];
-+ break;
-+ }
- }
-- return 0;
-+ return result;
- }
-
- /*
-@@ -195,7 +201,8 @@
- result = typeRealloc(char, allocated, result);
- if (result == 0)
- return (EOF);
-- bufstart = result;
-+ if (bufstart)
-+ bufstart = result;
- }
- if (used == 0)
- _nc_curr_file_pos = ftell(yyin);
-@@ -212,7 +219,7 @@
- }
- } else {
- if (used != 0)
-- strcat(result, "\n");
-+ _nc_STRCAT(result, "\n", allocated);
- }
- if ((bufptr = bufstart) != 0) {
- used = strlen(bufptr);
-@@ -256,12 +263,12 @@
- }
-
- static void
--push_back(char c)
-+push_back(int c)
- /* push a character back onto the input stream */
- {
- if (bufptr == bufstart)
- _nc_syserr_abort("Can't backspace off beginning of line");
-- *--bufptr = c;
-+ *--bufptr = (char) c;
- _nc_curr_col--;
- }
-
-@@ -299,6 +306,8 @@
- *tok_ptr++ = (char) ch; \
- *tok_ptr = '\0'
-
-+static char *tok_buf;
-+
- /*
- * int
- * get_token()
-@@ -336,15 +345,14 @@
- _nc_get_token(bool silent)
- {
- static const char terminfo_punct[] = "@%&*!#";
-- static char *tok_buf;
-
-- char *after_list;
-- char *after_name;
-+ char *after_name; /* after primary name */
-+ char *after_list; /* after primary and alias list */
- char *numchk;
- char *tok_ptr;
- char *s;
- char numbuf[80];
-- int ch;
-+ int ch, c0, c1;
- int dot_flag = FALSE;
- int type;
- long number;
-@@ -372,11 +380,10 @@
-
- if (end_of_stream()) {
- yyin = 0;
-- next_char(); /* frees its allocated memory */
-+ (void) next_char(); /* frees its allocated memory */
- if (tok_buf != 0) {
- if (_nc_curr_token.tk_name == tok_buf)
- _nc_curr_token.tk_name = 0;
-- FreeAndNull(tok_buf);
- }
- return (EOF);
- }
-@@ -390,6 +397,7 @@
- }
-
- ch = eat_escaped_newline(ch);
-+ _nc_curr_token.tk_valstring = 0;
-
- #ifdef TRACE
- old_line = _nc_curr_line;
-@@ -424,7 +432,7 @@
- #if NCURSES_EXT_FUNCS
- && !(ch == '.' && _nc_disable_period)
- #endif
-- && !strchr(terminfo_punct, (char) ch)) {
-+ && ((strchr) (terminfo_punct, (char) ch) == 0)) {
- if (!silent)
- _nc_warning("Illegal character (expected alphanumeric or %s) - '%s'",
- terminfo_punct, unctrl(UChar(ch)));
-@@ -457,7 +465,7 @@
- after_list = tok_ptr;
- if (after_name == 0)
- after_name = tok_ptr;
-- } else if (ch == ':' && last_char() != ',') {
-+ } else if (ch == ':' && last_char(0) != ',') {
- _nc_syntax = SYN_TERMCAP;
- separator = ':';
- break;
-@@ -471,12 +479,64 @@
- if (after_name == 0)
- break;
- /*
-- * If we see a comma, we assume this is terminfo unless we
-- * subsequently run into a colon. But we don't stop
-- * looking for a colon until hitting a newline. This
-- * allows commas to be embedded in description fields of
-- * either syntax.
-+ * We saw a comma, but are not entirely sure this is
-+ * terminfo format, since we can still be parsing the
-+ * description field (for either syntax).
-+ *
-+ * A properly formatted termcap line ends with either a
-+ * colon, or a backslash after a colon. It is possible
-+ * to have a backslash in the middle of a capability, but
-+ * then there would be no leading whitespace on the next
-+ * line - something we want to discourage.
- */
-+ c0 = last_char(0);
-+ c1 = last_char(1);
-+ if (c1 != ':' && c0 != '\\' && c0 != ':') {
-+ bool capability = FALSE;
-+
-+ /*
-+ * Since it is not termcap, assume the line is terminfo
-+ * format. However, the comma can be embedded in a
-+ * description field. It also can be a separator
-+ * between a description field and a capability.
-+ *
-+ * Improve the guess by checking if the next word after
-+ * the comma does not look like a capability. In that
-+ * case, extend the description past the comma.
-+ */
-+ for (s = bufptr; isspace(UChar(*s)); ++s) {
-+ ;
-+ }
-+ if (islower(UChar(*s))) {
-+ char *name = s;
-+ while (isalnum(UChar(*s))) {
-+ ++s;
-+ }
-+ if (*s == '#' || *s == '=' || *s == '@') {
-+ /*
-+ * Checking solely with syntax allows us to
-+ * support extended capabilities with string
-+ * values.
-+ */
-+ capability = TRUE;
-+ } else if (*s == ',') {
-+ c0 = *s;
-+ *s = '\0';
-+ /*
-+ * Otherwise, we can handle predefined boolean
-+ * capabilities, still aided by syntax.
-+ */
-+ if (_nc_find_entry(name,
-+ _nc_get_hash_table(FALSE))) {
-+ capability = TRUE;
-+ }
-+ *s = (char) c0;
-+ }
-+ }
-+ if (capability) {
-+ break;
-+ }
-+ }
- } else
- ch = eat_escaped_newline(ch);
-
-@@ -748,7 +808,7 @@
- if (!(is7bits(c) && isprint(c))) {
- _nc_warning("Illegal ^ character - '%s'", unctrl(UChar(c)));
- }
-- if (c == '?') {
-+ if (c == '?' && (_nc_syntax != SYN_TERMCAP)) {
- *(ptr++) = '\177';
- if (_nc_tracing)
- _nc_warning("Allow ^? as synonym for \\177");
-@@ -758,23 +818,29 @@
- *(ptr++) = (char) (c);
- }
- } else if (c == '\\') {
-+ bool strict_bsd = ((_nc_syntax == SYN_TERMCAP) && _nc_strict_bsd);
-+
- c = next_char();
- if (c == EOF)
- _nc_err_abort(MSG_NO_INPUTS);
-
-- if (c >= '0' && c <= '7') {
-+#define isoctal(c) ((c) >= '0' && (c) <= '7')
-+
-+ if (isoctal(c) || (strict_bsd && isdigit(c))) {
- number = c - '0';
- for (i = 0; i < 2; i++) {
- c = next_char();
- if (c == EOF)
- _nc_err_abort(MSG_NO_INPUTS);
-
-- if (c < '0' || c > '7') {
-+ if (!isoctal(c)) {
- if (isdigit(c)) {
-- _nc_warning("Non-octal digit `%c' in \\ sequence", c);
-- /* allow the digit; it'll do less harm */
-+ if (!strict_bsd) {
-+ _nc_warning("Non-octal digit `%c' in \\ sequence", c);
-+ /* allow the digit; it'll do less harm */
-+ }
- } else {
-- push_back((char) c);
-+ push_back(c);
- break;
- }
- }
-@@ -782,21 +848,16 @@
- number = number * 8 + c - '0';
- }
-
-- if (number == 0)
-+ number = UChar(number);
-+ if (number == 0 && !strict_bsd)
- number = 0200;
- *(ptr++) = (char) number;
- } else {
- switch (c) {
- case 'E':
-- case 'e':
- *(ptr++) = '\033';
- break;
-
-- case 'a':
-- *(ptr++) = '\007';
-- break;
--
-- case 'l':
- case 'n':
- *(ptr++) = '\n';
- break;
-@@ -809,10 +870,6 @@
- *(ptr++) = '\010';
- break;
-
-- case 's':
-- *(ptr++) = ' ';
-- break;
--
- case 'f':
- *(ptr++) = '\014';
- break;
-@@ -833,16 +890,33 @@
- *(ptr++) = ',';
- break;
-
-- case ':':
-- *(ptr++) = ':';
-- break;
--
- case '\n':
- continue;
-
- default:
-- _nc_warning("Illegal character '%s' in \\ sequence",
-- unctrl(UChar(c)));
-+ if ((_nc_syntax == SYN_TERMINFO) || !_nc_strict_bsd) {
-+ switch (c) {
-+ case 'a':
-+ c = '\007';
-+ break;
-+ case 'e':
-+ c = '\033';
-+ break;
-+ case 'l':
-+ c = '\n';
-+ break;
-+ case 's':
-+ c = ' ';
-+ break;
-+ case ':':
-+ c = ':';
-+ break;
-+ default:
-+ _nc_warning("Illegal character '%s' in \\ sequence",
-+ unctrl(UChar(c)));
-+ break;
-+ }
-+ }
- /* FALLTHRU */
- case '|':
- *(ptr++) = (char) c;
-@@ -862,7 +936,7 @@
-
- if (!ignored) {
- if (_nc_curr_col <= 1) {
-- push_back((char) c);
-+ push_back(c);
- c = '\n';
- break;
- }
-@@ -934,5 +1008,8 @@
- if (pushname != 0) {
- FreeAndNull(pushname);
- }
-+ if (tok_buf != 0) {
-+ FreeAndNull(tok_buf);
-+ }
- }
- #endif
-Index: ncurses/tinfo/db_iterator.c
-Prereq: 1.9
---- ncurses-5.9/ncurses/tinfo/db_iterator.c 2010-12-25 23:00:25.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/db_iterator.c 2014-11-01 14:47:00.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2006-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2006-2013,2014 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 *
-@@ -36,13 +36,142 @@
-
- #include <curses.priv.h>
-
-+#include <time.h>
- #include <tic.h>
-
--MODULE_ID("$Id: db_iterator.c,v 1.9 2010/12/25 23:00:25 tom Exp $")
-+#if USE_HASHED_DB
-+#include <hashed_db.h>
-+#endif
-+
-+MODULE_ID("$Id: db_iterator.c,v 1.39 2014/11/01 14:47:00 tom Exp $")
-
- #define HaveTicDirectory _nc_globals.have_tic_directory
- #define KeepTicDirectory _nc_globals.keep_tic_directory
- #define TicDirectory _nc_globals.tic_directory
-+#define my_blob _nc_globals.dbd_blob
-+#define my_list _nc_globals.dbd_list
-+#define my_size _nc_globals.dbd_size
-+#define my_time _nc_globals.dbd_time
-+#define my_vars _nc_globals.dbd_vars
-+
-+static void
-+add_to_blob(const char *text, size_t limit)
-+{
-+ (void) limit;
-+
-+ if (*text != '\0') {
-+ char *last = my_blob + strlen(my_blob);
-+ if (last != my_blob)
-+ *last++ = NCURSES_PATHSEP;
-+ _nc_STRCPY(last, text, limit);
-+ }
-+}
-+
-+static bool
-+check_existence(const char *name, struct stat *sb)
-+{
-+ bool result = FALSE;
-+
-+ if (stat(name, sb) == 0
-+ && (S_ISDIR(sb->st_mode) || S_ISREG(sb->st_mode))) {
-+ result = TRUE;
-+ }
-+#if USE_HASHED_DB
-+ else if (strlen(name) < PATH_MAX - sizeof(DBM_SUFFIX)) {
-+ char temp[PATH_MAX];
-+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "%s%s", name, DBM_SUFFIX);
-+ if (stat(temp, sb) == 0 && S_ISREG(sb->st_mode)) {
-+ result = TRUE;
-+ }
-+ }
-+#endif
-+ return result;
-+}
-+
-+/*
-+ * Store the latest value of an environment variable in my_vars[] so we can
-+ * detect if one changes, invalidating the cached search-list.
-+ */
-+static bool
-+update_getenv(const char *name, DBDIRS which)
-+{
-+ bool result = FALSE;
-+
-+ if (which < dbdLAST) {
-+ char *value;
-+
-+ if ((value = getenv(name)) == 0 || (value = strdup(value)) == 0) {
-+ ;
-+ } else if (my_vars[which].name == 0 || strcmp(my_vars[which].name, name)) {
-+ FreeIfNeeded(my_vars[which].value);
-+ my_vars[which].name = name;
-+ my_vars[which].value = value;
-+ result = TRUE;
-+ } else if ((my_vars[which].value != 0) ^ (value != 0)) {
-+ FreeIfNeeded(my_vars[which].value);
-+ my_vars[which].value = value;
-+ result = TRUE;
-+ } else if (value != 0 && strcmp(value, my_vars[which].value)) {
-+ FreeIfNeeded(my_vars[which].value);
-+ my_vars[which].value = value;
-+ result = TRUE;
-+ } else {
-+ free(value);
-+ }
-+ }
-+ return result;
-+}
-+
-+static char *
-+cache_getenv(const char *name, DBDIRS which)
-+{
-+ char *result = 0;
-+
-+ (void) update_getenv(name, which);
-+ if (which < dbdLAST) {
-+ result = my_vars[which].value;
-+ }
-+ return result;
-+}
-+
-+/*
-+ * The cache expires if at least a second has passed since the initial lookup,
-+ * or if one of the environment variables changed.
-+ *
-+ * Only a few applications use multiple lookups of terminal entries, seems that
-+ * aside from bulk I/O such as tic and toe, that leaves interactive programs
-+ * which should not be modifying the terminal databases in a way that would
-+ * invalidate the search-list.
-+ *
-+ * The "1-second" is to allow for user-directed changes outside the program.
-+ */
-+static bool
-+cache_expired(void)
-+{
-+ bool result = FALSE;
-+ time_t now = time((time_t *) 0);
-+
-+ if (now > my_time) {
-+ result = TRUE;
-+ } else {
-+ DBDIRS n;
-+ for (n = (DBDIRS) 0; n < dbdLAST; ++n) {
-+ if (my_vars[n].name != 0
-+ && update_getenv(my_vars[n].name, n)) {
-+ result = TRUE;
-+ break;
-+ }
-+ }
-+ }
-+ return result;
-+}
-+
-+static void
-+free_cache(void)
-+{
-+ FreeAndNull(my_blob);
-+ FreeAndNull(my_list);
-+}
-
- /*
- * Record the "official" location of the terminfo directory, according to
-@@ -51,17 +180,20 @@
- NCURSES_EXPORT(const char *)
- _nc_tic_dir(const char *path)
- {
-+ T(("_nc_tic_dir %s", NonNull(path)));
- if (!KeepTicDirectory) {
- if (path != 0) {
- TicDirectory = path;
- HaveTicDirectory = TRUE;
-- } else if (!HaveTicDirectory && use_terminfo_vars()) {
-- char *envp;
-- if ((envp = getenv("TERMINFO")) != 0)
-- return _nc_tic_dir(envp);
-+ } else if (HaveTicDirectory == 0) {
-+ if (use_terminfo_vars()) {
-+ const char *envp;
-+ if ((envp = getenv("TERMINFO")) != 0)
-+ return _nc_tic_dir(envp);
-+ }
- }
- }
-- return TicDirectory;
-+ return TicDirectory ? TicDirectory : TERMINFO;
- }
-
- /*
-@@ -77,61 +209,16 @@
- }
-
- /*
-- * Process the list of :-separated directories, looking for the terminal type.
-- * We don't use strtok because it does not show us empty tokens.
-- */
--#define ThisDbList _nc_globals.dbi_list
--#define ThisDbSize _nc_globals.dbi_size
--
--/*
- * Cleanup.
- */
- NCURSES_EXPORT(void)
- _nc_last_db(void)
- {
-- if (ThisDbList != 0) {
-- FreeAndNull(ThisDbList);
-+ if (my_blob != 0 && cache_expired()) {
-+ free_cache();
- }
-- ThisDbSize = 0;
- }
-
--/* The TERMINFO_DIRS value, if defined by the configure script, begins with a
-- * ":", which will be interpreted as TERMINFO.
-- */
--static const char *
--next_list_item(const char *source, int *offset)
--{
-- if (source != 0) {
-- FreeIfNeeded(ThisDbList);
-- ThisDbList = strdup(source);
-- ThisDbSize = (int) strlen(source);
-- }
--
-- if (ThisDbList != 0 && ThisDbSize && *offset < ThisDbSize) {
-- static char system_db[] = TERMINFO;
-- char *result = ThisDbList + *offset;
-- char *marker = strchr(result, NCURSES_PATHSEP);
--
-- /*
-- * Put a null on the marker if a separator was found. Set the offset
-- * to the next position after the marker so we can call this function
-- * again, using the data at the offset.
-- */
-- if (marker == 0) {
-- *offset += (int) strlen(result);
-- } else {
-- *marker++ = 0;
-- *offset = (int) (marker - ThisDbList);
-- }
-- if (*result == 0 && result != (ThisDbList + ThisDbSize))
-- result = system_db;
-- return result;
-- }
-- return 0;
--}
--
--#define NEXT_DBD(var, offset) next_list_item((*offset == 0) ? var : 0, offset)
--
- /*
- * This is a simple iterator which allows the caller to step through the
- * possible locations for a terminfo directory. ncurses uses this to find
-@@ -141,84 +228,186 @@
- _nc_next_db(DBDIRS * state, int *offset)
- {
- const char *result;
-- char *envp;
--
-- while (*state < dbdLAST) {
-- DBDIRS next = (DBDIRS) ((int) (*state) + 1);
-
-+ (void) offset;
-+ if ((int) *state < my_size
-+ && my_list != 0
-+ && my_list[*state] != 0) {
-+ result = my_list[*state];
-+ (*state)++;
-+ } else {
- result = 0;
-+ }
-+ if (result != 0) {
-+ T(("_nc_next_db %d %s", *state, result));
-+ }
-+ return result;
-+}
-
-- switch (*state) {
-- case dbdTIC:
-- if (HaveTicDirectory)
-- result = _nc_tic_dir(0);
-- break;
--#if USE_DATABASE
-- case dbdEnvOnce:
-- if (use_terminfo_vars()) {
-- if ((envp = getenv("TERMINFO")) != 0)
-- result = _nc_tic_dir(envp);
-+NCURSES_EXPORT(void)
-+_nc_first_db(DBDIRS * state, int *offset)
-+{
-+ bool cache_has_expired = FALSE;
-+ *state = dbdTIC;
-+ *offset = 0;
-+
-+ T(("_nc_first_db"));
-+
-+ /* build a blob containing all of the strings we will use for a lookup
-+ * table.
-+ */
-+ if (my_blob == 0 || (cache_has_expired = cache_expired())) {
-+ size_t blobsize = 0;
-+ const char *values[dbdLAST];
-+ struct stat *my_stat;
-+ int j, k;
-+
-+ if (cache_has_expired)
-+ free_cache();
-+
-+ for (j = 0; j < dbdLAST; ++j)
-+ values[j] = 0;
-+
-+ /*
-+ * This is the first item in the list, and is used only when tic is
-+ * writing to the database, as a performance improvement.
-+ */
-+ values[dbdTIC] = TicDirectory;
-+
-+#if NCURSES_USE_DATABASE
-+#ifdef TERMINFO_DIRS
-+ values[dbdCfgList] = TERMINFO_DIRS;
-+#endif
-+#ifdef TERMINFO
-+ values[dbdCfgOnce] = TERMINFO;
-+#endif
-+#endif
-+
-+#if NCURSES_USE_TERMCAP
-+ values[dbdCfgList2] = TERMPATH;
-+#endif
-+
-+ if (use_terminfo_vars()) {
-+#if NCURSES_USE_DATABASE
-+ values[dbdEnvOnce] = cache_getenv("TERMINFO", dbdEnvOnce);
-+ values[dbdHome] = _nc_home_terminfo();
-+ (void) cache_getenv("HOME", dbdHome);
-+ values[dbdEnvList] = cache_getenv("TERMINFO_DIRS", dbdEnvList);
-+
-+#endif
-+#if NCURSES_USE_TERMCAP
-+ values[dbdEnvOnce2] = cache_getenv("TERMCAP", dbdEnvOnce2);
-+ /* only use $TERMCAP if it is an absolute path */
-+ if (values[dbdEnvOnce2] != 0
-+ && *values[dbdEnvOnce2] != '/') {
-+ values[dbdEnvOnce2] = 0;
- }
-- break;
-- case dbdHome:
-- if (use_terminfo_vars()) {
-- result = _nc_home_terminfo();
-+ values[dbdEnvList2] = cache_getenv("TERMPATH", dbdEnvList2);
-+#endif /* NCURSES_USE_TERMCAP */
-+ }
-+
-+ for (j = 0; j < dbdLAST; ++j) {
-+ if (values[j] == 0)
-+ values[j] = "";
-+ blobsize += 2 + strlen(values[j]);
-+ }
-+
-+ my_blob = malloc(blobsize);
-+ if (my_blob != 0) {
-+ *my_blob = '\0';
-+ for (j = 0; j < dbdLAST; ++j) {
-+ add_to_blob(values[j], blobsize);
- }
-- break;
-- case dbdEnvList:
-- if (use_terminfo_vars()) {
-- if ((result = NEXT_DBD(getenv("TERMINFO_DIRS"), offset)) != 0)
-- next = *state;
-+
-+ /* Now, build an array which will be pointers to the distinct
-+ * strings in the blob.
-+ */
-+ blobsize = 2;
-+ for (j = 0; my_blob[j] != '\0'; ++j) {
-+ if (my_blob[j] == NCURSES_PATHSEP)
-+ ++blobsize;
- }
-- break;
-- case dbdCfgList:
--#ifdef TERMINFO_DIRS
-- if ((result = NEXT_DBD(TERMINFO_DIRS, offset)) != 0)
-- next = *state;
-+ my_list = typeCalloc(char *, blobsize);
-+ my_stat = typeCalloc(struct stat, blobsize);
-+ if (my_list != 0 && my_stat != 0) {
-+ k = 0;
-+ my_list[k++] = my_blob;
-+ for (j = 0; my_blob[j] != '\0'; ++j) {
-+ if (my_blob[j] == NCURSES_PATHSEP) {
-+ my_blob[j] = '\0';
-+ my_list[k++] = &my_blob[j + 1];
-+ }
-+ }
-+
-+ /*
-+ * Eliminate duplicates from the list.
-+ */
-+ for (j = 0; my_list[j] != 0; ++j) {
-+#ifdef TERMINFO
-+ if (*my_list[j] == '\0')
-+ my_list[j] = strdup(TERMINFO);
- #endif
-- break;
-- case dbdCfgOnce:
--#ifndef TERMINFO_DIRS
-- result = TERMINFO;
--#endif
-- break;
--#endif /* USE_DATABASE */
--#if USE_TERMCAP
-- case dbdEnvOnce2:
-- if (use_terminfo_vars()) {
-- if ((envp = getenv("TERMCAP")) != 0)
-- result = _nc_tic_dir(envp);
-- }
-- break;
-- case dbdEnvList2:
-- if (use_terminfo_vars()) {
-- if ((result = NEXT_DBD(getenv("TERMPATH"), offset)) != 0)
-- next = *state;
-+ for (k = 0; k < j; ++k) {
-+ if (!strcmp(my_list[j], my_list[k])) {
-+ k = j - 1;
-+ while ((my_list[j] = my_list[j + 1]) != 0) {
-+ ++j;
-+ }
-+ j = k;
-+ break;
-+ }
-+ }
-+ }
-+
-+ /*
-+ * Eliminate non-existent databases, and those that happen to
-+ * be symlinked to another location.
-+ */
-+ for (j = 0; my_list[j] != 0; ++j) {
-+ bool found = check_existence(my_list[j], &my_stat[j]);
-+#if HAVE_LINK
-+ if (found) {
-+ for (k = 0; k < j; ++k) {
-+ if (my_stat[j].st_dev == my_stat[k].st_dev
-+ && my_stat[j].st_ino == my_stat[k].st_ino) {
-+ found = FALSE;
-+ break;
-+ }
-+ }
-+ }
-+#endif
-+ if (!found) {
-+ k = j;
-+ while ((my_list[k] = my_list[k + 1]) != 0) {
-+ ++k;
-+ }
-+ --j;
-+ }
-+ }
-+ my_size = j;
-+ my_time = time((time_t *) 0);
-+ } else {
-+ FreeAndNull(my_blob);
- }
-- break;
-- case dbdCfgList2:
-- if ((result = NEXT_DBD(TERMPATH, offset)) != 0)
-- next = *state;
-- break;
--#endif /* USE_TERMCAP */
-- case dbdLAST:
-- break;
-- }
-- if (*state != next) {
-- *state = next;
-- *offset = 0;
-- _nc_last_db();
-- }
-- if (result != 0) {
-- return result;
-+ free(my_stat);
- }
- }
-- return 0;
- }
-
--NCURSES_EXPORT(void)
--_nc_first_db(DBDIRS * state, int *offset)
-+#if NO_LEAKS
-+void
-+_nc_db_iterator_leaks(void)
- {
-- *state = dbdTIC;
-- *offset = 0;
-+ DBDIRS which;
-+
-+ if (my_blob != 0)
-+ FreeAndNull(my_blob);
-+ if (my_list != 0)
-+ FreeAndNull(my_list);
-+ for (which = 0; (int) which < dbdLAST; ++which) {
-+ my_vars[which].name = 0;
-+ FreeIfNeeded(my_vars[which].value);
-+ my_vars[which].value = 0;
-+ }
- }
-+#endif
-Index: ncurses/tinfo/doalloc.c
-Prereq: 1.8
---- ncurses-5.9/ncurses/tinfo/doalloc.c 2002-08-31 21:48:11.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/doalloc.c 2012-11-03 19:27:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998,2000 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2000,2012 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 *
-@@ -39,7 +39,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: doalloc.c,v 1.8 2002/08/31 21:48:11 Philippe.Blain Exp $")
-+MODULE_ID("$Id: doalloc.c,v 1.11 2012/11/03 19:27:41 tom Exp $")
-
- NCURSES_EXPORT(void *)
- _nc_doalloc(void *oldp, size_t amount)
-@@ -56,20 +56,3 @@
- }
- return newp;
- }
--
--#if !HAVE_STRDUP
--NCURSES_EXPORT(char *)
--_nc_strdup(const char *src)
--{
-- char *dst;
-- if (src != 0) {
-- dst = typeMalloc(char, strlen(src) + 1);
-- if (dst != 0) {
-- (void) strcpy(dst, src);
-- }
-- } else {
-- dst = 0;
-- }
-- return dst;
--}
--#endif
-Index: ncurses/tinfo/entries.c
-Prereq: 1.17
---- ncurses-5.9/ncurses/tinfo/entries.c 2010-01-23 17:57:43.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/entries.c 2012-05-05 20:33:44.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2006-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2006-2011,2012 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 *
-@@ -37,7 +37,7 @@
-
- #include <tic.h>
-
--MODULE_ID("$Id: entries.c,v 1.17 2010/01/23 17:57:43 tom Exp $")
-+MODULE_ID("$Id: entries.c,v 1.21 2012/05/05 20:33:44 tom Exp $")
-
- /****************************************************************************
- *
-@@ -96,6 +96,9 @@
- if (last != 0) {
- last->next = ep->next;
- }
-+ if (ep->next != 0) {
-+ ep->next->last = last;
-+ }
- if (ep == _nc_head) {
- _nc_head = ep->next;
- }
-@@ -128,19 +131,21 @@
- _nc_free_entries(_nc_head);
- _nc_get_type(0);
- _nc_first_name(0);
-+ _nc_db_iterator_leaks();
- _nc_keyname_leaks();
- #if BROKEN_LINKER || USE_REENTRANT
- _nc_names_leaks();
- _nc_codes_leaks();
- FreeIfNeeded(_nc_prescreen.real_acs_map);
- #endif
-+ _nc_comp_error_leaks();
-
- if ((s = _nc_home_terminfo()) != 0)
- free(s);
-
- #ifdef TRACE
- trace(0);
-- _nc_trace_buf(-1, 0);
-+ _nc_trace_buf(-1, (size_t) 0);
- #endif
-
- #endif /* NO_LEAKS */
-Index: ncurses/tinfo/getenv_num.c
-Prereq: 1.3
---- ncurses-5.9/ncurses/tinfo/getenv_num.c 2000-12-10 02:55:07.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/getenv_num.c 2013-09-28 20:25:08.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998,2000 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -36,7 +36,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: getenv_num.c,v 1.3 2000/12/10 02:55:07 tom Exp $")
-+MODULE_ID("$Id: getenv_num.c,v 1.6 2013/09/28 20:25:08 tom Exp $")
-
- NCURSES_EXPORT(int)
- _nc_getenv_num(const char *name)
-@@ -54,3 +54,20 @@
-
- return (int) value;
- }
-+
-+NCURSES_EXPORT(void)
-+_nc_setenv_num(const char *name, int value)
-+{
-+ if (name != 0 && value >= 0) {
-+ char buffer[128];
-+#if HAVE_SETENV
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) "%d", value);
-+ setenv(name, buffer, 1);
-+#elif HAVE_PUTENV
-+ char *s;
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) "%s=%d", name, value);
-+ if ((s = strdup(buffer)) != 0)
-+ putenv(s);
-+#endif
-+ }
-+}
-Index: ncurses/tinfo/hashed_db.c
-Prereq: 1.14
---- ncurses-5.9/ncurses/tinfo/hashed_db.c 2008-12-13 20:59:02.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/hashed_db.c 2013-12-15 00:33:01.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2006,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 2006-2011,2013 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 *
-@@ -36,12 +36,81 @@
-
- #if USE_HASHED_DB
-
--MODULE_ID("$Id: hashed_db.c,v 1.14 2008/12/13 20:59:02 tom Exp $")
-+MODULE_ID("$Id: hashed_db.c,v 1.17 2013/12/15 00:33:01 tom Exp $")
-
- #if HASHED_DB_API >= 2
- static DBC *cursor;
- #endif
-
-+typedef struct _myconn {
-+ struct _myconn *next;
-+ DB *db;
-+ char *path;
-+ bool modify;
-+} MYCONN;
-+
-+static MYCONN *connections;
-+
-+static void
-+cleanup(void)
-+{
-+ while (connections != 0) {
-+ _nc_db_close(connections->db);
-+ }
-+}
-+
-+static DB *
-+find_connection(const char *path, bool modify)
-+{
-+ DB *result = 0;
-+ MYCONN *p;
-+
-+ for (p = connections; p != 0; p = p->next) {
-+ if (!strcmp(p->path, path) && p->modify == modify) {
-+ result = p->db;
-+ break;
-+ }
-+ }
-+
-+ return result;
-+}
-+
-+static void
-+drop_connection(DB * db)
-+{
-+ MYCONN *p, *q;
-+
-+ for (p = connections, q = 0; p != 0; q = p, p = p->next) {
-+ if (p->db == db) {
-+ if (q != 0)
-+ q->next = p->next;
-+ else
-+ connections = p->next;
-+ free(p->path);
-+ free(p);
-+ break;
-+ }
-+ }
-+}
-+
-+static void
-+make_connection(DB * db, const char *path, bool modify)
-+{
-+ MYCONN *p = typeCalloc(MYCONN, 1);
-+
-+ if (p != 0) {
-+ p->db = db;
-+ p->path = strdup(path);
-+ p->modify = modify;
-+ if (p->path != 0) {
-+ p->next = connections;
-+ connections = p;
-+ } else {
-+ free(p);
-+ }
-+ }
-+}
-+
- /*
- * Open the database.
- */
-@@ -51,50 +120,57 @@
- DB *result = 0;
- int code;
-
-+ if (connections == 0)
-+ atexit(cleanup);
-+
-+ if ((result = find_connection(path, modify)) == 0) {
-+
- #if HASHED_DB_API >= 4
-- db_create(&result, NULL, 0);
-- if ((code = result->open(result,
-- NULL,
-- path,
-- NULL,
-- DB_HASH,
-- modify ? DB_CREATE : DB_RDONLY,
-- 0644)) != 0) {
-- result = 0;
-- }
-+ db_create(&result, NULL, 0);
-+ if ((code = result->open(result,
-+ NULL,
-+ path,
-+ NULL,
-+ DB_HASH,
-+ modify ? DB_CREATE : DB_RDONLY,
-+ 0644)) != 0) {
-+ result = 0;
-+ }
- #elif HASHED_DB_API >= 3
-- db_create(&result, NULL, 0);
-- if ((code = result->open(result,
-- path,
-- NULL,
-- DB_HASH,
-- modify ? DB_CREATE : DB_RDONLY,
-- 0644)) != 0) {
-- result = 0;
-- }
-+ db_create(&result, NULL, 0);
-+ if ((code = result->open(result,
-+ path,
-+ NULL,
-+ DB_HASH,
-+ modify ? DB_CREATE : DB_RDONLY,
-+ 0644)) != 0) {
-+ result = 0;
-+ }
- #elif HASHED_DB_API >= 2
-- if ((code = db_open(path,
-- DB_HASH,
-- modify ? DB_CREATE : DB_RDONLY,
-- 0644,
-- (DB_ENV *) 0,
-- (DB_INFO *) 0,
-- &result)) != 0) {
-- result = 0;
-- }
--#else
-- if ((result = dbopen(path,
-- modify ? (O_CREAT | O_RDWR) : O_RDONLY,
-- 0644,
-- DB_HASH,
-- NULL)) == 0) {
-- code = errno;
-- }
-+ if ((code = db_open(path,
-+ DB_HASH,
-+ modify ? DB_CREATE : DB_RDONLY,
-+ 0644,
-+ (DB_ENV *) 0,
-+ (DB_INFO *) 0,
-+ &result)) != 0) {
-+ result = 0;
-+ }
-+#else
-+ if ((result = dbopen(path,
-+ modify ? (O_CREAT | O_RDWR) : O_RDONLY,
-+ 0644,
-+ DB_HASH,
-+ NULL)) == 0) {
-+ code = errno;
-+ }
- #endif
-- if (result != 0) {
-- T(("opened %s", path));
-- } else {
-- T(("cannot open %s: %s", path, strerror(code)));
-+ if (result != 0) {
-+ make_connection(result, path, modify);
-+ T(("opened %s", path));
-+ } else {
-+ T(("cannot open %s: %s", path, strerror(code)));
-+ }
- }
- return result;
- }
-@@ -107,6 +183,7 @@
- {
- int result;
-
-+ drop_connection(db);
- #if HASHED_DB_API >= 2
- result = db->close(db, 0);
- #else
-@@ -209,7 +286,7 @@
- _nc_db_have_index(DBT * key, DBT * data, char **buffer, int *size)
- {
- bool result = FALSE;
-- int used = data->size - 1;
-+ int used = (int) data->size - 1;
- char *have = (char *) data->data;
-
- (void) key;
-@@ -232,7 +309,7 @@
- _nc_db_have_data(DBT * key, DBT * data, char **buffer, int *size)
- {
- bool result = FALSE;
-- int used = data->size - 1;
-+ int used = (int) data->size - 1;
- char *have = (char *) data->data;
-
- if (*have++ == 0) {
-Index: ncurses/tinfo/home_terminfo.c
-Prereq: 1.12
---- ncurses-5.9/ncurses/tinfo/home_terminfo.c 2010-12-25 23:43:58.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/home_terminfo.c 2012-10-27 21:49:14.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -37,7 +37,7 @@
- #include <curses.priv.h>
- #include <tic.h>
-
--MODULE_ID("$Id: home_terminfo.c,v 1.12 2010/12/25 23:43:58 tom Exp $")
-+MODULE_ID("$Id: home_terminfo.c,v 1.15 2012/10/27 21:49:14 tom Exp $")
-
- /* ncurses extension...fall back on user's private directory */
-
-@@ -54,10 +54,8 @@
- if (MyBuffer == 0) {
- if ((home = getenv("HOME")) != 0) {
- size_t want = (strlen(home) + sizeof(PRIVATE_INFO));
-- MyBuffer = typeMalloc(char, want);
-- if (MyBuffer == 0)
-- _nc_err_abort(MSG_NO_MEMORY);
-- (void) sprintf(MyBuffer, PRIVATE_INFO, home);
-+ TYPE_MALLOC(char, want, MyBuffer);
-+ _nc_SPRINTF(MyBuffer, _nc_SLIMIT(want) PRIVATE_INFO, home);
- }
- }
- result = MyBuffer;
-Index: ncurses/tinfo/lib_acs.c
-Prereq: 1.43
---- ncurses-5.9/ncurses/tinfo/lib_acs.c 2010-12-25 23:00:45.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_acs.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -39,7 +39,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_acs.c,v 1.43 2010/12/25 23:00:45 tom Exp $")
-+MODULE_ID("$Id: lib_acs.c,v 1.45 2014/03/08 20:32:59 tom Exp $")
-
- #if BROKEN_LINKER || USE_REENTRANT
- #define MyBuffer _nc_prescreen.real_acs_map
-@@ -166,11 +166,10 @@
- real_map['E'] = '+'; /* large plus or crossover */
-
- #ifdef USE_TERM_DRIVER
-- CallDriver_2(SP_PARM, initacs, real_map, fake_map);
-+ CallDriver_2(SP_PARM, td_initacs, real_map, fake_map);
- #else
- if (ena_acs != NULL) {
-- TPUTS_TRACE("ena_acs");
-- putp(ena_acs);
-+ NCURSES_PUTP2("ena_acs", ena_acs);
- }
- #if NCURSES_EXT_FUNCS
- /*
-Index: ncurses/tinfo/lib_baudrate.c
-Prereq: 1.31
---- ncurses-5.9/ncurses/tinfo/lib_baudrate.c 2010-12-19 01:50:50.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_baudrate.c 2014-04-26 18:48:19.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -49,7 +49,7 @@
- * of the indices up to B115200 fit nicely in a 'short', allowing us to retain
- * ospeed's type for compatibility.
- */
--#if (defined(__FreeBSD__) && (__FreeBSD_version < 700000)) || defined(__NetBSD__) || defined(__OpenBSD__)
-+#if NCURSES_OSPEED_COMPAT && ((defined(__FreeBSD__) && (__FreeBSD_version < 700000)) || defined(__NetBSD__) || defined(__OpenBSD__))
- #undef B0
- #undef B50
- #undef B75
-@@ -79,7 +79,7 @@
- #undef USE_OLD_TTY
- #endif /* USE_OLD_TTY */
-
--MODULE_ID("$Id: lib_baudrate.c,v 1.31 2010/12/19 01:50:50 tom Exp $")
-+MODULE_ID("$Id: lib_baudrate.c,v 1.35 2014/04/26 18:48:19 juergen Exp $")
-
- /*
- * int
-@@ -90,54 +90,55 @@
- */
-
- struct speed {
-- int s; /* value for 'ospeed' is an index */
-+ NCURSES_OSPEED s; /* values for 'ospeed' */
- int sp; /* the actual speed */
- };
-
-+#define DATA(number) { B##number, number }
-+
- static struct speed const speeds[] =
- {
-- {B0, 0},
-- {B50, 50},
-- {B75, 75},
-- {B110, 110},
-- {B134, 134},
-- {B150, 150},
-- {B200, 200},
-- {B300, 300},
-- {B600, 600},
-- {B1200, 1200},
-- {B1800, 1800},
-- {B2400, 2400},
-- {B4800, 4800},
-- {B9600, 9600},
-+ DATA(0),
-+ DATA(50),
-+ DATA(75),
-+ DATA(110),
-+ DATA(134),
-+ DATA(150),
-+ DATA(200),
-+ DATA(300),
-+ DATA(600),
-+ DATA(1200),
-+ DATA(1800),
-+ DATA(2400),
-+ DATA(4800),
-+ DATA(9600),
- #ifdef B19200
-- {B19200, 19200},
--#else
--#ifdef EXTA
-+ DATA(19200),
-+#elif defined(EXTA)
- {EXTA, 19200},
- #endif
--#endif
- #ifdef B38400
-- {B38400, 38400},
--#else
--#ifdef EXTB
-+ DATA(38400),
-+#elif defined(EXTB)
- {EXTB, 38400},
- #endif
--#endif
- #ifdef B57600
-- {B57600, 57600},
-+ DATA(57600),
- #endif
-+ /* ifdef to prevent overflow when OLD_TTY is not available */
-+#if !(NCURSES_OSPEED_COMPAT && defined(__FreeBSD__) && (__FreeBSD_version > 700000))
- #ifdef B115200
-- {B115200, 115200},
-+ DATA(115200),
- #endif
- #ifdef B230400
-- {B230400, 230400},
-+ DATA(230400),
- #endif
- #ifdef B460800
-- {B460800, 460800},
-+ DATA(460800),
- #endif
- #ifdef B921600
-- {B921600, 921600},
-+ DATA(921600),
-+#endif
- #endif
- };
-
-@@ -167,7 +168,7 @@
- }
- }
- #if !USE_REENTRANT
-- if (OSpeed == last_OSpeed) {
-+ if (OSpeed != last_OSpeed) {
- last_OSpeed = OSpeed;
- last_baudrate = result;
- }
-@@ -207,7 +208,7 @@
- */
- #ifdef TRACE
- if (IsValidTIScreen(SP_PARM)
-- && !isatty(fileno(SP_PARM ? SP_PARM->_ofp : stdout))
-+ && !NC_ISATTY(fileno(SP_PARM ? SP_PARM->_ofp : stdout))
- && getenv("BAUDRATE") != 0) {
- int ret;
- if ((ret = _nc_getenv_num("BAUDRATE")) <= 0)
-@@ -219,8 +220,8 @@
-
- if (IsValidTIScreen(SP_PARM)) {
- #ifdef USE_OLD_TTY
-- result = cfgetospeed(&(TerminalOf(SP_PARM)->Nttyb));
-- ospeed = _nc_ospeed(result);
-+ result = (int) cfgetospeed(&(TerminalOf(SP_PARM)->Nttyb));
-+ ospeed = (NCURSES_OSPEED) _nc_ospeed(result);
- #else /* !USE_OLD_TTY */
- #ifdef TERMIOS
- ospeed = (NCURSES_OSPEED) cfgetospeed(&(TerminalOf(SP_PARM)->Nttyb));
-Index: ncurses/tinfo/lib_cur_term.c
-Prereq: 1.30
---- ncurses-5.9/ncurses/tinfo/lib_cur_term.c 2010-12-19 01:38:45.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_cur_term.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -39,14 +39,12 @@
- #include <curses.priv.h>
- #include <termcap.h> /* ospeed */
-
--MODULE_ID("$Id: lib_cur_term.c,v 1.30 2010/12/19 01:38:45 tom Exp $")
-+MODULE_ID("$Id: lib_cur_term.c,v 1.33 2014/03/08 20:32:59 tom Exp $")
-
- #undef CUR
- #define CUR termp->type.
-
--#if BROKEN_LINKER && !USE_REENTRANT
--NCURSES_EXPORT_VAR(TERMINAL *) cur_term = 0;
--#elif BROKEN_LINKER || USE_REENTRANT
-+#if USE_REENTRANT
-
- NCURSES_EXPORT(TERMINAL *)
- NCURSES_SP_NAME(_nc_get_cur_term) (NCURSES_SP_DCL0)
-@@ -55,6 +53,7 @@
- }
-
- #if NCURSES_SP_FUNCS
-+
- NCURSES_EXPORT(TERMINAL *)
- _nc_get_cur_term(void)
- {
-@@ -87,10 +86,10 @@
- oldterm = cur_term;
- if (SP_PARM)
- SP_PARM->_term = termp;
--#if BROKEN_LINKER && !USE_REENTRANT
-- cur_term = termp;
--#else
-+#if USE_REENTRANT
- CurTerm = termp;
-+#else
-+ cur_term = termp;
- #endif
- if (termp != 0) {
- #ifdef USE_TERM_DRIVER
-@@ -133,9 +132,7 @@
- TERMINAL_CONTROL_BLOCK *TCB = (TERMINAL_CONTROL_BLOCK *) termp;
- #endif
- TERMINAL *cur = (
--#if BROKEN_LINKER && !USE_REENTRANT
-- cur_term
--#elif BROKEN_LINKER || USE_REENTRANT
-+#if USE_REENTRANT
- NCURSES_SP_NAME(_nc_get_cur_term) (NCURSES_SP_ARG)
- #else
- cur_term
-@@ -148,12 +145,13 @@
-
- FreeIfNeeded(termp->_termname);
- #if USE_HOME_TERMINFO
-- if (_nc_globals.home_terminfo != 0)
-+ if (_nc_globals.home_terminfo != 0) {
- FreeAndNull(_nc_globals.home_terminfo);
-+ }
- #endif
- #ifdef USE_TERM_DRIVER
- if (TCB->drv)
-- TCB->drv->release(TCB);
-+ TCB->drv->td_release(TCB);
- #endif
- free(termp);
-
-Index: ncurses/tinfo/lib_data.c
-Prereq: 1.61
---- ncurses-5.9/ncurses/tinfo/lib_data.c 2010-05-15 22:06:56.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_data.c 2013-08-24 17:28:24.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -42,7 +42,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_data.c,v 1.61 2010/05/15 22:06:56 tom Exp $")
-+MODULE_ID("$Id: lib_data.c,v 1.66 2013/08/24 17:28:24 tom Exp $")
-
- /*
- * OS/2's native linker complains if we don't initialize public data when
-@@ -114,6 +114,7 @@
- #define TGETENT_0s { TGETENT_0, TGETENT_0, TGETENT_0, TGETENT_0 }
-
- NCURSES_EXPORT_VAR(NCURSES_GLOBALS) _nc_globals = {
-+ 0, /* have_sigtstp */
- 0, /* have_sigwinch */
- 0, /* cleanup_nested */
-
-@@ -125,13 +126,14 @@
-
- FALSE, /* have_tic_directory */
- FALSE, /* keep_tic_directory */
-- TERMINFO, /* tic_directory */
-+ 0, /* tic_directory */
-
- NULL, /* dbi_list */
- 0, /* dbi_size */
-
- NULL, /* first_name */
- NULL, /* keyname_table */
-+ 0, /* init_keyname */
-
- 0, /* slk_format */
-
-@@ -142,6 +144,12 @@
- 0, /* tgetent_index */
- 0, /* tgetent_sequence */
-
-+ 0, /* dbd_blob */
-+ 0, /* dbd_list */
-+ 0, /* dbd_size */
-+ 0, /* dbd_time */
-+ { { 0, 0 } }, /* dbd_vars */
-+
- #ifndef USE_SP_WINDOWLIST
- 0, /* _nc_windowlist */
- #endif
-@@ -249,6 +257,7 @@
- NULL, /* _tputs_trace */
- #endif
- #endif
-+ FALSE, /* use_tioctl */
- };
- /* *INDENT-ON* */
-
-Index: ncurses/tinfo/lib_has_cap.c
-Prereq: 1.9
---- ncurses-5.9/ncurses/tinfo/lib_has_cap.c 2009-10-24 22:15:47.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_has_cap.c 2013-11-16 19:57:22.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2013 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 *
-@@ -46,7 +46,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_has_cap.c,v 1.9 2009/10/24 22:15:47 tom Exp $")
-+MODULE_ID("$Id: lib_has_cap.c,v 1.10 2013/11/16 19:57:22 tom Exp $")
-
- NCURSES_EXPORT(bool)
- NCURSES_SP_NAME(has_ic) (NCURSES_SP_DCL0)
-@@ -55,7 +55,7 @@
-
- T((T_CALLED("has_ic(%p)"), (void *) SP_PARM));
-
-- if (IsValidTIScreen(SP_PARM) && IsTermInfo(SP_PARM)) {
-+ if (HasTInfoTerminal(SP_PARM)) {
- code = ((insert_character || parm_ich
- || (enter_insert_mode && exit_insert_mode))
- && (delete_character || parm_dch)) ? TRUE : FALSE;
-@@ -77,7 +77,7 @@
- {
- bool code = FALSE;
- T((T_CALLED("has_il(%p)"), (void *) SP_PARM));
-- if (IsValidTIScreen(SP_PARM) && IsTermInfo(SP_PARM)) {
-+ if (HasTInfoTerminal(SP_PARM)) {
- code = ((insert_line || parm_insert_line)
- && (delete_line || parm_delete_line)) ? TRUE : FALSE;
- }
-Index: ncurses/tinfo/lib_napms.c
-Prereq: 1.20
---- ncurses-5.9/ncurses/tinfo/lib_napms.c 2009-11-07 20:37:30.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_napms.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -51,17 +51,21 @@
- #endif
- #endif
-
--MODULE_ID("$Id: lib_napms.c,v 1.20 2009/11/07 20:37:30 tom Exp $")
-+MODULE_ID("$Id: lib_napms.c,v 1.24 2014/03/08 20:32:59 tom Exp $")
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(napms) (NCURSES_SP_DCLx int ms)
- {
-- (void) SP_PARM;
- T((T_CALLED("napms(%d)"), ms));
-
- #ifdef USE_TERM_DRIVER
-- CallDriver_1(SP_PARM, nap, ms);
-+ if (HasTerminal(SP_PARM)) {
-+ CallDriver_1(SP_PARM, td_nap, ms);
-+ }
- #else /* !USE_TERM_DRIVER */
-+#if NCURSES_SP_FUNCS
-+ (void) sp;
-+#endif
- #if HAVE_NANOSLEEP
- {
- struct timespec request, remaining;
-Index: ncurses/tinfo/lib_options.c
-Prereq: 1.71
---- ncurses-5.9/ncurses/tinfo/lib_options.c 2009-10-24 21:56:15.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_options.c 2014-09-27 21:55:24.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -46,7 +46,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_options.c,v 1.71 2009/10/24 21:56:15 tom Exp $")
-+MODULE_ID("$Id: lib_options.c,v 1.78 2014/09/27 21:55:24 tom Exp $")
-
- NCURSES_EXPORT(int)
- idlok(WINDOW *win, bool flag)
-@@ -56,7 +56,11 @@
-
- if (win) {
- SCREEN *sp = _nc_screen_of(win);
-- if (sp && IsTermInfo(sp)) {
-+ if (sp != 0
-+#ifdef USE_TERM_DRIVER
-+ && IsTermInfo(sp)
-+#endif
-+ ) {
- sp->_nc_sp_idlok =
- win->_idlok = (flag && (NCURSES_SP_NAME(has_il) (NCURSES_SP_ARG)
- || change_scroll_region));
-@@ -165,16 +169,16 @@
- #ifdef USE_TERM_DRIVER
- if (IsTermInfo(sp)) {
- if (flag) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "meta_on", meta_on);
-+ NCURSES_PUTP2("meta_on", meta_on);
- } else {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "meta_off", meta_off);
-+ NCURSES_PUTP2("meta_off", meta_off);
- }
- }
- #else
- if (flag) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "meta_on", meta_on);
-+ NCURSES_PUTP2("meta_on", meta_on);
- } else {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "meta_off", meta_off);
-+ NCURSES_PUTP2("meta_off", meta_off);
- }
- #endif
- result = OK;
-@@ -192,30 +196,31 @@
-
- if (SP_PARM != 0 && vis >= 0 && vis <= 2) {
- int cursor = SP_PARM->_cursor;
-- bool bBuiltIn = !IsTermInfo(SP_PARM);
- if (vis == cursor) {
- code = cursor;
- } else {
-- if (!bBuiltIn) {
-+#ifdef USE_TERM_DRIVER
-+ code = CallDriver_1(SP_PARM, td_cursorSet, vis);
-+#else
-+ if (IsTermInfo(SP_PARM)) {
- switch (vis) {
- case 2:
-- code = NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx
-- "cursor_visible",
-- cursor_visible);
-+ code = NCURSES_PUTP2_FLUSH("cursor_visible",
-+ cursor_visible);
- break;
- case 1:
-- code = NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx
-- "cursor_normal",
-- cursor_normal);
-+ code = NCURSES_PUTP2_FLUSH("cursor_normal",
-+ cursor_normal);
- break;
- case 0:
-- code = NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx
-- "cursor_invisible",
-- cursor_invisible);
-+ code = NCURSES_PUTP2_FLUSH("cursor_invisible",
-+ cursor_invisible);
- break;
- }
-- } else
-+ } else {
- code = ERR;
-+ }
-+#endif
- if (code != ERR)
- code = (cursor == -1 ? 1 : cursor);
- SP_PARM->_cursor = vis;
-@@ -301,7 +306,7 @@
- NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_DCLx
- const char *name, const char *value)
- {
-- int rc = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx name, value);
-+ int rc = NCURSES_PUTP2(name, value);
- if (rc != ERR) {
- _nc_flush();
- }
-@@ -324,7 +329,7 @@
- * the terminal state _before_ switching modes.
- */
- NCURSES_EXPORT(int)
--_nc_keypad(SCREEN *sp, bool flag)
-+_nc_keypad(SCREEN *sp, int flag)
- {
- int rc = ERR;
-
-@@ -349,18 +354,14 @@
- #endif
- {
- #ifdef USE_TERM_DRIVER
-- rc = CallDriver_1(sp, kpad, flag);
-+ rc = CallDriver_1(sp, td_kpad, flag);
- if (rc == OK)
- sp->_keypad_on = flag;
- #else
- if (flag) {
-- (void) NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx
-- "keypad_xmit",
-- keypad_xmit);
-+ (void) NCURSES_PUTP2_FLUSH("keypad_xmit", keypad_xmit);
- } else if (!flag && keypad_local) {
-- (void) NCURSES_SP_NAME(_nc_putp_flush) (NCURSES_SP_ARGx
-- "keypad_local",
-- keypad_local);
-+ (void) NCURSES_PUTP2_FLUSH("keypad_local", keypad_local);
- }
-
- if (flag && !sp->_tried) {
-Index: ncurses/tinfo/lib_print.c
-Prereq: 1.20
---- ncurses-5.9/ncurses/tinfo/lib_print.c 2010-06-05 22:18:35.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_print.c 2012-02-22 22:34:31.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -39,7 +39,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_print.c,v 1.20 2010/06/05 22:18:35 tom Exp $")
-+MODULE_ID("$Id: lib_print.c,v 1.23 2012/02/22 22:34:31 tom Exp $")
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(mcprint) (NCURSES_SP_DCLx char *data, int len)
-@@ -76,10 +76,10 @@
- return (ERR);
- }
-
-- (void) strcpy(mybuf, switchon);
-- memcpy(mybuf + onsize, data, (unsigned) len);
-+ _nc_STRCPY(mybuf, switchon, need);
-+ memcpy(mybuf + onsize, data, (size_t) len);
- if (offsize)
-- (void) strcpy(mybuf + onsize + len, prtr_off);
-+ _nc_STRCPY(mybuf + onsize + len, prtr_off, need);
-
- /*
- * We're relying on the atomicity of UNIX writes here. The
-Index: ncurses/tinfo/lib_raw.c
-Prereq: 1.19
---- ncurses-5.9/ncurses/tinfo/lib_raw.c 2010-04-24 23:49:12.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_raw.c 2012-01-21 19:21:29.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -49,11 +49,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_raw.c,v 1.19 2010/04/24 23:49:12 tom Exp $")
--
--#if SVR4_TERMIO && !defined(_POSIX_SOURCE)
--#define _POSIX_SOURCE
--#endif
-+MODULE_ID("$Id: lib_raw.c,v 1.21 2012/01/21 19:21:29 KO.Myung-Hun Exp $")
-
- #if HAVE_SYS_TERMIO_H
- #include <sys/termio.h> /* needed for ISC */
-@@ -66,6 +62,11 @@
- #define _nc_setmode(mode) /* nothing */
- #endif
-
-+#if USE_KLIBC_KBD
-+#define INCL_KBD
-+#include <os2.h>
-+#endif
-+
- #define COOKED_INPUT (IXON|BRKINT|PARMRK)
-
- #ifdef TRACE
-@@ -100,6 +101,17 @@
- #endif
- result = NCURSES_SP_NAME(_nc_set_tty_mode) (NCURSES_SP_ARGx &buf);
- if (result == OK) {
-+#if USE_KLIBC_KBD
-+ KBDINFO kbdinfo;
-+
-+ kbdinfo.cb = sizeof(kbdinfo);
-+ KbdGetStatus(&kbdinfo, 0);
-+
-+ kbdinfo.cb = sizeof(kbdinfo);
-+ kbdinfo.fsMask &= ~KEYBOARD_ASCII_MODE;
-+ kbdinfo.fsMask |= KEYBOARD_BINARY_MODE;
-+ KbdSetStatus(&kbdinfo, 0);
-+#endif
- SP_PARM->_raw = TRUE;
- SP_PARM->_cbreak = 1;
- termp->Nttyb = buf;
-@@ -218,6 +230,17 @@
- #endif
- result = NCURSES_SP_NAME(_nc_set_tty_mode) (NCURSES_SP_ARGx &buf);
- if (result == OK) {
-+#if USE_KLIBC_KBD
-+ KBDINFO kbdinfo;
-+
-+ kbdinfo.cb = sizeof(kbdinfo);
-+ KbdGetStatus(&kbdinfo, 0);
-+
-+ kbdinfo.cb = sizeof(kbdinfo);
-+ kbdinfo.fsMask &= ~KEYBOARD_BINARY_MODE;
-+ kbdinfo.fsMask |= KEYBOARD_ASCII_MODE;
-+ KbdSetStatus(&kbdinfo, 0);
-+#endif
- SP_PARM->_raw = FALSE;
- SP_PARM->_cbreak = 0;
- termp->Nttyb = buf;
-Index: ncurses/tinfo/lib_setup.c
-Prereq: 1.135
---- ncurses-5.9/ncurses/tinfo/lib_setup.c 2011-02-06 01:04:21.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_setup.c 2014-11-01 12:33:16.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -37,21 +37,18 @@
- * Terminal setup routines common to termcap and terminfo:
- *
- * use_env(bool)
-+ * use_tioctl(bool)
- * setupterm(char *, int, int *)
- */
-
- #include <curses.priv.h>
- #include <tic.h> /* for MAX_NAME_SIZE */
-
--#if SVR4_TERMIO && !defined(_POSIX_SOURCE)
--#define _POSIX_SOURCE
--#endif
--
- #if HAVE_LOCALE_H
- #include <locale.h>
- #endif
-
--MODULE_ID("$Id: lib_setup.c,v 1.135 2011/02/06 01:04:21 tom Exp $")
-+MODULE_ID("$Id: lib_setup.c,v 1.161 2014/11/01 12:33:16 tom Exp $")
-
- /****************************************************************************
- *
-@@ -225,6 +222,7 @@
- {
- T((T_CALLED("use_env(%p,%d)"), (void *) SP_PARM, (int) f));
- #if NCURSES_SP_FUNCS
-+ START_TRACE();
- if (IsPreScreen(SP_PARM)) {
- SP_PARM->_use_env = f;
- }
-@@ -234,14 +232,39 @@
- returnVoid;
- }
-
-+NCURSES_EXPORT(void)
-+NCURSES_SP_NAME(use_tioctl) (NCURSES_SP_DCLx bool f)
-+{
-+ T((T_CALLED("use_tioctl(%p,%d)"), (void *) SP_PARM, (int) f));
-+#if NCURSES_SP_FUNCS
-+ START_TRACE();
-+ if (IsPreScreen(SP_PARM)) {
-+ SP_PARM->_use_tioctl = f;
-+ }
-+#else
-+ _nc_prescreen.use_tioctl = f;
-+#endif
-+ returnVoid;
-+}
-+
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(void)
- use_env(bool f)
- {
- T((T_CALLED("use_env(%d)"), (int) f));
-+ START_TRACE();
- _nc_prescreen.use_env = f;
- returnVoid;
- }
-+
-+NCURSES_EXPORT(void)
-+use_tioctl(bool f)
-+{
-+ T((T_CALLED("use_tioctl(%d)"), (int) f));
-+ START_TRACE();
-+ _nc_prescreen.use_tioctl = f;
-+ returnVoid;
-+}
- #endif
-
- NCURSES_EXPORT(void)
-@@ -260,7 +283,7 @@
- TCB = (TERMINAL_CONTROL_BLOCK *) termp;
-
- my_tabsize = TCB->info.tabsize;
-- TCB->drv->size(TCB, linep, colp);
-+ TCB->drv->td_size(TCB, linep, colp);
-
- #if USE_REENTRANT
- if (sp != 0) {
-@@ -281,7 +304,7 @@
- *linep = (int) lines;
- *colp = (int) columns;
-
-- if (_nc_prescreen.use_env) {
-+ if (_nc_prescreen.use_env || _nc_prescreen.use_tioctl) {
- int value;
-
- #ifdef __EMX__
-@@ -289,14 +312,16 @@
- int screendata[2];
- _scrsize(screendata);
- *colp = screendata[0];
-- *linep = screendata[1];
-+ *linep = ((sp != 0 && sp->_filtered)
-+ ? 1
-+ : screendata[1]);
- T(("EMX screen size: environment LINES = %d COLUMNS = %d",
- *linep, *colp));
- }
- #endif
- #if HAVE_SIZECHANGE
- /* try asking the OS */
-- if (isatty(cur_term->Filedes)) {
-+ if (NC_ISATTY(cur_term->Filedes)) {
- STRUCT_WINSIZE size;
-
- errno = 0;
-@@ -315,19 +340,33 @@
- }
- #endif /* HAVE_SIZECHANGE */
-
-- /*
-- * Finally, look for environment variables.
-- *
-- * Solaris lets users override either dimension with an environment
-- * variable.
-- */
-- if ((value = _nc_getenv_num("LINES")) > 0) {
-- *linep = value;
-- T(("screen size: environment LINES = %d", *linep));
-- }
-- if ((value = _nc_getenv_num("COLUMNS")) > 0) {
-- *colp = value;
-- T(("screen size: environment COLUMNS = %d", *colp));
-+ if (_nc_prescreen.use_env) {
-+ if (_nc_prescreen.use_tioctl) {
-+ /*
-+ * If environment variables are used, update them.
-+ */
-+ if ((sp == 0 || !sp->_filtered) && _nc_getenv_num("LINES") > 0) {
-+ _nc_setenv_num("LINES", *linep);
-+ }
-+ if (_nc_getenv_num("COLUMNS") > 0) {
-+ _nc_setenv_num("COLUMNS", *colp);
-+ }
-+ }
-+
-+ /*
-+ * Finally, look for environment variables.
-+ *
-+ * Solaris lets users override either dimension with an environment
-+ * variable.
-+ */
-+ if ((value = _nc_getenv_num("LINES")) > 0) {
-+ *linep = value;
-+ T(("screen size: environment LINES = %d", *linep));
-+ }
-+ if ((value = _nc_getenv_num("COLUMNS")) > 0) {
-+ *colp = value;
-+ T(("screen size: environment COLUMNS = %d", *colp));
-+ }
- }
-
- /* if we can't get dynamic info about the size, use static */
-@@ -384,7 +423,7 @@
-
- assert(sp != 0);
-
-- CallDriver_2(sp, getsize, &old_lines, &old_cols);
-+ CallDriver_2(sp, td_getsize, &old_lines, &old_cols);
-
- #else
- TERMINAL *termp = cur_term;
-@@ -399,10 +438,12 @@
- * We're doing it this way because those functions belong to the upper
- * ncurses library, while this resides in the lower terminfo library.
- */
-- if (sp != 0
-- && sp->_resize != 0) {
-- if ((new_lines != old_lines) || (new_cols != old_cols))
-+ if (sp != 0 && sp->_resize != 0) {
-+ if ((new_lines != old_lines) || (new_cols != old_cols)) {
- sp->_resize(NCURSES_SP_ARGx new_lines, new_cols);
-+ } else if (sp->_sig_winch && (sp->_ungetch != 0)) {
-+ sp->_ungetch(SP_PARM, KEY_RESIZE); /* so application can know this */
-+ }
- sp->_sig_winch = FALSE;
- }
- }
-@@ -414,23 +455,7 @@
- *
- ****************************************************************************/
-
--#define ret_error(code, fmt, arg) if (errret) {\
-- *errret = code;\
-- returnCode(ERR);\
-- } else {\
-- fprintf(stderr, fmt, arg);\
-- exit(EXIT_FAILURE);\
-- }
--
--#define ret_error0(code, msg) if (errret) {\
-- *errret = code;\
-- returnCode(ERR);\
-- } else {\
-- fprintf(stderr, msg);\
-- exit(EXIT_FAILURE);\
-- }
--
--#if USE_DATABASE || USE_TERMCAP
-+#if NCURSES_USE_DATABASE || NCURSES_USE_TERMCAP
- /*
- * Return 1 if entry found, 0 if not found, -1 if database not accessible,
- * just like tgetent().
-@@ -467,7 +492,7 @@
- ** and substitute it in for the prototype given in 'command_character'.
- */
- void
--_nc_tinfo_cmdch(TERMINAL * termp, char proto)
-+_nc_tinfo_cmdch(TERMINAL * termp, int proto)
- {
- unsigned i;
- char CC;
-@@ -481,8 +506,8 @@
- if ((tmp = getenv("CC")) != 0 && strlen(tmp) == 1) {
- CC = *tmp;
- for_each_string(i, &(termp->type)) {
-- for (tmp = termp->type.Strings[i]; *tmp; tmp++) {
-- if (*tmp == proto)
-+ for (tmp = termp->type.Strings[i]; tmp && *tmp; tmp++) {
-+ if (UChar(*tmp) == proto)
- *tmp = CC;
- }
- }
-@@ -520,7 +545,9 @@
- _nc_unicode_locale(void)
- {
- int result = 0;
--#if HAVE_LANGINFO_CODESET
-+#if defined(__MINGW32__) && USE_WIDEC_SUPPORT
-+ result = 1;
-+#elif HAVE_LANGINFO_CODESET
- char *env = nl_langinfo(CODESET);
- result = !strcmp(env, "UTF-8");
- T(("_nc_unicode_locale(%s) ->%d", env, result));
-@@ -547,11 +574,11 @@
- _nc_locale_breaks_acs(TERMINAL * termp)
- {
- const char *env_name = "NCURSES_NO_UTF8_ACS";
-- char *env;
-+ const char *env;
- int value;
- int result = 0;
-
-- if ((env = getenv(env_name)) != 0) {
-+ if (getenv(env_name) != 0) {
- result = _nc_getenv_num(env_name);
- } else if ((value = tigetnum("U8")) >= 0) {
- result = value; /* use extension feature */
-@@ -578,7 +605,7 @@
- NCURSES_CONST char *tname,
- int Filedes,
- int *errret,
-- bool reuse)
-+ int reuse)
- {
- #ifdef USE_TERM_DRIVER
- TERMINAL_CONTROL_BLOCK *TCB = 0;
-@@ -608,7 +635,11 @@
- if (tname == 0) {
- tname = getenv("TERM");
- if (tname == 0 || *tname == '\0') {
-+#ifdef USE_TERM_DRIVER
-+ tname = "unknown";
-+#else
- ret_error0(TGETENT_ERR, "TERM environment variable not set.\n");
-+#endif
- }
- }
-
-@@ -624,7 +655,7 @@
- * Allow output redirection. This is what SVr3 does. If stdout is
- * directed to a file, screen updates go to standard error.
- */
-- if (Filedes == STDOUT_FILENO && !isatty(Filedes))
-+ if (Filedes == STDOUT_FILENO && !NC_ISATTY(Filedes))
- Filedes = STDERR_FILENO;
-
- /*
-@@ -651,9 +682,14 @@
- && _nc_name_match(termp->type.term_names, tname, "|")) {
- T(("reusing existing terminal information and mode-settings"));
- code = OK;
-+#ifdef USE_TERM_DRIVER
-+ TCB = (TERMINAL_CONTROL_BLOCK *) termp;
-+#endif
- } else {
- #ifdef USE_TERM_DRIVER
-- termp = (TERMINAL *) typeCalloc(TERMINAL_CONTROL_BLOCK, 1);
-+ TERMINAL_CONTROL_BLOCK *my_tcb;
-+ my_tcb = typeCalloc(TERMINAL_CONTROL_BLOCK, 1);
-+ termp = &(my_tcb->term);
- #else
- termp = typeCalloc(TERMINAL, 1);
- #endif
-@@ -673,7 +709,7 @@
- "Could not find any driver to handle this terminal.\n");
- }
- #else
--#if USE_DATABASE || USE_TERMCAP
-+#if NCURSES_USE_DATABASE || NCURSES_USE_TERMCAP
- status = _nc_setup_tinfo(tname, &termp->type);
- #else
- status = TGETENT_NO;
-@@ -684,7 +720,7 @@
- const TERMTYPE *fallback = _nc_fallback(tname);
-
- if (fallback) {
-- termp->type = *fallback;
-+ _nc_copy_termtype(&(termp->type), fallback);
- status = TGETENT_YES;
- }
- }
-@@ -694,11 +730,11 @@
- if (status == TGETENT_ERR) {
- ret_error0(status, "terminals database is inaccessible\n");
- } else if (status == TGETENT_NO) {
-- ret_error(status, "'%s': unknown terminal type.\n", tname);
-+ ret_error1(status, "unknown terminal type.\n", tname);
- }
- }
- #if !USE_REENTRANT
-- strncpy(ttytype, termp->type.term_names, NAMESIZE - 1);
-+ strncpy(ttytype, termp->type.term_names, (size_t) (NAMESIZE - 1));
- ttytype[NAMESIZE - 1] = '\0';
- #endif
-
-@@ -708,7 +744,7 @@
- set_curterm(termp);
-
- if (command_character)
-- _nc_tinfo_cmdch(termp, *command_character);
-+ _nc_tinfo_cmdch(termp, UChar(*command_character));
-
- /*
- * If an application calls setupterm() rather than initscr() or
-@@ -716,7 +752,7 @@
- * _nc_setupscreen(). Do it now anyway, so we can initialize the
- * baudrate.
- */
-- if (isatty(Filedes)) {
-+ if (NC_ISATTY(Filedes)) {
- def_prog_mode();
- baudrate();
- }
-@@ -727,7 +763,7 @@
- #ifdef USE_TERM_DRIVER
- *tp = termp;
- NCURSES_SP_NAME(set_curterm) (sp, termp);
-- TCB->drv->init(TCB);
-+ TCB->drv->td_init(TCB);
- #else
- sp = SP;
- #endif
-@@ -742,10 +778,20 @@
-
- #ifndef USE_TERM_DRIVER
- if (generic_type) {
-- ret_error(TGETENT_NO, "'%s': I need something more specific.\n", tname);
-- }
-- if (hard_copy) {
-- ret_error(TGETENT_YES, "'%s': I can't handle hardcopy terminals.\n", tname);
-+ /*
-+ * BSD 4.3's termcap contains mis-typed "gn" for wy99. Do a sanity
-+ * check before giving up.
-+ */
-+ if ((VALID_STRING(cursor_address)
-+ || (VALID_STRING(cursor_down) && VALID_STRING(cursor_home)))
-+ && VALID_STRING(clear_screen)) {
-+ ret_error1(TGETENT_YES, "terminal is not really generic.\n", tname);
-+ } else {
-+ del_curterm(termp);
-+ ret_error1(TGETENT_NO, "I need something more specific.\n", tname);
-+ }
-+ } else if (hard_copy) {
-+ ret_error1(TGETENT_YES, "I can't handle hardcopy terminals.\n", tname);
- }
- #endif
- returnCode(code);
-@@ -798,10 +844,10 @@
- _nc_setupterm(NCURSES_CONST char *tname,
- int Filedes,
- int *errret,
-- bool reuse)
-+ int reuse)
- {
- int res;
-- TERMINAL *termp;
-+ TERMINAL *termp = 0;
- res = TINFO_SETUP_TERM(&termp, tname, Filedes, errret, reuse);
- if (ERR != res)
- NCURSES_SP_NAME(set_curterm) (CURRENT_SCREEN_PRE, termp);
-Index: ncurses/tinfo/lib_termcap.c
-Prereq: 1.73
---- ncurses-5.9/ncurses/tinfo/lib_termcap.c 2010-12-25 19:27:12.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_termcap.c 2013-06-08 16:48:47.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -48,7 +48,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_termcap.c,v 1.73 2010/12/25 19:27:12 tom Exp $")
-+MODULE_ID("$Id: lib_termcap.c,v 1.80 2013/06/08 16:48:47 tom Exp $")
-
- NCURSES_EXPORT_VAR(char *) UP = 0;
- NCURSES_EXPORT_VAR(char *) BC = 0;
-@@ -63,6 +63,15 @@
- #define LAST_USE MyCache[CacheInx].last_used
- #define LAST_SEQ MyCache[CacheInx].sequence
-
-+/*
-+ * Termcap names are matched only using the first two bytes.
-+ * Ignore any extended names longer than two bytes, to avoid problems
-+ * with legacy code which passes in parameters whose use is long forgotten.
-+ */
-+#define ValidCap(cap) (((cap)[0] != '\0') && ((cap)[1] != '\0'))
-+#define SameCap(a,b) (((a)[0] == (b)[0]) && ((a)[1] == (b)[1]))
-+#define ValidExt(ext) (ValidCap(ext) && (ext)[2] == '\0')
-+
- /***************************************************************************
- *
- * tgetent(bufp, term)
-@@ -97,7 +106,7 @@
- #ifdef USE_TERM_DRIVER
- if (termp == 0 ||
- !((TERMINAL_CONTROL_BLOCK *) termp)->drv->isTerminfo)
-- return (rc);
-+ returnCode(rc);
- #endif
-
- /*
-@@ -202,11 +211,13 @@
- static bool
- same_tcname(const char *a, const char *b)
- {
-- fprintf(stderr, "compare(%s,%s)\n", a, b);
-- return !strncmp(a, b, 2);
-+ bool code = SameCap(a, b);
-+ fprintf(stderr, "compare(%s,%s) %s\n", a, b, code ? "same" : "diff");
-+ return code;
- }
-+
- #else
--#define same_tcname(a,b) !strncmp(a,b,2)
-+#define same_tcname(a,b) SameCap(a,b)
- #endif
-
- /***************************************************************************
-@@ -222,10 +233,10 @@
- NCURSES_SP_NAME(tgetflag) (NCURSES_SP_DCLx NCURSES_CONST char *id)
- {
- int result = 0; /* Solaris returns zero for missing flag */
-- int i, j;
-+ int j = -1;
-
- T((T_CALLED("tgetflag(%p, %s)"), (void *) SP_PARM, id));
-- if (HasTInfoTerminal(SP_PARM)) {
-+ if (HasTInfoTerminal(SP_PARM) && ValidCap(id)) {
- TERMTYPE *tp = &(TerminalOf(SP_PARM)->type);
- struct name_table_entry const *entry_ptr;
-
-@@ -235,10 +246,10 @@
- }
- #if NCURSES_XNAMES
- else {
-- j = -1;
-+ int i;
- for_each_ext_boolean(i, tp) {
- const char *capname = ExtBoolname(tp, i, boolcodes);
-- if (same_tcname(id, capname)) {
-+ if (same_tcname(id, capname) && ValidExt(capname)) {
- j = i;
- break;
- }
-@@ -274,10 +285,10 @@
- NCURSES_SP_NAME(tgetnum) (NCURSES_SP_DCLx NCURSES_CONST char *id)
- {
- int result = ABSENT_NUMERIC;
-- int i, j;
-+ int j = -1;
-
- T((T_CALLED("tgetnum(%p, %s)"), (void *) SP_PARM, id));
-- if (HasTInfoTerminal(SP_PARM)) {
-+ if (HasTInfoTerminal(SP_PARM) && ValidCap(id)) {
- TERMTYPE *tp = &(TerminalOf(SP_PARM)->type);
- struct name_table_entry const *entry_ptr;
-
-@@ -287,10 +298,10 @@
- }
- #if NCURSES_XNAMES
- else {
-- j = -1;
-+ int i;
- for_each_ext_number(i, tp) {
- const char *capname = ExtNumname(tp, i, numcodes);
-- if (same_tcname(id, capname)) {
-+ if (same_tcname(id, capname) && ValidExt(capname)) {
- j = i;
- break;
- }
-@@ -326,10 +337,10 @@
- NCURSES_SP_NAME(tgetstr) (NCURSES_SP_DCLx NCURSES_CONST char *id, char **area)
- {
- char *result = NULL;
-- int i, j;
-+ int j = -1;
-
- T((T_CALLED("tgetstr(%s,%p)"), id, (void *) area));
-- if (HasTInfoTerminal(SP_PARM)) {
-+ if (HasTInfoTerminal(SP_PARM) && ValidCap(id)) {
- TERMTYPE *tp = &(TerminalOf(SP_PARM)->type);
- struct name_table_entry const *entry_ptr;
-
-@@ -339,10 +350,10 @@
- }
- #if NCURSES_XNAMES
- else {
-- j = -1;
-+ int i;
- for_each_ext_string(i, tp) {
- const char *capname = ExtStrname(tp, i, strcodes);
-- if (same_tcname(id, capname)) {
-+ if (same_tcname(id, capname) && ValidExt(capname)) {
- j = i;
- break;
- }
-@@ -351,7 +362,7 @@
- #endif
- if (j >= 0) {
- result = tp->Strings[j];
-- TR(TRACE_DATABASE, ("found match : %s", _nc_visbuf(result)));
-+ TR(TRACE_DATABASE, ("found match %d: %s", j, _nc_visbuf(result)));
- /* setupterm forces canceled strings to null */
- if (VALID_STRING(result)) {
- if (result == exit_attribute_mode
-@@ -361,7 +372,7 @@
- }
- if (area != 0
- && *area != 0) {
-- (void) strcpy(*area, result);
-+ _nc_STRCPY(*area, result, 1024);
- result = *area;
- *area += strlen(*area) + 1;
- }
-Index: ncurses/tinfo/lib_tgoto.c
-Prereq: 1.13
---- ncurses-5.9/ncurses/tinfo/lib_tgoto.c 2008-08-16 19:29:32.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_tgoto.c 2012-02-24 02:08:08.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2000-2006,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 2000-2008,2012 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 *
-@@ -35,7 +35,7 @@
- #include <ctype.h>
- #include <termcap.h>
-
--MODULE_ID("$Id: lib_tgoto.c,v 1.13 2008/08/16 19:29:32 tom Exp $")
-+MODULE_ID("$Id: lib_tgoto.c,v 1.16 2012/02/24 02:08:08 tom Exp $")
-
- #if !PURE_TERMINFO
- static bool
-@@ -159,7 +159,8 @@
- break;
- }
- if (fmt != 0) {
-- sprintf(result + used, fmt, *value++);
-+ _nc_SPRINTF(result + used, _nc_SLIMIT(length - used)
-+ fmt, *value++);
- used += strlen(result + used);
- fmt = 0;
- }
-@@ -174,7 +175,7 @@
- }
- if (result != 0) {
- if (need_BC) {
-- strcpy(result + used, BC);
-+ _nc_STRCPY(result + used, BC, length - used);
- used += strlen(BC);
- }
- result[used] = '\0';
-Index: ncurses/tinfo/lib_ti.c
-Prereq: 1.29
---- ncurses-5.9/ncurses/tinfo/lib_ti.c 2010-01-23 17:57:43.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_ti.c 2013-06-08 16:55:05.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 *
-@@ -36,7 +36,7 @@
-
- #include <tic.h>
-
--MODULE_ID("$Id: lib_ti.c,v 1.29 2010/01/23 17:57:43 tom Exp $")
-+MODULE_ID("$Id: lib_ti.c,v 1.30 2013/06/08 16:55:05 tom Exp $")
-
- #if 0
- static bool
-@@ -53,7 +53,7 @@
- NCURSES_SP_NAME(tigetflag) (NCURSES_SP_DCLx NCURSES_CONST char *str)
- {
- int result = ABSENT_BOOLEAN;
-- int i, j;
-+ int j = -1;
-
- T((T_CALLED("tigetflag(%p, %s)"), (void *) SP_PARM, str));
-
-@@ -67,7 +67,7 @@
- }
- #if NCURSES_XNAMES
- else {
-- j = -1;
-+ int i;
- for_each_ext_boolean(i, tp) {
- const char *capname = ExtBoolname(tp, i, boolnames);
- if (same_name(str, capname)) {
-@@ -97,7 +97,7 @@
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(tigetnum) (NCURSES_SP_DCLx NCURSES_CONST char *str)
- {
-- int i, j;
-+ int j = -1;
- int result = CANCELLED_NUMERIC; /* Solaris returns a -1 on error */
-
- T((T_CALLED("tigetnum(%p, %s)"), (void *) SP_PARM, str));
-@@ -112,7 +112,7 @@
- }
- #if NCURSES_XNAMES
- else {
-- j = -1;
-+ int i;
- for_each_ext_number(i, tp) {
- const char *capname = ExtNumname(tp, i, numnames);
- if (same_name(str, capname)) {
-@@ -145,7 +145,7 @@
- NCURSES_SP_NAME(tigetstr) (NCURSES_SP_DCLx NCURSES_CONST char *str)
- {
- char *result = CANCELLED_STRING;
-- int i, j;
-+ int j = -1;
-
- T((T_CALLED("tigetstr(%p, %s)"), (void *) SP_PARM, str));
-
-@@ -159,7 +159,7 @@
- }
- #if NCURSES_XNAMES
- else {
-- j = -1;
-+ int i;
- for_each_ext_string(i, tp) {
- const char *capname = ExtStrname(tp, i, strnames);
- if (same_name(str, capname)) {
-Index: ncurses/tinfo/lib_tparm.c
-Prereq: 1.82
---- ncurses-5.9/ncurses/tinfo/lib_tparm.c 2011-01-15 22:19:12.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_tparm.c 2014-10-11 03:04:31.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -42,7 +42,7 @@
- #include <ctype.h>
- #include <tic.h>
-
--MODULE_ID("$Id: lib_tparm.c,v 1.82 2011/01/15 22:19:12 tom Exp $")
-+MODULE_ID("$Id: lib_tparm.c,v 1.93 2014/10/11 03:04:31 tom Exp $")
-
- /*
- * char *
-@@ -53,7 +53,7 @@
- *
- * Cursor addressing and other strings requiring parame-
- * ters in the terminal are described by a parameterized string
-- * capability, with like escapes %x in it. For example, to
-+ * capability, with escapes like %x in it. For example, to
- * address the cursor, the cup 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
-@@ -107,6 +107,7 @@
- NCURSES_EXPORT_VAR(int) _nc_tparm_err = 0;
-
- #define TPS(var) _nc_prescreen.tparm_state.var
-+#define popcount _nc_popcount /* workaround for NetBSD 6.0 defect */
-
- #if NO_LEAKS
- NCURSES_EXPORT(void)
-@@ -128,9 +129,7 @@
- need += TPS(out_used);
- if (need > TPS(out_size)) {
- TPS(out_size) = need * 2;
-- TPS(out_buff) = typeRealloc(char, TPS(out_size), TPS(out_buff));
-- if (TPS(out_buff) == 0)
-- _nc_err_abort(MSG_NO_MEMORY);
-+ TYPE_REALLOC(char, TPS(out_size), TPS(out_buff));
- }
- }
-
-@@ -143,7 +142,9 @@
-
- get_space(s_len + 1);
-
-- (void) sprintf(TPS(out_buff) + TPS(out_used), fmt, s);
-+ _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));
- }
-
-@@ -153,9 +154,11 @@
- if (len < 30)
- len = 30; /* actually log10(MAX_INT)+1 */
-
-- get_space((unsigned) len + 1);
-+ get_space((size_t) len + 1);
-
-- (void) sprintf(TPS(out_buff) + TPS(out_used), fmt, number);
-+ _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));
- }
-
-@@ -164,7 +167,7 @@
- {
- if (c == 0)
- c = 0200;
-- get_space(1);
-+ get_space((size_t) 1);
- TPS(out_buff)[TPS(out_used)++] = (char) c;
- }
-
-@@ -250,6 +253,9 @@
- case 'x': /* FALLTHRU */
- case 'X': /* FALLTHRU */
- case 's':
-+#ifdef EXP_XTERM_1005
-+ case 'u':
-+#endif
- *format++ = *s;
- done = TRUE;
- break;
-@@ -369,6 +375,9 @@
- case 'x': /* FALLTHRU */
- case 'X': /* FALLTHRU */
- case 'c': /* FALLTHRU */
-+#ifdef EXP_XTERM_1005
-+ case 'u':
-+#endif
- if (lastpop <= 0)
- number++;
- lastpop = -1;
-@@ -450,7 +459,7 @@
- }
-
- static NCURSES_INLINE char *
--tparam_internal(bool use_TPARM_ARG, const char *string, va_list ap)
-+tparam_internal(int use_TPARM_ARG, const char *string, va_list ap)
- {
- char *p_is_s[NUM_PARM];
- TPARM_ARG param[NUM_PARM];
-@@ -463,6 +472,8 @@
- int i;
- const char *cp = string;
- size_t len2;
-+ bool termcap_hack;
-+ bool incremented_two;
-
- if (cp == NULL)
- return NULL;
-@@ -479,6 +490,8 @@
- if (TPS(fmt_buff) == 0)
- return NULL;
-
-+ incremented_two = FALSE;
-+
- if (number > NUM_PARM)
- number = NUM_PARM;
- if (popcount > NUM_PARM)
-@@ -511,7 +524,9 @@
- * style, which means tparam() will expand termcap strings OK.
- */
- TPS(stack_ptr) = 0;
-+ termcap_hack = FALSE;
- if (popcount == 0) {
-+ termcap_hack = TRUE;
- popcount = number;
- for (i = number - 1; i >= 0; i--) {
- if (p_is_s[i])
-@@ -522,7 +537,7 @@
- }
- #ifdef TRACE
- if (USE_TRACEF(TRACE_CALLS)) {
-- for (i = 0; i < popcount; i++) {
-+ for (i = 0; i < num_args; i++) {
- if (p_is_s[i] != 0)
- save_text(", %s", _nc_visbuf(p_is_s[i]), 0);
- else
-@@ -558,8 +573,22 @@
- save_char(npop());
- break;
-
-+#ifdef EXP_XTERM_1005
-+ case 'u':
-+ {
-+ unsigned char target[10];
-+ unsigned source = (unsigned) npop();
-+ int rc = _nc_conv_to_utf8(target, source, (unsigned)
-+ sizeof(target));
-+ int n;
-+ for (n = 0; n < rc; ++n) {
-+ save_char(target[n]);
-+ }
-+ }
-+ break;
-+#endif
- case 'l':
-- save_number("%d", (int) strlen(spop()), 0);
-+ npush((int) strlen(spop()));
- break;
-
- case 's':
-@@ -570,10 +599,11 @@
- cp++;
- i = (UChar(*cp) - '1');
- if (i >= 0 && i < NUM_PARM) {
-- if (p_is_s[i])
-+ if (p_is_s[i]) {
- spush(p_is_s[i]);
-- else
-+ } else {
- npush((int) param[i]);
-+ }
- }
- break;
-
-@@ -688,10 +718,26 @@
- break;
-
- case 'i':
-- if (p_is_s[0] == 0)
-- param[0]++;
-- if (p_is_s[1] == 0)
-- param[1]++;
-+ /*
-+ * Increment the first two parameters -- if they are numbers
-+ * rather than strings. As a side effect, assign into the
-+ * stack; if this is termcap, then the stack was populated
-+ * using the termcap hack above rather than via the terminfo
-+ * 'p' case.
-+ */
-+ if (!incremented_two) {
-+ incremented_two = TRUE;
-+ if (p_is_s[0] == 0) {
-+ param[0]++;
-+ if (termcap_hack)
-+ TPS(stack)[0].data.num = (int) param[0];
-+ }
-+ if (p_is_s[1] == 0) {
-+ param[1]++;
-+ if (termcap_hack)
-+ TPS(stack)[1].data.num = (int) param[1];
-+ }
-+ }
- break;
-
- case '?':
-@@ -757,7 +803,7 @@
- cp++;
- } /* endwhile (*cp) */
-
-- get_space(1);
-+ get_space((size_t) 1);
- TPS(out_buff)[TPS(out_used)] = '\0';
-
- T((T_RETURN("%s"), _nc_visbuf(TPS(out_buff))));
-Index: ncurses/tinfo/lib_tputs.c
-Prereq: 1.81
---- ncurses-5.9/ncurses/tinfo/lib_tputs.c 2010-12-20 00:42:50.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_tputs.c 2013-01-12 20:57:32.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -51,7 +51,7 @@
- #include <termcap.h> /* ospeed */
- #include <tic.h>
-
--MODULE_ID("$Id: lib_tputs.c,v 1.81 2010/12/20 00:42:50 tom Exp $")
-+MODULE_ID("$Id: lib_tputs.c,v 1.93 2013/01/12 20:57:32 tom Exp $")
-
- NCURSES_EXPORT_VAR(char) PC = 0; /* used by termcap library */
- NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed = 0; /* used by termcap library */
-@@ -119,7 +119,17 @@
- NCURSES_EXPORT(void)
- NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_DCL0)
- {
-- (void) fflush(NC_OUTPUT(SP_PARM));
-+ if (SP_PARM != 0 && SP_PARM->_ofd >= 0) {
-+ if (SP_PARM->out_inuse) {
-+ size_t amount = SP->out_inuse;
-+ /*
-+ * Help a little, if the write is interrupted, by first resetting
-+ * our amount.
-+ */
-+ SP->out_inuse = 0;
-+ IGNORE_RC(write(SP_PARM->_ofd, SP_PARM->out_buffer, amount));
-+ }
-+ }
- }
-
- #if NCURSES_SP_FUNCS
-@@ -138,17 +148,23 @@
- COUNT_OUTCHARS(1);
-
- if (HasTInfoTerminal(SP_PARM)
-- && SP_PARM != 0
-- && SP_PARM->_cleanup) {
-- char tmp = (char) ch;
-- /*
-- * POSIX says write() is safe in a signal handler, but the
-- * buffered I/O is not.
-- */
-- if (write(fileno(NC_OUTPUT(SP_PARM)), &tmp, 1) == -1)
-- rc = ERR;
-+ && SP_PARM != 0) {
-+ if (SP_PARM->out_buffer != 0) {
-+ if (SP_PARM->out_inuse + 1 >= SP_PARM->out_limit)
-+ NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG);
-+ SP_PARM->out_buffer[SP_PARM->out_inuse++] = (char) ch;
-+ } else {
-+ char tmp = (char) ch;
-+ /*
-+ * POSIX says write() is safe in a signal handler, but the
-+ * buffered I/O is not.
-+ */
-+ if (write(fileno(NC_OUTPUT(SP_PARM)), &tmp, (size_t) 1) == -1)
-+ rc = ERR;
-+ }
- } else {
-- if (putc(ch, NC_OUTPUT(SP_PARM)) == EOF)
-+ char tmp = (char) ch;
-+ if (write(fileno(stdout), &tmp, (size_t) 1) == -1)
- rc = ERR;
- }
- return rc;
-@@ -162,13 +178,48 @@
- }
- #endif
-
-+/*
-+ * This is used for the putp special case.
-+ */
-+NCURSES_EXPORT(int)
-+NCURSES_SP_NAME(_nc_putchar) (NCURSES_SP_DCLx int ch)
-+{
-+ (void) SP_PARM;
-+ return putchar(ch);
-+}
-+
-+#if NCURSES_SP_FUNCS
-+NCURSES_EXPORT(int)
-+_nc_putchar(int ch)
-+{
-+ return putchar(ch);
-+}
-+#endif
-+
-+/*
-+ * putp is special - per documentation it calls tputs with putchar as the
-+ * parameter for outputting characters. This means that it uses stdio, which
-+ * is not signal-safe. Applications call this entrypoint; we do not call it
-+ * from within the library.
-+ */
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(putp) (NCURSES_SP_DCLx const char *string)
- {
- return NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
-- string, 1, NCURSES_SP_NAME(_nc_outch));
-+ string, 1, NCURSES_SP_NAME(_nc_putchar));
- }
-
-+#if NCURSES_SP_FUNCS
-+NCURSES_EXPORT(int)
-+putp(const char *string)
-+{
-+ return NCURSES_SP_NAME(putp) (CURRENT_SCREEN, string);
-+}
-+#endif
-+
-+/*
-+ * Use these entrypoints rather than "putp" within the library.
-+ */
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_DCLx
- const char *name GCC_UNUSED,
-@@ -178,19 +229,14 @@
-
- if (string != 0) {
- TPUTS_TRACE(name);
-- rc = NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx string);
-+ rc = NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
-+ string, 1, NCURSES_SP_NAME(_nc_outch));
- }
- return rc;
- }
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
--putp(const char *string)
--{
-- return NCURSES_SP_NAME(putp) (CURRENT_SCREEN, string);
--}
--
--NCURSES_EXPORT(int)
- _nc_putp(const char *name, const char *string)
- {
- return NCURSES_SP_NAME(_nc_putp) (CURRENT_SCREEN, name, string);
-@@ -216,9 +262,9 @@
-
- if (USE_TRACEF(TRACE_TPUTS)) {
- if (outc == NCURSES_SP_NAME(_nc_outch))
-- (void) strcpy(addrbuf, "_nc_outch");
-+ _nc_STRCPY(addrbuf, "_nc_outch", sizeof(addrbuf));
- else
-- (void) sprintf(addrbuf, "%p", outc);
-+ _nc_SPRINTF(addrbuf, _nc_SLIMIT(sizeof(addrbuf)) "%p", outc);
- if (_nc_tputs_trace) {
- _tracef("tputs(%s = %s, %d, %s) called", _nc_tputs_trace,
- _nc_visbuf(string), affcnt, addrbuf);
-Index: ncurses/tinfo/lib_ttyflags.c
-Prereq: 1.27
---- ncurses-5.9/ncurses/tinfo/lib_ttyflags.c 2010-12-25 23:43:58.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/lib_ttyflags.c 2014-04-26 18:47:20.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -41,7 +41,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_ttyflags.c,v 1.27 2010/12/25 23:43:58 tom Exp $")
-+MODULE_ID("$Id: lib_ttyflags.c,v 1.30 2014/04/26 18:47:20 juergen Exp $")
-
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(_nc_get_tty_mode) (NCURSES_SP_DCLx TTY * buf)
-@@ -57,7 +57,7 @@
- result = ERR;
- } else {
- #ifdef USE_TERM_DRIVER
-- result = CallDriver_2(SP_PARM, sgmode, FALSE, buf);
-+ result = CallDriver_2(SP_PARM, td_sgmode, FALSE, buf);
- #else
- for (;;) {
- if (GET_TTY(termp->Filedes, buf) != 0) {
-@@ -102,10 +102,14 @@
- result = ERR;
- } else {
- #ifdef USE_TERM_DRIVER
-- result = CallDriver_2(SP_PARM, sgmode, TRUE, buf);
-+ result = CallDriver_2(SP_PARM, td_sgmode, TRUE, buf);
- #else
- for (;;) {
-- if (SET_TTY(termp->Filedes, buf) != 0) {
-+ if ((SET_TTY(termp->Filedes, buf) != 0)
-+#if USE_KLIBC_KBD
-+ && !NC_ISATTY(termp->Filedes)
-+#endif
-+ ) {
- if (errno == EINTR)
- continue;
- if ((errno == ENOTTY) && (SP_PARM != 0))
-@@ -141,7 +145,7 @@
-
- if (termp != 0) {
- #ifdef USE_TERM_DRIVER
-- rc = CallDriver_2(SP_PARM, mode, FALSE, TRUE);
-+ rc = CallDriver_2(SP_PARM, td_mode, FALSE, TRUE);
- #else
- /*
- * If XTABS was on, remove the tab and backtab capabilities.
-@@ -179,7 +183,7 @@
-
- if (termp != 0) {
- #ifdef USE_TERM_DRIVER
-- rc = CallDriver_2(SP_PARM, mode, TRUE, TRUE);
-+ rc = CallDriver_2(SP_PARM, td_mode, TRUE, TRUE);
- #else
- /*
- * Turn off the XTABS bit in the tty structure if it was on.
-@@ -215,13 +219,12 @@
-
- if (termp != 0) {
- #ifdef USE_TERM_DRIVER
-- rc = CallDriver_2(SP_PARM, mode, TRUE, FALSE);
-+ rc = CallDriver_2(SP_PARM, td_mode, TRUE, FALSE);
- #else
- if (_nc_set_tty_mode(&termp->Nttyb) == OK) {
- if (SP_PARM) {
- if (SP_PARM->_keypad_on)
- _nc_keypad(SP_PARM, TRUE);
-- NC_BUFFERED(SP_PARM, TRUE);
- }
- rc = OK;
- }
-@@ -248,12 +251,11 @@
-
- if (termp != 0) {
- #ifdef USE_TERM_DRIVER
-- rc = CallDriver_2(SP_PARM, mode, FALSE, FALSE);
-+ rc = CallDriver_2(SP_PARM, td_mode, FALSE, FALSE);
- #else
- if (SP_PARM) {
- _nc_keypad(SP_PARM, FALSE);
- _nc_flush();
-- NC_BUFFERED(SP_PARM, FALSE);
- }
- rc = _nc_set_tty_mode(&termp->Ottyb);
- #endif
-Index: ncurses/tinfo/make_hash.c
-Prereq: 1.3
---- ncurses-5.9/ncurses/tinfo/make_hash.c 2010-05-22 18:02:50.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/make_hash.c 2013-09-28 20:55:47.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -44,7 +44,7 @@
-
- #include <ctype.h>
-
--MODULE_ID("$Id: make_hash.c,v 1.3 2010/05/22 18:02:50 tom Exp $")
-+MODULE_ID("$Id: make_hash.c,v 1.13 2013/09/28 20:55:47 tom Exp $")
-
- /*
- * _nc_make_hash_table()
-@@ -59,6 +59,24 @@
- #define MODULE_ID(id) /*nothing */
- #include <tinfo/doalloc.c>
-
-+static void
-+failed(const char *s)
-+{
-+ perror(s);
-+ exit(EXIT_FAILURE);
-+}
-+
-+static char *
-+strmalloc(char *s)
-+{
-+ size_t need = strlen(s) + 1;
-+ char *result = malloc(need);
-+ if (result == 0)
-+ failed("strmalloc");
-+ _nc_STRCPY(result, s, need);
-+ return result;
-+}
-+
- /*
- * int hash_function(string)
- *
-@@ -119,6 +137,18 @@
-
- #define MAX_COLUMNS BUFSIZ /* this _has_ to be worst-case */
-
-+static int
-+count_columns(char **list)
-+{
-+ int result = 0;
-+ if (list != 0) {
-+ while (*list++) {
-+ ++result;
-+ }
-+ }
-+ return result;
-+}
-+
- static char **
- parse_columns(char *buffer)
- {
-@@ -126,7 +156,7 @@
-
- int col = 0;
-
-- if (list == 0 && (list = typeCalloc(char *, MAX_COLUMNS)) == 0)
-+ if (list == 0 && (list = typeCalloc(char *, (MAX_COLUMNS + 1))) == 0)
- return (0);
-
- if (*buffer != '#') {
-@@ -201,8 +231,15 @@
- list = parse_columns(buffer);
- if (list == 0) /* blank or comment */
- continue;
-+ if (column > count_columns(list)) {
-+ fprintf(stderr, "expected %d columns, have %d:\n%s\n",
-+ column,
-+ count_columns(list),
-+ buffer);
-+ exit(EXIT_FAILURE);
-+ }
- name_table[n].nte_link = -1; /* end-of-hash */
-- name_table[n].nte_name = strdup(list[column]);
-+ name_table[n].nte_name = strmalloc(list[column]);
- if (!strcmp(list[2], "bool")) {
- name_table[n].nte_type = BOOLEAN;
- name_table[n].nte_index = BoolCount++;
-@@ -256,13 +293,12 @@
- printf("static struct name_table_entry *_nc_%s_table = 0;\n\n", root_name);
- } else {
-
-- printf("static struct name_table_entry %s _nc_%s_table[] =\n",
-- bigstring ? "" : "const",
-+ printf("static struct name_table_entry const _nc_%s_table[] =\n",
- root_name);
- printf("{\n");
- for (n = 0; n < CAPTABSIZE; n++) {
-- sprintf(buffer, "\"%s\"",
-- name_table[n].nte_name);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer)) "\"%s\"",
-+ name_table[n].nte_name);
- printf("\t{ %15s,\t%10s,\t%3d, %3d }%c\n",
- buffer,
- typenames[name_table[n].nte_type],
-Index: ncurses/tinfo/make_keys.c
-Prereq: 1.19
---- ncurses-5.9/ncurses/tinfo/make_keys.c 2010-06-05 22:08:00.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/make_keys.c 2011-10-22 16:34:50.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2011 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 *
-@@ -39,7 +39,7 @@
- #define USE_TERMLIB 1
- #include <build.priv.h>
-
--MODULE_ID("$Id: make_keys.c,v 1.19 2010/06/05 22:08:00 tom Exp $")
-+MODULE_ID("$Id: make_keys.c,v 1.20 2011/10/22 16:34:50 tom Exp $")
-
- #include <names.c>
-
-@@ -76,7 +76,7 @@
- unsigned maxlen = 16;
- int scanned;
-
-- while (fgets(buffer, sizeof(buffer), ifp) != 0) {
-+ while (fgets(buffer, (int) sizeof(buffer), ifp) != 0) {
- if (*buffer == '#')
- continue;
-
-Index: ncurses/tinfo/name_match.c
-Prereq: 1.18
---- ncurses-5.9/ncurses/tinfo/name_match.c 2008-11-16 00:19:59.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/name_match.c 2013-05-25 20:20:08.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1999-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1999-2012,2013 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 *
-@@ -33,25 +33,38 @@
- #include <curses.priv.h>
- #include <tic.h>
-
--MODULE_ID("$Id: name_match.c,v 1.18 2008/11/16 00:19:59 juergen Exp $")
-+MODULE_ID("$Id: name_match.c,v 1.23 2013/05/25 20:20:08 tom Exp $")
-
--/*
-- * _nc_first_name(char *names)
-- *
-- * Extract the primary name from a compiled entry.
-- */
- #define FirstName _nc_globals.first_name
-
-+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES
-+static const char *
-+skip_index(const char *name)
-+{
-+ if ((_nc_syntax == SYN_TERMCAP) && _nc_user_definable) {
-+ const char *bar = strchr(name, '|');
-+ if (bar != 0 && (bar - name) == 2)
-+ name = bar + 1;
-+ }
-+ return name;
-+}
-+#endif
-+
-+/*
-+ * Get the primary name from the given name list. For terminfo, this is the
-+ * first name. For termcap, this may be the second name, if the first one
-+ * happens to be two characters.
-+ */
- NCURSES_EXPORT(char *)
- _nc_first_name(const char *const sp)
--/* get the first name from the given name list */
- {
- unsigned n;
-
- #if NO_LEAKS
- if (sp == 0) {
-- if (FirstName != 0)
-+ if (FirstName != 0) {
- FreeAndNull(FirstName);
-+ }
- } else
- #endif
- {
-@@ -59,8 +72,12 @@
- FirstName = typeMalloc(char, MAX_NAME_SIZE + 1);
-
- if (FirstName != 0) {
-+ const char *src = sp;
-+#if NCURSES_USE_TERMCAP && NCURSES_XNAMES
-+ src = skip_index(sp);
-+#endif
- for (n = 0; n < MAX_NAME_SIZE; n++) {
-- if ((FirstName[n] = sp[n]) == '\0'
-+ if ((FirstName[n] = src[n]) == '\0'
- || (FirstName[n] == '|'))
- break;
- }
-@@ -71,11 +88,8 @@
- }
-
- /*
-- * int _nc_name_match(namelist, name, delim)
-- *
-- * Is the given name matched in namelist?
-+ * Is the given name matched in namelist?
- */
--
- NCURSES_EXPORT(int)
- _nc_name_match(const char *const namelst, const char *const name, const char *const delim)
- {
-Index: ncurses/tinfo/obsolete.c
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/obsolete.c 2014-10-11 02:39:35.000000000 +0000
-@@ -0,0 +1,239 @@
-+/****************************************************************************
-+ * Copyright (c) 2013,2014 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 E. Dickey 2013-on *
-+ ****************************************************************************/
-+
-+/*
-+** Support for obsolete/unusual features.
-+*/
-+
-+#include <curses.priv.h>
-+
-+MODULE_ID("$Id: obsolete.c,v 1.3 2014/10/11 02:39:35 tom Exp $")
-+
-+/*
-+ * Obsolete entrypoint retained for binary compatbility.
-+ */
-+NCURSES_EXPORT(void)
-+NCURSES_SP_NAME(_nc_set_buffer) (NCURSES_SP_DCLx FILE *ofp, int buffered)
-+{
-+#if NCURSES_SP_FUNCS
-+ (void) SP_PARM;
-+#endif
-+ (void) ofp;
-+ (void) buffered;
-+}
-+
-+#if NCURSES_SP_FUNCS
-+NCURSES_EXPORT(void)
-+_nc_set_buffer(FILE *ofp, int buffered)
-+{
-+ NCURSES_SP_NAME(_nc_set_buffer) (CURRENT_SCREEN, ofp, buffered);
-+}
-+#endif
-+
-+#if !HAVE_STRDUP
-+NCURSES_EXPORT(char *)
-+_nc_strdup(const char *s)
-+{
-+ char *result = 0;
-+ if (s != 0) {
-+ size_t need = strlen(s);
-+ result = malloc(need + 1);
-+ if (result != 0) {
-+ strcpy(result, s);
-+ }
-+ }
-+ return result;
-+}
-+#endif
-+
-+#if USE_MY_MEMMOVE
-+#define DST ((char *)s1)
-+#define SRC ((const char *)s2)
-+NCURSES_EXPORT(void *)
-+_nc_memmove(void *s1, const void *s2, size_t n)
-+{
-+ if (n != 0) {
-+ if ((DST + n > SRC) && (SRC + n > DST)) {
-+ static char *bfr;
-+ static size_t length;
-+ register size_t j;
-+ if (length < n) {
-+ length = (n * 3) / 2;
-+ bfr = typeRealloc(char, length, bfr);
-+ }
-+ for (j = 0; j < n; j++)
-+ bfr[j] = SRC[j];
-+ s2 = bfr;
-+ }
-+ while (n-- != 0)
-+ DST[n] = SRC[n];
-+ }
-+ return s1;
-+}
-+#endif /* USE_MY_MEMMOVE */
-+
-+#ifdef EXP_XTERM_1005
-+NCURSES_EXPORT(int)
-+_nc_conv_to_utf8(unsigned char *target, unsigned source, unsigned limit)
-+{
-+#define CH(n) UChar((source) >> ((n) * 8))
-+ int rc = 0;
-+
-+ if (source <= 0x0000007f)
-+ rc = 1;
-+ else if (source <= 0x000007ff)
-+ rc = 2;
-+ else if (source <= 0x0000ffff)
-+ rc = 3;
-+ else if (source <= 0x001fffff)
-+ rc = 4;
-+ else if (source <= 0x03ffffff)
-+ rc = 5;
-+ else /* (source <= 0x7fffffff) */
-+ rc = 6;
-+
-+ if ((unsigned) rc > limit) { /* whatever it is, we cannot decode it */
-+ rc = 0;
-+ }
-+
-+ if (target != 0) {
-+ switch (rc) {
-+ case 1:
-+ target[0] = CH(0);
-+ break;
-+
-+ case 2:
-+ target[1] = UChar(0x80 | (CH(0) & 0x3f));
-+ target[0] = UChar(0xc0 | (CH(0) >> 6) | ((CH(1) & 0x07) << 2));
-+ break;
-+
-+ case 3:
-+ target[2] = UChar(0x80 | (CH(0) & 0x3f));
-+ target[1] = UChar(0x80 | (CH(0) >> 6) | ((CH(1) & 0x0f) << 2));
-+ target[0] = UChar(0xe0 | ((int) (CH(1) & 0xf0) >> 4));
-+ break;
-+
-+ case 4:
-+ target[3] = UChar(0x80 | (CH(0) & 0x3f));
-+ target[2] = UChar(0x80 | (CH(0) >> 6) | ((CH(1) & 0x0f) << 2));
-+ target[1] = UChar(0x80 |
-+ ((int) (CH(1) & 0xf0) >> 4) |
-+ ((int) (CH(2) & 0x03) << 4));
-+ target[0] = UChar(0xf0 | ((int) (CH(2) & 0x1f) >> 2));
-+ break;
-+
-+ case 5:
-+ target[4] = UChar(0x80 | (CH(0) & 0x3f));
-+ target[3] = UChar(0x80 | (CH(0) >> 6) | ((CH(1) & 0x0f) << 2));
-+ target[2] = UChar(0x80 |
-+ ((int) (CH(1) & 0xf0) >> 4) |
-+ ((int) (CH(2) & 0x03) << 4));
-+ target[1] = UChar(0x80 | (CH(2) >> 2));
-+ target[0] = UChar(0xf8 | (CH(3) & 0x03));
-+ break;
-+
-+ case 6:
-+ target[5] = UChar(0x80 | (CH(0) & 0x3f));
-+ target[4] = UChar(0x80 | (CH(0) >> 6) | ((CH(1) & 0x0f) << 2));
-+ target[3] = UChar(0x80 | (CH(1) >> 4) | ((CH(2) & 0x03) << 4));
-+ target[2] = UChar(0x80 | (CH(2) >> 2));
-+ target[1] = UChar(0x80 | (CH(3) & 0x3f));
-+ target[0] = UChar(0xfc | ((int) (CH(3) & 0x40) >> 6));
-+ break;
-+ }
-+ }
-+
-+ return rc; /* number of bytes needed in target */
-+#undef CH
-+}
-+
-+NCURSES_EXPORT(int)
-+_nc_conv_to_utf32(unsigned *target, const char *source, unsigned limit)
-+{
-+#define CH(n) UChar((*target) >> ((n) * 8))
-+ int rc = 0;
-+ int j;
-+ unsigned mask = 0;
-+
-+ /*
-+ * Find the number of bytes we will need from the source.
-+ */
-+ if ((*source & 0x80) == 0) {
-+ rc = 1;
-+ mask = (unsigned) *source;
-+ } else if ((*source & 0xe0) == 0xc0) {
-+ rc = 2;
-+ mask = (unsigned) (*source & 0x1f);
-+ } else if ((*source & 0xf0) == 0xe0) {
-+ rc = 3;
-+ mask = (unsigned) (*source & 0x0f);
-+ } else if ((*source & 0xf8) == 0xf0) {
-+ rc = 4;
-+ mask = (unsigned) (*source & 0x07);
-+ } else if ((*source & 0xfc) == 0xf8) {
-+ rc = 5;
-+ mask = (unsigned) (*source & 0x03);
-+ } else if ((*source & 0xfe) == 0xfc) {
-+ rc = 6;
-+ mask = (unsigned) (*source & 0x01);
-+ }
-+
-+ if ((unsigned) rc > limit) { /* whatever it is, we cannot decode it */
-+ rc = 0;
-+ }
-+
-+ /*
-+ * sanity-check.
-+ */
-+ if (rc > 1) {
-+ for (j = 1; j < rc; j++) {
-+ if ((source[j] & 0xc0) != 0x80)
-+ break;
-+ }
-+ if (j != rc) {
-+ rc = 0;
-+ }
-+ }
-+
-+ if (target != 0) {
-+ int shift = 0;
-+ *target = 0;
-+ for (j = 1; j < rc; j++) {
-+ *target |= (unsigned) (source[rc - j] & 0x3f) << shift;
-+ shift += 6;
-+ }
-+ *target |= mask << shift;
-+ }
-+ return rc;
-+#undef CH
-+}
-+#endif /* EXP_XTERM_1005 */
-Index: ncurses/tinfo/parse_entry.c
-Prereq: 1.75
---- ncurses-5.9/ncurses/tinfo/parse_entry.c 2010-05-01 19:35:09.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/parse_entry.c 2012-10-27 21:43:45.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -47,7 +47,7 @@
- #include <ctype.h>
- #include <tic.h>
-
--MODULE_ID("$Id: parse_entry.c,v 1.75 2010/05/01 19:35:09 tom Exp $")
-+MODULE_ID("$Id: parse_entry.c,v 1.79 2012/10/27 21:43:45 tom Exp $")
-
- #ifdef LINT
- static short const parametrized[] =
-@@ -145,27 +145,27 @@
- case BOOLEAN:
- tp->ext_Booleans++;
- tp->num_Booleans++;
-- tp->Booleans = typeRealloc(NCURSES_SBOOL, tp->num_Booleans, tp->Booleans);
-+ TYPE_REALLOC(NCURSES_SBOOL, tp->num_Booleans, tp->Booleans);
- for_each_value(tp->num_Booleans)
- tp->Booleans[last] = tp->Booleans[last - 1];
- break;
- case NUMBER:
- tp->ext_Numbers++;
- tp->num_Numbers++;
-- tp->Numbers = typeRealloc(short, tp->num_Numbers, tp->Numbers);
-+ TYPE_REALLOC(short, tp->num_Numbers, tp->Numbers);
- for_each_value(tp->num_Numbers)
- tp->Numbers[last] = tp->Numbers[last - 1];
- break;
- case STRING:
- tp->ext_Strings++;
- tp->num_Strings++;
-- tp->Strings = typeRealloc(char *, tp->num_Strings, tp->Strings);
-+ TYPE_REALLOC(char *, tp->num_Strings, tp->Strings);
- for_each_value(tp->num_Strings)
- tp->Strings[last] = tp->Strings[last - 1];
- break;
- }
- actual = NUM_EXT_NAMES(tp);
-- tp->ext_Names = typeRealloc(char *, actual, tp->ext_Names);
-+ TYPE_REALLOC(char *, actual, tp->ext_Names);
- while (--actual > offset)
- tp->ext_Names[actual] = tp->ext_Names[actual - 1];
- tp->ext_Names[offset] = _nc_save_str(name);
-@@ -203,6 +203,8 @@
- { bad_tc_usage = TRUE; \
- _nc_warning("Legacy termcap allows only a trailing tc= clause"); }
-
-+#define MAX_NUMBER 0x7fff /* positive shorts only */
-+
- NCURSES_EXPORT(int)
- _nc_parse_entry(struct entry *entryp, int literal, bool silent)
- {
-@@ -444,8 +446,12 @@
- break;
-
- case NUMBER:
-- entryp->tterm.Numbers[entry_ptr->nte_index] =
-- (short) _nc_curr_token.tk_valnumber;
-+ if (_nc_curr_token.tk_valnumber > MAX_NUMBER) {
-+ entryp->tterm.Numbers[entry_ptr->nte_index] = MAX_NUMBER;
-+ } else {
-+ entryp->tterm.Numbers[entry_ptr->nte_index] =
-+ (short) _nc_curr_token.tk_valnumber;
-+ }
- break;
-
- case STRING:
-@@ -654,14 +660,16 @@
-
- if (WANTED(carriage_return)) {
- if (carriage_return_delay > 0) {
-- sprintf(buf, "%s$<%d>", C_CR, carriage_return_delay);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
-+ "%s$<%d>", C_CR, carriage_return_delay);
- carriage_return = _nc_save_str(buf);
- } else
- carriage_return = _nc_save_str(C_CR);
- }
- if (WANTED(cursor_left)) {
- if (backspace_delay > 0) {
-- sprintf(buf, "%s$<%d>", C_BS, backspace_delay);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
-+ "%s$<%d>", C_BS, backspace_delay);
- cursor_left = _nc_save_str(buf);
- } else if (backspaces_with_bs == 1)
- cursor_left = _nc_save_str(C_BS);
-@@ -674,7 +682,8 @@
- cursor_down = linefeed_if_not_lf;
- else if (linefeed_is_newline != 1) {
- if (new_line_delay > 0) {
-- sprintf(buf, "%s$<%d>", C_LF, new_line_delay);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
-+ "%s$<%d>", C_LF, new_line_delay);
- cursor_down = _nc_save_str(buf);
- } else
- cursor_down = _nc_save_str(C_LF);
-@@ -685,7 +694,8 @@
- cursor_down = linefeed_if_not_lf;
- else if (linefeed_is_newline != 1) {
- if (new_line_delay > 0) {
-- sprintf(buf, "%s$<%d>", C_LF, new_line_delay);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
-+ "%s$<%d>", C_LF, new_line_delay);
- scroll_forward = _nc_save_str(buf);
- } else
- scroll_forward = _nc_save_str(C_LF);
-@@ -694,7 +704,8 @@
- if (WANTED(newline)) {
- if (linefeed_is_newline == 1) {
- if (new_line_delay > 0) {
-- sprintf(buf, "%s$<%d>", C_LF, new_line_delay);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
-+ "%s$<%d>", C_LF, new_line_delay);
- newline = _nc_save_str(buf);
- } else
- newline = _nc_save_str(C_LF);
-@@ -736,7 +747,8 @@
- */
- if (WANTED(tab)) {
- if (horizontal_tab_delay > 0) {
-- sprintf(buf, "%s$<%d>", C_HT, horizontal_tab_delay);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf))
-+ "%s$<%d>", C_HT, horizontal_tab_delay);
- tab = _nc_save_str(buf);
- } else
- tab = _nc_save_str(C_HT);
-Index: ncurses/tinfo/read_entry.c
-Prereq: 1.108
---- ncurses-5.9/ncurses/tinfo/read_entry.c 2011-02-26 15:36:06.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/read_entry.c 2014-06-14 22:30:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -41,11 +41,13 @@
-
- #include <tic.h>
-
--MODULE_ID("$Id: read_entry.c,v 1.108 2011/02/26 15:36:06 tom Exp $")
-+MODULE_ID("$Id: read_entry.c,v 1.128 2014/06/14 22:30:41 tom Exp $")
-
- #define TYPE_CALLOC(type,elts) typeCalloc(type, (unsigned)(elts))
-
--#if USE_DATABASE
-+#define MyNumber(n) (short) LOW_MSB(n)
-+
-+#if NCURSES_USE_DATABASE
- static void
- convert_shorts(char *buf, short *Numbers, int count)
- {
-@@ -56,7 +58,7 @@
- else if (IS_NEG2(buf + 2 * i))
- Numbers[i] = CANCELLED_NUMERIC;
- else
-- Numbers[i] = (short) LOW_MSB(buf + 2 * i);
-+ Numbers[i] = MyNumber(buf + 2 * i);
- TR(TRACE_DATABASE, ("get Numbers[%d]=%d", i, Numbers[i]));
- }
- }
-@@ -72,10 +74,10 @@
- Strings[i] = ABSENT_STRING;
- } else if (IS_NEG2(buf + 2 * i)) {
- Strings[i] = CANCELLED_STRING;
-- } else if ((int) LOW_MSB(buf + 2 * i) > size) {
-+ } else if (MyNumber(buf + 2 * i) > size) {
- Strings[i] = ABSENT_STRING;
- } else {
-- Strings[i] = (LOW_MSB(buf + 2 * i) + table);
-+ Strings[i] = (MyNumber(buf + 2 * i) + table);
- TR(TRACE_DATABASE, ("Strings[%d] = %s", i, _nc_visbuf(Strings[i])));
- }
-
-@@ -99,7 +101,7 @@
- if (have > 0) {
- if ((int) want > have)
- want = (unsigned) have;
-- memcpy(dst, src + *offset, want);
-+ memcpy(dst, src + *offset, (size_t) want);
- *offset += (int) want;
- } else {
- want = 0;
-@@ -107,22 +109,72 @@
- return (int) want;
- }
-
--#define Read(buf, count) fake_read(buffer, &offset, limit, buf, count)
-+#define Read(buf, count) fake_read(buffer, &offset, limit, (char *) buf, (unsigned) count)
-
- #define read_shorts(buf, count) \
-- (Read(buf, (unsigned) (count)*2) == (int) (count)*2)
-+ (Read(buf, (count)*2) == (int) (count)*2)
-
- #define even_boundary(value) \
- if ((value) % 2 != 0) Read(buf, 1)
-+#endif
-+
-+NCURSES_EXPORT(void)
-+_nc_init_termtype(TERMTYPE *const tp)
-+{
-+ unsigned i;
-+
-+#if NCURSES_XNAMES
-+ tp->num_Booleans = BOOLCOUNT;
-+ tp->num_Numbers = NUMCOUNT;
-+ tp->num_Strings = STRCOUNT;
-+ tp->ext_Booleans = 0;
-+ tp->ext_Numbers = 0;
-+ tp->ext_Strings = 0;
-+#endif
-+ if (tp->Booleans == 0)
-+ TYPE_MALLOC(NCURSES_SBOOL, BOOLCOUNT, tp->Booleans);
-+ if (tp->Numbers == 0)
-+ TYPE_MALLOC(short, NUMCOUNT, tp->Numbers);
-+ if (tp->Strings == 0)
-+ TYPE_MALLOC(char *, STRCOUNT, tp->Strings);
-+
-+ for_each_boolean(i, tp)
-+ tp->Booleans[i] = FALSE;
-+
-+ for_each_number(i, tp)
-+ tp->Numbers[i] = ABSENT_NUMERIC;
-+
-+ for_each_string(i, tp)
-+ tp->Strings[i] = ABSENT_STRING;
-+}
-
-+#if NCURSES_USE_DATABASE
-+#if NCURSES_XNAMES
-+static bool
-+valid_shorts(char *buffer, int limit)
-+{
-+ bool result = FALSE;
-+ int n;
-+ for (n = 0; n < limit; ++n) {
-+ if (MyNumber(buffer + (n * 2)) > 0) {
-+ result = TRUE;
-+ break;
-+ }
-+ }
-+ return result;
-+}
-+#endif
-+
-+/*
-+ * Return TGETENT_YES if read, TGETENT_NO if not found or garbled.
-+ */
- NCURSES_EXPORT(int)
- _nc_read_termtype(TERMTYPE *ptr, char *buffer, int limit)
--/* return 1 if read, 0 if not found or garbled */
- {
- int offset = 0;
- int name_size, bool_count, num_count, str_count, str_size;
- int i;
-- char buf[MAX_ENTRY_SIZE + 1];
-+ char buf[MAX_ENTRY_SIZE + 2];
- char *string_table;
- unsigned want, have;
-
-@@ -136,11 +188,11 @@
- return (TGETENT_NO);
- }
-
-- name_size = LOW_MSB(buf + 2);
-- bool_count = LOW_MSB(buf + 4);
-- num_count = LOW_MSB(buf + 6);
-- str_count = LOW_MSB(buf + 8);
-- str_size = LOW_MSB(buf + 10);
-+ name_size = MyNumber(buf + 2);
-+ bool_count = MyNumber(buf + 4);
-+ num_count = MyNumber(buf + 6);
-+ str_count = MyNumber(buf + 8);
-+ str_size = MyNumber(buf + 10);
-
- TR(TRACE_DATABASE,
- ("TERMTYPE name_size=%d, bool=%d/%d, num=%d/%d str=%d/%d(%d)",
-@@ -157,7 +209,7 @@
- want = (unsigned) (str_size + name_size + 1);
- if (str_size) {
- /* try to allocate space for the string table */
-- if (str_count * 2 >= (int) sizeof(buf)
-+ if (str_count * 2 >= MAX_ENTRY_SIZE
- || (string_table = typeMalloc(char, want)) == 0) {
- return (TGETENT_NO);
- }
-@@ -173,7 +225,7 @@
- ptr->str_table = string_table;
- ptr->term_names = string_table;
- if ((have = (unsigned) Read(ptr->term_names, want)) != want) {
-- memset(ptr->term_names + have, 0, want - have);
-+ memset(ptr->term_names + have, 0, (size_t) (want - have));
- }
- ptr->term_names[want] = '\0';
- string_table += (want + 1);
-@@ -203,8 +255,9 @@
- }
- convert_shorts(buf, ptr->Numbers, num_count);
-
-- if ((ptr->Strings = TYPE_CALLOC(char *, max(STRCOUNT, str_count))) == 0)
-- return (TGETENT_NO);
-+ if ((ptr->Strings = TYPE_CALLOC(char *, max(STRCOUNT, str_count))) == 0) {
-+ return (TGETENT_NO);
-+ }
-
- if (str_count) {
- /* grab the string offsets */
-@@ -212,8 +265,9 @@
- return (TGETENT_NO);
- }
- /* finally, grab the string table itself */
-- if (Read(string_table, (unsigned) str_size) != str_size)
-+ if (Read(string_table, (unsigned) str_size) != str_size) {
- return (TGETENT_NO);
-+ }
- convert_strings(buf, ptr->Strings, str_count, str_size, string_table);
- }
- #if NCURSES_XNAMES
-@@ -227,32 +281,33 @@
- */
- even_boundary(str_size);
- TR(TRACE_DATABASE, ("READ extended_header @%d", offset));
-- if (_nc_user_definable && read_shorts(buf, 5)) {
-- int ext_bool_count = LOW_MSB(buf + 0);
-- int ext_num_count = LOW_MSB(buf + 2);
-- int ext_str_count = LOW_MSB(buf + 4);
-- int ext_str_size = LOW_MSB(buf + 6);
-- int ext_str_limit = LOW_MSB(buf + 8);
-+ if (_nc_user_definable && read_shorts(buf, 5) && valid_shorts(buf, 5)) {
-+ int ext_bool_count = MyNumber(buf + 0);
-+ int ext_num_count = MyNumber(buf + 2);
-+ int ext_str_count = MyNumber(buf + 4);
-+ int ext_str_size = MyNumber(buf + 6);
-+ int ext_str_limit = MyNumber(buf + 8);
- unsigned need = (unsigned) (ext_bool_count + ext_num_count + ext_str_count);
- int base = 0;
-
-- if (need >= sizeof(buf)
-- || ext_str_size >= (int) sizeof(buf)
-- || ext_str_limit >= (int) sizeof(buf)
-+ if (need >= (MAX_ENTRY_SIZE / 2)
-+ || ext_str_size >= MAX_ENTRY_SIZE
-+ || ext_str_limit >= MAX_ENTRY_SIZE
- || ext_bool_count < 0
- || ext_num_count < 0
- || ext_str_count < 0
- || ext_str_size < 0
-- || ext_str_limit < 0)
-+ || ext_str_limit < 0) {
- return (TGETENT_NO);
-+ }
-
- ptr->num_Booleans = UShort(BOOLCOUNT + ext_bool_count);
- ptr->num_Numbers = UShort(NUMCOUNT + ext_num_count);
- ptr->num_Strings = UShort(STRCOUNT + ext_str_count);
-
-- ptr->Booleans = typeRealloc(NCURSES_SBOOL, ptr->num_Booleans, ptr->Booleans);
-- ptr->Numbers = typeRealloc(short, ptr->num_Numbers, ptr->Numbers);
-- ptr->Strings = typeRealloc(char *, ptr->num_Strings, ptr->Strings);
-+ TYPE_REALLOC(NCURSES_SBOOL, ptr->num_Booleans, ptr->Booleans);
-+ TYPE_REALLOC(short, ptr->num_Numbers, ptr->Numbers);
-+ TYPE_REALLOC(char *, ptr->num_Strings, ptr->Strings);
-
- TR(TRACE_DATABASE, ("extended header is %d/%d/%d(%d:%d)",
- ext_bool_count, ext_num_count, ext_str_count,
-@@ -262,34 +317,42 @@
- ext_bool_count, offset));
- if ((ptr->ext_Booleans = UShort(ext_bool_count)) != 0) {
- if (Read(ptr->Booleans + BOOLCOUNT, (unsigned)
-- ext_bool_count) != ext_bool_count)
-+ ext_bool_count) != ext_bool_count) {
- return (TGETENT_NO);
-+ }
- }
- even_boundary(ext_bool_count);
-
- TR(TRACE_DATABASE, ("READ %d extended-numbers @%d",
- ext_num_count, offset));
- if ((ptr->ext_Numbers = UShort(ext_num_count)) != 0) {
-- if (!read_shorts(buf, ext_num_count))
-+ if (!read_shorts(buf, ext_num_count)) {
- return (TGETENT_NO);
-+ }
- TR(TRACE_DATABASE, ("Before converting extended-numbers"));
- convert_shorts(buf, ptr->Numbers + NUMCOUNT, ext_num_count);
- }
-
- TR(TRACE_DATABASE, ("READ extended-offsets @%d", offset));
-+ if ((unsigned) (ext_str_count + (int) need) >= (MAX_ENTRY_SIZE / 2)) {
-+ return (TGETENT_NO);
-+ }
- if ((ext_str_count || need)
-- && !read_shorts(buf, ext_str_count + (int) need))
-+ && !read_shorts(buf, ext_str_count + (int) need)) {
- return (TGETENT_NO);
-+ }
-
- TR(TRACE_DATABASE, ("READ %d bytes of extended-strings @%d",
- ext_str_limit, offset));
-
- if (ext_str_limit) {
- ptr->ext_str_table = typeMalloc(char, (size_t) ext_str_limit);
-- if (ptr->ext_str_table == 0)
-+ if (ptr->ext_str_table == 0) {
- return (TGETENT_NO);
-- if (Read(ptr->ext_str_table, (unsigned) ext_str_limit) != ext_str_limit)
-+ }
-+ if (Read(ptr->ext_str_table, (unsigned) ext_str_limit) != ext_str_limit) {
- return (TGETENT_NO);
-+ }
- TR(TRACE_DATABASE, ("first extended-string is %s", _nc_visbuf(ptr->ext_str_table)));
- }
-
-@@ -313,10 +376,12 @@
- }
-
- if (need) {
-- if (ext_str_count >= (MAX_ENTRY_SIZE * 2))
-+ if (ext_str_count >= (MAX_ENTRY_SIZE / 2)) {
-+ return (TGETENT_NO);
-+ }
-+ if ((ptr->ext_Names = TYPE_CALLOC(char *, need)) == 0) {
- return (TGETENT_NO);
-- if ((ptr->ext_Names = TYPE_CALLOC(char *, need)) == 0)
-- return (TGETENT_NO);
-+ }
- TR(TRACE_DATABASE,
- ("ext_NAMES starting @%d in extended_strings, first = %s",
- base, _nc_visbuf(ptr->ext_str_table + base)));
-@@ -326,17 +391,18 @@
- ext_str_limit, ptr->ext_str_table + base);
- }
-
-- T(("...done reading terminfo bool %d(%d) num %d(%d) str %d(%d)",
-- ptr->num_Booleans, ptr->ext_Booleans,
-- ptr->num_Numbers, ptr->ext_Numbers,
-- ptr->num_Strings, ptr->ext_Strings));
-+ TR(TRACE_DATABASE,
-+ ("...done reading terminfo bool %d(%d) num %d(%d) str %d(%d)",
-+ ptr->num_Booleans, ptr->ext_Booleans,
-+ ptr->num_Numbers, ptr->ext_Numbers,
-+ ptr->num_Strings, ptr->ext_Strings));
-
- TR(TRACE_DATABASE, ("extend: num_Booleans:%d", ptr->num_Booleans));
- } else
- #endif /* NCURSES_XNAMES */
- {
-- T(("...done reading terminfo bool %d num %d str %d",
-- bool_count, num_count, str_count));
-+ TR(TRACE_DATABASE, ("...done reading terminfo bool %d num %d str %d",
-+ bool_count, num_count, str_count));
- #if NCURSES_XNAMES
- TR(TRACE_DATABASE, ("normal: num_Booleans:%d", ptr->num_Booleans));
- #endif
-@@ -371,13 +437,13 @@
-
- if (_nc_access(filename, R_OK) < 0
- || (fp = fopen(filename, "rb")) == 0) {
-- T(("cannot open terminfo %s (errno=%d)", filename, errno));
-+ TR(TRACE_DATABASE, ("cannot open terminfo %s (errno=%d)", filename, errno));
- code = TGETENT_NO;
- } else {
- if ((limit = (int) fread(buffer, sizeof(char), sizeof(buffer), fp))
- > 0) {
-
-- T(("read terminfo %s", filename));
-+ TR(TRACE_DATABASE, ("read terminfo %s", filename));
- if ((code = _nc_read_termtype(ptr, buffer, limit)) == TGETENT_NO) {
- _nc_free_termtype(ptr);
- }
-@@ -390,6 +456,58 @@
- return (code);
- }
-
-+#if USE_HASHED_DB
-+/*
-+ * Return if if we can build the filename of a ".db" file.
-+ */
-+static bool
-+make_db_filename(char *filename, unsigned limit, const char *const path)
-+{
-+ static const char suffix[] = DBM_SUFFIX;
-+
-+ size_t lens = sizeof(suffix) - 1;
-+ size_t size = strlen(path);
-+ size_t test = lens + size;
-+ bool result = FALSE;
-+
-+ if (test < limit) {
-+ if (size >= lens
-+ && !strcmp(path + size - lens, suffix))
-+ _nc_STRCPY(filename, path, limit);
-+ else
-+ _nc_SPRINTF(filename, _nc_SLIMIT(limit) "%s%s", path, suffix);
-+ result = TRUE;
-+ }
-+ return result;
-+}
-+#endif
-+
-+/*
-+ * Return true if we can build the name of a filesystem entry.
-+ */
-+static bool
-+make_dir_filename(char *filename,
-+ unsigned limit,
-+ const char *const path,
-+ const char *name)
-+{
-+ bool result = FALSE;
-+
-+#if NCURSES_USE_TERMCAP
-+ if (_nc_is_dir_path(path))
-+#endif
-+ {
-+ unsigned need = (unsigned) (LEAF_LEN + 3 + strlen(path) + strlen(name));
-+
-+ if (need <= limit) {
-+ _nc_SPRINTF(filename, _nc_SLIMIT(limit)
-+ "%s/" LEAF_FMT "/%s", path, *name, name);
-+ result = TRUE;
-+ }
-+ }
-+ return result;
-+}
-+
- /*
- * Build a terminfo pathname and try to read the data. Returns TGETENT_YES on
- * success, TGETENT_NO on failure.
-@@ -401,103 +519,82 @@
- const char *name,
- TERMTYPE *const tp)
- {
-- int result = TGETENT_NO;
--
-- /*
-- * If we are looking in a directory, assume the entry is a file under that,
-- * according to the normal rules.
-- */
-- unsigned need = (unsigned) (LEAF_LEN + 3 + strlen(path) + strlen(name));
-- if (need <= limit)
-- (void) sprintf(filename, "%s/" LEAF_FMT "/%s", path, *name, name);
-+ int code = TGETENT_NO;
-
-- if (_nc_is_dir_path(path))
-- result = _nc_read_file_entry(filename, tp);
- #if USE_HASHED_DB
-- else {
-- static const char suffix[] = DBM_SUFFIX;
-- DB *capdbp;
-- unsigned lens = sizeof(suffix) - 1;
-- unsigned size = strlen(path);
-- unsigned test = lens + size;
--
-- if (test < limit) {
-- if (size >= lens
-- && !strcmp(path + size - lens, suffix))
-- (void) strcpy(filename, path);
-- else
-- (void) sprintf(filename, "%s%s", path, suffix);
-+ DB *capdbp;
-
-- /*
-- * It would be nice to optimize the dbopen/close activity, as
-- * done in the cgetent implementation for tc= clauses. However,
-- * since we support multiple database locations, we cannot do
-- * that.
-- */
-- if ((capdbp = _nc_db_open(filename, FALSE)) != 0) {
-- DBT key, data;
-- int reccnt = 0;
-- char *save = strdup(name);
--
-- memset(&key, 0, sizeof(key));
-- key.data = save;
-- key.size = strlen(save);
--
-- /*
-- * This lookup could return termcap data, which we do not want.
-- * We are 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. 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.
-- *
-- * For compiled terminfo, the list of aliases in the second
-- * case will be null-terminated. A termcap entry will not be,
-- * and will run on into the description. So we can easily
-- * distinguish between the two (source/binary) by checking the
-- * lengths.
-- */
-- while (_nc_db_get(capdbp, &key, &data) == 0) {
-- int used = data.size - 1;
-- char *have = (char *) data.data;
--
-- if (*have++ == 0) {
-- if (data.size > key.size
-- && IS_TIC_MAGIC(have)) {
-- result = _nc_read_termtype(tp, have, used);
-- if (result == TGETENT_NO) {
-- _nc_free_termtype(tp);
-- }
-- }
-- break;
-- }
-+ if (make_db_filename(filename, limit, path)
-+ && (capdbp = _nc_db_open(filename, FALSE)) != 0) {
-
-- /*
-- * Just in case we have a corrupt database, do not waste
-- * time with it.
-- */
-- if (++reccnt >= 3)
-- break;
--
-- /*
-- * Prepare for the second level.
-- */
-- key.data = have;
-- key.size = used;
-+ DBT key, data;
-+ int reccnt = 0;
-+ char *save = strdup(name);
-+
-+ memset(&key, 0, sizeof(key));
-+ key.data = save;
-+ key.size = strlen(save);
-+
-+ /*
-+ * This lookup could return termcap data, which we do not want. We are
-+ * 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.
-+ * 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.
-+ *
-+ * For compiled terminfo, the list of aliases in the second case will
-+ * be null-terminated. A termcap entry will not be, and will run on
-+ * into the description. So we can easily distinguish between the two
-+ * (source/binary) by checking the lengths.
-+ */
-+ while (_nc_db_get(capdbp, &key, &data) == 0) {
-+ int used = (int) data.size - 1;
-+ char *have = (char *) data.data;
-+
-+ if (*have++ == 0) {
-+ if (data.size > key.size
-+ && IS_TIC_MAGIC(have)) {
-+ code = _nc_read_termtype(tp, have, used);
-+ if (code == TGETENT_NO) {
-+ _nc_free_termtype(tp);
-+ }
- }
--
-- _nc_db_close(capdbp);
-- free(save);
-+ break;
- }
-+
-+ /*
-+ * Just in case we have a corrupt database, do not waste time with
-+ * it.
-+ */
-+ if (++reccnt >= 3)
-+ break;
-+
-+ /*
-+ * Prepare for the second level.
-+ */
-+ key.data = have;
-+ key.size = used;
- }
-+
-+ free(save);
-+ } else /* may be either filesystem or flat file */
-+#endif
-+ if (make_dir_filename(filename, limit, path, name)) {
-+ code = _nc_read_file_entry(filename, tp);
-+ }
-+#if NCURSES_USE_TERMCAP
-+ else if (code != TGETENT_YES) {
-+ code = _nc_read_termcap_entry(name, tp);
-+ _nc_SPRINTF(filename, _nc_SLIMIT(PATH_MAX)
-+ "%.*s", PATH_MAX - 1, _nc_get_source());
- }
- #endif
-- return result;
-+ return code;
- }
--#endif /* USE_DATABASE */
-+#endif /* NCURSES_USE_DATABASE */
-
- /*
- * _nc_read_entry(char *name, char *filename, TERMTYPE *tp)
-@@ -513,31 +610,35 @@
- {
- int code = TGETENT_NO;
-
-- sprintf(filename, "%.*s", PATH_MAX - 1, name);
-+ _nc_SPRINTF(filename, _nc_SLIMIT(PATH_MAX)
-+ "%.*s", PATH_MAX - 1, name);
-+
- if (strlen(name) == 0
- || strcmp(name, ".") == 0
- || strcmp(name, "..") == 0
- || _nc_pathlast(name) != 0
- || strchr(name, NCURSES_PATHSEP) != 0) {
-- T(("illegal or missing entry name '%s'", name));
-+ TR(TRACE_DATABASE, ("illegal or missing entry name '%s'", name));
- } else {
--#if USE_DATABASE
-- DBDIRS state = dbdTIC;
-- int offset = 0;
-+#if NCURSES_USE_DATABASE
-+ DBDIRS state;
-+ int offset;
- const char *path;
-
-+ _nc_first_db(&state, &offset);
- while ((path = _nc_next_db(&state, &offset)) != 0) {
-+ TR(TRACE_DATABASE, ("_nc_read_tic_entry path=%s, name=%s", path, name));
- code = _nc_read_tic_entry(filename, PATH_MAX, path, name, tp);
- if (code == TGETENT_YES) {
- _nc_last_db();
- break;
- }
- }
--#endif
--#if USE_TERMCAP
-+#elif NCURSES_USE_TERMCAP
- if (code != TGETENT_YES) {
- code = _nc_read_termcap_entry(name, tp);
-- sprintf(filename, "%.*s", PATH_MAX - 1, _nc_get_source());
-+ _nc_SPRINTF(filename, _nc_SLIMIT(PATH_MAX)
-+ "%.*s", PATH_MAX - 1, _nc_get_source());
- }
- #endif
- }
-Index: ncurses/tinfo/read_termcap.c
-Prereq: 1.74
---- ncurses-5.9/ncurses/tinfo/read_termcap.c 2010-01-23 17:57:43.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/read_termcap.c 2013-12-15 00:32:43.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -54,10 +54,9 @@
-
- #include <ctype.h>
- #include <sys/types.h>
--#include <sys/stat.h>
- #include <tic.h>
-
--MODULE_ID("$Id: read_termcap.c,v 1.74 2010/01/23 17:57:43 tom Exp $")
-+MODULE_ID("$Id: read_termcap.c,v 1.89 2013/12/15 00:32:43 tom Exp $")
-
- #if !PURE_TERMINFO
-
-@@ -74,7 +73,7 @@
-
- if (!use_terminfo_vars() || (result = getenv("TERMPATH")) == 0)
- result = TERMPATH;
-- T(("TERMPATH is %s", result));
-+ TR(TRACE_DATABASE, ("TERMPATH is %s", result));
- return result;
- }
-
-@@ -162,7 +161,7 @@
- return (-1);
- }
- gottoprec = 0;
-- (void) strcpy(toprec, ent);
-+ _nc_STRCPY(toprec, ent, topreclen);
- return (0);
- }
-
-@@ -295,7 +294,7 @@
- errno = ENOMEM;
- return (TC_SYS_ERR);
- }
-- (void) strcpy(record, toprec);
-+ _nc_STRCPY(record, toprec, topreclen + BFRAG);
- rp = record + topreclen + 1;
- r_end = rp + BFRAG;
- current = in_array;
-@@ -384,7 +383,14 @@
- c = *bp++;
- if (c == '\n') {
- lineno++;
-- if (rp == record || *(rp - 1) != '\\')
-+ /*
-+ * Unlike BSD 4.3, this ignores a backslash at the
-+ * end of a comment-line. That makes it consistent
-+ * with the rest of ncurses -TD
-+ */
-+ if (rp == record
-+ || *record == '#'
-+ || *(rp - 1) != '\\')
- break;
- }
- *rp++ = c;
-@@ -442,8 +448,10 @@
- break;
- }
-
-- if (!foundit)
-+ if (!foundit) {
-+ free(record);
- return (TC_NOT_FOUND);
-+ }
- }
-
- /*
-@@ -455,7 +463,7 @@
- register int newilen;
- unsigned ilen;
- int diff, iret, tclen, oline;
-- char *icap, *scan, *tc, *tcstart, *tcend;
-+ char *icap = 0, *scan, *tc, *tcstart, *tcend;
-
- /*
- * Loop invariants:
-@@ -468,8 +476,9 @@
- scan = record;
- tc_not_resolved = FALSE;
- for (;;) {
-- if ((tc = _nc_cgetcap(scan, "tc", '=')) == 0)
-+ if ((tc = _nc_cgetcap(scan, "tc", '=')) == 0) {
- break;
-+ }
-
- /*
- * Find end of tc=name and stomp on the trailing `:'
-@@ -486,6 +495,7 @@
- tclen = s - tcstart;
- tcend = s;
-
-+ icap = 0;
- iret = _nc_getent(&icap, &ilen, &oline, current, db_array, fd,
- tc, depth + 1, 0);
- newicap = icap; /* Put into a register. */
-@@ -496,12 +506,13 @@
- if (myfd)
- (void) close(fd);
- free(record);
-+ FreeIfNeeded(icap);
- return (iret);
- }
-- if (iret == TC_UNRESOLVED)
-+ if (iret == TC_UNRESOLVED) {
- tc_not_resolved = TRUE;
-- /* couldn't resolve tc */
-- if (iret == TC_NOT_FOUND) {
-+ /* couldn't resolve tc */
-+ } else if (iret == TC_NOT_FOUND) {
- *(s - 1) = ':';
- scan = s - 1;
- tc_not_resolved = TRUE;
-@@ -581,8 +592,9 @@
- }
-
- *cap = record;
-- if (tc_not_resolved)
-+ if (tc_not_resolved) {
- return (TC_UNRESOLVED);
-+ }
- return (current);
- }
-
-@@ -697,8 +709,6 @@
- #define PVECSIZ 32 /* max number of names in path */
- #define TBUFSIZ (2048*2)
-
--static char *tbuf;
--
- /*
- * On entry, srcp points to a non ':' character which is the beginning of the
- * token, if any. We'll try to return a string that doesn't end with a ':'.
-@@ -760,7 +770,7 @@
- dst = 0;
- break;
- }
-- *dst++ = ch;
-+ *dst++ = (char) ch;
- }
- return dst;
- }
-@@ -776,18 +786,16 @@
- register char *p;
- register char *cp;
- char *dummy = NULL;
-- char **fname;
-+ CGETENT_CONST char **fname;
- char *home;
- int i;
- char pathbuf[PBUFSIZ]; /* holds raw path of filenames */
-- char *pathvec[PVECSIZ]; /* to point to names in pathbuf */
-- char **pvec; /* holds usable tail of path vector */
-+ CGETENT_CONST char *pathvec[PVECSIZ]; /* point to names in pathbuf */
- NCURSES_CONST char *termpath;
- string_desc desc;
-
-+ *lineno = 1;
- fname = pathvec;
-- pvec = pathvec;
-- tbuf = bp;
- p = pathbuf;
- cp = use_terminfo_vars()? getenv("TERMCAP") : NULL;
-
-@@ -812,10 +820,11 @@
- if ((home = getenv("HOME")) != 0 && *home != '\0'
- && strchr(home, ' ') == 0
- && strlen(home) < sizeof(temp) - 10) { /* setup path */
-- sprintf(temp, "%s/", home); /* $HOME first */
-+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp))
-+ "%s/", home); /* $HOME first */
- }
- /* if no $HOME look in current directory */
-- strcat(temp, ".termcap");
-+ _nc_STRCAT(temp, ".termcap", sizeof(temp));
- _nc_safe_strcat(&desc, temp);
- _nc_safe_strcat(&desc, " ");
- _nc_safe_strcat(&desc, get_termpath());
-@@ -841,6 +850,9 @@
- }
- }
- *fname = 0; /* mark end of vector */
-+#if !HAVE_BSD_CGETENT
-+ (void) _nc_cgetset(0);
-+#endif
- if (_nc_is_abs_path(cp)) {
- if (_nc_cgetset(cp) < 0) {
- return (TC_SYS_ERR);
-@@ -853,6 +865,7 @@
- * empty fields, and mistakenly use the last valid cap entry instead of
- * the first (breaks tc= includes)
- */
-+ *bp = '\0';
- if (i >= 0) {
- char *pd, *ps, *tok;
- int endflag = FALSE;
-@@ -874,7 +887,7 @@
- }
- if (ignore != TRUE) {
- list[count++] = tok;
-- pd = copy_tc_token(pd, tok, TBUFSIZ - (2 + pd - bp));
-+ pd = copy_tc_token(pd, tok, (size_t) (TBUFSIZ - (2 + pd - bp)));
- if (pd == 0) {
- i = -1;
- break;
-@@ -932,7 +945,7 @@
- if (count < MAXPATHS
- && _nc_access(path, R_OK) == 0) {
- termpaths[count++] = path;
-- T(("Adding termpath %s", path));
-+ TR(TRACE_DATABASE, ("Adding termpath %s", path));
- }
- termpaths[count] = 0;
- if (save != 0)
-@@ -956,13 +969,13 @@
- static char *source;
- static int lineno;
-
-- T(("read termcap entry for %s", tn));
-+ TR(TRACE_DATABASE, ("read termcap entry for %s", tn));
-
- if (strlen(tn) == 0
- || strcmp(tn, ".") == 0
- || strcmp(tn, "..") == 0
- || _nc_pathlast(tn) != 0) {
-- T(("illegal or missing entry name '%s'", tn));
-+ TR(TRACE_DATABASE, ("illegal or missing entry name '%s'", tn));
- return TGETENT_NO;
- }
-
-@@ -980,7 +993,7 @@
- _nc_curr_line = lineno;
- _nc_set_source(source);
- }
-- _nc_read_entry_source((FILE *) 0, tc, FALSE, FALSE, NULLHOOK);
-+ _nc_read_entry_source((FILE *) 0, tc, FALSE, TRUE, NULLHOOK);
- #else
- /*
- * Here is what the 4.4BSD termcap(3) page prescribes:
-@@ -1027,7 +1040,9 @@
- normal = FALSE;
- } else if (_nc_name_match(tc, tn, "|:")) { /* treat as a capability file */
- use_buffer = TRUE;
-- (void) sprintf(tc_buf, "%.*s\n", (int) sizeof(tc_buf) - 2, tc);
-+ _nc_SPRINTF(tc_buf,
-+ _nc_SLIMIT(sizeof(tc_buf))
-+ "%.*s\n", (int) sizeof(tc_buf) - 2, tc);
- normal = FALSE;
- }
- }
-@@ -1049,8 +1064,9 @@
- 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 */
-- (void) strcpy(envhome, h);
-- (void) sprintf(pathbuf, PRIVATE_CAP, envhome);
-+ _nc_STRCPY(envhome, h, sizeof(envhome));
-+ _nc_SPRINTF(pathbuf, _nc_SLIMIT(sizeof(pathbuf))
-+ PRIVATE_CAP, envhome);
- ADD_TC(pathbuf, filecount);
- }
- }
-@@ -1063,7 +1079,7 @@
- for (j = 0; j < filecount; j++) {
- bool omit = FALSE;
- if (stat(termpaths[j], &test_stat[j]) != 0
-- || (test_stat[j].st_mode & S_IFMT) != S_IFREG) {
-+ || !S_ISREG(test_stat[j].st_mode)) {
- omit = TRUE;
- } else {
- for (k = 0; k < j; k++) {
-@@ -1075,7 +1091,7 @@
- }
- }
- if (omit) {
-- T(("Path %s is a duplicate", termpaths[j]));
-+ TR(TRACE_DATABASE, ("Path %s is a duplicate", termpaths[j]));
- for (k = j + 1; k < filecount; k++) {
- termpaths[k - 1] = termpaths[k];
- test_stat[k - 1] = test_stat[k];
-@@ -1100,7 +1116,7 @@
-
- for (i = 0; i < filecount; i++) {
-
-- T(("Looking for %s in %s", tn, termpaths[i]));
-+ 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) {
- _nc_set_source(termpaths[i]);
-@@ -1138,8 +1154,7 @@
- * from the list.
- */
- *tp = ep->tterm;
-- _nc_delink_entry(_nc_head, &(ep->tterm));
-- free(ep);
-+ _nc_free_entry(_nc_head, &(ep->tterm));
-
- /*
- * OK, now try to write the type to user's terminfo directory.
-Index: ncurses/tinfo/strings.c
-Prereq: 1.6
---- ncurses-5.9/ncurses/tinfo/strings.c 2007-08-11 17:12:17.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/strings.c 2012-02-22 22:34:31.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2000-2003,2007 Free Software Foundation, Inc. *
-+ * Copyright (c) 2000-2007,2012 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 *
-@@ -36,7 +36,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: strings.c,v 1.6 2007/08/11 17:12:17 tom Exp $")
-+MODULE_ID("$Id: strings.c,v 1.8 2012/02/22 22:34:31 tom Exp $")
-
- /****************************************************************************
- * Useful string functions (especially for mvcur)
-@@ -110,7 +110,7 @@
-
- if (len < dst->s_size) {
- if (dst->s_tail != 0) {
-- strcpy(dst->s_tail, src);
-+ _nc_STRCPY(dst->s_tail, src, dst->s_size);
- dst->s_tail += len;
- }
- dst->s_size -= len;
-@@ -131,7 +131,7 @@
-
- if (len < dst->s_size) {
- if (dst->s_head != 0) {
-- strcpy(dst->s_head, src);
-+ _nc_STRCPY(dst->s_head, src, dst->s_size);
- dst->s_tail = dst->s_head + len;
- }
- dst->s_size = dst->s_init - len;
-Index: ncurses/tinfo/tinfo_driver.c
-Prereq: 1.13
---- ncurses-5.9/ncurses/tinfo/tinfo_driver.c 2010-12-20 01:47:09.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/tinfo_driver.c 2014-09-27 21:58:57.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2013,2014 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 *
-@@ -50,7 +50,7 @@
- # endif
- #endif
-
--MODULE_ID("$Id: tinfo_driver.c,v 1.13 2010/12/20 01:47:09 tom Exp $")
-+MODULE_ID("$Id: tinfo_driver.c,v 1.39 2014/09/27 21:58:57 tom Exp $")
-
- /*
- * SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS,
-@@ -93,7 +93,7 @@
-
- #define TCBMAGIC NCDRV_MAGIC(NCDRV_TINFO)
- #define AssertTCB() assert(TCB!=0 && TCB->magic==TCBMAGIC)
--#define SetSP() assert(TCB->csp!=0); sp = TCB->csp
-+#define SetSP() assert(TCB->csp!=0); sp = TCB->csp; (void) sp
-
- /*
- * This routine needs to do all the work to make curscr look
-@@ -106,21 +106,12 @@
- return TINFO_DOUPDATE(TCB->csp);
- }
-
--#define ret_error(code, fmt, arg) if (errret) {\
-- *errret = code;\
-- return(FALSE); \
-- } else {\
-- fprintf(stderr, fmt, arg);\
-- exit(EXIT_FAILURE);\
-- }
--
--#define ret_error0(code, msg) if (errret) {\
-- *errret = code;\
-- return(FALSE);\
-- } else {\
-- fprintf(stderr, msg);\
-- exit(EXIT_FAILURE);\
-- }
-+static const char *
-+drv_Name(TERMINAL_CONTROL_BLOCK * TCB)
-+{
-+ (void) TCB;
-+ return "tinfo";
-+}
-
- static bool
- drv_CanHandle(TERMINAL_CONTROL_BLOCK * TCB, const char *tname, int *errret)
-@@ -130,12 +121,14 @@
- TERMINAL *termp;
- SCREEN *sp;
-
-+ T((T_CALLED("tinfo::drv_CanHandle(%p)"), TCB));
-+
- assert(TCB != 0 && tname != 0);
- termp = (TERMINAL *) TCB;
- sp = TCB->csp;
- TCB->magic = TCBMAGIC;
-
--#if (USE_DATABASE || USE_TERMCAP)
-+#if (NCURSES_USE_DATABASE || NCURSES_USE_TERMCAP)
- status = _nc_setup_tinfo(tname, &termp->type);
- #else
- status = TGETENT_NO;
-@@ -156,12 +149,12 @@
- if (status == TGETENT_ERR) {
- ret_error0(status, "terminals database is inaccessible\n");
- } else if (status == TGETENT_NO) {
-- ret_error(status, "'%s': unknown terminal type.\n", tname);
-+ ret_error1(status, "unknown terminal type.\n", tname);
- }
- }
- result = TRUE;
- #if !USE_REENTRANT
-- strncpy(ttytype, termp->type.term_names, NAMESIZE - 1);
-+ strncpy(ttytype, termp->type.term_names, (size_t) NAMESIZE - 1);
- ttytype[NAMESIZE - 1] = '\0';
- #endif
-
-@@ -169,17 +162,27 @@
- _nc_tinfo_cmdch(termp, *command_character);
-
- if (generic_type) {
-- ret_error(TGETENT_NO, "'%s': I need something more specific.\n", tname);
-+ /*
-+ * BSD 4.3's termcap contains mis-typed "gn" for wy99. Do a sanity
-+ * check before giving up.
-+ */
-+ if ((VALID_STRING(cursor_address)
-+ || (VALID_STRING(cursor_down) && VALID_STRING(cursor_home)))
-+ && VALID_STRING(clear_screen)) {
-+ ret_error1(TGETENT_YES, "terminal is not really generic.\n", tname);
-+ } else {
-+ ret_error1(TGETENT_NO, "I need something more specific.\n", tname);
-+ }
- }
- if (hard_copy) {
-- ret_error(TGETENT_YES, "'%s': I can't handle hardcopy terminals.\n", tname);
-+ ret_error1(TGETENT_YES, "I can't handle hardcopy terminals.\n", tname);
- }
-
-- return result;
-+ returnBool(result);
- }
-
- static int
--drv_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB, bool beepFlag)
-+drv_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB, int beepFlag)
- {
- SCREEN *sp;
- int res = ERR;
-@@ -190,22 +193,18 @@
- /* FIXME: should make sure that we are not in altchar mode */
- if (beepFlag) {
- if (bell) {
-- res = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "bell", bell);
-+ res = NCURSES_PUTP2("bell", bell);
- NCURSES_SP_NAME(_nc_flush) (sp);
- } else if (flash_screen) {
-- res = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "flash_screen",
-- flash_screen);
-+ res = NCURSES_PUTP2("flash_screen", flash_screen);
- NCURSES_SP_NAME(_nc_flush) (sp);
- }
- } else {
- if (flash_screen) {
-- res = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "flash_screen",
-- flash_screen);
-+ res = NCURSES_PUTP2("flash_screen", flash_screen);
- NCURSES_SP_NAME(_nc_flush) (sp);
- } else if (bell) {
-- res = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "bell", bell);
-+ res = NCURSES_PUTP2("bell", bell);
- NCURSES_SP_NAME(_nc_flush) (sp);
- }
- }
-@@ -277,7 +276,7 @@
-
- static void
- drv_setcolor(TERMINAL_CONTROL_BLOCK * TCB,
-- bool fore,
-+ int fore,
- int color,
- NCURSES_SP_OUTC outc)
- {
-@@ -321,7 +320,7 @@
- SetSP();
-
- if (orig_pair != 0) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "orig_pair", orig_pair);
-+ NCURSES_PUTP2("orig_pair", orig_pair);
- result = TRUE;
- }
- return result;
-@@ -337,7 +336,7 @@
- SetSP();
-
- if (orig_colors != 0) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "orig_colors", orig_colors);
-+ NCURSES_PUTP2("orig_colors", orig_colors);
- result = TRUE;
- }
- return result;
-@@ -348,14 +347,18 @@
- {
- SCREEN *sp;
- bool useEnv = TRUE;
-+ bool useTioctl = TRUE;
-
- AssertTCB();
- sp = TCB->csp; /* can be null here */
-
- if (sp) {
- useEnv = sp->_use_env;
-- } else
-+ useTioctl = sp->_use_tioctl;
-+ } else {
- useEnv = _nc_prescreen.use_env;
-+ useTioctl = _nc_prescreen.use_tioctl;
-+ }
-
- /* figure out the size of the screen */
- T(("screen size: terminfo lines = %d columns = %d", lines, columns));
-@@ -363,7 +366,7 @@
- *linep = (int) lines;
- *colp = (int) columns;
-
-- if (useEnv) {
-+ if (useEnv || useTioctl) {
- int value;
-
- #ifdef __EMX__
-@@ -371,7 +374,9 @@
- int screendata[2];
- _scrsize(screendata);
- *colp = screendata[0];
-- *linep = screendata[1];
-+ *linep = ((sp != 0 && sp->_filtered)
-+ ? 1
-+ : screendata[1]);
- T(("EMX screen size: environment LINES = %d COLUMNS = %d",
- *linep, *colp));
- }
-@@ -380,7 +385,7 @@
- /* try asking the OS */
- {
- TERMINAL *termp = (TERMINAL *) TCB;
-- if (isatty(termp->Filedes)) {
-+ if (NC_ISATTY(termp->Filedes)) {
- STRUCT_WINSIZE size;
-
- errno = 0;
-@@ -400,19 +405,33 @@
- }
- #endif /* HAVE_SIZECHANGE */
-
-- /*
-- * Finally, look for environment variables.
-- *
-- * Solaris lets users override either dimension with an environment
-- * variable.
-- */
-- if ((value = _nc_getenv_num("LINES")) > 0) {
-- *linep = value;
-- T(("screen size: environment LINES = %d", *linep));
-- }
-- if ((value = _nc_getenv_num("COLUMNS")) > 0) {
-- *colp = value;
-- T(("screen size: environment COLUMNS = %d", *colp));
-+ if (useEnv) {
-+ if (useTioctl) {
-+ /*
-+ * If environment variables are used, update them.
-+ */
-+ if ((sp == 0 || !sp->_filtered) && _nc_getenv_num("LINES") > 0) {
-+ _nc_setenv_num("LINES", *linep);
-+ }
-+ if (_nc_getenv_num("COLUMNS") > 0) {
-+ _nc_setenv_num("COLUMNS", *colp);
-+ }
-+ }
-+
-+ /*
-+ * Finally, look for environment variables.
-+ *
-+ * Solaris lets users override either dimension with an environment
-+ * variable.
-+ */
-+ if ((value = _nc_getenv_num("LINES")) > 0) {
-+ *linep = value;
-+ T(("screen size: environment LINES = %d", *linep));
-+ }
-+ if ((value = _nc_getenv_num("COLUMNS")) > 0) {
-+ *colp = value;
-+ T(("screen size: environment COLUMNS = %d", *colp));
-+ }
- }
-
- /* if we can't get dynamic info about the size, use static */
-@@ -463,7 +482,7 @@
- }
-
- static int
--drv_sgmode(TERMINAL_CONTROL_BLOCK * TCB, bool setFlag, TTY * buf)
-+drv_sgmode(TERMINAL_CONTROL_BLOCK * TCB, int setFlag, TTY * buf)
- {
- SCREEN *sp = TCB->csp;
- TERMINAL *_term = (TERMINAL *) TCB;
-@@ -497,7 +516,7 @@
- }
-
- static int
--drv_mode(TERMINAL_CONTROL_BLOCK * TCB, bool progFlag, bool defFlag)
-+drv_mode(TERMINAL_CONTROL_BLOCK * TCB, int progFlag, int defFlag)
- {
- SCREEN *sp;
- TERMINAL *_term = (TERMINAL *) TCB;
-@@ -527,7 +546,6 @@
- if (sp) {
- if (sp->_keypad_on)
- _nc_keypad(sp, TRUE);
-- NC_BUFFERED(sp, TRUE);
- }
- code = OK;
- }
-@@ -553,7 +571,6 @@
- if (sp) {
- _nc_keypad(sp, FALSE);
- NCURSES_SP_NAME(_nc_flush) (sp);
-- NC_BUFFERED(sp, FALSE);
- }
- code = drv_sgmode(TCB, TRUE, &(_term->Ottyb));
- }
-@@ -620,15 +637,13 @@
- static void
- drv_init(TERMINAL_CONTROL_BLOCK * TCB)
- {
-- SCREEN *sp;
- TERMINAL *trm;
-
- AssertTCB();
-
- trm = (TERMINAL *) TCB;
-- sp = TCB->csp;
-
-- TCB->info.initcolor = initialize_color;
-+ TCB->info.initcolor = VALID_STRING(initialize_color);
- TCB->info.canchange = can_change;
- TCB->info.hascolor = ((VALID_NUMERIC(max_colors) && VALID_NUMERIC(max_pairs)
- && (((set_foreground != NULL)
-@@ -656,8 +671,8 @@
- * _nc_setupscreen(). Do it now anyway, so we can initialize the
- * baudrate.
- */
-- if (isatty(trm->Filedes)) {
-- TCB->drv->mode(TCB, TRUE, TRUE);
-+ if (NC_ISATTY(trm->Filedes)) {
-+ TCB->drv->td_mode(TCB, TRUE, TRUE);
- }
- }
-
-@@ -665,7 +680,7 @@
- #define InPalette(n) ((n) >= 0 && (n) < MAX_PALETTE)
-
- static void
--drv_initpair(TERMINAL_CONTROL_BLOCK * TCB, short pair, short f, short b)
-+drv_initpair(TERMINAL_CONTROL_BLOCK * TCB, int pair, int f, int b)
- {
- SCREEN *sp;
-
-@@ -681,12 +696,11 @@
- tp[f].red, tp[f].green, tp[f].blue,
- tp[b].red, tp[b].green, tp[b].blue));
-
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "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));
-+ 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));
- }
- }
-
-@@ -712,23 +726,22 @@
-
- static void
- drv_initcolor(TERMINAL_CONTROL_BLOCK * TCB,
-- short color, short r, short g, short b)
-+ int color, int r, int g, int b)
- {
- SCREEN *sp = TCB->csp;
-
- AssertTCB();
- if (initialize_color != NULL) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "initialize_color",
-- TPARM_4(initialize_color, color, r, g, b));
-+ NCURSES_PUTP2("initialize_color",
-+ TPARM_4(initialize_color, color, r, g, b));
- }
- }
-
- static void
- drv_do_color(TERMINAL_CONTROL_BLOCK * TCB,
-- short old_pair,
-- short pair,
-- bool reverse,
-+ int old_pair,
-+ int pair,
-+ int reverse,
- NCURSES_SP_OUTC outc)
- {
- SCREEN *sp = TCB->csp;
-@@ -759,7 +772,7 @@
- if (old_pair >= 0
- && sp != 0
- && NCURSES_SP_NAME(pair_content) (NCURSES_SP_ARGx
-- old_pair,
-+ (short) old_pair,
- &old_fg,
- &old_bg) !=ERR) {
- if ((isDefaultColor(fg) && !isDefaultColor(old_fg))
-@@ -845,7 +858,9 @@
- }
-
- static int
--drv_testmouse(TERMINAL_CONTROL_BLOCK * TCB, int delay)
-+drv_testmouse(TERMINAL_CONTROL_BLOCK * TCB,
-+ int delay
-+ EVENTLIST_2nd(_nc_eventlist * evl))
- {
- int rc = 0;
- SCREEN *sp;
-@@ -860,11 +875,11 @@
- } else
- #endif
- {
-- rc = TCBOf(sp)->drv->twait(TCBOf(sp),
-- TWAIT_MASK,
-- delay,
-- (int *) 0
-- EVENTLIST_2nd(evl));
-+ rc = TCBOf(sp)->drv->td_twait(TCBOf(sp),
-+ TWAIT_MASK,
-+ delay,
-+ (int *) 0
-+ EVENTLIST_2nd(evl));
- #if USE_SYSMOUSE
- if ((sp->_mouse_type == M_SYSMOUSE)
- && (sp->_sysmouse_head < sp->_sysmouse_tail)
-@@ -882,7 +897,7 @@
- {
- SCREEN *sp = TCB->csp;
- AssertTCB();
-- return TINFO_MVCUR(sp, yold, xold, ynew, xnew);
-+ return NCURSES_SP_NAME(_nc_mvcur) (sp, yold, xold, ynew, xnew);
- }
-
- static void
-@@ -892,22 +907,21 @@
-
- AssertTCB();
- if (labnum > 0 && labnum <= num_labels) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "plab_norm",
-- TPARM_2(plab_norm, labnum, text));
-+ NCURSES_PUTP2("plab_norm",
-+ TPARM_2(plab_norm, labnum, text));
- }
- }
-
- static void
--drv_hwlabelOnOff(TERMINAL_CONTROL_BLOCK * TCB, bool OnFlag)
-+drv_hwlabelOnOff(TERMINAL_CONTROL_BLOCK * TCB, int OnFlag)
- {
- SCREEN *sp = TCB->csp;
-
- AssertTCB();
- if (OnFlag) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "label_on", label_on);
-+ NCURSES_PUTP2("label_on", label_on);
- } else {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "label_off", label_off);
-+ NCURSES_PUTP2("label_off", label_off);
- }
- }
-
-@@ -948,6 +962,11 @@
- if (sp && sp->_coloron)
- attrs |= A_COLOR;
-
-+#if USE_ITALIC
-+ if (enter_italics_mode)
-+ attrs |= A_ITALIC;
-+#endif
-+
- return (attrs);
- }
-
-@@ -972,7 +991,7 @@
- AssertTCB();
- assert(sp != 0);
- if (ena_acs != NULL) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx "ena_acs", ena_acs);
-+ NCURSES_PUTP2("ena_acs", ena_acs);
- }
- #if NCURSES_EXT_FUNCS
- /*
-@@ -991,7 +1010,7 @@
- size_t i;
- for (i = 1; i < ACS_LEN; ++i) {
- if (real_map[i] == 0) {
-- real_map[i] = i;
-+ real_map[i] = (chtype) i;
- if (real_map != fake_map) {
- if (sp != 0)
- sp->_screen_acs_map[i] = TRUE;
-@@ -1074,16 +1093,7 @@
-
- if (magic_cookie_glitch > 0) { /* tvi, wyse */
-
-- sp->_xmc_triggers = sp->_ok_attributes & (
-- A_STANDOUT |
-- A_UNDERLINE |
-- A_REVERSE |
-- A_BLINK |
-- A_DIM |
-- A_BOLD |
-- A_INVIS |
-- A_PROTECT
-- );
-+ sp->_xmc_triggers = sp->_ok_attributes & XMC_CONFLICT;
- #if 0
- /*
- * We "should" treat colors as an attribute. The wyse350 (and its
-@@ -1176,7 +1186,7 @@
- if ((pthread_self) && (pthread_kill) && (pthread_equal))
- _nc_globals.read_thread = pthread_self();
- # endif
-- n = read(sp->_ifd, &c2, 1);
-+ n = read(sp->_ifd, &c2, (size_t) 1);
- #if USE_PTHREADS_EINTR
- _nc_globals.read_thread = 0;
- #endif
-@@ -1209,7 +1219,7 @@
- int rc = ERR;
-
- if (value) {
-- rc = NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx name, value);
-+ rc = NCURSES_PUTP2(name, value);
- }
- return rc;
- }
-@@ -1225,7 +1235,7 @@
- }
-
- static int
--drv_kpad(TERMINAL_CONTROL_BLOCK * TCB, bool flag)
-+drv_kpad(TERMINAL_CONTROL_BLOCK * TCB, int flag)
- {
- int ret = ERR;
- SCREEN *sp;
-@@ -1251,7 +1261,7 @@
- }
-
- static int
--drv_keyok(TERMINAL_CONTROL_BLOCK * TCB, int c, bool flag)
-+drv_keyok(TERMINAL_CONTROL_BLOCK * TCB, int c, int flag)
- {
- SCREEN *sp;
- int code = ERR;
-@@ -1264,7 +1274,8 @@
- if (c >= 0) {
- unsigned ch = (unsigned) c;
- if (flag) {
-- while ((s = _nc_expand_try(sp->_key_ok, ch, &count, 0)) != 0
-+ while ((s = _nc_expand_try(sp->_key_ok,
-+ ch, &count, (size_t) 0)) != 0
- && _nc_remove_key(&(sp->_key_ok), ch)) {
- code = _nc_add_to_try(&(sp->_keytry), s, ch);
- free(s);
-@@ -1273,7 +1284,8 @@
- break;
- }
- } else {
-- while ((s = _nc_expand_try(sp->_keytry, ch, &count, 0)) != 0
-+ while ((s = _nc_expand_try(sp->_keytry,
-+ ch, &count, (size_t) 0)) != 0
- && _nc_remove_key(&(sp->_keytry), ch)) {
- code = _nc_add_to_try(&(sp->_key_ok), s, ch);
- free(s);
-@@ -1286,6 +1298,35 @@
- return (code);
- }
-
-+static int
-+drv_cursorSet(TERMINAL_CONTROL_BLOCK * TCB, int vis)
-+{
-+ SCREEN *sp;
-+ int code = ERR;
-+
-+ AssertTCB();
-+ SetSP();
-+
-+ T((T_CALLED("tinfo:drv_cursorSet(%p,%d)"), (void *) SP_PARM, vis));
-+
-+ if (SP_PARM != 0 && IsTermInfo(SP_PARM)) {
-+ switch (vis) {
-+ case 2:
-+ code = NCURSES_PUTP2_FLUSH("cursor_visible", cursor_visible);
-+ break;
-+ case 1:
-+ code = NCURSES_PUTP2_FLUSH("cursor_normal", cursor_normal);
-+ break;
-+ case 0:
-+ code = NCURSES_PUTP2_FLUSH("cursor_invisible", cursor_invisible);
-+ break;
-+ }
-+ } else {
-+ code = ERR;
-+ }
-+ returnCode(code);
-+}
-+
- static bool
- drv_kyExist(TERMINAL_CONTROL_BLOCK * TCB, int key)
- {
-@@ -1300,6 +1341,7 @@
-
- NCURSES_EXPORT_VAR (TERM_DRIVER) _nc_TINFO_DRIVER = {
- TRUE,
-+ drv_Name, /* Name */
- drv_CanHandle, /* CanHandle */
- drv_init, /* init */
- drv_release, /* release */
-@@ -1333,5 +1375,6 @@
- drv_nap, /* nap */
- drv_kpad, /* kpad */
- drv_keyok, /* kyOk */
-- drv_kyExist /* kyExist */
-+ drv_kyExist, /* kyExist */
-+ drv_cursorSet /* cursorSet */
- };
-Index: ncurses/tinfo/trim_sgr0.c
-Prereq: 1.12
---- ncurses-5.9/ncurses/tinfo/trim_sgr0.c 2010-12-25 23:03:57.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/trim_sgr0.c 2012-12-15 20:57:17.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2005-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2005-2010,2012 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 *
-@@ -36,7 +36,7 @@
-
- #include <tic.h>
-
--MODULE_ID("$Id: trim_sgr0.c,v 1.12 2010/12/25 23:03:57 tom Exp $")
-+MODULE_ID("$Id: trim_sgr0.c,v 1.15 2012/12/15 20:57:17 tom Exp $")
-
- #undef CUR
- #define CUR tp->
-@@ -48,21 +48,28 @@
- static char *
- set_attribute_9(TERMTYPE *tp, int flag)
- {
-- const char *result;
-+ const char *value;
-+ char *result;
-
-- if ((result = tparm(set_attributes, 0, 0, 0, 0, 0, 0, 0, 0, flag)) == 0)
-- result = "";
-- return strdup(result);
-+ value = tparm(set_attributes, 0, 0, 0, 0, 0, 0, 0, 0, flag);
-+ if (PRESENT(value))
-+ result = strdup(value);
-+ else
-+ result = 0;
-+ return result;
- }
-
- static int
- is_csi(const char *s)
- {
-- if (UChar(s[0]) == CSI)
-- return 1;
-- else if (s[0] == ESC && s[1] == L_BRACK)
-- return 2;
-- return 0;
-+ int result = 0;
-+ if (s != 0) {
-+ if (UChar(s[0]) == CSI)
-+ result = 1;
-+ else if (s[0] == ESC && s[1] == L_BRACK)
-+ result = 2;
-+ }
-+ return result;
- }
-
- static char *
-@@ -97,7 +104,7 @@
- static bool
- rewrite_sgr(char *s, char *attr)
- {
-- if (PRESENT(s)) {
-+ if (s != 0) {
- if (PRESENT(attr)) {
- size_t len_s = strlen(s);
- size_t len_a = strlen(attr);
-@@ -108,7 +115,7 @@
- for (n = 0; n < len_s - len_a; ++n) {
- s[n] = s[n + len_a];
- }
-- strcpy(s + n, attr);
-+ _nc_STRCPY(s + n, attr, strlen(s) + 1);
- TR(TRACE_DATABASE, ("to:\n\t%s", s));
- }
- }
-@@ -121,33 +128,35 @@
- similar_sgr(char *a, char *b)
- {
- bool result = FALSE;
-- int csi_a = is_csi(a);
-- int csi_b = is_csi(b);
-- size_t len_a;
-- size_t len_b;
--
-- TR(TRACE_DATABASE, ("similar_sgr:\n\t%s\n\t%s",
-- _nc_visbuf2(1, a),
-- _nc_visbuf2(2, b)));
-- if (csi_a != 0 && csi_b != 0 && csi_a == csi_b) {
-- a += csi_a;
-- b += csi_b;
-- if (*a != *b) {
-- a = skip_zero(a);
-- b = skip_zero(b);
-+ if (a != 0 && b != 0) {
-+ int csi_a = is_csi(a);
-+ int csi_b = is_csi(b);
-+ size_t len_a;
-+ size_t len_b;
-+
-+ TR(TRACE_DATABASE, ("similar_sgr:\n\t%s\n\t%s",
-+ _nc_visbuf2(1, a),
-+ _nc_visbuf2(2, b)));
-+ if (csi_a != 0 && csi_b != 0 && csi_a == csi_b) {
-+ a += csi_a;
-+ b += csi_b;
-+ if (*a != *b) {
-+ a = skip_zero(a);
-+ b = skip_zero(b);
-+ }
- }
-+ len_a = strlen(a);
-+ len_b = strlen(b);
-+ if (len_a && len_b) {
-+ if (len_a > len_b)
-+ result = (strncmp(a, b, len_b) == 0);
-+ else
-+ result = (strncmp(a, b, len_a) == 0);
-+ }
-+ TR(TRACE_DATABASE, ("...similar_sgr: %d\n\t%s\n\t%s", result,
-+ _nc_visbuf2(1, a),
-+ _nc_visbuf2(2, b)));
- }
-- len_a = strlen(a);
-- len_b = strlen(b);
-- if (len_a && len_b) {
-- if (len_a > len_b)
-- result = (strncmp(a, b, len_b) == 0);
-- else
-- result = (strncmp(a, b, len_a) == 0);
-- }
-- TR(TRACE_DATABASE, ("...similar_sgr: %d\n\t%s\n\t%s", result,
-- _nc_visbuf2(1, a),
-- _nc_visbuf2(2, b)));
- return result;
- }
-
-Index: ncurses/tinfo/write_entry.c
-Prereq: 1.78
---- ncurses-5.9/ncurses/tinfo/write_entry.c 2010-12-25 23:23:08.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tinfo/write_entry.c 2014-11-01 14:47:00.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -39,21 +39,15 @@
- #include <curses.priv.h>
- #include <hashed_db.h>
-
--#include <sys/stat.h>
--
- #include <tic.h>
-
--#ifndef S_ISDIR
--#define S_ISDIR(mode) ((mode & S_IFMT) == S_IFDIR)
--#endif
--
- #if 1
- #define TRACE_OUT(p) DEBUG(2, p)
- #else
- #define TRACE_OUT(p) /*nothing */
- #endif
-
--MODULE_ID("$Id: write_entry.c,v 1.78 2010/12/25 23:23:08 tom Exp $")
-+MODULE_ID("$Id: write_entry.c,v 1.92 2014/11/01 14:47:00 tom Exp $")
-
- static int total_written;
-
-@@ -76,7 +70,7 @@
- DEBUG(1, ("Created %s", filename));
-
- if (write_object(tp, buffer, &offset, limit) == ERR
-- || fwrite(buffer, sizeof(char), offset, fp) != offset) {
-+ || fwrite(buffer, sizeof(char), (size_t) offset, fp) != offset) {
- _nc_syserr_abort("error writing %s/%s", _nc_tic_dir(0), filename);
- }
-
-@@ -99,13 +93,13 @@
- char dir[sizeof(LEAF_FMT)];
- char *s = 0;
-
-- if (code == 0 || (s = strchr(dirnames, code)) == 0)
-+ if (code == 0 || (s = (strchr) (dirnames, code)) == 0)
- _nc_err_abort("Illegal terminfo subdirectory \"" LEAF_FMT "\"", code);
-
- if (verified[s - dirnames])
- return;
-
-- sprintf(dir, LEAF_FMT, code);
-+ _nc_SPRINTF(dir, _nc_SLIMIT(sizeof(dir)) LEAF_FMT, code);
- if (make_db_root(dir) < 0) {
- _nc_err_abort("%s/%s: permission denied", _nc_tic_dir(0), dir);
- }
-@@ -115,36 +109,35 @@
- #endif /* !USE_HASHED_DB */
-
- static int
--make_db_path(char *dst, const char *src, unsigned limit)
-+make_db_path(char *dst, const char *src, size_t limit)
- {
- int rc = -1;
- const char *top = _nc_tic_dir(0);
-
- if (src == top || _nc_is_abs_path(src)) {
- if (strlen(src) + 1 <= limit) {
-- (void) strcpy(dst, src);
-+ _nc_STRCPY(dst, src, limit);
- rc = 0;
- }
- } else {
- if (strlen(top) + strlen(src) + 2 <= limit) {
-- (void) sprintf(dst, "%s/%s", top, src);
-+ _nc_SPRINTF(dst, _nc_SLIMIT(limit) "%s/%s", top, src);
- rc = 0;
- }
- }
- #if USE_HASHED_DB
- if (rc == 0) {
-- if (_nc_is_dir_path(dst)) {
-- rc = -1;
-- } else {
-- static const char suffix[] = DBM_SUFFIX;
-- unsigned have = strlen(dst);
-- unsigned need = strlen(suffix);
-- if (have > need && strcmp(dst + have - need, suffix)) {
-- if (have + need <= limit)
-- strcat(dst, suffix);
-- else
-- rc = -1;
-+ static const char suffix[] = DBM_SUFFIX;
-+ size_t have = strlen(dst);
-+ size_t need = strlen(suffix);
-+ if (have > need && strcmp(dst + (int) (have - need), suffix)) {
-+ if (have + need <= limit) {
-+ _nc_STRCAT(dst, suffix, limit);
-+ } else {
-+ rc = -1;
- }
-+ } else if (_nc_is_dir_path(dst)) {
-+ rc = -1;
- }
- }
- #endif
-@@ -164,10 +157,11 @@
- #if USE_HASHED_DB
- DB *capdbp;
-
-- if ((capdbp = _nc_db_open(fullpath, TRUE)) == NULL)
-+ if ((capdbp = _nc_db_open(fullpath, TRUE)) == NULL) {
- rc = -1;
-- else if (_nc_db_close(capdbp) < 0)
-+ } else if (_nc_db_close(capdbp) < 0) {
- rc = -1;
-+ }
- #else
- struct stat statbuf;
-
-@@ -191,13 +185,16 @@
- * Set the write directory for compiled entries.
- */
- NCURSES_EXPORT(void)
--_nc_set_writedir(char *dir)
-+_nc_set_writedir(const char *dir)
- {
- const char *destination;
- char actual[PATH_MAX];
-
- if (dir == 0
-- && use_terminfo_vars())
-+#ifndef USE_ROOT_ENVIRON
-+ && use_terminfo_vars()
-+#endif
-+ )
- dir = getenv("TERMINFO");
-
- if (dir != 0)
-@@ -279,16 +276,21 @@
- char name_list[MAX_TERMINFO_LENGTH];
- char *first_name, *other_names;
- char *ptr;
-+ char *term_names = tp->term_names;
-+ size_t name_size = strlen(term_names);
-
-- assert(strlen(tp->term_names) != 0);
-- assert(strlen(tp->term_names) < sizeof(name_list));
-+ if (name_size == 0) {
-+ _nc_syserr_abort("no terminal name found.");
-+ } else if (name_size >= sizeof(name_list) - 1) {
-+ _nc_syserr_abort("terminal name too long: %s", term_names);
-+ }
-
-- (void) strcpy(name_list, tp->term_names);
-+ _nc_STRCPY(name_list, term_names, sizeof(name_list));
- DEBUG(7, ("Name list = '%s'", name_list));
-
- first_name = name_list;
-
-- ptr = &name_list[strlen(name_list) - 1];
-+ ptr = &name_list[name_size - 1];
- other_names = ptr + 1;
-
- while (ptr > name_list && *ptr != '|')
-@@ -322,8 +324,8 @@
- buffer[0] = 0;
-
- memset(&key, 0, sizeof(key));
-- key.data = tp->term_names;
-- key.size = strlen(tp->term_names);
-+ key.data = term_names;
-+ key.size = name_size;
-
- memset(&data, 0, sizeof(data));
- data.data = buffer;
-@@ -336,8 +338,10 @@
- key.data = name_list;
- key.size = strlen(name_list);
-
-- strcpy(buffer + 1, tp->term_names);
-- data.size = strlen(tp->term_names) + 1;
-+ _nc_STRCPY(buffer + 1,
-+ term_names,
-+ sizeof(buffer) - 1);
-+ data.size = name_size + 1;
-
- _nc_db_put(capdb, &key, &data);
-
-@@ -355,7 +359,6 @@
-
- _nc_db_put(capdb, &key, &data);
- }
-- _nc_db_close(capdb);
- }
- }
- #else /* !USE_HASHED_DB */
-@@ -366,7 +369,8 @@
- if (strlen(first_name) >= sizeof(filename) - (2 + LEAF_LEN))
- _nc_warning("terminal name too long.");
-
-- sprintf(filename, LEAF_FMT "/%s", first_name[0], first_name);
-+ _nc_SPRINTF(filename, _nc_SLIMIT(sizeof(filename))
-+ LEAF_FMT "/%s", first_name[0], first_name);
-
- /*
- * Has this primary name been written since the first call to
-@@ -376,7 +380,22 @@
- if (start_time > 0 &&
- stat(filename, &statbuf) >= 0
- && statbuf.st_mtime >= start_time) {
-+#if HAVE_LINK && !USE_SYMLINKS
-+ /*
-+ * If the file has more than one link, the reason for the previous
-+ * write could be that the current primary name used to be an alias for
-+ * the previous entry. In that case, unlink the file so that we will
-+ * not modify the previous entry as we write this one.
-+ */
-+ if (statbuf.st_nlink > 1) {
-+ _nc_warning("name redefined.");
-+ unlink(filename);
-+ } else {
-+ _nc_warning("name multiply defined.");
-+ }
-+#else
- _nc_warning("name multiply defined.");
-+#endif
- }
-
- check_writeable(first_name[0]);
-@@ -407,7 +426,8 @@
- }
-
- check_writeable(ptr[0]);
-- sprintf(linkname, LEAF_FMT "/%s", ptr[0], ptr);
-+ _nc_SPRINTF(linkname, _nc_SLIMIT(sizeof(linkname))
-+ LEAF_FMT "/%s", ptr[0], ptr);
-
- if (strcmp(filename, linkname) == 0) {
- _nc_warning("self-synonym ignored");
-@@ -422,7 +442,7 @@
- if (first_name[0] == linkname[0])
- strncpy(symlinkname, first_name, sizeof(symlinkname) - 1);
- else {
-- strcpy(symlinkname, "../");
-+ _nc_STRCPY(symlinkname, "../", sizeof(suymlinkname));
- strncat(symlinkname, filename, sizeof(symlinkname) - 4);
- }
- symlinkname[sizeof(symlinkname) - 1] = '\0';
-@@ -491,7 +511,7 @@
- return (want / size);
- }
-
--#define Write(buf, size, count) fake_write(buffer, offset, limit, (char *) buf, count, size)
-+#define Write(buf, size, count) fake_write(buffer, offset, (size_t) limit, (char *) buf, (size_t) count, (size_t) size)
-
- #undef LITTLE_ENDIAN /* BSD/OS defines this as a feature macro */
- #define HI(x) ((x) / 256)
-@@ -706,7 +726,7 @@
- return (ERR);
-
- nextfree = compute_offsets(tp->Strings + STRCOUNT,
-- tp->ext_Strings,
-+ (size_t) tp->ext_Strings,
- offsets);
- TRACE_OUT(("after extended string capabilities, nextfree=%d", nextfree));
-
-@@ -714,7 +734,7 @@
- return (ERR);
-
- nextfree += compute_offsets(tp->ext_Names,
-- extcnt,
-+ (size_t) extcnt,
- offsets + tp->ext_Strings);
- TRACE_OUT(("after extended capnames, nextfree=%d", nextfree));
- strmax = tp->ext_Strings + extcnt;
-@@ -742,7 +762,7 @@
-
- TRACE_OUT(("WRITE %d numbers @%d", tp->ext_Numbers, *offset));
- if (tp->ext_Numbers) {
-- convert_shorts(buf, tp->Numbers + NUMCOUNT, tp->ext_Numbers);
-+ convert_shorts(buf, tp->Numbers + NUMCOUNT, (size_t) tp->ext_Numbers);
- if (Write(buf, 2, tp->ext_Numbers) != tp->ext_Numbers)
- return (ERR);
- }
-Index: ncurses/trace/lib_trace.c
-Prereq: 1.76
---- ncurses-5.9/ncurses/trace/lib_trace.c 2010-12-19 01:21:19.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/lib_trace.c 2013-07-06 19:42:09.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -47,7 +47,7 @@
-
- #include <ctype.h>
-
--MODULE_ID("$Id: lib_trace.c,v 1.76 2010/12/19 01:21:19 tom Exp $")
-+MODULE_ID("$Id: lib_trace.c,v 1.82 2013/07/06 19:42:09 tom Exp $")
-
- NCURSES_EXPORT_VAR(unsigned) _nc_tracing = 0; /* always define this */
-
-@@ -103,9 +103,9 @@
- }
- TracePath[size] = '\0';
- assert(strlen(TracePath) <= size);
-- strcat(TracePath, "/trace");
-+ _nc_STRCAT(TracePath, "/trace", sizeof(TracePath));
- if (_nc_is_dir_path(TracePath)) {
-- strcat(TracePath, ".log");
-+ _nc_STRCAT(TracePath, ".log", sizeof(TracePath));
- }
- }
-
-@@ -121,7 +121,7 @@
- * end of each line. This is useful in case the program dies.
- */
- #if HAVE_SETVBUF /* ANSI */
-- (void) setvbuf(TraceFP, (char *) 0, _IOLBF, 0);
-+ (void) setvbuf(TraceFP, (char *) 0, _IOLBF, (size_t) 0);
- #elif HAVE_SETBUF /* POSIX */
- (void) setbuffer(TraceFP, (char *) 0);
- #endif
-@@ -185,9 +185,9 @@
- if ((pthread_self))
- # endif
- #ifdef __MINGW32__
-- fprintf(TraceFP, "%#lx:", (long) (void *) pthread_self().p);
-+ fprintf(TraceFP, "%#lx:", (long) (intptr_t) pthread_self().p);
- #else
-- fprintf(TraceFP, "%#lx:", (long) (void *) pthread_self());
-+ fprintf(TraceFP, "%#lx:", (long) (intptr_t) pthread_self());
- #endif
- #endif
- if (before || after) {
-@@ -218,7 +218,7 @@
-
- /* Trace 'bool' return-values */
- NCURSES_EXPORT(NCURSES_BOOL)
--_nc_retrace_bool(NCURSES_BOOL code)
-+_nc_retrace_bool(int code)
- {
- T((T_RETURN("%s"), code ? "TRUE" : "FALSE"));
- return code;
-@@ -226,10 +226,10 @@
-
- /* Trace 'char' return-values */
- NCURSES_EXPORT(char)
--_nc_retrace_char(char code)
-+_nc_retrace_char(int code)
- {
- T((T_RETURN("%c"), code));
-- return code;
-+ return (char) code;
- }
-
- /* Trace 'int' return-values */
-@@ -339,8 +339,9 @@
- _nc_va_tracef(fmt, ap);
- va_end(ap);
-
-- if (--(_nc_globals.nested_tracef) == 0)
-+ if (--(_nc_globals.nested_tracef) == 0) {
- _nc_unlock_global(tracef);
-+ }
- }
- #endif /* USE_REENTRANT */
-
-Index: ncurses/trace/lib_traceatr.c
-Prereq: 1.74
---- ncurses-5.9/ncurses/trace/lib_traceatr.c 2011-01-22 19:48:01.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/lib_traceatr.c 2014-02-01 22:09:27.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -43,10 +43,13 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_traceatr.c,v 1.74 2011/01/22 19:48:01 tom Exp $")
-+MODULE_ID("$Id: lib_traceatr.c,v 1.81 2014/02/01 22:09:27 tom Exp $")
-
- #define COLOR_OF(c) ((c < 0) ? "default" : (c > 7 ? color_of(c) : colors[c].name))
-
-+#define TRACE_BUF_SIZE(num) (_nc_globals.tracebuf_ptr[num].size)
-+#define COLOR_BUF_SIZE(num) (sizeof(my_buffer[num]))
-+
- #ifdef TRACE
-
- static const char l_brace[] = StringOf(L_BRACE);
-@@ -65,9 +68,12 @@
- my_cached = c;
- my_select = !my_select;
- if (c == COLOR_DEFAULT)
-- strcpy(my_buffer[my_select], "default");
-+ _nc_STRCPY(my_buffer[my_select], "default",
-+ COLOR_BUF_SIZE(my_select));
- else
-- sprintf(my_buffer[my_select], "color%d", c);
-+ _nc_SPRINTF(my_buffer[my_select],
-+ _nc_SLIMIT(COLOR_BUF_SIZE(my_select))
-+ "color%d", c);
- }
- return my_buffer[my_select];
- }
-@@ -97,6 +103,9 @@
- { A_CHARTEXT, "A_CHARTEXT" },
- { A_NORMAL, "A_NORMAL" },
- { A_COLOR, "A_COLOR" },
-+#if USE_ITALIC
-+ { A_ITALIC, "A_ITALIC" },
-+#endif
- /* *INDENT-ON* */
-
- }
-@@ -120,14 +129,14 @@
- ;
- size_t n;
- char temp[80];
-- char *result = _nc_trace_buf(bufnum, BUFSIZ);
-+ char *result = _nc_trace_buf(bufnum, (size_t) BUFSIZ);
-
- if (result != 0) {
- unsigned save_nc_tracing = _nc_tracing;
-
- _nc_tracing = 0;
-
-- strcpy(result, l_brace);
-+ _nc_STRCPY(result, l_brace, TRACE_BUF_SIZE(bufnum));
-
- for (n = 0; n < SIZEOF(names); n++) {
- if ((newmode & names[n].val) != 0) {
-@@ -139,18 +148,20 @@
- short pairnum = (short) PairNumber(newmode);
- #ifdef USE_TERMLIB
- /* pair_content lives in libncurses */
-- (void) sprintf(temp, "{%d}", pairnum);
-+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp))
-+ "{%d}", pairnum);
- #else
-- short fg, bg;
-+ NCURSES_COLOR_T fg, bg;
-
- if (pair_content(pairnum, &fg, &bg) == OK) {
-- (void) sprintf(temp,
-- "{%d = {%s, %s}}",
-- pairnum,
-- COLOR_OF(fg),
-- COLOR_OF(bg));
-+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp))
-+ "{%d = {%s, %s}}",
-+ pairnum,
-+ COLOR_OF(fg),
-+ COLOR_OF(bg));
- } else {
-- (void) sprintf(temp, "{%d}", pairnum);
-+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp))
-+ "{%d}", pairnum);
- }
- #endif
- result = _nc_trace_bufcat(bufnum, temp);
-@@ -243,7 +254,7 @@
- #if NCURSES_SP_FUNCS
- (void) sp;
- #endif
-- if ((attr & A_ALTCHARSET) && (acs_chars != 0)) {
-+ if (SP_PARM != 0 && (attr & A_ALTCHARSET) && (acs_chars != 0)) {
- char *cp;
- char *found = 0;
- const ALT_NAMES *strp;
-@@ -271,10 +282,10 @@
- _tracechtype2(int bufnum, chtype ch)
- {
- const char *found;
-- char *result = _nc_trace_buf(bufnum, BUFSIZ);
-+ char *result = _nc_trace_buf(bufnum, (size_t) BUFSIZ);
-
- if (result != 0) {
-- strcpy(result, l_brace);
-+ _nc_STRCPY(result, l_brace, TRACE_BUF_SIZE(bufnum));
- if ((found = _nc_altcharset_name(ChAttrOf(ch), ch)) != 0) {
- (void) _nc_trace_bufcat(bufnum, found);
- } else
-@@ -311,12 +322,12 @@
- NCURSES_EXPORT(char *)
- _tracecchar_t2(int bufnum, const cchar_t *ch)
- {
-- char *result = _nc_trace_buf(bufnum, BUFSIZ);
-+ char *result = _nc_trace_buf(bufnum, (size_t) BUFSIZ);
- attr_t attr;
- const char *found;
-
- if (result != 0) {
-- strcpy(result, l_brace);
-+ _nc_STRCPY(result, l_brace, TRACE_BUF_SIZE(bufnum));
- if (ch != 0) {
- attr = AttrOfD(ch);
- if ((found = _nc_altcharset_name(attr, (chtype) CharOfD(ch))) != 0) {
-Index: ncurses/trace/lib_tracebits.c
-Prereq: 1.19
---- ncurses-5.9/ncurses/trace/lib_tracebits.c 2011-01-09 00:23:03.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/lib_tracebits.c 2012-06-09 19:55:46.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -34,11 +34,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_tracebits.c,v 1.19 2011/01/09 00:23:03 tom Exp $")
--
--#if SVR4_TERMIO && !defined(_POSIX_SOURCE)
--#define _POSIX_SOURCE
--#endif
-+MODULE_ID("$Id: lib_tracebits.c,v 1.23 2012/06/09 19:55:46 tom Exp $")
-
- #if HAVE_SYS_TERMIO_H
- #include <sys/termio.h> /* needed for ISC */
-@@ -80,22 +76,24 @@
- const char *name;
- } BITNAMES;
-
-+#define TRACE_BUF_SIZE(num) (_nc_globals.tracebuf_ptr[num].size)
-+
- static void
- lookup_bits(char *buf, const BITNAMES * table, const char *label, unsigned int val)
- {
- const BITNAMES *sp;
-
-- (void) strcat(buf, label);
-- (void) strcat(buf, ": {");
-+ _nc_STRCAT(buf, label, TRACE_BUF_SIZE(0));
-+ _nc_STRCAT(buf, ": {", TRACE_BUF_SIZE(0));
- for (sp = table; sp->name; sp++)
- if (sp->val != 0
- && (val & sp->val) == sp->val) {
-- (void) strcat(buf, sp->name);
-- (void) strcat(buf, ", ");
-+ _nc_STRCAT(buf, sp->name, TRACE_BUF_SIZE(0));
-+ _nc_STRCAT(buf, ", ", TRACE_BUF_SIZE(0));
- }
- if (buf[strlen(buf) - 2] == ',')
- buf[strlen(buf) - 2] = '\0';
-- (void) strcat(buf, "} ");
-+ _nc_STRCAT(buf, "} ", TRACE_BUF_SIZE(0));
- }
-
- NCURSES_EXPORT(char *)
-@@ -192,7 +190,7 @@
- CS_DATA(CS8),
- };
- const char *result = "CSIZE? ";
-- int value = (tty->c_cflag & CSIZE);
-+ int value = (int) (tty->c_cflag & CSIZE);
- unsigned n;
-
- if (value != 0) {
-@@ -203,7 +201,7 @@
- }
- }
- }
-- strcat(buf, result);
-+ _nc_STRCAT(buf, result, TRACE_BUF_SIZE(0));
- }
- #endif
-
-Index: ncurses/trace/lib_tracechr.c
-Prereq: 1.20
---- ncurses-5.9/ncurses/trace/lib_tracechr.c 2009-04-18 22:48:29.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/lib_tracechr.c 2012-02-22 22:40:24.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2012 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 *
-@@ -39,10 +39,12 @@
-
- #include <ctype.h>
-
--MODULE_ID("$Id: lib_tracechr.c,v 1.20 2009/04/18 22:48:29 tom Exp $")
-+MODULE_ID("$Id: lib_tracechr.c,v 1.22 2012/02/22 22:40:24 tom Exp $")
-
- #ifdef TRACE
-
-+#define MyBufSize sizeof(_nc_globals.tracechr_buf)
-+
- NCURSES_EXPORT(char *)
- _nc_tracechar(SCREEN *sp, int ch)
- {
-@@ -55,19 +57,22 @@
- name = safe_keyname(SP_PARM, ch);
- if (name == 0 || *name == '\0')
- name = "NULL";
-- (void) sprintf(MyBuffer, "'%.30s' = %#03o", name, ch);
-+ _nc_SPRINTF(MyBuffer, _nc_SLIMIT(MyBufSize)
-+ "'%.30s' = %#03o", name, ch);
- } else if (!is8bits(ch) || !isprint(UChar(ch))) {
- /*
- * workaround for glibc bug:
- * sprintf changes the result from unctrl() to an empty string if it
- * does not correspond to a valid multibyte sequence.
- */
-- (void) sprintf(MyBuffer, "%#03o", ch);
-+ _nc_SPRINTF(MyBuffer, _nc_SLIMIT(MyBufSize)
-+ "%#03o", ch);
- } else {
- name = safe_unctrl(SP_PARM, (chtype) ch);
- if (name == 0 || *name == 0)
- name = "null"; /* shouldn't happen */
-- (void) sprintf(MyBuffer, "'%.30s' = %#03o", name, ch);
-+ _nc_SPRINTF(MyBuffer, _nc_SLIMIT(MyBufSize)
-+ "'%.30s' = %#03o", name, ch);
- }
- return (MyBuffer);
- }
-Index: ncurses/trace/lib_tracedmp.c
-Prereq: 1.32
---- ncurses-5.9/ncurses/trace/lib_tracedmp.c 2009-04-18 21:01:38.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/lib_tracedmp.c 2012-10-27 20:54:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2012 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 *
-@@ -39,7 +39,7 @@
- #include <curses.priv.h>
- #include <ctype.h>
-
--MODULE_ID("$Id: lib_tracedmp.c,v 1.32 2009/04/18 21:01:38 tom Exp $")
-+MODULE_ID("$Id: lib_tracedmp.c,v 1.34 2012/10/27 20:54:42 tom Exp $")
-
- #ifdef TRACE
-
-@@ -70,6 +70,8 @@
- if (++width + 1 > (int) my_length) {
- my_length = (unsigned) (2 * (width + 1));
- my_buffer = typeRealloc(char, my_length, my_buffer);
-+ if (my_buffer == 0)
-+ return;
- }
-
- for (n = 0; n <= win->_maxy; ++n) {
-@@ -111,7 +113,7 @@
- if (multicolumn) {
- ep = my_buffer;
- for (j = 0; j < width; ++j) {
-- chtype test = WidecExt(win->_line[n].text[j]);
-+ int test = WidecExt(win->_line[n].text[j]);
- if (test) {
- ep[j] = (char) (test + '0');
- } else {
-Index: ncurses/trace/lib_tracemse.c
-Prereq: 1.18
---- ncurses-5.9/ncurses/trace/lib_tracemse.c 2011-01-22 19:48:08.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/lib_tracemse.c 2014-10-10 09:06:26.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -38,16 +38,22 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_tracemse.c,v 1.18 2011/01/22 19:48:08 tom Exp $")
-+MODULE_ID("$Id: lib_tracemse.c,v 1.22 2014/10/10 09:06:26 tom Exp $")
-
- #ifdef TRACE
-
- #define my_buffer sp->tracemse_buf
-
--static char *
--_trace_mmask_t(SCREEN *sp, mmask_t code)
-+NCURSES_EXPORT(char *)
-+_nc_trace_mmask_t(SCREEN *sp, mmask_t code)
- {
--#define SHOW(m, s) if ((code & m) == m) strcat(strcat(my_buffer, s), ", ")
-+#define SHOW(m, s) \
-+ if ((code & m) == m) { \
-+ size_t n = strlen(my_buffer); \
-+ if (n && (my_buffer[n-1] != '{')) \
-+ _nc_STRCAT(my_buffer, ", ", sizeof(my_buffer)); \
-+ _nc_STRCAT(my_buffer, s, sizeof(my_buffer)); \
-+ }
-
- SHOW(BUTTON1_RELEASED, "release-1");
- SHOW(BUTTON1_PRESSED, "press-1");
-@@ -110,23 +116,33 @@
- NCURSES_EXPORT(char *)
- _nc_tracemouse(SCREEN *sp, MEVENT const *ep)
- {
-- (void) sprintf(my_buffer, TRACEMSE_FMT,
-- ep->id,
-- ep->x,
-- ep->y,
-- ep->z,
-- (unsigned long) ep->bstate);
-+ char *result = 0;
-
-- (void) _trace_mmask_t(sp, ep->bstate);
-- (void) strcat(my_buffer, "}");
-- return (my_buffer);
-+ if (sp != 0) {
-+ _nc_SPRINTF(my_buffer, _nc_SLIMIT(sizeof(my_buffer))
-+ TRACEMSE_FMT,
-+ ep->id,
-+ ep->x,
-+ ep->y,
-+ ep->z,
-+ (unsigned long) ep->bstate);
-+
-+ (void) _nc_trace_mmask_t(sp, ep->bstate);
-+ _nc_STRCAT(my_buffer, "}", sizeof(my_buffer));
-+ result = (my_buffer);
-+ }
-+ return result;
- }
-
- NCURSES_EXPORT(mmask_t)
- _nc_retrace_mmask_t(SCREEN *sp, mmask_t code)
- {
-- *my_buffer = '\0';
-- T((T_RETURN("{%s}"), _trace_mmask_t(sp, code)));
-+ if (sp != 0) {
-+ *my_buffer = '\0';
-+ T((T_RETURN("{%s}"), _nc_trace_mmask_t(sp, code)));
-+ } else {
-+ T((T_RETURN("{?}")));
-+ }
- return code;
- }
-
-Index: ncurses/trace/trace_buf.c
-Prereq: 1.17
---- ncurses-5.9/ncurses/trace/trace_buf.c 2011-01-22 19:48:16.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/trace_buf.c 2012-02-22 22:34:31.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -35,7 +35,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: trace_buf.c,v 1.17 2011/01/22 19:48:16 tom Exp $")
-+MODULE_ID("$Id: trace_buf.c,v 1.20 2012/02/22 22:34:31 tom Exp $")
-
- #ifdef TRACE
-
-@@ -103,13 +103,14 @@
- NCURSES_EXPORT(char *)
- _nc_trace_bufcat(int bufnum, const char *value)
- {
-- char *buffer = _nc_trace_alloc(bufnum, 0);
-+ char *buffer = _nc_trace_alloc(bufnum, (size_t) 0);
- if (buffer != 0) {
- size_t have = strlen(buffer);
-+ size_t need = strlen(value) + have;
-
-- buffer = _nc_trace_alloc(bufnum, 1 + have + strlen(value));
-+ buffer = _nc_trace_alloc(bufnum, 1 + need);
- if (buffer != 0)
-- (void) strcpy(buffer + have, value);
-+ _nc_STRCPY(buffer + have, value, need);
-
- }
- return buffer;
-Index: ncurses/trace/trace_tries.c
-Prereq: 1.16
---- ncurses-5.9/ncurses/trace/trace_tries.c 2011-01-09 00:23:27.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/trace_tries.c 2012-10-27 20:50:50.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1999-2009,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1999-2011,2012 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 *
-@@ -35,7 +35,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: trace_tries.c,v 1.16 2011/01/09 00:23:27 tom Exp $")
-+MODULE_ID("$Id: trace_tries.c,v 1.17 2012/10/27 20:50:50 tom Exp $")
-
- #ifdef TRACE
- #define my_buffer _nc_globals.tracetry_buf
-@@ -49,28 +49,31 @@
- my_buffer = (unsigned char *) _nc_doalloc(my_buffer, my_length);
- }
-
-- while (tree != 0) {
-- if ((my_buffer[level] = tree->ch) == 0)
-- my_buffer[level] = 128;
-- my_buffer[level + 1] = 0;
-- if (tree->value != 0) {
-- _tracef("%5d: %s (%s)", tree->value,
-- _nc_visbuf((char *) my_buffer), keyname(tree->value));
-+ if (my_buffer != 0) {
-+ while (tree != 0) {
-+ if ((my_buffer[level] = tree->ch) == 0)
-+ my_buffer[level] = 128;
-+ my_buffer[level + 1] = 0;
-+ if (tree->value != 0) {
-+ _tracef("%5d: %s (%s)", tree->value,
-+ _nc_visbuf((char *) my_buffer), keyname(tree->value));
-+ }
-+ if (tree->child)
-+ recur_tries(tree->child, level + 1);
-+ tree = tree->sibling;
- }
-- if (tree->child)
-- recur_tries(tree->child, level + 1);
-- tree = tree->sibling;
- }
- }
-
- NCURSES_EXPORT(void)
- _nc_trace_tries(TRIES * tree)
- {
-- my_buffer = typeMalloc(unsigned char, my_length = 80);
-- _tracef("BEGIN tries %p", (void *) tree);
-- recur_tries(tree, 0);
-- _tracef(". . . tries %p", (void *) tree);
-- free(my_buffer);
-+ if ((my_buffer = typeMalloc(unsigned char, my_length = 80)) != 0) {
-+ _tracef("BEGIN tries %p", (void *) tree);
-+ recur_tries(tree, 0);
-+ _tracef(". . . tries %p", (void *) tree);
-+ free(my_buffer);
-+ }
- }
-
- #else
-Index: ncurses/trace/varargs.c
-Prereq: 1.8
---- ncurses-5.9/ncurses/trace/varargs.c 2008-11-16 00:19:59.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/varargs.c 2012-10-27 21:03:28.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2001-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 2001-2008,2012 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 *
-@@ -34,7 +34,7 @@
-
- #include <ctype.h>
-
--MODULE_ID("$Id: varargs.c,v 1.8 2008/11/16 00:19:59 juergen Exp $")
-+MODULE_ID("$Id: varargs.c,v 1.11 2012/10/27 21:03:28 tom Exp $")
-
- #ifdef TRACE
-
-@@ -149,25 +149,32 @@
- param = buffer;
- switch (used) {
- case atInteger:
-- sprintf(buffer, "%d", ival);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "%d", ival);
- break;
- case atFloat:
-- sprintf(buffer, "%f", fval);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "%f", fval);
- break;
- case atPoint:
-- sprintf(buffer, "%p", pval);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "%p", pval);
- break;
- case atString:
- param = _nc_visbuf2(1, sval);
- break;
- case atUnknown:
- default:
-- strcpy(buffer, "?");
-+ _nc_STRCPY(buffer, "?", sizeof(buffer));
- break;
- }
- MyLength += strlen(param) + 2;
- MyBuffer = typeRealloc(char, MyLength, MyBuffer);
-- sprintf(MyBuffer + strlen(MyBuffer), ", %s", param);
-+ if (MyBuffer != 0) {
-+ _nc_SPRINTF(MyBuffer + strlen(MyBuffer),
-+ _nc_SLIMIT(MyLength - strlen(MyBuffer))
-+ ", %s", param);
-+ }
- }
- }
- used = atUnknown;
-@@ -177,7 +184,7 @@
- }
- }
-
-- return (MyBuffer);
-+ return (MyBuffer ? MyBuffer : dummy);
- }
- #else
- EMPTY_MODULE(_nc_varargs)
-Index: ncurses/trace/visbuf.c
-Prereq: 1.37
---- ncurses-5.9/ncurses/trace/visbuf.c 2010-05-29 18:51:41.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/trace/visbuf.c 2014-09-25 08:51:13.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2001-2012,2014 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 *
-@@ -42,12 +42,12 @@
- #include <tic.h>
- #include <ctype.h>
-
--MODULE_ID("$Id: visbuf.c,v 1.37 2010/05/29 18:51:41 tom Exp $")
-+MODULE_ID("$Id: visbuf.c,v 1.44 2014/09/25 08:51:13 tom Exp $")
-
- #define NUM_VISBUFS 4
-
- #define NormalLen(len) (size_t) (((size_t)(len) + 1) * 4)
--#define WideLen(len) (size_t) (((size_t)(len) + 1) * 4 * MB_CUR_MAX)
-+#define WideLen(len) (size_t) (((size_t)(len) + 1) * 4 * (size_t) MB_CUR_MAX)
-
- #ifdef TRACE
- static const char d_quote[] = StringOf(D_QUOTE);
-@@ -55,13 +55,21 @@
- static const char r_brace[] = StringOf(R_BRACE);
- #endif
-
-+#if USE_STRING_HACKS && HAVE_SNPRINTF
-+#define VisChar(tp, chr, limit) _nc_vischar(tp, chr, limit)
-+#define LIMIT_ARG ,size_t limit
-+#else
-+#define VisChar(tp, chr, limit) _nc_vischar(tp, chr)
-+#define LIMIT_ARG /* nothing */
-+#endif
-+
- static char *
--_nc_vischar(char *tp, unsigned c)
-+_nc_vischar(char *tp, unsigned c LIMIT_ARG)
- {
- if (c == '"' || c == '\\') {
- *tp++ = '\\';
- *tp++ = (char) c;
-- } else if (is7bits(c) && (isgraph(c) || c == ' ')) {
-+ } else if (is7bits((int) c) && (isgraph((int) c) || c == ' ')) {
- *tp++ = (char) c;
- } else if (c == '\n') {
- *tp++ = '\\';
-@@ -84,7 +92,8 @@
- *tp++ = '^';
- *tp++ = (char) ('@' + c);
- } else {
-- sprintf(tp, "\\%03lo", (unsigned long) ChCharOf(c));
-+ _nc_SPRINTF(tp, _nc_SLIMIT(limit)
-+ "\\%03lo", (unsigned long) ChCharOf(c));
- tp += strlen(tp);
- }
- *tp = 0;
-@@ -97,6 +106,7 @@
- const char *vbuf = 0;
- char *tp;
- int c;
-+ int count;
-
- if (buf == 0)
- return ("(null)");
-@@ -106,6 +116,7 @@
- if (len < 0)
- len = (int) strlen(buf);
-
-+ count = len;
- #ifdef TRACE
- vbuf = tp = _nc_trace_buf(bufnum, NormalLen(len));
- #else
-@@ -124,8 +135,8 @@
- #endif
- if (tp != 0) {
- *tp++ = D_QUOTE;
-- while ((--len >= 0) && (c = *buf++) != '\0') {
-- tp = _nc_vischar(tp, UChar(c));
-+ while ((--count >= 0) && (c = *buf++) != '\0') {
-+ tp = VisChar(tp, UChar(c), NormalLen(len));
- }
- *tp++ = D_QUOTE;
- *tp = '\0';
-@@ -175,6 +186,7 @@
- const char *vbuf;
- char *tp;
- wchar_t c;
-+ int count;
-
- if (buf == 0)
- return ("(null)");
-@@ -182,6 +194,7 @@
- if (len < 0)
- len = (int) wcslen(buf);
-
-+ count = len;
- #ifdef TRACE
- vbuf = tp = _nc_trace_buf(bufnum, WideLen(len));
- #else
-@@ -193,15 +206,16 @@
- #endif
- if (tp != 0) {
- *tp++ = D_QUOTE;
-- while ((--len >= 0) && (c = *buf++) != '\0') {
-+ while ((--count >= 0) && (c = *buf++) != '\0') {
- char temp[CCHARW_MAX + 80];
- int j = wctomb(temp, c), k;
- if (j <= 0) {
-- sprintf(temp, "\\u%08X", (unsigned) c);
-+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp))
-+ "\\u%08X", (unsigned) c);
- j = (int) strlen(temp);
- }
- for (k = 0; k < j; ++k) {
-- tp = _nc_vischar(tp, UChar(temp[k]));
-+ tp = VisChar(tp, UChar(temp[k]), WideLen(len));
- }
- }
- *tp++ = D_QUOTE;
-@@ -248,10 +262,12 @@
- else
- mybuf = typeMalloc(wchar_t, mylen);
- }
-- for (n = 0; buf[n] != 0; ++n) {
-- mybuf[n] = (wchar_t) buf[n];
-+ if (mybuf != 0) {
-+ for (n = 0; buf[n] != 0; ++n) {
-+ mybuf[n] = (wchar_t) buf[n];
-+ }
-+ mybuf[n] = L'\0';
- }
-- mybuf[n] = L'\0';
-
- return _nc_viswbuf2(0, mybuf);
- }
-@@ -261,7 +277,7 @@
- NCURSES_EXPORT(const char *)
- _nc_viscbuf2(int bufnum, const NCURSES_CH_T * buf, int len)
- {
-- char *result = _nc_trace_buf(bufnum, BUFSIZ);
-+ char *result = _nc_trace_buf(bufnum, (size_t) BUFSIZ);
- int first;
- const char *found;
-
-@@ -315,7 +331,7 @@
- break;
- for (k = 0; k < PUTC_n; k++) {
- char temp[80];
-- _nc_vischar(temp, UChar(PUTC_buf[k]));
-+ VisChar(temp, UChar(PUTC_buf[k]), sizeof(temp));
- (void) _nc_trace_bufcat(bufnum, temp);
- }
- }
-@@ -323,8 +339,8 @@
- #else
- {
- char temp[80];
-- _nc_vischar(temp, UChar(buf[j]));
-- result = _nc_trace_bufcat(bufnum, temp);
-+ VisChar(temp, UChar(buf[j]), sizeof(temp));
-+ (void) _nc_trace_bufcat(bufnum, temp);
- }
- #endif /* USE_WIDEC_SUPPORT */
- }
-Index: ncurses/tty/hardscroll.c
-Prereq: 1.47
---- ncurses-5.9/ncurses/tty/hardscroll.c 2010-04-24 23:46:47.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tty/hardscroll.c 2012-10-17 09:01:10.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -147,7 +147,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: hardscroll.c,v 1.47 2010/04/24 23:46:47 tom Exp $")
-+MODULE_ID("$Id: hardscroll.c,v 1.51 2012/10/17 09:01:10 tom Exp $")
-
- #if defined(SCROLLDEBUG) || defined(HASHDEBUG)
-
-@@ -173,9 +173,9 @@
- # if USE_HASHMAP
- # define oldnums(sp) (sp)->_oldnum_list
- # define OLDNUM(sp,n) oldnums(sp)[n]
--# else /* !USE_HASHMAP */
-+# else /* !USE_HASHMAP */
- # define OLDNUM(sp,n) NewScreen(sp)->_line[n].oldindex
--# endif /* !USE_HASHMAP */
-+# endif /* !USE_HASHMAP */
-
- #define OLDNUM_SIZE(sp) (sp)->_oldnum_size
-
-@@ -193,14 +193,20 @@
- #if !defined(SCROLLDEBUG) && !defined(HASHDEBUG)
- #if USE_HASHMAP
- /* get enough storage */
-- if (OLDNUM_SIZE(SP_PARM) < screen_lines(SP_PARM)) {
-+ assert(OLDNUM_SIZE(SP_PARM) >= 0);
-+ assert(screen_lines(SP_PARM) > 0);
-+ if ((oldnums(SP_PARM) == 0)
-+ || (OLDNUM_SIZE(SP_PARM) < screen_lines(SP_PARM))) {
-+ int need_lines = ((OLDNUM_SIZE(SP_PARM) < screen_lines(SP_PARM))
-+ ? screen_lines(SP_PARM)
-+ : OLDNUM_SIZE(SP_PARM));
- int *new_oldnums = typeRealloc(int,
-- (size_t) screen_lines(SP_PARM),
-+ (size_t) need_lines,
- oldnums(SP_PARM));
- if (!new_oldnums)
- return;
- oldnums(SP_PARM) = new_oldnums;
-- OLDNUM_SIZE(SP_PARM) = screen_lines(SP_PARM);
-+ OLDNUM_SIZE(SP_PARM) = need_lines;
- }
- /* calculate the indices */
- NCURSES_SP_NAME(_nc_hash_map) (NCURSES_SP_ARG);
-@@ -302,7 +308,9 @@
-
- *buf = '\0';
- for (n = 0; n < screen_lines(SP_PARM); n++)
-- (void) sprintf(buf + strlen(buf), " %02d", OLDNUM(SP_PARM, n));
-+ _nc_SPRINTF(buf + strlen(buf),
-+ _nc_SLIMIT(want - strlen(buf))
-+ " %02d", OLDNUM(SP_PARM, n));
- TR(TRACE_UPDATE | TRACE_MOVE, ("virt %s", buf));
- free(buf);
- }
-Index: ncurses/tty/hashmap.c
-Prereq: 1.62
---- ncurses-5.9/ncurses/tty/hashmap.c 2010-04-24 23:46:07.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tty/hashmap.c 2014-04-26 18:48:44.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2014 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 *
-@@ -73,7 +73,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: hashmap.c,v 1.62 2010/04/24 23:46:07 tom Exp $")
-+MODULE_ID("$Id: hashmap.c,v 1.64 2014/04/26 18:48:44 juergen Exp $")
-
- #ifdef HASHDEBUG
-
-@@ -163,7 +163,7 @@
- * effective. 'blank' indicates whether the line 'to' would become blank.
- */
- static NCURSES_INLINE bool
--cost_effective(SCREEN *sp, const int from, const int to, const bool blank)
-+cost_effective(SCREEN *sp, const int from, const int to, const int blank)
- {
- int new_from;
-
-@@ -492,7 +492,7 @@
- CharOf(oldtext[n][0]) = CharOf(newtext[n][0]) = '.';
- }
-
-- if (isatty(fileno(stdin)))
-+ if (NC_ISATTY(fileno(stdin)))
- usage();
-
- #ifdef TRACE
-Index: ncurses/tty/lib_mvcur.c
-Prereq: 1.126
---- ncurses-5.9/ncurses/tty/lib_mvcur.c 2011-01-22 19:48:21.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tty/lib_mvcur.c 2014-04-26 18:47:20.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -159,7 +159,7 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_mvcur.c,v 1.126 2011/01/22 19:48:21 tom Exp $")
-+MODULE_ID("$Id: lib_mvcur.c,v 1.135 2014/04/26 18:47:20 juergen Exp $")
-
- #define WANT_CHAR(sp, y, x) NewScreen(sp)->_line[y].text[x] /* desired state */
-
-@@ -176,6 +176,9 @@
- static float diff;
- #endif /* MAIN */
-
-+#undef NCURSES_OUTC_FUNC
-+#define NCURSES_OUTC_FUNC myOutCh
-+
- #define OPT_SIZE 512
-
- static int normalized_cost(NCURSES_SP_DCLx const char *const cap, int affcnt);
-@@ -274,10 +277,9 @@
- /* Set the scroll-region to a known state (the default) */
- {
- if (change_scroll_region) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "change_scroll_region",
-- TPARM_2(change_scroll_region,
-- 0, screen_lines(SP_PARM) - 1));
-+ NCURSES_PUTP2("change_scroll_region",
-+ TPARM_2(change_scroll_region,
-+ 0, screen_lines(SP_PARM) - 1));
- }
- }
-
-@@ -285,14 +287,12 @@
- NCURSES_SP_NAME(_nc_mvcur_resume) (NCURSES_SP_DCL0)
- /* what to do at initialization time and after each shellout */
- {
-- if (SP_PARM && !IsTermInfo(SP_PARM))
-+ if (!SP_PARM || !IsTermInfo(SP_PARM))
- return;
-
- /* initialize screen for cursor access */
- if (enter_ca_mode) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "enter_ca_mode",
-- enter_ca_mode);
-+ NCURSES_PUTP2("enter_ca_mode", enter_ca_mode);
- }
-
- /*
-@@ -327,13 +327,14 @@
- NCURSES_SP_NAME(_nc_mvcur_init) (NCURSES_SP_DCL0)
- /* initialize the cost structure */
- {
-- if (SP_PARM->_ofp && isatty(fileno(SP_PARM->_ofp)))
-+ if (SP_PARM->_ofp && NC_ISATTY(fileno(SP_PARM->_ofp))) {
- SP_PARM->_char_padding = ((BAUDBYTE * 1000 * 10)
- / (BAUDRATE(SP_PARM) > 0
- ? BAUDRATE(SP_PARM)
- : 9600));
-- else
-+ } else {
- SP_PARM->_char_padding = 1; /* must be nonzero */
-+ }
- if (SP_PARM->_char_padding <= 0)
- SP_PARM->_char_padding = 1; /* must be nonzero */
- TR(TRACE_CHARPUT | TRACE_MOVE, ("char_padding %d msecs", SP_PARM->_char_padding));
-@@ -481,9 +482,7 @@
- }
-
- if (exit_ca_mode) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "exit_ca_mode",
-- exit_ca_mode);
-+ NCURSES_PUTP2("exit_ca_mode", exit_ca_mode);
- }
- /*
- * Reset terminal's tab counter. There's a long-time bug that
-@@ -549,7 +548,7 @@
- int from_x,
- int to_y,
- int to_x,
-- bool ovw)
-+ int ovw)
- /* move via local motions (cuu/cuu1/cud/cud1/cub1/cub/cuf1/cuf/vpa/hpa) */
- {
- string_desc save;
-@@ -770,7 +769,10 @@
- */
-
- static NCURSES_INLINE int
--onscreen_mvcur(NCURSES_SP_DCLx int yold, int xold, int ynew, int xnew, bool ovw)
-+onscreen_mvcur(NCURSES_SP_DCLx
-+ int yold, int xold,
-+ int ynew, int xnew, int ovw,
-+ NCURSES_SP_OUTC myOutCh)
- /* onscreen move from (yold, xold) to (ynew, xnew) */
- {
- string_desc result;
-@@ -935,7 +937,7 @@
- if (usecost != INFINITY) {
- TPUTS_TRACE("mvcur");
- NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
-- buffer, 1, NCURSES_SP_NAME(_nc_outch));
-+ buffer, 1, myOutCh);
- SP_PARM->_cursrow = ynew;
- SP_PARM->_curscol = xnew;
- return (OK);
-@@ -943,9 +945,15 @@
- return (ERR);
- }
-
--NCURSES_EXPORT(int)
--TINFO_MVCUR(NCURSES_SP_DCLx int yold, int xold, int ynew, int xnew)
--/* optimized cursor move from (yold, xold) to (ynew, xnew) */
-+/*
-+ * optimized cursor move from (yold, xold) to (ynew, xnew)
-+ */
-+static int
-+_nc_real_mvcur(NCURSES_SP_DCLx
-+ int yold, int xold,
-+ int ynew, int xnew,
-+ NCURSES_SP_OUTC myOutCh,
-+ int ovw)
- {
- NCURSES_CH_T oldattr;
- int code;
-@@ -994,20 +1002,18 @@
-
- if (l > 0) {
- if (carriage_return) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "carriage_return",
-- carriage_return);
-- } else
-- NCURSES_SP_NAME(_nc_outch) (NCURSES_SP_ARGx '\r');
-+ NCURSES_PUTP2("carriage_return", carriage_return);
-+ } else {
-+ myOutCh(NCURSES_SP_ARGx '\r');
-+ }
- xold = 0;
-
- while (l > 0) {
- if (newline) {
-- NCURSES_SP_NAME(_nc_putp) (NCURSES_SP_ARGx
-- "newline",
-- newline);
-- } else
-- NCURSES_SP_NAME(_nc_outch) (NCURSES_SP_ARGx '\n');
-+ NCURSES_PUTP2("newline", newline);
-+ } else {
-+ myOutCh(NCURSES_SP_ARGx '\n');
-+ }
- l--;
- }
- }
-@@ -1027,7 +1033,7 @@
- ynew = screen_lines(SP_PARM) - 1;
-
- /* destination location is on screen now */
-- code = onscreen_mvcur(NCURSES_SP_ARGx yold, xold, ynew, xnew, TRUE);
-+ code = onscreen_mvcur(NCURSES_SP_ARGx yold, xold, ynew, xnew, ovw, myOutCh);
-
- /*
- * Restore attributes if we disabled them before moving.
-@@ -1042,13 +1048,66 @@
- returnCode(code);
- }
-
--#if NCURSES_SP_FUNCS && !defined(USE_TERM_DRIVER)
-+/*
-+ * These entrypoints are used within the library.
-+ */
-+NCURSES_EXPORT(int)
-+NCURSES_SP_NAME(_nc_mvcur) (NCURSES_SP_DCLx
-+ int yold, int xold,
-+ int ynew, int xnew)
-+{
-+ return _nc_real_mvcur(NCURSES_SP_ARGx yold, xold, ynew, xnew,
-+ NCURSES_SP_NAME(_nc_outch),
-+ TRUE);
-+}
-+
-+#if NCURSES_SP_FUNCS
-+NCURSES_EXPORT(int)
-+_nc_mvcur(int yold, int xold,
-+ int ynew, int xnew)
-+{
-+ return NCURSES_SP_NAME(_nc_mvcur) (CURRENT_SCREEN, yold, xold, ynew, xnew);
-+}
-+#endif
-+
-+#if defined(USE_TERM_DRIVER)
-+/*
-+ * The terminal driver does not support the external "mvcur()".
-+ */
-+NCURSES_EXPORT(int)
-+TINFO_MVCUR(NCURSES_SP_DCLx int yold, int xold, int ynew, int xnew)
-+{
-+ return _nc_real_mvcur(NCURSES_SP_ARGx
-+ yold, xold,
-+ ynew, xnew,
-+ NCURSES_SP_NAME(_nc_outch),
-+ TRUE);
-+}
-+
-+#else /* !USE_TERM_DRIVER */
-+
-+/*
-+ * These entrypoints support users of the library.
-+ */
-+NCURSES_EXPORT(int)
-+NCURSES_SP_NAME(mvcur) (NCURSES_SP_DCLx int yold, int xold, int ynew,
-+ int xnew)
-+{
-+ return _nc_real_mvcur(NCURSES_SP_ARGx
-+ yold, xold,
-+ ynew, xnew,
-+ NCURSES_SP_NAME(_nc_putchar),
-+ FALSE);
-+}
-+
-+#if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
- mvcur(int yold, int xold, int ynew, int xnew)
- {
- return NCURSES_SP_NAME(mvcur) (CURRENT_SCREEN, yold, xold, ynew, xnew);
- }
- #endif
-+#endif /* USE_TERM_DRIVER */
-
- #if defined(TRACE) || defined(NCURSES_TEST)
- NCURSES_EXPORT_VAR(int) _nc_optimize_enable = OPTIMIZE_ALL;
-@@ -1128,7 +1187,6 @@
- baudrate();
-
- _nc_mvcur_init();
-- NC_BUFFERED(FALSE);
-
- (void) puts("The mvcur tester. Type ? for help");
-
-Index: ncurses/tty/lib_tstp.c
-Prereq: 1.41
---- ncurses-5.9/ncurses/tty/lib_tstp.c 2010-05-15 21:31:12.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tty/lib_tstp.c 2014-04-26 18:47:35.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -42,11 +42,7 @@
-
- #include <SigAction.h>
-
--#if SVR4_ACTION && !defined(_POSIX_SOURCE)
--#define _POSIX_SOURCE
--#endif
--
--MODULE_ID("$Id: lib_tstp.c,v 1.41 2010/05/15 21:31:12 tom Exp $")
-+MODULE_ID("$Id: lib_tstp.c,v 1.48 2014/04/26 18:47:35 juergen Exp $")
-
- #if defined(SIGTSTP) && (HAVE_SIGACTION || HAVE_SIGVEC)
- #define USE_SIGTSTP 1
-@@ -138,7 +134,7 @@
-
- #if USE_SIGTSTP
- static void
--tstp(int dummy GCC_UNUSED)
-+handle_SIGTSTP(int dummy GCC_UNUSED)
- {
- SCREEN *sp = CURRENT_SCREEN;
- sigset_t mask, omask;
-@@ -148,7 +144,8 @@
- int sigttou_blocked;
- #endif
-
-- T(("tstp() called"));
-+ _nc_globals.have_sigtstp = 1;
-+ T(("handle_SIGTSTP() called"));
-
- /*
- * The user may have changed the prog_mode tty bits, so save them.
-@@ -239,21 +236,24 @@
- #endif /* USE_SIGTSTP */
-
- static void
--cleanup(int sig)
-+handle_SIGINT(int sig)
- {
- SCREEN *sp = CURRENT_SCREEN;
-
- /*
-- * Actually, doing any sort of I/O from within an signal handler is
-- * "unsafe". But we'll _try_ to clean up the screen and terminal
-- * settings on the way out.
-+ * Much of this is unsafe from a signal handler. But we'll _try_ to clean
-+ * up the screen and terminal settings on the way out.
-+ *
-+ * There are at least the following problems:
-+ * 1) Walking the SCREEN list is unsafe, since all list management
-+ * is done without any signal blocking.
-+ * 2) On systems which have REENTRANT turned on, set_term() uses
-+ * _nc_lock_global() which could deadlock or misbehave in other ways.
-+ * 3) endwin() calls all sorts of stuff, many of which use stdio or
-+ * other library functions which are clearly unsafe.
- */
- if (!_nc_globals.cleanup_nested++
-- && (sig == SIGINT
--#ifdef SIGQUIT
-- || sig == SIGQUIT
--#endif
-- )) {
-+ && (sig == SIGINT || sig == SIGTERM)) {
- #if HAVE_SIGACTION || HAVE_SIGVEC
- sigaction_t act;
- sigemptyset(&act.sa_mask);
-@@ -267,23 +267,22 @@
- SCREEN *scan;
- for (each_screen(scan)) {
- if (scan->_ofp != 0
-- && isatty(fileno(scan->_ofp))) {
-- scan->_cleanup = TRUE;
-+ && NC_ISATTY(fileno(scan->_ofp))) {
- scan->_outch = NCURSES_SP_NAME(_nc_outch);
- }
- set_term(scan);
- NCURSES_SP_NAME(endwin) (NCURSES_SP_ARG);
- if (sp)
-- sp->_endwin = FALSE; /* in case we have an atexit! */
-+ sp->_endwin = FALSE; /* in case of reuse */
- }
- }
- }
-- exit(EXIT_FAILURE);
-+ _exit(EXIT_FAILURE);
- }
-
- #if USE_SIGWINCH
- static void
--sigwinch(int sig GCC_UNUSED)
-+handle_SIGWINCH(int sig GCC_UNUSED)
- {
- _nc_globals.have_sigwinch = 1;
- # if USE_PTHREADS_EINTR
-@@ -301,7 +300,7 @@
- * handler.
- */
- static int
--CatchIfDefault(int sig, RETSIGTYPE (*handler) (int))
-+CatchIfDefault(int sig, void (*handler) (int))
- {
- int result;
- #if HAVE_SIGACTION || HAVE_SIGVEC
-@@ -331,7 +330,7 @@
- result = FALSE;
- }
- #else /* !HAVE_SIGACTION */
-- RETSIGTYPE (*ohandler) (int);
-+ void (*ohandler) (int);
-
- ohandler = signal(sig, SIG_IGN);
- if (ohandler == SIG_DFL
-@@ -364,7 +363,7 @@
- * the caller later changes its mind, but that doesn't seem correct.
- */
- NCURSES_EXPORT(void)
--_nc_signal_handler(bool enable)
-+_nc_signal_handler(int enable)
- {
- T((T_CALLED("_nc_signal_handler(%d)"), enable));
- #if USE_SIGTSTP /* Xenix 2.x doesn't have SIGTSTP, for example */
-@@ -385,7 +384,7 @@
- #ifdef SA_RESTART
- new_sigaction.sa_flags |= SA_RESTART;
- #endif /* SA_RESTART */
-- new_sigaction.sa_handler = tstp;
-+ new_sigaction.sa_handler = handle_SIGTSTP;
- (void) sigaction(SIGTSTP, &new_sigaction, NULL);
- } else {
- ignore_tstp = TRUE;
-@@ -396,10 +395,10 @@
-
- if (!_nc_globals.init_signals) {
- if (enable) {
-- CatchIfDefault(SIGINT, cleanup);
-- CatchIfDefault(SIGTERM, cleanup);
-+ CatchIfDefault(SIGINT, handle_SIGINT);
-+ CatchIfDefault(SIGTERM, handle_SIGINT);
- #if USE_SIGWINCH
-- CatchIfDefault(SIGWINCH, sigwinch);
-+ CatchIfDefault(SIGWINCH, handle_SIGWINCH);
- #endif
- _nc_globals.init_signals = TRUE;
- }
-Index: ncurses/tty/lib_twait.c
-Prereq: 1.61
---- ncurses-5.9/ncurses/tty/lib_twait.c 2010-12-25 23:43:58.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tty/lib_twait.c 2014-03-08 20:32:59.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -53,6 +53,11 @@
- #include <OS.h>
- #endif
-
-+#if USE_KLIBC_KBD
-+#define INCL_KBD
-+#include <os2.h>
-+#endif
-+
- #if USE_FUNC_POLL
- # if HAVE_SYS_TIME_H
- # include <sys/time.h>
-@@ -70,10 +75,10 @@
- #endif
- #undef CUR
-
--MODULE_ID("$Id: lib_twait.c,v 1.61 2010/12/25 23:43:58 tom Exp $")
-+MODULE_ID("$Id: lib_twait.c,v 1.68 2014/03/08 20:32:59 tom Exp $")
-
- static long
--_nc_gettime(TimeType * t0, bool first)
-+_nc_gettime(TimeType * t0, int first)
- {
- long res;
-
-@@ -97,7 +102,7 @@
- if (first) {
- *t0 = t1;
- }
-- res = (t1 - *t0) * 1000;
-+ res = (long) ((t1 - *t0) * 1000);
- #endif
- TR(TRACE_IEVENT, ("%s time: %ld msec", first ? "get" : "elapsed", res));
- return res;
-@@ -184,6 +189,12 @@
- fd_set set;
- #endif
-
-+#if USE_KLIBC_KBD
-+ fd_set saved_set;
-+ KBDKEYINFO ki;
-+ struct timeval tv;
-+#endif
-+
- long starttime, returntime;
-
- TR(TRACE_IEVENT, ("start twait: %d milliseconds, mode: %d",
-@@ -207,6 +218,7 @@
- starttime = _nc_gettime(&t0, TRUE);
-
- count = 0;
-+ (void) count;
-
- #ifdef NCURSES_WGETCH_EVENTS
- if ((mode & TW_EVENT) && evl)
-@@ -217,8 +229,11 @@
- memset(fd_list, 0, sizeof(fd_list));
-
- #ifdef NCURSES_WGETCH_EVENTS
-- if ((mode & TW_EVENT) && evl)
-+ if ((mode & TW_EVENT) && evl) {
- fds = typeMalloc(struct pollfd, MIN_FDS + evl->count);
-+ if (fds == 0)
-+ return TW_NONE;
-+ }
- #endif
-
- if (mode & TW_INPUT) {
-@@ -247,7 +262,7 @@
- }
- #endif
-
-- result = poll(fds, (unsigned) count, milliseconds);
-+ result = poll(fds, (size_t) count, milliseconds);
-
- #ifdef NCURSES_WGETCH_EVENTS
- if ((mode & TW_EVENT) && evl) {
-@@ -274,10 +289,6 @@
- }
- }
- }
--
-- if (fds != fd_list)
-- free((char *) fds);
--
- #endif
-
- #elif defined(__BEOS__)
-@@ -329,10 +340,12 @@
- */
- FD_ZERO(&set);
-
-+#if !USE_KLIBC_KBD
- if (mode & TW_INPUT) {
- FD_SET(sp->_ifd, &set);
- count = sp->_ifd + 1;
- }
-+#endif
- if ((mode & TW_MOUSE)
- && (fd = sp->_mouse_fd) >= 0) {
- FD_SET(fd, &set);
-@@ -352,6 +365,31 @@
- }
- #endif
-
-+#if USE_KLIBC_KBD
-+ for (saved_set = set;; set = saved_set) {
-+ if ((mode & TW_INPUT)
-+ && (sp->_extended_key
-+ || (KbdPeek(&ki, 0) == 0
-+ && (ki.fbStatus & KBDTRF_FINAL_CHAR_IN)))) {
-+ FD_ZERO(&set);
-+ FD_SET(sp->_ifd, &set);
-+ result = 1;
-+ break;
-+ }
-+
-+ tv.tv_sec = 0;
-+ tv.tv_usec = (milliseconds == 0) ? 0 : (10 * 1000);
-+
-+ if ((result = select(count, &set, NULL, NULL, &tv)) != 0)
-+ break;
-+
-+ /* Time out ? */
-+ if (milliseconds >= 0 && _nc_gettime(&t0, FALSE) >= milliseconds) {
-+ result = 0;
-+ break;
-+ }
-+ }
-+#else
- if (milliseconds >= 0) {
- struct timeval ntimeout;
- ntimeout.tv_sec = milliseconds / 1000;
-@@ -360,6 +398,7 @@
- } else {
- result = select(count, &set, NULL, NULL, NULL);
- }
-+#endif
-
- #ifdef NCURSES_WGETCH_EVENTS
- if ((mode & TW_EVENT) && evl) {
-@@ -462,5 +501,12 @@
- result |= TW_EVENT;
- #endif
-
-+#if USE_FUNC_POLL
-+#ifdef NCURSES_WGETCH_EVENTS
-+ if (fds != fd_list)
-+ free((char *) fds);
-+#endif
-+#endif
-+
- return (result);
- }
-Index: ncurses/tty/lib_vidattr.c
-Prereq: 1.61
---- ncurses-5.9/ncurses/tty/lib_vidattr.c 2010-06-05 22:22:04.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tty/lib_vidattr.c 2014-09-04 22:01:27.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -69,27 +69,27 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_vidattr.c,v 1.61 2010/06/05 22:22:04 tom Exp $")
-+MODULE_ID("$Id: lib_vidattr.c,v 1.71 2014/09/04 22:01:27 tom Exp $")
-
- #define doPut(mode) \
- TPUTS_TRACE(#mode); \
- NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx mode, 1, outc)
-
--#define TurnOn(mask,mode) \
-+#define TurnOn(mask, mode) \
- if ((turn_on & mask) && mode) { doPut(mode); }
-
--#define TurnOff(mask,mode) \
-+#define TurnOff(mask, mode) \
- if ((turn_off & mask) && mode) { doPut(mode); turn_off &= ~mask; }
-
- /* if there is no current screen, assume we *can* do color */
--#define SetColorsIf(why,old_attr) \
-+#define SetColorsIf(why, old_attr) \
- if (can_color && (why)) { \
- int old_pair = PairNumber(old_attr); \
- TR(TRACE_ATTRS, ("old pair = %d -- new pair = %d", old_pair, pair)); \
- if ((pair != old_pair) \
- || (fix_pair0 && (pair == 0)) \
- || (reverse ^ ((old_attr & A_REVERSE) != 0))) { \
-- NCURSES_SP_NAME(_nc_do_color)(NCURSES_SP_ARGx \
-+ NCURSES_SP_NAME(_nc_do_color) (NCURSES_SP_ARGx \
- (short) old_pair, \
- (short) pair, \
- reverse, outc); \
-@@ -139,6 +139,9 @@
- A_BOLD,
- A_INVIS,
- A_PROTECT,
-+#if USE_ITALIC
-+ A_ITALIC,
-+#endif
- };
- unsigned n;
- int used = 0;
-@@ -210,7 +213,7 @@
- }
-
- turn_off = (~newmode & PreviousAttr) & ALL_BUT_COLOR;
-- turn_on = (newmode & ~PreviousAttr) & ALL_BUT_COLOR;
-+ turn_on = (newmode & ~(PreviousAttr & TPARM_ATTR)) & ALL_BUT_COLOR;
-
- SetColorsIf(((pair == 0) && !fix_pair0), PreviousAttr);
-
-@@ -229,6 +232,11 @@
- if (!SP_PARM || SP_PARM->_use_rmso) {
- TurnOff(A_STANDOUT, exit_standout_mode);
- }
-+#if USE_ITALIC
-+ if (!SP_PARM || SP_PARM->_use_ritm) {
-+ TurnOff(A_ITALIC, exit_italics_mode);
-+ }
-+#endif
- }
- PreviousAttr &= ALL_BUT_COLOR;
- }
-@@ -251,6 +259,15 @@
- 1, outc);
- PreviousAttr &= ALL_BUT_COLOR;
- }
-+#if USE_ITALIC
-+ if (!SP_PARM || SP_PARM->_use_ritm) {
-+ if (turn_on & A_ITALIC) {
-+ TurnOn(A_ITALIC, enter_italics_mode);
-+ } else if (turn_off & A_ITALIC) {
-+ TurnOff(A_ITALIC, exit_italics_mode);
-+ }
-+ }
-+#endif
- SetColorsIf((pair != 0) || fix_pair0, PreviousAttr);
- } else {
-
-@@ -265,7 +282,11 @@
- if (!SP_PARM || SP_PARM->_use_rmso) {
- TurnOff(A_STANDOUT, exit_standout_mode);
- }
--
-+#if USE_ITALIC
-+ if (!SP_PARM || SP_PARM->_use_ritm) {
-+ TurnOff(A_ITALIC, exit_italics_mode);
-+ }
-+#endif
- if (turn_off && exit_attribute_mode) {
- doPut(exit_attribute_mode);
- turn_on |= (newmode & ALL_BUT_COLOR);
-@@ -284,6 +305,9 @@
- TurnOn(A_PROTECT, enter_protected_mode);
- TurnOn(A_INVIS, enter_secure_mode);
- TurnOn(A_UNDERLINE, enter_underline_mode);
-+#if USE_ITALIC
-+ TurnOn(A_ITALIC, enter_italics_mode);
-+#endif
- #if USE_WIDEC_SUPPORT
- TurnOn(A_HORIZONTAL, enter_horizontal_hl_mode);
- TurnOn(A_LEFT, enter_left_hl_mode);
-@@ -324,7 +348,7 @@
- T((T_CALLED("vidattr(%p,%s)"), (void *) SP_PARM, _traceattr(newmode)));
- returnCode(NCURSES_SP_NAME(vidputs) (NCURSES_SP_ARGx
- newmode,
-- NCURSES_SP_NAME(_nc_outch)));
-+ NCURSES_SP_NAME(_nc_putchar)));
- }
-
- #if NCURSES_SP_FUNCS
-@@ -341,42 +365,49 @@
- chtype attrs = A_NORMAL;
-
- T((T_CALLED("termattrs(%p)"), (void *) SP_PARM));
-+
-+ if (HasTerminal(SP_PARM)) {
- #ifdef USE_TERM_DRIVER
-- if (HasTerminal(SP_PARM))
-- attrs = CallDriver(SP_PARM, conattr);
--#else
-+ attrs = CallDriver(SP_PARM, td_conattr);
-+#else /* ! USE_TERM_DRIVER */
-
-- if (enter_alt_charset_mode)
-- attrs |= A_ALTCHARSET;
-+ if (enter_alt_charset_mode)
-+ attrs |= A_ALTCHARSET;
-
-- if (enter_blink_mode)
-- attrs |= A_BLINK;
-+ if (enter_blink_mode)
-+ attrs |= A_BLINK;
-
-- if (enter_bold_mode)
-- attrs |= A_BOLD;
-+ if (enter_bold_mode)
-+ attrs |= A_BOLD;
-
-- if (enter_dim_mode)
-- attrs |= A_DIM;
-+ if (enter_dim_mode)
-+ attrs |= A_DIM;
-
-- if (enter_reverse_mode)
-- attrs |= A_REVERSE;
-+ if (enter_reverse_mode)
-+ attrs |= A_REVERSE;
-
-- if (enter_standout_mode)
-- attrs |= A_STANDOUT;
-+ if (enter_standout_mode)
-+ attrs |= A_STANDOUT;
-
-- if (enter_protected_mode)
-- attrs |= A_PROTECT;
-+ if (enter_protected_mode)
-+ attrs |= A_PROTECT;
-
-- if (enter_secure_mode)
-- attrs |= A_INVIS;
-+ if (enter_secure_mode)
-+ attrs |= A_INVIS;
-
-- if (enter_underline_mode)
-- attrs |= A_UNDERLINE;
-+ if (enter_underline_mode)
-+ attrs |= A_UNDERLINE;
-
-- if (SP_PARM->_coloron)
-- attrs |= A_COLOR;
-+ if (SP_PARM->_coloron)
-+ attrs |= A_COLOR;
-
-+#if USE_ITALIC
-+ if (enter_italics_mode)
-+ attrs |= A_ITALIC;
- #endif
-+
-+#endif /* USE_TERM_DRIVER */
-+ }
- returnChtype(attrs);
- }
-
-Index: ncurses/tty/tty_update.c
-Prereq: 1.264
---- ncurses-5.9/ncurses/tty/tty_update.c 2010-12-19 01:21:02.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/tty/tty_update.c 2014-08-23 19:25:18.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -82,7 +82,7 @@
-
- #include <ctype.h>
-
--MODULE_ID("$Id: tty_update.c,v 1.264 2010/12/19 01:21:02 tom Exp $")
-+MODULE_ID("$Id: tty_update.c,v 1.280 2014/08/23 19:25:18 tom Exp $")
-
- /*
- * This define controls the line-breakout optimization. Every once in a
-@@ -145,8 +145,7 @@
-
- NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG);
- memset(buf, '\0', sizeof(buf));
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx "\033[6n"); /* only works on ANSI-compatibles */
-- NCURSES_SP_NAME(_nc_flush) (NCURSES_SP_ARG);
-+ NCURSES_PUTP2_FLUSH("cpr", "\033[6n"); /* only works on ANSI-compatibles */
- *(s = buf) = 0;
- do {
- int ask = sizeof(buf) - 1 - (s - buf);
-@@ -180,7 +179,7 @@
- }
- }
- #else
--#define position_check(sp, expected_y, expected_x, legend) /* nothing */
-+#define position_check(expected_y, expected_x, legend) /* nothing */
- #endif /* POSITION_DEBUG */
-
- /****************************************************************************
-@@ -195,13 +194,17 @@
- TR(TRACE_MOVE, ("GoTo(%p, %d, %d) from (%d, %d)",
- (void *) SP_PARM, row, col, SP_PARM->_cursrow, SP_PARM->_curscol));
-
-- position_check(SP_PARM, SP_PARM->_cursrow, SP_PARM->_curscol, "GoTo");
-+ position_check(NCURSES_SP_ARGx
-+ SP_PARM->_cursrow,
-+ SP_PARM->_curscol, "GoTo");
-
- TINFO_MVCUR(NCURSES_SP_ARGx
- SP_PARM->_cursrow,
- SP_PARM->_curscol,
- row, col);
-- position_check(SP_PARM, SP_PARM->_cursrow, SP_PARM->_curscol, "GoTo2");
-+ position_check(NCURSES_SP_ARGx
-+ SP_PARM->_cursrow,
-+ SP_PARM->_curscol, "GoTo2");
- }
-
- static NCURSES_INLINE void
-@@ -209,7 +212,9 @@
- {
- int chlen = 1;
- NCURSES_CH_T my_ch;
-+#if USE_WIDEC_SUPPORT
- PUTC_DATA;
-+#endif
- NCURSES_CH_T tilde;
- NCURSES_CH_T attr = CHDEREF(ch);
-
-@@ -276,6 +281,11 @@
- && SP_PARM->_screen_acs_map[CharOf(my_ch)]) {
- RemAttr(attr, A_ALTCHARSET);
- my_ch = _nc_wacs[CharOf(my_ch)];
-+ } else if (SP_PARM->_screen_unicode
-+ && !SP_PARM->_screen_acs_map[CharOf(my_ch)]
-+ && _nc_wacs[CharOf(my_ch)].chars[0]) {
-+ RemAttr(attr, A_ALTCHARSET);
-+ my_ch = _nc_wacs[CharOf(my_ch)];
- }
- #endif
- /*
-@@ -288,13 +298,12 @@
- int j = CharOfD(ch);
- chtype temp = UChar(SP_PARM->_acs_map[j]);
-
-- if (!(SP_PARM->_screen_acs_map[j])) {
-+ if (temp != 0) {
-+ SetChar(my_ch, temp, AttrOf(attr));
-+ } else {
-+ my_ch = CHDEREF(ch);
- RemAttr(attr, A_ALTCHARSET);
-- if (temp == 0)
-- temp = ' ';
- }
-- if (temp != 0)
-- SetChar(my_ch, temp, AttrOf(attr));
- }
- ch = CHREF(my_ch);
- }
-@@ -304,22 +313,13 @@
- }
-
- UpdateAttrs(SP_PARM, attr);
-+ PUTC(CHDEREF(ch));
- #if !USE_WIDEC_SUPPORT
-- /* FIXME - we do this special case for signal handling, should see how to
-- * make it work for wide characters.
-- */
-- if (SP_PARM->_outch != 0) {
-- SP_PARM->_outch(NCURSES_SP_ARGx UChar(ch));
-- } else
-+ COUNT_OUTCHARS(1);
- #endif
-- {
-- PUTC(CHDEREF(ch), SP_PARM->_ofp); /* macro's fastest... */
-- COUNT_OUTCHARS(1);
-- }
- SP_PARM->_curscol += chlen;
- if (char_padding) {
-- TPUTS_TRACE("char_padding");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx char_padding);
-+ NCURSES_PUTP2("char_padding", char_padding);
- }
- }
-
-@@ -342,7 +342,7 @@
- struct pollfd fds[1];
- fds[0].fd = SP_PARM->_checkfd;
- fds[0].events = POLLIN;
-- if (poll(fds, 1, 0) > 0) {
-+ if (poll(fds, (size_t) 1, 0) > 0) {
- have_pending = TRUE;
- }
- #elif defined(__BEOS__)
-@@ -390,18 +390,16 @@
- PutAttrChar(NCURSES_SP_ARGx ch);
- } else if (enter_am_mode && exit_am_mode) {
- /* we can suppress automargin */
-- TPUTS_TRACE("exit_am_mode");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_am_mode);
-+ NCURSES_PUTP2("exit_am_mode", exit_am_mode);
-
- PutAttrChar(NCURSES_SP_ARGx ch);
- SP_PARM->_curscol--;
-- position_check(SP_PARM,
-+ position_check(NCURSES_SP_ARGx
- SP_PARM->_cursrow,
- SP_PARM->_curscol,
- "exit_am_mode");
-
-- TPUTS_TRACE("enter_am_mode");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx enter_am_mode);
-+ NCURSES_PUTP2("enter_am_mode", enter_am_mode);
- } else if ((enter_insert_mode && exit_insert_mode)
- || insert_character || parm_ich) {
- GoTo(NCURSES_SP_ARGx
-@@ -455,7 +453,7 @@
- } else {
- SP_PARM->_curscol--;
- }
-- position_check(SP_PARM,
-+ position_check(NCURSES_SP_ARGx
- SP_PARM->_cursrow,
- SP_PARM->_curscol,
- "wrap_cursor");
-@@ -475,7 +473,9 @@
- if (SP_PARM->_curscol >= screen_columns(SP_PARM))
- wrap_cursor(NCURSES_SP_ARG);
-
-- position_check(SP_PARM, SP_PARM->_cursrow, SP_PARM->_curscol, "PutChar");
-+ position_check(NCURSES_SP_ARGx
-+ SP_PARM->_cursrow,
-+ SP_PARM->_curscol, "PutChar");
- }
-
- /*
-@@ -496,12 +496,13 @@
- if (SP_PARM->_default_fg != C_MASK || SP_PARM->_default_bg != C_MASK)
- return FALSE;
- if ((pair = GetPair(CHDEREF(ch))) != 0) {
-- short fg, bg;
-- NCURSES_SP_NAME(pair_content) (NCURSES_SP_ARGx
-- (short) pair,
-- &fg, &bg);
-- if (fg != C_MASK || bg != C_MASK)
-+ NCURSES_COLOR_T fg, bg;
-+ if (NCURSES_SP_NAME(pair_content) (NCURSES_SP_ARGx
-+ (short) pair,
-+ &fg, &bg) == ERR
-+ || (fg != C_MASK || bg != C_MASK)) {
- return FALSE;
-+ }
- }
- #else
- if (AttrOfD(ch) & A_COLOR)
-@@ -563,8 +564,7 @@
- && runcount > SP_PARM->_ech_cost + SP_PARM->_cup_ch_cost
- && can_clear_with(NCURSES_SP_ARGx CHREF(ntext0))) {
- UpdateAttrs(SP_PARM, ntext0);
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx
-- TPARM_1(erase_chars, runcount));
-+ NCURSES_PUTP2("erase_chars", TPARM_1(erase_chars, runcount));
-
- /*
- * If this is the last part of the given interval,
-@@ -628,6 +628,7 @@
- int first, int last)
- {
- int i, j, same;
-+ int rc;
-
- TR(TRACE_CHARPUT, ("PutRange(%p, %p, %p, %d, %d, %d)",
- (void *) SP_PARM,
-@@ -655,9 +656,11 @@
- * Always return 1 for the next GoTo() after a PutRange() if we found
- * identical characters at end of interval
- */
-- return (same == 0 ? i : 1);
-+ rc = (same == 0 ? i : 1);
-+ } else {
-+ rc = EmitRange(NCURSES_SP_ARGx ntext + first, last - first + 1);
- }
-- return EmitRange(NCURSES_SP_ARGx ntext + first, last - first + 1);
-+ return rc;
- }
-
- /* leave unbracketed here so 'indent' works */
-@@ -677,6 +680,9 @@
-
- T((T_CALLED("_nc_tinfo:doupdate(%p)"), (void *) SP_PARM));
-
-+ if (SP_PARM == 0)
-+ returnCode(ERR);
-+
- #if !USE_REENTRANT
- /*
- * It is "legal" but unlikely that an application could assign a new
-@@ -1076,32 +1082,29 @@
- */
-
- static void
--ClrToEOL(NCURSES_SP_DCLx NCURSES_CH_T blank, bool needclear)
-+ClrToEOL(NCURSES_SP_DCLx NCURSES_CH_T blank, int needclear)
- {
- int j;
-
-- if (SP_PARM != 0) {
-- if (CurScreen(SP_PARM) != 0
-- && SP_PARM->_cursrow >= 0) {
-- for (j = SP_PARM->_curscol; j < screen_columns(SP_PARM); j++) {
-- if (j >= 0) {
-- NCURSES_CH_T *cp =
-- &(CurScreen(SP_PARM)->_line[SP_PARM->_cursrow].text[j]);
--
-- if (!CharEq(*cp, blank)) {
-- *cp = blank;
-- needclear = TRUE;
-- }
-+ if (CurScreen(SP_PARM) != 0
-+ && SP_PARM->_cursrow >= 0) {
-+ for (j = SP_PARM->_curscol; j < screen_columns(SP_PARM); j++) {
-+ if (j >= 0) {
-+ NCURSES_CH_T *cp =
-+ &(CurScreen(SP_PARM)->_line[SP_PARM->_cursrow].text[j]);
-+
-+ if (!CharEq(*cp, blank)) {
-+ *cp = blank;
-+ needclear = TRUE;
- }
- }
- }
- }
-
-- if (needclear && (SP_PARM != 0)) {
-+ if (needclear) {
- UpdateAttrs(SP_PARM, blank);
-- TPUTS_TRACE("clr_eol");
- if (clr_eol && SP_PARM->_el_cost <= (screen_columns(SP_PARM) - SP_PARM->_curscol)) {
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clr_eol);
-+ NCURSES_PUTP2("clr_eol", clr_eol);
- } else {
- int count = (screen_columns(SP_PARM) - SP_PARM->_curscol);
- while (count-- > 0)
-@@ -1121,12 +1124,14 @@
- {
- int row, col;
-
-- if (0 == SP_PARM)
-- return;
--
- row = SP_PARM->_cursrow;
- col = SP_PARM->_curscol;
-
-+ if (row < 0)
-+ row = 0;
-+ if (col < 0)
-+ col = 0;
-+
- UpdateAttrs(SP_PARM, blank);
- TPUTS_TRACE("clr_eos");
- NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
-@@ -1370,13 +1375,11 @@
- && SP_PARM->_el_cost <= SP_PARM->_el1_cost) {
- GoTo(NCURSES_SP_ARGx lineno, 0);
- UpdateAttrs(SP_PARM, blank);
-- TPUTS_TRACE("clr_eol");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clr_eol);
-+ NCURSES_PUTP2("clr_eol", clr_eol);
- } else {
- GoTo(NCURSES_SP_ARGx lineno, nFirstChar - 1);
- UpdateAttrs(SP_PARM, blank);
-- TPUTS_TRACE("clr_bol");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clr_bol);
-+ NCURSES_PUTP2("clr_bol", clr_bol);
- }
-
- while (firstChar < nFirstChar)
-@@ -1492,9 +1495,17 @@
- if (oLastChar < nLastChar) {
- int m = max(nLastNonblank, oLastNonblank);
- #if USE_WIDEC_SUPPORT
-- while (isWidecExt(newLine[n + 1]) && n) {
-- --n;
-- --oLastChar;
-+ if (n) {
-+ while (isWidecExt(newLine[n + 1]) && n) {
-+ --n;
-+ --oLastChar; /* increase cost */
-+ }
-+ } else if (n >= firstChar &&
-+ isWidecBase(newLine[n])) {
-+ while (isWidecExt(newLine[n + 1])) {
-+ ++n;
-+ ++oLastChar; /* decrease cost */
-+ }
- }
- #endif
- GoTo(NCURSES_SP_ARGx lineno, n + 1);
-@@ -1514,8 +1525,9 @@
- if (DelCharCost(SP_PARM, oLastChar - nLastChar)
- > SP_PARM->_el_cost + nLastNonblank - (n + 1)) {
- if (PutRange(NCURSES_SP_ARGx oldLine, newLine, lineno,
-- n + 1, nLastNonblank))
-- GoTo(NCURSES_SP_ARGx lineno, nLastNonblank + 1);
-+ n + 1, nLastNonblank)) {
-+ GoTo(NCURSES_SP_ARGx lineno, nLastNonblank + 1);
-+ }
- ClrToEOL(NCURSES_SP_ARGx blank, FALSE);
- } else {
- /*
-@@ -1574,10 +1586,9 @@
- if (fast_clear) {
- if (clear_screen) {
- UpdateAttrs(SP_PARM, blank);
-- TPUTS_TRACE("clear_screen");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clear_screen);
-+ NCURSES_PUTP2("clear_screen", clear_screen);
- SP_PARM->_cursrow = SP_PARM->_curscol = 0;
-- position_check(SP_PARM,
-+ position_check(NCURSES_SP_ARGx
- SP_PARM->_cursrow,
- SP_PARM->_curscol,
- "ClearScreen");
-@@ -1595,8 +1606,7 @@
- UpdateAttrs(SP_PARM, blank);
- for (i = 0; i < screen_lines(SP_PARM); i++) {
- GoTo(NCURSES_SP_ARGx i, 0);
-- TPUTS_TRACE("clr_eol");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx clr_eol);
-+ NCURSES_PUTP2("clr_eol", clr_eol);
- }
- GoTo(NCURSES_SP_ARGx 0, 0);
- }
-@@ -1647,33 +1657,30 @@
- count--;
- }
- } else if (enter_insert_mode && exit_insert_mode) {
-- TPUTS_TRACE("enter_insert_mode");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx enter_insert_mode);
-+ NCURSES_PUTP2("enter_insert_mode", enter_insert_mode);
- while (count) {
- PutAttrChar(NCURSES_SP_ARGx CHREF(*line));
- if (insert_padding) {
-- TPUTS_TRACE("insert_padding");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_padding);
-+ NCURSES_PUTP2("insert_padding", insert_padding);
- }
- line++;
- count--;
- }
-- TPUTS_TRACE("exit_insert_mode");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_insert_mode);
-+ NCURSES_PUTP2("exit_insert_mode", exit_insert_mode);
- } else {
- while (count) {
-- TPUTS_TRACE("insert_character");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_character);
-+ NCURSES_PUTP2("insert_character", insert_character);
- PutAttrChar(NCURSES_SP_ARGx CHREF(*line));
- if (insert_padding) {
-- TPUTS_TRACE("insert_padding");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_padding);
-+ NCURSES_PUTP2("insert_padding", insert_padding);
- }
- line++;
- count--;
- }
- }
-- position_check(SP_PARM, SP_PARM->_cursrow, SP_PARM->_curscol, "InsStr");
-+ position_check(NCURSES_SP_ARGx
-+ SP_PARM->_cursrow,
-+ SP_PARM->_curscol, "InsStr");
- }
-
- /*
-@@ -1701,8 +1708,7 @@
- NCURSES_SP_NAME(_nc_outch));
- } else {
- for (n = 0; n < count; n++) {
-- TPUTS_TRACE("delete_character");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_character);
-+ NCURSES_PUTP2("delete_character", delete_character);
- }
- }
- }
-@@ -1754,13 +1760,11 @@
- if (n == 1 && scroll_forward && top == miny && bot == maxy) {
- GoTo(NCURSES_SP_ARGx bot, 0);
- UpdateAttrs(SP_PARM, blank);
-- TPUTS_TRACE("scroll_forward");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx scroll_forward);
-+ NCURSES_PUTP2("scroll_forward", scroll_forward);
- } else if (n == 1 && delete_line && bot == maxy) {
- GoTo(NCURSES_SP_ARGx top, 0);
- UpdateAttrs(SP_PARM, blank);
-- TPUTS_TRACE("delete_line");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_line);
-+ NCURSES_PUTP2("delete_line", delete_line);
- } else if (parm_index && top == miny && bot == maxy) {
- GoTo(NCURSES_SP_ARGx bot, 0);
- UpdateAttrs(SP_PARM, blank);
-@@ -1781,15 +1785,13 @@
- GoTo(NCURSES_SP_ARGx bot, 0);
- UpdateAttrs(SP_PARM, blank);
- for (i = 0; i < n; i++) {
-- TPUTS_TRACE("scroll_forward");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx scroll_forward);
-+ NCURSES_PUTP2("scroll_forward", scroll_forward);
- }
- } else if (delete_line && bot == maxy) {
- GoTo(NCURSES_SP_ARGx top, 0);
- UpdateAttrs(SP_PARM, blank);
- for (i = 0; i < n; i++) {
-- TPUTS_TRACE("delete_line");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_line);
-+ NCURSES_PUTP2("delete_line", delete_line);
- }
- } else
- return ERR;
-@@ -1823,13 +1825,11 @@
- if (n == 1 && scroll_reverse && top == miny && bot == maxy) {
- GoTo(NCURSES_SP_ARGx top, 0);
- UpdateAttrs(SP_PARM, blank);
-- TPUTS_TRACE("scroll_reverse");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx scroll_reverse);
-+ NCURSES_PUTP2("scroll_reverse", scroll_reverse);
- } else if (n == 1 && insert_line && bot == maxy) {
- GoTo(NCURSES_SP_ARGx top, 0);
- UpdateAttrs(SP_PARM, blank);
-- TPUTS_TRACE("insert_line");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_line);
-+ NCURSES_PUTP2("insert_line", insert_line);
- } else if (parm_rindex && top == miny && bot == maxy) {
- GoTo(NCURSES_SP_ARGx top, 0);
- UpdateAttrs(SP_PARM, blank);
-@@ -1850,15 +1850,13 @@
- GoTo(NCURSES_SP_ARGx top, 0);
- UpdateAttrs(SP_PARM, blank);
- for (i = 0; i < n; i++) {
-- TPUTS_TRACE("scroll_reverse");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx scroll_reverse);
-+ NCURSES_PUTP2("scroll_reverse", scroll_reverse);
- }
- } else if (insert_line && bot == maxy) {
- GoTo(NCURSES_SP_ARGx top, 0);
- UpdateAttrs(SP_PARM, blank);
- for (i = 0; i < n; i++) {
-- TPUTS_TRACE("insert_line");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_line);
-+ NCURSES_PUTP2("insert_line", insert_line);
- }
- } else
- return ERR;
-@@ -1889,8 +1887,7 @@
- GoTo(NCURSES_SP_ARGx del, 0);
- UpdateAttrs(SP_PARM, blank);
- if (n == 1 && delete_line) {
-- TPUTS_TRACE("delete_line");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_line);
-+ NCURSES_PUTP2("delete_line", delete_line);
- } else if (parm_delete_line) {
- TPUTS_TRACE("parm_delete_line");
- NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
-@@ -1899,16 +1896,14 @@
- NCURSES_SP_NAME(_nc_outch));
- } else { /* if (delete_line) */
- for (i = 0; i < n; i++) {
-- TPUTS_TRACE("delete_line");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx delete_line);
-+ NCURSES_PUTP2("delete_line", delete_line);
- }
- }
-
- GoTo(NCURSES_SP_ARGx ins, 0);
- UpdateAttrs(SP_PARM, blank);
- if (n == 1 && insert_line) {
-- TPUTS_TRACE("insert_line");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_line);
-+ NCURSES_PUTP2("insert_line", insert_line);
- } else if (parm_insert_line) {
- TPUTS_TRACE("parm_insert_line");
- NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx
-@@ -1917,8 +1912,7 @@
- NCURSES_SP_NAME(_nc_outch));
- } else { /* if (insert_line) */
- for (i = 0; i < n; i++) {
-- TPUTS_TRACE("insert_line");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx insert_line);
-+ NCURSES_PUTP2("insert_line", insert_line);
- }
- }
-
-@@ -1975,24 +1969,20 @@
- && (SP_PARM->_cursrow == bot || SP_PARM->_cursrow == bot - 1))
- && save_cursor && restore_cursor) {
- cursor_saved = TRUE;
-- TPUTS_TRACE("save_cursor");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx save_cursor);
-+ NCURSES_PUTP2("save_cursor", save_cursor);
- }
-- TPUTS_TRACE("change_scroll_region");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx
-- TPARM_2(change_scroll_region, top, bot));
-+ NCURSES_PUTP2("change_scroll_region",
-+ TPARM_2(change_scroll_region, top, bot));
- if (cursor_saved) {
-- TPUTS_TRACE("restore_cursor");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx restore_cursor);
-+ NCURSES_PUTP2("restore_cursor", restore_cursor);
- } else {
- SP_PARM->_cursrow = SP_PARM->_curscol = -1;
- }
-
- res = scroll_csr_forward(NCURSES_SP_ARGx n, top, bot, top, bot, blank);
-
-- TPUTS_TRACE("change_scroll_region");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx
-- TPARM_2(change_scroll_region, 0, maxy));
-+ NCURSES_PUTP2("change_scroll_region",
-+ TPARM_2(change_scroll_region, 0, maxy));
- SP_PARM->_cursrow = SP_PARM->_curscol = -1;
- }
-
-@@ -2025,15 +2015,12 @@
- SP_PARM->_cursrow == top - 1)
- && save_cursor && restore_cursor) {
- cursor_saved = TRUE;
-- TPUTS_TRACE("save_cursor");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx save_cursor);
-+ NCURSES_PUTP2("save_cursor", save_cursor);
- }
-- TPUTS_TRACE("change_scroll_region");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx
-- TPARM_2(change_scroll_region, top, bot));
-+ NCURSES_PUTP2("change_scroll_region",
-+ TPARM_2(change_scroll_region, top, bot));
- if (cursor_saved) {
-- TPUTS_TRACE("restore_cursor");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx restore_cursor);
-+ NCURSES_PUTP2("restore_cursor", restore_cursor);
- } else {
- SP_PARM->_cursrow = SP_PARM->_curscol = -1;
- }
-@@ -2041,9 +2028,8 @@
- res = scroll_csr_backward(NCURSES_SP_ARGx
- -n, top, bot, top, bot, blank);
-
-- TPUTS_TRACE("change_scroll_region");
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx
-- TPARM_2(change_scroll_region, 0, maxy));
-+ NCURSES_PUTP2("change_scroll_region",
-+ TPARM_2(change_scroll_region, 0, maxy));
- SP_PARM->_cursrow = SP_PARM->_curscol = -1;
- }
-
-@@ -2114,23 +2100,25 @@
- }
-
- if (exit_attribute_mode)
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_attribute_mode);
-+ NCURSES_PUTP2("exit_attribute_mode", exit_attribute_mode);
- else {
- /* turn off attributes */
- if (exit_alt_charset_mode)
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_alt_charset_mode);
-+ NCURSES_PUTP2("exit_alt_charset_mode", exit_alt_charset_mode);
- if (exit_standout_mode)
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_standout_mode);
-+ NCURSES_PUTP2("exit_standout_mode", exit_standout_mode);
- if (exit_underline_mode)
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_underline_mode);
-+ NCURSES_PUTP2("exit_underline_mode", exit_underline_mode);
- }
- if (exit_insert_mode)
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx exit_insert_mode);
-- if (enter_am_mode && exit_am_mode)
-- NCURSES_SP_NAME(putp) (NCURSES_SP_ARGx
-- (auto_right_margin
-- ? enter_am_mode
-- : exit_am_mode));
-+ NCURSES_PUTP2("exit_insert_mode", exit_insert_mode);
-+ if (enter_am_mode && exit_am_mode) {
-+ if (auto_right_margin) {
-+ NCURSES_PUTP2("enter_am_mode", enter_am_mode);
-+ } else {
-+ NCURSES_PUTP2("exit_am_mode", exit_am_mode);
-+ }
-+ }
- }
-
- #if NCURSES_SP_FUNCS
-@@ -2159,33 +2147,33 @@
- NCURSES_EXPORT(void)
- NCURSES_SP_NAME(_nc_screen_wrap) (NCURSES_SP_DCL0)
- {
-- if (SP_PARM == 0)
-- return;
-+ if (SP_PARM != 0) {
-
-- UpdateAttrs(SP_PARM, normal);
-+ UpdateAttrs(SP_PARM, normal);
- #if NCURSES_EXT_FUNCS
-- if (SP_PARM->_coloron
-- && !SP_PARM->_default_color) {
-- static const NCURSES_CH_T blank = NewChar(BLANK_TEXT);
-- SP_PARM->_default_color = TRUE;
-- NCURSES_SP_NAME(_nc_do_color) (NCURSES_SP_ARGx
-- -1,
-- 0,
-- FALSE,
-- NCURSES_SP_NAME(_nc_outch));
-- SP_PARM->_default_color = FALSE;
-+ if (SP_PARM->_coloron
-+ && !SP_PARM->_default_color) {
-+ static const NCURSES_CH_T blank = NewChar(BLANK_TEXT);
-+ SP_PARM->_default_color = TRUE;
-+ NCURSES_SP_NAME(_nc_do_color) (NCURSES_SP_ARGx
-+ -1,
-+ 0,
-+ FALSE,
-+ NCURSES_SP_NAME(_nc_outch));
-+ SP_PARM->_default_color = FALSE;
-+
-+ TINFO_MVCUR(NCURSES_SP_ARGx
-+ SP_PARM->_cursrow,
-+ SP_PARM->_curscol,
-+ screen_lines(SP_PARM) - 1,
-+ 0);
-
-- TINFO_MVCUR(NCURSES_SP_ARGx
-- SP_PARM->_cursrow,
-- SP_PARM->_curscol,
-- screen_lines(SP_PARM) - 1,
-- 0);
--
-- ClrToEOL(NCURSES_SP_ARGx blank, TRUE);
-- }
-+ ClrToEOL(NCURSES_SP_ARGx blank, TRUE);
-+ }
- #endif
-- if (SP_PARM->_color_defs) {
-- NCURSES_SP_NAME(_nc_reset_colors) (NCURSES_SP_ARG);
-+ if (SP_PARM->_color_defs) {
-+ NCURSES_SP_NAME(_nc_reset_colors) (NCURSES_SP_ARG);
-+ }
- }
- }
-
-Index: ncurses/wcwidth.h
---- ncurses-5.9/ncurses/wcwidth.h 2010-08-07 18:28:09.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/wcwidth.h 2013-07-06 19:53:29.000000000 +0000
-@@ -192,15 +192,18 @@
- (ucs <= 0x115f || /* Hangul Jamo init. consonants */
- ucs == 0x2329 || ucs == 0x232a ||
- (ucs >= 0x2e80 && ucs <= 0xa4cf &&
-- ucs != 0x303f) || /* CJK ... Yi */
-- (ucs >= 0xac00 && ucs <= 0xd7a3) || /* Hangul Syllables */
-- (ucs >= 0xf900 && ucs <= 0xfaff) || /* CJK Compatibility Ideographs */
-- (ucs >= 0xfe10 && ucs <= 0xfe19) || /* Vertical forms */
-- (ucs >= 0xfe30 && ucs <= 0xfe6f) || /* CJK Compatibility Forms */
-- (ucs >= 0xff00 && ucs <= 0xff60) || /* Fullwidth Forms */
-- (ucs >= 0xffe0 && ucs <= 0xffe6) ||
-- (ucs >= 0x20000 && ucs <= 0x2fffd) ||
-- (ucs >= 0x30000 && ucs <= 0x3fffd)));
-+ ucs != 0x303f) /* CJK ... Yi */
-+ || (ucs >= 0xac00 && ucs <= 0xd7a3) /* Hangul Syllables */
-+ || (ucs >= 0xf900 && ucs <= 0xfaff) /* CJK Compatibility Ideographs */
-+ || (ucs >= 0xfe10 && ucs <= 0xfe19) /* Vertical forms */
-+ || (ucs >= 0xfe30 && ucs <= 0xfe6f) /* CJK Compatibility Forms */
-+ || (ucs >= 0xff00 && ucs <= 0xff60) /* Fullwidth Forms */
-+ || (ucs >= 0xffe0 && ucs <= 0xffe6)
-+#if !defined(SIZEOF_WCHAR_T) || (SIZEOF_WCHAR_T >= 4)
-+ || (ucs >= 0x20000 && ucs <= 0x2fffd)
-+ || (ucs >= 0x30000 && ucs <= 0x3fffd)
-+#endif
-+ ));
- }
-
-
-Index: ncurses/widechar/lib_box_set.c
-Prereq: 1.5
---- ncurses-5.9/ncurses/widechar/lib_box_set.c 2009-10-24 22:36:56.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_box_set.c 2011-06-25 19:02:07.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2003,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2009,2011 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 *
-@@ -39,7 +39,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_box_set.c,v 1.5 2009/10/24 22:36:56 tom Exp $")
-+MODULE_ID("$Id: lib_box_set.c,v 1.6 2011/06/25 19:02:07 Vassili.Courzakis Exp $")
-
- NCURSES_EXPORT(int)
- wborder_set(WINDOW *win,
-@@ -52,7 +52,7 @@
- NCURSES_SIZE_T endx, endy;
- NCURSES_CH_T wls, wrs, wts, wbs, wtl, wtr, wbl, wbr;
-
-- T((T_CALLED("wborder(%p,%s,%s,%s,%s,%s,%s,%s,%s)"),
-+ T((T_CALLED("wborder_set(%p,%s,%s,%s,%s,%s,%s,%s,%s)"),
- (void *) win,
- _tracech_t2(1, ls),
- _tracech_t2(2, rs),
-Index: ncurses/widechar/lib_cchar.c
-Prereq: 1.20
---- ncurses-5.9/ncurses/widechar/lib_cchar.c 2010-12-25 23:46:26.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_cchar.c 2014-02-01 22:10:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2001-2012,2014 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 *
-@@ -35,7 +35,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_cchar.c,v 1.20 2010/12/25 23:46:26 tom Exp $")
-+MODULE_ID("$Id: lib_cchar.c,v 1.27 2014/02/01 22:10:42 tom Exp $")
-
- /*
- * The SuSv2 description leaves some room for interpretation. We'll assume wch
-@@ -47,7 +47,7 @@
- setcchar(cchar_t *wcval,
- const wchar_t *wch,
- const attr_t attrs,
-- short color_pair,
-+ NCURSES_PAIRS_T color_pair,
- const void *opts)
- {
- unsigned i;
-@@ -56,11 +56,11 @@
-
- TR(TRACE_CCALLS, (T_CALLED("setcchar(%p,%s,%lu,%d,%p)"),
- (void *) wcval, _nc_viswbuf(wch),
-- (unsigned long) attrs, color_pair, opts));
-+ (unsigned long) attrs, (int) color_pair, opts));
-
-- len = (unsigned) wcslen(wch);
- if (opts != NULL
-- || (len > 1 && wcwidth(wch[0]) < 0)) {
-+ || wch == NULL
-+ || ((len = (unsigned) wcslen(wch)) > 1 && wcwidth(wch[0]) < 0)) {
- code = ERR;
- } else {
- if (len > CCHARW_MAX)
-@@ -80,7 +80,7 @@
- memset(wcval, 0, sizeof(*wcval));
-
- if (len != 0) {
-- SetAttr(*wcval, attrs | (attr_t) ColorPair(color_pair));
-+ SetAttr(*wcval, attrs);
- SetPair(CHDEREF(wcval), color_pair);
- memcpy(&wcval->chars, wch, len * sizeof(wchar_t));
- TR(TRACE_CCALLS, ("copy %d wchars, first is %s", len,
-@@ -96,7 +96,7 @@
- getcchar(const cchar_t *wcval,
- wchar_t *wch,
- attr_t *attrs,
-- short *color_pair,
-+ NCURSES_PAIRS_T *color_pair,
- void *opts)
- {
- wchar_t *wp;
-@@ -110,8 +110,8 @@
- (void *) color_pair,
- opts));
-
-- if (opts == NULL) {
-- len = ((wp = wmemchr(wcval->chars, L'\0', CCHARW_MAX))
-+ if (opts == NULL && wcval != NULL) {
-+ len = ((wp = wmemchr(wcval->chars, L'\0', (size_t) CCHARW_MAX))
- ? (int) (wp - wcval->chars)
- : CCHARW_MAX);
-
-@@ -125,8 +125,8 @@
- code = ERR;
- } else if (len >= 0) {
- *attrs = AttrOf(*wcval) & A_ATTRIBUTES;
-- *color_pair = (short) GetPair(*wcval);
-- wmemcpy(wch, wcval->chars, (unsigned) len);
-+ *color_pair = (NCURSES_PAIRS_T) GetPair(*wcval);
-+ wmemcpy(wch, wcval->chars, (size_t) len);
- wch[len] = L'\0';
- code = OK;
- }
-Index: ncurses/widechar/lib_erasewchar.c
-Prereq: 1.2
---- ncurses-5.9/ncurses/widechar/lib_erasewchar.c 2010-07-24 11:35:12.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_erasewchar.c 2014-02-23 01:21:08.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2014 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 *
-@@ -32,7 +32,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_erasewchar.c,v 1.2 2010/07/24 11:35:12 tom Exp $")
-+MODULE_ID("$Id: lib_erasewchar.c,v 1.3 2014/02/23 01:21:08 tom Exp $")
-
- /*
- * erasewchar()
-@@ -49,7 +49,7 @@
-
- T((T_CALLED("erasewchar()")));
- if ((value = erasechar()) != ERR) {
-- *wch = value;
-+ *wch = (wchar_t) value;
- result = OK;
- }
- returnCode(result);
-@@ -70,7 +70,7 @@
-
- T((T_CALLED("killwchar()")));
- if ((value = killchar()) != ERR) {
-- *wch = value;
-+ *wch = (wchar_t) value;
- result = OK;
- }
- returnCode(result);
-Index: ncurses/widechar/lib_get_wch.c
-Prereq: 1.22
---- ncurses-5.9/ncurses/widechar/lib_get_wch.c 2010-08-28 21:00:35.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_get_wch.c 2011-05-28 23:00:29.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2011 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 *
-@@ -40,7 +40,7 @@
- #include <curses.priv.h>
- #include <ctype.h>
-
--MODULE_ID("$Id: lib_get_wch.c,v 1.22 2010/08/28 21:00:35 tom Exp $")
-+MODULE_ID("$Id: lib_get_wch.c,v 1.23 2011/05/28 23:00:29 tom Exp $")
-
- NCURSES_EXPORT(int)
- wget_wch(WINDOW *win, wint_t *result)
-@@ -106,7 +106,10 @@
- } else {
- code = ERR;
- }
-- *result = (wint_t) value;
-+
-+ if (result != 0)
-+ *result = (wint_t) value;
-+
- _nc_unlock_global(curses);
- T(("result %#o", value));
- returnCode(code);
-Index: ncurses/widechar/lib_get_wstr.c
-Prereq: 1.12
---- ncurses-5.9/ncurses/widechar/lib_get_wstr.c 2009-10-24 22:38:11.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_get_wstr.c 2011-10-22 16:31:35.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2009,2011 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 *
-@@ -39,7 +39,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_get_wstr.c,v 1.12 2009/10/24 22:38:11 tom Exp $")
-+MODULE_ID("$Id: lib_get_wstr.c,v 1.13 2011/10/22 16:31:35 tom Exp $")
-
- static int
- wadd_wint(WINDOW *win, wint_t *src)
-@@ -49,7 +49,7 @@
-
- wch[0] = (wchar_t) (*src);
- wch[1] = 0;
-- setcchar(&tmp, wch, A_NORMAL, 0, NULL);
-+ setcchar(&tmp, wch, A_NORMAL, (short) 0, NULL);
- return wadd_wch(win, &tmp);
- }
-
-@@ -58,7 +58,7 @@
- * or other character, and handles reverse wraparound.
- */
- static wint_t *
--WipeOut(WINDOW *win, int y, int x, wint_t *first, wint_t *last, bool echoed)
-+WipeOut(WINDOW *win, int y, int x, wint_t *first, wint_t *last, int echoed)
- {
- if (last > first) {
- *--last = '\0';
-Index: ncurses/widechar/lib_ins_wch.c
-Prereq: 1.16
---- ncurses-5.9/ncurses/widechar/lib_ins_wch.c 2010-12-19 01:34:04.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_ins_wch.c 2011-10-22 16:34:50.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2011 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 *
-@@ -39,7 +39,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_ins_wch.c,v 1.16 2010/12/19 01:34:04 tom Exp $")
-+MODULE_ID("$Id: lib_ins_wch.c,v 1.17 2011/10/22 16:34:50 tom Exp $")
-
- /*
- * Insert the given character, updating the current location to simplify
-@@ -132,7 +132,7 @@
- (void) setcchar(&tmp_cchar,
- &tmp_wchar,
- WA_NORMAL,
-- 0,
-+ (short) 0,
- (void *) 0);
- code = _nc_insert_wch(win, &tmp_cchar);
- } else {
-Index: ncurses/widechar/lib_inwstr.c
-Prereq: 1.5
---- ncurses-5.9/ncurses/widechar/lib_inwstr.c 2009-10-24 22:37:29.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_inwstr.c 2011-05-28 22:49:49.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2004,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2009,2011 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 *
-@@ -39,7 +39,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_inwstr.c,v 1.5 2009/10/24 22:37:29 tom Exp $")
-+MODULE_ID("$Id: lib_inwstr.c,v 1.6 2011/05/28 22:49:49 tom Exp $")
-
- NCURSES_EXPORT(int)
- winnwstr(WINDOW *win, wchar_t *wstr, int n)
-@@ -93,8 +93,13 @@
- winwstr(WINDOW *win, wchar_t *wstr)
- {
- int result = OK;
-+
- T((T_CALLED("winwstr(%p,%p)"), (void *) win, (void *) wstr));
-- if (winnwstr(win, wstr, CCHARW_MAX * (win->_maxx - win->_curx + 1)) == ERR)
-+ if (win == 0) {
-+ result = ERR;
-+ } else if (winnwstr(win, wstr,
-+ CCHARW_MAX * (win->_maxx - win->_curx + 1)) == ERR) {
- result = ERR;
-+ }
- returnCode(result);
- }
-Index: ncurses/widechar/lib_slk_wset.c
-Prereq: 1.11
---- ncurses-5.9/ncurses/widechar/lib_slk_wset.c 2005-01-16 01:03:53.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_slk_wset.c 2011-10-22 15:52:20.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2003-2004,2005 Free Software Foundation, Inc. *
-+ * Copyright (c) 2003-2002,2011 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 *
-@@ -40,7 +40,7 @@
- #include <wctype.h>
- #endif
-
--MODULE_ID("$Id: lib_slk_wset.c,v 1.11 2005/01/16 01:03:53 tom Exp $")
-+MODULE_ID("$Id: lib_slk_wset.c,v 1.13 2011/10/22 15:52:20 tom Exp $")
-
- NCURSES_EXPORT(int)
- slk_wset(int i, const wchar_t *astr, int format)
-@@ -53,19 +53,21 @@
-
- T((T_CALLED("slk_wset(%d, %s, %d)"), i, _nc_viswbuf(astr), format));
-
-- init_mb(state);
-- str = astr;
-- if ((arglen = wcsrtombs(NULL, &str, 0, &state)) != (size_t) -1) {
-- if ((mystr = (char *) _nc_doalloc(0, arglen + 1)) != 0) {
-- str = astr;
-- if (wcsrtombs(mystr, &str, arglen, &state) != (size_t) -1) {
-- /* glibc documentation claims that the terminating L'\0'
-- * is written, but it is not...
-- */
-- mystr[arglen] = 0;
-- result = slk_set(i, mystr, format);
-+ if (astr != 0) {
-+ init_mb(state);
-+ str = astr;
-+ if ((arglen = wcsrtombs(NULL, &str, (size_t) 0, &state)) != (size_t) -1) {
-+ if ((mystr = (char *) _nc_doalloc(0, arglen + 1)) != 0) {
-+ str = astr;
-+ if (wcsrtombs(mystr, &str, arglen, &state) != (size_t) -1) {
-+ /* glibc documentation claims that the terminating L'\0'
-+ * is written, but it is not...
-+ */
-+ mystr[arglen] = 0;
-+ result = slk_set(i, mystr, format);
-+ }
-+ free(mystr);
- }
-- free(mystr);
- }
- }
- returnCode(result);
-Index: ncurses/widechar/lib_unget_wch.c
-Prereq: 1.14
---- ncurses-5.9/ncurses/widechar/lib_unget_wch.c 2010-07-24 11:35:21.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_unget_wch.c 2011-10-22 16:34:50.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2011 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 *
-@@ -39,7 +39,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_unget_wch.c,v 1.14 2010/07/24 11:35:21 tom Exp $")
-+MODULE_ID("$Id: lib_unget_wch.c,v 1.15 2011/10/22 16:34:50 tom Exp $")
-
- /*
- * Wrapper for wcrtomb() which obtains the length needed for the given
-@@ -55,7 +55,7 @@
- const wchar_t *tempp = temp;
- temp[0] = source;
- temp[1] = 0;
-- result = (int) wcsrtombs(NULL, &tempp, 0, state);
-+ result = (int) wcsrtombs(NULL, &tempp, (size_t) 0, state);
- } else {
- result = (int) wcrtomb(target, source, state);
- }
-Index: ncurses/widechar/lib_vid_attr.c
-Prereq: 1.14
---- ncurses-5.9/ncurses/widechar/lib_vid_attr.c 2010-12-19 01:44:24.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_vid_attr.c 2014-06-07 22:13:46.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2013,2014 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 *
-@@ -36,14 +36,16 @@
- #define CUR SP_TERMTYPE
- #endif
-
--MODULE_ID("$Id: lib_vid_attr.c,v 1.14 2010/12/19 01:44:24 tom Exp $")
-+MODULE_ID("$Id: lib_vid_attr.c,v 1.23 2014/06/07 22:13:46 tom Exp $")
-
--#define doPut(mode) TPUTS_TRACE(#mode); NCURSES_SP_NAME(tputs)(NCURSES_SP_ARGx mode, 1, outc)
-+#define doPut(mode) \
-+ TPUTS_TRACE(#mode); \
-+ NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx mode, 1, outc)
-
--#define TurnOn(mask,mode) \
-+#define TurnOn(mask, mode) \
- if ((turn_on & mask) && mode) { doPut(mode); }
-
--#define TurnOff(mask,mode) \
-+#define TurnOff(mask, mode) \
- if ((turn_off & mask) && mode) { doPut(mode); turn_off &= ~mask; }
-
- /* if there is no current screen, assume we *can* do color */
-@@ -66,7 +68,7 @@
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(vid_puts) (NCURSES_SP_DCLx
- attr_t newmode,
-- short pair,
-+ NCURSES_PAIRS_T pair,
- void *opts GCC_UNUSED,
- NCURSES_SP_OUTC outc)
- {
-@@ -120,7 +122,7 @@
- * A_ALTCHARSET (256) down 2 to line up. We use the NCURSES_BITS
- * macro so this will work properly for the wide-character layout.
- */
-- unsigned value = no_color_video;
-+ unsigned value = (unsigned) no_color_video;
- attr_t mask = NCURSES_BITS((value & 63)
- | ((value & 192) << 1)
- | ((value & 256) >> 2), 8);
-@@ -142,7 +144,7 @@
- }
-
- turn_off = (~newmode & previous_attr) & ALL_BUT_COLOR;
-- turn_on = (newmode & ~previous_attr) & ALL_BUT_COLOR;
-+ turn_on = (newmode & ~(previous_attr & TPARM_ATTR)) & ALL_BUT_COLOR;
-
- SetColorsIf(((pair == 0) && !fix_pair0), previous_attr, previous_pair);
-
-@@ -161,6 +163,11 @@
- if (!SP_PARM || SP_PARM->_use_rmso) {
- TurnOff(A_STANDOUT, exit_standout_mode);
- }
-+#if USE_ITALIC
-+ if (!SP_PARM || SP_PARM->_use_ritm) {
-+ TurnOff(A_ITALIC, exit_italics_mode);
-+ }
-+#endif
- }
- previous_attr &= ALL_BUT_COLOR;
- previous_pair = 0;
-@@ -185,6 +192,15 @@
- previous_attr &= ALL_BUT_COLOR;
- previous_pair = 0;
- }
-+#if USE_ITALIC
-+ if (!SP_PARM || SP_PARM->_use_ritm) {
-+ if (turn_on & A_ITALIC) {
-+ TurnOn(A_ITALIC, enter_italics_mode);
-+ } else if (turn_off & A_ITALIC) {
-+ TurnOff(A_ITALIC, exit_italics_mode);
-+ }
-+ }
-+#endif
- SetColorsIf((pair != 0) || fix_pair0, previous_attr, previous_pair);
- } else {
-
-@@ -199,7 +215,11 @@
- if (!SP_PARM || SP_PARM->_use_rmso) {
- TurnOff(A_STANDOUT, exit_standout_mode);
- }
--
-+#if USE_ITALIC
-+ if (!SP_PARM || SP_PARM->_use_ritm) {
-+ TurnOff(A_ITALIC, exit_italics_mode);
-+ }
-+#endif
- if (turn_off && exit_attribute_mode) {
- doPut(exit_attribute_mode);
- turn_on |= (newmode & ALL_BUT_COLOR);
-@@ -219,6 +239,9 @@
- TurnOn(A_PROTECT, enter_protected_mode);
- TurnOn(A_INVIS, enter_secure_mode);
- TurnOn(A_UNDERLINE, enter_underline_mode);
-+#if USE_ITALIC
-+ TurnOn(A_ITALIC, enter_italics_mode);
-+#endif
- #if USE_WIDEC_SUPPORT
- TurnOn(A_HORIZONTAL, enter_horizontal_hl_mode);
- TurnOn(A_LEFT, enter_left_hl_mode);
-@@ -244,7 +267,7 @@
-
- returnCode(OK);
- #else
-- T((T_CALLED("vid_puts(%s,%d)"), _traceattr(newmode), pair));
-+ T((T_CALLED("vid_puts(%s,%d)"), _traceattr(newmode), (int) pair));
- set_color(newmode, pair);
- returnCode(NCURSES_SP_NAME(vidputs) (NCURSES_SP_ARGx newmode, outc));
- #endif
-@@ -253,7 +276,7 @@
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
- vid_puts(attr_t newmode,
-- short pair,
-+ NCURSES_PAIRS_T pair,
- void *opts GCC_UNUSED,
- NCURSES_OUTC outc)
- {
-@@ -270,20 +293,20 @@
- NCURSES_EXPORT(int)
- NCURSES_SP_NAME(vid_attr) (NCURSES_SP_DCLx
- attr_t newmode,
-- short pair,
-+ NCURSES_PAIRS_T pair,
- void *opts)
- {
-- T((T_CALLED("vid_attr(%s,%d)"), _traceattr(newmode), pair));
-+ T((T_CALLED("vid_attr(%s,%d)"), _traceattr(newmode), (int) pair));
- returnCode(NCURSES_SP_NAME(vid_puts) (NCURSES_SP_ARGx
- newmode,
- pair,
- opts,
-- NCURSES_SP_NAME(_nc_outch)));
-+ NCURSES_SP_NAME(_nc_putchar)));
- }
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(int)
--vid_attr(attr_t newmode, short pair, void *opts)
-+vid_attr(attr_t newmode, NCURSES_PAIRS_T pair, void *opts)
- {
- return NCURSES_SP_NAME(vid_attr) (CURRENT_SCREEN, newmode, pair, opts);
- }
-@@ -296,24 +319,26 @@
- NCURSES_EXPORT(attr_t)
- NCURSES_SP_NAME(term_attrs) (NCURSES_SP_DCL0)
- {
-- attr_t attrs;
-+ attr_t attrs = 0;
-
- T((T_CALLED("term_attrs()")));
-- attrs = SP_PARM ? NCURSES_SP_NAME(termattrs) (NCURSES_SP_ARG) : 0;
-+ if (SP_PARM) {
-+ attrs = NCURSES_SP_NAME(termattrs) (NCURSES_SP_ARG);
-
-- /* these are only supported for wide-character mode */
-- if (enter_horizontal_hl_mode)
-- attrs |= WA_HORIZONTAL;
-- if (enter_left_hl_mode)
-- attrs |= WA_LEFT;
-- if (enter_low_hl_mode)
-- attrs |= WA_LOW;
-- if (enter_right_hl_mode)
-- attrs |= WA_RIGHT;
-- if (enter_top_hl_mode)
-- attrs |= WA_TOP;
-- if (enter_vertical_hl_mode)
-- attrs |= WA_VERTICAL;
-+ /* these are only supported for wide-character mode */
-+ if (enter_horizontal_hl_mode)
-+ attrs |= WA_HORIZONTAL;
-+ if (enter_left_hl_mode)
-+ attrs |= WA_LEFT;
-+ if (enter_low_hl_mode)
-+ attrs |= WA_LOW;
-+ if (enter_right_hl_mode)
-+ attrs |= WA_RIGHT;
-+ if (enter_top_hl_mode)
-+ attrs |= WA_TOP;
-+ if (enter_vertical_hl_mode)
-+ attrs |= WA_VERTICAL;
-+ }
-
- returnAttr(attrs);
- }
-Index: ncurses/widechar/lib_wacs.c
-Prereq: 1.10
---- ncurses-5.9/ncurses/widechar/lib_wacs.c 2010-12-19 01:43:19.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_wacs.c 2014-02-23 01:21:08.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2013,2014 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 *
-@@ -32,7 +32,7 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_wacs.c,v 1.10 2010/12/19 01:43:19 tom Exp $")
-+MODULE_ID("$Id: lib_wacs.c,v 1.14 2014/02/23 01:21:08 tom Exp $")
-
- NCURSES_EXPORT_VAR(cchar_t) * _nc_wacs = 0;
-
-@@ -119,22 +119,24 @@
- T(("initializing WIDE-ACS map (Unicode is%s active)",
- active ? "" : " not"));
-
-- _nc_wacs = typeCalloc(cchar_t, ACS_LEN);
-- for (n = 0; n < SIZEOF(table); ++n) {
-- int wide = wcwidth(table[n].value[active]);
--
-- m = table[n].map;
-- if (active && (wide == 1)) {
-- SetChar(_nc_wacs[m], table[n].value[active], A_NORMAL);
-- } else if (acs_map[m] & A_ALTCHARSET) {
-- SetChar(_nc_wacs[m], m, A_ALTCHARSET);
-- } else {
-- SetChar(_nc_wacs[m], table[n].value[0], A_NORMAL);
-- }
-+ if ((_nc_wacs = typeCalloc(cchar_t, ACS_LEN)) != 0) {
-+
-+ for (n = 0; n < SIZEOF(table); ++n) {
-+ int wide = wcwidth((wchar_t) table[n].value[active]);
-
-- T(("#%d, SetChar(%c, %#04x) = %s",
-- n, m,
-- table[n].value[active],
-- _tracecchar_t(&_nc_wacs[m])));
-+ m = table[n].map;
-+ if (active && (wide == 1)) {
-+ SetChar(_nc_wacs[m], table[n].value[1], A_NORMAL);
-+ } else if (acs_map[m] & A_ALTCHARSET) {
-+ SetChar(_nc_wacs[m], m, A_ALTCHARSET);
-+ } else {
-+ SetChar(_nc_wacs[m], table[n].value[0], A_NORMAL);
-+ }
-+
-+ T(("#%d, SetChar(%c, %#04x) = %s",
-+ n, m,
-+ table[n].value[active],
-+ _tracecchar_t(&_nc_wacs[m])));
-+ }
- }
- }
-Index: ncurses/widechar/lib_wunctrl.c
-Prereq: 1.14
---- ncurses-5.9/ncurses/widechar/lib_wunctrl.c 2010-12-19 01:42:15.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/lib_wunctrl.c 2012-12-15 20:53:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2001-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2001-2011,2012 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 *
-@@ -35,14 +35,17 @@
-
- #include <curses.priv.h>
-
--MODULE_ID("$Id: lib_wunctrl.c,v 1.14 2010/12/19 01:42:15 tom Exp $")
-+MODULE_ID("$Id: lib_wunctrl.c,v 1.16 2012/12/15 20:53:42 tom Exp $")
-
- NCURSES_EXPORT(wchar_t *)
- NCURSES_SP_NAME(wunctrl) (NCURSES_SP_DCLx cchar_t *wc)
- {
- static wchar_t str[CCHARW_MAX + 1], *wsp;
-+ wchar_t *result;
-
-- if (Charable(*wc)) {
-+ if (wc == 0) {
-+ result = 0;
-+ } else if (SP_PARM != 0 && Charable(*wc)) {
- const char *p =
- NCURSES_SP_NAME(unctrl) (NCURSES_SP_ARGx
- (unsigned) _nc_to_char((wint_t)CharOf(*wc)));
-@@ -51,9 +54,11 @@
- *wsp++ = (wchar_t) _nc_to_widechar(*p);
- }
- *wsp = 0;
-- return str;
-- } else
-- return wc->chars;
-+ result = str;
-+ } else {
-+ result = wc->chars;
-+ }
-+ return result;
- }
-
- #if NCURSES_SP_FUNCS
-Index: ncurses/widechar/widechars.c
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/ncurses/widechar/widechars.c 2013-03-02 18:55:51.000000000 +0000
-@@ -0,0 +1,152 @@
-+/****************************************************************************
-+ * Copyright (c) 2012,2013 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. *
-+ ****************************************************************************/
-+
-+#include <curses.priv.h>
-+
-+#if USE_WIDEC_SUPPORT
-+
-+MODULE_ID("$Id: widechars.c,v 1.5 2013/03/02 18:55:51 tom Exp $")
-+
-+#if defined(__MINGW32__)
-+/*
-+ * MinGW has wide-character functions, but they do not work correctly.
-+ */
-+
-+int
-+_nc_mbtowc(wchar_t *pwc, const char *s, size_t n)
-+{
-+ int result;
-+ int count;
-+ int try;
-+
-+ if (s != 0 && n != 0) {
-+ /*
-+ * MultiByteToWideChar() can decide to return more than one
-+ * wide-character. We want only one. Ignore any trailing null, both
-+ * in the initial count and in the conversion.
-+ */
-+ count = 0;
-+ for (try = 1; try <= (int) n; ++try) {
-+ count = MultiByteToWideChar(CP_UTF8,
-+ MB_ERR_INVALID_CHARS,
-+ s,
-+ try,
-+ pwc,
-+ 0);
-+ TR(TRACE_BITS, ("...try %d:%d", try, count));
-+ if (count > 0) {
-+ break;
-+ }
-+ }
-+ if (count < 1 || count > 2) {
-+ result = -1;
-+ } else {
-+ wchar_t actual[2];
-+ memset(&actual, 0, sizeof(actual));
-+ count = MultiByteToWideChar(CP_UTF8,
-+ MB_ERR_INVALID_CHARS,
-+ s,
-+ try,
-+ actual,
-+ 2);
-+ TR(TRACE_BITS, ("\twin32 ->%#x, %#x", actual[0], actual[1]));
-+ *pwc = actual[0];
-+ if (actual[1] != 0)
-+ result = -1;
-+ else
-+ result = try;
-+ }
-+ } else {
-+ result = 0;
-+ }
-+
-+ return result;
-+}
-+
-+int
-+_nc_mblen(const char *s, size_t n)
-+{
-+ int result = -1;
-+ int count;
-+ wchar_t temp;
-+
-+ if (s != 0 && n != 0) {
-+ count = _nc_mbtowc(&temp, s, n);
-+ if (count == 1) {
-+ int check = WideCharToMultiByte(CP_UTF8,
-+ 0,
-+ &temp,
-+ 1,
-+ NULL,
-+ 0, /* compute length only */
-+ NULL,
-+ NULL);
-+ TR(TRACE_BITS, ("\tcheck ->%d\n", check));
-+ if (check > 0 && (size_t) check <= n) {
-+ result = check;
-+ }
-+ }
-+ } else {
-+ result = 0;
-+ }
-+
-+ return result;
-+}
-+
-+int __MINGW_NOTHROW
-+_nc_wctomb(char *s, wchar_t wc)
-+{
-+ int result;
-+ int check;
-+
-+ check = WideCharToMultiByte(CP_UTF8,
-+ 0,
-+ &wc,
-+ 1,
-+ NULL,
-+ 0, /* compute length only */
-+ NULL,
-+ NULL);
-+ if (check > 0) {
-+ result = WideCharToMultiByte(CP_UTF8,
-+ 0,
-+ &wc,
-+ 1,
-+ s,
-+ check + 1,
-+ NULL,
-+ NULL);
-+ } else {
-+ result = -1;
-+ }
-+ return result;
-+}
-+
-+#endif /* __MINGW32__ */
-+
-+#endif /* USE_WIDEC_SUPPORT */
-Index: ncurses/win32con/gettimeofday.c
-Prereq: 1.2
---- ncurses-5.9/ncurses/win32con/gettimeofday.c 2010-01-16 15:18:51.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/win32con/gettimeofday.c 2014-04-26 19:41:34.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2010,2014 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 *
-@@ -26,13 +26,16 @@
- * authorization. *
- ****************************************************************************/
-
-+#ifdef WINVER
-+# undef WINVER
-+#endif
- #define WINVER 0x0501
-
- #include <curses.priv.h>
-
- #include <windows.h>
-
--MODULE_ID("$Id: gettimeofday.c,v 1.2 2010/01/16 15:18:51 tom Exp $")
-+MODULE_ID("$Id: gettimeofday.c,v 1.3 2014/04/26 19:41:34 juergen Exp $")
-
- #define JAN1970 116444736000000000LL /* the value for 01/01/1970 00:00 */
-
-Index: ncurses/win32con/win_driver.c
-Prereq: 1.10
---- ncurses-5.9/ncurses/win32con/win_driver.c 2010-12-25 19:28:21.000000000 +0000
-+++ ncurses-5.9-20141206/ncurses/win32con/win_driver.c 2014-10-25 00:24:24.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -28,26 +28,61 @@
-
- /****************************************************************************
- * Author: Juergen Pfeifer *
-- * *
-+ * and: Thomas E. Dickey *
- ****************************************************************************/
-
- /*
- * TODO - GetMousePos(POINT * result) from ntconio.c
- * TODO - implement nodelay
-+ * 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 __MINGW32__
-+#include <tchar.h>
-+#else
-+#include <windows.h>
-+#include <wchar.h>
-+#endif
-+
-+#include <io.h>
-+
-+#define PSAPI_VERSION 2
-+#include <psapi.h>
-+
- #define CUR my_term.type.
-
--MODULE_ID("$Id: win_driver.c,v 1.10 2010/12/25 19:28:21 tom Exp $")
-+MODULE_ID("$Id: win_driver.c,v 1.52 2014/10/25 00:24:24 tom Exp $")
-+
-+#ifndef __GNUC__
-+# error We need GCC to compile for MinGW
-+#endif
-
- #define WINMAGIC NCDRV_MAGIC(NCDRV_WINCONSOLE)
-
--#define AssertTCB() assert(TCB!=0 && TCB->magic==WINMAGIC)
--#define SetSP() assert(TCB->csp!=0); sp = TCB->csp
-+#define EXP_OPTIMIZE 0
-+
-+#define array_length(a) (sizeof(a)/sizeof(a[0]))
-+
-+#define okConsoleHandle(TCB) (TCB != 0 && CON.hdl != INVALID_HANDLE_VALUE)
-+
-+#define AssertTCB() assert(TCB != 0 && (TCB->magic == WINMAGIC))
-+#define SetSP() assert(TCB->csp != 0); sp = TCB->csp; (void) sp
-
- #define GenMap(vKey,key) MAKELONG(key, vKey)
-
-+#define AdjustY() (CON.buffered ? 0 : (int) CON.SBI.srWindow.Top)
-+
-+#if USE_WIDEC_SUPPORT
-+#define write_screen WriteConsoleOutputW
-+#define read_screen ReadConsoleOutputW
-+#else
-+#define write_screen WriteConsoleOutput
-+#define read_screen ReadConsoleOutput
-+#endif
-+
- static const LONG keylist[] =
- {
- GenMap(VK_PRIOR, KEY_PPAGE),
-@@ -61,31 +96,40 @@
- GenMap(VK_DELETE, KEY_DC),
- GenMap(VK_INSERT, KEY_IC)
- };
--#define N_INI ((int)(sizeof(keylist)/sizeof(keylist[0])))
-+#define N_INI ((int)array_length(keylist))
- #define FKEYS 24
- #define MAPSIZE (FKEYS + N_INI)
- #define NUMPAIRS 64
-
--typedef struct props {
-- CONSOLE_SCREEN_BUFFER_INFO SBI;
-- bool progMode;
-+/* A process can only have a single console, so it's save
-+ to maintain all the information about it in a single
-+ static scructure.
-+ */
-+static struct {
-+ BOOL initialized;
-+ BOOL buffered;
-+ BOOL window_only;
-+ BOOL progMode;
-+ BOOL isMinTTY;
-+ BOOL isTermInfoConsole;
-+ HANDLE out;
-+ HANDLE inp;
-+ HANDLE hdl;
-+ HANDLE lastOut;
-+ int numButtons;
- DWORD map[MAPSIZE];
- DWORD rmap[MAPSIZE];
- WORD pairs[NUMPAIRS];
--} Properties;
--
--#define PropOf(TCB) ((Properties*)TCB->prop)
-+ 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;
-+} CON;
-
--int
--_nc_mingw_ioctl(int fd GCC_UNUSED,
-- long int request GCC_UNUSED,
-- struct termios *arg GCC_UNUSED)
--{
-- return 0;
-- endwin();
-- fprintf(stderr, "TERMINFO currently not supported on Windows.\n");
-- exit(1);
--}
-+static BOOL console_initialized = FALSE;
-
- static WORD
- MapColor(bool fore, int color)
-@@ -102,29 +146,32 @@
- return (WORD) a;
- }
-
-+#define RevAttr(attr) \
-+ (WORD) (((attr) & 0xff00) | \
-+ ((((attr) & 0x07) << 4) | \
-+ (((attr) & 0x70) >> 4)))
-+
- static WORD
--MapAttr(TERMINAL_CONTROL_BLOCK * TCB, WORD res, chtype ch)
-+MapAttr(WORD res, attr_t ch)
- {
- if (ch & A_COLOR) {
- int p;
-- SCREEN *sp;
-
-- AssertTCB();
-- SetSP();
- p = PairNumber(ch);
-- if (p > 0 && p < NUMPAIRS && TCB != 0 && sp != 0) {
-+ if (p > 0 && p < NUMPAIRS) {
- WORD a;
-- a = PropOf(TCB)->pairs[p];
-- res = (res & 0xff00) | a;
-+ a = CON.pairs[p];
-+ res = (WORD) ((res & 0xff00) | a);
- }
- }
-
-- if (ch & A_REVERSE)
-- res = ((res & 0xff00) | (((res & 0x07) << 4) | ((res & 0x70) >> 4)));
-+ if (ch & A_REVERSE) {
-+ res = RevAttr(res);
-+ }
-
-- if (ch & A_STANDOUT)
-- res = ((res & 0xff00) | (((res & 0x07) << 4) | ((res & 0x70) >> 4))
-- | BACKGROUND_INTENSITY);
-+ if (ch & A_STANDOUT) {
-+ res = RevAttr(res) | BACKGROUND_INTENSITY;
-+ }
-
- if (ch & A_BOLD)
- res |= FOREGROUND_INTENSITY;
-@@ -135,33 +182,138 @@
- return res;
- }
-
-+#if 0 /* def TRACE */
-+static void
-+dump_screen(const char *fn, int ln)
-+{
-+ int max_cells = (CON.SBI.dwSize.Y * (1 + CON.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 = CON.SBI.srWindow.Top;
-+ save_region.Left = CON.SBI.srWindow.Left;
-+ save_region.Bottom = CON.SBI.srWindow.Bottom;
-+ save_region.Right = CON.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(CON.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_write(TERMINAL_CONTROL_BLOCK * TCB, int y, int x, chtype *str, int n)
-+con_write16(TERMINAL_CONTROL_BLOCK * TCB, int y, int x, cchar_t *str, int limit)
- {
-- CHAR_INFO ci[n];
-+ int actual = 0;
-+ CHAR_INFO ci[limit];
- COORD loc, siz;
- SMALL_RECT rec;
- int i;
-- chtype ch;
-+ cchar_t ch;
- SCREEN *sp;
-
- AssertTCB();
-+ SetSP();
-
-- if (TCB == 0 || InvalidConsoleHandle(TCB->hdl))
-- return FALSE;
-+ for (i = actual = 0; i < limit; i++) {
-+ ch = str[i];
-+ if (isWidecExt(ch))
-+ continue;
-+ ci[actual].Char.UnicodeChar = CharOf(ch);
-+ ci[actual].Attributes = MapAttr(CON.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(CON.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[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(TCB,
-- PropOf(TCB)->SBI.wAttributes,
-+ ci[i].Attributes = MapAttr(CON.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)));
-+ ChCharOf(NCURSES_SP_NAME(_nc_acs_char) (sp, ChCharOf(ch)));
- }
- }
-
-@@ -175,57 +327,223 @@
- rec.Right = (short) (x + n - 1);
- rec.Bottom = rec.Top;
-
-- return WriteConsoleOutput(TCB->hdl, ci, siz, loc, &rec);
-+ return write_screen(CON.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 void
-+selectActiveHandle(void)
-+{
-+ if (CON.lastOut != CON.hdl) {
-+ CON.lastOut = CON.hdl;
-+ SetConsoleActiveScreenBuffer(CON.lastOut);
-+ }
-+}
-+
-+static bool
-+restore_original_screen(void)
-+{
-+ COORD bufferCoord;
-+ bool result = FALSE;
-+ SMALL_RECT save_region = CON.save_region;
-+
-+ T(("... restoring %s", CON.window_only ? "window" : "entire buffer"));
-+
-+ bufferCoord.X = (SHORT) (CON.window_only ? CON.SBI.srWindow.Left : 0);
-+ bufferCoord.Y = (SHORT) (CON.window_only ? CON.SBI.srWindow.Top : 0);
-+
-+ if (write_screen(CON.hdl,
-+ CON.save_screen,
-+ CON.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)",
-+ CON.save_size.Y,
-+ CON.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
--drv_doupdate(TERMINAL_CONTROL_BLOCK * TCB)
-+wcon_doupdate(TERMINAL_CONTROL_BLOCK * TCB)
- {
-+ int result = ERR;
- int y, nonempty, n, x0, x1, Width, Height;
- SCREEN *sp;
-
- AssertTCB();
- SetSP();
-
-- Width = screen_columns(sp);
-- Height = screen_lines(sp);
-- nonempty = min(Height, NewScreen(sp)->_maxy + 1);
--
-- if ((CurScreen(sp)->_clear || NewScreen(sp)->_clear)) {
-- int x;
-- chtype empty[Width];
-+ T((T_CALLED("win32con::wcon_doupdate(%p)"), TCB));
-+ if (okConsoleHandle(TCB)) {
-+
-+ 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) {
-
-- for (x = 0; x < Width; x++)
-- empty[x] = ' ';
-+ 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 = FALSE;
-+ }
-+
-+ if ((CurScreen(sp)->_clear || NewScreen(sp)->_clear)) {
-+ int x;
-+#if USE_WIDEC_SUPPORT
-+ cchar_t empty[Width];
-+ wchar_t blank[2] =
-+ {
-+ L' ', L'\0'
-+ };
-+
-+ for (x = 0; x < Width; x++)
-+ setcchar(&empty[x], blank, 0, 0, 0);
-+#else
-+ chtype empty[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++) {
-- con_write(TCB, y, 0, empty, Width);
-- memcpy(empty,
-- CurScreen(sp)->_line[y].text,
-- Width * sizeof(chtype));
-- }
-- CurScreen(sp)->_clear = FALSE;
-- NewScreen(sp)->_clear = FALSE;
-- touchwin(NewScreen(sp));
-- }
--
-- for (y = 0; y < nonempty; y++) {
-- x0 = NewScreen(sp)->_line[y].firstchar;
-- if (x0 != _NOCHANGE) {
-- 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,
-- n * sizeof(chtype));
-- con_write(TCB,
-- y,
-- x0,
-- ((chtype *) CurScreen(sp)->_line[y].text) + x0, n);
-+ 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) {
-@@ -234,95 +552,160 @@
- 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;
-+ /* 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);
-+ }
-
-- TCB->drv->hwcur(TCB, 0, 0, CurScreen(sp)->_cury, CurScreen(sp)->_curx);
-+ 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);
-+ }
-+ selectActiveHandle();
-+ result = OK;
- }
-- SetConsoleActiveScreenBuffer(TCB->hdl);
-- return OK;
-+ returnCode(result);
- }
-
- static bool
--drv_CanHandle(TERMINAL_CONTROL_BLOCK * TCB,
-- const char *tname,
-- int *errret GCC_UNUSED)
-+wcon_CanHandle(TERMINAL_CONTROL_BLOCK * TCB,
-+ const char *tname,
-+ int *errret GCC_UNUSED)
- {
- bool code = FALSE;
-
-- T((T_CALLED("win32con::drv_CanHandle(%p)"), TCB));
-+ T((T_CALLED("win32con::wcon_CanHandle(%p)"), TCB));
-
-- assert(TCB != 0);
-- assert(tname != 0);
-+ assert((TCB != 0) && (tname != 0));
-
- TCB->magic = WINMAGIC;
-- if (*tname == 0 || *tname == 0) {
-- code = TRUE;
-- } else {
-- TERMINAL my_term;
-- int status;
--
-- code = FALSE;
--#if (USE_DATABASE || USE_TERMCAP)
-- status = _nc_setup_tinfo(tname, &my_term.type);
--#else
-- status = TGETENT_NO;
--#endif
-- if (status != TGETENT_YES) {
-- const TERMTYPE *fallback = _nc_fallback(tname);
-
-- if (fallback) {
-- my_term.type = *fallback;
-- status = TGETENT_YES;
-- } else if (!strcmp(tname, "unknown")) {
-- code = TRUE;
-- }
-- }
-- if (status == TGETENT_YES) {
-- if (generic_type || hard_copy)
-- code = TRUE;
-+ if (tname == 0 || *tname == 0)
-+ 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;
- }
-
-- if (code) {
-- if ((TCB->term.type.Booleans) == 0) {
-- _nc_init_entry(&(TCB->term.type));
-- }
-+ /*
-+ * This is intentional, to avoid unnecessary breakage of applications
-+ * using <term.h> symbols.
-+ */
-+ if (code && (TCB->term.type.Booleans == 0)) {
-+ _nc_init_termtype(&(TCB->term.type));
- }
-
-+ if (!code) {
-+ if (_nc_mingw_isconsole(0))
-+ CON.isTermInfoConsole = TRUE;
-+ }
- returnBool(code);
- }
-
- static int
--drv_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB,
-- bool beepFlag GCC_UNUSED)
-+wcon_dobeepflash(TERMINAL_CONTROL_BLOCK * TCB,
-+ int beepFlag)
- {
- SCREEN *sp;
-- int res = ERR;
-+ int res = OK;
-+
-+ int high = (CON.SBI.srWindow.Bottom - CON.SBI.srWindow.Top + 1);
-+ int wide = (CON.SBI.srWindow.Right - CON.SBI.srWindow.Left + 1);
-+ int max_cells = (high * wide);
-+ int i;
-+
-+ CHAR_INFO this_screen[max_cells];
-+ CHAR_INFO that_screen[max_cells];
-+ COORD this_size;
-+ SMALL_RECT this_region;
-+ COORD bufferCoord;
-
- AssertTCB();
-+
- SetSP();
-
-+ this_region.Top = CON.SBI.srWindow.Top;
-+ this_region.Left = CON.SBI.srWindow.Left;
-+ this_region.Bottom = CON.SBI.srWindow.Bottom;
-+ this_region.Right = CON.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(CON.hdl,
-+ this_screen,
-+ this_size,
-+ bufferCoord,
-+ &this_region)) {
-+
-+ memcpy(that_screen, this_screen, sizeof(that_screen));
-+
-+ for (i = 0; i < max_cells; i++) {
-+ that_screen[i].Attributes = RevAttr(that_screen[i].Attributes);
-+ }
-+
-+ write_screen(CON.hdl, that_screen, this_size, bufferCoord, &this_region);
-+ Sleep(200);
-+ write_screen(CON.hdl, this_screen, this_size, bufferCoord, &this_region);
-+
-+ } else {
-+ MessageBeep(MB_ICONWARNING); /* MB_OK might be better */
-+ }
- return res;
- }
-
- static int
--drv_print(TERMINAL_CONTROL_BLOCK * TCB,
-- char *data GCC_UNUSED,
-- int len GCC_UNUSED)
-+wcon_print(TERMINAL_CONTROL_BLOCK * TCB,
-+ char *data GCC_UNUSED,
-+ int len GCC_UNUSED)
- {
- SCREEN *sp;
-
-@@ -333,9 +716,9 @@
- }
-
- static int
--drv_defaultcolors(TERMINAL_CONTROL_BLOCK * TCB,
-- int fg GCC_UNUSED,
-- int bg GCC_UNUSED)
-+wcon_defaultcolors(TERMINAL_CONTROL_BLOCK * TCB,
-+ int fg GCC_UNUSED,
-+ int bg GCC_UNUSED)
- {
- SCREEN *sp;
- int code = ERR;
-@@ -346,39 +729,73 @@
- return (code);
- }
-
-+static bool
-+get_SBI(void)
-+{
-+ bool rc = FALSE;
-+ if (GetConsoleScreenBufferInfo(CON.hdl, &(CON.SBI))) {
-+ T(("GetConsoleScreenBufferInfo"));
-+ T(("... buffer(X:%d Y:%d)",
-+ CON.SBI.dwSize.X,
-+ CON.SBI.dwSize.Y));
-+ T(("... window(X:%d Y:%d)",
-+ CON.SBI.dwMaximumWindowSize.X,
-+ CON.SBI.dwMaximumWindowSize.Y));
-+ T(("... cursor(X:%d Y:%d)",
-+ CON.SBI.dwCursorPosition.X,
-+ CON.SBI.dwCursorPosition.Y));
-+ T(("... display(Top:%d Bottom:%d Left:%d Right:%d)",
-+ CON.SBI.srWindow.Top,
-+ CON.SBI.srWindow.Bottom,
-+ CON.SBI.srWindow.Left,
-+ CON.SBI.srWindow.Right));
-+ if (CON.buffered) {
-+ CON.origin.X = 0;
-+ CON.origin.Y = 0;
-+ } else {
-+ CON.origin.X = CON.SBI.srWindow.Left;
-+ CON.origin.Y = CON.SBI.srWindow.Top;
-+ }
-+ rc = TRUE;
-+ } else {
-+ T(("GetConsoleScreenBufferInfo ERR"));
-+ }
-+ return rc;
-+}
-+
- static void
--drv_setcolor(TERMINAL_CONTROL_BLOCK * TCB,
-- bool fore,
-- int color,
-- int (*outc) (SCREEN *, int) GCC_UNUSED)
-+wcon_setcolor(TERMINAL_CONTROL_BLOCK * TCB,
-+ int fore,
-+ int color,
-+ int (*outc) (SCREEN *, int) GCC_UNUSED)
- {
- AssertTCB();
-
-- if (TCB && !InvalidConsoleHandle(TCB->hdl)) {
-+ if (okConsoleHandle(TCB)) {
- WORD a = MapColor(fore, color);
-- a = ((PropOf(TCB)->SBI.wAttributes) & (fore ? 0xfff8 : 0xff8f)) | a;
-- SetConsoleTextAttribute(TCB->hdl, a);
-- GetConsoleScreenBufferInfo(TCB->hdl, &(PropOf(TCB)->SBI));
-+ a |= (WORD) ((CON.SBI.wAttributes) & (fore ? 0xfff8 : 0xff8f));
-+ SetConsoleTextAttribute(CON.hdl, a);
-+ get_SBI();
- }
- }
-
- static bool
--drv_rescol(TERMINAL_CONTROL_BLOCK * TCB)
-+wcon_rescol(TERMINAL_CONTROL_BLOCK * TCB)
- {
- bool res = FALSE;
-
- AssertTCB();
-- if (TCB && !InvalidConsoleHandle(TCB->hdl)) {
-+ if (okConsoleHandle(TCB)) {
- WORD a = FOREGROUND_BLUE | FOREGROUND_RED | FOREGROUND_GREEN;
-- SetConsoleTextAttribute(TCB->hdl, a);
-- GetConsoleScreenBufferInfo(TCB->hdl, &(PropOf(TCB)->SBI));
-+ SetConsoleTextAttribute(CON.hdl, a);
-+ get_SBI();
- res = TRUE;
- }
- return res;
- }
-
- static bool
--drv_rescolors(TERMINAL_CONTROL_BLOCK * TCB)
-+wcon_rescolors(TERMINAL_CONTROL_BLOCK * TCB)
- {
- int result = FALSE;
- SCREEN *sp;
-@@ -390,29 +807,42 @@
- }
-
- static int
--drv_size(TERMINAL_CONTROL_BLOCK * TCB, int *Lines, int *Cols)
-+wcon_size(TERMINAL_CONTROL_BLOCK * TCB, int *Lines, int *Cols)
- {
-+ int result = ERR;
-+
- AssertTCB();
-
-- if (TCB == NULL || Lines == NULL || Cols == NULL || InvalidConsoleHandle(TCB->hdl))
-- return ERR;
-+ T((T_CALLED("win32con::wcon_size(%p)"), TCB));
-
-- *Lines = (int) (PropOf(TCB)->SBI.dwSize.Y);
-- *Cols = (int) (PropOf(TCB)->SBI.dwSize.X);
-- return OK;
-+ if (okConsoleHandle(TCB) &&
-+ Lines != NULL &&
-+ Cols != NULL) {
-+ if (CON.buffered) {
-+ *Lines = (int) (CON.SBI.dwSize.Y);
-+ *Cols = (int) (CON.SBI.dwSize.X);
-+ } else {
-+ *Lines = (int) (CON.SBI.srWindow.Bottom + 1 -
-+ CON.SBI.srWindow.Top);
-+ *Cols = (int) (CON.SBI.srWindow.Right + 1 -
-+ CON.SBI.srWindow.Left);
-+ }
-+ result = OK;
-+ }
-+ returnCode(result);
- }
-
- static int
--drv_setsize(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED,
-- int l GCC_UNUSED,
-- int c GCC_UNUSED)
-+wcon_setsize(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED,
-+ int l GCC_UNUSED,
-+ int c GCC_UNUSED)
- {
- AssertTCB();
- return ERR;
- }
-
- static int
--drv_sgmode(TERMINAL_CONTROL_BLOCK * TCB, bool setFlag, TTY * buf)
-+wcon_sgmode(TERMINAL_CONTROL_BLOCK * TCB, int setFlag, TTY * buf)
- {
- DWORD dwFlag = 0;
- tcflag_t iflag;
-@@ -427,48 +857,48 @@
- iflag = buf->c_iflag;
- lflag = buf->c_lflag;
-
-- GetConsoleMode(TCB->inp, &dwFlag);
-+ GetConsoleMode(CON.inp, &dwFlag);
-
- if (lflag & ICANON)
- dwFlag |= ENABLE_LINE_INPUT;
- else
-- dwFlag &= ~ENABLE_LINE_INPUT;
-+ dwFlag &= (DWORD) (~ENABLE_LINE_INPUT);
-
- if (lflag & ECHO)
- dwFlag |= ENABLE_ECHO_INPUT;
- else
-- dwFlag &= ~ENABLE_ECHO_INPUT;
-+ dwFlag &= (DWORD) (~ENABLE_ECHO_INPUT);
-
- if (iflag & BRKINT)
- dwFlag |= ENABLE_PROCESSED_INPUT;
- else
-- dwFlag &= ~ENABLE_PROCESSED_INPUT;
-+ dwFlag &= (DWORD) (~ENABLE_PROCESSED_INPUT);
-
- dwFlag |= ENABLE_MOUSE_INPUT;
-
- buf->c_iflag = iflag;
- buf->c_lflag = lflag;
-- SetConsoleMode(TCB->inp, dwFlag);
-+ SetConsoleMode(CON.inp, dwFlag);
- TCB->term.Nttyb = *buf;
- } else {
- iflag = TCB->term.Nttyb.c_iflag;
- lflag = TCB->term.Nttyb.c_lflag;
-- GetConsoleMode(TCB->inp, &dwFlag);
-+ GetConsoleMode(CON.inp, &dwFlag);
-
- if (dwFlag & ENABLE_LINE_INPUT)
- lflag |= ICANON;
- else
-- lflag &= ~ICANON;
-+ lflag &= (tcflag_t) (~ICANON);
-
- if (dwFlag & ENABLE_ECHO_INPUT)
- lflag |= ECHO;
- else
-- lflag &= ~ECHO;
-+ lflag &= (tcflag_t) (~ECHO);
-
- if (dwFlag & ENABLE_PROCESSED_INPUT)
- iflag |= BRKINT;
- else
-- iflag &= ~BRKINT;
-+ iflag &= (tcflag_t) (~BRKINT);
-
- TCB->term.Nttyb.c_iflag = iflag;
- TCB->term.Nttyb.c_lflag = lflag;
-@@ -478,8 +908,86 @@
- return OK;
- }
-
-+#define MIN_WIDE 80
-+#define MIN_HIGH 24
-+
-+/*
-+ * In "normal" mode, reset the buffer- and window-sizes back to their original values.
-+ */
-+static void
-+set_scrollback(bool normal, CONSOLE_SCREEN_BUFFER_INFO * info)
-+{
-+ SMALL_RECT rect;
-+ COORD coord;
-+ bool changed = FALSE;
-+
-+ T((T_CALLED("win32con::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, &CON.SBI, sizeof(*info)) != 0) {
-+ changed = TRUE;
-+ CON.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(CON.hdl, coord); /* dwSize */
-+ SetConsoleWindowInfo(CON.hdl, TRUE, &rect); /* srWindow */
-+ get_SBI();
-+ }
-+ returnVoid;
-+}
-+
- static int
--drv_mode(TERMINAL_CONTROL_BLOCK * TCB, bool progFlag, bool defFlag)
-+wcon_mode(TERMINAL_CONTROL_BLOCK * TCB, int progFlag, int defFlag)
- {
- SCREEN *sp;
- TERMINAL *_term = (TERMINAL *) TCB;
-@@ -488,30 +996,35 @@
- AssertTCB();
- sp = TCB->csp;
-
-- PropOf(TCB)->progMode = progFlag;
-- SetConsoleActiveScreenBuffer(progFlag ? TCB->hdl : TCB->out);
-+ T((T_CALLED("win32con::wcon_mode(%p, prog=%d, def=%d)"), TCB, progFlag, defFlag));
-+ CON.progMode = progFlag;
-+ CON.lastOut = progFlag ? CON.hdl : CON.out;
-+ SetConsoleActiveScreenBuffer(CON.lastOut);
-
- if (progFlag) /* prog mode */ {
- if (defFlag) {
-- if ((drv_sgmode(TCB, FALSE, &(_term->Nttyb)) == OK)) {
-- _term->Nttyb.c_oflag &= ~OFLAGS_TABS;
-+ if ((wcon_sgmode(TCB, FALSE, &(_term->Nttyb)) == OK)) {
-+ _term->Nttyb.c_oflag &= (tcflag_t) (~OFLAGS_TABS);
- code = OK;
- }
- } else {
- /* reset_prog_mode */
-- if (drv_sgmode(TCB, TRUE, &(_term->Nttyb)) == OK) {
-+ if (wcon_sgmode(TCB, TRUE, &(_term->Nttyb)) == OK) {
- if (sp) {
- if (sp->_keypad_on)
- _nc_keypad(sp, TRUE);
-- NC_BUFFERED(sp, TRUE);
-+ }
-+ if (!CON.buffered) {
-+ set_scrollback(FALSE, &CON.SBI);
- }
- code = OK;
- }
- }
-+ T(("... buffered:%d, clear:%d", CON.buffered, CurScreen(sp)->_clear));
- } else { /* shell mode */
- if (defFlag) {
- /* def_shell_mode */
-- if (drv_sgmode(TCB, FALSE, &(_term->Ottyb)) == OK) {
-+ if (wcon_sgmode(TCB, FALSE, &(_term->Ottyb)) == OK) {
- code = OK;
- }
- } else {
-@@ -519,22 +1032,27 @@
- if (sp) {
- _nc_keypad(sp, FALSE);
- NCURSES_SP_NAME(_nc_flush) (sp);
-- NC_BUFFERED(sp, FALSE);
- }
-- code = drv_sgmode(TCB, TRUE, &(_term->Ottyb));
-+ code = wcon_sgmode(TCB, TRUE, &(_term->Ottyb));
-+ if (!CON.buffered) {
-+ set_scrollback(TRUE, &CON.save_SBI);
-+ if (!restore_original_screen())
-+ code = ERR;
-+ }
-+ SetConsoleCursorInfo(CON.hdl, &CON.save_CI);
- }
- }
-
-- return (code);
-+ returnCode(code);
- }
-
- static void
--drv_screen_init(SCREEN *sp GCC_UNUSED)
-+wcon_screen_init(SCREEN *sp GCC_UNUSED)
- {
- }
-
- static void
--drv_wrap(SCREEN *sp GCC_UNUSED)
-+wcon_wrap(SCREEN *sp GCC_UNUSED)
- {
- }
-
-@@ -557,17 +1075,15 @@
- }
-
- static int
--MapKey(TERMINAL_CONTROL_BLOCK * TCB, WORD vKey)
-+MapKey(WORD vKey)
- {
- WORD nKey = 0;
- void *res;
- LONG key = GenMap(vKey, 0);
- int code = -1;
-
-- AssertTCB();
--
- res = bsearch(&key,
-- PropOf(TCB)->map,
-+ CON.map,
- (size_t) (N_INI + FKEYS),
- sizeof(keylist[0]),
- keycompare);
-@@ -582,9 +1098,9 @@
- }
-
- static void
--drv_release(TERMINAL_CONTROL_BLOCK * TCB)
-+wcon_release(TERMINAL_CONTROL_BLOCK * TCB)
- {
-- T((T_CALLED("win32con::drv_release(%p)"), TCB));
-+ T((T_CALLED("win32con::wcon_release(%p)"), TCB));
-
- AssertTCB();
- if (TCB->prop)
-@@ -593,38 +1109,96 @@
- returnVoid;
- }
-
--static void
--drv_init(TERMINAL_CONTROL_BLOCK * TCB)
-+static bool
-+read_screen_data(void)
- {
-- DWORD num_buttons;
-+ bool result = FALSE;
-+ COORD bufferCoord;
-+ size_t want;
-
-- T((T_CALLED("win32con::drv_init(%p)"), TCB));
-+ CON.save_size.X = (SHORT) (CON.save_region.Right
-+ - CON.save_region.Left + 1);
-+ CON.save_size.Y = (SHORT) (CON.save_region.Bottom
-+ - CON.save_region.Top + 1);
-+
-+ want = (size_t) (CON.save_size.X * CON.save_size.Y);
-+
-+ if ((CON.save_screen = malloc(want * sizeof(CHAR_INFO))) != 0) {
-+ bufferCoord.X = (SHORT) (CON.window_only ? CON.SBI.srWindow.Left : 0);
-+ bufferCoord.Y = (SHORT) (CON.window_only ? CON.SBI.srWindow.Top : 0);
-+
-+ T(("... reading console %s %dx%d into %d,%d - %d,%d at %d,%d",
-+ CON.window_only ? "window" : "buffer",
-+ CON.save_size.Y, CON.save_size.X,
-+ CON.save_region.Top,
-+ CON.save_region.Left,
-+ CON.save_region.Bottom,
-+ CON.save_region.Right,
-+ bufferCoord.Y,
-+ bufferCoord.X));
-+
-+ if (read_screen(CON.hdl,
-+ CON.save_screen,
-+ CON.save_size,
-+ bufferCoord,
-+ &CON.save_region)) {
-+ result = TRUE;
-+ } else {
-+ T((" error %#lx", (unsigned long) GetLastError()));
-+ FreeAndNull(CON.save_screen);
-+ }
-+ }
-
-- AssertTCB();
-+ return result;
-+}
-
-- if (TCB) {
-- BOOL b = AllocConsole();
-- WORD a;
-- int i;
-+/*
-+ * 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;
-
-- if (!b)
-- b = AttachConsole(ATTACH_PARENT_PROCESS);
-+ CON.save_region.Top = 0;
-+ CON.save_region.Left = 0;
-+ CON.save_region.Bottom = (SHORT) (CON.SBI.dwSize.Y - 1);
-+ CON.save_region.Right = (SHORT) (CON.SBI.dwSize.X - 1);
-+
-+ if (read_screen_data()) {
-+ result = TRUE;
-+ } else {
-
-- TCB->inp = GetStdHandle(STD_INPUT_HANDLE);
-- TCB->out = GetStdHandle(STD_OUTPUT_HANDLE);
-+ CON.save_region.Top = CON.SBI.srWindow.Top;
-+ CON.save_region.Left = CON.SBI.srWindow.Left;
-+ CON.save_region.Bottom = CON.SBI.srWindow.Bottom;
-+ CON.save_region.Right = CON.SBI.srWindow.Right;
-
-- if (getenv("NCGDB"))
-- TCB->hdl = TCB->out;
-- else
-- TCB->hdl = CreateConsoleScreenBuffer(GENERIC_READ | GENERIC_WRITE,
-- 0,
-- NULL,
-- CONSOLE_TEXTMODE_BUFFER,
-- NULL);
--
-- if (!InvalidConsoleHandle(TCB->hdl)) {
-- TCB->prop = typeCalloc(Properties, 1);
-- GetConsoleScreenBufferInfo(TCB->hdl, &(PropOf(TCB)->SBI));
-+ CON.window_only = TRUE;
-+
-+ if (read_screen_data()) {
-+ result = TRUE;
-+ }
-+ }
-+
-+ T(("... save original screen contents %s", result ? "ok" : "err"));
-+ return result;
-+}
-+
-+static void
-+wcon_init(TERMINAL_CONTROL_BLOCK * TCB)
-+{
-+ T((T_CALLED("win32con::wcon_init(%p)"), TCB));
-+
-+ AssertTCB();
-+
-+ if (TCB) {
-+ if (CON.hdl == INVALID_HANDLE_VALUE) {
-+ returnVoid;
- }
-
- TCB->info.initcolor = TRUE;
-@@ -640,43 +1214,18 @@
- TCB->info.nocolorvideo = 1;
- TCB->info.tabsize = 8;
-
-- if (GetNumberOfConsoleMouseButtons(&num_buttons)) {
-- T(("mouse has %ld buttons", num_buttons));
-- TCB->info.numbuttons = num_buttons;
-- } else {
-- TCB->info.numbuttons = 1;
-- }
--
-+ TCB->info.numbuttons = CON.numButtons;
- TCB->info.defaultPalette = _nc_cga_palette;
-
-- for (i = 0; i < (N_INI + FKEYS); i++) {
-- if (i < N_INI)
-- PropOf(TCB)->rmap[i] = PropOf(TCB)->map[i] = keylist[i];
-- else
-- PropOf(TCB)->rmap[i] = PropOf(TCB)->map[i] =
-- GenMap((VK_F1 + (i - N_INI)), (KEY_F(1) + (i - N_INI)));
-- }
-- qsort(PropOf(TCB)->map,
-- (size_t) (MAPSIZE),
-- sizeof(keylist[0]),
-- keycompare);
-- qsort(PropOf(TCB)->rmap,
-- (size_t) (MAPSIZE),
-- sizeof(keylist[0]),
-- rkeycompare);
--
-- a = MapColor(true, COLOR_WHITE) | MapColor(false, COLOR_BLACK);
-- for (i = 0; i < NUMPAIRS; i++)
-- PropOf(TCB)->pairs[i] = a;
- }
- returnVoid;
- }
-
- static void
--drv_initpair(TERMINAL_CONTROL_BLOCK * TCB,
-- short pair,
-- short f,
-- short b)
-+wcon_initpair(TERMINAL_CONTROL_BLOCK * TCB,
-+ int pair,
-+ int f,
-+ int b)
- {
- SCREEN *sp;
-
-@@ -685,16 +1234,16 @@
-
- if ((pair > 0) && (pair < NUMPAIRS) && (f >= 0) && (f < 8)
- && (b >= 0) && (b < 8)) {
-- PropOf(TCB)->pairs[pair] = MapColor(true, f) | MapColor(false, b);
-+ CON.pairs[pair] = MapColor(true, f) | MapColor(false, b);
- }
- }
-
- static void
--drv_initcolor(TERMINAL_CONTROL_BLOCK * TCB,
-- short color GCC_UNUSED,
-- short r GCC_UNUSED,
-- short g GCC_UNUSED,
-- short b GCC_UNUSED)
-+wcon_initcolor(TERMINAL_CONTROL_BLOCK * TCB,
-+ int color GCC_UNUSED,
-+ int r GCC_UNUSED,
-+ int g GCC_UNUSED,
-+ int b GCC_UNUSED)
- {
- SCREEN *sp;
-
-@@ -703,11 +1252,11 @@
- }
-
- static void
--drv_do_color(TERMINAL_CONTROL_BLOCK * TCB,
-- short old_pair GCC_UNUSED,
-- short pair GCC_UNUSED,
-- bool reverse GCC_UNUSED,
-- int (*outc) (SCREEN *, int) GCC_UNUSED
-+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;
-@@ -717,7 +1266,7 @@
- }
-
- static void
--drv_initmouse(TERMINAL_CONTROL_BLOCK * TCB)
-+wcon_initmouse(TERMINAL_CONTROL_BLOCK * TCB)
- {
- SCREEN *sp;
-
-@@ -728,7 +1277,7 @@
- }
-
- static int
--drv_testmouse(TERMINAL_CONTROL_BLOCK * TCB, int delay)
-+wcon_testmouse(TERMINAL_CONTROL_BLOCK * TCB, int delay)
- {
- int rc = 0;
- SCREEN *sp;
-@@ -739,36 +1288,36 @@
- if (sp->_drv_mouse_head < sp->_drv_mouse_tail) {
- rc = TW_MOUSE;
- } else {
-- rc = TCBOf(sp)->drv->twait(TCBOf(sp),
-- TWAIT_MASK,
-- delay,
-- (int *) 0
-- EVENTLIST_2nd(evl));
-+ rc = TCBOf(sp)->drv->td_twait(TCBOf(sp),
-+ TWAIT_MASK,
-+ delay,
-+ (int *) 0
-+ EVENTLIST_2nd(evl));
- }
-
- return rc;
- }
-
- static int
--drv_mvcur(TERMINAL_CONTROL_BLOCK * TCB,
-- int yold GCC_UNUSED, int xold GCC_UNUSED,
-- int y, int x)
-+wcon_mvcur(TERMINAL_CONTROL_BLOCK * TCB,
-+ int yold GCC_UNUSED, int xold GCC_UNUSED,
-+ int y, int x)
- {
- int ret = ERR;
-- if (TCB && !InvalidConsoleHandle(TCB->hdl)) {
-+ if (okConsoleHandle(TCB)) {
- COORD loc;
- loc.X = (short) x;
-- loc.Y = (short) y;
-- SetConsoleCursorPosition(TCB->hdl, loc);
-+ loc.Y = (short) (y + AdjustY());
-+ SetConsoleCursorPosition(CON.hdl, loc);
- ret = OK;
- }
- return ret;
- }
-
- static void
--drv_hwlabel(TERMINAL_CONTROL_BLOCK * TCB,
-- int labnum GCC_UNUSED,
-- char *text GCC_UNUSED)
-+wcon_hwlabel(TERMINAL_CONTROL_BLOCK * TCB,
-+ int labnum GCC_UNUSED,
-+ char *text GCC_UNUSED)
- {
- SCREEN *sp;
-
-@@ -777,8 +1326,8 @@
- }
-
- static void
--drv_hwlabelOnOff(TERMINAL_CONTROL_BLOCK * TCB,
-- bool OnFlag GCC_UNUSED)
-+wcon_hwlabelOnOff(TERMINAL_CONTROL_BLOCK * TCB,
-+ int OnFlag GCC_UNUSED)
- {
- SCREEN *sp;
-
-@@ -787,7 +1336,7 @@
- }
-
- static chtype
--drv_conattr(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED)
-+wcon_conattr(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED)
- {
- chtype res = A_NORMAL;
- res |= (A_BOLD | A_DIM | A_REVERSE | A_STANDOUT | A_COLOR);
-@@ -795,7 +1344,7 @@
- }
-
- static void
--drv_setfilter(TERMINAL_CONTROL_BLOCK * TCB)
-+wcon_setfilter(TERMINAL_CONTROL_BLOCK * TCB)
- {
- SCREEN *sp;
-
-@@ -804,9 +1353,9 @@
- }
-
- static void
--drv_initacs(TERMINAL_CONTROL_BLOCK * TCB,
-- chtype *real_map GCC_UNUSED,
-- chtype *fake_map GCC_UNUSED)
-+wcon_initacs(TERMINAL_CONTROL_BLOCK * TCB,
-+ chtype *real_map GCC_UNUSED,
-+ chtype *fake_map GCC_UNUSED)
- {
- #define DATA(a,b) { a, b }
- static struct {
-@@ -844,7 +1393,7 @@
- SetSP();
-
- for (n = 0; n < SIZEOF(table); ++n) {
-- real_map[table[n].acs_code] = table[n].use_code | A_ALTCHARSET;
-+ 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;
- }
-@@ -869,11 +1418,11 @@
- static int
- Adjust(int milliseconds, int diff)
- {
-- if (milliseconds == INFINITY)
-- return milliseconds;
-- milliseconds -= diff;
-- if (milliseconds < 0)
-- milliseconds = 0;
-+ if (milliseconds != INFINITY) {
-+ milliseconds -= diff;
-+ if (milliseconds < 0)
-+ milliseconds = 0;
-+ }
- return milliseconds;
- }
-
-@@ -884,13 +1433,12 @@
- RIGHTMOST_BUTTON_PRESSED)
-
- static int
--decode_mouse(TERMINAL_CONTROL_BLOCK * TCB, int mask)
-+decode_mouse(SCREEN *sp, int mask)
- {
-- SCREEN *sp;
- int result = 0;
-
-- AssertTCB();
-- SetSP();
-+ (void) sp;
-+ assert(sp && console_initialized);
-
- if (mask & FROM_LEFT_1ST_BUTTON_PRESSED)
- result |= BUTTON1_PRESSED;
-@@ -902,7 +1450,7 @@
- result |= BUTTON4_PRESSED;
-
- if (mask & RIGHTMOST_BUTTON_PRESSED) {
-- switch (TCB->info.numbuttons) {
-+ switch (CON.numButtons) {
- case 1:
- result |= BUTTON1_PRESSED;
- break;
-@@ -922,26 +1470,26 @@
- }
-
- static int
--drv_twait(TERMINAL_CONTROL_BLOCK * TCB,
-- int mode,
-- int milliseconds,
-- int *timeleft
-- EVENTLIST_2nd(_nc_eventlist * evl))
-+console_twait(
-+ SCREEN *sp,
-+ HANDLE fd,
-+ int mode,
-+ int milliseconds,
-+ int *timeleft
-+ EVENTLIST_2nd(_nc_eventlist * evl))
- {
-- SCREEN *sp;
- INPUT_RECORD inp_rec;
- BOOL b;
-- DWORD nRead = 0, rc = -1;
-+ DWORD nRead = 0, rc = (DWORD) (-1);
- int code = 0;
- FILETIME fstart;
- FILETIME fend;
- int diff;
- bool isImmed = (milliseconds == 0);
-
--#define CONSUME() ReadConsoleInput(TCB->inp,&inp_rec,1,&nRead)
-+#define CONSUME() ReadConsoleInput(fd,&inp_rec,1,&nRead)
-
-- AssertTCB();
-- SetSP();
-+ assert(sp);
-
- TR(TRACE_IEVENT, ("start twait: %d milliseconds, mode: %d",
- milliseconds, mode));
-@@ -953,19 +1501,19 @@
-
- while (true) {
- GetSystemTimeAsFileTime(&fstart);
-- rc = WaitForSingleObject(TCB->inp, milliseconds);
-+ rc = WaitForSingleObject(fd, (DWORD) milliseconds);
- GetSystemTimeAsFileTime(&fend);
- diff = (int) tdiff(fstart, fend);
- milliseconds = Adjust(milliseconds, diff);
-
-- if (!isImmed && milliseconds == 0)
-+ if (!isImmed && milliseconds <= 0)
- break;
-
- if (rc == WAIT_OBJECT_0) {
- if (mode) {
-- b = GetNumberOfConsoleInputEvents(TCB->inp, &nRead);
-+ b = GetNumberOfConsoleInputEvents(fd, &nRead);
- if (b && nRead > 0) {
-- b = PeekConsoleInput(TCB->inp, &inp_rec, 1, &nRead);
-+ b = PeekConsoleInput(fd, &inp_rec, 1, &nRead);
- if (b && nRead > 0) {
- switch (inp_rec.EventType) {
- case KEY_EVENT:
-@@ -975,7 +1523,7 @@
-
- if (inp_rec.Event.KeyEvent.bKeyDown) {
- if (0 == ch) {
-- int nKey = MapKey(TCB, vk);
-+ int nKey = MapKey(vk);
- if ((nKey < 0) || FALSE == sp->_keypad_on) {
- CONSUME();
- continue;
-@@ -989,7 +1537,7 @@
- }
- continue;
- case MOUSE_EVENT:
-- if (decode_mouse(TCB,
-+ if (decode_mouse(sp,
- (inp_rec.Event.MouseEvent.dwButtonState
- & BUTTON_MASK)) == 0) {
- CONSUME();
-@@ -998,9 +1546,10 @@
- goto end;
- }
- continue;
-+ /* e.g., FOCUS_EVENT */
- default:
-- SetConsoleActiveScreenBuffer(!PropOf(TCB)->progMode ?
-- TCB->hdl : TCB->out);
-+ CONSUME();
-+ selectActiveHandle();
- continue;
- }
- }
-@@ -1028,16 +1577,35 @@
- return code;
- }
-
--static bool
--handle_mouse(TERMINAL_CONTROL_BLOCK * TCB, MOUSE_EVENT_RECORD mer)
-+static int
-+wcon_twait(TERMINAL_CONTROL_BLOCK * TCB,
-+ int mode,
-+ int milliseconds,
-+ int *timeleft
-+ EVENTLIST_2nd(_nc_eventlist * evl))
- {
- SCREEN *sp;
-- MEVENT work;
-- bool result = FALSE;
-+ int code;
-
- AssertTCB();
- SetSP();
-
-+ code = console_twait(sp,
-+ CON.inp,
-+ mode,
-+ milliseconds,
-+ timeleft EVENTLIST_2nd(_nc_eventlist * evl));
-+ return code;
-+}
-+
-+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;
-
-@@ -1051,18 +1619,20 @@
-
- if (sp->_drv_mouse_new_buttons) {
-
-- work.bstate |= decode_mouse(TCB, 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 |= (decode_mouse(TCB, sp->_drv_mouse_old_buttons) >> 1);
-+ 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;
-+ work.y = mer.dwMousePosition.Y - AdjustY();
-
- sp->_drv_mouse_fifo[sp->_drv_mouse_tail] = work;
- sp->_drv_mouse_tail += 1;
-@@ -1072,78 +1642,59 @@
- }
-
- static int
--drv_read(TERMINAL_CONTROL_BLOCK * TCB, int *buf)
-+wcon_read(TERMINAL_CONTROL_BLOCK * TCB, int *buf)
- {
- SCREEN *sp;
-- int n = 1;
-- INPUT_RECORD inp_rec;
-- BOOL b;
-- DWORD nRead;
-- WORD vk;
-- WORD sc;
-+ int n;
-
- AssertTCB();
- assert(buf);
- SetSP();
-
-- memset(&inp_rec, 0, sizeof(inp_rec));
--
-- T((T_CALLED("win32con::drv_read(%p)"), TCB));
-- while ((b = ReadConsoleInput(TCB->inp, &inp_rec, 1, &nRead))) {
-- if (b && nRead > 0) {
-- 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;
-- sc = inp_rec.Event.KeyEvent.wVirtualScanCode;
-- if (*buf == 0) {
-- if (sp->_keypad_on) {
-- *buf = MapKey(TCB, vk);
-- if (0 > (*buf))
-- continue;
-- else
-- break;
-- } else
-- continue;
-- } else { /* *buf != 0 */
-- break;
-- }
-- } else if (inp_rec.EventType == MOUSE_EVENT) {
-- if (handle_mouse(TCB, inp_rec.Event.MouseEvent)) {
-- *buf = KEY_MOUSE;
-- break;
-- }
-- }
-- continue;
-- }
-- }
-+ T((T_CALLED("win32con::wcon_read(%p)"), TCB));
-+ n = _nc_mingw_console_read(sp, CON.inp, buf);
- returnCode(n);
- }
-
- static int
--drv_nap(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED, int ms)
-+wcon_nap(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED, int ms)
- {
-- Sleep(ms);
-- return OK;
-+ 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;
-+ CONSOLE_CURSOR_INFO this_CI = CON.save_CI;
-+ T((T_CALLED("win32con:wcon_cursorSet(%d)"), mode));
-+ switch (mode) {
-+ case 0:
-+ this_CI.bVisible = FALSE;
-+ break;
-+ case 1:
-+ break;
-+ case 2:
-+ this_CI.dwSize = 100;
-+ break;
-+ }
-+ SetConsoleCursorInfo(CON.hdl, &this_CI);
-+ returnCode(res);
- }
-
- static bool
--drv_kyExist(TERMINAL_CONTROL_BLOCK * TCB, int keycode)
-+wcon_kyExist(TERMINAL_CONTROL_BLOCK * TCB GCC_UNUSED, int keycode)
- {
-- SCREEN *sp;
- WORD nKey;
- void *res;
- bool found = FALSE;
- LONG key = GenMap(0, (WORD) keycode);
-
-- AssertTCB();
-- SetSP();
--
-- AssertTCB();
--
-+ T((T_CALLED("win32con::wcon_kyExist(%d)"), keycode));
- res = bsearch(&key,
-- PropOf(TCB)->rmap,
-+ CON.rmap,
- (size_t) (N_INI + FKEYS),
- sizeof(keylist[0]),
- rkeycompare);
-@@ -1153,26 +1704,29 @@
- if (!(nKey & 0x8000))
- found = TRUE;
- }
-- return found;
-+ returnCode(found);
- }
-
- static int
--drv_kpad(TERMINAL_CONTROL_BLOCK * TCB, bool flag GCC_UNUSED)
-+wcon_kpad(TERMINAL_CONTROL_BLOCK * TCB, int flag GCC_UNUSED)
- {
- SCREEN *sp;
- int code = ERR;
-
- AssertTCB();
-- sp = TCB->csp;
-+ SetSP();
-
-+ T((T_CALLED("win32con::wcon_kpad(%p, %d)"), TCB, flag));
- if (sp) {
- code = OK;
- }
-- return code;
-+ returnCode(code);
- }
-
- static int
--drv_keyok(TERMINAL_CONTROL_BLOCK * TCB, int keycode, bool flag)
-+wcon_keyok(TERMINAL_CONTROL_BLOCK * TCB,
-+ int keycode,
-+ int flag)
- {
- int code = ERR;
- SCREEN *sp;
-@@ -1181,12 +1735,14 @@
- void *res;
- LONG key = GenMap(0, (WORD) keycode);
-
-+ T((T_CALLED("win32con::wcon_keyok(%p, %d, %d)"), TCB, keycode, flag));
-+
- AssertTCB();
- SetSP();
-
- if (sp) {
- res = bsearch(&key,
-- PropOf(TCB)->rmap,
-+ CON.rmap,
- (size_t) (N_INI + FKEYS),
- sizeof(keylist[0]),
- rkeycompare);
-@@ -1199,43 +1755,419 @@
- *(LONG *) res = GenMap(vKey, nKey);
- }
- }
-- return code;
-+ returnCode(code);
- }
-
- NCURSES_EXPORT_VAR (TERM_DRIVER) _nc_WIN_DRIVER = {
- FALSE,
-- drv_CanHandle, /* CanHandle */
-- drv_init, /* init */
-- drv_release, /* release */
-- drv_size, /* size */
-- drv_sgmode, /* sgmode */
-- drv_conattr, /* conattr */
-- drv_mvcur, /* hwcur */
-- drv_mode, /* mode */
-- drv_rescol, /* rescol */
-- drv_rescolors, /* rescolors */
-- drv_setcolor, /* color */
-- drv_dobeepflash, /* DoBeepFlash */
-- drv_initpair, /* initpair */
-- drv_initcolor, /* initcolor */
-- drv_do_color, /* docolor */
-- drv_initmouse, /* initmouse */
-- drv_testmouse, /* testmouse */
-- drv_setfilter, /* setfilter */
-- drv_hwlabel, /* hwlabel */
-- drv_hwlabelOnOff, /* hwlabelOnOff */
-- drv_doupdate, /* update */
-- drv_defaultcolors, /* defaultcolors */
-- drv_print, /* print */
-- drv_size, /* getsize */
-- drv_setsize, /* setsize */
-- drv_initacs, /* initacs */
-- drv_screen_init, /* scinit */
-- drv_wrap, /* scexit */
-- drv_twait, /* twait */
-- drv_read, /* read */
-- drv_nap, /* nap */
-- drv_kpad, /* kpad */
-- drv_keyok, /* kyOk */
-- drv_kyExist /* kyExist */
-+ 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 */
- };
-+
-+/* --------------------------------------------------------- */
-+
-+static HANDLE
-+get_handle(int fd)
-+{
-+ intptr_t value = _get_osfhandle(fd);
-+ return (HANDLE) value;
-+}
-+
-+#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
-+ 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
-+ or not this is mintty.
-+ */
-+static int
-+_ismintty(int fd, LPHANDLE pMinTTY)
-+{
-+ HANDLE handle = get_handle(fd);
-+ DWORD dw;
-+ int code = 0;
-+
-+ T((T_CALLED("win32con::_ismintty(%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
-+
-+/* Borrowed from ansicon project.
-+ Check whether or not an I/O handle is associated with
-+ a Windows console.
-+*/
-+static BOOL
-+IsConsoleHandle(HANDLE hdl)
-+{
-+ DWORD dwFlag = 0;
-+ BOOL result;
-+
-+ if (!GetConsoleMode(hdl, &dwFlag)) {
-+ result = (int) WriteConsoleA(hdl, NULL, 0, &dwFlag, NULL);
-+ } else {
-+ result = (int) (dwFlag & ENABLE_PROCESSED_OUTPUT);
-+ }
-+ return result;
-+}
-+
-+/* 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
-+ */
-+int
-+_nc_mingw_isatty(int fd)
-+{
-+ int result = 0;
-+
-+#ifdef __MING32__
-+#define SysISATTY(fd) _isatty(fd)
-+#else
-+#define SysISATTY(fd) isatty(fd)
-+#endif
-+ if (SysISATTY(fd)) {
-+ result = 1;
-+ } else {
-+#if WINVER >= 0x0600
-+ result = _ismintty(fd, NULL);
-+#endif
-+ }
-+ return result;
-+}
-+
-+/* This is used when running in terminfo mode to discover,
-+ whether or not the "terminal" is actually a Windows
-+ Console. It's the responsibilty of the console to deal
-+ with the terminal escape sequences that are sent by
-+ terminfo.
-+ */
-+int
-+_nc_mingw_isconsole(int fd)
-+{
-+ HANDLE hdl = get_handle(fd);
-+ int code = 0;
-+
-+ T((T_CALLED("win32con::_nc_mingw_isconsole(%d)"), fd));
-+
-+ code = (int) IsConsoleHandle(hdl);
-+
-+ returnCode(code);
-+}
-+
-+#define TC_PROLOGUE(fd) \
-+ SCREEN *sp; \
-+ TERMINAL *term = 0; \
-+ int code = ERR; \
-+ if (_nc_screen_chain == 0) \
-+ return 0; \
-+ for (each_screen(sp)) { \
-+ if (sp->_term && (sp->_term->Filedes == fd)) { \
-+ term = sp->_term; \
-+ break; \
-+ } \
-+ } \
-+ assert(term != 0)
-+
-+int
-+_nc_mingw_tcsetattr(
-+ int fd,
-+ int optional_action GCC_UNUSED,
-+ const struct termios *arg)
-+{
-+ TC_PROLOGUE(fd);
-+
-+ if (_nc_mingw_isconsole(fd)) {
-+ DWORD dwFlag = 0;
-+ HANDLE ofd = get_handle(fd);
-+ if (ofd != INVALID_HANDLE_VALUE) {
-+ if (arg) {
-+ if (arg->c_lflag & ICANON)
-+ dwFlag |= ENABLE_LINE_INPUT;
-+ else
-+ dwFlag = dwFlag & (DWORD) (~ENABLE_LINE_INPUT);
-+
-+ if (arg->c_lflag & ECHO)
-+ dwFlag = dwFlag | ENABLE_ECHO_INPUT;
-+ else
-+ dwFlag = dwFlag & (DWORD) (~ENABLE_ECHO_INPUT);
-+
-+ if (arg->c_iflag & BRKINT)
-+ dwFlag |= ENABLE_PROCESSED_INPUT;
-+ else
-+ dwFlag = dwFlag & (DWORD) (~ENABLE_PROCESSED_INPUT);
-+ }
-+ dwFlag |= ENABLE_MOUSE_INPUT;
-+ SetConsoleMode(ofd, dwFlag);
-+ code = OK;
-+ }
-+ }
-+ if (arg)
-+ term->Nttyb = *arg;
-+
-+ return code;
-+}
-+
-+int
-+_nc_mingw_tcgetattr(int fd, struct termios *arg)
-+{
-+ TC_PROLOGUE(fd);
-+
-+ if (_nc_mingw_isconsole(fd)) {
-+ if (arg)
-+ *arg = term->Nttyb;
-+ }
-+ return code;
-+}
-+
-+int
-+_nc_mingw_tcflush(int fd, int queue)
-+{
-+ TC_PROLOGUE(fd);
-+ (void) term;
-+
-+ if (_nc_mingw_isconsole(fd)) {
-+ if (queue == TCIFLUSH) {
-+ BOOL b = FlushConsoleInputBuffer(GetStdHandle(STD_INPUT_HANDLE));
-+ if (!b)
-+ return (int) GetLastError();
-+ }
-+ }
-+ return code;
-+}
-+
-+int
-+_nc_mingw_testmouse(
-+ SCREEN *sp,
-+ HANDLE fd,
-+ int delay)
-+{
-+ int rc = 0;
-+
-+ assert(sp);
-+
-+ if (sp->_drv_mouse_head < sp->_drv_mouse_tail) {
-+ rc = TW_MOUSE;
-+ } else {
-+ rc = console_twait(sp,
-+ fd,
-+ TWAIT_MASK,
-+ delay,
-+ (int *) 0
-+ EVENTLIST_2nd(evl));
-+ }
-+ return rc;
-+}
-+
-+int
-+_nc_mingw_console_read(
-+ SCREEN *sp,
-+ HANDLE fd,
-+ int *buf)
-+{
-+ int n = 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("_nc_mingw_console_read(%p)"), sp));
-+
-+ while ((b = ReadConsoleInput(fd, &inp_rec, 1, &nRead))) {
-+ if (b && nRead > 0) {
-+ 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;
-+ if (*buf == 0) {
-+ if (sp->_keypad_on) {
-+ *buf = MapKey(vk);
-+ if (0 > (*buf))
-+ continue;
-+ else
-+ break;
-+ } else
-+ continue;
-+ } else { /* *buf != 0 */
-+ break;
-+ }
-+ } else if (inp_rec.EventType == MOUSE_EVENT) {
-+ if (handle_mouse(sp,
-+ inp_rec.Event.MouseEvent)) {
-+ *buf = KEY_MOUSE;
-+ break;
-+ }
-+ }
-+ continue;
-+ }
-+ }
-+ returnCode(n);
-+}
-+
-+static
-+__attribute__((constructor))
-+ void _enter_console(void)
-+{
-+ if (!console_initialized) {
-+ int i;
-+ DWORD num_buttons;
-+ WORD a;
-+ BOOL buffered = TRUE;
-+ BOOL b;
-+
-+ START_TRACE();
-+ if (_nc_mingw_isatty(0)) {
-+ CON.isMinTTY = TRUE;
-+ }
-+
-+ for (i = 0; i < (N_INI + FKEYS); i++) {
-+ if (i < N_INI)
-+ CON.rmap[i] = CON.map[i] =
-+ (DWORD) keylist[i];
-+ else
-+ CON.rmap[i] = CON.map[i] =
-+ (DWORD) GenMap((VK_F1 + (i - N_INI)),
-+ (KEY_F(1) + (i - N_INI)));
-+ }
-+ qsort(CON.map,
-+ (size_t) (MAPSIZE),
-+ sizeof(keylist[0]),
-+ keycompare);
-+ qsort(CON.rmap,
-+ (size_t) (MAPSIZE),
-+ sizeof(keylist[0]),
-+ rkeycompare);
-+
-+ if (GetNumberOfConsoleMouseButtons(&num_buttons)) {
-+ CON.numButtons = (int) num_buttons;
-+ } else {
-+ CON.numButtons = 1;
-+ }
-+
-+ a = MapColor(true, COLOR_WHITE) | MapColor(false, COLOR_BLACK);
-+ for (i = 0; i < NUMPAIRS; i++)
-+ CON.pairs[i] = a;
-+
-+ CON.inp = GetStdHandle(STD_INPUT_HANDLE);
-+ CON.out = GetStdHandle(STD_OUTPUT_HANDLE);
-+
-+ b = AllocConsole();
-+
-+ if (!b)
-+ b = AttachConsole(ATTACH_PARENT_PROCESS);
-+
-+ if (getenv("NCGDB") || getenv("NCURSES_CONSOLE2")) {
-+ T(("... will not buffer console"));
-+ buffered = FALSE;
-+ CON.hdl = CON.out;
-+ } else {
-+ T(("... creating console buffer"));
-+ CON.hdl = CreateConsoleScreenBuffer(GENERIC_READ | GENERIC_WRITE,
-+ 0,
-+ NULL,
-+ CONSOLE_TEXTMODE_BUFFER,
-+ NULL);
-+ }
-+
-+ if (CON.hdl != INVALID_HANDLE_VALUE) {
-+ CON.buffered = buffered;
-+ get_SBI();
-+ CON.save_SBI = CON.SBI;
-+ if (!buffered) {
-+ save_original_screen();
-+ set_scrollback(FALSE, &CON.SBI);
-+ }
-+ GetConsoleCursorInfo(CON.hdl, &CON.save_CI);
-+ T(("... initial cursor is %svisible, %d%%",
-+ (CON.save_CI.bVisible ? "" : "not-"),
-+ (int) CON.save_CI.dwSize));
-+ }
-+
-+ console_initialized = TRUE;
-+ }
-+}
-Index: package/debian-mingw/changelog
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw/changelog 2014-12-06 13:32:29.000000000 +0000
-@@ -0,0 +1,11 @@
-+ncurses6 (5.9+20141206) unstable; urgency=low
-+
-+ * latest weekly patch
-+
-+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 06 Dec 2014 08:32:29 -0500
-+
-+ncurses6 (5.9-20131005) unstable; urgency=low
-+
-+ * initial release
-+
-+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 05 Oct 2013 13:35:29 -0400
-Index: package/debian-mingw/compat
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw/compat 2010-04-20 19:47:10.000000000 +0000
-@@ -0,0 +1 @@
-+5
-Index: package/debian-mingw/control
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw/control 2013-10-05 19:37:02.000000000 +0000
-@@ -0,0 +1,16 @@
-+Source: ncurses6
-+Section: libdevel
-+Priority: optional
-+Maintainer: Thomas E. Dickey <dickey@invisible-island.net>
-+Homepage: http://invisible-island.net/ncurses/
-+Build-Depends: debhelper (>= 7)
-+Standards-Version: 3.8.2
-+
-+Package: mingw32-ncurses6
-+Architecture: any
-+Depends: ${misc:Depends}
-+Description: shared libraries for terminal handling
-+ The ncurses library routines are a terminal-independent method of
-+ updating character screens with reasonable optimization.
-+ .
-+ This package is used for testing ABI 6 with the MinGW 32-bit port.
-Index: package/debian-mingw/copyright
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw/copyright 2014-01-19 00:01:25.000000000 +0000
-@@ -0,0 +1,112 @@
-+This package is used for testing builds of ncurses.
-+
-+Copyright (c) 1998-2013,2014 Free Software Foundation, Inc.
-+Copyright © 2001 by Pradeep Padala
-+
-+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.
-+
-+
-+Copyright (C) 1994 X Consortium
-+
-+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
-+X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-+TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-+
-+Except as contained in this notice, the name of the X Consortium shall not
-+be used in advertising or otherwise to promote the sale, use or other deal-
-+ings in this Software without prior written authorization from the X Consor-
-+tium.
-+
-+
-+Copyright (c) 1980, 1991, 1992, 1993
-+ The Regents of the University of California. All rights reserved.
-+
-+Redistribution and use in source and binary forms, with or without
-+modification, are permitted provided that the following conditions
-+are met:
-+1. Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+2. Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in the
-+ documentation and/or other materials provided with the distribution.
-+3. Neither the name of the University nor the names of its contributors
-+ may be used to endorse or promote products derived from this software
-+ without specific prior written permission.
-+
-+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+SUCH DAMAGE.
-+
-+
-+Copyright 1996-2013,2014 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.
-+
-+-- vile: txtmode file-encoding=utf-8
-Index: package/debian-mingw/rules
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw/rules 2014-09-20 22:42:24.000000000 +0000
-@@ -0,0 +1,140 @@
-+#!/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.
-+
-+# Uncomment this to turn on verbose mode.
-+#export DH_VERBOSE=1
-+
-+# These are used for cross-compiling and for saving the configure script
-+# from having to guess our platform (since we know it already)
-+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
-+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
-+
-+BUILD_CC = gcc
-+
-+CC_NORMAL = -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion
-+CC_STRICT = $(CC_NORMAL) -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic
-+
-+TARGET = i686-w64-mingw32
-+MINGW_BIN = /usr/bin
-+MINGW_TOP = /usr/$(TARGET)
-+MINGW_TMP = $(CURDIR)/debian/mingw32-ncurses6
-+
-+CFLAGS = $(CC_NORMAL)
-+
-+CONFIG_OPTIONS = \
-+ --disable-echo \
-+ --disable-db-install \
-+ --disable-getcap \
-+ --disable-hard-tabs \
-+ --disable-leaks \
-+ --disable-macros \
-+ --disable-overwrite \
-+ --disable-termcap \
-+ --enable-const \
-+ --enable-ext-colors \
-+ --enable-ext-mouse \
-+ --enable-interop \
-+ --enable-sp-funcs \
-+ --enable-term-driver \
-+ --enable-warnings \
-+ --enable-widec \
-+ --verbose \
-+ --with-chtype=uint32_t \
-+ --with-mmask_t=uint32_t \
-+ --with-cxx-shared \
-+ --with-develop \
-+ --with-fallbacks=unknown,rxvt \
-+ --with-shared \
-+ --with-tparm-arg=intptr_t \
-+ --with-trace \
-+ --with-xterm-kbs=DEL \
-+ --without-ada \
-+ --without-debug \
-+ --without-manpages \
-+ --without-progs \
-+ --without-tests
-+
-+export CFLAGS BUILD_CC
-+
-+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
-+ CFLAGS += -O0
-+else
-+ CFLAGS += -O2
-+endif
-+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
-+ INSTALL_PROGRAM += -s
-+endif
-+
-+configure: configure-stamp
-+configure-stamp:
-+ dh_testdir
-+
-+ CC=$(TARGET)-gcc \
-+ CFLAGS="$(CFLAGS)" \
-+ ./configure \
-+ --host=$(TARGET) \
-+ --target=$(TARGET) \
-+ --prefix=$(MINGW_TOP) \
-+ --with-build-cc=$(BUILD_CC) \
-+ $(CONFIG_OPTIONS)
-+
-+ touch configure-stamp
-+
-+build: build-stamp
-+build-stamp: configure-stamp
-+ dh_testdir
-+
-+ $(MAKE)
-+
-+ touch build-stamp
-+
-+clean:
-+ dh_testdir
-+ dh_testroot
-+
-+ [ ! -f makefile ] || $(MAKE) distclean
-+
-+ rm -f configure-stamp build-stamp install-stamp
-+
-+ dh_clean
-+
-+install: install-stamp
-+install-stamp: build-stamp
-+ dh_testdir
-+ dh_testroot
-+ dh_clean -k
-+ dh_installdirs
-+
-+ $(MAKE) install.libs DESTDIR=$(MINGW_TMP)
-+
-+ mkdir -p $(MINGW_TMP)$(MINGW_BIN)
-+ for name in $(MINGW_TMP)$(MINGW_TOP)/bin/*-config; \
-+ do \
-+ base=`basename $$name`; \
-+ ln -v $$name $(MINGW_TMP)$(MINGW_BIN)/$(TARGET)-$$base; \
-+ done
-+
-+ touch install-stamp
-+
-+# Build architecture-independent files here.
-+binary-indep: build install
-+# No binary-indep target.
-+
-+# Build architecture-dependent files here.
-+binary-arch: build install
-+ dh_testdir
-+ dh_testroot
-+ dh_installchangelogs NEWS
-+ # dh_strip
-+ dh_compress
-+ dh_fixperms
-+ dh_installdeb
-+ dh_shlibdeps
-+ dh_gencontrol
-+ dh_md5sums
-+ dh_builddeb
-+
-+binary: binary-indep binary-arch
-+.PHONY: build clean binary-indep binary-arch binary install install-stamp
-Index: package/debian-mingw/source/format
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw/source/format 2014-11-16 02:19:54.000000000 +0000
-@@ -0,0 +1 @@
-+3.0 (native)
-Index: package/debian-mingw/watch
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw/watch 2012-06-08 11:53:43.000000000 +0000
-@@ -0,0 +1,4 @@
-+version=3
-+
-+opts=passive ftp://invisible-island.net/ncurses/current/ncurses\.tar.gz \
-+ debian uupdate
-Index: package/debian-mingw64/changelog
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw64/changelog 2014-12-06 13:32:29.000000000 +0000
-@@ -0,0 +1,11 @@
-+ncurses6 (5.9+20141206) unstable; urgency=low
-+
-+ * latest weekly patch
-+
-+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 06 Dec 2014 08:32:29 -0500
-+
-+ncurses6 (5.9-20131005) unstable; urgency=low
-+
-+ * initial release
-+
-+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 05 Oct 2013 13:35:29 -0400
-Index: package/debian-mingw64/compat
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw64/compat 2010-04-20 19:47:10.000000000 +0000
-@@ -0,0 +1 @@
-+5
-Index: package/debian-mingw64/control
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw64/control 2013-10-05 21:05:14.000000000 +0000
-@@ -0,0 +1,16 @@
-+Source: ncurses6
-+Section: libdevel
-+Priority: optional
-+Maintainer: Thomas E. Dickey <dickey@invisible-island.net>
-+Homepage: http://invisible-island.net/ncurses/
-+Build-Depends: debhelper (>= 7)
-+Standards-Version: 3.8.2
-+
-+Package: mingw64-ncurses6
-+Architecture: any
-+Depends: ${misc:Depends}
-+Description: shared libraries for terminal handling
-+ The ncurses library routines are a terminal-independent method of
-+ updating character screens with reasonable optimization.
-+ .
-+ This package is used for testing ABI 6 with the MinGW 64-bit port.
-Index: package/debian-mingw64/copyright
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw64/copyright 2014-01-19 00:01:49.000000000 +0000
-@@ -0,0 +1,112 @@
-+This package is used for testing builds of ncurses.
-+
-+Copyright (c) 1998-2013,2014 Free Software Foundation, Inc.
-+Copyright © 2001 by Pradeep Padala
-+
-+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.
-+
-+
-+Copyright (C) 1994 X Consortium
-+
-+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
-+X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-+TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-+
-+Except as contained in this notice, the name of the X Consortium shall not
-+be used in advertising or otherwise to promote the sale, use or other deal-
-+ings in this Software without prior written authorization from the X Consor-
-+tium.
-+
-+
-+Copyright (c) 1980, 1991, 1992, 1993
-+ The Regents of the University of California. All rights reserved.
-+
-+Redistribution and use in source and binary forms, with or without
-+modification, are permitted provided that the following conditions
-+are met:
-+1. Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+2. Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in the
-+ documentation and/or other materials provided with the distribution.
-+3. Neither the name of the University nor the names of its contributors
-+ may be used to endorse or promote products derived from this software
-+ without specific prior written permission.
-+
-+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+SUCH DAMAGE.
-+
-+
-+Copyright 1996-2013,2014 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.
-+
-+-- vile: txtmode file-encoding=utf-8
-Index: package/debian-mingw64/rules
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw64/rules 2014-09-20 22:43:01.000000000 +0000
-@@ -0,0 +1,140 @@
-+#!/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.
-+
-+# Uncomment this to turn on verbose mode.
-+#export DH_VERBOSE=1
-+
-+# These are used for cross-compiling and for saving the configure script
-+# from having to guess our platform (since we know it already)
-+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
-+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
-+
-+BUILD_CC = gcc
-+
-+CC_NORMAL = -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion
-+CC_STRICT = $(CC_NORMAL) -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic
-+
-+TARGET = x86_64-w64-mingw32
-+MINGW_BIN = /usr/bin
-+MINGW_TOP = /usr/$(TARGET)
-+MINGW_TMP = $(CURDIR)/debian/mingw64-ncurses6
-+
-+CFLAGS = $(CC_NORMAL)
-+
-+CONFIG_OPTIONS = \
-+ --disable-echo \
-+ --disable-db-install \
-+ --disable-getcap \
-+ --disable-hard-tabs \
-+ --disable-leaks \
-+ --disable-macros \
-+ --disable-overwrite \
-+ --disable-termcap \
-+ --enable-const \
-+ --enable-ext-colors \
-+ --enable-ext-mouse \
-+ --enable-interop \
-+ --enable-sp-funcs \
-+ --enable-term-driver \
-+ --enable-warnings \
-+ --enable-widec \
-+ --verbose \
-+ --with-chtype=uint32_t \
-+ --with-mmask_t=uint32_t \
-+ --with-cxx-shared \
-+ --with-develop \
-+ --with-fallbacks=unknown,rxvt \
-+ --with-shared \
-+ --with-tparm-arg=intptr_t \
-+ --with-trace \
-+ --with-xterm-kbs=DEL \
-+ --without-ada \
-+ --without-debug \
-+ --without-manpages \
-+ --without-progs \
-+ --without-tests
-+
-+export CFLAGS BUILD_CC
-+
-+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
-+ CFLAGS += -O0
-+else
-+ CFLAGS += -O2
-+endif
-+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
-+ INSTALL_PROGRAM += -s
-+endif
-+
-+configure: configure-stamp
-+configure-stamp:
-+ dh_testdir
-+
-+ CC=$(TARGET)-gcc \
-+ CFLAGS="$(CFLAGS)" \
-+ ./configure \
-+ --host=$(TARGET) \
-+ --target=$(TARGET) \
-+ --prefix=$(MINGW_TOP) \
-+ --with-build-cc=$(BUILD_CC) \
-+ $(CONFIG_OPTIONS)
-+
-+ touch configure-stamp
-+
-+build: build-stamp
-+build-stamp: configure-stamp
-+ dh_testdir
-+
-+ $(MAKE)
-+
-+ touch build-stamp
-+
-+clean:
-+ dh_testdir
-+ dh_testroot
-+
-+ [ ! -f makefile ] || $(MAKE) distclean
-+
-+ rm -f configure-stamp build-stamp install-stamp
-+
-+ dh_clean
-+
-+install: install-stamp
-+install-stamp: build-stamp
-+ dh_testdir
-+ dh_testroot
-+ dh_clean -k
-+ dh_installdirs
-+
-+ $(MAKE) install.libs DESTDIR=$(MINGW_TMP)
-+
-+ mkdir -p $(MINGW_TMP)$(MINGW_BIN)
-+ for name in $(MINGW_TMP)$(MINGW_TOP)/bin/*-config; \
-+ do \
-+ base=`basename $$name`; \
-+ ln -v $$name $(MINGW_TMP)$(MINGW_BIN)/$(TARGET)-$$base; \
-+ done
-+
-+ touch install-stamp
-+
-+# Build architecture-independent files here.
-+binary-indep: build install
-+# No binary-indep target.
-+
-+# Build architecture-dependent files here.
-+binary-arch: build install
-+ dh_testdir
-+ dh_testroot
-+ dh_installchangelogs NEWS
-+ # dh_strip
-+ dh_compress
-+ dh_fixperms
-+ dh_installdeb
-+ dh_shlibdeps
-+ dh_gencontrol
-+ dh_md5sums
-+ dh_builddeb
-+
-+binary: binary-indep binary-arch
-+.PHONY: build clean binary-indep binary-arch binary install install-stamp
-Index: package/debian-mingw64/source/format
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw64/source/format 2014-11-16 02:20:03.000000000 +0000
-@@ -0,0 +1 @@
-+3.0 (native)
-Index: package/debian-mingw64/watch
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian-mingw64/watch 2012-06-08 11:53:43.000000000 +0000
-@@ -0,0 +1,4 @@
-+version=3
-+
-+opts=passive ftp://invisible-island.net/ncurses/current/ncurses\.tar.gz \
-+ debian uupdate
-Index: package/debian/changelog
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian/changelog 2014-12-06 13:32:29.000000000 +0000
-@@ -0,0 +1,11 @@
-+ncurses6 (5.9+20141206) unstable; urgency=low
-+
-+ * latest weekly patch
-+
-+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 06 Dec 2014 08:32:29 -0500
-+
-+ncurses6 (5.9-20120608) unstable; urgency=low
-+
-+ * initial release
-+
-+ -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 08 Jun 2012 07:54:29 -0400
-Index: package/debian/compat
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian/compat 2010-04-20 19:47:10.000000000 +0000
-@@ -0,0 +1 @@
-+5
-Index: package/debian/control
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian/control 2012-06-08 13:29:14.000000000 +0000
-@@ -0,0 +1,16 @@
-+Source: ncurses6
-+Section: libdevel
-+Priority: optional
-+Maintainer: Thomas E. Dickey <dickey@invisible-island.net>
-+Homepage: http://invisible-island.net/ncurses/
-+Build-Depends: debhelper (>= 7)
-+Standards-Version: 3.8.2
-+
-+Package: ncurses6
-+Architecture: any
-+Depends: ${misc:Depends}
-+Description: shared libraries for terminal handling
-+ The ncurses library routines are a terminal-independent method of
-+ updating character screens with reasonable optimization.
-+ .
-+ This package is used for testing ABI 6.
-Index: package/debian/copyright
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian/copyright 2014-01-19 00:00:58.000000000 +0000
-@@ -0,0 +1,112 @@
-+This package is used for testing builds of ncurses.
-+
-+Copyright (c) 1998-2013,2014 Free Software Foundation, Inc.
-+Copyright © 2001 by Pradeep Padala
-+
-+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.
-+
-+
-+Copyright (C) 1994 X Consortium
-+
-+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
-+X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-+TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-+
-+Except as contained in this notice, the name of the X Consortium shall not
-+be used in advertising or otherwise to promote the sale, use or other deal-
-+ings in this Software without prior written authorization from the X Consor-
-+tium.
-+
-+
-+Copyright (c) 1980, 1991, 1992, 1993
-+ The Regents of the University of California. All rights reserved.
-+
-+Redistribution and use in source and binary forms, with or without
-+modification, are permitted provided that the following conditions
-+are met:
-+1. Redistributions of source code must retain the above copyright
-+ notice, this list of conditions and the following disclaimer.
-+2. Redistributions in binary form must reproduce the above copyright
-+ notice, this list of conditions and the following disclaimer in the
-+ documentation and/or other materials provided with the distribution.
-+3. Neither the name of the University nor the names of its contributors
-+ may be used to endorse or promote products derived from this software
-+ without specific prior written permission.
-+
-+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+SUCH DAMAGE.
-+
-+
-+Copyright 1996-2013,2014 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.
-+
-+-- vile: txtmode file-encoding=utf-8
-Index: package/debian/rules
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian/rules 2014-11-15 13:05:58.000000000 +0000
-@@ -0,0 +1,126 @@
-+#!/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.
-+
-+# Uncomment this to turn on verbose mode.
-+#export DH_VERBOSE=1
-+
-+# These are used for cross-compiling and for saving the configure script
-+# from having to guess our platform (since we know it already)
-+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
-+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
-+
-+CC_NORMAL = -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion
-+CC_STRICT = $(CC_NORMAL) -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic
-+
-+MY_DIR=/usr/local/ncurses6
-+MYDATA=/usr/local/ncurses/share/terminfo
-+BUILD_DIR=$(CURDIR)/debian/ncurses6
-+
-+CFLAGS = $(CC_NORMAL)
-+
-+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
-+ CFLAGS += -O0
-+else
-+ CFLAGS += -O2
-+endif
-+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
-+ INSTALL_PROGRAM += -s
-+endif
-+
-+
-+configure: configure-stamp
-+configure-stamp:
-+ dh_testdir
-+
-+ RPATH_LIST=../lib:$(MY_DIR)/lib \
-+ CFLAGS="$(CFLAGS)" ./configure \
-+ --host=$(DEB_HOST_GNU_TYPE) \
-+ --build=$(DEB_BUILD_GNU_TYPE) \
-+ --prefix=$(MY_DIR) \
-+ --with-default-terminfo-dir=$(MYDATA) \
-+ --with-terminfo-dirs=$(MYDATA):/usr/share/terminfo \
-+ --disable-echo \
-+ --disable-getcap \
-+ --disable-leaks \
-+ --disable-macros \
-+ --disable-termcap \
-+ --enable-const \
-+ --enable-ext-colors \
-+ --enable-ext-mouse \
-+ --enable-hard-tabs \
-+ --enable-interop \
-+ --enable-rpath \
-+ --enable-sp-funcs \
-+ --enable-warnings \
-+ --enable-widec \
-+ --verbose \
-+ --with-chtype=uint32_t \
-+ --with-mmask_t=uint32_t \
-+ --with-develop \
-+ --with-shared \
-+ --with-termlib \
-+ --with-ticlib \
-+ --with-trace \
-+ --with-cxx-shared \
-+ --with-versioned-syms \
-+ --with-xterm-kbs=DEL \
-+ --without-ada \
-+ --without-debug \
-+ --without-normal
-+
-+ touch configure-stamp
-+
-+build: build-stamp
-+build-stamp: configure-stamp
-+ dh_testdir
-+
-+ $(MAKE)
-+
-+ touch build-stamp
-+
-+clean:
-+ dh_testdir
-+ dh_testroot
-+
-+ [ ! -f makefile ] || $(MAKE) distclean
-+
-+ rm -f configure-stamp build-stamp install-stamp
-+
-+ dh_clean
-+
-+install: install-stamp
-+install-stamp: build-stamp
-+ dh_testdir
-+ dh_testroot
-+ dh_clean -k
-+ dh_installdirs
-+
-+ $(MAKE) install.libs install.progs DESTDIR=$(BUILD_DIR)
-+
-+ ( cd test && make ncurses LOCAL_LIBDIR=$(MY_DIR)/lib )
-+ mv test/ncurses $(BUILD_DIR)$(MY_DIR)/bin/ncurses6
-+
-+ touch install-stamp
-+
-+# Build architecture-independent files here.
-+binary-indep: build install
-+# No binary-indep target.
-+
-+# Build architecture-dependent files here.
-+binary-arch: build install
-+ dh_testdir
-+ dh_testroot
-+ dh_installchangelogs NEWS
-+ dh_strip
-+ dh_compress
-+ dh_fixperms
-+ dh_installdeb
-+ dh_shlibdeps
-+ dh_gencontrol
-+ dh_md5sums
-+ dh_builddeb
-+
-+binary: binary-indep binary-arch
-+.PHONY: build clean binary-indep binary-arch binary install install-stamp
-Index: package/debian/source/format
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian/source/format 2014-11-16 02:19:47.000000000 +0000
-@@ -0,0 +1 @@
-+3.0 (native)
-Index: package/debian/watch
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/debian/watch 2012-06-08 11:53:43.000000000 +0000
-@@ -0,0 +1,4 @@
-+version=3
-+
-+opts=passive ftp://invisible-island.net/ncurses/current/ncurses\.tar.gz \
-+ debian uupdate
-Index: package/mingw-ncurses.nsi
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/mingw-ncurses.nsi 2014-12-06 13:32:29.000000000 +0000
-@@ -0,0 +1,190 @@
-+; $Id: mingw-ncurses.nsi,v 1.73 2014/12/06 13:32:29 tom Exp $
-+
-+; TODO add examples
-+; TODO bump ABI to 6
-+
-+; Define the application name
-+!define APPNAME "ncurses"
-+!define EXENAME "ncurses.exe"
-+
-+!define VERSION_MAJOR "5"
-+!define VERSION_MINOR "9"
-+!define VERSION_YYYY "2014"
-+!define VERSION_MMDD "1206"
-+!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
-+
-+!define MY_ABI "5"
-+!define MY_MODEL "w"
-+
-+!define SUBKEY "ncurses"
-+
-+!define INSTALL "${APPNAME} (Console)"
-+!define VERSION ${VERSION_MAJOR}.${VERSION_MINOR}
-+!define VERSION_FULL ${VERSION}-${VERSION_PATCH}
-+
-+; Main Install settings
-+Name "${INSTALL}"
-+InstallDir "c:\mingw"
-+InstallDirRegKey HKLM "Software\${SUBKEY}" "$INSTDIR\bin"
-+OutFile "NSIS-Output\${APPNAME}-${VERSION_FULL}-setup.exe"
-+
-+CRCCheck on
-+SetCompressor /SOLID lzma
-+
-+VIAddVersionKey ProductName "${SUBKEY}"
-+VIAddVersionKey CompanyName "http://invisible-island.net"
-+VIAddVersionKey FileDescription "NCurses Installer (MinGW)"
-+VIAddVersionKey FileVersion ${VERSION_FULL}
-+VIAddVersionKey ProductVersion ${VERSION_FULL}
-+VIAddVersionKey Comments "This installer was built with NSIS and cross-compiling to MinGW."
-+VIAddVersionKey InternalName "${APPNAME}-${VERSION_FULL}-setup.exe"
-+; This is a dotted set of numbers limited to 16-bits each
-+VIProductVersion "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_YYYY}.${VERSION_MMDD}"
-+
-+; Modern interface settings
-+!include "MUI.nsh"
-+
-+!define MUI_ABORTWARNING
-+;!define MUI_FINISHPAGE_RUN
-+;"$INSTDIR\bin\${EXENAME}"
-+
-+!insertmacro MUI_PAGE_WELCOME
-+!insertmacro MUI_PAGE_LICENSE "..\COPYING"
-+!insertmacro MUI_PAGE_COMPONENTS
-+!insertmacro MUI_PAGE_DIRECTORY
-+!insertmacro MUI_PAGE_INSTFILES
-+!insertmacro MUI_PAGE_FINISH
-+
-+!insertmacro MUI_UNPAGE_CONFIRM
-+!insertmacro MUI_UNPAGE_INSTFILES
-+
-+; Set languages (first is default language)
-+!insertmacro MUI_LANGUAGE "English"
-+!insertmacro MUI_RESERVEFILE_LANGDLL
-+
-+InstType "Full" ; SectionIn 1
-+InstType "Typical" ; SectionIn 2
-+InstType "Minimal" ; SectionIn 3
-+
-+Section "${APPNAME}" Section1
-+
-+ SectionIn 1 2 3
-+
-+ ; Set Section properties
-+ SetOverwrite on
-+
-+ ; Set Section Files and Shortcuts
-+ SetOutPath "$INSTDIR\bin"
-+
-+ File ".\bin\*.dll"
-+
-+ SetOutPath "$INSTDIR\share\${APPNAME}"
-+ File /oname=README.txt "..\README"
-+ File /oname=README-mingw.txt "..\README.mingw"
-+
-+ CreateDirectory "$SMPROGRAMS\${INSTALL}"
-+ CreateShortCut "$SMPROGRAMS\${INSTALL}\${APPNAME}.lnk" "$INSTDIR\bin\${EXENAME}"
-+ CreateShortCut "$SMPROGRAMS\${INSTALL}\Uninstall.lnk" "$INSTDIR\uninstall.exe"
-+
-+SectionEnd
-+
-+Section "development" Section2
-+
-+ SectionIn 1 2
-+
-+ ; Set Section properties
-+ SetOverwrite on
-+
-+ ; Set Section Files and Shortcuts
-+ SetOutPath "$INSTDIR\share\${APPNAME}"
-+
-+ SetOutPath "$INSTDIR\include\${APPNAME}${MY_MODEL}"
-+
-+ File ".\include\${APPNAME}${MY_MODEL}\*.h"
-+
-+ SetOutPath "$INSTDIR\lib"
-+
-+ File ".\lib\*.a"
-+
-+SectionEnd
-+
-+Section "examples" Section3
-+
-+ SectionIn 1
-+
-+ ; Set Section properties
-+ SetOverwrite on
-+
-+ ; Set Section Files and Shortcuts
-+ SetOutPath "$INSTDIR\lib\${APPNAME}"
-+
-+SectionEnd
-+
-+Section -FinishSection
-+
-+ WriteRegStr HKLM "Software\${SUBKEY}" "" "$INSTDIR"
-+ WriteRegStr HKLM "Software\${SUBKEY}" "Environment" ""
-+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${INSTALL}" "DisplayName" "${APPNAME} ${VERSION_FULL} (Console)"
-+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${INSTALL}" "UninstallString" "$INSTDIR\uninstall.exe"
-+ WriteUninstaller "$INSTDIR\uninstall.exe"
-+
-+SectionEnd
-+
-+; Modern install component descriptions
-+!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
-+ !insertmacro MUI_DESCRIPTION_TEXT ${Section1} "${SUBKEY} runtime"
-+ !insertmacro MUI_DESCRIPTION_TEXT ${Section2} "Development headers and libraries"
-+ !insertmacro MUI_DESCRIPTION_TEXT ${Section3} "Examples"
-+!insertmacro MUI_FUNCTION_DESCRIPTION_END
-+
-+;Uninstall section
-+Section Uninstall
-+
-+ ;Remove from registry...
-+ DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${INSTALL}"
-+ DeleteRegKey HKLM "SOFTWARE\${SUBKEY}"
-+
-+ ; Delete self
-+ Delete "$INSTDIR\uninstall.exe"
-+
-+ ; Delete Shortcuts
-+ Delete "$SMPROGRAMS\${INSTALL}\${APPNAME}.lnk"
-+ Delete "$SMPROGRAMS\${INSTALL}\Uninstall.lnk"
-+
-+ ; Clean up application
-+ Delete "$INSTDIR\bin\libform${MY_MODEL}${MY_ABI}.dll"
-+ Delete "$INSTDIR\bin\libmenu${MY_MODEL}${MY_ABI}.dll"
-+ Delete "$INSTDIR\bin\libncurses++${MY_MODEL}${MY_ABI}.dll"
-+ Delete "$INSTDIR\bin\libncurses${MY_MODEL}${MY_ABI}.dll"
-+ Delete "$INSTDIR\bin\libpanel${MY_MODEL}${MY_ABI}.dll"
-+
-+ Delete "$INSTDIR\include\${APPNAME}${MY_MODEL}\*.h"
-+
-+ Delete "$INSTDIR\lib\libform${MY_MODEL}.a"
-+ Delete "$INSTDIR\lib\libmenu${MY_MODEL}.a"
-+ Delete "$INSTDIR\lib\libncurses++${MY_MODEL}.a"
-+ Delete "$INSTDIR\lib\libncurses${MY_MODEL}.a"
-+ Delete "$INSTDIR\lib\libpanel${MY_MODEL}.a"
-+
-+ Delete "$INSTDIR\lib\libform${MY_MODEL}.dll.a"
-+ Delete "$INSTDIR\lib\libmenu${MY_MODEL}.dll.a"
-+ Delete "$INSTDIR\lib\libncurses++${MY_MODEL}.dll.a"
-+ Delete "$INSTDIR\lib\libncurses${MY_MODEL}.dll.a"
-+ Delete "$INSTDIR\lib\libpanel${MY_MODEL}.dll.a"
-+
-+ Delete "$INSTDIR\lib\${APPNAME}\*.exe"
-+
-+ Delete "$INSTDIR\share\${APPNAME}\*.*"
-+
-+ ; Remove remaining directories
-+ RMDir "$SMPROGRAMS\${INSTALL}"
-+ RMDir "$INSTDIR\share\${APPNAME}"
-+ RMDir "$INSTDIR\share"
-+ RMDir "$INSTDIR\lib\${APPNAME}"
-+ RMDir "$INSTDIR\lib"
-+ RMDir "$INSTDIR\include\${APPNAME}${MY_MODEL}"
-+ RMDir "$INSTDIR\include"
-+ RMDir "$INSTDIR\bin"
-+ RMDir "$INSTDIR\"
-+
-+SectionEnd
-\ No newline at end of file
-Index: package/mingw-ncurses.spec
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/mingw-ncurses.spec 2014-12-06 13:32:29.000000000 +0000
-@@ -0,0 +1,143 @@
-+%?mingw_package_header
-+
-+Summary: shared libraries for terminal handling
-+Name: mingw32-ncurses6
-+Version: 5.9
-+Release: 20141206
-+License: X11
-+Group: Development/Libraries
-+Source: ncurses-%{version}-%{release}.tgz
-+# URL: http://invisible-island.net/ncurses/
-+
-+BuildRequires: mingw32-filesystem >= 95
-+BuildRequires: mingw32-gcc
-+BuildRequires: mingw32-binutils
-+
-+BuildRequires: mingw64-filesystem >= 95
-+BuildRequires: mingw64-gcc
-+BuildRequires: mingw64-binutils
-+
-+%define CC_NORMAL -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion
-+%define CC_STRICT %{CC_NORMAL} -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic
-+
-+%description -n mingw32-ncurses6
-+Cross-compiling support for ncurses to mingw32.
-+
-+The ncurses library routines are a terminal-independent method of
-+updating character screens with reasonable optimization.
-+
-+This package is used for testing ABI 6 with cross-compiles to MinGW.
-+
-+%package -n mingw64-ncurses6
-+Summary: Curses library for MinGW64
-+
-+%description -n mingw64-ncurses6
-+Cross-compiling support for ncurses to mingw64.
-+
-+The ncurses library routines are a terminal-independent method of
-+updating character screens with reasonable optimization.
-+
-+This package is used for testing ABI 6 with cross-compiles to MinGW.
-+
-+%prep
-+
-+%define CFG_OPTS \\\
-+ --disable-echo \\\
-+ --disable-db-install \\\
-+ --disable-getcap \\\
-+ --disable-hard-tabs \\\
-+ --disable-leaks \\\
-+ --disable-macros \\\
-+ --disable-overwrite \\\
-+ --disable-termcap \\\
-+ --enable-const \\\
-+ --enable-ext-colors \\\
-+ --enable-ext-mouse \\\
-+ --enable-interop \\\
-+ --enable-sp-funcs \\\
-+ --enable-term-driver \\\
-+ --enable-warnings \\\
-+ --enable-widec \\\
-+ --verbose \\\
-+ --with-cxx-shared \\\
-+ --with-develop \\\
-+ --with-fallbacks=unknown,rxvt \\\
-+ --with-shared \\\
-+ --with-tparm-arg=intptr_t \\\
-+ --with-trace \\\
-+ --with-xterm-kbs=DEL \\\
-+ --without-ada \\\
-+ --without-debug \\\
-+ --with-install-prefix=$RPM_BUILD_ROOT \\\
-+ --without-manpages \\\
-+ --without-progs \\\
-+ --without-tests
-+
-+%define debug_package %{nil}
-+%setup -q -n ncurses-%{version}-%{release}
-+
-+%build
-+mkdir BUILD-W32
-+pushd BUILD-W32
-+CFLAGS="%{CC_NORMAL}" \
-+CC=%{mingw32_cc} \
-+%mingw32_configure %{CFG_OPTS}
-+make
-+popd
-+
-+mkdir BUILD-W64
-+pushd BUILD-W64
-+CFLAGS="%{CC_NORMAL}" \
-+CC=%{mingw64_cc} \
-+%mingw64_configure %{CFG_OPTS}
-+make
-+popd
-+
-+%install
-+rm -rf $RPM_BUILD_ROOT
-+
-+mkdir -p $RPM_BUILD_ROOT%{_bindir}
-+
-+pushd BUILD-W32
-+%{mingw32_make} install.libs
-+for name in $RPM_BUILD_ROOT%{mingw32_bindir}/*-config; \
-+ do \
-+ base=`basename $name`; \
-+ ln -v $name $RPM_BUILD_ROOT%{_bindir}/%{mingw32_target}-$base; \
-+ done
-+popd
-+
-+pushd BUILD-W64
-+%{mingw64_make} install.libs
-+for name in $RPM_BUILD_ROOT%{mingw64_bindir}/*-config; \
-+ do \
-+ base=`basename $name`; \
-+ ln -v $name $RPM_BUILD_ROOT%{_bindir}/%{mingw64_target}-$base; \
-+ done
-+popd
-+
-+%clean
-+rm -rf $RPM_BUILD_ROOT
-+
-+%files
-+%defattr(-,root,root,-)
-+
-+%files -n mingw32-ncurses6
-+%{_bindir}/%{mingw32_target}-*
-+%{mingw32_bindir}/*
-+%{mingw32_includedir}/*
-+%{mingw32_libdir}/*
-+
-+%files -n mingw64-ncurses6
-+%{_bindir}/%{mingw64_target}-*
-+%{mingw64_bindir}/*
-+%{mingw64_includedir}/*
-+%{mingw64_libdir}/*
-+
-+%changelog
-+
-+* Sat Sep 20 2014 Thomas E. Dickey
-+- adjust install-rules for ncurses*-config
-+
-+* Sat Aug 03 2013 Thomas E. Dickey
-+- initial version, using mingw-pdcurses package as a guide.
-Index: package/ncurses.map
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/ncurses.map 2014-11-29 19:59:14.000000000 +0000
-@@ -0,0 +1,1109 @@
-+# $Id: ncurses.map,v 1.25 2014/11/29 19:59:14 tom Exp $
-+# script for shared library symbol-versioning using ld
-+#
-+# This file was generated by ncu-mapsyms
-+# Configure options (merged 5 builds):
-+# 'CFLAGS=-O'
-+# --disable-echo
-+# --disable-getcap
-+# --disable-leaks
-+# --disable-root-environ
-+# --disable-termcap
-+# --enable-getcap
-+# --enable-getcap-cache
-+# --enable-hard-tabs
-+# --enable-interop
-+# --enable-rpath
-+# --enable-sp-funcs
-+# --enable-termcap
-+# --enable-warnings
-+# --enable-wgetch-events
-+# --verbose
-+# --with-shared
-+# --with-termlib
-+# --with-ticlib
-+# --with-trace
-+# --with-warnings
-+# --without-ada
-+# --without-debug
-+# --without-normal
-+#
-+
-+NCURSES_5.0.19991023 {
-+ global:
-+ COLORS;
-+ COLOR_PAIR;
-+ COLOR_PAIRS;
-+ ESCDELAY;
-+ PAIR_NUMBER;
-+ TYPE_ALNUM;
-+ TYPE_ALPHA;
-+ TYPE_ENUM;
-+ TYPE_INTEGER;
-+ TYPE_IPV4;
-+ TYPE_NUMERIC;
-+ TYPE_REGEXP;
-+ _nc_free_and_exit;
-+ _nc_panelhook;
-+ _nc_ripoffline;
-+ addch;
-+ addchnstr;
-+ addchstr;
-+ addnstr;
-+ addstr;
-+ attr_get;
-+ attr_off;
-+ attr_on;
-+ attr_set;
-+ attroff;
-+ attron;
-+ attrset;
-+ beep;
-+ bkgd;
-+ bkgdset;
-+ border;
-+ bottom_panel;
-+ box;
-+ can_change_color;
-+ chgat;
-+ clear;
-+ clearok;
-+ clrtobot;
-+ clrtoeol;
-+ color_content;
-+ color_set;
-+ copywin;
-+ current_field;
-+ current_item;
-+ data_ahead;
-+ data_behind;
-+ del_panel;
-+ delch;
-+ deleteln;
-+ delscreen;
-+ delwin;
-+ derwin;
-+ doupdate;
-+ dup_field;
-+ dupwin;
-+ dynamic_field_info;
-+ echo;
-+ echochar;
-+ endwin;
-+ field_arg;
-+ field_back;
-+ field_buffer;
-+ field_count;
-+ field_fore;
-+ field_index;
-+ field_info;
-+ field_init;
-+ field_just;
-+ field_opts;
-+ field_opts_off;
-+ field_opts_on;
-+ field_pad;
-+ field_status;
-+ field_term;
-+ field_type;
-+ field_userptr;
-+ filter;
-+ flash;
-+ form_driver;
-+ form_fields;
-+ form_init;
-+ form_opts;
-+ form_opts_off;
-+ form_opts_on;
-+ form_page;
-+ form_request_by_name;
-+ form_request_name;
-+ form_sub;
-+ form_term;
-+ form_userptr;
-+ form_win;
-+ free_field;
-+ free_fieldtype;
-+ free_form;
-+ free_item;
-+ free_menu;
-+ getbkgd;
-+ getch;
-+ getmouse;
-+ getnstr;
-+ getstr;
-+ getwin;
-+ has_colors;
-+ hide_panel;
-+ hline;
-+ immedok;
-+ inch;
-+ inchnstr;
-+ inchstr;
-+ init_color;
-+ init_pair;
-+ initscr;
-+ innstr;
-+ insch;
-+ insdelln;
-+ insertln;
-+ insnstr;
-+ insstr;
-+ instr;
-+ is_linetouched;
-+ is_wintouched;
-+ isendwin;
-+ item_count;
-+ item_description;
-+ item_index;
-+ item_init;
-+ item_name;
-+ item_opts;
-+ item_opts_off;
-+ item_opts_on;
-+ item_term;
-+ item_userptr;
-+ item_value;
-+ item_visible;
-+ leaveok;
-+ link_field;
-+ link_fieldtype;
-+ mcprint;
-+ menu_back;
-+ menu_driver;
-+ menu_fore;
-+ menu_format;
-+ menu_grey;
-+ menu_init;
-+ menu_items;
-+ menu_mark;
-+ menu_opts;
-+ menu_opts_off;
-+ menu_opts_on;
-+ menu_pad;
-+ menu_pattern;
-+ menu_request_by_name;
-+ menu_request_name;
-+ menu_spacing;
-+ menu_sub;
-+ menu_term;
-+ menu_userptr;
-+ menu_win;
-+ mouse_trafo;
-+ mouseinterval;
-+ mousemask;
-+ move;
-+ move_field;
-+ move_panel;
-+ mvaddch;
-+ mvaddchnstr;
-+ mvaddchstr;
-+ mvaddnstr;
-+ mvaddstr;
-+ mvchgat;
-+ mvcur;
-+ mvdelch;
-+ mvderwin;
-+ mvgetch;
-+ mvgetnstr;
-+ mvgetstr;
-+ mvhline;
-+ mvinch;
-+ mvinchnstr;
-+ mvinchstr;
-+ mvinnstr;
-+ mvinsch;
-+ mvinsnstr;
-+ mvinsstr;
-+ mvinstr;
-+ mvprintw;
-+ mvscanw;
-+ mvvline;
-+ mvwaddch;
-+ mvwaddchnstr;
-+ mvwaddchstr;
-+ mvwaddnstr;
-+ mvwaddstr;
-+ mvwchgat;
-+ mvwdelch;
-+ mvwgetch;
-+ mvwgetnstr;
-+ mvwgetstr;
-+ mvwhline;
-+ mvwin;
-+ mvwinch;
-+ mvwinchnstr;
-+ mvwinchstr;
-+ mvwinnstr;
-+ mvwinsch;
-+ mvwinsnstr;
-+ mvwinsstr;
-+ mvwinstr;
-+ mvwprintw;
-+ mvwscanw;
-+ mvwvline;
-+ new_field;
-+ new_fieldtype;
-+ new_form;
-+ new_item;
-+ new_menu;
-+ new_page;
-+ new_panel;
-+ newpad;
-+ newterm;
-+ newwin;
-+ nl;
-+ noecho;
-+ nonl;
-+ overlay;
-+ overwrite;
-+ pair_content;
-+ panel_above;
-+ panel_below;
-+ panel_hidden;
-+ panel_userptr;
-+ panel_window;
-+ pechochar;
-+ pnoutrefresh;
-+ pos_form_cursor;
-+ pos_menu_cursor;
-+ post_form;
-+ post_menu;
-+ prefresh;
-+ printw;
-+ putwin;
-+ redrawwin;
-+ refresh;
-+ replace_panel;
-+ resizeterm;
-+ restartterm;
-+ ripoffline;
-+ scale_form;
-+ scale_menu;
-+ scanw;
-+ scr_dump;
-+ scr_init;
-+ scr_restore;
-+ scr_set;
-+ scrl;
-+ scroll;
-+ scrollok;
-+ set_current_field;
-+ set_current_item;
-+ set_field_back;
-+ set_field_buffer;
-+ set_field_fore;
-+ set_field_init;
-+ set_field_just;
-+ set_field_opts;
-+ set_field_pad;
-+ set_field_status;
-+ set_field_term;
-+ set_field_type;
-+ set_field_userptr;
-+ set_fieldtype_arg;
-+ set_fieldtype_choice;
-+ set_form_fields;
-+ set_form_init;
-+ set_form_opts;
-+ set_form_page;
-+ set_form_sub;
-+ set_form_term;
-+ set_form_userptr;
-+ set_form_win;
-+ set_item_init;
-+ set_item_opts;
-+ set_item_term;
-+ set_item_userptr;
-+ set_item_value;
-+ set_max_field;
-+ set_menu_back;
-+ set_menu_fore;
-+ set_menu_format;
-+ set_menu_grey;
-+ set_menu_init;
-+ set_menu_items;
-+ set_menu_mark;
-+ set_menu_opts;
-+ set_menu_pad;
-+ set_menu_pattern;
-+ set_menu_spacing;
-+ set_menu_sub;
-+ set_menu_term;
-+ set_menu_userptr;
-+ set_menu_win;
-+ set_new_page;
-+ set_panel_userptr;
-+ set_term;
-+ set_top_row;
-+ setscrreg;
-+ show_panel;
-+ slk_attr;
-+ slk_attr_off;
-+ slk_attr_on;
-+ slk_attr_set;
-+ slk_attroff;
-+ slk_attron;
-+ slk_attrset;
-+ slk_clear;
-+ slk_color;
-+ slk_init;
-+ slk_label;
-+ slk_noutrefresh;
-+ slk_refresh;
-+ slk_restore;
-+ slk_set;
-+ slk_touch;
-+ standend;
-+ standout;
-+ start_color;
-+ subpad;
-+ subwin;
-+ syncok;
-+ termattrs;
-+ timeout;
-+ top_panel;
-+ top_row;
-+ ungetch;
-+ ungetmouse;
-+ unpost_form;
-+ unpost_menu;
-+ untouchwin;
-+ update_panels;
-+ use_default_colors;
-+ vid_attr;
-+ vidattr;
-+ vidputs;
-+ vline;
-+ vw_printw;
-+ vw_scanw;
-+ vwprintw;
-+ vwscanw;
-+ waddch;
-+ waddchnstr;
-+ waddchstr;
-+ waddnstr;
-+ waddstr;
-+ wattr_get;
-+ wattr_off;
-+ wattr_on;
-+ wattr_set;
-+ wattroff;
-+ wattron;
-+ wattrset;
-+ wbkgd;
-+ wbkgdset;
-+ wborder;
-+ wchgat;
-+ wclear;
-+ wclrtobot;
-+ wclrtoeol;
-+ wcolor_set;
-+ wcursyncup;
-+ wdelch;
-+ wdeleteln;
-+ wechochar;
-+ wenclose;
-+ werase;
-+ wgetch;
-+ wgetnstr;
-+ wgetstr;
-+ whline;
-+ winch;
-+ winchnstr;
-+ winchstr;
-+ winnstr;
-+ winsch;
-+ winsdelln;
-+ winsertln;
-+ winsnstr;
-+ winsstr;
-+ winstr;
-+ wmouse_trafo;
-+ wmove;
-+ wnoutrefresh;
-+ wprintw;
-+ wredrawln;
-+ wrefresh;
-+ wresize;
-+ wscanw;
-+ wscrl;
-+ wsetscrreg;
-+ wstandend;
-+ wstandout;
-+ wsyncdown;
-+ wsyncup;
-+ wtouchln;
-+ wvline;
-+ local:
-+ _nc_Calculate_Item_Length_and_Width;
-+ _nc_Connect_Items;
-+ _nc_Copy_Argument;
-+ _nc_Copy_Type;
-+ _nc_Default_Field;
-+ _nc_Default_FieldType;
-+ _nc_Default_Form;
-+ _nc_Default_Item;
-+ _nc_Default_Menu;
-+ _nc_Disconnect_Items;
-+ _nc_Draw_Menu;
-+ _nc_First_Active_Field;
-+ _nc_Free_Argument;
-+ _nc_Free_Type;
-+ _nc_Internal_Validation;
-+ _nc_Link_Items;
-+ _nc_Make_Argument;
-+ _nc_Match_Next_Character_In_Item_Name;
-+ _nc_New_TopRow_and_CurrentItem;
-+ _nc_Position_Form_Cursor;
-+ _nc_Post_Item;
-+ _nc_Refresh_Current_Field;
-+ _nc_Set_Current_Field;
-+ _nc_Set_Form_Page;
-+ _nc_Show_Menu;
-+ _nc_Synchronize_Attributes;
-+ _nc_Synchronize_Options;
-+ _nc_background;
-+ _nc_do_color;
-+ _nc_expanded;
-+ _nc_freeall;
-+ _nc_freewin;
-+ _nc_has_mouse;
-+ _nc_hash_map;
-+ _nc_lib_traceatr;
-+ _nc_lib_tracedmp;
-+ _nc_lib_tracemouse;
-+ _nc_make_oldhash;
-+ _nc_makenew;
-+ _nc_memmove;
-+ _nc_menu_cursor_pos;
-+ _nc_msec_cost;
-+ _nc_mvcur_init;
-+ _nc_mvcur_resume;
-+ _nc_mvcur_wrap;
-+ _nc_oldnums;
-+ _nc_outstr;
-+ _nc_printf_string;
-+ _nc_render;
-+ _nc_screen_init;
-+ _nc_screen_resume;
-+ _nc_screen_wrap;
-+ _nc_scroll_oldhash;
-+ _nc_scroll_optimize;
-+ _nc_scroll_window;
-+ _nc_scrolln;
-+ _nc_setupscreen;
-+ _nc_sigaction;
-+ _nc_signal_handler;
-+ _nc_slk_format;
-+ _nc_slk_initialize;
-+ _nc_synchook;
-+ _nc_trace_xnames;
-+ _nc_vsscanf;
-+ _nc_waddch_nosync;
-+};
-+
-+NCURSES_5.1.20000708 {
-+ global:
-+ assume_default_colors;
-+ erase;
-+ touchline;
-+ touchwin;
-+} NCURSES_5.0.19991023;
-+
-+NCURSES_5.3.20021019 {
-+ global:
-+ is_term_resized;
-+ resize_term;
-+ local:
-+ _nc_reset_colors;
-+ _nc_varargs;
-+ _nc_wgetch;
-+} NCURSES_5.1.20000708;
-+
-+NCURSES_5.4.20040208 {
-+ global:
-+ _nc_optimize_enable;
-+ local:
-+ _nc_Touchline;
-+ _nc_Touchpan;
-+ _nc_Wnoutrefresh;
-+ _nc_dPanel;
-+ _nc_dStack;
-+ _nc_fifo_dump;
-+ _nc_insert_ch;
-+ _nc_linedump;
-+ _nc_my_visbuf;
-+ _tracedump;
-+ _tracemouse;
-+} NCURSES_5.3.20021019;
-+
-+NCURSES_5.5.20051010 {
-+ local:
-+ _nc_Calculate_Text_Width;
-+ _nc_retrace_field;
-+ _nc_retrace_field_ptr;
-+ _nc_retrace_field_type;
-+ _nc_retrace_form;
-+ _nc_retrace_form_hook;
-+ _nc_retrace_item;
-+ _nc_retrace_item_opts;
-+ _nc_retrace_item_ptr;
-+ _nc_retrace_menu;
-+ _nc_retrace_menu_hook;
-+ _nc_retrace_menu_opts;
-+ _nc_retrace_panel;
-+} NCURSES_5.4.20040208;
-+
-+NCURSES_5.6.20061217 {
-+ global:
-+ getbegx;
-+ getbegy;
-+ getcurx;
-+ getcury;
-+ getmaxx;
-+ getmaxy;
-+ getparx;
-+ getpary;
-+ nofilter;
-+ use_legacy_coding;
-+ wgetch_events;
-+ wgetnstr_events;
-+} NCURSES_5.5.20051010;
-+
-+NCURSES_5.7.20081102 {
-+ global:
-+ getattrs;
-+ is_cleared;
-+ is_idcok;
-+ is_idlok;
-+ is_immedok;
-+ is_keypad;
-+ is_leaveok;
-+ is_nodelay;
-+ is_notimeout;
-+ is_scrollok;
-+ is_syncok;
-+ set_escdelay;
-+ use_screen;
-+ use_window;
-+ wgetparent;
-+ wgetscrreg;
-+ local:
-+ _nc_tracemouse;
-+ _nc_ungetch;
-+} NCURSES_5.6.20061217;
-+
-+NCURSES_5.8.20110226 {
-+ global:
-+ _nc_panelhook_sp;
-+ assume_default_colors_sp;
-+ beep_sp;
-+ can_change_color_sp;
-+ ceiling_panel;
-+ color_content_sp;
-+ doupdate_sp;
-+ echo_sp;
-+ endwin_sp;
-+ filter_sp;
-+ flash_sp;
-+ get_escdelay;
-+ get_escdelay_sp;
-+ getmouse_sp;
-+ getwin_sp;
-+ ground_panel;
-+ has_colors_sp;
-+ has_mouse;
-+ has_mouse_sp;
-+ init_color_sp;
-+ init_pair_sp;
-+ is_pad;
-+ is_subwin;
-+ is_term_resized_sp;
-+ isendwin_sp;
-+ mcprint_sp;
-+ mouseinterval_sp;
-+ mousemask_sp;
-+ mvcur_sp;
-+ new_form_sp;
-+ new_menu_sp;
-+ newpad_sp;
-+ newterm_sp;
-+ newwin_sp;
-+ nl_sp;
-+ noecho_sp;
-+ nofilter_sp;
-+ nonl_sp;
-+ pair_content_sp;
-+ resize_term_sp;
-+ resizeterm_sp;
-+ restartterm_sp;
-+ ripoffline_sp;
-+ scr_init_sp;
-+ scr_restore_sp;
-+ scr_set_sp;
-+ set_escdelay_sp;
-+ slk_attr_set_sp;
-+ slk_attr_sp;
-+ slk_attroff_sp;
-+ slk_attron_sp;
-+ slk_attrset_sp;
-+ slk_clear_sp;
-+ slk_color_sp;
-+ slk_init_sp;
-+ slk_label_sp;
-+ slk_noutrefresh_sp;
-+ slk_refresh_sp;
-+ slk_restore_sp;
-+ slk_set_sp;
-+ slk_touch_sp;
-+ start_color_sp;
-+ termattrs_sp;
-+ ungetch_sp;
-+ ungetmouse_sp;
-+ update_panels_sp;
-+ use_default_colors_sp;
-+ use_legacy_coding_sp;
-+ vidattr_sp;
-+ vidputs_sp;
-+ local:
-+ _nc_TYPE_ALNUM;
-+ _nc_TYPE_ALPHA;
-+ _nc_TYPE_ENUM;
-+ _nc_TYPE_INTEGER;
-+ _nc_TYPE_IPV4;
-+ _nc_TYPE_NUMERIC;
-+ _nc_TYPE_REGEXP;
-+ _nc_curscr_of;
-+ _nc_do_color_sp;
-+ _nc_form_cursor;
-+ _nc_format_slks;
-+ _nc_free_and_exit_sp;
-+ _nc_freeall_sp;
-+ _nc_fty_generic;
-+ _nc_generic_fieldtype;
-+ _nc_get_fieldbuffer;
-+ _nc_hash_map_sp;
-+ _nc_linedump_sp;
-+ _nc_make_oldhash_sp;
-+ _nc_makenew_sp;
-+ _nc_msec_cost_sp;
-+ _nc_mvcur_init_sp;
-+ _nc_mvcur_resume_sp;
-+ _nc_mvcur_wrap_sp;
-+ _nc_newscr_of;
-+ _nc_printf_string_sp;
-+ _nc_reset_colors_sp;
-+ _nc_retrace_mmask_t;
-+ _nc_ripoffline_sp;
-+ _nc_screen_init_sp;
-+ _nc_screen_resume_sp;
-+ _nc_screen_wrap_sp;
-+ _nc_scroll_oldhash_sp;
-+ _nc_scroll_optimize_sp;
-+ _nc_scrolln_sp;
-+ _nc_set_generic_fieldtype;
-+ _nc_setupscreen_sp;
-+ _nc_stdscr_of;
-+} NCURSES_5.7.20081102;
-+
-+NCURSES_5.9.current {
-+ global:
-+ wgetdelay;
-+ local:
-+ _nc_mvcur;
-+ _nc_mvcur_sp;
-+ _nc_trace_mmask_t;
-+} NCURSES_5.8.20110226;
-+
-+NCURSES_TIC_5.0.19991023 {
-+ global:
-+ _nc_capcmp;
-+ _nc_check_termtype;
-+ _nc_entry_match;
-+ _nc_find_type_entry;
-+ _nc_get_table;
-+ _nc_infotocap;
-+ _nc_read_entry_source;
-+ _nc_reset_input;
-+ _nc_resolve_uses;
-+ _nc_set_writedir;
-+ _nc_syntax;
-+ _nc_tic_expand;
-+ _nc_tic_written;
-+ _nc_trans_string;
-+ _nc_write_entry;
-+ local:
-+ _nc_captoinfo;
-+ _nc_comment_end;
-+ _nc_comment_start;
-+ _nc_copy_entry;
-+ _nc_curr_file_pos;
-+ _nc_curr_token;
-+ _nc_get_token;
-+ _nc_init_entry;
-+ _nc_merge_entry;
-+ _nc_panic_mode;
-+ _nc_parse_entry;
-+ _nc_push_token;
-+ _nc_save_str;
-+ _nc_start_line;
-+ _nc_wrap_entry;
-+};
-+
-+NCURSES_TIC_5.1.20000708 {
-+ global:
-+ _nc_disable_period;
-+} NCURSES_TIC_5.0.19991023;
-+
-+NCURSES_TIC_5.5.20051010 {
-+ global:
-+ _nc_alloc_entry_leaks;
-+ _nc_captoinfo_leaks;
-+ _nc_check_termtype2;
-+ _nc_comp_scan_leaks;
-+ _nc_resolve_uses2;
-+} NCURSES_TIC_5.1.20000708;
-+
-+NCURSES_TIC_5.7.20081102 {
-+ global:
-+ _nc_free_tic;
-+ _nc_get_alias_table;
-+ local:
-+ _nc_comp_captab_leaks;
-+ _nc_leaks_tic;
-+} NCURSES_TIC_5.5.20051010;
-+
-+NCURSES_TIC_5.9.current {
-+ global:
-+ _nc_strict_bsd;
-+} NCURSES_TIC_5.7.20081102;
-+
-+NCURSES_TINFO_5.0.19991023 {
-+ global:
-+ BC;
-+ COLS;
-+ LINES;
-+ PC;
-+ SP;
-+ TABSIZE;
-+ UP;
-+ _nc_access;
-+ _nc_add_to_try;
-+ _nc_copy_termtype;
-+ _nc_curr_col;
-+ _nc_curr_line;
-+ _nc_doalloc;
-+ _nc_err_abort;
-+ _nc_fallback;
-+ _nc_find_entry;
-+ _nc_first_name;
-+ _nc_free_entries;
-+ _nc_free_termtype;
-+ _nc_free_tparm;
-+ _nc_get_hash_table;
-+ _nc_get_tty_mode;
-+ _nc_get_type;
-+ _nc_getenv_num;
-+ _nc_head;
-+ _nc_home_terminfo;
-+ _nc_info_hash_table;
-+ _nc_init_acs;
-+ _nc_keep_tic_dir;
-+ _nc_keypad;
-+ _nc_name_match;
-+ _nc_outch;
-+ _nc_read_entry;
-+ _nc_read_file_entry;
-+ _nc_screen_chain;
-+ _nc_set_buffer;
-+ _nc_set_source;
-+ _nc_set_tty_mode;
-+ _nc_set_type;
-+ _nc_suppress_warnings;
-+ _nc_syserr_abort;
-+ _nc_tail;
-+ _nc_tic_dir;
-+ _nc_timed_wait;
-+ _nc_tinfo_fkeysf;
-+ _nc_trace_buf;
-+ _nc_tracing;
-+ _nc_update_screensize;
-+ _nc_visbuf;
-+ _nc_visbuf2;
-+ _nc_warning;
-+ _tracechar;
-+ acs_map;
-+ baudrate;
-+ boolcodes;
-+ boolfnames;
-+ boolnames;
-+ cbreak;
-+ cur_term;
-+ curs_set;
-+ curscr;
-+ curses_version;
-+ def_prog_mode;
-+ def_shell_mode;
-+ define_key;
-+ del_curterm;
-+ delay_output;
-+ erasechar;
-+ flushinp;
-+ halfdelay;
-+ has_ic;
-+ has_il;
-+ has_key;
-+ idcok;
-+ idlok;
-+ intrflush;
-+ keybound;
-+ keyname;
-+ keyok;
-+ keypad;
-+ killchar;
-+ longname;
-+ meta;
-+ napms;
-+ newscr;
-+ nocbreak;
-+ nodelay;
-+ noqiflush;
-+ noraw;
-+ notimeout;
-+ numcodes;
-+ numfnames;
-+ numnames;
-+ ospeed;
-+ putp;
-+ qiflush;
-+ raw;
-+ reset_prog_mode;
-+ reset_shell_mode;
-+ resetty;
-+ savetty;
-+ set_curterm;
-+ setupterm;
-+ stdscr;
-+ strcodes;
-+ strfnames;
-+ strnames;
-+ termname;
-+ tgetent;
-+ tgetflag;
-+ tgetnum;
-+ tgetstr;
-+ tgoto;
-+ tigetflag;
-+ tigetnum;
-+ tigetstr;
-+ tparm;
-+ tputs;
-+ trace;
-+ ttytype;
-+ typeahead;
-+ unctrl;
-+ use_env;
-+ wtimeout;
-+ local:
-+ _nc_baudrate;
-+ _nc_cap_hash_table;
-+ _nc_capalias_table;
-+ _nc_expand_try;
-+ _nc_infoalias_table;
-+ _nc_init_keytry;
-+ _nc_key_names;
-+ _nc_nulls_sent;
-+ _nc_ospeed;
-+ _nc_read_termcap;
-+ _nc_read_termcap_entry;
-+ _nc_remove_key;
-+ _nc_remove_string;
-+ _nc_trace_tries;
-+ _nc_tracebits;
-+};
-+
-+NCURSES_TINFO_5.1.20000708 {
-+ global:
-+ _nc_align_termtype;
-+ _nc_flush;
-+ _nc_tinfo_fkeys;
-+ _nc_user_definable;
-+ use_extended_names;
-+} NCURSES_TINFO_5.0.19991023;
-+
-+NCURSES_TINFO_5.2.20001021 {
-+ global:
-+ _nc_basename;
-+ _nc_env_access;
-+ _nc_safe_strcat;
-+ _nc_safe_strcpy;
-+ _nc_str_copy;
-+ _nc_str_init;
-+ _nc_str_null;
-+} NCURSES_TINFO_5.1.20000708;
-+
-+NCURSES_TINFO_5.3.20021019 {
-+ global:
-+ _nc_rootname;
-+ _nc_tparm_err;
-+ _nc_visbufn;
-+} NCURSES_TINFO_5.2.20001021;
-+
-+NCURSES_TINFO_5.4.20040208 {
-+ global:
-+ _nc_get_locale;
-+ _nc_locale_breaks_acs;
-+ _nc_outchars;
-+ _nc_pathlast;
-+ _nc_retrace_attr_t;
-+ _nc_retrace_bool;
-+ _nc_retrace_chtype;
-+ _nc_retrace_int;
-+ _nc_retrace_ptr;
-+ _nc_retrace_sp;
-+ _nc_retrace_unsigned;
-+ _nc_retrace_win;
-+ _nc_tparm_analyze;
-+ _nc_tputs_trace;
-+ _nc_trace_bufcat;
-+ _nc_unicode_locale;
-+ _traceattr;
-+ _traceattr2;
-+ _tracechtype;
-+ _tracechtype2;
-+ _tracef;
-+ key_defined;
-+ local:
-+ _nc_altcharset_name;
-+ _nc_trace_ttymode;
-+} NCURSES_TINFO_5.3.20021019;
-+
-+NCURSES_TINFO_5.5.20051010 {
-+ global:
-+ _nc_get_source;
-+ _nc_retrace_cptr;
-+ _nc_retrace_cvoid_ptr;
-+ _nc_retrace_void_ptr;
-+ _nc_setupterm;
-+ _nc_trim_sgr0;
-+ local:
-+ _nc_delink_entry;
-+ _nc_free_entry;
-+} NCURSES_TINFO_5.4.20040208;
-+
-+NCURSES_TINFO_5.6.20061217 {
-+ global:
-+ _nc_eventlist_timeout;
-+ _nc_first_db;
-+ _nc_handle_sigwinch;
-+ _nc_is_abs_path;
-+ _nc_is_dir_path;
-+ _nc_is_file_path;
-+ _nc_keyname_leaks;
-+ _nc_last_db;
-+ _nc_next_db;
-+ _nc_tgetent_leaks;
-+ _nc_viscbuf;
-+ local:
-+ _nc_hashed_db;
-+ _nc_read_termtype;
-+ _nc_viscbuf2;
-+} NCURSES_TINFO_5.5.20051010;
-+
-+NCURSES_TINFO_5.7.20081102 {
-+ global:
-+ _nc_free_tinfo;
-+ _nc_get_screensize;
-+ _nc_globals;
-+ _nc_leaks_tinfo;
-+ _nc_prescreen;
-+ _nc_screen_of;
-+ _nc_set_no_padding;
-+ _nc_tracechar;
-+ set_tabsize;
-+ local:
-+ _nc_keyname;
-+ _nc_unctrl;
-+} NCURSES_TINFO_5.6.20061217;
-+
-+NCURSES_TINFO_5.8.20110226 {
-+ global:
-+ _nc_flush_sp;
-+ _nc_get_tty_mode_sp;
-+ _nc_init_acs_sp;
-+ _nc_outc_wrapper;
-+ _nc_outch_sp;
-+ _nc_putp;
-+ _nc_putp_flush;
-+ _nc_putp_flush_sp;
-+ _nc_putp_sp;
-+ _nc_retrace_int_attr_t;
-+ _nc_set_buffer_sp;
-+ _nc_set_tty_mode_sp;
-+ baudrate_sp;
-+ cbreak_sp;
-+ curs_set_sp;
-+ def_prog_mode_sp;
-+ def_shell_mode_sp;
-+ define_key_sp;
-+ del_curterm_sp;
-+ delay_output_sp;
-+ erasechar_sp;
-+ flushinp_sp;
-+ halfdelay_sp;
-+ has_ic_sp;
-+ has_il_sp;
-+ has_key_sp;
-+ intrflush_sp;
-+ key_defined_sp;
-+ keybound_sp;
-+ keyname_sp;
-+ keyok_sp;
-+ killchar_sp;
-+ napms_sp;
-+ new_prescr;
-+ nocbreak_sp;
-+ noqiflush_sp;
-+ noraw_sp;
-+ putp_sp;
-+ qiflush_sp;
-+ raw_sp;
-+ reset_prog_mode_sp;
-+ reset_shell_mode_sp;
-+ resetty_sp;
-+ savetty_sp;
-+ set_curterm_sp;
-+ set_tabsize_sp;
-+ termname_sp;
-+ tgetent_sp;
-+ tgetflag_sp;
-+ tgetnum_sp;
-+ tgetstr_sp;
-+ tigetflag_sp;
-+ tigetnum_sp;
-+ tigetstr_sp;
-+ tiparm;
-+ tputs_sp;
-+ typeahead_sp;
-+ unctrl_sp;
-+ use_env_sp;
-+ local:
-+ _nc_get_hash_info;
-+ _nc_retrace_char;
-+ _nc_setup_tinfo;
-+ _nc_tinfo_cmdch;
-+} NCURSES_TINFO_5.7.20081102;
-+
-+NCURSES_TINFO_5.9.current {
-+ global:
-+ _nc_init_termtype;
-+ _nc_putchar;
-+ _nc_putchar_sp;
-+ use_tioctl;
-+ use_tioctl_sp;
-+ local:
-+ _nc_comp_error_leaks;
-+ _nc_db_iterator_leaks;
-+ _nc_setenv_num;
-+} NCURSES_TINFO_5.8.20110226;
-Index: package/ncurses.spec
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/ncurses.spec 2014-12-06 13:32:29.000000000 +0000
-@@ -0,0 +1,95 @@
-+Summary: shared libraries for terminal handling
-+Name: ncurses6
-+Version: 5.9
-+Release: 20141206
-+License: X11
-+Group: Development/Libraries
-+Source: ncurses-%{version}-%{release}.tgz
-+# URL: http://invisible-island.net/ncurses/
-+
-+%define CC_NORMAL -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion
-+%define CC_STRICT %{CC_NORMAL} -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic
-+
-+%define _prefix /usr/local/ncurses6
-+%define MYDATA /usr/local/ncurses/share/terminfo
-+
-+%description
-+The ncurses library routines are a terminal-independent method of
-+updating character screens with reasonable optimization.
-+
-+This package is used for testing ABI 6.
-+
-+%prep
-+
-+%define debug_package %{nil}
-+%setup -q -n ncurses-%{version}-%{release}
-+
-+%build
-+CFLAGS="%{CC_NORMAL}" \
-+RPATH_LIST=../lib:%{_prefix}/lib \
-+%configure \
-+ --target %{_target_platform} \
-+ --prefix=%{_prefix} \
-+ --includedir='${prefix}/include' \
-+ --with-default-terminfo-dir=%{MYDATA} \
-+ --with-install-prefix=$RPM_BUILD_ROOT \
-+ --with-terminfo-dirs=%{MYDATA}:/usr/share/terminfo \
-+ --disable-echo \
-+ --disable-getcap \
-+ --disable-leaks \
-+ --disable-macros \
-+ --disable-overwrite \
-+ --disable-termcap \
-+ --enable-const \
-+ --enable-ext-colors \
-+ --enable-ext-mouse \
-+ --enable-hard-tabs \
-+ --enable-interop \
-+ --enable-rpath \
-+ --enable-sp-funcs \
-+ --enable-warnings \
-+ --enable-widec \
-+ --verbose \
-+ --with-chtype=uint32_t \
-+ --with-mmask_t=uint32_t \
-+ --with-develop \
-+ --with-shared \
-+ --with-termlib \
-+ --with-ticlib \
-+ --with-trace \
-+ --with-cxx-shared \
-+ --with-versioned-syms \
-+ --with-xterm-kbs=DEL \
-+ --without-ada \
-+ --without-debug \
-+ --without-normal
-+
-+make
-+
-+%install
-+rm -rf $RPM_BUILD_ROOT
-+
-+make install.libs install.progs
-+rm -f test/ncurses
-+( cd test && make ncurses LOCAL_LIBDIR=%{_libdir} && mv ncurses $RPM_BUILD_ROOT/%{_bindir}/ncurses6 )
-+
-+%clean
-+rm -rf $RPM_BUILD_ROOT
-+
-+%files
-+%defattr(-,root,root,-)
-+%{_bindir}/*
-+%{_includedir}/*
-+%{_libdir}/*
-+#%{_datadir}/*
-+
-+%changelog
-+
-+* Sat Mar 09 2013 Thomas E. Dickey
-+- add --with-cxx-shared option to demonstrate c++ binding as shared library
-+
-+* Sat Oct 27 2012 Thomas E. Dickey
-+- add ncurses program as "ncurses6" to provide demonstration.
-+
-+* Fri Jun 08 2012 Thomas E. Dickey
-+- initial version.
-Index: package/ncurses.sym
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/ncurses.sym 2014-11-28 14:12:48.000000000 +0000
-@@ -0,0 +1,997 @@
-+# $Id: ncurses.sym,v 1.14 2014/11/28 14:12:48 tom Exp $
-+# script for shared library symbol-visibility using libtool
-+#
-+# This file was generated by ncu-mapsyms
-+# Configure options (merged 5 builds):
-+# 'CFLAGS=-O'
-+# --disable-echo
-+# --disable-getcap
-+# --disable-leaks
-+# --disable-root-environ
-+# --disable-termcap
-+# --enable-getcap
-+# --enable-getcap-cache
-+# --enable-hard-tabs
-+# --enable-interop
-+# --enable-rpath
-+# --enable-sp-funcs
-+# --enable-termcap
-+# --enable-warnings
-+# --enable-wgetch-events
-+# --verbose
-+# --with-shared
-+# --with-termlib
-+# --with-ticlib
-+# --with-trace
-+# --with-warnings
-+# --without-ada
-+# --without-debug
-+# --without-normal
-+BC
-+COLORS
-+COLOR_PAIR
-+COLOR_PAIRS
-+COLS
-+ESCDELAY
-+LINES
-+PAIR_NUMBER
-+PC
-+SP
-+TABSIZE
-+TYPE_ALNUM
-+TYPE_ALPHA
-+TYPE_ENUM
-+TYPE_INTEGER
-+TYPE_IPV4
-+TYPE_NUMERIC
-+TYPE_REGEXP
-+UP
-+_nc_Calculate_Item_Length_and_Width
-+_nc_Calculate_Text_Width
-+_nc_Connect_Items
-+_nc_Copy_Argument
-+_nc_Copy_Type
-+_nc_Default_Field
-+_nc_Default_FieldType
-+_nc_Default_Form
-+_nc_Default_Item
-+_nc_Default_Menu
-+_nc_Disconnect_Items
-+_nc_Draw_Menu
-+_nc_First_Active_Field
-+_nc_Free_Argument
-+_nc_Free_Type
-+_nc_Internal_Validation
-+_nc_Link_Items
-+_nc_Make_Argument
-+_nc_Match_Next_Character_In_Item_Name
-+_nc_New_TopRow_and_CurrentItem
-+_nc_Position_Form_Cursor
-+_nc_Post_Item
-+_nc_Refresh_Current_Field
-+_nc_Set_Current_Field
-+_nc_Set_Form_Page
-+_nc_Show_Menu
-+_nc_Synchronize_Attributes
-+_nc_Synchronize_Options
-+_nc_TYPE_ALNUM
-+_nc_TYPE_ALPHA
-+_nc_TYPE_ENUM
-+_nc_TYPE_INTEGER
-+_nc_TYPE_IPV4
-+_nc_TYPE_NUMERIC
-+_nc_TYPE_REGEXP
-+_nc_Touchline
-+_nc_Touchpan
-+_nc_Wnoutrefresh
-+_nc_access
-+_nc_add_to_try
-+_nc_align_termtype
-+_nc_alloc_entry_leaks
-+_nc_altcharset_name
-+_nc_background
-+_nc_basename
-+_nc_baudrate
-+_nc_cap_hash_table
-+_nc_capalias_table
-+_nc_capcmp
-+_nc_captoinfo
-+_nc_captoinfo_leaks
-+_nc_check_termtype
-+_nc_check_termtype2
-+_nc_comment_end
-+_nc_comment_start
-+_nc_comp_captab_leaks
-+_nc_comp_error_leaks
-+_nc_comp_scan_leaks
-+_nc_copy_entry
-+_nc_copy_termtype
-+_nc_curr_col
-+_nc_curr_file_pos
-+_nc_curr_line
-+_nc_curr_token
-+_nc_curscr_of
-+_nc_dPanel
-+_nc_dStack
-+_nc_db_iterator_leaks
-+_nc_delink_entry
-+_nc_disable_period
-+_nc_do_color
-+_nc_do_color_sp
-+_nc_doalloc
-+_nc_entry_match
-+_nc_env_access
-+_nc_err_abort
-+_nc_eventlist_timeout
-+_nc_expand_try
-+_nc_expanded
-+_nc_fallback
-+_nc_fifo_dump
-+_nc_find_entry
-+_nc_find_type_entry
-+_nc_first_db
-+_nc_first_name
-+_nc_flush
-+_nc_flush_sp
-+_nc_form_cursor
-+_nc_format_slks
-+_nc_free_and_exit
-+_nc_free_and_exit_sp
-+_nc_free_entries
-+_nc_free_entry
-+_nc_free_termtype
-+_nc_free_tic
-+_nc_free_tinfo
-+_nc_free_tparm
-+_nc_freeall
-+_nc_freeall_sp
-+_nc_freewin
-+_nc_fty_generic
-+_nc_generic_fieldtype
-+_nc_get_alias_table
-+_nc_get_fieldbuffer
-+_nc_get_hash_info
-+_nc_get_hash_table
-+_nc_get_locale
-+_nc_get_screensize
-+_nc_get_source
-+_nc_get_table
-+_nc_get_token
-+_nc_get_tty_mode
-+_nc_get_tty_mode_sp
-+_nc_get_type
-+_nc_getenv_num
-+_nc_globals
-+_nc_handle_sigwinch
-+_nc_has_mouse
-+_nc_hash_map
-+_nc_hash_map_sp
-+_nc_hashed_db
-+_nc_head
-+_nc_home_terminfo
-+_nc_info_hash_table
-+_nc_infoalias_table
-+_nc_infotocap
-+_nc_init_acs
-+_nc_init_acs_sp
-+_nc_init_entry
-+_nc_init_keytry
-+_nc_init_termtype
-+_nc_insert_ch
-+_nc_is_abs_path
-+_nc_is_dir_path
-+_nc_is_file_path
-+_nc_keep_tic_dir
-+_nc_key_names
-+_nc_keyname
-+_nc_keyname_leaks
-+_nc_keypad
-+_nc_last_db
-+_nc_leaks_tic
-+_nc_leaks_tinfo
-+_nc_lib_traceatr
-+_nc_lib_tracedmp
-+_nc_lib_tracemouse
-+_nc_linedump
-+_nc_linedump_sp
-+_nc_locale_breaks_acs
-+_nc_make_oldhash
-+_nc_make_oldhash_sp
-+_nc_makenew
-+_nc_makenew_sp
-+_nc_memmove
-+_nc_menu_cursor_pos
-+_nc_merge_entry
-+_nc_msec_cost
-+_nc_msec_cost_sp
-+_nc_mvcur
-+_nc_mvcur_init
-+_nc_mvcur_init_sp
-+_nc_mvcur_resume
-+_nc_mvcur_resume_sp
-+_nc_mvcur_sp
-+_nc_mvcur_wrap
-+_nc_mvcur_wrap_sp
-+_nc_my_visbuf
-+_nc_name_match
-+_nc_newscr_of
-+_nc_next_db
-+_nc_nulls_sent
-+_nc_oldnums
-+_nc_optimize_enable
-+_nc_ospeed
-+_nc_outc_wrapper
-+_nc_outch
-+_nc_outch_sp
-+_nc_outchars
-+_nc_outstr
-+_nc_panelhook
-+_nc_panelhook_sp
-+_nc_panic_mode
-+_nc_parse_entry
-+_nc_pathlast
-+_nc_prescreen
-+_nc_printf_string
-+_nc_printf_string_sp
-+_nc_push_token
-+_nc_putchar
-+_nc_putchar_sp
-+_nc_putp
-+_nc_putp_flush
-+_nc_putp_flush_sp
-+_nc_putp_sp
-+_nc_read_entry
-+_nc_read_entry_source
-+_nc_read_file_entry
-+_nc_read_termcap
-+_nc_read_termcap_entry
-+_nc_read_termtype
-+_nc_remove_key
-+_nc_remove_string
-+_nc_render
-+_nc_reset_colors
-+_nc_reset_colors_sp
-+_nc_reset_input
-+_nc_resolve_uses
-+_nc_resolve_uses2
-+_nc_retrace_attr_t
-+_nc_retrace_bool
-+_nc_retrace_char
-+_nc_retrace_chtype
-+_nc_retrace_cptr
-+_nc_retrace_cvoid_ptr
-+_nc_retrace_field
-+_nc_retrace_field_ptr
-+_nc_retrace_field_type
-+_nc_retrace_form
-+_nc_retrace_form_hook
-+_nc_retrace_int
-+_nc_retrace_int_attr_t
-+_nc_retrace_item
-+_nc_retrace_item_opts
-+_nc_retrace_item_ptr
-+_nc_retrace_menu
-+_nc_retrace_menu_hook
-+_nc_retrace_menu_opts
-+_nc_retrace_mmask_t
-+_nc_retrace_panel
-+_nc_retrace_ptr
-+_nc_retrace_sp
-+_nc_retrace_unsigned
-+_nc_retrace_void_ptr
-+_nc_retrace_win
-+_nc_ripoffline
-+_nc_ripoffline_sp
-+_nc_rootname
-+_nc_safe_strcat
-+_nc_safe_strcpy
-+_nc_save_str
-+_nc_screen_chain
-+_nc_screen_init
-+_nc_screen_init_sp
-+_nc_screen_of
-+_nc_screen_resume
-+_nc_screen_resume_sp
-+_nc_screen_wrap
-+_nc_screen_wrap_sp
-+_nc_scroll_oldhash
-+_nc_scroll_oldhash_sp
-+_nc_scroll_optimize
-+_nc_scroll_optimize_sp
-+_nc_scroll_window
-+_nc_scrolln
-+_nc_scrolln_sp
-+_nc_set_buffer
-+_nc_set_buffer_sp
-+_nc_set_generic_fieldtype
-+_nc_set_no_padding
-+_nc_set_source
-+_nc_set_tty_mode
-+_nc_set_tty_mode_sp
-+_nc_set_type
-+_nc_set_writedir
-+_nc_setenv_num
-+_nc_setup_tinfo
-+_nc_setupscreen
-+_nc_setupscreen_sp
-+_nc_setupterm
-+_nc_sigaction
-+_nc_signal_handler
-+_nc_slk_format
-+_nc_slk_initialize
-+_nc_start_line
-+_nc_stdscr_of
-+_nc_str_copy
-+_nc_str_init
-+_nc_str_null
-+_nc_strict_bsd
-+_nc_suppress_warnings
-+_nc_synchook
-+_nc_syntax
-+_nc_syserr_abort
-+_nc_tail
-+_nc_tgetent_leaks
-+_nc_tic_dir
-+_nc_tic_expand
-+_nc_tic_written
-+_nc_timed_wait
-+_nc_tinfo_cmdch
-+_nc_tinfo_fkeys
-+_nc_tinfo_fkeysf
-+_nc_tparm_analyze
-+_nc_tparm_err
-+_nc_tputs_trace
-+_nc_trace_buf
-+_nc_trace_bufcat
-+_nc_trace_mmask_t
-+_nc_trace_tries
-+_nc_trace_ttymode
-+_nc_trace_xnames
-+_nc_tracebits
-+_nc_tracechar
-+_nc_tracemouse
-+_nc_tracing
-+_nc_trans_string
-+_nc_trim_sgr0
-+_nc_unctrl
-+_nc_ungetch
-+_nc_unicode_locale
-+_nc_update_screensize
-+_nc_user_definable
-+_nc_varargs
-+_nc_visbuf
-+_nc_visbuf2
-+_nc_visbufn
-+_nc_viscbuf
-+_nc_viscbuf2
-+_nc_vsscanf
-+_nc_waddch_nosync
-+_nc_warning
-+_nc_wgetch
-+_nc_wrap_entry
-+_nc_write_entry
-+_traceattr
-+_traceattr2
-+_tracechar
-+_tracechtype
-+_tracechtype2
-+_tracedump
-+_tracef
-+_tracemouse
-+acs_map
-+addch
-+addchnstr
-+addchstr
-+addnstr
-+addstr
-+assume_default_colors
-+assume_default_colors_sp
-+attr_get
-+attr_off
-+attr_on
-+attr_set
-+attroff
-+attron
-+attrset
-+baudrate
-+baudrate_sp
-+beep
-+beep_sp
-+bkgd
-+bkgdset
-+boolcodes
-+boolfnames
-+boolnames
-+border
-+bottom_panel
-+box
-+can_change_color
-+can_change_color_sp
-+cbreak
-+cbreak_sp
-+ceiling_panel
-+chgat
-+clear
-+clearok
-+clrtobot
-+clrtoeol
-+color_content
-+color_content_sp
-+color_set
-+copywin
-+cur_term
-+current_field
-+current_item
-+curs_set
-+curs_set_sp
-+curscr
-+curses_version
-+data_ahead
-+data_behind
-+def_prog_mode
-+def_prog_mode_sp
-+def_shell_mode
-+def_shell_mode_sp
-+define_key
-+define_key_sp
-+del_curterm
-+del_curterm_sp
-+del_panel
-+delay_output
-+delay_output_sp
-+delch
-+deleteln
-+delscreen
-+delwin
-+derwin
-+doupdate
-+doupdate_sp
-+dup_field
-+dupwin
-+dynamic_field_info
-+echo
-+echo_sp
-+echochar
-+endwin
-+endwin_sp
-+erase
-+erasechar
-+erasechar_sp
-+field_arg
-+field_back
-+field_buffer
-+field_count
-+field_fore
-+field_index
-+field_info
-+field_init
-+field_just
-+field_opts
-+field_opts_off
-+field_opts_on
-+field_pad
-+field_status
-+field_term
-+field_type
-+field_userptr
-+filter
-+filter_sp
-+flash
-+flash_sp
-+flushinp
-+flushinp_sp
-+form_driver
-+form_fields
-+form_init
-+form_opts
-+form_opts_off
-+form_opts_on
-+form_page
-+form_request_by_name
-+form_request_name
-+form_sub
-+form_term
-+form_userptr
-+form_win
-+free_field
-+free_fieldtype
-+free_form
-+free_item
-+free_menu
-+get_escdelay
-+get_escdelay_sp
-+getattrs
-+getbegx
-+getbegy
-+getbkgd
-+getch
-+getcurx
-+getcury
-+getmaxx
-+getmaxy
-+getmouse
-+getmouse_sp
-+getnstr
-+getparx
-+getpary
-+getstr
-+getwin
-+getwin_sp
-+ground_panel
-+halfdelay
-+halfdelay_sp
-+has_colors
-+has_colors_sp
-+has_ic
-+has_ic_sp
-+has_il
-+has_il_sp
-+has_key
-+has_key_sp
-+has_mouse
-+has_mouse_sp
-+hide_panel
-+hline
-+idcok
-+idlok
-+immedok
-+inch
-+inchnstr
-+inchstr
-+init_color
-+init_color_sp
-+init_pair
-+init_pair_sp
-+initscr
-+innstr
-+insch
-+insdelln
-+insertln
-+insnstr
-+insstr
-+instr
-+intrflush
-+intrflush_sp
-+is_cleared
-+is_idcok
-+is_idlok
-+is_immedok
-+is_keypad
-+is_leaveok
-+is_linetouched
-+is_nodelay
-+is_notimeout
-+is_pad
-+is_scrollok
-+is_subwin
-+is_syncok
-+is_term_resized
-+is_term_resized_sp
-+is_wintouched
-+isendwin
-+isendwin_sp
-+item_count
-+item_description
-+item_index
-+item_init
-+item_name
-+item_opts
-+item_opts_off
-+item_opts_on
-+item_term
-+item_userptr
-+item_value
-+item_visible
-+key_defined
-+key_defined_sp
-+keybound
-+keybound_sp
-+keyname
-+keyname_sp
-+keyok
-+keyok_sp
-+keypad
-+killchar
-+killchar_sp
-+leaveok
-+link_field
-+link_fieldtype
-+longname
-+mcprint
-+mcprint_sp
-+menu_back
-+menu_driver
-+menu_fore
-+menu_format
-+menu_grey
-+menu_init
-+menu_items
-+menu_mark
-+menu_opts
-+menu_opts_off
-+menu_opts_on
-+menu_pad
-+menu_pattern
-+menu_request_by_name
-+menu_request_name
-+menu_spacing
-+menu_sub
-+menu_term
-+menu_userptr
-+menu_win
-+meta
-+mouse_trafo
-+mouseinterval
-+mouseinterval_sp
-+mousemask
-+mousemask_sp
-+move
-+move_field
-+move_panel
-+mvaddch
-+mvaddchnstr
-+mvaddchstr
-+mvaddnstr
-+mvaddstr
-+mvchgat
-+mvcur
-+mvcur_sp
-+mvdelch
-+mvderwin
-+mvgetch
-+mvgetnstr
-+mvgetstr
-+mvhline
-+mvinch
-+mvinchnstr
-+mvinchstr
-+mvinnstr
-+mvinsch
-+mvinsnstr
-+mvinsstr
-+mvinstr
-+mvprintw
-+mvscanw
-+mvvline
-+mvwaddch
-+mvwaddchnstr
-+mvwaddchstr
-+mvwaddnstr
-+mvwaddstr
-+mvwchgat
-+mvwdelch
-+mvwgetch
-+mvwgetnstr
-+mvwgetstr
-+mvwhline
-+mvwin
-+mvwinch
-+mvwinchnstr
-+mvwinchstr
-+mvwinnstr
-+mvwinsch
-+mvwinsnstr
-+mvwinsstr
-+mvwinstr
-+mvwprintw
-+mvwscanw
-+mvwvline
-+napms
-+napms_sp
-+new_field
-+new_fieldtype
-+new_form
-+new_form_sp
-+new_item
-+new_menu
-+new_menu_sp
-+new_page
-+new_panel
-+new_prescr
-+newpad
-+newpad_sp
-+newscr
-+newterm
-+newterm_sp
-+newwin
-+newwin_sp
-+nl
-+nl_sp
-+nocbreak
-+nocbreak_sp
-+nodelay
-+noecho
-+noecho_sp
-+nofilter
-+nofilter_sp
-+nonl
-+nonl_sp
-+noqiflush
-+noqiflush_sp
-+noraw
-+noraw_sp
-+notimeout
-+numcodes
-+numfnames
-+numnames
-+ospeed
-+overlay
-+overwrite
-+pair_content
-+pair_content_sp
-+panel_above
-+panel_below
-+panel_hidden
-+panel_userptr
-+panel_window
-+pechochar
-+pnoutrefresh
-+pos_form_cursor
-+pos_menu_cursor
-+post_form
-+post_menu
-+prefresh
-+printw
-+putp
-+putp_sp
-+putwin
-+qiflush
-+qiflush_sp
-+raw
-+raw_sp
-+redrawwin
-+refresh
-+replace_panel
-+reset_prog_mode
-+reset_prog_mode_sp
-+reset_shell_mode
-+reset_shell_mode_sp
-+resetty
-+resetty_sp
-+resize_term
-+resize_term_sp
-+resizeterm
-+resizeterm_sp
-+restartterm
-+restartterm_sp
-+ripoffline
-+ripoffline_sp
-+savetty
-+savetty_sp
-+scale_form
-+scale_menu
-+scanw
-+scr_dump
-+scr_init
-+scr_init_sp
-+scr_restore
-+scr_restore_sp
-+scr_set
-+scr_set_sp
-+scrl
-+scroll
-+scrollok
-+set_current_field
-+set_current_item
-+set_curterm
-+set_curterm_sp
-+set_escdelay
-+set_escdelay_sp
-+set_field_back
-+set_field_buffer
-+set_field_fore
-+set_field_init
-+set_field_just
-+set_field_opts
-+set_field_pad
-+set_field_status
-+set_field_term
-+set_field_type
-+set_field_userptr
-+set_fieldtype_arg
-+set_fieldtype_choice
-+set_form_fields
-+set_form_init
-+set_form_opts
-+set_form_page
-+set_form_sub
-+set_form_term
-+set_form_userptr
-+set_form_win
-+set_item_init
-+set_item_opts
-+set_item_term
-+set_item_userptr
-+set_item_value
-+set_max_field
-+set_menu_back
-+set_menu_fore
-+set_menu_format
-+set_menu_grey
-+set_menu_init
-+set_menu_items
-+set_menu_mark
-+set_menu_opts
-+set_menu_pad
-+set_menu_pattern
-+set_menu_spacing
-+set_menu_sub
-+set_menu_term
-+set_menu_userptr
-+set_menu_win
-+set_new_page
-+set_panel_userptr
-+set_tabsize
-+set_tabsize_sp
-+set_term
-+set_top_row
-+setscrreg
-+setupterm
-+show_panel
-+slk_attr
-+slk_attr_off
-+slk_attr_on
-+slk_attr_set
-+slk_attr_set_sp
-+slk_attr_sp
-+slk_attroff
-+slk_attroff_sp
-+slk_attron
-+slk_attron_sp
-+slk_attrset
-+slk_attrset_sp
-+slk_clear
-+slk_clear_sp
-+slk_color
-+slk_color_sp
-+slk_init
-+slk_init_sp
-+slk_label
-+slk_label_sp
-+slk_noutrefresh
-+slk_noutrefresh_sp
-+slk_refresh
-+slk_refresh_sp
-+slk_restore
-+slk_restore_sp
-+slk_set
-+slk_set_sp
-+slk_touch
-+slk_touch_sp
-+standend
-+standout
-+start_color
-+start_color_sp
-+stdscr
-+strcodes
-+strfnames
-+strnames
-+subpad
-+subwin
-+syncok
-+termattrs
-+termattrs_sp
-+termname
-+termname_sp
-+tgetent
-+tgetent_sp
-+tgetflag
-+tgetflag_sp
-+tgetnum
-+tgetnum_sp
-+tgetstr
-+tgetstr_sp
-+tgoto
-+tigetflag
-+tigetflag_sp
-+tigetnum
-+tigetnum_sp
-+tigetstr
-+tigetstr_sp
-+timeout
-+tiparm
-+top_panel
-+top_row
-+touchline
-+touchwin
-+tparm
-+tputs
-+tputs_sp
-+trace
-+ttytype
-+typeahead
-+typeahead_sp
-+unctrl
-+unctrl_sp
-+ungetch
-+ungetch_sp
-+ungetmouse
-+ungetmouse_sp
-+unpost_form
-+unpost_menu
-+untouchwin
-+update_panels
-+update_panels_sp
-+use_default_colors
-+use_default_colors_sp
-+use_env
-+use_env_sp
-+use_extended_names
-+use_legacy_coding
-+use_legacy_coding_sp
-+use_screen
-+use_tioctl
-+use_tioctl_sp
-+use_window
-+vid_attr
-+vidattr
-+vidattr_sp
-+vidputs
-+vidputs_sp
-+vline
-+vw_printw
-+vw_scanw
-+vwprintw
-+vwscanw
-+waddch
-+waddchnstr
-+waddchstr
-+waddnstr
-+waddstr
-+wattr_get
-+wattr_off
-+wattr_on
-+wattr_set
-+wattroff
-+wattron
-+wattrset
-+wbkgd
-+wbkgdset
-+wborder
-+wchgat
-+wclear
-+wclrtobot
-+wclrtoeol
-+wcolor_set
-+wcursyncup
-+wdelch
-+wdeleteln
-+wechochar
-+wenclose
-+werase
-+wgetch
-+wgetch_events
-+wgetdelay
-+wgetnstr
-+wgetnstr_events
-+wgetparent
-+wgetscrreg
-+wgetstr
-+whline
-+winch
-+winchnstr
-+winchstr
-+winnstr
-+winsch
-+winsdelln
-+winsertln
-+winsnstr
-+winsstr
-+winstr
-+wmouse_trafo
-+wmove
-+wnoutrefresh
-+wprintw
-+wredrawln
-+wrefresh
-+wresize
-+wscanw
-+wscrl
-+wsetscrreg
-+wstandend
-+wstandout
-+wsyncdown
-+wsyncup
-+wtimeout
-+wtouchln
-+wvline
-Index: package/ncursest.map
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/ncursest.map 2014-12-06 22:59:10.000000000 +0000
-@@ -0,0 +1,1086 @@
-+# $Id: ncursest.map,v 1.16 2014/12/06 22:59:10 tom Exp $
-+# script for shared library symbol-versioning using ld
-+#
-+# This file was generated by ncu-mapsyms
-+# Configure options (merged 7 builds):
-+# 'CFLAGS=-O'
-+# --disable-echo
-+# --disable-getcap
-+# --disable-leaks
-+# --disable-root-environ
-+# --disable-termcap
-+# --enable-getcap
-+# --enable-getcap-cache
-+# --enable-hard-tabs
-+# --enable-interop
-+# --enable-reentrant
-+# --enable-rpath
-+# --enable-sp-funcs
-+# --enable-termcap
-+# --enable-warnings
-+# --enable-wgetch-events
-+# --verbose
-+# --with-pthread
-+# --with-shared
-+# --with-termlib
-+# --with-ticlib
-+# --with-trace
-+# --with-warnings
-+# --without-ada
-+# --without-debug
-+# --without-normal
-+#
-+
-+NCURSES_TIC_5.0.19991023 {
-+ global:
-+ _nc_capcmp;
-+ _nc_check_termtype;
-+ _nc_entry_match;
-+ _nc_find_type_entry;
-+ _nc_get_table;
-+ _nc_infotocap;
-+ _nc_read_entry_source;
-+ _nc_reset_input;
-+ _nc_resolve_uses;
-+ _nc_set_writedir;
-+ _nc_syntax;
-+ _nc_tic_expand;
-+ _nc_tic_written;
-+ _nc_trans_string;
-+ _nc_write_entry;
-+ local:
-+ _nc_captoinfo;
-+ _nc_comment_end;
-+ _nc_comment_start;
-+ _nc_copy_entry;
-+ _nc_curr_file_pos;
-+ _nc_curr_token;
-+ _nc_get_token;
-+ _nc_init_entry;
-+ _nc_merge_entry;
-+ _nc_panic_mode;
-+ _nc_parse_entry;
-+ _nc_push_token;
-+ _nc_save_str;
-+ _nc_start_line;
-+ _nc_wrap_entry;
-+};
-+
-+NCURSES_TIC_5.1.20000708 {
-+ global:
-+ _nc_disable_period;
-+} NCURSES_TIC_5.0.19991023;
-+
-+NCURSES_TIC_5.5.20051010 {
-+ global:
-+ _nc_alloc_entry_leaks;
-+ _nc_captoinfo_leaks;
-+ _nc_check_termtype2;
-+ _nc_comp_scan_leaks;
-+ _nc_resolve_uses2;
-+} NCURSES_TIC_5.1.20000708;
-+
-+NCURSES_TIC_5.7.20081102 {
-+ global:
-+ _nc_free_tic;
-+ _nc_get_alias_table;
-+ local:
-+ _nc_comp_captab_leaks;
-+ _nc_leaks_tic;
-+} NCURSES_TIC_5.5.20051010;
-+
-+NCURSES_TIC_5.9.current {
-+ global:
-+ _nc_strict_bsd;
-+} NCURSES_TIC_5.7.20081102;
-+
-+NCURSES_TINFO_5.0.19991023 {
-+ global:
-+ BC;
-+ PC;
-+ SP;
-+ UP;
-+ _nc_access;
-+ _nc_add_to_try;
-+ _nc_copy_termtype;
-+ _nc_curr_col;
-+ _nc_curr_line;
-+ _nc_doalloc;
-+ _nc_err_abort;
-+ _nc_fallback;
-+ _nc_find_entry;
-+ _nc_first_name;
-+ _nc_free_entries;
-+ _nc_free_termtype;
-+ _nc_free_tparm;
-+ _nc_get_hash_table;
-+ _nc_get_tty_mode;
-+ _nc_get_type;
-+ _nc_getenv_num;
-+ _nc_head;
-+ _nc_home_terminfo;
-+ _nc_init_acs;
-+ _nc_keep_tic_dir;
-+ _nc_keypad;
-+ _nc_name_match;
-+ _nc_outch;
-+ _nc_read_entry;
-+ _nc_read_file_entry;
-+ _nc_screen_chain;
-+ _nc_set_buffer;
-+ _nc_set_source;
-+ _nc_set_tty_mode;
-+ _nc_set_type;
-+ _nc_suppress_warnings;
-+ _nc_syserr_abort;
-+ _nc_tail;
-+ _nc_tic_dir;
-+ _nc_timed_wait;
-+ _nc_trace_buf;
-+ _nc_tracing;
-+ _nc_update_screensize;
-+ _nc_visbuf;
-+ _nc_visbuf2;
-+ _nc_warning;
-+ _tracechar;
-+ baudrate;
-+ cbreak;
-+ curs_set;
-+ curses_version;
-+ def_prog_mode;
-+ def_shell_mode;
-+ define_key;
-+ del_curterm;
-+ delay_output;
-+ erasechar;
-+ flushinp;
-+ halfdelay;
-+ has_ic;
-+ has_il;
-+ has_key;
-+ idcok;
-+ idlok;
-+ intrflush;
-+ keybound;
-+ keyname;
-+ keyok;
-+ keypad;
-+ killchar;
-+ longname;
-+ meta;
-+ napms;
-+ nocbreak;
-+ nodelay;
-+ noqiflush;
-+ noraw;
-+ notimeout;
-+ ospeed;
-+ putp;
-+ qiflush;
-+ raw;
-+ reset_prog_mode;
-+ reset_shell_mode;
-+ resetty;
-+ savetty;
-+ set_curterm;
-+ setupterm;
-+ termname;
-+ tgetent;
-+ tgetflag;
-+ tgetnum;
-+ tgetstr;
-+ tgoto;
-+ tigetflag;
-+ tigetnum;
-+ tigetstr;
-+ tparm;
-+ tputs;
-+ trace;
-+ typeahead;
-+ unctrl;
-+ use_env;
-+ wtimeout;
-+ local:
-+ _nc_baudrate;
-+ _nc_expand_try;
-+ _nc_init_keytry;
-+ _nc_nulls_sent;
-+ _nc_ospeed;
-+ _nc_read_termcap;
-+ _nc_read_termcap_entry;
-+ _nc_remove_key;
-+ _nc_remove_string;
-+ _nc_trace_tries;
-+ _nc_tracebits;
-+};
-+
-+NCURSES_TINFO_5.1.20000708 {
-+ global:
-+ _nc_align_termtype;
-+ _nc_flush;
-+ _nc_tinfo_fkeys;
-+ _nc_user_definable;
-+ use_extended_names;
-+} NCURSES_TINFO_5.0.19991023;
-+
-+NCURSES_TINFO_5.2.20001021 {
-+ global:
-+ _nc_basename;
-+ _nc_env_access;
-+ _nc_safe_strcat;
-+ _nc_safe_strcpy;
-+ _nc_str_copy;
-+ _nc_str_init;
-+ _nc_str_null;
-+} NCURSES_TINFO_5.1.20000708;
-+
-+NCURSES_TINFO_5.3.20021019 {
-+ global:
-+ _nc_rootname;
-+ _nc_tparm_err;
-+ _nc_visbufn;
-+} NCURSES_TINFO_5.2.20001021;
-+
-+NCURSES_TINFO_5.4.20040208 {
-+ global:
-+ _nc_get_locale;
-+ _nc_locale_breaks_acs;
-+ _nc_pathlast;
-+ _nc_retrace_attr_t;
-+ _nc_retrace_bool;
-+ _nc_retrace_chtype;
-+ _nc_retrace_int;
-+ _nc_retrace_ptr;
-+ _nc_retrace_sp;
-+ _nc_retrace_unsigned;
-+ _nc_retrace_win;
-+ _nc_tparm_analyze;
-+ _nc_trace_bufcat;
-+ _nc_unicode_locale;
-+ _traceattr;
-+ _traceattr2;
-+ _tracechtype;
-+ _tracechtype2;
-+ _tracef;
-+ key_defined;
-+ local:
-+ _nc_altcharset_name;
-+ _nc_trace_ttymode;
-+} NCURSES_TINFO_5.3.20021019;
-+
-+NCURSES_TINFO_5.5.20051010 {
-+ global:
-+ _nc_get_source;
-+ _nc_retrace_cptr;
-+ _nc_retrace_cvoid_ptr;
-+ _nc_retrace_void_ptr;
-+ _nc_setupterm;
-+ _nc_trim_sgr0;
-+ local:
-+ _nc_delink_entry;
-+ _nc_free_entry;
-+} NCURSES_TINFO_5.4.20040208;
-+
-+NCURSES_TINFO_5.6.20061217 {
-+ global:
-+ _nc_eventlist_timeout;
-+ _nc_first_db;
-+ _nc_handle_sigwinch;
-+ _nc_is_abs_path;
-+ _nc_is_dir_path;
-+ _nc_is_file_path;
-+ _nc_keyname_leaks;
-+ _nc_last_db;
-+ _nc_next_db;
-+ _nc_tgetent_leaks;
-+ _nc_viscbuf;
-+ local:
-+ _nc_hashed_db;
-+ _nc_read_termtype;
-+ _nc_viscbuf2;
-+} NCURSES_TINFO_5.5.20051010;
-+
-+NCURSES_TINFO_5.7.20081102 {
-+ global:
-+ _nc_COLS;
-+ _nc_LINES;
-+ _nc_TABSIZE;
-+ _nc__nc_outchars;
-+ _nc_acs_map;
-+ _nc_boolcodes;
-+ _nc_boolfnames;
-+ _nc_boolnames;
-+ _nc_codes_leaks;
-+ _nc_count_outchars;
-+ _nc_cur_term;
-+ _nc_curscr;
-+ _nc_free_tinfo;
-+ _nc_get_screensize;
-+ _nc_globals;
-+ _nc_init_pthreads;
-+ _nc_leaks_tinfo;
-+ _nc_locked_tracef;
-+ _nc_mutex_lock;
-+ _nc_mutex_trylock;
-+ _nc_mutex_unlock;
-+ _nc_names_leaks;
-+ _nc_newscr;
-+ _nc_numcodes;
-+ _nc_numfnames;
-+ _nc_numnames;
-+ _nc_prescreen;
-+ _nc_ptr_Cols;
-+ _nc_ptr_Lines;
-+ _nc_screen_of;
-+ _nc_set_no_padding;
-+ _nc_set_tputs_trace;
-+ _nc_stdscr;
-+ _nc_strcodes;
-+ _nc_strfnames;
-+ _nc_strnames;
-+ _nc_tracechar;
-+ _nc_use_tracef;
-+ set_tabsize;
-+ local:
-+ _nc__nc_tputs_trace;
-+ _nc_keyname;
-+ _nc_mutex_init;
-+ _nc_ttytype;
-+ _nc_unctrl;
-+} NCURSES_TINFO_5.6.20061217;
-+
-+NCURSES_TINFO_5.8.20110226 {
-+ global:
-+ _nc_flush_sp;
-+ _nc_get_tty_mode_sp;
-+ _nc_init_acs_sp;
-+ _nc_outc_wrapper;
-+ _nc_outch_sp;
-+ _nc_putp;
-+ _nc_putp_flush;
-+ _nc_putp_flush_sp;
-+ _nc_putp_sp;
-+ _nc_retrace_int_attr_t;
-+ _nc_set_buffer_sp;
-+ _nc_set_tty_mode_sp;
-+ baudrate_sp;
-+ cbreak_sp;
-+ curs_set_sp;
-+ def_prog_mode_sp;
-+ def_shell_mode_sp;
-+ define_key_sp;
-+ del_curterm_sp;
-+ delay_output_sp;
-+ erasechar_sp;
-+ flushinp_sp;
-+ halfdelay_sp;
-+ has_ic_sp;
-+ has_il_sp;
-+ has_key_sp;
-+ intrflush_sp;
-+ key_defined_sp;
-+ keybound_sp;
-+ keyname_sp;
-+ keyok_sp;
-+ killchar_sp;
-+ longname_sp;
-+ napms_sp;
-+ new_prescr;
-+ nocbreak_sp;
-+ noqiflush_sp;
-+ noraw_sp;
-+ putp_sp;
-+ qiflush_sp;
-+ raw_sp;
-+ reset_prog_mode_sp;
-+ reset_shell_mode_sp;
-+ resetty_sp;
-+ savetty_sp;
-+ set_curterm_sp;
-+ set_tabsize_sp;
-+ termname_sp;
-+ tgetent_sp;
-+ tgetflag_sp;
-+ tgetnum_sp;
-+ tgetstr_sp;
-+ tigetflag_sp;
-+ tigetnum_sp;
-+ tigetstr_sp;
-+ tiparm;
-+ tputs_sp;
-+ typeahead_sp;
-+ unctrl_sp;
-+ use_env_sp;
-+ local:
-+ _nc_get_cur_term;
-+ _nc_get_cur_term_sp;
-+ _nc_get_hash_info;
-+ _nc_ptr_Tabsize;
-+ _nc_retrace_char;
-+ _nc_setup_tinfo;
-+ _nc_tinfo_cmdch;
-+} NCURSES_TINFO_5.7.20081102;
-+
-+NCURSES_TINFO_5.9.current {
-+ global:
-+ _nc_init_termtype;
-+ _nc_putchar;
-+ _nc_putchar_sp;
-+ use_tioctl;
-+ use_tioctl_sp;
-+ local:
-+ _nc_comp_error_leaks;
-+ _nc_db_iterator_leaks;
-+ _nc_setenv_num;
-+} NCURSES_TINFO_5.8.20110226;
-+
-+NCURSEST_5.7.20081102 {
-+ global:
-+ COLOR_PAIR;
-+ PAIR_NUMBER;
-+ TYPE_ALNUM;
-+ TYPE_ALPHA;
-+ TYPE_ENUM;
-+ TYPE_INTEGER;
-+ TYPE_IPV4;
-+ TYPE_NUMERIC;
-+ TYPE_REGEXP;
-+ _nc_COLORS;
-+ _nc_COLOR_PAIRS;
-+ _nc_ESCDELAY;
-+ _nc_free_and_exit;
-+ _nc_optimize_enable;
-+ _nc_panelhook;
-+ _nc_ripoffline;
-+ addch;
-+ addchnstr;
-+ addchstr;
-+ addnstr;
-+ addstr;
-+ assume_default_colors;
-+ attr_get;
-+ attr_off;
-+ attr_on;
-+ attr_set;
-+ attroff;
-+ attron;
-+ attrset;
-+ beep;
-+ bkgd;
-+ bkgdset;
-+ border;
-+ bottom_panel;
-+ box;
-+ can_change_color;
-+ chgat;
-+ clear;
-+ clearok;
-+ clrtobot;
-+ clrtoeol;
-+ color_content;
-+ color_set;
-+ copywin;
-+ current_field;
-+ current_item;
-+ data_ahead;
-+ data_behind;
-+ del_panel;
-+ delch;
-+ deleteln;
-+ delscreen;
-+ delwin;
-+ derwin;
-+ doupdate;
-+ dup_field;
-+ dupwin;
-+ dynamic_field_info;
-+ echo;
-+ echochar;
-+ endwin;
-+ erase;
-+ field_arg;
-+ field_back;
-+ field_buffer;
-+ field_count;
-+ field_fore;
-+ field_index;
-+ field_info;
-+ field_init;
-+ field_just;
-+ field_opts;
-+ field_opts_off;
-+ field_opts_on;
-+ field_pad;
-+ field_status;
-+ field_term;
-+ field_type;
-+ field_userptr;
-+ filter;
-+ flash;
-+ form_driver;
-+ form_fields;
-+ form_init;
-+ form_opts;
-+ form_opts_off;
-+ form_opts_on;
-+ form_page;
-+ form_request_by_name;
-+ form_request_name;
-+ form_sub;
-+ form_term;
-+ form_userptr;
-+ form_win;
-+ free_field;
-+ free_fieldtype;
-+ free_form;
-+ free_item;
-+ free_menu;
-+ getattrs;
-+ getbegx;
-+ getbegy;
-+ getbkgd;
-+ getch;
-+ getcurx;
-+ getcury;
-+ getmaxx;
-+ getmaxy;
-+ getmouse;
-+ getnstr;
-+ getparx;
-+ getpary;
-+ getstr;
-+ getwin;
-+ has_colors;
-+ hide_panel;
-+ hline;
-+ immedok;
-+ inch;
-+ inchnstr;
-+ inchstr;
-+ init_color;
-+ init_pair;
-+ initscr;
-+ innstr;
-+ insch;
-+ insdelln;
-+ insertln;
-+ insnstr;
-+ insstr;
-+ instr;
-+ is_cleared;
-+ is_idcok;
-+ is_idlok;
-+ is_immedok;
-+ is_keypad;
-+ is_leaveok;
-+ is_linetouched;
-+ is_nodelay;
-+ is_notimeout;
-+ is_scrollok;
-+ is_syncok;
-+ is_term_resized;
-+ is_wintouched;
-+ isendwin;
-+ item_count;
-+ item_description;
-+ item_index;
-+ item_init;
-+ item_name;
-+ item_opts;
-+ item_opts_off;
-+ item_opts_on;
-+ item_term;
-+ item_userptr;
-+ item_value;
-+ item_visible;
-+ leaveok;
-+ link_field;
-+ link_fieldtype;
-+ mcprint;
-+ menu_back;
-+ menu_driver;
-+ menu_fore;
-+ menu_format;
-+ menu_grey;
-+ menu_init;
-+ menu_items;
-+ menu_mark;
-+ menu_opts;
-+ menu_opts_off;
-+ menu_opts_on;
-+ menu_pad;
-+ menu_pattern;
-+ menu_request_by_name;
-+ menu_request_name;
-+ menu_spacing;
-+ menu_sub;
-+ menu_term;
-+ menu_userptr;
-+ menu_win;
-+ mouse_trafo;
-+ mouseinterval;
-+ mousemask;
-+ move;
-+ move_field;
-+ move_panel;
-+ mvaddch;
-+ mvaddchnstr;
-+ mvaddchstr;
-+ mvaddnstr;
-+ mvaddstr;
-+ mvchgat;
-+ mvcur;
-+ mvdelch;
-+ mvderwin;
-+ mvgetch;
-+ mvgetnstr;
-+ mvgetstr;
-+ mvhline;
-+ mvinch;
-+ mvinchnstr;
-+ mvinchstr;
-+ mvinnstr;
-+ mvinsch;
-+ mvinsnstr;
-+ mvinsstr;
-+ mvinstr;
-+ mvprintw;
-+ mvscanw;
-+ mvvline;
-+ mvwaddch;
-+ mvwaddchnstr;
-+ mvwaddchstr;
-+ mvwaddnstr;
-+ mvwaddstr;
-+ mvwchgat;
-+ mvwdelch;
-+ mvwgetch;
-+ mvwgetnstr;
-+ mvwgetstr;
-+ mvwhline;
-+ mvwin;
-+ mvwinch;
-+ mvwinchnstr;
-+ mvwinchstr;
-+ mvwinnstr;
-+ mvwinsch;
-+ mvwinsnstr;
-+ mvwinsstr;
-+ mvwinstr;
-+ mvwprintw;
-+ mvwscanw;
-+ mvwvline;
-+ new_field;
-+ new_fieldtype;
-+ new_form;
-+ new_item;
-+ new_menu;
-+ new_page;
-+ new_panel;
-+ newpad;
-+ newterm;
-+ newwin;
-+ nl;
-+ noecho;
-+ nofilter;
-+ nonl;
-+ overlay;
-+ overwrite;
-+ pair_content;
-+ panel_above;
-+ panel_below;
-+ panel_hidden;
-+ panel_userptr;
-+ panel_window;
-+ pechochar;
-+ pnoutrefresh;
-+ pos_form_cursor;
-+ pos_menu_cursor;
-+ post_form;
-+ post_menu;
-+ prefresh;
-+ printw;
-+ putwin;
-+ redrawwin;
-+ refresh;
-+ replace_panel;
-+ resize_term;
-+ resizeterm;
-+ restartterm;
-+ ripoffline;
-+ scale_form;
-+ scale_menu;
-+ scanw;
-+ scr_dump;
-+ scr_init;
-+ scr_restore;
-+ scr_set;
-+ scrl;
-+ scroll;
-+ scrollok;
-+ set_current_field;
-+ set_current_item;
-+ set_escdelay;
-+ set_field_back;
-+ set_field_buffer;
-+ set_field_fore;
-+ set_field_init;
-+ set_field_just;
-+ set_field_opts;
-+ set_field_pad;
-+ set_field_status;
-+ set_field_term;
-+ set_field_type;
-+ set_field_userptr;
-+ set_fieldtype_arg;
-+ set_fieldtype_choice;
-+ set_form_fields;
-+ set_form_init;
-+ set_form_opts;
-+ set_form_page;
-+ set_form_sub;
-+ set_form_term;
-+ set_form_userptr;
-+ set_form_win;
-+ set_item_init;
-+ set_item_opts;
-+ set_item_term;
-+ set_item_userptr;
-+ set_item_value;
-+ set_max_field;
-+ set_menu_back;
-+ set_menu_fore;
-+ set_menu_format;
-+ set_menu_grey;
-+ set_menu_init;
-+ set_menu_items;
-+ set_menu_mark;
-+ set_menu_opts;
-+ set_menu_pad;
-+ set_menu_pattern;
-+ set_menu_spacing;
-+ set_menu_sub;
-+ set_menu_term;
-+ set_menu_userptr;
-+ set_menu_win;
-+ set_new_page;
-+ set_panel_userptr;
-+ set_term;
-+ set_top_row;
-+ setscrreg;
-+ show_panel;
-+ slk_attr;
-+ slk_attr_set;
-+ slk_attroff;
-+ slk_attron;
-+ slk_attrset;
-+ slk_clear;
-+ slk_color;
-+ slk_init;
-+ slk_label;
-+ slk_noutrefresh;
-+ slk_refresh;
-+ slk_restore;
-+ slk_set;
-+ slk_touch;
-+ standend;
-+ standout;
-+ start_color;
-+ subpad;
-+ subwin;
-+ syncok;
-+ termattrs;
-+ timeout;
-+ top_panel;
-+ top_row;
-+ touchline;
-+ touchwin;
-+ ungetch;
-+ ungetmouse;
-+ unpost_form;
-+ unpost_menu;
-+ untouchwin;
-+ update_panels;
-+ use_default_colors;
-+ use_legacy_coding;
-+ use_screen;
-+ use_window;
-+ vidattr;
-+ vidputs;
-+ vline;
-+ vw_printw;
-+ vw_scanw;
-+ vwprintw;
-+ vwscanw;
-+ waddch;
-+ waddchnstr;
-+ waddchstr;
-+ waddnstr;
-+ waddstr;
-+ wattr_get;
-+ wattr_off;
-+ wattr_on;
-+ wattr_set;
-+ wattroff;
-+ wattron;
-+ wattrset;
-+ wbkgd;
-+ wbkgdset;
-+ wborder;
-+ wchgat;
-+ wclear;
-+ wclrtobot;
-+ wclrtoeol;
-+ wcolor_set;
-+ wcursyncup;
-+ wdelch;
-+ wdeleteln;
-+ wechochar;
-+ wenclose;
-+ werase;
-+ wgetch;
-+ wgetch_events;
-+ wgetnstr;
-+ wgetnstr_events;
-+ wgetparent;
-+ wgetscrreg;
-+ wgetstr;
-+ whline;
-+ winch;
-+ winchnstr;
-+ winchstr;
-+ winnstr;
-+ winsch;
-+ winsdelln;
-+ winsertln;
-+ winsnstr;
-+ winsstr;
-+ winstr;
-+ wmouse_trafo;
-+ wmove;
-+ wnoutrefresh;
-+ wprintw;
-+ wredrawln;
-+ wrefresh;
-+ wresize;
-+ wscanw;
-+ wscrl;
-+ wsetscrreg;
-+ wstandend;
-+ wstandout;
-+ wsyncdown;
-+ wsyncup;
-+ wtouchln;
-+ wvline;
-+ local:
-+ _nc_Calculate_Item_Length_and_Width;
-+ _nc_Calculate_Text_Width;
-+ _nc_Connect_Items;
-+ _nc_Copy_Argument;
-+ _nc_Copy_Type;
-+ _nc_Default_Field;
-+ _nc_Default_FieldType;
-+ _nc_Default_Form;
-+ _nc_Default_Item;
-+ _nc_Default_Menu;
-+ _nc_Disconnect_Items;
-+ _nc_Draw_Menu;
-+ _nc_First_Active_Field;
-+ _nc_Free_Argument;
-+ _nc_Free_Type;
-+ _nc_Internal_Validation;
-+ _nc_Link_Items;
-+ _nc_Make_Argument;
-+ _nc_Match_Next_Character_In_Item_Name;
-+ _nc_New_TopRow_and_CurrentItem;
-+ _nc_Position_Form_Cursor;
-+ _nc_Post_Item;
-+ _nc_Refresh_Current_Field;
-+ _nc_Set_Current_Field;
-+ _nc_Set_Form_Page;
-+ _nc_Show_Menu;
-+ _nc_Synchronize_Attributes;
-+ _nc_Synchronize_Options;
-+ _nc_Touchline;
-+ _nc_Touchpan;
-+ _nc_Wnoutrefresh;
-+ _nc_dPanel;
-+ _nc_dStack;
-+ _nc_do_color;
-+ _nc_expanded;
-+ _nc_fifo_dump;
-+ _nc_freeall;
-+ _nc_freewin;
-+ _nc_has_mouse;
-+ _nc_hash_map;
-+ _nc_insert_ch;
-+ _nc_linedump;
-+ _nc_make_oldhash;
-+ _nc_makenew;
-+ _nc_memmove;
-+ _nc_menu_cursor_pos;
-+ _nc_msec_cost;
-+ _nc_mvcur_init;
-+ _nc_mvcur_resume;
-+ _nc_mvcur_wrap;
-+ _nc_my_visbuf;
-+ _nc_oldnums;
-+ _nc_printf_string;
-+ _nc_render;
-+ _nc_reset_colors;
-+ _nc_retrace_field;
-+ _nc_retrace_field_ptr;
-+ _nc_retrace_field_type;
-+ _nc_retrace_form;
-+ _nc_retrace_form_hook;
-+ _nc_retrace_item;
-+ _nc_retrace_item_opts;
-+ _nc_retrace_item_ptr;
-+ _nc_retrace_menu;
-+ _nc_retrace_menu_hook;
-+ _nc_retrace_menu_opts;
-+ _nc_retrace_panel;
-+ _nc_screen_init;
-+ _nc_screen_resume;
-+ _nc_screen_wrap;
-+ _nc_scroll_oldhash;
-+ _nc_scroll_optimize;
-+ _nc_scroll_window;
-+ _nc_scrolln;
-+ _nc_setupscreen;
-+ _nc_signal_handler;
-+ _nc_slk_initialize;
-+ _nc_synchook;
-+ _nc_trace_xnames;
-+ _nc_tracemouse;
-+ _nc_ungetch;
-+ _nc_varargs;
-+ _nc_vsscanf;
-+ _nc_waddch_nosync;
-+ _nc_wgetch;
-+ _tracedump;
-+ _tracemouse;
-+};
-+
-+NCURSEST_5.8.20110226 {
-+ global:
-+ _nc_panelhook_sp;
-+ assume_default_colors_sp;
-+ beep_sp;
-+ can_change_color_sp;
-+ ceiling_panel;
-+ color_content_sp;
-+ doupdate_sp;
-+ echo_sp;
-+ endwin_sp;
-+ filter_sp;
-+ flash_sp;
-+ get_escdelay;
-+ get_escdelay_sp;
-+ getmouse_sp;
-+ getwin_sp;
-+ ground_panel;
-+ has_colors_sp;
-+ has_mouse;
-+ has_mouse_sp;
-+ init_color_sp;
-+ init_pair_sp;
-+ is_pad;
-+ is_subwin;
-+ is_term_resized_sp;
-+ isendwin_sp;
-+ mcprint_sp;
-+ mouseinterval_sp;
-+ mousemask_sp;
-+ mvcur_sp;
-+ new_form_sp;
-+ new_menu_sp;
-+ newpad_sp;
-+ newterm_sp;
-+ newwin_sp;
-+ nl_sp;
-+ noecho_sp;
-+ nofilter_sp;
-+ nonl_sp;
-+ pair_content_sp;
-+ resize_term_sp;
-+ resizeterm_sp;
-+ restartterm_sp;
-+ ripoffline_sp;
-+ scr_init_sp;
-+ scr_restore_sp;
-+ scr_set_sp;
-+ set_escdelay_sp;
-+ slk_attr_set_sp;
-+ slk_attr_sp;
-+ slk_attroff_sp;
-+ slk_attron_sp;
-+ slk_attrset_sp;
-+ slk_clear_sp;
-+ slk_color_sp;
-+ slk_init_sp;
-+ slk_label_sp;
-+ slk_noutrefresh_sp;
-+ slk_refresh_sp;
-+ slk_restore_sp;
-+ slk_set_sp;
-+ slk_touch_sp;
-+ start_color_sp;
-+ termattrs_sp;
-+ ungetch_sp;
-+ ungetmouse_sp;
-+ update_panels_sp;
-+ use_default_colors_sp;
-+ use_legacy_coding_sp;
-+ vidattr_sp;
-+ vidputs_sp;
-+ local:
-+ _nc_TYPE_ALNUM;
-+ _nc_TYPE_ALPHA;
-+ _nc_TYPE_ENUM;
-+ _nc_TYPE_INTEGER;
-+ _nc_TYPE_IPV4;
-+ _nc_TYPE_NUMERIC;
-+ _nc_TYPE_REGEXP;
-+ _nc_curscr_of;
-+ _nc_do_color_sp;
-+ _nc_form_cursor;
-+ _nc_format_slks;
-+ _nc_free_and_exit_sp;
-+ _nc_freeall_sp;
-+ _nc_fty_generic;
-+ _nc_generic_fieldtype;
-+ _nc_get_fieldbuffer;
-+ _nc_hash_map_sp;
-+ _nc_linedump_sp;
-+ _nc_make_oldhash_sp;
-+ _nc_makenew_sp;
-+ _nc_msec_cost_sp;
-+ _nc_mvcur_init_sp;
-+ _nc_mvcur_resume_sp;
-+ _nc_mvcur_wrap_sp;
-+ _nc_newscr_of;
-+ _nc_printf_string_sp;
-+ _nc_ptr_Escdelay;
-+ _nc_reset_colors_sp;
-+ _nc_retrace_mmask_t;
-+ _nc_ripoffline_sp;
-+ _nc_screen_init_sp;
-+ _nc_screen_resume_sp;
-+ _nc_screen_wrap_sp;
-+ _nc_scroll_oldhash_sp;
-+ _nc_scroll_optimize_sp;
-+ _nc_scrolln_sp;
-+ _nc_set_generic_fieldtype;
-+ _nc_setupscreen_sp;
-+ _nc_stdscr_of;
-+} NCURSEST_5.7.20081102;
-+
-+NCURSEST_5.9.current {
-+ global:
-+ wgetdelay;
-+ local:
-+ _nc_mvcur;
-+ _nc_mvcur_sp;
-+ _nc_trace_mmask_t;
-+} NCURSEST_5.8.20110226;
-Index: package/ncursest.sym
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/ncursest.sym 2014-11-28 02:54:53.000000000 +0000
-@@ -0,0 +1,1001 @@
-+# $Id: ncursest.sym,v 1.13 2014/11/28 02:54:53 tom Exp $
-+# script for shared library symbol-visibility using libtool
-+#
-+# This file was generated by ncu-mapsyms
-+# Configure options (merged 7 builds):
-+# 'CFLAGS=-O'
-+# --disable-echo
-+# --disable-getcap
-+# --disable-leaks
-+# --disable-root-environ
-+# --disable-termcap
-+# --enable-getcap
-+# --enable-getcap-cache
-+# --enable-hard-tabs
-+# --enable-interop
-+# --enable-reentrant
-+# --enable-rpath
-+# --enable-sp-funcs
-+# --enable-termcap
-+# --enable-warnings
-+# --enable-wgetch-events
-+# --verbose
-+# --with-pthread
-+# --with-shared
-+# --with-termlib
-+# --with-ticlib
-+# --with-trace
-+# --with-warnings
-+# --without-ada
-+# --without-debug
-+# --without-normal
-+BC
-+COLOR_PAIR
-+PAIR_NUMBER
-+PC
-+SP
-+TYPE_ALNUM
-+TYPE_ALPHA
-+TYPE_ENUM
-+TYPE_INTEGER
-+TYPE_IPV4
-+TYPE_NUMERIC
-+TYPE_REGEXP
-+UP
-+_nc_COLORS
-+_nc_COLOR_PAIRS
-+_nc_COLS
-+_nc_Calculate_Item_Length_and_Width
-+_nc_Calculate_Text_Width
-+_nc_Connect_Items
-+_nc_Copy_Argument
-+_nc_Copy_Type
-+_nc_Default_Field
-+_nc_Default_FieldType
-+_nc_Default_Form
-+_nc_Default_Item
-+_nc_Default_Menu
-+_nc_Disconnect_Items
-+_nc_Draw_Menu
-+_nc_ESCDELAY
-+_nc_First_Active_Field
-+_nc_Free_Argument
-+_nc_Free_Type
-+_nc_Internal_Validation
-+_nc_LINES
-+_nc_Link_Items
-+_nc_Make_Argument
-+_nc_Match_Next_Character_In_Item_Name
-+_nc_New_TopRow_and_CurrentItem
-+_nc_Position_Form_Cursor
-+_nc_Post_Item
-+_nc_Refresh_Current_Field
-+_nc_Set_Current_Field
-+_nc_Set_Form_Page
-+_nc_Show_Menu
-+_nc_Synchronize_Attributes
-+_nc_Synchronize_Options
-+_nc_TABSIZE
-+_nc_TYPE_ALNUM
-+_nc_TYPE_ALPHA
-+_nc_TYPE_ENUM
-+_nc_TYPE_INTEGER
-+_nc_TYPE_IPV4
-+_nc_TYPE_NUMERIC
-+_nc_TYPE_REGEXP
-+_nc_Touchline
-+_nc_Touchpan
-+_nc_Wnoutrefresh
-+_nc__nc_outchars
-+_nc__nc_tputs_trace
-+_nc_access
-+_nc_acs_map
-+_nc_add_to_try
-+_nc_align_termtype
-+_nc_alloc_entry_leaks
-+_nc_altcharset_name
-+_nc_basename
-+_nc_baudrate
-+_nc_boolcodes
-+_nc_boolfnames
-+_nc_boolnames
-+_nc_capcmp
-+_nc_captoinfo
-+_nc_captoinfo_leaks
-+_nc_check_termtype
-+_nc_check_termtype2
-+_nc_codes_leaks
-+_nc_comment_end
-+_nc_comment_start
-+_nc_comp_captab_leaks
-+_nc_comp_error_leaks
-+_nc_comp_scan_leaks
-+_nc_copy_entry
-+_nc_copy_termtype
-+_nc_count_outchars
-+_nc_cur_term
-+_nc_curr_col
-+_nc_curr_file_pos
-+_nc_curr_line
-+_nc_curr_token
-+_nc_curscr
-+_nc_curscr_of
-+_nc_dPanel
-+_nc_dStack
-+_nc_db_iterator_leaks
-+_nc_delink_entry
-+_nc_disable_period
-+_nc_do_color
-+_nc_do_color_sp
-+_nc_doalloc
-+_nc_entry_match
-+_nc_env_access
-+_nc_err_abort
-+_nc_eventlist_timeout
-+_nc_expand_try
-+_nc_expanded
-+_nc_fallback
-+_nc_fifo_dump
-+_nc_find_entry
-+_nc_find_type_entry
-+_nc_first_db
-+_nc_first_name
-+_nc_flush
-+_nc_flush_sp
-+_nc_form_cursor
-+_nc_format_slks
-+_nc_free_and_exit
-+_nc_free_and_exit_sp
-+_nc_free_entries
-+_nc_free_entry
-+_nc_free_termtype
-+_nc_free_tic
-+_nc_free_tinfo
-+_nc_free_tparm
-+_nc_freeall
-+_nc_freeall_sp
-+_nc_freewin
-+_nc_fty_generic
-+_nc_generic_fieldtype
-+_nc_get_alias_table
-+_nc_get_cur_term
-+_nc_get_cur_term_sp
-+_nc_get_fieldbuffer
-+_nc_get_hash_info
-+_nc_get_hash_table
-+_nc_get_locale
-+_nc_get_screensize
-+_nc_get_source
-+_nc_get_table
-+_nc_get_token
-+_nc_get_tty_mode
-+_nc_get_tty_mode_sp
-+_nc_get_type
-+_nc_getenv_num
-+_nc_globals
-+_nc_handle_sigwinch
-+_nc_has_mouse
-+_nc_hash_map
-+_nc_hash_map_sp
-+_nc_hashed_db
-+_nc_head
-+_nc_home_terminfo
-+_nc_infotocap
-+_nc_init_acs
-+_nc_init_acs_sp
-+_nc_init_entry
-+_nc_init_keytry
-+_nc_init_pthreads
-+_nc_init_termtype
-+_nc_insert_ch
-+_nc_is_abs_path
-+_nc_is_dir_path
-+_nc_is_file_path
-+_nc_keep_tic_dir
-+_nc_keyname
-+_nc_keyname_leaks
-+_nc_keypad
-+_nc_last_db
-+_nc_leaks_tic
-+_nc_leaks_tinfo
-+_nc_linedump
-+_nc_linedump_sp
-+_nc_locale_breaks_acs
-+_nc_locked_tracef
-+_nc_make_oldhash
-+_nc_make_oldhash_sp
-+_nc_makenew
-+_nc_makenew_sp
-+_nc_memmove
-+_nc_menu_cursor_pos
-+_nc_merge_entry
-+_nc_msec_cost
-+_nc_msec_cost_sp
-+_nc_mutex_init
-+_nc_mutex_lock
-+_nc_mutex_trylock
-+_nc_mutex_unlock
-+_nc_mvcur
-+_nc_mvcur_init
-+_nc_mvcur_init_sp
-+_nc_mvcur_resume
-+_nc_mvcur_resume_sp
-+_nc_mvcur_sp
-+_nc_mvcur_wrap
-+_nc_mvcur_wrap_sp
-+_nc_my_visbuf
-+_nc_name_match
-+_nc_names_leaks
-+_nc_newscr
-+_nc_newscr_of
-+_nc_next_db
-+_nc_nulls_sent
-+_nc_numcodes
-+_nc_numfnames
-+_nc_numnames
-+_nc_oldnums
-+_nc_optimize_enable
-+_nc_ospeed
-+_nc_outc_wrapper
-+_nc_outch
-+_nc_outch_sp
-+_nc_panelhook
-+_nc_panelhook_sp
-+_nc_panic_mode
-+_nc_parse_entry
-+_nc_pathlast
-+_nc_prescreen
-+_nc_printf_string
-+_nc_printf_string_sp
-+_nc_ptr_Cols
-+_nc_ptr_Escdelay
-+_nc_ptr_Lines
-+_nc_ptr_Tabsize
-+_nc_push_token
-+_nc_putchar
-+_nc_putchar_sp
-+_nc_putp
-+_nc_putp_flush
-+_nc_putp_flush_sp
-+_nc_putp_sp
-+_nc_read_entry
-+_nc_read_entry_source
-+_nc_read_file_entry
-+_nc_read_termcap
-+_nc_read_termcap_entry
-+_nc_read_termtype
-+_nc_remove_key
-+_nc_remove_string
-+_nc_render
-+_nc_reset_colors
-+_nc_reset_colors_sp
-+_nc_reset_input
-+_nc_resolve_uses
-+_nc_resolve_uses2
-+_nc_retrace_attr_t
-+_nc_retrace_bool
-+_nc_retrace_char
-+_nc_retrace_chtype
-+_nc_retrace_cptr
-+_nc_retrace_cvoid_ptr
-+_nc_retrace_field
-+_nc_retrace_field_ptr
-+_nc_retrace_field_type
-+_nc_retrace_form
-+_nc_retrace_form_hook
-+_nc_retrace_int
-+_nc_retrace_int_attr_t
-+_nc_retrace_item
-+_nc_retrace_item_opts
-+_nc_retrace_item_ptr
-+_nc_retrace_menu
-+_nc_retrace_menu_hook
-+_nc_retrace_menu_opts
-+_nc_retrace_mmask_t
-+_nc_retrace_panel
-+_nc_retrace_ptr
-+_nc_retrace_sp
-+_nc_retrace_unsigned
-+_nc_retrace_void_ptr
-+_nc_retrace_win
-+_nc_ripoffline
-+_nc_ripoffline_sp
-+_nc_rootname
-+_nc_safe_strcat
-+_nc_safe_strcpy
-+_nc_save_str
-+_nc_screen_chain
-+_nc_screen_init
-+_nc_screen_init_sp
-+_nc_screen_of
-+_nc_screen_resume
-+_nc_screen_resume_sp
-+_nc_screen_wrap
-+_nc_screen_wrap_sp
-+_nc_scroll_oldhash
-+_nc_scroll_oldhash_sp
-+_nc_scroll_optimize
-+_nc_scroll_optimize_sp
-+_nc_scroll_window
-+_nc_scrolln
-+_nc_scrolln_sp
-+_nc_set_buffer
-+_nc_set_buffer_sp
-+_nc_set_generic_fieldtype
-+_nc_set_no_padding
-+_nc_set_source
-+_nc_set_tputs_trace
-+_nc_set_tty_mode
-+_nc_set_tty_mode_sp
-+_nc_set_type
-+_nc_set_writedir
-+_nc_setenv_num
-+_nc_setup_tinfo
-+_nc_setupscreen
-+_nc_setupscreen_sp
-+_nc_setupterm
-+_nc_signal_handler
-+_nc_slk_initialize
-+_nc_start_line
-+_nc_stdscr
-+_nc_stdscr_of
-+_nc_str_copy
-+_nc_str_init
-+_nc_str_null
-+_nc_strcodes
-+_nc_strfnames
-+_nc_strict_bsd
-+_nc_strnames
-+_nc_suppress_warnings
-+_nc_synchook
-+_nc_syntax
-+_nc_syserr_abort
-+_nc_tail
-+_nc_tgetent_leaks
-+_nc_tic_dir
-+_nc_tic_expand
-+_nc_tic_written
-+_nc_timed_wait
-+_nc_tinfo_cmdch
-+_nc_tinfo_fkeys
-+_nc_tparm_analyze
-+_nc_tparm_err
-+_nc_trace_buf
-+_nc_trace_bufcat
-+_nc_trace_mmask_t
-+_nc_trace_tries
-+_nc_trace_ttymode
-+_nc_trace_xnames
-+_nc_tracebits
-+_nc_tracechar
-+_nc_tracemouse
-+_nc_tracing
-+_nc_trans_string
-+_nc_trim_sgr0
-+_nc_ttytype
-+_nc_unctrl
-+_nc_ungetch
-+_nc_unicode_locale
-+_nc_update_screensize
-+_nc_use_tracef
-+_nc_user_definable
-+_nc_varargs
-+_nc_visbuf
-+_nc_visbuf2
-+_nc_visbufn
-+_nc_viscbuf
-+_nc_viscbuf2
-+_nc_vsscanf
-+_nc_waddch_nosync
-+_nc_warning
-+_nc_wgetch
-+_nc_wrap_entry
-+_nc_write_entry
-+_traceattr
-+_traceattr2
-+_tracechar
-+_tracechtype
-+_tracechtype2
-+_tracedump
-+_tracef
-+_tracemouse
-+addch
-+addchnstr
-+addchstr
-+addnstr
-+addstr
-+assume_default_colors
-+assume_default_colors_sp
-+attr_get
-+attr_off
-+attr_on
-+attr_set
-+attroff
-+attron
-+attrset
-+baudrate
-+baudrate_sp
-+beep
-+beep_sp
-+bkgd
-+bkgdset
-+border
-+bottom_panel
-+box
-+can_change_color
-+can_change_color_sp
-+cbreak
-+cbreak_sp
-+ceiling_panel
-+chgat
-+clear
-+clearok
-+clrtobot
-+clrtoeol
-+color_content
-+color_content_sp
-+color_set
-+copywin
-+current_field
-+current_item
-+curs_set
-+curs_set_sp
-+curses_version
-+data_ahead
-+data_behind
-+def_prog_mode
-+def_prog_mode_sp
-+def_shell_mode
-+def_shell_mode_sp
-+define_key
-+define_key_sp
-+del_curterm
-+del_curterm_sp
-+del_panel
-+delay_output
-+delay_output_sp
-+delch
-+deleteln
-+delscreen
-+delwin
-+derwin
-+doupdate
-+doupdate_sp
-+dup_field
-+dupwin
-+dynamic_field_info
-+echo
-+echo_sp
-+echochar
-+endwin
-+endwin_sp
-+erase
-+erasechar
-+erasechar_sp
-+field_arg
-+field_back
-+field_buffer
-+field_count
-+field_fore
-+field_index
-+field_info
-+field_init
-+field_just
-+field_opts
-+field_opts_off
-+field_opts_on
-+field_pad
-+field_status
-+field_term
-+field_type
-+field_userptr
-+filter
-+filter_sp
-+flash
-+flash_sp
-+flushinp
-+flushinp_sp
-+form_driver
-+form_fields
-+form_init
-+form_opts
-+form_opts_off
-+form_opts_on
-+form_page
-+form_request_by_name
-+form_request_name
-+form_sub
-+form_term
-+form_userptr
-+form_win
-+free_field
-+free_fieldtype
-+free_form
-+free_item
-+free_menu
-+get_escdelay
-+get_escdelay_sp
-+getattrs
-+getbegx
-+getbegy
-+getbkgd
-+getch
-+getcurx
-+getcury
-+getmaxx
-+getmaxy
-+getmouse
-+getmouse_sp
-+getnstr
-+getparx
-+getpary
-+getstr
-+getwin
-+getwin_sp
-+ground_panel
-+halfdelay
-+halfdelay_sp
-+has_colors
-+has_colors_sp
-+has_ic
-+has_ic_sp
-+has_il
-+has_il_sp
-+has_key
-+has_key_sp
-+has_mouse
-+has_mouse_sp
-+hide_panel
-+hline
-+idcok
-+idlok
-+immedok
-+inch
-+inchnstr
-+inchstr
-+init_color
-+init_color_sp
-+init_pair
-+init_pair_sp
-+initscr
-+innstr
-+insch
-+insdelln
-+insertln
-+insnstr
-+insstr
-+instr
-+intrflush
-+intrflush_sp
-+is_cleared
-+is_idcok
-+is_idlok
-+is_immedok
-+is_keypad
-+is_leaveok
-+is_linetouched
-+is_nodelay
-+is_notimeout
-+is_pad
-+is_scrollok
-+is_subwin
-+is_syncok
-+is_term_resized
-+is_term_resized_sp
-+is_wintouched
-+isendwin
-+isendwin_sp
-+item_count
-+item_description
-+item_index
-+item_init
-+item_name
-+item_opts
-+item_opts_off
-+item_opts_on
-+item_term
-+item_userptr
-+item_value
-+item_visible
-+key_defined
-+key_defined_sp
-+keybound
-+keybound_sp
-+keyname
-+keyname_sp
-+keyok
-+keyok_sp
-+keypad
-+killchar
-+killchar_sp
-+leaveok
-+link_field
-+link_fieldtype
-+longname
-+longname_sp
-+mcprint
-+mcprint_sp
-+menu_back
-+menu_driver
-+menu_fore
-+menu_format
-+menu_grey
-+menu_init
-+menu_items
-+menu_mark
-+menu_opts
-+menu_opts_off
-+menu_opts_on
-+menu_pad
-+menu_pattern
-+menu_request_by_name
-+menu_request_name
-+menu_spacing
-+menu_sub
-+menu_term
-+menu_userptr
-+menu_win
-+meta
-+mouse_trafo
-+mouseinterval
-+mouseinterval_sp
-+mousemask
-+mousemask_sp
-+move
-+move_field
-+move_panel
-+mvaddch
-+mvaddchnstr
-+mvaddchstr
-+mvaddnstr
-+mvaddstr
-+mvchgat
-+mvcur
-+mvcur_sp
-+mvdelch
-+mvderwin
-+mvgetch
-+mvgetnstr
-+mvgetstr
-+mvhline
-+mvinch
-+mvinchnstr
-+mvinchstr
-+mvinnstr
-+mvinsch
-+mvinsnstr
-+mvinsstr
-+mvinstr
-+mvprintw
-+mvscanw
-+mvvline
-+mvwaddch
-+mvwaddchnstr
-+mvwaddchstr
-+mvwaddnstr
-+mvwaddstr
-+mvwchgat
-+mvwdelch
-+mvwgetch
-+mvwgetnstr
-+mvwgetstr
-+mvwhline
-+mvwin
-+mvwinch
-+mvwinchnstr
-+mvwinchstr
-+mvwinnstr
-+mvwinsch
-+mvwinsnstr
-+mvwinsstr
-+mvwinstr
-+mvwprintw
-+mvwscanw
-+mvwvline
-+napms
-+napms_sp
-+new_field
-+new_fieldtype
-+new_form
-+new_form_sp
-+new_item
-+new_menu
-+new_menu_sp
-+new_page
-+new_panel
-+new_prescr
-+newpad
-+newpad_sp
-+newterm
-+newterm_sp
-+newwin
-+newwin_sp
-+nl
-+nl_sp
-+nocbreak
-+nocbreak_sp
-+nodelay
-+noecho
-+noecho_sp
-+nofilter
-+nofilter_sp
-+nonl
-+nonl_sp
-+noqiflush
-+noqiflush_sp
-+noraw
-+noraw_sp
-+notimeout
-+ospeed
-+overlay
-+overwrite
-+pair_content
-+pair_content_sp
-+panel_above
-+panel_below
-+panel_hidden
-+panel_userptr
-+panel_window
-+pechochar
-+pnoutrefresh
-+pos_form_cursor
-+pos_menu_cursor
-+post_form
-+post_menu
-+prefresh
-+printw
-+putp
-+putp_sp
-+putwin
-+qiflush
-+qiflush_sp
-+raw
-+raw_sp
-+redrawwin
-+refresh
-+replace_panel
-+reset_prog_mode
-+reset_prog_mode_sp
-+reset_shell_mode
-+reset_shell_mode_sp
-+resetty
-+resetty_sp
-+resize_term
-+resize_term_sp
-+resizeterm
-+resizeterm_sp
-+restartterm
-+restartterm_sp
-+ripoffline
-+ripoffline_sp
-+savetty
-+savetty_sp
-+scale_form
-+scale_menu
-+scanw
-+scr_dump
-+scr_init
-+scr_init_sp
-+scr_restore
-+scr_restore_sp
-+scr_set
-+scr_set_sp
-+scrl
-+scroll
-+scrollok
-+set_current_field
-+set_current_item
-+set_curterm
-+set_curterm_sp
-+set_escdelay
-+set_escdelay_sp
-+set_field_back
-+set_field_buffer
-+set_field_fore
-+set_field_init
-+set_field_just
-+set_field_opts
-+set_field_pad
-+set_field_status
-+set_field_term
-+set_field_type
-+set_field_userptr
-+set_fieldtype_arg
-+set_fieldtype_choice
-+set_form_fields
-+set_form_init
-+set_form_opts
-+set_form_page
-+set_form_sub
-+set_form_term
-+set_form_userptr
-+set_form_win
-+set_item_init
-+set_item_opts
-+set_item_term
-+set_item_userptr
-+set_item_value
-+set_max_field
-+set_menu_back
-+set_menu_fore
-+set_menu_format
-+set_menu_grey
-+set_menu_init
-+set_menu_items
-+set_menu_mark
-+set_menu_opts
-+set_menu_pad
-+set_menu_pattern
-+set_menu_spacing
-+set_menu_sub
-+set_menu_term
-+set_menu_userptr
-+set_menu_win
-+set_new_page
-+set_panel_userptr
-+set_tabsize
-+set_tabsize_sp
-+set_term
-+set_top_row
-+setscrreg
-+setupterm
-+show_panel
-+slk_attr
-+slk_attr_set
-+slk_attr_set_sp
-+slk_attr_sp
-+slk_attroff
-+slk_attroff_sp
-+slk_attron
-+slk_attron_sp
-+slk_attrset
-+slk_attrset_sp
-+slk_clear
-+slk_clear_sp
-+slk_color
-+slk_color_sp
-+slk_init
-+slk_init_sp
-+slk_label
-+slk_label_sp
-+slk_noutrefresh
-+slk_noutrefresh_sp
-+slk_refresh
-+slk_refresh_sp
-+slk_restore
-+slk_restore_sp
-+slk_set
-+slk_set_sp
-+slk_touch
-+slk_touch_sp
-+standend
-+standout
-+start_color
-+start_color_sp
-+subpad
-+subwin
-+syncok
-+termattrs
-+termattrs_sp
-+termname
-+termname_sp
-+tgetent
-+tgetent_sp
-+tgetflag
-+tgetflag_sp
-+tgetnum
-+tgetnum_sp
-+tgetstr
-+tgetstr_sp
-+tgoto
-+tigetflag
-+tigetflag_sp
-+tigetnum
-+tigetnum_sp
-+tigetstr
-+tigetstr_sp
-+timeout
-+tiparm
-+top_panel
-+top_row
-+touchline
-+touchwin
-+tparm
-+tputs
-+tputs_sp
-+trace
-+typeahead
-+typeahead_sp
-+unctrl
-+unctrl_sp
-+ungetch
-+ungetch_sp
-+ungetmouse
-+ungetmouse_sp
-+unpost_form
-+unpost_menu
-+untouchwin
-+update_panels
-+update_panels_sp
-+use_default_colors
-+use_default_colors_sp
-+use_env
-+use_env_sp
-+use_extended_names
-+use_legacy_coding
-+use_legacy_coding_sp
-+use_screen
-+use_tioctl
-+use_tioctl_sp
-+use_window
-+vidattr
-+vidattr_sp
-+vidputs
-+vidputs_sp
-+vline
-+vw_printw
-+vw_scanw
-+vwprintw
-+vwscanw
-+waddch
-+waddchnstr
-+waddchstr
-+waddnstr
-+waddstr
-+wattr_get
-+wattr_off
-+wattr_on
-+wattr_set
-+wattroff
-+wattron
-+wattrset
-+wbkgd
-+wbkgdset
-+wborder
-+wchgat
-+wclear
-+wclrtobot
-+wclrtoeol
-+wcolor_set
-+wcursyncup
-+wdelch
-+wdeleteln
-+wechochar
-+wenclose
-+werase
-+wgetch
-+wgetch_events
-+wgetdelay
-+wgetnstr
-+wgetnstr_events
-+wgetparent
-+wgetscrreg
-+wgetstr
-+whline
-+winch
-+winchnstr
-+winchstr
-+winnstr
-+winsch
-+winsdelln
-+winsertln
-+winsnstr
-+winsstr
-+winstr
-+wmouse_trafo
-+wmove
-+wnoutrefresh
-+wprintw
-+wredrawln
-+wrefresh
-+wresize
-+wscanw
-+wscrl
-+wsetscrreg
-+wstandend
-+wstandout
-+wsyncdown
-+wsyncup
-+wtimeout
-+wtouchln
-+wvline
-Index: package/ncursestw.map
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/ncursestw.map 2014-12-06 22:59:11.000000000 +0000
-@@ -0,0 +1,1206 @@
-+# $Id: ncursestw.map,v 1.17 2014/12/06 22:59:11 tom Exp $
-+# script for shared library symbol-versioning using ld
-+#
-+# This file was generated by ncu-mapsyms
-+# Configure options (merged 7 builds):
-+# 'CFLAGS=-O'
-+# --disable-echo
-+# --disable-getcap
-+# --disable-leaks
-+# --disable-root-environ
-+# --disable-termcap
-+# --enable-getcap
-+# --enable-getcap-cache
-+# --enable-hard-tabs
-+# --enable-interop
-+# --enable-reentrant
-+# --enable-rpath
-+# --enable-sp-funcs
-+# --enable-termcap
-+# --enable-warnings
-+# --enable-wgetch-events
-+# --enable-widec
-+# --verbose
-+# --with-pthread
-+# --with-shared
-+# --with-termlib
-+# --with-ticlib
-+# --with-trace
-+# --with-warnings
-+# --without-ada
-+# --without-debug
-+# --without-normal
-+#
-+
-+NCURSES_TIC_5.0.19991023 {
-+ global:
-+ _nc_capcmp;
-+ _nc_check_termtype;
-+ _nc_entry_match;
-+ _nc_find_type_entry;
-+ _nc_get_table;
-+ _nc_infotocap;
-+ _nc_read_entry_source;
-+ _nc_reset_input;
-+ _nc_resolve_uses;
-+ _nc_set_writedir;
-+ _nc_syntax;
-+ _nc_tic_expand;
-+ _nc_tic_written;
-+ _nc_trans_string;
-+ _nc_write_entry;
-+ local:
-+ _nc_captoinfo;
-+ _nc_comment_end;
-+ _nc_comment_start;
-+ _nc_copy_entry;
-+ _nc_curr_file_pos;
-+ _nc_curr_token;
-+ _nc_get_token;
-+ _nc_init_entry;
-+ _nc_merge_entry;
-+ _nc_panic_mode;
-+ _nc_parse_entry;
-+ _nc_push_token;
-+ _nc_save_str;
-+ _nc_start_line;
-+ _nc_wrap_entry;
-+};
-+
-+NCURSES_TIC_5.1.20000708 {
-+ global:
-+ _nc_disable_period;
-+} NCURSES_TIC_5.0.19991023;
-+
-+NCURSES_TIC_5.5.20051010 {
-+ global:
-+ _nc_alloc_entry_leaks;
-+ _nc_captoinfo_leaks;
-+ _nc_check_termtype2;
-+ _nc_comp_scan_leaks;
-+ _nc_resolve_uses2;
-+} NCURSES_TIC_5.1.20000708;
-+
-+NCURSES_TIC_5.7.20081102 {
-+ global:
-+ _nc_free_tic;
-+ _nc_get_alias_table;
-+ local:
-+ _nc_comp_captab_leaks;
-+ _nc_leaks_tic;
-+} NCURSES_TIC_5.5.20051010;
-+
-+NCURSES_TIC_5.9.current {
-+ global:
-+ _nc_strict_bsd;
-+} NCURSES_TIC_5.7.20081102;
-+
-+NCURSES_TINFO_5.0.19991023 {
-+ global:
-+ BC;
-+ PC;
-+ SP;
-+ UP;
-+ _nc_access;
-+ _nc_add_to_try;
-+ _nc_copy_termtype;
-+ _nc_curr_col;
-+ _nc_curr_line;
-+ _nc_doalloc;
-+ _nc_err_abort;
-+ _nc_fallback;
-+ _nc_find_entry;
-+ _nc_first_name;
-+ _nc_free_entries;
-+ _nc_free_termtype;
-+ _nc_free_tparm;
-+ _nc_get_hash_table;
-+ _nc_get_tty_mode;
-+ _nc_get_type;
-+ _nc_getenv_num;
-+ _nc_head;
-+ _nc_home_terminfo;
-+ _nc_init_acs;
-+ _nc_keep_tic_dir;
-+ _nc_keypad;
-+ _nc_name_match;
-+ _nc_outch;
-+ _nc_read_entry;
-+ _nc_read_file_entry;
-+ _nc_screen_chain;
-+ _nc_set_buffer;
-+ _nc_set_source;
-+ _nc_set_tty_mode;
-+ _nc_set_type;
-+ _nc_suppress_warnings;
-+ _nc_syserr_abort;
-+ _nc_tail;
-+ _nc_tic_dir;
-+ _nc_timed_wait;
-+ _nc_trace_buf;
-+ _nc_tracing;
-+ _nc_update_screensize;
-+ _nc_visbuf;
-+ _nc_visbuf2;
-+ _nc_warning;
-+ _tracechar;
-+ baudrate;
-+ cbreak;
-+ curs_set;
-+ curses_version;
-+ def_prog_mode;
-+ def_shell_mode;
-+ define_key;
-+ del_curterm;
-+ delay_output;
-+ erasechar;
-+ flushinp;
-+ halfdelay;
-+ has_ic;
-+ has_il;
-+ has_key;
-+ idcok;
-+ idlok;
-+ intrflush;
-+ keybound;
-+ keyname;
-+ keyok;
-+ keypad;
-+ killchar;
-+ longname;
-+ meta;
-+ napms;
-+ nocbreak;
-+ nodelay;
-+ noqiflush;
-+ noraw;
-+ notimeout;
-+ ospeed;
-+ putp;
-+ qiflush;
-+ raw;
-+ reset_prog_mode;
-+ reset_shell_mode;
-+ resetty;
-+ savetty;
-+ set_curterm;
-+ setupterm;
-+ termname;
-+ tgetent;
-+ tgetflag;
-+ tgetnum;
-+ tgetstr;
-+ tgoto;
-+ tigetflag;
-+ tigetnum;
-+ tigetstr;
-+ tparm;
-+ tputs;
-+ trace;
-+ typeahead;
-+ unctrl;
-+ use_env;
-+ wtimeout;
-+ local:
-+ _nc_baudrate;
-+ _nc_expand_try;
-+ _nc_init_keytry;
-+ _nc_nulls_sent;
-+ _nc_ospeed;
-+ _nc_read_termcap;
-+ _nc_read_termcap_entry;
-+ _nc_remove_key;
-+ _nc_remove_string;
-+ _nc_trace_tries;
-+ _nc_tracebits;
-+};
-+
-+NCURSES_TINFO_5.1.20000708 {
-+ global:
-+ _nc_align_termtype;
-+ _nc_flush;
-+ _nc_tinfo_fkeys;
-+ _nc_user_definable;
-+ use_extended_names;
-+} NCURSES_TINFO_5.0.19991023;
-+
-+NCURSES_TINFO_5.2.20001021 {
-+ global:
-+ _nc_basename;
-+ _nc_env_access;
-+ _nc_safe_strcat;
-+ _nc_safe_strcpy;
-+ _nc_str_copy;
-+ _nc_str_init;
-+ _nc_str_null;
-+} NCURSES_TINFO_5.1.20000708;
-+
-+NCURSES_TINFO_5.3.20021019 {
-+ global:
-+ _nc_rootname;
-+ _nc_tparm_err;
-+ _nc_visbufn;
-+} NCURSES_TINFO_5.2.20001021;
-+
-+NCURSES_TINFO_5.4.20040208 {
-+ global:
-+ _nc_get_locale;
-+ _nc_locale_breaks_acs;
-+ _nc_pathlast;
-+ _nc_retrace_attr_t;
-+ _nc_retrace_bool;
-+ _nc_retrace_chtype;
-+ _nc_retrace_int;
-+ _nc_retrace_ptr;
-+ _nc_retrace_sp;
-+ _nc_retrace_unsigned;
-+ _nc_retrace_win;
-+ _nc_tparm_analyze;
-+ _nc_trace_bufcat;
-+ _nc_unicode_locale;
-+ _traceattr;
-+ _traceattr2;
-+ _tracechtype;
-+ _tracechtype2;
-+ _tracef;
-+ key_defined;
-+ local:
-+ _nc_altcharset_name;
-+ _nc_trace_ttymode;
-+} NCURSES_TINFO_5.3.20021019;
-+
-+NCURSES_TINFO_5.5.20051010 {
-+ global:
-+ _nc_get_source;
-+ _nc_retrace_cptr;
-+ _nc_retrace_cvoid_ptr;
-+ _nc_retrace_void_ptr;
-+ _nc_setupterm;
-+ _nc_trim_sgr0;
-+ local:
-+ _nc_delink_entry;
-+ _nc_free_entry;
-+} NCURSES_TINFO_5.4.20040208;
-+
-+NCURSES_TINFO_5.6.20061217 {
-+ global:
-+ _nc_eventlist_timeout;
-+ _nc_first_db;
-+ _nc_handle_sigwinch;
-+ _nc_is_abs_path;
-+ _nc_is_dir_path;
-+ _nc_is_file_path;
-+ _nc_keyname_leaks;
-+ _nc_last_db;
-+ _nc_next_db;
-+ _nc_tgetent_leaks;
-+ _nc_viscbuf;
-+ local:
-+ _nc_hashed_db;
-+ _nc_read_termtype;
-+ _nc_viscbuf2;
-+} NCURSES_TINFO_5.5.20051010;
-+
-+NCURSES_TINFO_5.7.20081102 {
-+ global:
-+ _nc_COLS;
-+ _nc_LINES;
-+ _nc_TABSIZE;
-+ _nc__nc_outchars;
-+ _nc_acs_map;
-+ _nc_boolcodes;
-+ _nc_boolfnames;
-+ _nc_boolnames;
-+ _nc_codes_leaks;
-+ _nc_count_outchars;
-+ _nc_cur_term;
-+ _nc_curscr;
-+ _nc_free_tinfo;
-+ _nc_get_screensize;
-+ _nc_globals;
-+ _nc_init_pthreads;
-+ _nc_leaks_tinfo;
-+ _nc_locked_tracef;
-+ _nc_mutex_lock;
-+ _nc_mutex_trylock;
-+ _nc_mutex_unlock;
-+ _nc_names_leaks;
-+ _nc_newscr;
-+ _nc_numcodes;
-+ _nc_numfnames;
-+ _nc_numnames;
-+ _nc_prescreen;
-+ _nc_ptr_Cols;
-+ _nc_ptr_Lines;
-+ _nc_screen_of;
-+ _nc_set_no_padding;
-+ _nc_set_tputs_trace;
-+ _nc_stdscr;
-+ _nc_strcodes;
-+ _nc_strfnames;
-+ _nc_strnames;
-+ _nc_tracechar;
-+ _nc_use_tracef;
-+ _nc_viswbuf;
-+ _nc_viswbufn;
-+ _nc_viswibuf;
-+ _tracecchar_t;
-+ _tracecchar_t2;
-+ set_tabsize;
-+ local:
-+ _nc__nc_tputs_trace;
-+ _nc_keyname;
-+ _nc_mutex_init;
-+ _nc_ttytype;
-+ _nc_unctrl;
-+ _nc_viswbuf2;
-+} NCURSES_TINFO_5.6.20061217;
-+
-+NCURSES_TINFO_5.8.20110226 {
-+ global:
-+ _nc_flush_sp;
-+ _nc_get_tty_mode_sp;
-+ _nc_init_acs_sp;
-+ _nc_outc_wrapper;
-+ _nc_outch_sp;
-+ _nc_putp;
-+ _nc_putp_flush;
-+ _nc_putp_flush_sp;
-+ _nc_putp_sp;
-+ _nc_retrace_int_attr_t;
-+ _nc_set_buffer_sp;
-+ _nc_set_tty_mode_sp;
-+ baudrate_sp;
-+ cbreak_sp;
-+ curs_set_sp;
-+ def_prog_mode_sp;
-+ def_shell_mode_sp;
-+ define_key_sp;
-+ del_curterm_sp;
-+ delay_output_sp;
-+ erasechar_sp;
-+ flushinp_sp;
-+ halfdelay_sp;
-+ has_ic_sp;
-+ has_il_sp;
-+ has_key_sp;
-+ intrflush_sp;
-+ key_defined_sp;
-+ keybound_sp;
-+ keyname_sp;
-+ keyok_sp;
-+ killchar_sp;
-+ longname_sp;
-+ napms_sp;
-+ new_prescr;
-+ nocbreak_sp;
-+ noqiflush_sp;
-+ noraw_sp;
-+ putp_sp;
-+ qiflush_sp;
-+ raw_sp;
-+ reset_prog_mode_sp;
-+ reset_shell_mode_sp;
-+ resetty_sp;
-+ savetty_sp;
-+ set_curterm_sp;
-+ set_tabsize_sp;
-+ termname_sp;
-+ tgetent_sp;
-+ tgetflag_sp;
-+ tgetnum_sp;
-+ tgetstr_sp;
-+ tigetflag_sp;
-+ tigetnum_sp;
-+ tigetstr_sp;
-+ tiparm;
-+ tputs_sp;
-+ typeahead_sp;
-+ unctrl_sp;
-+ use_env_sp;
-+ local:
-+ _nc_get_cur_term;
-+ _nc_get_cur_term_sp;
-+ _nc_get_hash_info;
-+ _nc_ptr_Tabsize;
-+ _nc_retrace_char;
-+ _nc_setup_tinfo;
-+ _nc_tinfo_cmdch;
-+} NCURSES_TINFO_5.7.20081102;
-+
-+NCURSES_TINFO_5.9.current {
-+ global:
-+ _nc_init_termtype;
-+ _nc_putchar;
-+ _nc_putchar_sp;
-+ use_tioctl;
-+ use_tioctl_sp;
-+ local:
-+ _nc_comp_error_leaks;
-+ _nc_db_iterator_leaks;
-+ _nc_setenv_num;
-+} NCURSES_TINFO_5.8.20110226;
-+
-+NCURSESTW_5.7.20081102 {
-+ global:
-+ COLOR_PAIR;
-+ PAIR_NUMBER;
-+ TYPE_ALNUM;
-+ TYPE_ALPHA;
-+ TYPE_ENUM;
-+ TYPE_INTEGER;
-+ TYPE_IPV4;
-+ TYPE_NUMERIC;
-+ TYPE_REGEXP;
-+ _nc_COLORS;
-+ _nc_COLOR_PAIRS;
-+ _nc_ESCDELAY;
-+ _nc_free_and_exit;
-+ _nc_optimize_enable;
-+ _nc_panelhook;
-+ _nc_ripoffline;
-+ _nc_wacs;
-+ _nc_wcrtomb;
-+ add_wch;
-+ add_wchnstr;
-+ add_wchstr;
-+ addch;
-+ addchnstr;
-+ addchstr;
-+ addnstr;
-+ addnwstr;
-+ addstr;
-+ addwstr;
-+ assume_default_colors;
-+ attr_get;
-+ attr_off;
-+ attr_on;
-+ attr_set;
-+ attroff;
-+ attron;
-+ attrset;
-+ beep;
-+ bkgd;
-+ bkgdset;
-+ bkgrnd;
-+ bkgrndset;
-+ border;
-+ border_set;
-+ bottom_panel;
-+ box;
-+ box_set;
-+ can_change_color;
-+ chgat;
-+ clear;
-+ clearok;
-+ clrtobot;
-+ clrtoeol;
-+ color_content;
-+ color_set;
-+ copywin;
-+ current_field;
-+ current_item;
-+ data_ahead;
-+ data_behind;
-+ del_panel;
-+ delch;
-+ deleteln;
-+ delscreen;
-+ delwin;
-+ derwin;
-+ doupdate;
-+ dup_field;
-+ dupwin;
-+ dynamic_field_info;
-+ echo;
-+ echo_wchar;
-+ echochar;
-+ endwin;
-+ erase;
-+ erasewchar;
-+ field_arg;
-+ field_back;
-+ field_buffer;
-+ field_count;
-+ field_fore;
-+ field_index;
-+ field_info;
-+ field_init;
-+ field_just;
-+ field_opts;
-+ field_opts_off;
-+ field_opts_on;
-+ field_pad;
-+ field_status;
-+ field_term;
-+ field_type;
-+ field_userptr;
-+ filter;
-+ flash;
-+ form_driver;
-+ form_fields;
-+ form_init;
-+ form_opts;
-+ form_opts_off;
-+ form_opts_on;
-+ form_page;
-+ form_request_by_name;
-+ form_request_name;
-+ form_sub;
-+ form_term;
-+ form_userptr;
-+ form_win;
-+ free_field;
-+ free_fieldtype;
-+ free_form;
-+ free_item;
-+ free_menu;
-+ get_wch;
-+ get_wstr;
-+ getattrs;
-+ getbegx;
-+ getbegy;
-+ getbkgd;
-+ getbkgrnd;
-+ getcchar;
-+ getch;
-+ getcurx;
-+ getcury;
-+ getmaxx;
-+ getmaxy;
-+ getmouse;
-+ getn_wstr;
-+ getnstr;
-+ getparx;
-+ getpary;
-+ getstr;
-+ getwin;
-+ has_colors;
-+ hide_panel;
-+ hline;
-+ hline_set;
-+ immedok;
-+ in_wch;
-+ in_wchnstr;
-+ in_wchstr;
-+ inch;
-+ inchnstr;
-+ inchstr;
-+ init_color;
-+ init_pair;
-+ initscr;
-+ innstr;
-+ innwstr;
-+ ins_nwstr;
-+ ins_wch;
-+ ins_wstr;
-+ insch;
-+ insdelln;
-+ insertln;
-+ insnstr;
-+ insstr;
-+ instr;
-+ inwstr;
-+ is_cleared;
-+ is_idcok;
-+ is_idlok;
-+ is_immedok;
-+ is_keypad;
-+ is_leaveok;
-+ is_linetouched;
-+ is_nodelay;
-+ is_notimeout;
-+ is_scrollok;
-+ is_syncok;
-+ is_term_resized;
-+ is_wintouched;
-+ isendwin;
-+ item_count;
-+ item_description;
-+ item_index;
-+ item_init;
-+ item_name;
-+ item_opts;
-+ item_opts_off;
-+ item_opts_on;
-+ item_term;
-+ item_userptr;
-+ item_value;
-+ item_visible;
-+ key_name;
-+ killwchar;
-+ leaveok;
-+ link_field;
-+ link_fieldtype;
-+ mcprint;
-+ menu_back;
-+ menu_driver;
-+ menu_fore;
-+ menu_format;
-+ menu_grey;
-+ menu_init;
-+ menu_items;
-+ menu_mark;
-+ menu_opts;
-+ menu_opts_off;
-+ menu_opts_on;
-+ menu_pad;
-+ menu_pattern;
-+ menu_request_by_name;
-+ menu_request_name;
-+ menu_spacing;
-+ menu_sub;
-+ menu_term;
-+ menu_userptr;
-+ menu_win;
-+ mouse_trafo;
-+ mouseinterval;
-+ mousemask;
-+ move;
-+ move_field;
-+ move_panel;
-+ mvadd_wch;
-+ mvadd_wchnstr;
-+ mvadd_wchstr;
-+ mvaddch;
-+ mvaddchnstr;
-+ mvaddchstr;
-+ mvaddnstr;
-+ mvaddnwstr;
-+ mvaddstr;
-+ mvaddwstr;
-+ mvchgat;
-+ mvcur;
-+ mvdelch;
-+ mvderwin;
-+ mvget_wch;
-+ mvget_wstr;
-+ mvgetch;
-+ mvgetn_wstr;
-+ mvgetnstr;
-+ mvgetstr;
-+ mvhline;
-+ mvhline_set;
-+ mvin_wch;
-+ mvin_wchnstr;
-+ mvin_wchstr;
-+ mvinch;
-+ mvinchnstr;
-+ mvinchstr;
-+ mvinnstr;
-+ mvinnwstr;
-+ mvins_nwstr;
-+ mvins_wch;
-+ mvins_wstr;
-+ mvinsch;
-+ mvinsnstr;
-+ mvinsstr;
-+ mvinstr;
-+ mvinwstr;
-+ mvprintw;
-+ mvscanw;
-+ mvvline;
-+ mvvline_set;
-+ mvwadd_wch;
-+ mvwadd_wchnstr;
-+ mvwadd_wchstr;
-+ mvwaddch;
-+ mvwaddchnstr;
-+ mvwaddchstr;
-+ mvwaddnstr;
-+ mvwaddnwstr;
-+ mvwaddstr;
-+ mvwaddwstr;
-+ mvwchgat;
-+ mvwdelch;
-+ mvwget_wch;
-+ mvwget_wstr;
-+ mvwgetch;
-+ mvwgetn_wstr;
-+ mvwgetnstr;
-+ mvwgetstr;
-+ mvwhline;
-+ mvwhline_set;
-+ mvwin;
-+ mvwin_wch;
-+ mvwin_wchnstr;
-+ mvwin_wchstr;
-+ mvwinch;
-+ mvwinchnstr;
-+ mvwinchstr;
-+ mvwinnstr;
-+ mvwinnwstr;
-+ mvwins_nwstr;
-+ mvwins_wch;
-+ mvwins_wstr;
-+ mvwinsch;
-+ mvwinsnstr;
-+ mvwinsstr;
-+ mvwinstr;
-+ mvwinwstr;
-+ mvwprintw;
-+ mvwscanw;
-+ mvwvline;
-+ mvwvline_set;
-+ new_field;
-+ new_fieldtype;
-+ new_form;
-+ new_item;
-+ new_menu;
-+ new_page;
-+ new_panel;
-+ newpad;
-+ newterm;
-+ newwin;
-+ nl;
-+ noecho;
-+ nofilter;
-+ nonl;
-+ overlay;
-+ overwrite;
-+ pair_content;
-+ panel_above;
-+ panel_below;
-+ panel_hidden;
-+ panel_userptr;
-+ panel_window;
-+ pecho_wchar;
-+ pechochar;
-+ pnoutrefresh;
-+ pos_form_cursor;
-+ pos_menu_cursor;
-+ post_form;
-+ post_menu;
-+ prefresh;
-+ printw;
-+ putwin;
-+ redrawwin;
-+ refresh;
-+ replace_panel;
-+ resize_term;
-+ resizeterm;
-+ restartterm;
-+ ripoffline;
-+ scale_form;
-+ scale_menu;
-+ scanw;
-+ scr_dump;
-+ scr_init;
-+ scr_restore;
-+ scr_set;
-+ scrl;
-+ scroll;
-+ scrollok;
-+ set_current_field;
-+ set_current_item;
-+ set_escdelay;
-+ set_field_back;
-+ set_field_buffer;
-+ set_field_fore;
-+ set_field_init;
-+ set_field_just;
-+ set_field_opts;
-+ set_field_pad;
-+ set_field_status;
-+ set_field_term;
-+ set_field_type;
-+ set_field_userptr;
-+ set_fieldtype_arg;
-+ set_fieldtype_choice;
-+ set_form_fields;
-+ set_form_init;
-+ set_form_opts;
-+ set_form_page;
-+ set_form_sub;
-+ set_form_term;
-+ set_form_userptr;
-+ set_form_win;
-+ set_item_init;
-+ set_item_opts;
-+ set_item_term;
-+ set_item_userptr;
-+ set_item_value;
-+ set_max_field;
-+ set_menu_back;
-+ set_menu_fore;
-+ set_menu_format;
-+ set_menu_grey;
-+ set_menu_init;
-+ set_menu_items;
-+ set_menu_mark;
-+ set_menu_opts;
-+ set_menu_pad;
-+ set_menu_pattern;
-+ set_menu_spacing;
-+ set_menu_sub;
-+ set_menu_term;
-+ set_menu_userptr;
-+ set_menu_win;
-+ set_new_page;
-+ set_panel_userptr;
-+ set_term;
-+ set_top_row;
-+ setcchar;
-+ setscrreg;
-+ show_panel;
-+ slk_attr;
-+ slk_attr_off;
-+ slk_attr_on;
-+ slk_attr_set;
-+ slk_attroff;
-+ slk_attron;
-+ slk_attrset;
-+ slk_clear;
-+ slk_color;
-+ slk_init;
-+ slk_label;
-+ slk_noutrefresh;
-+ slk_refresh;
-+ slk_restore;
-+ slk_set;
-+ slk_touch;
-+ slk_wset;
-+ standend;
-+ standout;
-+ start_color;
-+ subpad;
-+ subwin;
-+ syncok;
-+ term_attrs;
-+ termattrs;
-+ timeout;
-+ top_panel;
-+ top_row;
-+ touchline;
-+ touchwin;
-+ unget_wch;
-+ ungetch;
-+ ungetmouse;
-+ unpost_form;
-+ unpost_menu;
-+ untouchwin;
-+ update_panels;
-+ use_default_colors;
-+ use_legacy_coding;
-+ use_screen;
-+ use_window;
-+ vid_attr;
-+ vid_puts;
-+ vidattr;
-+ vidputs;
-+ vline;
-+ vline_set;
-+ vw_printw;
-+ vw_scanw;
-+ vwprintw;
-+ vwscanw;
-+ wadd_wch;
-+ wadd_wchnstr;
-+ wadd_wchstr;
-+ waddch;
-+ waddchnstr;
-+ waddchstr;
-+ waddnstr;
-+ waddnwstr;
-+ waddstr;
-+ waddwstr;
-+ wattr_get;
-+ wattr_off;
-+ wattr_on;
-+ wattr_set;
-+ wattroff;
-+ wattron;
-+ wattrset;
-+ wbkgd;
-+ wbkgdset;
-+ wbkgrnd;
-+ wbkgrndset;
-+ wborder;
-+ wborder_set;
-+ wchgat;
-+ wclear;
-+ wclrtobot;
-+ wclrtoeol;
-+ wcolor_set;
-+ wcursyncup;
-+ wdelch;
-+ wdeleteln;
-+ wecho_wchar;
-+ wechochar;
-+ wenclose;
-+ werase;
-+ wget_wch;
-+ wget_wstr;
-+ wgetbkgrnd;
-+ wgetch;
-+ wgetch_events;
-+ wgetn_wstr;
-+ wgetnstr;
-+ wgetnstr_events;
-+ wgetparent;
-+ wgetscrreg;
-+ wgetstr;
-+ whline;
-+ whline_set;
-+ win_wch;
-+ win_wchnstr;
-+ win_wchstr;
-+ winch;
-+ winchnstr;
-+ winchstr;
-+ winnstr;
-+ winnwstr;
-+ wins_nwstr;
-+ wins_wch;
-+ wins_wstr;
-+ winsch;
-+ winsdelln;
-+ winsertln;
-+ winsnstr;
-+ winsstr;
-+ winstr;
-+ winwstr;
-+ wmouse_trafo;
-+ wmove;
-+ wnoutrefresh;
-+ wprintw;
-+ wredrawln;
-+ wrefresh;
-+ wresize;
-+ wscanw;
-+ wscrl;
-+ wsetscrreg;
-+ wstandend;
-+ wstandout;
-+ wsyncdown;
-+ wsyncup;
-+ wtouchln;
-+ wunctrl;
-+ wvline;
-+ wvline_set;
-+ local:
-+ _nc_Calculate_Item_Length_and_Width;
-+ _nc_Calculate_Text_Width;
-+ _nc_Connect_Items;
-+ _nc_Copy_Argument;
-+ _nc_Copy_Type;
-+ _nc_Default_Field;
-+ _nc_Default_FieldType;
-+ _nc_Default_Form;
-+ _nc_Default_Item;
-+ _nc_Default_Menu;
-+ _nc_Disconnect_Items;
-+ _nc_Draw_Menu;
-+ _nc_First_Active_Field;
-+ _nc_Free_Argument;
-+ _nc_Free_Type;
-+ _nc_Internal_Validation;
-+ _nc_Link_Items;
-+ _nc_Make_Argument;
-+ _nc_Match_Next_Character_In_Item_Name;
-+ _nc_New_TopRow_and_CurrentItem;
-+ _nc_Position_Form_Cursor;
-+ _nc_Post_Item;
-+ _nc_Refresh_Current_Field;
-+ _nc_Set_Current_Field;
-+ _nc_Set_Form_Page;
-+ _nc_Show_Menu;
-+ _nc_Synchronize_Attributes;
-+ _nc_Synchronize_Options;
-+ _nc_Touchline;
-+ _nc_Touchpan;
-+ _nc_Widen_String;
-+ _nc_Wnoutrefresh;
-+ _nc_build_wch;
-+ _nc_dPanel;
-+ _nc_dStack;
-+ _nc_do_color;
-+ _nc_expanded;
-+ _nc_fifo_dump;
-+ _nc_freeall;
-+ _nc_freewin;
-+ _nc_has_mouse;
-+ _nc_hash_map;
-+ _nc_init_wacs;
-+ _nc_insert_ch;
-+ _nc_is_charable;
-+ _nc_linedump;
-+ _nc_make_oldhash;
-+ _nc_makenew;
-+ _nc_memmove;
-+ _nc_menu_cursor_pos;
-+ _nc_msec_cost;
-+ _nc_mvcur_init;
-+ _nc_mvcur_resume;
-+ _nc_mvcur_wrap;
-+ _nc_my_visbuf;
-+ _nc_oldnums;
-+ _nc_printf_string;
-+ _nc_render;
-+ _nc_reset_colors;
-+ _nc_retrace_field;
-+ _nc_retrace_field_ptr;
-+ _nc_retrace_field_type;
-+ _nc_retrace_form;
-+ _nc_retrace_form_hook;
-+ _nc_retrace_item;
-+ _nc_retrace_item_opts;
-+ _nc_retrace_item_ptr;
-+ _nc_retrace_menu;
-+ _nc_retrace_menu_hook;
-+ _nc_retrace_menu_opts;
-+ _nc_retrace_panel;
-+ _nc_screen_init;
-+ _nc_screen_resume;
-+ _nc_screen_wrap;
-+ _nc_scroll_oldhash;
-+ _nc_scroll_optimize;
-+ _nc_scroll_window;
-+ _nc_scrolln;
-+ _nc_setupscreen;
-+ _nc_signal_handler;
-+ _nc_slk_initialize;
-+ _nc_synchook;
-+ _nc_to_char;
-+ _nc_to_widechar;
-+ _nc_trace_xnames;
-+ _nc_tracemouse;
-+ _nc_ungetch;
-+ _nc_varargs;
-+ _nc_vsscanf;
-+ _nc_waddch_nosync;
-+ _nc_wchstrlen;
-+ _nc_wgetch;
-+ _tracedump;
-+ _tracemouse;
-+};
-+
-+NCURSESTW_5.8.20110226 {
-+ global:
-+ _nc_panelhook_sp;
-+ assume_default_colors_sp;
-+ beep_sp;
-+ can_change_color_sp;
-+ ceiling_panel;
-+ color_content_sp;
-+ doupdate_sp;
-+ echo_sp;
-+ endwin_sp;
-+ filter_sp;
-+ flash_sp;
-+ get_escdelay;
-+ get_escdelay_sp;
-+ getmouse_sp;
-+ getwin_sp;
-+ ground_panel;
-+ has_colors_sp;
-+ has_mouse;
-+ has_mouse_sp;
-+ init_color_sp;
-+ init_pair_sp;
-+ is_pad;
-+ is_subwin;
-+ is_term_resized_sp;
-+ isendwin_sp;
-+ mcprint_sp;
-+ mouseinterval_sp;
-+ mousemask_sp;
-+ mvcur_sp;
-+ new_form_sp;
-+ new_menu_sp;
-+ newpad_sp;
-+ newterm_sp;
-+ newwin_sp;
-+ nl_sp;
-+ noecho_sp;
-+ nofilter_sp;
-+ nonl_sp;
-+ pair_content_sp;
-+ resize_term_sp;
-+ resizeterm_sp;
-+ restartterm_sp;
-+ ripoffline_sp;
-+ scr_init_sp;
-+ scr_restore_sp;
-+ scr_set_sp;
-+ set_escdelay_sp;
-+ slk_attr_set_sp;
-+ slk_attr_sp;
-+ slk_attroff_sp;
-+ slk_attron_sp;
-+ slk_attrset_sp;
-+ slk_clear_sp;
-+ slk_color_sp;
-+ slk_init_sp;
-+ slk_label_sp;
-+ slk_noutrefresh_sp;
-+ slk_refresh_sp;
-+ slk_restore_sp;
-+ slk_set_sp;
-+ slk_touch_sp;
-+ start_color_sp;
-+ term_attrs_sp;
-+ termattrs_sp;
-+ unget_wch_sp;
-+ ungetch_sp;
-+ ungetmouse_sp;
-+ update_panels_sp;
-+ use_default_colors_sp;
-+ use_legacy_coding_sp;
-+ vid_attr_sp;
-+ vid_puts_sp;
-+ vidattr_sp;
-+ vidputs_sp;
-+ wunctrl_sp;
-+ local:
-+ _nc_TYPE_ALNUM;
-+ _nc_TYPE_ALPHA;
-+ _nc_TYPE_ENUM;
-+ _nc_TYPE_INTEGER;
-+ _nc_TYPE_IPV4;
-+ _nc_TYPE_NUMERIC;
-+ _nc_TYPE_REGEXP;
-+ _nc_curscr_of;
-+ _nc_do_color_sp;
-+ _nc_form_cursor;
-+ _nc_format_slks;
-+ _nc_free_and_exit_sp;
-+ _nc_freeall_sp;
-+ _nc_fty_generic;
-+ _nc_generic_fieldtype;
-+ _nc_get_fieldbuffer;
-+ _nc_hash_map_sp;
-+ _nc_insert_wch;
-+ _nc_linedump_sp;
-+ _nc_make_oldhash_sp;
-+ _nc_makenew_sp;
-+ _nc_msec_cost_sp;
-+ _nc_mvcur_init_sp;
-+ _nc_mvcur_resume_sp;
-+ _nc_mvcur_wrap_sp;
-+ _nc_newscr_of;
-+ _nc_printf_string_sp;
-+ _nc_ptr_Escdelay;
-+ _nc_reset_colors_sp;
-+ _nc_retrace_mmask_t;
-+ _nc_ripoffline_sp;
-+ _nc_screen_init_sp;
-+ _nc_screen_resume_sp;
-+ _nc_screen_wrap_sp;
-+ _nc_scroll_oldhash_sp;
-+ _nc_scroll_optimize_sp;
-+ _nc_scrolln_sp;
-+ _nc_set_generic_fieldtype;
-+ _nc_setupscreen_sp;
-+ _nc_stdscr_of;
-+} NCURSESTW_5.7.20081102;
-+
-+NCURSESTW_5.9.current {
-+ global:
-+ form_driver_w;
-+ wgetdelay;
-+ local:
-+ _nc_mvcur;
-+ _nc_mvcur_sp;
-+ _nc_trace_mmask_t;
-+} NCURSESTW_5.8.20110226;
-Index: package/ncursestw.sym
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/ncursestw.sym 2014-11-28 02:58:56.000000000 +0000
-@@ -0,0 +1,1121 @@
-+# $Id: ncursestw.sym,v 1.12 2014/11/28 02:58:56 tom Exp $
-+# script for shared library symbol-visibility using libtool
-+#
-+# This file was generated by ncu-mapsyms
-+# Configure options (merged 7 builds):
-+# 'CFLAGS=-O'
-+# --disable-echo
-+# --disable-getcap
-+# --disable-leaks
-+# --disable-root-environ
-+# --disable-termcap
-+# --enable-getcap
-+# --enable-getcap-cache
-+# --enable-hard-tabs
-+# --enable-interop
-+# --enable-reentrant
-+# --enable-rpath
-+# --enable-sp-funcs
-+# --enable-termcap
-+# --enable-warnings
-+# --enable-wgetch-events
-+# --enable-widec
-+# --verbose
-+# --with-pthread
-+# --with-shared
-+# --with-termlib
-+# --with-ticlib
-+# --with-trace
-+# --with-warnings
-+# --without-ada
-+# --without-debug
-+# --without-normal
-+BC
-+COLOR_PAIR
-+PAIR_NUMBER
-+PC
-+SP
-+TYPE_ALNUM
-+TYPE_ALPHA
-+TYPE_ENUM
-+TYPE_INTEGER
-+TYPE_IPV4
-+TYPE_NUMERIC
-+TYPE_REGEXP
-+UP
-+_nc_COLORS
-+_nc_COLOR_PAIRS
-+_nc_COLS
-+_nc_Calculate_Item_Length_and_Width
-+_nc_Calculate_Text_Width
-+_nc_Connect_Items
-+_nc_Copy_Argument
-+_nc_Copy_Type
-+_nc_Default_Field
-+_nc_Default_FieldType
-+_nc_Default_Form
-+_nc_Default_Item
-+_nc_Default_Menu
-+_nc_Disconnect_Items
-+_nc_Draw_Menu
-+_nc_ESCDELAY
-+_nc_First_Active_Field
-+_nc_Free_Argument
-+_nc_Free_Type
-+_nc_Internal_Validation
-+_nc_LINES
-+_nc_Link_Items
-+_nc_Make_Argument
-+_nc_Match_Next_Character_In_Item_Name
-+_nc_New_TopRow_and_CurrentItem
-+_nc_Position_Form_Cursor
-+_nc_Post_Item
-+_nc_Refresh_Current_Field
-+_nc_Set_Current_Field
-+_nc_Set_Form_Page
-+_nc_Show_Menu
-+_nc_Synchronize_Attributes
-+_nc_Synchronize_Options
-+_nc_TABSIZE
-+_nc_TYPE_ALNUM
-+_nc_TYPE_ALPHA
-+_nc_TYPE_ENUM
-+_nc_TYPE_INTEGER
-+_nc_TYPE_IPV4
-+_nc_TYPE_NUMERIC
-+_nc_TYPE_REGEXP
-+_nc_Touchline
-+_nc_Touchpan
-+_nc_Widen_String
-+_nc_Wnoutrefresh
-+_nc__nc_outchars
-+_nc__nc_tputs_trace
-+_nc_access
-+_nc_acs_map
-+_nc_add_to_try
-+_nc_align_termtype
-+_nc_alloc_entry_leaks
-+_nc_altcharset_name
-+_nc_basename
-+_nc_baudrate
-+_nc_boolcodes
-+_nc_boolfnames
-+_nc_boolnames
-+_nc_build_wch
-+_nc_capcmp
-+_nc_captoinfo
-+_nc_captoinfo_leaks
-+_nc_check_termtype
-+_nc_check_termtype2
-+_nc_codes_leaks
-+_nc_comment_end
-+_nc_comment_start
-+_nc_comp_captab_leaks
-+_nc_comp_error_leaks
-+_nc_comp_scan_leaks
-+_nc_copy_entry
-+_nc_copy_termtype
-+_nc_count_outchars
-+_nc_cur_term
-+_nc_curr_col
-+_nc_curr_file_pos
-+_nc_curr_line
-+_nc_curr_token
-+_nc_curscr
-+_nc_curscr_of
-+_nc_dPanel
-+_nc_dStack
-+_nc_db_iterator_leaks
-+_nc_delink_entry
-+_nc_disable_period
-+_nc_do_color
-+_nc_do_color_sp
-+_nc_doalloc
-+_nc_entry_match
-+_nc_env_access
-+_nc_err_abort
-+_nc_eventlist_timeout
-+_nc_expand_try
-+_nc_expanded
-+_nc_fallback
-+_nc_fifo_dump
-+_nc_find_entry
-+_nc_find_type_entry
-+_nc_first_db
-+_nc_first_name
-+_nc_flush
-+_nc_flush_sp
-+_nc_form_cursor
-+_nc_format_slks
-+_nc_free_and_exit
-+_nc_free_and_exit_sp
-+_nc_free_entries
-+_nc_free_entry
-+_nc_free_termtype
-+_nc_free_tic
-+_nc_free_tinfo
-+_nc_free_tparm
-+_nc_freeall
-+_nc_freeall_sp
-+_nc_freewin
-+_nc_fty_generic
-+_nc_generic_fieldtype
-+_nc_get_alias_table
-+_nc_get_cur_term
-+_nc_get_cur_term_sp
-+_nc_get_fieldbuffer
-+_nc_get_hash_info
-+_nc_get_hash_table
-+_nc_get_locale
-+_nc_get_screensize
-+_nc_get_source
-+_nc_get_table
-+_nc_get_token
-+_nc_get_tty_mode
-+_nc_get_tty_mode_sp
-+_nc_get_type
-+_nc_getenv_num
-+_nc_globals
-+_nc_handle_sigwinch
-+_nc_has_mouse
-+_nc_hash_map
-+_nc_hash_map_sp
-+_nc_hashed_db
-+_nc_head
-+_nc_home_terminfo
-+_nc_infotocap
-+_nc_init_acs
-+_nc_init_acs_sp
-+_nc_init_entry
-+_nc_init_keytry
-+_nc_init_pthreads
-+_nc_init_termtype
-+_nc_init_wacs
-+_nc_insert_ch
-+_nc_insert_wch
-+_nc_is_abs_path
-+_nc_is_charable
-+_nc_is_dir_path
-+_nc_is_file_path
-+_nc_keep_tic_dir
-+_nc_keyname
-+_nc_keyname_leaks
-+_nc_keypad
-+_nc_last_db
-+_nc_leaks_tic
-+_nc_leaks_tinfo
-+_nc_linedump
-+_nc_linedump_sp
-+_nc_locale_breaks_acs
-+_nc_locked_tracef
-+_nc_make_oldhash
-+_nc_make_oldhash_sp
-+_nc_makenew
-+_nc_makenew_sp
-+_nc_memmove
-+_nc_menu_cursor_pos
-+_nc_merge_entry
-+_nc_msec_cost
-+_nc_msec_cost_sp
-+_nc_mutex_init
-+_nc_mutex_lock
-+_nc_mutex_trylock
-+_nc_mutex_unlock
-+_nc_mvcur
-+_nc_mvcur_init
-+_nc_mvcur_init_sp
-+_nc_mvcur_resume
-+_nc_mvcur_resume_sp
-+_nc_mvcur_sp
-+_nc_mvcur_wrap
-+_nc_mvcur_wrap_sp
-+_nc_my_visbuf
-+_nc_name_match
-+_nc_names_leaks
-+_nc_newscr
-+_nc_newscr_of
-+_nc_next_db
-+_nc_nulls_sent
-+_nc_numcodes
-+_nc_numfnames
-+_nc_numnames
-+_nc_oldnums
-+_nc_optimize_enable
-+_nc_ospeed
-+_nc_outc_wrapper
-+_nc_outch
-+_nc_outch_sp
-+_nc_panelhook
-+_nc_panelhook_sp
-+_nc_panic_mode
-+_nc_parse_entry
-+_nc_pathlast
-+_nc_prescreen
-+_nc_printf_string
-+_nc_printf_string_sp
-+_nc_ptr_Cols
-+_nc_ptr_Escdelay
-+_nc_ptr_Lines
-+_nc_ptr_Tabsize
-+_nc_push_token
-+_nc_putchar
-+_nc_putchar_sp
-+_nc_putp
-+_nc_putp_flush
-+_nc_putp_flush_sp
-+_nc_putp_sp
-+_nc_read_entry
-+_nc_read_entry_source
-+_nc_read_file_entry
-+_nc_read_termcap
-+_nc_read_termcap_entry
-+_nc_read_termtype
-+_nc_remove_key
-+_nc_remove_string
-+_nc_render
-+_nc_reset_colors
-+_nc_reset_colors_sp
-+_nc_reset_input
-+_nc_resolve_uses
-+_nc_resolve_uses2
-+_nc_retrace_attr_t
-+_nc_retrace_bool
-+_nc_retrace_char
-+_nc_retrace_chtype
-+_nc_retrace_cptr
-+_nc_retrace_cvoid_ptr
-+_nc_retrace_field
-+_nc_retrace_field_ptr
-+_nc_retrace_field_type
-+_nc_retrace_form
-+_nc_retrace_form_hook
-+_nc_retrace_int
-+_nc_retrace_int_attr_t
-+_nc_retrace_item
-+_nc_retrace_item_opts
-+_nc_retrace_item_ptr
-+_nc_retrace_menu
-+_nc_retrace_menu_hook
-+_nc_retrace_menu_opts
-+_nc_retrace_mmask_t
-+_nc_retrace_panel
-+_nc_retrace_ptr
-+_nc_retrace_sp
-+_nc_retrace_unsigned
-+_nc_retrace_void_ptr
-+_nc_retrace_win
-+_nc_ripoffline
-+_nc_ripoffline_sp
-+_nc_rootname
-+_nc_safe_strcat
-+_nc_safe_strcpy
-+_nc_save_str
-+_nc_screen_chain
-+_nc_screen_init
-+_nc_screen_init_sp
-+_nc_screen_of
-+_nc_screen_resume
-+_nc_screen_resume_sp
-+_nc_screen_wrap
-+_nc_screen_wrap_sp
-+_nc_scroll_oldhash
-+_nc_scroll_oldhash_sp
-+_nc_scroll_optimize
-+_nc_scroll_optimize_sp
-+_nc_scroll_window
-+_nc_scrolln
-+_nc_scrolln_sp
-+_nc_set_buffer
-+_nc_set_buffer_sp
-+_nc_set_generic_fieldtype
-+_nc_set_no_padding
-+_nc_set_source
-+_nc_set_tputs_trace
-+_nc_set_tty_mode
-+_nc_set_tty_mode_sp
-+_nc_set_type
-+_nc_set_writedir
-+_nc_setenv_num
-+_nc_setup_tinfo
-+_nc_setupscreen
-+_nc_setupscreen_sp
-+_nc_setupterm
-+_nc_signal_handler
-+_nc_slk_initialize
-+_nc_start_line
-+_nc_stdscr
-+_nc_stdscr_of
-+_nc_str_copy
-+_nc_str_init
-+_nc_str_null
-+_nc_strcodes
-+_nc_strfnames
-+_nc_strict_bsd
-+_nc_strnames
-+_nc_suppress_warnings
-+_nc_synchook
-+_nc_syntax
-+_nc_syserr_abort
-+_nc_tail
-+_nc_tgetent_leaks
-+_nc_tic_dir
-+_nc_tic_expand
-+_nc_tic_written
-+_nc_timed_wait
-+_nc_tinfo_cmdch
-+_nc_tinfo_fkeys
-+_nc_to_char
-+_nc_to_widechar
-+_nc_tparm_analyze
-+_nc_tparm_err
-+_nc_trace_buf
-+_nc_trace_bufcat
-+_nc_trace_mmask_t
-+_nc_trace_tries
-+_nc_trace_ttymode
-+_nc_trace_xnames
-+_nc_tracebits
-+_nc_tracechar
-+_nc_tracemouse
-+_nc_tracing
-+_nc_trans_string
-+_nc_trim_sgr0
-+_nc_ttytype
-+_nc_unctrl
-+_nc_ungetch
-+_nc_unicode_locale
-+_nc_update_screensize
-+_nc_use_tracef
-+_nc_user_definable
-+_nc_varargs
-+_nc_visbuf
-+_nc_visbuf2
-+_nc_visbufn
-+_nc_viscbuf
-+_nc_viscbuf2
-+_nc_viswbuf
-+_nc_viswbuf2
-+_nc_viswbufn
-+_nc_viswibuf
-+_nc_vsscanf
-+_nc_wacs
-+_nc_waddch_nosync
-+_nc_warning
-+_nc_wchstrlen
-+_nc_wcrtomb
-+_nc_wgetch
-+_nc_wrap_entry
-+_nc_write_entry
-+_traceattr
-+_traceattr2
-+_tracecchar_t
-+_tracecchar_t2
-+_tracechar
-+_tracechtype
-+_tracechtype2
-+_tracedump
-+_tracef
-+_tracemouse
-+add_wch
-+add_wchnstr
-+add_wchstr
-+addch
-+addchnstr
-+addchstr
-+addnstr
-+addnwstr
-+addstr
-+addwstr
-+assume_default_colors
-+assume_default_colors_sp
-+attr_get
-+attr_off
-+attr_on
-+attr_set
-+attroff
-+attron
-+attrset
-+baudrate
-+baudrate_sp
-+beep
-+beep_sp
-+bkgd
-+bkgdset
-+bkgrnd
-+bkgrndset
-+border
-+border_set
-+bottom_panel
-+box
-+box_set
-+can_change_color
-+can_change_color_sp
-+cbreak
-+cbreak_sp
-+ceiling_panel
-+chgat
-+clear
-+clearok
-+clrtobot
-+clrtoeol
-+color_content
-+color_content_sp
-+color_set
-+copywin
-+current_field
-+current_item
-+curs_set
-+curs_set_sp
-+curses_version
-+data_ahead
-+data_behind
-+def_prog_mode
-+def_prog_mode_sp
-+def_shell_mode
-+def_shell_mode_sp
-+define_key
-+define_key_sp
-+del_curterm
-+del_curterm_sp
-+del_panel
-+delay_output
-+delay_output_sp
-+delch
-+deleteln
-+delscreen
-+delwin
-+derwin
-+doupdate
-+doupdate_sp
-+dup_field
-+dupwin
-+dynamic_field_info
-+echo
-+echo_sp
-+echo_wchar
-+echochar
-+endwin
-+endwin_sp
-+erase
-+erasechar
-+erasechar_sp
-+erasewchar
-+field_arg
-+field_back
-+field_buffer
-+field_count
-+field_fore
-+field_index
-+field_info
-+field_init
-+field_just
-+field_opts
-+field_opts_off
-+field_opts_on
-+field_pad
-+field_status
-+field_term
-+field_type
-+field_userptr
-+filter
-+filter_sp
-+flash
-+flash_sp
-+flushinp
-+flushinp_sp
-+form_driver
-+form_driver_w
-+form_fields
-+form_init
-+form_opts
-+form_opts_off
-+form_opts_on
-+form_page
-+form_request_by_name
-+form_request_name
-+form_sub
-+form_term
-+form_userptr
-+form_win
-+free_field
-+free_fieldtype
-+free_form
-+free_item
-+free_menu
-+get_escdelay
-+get_escdelay_sp
-+get_wch
-+get_wstr
-+getattrs
-+getbegx
-+getbegy
-+getbkgd
-+getbkgrnd
-+getcchar
-+getch
-+getcurx
-+getcury
-+getmaxx
-+getmaxy
-+getmouse
-+getmouse_sp
-+getn_wstr
-+getnstr
-+getparx
-+getpary
-+getstr
-+getwin
-+getwin_sp
-+ground_panel
-+halfdelay
-+halfdelay_sp
-+has_colors
-+has_colors_sp
-+has_ic
-+has_ic_sp
-+has_il
-+has_il_sp
-+has_key
-+has_key_sp
-+has_mouse
-+has_mouse_sp
-+hide_panel
-+hline
-+hline_set
-+idcok
-+idlok
-+immedok
-+in_wch
-+in_wchnstr
-+in_wchstr
-+inch
-+inchnstr
-+inchstr
-+init_color
-+init_color_sp
-+init_pair
-+init_pair_sp
-+initscr
-+innstr
-+innwstr
-+ins_nwstr
-+ins_wch
-+ins_wstr
-+insch
-+insdelln
-+insertln
-+insnstr
-+insstr
-+instr
-+intrflush
-+intrflush_sp
-+inwstr
-+is_cleared
-+is_idcok
-+is_idlok
-+is_immedok
-+is_keypad
-+is_leaveok
-+is_linetouched
-+is_nodelay
-+is_notimeout
-+is_pad
-+is_scrollok
-+is_subwin
-+is_syncok
-+is_term_resized
-+is_term_resized_sp
-+is_wintouched
-+isendwin
-+isendwin_sp
-+item_count
-+item_description
-+item_index
-+item_init
-+item_name
-+item_opts
-+item_opts_off
-+item_opts_on
-+item_term
-+item_userptr
-+item_value
-+item_visible
-+key_defined
-+key_defined_sp
-+key_name
-+keybound
-+keybound_sp
-+keyname
-+keyname_sp
-+keyok
-+keyok_sp
-+keypad
-+killchar
-+killchar_sp
-+killwchar
-+leaveok
-+link_field
-+link_fieldtype
-+longname
-+longname_sp
-+mcprint
-+mcprint_sp
-+menu_back
-+menu_driver
-+menu_fore
-+menu_format
-+menu_grey
-+menu_init
-+menu_items
-+menu_mark
-+menu_opts
-+menu_opts_off
-+menu_opts_on
-+menu_pad
-+menu_pattern
-+menu_request_by_name
-+menu_request_name
-+menu_spacing
-+menu_sub
-+menu_term
-+menu_userptr
-+menu_win
-+meta
-+mouse_trafo
-+mouseinterval
-+mouseinterval_sp
-+mousemask
-+mousemask_sp
-+move
-+move_field
-+move_panel
-+mvadd_wch
-+mvadd_wchnstr
-+mvadd_wchstr
-+mvaddch
-+mvaddchnstr
-+mvaddchstr
-+mvaddnstr
-+mvaddnwstr
-+mvaddstr
-+mvaddwstr
-+mvchgat
-+mvcur
-+mvcur_sp
-+mvdelch
-+mvderwin
-+mvget_wch
-+mvget_wstr
-+mvgetch
-+mvgetn_wstr
-+mvgetnstr
-+mvgetstr
-+mvhline
-+mvhline_set
-+mvin_wch
-+mvin_wchnstr
-+mvin_wchstr
-+mvinch
-+mvinchnstr
-+mvinchstr
-+mvinnstr
-+mvinnwstr
-+mvins_nwstr
-+mvins_wch
-+mvins_wstr
-+mvinsch
-+mvinsnstr
-+mvinsstr
-+mvinstr
-+mvinwstr
-+mvprintw
-+mvscanw
-+mvvline
-+mvvline_set
-+mvwadd_wch
-+mvwadd_wchnstr
-+mvwadd_wchstr
-+mvwaddch
-+mvwaddchnstr
-+mvwaddchstr
-+mvwaddnstr
-+mvwaddnwstr
-+mvwaddstr
-+mvwaddwstr
-+mvwchgat
-+mvwdelch
-+mvwget_wch
-+mvwget_wstr
-+mvwgetch
-+mvwgetn_wstr
-+mvwgetnstr
-+mvwgetstr
-+mvwhline
-+mvwhline_set
-+mvwin
-+mvwin_wch
-+mvwin_wchnstr
-+mvwin_wchstr
-+mvwinch
-+mvwinchnstr
-+mvwinchstr
-+mvwinnstr
-+mvwinnwstr
-+mvwins_nwstr
-+mvwins_wch
-+mvwins_wstr
-+mvwinsch
-+mvwinsnstr
-+mvwinsstr
-+mvwinstr
-+mvwinwstr
-+mvwprintw
-+mvwscanw
-+mvwvline
-+mvwvline_set
-+napms
-+napms_sp
-+new_field
-+new_fieldtype
-+new_form
-+new_form_sp
-+new_item
-+new_menu
-+new_menu_sp
-+new_page
-+new_panel
-+new_prescr
-+newpad
-+newpad_sp
-+newterm
-+newterm_sp
-+newwin
-+newwin_sp
-+nl
-+nl_sp
-+nocbreak
-+nocbreak_sp
-+nodelay
-+noecho
-+noecho_sp
-+nofilter
-+nofilter_sp
-+nonl
-+nonl_sp
-+noqiflush
-+noqiflush_sp
-+noraw
-+noraw_sp
-+notimeout
-+ospeed
-+overlay
-+overwrite
-+pair_content
-+pair_content_sp
-+panel_above
-+panel_below
-+panel_hidden
-+panel_userptr
-+panel_window
-+pecho_wchar
-+pechochar
-+pnoutrefresh
-+pos_form_cursor
-+pos_menu_cursor
-+post_form
-+post_menu
-+prefresh
-+printw
-+putp
-+putp_sp
-+putwin
-+qiflush
-+qiflush_sp
-+raw
-+raw_sp
-+redrawwin
-+refresh
-+replace_panel
-+reset_prog_mode
-+reset_prog_mode_sp
-+reset_shell_mode
-+reset_shell_mode_sp
-+resetty
-+resetty_sp
-+resize_term
-+resize_term_sp
-+resizeterm
-+resizeterm_sp
-+restartterm
-+restartterm_sp
-+ripoffline
-+ripoffline_sp
-+savetty
-+savetty_sp
-+scale_form
-+scale_menu
-+scanw
-+scr_dump
-+scr_init
-+scr_init_sp
-+scr_restore
-+scr_restore_sp
-+scr_set
-+scr_set_sp
-+scrl
-+scroll
-+scrollok
-+set_current_field
-+set_current_item
-+set_curterm
-+set_curterm_sp
-+set_escdelay
-+set_escdelay_sp
-+set_field_back
-+set_field_buffer
-+set_field_fore
-+set_field_init
-+set_field_just
-+set_field_opts
-+set_field_pad
-+set_field_status
-+set_field_term
-+set_field_type
-+set_field_userptr
-+set_fieldtype_arg
-+set_fieldtype_choice
-+set_form_fields
-+set_form_init
-+set_form_opts
-+set_form_page
-+set_form_sub
-+set_form_term
-+set_form_userptr
-+set_form_win
-+set_item_init
-+set_item_opts
-+set_item_term
-+set_item_userptr
-+set_item_value
-+set_max_field
-+set_menu_back
-+set_menu_fore
-+set_menu_format
-+set_menu_grey
-+set_menu_init
-+set_menu_items
-+set_menu_mark
-+set_menu_opts
-+set_menu_pad
-+set_menu_pattern
-+set_menu_spacing
-+set_menu_sub
-+set_menu_term
-+set_menu_userptr
-+set_menu_win
-+set_new_page
-+set_panel_userptr
-+set_tabsize
-+set_tabsize_sp
-+set_term
-+set_top_row
-+setcchar
-+setscrreg
-+setupterm
-+show_panel
-+slk_attr
-+slk_attr_off
-+slk_attr_on
-+slk_attr_set
-+slk_attr_set_sp
-+slk_attr_sp
-+slk_attroff
-+slk_attroff_sp
-+slk_attron
-+slk_attron_sp
-+slk_attrset
-+slk_attrset_sp
-+slk_clear
-+slk_clear_sp
-+slk_color
-+slk_color_sp
-+slk_init
-+slk_init_sp
-+slk_label
-+slk_label_sp
-+slk_noutrefresh
-+slk_noutrefresh_sp
-+slk_refresh
-+slk_refresh_sp
-+slk_restore
-+slk_restore_sp
-+slk_set
-+slk_set_sp
-+slk_touch
-+slk_touch_sp
-+slk_wset
-+standend
-+standout
-+start_color
-+start_color_sp
-+subpad
-+subwin
-+syncok
-+term_attrs
-+term_attrs_sp
-+termattrs
-+termattrs_sp
-+termname
-+termname_sp
-+tgetent
-+tgetent_sp
-+tgetflag
-+tgetflag_sp
-+tgetnum
-+tgetnum_sp
-+tgetstr
-+tgetstr_sp
-+tgoto
-+tigetflag
-+tigetflag_sp
-+tigetnum
-+tigetnum_sp
-+tigetstr
-+tigetstr_sp
-+timeout
-+tiparm
-+top_panel
-+top_row
-+touchline
-+touchwin
-+tparm
-+tputs
-+tputs_sp
-+trace
-+typeahead
-+typeahead_sp
-+unctrl
-+unctrl_sp
-+unget_wch
-+unget_wch_sp
-+ungetch
-+ungetch_sp
-+ungetmouse
-+ungetmouse_sp
-+unpost_form
-+unpost_menu
-+untouchwin
-+update_panels
-+update_panels_sp
-+use_default_colors
-+use_default_colors_sp
-+use_env
-+use_env_sp
-+use_extended_names
-+use_legacy_coding
-+use_legacy_coding_sp
-+use_screen
-+use_tioctl
-+use_tioctl_sp
-+use_window
-+vid_attr
-+vid_attr_sp
-+vid_puts
-+vid_puts_sp
-+vidattr
-+vidattr_sp
-+vidputs
-+vidputs_sp
-+vline
-+vline_set
-+vw_printw
-+vw_scanw
-+vwprintw
-+vwscanw
-+wadd_wch
-+wadd_wchnstr
-+wadd_wchstr
-+waddch
-+waddchnstr
-+waddchstr
-+waddnstr
-+waddnwstr
-+waddstr
-+waddwstr
-+wattr_get
-+wattr_off
-+wattr_on
-+wattr_set
-+wattroff
-+wattron
-+wattrset
-+wbkgd
-+wbkgdset
-+wbkgrnd
-+wbkgrndset
-+wborder
-+wborder_set
-+wchgat
-+wclear
-+wclrtobot
-+wclrtoeol
-+wcolor_set
-+wcursyncup
-+wdelch
-+wdeleteln
-+wecho_wchar
-+wechochar
-+wenclose
-+werase
-+wget_wch
-+wget_wstr
-+wgetbkgrnd
-+wgetch
-+wgetch_events
-+wgetdelay
-+wgetn_wstr
-+wgetnstr
-+wgetnstr_events
-+wgetparent
-+wgetscrreg
-+wgetstr
-+whline
-+whline_set
-+win_wch
-+win_wchnstr
-+win_wchstr
-+winch
-+winchnstr
-+winchstr
-+winnstr
-+winnwstr
-+wins_nwstr
-+wins_wch
-+wins_wstr
-+winsch
-+winsdelln
-+winsertln
-+winsnstr
-+winsstr
-+winstr
-+winwstr
-+wmouse_trafo
-+wmove
-+wnoutrefresh
-+wprintw
-+wredrawln
-+wrefresh
-+wresize
-+wscanw
-+wscrl
-+wsetscrreg
-+wstandend
-+wstandout
-+wsyncdown
-+wsyncup
-+wtimeout
-+wtouchln
-+wunctrl
-+wunctrl_sp
-+wvline
-+wvline_set
-Index: package/ncursesw.map
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/ncursesw.map 2014-12-06 22:59:11.000000000 +0000
-@@ -0,0 +1,1220 @@
-+# $Id: ncursesw.map,v 1.22 2014/12/06 22:59:11 tom Exp $
-+# script for shared library symbol-versioning using ld
-+#
-+# This file was generated by ncu-mapsyms
-+# Configure options (merged 5 builds):
-+# 'CFLAGS=-O'
-+# --disable-echo
-+# --disable-getcap
-+# --disable-leaks
-+# --disable-root-environ
-+# --disable-termcap
-+# --enable-getcap
-+# --enable-getcap-cache
-+# --enable-hard-tabs
-+# --enable-interop
-+# --enable-rpath
-+# --enable-sp-funcs
-+# --enable-termcap
-+# --enable-warnings
-+# --enable-wgetch-events
-+# --enable-widec
-+# --verbose
-+# --with-shared
-+# --with-termlib
-+# --with-ticlib
-+# --with-trace
-+# --with-warnings
-+# --without-ada
-+# --without-debug
-+# --without-normal
-+#
-+
-+NCURSES_TIC_5.0.19991023 {
-+ global:
-+ _nc_capcmp;
-+ _nc_check_termtype;
-+ _nc_entry_match;
-+ _nc_find_type_entry;
-+ _nc_get_table;
-+ _nc_infotocap;
-+ _nc_read_entry_source;
-+ _nc_reset_input;
-+ _nc_resolve_uses;
-+ _nc_set_writedir;
-+ _nc_syntax;
-+ _nc_tic_expand;
-+ _nc_tic_written;
-+ _nc_trans_string;
-+ _nc_write_entry;
-+ local:
-+ _nc_captoinfo;
-+ _nc_comment_end;
-+ _nc_comment_start;
-+ _nc_copy_entry;
-+ _nc_curr_file_pos;
-+ _nc_curr_token;
-+ _nc_get_token;
-+ _nc_init_entry;
-+ _nc_merge_entry;
-+ _nc_panic_mode;
-+ _nc_parse_entry;
-+ _nc_push_token;
-+ _nc_save_str;
-+ _nc_start_line;
-+ _nc_wrap_entry;
-+};
-+
-+NCURSES_TIC_5.1.20000708 {
-+ global:
-+ _nc_disable_period;
-+} NCURSES_TIC_5.0.19991023;
-+
-+NCURSES_TIC_5.5.20051010 {
-+ global:
-+ _nc_alloc_entry_leaks;
-+ _nc_captoinfo_leaks;
-+ _nc_check_termtype2;
-+ _nc_comp_scan_leaks;
-+ _nc_resolve_uses2;
-+} NCURSES_TIC_5.1.20000708;
-+
-+NCURSES_TIC_5.7.20081102 {
-+ global:
-+ _nc_free_tic;
-+ _nc_get_alias_table;
-+ local:
-+ _nc_comp_captab_leaks;
-+ _nc_leaks_tic;
-+} NCURSES_TIC_5.5.20051010;
-+
-+NCURSES_TIC_5.9.current {
-+ global:
-+ _nc_strict_bsd;
-+} NCURSES_TIC_5.7.20081102;
-+
-+NCURSES_TINFO_5.0.19991023 {
-+ global:
-+ BC;
-+ COLS;
-+ LINES;
-+ PC;
-+ SP;
-+ TABSIZE;
-+ UP;
-+ _nc_access;
-+ _nc_add_to_try;
-+ _nc_copy_termtype;
-+ _nc_curr_col;
-+ _nc_curr_line;
-+ _nc_doalloc;
-+ _nc_err_abort;
-+ _nc_fallback;
-+ _nc_find_entry;
-+ _nc_first_name;
-+ _nc_free_entries;
-+ _nc_free_termtype;
-+ _nc_free_tparm;
-+ _nc_get_hash_table;
-+ _nc_get_tty_mode;
-+ _nc_get_type;
-+ _nc_getenv_num;
-+ _nc_head;
-+ _nc_home_terminfo;
-+ _nc_info_hash_table;
-+ _nc_init_acs;
-+ _nc_keep_tic_dir;
-+ _nc_keypad;
-+ _nc_name_match;
-+ _nc_outch;
-+ _nc_read_entry;
-+ _nc_read_file_entry;
-+ _nc_screen_chain;
-+ _nc_set_buffer;
-+ _nc_set_source;
-+ _nc_set_tty_mode;
-+ _nc_set_type;
-+ _nc_suppress_warnings;
-+ _nc_syserr_abort;
-+ _nc_tail;
-+ _nc_tic_dir;
-+ _nc_timed_wait;
-+ _nc_trace_buf;
-+ _nc_tracing;
-+ _nc_update_screensize;
-+ _nc_visbuf;
-+ _nc_visbuf2;
-+ _nc_warning;
-+ _tracechar;
-+ acs_map;
-+ baudrate;
-+ boolcodes;
-+ boolfnames;
-+ boolnames;
-+ cbreak;
-+ cur_term;
-+ curs_set;
-+ curscr;
-+ curses_version;
-+ def_prog_mode;
-+ def_shell_mode;
-+ define_key;
-+ del_curterm;
-+ delay_output;
-+ erasechar;
-+ flushinp;
-+ halfdelay;
-+ has_ic;
-+ has_il;
-+ has_key;
-+ idcok;
-+ idlok;
-+ intrflush;
-+ keybound;
-+ keyname;
-+ keyok;
-+ keypad;
-+ killchar;
-+ longname;
-+ meta;
-+ napms;
-+ newscr;
-+ nocbreak;
-+ nodelay;
-+ noqiflush;
-+ noraw;
-+ notimeout;
-+ numcodes;
-+ numfnames;
-+ numnames;
-+ ospeed;
-+ putp;
-+ qiflush;
-+ raw;
-+ reset_prog_mode;
-+ reset_shell_mode;
-+ resetty;
-+ savetty;
-+ set_curterm;
-+ setupterm;
-+ stdscr;
-+ strcodes;
-+ strfnames;
-+ strnames;
-+ termname;
-+ tgetent;
-+ tgetflag;
-+ tgetnum;
-+ tgetstr;
-+ tgoto;
-+ tigetflag;
-+ tigetnum;
-+ tigetstr;
-+ tparm;
-+ tputs;
-+ trace;
-+ ttytype;
-+ typeahead;
-+ unctrl;
-+ use_env;
-+ wtimeout;
-+ local:
-+ _nc_baudrate;
-+ _nc_cap_hash_table;
-+ _nc_capalias_table;
-+ _nc_expand_try;
-+ _nc_infoalias_table;
-+ _nc_init_keytry;
-+ _nc_key_names;
-+ _nc_nulls_sent;
-+ _nc_ospeed;
-+ _nc_read_termcap;
-+ _nc_read_termcap_entry;
-+ _nc_remove_key;
-+ _nc_remove_string;
-+ _nc_trace_tries;
-+ _nc_tracebits;
-+};
-+
-+NCURSES_TINFO_5.1.20000708 {
-+ global:
-+ _nc_align_termtype;
-+ _nc_flush;
-+ _nc_tinfo_fkeys;
-+ _nc_user_definable;
-+ _nc_utf8_outch;
-+ use_extended_names;
-+} NCURSES_TINFO_5.0.19991023;
-+
-+NCURSES_TINFO_5.2.20001021 {
-+ global:
-+ _nc_basename;
-+ _nc_env_access;
-+ _nc_safe_strcat;
-+ _nc_safe_strcpy;
-+ _nc_str_copy;
-+ _nc_str_init;
-+ _nc_str_null;
-+} NCURSES_TINFO_5.1.20000708;
-+
-+NCURSES_TINFO_5.3.20021019 {
-+ global:
-+ _nc_rootname;
-+ _nc_tparm_err;
-+ _nc_visbufn;
-+} NCURSES_TINFO_5.2.20001021;
-+
-+NCURSES_TINFO_5.4.20040208 {
-+ global:
-+ _nc_altcharset_name;
-+ _nc_get_locale;
-+ _nc_locale_breaks_acs;
-+ _nc_outchars;
-+ _nc_pathlast;
-+ _nc_retrace_attr_t;
-+ _nc_retrace_bool;
-+ _nc_retrace_chtype;
-+ _nc_retrace_int;
-+ _nc_retrace_ptr;
-+ _nc_retrace_sp;
-+ _nc_retrace_unsigned;
-+ _nc_retrace_win;
-+ _nc_tparm_analyze;
-+ _nc_tputs_trace;
-+ _nc_trace_bufcat;
-+ _nc_unicode_locale;
-+ _nc_viswbuf;
-+ _nc_viswbufn;
-+ _traceattr;
-+ _traceattr2;
-+ _tracecchar_t;
-+ _tracecchar_t2;
-+ _tracechtype;
-+ _tracechtype2;
-+ _tracef;
-+ key_defined;
-+ local:
-+ _nc_trace_ttymode;
-+ _nc_viswbuf2;
-+} NCURSES_TINFO_5.3.20021019;
-+
-+NCURSES_TINFO_5.5.20051010 {
-+ global:
-+ _nc_get_source;
-+ _nc_retrace_cptr;
-+ _nc_retrace_cvoid_ptr;
-+ _nc_retrace_void_ptr;
-+ _nc_setupterm;
-+ _nc_trim_sgr0;
-+ _nc_viswibuf;
-+ local:
-+ _nc_delink_entry;
-+ _nc_free_entry;
-+} NCURSES_TINFO_5.4.20040208;
-+
-+NCURSES_TINFO_5.6.20061217 {
-+ global:
-+ _nc_eventlist_timeout;
-+ _nc_first_db;
-+ _nc_handle_sigwinch;
-+ _nc_is_abs_path;
-+ _nc_is_dir_path;
-+ _nc_is_file_path;
-+ _nc_keyname_leaks;
-+ _nc_last_db;
-+ _nc_next_db;
-+ _nc_tgetent_leaks;
-+ _nc_viscbuf;
-+ local:
-+ _nc_hashed_db;
-+ _nc_read_termtype;
-+ _nc_viscbuf2;
-+} NCURSES_TINFO_5.5.20051010;
-+
-+NCURSES_TINFO_5.7.20081102 {
-+ global:
-+ _nc_free_tinfo;
-+ _nc_get_screensize;
-+ _nc_globals;
-+ _nc_leaks_tinfo;
-+ _nc_prescreen;
-+ _nc_screen_of;
-+ _nc_set_no_padding;
-+ _nc_tracechar;
-+ set_tabsize;
-+ local:
-+ _nc_keyname;
-+ _nc_unctrl;
-+} NCURSES_TINFO_5.6.20061217;
-+
-+NCURSES_TINFO_5.8.20110226 {
-+ global:
-+ _nc_flush_sp;
-+ _nc_get_tty_mode_sp;
-+ _nc_init_acs_sp;
-+ _nc_outc_wrapper;
-+ _nc_outch_sp;
-+ _nc_putp;
-+ _nc_putp_flush;
-+ _nc_putp_flush_sp;
-+ _nc_putp_sp;
-+ _nc_retrace_int_attr_t;
-+ _nc_set_buffer_sp;
-+ _nc_set_tty_mode_sp;
-+ baudrate_sp;
-+ cbreak_sp;
-+ curs_set_sp;
-+ def_prog_mode_sp;
-+ def_shell_mode_sp;
-+ define_key_sp;
-+ del_curterm_sp;
-+ delay_output_sp;
-+ erasechar_sp;
-+ flushinp_sp;
-+ halfdelay_sp;
-+ has_ic_sp;
-+ has_il_sp;
-+ has_key_sp;
-+ intrflush_sp;
-+ key_defined_sp;
-+ keybound_sp;
-+ keyname_sp;
-+ keyok_sp;
-+ killchar_sp;
-+ napms_sp;
-+ new_prescr;
-+ nocbreak_sp;
-+ noqiflush_sp;
-+ noraw_sp;
-+ putp_sp;
-+ qiflush_sp;
-+ raw_sp;
-+ reset_prog_mode_sp;
-+ reset_shell_mode_sp;
-+ resetty_sp;
-+ savetty_sp;
-+ set_curterm_sp;
-+ set_tabsize_sp;
-+ termname_sp;
-+ tgetent_sp;
-+ tgetflag_sp;
-+ tgetnum_sp;
-+ tgetstr_sp;
-+ tigetflag_sp;
-+ tigetnum_sp;
-+ tigetstr_sp;
-+ tiparm;
-+ tputs_sp;
-+ typeahead_sp;
-+ unctrl_sp;
-+ use_env_sp;
-+ local:
-+ _nc_get_hash_info;
-+ _nc_retrace_char;
-+ _nc_setup_tinfo;
-+ _nc_tinfo_cmdch;
-+} NCURSES_TINFO_5.7.20081102;
-+
-+NCURSES_TINFO_5.9.current {
-+ global:
-+ _nc_init_termtype;
-+ _nc_putchar;
-+ _nc_putchar_sp;
-+ use_tioctl;
-+ use_tioctl_sp;
-+ local:
-+ _nc_comp_error_leaks;
-+ _nc_db_iterator_leaks;
-+ _nc_setenv_num;
-+} NCURSES_TINFO_5.8.20110226;
-+
-+NCURSESW_5.1.20000708 {
-+ global:
-+ COLORS;
-+ COLOR_PAIR;
-+ COLOR_PAIRS;
-+ ESCDELAY;
-+ PAIR_NUMBER;
-+ TYPE_ALNUM;
-+ TYPE_ALPHA;
-+ TYPE_ENUM;
-+ TYPE_INTEGER;
-+ TYPE_IPV4;
-+ TYPE_NUMERIC;
-+ TYPE_REGEXP;
-+ _nc_free_and_exit;
-+ _nc_panelhook;
-+ _nc_ripoffline;
-+ addch;
-+ addchnstr;
-+ addchstr;
-+ addnstr;
-+ addstr;
-+ assume_default_colors;
-+ attr_get;
-+ attr_off;
-+ attr_on;
-+ attr_set;
-+ attroff;
-+ attron;
-+ attrset;
-+ beep;
-+ bkgd;
-+ bkgdset;
-+ border;
-+ bottom_panel;
-+ box;
-+ can_change_color;
-+ chgat;
-+ clear;
-+ clearok;
-+ clrtobot;
-+ clrtoeol;
-+ color_content;
-+ color_set;
-+ copywin;
-+ current_field;
-+ current_item;
-+ data_ahead;
-+ data_behind;
-+ del_panel;
-+ delch;
-+ deleteln;
-+ delscreen;
-+ delwin;
-+ derwin;
-+ doupdate;
-+ dup_field;
-+ dupwin;
-+ dynamic_field_info;
-+ echo;
-+ echochar;
-+ endwin;
-+ erase;
-+ field_arg;
-+ field_back;
-+ field_buffer;
-+ field_count;
-+ field_fore;
-+ field_index;
-+ field_info;
-+ field_init;
-+ field_just;
-+ field_opts;
-+ field_opts_off;
-+ field_opts_on;
-+ field_pad;
-+ field_status;
-+ field_term;
-+ field_type;
-+ field_userptr;
-+ filter;
-+ flash;
-+ form_driver;
-+ form_fields;
-+ form_init;
-+ form_opts;
-+ form_opts_off;
-+ form_opts_on;
-+ form_page;
-+ form_request_by_name;
-+ form_request_name;
-+ form_sub;
-+ form_term;
-+ form_userptr;
-+ form_win;
-+ free_field;
-+ free_fieldtype;
-+ free_form;
-+ free_item;
-+ free_menu;
-+ getbkgd;
-+ getch;
-+ getmouse;
-+ getnstr;
-+ getstr;
-+ getwin;
-+ has_colors;
-+ hide_panel;
-+ hline;
-+ immedok;
-+ inch;
-+ inchnstr;
-+ inchstr;
-+ init_color;
-+ init_pair;
-+ initscr;
-+ innstr;
-+ insch;
-+ insdelln;
-+ insertln;
-+ insnstr;
-+ insstr;
-+ instr;
-+ is_linetouched;
-+ is_wintouched;
-+ isendwin;
-+ item_count;
-+ item_description;
-+ item_index;
-+ item_init;
-+ item_name;
-+ item_opts;
-+ item_opts_off;
-+ item_opts_on;
-+ item_term;
-+ item_userptr;
-+ item_value;
-+ item_visible;
-+ leaveok;
-+ link_field;
-+ link_fieldtype;
-+ mcprint;
-+ menu_back;
-+ menu_driver;
-+ menu_fore;
-+ menu_format;
-+ menu_grey;
-+ menu_init;
-+ menu_items;
-+ menu_mark;
-+ menu_opts;
-+ menu_opts_off;
-+ menu_opts_on;
-+ menu_pad;
-+ menu_pattern;
-+ menu_request_by_name;
-+ menu_request_name;
-+ menu_spacing;
-+ menu_sub;
-+ menu_term;
-+ menu_userptr;
-+ menu_win;
-+ mouse_trafo;
-+ mouseinterval;
-+ mousemask;
-+ move;
-+ move_field;
-+ move_panel;
-+ mvaddch;
-+ mvaddchnstr;
-+ mvaddchstr;
-+ mvaddnstr;
-+ mvaddstr;
-+ mvchgat;
-+ mvcur;
-+ mvdelch;
-+ mvderwin;
-+ mvgetch;
-+ mvgetnstr;
-+ mvgetstr;
-+ mvhline;
-+ mvinch;
-+ mvinchnstr;
-+ mvinchstr;
-+ mvinnstr;
-+ mvinsch;
-+ mvinsnstr;
-+ mvinsstr;
-+ mvinstr;
-+ mvprintw;
-+ mvscanw;
-+ mvvline;
-+ mvwaddch;
-+ mvwaddchnstr;
-+ mvwaddchstr;
-+ mvwaddnstr;
-+ mvwaddstr;
-+ mvwchgat;
-+ mvwdelch;
-+ mvwgetch;
-+ mvwgetnstr;
-+ mvwgetstr;
-+ mvwhline;
-+ mvwin;
-+ mvwinch;
-+ mvwinchnstr;
-+ mvwinchstr;
-+ mvwinnstr;
-+ mvwinsch;
-+ mvwinsnstr;
-+ mvwinsstr;
-+ mvwinstr;
-+ mvwprintw;
-+ mvwscanw;
-+ mvwvline;
-+ new_field;
-+ new_fieldtype;
-+ new_form;
-+ new_item;
-+ new_menu;
-+ new_page;
-+ new_panel;
-+ newpad;
-+ newterm;
-+ newwin;
-+ nl;
-+ noecho;
-+ nonl;
-+ overlay;
-+ overwrite;
-+ pair_content;
-+ panel_above;
-+ panel_below;
-+ panel_hidden;
-+ panel_userptr;
-+ panel_window;
-+ pechochar;
-+ pnoutrefresh;
-+ pos_form_cursor;
-+ pos_menu_cursor;
-+ post_form;
-+ post_menu;
-+ prefresh;
-+ printw;
-+ putwin;
-+ redrawwin;
-+ refresh;
-+ replace_panel;
-+ resizeterm;
-+ restartterm;
-+ ripoffline;
-+ scale_form;
-+ scale_menu;
-+ scanw;
-+ scr_dump;
-+ scr_init;
-+ scr_restore;
-+ scr_set;
-+ scrl;
-+ scroll;
-+ scrollok;
-+ set_current_field;
-+ set_current_item;
-+ set_field_back;
-+ set_field_buffer;
-+ set_field_fore;
-+ set_field_init;
-+ set_field_just;
-+ set_field_opts;
-+ set_field_pad;
-+ set_field_status;
-+ set_field_term;
-+ set_field_type;
-+ set_field_userptr;
-+ set_fieldtype_arg;
-+ set_fieldtype_choice;
-+ set_form_fields;
-+ set_form_init;
-+ set_form_opts;
-+ set_form_page;
-+ set_form_sub;
-+ set_form_term;
-+ set_form_userptr;
-+ set_form_win;
-+ set_item_init;
-+ set_item_opts;
-+ set_item_term;
-+ set_item_userptr;
-+ set_item_value;
-+ set_max_field;
-+ set_menu_back;
-+ set_menu_fore;
-+ set_menu_format;
-+ set_menu_grey;
-+ set_menu_init;
-+ set_menu_items;
-+ set_menu_mark;
-+ set_menu_opts;
-+ set_menu_pad;
-+ set_menu_pattern;
-+ set_menu_spacing;
-+ set_menu_sub;
-+ set_menu_term;
-+ set_menu_userptr;
-+ set_menu_win;
-+ set_new_page;
-+ set_panel_userptr;
-+ set_term;
-+ set_top_row;
-+ setscrreg;
-+ show_panel;
-+ slk_attr;
-+ slk_attr_off;
-+ slk_attr_on;
-+ slk_attr_set;
-+ slk_attroff;
-+ slk_attron;
-+ slk_attrset;
-+ slk_clear;
-+ slk_color;
-+ slk_init;
-+ slk_label;
-+ slk_noutrefresh;
-+ slk_refresh;
-+ slk_restore;
-+ slk_set;
-+ slk_touch;
-+ standend;
-+ standout;
-+ start_color;
-+ subpad;
-+ subwin;
-+ syncok;
-+ termattrs;
-+ timeout;
-+ top_panel;
-+ top_row;
-+ touchline;
-+ touchwin;
-+ ungetch;
-+ ungetmouse;
-+ unpost_form;
-+ unpost_menu;
-+ untouchwin;
-+ update_panels;
-+ use_default_colors;
-+ vid_attr;
-+ vidattr;
-+ vidputs;
-+ vline;
-+ vw_printw;
-+ vw_scanw;
-+ vwprintw;
-+ vwscanw;
-+ waddch;
-+ waddchnstr;
-+ waddchstr;
-+ waddnstr;
-+ waddstr;
-+ wattr_get;
-+ wattr_off;
-+ wattr_on;
-+ wattr_set;
-+ wattroff;
-+ wattron;
-+ wattrset;
-+ wbkgd;
-+ wbkgdset;
-+ wborder;
-+ wchgat;
-+ wclear;
-+ wclrtobot;
-+ wclrtoeol;
-+ wcolor_set;
-+ wcursyncup;
-+ wdelch;
-+ wdeleteln;
-+ wechochar;
-+ wenclose;
-+ werase;
-+ wgetch;
-+ wgetnstr;
-+ wgetstr;
-+ whline;
-+ winch;
-+ winchnstr;
-+ winchstr;
-+ winnstr;
-+ winsch;
-+ winsdelln;
-+ winsertln;
-+ winsnstr;
-+ winsstr;
-+ winstr;
-+ wmouse_trafo;
-+ wmove;
-+ wnoutrefresh;
-+ wprintw;
-+ wredrawln;
-+ wrefresh;
-+ wresize;
-+ wscanw;
-+ wscrl;
-+ wsetscrreg;
-+ wstandend;
-+ wstandout;
-+ wsyncdown;
-+ wsyncup;
-+ wtouchln;
-+ wvline;
-+ local:
-+ _nc_Calculate_Item_Length_and_Width;
-+ _nc_Connect_Items;
-+ _nc_Copy_Argument;
-+ _nc_Copy_Type;
-+ _nc_Default_Field;
-+ _nc_Default_FieldType;
-+ _nc_Default_Form;
-+ _nc_Default_Item;
-+ _nc_Default_Menu;
-+ _nc_Disconnect_Items;
-+ _nc_Draw_Menu;
-+ _nc_First_Active_Field;
-+ _nc_Free_Argument;
-+ _nc_Free_Type;
-+ _nc_Internal_Validation;
-+ _nc_Link_Items;
-+ _nc_Make_Argument;
-+ _nc_Match_Next_Character_In_Item_Name;
-+ _nc_New_TopRow_and_CurrentItem;
-+ _nc_Position_Form_Cursor;
-+ _nc_Post_Item;
-+ _nc_Refresh_Current_Field;
-+ _nc_Set_Current_Field;
-+ _nc_Set_Form_Page;
-+ _nc_Show_Menu;
-+ _nc_Synchronize_Attributes;
-+ _nc_Synchronize_Options;
-+ _nc_background;
-+ _nc_do_color;
-+ _nc_expanded;
-+ _nc_freeall;
-+ _nc_freewin;
-+ _nc_has_mouse;
-+ _nc_hash_map;
-+ _nc_make_oldhash;
-+ _nc_makenew;
-+ _nc_memmove;
-+ _nc_menu_cursor_pos;
-+ _nc_msec_cost;
-+ _nc_mvcur_init;
-+ _nc_mvcur_resume;
-+ _nc_mvcur_wrap;
-+ _nc_oldnums;
-+ _nc_outstr;
-+ _nc_printf_string;
-+ _nc_render;
-+ _nc_screen_init;
-+ _nc_screen_resume;
-+ _nc_screen_wrap;
-+ _nc_scroll_oldhash;
-+ _nc_scroll_optimize;
-+ _nc_scroll_window;
-+ _nc_scrolln;
-+ _nc_setupscreen;
-+ _nc_sigaction;
-+ _nc_signal_handler;
-+ _nc_slk_format;
-+ _nc_slk_initialize;
-+ _nc_synchook;
-+ _nc_vsscanf;
-+ _nc_waddch_nosync;
-+};
-+
-+NCURSESW_5.3.20021019 {
-+ global:
-+ _nc_wacs;
-+ _nc_wchstrlen;
-+ add_wch;
-+ add_wchnstr;
-+ add_wchstr;
-+ addnwstr;
-+ addwstr;
-+ bkgrnd;
-+ bkgrndset;
-+ border_set;
-+ box_set;
-+ echo_wchar;
-+ erasewchar;
-+ get_wch;
-+ get_wstr;
-+ getbkgrnd;
-+ getcchar;
-+ getn_wstr;
-+ hline_set;
-+ in_wch;
-+ in_wchnstr;
-+ in_wchstr;
-+ innwstr;
-+ ins_nwstr;
-+ ins_wch;
-+ ins_wstr;
-+ inwstr;
-+ is_term_resized;
-+ key_name;
-+ killwchar;
-+ mvadd_wch;
-+ mvadd_wchnstr;
-+ mvadd_wchstr;
-+ mvaddnwstr;
-+ mvaddwstr;
-+ mvget_wch;
-+ mvget_wstr;
-+ mvgetn_wstr;
-+ mvhline_set;
-+ mvin_wch;
-+ mvin_wchnstr;
-+ mvin_wchstr;
-+ mvinnwstr;
-+ mvins_nwstr;
-+ mvins_wch;
-+ mvins_wstr;
-+ mvinwstr;
-+ mvvline_set;
-+ mvwadd_wch;
-+ mvwadd_wchnstr;
-+ mvwadd_wchstr;
-+ mvwaddnwstr;
-+ mvwaddwstr;
-+ mvwget_wch;
-+ mvwget_wstr;
-+ mvwgetn_wstr;
-+ mvwhline_set;
-+ mvwin_wch;
-+ mvwin_wchnstr;
-+ mvwin_wchstr;
-+ mvwinnwstr;
-+ mvwins_nwstr;
-+ mvwins_wch;
-+ mvwins_wstr;
-+ mvwinwstr;
-+ mvwvline_set;
-+ resize_term;
-+ setcchar;
-+ term_attrs;
-+ unget_wch;
-+ vid_puts;
-+ vline_set;
-+ wadd_wch;
-+ wadd_wchnstr;
-+ wadd_wchstr;
-+ waddnwstr;
-+ waddwstr;
-+ wbkgrnd;
-+ wbkgrndset;
-+ wborder_set;
-+ wecho_wchar;
-+ wget_wch;
-+ wget_wstr;
-+ wgetn_wstr;
-+ whline_set;
-+ win_wch;
-+ win_wchnstr;
-+ win_wchstr;
-+ winnwstr;
-+ wins_nwstr;
-+ wins_wch;
-+ wins_wstr;
-+ winwstr;
-+ wunctrl;
-+ wvline_set;
-+ local:
-+ _nc_init_wacs;
-+ _nc_reset_colors;
-+ _nc_varargs;
-+ _nc_wgetch;
-+} NCURSESW_5.1.20000708;
-+
-+NCURSESW_5.4.20040208 {
-+ global:
-+ _nc_optimize_enable;
-+ pecho_wchar;
-+ slk_wset;
-+ local:
-+ _nc_Touchline;
-+ _nc_Touchpan;
-+ _nc_Wnoutrefresh;
-+ _nc_dPanel;
-+ _nc_dStack;
-+ _nc_fifo_dump;
-+ _nc_insert_ch;
-+ _nc_is_charable;
-+ _nc_linedump;
-+ _nc_my_visbuf;
-+ _nc_to_char;
-+ _nc_to_widechar;
-+ _nc_trace_xnames;
-+ _tracedump;
-+ _tracemouse;
-+} NCURSESW_5.3.20021019;
-+
-+NCURSESW_5.5.20051010 {
-+ global:
-+ _nc_wcrtomb;
-+ local:
-+ _nc_Calculate_Text_Width;
-+ _nc_Widen_String;
-+ _nc_build_wch;
-+ _nc_retrace_field;
-+ _nc_retrace_field_ptr;
-+ _nc_retrace_field_type;
-+ _nc_retrace_form;
-+ _nc_retrace_form_hook;
-+ _nc_retrace_item;
-+ _nc_retrace_item_opts;
-+ _nc_retrace_item_ptr;
-+ _nc_retrace_menu;
-+ _nc_retrace_menu_hook;
-+ _nc_retrace_menu_opts;
-+ _nc_retrace_panel;
-+} NCURSESW_5.4.20040208;
-+
-+NCURSESW_5.6.20061217 {
-+ global:
-+ getbegx;
-+ getbegy;
-+ getcurx;
-+ getcury;
-+ getmaxx;
-+ getmaxy;
-+ getparx;
-+ getpary;
-+ nofilter;
-+ use_legacy_coding;
-+ wgetbkgrnd;
-+ wgetch_events;
-+ wgetnstr_events;
-+} NCURSESW_5.5.20051010;
-+
-+NCURSESW_5.7.20081102 {
-+ global:
-+ getattrs;
-+ is_cleared;
-+ is_idcok;
-+ is_idlok;
-+ is_immedok;
-+ is_keypad;
-+ is_leaveok;
-+ is_nodelay;
-+ is_notimeout;
-+ is_scrollok;
-+ is_syncok;
-+ set_escdelay;
-+ use_screen;
-+ use_window;
-+ wgetparent;
-+ wgetscrreg;
-+ local:
-+ _nc_tracemouse;
-+ _nc_ungetch;
-+} NCURSESW_5.6.20061217;
-+
-+NCURSESW_5.8.20110226 {
-+ global:
-+ _nc_panelhook_sp;
-+ assume_default_colors_sp;
-+ beep_sp;
-+ can_change_color_sp;
-+ ceiling_panel;
-+ color_content_sp;
-+ doupdate_sp;
-+ echo_sp;
-+ endwin_sp;
-+ filter_sp;
-+ flash_sp;
-+ get_escdelay;
-+ get_escdelay_sp;
-+ getmouse_sp;
-+ getwin_sp;
-+ ground_panel;
-+ has_colors_sp;
-+ has_mouse;
-+ has_mouse_sp;
-+ init_color_sp;
-+ init_pair_sp;
-+ is_pad;
-+ is_subwin;
-+ is_term_resized_sp;
-+ isendwin_sp;
-+ mcprint_sp;
-+ mouseinterval_sp;
-+ mousemask_sp;
-+ mvcur_sp;
-+ new_form_sp;
-+ new_menu_sp;
-+ newpad_sp;
-+ newterm_sp;
-+ newwin_sp;
-+ nl_sp;
-+ noecho_sp;
-+ nofilter_sp;
-+ nonl_sp;
-+ pair_content_sp;
-+ resize_term_sp;
-+ resizeterm_sp;
-+ restartterm_sp;
-+ ripoffline_sp;
-+ scr_init_sp;
-+ scr_restore_sp;
-+ scr_set_sp;
-+ set_escdelay_sp;
-+ slk_attr_set_sp;
-+ slk_attr_sp;
-+ slk_attroff_sp;
-+ slk_attron_sp;
-+ slk_attrset_sp;
-+ slk_clear_sp;
-+ slk_color_sp;
-+ slk_init_sp;
-+ slk_label_sp;
-+ slk_noutrefresh_sp;
-+ slk_refresh_sp;
-+ slk_restore_sp;
-+ slk_set_sp;
-+ slk_touch_sp;
-+ start_color_sp;
-+ term_attrs_sp;
-+ termattrs_sp;
-+ unget_wch_sp;
-+ ungetch_sp;
-+ ungetmouse_sp;
-+ update_panels_sp;
-+ use_default_colors_sp;
-+ use_legacy_coding_sp;
-+ vid_attr_sp;
-+ vid_puts_sp;
-+ vidattr_sp;
-+ vidputs_sp;
-+ wunctrl_sp;
-+ local:
-+ _nc_TYPE_ALNUM;
-+ _nc_TYPE_ALPHA;
-+ _nc_TYPE_ENUM;
-+ _nc_TYPE_INTEGER;
-+ _nc_TYPE_IPV4;
-+ _nc_TYPE_NUMERIC;
-+ _nc_TYPE_REGEXP;
-+ _nc_curscr_of;
-+ _nc_do_color_sp;
-+ _nc_form_cursor;
-+ _nc_format_slks;
-+ _nc_free_and_exit_sp;
-+ _nc_freeall_sp;
-+ _nc_fty_generic;
-+ _nc_generic_fieldtype;
-+ _nc_get_fieldbuffer;
-+ _nc_hash_map_sp;
-+ _nc_insert_wch;
-+ _nc_linedump_sp;
-+ _nc_make_oldhash_sp;
-+ _nc_makenew_sp;
-+ _nc_msec_cost_sp;
-+ _nc_mvcur_init_sp;
-+ _nc_mvcur_resume_sp;
-+ _nc_mvcur_wrap_sp;
-+ _nc_newscr_of;
-+ _nc_printf_string_sp;
-+ _nc_reset_colors_sp;
-+ _nc_retrace_mmask_t;
-+ _nc_ripoffline_sp;
-+ _nc_screen_init_sp;
-+ _nc_screen_resume_sp;
-+ _nc_screen_wrap_sp;
-+ _nc_scroll_oldhash_sp;
-+ _nc_scroll_optimize_sp;
-+ _nc_scrolln_sp;
-+ _nc_set_generic_fieldtype;
-+ _nc_setupscreen_sp;
-+ _nc_stdscr_of;
-+} NCURSESW_5.7.20081102;
-+
-+NCURSESW_5.9.current {
-+ global:
-+ form_driver_w;
-+ wgetdelay;
-+ local:
-+ _nc_mvcur;
-+ _nc_mvcur_sp;
-+ _nc_trace_mmask_t;
-+} NCURSESW_5.8.20110226;
-Index: package/ncursesw.sym
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/package/ncursesw.sym 2014-11-28 14:16:34.000000000 +0000
-@@ -0,0 +1,1111 @@
-+# $Id: ncursesw.sym,v 1.13 2014/11/28 14:16:34 tom Exp $
-+# script for shared library symbol-visibility using libtool
-+#
-+# This file was generated by ncu-mapsyms
-+# Configure options (merged 5 builds):
-+# 'CFLAGS=-O'
-+# --disable-echo
-+# --disable-getcap
-+# --disable-leaks
-+# --disable-root-environ
-+# --disable-termcap
-+# --enable-getcap
-+# --enable-getcap-cache
-+# --enable-hard-tabs
-+# --enable-interop
-+# --enable-rpath
-+# --enable-sp-funcs
-+# --enable-termcap
-+# --enable-warnings
-+# --enable-wgetch-events
-+# --enable-widec
-+# --verbose
-+# --with-shared
-+# --with-termlib
-+# --with-ticlib
-+# --with-trace
-+# --with-warnings
-+# --without-ada
-+# --without-debug
-+# --without-normal
-+BC
-+COLORS
-+COLOR_PAIR
-+COLOR_PAIRS
-+COLS
-+ESCDELAY
-+LINES
-+PAIR_NUMBER
-+PC
-+SP
-+TABSIZE
-+TYPE_ALNUM
-+TYPE_ALPHA
-+TYPE_ENUM
-+TYPE_INTEGER
-+TYPE_IPV4
-+TYPE_NUMERIC
-+TYPE_REGEXP
-+UP
-+_nc_Calculate_Item_Length_and_Width
-+_nc_Calculate_Text_Width
-+_nc_Connect_Items
-+_nc_Copy_Argument
-+_nc_Copy_Type
-+_nc_Default_Field
-+_nc_Default_FieldType
-+_nc_Default_Form
-+_nc_Default_Item
-+_nc_Default_Menu
-+_nc_Disconnect_Items
-+_nc_Draw_Menu
-+_nc_First_Active_Field
-+_nc_Free_Argument
-+_nc_Free_Type
-+_nc_Internal_Validation
-+_nc_Link_Items
-+_nc_Make_Argument
-+_nc_Match_Next_Character_In_Item_Name
-+_nc_New_TopRow_and_CurrentItem
-+_nc_Position_Form_Cursor
-+_nc_Post_Item
-+_nc_Refresh_Current_Field
-+_nc_Set_Current_Field
-+_nc_Set_Form_Page
-+_nc_Show_Menu
-+_nc_Synchronize_Attributes
-+_nc_Synchronize_Options
-+_nc_TYPE_ALNUM
-+_nc_TYPE_ALPHA
-+_nc_TYPE_ENUM
-+_nc_TYPE_INTEGER
-+_nc_TYPE_IPV4
-+_nc_TYPE_NUMERIC
-+_nc_TYPE_REGEXP
-+_nc_Touchline
-+_nc_Touchpan
-+_nc_Widen_String
-+_nc_Wnoutrefresh
-+_nc_access
-+_nc_add_to_try
-+_nc_align_termtype
-+_nc_alloc_entry_leaks
-+_nc_altcharset_name
-+_nc_background
-+_nc_basename
-+_nc_baudrate
-+_nc_build_wch
-+_nc_cap_hash_table
-+_nc_capalias_table
-+_nc_capcmp
-+_nc_captoinfo
-+_nc_captoinfo_leaks
-+_nc_check_termtype
-+_nc_check_termtype2
-+_nc_comment_end
-+_nc_comment_start
-+_nc_comp_captab_leaks
-+_nc_comp_error_leaks
-+_nc_comp_scan_leaks
-+_nc_copy_entry
-+_nc_copy_termtype
-+_nc_curr_col
-+_nc_curr_file_pos
-+_nc_curr_line
-+_nc_curr_token
-+_nc_curscr_of
-+_nc_dPanel
-+_nc_dStack
-+_nc_db_iterator_leaks
-+_nc_delink_entry
-+_nc_disable_period
-+_nc_do_color
-+_nc_do_color_sp
-+_nc_doalloc
-+_nc_entry_match
-+_nc_env_access
-+_nc_err_abort
-+_nc_eventlist_timeout
-+_nc_expand_try
-+_nc_expanded
-+_nc_fallback
-+_nc_fifo_dump
-+_nc_find_entry
-+_nc_find_type_entry
-+_nc_first_db
-+_nc_first_name
-+_nc_flush
-+_nc_flush_sp
-+_nc_form_cursor
-+_nc_format_slks
-+_nc_free_and_exit
-+_nc_free_and_exit_sp
-+_nc_free_entries
-+_nc_free_entry
-+_nc_free_termtype
-+_nc_free_tic
-+_nc_free_tinfo
-+_nc_free_tparm
-+_nc_freeall
-+_nc_freeall_sp
-+_nc_freewin
-+_nc_fty_generic
-+_nc_generic_fieldtype
-+_nc_get_alias_table
-+_nc_get_fieldbuffer
-+_nc_get_hash_info
-+_nc_get_hash_table
-+_nc_get_locale
-+_nc_get_screensize
-+_nc_get_source
-+_nc_get_table
-+_nc_get_token
-+_nc_get_tty_mode
-+_nc_get_tty_mode_sp
-+_nc_get_type
-+_nc_getenv_num
-+_nc_globals
-+_nc_handle_sigwinch
-+_nc_has_mouse
-+_nc_hash_map
-+_nc_hash_map_sp
-+_nc_hashed_db
-+_nc_head
-+_nc_home_terminfo
-+_nc_info_hash_table
-+_nc_infoalias_table
-+_nc_infotocap
-+_nc_init_acs
-+_nc_init_acs_sp
-+_nc_init_entry
-+_nc_init_keytry
-+_nc_init_termtype
-+_nc_init_wacs
-+_nc_insert_ch
-+_nc_insert_wch
-+_nc_is_abs_path
-+_nc_is_charable
-+_nc_is_dir_path
-+_nc_is_file_path
-+_nc_keep_tic_dir
-+_nc_key_names
-+_nc_keyname
-+_nc_keyname_leaks
-+_nc_keypad
-+_nc_last_db
-+_nc_leaks_tic
-+_nc_leaks_tinfo
-+_nc_linedump
-+_nc_linedump_sp
-+_nc_locale_breaks_acs
-+_nc_make_oldhash
-+_nc_make_oldhash_sp
-+_nc_makenew
-+_nc_makenew_sp
-+_nc_memmove
-+_nc_menu_cursor_pos
-+_nc_merge_entry
-+_nc_msec_cost
-+_nc_msec_cost_sp
-+_nc_mvcur
-+_nc_mvcur_init
-+_nc_mvcur_init_sp
-+_nc_mvcur_resume
-+_nc_mvcur_resume_sp
-+_nc_mvcur_sp
-+_nc_mvcur_wrap
-+_nc_mvcur_wrap_sp
-+_nc_my_visbuf
-+_nc_name_match
-+_nc_newscr_of
-+_nc_next_db
-+_nc_nulls_sent
-+_nc_oldnums
-+_nc_optimize_enable
-+_nc_ospeed
-+_nc_outc_wrapper
-+_nc_outch
-+_nc_outch_sp
-+_nc_outchars
-+_nc_outstr
-+_nc_panelhook
-+_nc_panelhook_sp
-+_nc_panic_mode
-+_nc_parse_entry
-+_nc_pathlast
-+_nc_prescreen
-+_nc_printf_string
-+_nc_printf_string_sp
-+_nc_push_token
-+_nc_putchar
-+_nc_putchar_sp
-+_nc_putp
-+_nc_putp_flush
-+_nc_putp_flush_sp
-+_nc_putp_sp
-+_nc_read_entry
-+_nc_read_entry_source
-+_nc_read_file_entry
-+_nc_read_termcap
-+_nc_read_termcap_entry
-+_nc_read_termtype
-+_nc_remove_key
-+_nc_remove_string
-+_nc_render
-+_nc_reset_colors
-+_nc_reset_colors_sp
-+_nc_reset_input
-+_nc_resolve_uses
-+_nc_resolve_uses2
-+_nc_retrace_attr_t
-+_nc_retrace_bool
-+_nc_retrace_char
-+_nc_retrace_chtype
-+_nc_retrace_cptr
-+_nc_retrace_cvoid_ptr
-+_nc_retrace_field
-+_nc_retrace_field_ptr
-+_nc_retrace_field_type
-+_nc_retrace_form
-+_nc_retrace_form_hook
-+_nc_retrace_int
-+_nc_retrace_int_attr_t
-+_nc_retrace_item
-+_nc_retrace_item_opts
-+_nc_retrace_item_ptr
-+_nc_retrace_menu
-+_nc_retrace_menu_hook
-+_nc_retrace_menu_opts
-+_nc_retrace_mmask_t
-+_nc_retrace_panel
-+_nc_retrace_ptr
-+_nc_retrace_sp
-+_nc_retrace_unsigned
-+_nc_retrace_void_ptr
-+_nc_retrace_win
-+_nc_ripoffline
-+_nc_ripoffline_sp
-+_nc_rootname
-+_nc_safe_strcat
-+_nc_safe_strcpy
-+_nc_save_str
-+_nc_screen_chain
-+_nc_screen_init
-+_nc_screen_init_sp
-+_nc_screen_of
-+_nc_screen_resume
-+_nc_screen_resume_sp
-+_nc_screen_wrap
-+_nc_screen_wrap_sp
-+_nc_scroll_oldhash
-+_nc_scroll_oldhash_sp
-+_nc_scroll_optimize
-+_nc_scroll_optimize_sp
-+_nc_scroll_window
-+_nc_scrolln
-+_nc_scrolln_sp
-+_nc_set_buffer
-+_nc_set_buffer_sp
-+_nc_set_generic_fieldtype
-+_nc_set_no_padding
-+_nc_set_source
-+_nc_set_tty_mode
-+_nc_set_tty_mode_sp
-+_nc_set_type
-+_nc_set_writedir
-+_nc_setenv_num
-+_nc_setup_tinfo
-+_nc_setupscreen
-+_nc_setupscreen_sp
-+_nc_setupterm
-+_nc_sigaction
-+_nc_signal_handler
-+_nc_slk_format
-+_nc_slk_initialize
-+_nc_start_line
-+_nc_stdscr_of
-+_nc_str_copy
-+_nc_str_init
-+_nc_str_null
-+_nc_strict_bsd
-+_nc_suppress_warnings
-+_nc_synchook
-+_nc_syntax
-+_nc_syserr_abort
-+_nc_tail
-+_nc_tgetent_leaks
-+_nc_tic_dir
-+_nc_tic_expand
-+_nc_tic_written
-+_nc_timed_wait
-+_nc_tinfo_cmdch
-+_nc_tinfo_fkeys
-+_nc_to_char
-+_nc_to_widechar
-+_nc_tparm_analyze
-+_nc_tparm_err
-+_nc_tputs_trace
-+_nc_trace_buf
-+_nc_trace_bufcat
-+_nc_trace_mmask_t
-+_nc_trace_tries
-+_nc_trace_ttymode
-+_nc_trace_xnames
-+_nc_tracebits
-+_nc_tracechar
-+_nc_tracemouse
-+_nc_tracing
-+_nc_trans_string
-+_nc_trim_sgr0
-+_nc_unctrl
-+_nc_ungetch
-+_nc_unicode_locale
-+_nc_update_screensize
-+_nc_user_definable
-+_nc_utf8_outch
-+_nc_varargs
-+_nc_visbuf
-+_nc_visbuf2
-+_nc_visbufn
-+_nc_viscbuf
-+_nc_viscbuf2
-+_nc_viswbuf
-+_nc_viswbuf2
-+_nc_viswbufn
-+_nc_viswibuf
-+_nc_vsscanf
-+_nc_wacs
-+_nc_waddch_nosync
-+_nc_warning
-+_nc_wchstrlen
-+_nc_wcrtomb
-+_nc_wgetch
-+_nc_wrap_entry
-+_nc_write_entry
-+_traceattr
-+_traceattr2
-+_tracecchar_t
-+_tracecchar_t2
-+_tracechar
-+_tracechtype
-+_tracechtype2
-+_tracedump
-+_tracef
-+_tracemouse
-+acs_map
-+add_wch
-+add_wchnstr
-+add_wchstr
-+addch
-+addchnstr
-+addchstr
-+addnstr
-+addnwstr
-+addstr
-+addwstr
-+assume_default_colors
-+assume_default_colors_sp
-+attr_get
-+attr_off
-+attr_on
-+attr_set
-+attroff
-+attron
-+attrset
-+baudrate
-+baudrate_sp
-+beep
-+beep_sp
-+bkgd
-+bkgdset
-+bkgrnd
-+bkgrndset
-+boolcodes
-+boolfnames
-+boolnames
-+border
-+border_set
-+bottom_panel
-+box
-+box_set
-+can_change_color
-+can_change_color_sp
-+cbreak
-+cbreak_sp
-+ceiling_panel
-+chgat
-+clear
-+clearok
-+clrtobot
-+clrtoeol
-+color_content
-+color_content_sp
-+color_set
-+copywin
-+cur_term
-+current_field
-+current_item
-+curs_set
-+curs_set_sp
-+curscr
-+curses_version
-+data_ahead
-+data_behind
-+def_prog_mode
-+def_prog_mode_sp
-+def_shell_mode
-+def_shell_mode_sp
-+define_key
-+define_key_sp
-+del_curterm
-+del_curterm_sp
-+del_panel
-+delay_output
-+delay_output_sp
-+delch
-+deleteln
-+delscreen
-+delwin
-+derwin
-+doupdate
-+doupdate_sp
-+dup_field
-+dupwin
-+dynamic_field_info
-+echo
-+echo_sp
-+echo_wchar
-+echochar
-+endwin
-+endwin_sp
-+erase
-+erasechar
-+erasechar_sp
-+erasewchar
-+field_arg
-+field_back
-+field_buffer
-+field_count
-+field_fore
-+field_index
-+field_info
-+field_init
-+field_just
-+field_opts
-+field_opts_off
-+field_opts_on
-+field_pad
-+field_status
-+field_term
-+field_type
-+field_userptr
-+filter
-+filter_sp
-+flash
-+flash_sp
-+flushinp
-+flushinp_sp
-+form_driver
-+form_driver_w
-+form_fields
-+form_init
-+form_opts
-+form_opts_off
-+form_opts_on
-+form_page
-+form_request_by_name
-+form_request_name
-+form_sub
-+form_term
-+form_userptr
-+form_win
-+free_field
-+free_fieldtype
-+free_form
-+free_item
-+free_menu
-+get_escdelay
-+get_escdelay_sp
-+get_wch
-+get_wstr
-+getattrs
-+getbegx
-+getbegy
-+getbkgd
-+getbkgrnd
-+getcchar
-+getch
-+getcurx
-+getcury
-+getmaxx
-+getmaxy
-+getmouse
-+getmouse_sp
-+getn_wstr
-+getnstr
-+getparx
-+getpary
-+getstr
-+getwin
-+getwin_sp
-+ground_panel
-+halfdelay
-+halfdelay_sp
-+has_colors
-+has_colors_sp
-+has_ic
-+has_ic_sp
-+has_il
-+has_il_sp
-+has_key
-+has_key_sp
-+has_mouse
-+has_mouse_sp
-+hide_panel
-+hline
-+hline_set
-+idcok
-+idlok
-+immedok
-+in_wch
-+in_wchnstr
-+in_wchstr
-+inch
-+inchnstr
-+inchstr
-+init_color
-+init_color_sp
-+init_pair
-+init_pair_sp
-+initscr
-+innstr
-+innwstr
-+ins_nwstr
-+ins_wch
-+ins_wstr
-+insch
-+insdelln
-+insertln
-+insnstr
-+insstr
-+instr
-+intrflush
-+intrflush_sp
-+inwstr
-+is_cleared
-+is_idcok
-+is_idlok
-+is_immedok
-+is_keypad
-+is_leaveok
-+is_linetouched
-+is_nodelay
-+is_notimeout
-+is_pad
-+is_scrollok
-+is_subwin
-+is_syncok
-+is_term_resized
-+is_term_resized_sp
-+is_wintouched
-+isendwin
-+isendwin_sp
-+item_count
-+item_description
-+item_index
-+item_init
-+item_name
-+item_opts
-+item_opts_off
-+item_opts_on
-+item_term
-+item_userptr
-+item_value
-+item_visible
-+key_defined
-+key_defined_sp
-+key_name
-+keybound
-+keybound_sp
-+keyname
-+keyname_sp
-+keyok
-+keyok_sp
-+keypad
-+killchar
-+killchar_sp
-+killwchar
-+leaveok
-+link_field
-+link_fieldtype
-+longname
-+mcprint
-+mcprint_sp
-+menu_back
-+menu_driver
-+menu_fore
-+menu_format
-+menu_grey
-+menu_init
-+menu_items
-+menu_mark
-+menu_opts
-+menu_opts_off
-+menu_opts_on
-+menu_pad
-+menu_pattern
-+menu_request_by_name
-+menu_request_name
-+menu_spacing
-+menu_sub
-+menu_term
-+menu_userptr
-+menu_win
-+meta
-+mouse_trafo
-+mouseinterval
-+mouseinterval_sp
-+mousemask
-+mousemask_sp
-+move
-+move_field
-+move_panel
-+mvadd_wch
-+mvadd_wchnstr
-+mvadd_wchstr
-+mvaddch
-+mvaddchnstr
-+mvaddchstr
-+mvaddnstr
-+mvaddnwstr
-+mvaddstr
-+mvaddwstr
-+mvchgat
-+mvcur
-+mvcur_sp
-+mvdelch
-+mvderwin
-+mvget_wch
-+mvget_wstr
-+mvgetch
-+mvgetn_wstr
-+mvgetnstr
-+mvgetstr
-+mvhline
-+mvhline_set
-+mvin_wch
-+mvin_wchnstr
-+mvin_wchstr
-+mvinch
-+mvinchnstr
-+mvinchstr
-+mvinnstr
-+mvinnwstr
-+mvins_nwstr
-+mvins_wch
-+mvins_wstr
-+mvinsch
-+mvinsnstr
-+mvinsstr
-+mvinstr
-+mvinwstr
-+mvprintw
-+mvscanw
-+mvvline
-+mvvline_set
-+mvwadd_wch
-+mvwadd_wchnstr
-+mvwadd_wchstr
-+mvwaddch
-+mvwaddchnstr
-+mvwaddchstr
-+mvwaddnstr
-+mvwaddnwstr
-+mvwaddstr
-+mvwaddwstr
-+mvwchgat
-+mvwdelch
-+mvwget_wch
-+mvwget_wstr
-+mvwgetch
-+mvwgetn_wstr
-+mvwgetnstr
-+mvwgetstr
-+mvwhline
-+mvwhline_set
-+mvwin
-+mvwin_wch
-+mvwin_wchnstr
-+mvwin_wchstr
-+mvwinch
-+mvwinchnstr
-+mvwinchstr
-+mvwinnstr
-+mvwinnwstr
-+mvwins_nwstr
-+mvwins_wch
-+mvwins_wstr
-+mvwinsch
-+mvwinsnstr
-+mvwinsstr
-+mvwinstr
-+mvwinwstr
-+mvwprintw
-+mvwscanw
-+mvwvline
-+mvwvline_set
-+napms
-+napms_sp
-+new_field
-+new_fieldtype
-+new_form
-+new_form_sp
-+new_item
-+new_menu
-+new_menu_sp
-+new_page
-+new_panel
-+new_prescr
-+newpad
-+newpad_sp
-+newscr
-+newterm
-+newterm_sp
-+newwin
-+newwin_sp
-+nl
-+nl_sp
-+nocbreak
-+nocbreak_sp
-+nodelay
-+noecho
-+noecho_sp
-+nofilter
-+nofilter_sp
-+nonl
-+nonl_sp
-+noqiflush
-+noqiflush_sp
-+noraw
-+noraw_sp
-+notimeout
-+numcodes
-+numfnames
-+numnames
-+ospeed
-+overlay
-+overwrite
-+pair_content
-+pair_content_sp
-+panel_above
-+panel_below
-+panel_hidden
-+panel_userptr
-+panel_window
-+pecho_wchar
-+pechochar
-+pnoutrefresh
-+pos_form_cursor
-+pos_menu_cursor
-+post_form
-+post_menu
-+prefresh
-+printw
-+putp
-+putp_sp
-+putwin
-+qiflush
-+qiflush_sp
-+raw
-+raw_sp
-+redrawwin
-+refresh
-+replace_panel
-+reset_prog_mode
-+reset_prog_mode_sp
-+reset_shell_mode
-+reset_shell_mode_sp
-+resetty
-+resetty_sp
-+resize_term
-+resize_term_sp
-+resizeterm
-+resizeterm_sp
-+restartterm
-+restartterm_sp
-+ripoffline
-+ripoffline_sp
-+savetty
-+savetty_sp
-+scale_form
-+scale_menu
-+scanw
-+scr_dump
-+scr_init
-+scr_init_sp
-+scr_restore
-+scr_restore_sp
-+scr_set
-+scr_set_sp
-+scrl
-+scroll
-+scrollok
-+set_current_field
-+set_current_item
-+set_curterm
-+set_curterm_sp
-+set_escdelay
-+set_escdelay_sp
-+set_field_back
-+set_field_buffer
-+set_field_fore
-+set_field_init
-+set_field_just
-+set_field_opts
-+set_field_pad
-+set_field_status
-+set_field_term
-+set_field_type
-+set_field_userptr
-+set_fieldtype_arg
-+set_fieldtype_choice
-+set_form_fields
-+set_form_init
-+set_form_opts
-+set_form_page
-+set_form_sub
-+set_form_term
-+set_form_userptr
-+set_form_win
-+set_item_init
-+set_item_opts
-+set_item_term
-+set_item_userptr
-+set_item_value
-+set_max_field
-+set_menu_back
-+set_menu_fore
-+set_menu_format
-+set_menu_grey
-+set_menu_init
-+set_menu_items
-+set_menu_mark
-+set_menu_opts
-+set_menu_pad
-+set_menu_pattern
-+set_menu_spacing
-+set_menu_sub
-+set_menu_term
-+set_menu_userptr
-+set_menu_win
-+set_new_page
-+set_panel_userptr
-+set_tabsize
-+set_tabsize_sp
-+set_term
-+set_top_row
-+setcchar
-+setscrreg
-+setupterm
-+show_panel
-+slk_attr
-+slk_attr_off
-+slk_attr_on
-+slk_attr_set
-+slk_attr_set_sp
-+slk_attr_sp
-+slk_attroff
-+slk_attroff_sp
-+slk_attron
-+slk_attron_sp
-+slk_attrset
-+slk_attrset_sp
-+slk_clear
-+slk_clear_sp
-+slk_color
-+slk_color_sp
-+slk_init
-+slk_init_sp
-+slk_label
-+slk_label_sp
-+slk_noutrefresh
-+slk_noutrefresh_sp
-+slk_refresh
-+slk_refresh_sp
-+slk_restore
-+slk_restore_sp
-+slk_set
-+slk_set_sp
-+slk_touch
-+slk_touch_sp
-+slk_wset
-+standend
-+standout
-+start_color
-+start_color_sp
-+stdscr
-+strcodes
-+strfnames
-+strnames
-+subpad
-+subwin
-+syncok
-+term_attrs
-+term_attrs_sp
-+termattrs
-+termattrs_sp
-+termname
-+termname_sp
-+tgetent
-+tgetent_sp
-+tgetflag
-+tgetflag_sp
-+tgetnum
-+tgetnum_sp
-+tgetstr
-+tgetstr_sp
-+tgoto
-+tigetflag
-+tigetflag_sp
-+tigetnum
-+tigetnum_sp
-+tigetstr
-+tigetstr_sp
-+timeout
-+tiparm
-+top_panel
-+top_row
-+touchline
-+touchwin
-+tparm
-+tputs
-+tputs_sp
-+trace
-+ttytype
-+typeahead
-+typeahead_sp
-+unctrl
-+unctrl_sp
-+unget_wch
-+unget_wch_sp
-+ungetch
-+ungetch_sp
-+ungetmouse
-+ungetmouse_sp
-+unpost_form
-+unpost_menu
-+untouchwin
-+update_panels
-+update_panels_sp
-+use_default_colors
-+use_default_colors_sp
-+use_env
-+use_env_sp
-+use_extended_names
-+use_legacy_coding
-+use_legacy_coding_sp
-+use_screen
-+use_tioctl
-+use_tioctl_sp
-+use_window
-+vid_attr
-+vid_attr_sp
-+vid_puts
-+vid_puts_sp
-+vidattr
-+vidattr_sp
-+vidputs
-+vidputs_sp
-+vline
-+vline_set
-+vw_printw
-+vw_scanw
-+vwprintw
-+vwscanw
-+wadd_wch
-+wadd_wchnstr
-+wadd_wchstr
-+waddch
-+waddchnstr
-+waddchstr
-+waddnstr
-+waddnwstr
-+waddstr
-+waddwstr
-+wattr_get
-+wattr_off
-+wattr_on
-+wattr_set
-+wattroff
-+wattron
-+wattrset
-+wbkgd
-+wbkgdset
-+wbkgrnd
-+wbkgrndset
-+wborder
-+wborder_set
-+wchgat
-+wclear
-+wclrtobot
-+wclrtoeol
-+wcolor_set
-+wcursyncup
-+wdelch
-+wdeleteln
-+wecho_wchar
-+wechochar
-+wenclose
-+werase
-+wget_wch
-+wget_wstr
-+wgetbkgrnd
-+wgetch
-+wgetch_events
-+wgetdelay
-+wgetn_wstr
-+wgetnstr
-+wgetnstr_events
-+wgetparent
-+wgetscrreg
-+wgetstr
-+whline
-+whline_set
-+win_wch
-+win_wchnstr
-+win_wchstr
-+winch
-+winchnstr
-+winchstr
-+winnstr
-+winnwstr
-+wins_nwstr
-+wins_wch
-+wins_wstr
-+winsch
-+winsdelln
-+winsertln
-+winsnstr
-+winsstr
-+winstr
-+winwstr
-+wmouse_trafo
-+wmove
-+wnoutrefresh
-+wprintw
-+wredrawln
-+wrefresh
-+wresize
-+wscanw
-+wscrl
-+wsetscrreg
-+wstandend
-+wstandout
-+wsyncdown
-+wsyncup
-+wtimeout
-+wtouchln
-+wunctrl
-+wunctrl_sp
-+wvline
-+wvline_set
-Index: panel/Makefile.in
-Prereq: 1.58
---- ncurses-5.9/panel/Makefile.in 2010-11-27 21:45:27.000000000 +0000
-+++ ncurses-5.9-20141206/panel/Makefile.in 2014-11-15 13:54:00.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.58 2010/11/27 21:45:27 tom Exp $
-+# $Id: Makefile.in,v 1.65 2014/11/15 13:54:00 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -51,15 +51,23 @@
-
- MODEL = @DFT_LWR_MODEL@
- DESTDIR = @DESTDIR@
-+top_srcdir = @top_srcdir@
- srcdir = @srcdir@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
- bindir = @bindir@
- libdir = @libdir@
- includedir = @includedir@
-+datarootdir = @datarootdir@
- datadir = @datadir@
-+includesubdir = @includesubdir@
-+
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-+
-+PACKAGE = @PACKAGE@
-
- LIBTOOL = @LIBTOOL@
-+LIBTOOL_OPTS = @LIBTOOL_OPTS@ @EXPORT_SYMS@
- LIBTOOL_CLEAN = @LIB_CLEAN@
- LIBTOOL_COMPILE = @LIB_COMPILE@
- LIBTOOL_LINK = @LIB_LINK@
-@@ -85,7 +93,7 @@
- CPP = @CPP@
- CFLAGS = @CFLAGS@
-
--CPPFLAGS = -I@top_srcdir@/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
-+CPPFLAGS = -I${top_srcdir}/ncurses -DHAVE_CONFIG_H @CPPFLAGS@
-
- CCFLAGS = $(CPPFLAGS) $(CFLAGS)
-
-@@ -103,6 +111,8 @@
- SHLIB_DIRS = -L../lib
- SHLIB_LIST = $(SHLIB_DIRS) -lncurses@LIB_SUFFIX@ @SHLIB_LIST@
-
-+RPATH_LIST = @RPATH_LIST@
-+VERSIONED_SYMS = @VERSIONED_SYMS@
- MK_SHARED_LIB = @MK_SHARED_LIB@
-
- NCURSES_MAJOR = @NCURSES_MAJOR@
-@@ -112,7 +122,7 @@
-
- RANLIB = @LIB_PREP@
-
--LIBRARIES = @LIBS_TO_MAKE@
-+LIBRARIES = @Libs_To_Make@
-
- LINT = @LINT@
- LINT_OPTS = @LINT_OPTS@
-Index: panel/p_above.c
-Prereq: 1.8
---- ncurses-5.9/panel/p_above.c 2010-01-23 21:22:15.000000000 +0000
-+++ ncurses-5.9-20141206/panel/p_above.c 2012-03-10 23:43:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -36,13 +36,13 @@
- */
- #include "panel.priv.h"
-
--MODULE_ID("$Id: p_above.c,v 1.8 2010/01/23 21:22:15 tom Exp $")
-+MODULE_ID("$Id: p_above.c,v 1.9 2012/03/10 23:43:41 tom Exp $")
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(PANEL *)
- ground_panel(SCREEN * sp)
- {
-- T((T_CALLED("ground_panel(%p)"), sp));
-+ T((T_CALLED("ground_panel(%p)"), (void *)sp));
- if (sp)
- {
- struct panelhook *ph = NCURSES_SP_NAME(_nc_panelhook) (sp);
-Index: panel/p_below.c
-Prereq: 1.8
---- ncurses-5.9/panel/p_below.c 2010-01-23 21:22:15.000000000 +0000
-+++ ncurses-5.9-20141206/panel/p_below.c 2012-03-10 23:43:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -36,13 +36,13 @@
- */
- #include "panel.priv.h"
-
--MODULE_ID("$Id: p_below.c,v 1.8 2010/01/23 21:22:15 tom Exp $")
-+MODULE_ID("$Id: p_below.c,v 1.9 2012/03/10 23:43:41 tom Exp $")
-
- #if NCURSES_SP_FUNCS
- NCURSES_EXPORT(PANEL *)
- ceiling_panel(SCREEN * sp)
- {
-- T((T_CALLED("ceiling_panel(%p)"), sp));
-+ T((T_CALLED("ceiling_panel(%p)"), (void *)sp));
- if (sp)
- {
- struct panelhook *ph = NCURSES_SP_NAME(_nc_panelhook) (sp);
-Index: panel/panel.c
-Prereq: 1.25
---- ncurses-5.9/panel/panel.c 2010-01-23 21:22:16.000000000 +0000
-+++ ncurses-5.9-20141206/panel/panel.c 2012-02-23 10:02:15.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2012 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 *
-@@ -36,7 +36,7 @@
- /* panel.c -- implementation of panels library, some core routines */
- #include "panel.priv.h"
-
--MODULE_ID("$Id: panel.c,v 1.25 2010/01/23 21:22:16 tom Exp $")
-+MODULE_ID("$Id: panel.c,v 1.26 2012/02/23 10:02:15 tom Exp $")
-
- /*+-------------------------------------------------------------------------
- _nc_retrace_panel (pan)
-@@ -61,9 +61,9 @@
- char temp[32];
-
- if (ptr != 0)
-- sprintf(temp, "ptr:%p", ptr);
-+ _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "ptr:%p", ptr);
- else
-- strcpy(temp, "<null>");
-+ _nc_STRCPY(temp, "<null>", sizeof(temp));
- return _nc_visbuf(temp);
- }
- #endif
-@@ -95,7 +95,7 @@
-
- GetPanelHook(pan);
-
-- sprintf(s80, fmt, num, 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) : "--");
-@@ -143,7 +143,7 @@
- {
- char s80[80];
-
-- sprintf(s80, "Touchline s=%d c=%d", start, count);
-+ _nc_SPRINTF(s80, _nc_SLIMIT(sizeof(s80)) "Touchline s=%d c=%d", start, count);
- dPanel(s80, pan);
- touchline(pan->win, start, count);
- }
-Index: panel/panel.priv.h
-Prereq: 1.23
---- ncurses-5.9/panel/panel.priv.h 2009-04-11 20:33:55.000000000 +0000
-+++ ncurses-5.9-20141206/panel/panel.priv.h 2014-11-01 14:48:03.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -26,10 +26,11 @@
- * authorization. *
- ****************************************************************************/
-
--/* $Id: panel.priv.h,v 1.23 2009/04/11 20:33:55 tom Exp $ */
-+/* $Id: panel.priv.h,v 1.26 2014/11/01 14:48:03 tom Exp $ */
-
- #ifndef NCURSES_PANEL_PRIV_H
- #define NCURSES_PANEL_PRIV_H 1
-+/* *INDENT-OFF* */
-
- #if HAVE_CONFIG_H
- # include <ncurses_cfg.h>
-@@ -60,7 +61,7 @@
- # define USER_PTR(ptr) _nc_my_visbuf((const char *)ptr)
- # endif
-
--# define returnPanel(code) TRACE_RETURN(code,panel)
-+# 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*);
-@@ -89,7 +90,7 @@
- #define GetScreenHook(sp) \
- struct panelhook* ph = NCURSES_SP_NAME(_nc_panelhook)(sp)
- #define GetPanelHook(pan) \
-- GetScreenHook(_nc_screen_of((pan)->win))
-+ GetScreenHook(pan ? _nc_screen_of((pan)->win) : 0)
- #define GetWindowHook(win) \
- SCREEN* sp = _nc_screen_of(win); \
- GetScreenHook(sp)
-@@ -160,7 +161,7 @@
- ---------------------------------------------------------------------------*/
- #define PANEL_UPDATE(pan,panstart)\
- { PANEL* pan2 = ((panstart) ? (panstart) : _nc_bottom_panel);\
-- while(pan2) {\
-+ while(pan2 && pan2->win) {\
- if ((pan2 != pan) && PANELS_OVERLAPPED(pan,pan2)) {\
- int y, ix1, ix2, iy1, iy2;\
- COMPUTE_INTERSECTION(pan, pan2, ix1, ix2, iy1, iy2);\
-@@ -210,5 +211,6 @@
- /* 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*);
- #endif
-+/* *INDENT-ON* */
-
- #endif /* NCURSES_PANEL_PRIV_H */
-Index: progs/Makefile.in
-Prereq: 1.85
---- ncurses-5.9/progs/Makefile.in 2010-11-27 21:45:27.000000000 +0000
-+++ ncurses-5.9-20141206/progs/Makefile.in 2014-11-15 00:34:28.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.85 2010/11/27 21:45:27 tom Exp $
-+# $Id: Makefile.in,v 1.93 2014/11/15 00:34:28 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -61,9 +61,16 @@
- bindir = @bindir@
- libdir = @libdir@
- includedir = @includedir@
-+datarootdir = @datarootdir@
- datadir = @datadir@
-+includesubdir = @includesubdir@
-+
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-+
-+PACKAGE = @PACKAGE@
-
- LIBTOOL = @LIBTOOL@
-+LIBTOOL_OPTS = @LIBTOOL_OPTS@
- LIBTOOL_CLEAN = @LIB_CLEAN@
- LIBTOOL_COMPILE = @LIB_COMPILE@
- LIBTOOL_LINK = @LIB_LINK@
-@@ -85,7 +92,7 @@
- CFLAGS = @CFLAGS@
-
- INCDIR = $(top_srcdir)/include
--CPPFLAGS = -I../progs -I$(srcdir) -DHAVE_CONFIG_H @CPPFLAGS@
-+CPPFLAGS = -DHAVE_CONFIG_H @CPPFLAGS@
-
- CCFLAGS = $(CPPFLAGS) $(CFLAGS)
-
-@@ -104,20 +111,21 @@
- LD = @LD@
- LINK = @LINK_PROGS@ $(LIBTOOL_LINK)
- LDFLAGS = @EXTRA_LDFLAGS@ @LDFLAGS@
-+RPATH_LIST = @RPATH_LIST@
-
- LDFLAGS_LIBTOOL = $(LDFLAGS) $(CFLAGS_LIBTOOL)
- LDFLAGS_NORMAL = $(LDFLAGS) $(CFLAGS_NORMAL)
- LDFLAGS_DEBUG = $(LDFLAGS) $(CFLAGS_DEBUG)
--LDFLAGS_PROFILE = $(LDFLAGS) $(CFLAGS_PROFILE)
-+LDFLAGS_PROFILE = $(LDFLAGS) $(CFLAGS_PROFILE)
- LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
-
- LDFLAGS_DEFAULT = $(LDFLAGS_@DFT_UPR_MODEL@)
-
--LIBS_TIC = @LDFLAGS_STATIC@ @TICS_ARGS@ @TINFO_ARGS@ @LDFLAGS_SHARED@ @LD_MODEL@ @LIBS@
--LDFLAGS_TIC = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TIC)
-+LIBS_TIC = @TINFO_LDFLAGS@ @LDFLAGS_STATIC@ @TICS_LIBS@ @TINFO_LIBS@ @LDFLAGS_SHARED@ @LD_MODEL@ @LIBS@
-+LDFLAGS_TIC = @TICS_LDFLAGS@ $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TIC)
-
--LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_ARGS@ @LDFLAGS_SHARED@ @LD_MODEL@ @LIBS@
--LDFLAGS_TINFO = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TINFO)
-+LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_LIBS@ @LDFLAGS_SHARED@ @LD_MODEL@ @LIBS@
-+LDFLAGS_TINFO = @TINFO_LDFLAGS@ $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TINFO)
-
- LINT = @LINT@
- LINT_OPTS = @LINT_OPTS@
-@@ -227,49 +235,51 @@
- DEPS_TIC = \
- $(MODEL)/tic$o \
- $(MODEL)/dump_entry$o \
-+ $(MODEL)/tparm_type$o \
- $(MODEL)/transform$o
-
- tic$x: $(DEPS_TIC) $(DEPS_CURSES) transform.h
-- @ECHO_LINK@ $(LINK) $(DEPS_TIC) $(LDFLAGS_TIC) -o $@
-+ @ECHO_LD@ $(LINK) $(DEPS_TIC) $(LDFLAGS_TIC) -o $@
-
- DEPS_TOE = \
- $(MODEL)/toe$o
-
- toe$x: $(DEPS_TOE) $(DEPS_CURSES)
-- @ECHO_LINK@ $(LINK) $(DEPS_TOE) $(LDFLAGS_TIC) -o $@
-+ @ECHO_LD@ $(LINK) $(DEPS_TOE) $(LDFLAGS_TIC) -o $@
-
- DEPS_CLEAR = \
- $(MODEL)/clear$o
-
- clear$x: $(DEPS_CLEAR) $(DEPS_CURSES)
-- @ECHO_LINK@ $(LINK) $(DEPS_CLEAR) $(LDFLAGS_TINFO) -o $@
-+ @ECHO_LD@ $(LINK) $(DEPS_CLEAR) $(LDFLAGS_TINFO) -o $@
-
- DEPS_TABS = \
- $(MODEL)/tabs$o
-
- tabs$x: $(DEPS_TABS) $(DEPS_TABS)
-- @ECHO_LINK@ $(LINK) $(DEPS_TABS) $(LDFLAGS_TINFO) -o $@
-+ @ECHO_LD@ $(LINK) $(DEPS_TABS) $(LDFLAGS_TINFO) -o $@
-
- DEPS_TPUT = \
- $(MODEL)/tput$o \
-+ $(MODEL)/tparm_type$o \
- $(MODEL)/transform$o
-
- tput$x: $(DEPS_TPUT) $(DEPS_CURSES) transform.h
-- @ECHO_LINK@ $(LINK) $(DEPS_TPUT) $(LDFLAGS_TINFO) -o $@
-+ @ECHO_LD@ $(LINK) $(DEPS_TPUT) $(LDFLAGS_TINFO) -o $@
-
- DEPS_INFOCMP = \
- $(MODEL)/infocmp$o \
- $(MODEL)/dump_entry$o
-
- infocmp$x: $(DEPS_INFOCMP) $(DEPS_CURSES)
-- @ECHO_LINK@ $(LINK) $(DEPS_INFOCMP) $(LDFLAGS_TIC) -o $@
-+ @ECHO_LD@ $(LINK) $(DEPS_INFOCMP) $(LDFLAGS_TIC) -o $@
-
- DEPS_TSET = \
- $(MODEL)/tset$o \
- $(MODEL)/transform$o
-
- tset$x: $(DEPS_TSET) $(DEPS_CURSES) transform.h
-- @ECHO_LINK@ $(LINK) $(DEPS_TSET) $(LDFLAGS_TINFO) -o $@
-+ @ECHO_LD@ $(LINK) $(DEPS_TSET) $(LDFLAGS_TINFO) -o $@
-
- termsort.c: $(srcdir)/MKtermsort.sh
- sh $(srcdir)/MKtermsort.sh $(AWK) $(srcdir)/../include/@TERMINFO_CAPS@ >$@
-Index: progs/capconvert
-Prereq: 1.4
---- ncurses-5.9/progs/capconvert 2006-04-22 21:46:17.000000000 +0000
-+++ ncurses-5.9-20141206/progs/capconvert 2011-11-12 23:28:07.000000000 +0000
-@@ -1,6 +1,6 @@
- #!/bin/sh
- ##############################################################################
--# Copyright (c) 1998,2006 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2006,2011 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"), #
-@@ -26,7 +26,7 @@
- # use or other dealings in this Software without prior written #
- # authorization. #
- ##############################################################################
--# $Id: capconvert,v 1.4 2006/04/22 21:46:17 tom Exp $
-+# $Id: capconvert,v 1.5 2011/11/12 23:28:07 Robert.Millan Exp $
- #
- # capconvert -- automated conversion from termcap to terminfo
- #
-@@ -77,16 +77,18 @@
- # Assumes the terminfo master covers all canned terminal types
- exit;
- fi
-- if test "$TERM" = "xterm"
-- then
-+ case $TERM in
-+ xterm | xterm-*)
- echo "You are running xterm, which usually sets TERMCAP itself."
- echo "We can ignore this, because terminfo knows about xterm."
- echo "So you will just use the system-wide terminfo tree."
-- exit;
-- else
-+ exit
-+ ;;
-+ *)
- echo "We will have to make a local one for you anyway, to capture the effect"
- echo "of your TERMCAP variable."
-- fi
-+ ;;
-+ esac
- else
- echo "No system-wide terminfo tree. We will make you a local one."
- fi
-@@ -109,7 +111,7 @@
- for x in $PATH .
- do
- if test $OPT $x/tic
-- then
-+ then
- TIC=$x/tic
- break
- fi
-@@ -141,7 +143,7 @@
- then
- echo "It appears you already have a private terminfo directory"
- echo "at $HOME/.terminfo; this seems odd, because TERMINFO"
-- echo "is not defined. I am not going to second-guess this -- if you"
-+ echo "is not defined. I am not going to second-guess this -- if you"
- echo "really want me to try auto-configuring for you, remove or"
- echo "rename $HOME/terminfo and run me again."
- exit;
-@@ -214,7 +216,7 @@
- #
- echo "You now have a private tree under $HOME/.terminfo;"
- echo "the ncurses library will automatically read from it,"
--echo "and ncurses tic will automatically compile entries to it."
-+echo "and ncurses tic will automatically compile entries to it."
-
- # We're done unless user has a .termcap file or equivalent named by TERMCAP
- if test -z "$TERMCAP"
-@@ -235,7 +237,7 @@
- echo "Done."
- echo "Note that editing $HOME/.termcap will no longer change the data curses sees."
- elif test -f "$TERMCAP"
--then
-+then
- echo "Your TERMCAP names the file $TERMCAP. I will compile that."
- eval $TIC $TERMCAP
- echo "Done."
-Index: progs/clear.c
-Prereq: 1.11
---- ncurses-5.9/progs/clear.c 2007-10-13 22:16:02.000000000 +0000
-+++ ncurses-5.9-20141206/progs/clear.c 2013-06-22 22:20:54.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2006,2007 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2007,2013 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 *
-@@ -39,7 +39,7 @@
- #define USE_LIBTINFO
- #include <progs.priv.h>
-
--MODULE_ID("$Id: clear.c,v 1.11 2007/10/13 22:16:02 tom Exp $")
-+MODULE_ID("$Id: clear.c,v 1.13 2013/06/22 22:20:54 tom Exp $")
-
- static int
- putch(int c)
-@@ -52,7 +52,15 @@
- int argc GCC_UNUSED,
- char *argv[]GCC_UNUSED)
- {
-+ char *E3;
-+
- setupterm((char *) 0, STDOUT_FILENO, (int *) 0);
-+
-+ /* Clear the scrollback buffer if possible. */
-+ E3 = tigetstr("E3");
-+ if (E3)
-+ (void) tputs(E3, lines > 0 ? lines : 1, putch);
-+
- ExitProgram((tputs(clear_screen, lines > 0 ? lines : 1, putch) == ERR)
- ? EXIT_FAILURE
- : EXIT_SUCCESS);
-Index: progs/dump_entry.c
-Prereq: 1.89
---- ncurses-5.9/progs/dump_entry.c 2010-05-01 22:04:08.000000000 +0000
-+++ ncurses-5.9-20141206/progs/dump_entry.c 2014-10-18 09:32:54.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -39,7 +39,7 @@
- #include "termsort.c" /* this C file is generated */
- #include <parametrized.h> /* so is this */
-
--MODULE_ID("$Id: dump_entry.c,v 1.89 2010/05/01 22:04:08 tom Exp $")
-+MODULE_ID("$Id: dump_entry.c,v 1.114 2014/10/18 09:32:54 tom Exp $")
-
- #define INDENT 8
- #define DISCARD(string) string = ABSENT_STRING
-@@ -57,6 +57,7 @@
- static int outform; /* output format to use */
- static int sortmode; /* sort mode to use */
- static int width = 60; /* max line width for listings */
-+static int height = 65535; /* max number of lines for listings */
- static int column; /* current column, limited by 'width' */
- static int oldcol; /* last value of column before wrap */
- static bool pretty; /* true if we format if-then-else strings */
-@@ -72,7 +73,7 @@
- static NCURSES_CONST char *const *num_names;
- static NCURSES_CONST char *const *str_names;
-
--static const char *separator, *trailer;
-+static const char *separator = "", *trailer = "";
-
- /* cover various ports and variants of terminfo */
- #define V_ALLCAPS 0 /* all capabilities (SVr4, XSI, ncurses) */
-@@ -99,6 +100,15 @@
- #define StrIndirect(j) ((sortmode == S_NOSORT) ? (j) : str_indirect[j])
- #endif
-
-+static void failed(const char *) GCC_NORETURN;
-+
-+static void
-+failed(const char *s)
-+{
-+ perror(s);
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
- static void
- strncpy_DYN(DYNBUF * dst, const char *src, size_t need)
- {
-@@ -106,6 +116,8 @@
- if (want > dst->size) {
- dst->size += (want + 1024); /* be generous */
- dst->text = typeRealloc(char, dst->size, dst->text);
-+ if (dst->text == 0)
-+ failed("strncpy_DYN");
- }
- (void) strncpy(dst->text + dst->used, src, need);
- dst->used += need;
-@@ -172,11 +184,17 @@
- }
-
- void
--dump_init(const char *version, int mode, int sort, int twidth, int traceval,
-+dump_init(const char *version,
-+ int mode,
-+ int sort,
-+ int twidth,
-+ int theight,
-+ unsigned traceval,
- bool formatted)
- /* set up for entry display */
- {
- width = twidth;
-+ height = theight;
- pretty = formatted;
-
- /* versions */
-@@ -201,7 +219,7 @@
- bool_names = boolnames;
- num_names = numnames;
- str_names = strnames;
-- separator = twidth ? ", " : ",";
-+ separator = (twidth > 0 && theight > 1) ? ", " : ",";
- trailer = "\n\t";
- break;
-
-@@ -209,7 +227,7 @@
- bool_names = boolfnames;
- num_names = numfnames;
- str_names = strfnames;
-- separator = twidth ? ", " : ",";
-+ separator = (twidth > 0 && theight > 1) ? ", " : ",";
- trailer = "\n\t";
- break;
-
-@@ -291,7 +309,11 @@
- static void set_obsolete_termcaps(TERMTYPE *tp);
-
- /* is this the index of a function key string? */
--#define FNKEY(i) (((i)<= 65 && (i)>= 75) || ((i)<= 216 && (i)>= 268))
-+#define FNKEY(i) \
-+ (((i) >= STR_IDX(key_f0) && \
-+ (i) <= STR_IDX(key_f9)) || \
-+ ((i) >= STR_IDX(key_f11) && \
-+ (i) <= STR_IDX(key_f63)))
-
- /*
- * If we configure with a different Caps file, the offsets into the arrays
-@@ -393,8 +415,8 @@
- static void
- wrap_concat(const char *src)
- {
-- unsigned need = strlen(src);
-- unsigned want = strlen(separator) + need;
-+ size_t need = strlen(src);
-+ size_t want = strlen(separator) + need;
-
- if (column > INDENT
- && column + (int) want > width) {
-@@ -445,10 +467,10 @@
- int n;
-
- for (n = 0; n < level; n++)
-- strncpy_DYN(buffer, "\t", 1);
-+ strncpy_DYN(buffer, "\t", (size_t) 1);
- }
-
--static bool
-+bool
- has_params(const char *src)
- {
- bool result = FALSE;
-@@ -458,9 +480,9 @@
- bool params = FALSE;
-
- for (n = 0; n < len - 1; ++n) {
-- if (!strncmp(src + n, "%p", 2)) {
-+ if (!strncmp(src + n, "%p", (size_t) 2)) {
- params = TRUE;
-- } else if (!strncmp(src + n, "%;", 2)) {
-+ } else if (!strncmp(src + n, "%;", (size_t) 2)) {
- ifthen = TRUE;
- result = params;
- break;
-@@ -473,7 +495,7 @@
- }
-
- static char *
--fmt_complex(char *src, int level)
-+fmt_complex(TERMTYPE *tterm, const char *capability, char *src, int level)
- {
- bool percent = FALSE;
- bool params = has_params(src);
-@@ -482,7 +504,7 @@
- switch (*src) {
- case '\\':
- percent = FALSE;
-- strncpy_DYN(&tmpbuf, src++, 1);
-+ strncpy_DYN(&tmpbuf, src++, (size_t) 1);
- break;
- case '%':
- percent = TRUE;
-@@ -496,26 +518,28 @@
- /* treat a "%e" as else-if, on the same level */
- if (*src == 'e') {
- indent_DYN(&tmpbuf, level);
-- strncpy_DYN(&tmpbuf, "%", 1);
-- strncpy_DYN(&tmpbuf, src, 1);
-+ strncpy_DYN(&tmpbuf, "%", (size_t) 1);
-+ strncpy_DYN(&tmpbuf, src, (size_t) 1);
- src++;
- params = has_params(src);
- if (!params && *src != '\0' && *src != '%') {
-- strncpy_DYN(&tmpbuf, "\n", 1);
-+ strncpy_DYN(&tmpbuf, "\n", (size_t) 1);
- indent_DYN(&tmpbuf, level + 1);
- }
- } else {
- indent_DYN(&tmpbuf, level + 1);
-- strncpy_DYN(&tmpbuf, "%", 1);
-- strncpy_DYN(&tmpbuf, src, 1);
-+ strncpy_DYN(&tmpbuf, "%", (size_t) 1);
-+ strncpy_DYN(&tmpbuf, src, (size_t) 1);
- if (*src++ == '?') {
-- src = fmt_complex(src, level + 1);
-+ src = fmt_complex(tterm, capability, src, level + 1);
- if (*src != '\0' && *src != '%') {
-- strncpy_DYN(&tmpbuf, "\n", 1);
-+ strncpy_DYN(&tmpbuf, "\n", (size_t) 1);
- indent_DYN(&tmpbuf, level + 1);
- }
- } else if (level == 1) {
-- _nc_warning("%%%c without %%?", *src);
-+ _nc_warning("%s: %%%c without %%? in %s",
-+ _nc_first_name(tterm->term_names),
-+ *src, capability);
- }
- }
- continue;
-@@ -527,31 +551,39 @@
- if (level > 1) {
- tmpbuf.text[tmpbuf.used - 1] = '\n';
- indent_DYN(&tmpbuf, level);
-- strncpy_DYN(&tmpbuf, "%", 1);
-- strncpy_DYN(&tmpbuf, src++, 1);
-+ strncpy_DYN(&tmpbuf, "%", (size_t) 1);
-+ strncpy_DYN(&tmpbuf, src++, (size_t) 1);
-+ if (src[0] == '%'
-+ && src[1] != '\0'
-+ && (strchr("?e;", src[1])) == 0) {
-+ tmpbuf.text[tmpbuf.used++] = '\n';
-+ indent_DYN(&tmpbuf, level);
-+ }
- return src;
- }
-- _nc_warning("%%; without %%?");
-+ _nc_warning("%s: %%; without %%? in %s",
-+ _nc_first_name(tterm->term_names),
-+ capability);
- }
- break;
- case 'p':
- if (percent && params) {
- tmpbuf.text[tmpbuf.used - 1] = '\n';
- indent_DYN(&tmpbuf, level + 1);
-- strncpy_DYN(&tmpbuf, "%", 1);
-+ strncpy_DYN(&tmpbuf, "%", (size_t) 1);
- }
- params = FALSE;
- percent = FALSE;
- break;
- case ' ':
-- strncpy_DYN(&tmpbuf, "\\s", 2);
-+ strncpy_DYN(&tmpbuf, "\\s", (size_t) 2);
- ++src;
- continue;
- default:
- percent = FALSE;
- break;
- }
-- strncpy_DYN(&tmpbuf, src++, 1);
-+ strncpy_DYN(&tmpbuf, src++, (size_t) 1);
- }
- return src;
- }
-@@ -562,9 +594,9 @@
- int
- fmt_entry(TERMTYPE *tterm,
- PredFunc pred,
-- bool content_only,
-- bool suppress_untranslatable,
-- bool infodump,
-+ int content_only,
-+ int suppress_untranslatable,
-+ int infodump,
- int numbers)
- {
- PredIdx i, j;
-@@ -593,14 +625,28 @@
- column = INDENT; /* FIXME: workaround to prevent empty lines */
- } else {
- strcpy_DYN(&outbuf, tterm->term_names);
-+
-+ /*
-+ * Colon is legal in terminfo descriptions, but not in termcap.
-+ */
-+ if (!infodump) {
-+ char *p = outbuf.text;
-+ while (*p) {
-+ if (*p == ':') {
-+ *p = '=';
-+ }
-+ ++p;
-+ }
-+ }
- strcpy_DYN(&outbuf, separator);
- column = (int) outbuf.used;
-- force_wrap();
-+ if (height > 1)
-+ force_wrap();
- }
-
- for_each_boolean(j, tterm) {
- i = BoolIndirect(j);
-- name = ExtBoolname(tterm, i, bool_names);
-+ name = ExtBoolname(tterm, (int) i, bool_names);
- assert(strlen(name) < sizeof(buffer) - EXTRA_CAP);
-
- if (!version_filter(BOOLEAN, i))
-@@ -610,21 +656,21 @@
-
- predval = pred(BOOLEAN, i);
- if (predval != FAIL) {
-- (void) strcpy(buffer, name);
-+ _nc_STRCPY(buffer, name, sizeof(buffer));
- if (predval <= 0)
-- (void) strcat(buffer, "@");
-+ _nc_STRCAT(buffer, "@", sizeof(buffer));
- else if (i + 1 > num_bools)
- num_bools = i + 1;
- WRAP_CONCAT;
- }
- }
-
-- if (column != INDENT)
-+ if (column != INDENT && height > 1)
- force_wrap();
-
- for_each_number(j, tterm) {
- i = NumIndirect(j);
-- name = ExtNumname(tterm, i, num_names);
-+ name = ExtNumname(tterm, (int) i, num_names);
- assert(strlen(name) < sizeof(buffer) - EXTRA_CAP);
-
- if (!version_filter(NUMBER, i))
-@@ -635,9 +681,11 @@
- predval = pred(NUMBER, i);
- if (predval != FAIL) {
- if (tterm->Numbers[i] < 0) {
-- sprintf(buffer, "%s@", name);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "%s@", name);
- } else {
-- sprintf(buffer, "%s#%d", name, tterm->Numbers[i]);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "%s#%d", name, tterm->Numbers[i]);
- if (i + 1 > num_values)
- num_values = i + 1;
- }
-@@ -645,7 +693,7 @@
- }
- }
-
-- if (column != INDENT)
-+ if (column != INDENT && height > 1)
- force_wrap();
-
- len += (int) (num_bools
-@@ -670,7 +718,7 @@
-
- for_each_string(j, tterm) {
- i = StrIndirect(j);
-- name = ExtStrname(tterm, i, str_names);
-+ name = ExtStrname(tterm, (int) i, str_names);
- assert(strlen(name) < sizeof(buffer) - EXTRA_CAP);
-
- capability = tterm->Strings[i];
-@@ -698,14 +746,14 @@
- if (PRESENT(insert_character) || PRESENT(parm_ich)) {
- if (SAME_CAP(i, enter_insert_mode)
- && enter_insert_mode == ABSENT_STRING) {
-- (void) strcpy(buffer, "im=");
-+ _nc_STRCPY(buffer, "im=", sizeof(buffer));
- WRAP_CONCAT;
- continue;
- }
-
- if (SAME_CAP(i, exit_insert_mode)
- && exit_insert_mode == ABSENT_STRING) {
-- (void) strcpy(buffer, "ei=");
-+ _nc_STRCPY(buffer, "ei=", sizeof(buffer));
- WRAP_CONCAT;
- continue;
- }
-@@ -739,24 +787,29 @@
- num_strings = i + 1;
-
- if (!VALID_STRING(capability)) {
-- sprintf(buffer, "%s@", name);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "%s@", name);
- WRAP_CONCAT;
- } else if (outform == F_TERMCAP || outform == F_TCONVERR) {
-- int params = ((i < (int) SIZEOF(parametrized))
-- ? parametrized[i]
-- : 0);
- char *srccap = _nc_tic_expand(capability, TRUE, numbers);
-+ int params = (((i < (int) SIZEOF(parametrized)) &&
-+ (i < STRCOUNT))
-+ ? parametrized[i]
-+ : ((*srccap == 'k')
-+ ? 0
-+ : has_params(srccap)));
- char *cv = _nc_infotocap(name, srccap, params);
-
- if (cv == 0) {
- if (outform == F_TCONVERR) {
-- sprintf(buffer, "%s=!!! %s WILL NOT CONVERT !!!",
-- name, srccap);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "%s=!!! %s WILL NOT CONVERT !!!",
-+ name, srccap);
- } else if (suppress_untranslatable) {
- continue;
- } else {
- char *s = srccap, *d = buffer;
-- sprintf(d, "..%s=", name);
-+ _nc_SPRINTF(d, _nc_SLIMIT(sizeof(buffer)) "..%s=", name);
- d += strlen(d);
- while ((*d = *s++) != 0) {
- if (*d == ':') {
-@@ -769,7 +822,8 @@
- }
- }
- } else {
-- sprintf(buffer, "%s=%s", name, cv);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "%s=%s", name, cv);
- }
- len += (int) strlen(capability) + 1;
- WRAP_CONCAT;
-@@ -783,7 +837,7 @@
- if (pretty
- && (outform == F_TERMINFO
- || outform == F_VARIABLE)) {
-- fmt_complex(src, 1);
-+ fmt_complex(tterm, name, src, 1);
- } else {
- strcpy_DYN(&tmpbuf, src);
- }
-@@ -793,7 +847,9 @@
- }
- }
- /* e.g., trimmed_sgr0 */
-- if (capability != tterm->Strings[i])
-+ if (capability != ABSENT_STRING &&
-+ capability != CANCELLED_STRING &&
-+ capability != tterm->Strings[i])
- free(capability);
- }
- len += (int) (num_strings * 2);
-@@ -805,11 +861,13 @@
- */
- if (tversion == V_HPUX) {
- if (VALID_STRING(memory_lock)) {
-- (void) sprintf(buffer, "meml=%s", memory_lock);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "meml=%s", memory_lock);
- WRAP_CONCAT;
- }
- if (VALID_STRING(memory_unlock)) {
-- (void) sprintf(buffer, "memu=%s", memory_unlock);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "memu=%s", memory_unlock);
- WRAP_CONCAT;
- }
- } else if (tversion == V_AIX) {
-@@ -821,7 +879,7 @@
-
- tp = boxchars;
- for (cp = acstrans; *cp; cp++) {
-- sp = strchr(acs_chars, *cp);
-+ sp = (strchr) (acs_chars, *cp);
- if (sp)
- *tp++ = sp[1];
- else {
-@@ -832,9 +890,41 @@
- tp[0] = '\0';
-
- if (box_ok) {
-- (void) strcpy(buffer, "box1=");
-- (void) strcat(buffer, _nc_tic_expand(boxchars,
-- outform == F_TERMINFO, numbers));
-+ char *tmp = _nc_tic_expand(boxchars,
-+ (outform == F_TERMINFO),
-+ numbers);
-+ _nc_STRCPY(buffer, "box1=", sizeof(buffer));
-+ while (*tmp != '\0') {
-+ size_t have = strlen(buffer);
-+ size_t next = strlen(tmp);
-+ size_t want = have + next + 1;
-+ size_t last = next;
-+ char save = '\0';
-+
-+ /*
-+ * If the expanded string is too long for the buffer,
-+ * chop it off and save the location where we chopped it.
-+ */
-+ if (want >= sizeof(buffer)) {
-+ save = tmp[last];
-+ tmp[last] = '\0';
-+ }
-+ _nc_STRCAT(buffer, tmp, sizeof(buffer));
-+
-+ /*
-+ * If we chopped the buffer, replace the missing piece and
-+ * shift everything to append the remainder.
-+ */
-+ if (save != '\0') {
-+ next = 0;
-+ tmp[last] = save;
-+ while ((tmp[next] = tmp[last + next]) != '\0') {
-+ ++next;
-+ }
-+ } else {
-+ break;
-+ }
-+ }
- WRAP_CONCAT;
- }
- }
-@@ -846,7 +936,7 @@
- */
- if (outcount) {
- bool trimmed = FALSE;
-- j = outbuf.used;
-+ j = (PredIdx) outbuf.used;
- if (j >= 2
- && outbuf.text[j - 1] == '\t'
- && outbuf.text[j - 2] == '\n') {
-@@ -926,7 +1016,7 @@
- char name[10];
-
- for (n = 0; n <= 10; ++n) {
-- sprintf(name, "lf%d", n);
-+ _nc_SPRINTF(name, _nc_SLIMIT(sizeof(name)) "lf%d", n);
- if ((cap = find_string(tterm, name)) != ABSENT_STRING
- && kill_string(tterm, cap)) {
- target -= (int) (strlen(cap) + 5);
-@@ -951,7 +1041,7 @@
- char name[10];
-
- for (n = 60; n >= 0; --n) {
-- sprintf(name, "kf%d", n);
-+ _nc_SPRINTF(name, _nc_SLIMIT(sizeof(name)) "kf%d", n);
- if ((cap = find_string(tterm, name)) != ABSENT_STRING
- && kill_string(tterm, cap)) {
- target -= (int) (strlen(cap) + 5);
-@@ -1017,8 +1107,8 @@
- */
- void
- dump_entry(TERMTYPE *tterm,
-- bool suppress_untranslatable,
-- bool limited,
-+ int suppress_untranslatable,
-+ int limited,
- int numbers,
- PredFunc pred)
- {
-@@ -1064,7 +1154,7 @@
- */
- unsigned n;
- for (n = STRCOUNT; n < NUM_STRINGS(tterm); n++) {
-- const char *name = ExtStrname(tterm, n, strnames);
-+ const char *name = ExtStrname(tterm, (int) n, strnames);
-
- if (VALID_STRING(tterm->Strings[n])) {
- set_attributes = ABSENT_STRING;
-@@ -1144,21 +1234,45 @@
-
- if (outform == F_TERMCAP || outform == F_TCONVERR)
- trim_trailing();
-- (void) sprintf(buffer, "%s%s", infodump ? "use=" : "tc=", name);
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "%s%s", infodump ? "use=" : "tc=", name);
- wrap_concat(buffer);
- }
-
- int
- show_entry(void)
- {
-- trim_trailing();
-+ /*
-+ * Trim any remaining whitespace.
-+ */
-+ if (outbuf.used != 0) {
-+ bool infodump = (outform != F_TERMCAP && outform != F_TCONVERR);
-+ char delim = (char) (infodump ? ',' : ':');
-+ int j;
-+
-+ for (j = (int) outbuf.used - 1; j > 0; --j) {
-+ char ch = outbuf.text[j];
-+ if (ch == '\n') {
-+ ;
-+ } else if (isspace(UChar(ch))) {
-+ outbuf.used = (size_t) j;
-+ } else if (!infodump && ch == '\\') {
-+ outbuf.used = (size_t) j;
-+ } else if (ch == delim && (j == 0 || outbuf.text[j - 1] != '\\')) {
-+ outbuf.used = (size_t) (j + 1);
-+ } else {
-+ break;
-+ }
-+ }
-+ outbuf.text[outbuf.used] = '\0';
-+ }
- (void) fputs(outbuf.text, stdout);
- putchar('\n');
- return (int) outbuf.used;
- }
-
- void
--compare_entry(void (*hook) (PredType t, PredIdx i, const char *name),
-+compare_entry(PredHook hook,
- TERMTYPE *tp GCC_UNUSED,
- bool quiet)
- /* compare two entries */
-@@ -1170,7 +1284,7 @@
- fputs(" comparing booleans.\n", stdout);
- for_each_boolean(j, tp) {
- i = BoolIndirect(j);
-- name = ExtBoolname(tp, i, bool_names);
-+ name = ExtBoolname(tp, (int) i, bool_names);
-
- if (isObsolete(outform, name))
- continue;
-@@ -1182,7 +1296,7 @@
- fputs(" comparing numbers.\n", stdout);
- for_each_number(j, tp) {
- i = NumIndirect(j);
-- name = ExtNumname(tp, i, num_names);
-+ name = ExtNumname(tp, (int) i, num_names);
-
- if (isObsolete(outform, name))
- continue;
-@@ -1194,7 +1308,7 @@
- fputs(" comparing strings.\n", stdout);
- for_each_string(j, tp) {
- i = StrIndirect(j);
-- name = ExtStrname(tp, i, str_names);
-+ name = ExtStrname(tp, (int) i, str_names);
-
- if (isObsolete(outform, name))
- continue;
-Index: progs/dump_entry.h
-Prereq: 1.30
---- ncurses-5.9/progs/dump_entry.h 2008-07-12 20:23:03.000000000 +0000
-+++ ncurses-5.9-20141206/progs/dump_entry.h 2014-10-18 09:34:15.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2006,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -32,9 +32,8 @@
- * and: Thomas E. Dickey 1996-on *
- ****************************************************************************/
-
--
- /*
-- * $Id: dump_entry.h,v 1.30 2008/07/12 20:23:03 tom Exp $
-+ * $Id: dump_entry.h,v 1.34 2014/10/18 09:34:15 tom Exp $
- *
- * Dump control definitions and variables
- */
-@@ -64,16 +63,18 @@
-
- typedef unsigned PredType;
- typedef unsigned PredIdx;
--typedef int (*PredFunc)(PredType, PredIdx);
-+typedef int (*PredFunc) (PredType, PredIdx);
-+typedef void (*PredHook) (PredType, PredIdx, const char *);
-
- extern NCURSES_CONST char *nametrans(const char *);
--extern int fmt_entry(TERMTYPE *, PredFunc, bool, bool, bool, int);
-+extern bool has_params(const char *src);
-+extern int fmt_entry(TERMTYPE *, PredFunc, int, int, int, int);
- extern int show_entry(void);
--extern void compare_entry(void (*)(PredType, PredIdx, const char *), TERMTYPE *, bool);
--extern void dump_entry(TERMTYPE *, bool, bool, int, PredFunc);
--extern void dump_init(const char *, int, int, int, int, bool);
-+extern void compare_entry(PredHook, TERMTYPE *, bool);
-+extern void dump_entry(TERMTYPE *, int, int, int, PredFunc);
-+extern void dump_init(const char *, int, int, int, int, unsigned, bool);
- extern void dump_uses(const char *, bool);
--extern void repair_acsc(TERMTYPE * tp);
-+extern void repair_acsc(TERMTYPE *tp);
-
- #define FAIL -1
-
-Index: progs/infocmp.c
-Prereq: 1.105
---- ncurses-5.9/progs/infocmp.c 2010-05-01 22:04:08.000000000 +0000
-+++ ncurses-5.9-20141206/progs/infocmp.c 2014-02-01 22:11:03.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -42,7 +42,7 @@
-
- #include <dump_entry.h>
-
--MODULE_ID("$Id: infocmp.c,v 1.105 2010/05/01 22:04:08 tom Exp $")
-+MODULE_ID("$Id: infocmp.c,v 1.129 2014/02/01 22:11:03 tom Exp $")
-
- #define L_CURL "{"
- #define R_CURL "}"
-@@ -70,8 +70,9 @@
- static const char *s_absent = "NULL";
- static const char *s_cancel = "NULL";
- static const char *tversion; /* terminfo version selected */
--static int itrace; /* trace flag for debugging */
-+static unsigned itrace; /* trace flag for debugging */
- static int mwidth = 60;
-+static int mheight = 65535;
- static int numbers = 0; /* format "%'char'" to/from "%{number}" */
- static int outform = F_TERMINFO; /* output format */
- static int sortmode; /* sort_mode */
-@@ -86,27 +87,52 @@
- static bool ignorepads; /* ignore pad prefixes when diffing */
-
- #if NO_LEAKS
-+
-+typedef struct {
-+ ENTRY *head;
-+ ENTRY *tail;
-+} ENTERED;
-+
-+static ENTERED *entered;
-+
- #undef ExitProgram
- static void ExitProgram(int code) GCC_NORETURN;
- /* prototype is to get gcc to accept the noreturn attribute */
- static void
- ExitProgram(int code)
- {
-- while (termcount-- > 0)
-- _nc_free_termtype(&entries[termcount].tterm);
-+ int n;
-+
-+ for (n = 0; n < termcount; ++n) {
-+ ENTRY *new_head = _nc_head;
-+ ENTRY *new_tail = _nc_tail;
-+ _nc_head = entered[n].head;
-+ _nc_tail = entered[n].tail;
-+ _nc_free_entries(entered[n].head);
-+ _nc_head = new_head;
-+ _nc_tail = new_tail;
-+ }
- _nc_leaks_dump_entry();
- free(entries);
-+ free(entered);
- _nc_free_tic(code);
- }
- #endif
-
-+static void
-+failed(const char *s)
-+{
-+ perror(s);
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
- static char *
- canonical_name(char *ptr, char *buf)
- /* extract the terminal type's primary name */
- {
- char *bp;
-
-- (void) strcpy(buf, ptr);
-+ _nc_STRCPY(buf, ptr, NAMESIZE);
- if ((bp = strchr(buf, '|')) != 0)
- *bp = '\0';
-
-@@ -307,13 +333,13 @@
- {
- switch (val) {
- case ABSENT_NUMERIC:
-- strcpy(buf, s_absent);
-+ _nc_STRCPY(buf, s_absent, MAX_STRING);
- break;
- case CANCELLED_NUMERIC:
-- strcpy(buf, s_cancel);
-+ _nc_STRCPY(buf, s_cancel, MAX_STRING);
- break;
- default:
-- sprintf(buf, "%d", val);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(MAX_STRING) "%d", val);
- break;
- }
- }
-@@ -323,31 +349,94 @@
- /* display the value of a string capability */
- {
- if (val == ABSENT_STRING)
-- strcpy(buf, s_absent);
-+ _nc_STRCPY(buf, s_absent, MAX_STRING);
- else if (val == CANCELLED_STRING)
-- strcpy(buf, s_cancel);
-+ _nc_STRCPY(buf, s_cancel, MAX_STRING);
- else {
-- sprintf(buf, "'%.*s'", MAX_STRING - 3, TIC_EXPAND(val));
-+ _nc_SPRINTF(buf, _nc_SLIMIT(MAX_STRING)
-+ "'%.*s'", MAX_STRING - 3, TIC_EXPAND(val));
- }
- }
-
-+/*
-+ * Show "comparing..." message for the given terminal names.
-+ */
-+static void
-+show_comparing(char **names)
-+{
-+ if (itrace) {
-+ switch (compare) {
-+ case C_DIFFERENCE:
-+ (void) fprintf(stderr, "%s: dumping differences\n", _nc_progname);
-+ break;
-+
-+ case C_COMMON:
-+ (void) fprintf(stderr, "%s: dumping common capabilities\n", _nc_progname);
-+ break;
-+
-+ case C_NAND:
-+ (void) fprintf(stderr, "%s: dumping differences\n", _nc_progname);
-+ break;
-+ }
-+ }
-+ if (*names) {
-+ printf("comparing %s", *names++);
-+ if (*names) {
-+ printf(" to %s", *names++);
-+ while (*names) {
-+ printf(", %s", *names++);
-+ }
-+ }
-+ printf(".\n");
-+ }
-+}
-+
-+/*
-+ * ncurses stores two types of non-standard capabilities:
-+ * 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.
-+ * b) user-definable capabilities, via "tic -x".
-+ *
-+ * However, if "-x" is omitted from the tic command, both types of
-+ * non-standard capability are not loaded into the terminfo database. This
-+ * macro is used for limit-checks against the symbols that tic uses to omit
-+ * the two types of non-standard entry.
-+ */
-+#if NCURSES_XNAMES
-+#define check_user_definable(n,limit) if (!_nc_user_definable && (n) > (limit)) break
-+#else
-+#define check_user_definable(n,limit) if ((n) > (limit)) break
-+#endif
-+
-+/*
-+ * Use these macros to simplify loops on C_COMMON and C_NAND:
-+ */
-+#define for_each_entry() while (entries[extra].tterm.term_names)
-+#define next_entry (&(entries[extra++].tterm))
-+
- static void
- compare_predicate(PredType type, PredIdx idx, const char *name)
- /* predicate function to use for entry difference reports */
- {
-- register ENTRY *e1 = &entries[0];
-- register ENTRY *e2 = &entries[1];
-- char buf1[MAX_STRING], buf2[MAX_STRING];
-+ ENTRY *e1 = &entries[0];
-+ ENTRY *e2 = &entries[1];
-+ char buf1[MAX_STRING];
-+ char buf2[MAX_STRING];
- int b1, b2;
- int n1, n2;
- char *s1, *s2;
-+ bool found;
-+ int extra = 1;
-
- switch (type) {
- case CMP_BOOLEAN:
-+ check_user_definable(idx, BOOLWRITE);
- b1 = e1->tterm.Booleans[idx];
-- b2 = e2->tterm.Booleans[idx];
- switch (compare) {
- case C_DIFFERENCE:
-+ b2 = next_entry->Booleans[idx];
- if (!(b1 == ABSENT_BOOLEAN && b2 == ABSENT_BOOLEAN) && b1 != b2)
- (void) printf("\t%s: %s%s%s.\n",
- name,
-@@ -357,45 +446,93 @@
- break;
-
- case C_COMMON:
-- if (b1 == b2 && b1 != ABSENT_BOOLEAN)
-- (void) printf("\t%s= %s.\n", name, dump_boolean(b1));
-+ if (b1 != ABSENT_BOOLEAN) {
-+ found = TRUE;
-+ for_each_entry() {
-+ b2 = next_entry->Booleans[idx];
-+ if (b1 != b2) {
-+ found = FALSE;
-+ break;
-+ }
-+ }
-+ if (found) {
-+ (void) printf("\t%s= %s.\n", name, dump_boolean(b1));
-+ }
-+ }
- break;
-
- case C_NAND:
-- if (b1 == ABSENT_BOOLEAN && b2 == ABSENT_BOOLEAN)
-- (void) printf("\t!%s.\n", name);
-+ if (b1 == ABSENT_BOOLEAN) {
-+ found = TRUE;
-+ for_each_entry() {
-+ b2 = next_entry->Booleans[idx];
-+ if (b1 != b2) {
-+ found = FALSE;
-+ break;
-+ }
-+ }
-+ if (found) {
-+ (void) printf("\t!%s.\n", name);
-+ }
-+ }
- break;
- }
- break;
-
- case CMP_NUMBER:
-+ check_user_definable(idx, NUMWRITE);
- n1 = e1->tterm.Numbers[idx];
-- n2 = e2->tterm.Numbers[idx];
-- dump_numeric(n1, buf1);
-- dump_numeric(n2, buf2);
- switch (compare) {
- case C_DIFFERENCE:
-- if (!((n1 == ABSENT_NUMERIC && n2 == ABSENT_NUMERIC)) && n1 != n2)
-+ n2 = next_entry->Numbers[idx];
-+ if (!((n1 == ABSENT_NUMERIC && n2 == ABSENT_NUMERIC)) && n1 != n2) {
-+ dump_numeric(n1, buf1);
-+ dump_numeric(n2, buf2);
- (void) printf("\t%s: %s, %s.\n", name, buf1, buf2);
-+ }
- break;
-
- case C_COMMON:
-- if (n1 != ABSENT_NUMERIC && n2 != ABSENT_NUMERIC && n1 == n2)
-- (void) printf("\t%s= %s.\n", name, buf1);
-+ if (n1 != ABSENT_NUMERIC) {
-+ found = TRUE;
-+ for_each_entry() {
-+ n2 = next_entry->Numbers[idx];
-+ if (n1 != n2) {
-+ found = FALSE;
-+ break;
-+ }
-+ }
-+ if (found) {
-+ dump_numeric(n1, buf1);
-+ (void) printf("\t%s= %s.\n", name, buf1);
-+ }
-+ }
- break;
-
- case C_NAND:
-- if (n1 == ABSENT_NUMERIC && n2 == ABSENT_NUMERIC)
-- (void) printf("\t!%s.\n", name);
-+ if (n1 == ABSENT_NUMERIC) {
-+ found = TRUE;
-+ for_each_entry() {
-+ n2 = next_entry->Numbers[idx];
-+ if (n1 != n2) {
-+ found = FALSE;
-+ break;
-+ }
-+ }
-+ if (found) {
-+ (void) printf("\t!%s.\n", name);
-+ }
-+ }
- break;
- }
- break;
-
- case CMP_STRING:
-+ check_user_definable(idx, STRWRITE);
- s1 = e1->tterm.Strings[idx];
-- s2 = e2->tterm.Strings[idx];
- switch (compare) {
- case C_DIFFERENCE:
-+ s2 = next_entry->Strings[idx];
- if (capcmp(idx, s1, s2)) {
- dump_string(s1, buf1);
- dump_string(s2, buf2);
-@@ -405,13 +542,35 @@
- break;
-
- case C_COMMON:
-- if (s1 && s2 && !capcmp(idx, s1, s2))
-- (void) printf("\t%s= '%s'.\n", name, TIC_EXPAND(s1));
-+ if (s1 != ABSENT_STRING) {
-+ found = TRUE;
-+ for_each_entry() {
-+ s2 = next_entry->Strings[idx];
-+ if (capcmp(idx, s1, s2) != 0) {
-+ found = FALSE;
-+ break;
-+ }
-+ }
-+ if (found) {
-+ (void) printf("\t%s= '%s'.\n", name, TIC_EXPAND(s1));
-+ }
-+ }
- break;
-
- case C_NAND:
-- if (!s1 && !s2)
-- (void) printf("\t!%s.\n", name);
-+ if (s1 == ABSENT_STRING) {
-+ found = TRUE;
-+ for_each_entry() {
-+ s2 = next_entry->Strings[idx];
-+ if (s2 != s1) {
-+ found = FALSE;
-+ break;
-+ }
-+ }
-+ if (found) {
-+ (void) printf("\t!%s.\n", name);
-+ }
-+ }
- break;
- }
- break;
-@@ -430,16 +589,37 @@
- break;
-
- case C_COMMON:
-- if (e1->nuses && e2->nuses && useeq(e1, e2)) {
-- (void) fputs("\tuse: ", stdout);
-- print_uses(e1, stdout);
-- fputs(".\n", stdout);
-+ if (e1->nuses) {
-+ found = TRUE;
-+ for_each_entry() {
-+ e2 = &entries[extra++];
-+ if (e2->nuses != e1->nuses || !useeq(e1, e2)) {
-+ found = FALSE;
-+ break;
-+ }
-+ }
-+ if (found) {
-+ (void) fputs("\tuse: ", stdout);
-+ print_uses(e1, stdout);
-+ fputs(".\n", stdout);
-+ }
- }
- break;
-
- case C_NAND:
-- if (!e1->nuses && !e2->nuses)
-- (void) printf("\t!use.\n");
-+ if (!e1->nuses) {
-+ found = TRUE;
-+ for_each_entry() {
-+ e2 = &entries[extra++];
-+ if (e2->nuses != e1->nuses) {
-+ found = FALSE;
-+ break;
-+ }
-+ }
-+ if (found) {
-+ (void) printf("\t!use.\n");
-+ }
-+ }
- break;
- }
- }
-@@ -556,7 +736,7 @@
- }
-
- static bool
--same_param(const char *table, const char *param, unsigned length)
-+same_param(const char *table, const char *param, size_t length)
- {
- bool result = FALSE;
- if (strncmp(table, param, length) == 0) {
-@@ -581,15 +761,15 @@
- size_t tlen = strlen(ap->from);
-
- if (same_param(ap->from, ep, tlen)) {
-- (void) strcat(dst, ap->to);
-+ _nc_STRCAT(dst, ap->to, MAX_TERMINFO_LENGTH);
- found = TRUE;
- break;
- }
- }
-
- if (!found)
-- (void) strcat(dst, ep);
-- (void) strcat(dst, ";");
-+ _nc_STRCAT(dst, ep, MAX_TERMINFO_LENGTH);
-+ _nc_STRCAT(dst, ";", MAX_TERMINFO_LENGTH);
- } while
- ((ep = strtok((char *) 0, ";")));
-
-@@ -608,7 +788,7 @@
- const assoc *ap;
- int tp_lines = tp->Numbers[2];
-
-- if (cap == ABSENT_STRING || cap == CANCELLED_STRING)
-+ if (!VALID_STRING(cap))
- return;
- (void) printf("%s: ", name);
-
-@@ -624,12 +804,13 @@
- for (i = 0; i < STRCOUNT; i++) {
- char *cp = tp->Strings[i];
-
-- /* don't use soft-key capabilities */
-- if (strnames[i][0] == 'k' && strnames[i][0] == 'f')
-+ /* don't use function-key capabilities */
-+ if (strnames[i][0] == 'k' && strnames[i][1] == 'f')
- continue;
-
-- if (cp != ABSENT_STRING && cp != CANCELLED_STRING && cp[0] && cp
-- != cap) {
-+ if (VALID_STRING(cp) &&
-+ cp[0] != '\0' &&
-+ cp != cap) {
- len = strlen(cp);
- (void) strncpy(buf2, sp, len);
- buf2[len] = '\0';
-@@ -637,7 +818,7 @@
- if (_nc_capcmp(cp, buf2))
- continue;
-
--#define ISRS(s) (!strncmp((s), "is", 2) || !strncmp((s), "rs", 2))
-+#define ISRS(s) (!strncmp((s), "is", (size_t) 2) || !strncmp((s), "rs", (size_t) 2))
- /*
- * Theoretically we just passed the test for translation
- * (equality once the padding is stripped). However, there
-@@ -677,12 +858,16 @@
- /* now check for standard-mode sequences */
- if (!expansion
- && (csi = skip_csi(sp)) != 0
-- && (len = strspn(sp + csi, "0123456789;"))
-+ && (len = (strspn) (sp + csi, "0123456789;"))
- && (len < sizeof(buf3))
- && (next = (size_t) csi + len)
- && ((sp[next] == 'h') || (sp[next] == 'l'))) {
-
-- (void) strcpy(buf2, (sp[next] == 'h') ? "ECMA+" : "ECMA-");
-+ _nc_STRCPY(buf2,
-+ ((sp[next] == 'h')
-+ ? "ECMA+"
-+ : "ECMA-"),
-+ sizeof(buf2));
- (void) strncpy(buf3, sp + csi, len);
- buf3[len] = '\0';
- len += (size_t) csi + 1;
-@@ -694,12 +879,16 @@
- if (!expansion
- && (csi = skip_csi(sp)) != 0
- && sp[csi] == '?'
-- && (len = strspn(sp + csi + 1, "0123456789;"))
-+ && (len = (strspn) (sp + csi + 1, "0123456789;"))
- && (len < sizeof(buf3))
- && (next = (size_t) csi + 1 + len)
- && ((sp[next] == 'h') || (sp[next] == 'l'))) {
-
-- (void) strcpy(buf2, (sp[next] == 'h') ? "DEC+" : "DEC-");
-+ _nc_STRCPY(buf2,
-+ ((sp[next] == 'h')
-+ ? "DEC+"
-+ : "DEC-"),
-+ sizeof(buf2));
- (void) strncpy(buf3, sp + csi + 1, len);
- buf3[len] = '\0';
- len += (size_t) csi + 2;
-@@ -710,12 +899,12 @@
- /* now check for ECMA highlight sequences */
- if (!expansion
- && (csi = skip_csi(sp)) != 0
-- && (len = strspn(sp + csi, "0123456789;")) != 0
-+ && (len = (strspn) (sp + csi, "0123456789;")) != 0
- && (len < sizeof(buf3))
- && (next = (size_t) csi + len)
- && sp[next] == 'm') {
-
-- (void) strcpy(buf2, "SGR:");
-+ _nc_STRCPY(buf2, "SGR:", sizeof(buf2));
- (void) strncpy(buf3, sp + csi, len);
- buf3[len] = '\0';
- len += (size_t) csi + 1;
-@@ -727,8 +916,8 @@
- && (csi = skip_csi(sp)) != 0
- && sp[csi] == 'm') {
- len = (size_t) csi + 1;
-- (void) strcpy(buf2, "SGR:");
-- strcat(buf2, ecma_highlights[0].to);
-+ _nc_STRCPY(buf2, "SGR:", sizeof(buf2));
-+ _nc_STRCAT(buf2, ecma_highlights[0].to, sizeof(buf2));
- expansion = buf2;
- }
-
-@@ -739,7 +928,7 @@
- expansion = "RSR";
- len = 1;
- } else {
-- (void) sprintf(buf2, "1;%dr", tp_lines);
-+ _nc_SPRINTF(buf2, _nc_SLIMIT(sizeof(buf2)) "1;%dr", tp_lines);
- len = strlen(buf2);
- if (strncmp(buf2, sp + csi, len) == 0)
- expansion = "RSR";
-@@ -750,12 +939,12 @@
- /* now check for home-down */
- if (!expansion
- && (csi = skip_csi(sp)) != 0) {
-- (void) sprintf(buf2, "%d;1H", tp_lines);
-+ _nc_SPRINTF(buf2, _nc_SLIMIT(sizeof(buf2)) "%d;1H", tp_lines);
- len = strlen(buf2);
- if (strncmp(buf2, sp + csi, len) == 0) {
- expansion = "LL";
- } else {
-- (void) sprintf(buf2, "%dH", tp_lines);
-+ _nc_SPRINTF(buf2, _nc_SLIMIT(sizeof(buf2)) "%dH", tp_lines);
- len = strlen(buf2);
- if (strncmp(buf2, sp + csi, len) == 0) {
- expansion = "LL";
-@@ -795,12 +984,16 @@
- int i, n;
-
- memset(heads, 0, sizeof(heads));
-- dump_init((char *) 0, F_LITERAL, S_TERMINFO, 0, itrace, FALSE);
-+ dump_init((char *) 0, F_LITERAL, S_TERMINFO, 0, 65535, itrace, FALSE);
-
- for (n = 0; n < argc && n < MAXCOMPARE; n++) {
- if (freopen(argv[n], "r", stdin) == 0)
- _nc_err_abort("Can't open %s", argv[n]);
-
-+#if NO_LEAKS
-+ entered[n].head = _nc_head;
-+ entered[n].tail = _nc_tail;
-+#endif
- _nc_head = _nc_tail = 0;
-
- /* parse entries out of the source file */
-@@ -925,6 +1118,11 @@
- #endif
- if (!(entryeq(&qp->tterm, &rp->tterm) && useeq(qp, rp))) {
- char name1[NAMESIZE], name2[NAMESIZE];
-+ char *names[3];
-+
-+ names[0] = name1;
-+ names[1] = name2;
-+ names[2] = 0;
-
- entries[0] = *qp;
- entries[1] = *rp;
-@@ -934,29 +1132,17 @@
-
- switch (compare) {
- case C_DIFFERENCE:
-- if (itrace)
-- (void) fprintf(stderr,
-- "%s: dumping differences\n",
-- _nc_progname);
-- (void) printf("comparing %s to %s.\n", name1, name2);
-+ show_comparing(names);
- compare_entry(compare_predicate, &entries->tterm, quiet);
- break;
-
- case C_COMMON:
-- if (itrace)
-- (void) fprintf(stderr,
-- "%s: dumping common capabilities\n",
-- _nc_progname);
-- (void) printf("comparing %s to %s.\n", name1, name2);
-+ show_comparing(names);
- compare_entry(compare_predicate, &entries->tterm, quiet);
- break;
-
- case C_NAND:
-- if (itrace)
-- (void) fprintf(stderr,
-- "%s: dumping differences\n",
-- _nc_progname);
-- (void) printf("comparing %s to %s.\n", name1, name2);
-+ show_comparing(names);
- compare_entry(compare_predicate, &entries->tterm, quiet);
- break;
-
-@@ -974,7 +1160,9 @@
- "Usage: infocmp [options] [-A directory] [-B directory] [termname...]"
- ,""
- ,"Options:"
-+ ," -0 print single-row"
- ," -1 print single-column"
-+ ," -K use termcap-names and BSD syntax"
- ," -C use termcap-names"
- ," -F compare terminfo-files"
- ," -I use terminfo-names"
-@@ -982,6 +1170,7 @@
- ," -R subset (see manpage)"
- ," -T eliminate size limits (test)"
- ," -U eliminate post-processing of entries"
-+ ," -D print database locations"
- ," -V print version"
- #if NCURSES_XNAMES
- ," -a with -F, list commented-out caps"
-@@ -1030,19 +1219,25 @@
- any_initializer(const char *fmt, const char *type)
- {
- static char *initializer;
-+ static size_t need;
- char *s;
-
-- if (initializer == 0)
-- initializer = (char *) malloc(strlen(entries->tterm.term_names) +
-- strlen(type) + strlen(fmt));
-+ if (initializer == 0) {
-+ need = (strlen(entries->tterm.term_names)
-+ + strlen(type)
-+ + strlen(fmt));
-+ initializer = (char *) malloc(need + 1);
-+ if (initializer == 0)
-+ failed("any_initializer");
-+ }
-
-- (void) strcpy(initializer, entries->tterm.term_names);
-+ _nc_STRCPY(initializer, entries->tterm.term_names, need);
- for (s = initializer; *s != 0 && *s != '|'; s++) {
- if (!isalnum(UChar(*s)))
- *s = '_';
- }
- *s = 0;
-- (void) sprintf(s, fmt, type);
-+ _nc_SPRINTF(s, _nc_SLIMIT(need) fmt, type);
- return initializer;
- }
-
-@@ -1073,9 +1268,10 @@
-
- if (VALID_STRING(term->Strings[n])) {
- tp = buf;
-+#define TP_LIMIT ((MAX_STRING - 5) - (size_t)(tp - buf))
- *tp++ = '"';
- for (sp = term->Strings[n];
-- *sp != 0 && (tp - buf) < MAX_STRING - 6;
-+ *sp != 0 && TP_LIMIT > 2;
- sp++) {
- if (isascii(UChar(*sp))
- && isprint(UChar(*sp))
-@@ -1083,14 +1279,15 @@
- && *sp != '"')
- *tp++ = *sp;
- else {
-- (void) sprintf(tp, "\\%03o", UChar(*sp));
-+ _nc_SPRINTF(tp, _nc_SLIMIT(TP_LIMIT) "\\%03o", UChar(*sp));
- tp += 4;
- }
- }
- *tp++ = '"';
- *tp = '\0';
- (void) printf("static char %-20s[] = %s;\n",
-- string_variable(ExtStrname(term, n, strnames)), buf);
-+ string_variable(ExtStrname(term, (int) n, strnames)),
-+ buf);
- }
- }
- printf("\n");
-@@ -1116,7 +1313,7 @@
- break;
- }
- (void) printf("\t/* %3u: %-8s */\t%s,\n",
-- n, ExtBoolname(term, n, boolnames), str);
-+ n, ExtBoolname(term, (int) n, boolnames), str);
- }
- (void) printf("%s;\n", R_CURL);
-
-@@ -1132,12 +1329,12 @@
- str = "CANCELLED_NUMERIC";
- break;
- default:
-- sprintf(buf, "%d", term->Numbers[n]);
-+ _nc_SPRINTF(buf, _nc_SLIMIT(sizeof(buf)) "%d", term->Numbers[n]);
- str = buf;
- break;
- }
- (void) printf("\t/* %3u: %-8s */\t%s,\n", n,
-- ExtNumname(term, n, numnames), str);
-+ ExtNumname(term, (int) n, numnames), str);
- }
- (void) printf("%s;\n", R_CURL);
-
-@@ -1150,10 +1347,10 @@
- else if (term->Strings[n] == CANCELLED_STRING)
- str = "CANCELLED_STRING";
- else {
-- str = string_variable(ExtStrname(term, n, strnames));
-+ str = string_variable(ExtStrname(term, (int) n, strnames));
- }
- (void) printf("\t/* %3u: %-8s */\t%s,\n", n,
-- ExtStrname(term, n, strnames), str);
-+ ExtStrname(term, (int) n, strnames), str);
- }
- (void) printf("%s;\n", R_CURL);
-
-@@ -1165,15 +1362,15 @@
- name_initializer("string_ext"), L_CURL);
- for (n = BOOLCOUNT; n < NUM_BOOLEANS(term); ++n) {
- (void) printf("\t/* %3u: bool */\t\"%s\",\n",
-- n, ExtBoolname(term, n, boolnames));
-+ n, ExtBoolname(term, (int) n, boolnames));
- }
- for (n = NUMCOUNT; n < NUM_NUMBERS(term); ++n) {
- (void) printf("\t/* %3u: num */\t\"%s\",\n",
-- n, ExtNumname(term, n, numnames));
-+ n, ExtNumname(term, (int) n, numnames));
- }
- for (n = STRCOUNT; n < NUM_STRINGS(term); ++n) {
- (void) printf("\t/* %3u: str */\t\"%s\",\n",
-- n, ExtStrname(term, n, strnames));
-+ n, ExtStrname(term, (int) n, strnames));
- }
- (void) printf("%s;\n", R_CURL);
- }
-@@ -1247,6 +1444,23 @@
- return terminal;
- }
-
-+/*
-+ * Show the databases that infocmp knows about. The location to which it writes is
-+ */
-+static void
-+show_databases(void)
-+{
-+ DBDIRS state;
-+ int offset;
-+ const char *path2;
-+
-+ _nc_first_db(&state, &offset);
-+ while ((path2 = _nc_next_db(&state, &offset)) != 0) {
-+ printf("%s\n", path2);
-+ }
-+ _nc_last_db();
-+}
-+
- /***************************************************************************
- *
- * Main sequence
-@@ -1269,7 +1483,7 @@
- /* Also avoid overflowing smaller stacks on systems like AmigaOS */
- path *tfile = 0;
- char **tname = 0;
-- int maxterms;
-+ size_t maxterms;
-
- char **myargv;
-
-@@ -1287,18 +1501,27 @@
- #if NCURSES_XNAMES
- use_extended_names(FALSE);
- #endif
-+ _nc_strict_bsd = 0;
-
- _nc_progname = _nc_rootname(argv[0]);
-
- /* make sure we have enough space to add two terminal entries */
- myargv = typeCalloc(char *, (size_t) (argc + 3));
-+ if (myargv == 0)
-+ failed("myargv");
-+
- memcpy(myargv, argv, (sizeof(char *) * (size_t) argc));
- argv = myargv;
-
- while ((c = getopt(argc,
- argv,
-- "1A:aB:CcdEeFfGgIiLlnpqR:rs:TtUuVv:w:x")) != -1) {
-+ "01A:aB:CcDdEeFfGgIiKLlnpqR:rs:TtUuVv:w:x")) != -1) {
- switch (c) {
-+ case '0':
-+ mwidth = 65535;
-+ mheight = 1;
-+ break;
-+
- case '1':
- mwidth = 0;
- break;
-@@ -1317,6 +1540,9 @@
- restdir = optarg;
- break;
-
-+ case 'K':
-+ _nc_strict_bsd = 1;
-+ /* FALLTHRU */
- case 'C':
- outform = F_TERMCAP;
- tversion = "BSD";
-@@ -1324,6 +1550,11 @@
- sortmode = S_TERMCAP;
- break;
-
-+ case 'D':
-+ show_databases();
-+ ExitProgram(EXIT_SUCCESS);
-+ break;
-+
- case 'c':
- compare = C_COMMON;
- break;
-@@ -1441,7 +1672,7 @@
- ExitProgram(EXIT_SUCCESS);
-
- case 'v':
-- itrace = optarg_to_number();
-+ itrace = (unsigned) optarg_to_number();
- set_trace_level(itrace);
- break;
-
-@@ -1460,10 +1691,17 @@
- }
- }
-
-- maxterms = (argc + 2 - optind);
-- tfile = typeMalloc(path, maxterms);
-- tname = typeCalloc(char *, maxterms);
-- entries = typeCalloc(ENTRY, maxterms);
-+ maxterms = (size_t) (argc + 2 - optind);
-+ if ((tfile = typeMalloc(path, maxterms)) == 0)
-+ failed("tfile");
-+ if ((tname = typeCalloc(char *, maxterms)) == 0)
-+ failed("tname");
-+ if ((entries = typeCalloc(ENTRY, maxterms)) == 0)
-+ failed("entries");
-+#if NO_LEAKS
-+ if ((entered = typeCalloc(ENTERED, maxterms)) == 0)
-+ failed("entered");
-+#endif
-
- if (tfile == 0
- || tname == 0
-@@ -1476,9 +1714,6 @@
- if (sortmode == S_DEFAULT)
- sortmode = S_TERMINFO;
-
-- /* set up for display */
-- dump_init(tversion, outform, sortmode, mwidth, itrace, formatted);
--
- /* make sure we have at least one terminal name to work with */
- if (optind >= argc)
- argv[argc++] = terminal_env();
-@@ -1487,9 +1722,23 @@
- if (compare != C_DEFAULT && optind >= argc - 1)
- argv[argc++] = terminal_env();
-
-+ /* exactly one terminal name with no options means display it */
- /* exactly two terminal names with no options means do -d */
-- if (argc - optind == 2 && compare == C_DEFAULT)
-- compare = C_DIFFERENCE;
-+ if (compare == C_DEFAULT) {
-+ switch (argc - optind) {
-+ default:
-+ fprintf(stderr, "%s: too many names to compare\n", _nc_progname);
-+ ExitProgram(EXIT_FAILURE);
-+ case 1:
-+ break;
-+ case 2:
-+ compare = C_DIFFERENCE;
-+ break;
-+ }
-+ }
-+
-+ /* set up for display */
-+ dump_init(tversion, outform, sortmode, mwidth, mheight, itrace, formatted);
-
- if (!filecompare) {
- /* grab the entries */
-@@ -1501,15 +1750,17 @@
- tname[termcount] = argv[optind];
-
- if (directory) {
--#if USE_DATABASE
-+#if NCURSES_USE_DATABASE
- #if MIXEDCASE_FILENAMES
- #define LEAF_FMT "%c"
- #else
- #define LEAF_FMT "%02x"
- #endif
-- (void) sprintf(tfile[termcount], "%s/" LEAF_FMT "/%s",
-- directory,
-- UChar(*argv[optind]), argv[optind]);
-+ _nc_SPRINTF(tfile[termcount],
-+ _nc_SLIMIT(sizeof(path))
-+ "%s/" LEAF_FMT "/%s",
-+ directory,
-+ UChar(*argv[optind]), argv[optind]);
- if (itrace)
- (void) fprintf(stderr,
- "%s: reading entry %s from file %s\n",
-@@ -1599,27 +1850,17 @@
- break;
-
- case C_DIFFERENCE:
-- if (itrace)
-- (void) fprintf(stderr, "%s: dumping differences\n", _nc_progname);
-- (void) printf("comparing %s to %s.\n", tname[0], tname[1]);
-+ show_comparing(tname);
- compare_entry(compare_predicate, &entries->tterm, quiet);
- break;
-
- case C_COMMON:
-- if (itrace)
-- (void) fprintf(stderr,
-- "%s: dumping common capabilities\n",
-- _nc_progname);
-- (void) printf("comparing %s to %s.\n", tname[0], tname[1]);
-+ show_comparing(tname);
- compare_entry(compare_predicate, &entries->tterm, quiet);
- break;
-
- case C_NAND:
-- if (itrace)
-- (void) fprintf(stderr,
-- "%s: dumping differences\n",
-- _nc_progname);
-- (void) printf("comparing %s to %s.\n", tname[0], tname[1]);
-+ show_comparing(tname);
- compare_entry(compare_predicate, &entries->tterm, quiet);
- break;
-
-@@ -1640,15 +1881,16 @@
- break;
- }
- }
-- } else if (compare == C_USEALL)
-+ } else if (compare == C_USEALL) {
- (void) fprintf(stderr, "Sorry, -u doesn't work with -F\n");
-- else if (compare == C_DEFAULT)
-+ } else if (compare == C_DEFAULT) {
- (void) fprintf(stderr, "Use `tic -[CI] <file>' for this.\n");
-- else if (argc - optind != 2)
-+ } else if (argc - optind != 2) {
- (void) fprintf(stderr,
- "File comparison needs exactly two file arguments.\n");
-- else
-+ } else {
- file_comparison(argc - optind, argv + optind);
-+ }
-
- MAIN_LEAKS();
- ExitProgram(EXIT_SUCCESS);
-Index: progs/modules
-Prereq: 1.17
---- ncurses-5.9/progs/modules 2010-01-23 17:47:23.000000000 +0000
-+++ ncurses-5.9-20141206/progs/modules 2014-05-21 17:01:28.000000000 +0000
-@@ -1,7 +1,7 @@
--# $Id: modules,v 1.17 2010/01/23 17:47:23 tom Exp $
-+# $Id: modules,v 1.18 2014/05/21 17:01:28 tom Exp $
- # Program modules (some are in ncurses lib!)
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2010,2014 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"), #
-@@ -33,12 +33,13 @@
-
- @ base
- clear progs $(srcdir) $(HEADER_DEPS)
--tic progs $(srcdir) $(HEADER_DEPS) transform.h $(srcdir)/dump_entry.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
- dump_entry progs $(srcdir) $(HEADER_DEPS) $(srcdir)/dump_entry.h ../include/parametrized.h $(INCDIR)/capdefaults.c termsort.c
- infocmp progs $(srcdir) $(HEADER_DEPS) $(srcdir)/dump_entry.h
- tabs progs $(srcdir) $(HEADER_DEPS)
--tput progs $(srcdir) $(HEADER_DEPS) transform.h $(srcdir)/dump_entry.h termsort.c
-+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
- tset progs $(srcdir) $(HEADER_DEPS) transform.h $(srcdir)/dump_entry.h ../include/termcap.h
- transform progs $(srcdir) $(HEADER_DEPS) transform.h
-
-Index: progs/progs.priv.h
-Prereq: 1.34
---- ncurses-5.9/progs/progs.priv.h 2008-08-03 17:43:05.000000000 +0000
-+++ ncurses-5.9-20141206/progs/progs.priv.h 2014-05-21 17:00:19.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -30,19 +30,22 @@
- * Author: Thomas E. Dickey 1997-on *
- ****************************************************************************/
- /*
-- * $Id: progs.priv.h,v 1.34 2008/08/03 17:43:05 tom Exp $
-+ * $Id: progs.priv.h,v 1.40 2014/05/21 17:00:19 tom Exp $
- *
- * progs.priv.h
- *
- * Header file for curses utility programs
- */
-
-+#ifndef PROGS_PRIV_H
-+#define PROGS_PRIV_H 1
-+
- #include <ncurses_cfg.h>
-
- #if USE_RCS_IDS
- #define MODULE_ID(id) static const char Ident[] = id;
- #else
--#define MODULE_ID(id) /*nothing*/
-+#define MODULE_ID(id) /*nothing */
- #endif
-
- #include <stdlib.h>
-@@ -90,6 +93,14 @@
- # endif
- #endif
-
-+#if HAVE_INTTYPES_H
-+# include <inttypes.h>
-+#else
-+# if HAVE_STDINT_H
-+# include <stdint.h>
-+# endif
-+#endif
-+
- #include <assert.h>
- #include <errno.h>
-
-@@ -99,7 +110,7 @@
-
- #if HAVE_GETOPT_H
- #include <getopt.h>
--#else
-+#elif !defined(HAVE_GETOPT_HEADER)
- /* 'getopt()' may be prototyped in <stdlib.h>, but declaring its
- * variables doesn't hurt.
- */
-@@ -109,9 +120,11 @@
-
- #include <curses.h>
- #include <term_entry.h>
-+#include <nc_termios.h>
- #include <tic.h>
- #include <nc_tparm.h>
-
-+#include <nc_string.h>
- #include <nc_alloc.h>
- #if HAVE_NC_FREEALL
- #undef ExitProgram
-@@ -171,7 +184,7 @@
- # elif defined(MAXPATHLEN)
- # define PATH_MAX MAXPATHLEN
- # else
--# define PATH_MAX 255 /* the Posix minimum pathsize */
-+# define PATH_MAX 255 /* the Posix minimum pathsize */
- # endif
- #endif
-
-@@ -183,10 +196,12 @@
- # if ('z'-'a' == 25) && ('z' < 127) && ('Z'-'A' == 25) && ('Z' < 127) && ('9' < 127)
- # define isascii(c) (UChar(c) <= 127)
- # else
--# define isascii(c) 1 /* not really ascii anyway */
-+# define isascii(c) 1 /* not really ascii anyway */
- # endif
- #endif
-
- #define UChar(c) ((unsigned char)(c))
-
- #define SIZEOF(v) (sizeof(v)/sizeof(v[0]))
-+
-+#endif /* PROGS_PRIV_H */
-Index: progs/tabs.c
-Prereq: 1.19
---- ncurses-5.9/progs/tabs.c 2010-10-23 22:26:01.000000000 +0000
-+++ ncurses-5.9-20141206/progs/tabs.c 2013-06-11 08:18:27.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2012,2013 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 *
-@@ -37,12 +37,20 @@
- #define USE_LIBTINFO
- #include <progs.priv.h>
-
--MODULE_ID("$Id: tabs.c,v 1.19 2010/10/23 22:26:01 tom Exp $")
-+MODULE_ID("$Id: tabs.c,v 1.34 2013/06/11 08:18:27 tom Exp $")
-
- static void usage(void) GCC_NORETURN;
-
-+static char *prg_name;
- static int max_cols;
-
-+static void
-+failed(const char *s)
-+{
-+ perror(s);
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
- static int
- putch(int c)
- {
-@@ -83,28 +91,29 @@
- int prior = 0;
- int ch;
-
-- if (result != 0) {
-- while ((ch = *tab_list++) != '\0') {
-- if (isdigit(UChar(ch))) {
-- value *= 10;
-- value += (ch - '0');
-- } else if (ch == ',') {
-- result[n] = value + prior;
-- if (n > 0 && result[n] <= result[n - 1]) {
-- fprintf(stderr,
-- "tab-stops are not in increasing order: %d %d\n",
-- value, result[n - 1]);
-- free(result);
-- result = 0;
-- break;
-- }
-- ++n;
-- value = 0;
-- prior = 0;
-- } else if (ch == '+') {
-- if (n)
-- prior = result[n - 1];
-+ if (result == 0)
-+ failed("decode_tabs");
-+
-+ while ((ch = *tab_list++) != '\0') {
-+ if (isdigit(UChar(ch))) {
-+ value *= 10;
-+ value += (ch - '0');
-+ } else if (ch == ',') {
-+ result[n] = value + prior;
-+ if (n > 0 && result[n] <= result[n - 1]) {
-+ fprintf(stderr,
-+ "%s: tab-stops are not in increasing order: %d %d\n",
-+ prg_name, value, result[n - 1]);
-+ free(result);
-+ result = 0;
-+ break;
- }
-+ ++n;
-+ value = 0;
-+ prior = 0;
-+ } else if (ch == '+') {
-+ if (n)
-+ prior = result[n - 1];
- }
- }
-
-@@ -114,6 +123,7 @@
- */
- if ((n == 0) && (value > 0)) {
- int step = value;
-+ value = 1;
- while (n < max_cols - 1) {
- result[n++] = value;
- value += step;
-@@ -126,6 +136,7 @@
- result[n++] = value + prior;
- result[n] = 0;
- }
-+
- return result;
- }
-
-@@ -140,10 +151,11 @@
- for (n = 0; n < max_cols; n += 10) {
- int ch = 1 + (n / 10);
- char buffer[20];
-- sprintf(buffer, "----+----%c",
-- ((ch < 10)
-- ? (ch + '0')
-- : (ch + 'A' - 10)));
-+ _nc_SPRINTF(buffer, _nc_SLIMIT(sizeof(buffer))
-+ "----+----%c",
-+ ((ch < 10)
-+ ? (ch + '0')
-+ : (ch + 'A' - 10)));
- printf("%.*s", ((max_cols - n) > 10) ? 10 : (max_cols - n), buffer);
- }
- putchar('\n');
-@@ -227,7 +239,7 @@
- bool result = FALSE;
-
- if (source != 0) {
-- unsigned len = strlen(source);
-+ size_t len = strlen(source);
- if (len != 0)
- result = (source[len - 1] != ',');
- } else {
-@@ -251,7 +263,7 @@
-
- if (copied != 0 && *copied != '\0') {
- const char *comma = ",";
-- unsigned need = 1 + strlen(copied);
-+ size_t need = 1 + strlen(copied);
-
- if (*copied == ',')
- comma = "";
-@@ -263,15 +275,16 @@
- need += strlen(*append);
-
- result = malloc(need);
-- if (result != 0) {
-- *result = '\0';
-- if (*append != 0) {
-- strcpy(result, *append);
-- free(*append);
-- }
-- strcat(result, comma);
-- strcat(result, copied);
-+ if (result == 0)
-+ failed("add_to_tab_list");
-+
-+ *result = '\0';
-+ if (*append != 0) {
-+ _nc_STRCPY(result, *append, need);
-+ free(*append);
- }
-+ _nc_STRCAT(result, comma, need);
-+ _nc_STRCAT(result, copied, need);
-
- *append = result;
- }
-@@ -282,7 +295,7 @@
- * Check for illegal characters in the tab-list.
- */
- static bool
--legal_tab_list(const char *program, const char *tab_list)
-+legal_tab_list(const char *tab_list)
- {
- bool result = TRUE;
-
-@@ -294,22 +307,34 @@
- if (!(isdigit(ch) || ch == ',' || ch == '+')) {
- fprintf(stderr,
- "%s: unexpected character found '%c'\n",
-- program, ch);
-+ prg_name, ch);
- result = FALSE;
- break;
- }
- }
- } else {
-- fprintf(stderr, "%s: trailing comma found '%s'\n", program, tab_list);
-+ fprintf(stderr, "%s: trailing comma found '%s'\n", prg_name, tab_list);
- result = FALSE;
- }
- } else {
-- fprintf(stderr, "%s: no tab-list given\n", program);
-+ fprintf(stderr, "%s: no tab-list given\n", prg_name);
- result = FALSE;
- }
- return result;
- }
-
-+static char *
-+skip_list(char *value)
-+{
-+ while (*value != '\0' &&
-+ (isdigit(UChar(*value)) ||
-+ isspace(UChar(*value)) ||
-+ strchr("+,", UChar(*value)) != 0)) {
-+ ++value;
-+ }
-+ return value;
-+}
-+
- static void
- usage(void)
- {
-@@ -332,6 +357,7 @@
- ," -s SNOBOL"
- ," -u UNIVAC 1100 Assembler"
- ," -T name use terminal type 'name'"
-+ ," -V print version"
- ,""
- ,"A tabstop-list is an ordered list of column numbers, e.g., 1,11,21"
- ,"or 1,+10,+10 which is the same."
-@@ -353,10 +379,11 @@
- bool no_op = FALSE;
- int n, ch;
- NCURSES_CONST char *term_name = 0;
-- const char *mar_list = 0; /* ignored */
- char *append = 0;
- const char *tab_list = 0;
-
-+ prg_name = _nc_rootname(argv[0]);
-+
- if ((term_name = getenv("TERM")) == 0)
- term_name = "ansi+tabs";
-
-@@ -368,23 +395,25 @@
- while ((ch = *++option) != '\0') {
- switch (ch) {
- case 'a':
-- switch (*option) {
-+ switch (*++option) {
-+ default:
- case '\0':
- tab_list = "1,10,16,36,72";
-+ option--;
- /* Assembler, IBM S/370, first format */
- break;
- case '2':
- tab_list = "1,10,16,40,72";
- /* Assembler, IBM S/370, second format */
- break;
-- default:
-- usage();
- }
- break;
- case 'c':
-- switch (*option) {
-+ switch (*++option) {
-+ default:
- case '\0':
- tab_list = "1,8,12,16,20,55";
-+ option--;
- /* COBOL, normal format */
- break;
- case '2':
-@@ -395,8 +424,6 @@
- tab_list = "1,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62,67";
- /* COBOL compact format extended */
- break;
-- default:
-- usage();
- }
- break;
- case 'd': /* ncurses extension */
-@@ -427,17 +454,22 @@
- term_name = option;
- } else {
- term_name = argv[n++];
-+ option--;
- }
- option += ((int) strlen(option)) - 1;
- continue;
-+ case 'V':
-+ puts(curses_version());
-+ ExitProgram(EXIT_SUCCESS);
- default:
- if (isdigit(UChar(*option))) {
-- tab_list = option;
-- ++n;
-+ char *copy = strdup(option);
-+ *skip_list(copy) = '\0';
-+ tab_list = copy;
-+ option = skip_list(option) - 1;
- } else {
- usage();
- }
-- option += ((int) strlen(option)) - 1;
- break;
- }
- }
-@@ -446,7 +478,11 @@
- while ((ch = *++option) != '\0') {
- switch (ch) {
- case 'm':
-- mar_list = option;
-+ /*
-+ * The "+mXXX" option is unimplemented because only the long-obsolete
-+ * att510d implements smgl, which is needed to support
-+ * this option.
-+ */
- break;
- default:
- /* special case of relative stops separated by spaces? */
-@@ -477,12 +513,12 @@
- if (!VALID_STRING(clear_all_tabs)) {
- fprintf(stderr,
- "%s: terminal type '%s' cannot reset tabs\n",
-- argv[0], term_name);
-+ prg_name, term_name);
- } else if (!VALID_STRING(set_tab)) {
- fprintf(stderr,
- "%s: terminal type '%s' cannot set tabs\n",
-- argv[0], term_name);
-- } else if (legal_tab_list(argv[0], tab_list)) {
-+ prg_name, term_name);
-+ } else if (legal_tab_list(tab_list)) {
- int *list = decode_tabs(tab_list);
-
- if (!no_op)
-Index: progs/tic.c
-Prereq: 1.147
---- ncurses-5.9/progs/tic.c 2011-02-12 18:39:08.000000000 +0000
-+++ ncurses-5.9-20141206/progs/tic.c 2014-10-18 09:34:29.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -35,6 +35,7 @@
- /*
- * tic.c --- Main program for terminfo compiler
- * by Eric S. Raymond
-+ * and Thomas E Dickey
- *
- */
-
-@@ -42,9 +43,14 @@
- #include <sys/stat.h>
-
- #include <dump_entry.h>
-+#include <tparm_type.h>
-+#include <hashed_db.h>
-+#include <parametrized.h>
- #include <transform.h>
-
--MODULE_ID("$Id: tic.c,v 1.147 2011/02/12 18:39:08 tom Exp $")
-+MODULE_ID("$Id: tic.c,v 1.208 2014/10/18 09:34:29 tom Exp $")
-+
-+#define STDIN_NAME "<stdin>"
-
- const char *_nc_progname = "tic";
-
-@@ -53,6 +59,7 @@
- static bool capdump = FALSE; /* running as infotocap? */
- static bool infodump = FALSE; /* running as captoinfo? */
- static bool showsummary = FALSE;
-+static char **namelst = 0;
- static const char *to_remove;
-
- static void (*save_check_termtype) (TERMTYPE *, bool);
-@@ -69,11 +76,13 @@
- 1\
- a\
- C\
-+D\
- c\
- f\
- G\
- g\
- I\
-+K\
- L\
- N\
- r\
-@@ -99,8 +108,10 @@
- #endif
-
- static void
--cleanup(char **namelst GCC_UNUSED)
-+cleanup(void)
- {
-+ int rc;
-+
- #if NO_LEAKS
- free_namelist(namelst);
- #endif
-@@ -108,10 +119,12 @@
- fclose(tmp_fp);
- if (to_remove != 0) {
- #if HAVE_REMOVE
-- remove(to_remove);
-+ rc = remove(to_remove);
- #else
-- unlink(to_remove);
-+ rc = unlink(to_remove);
- #endif
-+ if (rc != 0)
-+ perror(to_remove);
- }
- }
-
-@@ -119,7 +132,6 @@
- failed(const char *msg)
- {
- perror(msg);
-- cleanup((char **) 0);
- ExitProgram(EXIT_FAILURE);
- }
-
-@@ -134,12 +146,14 @@
- " -a retain commented-out capabilities (sets -x also)",
- #endif
- " -C translate entries to termcap source form",
-+ " -D print list of tic's database locations (first must be writable)",
- " -c check only, validate input without compiling or translating",
- " -e<names> translate/compile only entries named by comma-separated list",
- " -f format complex strings for readability",
- " -G format %{number} to %'char'",
- " -g format %'char' to %{number}",
- " -I translate entries to terminfo source form",
-+ " -K translate entries to termcap source form with BSD syntax",
- " -L translate entries to full terminfo source form",
- " -N disable smart defaults for source translation",
- " -o<dir> set output directory for compiled entry writes",
-@@ -173,7 +187,7 @@
-
- #define L_BRACE '{'
- #define R_BRACE '}'
--#define S_QUOTE '\'';
-+#define S_QUOTE '\''
-
- static void
- write_it(ENTRY * ep)
-@@ -216,12 +230,12 @@
- }
- *d = 0;
- if (strlen(result) < strlen(s))
-- strcpy(s, result);
-+ _nc_STRCPY(s, result, strlen(s) + 1);
- }
- }
-
- _nc_set_type(_nc_first_name(ep->tterm.term_names));
-- _nc_curr_line = ep->startline;
-+ _nc_curr_line = (int) ep->startline;
- _nc_write_entry(&ep->tterm);
- }
-
-@@ -286,8 +300,10 @@
- if (in_name) {
- if (used + 1 >= have) {
- have += 132;
-- namebuf = typeRealloc(char, have, namebuf);
-- suffix = typeRealloc(char, have, suffix);
-+ if ((namebuf = typeRealloc(char, have, namebuf)) == 0)
-+ failed("put_translate namebuf");
-+ if ((suffix = typeRealloc(char, have, suffix)) == 0)
-+ failed("put_translate suffix");
- }
- if (c == '\n' || c == '@') {
- namebuf[used++] = '\0';
-@@ -308,7 +324,7 @@
- if ((up = strchr(namebuf, '#')) != 0
- || (up = strchr(namebuf, '=')) != 0
- || ((up = strchr(namebuf, '@')) != 0 && up[1] == '>')) {
-- (void) strcpy(suffix, up);
-+ _nc_STRCPY(suffix, up, have);
- *up = '\0';
- }
-
-@@ -339,39 +355,122 @@
- static char *
- stripped(char *src)
- {
-+ char *dst = 0;
-+
- while (isspace(UChar(*src)))
- src++;
-+
- if (*src != '\0') {
-- char *dst;
- size_t len;
-
-- if ((dst = strdup(src)) == NULL)
-+ if ((dst = strdup(src)) == NULL) {
- failed("strdup");
-+ } else {
-+ len = strlen(dst);
-+ while (--len != 0 && isspace(UChar(dst[len])))
-+ dst[len] = '\0';
-+ }
-+ }
-+ return dst;
-+}
-+
-+static FILE *
-+open_tempfile(char *filename)
-+{
-+ FILE *result = 0;
-+
-+ _nc_STRCPY(filename, "/tmp/XXXXXX", PATH_MAX);
-+#if HAVE_MKSTEMP
-+ {
-+ int oldmask = (int) umask(077);
-+ int fd = mkstemp(filename);
-+ if (fd >= 0)
-+ result = fdopen(fd, "w");
-+ umask((mode_t) oldmask);
-+ }
-+#else
-+ if (tmpnam(filename) != 0)
-+ result = fopen(filename, "w");
-+#endif
-+ return result;
-+}
-
-- assert(dst != 0);
-+static FILE *
-+copy_input(FILE *source, const char *filename, char *alt_file)
-+{
-+ char my_altfile[PATH_MAX];
-+ FILE *result = 0;
-+ FILE *target = 0;
-+ int ch;
-
-- len = strlen(dst);
-- while (--len != 0 && isspace(UChar(dst[len])))
-- dst[len] = '\0';
-- return dst;
-+ if (alt_file == 0)
-+ alt_file = my_altfile;
-+
-+ if (source == 0) {
-+ failed("copy_input (source)");
-+ } else if ((target = open_tempfile(alt_file)) == 0) {
-+ failed("copy_input (target)");
-+ } else {
-+ clearerr(source);
-+ for (;;) {
-+ ch = fgetc(source);
-+ if (feof(source)) {
-+ break;
-+ } else if (ferror(source)) {
-+ failed(filename);
-+ } else if (ch == 0) {
-+ /* don't loop in case someone wants to convert /dev/zero */
-+ fprintf(stderr, "%s: %s is not a text-file\n", _nc_progname, filename);
-+ ExitProgram(EXIT_FAILURE);
-+ }
-+ fputc(ch, target);
-+ }
-+ fclose(source);
-+ /*
-+ * rewind() does not force the target file's data to disk (not does
-+ * fflush()...). So open a second stream on the data and then close
-+ * the one that we were writing on before starting to read from the
-+ * second stream.
-+ */
-+ result = fopen(alt_file, "r+");
-+ fclose(target);
-+ to_remove = strdup(alt_file);
- }
-- return 0;
-+ return result;
- }
-
- static FILE *
--open_input(const char *filename)
-+open_input(const char *filename, char *alt_file)
- {
-- FILE *fp = fopen(filename, "r");
-+ FILE *fp;
- struct stat sb;
-+ int mode;
-
-- if (fp == 0) {
-- fprintf(stderr, "%s: Can't open %s\n", _nc_progname, filename);
-+ if (!strcmp(filename, "-")) {
-+ fp = copy_input(stdin, STDIN_NAME, alt_file);
-+ } else if (stat(filename, &sb) < 0) {
-+ fprintf(stderr, "%s: %s %s\n", _nc_progname, filename, strerror(errno));
- ExitProgram(EXIT_FAILURE);
-- }
-- if (fstat(fileno(fp), &sb) < 0
-- || (sb.st_mode & S_IFMT) != S_IFREG) {
-+ } else if ((mode = (sb.st_mode & S_IFMT)) == S_IFDIR
-+ || (mode != S_IFREG && mode != S_IFCHR && mode != S_IFIFO)) {
- fprintf(stderr, "%s: %s is not a file\n", _nc_progname, filename);
- ExitProgram(EXIT_FAILURE);
-+ } else {
-+ fp = fopen(filename, "r");
-+
-+ if (fp == 0) {
-+ fprintf(stderr, "%s: Can't open %s\n", _nc_progname, filename);
-+ ExitProgram(EXIT_FAILURE);
-+ }
-+ if (mode != S_IFREG) {
-+ if (alt_file != 0) {
-+ FILE *fp2 = copy_input(fp, filename, alt_file);
-+ fp = fp2;
-+ } else {
-+ fprintf(stderr, "%s: %s is not a file\n", _nc_progname, filename);
-+ ExitProgram(EXIT_FAILURE);
-+ }
-+ }
- }
- return fp;
- }
-@@ -389,7 +488,7 @@
- if (src == 0) {
- /* EMPTY */ ;
- } else if (strchr(src, '/') != 0) { /* a filename */
-- FILE *fp = open_input(src);
-+ FILE *fp = open_input(src, (char *) 0);
-
- for (pass = 1; pass <= 2; pass++) {
- nn = 0;
-@@ -403,7 +502,8 @@
- }
- }
- if (pass == 1) {
-- dst = typeCalloc(char *, nn + 1);
-+ if ((dst = typeCalloc(char *, nn + 1)) == 0)
-+ failed("make_namelist");
- rewind(fp);
- }
- }
-@@ -425,8 +525,10 @@
- if (mark == '\0')
- break;
- }
-- if (pass == 1)
-- dst = typeCalloc(char *, nn + 1);
-+ if (pass == 1) {
-+ if ((dst = typeCalloc(char *, nn + 1)) == 0)
-+ failed("make_namelist");
-+ }
- }
- }
- if (showsummary && (dst != 0)) {
-@@ -456,26 +558,118 @@
- return (code);
- }
-
--static FILE *
--open_tempfile(char *name)
-+static char *
-+valid_db_path(const char *nominal)
- {
-- FILE *result = 0;
--#if HAVE_MKSTEMP
-- int fd = mkstemp(name);
-- if (fd >= 0)
-- result = fdopen(fd, "w");
-+ struct stat sb;
-+#if USE_HASHED_DB
-+ char suffix[] = DBM_SUFFIX;
-+ size_t need = strlen(nominal) + sizeof(suffix);
-+ char *result = malloc(need);
-+
-+ if (result == 0)
-+ failed("valid_db_path");
-+ _nc_STRCPY(result, nominal, need);
-+ if (strcmp(result + need - sizeof(suffix), suffix)) {
-+ _nc_STRCAT(result, suffix, need);
-+ }
-+#else
-+ char *result = strdup(nominal);
-+#endif
-+
-+ DEBUG(1, ("** stat(%s)", result));
-+ if (stat(result, &sb) >= 0) {
-+#if USE_HASHED_DB
-+ if (!S_ISREG(sb.st_mode)
-+ || access(result, R_OK | W_OK) != 0) {
-+ DEBUG(1, ("...not a writable file"));
-+ free(result);
-+ result = 0;
-+ }
- #else
-- if (tmpnam(name) != 0)
-- result = fopen(name, "w");
-+ if (!S_ISDIR(sb.st_mode)
-+ || access(result, R_OK | W_OK | X_OK) != 0) {
-+ DEBUG(1, ("...not a writable directory"));
-+ free(result);
-+ result = 0;
-+ }
- #endif
-+ } else {
-+ /* check if parent is directory and is writable */
-+ unsigned leaf = _nc_pathlast(result);
-+
-+ DEBUG(1, ("...not found"));
-+ if (leaf) {
-+ char save = result[leaf];
-+ result[leaf] = 0;
-+ if (stat(result, &sb) >= 0
-+ && S_ISDIR(sb.st_mode)
-+ && access(result, R_OK | W_OK | X_OK) == 0) {
-+ result[leaf] = save;
-+ } else {
-+ DEBUG(1, ("...parent directory %s is not writable", result));
-+ free(result);
-+ result = 0;
-+ }
-+ } else {
-+ DEBUG(1, ("... no parent directory"));
-+ free(result);
-+ result = 0;
-+ }
-+ }
- return result;
- }
-
-+/*
-+ * Show the databases to which tic could write. The location to which it
-+ * writes is always the first one. If none are writable, print an error
-+ * message.
-+ */
-+static void
-+show_databases(const char *outdir)
-+{
-+ bool specific = (outdir != 0) || getenv("TERMINFO") != 0;
-+ char *result;
-+ const char *tried = 0;
-+
-+ if (outdir == 0) {
-+ outdir = _nc_tic_dir(0);
-+ }
-+ if ((result = valid_db_path(outdir)) != 0) {
-+ printf("%s\n", result);
-+ free(result);
-+ } else {
-+ tried = outdir;
-+ }
-+
-+ if ((outdir = _nc_home_terminfo())) {
-+ if ((result = valid_db_path(outdir)) != 0) {
-+ printf("%s\n", result);
-+ free(result);
-+ } else if (!specific) {
-+ tried = outdir;
-+ }
-+ }
-+
-+ /*
-+ * If we can write in neither location, give an error message.
-+ */
-+ if (tried) {
-+ fflush(stdout);
-+ fprintf(stderr, "%s: %s (no permission)\n", _nc_progname, tried);
-+ ExitProgram(EXIT_FAILURE);
-+ }
-+}
-+
-+#define VtoTrace(opt) (unsigned) ((opt > 0) ? opt : (opt == 0))
-+
- int
- main(int argc, char *argv[])
- {
- char my_tmpname[PATH_MAX];
-- int v_opt = -1, debug_level;
-+ char my_altfile[PATH_MAX];
-+ int v_opt = -1;
-+ unsigned debug_level;
- int smart_defaults = TRUE;
- char *termcap;
- ENTRY *qp;
-@@ -486,6 +680,7 @@
- int sortmode = S_TERMINFO; /* sort_mode */
-
- int width = 60;
-+ int height = 65535;
- bool formatted = FALSE; /* reformat complex strings? */
- bool literal = FALSE; /* suppress post-processing? */
- int numbers = 0; /* format "%'char'" to/from "%{number}" */
-@@ -493,7 +688,6 @@
- bool limited = TRUE;
- char *tversion = (char *) NULL;
- const char *source_file = "terminfo";
-- char **namelst = 0;
- char *outdir = (char *) NULL;
- bool check_only = FALSE;
- bool suppress_untranslatable = FALSE;
-@@ -501,6 +695,7 @@
- log_fp = stderr;
-
- _nc_progname = _nc_rootname(argv[0]);
-+ atexit(cleanup);
-
- if ((infodump = same_program(_nc_progname, PROG_CAPTOINFO)) != FALSE) {
- outform = F_TERMINFO;
-@@ -513,6 +708,7 @@
- #if NCURSES_XNAMES
- use_extended_names(FALSE);
- #endif
-+ _nc_strict_bsd = 0;
-
- /*
- * Processing arguments is a little complicated, since someone made a
-@@ -520,7 +716,7 @@
- * be optional.
- */
- while ((this_opt = getopt(argc, argv,
-- "0123456789CILNR:TUVace:fGgo:rstvwx")) != -1) {
-+ "0123456789CDIKLNR:TUVace:fGgo:rstvwx")) != -1) {
- if (isdigit(this_opt)) {
- switch (last_opt) {
- case 'v':
-@@ -530,19 +726,40 @@
- width = (width * 10) + (this_opt - '0');
- break;
- default:
-- if (this_opt != '1')
-+ switch (this_opt) {
-+ case '0':
-+ last_opt = this_opt;
-+ width = 65535;
-+ height = 1;
-+ break;
-+ case '1':
-+ last_opt = this_opt;
-+ width = 0;
-+ break;
-+ default:
- usage();
-- last_opt = this_opt;
-- width = 0;
-+ }
- }
- continue;
- }
- switch (this_opt) {
-+ case 'K':
-+ _nc_strict_bsd = 1;
-+ /* the initial version of -K in 20110730 fell-thru here, but the
-+ * same flag is useful when reading sources -TD
-+ */
-+ break;
- case 'C':
- capdump = TRUE;
- outform = F_TERMCAP;
- sortmode = S_TERMCAP;
- break;
-+ case 'D':
-+ debug_level = VtoTrace(v_opt);
-+ set_trace_level(debug_level);
-+ show_databases(outdir);
-+ ExitProgram(EXIT_SUCCESS);
-+ break;
- case 'I':
- infodump = TRUE;
- outform = F_TERMINFO;
-@@ -568,7 +785,6 @@
- break;
- case 'V':
- puts(curses_version());
-- cleanup(namelst);
- ExitProgram(EXIT_SUCCESS);
- case 'c':
- check_only = TRUE;
-@@ -618,7 +834,7 @@
- last_opt = this_opt;
- }
-
-- debug_level = (v_opt > 0) ? v_opt : (v_opt == 0);
-+ debug_level = VtoTrace(v_opt);
- set_trace_level(debug_level);
-
- if (_nc_tracing) {
-@@ -638,8 +854,8 @@
- */
- if (namelst && (!infodump && !capdump)) {
- (void) fprintf(stderr,
-- "Sorry, -e can't be used without -I or -C\n");
-- cleanup(namelst);
-+ "%s: Sorry, -e can't be used without -I or -C\n",
-+ _nc_progname);
- ExitProgram(EXIT_FAILURE);
- }
- #endif /* HAVE_BIG_CORE */
-@@ -663,16 +879,16 @@
- if (access(termcap, F_OK) == 0) {
- /* file exists */
- source_file = termcap;
-- } else if ((tmp_fp = open_tempfile(strcpy(my_tmpname,
-- "/tmp/XXXXXX")))
-- != 0) {
-- source_file = my_tmpname;
-- fprintf(tmp_fp, "%s\n", termcap);
-- fclose(tmp_fp);
-- tmp_fp = open_input(source_file);
-- to_remove = source_file;
- } else {
-- failed("tmpnam");
-+ if ((tmp_fp = open_tempfile(my_tmpname)) != 0) {
-+ source_file = my_tmpname;
-+ fprintf(tmp_fp, "%s\n", termcap);
-+ fclose(tmp_fp);
-+ tmp_fp = open_input(source_file, (char *) 0);
-+ to_remove = source_file;
-+ } else {
-+ failed("tmpnam");
-+ }
- }
- }
- } else {
-@@ -682,24 +898,28 @@
- _nc_progname,
- _nc_progname,
- usage_string);
-- cleanup(namelst);
- ExitProgram(EXIT_FAILURE);
- }
- }
-
-- if (tmp_fp == 0)
-- tmp_fp = open_input(source_file);
-+ if (tmp_fp == 0) {
-+ tmp_fp = open_input(source_file, my_altfile);
-+ if (!strcmp(source_file, "-")) {
-+ source_file = STDIN_NAME;
-+ }
-+ }
-
-- if (infodump)
-+ if (infodump) {
- dump_init(tversion,
- smart_defaults
- ? outform
- : F_LITERAL,
-- sortmode, width, debug_level, formatted);
-- else if (capdump)
-+ sortmode, width, height, debug_level, formatted);
-+ } else if (capdump) {
- dump_init(tversion,
- outform,
-- sortmode, width, debug_level, FALSE);
-+ sortmode, width, height, debug_level, FALSE);
-+ }
-
- /* parse entries out of the source file */
- _nc_set_source(source_file);
-@@ -716,13 +936,12 @@
- /* do use resolution */
- if (check_only || (!infodump && !capdump) || forceresolve) {
- if (!_nc_resolve_uses2(TRUE, literal) && !check_only) {
-- cleanup(namelst);
- ExitProgram(EXIT_FAILURE);
- }
- }
-
- /* length check */
-- if (check_only && (capdump || infodump)) {
-+ if (check_only && limited && (capdump || infodump)) {
- for_entry_list(qp) {
- if (matches(namelst, qp->tterm.term_names)) {
- int len = fmt_entry(&qp->tterm, NULL, FALSE, TRUE, infodump, numbers);
-@@ -750,7 +969,7 @@
-
- for_entry_list(qp) {
- if (matches(namelst, qp->tterm.term_names)) {
-- int j = qp->cend - qp->cstart;
-+ long j = qp->cend - qp->cstart;
- int len = 0;
-
- /* this is in case infotocap() generates warnings */
-@@ -767,7 +986,7 @@
- repair_acsc(&qp->tterm);
- dump_entry(&qp->tterm, suppress_untranslatable,
- limited, numbers, NULL);
-- for (j = 0; j < (int) qp->nuses; j++)
-+ for (j = 0; j < (long) qp->nuses; j++)
- dump_uses(qp->uses[j].name, !capdump);
- len = show_entry();
- if (debug_level != 0 && !limited)
-@@ -811,7 +1030,6 @@
- else
- fprintf(log_fp, "No entries written\n");
- }
-- cleanup(namelst);
- ExitProgram(EXIT_SUCCESS);
- }
-
-@@ -898,6 +1116,17 @@
- if (!VALID_STRING(orig_pair) && !VALID_STRING(orig_colors))
- _nc_warning("expected either op/oc string for resetting colors");
- }
-+ if (can_change) {
-+ if (!VALID_STRING(initialize_pair) &&
-+ !VALID_STRING(initialize_color)) {
-+ _nc_warning("expected initc or initp because ccc is given");
-+ }
-+ } else {
-+ if (VALID_STRING(initialize_pair) ||
-+ VALID_STRING(initialize_color)) {
-+ _nc_warning("expected ccc because initc is given");
-+ }
-+ }
- }
-
- static char
-@@ -915,18 +1144,18 @@
- return result;
- }
-
--static int
-+static long
- keypad_index(const char *string)
- {
- char *test;
- const char *list = "PQRSwxymtuvlqrsPpn"; /* app-keypad except "Enter" */
- int ch;
-- int result = -1;
-+ long result = -1;
-
- if ((ch = keypad_final(string)) != '\0') {
-- test = strchr(list, ch);
-+ test = (strchr) (list, ch);
- if (test != 0)
-- result = (test - list);
-+ result = (long) (test - list);
- }
- return result;
- }
-@@ -1008,6 +1237,19 @@
- }
-
- #define EXPECTED(name) if (!PRESENT(name)) _nc_warning("expected " #name)
-+#define UNEXPECTED(name) if (PRESENT(name)) _nc_warning("unexpected " #name ", for %s", why)
-+
-+static void
-+check_noaddress(TERMTYPE *tp, const char *why)
-+{
-+ UNEXPECTED(column_address);
-+ UNEXPECTED(cursor_address);
-+ UNEXPECTED(cursor_home);
-+ UNEXPECTED(cursor_mem_address);
-+ UNEXPECTED(cursor_to_ll);
-+ UNEXPECTED(row_address);
-+ UNEXPECTED(row_address);
-+}
-
- static void
- check_cursor(TERMTYPE *tp)
-@@ -1015,13 +1257,55 @@
- int count;
- char *list[4];
-
-+ if (hard_copy) {
-+ check_noaddress(tp, "hard_copy");
-+ } else if (generic_type) {
-+ check_noaddress(tp, "generic_type");
-+ } else if (strchr(tp->term_names, '+') == 0) {
-+ int y = 0;
-+ int x = 0;
-+ if (PRESENT(column_address))
-+ ++y;
-+ if (PRESENT(cursor_address))
-+ y = x = 10;
-+ if (PRESENT(cursor_home))
-+ ++y, ++x;
-+ if (PRESENT(cursor_mem_address))
-+ y = x = 10;
-+ if (PRESENT(cursor_to_ll))
-+ ++y, ++x;
-+ if (PRESENT(row_address))
-+ ++x;
-+ if (PRESENT(cursor_down))
-+ ++y;
-+ if (PRESENT(cursor_up))
-+ ++y;
-+ if (PRESENT(cursor_left))
-+ ++x;
-+ if (PRESENT(cursor_right))
-+ ++x;
-+ if (x < 2 && y < 2) {
-+ _nc_warning("terminal lacks cursor addressing");
-+ } else {
-+ if (x < 2)
-+ _nc_warning("terminal lacks cursor column-addressing");
-+ if (y < 2)
-+ _nc_warning("terminal lacks cursor row-addressing");
-+ }
-+ }
-+
-+ /* it is rare to have an insert-line feature without a matching delete */
-+ ANDMISSING(parm_insert_line, insert_line);
-+ ANDMISSING(parm_delete_line, delete_line);
-+ ANDMISSING(parm_insert_line, parm_delete_line);
-+
- /* if we have a parameterized form, then the non-parameterized is easy */
- ANDMISSING(parm_down_cursor, cursor_down);
- ANDMISSING(parm_up_cursor, cursor_up);
- ANDMISSING(parm_left_cursor, cursor_left);
- ANDMISSING(parm_right_cursor, cursor_right);
-
-- /* Given any of a set of cursor movement, the whole set should be present.
-+ /* Given any of a set of cursor movement, the whole set should be present.
- * Technically this is not true (we could use cursor_address to fill in
- * unsupported controls), but it is likely.
- */
-@@ -1097,11 +1381,11 @@
- VALID_STRING(key_c1) &&
- VALID_STRING(key_c3)) {
- char final[MAX_KP + 1];
-- int list[MAX_KP];
-+ long list[MAX_KP];
- int increase = 0;
- int j, k, kk;
-- int last;
-- int test;
-+ long last;
-+ long test;
-
- final[0] = keypad_final(key_a1);
- final[1] = keypad_final(key_a3);
-@@ -1149,19 +1433,19 @@
- assert(strlen(show) < (MAX_KP * 4));
- switch (kk) {
- case 0:
-- strcat(show, " ka1");
-+ _nc_STRCAT(show, " ka1", sizeof(show));
- break;
- case 1:
-- strcat(show, " ka3");
-+ _nc_STRCAT(show, " ka3", sizeof(show));
- break;
- case 2:
-- strcat(show, " kb2");
-+ _nc_STRCAT(show, " kb2", sizeof(show));
- break;
- case 3:
-- strcat(show, " kc1");
-+ _nc_STRCAT(show, " kc1", sizeof(show));
- break;
- case 4:
-- strcat(show, " kc3");
-+ _nc_STRCAT(show, " kc3", sizeof(show));
- break;
- }
- }
-@@ -1176,18 +1460,24 @@
- VALID_STRING(key_c3)) {
- show[0] = '\0';
- if (keypad_index(key_a1) >= 0)
-- strcat(show, " ka1");
-+ _nc_STRCAT(show, " ka1", sizeof(show));
- if (keypad_index(key_a3) >= 0)
-- strcat(show, " ka3");
-+ _nc_STRCAT(show, " ka3", sizeof(show));
- if (keypad_index(key_b2) >= 0)
-- strcat(show, " kb2");
-+ _nc_STRCAT(show, " kb2", sizeof(show));
- if (keypad_index(key_c1) >= 0)
-- strcat(show, " kc1");
-+ _nc_STRCAT(show, " kc1", sizeof(show));
- if (keypad_index(key_c3) >= 0)
-- strcat(show, " kc3");
-+ _nc_STRCAT(show, " kc3", sizeof(show));
- if (*show != '\0')
- _nc_warning("vt100 keypad map incomplete:%s", show);
- }
-+
-+ /*
-+ * These warnings are useful for consistency checks - it is possible that
-+ * there are real terminals with mismatches in these
-+ */
-+ ANDMISSING(key_ic, key_dc);
- }
-
- static void
-@@ -1216,6 +1506,74 @@
- ANDMISSING(parm_up_micro, micro_up);
- }
-
-+static bool
-+uses_SGR_39_49(const char *value)
-+{
-+ return (strstr(value, "39;49") != 0
-+ || strstr(value, "49;39") != 0);
-+}
-+
-+/*
-+ * Check consistency of termcap extensions related to "screen".
-+ */
-+static void
-+check_screen(TERMTYPE *tp)
-+{
-+#if NCURSES_XNAMES
-+ if (_nc_user_definable) {
-+ int have_XT = tigetflag("XT");
-+ int have_XM = tigetflag("XM");
-+ int have_bce = back_color_erase;
-+ bool have_kmouse = FALSE;
-+ bool use_sgr_39_49 = FALSE;
-+ char *name = _nc_first_name(tp->term_names);
-+
-+ if (!VALID_BOOLEAN(have_bce)) {
-+ have_bce = FALSE;
-+ }
-+ if (!VALID_BOOLEAN(have_XM)) {
-+ have_XM = FALSE;
-+ }
-+ if (!VALID_BOOLEAN(have_XT)) {
-+ have_XT = FALSE;
-+ }
-+ 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_XM && have_XT) {
-+ _nc_warning("Screen's XT capability conflicts with XM");
-+ } else if (have_XT
-+ && strstr(name, "screen") != 0
-+ && strchr(name, '.') != 0) {
-+ _nc_warning("Screen's \"screen\" entries should not have XT set");
-+ } else if (have_XT) {
-+ if (!have_kmouse && have_bce) {
-+ if (VALID_STRING(key_mouse)) {
-+ _nc_warning("Value of kmous inconsistent with screen's usage");
-+ } else {
-+ _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 (VALID_STRING(to_status_line))
-+ _nc_warning("\"tsl\" capability is redundant, given XT");
-+ } else {
-+ if (have_kmouse && !have_XM)
-+ _nc_warning("Expected XT to be set, given kmous");
-+ }
-+ }
-+#endif
-+}
-+
- /*
- * Returns the expected number of parameters for the given capability.
- */
-@@ -1318,7 +1676,7 @@
- int expected = expected_params(name);
- int actual = 0;
- int n;
-- bool params[10];
-+ bool params[NUM_PARM];
- char *s = value;
-
- #ifdef set_top_margin_parm
-@@ -1327,7 +1685,7 @@
- expected = 2;
- #endif
-
-- for (n = 0; n < 10; n++)
-+ for (n = 0; n < NUM_PARM; n++)
- params[n] = FALSE;
-
- while (*s != 0) {
-@@ -1366,6 +1724,228 @@
- }
-
- static char *
-+check_1_infotocap(const char *name, NCURSES_CONST char *value, int count)
-+{
-+ int k;
-+ int ignored;
-+ long numbers[1 + NUM_PARM];
-+ char *strings[1 + NUM_PARM];
-+ char *p_is_s[NUM_PARM];
-+ char *result;
-+ char blob[NUM_PARM * 10];
-+ char *next = blob;
-+
-+ *next++ = '\0';
-+ for (k = 1; k <= NUM_PARM; k++) {
-+ numbers[k] = count;
-+ sprintf(next, "XYZ%d", count);
-+ strings[k] = next;
-+ next += strlen(next) + 1;
-+ }
-+
-+ switch (tparm_type(name)) {
-+ case Num_Str:
-+ result = TPARM_2(value, numbers[1], strings[2]);
-+ break;
-+ case Num_Str_Str:
-+ result = TPARM_3(value, numbers[1], strings[2], strings[3]);
-+ break;
-+ case Numbers:
-+ 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),
-+ myParam(2),
-+ myParam(3),
-+ myParam(4),
-+ myParam(5),
-+ myParam(6),
-+ myParam(7),
-+ myParam(8),
-+ myParam(9));
-+ break;
-+ }
-+ return result;
-+}
-+
-+#define IsDelay(ch) ((ch) == '.' || isdigit(UChar(ch)))
-+
-+static const char *
-+parse_delay_value(const char *src, double *delays, int *always)
-+{
-+ int star = 0;
-+
-+ *delays = 0.0;
-+ if (always)
-+ *always = 0;
-+
-+ while (isdigit(UChar(*src))) {
-+ (*delays) = (*delays) * 10 + (*src++ - '0');
-+ }
-+ if (*src == '.') {
-+ int gotdot = 1;
-+
-+ ++src;
-+ while (isdigit(UChar(*src))) {
-+ gotdot *= 10;
-+ (*delays) += (*src++ - '0') / gotdot;
-+ }
-+ }
-+ while (*src == '*' || *src == '/') {
-+ if (always == 0 && *src == '/')
-+ break;
-+ if (*src++ == '*') {
-+ star = 1;
-+ } else {
-+ *always = 1;
-+ }
-+ }
-+ if (star)
-+ *delays = -(*delays);
-+ return src;
-+}
-+
-+static const char *
-+parse_ti_delay(const char *ti, double *delays)
-+{
-+ *delays = 0.0;
-+ while (*ti != '\0') {
-+ if (*ti == '\\') {
-+ ++ti;
-+ }
-+ if (ti[0] == '$'
-+ && ti[1] == '<'
-+ && IsDelay(UChar(ti[2]))) {
-+ int ignored;
-+ const char *last = parse_delay_value(ti + 2, delays, &ignored);
-+ if (*last == '>') {
-+ ti = last;
-+ }
-+ } else {
-+ ++ti;
-+ }
-+ }
-+ return ti;
-+}
-+
-+static const char *
-+parse_tc_delay(const char *tc, double *delays)
-+{
-+ return parse_delay_value(tc, delays, (int *) 0);
-+}
-+
-+/*
-+ * Compare terminfo- and termcap-strings, factoring out delays.
-+ */
-+static bool
-+same_ti_tc(const char *ti, const char *tc, bool * embedded)
-+{
-+ bool same = TRUE;
-+ double ti_delay = 0.0;
-+ double tc_delay = 0.0;
-+ const char *ti_last;
-+
-+ *embedded = FALSE;
-+ ti_last = parse_ti_delay(ti, &ti_delay);
-+ tc = parse_tc_delay(tc, &tc_delay);
-+
-+ while ((ti < ti_last) && *tc) {
-+ if (*ti == '\\' && ispunct(UChar(ti[1]))) {
-+ ++ti;
-+ if ((*ti == '^') && !strncmp(tc, "\\136", 4)) {
-+ ti += 1;
-+ tc += 4;
-+ continue;
-+ }
-+ } else if (ti[0] == '$' && ti[1] == '<') {
-+ double no_delay;
-+ const char *ss = parse_ti_delay(ti, &no_delay);
-+ if (ss != ti) {
-+ *embedded = TRUE;
-+ ti = ss;
-+ continue;
-+ }
-+ }
-+ if (*tc == '\\' && ispunct(UChar(tc[1]))) {
-+ ++tc;
-+ }
-+ if (*ti++ != *tc++) {
-+ same = FALSE;
-+ break;
-+ }
-+ }
-+
-+ if (*embedded) {
-+ if (same) {
-+ same = FALSE;
-+ } else {
-+ *embedded = FALSE; /* report only one problem */
-+ }
-+ }
-+
-+ return same;
-+}
-+
-+/*
-+ * Check terminfo to termcap translation.
-+ */
-+static void
-+check_infotocap(TERMTYPE *tp, int i, const char *value)
-+{
-+ const char *name = ExtStrname(tp, i, strnames);
-+ int params = (((i < (int) SIZEOF(parametrized)) &&
-+ (i < STRCOUNT))
-+ ? parametrized[i]
-+ : ((*value == 'k')
-+ ? 0
-+ : has_params(value)));
-+ int to_char = 0;
-+ char *ti_value;
-+ char *tc_value;
-+ bool embedded;
-+
-+ if ((ti_value = _nc_tic_expand(value, TRUE, to_char)) == ABSENT_STRING) {
-+ _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);
-+ } else if (params > 0) {
-+ int limit = 5;
-+ int count;
-+ bool first = TRUE;
-+
-+ if (!strcmp(name, "setf")
-+ || !strcmp(name, "setb")
-+ || !strcmp(name, "setaf")
-+ || !strcmp(name, "setab")) {
-+ limit = max_colors;
-+ }
-+ for (count = 0; count < limit; ++count) {
-+ char *ti_check = check_1_infotocap(name, ti_value, count);
-+ char *tc_check = check_1_infotocap(name, tc_value, count);
-+
-+ 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);
-+ first = FALSE;
-+ }
-+ _nc_warning("tparm-conversion of %s(%d) differs between\n\tterminfo %s\n\ttermcap %s",
-+ name, count, ti_check, tc_check);
-+ }
-+ }
-+ } else if (params == 0 && !same_ti_tc(ti_value, tc_value, &embedded)) {
-+ if (embedded) {
-+ _nc_warning("termcap equivalent of %s cannot use embedded delay", name);
-+ } else {
-+ _nc_warning("tic-conversion of %s changed value\n\tfrom %s\n\tto %s",
-+ name, ti_value, tc_value);
-+ }
-+ }
-+}
-+
-+static char *
- skip_delay(char *s)
- {
- while (*s == '/' || isdigit(UChar(*s)))
-@@ -1527,7 +2107,7 @@
- show_where(unsigned level)
- {
- if (_nc_tracing >= DEBUG_LEVEL(level)) {
-- char my_name[256];
-+ char my_name[MAX_NAME_SIZE];
- _nc_get_type(my_name);
- _tracef("\"%s\", line %d, '%s'",
- _nc_get_source(),
-@@ -1539,60 +2119,129 @@
- #define show_where(level) /* nothing */
- #endif
-
--/* other sanity-checks (things that we don't want in the normal
-- * logic that reads a terminfo entry)
-+typedef struct {
-+ int keycode;
-+ const char *name;
-+ const char *value;
-+} NAME_VALUE;
-+
-+static NAME_VALUE *
-+get_fkey_list(TERMTYPE *tp)
-+{
-+ NAME_VALUE *result = typeMalloc(NAME_VALUE, NUM_STRINGS(tp) + 1);
-+ const struct tinfo_fkeys *all_fkeys = _nc_tinfo_fkeys;
-+ int used = 0;
-+ int j;
-+
-+ if (result == 0)
-+ failed("get_fkey_list");
-+
-+ for (j = 0; all_fkeys[j].code; j++) {
-+ char *a = tp->Strings[all_fkeys[j].offset];
-+ if (VALID_STRING(a)) {
-+ result[used].keycode = (int) all_fkeys[j].code;
-+ result[used].name = strnames[all_fkeys[j].offset];
-+ result[used].value = a;
-+ ++used;
-+ }
-+ }
-+#if NCURSES_XNAMES
-+ for (j = STRCOUNT; j < NUM_STRINGS(tp); ++j) {
-+ const char *name = ExtStrname(tp, j, strnames);
-+ if (*name == 'k') {
-+ result[used].keycode = -1;
-+ result[used].name = name;
-+ result[used].value = tp->Strings[j];
-+ ++used;
-+ }
-+ }
-+#endif
-+ result[used].keycode = 0;
-+ return result;
-+}
-+
-+static void
-+show_fkey_name(NAME_VALUE * data)
-+{
-+ if (data->keycode > 0) {
-+ fprintf(stderr, " %s", keyname(data->keycode));
-+ fprintf(stderr, " (capability \"%s\")", data->name);
-+ } else {
-+ fprintf(stderr, " capability \"%s\"", data->name);
-+ }
-+}
-+
-+/*
-+ * A terminal entry may contain more than one keycode assigned to a given
-+ * string (e.g., KEY_END and KEY_LL). But curses will only return one (the
-+ * last one assigned).
- */
- static void
--check_termtype(TERMTYPE *tp, bool literal)
-+check_conflict(TERMTYPE *tp)
- {
- bool conflict = FALSE;
- unsigned j, k;
-- char fkeys[STRCOUNT];
-
-- /*
-- * A terminal entry may contain more than one keycode assigned to
-- * a given string (e.g., KEY_END and KEY_LL). But curses will only
-- * return one (the last one assigned).
-- */
- if (!(_nc_syntax == SYN_TERMCAP && capdump)) {
-- memset(fkeys, 0, sizeof(fkeys));
-- for (j = 0; _nc_tinfo_fkeys[j].code; j++) {
-- char *a = tp->Strings[_nc_tinfo_fkeys[j].offset];
-+ char *check = calloc((size_t) (NUM_STRINGS(tp) + 1), sizeof(char));
-+ NAME_VALUE *given = get_fkey_list(tp);
-+
-+ if (check == 0)
-+ failed("check_termtype");
-+
-+ for (j = 0; given[j].keycode; ++j) {
-+ const char *a = given[j].value;
- bool first = TRUE;
-- if (!VALID_STRING(a))
-- continue;
-- for (k = j + 1; _nc_tinfo_fkeys[k].code; k++) {
-- char *b = tp->Strings[_nc_tinfo_fkeys[k].offset];
-- if (!VALID_STRING(b)
-- || fkeys[k])
-+
-+ for (k = j + 1; given[k].keycode; k++) {
-+ const char *b = given[k].value;
-+ if (check[k])
- continue;
- if (!_nc_capcmp(a, b)) {
-- fkeys[j] = 1;
-- fkeys[k] = 1;
-+ check[j] = 1;
-+ check[k] = 1;
- if (first) {
- if (!conflict) {
- _nc_warning("Conflicting key definitions (using the last)");
- conflict = TRUE;
- }
-- fprintf(stderr, "... %s is the same as %s",
-- keyname((int) _nc_tinfo_fkeys[j].code),
-- keyname((int) _nc_tinfo_fkeys[k].code));
-+ fprintf(stderr, "...");
-+ show_fkey_name(given + j);
-+ fprintf(stderr, " is the same as");
-+ show_fkey_name(given + k);
- first = FALSE;
- } else {
-- fprintf(stderr, ", %s",
-- keyname((int) _nc_tinfo_fkeys[k].code));
-+ fprintf(stderr, ", ");
-+ show_fkey_name(given + k);
- }
- }
- }
- if (!first)
- fprintf(stderr, "\n");
- }
-+ free(given);
-+ free(check);
- }
-+}
-
-- for (j = 0; j < NUM_STRINGS(tp); j++) {
-+/* other sanity-checks (things that we don't want in the normal
-+ * logic that reads a terminfo entry)
-+ */
-+static void
-+check_termtype(TERMTYPE *tp, bool literal)
-+{
-+ unsigned j;
-+
-+ check_conflict(tp);
-+
-+ for_each_string(j, tp) {
- char *a = tp->Strings[j];
-- if (VALID_STRING(a))
-- check_params(tp, ExtStrname(tp, j, strnames), a);
-+ if (VALID_STRING(a)) {
-+ check_params(tp, ExtStrname(tp, (int) j, strnames), a);
-+ if (capdump) {
-+ check_infotocap(tp, (int) j, a);
-+ }
-+ }
- }
-
- check_acs(tp);
-@@ -1600,6 +2249,7 @@
- check_cursor(tp);
- check_keypad(tp);
- check_printer(tp);
-+ check_screen(tp);
-
- /*
- * These may be mismatched because the terminal description relies on
-Index: progs/toe.c
-Prereq: 1.52
---- ncurses-5.9/progs/toe.c 2010-05-01 22:04:08.000000000 +0000
-+++ ncurses-5.9-20141206/progs/toe.c 2013-12-15 01:08:28.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -44,12 +44,23 @@
- #include <hashed_db.h>
- #endif
-
--MODULE_ID("$Id: toe.c,v 1.52 2010/05/01 22:04:08 tom Exp $")
-+MODULE_ID("$Id: toe.c,v 1.74 2013/12/15 01:08:28 tom Exp $")
-
- #define isDotname(name) (!strcmp(name, ".") || !strcmp(name, ".."))
-
-+typedef struct {
-+ int db_index;
-+ unsigned long checksum;
-+ char *term_name;
-+ char *description;
-+} TERMDATA;
-+
- const char *_nc_progname;
-
-+static TERMDATA *ptr_termdata; /* array of terminal data */
-+static size_t use_termdata; /* actual usage in ptr_termdata[] */
-+static size_t len_termdata; /* allocated size of ptr_termdata[] */
-+
- #if NO_LEAKS
- #undef ExitProgram
- static void ExitProgram(int code) GCC_NORETURN;
-@@ -61,6 +72,8 @@
- }
- #endif
-
-+static void failed(const char *) GCC_NORETURN;
-+
- static void
- failed(const char *msg)
- {
-@@ -68,6 +81,150 @@
- ExitProgram(EXIT_FAILURE);
- }
-
-+static char *
-+strmalloc(const char *value)
-+{
-+ char *result = strdup(value);
-+ if (result == 0) {
-+ failed("strmalloc");
-+ }
-+ return result;
-+}
-+
-+static TERMDATA *
-+new_termdata(void)
-+{
-+ size_t want = use_termdata + 1;
-+
-+ if (want >= len_termdata) {
-+ len_termdata = (2 * want) + 10;
-+ ptr_termdata = typeRealloc(TERMDATA, len_termdata, ptr_termdata);
-+ if (ptr_termdata == 0)
-+ failed("ptr_termdata");
-+ }
-+
-+ return ptr_termdata + use_termdata++;
-+}
-+
-+static int
-+compare_termdata(const void *a, const void *b)
-+{
-+ const TERMDATA *p = (const TERMDATA *) a;
-+ const TERMDATA *q = (const TERMDATA *) b;
-+ int result = strcmp(p->term_name, q->term_name);
-+
-+ if (result == 0) {
-+ result = (p->db_index - q->db_index);
-+ }
-+ return result;
-+}
-+
-+/*
-+ * Sort the array of TERMDATA and print it. If more than one database is being
-+ * reported, add a column to show which database has a given entry.
-+ */
-+static void
-+show_termdata(int eargc, char **eargv)
-+{
-+ int j, k;
-+ size_t n;
-+
-+ if (use_termdata) {
-+ if (eargc > 1) {
-+ for (j = 0; j < eargc; ++j) {
-+ for (k = 0; k <= j; ++k) {
-+ printf("--");
-+ }
-+ printf("> ");
-+ printf("%s\n", eargv[j]);
-+ }
-+ }
-+ if (use_termdata > 1)
-+ qsort(ptr_termdata, use_termdata, sizeof(TERMDATA), compare_termdata);
-+ for (n = 0; n < use_termdata; ++n) {
-+
-+ /*
-+ * If there is more than one database, show how they differ.
-+ */
-+ if (eargc > 1) {
-+ unsigned long check = 0;
-+ k = 0;
-+ for (;;) {
-+ for (; k < ptr_termdata[n].db_index; ++k) {
-+ printf("--");
-+ }
-+
-+ /*
-+ * If this is the first entry, or its checksum differs
-+ * 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))
-+ ? '*'
-+ : '+'));
-+ check = ptr_termdata[n].checksum;
-+
-+ ++k;
-+ if ((n + 1) >= use_termdata
-+ || strcmp(ptr_termdata[n].term_name,
-+ ptr_termdata[n + 1].term_name)) {
-+ break;
-+ }
-+ ++n;
-+ }
-+ for (; k < eargc; ++k) {
-+ printf("--");
-+ }
-+ printf(":\t");
-+ }
-+
-+ (void) printf("%-10s\t%s\n",
-+ ptr_termdata[n].term_name,
-+ ptr_termdata[n].description);
-+ }
-+ }
-+}
-+
-+static void
-+free_termdata(void)
-+{
-+ if (ptr_termdata != 0) {
-+ while (use_termdata != 0) {
-+ --use_termdata;
-+ free(ptr_termdata[use_termdata].term_name);
-+ free(ptr_termdata[use_termdata].description);
-+ }
-+ free(ptr_termdata);
-+ ptr_termdata = 0;
-+ }
-+ use_termdata = 0;
-+ len_termdata = 0;
-+}
-+
-+static char **
-+allocArgv(size_t count)
-+{
-+ char **result = typeCalloc(char *, count + 1);
-+ if (result == 0)
-+ failed("realloc eargv");
-+
-+ assert(result != 0);
-+ return result;
-+}
-+
-+static void
-+freeArgv(char **argv)
-+{
-+ if (argv) {
-+ int count = 0;
-+ while (argv[count]) {
-+ free(argv[count++]);
-+ }
-+ free(argv);
-+ }
-+}
-+
- #if USE_HASHED_DB
- static bool
- make_db_name(char *dst, const char *src, unsigned limit)
-@@ -75,67 +232,100 @@
- static const char suffix[] = DBM_SUFFIX;
-
- bool result = FALSE;
-- unsigned lens = sizeof(suffix) - 1;
-- unsigned size = strlen(src);
-- unsigned need = lens + size;
-+ size_t lens = sizeof(suffix) - 1;
-+ size_t size = strlen(src);
-+ size_t need = lens + size;
-
- if (need <= limit) {
- if (size >= lens
-- && !strcmp(src + size - lens, suffix))
-- (void) strcpy(dst, src);
-- else
-- (void) sprintf(dst, "%s%s", src, suffix);
-+ && !strcmp(src + size - lens, suffix)) {
-+ _nc_STRCPY(dst, src, PATH_MAX);
-+ } else {
-+ _nc_SPRINTF(dst, _nc_SLIMIT(PATH_MAX) "%s%s", src, suffix);
-+ }
- result = TRUE;
- }
- return result;
- }
- #endif
-
--static bool
--is_database(const char *path)
-+typedef void (DescHook) (int /* db_index */ ,
-+ int /* db_limit */ ,
-+ const char * /* term_name */ ,
-+ TERMTYPE * /* term */ );
-+
-+static const char *
-+term_description(TERMTYPE *tp)
- {
-- bool result = FALSE;
--#if USE_DATABASE
-- if (_nc_is_dir_path(path) && access(path, R_OK | X_OK) == 0) {
-- result = TRUE;
-- }
--#endif
--#if USE_TERMCAP
-- if (_nc_is_file_path(path) && access(path, R_OK) == 0) {
-- result = TRUE;
-+ const char *desc;
-+
-+ if (tp->term_names == 0
-+ || (desc = strrchr(tp->term_names, '|')) == 0
-+ || (*++desc == '\0')) {
-+ desc = "(No description)";
- }
--#endif
--#if USE_HASHED_DB
-- if (!result) {
-- char filename[PATH_MAX];
-- if (_nc_is_file_path(path) && access(path, R_OK) == 0) {
-- result = TRUE;
-- } else if (make_db_name(filename, path, sizeof(filename))) {
-- if (_nc_is_file_path(filename) && access(filename, R_OK) == 0) {
-- result = TRUE;
-- }
-+
-+ return desc;
-+}
-+
-+/* display a description for the type */
-+static void
-+deschook(int db_index, int db_limit, const char *term_name, TERMTYPE *tp)
-+{
-+ (void) db_index;
-+ (void) db_limit;
-+ (void) printf("%-10s\t%s\n", term_name, term_description(tp));
-+}
-+
-+static unsigned long
-+string_sum(const char *value)
-+{
-+ unsigned long result = 0;
-+
-+ if ((intptr_t) value == (intptr_t) (-1)) {
-+ result = ~result;
-+ } else if (value) {
-+ while (*value) {
-+ result += UChar(*value);
-+ ++value;
- }
- }
--#endif
- return result;
- }
-
--static void
--deschook(const char *cn, TERMTYPE *tp)
--/* display a description for the type */
-+static unsigned long
-+checksum_of(TERMTYPE *tp)
- {
-- const char *desc;
-+ unsigned long result = string_sum(tp->term_names);
-+ unsigned i;
-
-- if ((desc = strrchr(tp->term_names, '|')) == 0 || *++desc == '\0')
-- desc = "(No description)";
-+ for (i = 0; i < NUM_BOOLEANS(tp); i++) {
-+ result += (unsigned long) (tp->Booleans[i]);
-+ }
-+ for (i = 0; i < NUM_NUMBERS(tp); i++) {
-+ result += (unsigned long) (tp->Numbers[i]);
-+ }
-+ for (i = 0; i < NUM_STRINGS(tp); i++) {
-+ result += string_sum(tp->Strings[i]);
-+ }
-+ return result;
-+}
-+
-+/* collect data, to sort before display */
-+static void
-+sorthook(int db_index, int db_limit, const char *term_name, TERMTYPE *tp)
-+{
-+ TERMDATA *data = new_termdata();
-
-- (void) printf("%-10s\t%s\n", cn, desc);
-+ data->db_index = db_index;
-+ data->checksum = ((db_limit > 1) ? checksum_of(tp) : 0);
-+ data->term_name = strmalloc(term_name);
-+ data->description = strmalloc(term_description(tp));
- }
-
--#if USE_TERMCAP
-+#if NCURSES_USE_TERMCAP
- static void
--show_termcap(char *buffer,
-- void (*hook) (const char *, TERMTYPE *tp))
-+show_termcap(int db_index, int db_limit, char *buffer, DescHook hook)
- {
- TERMTYPE data;
- char *next = strchr(buffer, ':');
-@@ -149,26 +339,42 @@
- if (last)
- ++last;
-
-- data.term_names = strdup(buffer);
-+ memset(&data, 0, sizeof(data));
-+ data.term_names = strmalloc(buffer);
- while ((next = strtok(list, "|")) != 0) {
- if (next != last)
-- hook(next, &data);
-+ hook(db_index, db_limit, next, &data);
- list = 0;
- }
- free(data.term_names);
- }
- #endif
-
-+#if NCURSES_USE_DATABASE
-+static char *
-+copy_entryname(DIRENT * src)
-+{
-+ size_t len = NAMLEN(src);
-+ char *result = malloc(len + 1);
-+ if (result == 0)
-+ failed("copy entryname");
-+ memcpy(result, src->d_name, len);
-+ result[len] = '\0';
-+
-+ return result;
-+}
-+#endif
-+
- static int
- typelist(int eargc, char *eargv[],
-- bool verbosity,
-- void (*hook) (const char *, TERMTYPE *tp))
-+ int verbosity,
-+ DescHook hook)
- /* apply a function to each entry in given terminfo directories */
- {
- int i;
-
- for (i = 0; i < eargc; i++) {
--#if USE_DATABASE
-+#if NCURSES_USE_DATABASE
- if (_nc_is_dir_path(eargv[i])) {
- char *cwd_buf = 0;
- DIR *termdir;
-@@ -179,28 +385,35 @@
- (void) fprintf(stderr,
- "%s: can't open terminfo directory %s\n",
- _nc_progname, eargv[i]);
-- return (EXIT_FAILURE);
-- } else if (verbosity)
-+ continue;
-+ }
-+
-+ if (verbosity)
- (void) printf("#\n#%s:\n#\n", eargv[i]);
-
- while ((subdir = readdir(termdir)) != 0) {
-- size_t len = NAMLEN(subdir);
-- size_t cwd_len = len + strlen(eargv[i]) + 3;
-- char name_1[PATH_MAX];
-+ size_t cwd_len;
-+ char *name_1;
- DIR *entrydir;
- DIRENT *entry;
-
-+ name_1 = copy_entryname(subdir);
-+ if (isDotname(name_1)) {
-+ free(name_1);
-+ continue;
-+ }
-+
-+ cwd_len = NAMLEN(subdir) + strlen(eargv[i]) + 3;
- cwd_buf = typeRealloc(char, cwd_len, cwd_buf);
- if (cwd_buf == 0)
- failed("realloc cwd_buf");
-
- assert(cwd_buf != 0);
-
-- strncpy(name_1, subdir->d_name, len)[len] = '\0';
-- if (isDotname(name_1))
-- continue;
-+ _nc_SPRINTF(cwd_buf, _nc_SLIMIT(cwd_len)
-+ "%s/%s/", eargv[i], name_1);
-+ free(name_1);
-
-- (void) sprintf(cwd_buf, "%s/%.*s/", eargv[i], (int) len, name_1);
- if (chdir(cwd_buf) != 0)
- continue;
-
-@@ -210,15 +423,16 @@
- continue;
- }
- while ((entry = readdir(entrydir)) != 0) {
-- char name_2[PATH_MAX];
-+ char *name_2;
- TERMTYPE lterm;
- char *cn;
- int status;
-
-- len = NAMLEN(entry);
-- strncpy(name_2, entry->d_name, len)[len] = '\0';
-- if (isDotname(name_2) || !_nc_is_file_path(name_2))
-+ name_2 = copy_entryname(entry);
-+ if (isDotname(name_2) || !_nc_is_file_path(name_2)) {
-+ free(name_2);
- continue;
-+ }
-
- status = _nc_read_file_entry(name_2, &lterm);
- if (status <= 0) {
-@@ -226,6 +440,10 @@
- (void) fprintf(stderr,
- "%s: couldn't open terminfo file %s.\n",
- _nc_progname, name_2);
-+ free(cwd_buf);
-+ free(name_2);
-+ closedir(entrydir);
-+ closedir(termdir);
- return (EXIT_FAILURE);
- }
-
-@@ -233,21 +451,26 @@
- cn = _nc_first_name(lterm.term_names);
- if (!strcmp(cn, name_2)) {
- /* apply the selected hook function */
-- (*hook) (cn, &lterm);
-+ hook(i, eargc, cn, &lterm);
- }
- _nc_free_termtype(&lterm);
-+ free(name_2);
- }
- closedir(entrydir);
- }
- closedir(termdir);
- if (cwd_buf != 0)
- free(cwd_buf);
-+ continue;
- }
- #if USE_HASHED_DB
- else {
- DB *capdbp;
- char filename[PATH_MAX];
-
-+ if (verbosity)
-+ (void) printf("#\n#%s:\n#\n", eargv[i]);
-+
- if (make_db_name(filename, eargv[i], sizeof(filename))) {
- if ((capdbp = _nc_db_open(filename, FALSE)) != 0) {
- DBT key, data;
-@@ -265,7 +488,7 @@
- /* only visit things once, by primary name */
- cn = _nc_first_name(lterm.term_names);
- /* apply the selected hook function */
-- (*hook) (cn, &lterm);
-+ hook(i, eargc, cn, &lterm);
- _nc_free_termtype(&lterm);
- }
- }
-@@ -273,44 +496,51 @@
- }
-
- _nc_db_close(capdbp);
-+ continue;
- }
- }
- }
- #endif
- #endif
--#if USE_TERMCAP
-+#if NCURSES_USE_TERMCAP
- #if HAVE_BSD_CGETENT
-- char *db_array[2];
-- char *buffer = 0;
-+ {
-+ CGETENT_CONST char *db_array[2];
-+ char *buffer = 0;
-
-- if (verbosity)
-- (void) printf("#\n#%s:\n#\n", eargv[i]);
-+ if (verbosity)
-+ (void) printf("#\n#%s:\n#\n", eargv[i]);
-
-- db_array[0] = eargv[i];
-- db_array[1] = 0;
-+ db_array[0] = eargv[i];
-+ db_array[1] = 0;
-
-- if (cgetfirst(&buffer, db_array)) {
-- show_termcap(buffer, hook);
-- free(buffer);
-- while (cgetnext(&buffer, db_array)) {
-- show_termcap(buffer, hook);
-+ if (cgetfirst(&buffer, db_array) > 0) {
-+ show_termcap(i, eargc, buffer, hook);
- free(buffer);
-+ while (cgetnext(&buffer, db_array) > 0) {
-+ show_termcap(i, eargc, buffer, hook);
-+ free(buffer);
-+ }
-+ cgetclose();
-+ continue;
- }
- }
-- cgetclose();
- #else
- /* scan termcap text-file only */
- if (_nc_is_file_path(eargv[i])) {
- char buffer[2048];
- FILE *fp;
-
-+ if (verbosity)
-+ (void) printf("#\n#%s:\n#\n", eargv[i]);
-+
- if ((fp = fopen(eargv[i], "r")) != 0) {
- while (fgets(buffer, sizeof(buffer), fp) != 0) {
- if (*buffer == '#')
- continue;
- if (isspace(*buffer))
- continue;
-- show_termcap(buffer, hook);
-+ show_termcap(i, eargc, buffer, hook);
- }
- fclose(fp);
- }
-@@ -319,13 +549,18 @@
- #endif
- }
-
-+ if (hook == sorthook) {
-+ show_termdata(eargc, eargv);
-+ free_termdata();
-+ }
-+
- return (EXIT_SUCCESS);
- }
-
- static void
- usage(void)
- {
-- (void) fprintf(stderr, "usage: %s [-ahuUV] [-v n] [file...]\n", _nc_progname);
-+ (void) fprintf(stderr, "usage: %s [-ahsuUV] [-v n] [file...]\n", _nc_progname);
- ExitProgram(EXIT_FAILURE);
- }
-
-@@ -340,23 +575,24 @@
- unsigned i;
- int code;
- int this_opt, last_opt = '?';
-- int v_opt = 0;
-+ unsigned v_opt = 0;
-+ DescHook *hook = deschook;
-
- _nc_progname = _nc_rootname(argv[0]);
-
-- while ((this_opt = getopt(argc, argv, "0123456789ahu:vU:V")) != -1) {
-+ while ((this_opt = getopt(argc, argv, "0123456789ahsu:vU:V")) != -1) {
- /* handle optional parameter */
- if (isdigit(this_opt)) {
- switch (last_opt) {
- case 'v':
-- v_opt = (this_opt - '0');
-+ v_opt = (unsigned) (this_opt - '0');
- break;
- default:
- if (isdigit(last_opt))
- v_opt *= 10;
- else
- v_opt = 0;
-- v_opt += (this_opt - '0');
-+ v_opt += (unsigned) (this_opt - '0');
- last_opt = this_opt;
- }
- continue;
-@@ -368,6 +604,9 @@
- case 'h':
- header = TRUE;
- break;
-+ case 's':
-+ hook = sorthook;
-+ break;
- case 'u':
- direct_dependencies = TRUE;
- report_file = optarg;
-@@ -450,7 +689,7 @@
- * If we get this far, user wants a simple terminal type listing.
- */
- if (optind < argc) {
-- code = typelist(argc - optind, argv + optind, header, deschook);
-+ code = typelist(argc - optind, argv + optind, header, hook);
- } else if (all_dirs) {
- DBDIRS state;
- int offset;
-@@ -460,64 +699,41 @@
-
- code = EXIT_FAILURE;
- for (pass = 0; pass < 2; ++pass) {
-- unsigned count = 0;
-+ size_t count = 0;
-
- _nc_first_db(&state, &offset);
- while ((path = _nc_next_db(&state, &offset)) != 0) {
-- if (!is_database(path)) {
-- ;
-- } else if (eargv != 0) {
-- unsigned n;
-- int found = FALSE;
--
-- /* eliminate duplicates */
-- for (n = 0; n < count; ++n) {
-- if (!strcmp(path, eargv[n])) {
-- found = TRUE;
-- break;
-- }
-- }
-- if (!found) {
-- eargv[count] = strdup(path);
-- ++count;
-- }
-- } else {
-- ++count;
-+ if (pass) {
-+ eargv[count] = strmalloc(path);
- }
-+ ++count;
- }
- if (!pass) {
-- eargv = typeCalloc(char *, count + 1);
-+ eargv = allocArgv(count);
- if (eargv == 0)
-- failed("realloc eargv");
--
-- assert(eargv != 0);
-+ failed("eargv");
- } else {
-- code = typelist((int) count, eargv, header, deschook);
-- while (count-- > 0)
-- free(eargv[count]);
-- free(eargv);
-+ code = typelist((int) count, eargv, header, hook);
-+ freeArgv(eargv);
- }
- }
- } else {
- DBDIRS state;
- int offset;
- const char *path;
-- char *eargv[3];
-- int count = 0;
-+ char **eargv = allocArgv((size_t) 2);
-+ size_t count = 0;
-
-+ if (eargv == 0)
-+ failed("eargv");
- _nc_first_db(&state, &offset);
-- while ((path = _nc_next_db(&state, &offset)) != 0) {
-- if (is_database(path)) {
-- eargv[count++] = strdup(path);
-- break;
-- }
-+ if ((path = _nc_next_db(&state, &offset)) != 0) {
-+ eargv[count++] = strmalloc(path);
- }
-- eargv[count] = 0;
-
-- code = typelist(count, eargv, header, deschook);
-+ code = typelist((int) count, eargv, header, hook);
-
-- while (count-- > 0)
-- free(eargv[count]);
-+ freeArgv(eargv);
- }
- _nc_last_db();
-
-Index: progs/tparm_type.c
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/progs/tparm_type.c 2014-05-21 16:50:57.000000000 +0000
-@@ -0,0 +1,68 @@
-+/****************************************************************************
-+ * Copyright (c) 1998-2012,2013 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 E. Dickey *
-+ ****************************************************************************/
-+
-+#include <tparm_type.h>
-+
-+MODULE_ID("$Id: tparm_type.c,v 1.1 2014/05/21 16:50:57 tom Exp $")
-+
-+/*
-+ * Lookup the type of call we should make to tparm(). This ignores the actual
-+ * terminfo capability (bad, because it is not extensible), but makes this
-+ * code portable to platforms where sizeof(int) != sizeof(char *).
-+ */
-+TParams
-+tparm_type(const char *name)
-+{
-+#define TD(code, longname, ti, tc) {code,longname},{code,ti},{code,tc}
-+ TParams result = Numbers;
-+ /* *INDENT-OFF* */
-+ static const struct {
-+ TParams code;
-+ const char *name;
-+ } table[] = {
-+ TD(Num_Str, "pkey_key", "pfkey", "pk"),
-+ TD(Num_Str, "pkey_local", "pfloc", "pl"),
-+ TD(Num_Str, "pkey_xmit", "pfx", "px"),
-+ TD(Num_Str, "plab_norm", "pln", "pn"),
-+ TD(Num_Str_Str, "pkey_plab", "pfxl", "xl"),
-+ };
-+ /* *INDENT-ON* */
-+
-+ unsigned n;
-+ for (n = 0; n < SIZEOF(table); n++) {
-+ if (!strcmp(name, table[n].name)) {
-+ result = table[n].code;
-+ break;
-+ }
-+ }
-+ return result;
-+}
-Index: progs/tparm_type.h
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/progs/tparm_type.h 2014-05-21 16:57:56.000000000 +0000
-@@ -0,0 +1,52 @@
-+/****************************************************************************
-+ * Copyright (c) 2014 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 E. Dickey *
-+ ****************************************************************************/
-+
-+/*
-+ * $Id: tparm_type.h,v 1.1 2014/05/21 16:57:56 tom Exp $
-+ *
-+ * determine expected/actual number of parameters to setup for tparm
-+ */
-+#ifndef TPARM_TYPE_H
-+#define TPARM_TYPE_H 1
-+
-+#define USE_LIBTINFO
-+#include <progs.priv.h>
-+
-+typedef enum {
-+ Numbers = 0
-+ ,Num_Str
-+ ,Num_Str_Str
-+} TParams;
-+
-+extern TParams tparm_type(const char *name);
-+
-+#endif /* TPARM_TYPE_H */
-Index: progs/tput.c
-Prereq: 1.46
---- ncurses-5.9/progs/tput.c 2010-01-09 16:53:24.000000000 +0000
-+++ ncurses-5.9-20141206/progs/tput.c 2014-05-21 16:57:16.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -29,6 +29,7 @@
- /****************************************************************************
- * Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995 *
- * and: Eric S. Raymond <esr@snark.thyrsus.com> *
-+ * and: Thomas E. Dickey 1996-on *
- ****************************************************************************/
-
- /*
-@@ -38,8 +39,7 @@
- * Ross Ridge's mytinfo package.
- */
-
--#define USE_LIBTINFO
--#include <progs.priv.h>
-+#include <tparm_type.h>
-
- #if !PURE_TERMINFO
- #include <dump_entry.h>
-@@ -47,18 +47,12 @@
- #endif
- #include <transform.h>
-
--MODULE_ID("$Id: tput.c,v 1.46 2010/01/09 16:53:24 tom Exp $")
-+MODULE_ID("$Id: tput.c,v 1.50 2014/05/21 16:57:16 tom Exp $")
-
- #define PUTS(s) fputs(s, stdout)
- #define PUTCHAR(c) putchar(c)
- #define FLUSH fflush(stdout)
-
--typedef enum {
-- Numbers = 0
-- ,Num_Str
-- ,Num_Str_Str
--} TParams;
--
- static char *prg_name;
- static bool is_init = FALSE;
- static bool is_reset = FALSE;
-@@ -90,42 +84,6 @@
- is_reset = same_program(name, PROG_RESET);
- }
-
--/*
-- * Lookup the type of call we should make to tparm(). This ignores the actual
-- * terminfo capability (bad, because it is not extensible), but makes this
-- * code portable to platforms where sizeof(int) != sizeof(char *).
-- *
-- * FIXME: If we want extensibility, analyze the capability string as we do
-- * in tparm() to decide how to parse the varargs list.
-- */
--static TParams
--tparm_type(const char *name)
--{
--#define TD(code, longname, ti, tc) {code,longname},{code,ti},{code,tc}
-- TParams result = Numbers;
-- /* *INDENT-OFF* */
-- static const struct {
-- TParams code;
-- const char *name;
-- } table[] = {
-- TD(Num_Str, "pkey_key", "pfkey", "pk"),
-- TD(Num_Str, "pkey_local", "pfloc", "pl"),
-- TD(Num_Str, "pkey_xmit", "pfx", "px"),
-- TD(Num_Str, "plab_norm", "pln", "pn"),
-- TD(Num_Str_Str, "pkey_plab", "pfxl", "xl"),
-- };
-- /* *INDENT-ON* */
--
-- unsigned n;
-- for (n = 0; n < SIZEOF(table); n++) {
-- if (!strcmp(name, table[n].name)) {
-- result = table[n].code;
-- break;
-- }
-- }
-- return result;
--}
--
- static int
- exit_code(int token, int value)
- {
-@@ -306,7 +264,7 @@
- } else if (s != ABSENT_STRING) {
- if (argc > 1) {
- int k;
-- int popcount;
-+ int ignored;
- long numbers[1 + NUM_PARM];
- char *strings[1 + NUM_PARM];
- char *p_is_s[NUM_PARM];
-@@ -337,8 +295,8 @@
- break;
- case Numbers:
- default:
-- (void) _nc_tparm_analyze(s, p_is_s, &popcount);
--#define myParam(n) (p_is_s[n - 1] != 0 ? ((long) strings[n]) : numbers[n])
-+ (void) _nc_tparm_analyze(s, p_is_s, &ignored);
-+#define myParam(n) (p_is_s[n - 1] != 0 ? ((TPARM_ARG) strings[n]) : numbers[n])
- s = TPARM_9(s,
- myParam(1),
- myParam(2),
-Index: progs/transform.c
-Prereq: 1.2
---- ncurses-5.9/progs/transform.c 2010-09-04 21:16:17.000000000 +0000
-+++ ncurses-5.9-20141206/progs/transform.c 2011-05-14 22:41:17.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2009-2010,2011 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 *
-@@ -34,21 +34,21 @@
-
- #include <transform.h>
-
--MODULE_ID("$Id: transform.c,v 1.2 2010/09/04 21:16:17 tom Exp $")
-+MODULE_ID("$Id: transform.c,v 1.3 2011/05/14 22:41:17 tom Exp $")
-
- #ifdef SUFFIX_IGNORED
- static void
--trim_suffix(const char *a, unsigned *len)
-+trim_suffix(const char *a, size_t *len)
- {
- const char ignore[] = SUFFIX_IGNORED;
-
- if (sizeof(ignore) != 0) {
- bool trim = FALSE;
-- unsigned need = (sizeof(ignore) - 1);
-+ size_t need = (sizeof(ignore) - 1);
-
- if (*len > need) {
-- unsigned first = *len - need;
-- unsigned n;
-+ size_t first = *len - need;
-+ size_t n;
- trim = TRUE;
- for (n = first; n < *len; ++n) {
- if (tolower(UChar(a[n])) != tolower(UChar(ignore[n - first]))) {
-@@ -69,8 +69,8 @@
- bool
- same_program(const char *a, const char *b)
- {
-- unsigned len_a = strlen(a);
-- unsigned len_b = strlen(b);
-+ size_t len_a = strlen(a);
-+ size_t len_b = strlen(b);
-
- trim_suffix(a, &len_a);
- trim_suffix(b, &len_b);
-Index: progs/tset.c
-Prereq: 1.82
---- ncurses-5.9/progs/tset.c 2010-05-01 21:42:46.000000000 +0000
-+++ ncurses-5.9-20141206/progs/tset.c 2013-12-15 01:05:56.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -119,7 +119,7 @@
- #include <dump_entry.h>
- #include <transform.h>
-
--MODULE_ID("$Id: tset.c,v 1.82 2010/05/01 21:42:46 tom Exp $")
-+MODULE_ID("$Id: tset.c,v 1.93 2013/12/15 01:05:56 tom Exp $")
-
- /*
- * SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS,
-@@ -148,6 +148,10 @@
- #undef CTRL
- #define CTRL(x) ((x) & 0x1f)
-
-+static void failed(const char *) GCC_NORETURN;
-+static void exit_error(void) GCC_NORETURN;
-+static void err(const char *,...) GCC_NORETURN;
-+
- const char *_nc_progname = "tset";
-
- static TTY mode, oldmode, original;
-@@ -160,7 +164,10 @@
- static int terasechar = -1; /* new erase character */
- static int intrchar = -1; /* new interrupt character */
- static int tkillchar = -1; /* new kill character */
-+
-+#if HAVE_SIZECHANGE
- static int tlines, tcolumns; /* window size */
-+#endif
-
- #define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
-
-@@ -203,13 +210,13 @@
- failed(const char *msg)
- {
- char temp[BUFSIZ];
-- unsigned len = strlen(_nc_progname) + 2;
-+ size_t len = strlen(_nc_progname) + 2;
-
- if ((int) len < (int) sizeof(temp) - 12) {
-- strcpy(temp, _nc_progname);
-- strcat(temp, ": ");
-+ _nc_STRCPY(temp, _nc_progname, sizeof(temp));
-+ _nc_STRCAT(temp, ": ", sizeof(temp));
- } else {
-- strcpy(temp, "tset: ");
-+ _nc_STRCPY(temp, "tset: ", sizeof(temp));
- }
- perror(strncat(temp, msg, sizeof(temp) - strlen(temp) - 2));
- exit_error();
-@@ -467,9 +474,6 @@
- mapp->speed = tbaudrate(p);
- }
-
-- if (arg == (char *) 0) /* Non-optional type. */
-- goto badmopt;
--
- mapp->type = arg;
-
- /* Terminate porttype, if specified. */
-@@ -527,19 +531,19 @@
- match = TRUE;
- break;
- case EQ:
-- match = (ospeed == mapp->speed);
-+ match = ((int) ospeed == mapp->speed);
- break;
- case GE:
-- match = (ospeed >= mapp->speed);
-+ match = ((int) ospeed >= mapp->speed);
- break;
- case GT:
-- match = (ospeed > mapp->speed);
-+ match = ((int) ospeed > mapp->speed);
- break;
- case LE:
-- match = (ospeed <= mapp->speed);
-+ match = ((int) ospeed <= mapp->speed);
- break;
- case LT:
-- match = (ospeed < mapp->speed);
-+ match = ((int) ospeed < mapp->speed);
- break;
- default:
- match = FALSE;
-@@ -631,13 +635,14 @@
- * real entry from /etc/termcap. This prevents us from being fooled
- * by out of date stuff in the environment.
- */
-- found:if ((p = getenv("TERMCAP")) != 0 && !_nc_is_abs_path(p)) {
-+ found:
-+ if ((p = getenv("TERMCAP")) != 0 && !_nc_is_abs_path(p)) {
- /* 'unsetenv("TERMCAP")' is not portable.
- * The 'environ' array is better.
- */
- int n;
- for (n = 0; environ[n] != 0; n++) {
-- if (!strncmp("TERMCAP=", environ[n], 8)) {
-+ if (!strncmp("TERMCAP=", environ[n], (size_t) 8)) {
- while ((environ[n] = environ[n + 1]) != 0) {
- n++;
- }
-@@ -788,14 +793,14 @@
- mode.c_cc[VWERASE] = CHK(mode.c_cc[VWERASE], CWERASE);
- #endif
-
-- mode.c_iflag &= ~(IGNBRK | PARMRK | INPCK | ISTRIP | INLCR | IGNCR
-+ mode.c_iflag &= ~((unsigned) (IGNBRK | PARMRK | INPCK | ISTRIP | INLCR | IGNCR
- #ifdef IUCLC
-- | IUCLC
-+ | IUCLC
- #endif
- #ifdef IXANY
-- | IXANY
-+ | IXANY
- #endif
-- | IXOFF);
-+ | IXOFF));
-
- mode.c_iflag |= (BRKINT | IGNPAR | ICRNL | IXON
- #ifdef IMAXBEL
-@@ -803,44 +808,44 @@
- #endif
- );
-
-- mode.c_oflag &= ~(0
-+ mode.c_oflag &= ~((unsigned) (0
- #ifdef OLCUC
-- | OLCUC
-+ | OLCUC
- #endif
- #ifdef OCRNL
-- | OCRNL
-+ | OCRNL
- #endif
- #ifdef ONOCR
-- | ONOCR
-+ | ONOCR
- #endif
- #ifdef ONLRET
-- | ONLRET
-+ | ONLRET
- #endif
- #ifdef OFILL
-- | OFILL
-+ | OFILL
- #endif
- #ifdef OFDEL
-- | OFDEL
-+ | OFDEL
- #endif
- #ifdef NLDLY
-- | NLDLY
-+ | NLDLY
- #endif
- #ifdef CRDLY
-- | CRDLY
-+ | CRDLY
- #endif
- #ifdef TABDLY
-- | TABDLY
-+ | TABDLY
- #endif
- #ifdef BSDLY
-- | BSDLY
-+ | BSDLY
- #endif
- #ifdef VTDLY
-- | VTDLY
-+ | VTDLY
- #endif
- #ifdef FFDLY
-- | FFDLY
-+ | FFDLY
- #endif
-- );
-+ ));
-
- mode.c_oflag |= (OPOST
- #ifdef ONLCR
-@@ -848,19 +853,19 @@
- #endif
- );
-
-- mode.c_cflag &= ~(CSIZE | CSTOPB | PARENB | PARODD | CLOCAL);
-+ mode.c_cflag &= ~((unsigned) (CSIZE | CSTOPB | PARENB | PARODD | CLOCAL));
- mode.c_cflag |= (CS8 | CREAD);
-- mode.c_lflag &= ~(ECHONL | NOFLSH
-+ mode.c_lflag &= ~((unsigned) (ECHONL | NOFLSH
- #ifdef TOSTOP
-- | TOSTOP
-+ | TOSTOP
- #endif
- #ifdef ECHOPTR
-- | ECHOPRT
-+ | ECHOPRT
- #endif
- #ifdef XCASE
-- | XCASE
-+ | XCASE
- #endif
-- );
-+ ));
-
- mode.c_lflag |= (ISIG | ICANON | ECHO | ECHOE | ECHOK
- #ifdef ECHOCTL
-@@ -907,14 +912,23 @@
- set_control_chars(void)
- {
- #ifdef TERMIOS
-- if (DISABLED(mode.c_cc[VERASE]) || terasechar >= 0)
-- mode.c_cc[VERASE] = (terasechar >= 0) ? terasechar : default_erase();
--
-- if (DISABLED(mode.c_cc[VINTR]) || intrchar >= 0)
-- mode.c_cc[VINTR] = (intrchar >= 0) ? intrchar : CINTR;
--
-- if (DISABLED(mode.c_cc[VKILL]) || tkillchar >= 0)
-- mode.c_cc[VKILL] = (tkillchar >= 0) ? tkillchar : CKILL;
-+ if (DISABLED(mode.c_cc[VERASE]) || terasechar >= 0) {
-+ mode.c_cc[VERASE] = UChar((terasechar >= 0)
-+ ? terasechar
-+ : default_erase());
-+ }
-+
-+ if (DISABLED(mode.c_cc[VINTR]) || intrchar >= 0) {
-+ mode.c_cc[VINTR] = UChar((intrchar >= 0)
-+ ? intrchar
-+ : CINTR);
-+ }
-+
-+ if (DISABLED(mode.c_cc[VKILL]) || tkillchar >= 0) {
-+ mode.c_cc[VKILL] = UChar((tkillchar >= 0)
-+ ? tkillchar
-+ : CKILL);
-+ }
- #endif
- }
-
-@@ -970,9 +984,9 @@
- if (newline != (char *) 0 && newline[0] == '\n' && !newline[1]) {
- /* Newline, not linefeed. */
- #ifdef ONLCR
-- mode.c_oflag &= ~ONLCR;
-+ mode.c_oflag &= ~((unsigned) ONLCR);
- #endif
-- mode.c_iflag &= ~ICRNL;
-+ mode.c_iflag &= ~((unsigned) ICRNL);
- }
- #ifdef __OBSOLETE__
- if (tgetflag("HD")) /* Half duplex. */
-@@ -1043,11 +1057,18 @@
- {
- if (set_tab && clear_all_tabs) {
- int c;
-+ int lim =
-+#if HAVE_SIZECHANGE
-+ tcolumns
-+#else
-+ columns
-+#endif
-+ ;
-
- (void) putc('\r', stderr); /* Force to left margin. */
- tputs(clear_all_tabs, 0, outc);
-
-- for (c = 8; c < tcolumns; c += 8) {
-+ for (c = 8; c < lim; c += 8) {
- /* Get to the right column. In BSD tset, this
- * used to try a bunch of half-clever things
- * with cup and hpa, for an average saving of
-@@ -1273,10 +1294,10 @@
- (void) get_termcap_entry(*argv);
-
- if (!noset) {
-+#if HAVE_SIZECHANGE
- tcolumns = columns;
- tlines = lines;
-
--#if HAVE_SIZECHANGE
- if (opt_w) {
- STRUCT_WINSIZE win;
- /* Set window size if not set already */
-Index: test/Makefile.in
-Prereq: 1.108
---- ncurses-5.9/test/Makefile.in 2010-11-28 16:39:40.000000000 +0000
-+++ ncurses-5.9-20141206/test/Makefile.in 2014-11-15 00:46:05.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: Makefile.in,v 1.108 2010/11/28 16:39:40 tom Exp $
-+# $Id: Makefile.in,v 1.114 2014/11/15 00:46:05 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -44,18 +44,25 @@
- o = .@OBJEXT@
-
- MODEL = ../@DFT_OBJ_SUBDIR@
-+top_srcdir = @top_srcdir@
- srcdir = @srcdir@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
-+datarootdir = @datarootdir@
-+
- bindir = @bindir@
- libdir = @libdir@
- includedir = @includedir@
-+includesubdir = @includesubdir@
-
- BINDIR = $(DESTDIR)$(bindir)
- LIBDIR = $(DESTDIR)$(libdir)
--INCLUDEDIR = $(DESTDIR)$(includedir)
-+INCLUDEDIR = $(DESTDIR)$(includedir)$(includesubdir)
-+
-+PACKAGE = @PACKAGE@
-
- LIBTOOL = @LIBTOOL@
-+LIBTOOL_OPTS = @LIBTOOL_OPTS@
- LIBTOOL_CLEAN = @LIB_CLEAN@
- LIBTOOL_COMPILE = @LIB_COMPILE@
- LIBTOOL_LINK = @LIB_LINK@
-@@ -102,7 +109,7 @@
- LDFLAGS_PROFILE = $(LDFLAGS) $(CFLAGS_PROFILE)
- LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
-
--TEST_ARGS = @LDFLAGS_STATIC@ @TEST_ARGS@ @LDFLAGS_SHARED@
-+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)
-@@ -117,8 +124,8 @@
- LDFLAGS_CURSES = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_CURSES)
-
- # use these for linking with the tinfo library if we have it, or curses library if not
--LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_ARGS@ @LDFLAGS_SHARED@ @LIBS@ $(TEST_LIBS) $(MATH_LIB)
--LDFLAGS_TINFO = $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TINFO)
-+LIBS_TINFO = @LDFLAGS_STATIC@ @TINFO_LIBS@ @LDFLAGS_SHARED@ @LIBS@ $(TEST_LIBS) $(MATH_LIB)
-+LDFLAGS_TINFO = @TINFO_LDFLAGS@ $(LDFLAGS_@DFT_UPR_MODEL@) $(LIBS_TINFO)
-
- LINT = @LINT@
- LINT_OPTS = @LINT_OPTS@
-Index: test/README
-Prereq: 1.44
---- ncurses-5.9/test/README 2011-02-26 00:09:25.000000000 +0000
-+++ ncurses-5.9-20141206/test/README 2013-01-19 21:30:38.000000000 +0000
-@@ -1,5 +1,5 @@
- -------------------------------------------------------------------------------
---- Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. --
-+-- Copyright (c) 1998-2012,2013 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 --
-@@ -25,7 +25,7 @@
- -- sale, use or other dealings in this Software without prior written --
- -- authorization. --
- -------------------------------------------------------------------------------
---- $Id: README,v 1.44 2011/02/26 00:09:25 tom Exp $
-+-- $Id: README,v 1.48 2013/01/19 21:30:38 tom Exp $
- -------------------------------------------------------------------------------
-
- The programs in this directory are designed to test your newest toy :-)
-@@ -223,18 +223,18 @@
- SP lib: form
- TABSIZE test: test_opaque
- UP -
--acs_map test: gdc ins_wide inserts knight movewindow ncurses newdemo test_add_wchstr test_addchstr test_addstr test_addwstr testcurs
-+acs_map test: background gdc ins_wide inserts knight movewindow ncurses newdemo test_add_wchstr test_addchstr test_addstr test_addwstr testcurs
- add_wch test: demo_panels ncurses test_add_wchstr test_addwstr
- add_wchnstr test: test_add_wchstr
- add_wchstr test: test_add_wchstr view
--addch test: blue bs echochar hashtest ncurses savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_opaque testaddch view worm
-+addch test: background blue bs echochar hashtest ncurses 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
- addnwstr test: ncurses test_addwstr
- addstr test: blue bs cardfile gdc hanoi lrtest ncurses savescreen test_addstr
- addwstr test: ncurses test_addwstr
--assume_default_colors test: ncurses
-+assume_default_colors test: background ncurses
- assume_default_colors_sp -
- attr_get test: ncurses
- attr_off test: ncurses
-@@ -271,7 +271,7 @@
- color_content_sp -
- color_set test: color_set ncurses
- copywin test: ncurses testcurs
--cur_term test: demo_terminfo dots dots_mvcur lrtest progs: clear tabs tput tset
-+cur_term test: demo_terminfo dots dots_mvcur lrtest test_vid_puts test_vidputs progs: clear tabs tput tset
- curs_set test: echochar firework gdc hanoi lrtest ncurses newdemo rain savescreen tclock testcurs worm xmas
- curs_set_sp lib: ncurses
- curscr test: demo_panels edit_field knight lrtest ncurses savescreen tclock view
-@@ -306,7 +306,7 @@
- erasewchar -
- filter test: filter
- filter_sp -
--flash test: cardfile lrtest ncurses tclock testcurs
-+flash test: cardfile lrtest movewindow ncurses tclock testcurs
- flash_sp -
- flushinp test: ncurses newdemo testcurs
- flushinp_sp lib: ncurses
-@@ -399,7 +399,7 @@
- key_name test: key_names ncurses
- keybound test: demo_altkeys demo_defkey
- keybound_sp lib: ncurses
--keyname test: demo_altkeys demo_defkey demo_keyok demo_menus edit_field foldkeys keynames movewindow ncurses redraw testcurs view progs: tic
-+keyname test: demo_altkeys demo_defkey demo_keyok demo_menus edit_field foldkeys keynames movewindow ncurses redraw test_getstr testcurs view progs: tic
- keyname_sp lib: ncurses
- keyok test: demo_keyok foldkeys
- keyok_sp lib: ncurses
-@@ -430,7 +430,7 @@
- mvaddwstr test: test_addwstr
- mvchgat test: chgat
- mvcur test: dots_mvcur redraw
--mvcur_sp lib: ncurses
-+mvcur_sp -
- mvdelch -
- mvderwin test: movewindow
- mvget_wch -
-@@ -457,7 +457,7 @@
- mvinsstr test: inserts
- mvinstr test: test_instr
- mvinwstr test: test_inwstr
--mvprintw test: bs demo_menus firework hanoi ncurses tclock view
-+mvprintw test: background bs demo_menus firework hanoi ncurses tclock view
- mvscanw -
- mvvline test: ncurses
- mvvline_set test: ncurses
-@@ -542,13 +542,13 @@
- prefresh test: testcurs
- printw test: background blue bs color_set demo_altkeys demo_defkey demo_keyok demo_menus filter foldkeys ncurses savescreen testcurs testscanw view
- putp progs: tput
--putp_sp lib: ncurses
-+putp_sp -
- putwin test: ncurses
- qiflush -
- qiflush_sp -
- raw test: demo_forms ncurses redraw testcurs
- raw_sp lib: ncurses
--redrawwin test: redraw
-+redrawwin test: redraw view
- refresh test: blue bs demo_defkey demo_forms demo_keyok demo_menus demo_panels echochar filter firstlast gdc hanoi hashtest lrtest movewindow ncurses savescreen tclock testcurs view xmas
- reset_prog_mode test: filter ncurses
- reset_prog_mode_sp lib: ncurses
-@@ -586,7 +586,7 @@
- set_term lib: ncurses
- setcchar test: demo_panels ins_wide ncurses test_add_wchstr test_addwstr view
- setscrreg test: view
--setupterm test: demo_termcap demo_terminfo dots progs: clear tabs tput tset
-+setupterm test: demo_termcap demo_terminfo dots test_vid_puts test_vidputs progs: clear tabs tput tset
- slk_attr -
- slk_attr_off -
- slk_attr_on -
-@@ -644,20 +644,20 @@
- tgetstr test: demo_termcap railroad
- tgetstr_sp -
- tgoto test: railroad
--tigetflag test: demo_terminfo progs: tput
-+tigetflag test: demo_terminfo progs: tic tput
- tigetflag_sp -
- tigetnum test: demo_terminfo ncurses progs: tput
- tigetnum_sp -
--tigetstr test: blue demo_defkey demo_terminfo foldkeys testcurs progs: tput
-+tigetstr test: demo_defkey demo_terminfo foldkeys testcurs progs: tput
- tigetstr_sp -
- timeout test: rain savescreen
- tiparm -
- touchline test: chgat clip_printw insdelln
- touchwin test: chgat clip_printw demo_menus edit_field filter firstlast inch_wide inchs ins_wide insdelln inserts movewindow ncurses 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 progs: tabs tic tput
--tputs test: dots dots_mvcur railroad progs: clear tabs tset
-+tputs test: dots dots_mvcur railroad test_vid_puts test_vidputs progs: clear tabs tset
- tputs_sp lib: ncurses
--trace test: demo_menus hanoi hashtest lrtest ncurses testcurs view worm
-+trace test: demo_menus hashtest lrtest ncurses testcurs view worm
- ttytype lib: ncurses
- typeahead test: testcurs
- typeahead_sp lib: ncurses
-@@ -670,22 +670,24 @@
- ungetmouse -
- ungetmouse_sp -
- untouchwin lib: form
--use_default_colors test: filter firework gdc hanoi knight ncurses rain tclock worm xmas
-+use_default_colors test: background filter firework gdc hanoi knight ncurses rain tclock worm xmas
- use_default_colors_sp -
--use_env progs: tput
-+use_env test: ncurses progs: tput
- use_env_sp -
--use_extended_names test: demo_terminfo progs: infocmp tic
-+use_extended_names test: demo_termcap demo_terminfo progs: infocmp tic
- use_legacy_coding -
- use_legacy_coding_sp -
- use_screen test: ditto
-+use_tioctl test: ncurses
-+use_tioctl_sp -
- use_window test: rain worm
--vid_attr -
-+vid_attr test: test_vid_puts
- vid_attr_sp -
--vid_puts -
-+vid_puts test: test_vid_puts
- vid_puts_sp -
--vidattr -
--vidattr_sp lib: ncurses
--vidputs -
-+vidattr test: test_vidputs
-+vidattr_sp -
-+vidputs test: test_vidputs
- vidputs_sp lib: ncurses
- vline test: gdc ncurses
- vline_set -
-Index: test/aclocal.m4
-Prereq: 1.50
---- ncurses-5.9/test/aclocal.m4 2011-03-24 08:28:07.000000000 +0000
-+++ ncurses-5.9-20141206/test/aclocal.m4 2014-12-06 13:39:47.000000000 +0000
-@@ -1,5 +1,5 @@
- dnl***************************************************************************
--dnl Copyright (c) 2003-2010,2011 Free Software Foundation, Inc. *
-+dnl Copyright (c) 2003-2013,2014 Free Software Foundation, Inc. *
- dnl *
- dnl Permission is hereby granted, free of charge, to any person obtaining a *
- dnl copy of this software and associated documentation files (the *
-@@ -26,7 +26,7 @@
- dnl authorization. *
- dnl***************************************************************************
- dnl
--dnl $Id: aclocal.m4,v 1.50 2011/03/24 08:28:07 tom Exp $
-+dnl $Id: aclocal.m4,v 1.102 2014/12/06 13:39:47 tom Exp $
- dnl
- dnl Author: Thomas E. Dickey
- dnl
-@@ -40,7 +40,33 @@
- dnl
- dnl ---------------------------------------------------------------------------
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_CFLAGS version: 10 updated: 2010/05/26 05:38:42
-+dnl CF_ACVERSION_CHECK version: 5 updated: 2014/06/04 19:11:49
-+dnl ------------------
-+dnl Conditionally generate script according to whether we're using a given autoconf.
-+dnl
-+dnl $1 = version to compare against
-+dnl $2 = code to use if AC_ACVERSION is at least as high as $1.
-+dnl $3 = code to use if AC_ACVERSION is older than $1.
-+define([CF_ACVERSION_CHECK],
-+[
-+ifdef([AC_ACVERSION], ,[ifdef([AC_AUTOCONF_VERSION],[m4_copy([AC_AUTOCONF_VERSION],[AC_ACVERSION])],[m4_copy([m4_PACKAGE_VERSION],[AC_ACVERSION])])])dnl
-+ifdef([m4_version_compare],
-+[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])],
-+[CF_ACVERSION_COMPARE(
-+AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])),
-+AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_ACVERSION_COMPARE version: 3 updated: 2012/10/03 18:39:53
-+dnl --------------------
-+dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1,
-+dnl MAJOR2, MINOR2, TERNARY2,
-+dnl PRINTABLE2, not FOUND, FOUND)
-+define([CF_ACVERSION_COMPARE],
-+[ifelse(builtin([eval], [$2 < $5]), 1,
-+[ifelse([$8], , ,[$8])],
-+[ifelse([$9], , ,[$9])])])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_ADD_CFLAGS version: 11 updated: 2014/07/22 05:32:57
- dnl -------------
- dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
- dnl The second parameter if given makes this macro verbose.
-@@ -65,7 +91,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -102,7 +128,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -229,15 +255,33 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_LIBS version: 1 updated: 2010/06/02 05:03:05
-+dnl CF_ADD_LIBS version: 2 updated: 2014/07/13 14:33:27
- dnl -----------
--dnl Add one or more libraries, used to enforce consistency.
-+dnl Add one or more libraries, used to enforce consistency. Libraries are
-+dnl prepended to an existing list, since their dependencies are assumed to
-+dnl already exist in the list.
- dnl
- dnl $1 = libraries to add, with the "-l", etc.
- dnl $2 = variable to update (default $LIBS)
--AC_DEFUN([CF_ADD_LIBS],[ifelse($2,,LIBS,[$2])="$1 [$]ifelse($2,,LIBS,[$2])"])dnl
-+AC_DEFUN([CF_ADD_LIBS],[
-+cf_add_libs="$1"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in [$]ifelse($2,,LIBS,[$2])
-+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_libs $cf_add_1lib"
-+done
-+ifelse($2,,LIBS,[$2])="$cf_add_libs"
-+])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_LIB_AFTER version: 2 updated: 2010/11/08 20:33:46
-+dnl CF_ADD_LIB_AFTER version: 3 updated: 2013/07/09 21:27:22
- dnl ----------------
- dnl Add a given library after another, e.g., following the one it satisfies a
- dnl dependency for.
-@@ -246,11 +290,11 @@
- dnl $2 = its dependency
- AC_DEFUN([CF_ADD_LIB_AFTER],[
- CF_VERBOSE(...before $LIBS)
--LIBS=`echo "$LIBS" | sed -e "s/[[ ]][[ ]]*/ /g" -e "s,$1 ,$1 $2 ," -e 's/ / /g'`
-+LIBS=`echo "$LIBS" | sed -e "s/[[ ]][[ ]]*/ /g" -e "s%$1 %$1 $2 %" -e 's% % %g'`
- CF_VERBOSE(...after $LIBS)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ADD_SUBDIR_PATH version: 3 updated: 2010/07/03 20:58:12
-+dnl CF_ADD_SUBDIR_PATH version: 4 updated: 2013/10/08 17:47:05
- dnl ------------------
- dnl Append to a search-list for a nonstandard header/lib-file
- dnl $1 = the variable to return as result
-@@ -260,9 +304,9 @@
- dnl $5 = a directory that we do not want $4 to match
- AC_DEFUN([CF_ADD_SUBDIR_PATH],
- [
--test "$4" != "$5" && \
-+test "x$4" != "x$5" && \
- test -d "$4" && \
--ifelse([$5],NONE,,[(test $5 = NONE || test "$4" != "$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"
-@@ -272,76 +316,6 @@
- }
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_ANSI_CC_CHECK version: 10 updated: 2010/10/23 15:52:32
--dnl ----------------
--dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES'
--dnl in the sharutils 4.2 distribution.
--AC_DEFUN([CF_ANSI_CC_CHECK],
--[
--AC_CACHE_CHECK(for ${CC:-cc} option to accept ANSI C, cf_cv_ansi_cc,[
--cf_cv_ansi_cc=no
--cf_save_CFLAGS="$CFLAGS"
--cf_save_CPPFLAGS="$CPPFLAGS"
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX -Aa -D_HPUX_SOURCE
--# SVR4 -Xc
--# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes)
--for cf_arg in "-DCC_HAS_PROTOS" \
-- "" \
-- -qlanglvl=ansi \
-- -std1 \
-- -Ae \
-- "-Aa -D_HPUX_SOURCE" \
-- -Xc
--do
-- CF_ADD_CFLAGS($cf_arg)
-- AC_TRY_COMPILE(
--[
--#ifndef CC_HAS_PROTOS
--#if !defined(__STDC__) || (__STDC__ != 1)
--choke me
--#endif
--#endif
--],[
-- int test (int i, double x);
-- struct s1 {int (*f) (int a);};
-- struct s2 {int (*f) (double a);};],
-- [cf_cv_ansi_cc="$cf_arg"; break])
--done
--CFLAGS="$cf_save_CFLAGS"
--CPPFLAGS="$cf_save_CPPFLAGS"
--])
--
--if test "$cf_cv_ansi_cc" != "no"; then
--if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
-- CF_ADD_CFLAGS($cf_cv_ansi_cc)
--else
-- AC_DEFINE(CC_HAS_PROTOS)
--fi
--fi
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_ANSI_CC_REQD version: 4 updated: 2008/03/23 14:48:54
--dnl ---------------
--dnl For programs that must use an ANSI compiler, obtain compiler options that
--dnl will make it recognize prototypes. We'll do preprocessor checks in other
--dnl macros, since tools such as unproto can fake prototypes, but only part of
--dnl the preprocessor.
--AC_DEFUN([CF_ANSI_CC_REQD],
--[AC_REQUIRE([CF_ANSI_CC_CHECK])
--if test "$cf_cv_ansi_cc" = "no"; then
-- AC_MSG_ERROR(
--[Your compiler does not appear to recognize prototypes.
--You have the following choices:
-- a. adjust your compiler options
-- b. get an up-to-date compiler
-- c. use a wrapper such as unproto])
--fi
--])dnl
--dnl ---------------------------------------------------------------------------
- dnl CF_ARG_DISABLE version: 3 updated: 1999/03/30 17:24:31
- dnl --------------
- dnl Allow user to disable a normally-on option.
-@@ -377,7 +351,33 @@
- ])dnl
- ])])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59
-+dnl CF_CC_ENV_FLAGS version: 1 updated: 2012/10/03 05:25:49
-+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 with
-+dnl options, but eliminates a more common category of user confusion.
-+AC_DEFUN([CF_CC_ENV_FLAGS],
-+[
-+# This should have been defined by AC_PROG_CC
-+: ${CC:=cc}
-+
-+AC_MSG_CHECKING(\$CC variable)
-+case "$CC" in #(vi
-+*[[\ \ ]]-[[IUD]]*)
-+ AC_MSG_RESULT(broken)
-+ AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options)
-+ # humor him...
-+ cf_flags=`echo "$CC" | sed -e 's/^[[^ ]]*[[ ]]//'`
-+ CC=`echo "$CC" | sed -e 's/[[ ]].*//'`
-+ CF_ADD_CFLAGS($cf_flags)
-+ ;;
-+*)
-+ AC_MSG_RESULT(ok)
-+ ;;
-+esac
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03
- 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.
-@@ -400,7 +400,7 @@
- system_name="`(hostname) 2>/dev/null`"
- fi
- fi
--test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name")
-+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name",[Define to the system name.])
- AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"])
-
- test -z "$system_name" && system_name="$cf_cv_system_name"
-@@ -412,7 +412,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CHECK_CFLAGS version: 2 updated: 2001/12/30 19:09:58
-+dnl CF_CHECK_CFLAGS version: 3 updated: 2014/07/22 05:32:57
- 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
-@@ -424,17 +424,50 @@
- cf_check_cflags="$CFLAGS"
- cf_check_cppflags="$CPPFLAGS"
- CF_ADD_CFLAGS($1,yes)
--if test "$cf_check_cflags" != "$CFLAGS" ; then
-+if test "x$cf_check_cflags" != "x$CFLAGS" ; then
- AC_TRY_LINK([#include <stdio.h>],[printf("Hello world");],,
- [CF_VERBOSE(test-compile failed. Undoing change to \$CFLAGS)
-- if test "$cf_check_cppflags" != "$CPPFLAGS" ; then
-+ if test "x$cf_check_cppflags" != "x$CPPFLAGS" ; then
- CF_VERBOSE(but keeping change to \$CPPFLAGS)
- fi
- CFLAGS="$cf_check_flags"])
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CURSES_ACS_MAP version: 6 updated: 2010/10/23 15:54:49
-+dnl CF_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35
-+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
-+dnl not ignore some gcc options.
-+dnl
-+dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to
-+dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from
-+dnl the wrappers for gcc and g++ warnings.
-+dnl
-+dnl $1 = GCC (default) or GXX
-+dnl $2 = CLANG_COMPILER (default)
-+dnl $3 = CFLAGS (default) or CXXFLAGS
-+AC_DEFUN([CF_CLANG_COMPILER],[
-+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
-+])
-+dnl ---------------------------------------------------------------------------
-+dnl CF_CURSES_ACS_MAP version: 7 updated: 2012/10/06 16:39:58
- dnl -----------------
- dnl Check for likely values of acs_map[]:
- AC_DEFUN([CF_CURSES_ACS_MAP],
-@@ -452,10 +485,10 @@
- done
- ])
-
--test "$cf_cv_curses_acs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_ACS_ARRAY,$cf_cv_curses_acs_map)
-+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: 4 updated: 2011/01/15 16:39:24
-+dnl CF_CURSES_CHECK_DATA version: 5 updated: 2014/07/19 18:41:17
- dnl --------------------
- dnl Check if curses.h defines the given data/variable.
- dnl Use this after CF_NCURSES_CONFIG or CF_CURSES_CONFIG.
-@@ -480,6 +513,7 @@
- int main(void)
- {
- void *foo = &($1);
-+ fprintf(stderr, "testing linkage of $1:%p\n", foo);
- ${cf_cv_main_return:-return}(foo == 0);
- }],[cf_result=yes],[cf_result=no],[
- # cross-compiling
-@@ -487,6 +521,7 @@
- [extern char $1;],[
- do {
- void *foo = &($1);
-+ fprintf(stderr, "testing linkage of $1:%p\n", foo);
- ${cf_cv_main_return:-return}(foo == 0);
- } while (0)
- ],[cf_result=yes],[cf_result=no])
-@@ -499,7 +534,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CURSES_CHECK_TYPE version: 3 updated: 2010/10/23 15:54:49
-+dnl CF_CURSES_CHECK_TYPE version: 4 updated: 2012/10/06 16:39:58
- dnl --------------------
- dnl Check if curses.h defines the given type
- AC_DEFUN([CF_CURSES_CHECK_TYPE],
-@@ -515,9 +550,9 @@
- AC_MSG_RESULT($cf_result)
- if test $cf_result = yes ; then
- CF_UPPER(cf_result,have_type_$1)
-- AC_DEFINE_UNQUOTED($cf_result)
-+ AC_DEFINE_UNQUOTED($cf_result,1,[Define to 1 if we have type $1])
- else
-- AC_DEFINE_UNQUOTED($1,$2)
-+ AC_DEFINE_UNQUOTED($1,$2,[Define to appropriate type if $1 is not declared])
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
-@@ -533,7 +568,7 @@
- CF_CURSES_LIBS
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CURSES_CPPFLAGS version: 10 updated: 2009/01/06 19:34:11
-+dnl CF_CURSES_CPPFLAGS version: 11 updated: 2011/04/09 14:51:08
- dnl ------------------
- dnl Look for the curses headers.
- AC_DEFUN([CF_CURSES_CPPFLAGS],[
-@@ -542,13 +577,19 @@
- cf_cv_curses_incdir=no
- case $host_os in #(vi
- hpux10.*) #(vi
-- test -d /usr/include/curses_colr && \
-- cf_cv_curses_incdir="-I/usr/include/curses_colr"
-+ if test "x$cf_cv_screen" = "xcurses_colr"
-+ then
-+ test -d /usr/include/curses_colr && \
-+ cf_cv_curses_incdir="-I/usr/include/curses_colr"
-+ fi
- ;;
- sunos3*|sunos4*)
-- test -d /usr/5lib && \
-- test -d /usr/5include && \
-- cf_cv_curses_incdir="-I/usr/5include"
-+ if test "x$cf_cv_screen" = "xcurses_5lib"
-+ then
-+ test -d /usr/5lib && \
-+ test -d /usr/5include && \
-+ cf_cv_curses_incdir="-I/usr/5include"
-+ fi
- ;;
- esac
- ])
-@@ -558,7 +599,7 @@
- CF_TERM_HEADER
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CURSES_FUNCS version: 15 updated: 2010/10/23 15:52:32
-+dnl CF_CURSES_FUNCS version: 18 updated: 2014/07/19 18:44:41
- dnl ---------------
- dnl Curses-functions are a little complicated, since a lot of them are macros.
- AC_DEFUN([CF_CURSES_FUNCS],
-@@ -566,6 +607,7 @@
- AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
- AC_REQUIRE([CF_XOPEN_CURSES])
- AC_REQUIRE([CF_CURSES_TERM_H])
-+AC_REQUIRE([CF_CURSES_UNCTRL_H])
- for cf_func in $1
- do
- CF_UPPER(cf_tr_func,$cf_func)
-@@ -578,7 +620,9 @@
- [
- #ifndef ${cf_func}
- long foo = (long)(&${cf_func});
--${cf_cv_main_return:-return}(foo == 0);
-+fprintf(stderr, "testing linkage of $cf_func:%p\n", foo);
-+if (foo + 1234 > 5678)
-+ ${cf_cv_main_return:-return}(foo);
- #endif
- ],
- [cf_result=yes],
-@@ -595,7 +639,7 @@
- done
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CURSES_HEADER version: 2 updated: 2010/04/28 06:02:16
-+dnl CF_CURSES_HEADER version: 3 updated: 2011/05/01 19:47:45
- dnl ----------------
- dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common
- dnl variations of ncurses' installs.
-@@ -605,10 +649,10 @@
- AC_CACHE_CHECK(if we have identified curses headers,cf_cv_ncurses_header,[
- cf_cv_ncurses_header=none
- for cf_header in ifelse($1,,,[ \
-- $1/curses.h \
-- $1/ncurses.h]) \
-- curses.h \
-- ncurses.h ifelse($1,,[ncurses/curses.h ncurses/ncurses.h])
-+ $1/ncurses.h \
-+ $1/curses.h]) \
-+ ncurses.h \
-+ curses.h ifelse($1,,[ncurses/ncurses.h ncurses/curses.h])
- do
- AC_TRY_COMPILE([#include <${cf_header}>],
- [initscr(); tgoto("?", 0,0)],
-@@ -624,7 +668,7 @@
- AC_CHECK_HEADERS($cf_cv_ncurses_header)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CURSES_LIBS version: 33 updated: 2011/03/06 12:37:18
-+dnl CF_CURSES_LIBS version: 37 updated: 2013/02/09 17:33:50
- 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.
-@@ -644,17 +688,24 @@
- AC_CHECK_LIB(mytinfo,tgoto,[CF_ADD_LIBS(-lmytinfo)])
- ;;
- hpux10.*) #(vi
-- AC_CHECK_LIB(cur_colr,initscr,[
-- CF_ADD_LIBS(-lcur_colr)
-- ac_cv_func_initscr=yes
-- ],[
-- AC_CHECK_LIB(Hcurses,initscr,[
-- # HP's header uses __HP_CURSES, but user claims _HP_CURSES.
-- CF_ADD_LIBS(-lHcurses)
-- CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES"
-- ac_cv_func_initscr=yes
-- ])])
-- ;;
-+ # Looking at HPUX 10.20, the Hcurses library is the oldest (1997), cur_colr
-+ # next (1998), and xcurses "newer" (2000). There is no header file for
-+ # Hcurses; the subdirectory curses_colr has the headers (curses.h and
-+ # term.h) for cur_colr
-+ if test "x$cf_cv_screen" = "xcurses_colr"
-+ then
-+ AC_CHECK_LIB(cur_colr,initscr,[
-+ CF_ADD_LIBS(-lcur_colr)
-+ ac_cv_func_initscr=yes
-+ ],[
-+ AC_CHECK_LIB(Hcurses,initscr,[
-+ # HP's header uses __HP_CURSES, but user claims _HP_CURSES.
-+ CF_ADD_LIBS(-lHcurses)
-+ CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES"
-+ ac_cv_func_initscr=yes
-+ ])])
-+ fi
-+ ;;
- linux*)
- case `arch 2>/dev/null` in
- x86_64)
-@@ -669,76 +720,83 @@
- CF_ADD_LIBDIR(/lib)
- ;;
- esac
-- ;;
-+ ;;
- sunos3*|sunos4*)
-- if test -d /usr/5lib ; then
-- CF_ADD_LIBDIR(/usr/5lib)
-- CF_ADD_LIBS(-lcurses -ltermcap)
-+ if test "x$cf_cv_screen" = "xcurses_5lib"
-+ then
-+ if test -d /usr/5lib ; then
-+ CF_ADD_LIBDIR(/usr/5lib)
-+ CF_ADD_LIBS(-lcurses -ltermcap)
-+ fi
- fi
- ac_cv_func_initscr=yes
- ;;
- esac
-
- if test ".$ac_cv_func_initscr" != .yes ; then
-- cf_save_LIBS="$LIBS"
-- cf_term_lib=""
-- cf_curs_lib=""
-+ cf_save_LIBS="$LIBS"
-
-- if test ".${cf_cv_ncurses_version:-no}" != .no
-- then
-- cf_check_list="ncurses curses cursesX"
-- else
-- cf_check_list="cursesX curses ncurses"
-- fi
-+ if test ".${cf_cv_ncurses_version:-no}" != .no
-+ then
-+ cf_check_list="ncurses curses cursesX"
-+ else
-+ cf_check_list="cursesX curses ncurses"
-+ fi
-
-- # Check for library containing tgoto. Do this before curses library
-- # because it may be needed to link the test-case for initscr.
-- AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[
-- for cf_term_lib in $cf_check_list termcap termlib unknown
-- do
-- AC_CHECK_LIB($cf_term_lib,tgoto,[break])
-- done
-- ])
-+ # Check for library containing tgoto. Do this before curses library
-+ # because it may be needed to link the test-case for initscr.
-+ if test "x$cf_term_lib" = x
-+ then
-+ AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[
-+ for cf_term_lib in $cf_check_list otermcap termcap tinfo termlib unknown
-+ do
-+ AC_CHECK_LIB($cf_term_lib,tgoto,[break])
-+ done
-+ ])
-+ fi
-
-- # Check for library containing initscr
-- test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
-- for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown
-- do
-- AC_CHECK_LIB($cf_curs_lib,initscr,[break])
-- done
-- test $cf_curs_lib = unknown && AC_MSG_ERROR(no curses library found)
-+ # Check for library containing initscr
-+ test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
-+ if test "x$cf_curs_lib" = x
-+ then
-+ for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown
-+ do
-+ AC_CHECK_LIB($cf_curs_lib,initscr,[break])
-+ done
-+ fi
-+ test $cf_curs_lib = unknown && AC_MSG_ERROR(no curses library found)
-
-- LIBS="-l$cf_curs_lib $cf_save_LIBS"
-- if test "$cf_term_lib" = unknown ; then
-- AC_MSG_CHECKING(if we can link with $cf_curs_lib library)
-- AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
-- [initscr()],
-- [cf_result=yes],
-- [cf_result=no])
-- AC_MSG_RESULT($cf_result)
-- test $cf_result = no && AC_MSG_ERROR(Cannot link curses library)
-- elif test "$cf_curs_lib" = "$cf_term_lib" ; then
-- :
-- elif test "$cf_term_lib" != predefined ; then
-- AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries)
-- AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
-- [initscr(); tgoto((char *)0, 0, 0);],
-- [cf_result=no],
-- [
-- LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
-- AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
-- [initscr()],
-- [cf_result=yes],
-- [cf_result=error])
-- ])
-- AC_MSG_RESULT($cf_result)
-- fi
-+ LIBS="-l$cf_curs_lib $cf_save_LIBS"
-+ if test "$cf_term_lib" = unknown ; then
-+ AC_MSG_CHECKING(if we can link with $cf_curs_lib library)
-+ AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
-+ [initscr()],
-+ [cf_result=yes],
-+ [cf_result=no])
-+ AC_MSG_RESULT($cf_result)
-+ test $cf_result = no && AC_MSG_ERROR(Cannot link curses library)
-+ elif test "$cf_curs_lib" = "$cf_term_lib" ; then
-+ :
-+ elif test "$cf_term_lib" != predefined ; then
-+ AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries)
-+ AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
-+ [initscr(); tgoto((char *)0, 0, 0);],
-+ [cf_result=no],
-+ [
-+ LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
-+ AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
-+ [initscr()],
-+ [cf_result=yes],
-+ [cf_result=error])
-+ ])
-+ AC_MSG_RESULT($cf_result)
-+ fi
- fi
- fi
-
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CURSES_TERM_H version: 8 updated: 2010/10/23 15:54:49
-+dnl CF_CURSES_TERM_H version: 10 updated: 2012/10/06 08:57:51
- 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,
-@@ -752,9 +810,17 @@
-
- # If we found <ncurses/curses.h>, look for <ncurses/term.h>, but always look
- # for <term.h> if we do not find the variant.
--for cf_header in \
-- `echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%/.*%/%'`term.h \
-- term.h
-+
-+cf_header_list="term.h ncurses/term.h ncursesw/term.h"
-+
-+case ${cf_cv_ncurses_header:-curses.h} in #(vi
-+*/*)
-+ 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
- AC_TRY_COMPILE([
- #include <${cf_cv_ncurses_header:-curses.h}>
-@@ -789,18 +855,73 @@
-
- case $cf_cv_term_header in #(vi
- term.h) #(vi
-- AC_DEFINE(HAVE_TERM_H)
-+ AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h])
- ;;
- ncurses/term.h) #(vi
-- AC_DEFINE(HAVE_NCURSES_TERM_H)
-+ AC_DEFINE(HAVE_NCURSES_TERM_H,1,[Define to 1 if we have ncurses/term.h])
- ;;
- ncursesw/term.h)
-- AC_DEFINE(HAVE_NCURSESW_TERM_H)
-+ AC_DEFINE(HAVE_NCURSESW_TERM_H,1,[Define to 1 if we have ncursesw/term.h])
- ;;
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_CURSES_WACS_MAP version: 5 updated: 2011/01/15 11:28:59
-+dnl CF_CURSES_UNCTRL_H version: 3 updated: 2013/11/03 06:26:10
-+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
-+dnl course). Packages which put the headers in inconsistent locations are
-+dnl broken).
-+AC_DEFUN([CF_CURSES_UNCTRL_H],
-+[
-+AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl
-+
-+AC_CACHE_CHECK(for unctrl.h, cf_cv_unctrl_header,[
-+
-+# If we found <ncurses/curses.h>, look for <ncurses/unctrl.h>, but always look
-+# for <unctrl.h> if we do not find the variant.
-+
-+cf_header_list="unctrl.h ncurses/unctrl.h ncursesw/unctrl.h"
-+
-+case ${cf_cv_ncurses_header:-curses.h} in #(vi
-+*/*)
-+ 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
-+ AC_TRY_COMPILE([
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <${cf_header}>],
-+ [WINDOW *x],
-+ [cf_cv_unctrl_header=$cf_header
-+ break],
-+ [cf_cv_unctrl_header=no])
-+done
-+])
-+
-+case $cf_cv_unctrl_header in #(vi
-+no)
-+ AC_MSG_WARN(unctrl.h header not found)
-+ ;;
-+esac
-+
-+case $cf_cv_unctrl_header in #(vi
-+unctrl.h) #(vi
-+ AC_DEFINE(HAVE_UNCTRL_H,1,[Define to 1 if we have unctrl.h])
-+ ;;
-+ncurses/unctrl.h) #(vi
-+ AC_DEFINE(HAVE_NCURSES_UNCTRL_H,1,[Define to 1 if we have ncurses/unctrl.h])
-+ ;;
-+ncursesw/unctrl.h)
-+ AC_DEFINE(HAVE_NCURSESW_UNCTRL_H,1,[Define to 1 if we have ncursesw/unctrl.h])
-+ ;;
-+esac
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_CURSES_WACS_MAP version: 6 updated: 2012/10/06 08:57:51
- dnl ------------------
- dnl Check for likely values of wacs_map[].
- AC_DEFUN([CF_CURSES_WACS_MAP],
-@@ -819,10 +940,10 @@
- break])
- done])
-
--test "$cf_cv_curses_wacs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_WACS_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: 1 updated: 2011/01/15 11:28:59
-+dnl CF_CURSES_WACS_SYMBOLS version: 2 updated: 2012/10/06 08:57:51
- 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
-@@ -854,7 +975,7 @@
- fi
- ])
-
--test "$cf_cv_curses_wacs_symbols" != no && AC_DEFINE(CURSES_WACS_SYMBOLS)
-+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
-@@ -862,7 +983,7 @@
- dnl "dirname" is not portable, so we fake it with a shell script.
- AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_DISABLE_ECHO version: 11 updated: 2009/12/13 13:16:57
-+dnl CF_DISABLE_ECHO version: 12 updated: 2012/10/06 16:30:28
- dnl ---------------
- dnl You can always use "make -n" to see the actual options, but it's hard to
- dnl pick out/analyze warning messages when the compile-line is long.
-@@ -877,7 +998,7 @@
- AC_DEFUN([CF_DISABLE_ECHO],[
- AC_MSG_CHECKING(if you want to see long compiling messages)
- CF_ARG_DISABLE(echo,
-- [ --disable-echo display "compiling" commands],
-+ [ --disable-echo do not display "compiling" commands],
- [
- ECHO_LT='--silent'
- ECHO_LD='@echo linking [$]@;'
-@@ -899,7 +1020,7 @@
- AC_SUBST(ECHO_CC)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_DISABLE_LEAKS version: 6 updated: 2010/07/23 04:14:32
-+dnl CF_DISABLE_LEAKS version: 7 updated: 2012/10/02 20:55:03
- dnl ----------------
- dnl Combine no-leak checks with the libraries or tools that are used for the
- dnl checks.
-@@ -917,11 +1038,30 @@
- AC_MSG_RESULT($with_no_leaks)
-
- if test "$with_no_leaks" = yes ; then
-- AC_DEFINE(NO_LEAKS)
-- AC_DEFINE(YY_NO_LEAKS)
-+ 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 ---------------------
-+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
-+dnl can interfere with building an executable for the base system. Use this
-+dnl option in that case.
-+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])
-+AC_MSG_RESULT($cf_disable_rpath_hack)
-+if test "$cf_disable_rpath_hack" = no ; then
-+ CF_RPATH_HACK
-+fi
-+])
-+dnl ---------------------------------------------------------------------------
- dnl CF_ENABLE_WARNINGS version: 4 updated: 2009/07/26 17:53:03
- dnl ------------------
- dnl Configure-option to enable gcc warnings
-@@ -1122,7 +1262,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_FUNC_CURSES_VERSION version: 5 updated: 2010/10/23 15:54:49
-+dnl CF_FUNC_CURSES_VERSION version: 6 updated: 2012/10/06 16:39:58
- dnl ----------------------
- dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS.
- dnl It's a character string "SVR4", not documented.
-@@ -1141,10 +1281,10 @@
- ,[cf_cv_func_curses_version=no]
- ,[cf_cv_func_curses_version=unknown])
- rm -f core])
--test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION)
-+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_GCC_ATTRIBUTES version: 14 updated: 2010/10/23 15:52:32
-+dnl CF_GCC_ATTRIBUTES version: 16 updated: 2012/10/02 20:55:03
- dnl -----------------
- dnl Test for availability of useful gcc __attribute__ directives to quiet
- dnl compiler warnings. Though useful, not all are supported -- and contrary
-@@ -1222,27 +1362,27 @@
- test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
- cat conftest.h >>confdefs.h
- case $cf_attribute in #(vi
-+ noreturn) #(vi
-+ AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc])
-+ ;;
- printf) #(vi
-- if test "$cf_printf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
--EOF
-+ cf_value='/* nothing */'
-+ if test "$cf_printf_attribute" != no ; then
-+ cf_value='__attribute__((format(printf,fmt,var)))'
-+ AC_DEFINE(GCC_PRINTF,1,[Define to 1 if the compiler supports gcc-like printf attribute.])
- fi
-+ AC_DEFINE_UNQUOTED(GCC_PRINTFLIKE(fmt,var),$cf_value,[Define to printf-attribute for gcc])
- ;;
- scanf) #(vi
-- if test "$cf_scanf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
--EOF
-+ cf_value='/* nothing */'
-+ if test "$cf_scanf_attribute" != no ; then
-+ cf_value='__attribute__((format(scanf,fmt,var)))'
-+ AC_DEFINE(GCC_SCANF,1,[Define to 1 if the compiler supports gcc-like scanf attribute.])
- fi
-+ AC_DEFINE_UNQUOTED(GCC_SCANFLIKE(fmt,var),$cf_value,[Define to sscanf-attribute for gcc])
-+ ;;
-+ unused) #(vi
-+ AC_DEFINE_UNQUOTED(GCC_UNUSED,$cf_directive,[Define to unused-attribute for gcc])
- ;;
- esac
- fi
-@@ -1254,7 +1394,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GCC_VERSION version: 5 updated: 2010/04/24 11:02:31
-+dnl CF_GCC_VERSION version: 7 updated: 2012/10/18 06:46:33
- dnl --------------
- dnl Find version of gcc
- AC_DEFUN([CF_GCC_VERSION],[
-@@ -1262,13 +1402,13 @@
- GCC_VERSION=none
- if test "$GCC" = yes ; then
- AC_MSG_CHECKING(version of $CC)
-- GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
-+ 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
- AC_MSG_RESULT($GCC_VERSION)
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_GCC_WARNINGS version: 27 updated: 2010/10/23 15:52:32
-+dnl CF_GCC_WARNINGS version: 31 updated: 2013/11/19 19:23:35
- 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:
-@@ -1291,6 +1431,7 @@
- [
- AC_REQUIRE([CF_GCC_VERSION])
- CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
-+CF_CLANG_COMPILER(GCC,CLANG_COMPILER,CFLAGS)
-
- cat > conftest.$ac_ext <<EOF
- #line __oline__ "${as_me:-configure}"
-@@ -1339,10 +1480,14 @@
- EXTRA_CFLAGS=
- cf_warn_CONST=""
- test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
-+ cf_gcc_warnings="Wignored-qualifiers Wlogical-op Wvarargs"
-+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings=
- for cf_opt in W Wall \
- Wbad-function-cast \
- Wcast-align \
- Wcast-qual \
-+ Wdeclaration-after-statement \
-+ Wextra \
- Winline \
- Wmissing-declarations \
- Wmissing-prototypes \
-@@ -1350,7 +1495,7 @@
- Wpointer-arith \
- Wshadow \
- Wstrict-prototypes \
-- Wundef $cf_warn_CONST $1
-+ Wundef $cf_gcc_warnings $cf_warn_CONST $1
- do
- CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
- if AC_TRY_EVAL(ac_compile); then
-@@ -1366,6 +1511,13 @@
- continue;;
- esac
- ;;
-+ Wpointer-arith) #(vi
-+ case $GCC_VERSION in
-+ [[12]].*)
-+ CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
-+ continue;;
-+ esac
-+ ;;
- esac
- EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
- fi
-@@ -1377,6 +1529,32 @@
- AC_SUBST(EXTRA_CFLAGS)
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_GETOPT_HEADER version: 6 updated: 2014/07/22 14:45:54
-+dnl ----------------
-+dnl Check for getopt's variables which are commonly defined in stdlib.h,
-+dnl unistd.h or (nonstandard) in getopt.h
-+AC_DEFUN([CF_GETOPT_HEADER],
-+[
-+AC_HAVE_HEADERS(unistd.h getopt.h)
-+AC_CACHE_CHECK(for header declaring getopt variables,cf_cv_getopt_header,[
-+cf_cv_getopt_header=none
-+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],
-+[cf_cv_getopt_header=$cf_header
-+ break])
-+done
-+])
-+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
-+ AC_DEFINE(NEED_GETOPT_H,1,[Define to 1 if we must include getopt.h])
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_GNU_SOURCE version: 6 updated: 2005/07/09 13:23:07
- dnl -------------
- dnl Check if we must define _GNU_SOURCE to get a reasonable value for
-@@ -1453,6 +1631,13 @@
- $1="[$]$1 $cf_header_path_list"
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_HELP_MESSAGE version: 3 updated: 1998/01/14 10:56:23
-+dnl ---------------
-+dnl Insert text into the help-message, for readability, from AC_ARG_WITH.
-+AC_DEFUN([CF_HELP_MESSAGE],
-+[AC_DIVERT_HELP([$1])dnl
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_INHERIT_SCRIPT version: 2 updated: 2003/03/01 23:50:42
- dnl -----------------
- dnl If we do not have a given script, look for it in the parent directory.
-@@ -1461,7 +1646,7 @@
- test -f $1 || ( test -f ../$1 && cp ../$1 ./ )
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_INTEL_COMPILER version: 4 updated: 2010/05/26 05:38:42
-+dnl CF_INTEL_COMPILER version: 6 updated: 2014/03/17 13:13:07
- 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
-@@ -1475,6 +1660,7 @@
- dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS
- dnl $3 = CFLAGS (default) or CXXFLAGS
- AC_DEFUN([CF_INTEL_COMPILER],[
-+AC_REQUIRE([AC_CANONICAL_HOST])
- ifelse([$2],,INTEL_COMPILER,[$2])=no
-
- if test "$ifelse([$1],,[$1],GCC)" = yes ; then
-@@ -1489,7 +1675,7 @@
- make an error
- #endif
- ],[ifelse([$2],,INTEL_COMPILER,[$2])=yes
--cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
-+cf_save_CFLAGS="$cf_save_CFLAGS -we147"
- ],[])
- ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS"
- AC_MSG_RESULT($ifelse([$2],,INTEL_COMPILER,[$2]))
-@@ -1498,6 +1684,60 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_LD_RPATH_OPT version: 5 updated: 2011/07/17 14:48:41
-+dnl ---------------
-+dnl For the given system and compiler, find the compiler flags to pass to the
-+dnl loader to use the "rpath" feature.
-+AC_DEFUN([CF_LD_RPATH_OPT],
-+[
-+AC_REQUIRE([CF_CHECK_CACHE])
-+
-+LD_RPATH_OPT=
-+AC_MSG_CHECKING(for an rpath option)
-+case $cf_cv_system_name in #(vi
-+irix*) #(vi
-+ if test "$GCC" = yes; then
-+ LD_RPATH_OPT="-Wl,-rpath,"
-+ else
-+ LD_RPATH_OPT="-rpath "
-+ fi
-+ ;;
-+linux*|gnu*|k*bsd*-gnu) #(vi
-+ LD_RPATH_OPT="-Wl,-rpath,"
-+ ;;
-+openbsd[[2-9]].*|mirbsd*) #(vi
-+ LD_RPATH_OPT="-Wl,-rpath,"
-+ ;;
-+dragonfly*|freebsd*) #(vi
-+ LD_RPATH_OPT="-rpath "
-+ ;;
-+netbsd*) #(vi
-+ LD_RPATH_OPT="-Wl,-rpath,"
-+ ;;
-+osf*|mls+*) #(vi
-+ LD_RPATH_OPT="-rpath "
-+ ;;
-+solaris2*) #(vi
-+ LD_RPATH_OPT="-R"
-+ ;;
-+*)
-+ ;;
-+esac
-+AC_MSG_RESULT($LD_RPATH_OPT)
-+
-+case "x$LD_RPATH_OPT" in #(vi
-+x-R*)
-+ AC_MSG_CHECKING(if we need a space after rpath option)
-+ cf_save_LIBS="$LIBS"
-+ CF_ADD_LIBS(${LD_RPATH_OPT}$libdir)
-+ AC_TRY_LINK(, , cf_rpath_space=no, cf_rpath_space=yes)
-+ LIBS="$cf_save_LIBS"
-+ AC_MSG_RESULT($cf_rpath_space)
-+ test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT "
-+ ;;
-+esac
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_LIBRARY_PATH version: 9 updated: 2010/03/28 12:52:50
- dnl ---------------
- dnl Construct a search-list of directories for a nonstandard library-file
-@@ -1588,38 +1828,7 @@
- fi
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_MIN_GETCCHAR version: 3 updated: 2010/10/23 15:54:49
--dnl ---------------
--dnl CF_MIN_GETCCHAR
--dnl Check whether getcchar's return value counts the trailing null in a wchar_t
--dnl string, or not. X/Open says it does, but Tru64 and Solaris do not do this.
--AC_DEFUN([CF_MIN_GETCCHAR],[
--AC_CACHE_CHECK(if getcchar counts trailing null,cf_cv_min_getcchar,[
--AC_TRY_RUN([
--#include <stdlib.h>
--#include <stdarg.h>
--#include <${cf_cv_ncurses_header:-curses.h}>
--
--int main()
--{
-- wchar_t data[2];
-- cchar_t temp[2];
-- int count;
-- data[0] = L'\0';
-- setcchar(temp, data, 0, 0, (void *)0);
-- count = getcchar(temp, (wchar_t *)0, (attr_t *)0, (short *)0, (void *)0);
-- ${cf_cv_main_return:-return}(count != 0);
--}],
-- [cf_cv_min_getcchar=no],
-- [cf_cv_min_getcchar=yes],
-- [cf_cv_min_getcchar=yes])
--])
--if test "$cf_cv_min_getcchar" = yes ; then
-- AC_DEFINE(MIN_GETCCHAR,1)
--fi
--])dnl
--dnl ---------------------------------------------------------------------------
--dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55
-+dnl CF_MIXEDCASE_FILENAMES version: 6 updated: 2013/10/08 17:47:05
- 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.
-@@ -1628,7 +1837,7 @@
- AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
- if test "$cross_compiling" = yes ; then
- case $target_alias in #(vi
-- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
-+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi
- cf_cv_mixedcase=no
- ;;
- *)
-@@ -1646,7 +1855,7 @@
- rm -f conftest CONFTEST
- fi
- ])
--test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES)
-+test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES,1,[Define to 1 if filesystem supports mixed-case filenames.])
- ])dnl
- dnl ---------------------------------------------------------------------------
- dnl CF_MSG_LOG version: 5 updated: 2010/10/23 15:52:32
-@@ -1690,7 +1899,7 @@
- ,[$1=no])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NCURSES_CONFIG version: 8 updated: 2010/07/08 05:17:30
-+dnl CF_NCURSES_CONFIG version: 10 updated: 2012/10/06 08:57:51
- dnl -----------------
- dnl Tie together the configure-script macros for ncurses.
- dnl Prefer the "-config" script from ncurses 6.x, to simplify analysis.
-@@ -1702,7 +1911,10 @@
- cf_ncuconfig_root=ifelse($1,,ncurses,$1)
-
- echo "Looking for ${cf_ncuconfig_root}-config"
--AC_PATH_PROGS(NCURSES_CONFIG,${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config,none)
-+
-+CF_ACVERSION_CHECK(2.52,
-+ [AC_CHECK_TOOLS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)],
-+ [AC_PATH_PROGS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)])
-
- if test "$NCURSES_CONFIG" != none ; then
-
-@@ -1713,7 +1925,7 @@
- CF_CURSES_HEADER(ifelse($1,,ncurses,$1))
-
- dnl like CF_NCURSES_CPPFLAGS
--AC_DEFINE(NCURSES)
-+AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries])
-
- dnl like CF_NCURSES_LIBS
- CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_ncuconfig_root)
-@@ -1730,7 +1942,7 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NCURSES_CPPFLAGS version: 20 updated: 2010/11/20 17:02:38
-+dnl CF_NCURSES_CPPFLAGS version: 21 updated: 2012/10/06 08:57:51
- dnl -------------------
- dnl Look for the SVr4 curses clone 'ncurses' in the standard places, adjusting
- dnl the CPPFLAGS variable so we can include its header.
-@@ -1776,12 +1988,12 @@
- CF_TERM_HEADER
-
- # some applications need this, but should check for NCURSES_VERSION
--AC_DEFINE(NCURSES)
-+AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries])
-
- CF_NCURSES_VERSION
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NCURSES_EXT_FUNCS version: 3 updated: 2010/11/13 19:43:23
-+dnl CF_NCURSES_EXT_FUNCS version: 4 updated: 2012/10/06 16:39:58
- dnl --------------------
- dnl Since 2007/11/17, ncurses has defined NCURSES_EXT_FUNCS; earlier versions
- dnl may provide these functions. Define the symbol if it is not defined, and
-@@ -1813,10 +2025,10 @@
- [cf_cv_ncurses_ext_funcs=no])
- ])
- ])
--test "$cf_cv_ncurses_ext_funcs" = yes && AC_DEFINE(NCURSES_EXT_FUNCS)
-+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: 2 updated: 2008/03/23 14:48:54
-+dnl CF_NCURSES_HEADER version: 3 updated: 2012/10/06 08:57:51
- dnl -----------------
- dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common
- dnl variations of ncurses' installs.
-@@ -1867,16 +2079,16 @@
-
- case $cf_cv_ncurses_header in # (vi
- *ncurses.h)
-- AC_DEFINE(HAVE_NCURSES_H)
-+ AC_DEFINE(HAVE_NCURSES_H,1,[Define to 1 if we have ncurses.h])
- ;;
- esac
-
- case $cf_cv_ncurses_header in # (vi
- ncurses/curses.h|ncurses/ncurses.h)
-- AC_DEFINE(HAVE_NCURSES_NCURSES_H)
-+ AC_DEFINE(HAVE_NCURSES_NCURSES_H,1,[Define to 1 if we have ncurses/ncurses.h])
- ;;
- ncursesw/curses.h|ncursesw/ncurses.h)
-- AC_DEFINE(HAVE_NCURSESW_NCURSES_H)
-+ AC_DEFINE(HAVE_NCURSESW_NCURSES_H,1,[Define to 1 if we have ncursesw/ncurses.h])
- ;;
- esac
-
-@@ -1950,7 +2162,7 @@
- AC_DEFINE_UNQUOTED($cf_nculib_ROOT)
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NCURSES_VERSION version: 13 updated: 2010/10/23 15:54:49
-+dnl CF_NCURSES_VERSION version: 14 updated: 2012/10/06 08:57:51
- 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
-@@ -2009,7 +2221,7 @@
- ])
- rm -f $cf_tempfile
- ])
--test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES)
-+test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries])
- ])dnl
- dnl ---------------------------------------------------------------------------
- dnl CF_NCURSES_WRAP_PREFIX version: 1 updated: 2009/03/28 16:08:10
-@@ -2028,7 +2240,7 @@
- AC_SUBST(NCURSES_WRAP_PREFIX)
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_NETBSD_FORM_H version: 1 updated: 2011/01/15 14:59:18
-+dnl CF_NETBSD_FORM_H version: 2 updated: 2012/10/06 16:39:58
- dnl ----------------
- dnl Check for NetBSD's form.h, which is incompatible with SVr4 and ncurses.
- dnl Some workarounds are needed in client programs to allow them to compile.
-@@ -2045,10 +2257,10 @@
- ],[cf_cv_netbsd_form_h=no])
- ])
-
--test "$cf_cv_netbsd_form_h" = yes && AC_DEFINE(HAVE_NETBSD_FORM_H)
-+test "$cf_cv_netbsd_form_h" = yes && AC_DEFINE(HAVE_NETBSD_FORM_H,1,[Define to 1 if we appear to be using NetBSD form.h])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_NETBSD_MENU_H version: 1 updated: 2011/01/15 14:59:18
-+dnl CF_NETBSD_MENU_H version: 2 updated: 2012/10/06 16:39:58
- dnl ----------------
- dnl Check for NetBSD's menu.h, which is incompatible with SVr4 and ncurses.
- dnl Some workarounds are needed in client programs to allow them to compile.
-@@ -2064,17 +2276,17 @@
- ],[cf_cv_netbsd_menu_h=no])
- ])
-
--test "$cf_cv_netbsd_menu_h" = yes && AC_DEFINE(HAVE_NETBSD_MENU_H)
-+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: 4 updated: 2006/12/16 14:24:05
-+dnl CF_NO_LEAKS_OPTION version: 5 updated: 2012/10/02 20:55:03
- dnl ------------------
- dnl see CF_WITH_NO_LEAKS
- AC_DEFUN([CF_NO_LEAKS_OPTION],[
- AC_MSG_CHECKING(if you want to use $1 for testing)
- AC_ARG_WITH($1,
- [$2],
-- [AC_DEFINE($3)ifelse([$4],,[
-+ [AC_DEFINE_UNQUOTED($3,1,"Define to 1 if you want to use $1 for testing.")ifelse([$4],,[
- $4
- ])
- : ${with_cflags:=-g}
-@@ -2096,7 +2308,7 @@
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PATH_SYNTAX version: 13 updated: 2010/05/26 05:38:42
-+dnl CF_PATH_SYNTAX version: 14 updated: 2012/06/19 20:58:54
- 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
-@@ -2116,7 +2328,7 @@
- ;;
- .[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX
- ;;
--.\[$]{*prefix}*) #(vi
-+.\[$]{*prefix}*|.\[$]{*dir}*) #(vi
- eval $1="[$]$1"
- case ".[$]$1" in #(vi
- .NONE/*)
-@@ -2133,13 +2345,15 @@
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PDCURSES_X11 version: 11 updated: 2011/01/15 18:45:38
-+dnl CF_PDCURSES_X11 version: 13 updated: 2012/10/06 16:39:58
- dnl ---------------
- dnl Configure for PDCurses' X11 library
- AC_DEFUN([CF_PDCURSES_X11],[
- AC_REQUIRE([CF_X_ATHENA])
-
--AC_PATH_PROGS(XCURSES_CONFIG,xcurses-config,none)
-+CF_ACVERSION_CHECK(2.52,
-+ [AC_CHECK_TOOLS(XCURSES_CONFIG, xcurses-config, none)],
-+ [AC_PATH_PROGS(XCURSES_CONFIG, xcurses-config, none)])
-
- if test "$XCURSES_CONFIG" != none ; then
-
-@@ -2168,15 +2382,15 @@
- fi
-
- if test $cf_cv_lib_XCurses = yes ; then
-- AC_DEFINE(UNIX)
-- AC_DEFINE(XCURSES)
-- AC_CHECK_HEADER(xcurses.h, AC_DEFINE(HAVE_XCURSES))
-+ 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]))
- else
- AC_MSG_ERROR(Cannot link with XCurses)
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PKG_CONFIG version: 4 updated: 2011/02/18 20:26:24
-+dnl CF_PKG_CONFIG version: 7 updated: 2011/04/29 04:53:22
- dnl -------------
- dnl Check for the package-config program, unless disabled by command-line.
- AC_DEFUN([CF_PKG_CONFIG],
-@@ -2193,7 +2407,9 @@
- PKG_CONFIG=none
- ;;
- yes) #(vi
-- AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)
-+ CF_ACVERSION_CHECK(2.52,
-+ [AC_PATH_TOOL(PKG_CONFIG, pkg-config, none)],
-+ [AC_PATH_PROG(PKG_CONFIG, pkg-config, none)])
- ;;
- *)
- PKG_CONFIG=$withval
-@@ -2305,29 +2521,17 @@
-
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_PROG_CC_U_D version: 1 updated: 2005/07/14 16:59:30
--dnl --------------
--dnl Check if C (preprocessor) -U and -D options are processed in the order
--dnl given rather than by type of option. Some compilers insist on apply all
--dnl of the -U options after all of the -D options. Others allow mixing them,
--dnl and may predefine symbols that conflict with those we define.
--AC_DEFUN([CF_PROG_CC_U_D],
--[
--AC_CACHE_CHECK(if $CC -U and -D options work together,cf_cv_cc_u_d_options,[
-- cf_save_CPPFLAGS="$CPPFLAGS"
-- CPPFLAGS="-UU_D_OPTIONS -DU_D_OPTIONS -DD_U_OPTIONS -UD_U_OPTIONS"
-- AC_TRY_COMPILE([],[
--#ifndef U_D_OPTIONS
--make an undefined-error
--#endif
--#ifdef D_U_OPTIONS
--make a defined-error
--#endif
-- ],[
-- cf_cv_cc_u_d_options=yes],[
-- cf_cv_cc_u_d_options=no])
-- CPPFLAGS="$cf_save_CPPFLAGS"
--])
-+dnl CF_PROG_CC version: 4 updated: 2014/07/12 18:57:58
-+dnl ----------
-+dnl standard check for CC, plus followup sanity checks
-+dnl $1 = optional parameter to pass to AC_PROG_CC to specify compiler name
-+AC_DEFUN([CF_PROG_CC],[
-+ifelse($1,,[AC_PROG_CC],[AC_PROG_CC($1)])
-+CF_GCC_VERSION
-+CF_ACVERSION_CHECK(2.52,
-+ [AC_PROG_CC_STDC],
-+ [CF_ANSI_CC_REQD])
-+CF_CC_ENV_FLAGS
- ])dnl
- dnl ---------------------------------------------------------------------------
- dnl CF_PROG_INSTALL version: 5 updated: 2002/12/21 22:46:07
-@@ -2373,7 +2577,124 @@
- -e 's/-[[UD]]'"$3"'\(=[[^ ]]*\)\?[$]//g'`
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_SIG_ATOMIC_T version: 2 updated: 2005/09/18 17:27:12
-+dnl CF_RPATH_HACK version: 11 updated: 2013/09/01 13:02:00
-+dnl -------------
-+AC_DEFUN([CF_RPATH_HACK],
-+[
-+AC_REQUIRE([CF_LD_RPATH_OPT])
-+AC_MSG_CHECKING(for updated LDFLAGS)
-+if test -n "$LD_RPATH_OPT" ; then
-+ AC_MSG_RESULT(maybe)
-+
-+ AC_CHECK_PROGS(cf_ldd_prog,ldd,no)
-+ cf_rpath_list="/usr/lib /lib"
-+ if test "$cf_ldd_prog" != no
-+ then
-+ cf_rpath_oops=
-+
-+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`])
-+
-+ # 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
-+ # partly honor /usr/local/lib (or whatever). Sometimes this behavior
-+ # is intentional, e.g., installing gcc in /usr/bin and suppressing the
-+ # /usr/local libraries.
-+ if test -n "$cf_rpath_oops"
-+ then
-+ for cf_rpath_src in $cf_rpath_oops
-+ do
-+ for cf_rpath_dir in \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt/sfw
-+ do
-+ 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"
-+ break
-+ fi
-+ done
-+ done
-+ fi
-+ fi
-+
-+ CF_VERBOSE(...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS)
-+
-+ CF_RPATH_HACK_2(LDFLAGS)
-+ CF_RPATH_HACK_2(LIBS)
-+
-+ CF_VERBOSE(...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS)
-+else
-+ AC_MSG_RESULT(no)
-+fi
-+AC_SUBST(EXTRA_LDFLAGS)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_RPATH_HACK_2 version: 6 updated: 2010/04/17 16:31:24
-+dnl ---------------
-+dnl Do one set of substitutions for CF_RPATH_HACK, adding an rpath option to
-+dnl EXTRA_LDFLAGS for each -L option found.
-+dnl
-+dnl $cf_rpath_list contains a list of directories to ignore.
-+dnl
-+dnl $1 = variable name to update. The LDFLAGS variable should be the only one,
-+dnl but LIBS often has misplaced -L options.
-+AC_DEFUN([CF_RPATH_HACK_2],
-+[
-+CF_VERBOSE(...checking $1 [$]$1)
-+
-+cf_rpath_dst=
-+for cf_rpath_src in [$]$1
-+do
-+ case $cf_rpath_src in #(vi
-+ -L*) #(vi
-+
-+ # check if this refers to a directory which we will ignore
-+ cf_rpath_skip=no
-+ if test -n "$cf_rpath_list"
-+ then
-+ for cf_rpath_item in $cf_rpath_list
-+ do
-+ if test "x$cf_rpath_src" = "x-L$cf_rpath_item"
-+ then
-+ cf_rpath_skip=yes
-+ break
-+ fi
-+ done
-+ fi
-+
-+ if test "$cf_rpath_skip" = no
-+ then
-+ # transform the option
-+ if test "$LD_RPATH_OPT" = "-R " ; then
-+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"`
-+ else
-+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"`
-+ fi
-+
-+ # if we have not already added this, add it now
-+ cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"`
-+ if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS"
-+ then
-+ CF_VERBOSE(...Filter $cf_rpath_src ->$cf_rpath_tmp)
-+ EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
-+ fi
-+ fi
-+ ;;
-+ esac
-+ cf_rpath_dst="$cf_rpath_dst $cf_rpath_src"
-+done
-+$1=$cf_rpath_dst
-+
-+CF_VERBOSE(...checked $1 [$]$1)
-+AC_SUBST(EXTRA_LDFLAGS)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_SIG_ATOMIC_T version: 3 updated: 2012/10/04 20:12:20
- dnl ---------------
- dnl signal handler, but there are some gcc depedencies in that recommendation.
- dnl Try anyway.
-@@ -2405,10 +2726,10 @@
- done
- ])
- 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)
-+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_SUBDIR_PATH version: 6 updated: 2010/04/21 06:20:50
-+dnl CF_SUBDIR_PATH version: 7 updated: 2014/12/04 04:33:06
- dnl --------------
- dnl Construct a search-list for a nonstandard header/lib-file
- dnl $1 = the variable to return as result
-@@ -2418,14 +2739,21 @@
- [
- $1=
-
--CF_ADD_SUBDIR_PATH($1,$2,$3,/usr,$prefix)
- CF_ADD_SUBDIR_PATH($1,$2,$3,$prefix,NONE)
--CF_ADD_SUBDIR_PATH($1,$2,$3,/usr/local,$prefix)
--CF_ADD_SUBDIR_PATH($1,$2,$3,/opt,$prefix)
--CF_ADD_SUBDIR_PATH($1,$2,$3,[$]HOME,$prefix)
-+
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ [$]HOME
-+do
-+ CF_ADD_SUBDIR_PATH($1,$2,$3,$cf_subdir_prefix,$prefix)
-+done
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_SYS_TIME_SELECT version: 4 updated: 2000/10/04 09:18:40
-+dnl CF_SYS_TIME_SELECT version: 5 updated: 2012/10/04 05:24:07
- dnl ------------------
- dnl Check if we can include <sys/time.h> with <sys/select.h>; this breaks on
- dnl older SCO configurations.
-@@ -2445,10 +2773,10 @@
- [cf_cv_sys_time_select=no])
- ])
- AC_MSG_RESULT($cf_cv_sys_time_select)
--test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_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: 2 updated: 2010/10/23 15:54:49
-+dnl CF_TERM_HEADER version: 3 updated: 2012/10/06 08:57:51
- 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,
-@@ -2481,21 +2809,90 @@
-
- case $cf_cv_term_header in # (vi
- *term.h)
-- AC_DEFINE(HAVE_TERM_H)
-+ AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h])
- ;;
- esac
-
- case $cf_cv_term_header in # (vi
- ncurses/term.h) #(vi
-- AC_DEFINE(HAVE_NCURSES_TERM_H)
-+ AC_DEFINE(HAVE_NCURSES_TERM_H,1,[Define to 1 if we have ncurses/term.h])
- ;;
- ncursesw/term.h)
-- AC_DEFINE(HAVE_NCURSESW_TERM_H)
-+ AC_DEFINE(HAVE_NCURSESW_TERM_H,1,[Define to 1 if we have ncursesw/term.h])
- ;;
- esac
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_TRY_PKG_CONFIG version: 4 updated: 2010/06/14 17:42:30
-+dnl CF_TOP_BUILDDIR version: 2 updated: 2013/07/27 17:38:32
-+dnl ---------------
-+dnl Define a top_builddir symbol, for applications that need an absolute path.
-+AC_DEFUN([CF_TOP_BUILDDIR],
-+[
-+top_builddir=ifelse($1,,`pwd`,$1)
-+AC_SUBST(top_builddir)
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_TPUTS_PROTO version: 2 updated: 2011/04/23 19:25:50
-+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
-+then
-+ cf_done=no
-+ for cf_arg in int char
-+ do
-+ for cf_ret in int void
-+ do
-+ if test $cf_ret = void
-+ then
-+ cf_return="/* nothing */"
-+ else
-+ cf_return="return value"
-+ fi
-+ AC_TRY_COMPILE([
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <$cf_cv_term_header>
-+
-+static $cf_ret outc($cf_arg value) { $cf_return; }
-+],[
-+ tputs("hello", 0, outc);
-+ ${cf_cv_main_return:-return}(0);
-+],[
-+ CF_VERBOSE([prototype $cf_ret func($cf_arg value)])
-+ cat >>confdefs.h <<EOF
-+#define TPUTS_ARG $cf_arg
-+#define TPUTS_PROTO(func,value) $cf_ret func(TPUTS_ARG value)
-+#define TPUTS_RETURN(value) $cf_return
-+EOF
-+ cf_done=yes
-+ break
-+])
-+ done
-+ test $cf_done = yes && break
-+ done
-+fi
-+])dnl
-+dnl ---------------------------------------------------------------------------
-+dnl CF_TRIM_X_LIBS version: 2 updated: 2013/07/09 21:27:22
-+dnl --------------
-+dnl Trim extra base X libraries added as a workaround for inconsistent library
-+dnl dependencies returned by "new" pkg-config files.
-+AC_DEFUN([CF_TRIM_X_LIBS],[
-+ for cf_trim_lib in Xmu Xt X11
-+ do
-+ case "$LIBS" in
-+ *-l$cf_trim_lib\ *-l$cf_trim_lib*)
-+ LIBS=`echo "$LIBS " | sed -e 's/ / /g' -e 's%-l'"$cf_trim_lib"' %%' -e 's/ $//'`
-+ CF_VERBOSE(..trimmed $LIBS)
-+ ;;
-+ esac
-+ done
-+])
-+dnl ---------------------------------------------------------------------------
-+dnl CF_TRY_PKG_CONFIG version: 5 updated: 2013/07/06 21:27:06
- dnl -----------------
- dnl This is a simple wrapper to use for pkg-config, for libraries which may be
- dnl available in that form.
-@@ -2516,10 +2913,51 @@
- CF_ADD_LIBS($cf_pkgconfig_libs)
- ifelse([$2],,:,[$2])
- else
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
- ifelse([$3],,:,[$3])
- fi
- ])
- dnl ---------------------------------------------------------------------------
-+dnl CF_TRY_XOPEN_SOURCE version: 1 updated: 2011/10/30 17:09:50
-+dnl -------------------
-+dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we
-+dnl can define it successfully.
-+AC_DEFUN([CF_TRY_XOPEN_SOURCE],[
-+AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
-+ AC_TRY_COMPILE([
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+],[
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif],
-+ [cf_cv_xopen_source=no],
-+ [cf_save="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-+ AC_TRY_COMPILE([
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+],[
-+#ifdef _XOPEN_SOURCE
-+make an error
-+#endif],
-+ [cf_cv_xopen_source=no],
-+ [cf_cv_xopen_source=$cf_XOPEN_SOURCE])
-+ CPPFLAGS="$cf_save"
-+ ])
-+])
-+
-+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)
-+fi
-+])
-+dnl ---------------------------------------------------------------------------
- dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59
- dnl --------
- dnl Make an uppercase version of a variable
-@@ -2529,7 +2967,7 @@
- $1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_UTF8_LIB version: 7 updated: 2010/06/20 09:24:28
-+dnl CF_UTF8_LIB version: 8 updated: 2012/10/06 08:57:51
- dnl -----------
- dnl Check for multibyte support, and if not found, utf8 compatibility library
- AC_DEFUN([CF_UTF8_LIB],
-@@ -2548,7 +2986,7 @@
- # HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
- # ncurses/ncursesw:
- if test "$cf_cv_utf8_lib" = "add-on" ; then
-- AC_DEFINE(HAVE_LIBUTF8_H)
-+ AC_DEFINE(HAVE_LIBUTF8_H,1,[Define to 1 if we should include libutf8.h])
- CF_ADD_INCDIR($cf_cv_header_path_utf8)
- CF_ADD_LIBDIR($cf_cv_library_path_utf8)
- CF_ADD_LIBS($cf_cv_library_file_utf8)
-@@ -2563,7 +3001,7 @@
- CF_MSG_LOG([$1])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_WCHAR_TYPE version: 3 updated: 2010/05/26 16:44:57
-+dnl CF_WCHAR_TYPE version: 4 updated: 2012/10/06 16:39:58
- dnl -------------
- dnl Check if type wide-character type $1 is declared, and if so, which header
- dnl file is needed. The second parameter is used to set a shell variable when
-@@ -2595,7 +3033,7 @@
- [cf_cv_$1=unknown])])])
-
- if test "$cf_cv_$1" = yes ; then
-- AC_DEFINE(NEED_WCHAR_H)
-+ AC_DEFINE(NEED_WCHAR_H,1,[Define to 1 if we must include wchar.h])
- NEED_WCHAR_H=1
- fi
-
-@@ -2667,6 +3105,60 @@
- fi
- ])dnl
- dnl ---------------------------------------------------------------------------
-+dnl CF_WITH_NCURSES_ETC version: 2 updated: 2012/01/13 10:49:00
-+dnl -------------------
-+dnl Use this macro for programs which use any variant of "curses", e.g.,
-+dnl "ncurses", and "PDCurses". Programs that can use curses and some unrelated
-+dnl library (such as slang) should use a "--with-screen=XXX" option.
-+dnl
-+dnl This does not use AC_DEFUN, because that would tell autoconf to run each
-+dnl of the macros inside this one - before this macro.
-+define([CF_WITH_NCURSES_ETC],[
-+CF_WITH_CURSES_DIR
-+
-+cf_cv_screen=curses
-+
-+AC_MSG_CHECKING(for specified curses library type)
-+AC_ARG_WITH(ncursesw,
-+ [ --with-ncursesw use wide ncurses-libraries],
-+ [cf_cv_screen=ncursesw],[
-+
-+AC_ARG_WITH(ncurses,
-+ [ --with-ncurses use ncurses-libraries],
-+ [cf_cv_screen=ncurses],[
-+
-+AC_ARG_WITH(pdcurses,
-+ [ --with-pdcurses compile/link with pdcurses X11 library],
-+ [cf_cv_screen=pdcurses],[
-+
-+AC_ARG_WITH(curses-colr,
-+ [ --with-curses-colr compile/link with HPUX 10.x color-curses],
-+ [cf_cv_screen=curses_colr],[
-+
-+AC_ARG_WITH(curses-5lib,
-+ [ --with-curses-5lib compile/link with SunOS 5lib curses],
-+ [cf_cv_screen=curses_5lib])])])])])
-+
-+AC_MSG_RESULT($cf_cv_screen)
-+
-+case $cf_cv_screen in #(vi
-+curses|curses_*) #(vi
-+ CF_CURSES_CONFIG
-+ ;;
-+ncurses) #(vi
-+ CF_NCURSES_CONFIG
-+ ;;
-+ncursesw) #(vi
-+ CF_UTF8_LIB
-+ CF_NCURSES_CONFIG(ncursesw)
-+ ;;
-+pdcurses)
-+ CF_PDCURSES_X11
-+ ;;
-+esac
-+
-+])dnl
-+dnl ---------------------------------------------------------------------------
- dnl CF_WITH_VALGRIND version: 1 updated: 2006/12/14 18:00:21
- dnl ----------------
- AC_DEFUN([CF_WITH_VALGRIND],[
-@@ -2714,7 +3206,7 @@
- test $cf_cv_need_xopen_extension = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_XOPEN_SOURCE version: 35 updated: 2011/02/20 20:37:37
-+dnl CF_XOPEN_SOURCE version: 48 updated: 2014/09/01 12:29:14
- 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,
-@@ -2724,16 +3216,17 @@
- dnl $1 is the nominal value for _XOPEN_SOURCE
- dnl $2 is the nominal value for _POSIX_C_SOURCE
- AC_DEFUN([CF_XOPEN_SOURCE],[
-+AC_REQUIRE([AC_CANONICAL_HOST])
-
- cf_XOPEN_SOURCE=ifelse([$1],,500,[$1])
- cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2])
- cf_xopen_source=
-
- case $host_os in #(vi
--aix[[456]]*) #(vi
-+aix[[4-7]]*) #(vi
- cf_xopen_source="-D_ALL_SOURCE"
- ;;
--cygwin) #(vi
-+cygwin|msys) #(vi
- cf_XOPEN_SOURCE=600
- ;;
- darwin[[0-8]].*) #(vi
-@@ -2741,6 +3234,7 @@
- ;;
- darwin*) #(vi
- cf_xopen_source="-D_DARWIN_C_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- freebsd*|dragonfly*) #(vi
- # 5.x headers associate
-@@ -2758,15 +3252,26 @@
- ;;
- irix[[56]].*) #(vi
- cf_xopen_source="-D_SGI_SOURCE"
-+ cf_XOPEN_SOURCE=
- ;;
- linux*|gnu*|mint*|k*bsd*-gnu) #(vi
- CF_GNU_SOURCE
- ;;
-+minix*) #(vi
-+ cf_xopen_source="-D_NETBSD_SOURCE" # POSIX.1-2001 features are ifdef'd with this...
-+ ;;
- mirbsd*) #(vi
-- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h>
-+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types
-+ cf_XOPEN_SOURCE=
-+ CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
- ;;
- netbsd*) #(vi
-- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
-+ 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]]*) #(vi
-+ # 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
- ;;
- openbsd*) #(vi
- # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
-@@ -2780,46 +3285,55 @@
- sco*) #(vi
- # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
- ;;
--solaris2.1[[0-9]]) #(vi
-- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- ;;
--solaris2.[[1-9]]) #(vi
-+solaris2.*) #(vi
- cf_xopen_source="-D__EXTENSIONS__"
-+ cf_cv_xopen_source=broken
-+ ;;
-+sysv4.2uw2.*) # Novell/SCO UnixWare 2.x (tested on 2.1.2)
-+ cf_XOPEN_SOURCE=
-+ cf_POSIX_C_SOURCE=
- ;;
- *)
-- AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
-- AC_TRY_COMPILE([#include <sys/types.h>],[
-+ CF_TRY_XOPEN_SOURCE
-+ CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
-+ ;;
-+esac
-+
-+if test -n "$cf_xopen_source" ; then
-+ CF_ADD_CFLAGS($cf_xopen_source,true)
-+fi
-+
-+dnl In anything but the default case, we may have system-specific setting
-+dnl which is still not guaranteed to provide all of the entrypoints that
-+dnl _XOPEN_SOURCE would yield.
-+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
-+ AC_MSG_CHECKING(if _XOPEN_SOURCE really is set)
-+ AC_TRY_COMPILE([#include <stdlib.h>],[
- #ifndef _XOPEN_SOURCE
- make an error
- #endif],
-- [cf_cv_xopen_source=no],
-- [cf_save="$CPPFLAGS"
-- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- AC_TRY_COMPILE([#include <sys/types.h>],[
--#ifdef _XOPEN_SOURCE
-+ [cf_XOPEN_SOURCE_set=yes],
-+ [cf_XOPEN_SOURCE_set=no])
-+ AC_MSG_RESULT($cf_XOPEN_SOURCE_set)
-+ if test $cf_XOPEN_SOURCE_set = yes
-+ then
-+ AC_TRY_COMPILE([#include <stdlib.h>],[
-+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
- make an error
- #endif],
-- [cf_cv_xopen_source=no],
-- [cf_cv_xopen_source=$cf_XOPEN_SOURCE])
-- CPPFLAGS="$cf_save"
-- ])
--])
-- 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_XOPEN_SOURCE_set_ok=yes],
-+ [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
-+ else
-+ CF_TRY_XOPEN_SOURCE
- fi
-- CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
-- ;;
--esac
--
--if test -n "$cf_xopen_source" ; then
-- CF_ADD_CFLAGS($cf_xopen_source)
- fi
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_X_ATHENA version: 20 updated: 2010/11/09 05:18:02
-+dnl CF_X_ATHENA version: 22 updated: 2014/07/12 18:57:58
- dnl -----------
- dnl Check for Xaw (Athena) libraries
- dnl
-@@ -2839,6 +3353,17 @@
- AC_MSG_RESULT(no)
- fi
-
-+AC_MSG_CHECKING(if you want to link with Xaw 3d xft library)
-+withval=
-+AC_ARG_WITH(Xaw3dxft,
-+ [ --with-Xaw3dxft link with Xaw 3d xft library])
-+if test "$withval" = yes ; then
-+ cf_x_athena=Xaw3dxft
-+ AC_MSG_RESULT(yes)
-+else
-+ AC_MSG_RESULT(no)
-+fi
-+
- AC_MSG_CHECKING(if you want to link with neXT Athena library)
- withval=
- AC_ARG_WITH(neXtaw,
-@@ -2878,6 +3403,8 @@
- CF_UPPER(cf_x_athena_LIBS,HAVE_LIB_$cf_x_athena)
- AC_DEFINE_UNQUOTED($cf_x_athena_LIBS)
-
-+ CF_TRIM_X_LIBS
-+
- AC_CACHE_CHECK(for usable $cf_x_athena/Xmu package,cf_cv_xaw_compat,[
- AC_TRY_LINK([
- #include <X11/Xmu/CharSet.h>
-@@ -2893,7 +3420,15 @@
- ;;
- *)
- CF_VERBOSE(work around broken package)
-- CF_TRY_PKG_CONFIG(xmu,,[CF_ADD_LIB_AFTER(-lXt,-lXmu)])
-+ cf_save_xmu="$LIBS"
-+ cf_first_lib=`echo "$cf_save_xmu" | sed -e 's/^[ ][ ]*//' -e 's/ .*//'`
-+ CF_TRY_PKG_CONFIG(xmu,[
-+ LIBS="$cf_save_xmu"
-+ CF_ADD_LIB_AFTER($cf_first_lib,$cf_pkgconfig_libs)
-+ ],[
-+ CF_ADD_LIB_AFTER($cf_first_lib,-lXmu)
-+ ])
-+ CF_TRIM_X_LIBS
- ;;
- esac
- fi
-@@ -2957,7 +3492,7 @@
- fi
- ])
- dnl ---------------------------------------------------------------------------
--dnl CF_X_ATHENA_LIBS version: 10 updated: 2011/02/13 13:31:33
-+dnl CF_X_ATHENA_LIBS version: 12 updated: 2011/07/17 19:55:02
- 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.
-@@ -2973,19 +3508,24 @@
- /usr/local
- do
- for cf_lib in \
-- "-l$cf_x_athena_root -lXmu" \
-- "-l$cf_x_athena_root -lXpm -lXmu" \
-- "-l${cf_x_athena_root}_s -lXmu_s"
-+ ${cf_x_athena_root} \
-+ ${cf_x_athena_root}7 \
-+ ${cf_x_athena_root}6
-+ do
-+ for cf_libs in \
-+ "-l$cf_lib -lXmu" \
-+ "-l$cf_lib -lXpm -lXmu" \
-+ "-l${cf_lib}_s -lXmu_s"
- do
- if test -z "$cf_x_athena_lib" ; then
- cf_save="$LIBS"
- cf_test=XawSimpleMenuAddGlobalActions
- if test $cf_path != default ; then
-- CF_ADD_LIBS(-L$cf_path/lib $cf_lib)
-- AC_MSG_CHECKING(for $cf_lib in $cf_path)
-+ CF_ADD_LIBS(-L$cf_path/lib $cf_libs)
-+ AC_MSG_CHECKING(for $cf_libs in $cf_path)
- else
-- CF_ADD_LIBS($cf_lib)
-- AC_MSG_CHECKING(for $cf_test in $cf_lib)
-+ CF_ADD_LIBS($cf_libs)
-+ AC_MSG_CHECKING(for $cf_test in $cf_libs)
- fi
- AC_TRY_LINK([
- #include <X11/Intrinsic.h>
-@@ -2996,12 +3536,14 @@
- [cf_result=no])
- AC_MSG_RESULT($cf_result)
- if test "$cf_result" = yes ; then
-- cf_x_athena_lib="$cf_lib"
-+ cf_x_athena_lib="$cf_libs"
- break
- fi
- LIBS="$cf_save"
- fi
-- done
-+ done # cf_libs
-+ test -n "$cf_x_athena_lib" && break
-+ done # cf_lib
- done
-
- if test -z "$cf_x_athena_lib" ; then
-@@ -3021,15 +3563,28 @@
- [CF_ADD_LIB(Xext)])])
- ])dnl
- dnl ---------------------------------------------------------------------------
--dnl CF_X_TOOLKIT version: 20 updated: 2010/11/19 05:43:04
-+dnl CF_X_TOOLKIT version: 22 updated: 2014/07/13 14:33:27
- dnl ------------
- dnl Check for X Toolkit libraries
--dnl
- AC_DEFUN([CF_X_TOOLKIT],
- [
- AC_REQUIRE([AC_PATH_XTRA])
- AC_REQUIRE([CF_CHECK_CACHE])
-
-+# OSX is schizoid about who owns /usr/X11 (old) versus /opt/X11 (new), and (and
-+# in some cases has installed dummy files in the former, other cases replaced
-+# it with a link to the new location). This complicates the configure script.
-+# Check for that pitfall, and recover using pkg-config
-+#
-+# If none of these are set, the configuration is almost certainly broken.
-+if test -z "${X_CFLAGS}${X_PRE_LIBS}${X_LIBS}${X_EXTRA_LIBS}"
-+then
-+ CF_TRY_PKG_CONFIG(x11,,[AC_MSG_WARN(unable to find X11 library)])
-+ 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)])
-+fi
-+
- cf_have_X_LIBS=no
-
- CF_TRY_PKG_CONFIG(xt,[
-@@ -3095,7 +3650,7 @@
-
- AC_CHECK_FUNC(XtAppInitialize,,[
- AC_CHECK_LIB(Xt, XtAppInitialize,
-- [AC_DEFINE(HAVE_LIBXT)
-+ [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])])
-Index: test/background.c
-Prereq: 1.3
---- ncurses-5.9/test/background.c 2006-06-03 16:43:08.000000000 +0000
-+++ ncurses-5.9-20141206/test/background.c 2014-08-09 22:31:23.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2003,2006 Free Software Foundation, Inc. *
-+ * Copyright (c) 2003-2012,2014 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 *
-@@ -26,15 +26,172 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: background.c,v 1.3 2006/06/03 16:43:08 tom Exp $
-+ * $Id: background.c,v 1.15 2014/08/09 22:31:23 tom Exp $
- */
-
--#include <test.priv.h>
-+#define NEED_COLOR_CODE 1
-+#define NEED_COLOR_NAME 1
-+#include <color_name.h>
-+
-+static int default_bg = COLOR_BLACK;
-+static int default_fg = COLOR_WHITE;
-+
-+static void
-+test_background(void)
-+{
-+ NCURSES_COLOR_T f, b;
-+ int row;
-+ int chr;
-+
-+ 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);
-+ }
-+ getch();
-+
-+ printw("Initializing pair 1 to red/%s\n", color_name(default_bg));
-+ init_pair(1, COLOR_RED, (NCURSES_COLOR_T) default_bg);
-+ bkgdset((chtype) (' ' | COLOR_PAIR(1)));
-+ printw("RED/BLACK\n");
-+ getch();
-+
-+ printw("Initializing pair 2 to %s/blue\n", color_name(default_fg));
-+ init_pair(2, (NCURSES_COLOR_T) default_fg, COLOR_BLUE);
-+ bkgdset((chtype) (' ' | COLOR_PAIR(2)));
-+ printw("This line should be %s/blue\n", color_name(default_fg));
-+ getch();
-+
-+ 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");
-+ bkgdset(ACS_HLINE | (attr_t) COLOR_PAIR(3));
-+ /*
-+ * 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((chtype) ((chr == 127) ? ' ' : chr));
-+ if ((++chr % 32) == 0)
-+ printw("x\n");
-+ }
-+ mvprintw(row++, 10, "m");
-+ for (chr = 0; chr < 32; ++chr)
-+ addch(' ');
-+ printw("j\n");
-+ getch();
-+
-+ bkgdset((chtype) (' ' | COLOR_PAIR(0)));
-+ printw("Default Colors\n");
-+ getch();
-+
-+ printw("Resetting colors to pair 1\n");
-+ bkgdset((chtype) (' ' | COLOR_PAIR(1)));
-+ printw("This line should be red/%s\n", color_name(default_bg));
-+ getch();
-+
-+ printw("Setting screen to pair 0\n");
-+ bkgd((chtype) (' ' | COLOR_PAIR(0)));
-+ getch();
-+
-+ printw("Setting screen to pair 1\n");
-+ bkgd((chtype) (' ' | COLOR_PAIR(1)));
-+ getch();
-+
-+ printw("Setting screen to pair 2\n");
-+ bkgd((chtype) (' ' | COLOR_PAIR(2)));
-+ getch();
-+
-+ printw("Setting screen to pair 3\n");
-+ bkgd((chtype) (' ' | COLOR_PAIR(3)));
-+ getch();
-+
-+ printw("Setting screen to pair 0\n");
-+ bkgd((chtype) (' ' | COLOR_PAIR(0)));
-+ getch();
-+}
-+
-+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"
-+ };
-+ 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)
- {
-- short f, b;
-+#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:")) != -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;
-+ 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();
-@@ -43,47 +200,30 @@
- if (has_colors()) {
- start_color();
-
-- pair_content(0, &f, &b);
-- printw("pair 0 contains (%d,%d)\n", f, b);
-- getch();
--
-- printw("Initializing pair 1 to red/black\n");
-- init_pair(1, COLOR_RED, COLOR_BLACK);
-- bkgdset(' ' | COLOR_PAIR(1));
-- printw("RED/BLACK\n");
-- getch();
--
-- printw("Initializing pair 2 to white/blue\n");
-- init_pair(2, COLOR_WHITE, COLOR_BLUE);
-- bkgdset(' ' | COLOR_PAIR(2));
-- printw("WHITE/BLUE\n");
-- getch();
--
-- printw("Resetting colors to pair 0\n");
-- bkgdset(' ' | COLOR_PAIR(0));
-- printw("Default Colors\n");
-- getch();
--
-- printw("Resetting colors to pair 1\n");
-- bkgdset(' ' | COLOR_PAIR(1));
-- printw("RED/BLACK\n");
-- getch();
--
-- printw("Setting screen to pair 0\n");
-- bkgd(' ' | COLOR_PAIR(0));
-- getch();
--
-- printw("Setting screen to pair 1\n");
-- bkgd(' ' | COLOR_PAIR(1));
-- getch();
--
-- printw("Setting screen to pair 2\n");
-- bkgd(' ' | COLOR_PAIR(2));
-- getch();
--
-- printw("Setting screen to pair 0\n");
-- bkgd(' ' | COLOR_PAIR(0));
-- getch();
-+#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");
-Index: test/blue.c
-Prereq: 1.33
---- ncurses-5.9/test/blue.c 2009-10-24 21:03:35.000000000 +0000
-+++ ncurses-5.9-20141206/test/blue.c 2013-04-27 19:46:53.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2009,2013 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 *
-@@ -40,7 +40,7 @@
- * results, use the ncurses(3) library. On non-Intel machines, SVr4 curses is
- * just as good.
- *
-- * $Id: blue.c,v 1.33 2009/10/24 21:03:35 tom Exp $
-+ * $Id: blue.c,v 1.35 2013/04/27 19:46:53 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -70,7 +70,7 @@
- #define BLACK_ON_WHITE 2
- #define BLUE_ON_WHITE 3
-
--static RETSIGTYPE die(int onsig) GCC_NORETURN;
-+static void die(int onsig) GCC_NORETURN;
-
- static int deck_size = PACK_SIZE; /* initial deck */
- static int deck[PACK_SIZE];
-@@ -132,7 +132,7 @@
-
- static chtype *suits = letters; /* this may change to glyphs below */
-
--static RETSIGTYPE
-+static void
- die(int onsig)
- {
- (void) signal(onsig, SIG_IGN);
-@@ -202,8 +202,8 @@
- if (value == NOCARD)
- (void) addstr(" ");
- else {
-- addch(ranks[value % SUIT_LENGTH][0] | COLOR_PAIR(BLUE_ON_WHITE));
-- addch(ranks[value % SUIT_LENGTH][1] | COLOR_PAIR(BLUE_ON_WHITE));
-+ addch(ranks[value % SUIT_LENGTH][0] | (chtype) COLOR_PAIR(BLUE_ON_WHITE));
-+ addch(ranks[value % SUIT_LENGTH][1] | (chtype) COLOR_PAIR(BLUE_ON_WHITE));
- addch(suits[value / SUIT_LENGTH]);
- }
- (void) addch(' ');
-Index: test/bs.c
-Prereq: 1.52
---- ncurses-5.9/test/bs.c 2010-11-13 20:07:52.000000000 +0000
-+++ ncurses-5.9-20141206/test/bs.c 2014-08-09 22:27:12.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -34,7 +34,7 @@
- * v2.0 featuring strict ANSI/POSIX conformance, November 1993.
- * v2.1 with ncurses mouse support, September 1995
- *
-- * $Id: bs.c,v 1.52 2010/11/13 20:07:52 tom Exp $
-+ * $Id: bs.c,v 1.63 2014/08/09 22:27:12 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -110,7 +110,7 @@
- static char destroy[] = "Destroyer";
- static char ptboat[] = "PT Boat";
-
--static char name[40];
-+static char *your_name;
- static char dftname[] = "stranger";
-
- /* direction constants */
-@@ -174,9 +174,9 @@
-
- #define PR (void)addstr
-
--static RETSIGTYPE uninitgame(int sig) GCC_NORETURN;
-+static void uninitgame(int sig) GCC_NORETURN;
-
--static RETSIGTYPE
-+static void
- uninitgame(int sig GCC_UNUSED)
- /* end the game, either normally or due to signal */
- {
-@@ -220,11 +220,12 @@
-
- CATCHALL(uninitgame);
-
-- if ((tmpname = getlogin()) != 0) {
-- (void) strcpy(name, tmpname);
-- name[0] = (char) toupper(UChar(name[0]));
-- } else
-- (void) strcpy(name, dftname);
-+ if ((tmpname = getlogin()) != 0 &&
-+ (your_name = strdup(tmpname)) != 0) {
-+ your_name[0] = (char) toupper(UChar(your_name[0]));
-+ } else {
-+ your_name = dftname;
-+ }
-
- (void) initscr();
- keypad(stdscr, TRUE);
-@@ -426,10 +427,11 @@
- placeship(COMPUTER, ss, FALSE);
- }
-
-- ss = (ship_t *) NULL;
- do {
- char c, docked[SHIPTYPES + 2], *cp = docked;
-
-+ ss = (ship_t *) NULL;
-+
- /* figure which ships still wait to be placed */
- *cp++ = 'R';
- for (i = 0; i < SHIPTYPES; i++)
-@@ -442,7 +444,7 @@
- do {
- c = (char) getcoord(PLAYER);
- } while
-- (!strchr(docked, c));
-+ (!(strchr) (docked, c));
-
- if (c == 'R')
- (void) ungetch('R');
-@@ -459,13 +461,14 @@
- do {
- c = (char) getch();
- } while
-- (!(strchr("hjklrR", c) || c == FF));
-+ (!(strchr("hjkl8462rR", c) || c == FF));
-
- if (c == FF) {
- (void) clearok(stdscr, TRUE);
- (void) refresh();
-+ } else if (ss == 0) {
-+ beep(); /* simple to verify, unlikely to happen */
- } else if (c == 'r') {
-- assert(ss != 0);
- prompt(1, "Random-placing your %s", ss->name);
- randomplace(PLAYER, ss);
- placeship(PLAYER, ss, TRUE);
-@@ -481,7 +484,6 @@
- }
- error((char *) NULL);
- } else if (strchr("hjkl8462", c)) {
-- assert(ss != 0);
- ss->x = curx;
- ss->y = cury;
-
-@@ -863,7 +865,9 @@
- m = " You'll pick up survivors from my %s, I hope...!";
- break;
- }
-- (void) printw(m, ss->name);
-+ if (m != 0) {
-+ (void) printw(m, ss->name);
-+ }
- (void) beep();
- }
- return (hit);
-@@ -952,8 +956,8 @@
- bool hit, sunk;
- ship_t *ss = NULL;
-
-- hit = board[PLAYER][x][y] ? MARK_HIT : MARK_MISS;
-- hits[COMPUTER][x][y] = (char) hit;
-+ hit = (bool) board[PLAYER][x][y];
-+ hits[COMPUTER][x][y] = (hit ? MARK_HIT : MARK_MISS);
- MvPrintw(PROMPTLINE, 0,
- "I shoot at %c%d. I %s!", y + 'A', x, hit ? "hit" :
- "miss");
-@@ -1130,16 +1134,16 @@
- ++cpuwon;
- else
- ++plywon;
-- j = 18 + (int) strlen(name);
-+ j = 18 + (int) strlen(your_name);
- if (plywon >= 10)
- ++j;
- if (cpuwon >= 10)
- ++j;
- MvPrintw(1, (COLWIDTH - j) / 2,
-- "%s: %d Computer: %d", name, plywon, cpuwon);
-+ "%s: %d Computer: %d", your_name, plywon, cpuwon);
-
- prompt(2, (awinna())? "Want to be humiliated again, %s [yn]? "
-- : "Going to give me a chance for revenge, %s [yn]? ", name);
-+ : "Going to give me a chance for revenge, %s [yn]? ", your_name);
- return (sgetc("YN") == 'Y');
- }
-
-Index: test/cardfile.c
-Prereq: 1.38
---- ncurses-5.9/test/cardfile.c 2010-11-14 00:58:45.000000000 +0000
-+++ ncurses-5.9-20141206/test/cardfile.c 2013-09-28 22:02:17.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1999-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1999-2012,2013 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 *
-@@ -29,7 +29,7 @@
- /*
- * Author: Thomas E. Dickey
- *
-- * $Id: cardfile.c,v 1.38 2010/11/14 00:58:45 tom Exp $
-+ * $Id: cardfile.c,v 1.42 2013/09/28 22:02:17 tom Exp $
- *
- * File format: text beginning in column 1 is a title; other text is content.
- */
-@@ -68,17 +68,13 @@
- static bool try_color = FALSE;
- static char default_name[] = "cardfile.dat";
-
--#if !HAVE_STRDUP
--#define strdup my_strdup
--static char *
--strdup(const char *s)
--{
-- char *p = typeMalloc(char, strlen(s) + 1);
-- if (p)
-- strcpy(p, s);
-- return (p);
-+static void
-+failed(const char *s)
-+{
-+ perror(s);
-+ endwin();
-+ ExitProgram(EXIT_FAILURE);
- }
--#endif /* not HAVE_STRDUP */
-
- static const char *
- skip(const char *buffer)
-@@ -111,7 +107,7 @@
- break;
- }
-
-- card = typeCalloc(CARD, 1);
-+ card = typeCalloc(CARD, (size_t) 1);
- card->title = strdup(title);
- card->content = strdup("");
-
-@@ -146,6 +142,8 @@
- }
- if (card->content)
- strcpy(card->content + offset, content);
-+ else
-+ failed("add_content");
- }
- }
-
-@@ -337,7 +335,7 @@
- static FIELD **
- make_fields(CARD * p, int form_high, int form_wide)
- {
-- FIELD **f = typeCalloc(FIELD *, 3);
-+ FIELD **f = typeCalloc(FIELD *, (size_t) 3);
-
- f[0] = new_field(1, form_wide, 0, 0, 0, 0);
- set_field_back(f[0], A_REVERSE);
-@@ -414,7 +412,7 @@
- if ((win = newwin(panel_high, panel_wide, y, x)) == 0)
- break;
-
-- wbkgd(win, COLOR_PAIR(pair_2));
-+ wbkgd(win, (chtype) COLOR_PAIR(pair_2));
- keypad(win, TRUE);
- p->panel = new_panel(win);
- box(win, 0, 0);
-@@ -588,7 +586,7 @@
- start_color();
- init_pair(pair_1, COLOR_WHITE, COLOR_BLUE);
- init_pair(pair_2, COLOR_WHITE, COLOR_CYAN);
-- bkgd(COLOR_PAIR(pair_1));
-+ bkgd((chtype) COLOR_PAIR(pair_1));
- } else {
- try_color = FALSE;
- }
-Index: test/chgat.c
-Prereq: 1.11
---- ncurses-5.9/test/chgat.c 2010-05-01 19:12:26.000000000 +0000
-+++ ncurses-5.9-20141206/test/chgat.c 2012-11-18 01:55:35.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2006-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2006-2010,2012 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: chgat.c,v 1.11 2010/05/01 19:12:26 tom Exp $
-+ * $Id: chgat.c,v 1.12 2012/11/18 01:55:35 tom Exp $
- *
- * test-driver for chgat/wchgat/mvchgat/mvwchgat
- */
-@@ -176,6 +176,8 @@
- delwin(win1);
- touchwin(win);
- } else {
-+ if (win1 != 0)
-+ delwin(win1);
- beep();
- }
- }
-Index: test/clip_printw.c
-Prereq: 1.7
---- ncurses-5.9/test/clip_printw.c 2010-11-13 20:48:48.000000000 +0000
-+++ ncurses-5.9-20141206/test/clip_printw.c 2014-08-02 23:13:29.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2012,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: clip_printw.c,v 1.7 2010/11/13 20:48:48 tom Exp $
-+ * $Id: clip_printw.c,v 1.10 2014/08/02 23:13:29 tom Exp $
- *
- * demonstrate how to use printw without wrapping.
- */
-@@ -207,6 +207,8 @@
- delwin(win1);
- touchwin(win);
- } else {
-+ if (win1)
-+ delwin(win1);
- beep();
- }
- }
-@@ -329,7 +331,7 @@
- do {
- switch (st.ch) {
- case '.': /* change from current position */
-- (void) wattrset(win, st.attr | (chtype) COLOR_PAIR(st.pair));
-+ (void) wattrset(win, AttrArg(COLOR_PAIR(st.pair), st.attr));
- if (st.count > 0) {
- need = (unsigned) st.count + 1;
- sprintf(fmt, "%%c%%%ds%%c", st.count);
-@@ -337,12 +339,13 @@
- need = (unsigned) getmaxx(win) - 1;
- strcpy(fmt, "%c%s%c");
- }
-- if ((buffer = typeMalloc(char, need)) != 0) {
-+ if ((buffer = typeMalloc(char, need + 1)) != 0) {
- for (j = 0; j < need; ++j) {
- buffer[j] = (char) ('A' + (j % 26));
- }
- buffer[need - 1] = '\0';
- st.status = clip_wprintw(win, fmt, '[', buffer, ']');
-+ free(buffer);
- }
- break;
- case 'w':
-Index: test/color_name.h
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/test/color_name.h 2012-11-18 01:59:32.000000000 +0000
-@@ -0,0 +1,103 @@
-+/****************************************************************************
-+ * Copyright (c) 2011,2012 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. *
-+ ****************************************************************************/
-+/*
-+ * $Id: color_name.h,v 1.4 2012/11/18 01:59:32 tom Exp $
-+ */
-+
-+#ifndef __COLORNAME_H
-+#define __COLORNAME_H 1
-+
-+#ifndef __TEST_PRIV_H
-+#include <test.priv.h>
-+#endif
-+
-+static NCURSES_CONST char *the_color_names[] =
-+{
-+ "black",
-+ "red",
-+ "green",
-+ "yellow",
-+ "blue",
-+ "magenta",
-+ "cyan",
-+ "white",
-+ "BLACK",
-+ "RED",
-+ "GREEN",
-+ "YELLOW",
-+ "BLUE",
-+ "MAGENTA",
-+ "CYAN",
-+ "WHITE"
-+};
-+
-+#ifdef NEED_COLOR_CODE
-+static int
-+color_code(const char *color)
-+{
-+ int result = 0;
-+ char *endp = 0;
-+ size_t n;
-+
-+ if ((result = (int) strtol(color, &endp, 0)) >= 0
-+ && (endp == 0 || *endp == 0)) {
-+ ;
-+ } else if (!strcmp(color, "default")) {
-+ result = -1;
-+ } else {
-+ for (n = 0; n < SIZEOF(the_color_names); ++n) {
-+ if (!strcmp(the_color_names[n], color)) {
-+ result = (int) n;
-+ break;
-+ }
-+ }
-+ }
-+ return result;
-+}
-+#endif /* NEED_COLOR_NAME */
-+
-+#ifdef NEED_COLOR_NAME
-+static const char *
-+color_name(int color)
-+{
-+ static char temp[20];
-+ const char *result = 0;
-+
-+ if (color >= (int) SIZEOF(the_color_names)) {
-+ sprintf(temp, "%d", color);
-+ result = temp;
-+ } else if (color < 0) {
-+ result = "default";
-+ } else {
-+ result = the_color_names[color];
-+ }
-+ return result;
-+}
-+#endif /* NEED_COLOR_NAME */
-+
-+#endif /* __COLORNAME_H */
-Index: test/color_set.c
-Prereq: 1.6
---- ncurses-5.9/test/color_set.c 2008-02-10 00:18:01.000000000 +0000
-+++ ncurses-5.9-20141206/test/color_set.c 2014-02-01 22:10:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2003-2006,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 2003-2012,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: color_set.c,v 1.6 2008/02/10 00:18:01 tom Exp $
-+ * $Id: color_set.c,v 1.8 2014/02/01 22:10:42 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -38,7 +38,7 @@
- int
- main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
- {
-- short f, b;
-+ NCURSES_COLOR_T f, b;
- int i;
-
- initscr();
-@@ -48,8 +48,8 @@
- if (has_colors()) {
- start_color();
-
-- pair_content(0, &f, &b);
-- printw("pair 0 contains (%d,%d)\n", f, b);
-+ (void) pair_content(0, &f, &b);
-+ printw("pair 0 contains (%d,%d)\n", (int) f, (int) b);
- getch();
-
- printw("Initializing pair 1 to red/black\n");
-Index: test/configure
---- ncurses-5.9/test/configure 2011-03-24 08:29:40.000000000 +0000
-+++ ncurses-5.9-20141206/test/configure 2014-12-06 13:40:09.000000000 +0000
-@@ -1,6 +1,6 @@
- #! /bin/sh
- # Guess values for system-dependent variables and create Makefiles.
--# Generated by Autoconf 2.52.20101002.
-+# Generated by Autoconf 2.52.20141204.
- #
- # Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
- # Free Software Foundation, Inc.
-@@ -105,42 +105,6 @@
- : ${ac_max_here_lines=38}
-
- ac_unique_file="ncurses.c"
--# Factoring default headers for most tests.
--ac_includes_default="\
--#include <stdio.h>
--#if HAVE_SYS_TYPES_H
--# include <sys/types.h>
--#endif
--#if HAVE_SYS_STAT_H
--# include <sys/stat.h>
--#endif
--#if STDC_HEADERS
--# include <stdlib.h>
--# include <stddef.h>
--#else
--# if HAVE_STDLIB_H
--# include <stdlib.h>
--# endif
--#endif
--#if HAVE_STRING_H
--# if !STDC_HEADERS && HAVE_MEMORY_H
--# include <memory.h>
--# endif
--# include <string.h>
--#endif
--#if HAVE_STRINGS_H
--# include <strings.h>
--#endif
--#if HAVE_INTTYPES_H
--# include <inttypes.h>
--#else
--# if HAVE_STDINT_H
--# include <stdint.h>
--# endif
--#endif
--#if HAVE_UNISTD_H
--# include <unistd.h>
--#endif"
-
- # Initialize some variables set by options.
- ac_init_help=
-@@ -170,15 +134,16 @@
- bindir='${exec_prefix}/bin'
- sbindir='${exec_prefix}/sbin'
- libexecdir='${exec_prefix}/libexec'
--datadir='${prefix}/share'
-+datarootdir='${prefix}/share'
-+datadir='${datarootdir}'
- sysconfdir='${prefix}/etc'
- sharedstatedir='${prefix}/com'
- localstatedir='${prefix}/var'
- libdir='${exec_prefix}/lib'
- includedir='${prefix}/include'
- oldincludedir='/usr/include'
--infodir='${prefix}/info'
--mandir='${prefix}/man'
-+infodir='${datarootdir}/info'
-+mandir='${datarootdir}/man'
-
- # Identity of this package.
- PACKAGE_NAME=
-@@ -229,6 +194,13 @@
- | --da=*)
- datadir=$ac_optarg ;;
-
-+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
-+ | --dataroo | --dataro | --datar)
-+ ac_prev=datarootdir ;;
-+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
-+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
-+ datarootdir=$ac_optarg ;;
-+
- -disable-* | --disable-*)
- ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
-@@ -504,7 +476,7 @@
- done
-
- # Be sure to have absolute paths.
--for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
-+for ac_var in bindir sbindir libexecdir datarootdir datadir sysconfdir sharedstatedir \
- localstatedir libdir includedir oldincludedir infodir mandir
- do
- eval ac_val=$`echo $ac_var`
-@@ -641,15 +613,16 @@
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
-- --datadir=DIR read-only architecture-independent data [PREFIX/share]
-+ --datarootdir=DIR read-only architecture-independent data [PREFIX/share]
-+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
-- --infodir=DIR info documentation [PREFIX/info]
-- --mandir=DIR man documentation [PREFIX/man]
-+ --infodir=DIR info documentation [DATAROOTDIR/info]
-+ --mandir=DIR man documentation [DATAROOTDIR/man]
- EOF
-
- cat <<\EOF
-@@ -673,31 +646,38 @@
-
- cat <<\EOF
-
--Optional Features:
-- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
-- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--
- Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
-
-- --disable-echo display "compiling" commands
-- --enable-warnings test: turn on gcc compiler warnings
-- --with-dmalloc test: use Gray Watson's dmalloc library
-- --with-dbmalloc test: use Conor Cahill's dbmalloc library
-- --with-valgrind test: use valgrind
-- --disable-leaks test: free permanent memory, analyze leaks
-+Optional Features:
-+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
-+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
-+
-+General Options:
-+ --with-pkg-config{=path} enable/disable use of pkg-config
-+ --disable-echo do not display "compiling" commands
-+Curses Version-dependent Options:
-+ --with-ncurses-wrap-prefix naming-prefix for ncurses wrapped-variables
-+ --disable-widec disable checks for wide-character functions
- --with-curses-dir=DIR directory in which (n)curses is installed
-- --with-5lib use SunOS sysv-libraries
-- --with-ncursesw use wide ncurses-libraries (installed)
-- --with-ncurses use ncurses-libraries (installed)
-+ --with-ncursesw use wide ncurses-libraries
-+ --with-ncurses use ncurses-libraries
- --with-pdcurses compile/link with pdcurses X11 library
-+ --with-curses-colr compile/link with HPUX 10.x color-curses
-+ --with-curses-5lib compile/link with SunOS 5lib curses
- --with-Xaw3d link with Xaw 3d library
-+ --with-Xaw3dxft link with Xaw 3d xft library
- --with-neXtaw link with neXT Athena library
- --with-XawPlus link with Athena-Plus library
-- --with-pkg-config{=path} enable/disable use of pkg-config
- --with-x use the X Window System
-- --with-ncurses-wrap-prefix naming-prefix for ncurses wrapped-variables
-+Testing/development Options:
-+ --enable-warnings test: turn on gcc compiler warnings
-+ --with-dmalloc test: use Gray Watson's dmalloc library
-+ --with-dbmalloc test: use Conor Cahill's dbmalloc library
-+ --with-valgrind test: use valgrind
-+ --disable-leaks test: free permanent memory, analyze leaks
-+ --disable-rpath-hack don't add rpath options for additional libraries
-
- Some influential environment variables:
- CC C compiler command
-@@ -767,7 +747,7 @@
- running configure, to aid debugging if configure makes a mistake.
-
- It was created by $as_me, which was
--generated by GNU Autoconf 2.52.20101002. Invocation command line was
-+generated by GNU Autoconf 2.52.20141204. Invocation command line was
-
- $ $0 $@
-
-@@ -891,7 +871,7 @@
- fi
- for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
-- { echo "$as_me:894: loading site script $ac_site_file" >&5
-+ { echo "$as_me:874: 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"
-@@ -902,7 +882,7 @@
- # 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:905: loading cache $cache_file" >&5
-+ { echo "$as_me:885: loading cache $cache_file" >&5
- echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . $cache_file;;
-@@ -910,7 +890,7 @@
- esac
- fi
- else
-- { echo "$as_me:913: creating cache $cache_file" >&5
-+ { echo "$as_me:893: creating cache $cache_file" >&5
- echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
- fi
-@@ -926,21 +906,21 @@
- eval ac_new_val="\$ac_env_${ac_var}_value"
- case $ac_old_set,$ac_new_set in
- set,)
-- { echo "$as_me:929: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-+ { echo "$as_me:909: 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:933: error: \`$ac_var' was not set in the previous run" >&5
-+ { echo "$as_me:913: 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:939: error: \`$ac_var' has changed since the previous run:" >&5
-+ { echo "$as_me:919: 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:941: former value: $ac_old_val" >&5
-+ { echo "$as_me:921: former value: $ac_old_val" >&5
- echo "$as_me: former value: $ac_old_val" >&2;}
-- { echo "$as_me:943: current value: $ac_new_val" >&5
-+ { echo "$as_me:923: current value: $ac_new_val" >&5
- echo "$as_me: current value: $ac_new_val" >&2;}
- ac_cache_corrupted=:
- fi;;
-@@ -959,9 +939,9 @@
- fi
- done
- if $ac_cache_corrupted; then
-- { echo "$as_me:962: error: changes in the environment can compromise the build" >&5
-+ { echo "$as_me:942: 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:964: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-+ { { echo "$as_me:944: 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
-@@ -973,19 +953,19 @@
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- ac_main_return=return
-
--case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
-- *c*,-n*) ECHO_N= ECHO_C='
--' ECHO_T=' ' ;;
-+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= ;;
- esac
- echo "#! $SHELL" >conftest.sh
- echo "exit 0" >>conftest.sh
- chmod +x conftest.sh
--if { (echo "$as_me:985: PATH=\".;.\"; conftest.sh") >&5
-+if { (echo "$as_me:965: PATH=\".;.\"; conftest.sh") >&5
- (PATH=".;."; conftest.sh) 2>&5
- ac_status=$?
-- echo "$as_me:988: \$? = $ac_status" >&5
-+ echo "$as_me:968: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- ac_path_separator=';'
- else
-@@ -1017,7 +997,7 @@
- fi
- done
- if test -z "$ac_aux_dir"; then
-- { { echo "$as_me:1020: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
-+ { { echo "$as_me:1000: 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
-@@ -1027,11 +1007,11 @@
-
- # Make sure we can run config.sub.
- $ac_config_sub sun4 >/dev/null 2>&1 ||
-- { { echo "$as_me:1030: error: cannot run $ac_config_sub" >&5
-+ { { echo "$as_me:1010: error: cannot run $ac_config_sub" >&5
- echo "$as_me: error: cannot run $ac_config_sub" >&2;}
- { (exit 1); exit 1; }; }
-
--echo "$as_me:1034: checking build system type" >&5
-+echo "$as_me:1014: 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
-@@ -1040,16 +1020,16 @@
- test -z "$ac_cv_build_alias" &&
- ac_cv_build_alias=`$ac_config_guess`
- test -z "$ac_cv_build_alias" &&
-- { { echo "$as_me:1043: error: cannot guess build type; you must specify one" >&5
-+ { { echo "$as_me:1023: 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:1047: error: $ac_config_sub $ac_cv_build_alias failed." >&5
-+ { { echo "$as_me:1027: 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:1052: result: $ac_cv_build" >&5
-+echo "$as_me:1032: 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/'`
-@@ -1057,7 +1037,7 @@
- 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:1060: checking host system type" >&5
-+ echo "$as_me:1040: 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
-@@ -1066,12 +1046,12 @@
- 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:1069: error: $ac_config_sub $ac_cv_host_alias failed" >&5
-+ { { echo "$as_me:1049: 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:1074: result: $ac_cv_host" >&5
-+echo "$as_me:1054: 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/'`
-@@ -1085,7 +1065,8 @@
- system_name="`(hostname) 2>/dev/null`"
- fi
- fi
--test -n "$system_name" && cat >>confdefs.h <<EOF
-+test -n "$system_name" &&
-+cat >>confdefs.h <<EOF
- #define SYSTEM_NAME "$system_name"
- EOF
-
-@@ -1096,13 +1077,13 @@
- fi
-
- test -z "$system_name" && system_name="$cf_cv_system_name"
--test -n "$cf_cv_system_name" && echo "$as_me:1099: result: Configuring for $cf_cv_system_name" >&5
-+test -n "$cf_cv_system_name" && echo "$as_me:1080: 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:1103: result: Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)" >&5
-+ echo "$as_me:1084: 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:1105: error: \"Please remove config.cache and try again.\"" >&5
-+ { { echo "$as_me:1086: 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
-@@ -1120,7 +1101,7 @@
- program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
- rm conftest.sed
-
--echo "$as_me:1123: checking whether ${MAKE-make} sets \${MAKE}" >&5
-+echo "$as_me:1104: 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
-@@ -1140,11 +1121,11 @@
- rm -f conftest.make
- fi
- if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
-- echo "$as_me:1143: result: yes" >&5
-+ echo "$as_me:1124: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- SET_MAKE=
- else
-- echo "$as_me:1147: result: no" >&5
-+ echo "$as_me:1128: result: no" >&5
- echo "${ECHO_T}no" >&6
- SET_MAKE="MAKE=${MAKE-make}"
- fi
-@@ -1158,7 +1139,7 @@
- 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:1161: checking for $ac_word" >&5
-+echo "$as_me:1142: 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
-@@ -1173,7 +1154,7 @@
- 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:1176: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1157: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1181,10 +1162,10 @@
- fi
- CC=$ac_cv_prog_CC
- if test -n "$CC"; then
-- echo "$as_me:1184: result: $CC" >&5
-+ echo "$as_me:1165: result: $CC" >&5
- echo "${ECHO_T}$CC" >&6
- else
-- echo "$as_me:1187: result: no" >&5
-+ echo "$as_me:1168: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1193,7 +1174,7 @@
- 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:1196: checking for $ac_word" >&5
-+echo "$as_me:1177: 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
-@@ -1208,7 +1189,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_CC="gcc"
--echo "$as_me:1211: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1192: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1216,10 +1197,10 @@
- fi
- ac_ct_CC=$ac_cv_prog_ac_ct_CC
- if test -n "$ac_ct_CC"; then
-- echo "$as_me:1219: result: $ac_ct_CC" >&5
-+ echo "$as_me:1200: result: $ac_ct_CC" >&5
- echo "${ECHO_T}$ac_ct_CC" >&6
- else
-- echo "$as_me:1222: result: no" >&5
-+ echo "$as_me:1203: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1232,7 +1213,7 @@
- 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:1235: checking for $ac_word" >&5
-+echo "$as_me:1216: 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
-@@ -1247,7 +1228,7 @@
- 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:1250: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1231: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1255,10 +1236,10 @@
- fi
- CC=$ac_cv_prog_CC
- if test -n "$CC"; then
-- echo "$as_me:1258: result: $CC" >&5
-+ echo "$as_me:1239: result: $CC" >&5
- echo "${ECHO_T}$CC" >&6
- else
-- echo "$as_me:1261: result: no" >&5
-+ echo "$as_me:1242: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1267,7 +1248,7 @@
- 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:1270: checking for $ac_word" >&5
-+echo "$as_me:1251: 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
-@@ -1282,7 +1263,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ac_ct_CC="cc"
--echo "$as_me:1285: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1266: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1290,10 +1271,10 @@
- fi
- ac_ct_CC=$ac_cv_prog_ac_ct_CC
- if test -n "$ac_ct_CC"; then
-- echo "$as_me:1293: result: $ac_ct_CC" >&5
-+ echo "$as_me:1274: result: $ac_ct_CC" >&5
- echo "${ECHO_T}$ac_ct_CC" >&6
- else
-- echo "$as_me:1296: result: no" >&5
-+ echo "$as_me:1277: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1306,7 +1287,7 @@
- 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:1309: checking for $ac_word" >&5
-+echo "$as_me:1290: 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
-@@ -1326,7 +1307,7 @@
- continue
- fi
- ac_cv_prog_CC="cc"
--echo "$as_me:1329: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1310: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1348,10 +1329,10 @@
- fi
- CC=$ac_cv_prog_CC
- if test -n "$CC"; then
-- echo "$as_me:1351: result: $CC" >&5
-+ echo "$as_me:1332: result: $CC" >&5
- echo "${ECHO_T}$CC" >&6
- else
-- echo "$as_me:1354: result: no" >&5
-+ echo "$as_me:1335: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1362,7 +1343,7 @@
- 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:1365: checking for $ac_word" >&5
-+echo "$as_me:1346: 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
-@@ -1377,7 +1358,7 @@
- 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:1380: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1361: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1385,10 +1366,10 @@
- fi
- CC=$ac_cv_prog_CC
- if test -n "$CC"; then
-- echo "$as_me:1388: result: $CC" >&5
-+ echo "$as_me:1369: result: $CC" >&5
- echo "${ECHO_T}$CC" >&6
- else
-- echo "$as_me:1391: result: no" >&5
-+ echo "$as_me:1372: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1401,7 +1382,7 @@
- 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:1404: checking for $ac_word" >&5
-+echo "$as_me:1385: 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
-@@ -1416,7 +1397,7 @@
- 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:1419: found $ac_dir/$ac_word" >&5
-+echo "$as_me:1400: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -1424,10 +1405,10 @@
- fi
- ac_ct_CC=$ac_cv_prog_ac_ct_CC
- if test -n "$ac_ct_CC"; then
-- echo "$as_me:1427: result: $ac_ct_CC" >&5
-+ echo "$as_me:1408: result: $ac_ct_CC" >&5
- echo "${ECHO_T}$ac_ct_CC" >&6
- else
-- echo "$as_me:1430: result: no" >&5
-+ echo "$as_me:1411: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -1439,32 +1420,32 @@
-
- fi
-
--test -z "$CC" && { { echo "$as_me:1442: error: no acceptable cc found in \$PATH" >&5
-+test -z "$CC" && { { echo "$as_me:1423: 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:1447:" \
-+echo "$as_me:1428:" \
- "checking for C compiler version" >&5
- ac_compiler=`set X $ac_compile; echo $2`
--{ (eval echo "$as_me:1450: \"$ac_compiler --version </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:1431: \"$ac_compiler --version </dev/null >&5\"") >&5
- (eval $ac_compiler --version </dev/null >&5) 2>&5
- ac_status=$?
-- echo "$as_me:1453: \$? = $ac_status" >&5
-+ echo "$as_me:1434: \$? = $ac_status" >&5
- (exit $ac_status); }
--{ (eval echo "$as_me:1455: \"$ac_compiler -v </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:1436: \"$ac_compiler -v </dev/null >&5\"") >&5
- (eval $ac_compiler -v </dev/null >&5) 2>&5
- ac_status=$?
-- echo "$as_me:1458: \$? = $ac_status" >&5
-+ echo "$as_me:1439: \$? = $ac_status" >&5
- (exit $ac_status); }
--{ (eval echo "$as_me:1460: \"$ac_compiler -V </dev/null >&5\"") >&5
-+{ (eval echo "$as_me:1441: \"$ac_compiler -V </dev/null >&5\"") >&5
- (eval $ac_compiler -V </dev/null >&5) 2>&5
- ac_status=$?
-- echo "$as_me:1463: \$? = $ac_status" >&5
-+ echo "$as_me:1444: \$? = $ac_status" >&5
- (exit $ac_status); }
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 1467 "configure"
-+#line 1448 "configure"
- #include "confdefs.h"
-
- int
-@@ -1480,13 +1461,13 @@
- # 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:1483: checking for C compiler default output" >&5
-+echo "$as_me:1464: 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:1486: \"$ac_link_default\"") >&5
-+if { (eval echo "$as_me:1467: \"$ac_link_default\"") >&5
- (eval $ac_link_default) 2>&5
- ac_status=$?
-- echo "$as_me:1489: \$? = $ac_status" >&5
-+ echo "$as_me:1470: \$? = $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
-@@ -1509,34 +1490,34 @@
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--{ { echo "$as_me:1512: error: C compiler cannot create executables" >&5
-+{ { echo "$as_me:1493: 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:1518: result: $ac_file" >&5
-+echo "$as_me:1499: 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:1523: checking whether the C compiler works" >&5
-+echo "$as_me:1504: 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:1529: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1510: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1532: \$? = $ac_status" >&5
-+ echo "$as_me:1513: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
-- { { echo "$as_me:1539: error: cannot run C compiled programs.
-+ { { echo "$as_me:1520: 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;}
-@@ -1544,24 +1525,24 @@
- fi
- fi
- fi
--echo "$as_me:1547: result: yes" >&5
-+echo "$as_me:1528: result: yes" >&5
- echo "${ECHO_T}yes" >&6
-
- 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:1554: checking whether we are cross compiling" >&5
-+echo "$as_me:1535: checking whether we are cross compiling" >&5
- echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
--echo "$as_me:1556: result: $cross_compiling" >&5
-+echo "$as_me:1537: result: $cross_compiling" >&5
- echo "${ECHO_T}$cross_compiling" >&6
-
--echo "$as_me:1559: checking for executable suffix" >&5
-+echo "$as_me:1540: checking for executable suffix" >&5
- echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
--if { (eval echo "$as_me:1561: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:1542: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:1564: \$? = $ac_status" >&5
-+ echo "$as_me:1545: \$? = $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
-@@ -1577,25 +1558,25 @@
- esac
- done
- else
-- { { echo "$as_me:1580: error: cannot compute EXEEXT: cannot compile and link" >&5
-+ { { echo "$as_me:1561: 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:1586: result: $ac_cv_exeext" >&5
-+echo "$as_me:1567: result: $ac_cv_exeext" >&5
- echo "${ECHO_T}$ac_cv_exeext" >&6
-
- rm -f conftest.$ac_ext
- EXEEXT=$ac_cv_exeext
- ac_exeext=$EXEEXT
--echo "$as_me:1592: checking for object suffix" >&5
-+echo "$as_me:1573: 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 1598 "configure"
-+#line 1579 "configure"
- #include "confdefs.h"
-
- int
-@@ -1607,10 +1588,10 @@
- }
- _ACEOF
- rm -f conftest.o conftest.obj
--if { (eval echo "$as_me:1610: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1591: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1613: \$? = $ac_status" >&5
-+ echo "$as_me:1594: \$? = $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
-@@ -1622,24 +1603,24 @@
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--{ { echo "$as_me:1625: error: cannot compute OBJEXT: cannot compile" >&5
-+{ { echo "$as_me:1606: 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
- fi
--echo "$as_me:1632: result: $ac_cv_objext" >&5
-+echo "$as_me:1613: result: $ac_cv_objext" >&5
- echo "${ECHO_T}$ac_cv_objext" >&6
- OBJEXT=$ac_cv_objext
- ac_objext=$OBJEXT
--echo "$as_me:1636: checking whether we are using the GNU C compiler" >&5
-+echo "$as_me:1617: 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 1642 "configure"
-+#line 1623 "configure"
- #include "confdefs.h"
-
- int
-@@ -1654,16 +1635,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1657: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1638: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1660: \$? = $ac_status" >&5
-+ echo "$as_me:1641: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1663: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1644: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1666: \$? = $ac_status" >&5
-+ echo "$as_me:1647: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_compiler_gnu=yes
- else
-@@ -1675,19 +1656,19 @@
- ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
- fi
--echo "$as_me:1678: result: $ac_cv_c_compiler_gnu" >&5
-+echo "$as_me:1659: 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:1684: checking whether $CC accepts -g" >&5
-+echo "$as_me:1665: 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 1690 "configure"
-+#line 1671 "configure"
- #include "confdefs.h"
-
- int
-@@ -1699,16 +1680,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1702: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1683: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1705: \$? = $ac_status" >&5
-+ echo "$as_me:1686: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1708: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1689: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1711: \$? = $ac_status" >&5
-+ echo "$as_me:1692: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_prog_cc_g=yes
- else
-@@ -1718,7 +1699,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:1721: result: $ac_cv_prog_cc_g" >&5
-+echo "$as_me:1702: 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
-@@ -1745,16 +1726,16 @@
- #endif
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1748: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1729: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1751: \$? = $ac_status" >&5
-+ echo "$as_me:1732: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1754: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1735: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1757: \$? = $ac_status" >&5
-+ echo "$as_me:1738: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- for ac_declaration in \
- ''\
-@@ -1766,7 +1747,7 @@
- 'void exit (int);'
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 1769 "configure"
-+#line 1750 "configure"
- #include "confdefs.h"
- #include <stdlib.h>
- $ac_declaration
-@@ -1779,16 +1760,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1782: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1763: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1785: \$? = $ac_status" >&5
-+ echo "$as_me:1766: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1788: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1769: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1791: \$? = $ac_status" >&5
-+ echo "$as_me:1772: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -1798,7 +1779,7 @@
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
--#line 1801 "configure"
-+#line 1782 "configure"
- #include "confdefs.h"
- $ac_declaration
- int
-@@ -1810,16 +1791,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:1813: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:1794: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:1816: \$? = $ac_status" >&5
-+ echo "$as_me:1797: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:1819: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:1800: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:1822: \$? = $ac_status" >&5
-+ echo "$as_me:1803: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
- else
-@@ -1847,13 +1828,214 @@
- ac_compiler_gnu=$ac_cv_c_compiler_gnu
- ac_main_return=return
-
-+GCC_VERSION=none
-+if test "$GCC" = yes ; then
-+ echo "$as_me:1833: 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:1837: result: $GCC_VERSION" >&5
-+echo "${ECHO_T}$GCC_VERSION" >&6
-+fi
-+
-+echo "$as_me:1841: 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 1849 "configure"
-+#include "confdefs.h"
-+#include <stdarg.h>
-+#include <stdio.h>
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-+struct buf { int x; };
-+FILE * (*rcsopen) (struct buf *, struct stat *, int);
-+static char *e (p, i)
-+ char **p;
-+ int i;
-+{
-+ return p[i];
-+}
-+static char *f (char * (*g) (char **, int), char **p, ...)
-+{
-+ char *s;
-+ va_list v;
-+ va_start (v,p);
-+ s = g (p, va_arg (v,int));
-+ va_end (v);
-+ return s;
-+}
-+int test (int i, double x);
-+struct s1 {int (*f) (int a);};
-+struct s2 {int (*f) (double a);};
-+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-+int argc;
-+char **argv;
-+int
-+main ()
-+{
-+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+# Don't try gcc -ansi; that turns off useful extensions and
-+# breaks some systems' header files.
-+# AIX -qlanglvl=ansi
-+# Ultrix and OSF/1 -std1
-+# HP-UX 10.20 and later -Ae
-+# HP-UX older versions -Aa -D_HPUX_SOURCE
-+# SVR4 -Xc -D__EXTENSIONS__
-+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:1898: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:1901: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:1904: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:1907: \$? = $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
-+fi
-+rm -f conftest.$ac_objext
-+done
-+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:1924: result: none needed" >&5
-+echo "${ECHO_T}none needed" >&6 ;;
-+ *)
-+ echo "$as_me:1927: 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}
-+
-+echo "$as_me:1935: checking \$CC variable" >&5
-+echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6
-+case "$CC" in #(vi
-+*[\ \ ]-[IUD]*)
-+ echo "$as_me:1939: result: broken" >&5
-+echo "${ECHO_T}broken" >&6
-+ { echo "$as_me:1941: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5
-+echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;}
-+ # humor him...
-+ cf_flags=`echo "$CC" | sed -e 's/^[^ ]*[ ]//'`
-+ CC=`echo "$CC" | sed -e 's/[ ].*//'`
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_flags
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+ ;;
-+*)
-+ echo "$as_me:2027: 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_compiler_gnu=$ac_cv_c_compiler_gnu
- ac_main_return=return
--echo "$as_me:1856: checking how to run the C preprocessor" >&5
-+echo "$as_me:2038: 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
-@@ -1874,18 +2056,18 @@
- # 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 1877 "configure"
-+#line 2059 "configure"
- #include "confdefs.h"
- #include <assert.h>
- Syntax error
- _ACEOF
--if { (eval echo "$as_me:1882: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:2064: \"$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:1888: \$? = $ac_status" >&5
-+ echo "$as_me:2070: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -1908,17 +2090,17 @@
- # OK, works on sane cases. Now check whether non-existent headers
- # can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
--#line 1911 "configure"
-+#line 2093 "configure"
- #include "confdefs.h"
- #include <ac_nonexistent.h>
- _ACEOF
--if { (eval echo "$as_me:1915: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:2097: \"$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:1921: \$? = $ac_status" >&5
-+ echo "$as_me:2103: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -1955,7 +2137,7 @@
- else
- ac_cv_prog_CPP=$CPP
- fi
--echo "$as_me:1958: result: $CPP" >&5
-+echo "$as_me:2140: result: $CPP" >&5
- echo "${ECHO_T}$CPP" >&6
- ac_preproc_ok=false
- for ac_c_preproc_warn_flag in '' yes
-@@ -1965,18 +2147,18 @@
- # 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 1968 "configure"
-+#line 2150 "configure"
- #include "confdefs.h"
- #include <assert.h>
- Syntax error
- _ACEOF
--if { (eval echo "$as_me:1973: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:2155: \"$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:1979: \$? = $ac_status" >&5
-+ echo "$as_me:2161: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -1999,17 +2181,17 @@
- # OK, works on sane cases. Now check whether non-existent headers
- # can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
--#line 2002 "configure"
-+#line 2184 "configure"
- #include "confdefs.h"
- #include <ac_nonexistent.h>
- _ACEOF
--if { (eval echo "$as_me:2006: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:2188: \"$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:2012: \$? = $ac_status" >&5
-+ echo "$as_me:2194: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -2037,7 +2219,7 @@
- if $ac_preproc_ok; then
- :
- else
-- { { echo "$as_me:2040: error: C preprocessor \"$CPP\" fails sanity check" >&5
-+ { { echo "$as_me:2222: error: C preprocessor \"$CPP\" fails sanity check" >&5
- echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
- { (exit 1); exit 1; }; }
- fi
-@@ -2053,7 +2235,7 @@
- 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:2056: checking for $ac_word" >&5
-+echo "$as_me:2238: 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
-@@ -2068,7 +2250,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_AWK="$ac_prog"
--echo "$as_me:2071: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2253: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2076,10 +2258,10 @@
- fi
- AWK=$ac_cv_prog_AWK
- if test -n "$AWK"; then
-- echo "$as_me:2079: result: $AWK" >&5
-+ echo "$as_me:2261: result: $AWK" >&5
- echo "${ECHO_T}$AWK" >&6
- else
-- echo "$as_me:2082: result: no" >&5
-+ echo "$as_me:2264: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -2098,7 +2280,7 @@
- # 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:2101: checking for a BSD compatible install" >&5
-+echo "$as_me:2283: 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
-@@ -2147,7 +2329,7 @@
- INSTALL=$ac_install_sh
- fi
- fi
--echo "$as_me:2150: result: $INSTALL" >&5
-+echo "$as_me:2332: result: $INSTALL" >&5
- echo "${ECHO_T}$INSTALL" >&6
-
- # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-@@ -2172,7 +2354,7 @@
- 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:2175: checking for $ac_word" >&5
-+echo "$as_me:2357: 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
-@@ -2187,7 +2369,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_LINT="$ac_prog"
--echo "$as_me:2190: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2372: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2195,17 +2377,17 @@
- fi
- LINT=$ac_cv_prog_LINT
- if test -n "$LINT"; then
-- echo "$as_me:2198: result: $LINT" >&5
-+ echo "$as_me:2380: result: $LINT" >&5
- echo "${ECHO_T}$LINT" >&6
- else
-- echo "$as_me:2201: result: no" >&5
-+ echo "$as_me:2383: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
- test -n "$LINT" && break
- done
-
--echo "$as_me:2208: checking if filesystem supports mixed-case filenames" >&5
-+echo "$as_me:2390: 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
-@@ -2213,7 +2395,7 @@
-
- if test "$cross_compiling" = yes ; then
- case $target_alias in #(vi
-- *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
-+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-msys*|*-mingw*|*-uwin*) #(vi
- cf_cv_mixedcase=no
- ;;
- *)
-@@ -2232,9 +2414,10 @@
- fi
-
- fi
--echo "$as_me:2235: result: $cf_cv_mixedcase" >&5
-+echo "$as_me:2417: result: $cf_cv_mixedcase" >&5
- echo "${ECHO_T}$cf_cv_mixedcase" >&6
--test "$cf_cv_mixedcase" = yes && cat >>confdefs.h <<\EOF
-+test "$cf_cv_mixedcase" = yes &&
-+cat >>confdefs.h <<\EOF
- #define MIXEDCASE_FILENAMES 1
- EOF
-
-@@ -2242,7 +2425,7 @@
- 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:2245: checking for $ac_word" >&5
-+echo "$as_me:2428: 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
-@@ -2257,7 +2440,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_CTAGS="$ac_prog"
--echo "$as_me:2260: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2443: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2265,10 +2448,10 @@
- fi
- CTAGS=$ac_cv_prog_CTAGS
- if test -n "$CTAGS"; then
-- echo "$as_me:2268: result: $CTAGS" >&5
-+ echo "$as_me:2451: result: $CTAGS" >&5
- echo "${ECHO_T}$CTAGS" >&6
- else
-- echo "$as_me:2271: result: no" >&5
-+ echo "$as_me:2454: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -2279,7 +2462,7 @@
- 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:2282: checking for $ac_word" >&5
-+echo "$as_me:2465: 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
-@@ -2294,7 +2477,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_ETAGS="$ac_prog"
--echo "$as_me:2297: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2480: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2302,10 +2485,10 @@
- fi
- ETAGS=$ac_cv_prog_ETAGS
- if test -n "$ETAGS"; then
-- echo "$as_me:2305: result: $ETAGS" >&5
-+ echo "$as_me:2488: result: $ETAGS" >&5
- echo "${ECHO_T}$ETAGS" >&6
- else
-- echo "$as_me:2308: result: no" >&5
-+ echo "$as_me:2491: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -2314,7 +2497,7 @@
-
- # 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:2317: checking for $ac_word" >&5
-+echo "$as_me:2500: 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
-@@ -2329,7 +2512,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_MAKE_LOWER_TAGS="yes"
--echo "$as_me:2332: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2515: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2338,17 +2521,17 @@
- fi
- MAKE_LOWER_TAGS=$ac_cv_prog_MAKE_LOWER_TAGS
- if test -n "$MAKE_LOWER_TAGS"; then
-- echo "$as_me:2341: result: $MAKE_LOWER_TAGS" >&5
-+ echo "$as_me:2524: result: $MAKE_LOWER_TAGS" >&5
- echo "${ECHO_T}$MAKE_LOWER_TAGS" >&6
- else
-- echo "$as_me:2344: result: no" >&5
-+ echo "$as_me:2527: 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:2351: checking for $ac_word" >&5
-+echo "$as_me:2534: 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
-@@ -2363,7 +2546,7 @@
- test -z "$ac_dir" && ac_dir=.
- $as_executable_p "$ac_dir/$ac_word" || continue
- ac_cv_prog_MAKE_UPPER_TAGS="yes"
--echo "$as_me:2366: found $ac_dir/$ac_word" >&5
-+echo "$as_me:2549: found $ac_dir/$ac_word" >&5
- break
- done
-
-@@ -2372,10 +2555,10 @@
- fi
- MAKE_UPPER_TAGS=$ac_cv_prog_MAKE_UPPER_TAGS
- if test -n "$MAKE_UPPER_TAGS"; then
-- echo "$as_me:2375: result: $MAKE_UPPER_TAGS" >&5
-+ echo "$as_me:2558: result: $MAKE_UPPER_TAGS" >&5
- echo "${ECHO_T}$MAKE_UPPER_TAGS" >&6
- else
-- echo "$as_me:2378: result: no" >&5
-+ echo "$as_me:2561: result: no" >&5
- echo "${ECHO_T}no" >&6
- fi
-
-@@ -2395,14 +2578,14 @@
- MAKE_LOWER_TAGS="#"
- fi
-
--echo "$as_me:2398: checking if -lm needed for math functions" >&5
-+echo "$as_me:2581: 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 2405 "configure"
-+#line 2588 "configure"
- #include "confdefs.h"
-
- #include <stdio.h>
-@@ -2411,22 +2594,22 @@
- int
- main ()
- {
--double x = rand(); printf("result = %g\n", sin(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:2420: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:2603: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:2423: \$? = $ac_status" >&5
-+ echo "$as_me:2606: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:2426: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:2609: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2429: \$? = $ac_status" >&5
-+ echo "$as_me:2612: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_need_libm=no
- else
-@@ -2436,13 +2619,15 @@
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:2439: result: $cf_cv_need_libm" >&5
-+echo "$as_me:2622: result: $cf_cv_need_libm" >&5
- echo "${ECHO_T}$cf_cv_need_libm" >&6
- if test "$cf_cv_need_libm" = yes
- then
- MATH_LIB=-lm
- fi
-
-+top_builddir=`pwd`
-+
- CC_G_OPT="-g"
- CC_SHARED_OPTS=unknown
- CPPFLAGS="$CPPFLAGS"
-@@ -2464,427 +2649,308 @@
- TEST_ARGS=""
- TEST_DEPS=""
- TEST_LIBS=""
--TINFO_ARGS='$(LIBS_CURSES)'
-+TINFO_LDFLAGS=''
-+TINFO_LIBS='$(LIBS_CURSES)'
- cf_cv_abi_version=""
- cf_cv_rel_version=""
-+includesubdir=""
-
- cf_cv_screen=curses
- cf_cv_libtype=
-
--echo "$as_me:2474: checking for ${CC:-cc} option to accept ANSI C" >&5
--echo $ECHO_N "checking for ${CC:-cc} option to accept ANSI C... $ECHO_C" >&6
--if test "${cf_cv_ansi_cc+set}" = set; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
--else
-+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:2679: checking for $CC __attribute__ directives..." >&5
-+echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
-+cat > conftest.$ac_ext <<EOF
-+#line 2682 "${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_cv_ansi_cc=no
--cf_save_CFLAGS="$CFLAGS"
--cf_save_CPPFLAGS="$CPPFLAGS"
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX -Aa -D_HPUX_SOURCE
--# SVR4 -Xc
--# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes)
--for cf_arg in "-DCC_HAS_PROTOS" \
-- "" \
-- -qlanglvl=ansi \
-- -std1 \
-- -Ae \
-- "-Aa -D_HPUX_SOURCE" \
-- -Xc
--do
--
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
--
--for cf_add_cflags in $cf_arg
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-+cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
-+ cf_directive="__attribute__(($cf_attribute))"
-+ echo "checking for $CC $cf_directive" 1>&5
-
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-+ case $cf_attribute in #(vi
-+ printf) #(vi
-+ cf_printf_attribute=yes
-+ cat >conftest.h <<EOF
-+#define GCC_$cf_ATTRIBUTE 1
-+EOF
- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-+ scanf) #(vi
-+ cf_scanf_attribute=yes
-+ cat >conftest.h <<EOF
-+#define GCC_$cf_ATTRIBUTE 1
-+EOF
- ;;
- *) #(vi
-- case $cf_add_cflags in #(vi
-- -D*)
-- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
-+ cat >conftest.h <<EOF
-+#define GCC_$cf_ATTRIBUTE $cf_directive
-+EOF
-+ ;;
-+ esac
-
--CPPFLAGS=`echo "$CPPFLAGS" | \
-- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
-- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
-+ if { (eval echo "$as_me:2731: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:2734: \$? = $ac_status" >&5
-+ (exit $ac_status); }; then
-+ test -n "$verbose" && echo "$as_me:2736: result: ... $cf_attribute" >&5
-+echo "${ECHO_T}... $cf_attribute" >&6
-+ cat conftest.h >>confdefs.h
-+ case $cf_attribute in #(vi
-+ noreturn) #(vi
-+
-+cat >>confdefs.h <<EOF
-+#define GCC_NORETURN $cf_directive
-+EOF
-
- ;;
-- esac
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ printf) #(vi
-+ cf_value='/* nothing */'
-+ if test "$cf_printf_attribute" != no ; then
-+ cf_value='__attribute__((format(printf,fmt,var)))'
-
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-+cat >>confdefs.h <<\EOF
-+#define GCC_PRINTF 1
-+EOF
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
-+ fi
-
--if test -n "$cf_new_cflags" ; then
-+cat >>confdefs.h <<EOF
-+#define GCC_PRINTFLIKE(fmt,var) $cf_value
-+EOF
-
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
-+ ;;
-+ scanf) #(vi
-+ cf_value='/* nothing */'
-+ if test "$cf_scanf_attribute" != no ; then
-+ cf_value='__attribute__((format(scanf,fmt,var)))'
-
--if test -n "$cf_new_cppflags" ; then
-+cat >>confdefs.h <<\EOF
-+#define GCC_SCANF 1
-+EOF
-
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
-+ fi
-
--if test -n "$cf_new_extra_cppflags" ; then
-+cat >>confdefs.h <<EOF
-+#define GCC_SCANFLIKE(fmt,var) $cf_value
-+EOF
-
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+ ;;
-+ unused) #(vi
-+
-+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
-
-- cat >conftest.$ac_ext <<_ACEOF
--#line 2578 "configure"
-+cf_XOPEN_SOURCE=500
-+cf_POSIX_C_SOURCE=199506L
-+cf_xopen_source=
-+
-+case $host_os in #(vi
-+aix[4-7]*) #(vi
-+ cf_xopen_source="-D_ALL_SOURCE"
-+ ;;
-+cygwin|msys) #(vi
-+ cf_XOPEN_SOURCE=600
-+ ;;
-+darwin[0-8].*) #(vi
-+ cf_xopen_source="-D_APPLE_C_SOURCE"
-+ ;;
-+darwin*) #(vi
-+ cf_xopen_source="-D_DARWIN_C_SOURCE"
-+ cf_XOPEN_SOURCE=
-+ ;;
-+freebsd*|dragonfly*) #(vi
-+ # 5.x headers associate
-+ # _XOPEN_SOURCE=600 with _POSIX_C_SOURCE=200112L
-+ # _XOPEN_SOURCE=500 with _POSIX_C_SOURCE=199506L
-+ cf_POSIX_C_SOURCE=200112L
-+ cf_XOPEN_SOURCE=600
-+ cf_xopen_source="-D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-+ ;;
-+hpux11*) #(vi
-+ cf_xopen_source="-D_HPUX_SOURCE -D_XOPEN_SOURCE=500"
-+ ;;
-+hpux*) #(vi
-+ cf_xopen_source="-D_HPUX_SOURCE"
-+ ;;
-+irix[56].*) #(vi
-+ cf_xopen_source="-D_SGI_SOURCE"
-+ cf_XOPEN_SOURCE=
-+ ;;
-+linux*|gnu*|mint*|k*bsd*-gnu) #(vi
-+
-+echo "$as_me:2833: 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 2840 "configure"
- #include "confdefs.h"
-+#include <sys/types.h>
-+int
-+main ()
-+{
-
--#ifndef CC_HAS_PROTOS
--#if !defined(__STDC__) || (__STDC__ != 1)
--choke me
--#endif
-+#ifndef _XOPEN_SOURCE
-+make an error
- #endif
--
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:2855: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:2858: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:2861: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:2864: \$? = $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
-+cf_save="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 2873 "configure"
-+#include "confdefs.h"
-+#include <sys/types.h>
- int
- main ()
- {
-
-- int test (int i, double x);
-- struct s1 {int (*f) (int a);};
-- struct s2 {int (*f) (double a);};
-+#ifdef _XOPEN_SOURCE
-+make an error
-+#endif
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2599: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:2888: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:2602: \$? = $ac_status" >&5
-+ echo "$as_me:2891: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2605: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:2894: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2608: \$? = $ac_status" >&5
-+ echo "$as_me:2897: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ansi_cc="$cf_arg"; break
-+ cf_cv_gnu_source=no
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+cf_cv_gnu_source=yes
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
--done
--CFLAGS="$cf_save_CFLAGS"
--CPPFLAGS="$cf_save_CPPFLAGS"
-+ CPPFLAGS="$cf_save"
-
- fi
--echo "$as_me:2621: result: $cf_cv_ansi_cc" >&5
--echo "${ECHO_T}$cf_cv_ansi_cc" >&6
-+rm -f conftest.$ac_objext conftest.$ac_ext
-
--if test "$cf_cv_ansi_cc" != "no"; then
--if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
-+fi
-+echo "$as_me:2912: result: $cf_cv_gnu_source" >&5
-+echo "${ECHO_T}$cf_cv_gnu_source" >&6
-+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
-
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
-+ ;;
-+minix*) #(vi
-+ cf_xopen_source="-D_NETBSD_SOURCE" # POSIX.1-2001 features are ifdef'd with this...
-+ ;;
-+mirbsd*) #(vi
-+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types
-+ cf_XOPEN_SOURCE=
-
--for cf_add_cflags in $cf_cv_ansi_cc
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-+cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
-+cf_save_CFLAGS="$CFLAGS"
-+cf_save_CPPFLAGS="$CPPFLAGS"
-
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -D*)
-- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
-+cf_trim_CFLAGS=`echo "$cf_save_CFLAGS" | \
-+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-
--CPPFLAGS=`echo "$CPPFLAGS" | \
-- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
-- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
-+cf_trim_CPPFLAGS=`echo "$cf_save_CPPFLAGS" | \
-+ sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-
-- ;;
-- esac
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
--
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
--
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
--
--if test -n "$cf_new_extra_cppflags" ; then
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
--fi
--
--else
-- cat >>confdefs.h <<\EOF
--#define CC_HAS_PROTOS 1
--EOF
--
--fi
--fi
--
--if test "$cf_cv_ansi_cc" = "no"; then
-- { { echo "$as_me:2714: error: Your compiler does not appear to recognize prototypes.
--You have the following choices:
-- a. adjust your compiler options
-- b. get an up-to-date compiler
-- c. use a wrapper such as unproto" >&5
--echo "$as_me: error: Your compiler does not appear to recognize prototypes.
--You have the following choices:
-- a. adjust your compiler options
-- b. get an up-to-date compiler
-- c. use a wrapper such as unproto" >&2;}
-- { (exit 1); exit 1; }; }
--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:2745: checking for $CC __attribute__ directives..." >&5
--echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
--cat > conftest.$ac_ext <<EOF
--#line 2748 "${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 #(vi
-- printf) #(vi
-- cf_printf_attribute=yes
-- cat >conftest.h <<EOF
--#define GCC_$cf_ATTRIBUTE 1
--EOF
-- ;;
-- scanf) #(vi
-- cf_scanf_attribute=yes
-- cat >conftest.h <<EOF
--#define GCC_$cf_ATTRIBUTE 1
--EOF
-- ;;
-- *) #(vi
-- cat >conftest.h <<EOF
--#define GCC_$cf_ATTRIBUTE $cf_directive
--EOF
-- ;;
-- esac
--
-- if { (eval echo "$as_me:2797: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:2800: \$? = $ac_status" >&5
-- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:2802: result: ... $cf_attribute" >&5
--echo "${ECHO_T}... $cf_attribute" >&6
-- cat conftest.h >>confdefs.h
-- case $cf_attribute in #(vi
-- printf) #(vi
-- if test "$cf_printf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
--EOF
-- fi
-- ;;
-- scanf) #(vi
-- if test "$cf_scanf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
--EOF
-- fi
-- ;;
-- esac
-- fi
-- done
--else
-- fgrep define conftest.i >>confdefs.h
--fi
--rm -rf conftest*
--fi
--
--cf_XOPEN_SOURCE=500
--cf_POSIX_C_SOURCE=199506L
--cf_xopen_source=
--
--case $host_os in #(vi
--aix[456]*) #(vi
-- cf_xopen_source="-D_ALL_SOURCE"
-- ;;
--cygwin) #(vi
-- cf_XOPEN_SOURCE=600
-- ;;
--darwin[0-8].*) #(vi
-- cf_xopen_source="-D_APPLE_C_SOURCE"
-- ;;
--darwin*) #(vi
-- cf_xopen_source="-D_DARWIN_C_SOURCE"
-- ;;
--freebsd*|dragonfly*) #(vi
-- # 5.x headers associate
-- # _XOPEN_SOURCE=600 with _POSIX_C_SOURCE=200112L
-- # _XOPEN_SOURCE=500 with _POSIX_C_SOURCE=199506L
-- cf_POSIX_C_SOURCE=200112L
-- cf_XOPEN_SOURCE=600
-- cf_xopen_source="-D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- ;;
--hpux11*) #(vi
-- cf_xopen_source="-D_HPUX_SOURCE -D_XOPEN_SOURCE=500"
-- ;;
--hpux*) #(vi
-- cf_xopen_source="-D_HPUX_SOURCE"
-- ;;
--irix[56].*) #(vi
-- cf_xopen_source="-D_SGI_SOURCE"
-- ;;
--linux*|gnu*|mint*|k*bsd*-gnu) #(vi
--
--echo "$as_me:2873: 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 "$as_me:2937: 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
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 2880 "configure"
-+echo "${as_me:-configure}:2943: testing if the symbol is already defined go no further ..." 1>&5
-+
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 2946 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
- main ()
- {
-
--#ifndef _XOPEN_SOURCE
-+#ifndef _POSIX_C_SOURCE
- make an error
- #endif
- ;
-@@ -2892,32 +2958,44 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2895: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:2961: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:2898: \$? = $ac_status" >&5
-+ echo "$as_me:2964: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2901: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:2967: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2904: \$? = $ac_status" >&5
-+ echo "$as_me:2970: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_gnu_source=no
-+ cf_cv_posix_c_source=no
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_save="$CPPFLAGS"
-- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 2913 "configure"
-+cf_want_posix_source=no
-+ case .$cf_POSIX_C_SOURCE in #(vi
-+ .[12]??*) #(vi
-+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
-+ ;;
-+ .2) #(vi
-+ cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE"
-+ cf_want_posix_source=yes
-+ ;;
-+ .*)
-+ cf_want_posix_source=yes
-+ ;;
-+ esac
-+ if test "$cf_want_posix_source" = yes ; then
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 2991 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
- main ()
- {
-
--#ifdef _XOPEN_SOURCE
-+#ifdef _POSIX_SOURCE
- make an error
- #endif
- ;
-@@ -2925,75 +3003,42 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:2928: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:3006: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:2931: \$? = $ac_status" >&5
-+ echo "$as_me:3009: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:2934: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3012: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:2937: \$? = $ac_status" >&5
-+ echo "$as_me:3015: \$? = $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
--cf_cv_gnu_source=yes
-+cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE"
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS="$cf_save"
-+ fi
-
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+echo "${as_me:-configure}:3026: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
-
--fi
--echo "$as_me:2952: result: $cf_cv_gnu_source" >&5
--echo "${ECHO_T}$cf_cv_gnu_source" >&6
--test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
-+ CFLAGS="$cf_trim_CFLAGS"
-+ CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
-
-- ;;
--mirbsd*) #(vi
-- # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h>
-- ;;
--netbsd*) #(vi
-- # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
-- ;;
--openbsd*) #(vi
-- # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
-- ;;
--osf[45]*) #(vi
-- cf_xopen_source="-D_OSF_SOURCE"
-- ;;
--nto-qnx*) #(vi
-- cf_xopen_source="-D_QNX_SOURCE"
-- ;;
--sco*) #(vi
-- # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
-- ;;
--solaris2.1[0-9]) #(vi
-- cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- ;;
--solaris2.[1-9]) #(vi
-- cf_xopen_source="-D__EXTENSIONS__"
-- ;;
--*)
-- echo "$as_me:2982: 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
-+echo "${as_me:-configure}:3031: testing if the second compile does not leave our definition intact error ..." 1>&5
-
-- cat >conftest.$ac_ext <<_ACEOF
--#line 2989 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 3034 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
- main ()
- {
-
--#ifndef _XOPEN_SOURCE
-+#ifndef _POSIX_C_SOURCE
- make an error
- #endif
- ;
-@@ -3001,49 +3046,222 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3004: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:3049: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3007: \$? = $ac_status" >&5
-+ echo "$as_me:3052: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3010: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3055: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3013: \$? = $ac_status" >&5
-+ echo "$as_me:3058: \$? = $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
--cf_save="$CPPFLAGS"
-- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 3022 "configure"
--#include "confdefs.h"
--#include <sys/types.h>
--int
--main ()
--{
-+cf_cv_posix_c_source=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CFLAGS="$cf_save_CFLAGS"
-+ CPPFLAGS="$cf_save_CPPFLAGS"
-
--#ifdef _XOPEN_SOURCE
--make an error
--#endif
-- ;
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+echo "$as_me:3074: 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
-+ CFLAGS="$cf_trim_CFLAGS"
-+ CPPFLAGS="$cf_trim_CPPFLAGS"
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_cv_posix_c_source
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+fi
-+
-+ ;;
-+netbsd*) #(vi
-+ 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]*) #(vi
-+ # 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
-+ ;;
-+openbsd*) #(vi
-+ # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
-+ ;;
-+osf[45]*) #(vi
-+ cf_xopen_source="-D_OSF_SOURCE"
-+ ;;
-+nto-qnx*) #(vi
-+ cf_xopen_source="-D_QNX_SOURCE"
-+ ;;
-+sco*) #(vi
-+ # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
-+ ;;
-+solaris2.*) #(vi
-+ cf_xopen_source="-D__EXTENSIONS__"
-+ cf_cv_xopen_source=broken
-+ ;;
-+sysv4.2uw2.*) # Novell/SCO UnixWare 2.x (tested on 2.1.2)
-+ cf_XOPEN_SOURCE=
-+ cf_POSIX_C_SOURCE=
-+ ;;
-+*)
-+
-+echo "$as_me:3192: 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 3199 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+
-+int
-+main ()
-+{
-+
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:3218: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:3221: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:3224: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:3227: \$? = $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
-+cf_save="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 3236 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+
-+int
-+main ()
-+{
-+
-+#ifdef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3037: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:3255: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3040: \$? = $ac_status" >&5
-+ echo "$as_me:3258: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3043: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3261: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3046: \$? = $ac_status" >&5
-+ echo "$as_me:3264: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_xopen_source=no
- else
-@@ -3058,9 +3276,10 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:3061: result: $cf_cv_xopen_source" >&5
-+echo "$as_me:3279: result: $cf_cv_xopen_source" >&5
- echo "${ECHO_T}$cf_cv_xopen_source" >&6
-- if test "$cf_cv_xopen_source" != no ; then
-+
-+if test "$cf_cv_xopen_source" != no ; then
-
- CFLAGS=`echo "$CFLAGS" | \
- sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-@@ -3070,7 +3289,7 @@
- sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
- -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-
-- cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-
- cf_fix_cppflags=no
- cf_new_cflags=
-@@ -3087,7 +3306,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -3128,7 +3347,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -3150,7 +3369,7 @@
- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
-- fi
-+fi
-
- cf_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE
-
-@@ -3165,16 +3384,16 @@
- sed -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
- -e 's/-[UD]'"_POSIX_C_SOURCE"'\(=[^ ]*\)\?$//g'`
-
--echo "$as_me:3168: checking if we should define _POSIX_C_SOURCE" >&5
-+echo "$as_me:3387: 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}:3174: testing if the symbol is already defined go no further ..." 1>&5
-+echo "${as_me:-configure}:3393: testing if the symbol is already defined go no further ..." 1>&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 3177 "configure"
-+#line 3396 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -3189,16 +3408,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3192: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:3411: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3195: \$? = $ac_status" >&5
-+ echo "$as_me:3414: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3198: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3417: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3201: \$? = $ac_status" >&5
-+ echo "$as_me:3420: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_posix_c_source=no
- else
-@@ -3219,7 +3438,7 @@
- esac
- if test "$cf_want_posix_source" = yes ; then
- cat >conftest.$ac_ext <<_ACEOF
--#line 3222 "configure"
-+#line 3441 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -3234,16 +3453,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3237: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:3456: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3240: \$? = $ac_status" >&5
-+ echo "$as_me:3459: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3243: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3462: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3246: \$? = $ac_status" >&5
-+ echo "$as_me:3465: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -3254,15 +3473,15 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
- fi
-
--echo "${as_me:-configure}:3257: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
-+echo "${as_me:-configure}:3476: testing ifdef from value $cf_POSIX_C_SOURCE ..." 1>&5
-
- CFLAGS="$cf_trim_CFLAGS"
- CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source"
-
--echo "${as_me:-configure}:3262: testing if the second compile does not leave our definition intact error ..." 1>&5
-+echo "${as_me:-configure}:3481: testing if the second compile does not leave our definition intact error ..." 1>&5
-
- cat >conftest.$ac_ext <<_ACEOF
--#line 3265 "configure"
-+#line 3484 "configure"
- #include "confdefs.h"
- #include <sys/types.h>
- int
-@@ -3277,16 +3496,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3280: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:3499: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3283: \$? = $ac_status" >&5
-+ echo "$as_me:3502: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3286: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3505: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3289: \$? = $ac_status" >&5
-+ echo "$as_me:3508: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -3302,7 +3521,7 @@
- rm -f conftest.$ac_objext conftest.$ac_ext
-
- fi
--echo "$as_me:3305: result: $cf_cv_posix_c_source" >&5
-+echo "$as_me:3524: 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
-@@ -3324,7 +3543,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -3365,7 +3584,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -3409,7 +3628,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -3450,7 +3669,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -3458,207 +3677,299 @@
- done
-
- if test -n "$cf_new_cflags" ; then
-+ test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-+
-+echo "${as_me:-configure}:3682: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
-
- CFLAGS="$CFLAGS $cf_new_cflags"
- fi
-
- if test -n "$cf_new_cppflags" ; then
-+ test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-+
-+echo "${as_me:-configure}:3690: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- 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}:3698: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
-
- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
- fi
-
--echo "$as_me:3477: 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 3485 "configure"
-+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
-+ echo "$as_me:3706: 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 3709 "configure"
- #include "confdefs.h"
--#include <stdarg.h>
--#include <stdio.h>
--#include <sys/types.h>
--#include <sys/stat.h>
--/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
--struct buf { int x; };
--FILE * (*rcsopen) (struct buf *, struct stat *, int);
--static char *e (p, i)
-- char **p;
-- int i;
--{
-- return p[i];
--}
--static char *f (char * (*g) (char **, int), char **p, ...)
--{
-- char *s;
-- va_list v;
-- va_start (v,p);
-- s = g (p, va_arg (v,int));
-- va_end (v);
-- return s;
--}
--int test (int i, double x);
--struct s1 {int (*f) (int a);};
--struct s2 {int (*f) (double a);};
--int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
--int argc;
--char **argv;
-+#include <stdlib.h>
- int
- main ()
- {
--return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
-+
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif
- ;
- return 0;
- }
- _ACEOF
--# Don't try gcc -ansi; that turns off useful extensions and
--# breaks some systems' header files.
--# AIX -qlanglvl=ansi
--# Ultrix and OSF/1 -std1
--# HP-UX 10.20 and later -Ae
--# HP-UX older versions -Aa -D_HPUX_SOURCE
--# SVR4 -Xc -D__EXTENSIONS__
--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:3534: \"$ac_compile\"") >&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:3724: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3537: \$? = $ac_status" >&5
-+ echo "$as_me:3727: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3540: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3730: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3543: \$? = $ac_status" >&5
-+ echo "$as_me:3733: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_prog_cc_stdc=$ac_arg
--break
-+ cf_XOPEN_SOURCE_set=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+cf_XOPEN_SOURCE_set=no
- fi
--rm -f conftest.$ac_objext
--done
--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:3560: result: none needed" >&5
--echo "${ECHO_T}none needed" >&6 ;;
-- *)
-- echo "$as_me:3563: result: $ac_cv_prog_cc_stdc" >&5
--echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
-- CC="$CC $ac_cv_prog_cc_stdc" ;;
--esac
--
--echo "$as_me:3568: 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 3574 "configure"
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ echo "$as_me:3742: result: $cf_XOPEN_SOURCE_set" >&5
-+echo "${ECHO_T}$cf_XOPEN_SOURCE_set" >&6
-+ if test $cf_XOPEN_SOURCE_set = yes
-+ then
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 3747 "configure"
- #include "confdefs.h"
--
-+#include <stdlib.h>
- int
- main ()
- {
--/* FIXME: Include the comments suggested by Paul. */
--#ifndef __cplusplus
-- /* Ultrix mips cc rejects this. */
-- typedef int charset[2];
-- const charset x;
-- /* SunOS 4.1.1 cc rejects this. */
-- char const *const *ccp;
-- char **p;
-- /* NEC SVR4.0.2 mips cc rejects this. */
-- struct point {int x, y;};
-- static struct point const zero = {0,0};
-- /* AIX XL C 1.02.0.0 rejects this.
-- It does not let you subtract one const X* pointer from another in
-- an arm of an if-expression whose if-part is not a constant
-- expression */
-- const char *g = "string";
-- ccp = &g + (g ? g-g : 0);
-- /* HPUX 7.0 cc rejects these. */
-- ++ccp;
-- p = (char**) ccp;
-- ccp = (char const *const *) p;
-- { /* SCO 3.2v4 cc rejects this. */
-- char *t;
-- char const *s = 0 ? (char *) 0 : (char const *) 0;
-
-- *t++ = 0;
-- }
-- { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */
-- int x[] = {25, 17};
-- const int *foo = &x[0];
-- ++foo;
-- }
-- { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
-- typedef const int *iptr;
-- iptr p = 0;
-- ++p;
-- }
-- { /* AIX XL C 1.02.0.0 rejects this saying
-- "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-- struct s { int j; const int *ap[3]; };
-- struct s *b; b->j = 5;
-- }
-- { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
-- const int foo = 10;
-- }
-+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
-+make an error
- #endif
--
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3632: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:3762: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3635: \$? = $ac_status" >&5
-+ echo "$as_me:3765: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3638: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:3768: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3641: \$? = $ac_status" >&5
-+ echo "$as_me:3771: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_c_const=yes
-+ cf_XOPEN_SOURCE_set_ok=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_c_const=no
-+cf_XOPEN_SOURCE_set_ok=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
--fi
--echo "$as_me:3651: result: $ac_cv_c_const" >&5
--echo "${ECHO_T}$ac_cv_c_const" >&6
--if test $ac_cv_c_const = no; then
--
--cat >>confdefs.h <<\EOF
--#define const
--EOF
-+ if test $cf_XOPEN_SOURCE_set_ok = no
-+ then
-+ { echo "$as_me:3782: WARNING: _XOPEN_SOURCE is lower than requested" >&5
-+echo "$as_me: WARNING: _XOPEN_SOURCE is lower than requested" >&2;}
-+ fi
-+ else
-+
-+echo "$as_me:3787: 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 3794 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+
-+int
-+main ()
-+{
-+
-+#ifndef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:3813: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:3816: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:3819: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:3822: \$? = $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
-+cf_save="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 3831 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/types.h>
-+
-+int
-+main ()
-+{
-+
-+#ifdef _XOPEN_SOURCE
-+make an error
-+#endif
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:3850: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:3853: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:3856: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:3859: \$? = $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
-+cf_cv_xopen_source=$cf_XOPEN_SOURCE
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS="$cf_save"
-+
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+echo "$as_me:3874: result: $cf_cv_xopen_source" >&5
-+echo "${ECHO_T}$cf_cv_xopen_source" >&6
-+
-+if test "$cf_cv_xopen_source" != no ; then
-+
-+CFLAGS=`echo "$CFLAGS" | \
-+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-+
-+CPPFLAGS=`echo "$CPPFLAGS" | \
-+ sed -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"_XOPEN_SOURCE"'\(=[^ ]*\)\?$//g'`
-+
-+ cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in $cf_temp_xopen_source
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-
- fi
-
--echo "$as_me:3661: checking for signal global datatype" >&5
-+ fi
-+fi
-+
-+echo "$as_me:3972: 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
-@@ -3670,7 +3981,7 @@
- "int"
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 3673 "configure"
-+#line 3984 "configure"
- #include "confdefs.h"
-
- #include <sys/types.h>
-@@ -3693,16 +4004,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3696: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:4007: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:3699: \$? = $ac_status" >&5
-+ echo "$as_me:4010: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3702: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4013: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:3705: \$? = $ac_status" >&5
-+ echo "$as_me:4016: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_cv_sig_atomic_t=$cf_type
- else
-@@ -3716,473 +4027,535 @@
-
- fi
-
--echo "$as_me:3719: result: $cf_cv_sig_atomic_t" >&5
-+echo "$as_me:4030: 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
-+test "$cf_cv_sig_atomic_t" != no &&
-+cat >>confdefs.h <<EOF
- #define SIG_ATOMIC_T $cf_cv_sig_atomic_t
- EOF
-
--echo "$as_me:3725: 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.
--if test "${enable_echo+set}" = set; then
-- enableval="$enable_echo"
-- test "$enableval" != no && enableval=yes
-- if test "$enableval" != "yes" ; then
--
-- ECHO_LT='--silent'
-- ECHO_LD='@echo linking $@;'
-- RULE_CC='@echo compiling $<'
-- SHOW_CC='@echo compiling $@'
-- ECHO_CC='@'
--
-- else
--
-- ECHO_LT=''
-- ECHO_LD=''
-- RULE_CC=''
-- SHOW_CC=''
-- ECHO_CC=''
-+echo "$as_me:4037: checking if you want to use pkg-config" >&5
-+echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6
-
-- fi
-+# Check whether --with-pkg-config or --without-pkg-config was given.
-+if test "${with_pkg_config+set}" = set; then
-+ withval="$with_pkg_config"
-+ cf_pkg_config=$withval
- else
-- enableval=yes
-+ cf_pkg_config=yes
-+fi;
-+echo "$as_me:4047: result: $cf_pkg_config" >&5
-+echo "${ECHO_T}$cf_pkg_config" >&6
-
-- ECHO_LT=''
-- ECHO_LD=''
-- RULE_CC=''
-- SHOW_CC=''
-- ECHO_CC=''
-+case $cf_pkg_config in #(vi
-+no) #(vi
-+ PKG_CONFIG=none
-+ ;;
-+yes) #(vi
-
--fi;
--echo "$as_me:3759: result: $enableval" >&5
--echo "${ECHO_T}$enableval" >&6
-+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:4059: 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
-+else
-+ case $PKG_CONFIG in
-+ [\\/]* | ?:[\\/]*)
-+ ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # 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_PKG_CONFIG="$ac_dir/$ac_word"
-+ echo "$as_me:4076: found $ac_dir/$ac_word" >&5
-+ break
-+fi
-+done
-
--GCC_VERSION=none
--if test "$GCC" = yes ; then
-- echo "$as_me:3764: 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/^[^0-9.]*//' -e 's/[^0-9.].*//'`"
-- test -z "$GCC_VERSION" && GCC_VERSION=unknown
-- echo "$as_me:3768: result: $GCC_VERSION" >&5
--echo "${ECHO_T}$GCC_VERSION" >&6
-+ ;;
-+esac
- fi
-+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
-
--if ( test "$GCC" = yes || test "$GXX" = yes )
--then
--echo "$as_me:3774: 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
-+if test -n "$PKG_CONFIG"; then
-+ echo "$as_me:4087: result: $PKG_CONFIG" >&5
-+echo "${ECHO_T}$PKG_CONFIG" >&6
-+else
-+ echo "$as_me:4090: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-
--# Check whether --enable-warnings or --disable-warnings was given.
--if test "${enable_warnings+set}" = set; then
-- enableval="$enable_warnings"
-- test "$enableval" != yes && enableval=no
-- if test "$enableval" != "no" ; then
-- with_warnings=yes
-- else
-- with_warnings=no
-- fi
-+fi
-+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:4099: 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
- else
-- enableval=no
-- with_warnings=no
-+ case $ac_pt_PKG_CONFIG in
-+ [\\/]* | ?:[\\/]*)
-+ ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # 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_ac_pt_PKG_CONFIG="$ac_dir/$ac_word"
-+ echo "$as_me:4116: found $ac_dir/$ac_word" >&5
-+ break
-+fi
-+done
-
--fi;
--echo "$as_me:3791: result: $with_warnings" >&5
--echo "${ECHO_T}$with_warnings" >&6
--if test "$with_warnings" = "yes"
--then
-+ test -z "$ac_cv_path_ac_pt_PKG_CONFIG" && ac_cv_path_ac_pt_PKG_CONFIG="none"
-+ ;;
-+esac
-+fi
-+ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
-
--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:3814: checking for $CC __attribute__ directives..." >&5
--echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
--cat > conftest.$ac_ext <<EOF
--#line 3817 "${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
-+if test -n "$ac_pt_PKG_CONFIG"; then
-+ echo "$as_me:4128: result: $ac_pt_PKG_CONFIG" >&5
-+echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6
-+else
-+ echo "$as_me:4131: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-
--cf_ATTRIBUTE=`echo "$cf_attribute" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+ PKG_CONFIG=$ac_pt_PKG_CONFIG
-+else
-+ PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
-+fi
-
-- cf_directive="__attribute__(($cf_attribute))"
-- echo "checking for $CC $cf_directive" 1>&5
-+ ;;
-+*)
-+ PKG_CONFIG=$withval
-+ ;;
-+esac
-
-- case $cf_attribute in #(vi
-- printf) #(vi
-- cf_printf_attribute=yes
-- cat >conftest.h <<EOF
--#define GCC_$cf_ATTRIBUTE 1
--EOF
-- ;;
-- scanf) #(vi
-- cf_scanf_attribute=yes
-- cat >conftest.h <<EOF
--#define GCC_$cf_ATTRIBUTE 1
--EOF
-- ;;
-- *) #(vi
-- cat >conftest.h <<EOF
--#define GCC_$cf_ATTRIBUTE $cf_directive
--EOF
-- ;;
-- esac
-+test -z "$PKG_CONFIG" && PKG_CONFIG=none
-+if test "$PKG_CONFIG" != none ; then
-
-- if { (eval echo "$as_me:3866: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:3869: \$? = $ac_status" >&5
-- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:3871: result: ... $cf_attribute" >&5
--echo "${ECHO_T}... $cf_attribute" >&6
-- cat conftest.h >>confdefs.h
-- case $cf_attribute in #(vi
-- printf) #(vi
-- if test "$cf_printf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
--EOF
-- fi
-- ;;
-- scanf) #(vi
-- if test "$cf_scanf_attribute" = no ; then
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) /* nothing */
--EOF
-- else
-- cat >>confdefs.h <<EOF
--#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
--EOF
-- fi
-- ;;
-- esac
-- fi
-- done
-+if test "x$prefix" != xNONE; then
-+ cf_path_syntax="$prefix"
- else
-- fgrep define conftest.i >>confdefs.h
-+ cf_path_syntax="$ac_default_prefix"
- fi
--rm -rf conftest*
-+
-+case ".$PKG_CONFIG" in #(vi
-+.\$\(*\)*|.\'*\'*) #(vi
-+ ;;
-+..|./*|.\\*) #(vi
-+ ;;
-+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
-+ ;;
-+.\${*prefix}*|.\${*dir}*) #(vi
-+ eval PKG_CONFIG="$PKG_CONFIG"
-+ case ".$PKG_CONFIG" in #(vi
-+ .NONE/*)
-+ PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
-+ ;;
-+ esac
-+ ;; #(vi
-+.no|.NONE/*)
-+ PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
-+ ;;
-+*)
-+ { { echo "$as_me:4174: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
-+echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;}
-+ { (exit 1); exit 1; }; }
-+ ;;
-+esac
-+
- fi
-
--INTEL_COMPILER=no
-+echo "$as_me:4182: 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
-
--if test "$GCC" = yes ; then
-- case $host_os in
-- linux*|gnu*)
-- echo "$as_me:3911: 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 3916 "configure"
--#include "confdefs.h"
-+# Check whether --enable-echo or --disable-echo was given.
-+if test "${enable_echo+set}" = set; then
-+ enableval="$enable_echo"
-+ test "$enableval" != no && enableval=yes
-+ if test "$enableval" != "yes" ; then
-
--int
--main ()
--{
-+ ECHO_LT='--silent'
-+ ECHO_LD='@echo linking $@;'
-+ RULE_CC='@echo compiling $<'
-+ SHOW_CC='@echo compiling $@'
-+ ECHO_CC='@'
-
--#ifdef __INTEL_COMPILER
--#else
--make an error
--#endif
-+ else
-
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:3933: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:3936: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:3939: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:3942: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- INTEL_COMPILER=yes
--cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
-+ ECHO_LT=''
-+ ECHO_LD=''
-+ RULE_CC=''
-+ SHOW_CC=''
-+ ECHO_CC=''
-
-+ fi
- else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- CFLAGS="$cf_save_CFLAGS"
-- echo "$as_me:3953: result: $INTEL_COMPILER" >&5
--echo "${ECHO_T}$INTEL_COMPILER" >&6
-- ;;
-- esac
--fi
-+ enableval=yes
-
--cat > conftest.$ac_ext <<EOF
--#line 3960 "${as_me:-configure}"
--int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
--EOF
-+ ECHO_LT=''
-+ ECHO_LD=''
-+ RULE_CC=''
-+ SHOW_CC=''
-+ ECHO_CC=''
-
--if test "$INTEL_COMPILER" = yes
--then
--# The "-wdXXX" options suppress warnings:
--# remark #1419: external declaration in primary source file
--# remark #1683: explicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem)
--# remark #1684: conversion from pointer to same-sized integral type (potential portability problem)
--# remark #193: zero used for undefined preprocessing identifier
--# remark #593: variable "curs_sb_left_arrow" was set but never used
--# remark #810: conversion from "int" to "Dimension={unsigned short}" may lose significant bits
--# remark #869: parameter "tw" was never referenced
--# remark #981: operands are evaluated in unspecified order
--# warning #279: controlling expression is constant
-+fi;
-+echo "$as_me:4216: result: $enableval" >&5
-+echo "${ECHO_T}$enableval" >&6
-
-- { echo "$as_me:3977: checking for $CC warning options..." >&5
--echo "$as_me: checking for $CC warning options..." >&6;}
-- cf_save_CFLAGS="$CFLAGS"
-- EXTRA_CFLAGS="-Wall"
-- for cf_opt in \
-- wd1419 \
-- wd1683 \
-- wd1684 \
-- wd193 \
-- wd593 \
-- wd279 \
-- wd810 \
-- wd869 \
-- wd981
-- do
-- CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-- if { (eval echo "$as_me:3993: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:3996: \$? = $ac_status" >&5
-- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:3998: result: ... -$cf_opt" >&5
--echo "${ECHO_T}... -$cf_opt" >&6
-- EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
-- fi
-- done
-- CFLAGS="$cf_save_CFLAGS"
--
--elif test "$GCC" = yes
--then
-- { echo "$as_me:4007: 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"
-- for cf_opt in W Wall \
-- Wbad-function-cast \
-- Wcast-align \
-- Wcast-qual \
-- Winline \
-- Wmissing-declarations \
-- Wmissing-prototypes \
-- Wnested-externs \
-- Wpointer-arith \
-- Wshadow \
-- Wstrict-prototypes \
-- Wundef $cf_warn_CONST
-- do
-- CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-- if { (eval echo "$as_me:4027: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:4030: \$? = $ac_status" >&5
-- (exit $ac_status); }; then
-- test -n "$verbose" && echo "$as_me:4032: result: ... -$cf_opt" >&5
--echo "${ECHO_T}... -$cf_opt" >&6
-- case $cf_opt in #(vi
-- Wcast-qual) #(vi
-- CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES"
-- ;;
-- Winline) #(vi
-- case $GCC_VERSION in
-- [34].*)
-- test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-+echo "$as_me:4219: checking for ncurses wrap-prefix" >&5
-+echo $ECHO_N "checking for ncurses wrap-prefix... $ECHO_C" >&6
-
--echo "${as_me:-configure}:4043: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
-+# Check whether --with-ncurses-wrap-prefix or --without-ncurses-wrap-prefix was given.
-+if test "${with_ncurses_wrap_prefix+set}" = set; then
-+ withval="$with_ncurses_wrap_prefix"
-+ NCURSES_WRAP_PREFIX=$withval
-+else
-+ NCURSES_WRAP_PREFIX=_nc_
-+fi;
-+echo "$as_me:4229: result: $NCURSES_WRAP_PREFIX" >&5
-+echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6
-
-- continue;;
-- esac
-- ;;
-- esac
-- EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
-- fi
-- done
-- CFLAGS="$cf_save_CFLAGS"
--fi
--rm -rf conftest*
-+echo "$as_me:4232: 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
-
--fi
--fi
-+# Check whether --enable-widec or --disable-widec was given.
-+if test "${enable_widec+set}" = set; then
-+ enableval="$enable_widec"
-+ test "$enableval" != no && enableval=yes
-+ if test "$enableval" != "yes" ; then
-+ cf_enable_widec=no
-+ else
-+ cf_enable_widec=yes
-+ fi
-+else
-+ enableval=yes
-+ cf_enable_widec=yes
-
--echo "$as_me:4059: 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
-+fi;
-+echo "$as_me:4249: result: $cf_enable_widec" >&5
-+echo "${ECHO_T}$cf_enable_widec" >&6
-
--# Check whether --with-dmalloc or --without-dmalloc was given.
--if test "${with_dmalloc+set}" = set; then
-- withval="$with_dmalloc"
-- cat >>confdefs.h <<\EOF
--#define USE_DMALLOC 1
--EOF
-+echo "$as_me:4252: checking for specific curses-directory" >&5
-+echo $ECHO_N "checking for specific curses-directory... $ECHO_C" >&6
-
-- : ${with_cflags:=-g}
-- : ${with_no_leaks:=yes}
-- with_dmalloc=yes
-+# Check whether --with-curses-dir or --without-curses-dir was given.
-+if test "${with_curses_dir+set}" = set; then
-+ withval="$with_curses_dir"
-+ cf_cv_curses_dir=$withval
- else
-- with_dmalloc=
-+ cf_cv_curses_dir=no
- fi;
--echo "$as_me:4075: result: ${with_dmalloc:-no}" >&5
--echo "${ECHO_T}${with_dmalloc:-no}" >&6
-+echo "$as_me:4262: result: $cf_cv_curses_dir" >&5
-+echo "${ECHO_T}$cf_cv_curses_dir" >&6
-
--case .$with_cflags in #(vi
--.*-g*)
-- case .$CFLAGS in #(vi
-- .*-g*) #(vi
-- ;;
-- *)
-+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
-+then
-
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
-+if test "x$prefix" != xNONE; then
-+ cf_path_syntax="$prefix"
-+else
-+ cf_path_syntax="$ac_default_prefix"
-+fi
-
--for cf_add_cflags in -g
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-+case ".$withval" in #(vi
-+.\$\(*\)*|.\'*\'*) #(vi
-+ ;;
-+..|./*|.\\*) #(vi
-+ ;;
-+.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
-+ ;;
-+.\${*prefix}*|.\${*dir}*) #(vi
-+ eval withval="$withval"
-+ case ".$withval" in #(vi
-+ .NONE/*)
-+ withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
-+ ;;
-+ esac
-+ ;; #(vi
-+.no|.NONE/*)
-+ withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
-+ ;;
-+*)
-+ { { echo "$as_me:4293: error: expected a pathname, not \"$withval\"" >&5
-+echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
-+ { (exit 1); exit 1; }; }
-+ ;;
-+esac
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
-+ if test -d "$cf_cv_curses_dir"
-+ then
-
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-+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
-+ do
-+ if test -d $cf_add_incdir
-+ then
-+ cf_have_incdir=no
-+ if test -n "$CFLAGS$CPPFLAGS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-+ cf_have_incdir=yes; break
- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-+ done
-+ fi
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
-+ if test "$cf_have_incdir" = no ; then
-+ if test "$cf_add_incdir" = /usr/local/include ; then
-+ if test "$GCC" = yes
-+ then
-+ cf_save_CPPFLAGS=$CPPFLAGS
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 4326 "configure"
-+#include "confdefs.h"
-+#include <stdio.h>
-+int
-+main ()
-+{
-+printf("Hello")
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:4338: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4341: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:4344: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4347: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ :
-+else
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+cf_have_incdir=yes
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS=$cf_save_CPPFLAGS
-+ fi
-+ fi
-+ fi
-
--if test -n "$cf_new_cflags" ; then
-+ if test "$cf_have_incdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
-+echo "${as_me:-configure}:4364: testing adding $cf_add_incdir to include-path ..." 1>&5
-
--if test -n "$cf_new_cppflags" ; then
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+ 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
-+ break
-+ fi
-+ fi
-+ done
-+ done
- fi
-
--if test -n "$cf_new_extra_cppflags" ; then
-+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
-+ :
-+ elif test -d $cf_add_libdir
-+ then
-+ cf_have_libdir=no
-+ if test -n "$LDFLAGS$LIBS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_libdir in $LDFLAGS $LIBS ; do
-+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-+ cf_have_libdir=yes; break
-+ fi
-+ done
-+ fi
-+ if test "$cf_have_libdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+echo "${as_me:-configure}:4398: testing adding $cf_add_libdir to library-path ..." 1>&5
-+
-+ LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-+ fi
-+ fi
-+ done
- fi
-
-- ;;
-- esac
-+ fi
-+fi
-+
-+cf_cv_screen=curses
-+
-+echo "$as_me:4411: checking for specified curses library type" >&5
-+echo $ECHO_N "checking for specified curses library type... $ECHO_C" >&6
-+
-+# Check whether --with-ncursesw or --without-ncursesw was given.
-+if test "${with_ncursesw+set}" = set; then
-+ withval="$with_ncursesw"
-+ cf_cv_screen=ncursesw
-+else
-+
-+# Check whether --with-ncurses or --without-ncurses was given.
-+if test "${with_ncurses+set}" = set; then
-+ withval="$with_ncurses"
-+ cf_cv_screen=ncurses
-+else
-+
-+# Check whether --with-pdcurses or --without-pdcurses was given.
-+if test "${with_pdcurses+set}" = set; then
-+ withval="$with_pdcurses"
-+ cf_cv_screen=pdcurses
-+else
-+
-+# Check whether --with-curses-colr or --without-curses-colr was given.
-+if test "${with_curses_colr+set}" = set; then
-+ withval="$with_curses_colr"
-+ cf_cv_screen=curses_colr
-+else
-+
-+# Check whether --with-curses-5lib or --without-curses-5lib was given.
-+if test "${with_curses_5lib+set}" = set; then
-+ withval="$with_curses_5lib"
-+ cf_cv_screen=curses_5lib
-+fi;
-+fi;
-+fi;
-+fi;
-+fi;
-+
-+echo "$as_me:4448: result: $cf_cv_screen" >&5
-+echo "${ECHO_T}$cf_cv_screen" >&6
-+
-+case $cf_cv_screen in #(vi
-+curses|curses_*) #(vi
-+
-+echo "$as_me:4454: 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 #(vi
-+hpux10.*) #(vi
-+ if test "x$cf_cv_screen" = "xcurses_colr"
-+ then
-+ test -d /usr/include/curses_colr && \
-+ cf_cv_curses_incdir="-I/usr/include/curses_colr"
-+ fi
-+ ;;
-+sunos3*|sunos4*)
-+ if test "x$cf_cv_screen" = "xcurses_5lib"
-+ then
-+ test -d /usr/5lib && \
-+ test -d /usr/5include && \
-+ cf_cv_curses_incdir="-I/usr/5include"
-+ fi
- ;;
- esac
-
--if test "$with_dmalloc" = yes ; then
-- echo "$as_me:4169: 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
-+fi
-+echo "$as_me:4480: result: $cf_cv_curses_incdir" >&5
-+echo "${ECHO_T}$cf_cv_curses_incdir" >&6
-+test "$cf_cv_curses_incdir" != no && CPPFLAGS="$CPPFLAGS $cf_cv_curses_incdir"
-+
-+echo "$as_me:4484: 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
-+else
-+
-+cf_cv_ncurses_header=none
-+for cf_header in \
-+ ncurses.h \
-+ curses.h ncurses/ncurses.h ncurses/curses.h
-+do
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 4496 "configure"
-+#include "confdefs.h"
-+#include <${cf_header}>
-+int
-+main ()
-+{
-+initscr(); tgoto("?", 0,0)
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:4508: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4511: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:4514: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4517: \$? = $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
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+done
-+
-+fi
-+echo "$as_me:4528: 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:4532: error: No curses header-files found" >&5
-+echo "$as_me: error: No curses header-files found" >&2;}
-+ { (exit 1); exit 1; }; }
-+fi
-+
-+# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
-+
-+for ac_header in $cf_cv_ncurses_header
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+echo "$as_me:4542: 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 4175 "configure"
-+#line 4548 "configure"
- #include "confdefs.h"
--#include <dmalloc.h>
-+#include <$ac_header>
- _ACEOF
--if { (eval echo "$as_me:4179: \"$ac_cpp conftest.$ac_ext\"") >&5
-+if { (eval echo "$as_me:4552: \"$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:4185: \$? = $ac_status" >&5
-+ echo "$as_me:4558: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
-@@ -4193,238 +4566,255 @@
- ac_cpp_err=yes
- fi
- if test -z "$ac_cpp_err"; then
-- ac_cv_header_dmalloc_h=yes
-+ eval "$as_ac_Header=yes"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-- ac_cv_header_dmalloc_h=no
-+ eval "$as_ac_Header=no"
- fi
- rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:4204: 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
-+echo "$as_me:4577: 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
-
--echo "$as_me:4208: 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
-+fi
-+done
-+
-+echo "$as_me:4587: 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
-- ac_check_lib_save_LIBS=$LIBS
--LIBS="-ldmalloc $LIBS"
-+
-+case ${cf_cv_ncurses_header} in #(vi
-+*/ncurses.h|*/ncursesw.h) #(vi
-+ cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
-+ ;;
-+*)
-+ cf_term_header=term.h
-+ ;;
-+esac
-+
-+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
-+do
- cat >conftest.$ac_ext <<_ACEOF
--#line 4216 "configure"
-+#line 4605 "configure"
- #include "confdefs.h"
-+#include <stdio.h>
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <$cf_test>
-
--/* 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 dmalloc_debug ();
- int
- main ()
- {
--dmalloc_debug ();
-+int x = auto_left_margin
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:4235: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:4620: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:4238: \$? = $ac_status" >&5
-+ echo "$as_me:4623: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:4241: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:4626: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4244: \$? = $ac_status" >&5
-+ echo "$as_me:4629: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_dmalloc_dmalloc_debug=yes
-+
-+ cf_cv_term_header="$cf_test"
- else
- echo "$as_me: failed program was:" >&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
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:4255: 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
-- cat >>confdefs.h <<EOF
--#define HAVE_LIBDMALLOC 1
--EOF
-
-- LIBS="-ldmalloc $LIBS"
-+ cf_cv_term_header=unknown
-
- fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ test "$cf_cv_term_header" != unknown && break
-+done
-
- fi
-+echo "$as_me:4645: result: $cf_cv_term_header" >&5
-+echo "${ECHO_T}$cf_cv_term_header" >&6
-
--fi
-+# Set definitions to allow ifdef'ing to accommodate subdirectories
-
--echo "$as_me:4270: 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
-+case $cf_cv_term_header in # (vi
-+*term.h)
-
--# Check whether --with-dbmalloc or --without-dbmalloc was given.
--if test "${with_dbmalloc+set}" = set; then
-- withval="$with_dbmalloc"
-- cat >>confdefs.h <<\EOF
--#define USE_DBMALLOC 1
-+cat >>confdefs.h <<\EOF
-+#define HAVE_TERM_H 1
- EOF
-
-- : ${with_cflags:=-g}
-- : ${with_no_leaks:=yes}
-- with_dbmalloc=yes
--else
-- with_dbmalloc=
--fi;
--echo "$as_me:4286: result: ${with_dbmalloc:-no}" >&5
--echo "${ECHO_T}${with_dbmalloc:-no}" >&6
-+ ;;
-+esac
-
--case .$with_cflags in #(vi
--.*-g*)
-- case .$CFLAGS in #(vi
-- .*-g*) #(vi
-- ;;
-- *)
-+case $cf_cv_term_header in # (vi
-+ncurses/term.h) #(vi
-
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSES_TERM_H 1
-+EOF
-
--for cf_add_cflags in -g
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-+ ;;
-+ncursesw/term.h)
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSESW_TERM_H 1
-+EOF
-
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
- ;;
- esac
--done
-
--if test -n "$cf_new_cflags" ; then
-+echo "$as_me:4677: 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
-+else
-
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
-+ cf_cv_ncurses_version=no
-+ cf_tempfile=out$$
-+ rm -f $cf_tempfile
-+ if test "$cross_compiling" = yes; then
-
--if test -n "$cf_new_cppflags" ; 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
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#undef Autoconf
-+#ifdef NCURSES_VERSION
-+Autoconf NCURSES_VERSION
-+#else
-+#ifdef __NCURSES_H
-+Autoconf "old"
-+#endif
-+;
-+#endif
-+EOF
-+ cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-+ { (eval echo "$as_me:4703: \"$cf_try\"") >&5
-+ (eval $cf_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4706: \$? = $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%".*%%'`
-+ test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
-+ rm -f conftest.out
-+ fi
-
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
-+else
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 4716 "configure"
-+#include "confdefs.h"
-
--if test -n "$cf_new_extra_cppflags" ; then
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <stdio.h>
-+int main()
-+{
-+ FILE *fp = fopen("$cf_tempfile", "w");
-+#ifdef NCURSES_VERSION
-+# ifdef NCURSES_VERSION_PATCH
-+ fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
-+# else
-+ fprintf(fp, "%s\n", NCURSES_VERSION);
-+# endif
-+#else
-+# ifdef __NCURSES_H
-+ fprintf(fp, "old\n");
-+# else
-+ make an error
-+# endif
-+#endif
-+ ${cf_cv_main_return:-return}(0);
-+}
-+_ACEOF
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:4741: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4744: \$? = $ac_status" >&5
-+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+ { (eval echo "$as_me:4746: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4749: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+ 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
-+fi
-+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
-+ rm -f $cf_tempfile
-
-- ;;
-- esac
-- ;;
--esac
-+fi
-+echo "$as_me:4763: 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
-
--if test "$with_dbmalloc" = yes ; then
-- echo "$as_me:4380: 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 4386 "configure"
-+echo "$as_me:4770: 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 4773 "configure"
- #include "confdefs.h"
--#include <dbmalloc.h>
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+int
-+main ()
-+{
-+initscr(); tgoto("?", 0,0)
-+ ;
-+ return 0;
-+}
- _ACEOF
--if { (eval echo "$as_me:4390: \"$ac_cpp conftest.$ac_ext\"") >&5
-- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:4785: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- egrep -v '^ *\+' conftest.er1 >conftest.err
-- rm -f conftest.er1
-- cat conftest.err >&5
-- echo "$as_me:4396: \$? = $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
-- ac_cv_header_dbmalloc_h=yes
-+ echo "$as_me:4788: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:4791: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4794: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- ac_cv_header_dbmalloc_h=no
--fi
--rm -f conftest.err conftest.$ac_ext
-+cat conftest.$ac_ext >&5
-+cf_result=no
- fi
--echo "$as_me:4415: 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
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+echo "$as_me:4803: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-
--echo "$as_me:4419: 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
-+if test "$cf_result" = no ; then
-+case $host_os in #(vi
-+freebsd*) #(vi
-+ echo "$as_me:4809: 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="-ldbmalloc $LIBS"
-+LIBS="-lmytinfo $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 4427 "configure"
-+#line 4817 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -4433,321 +4823,231 @@
- #endif
- /* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
--char debug_malloc ();
-+char tgoto ();
- int
- main ()
- {
--debug_malloc ();
-+tgoto ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:4446: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:4836: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:4449: \$? = $ac_status" >&5
-+ echo "$as_me:4839: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:4452: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:4842: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4455: \$? = $ac_status" >&5
-+ echo "$as_me:4845: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_dbmalloc_debug_malloc=yes
-+ ac_cv_lib_mytinfo_tgoto=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_dbmalloc_debug_malloc=no
-+ac_cv_lib_mytinfo_tgoto=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:4466: 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
-- cat >>confdefs.h <<EOF
--#define HAVE_LIBDBMALLOC 1
--EOF
-+echo "$as_me:4856: 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
-
-- LIBS="-ldbmalloc $LIBS"
-+cf_add_libs="-lmytinfo"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
- fi
-
--fi
-+ ;;
-+hpux10.*) #(vi
-+ # Looking at HPUX 10.20, the Hcurses library is the oldest (1997), cur_colr
-+ # next (1998), and xcurses "newer" (2000). There is no header file for
-+ # Hcurses; the subdirectory curses_colr has the headers (curses.h and
-+ # term.h) for cur_colr
-+ if test "x$cf_cv_screen" = "xcurses_colr"
-+ then
-+ echo "$as_me:4886: 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 4894 "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 initscr ();
-+int
-+main ()
-+{
-+initscr ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:4913: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4916: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:4919: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:4922: \$? = $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
-+ac_cv_lib_cur_colr_initscr=no
- fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:4933: 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
-
--echo "$as_me:4481: 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"
-- cat >>confdefs.h <<\EOF
--#define USE_VALGRIND 1
--EOF
--
-- : ${with_cflags:=-g}
-- : ${with_no_leaks:=yes}
-- with_valgrind=yes
--else
-- with_valgrind=
--fi;
--echo "$as_me:4497: result: ${with_valgrind:-no}" >&5
--echo "${ECHO_T}${with_valgrind:-no}" >&6
--
--case .$with_cflags in #(vi
--.*-g*)
-- case .$CFLAGS in #(vi
-- .*-g*) #(vi
-- ;;
-- *)
--
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
--
--for cf_add_cflags in -g
-+cf_add_libs="-lcur_colr"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
- do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
-+ 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_libs $cf_add_1lib"
- done
-+LIBS="$cf_add_libs"
-
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
--
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
--
--if test -n "$cf_new_extra_cppflags" ; then
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
--fi
--
-- ;;
-- esac
-- ;;
--esac
--
--echo "$as_me:4590: 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
--else
-- : ${with_no_leaks:=no}
--fi;
--echo "$as_me:4600: result: $with_no_leaks" >&5
--echo "${ECHO_T}$with_no_leaks" >&6
--
--if test "$with_no_leaks" = yes ; then
-- cat >>confdefs.h <<\EOF
--#define NO_LEAKS 1
--EOF
--
-- cat >>confdefs.h <<\EOF
--#define YY_NO_LEAKS 1
--EOF
--
--fi
--
--echo "$as_me:4614: checking for specific curses-directory" >&5
--echo $ECHO_N "checking for specific curses-directory... $ECHO_C" >&6
-+ ac_cv_func_initscr=yes
-
--# Check whether --with-curses-dir or --without-curses-dir was given.
--if test "${with_curses_dir+set}" = set; then
-- withval="$with_curses_dir"
-- cf_cv_curses_dir=$withval
- else
-- cf_cv_curses_dir=no
--fi;
--echo "$as_me:4624: 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" )
--then
--
--if test "x$prefix" != xNONE; then
-- cf_path_syntax="$prefix"
-+ echo "$as_me:4957: 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
-- cf_path_syntax="$ac_default_prefix"
--fi
--
--case ".$withval" in #(vi
--.\$\(*\)*|.\'*\'*) #(vi
-- ;;
--..|./*|.\\*) #(vi
-- ;;
--.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
-- ;;
--.\${*prefix}*) #(vi
-- eval withval="$withval"
-- case ".$withval" in #(vi
-- .NONE/*)
-- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
-- ;;
-- esac
-- ;; #(vi
--.no|.NONE/*)
-- withval=`echo $withval | sed -e s%NONE%$cf_path_syntax%`
-- ;;
--*)
-- { { echo "$as_me:4655: error: expected a pathname, not \"$withval\"" >&5
--echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;}
-- { (exit 1); exit 1; }; }
-- ;;
--esac
--
-- if test -d "$cf_cv_curses_dir"
-- then
--
--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
-- do
-- if test -d $cf_add_incdir
-- then
-- cf_have_incdir=no
-- if test -n "$CFLAGS$CPPFLAGS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-- cf_have_incdir=yes; break
-- fi
-- done
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- if test "$cf_add_incdir" = /usr/local/include ; then
-- if test "$GCC" = yes
-- then
-- cf_save_CPPFLAGS=$CPPFLAGS
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 4688 "configure"
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lHcurses $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 4965 "configure"
- #include "confdefs.h"
--#include <stdio.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 initscr ();
- int
- main ()
- {
--printf("Hello")
-+initscr ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:4700: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:4984: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:4703: \$? = $ac_status" >&5
-+ echo "$as_me:4987: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:4706: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:4990: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4709: \$? = $ac_status" >&5
-+ echo "$as_me:4993: \$? = $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
--cf_have_incdir=yes
-+ac_cv_lib_Hcurses_initscr=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS=$cf_save_CPPFLAGS
-- fi
-- fi
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
--
--echo "${as_me:-configure}:4726: testing adding $cf_add_incdir to include-path ..." 1>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:5004: 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
-
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ # HP's header uses __HP_CURSES, but user claims _HP_CURSES.
-
-- 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
-- break
-+cf_add_libs="-lHcurses"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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
-- fi
- done
-- done
-+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES"
-+ ac_cv_func_initscr=yes
-+
- 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
-- :
-- elif test -d $cf_add_libdir
-- then
-- cf_have_libdir=no
-- if test -n "$LDFLAGS$LIBS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-+fi
-+
-+ fi
-+ ;;
-+linux*)
-+ case `arch 2>/dev/null` in
-+ x86_64)
-+ if test -d /lib64
-+ then
-+
-+if test -n "/lib64" ; then
-+ for cf_add_libdir in /lib64
-+ do
-+ if test $cf_add_libdir = /usr/lib ; then
-+ :
-+ elif test -d $cf_add_libdir
-+ then
-+ cf_have_libdir=no
-+ if test -n "$LDFLAGS$LIBS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
- for cf_test_libdir in $LDFLAGS $LIBS ; do
- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
- cf_have_libdir=yes; break
-@@ -4757,7 +5057,7 @@
- if test "$cf_have_libdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-
--echo "${as_me:-configure}:4760: testing adding $cf_add_libdir to library-path ..." 1>&5
-+echo "${as_me:-configure}:5060: testing adding $cf_add_libdir to library-path ..." 1>&5
-
- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
- fi
-@@ -4765,370 +5065,354 @@
- done
- fi
-
-- fi
--fi
-+ else
-
--# Check whether --with-5lib or --without-5lib was given.
--if test "${with_5lib+set}" = set; then
-- withval="$with_5lib"
-- LIBS="-L/usr/5lib $LIBS"
-- CPPFLAGS="$CPPFLAGS -I/usr/5include"
--fi;
-+if test -n "/lib" ; then
-+ for cf_add_libdir in /lib
-+ do
-+ if test $cf_add_libdir = /usr/lib ; then
-+ :
-+ elif test -d $cf_add_libdir
-+ then
-+ cf_have_libdir=no
-+ if test -n "$LDFLAGS$LIBS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_libdir in $LDFLAGS $LIBS ; do
-+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-+ cf_have_libdir=yes; break
-+ fi
-+ done
-+ fi
-+ if test "$cf_have_libdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-
--# Check whether --with-ncursesw or --without-ncursesw was given.
--if test "${with_ncursesw+set}" = set; then
-- withval="$with_ncursesw"
-- cf_cv_screen=ncursesw
--else
-+echo "${as_me:-configure}:5089: testing adding $cf_add_libdir to library-path ..." 1>&5
-
--# Check whether --with-ncurses or --without-ncurses was given.
--if test "${with_ncurses+set}" = set; then
-- withval="$with_ncurses"
-- cf_cv_screen=ncurses
--else
-+ LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-+ fi
-+ fi
-+ done
-+fi
-
--# Check whether --with-pdcurses or --without-pdcurses was given.
--if test "${with_pdcurses+set}" = set; then
-- withval="$with_pdcurses"
-- cf_cv_screen=pdcurses
--fi;
--fi;
--fi;
-+ fi
-+ ;;
-+ *)
-
--case $cf_cv_screen in
--curses)
-+if test -n "/lib" ; then
-+ for cf_add_libdir in /lib
-+ do
-+ if test $cf_add_libdir = /usr/lib ; then
-+ :
-+ elif test -d $cf_add_libdir
-+ then
-+ cf_have_libdir=no
-+ if test -n "$LDFLAGS$LIBS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_libdir in $LDFLAGS $LIBS ; do
-+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-+ cf_have_libdir=yes; break
-+ fi
-+ done
-+ fi
-+ if test "$cf_have_libdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-
--echo "$as_me:4801: 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
-+echo "${as_me:-configure}:5120: testing adding $cf_add_libdir to library-path ..." 1>&5
-
--cf_cv_curses_incdir=no
--case $host_os in #(vi
--hpux10.*) #(vi
-- test -d /usr/include/curses_colr && \
-- cf_cv_curses_incdir="-I/usr/include/curses_colr"
-+ LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-+ fi
-+ fi
-+ done
-+fi
-+
-+ ;;
-+ esac
- ;;
- sunos3*|sunos4*)
-- test -d /usr/5lib && \
-- test -d /usr/5include && \
-- cf_cv_curses_incdir="-I/usr/5include"
-- ;;
--esac
-+ if test "x$cf_cv_screen" = "xcurses_5lib"
-+ then
-+ if test -d /usr/5lib ; then
-+
-+if test -n "/usr/5lib" ; then
-+ for cf_add_libdir in /usr/5lib
-+ do
-+ if test $cf_add_libdir = /usr/lib ; then
-+ :
-+ elif test -d $cf_add_libdir
-+ then
-+ cf_have_libdir=no
-+ if test -n "$LDFLAGS$LIBS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_libdir in $LDFLAGS $LIBS ; do
-+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-+ cf_have_libdir=yes; break
-+ fi
-+ done
-+ fi
-+ if test "$cf_have_libdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-+
-+echo "${as_me:-configure}:5155: testing adding $cf_add_libdir to library-path ..." 1>&5
-
-+ LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-+ fi
-+ fi
-+ done
- fi
--echo "$as_me:4821: result: $cf_cv_curses_incdir" >&5
--echo "${ECHO_T}$cf_cv_curses_incdir" >&6
--test "$cf_cv_curses_incdir" != no && CPPFLAGS="$CPPFLAGS $cf_cv_curses_incdir"
-
--echo "$as_me:4825: 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
-+cf_add_libs="-lcurses -ltermcap"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ fi
-+ fi
-+ ac_cv_func_initscr=yes
-+ ;;
-+esac
-+
-+if test ".$ac_cv_func_initscr" != .yes ; then
-+ cf_save_LIBS="$LIBS"
-+
-+ if test ".${cf_cv_ncurses_version:-no}" != .no
-+ then
-+ cf_check_list="ncurses curses cursesX"
-+ else
-+ cf_check_list="cursesX curses ncurses"
-+ fi
-+
-+ # Check for library containing tgoto. Do this before curses library
-+ # because it may be needed to link the test-case for initscr.
-+ if test "x$cf_term_lib" = x
-+ then
-+ echo "$as_me:5199: 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
--
--cf_cv_ncurses_header=none
--for cf_header in \
-- curses.h \
-- ncurses.h ncurses/curses.h ncurses/ncurses.h
--do
--cat >conftest.$ac_ext <<_ACEOF
--#line 4837 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 5205 "configure"
- #include "confdefs.h"
--#include <${cf_header}>
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char tgoto (); below. */
-+#include <assert.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 tgoto ();
-+char (*f) ();
-+
- int
- main ()
- {
--initscr(); tgoto("?", 0,0)
-+/* The GNU C library defines this 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_tgoto) || defined (__stub___tgoto)
-+choke me
-+#else
-+f = tgoto; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:4849: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:5236: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:4852: \$? = $ac_status" >&5
-+ echo "$as_me:5239: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:4855: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:5242: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4858: \$? = $ac_status" >&5
-+ echo "$as_me:5245: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ncurses_header=$cf_header; break
-+ ac_cv_func_tgoto=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+ac_cv_func_tgoto=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--done
--
--fi
--echo "$as_me:4869: 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:4873: error: No curses header-files found" >&5
--echo "$as_me: error: No curses header-files found" >&2;}
-- { (exit 1); exit 1; }; }
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
-+echo "$as_me:5255: result: $ac_cv_func_tgoto" >&5
-+echo "${ECHO_T}$ac_cv_func_tgoto" >&6
-+if test $ac_cv_func_tgoto = yes; then
-+ cf_term_lib=predefined
-+else
-
--# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
--
--for ac_header in $cf_cv_ncurses_header
--do
--as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:4883: checking for $ac_header" >&5
--echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
--if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+ 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:5264: 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
-- cat >conftest.$ac_ext <<_ACEOF
--#line 4889 "configure"
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-l$cf_term_lib $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 5272 "configure"
- #include "confdefs.h"
--#include <$ac_header>
-+
-+/* 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 tgoto ();
-+int
-+main ()
-+{
-+tgoto ();
-+ ;
-+ return 0;
-+}
- _ACEOF
--if { (eval echo "$as_me:4893: \"$ac_cpp conftest.$ac_ext\"") >&5
-- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:5291: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- egrep -v '^ *\+' conftest.er1 >conftest.err
-- rm -f conftest.er1
-- cat conftest.err >&5
-- echo "$as_me:4899: \$? = $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"
-+ echo "$as_me:5294: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:5297: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:5300: \$? = $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
-- eval "$as_ac_Header=no"
-+cat conftest.$ac_ext >&5
-+eval "$as_ac_Lib=no"
- fi
--rm -f conftest.err conftest.$ac_ext
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:5311: 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
-+ break
- fi
--echo "$as_me:4918: 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
-+
-+ done
-
- fi
--done
-
--echo "$as_me:4928: checking for terminfo header" >&5
--echo $ECHO_N "checking for terminfo header... $ECHO_C" >&6
--if test "${cf_cv_term_header+set}" = set; then
-+ fi
-+
-+ # Check for library containing initscr
-+ test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
-+ if test "x$cf_curs_lib" = x
-+ then
-+ for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown
-+ do
-+ as_ac_Lib=`echo "ac_cv_lib_$cf_curs_lib''_initscr" | $as_tr_sh`
-+echo "$as_me:5330: checking for initscr in -l$cf_curs_lib" >&5
-+echo $ECHO_N "checking for initscr in -l$cf_curs_lib... $ECHO_C" >&6
-+if eval "test \"\${$as_ac_Lib+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--
--case ${cf_cv_ncurses_header} in #(vi
--*/ncurses.h|*/ncursesw.h) #(vi
-- cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
-- ;;
--*)
-- cf_term_header=term.h
-- ;;
--esac
--
--for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
--do
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-l$cf_curs_lib $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 4946 "configure"
-+#line 5338 "configure"
- #include "confdefs.h"
--#include <stdio.h>
--#include <${cf_cv_ncurses_header:-curses.h}>
--#include <$cf_test>
-
-+/* 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 initscr ();
- int
- main ()
- {
--int x = auto_left_margin
-+initscr ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:4961: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:5357: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:4964: \$? = $ac_status" >&5
-+ echo "$as_me:5360: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:4967: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:5363: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:4970: \$? = $ac_status" >&5
-+ echo "$as_me:5366: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
--
-- cf_cv_term_header="$cf_test"
-+ eval "$as_ac_Lib=yes"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--
-- cf_cv_term_header=unknown
--
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- test "$cf_cv_term_header" != unknown && break
--done
--
-+eval "$as_ac_Lib=no"
- fi
--echo "$as_me:4986: 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 # (vi
--*term.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_TERM_H 1
--EOF
--
-- ;;
--esac
--
--case $cf_cv_term_header in # (vi
--ncurses/term.h) #(vi
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSES_TERM_H 1
--EOF
--
-- ;;
--ncursesw/term.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSESW_TERM_H 1
--EOF
--
-- ;;
--esac
--
--echo "$as_me:5015: 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
--else
--
-- cf_cv_ncurses_version=no
-- cf_tempfile=out$$
-- 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
--#include <${cf_cv_ncurses_header:-curses.h}>
--#undef Autoconf
--#ifdef NCURSES_VERSION
--Autoconf NCURSES_VERSION
--#else
--#ifdef __NCURSES_H
--Autoconf "old"
--#endif
--;
--#endif
--EOF
-- cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-- { (eval echo "$as_me:5041: \"$cf_try\"") >&5
-- (eval $cf_try) 2>&5
-- ac_status=$?
-- echo "$as_me:5044: \$? = $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%".*%%'`
-- test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
-- rm -f conftest.out
-- fi
--
--else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 5054 "configure"
--#include "confdefs.h"
--
--#include <${cf_cv_ncurses_header:-curses.h}>
--#include <stdio.h>
--int main()
--{
-- FILE *fp = fopen("$cf_tempfile", "w");
--#ifdef NCURSES_VERSION
--# ifdef NCURSES_VERSION_PATCH
-- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
--# else
-- fprintf(fp, "%s\n", NCURSES_VERSION);
--# endif
--#else
--# ifdef __NCURSES_H
-- fprintf(fp, "old\n");
--# else
-- make an error
--# endif
--#endif
-- ${cf_cv_main_return:-return}(0);
--}
--_ACEOF
--rm -f conftest$ac_exeext
--if { (eval echo "$as_me:5079: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:5082: \$? = $ac_status" >&5
-- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:5084: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:5087: \$? = $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
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
- fi
--rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:5377: 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
-+ break
- fi
-- rm -f $cf_tempfile
-
--fi
--echo "$as_me:5101: 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
-+ done
-+ fi
-+ test $cf_curs_lib = unknown && { { echo "$as_me:5385: error: no curses library found" >&5
-+echo "$as_me: error: no curses library found" >&2;}
-+ { (exit 1); exit 1; }; }
-
--echo "$as_me:5107: 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 5110 "configure"
-+ LIBS="-l$cf_curs_lib $cf_save_LIBS"
-+ if test "$cf_term_lib" = unknown ; then
-+ echo "$as_me:5391: 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 5394 "configure"
- #include "confdefs.h"
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--initscr(); tgoto("?", 0,0)
-+initscr()
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5122: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5406: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5125: \$? = $ac_status" >&5
-+ echo "$as_me:5409: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5128: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5412: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5131: \$? = $ac_status" >&5
-+ echo "$as_me:5415: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_result=yes
- else
-@@ -5137,1902 +5421,1770 @@
- cf_result=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--echo "$as_me:5140: result: $cf_result" >&5
-+ echo "$as_me:5424: result: $cf_result" >&5
- echo "${ECHO_T}$cf_result" >&6
--
--if test "$cf_result" = no ; then
--case $host_os in #(vi
--freebsd*) #(vi
-- echo "$as_me:5146: 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 5154 "configure"
-+ test $cf_result = no && { { echo "$as_me:5426: error: Cannot link curses library" >&5
-+echo "$as_me: error: Cannot link curses library" >&2;}
-+ { (exit 1); exit 1; }; }
-+ elif test "$cf_curs_lib" = "$cf_term_lib" ; then
-+ :
-+ elif test "$cf_term_lib" != predefined ; then
-+ echo "$as_me:5432: 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 5435 "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 tgoto ();
-+#include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--tgoto ();
-+initscr(); tgoto((char *)0, 0, 0);
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5173: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5447: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5176: \$? = $ac_status" >&5
-+ echo "$as_me:5450: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5179: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5453: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5182: \$? = $ac_status" >&5
-+ echo "$as_me:5456: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_mytinfo_tgoto=yes
-+ cf_result=no
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_mytinfo_tgoto=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:5193: 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
-- LIBS="-lmytinfo $LIBS"
--fi
-
-- ;;
--hpux10.*) #(vi
-- echo "$as_me:5201: 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 5209 "configure"
-+ LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 5465 "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 initscr ();
-+#include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--initscr ();
-+initscr()
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5228: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:5477: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:5231: \$? = $ac_status" >&5
-+ echo "$as_me:5480: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5234: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:5483: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5237: \$? = $ac_status" >&5
-+ echo "$as_me:5486: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_cur_colr_initscr=yes
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_cur_colr_initscr=no
-+cf_result=error
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
-+
- fi
--echo "$as_me:5248: 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
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+ echo "$as_me:5498: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+ fi
-+fi
-+fi
-+
-+ ;;
-+ncurses) #(vi
-
-- LIBS="-lcur_colr $LIBS"
-- ac_cv_func_initscr=yes
-+cf_ncuconfig_root=ncurses
-+
-+echo "Looking for ${cf_ncuconfig_root}-config"
-
-+if test -n "$ac_tool_prefix"; then
-+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
-+ 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:5516: 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
-+else
-+ if test -n "$NCURSES_CONFIG"; then
-+ ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # 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_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-+echo "$as_me:5531: found $ac_dir/$ac_word" >&5
-+break
-+done
-
-- echo "$as_me:5257: 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
-+fi
-+fi
-+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
-+if test -n "$NCURSES_CONFIG"; then
-+ echo "$as_me:5539: result: $NCURSES_CONFIG" >&5
-+echo "${ECHO_T}$NCURSES_CONFIG" >&6
-+else
-+ echo "$as_me:5542: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+ test -n "$NCURSES_CONFIG" && break
-+ done
-+fi
-+if test -z "$NCURSES_CONFIG"; then
-+ ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG
-+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
-+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:5555: 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
- else
-- ac_check_lib_save_LIBS=$LIBS
--LIBS="-lHcurses $LIBS"
-+ if test -n "$ac_ct_NCURSES_CONFIG"; then
-+ ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # 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_NCURSES_CONFIG="$ac_prog"
-+echo "$as_me:5570: found $ac_dir/$ac_word" >&5
-+break
-+done
-+
-+fi
-+fi
-+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
-+if test -n "$ac_ct_NCURSES_CONFIG"; then
-+ echo "$as_me:5578: result: $ac_ct_NCURSES_CONFIG" >&5
-+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
-+else
-+ echo "$as_me:5581: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+ test -n "$ac_ct_NCURSES_CONFIG" && break
-+done
-+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none"
-+
-+ NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG
-+fi
-+
-+if test "$NCURSES_CONFIG" != none ; then
-+
-+CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`"
-+
-+cf_add_libs="`$NCURSES_CONFIG --libs`"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+# even with config script, some packages use no-override for curses.h
-+
-+echo "$as_me:5614: 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
-+else
-+
-+cf_cv_ncurses_header=none
-+for cf_header in \
-+ ncurses/ncurses.h \
-+ ncurses/curses.h \
-+ ncurses.h \
-+ curses.h
-+do
- cat >conftest.$ac_ext <<_ACEOF
--#line 5265 "configure"
-+#line 5628 "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 initscr ();
-+#include <${cf_header}>
- int
- main ()
- {
--initscr ();
-+initscr(); tgoto("?", 0,0)
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5284: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:5640: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5287: \$? = $ac_status" >&5
-+ echo "$as_me:5643: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5290: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:5646: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5293: \$? = $ac_status" >&5
-+ echo "$as_me:5649: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_Hcurses_initscr=yes
-+ cf_cv_ncurses_header=$cf_header; break
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_Hcurses_initscr=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:5304: 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
--
-- # HP's header uses __HP_CURSES, but user claims _HP_CURSES.
-- LIBS="-lHcurses $LIBS"
-- CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES"
-- ac_cv_func_initscr=yes
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+done
-
- fi
-+echo "$as_me:5660: 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:5664: error: No curses header-files found" >&5
-+echo "$as_me: error: No curses header-files found" >&2;}
-+ { (exit 1); exit 1; }; }
- fi
-
-- ;;
--linux*)
-- case `arch 2>/dev/null` in
-- x86_64)
-- if test -d /lib64
-- then
--
--if test -n "/lib64" ; then
-- for cf_add_libdir in /lib64
-- do
-- if test $cf_add_libdir = /usr/lib ; then
-- :
-- elif test -d $cf_add_libdir
-- then
-- cf_have_libdir=no
-- if test -n "$LDFLAGS$LIBS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_libdir in $LDFLAGS $LIBS ; do
-- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-- cf_have_libdir=yes; break
-- fi
-- done
-- fi
-- if test "$cf_have_libdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
--
--echo "${as_me:-configure}:5343: testing adding $cf_add_libdir to library-path ..." 1>&5
-+# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
-
-- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-- fi
-- fi
-- done
-+for ac_header in $cf_cv_ncurses_header
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+echo "$as_me:5674: 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 5680 "configure"
-+#include "confdefs.h"
-+#include <$ac_header>
-+_ACEOF
-+if { (eval echo "$as_me:5684: \"$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:5690: \$? = $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:5709: 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
-
-- else
-+fi
-+done
-
--if test -n "/lib" ; then
-- for cf_add_libdir in /lib
-- do
-- if test $cf_add_libdir = /usr/lib ; then
-- :
-- elif test -d $cf_add_libdir
-- then
-- cf_have_libdir=no
-- if test -n "$LDFLAGS$LIBS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_libdir in $LDFLAGS $LIBS ; do
-- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-- cf_have_libdir=yes; break
-- fi
-- done
-- fi
-- if test "$cf_have_libdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-+cat >>confdefs.h <<\EOF
-+#define NCURSES 1
-+EOF
-
--echo "${as_me:-configure}:5372: testing adding $cf_add_libdir to library-path ..." 1>&5
-+cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-
-- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-- fi
-- fi
-- done
--fi
-+cat >>confdefs.h <<EOF
-+#define $cf_nculib_ROOT 1
-+EOF
-
-- fi
-- ;;
-- *)
-+cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
-
--if test -n "/lib" ; then
-- for cf_add_libdir in /lib
-- do
-- if test $cf_add_libdir = /usr/lib ; then
-- :
-- elif test -d $cf_add_libdir
-- then
-- cf_have_libdir=no
-- if test -n "$LDFLAGS$LIBS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_libdir in $LDFLAGS $LIBS ; do
-- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-- cf_have_libdir=yes; break
-- fi
-- done
-- fi
-- if test "$cf_have_libdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-+else
-
--echo "${as_me:-configure}:5403: testing adding $cf_add_libdir to library-path ..." 1>&5
-+cf_ncuhdr_root=ncurses
-
-- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-- fi
-- fi
-- done
--fi
-+test -n "$cf_cv_curses_dir" && \
-+test "$cf_cv_curses_dir" != "no" && { \
-
-- ;;
-- esac
-- ;;
--sunos3*|sunos4*)
-- if test -d /usr/5lib ; then
--
--if test -n "/usr/5lib" ; then
-- for cf_add_libdir in /usr/5lib
-+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
-- if test $cf_add_libdir = /usr/lib ; then
-- :
-- elif test -d $cf_add_libdir
-- then
-- cf_have_libdir=no
-- if test -n "$LDFLAGS$LIBS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_libdir in $LDFLAGS $LIBS ; do
-- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-- cf_have_libdir=yes; break
-- fi
-- done
-- fi
-- if test "$cf_have_libdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
--
--echo "${as_me:-configure}:5436: testing adding $cf_add_libdir to library-path ..." 1>&5
--
-- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-- fi
-- fi
-- done
--fi
--
-- LIBS="-lcurses -ltermcap $LIBS"
-- fi
-- ac_cv_func_initscr=yes
-- ;;
--esac
--
--if test ".$ac_cv_func_initscr" != .yes ; then
-- cf_save_LIBS="$LIBS"
-- cf_term_lib=""
-- cf_curs_lib=""
--
-- if test ".${cf_cv_ncurses_version:-no}" != .no
-- then
-- cf_check_list="ncurses curses cursesX"
-- else
-- cf_check_list="cursesX curses ncurses"
-- fi
-+ while test $cf_add_incdir != /usr/include
-+ do
-+ if test -d $cf_add_incdir
-+ then
-+ cf_have_incdir=no
-+ if test -n "$CFLAGS$CPPFLAGS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-+ cf_have_incdir=yes; break
-+ fi
-+ done
-+ fi
-
-- # Check for library containing tgoto. Do this before curses library
-- # because it may be needed to link the test-case for initscr.
-- echo "$as_me:5464: 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 5470 "configure"
-+ if test "$cf_have_incdir" = no ; then
-+ if test "$cf_add_incdir" = /usr/local/include ; then
-+ if test "$GCC" = yes
-+ then
-+ cf_save_CPPFLAGS=$CPPFLAGS
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 5762 "configure"
- #include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char tgoto (); below. */
--#include <assert.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 tgoto ();
--char (*f) ();
--
-+#include <stdio.h>
- int
- main ()
- {
--/* The GNU C library defines this 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_tgoto) || defined (__stub___tgoto)
--choke me
--#else
--f = tgoto;
--#endif
--
-+printf("Hello")
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5501: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:5774: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5504: \$? = $ac_status" >&5
-+ echo "$as_me:5777: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5507: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:5780: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5510: \$? = $ac_status" >&5
-+ echo "$as_me:5783: \$? = $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
--ac_cv_func_tgoto=no
-+cf_have_incdir=yes
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS=$cf_save_CPPFLAGS
-+ fi
-+ fi
-+ fi
-+
-+ if test "$cf_have_incdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-+
-+echo "${as_me:-configure}:5800: 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%'`
-+ test "$cf_top_incdir" = "$cf_add_incdir" && break
-+ cf_add_incdir="$cf_top_incdir"
-+ else
-+ break
-+ fi
-+ fi
-+ done
-+ done
- fi
--echo "$as_me:5520: result: $ac_cv_func_tgoto" >&5
--echo "${ECHO_T}$ac_cv_func_tgoto" >&6
--if test $ac_cv_func_tgoto = yes; then
-- cf_term_lib=predefined
--else
-
-- for cf_term_lib in $cf_check_list termcap termlib unknown
-- do
-- as_ac_Lib=`echo "ac_cv_lib_$cf_term_lib''_tgoto" | $as_tr_sh`
--echo "$as_me:5529: 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 "$as_me:5817: 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
-- ac_check_lib_save_LIBS=$LIBS
--LIBS="-l$cf_term_lib $LIBS"
--cat >conftest.$ac_ext <<_ACEOF
--#line 5537 "configure"
-+
-+ 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"
-+ for cf_header in $cf_header_list
-+ do
-+
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 5829 "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 tgoto ();
-+#include <$cf_header>
- int
- main ()
- {
--tgoto ();
-+
-+#ifdef NCURSES_VERSION
-+
-+printf("%s\n", NCURSES_VERSION);
-+#else
-+#ifdef __NCURSES_H
-+printf("old\n");
-+#else
-+ make an error
-+#endif
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5556: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:5853: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5559: \$? = $ac_status" >&5
-+ echo "$as_me:5856: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5562: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:5859: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5565: \$? = $ac_status" >&5
-+ echo "$as_me:5862: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- eval "$as_ac_Lib=yes"
-+ cf_cv_ncurses_h=$cf_header
-+
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--eval "$as_ac_Lib=no"
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:5576: 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
-- break
-+cf_cv_ncurses_h=no
- fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-
-- done
-+ test "$cf_cv_ncurses_h" != no && break
-+ done
-
- fi
-+echo "$as_me:5877: result: $cf_cv_ncurses_h" >&5
-+echo "${ECHO_T}$cf_cv_ncurses_h" >&6
-
-- # Check for library containing initscr
-- test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS"
-- for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown
-- do
-- as_ac_Lib=`echo "ac_cv_lib_$cf_curs_lib''_initscr" | $as_tr_sh`
--echo "$as_me:5591: checking for initscr in -l$cf_curs_lib" >&5
--echo $ECHO_N "checking for initscr in -l$cf_curs_lib... $ECHO_C" >&6
--if eval "test \"\${$as_ac_Lib+set}\" = set"; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
-+if test "$cf_cv_ncurses_h" != no ; then
-+ cf_cv_ncurses_header=$cf_cv_ncurses_h
- else
-- ac_check_lib_save_LIBS=$LIBS
--LIBS="-l$cf_curs_lib $LIBS"
--cat >conftest.$ac_ext <<_ACEOF
--#line 5599 "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 initscr ();
--int
--main ()
--{
--initscr ();
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5618: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:5621: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5624: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:5627: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- eval "$as_ac_Lib=yes"
-+echo "$as_me:5884: 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
- else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--eval "$as_ac_Lib=no"
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:5638: 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
-- break
--fi
-
-- done
-- test $cf_curs_lib = unknown && { { echo "$as_me:5645: error: no curses library found" >&5
--echo "$as_me: error: no curses library found" >&2;}
-- { (exit 1); exit 1; }; }
-+ test -n "$verbose" && echo
-
-- LIBS="-l$cf_curs_lib $cf_save_LIBS"
-- if test "$cf_term_lib" = unknown ; then
-- echo "$as_me:5651: 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 5654 "configure"
--#include "confdefs.h"
--#include <${cf_cv_ncurses_header:-curses.h}>
--int
--main ()
--{
--initscr()
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5666: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:5669: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5672: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:5675: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- cf_result=yes
--else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--cf_result=no
-+cf_search=
-+
-+# collect the current set of include-directories from compiler flags
-+cf_header_path_list=""
-+if test -n "${CFLAGS}${CPPFLAGS}" ; then
-+ for cf_header_path in $CPPFLAGS $CFLAGS
-+ do
-+ case $cf_header_path in #(vi
-+ -I*)
-+ cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
-+
-+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"
-+}
-+
-+ cf_header_path_list="$cf_header_path_list $cf_search"
-+ ;;
-+ esac
-+ done
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- echo "$as_me:5684: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
-- test $cf_result = no && { { echo "$as_me:5686: error: Cannot link curses library" >&5
--echo "$as_me: error: Cannot link curses library" >&2;}
-- { (exit 1); exit 1; }; }
-- elif test "$cf_curs_lib" = "$cf_term_lib" ; then
-- :
-- elif test "$cf_term_lib" != predefined ; then
-- echo "$as_me:5692: 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 5695 "configure"
--#include "confdefs.h"
--#include <${cf_cv_ncurses_header:-curses.h}>
--int
--main ()
--{
--initscr(); tgoto((char *)0, 0, 0);
-- ;
-- return 0;
-+
-+# add the variations for the package we are looking for
-+
-+cf_search=
-+
-+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"
- }
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5707: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:5710: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5713: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:5716: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- cf_result=no
--else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
-
-- LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 5725 "configure"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
-+}
-+
-+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 "$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"
-+}
-+
-+cf_search="$cf_search $cf_header_path_list"
-+
-+ test -n "$verbose" && echo search path $cf_search
-+ cf_save2_CPPFLAGS="$CPPFLAGS"
-+ for cf_incdir in $cf_search
-+ do
-+
-+if test -n "$cf_incdir" ; then
-+ for cf_add_incdir in $cf_incdir
-+ do
-+ while test $cf_add_incdir != /usr/include
-+ do
-+ if test -d $cf_add_incdir
-+ then
-+ cf_have_incdir=no
-+ if test -n "$CFLAGS$CPPFLAGS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-+ cf_have_incdir=yes; break
-+ fi
-+ done
-+ fi
-+
-+ if test "$cf_have_incdir" = no ; then
-+ if test "$cf_add_incdir" = /usr/local/include ; then
-+ if test "$GCC" = yes
-+ then
-+ cf_save_CPPFLAGS=$CPPFLAGS
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 6002 "configure"
- #include "confdefs.h"
--#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <stdio.h>
- int
- main ()
- {
--initscr()
-+printf("Hello")
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:5737: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:6014: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5740: \$? = $ac_status" >&5
-+ echo "$as_me:6017: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:5743: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:6020: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5746: \$? = $ac_status" >&5
-+ echo "$as_me:6023: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_result=yes
-+ :
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_result=error
-+cf_have_incdir=yes
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS=$cf_save_CPPFLAGS
-+ fi
-+ fi
-+ fi
-
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- echo "$as_me:5758: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
-- fi
--fi
-+ if test "$cf_have_incdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-+
-+echo "${as_me:-configure}:6040: 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%'`
-+ test "$cf_top_incdir" = "$cf_add_incdir" && break
-+ cf_add_incdir="$cf_top_incdir"
-+ else
-+ break
-+ fi
-+ fi
-+ done
-+ done
- fi
-
--echo "$as_me:5764: 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
-+ for cf_header in \
-+ ncurses.h \
-+ curses.h
-+ do
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 5771 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 6061 "configure"
- #include "confdefs.h"
-
--#include <${cf_cv_ncurses_header:-curses.h}>
--#include <form.h>
--
-+#include <$cf_header>
- int
- main ()
- {
-
-- FORM *form;
-- int y = current_field(form)->cursor_ypos;
-- int x = current_field(form)->cursor_xpos;
-+#ifdef NCURSES_VERSION
-+
-+printf("%s\n", NCURSES_VERSION);
-+#else
-+#ifdef __NCURSES_H
-+printf("old\n");
-+#else
-+ make an error
-+#endif
-+#endif
-
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5790: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:6085: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5793: \$? = $ac_status" >&5
-+ echo "$as_me:6088: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5796: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6091: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5799: \$? = $ac_status" >&5
-+ echo "$as_me:6094: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_netbsd_form_h=yes
-+ cf_cv_ncurses_h2=$cf_header
-
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_netbsd_form_h=no
-+cf_cv_ncurses_h2=no
- fi
- 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
-+ break
-+ fi
-+ test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6
-+ done
-+ CPPFLAGS="$cf_save2_CPPFLAGS"
-+ test "$cf_cv_ncurses_h2" != no && break
-+ done
-+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:6115: error: not found" >&5
-+echo "$as_me: error: not found" >&2;}
-+ { (exit 1); exit 1; }; }
-+
- fi
--echo "$as_me:5811: result: $cf_cv_netbsd_form_h" >&5
--echo "${ECHO_T}$cf_cv_netbsd_form_h" >&6
-+echo "$as_me:6120: result: $cf_cv_ncurses_h2" >&5
-+echo "${ECHO_T}$cf_cv_ncurses_h2" >&6
-
--test "$cf_cv_netbsd_form_h" = yes && cat >>confdefs.h <<\EOF
--#define HAVE_NETBSD_FORM_H 1
--EOF
-+ 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
-
--echo "$as_me:5818: 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
-+if test -n "$cf_1st_incdir" ; then
-+ for cf_add_incdir in $cf_1st_incdir
-+ do
-+ while test $cf_add_incdir != /usr/include
-+ do
-+ if test -d $cf_add_incdir
-+ then
-+ cf_have_incdir=no
-+ if test -n "$CFLAGS$CPPFLAGS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-+ cf_have_incdir=yes; break
-+ fi
-+ done
-+ fi
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 5825 "configure"
-+ if test "$cf_have_incdir" = no ; then
-+ if test "$cf_add_incdir" = /usr/local/include ; then
-+ if test "$GCC" = yes
-+ then
-+ cf_save_CPPFLAGS=$CPPFLAGS
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 6153 "configure"
- #include "confdefs.h"
--
--#include <${cf_cv_ncurses_header:-curses.h}>
--#include <menu.h>
--
-+#include <stdio.h>
- int
- main ()
- {
--
-- MENU *menu;
-- int y = menu->max_item_width;
--
-+printf("Hello")
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5843: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:6165: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5846: \$? = $ac_status" >&5
-+ echo "$as_me:6168: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5849: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6171: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5852: \$? = $ac_status" >&5
-+ echo "$as_me:6174: \$? = $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
--cf_cv_netbsd_menu_h=no
-+cf_have_incdir=yes
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS=$cf_save_CPPFLAGS
-+ fi
-+ fi
-+ fi
-
--fi
--echo "$as_me:5864: result: $cf_cv_netbsd_menu_h" >&5
--echo "${ECHO_T}$cf_cv_netbsd_menu_h" >&6
-+ if test "$cf_have_incdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--test "$cf_cv_netbsd_menu_h" = yes && cat >>confdefs.h <<\EOF
--#define HAVE_NETBSD_MENU_H 1
--EOF
-+echo "${as_me:-configure}:6191: testing adding $cf_add_incdir to include-path ..." 1>&5
-
-- ;;
--ncurses)
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
--cf_ncuconfig_root=ncurses
-+ 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
-+ break
-+ fi
-+ fi
-+ done
-+ done
-+fi
-
--echo "Looking for ${cf_ncuconfig_root}-config"
--for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
--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:5881: checking for $ac_word" >&5
--echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
--if test "${ac_cv_path_NCURSES_CONFIG+set}" = set; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
--else
-- case $NCURSES_CONFIG in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_NCURSES_CONFIG="$NCURSES_CONFIG" # 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_NCURSES_CONFIG="$ac_dir/$ac_word"
-- echo "$as_me:5898: found $ac_dir/$ac_word" >&5
-- break
- fi
--done
-
-- ;;
-+# Set definitions to allow ifdef'ing for ncurses.h
-+
-+case $cf_cv_ncurses_header in # (vi
-+*ncurses.h)
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSES_H 1
-+EOF
-+
-+ ;;
- esac
--fi
--NCURSES_CONFIG=$ac_cv_path_NCURSES_CONFIG
-
--if test -n "$NCURSES_CONFIG"; then
-- echo "$as_me:5909: result: $NCURSES_CONFIG" >&5
--echo "${ECHO_T}$NCURSES_CONFIG" >&6
--else
-- echo "$as_me:5912: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
-+case $cf_cv_ncurses_header in # (vi
-+ncurses/curses.h|ncurses/ncurses.h)
-
-- test -n "$NCURSES_CONFIG" && break
--done
--test -n "$NCURSES_CONFIG" || NCURSES_CONFIG="none"
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSES_NCURSES_H 1
-+EOF
-
--if test "$NCURSES_CONFIG" != none ; then
-+ ;;
-+ncursesw/curses.h|ncursesw/ncurses.h)
-
--CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`"
--LIBS="`$NCURSES_CONFIG --libs` $LIBS"
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSESW_NCURSES_H 1
-+EOF
-
--# even with config script, some packages use no-override for curses.h
-+ ;;
-+esac
-
--echo "$as_me:5927: 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 "$as_me:6237: 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
-
--cf_cv_ncurses_header=none
--for cf_header in \
-- ncurses/curses.h \
-- ncurses/ncurses.h \
-- curses.h \
-- ncurses.h
-+case ${cf_cv_ncurses_header} in #(vi
-+*/ncurses.h|*/ncursesw.h) #(vi
-+ cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
-+ ;;
-+*)
-+ cf_term_header=term.h
-+ ;;
-+esac
-+
-+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 5941 "configure"
-+#line 6255 "configure"
- #include "confdefs.h"
--#include <${cf_header}>
-+#include <stdio.h>
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <$cf_test>
-+
- int
- main ()
- {
--initscr(); tgoto("?", 0,0)
-+int x = auto_left_margin
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:5953: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:6270: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:5956: \$? = $ac_status" >&5
-+ echo "$as_me:6273: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:5959: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6276: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:5962: \$? = $ac_status" >&5
-+ echo "$as_me:6279: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ncurses_header=$cf_header; break
-+
-+ cf_cv_term_header="$cf_test"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+
-+ cf_cv_term_header=unknown
-+
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-+ test "$cf_cv_term_header" != unknown && break
- done
-
- fi
--echo "$as_me:5973: result: $cf_cv_ncurses_header" >&5
--echo "${ECHO_T}$cf_cv_ncurses_header" >&6
-+echo "$as_me:6295: result: $cf_cv_term_header" >&5
-+echo "${ECHO_T}$cf_cv_term_header" >&6
-
--if test "$cf_cv_ncurses_header" = none ; then
-- { { echo "$as_me:5977: error: No curses header-files found" >&5
--echo "$as_me: error: No curses header-files found" >&2;}
-- { (exit 1); exit 1; }; }
--fi
-+# Set definitions to allow ifdef'ing to accommodate subdirectories
-
--# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
-+case $cf_cv_term_header in # (vi
-+*term.h)
-
--for ac_header in $cf_cv_ncurses_header
--do
--as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:5987: 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 5993 "configure"
--#include "confdefs.h"
--#include <$ac_header>
--_ACEOF
--if { (eval echo "$as_me:5997: \"$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:6003: \$? = $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:6022: 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
-+cat >>confdefs.h <<\EOF
-+#define HAVE_TERM_H 1
- EOF
-
--fi
--done
-+ ;;
-+esac
-+
-+case $cf_cv_term_header in # (vi
-+ncurses/term.h) #(vi
-
- cat >>confdefs.h <<\EOF
--#define NCURSES 1
-+#define HAVE_NCURSES_TERM_H 1
- EOF
-
--cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+ ;;
-+ncursesw/term.h)
-
--cat >>confdefs.h <<EOF
--#define $cf_nculib_ROOT 1
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSESW_TERM_H 1
- EOF
-
--cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
-+ ;;
-+esac
-
--else
-+# some applications need this, but should check for NCURSES_VERSION
-
--cf_ncuhdr_root=ncurses
-+cat >>confdefs.h <<\EOF
-+#define NCURSES 1
-+EOF
-
--test -n "$cf_cv_curses_dir" && \
--test "$cf_cv_curses_dir" != "no" && { \
-+echo "$as_me:6333: 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
-+else
-
--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
-- do
-- if test -d $cf_add_incdir
-- then
-- cf_have_incdir=no
-- if test -n "$CFLAGS$CPPFLAGS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-- cf_have_incdir=yes; break
-- fi
-- done
-- fi
-+ cf_cv_ncurses_version=no
-+ cf_tempfile=out$$
-+ rm -f $cf_tempfile
-+ if test "$cross_compiling" = yes; then
-
-- if test "$cf_have_incdir" = no ; then
-- if test "$cf_add_incdir" = /usr/local/include ; then
-- if test "$GCC" = yes
-- then
-- cf_save_CPPFLAGS=$CPPFLAGS
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 6075 "configure"
-+ # This will not work if the preprocessor splits the line after the
-+ # Autoconf token. The 'unproto' program does that.
-+ cat > conftest.$ac_ext <<EOF
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#undef Autoconf
-+#ifdef NCURSES_VERSION
-+Autoconf NCURSES_VERSION
-+#else
-+#ifdef __NCURSES_H
-+Autoconf "old"
-+#endif
-+;
-+#endif
-+EOF
-+ cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-+ { (eval echo "$as_me:6359: \"$cf_try\"") >&5
-+ (eval $cf_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:6362: \$? = $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%".*%%'`
-+ test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
-+ rm -f conftest.out
-+ fi
-+
-+else
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 6372 "configure"
- #include "confdefs.h"
-+
-+#include <${cf_cv_ncurses_header:-curses.h}>
- #include <stdio.h>
--int
--main ()
-+int main()
- {
--printf("Hello")
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6087: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:6090: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6093: \"$ac_try\"") >&5
-+ FILE *fp = fopen("$cf_tempfile", "w");
-+#ifdef NCURSES_VERSION
-+# ifdef NCURSES_VERSION_PATCH
-+ fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
-+# else
-+ fprintf(fp, "%s\n", NCURSES_VERSION);
-+# endif
-+#else
-+# ifdef __NCURSES_H
-+ fprintf(fp, "old\n");
-+# else
-+ make an error
-+# endif
-+#endif
-+ ${cf_cv_main_return:-return}(0);
-+}
-+_ACEOF
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:6397: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:6400: \$? = $ac_status" >&5
-+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+ { (eval echo "$as_me:6402: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6096: \$? = $ac_status" >&5
-+ echo "$as_me:6405: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- :
-+
-+ cf_cv_ncurses_version=`cat $cf_tempfile`
- else
-- echo "$as_me: failed program was:" >&5
-+ echo "$as_me: program exited with status $ac_status" >&5
-+echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_have_incdir=yes
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS=$cf_save_CPPFLAGS
-- fi
-- fi
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
--
--echo "${as_me:-configure}:6113: 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%'`
-- test "$cf_top_incdir" = "$cf_add_incdir" && break
-- cf_add_incdir="$cf_top_incdir"
-- else
-- break
-- fi
-- fi
-- done
-- done
-+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
-+ rm -f $cf_tempfile
-
--}
-+fi
-+echo "$as_me:6419: 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:6130: 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
-+cf_nculib_root=ncurses
-+ # This works, except for the special case where we find gpm, but
-+ # ncurses is in a nonstandard location via $LIBS, and we really want
-+ # to link gpm.
-+cf_ncurses_LIBS=""
-+cf_ncurses_SAVE="$LIBS"
-+echo "$as_me:6432: 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
--
-- 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"
-- for cf_header in $cf_header_list
-- do
--
-- cat >conftest.$ac_ext <<_ACEOF
--#line 6142 "configure"
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lgpm $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 6440 "configure"
- #include "confdefs.h"
-
--#include <$cf_header>
-+/* 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 Gpm_Open ();
- int
- main ()
- {
--
--#ifdef NCURSES_VERSION
--
--printf("%s\n", NCURSES_VERSION);
--#else
--#ifdef __NCURSES_H
--printf("old\n");
--#else
-- make an error
--#endif
--#endif
--
-+Gpm_Open ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6166: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:6459: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6169: \$? = $ac_status" >&5
-+ echo "$as_me:6462: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6172: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:6465: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6175: \$? = $ac_status" >&5
-+ echo "$as_me:6468: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ncurses_h=$cf_header
--
-+ ac_cv_lib_gpm_Gpm_Open=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_ncurses_h=no
-+ac_cv_lib_gpm_Gpm_Open=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--
-- test "$cf_cv_ncurses_h" != no && break
-- done
--
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:6190: 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:6197: 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 "$as_me:6479: 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:6482: 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
--
-- test -n "$verbose" && echo
--
--cf_search=
--
--# collect the current set of include-directories from compiler flags
--cf_header_path_list=""
--if test -n "${CFLAGS}${CPPFLAGS}" ; then
-- for cf_header_path in $CPPFLAGS $CFLAGS
-- do
-- case $cf_header_path in #(vi
-- -I*)
-- cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
--
--test "$cf_header_path" != "NONE" && \
--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"
--}
--
-- cf_header_path_list="$cf_header_path_list $cf_search"
-- ;;
-- esac
-- done
--fi
--
--# add the variations for the package we are looking for
--
--cf_search=
--
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr"
-- test -d /usr/include && cf_search="$cf_search /usr/include"
-- test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root"
-- test -d /usr/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include"
-- test -d /usr/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/$cf_ncuhdr_root/include"
-- test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "$prefix" != "NONE" && \
--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 "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr/local"
-- test -d /usr/local/include && cf_search="$cf_search /usr/local/include"
-- test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root"
-- test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include"
-- test -d /usr/local/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include"
-- test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /opt"
-- test -d /opt/include && cf_search="$cf_search /opt/include"
-- test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root"
-- test -d /opt/include/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include"
-- test -d /opt/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/$cf_ncuhdr_root/include"
-- test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under $HOME"
-- test -d $HOME/include && cf_search="$cf_search $HOME/include"
-- test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root"
-- test -d $HOME/include/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include"
-- test -d $HOME/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include"
-- test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--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 "$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"
--}
--
--cf_search="$cf_search $cf_header_path_list"
--
-- test -n "$verbose" && echo search path $cf_search
-- cf_save2_CPPFLAGS="$CPPFLAGS"
-- for cf_incdir in $cf_search
-- do
--
--if test -n "$cf_incdir" ; then
-- for cf_add_incdir in $cf_incdir
-- do
-- while test $cf_add_incdir != /usr/include
-- do
-- if test -d $cf_add_incdir
-- then
-- cf_have_incdir=no
-- if test -n "$CFLAGS$CPPFLAGS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-- cf_have_incdir=yes; break
-- fi
-- done
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- if test "$cf_add_incdir" = /usr/local/include ; then
-- if test "$GCC" = yes
-- then
-- cf_save_CPPFLAGS=$CPPFLAGS
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 6337 "configure"
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lgpm $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 6490 "configure"
- #include "confdefs.h"
--#include <stdio.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 initscr ();
- int
- main ()
- {
--printf("Hello")
-+initscr ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6349: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:6509: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6352: \$? = $ac_status" >&5
-+ echo "$as_me:6512: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6355: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:6515: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6358: \$? = $ac_status" >&5
-+ echo "$as_me:6518: \$? = $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
--cf_have_incdir=yes
-+ac_cv_lib_gpm_initscr=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS=$cf_save_CPPFLAGS
-- fi
-- fi
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
--
--echo "${as_me:-configure}:6375: 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%'`
-- test "$cf_top_incdir" = "$cf_add_incdir" && break
-- cf_add_incdir="$cf_top_incdir"
-- else
-- break
-- fi
-- fi
-- done
-- done
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:6529: 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
-+ LIBS="$cf_ncurses_SAVE"
-+else
-+ cf_ncurses_LIBS="-lgpm"
- fi
-
-- for cf_header in \
-- ncurses.h \
-- curses.h
-- do
-+fi
-
-- cat >conftest.$ac_ext <<_ACEOF
--#line 6396 "configure"
-+case $host_os in #(vi
-+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).
-+ if test "$cf_nculib_root" = ncurses ; then
-+ echo "$as_me:6544: 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 6552 "configure"
- #include "confdefs.h"
-
--#include <$cf_header>
-+/* 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 tgoto ();
- int
- main ()
- {
--
--#ifdef NCURSES_VERSION
--
--printf("%s\n", NCURSES_VERSION);
--#else
--#ifdef __NCURSES_H
--printf("old\n");
--#else
-- make an error
--#endif
--#endif
--
-+tgoto ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6420: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:6571: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6423: \$? = $ac_status" >&5
-+ echo "$as_me:6574: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6426: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:6577: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6429: \$? = $ac_status" >&5
-+ echo "$as_me:6580: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ncurses_h2=$cf_header
--
-+ ac_cv_lib_mytinfo_tgoto=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_ncurses_h2=no
-+ac_cv_lib_mytinfo_tgoto=no
- fi
--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
-- break
-- fi
-- test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6
-- done
-- CPPFLAGS="$cf_save2_CPPFLAGS"
-- test "$cf_cv_ncurses_h2" != no && break
-- done
-- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:6450: error: not found" >&5
--echo "$as_me: error: not found" >&2;}
-- { (exit 1); exit 1; }; }
--
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:6591: 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
-+ cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
- fi
--echo "$as_me:6455: 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
- fi
-+ ;;
-+esac
-
--if test -n "$cf_1st_incdir" ; then
-- for cf_add_incdir in $cf_1st_incdir
-- do
-- while test $cf_add_incdir != /usr/include
-+cf_add_libs="$cf_ncurses_LIBS"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+do
-+ for cf_add_2lib in $cf_add_libs
- do
-- if test -d $cf_add_incdir
-- then
-- cf_have_incdir=no
-- if test -n "$CFLAGS$CPPFLAGS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-- cf_have_incdir=yes; break
-- fi
-- done
-+ 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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
-- if test "$cf_have_incdir" = no ; then
-- if test "$cf_add_incdir" = /usr/local/include ; then
-- if test "$GCC" = yes
-- then
-- cf_save_CPPFLAGS=$CPPFLAGS
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 6488 "configure"
-+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
-+then
-+
-+cf_add_libs="-l$cf_nculib_root"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+else
-+
-+ eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
-+ cf_libdir=""
-+ echo "$as_me:6640: 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 6646 "configure"
- #include "confdefs.h"
--#include <stdio.h>
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char initscr (); below. */
-+#include <assert.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 initscr ();
-+char (*f) ();
-+
- int
- main ()
- {
--printf("Hello")
-+/* The GNU C library defines this 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_initscr) || defined (__stub___initscr)
-+choke me
-+#else
-+f = initscr; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6500: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:6677: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6503: \$? = $ac_status" >&5
-+ echo "$as_me:6680: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6506: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:6683: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6509: \$? = $ac_status" >&5
-+ echo "$as_me:6686: \$? = $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
--cf_have_incdir=yes
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS=$cf_save_CPPFLAGS
-- fi
-- fi
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
--
--echo "${as_me:-configure}:6526: 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%'`
-- test "$cf_top_incdir" = "$cf_add_incdir" && break
-- cf_add_incdir="$cf_top_incdir"
-- else
-- break
-- fi
-- fi
-- done
-- done
-+ac_cv_func_initscr=no
- fi
--
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--
--# Set definitions to allow ifdef'ing for ncurses.h
--
--case $cf_cv_ncurses_header in # (vi
--*ncurses.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSES_H 1
--EOF
--
-- ;;
--esac
--
--case $cf_cv_ncurses_header in # (vi
--ncurses/curses.h|ncurses/ncurses.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSES_NCURSES_H 1
--EOF
--
-- ;;
--ncursesw/curses.h|ncursesw/ncurses.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSESW_NCURSES_H 1
--EOF
--
-- ;;
--esac
--
--echo "$as_me:6569: 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
-+echo "$as_me:6696: 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'
- else
-
--case ${cf_cv_ncurses_header} in #(vi
--*/ncurses.h|*/ncursesw.h) #(vi
-- cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
-- ;;
--*)
-- cf_term_header=term.h
-- ;;
--esac
--
--for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
--do
--cat >conftest.$ac_ext <<_ACEOF
--#line 6587 "configure"
-+ cf_save_LIBS="$LIBS"
-+ echo "$as_me:6703: 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 6707 "configure"
- #include "confdefs.h"
--#include <stdio.h>
- #include <${cf_cv_ncurses_header:-curses.h}>
--#include <$cf_test>
--
- int
- main ()
- {
--int x = auto_left_margin
-+initscr()
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:6602: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:6719: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6605: \$? = $ac_status" >&5
-+ echo "$as_me:6722: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:6608: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:6725: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6611: \$? = $ac_status" >&5
-+ echo "$as_me:6728: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-+ echo "$as_me:6730: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
-
-- cf_cv_term_header="$cf_test"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+echo "$as_me:6737: result: no" >&5
-+echo "${ECHO_T}no" >&6
-
-- cf_cv_term_header=unknown
-+cf_search=
-+cf_library_path_list=""
-+if test -n "${LDFLAGS}${LIBS}" ; then
-+ for cf_library_path in $LDFLAGS $LIBS
-+ do
-+ case $cf_library_path in #(vi
-+ -L*)
-+ cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
-
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- test "$cf_cv_term_header" != unknown && break
--done
-+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"
-+}
-
-+ cf_library_path_list="$cf_library_path_list $cf_search"
-+ ;;
-+ esac
-+ done
- fi
--echo "$as_me:6627: 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 # (vi
--*term.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_TERM_H 1
--EOF
--
-- ;;
--esac
--
--case $cf_cv_term_header in # (vi
--ncurses/term.h) #(vi
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSES_TERM_H 1
--EOF
-
-- ;;
--ncursesw/term.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSESW_TERM_H 1
--EOF
-+cf_search=
-
-- ;;
--esac
-+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"
-+}
-
--# some applications need this, but should check for NCURSES_VERSION
--cat >>confdefs.h <<\EOF
--#define NCURSES 1
--EOF
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+do
-
--echo "$as_me:6661: 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
--else
-+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 -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"
-+}
-
-- cf_cv_ncurses_version=no
-- cf_tempfile=out$$
-- rm -f $cf_tempfile
-- if test "$cross_compiling" = yes; then
-+done
-
-- # This will not work if the preprocessor splits the line after the
-- # Autoconf token. The 'unproto' program does that.
-- cat > conftest.$ac_ext <<EOF
--#include <${cf_cv_ncurses_header:-curses.h}>
--#undef Autoconf
--#ifdef NCURSES_VERSION
--Autoconf NCURSES_VERSION
--#else
--#ifdef __NCURSES_H
--Autoconf "old"
--#endif
--;
--#endif
--EOF
-- cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-- { (eval echo "$as_me:6687: \"$cf_try\"") >&5
-- (eval $cf_try) 2>&5
-- ac_status=$?
-- echo "$as_me:6690: \$? = $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%".*%%'`
-- test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
-- rm -f conftest.out
-- fi
-+cf_search="$cf_library_path_list $cf_search"
-
--else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 6700 "configure"
-+ for cf_libdir in $cf_search
-+ do
-+ echo "$as_me:6805: 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 6809 "configure"
- #include "confdefs.h"
--
- #include <${cf_cv_ncurses_header:-curses.h}>
--#include <stdio.h>
--int main()
-+int
-+main ()
- {
-- FILE *fp = fopen("$cf_tempfile", "w");
--#ifdef NCURSES_VERSION
--# ifdef NCURSES_VERSION_PATCH
-- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
--# else
-- fprintf(fp, "%s\n", NCURSES_VERSION);
--# endif
--#else
--# ifdef __NCURSES_H
-- fprintf(fp, "old\n");
--# else
-- make an error
--# endif
--#endif
-- ${cf_cv_main_return:-return}(0);
-+initscr()
-+ ;
-+ return 0;
- }
- _ACEOF
--rm -f conftest$ac_exeext
--if { (eval echo "$as_me:6725: \"$ac_link\"") >&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:6821: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6728: \$? = $ac_status" >&5
-- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:6730: \"$ac_try\"") >&5
-+ echo "$as_me:6824: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:6827: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6733: \$? = $ac_status" >&5
-+ echo "$as_me:6830: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
--
-- cf_cv_ncurses_version=`cat $cf_tempfile`
-+ echo "$as_me:6832: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
-+ break
- else
-- echo "$as_me: program exited with status $ac_status" >&5
--echo "$as_me: failed program was:" >&5
-+ echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+echo "$as_me:6839: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+ LIBS="$cf_save_LIBS"
- fi
--rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+ done
-+
- fi
-- rm -f $cf_tempfile
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-
- fi
--echo "$as_me:6747: 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
-
--cf_nculib_root=ncurses
-- # This works, except for the special case where we find gpm, but
-- # ncurses is in a nonstandard location via $LIBS, and we really want
-- # to link gpm.
--cf_ncurses_LIBS=""
--cf_ncurses_SAVE="$LIBS"
--echo "$as_me:6759: 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 6767 "configure"
--#include "confdefs.h"
-+eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
-
--/* 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 Gpm_Open ();
-+if test $cf_found_library = no ; then
-+ { { echo "$as_me:6854: error: Cannot link $cf_nculib_root library" >&5
-+echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
-+ { (exit 1); exit 1; }; }
-+fi
-+
-+fi
-+
-+if test -n "$cf_ncurses_LIBS" ; then
-+ echo "$as_me:6862: 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$%%"`
-+ if test "$q" != "$LIBS" ; then
-+ LIBS="$q"
-+ fi
-+ done
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 6872 "configure"
-+#include "confdefs.h"
-+#include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--Gpm_Open ();
-+initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6786: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6884: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6789: \$? = $ac_status" >&5
-+ echo "$as_me:6887: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6792: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6890: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6795: \$? = $ac_status" >&5
-+ echo "$as_me:6893: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_gpm_Gpm_Open=yes
-+ echo "$as_me:6895: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_gpm_Gpm_Open=no
-+echo "$as_me:6900: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+ LIBS="$cf_ncurses_SAVE"
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:6806: 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:6809: 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
-+
-+cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+cat >>confdefs.h <<EOF
-+#define $cf_nculib_ROOT 1
-+EOF
-+
-+fi
-+
-+ ;;
-+ncursesw) #(vi
-+
-+echo "$as_me:6918: 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
-- ac_check_lib_save_LIBS=$LIBS
--LIBS="-lgpm $LIBS"
--cat >conftest.$ac_ext <<_ACEOF
--#line 6817 "configure"
-+
-+ cf_save_LIBS="$LIBS"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 6926 "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 initscr ();
-+#include <stdlib.h>
- int
- main ()
- {
--initscr ();
-+putwc(0,0);
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6836: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6939: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6839: \$? = $ac_status" >&5
-+ echo "$as_me:6942: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6842: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6945: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6845: \$? = $ac_status" >&5
-+ echo "$as_me:6948: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_gpm_initscr=yes
-+ cf_cv_utf8_lib=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_gpm_initscr=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:6856: 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
-- LIBS="$cf_ncurses_SAVE"
--else
-- cf_ncurses_LIBS="-lgpm"
--fi
-
--fi
-+# 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}:6960: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
-+
-+cf_save_LIBS="$LIBS"
-
--case $host_os in #(vi
--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).
-- if test "$cf_nculib_root" = ncurses ; then
-- echo "$as_me:6871: 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 6879 "configure"
-+#line 6965 "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 tgoto ();
-+#include <libutf8.h>
- int
- main ()
- {
--tgoto ();
-+putwc(0,0);
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6898: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:6978: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6901: \$? = $ac_status" >&5
-+ echo "$as_me:6981: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6904: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:6984: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6907: \$? = $ac_status" >&5
-+ echo "$as_me:6987: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_mytinfo_tgoto=yes
-+
-+ cf_cv_find_linkage_utf8=yes
-+ cf_cv_header_path_utf8=/usr/include
-+ cf_cv_library_path_utf8=/usr/lib
-+
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_mytinfo_tgoto=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:6918: 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
-- cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
--fi
--
-- fi
-- ;;
--esac
--
--LIBS="$cf_ncurses_LIBS $LIBS"
-
--if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
--then
-- LIBS="-l$cf_nculib_root $LIBS"
--else
-+LIBS="-lutf8 $cf_save_LIBS"
-
-- eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
-- cf_libdir=""
-- echo "$as_me:6937: 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 6943 "configure"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 7001 "configure"
- #include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char initscr (); below. */
--#include <assert.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 initscr ();
--char (*f) ();
-
-+#include <libutf8.h>
- int
- main ()
- {
--/* The GNU C library defines this 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_initscr) || defined (__stub___initscr)
--choke me
--#else
--f = initscr;
--#endif
--
-+putwc(0,0);
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:6974: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:7014: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:6977: \$? = $ac_status" >&5
-+ echo "$as_me:7017: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:6980: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7020: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:6983: \$? = $ac_status" >&5
-+ echo "$as_me:7023: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_func_initscr=yes
-+
-+ cf_cv_find_linkage_utf8=yes
-+ cf_cv_header_path_utf8=/usr/include
-+ cf_cv_library_path_utf8=/usr/lib
-+ cf_cv_library_file_utf8="-lutf8"
-+
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_func_initscr=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+
-+ 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}:7040: testing find linkage for utf8 library ..." 1>&5
-+
-+echo "${as_me:-configure}:7042: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
-+
-+ cf_save_CPPFLAGS="$CPPFLAGS"
-+ cf_test_CPPFLAGS="$CPPFLAGS"
-+
-+cf_search=
-+
-+# collect the current set of include-directories from compiler flags
-+cf_header_path_list=""
-+if test -n "${CFLAGS}${CPPFLAGS}" ; then
-+ for cf_header_path in $CPPFLAGS $CFLAGS
-+ do
-+ case $cf_header_path in #(vi
-+ -I*)
-+ cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
-+
-+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"
-+}
-+
-+ cf_header_path_list="$cf_header_path_list $cf_search"
-+ ;;
-+ esac
-+ done
- fi
--echo "$as_me:6993: 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'
--else
-
-- cf_save_LIBS="$LIBS"
-- echo "$as_me:7000: 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 7004 "configure"
-+# add the variations for the package we are looking for
-+
-+cf_search=
-+
-+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"
-+}
-+
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
-+}
-+
-+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 "$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"
-+}
-+
-+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
-+ test -n "$verbose" && echo " ... testing $cf_cv_header_path_utf8" 1>&6
-+
-+echo "${as_me:-configure}:7133: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
-+
-+ CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_utf8"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 7137 "configure"
- #include "confdefs.h"
--#include <${cf_cv_ncurses_header:-curses.h}>
-+
-+#include <libutf8.h>
- int
- main ()
- {
--initscr()
-+putwc(0,0);
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7016: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:7150: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7019: \$? = $ac_status" >&5
-+ echo "$as_me:7153: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7022: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:7156: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7025: \$? = $ac_status" >&5
-+ echo "$as_me:7159: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:7027: result: yes" >&5
--echo "${ECHO_T}yes" >&6
-- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
-
-+ test -n "$verbose" && echo " ... found utf8 headers in $cf_cv_header_path_utf8" 1>&6
-+
-+echo "${as_me:-configure}:7164: 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
--echo "$as_me:7034: result: no" >&5
--echo "${ECHO_T}no" >&6
-+
-+ CPPFLAGS="$cf_save_CPPFLAGS"
-+
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ fi
-+ done
-+
-+ if test "$cf_cv_find_linkage_utf8" = maybe ; then
-+
-+echo "${as_me:-configure}:7182: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
-+
-+ cf_save_LIBS="$LIBS"
-+ cf_save_LDFLAGS="$LDFLAGS"
-+
-+ if test "$cf_cv_find_linkage_utf8" != yes ; then
-
- cf_search=
- cf_library_path_list=""
-@@ -7043,15 +7195,15 @@
- -L*)
- cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
-
--test "$cf_library_path" != "NONE" && \
-+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/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"
-@@ -7062,307 +7214,646 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr"
-- test -d /usr/lib && cf_search="$cf_search /usr/lib"
-- test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root"
-- test -d /usr/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/lib/$cf_nculib_root/lib"
-- test -d /usr/$cf_nculib_root/lib && cf_search="$cf_search /usr/$cf_nculib_root/lib"
-- test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "$prefix" != "NONE" && \
-+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/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 "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr/local"
-- test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib"
-- test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root"
-- test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib"
-- test -d /usr/local/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/$cf_nculib_root/lib"
-- test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /opt"
-- test -d /opt/lib && cf_search="$cf_search /opt/lib"
-- test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root"
-- test -d /opt/lib/$cf_nculib_root/lib && cf_search="$cf_search /opt/lib/$cf_nculib_root/lib"
-- test -d /opt/$cf_nculib_root/lib && cf_search="$cf_search /opt/$cf_nculib_root/lib"
-- test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under $HOME"
-- test -d $HOME/lib && cf_search="$cf_search $HOME/lib"
-- test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root"
-- test -d $HOME/lib/$cf_nculib_root/lib && cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib"
-- test -d $HOME/$cf_nculib_root/lib && cf_search="$cf_search $HOME/$cf_nculib_root/lib"
-- test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+done
-+
- cf_search="$cf_library_path_list $cf_search"
-
-- for cf_libdir in $cf_search
-- do
-- echo "$as_me:7124: 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 7128 "configure"
-+ for cf_cv_library_path_utf8 in $cf_search
-+ do
-+ 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}:7257: 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 7263 "configure"
- #include "confdefs.h"
--#include <${cf_cv_ncurses_header:-curses.h}>
-+
-+#include <libutf8.h>
- int
- main ()
- {
--initscr()
-+putwc(0,0);
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7140: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:7276: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:7143: \$? = $ac_status" >&5
-+ echo "$as_me:7279: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7146: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7282: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7149: \$? = $ac_status" >&5
-+ echo "$as_me:7285: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:7151: result: yes" >&5
--echo "${ECHO_T}yes" >&6
-- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
-- break
-+
-+ test -n "$verbose" && echo " ... found utf8 library in $cf_cv_library_path_utf8" 1>&6
-+
-+echo "${as_me:-configure}:7290: 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
--echo "$as_me:7158: result: no" >&5
--echo "${ECHO_T}no" >&6
-- LIBS="$cf_save_LIBS"
-+
-+ CPPFLAGS="$cf_save_CPPFLAGS"
-+ LIBS="$cf_save_LIBS"
-+ LDFLAGS="$cf_save_LDFLAGS"
-+
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- done
-+ fi
-+ done
-+ CPPFLAGS="$cf_save_CPPFLAGS"
-+ LDFLAGS="$cf_save_LDFLAGS"
-+ fi
-+
-+ else
-+ cf_cv_find_linkage_utf8=no
-+ fi
-
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-
- fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-
--eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
-+LIBS="$cf_save_LIBS"
-
--if test $cf_found_library = no ; then
-- { { echo "$as_me:7173: error: Cannot link $cf_nculib_root library" >&5
--echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
-- { (exit 1); exit 1; }; }
-+if test "$cf_cv_find_linkage_utf8" = yes ; then
-+cf_cv_utf8_lib=add-on
-+else
-+cf_cv_utf8_lib=no
- fi
-
- fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+fi
-+echo "$as_me:7332: result: $cf_cv_utf8_lib" >&5
-+echo "${ECHO_T}$cf_cv_utf8_lib" >&6
-
--if test -n "$cf_ncurses_LIBS" ; then
-- echo "$as_me:7181: 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$%%"`
-- if test "$q" != "$LIBS" ; then
-- LIBS="$q"
-+# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
-+# ncurses/ncursesw:
-+if test "$cf_cv_utf8_lib" = "add-on" ; then
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_LIBUTF8_H 1
-+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
-+ do
-+ if test -d $cf_add_incdir
-+ then
-+ cf_have_incdir=no
-+ if test -n "$CFLAGS$CPPFLAGS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-+ cf_have_incdir=yes; break
-+ fi
-+ done
- fi
-- done
-- cat >conftest.$ac_ext <<_ACEOF
--#line 7191 "configure"
-+
-+ if test "$cf_have_incdir" = no ; then
-+ if test "$cf_add_incdir" = /usr/local/include ; then
-+ if test "$GCC" = yes
-+ then
-+ cf_save_CPPFLAGS=$CPPFLAGS
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 7367 "configure"
- #include "confdefs.h"
--#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <stdio.h>
- int
- main ()
- {
--initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
-+printf("Hello")
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7203: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:7379: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7206: \$? = $ac_status" >&5
-+ echo "$as_me:7382: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7209: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:7385: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7212: \$? = $ac_status" >&5
-+ echo "$as_me:7388: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:7214: result: yes" >&5
--echo "${ECHO_T}yes" >&6
-+ :
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--echo "$as_me:7219: result: no" >&5
-+cf_have_incdir=yes
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS=$cf_save_CPPFLAGS
-+ fi
-+ fi
-+ fi
-+
-+ if test "$cf_have_incdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-+
-+echo "${as_me:-configure}:7405: 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%'`
-+ test "$cf_top_incdir" = "$cf_add_incdir" && break
-+ cf_add_incdir="$cf_top_incdir"
-+ else
-+ break
-+ fi
-+ fi
-+ done
-+ done
-+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
-+ :
-+ elif test -d $cf_add_libdir
-+ then
-+ cf_have_libdir=no
-+ if test -n "$LDFLAGS$LIBS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_libdir in $LDFLAGS $LIBS ; do
-+ if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-+ cf_have_libdir=yes; break
-+ fi
-+ done
-+ fi
-+ if test "$cf_have_libdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
-+
-+echo "${as_me:-configure}:7439: testing adding $cf_add_libdir to library-path ..." 1>&5
-+
-+ LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-+ fi
-+ fi
-+ done
-+fi
-+
-+cf_add_libs="$cf_cv_library_file_utf8"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+fi
-+
-+cf_ncuconfig_root=ncursesw
-+
-+echo "Looking for ${cf_ncuconfig_root}-config"
-+
-+if test -n "$ac_tool_prefix"; then
-+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
-+ 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:7474: 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
-+else
-+ if test -n "$NCURSES_CONFIG"; then
-+ ac_cv_prog_NCURSES_CONFIG="$NCURSES_CONFIG" # 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_NCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-+echo "$as_me:7489: found $ac_dir/$ac_word" >&5
-+break
-+done
-+
-+fi
-+fi
-+NCURSES_CONFIG=$ac_cv_prog_NCURSES_CONFIG
-+if test -n "$NCURSES_CONFIG"; then
-+ echo "$as_me:7497: result: $NCURSES_CONFIG" >&5
-+echo "${ECHO_T}$NCURSES_CONFIG" >&6
-+else
-+ echo "$as_me:7500: result: no" >&5
- echo "${ECHO_T}no" >&6
-- LIBS="$cf_ncurses_SAVE"
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+
-+ test -n "$NCURSES_CONFIG" && break
-+ done
- fi
-+if test -z "$NCURSES_CONFIG"; then
-+ ac_ct_NCURSES_CONFIG=$NCURSES_CONFIG
-+ for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
-+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:7513: 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
-+else
-+ if test -n "$ac_ct_NCURSES_CONFIG"; then
-+ ac_cv_prog_ac_ct_NCURSES_CONFIG="$ac_ct_NCURSES_CONFIG" # 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_NCURSES_CONFIG="$ac_prog"
-+echo "$as_me:7528: found $ac_dir/$ac_word" >&5
-+break
-+done
-
--cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+fi
-+fi
-+ac_ct_NCURSES_CONFIG=$ac_cv_prog_ac_ct_NCURSES_CONFIG
-+if test -n "$ac_ct_NCURSES_CONFIG"; then
-+ echo "$as_me:7536: result: $ac_ct_NCURSES_CONFIG" >&5
-+echo "${ECHO_T}$ac_ct_NCURSES_CONFIG" >&6
-+else
-+ echo "$as_me:7539: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-
--cat >>confdefs.h <<EOF
--#define $cf_nculib_ROOT 1
--EOF
-+ test -n "$ac_ct_NCURSES_CONFIG" && break
-+done
-+test -n "$ac_ct_NCURSES_CONFIG" || ac_ct_NCURSES_CONFIG="none"
-
-+ NCURSES_CONFIG=$ac_ct_NCURSES_CONFIG
- fi
-
-- ;;
--ncursesw)
-- cf_cv_libtype=w
-+if test "$NCURSES_CONFIG" != none ; then
-
--echo "$as_me:7238: 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
-+CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`"
-+
-+cf_add_libs="`$NCURSES_CONFIG --libs`"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+# even with config script, some packages use no-override for curses.h
-+
-+echo "$as_me:7572: 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
- else
-
-- cf_save_LIBS="$LIBS"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 7246 "configure"
-+cf_cv_ncurses_header=none
-+for cf_header in \
-+ ncursesw/ncurses.h \
-+ ncursesw/curses.h \
-+ ncurses.h \
-+ curses.h
-+do
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 7586 "configure"
- #include "confdefs.h"
--
--#include <stdlib.h>
-+#include <${cf_header}>
- int
- main ()
- {
--putwc(0,0);
-+initscr(); tgoto("?", 0,0)
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7259: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:7598: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7262: \$? = $ac_status" >&5
-+ echo "$as_me:7601: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7265: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:7604: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7268: \$? = $ac_status" >&5
-+ echo "$as_me:7607: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_utf8_lib=yes
-+ cf_cv_ncurses_header=$cf_header; break
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+done
-
--# 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=
-+fi
-+echo "$as_me:7618: result: $cf_cv_ncurses_header" >&5
-+echo "${ECHO_T}$cf_cv_ncurses_header" >&6
-
--echo "${as_me:-configure}:7280: testing Starting FIND_LINKAGE(utf8,) ..." 1>&5
-+if test "$cf_cv_ncurses_header" = none ; then
-+ { { echo "$as_me:7622: error: No curses header-files found" >&5
-+echo "$as_me: error: No curses header-files found" >&2;}
-+ { (exit 1); exit 1; }; }
-+fi
-
--cf_save_LIBS="$LIBS"
-+# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 7285 "configure"
-+for ac_header in $cf_cv_ncurses_header
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+echo "$as_me:7632: 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 7638 "configure"
- #include "confdefs.h"
-+#include <$ac_header>
-+_ACEOF
-+if { (eval echo "$as_me:7642: \"$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:7648: \$? = $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:7667: 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
-
--#include <libutf8.h>
-+fi
-+done
-+
-+cat >>confdefs.h <<\EOF
-+#define NCURSES 1
-+EOF
-+
-+cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+cat >>confdefs.h <<EOF
-+#define $cf_nculib_ROOT 1
-+EOF
-+
-+cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
-+
-+else
-+
-+cf_ncuhdr_root=ncursesw
-+
-+test -n "$cf_cv_curses_dir" && \
-+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
-+ do
-+ if test -d $cf_add_incdir
-+ then
-+ cf_have_incdir=no
-+ if test -n "$CFLAGS$CPPFLAGS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-+ cf_have_incdir=yes; break
-+ fi
-+ done
-+ fi
-+
-+ if test "$cf_have_incdir" = no ; then
-+ if test "$cf_add_incdir" = /usr/local/include ; then
-+ if test "$GCC" = yes
-+ then
-+ cf_save_CPPFLAGS=$CPPFLAGS
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 7720 "configure"
-+#include "confdefs.h"
-+#include <stdio.h>
- int
- main ()
- {
--putwc(0,0);
-+printf("Hello")
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7298: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:7732: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7301: \$? = $ac_status" >&5
-+ echo "$as_me:7735: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7304: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:7738: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7307: \$? = $ac_status" >&5
-+ echo "$as_me:7741: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
--
-- cf_cv_find_linkage_utf8=yes
-- cf_cv_header_path_utf8=/usr/include
-- cf_cv_library_path_utf8=/usr/lib
--
-+ :
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+cf_have_incdir=yes
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CPPFLAGS=$cf_save_CPPFLAGS
-+ fi
-+ fi
-+ fi
-
--LIBS="-lutf8 $cf_save_LIBS"
-+ if test "$cf_have_incdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 7321 "configure"
-+echo "${as_me:-configure}:7758: 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%'`
-+ test "$cf_top_incdir" = "$cf_add_incdir" && break
-+ cf_add_incdir="$cf_top_incdir"
-+ else
-+ break
-+ fi
-+ fi
-+ done
-+ done
-+fi
-+
-+}
-+
-+echo "$as_me:7775: 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"
-+ for cf_header in $cf_header_list
-+ do
-+
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 7787 "configure"
- #include "confdefs.h"
-
--#include <libutf8.h>
-+#define _XOPEN_SOURCE_EXTENDED
-+#undef HAVE_LIBUTF8_H /* in case we used CF_UTF8_LIB */
-+#define HAVE_LIBUTF8_H /* to force ncurses' header file to use cchar_t */
-+
-+#include <$cf_header>
- int
- main ()
- {
--putwc(0,0);
-+
-+#ifdef NCURSES_VERSION
-+
-+#ifndef WACS_BSSB
-+ make an error
-+#endif
-+
-+printf("%s\n", NCURSES_VERSION);
-+#else
-+#ifdef __NCURSES_H
-+printf("old\n");
-+#else
-+ make an error
-+#endif
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7334: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:7819: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7337: \$? = $ac_status" >&5
-+ echo "$as_me:7822: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7340: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:7825: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7343: \$? = $ac_status" >&5
-+ echo "$as_me:7828: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
--
-- cf_cv_find_linkage_utf8=yes
-- cf_cv_header_path_utf8=/usr/include
-- cf_cv_library_path_utf8=/usr/lib
-- cf_cv_library_file_utf8="-lutf8"
-+ cf_cv_ncurses_h=$cf_header
-
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+cf_cv_ncurses_h=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-
-- cf_cv_find_linkage_utf8=no
-- LIBS="$cf_save_LIBS"
-+ test "$cf_cv_ncurses_h" != no && break
-+ done
-
-- test -n "$verbose" && echo " find linkage for utf8 library" 1>&6
-+fi
-+echo "$as_me:7843: result: $cf_cv_ncurses_h" >&5
-+echo "${ECHO_T}$cf_cv_ncurses_h" >&6
-
--echo "${as_me:-configure}:7360: testing find linkage for utf8 library ..." 1>&5
-+if test "$cf_cv_ncurses_h" != no ; then
-+ cf_cv_ncurses_header=$cf_cv_ncurses_h
-+else
-
--echo "${as_me:-configure}:7362: testing Searching for headers in FIND_LINKAGE(utf8,) ..." 1>&5
-+echo "$as_me:7850: 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
-+else
-
-- cf_save_CPPFLAGS="$CPPFLAGS"
-- cf_test_CPPFLAGS="$CPPFLAGS"
-+ test -n "$verbose" && echo
-
- cf_search=
-
-@@ -7375,15 +7866,15 @@
- -I*)
- cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
-
--test "$cf_header_path" != "NONE" && \
-+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_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"
-@@ -7396,315 +7887,213 @@
-
- cf_search=
-
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr"
-- test -d /usr/include && cf_search="$cf_search /usr/include"
-- test -d /usr/include/utf8 && cf_search="$cf_search /usr/include/utf8"
-- test -d /usr/include/utf8/include && cf_search="$cf_search /usr/include/utf8/include"
-- test -d /usr/utf8/include && cf_search="$cf_search /usr/utf8/include"
-- test -d /usr/utf8/include/utf8 && cf_search="$cf_search /usr/utf8/include/utf8"
--}
--
--test "$prefix" != "NONE" && \
-+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_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 "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr/local"
-- test -d /usr/local/include && cf_search="$cf_search /usr/local/include"
-- test -d /usr/local/include/utf8 && cf_search="$cf_search /usr/local/include/utf8"
-- test -d /usr/local/include/utf8/include && cf_search="$cf_search /usr/local/include/utf8/include"
-- test -d /usr/local/utf8/include && cf_search="$cf_search /usr/local/utf8/include"
-- test -d /usr/local/utf8/include/utf8 && cf_search="$cf_search /usr/local/utf8/include/utf8"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /opt"
-- test -d /opt/include && cf_search="$cf_search /opt/include"
-- test -d /opt/include/utf8 && cf_search="$cf_search /opt/include/utf8"
-- test -d /opt/include/utf8/include && cf_search="$cf_search /opt/include/utf8/include"
-- test -d /opt/utf8/include && cf_search="$cf_search /opt/utf8/include"
-- test -d /opt/utf8/include/utf8 && cf_search="$cf_search /opt/utf8/include/utf8"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under $HOME"
-- test -d $HOME/include && cf_search="$cf_search $HOME/include"
-- test -d $HOME/include/utf8 && cf_search="$cf_search $HOME/include/utf8"
-- test -d $HOME/include/utf8/include && cf_search="$cf_search $HOME/include/utf8/include"
-- test -d $HOME/utf8/include && cf_search="$cf_search $HOME/utf8/include"
-- test -d $HOME/utf8/include/utf8 && cf_search="$cf_search $HOME/utf8/include/utf8"
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+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 -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"
- }
-
-+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_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/utf8 && cf_search="$cf_search $oldincludedir/utf8"
-+ test -d $oldincludedir/$cf_ncuhdr_root && cf_search="$cf_search $oldincludedir/$cf_ncuhdr_root"
- }
-
- 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
-- test -n "$verbose" && echo " ... testing $cf_cv_header_path_utf8" 1>&6
-+ test -n "$verbose" && echo search path $cf_search
-+ cf_save2_CPPFLAGS="$CPPFLAGS"
-+ for cf_incdir in $cf_search
-+ do
-
--echo "${as_me:-configure}:7475: testing ... testing $cf_cv_header_path_utf8 ..." 1>&5
-+if test -n "$cf_incdir" ; then
-+ for cf_add_incdir in $cf_incdir
-+ do
-+ while test $cf_add_incdir != /usr/include
-+ do
-+ if test -d $cf_add_incdir
-+ then
-+ cf_have_incdir=no
-+ if test -n "$CFLAGS$CPPFLAGS" ; then
-+ # a loop is needed to ensure we can add subdirs of existing dirs
-+ for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-+ if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-+ cf_have_incdir=yes; break
-+ fi
-+ done
-+ fi
-
-- CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_utf8"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 7479 "configure"
--#include "confdefs.h"
--
--#include <libutf8.h>
-+ if test "$cf_have_incdir" = no ; then
-+ if test "$cf_add_incdir" = /usr/local/include ; then
-+ if test "$GCC" = yes
-+ then
-+ cf_save_CPPFLAGS=$CPPFLAGS
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 7968 "configure"
-+#include "confdefs.h"
-+#include <stdio.h>
- int
- main ()
- {
--putwc(0,0);
-+printf("Hello")
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7492: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:7980: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7495: \$? = $ac_status" >&5
-+ echo "$as_me:7983: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7498: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:7986: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7501: \$? = $ac_status" >&5
-+ echo "$as_me:7989: \$? = $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}:7506: 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
--
-- CPPFLAGS="$cf_save_CPPFLAGS"
--
-+cf_have_incdir=yes
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-- fi
-- done
--
-- if test "$cf_cv_find_linkage_utf8" = maybe ; then
--
--echo "${as_me:-configure}:7524: testing Searching for utf8 library in FIND_LINKAGE(utf8,) ..." 1>&5
--
-- cf_save_LIBS="$LIBS"
-- cf_save_LDFLAGS="$LDFLAGS"
-+ CPPFLAGS=$cf_save_CPPFLAGS
-+ fi
-+ fi
-+ fi
-
-- if test "$cf_cv_find_linkage_utf8" != yes ; then
-+ if test "$cf_have_incdir" = no ; then
-+ test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--cf_search=
--cf_library_path_list=""
--if test -n "${LDFLAGS}${LIBS}" ; then
-- for cf_library_path in $LDFLAGS $LIBS
-- do
-- case $cf_library_path in #(vi
-- -L*)
-- cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
-+echo "${as_me:-configure}:8006: testing adding $cf_add_incdir to include-path ..." 1>&5
-
--test "$cf_library_path" != "NONE" && \
--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"
--}
-+ CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-- cf_library_path_list="$cf_library_path_list $cf_search"
-- ;;
-- esac
-+ 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
-+ break
-+ fi
-+ fi
- done
-+ done
- fi
-
--cf_search=
--
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr"
-- test -d /usr/lib && cf_search="$cf_search /usr/lib"
-- test -d /usr/lib/utf8 && cf_search="$cf_search /usr/lib/utf8"
-- test -d /usr/lib/utf8/lib && cf_search="$cf_search /usr/lib/utf8/lib"
-- test -d /usr/utf8/lib && cf_search="$cf_search /usr/utf8/lib"
-- test -d /usr/utf8/lib/utf8 && cf_search="$cf_search /usr/utf8/lib/utf8"
--}
--
--test "$prefix" != "NONE" && \
--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 "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr/local"
-- test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib"
-- test -d /usr/local/lib/utf8 && cf_search="$cf_search /usr/local/lib/utf8"
-- test -d /usr/local/lib/utf8/lib && cf_search="$cf_search /usr/local/lib/utf8/lib"
-- test -d /usr/local/utf8/lib && cf_search="$cf_search /usr/local/utf8/lib"
-- test -d /usr/local/utf8/lib/utf8 && cf_search="$cf_search /usr/local/utf8/lib/utf8"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /opt"
-- test -d /opt/lib && cf_search="$cf_search /opt/lib"
-- test -d /opt/lib/utf8 && cf_search="$cf_search /opt/lib/utf8"
-- test -d /opt/lib/utf8/lib && cf_search="$cf_search /opt/lib/utf8/lib"
-- test -d /opt/utf8/lib && cf_search="$cf_search /opt/utf8/lib"
-- test -d /opt/utf8/lib/utf8 && cf_search="$cf_search /opt/utf8/lib/utf8"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under $HOME"
-- test -d $HOME/lib && cf_search="$cf_search $HOME/lib"
-- test -d $HOME/lib/utf8 && cf_search="$cf_search $HOME/lib/utf8"
-- test -d $HOME/lib/utf8/lib && cf_search="$cf_search $HOME/lib/utf8/lib"
-- test -d $HOME/utf8/lib && cf_search="$cf_search $HOME/utf8/lib"
-- test -d $HOME/utf8/lib/utf8 && cf_search="$cf_search $HOME/utf8/lib/utf8"
--}
--
--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
-- test -n "$verbose" && echo " ... testing $cf_cv_library_path_utf8" 1>&6
--
--echo "${as_me:-configure}:7621: testing ... testing $cf_cv_library_path_utf8 ..." 1>&5
-+ for cf_header in \
-+ ncurses.h \
-+ curses.h
-+ do
-
-- 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 7627 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 8027 "configure"
- #include "confdefs.h"
-
--#include <libutf8.h>
-+#include <$cf_header>
- int
- main ()
- {
--putwc(0,0);
-+
-+#ifdef NCURSES_VERSION
-+
-+printf("%s\n", NCURSES_VERSION);
-+#else
-+#ifdef __NCURSES_H
-+printf("old\n");
-+#else
-+ make an error
-+#endif
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:7640: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:8051: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7643: \$? = $ac_status" >&5
-+ echo "$as_me:8054: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:7646: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:8057: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7649: \$? = $ac_status" >&5
-+ echo "$as_me:8060: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-+ cf_cv_ncurses_h2=$cf_header
-
-- test -n "$verbose" && echo " ... found utf8 library in $cf_cv_library_path_utf8" 1>&6
--
--echo "${as_me:-configure}:7654: 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
--
-- CPPFLAGS="$cf_save_CPPFLAGS"
-- LIBS="$cf_save_LIBS"
-- LDFLAGS="$cf_save_LDFLAGS"
--
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- fi
-- done
-- CPPFLAGS="$cf_save_CPPFLAGS"
-- LDFLAGS="$cf_save_LDFLAGS"
-- fi
--
-- else
-- cf_cv_find_linkage_utf8=no
-- fi
--
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--
-+cf_cv_ncurses_h2=no
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--
--LIBS="$cf_save_LIBS"
-+rm -f conftest.$ac_objext conftest.$ac_ext
-
--if test "$cf_cv_find_linkage_utf8" = yes ; then
--cf_cv_utf8_lib=add-on
--else
--cf_cv_utf8_lib=no
--fi
-+ 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
-+ break
-+ fi
-+ test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6
-+ done
-+ CPPFLAGS="$cf_save2_CPPFLAGS"
-+ test "$cf_cv_ncurses_h2" != no && break
-+ done
-+ test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:8081: error: not found" >&5
-+echo "$as_me: error: not found" >&2;}
-+ { (exit 1); exit 1; }; }
-
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--fi
--echo "$as_me:7696: result: $cf_cv_utf8_lib" >&5
--echo "${ECHO_T}$cf_cv_utf8_lib" >&6
-+echo "$as_me:8086: result: $cf_cv_ncurses_h2" >&5
-+echo "${ECHO_T}$cf_cv_ncurses_h2" >&6
-
--# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between
--# ncurses/ncursesw:
--if test "$cf_cv_utf8_lib" = "add-on" ; then
-- cat >>confdefs.h <<\EOF
--#define HAVE_LIBUTF8_H 1
--EOF
-+ 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_cv_header_path_utf8" ; then
-- for cf_add_incdir in $cf_cv_header_path_utf8
-+if test -n "$cf_1st_incdir" ; then
-+ for cf_add_incdir in $cf_1st_incdir
- do
- while test $cf_add_incdir != /usr/include
- do
-@@ -7727,7 +8116,7 @@
- cf_save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
- cat >conftest.$ac_ext <<_ACEOF
--#line 7730 "configure"
-+#line 8119 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -7739,16 +8128,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7742: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8131: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7745: \$? = $ac_status" >&5
-+ echo "$as_me:8134: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7748: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8137: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7751: \$? = $ac_status" >&5
-+ echo "$as_me:8140: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -7765,7 +8154,7 @@
- if test "$cf_have_incdir" = no ; then
- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-
--echo "${as_me:-configure}:7768: testing adding $cf_add_incdir to include-path ..." 1>&5
-+echo "${as_me:-configure}:8157: testing adding $cf_add_incdir to include-path ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-
-@@ -7780,2044 +8169,1619 @@
- done
- 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
-- :
-- elif test -d $cf_add_libdir
-- then
-- cf_have_libdir=no
-- if test -n "$LDFLAGS$LIBS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_libdir in $LDFLAGS $LIBS ; do
-- if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
-- cf_have_libdir=yes; break
-- fi
-- done
-- fi
-- if test "$cf_have_libdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_libdir to library-path" 1>&6
--
--echo "${as_me:-configure}:7802: testing adding $cf_add_libdir to library-path ..." 1>&5
--
-- LDFLAGS="-L$cf_add_libdir $LDFLAGS"
-- fi
-- fi
-- done
- fi
-
-- LIBS="$cf_cv_library_file_utf8 $LIBS"
--fi
-+# Set definitions to allow ifdef'ing for ncurses.h
-
--cf_ncuconfig_root=ncursesw
-+case $cf_cv_ncurses_header in # (vi
-+*ncurses.h)
-
--echo "Looking for ${cf_ncuconfig_root}-config"
--for ac_prog in ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config
--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:7820: checking for $ac_word" >&5
--echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
--if test "${ac_cv_path_NCURSES_CONFIG+set}" = set; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
--else
-- case $NCURSES_CONFIG in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_NCURSES_CONFIG="$NCURSES_CONFIG" # 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_NCURSES_CONFIG="$ac_dir/$ac_word"
-- echo "$as_me:7837: found $ac_dir/$ac_word" >&5
-- break
--fi
--done
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSES_H 1
-+EOF
-
-- ;;
-+ ;;
- esac
--fi
--NCURSES_CONFIG=$ac_cv_path_NCURSES_CONFIG
-
--if test -n "$NCURSES_CONFIG"; then
-- echo "$as_me:7848: result: $NCURSES_CONFIG" >&5
--echo "${ECHO_T}$NCURSES_CONFIG" >&6
--else
-- echo "$as_me:7851: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
-+case $cf_cv_ncurses_header in # (vi
-+ncurses/curses.h|ncurses/ncurses.h)
-
-- test -n "$NCURSES_CONFIG" && break
--done
--test -n "$NCURSES_CONFIG" || NCURSES_CONFIG="none"
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSES_NCURSES_H 1
-+EOF
-
--if test "$NCURSES_CONFIG" != none ; then
-+ ;;
-+ncursesw/curses.h|ncursesw/ncurses.h)
-
--CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`"
--LIBS="`$NCURSES_CONFIG --libs` $LIBS"
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSESW_NCURSES_H 1
-+EOF
-
--# even with config script, some packages use no-override for curses.h
-+ ;;
-+esac
-
--echo "$as_me:7866: 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 "$as_me:8203: 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
-
--cf_cv_ncurses_header=none
--for cf_header in \
-- ncursesw/curses.h \
-- ncursesw/ncurses.h \
-- curses.h \
-- ncurses.h
-+case ${cf_cv_ncurses_header} in #(vi
-+*/ncurses.h|*/ncursesw.h) #(vi
-+ cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
-+ ;;
-+*)
-+ cf_term_header=term.h
-+ ;;
-+esac
-+
-+for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
- do
- cat >conftest.$ac_ext <<_ACEOF
--#line 7880 "configure"
-+#line 8221 "configure"
- #include "confdefs.h"
--#include <${cf_header}>
-+#include <stdio.h>
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <$cf_test>
-+
- int
- main ()
- {
--initscr(); tgoto("?", 0,0)
-+int x = auto_left_margin
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:7892: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:8236: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:7895: \$? = $ac_status" >&5
-+ echo "$as_me:8239: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:7898: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8242: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:7901: \$? = $ac_status" >&5
-+ echo "$as_me:8245: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ncurses_header=$cf_header; break
-+
-+ cf_cv_term_header="$cf_test"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+
-+ cf_cv_term_header=unknown
-+
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-+ test "$cf_cv_term_header" != unknown && break
- done
-
- fi
--echo "$as_me:7912: result: $cf_cv_ncurses_header" >&5
--echo "${ECHO_T}$cf_cv_ncurses_header" >&6
-+echo "$as_me:8261: result: $cf_cv_term_header" >&5
-+echo "${ECHO_T}$cf_cv_term_header" >&6
-
--if test "$cf_cv_ncurses_header" = none ; then
-- { { echo "$as_me:7916: error: No curses header-files found" >&5
--echo "$as_me: error: No curses header-files found" >&2;}
-- { (exit 1); exit 1; }; }
--fi
-+# Set definitions to allow ifdef'ing to accommodate subdirectories
-
--# cheat, to get the right #define's for HAVE_NCURSES_H, etc.
-+case $cf_cv_term_header in # (vi
-+*term.h)
-
--for ac_header in $cf_cv_ncurses_header
--do
--as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:7926: checking for $ac_header" >&5
--echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
--if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+cat >>confdefs.h <<\EOF
-+#define HAVE_TERM_H 1
-+EOF
-+
-+ ;;
-+esac
-+
-+case $cf_cv_term_header in # (vi
-+ncurses/term.h) #(vi
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSES_TERM_H 1
-+EOF
-+
-+ ;;
-+ncursesw/term.h)
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSESW_TERM_H 1
-+EOF
-+
-+ ;;
-+esac
-+
-+# some applications need this, but should check for NCURSES_VERSION
-+
-+cat >>confdefs.h <<\EOF
-+#define NCURSES 1
-+EOF
-+
-+echo "$as_me:8299: 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
- else
-+
-+ cf_cv_ncurses_version=no
-+ cf_tempfile=out$$
-+ 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
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#undef Autoconf
-+#ifdef NCURSES_VERSION
-+Autoconf NCURSES_VERSION
-+#else
-+#ifdef __NCURSES_H
-+Autoconf "old"
-+#endif
-+;
-+#endif
-+EOF
-+ cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-+ { (eval echo "$as_me:8325: \"$cf_try\"") >&5
-+ (eval $cf_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8328: \$? = $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%".*%%'`
-+ test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
-+ rm -f conftest.out
-+ fi
-+
-+else
- cat >conftest.$ac_ext <<_ACEOF
--#line 7932 "configure"
-+#line 8338 "configure"
- #include "confdefs.h"
--#include <$ac_header>
-+
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <stdio.h>
-+int main()
-+{
-+ FILE *fp = fopen("$cf_tempfile", "w");
-+#ifdef NCURSES_VERSION
-+# ifdef NCURSES_VERSION_PATCH
-+ fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
-+# else
-+ fprintf(fp, "%s\n", NCURSES_VERSION);
-+# endif
-+#else
-+# ifdef __NCURSES_H
-+ fprintf(fp, "old\n");
-+# else
-+ make an error
-+# endif
-+#endif
-+ ${cf_cv_main_return:-return}(0);
-+}
- _ACEOF
--if { (eval echo "$as_me:7936: \"$ac_cpp conftest.$ac_ext\"") >&5
-- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:8363: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- egrep -v '^ *\+' conftest.er1 >conftest.err
-- rm -f conftest.er1
-- cat conftest.err >&5
-- echo "$as_me:7942: \$? = $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"
-+ echo "$as_me:8366: \$? = $ac_status" >&5
-+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+ { (eval echo "$as_me:8368: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:8371: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+
-+ cf_cv_ncurses_version=`cat $cf_tempfile`
- else
-- echo "$as_me: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- eval "$as_ac_Header=no"
-+ 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 conftest.err conftest.$ac_ext
-+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:7961: 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
-+ rm -f $cf_tempfile
-
- fi
--done
--
-+echo "$as_me:8385: 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
-
--cf_nculib_ROOT=`echo "HAVE_LIB$cf_ncuconfig_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
--
--cat >>confdefs.h <<EOF
--#define $cf_nculib_ROOT 1
--EOF
--
--cf_cv_ncurses_version=`$NCURSES_CONFIG --version`
--
-+cf_nculib_root=ncursesw
-+ # This works, except for the special case where we find gpm, but
-+ # ncurses is in a nonstandard location via $LIBS, and we really want
-+ # to link gpm.
-+cf_ncurses_LIBS=""
-+cf_ncurses_SAVE="$LIBS"
-+echo "$as_me:8398: 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
--
--cf_ncuhdr_root=ncursesw
--
--test -n "$cf_cv_curses_dir" && \
--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
-- do
-- if test -d $cf_add_incdir
-- then
-- cf_have_incdir=no
-- if test -n "$CFLAGS$CPPFLAGS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-- cf_have_incdir=yes; break
-- fi
-- done
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- if test "$cf_add_incdir" = /usr/local/include ; then
-- if test "$GCC" = yes
-- then
-- cf_save_CPPFLAGS=$CPPFLAGS
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 8014 "configure"
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lgpm $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 8406 "configure"
- #include "confdefs.h"
--#include <stdio.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 Gpm_Open ();
- int
- main ()
- {
--printf("Hello")
-+Gpm_Open ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8026: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:8425: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8029: \$? = $ac_status" >&5
-+ echo "$as_me:8428: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8032: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:8431: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8035: \$? = $ac_status" >&5
-+ echo "$as_me:8434: \$? = $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
--cf_have_incdir=yes
-+ac_cv_lib_gpm_Gpm_Open=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS=$cf_save_CPPFLAGS
-- fi
-- fi
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
--
--echo "${as_me:-configure}:8052: 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%'`
-- test "$cf_top_incdir" = "$cf_add_incdir" && break
-- cf_add_incdir="$cf_top_incdir"
-- else
-- break
-- fi
-- fi
-- done
-- done
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
- fi
--
--}
--
--echo "$as_me:8069: 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 "$as_me:8445: 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:8448: 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
--
-- 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"
-- for cf_header in $cf_header_list
-- do
--
-- cat >conftest.$ac_ext <<_ACEOF
--#line 8081 "configure"
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lgpm $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 8456 "configure"
- #include "confdefs.h"
-
--#define _XOPEN_SOURCE_EXTENDED
--#undef HAVE_LIBUTF8_H /* in case we used CF_UTF8_LIB */
--#define HAVE_LIBUTF8_H /* to force ncurses' header file to use cchar_t */
--
--#include <$cf_header>
-+/* 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 initscr ();
- int
- main ()
- {
--
--#ifdef NCURSES_VERSION
--
--#ifndef WACS_BSSB
-- make an error
--#endif
--
--printf("%s\n", NCURSES_VERSION);
--#else
--#ifdef __NCURSES_H
--printf("old\n");
--#else
-- make an error
--#endif
--#endif
--
-+initscr ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8113: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:8475: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8116: \$? = $ac_status" >&5
-+ echo "$as_me:8478: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8119: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:8481: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8122: \$? = $ac_status" >&5
-+ echo "$as_me:8484: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ncurses_h=$cf_header
--
-+ ac_cv_lib_gpm_initscr=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_ncurses_h=no
-+ac_cv_lib_gpm_initscr=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--
-- test "$cf_cv_ncurses_h" != no && break
-- done
--
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:8137: 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:8144: 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
-+echo "$as_me:8495: 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
-+ LIBS="$cf_ncurses_SAVE"
- else
--
-- test -n "$verbose" && echo
--
--cf_search=
--
--# collect the current set of include-directories from compiler flags
--cf_header_path_list=""
--if test -n "${CFLAGS}${CPPFLAGS}" ; then
-- for cf_header_path in $CPPFLAGS $CFLAGS
-- do
-- case $cf_header_path in #(vi
-- -I*)
-- cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
--
--test "$cf_header_path" != "NONE" && \
--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"
--}
--
-- cf_header_path_list="$cf_header_path_list $cf_search"
-- ;;
-- esac
-- done
-+ cf_ncurses_LIBS="-lgpm"
- fi
-
--# add the variations for the package we are looking for
--
--cf_search=
--
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr"
-- test -d /usr/include && cf_search="$cf_search /usr/include"
-- test -d /usr/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/include/$cf_ncuhdr_root"
-- test -d /usr/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/include/$cf_ncuhdr_root/include"
-- test -d /usr/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/$cf_ncuhdr_root/include"
-- test -d /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "$prefix" != "NONE" && \
--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 "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /usr/local"
-- test -d /usr/local/include && cf_search="$cf_search /usr/local/include"
-- test -d /usr/local/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root"
-- test -d /usr/local/include/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/include/$cf_ncuhdr_root/include"
-- test -d /usr/local/$cf_ncuhdr_root/include && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include"
-- test -d /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /usr/local/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under /opt"
-- test -d /opt/include && cf_search="$cf_search /opt/include"
-- test -d /opt/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/include/$cf_ncuhdr_root"
-- test -d /opt/include/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/include/$cf_ncuhdr_root/include"
-- test -d /opt/$cf_ncuhdr_root/include && cf_search="$cf_search /opt/$cf_ncuhdr_root/include"
-- test -d /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search /opt/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for include-directories under $HOME"
-- test -d $HOME/include && cf_search="$cf_search $HOME/include"
-- test -d $HOME/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root"
-- test -d $HOME/include/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/include/$cf_ncuhdr_root/include"
-- test -d $HOME/$cf_ncuhdr_root/include && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include"
-- test -d $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root && cf_search="$cf_search $HOME/$cf_ncuhdr_root/include/$cf_ncuhdr_root"
--}
--
--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 "$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"
--}
--
--cf_search="$cf_search $cf_header_path_list"
--
-- test -n "$verbose" && echo search path $cf_search
-- cf_save2_CPPFLAGS="$CPPFLAGS"
-- for cf_incdir in $cf_search
-- do
--
--if test -n "$cf_incdir" ; then
-- for cf_add_incdir in $cf_incdir
-- do
-- while test $cf_add_incdir != /usr/include
-- do
-- if test -d $cf_add_incdir
-- then
-- cf_have_incdir=no
-- if test -n "$CFLAGS$CPPFLAGS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-- cf_have_incdir=yes; break
-- fi
-- done
-- fi
-+fi
-
-- if test "$cf_have_incdir" = no ; then
-- if test "$cf_add_incdir" = /usr/local/include ; then
-- if test "$GCC" = yes
-- then
-- cf_save_CPPFLAGS=$CPPFLAGS
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 8284 "configure"
-+case $host_os in #(vi
-+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).
-+ if test "$cf_nculib_root" = ncurses ; then
-+ echo "$as_me:8510: 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 8518 "configure"
- #include "confdefs.h"
--#include <stdio.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 tgoto ();
- int
- main ()
- {
--printf("Hello")
-+tgoto ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8296: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:8537: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8299: \$? = $ac_status" >&5
-+ echo "$as_me:8540: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8302: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:8543: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8305: \$? = $ac_status" >&5
-+ echo "$as_me:8546: \$? = $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
--cf_have_incdir=yes
-+ac_cv_lib_mytinfo_tgoto=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:8557: 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
-+ cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS=$cf_save_CPPFLAGS
-- fi
-- fi
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
--
--echo "${as_me:-configure}:8322: testing adding $cf_add_incdir to include-path ..." 1>&5
-
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+ fi
-+ ;;
-+esac
-
-- 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
-- break
-+cf_add_libs="$cf_ncurses_LIBS"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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
-- fi
- done
-- done
--fi
-+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
-- for cf_header in \
-- ncurses.h \
-- curses.h
-- do
-+if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
-+then
-
-- cat >conftest.$ac_ext <<_ACEOF
--#line 8343 "configure"
-+cf_add_libs="-l$cf_nculib_root"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+else
-+
-+ eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
-+ cf_libdir=""
-+ echo "$as_me:8606: 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 8612 "configure"
- #include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char initscr (); below. */
-+#include <assert.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 initscr ();
-+char (*f) ();
-
--#include <$cf_header>
- int
- main ()
- {
--
--#ifdef NCURSES_VERSION
--
--printf("%s\n", NCURSES_VERSION);
--#else
--#ifdef __NCURSES_H
--printf("old\n");
-+/* The GNU C library defines this 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_initscr) || defined (__stub___initscr)
-+choke me
- #else
-- make an error
--#endif
-+f = initscr; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8367: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:8643: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8370: \$? = $ac_status" >&5
-+ echo "$as_me:8646: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8373: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:8649: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8376: \$? = $ac_status" >&5
-+ echo "$as_me:8652: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ncurses_h2=$cf_header
--
-+ ac_cv_func_initscr=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_ncurses_h2=no
-+ac_cv_func_initscr=no
- fi
--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
-- break
-- fi
-- test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&6
-- done
-- CPPFLAGS="$cf_save2_CPPFLAGS"
-- test "$cf_cv_ncurses_h2" != no && break
-- done
-- test "$cf_cv_ncurses_h2" = no && { { echo "$as_me:8397: error: not found" >&5
--echo "$as_me: error: not found" >&2;}
-- { (exit 1); exit 1; }; }
--
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:8402: 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
-- fi
--
--if test -n "$cf_1st_incdir" ; then
-- for cf_add_incdir in $cf_1st_incdir
-- do
-- while test $cf_add_incdir != /usr/include
-- do
-- if test -d $cf_add_incdir
-- then
-- cf_have_incdir=no
-- if test -n "$CFLAGS$CPPFLAGS" ; then
-- # a loop is needed to ensure we can add subdirs of existing dirs
-- for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
-- if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
-- cf_have_incdir=yes; break
-- fi
-- done
-- fi
-+echo "$as_me:8662: 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'
-+else
-
-- if test "$cf_have_incdir" = no ; then
-- if test "$cf_add_incdir" = /usr/local/include ; then
-- if test "$GCC" = yes
-- then
-- cf_save_CPPFLAGS=$CPPFLAGS
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-- cat >conftest.$ac_ext <<_ACEOF
--#line 8435 "configure"
-+ cf_save_LIBS="$LIBS"
-+ echo "$as_me:8669: 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 8673 "configure"
- #include "confdefs.h"
--#include <stdio.h>
-+#include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--printf("Hello")
-+initscr()
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8447: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:8685: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8450: \$? = $ac_status" >&5
-+ echo "$as_me:8688: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8453: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:8691: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8456: \$? = $ac_status" >&5
-+ echo "$as_me:8694: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- :
-+ echo "$as_me:8696: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
-+
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_have_incdir=yes
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- CPPFLAGS=$cf_save_CPPFLAGS
-- fi
-- fi
-- fi
--
-- if test "$cf_have_incdir" = no ; then
-- test -n "$verbose" && echo " adding $cf_add_incdir to include-path" 1>&6
-+echo "$as_me:8703: result: no" >&5
-+echo "${ECHO_T}no" >&6
-
--echo "${as_me:-configure}:8473: testing adding $cf_add_incdir to include-path ..." 1>&5
-+cf_search=
-+cf_library_path_list=""
-+if test -n "${LDFLAGS}${LIBS}" ; then
-+ for cf_library_path in $LDFLAGS $LIBS
-+ do
-+ case $cf_library_path in #(vi
-+ -L*)
-+ cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
-
-- CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
-+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"
-+}
-
-- 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
-- break
-- fi
-- fi
-+ cf_library_path_list="$cf_library_path_list $cf_search"
-+ ;;
-+ esac
- done
-- done
--fi
--
- fi
-
--# Set definitions to allow ifdef'ing for ncurses.h
--
--case $cf_cv_ncurses_header in # (vi
--*ncurses.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSES_H 1
--EOF
--
-- ;;
--esac
-+cf_search=
-
--case $cf_cv_ncurses_header in # (vi
--ncurses/curses.h|ncurses/ncurses.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSES_NCURSES_H 1
--EOF
-+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"
-+}
-
-- ;;
--ncursesw/curses.h|ncursesw/ncurses.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSESW_NCURSES_H 1
--EOF
-+for cf_subdir_prefix in \
-+ /usr \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt \
-+ /opt/local \
-+ $HOME
-+do
-
-- ;;
--esac
-+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 -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"
-+}
-
--echo "$as_me:8516: 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
-+done
-
--case ${cf_cv_ncurses_header} in #(vi
--*/ncurses.h|*/ncursesw.h) #(vi
-- cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[^.]*\.h$%term.h%'`
-- ;;
--*)
-- cf_term_header=term.h
-- ;;
--esac
-+cf_search="$cf_library_path_list $cf_search"
-
--for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h"
--do
--cat >conftest.$ac_ext <<_ACEOF
--#line 8534 "configure"
-+ for cf_libdir in $cf_search
-+ do
-+ echo "$as_me:8771: 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 8775 "configure"
- #include "confdefs.h"
--#include <stdio.h>
- #include <${cf_cv_ncurses_header:-curses.h}>
--#include <$cf_test>
--
- int
- main ()
- {
--int x = auto_left_margin
-+initscr()
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:8549: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:8787: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8552: \$? = $ac_status" >&5
-+ echo "$as_me:8790: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:8555: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:8793: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8558: \$? = $ac_status" >&5
-+ echo "$as_me:8796: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
--
-- cf_cv_term_header="$cf_test"
-+ echo "$as_me:8798: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+ eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
-+ break
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--
-- cf_cv_term_header=unknown
-+echo "$as_me:8805: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+ LIBS="$cf_save_LIBS"
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+ done
-
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- test "$cf_cv_term_header" != unknown && break
--done
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-
- fi
--echo "$as_me:8574: result: $cf_cv_term_header" >&5
--echo "${ECHO_T}$cf_cv_term_header" >&6
-
--# Set definitions to allow ifdef'ing to accommodate subdirectories
-+eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
-
--case $cf_cv_term_header in # (vi
--*term.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_TERM_H 1
--EOF
--
-- ;;
--esac
--
--case $cf_cv_term_header in # (vi
--ncurses/term.h) #(vi
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSES_TERM_H 1
--EOF
--
-- ;;
--ncursesw/term.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSESW_TERM_H 1
--EOF
--
-- ;;
--esac
--
--# some applications need this, but should check for NCURSES_VERSION
--cat >>confdefs.h <<\EOF
--#define NCURSES 1
--EOF
--
--echo "$as_me:8608: 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
--else
--
-- cf_cv_ncurses_version=no
-- cf_tempfile=out$$
-- 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
--#include <${cf_cv_ncurses_header:-curses.h}>
--#undef Autoconf
--#ifdef NCURSES_VERSION
--Autoconf NCURSES_VERSION
--#else
--#ifdef __NCURSES_H
--Autoconf "old"
--#endif
--;
--#endif
--EOF
-- cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-- { (eval echo "$as_me:8634: \"$cf_try\"") >&5
-- (eval $cf_try) 2>&5
-- ac_status=$?
-- echo "$as_me:8637: \$? = $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%".*%%'`
-- test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
-- rm -f conftest.out
-- fi
--
--else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 8647 "configure"
--#include "confdefs.h"
--
--#include <${cf_cv_ncurses_header:-curses.h}>
--#include <stdio.h>
--int main()
--{
-- FILE *fp = fopen("$cf_tempfile", "w");
--#ifdef NCURSES_VERSION
--# ifdef NCURSES_VERSION_PATCH
-- fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH);
--# else
-- fprintf(fp, "%s\n", NCURSES_VERSION);
--# endif
--#else
--# ifdef __NCURSES_H
-- fprintf(fp, "old\n");
--# else
-- make an error
--# endif
--#endif
-- ${cf_cv_main_return:-return}(0);
--}
--_ACEOF
--rm -f conftest$ac_exeext
--if { (eval echo "$as_me:8672: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:8675: \$? = $ac_status" >&5
-- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:8677: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:8680: \$? = $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
--fi
--rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-+if test $cf_found_library = no ; then
-+ { { echo "$as_me:8820: error: Cannot link $cf_nculib_root library" >&5
-+echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
-+ { (exit 1); exit 1; }; }
- fi
-- rm -f $cf_tempfile
-
- fi
--echo "$as_me:8694: 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
--
--cf_nculib_root=ncursesw
-- # This works, except for the special case where we find gpm, but
-- # ncurses is in a nonstandard location via $LIBS, and we really want
-- # to link gpm.
--cf_ncurses_LIBS=""
--cf_ncurses_SAVE="$LIBS"
--echo "$as_me:8706: 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 8714 "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 Gpm_Open ();
--int
--main ()
--{
--Gpm_Open ();
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8733: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:8736: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8739: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:8742: \$? = $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
--ac_cv_lib_gpm_Gpm_Open=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:8753: 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:8756: 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 8764 "configure"
-+if test -n "$cf_ncurses_LIBS" ; then
-+ echo "$as_me:8828: 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$%%"`
-+ if test "$q" != "$LIBS" ; then
-+ LIBS="$q"
-+ fi
-+ done
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 8838 "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 initscr ();
-+#include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--initscr ();
-+initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8783: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:8850: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8786: \$? = $ac_status" >&5
-+ echo "$as_me:8853: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8789: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:8856: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8792: \$? = $ac_status" >&5
-+ echo "$as_me:8859: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_gpm_initscr=yes
-+ echo "$as_me:8861: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_gpm_initscr=no
-+echo "$as_me:8866: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+ LIBS="$cf_ncurses_SAVE"
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:8803: 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
-- LIBS="$cf_ncurses_SAVE"
--else
-- cf_ncurses_LIBS="-lgpm"
- fi
-
--fi
-+cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-
--case $host_os in #(vi
--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).
-- if test "$cf_nculib_root" = ncurses ; then
-- echo "$as_me:8818: 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 8826 "configure"
--#include "confdefs.h"
-+cat >>confdefs.h <<EOF
-+#define $cf_nculib_ROOT 1
-+EOF
-
--/* 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 tgoto ();
--int
--main ()
--{
--tgoto ();
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8845: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:8848: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8851: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:8854: \$? = $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
--ac_cv_lib_mytinfo_tgoto=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:8865: 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
-- cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"
- fi
-
-- fi
- ;;
--esac
--
--LIBS="$cf_ncurses_LIBS $LIBS"
-+pdcurses)
-+ echo "$as_me:8883: checking for X" >&5
-+echo $ECHO_N "checking for X... $ECHO_C" >&6
-
--if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" )
--then
-- LIBS="-l$cf_nculib_root $LIBS"
--else
-+# Check whether --with-x or --without-x was given.
-+if test "${with_x+set}" = set; then
-+ withval="$with_x"
-
-- eval 'cf_cv_have_lib_'$cf_nculib_root'=no'
-- cf_libdir=""
-- echo "$as_me:8884: checking for initscr" >&5
--echo $ECHO_N "checking for initscr... $ECHO_C" >&6
--if test "${ac_cv_func_initscr+set}" = set; then
-+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/X11R6/include
-+/usr/X11R5/include
-+/usr/X11R4/include
-+
-+/usr/include/X11
-+/usr/include/X11R6
-+/usr/include/X11R5
-+/usr/include/X11R4
-+
-+/usr/local/X11/include
-+/usr/local/X11R6/include
-+/usr/local/X11R5/include
-+/usr/local/X11R4/include
-+
-+/usr/local/include/X11
-+/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 8890 "configure"
-+#line 8980 "configure"
- #include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char initscr (); below. */
--#include <assert.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 initscr ();
--char (*f) ();
-+#include <X11/Intrinsic.h>
-+_ACEOF
-+if { (eval echo "$as_me:8984: \"$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:8990: \$? = $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 9023 "configure"
-+#include "confdefs.h"
-+#include <X11/Intrinsic.h>
- int
- main ()
- {
--/* The GNU C library defines this 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_initscr) || defined (__stub___initscr)
--choke me
--#else
--f = initscr;
--#endif
--
-+XtMalloc (0)
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8921: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9035: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8924: \$? = $ac_status" >&5
-+ echo "$as_me:9038: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8927: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9041: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8930: \$? = $ac_status" >&5
-+ echo "$as_me:9044: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_func_initscr=yes
-+ 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
--ac_cv_func_initscr=no
-+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
--echo "$as_me:8940: 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'
-+fi
-+
-+ fi
-+ eval "$ac_cv_have_x"
-+fi # $with_x != no
-+
-+if test "$have_x" != yes; then
-+ echo "$as_me:9082: 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:9092: result: libraries $x_libraries, headers $x_includes" >&5
-+echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6
-+fi
-
-- cf_save_LIBS="$LIBS"
-- echo "$as_me:8947: 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 8951 "configure"
-+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:9116: 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 9120 "configure"
- #include "confdefs.h"
--#include <${cf_cv_ncurses_header:-curses.h}>
-+
- int
- main ()
- {
--initscr()
-+
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:8963: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9132: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:8966: \$? = $ac_status" >&5
-+ echo "$as_me:9135: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:8969: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9138: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:8972: \$? = $ac_status" >&5
-+ echo "$as_me:9141: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:8974: result: yes" >&5
--echo "${ECHO_T}yes" >&6
-- eval 'cf_cv_have_lib_'$cf_nculib_root'=yes'
--
-+ ac_R_nospace=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--echo "$as_me:8981: result: no" >&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:9151: 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 9157 "configure"
-+#include "confdefs.h"
-
--cf_search=
--cf_library_path_list=""
--if test -n "${LDFLAGS}${LIBS}" ; then
-- for cf_library_path in $LDFLAGS $LIBS
-- do
-- case $cf_library_path in #(vi
-- -L*)
-- cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
-+int
-+main ()
-+{
-
--test "$cf_library_path" != "NONE" && \
--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"
-+ ;
-+ return 0;
- }
--
-- cf_library_path_list="$cf_library_path_list $cf_search"
-- ;;
-- esac
-- done
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:9169: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9172: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:9175: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9178: \$? = $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:9188: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+ X_LIBS="$X_LIBS -R $x_libraries"
-+ else
-+ echo "$as_me:9192: result: neither works" >&5
-+echo "${ECHO_T}neither works" >&6
-+ fi
-+ fi
-+ LIBS=$ac_xsave_LIBS
-+ esac
-+ fi
-
--cf_search=
--
--test "/usr" != "$prefix" && \
--test -d "/usr" && \
--(test $prefix = NONE || test "/usr" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr"
-- test -d /usr/lib && cf_search="$cf_search /usr/lib"
-- test -d /usr/lib/$cf_nculib_root && cf_search="$cf_search /usr/lib/$cf_nculib_root"
-- test -d /usr/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/lib/$cf_nculib_root/lib"
-- test -d /usr/$cf_nculib_root/lib && cf_search="$cf_search /usr/$cf_nculib_root/lib"
-- test -d /usr/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/$cf_nculib_root/lib/$cf_nculib_root"
--}
-+ # 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.
-
--test "$prefix" != "NONE" && \
--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"
--}
-+ 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 9212 "configure"
-+#include "confdefs.h"
-
--test "/usr/local" != "$prefix" && \
--test -d "/usr/local" && \
--(test $prefix = NONE || test "/usr/local" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /usr/local"
-- test -d /usr/local/lib && cf_search="$cf_search /usr/local/lib"
-- test -d /usr/local/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/lib/$cf_nculib_root"
-- test -d /usr/local/lib/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/lib/$cf_nculib_root/lib"
-- test -d /usr/local/$cf_nculib_root/lib && cf_search="$cf_search /usr/local/$cf_nculib_root/lib"
-- test -d /usr/local/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /usr/local/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "/opt" != "$prefix" && \
--test -d "/opt" && \
--(test $prefix = NONE || test "/opt" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under /opt"
-- test -d /opt/lib && cf_search="$cf_search /opt/lib"
-- test -d /opt/lib/$cf_nculib_root && cf_search="$cf_search /opt/lib/$cf_nculib_root"
-- test -d /opt/lib/$cf_nculib_root/lib && cf_search="$cf_search /opt/lib/$cf_nculib_root/lib"
-- test -d /opt/$cf_nculib_root/lib && cf_search="$cf_search /opt/$cf_nculib_root/lib"
-- test -d /opt/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search /opt/$cf_nculib_root/lib/$cf_nculib_root"
--}
--
--test "$HOME" != "$prefix" && \
--test -d "$HOME" && \
--(test $prefix = NONE || test "$HOME" != "$prefix") && {
-- test -n "$verbose" && echo " ... testing for lib-directories under $HOME"
-- test -d $HOME/lib && cf_search="$cf_search $HOME/lib"
-- test -d $HOME/lib/$cf_nculib_root && cf_search="$cf_search $HOME/lib/$cf_nculib_root"
-- test -d $HOME/lib/$cf_nculib_root/lib && cf_search="$cf_search $HOME/lib/$cf_nculib_root/lib"
-- test -d $HOME/$cf_nculib_root/lib && cf_search="$cf_search $HOME/$cf_nculib_root/lib"
-- test -d $HOME/$cf_nculib_root/lib/$cf_nculib_root && cf_search="$cf_search $HOME/$cf_nculib_root/lib/$cf_nculib_root"
-+/* 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 ()
-+{
-+XOpenDisplay ();
-+ ;
-+ return 0;
- }
--
--cf_search="$cf_library_path_list $cf_search"
--
-- for cf_libdir in $cf_search
-- do
-- echo "$as_me:9071: 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 9075 "configure"
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:9231: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9234: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:9237: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9240: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ :
-+else
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+echo "$as_me:9246: 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 9254 "configure"
- #include "confdefs.h"
--#include <${cf_cv_ncurses_header:-curses.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 ()
- {
--initscr()
-+dnet_ntoa ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9087: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9273: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9090: \$? = $ac_status" >&5
-+ echo "$as_me:9276: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9093: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9279: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9096: \$? = $ac_status" >&5
-+ echo "$as_me:9282: \$? = $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'
-- break
-+ ac_cv_lib_dnet_dnet_ntoa=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--echo "$as_me:9105: result: no" >&5
--echo "${ECHO_T}no" >&6
-- LIBS="$cf_save_LIBS"
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- done
--
-+ac_cv_lib_dnet_dnet_ntoa=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--
--fi
--
--eval 'cf_found_library=$cf_cv_have_lib_'$cf_nculib_root
--
--if test $cf_found_library = no ; then
-- { { echo "$as_me:9120: error: Cannot link $cf_nculib_root library" >&5
--echo "$as_me: error: Cannot link $cf_nculib_root library" >&2;}
-- { (exit 1); exit 1; }; }
-+LIBS=$ac_check_lib_save_LIBS
- fi
--
-+echo "$as_me:9293: 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 -n "$cf_ncurses_LIBS" ; then
-- echo "$as_me:9128: 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$%%"`
-- if test "$q" != "$LIBS" ; then
-- LIBS="$q"
-- fi
-- done
-- cat >conftest.$ac_ext <<_ACEOF
--#line 9138 "configure"
-+ if test $ac_cv_lib_dnet_dnet_ntoa = no; then
-+ echo "$as_me:9300: 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 9308 "configure"
- #include "confdefs.h"
--#include <${cf_cv_ncurses_header:-curses.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 ()
- {
--initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
-+dnet_ntoa ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9150: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9327: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9153: \$? = $ac_status" >&5
-+ echo "$as_me:9330: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9156: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9333: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9159: \$? = $ac_status" >&5
-+ echo "$as_me:9336: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- echo "$as_me:9161: result: yes" >&5
--echo "${ECHO_T}yes" >&6
-+ ac_cv_lib_dnet_stub_dnet_ntoa=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--echo "$as_me:9166: result: no" >&5
--echo "${ECHO_T}no" >&6
-- LIBS="$cf_ncurses_SAVE"
-+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:9347: 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
-
--cf_nculib_ROOT=`echo "HAVE_LIB$cf_nculib_root" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
--
--cat >>confdefs.h <<EOF
--#define $cf_nculib_ROOT 1
--EOF
--
-+ fi
- fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+ LIBS="$ac_xsave_LIBS"
-
-- ;;
--pdcurses) #(vi
-+ # 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:9366: 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 9372 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char gethostbyname (); below. */
-+#include <assert.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 ();
-+char (*f) ();
-
--echo "$as_me:9184: checking if you want to use pkg-config" >&5
--echo $ECHO_N "checking if you want to use pkg-config... $ECHO_C" >&6
-+int
-+main ()
-+{
-+/* The GNU C library defines this 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)
-+choke me
-+#else
-+f = gethostbyname; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-
--# Check whether --with-pkg-config or --without-pkg-config was given.
--if test "${with_pkg_config+set}" = set; then
-- withval="$with_pkg_config"
-- cf_pkg_config=$withval
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:9403: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9406: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:9409: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9412: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ ac_cv_func_gethostbyname=yes
- else
-- cf_pkg_config=yes
--fi;
--echo "$as_me:9194: result: $cf_pkg_config" >&5
--echo "${ECHO_T}$cf_pkg_config" >&6
-+ 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:9422: result: $ac_cv_func_gethostbyname" >&5
-+echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6
-
--case $cf_pkg_config in #(vi
--no) #(vi
-- PKG_CONFIG=none
-- ;;
--yes) #(vi
-- 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:9205: 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
-+ if test $ac_cv_func_gethostbyname = no; then
-+ echo "$as_me:9426: 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
-- case $PKG_CONFIG in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # 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_PKG_CONFIG="$ac_dir/$ac_word"
-- echo "$as_me:9222: found $ac_dir/$ac_word" >&5
-- break
--fi
--done
--
-- ;;
--esac
--fi
--PKG_CONFIG=$ac_cv_path_PKG_CONFIG
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lnsl $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 9434 "configure"
-+#include "confdefs.h"
-
--if test -n "$PKG_CONFIG"; then
-- echo "$as_me:9233: result: $PKG_CONFIG" >&5
--echo "${ECHO_T}$PKG_CONFIG" >&6
-+/* 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 ()
-+{
-+gethostbyname ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:9453: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9456: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:9459: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9462: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ ac_cv_lib_nsl_gethostbyname=yes
- else
-- echo "$as_me:9236: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+ac_cv_lib_nsl_gethostbyname=no
- fi
--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:9245: 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
--else
-- case $ac_pt_PKG_CONFIG in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # 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_ac_pt_PKG_CONFIG="$ac_dir/$ac_word"
-- echo "$as_me:9262: found $ac_dir/$ac_word" >&5
-- break
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
- fi
--done
--
-- test -z "$ac_cv_path_ac_pt_PKG_CONFIG" && ac_cv_path_ac_pt_PKG_CONFIG="none"
-- ;;
--esac
-+echo "$as_me:9473: 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
--ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
-
--if test -n "$ac_pt_PKG_CONFIG"; then
-- echo "$as_me:9274: result: $ac_pt_PKG_CONFIG" >&5
--echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6
-+ if test $ac_cv_lib_nsl_gethostbyname = no; then
-+ echo "$as_me:9480: 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
-- echo "$as_me:9277: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lbsd $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 9488 "configure"
-+#include "confdefs.h"
-
-- PKG_CONFIG=$ac_pt_PKG_CONFIG
-+/* 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 ()
-+{
-+gethostbyname ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:9507: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9510: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:9513: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9516: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ ac_cv_lib_bsd_gethostbyname=yes
- else
-- PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
-+ 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:9527: 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
-
-- ;;
--*)
-- PKG_CONFIG=$withval
-- ;;
--esac
--
--test -z "$PKG_CONFIG" && PKG_CONFIG=none
--if test "$PKG_CONFIG" != none ; then
-+ fi
-+ fi
-
--if test "x$prefix" != xNONE; then
-- cf_path_syntax="$prefix"
-+ # 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:9543: 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
-- cf_path_syntax="$ac_default_prefix"
--fi
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 9549 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char connect (); below. */
-+#include <assert.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 ();
-+char (*f) ();
-
--case ".$PKG_CONFIG" in #(vi
--.\$\(*\)*|.\'*\'*) #(vi
-- ;;
--..|./*|.\\*) #(vi
-- ;;
--.[a-zA-Z]:[\\/]*) #(vi OS/2 EMX
-- ;;
--.\${*prefix}*) #(vi
-- eval PKG_CONFIG="$PKG_CONFIG"
-- case ".$PKG_CONFIG" in #(vi
-- .NONE/*)
-- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
-- ;;
-- esac
-- ;; #(vi
--.no|.NONE/*)
-- PKG_CONFIG=`echo $PKG_CONFIG | sed -e s%NONE%$cf_path_syntax%`
-- ;;
--*)
-- { { echo "$as_me:9320: error: expected a pathname, not \"$PKG_CONFIG\"" >&5
--echo "$as_me: error: expected a pathname, not \"$PKG_CONFIG\"" >&2;}
-- { (exit 1); exit 1; }; }
-- ;;
--esac
-+int
-+main ()
-+{
-+/* The GNU C library defines this 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)
-+choke me
-+#else
-+f = connect; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:9580: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9583: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:9586: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:9589: \$? = $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:9599: result: $ac_cv_func_connect" >&5
-+echo "${ECHO_T}$ac_cv_func_connect" >&6
-
--echo "$as_me:9328: 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
-+ if test $ac_cv_func_connect = no; then
-+ echo "$as_me:9603: 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
-- # 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/X11R6/include
--/usr/X11R5/include
--/usr/X11R4/include
--
--/usr/include/X11
--/usr/include/X11R6
--/usr/include/X11R5
--/usr/include/X11R4
--
--/usr/local/X11/include
--/usr/local/X11R6/include
--/usr/local/X11R5/include
--/usr/local/X11R4/include
--
--/usr/local/include/X11
--/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 9425 "configure"
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 9611 "configure"
- #include "confdefs.h"
--#include <X11/Intrinsic.h>
--_ACEOF
--if { (eval echo "$as_me:9429: \"$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:9435: \$? = $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 9468 "configure"
--#include "confdefs.h"
--#include <X11/Intrinsic.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 ()
- {
--XtMalloc (0)
-+connect ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9480: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9630: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9483: \$? = $ac_status" >&5
-+ echo "$as_me:9633: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9486: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9636: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9489: \$? = $ac_status" >&5
-+ echo "$as_me:9639: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- LIBS=$ac_save_LIBS
--# We can link X programs with no special library path.
--ac_x_libraries=
-+ ac_cv_lib_socket_connect=yes
- 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
-+ac_cv_lib_socket_connect=no
- 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
-+LIBS=$ac_check_lib_save_LIBS
- fi
--
-- fi
-- eval "$ac_cv_have_x"
--fi # $with_x != no
--
--if test "$have_x" != yes; then
-- echo "$as_me:9527: 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:9537: result: libraries $x_libraries, headers $x_includes" >&5
--echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6
-+echo "$as_me:9650: 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
-
--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
-+ fi
-
-- X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS=
-+ # Guillermo Gomez says -lposix is necessary on A/UX.
-+ echo "$as_me:9659: 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
-- 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:9561: 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 9565 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 9665 "configure"
- #include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char remove (); below. */
-+#include <assert.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 ();
-+char (*f) ();
-
- int
- main ()
- {
-+/* The GNU C library defines this 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)
-+choke me
-+#else
-+f = remove; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9577: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9696: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9580: \$? = $ac_status" >&5
-+ echo "$as_me:9699: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9583: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9702: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9586: \$? = $ac_status" >&5
-+ echo "$as_me:9705: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_R_nospace=yes
-+ ac_cv_func_remove=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_R_nospace=no
-+ac_cv_func_remove=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- if test $ac_R_nospace = yes; then
-- echo "$as_me:9596: 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 9602 "configure"
-+fi
-+echo "$as_me:9715: 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:9719: 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 9727 "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 ()
- {
--
-+remove ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9614: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9746: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9617: \$? = $ac_status" >&5
-+ echo "$as_me:9749: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9620: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9752: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9623: \$? = $ac_status" >&5
-+ echo "$as_me:9755: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_R_space=yes
-+ ac_cv_lib_posix_remove=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:9633: result: yes" >&5
--echo "${ECHO_T}yes" >&6
-- X_LIBS="$X_LIBS -R $x_libraries"
-- else
-- echo "$as_me:9637: 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 9657 "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 ()
--{
--XOpenDisplay ();
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9676: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:9679: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9682: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:9685: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- :
--else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--echo "$as_me:9691: 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 9699 "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 ()
--{
--dnet_ntoa ();
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9718: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:9721: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9724: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:9727: \$? = $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:9738: 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:9745: 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 9753 "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 ()
--{
--dnet_ntoa ();
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9772: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:9775: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9778: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:9781: \$? = $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
-+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:9792: 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"
-+echo "$as_me:9766: 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
--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:9811: checking for gethostbyname" >&5
--echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6
--if test "${ac_cv_func_gethostbyname+set}" = set; then
-+ # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
-+ echo "$as_me:9775: 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 9817 "configure"
-+#line 9781 "configure"
- #include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char gethostbyname (); below. */
-+ which can conflict with char shmat (); below. */
- #include <assert.h>
- /* Override any gcc2 internal prototype to avoid an error. */
- #ifdef __cplusplus
-@@ -9825,7 +9789,7 @@
- #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 ();
-+char shmat ();
- char (*f) ();
-
- int
-@@ -9834,10 +9798,10 @@
- /* The GNU C library defines this 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)
-+#if defined (__stub_shmat) || defined (__stub___shmat)
- choke me
- #else
--f = gethostbyname;
-+f = shmat; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
- #endif
-
- ;
-@@ -9845,38 +9809,38 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9848: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9812: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9851: \$? = $ac_status" >&5
-+ echo "$as_me:9815: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9854: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9818: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9857: \$? = $ac_status" >&5
-+ echo "$as_me:9821: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_func_gethostbyname=yes
-+ ac_cv_func_shmat=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_func_gethostbyname=no
-+ac_cv_func_shmat=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:9867: result: $ac_cv_func_gethostbyname" >&5
--echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6
-+echo "$as_me:9831: result: $ac_cv_func_shmat" >&5
-+echo "${ECHO_T}$ac_cv_func_shmat" >&6
-
-- if test $ac_cv_func_gethostbyname = no; then
-- echo "$as_me:9871: 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
-+ if test $ac_cv_func_shmat = no; then
-+ echo "$as_me:9835: 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="-lnsl $LIBS"
-+LIBS="-lipc $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 9879 "configure"
-+#line 9843 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -9885,52 +9849,63 @@
- #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 ();
-+char shmat ();
- int
- main ()
- {
--gethostbyname ();
-+shmat ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9898: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9862: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9901: \$? = $ac_status" >&5
-+ echo "$as_me:9865: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9904: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9868: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9907: \$? = $ac_status" >&5
-+ echo "$as_me:9871: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_nsl_gethostbyname=yes
-+ ac_cv_lib_ipc_shmat=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_nsl_gethostbyname=no
-+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:9918: 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"
-+echo "$as_me:9882: 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
-
-- if test $ac_cv_lib_nsl_gethostbyname = no; then
-- echo "$as_me:9925: 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
-+ 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:9900: 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="-lbsd $LIBS"
-+LIBS="-lICE $X_EXTRA_LIBS $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 9933 "configure"
-+#line 9908 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -9939,549 +9914,1335 @@
- #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 ();
-+char IceConnectionNumber ();
- int
- main ()
- {
--gethostbyname ();
-+IceConnectionNumber ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:9952: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:9927: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:9955: \$? = $ac_status" >&5
-+ echo "$as_me:9930: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:9958: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:9933: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:9961: \$? = $ac_status" >&5
-+ echo "$as_me:9936: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_bsd_gethostbyname=yes
-+ ac_cv_lib_ICE_IceConnectionNumber=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_bsd_gethostbyname=no
-+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:9972: 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"
-+echo "$as_me:9947: 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
-
-- fi
-- fi
-+ LDFLAGS=$ac_save_LDFLAGS
-
-- # 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:9988: 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 9994 "configure"
--#include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char connect (); below. */
--#include <assert.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 ();
--char (*f) ();
-+fi
-
--int
--main ()
--{
--/* The GNU C library defines this 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)
--choke me
--#else
--f = connect;
--#endif
-+cf_x_athena=${cf_x_athena:-Xaw}
-
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10025: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:10028: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10031: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:10034: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- ac_cv_func_connect=yes
-+echo "$as_me:9959: 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=
-+
-+# Check whether --with-Xaw3d or --without-Xaw3d was given.
-+if test "${with_Xaw3d+set}" = set; then
-+ withval="$with_Xaw3d"
-+
-+fi;
-+if test "$withval" = yes ; then
-+ cf_x_athena=Xaw3d
-+ echo "$as_me:9970: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
- else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--ac_cv_func_connect=no
-+ echo "$as_me:9973: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+
-+echo "$as_me:9977: 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=
-+
-+# Check whether --with-Xaw3dxft or --without-Xaw3dxft was given.
-+if test "${with_Xaw3dxft+set}" = set; then
-+ withval="$with_Xaw3dxft"
-+
-+fi;
-+if test "$withval" = yes ; then
-+ cf_x_athena=Xaw3dxft
-+ echo "$as_me:9988: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+else
-+ echo "$as_me:9991: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
--echo "$as_me:10044: 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:10048: 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 "$as_me:9995: 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=
-+
-+# Check whether --with-neXtaw or --without-neXtaw was given.
-+if test "${with_neXtaw+set}" = set; then
-+ withval="$with_neXtaw"
-+
-+fi;
-+if test "$withval" = yes ; then
-+ cf_x_athena=neXtaw
-+ echo "$as_me:10006: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+else
-+ echo "$as_me:10009: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+echo "$as_me:10013: 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=
-+
-+# Check whether --with-XawPlus or --without-XawPlus was given.
-+if test "${with_XawPlus+set}" = set; then
-+ withval="$with_XawPlus"
-+
-+fi;
-+if test "$withval" = yes ; then
-+ cf_x_athena=XawPlus
-+ echo "$as_me:10024: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+else
-+ echo "$as_me:10027: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+cf_x_athena_lib=""
-+
-+if test "$PKG_CONFIG" != none ; then
-+ cf_athena_list=
-+ test "$cf_x_athena" = Xaw && cf_athena_list="xaw8 xaw7 xaw6"
-+ for cf_athena_pkg in \
-+ $cf_athena_list \
-+ ${cf_x_athena} \
-+ ${cf_x_athena}-devel \
-+ lib${cf_x_athena} \
-+ lib${cf_x_athena}-devel
-+ do
-+
-+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}:10047: 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`"
-+ test -n "$verbose" && echo " package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs" 1>&6
-+
-+echo "${as_me:-configure}:10053: 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}:10057: testing package $cf_athena_pkg 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 #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ cf_x_athena_lib="$cf_pkgconfig_libs"
-+
-+cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+ cat >>confdefs.h <<EOF
-+#define $cf_x_athena_LIBS 1
-+EOF
-+
-+ for cf_trim_lib in Xmu Xt X11
-+ do
-+ case "$LIBS" in
-+ *-l$cf_trim_lib\ *-l$cf_trim_lib*)
-+ 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}:10168: testing ..trimmed $LIBS ..." 1>&5
-+
-+ ;;
-+ esac
-+ done
-+
-+echo "$as_me:10174: 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
-- ac_check_lib_save_LIBS=$LIBS
--LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
-+
- cat >conftest.$ac_ext <<_ACEOF
--#line 10056 "configure"
-+#line 10181 "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 ();
-+#include <X11/Xmu/CharSet.h>
-+
- int
- main ()
- {
--connect ();
-+
-+int check = XmuCompareISOLatin1("big", "small")
-+
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10075: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:10197: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10078: \$? = $ac_status" >&5
-+ echo "$as_me:10200: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10081: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:10203: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10084: \$? = $ac_status" >&5
-+ echo "$as_me:10206: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_socket_connect=yes
-+ cf_cv_xaw_compat=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_socket_connect=no
-+cf_cv_xaw_compat=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:10095: 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
-+echo "$as_me:10216: result: $cf_cv_xaw_compat" >&5
-+echo "${ECHO_T}$cf_cv_xaw_compat" >&6
-
-- fi
-+ if test "$cf_cv_xaw_compat" = no
-+ then
-+ # workaround for broken ".pc" files...
-+ case "$cf_x_athena_lib" in #(vi
-+ *-lXmu*) #(vi
-+ ;;
-+ *)
-+ test -n "$verbose" && echo " work around broken package" 1>&6
-
-- # Guillermo Gomez says -lposix is necessary on A/UX.
-- echo "$as_me:10104: 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 10110 "configure"
--#include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char remove (); below. */
--#include <assert.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 ();
--char (*f) ();
-+echo "${as_me:-configure}:10228: 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
-+ test -n "$verbose" && echo " found package xmu" 1>&6
-+
-+echo "${as_me:-configure}:10236: 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`"
-+ test -n "$verbose" && echo " package xmu CFLAGS: $cf_pkgconfig_incs" 1>&6
-+
-+echo "${as_me:-configure}:10242: 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}:10246: testing package xmu 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 #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ LIBS="$cf_save_xmu"
-+
-+test -n "$verbose" && echo " ...before $LIBS" 1>&6
-+
-+echo "${as_me:-configure}:10346: 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}:10351: testing ...after $LIBS ..." 1>&5
-+
-+else
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-+
-+test -n "$verbose" && echo " ...before $LIBS" 1>&6
-+
-+echo "${as_me:-configure}:10359: 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}:10364: testing ...after $LIBS ..." 1>&5
-+
-+fi
-+
-+ for cf_trim_lib in Xmu Xt X11
-+ do
-+ case "$LIBS" in
-+ *-l$cf_trim_lib\ *-l$cf_trim_lib*)
-+ 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}:10375: testing ..trimmed $LIBS ..." 1>&5
-+
-+ ;;
-+ esac
-+ done
-+
-+ ;;
-+ esac
-+ fi
-+
-+ break
-+else
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-+ :
-+fi
-+
-+ done
-+fi
-+
-+if test -z "$cf_x_athena_lib" ; then
-+
-+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists Xext; then
-+ test -n "$verbose" && echo " found package Xext" 1>&6
-+
-+echo "${as_me:-configure}:10400: 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`"
-+ test -n "$verbose" && echo " package Xext CFLAGS: $cf_pkgconfig_incs" 1>&6
-+
-+echo "${as_me:-configure}:10406: 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}:10410: testing package Xext 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 #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ :
-+else
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-+
-+ echo "$as_me:10511: 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 10519 "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 XextCreateExtension ();
- int
- main ()
- {
--/* The GNU C library defines this 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)
--choke me
--#else
--f = remove;
--#endif
-+XextCreateExtension ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:10538: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:10541: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:10544: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:10547: \$? = $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
-+ac_cv_lib_Xext_XextCreateExtension=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:10558: 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
-+
-+cf_add_libs="-lXext"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+fi
-+
-+fi
-+
-+# OSX is schizoid about who owns /usr/X11 (old) versus /opt/X11 (new), and (and
-+# in some cases has installed dummy files in the former, other cases replaced
-+# it with a link to the new location). This complicates the configure script.
-+# Check for that pitfall, and recover using pkg-config
-+#
-+# If none of these are set, the configuration is almost certainly broken.
-+if test -z "${X_CFLAGS}${X_PRE_LIBS}${X_LIBS}${X_EXTRA_LIBS}"
-+then
-+
-+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists x11; then
-+ test -n "$verbose" && echo " found package x11" 1>&6
-+
-+echo "${as_me:-configure}:10594: 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`"
-+ test -n "$verbose" && echo " package x11 CFLAGS: $cf_pkgconfig_incs" 1>&6
-+
-+echo "${as_me:-configure}:10600: 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}:10604: testing package x11 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 #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ :
-+else
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-+ { echo "$as_me:10704: 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
-+ test -n "$verbose" && echo " found package ice" 1>&6
-+
-+echo "${as_me:-configure}:10711: 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`"
-+ test -n "$verbose" && echo " package ice CFLAGS: $cf_pkgconfig_incs" 1>&6
-+
-+echo "${as_me:-configure}:10717: 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}:10721: testing package ice 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 #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10141: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:10144: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10147: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:10150: \$? = $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
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
--echo "$as_me:10160: 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:10164: 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 10172 "configure"
--#include "confdefs.h"
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
--/* 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 ()
--{
--remove ();
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10191: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:10194: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10197: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:10200: \$? = $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
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-+ { echo "$as_me:10821: WARNING: unable to find ICE library" >&5
-+echo "$as_me: WARNING: unable to find ICE library" >&2;}
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
-+
-+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists sm; then
-+ test -n "$verbose" && echo " found package sm" 1>&6
-+
-+echo "${as_me:-configure}:10828: 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`"
-+ test -n "$verbose" && echo " package sm CFLAGS: $cf_pkgconfig_incs" 1>&6
-+
-+echo "${as_me:-configure}:10834: 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}:10838: testing package sm 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 #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
- fi
--echo "$as_me:10211: 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"
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- fi
-
-- fi
-+if test -n "$cf_new_extra_cppflags" ; then
-
-- # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
-- echo "$as_me:10220: 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
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ :
- else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 10226 "configure"
--#include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char shmat (); below. */
--#include <assert.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 ();
--char (*f) ();
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-+ { echo "$as_me:10938: 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
-+ test -n "$verbose" && echo " found package xt" 1>&6
-+
-+echo "${as_me:-configure}:10945: 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`"
-+ test -n "$verbose" && echo " package xt CFLAGS: $cf_pkgconfig_incs" 1>&6
-+
-+echo "${as_me:-configure}:10951: 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}:10955: testing package xt 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 #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-
--int
--main ()
--{
--/* The GNU C library defines this 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)
--choke me
--#else
--f = shmat;
--#endif
-+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10257: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:10260: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10263: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:10266: \$? = $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:10276: result: $ac_cv_func_shmat" >&5
--echo "${ECHO_T}$ac_cv_func_shmat" >&6
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
-+ && test -z "${cf_tst_cflags}" \
-+ && cf_fix_cppflags=no
-+ ;;
-+esac
-+done
-
-- if test $ac_cv_func_shmat = no; then
-- echo "$as_me:10280: 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 10288 "configure"
--#include "confdefs.h"
-+if test -n "$cf_new_cflags" ; then
-
--/* 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 ()
--{
--shmat ();
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10307: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:10310: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10313: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:10316: \$? = $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
-+ CFLAGS="$CFLAGS $cf_new_cflags"
- fi
--echo "$as_me:10327: 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"
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- fi
-
-- fi
-- fi
-+if test -n "$cf_new_extra_cppflags" ; then
-
-- # 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:10345: 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 10353 "configure"
--#include "confdefs.h"
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-
--/* 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 ()
--{
--IceConnectionNumber ();
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10372: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:10375: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10378: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:10381: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- ac_cv_lib_ICE_IceConnectionNumber=yes
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ :
- else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--ac_cv_lib_ICE_IceConnectionNumber=no
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-+ { echo "$as_me:11055: WARNING: unable to find Xt library" >&5
-+echo "$as_me: WARNING: unable to find Xt library" >&2;}
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
-+
- fi
--echo "$as_me:10392: 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"
-+
-+cf_have_X_LIBS=no
-+
-+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xt; then
-+ test -n "$verbose" && echo " found package xt" 1>&6
-+
-+echo "${as_me:-configure}:11066: 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`"
-+ test -n "$verbose" && echo " package xt CFLAGS: $cf_pkgconfig_incs" 1>&6
-+
-+echo "${as_me:-configure}:11072: 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}:11076: testing package xt 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 #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
- fi
-
-- LDFLAGS=$ac_save_LDFLAGS
-+if test -n "$cf_new_cppflags" ; then
-
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- fi
-
--cf_x_athena=${cf_x_athena:-Xaw}
-+if test -n "$cf_new_extra_cppflags" ; then
-
--echo "$as_me:10404: 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=
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-
--# Check whether --with-Xaw3d or --without-Xaw3d was given.
--if test "${with_Xaw3d+set}" = set; then
-- withval="$with_Xaw3d"
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
--fi;
--if test "$withval" = yes ; then
-- cf_x_athena=Xaw3d
-- echo "$as_me:10415: result: yes" >&5
--echo "${ECHO_T}yes" >&6
-+ case "x$LIBS" in #(vi
-+ *-lX11*) #(vi
-+ ;;
-+ *)
-+# we have an "xt" package, but it may omit Xt's dependency on X11
-+echo "$as_me:11177: 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
-- echo "$as_me:10418: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
--
--echo "$as_me:10422: 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=
-
--# Check whether --with-neXtaw or --without-neXtaw was given.
--if test "${with_neXtaw+set}" = set; then
-- withval="$with_neXtaw"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 11184 "configure"
-+#include "confdefs.h"
-
--fi;
--if test "$withval" = yes ; then
-- cf_x_athena=neXtaw
-- echo "$as_me:10433: result: yes" >&5
--echo "${ECHO_T}yes" >&6
--else
-- echo "$as_me:10436: result: no" >&5
--echo "${ECHO_T}no" >&6
--fi
-+#include <X11/Xlib.h>
-
--echo "$as_me:10440: 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=
-+int
-+main ()
-+{
-
--# Check whether --with-XawPlus or --without-XawPlus was given.
--if test "${with_XawPlus+set}" = set; then
-- withval="$with_XawPlus"
-+ int rc1 = XDrawLine((Display*) 0, (Drawable) 0, (GC) 0, 0, 0, 0, 0);
-+ int rc2 = XClearWindow((Display*) 0, (Window) 0);
-+ int rc3 = XMoveWindow((Display*) 0, (Window) 0, 0, 0);
-+ int rc4 = XMoveResizeWindow((Display*)0, (Window)0, 0, 0, 0, 0);
-
--fi;
--if test "$withval" = yes ; then
-- cf_x_athena=XawPlus
-- echo "$as_me:10451: result: yes" >&5
--echo "${ECHO_T}yes" >&6
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:11203: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:11206: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:11209: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:11212: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ cf_cv_xt_x11_compat=yes
- else
-- echo "$as_me:10454: result: no" >&5
--echo "${ECHO_T}no" >&6
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+cf_cv_xt_x11_compat=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
-+echo "$as_me:11222: 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
-
--cf_x_athena_lib=""
-+echo "${as_me:-configure}:11228: testing work around broken X11 dependency ..." 1>&5
-
--if test "$PKG_CONFIG" != none ; then
-- cf_athena_list=
-- test "$cf_x_athena" = Xaw && cf_athena_list="xaw8 xaw7 xaw6"
-- for cf_athena_pkg in \
-- $cf_athena_list \
-- ${cf_x_athena} \
-- ${cf_x_athena}-devel \
-- lib${cf_x_athena} \
-- lib${cf_x_athena}-devel
-- do
-+ # 2010/11/19 - good enough until a working Xt on Xcb is delivered.
-
--if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists $cf_athena_pkg; then
-- test -n "$verbose" && echo " found package $cf_athena_pkg" 1>&6
-+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists x11; then
-+ test -n "$verbose" && echo " found package x11" 1>&6
-
--echo "${as_me:-configure}:10474: testing found package $cf_athena_pkg ..." 1>&5
-+echo "${as_me:-configure}:11235: testing found package x11 ..." 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`"
-- test -n "$verbose" && echo " package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs" 1>&6
-+ 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}:10480: testing package $cf_athena_pkg CFLAGS: $cf_pkgconfig_incs ..." 1>&5
-+echo "${as_me:-configure}:11241: testing package x11 CFLAGS: $cf_pkgconfig_incs ..." 1>&5
-
-- test -n "$verbose" && echo " package $cf_athena_pkg LIBS: $cf_pkgconfig_libs" 1>&6
-+ test -n "$verbose" && echo " package x11 LIBS: $cf_pkgconfig_libs" 1>&6
-
--echo "${as_me:-configure}:10484: testing package $cf_athena_pkg LIBS: $cf_pkgconfig_libs ..." 1>&5
-+echo "${as_me:-configure}:11245: testing package x11 LIBS: $cf_pkgconfig_libs ..." 1>&5
-
- cf_fix_cppflags=no
- cf_new_cflags=
-@@ -10498,7 +11259,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -10539,7 +11300,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -10561,86 +11322,113 @@
- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
-- LIBS="$cf_pkgconfig_libs $LIBS"
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
-- cf_x_athena_lib="$cf_pkgconfig_libs"
-+ :
-+else
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-
--cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+test -n "$verbose" && echo " ...before $LIBS" 1>&6
-
-- cat >>confdefs.h <<EOF
--#define $cf_x_athena_LIBS 1
--EOF
-+echo "${as_me:-configure}:11348: testing ...before $LIBS ..." 1>&5
-
--echo "$as_me:10574: 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
-+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}:11353: testing ...after $LIBS ..." 1>&5
-+
-+fi
-+
-+ fi
-+ ;;
-+ esac
-+
-+echo "$as_me:11361: 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 10581 "configure"
-+#line 11368 "configure"
- #include "confdefs.h"
-
--#include <X11/Xmu/CharSet.h>
-+#include <X11/Shell.h>
-
- int
- main ()
- {
--
--int check = XmuCompareISOLatin1("big", "small")
-+int num = IceConnectionNumber(0)
-
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10597: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:11383: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10600: \$? = $ac_status" >&5
-+ echo "$as_me:11386: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10603: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11389: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10606: \$? = $ac_status" >&5
-+ echo "$as_me:11392: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_xaw_compat=yes
-+ cf_cv_xt_ice_compat=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_xaw_compat=no
-+cf_cv_xt_ice_compat=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
--echo "$as_me:10616: result: $cf_cv_xaw_compat" >&5
--echo "${ECHO_T}$cf_cv_xaw_compat" >&6
-+echo "$as_me:11402: result: $cf_cv_xt_ice_compat" >&5
-+echo "${ECHO_T}$cf_cv_xt_ice_compat" >&6
-
-- if test "$cf_cv_xaw_compat" = no
-- then
-- # workaround for broken ".pc" files...
-- case "$cf_x_athena_lib" in #(vi
-- *-lXmu*) #(vi
-- ;;
-- *)
-- test -n "$verbose" && echo " work around broken package" 1>&6
-+ if test "$cf_cv_xt_ice_compat" = no
-+ then
-+ # workaround for broken ".pc" files used for X Toolkit.
-+ case "x$X_PRE_LIBS" in #(vi
-+ *-lICE*)
-+ case "x$LIBS" in #(vi
-+ *-lICE*) #(vi
-+ ;;
-+ *)
-+ test -n "$verbose" && echo " work around broken ICE dependency" 1>&6
-
--echo "${as_me:-configure}:10628: testing work around broken package ..." 1>&5
-+echo "${as_me:-configure}:11416: testing work around broken ICE dependency ..." 1>&5
-
--if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xmu; then
-- test -n "$verbose" && echo " found package xmu" 1>&6
-+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists ice; then
-+ test -n "$verbose" && echo " found package ice" 1>&6
-
--echo "${as_me:-configure}:10633: testing found package xmu ..." 1>&5
-+echo "${as_me:-configure}:11421: testing found package ice ..." 1>&5
-
-- 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
-+ 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}:10639: testing package xmu CFLAGS: $cf_pkgconfig_incs ..." 1>&5
-+echo "${as_me:-configure}:11427: testing package ice CFLAGS: $cf_pkgconfig_incs ..." 1>&5
-
-- test -n "$verbose" && echo " package xmu LIBS: $cf_pkgconfig_libs" 1>&6
-+ test -n "$verbose" && echo " package ice LIBS: $cf_pkgconfig_libs" 1>&6
-
--echo "${as_me:-configure}:10643: testing package xmu LIBS: $cf_pkgconfig_libs ..." 1>&5
-+echo "${as_me:-configure}:11431: testing package ice LIBS: $cf_pkgconfig_libs ..." 1>&5
-
- cf_fix_cppflags=no
- cf_new_cflags=
-@@ -10657,7 +11445,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -10698,7 +11486,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -10720,56 +11508,180 @@
- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
-- LIBS="$cf_pkgconfig_libs $LIBS"
-- :
--else
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
--test -n "$verbose" && echo " ...before $LIBS" 1>&6
-+if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists sm; then
-+ test -n "$verbose" && echo " found package sm" 1>&6
-
--echo "${as_me:-configure}:10729: testing ...before $LIBS ..." 1>&5
-+echo "${as_me:-configure}:11530: testing found package sm ..." 1>&5
-
--LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s,-lXt ,-lXt -lXmu ," -e 's/ / /g'`
--test -n "$verbose" && echo " ...after $LIBS" 1>&6
-+ 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}:10734: testing ...after $LIBS ..." 1>&5
-+echo "${as_me:-configure}:11536: testing package sm CFLAGS: $cf_pkgconfig_incs ..." 1>&5
-
--fi
-+ test -n "$verbose" && echo " package sm LIBS: $cf_pkgconfig_libs" 1>&6
-
-- ;;
-- esac
-+echo "${as_me:-configure}:11540: testing package sm 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 #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
- fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
-+fi
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-+
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-
-+cf_add_libs="$cf_pkgconfig_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ :
- else
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
- :
- fi
-
-- done
-+else
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-+
-+test -n "$verbose" && echo " ...before $LIBS" 1>&6
-+
-+echo "${as_me:-configure}:11649: 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}:11654: testing ...after $LIBS ..." 1>&5
-+
- fi
-
--if test -z "$cf_x_athena_lib" ; then
-+ ;;
-+ esac
-+ ;;
-+ esac
-+ fi
-
--if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists Xext; then
-- test -n "$verbose" && echo " found package Xext" 1>&6
-+ cf_have_X_LIBS=yes
-
--echo "${as_me:-configure}:10755: testing found package Xext ..." 1>&5
-+else
-+ cf_pkgconfig_incs=
-+ cf_pkgconfig_libs=
-
-- 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
-+ LDFLAGS="$X_LIBS $LDFLAGS"
-
--echo "${as_me:-configure}:10761: testing package Xext CFLAGS: $cf_pkgconfig_incs ..." 1>&5
-+test -n "$verbose" && echo " checking additions to CFLAGS" 1>&6
-
-- test -n "$verbose" && echo " package Xext LIBS: $cf_pkgconfig_libs" 1>&6
-+echo "${as_me:-configure}:11674: testing checking additions to CFLAGS ..." 1>&5
-
--echo "${as_me:-configure}:10765: testing package Xext LIBS: $cf_pkgconfig_libs ..." 1>&5
-+cf_check_cflags="$CFLAGS"
-+cf_check_cppflags="$CPPFLAGS"
-
- cf_fix_cppflags=no
- cf_new_cflags=
- cf_new_cppflags=
- cf_new_extra_cppflags=
-
--for cf_add_cflags in $cf_pkgconfig_incs
-+for cf_add_cflags in $X_CFLAGS
- do
- case $cf_fix_cppflags in
- no)
-@@ -10779,7 +11691,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -10820,7 +11732,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -10828,33 +11740,144 @@
- done
-
- if test -n "$cf_new_cflags" ; then
-+ test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-+
-+echo "${as_me:-configure}:11745: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
-
- CFLAGS="$CFLAGS $cf_new_cflags"
- fi
-
- if test -n "$cf_new_cppflags" ; then
-+ test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-+
-+echo "${as_me:-configure}:11753: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- 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}:11761: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
-
- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
-- LIBS="$cf_pkgconfig_libs $LIBS"
-- :
-+if test "x$cf_check_cflags" != "x$CFLAGS" ; then
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 11768 "configure"
-+#include "confdefs.h"
-+#include <stdio.h>
-+int
-+main ()
-+{
-+printf("Hello world");
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:11780: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:11783: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:11786: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:11789: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ :
- else
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+test -n "$verbose" && echo " test-compile failed. Undoing change to \$CFLAGS" 1>&6
-
-- echo "$as_me:10849: 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 "${as_me:-configure}:11797: 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}:11802: testing but keeping change to \$CPPFLAGS ..." 1>&5
-+
-+ fi
-+ CFLAGS="$cf_check_flags"
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+fi
-+
-+ echo "$as_me:11810: 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 11816 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char XOpenDisplay (); below. */
-+#include <assert.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 ();
-+char (*f) ();
-+
-+int
-+main ()
-+{
-+/* The GNU C library defines this 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_XOpenDisplay) || defined (__stub___XOpenDisplay)
-+choke me
-+#else
-+f = XOpenDisplay; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:11847: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:11850: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:11853: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:11856: \$? = $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
-+ac_cv_func_XOpenDisplay=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+fi
-+echo "$as_me:11866: result: $ac_cv_func_XOpenDisplay" >&5
-+echo "${ECHO_T}$ac_cv_func_XOpenDisplay" >&6
-+if test $ac_cv_func_XOpenDisplay = yes; then
-+ :
-+else
-+
-+ echo "$as_me:11872: 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="-lXext $LIBS"
-+LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 10857 "configure"
-+#line 11880 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -10863,592 +11886,500 @@
- #endif
- /* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
--char XextCreateExtension ();
-+char XOpenDisplay ();
- int
- main ()
- {
--XextCreateExtension ();
-+XOpenDisplay ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:10876: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:11899: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:10879: \$? = $ac_status" >&5
-+ echo "$as_me:11902: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:10882: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:11905: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:10885: \$? = $ac_status" >&5
-+ echo "$as_me:11908: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_Xext_XextCreateExtension=yes
-+ ac_cv_lib_X11_XOpenDisplay=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_Xext_XextCreateExtension=no
-+ac_cv_lib_X11_XOpenDisplay=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:10896: 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
-- LIBS="-lXext $LIBS"
--fi
--
--fi
--
--cf_have_X_LIBS=no
--
--if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xt; then
-- test -n "$verbose" && echo " found package xt" 1>&6
--
--echo "${as_me:-configure}:10909: 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`"
-- test -n "$verbose" && echo " package xt CFLAGS: $cf_pkgconfig_incs" 1>&6
--
--echo "${as_me:-configure}:10915: 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}:10919: testing package xt LIBS: $cf_pkgconfig_libs ..." 1>&5
--
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
-+echo "$as_me:11919: 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
-
--for cf_add_cflags in $cf_pkgconfig_incs
-+cf_add_libs="-lX11"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
- do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
-+ 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_libs $cf_add_1lib"
- done
-+LIBS="$cf_add_libs"
-
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
- fi
-
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- fi
-
--if test -n "$cf_new_extra_cppflags" ; then
-+ echo "$as_me:11943: 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 11949 "configure"
-+#include "confdefs.h"
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char XtAppInitialize (); below. */
-+#include <assert.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 XtAppInitialize ();
-+char (*f) ();
-+
-+int
-+main ()
-+{
-+/* The GNU C library defines this 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_XtAppInitialize) || defined (__stub___XtAppInitialize)
-+choke me
-+#else
-+f = XtAppInitialize; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:11980: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:11983: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:11986: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:11989: \$? = $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
-+ac_cv_func_XtAppInitialize=no
- fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+fi
-+echo "$as_me:11999: result: $ac_cv_func_XtAppInitialize" >&5
-+echo "${ECHO_T}$ac_cv_func_XtAppInitialize" >&6
-+if test $ac_cv_func_XtAppInitialize = yes; then
-+ :
-+else
-
-- LIBS="$cf_pkgconfig_libs $LIBS"
--
-- case "x$LIBS" in #(vi
-- *-lX11*) #(vi
-- ;;
-- *)
--# we have an "xt" package, but it may omit Xt's dependency on X11
--echo "$as_me:11006: 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 "$as_me:12005: 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 11013 "configure"
-+#line 12013 "configure"
- #include "confdefs.h"
-
--#include <X11/Xlib.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 XtAppInitialize ();
- int
- main ()
- {
--
-- int rc1 = XDrawLine((Display*) 0, (Drawable) 0, (GC) 0, 0, 0, 0, 0);
-- int rc2 = XClearWindow((Display*) 0, (Window) 0);
-- int rc3 = XMoveWindow((Display*) 0, (Window) 0, 0, 0);
-- int rc4 = XMoveResizeWindow((Display*)0, (Window)0, 0, 0, 0, 0);
--
-+XtAppInitialize ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11032: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:12032: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11035: \$? = $ac_status" >&5
-+ echo "$as_me:12035: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11038: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12038: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11041: \$? = $ac_status" >&5
-+ echo "$as_me:12041: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_xt_x11_compat=yes
-+ ac_cv_lib_Xt_XtAppInitialize=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_xt_x11_compat=no
-+ac_cv_lib_Xt_XtAppInitialize=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:11051: 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}:11057: 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
-- test -n "$verbose" && echo " found package x11" 1>&6
-+echo "$as_me:12052: 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
-
--echo "${as_me:-configure}:11064: testing found package x11 ..." 1>&5
-+cat >>confdefs.h <<\EOF
-+#define HAVE_LIBXT 1
-+EOF
-
-- 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
-+ cf_have_X_LIBS=Xt
-+ LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS"
-+fi
-
--echo "${as_me:-configure}:11070: testing package x11 CFLAGS: $cf_pkgconfig_incs ..." 1>&5
-+fi
-
-- test -n "$verbose" && echo " package x11 LIBS: $cf_pkgconfig_libs" 1>&6
-+fi
-
--echo "${as_me:-configure}:11074: testing package x11 LIBS: $cf_pkgconfig_libs ..." 1>&5
-+if test $cf_have_X_LIBS = no ; then
-+ { echo "$as_me:12069: 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
-+test program. You will have to check and add the proper libraries by hand
-+to makefile." >&2;}
-+fi
-
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
-+cf_x_athena_root=$cf_x_athena
-+cf_x_athena_inc=""
-
--for cf_add_cflags in $cf_pkgconfig_incs
-+for cf_path in default \
-+ /usr/contrib/X11R6 \
-+ /usr/contrib/X11R5 \
-+ /usr/lib/X11R5 \
-+ /usr/local
- do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
--
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
-+ if test -z "$cf_x_athena_inc" ; then
-+ cf_save="$CPPFLAGS"
-+ cf_test=X11/$cf_x_athena_root/SimpleMenu.h
-+ if test $cf_path != default ; then
-+ CPPFLAGS="$cf_save -I$cf_path/include"
-+ echo "$as_me:12091: 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:12094: checking for $cf_test" >&5
-+echo $ECHO_N "checking for $cf_test... $ECHO_C" >&6
-+ fi
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 12098 "configure"
-+#include "confdefs.h"
-
--if test -n "$cf_new_cppflags" ; then
-+#include <X11/Intrinsic.h>
-+#include <$cf_test>
-+int
-+main ()
-+{
-
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:12112: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12115: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:12118: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12121: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ cf_result=yes
-+else
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+cf_result=no
- fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ echo "$as_me:12130: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+ if test "$cf_result" = yes ; then
-+ cf_x_athena_inc=$cf_path
-+ break
-+ else
-+ CPPFLAGS="$cf_save"
-+ fi
-+ fi
-+done
-
--if test -n "$cf_new_extra_cppflags" ; then
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+if test -z "$cf_x_athena_inc" ; then
-+ { echo "$as_me:12142: WARNING: Unable to successfully find Athena header files with test program" >&5
-+echo "$as_me: WARNING: Unable to successfully find Athena header files with test program" >&2;}
-+elif test "$cf_x_athena_inc" != default ; then
-+ CPPFLAGS="$CPPFLAGS -I$cf_x_athena_inc"
- fi
-
-- LIBS="$cf_pkgconfig_libs $LIBS"
-- :
--else
--
--test -n "$verbose" && echo " ...before $LIBS" 1>&6
--
--echo "${as_me:-configure}:11160: testing ...before $LIBS ..." 1>&5
-+cf_x_athena_root=$cf_x_athena
-+cf_x_athena_lib=""
-
--LIBS=`echo "$LIBS" | sed -e "s/[ ][ ]*/ /g" -e "s,-lXt ,-lXt -lX11 ," -e 's/ / /g'`
--test -n "$verbose" && echo " ...after $LIBS" 1>&6
-+for cf_path in default \
-+ /usr/contrib/X11R6 \
-+ /usr/contrib/X11R5 \
-+ /usr/lib/X11R5 \
-+ /usr/local
-+do
-+ for cf_lib in \
-+ ${cf_x_athena_root} \
-+ ${cf_x_athena_root}7 \
-+ ${cf_x_athena_root}6
-+ do
-+ for cf_libs in \
-+ "-l$cf_lib -lXmu" \
-+ "-l$cf_lib -lXpm -lXmu" \
-+ "-l${cf_lib}_s -lXmu_s"
-+ do
-+ if test -z "$cf_x_athena_lib" ; then
-+ cf_save="$LIBS"
-+ cf_test=XawSimpleMenuAddGlobalActions
-+ if test $cf_path != default ; then
-
--echo "${as_me:-configure}:11165: testing ...after $LIBS ..." 1>&5
-+cf_add_libs="-L$cf_path/lib $cf_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
--fi
-+ echo "$as_me:12188: checking for $cf_libs in $cf_path" >&5
-+echo $ECHO_N "checking for $cf_libs in $cf_path... $ECHO_C" >&6
-+ else
-
-+cf_add_libs="$cf_libs"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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
-- ;;
-- esac
--
--echo "$as_me:11173: 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
-+ done
-+ test -n "$cf_add_1lib" && cf_add_libs="$cf_add_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 11180 "configure"
-+ echo "$as_me:12208: checking for $cf_test in $cf_libs" >&5
-+echo $ECHO_N "checking for $cf_test in $cf_libs... $ECHO_C" >&6
-+ fi
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 12212 "configure"
- #include "confdefs.h"
-
--#include <X11/Shell.h>
-+#include <X11/Intrinsic.h>
-+#include <X11/$cf_x_athena_root/SimpleMenu.h>
-
- int
- main ()
- {
--int num = IceConnectionNumber(0)
-
-+$cf_test((XtAppContext) 0)
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11195: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:12228: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11198: \$? = $ac_status" >&5
-+ echo "$as_me:12231: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11201: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12234: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11204: \$? = $ac_status" >&5
-+ echo "$as_me:12237: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_xt_ice_compat=yes
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_xt_ice_compat=no
-+cf_result=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--fi
--echo "$as_me:11214: result: $cf_cv_xt_ice_compat" >&5
--echo "${ECHO_T}$cf_cv_xt_ice_compat" >&6
--
-- if test "$cf_cv_xt_ice_compat" = no
-- then
-- # workaround for broken ".pc" files used for X Toolkit.
-- case "x$X_PRE_LIBS" in #(vi
-- *-lICE*)
-- case "x$LIBS" in #(vi
-- *-lICE*) #(vi
-- ;;
-- *)
-- test -n "$verbose" && echo " work around broken ICE dependency" 1>&6
--
--echo "${as_me:-configure}:11228: testing work around broken ICE dependency ..." 1>&5
--
--if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists ice; then
-- test -n "$verbose" && echo " found package ice" 1>&6
--
--echo "${as_me:-configure}:11233: 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`"
-- test -n "$verbose" && echo " package ice CFLAGS: $cf_pkgconfig_incs" 1>&6
--
--echo "${as_me:-configure}:11239: 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}:11243: testing package ice 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 #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-+ echo "$as_me:12246: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+ if test "$cf_result" = yes ; then
-+ cf_x_athena_lib="$cf_libs"
-+ break
- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
-+ LIBS="$cf_save"
-+ fi
-+ done # cf_libs
-+ test -n "$cf_x_athena_lib" && break
-+ done # cf_lib
- done
-
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
-+if test -z "$cf_x_athena_lib" ; then
-+ { { echo "$as_me:12260: 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
-
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
--fi
-+cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-
--if test -n "$cf_new_extra_cppflags" ; then
-+cat >>confdefs.h <<EOF
-+#define $cf_x_athena_LIBS 1
-+EOF
-
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
-- LIBS="$cf_pkgconfig_libs $LIBS"
--
--if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists sm; then
-- test -n "$verbose" && echo " found package sm" 1>&6
--
--echo "${as_me:-configure}:11328: 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`"
-- test -n "$verbose" && echo " package sm CFLAGS: $cf_pkgconfig_incs" 1>&6
--
--echo "${as_me:-configure}:11334: 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}:11338: testing package sm 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 #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
-+if test -n "$ac_tool_prefix"; then
-+ for ac_prog in xcurses-config
-+ 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:12278: 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
-+else
-+ if test -n "$XCURSES_CONFIG"; then
-+ ac_cv_prog_XCURSES_CONFIG="$XCURSES_CONFIG" # 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_XCURSES_CONFIG="$ac_tool_prefix$ac_prog"
-+echo "$as_me:12293: found $ac_dir/$ac_word" >&5
-+break
- done
-
--if test -n "$cf_new_cflags" ; then
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
--fi
--
--if test -n "$cf_new_cppflags" ; then
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- fi
--
--if test -n "$cf_new_extra_cppflags" ; then
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
--
-- LIBS="$cf_pkgconfig_libs $LIBS"
-- :
-+XCURSES_CONFIG=$ac_cv_prog_XCURSES_CONFIG
-+if test -n "$XCURSES_CONFIG"; then
-+ echo "$as_me:12301: result: $XCURSES_CONFIG" >&5
-+echo "${ECHO_T}$XCURSES_CONFIG" >&6
- else
-- :
-+ echo "$as_me:12304: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
-
-+ test -n "$XCURSES_CONFIG" && break
-+ done
-+fi
-+if test -z "$XCURSES_CONFIG"; then
-+ ac_ct_XCURSES_CONFIG=$XCURSES_CONFIG
-+ for ac_prog in xcurses-config
-+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:12317: 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
-+else
-+ if test -n "$ac_ct_XCURSES_CONFIG"; then
-+ ac_cv_prog_ac_ct_XCURSES_CONFIG="$ac_ct_XCURSES_CONFIG" # 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_XCURSES_CONFIG="$ac_prog"
-+echo "$as_me:12332: found $ac_dir/$ac_word" >&5
-+break
-+done
-
--test -n "$verbose" && echo " ...before $LIBS" 1>&6
-+fi
-+fi
-+ac_ct_XCURSES_CONFIG=$ac_cv_prog_ac_ct_XCURSES_CONFIG
-+if test -n "$ac_ct_XCURSES_CONFIG"; then
-+ echo "$as_me:12340: result: $ac_ct_XCURSES_CONFIG" >&5
-+echo "${ECHO_T}$ac_ct_XCURSES_CONFIG" >&6
-+else
-+ echo "$as_me:12343: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-
--echo "${as_me:-configure}:11428: testing ...before $LIBS ..." 1>&5
-+ test -n "$ac_ct_XCURSES_CONFIG" && break
-+done
-+test -n "$ac_ct_XCURSES_CONFIG" || ac_ct_XCURSES_CONFIG="none"
-
--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
-+ XCURSES_CONFIG=$ac_ct_XCURSES_CONFIG
-+fi
-
--echo "${as_me:-configure}:11433: testing ...after $LIBS ..." 1>&5
-+if test "$XCURSES_CONFIG" != none ; then
-
--fi
-+CPPFLAGS="$CPPFLAGS `$XCURSES_CONFIG --cflags`"
-
-- ;;
-- esac
-- ;;
-- esac
-- fi
-+cf_add_libs="`$XCURSES_CONFIG --libs`"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-
-- cf_have_X_LIBS=yes
-+cf_cv_lib_XCurses=yes
-
- else
-
-- LDFLAGS="$X_LIBS $LDFLAGS"
-+LDFLAGS="$LDFLAGS $X_LIBS"
-
- test -n "$verbose" && echo " checking additions to CFLAGS" 1>&6
-
--echo "${as_me:-configure}:11451: testing checking additions to CFLAGS ..." 1>&5
-+echo "${as_me:-configure}:12382: testing checking additions to CFLAGS ..." 1>&5
-
- cf_check_cflags="$CFLAGS"
- cf_check_cppflags="$CPPFLAGS"
-@@ -11468,7 +12399,7 @@
- -D*)
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=yes
-
-@@ -11509,7 +12440,7 @@
-
- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
- && test -z "${cf_tst_cflags}" \
- && cf_fix_cppflags=no
- ;;
-@@ -11519,7 +12450,7 @@
- if test -n "$cf_new_cflags" ; then
- test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
-
--echo "${as_me:-configure}:11522: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
-+echo "${as_me:-configure}:12453: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
-
- CFLAGS="$CFLAGS $cf_new_cflags"
- fi
-@@ -11527,7 +12458,7 @@
- if test -n "$cf_new_cppflags" ; then
- test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
-
--echo "${as_me:-configure}:11530: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
-+echo "${as_me:-configure}:12461: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
-
- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- fi
-@@ -11535,14 +12466,14 @@
- 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}:11538: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
-+echo "${as_me:-configure}:12469: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
-
- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
--if test "$cf_check_cflags" != "$CFLAGS" ; then
-+if test "x$cf_check_cflags" != "x$CFLAGS" ; then
- cat >conftest.$ac_ext <<_ACEOF
--#line 11545 "configure"
-+#line 12476 "configure"
- #include "confdefs.h"
- #include <stdio.h>
- int
-@@ -11554,16 +12485,16 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11557: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:12488: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11560: \$? = $ac_status" >&5
-+ echo "$as_me:12491: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11563: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12494: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11566: \$? = $ac_status" >&5
-+ echo "$as_me:12497: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
- else
-@@ -11571,12 +12502,12 @@
- cat conftest.$ac_ext >&5
- test -n "$verbose" && echo " test-compile failed. Undoing change to \$CFLAGS" 1>&6
-
--echo "${as_me:-configure}:11574: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5
-+echo "${as_me:-configure}:12505: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5
-
-- if test "$cf_check_cppflags" != "$CPPFLAGS" ; then
-+ if test "x$cf_check_cppflags" != "x$CPPFLAGS" ; then
- test -n "$verbose" && echo " but keeping change to \$CPPFLAGS" 1>&6
-
--echo "${as_me:-configure}:11579: testing but keeping change to \$CPPFLAGS ..." 1>&5
-+echo "${as_me:-configure}:12510: testing but keeping change to \$CPPFLAGS ..." 1>&5
-
- fi
- CFLAGS="$cf_check_flags"
-@@ -11584,17 +12515,17 @@
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
-
-- echo "$as_me:11587: checking for XOpenDisplay" >&5
--echo $ECHO_N "checking for XOpenDisplay... $ECHO_C" >&6
--if test "${ac_cv_func_XOpenDisplay+set}" = set; then
-+echo "$as_me:12518: 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
-- cat >conftest.$ac_ext <<_ACEOF
--#line 11593 "configure"
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 12526 "configure"
- #include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char XOpenDisplay (); below. */
--#include <assert.h>
-+
- /* Override any gcc2 internal prototype to avoid an error. */
- #ifdef __cplusplus
- extern "C"
-@@ -11602,59 +12533,321 @@
- /* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
- char XOpenDisplay ();
--char (*f) ();
--
- int
- main ()
- {
--/* The GNU C library defines this 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_XOpenDisplay) || defined (__stub___XOpenDisplay)
--choke me
--#else
--f = XOpenDisplay;
--#endif
-+XOpenDisplay ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:12545: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12548: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:12551: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12554: \$? = $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
-+ac_cv_lib_X11_XOpenDisplay=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:12565: 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
-+
-+cf_add_libs="-lX11"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+fi
-+
-+echo "$as_me:12587: 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
-+else
-+
-+cf_add_libs="-lXCurses"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 12610 "configure"
-+#include "confdefs.h"
-+
-+#include <xcurses.h>
-+char *XCursesProgramName = "test";
-
-+int
-+main ()
-+{
-+XCursesExit();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11624: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:12625: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11627: \$? = $ac_status" >&5
-+ echo "$as_me:12628: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11630: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12631: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11633: \$? = $ac_status" >&5
-+ echo "$as_me:12634: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_func_XOpenDisplay=yes
-+ cf_cv_lib_XCurses=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_func_XOpenDisplay=no
-+cf_cv_lib_XCurses=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+
- fi
--echo "$as_me:11643: result: $ac_cv_func_XOpenDisplay" >&5
--echo "${ECHO_T}$ac_cv_func_XOpenDisplay" >&6
--if test $ac_cv_func_XOpenDisplay = yes; then
-- :
-+echo "$as_me:12645: result: $cf_cv_lib_XCurses" >&5
-+echo "${ECHO_T}$cf_cv_lib_XCurses" >&6
-+
-+fi
-+
-+if test $cf_cv_lib_XCurses = yes ; then
-+
-+cat >>confdefs.h <<\EOF
-+#define UNIX 1
-+EOF
-+
-+cat >>confdefs.h <<\EOF
-+#define XCURSES 1
-+EOF
-+
-+ echo "$as_me:12660: 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 12666 "configure"
-+#include "confdefs.h"
-+#include <xcurses.h>
-+_ACEOF
-+if { (eval echo "$as_me:12670: \"$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:12676: \$? = $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
-+ ac_cv_header_xcurses_h=yes
-+else
-+ echo "$as_me: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ ac_cv_header_xcurses_h=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+fi
-+echo "$as_me:12695: 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
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_XCURSES 1
-+EOF
-+
-+fi
-+
-+else
-+ { { echo "$as_me:12706: error: Cannot link with XCurses" >&5
-+echo "$as_me: error: Cannot link with XCurses" >&2;}
-+ { (exit 1); exit 1; }; }
-+fi
-+
-+ ;;
-+esac
-+
-+case $cf_cv_screen in
-+curses|curses_*)
-+
-+echo "$as_me:12717: 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 12724 "configure"
-+#include "confdefs.h"
-+
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <form.h>
-+
-+int
-+main ()
-+{
-+
-+ FORM *form;
-+ int y = current_field(form)->cursor_ypos;
-+ int x = current_field(form)->cursor_xpos;
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:12743: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12746: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:12749: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12752: \$? = $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
-+cf_cv_netbsd_form_h=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+echo "$as_me:12764: result: $cf_cv_netbsd_form_h" >&5
-+echo "${ECHO_T}$cf_cv_netbsd_form_h" >&6
-+
-+test "$cf_cv_netbsd_form_h" = yes &&
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NETBSD_FORM_H 1
-+EOF
-+
-+echo "$as_me:12772: 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 12779 "configure"
-+#include "confdefs.h"
-+
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <menu.h>
-+
-+int
-+main ()
-+{
-+
-+ MENU *menu;
-+ int y = menu->max_item_width;
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:12797: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12800: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:12803: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:12806: \$? = $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
-+cf_cv_netbsd_menu_h=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+echo "$as_me:12818: result: $cf_cv_netbsd_menu_h" >&5
-+echo "${ECHO_T}$cf_cv_netbsd_menu_h" >&6
-+
-+test "$cf_cv_netbsd_menu_h" = yes &&
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NETBSD_MENU_H 1
-+EOF
-+
-+ ;;
-+ncursesw)
-+ cf_cv_libtype=w
-+ ;;
-+esac
-
-- echo "$as_me:11649: 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
-+case $cf_cv_screen in #(vi
-+pdcurses) #(vi
-+ ;;
-+*)
-+ # look for curses-related libraries
-+ : ${cf_panel_lib:=panel}
-+ : ${cf_menu_lib:=menu}
-+ : ${cf_form_lib:=form}
-+
-+as_ac_Lib=`echo "ac_cv_lib_$cf_panel_lib$cf_cv_libtype''_new_panel" | $as_tr_sh`
-+echo "$as_me:12842: checking for new_panel in -l$cf_panel_lib$cf_cv_libtype" >&5
-+echo $ECHO_N "checking for new_panel in -l$cf_panel_lib$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="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
-+LIBS="-l$cf_panel_lib$cf_cv_libtype $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 11657 "configure"
-+#line 12850 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -11663,115 +12856,116 @@
- #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 ();
-+char new_panel ();
- int
- main ()
- {
--XOpenDisplay ();
-+new_panel ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11676: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:12869: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11679: \$? = $ac_status" >&5
-+ echo "$as_me:12872: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11682: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12875: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11685: \$? = $ac_status" >&5
-+ echo "$as_me:12878: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_X11_XOpenDisplay=yes
-+ eval "$as_ac_Lib=yes"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_X11_XOpenDisplay=no
-+eval "$as_ac_Lib=no"
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:11696: 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
-- LIBS="-lX11 $LIBS"
--fi
-+echo "$as_me:12889: 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
-+ cat >>confdefs.h <<EOF
-+#define `echo "HAVE_LIB$cf_panel_lib$cf_cv_libtype" | $as_tr_cpp` 1
-+EOF
-+
-+ LIBS="-l$cf_panel_lib$cf_cv_libtype $LIBS"
-
- fi
-
-- echo "$as_me:11704: checking for XtAppInitialize" >&5
--echo $ECHO_N "checking for XtAppInitialize... $ECHO_C" >&6
--if test "${ac_cv_func_XtAppInitialize+set}" = set; then
-+as_ac_Lib=`echo "ac_cv_lib_$cf_menu_lib$cf_cv_libtype''_menu_driver" | $as_tr_sh`
-+echo "$as_me:12901: checking for menu_driver in -l$cf_menu_lib$cf_cv_libtype" >&5
-+echo $ECHO_N "checking for menu_driver in -l$cf_menu_lib$cf_cv_libtype... $ECHO_C" >&6
-+if eval "test \"\${$as_ac_Lib+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 11710 "configure"
-+ ac_check_lib_save_LIBS=$LIBS
-+LIBS="-l$cf_menu_lib$cf_cv_libtype $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 12909 "configure"
- #include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char XtAppInitialize (); below. */
--#include <assert.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 XtAppInitialize ();
--char (*f) ();
--
-+char menu_driver ();
- int
- main ()
- {
--/* The GNU C library defines this 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_XtAppInitialize) || defined (__stub___XtAppInitialize)
--choke me
--#else
--f = XtAppInitialize;
--#endif
--
-+menu_driver ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11741: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:12928: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11744: \$? = $ac_status" >&5
-+ echo "$as_me:12931: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11747: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12934: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11750: \$? = $ac_status" >&5
-+ echo "$as_me:12937: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_func_XtAppInitialize=yes
-+ eval "$as_ac_Lib=yes"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_func_XtAppInitialize=no
-+eval "$as_ac_Lib=no"
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:11760: result: $ac_cv_func_XtAppInitialize" >&5
--echo "${ECHO_T}$ac_cv_func_XtAppInitialize" >&6
--if test $ac_cv_func_XtAppInitialize = yes; then
-- :
--else
-+echo "$as_me:12948: 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
-+ cat >>confdefs.h <<EOF
-+#define `echo "HAVE_LIB$cf_menu_lib$cf_cv_libtype" | $as_tr_cpp` 1
-+EOF
-
-- echo "$as_me:11766: 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
-+ LIBS="-l$cf_menu_lib$cf_cv_libtype $LIBS"
-+
-+fi
-+
-+as_ac_Lib=`echo "ac_cv_lib_$cf_form_lib$cf_cv_libtype''_form_driver" | $as_tr_sh`
-+echo "$as_me:12960: checking for form_driver in -l$cf_form_lib$cf_cv_libtype" >&5
-+echo $ECHO_N "checking for form_driver in -l$cf_form_lib$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="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
-+LIBS="-l$cf_form_lib$cf_cv_libtype $LIBS"
- cat >conftest.$ac_ext <<_ACEOF
--#line 11774 "configure"
-+#line 12968 "configure"
- #include "confdefs.h"
-
- /* Override any gcc2 internal prototype to avoid an error. */
-@@ -11780,1160 +12974,1106 @@
- #endif
- /* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
--char XtAppInitialize ();
-+char form_driver ();
- int
- main ()
- {
--XtAppInitialize ();
-+form_driver ();
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11793: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:12987: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11796: \$? = $ac_status" >&5
-+ echo "$as_me:12990: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11799: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:12993: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11802: \$? = $ac_status" >&5
-+ echo "$as_me:12996: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_Xt_XtAppInitialize=yes
-+ eval "$as_ac_Lib=yes"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_Xt_XtAppInitialize=no
-+eval "$as_ac_Lib=no"
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:11813: 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
-- cat >>confdefs.h <<\EOF
--#define HAVE_LIBXT 1
-+echo "$as_me:13007: 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
-+ cat >>confdefs.h <<EOF
-+#define `echo "HAVE_LIB$cf_form_lib$cf_cv_libtype" | $as_tr_cpp` 1
- EOF
-
-- cf_have_X_LIBS=Xt
-- LIBS="-lXt $X_PRE_LIBS $LIBS $X_EXTRA_LIBS"
-+ LIBS="-l$cf_form_lib$cf_cv_libtype $LIBS"
-+
-+fi
-+
-+ # look for curses-related headers
-+
-+for ac_header in \
-+ nc_alloc.h \
-+ nomacros.h \
-+ form.h \
-+ menu.h \
-+ panel.h \
-+ term_entry.h \
-+
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+echo "$as_me:13030: 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 13036 "configure"
-+#include "confdefs.h"
-+#include <$ac_header>
-+_ACEOF
-+if { (eval echo "$as_me:13040: \"$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:13046: \$? = $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:13065: 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
-+
-+ ;;
-+esac
-+
-+echo "$as_me:13078: 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 13084 "configure"
-+#include "confdefs.h"
-+#include <stdlib.h>
-+#include <stdarg.h>
-+#include <string.h>
-+#include <float.h>
-
-+_ACEOF
-+if { (eval echo "$as_me:13092: \"$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:13098: \$? = $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
-+ ac_cv_header_stdc=yes
-+else
-+ echo "$as_me: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ ac_cv_header_stdc=no
- fi
-+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 13120 "configure"
-+#include "confdefs.h"
-+#include <string.h>
-+
-+_ACEOF
-+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-+ egrep "memchr" >/dev/null 2>&1; then
-+ :
-+else
-+ ac_cv_header_stdc=no
-+fi
-+rm -rf conftest*
-
--if test $cf_have_X_LIBS = no ; then
-- { echo "$as_me:11829: 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
--test program. You will have to check and add the proper libraries by hand
--to makefile." >&2;}
- fi
-
--cf_x_athena_root=$cf_x_athena
--cf_x_athena_inc=""
-+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 13138 "configure"
-+#include "confdefs.h"
-+#include <stdlib.h>
-
--for cf_path in default \
-- /usr/contrib/X11R6 \
-- /usr/contrib/X11R5 \
-- /usr/lib/X11R5 \
-- /usr/local
--do
-- if test -z "$cf_x_athena_inc" ; then
-- cf_save="$CPPFLAGS"
-- cf_test=X11/$cf_x_athena_root/SimpleMenu.h
-- if test $cf_path != default ; then
-- CPPFLAGS="$cf_save -I$cf_path/include"
-- echo "$as_me:11851: 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:11854: checking for $cf_test" >&5
--echo $ECHO_N "checking for $cf_test... $ECHO_C" >&6
-- fi
-- cat >conftest.$ac_ext <<_ACEOF
--#line 11858 "configure"
-+_ACEOF
-+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-+ egrep "free" >/dev/null 2>&1; then
-+ :
-+else
-+ ac_cv_header_stdc=no
-+fi
-+rm -rf conftest*
-+
-+fi
-+
-+if test $ac_cv_header_stdc = yes; then
-+ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-+ if test "$cross_compiling" = yes; then
-+ :
-+else
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 13159 "configure"
- #include "confdefs.h"
-+#include <ctype.h>
-+#if ((' ' & 0x0FF) == 0x020)
-+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-+#else
-+# define ISLOWER(c) (('a' <= (c) && (c) <= 'i') \
-+ || ('j' <= (c) && (c) <= 'r') \
-+ || ('s' <= (c) && (c) <= 'z'))
-+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-+#endif
-
--#include <X11/Intrinsic.h>
--#include <$cf_test>
-+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
- int
- main ()
- {
--
-- ;
-- return 0;
-+ int i;
-+ for (i = 0; i < 256; i++)
-+ if (XOR (islower (i), ISLOWER (i))
-+ || toupper (i) != TOUPPER (i))
-+ $ac_main_return(2);
-+ $ac_main_return (0);
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:11872: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:13185: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:11875: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:11878: \"$ac_try\"") >&5
-+ echo "$as_me:13188: \$? = $ac_status" >&5
-+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+ { (eval echo "$as_me:13190: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11881: \$? = $ac_status" >&5
-+ echo "$as_me:13193: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_result=yes
-+ :
- else
-- echo "$as_me: failed program was:" >&5
-+ echo "$as_me: program exited with status $ac_status" >&5
-+echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_result=no
-+ac_cv_header_stdc=no
-+fi
-+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-+fi
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-- echo "$as_me:11890: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
-- if test "$cf_result" = yes ; then
-- cf_x_athena_inc=$cf_path
-- break
-- else
-- CPPFLAGS="$cf_save"
-- fi
-- fi
--done
--
--if test -z "$cf_x_athena_inc" ; then
-- { echo "$as_me:11902: WARNING: Unable to successfully find Athena header files with test program" >&5
--echo "$as_me: WARNING: Unable to successfully find Athena header files with test program" >&2;}
--elif test "$cf_x_athena_inc" != default ; then
-- CPPFLAGS="$CPPFLAGS -I$cf_x_athena_inc"
- fi
-+echo "$as_me:13206: result: $ac_cv_header_stdc" >&5
-+echo "${ECHO_T}$ac_cv_header_stdc" >&6
-+if test $ac_cv_header_stdc = yes; then
-
--cf_x_athena_root=$cf_x_athena
--cf_x_athena_lib=""
-+cat >>confdefs.h <<\EOF
-+#define STDC_HEADERS 1
-+EOF
-
--for cf_path in default \
-- /usr/contrib/X11R6 \
-- /usr/contrib/X11R5 \
-- /usr/lib/X11R5 \
-- /usr/local
--do
-- for cf_lib in \
-- "-l$cf_x_athena_root -lXmu" \
-- "-l$cf_x_athena_root -lXpm -lXmu" \
-- "-l${cf_x_athena_root}_s -lXmu_s"
-- do
-- if test -z "$cf_x_athena_lib" ; then
-- cf_save="$LIBS"
-- cf_test=XawSimpleMenuAddGlobalActions
-- if test $cf_path != default ; then
-- LIBS="-L$cf_path/lib $cf_lib $LIBS"
-- echo "$as_me:11927: checking for $cf_lib in $cf_path" >&5
--echo $ECHO_N "checking for $cf_lib in $cf_path... $ECHO_C" >&6
-- else
-- LIBS="$cf_lib $LIBS"
-- echo "$as_me:11931: checking for $cf_test in $cf_lib" >&5
--echo $ECHO_N "checking for $cf_test in $cf_lib... $ECHO_C" >&6
-- fi
-- cat >conftest.$ac_ext <<_ACEOF
--#line 11935 "configure"
--#include "confdefs.h"
-+fi
-
--#include <X11/Intrinsic.h>
--#include <X11/$cf_x_athena_root/SimpleMenu.h>
-+echo "$as_me:13216: 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 13222 "configure"
-+#include "confdefs.h"
-+#include <sys/types.h>
-+#include <sys/time.h>
-+#include <time.h>
-
- int
- main ()
- {
--
--$cf_test((XtAppContext) 0)
-+if ((struct tm *) 0)
-+return 0;
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:11951: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:13238: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:11954: \$? = $ac_status" >&5
-+ echo "$as_me:13241: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:11957: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:13244: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:11960: \$? = $ac_status" >&5
-+ echo "$as_me:13247: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_result=yes
-+ ac_cv_header_time=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_result=no
-+ac_cv_header_time=no
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- echo "$as_me:11969: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
-- if test "$cf_result" = yes ; then
-- cf_x_athena_lib="$cf_lib"
-- break
-- fi
-- LIBS="$cf_save"
-- fi
-- done
--done
--
--if test -z "$cf_x_athena_lib" ; then
-- { { echo "$as_me:11981: 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; }; }
-+rm -f conftest.$ac_objext conftest.$ac_ext
- fi
-+echo "$as_me:13257: result: $ac_cv_header_time" >&5
-+echo "${ECHO_T}$ac_cv_header_time" >&6
-+if test $ac_cv_header_time = yes; then
-
--cf_x_athena_LIBS=`echo "HAVE_LIB_$cf_x_athena" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
--
--cat >>confdefs.h <<EOF
--#define $cf_x_athena_LIBS 1
-+cat >>confdefs.h <<\EOF
-+#define TIME_WITH_SYS_TIME 1
- EOF
-
- fi
-
--for ac_prog in xcurses-config
-+for ac_header in \
-+getopt.h \
-+locale.h \
-+math.h \
-+stdarg.h \
-+sys/ioctl.h \
-+sys/select.h \
-+sys/time.h \
-+termios.h \
-+unistd.h \
-+
- 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:11998: checking for $ac_word" >&5
--echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
--if test "${ac_cv_path_XCURSES_CONFIG+set}" = set; then
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+echo "$as_me:13280: 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
-- case $XCURSES_CONFIG in
-- [\\/]* | ?:[\\/]*)
-- ac_cv_path_XCURSES_CONFIG="$XCURSES_CONFIG" # 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_XCURSES_CONFIG="$ac_dir/$ac_word"
-- echo "$as_me:12015: found $ac_dir/$ac_word" >&5
-- break
--fi
--done
--
-- ;;
--esac
--fi
--XCURSES_CONFIG=$ac_cv_path_XCURSES_CONFIG
--
--if test -n "$XCURSES_CONFIG"; then
-- echo "$as_me:12026: result: $XCURSES_CONFIG" >&5
--echo "${ECHO_T}$XCURSES_CONFIG" >&6
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 13286 "configure"
-+#include "confdefs.h"
-+#include <$ac_header>
-+_ACEOF
-+if { (eval echo "$as_me:13290: \"$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:13296: \$? = $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
-- echo "$as_me:12029: result: no" >&5
--echo "${ECHO_T}no" >&6
-+ ac_cpp_err=yes
- fi
--
-- test -n "$XCURSES_CONFIG" && break
--done
--test -n "$XCURSES_CONFIG" || XCURSES_CONFIG="none"
--
--if test "$XCURSES_CONFIG" != none ; then
--
--CPPFLAGS="$CPPFLAGS `$XCURSES_CONFIG --cflags`"
--LIBS="`$XCURSES_CONFIG --libs` $LIBS"
--
--cf_cv_lib_XCurses=yes
--
-+if test -z "$ac_cpp_err"; then
-+ eval "$as_ac_Header=yes"
- else
--
--LDFLAGS="$LDFLAGS $X_LIBS"
--
--test -n "$verbose" && echo " checking additions to CFLAGS" 1>&6
--
--echo "${as_me:-configure}:12050: testing checking additions to CFLAGS ..." 1>&5
--
--cf_check_cflags="$CFLAGS"
--cf_check_cppflags="$CPPFLAGS"
--
--cf_fix_cppflags=no
--cf_new_cflags=
--cf_new_cppflags=
--cf_new_extra_cppflags=
--
--for cf_add_cflags in $X_CFLAGS
--do
--case $cf_fix_cppflags in
--no)
-- case $cf_add_cflags in #(vi
-- -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-- case $cf_add_cflags in
-- -D*)
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=yes
--
-- if test $cf_fix_cppflags = yes ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- elif test "${cf_tst_cflags}" = "\"'" ; then
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-- continue
-- fi
-- ;;
-- esac
-- case "$CPPFLAGS" in
-- *$cf_add_cflags) #(vi
-- ;;
-- *) #(vi
-- case $cf_add_cflags in #(vi
-- -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
-- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
-- *)
-- cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-- ;;
-- esac
-- ;;
--yes)
-- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
--
-- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
--
-- test "${cf_add_cflags}" != "${cf_tst_cflags}" \
-- && test -z "${cf_tst_cflags}" \
-- && cf_fix_cppflags=no
-- ;;
--esac
--done
--
--if test -n "$cf_new_cflags" ; then
-- test -n "$verbose" && echo " add to \$CFLAGS $cf_new_cflags" 1>&6
--
--echo "${as_me:-configure}:12121: testing add to \$CFLAGS $cf_new_cflags ..." 1>&5
--
-- CFLAGS="$CFLAGS $cf_new_cflags"
-+ echo "$as_me: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ eval "$as_ac_Header=no"
- fi
--
--if test -n "$cf_new_cppflags" ; then
-- test -n "$verbose" && echo " add to \$CPPFLAGS $cf_new_cppflags" 1>&6
--
--echo "${as_me:-configure}:12129: testing add to \$CPPFLAGS $cf_new_cppflags ..." 1>&5
--
-- CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+rm -f conftest.err conftest.$ac_ext
- fi
-+echo "$as_me:13315: 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
-
--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}:12137: testing add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags ..." 1>&5
--
-- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-+done
-
--if test "$cf_check_cflags" != "$CFLAGS" ; then
--cat >conftest.$ac_ext <<_ACEOF
--#line 12144 "configure"
-+for ac_header in unistd.h getopt.h
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+echo "$as_me:13328: 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 13334 "configure"
- #include "confdefs.h"
--#include <stdio.h>
--int
--main ()
--{
--printf("Hello world");
-- ;
-- return 0;
--}
-+#include <$ac_header>
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12156: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:12159: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12162: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-+if { (eval echo "$as_me:13338: \"$ac_cpp conftest.$ac_ext\"") >&5
-+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
-- echo "$as_me:12165: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- :
-+ egrep -v '^ *\+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
-+ echo "$as_me:13344: \$? = $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
--test -n "$verbose" && echo " test-compile failed. Undoing change to \$CFLAGS" 1>&6
--
--echo "${as_me:-configure}:12173: testing test-compile failed. Undoing change to \$CFLAGS ..." 1>&5
--
-- if test "$cf_check_cppflags" != "$CPPFLAGS" ; then
-- test -n "$verbose" && echo " but keeping change to \$CPPFLAGS" 1>&6
--
--echo "${as_me:-configure}:12178: testing but keeping change to \$CPPFLAGS ..." 1>&5
--
-- fi
-- CFLAGS="$cf_check_flags"
-+ cat conftest.$ac_ext >&5
-+ eval "$as_ac_Header=no"
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+rm -f conftest.err conftest.$ac_ext
-+fi
-+echo "$as_me:13363: 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:12186: 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 "$as_me:13373: 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
- else
-- ac_check_lib_save_LIBS=$LIBS
--LIBS="-lX11 $X_PRE_LIBS $LIBS $X_EXTRA_LIBS $LIBS"
-+
-+cf_cv_getopt_header=none
-+for cf_header in stdio.h stdlib.h unistd.h getopt.h
-+do
- cat >conftest.$ac_ext <<_ACEOF
--#line 12194 "configure"
-+#line 13383 "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 ();
-+#include <$cf_header>
- int
- main ()
- {
--XOpenDisplay ();
-+int x = optind; char *y = optarg
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12213: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:13396: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:12216: \$? = $ac_status" >&5
-+ echo "$as_me:13399: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12219: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:13402: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12222: \$? = $ac_status" >&5
-+ echo "$as_me:13405: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_lib_X11_XOpenDisplay=yes
-+ cf_cv_getopt_header=$cf_header
-+ break
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_lib_X11_XOpenDisplay=no
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+done
-+
- fi
--echo "$as_me:12233: 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
-- LIBS="-lX11 $LIBS"
-+echo "$as_me:13417: result: $cf_cv_getopt_header" >&5
-+echo "${ECHO_T}$cf_cv_getopt_header" >&6
-+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
-
--echo "$as_me:12239: checking for XCurses library" >&5
--echo $ECHO_N "checking for XCurses library... $ECHO_C" >&6
--if test "${cf_cv_lib_XCurses+set}" = set; then
-+cat >>confdefs.h <<\EOF
-+#define NEED_GETOPT_H 1
-+EOF
-+
-+fi
-+
-+for ac_func in \
-+getopt \
-+gettimeofday \
-+
-+do
-+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-+echo "$as_me:13440: 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
--
--LIBS="-lXCurses $LIBS"
--cat >conftest.$ac_ext <<_ACEOF
--#line 12247 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 13446 "configure"
- #include "confdefs.h"
--
--#include <xcurses.h>
--char *XCursesProgramName = "test";
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char $ac_func (); below. */
-+#include <assert.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 $ac_func ();
-+char (*f) ();
-
- int
- main ()
- {
--XCursesExit();
-+/* The GNU C library defines this 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)
-+choke me
-+#else
-+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12262: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:13477: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12265: \$? = $ac_status" >&5
-+ echo "$as_me:13480: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12268: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:13483: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12271: \$? = $ac_status" >&5
-+ echo "$as_me:13486: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_lib_XCurses=yes
-+ eval "$as_ac_var=yes"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_lib_XCurses=no
-+eval "$as_ac_var=no"
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--
--fi
--echo "$as_me:12282: result: $cf_cv_lib_XCurses" >&5
--echo "${ECHO_T}$cf_cv_lib_XCurses" >&6
--
--fi
--
--if test $cf_cv_lib_XCurses = yes ; then
-- cat >>confdefs.h <<\EOF
--#define UNIX 1
--EOF
--
-- cat >>confdefs.h <<\EOF
--#define XCURSES 1
--EOF
--
-- echo "$as_me:12296: 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 12302 "configure"
--#include "confdefs.h"
--#include <xcurses.h>
--_ACEOF
--if { (eval echo "$as_me:12306: \"$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:12312: \$? = $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
-- ac_cv_header_xcurses_h=yes
--else
-- echo "$as_me: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- ac_cv_header_xcurses_h=no
--fi
--rm -f conftest.err conftest.$ac_ext
- fi
--echo "$as_me:12331: 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
-- cat >>confdefs.h <<\EOF
--#define HAVE_XCURSES 1
-+echo "$as_me:13496: 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
-
--else
-- { { echo "$as_me:12341: error: Cannot link with XCurses" >&5
--echo "$as_me: error: Cannot link with XCurses" >&2;}
-+if test "x$ac_cv_func_getopt" = xno; then
-+ { { echo "$as_me:13507: error: getopt is required for building programs" >&5
-+echo "$as_me: error: getopt is required for building programs" >&2;}
- { (exit 1); exit 1; }; }
- fi
-
-- ;;
--esac
-+if test "$cf_enable_widec" = yes; then
-
--case $cf_cv_screen in #(vi
--pdcurses) #(vi
-- ;;
--*)
-- # look for curses-related libraries
-+for ac_func in \
-+mblen \
-+mbrlen \
-+mbrtowc \
-+mbsrtowcs \
-+mbstowcs \
-+mbtowc \
-+wcsrtombs \
-+wcstombs \
-
--as_ac_Lib=`echo "ac_cv_lib_panel$cf_cv_libtype''_new_panel" | $as_tr_sh`
--echo "$as_me:12356: 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
--if eval "test \"\${$as_ac_Lib+set}\" = set"; then
-+do
-+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-+echo "$as_me:13526: 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
-- ac_check_lib_save_LIBS=$LIBS
--LIBS="-lpanel$cf_cv_libtype $LIBS"
--cat >conftest.$ac_ext <<_ACEOF
--#line 12364 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 13532 "configure"
- #include "confdefs.h"
--
-+/* System header to define __stub macros and hopefully few prototypes,
-+ which can conflict with char $ac_func (); below. */
-+#include <assert.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 new_panel ();
-+char $ac_func ();
-+char (*f) ();
-+
- int
- main ()
- {
--new_panel ();
-+/* The GNU C library defines this 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)
-+choke me
-+#else
-+f = $ac_func; /* workaround for ICC 12.0.3 */ if (f == 0) return 1;
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12383: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:13563: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12386: \$? = $ac_status" >&5
-+ echo "$as_me:13566: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12389: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:13569: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12392: \$? = $ac_status" >&5
-+ echo "$as_me:13572: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- eval "$as_ac_Lib=yes"
-+ eval "$as_ac_var=yes"
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--eval "$as_ac_Lib=no"
-+eval "$as_ac_var=no"
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:12403: 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:13582: 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_LIBpanel$cf_cv_libtype" | $as_tr_cpp` 1
-+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
- EOF
-
-- LIBS="-lpanel$cf_cv_libtype $LIBS"
-+fi
-+done
-
- fi
-
--as_ac_Lib=`echo "ac_cv_lib_menu$cf_cv_libtype''_menu_driver" | $as_tr_sh`
--echo "$as_me:12415: 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
--if eval "test \"\${$as_ac_Lib+set}\" = set"; then
-+echo "$as_me:13594: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
-+echo $ECHO_N "checking if we must define _XOPEN_SOURCE_EXTENDED... $ECHO_C" >&6
-+if test "${cf_cv_need_xopen_extension+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 12423 "configure"
-+#line 13601 "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 menu_driver ();
-+#include <stdlib.h>
-+#include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--menu_driver ();
-+
-+#if defined(NCURSES_VERSION_PATCH)
-+#if (NCURSES_VERSION_PATCH < 20100501) && (NCURSES_VERSION_PATCH >= 20100403)
-+ make an error
-+#endif
-+#endif
-+ long x = winnstr(stdscr, "", 0);
-+ int x1, y1;
-+ getbegyx(stdscr, y1, x1)
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12442: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:13623: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12445: \$? = $ac_status" >&5
-+ echo "$as_me:13626: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12448: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:13629: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12451: \$? = $ac_status" >&5
-+ echo "$as_me:13632: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- eval "$as_ac_Lib=yes"
-+ cf_cv_need_xopen_extension=no
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--eval "$as_ac_Lib=no"
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
--fi
--echo "$as_me:12462: 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
-- cat >>confdefs.h <<EOF
--#define `echo "HAVE_LIBmenu$cf_cv_libtype" | $as_tr_cpp` 1
--EOF
--
-- LIBS="-lmenu$cf_cv_libtype $LIBS"
--
--fi
--
--as_ac_Lib=`echo "ac_cv_lib_form$cf_cv_libtype''_form_driver" | $as_tr_sh`
--echo "$as_me:12474: 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
--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 12482 "configure"
-+#line 13639 "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 form_driver ();
-+#define _XOPEN_SOURCE_EXTENDED
-+#include <stdlib.h>
-+#include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--form_driver ();
-+
-+#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)
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12501: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:13661: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12504: \$? = $ac_status" >&5
-+ echo "$as_me:13664: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12507: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:13667: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12510: \$? = $ac_status" >&5
-+ echo "$as_me:13670: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- eval "$as_ac_Lib=yes"
-+ cf_cv_need_xopen_extension=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--eval "$as_ac_Lib=no"
-+cf_cv_need_xopen_extension=unknown
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--LIBS=$ac_check_lib_save_LIBS
- fi
--echo "$as_me:12521: 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
-- cat >>confdefs.h <<EOF
--#define `echo "HAVE_LIBform$cf_cv_libtype" | $as_tr_cpp` 1
--EOF
--
-- LIBS="-lform$cf_cv_libtype $LIBS"
--
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
- fi
-+echo "$as_me:13682: result: $cf_cv_need_xopen_extension" >&5
-+echo "${ECHO_T}$cf_cv_need_xopen_extension" >&6
-+test $cf_cv_need_xopen_extension = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
-
-- # look for curses-related headers
--
--for ac_header in \
-- nc_alloc.h \
-- nomacros.h \
-- form.h \
-- menu.h \
-- panel.h \
-- term_entry.h \
--
--do
--as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:12544: 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 "$as_me:13686: 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
- else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 12550 "configure"
--#include "confdefs.h"
--#include <$ac_header>
--_ACEOF
--if { (eval echo "$as_me:12554: \"$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:12560: \$? = $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:12579: 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
-+# If we found <ncurses/curses.h>, look for <ncurses/term.h>, but always look
-+# for <term.h> if we do not find the variant.
-+
-+cf_header_list="term.h ncurses/term.h ncursesw/term.h"
-
-+case ${cf_cv_ncurses_header:-curses.h} in #(vi
-+*/*)
-+ 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
-
--echo "$as_me:12592: checking return type of signal handlers" >&5
--echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6
--if test "${ac_cv_type_signal+set}" = set; then
-- echo $ECHO_N "(cached) $ECHO_C" >&6
--else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 12598 "configure"
-+for cf_header in $cf_header_list
-+do
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 13707 "configure"
- #include "confdefs.h"
--#include <sys/types.h>
--#include <signal.h>
--#ifdef signal
--# undef signal
--#endif
--#ifdef __cplusplus
--extern "C" void (*signal (int, void (*)(int)))(int);
--#else
--void (*signal ()) ();
--#endif
-
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <${cf_header}>
- int
- main ()
- {
--int i;
-+WINDOW *x
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:12620: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:13721: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:12623: \$? = $ac_status" >&5
-+ echo "$as_me:13724: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:12626: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:13727: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12629: \$? = $ac_status" >&5
-+ echo "$as_me:13730: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_type_signal=void
-+ cf_cv_term_header=$cf_header
-+ break
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_type_signal=int
-+cf_cv_term_header=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
--fi
--echo "$as_me:12639: result: $ac_cv_type_signal" >&5
--echo "${ECHO_T}$ac_cv_type_signal" >&6
--
--cat >>confdefs.h <<EOF
--#define RETSIGTYPE $ac_cv_type_signal
--EOF
--
--echo "$as_me:12646: 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 12652 "configure"
--#include "confdefs.h"
--#include <stdlib.h>
--#include <stdarg.h>
--#include <string.h>
--#include <float.h>
--
--_ACEOF
--if { (eval echo "$as_me:12660: \"$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:12666: \$? = $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
-- ac_cv_header_stdc=yes
--else
-- echo "$as_me: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- ac_cv_header_stdc=no
--fi
--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 12688 "configure"
--#include "confdefs.h"
--#include <string.h>
--
--_ACEOF
--if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-- egrep "memchr" >/dev/null 2>&1; then
-- :
--else
-- ac_cv_header_stdc=no
--fi
--rm -rf conftest*
--
--fi
-+done
-
--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 12706 "configure"
-+case $cf_cv_term_header in #(vi
-+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 13749 "configure"
- #include "confdefs.h"
--#include <stdlib.h>
--
--_ACEOF
--if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-- egrep "free" >/dev/null 2>&1; then
-- :
--else
-- ac_cv_header_stdc=no
--fi
--rm -rf conftest*
--
--fi
-
--if test $ac_cv_header_stdc = yes; then
-- # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-- if test "$cross_compiling" = yes; then
-- :
--else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 12727 "configure"
--#include "confdefs.h"
--#include <ctype.h>
--#if ((' ' & 0x0FF) == 0x020)
--# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
--# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#ifdef NCURSES_VERSION
-+#include <${cf_header}>
- #else
--# define ISLOWER(c) (('a' <= (c) && (c) <= 'i') \
-- || ('j' <= (c) && (c) <= 'r') \
-- || ('s' <= (c) && (c) <= 'z'))
--# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-+make an error
- #endif
--
--#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
- int
- main ()
- {
-- int i;
-- for (i = 0; i < 256; i++)
-- if (XOR (islower (i), ISLOWER (i))
-- || toupper (i) != TOUPPER (i))
-- $ac_main_return(2);
-- $ac_main_return (0);
-+WINDOW *x
-+ ;
-+ return 0;
- }
- _ACEOF
--rm -f conftest$ac_exeext
--if { (eval echo "$as_me:12753: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:13767: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:12756: \$? = $ac_status" >&5
-- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:12758: \"$ac_try\"") >&5
-+ echo "$as_me:13770: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:13773: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12761: \$? = $ac_status" >&5
-+ echo "$as_me:13776: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- :
-+ cf_cv_term_header=$cf_header
-+ break
- else
-- echo "$as_me: program exited with status $ac_status" >&5
--echo "$as_me: failed program was:" >&5
-+ echo "$as_me: failed program was:" >&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
--fi
-+cf_cv_term_header=no
- fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ done
-+ ;;
-+esac
-+
- fi
--echo "$as_me:12774: result: $ac_cv_header_stdc" >&5
--echo "${ECHO_T}$ac_cv_header_stdc" >&6
--if test $ac_cv_header_stdc = yes; then
-+echo "$as_me:13791: result: $cf_cv_term_header" >&5
-+echo "${ECHO_T}$cf_cv_term_header" >&6
-+
-+case $cf_cv_term_header in #(vi
-+term.h) #(vi
-
- cat >>confdefs.h <<\EOF
--#define STDC_HEADERS 1
-+#define HAVE_TERM_H 1
- EOF
-
--fi
-+ ;;
-+ncurses/term.h) #(vi
-
--echo "$as_me:12784: 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
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSES_TERM_H 1
-+EOF
-+
-+ ;;
-+ncursesw/term.h)
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSESW_TERM_H 1
-+EOF
-+
-+ ;;
-+esac
-+
-+echo "$as_me:13818: 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
- else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 12790 "configure"
-+
-+# If we found <ncurses/curses.h>, look for <ncurses/unctrl.h>, but always look
-+# for <unctrl.h> if we do not find the variant.
-+
-+cf_header_list="unctrl.h ncurses/unctrl.h ncursesw/unctrl.h"
-+
-+case ${cf_cv_ncurses_header:-curses.h} in #(vi
-+*/*)
-+ 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 13839 "configure"
- #include "confdefs.h"
--#include <sys/types.h>
--#include <sys/time.h>
--#include <time.h>
-
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <${cf_header}>
- int
- main ()
- {
--if ((struct tm *) 0)
--return 0;
-+WINDOW *x
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:12806: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:13853: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:12809: \$? = $ac_status" >&5
-+ echo "$as_me:13856: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:12812: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:13859: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12815: \$? = $ac_status" >&5
-+ echo "$as_me:13862: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_header_time=yes
-+ cf_cv_unctrl_header=$cf_header
-+ break
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_header_time=no
-+cf_cv_unctrl_header=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-+done
-+
- fi
--echo "$as_me:12825: result: $ac_cv_header_time" >&5
--echo "${ECHO_T}$ac_cv_header_time" >&6
--if test $ac_cv_header_time = yes; then
-+echo "$as_me:13875: result: $cf_cv_unctrl_header" >&5
-+echo "${ECHO_T}$cf_cv_unctrl_header" >&6
-+
-+case $cf_cv_unctrl_header in #(vi
-+no)
-+ { echo "$as_me:13880: WARNING: unctrl.h header not found" >&5
-+echo "$as_me: WARNING: unctrl.h header not found" >&2;}
-+ ;;
-+esac
-+
-+case $cf_cv_unctrl_header in #(vi
-+unctrl.h) #(vi
-
- cat >>confdefs.h <<\EOF
--#define TIME_WITH_SYS_TIME 1
-+#define HAVE_UNCTRL_H 1
- EOF
-
--fi
-+ ;;
-+ncurses/unctrl.h) #(vi
-
--for ac_header in \
--getopt.h \
--locale.h \
--math.h \
--stdarg.h \
--sys/ioctl.h \
--sys/select.h \
--sys/time.h \
--termios.h \
--unistd.h \
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSES_UNCTRL_H 1
-+EOF
-+
-+ ;;
-+ncursesw/unctrl.h)
-+
-+cat >>confdefs.h <<\EOF
-+#define HAVE_NCURSESW_UNCTRL_H 1
-+EOF
-+
-+ ;;
-+esac
-+
-+for cf_func in \
-+assume_default_colors \
-+chgat \
-+color_set \
-+filter \
-+getbegx \
-+getcurx \
-+getmaxx \
-+getnstr \
-+getparx \
-+getwin \
-+mvvline \
-+mvwvline \
-+napms \
-+putwin \
-+resize_term \
-+resizeterm \
-+ripoffline \
-+scr_dump \
-+setupterm \
-+slk_color \
-+slk_init \
-+termattrs \
-+tgetent \
-+tigetnum \
-+tigetstr \
-+typeahead \
-+use_default_colors \
-+use_env \
-+use_extended_names \
-+use_screen \
-+use_window \
-+vid_puts \
-+vidputs \
-+vsscanf \
-+vw_printw \
-+wchgat \
-+winsstr \
-+wresize \
-+wsyncdown \
-
- do
--as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
--echo "$as_me:12848: checking for $ac_header" >&5
--echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
--if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+
-+cf_tr_func=`echo "$cf_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+ echo "$as_me:13954: checking for ${cf_func}" >&5
-+echo $ECHO_N "checking for ${cf_func}... $ECHO_C" >&6
-+
-+echo "${as_me:-configure}:13957: testing ${cf_func} ..." 1>&5
-+
-+ if eval "test \"\${cf_cv_func_$cf_func+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 12854 "configure"
-+
-+ eval cf_result='$ac_cv_func_'$cf_func
-+ if test ".$cf_result" != ".no"; then
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 13966 "configure"
- #include "confdefs.h"
--#include <$ac_header>
-+
-+#ifdef HAVE_XCURSES
-+#include <xcurses.h>
-+char * XCursesProgramName = "test";
-+#else
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
-+#include <ncursesw/term.h>
-+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
-+#include <ncurses/term.h>
-+#elif defined(HAVE_TERM_H)
-+#include <term.h>
-+#endif
-+#endif
-+
-+int
-+main ()
-+{
-+
-+#ifndef ${cf_func}
-+long foo = (long)(&${cf_func});
-+fprintf(stderr, "testing linkage of $cf_func:%p\n", foo);
-+if (foo + 1234 > 5678)
-+ ${cf_cv_main_return:-return}(foo);
-+#endif
-+
-+ ;
-+ return 0;
-+}
- _ACEOF
--if { (eval echo "$as_me:12858: \"$ac_cpp conftest.$ac_ext\"") >&5
-- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:13999: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- egrep -v '^ *\+' conftest.er1 >conftest.err
-- rm -f conftest.er1
-- cat conftest.err >&5
-- echo "$as_me:12864: \$? = $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"
-+ echo "$as_me:14002: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:14005: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:14008: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
-- cat conftest.$ac_ext >&5
-- eval "$as_ac_Header=no"
-+cat conftest.$ac_ext >&5
-+cf_result=no
- fi
--rm -f conftest.err conftest.$ac_ext
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+ fi
-+ eval 'cf_cv_func_'$cf_func'=$cf_result'
-+
- fi
--echo "$as_me:12883: 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
-+
-+ # use the computed/retrieved cache-value:
-+ eval 'cf_result=$cf_cv_func_'$cf_func
-+ echo "$as_me:14024: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+ if test $cf_result != no; then
-+ cat >>confdefs.h <<EOF
-+#define HAVE_${cf_tr_func} 1
- EOF
-
--fi
-+ fi
- done
-
--for ac_func in \
--gettimeofday \
--mblen \
--mbrlen \
--mbrtowc \
--mbsrtowcs \
--mbstowcs \
--mbtowc \
--strdup \
--wcsrtombs \
--wcstombs \
--
-+for cf_func in tputs
- do
--as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
--echo "$as_me:12907: checking for $ac_func" >&5
--echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
--if eval "test \"\${$as_ac_var+set}\" = set"; then
-+
-+cf_tr_func=`echo "$cf_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+ echo "$as_me:14039: checking for ${cf_func}" >&5
-+echo $ECHO_N "checking for ${cf_func}... $ECHO_C" >&6
-+
-+echo "${as_me:-configure}:14042: testing ${cf_func} ..." 1>&5
-+
-+ if eval "test \"\${cf_cv_func_$cf_func+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 12913 "configure"
-+
-+ eval cf_result='$ac_cv_func_'$cf_func
-+ if test ".$cf_result" != ".no"; then
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 14051 "configure"
- #include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char $ac_func (); below. */
--#include <assert.h>
--/* Override any gcc2 internal prototype to avoid an error. */
--#ifdef __cplusplus
--extern "C"
-+
-+#ifdef HAVE_XCURSES
-+#include <xcurses.h>
-+char * XCursesProgramName = "test";
-+#else
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
-+#include <ncursesw/term.h>
-+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
-+#include <ncurses/term.h>
-+#elif defined(HAVE_TERM_H)
-+#include <term.h>
-+#endif
- #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 ();
--char (*f) ();
-
- int
- main ()
- {
--/* The GNU C library defines this 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)
--choke me
--#else
--f = $ac_func;
-+
-+#ifndef ${cf_func}
-+long foo = (long)(&${cf_func});
-+fprintf(stderr, "testing linkage of $cf_func:%p\n", foo);
-+if (foo + 1234 > 5678)
-+ ${cf_cv_main_return:-return}(foo);
- #endif
-
- ;
-@@ -12941,1135 +14081,1039 @@
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:12944: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14084: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:12947: \$? = $ac_status" >&5
-+ echo "$as_me:14087: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:12950: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14090: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:12953: \$? = $ac_status" >&5
-+ echo "$as_me:14093: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- eval "$as_ac_var=yes"
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--eval "$as_ac_var=no"
-+cf_result=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+ fi
-+ eval 'cf_cv_func_'$cf_func'=$cf_result'
-+
- fi
--echo "$as_me:12963: 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
-+
-+ # use the computed/retrieved cache-value:
-+ eval 'cf_result=$cf_cv_func_'$cf_func
-+ echo "$as_me:14109: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+ if test $cf_result != no; then
-+ cat >>confdefs.h <<EOF
-+#define HAVE_${cf_tr_func} 1
- EOF
-
--fi
-+ fi
- done
-
--echo "$as_me:12973: checking if we must define _XOPEN_SOURCE_EXTENDED" >&5
--echo $ECHO_N "checking if we must define _XOPEN_SOURCE_EXTENDED... $ECHO_C" >&6
--if test "${cf_cv_need_xopen_extension+set}" = set; then
-+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
-+ then
-+ cf_return="/* nothing */"
-+ else
-+ cf_return="return value"
-+ fi
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 14133 "configure"
-+#include "confdefs.h"
-+
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <$cf_cv_term_header>
-+
-+static $cf_ret outc($cf_arg value) { $cf_return; }
-+
-+int
-+main ()
-+{
-+
-+ tputs("hello", 0, outc);
-+ ${cf_cv_main_return:-return}(0);
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:14153: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:14156: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:14159: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:14162: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+
-+ test -n "$verbose" && echo " prototype $cf_ret func($cf_arg value)" 1>&6
-+
-+echo "${as_me:-configure}:14167: testing prototype $cf_ret func($cf_arg value) ..." 1>&5
-+
-+ cat >>confdefs.h <<EOF
-+#define TPUTS_ARG $cf_arg
-+#define TPUTS_PROTO(func,value) $cf_ret func(TPUTS_ARG value)
-+#define TPUTS_RETURN(value) $cf_return
-+EOF
-+ cf_done=yes
-+ break
-+
-+else
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ done
-+ test $cf_done = yes && break
-+ done
-+fi
-+
-+echo "$as_me:14187: 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 12980 "configure"
-+#line 14194 "configure"
- #include "confdefs.h"
-
--#include <stdlib.h>
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
-
--#if defined(NCURSES_VERSION_PATCH)
--#if (NCURSES_VERSION_PATCH < 20100501) && (NCURSES_VERSION_PATCH >= 20100403)
-- make an error
--#endif
--#endif
-- long x = winnstr(stdscr, "", 0);
-- int x1, y1;
-- getbegyx(stdscr, y1, x1)
-+int x = NCURSES_EXT_FUNCS
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13002: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:14209: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13005: \$? = $ac_status" >&5
-+ echo "$as_me:14212: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13008: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:14215: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13011: \$? = $ac_status" >&5
-+ echo "$as_me:14218: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_need_xopen_extension=no
-+ cf_cv_ncurses_ext_funcs=defined
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+
- cat >conftest.$ac_ext <<_ACEOF
--#line 13018 "configure"
-+#line 14226 "configure"
- #include "confdefs.h"
-
--#define _XOPEN_SOURCE_EXTENDED
--#include <stdlib.h>
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
-
--#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)
-+ (void) assume_default_colors (0, 0);
-+ (void) curses_version ();
-+ (void) define_key (0, 0);
-+ (void) is_term_resized (0, 0);
-+ (void) key_defined (0);
-+ (void) keybound (0, 0);
-+ (void) keyok (0, 0);
-+ (void) resize_term (0, 0);
-+ (void) resizeterm (0, 0);
-+ (void) use_default_colors ();
-+ (void) use_extended_names (0);
-+ (void) wresize (0, 0, 0);
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13040: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14251: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13043: \$? = $ac_status" >&5
-+ echo "$as_me:14254: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13046: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14257: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13049: \$? = $ac_status" >&5
-+ echo "$as_me:14260: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_need_xopen_extension=yes
-+ cf_cv_ncurses_ext_funcs=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_need_xopen_extension=unknown
-+cf_cv_ncurses_ext_funcs=no
- fi
- 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_ext
-+
- fi
--echo "$as_me:13061: result: $cf_cv_need_xopen_extension" >&5
--echo "${ECHO_T}$cf_cv_need_xopen_extension" >&6
--test $cf_cv_need_xopen_extension = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED"
-+echo "$as_me:14274: 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
-+#define NCURSES_EXT_FUNCS 1
-+EOF
-
--echo "$as_me:13065: 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
--else
-+if test "$cf_enable_widec" = yes
-+then
-+ # workaround for systems with ncurses before 20111029, due to change of
-+ # feature test macro from _XPG5 to _XOPEN_SOURCE
-+ if test -n "$cf_cv_ncurses_version" && test "x$cf_cv_ncurses_version" != xno
-+ then
-+ cf_define_xpg5=no
-+ echo "$as_me:14288: 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
-
--# If we found <ncurses/curses.h>, look for <ncurses/term.h>, but always look
--# for <term.h> if we do not find the variant.
--for cf_header in \
-- `echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%/.*%/%'`term.h \
-- term.h
--do
-- cat >conftest.$ac_ext <<_ACEOF
--#line 13078 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 14292 "configure"
- #include "confdefs.h"
-
- #include <${cf_cv_ncurses_header:-curses.h}>
--#include <${cf_header}>
- int
- main ()
- {
--WINDOW *x
-+int x = _XPG5
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13092: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:14305: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13095: \$? = $ac_status" >&5
-+ echo "$as_me:14308: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13098: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14311: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13101: \$? = $ac_status" >&5
-+ echo "$as_me:14314: \$? = $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
--cf_cv_term_header=no
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--done
--
--case $cf_cv_term_header in #(vi
--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 13120 "configure"
-+cf_save_cppflags="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XPG5"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 14323 "configure"
- #include "confdefs.h"
-
- #include <${cf_cv_ncurses_header:-curses.h}>
--#ifdef NCURSES_VERSION
--#include <${cf_header}>
--#else
--make an error
--#endif
- int
- main ()
- {
--WINDOW *x
-+int x = _XPG5
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13138: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:14336: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13141: \$? = $ac_status" >&5
-+ echo "$as_me:14339: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13144: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14342: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13147: \$? = $ac_status" >&5
-+ echo "$as_me:14345: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_term_header=$cf_header
-- break
-+ cf_define_xpg5=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_term_header=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-- done
-- ;;
--esac
--
-+ CPPFLAGS="$cf_save_cppflags"
- fi
--echo "$as_me:13162: result: $cf_cv_term_header" >&5
--echo "${ECHO_T}$cf_cv_term_header" >&6
--
--case $cf_cv_term_header in #(vi
--term.h) #(vi
-- cat >>confdefs.h <<\EOF
--#define HAVE_TERM_H 1
--EOF
--
-- ;;
--ncurses/term.h) #(vi
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSES_TERM_H 1
--EOF
--
-- ;;
--ncursesw/term.h)
-- cat >>confdefs.h <<\EOF
--#define HAVE_NCURSESW_TERM_H 1
--EOF
--
-- ;;
--esac
--
--for cf_func in \
--chgat \
--color_set \
--filter \
--getbegx \
--getcurx \
--getmaxx \
--getnstr \
--getparx \
--getwin \
--mvvline \
--mvwvline \
--napms \
--putwin \
--resize_term \
--resizeterm \
--ripoffline \
--scr_dump \
--setupterm \
--slk_color \
--slk_init \
--termattrs \
--tgetent \
--tigetnum \
--tigetstr \
--typeahead \
--use_default_colors \
--vw_printw \
--vsscanf \
--wchgat \
--winsstr \
--wresize \
--wsyncdown \
--
--do
--
--cf_tr_func=`echo "$cf_func" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
--
-- echo "$as_me:13224: checking for ${cf_func}" >&5
--echo $ECHO_N "checking for ${cf_func}... $ECHO_C" >&6
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ echo "$as_me:14356: result: $cf_define_xpg5" >&5
-+echo "${ECHO_T}$cf_define_xpg5" >&6
-
--echo "${as_me:-configure}:13227: testing ${cf_func} ..." 1>&5
-+ if test "$cf_define_xpg5" = yes
-+ then
-+ CPPFLAGS="$CPPFLAGS -D_XPG5"
-+ fi
-+ fi
-
-- if eval "test \"\${cf_cv_func_$cf_func+set}\" = set"; then
-+ echo "$as_me:14365: 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
-
-- eval cf_result='$ac_cv_func_'$cf_func
-- if test ".$cf_result" != ".no"; then
-- cat >conftest.$ac_ext <<_ACEOF
--#line 13236 "configure"
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 14372 "configure"
- #include "confdefs.h"
-
--#ifdef HAVE_XCURSES
--#include <xcurses.h>
--char * XCursesProgramName = "test";
--#else
- #include <${cf_cv_ncurses_header:-curses.h}>
--#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
--#include <ncursesw/term.h>
--#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
--#include <ncurses/term.h>
--#elif defined(HAVE_TERM_H)
--#include <term.h>
--#endif
--#endif
--
- int
- main ()
- {
-
--#ifndef ${cf_func}
--long foo = (long)(&${cf_func});
--${cf_cv_main_return:-return}(foo == 0);
--#endif
-+ static wchar_t src_wchar[2];
-+ static cchar_t dst_cchar;
-+ setcchar(&dst_cchar, src_wchar, A_NORMAL, 0, (void *) 0);
-
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13267: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14389: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13270: \$? = $ac_status" >&5
-+ echo "$as_me:14392: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13273: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14395: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13276: \$? = $ac_status" >&5
-+ echo "$as_me:14398: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_result=yes
-+ cf_cv_widechar_funcs=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_result=no
-+cf_cv_widechar_funcs=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- fi
-- eval 'cf_cv_func_'$cf_func'=$cf_result'
-
- fi
-+echo "$as_me:14409: result: $cf_cv_widechar_funcs" >&5
-+echo "${ECHO_T}$cf_cv_widechar_funcs" >&6
-+ if test "$cf_cv_widechar_funcs" != no ; then
-
-- # use the computed/retrieved cache-value:
-- eval 'cf_result=$cf_cv_func_'$cf_func
-- echo "$as_me:13292: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
-- if test $cf_result != no; then
-- cat >>confdefs.h <<EOF
--#define HAVE_${cf_tr_func} 1
-+cat >>confdefs.h <<\EOF
-+#define USE_WIDEC_SUPPORT 1
-+EOF
-+
-+ else
-+ cat >>confdefs.h <<\EOF
-+#define USE_WIDEC_SUPPORT 0
- EOF
-
- fi
--done
-+else
-+ cat >>confdefs.h <<\EOF
-+#define USE_WIDEC_SUPPORT 0
-+EOF
-
--echo "$as_me:13302: 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
-+fi
-+
-+echo "$as_me:14430: 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 13309 "configure"
-+#line 14437 "configure"
- #include "confdefs.h"
-
--#include <${cf_cv_ncurses_header:-curses.h}>
-+#include <sys/types.h>
-+#ifdef HAVE_SYS_TIME_H
-+#include <sys/time.h>
-+#endif
-+#ifdef HAVE_SYS_SELECT_H
-+#include <sys/select.h>
-+#endif
-+
- int
- main ()
- {
-
--int x = NCURSES_EXT_FUNCS
--
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13324: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:14457: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13327: \$? = $ac_status" >&5
-+ echo "$as_me:14460: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13330: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14463: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13333: \$? = $ac_status" >&5
-+ echo "$as_me:14466: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ncurses_ext_funcs=defined
-+ cf_cv_sys_time_select=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+cf_cv_sys_time_select=no
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+
-+echo "$as_me:14478: 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
-+#define HAVE_SYS_TIME_SELECT 1
-+EOF
-+
-+echo "$as_me:14485: 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
-+else
-+
-+if test "$cross_compiling" = yes; then
-+ cf_cv_func_curses_version=unknown
-+else
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 14495 "configure"
-+#include "confdefs.h"
-+
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+int main()
-+{
-+ char temp[1024];
-+ sprintf(temp, "%s\n", curses_version());
-+ ${cf_cv_main_return:-return}(0);
-+}
-+
-+_ACEOF
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:14508: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:14511: \$? = $ac_status" >&5
-+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+ { (eval echo "$as_me:14513: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:14516: \$? = $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
-+cf_cv_func_curses_version=no
-+
-+fi
-+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-+fi
-+rm -f core
-+fi
-+echo "$as_me:14531: 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:14538: 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
-+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 13341 "configure"
-+#line 14548 "configure"
- #include "confdefs.h"
-
- #include <${cf_cv_ncurses_header:-curses.h}>
-+
- int
- main ()
- {
-
-- (void) assume_default_colors (0, 0);
-- (void) curses_version ();
-- (void) define_key (0, 0);
-- (void) is_term_resized (0, 0);
-- (void) key_defined (0);
-- (void) keybound (0, 0);
-- (void) keyok (0, 0);
-- (void) resize_term (0, 0);
-- (void) resizeterm (0, 0);
-- (void) use_default_colors ();
-- (void) use_extended_names (0);
-- (void) wresize (0, 0, 0);
-+$name['k'] = ACS_PLUS
-+
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13366: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14564: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13369: \$? = $ac_status" >&5
-+ echo "$as_me:14567: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13372: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14570: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13375: \$? = $ac_status" >&5
-+ echo "$as_me:14573: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_ncurses_ext_funcs=yes
-+ cf_cv_curses_acs_map=$name; break
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_ncurses_ext_funcs=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+done
-
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:14584: result: $cf_cv_curses_acs_map" >&5
-+echo "${ECHO_T}$cf_cv_curses_acs_map" >&6
-
--fi
--echo "$as_me:13389: 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
--#define NCURSES_EXT_FUNCS 1
-+test "$cf_cv_curses_acs_map" != unknown &&
-+cat >>confdefs.h <<EOF
-+#define CURSES_ACS_ARRAY $cf_cv_curses_acs_map
- EOF
-
--echo "$as_me:13395: 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
-+if test "$cf_enable_widec" = yes; then
-+
-+echo "$as_me:14594: 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
- else
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 13402 "configure"
-+ 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 14604 "configure"
- #include "confdefs.h"
-
-+#ifndef _XOPEN_SOURCE_EXTENDED
-+#define _XOPEN_SOURCE_EXTENDED
-+#endif
- #include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--
-- static wchar_t src_wchar[2];
-- static cchar_t dst_cchar;
-- setcchar(&dst_cchar, src_wchar, A_NORMAL, 0, (void *) 0);
--
-+void *foo = &($name['k'])
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13419: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:14620: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13422: \$? = $ac_status" >&5
-+ echo "$as_me:14623: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13425: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14626: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13428: \$? = $ac_status" >&5
-+ echo "$as_me:14629: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_widechar_funcs=yes
-+ cf_cv_curses_wacs_map=$name
-+ break
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_widechar_funcs=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--
-+ done
- fi
--echo "$as_me:13439: result: $cf_cv_widechar_funcs" >&5
--echo "${ECHO_T}$cf_cv_widechar_funcs" >&6
--if test "$cf_cv_widechar_funcs" != no ; then
-- cat >>confdefs.h <<\EOF
--#define USE_WIDEC_SUPPORT 1
--EOF
-+echo "$as_me:14640: result: $cf_cv_curses_wacs_map" >&5
-+echo "${ECHO_T}$cf_cv_curses_wacs_map" >&6
-
--else
-- cat >>confdefs.h <<\EOF
--#define USE_WIDEC_SUPPORT 0
-+test "$cf_cv_curses_wacs_map" != unknown &&
-+cat >>confdefs.h <<EOF
-+#define CURSES_WACS_ARRAY $cf_cv_curses_wacs_map
- EOF
-
--fi
-+echo "$as_me:14648: 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
-+else
-
--# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-+cf_cv_curses_wacs_symbols=no
-+if test "$cf_cv_curses_wacs_map" != unknown
-+then
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 14658 "configure"
-+#include "confdefs.h"
-
--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:13459: 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
-+#ifndef _XOPEN_SOURCE_EXTENDED
-+#define _XOPEN_SOURCE_EXTENDED
-+#endif
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+int
-+main ()
-+{
-+cchar_t *foo = WACS_PLUS;
-+ $cf_cv_curses_wacs_map['k'] = *WACS_PLUS
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:14675: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:14678: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:14681: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:14684: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ cf_cv_curses_wacs_symbols=yes
- else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 13465 "configure"
-+ echo "$as_me: failed program was:" >&5
-+cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+else
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 14694 "configure"
- #include "confdefs.h"
--$ac_includes_default
--#include <$ac_header>
-+
-+#ifndef _XOPEN_SOURCE_EXTENDED
-+#define _XOPEN_SOURCE_EXTENDED
-+#endif
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+int
-+main ()
-+{
-+cchar_t *foo = WACS_PLUS
-+ ;
-+ return 0;
-+}
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13471: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:14710: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:13474: \$? = $ac_status" >&5
-+ echo "$as_me:14713: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13477: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:14716: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13480: \$? = $ac_status" >&5
-+ echo "$as_me:14719: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- eval "$as_ac_Header=yes"
-+ cf_cv_curses_wacs_symbols=yes
- else
- echo "$as_me: failed program was:" >&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_exeext conftest.$ac_ext
- fi
--echo "$as_me:13490: 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
-+
-+fi
-+echo "$as_me:14730: result: $cf_cv_curses_wacs_symbols" >&5
-+echo "${ECHO_T}$cf_cv_curses_wacs_symbols" >&6
-+
-+test "$cf_cv_curses_wacs_symbols" != no &&
-+cat >>confdefs.h <<\EOF
-+#define CURSES_WACS_SYMBOLS 1
- EOF
-
- fi
--done
-
--echo "$as_me:13500: 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 13506 "configure"
-+echo "$as_me:14740: 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 14743 "configure"
- #include "confdefs.h"
--$ac_includes_default
-+
-+#ifndef _XOPEN_SOURCE_EXTENDED
-+#define _XOPEN_SOURCE_EXTENDED
-+#endif
-+#include <${cf_cv_ncurses_header:-curses.h}>
- int
- main ()
- {
--if ((pid_t *) 0)
-- return 0;
--if (sizeof (pid_t))
-- return 0;
-+
-+attr_t foo
-+
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13521: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:14761: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13524: \$? = $ac_status" >&5
-+ echo "$as_me:14764: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13527: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14767: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13530: \$? = $ac_status" >&5
-+ echo "$as_me:14770: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_type_pid_t=yes
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--ac_cv_type_pid_t=no
-+cf_result=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
--fi
--echo "$as_me:13540: 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
-- :
--else
-+echo "$as_me:14779: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+if test $cf_result = yes ; then
-+
-+cf_result=`echo "have_type_attr_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-
- cat >>confdefs.h <<EOF
--#define pid_t int
-+#define $cf_result 1
- EOF
-
--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:13555: 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 13561 "configure"
--#include "confdefs.h"
--#include <$ac_header>
--_ACEOF
--if { (eval echo "$as_me:13565: \"$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:13571: \$? = $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:13590: 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
-+
-+cat >>confdefs.h <<EOF
-+#define attr_t long
- EOF
-
- fi
--done
-
--for ac_func in fork vfork
--do
--as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
--echo "$as_me:13603: checking for $ac_func" >&5
--echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
--if eval "test \"\${$as_ac_var+set}\" = set"; then
-+if test "$cf_enable_widec" = yes; then
-+
-+# This is needed on Tru64 5.0 to declare mbstate_t
-+echo "$as_me:14800: 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 13609 "configure"
-+
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 14807 "configure"
- #include "confdefs.h"
--/* System header to define __stub macros and hopefully few prototypes,
-- which can conflict with char $ac_func (); below. */
--#include <assert.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 $ac_func ();
--char (*f) ();
-
-+#include <stdlib.h>
-+#include <stdarg.h>
-+#include <stdio.h>
-+#ifdef HAVE_LIBUTF8_H
-+#include <libutf8.h>
-+#endif
- int
- main ()
- {
--/* The GNU C library defines this 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)
--choke me
--#else
--f = $ac_func;
--#endif
--
-+mbstate_t state
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:13640: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:14825: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13643: \$? = $ac_status" >&5
-+ echo "$as_me:14828: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:13646: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:14831: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13649: \$? = $ac_status" >&5
-+ echo "$as_me:14834: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- eval "$as_ac_var=yes"
-+ cf_cv_mbstate_t=no
- 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:13659: 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
--
--ac_cv_func_fork_works=$ac_cv_func_fork
--if test "x$ac_cv_func_fork" = xyes; then
-- echo "$as_me:13671: 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
--else
-- if test "$cross_compiling" = yes; then
-- ac_cv_func_fork_works=cross
--else
-- cat >conftest.$ac_ext <<_ACEOF
--/* By Rüdiger Kuhlmann. */
-- #include <sys/types.h>
-- #if HAVE_UNISTD_H
-- # include <unistd.h>
-- #endif
-- /* Some systems only have a dummy stub for fork() */
-- int main ()
-- {
-- if (fork() < 0)
-- $ac_main_return (1);
-- $ac_main_return (0);
-- }
--_ACEOF
--rm -f conftest$ac_exeext
--if { (eval echo "$as_me:13694: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:13697: \$? = $ac_status" >&5
-- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:13699: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:13702: \$? = $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
--ac_cv_func_fork_works=no
--fi
--rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
--fi
--fi
--echo "$as_me:13714: result: $ac_cv_func_fork_works" >&5
--echo "${ECHO_T}$ac_cv_func_fork_works" >&6
--
--fi
--if test "x$ac_cv_func_fork_works" = xcross; then
-- case $host in
-- *-*-amigaos* | *-*-msdosdjgpp*)
-- # Override, as these systems have only a dummy fork() stub
-- ac_cv_func_fork_works=no
-- ;;
-- *)
-- ac_cv_func_fork_works=yes
-- ;;
-- esac
-- { echo "$as_me:13728: 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:13733: 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
--else
-- if test "$cross_compiling" = yes; then
-- ac_cv_func_vfork_works=cross
--else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 13742 "configure"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 14841 "configure"
- #include "confdefs.h"
--/* Thanks to Paul Eggert for this test. */
-+
-+#include <stdlib.h>
-+#include <stdarg.h>
- #include <stdio.h>
--#include <sys/types.h>
--#include <sys/stat.h>
--#if HAVE_UNISTD_H
--# include <unistd.h>
--#endif
--#if HAVE_VFORK_H
--# include <vfork.h>
--#endif
--/* On some sparc systems, changes by the child to local and incoming
-- argument registers are propagated back to the parent. The compiler
-- is told about this with #include <vfork.h>, but some compilers
-- (e.g. gcc -O) don't grok <vfork.h>. Test for this by using a
-- static variable whose address is put into a register that is
-- clobbered by the vfork. */
--static
--#ifdef __cplusplus
--sparc_address_test (int arg)
--# else
--sparc_address_test (arg) int arg;
-+#include <wchar.h>
-+#ifdef HAVE_LIBUTF8_H
-+#include <libutf8.h>
- #endif
--{
-- static pid_t child;
-- if (!child) {
-- child = vfork ();
-- if (child < 0) {
-- perror ("vfork");
-- _exit(2);
-- }
-- if (!child) {
-- arg = getpid();
-- write(-1, "", 0);
-- _exit (arg);
-- }
-- }
--}
--
- int
- main ()
- {
-- pid_t parent = getpid ();
-- pid_t child;
--
-- sparc_address_test ();
--
-- child = vfork ();
--
-- if (child == 0) {
-- /* Here is another test for sparc vfork register problems. This
-- test uses lots of local variables, at least as many local
-- variables as main has allocated so far including compiler
-- temporaries. 4 locals are enough for gcc 1.40.3 on a Solaris
-- 4.1.3 sparc, but we use 8 to be safe. A buggy compiler should
-- reuse the register of parent for one of the local variables,
-- since it will think that parent can't possibly be used any more
-- in this routine. Assigning to the local variable will thus
-- munge parent in the parent process. */
-- pid_t
-- p = getpid(), p1 = getpid(), p2 = getpid(), p3 = getpid(),
-- p4 = getpid(), p5 = getpid(), p6 = getpid(), p7 = getpid();
-- /* Convince the compiler that p..p7 are live; otherwise, it might
-- use the same hardware register for all 8 local variables. */
-- if (p != p1 || p != p2 || p != p3 || p != p4
-- || p != p5 || p != p6 || p != p7)
-- _exit(1);
--
-- /* On some systems (e.g. IRIX 3.3), vfork doesn't separate parent
-- from child file descriptors. If the child closes a descriptor
-- before it execs or exits, this munges the parent's descriptor
-- as well. Test for this by closing stdout in the child. */
-- _exit(close(fileno(stdout)) != 0);
-- } else {
-- int status;
-- struct stat st;
--
-- while (wait(&status) != child)
-- ;
-- $ac_main_return(
-- /* Was there some problem with vforking? */
-- child < 0
--
-- /* Did the child fail? (This shouldn't happen.) */
-- || status
--
-- /* Did the vfork/compiler bug occur? */
-- || parent != getpid()
--
-- /* Did the file descriptor bug occur? */
-- || fstat(fileno(stdout), &st) != 0
-- );
-- }
-+mbstate_t value
-+ ;
-+ return 0;
- }
- _ACEOF
--rm -f conftest$ac_exeext
--if { (eval echo "$as_me:13839: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:14860: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13842: \$? = $ac_status" >&5
-- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:13844: \"$ac_try\"") >&5
-+ echo "$as_me:14863: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:14866: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13847: \$? = $ac_status" >&5
-+ echo "$as_me:14869: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- ac_cv_func_vfork_works=yes
-+ cf_cv_mbstate_t=yes
- else
-- echo "$as_me: program exited with status $ac_status" >&5
--echo "$as_me: failed program was:" >&5
-+ echo "$as_me: failed program was:" >&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
-+cf_cv_mbstate_t=unknown
- fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:13859: 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:13865: 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;}
-+rm -f conftest.$ac_objext conftest.$ac_ext
- fi
-+echo "$as_me:14881: result: $cf_cv_mbstate_t" >&5
-+echo "${ECHO_T}$cf_cv_mbstate_t" >&6
-
--if test "x$ac_cv_func_vfork_works" = xyes; then
--
--cat >>confdefs.h <<\EOF
--#define HAVE_WORKING_VFORK 1
--EOF
--
--else
-+if test "$cf_cv_mbstate_t" = yes ; then
-
- cat >>confdefs.h <<\EOF
--#define vfork fork
-+#define NEED_WCHAR_H 1
- EOF
-
-+ NEED_WCHAR_H=1
- fi
--if test "x$ac_cv_func_fork_works" = xyes; then
-
--cat >>confdefs.h <<\EOF
--#define HAVE_WORKING_FORK 1
--EOF
-+# if we do not find mbstate_t in either place, use substitution to provide a fallback.
-+if test "$cf_cv_mbstate_t" = unknown ; then
-+ NCURSES_MBSTATE_T=1
-+fi
-
-+# if we find mbstate_t in either place, use substitution to provide a fallback.
-+if test "$cf_cv_mbstate_t" != unknown ; then
-+ NCURSES_OK_MBSTATE_T=1
- fi
-
--echo "$as_me:13890: 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
-+# This is needed on Tru64 5.0 to declare wchar_t
-+echo "$as_me:14904: 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 14911 "configure"
-+#include "confdefs.h"
-+
-+#include <stdlib.h>
-+#include <stdarg.h>
-+#include <stdio.h>
-+#ifdef HAVE_LIBUTF8_H
-+#include <libutf8.h>
-+#endif
-+int
-+main ()
-+{
-+wchar_t state
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:14929: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:14932: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:14935: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:14938: \$? = $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 13897 "configure"
-+#line 14945 "configure"
- #include "confdefs.h"
-
--#include <sys/types.h>
--#ifdef HAVE_SYS_TIME_H
--#include <sys/time.h>
--#endif
--#ifdef HAVE_SYS_SELECT_H
--#include <sys/select.h>
-+#include <stdlib.h>
-+#include <stdarg.h>
-+#include <stdio.h>
-+#include <wchar.h>
-+#ifdef HAVE_LIBUTF8_H
-+#include <libutf8.h>
- #endif
--
- int
- main ()
- {
--
-+wchar_t value
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:13917: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:14964: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13920: \$? = $ac_status" >&5
-+ echo "$as_me:14967: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:13923: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:14970: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13926: \$? = $ac_status" >&5
-+ echo "$as_me:14973: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_sys_time_select=yes
-+ cf_cv_wchar_t=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_sys_time_select=no
-+cf_cv_wchar_t=unknown
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
--
- fi
-+echo "$as_me:14985: result: $cf_cv_wchar_t" >&5
-+echo "${ECHO_T}$cf_cv_wchar_t" >&6
-
--echo "$as_me:13938: 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
--#define HAVE_SYS_TIME_SELECT 1
-+if test "$cf_cv_wchar_t" = yes ; then
-+
-+cat >>confdefs.h <<\EOF
-+#define NEED_WCHAR_H 1
- EOF
-
--echo "$as_me:13944: 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
-+ NEED_WCHAR_H=1
-+fi
-+
-+# if we do not find wchar_t in either place, use substitution to provide a fallback.
-+if test "$cf_cv_wchar_t" = unknown ; then
-+ NCURSES_WCHAR_T=1
-+fi
-+
-+# if we find wchar_t in either place, use substitution to provide a fallback.
-+if test "$cf_cv_wchar_t" != unknown ; then
-+ NCURSES_OK_WCHAR_T=1
-+fi
-+
-+# This is needed on Tru64 5.0 to declare wint_t
-+echo "$as_me:15008: 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
-
--if test "$cross_compiling" = yes; then
-- cf_cv_func_curses_version=unknown
--else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 13954 "configure"
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 15015 "configure"
- #include "confdefs.h"
-
--#include <${cf_cv_ncurses_header:-curses.h}>
--int main()
-+#include <stdlib.h>
-+#include <stdarg.h>
-+#include <stdio.h>
-+#ifdef HAVE_LIBUTF8_H
-+#include <libutf8.h>
-+#endif
-+int
-+main ()
- {
-- char temp[1024];
-- sprintf(temp, "%s\n", curses_version());
-- ${cf_cv_main_return:-return}(0);
-+wint_t state
-+ ;
-+ return 0;
- }
--
- _ACEOF
--rm -f conftest$ac_exeext
--if { (eval echo "$as_me:13967: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:15033: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:13970: \$? = $ac_status" >&5
-- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:13972: \"$ac_try\"") >&5
-+ echo "$as_me:15036: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:15039: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:13975: \$? = $ac_status" >&5
-+ echo "$as_me:15042: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_func_curses_version=yes
--
-+ cf_cv_wint_t=no
- else
-- echo "$as_me: program exited with status $ac_status" >&5
--echo "$as_me: failed program was:" >&5
-+ echo "$as_me: failed program was:" >&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
--fi
--rm -f core
--fi
--echo "$as_me:13990: 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:13996: 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.
--if test "${with_ncurses_wrap_prefix+set}" = set; then
-- withval="$with_ncurses_wrap_prefix"
-- NCURSES_WRAP_PREFIX=$withval
--else
-- NCURSES_WRAP_PREFIX=_nc_
--fi;
--echo "$as_me:14006: result: $NCURSES_WRAP_PREFIX" >&5
--echo "${ECHO_T}$NCURSES_WRAP_PREFIX" >&6
--
--echo "$as_me:14009: 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
--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 14019 "configure"
-+#line 15049 "configure"
- #include "confdefs.h"
-
--#include <${cf_cv_ncurses_header:-curses.h}>
--
-+#include <stdlib.h>
-+#include <stdarg.h>
-+#include <stdio.h>
-+#include <wchar.h>
-+#ifdef HAVE_LIBUTF8_H
-+#include <libutf8.h>
-+#endif
- int
- main ()
- {
--
--$name['k'] = ACS_PLUS
--
-+wint_t value
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14035: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:15068: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14038: \$? = $ac_status" >&5
-+ echo "$as_me:15071: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14041: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:15074: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14044: \$? = $ac_status" >&5
-+ echo "$as_me:15077: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_curses_acs_map=$name; break
-+ cf_cv_wint_t=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+cf_cv_wint_t=unknown
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
--done
--
-+rm -f conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:14055: result: $cf_cv_curses_acs_map" >&5
--echo "${ECHO_T}$cf_cv_curses_acs_map" >&6
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+fi
-+echo "$as_me:15089: result: $cf_cv_wint_t" >&5
-+echo "${ECHO_T}$cf_cv_wint_t" >&6
-
--test "$cf_cv_curses_acs_map" != unknown && cat >>confdefs.h <<EOF
--#define CURSES_ACS_ARRAY $cf_cv_curses_acs_map
-+if test "$cf_cv_wint_t" = yes ; then
-+
-+cat >>confdefs.h <<\EOF
-+#define NEED_WCHAR_H 1
- EOF
-
--echo "$as_me:14062: 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
--else
-+ NEED_WCHAR_H=1
-+fi
-
-- 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 14072 "configure"
-+# if we do not find wint_t in either place, use substitution to provide a fallback.
-+if test "$cf_cv_wint_t" = unknown ; then
-+ NCURSES_WINT_T=1
-+fi
-+
-+# if we find wint_t in either place, use substitution to provide a fallback.
-+if test "$cf_cv_wint_t" != unknown ; then
-+ NCURSES_OK_WINT_T=1
-+fi
-+
-+ if test "$NCURSES_OK_MBSTATE_T" = 0 ; then
-+
-+echo "$as_me:15113: 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 15116 "configure"
- #include "confdefs.h"
-
- #ifndef _XOPEN_SOURCE_EXTENDED
-@@ -14079,50 +15123,58 @@
- int
- main ()
- {
--void *foo = &($name['k'])
-+
-+mbstate_t foo
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14088: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:15134: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14091: \$? = $ac_status" >&5
-+ echo "$as_me:15137: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14094: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:15140: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14097: \$? = $ac_status" >&5
-+ echo "$as_me:15143: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_curses_wacs_map=$name
-- break
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+cf_result=no
- fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-- done
--fi
--echo "$as_me:14108: result: $cf_cv_curses_wacs_map" >&5
--echo "${ECHO_T}$cf_cv_curses_wacs_map" >&6
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:15152: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+if test $cf_result = yes ; then
-
--test "$cf_cv_curses_wacs_map" != unknown && cat >>confdefs.h <<EOF
--#define CURSES_WACS_ARRAY $cf_cv_curses_wacs_map
-+cf_result=`echo "have_type_mbstate_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+cat >>confdefs.h <<EOF
-+#define $cf_result 1
- EOF
-
--echo "$as_me:14115: 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
- else
-
--cf_cv_curses_wacs_symbols=no
--if test "$cf_cv_curses_wacs_map" != unknown
--then
-- cat >conftest.$ac_ext <<_ACEOF
--#line 14125 "configure"
-+cat >>confdefs.h <<EOF
-+#define mbstate_t long
-+EOF
-+
-+fi
-+
-+ fi
-+
-+ if test "$NCURSES_OK_WCHAR_T" = 0 ; then
-+
-+echo "$as_me:15174: 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 15177 "configure"
- #include "confdefs.h"
-
- #ifndef _XOPEN_SOURCE_EXTENDED
-@@ -14132,33 +15184,58 @@
- int
- main ()
- {
--cchar_t *foo = WACS_PLUS;
-- $cf_cv_curses_wacs_map['k'] = *WACS_PLUS
-+
-+wchar_t foo
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14142: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:15195: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14145: \$? = $ac_status" >&5
-+ echo "$as_me:15198: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14148: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:15201: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14151: \$? = $ac_status" >&5
-+ echo "$as_me:15204: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_curses_wacs_symbols=yes
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&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_ext
-+echo "$as_me:15213: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+if test $cf_result = yes ; then
-+
-+cf_result=`echo "have_type_wchar_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+cat >>confdefs.h <<EOF
-+#define $cf_result 1
-+EOF
-+
- else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 14161 "configure"
-+
-+cat >>confdefs.h <<EOF
-+#define wchar_t long
-+EOF
-+
-+fi
-+
-+ fi
-+
-+ if test "$NCURSES_OK_WINT_T" = 0 ; then
-+
-+echo "$as_me:15235: 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 15238 "configure"
- #include "confdefs.h"
-
- #ifndef _XOPEN_SOURCE_EXTENDED
-@@ -14168,70 +15245,95 @@
- int
- main ()
- {
--cchar_t *foo = WACS_PLUS
-+
-+wint_t foo
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14177: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:15256: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14180: \$? = $ac_status" >&5
-+ echo "$as_me:15259: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14183: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:15262: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14186: \$? = $ac_status" >&5
-+ echo "$as_me:15265: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_curses_wacs_symbols=yes
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&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_ext
-+echo "$as_me:15274: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+if test $cf_result = yes ; then
-+
-+cf_result=`echo "have_type_wint_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+cat >>confdefs.h <<EOF
-+#define $cf_result 1
-+EOF
-+
-+else
-+
-+cat >>confdefs.h <<EOF
-+#define wint_t long
-+EOF
-+
- fi
-
-+ fi
- fi
--echo "$as_me:14197: result: $cf_cv_curses_wacs_symbols" >&5
--echo "${ECHO_T}$cf_cv_curses_wacs_symbols" >&6
-
--test "$cf_cv_curses_wacs_symbols" != no && cat >>confdefs.h <<\EOF
--#define CURSES_WACS_SYMBOLS 1
--EOF
-+echo "$as_me:15295: checking for data boolnames declaration in ${cf_cv_ncurses_header:-curses.h}" >&5
-+echo $ECHO_N "checking for data boolnames declaration in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6
-
--echo "$as_me:14204: 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 14207 "configure"
-+#line 15299 "configure"
- #include "confdefs.h"
-
--#ifndef _XOPEN_SOURCE_EXTENDED
--#define _XOPEN_SOURCE_EXTENDED
--#endif
-+#ifdef HAVE_XCURSES
-+#include <xcurses.h>
-+char * XCursesProgramName = "test";
-+#else
- #include <${cf_cv_ncurses_header:-curses.h}>
-+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
-+#include <ncursesw/term.h>
-+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
-+#include <ncurses/term.h>
-+#elif defined(HAVE_TERM_H)
-+#include <term.h>
-+#endif
-+#endif
-+
- int
- main ()
- {
-
--attr_t foo
-+void *foo = &(boolnames)
-
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14225: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15327: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14228: \$? = $ac_status" >&5
-+ echo "$as_me:15330: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14231: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15333: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14234: \$? = $ac_status" >&5
-+ echo "$as_me:15336: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cf_result=yes
- else
-@@ -14240,868 +15342,1597 @@
- cf_result=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
--echo "$as_me:14243: result: $cf_result" >&5
-+echo "$as_me:15345: result: $cf_result" >&5
- echo "${ECHO_T}$cf_result" >&6
-+
- if test $cf_result = yes ; then
-
--cf_result=`echo "have_type_attr_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+cf_result=`echo "have_curses_data_boolnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-
- cat >>confdefs.h <<EOF
- #define $cf_result 1
- EOF
-
- else
-- cat >>confdefs.h <<EOF
--#define attr_t long
--EOF
--
--fi
--
--# This is needed on Tru64 5.0 to declare mbstate_t
--echo "$as_me:14261: 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
-+ echo "$as_me:15357: checking for data boolnames in library" >&5
-+echo $ECHO_N "checking for data boolnames in library... $ECHO_C" >&6
-+ # BSD linkers insist on making weak linkage, but resolve at runtime.
-+ if test "$cross_compiling" = yes; then
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 14268 "configure"
-+ # cross-compiling
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 15364 "configure"
- #include "confdefs.h"
-
--#include <stdlib.h>
--#include <stdarg.h>
--#include <stdio.h>
--#ifdef HAVE_LIBUTF8_H
--#include <libutf8.h>
-+#ifdef HAVE_XCURSES
-+#include <xcurses.h>
-+char * XCursesProgramName = "test";
-+#else
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
-+#include <ncursesw/term.h>
-+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
-+#include <ncurses/term.h>
-+#elif defined(HAVE_TERM_H)
-+#include <term.h>
- #endif
-+#endif
-+
-+extern char boolnames;
- int
- main ()
- {
--mbstate_t state
-+
-+ do {
-+ void *foo = &(boolnames);
-+ fprintf(stderr, "testing linkage of boolnames:%p\n", foo);
-+ ${cf_cv_main_return:-return}(foo == 0);
-+ } while (0)
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14286: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:15397: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14289: \$? = $ac_status" >&5
-+ echo "$as_me:15400: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14292: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:15403: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14295: \$? = $ac_status" >&5
-+ echo "$as_me:15406: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_mbstate_t=no
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
-+cf_result=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+
-+else
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 15418 "configure"
-+#include "confdefs.h"
-+
-+#ifdef HAVE_XCURSES
-+#include <xcurses.h>
-+char * XCursesProgramName = "test";
-+#else
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
-+#include <ncursesw/term.h>
-+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
-+#include <ncurses/term.h>
-+#elif defined(HAVE_TERM_H)
-+#include <term.h>
-+#endif
-+#endif
-+
-+extern char boolnames;
-+int main(void)
-+{
-+ void *foo = &(boolnames);
-+ fprintf(stderr, "testing linkage of boolnames:%p\n", foo);
-+ ${cf_cv_main_return:-return}(foo == 0);
-+}
-+_ACEOF
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:15444: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
-+ ac_status=$?
-+ echo "$as_me:15447: \$? = $ac_status" >&5
-+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+ { (eval echo "$as_me:15449: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:15452: \$? = $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
-+cf_result=no
-+fi
-+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-+fi
-+ echo "$as_me:15463: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+ if test $cf_result = yes ; then
-+
-+cf_result=`echo "decl_curses_data_boolnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+ cat >>confdefs.h <<EOF
-+#define $cf_result 1
-+EOF
-+
-+ fi
-+fi
-+
-+echo "$as_me:15476: checking for data boolfnames declaration in ${cf_cv_ncurses_header:-curses.h}" >&5
-+echo $ECHO_N "checking for data boolfnames declaration in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6
-+
- cat >conftest.$ac_ext <<_ACEOF
--#line 14302 "configure"
-+#line 15480 "configure"
- #include "confdefs.h"
-
--#include <stdlib.h>
--#include <stdarg.h>
--#include <stdio.h>
--#include <wchar.h>
--#ifdef HAVE_LIBUTF8_H
--#include <libutf8.h>
-+#ifdef HAVE_XCURSES
-+#include <xcurses.h>
-+char * XCursesProgramName = "test";
-+#else
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
-+#include <ncursesw/term.h>
-+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
-+#include <ncurses/term.h>
-+#elif defined(HAVE_TERM_H)
-+#include <term.h>
- #endif
-+#endif
-+
- int
- main ()
- {
--mbstate_t value
-+
-+void *foo = &(boolfnames)
-+
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14321: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15508: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14324: \$? = $ac_status" >&5
-+ echo "$as_me:15511: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14327: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15514: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14330: \$? = $ac_status" >&5
-+ echo "$as_me:15517: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_mbstate_t=yes
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_mbstate_t=unknown
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+cf_result=no
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
--fi
--echo "$as_me:14342: result: $cf_cv_mbstate_t" >&5
--echo "${ECHO_T}$cf_cv_mbstate_t" >&6
--
--if test "$cf_cv_mbstate_t" = yes ; then
-- cat >>confdefs.h <<\EOF
--#define NEED_WCHAR_H 1
--EOF
-+echo "$as_me:15526: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-
-- NEED_WCHAR_H=1
--fi
-+if test $cf_result = yes ; then
-
--# if we do not find mbstate_t in either place, use substitution to provide a fallback.
--if test "$cf_cv_mbstate_t" = unknown ; then
-- NCURSES_MBSTATE_T=1
--fi
-+cf_result=`echo "have_curses_data_boolfnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-
--# if we find mbstate_t in either place, use substitution to provide a fallback.
--if test "$cf_cv_mbstate_t" != unknown ; then
-- NCURSES_OK_MBSTATE_T=1
--fi
-+ cat >>confdefs.h <<EOF
-+#define $cf_result 1
-+EOF
-
--# This is needed on Tru64 5.0 to declare wchar_t
--echo "$as_me:14364: 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
-+ echo "$as_me:15538: checking for data boolfnames in library" >&5
-+echo $ECHO_N "checking for data boolfnames in library... $ECHO_C" >&6
-+ # BSD linkers insist on making weak linkage, but resolve at runtime.
-+ if test "$cross_compiling" = yes; then
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 14371 "configure"
-+ # cross-compiling
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 15545 "configure"
- #include "confdefs.h"
-
--#include <stdlib.h>
--#include <stdarg.h>
--#include <stdio.h>
--#ifdef HAVE_LIBUTF8_H
--#include <libutf8.h>
-+#ifdef HAVE_XCURSES
-+#include <xcurses.h>
-+char * XCursesProgramName = "test";
-+#else
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
-+#include <ncursesw/term.h>
-+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
-+#include <ncurses/term.h>
-+#elif defined(HAVE_TERM_H)
-+#include <term.h>
-+#endif
- #endif
-+
-+extern char boolfnames;
- int
- main ()
- {
--wchar_t state
-+
-+ do {
-+ void *foo = &(boolfnames);
-+ fprintf(stderr, "testing linkage of boolfnames:%p\n", foo);
-+ ${cf_cv_main_return:-return}(foo == 0);
-+ } while (0)
-+
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14389: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:15578: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14392: \$? = $ac_status" >&5
-+ echo "$as_me:15581: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14395: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:15584: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14398: \$? = $ac_status" >&5
-+ echo "$as_me:15587: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_wchar_t=no
-+ cf_result=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cat >conftest.$ac_ext <<_ACEOF
--#line 14405 "configure"
-+cf_result=no
-+fi
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+
-+else
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 15599 "configure"
- #include "confdefs.h"
-
--#include <stdlib.h>
--#include <stdarg.h>
--#include <stdio.h>
--#include <wchar.h>
--#ifdef HAVE_LIBUTF8_H
--#include <libutf8.h>
-+#ifdef HAVE_XCURSES
-+#include <xcurses.h>
-+char * XCursesProgramName = "test";
-+#else
-+#include <${cf_cv_ncurses_header:-curses.h}>
-+#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
-+#include <ncursesw/term.h>
-+#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
-+#include <ncurses/term.h>
-+#elif defined(HAVE_TERM_H)
-+#include <term.h>
- #endif
--int
--main ()
-+#endif
-+
-+extern char boolfnames;
-+int main(void)
- {
--wchar_t value
-- ;
-- return 0;
-+ void *foo = &(boolfnames);
-+ fprintf(stderr, "testing linkage of boolfnames:%p\n", foo);
-+ ${cf_cv_main_return:-return}(foo == 0);
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14424: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:15625: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14427: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14430: \"$ac_try\"") >&5
-+ echo "$as_me:15628: \$? = $ac_status" >&5
-+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+ { (eval echo "$as_me:15630: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14433: \$? = $ac_status" >&5
-+ echo "$as_me:15633: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_wchar_t=yes
-+ cf_result=yes
- else
-- echo "$as_me: failed program was:" >&5
-+ echo "$as_me: program exited with status $ac_status" >&5
-+echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_wchar_t=unknown
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+cf_result=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
--echo "$as_me:14445: result: $cf_cv_wchar_t" >&5
--echo "${ECHO_T}$cf_cv_wchar_t" >&6
-+ echo "$as_me:15644: result: $cf_result" >&5
-+echo "${ECHO_T}$cf_result" >&6
-+ if test $cf_result = yes ; then
-
--if test "$cf_cv_wchar_t" = yes ; then
-- cat >>confdefs.h <<\EOF
--#define NEED_WCHAR_H 1
-+cf_result=`echo "decl_curses_data_boolfnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+
-+ cat >>confdefs.h <<EOF
-+#define $cf_result 1
- EOF
-
-- NEED_WCHAR_H=1
-+ fi
- fi
-
--# if we do not find wchar_t in either place, use substitution to provide a fallback.
--if test "$cf_cv_wchar_t" = unknown ; then
-- NCURSES_WCHAR_T=1
--fi
-+if ( test "$GCC" = yes || test "$GXX" = yes )
-+then
-+echo "$as_me:15659: 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
-
--# if we find wchar_t in either place, use substitution to provide a fallback.
--if test "$cf_cv_wchar_t" != unknown ; then
-- NCURSES_OK_WCHAR_T=1
--fi
-+# Check whether --enable-warnings or --disable-warnings was given.
-+if test "${enable_warnings+set}" = set; then
-+ enableval="$enable_warnings"
-+ test "$enableval" != yes && enableval=no
-+ if test "$enableval" != "no" ; then
-+ with_warnings=yes
-+ else
-+ with_warnings=no
-+ fi
-+else
-+ enableval=no
-+ with_warnings=no
-
--# This is needed on Tru64 5.0 to declare wint_t
--echo "$as_me:14467: 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
-+fi;
-+echo "$as_me:15676: result: $with_warnings" >&5
-+echo "${ECHO_T}$with_warnings" >&6
-+if test "$with_warnings" = "yes"
-+then
-+
-+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:15699: checking for $CC __attribute__ directives..." >&5
-+echo "$as_me: checking for $CC __attribute__ directives..." >&6;}
-+cat > conftest.$ac_ext <<EOF
-+#line 15702 "${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 #(vi
-+ printf) #(vi
-+ cf_printf_attribute=yes
-+ cat >conftest.h <<EOF
-+#define GCC_$cf_ATTRIBUTE 1
-+EOF
-+ ;;
-+ scanf) #(vi
-+ cf_scanf_attribute=yes
-+ cat >conftest.h <<EOF
-+#define GCC_$cf_ATTRIBUTE 1
-+EOF
-+ ;;
-+ *) #(vi
-+ cat >conftest.h <<EOF
-+#define GCC_$cf_ATTRIBUTE $cf_directive
-+EOF
-+ ;;
-+ esac
-+
-+ if { (eval echo "$as_me:15751: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:15754: \$? = $ac_status" >&5
-+ (exit $ac_status); }; then
-+ test -n "$verbose" && echo "$as_me:15756: result: ... $cf_attribute" >&5
-+echo "${ECHO_T}... $cf_attribute" >&6
-+ cat conftest.h >>confdefs.h
-+ case $cf_attribute in #(vi
-+ noreturn) #(vi
-+
-+cat >>confdefs.h <<EOF
-+#define GCC_NORETURN $cf_directive
-+EOF
-+
-+ ;;
-+ printf) #(vi
-+ 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) #(vi
-+ 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) #(vi
-+
-+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
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 14474 "configure"
-+INTEL_COMPILER=no
-+
-+if test "$GCC" = yes ; then
-+ case $host_os in
-+ linux*|gnu*)
-+ echo "$as_me:15820: 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 15825 "configure"
- #include "confdefs.h"
-
--#include <stdlib.h>
--#include <stdarg.h>
--#include <stdio.h>
--#ifdef HAVE_LIBUTF8_H
--#include <libutf8.h>
--#endif
- int
- main ()
- {
--wint_t state
-+
-+#ifdef __INTEL_COMPILER
-+#else
-+make an error
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14492: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15842: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14495: \$? = $ac_status" >&5
-+ echo "$as_me:15845: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14498: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15848: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14501: \$? = $ac_status" >&5
-+ echo "$as_me:15851: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_wint_t=no
-+ 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 <<_ACEOF
--#line 14508 "configure"
-+fi
-+rm -f conftest.$ac_objext conftest.$ac_ext
-+ CFLAGS="$cf_save_CFLAGS"
-+ echo "$as_me:15862: result: $INTEL_COMPILER" >&5
-+echo "${ECHO_T}$INTEL_COMPILER" >&6
-+ ;;
-+ esac
-+fi
-+
-+CLANG_COMPILER=no
-+
-+if test "$GCC" = yes ; then
-+ echo "$as_me:15871: 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 15876 "configure"
- #include "confdefs.h"
-
--#include <stdlib.h>
--#include <stdarg.h>
--#include <stdio.h>
--#include <wchar.h>
--#ifdef HAVE_LIBUTF8_H
--#include <libutf8.h>
--#endif
- int
- main ()
- {
--wint_t value
-+
-+#ifdef __clang__
-+#else
-+make an error
-+#endif
-+
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14527: \"$ac_compile\"") >&5
-+if { (eval echo "$as_me:15893: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
-- echo "$as_me:14530: \$? = $ac_status" >&5
-+ echo "$as_me:15896: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14533: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:15899: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14536: \$? = $ac_status" >&5
-+ echo "$as_me:15902: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_cv_wint_t=yes
-+ CLANG_COMPILER=yes
-+cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
-+
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_cv_wint_t=unknown
- fi
- rm -f conftest.$ac_objext conftest.$ac_ext
-+ CFLAGS="$cf_save_CFLAGS"
-+ echo "$as_me:15913: result: $CLANG_COMPILER" >&5
-+echo "${ECHO_T}$CLANG_COMPILER" >&6
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
-+
-+cat > conftest.$ac_ext <<EOF
-+#line 15918 "${as_me:-configure}"
-+int main(int argc, char *argv[]) { return (argv[argc-1] == 0) ; }
-+EOF
-+
-+if test "$INTEL_COMPILER" = yes
-+then
-+# The "-wdXXX" options suppress warnings:
-+# remark #1419: external declaration in primary source file
-+# remark #1683: explicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem)
-+# remark #1684: conversion from pointer to same-sized integral type (potential portability problem)
-+# remark #193: zero used for undefined preprocessing identifier
-+# remark #593: variable "curs_sb_left_arrow" was set but never used
-+# remark #810: conversion from "int" to "Dimension={unsigned short}" may lose significant bits
-+# remark #869: parameter "tw" was never referenced
-+# remark #981: operands are evaluated in unspecified order
-+# warning #279: controlling expression is constant
-+
-+ { echo "$as_me:15935: checking for $CC warning options..." >&5
-+echo "$as_me: checking for $CC warning options..." >&6;}
-+ cf_save_CFLAGS="$CFLAGS"
-+ EXTRA_CFLAGS="-Wall"
-+ for cf_opt in \
-+ wd1419 \
-+ wd1683 \
-+ wd1684 \
-+ wd193 \
-+ wd593 \
-+ wd279 \
-+ wd810 \
-+ wd869 \
-+ wd981
-+ do
-+ CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-+ if { (eval echo "$as_me:15951: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:15954: \$? = $ac_status" >&5
-+ (exit $ac_status); }; then
-+ test -n "$verbose" && echo "$as_me:15956: result: ... -$cf_opt" >&5
-+echo "${ECHO_T}... -$cf_opt" >&6
-+ EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
-+ fi
-+ done
-+ CFLAGS="$cf_save_CFLAGS"
-+
-+elif test "$GCC" = yes
-+then
-+ { echo "$as_me:15965: 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"
-+ test "x$CLANG_COMPILER" = xyes && cf_gcc_warnings=
-+ for cf_opt in W Wall \
-+ Wbad-function-cast \
-+ Wcast-align \
-+ Wcast-qual \
-+ Wdeclaration-after-statement \
-+ Wextra \
-+ Winline \
-+ Wmissing-declarations \
-+ Wmissing-prototypes \
-+ Wnested-externs \
-+ Wpointer-arith \
-+ Wshadow \
-+ Wstrict-prototypes \
-+ Wundef $cf_gcc_warnings $cf_warn_CONST
-+ do
-+ CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
-+ if { (eval echo "$as_me:15989: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>&5
-+ ac_status=$?
-+ echo "$as_me:15992: \$? = $ac_status" >&5
-+ (exit $ac_status); }; then
-+ test -n "$verbose" && echo "$as_me:15994: result: ... -$cf_opt" >&5
-+echo "${ECHO_T}... -$cf_opt" >&6
-+ case $cf_opt in #(vi
-+ Wcast-qual) #(vi
-+ CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES"
-+ ;;
-+ Winline) #(vi
-+ case $GCC_VERSION in
-+ [34].*)
-+ test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-+
-+echo "${as_me:-configure}:16005: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
-+
-+ continue;;
-+ esac
-+ ;;
-+ Wpointer-arith) #(vi
-+ case $GCC_VERSION in
-+ [12].*)
-+ test -n "$verbose" && echo " feature is broken in gcc $GCC_VERSION" 1>&6
-+
-+echo "${as_me:-configure}:16015: testing feature is broken in gcc $GCC_VERSION ..." 1>&5
-+
-+ continue;;
-+ esac
-+ ;;
-+ esac
-+ EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
-+ fi
-+ done
-+ CFLAGS="$cf_save_CFLAGS"
- fi
--echo "$as_me:14548: result: $cf_cv_wint_t" >&5
--echo "${ECHO_T}$cf_cv_wint_t" >&6
-+rm -rf conftest*
-
--if test "$cf_cv_wint_t" = yes ; then
-- cat >>confdefs.h <<\EOF
--#define NEED_WCHAR_H 1
-+fi
-+fi
-+
-+echo "$as_me:16031: 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"
-+
-+cat >>confdefs.h <<EOF
-+#define USE_DMALLOC 1
- EOF
-
-- NEED_WCHAR_H=1
-+ : ${with_cflags:=-g}
-+ : ${with_no_leaks:=yes}
-+ with_dmalloc=yes
-+else
-+ with_dmalloc=
-+fi;
-+echo "$as_me:16048: result: ${with_dmalloc:-no}" >&5
-+echo "${ECHO_T}${with_dmalloc:-no}" >&6
-+
-+case .$with_cflags in #(vi
-+.*-g*)
-+ case .$CFLAGS in #(vi
-+ .*-g*) #(vi
-+ ;;
-+ *)
-+
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-+
-+for cf_add_cflags in -g
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ 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
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -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
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
- fi
-
--# if we do not find wint_t in either place, use substitution to provide a fallback.
--if test "$cf_cv_wint_t" = unknown ; then
-- NCURSES_WINT_T=1
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- fi
-
--# if we find wint_t in either place, use substitution to provide a fallback.
--if test "$cf_cv_wint_t" != unknown ; then
-- NCURSES_OK_WINT_T=1
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+ ;;
-+ esac
-+ ;;
-+esac
-+
-+if test "$with_dmalloc" = yes ; then
-+ echo "$as_me:16142: 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 16148 "configure"
-+#include "confdefs.h"
-+#include <dmalloc.h>
-+_ACEOF
-+if { (eval echo "$as_me:16152: \"$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:16158: \$? = $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
-+ ac_cv_header_dmalloc_h=yes
-+else
-+ echo "$as_me: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ ac_cv_header_dmalloc_h=no
- fi
-+rm -f conftest.err conftest.$ac_ext
-+fi
-+echo "$as_me:16177: 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 "$NCURSES_OK_MBSTATE_T" = 0 ; then
--
--echo "$as_me:14571: 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
-+echo "$as_me:16181: 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 14574 "configure"
-+#line 16189 "configure"
- #include "confdefs.h"
-
--#ifndef _XOPEN_SOURCE_EXTENDED
--#define _XOPEN_SOURCE_EXTENDED
-+/* Override any gcc2 internal prototype to avoid an error. */
-+#ifdef __cplusplus
-+extern "C"
- #endif
--#include <${cf_cv_ncurses_header:-curses.h}>
-+/* We use char because int might match the return type of a gcc2
-+ builtin and then its argument prototype would still apply. */
-+char dmalloc_debug ();
- int
- main ()
- {
--
--mbstate_t foo
--
-+dmalloc_debug ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14592: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:16208: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14595: \$? = $ac_status" >&5
-+ echo "$as_me:16211: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14598: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:16214: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14601: \$? = $ac_status" >&5
-+ echo "$as_me:16217: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_result=yes
-+ ac_cv_lib_dmalloc_dmalloc_debug=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_result=no
-+ac_cv_lib_dmalloc_dmalloc_debug=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--echo "$as_me:14610: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
--if test $cf_result = yes ; then
--
--cf_result=`echo "have_type_mbstate_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
--
-- cat >>confdefs.h <<EOF
--#define $cf_result 1
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:16228: 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
-+ cat >>confdefs.h <<EOF
-+#define HAVE_LIBDMALLOC 1
- EOF
-
--else
-- cat >>confdefs.h <<EOF
--#define mbstate_t long
--EOF
-+ LIBS="-ldmalloc $LIBS"
-
- fi
-
- fi
-
--if test "$NCURSES_OK_WCHAR_T" = 0 ; then
-+fi
-
--echo "$as_me:14631: 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 14634 "configure"
--#include "confdefs.h"
-+echo "$as_me:16243: 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
-
--#ifndef _XOPEN_SOURCE_EXTENDED
--#define _XOPEN_SOURCE_EXTENDED
--#endif
--#include <${cf_cv_ncurses_header:-curses.h}>
--int
--main ()
--{
-+# Check whether --with-dbmalloc or --without-dbmalloc was given.
-+if test "${with_dbmalloc+set}" = set; then
-+ withval="$with_dbmalloc"
-
--wchar_t foo
-+cat >>confdefs.h <<EOF
-+#define USE_DBMALLOC 1
-+EOF
-
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14652: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:14655: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14658: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:14661: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- cf_result=yes
-+ : ${with_cflags:=-g}
-+ : ${with_no_leaks:=yes}
-+ with_dbmalloc=yes
- else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--cf_result=no
--fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--echo "$as_me:14670: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
--if test $cf_result = yes ; then
-+ with_dbmalloc=
-+fi;
-+echo "$as_me:16260: result: ${with_dbmalloc:-no}" >&5
-+echo "${ECHO_T}${with_dbmalloc:-no}" >&6
-
--cf_result=`echo "have_type_wchar_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+case .$with_cflags in #(vi
-+.*-g*)
-+ case .$CFLAGS in #(vi
-+ .*-g*) #(vi
-+ ;;
-+ *)
-
-- cat >>confdefs.h <<EOF
--#define $cf_result 1
--EOF
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-
--else
-- cat >>confdefs.h <<EOF
--#define wchar_t long
--EOF
-+for cf_add_cflags in -g
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ case $cf_add_cflags in
-+ -D*)
-+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
--fi
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
-+ && test -z "${cf_tst_cflags}" \
-+ && cf_fix_cppflags=yes
-
--fi
-+ if test $cf_fix_cppflags = yes ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -D*)
-+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
-
--if test "$NCURSES_OK_WINT_T" = 0 ; then
-+CPPFLAGS=`echo "$CPPFLAGS" | \
-+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
-
--echo "$as_me:14691: 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 14694 "configure"
--#include "confdefs.h"
-+ ;;
-+ esac
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-
--#ifndef _XOPEN_SOURCE_EXTENDED
--#define _XOPEN_SOURCE_EXTENDED
--#endif
--#include <${cf_cv_ncurses_header:-curses.h}>
--int
--main ()
--{
-+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'`
-
--wint_t foo
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
-+ && test -z "${cf_tst_cflags}" \
-+ && cf_fix_cppflags=no
-+ ;;
-+esac
-+done
-
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14712: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-- ac_status=$?
-- echo "$as_me:14715: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14718: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:14721: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- cf_result=yes
--else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--cf_result=no
-+if test -n "$cf_new_cflags" ; then
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--echo "$as_me:14730: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
--if test $cf_result = yes ; then
-
--cf_result=`echo "have_type_wint_t" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+if test -n "$cf_new_cppflags" ; then
-
-- cat >>confdefs.h <<EOF
--#define $cf_result 1
--EOF
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
-+fi
-
--else
-- cat >>confdefs.h <<EOF
--#define wint_t long
--EOF
-+if test -n "$cf_new_extra_cppflags" ; then
-
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
- fi
-
--fi
-+ ;;
-+ esac
-+ ;;
-+esac
-
--echo "$as_me:14749: checking for data boolnames declaration in ${cf_cv_ncurses_header:-curses.h}" >&5
--echo $ECHO_N "checking for data boolnames declaration in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6
-+if test "$with_dbmalloc" = yes ; then
-+ echo "$as_me:16354: 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 16360 "configure"
-+#include "confdefs.h"
-+#include <dbmalloc.h>
-+_ACEOF
-+if { (eval echo "$as_me:16364: \"$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:16370: \$? = $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
-+ ac_cv_header_dbmalloc_h=yes
-+else
-+ echo "$as_me: failed program was:" >&5
-+ cat conftest.$ac_ext >&5
-+ ac_cv_header_dbmalloc_h=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+fi
-+echo "$as_me:16389: 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
-
-+echo "$as_me:16393: 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 14753 "configure"
-+#line 16401 "configure"
- #include "confdefs.h"
-
--#ifdef HAVE_XCURSES
--#include <xcurses.h>
--char * XCursesProgramName = "test";
--#else
--#include <${cf_cv_ncurses_header:-curses.h}>
--#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
--#include <ncursesw/term.h>
--#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
--#include <ncurses/term.h>
--#elif defined(HAVE_TERM_H)
--#include <term.h>
--#endif
-+/* 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 debug_malloc ();
- int
- main ()
- {
--
--void *foo = &(boolnames)
--
-+debug_malloc ();
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14781: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:16420: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14784: \$? = $ac_status" >&5
-+ echo "$as_me:16423: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14787: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:16426: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14790: \$? = $ac_status" >&5
-+ echo "$as_me:16429: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_result=yes
-+ ac_cv_lib_dbmalloc_debug_malloc=yes
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_result=no
-+ac_cv_lib_dbmalloc_debug_malloc=no
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--echo "$as_me:14799: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:16440: 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
-+ cat >>confdefs.h <<EOF
-+#define HAVE_LIBDBMALLOC 1
-+EOF
-
--if test $cf_result = yes ; then
-+ LIBS="-ldbmalloc $LIBS"
-
--cf_result=`echo "have_curses_data_boolnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+fi
-
-- cat >>confdefs.h <<EOF
--#define $cf_result 1
-+fi
-+
-+fi
-+
-+echo "$as_me:16455: 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"
-+
-+cat >>confdefs.h <<EOF
-+#define USE_VALGRIND 1
- EOF
-
-+ : ${with_cflags:=-g}
-+ : ${with_no_leaks:=yes}
-+ with_valgrind=yes
- else
-- echo "$as_me:14811: checking for data boolnames in library" >&5
--echo $ECHO_N "checking for data boolnames in library... $ECHO_C" >&6
-- # BSD linkers insist on making weak linkage, but resolve at runtime.
-- if test "$cross_compiling" = yes; then
-+ with_valgrind=
-+fi;
-+echo "$as_me:16472: result: ${with_valgrind:-no}" >&5
-+echo "${ECHO_T}${with_valgrind:-no}" >&6
-
-- # cross-compiling
-- cat >conftest.$ac_ext <<_ACEOF
--#line 14818 "configure"
--#include "confdefs.h"
-+case .$with_cflags in #(vi
-+.*-g*)
-+ case .$CFLAGS in #(vi
-+ .*-g*) #(vi
-+ ;;
-+ *)
-
--#ifdef HAVE_XCURSES
--#include <xcurses.h>
--char * XCursesProgramName = "test";
--#else
--#include <${cf_cv_ncurses_header:-curses.h}>
--#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
--#include <ncursesw/term.h>
--#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
--#include <ncurses/term.h>
--#elif defined(HAVE_TERM_H)
--#include <term.h>
--#endif
--#endif
-+cf_fix_cppflags=no
-+cf_new_cflags=
-+cf_new_cppflags=
-+cf_new_extra_cppflags=
-
--extern char boolnames;
--int
--main ()
--{
-+for cf_add_cflags in -g
-+do
-+case $cf_fix_cppflags in
-+no)
-+ case $cf_add_cflags in #(vi
-+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
-+ case $cf_add_cflags in
-+ -D*)
-+ cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'`
-
-- do {
-- void *foo = &(boolnames);
-- ${cf_cv_main_return:-return}(foo == 0);
-- } while (0)
-+ test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \
-+ && test -z "${cf_tst_cflags}" \
-+ && cf_fix_cppflags=yes
-
-- ;
-- return 0;
--}
--_ACEOF
--rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:14850: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:14853: \$? = $ac_status" >&5
-- (exit $ac_status); } &&
-- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:14856: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:14859: \$? = $ac_status" >&5
-- (exit $ac_status); }; }; then
-- cf_result=yes
--else
-- echo "$as_me: failed program was:" >&5
--cat conftest.$ac_ext >&5
--cf_result=no
--fi
--rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+ if test $cf_fix_cppflags = yes ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ elif test "${cf_tst_cflags}" = "\"'" ; then
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-+ continue
-+ fi
-+ ;;
-+ esac
-+ case "$CPPFLAGS" in
-+ *$cf_add_cflags) #(vi
-+ ;;
-+ *) #(vi
-+ case $cf_add_cflags in #(vi
-+ -D*)
-+ cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'`
-
--else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 14871 "configure"
--#include "confdefs.h"
-+CPPFLAGS=`echo "$CPPFLAGS" | \
-+ sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \
-+ -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'`
-
--#ifdef HAVE_XCURSES
--#include <xcurses.h>
--char * XCursesProgramName = "test";
--#else
--#include <${cf_cv_ncurses_header:-curses.h}>
--#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
--#include <ncursesw/term.h>
--#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
--#include <ncurses/term.h>
--#elif defined(HAVE_TERM_H)
--#include <term.h>
--#endif
--#endif
-+ ;;
-+ esac
-+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+ *)
-+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
-+ ;;
-+ esac
-+ ;;
-+yes)
-+ cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
-
--extern char boolnames;
--int main(void)
--{
-- void *foo = &(boolnames);
-- ${cf_cv_main_return:-return}(foo == 0);
--}
--_ACEOF
--rm -f conftest$ac_exeext
--if { (eval echo "$as_me:14896: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:14899: \$? = $ac_status" >&5
-- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:14901: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:14904: \$? = $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
--cf_result=no
-+ 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
-+
-+ CFLAGS="$CFLAGS $cf_new_cflags"
- fi
--rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
-+
-+if test -n "$cf_new_cppflags" ; then
-+
-+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
- fi
-- echo "$as_me:14915: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
-- if test $cf_result = yes ; then
-
--cf_result=`echo "decl_curses_data_boolnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+if test -n "$cf_new_extra_cppflags" ; then
-+
-+ EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
-+fi
-+
-+ ;;
-+ esac
-+ ;;
-+esac
-+
-+echo "$as_me:16565: 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
-+else
-+ : ${with_no_leaks:=no}
-+fi;
-+echo "$as_me:16575: result: $with_no_leaks" >&5
-+echo "${ECHO_T}$with_no_leaks" >&6
-+
-+if test "$with_no_leaks" = yes ; then
-+
-+cat >>confdefs.h <<\EOF
-+#define NO_LEAKS 1
-+EOF
-
-- cat >>confdefs.h <<EOF
--#define $cf_result 1
-+cat >>confdefs.h <<\EOF
-+#define YY_NO_LEAKS 1
- EOF
-
-- fi
- fi
-
--echo "$as_me:14928: checking for data boolfnames declaration in ${cf_cv_ncurses_header:-curses.h}" >&5
--echo $ECHO_N "checking for data boolfnames declaration in ${cf_cv_ncurses_header:-curses.h}... $ECHO_C" >&6
-+LD_RPATH_OPT=
-+echo "$as_me:16591: checking for an rpath option" >&5
-+echo $ECHO_N "checking for an rpath option... $ECHO_C" >&6
-+case $cf_cv_system_name in #(vi
-+irix*) #(vi
-+ if test "$GCC" = yes; then
-+ LD_RPATH_OPT="-Wl,-rpath,"
-+ else
-+ LD_RPATH_OPT="-rpath "
-+ fi
-+ ;;
-+linux*|gnu*|k*bsd*-gnu) #(vi
-+ LD_RPATH_OPT="-Wl,-rpath,"
-+ ;;
-+openbsd[2-9].*|mirbsd*) #(vi
-+ LD_RPATH_OPT="-Wl,-rpath,"
-+ ;;
-+dragonfly*|freebsd*) #(vi
-+ LD_RPATH_OPT="-rpath "
-+ ;;
-+netbsd*) #(vi
-+ LD_RPATH_OPT="-Wl,-rpath,"
-+ ;;
-+osf*|mls+*) #(vi
-+ LD_RPATH_OPT="-rpath "
-+ ;;
-+solaris2*) #(vi
-+ LD_RPATH_OPT="-R"
-+ ;;
-+*)
-+ ;;
-+esac
-+echo "$as_me:16622: result: $LD_RPATH_OPT" >&5
-+echo "${ECHO_T}$LD_RPATH_OPT" >&6
-
--cat >conftest.$ac_ext <<_ACEOF
--#line 14932 "configure"
--#include "confdefs.h"
-+case "x$LD_RPATH_OPT" in #(vi
-+x-R*)
-+ echo "$as_me:16627: 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"
-
--#ifdef HAVE_XCURSES
--#include <xcurses.h>
--char * XCursesProgramName = "test";
--#else
--#include <${cf_cv_ncurses_header:-curses.h}>
--#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
--#include <ncursesw/term.h>
--#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
--#include <ncurses/term.h>
--#elif defined(HAVE_TERM_H)
--#include <term.h>
--#endif
--#endif
-+cf_add_libs="${LD_RPATH_OPT}$libdir"
-+# Filter out duplicates - this happens with badly-designed ".pc" files...
-+for cf_add_1lib in $LIBS
-+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_libs $cf_add_1lib"
-+done
-+LIBS="$cf_add_libs"
-+
-+ cat >conftest.$ac_ext <<_ACEOF
-+#line 16648 "configure"
-+#include "confdefs.h"
-
- int
- main ()
- {
-
--void *foo = &(boolfnames)
--
- ;
- return 0;
- }
- _ACEOF
--rm -f conftest.$ac_objext
--if { (eval echo "$as_me:14960: \"$ac_compile\"") >&5
-- (eval $ac_compile) 2>&5
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:16660: \"$ac_link\"") >&5
-+ (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:14963: \$? = $ac_status" >&5
-+ echo "$as_me:16663: \$? = $ac_status" >&5
- (exit $ac_status); } &&
-- { ac_try='test -s conftest.$ac_objext'
-- { (eval echo "$as_me:14966: \"$ac_try\"") >&5
-+ { ac_try='test -s conftest$ac_exeext'
-+ { (eval echo "$as_me:16666: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:14969: \$? = $ac_status" >&5
-+ echo "$as_me:16669: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_result=yes
-+ cf_rpath_space=no
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_result=no
-+cf_rpath_space=yes
- fi
--rm -f conftest.$ac_objext conftest.$ac_ext
--echo "$as_me:14978: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
-+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-+ LIBS="$cf_save_LIBS"
-+ echo "$as_me:16679: result: $cf_rpath_space" >&5
-+echo "${ECHO_T}$cf_rpath_space" >&6
-+ test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT "
-+ ;;
-+esac
-
--if test $cf_result = yes ; then
-+echo "$as_me:16685: checking if rpath-hack should be disabled" >&5
-+echo $ECHO_N "checking if rpath-hack should be disabled... $ECHO_C" >&6
-
--cf_result=`echo "have_curses_data_boolfnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+# Check whether --enable-rpath-hack or --disable-rpath-hack was given.
-+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
-+ else
-+ cf_disable_rpath_hack=no
-+ fi
-+else
-+ enableval=yes
-+ cf_disable_rpath_hack=no
-
-- cat >>confdefs.h <<EOF
--#define $cf_result 1
--EOF
-+fi;
-+echo "$as_me:16702: 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:16706: 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:16709: 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:16716: 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
- else
-- echo "$as_me:14990: checking for data boolfnames in library" >&5
--echo $ECHO_N "checking for data boolfnames in library... $ECHO_C" >&6
-- # BSD linkers insist on making weak linkage, but resolve at runtime.
-- if test "$cross_compiling" = yes; then
-+ if test -n "$cf_ldd_prog"; then
-+ ac_cv_prog_cf_ldd_prog="$cf_ldd_prog" # 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_cf_ldd_prog="$ac_prog"
-+echo "$as_me:16731: found $ac_dir/$ac_word" >&5
-+break
-+done
-
-- # cross-compiling
-- cat >conftest.$ac_ext <<_ACEOF
--#line 14997 "configure"
--#include "confdefs.h"
-+fi
-+fi
-+cf_ldd_prog=$ac_cv_prog_cf_ldd_prog
-+if test -n "$cf_ldd_prog"; then
-+ echo "$as_me:16739: result: $cf_ldd_prog" >&5
-+echo "${ECHO_T}$cf_ldd_prog" >&6
-+else
-+ echo "$as_me:16742: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-
--#ifdef HAVE_XCURSES
--#include <xcurses.h>
--char * XCursesProgramName = "test";
--#else
--#include <${cf_cv_ncurses_header:-curses.h}>
--#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
--#include <ncursesw/term.h>
--#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
--#include <ncurses/term.h>
--#elif defined(HAVE_TERM_H)
--#include <term.h>
--#endif
--#endif
-+ test -n "$cf_ldd_prog" && break
-+done
-+test -n "$cf_ldd_prog" || cf_ldd_prog="no"
-
--extern char boolfnames;
-+ cf_rpath_list="/usr/lib /lib"
-+ if test "$cf_ldd_prog" != no
-+ then
-+ cf_rpath_oops=
-+
-+cat >conftest.$ac_ext <<_ACEOF
-+#line 16756 "configure"
-+#include "confdefs.h"
-+#include <stdio.h>
- int
- main ()
- {
--
-- do {
-- void *foo = &(boolfnames);
-- ${cf_cv_main_return:-return}(foo == 0);
-- } while (0)
--
-+printf("Hello");
- ;
- return 0;
- }
- _ACEOF
- rm -f conftest.$ac_objext conftest$ac_exeext
--if { (eval echo "$as_me:15029: \"$ac_link\"") >&5
-+if { (eval echo "$as_me:16768: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
-- echo "$as_me:15032: \$? = $ac_status" >&5
-+ echo "$as_me:16771: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -s conftest$ac_exeext'
-- { (eval echo "$as_me:15035: \"$ac_try\"") >&5
-+ { (eval echo "$as_me:16774: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-- echo "$as_me:15038: \$? = $ac_status" >&5
-+ echo "$as_me:16777: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-- cf_result=yes
-+ 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`
- else
- echo "$as_me: failed program was:" >&5
- cat conftest.$ac_ext >&5
--cf_result=no
- fi
- rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
-
--else
-- cat >conftest.$ac_ext <<_ACEOF
--#line 15050 "configure"
--#include "confdefs.h"
-+ # 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
-+ # partly honor /usr/local/lib (or whatever). Sometimes this behavior
-+ # is intentional, e.g., installing gcc in /usr/bin and suppressing the
-+ # /usr/local libraries.
-+ if test -n "$cf_rpath_oops"
-+ then
-+ for cf_rpath_src in $cf_rpath_oops
-+ do
-+ for cf_rpath_dir in \
-+ /usr/local \
-+ /usr/pkg \
-+ /opt/sfw
-+ do
-+ 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}:16805: testing ...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src ..." 1>&5
-+
-+ LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib"
-+ break
-+ fi
-+ done
-+ done
-+ fi
-+ fi
-
--#ifdef HAVE_XCURSES
--#include <xcurses.h>
--char * XCursesProgramName = "test";
--#else
--#include <${cf_cv_ncurses_header:-curses.h}>
--#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H)
--#include <ncursesw/term.h>
--#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H)
--#include <ncurses/term.h>
--#elif defined(HAVE_TERM_H)
--#include <term.h>
--#endif
--#endif
-+ test -n "$verbose" && echo " ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
-
--extern char boolfnames;
--int main(void)
--{
-- void *foo = &(boolfnames);
-- ${cf_cv_main_return:-return}(foo == 0);
--}
--_ACEOF
--rm -f conftest$ac_exeext
--if { (eval echo "$as_me:15075: \"$ac_link\"") >&5
-- (eval $ac_link) 2>&5
-- ac_status=$?
-- echo "$as_me:15078: \$? = $ac_status" >&5
-- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-- { (eval echo "$as_me:15080: \"$ac_try\"") >&5
-- (eval $ac_try) 2>&5
-- ac_status=$?
-- echo "$as_me:15083: \$? = $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
--cf_result=no
--fi
--rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
--fi
-- echo "$as_me:15094: result: $cf_result" >&5
--echo "${ECHO_T}$cf_result" >&6
-- if test $cf_result = yes ; then
-+echo "${as_me:-configure}:16817: testing ...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
-
--cf_result=`echo "decl_curses_data_boolfnames" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
-+test -n "$verbose" && echo " ...checking LDFLAGS $LDFLAGS" 1>&6
-
-- cat >>confdefs.h <<EOF
--#define $cf_result 1
--EOF
-+echo "${as_me:-configure}:16821: testing ...checking LDFLAGS $LDFLAGS ..." 1>&5
-+
-+cf_rpath_dst=
-+for cf_rpath_src in $LDFLAGS
-+do
-+ case $cf_rpath_src in #(vi
-+ -L*) #(vi
-+
-+ # check if this refers to a directory which we will ignore
-+ cf_rpath_skip=no
-+ if test -n "$cf_rpath_list"
-+ then
-+ for cf_rpath_item in $cf_rpath_list
-+ do
-+ if test "x$cf_rpath_src" = "x-L$cf_rpath_item"
-+ then
-+ cf_rpath_skip=yes
-+ break
-+ fi
-+ done
-+ fi
-+
-+ if test "$cf_rpath_skip" = no
-+ then
-+ # transform the option
-+ if test "$LD_RPATH_OPT" = "-R " ; then
-+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"`
-+ else
-+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"`
-+ fi
-+
-+ # if we have not already added this, add it now
-+ cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"`
-+ if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS"
-+ then
-+ test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
-+
-+echo "${as_me:-configure}:16858: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
-+
-+ EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
-+ fi
-+ fi
-+ ;;
-+ esac
-+ cf_rpath_dst="$cf_rpath_dst $cf_rpath_src"
-+done
-+LDFLAGS=$cf_rpath_dst
-+
-+test -n "$verbose" && echo " ...checked LDFLAGS $LDFLAGS" 1>&6
-+
-+echo "${as_me:-configure}:16871: testing ...checked LDFLAGS $LDFLAGS ..." 1>&5
-+
-+test -n "$verbose" && echo " ...checking LIBS $LIBS" 1>&6
-+
-+echo "${as_me:-configure}:16875: testing ...checking LIBS $LIBS ..." 1>&5
-+
-+cf_rpath_dst=
-+for cf_rpath_src in $LIBS
-+do
-+ case $cf_rpath_src in #(vi
-+ -L*) #(vi
-+
-+ # check if this refers to a directory which we will ignore
-+ cf_rpath_skip=no
-+ if test -n "$cf_rpath_list"
-+ then
-+ for cf_rpath_item in $cf_rpath_list
-+ do
-+ if test "x$cf_rpath_src" = "x-L$cf_rpath_item"
-+ then
-+ cf_rpath_skip=yes
-+ break
-+ fi
-+ done
-+ fi
-+
-+ if test "$cf_rpath_skip" = no
-+ then
-+ # transform the option
-+ if test "$LD_RPATH_OPT" = "-R " ; then
-+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"`
-+ else
-+ cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"`
-+ fi
-+
-+ # if we have not already added this, add it now
-+ cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"`
-+ if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS"
-+ then
-+ test -n "$verbose" && echo " ...Filter $cf_rpath_src ->$cf_rpath_tmp" 1>&6
-+
-+echo "${as_me:-configure}:16912: testing ...Filter $cf_rpath_src ->$cf_rpath_tmp ..." 1>&5
-+
-+ EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS"
-+ fi
-+ fi
-+ ;;
-+ esac
-+ cf_rpath_dst="$cf_rpath_dst $cf_rpath_src"
-+done
-+LIBS=$cf_rpath_dst
-+
-+test -n "$verbose" && echo " ...checked LIBS $LIBS" 1>&6
-+
-+echo "${as_me:-configure}:16925: testing ...checked LIBS $LIBS ..." 1>&5
-+
-+ test -n "$verbose" && echo " ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS" 1>&6
-+
-+echo "${as_me:-configure}:16929: testing ...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS ..." 1>&5
-+
-+else
-+ echo "$as_me:16932: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-
-- fi
- fi
-
- TEST_ARGS="$LIBS"
-@@ -15188,7 +17019,7 @@
- : ${CONFIG_STATUS=./config.status}
- ac_clean_files_save=$ac_clean_files
- ac_clean_files="$ac_clean_files $CONFIG_STATUS"
--{ echo "$as_me:15191: creating $CONFIG_STATUS" >&5
-+{ echo "$as_me:17022: creating $CONFIG_STATUS" >&5
- echo "$as_me: creating $CONFIG_STATUS" >&6;}
- cat >$CONFIG_STATUS <<_ACEOF
- #! $SHELL
-@@ -15320,7 +17151,7 @@
- cat >>$CONFIG_STATUS <<EOF
- ac_cs_version="\\
- config.status
--configured by $0, generated by GNU Autoconf 2.52.20101002,
-+configured by $0, generated by GNU Autoconf 2.52.20141204,
- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
-
- Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
-@@ -15364,7 +17195,7 @@
- echo "$ac_cs_version"; exit 0 ;;
- --he | --h)
- # Conflict between --help and --header
-- { { echo "$as_me:15367: error: ambiguous option: $1
-+ { { echo "$as_me:17198: 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;}
-@@ -15383,7 +17214,7 @@
- ac_need_defaults=false;;
-
- # This is an error.
-- -*) { { echo "$as_me:15386: error: unrecognized option: $1
-+ -*) { { echo "$as_me:17217: 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;}
-@@ -15402,7 +17233,7 @@
- ## Running config.status. ##
- ## ----------------------- ##
-
--This file was extended by $as_me 2.52.20101002, executed with
-+This file was extended by $as_me 2.52.20141204, executed with
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
-@@ -15419,7 +17250,9 @@
- #
-
- AWK="$AWK"
-+ECHO_CC="$ECHO_CC"
- ECHO_LD="$ECHO_LD"
-+SHOW_CC="$SHOW_LD"
-
- EOF
-
-@@ -15431,7 +17264,7 @@
- "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:15434: error: invalid argument: $ac_config_target" >&5
-+ *) { { echo "$as_me:17267: error: invalid argument: $ac_config_target" >&5
- echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
- esac
-@@ -15490,6 +17323,7 @@
- s,@bindir@,$bindir,;t t
- s,@sbindir@,$sbindir,;t t
- s,@libexecdir@,$libexecdir,;t t
-+s,@datarootdir@,$datarootdir,;t t
- s,@datadir@,$datadir,;t t
- s,@sysconfdir@,$sysconfdir,;t t
- s,@sharedstatedir@,$sharedstatedir,;t t
-@@ -15529,6 +17363,7 @@
- s,@ac_ct_CC@,$ac_ct_CC,;t t
- 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,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
-@@ -15541,6 +17376,7 @@
- s,@MAKE_LOWER_TAGS@,$MAKE_LOWER_TAGS,;t t
- s,@MAKE_UPPER_TAGS@,$MAKE_UPPER_TAGS,;t t
- s,@MATH_LIB@,$MATH_LIB,;t t
-+s,@top_builddir@,$top_builddir,;t t
- s,@CC_G_OPT@,$CC_G_OPT,;t t
- s,@CC_SHARED_OPTS@,$CC_SHARED_OPTS,;t t
- s,@DFT_DEP_SUFFIX@,$DFT_DEP_SUFFIX,;t t
-@@ -15561,25 +17397,30 @@
- s,@TEST_ARGS@,$TEST_ARGS,;t t
- s,@TEST_DEPS@,$TEST_DEPS,;t t
- s,@TEST_LIBS@,$TEST_LIBS,;t t
--s,@TINFO_ARGS@,$TINFO_ARGS,;t t
-+s,@TINFO_LDFLAGS@,$TINFO_LDFLAGS,;t t
-+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,@EXTRA_CPPFLAGS@,$EXTRA_CPPFLAGS,;t t
-+s,@includesubdir@,$includesubdir,;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
- 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,@EXTRA_CFLAGS@,$EXTRA_CFLAGS,;t t
-+s,@NCURSES_WRAP_PREFIX@,$NCURSES_WRAP_PREFIX,;t t
- s,@NCURSES_CONFIG@,$NCURSES_CONFIG,;t t
--s,@PKG_CONFIG@,$PKG_CONFIG,;t t
--s,@ac_pt_PKG_CONFIG@,$ac_pt_PKG_CONFIG,;t t
-+s,@ac_ct_NCURSES_CONFIG@,$ac_ct_NCURSES_CONFIG,;t t
- s,@X_CFLAGS@,$X_CFLAGS,;t t
- s,@X_PRE_LIBS@,$X_PRE_LIBS,;t t
- s,@X_LIBS@,$X_LIBS,;t t
- s,@X_EXTRA_LIBS@,$X_EXTRA_LIBS,;t t
- s,@XCURSES_CONFIG@,$XCURSES_CONFIG,;t t
--s,@NCURSES_WRAP_PREFIX@,$NCURSES_WRAP_PREFIX,;t t
-+s,@ac_ct_XCURSES_CONFIG@,$ac_ct_XCURSES_CONFIG,;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
- CEOF
-
- EOF
-@@ -15694,7 +17535,7 @@
- esac
-
- if test x"$ac_file" != x-; then
-- { echo "$as_me:15697: creating $ac_file" >&5
-+ { echo "$as_me:17538: creating $ac_file" >&5
- echo "$as_me: creating $ac_file" >&6;}
- rm -f "$ac_file"
- fi
-@@ -15712,7 +17553,7 @@
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
-- test -f "$f" || { { echo "$as_me:15715: error: cannot find input file: $f" >&5
-+ test -f "$f" || { { echo "$as_me:17556: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo $f;;
-@@ -15725,13 +17566,45 @@
- echo $srcdir/$f
- else
- # /dev/null tree
-- { { echo "$as_me:15728: error: cannot find input file: $f" >&5
-+ { { echo "$as_me:17569: 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
-+ 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`
-+ if test -n "$ac_seen"; then
-+ ac_used=`grep '@datarootdir@' $ac_item`
-+ if test -z "$ac_used"; then
-+ { echo "$as_me:17585: 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`
-+ if test -n "$ac_seen"; then
-+ { echo "$as_me:17594: 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;}
-+ ac_warn_datarootdir=yes
-+ fi
-+ done
-+ fi
-+
-+if test "x$ac_warn_datarootdir" = xyes; then
-+ ac_sed_cmds="$ac_sed_cmds | sed -e 's,@datarootdir@,\${prefix}/share,g' -e 's,\${datarootdir},\${prefix}/share,g'"
-+fi
-+
-+EOF
- cat >>$CONFIG_STATUS <<EOF
- sed "$ac_vpsub
- $extrasub
-@@ -15746,11 +17619,35 @@
- " $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
- rm -f $tmp/stdin
- if test x"$ac_file" != x-; then
-- mv $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`
-+ if test -n "$ac_seen"; then
-+ ac_init=`egrep '[ ]*'$ac_name'[ ]*=' $ac_file`
-+ if test -z "$ac_init"; then
-+ ac_seen=`echo "$ac_seen" |sed -e 's,^,'$ac_file':,'`
-+ { echo "$as_me:17631: 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
-+ if test -s $tmp/out; then
-+ ac_seen=`sed -e 's,^,'$ac_file':,' < $tmp/out`
-+ { echo "$as_me:17642: WARNING: Some variables may not be substituted:
-+$ac_seen" >&5
-+echo "$as_me: WARNING: Some variables may not be substituted:
-+$ac_seen" >&2;}
-+ fi
- else
- cat $tmp/out
-- rm -f $tmp/out
- fi
-+ rm -f $tmp/out
-
- done
- EOF
-@@ -15791,7 +17688,7 @@
- * ) ac_file_in=$ac_file.in ;;
- esac
-
-- test x"$ac_file" != x- && { echo "$as_me:15794: creating $ac_file" >&5
-+ test x"$ac_file" != x- && { echo "$as_me:17691: creating $ac_file" >&5
- echo "$as_me: creating $ac_file" >&6;}
-
- # First look for the input files in the build tree, otherwise in the
-@@ -15802,7 +17699,7 @@
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
-- test -f "$f" || { { echo "$as_me:15805: error: cannot find input file: $f" >&5
-+ test -f "$f" || { { echo "$as_me:17702: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo $f;;
-@@ -15815,7 +17712,7 @@
- echo $srcdir/$f
- else
- # /dev/null tree
-- { { echo "$as_me:15818: error: cannot find input file: $f" >&5
-+ { { echo "$as_me:17715: error: cannot find input file: $f" >&5
- echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- fi;;
-@@ -15873,7 +17770,7 @@
- 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:15876: $ac_file is unchanged" >&5
-+ { echo "$as_me:17773: $ac_file is unchanged" >&5
- echo "$as_me: $ac_file is unchanged" >&6;}
- else
- ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-@@ -15949,7 +17846,8 @@
- \$(MODEL)/$N.o : \$(srcdir)/$N.c \\
- \$(srcdir)/test.priv.h \\
- ncurses_cfg.h
-- @echo compiling $N; \$(CC) -c \$(CFLAGS_DEFAULT) \$(srcdir)/$N.c
-+ $SHOW_CC
-+ $ECHO_CC\$(CC) -c \$(CFLAGS_DEFAULT) \$(srcdir)/$N.c
- TEST_EOF
- done
-
-Index: test/configure.in
-Prereq: 1.90
---- ncurses-5.9/test/configure.in 2011-03-22 09:15:08.000000000 +0000
-+++ ncurses-5.9-20141206/test/configure.in 2014-09-20 21:03:23.000000000 +0000
-@@ -1,5 +1,5 @@
- dnl***************************************************************************
--dnl Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+dnl Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
- dnl *
- dnl Permission is hereby granted, free of charge, to any person obtaining a *
- dnl copy of this software and associated documentation files (the *
-@@ -28,7 +28,7 @@
- dnl
- dnl Author: Thomas E. Dickey 1996, etc.
- dnl
--dnl $Id: configure.in,v 1.90 2011/03/22 09:15:08 tom Exp $
-+dnl $Id: configure.in,v 1.117 2014/09/20 21:03:23 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)
-@@ -38,7 +38,7 @@
- dnl
- dnl See http://invisible-island.net/autoconf/ for additional information.
- dnl ---------------------------------------------------------------------------
--AC_PREREQ(2.13.20020210)
-+AC_PREREQ(2.52.20030208)
- AC_INIT(ncurses.c)
- AC_CONFIG_HEADER(ncurses_cfg.h:ncurses_tst.hin)
-
-@@ -49,17 +49,18 @@
- AC_ARG_PROGRAM
-
- AC_PROG_MAKE_SET
--AC_PROG_CC
-+CF_PROG_CC
- AC_PROG_CPP
- AC_PROG_AWK
- CF_PROG_INSTALL
- CF_PROG_LINT
- CF_MAKE_TAGS
-
--CF_MATH_LIB(MATH_LIB,sin(x))
-+CF_MATH_LIB(MATH_LIB,pow(sin(x),x))
- AC_SUBST(MATH_LIB)
-
- dnl Things that we don't need (or must override) if we're not building ncurses
-+CF_TOP_BUILDDIR
- CC_G_OPT="-g" AC_SUBST(CC_G_OPT)
- CC_SHARED_OPTS=unknown AC_SUBST(CC_SHARED_OPTS)
- CPPFLAGS="$CPPFLAGS" AC_SUBST(CPPFLAGS)
-@@ -81,9 +82,11 @@
- TEST_ARGS="" AC_SUBST(TEST_ARGS)
- TEST_DEPS="" AC_SUBST(TEST_DEPS)
- TEST_LIBS="" AC_SUBST(TEST_LIBS)
--TINFO_ARGS='$(LIBS_CURSES)' AC_SUBST(TINFO_ARGS)
-+TINFO_LDFLAGS='' AC_SUBST(TINFO_LDFLAGS)
-+TINFO_LIBS='$(LIBS_CURSES)' AC_SUBST(TINFO_LIBS)
- cf_cv_abi_version="" AC_SUBST(cf_cv_abi_version)
- cf_cv_rel_version="" AC_SUBST(cf_cv_rel_version)
-+includesubdir="" AC_SUBST(includesubdir)
-
- cf_cv_screen=curses
- cf_cv_libtype=
-@@ -91,55 +94,38 @@
- AC_EXEEXT
- AC_OBJEXT
-
--CF_ANSI_CC_REQD
- CF_GCC_ATTRIBUTES
- CF_XOPEN_SOURCE
--AC_C_CONST
- CF_SIG_ATOMIC_T
-
-+dnl ---------------------------------------------------------------------------
-+CF_HELP_MESSAGE(General Options:)
-+CF_PKG_CONFIG
- CF_DISABLE_ECHO
--CF_ENABLE_WARNINGS
-
--CF_DISABLE_LEAKS
--CF_WITH_CURSES_DIR
-+dnl ---------------------------------------------------------------------------
-+CF_HELP_MESSAGE(Curses Version-dependent Options:)
-+CF_NCURSES_WRAP_PREFIX
-
--dnl SunOS 4.x
--AC_ARG_WITH(5lib,
-- [ --with-5lib use SunOS sysv-libraries],
-- [LIBS="-L/usr/5lib $LIBS"
-- CPPFLAGS="$CPPFLAGS -I/usr/5include"])
-+AC_MSG_CHECKING(if you want to check for wide-character functions)
-+CF_ARG_DISABLE(widec,
-+ [ --disable-widec disable checks for wide-character functions],
-+ cf_enable_widec=no,
-+ cf_enable_widec=yes,
-+ yes)
-+AC_MSG_RESULT($cf_enable_widec)
-
- dnl ---------------------------------------------------------------------------
--dnl NcursesW, installed in conventional location
--AC_ARG_WITH(ncursesw,
-- [ --with-ncursesw use wide ncurses-libraries (installed)],
-- [cf_cv_screen=ncursesw],[
--
--dnl Ncurses, installed in conventional location
--AC_ARG_WITH(ncurses,
-- [ --with-ncurses use ncurses-libraries (installed)],
-- [cf_cv_screen=ncurses],[
--
--AC_ARG_WITH(pdcurses,
-- [ --with-pdcurses compile/link with pdcurses X11 library],
-- [cf_cv_screen=pdcurses])])])
-+CF_HELP_MESSAGE(Curses Version-dependent Options:)
-+CF_WITH_NCURSES_ETC
-
- case $cf_cv_screen in
--curses)
-- CF_CURSES_CONFIG
-+curses|curses_*)
- CF_NETBSD_FORM_H
- CF_NETBSD_MENU_H
- ;;
--ncurses)
-- CF_NCURSES_CONFIG
-- ;;
- ncursesw)
- cf_cv_libtype=w
-- CF_UTF8_LIB
-- CF_NCURSES_CONFIG(ncursesw)
-- ;;
--pdcurses) #(vi
-- CF_PDCURSES_X11
- ;;
- esac
-
-@@ -153,9 +139,12 @@
- ;;
- *)
- # look for curses-related libraries
-- AC_CHECK_LIB(panel$cf_cv_libtype,new_panel)
-- AC_CHECK_LIB(menu$cf_cv_libtype,menu_driver)
-- AC_CHECK_LIB(form$cf_cv_libtype,form_driver)
-+ : ${cf_panel_lib:=panel}
-+ : ${cf_menu_lib:=menu}
-+ : ${cf_form_lib:=form}
-+ AC_CHECK_LIB($cf_panel_lib$cf_cv_libtype,new_panel)
-+ AC_CHECK_LIB($cf_menu_lib$cf_cv_libtype,menu_driver)
-+ AC_CHECK_LIB($cf_form_lib$cf_cv_libtype,form_driver)
-
- # look for curses-related headers
- AC_CHECK_HEADERS( \
-@@ -169,8 +158,6 @@
- ;;
- esac
-
--AC_TYPE_SIGNAL
--
- AC_STDC_HEADERS
- AC_HEADER_TIME
- AC_CHECK_HEADERS( \
-@@ -185,20 +172,32 @@
- unistd.h \
- )
-
-+CF_GETOPT_HEADER
-+
- AC_CHECK_FUNCS( \
-+getopt \
- gettimeofday \
-+)
-+
-+if test "x$ac_cv_func_getopt" = xno; then
-+ AC_MSG_ERROR(getopt is required for building programs)
-+fi
-+
-+if test "$cf_enable_widec" = yes; then
-+AC_CHECK_FUNCS( \
- mblen \
- mbrlen \
- mbrtowc \
- mbsrtowcs \
- mbstowcs \
- mbtowc \
--strdup \
- wcsrtombs \
- wcstombs \
- )
-+fi
-
- CF_CURSES_FUNCS( \
-+assume_default_colors \
- chgat \
- color_set \
- filter \
-@@ -225,61 +224,108 @@
- tigetstr \
- typeahead \
- use_default_colors \
--vw_printw \
-+use_env \
-+use_extended_names \
-+use_screen \
-+use_window \
-+vid_puts \
-+vidputs \
- vsscanf \
-+vw_printw \
- wchgat \
- winsstr \
- wresize \
- wsyncdown \
- )
-
-+CF_TPUTS_PROTO
- CF_NCURSES_EXT_FUNCS
-
--AC_CACHE_CHECK(for wide-character functions,cf_cv_widechar_funcs,[
--AC_TRY_LINK([
-+if test "$cf_enable_widec" = yes
-+then
-+ # workaround for systems with ncurses before 20111029, due to change of
-+ # feature test macro from _XPG5 to _XOPEN_SOURCE
-+ if test -n "$cf_cv_ncurses_version" && test "x$cf_cv_ncurses_version" != xno
-+ then
-+ cf_define_xpg5=no
-+ AC_MSG_CHECKING(if _XPG5 should be defined to enable wide-characters)
-+
-+ AC_TRY_COMPILE([
-+#include <${cf_cv_ncurses_header:-curses.h}>],
-+ [int x = _XPG5],,
-+ [cf_save_cppflags="$CPPFLAGS"
-+ CPPFLAGS="$CPPFLAGS -D_XPG5"
-+ AC_TRY_COMPILE([
-+#include <${cf_cv_ncurses_header:-curses.h}>],
-+ [int x = _XPG5],
-+ [cf_define_xpg5=yes])
-+ CPPFLAGS="$cf_save_cppflags"])
-+ AC_MSG_RESULT($cf_define_xpg5)
-+
-+ if test "$cf_define_xpg5" = yes
-+ then
-+ CPPFLAGS="$CPPFLAGS -D_XPG5"
-+ fi
-+ fi
-+
-+ AC_CACHE_CHECK(for wide-character functions,cf_cv_widechar_funcs,[
-+ AC_TRY_LINK([
- #include <${cf_cv_ncurses_header:-curses.h}>],
--[
-- static wchar_t src_wchar[2];
-- static cchar_t dst_cchar;
-- setcchar(&dst_cchar, src_wchar, A_NORMAL, 0, (void *) 0);
-- ],
-- [cf_cv_widechar_funcs=yes],
-- [cf_cv_widechar_funcs=no])
--])
--if test "$cf_cv_widechar_funcs" != no ; then
-- AC_DEFINE(USE_WIDEC_SUPPORT,1)
-+ [
-+ static wchar_t src_wchar[2];
-+ static cchar_t dst_cchar;
-+ setcchar(&dst_cchar, src_wchar, A_NORMAL, 0, (void *) 0);
-+ ],
-+ [cf_cv_widechar_funcs=yes],
-+ [cf_cv_widechar_funcs=no])
-+ ])
-+ if test "$cf_cv_widechar_funcs" != no ; then
-+ AC_DEFINE(USE_WIDEC_SUPPORT,1,[Define to 1 to enable wide-character support in (n)curses])
-+ else
-+ AC_DEFINE(USE_WIDEC_SUPPORT,0)
-+ fi
- else
- AC_DEFINE(USE_WIDEC_SUPPORT,0)
- fi
-
--AC_FUNC_VFORK
- CF_SYS_TIME_SELECT
- CF_FUNC_CURSES_VERSION
--CF_CURSES_ACS_MAP
--CF_CURSES_WACS_MAP
--CF_CURSES_WACS_SYMBOLS
--
--CF_CURSES_CHECK_TYPE(attr_t,long)
-
--CF_WCHAR_TYPE(mbstate_t, NCURSES_MBSTATE_T, NCURSES_OK_MBSTATE_T)
--CF_WCHAR_TYPE(wchar_t, NCURSES_WCHAR_T, NCURSES_OK_WCHAR_T)
--CF_WCHAR_TYPE(wint_t, NCURSES_WINT_T, NCURSES_OK_WINT_T)
--
--if test "$NCURSES_OK_MBSTATE_T" = 0 ; then
-- CF_CURSES_CHECK_TYPE(mbstate_t,long)
-+CF_CURSES_ACS_MAP
-+if test "$cf_enable_widec" = yes; then
-+ CF_CURSES_WACS_MAP
-+ CF_CURSES_WACS_SYMBOLS
- fi
-
--if test "$NCURSES_OK_WCHAR_T" = 0 ; then
-- CF_CURSES_CHECK_TYPE(wchar_t,long)
--fi
-+CF_CURSES_CHECK_TYPE(attr_t,long)
-
--if test "$NCURSES_OK_WINT_T" = 0 ; then
-- CF_CURSES_CHECK_TYPE(wint_t,long)
-+if test "$cf_enable_widec" = yes; then
-+ CF_WCHAR_TYPE(mbstate_t, NCURSES_MBSTATE_T, NCURSES_OK_MBSTATE_T)
-+ CF_WCHAR_TYPE(wchar_t, NCURSES_WCHAR_T, NCURSES_OK_WCHAR_T)
-+ CF_WCHAR_TYPE(wint_t, NCURSES_WINT_T, NCURSES_OK_WINT_T)
-+
-+ if test "$NCURSES_OK_MBSTATE_T" = 0 ; then
-+ CF_CURSES_CHECK_TYPE(mbstate_t,long)
-+ fi
-+
-+ if test "$NCURSES_OK_WCHAR_T" = 0 ; then
-+ CF_CURSES_CHECK_TYPE(wchar_t,long)
-+ fi
-+
-+ if test "$NCURSES_OK_WINT_T" = 0 ; then
-+ CF_CURSES_CHECK_TYPE(wint_t,long)
-+ fi
- fi
-
- CF_CURSES_CHECK_DATA(boolnames)
- CF_CURSES_CHECK_DATA(boolfnames)
-
-+dnl ---------------------------------------------------------------------------
-+CF_HELP_MESSAGE(Testing/development Options:)
-+CF_ENABLE_WARNINGS
-+CF_DISABLE_LEAKS
-+CF_DISABLE_RPATH_HACK
-+
- TEST_ARGS="$LIBS"
- LIBS=
-
-@@ -302,7 +348,8 @@
- \$(MODEL)/$N.o : \$(srcdir)/$N.c \\
- \$(srcdir)/test.priv.h \\
- ncurses_cfg.h
-- @echo compiling $N; \$(CC) -c \$(CFLAGS_DEFAULT) \$(srcdir)/$N.c
-+ $SHOW_CC
-+ $ECHO_CC\$(CC) -c \$(CFLAGS_DEFAULT) \$(srcdir)/$N.c
- TEST_EOF
- done
-
-@@ -317,5 +364,7 @@
- fi
- ],[
- AWK="$AWK"
-+ECHO_CC="$ECHO_CC"
- ECHO_LD="$ECHO_LD"
-+SHOW_CC="$SHOW_LD"
- ],cat)
-Index: test/demo_defkey.c
-Prereq: 1.20
---- ncurses-5.9/test/demo_defkey.c 2010-11-14 00:59:35.000000000 +0000
-+++ ncurses-5.9-20141206/test/demo_defkey.c 2013-09-28 22:02:17.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2012,2013 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: demo_defkey.c,v 1.20 2010/11/14 00:59:35 tom Exp $
-+ * $Id: demo_defkey.c,v 1.22 2013/09/28 22:02:17 tom Exp $
- *
- * Demonstrate the define_key() function.
- * Thomas Dickey - 2002/11/23
-@@ -106,7 +106,7 @@
- for (pass = 0; pass < 2; ++pass) {
- for (n = 0; string[n] != '\0'; ++n) {
- char temp[80];
-- strcpy(temp, visichar(string[n]));
-+ strncpy(temp, visichar(string[n]), sizeof(temp) - 2);
- if (pass)
- strcat(result, temp);
- else
-@@ -116,7 +116,7 @@
- result = typeCalloc(char, need);
- }
- } else {
-- result = typeCalloc(char, 1);
-+ result = typeCalloc(char, (size_t) 1);
- }
- return result;
- }
-@@ -186,9 +186,9 @@
- const char *prefix = 0;
- char temp[BUFSIZ];
-
-- if (!strncmp(value, "\033[", 2)) {
-+ if (!strncmp(value, "\033[", (size_t) 2)) {
- prefix = "\033O";
-- } else if (!strncmp(value, "\033O", 2)) {
-+ } else if (!strncmp(value, "\033O", (size_t) 2)) {
- prefix = "\033[";
- }
- if (prefix != 0) {
-Index: test/demo_forms.c
-Prereq: 1.38
---- ncurses-5.9/test/demo_forms.c 2011-01-15 18:15:11.000000000 +0000
-+++ ncurses-5.9-20141206/test/demo_forms.c 2014-10-10 00:38:00.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2003-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2003-2013,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: demo_forms.c,v 1.38 2011/01/15 18:15:11 tom Exp $
-+ * $Id: demo_forms.c,v 1.50 2014/10/10 00:38:00 tom Exp $
- *
- * Demonstrate a variety of functions from the form library.
- * Thomas Dickey - 2003/4/26
-@@ -70,14 +70,116 @@
-
- #include <edit_field.h>
-
-+typedef struct {
-+ char *name;
-+ char *value;
-+} MY_DATA;
-+
-+static MY_DATA *my_data;
-+
- static int d_option = 0;
- static int j_value = 0;
- static int m_value = 0;
- static int o_value = 0;
- static char *t_value = 0;
-
-+static void
-+failed(const char *s)
-+{
-+ perror(s);
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
-+static void
-+chomp(char *value)
-+{
-+ size_t have = strlen(value);
-+ while (have != 0 && (value[have - 1] == '\n' || value[have - 1] == '\r')) {
-+ value[--have] = '\0';
-+ }
-+}
-+
-+static int
-+trimmed(const char *value)
-+{
-+ int result = (int) strlen(value);
-+ while (result > 0 && isspace(UChar(value[result - 1]))) {
-+ --result;
-+ }
-+ return result;
-+}
-+
-+static char *
-+get_data(const char *name)
-+{
-+ char *result = t_value;
-+ if (my_data != 0) {
-+ int n;
-+ for (n = 0; my_data[n].name != 0; ++n) {
-+ if (!strcmp(name, my_data[n].name)) {
-+ result = my_data[n].value;
-+ break;
-+ }
-+ }
-+ }
-+ return result;
-+}
-+
-+/*
-+ * Read (possibly) multi-line data with name+value pairs.
-+ */
-+static void
-+read_data(const char *filename)
-+{
-+ FILE *fp = fopen(filename, "r");
-+
-+ if (fp != 0) {
-+ char buffer[BUFSIZ];
-+ char *colon;
-+ int more = 0;
-+ int item = 0;
-+
-+ my_data = typeCalloc(MY_DATA, (size_t) 100); /* FIXME */
-+ while (fgets(buffer, sizeof(buffer), fp) != 0) {
-+ chomp(buffer);
-+ if (more) {
-+ if (strcmp(buffer, ".")) {
-+ char *prior = my_data[more - 1].value;
-+ size_t need = strlen(buffer) + 2 + strlen(prior);
-+ char *value = typeRealloc(char, need, prior);
-+ if (value == 0)
-+ failed("realloc");
-+ strcat(value, "\n");
-+ strcat(value, buffer);
-+ my_data[more - 1].value = value;
-+ } else {
-+ more = 0;
-+ }
-+ } else if (*buffer == '#') {
-+ continue;
-+ } else if ((colon = strchr(buffer, ':')) != 0) {
-+ char *name;
-+ char *value;
-+ *colon++ = '\0';
-+ name = strdup(buffer);
-+ value = strdup(colon);
-+ if (name == 0 || value == 0)
-+ failed("strdup");
-+ my_data[item].name = name;
-+ my_data[item].value = value;
-+ more = ++item;
-+ } else {
-+ failed("expected a colon");
-+ }
-+ }
-+ fclose(fp);
-+ } else {
-+ failed(filename);
-+ }
-+}
-+
- static FIELD *
--make_label(int frow, int fcol, NCURSES_CONST char *label)
-+make_label(const char *label, int frow, int fcol)
- {
- FIELD *f = new_field(1, (int) strlen(label), frow, fcol, 0, 0);
-
-@@ -92,13 +194,11 @@
- * Define each field with an extra one, for reflecting "actual" text.
- */
- static FIELD *
--make_field(int frow, int fcol, int rows, int cols)
-+make_field(const char *label, int frow, int fcol, int rows, int cols)
- {
- FIELD *f = new_field(rows, cols, frow, fcol, o_value, 1);
-
- if (f) {
-- FieldAttrs *ptr;
--
- set_field_back(f, A_UNDERLINE);
- /*
- * If -j and -d options are combined, -j loses. It is documented in
-@@ -108,8 +208,8 @@
- set_field_just(f, j_value);
- if (d_option) {
- if (has_colors()) {
-- set_field_fore(f, COLOR_PAIR(2));
-- set_field_back(f, A_UNDERLINE | COLOR_PAIR(3));
-+ set_field_fore(f, (chtype) COLOR_PAIR(2));
-+ set_field_back(f, (A_UNDERLINE | (chtype) COLOR_PAIR(3)));
- } else {
- set_field_fore(f, A_BOLD);
- }
-@@ -121,17 +221,7 @@
- set_max_field(f, m_value);
- }
-
-- /*
-- * The userptr is used in edit_field.c's inactive_field().
-- */
-- ptr = (FieldAttrs *) field_userptr(f);
-- if (ptr == 0) {
-- ptr = typeCalloc(FieldAttrs, 1);
-- ptr->background = field_back(f);
-- }
-- set_field_userptr(f, (void *) ptr);
-- if (t_value)
-- set_field_buffer(f, 0, t_value);
-+ init_edit_field(f, get_data(label));
- }
- return (f);
- }
-@@ -153,10 +243,10 @@
- set_form_sub(f, derwin(w, rows, cols, 1, 2));
- box(w, 0, 0);
- keypad(w, TRUE);
-- }
-
-- if (post_form(f) != E_OK)
-- wrefresh(w);
-+ if (post_form(f) != E_OK)
-+ wrefresh(w);
-+ }
- }
-
- static void
-@@ -257,7 +347,7 @@
- int currow, curcol;
-
- if (has_colors()) {
-- wbkgd(win, COLOR_PAIR(1));
-+ wbkgd(win, (chtype) COLOR_PAIR(1));
- }
- werase(win);
- form_getyx(form, currow, curcol);
-@@ -309,25 +399,28 @@
- }
-
- waddch(win, ' ');
-- (void) wattrset(win, field_fore(field));
-+ (void) wattrset(win, AttrArg(field_fore(field), 0));
- waddstr(win, "fore");
-- wattroff(win, field_fore(field));
-+ wattroff(win, (int) field_fore(field));
-
- waddch(win, '/');
-
-- (void) wattrset(win, field_back(field));
-+ (void) wattrset(win, AttrArg(field_back(field), 0));
- waddstr(win, "back");
-- wattroff(win, field_back(field));
-+ wattroff(win, (int) field_back(field));
-
-- wprintw(win, ", pad '%c'",
-- field_pad(field));
-+ wprintw(win, ", pad '%c'", field_pad(field));
-
- waddstr(win, "\n");
- for (nbuf = 0; nbuf <= 2; ++nbuf) {
- if ((buffer = field_buffer(field, nbuf)) != 0) {
- wprintw(win, "buffer %d:", nbuf);
- (void) wattrset(win, A_REVERSE);
-- waddstr(win, buffer);
-+ if (nbuf) {
-+ waddnstr(win, buffer, trimmed(buffer));
-+ } else {
-+ waddstr(win, buffer);
-+ }
- wattroff(win, A_REVERSE);
- waddstr(win, "\n");
- }
-@@ -341,11 +434,12 @@
- {
- WINDOW *w;
- FORM *form;
-- FIELD *f[100]; /* FIXME memset to zero */
-+ FIELD *f[100]; /* will memset to zero */
- int finished = 0, c;
- unsigned n = 0;
- int pg;
- WINDOW *also;
-+ const char *fname;
-
- #ifdef NCURSES_MOUSE_VERSION
- mousemask(ALL_MOUSE_EVENTS, (mmask_t *) 0);
-@@ -363,66 +457,76 @@
- for (pg = 0; pg < 4; ++pg) {
- char label[80];
- sprintf(label, "Sample Form Page %d", pg + 1);
-- f[n++] = make_label(0, 15, label);
-+ f[n++] = make_label(label, 0, 15);
- set_new_page(f[n - 1], TRUE);
-
- switch (pg) {
- default:
-- f[n++] = make_label(2, 0, "Last Name");
-- f[n++] = make_field(3, 0, 1, 18);
-+ fname = "Last Name";
-+ f[n++] = make_label(fname, 2, 0);
-+ f[n++] = make_field(fname, 3, 0, 1, 18);
- set_field_type(f[n - 1], TYPE_ALPHA, 1);
-
-- f[n++] = make_label(2, 20, "First Name");
-- f[n++] = make_field(3, 20, 1, 12);
-+ fname = "First Name";
-+ f[n++] = make_label(fname, 2, 20);
-+ f[n++] = make_field(fname, 3, 20, 1, 12);
- set_field_type(f[n - 1], TYPE_ALPHA, 1);
-
-- f[n++] = make_label(2, 34, "Middle Name");
-- f[n++] = make_field(3, 34, 1, 12);
-+ fname = "Middle Name";
-+ f[n++] = make_label(fname, 2, 34);
-+ f[n++] = make_field(fname, 3, 34, 1, 12);
- set_field_type(f[n - 1], TYPE_ALPHA, 1);
- break;
- case 1:
-- f[n++] = make_label(2, 0, "Last Name");
-- f[n++] = make_field(3, 0, 1, 18);
-+ fname = "Last Name";
-+ f[n++] = make_label(fname, 2, 0);
-+ f[n++] = make_field(fname, 3, 0, 1, 18);
- set_field_type(f[n - 1], TYPE_ALPHA, 1);
-
-- f[n++] = make_label(2, 20, "First Name");
-- f[n++] = make_field(3, 20, 1, 12);
-+ fname = "First Name";
-+ f[n++] = make_label(fname, 2, 20);
-+ f[n++] = make_field(fname, 3, 20, 1, 12);
- set_field_type(f[n - 1], TYPE_ALPHA, 1);
-
-- f[n++] = make_label(2, 34, "MI");
-- f[n++] = make_field(3, 34, 1, 1);
-+ fname = "MI";
-+ f[n++] = make_label(fname, 2, 34);
-+ f[n++] = make_field(fname, 3, 34, 1, 1);
- set_field_pad(f[n - 1], '?');
- set_field_type(f[n - 1], TYPE_ALPHA, 1);
- break;
- case 2:
-- f[n++] = make_label(2, 0, "Host Name");
-- f[n++] = make_field(3, 0, 1, 18);
-+ fname = "Host Name";
-+ f[n++] = make_label(fname, 2, 0);
-+ f[n++] = make_field(fname, 3, 0, 1, 24);
- set_field_type(f[n - 1], TYPE_ALNUM, 1);
-
- #ifdef NCURSES_VERSION
-- f[n++] = make_label(2, 20, "IP Address");
-- f[n++] = make_field(3, 20, 1, 12);
-+ fname = "IP Address";
-+ f[n++] = make_label(fname, 2, 26);
-+ f[n++] = make_field(fname, 3, 26, 1, 16);
- set_field_type(f[n - 1], TYPE_IPV4, 1);
- #endif
-
- break;
-
- case 3:
-- f[n++] = make_label(2, 0, "Four digits");
-- f[n++] = make_field(3, 0, 1, 18);
-+ fname = "Four digits";
-+ f[n++] = make_label(fname, 2, 0);
-+ f[n++] = make_field(fname, 3, 0, 1, 18);
- set_field_type(f[n - 1], TYPE_INTEGER, 4, 0, 0);
-
-- f[n++] = make_label(2, 20, "Numeric");
-- f[n++] = make_field(3, 20, 1, 12);
-+ fname = "Numeric";
-+ f[n++] = make_label(fname, 2, 20);
-+ f[n++] = make_field(fname, 3, 20, 1, 12);
- set_field_type(f[n - 1], TYPE_NUMERIC, 3, -10000.0, 100000000.0);
-
- break;
- }
-
-- f[n++] = make_label(5, 0, "Comments");
-- f[n++] = make_field(6, 0, 4, 46);
-- set_field_buffer(f[n - 1], 0, "HELLO\nWORLD!");
-- set_field_buffer(f[n - 1], 1, "Hello\nWorld!");
-+ fname = "Comments";
-+ f[n++] = make_label(fname, 5, 0);
-+ f[n++] = make_field(fname, 6, 0, 4, 46);
-+ init_edit_field(f[n - 1], get_data(fname));
- }
-
- f[n] = (FIELD *) 0;
-@@ -471,7 +575,7 @@
- {
- static const char *tbl[] =
- {
-- "Usage: demo_forms [options]"
-+ "Usage: demo_forms [options] [data file]"
- ,""
- ," -d make fields dynamic"
- ," -j value justify (1=left, 2=center, 3=right)"
-@@ -517,6 +621,9 @@
-
- }
- }
-+ while (optind < argc) {
-+ read_data(argv[optind++]);
-+ }
-
- initscr();
- cbreak();
-@@ -531,7 +638,7 @@
- init_pair(1, COLOR_WHITE, COLOR_BLUE);
- init_pair(2, COLOR_GREEN, COLOR_BLACK);
- init_pair(3, COLOR_CYAN, COLOR_BLACK);
-- bkgd(COLOR_PAIR(1));
-+ bkgd((chtype) COLOR_PAIR(1));
- refresh();
- }
-
-@@ -540,6 +647,7 @@
- endwin();
- ExitProgram(EXIT_SUCCESS);
- }
-+
- #else
- int
- main(void)
-Index: test/demo_forms.txt
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/test/demo_forms.txt 2013-06-08 14:10:15.000000000 +0000
-@@ -0,0 +1,20 @@
-+# $Id: demo_forms.txt,v 1.3 2013/06/08 14:10:15 tom Exp $
-+First Name:John
-+.
-+Middle Name:Don
-+.
-+MI:D
-+.
-+Last Name:Smith
-+.
-+Comments:Hello
-+World!
-+.
-+Host Name:localhost@localdomain
-+.
-+IP Address:192.168.1.100
-+.
-+Four digits:1234
-+.
-+Numeric:32768
-+.
-Index: test/demo_menus.c
-Prereq: 1.32
---- ncurses-5.9/test/demo_menus.c 2011-01-15 20:02:47.000000000 +0000
-+++ ncurses-5.9-20141206/test/demo_menus.c 2014-09-05 08:34:06.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2005-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2005-2013,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: demo_menus.c,v 1.32 2011/01/15 20:02:47 tom Exp $
-+ * $Id: demo_menus.c,v 1.54 2014/09/05 08:34:06 tom Exp $
- *
- * Demonstrate a variety of functions from the menu library.
- * Thomas Dickey - 2005/4/9
-@@ -38,7 +38,6 @@
- item_opts_off -
- item_opts_on -
- item_term -
--item_userptr -
- item_visible -
- menu_back -
- menu_fore -
-@@ -49,22 +48,16 @@
- menu_pad -
- menu_request_by_name -
- menu_request_name -
--menu_sub -
- menu_term -
- menu_userptr -
- set_current_item -
--set_item_init -
- set_item_opts -
--set_item_term -
--set_item_userptr -
- set_menu_grey -
--set_menu_init -
- set_menu_items -
- set_menu_opts -
- set_menu_pad -
- set_menu_pattern -
- set_menu_spacing -
--set_menu_term -
- set_menu_userptr -
- set_top_row -
- top_row -
-@@ -103,23 +96,23 @@
-
- #define MENU_Y 1
-
-+typedef struct {
-+ NCURSES_CONST char *name;
-+ void (*func) (int);
-+ unsigned mask;
-+} MENU_DATA;
-+
-+static void call_files(int);
-+
- static MENU *mpBanner;
- static MENU *mpFile;
- static MENU *mpSelect;
-
-+static WINDOW *status;
-+
- static bool loaded_file = FALSE;
-
--#if !HAVE_STRDUP
--#define strdup my_strdup
--static char *
--strdup(char *s)
--{
-- char *p = typeMalloc(char, strlen(s) + 1);
-- if (p)
-- strcpy(p, s);
-- return (p);
--}
--#endif /* not HAVE_STRDUP */
-+static char empty[1];
-
- /* Common function to allow ^T to toggle trace-mode in the middle of a test
- * so that trace-files can be made smaller.
-@@ -207,6 +200,48 @@
- return result;
- }
-
-+static void
-+my_menu_init(MENU * menu)
-+{
-+ Trace(("called MenuHook my_menu_init"));
-+ mvwprintw(status, 2, 0, "menu_init %p", (void *) menu);
-+ wclrtoeol(status);
-+ wrefresh(status);
-+}
-+
-+static void
-+my_menu_term(MENU * menu)
-+{
-+ Trace(("called MenuHook my_menu_term"));
-+ mvwprintw(status, 2, 0, "menu_term %p", (void *) menu);
-+ wclrtoeol(status);
-+ wrefresh(status);
-+}
-+
-+static void
-+my_item_init(MENU * menu)
-+{
-+ ITEM *item = current_item(menu);
-+ const char *name = item_name(item);
-+
-+ Trace(("called MenuHook my_item_init (%s)", name));
-+ mvwprintw(status, 2, 0, "item_init %s", name);
-+ wclrtoeol(status);
-+ wrefresh(status);
-+}
-+
-+static void
-+my_item_term(MENU * menu)
-+{
-+ ITEM *item = current_item(menu);
-+ const char *name = item_name(item);
-+
-+ Trace(("called MenuHook my_item_term (%s)", name));
-+ mvwprintw(status, 2, 0, "item_term %s", name);
-+ wclrtoeol(status);
-+ wrefresh(status);
-+}
-+
- static MENU *
- menu_create(ITEM ** items, int count, int ncols, MenuNo number)
- {
-@@ -225,8 +260,8 @@
- result = new_menu(items);
-
- if (has_colors()) {
-- set_menu_fore(result, COLOR_PAIR(1));
-- set_menu_back(result, COLOR_PAIR(2));
-+ set_menu_fore(result, (chtype) COLOR_PAIR(1));
-+ set_menu_back(result, (chtype) COLOR_PAIR(2));
- }
-
- set_menu_format(result, maxrow, maxcol);
-@@ -252,6 +287,10 @@
-
- post_menu(result);
-
-+ set_menu_init(result, my_menu_init);
-+ set_menu_term(result, my_menu_term);
-+ set_item_init(result, my_item_init);
-+ set_item_term(result, my_item_term);
- return result;
- }
-
-@@ -278,15 +317,18 @@
- if ((count > 0) && (m == mpSelect)) {
- if (blob && loaded_file) {
- Trace(("freeing blob %p", blob));
-- free((char *) blob);
-+ free((void *) blob);
- }
- free(items);
-+ items = 0;
- }
- #ifdef TRACE
- if ((count > 0) && (m == mpTrace)) {
- ITEM **ip = items;
-- while (*ip)
-- free(*ip++);
-+ if (ip != 0) {
-+ while (*ip)
-+ free(*ip++);
-+ }
- }
- #endif
- }
-@@ -305,21 +347,24 @@
- static void
- build_file_menu(MenuNo number)
- {
-- static CONST_MENUS char *labels[] =
-+ static MENU_DATA table[] =
- {
-- "Exit",
-- (char *) 0
-+ {"Exit", call_files, 0},
-+ {(char *) 0, 0, 0}
- };
-- static ITEM *items[SIZEOF(labels)];
-+ static ITEM *items[SIZEOF(table)];
-
- ITEM **ip = items;
-- CONST_MENUS char **ap;
-+ int n;
-
-- for (ap = labels; *ap; ap++)
-- *ip++ = new_item(*ap, "");
-+ for (n = 0; table[n].name != 0; ++n) {
-+ *ip = new_item(table[n].name, empty);
-+ set_item_userptr(*ip, (void *) &table[n]);
-+ ++ip;
-+ }
- *ip = (ITEM *) 0;
-
-- mpFile = menu_create(items, SIZEOF(labels) - 1, 1, number);
-+ mpFile = menu_create(items, SIZEOF(table) - 1, 1, number);
- }
-
- static int
-@@ -331,31 +376,40 @@
- /*****************************************************************************/
-
- static void
-+call_select(int code)
-+{
-+ (void) code;
-+ Trace(("Selected item %d", code));
-+}
-+
-+static void
- build_select_menu(MenuNo number, char *filename)
- {
-- static CONST_MENUS char *labels[] =
-+#define MY_DATA(name) { name, call_select, 0 }
-+ static MENU_DATA table[] =
- {
-- "Lions",
-- "Tigers",
-- "Bears",
-- "(Oh my!)",
-- "Newts",
-- "Platypi",
-- "Lemurs",
-- "(Oh really?!)",
-- "Leopards",
-- "Panthers",
-- "Pumas",
-- "Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs",
-- "Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs, Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs",
-- (char *) 0
-+ MY_DATA("Lions"),
-+ MY_DATA("Tigers"),
-+ MY_DATA("Bears"),
-+ MY_DATA("(Oh my!)"),
-+ MY_DATA("Newts"),
-+ MY_DATA("Platypi"),
-+ MY_DATA("Lemurs"),
-+ MY_DATA("(Oh really?!)"),
-+ MY_DATA("Leopards"),
-+ MY_DATA("Panthers"),
-+ MY_DATA("Pumas"),
-+ MY_DATA("Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs"),
-+ MY_DATA("Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs, Lions, Tigers, Bears, (Oh my!), Newts, Platypi, Lemurs"),
-+ {(char *) 0, 0, 0}
- };
- static ITEM **items;
-
- ITEM **ip;
-- CONST_MENUS char **ap = 0;
-- CONST_MENUS char **myList = 0;
-- unsigned count = 0;
-+ MENU_DATA *ap = 0;
-+ MENU_DATA *myList = 0;
-+ int i;
-+ size_t count = 0;
-
- if (filename != 0) {
- struct stat sb;
-@@ -365,7 +419,7 @@
- size_t size = (size_t) sb.st_size;
- unsigned j, k;
- char *blob = typeMalloc(char, size + 1);
-- CONST_MENUS char **list = typeCalloc(CONST_MENUS char *, size + 1);
-+ MENU_DATA *list = typeCalloc(MENU_DATA, size + 1);
-
- items = typeCalloc(ITEM *, size + 1);
- Trace(("build_select_menu blob=%p, items=%p",
-@@ -378,19 +432,19 @@
- bool mark = TRUE;
- for (j = k = 0; j < size; ++j) {
- if (mark) {
-- list[k++] = blob + j;
-+ list[k++].name = blob + j;
- mark = FALSE;
- }
- if (blob[j] == '\n') {
- blob[j] = '\0';
-- if (k > 0 && *list[k - 1] == '\0')
-+ if (k > 0 && *list[k - 1].name == '\0')
- --k;
- mark = TRUE;
- } else if (blob[j] == '\t') {
- blob[j] = ' '; /* menu items are printable */
- }
- }
-- list[k] = 0;
-+ list[k].name = 0;
- count = k;
- ap = myList = list;
- }
-@@ -398,17 +452,24 @@
- }
- loaded_file = TRUE;
- }
-+ if (ap == 0)
-+ free(items);
- }
- }
- if (ap == 0) {
-- count = SIZEOF(labels) - 1;
-+ count = SIZEOF(table) - 1;
- items = typeCalloc(ITEM *, count + 1);
-- ap = labels;
-+ ap = table;
- }
-
- ip = items;
-- while (*ap != 0)
-- *ip++ = new_item(*ap++, "");
-+ for (i = 0; ap[i].name != 0; ++i) {
-+ ap[i].func = call_select;
-+ ap[i].mask = (unsigned) i;
-+ *ip = new_item(ap[i].name, empty);
-+ set_item_userptr(*ip, (void *) &table[i]);
-+ ++ip;
-+ }
- *ip = 0;
-
- mpSelect = menu_create(items, (int) count, 1, number);
-@@ -425,30 +486,36 @@
- /*****************************************************************************/
-
- #ifdef TRACE
--#define T_TBL(name) { #name, name }
--static struct {
-- const char *name;
-- unsigned mask;
--} t_tbl[] = {
-+
-+static void
-+call_trace(int code)
-+{
-+ (void) code;
-+ Trace(("Updating trace mask %d", code));
-+}
-+
-+#define T_TBL(name) { #name, call_trace, name }
-+static MENU_DATA t_tbl[] =
-+{
-
- T_TBL(TRACE_DISABLE),
-- T_TBL(TRACE_TIMES),
-- T_TBL(TRACE_TPUTS),
-- T_TBL(TRACE_UPDATE),
-- T_TBL(TRACE_MOVE),
-- T_TBL(TRACE_CHARPUT),
-- T_TBL(TRACE_ORDINARY),
-- T_TBL(TRACE_CALLS),
-- T_TBL(TRACE_VIRTPUT),
-- T_TBL(TRACE_IEVENT),
-- T_TBL(TRACE_BITS),
-- T_TBL(TRACE_ICALLS),
-- T_TBL(TRACE_CCALLS),
-- T_TBL(TRACE_DATABASE),
-- T_TBL(TRACE_ATTRS),
-- T_TBL(TRACE_MAXIMUM),
-+ T_TBL(TRACE_TIMES),
-+ T_TBL(TRACE_TPUTS),
-+ T_TBL(TRACE_UPDATE),
-+ T_TBL(TRACE_MOVE),
-+ T_TBL(TRACE_CHARPUT),
-+ T_TBL(TRACE_ORDINARY),
-+ T_TBL(TRACE_CALLS),
-+ T_TBL(TRACE_VIRTPUT),
-+ T_TBL(TRACE_IEVENT),
-+ T_TBL(TRACE_BITS),
-+ T_TBL(TRACE_ICALLS),
-+ T_TBL(TRACE_CCALLS),
-+ T_TBL(TRACE_DATABASE),
-+ T_TBL(TRACE_ATTRS),
-+ T_TBL(TRACE_MAXIMUM),
- {
-- (char *) 0, 0
-+ (char *) 0, 0, 0
- }
- };
-
-@@ -460,8 +527,11 @@
- ITEM **ip = items;
- int n;
-
-- for (n = 0; t_tbl[n].name != 0; n++)
-- *ip++ = new_item(t_tbl[n].name, "");
-+ for (n = 0; t_tbl[n].name != 0; n++) {
-+ *ip = new_item(t_tbl[n].name, empty);
-+ set_item_userptr(*ip, (void *) &t_tbl[n]);
-+ ++ip;
-+ }
- *ip = (ITEM *) 0;
-
- mpTrace = menu_create(items, SIZEOF(t_tbl) - 1, 2, number);
-@@ -527,7 +597,8 @@
- int result;
-
- for (ip = menu_items(mpTrace); *ip; ip++) {
-- unsigned mask = t_tbl[item_index(*ip)].mask;
-+ MENU_DATA *td = (MENU_DATA *) item_userptr(*ip);
-+ unsigned mask = td->mask;
- if (mask == 0)
- set_item_value(*ip, _nc_tracing == 0);
- else if ((mask & _nc_tracing) == mask)
-@@ -540,15 +611,17 @@
- if (update_trace_menu(mpTrace) || cmd == REQ_TOGGLE_ITEM) {
- newtrace = 0;
- for (ip = menu_items(mpTrace); *ip; ip++) {
-- if (item_value(*ip))
-- newtrace |= t_tbl[item_index(*ip)].mask;
-+ if (item_value(*ip)) {
-+ MENU_DATA *td = (MENU_DATA *) item_userptr(*ip);
-+ newtrace |= td->mask;
-+ }
- }
- trace(newtrace);
- Trace(("trace level interactively set to %s", tracetrace(_nc_tracing)));
-
-- MvPrintw(LINES - 2, 0,
-- "Trace level is %s\n", tracetrace(_nc_tracing));
-- refresh();
-+ MvWPrintw(status, 1, 0,
-+ "Trace level is %s\n", tracetrace(_nc_tracing));
-+ wrefresh(status);
- }
- }
- return result;
-@@ -588,27 +661,37 @@
- }
-
- static void
-+call_menus(int code)
-+{
-+ (void) code;
-+ Trace(("Activated menu %d\n", code));
-+}
-+
-+static void
- build_menus(char *filename)
- {
-- static CONST_MENUS char *labels[] =
-+ static MENU_DATA table[] =
- {
-- "File",
-- "Select",
-+ {"File", call_menus, 0},
-+ {"Select", call_menus, 1},
- #ifdef TRACE
-- "Trace",
-+ {"Trace", call_menus, 2},
- #endif
-- (char *) 0
-+ {(char *) 0, 0, 0}
- };
-- static ITEM *items[SIZEOF(labels)];
-+ static ITEM *items[SIZEOF(table)];
-
- ITEM **ip = items;
-- CONST_MENUS char **ap;
-+ int n;
-
-- for (ap = labels; *ap; ap++)
-- *ip++ = new_item(*ap, "");
-+ for (n = 0; table[n].name != 0; ++n) {
-+ *ip = new_item(table[n].name, empty);
-+ set_item_userptr(*ip, (void *) &table[n]);
-+ ++ip;
-+ }
- *ip = (ITEM *) 0;
-
-- mpBanner = menu_create(items, SIZEOF(labels) - 1, SIZEOF(labels) - 1, eBanner);
-+ mpBanner = menu_create(items, SIZEOF(table) - 1, SIZEOF(table) - 1, eBanner);
- set_menu_mark(mpBanner, ">");
-
- build_file_menu(eFile);
-@@ -671,14 +754,14 @@
- static void
- show_status(int ch, MENU * menu)
- {
-- move(LINES - 1, 0);
-- printw("key %s, menu %d, mark %s, match %s",
-- keyname(ch),
-- menu_number(),
-- menu_mark(menu),
-- menu_pattern(menu));
-- clrtoeol();
-- refresh();
-+ wmove(status, 0, 0);
-+ wprintw(status, "key %s, menu %d, mark %s, match %s",
-+ keyname(ch),
-+ menu_number(),
-+ menu_mark(menu),
-+ menu_pattern(menu));
-+ wclrtoeol(status);
-+ wrefresh(status);
- }
-
- static void
-@@ -777,9 +860,9 @@
- wrefresh(menu_win(last_menu));
- if (code == E_UNKNOWN_COMMAND
- || code == E_NOT_POSTED) {
-- if (menu_number() == eFile)
-- break;
-- beep();
-+ ITEM *item = current_item(last_menu);
-+ MENU_DATA *td = (MENU_DATA *) item_userptr(item);
-+ td->func((int) td->mask);
- }
- if (code == E_REQUEST_DENIED)
- beep();
-@@ -827,11 +910,23 @@
- #endif /* HAVE_RIPOFFLINE */
-
- static void
-+call_files(int code)
-+{
-+ switch (code) {
-+ case 0:
-+ destroy_menus();
-+ endwin();
-+ printf("DONE!\n");
-+ ExitProgram(EXIT_SUCCESS);
-+ }
-+}
-+
-+static void
- usage(void)
- {
- static const char *const tbl[] =
- {
-- "Usage: demo_menus [options]"
-+ "Usage: demo_menus [options] [menu-file]"
- ,""
- ,"Options:"
- #if HAVE_RIPOFFLINE
-@@ -867,7 +962,7 @@
- #endif /* HAVE_RIPOFFLINE */
- #ifdef TRACE
- case 't':
-- trace(strtoul(optarg, 0, 0));
-+ trace((unsigned) strtoul(optarg, 0, 0));
- break;
- #endif
- default:
-@@ -885,6 +980,7 @@
- init_pair(1, COLOR_RED, COLOR_BLACK);
- init_pair(2, COLOR_BLUE, COLOR_WHITE);
- }
-+ status = newwin(3, COLS, LINES - 3, 0);
- build_menus(argc > 1 ? argv[1] : 0);
- perform_menus();
- destroy_menus();
-Index: test/demo_panels.c
-Prereq: 1.37
---- ncurses-5.9/test/demo_panels.c 2010-05-01 22:19:02.000000000 +0000
-+++ ncurses-5.9-20141206/test/demo_panels.c 2014-08-02 17:24:07.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2007-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2007-2010,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: demo_panels.c,v 1.37 2010/05/01 22:19:02 tom Exp $
-+ * $Id: demo_panels.c,v 1.38 2014/08/02 17:24:07 tom Exp $
- *
- * Demonstrate a variety of functions from the panel library.
- */
-@@ -406,7 +406,7 @@
- {
- wchar_t source[2];
-
-- source[0] = digit + 0xff10;
-+ source[0] = (wchar_t) (digit + 0xff10);
- source[1] = 0;
- setcchar(target, source, A_NORMAL, 0, 0);
- }
-Index: test/demo_termcap.c
-Prereq: 1.14
---- ncurses-5.9/test/demo_termcap.c 2011-01-15 21:41:27.000000000 +0000
-+++ ncurses-5.9-20141206/test/demo_termcap.c 2014-10-10 00:35:43.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2005-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2005-2013,2014 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 *
-@@ -29,12 +29,29 @@
- /*
- * Author: Thomas E. Dickey
- *
-- * $Id: demo_termcap.c,v 1.14 2011/01/15 21:41:27 tom Exp $
-+ * $Id: demo_termcap.c,v 1.46 2014/10/10 00:35:43 tom Exp $
- *
- * A simple demo of the termcap interface.
- */
- #define USE_TINFO
- #include <test.priv.h>
-+#include <sys/stat.h>
-+
-+#if NCURSES_XNAMES
-+#if HAVE_TERM_ENTRY_H
-+#include <term_entry.h>
-+#else
-+#undef NCURSES_XNAMES
-+#define NCURSES_XNAMES 0
-+#endif
-+#endif
-+
-+static void
-+failed(const char *msg)
-+{
-+ fprintf(stderr, "%s\n", msg);
-+ ExitProgram(EXIT_FAILURE);
-+}
-
- #if HAVE_TGETENT
-
-@@ -47,13 +64,103 @@
- #define FCOLS 8
- #define FNAME(type) "%s %-*s = ", #type, FCOLS
-
--#if USE_CODE_LISTS
- static bool b_opt = FALSE;
- static bool n_opt = FALSE;
- static bool s_opt = FALSE;
--#endif
-+static bool q_opt = FALSE;
-+static bool x_opt = FALSE;
-+static bool y_opt = FALSE;
-+
-+static char *d_opt;
-+static char *e_opt;
-+static char **db_list;
-+static int db_item;
-+
-+static char *my_blob;
-+static char **my_boolcodes;
-+static char **my_numcodes;
-+static char **my_numvalues;
-+static char **my_strcodes;
-+static char **my_strvalues;
-+
-+static long total_values;
-+static long total_b_values;
-+static long total_n_values;
-+static long total_s_values;
-+
-+#define isCapName(c) (isgraph(c) && strchr("^=:\\", c) == 0)
-+#define EachCapName(n) n = 33; n < 127; ++n
-+
-+static char *
-+make_dbitem(char *p, char *q)
-+{
-+ char *result = malloc(strlen(e_opt) + 2 + (size_t) (p - q));
-+ sprintf(result, "%s=%.*s", e_opt, (int) (p - q), q);
-+ return result;
-+}
-+
-+static void
-+make_dblist(void)
-+{
-+ if (d_opt && e_opt) {
-+ int pass;
-+
-+ for (pass = 0; pass < 2; ++pass) {
-+ char *p, *q;
-+ size_t count = 0;
-+
-+ for (p = q = d_opt; *p != '\0'; ++p) {
-+ if (*p == ':') {
-+ if (p != q + 1) {
-+ if (pass) {
-+ db_list[count] = make_dbitem(p, q);
-+ }
-+ count++;
-+ }
-+ q = p + 1;
-+ }
-+ }
-+ if (p != q + 1) {
-+ if (pass) {
-+ db_list[count] = make_dbitem(p, q);
-+ }
-+ count++;
-+ }
-+ if (!pass) {
-+ db_list = typeCalloc(char *, count + 1);
-+ }
-+ }
-+ }
-+}
-
--#define isCapName(c) (isgraph(c) && strchr("^#=:\\", c) == 0)
-+static char *
-+next_dbitem(void)
-+{
-+ char *result = 0;
-+
-+ if (db_list) {
-+ if ((result = db_list[db_item]) == 0) {
-+ db_item = 0;
-+ result = db_list[0];
-+ } else {
-+ db_item++;
-+ }
-+ }
-+ printf("** %s\n", result);
-+ return result;
-+}
-+
-+static void
-+free_dblist(void)
-+{
-+ if (db_list) {
-+ int n;
-+ for (n = 0; db_list[n]; ++n)
-+ free(db_list[n]);
-+ free(db_list);
-+ db_list = 0;
-+ }
-+}
-
- static void
- dumpit(NCURSES_CONST char *cap)
-@@ -70,66 +177,80 @@
- int num;
-
- if ((str = tgetstr(cap, &ap)) != 0) {
-- /*
-- * Note that the strings returned are mostly terminfo format, since
-- * ncurses does not convert except for a handful of special cases.
-- */
-- printf(FNAME(str), cap);
-- while (*str != 0) {
-- int ch = UChar(*str++);
-- switch (ch) {
-- case '\177':
-- fputs("^?", stdout);
-- break;
-- case '\033':
-- fputs("\\E", stdout);
-- break;
-- case '\b':
-- fputs("\\b", stdout);
-- break;
-- case '\f':
-- fputs("\\f", stdout);
-- break;
-- case '\n':
-- fputs("\\n", stdout);
-- break;
-- case '\r':
-- fputs("\\r", stdout);
-- break;
-- case ' ':
-- fputs("\\s", stdout);
-- break;
-- case '\t':
-- fputs("\\t", stdout);
-- break;
-- case '^':
-- fputs("\\^", stdout);
-- break;
-- case ':':
-- fputs("\\072", stdout);
-- break;
-- case '\\':
-- fputs("\\\\", stdout);
-- break;
-- default:
-- if (isgraph(ch))
-- fputc(ch, stdout);
-- else if (ch < 32)
-- printf("^%c", ch + '@');
-- else
-- printf("\\%03o", ch);
-- break;
-+ total_values++;
-+ total_s_values++;
-+ if (!q_opt) {
-+ /*
-+ * Note that the strings returned are mostly terminfo format, since
-+ * ncurses does not convert except for a handful of special cases.
-+ */
-+ printf(FNAME(str), cap);
-+ while (*str != 0) {
-+ int ch = UChar(*str++);
-+ switch (ch) {
-+ case '\177':
-+ fputs("^?", stdout);
-+ break;
-+ case '\033':
-+ fputs("\\E", stdout);
-+ break;
-+ case '\b':
-+ fputs("\\b", stdout);
-+ break;
-+ case '\f':
-+ fputs("\\f", stdout);
-+ break;
-+ case '\n':
-+ fputs("\\n", stdout);
-+ break;
-+ case '\r':
-+ fputs("\\r", stdout);
-+ break;
-+ case ' ':
-+ fputs("\\s", stdout);
-+ break;
-+ case '\t':
-+ fputs("\\t", stdout);
-+ break;
-+ case '^':
-+ fputs("\\^", stdout);
-+ break;
-+ case ':':
-+ fputs("\\072", stdout);
-+ break;
-+ case '\\':
-+ fputs("\\\\", stdout);
-+ break;
-+ default:
-+ if (isgraph(ch))
-+ fputc(ch, stdout);
-+ else if (ch < 32)
-+ printf("^%c", ch + '@');
-+ else
-+ printf("\\%03o", ch);
-+ break;
-+ }
- }
-+ printf("\n");
- }
-- printf("\n");
- } else if ((num = tgetnum(cap)) >= 0) {
-- printf(FNAME(num), cap);
-- printf(" %d\n", num);
-+ total_values++;
-+ total_n_values++;
-+ if (!q_opt) {
-+ printf(FNAME(num), cap);
-+ printf(" %d\n", num);
-+ }
- } else if (tgetflag(cap) > 0) {
-- printf(FNAME(flg), cap);
-- printf("%s\n", "true");
-+ total_values++;
-+ total_b_values++;
-+ if (!q_opt) {
-+ printf(FNAME(flg), cap);
-+ printf("%s\n", "true");
-+ }
- }
-- fflush(stdout);
-+
-+ if (!q_opt)
-+ fflush(stdout);
- }
-
- static void
-@@ -137,16 +258,20 @@
- {
- char buffer[1024];
-
-- printf("Terminal type %s\n", name);
-+ if (db_list) {
-+ putenv(next_dbitem());
-+ }
-+ if (!q_opt)
-+ printf("Terminal type \"%s\"\n", name);
- if (tgetent(buffer, name) >= 0) {
- char cap[3];
- int c1, c2;
-
- cap[2] = 0;
-- for (c1 = 0; c1 < 256; ++c1) {
-+ for (EachCapName(c1)) {
- cap[0] = (char) c1;
- if (isCapName(c1)) {
-- for (c2 = 0; c2 < 256; ++c2) {
-+ for (EachCapName(c2)) {
- cap[1] = (char) c2;
- if (isCapName(c2)) {
- dumpit(cap);
-@@ -157,54 +282,422 @@
- }
- }
-
--#if USE_CODE_LISTS
-+#if NCURSES_XNAMES
- static void
--demo_terminfo(NCURSES_CONST char *name)
-+dump_xname(NCURSES_CONST char *cap)
-+{
-+ if (strlen(cap) == 2)
-+ dumpit(cap);
-+}
-+#endif
-+
-+static void
-+demo_termcap(NCURSES_CONST char *name)
- {
- unsigned n;
- NCURSES_CONST char *cap;
-+ char buffer[1024];
-
-- printf("Terminal type \"%s\"\n", name);
--#if HAVE_SETUPTERM
-- setupterm(name, 1, (int *) 0);
--#else
-- setterm(name);
-+ if (db_list) {
-+ putenv(next_dbitem());
-+ }
-+ if (!q_opt)
-+ printf("Terminal type \"%s\"\n", name);
-+ if (tgetent(buffer, name) >= 0) {
-+
-+ if (b_opt) {
-+ for (n = 0;; ++n) {
-+ cap = my_boolcodes[n];
-+ if (cap == 0)
-+ break;
-+ dumpit(cap);
-+ }
-+ }
-+
-+ if (n_opt) {
-+ for (n = 0;; ++n) {
-+ cap = my_numcodes[n];
-+ if (cap == 0)
-+ break;
-+ dumpit(cap);
-+ }
-+ }
-+
-+ if (s_opt) {
-+ for (n = 0;; ++n) {
-+ cap = my_strcodes[n];
-+ if (cap == 0)
-+ break;
-+ dumpit(cap);
-+ }
-+ }
-+#ifdef NCURSES_VERSION
-+ if (x_opt && (my_blob == 0) && y_opt) {
-+#if NCURSES_XNAMES
-+ TERMTYPE *term = &(cur_term->type);
-+ if (term != 0
-+ && ((NUM_BOOLEANS(term) != BOOLCOUNT)
-+ || (NUM_NUMBERS(term) != NUMCOUNT)
-+ || (NUM_STRINGS(term) != STRCOUNT))) {
-+ for (n = BOOLCOUNT; n < NUM_BOOLEANS(term); ++n) {
-+ dump_xname(ExtBoolname(term, (int) n, boolnames));
-+ }
-+ for (n = NUMCOUNT; n < NUM_NUMBERS(term); ++n) {
-+ dump_xname(ExtNumname(term, (int) n, numnames));
-+ }
-+ for (n = STRCOUNT; n < NUM_STRINGS(term); ++n) {
-+ dump_xname(ExtStrname(term, (int) n, strnames));
-+ }
-+ }
-+#endif
-+ }
- #endif
-+ }
-+}
-+
-+typedef enum {
-+ pDefault = 0
-+ ,pComment
-+ ,pDescription
-+ ,pEscaped
-+ ,pNewline
-+ ,pName
-+ ,pNumber
-+ ,pString
-+} STATE;
-+
-+static void
-+parse_description(const char *input_name)
-+{
-+ static char empty[1];
-+
-+ FILE *fp;
-+ struct stat sb;
-+ size_t count_bools = 0;
-+ size_t count_nums = 0;
-+ size_t count_strs = 0;
-+ size_t len;
-+ size_t j, k;
-+ STATE state;
-+
-+ if (stat(input_name, &sb) != 0
-+ || (sb.st_mode & S_IFMT) != S_IFREG) {
-+ failed("input is not a file");
-+ }
-
-- if (b_opt) {
-- for (n = 0;; ++n) {
-- cap = boolcodes[n];
-- if (cap == 0)
-+ if (sb.st_size == 0) {
-+ failed("input is empty");
-+ }
-+
-+ /*
-+ * None of the arrays could be larger than the input-file, and since it
-+ * is small, just allocate the maximum for simplicity.
-+ */
-+ if ((my_blob = malloc((size_t) sb.st_size + 1)) == 0 ||
-+ (my_boolcodes = typeCalloc(char *, sb.st_size)) == 0 ||
-+ (my_numcodes = typeCalloc(char *, sb.st_size)) == 0 ||
-+ (my_numvalues = typeCalloc(char *, sb.st_size)) == 0 ||
-+ (my_strcodes = typeCalloc(char *, sb.st_size)) == 0 ||
-+ (my_strvalues = typeCalloc(char *, sb.st_size)) == 0) {
-+ failed("cannot allocate memory for input-file");
-+ }
-+
-+ if ((fp = fopen(input_name, "r")) == 0)
-+ failed("cannot open input-file");
-+ len = fread(my_blob, sizeof(char), (size_t) sb.st_size, fp);
-+ my_blob[sb.st_size] = '\0';
-+ fclose(fp);
-+
-+ /*
-+ * First, get rid of comments and escaped newlines, as well as repeated
-+ * colons to construct a canonical entry.
-+ *
-+ * FIXME: actually this should make an additional pass just to strip
-+ * comment-lines and escaped newlines. But it is workable for infocmp
-+ * output.
-+ */
-+ state = pNewline;
-+ for (j = k = 0; j < len; ++j) {
-+ int ch = my_blob[j];
-+ if (ch == '\t') {
-+ ch = ' ';
-+ }
-+ switch (state) {
-+ case pNewline:
-+ if (ch == ' ') {
-+ continue;
-+ }
-+ if (ch == '#') {
-+ state = pComment;
-+ continue;
-+ }
-+ state = pDefault;
-+ /* FALLTHRU */
-+ case pDefault:
-+ switch (ch) {
-+ case '|':
-+ state = pDescription;
-+ continue;
-+ case '\\':
-+ state = pEscaped;
-+ continue;
-+ case '\n':
-+ state = pNewline;
-+ continue;
-+ case ' ':
-+ case ':':
-+ break;
-+ default:
-+ state = pName;
-+ break;
-+ }
-+ my_blob[k++] = (char) ch;
-+ break;
-+ case pComment:
-+ if (ch == '\n')
-+ state = pNewline;
-+ break;
-+ case pDescription:
-+ switch (ch) {
-+ case ':':
-+ state = pDefault;
-+ break;
-+ case '\n':
-+ state = pNewline;
-+ break;
-+ }
-+ break;
-+ case pEscaped:
-+ if (ch != '\n') {
-+ my_blob[k++] = (char) ch;
-+ state = pDefault;
-+ } else {
-+ state = pNewline;
-+ }
-+ break;
-+ case pName:
-+ switch (ch) {
-+ case '\n':
-+ state = pNewline;
-+ continue;
-+ case ' ':
-+ case ':':
-+ state = pDefault;
-+ break;
-+ case '#':
-+ state = pNumber;
-+ break;
-+ case '|':
-+ state = pDescription;
-+ continue;
-+ }
-+ my_blob[k++] = (char) ch;
-+ break;
-+ case pNumber:
-+ switch (ch) {
-+ case '\n':
-+ state = pNewline;
-+ continue;
-+ case ':':
-+ state = pDefault;
- break;
-- dumpit(cap);
-+ case ' ':
-+ state = pDefault;
-+ continue;
-+ }
-+ my_blob[k++] = (char) ch;
-+ break;
-+ case pString:
-+ switch (ch) {
-+ case '\\':
-+ if (my_blob[j + 1] == '\0') {
-+ state = pDefault;
-+ continue;
-+ }
-+ break;
-+ case '\n':
-+ state = pNewline;
-+ continue;
-+ case ':':
-+ state = pDefault;
-+ break;
-+ }
-+ my_blob[k++] = (char) ch;
-+ break;
-+ default:
-+ /* not used */
-+ break;
- }
- }
-+ my_blob[k] = '\0';
-
-- if (n_opt) {
-- for (n = 0;; ++n) {
-- cap = numcodes[n];
-- if (cap == 0)
-+ /*
-+ * Then, parse what's left, making indexes of the names and values.
-+ */
-+ state = pDefault;
-+ for (j = 0; my_blob[j] != '\0'; ++j) {
-+ switch (state) {
-+ case pDefault:
-+ switch (my_blob[j]) {
-+ case '\\':
-+ state = pEscaped;
-+ break;
-+ case ':':
-+ my_blob[j] = '\0';
-+ if (my_blob[j + 1] != '\0' && my_blob[j + 1] != ':')
-+ state = pName;
-+ break;
-+ case ' ':
- break;
-- dumpit(cap);
-+ default:
-+ break;
-+ }
-+ case pEscaped:
-+ break;
-+ case pName:
-+ state = pDefault;
-+ /*
-+ * Commented-out capabilities might be accessible (they are in
-+ * ncurses).
-+ */
-+ if (my_blob[j] == '.' && my_blob[j + 1] == '.') {
-+ j += 2;
-+ }
-+ if (my_blob[j + 1] != '\0') {
-+ switch (my_blob[j + 2]) {
-+ case '#':
-+ my_numvalues[count_nums] = &my_blob[j + 3];
-+ my_numcodes[count_nums++] = &my_blob[j];
-+ my_blob[j + 2] = '\0';
-+ state = pNumber;
-+ j += 2;
-+ break;
-+ case '=':
-+ my_strvalues[count_strs] = &my_blob[j + 3];
-+ my_strcodes[count_strs++] = &my_blob[j];
-+ my_blob[j + 2] = '\0';
-+ state = pString;
-+ j += 2;
-+ break;
-+ default:
-+ if (my_blob[j + 2] == '@') {
-+ /*
-+ * We cannot get the type for a cancelled item
-+ * directly, but can infer it assuming the input
-+ * came from infocmp, which puts the data in a
-+ * known order.
-+ */
-+ if (count_strs) {
-+ my_strvalues[count_strs] = empty;
-+ my_strcodes[count_strs++] = &my_blob[j];
-+ } else if (count_nums) {
-+ my_numvalues[count_nums] = empty;
-+ my_numcodes[count_nums++] = &my_blob[j];
-+ } else {
-+ my_boolcodes[count_bools++] = &my_blob[j];
-+ }
-+ } else {
-+ my_boolcodes[count_bools++] = &my_blob[j];
-+ }
-+ j++;
-+ break;
-+ }
-+ }
-+ break;
-+ case pNumber:
-+ if (!isdigit(UChar(my_blob[j]))) {
-+ --j;
-+ state = pDefault;
-+ }
-+ break;
-+ case pString:
-+ switch (my_blob[j]) {
-+ case '\\':
-+ if (my_blob[j + 1] == '\0') {
-+ state = pDefault;
-+ continue;
-+ } else {
-+ ++j;
-+ }
-+ break;
-+ case '\n':
-+ state = pNewline;
-+ continue;
-+ case ':':
-+ --j;
-+ state = pDefault;
-+ break;
-+ }
-+ break;
-+ case pNewline:
-+ case pComment:
-+ case pDescription:
-+ default:
-+ break;
- }
- }
-+ my_boolcodes[count_bools] = 0;
-+ my_numcodes[count_nums] = 0;
-+ my_numvalues[count_nums] = 0;
-+ my_strcodes[count_strs] = 0;
-+ my_strvalues[count_strs] = 0;
-+
-+#if 0
-+ printf("bools:%d\n", (int) count_bools);
-+ for (j = 0; my_boolcodes[j]; ++j)
-+ printf("%5d:%s\n", (int) j, my_boolcodes[j]);
-+
-+ printf("numbers:%d\n", (int) count_nums);
-+ for (j = 0; my_numcodes[j]; ++j)
-+ printf("%5d:%s(%s)\n", (int) j, my_numcodes[j], my_numvalues[j]);
-+
-+ printf("strings:%d\n", (int) count_strs);
-+ for (j = 0; my_strcodes[j]; ++j)
-+ printf("%5d:%s(%s)\n", (int) j, my_strcodes[j], my_strvalues[j]);
-+#endif
-+}
-
-- if (s_opt) {
-- for (n = 0;; ++n) {
-- cap = strcodes[n];
-- if (cap == 0)
-- break;
-- dumpit(cap);
-+#if USE_CODE_LISTS
-+static char **
-+copy_code_list(NCURSES_CONST char *const *list)
-+{
-+ int pass;
-+ size_t count;
-+ size_t length = 1;
-+ char **result = 0;
-+ char *blob = 0;
-+ char *unused = 0;
-+
-+ for (pass = 0; pass < 2; ++pass) {
-+ for (count = 0; list[count] != 0; ++count) {
-+ size_t chunk = strlen(list[count]) + 1;
-+ if (pass == 0) {
-+ length += chunk;
-+ } else {
-+ result[count] = unused;
-+ strcpy(unused, list[count]);
-+ unused += chunk;
-+ }
-+ }
-+ if (pass == 0) {
-+ blob = malloc(length);
-+ result = typeCalloc(char *, count + 1);
-+ unused = blob;
-+ if (blob == 0 || result == 0)
-+ failed("copy_code_list failed");
- }
- }
-+
-+ return result;
- }
-+#endif
-
- static void
- usage(void)
- {
- static const char *msg[] =
- {
-- "Usage: demo_terminfo [options] [terminal]",
-+ "Usage: demo_termcap [options] [terminal]",
- "",
- "If no options are given, print all (boolean, numeric, string)",
- "capabilities for the given terminal, using short names.",
-@@ -212,9 +705,16 @@
- "Options:",
- " -a try all names, print capabilities found",
- " -b print boolean-capabilities",
-+ " -d LIST colon-separated list of databases to use",
-+ " -e NAME environment variable to set with -d option",
-+ " -i NAME terminal description to use as names for \"-a\" option, etc.",
- " -n print numeric-capabilities",
-+ " -q quiet (prints only counts)",
- " -r COUNT repeat for given count",
- " -s print string-capabilities",
-+#ifdef NCURSES_VERSION
-+ " -x print extended capabilities",
-+#endif
- };
- unsigned n;
- for (n = 0; n < SIZEOF(msg); ++n) {
-@@ -222,7 +722,6 @@
- }
- ExitProgram(EXIT_FAILURE);
- }
--#endif
-
- int
- main(int argc, char *argv[])
-@@ -230,12 +729,12 @@
- int n;
- char *name;
- bool a_opt = FALSE;
-+ char *input_name = 0;
-
--#if USE_CODE_LISTS
- int repeat;
- int r_opt = 1;
-
-- while ((n = getopt(argc, argv, "abnr:s")) != -1) {
-+ while ((n = getopt(argc, argv, "abd:e:i:nqr:sxy")) != -1) {
- switch (n) {
- case 'a':
- a_opt = TRUE;
-@@ -243,9 +742,21 @@
- case 'b':
- b_opt = TRUE;
- break;
-+ case 'd':
-+ d_opt = optarg;
-+ break;
-+ case 'e':
-+ e_opt = optarg;
-+ break;
-+ case 'i':
-+ input_name = optarg;
-+ break;
- case 'n':
- n_opt = TRUE;
- break;
-+ case 'q':
-+ q_opt = TRUE;
-+ break;
- case 'r':
- if ((r_opt = atoi(optarg)) <= 0)
- usage();
-@@ -253,49 +764,79 @@
- case 's':
- s_opt = TRUE;
- break;
-+#if NCURSES_XNAMES
-+ case 'x':
-+ x_opt = TRUE;
-+ break;
-+ case 'y':
-+ y_opt = TRUE;
-+ x_opt = TRUE;
-+ break;
-+#endif
- default:
- usage();
- break;
- }
- }
-
-+#if HAVE_USE_EXTENDED_NAMES
-+ use_extended_names(x_opt);
-+#endif
-+
- if (!(b_opt || n_opt || s_opt)) {
- b_opt = TRUE;
- n_opt = TRUE;
- s_opt = TRUE;
- }
--#else
-- a_opt = TRUE;
--#endif
-+
-+ make_dblist();
-
- if (a_opt) {
-- if (optind < argc) {
-- for (n = optind; n < argc; ++n) {
-- brute_force(argv[n]);
-+ for (repeat = 0; repeat < r_opt; ++repeat) {
-+ if (optind < argc) {
-+ for (n = optind; n < argc; ++n) {
-+ brute_force(argv[n]);
-+ }
-+ } else if ((name = getenv("TERM")) != 0) {
-+ brute_force(name);
-+ } else {
-+ static char dumb[] = "dumb";
-+ brute_force(dumb);
- }
-- } else if ((name = getenv("TERM")) != 0) {
-- brute_force(name);
-- } else {
-- static char dumb[] = "dumb";
-- brute_force(dumb);
- }
-- }
-+ } else {
-+ if (input_name != 0) {
-+ parse_description(input_name);
-+ }
- #if USE_CODE_LISTS
-- else {
-+ else {
-+ my_boolcodes = copy_code_list(boolcodes);
-+ my_numcodes = copy_code_list(numcodes);
-+ my_strcodes = copy_code_list(strcodes);
-+ }
-+#else
-+ else {
-+ failed("no capability-lists available (use -i option)");
-+ }
-+#endif /* USE_CODE_LISTS */
- for (repeat = 0; repeat < r_opt; ++repeat) {
- if (optind < argc) {
- for (n = optind; n < argc; ++n) {
-- demo_terminfo(argv[n]);
-+ demo_termcap(argv[n]);
- }
- } else if ((name = getenv("TERM")) != 0) {
-- demo_terminfo(name);
-+ demo_termcap(name);
- } else {
- static char dumb[] = "dumb";
-- demo_terminfo(dumb);
-+ demo_termcap(dumb);
- }
- }
- }
--#endif
-+
-+ printf("%ld values (%ld booleans, %ld numbers, %ld strings)\n",
-+ total_values, total_b_values, total_n_values, total_s_values);
-+
-+ free_dblist();
-
- ExitProgram(EXIT_SUCCESS);
- }
-@@ -305,7 +846,6 @@
- main(int argc GCC_UNUSED,
- char *argv[]GCC_UNUSED)
- {
-- printf("This program requires termcap\n");
-- exit(EXIT_FAILURE);
-+ failed("This program requires termcap");
- }
- #endif
-Index: test/demo_terminfo.c
-Prereq: 1.9
---- ncurses-5.9/test/demo_terminfo.c 2010-11-28 00:15:27.000000000 +0000
-+++ ncurses-5.9-20141206/test/demo_terminfo.c 2014-10-10 00:35:28.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2009-2013,2014 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 *
-@@ -29,123 +29,305 @@
- /*
- * Author: Thomas E. Dickey
- *
-- * $Id: demo_terminfo.c,v 1.9 2010/11/28 00:15:27 tom Exp $
-+ * $Id: demo_terminfo.c,v 1.38 2014/10/10 00:35:28 tom Exp $
- *
- * A simple demo of the terminfo interface.
- */
- #define USE_TINFO
- #include <test.priv.h>
-+#include <sys/stat.h>
-
--#ifdef NCURSES_VERSION
--#if !(defined(HAVE_TERM_ENTRY_H) && HAVE_TERM_ENTRY_H)
--#undef NCURSES_XNAMES
--#define NCURSES_XNAMES 0
--#endif
- #if NCURSES_XNAMES
-+#if HAVE_TERM_ENTRY_H
- #include <term_entry.h>
-+#else
-+#undef NCURSES_XNAMES
-+#define NCURSES_XNAMES 0
- #endif
- #endif
-
-+static void
-+failed(const char *msg)
-+{
-+ fprintf(stderr, "%s\n", msg);
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
- #if HAVE_TIGETSTR
-+
- #if defined(HAVE_CURSES_DATA_BOOLNAMES) || defined(DECL_CURSES_DATA_BOOLNAMES)
-+#define USE_CODE_LISTS 1
-+#else
-+#define USE_CODE_LISTS 0
-+#endif
-
-+static bool a_opt = FALSE;
- static bool b_opt = FALSE;
- static bool f_opt = FALSE;
- static bool n_opt = FALSE;
-+static bool q_opt = FALSE;
- static bool s_opt = FALSE;
- static bool x_opt = FALSE;
-+static bool y_opt = FALSE;
-+
-+static char *d_opt;
-+static char *e_opt;
-+static char **db_list;
-+static int db_item;
-+
-+static char *my_blob;
-+static char **my_boolcodes;
-+static char **my_numcodes;
-+static char **my_numvalues;
-+static char **my_strcodes;
-+static char **my_strvalues;
-+
-+static long total_values;
-+static long total_b_values;
-+static long total_n_values;
-+static long total_s_values;
-
- #define FCOLS 8
- #define FNAME(type) "%s %-*s = ", #type, FCOLS
-
-+static char *
-+make_dbitem(char *p, char *q)
-+{
-+ char *result = malloc(strlen(e_opt) + 2 + (size_t) (p - q));
-+ sprintf(result, "%s=%.*s", e_opt, (int) (p - q), q);
-+ return result;
-+}
-+
-+static void
-+make_dblist(void)
-+{
-+ if (d_opt && e_opt) {
-+ int pass;
-+
-+ for (pass = 0; pass < 2; ++pass) {
-+ char *p, *q;
-+ size_t count = 0;
-+
-+ for (p = q = d_opt; *p != '\0'; ++p) {
-+ if (*p == ':') {
-+ if (p != q + 1) {
-+ if (pass) {
-+ db_list[count] = make_dbitem(p, q);
-+ }
-+ count++;
-+ }
-+ q = p + 1;
-+ }
-+ }
-+ if (p != q + 1) {
-+ if (pass) {
-+ db_list[count] = make_dbitem(p, q);
-+ }
-+ count++;
-+ }
-+ if (!pass) {
-+ db_list = typeCalloc(char *, count + 1);
-+ }
-+ }
-+ }
-+}
-+
-+static char *
-+next_dbitem(void)
-+{
-+ char *result = 0;
-+
-+ if (db_list) {
-+ if ((result = db_list[db_item]) == 0) {
-+ db_item = 0;
-+ result = db_list[0];
-+ } else {
-+ db_item++;
-+ }
-+ }
-+ printf("** %s\n", result);
-+ return result;
-+}
-+
-+#ifdef NO_LEAKS
-+static void
-+free_dblist(void)
-+{
-+ if (db_list) {
-+ int n;
-+ for (n = 0; db_list[n]; ++n)
-+ free(db_list[n]);
-+ free(db_list);
-+ db_list = 0;
-+ }
-+}
-+#endif
-+
- static void
- dumpit(NCURSES_CONST char *cap)
- {
-- /*
-- * One of the limitations of the termcap interface is that the library
-- * cannot determine the size of the buffer passed via tgetstr(), nor the
-- * amount of space remaining. This demo simply reuses the whole buffer
-- * for each call; a normal termcap application would try to use the buffer
-- * to hold all of the strings extracted from the terminal entry.
-- */
- const char *str;
- int num;
-
- if ((str = tigetstr(cap)) != 0 && (str != (char *) -1)) {
-- /*
-- * Note that the strings returned are mostly terminfo format, since
-- * ncurses does not convert except for a handful of special cases.
-- */
-- printf(FNAME(str), cap);
-- while (*str != 0) {
-- int ch = UChar(*str++);
-- switch (ch) {
-- case '\177':
-- fputs("^?", stdout);
-- break;
-- case '\033':
-- fputs("\\E", stdout);
-- break;
-- case '\b':
-- fputs("\\b", stdout);
-- break;
-- case '\f':
-- fputs("\\f", stdout);
-- break;
-- case '\n':
-- fputs("\\n", stdout);
-- break;
-- case '\r':
-- fputs("\\r", stdout);
-- break;
-- case ' ':
-- fputs("\\s", stdout);
-- break;
-- case '\t':
-- fputs("\\t", stdout);
-- break;
-- case '^':
-- fputs("\\^", stdout);
-- break;
-- case ':':
-- fputs("\\072", stdout);
-- break;
-- case '\\':
-- fputs("\\\\", stdout);
-- break;
-- default:
-- if (isgraph(ch))
-- fputc(ch, stdout);
-- else if (ch < 32)
-- printf("^%c", ch + '@');
-- else
-- printf("\\%03o", ch);
-- break;
-+ total_values++;
-+ total_s_values++;
-+ if (!q_opt) {
-+ printf(FNAME(str), cap);
-+ while (*str != 0) {
-+ int ch = UChar(*str++);
-+ switch (ch) {
-+ case '\177':
-+ fputs("^?", stdout);
-+ break;
-+ case '\033':
-+ fputs("\\E", stdout);
-+ break;
-+ case '\b':
-+ fputs("\\b", stdout);
-+ break;
-+ case '\f':
-+ fputs("\\f", stdout);
-+ break;
-+ case '\n':
-+ fputs("\\n", stdout);
-+ break;
-+ case '\r':
-+ fputs("\\r", stdout);
-+ break;
-+ case ' ':
-+ fputs("\\s", stdout);
-+ break;
-+ case '\t':
-+ fputs("\\t", stdout);
-+ break;
-+ case '^':
-+ fputs("\\^", stdout);
-+ break;
-+ case ':':
-+ fputs("\\072", stdout);
-+ break;
-+ case '\\':
-+ fputs("\\\\", stdout);
-+ break;
-+ default:
-+ if (isgraph(ch))
-+ fputc(ch, stdout);
-+ else if (ch < 32)
-+ printf("^%c", ch + '@');
-+ else
-+ printf("\\%03o", ch);
-+ break;
-+ }
- }
-+ printf("\n");
- }
-- printf("\n");
- } else if ((num = tigetnum(cap)) >= 0) {
-- printf(FNAME(num), cap);
-- printf(" %d\n", num);
-+ total_values++;
-+ total_n_values++;
-+ if (!q_opt) {
-+ printf(FNAME(num), cap);
-+ printf(" %d\n", num);
-+ }
- } else if ((num = tigetflag(cap)) >= 0) {
-- printf(FNAME(flg), cap);
-- printf("%s\n", num ? "true" : "false");
-+ total_values++;
-+ total_b_values++;
-+ if (!q_opt) {
-+ printf(FNAME(flg), cap);
-+ printf("%s\n", num ? "true" : "false");
-+ }
- }
-- fflush(stdout);
-+
-+ if (!q_opt)
-+ fflush(stdout);
- }
-
-+#define isCapName(c) (isalnum(UChar(c)) || ((c) == '_'))
-+#define LegalItem(c,n) (n)
-+
-+static void
-+brute_force(const char *name)
-+{
-+#define MAX_FORCE 5 /* omit "colors", since CPU-time is a problem */
-+ static const char legal[] = "\
-+0123456789\
-+ABCDEFGHIJKLMNOPQRSTUVWXYZ\
-+abcdefghijklmnopqrstuvwxyz_";
-+ int length;
-+ int j, k;
-+ bool carry;
-+ bool changed;
-+ char cap[MAX_FORCE + 1];
-+ int item[MAX_FORCE + 1];
-+
-+ if (db_list) {
-+ putenv(next_dbitem());
-+ }
-+ if (!q_opt)
-+ printf("Terminal type \"%s\"\n", name);
-+ setupterm((NCURSES_CONST char *) name, 1, (int *) 0);
-+
-+ for (length = 1; length <= MAX_FORCE; ++length) {
-+ /* set all digits to zeros */
-+ for (j = 0; j < length; ++j) {
-+ item[j] = LegalItem(j, 0);
-+ }
-+
-+ do {
-+ changed = FALSE;
-+ /* copy digits to cap-name */
-+ for (j = 0; j < length; ++j) {
-+ cap[j] = legal[item[j]];
-+ }
-+ cap[length] = '\0';
-+ dumpit(cap);
-+
-+ k = length - 1;
-+ do {
-+ carry = FALSE;
-+ for (; k >= 0; --k) {
-+ item[k] += 1;
-+ if (legal[item[k]]) {
-+ changed = TRUE;
-+ break;
-+ }
-+ if (k > 0 &&
-+ legal[item[k - 1] + 1]) {
-+ for (j = k; j < length; ++j) {
-+ item[j] = LegalItem(j, 0);
-+ }
-+ carry = TRUE;
-+ changed = TRUE;
-+ }
-+ }
-+ } while (carry);
-+ } while (changed);
-+ }
-+ del_curterm(cur_term);
-+}
-+
-+#if USE_CODE_LISTS
-+#define fullname(type,n) f_opt ? type##fnames[n] : my_##type##codes[n]
-+#else
-+#define fullname(type,n) my_##type##codes[n]
-+#endif
-+
- static void
- demo_terminfo(char *name)
- {
- unsigned n;
- NCURSES_CONST char *cap;
-
-- printf("Terminal type \"%s\"\n", name);
-+ if (db_list) {
-+ putenv(next_dbitem());
-+ }
-+ if (!q_opt)
-+ printf("Terminal type \"%s\"\n", name);
- setupterm(name, 1, (int *) 0);
-
- if (b_opt) {
- for (n = 0;; ++n) {
-- cap = f_opt ? boolfnames[n] : boolnames[n];
-+ cap = fullname(bool, n);
- if (cap == 0)
- break;
- dumpit(cap);
-@@ -154,7 +336,7 @@
-
- if (n_opt) {
- for (n = 0;; ++n) {
-- cap = f_opt ? numfnames[n] : numnames[n];
-+ cap = fullname(num, n);
- if (cap == 0)
- break;
- dumpit(cap);
-@@ -163,16 +345,16 @@
-
- if (s_opt) {
- for (n = 0;; ++n) {
-- cap = f_opt ? strfnames[n] : strnames[n];
-+ cap = fullname(str, n);
- if (cap == 0)
- break;
- dumpit(cap);
- }
- }
- #ifdef NCURSES_VERSION
-- if (x_opt) {
-+ if (x_opt && (my_blob == 0)) {
- int mod;
-- if (f_opt) {
-+ if (y_opt) {
- #if NCURSES_XNAMES
- TERMTYPE *term = &(cur_term->type);
- if (term != 0
-@@ -191,7 +373,7 @@
- }
- #endif
- } else {
-- char temp[10];
-+ char temp[80];
- static const char *xterm_keys[] =
- {
- "kDC", "kDN", "kEND", "kHOM", "kIC",
-@@ -199,18 +381,368 @@
- };
- for (n = 0; n < SIZEOF(xterm_keys); ++n) {
- for (mod = 0; mod < 8; ++mod) {
-- if (mod == 0)
-- strcpy(temp, xterm_keys[n]);
-- else
-- sprintf(temp, "%s%d", xterm_keys[n], mod);
-+ if (mod == 0) {
-+ /* these happen to be standard - avoid duplicates */
-+ if (!strcmp(xterm_keys[n], "kDC") ||
-+ !strcmp(xterm_keys[n], "kEND") ||
-+ !strcmp(xterm_keys[n], "kHOM") ||
-+ !strcmp(xterm_keys[n], "kLFT") ||
-+ !strcmp(xterm_keys[n], "kRIT")) {
-+ continue;
-+ }
-+ sprintf(temp, "%.*s", 8, xterm_keys[n]);
-+ } else {
-+ sprintf(temp, "%.*s%d", 8, xterm_keys[n], mod);
-+ }
- dumpit(temp);
- }
- }
- }
- }
- #endif
-+ del_curterm(cur_term);
-+}
-+
-+typedef enum {
-+ pDefault = 0
-+ ,pComment
-+ ,pDescription
-+ ,pEscaped
-+ ,pNewline
-+ ,pName
-+ ,pNumber
-+ ,pString
-+} STATE;
-+
-+static void
-+parse_description(const char *input_name)
-+{
-+ static char empty[1];
-+
-+ FILE *fp;
-+ struct stat sb;
-+ size_t count_bools = 0;
-+ size_t count_nums = 0;
-+ size_t count_strs = 0;
-+ size_t len;
-+ size_t j, k, jl;
-+ STATE state;
-+
-+ if (stat(input_name, &sb) != 0
-+ || (sb.st_mode & S_IFMT) != S_IFREG) {
-+ failed("input is not a file");
-+ }
-+
-+ if (sb.st_size == 0) {
-+ failed("input is empty");
-+ }
-+
-+ /*
-+ * None of the arrays could be larger than the input-file, and since it
-+ * is small, just allocate the maximum for simplicity.
-+ */
-+ if ((my_blob = malloc((size_t) sb.st_size + 1)) == 0 ||
-+ (my_boolcodes = typeCalloc(char *, sb.st_size)) == 0 ||
-+ (my_numcodes = typeCalloc(char *, sb.st_size)) == 0 ||
-+ (my_numvalues = typeCalloc(char *, sb.st_size)) == 0 ||
-+ (my_strcodes = typeCalloc(char *, sb.st_size)) == 0 ||
-+ (my_strvalues = typeCalloc(char *, sb.st_size)) == 0) {
-+ failed("cannot allocate memory for input-file");
-+ }
-+
-+ if ((fp = fopen(input_name, "r")) == 0)
-+ failed("cannot open input-file");
-+ len = fread(my_blob, sizeof(char), (size_t) sb.st_size, fp);
-+ my_blob[sb.st_size] = '\0';
-+ fclose(fp);
-+
-+ /*
-+ * First, get rid of comments and escaped newlines, as well as repeated
-+ * colons to construct a canonical entry.
-+ */
-+ state = pNewline;
-+ for (j = k = 0; j < len; ++j) {
-+ int ch = my_blob[j];
-+ if (ch == '\t') {
-+ ch = ' ';
-+ }
-+ switch (state) {
-+ case pNewline:
-+ if (ch == ' ') {
-+ continue;
-+ }
-+ if (ch == '#') {
-+ state = pComment;
-+ continue;
-+ }
-+ state = pDefault;
-+ /* FALLTHRU */
-+ case pDefault:
-+ switch (ch) {
-+ case '|':
-+ state = pDescription;
-+ continue;
-+ case '\\':
-+ state = pEscaped;
-+ continue;
-+ case '\n':
-+ state = pNewline;
-+ continue;
-+ case ' ':
-+ break;
-+ case ',':
-+ my_blob[k++] = (char) ch;
-+ break;
-+ default:
-+ if (isalpha(UChar(ch)))
-+ state = pName;
-+ else
-+ fprintf(stderr, "OOPS @%d:%.20s\n", __LINE__, my_blob + j);
-+ my_blob[k++] = (char) ch;
-+ break;
-+ }
-+ break;
-+ case pComment:
-+ if (ch == '\n')
-+ state = pNewline;
-+ break;
-+ case pDescription:
-+ switch (ch) {
-+ case ',':
-+ state = pDefault;
-+ break;
-+ case '\n':
-+ state = pNewline;
-+ break;
-+ }
-+ break;
-+ case pEscaped:
-+ if (ch != '\n') {
-+ my_blob[k++] = (char) ch;
-+ state = pDefault;
-+ } else {
-+ state = pNewline;
-+ }
-+ break;
-+ case pName:
-+ switch (ch) {
-+ case '\n':
-+ state = pNewline;
-+ continue;
-+ case ' ':
-+ case ',':
-+ state = pDefault;
-+ break;
-+ case '#':
-+ state = pNumber;
-+ break;
-+ case '=':
-+ state = pString;
-+ break;
-+ case '|':
-+ state = pDescription;
-+ continue;
-+ }
-+ my_blob[k++] = (char) ch;
-+ break;
-+ case pNumber:
-+ switch (ch) {
-+ case '\n':
-+ state = pNewline;
-+ continue;
-+ case ',':
-+ state = pDefault;
-+ break;
-+ case ' ':
-+ state = pDefault;
-+ continue;
-+ }
-+ my_blob[k++] = (char) ch;
-+ break;
-+ case pString:
-+ switch (ch) {
-+ case '\n':
-+ state = pNewline;
-+ break;
-+ case ',':
-+ state = pDefault;
-+ my_blob[k++] = (char) ch;
-+ break;
-+ default:
-+ my_blob[k++] = (char) ch;
-+ break;
-+ }
-+ break;
-+ default:
-+ /* not used */
-+ break;
-+ }
-+ }
-+ my_blob[k] = '\0';
-+
-+ /*
-+ * Then, parse what's left, making indexes of the names and values.
-+ */
-+ state = pDefault;
-+ for (j = 0; my_blob[j] != '\0'; ++j) {
-+ switch (state) {
-+ case pDefault:
-+ switch (my_blob[j]) {
-+ case '\\':
-+ state = pEscaped;
-+ break;
-+ case ',':
-+ my_blob[j] = '\0';
-+ if (my_blob[j + 1] != '\0' && my_blob[j + 1] != ',')
-+ state = pName;
-+ break;
-+ case ' ':
-+ break;
-+ default:
-+ break;
-+ }
-+ case pEscaped:
-+ break;
-+ case pName:
-+ state = pDefault;
-+ if (isalpha(UChar(my_blob[j]))) {
-+ for (jl = 1; isalnum(UChar(my_blob[j + jl])); ++jl) {
-+ ;
-+ }
-+ } else {
-+ jl = 0;
-+ }
-+ if (jl != 0) {
-+ switch (my_blob[j + jl]) {
-+ case '#':
-+ my_numvalues[count_nums] = &my_blob[j + jl + 1];
-+ my_numcodes[count_nums++] = &my_blob[j];
-+ my_blob[j + jl] = '\0';
-+ state = pNumber;
-+ j += jl;
-+ break;
-+ case '=':
-+ my_strvalues[count_strs] = &my_blob[j + jl + 1];
-+ my_strcodes[count_strs++] = &my_blob[j];
-+ my_blob[j + jl] = '\0';
-+ state = pString;
-+ j += jl;
-+ break;
-+ default:
-+ if (my_blob[j + jl] == '@') {
-+ /*
-+ * We cannot get the type for a cancelled item
-+ * directly, but can infer it assuming the input
-+ * came from infocmp, which puts the data in a
-+ * known order.
-+ */
-+ if (count_strs) {
-+ my_strvalues[count_strs] = empty;
-+ my_strcodes[count_strs++] = &my_blob[j];
-+ } else if (count_nums) {
-+ my_numvalues[count_nums] = empty;
-+ my_numcodes[count_nums++] = &my_blob[j];
-+ } else {
-+ my_boolcodes[count_bools++] = &my_blob[j];
-+ }
-+ my_blob[j + jl] = '\0';
-+ j += jl + 1;
-+ } else {
-+ my_boolcodes[count_bools++] = &my_blob[j];
-+ my_blob[j + jl] = '\0';
-+ j += jl;
-+ }
-+ state = (isCapName(my_blob[j + 1])
-+ ? pName
-+ : pDefault);
-+ break;
-+ }
-+ }
-+ break;
-+ case pNumber:
-+ if (!isdigit(UChar(my_blob[j]))) {
-+ --j;
-+ state = pDefault;
-+ }
-+ break;
-+ case pString:
-+ switch (my_blob[j]) {
-+ case '\\':
-+ if (my_blob[j + 1] != '\0') {
-+ ++j;
-+ } else {
-+ --j;
-+ state = pDefault;
-+ }
-+ break;
-+ case ',':
-+ --j;
-+ state = pDefault;
-+ break;
-+ }
-+ break;
-+ case pNewline:
-+ case pComment:
-+ case pDescription:
-+ default:
-+ break;
-+ }
-+ }
-+ my_boolcodes[count_bools] = 0;
-+ my_numcodes[count_nums] = 0;
-+ my_numvalues[count_nums] = 0;
-+ my_strcodes[count_strs] = 0;
-+ my_strvalues[count_strs] = 0;
-+
-+#if 0
-+ printf("# bools:%d\n", (int) count_bools);
-+ for (j = 0; my_boolcodes[j]; ++j)
-+ printf("\t%s,\n", my_boolcodes[j]);
-+
-+ printf("# numbers:%d\n", (int) count_nums);
-+ for (j = 0; my_numcodes[j]; ++j)
-+ printf("\t%s#%s,\n", my_numcodes[j], my_numvalues[j]);
-+
-+ printf("# strings:%d\n", (int) count_strs);
-+ for (j = 0; my_strcodes[j]; ++j)
-+ printf("\t%s=%s,\n", my_strcodes[j], my_strvalues[j]);
-+#endif
-+}
-+
-+#if USE_CODE_LISTS
-+static char **
-+copy_code_list(NCURSES_CONST char *const *list)
-+{
-+ int pass;
-+ size_t count;
-+ size_t length = 1;
-+ char **result = 0;
-+ char *blob = 0;
-+ char *unused = 0;
-+
-+ for (pass = 0; pass < 2; ++pass) {
-+ for (count = 0; list[count] != 0; ++count) {
-+ size_t chunk = strlen(list[count]) + 1;
-+ if (pass == 0) {
-+ length += chunk;
-+ } else {
-+ result[count] = unused;
-+ strcpy(unused, list[count]);
-+ unused += chunk;
-+ }
-+ }
-+ if (pass == 0) {
-+ blob = malloc(length);
-+ result = typeCalloc(char *, count + 1);
-+ unused = blob;
-+ if (blob == 0 || result == 0)
-+ failed("copy_code_list failed");
-+ }
-+ }
-
-+ return result;
- }
-+#endif
-
- static void
- usage(void)
-@@ -223,13 +755,19 @@
- "capabilities for the given terminal, using short names.",
- "",
- "Options:",
-+ " -a try all names, print capabilities found",
- " -b print boolean-capabilities",
-+ " -d LIST colon-separated list of databases to use",
-+ " -e NAME environment variable to set with -d option",
- " -f print full names",
-+ " -i NAME terminal description to use as names for \"-a\" option",
- " -n print numeric-capabilities",
-+ " -q quiet (prints only counts)",
- " -r COUNT repeat for given count",
- " -s print string-capabilities",
- #ifdef NCURSES_VERSION
- " -x print extended capabilities",
-+ " -y direct-lookup names of extended capabilities",
- #endif
- };
- unsigned n;
-@@ -246,18 +784,34 @@
- int repeat;
- char *name;
- int r_opt = 1;
-+ char *input_name = 0;
-
-- while ((n = getopt(argc, argv, "bfnr:sx")) != -1) {
-+ while ((n = getopt(argc, argv, "abd:e:fi:nqr:sxy")) != -1) {
- switch (n) {
-+ case 'a':
-+ a_opt = TRUE;
-+ break;
- case 'b':
- b_opt = TRUE;
- break;
-+ case 'd':
-+ d_opt = optarg;
-+ break;
-+ case 'e':
-+ e_opt = optarg;
-+ break;
- case 'f':
- f_opt = TRUE;
- break;
-+ case 'i':
-+ input_name = optarg;
-+ break;
- case 'n':
- n_opt = TRUE;
- break;
-+ case 'q':
-+ q_opt = TRUE;
-+ break;
- case 'r':
- if ((r_opt = atoi(optarg)) <= 0)
- usage();
-@@ -268,7 +822,10 @@
- #ifdef NCURSES_VERSION
- case 'x':
- x_opt = TRUE;
-- use_extended_names(TRUE);
-+ break;
-+ case 'y':
-+ y_opt = TRUE;
-+ x_opt = TRUE;
- break;
- #endif
- default:
-@@ -277,36 +834,78 @@
- }
- }
-
-- if (!(b_opt || n_opt || s_opt || x_opt)) {
-+#if HAVE_USE_EXTENDED_NAMES
-+ use_extended_names(x_opt);
-+#endif
-+
-+ if (!(b_opt || n_opt || s_opt)) {
- b_opt = TRUE;
- n_opt = TRUE;
- s_opt = TRUE;
- }
-
-- for (repeat = 0; repeat < r_opt; ++repeat) {
-- if (optind < argc) {
-- for (n = optind; n < argc; ++n) {
-- demo_terminfo(argv[n]);
-+ make_dblist();
-+
-+ if (a_opt) {
-+ for (repeat = 0; repeat < r_opt; ++repeat) {
-+ if (optind < argc) {
-+ for (n = optind; n < argc; ++n) {
-+ brute_force(argv[n]);
-+ }
-+ } else if ((name = getenv("TERM")) != 0) {
-+ brute_force(name);
-+ } else {
-+ static char dumb[] = "dumb";
-+ brute_force(dumb);
-+ }
-+ }
-+ } else {
-+ if (input_name != 0) {
-+ parse_description(input_name);
-+ }
-+#if USE_CODE_LISTS
-+ else {
-+ my_boolcodes = copy_code_list(boolnames);
-+ my_numcodes = copy_code_list(numnames);
-+ my_strcodes = copy_code_list(strnames);
-+ }
-+#else
-+ else {
-+ failed("no capability-lists available (use -i option)");
-+ }
-+#endif /* USE_CODE_LISTS */
-+ for (repeat = 0; repeat < r_opt; ++repeat) {
-+ if (optind < argc) {
-+ for (n = optind; n < argc; ++n) {
-+ demo_terminfo(argv[n]);
-+ }
-+ } else if ((name = getenv("TERM")) != 0) {
-+ demo_terminfo(name);
-+ } else {
-+ static char dumb[] = "dumb";
-+ demo_terminfo(dumb);
- }
-- } else if ((name = getenv("TERM")) != 0) {
-- demo_terminfo(name);
-- } else {
-- static char dumb[] = "dumb";
-- demo_terminfo(dumb);
- }
- }
-
-+ printf("%ld values (%ld booleans, %ld numbers, %ld strings)\n",
-+ total_values, total_b_values, total_n_values, total_s_values);
-+
-+#ifdef NO_LEAKS
-+ free_dblist();
-+ if (my_blob != 0) {
-+ free(my_blob);
-+ free(my_boolcodes);
-+ free(my_numcodes);
-+ free(my_numvalues);
-+ free(my_strcodes);
-+ free(my_strvalues);
-+ }
-+#endif
-+
- ExitProgram(EXIT_SUCCESS);
- }
-
--#else
--int
--main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
--{
-- printf("This program requires the terminfo arrays\n");
-- ExitProgram(EXIT_FAILURE);
--}
--#endif
- #else /* !HAVE_TIGETSTR */
- int
- main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
-Index: test/ditto.c
-Prereq: 1.40
---- ncurses-5.9/test/ditto.c 2010-11-14 01:06:47.000000000 +0000
-+++ ncurses-5.9-20141206/test/ditto.c 2012-11-24 20:16:18.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2011,2012 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 *
-@@ -29,7 +29,7 @@
- /*
- * Author: Thomas E. Dickey (1998-on)
- *
-- * $Id: ditto.c,v 1.40 2010/11/14 01:06:47 tom Exp $
-+ * $Id: ditto.c,v 1.42 2012/11/24 20:16:18 tom Exp $
- *
- * The program illustrates how to set up multiple screens from a single
- * program.
-@@ -80,6 +80,7 @@
- int which1; /* this screen's index in DITTO[] array */
- int length; /* length of windows[] and peeks[] */
- char **titles; /* per-window titles */
-+ WINDOW **parents; /* display boxes around each screen's data */
- WINDOW **windows; /* display data from each screen */
- PEEK *peeks; /* indices for each screen's fifo */
- FIFO fifo; /* fifo for this screen */
-@@ -98,6 +99,9 @@
- DITTO *ditto; /* data for all screens */
- } DDATA;
-
-+static void failed(const char *) GCC_NORETURN;
-+static void usage(void) GCC_NORETURN;
-+
- static void
- failed(const char *s)
- {
-@@ -201,6 +205,7 @@
- scrollok(stdscr, TRUE);
- box(stdscr, 0, 0);
-
-+ target->parents = typeCalloc(WINDOW *, (size_t) target->length);
- target->windows = typeCalloc(WINDOW *, (size_t) target->length);
- target->peeks = typeCalloc(PEEK, (size_t) target->length);
-
-@@ -220,6 +225,7 @@
- nodelay(inner, TRUE);
- #endif
-
-+ target->parents[k] = outer;
- target->windows[k] = inner;
- }
- doupdate();
-Index: test/dots.c
-Prereq: 1.22
---- ncurses-5.9/test/dots.c 2010-11-14 01:00:02.000000000 +0000
-+++ ncurses-5.9-20141206/test/dots.c 2013-09-28 22:12:09.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1999-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1999-2011,2013 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 *
-@@ -29,7 +29,7 @@
- /*
- * Author: Thomas E. Dickey <dickey@clark.net> 1999
- *
-- * $Id: dots.c,v 1.22 2010/11/14 01:00:02 tom Exp $
-+ * $Id: dots.c,v 1.25 2013/09/28 22:12:09 tom Exp $
- *
- * A simple demo of the terminfo interface.
- */
-@@ -46,23 +46,23 @@
- static long total_chars = 0;
- static time_t started;
-
--static int
--outc(TPUTS_ARG c)
-+static
-+TPUTS_PROTO(outc, c)
- {
- int rc = c;
-
- if (interrupted) {
- char tmp = (char) c;
-- if (write(STDOUT_FILENO, &tmp, 1) == -1)
-+ if (write(STDOUT_FILENO, &tmp, (size_t) 1) == -1)
- rc = EOF;
- } else {
- rc = putc(c, stdout);
- }
-- return rc;
-+ TPUTS_RETURN(rc);
- }
-
- static bool
--outs(char *s)
-+outs(const char *s)
- {
- if (valid(s)) {
- tputs(s, 1, outc);
-@@ -105,6 +105,7 @@
- int x, y, z, p;
- double r;
- double c;
-+ int my_colors;
-
- CATCHALL(onsig);
-
-@@ -112,11 +113,12 @@
- setupterm((char *) 0, 1, (int *) 0);
- outs(clear_screen);
- outs(cursor_invisible);
-- if (max_colors > 1) {
-+ my_colors = max_colors;
-+ if (my_colors > 1) {
- if (!valid(set_a_foreground)
- || !valid(set_a_background)
- || (!valid(orig_colors) && !valid(orig_pair)))
-- max_colors = -1;
-+ my_colors = -1;
- }
-
- r = (double) (lines - 4);
-@@ -129,8 +131,8 @@
- p = (ranf() > 0.9) ? '*' : ' ';
-
- tputs(tparm3(cursor_address, y, x), 1, outc);
-- if (max_colors > 0) {
-- z = (int) (ranf() * max_colors);
-+ if (my_colors > 0) {
-+ z = (int) (ranf() * my_colors);
- if (ranf() > 0.01) {
- tputs(tparm2(set_a_foreground, z), 1, outc);
- } else {
-Index: test/dots_curses.c
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/test/dots_curses.c 2014-08-09 22:28:42.000000000 +0000
-@@ -0,0 +1,151 @@
-+/****************************************************************************
-+ * Copyright (c) 2014 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 E. Dickey
-+ *
-+ * $Id: dots_curses.c,v 1.3 2014/08/09 22:28:42 tom Exp $
-+ *
-+ * A simple demo of the curses interface used for comparison with termcap.
-+ */
-+#include <test.priv.h>
-+
-+#if !defined(__MINGW32__)
-+#include <sys/time.h>
-+#endif
-+
-+#include <time.h>
-+
-+#define valid(s) ((s != 0) && s != (char *)-1)
-+
-+static bool interrupted = FALSE;
-+static long total_chars = 0;
-+static time_t started;
-+
-+static void
-+cleanup(void)
-+{
-+ endwin();
-+
-+ printf("\n\n%ld total chars, rate %.2f/sec\n",
-+ total_chars,
-+ ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
-+}
-+
-+static void
-+onsig(int n GCC_UNUSED)
-+{
-+ interrupted = TRUE;
-+}
-+
-+static double
-+ranf(void)
-+{
-+ long r = (rand() & 077777);
-+ return ((double) r / 32768.);
-+}
-+
-+static int
-+mypair(int fg, int bg)
-+{
-+ int pair = (fg * COLORS) + bg;
-+ return (pair >= COLOR_PAIRS) ? -1 : pair;
-+}
-+
-+static void
-+set_colors(int fg, int bg)
-+{
-+ int pair = mypair(fg, bg);
-+ if (pair > 0) {
-+ attron(COLOR_PAIR(mypair(fg, bg)));
-+ }
-+}
-+
-+int
-+main(int argc GCC_UNUSED,
-+ char *argv[]GCC_UNUSED)
-+{
-+ int x, y, z, p;
-+ int fg, bg;
-+ double r;
-+ double c;
-+
-+ CATCHALL(onsig);
-+
-+ srand((unsigned) time(0));
-+
-+ initscr();
-+ if (has_colors()) {
-+ start_color();
-+ for (fg = 0; fg < COLORS; fg++) {
-+ for (bg = 0; bg < COLORS; bg++) {
-+ int pair = mypair(fg, bg);
-+ if (pair > 0)
-+ init_pair((short) pair, (short) fg, (short) bg);
-+ }
-+ }
-+ }
-+
-+ r = (double) (LINES - 4);
-+ c = (double) (COLS - 4);
-+ started = time((time_t *) 0);
-+
-+ fg = COLOR_WHITE;
-+ bg = COLOR_BLACK;
-+ while (!interrupted) {
-+ x = (int) (c * ranf()) + 2;
-+ y = (int) (r * ranf()) + 2;
-+ p = (ranf() > 0.9) ? '*' : ' ';
-+
-+ move(y, x);
-+ if (has_colors()) {
-+ z = (int) (ranf() * COLORS);
-+ if (ranf() > 0.01) {
-+ set_colors(fg = z, bg);
-+ attron(COLOR_PAIR(mypair(fg, bg)));
-+ } else {
-+ set_colors(fg, bg = z);
-+ napms(1);
-+ }
-+ } else {
-+ if (ranf() <= 0.01) {
-+ if (ranf() > 0.6) {
-+ attron(A_REVERSE);
-+ } else {
-+ attroff(A_REVERSE);
-+ }
-+ napms(1);
-+ }
-+ }
-+ addch((chtype) p);
-+ refresh();
-+ ++total_chars;
-+ }
-+ cleanup();
-+ ExitProgram(EXIT_SUCCESS);
-+}
-Index: test/dots_mvcur.c
-Prereq: 1.6
---- ncurses-5.9/test/dots_mvcur.c 2010-11-14 01:00:44.000000000 +0000
-+++ ncurses-5.9-20141206/test/dots_mvcur.c 2013-09-28 22:44:18.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2007-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 2007-2009,2013 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 *
-@@ -29,7 +29,7 @@
- /*
- * Author: Thomas E. Dickey - 2007
- *
-- * $Id: dots_mvcur.c,v 1.6 2010/11/14 01:00:44 tom Exp $
-+ * $Id: dots_mvcur.c,v 1.10 2013/09/28 22:44:18 tom Exp $
- *
- * A simple demo of the terminfo interface, and mvcur.
- */
-@@ -46,24 +46,24 @@
- static long total_chars = 0;
- static time_t started;
-
--static int
--outc(TPUTS_ARG c)
-+static
-+TPUTS_PROTO(outc, c)
- {
- int rc = c;
-
- if (interrupted) {
- char tmp = (char) c;
-- if (write(STDOUT_FILENO, &tmp, 1) == -1)
-+ if (write(STDOUT_FILENO, &tmp, (size_t) 1) == -1)
- rc = EOF;
- } else {
- if (putc(c, stdout) == EOF)
- rc = EOF;
- }
-- return rc;
-+ TPUTS_RETURN(rc);
- }
-
- static bool
--outs(char *s)
-+outs(const char *s)
- {
- if (valid(s)) {
- tputs(s, 1, outc);
-@@ -108,6 +108,7 @@
- double r;
- double c;
- SCREEN *sp;
-+ int my_colors;
-
- CATCHALL(onsig);
-
-@@ -116,11 +117,12 @@
- outs(clear_screen);
- outs(cursor_home);
- outs(cursor_invisible);
-- if (max_colors > 1) {
-+ my_colors = max_colors;
-+ if (my_colors > 1) {
- if (!valid(set_a_foreground)
- || !valid(set_a_background)
- || (!valid(orig_colors) && !valid(orig_pair)))
-- max_colors = -1;
-+ my_colors = -1;
- }
-
- r = (double) (lines - 4);
-@@ -137,8 +139,8 @@
- y0 = y;
- }
-
-- if (max_colors > 0) {
-- z = (int) (ranf() * max_colors);
-+ if (my_colors > 0) {
-+ z = (int) (ranf() * my_colors);
- if (ranf() > 0.01) {
- tputs(tparm2(set_a_foreground, z), 1, outc);
- } else {
-@@ -155,6 +157,7 @@
- }
- }
- outc(p);
-+ ++x0;
- fflush(stdout);
- ++total_chars;
- }
-Index: test/dots_termcap.c
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/test/dots_termcap.c 2014-09-25 09:00:56.000000000 +0000
-@@ -0,0 +1,254 @@
-+/****************************************************************************
-+ * Copyright (c) 2013 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 E. Dickey
-+ *
-+ * $Id: dots_termcap.c,v 1.8 2014/09/25 09:00:56 tom Exp $
-+ *
-+ * A simple demo of the termcap interface.
-+ */
-+#define USE_TINFO
-+#include <test.priv.h>
-+
-+#if !defined(__MINGW32__)
-+#include <sys/time.h>
-+#endif
-+
-+#if HAVE_TGETENT
-+
-+#include <time.h>
-+
-+#define valid(s) ((s != 0) && s != (char *)-1)
-+
-+static bool interrupted = FALSE;
-+static long total_chars = 0;
-+static time_t started;
-+
-+static char *t_AB;
-+static char *t_AF;
-+static char *t_cl;
-+static char *t_cm;
-+static char *t_me;
-+static char *t_mr;
-+static char *t_oc;
-+static char *t_op;
-+static char *t_ve;
-+static char *t_vi;
-+
-+static struct {
-+ const char *name;
-+ char **value;
-+} my_caps[] = {
-+
-+ {
-+ "AB", &t_AB
-+ },
-+ {
-+ "AF", &t_AF
-+ },
-+ {
-+ "cl", &t_cl
-+ },
-+ {
-+ "cm", &t_cm
-+ },
-+ {
-+ "me", &t_me
-+ },
-+ {
-+ "mr", &t_mr
-+ },
-+ {
-+ "oc", &t_oc
-+ },
-+ {
-+ "op", &t_op
-+ },
-+ {
-+ "ve", &t_ve
-+ },
-+ {
-+ "vi", &t_vi
-+ },
-+};
-+
-+static
-+TPUTS_PROTO(outc, c)
-+{
-+ int rc = c;
-+
-+ if (interrupted) {
-+ char tmp = (char) c;
-+ if (write(STDOUT_FILENO, &tmp, (size_t) 1) == -1)
-+ rc = EOF;
-+ } else {
-+ rc = putc(c, stdout);
-+ }
-+ TPUTS_RETURN(rc);
-+}
-+
-+static bool
-+outs(char *s)
-+{
-+ if (valid(s)) {
-+ tputs(s, 1, outc);
-+ return TRUE;
-+ }
-+ return FALSE;
-+}
-+
-+static void
-+cleanup(void)
-+{
-+ outs(t_me);
-+ if (!outs(t_oc))
-+ outs(t_op);
-+ outs(t_cl);
-+ outs(t_ve);
-+
-+ printf("\n\n%ld total chars, rate %.2f/sec\n",
-+ total_chars,
-+ ((double) (total_chars) / (double) (time((time_t *) 0) - started)));
-+}
-+
-+static void
-+onsig(int n GCC_UNUSED)
-+{
-+ interrupted = TRUE;
-+}
-+
-+static double
-+ranf(void)
-+{
-+ long r = (rand() & 077777);
-+ return ((double) r / 32768.);
-+}
-+
-+static void
-+my_napms(int ms)
-+{
-+#if defined(__MINGW32__) || !HAVE_GETTIMEOFDAY
-+ Sleep((DWORD) ms);
-+#else
-+ struct timeval data;
-+ data.tv_sec = 0;
-+ data.tv_usec = ms * 1000;
-+ select(0, NULL, NULL, NULL, &data);
-+#endif
-+}
-+
-+int
-+main(int argc GCC_UNUSED,
-+ char *argv[]GCC_UNUSED)
-+{
-+ int x, y, z, p;
-+ int num_colors;
-+ int num_lines;
-+ int num_columns;
-+ double r;
-+ double c;
-+ char buffer[1024];
-+ char area[1024];
-+ char *name;
-+
-+ CATCHALL(onsig);
-+
-+ srand((unsigned) time(0));
-+
-+ if ((name = getenv("TERM")) == 0) {
-+ fprintf(stderr, "TERM is not set\n");
-+ ExitProgram(EXIT_FAILURE);
-+ } else if (tgetent(buffer, name) < 0) {
-+ fprintf(stderr, "terminal description not found\n");
-+ ExitProgram(EXIT_FAILURE);
-+ } else {
-+ size_t t;
-+ char *ap = area;
-+ for (t = 0; t < SIZEOF(my_caps); ++t) {
-+ *(my_caps[t].value) = tgetstr((NCURSES_CONST char *)
-+ my_caps[t].name, &ap);
-+ }
-+ }
-+
-+ num_colors = tgetnum("Co");
-+ num_lines = tgetnum("li");
-+ num_columns = tgetnum("co");
-+
-+ outs(t_cl);
-+ outs(t_vi);
-+ if (num_colors > 1) {
-+ if (!valid(t_AF)
-+ || !valid(t_AB)
-+ || (!valid(t_oc) && !valid(t_op)))
-+ num_colors = -1;
-+ }
-+
-+ r = (double) (num_lines - 4);
-+ c = (double) (num_columns - 4);
-+ started = time((time_t *) 0);
-+
-+ while (!interrupted) {
-+ x = (int) (c * ranf()) + 2;
-+ y = (int) (r * ranf()) + 2;
-+ p = (ranf() > 0.9) ? '*' : ' ';
-+
-+ tputs(tgoto(t_cm, x, y), 1, outc);
-+ if (num_colors > 0) {
-+ z = (int) (ranf() * num_colors);
-+ if (ranf() > 0.01) {
-+ tputs(tgoto(t_AF, 0, z), 1, outc);
-+ } else {
-+ tputs(tgoto(t_AB, 0, z), 1, outc);
-+ my_napms(1);
-+ }
-+ } else if (valid(t_me)
-+ && valid(t_mr)) {
-+ if (ranf() <= 0.01) {
-+ outs((ranf() > 0.6)
-+ ? t_mr
-+ : t_me);
-+ my_napms(1);
-+ }
-+ }
-+ outc(p);
-+ fflush(stdout);
-+ ++total_chars;
-+ }
-+ cleanup();
-+ ExitProgram(EXIT_SUCCESS);
-+}
-+#else
-+int
-+main(int argc GCC_UNUSED,
-+ char *argv[]GCC_UNUSED)
-+{
-+ fprintf(stderr, "This program requires termcap\n");
-+ exit(EXIT_FAILURE);
-+}
-+#endif
-Index: test/echochar.c
-Prereq: 1.8
---- ncurses-5.9/test/echochar.c 2010-11-14 01:00:44.000000000 +0000
-+++ ncurses-5.9-20141206/test/echochar.c 2014-08-09 22:35:51.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2006-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2006-2012,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: echochar.c,v 1.8 2010/11/14 01:00:44 tom Exp $
-+ * $Id: echochar.c,v 1.10 2014/08/09 22:35:51 tom Exp $
- *
- * Demonstrate the echochar function (compare to dots.c).
- * Thomas Dickey - 2006/11/4
-Index: test/edit_field.c
-Prereq: 1.17
---- ncurses-5.9/test/edit_field.c 2011-01-15 18:15:11.000000000 +0000
-+++ ncurses-5.9-20141206/test/edit_field.c 2014-09-05 08:39:52.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2003-2008,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2003-2013,2014 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 *
-@@ -26,11 +26,11 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: edit_field.c,v 1.17 2011/01/15 18:15:11 tom Exp $
-+ * $Id: edit_field.c,v 1.24 2014/09/05 08:39:52 tom Exp $
- *
- * A wrapper for form_driver() which keeps track of the user's editing changes
-- * for each field, and makes the result available as a null-terminated string
-- * in field_buffer(field,1).
-+ * for each field, and makes the resulting length available as a
-+ * null-terminated string in field_buffer(field,1).
- *
- * Thomas Dickey - 2003/4/26.
- */
-@@ -297,8 +297,54 @@
- static void
- inactive_field(FIELD * f)
- {
-- FieldAttrs *ptr = (FieldAttrs *) field_userptr(f);
-- set_field_back(f, ptr->background);
-+ set_field_back(f, field_attrs(f)->background);
-+}
-+
-+FieldAttrs *
-+field_attrs(FIELD * f)
-+{
-+ return (FieldAttrs *) field_userptr(f);
-+}
-+
-+static int
-+buffer_length(FIELD * f)
-+{
-+ return field_attrs(f)->row_lengths[0];
-+}
-+
-+static void
-+set_buffer_length(FIELD * f, int length)
-+{
-+ field_attrs(f)->row_lengths[0] = length;
-+}
-+
-+/*
-+ * The userptr is used in edit_field.c's inactive_field(), as well as for
-+ * keeping track of the actual lengths of lines in a multiline field.
-+ */
-+void
-+init_edit_field(FIELD * f, char *value)
-+{
-+ char empty[1];
-+ FieldAttrs *ptr = field_attrs(f);
-+ if (ptr == 0) {
-+ int rows, cols, frow, fcol, nrow, nbuf;
-+
-+ ptr = typeCalloc(FieldAttrs, (size_t) 1);
-+ ptr->background = field_back(f);
-+ if (field_info(f, &rows, &cols, &frow, &fcol, &nrow, &nbuf) == E_OK) {
-+ ptr->row_count = nrow;
-+ ptr->row_lengths = typeCalloc(int, (size_t) nrow + 1);
-+ }
-+ }
-+ if (value == 0) {
-+ value = empty;
-+ *value = '\0';
-+ }
-+ set_field_userptr(f, (void *) ptr);
-+ set_field_buffer(f, 0, value); /* will be formatted */
-+ set_field_buffer(f, 1, value); /* will be unformatted */
-+ set_buffer_length(f, (int) strlen(value));
- }
-
- int
-@@ -308,9 +354,7 @@
- int status;
- FIELD *before;
- unsigned n;
-- char lengths[80];
- int length;
-- char *buffer;
- int before_row;
- int before_col;
- int before_off = offset_in_field(form);
-@@ -337,9 +381,7 @@
- if (status == E_OK) {
- bool modified = TRUE;
-
-- length = 0;
-- if ((buffer = field_buffer(before, 1)) != 0)
-- length = atoi(buffer);
-+ length = buffer_length(before);
- if (length < before_off)
- length = before_off;
- switch (*result) {
-@@ -347,7 +389,7 @@
- length = before_off;
- break;
- case REQ_CLR_EOL:
-- if (before_row + 1 == before->rows)
-+ if ((int) (before_row + 1) == (int) (before->rows))
- length = before_off;
- break;
- case REQ_CLR_FIELD:
-@@ -445,8 +487,7 @@
- < MIN_FORM_COMMAND)
- ++length;
-
-- sprintf(lengths, "%d", length);
-- set_field_buffer(before, 1, lengths);
-+ set_buffer_length(before, length);
- }
-
- if (current_field(form) != before)
-Index: test/edit_field.h
-Prereq: 1.6
---- ncurses-5.9/test/edit_field.h 2008-12-20 19:23:18.000000000 +0000
-+++ ncurses-5.9-20141206/test/edit_field.h 2013-06-08 15:46:01.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2003-2006,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 2003-2008,2013 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: edit_field.h,v 1.6 2008/12/20 19:23:18 tom Exp $
-+ * $Id: edit_field.h,v 1.9 2013/06/08 15:46:01 tom Exp $
- *
- * Interface of edit_field.c
- */
-@@ -45,8 +45,12 @@
-
- typedef struct {
- chtype background;
-+ int row_count;
-+ int *row_lengths;
- } FieldAttrs;
-
-+extern FieldAttrs *field_attrs(FIELD * field);
-+extern void init_edit_field(FIELD * field, char *value);
- extern void help_edit_field(void);
- extern int edit_field(FORM * form, int *result);
-
-Index: test/filter.c
-Prereq: 1.13
---- ncurses-5.9/test/filter.c 2010-11-13 20:55:54.000000000 +0000
-+++ ncurses-5.9-20141206/test/filter.c 2014-08-09 22:35:51.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -29,7 +29,7 @@
- /*
- * Author: Thomas E. Dickey <dickey@clark.net> 1998
- *
-- * $Id: filter.c,v 1.13 2010/11/13 20:55:54 tom Exp $
-+ * $Id: filter.c,v 1.16 2014/08/09 22:35:51 tom Exp $
- */
- #include <test.priv.h>
-
-@@ -48,7 +48,7 @@
- */
-
- static int
--new_command(char *buffer, int length, attr_t underline)
-+new_command(char *buffer, int length, int underline)
- {
- int code;
-
-@@ -99,7 +99,7 @@
- {
- int ch;
- char buffer[80];
-- attr_t underline;
-+ int underline;
- bool i_option = FALSE;
-
- setlocale(LC_ALL, "");
-@@ -143,7 +143,7 @@
- reset_shell_mode();
- printf("\n");
- fflush(stdout);
-- system(buffer);
-+ IGNORE_RC(system(buffer));
- reset_prog_mode();
- touchwin(stdscr);
- erase();
-Index: test/firework.c
-Prereq: 1.27
---- ncurses-5.9/test/firework.c 2010-11-13 20:58:25.000000000 +0000
-+++ ncurses-5.9-20141206/test/firework.c 2014-08-02 17:24:07.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: firework.c,v 1.27 2010/11/13 20:58:25 tom Exp $
-+ * $Id: firework.c,v 1.30 2014/08/02 17:24:07 tom Exp $
- */
- #include <test.priv.h>
-
-@@ -41,7 +41,7 @@
- endwin();
- }
-
--static RETSIGTYPE
-+static void
- onsig(int n GCC_UNUSED)
- {
- cleanup();
-@@ -94,14 +94,14 @@
- showit();
-
- init_pair(1, get_colour(&bold), my_bg);
-- (void) attrset(COLOR_PAIR(1) | bold);
-+ (void) attrset(AttrArg(COLOR_PAIR(1), bold));
- MvPrintw(row - 1, col - 1, " - ");
- MvPrintw(row + 0, col - 1, "-+-");
- MvPrintw(row + 1, col - 1, " - ");
- showit();
-
- init_pair(1, get_colour(&bold), my_bg);
-- (void) attrset(COLOR_PAIR(1) | bold);
-+ (void) attrset(AttrArg(COLOR_PAIR(1), bold));
- MvPrintw(row - 2, col - 2, " --- ");
- MvPrintw(row - 1, col - 2, "-+++-");
- MvPrintw(row + 0, col - 2, "-+#+-");
-@@ -110,7 +110,7 @@
- showit();
-
- init_pair(1, get_colour(&bold), my_bg);
-- (void) attrset(COLOR_PAIR(1) | bold);
-+ (void) attrset(AttrArg(COLOR_PAIR(1), bold));
- MvPrintw(row - 2, col - 2, " +++ ");
- MvPrintw(row - 1, col - 2, "++#++");
- MvPrintw(row + 0, col - 2, "+# #+");
-@@ -119,7 +119,7 @@
- showit();
-
- init_pair(1, get_colour(&bold), my_bg);
-- (void) attrset(COLOR_PAIR(1) | bold);
-+ (void) attrset(AttrArg(COLOR_PAIR(1), bold));
- MvPrintw(row - 2, col - 2, " # ");
- MvPrintw(row - 1, col - 2, "## ##");
- MvPrintw(row + 0, col - 2, "# #");
-@@ -128,7 +128,7 @@
- showit();
-
- init_pair(1, get_colour(&bold), my_bg);
-- (void) attrset(COLOR_PAIR(1) | bold);
-+ (void) attrset(AttrArg(COLOR_PAIR(1), bold));
- MvPrintw(row - 2, col - 2, " # # ");
- MvPrintw(row - 1, col - 2, "# #");
- MvPrintw(row + 0, col - 2, " ");
-@@ -173,7 +173,7 @@
- direction = (start > end) ? -1 : 1;
- diff = abs(start - end);
- } while (diff < 2 || diff >= LINES - 2);
-- (void) attrset(A_NORMAL);
-+ (void) attrset(AttrArg(0, A_NORMAL));
- for (row = 0; row < diff; row++) {
- MvPrintw(LINES - row, start + (row * direction),
- (direction < 0) ? "\\" : "/");
-Index: test/form_driver_w.c
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/test/form_driver_w.c 2014-08-02 17:24:55.000000000 +0000
-@@ -0,0 +1,150 @@
-+/****************************************************************************
-+ * Copyright (c) 2013,2014 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: Gaute Hope, 2013 *
-+ ****************************************************************************/
-+
-+/*
-+ * $Id: form_driver_w.c,v 1.13 2014/08/02 17:24:55 tom Exp $
-+ *
-+ * Test form_driver_w (int, int, wchar_t), a wide char aware
-+ * replacement of form_driver.
-+ */
-+
-+#include <locale.h>
-+
-+#include <test.priv.h>
-+
-+#if USE_WIDEC_SUPPORT && USE_LIBFORM && (defined(NCURSES_VERSION_PATCH) && NCURSES_VERSION_PATCH >= 20131207)
-+
-+#include <form.h>
-+
-+int
-+main(void)
-+{
-+ FIELD *field[3];
-+ FORM *my_form;
-+ bool done = FALSE;
-+
-+ setlocale(LC_ALL, "");
-+
-+ /* Initialize curses */
-+ initscr();
-+ cbreak();
-+ noecho();
-+ keypad(stdscr, TRUE);
-+
-+ /* Initialize the fields */
-+ field[0] = new_field(1, 10, 4, 18, 0, 0);
-+ field[1] = new_field(1, 10, 6, 18, 0, 0);
-+ field[2] = NULL;
-+
-+ /* Set field options */
-+ set_field_back(field[0], A_UNDERLINE); /* Print a line for the option */
-+ field_opts_off(field[0], O_AUTOSKIP); /* Don't go to next field when this */
-+ /* Field is filled up */
-+ set_field_back(field[1], A_UNDERLINE);
-+ field_opts_off(field[1], O_AUTOSKIP);
-+
-+ /* Create the form and post it */
-+ my_form = new_form(field);
-+ post_form(my_form);
-+ refresh();
-+
-+ mvprintw(4, 10, "Value 1:");
-+ mvprintw(6, 10, "Value 2:");
-+ refresh();
-+
-+ /* Loop through to get user requests */
-+ while (!done) {
-+ wint_t ch;
-+ int ret = get_wch(&ch);
-+
-+ mvprintw(8, 10, "Got %d (%#x), type: %s", (int) ch, (int) ch,
-+ (ret == KEY_CODE_YES)
-+ ? "KEY_CODE_YES"
-+ : ((ret == OK)
-+ ? "OK"
-+ : ((ret == ERR)
-+ ? "ERR"
-+ : "?")));
-+ clrtoeol();
-+
-+ switch (ret) {
-+ case KEY_CODE_YES:
-+ switch (ch) {
-+ case KEY_DOWN:
-+ /* Go to next field */
-+ form_driver_w(my_form, KEY_CODE_YES, REQ_NEXT_FIELD);
-+ /* Go to the end of the present buffer */
-+ /* Leaves nicely at the last character */
-+ form_driver_w(my_form, KEY_CODE_YES, REQ_END_LINE);
-+ break;
-+ case KEY_UP:
-+ /* Go to previous field */
-+ form_driver_w(my_form, KEY_CODE_YES, REQ_PREV_FIELD);
-+ form_driver_w(my_form, KEY_CODE_YES, REQ_END_LINE);
-+ break;
-+ default:
-+ break;
-+ }
-+ break;
-+ case OK:
-+ switch (ch) {
-+ case CTRL('D'):
-+ case QUIT:
-+ case ESCAPE:
-+ done = TRUE;
-+ break;
-+ default:
-+ form_driver_w(my_form, OK, (wchar_t) ch);
-+ break;
-+ }
-+ break;
-+ }
-+ }
-+
-+ /* Un post form and free the memory */
-+ unpost_form(my_form);
-+ free_form(my_form);
-+ free_field(field[0]);
-+ free_field(field[1]);
-+
-+ endwin();
-+ ExitProgram(EXIT_SUCCESS);
-+}
-+
-+#else
-+int
-+main(void)
-+{
-+ printf("This program requires the wide-ncurses and forms library\n");
-+ ExitProgram(EXIT_FAILURE);
-+}
-+#endif /* USE_WIDEC_SUPPORT */
-Index: test/gdc.c
-Prereq: 1.34
---- ncurses-5.9/test/gdc.c 2010-11-13 21:01:23.000000000 +0000
-+++ ncurses-5.9-20141206/test/gdc.c 2014-08-09 22:28:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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,13 +27,13 @@
- ****************************************************************************/
- /*
- * Grand digital clock for curses compatible terminals
-- * Usage: gdc [-s] [n] -- run for n seconds (default infinity)
-+ * Usage: gdc [-s] [-t hh:mm:ss] [n] -- run for n seconds (default infinity)
- * Flags: -s: scroll
- *
- * modified 10-18-89 for curses (jrl)
- * 10-18-89 added signal handling
- *
-- * $Id: gdc.c,v 1.34 2010/11/13 21:01:23 tom Exp $
-+ * $Id: gdc.c,v 1.42 2014/08/09 22:28:42 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -60,7 +60,7 @@
- static bool redirected = FALSE;
- static bool hascolor = FALSE;
-
--static RETSIGTYPE
-+static void
- sighndl(int signo)
- {
- signal(signo, sighndl);
-@@ -72,13 +72,24 @@
- }
-
- static void
-+check_term(void)
-+{
-+ if (sigtermed) {
-+ (void) standend();
-+ endwin();
-+ fprintf(stderr, "gdc terminated by signal %d\n", sigtermed);
-+ ExitProgram(EXIT_FAILURE);
-+ }
-+}
-+
-+static void
- drawbox(bool scrolling)
- {
- chtype bottom[XLENGTH + 1];
- int n;
-
- if (hascolor)
-- (void) attrset(COLOR_PAIR(PAIR_FRAMES));
-+ (void) attrset(AttrArg(COLOR_PAIR(PAIR_FRAMES), 0));
-
- MvAddCh(YBASE - 1, XBASE - 1, ACS_ULCORNER);
- hline(ACS_HLINE, XLENGTH);
-@@ -102,7 +113,7 @@
- vline(ACS_VLINE, YDEPTH);
-
- if (hascolor)
-- (void) attrset(COLOR_PAIR(PAIR_OTHERS));
-+ (void) attrset(AttrArg(COLOR_PAIR(PAIR_OTHERS), 0));
- }
-
- static void
-@@ -147,6 +158,7 @@
- ,"Options:"
- ," -n redirect input to /dev/null"
- ," -s scroll each number into place, rather than flipping"
-+ ," -t hh:mm:ss specify starting time (default is ``now'')"
- ,""
- ,"If you specify a count, gdc runs for that number of seconds"
- };
-@@ -156,6 +168,43 @@
- ExitProgram(EXIT_FAILURE);
- }
-
-+static time_t
-+parse_time(const char *value)
-+{
-+ int hh, mm, ss;
-+ int check;
-+ time_t result;
-+ char c;
-+ struct tm *tm;
-+
-+ if (sscanf(value, "%d:%d:%d%c", &hh, &mm, &ss, &c) != 3) {
-+ if (sscanf(value, "%02d%02d%02d%c", &hh, &mm, &ss, &c) != 3) {
-+ usage();
-+ }
-+ }
-+
-+ if ((hh < 0) || (hh >= 24) ||
-+ (mm < 0) || (mm >= 60) ||
-+ (ss < 0) || (ss >= 60)) {
-+ usage();
-+ }
-+
-+ /* adjust so that the localtime in the main loop will give usable time */
-+ result = (hh * 3600) + ((mm * 60) + ss);
-+ for (check = 0; check < 24; ++check) {
-+ tm = localtime(&result);
-+ if (tm->tm_hour == hh)
-+ break;
-+ result += 3600;
-+ }
-+
-+ if (tm->tm_hour != hh) {
-+ fprintf(stderr, "Cannot find local time for %s!\n", value);
-+ usage();
-+ }
-+ return result;
-+}
-+
- int
- main(int argc, char *argv[])
- {
-@@ -166,21 +215,26 @@
- int count = 0;
- FILE *ofp = stdout;
- FILE *ifp = stdin;
-- bool scrol = FALSE;
-+ bool smooth = FALSE;
-+ bool stages = FALSE;
-+ time_t starts = 0;
-
- setlocale(LC_ALL, "");
-
- CATCHALL(sighndl);
-
-- while ((k = getopt(argc, argv, "sn")) != -1) {
-+ while ((k = getopt(argc, argv, "nst:")) != -1) {
- switch (k) {
-- case 's':
-- scrol = TRUE;
-- break;
- case 'n':
- ifp = fopen("/dev/null", "r");
- redirected = TRUE;
- break;
-+ case 's':
-+ smooth = TRUE;
-+ break;
-+ case 't':
-+ starts = parse_time(optarg);
-+ break;
- default:
- usage();
- }
-@@ -220,7 +274,7 @@
- init_pair(PAIR_DIGITS, COLOR_BLACK, COLOR_RED);
- init_pair(PAIR_OTHERS, COLOR_RED, bg);
- init_pair(PAIR_FRAMES, COLOR_WHITE, bg);
-- (void) attrset(COLOR_PAIR(PAIR_OTHERS));
-+ (void) attrset(AttrArg(COLOR_PAIR(PAIR_OTHERS), 0));
- }
-
- restart:
-@@ -231,9 +285,13 @@
- drawbox(FALSE);
-
- do {
-- char buf[30];
-+ char buf[40];
-
-- time(&now);
-+ if (starts != 0) {
-+ now = ++starts;
-+ } else {
-+ time(&now);
-+ }
- tm = localtime(&now);
-
- mask = 0;
-@@ -247,12 +305,13 @@
- set(10, 17);
-
- for (k = 0; k < 6; k++) {
-- if (scrol) {
-+ if (smooth) {
- for (i = 0; i < 5; i++)
- newer[i] = (newer[i] & ~mask) | (newer[i + 1] & mask);
- newer[5] = (newer[5] & ~mask) | (next[k] & mask);
-- } else
-+ } else {
- newer[k] = (newer[k] & ~mask) | (next[k] & mask);
-+ }
- next[k] = 0;
- for (s = 1; s >= 0; s--) {
- standt(s);
-@@ -273,7 +332,7 @@
- }
- }
- if (!s) {
-- if (scrol)
-+ if (smooth)
- drawbox(TRUE);
- refresh();
- /*
-@@ -286,14 +345,41 @@
- * a lot of time when asking what time it is, at the top of
- * this loop -T.Dickey
- */
-- if (scrol)
-+ if (smooth)
- napms(85);
-+ if (stages) {
-+ stages = FALSE;
-+ switch (wgetch(stdscr)) {
-+ case 'q':
-+ count = 1;
-+ break;
-+ case 'S':
-+ stages = TRUE;
-+ /* FALLTHRU */
-+ case 's':
-+ nodelay(stdscr, FALSE);
-+ break;
-+ case ' ':
-+ nodelay(stdscr, TRUE);
-+ break;
-+#ifdef KEY_RESIZE
-+ case KEY_RESIZE:
-+#endif
-+ case '?':
-+ goto restart;
-+ case ERR:
-+ check_term();
-+ /* FALLTHRU */
-+ default:
-+ continue;
-+ }
-+ }
- }
- }
- }
-
- /* this depends on the detailed format of ctime(3) */
-- (void) strcpy(buf, ctime(&now));
-+ (void) strncpy(buf, ctime(&now), (size_t) 30);
- (void) strcpy(buf + 10, buf + 19);
- MvAddStr(16, 30, buf);
-
-@@ -302,11 +388,11 @@
- refresh();
-
- /*
-- * If we're not scrolling, wait 1000 msec (1 sec). Use napms() rather
-- * than sleep() because the latter does odd things on some systems,
-- * e.g., suspending output as well.
-+ * If we're not smooth-scrolling, wait 1000 msec (1 sec). Use napms()
-+ * rather than sleep() because the latter does odd things on some
-+ * systems, e.g., suspending output as well.
- */
-- if (scrol)
-+ if (smooth)
- napms(500);
- else
- napms(1000);
-@@ -318,10 +404,14 @@
- * will return an error if interrupted. This works only if we can
- * read from the input, of course.
- */
-+ stages = FALSE;
- switch (wgetch(stdscr)) {
- case 'q':
- count = 1;
- break;
-+ case 'S':
-+ stages = TRUE;
-+ /* FALLTHRU */
- case 's':
- nodelay(stdscr, FALSE);
- break;
-@@ -334,12 +424,7 @@
- case '?':
- goto restart;
- case ERR:
-- if (sigtermed) {
-- (void) standend();
-- endwin();
-- fprintf(stderr, "gdc terminated by signal %d\n", sigtermed);
-- ExitProgram(EXIT_FAILURE);
-- }
-+ check_term();
- /* FALLTHRU */
- default:
- continue;
-Index: test/hanoi.c
-Prereq: 1.31
---- ncurses-5.9/test/hanoi.c 2010-11-14 01:01:07.000000000 +0000
-+++ ncurses-5.9-20141206/test/hanoi.c 2014-08-02 17:24:07.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -41,10 +41,11 @@
- *
- * Date: 05.Nov.90
- *
-- * $Id: hanoi.c,v 1.31 2010/11/14 01:01:07 tom Exp $
-+ * $Id: hanoi.c,v 1.36 2014/08/02 17:24:07 tom Exp $
- */
-
- #include <test.priv.h>
-+#include <math.h>
-
- #define NPEGS 3 /* This is not configurable !! */
- #define MINTILES 3
-@@ -57,7 +58,7 @@
- #define MIDPEG 39
- #define RIGHTPEG 59
-
--#define LENTOIND(x) (((x)-1)/2)
-+#define LENTOIND(x) (((int)(x)-1)/2)
- #define OTHER(a,b) (3-((a)+(b)))
-
- struct Peg {
-@@ -84,10 +85,11 @@
- COLOR_MAGENTA, /* Length 17 */
- COLOR_RED, /* Length 19 */
- };
-+static int NTiles = 0;
- static int NMoves = 0;
- static bool AutoFlag = FALSE;
-
--static void InitTiles(int NTiles);
-+static void InitTiles(void);
- static void DisplayTiles(void);
- static void MakeMove(int From, int To);
- static void AutoMove(int From, int To, int Num);
-@@ -99,7 +101,7 @@
- int
- main(int argc, char **argv)
- {
-- int NTiles, FromCol, ToCol;
-+ int FromCol, ToCol;
-
- setlocale(LC_ALL, "");
-
-@@ -130,9 +132,6 @@
- Usage();
- ExitProgram(EXIT_FAILURE);
- }
--#ifdef TRACE
-- trace(TRACE_MAXIMUM);
--#endif
- initscr();
- if (has_colors()) {
- int i;
-@@ -155,7 +154,7 @@
- curs_set(0);
- leaveok(stdscr, TRUE); /* Attempt to remove cursor */
- }
-- InitTiles(NTiles);
-+ InitTiles();
- DisplayTiles();
- if (AutoFlag) {
- do {
-@@ -211,7 +210,7 @@
- }
-
- static void
--InitTiles(int NTiles)
-+InitTiles(void)
- {
- int Size, SlotNo;
-
-@@ -232,7 +231,7 @@
- erase();
- MvAddStr(1, 24, "T O W E R S O F H A N O I");
- MvAddStr(3, 34, "SJR 1990");
-- MvPrintw(19, 5, "Moves : %d", NMoves);
-+ MvPrintw(19, 5, "Moves : %d of %.0f", NMoves, pow(2.0, (float) NTiles) - 1);
- (void) attrset(A_REVERSE);
- MvAddStr(BASELINE, 8,
- " ");
-@@ -255,7 +254,7 @@
- memset(TileBuf, ' ', len);
- TileBuf[len] = '\0';
- if (has_colors())
-- (void) attrset(COLOR_PAIR(LENTOIND(len)));
-+ (void) attrset(AttrArg(COLOR_PAIR(LENTOIND(len)), 0));
- else
- (void) attrset(A_REVERSE);
- MvAddStr(BASELINE - (SlotNo + 1),
-@@ -310,12 +309,12 @@
- if (Num == 1) {
- MakeMove(From, To);
- napms(500);
-- return;
-+ } else {
-+ AutoMove(From, OTHER(From, To), Num - 1);
-+ MakeMove(From, To);
-+ napms(500);
-+ AutoMove(OTHER(From, To), To, Num - 1);
- }
-- AutoMove(From, OTHER(From, To), Num - 1);
-- MakeMove(From, To);
-- napms(500);
-- AutoMove(OTHER(From, To), To, Num - 1);
- }
-
- static int
-Index: test/hashtest.c
-Prereq: 1.31
---- ncurses-5.9/test/hashtest.c 2010-11-13 23:43:15.000000000 +0000
-+++ ncurses-5.9-20141206/test/hashtest.c 2013-04-27 19:50:17.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2010,2013 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 *
-@@ -30,7 +30,7 @@
- *
- * Generate timing statistics for vertical-motion optimization.
- *
-- * $Id: hashtest.c,v 1.31 2010/11/13 23:43:15 tom Exp $
-+ * $Id: hashtest.c,v 1.32 2013/04/27 19:50:17 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -54,7 +54,7 @@
- endwin();
- }
-
--static RETSIGTYPE
-+static void
- finish(int sig GCC_UNUSED)
- {
- cleanup();
-Index: test/inchs.c
-Prereq: 1.11
---- ncurses-5.9/test/inchs.c 2010-11-13 23:41:23.000000000 +0000
-+++ ncurses-5.9-20141206/test/inchs.c 2012-11-18 01:58:15.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2007-2010,2012 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: inchs.c,v 1.11 2010/11/13 23:41:23 tom Exp $
-+ * $Id: inchs.c,v 1.12 2012/11/18 01:58:15 tom Exp $
- *
- * Author: Thomas E Dickey
- */
-@@ -50,6 +50,16 @@
- #define BASE_Y 7
- #define MAX_COLS 1024
-
-+static void
-+failed(const char *s)
-+{
-+ int save = errno;
-+ endwin();
-+ errno = save;
-+ perror(s);
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
- static bool
- Quit(int ch)
- {
-@@ -87,6 +97,8 @@
- txtwin = stdscr;
- base_y = BASE_Y;
- }
-+ if (txtwin == 0)
-+ failed("cannot create txtwin");
-
- keypad(txtwin, TRUE); /* enable keyboard mapping */
- (void) cbreak(); /* take input chars one at a time, no wait for \n */
-Index: test/ins_wide.c
-Prereq: 1.15
---- ncurses-5.9/test/ins_wide.c 2010-12-12 00:20:14.000000000 +0000
-+++ ncurses-5.9-20141206/test/ins_wide.c 2014-08-02 17:24:55.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2012,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: ins_wide.c,v 1.15 2010/12/12 00:20:14 tom Exp $
-+ * $Id: ins_wide.c,v 1.21 2014/08/02 17:24:55 tom Exp $
- *
- * Demonstrate the wins_wstr() and wins_wch functions.
- * Thomas Dickey - 2002/11/23
-@@ -132,7 +132,7 @@
- result += 2;
- break;
- default:
-- result += wcwidth(ch);
-+ result += wcwidth((wchar_t) ch);
- if (ch < 32)
- ++result;
- break;
-@@ -228,8 +228,9 @@
- WINDOW *work = 0;
- WINDOW *show = 0;
- int margin = (2 * MY_TABSIZE) - 1;
-- Options option = ((m_opt ? oMove : oDefault)
-- | ((w_opt || (level > 0)) ? oWindow : oDefault));
-+ Options option = (Options) ((int) (m_opt ? oMove : oDefault)
-+ | (int) ((w_opt || (level > 0))
-+ ? oWindow : oDefault));
-
- if (first) {
- static char cmd[80];
-@@ -241,6 +242,15 @@
- (void) cbreak(); /* take input chars one at a time, no wait for \n */
- (void) noecho(); /* don't echo input */
- keypad(stdscr, TRUE);
-+
-+ /*
-+ * Show the characters inserted in color, to distinguish from those
-+ * that are shifted.
-+ */
-+ if (has_colors()) {
-+ start_color();
-+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
-+ }
- }
-
- limit = LINES - 5;
-@@ -274,14 +284,8 @@
-
- doupdate();
-
-- /*
-- * Show the characters inserted in color, to distinguish from those that
-- * are shifted.
-- */
- if (has_colors()) {
-- start_color();
-- init_pair(1, COLOR_WHITE, COLOR_BLUE);
-- wbkgdset(work, COLOR_PAIR(1) | ' ');
-+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' '));
- }
-
- while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) {
-@@ -290,11 +294,13 @@
- case key_RECUR:
- test_inserts(level + 1);
-
-- touchwin(look);
-+ if (look)
-+ touchwin(look);
- touchwin(work);
- touchwin(show);
-
-- wnoutrefresh(look);
-+ if (look)
-+ wnoutrefresh(look);
- wnoutrefresh(work);
- wnoutrefresh(show);
-
-@@ -384,7 +390,7 @@
- }
- break;
- default:
-- buffer[length++] = ch;
-+ buffer[length++] = (wchar_t) ch;
- buffer[length] = '\0';
-
- /* put the string in, one character at a time */
-@@ -438,10 +444,10 @@
- }
- }
- if (level > 0) {
-- delwin(show);
- delwin(work);
- delwin(look);
- }
-+ delwin(show);
- }
-
- static void
-Index: test/insdelln.c
-Prereq: 1.5
---- ncurses-5.9/test/insdelln.c 2010-11-13 23:39:38.000000000 +0000
-+++ ncurses-5.9-20141206/test/insdelln.c 2014-08-02 23:09:32.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2008-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2008-2012,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: insdelln.c,v 1.5 2010/11/13 23:39:38 tom Exp $
-+ * $Id: insdelln.c,v 1.9 2014/08/02 23:09:32 tom Exp $
- *
- * test-driver for deleteln, wdeleteln, insdelln, winsdelln, insertln, winsertln
- */
-@@ -175,6 +175,8 @@
- delwin(win1);
- touchwin(win);
- } else {
-+ if (win1)
-+ delwin(win1);
- beep();
- }
- }
-@@ -300,7 +302,7 @@
- init_status(win, &st);
-
- do {
-- (void) wattrset(win, st.attr | (attr_t) COLOR_PAIR(st.pair));
-+ (void) wattrset(win, AttrArg(COLOR_PAIR(st.pair), st.attr));
- switch (st.ch) {
- case 'i':
- for (n = 0; n < st.count; ++n)
-@@ -341,7 +343,7 @@
- init_status(stdscr, &st);
-
- do {
-- (void) attrset(st.attr | (attr_t) COLOR_PAIR(st.pair));
-+ (void) attrset(AttrArg(COLOR_PAIR(st.pair), st.attr));
- switch (st.ch) {
- case 'i':
- for (n = 0; n < st.count; ++n)
-Index: test/inserts.c
-Prereq: 1.23
---- ncurses-5.9/test/inserts.c 2010-12-12 00:19:55.000000000 +0000
-+++ ncurses-5.9-20141206/test/inserts.c 2012-12-16 00:35:27.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2002-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2002-2010,2012 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: inserts.c,v 1.23 2010/12/12 00:19:55 tom Exp $
-+ * $Id: inserts.c,v 1.27 2012/12/16 00:35:27 tom Exp $
- *
- * Demonstrate the winsstr() and winsch functions.
- * Thomas Dickey - 2002/10/19
-@@ -167,6 +167,15 @@
- (void) cbreak(); /* take input chars one at a time, no wait for \n */
- (void) noecho(); /* don't echo input */
- keypad(stdscr, TRUE);
-+
-+ /*
-+ * Show the characters inserted in color, to distinguish from those
-+ * that are shifted.
-+ */
-+ if (has_colors()) {
-+ start_color();
-+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
-+ }
- }
-
- limit = LINES - 5;
-@@ -200,14 +209,8 @@
-
- doupdate();
-
-- /*
-- * Show the characters inserted in color, to distinguish from those that
-- * are shifted.
-- */
- if (has_colors()) {
-- start_color();
-- init_pair(1, COLOR_WHITE, COLOR_BLUE);
-- wbkgdset(work, COLOR_PAIR(1) | ' ');
-+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' '));
- }
-
- while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) {
-@@ -216,11 +219,13 @@
- case key_RECUR:
- test_inserts(level + 1);
-
-- touchwin(look);
-+ if (look)
-+ touchwin(look);
- touchwin(work);
- touchwin(show);
-
-- wnoutrefresh(look);
-+ if (look)
-+ wnoutrefresh(look);
- wnoutrefresh(work);
- wnoutrefresh(show);
-
-@@ -368,10 +373,10 @@
- }
- }
- if (level > 0) {
-- delwin(show);
- delwin(work);
- delwin(look);
- }
-+ delwin(show);
- }
-
- static void
-Index: test/key_names.c
-Prereq: 1.4
---- ncurses-5.9/test/key_names.c 2008-10-11 20:22:37.000000000 +0000
-+++ ncurses-5.9-20141206/test/key_names.c 2014-08-02 17:24:55.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 2007-2008,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: key_names.c,v 1.4 2008/10/11 20:22:37 tom Exp $
-+ * $Id: key_names.c,v 1.5 2014/08/02 17:24:55 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -77,7 +77,7 @@
- endwin();
- }
- for (n = -1; n < KEY_MAX + 512; n++) {
-- const char *result = key_name(n);
-+ const char *result = key_name((wchar_t) n);
- if (result != 0)
- printf("%d(%5o):%s\n", n, n, result);
- }
-Index: test/knight.c
-Prereq: 1.31
---- ncurses-5.9/test/knight.c 2010-11-13 20:44:21.000000000 +0000
-+++ ncurses-5.9-20141206/test/knight.c 2013-02-16 19:53:08.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -33,7 +33,7 @@
- * Eric S. Raymond <esr@snark.thyrsus.com> July 22 1995. Mouse support
- * added September 20th 1995.
- *
-- * $Id: knight.c,v 1.31 2010/11/13 20:44:21 tom Exp $
-+ * $Id: knight.c,v 1.36 2013/02/16 19:53:08 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -123,13 +123,16 @@
- (void) init_pair(PLUS_COLOR, (short) COLOR_RED, (short) bg);
- (void) init_pair(MINUS_COLOR, (short) COLOR_GREEN, (short) bg);
-
-- trail |= COLOR_PAIR(TRAIL_COLOR);
-- plus |= COLOR_PAIR(PLUS_COLOR);
-- minus |= COLOR_PAIR(MINUS_COLOR);
-+ trail |= (chtype) COLOR_PAIR(TRAIL_COLOR);
-+ plus |= (chtype) COLOR_PAIR(PLUS_COLOR);
-+ minus |= (chtype) COLOR_PAIR(MINUS_COLOR);
- }
- #ifdef NCURSES_MOUSE_VERSION
- (void) mousemask(BUTTON1_CLICKED, (mmask_t *) NULL);
- #endif /* NCURSES_MOUSE_VERSION */
-+#if defined(PDCURSES)
-+ mouse_set(BUTTON1_RELEASED);
-+#endif
-
- oldch = minus;
- }
-@@ -300,15 +303,16 @@
- }
- }
-
--static void
-+static bool
- find_next_move(int *y, int *x)
- {
- unsigned j, k;
- int found = -1;
- int first = -1;
-- int next = 0;
-+ int next = -1;
- int oldy, oldx;
- int newy, newx;
-+ bool result = FALSE;
-
- if (movecount > 1) {
- oldy = history[movecount - 1].y;
-@@ -335,9 +339,27 @@
- *y = oldy + offsets[next].y;
- *x = oldx + offsets[next].x;
- }
-- } else {
-- beep();
-+ result = TRUE;
- }
-+ return result;
-+}
-+
-+static void
-+count_next_moves(int y, int x)
-+{
-+ int count = 0;
-+ unsigned j;
-+
-+ wprintw(msgwin, "\nMove %d", movecount);
-+ for (j = 0; j < SIZEOF(offsets); j++) {
-+ int newy = y + offsets[j].y;
-+ int newx = x + offsets[j].x;
-+ if (chksqr(newy, newx)) {
-+ ++count;
-+ }
-+ }
-+ wprintw(msgwin, ", gives %d choices", count);
-+ wclrtoeol(msgwin);
- }
-
- static void
-@@ -558,8 +580,9 @@
- nx = col + 1;
- break;
-
--#ifdef NCURSES_MOUSE_VERSION
-+#ifdef KEY_MOUSE
- case KEY_MOUSE:
-+#ifdef NCURSES_MOUSE_VERSION
- {
- MEVENT myevent;
-
-@@ -576,6 +599,24 @@
- }
- }
- #endif /* NCURSES_MOUSE_VERSION */
-+#ifdef PDCURSES
-+ {
-+ int test_y, test_x;
-+ request_mouse_pos();
-+ test_y = MOUSE_Y_POS + 0;
-+ test_x = MOUSE_X_POS + 1;
-+ if (test_y >= CY(0) && test_y <= CY(BDEPTH)
-+ && test_x >= CX(0) && test_x <= CX(BWIDTH)) {
-+ ny = CYINV(test_y);
-+ nx = CXINV(test_x);
-+ wmove(helpwin, 0, 0);
-+ wrefresh(helpwin);
-+ ungetch('\n');
-+ }
-+ break;
-+ }
-+#endif /* PDCURSES */
-+#endif /* KEY_MOUSE */
-
- case KEY_B2:
- case '\n':
-@@ -614,8 +655,8 @@
- ny = history[movecount].y;
- nx = history[movecount].x;
- if (nx < 0 || ny < 0) {
-- ny = lastrow;
-- nx = lastcol;
-+ ny = (lastrow >= 0) ? lastrow : 0;
-+ nx = (lastcol >= 0) ? lastcol : 0;
- }
- movecount = 0;
- board[ny][nx] = FALSE;
-@@ -652,7 +693,10 @@
- case 'a':
- nx = col;
- ny = rw;
-- find_next_move(&ny, &nx);
-+ if (find_next_move(&ny, &nx))
-+ count_next_moves(ny, nx);
-+ else
-+ beep();
- break;
-
- case 'F':
-Index: test/linedata.h
---- ncurses-5.9/test/linedata.h 2010-11-13 21:12:31.000000000 +0000
-+++ ncurses-5.9-20141206/test/linedata.h 2012-12-15 22:57:19.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2009-2010,2012 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 *
-@@ -85,10 +85,8 @@
- beep();
- continue;
- }
-- } else if (code != ERR) {
-- result = (int) ch;
-- break;
- } else {
-+ result = (int) ch;
- break;
- }
- }
-Index: test/make-tar.sh
-Prereq: 1.10
---- ncurses-5.9/test/make-tar.sh 2011-03-26 20:46:51.000000000 +0000
-+++ ncurses-5.9-20141206/test/make-tar.sh 2013-10-26 23:11:43.000000000 +0000
-@@ -1,7 +1,7 @@
- #!/bin/sh
--# $Id: make-tar.sh,v 1.10 2011/03/26 20:46:51 tom Exp $
-+# $Id: make-tar.sh,v 1.12 2013/10/26 23:11:43 tom Exp $
- ##############################################################################
--# Copyright (c) 2010,2011 Free Software Foundation, Inc. #
-+# Copyright (c) 2010-2011,2013 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"), #
-@@ -66,11 +66,11 @@
- make_changelog() {
- test -f $1 && chmod u+w $1
- cat >$1 <<EOF
--`echo $PKG_NAME|tr '[A-Z]' '[a-z]'` ($NCURSES_PATCH) unstable; urgency=low
-+`echo $PKG_NAME|tr '[A-Z]' '[a-z]'` ($NCURSES_MAJOR.$NCURSES_MINOR-$NCURSES_PATCH) unstable; urgency=low
-
- * snapshot of ncurses subpackage for $PKG_NAME.
-
-- -- `head -1 $HOME/.signature` `date -R`
-+ -- `head -n 1 $HOME/.signature` `date -R`
- EOF
- }
-
-@@ -108,7 +108,10 @@
- do
- edit_specfile $spec
- done
--make_changelog $BUILD/$ROOTNAME/package/debian/changelog
-+for spec in $BUILD/$ROOTNAME/package/debian*
-+do
-+ make_changelog $spec/changelog
-+done
-
- cp -p $SOURCE/NEWS $BUILD/$ROOTNAME
-
-Index: test/modules
-Prereq: 1.43
---- ncurses-5.9/test/modules 2010-01-23 17:51:38.000000000 +0000
-+++ ncurses-5.9-20141206/test/modules 2014-06-21 15:28:46.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: modules,v 1.43 2010/01/23 17:51:38 tom Exp $
-+# $Id: modules,v 1.51 2014/06/21 15:28:46 tom Exp $
- ##############################################################################
--# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. #
-+# Copyright (c) 1998-2013,2014 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"), #
-@@ -49,13 +49,16 @@
- demo_terminfo progs $(srcdir) $(HEADER_DEPS)
- ditto progs $(srcdir) $(HEADER_DEPS)
- dots progs $(srcdir) $(HEADER_DEPS)
-+dots_curses progs $(srcdir) $(HEADER_DEPS)
- dots_mvcur progs $(srcdir) $(HEADER_DEPS)
-+dots_termcap progs $(srcdir) $(HEADER_DEPS)
- echochar progs $(srcdir) $(HEADER_DEPS)
- edit_field progs $(srcdir) $(HEADER_DEPS) $(srcdir)/edit_field.h
- filter progs $(srcdir) $(HEADER_DEPS)
- firework progs $(srcdir) $(HEADER_DEPS)
- firstlast progs $(srcdir) $(HEADER_DEPS)
- foldkeys progs $(srcdir) $(HEADER_DEPS)
-+form_driver_w progs $(srcdir) $(HEADER_DEPS)
- gdc progs $(srcdir) $(HEADER_DEPS)
- hanoi progs $(srcdir) $(HEADER_DEPS)
- hashtest progs $(srcdir) $(HEADER_DEPS)
-@@ -86,10 +89,12 @@
- test_instr progs $(srcdir) $(HEADER_DEPS)
- test_inwstr progs $(srcdir) $(HEADER_DEPS)
- test_opaque progs $(srcdir) $(HEADER_DEPS)
-+test_vid_puts progs $(srcdir) $(HEADER_DEPS)
-+test_vidputs progs $(srcdir) $(HEADER_DEPS)
- testaddch progs $(srcdir) $(HEADER_DEPS)
- testcurs progs $(srcdir) $(HEADER_DEPS)
- testscanw progs $(srcdir) $(HEADER_DEPS)
--view progs $(srcdir) $(HEADER_DEPS)
-+view progs $(srcdir) $(HEADER_DEPS) $(srcdir)/widechars.h
- worm progs $(srcdir) $(HEADER_DEPS)
- xmas progs $(srcdir) $(HEADER_DEPS)
-
-Index: test/movewindow.c
-Prereq: 1.24
---- ncurses-5.9/test/movewindow.c 2010-11-13 23:34:55.000000000 +0000
-+++ ncurses-5.9-20141206/test/movewindow.c 2013-05-04 19:41:02.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2006-2008,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2006-2012,2013 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 *
-@@ -26,18 +26,22 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: movewindow.c,v 1.24 2010/11/13 23:34:55 tom Exp $
-+ * $Id: movewindow.c,v 1.39 2013/05/04 19:41:02 tom Exp $
- *
- * Demonstrate move functions for windows and derived windows from the curses
- * library.
- *
-- * Thomas Dickey - 2006/2/11
-+ * Author: Thomas E. Dickey
- */
- /*
- derwin
- mvderwin
- subwin
- mvwin
-+
-+TODO:
-+ add command to reset subwindow's origin to coincide with parent.
-+ add command to delete subwindow (check if it has subwindows though)
- */
-
- #include <test.priv.h>
-@@ -76,6 +80,14 @@
- static FRAME *all_windows;
-
- static void
-+failed(const char *s)
-+{
-+ perror(s);
-+ endwin();
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
-+static void
- message(int lineno, CONST_FMT char *fmt, va_list argp)
- {
- int y, x;
-@@ -122,7 +134,12 @@
- * Arrow keys move cursor, return location at current on non-arrow key.
- */
- static PAIR *
--selectcell(WINDOW *parent, int uli, int ulj, int lri, int lrj)
-+selectcell(WINDOW *parent,
-+ WINDOW *child,
-+ int uli, int ulj,
-+ int lri, int lrj,
-+ bool relative,
-+ bool * more)
- {
- static PAIR res; /* result cell */
- int si = lri - uli + 1; /* depth of the select area */
-@@ -131,25 +148,46 @@
-
- res.y = uli;
- res.x = ulj;
-+
-+ if (child != 0) {
-+ if (relative) {
-+ getparyx(child, i, j);
-+ } else {
-+ getbegyx(child, i, j);
-+ i -= uli + getbegy(parent);
-+ j -= ulj + getbegx(parent);
-+ }
-+ }
-+
-+ if (more)
-+ *more = FALSE;
-+
- for (;;) {
-- tail_line("Upper left [%2d,%2d] Lower right [%2d,%2d] -> %d,%d",
-+ bool moved = FALSE;
-+
-+ tail_line("Upper left [%2d,%2d] Lower right [%2d,%2d] -> %d,%d -> %d,%d",
- uli, ulj,
- lri, lrj,
-+ i, j,
- uli + i, ulj + j);
- wmove(parent, uli + i, ulj + j);
-
- switch (wgetch(parent)) {
- case KEY_UP:
- i += si - 1;
-+ moved = TRUE;
- break;
- case KEY_DOWN:
- i++;
-+ moved = TRUE;
- break;
- case KEY_LEFT:
- j += sj - 1;
-+ moved = TRUE;
- break;
- case KEY_RIGHT:
- j++;
-+ moved = TRUE;
- break;
- case QUIT:
- case ESCAPE:
-@@ -161,8 +199,13 @@
-
- getmouse(&event);
- if (event.y > uli && event.x > ulj) {
-- i = event.y - uli;
-- j = event.x - ulj;
-+ if (parent != stdscr) {
-+ i = event.y - getbegy(parent) - uli;
-+ j = event.x - getbegx(parent) - ulj;
-+ } else {
-+ i = event.y - uli;
-+ j = event.x - ulj;
-+ }
- } else {
- beep();
- break;
-@@ -175,8 +218,26 @@
- res.x = ulj + j;
- return (&res);
- }
-- i %= si;
-- j %= sj;
-+
-+ if (si <= 0)
-+ i = 0;
-+ else
-+ i %= si;
-+
-+ if (sj <= 0)
-+ j = 0;
-+ else
-+ j %= sj;
-+
-+ /*
-+ * If the caller can handle continuous movement, return the result.
-+ */
-+ if (moved && more) {
-+ *more = TRUE;
-+ res.y = uli + i;
-+ res.x = ulj + j;
-+ return (&res);
-+ }
- }
- }
-
-@@ -194,12 +255,20 @@
- bool result = FALSE;
-
- head_line("Use arrows to move cursor, anything else to mark corner 1");
-- if ((tmp = selectcell(parent, min_line, min_col, max_line, max_col)) != 0) {
-+ if ((tmp = selectcell(parent, 0,
-+ min_line, min_col,
-+ max_line, max_col,
-+ FALSE,
-+ (bool *) 0)) != 0) {
- *ul = *tmp;
- MvWAddCh(parent, ul->y, ul->x, '*');
-
- head_line("Use arrows to move cursor, anything else to mark corner 2");
-- if ((tmp = selectcell(parent, ul->y, ul->x, max_line, max_col)) != 0) {
-+ if ((tmp = selectcell(parent, 0,
-+ ul->y, ul->x,
-+ max_line, max_col,
-+ FALSE,
-+ (bool *) 0)) != 0) {
- *lr = *tmp;
- MvWAddCh(parent, lr->y, lr->x, '*');
- wmove(parent, lr->y, lr->x);
-@@ -252,6 +321,8 @@
- keypad(child, TRUE);
- if (need > have) {
- all_windows = typeRealloc(FRAME, need, all_windows);
-+ if (!all_windows)
-+ failed("add_window");
- }
- all_windows[num_windows].parent = parent;
- all_windows[num_windows].child = child;
-@@ -341,10 +412,7 @@
-
- for (n = 0; n < num_windows; ++n) {
- if (all_windows[n].parent == parent) {
-- int y0, x0;
--
-- getbegyx(all_windows[n].child, y0, x0);
-- mvwin(all_windows[n].child, y0 + dy, x0 + dx);
-+ mvwin(all_windows[n].child, dy, dx);
- recur_move_window(all_windows[n].child, dy, dx);
- }
- }
-@@ -366,20 +434,24 @@
- int min_line = top ? LINE_MIN : 0;
- int max_line = top ? LINE_MAX : getmaxy(parent);
- PAIR *tmp;
-+ bool more;
-
- head_line("Select new position for %swindow", top ? "" : "sub");
-
-- if ((tmp = selectcell(parent,
-- min_line, min_col,
-- max_line, max_col)) != 0) {
-+ while ((tmp = selectcell(parent,
-+ win,
-+ min_line, min_col,
-+ max_line, max_col,
-+ FALSE,
-+ &more)) != 0) {
- int y0, x0;
- getbegyx(parent, y0, x0);
- /*
-- * Note: Moving a subwindow has the effect of moving a viewport
-- * around the screen. The parent window retains the contents of
-- * the subwindow in the original location, but the viewport will
-- * show the contents (again) at the new location. So it will look
-- * odd when testing.
-+ * Moving a subwindow has the effect of moving a viewport around
-+ * the screen. The parent window retains the contents of the
-+ * subwindow in the original location, but the viewport will show
-+ * the contents (again) at the new location. So it will look odd
-+ * when testing.
- */
- if (mvwin(win, y0 + tmp->y, x0 + tmp->x) != ERR) {
- if (recur) {
-@@ -388,45 +460,69 @@
- refresh_all(win);
- doupdate();
- result = TRUE;
-+ } else {
-+ result = FALSE;
- }
-+ if (!more)
-+ break;
- }
- }
-+ head_line("done");
- return result;
- }
-
-+static void
-+show_derwin(WINDOW *win)
-+{
-+ int pary, parx, maxy, maxx;
-+
-+ getmaxyx(win, maxy, maxx);
-+ getparyx(win, pary, parx);
-+
-+ head_line("Select new position for derived window at %d,%d (%d,%d)",
-+ pary, parx, maxy, maxx);
-+}
-+
- /*
- * test mvderwin().
- */
- static bool
--move_subwin(WINDOW *win)
-+move_derwin(WINDOW *win)
- {
- WINDOW *parent = parent_of(win);
- bool result = FALSE;
-
- if (parent != 0) {
- bool top = (parent == stdscr);
-- if (!top) {
-- int min_col = top ? COL_MIN : 0;
-- int max_col = top ? COL_MAX : getmaxx(parent);
-- int min_line = top ? LINE_MIN : 0;
-- int max_line = top ? LINE_MAX : getmaxy(parent);
-- PAIR *tmp;
--
-- head_line("Select new position for subwindow");
--
-- if ((tmp = selectcell(parent,
-- min_line, min_col,
-- max_line, max_col)) != 0) {
-- int y0, x0;
-- getbegyx(parent, y0, x0);
-- if (mvderwin(win, y0 + tmp->y, x0 + tmp->x) != ERR) {
-- refresh_all(win);
-- doupdate();
-- result = TRUE;
-- }
-+ int min_col = top ? COL_MIN : 0;
-+ int max_col = top ? COL_MAX : getmaxx(parent);
-+ int min_line = top ? LINE_MIN : 0;
-+ int max_line = top ? LINE_MAX : getmaxy(parent);
-+ PAIR *tmp;
-+ bool more;
-+
-+ show_derwin(win);
-+ while ((tmp = selectcell(parent,
-+ win,
-+ min_line, min_col,
-+ max_line, max_col,
-+ TRUE,
-+ &more)) != 0) {
-+ if (mvderwin(win, tmp->y, tmp->x) != ERR) {
-+ refresh_all(win);
-+ doupdate();
-+ repaint_one(win);
-+ doupdate();
-+ result = TRUE;
-+ show_derwin(win);
-+ } else {
-+ flash();
- }
-+ if (!more)
-+ break;
- }
- }
-+ head_line("done");
- return result;
- }
-
-@@ -449,6 +545,28 @@
- wrefresh(win);
- }
-
-+static void
-+fill_with_pattern(WINDOW *win)
-+{
-+ int y, x;
-+ int y0, x0;
-+ int y1, x1;
-+ int ch = 'a';
-+
-+ getyx(win, y0, x0);
-+ getmaxyx(win, y1, x1);
-+ for (y = 0; y < y1; ++y) {
-+ for (x = 0; x < x1; ++x) {
-+ MvWAddCh(win, y, x, (chtype) ch);
-+ if (++ch > 'z')
-+ ch = 'a';
-+ }
-+ }
-+ wsyncdown(win);
-+ wmove(win, y0, x0);
-+ wrefresh(win);
-+}
-+
- #define lines_of(ul,lr) (lr.y - ul.y + 1)
- #define cols_of(ul,lr) (lr.x - ul.x + 1)
- #define pair_of(ul) ul.y, ul.x
-@@ -523,12 +641,13 @@
- { 'b', "Draw a box inside the current window" },
- { 'c', "Create a new window" },
- { 'd', "Create a new derived window" },
-+ { 'D', "Move derived window (moves viewport)" },
- { 'f', "Fill the current window with the next character" },
-+ { 'F', "Fill the current window with a pattern" },
- { 'm', "Move the current window" },
- { 'M', "Move the current window (and its children)" },
- { 'q', "Quit" },
- { 's', "Create a new subwindow" },
-- { 't', "Move the current subwindow (moves content)" },
- { CTRL('L'), "Repaint all windows, doing current one last" },
- { CTRL('N'), "Cursor to next window" },
- { CTRL('P'), "Cursor to previous window" },
-@@ -571,6 +690,10 @@
- #endif /* NCURSES_MOUSE_VERSION */
-
- while (!done && (ch = wgetch(current_win)) != ERR) {
-+ int y, x;
-+
-+ getyx(current_win, y, x);
-+
- switch (ch) {
- case '?':
- show_help(current_win);
-@@ -584,9 +707,18 @@
- case 'd':
- current_win = create_my_derwin(current_win);
- break;
-+ case 'D':
-+ if (!move_derwin(current_win)) {
-+ tail_line("error");
-+ continue;
-+ }
-+ break;
- case 'f':
- fill_window(current_win, (chtype) wgetch(current_win));
- break;
-+ case 'F':
-+ fill_with_pattern(current_win);
-+ break;
- case 'm':
- case 'M':
- if (!move_window(current_win, (ch == 'M'))) {
-@@ -600,12 +732,6 @@
- case 's':
- current_win = create_my_subwin(current_win);
- break;
-- case 't':
-- if (!move_subwin(current_win)) {
-- tail_line("error");
-- continue;
-- }
-- break;
- case CTRL('L'):
- refresh_all(current_win);
- break;
-@@ -621,6 +747,7 @@
- /* want to allow deleting a window also */
- #endif
- default:
-+ wmove(current_win, y, x);
- tail_line("unrecognized key (use '?' for help)");
- beep();
- continue;
-Index: test/ncurses.c
-Prereq: 1.365
---- ncurses-5.9/test/ncurses.c 2011-01-22 19:48:33.000000000 +0000
-+++ ncurses-5.9-20141206/test/ncurses.c 2014-10-10 09:09:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -40,7 +40,7 @@
- Author: Eric S. Raymond <esr@snark.thyrsus.com> 1993
- Thomas E. Dickey (beginning revision 1.27 in 1996).
-
--$Id: ncurses.c,v 1.365 2011/01/22 19:48:33 tom Exp $
-+$Id: ncurses.c,v 1.417 2014/10/10 09:09:41 tom Exp $
-
- ***************************************************************************/
-
-@@ -157,15 +157,23 @@
- static int max_pairs; /* ...and the number of color pairs */
-
- typedef struct {
-- short red;
-- short green;
-- short blue;
-+ NCURSES_COLOR_T red;
-+ NCURSES_COLOR_T green;
-+ NCURSES_COLOR_T blue;
- } RGB_DATA;
-
- static RGB_DATA *all_colors;
-
- static void main_menu(bool);
-
-+static void
-+failed(const char *s)
-+{
-+ perror(s);
-+ endwin();
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
- /* The behavior of mvhline, mvvline for negative/zero length is unspecified,
- * though we can rely on negative x/y values to stop the macro.
- */
-@@ -295,9 +303,9 @@
-
- #if USE_WIDEC_SUPPORT
- static wchar_t
--fullwidth_of(int ch)
-+fullwidth_digit(int ch)
- {
-- return (ch + 0xff10 - '0');
-+ return (wchar_t) (ch + 0xff10 - '0');
- }
-
- static void
-@@ -305,7 +313,7 @@
- {
- int ch;
- while ((ch = *source++) != 0) {
-- *target++ = fullwidth_of(ch);
-+ *target++ = fullwidth_digit(ch);
- }
- *target = 0;
- }
-@@ -315,7 +323,7 @@
- {
- int ch;
- while ((ch = *source++) != 0) {
-- *target++ = ch;
-+ *target++ = (wchar_t) ch;
- }
- *target = 0;
- }
-@@ -326,7 +334,7 @@
- {
- wchar_t source[2];
-
-- source[0] = fullwidth_of(digit + '0');
-+ source[0] = fullwidth_digit(digit + '0');
- source[1] = 0;
- setcchar(target, source, A_NORMAL, 0, 0);
- }
-@@ -490,7 +498,7 @@
- #ifdef __MINGW32__
- system("cmd.exe");
- #else
-- system("sh");
-+ IGNORE_RC(system("sh"));
- #endif
- if (message)
- addstr("returned from shellout.\n");
-@@ -723,6 +731,8 @@
- len_winstack = need;
- winstack = typeRealloc(WINSTACK, len_winstack, winstack);
- }
-+ if (!winstack)
-+ failed("remember_boxes");
- winstack[level].text = txt_win;
- winstack[level].frame = box_win;
- }
-@@ -777,12 +787,21 @@
- }
- doupdate();
- }
--#endif /* resize_boxes */
-+#endif /* resize_boxes */
- #else
- #define forget_boxes() /* nothing */
- #define remember_boxes(level,text,frame) /* nothing */
- #endif
-
-+/*
-+ * Return-code is OK/ERR or a keyname.
-+ */
-+static const char *
-+ok_keyname(int code)
-+{
-+ return ((code == OK) ? "OK" : ((code == ERR) ? "ERR" : keyname(code)));
-+}
-+
- static void
- wgetch_test(unsigned level, WINDOW *win, int delay)
- {
-@@ -824,9 +843,11 @@
- } else if (c == 'g') {
- waddstr(win, "getstr test: ");
- echo();
-- wgetnstr(win, buf, sizeof(buf) - 1);
-+ c = wgetnstr(win, buf, sizeof(buf) - 1);
- noecho();
-- wprintw(win, "I saw %d characters:\n\t`%s'.", (int) strlen(buf), buf);
-+ wprintw(win, "I saw %d characters:\n\t`%s' (%s).",
-+ (int) strlen(buf), buf,
-+ ok_keyname(c));
- wclrtoeol(win);
- wgetch_wrap(win, first_y);
- } else if (c == 'k') {
-@@ -922,7 +943,7 @@
- refresh();
-
- #ifdef NCURSES_MOUSE_VERSION
-- mousemask(ALL_MOUSE_EVENTS, (mmask_t *) 0);
-+ mousemask(ALL_MOUSE_EVENTS | REPORT_MOUSE_POSITION, (mmask_t *) 0);
- #endif
-
- (void) printw("Delay in 10ths of a second (<CR> for blocking input)? ");
-@@ -1023,6 +1044,8 @@
- free(result);
- result = 0;
- }
-+ } else {
-+ failed("wcstos");
- }
- }
- return result;
-@@ -1072,7 +1095,7 @@
- } else if (c == 'g') {
- waddstr(win, "getstr test: ");
- echo();
-- code = wgetn_wstr(win, wint_buf, sizeof(wint_buf) - 1);
-+ code = wgetn_wstr(win, wint_buf, BUFSIZ - 1);
- noecho();
- if (code == ERR) {
- wprintw(win, "wgetn_wstr returns an error.");
-@@ -1229,8 +1252,13 @@
- #define termattrs() my_termattrs()
- #endif
-
--#define MAX_ATTRSTRING 31
--#define LEN_ATTRSTRING 26
-+#define ATTRSTRING_1ST 32 /* ' ' */
-+#define ATTRSTRING_END 126 /* '~' */
-+
-+#define COL_ATTRSTRING 25
-+#define MARGIN_4_ATTRS (COL_ATTRSTRING + 8)
-+#define LEN_ATTRSTRING (COLS - MARGIN_4_ATTRS)
-+#define MAX_ATTRSTRING (ATTRSTRING_END + 1 - ATTRSTRING_1ST)
-
- static char attr_test_string[MAX_ATTRSTRING + 1];
-
-@@ -1264,6 +1292,10 @@
- " a/A toggle ACS (alternate character set) mapping");
- MvWPrintw(helpwin, row, col,
- " v/V toggle video attribute to combine with each line");
-+#if USE_WIDEC_SUPPORT
-+ MvWPrintw(helpwin, row, col,
-+ " w/W toggle normal/wide (double-width) test-characters");
-+#endif
- }
-
- static void
-@@ -1278,29 +1310,29 @@
- }
-
- static bool
--cycle_color_attr(int ch, short *fg, short *bg, short *tx)
-+cycle_color_attr(int ch, NCURSES_COLOR_T *fg, NCURSES_COLOR_T *bg, NCURSES_COLOR_T *tx)
- {
- bool error = FALSE;
-
- if (use_colors) {
- switch (ch) {
- case 'f':
-- *fg = (short) (*fg + 1);
-+ *fg = (NCURSES_COLOR_T) (*fg + 1);
- break;
- case 'F':
-- *fg = (short) (*fg - 1);
-+ *fg = (NCURSES_COLOR_T) (*fg - 1);
- break;
- case 'b':
-- *bg = (short) (*bg + 1);
-+ *bg = (NCURSES_COLOR_T) (*bg + 1);
- break;
- case 'B':
-- *bg = (short) (*bg - 1);
-+ *bg = (NCURSES_COLOR_T) (*bg - 1);
- break;
- case 't':
-- *tx = (short) (*tx + 1);
-+ *tx = (NCURSES_COLOR_T) (*tx + 1);
- break;
- case 'T':
-- *tx = (short) (*tx - 1);
-+ *tx = (NCURSES_COLOR_T) (*tx - 1);
- break;
- default:
- beep();
-@@ -1308,17 +1340,17 @@
- break;
- }
- if (*fg >= COLORS)
-- *fg = (short) min_colors;
-+ *fg = (NCURSES_COLOR_T) min_colors;
- if (*fg < min_colors)
-- *fg = (short) (COLORS - 1);
-+ *fg = (NCURSES_COLOR_T) (COLORS - 1);
- if (*bg >= COLORS)
-- *bg = (short) min_colors;
-+ *bg = (NCURSES_COLOR_T) min_colors;
- if (*bg < min_colors)
-- *bg = (short) (COLORS - 1);
-+ *bg = (NCURSES_COLOR_T) (COLORS - 1);
- if (*tx >= COLORS)
- *tx = -1;
- if (*tx < -1)
-- *tx = (short) (COLORS - 1);
-+ *tx = (NCURSES_COLOR_T) (COLORS - 1);
- } else {
- beep();
- error = TRUE;
-@@ -1329,12 +1361,14 @@
- static void
- adjust_attr_string(int adjust)
- {
-- int first = ((int) UChar(attr_test_string[0])) + adjust;
-- int last = first + LEN_ATTRSTRING;
--
-- if (first >= ' ' && last <= '~') { /* 32..126 */
-- int j, k;
-- for (j = 0, k = first; j < MAX_ATTRSTRING && k <= last; ++j, ++k) {
-+ char save = attr_test_string[0];
-+ int first = ((int) UChar(save)) + adjust;
-+ int j, k;
-+
-+ if (first >= ATTRSTRING_1ST) {
-+ for (j = 0, k = first; j < MAX_ATTRSTRING; ++j, ++k) {
-+ if (k > ATTRSTRING_END)
-+ break;
- attr_test_string[j] = (char) k;
- if (((k + 1 - first) % 5) == 0) {
- if (++j >= MAX_ATTRSTRING)
-@@ -1342,23 +1376,40 @@
- attr_test_string[j] = ' ';
- }
- }
-- while (j < MAX_ATTRSTRING)
-- attr_test_string[j++] = ' ';
-- attr_test_string[j] = '\0';
-- } else {
-- beep();
-+ if ((LEN_ATTRSTRING - j) > 5) {
-+ attr_test_string[0] = save;
-+ adjust_attr_string(adjust - 1);
-+ } else {
-+ while (j < MAX_ATTRSTRING)
-+ attr_test_string[j++] = ' ';
-+ attr_test_string[j] = '\0';
-+ }
- }
- }
-
-+/*
-+ * Prefer the right-end of the string for starting, since that maps to the
-+ * VT100 line-drawing.
-+ */
-+static int
-+default_attr_string(void)
-+{
-+ int result = (ATTRSTRING_END - LEN_ATTRSTRING);
-+ result += (LEN_ATTRSTRING / 5);
-+ if (result < ATTRSTRING_1ST)
-+ result = ATTRSTRING_1ST;
-+ return result;
-+}
-+
- static void
- init_attr_string(void)
- {
-- attr_test_string[0] = 'a';
-+ attr_test_string[0] = (char) default_attr_string();
- adjust_attr_string(0);
- }
-
- static int
--show_attr(int row, int skip, bool arrow, chtype attr, const char *name)
-+show_attr(WINDOW *win, int row, int skip, bool arrow, chtype attr, const char *name)
- {
- int ncv = get_ncv();
- chtype test = attr & (chtype) (~A_ALTCHARSET);
-@@ -1366,7 +1417,7 @@
- if (arrow)
- MvPrintw(row, 5, "-->");
- MvPrintw(row, 8, "%s mode:", name);
-- MvPrintw(row, 24, "|");
-+ MvPrintw(row, COL_ATTRSTRING - 1, "|");
- if (skip)
- printw("%*s", skip, " ");
- /*
-@@ -1374,27 +1425,29 @@
- * character at a time (to pass its rendition directly), and use the
- * string operation for the other attributes.
- */
-+ wmove(win, 0, 0);
-+ werase(win);
- if (attr & A_ALTCHARSET) {
- const char *s;
- chtype ch;
-
- for (s = attr_test_string; *s != '\0'; ++s) {
- ch = UChar(*s);
-- addch(ch | attr);
-+ (void) waddch(win, ch | attr);
- }
- } else {
-- (void) attrset(attr);
-- addstr(attr_test_string);
-- attroff(attr);
-+ (void) wattrset(win, AttrArg(attr, 0));
-+ (void) waddstr(win, attr_test_string);
-+ (void) wattroff(win, (int) attr);
- }
- if (skip)
- printw("%*s", skip, " ");
-- printw("|");
-+ MvPrintw(row, COL_ATTRSTRING + LEN_ATTRSTRING, "|");
- if (test != A_NORMAL) {
- if (!(termattrs() & test)) {
- printw(" (N/A)");
- } else {
-- if (ncv > 0 && (getbkgd(stdscr) & A_COLOR)) {
-+ if (ncv > 0 && stdscr && (getbkgd(stdscr) & A_COLOR)) {
- static const chtype table[] =
- {
- A_STANDOUT,
-@@ -1406,6 +1459,9 @@
- #ifdef A_INVIS
- A_INVIS,
- #endif
-+#ifdef A_ITALIC
-+ A_ITALIC,
-+#endif
- A_PROTECT,
- A_ALTCHARSET
- };
-@@ -1427,11 +1483,13 @@
- }
- return row + 2;
- }
-+
-+typedef struct {
-+ attr_t attr;
-+ NCURSES_CONST char *name;
-+} ATTR_TBL;
- /* *INDENT-OFF* */
--static const struct {
-- chtype attr;
-- NCURSES_CONST char * name;
--} attrs_to_test[] = {
-+static const ATTR_TBL attrs_to_test[] = {
- { A_STANDOUT, "STANDOUT" },
- { A_REVERSE, "REVERSE" },
- { A_BOLD, "BOLD" },
-@@ -1442,12 +1500,36 @@
- #ifdef A_INVIS
- { A_INVIS, "INVISIBLE" },
- #endif
-+#ifdef A_ITALIC
-+ { A_ITALIC, "ITALIC" },
-+#endif
- { A_NORMAL, "NORMAL" },
- };
- /* *INDENT-ON* */
-
-+static unsigned
-+init_attr_list(ATTR_TBL * target, attr_t attrs)
-+{
-+ unsigned result = 0;
-+ size_t n;
-+
-+ for (n = 0; n < SIZEOF(attrs_to_test); ++n) {
-+ attr_t test = attrs_to_test[n].attr;
-+ if (test == A_NORMAL || (test & attrs) != 0) {
-+ target[result++] = attrs_to_test[n];
-+ }
-+ }
-+ return result;
-+}
-+
- static bool
--attr_getc(int *skip, short *fg, short *bg, short *tx, int *ac, unsigned *kc)
-+attr_getc(int *skip,
-+ NCURSES_COLOR_T *fg,
-+ NCURSES_COLOR_T *bg,
-+ NCURSES_COLOR_T *tx,
-+ int *ac,
-+ unsigned *kc,
-+ unsigned limit)
- {
- bool result = TRUE;
- bool error = FALSE;
-@@ -1480,13 +1562,13 @@
- break;
- case 'v':
- if (*kc == 0)
-- *kc = SIZEOF(attrs_to_test) - 1;
-+ *kc = limit - 1;
- else
- *kc -= 1;
- break;
- case 'V':
- *kc += 1;
-- if (*kc >= SIZEOF(attrs_to_test))
-+ if (*kc >= limit)
- *kc = 0;
- break;
- case '<':
-@@ -1513,110 +1595,171 @@
- {
- int n;
- int skip = get_xmc();
-- short fg = COLOR_BLACK; /* color pair 0 is special */
-- short bg = COLOR_BLACK;
-- short tx = -1;
-+ NCURSES_COLOR_T fg = COLOR_BLACK; /* color pair 0 is special */
-+ NCURSES_COLOR_T bg = COLOR_BLACK;
-+ NCURSES_COLOR_T tx = -1;
- int ac = 0;
- unsigned j, k;
-+ WINDOW *my_wins[SIZEOF(attrs_to_test)];
-+ ATTR_TBL my_list[SIZEOF(attrs_to_test)];
-+ unsigned my_size = init_attr_list(my_list, termattrs());
-+
-+ if (my_size > 1) {
-+ for (j = 0; j < my_size; ++j) {
-+ my_wins[j] = subwin(stdscr,
-+ 1, LEN_ATTRSTRING,
-+ 2 + (int) (2 * j), COL_ATTRSTRING);
-+ scrollok(my_wins[j], FALSE);
-+ }
-+
-+ if (skip < 0)
-+ skip = 0;
-+
-+ n = skip; /* make it easy */
-+ k = my_size - 1;
-+ init_attr_string();
-
-- if (skip < 0)
-- skip = 0;
--
-- n = skip; /* make it easy */
-- k = SIZEOF(attrs_to_test) - 1;
-- init_attr_string();
--
-- do {
-- int row = 2;
-- chtype normal = A_NORMAL | BLANK;
-- chtype extras = (chtype) ac;
-+ do {
-+ int row = 2;
-+ chtype normal = A_NORMAL | BLANK;
-+ chtype extras = (chtype) ac;
-
-- if (use_colors) {
-- short pair = (short) (fg != COLOR_BLACK || bg != COLOR_BLACK);
-- if (pair != 0) {
-- pair = 1;
-- if (init_pair(pair, fg, bg) == ERR) {
-- beep();
-- } else {
-- normal |= (chtype) COLOR_PAIR(pair);
-+ if (use_colors) {
-+ NCURSES_PAIRS_T pair = 0;
-+ if ((fg != COLOR_BLACK) || (bg != COLOR_BLACK)) {
-+ pair = 1;
-+ if (init_pair(pair, fg, bg) == ERR) {
-+ beep();
-+ } else {
-+ normal |= (chtype) COLOR_PAIR(pair);
-+ }
- }
-- }
-- if (tx >= 0) {
-- pair = 2;
-- if (init_pair(pair, tx, bg) == ERR) {
-- beep();
-- } else {
-- extras |= (chtype) COLOR_PAIR(pair);
-+ if (tx >= 0) {
-+ pair = 2;
-+ if (init_pair(pair, tx, bg) == ERR) {
-+ beep();
-+ } else {
-+ extras |= (chtype) COLOR_PAIR(pair);
-+ normal &= ~A_COLOR;
-+ }
- }
- }
-- }
-- bkgd(normal);
-- bkgdset(normal);
-- erase();
-+ bkgd(normal);
-+ bkgdset(normal);
-+ erase();
-
-- box(stdscr, 0, 0);
-- MvAddStr(0, 20, "Character attribute test display");
-+ box(stdscr, 0, 0);
-+ MvAddStr(0, 20, "Character attribute test display");
-
-- for (j = 0; j < SIZEOF(attrs_to_test); ++j) {
-- bool arrow = (j == k);
-- row = show_attr(row, n, arrow,
-- extras |
-- attrs_to_test[j].attr |
-- attrs_to_test[k].attr,
-- attrs_to_test[j].name);
-- }
--
-- MvPrintw(row, 8,
-- "This terminal does %shave the magic-cookie glitch",
-- get_xmc() > -1 ? "" : "not ");
-- MvPrintw(row + 1, 8, "Enter '?' for help.");
-- show_color_attr(fg, bg, tx);
-- printw(" ACS (%d)", ac != 0);
-+ for (j = 0; j < my_size; ++j) {
-+ bool arrow = (j == k);
-+ row = show_attr(my_wins[j], row, n, arrow,
-+ normal |
-+ extras |
-+ my_list[j].attr |
-+ my_list[k].attr,
-+ my_list[j].name);
-+ }
-+
-+ MvPrintw(row, 8,
-+ "This terminal does %shave the magic-cookie glitch",
-+ get_xmc() > -1 ? "" : "not ");
-+ MvPrintw(row + 1, 8, "Enter '?' for help.");
-+ show_color_attr(fg, bg, tx);
-+ printw(" ACS (%d)", ac != 0);
-
-- refresh();
-- } while (attr_getc(&n, &fg, &bg, &tx, &ac, &k));
-+ refresh();
-+ } while (attr_getc(&n, &fg, &bg, &tx, &ac, &k, my_size));
-
-- bkgdset(A_NORMAL | BLANK);
-- erase();
-- endwin();
-+ bkgdset(A_NORMAL | BLANK);
-+ erase();
-+ endwin();
-+ } else {
-+ Cannot("does not support video attributes.");
-+ }
- }
-
- #if USE_WIDEC_SUPPORT
-+static bool use_fullwidth;
- static wchar_t wide_attr_test_string[MAX_ATTRSTRING + 1];
-
-+#define FULL_LO 0xff00
-+#define FULL_HI 0xff5e
-+#define HALF_LO 0x20
-+
-+#define isFullWidth(ch) ((int)(ch) >= FULL_LO && (int)(ch) <= FULL_HI)
-+#define ToNormalWidth(ch) (wchar_t) (((int)(ch) - FULL_LO) + HALF_LO)
-+#define ToFullWidth(ch) (wchar_t) (((int)(ch) - HALF_LO) + FULL_LO)
-+
-+/*
-+ * Returns an ASCII code in [32..126]
-+ */
-+static wchar_t
-+normal_wchar(int ch)
-+{
-+ wchar_t result = (wchar_t) ch;
-+ if (isFullWidth(ch))
-+ result = ToNormalWidth(ch);
-+ return result;
-+}
-+
-+/*
-+ * Returns either an ASCII code in in [32..126] or full-width in
-+ * [0xff00..0xff5e], according to use_fullwidth setting.
-+ */
-+static wchar_t
-+target_wchar(int ch)
-+{
-+ wchar_t result = (wchar_t) ch;
-+ if (use_fullwidth) {
-+ if (!isFullWidth(ch))
-+ result = ToFullWidth(ch);
-+ } else {
-+ if (isFullWidth(ch))
-+ result = ToNormalWidth(ch);
-+ }
-+ return result;
-+}
-+
- static void
- wide_adjust_attr_string(int adjust)
- {
-- int first = ((int) UChar(wide_attr_test_string[0])) + adjust;
-- int last = first + LEN_ATTRSTRING;
--
-- if (first >= ' ' && last <= '~') { /* 32..126 */
-- int j, k;
-- for (j = 0, k = first; j < MAX_ATTRSTRING && k <= last; ++j, ++k) {
-- wide_attr_test_string[j] = k;
-+ wchar_t save = wide_attr_test_string[0];
-+ int first = ((int) normal_wchar(save)) + adjust;
-+ int j, k;
-+
-+ if (first >= ATTRSTRING_1ST) {
-+ for (j = 0, k = first; j < MAX_ATTRSTRING; ++j, ++k) {
-+ if (k > ATTRSTRING_END)
-+ break;
-+ wide_attr_test_string[j] = target_wchar(k);
- if (((k + 1 - first) % 5) == 0) {
- if (++j >= MAX_ATTRSTRING)
- break;
- wide_attr_test_string[j] = ' ';
- }
- }
-- while (j < MAX_ATTRSTRING)
-- wide_attr_test_string[j++] = ' ';
-- wide_attr_test_string[j] = '\0';
-- } else {
-- beep();
-+ if ((LEN_ATTRSTRING - j) > 5) {
-+ wide_attr_test_string[0] = save;
-+ wide_adjust_attr_string(adjust - 1);
-+ } else {
-+ while (j < MAX_ATTRSTRING)
-+ wide_attr_test_string[j++] = ' ';
-+ wide_attr_test_string[j] = '\0';
-+ }
- }
- }
-
- static void
- wide_init_attr_string(void)
- {
-- wide_attr_test_string[0] = 'a';
-+ use_fullwidth = FALSE;
-+ wide_attr_test_string[0] = (wchar_t) default_attr_string();
- wide_adjust_attr_string(0);
- }
-
- static void
--set_wide_background(short pair)
-+set_wide_background(NCURSES_PAIRS_T pair)
- {
- cchar_t normal;
- wchar_t blank[2];
-@@ -1634,9 +1777,10 @@
- attr_t result = A_NORMAL;
- attr_t attr;
- cchar_t ch;
-- short pair;
-+ NCURSES_PAIRS_T pair;
- wchar_t wch[10];
-
-+ memset(&ch, 0, sizeof(ch));
- if (getbkgrnd(&ch) != ERR) {
- if (getcchar(&ch, wch, &attr, &pair, 0) != ERR) {
- result = attr;
-@@ -1646,7 +1790,13 @@
- }
-
- static int
--wide_show_attr(int row, int skip, bool arrow, chtype attr, short pair, const char *name)
-+wide_show_attr(WINDOW *win,
-+ int row,
-+ int skip,
-+ bool arrow,
-+ chtype attr,
-+ NCURSES_PAIRS_T pair,
-+ const char *name)
- {
- int ncv = get_ncv();
- chtype test = attr & ~WA_ALTCHARSET;
-@@ -1654,7 +1804,7 @@
- if (arrow)
- MvPrintw(row, 5, "-->");
- MvPrintw(row, 8, "%s mode:", name);
-- MvPrintw(row, 24, "|");
-+ MvPrintw(row, COL_ATTRSTRING - 1, "|");
- if (skip)
- printw("%*s", skip, " ");
-
-@@ -1663,6 +1813,8 @@
- * character at a time (to pass its rendition directly), and use the
- * string operation for the other attributes.
- */
-+ wmove(win, 0, 0);
-+ werase(win);
- if (attr & WA_ALTCHARSET) {
- const wchar_t *s;
- cchar_t ch;
-@@ -1672,20 +1824,20 @@
- fill[0] = *s;
- fill[1] = L'\0';
- setcchar(&ch, fill, attr, pair, 0);
-- add_wch(&ch);
-+ (void) wadd_wch(win, &ch);
- }
- } else {
-- attr_t old_attr;
-- short old_pair;
-+ attr_t old_attr = 0;
-+ NCURSES_PAIRS_T old_pair = 0;
-
-- (void) attr_get(&old_attr, &old_pair, 0);
-- (void) attr_set(attr, pair, 0);
-- addwstr(wide_attr_test_string);
-- (void) attr_set(old_attr, old_pair, 0);
-+ (void) (wattr_get) (win, &old_attr, &old_pair, 0);
-+ (void) wattr_set(win, attr, pair, 0);
-+ (void) waddwstr(win, wide_attr_test_string);
-+ (void) wattr_set(win, old_attr, old_pair, 0);
- }
- if (skip)
- printw("%*s", skip, " ");
-- printw("|");
-+ MvPrintw(row, COL_ATTRSTRING + LEN_ATTRSTRING, "|");
- if (test != A_NORMAL) {
- if (!(term_attrs() & test)) {
- printw(" (N/A)");
-@@ -1723,7 +1875,10 @@
- }
-
- static bool
--wide_attr_getc(int *skip, short *fg, short *bg, short *tx, int *ac, unsigned *kc)
-+wide_attr_getc(int *skip,
-+ NCURSES_COLOR_T *fg, NCURSES_COLOR_T *bg,
-+ NCURSES_COLOR_T *tx, int *ac,
-+ unsigned *kc, unsigned limit)
- {
- bool result = TRUE;
- bool error = FALSE;
-@@ -1756,15 +1911,23 @@
- break;
- case 'v':
- if (*kc == 0)
-- *kc = SIZEOF(attrs_to_test) - 1;
-+ *kc = limit - 1;
- else
- *kc -= 1;
- break;
- case 'V':
- *kc += 1;
-- if (*kc >= SIZEOF(attrs_to_test))
-+ if (*kc >= limit)
- *kc = 0;
- break;
-+ case 'w':
-+ use_fullwidth = FALSE;
-+ wide_adjust_attr_string(0);
-+ break;
-+ case 'W':
-+ use_fullwidth = TRUE;
-+ wide_adjust_attr_string(0);
-+ break;
- case '<':
- wide_adjust_attr_string(-1);
- break;
-@@ -1789,68 +1952,82 @@
- {
- int n;
- int skip = get_xmc();
-- short fg = COLOR_BLACK; /* color pair 0 is special */
-- short bg = COLOR_BLACK;
-- short tx = -1;
-+ NCURSES_COLOR_T fg = COLOR_BLACK; /* color pair 0 is special */
-+ NCURSES_COLOR_T bg = COLOR_BLACK;
-+ NCURSES_COLOR_T tx = -1;
- int ac = 0;
- unsigned j, k;
-+ ATTR_TBL my_list[SIZEOF(attrs_to_test)];
-+ WINDOW *my_wins[SIZEOF(attrs_to_test)];
-+ unsigned my_size = init_attr_list(my_list, term_attrs());
-+
-+ if (my_size > 1) {
-+ for (j = 0; j < my_size; ++j) {
-+ my_wins[j] = subwin(stdscr,
-+ 1, LEN_ATTRSTRING,
-+ 2 + (int) (2 * j), COL_ATTRSTRING);
-+ scrollok(my_wins[j], FALSE);
-+ }
-+
-+ if (skip < 0)
-+ skip = 0;
-+
-+ n = skip; /* make it easy */
-+ k = my_size - 1;
-+ wide_init_attr_string();
-
-- if (skip < 0)
-- skip = 0;
--
-- n = skip; /* make it easy */
-- k = SIZEOF(attrs_to_test) - 1;
-- wide_init_attr_string();
--
-- do {
-- int row = 2;
-- short pair = 0;
-- short extras = 0;
-+ do {
-+ int row = 2;
-+ NCURSES_PAIRS_T pair = 0;
-+ NCURSES_PAIRS_T extras = 0;
-
-- if (use_colors) {
-- pair = (short) (fg != COLOR_BLACK || bg != COLOR_BLACK);
-- if (pair != 0) {
-- pair = 1;
-- if (init_pair(pair, fg, bg) == ERR) {
-- beep();
-+ if (use_colors) {
-+ pair = (NCURSES_PAIRS_T) (fg != COLOR_BLACK || bg != COLOR_BLACK);
-+ if (pair != 0) {
-+ pair = 1;
-+ if (init_pair(pair, fg, bg) == ERR) {
-+ beep();
-+ }
- }
-- }
-- extras = pair;
-- if (tx >= 0) {
-- extras = 2;
-- if (init_pair(extras, tx, bg) == ERR) {
-- beep();
-+ extras = pair;
-+ if (tx >= 0) {
-+ extras = 2;
-+ if (init_pair(extras, tx, bg) == ERR) {
-+ beep();
-+ }
- }
- }
-- }
-- set_wide_background(pair);
-- erase();
-+ set_wide_background(pair);
-+ erase();
-
-- box_set(stdscr, 0, 0);
-- MvAddStr(0, 20, "Character attribute test display");
-+ box_set(stdscr, 0, 0);
-+ MvAddStr(0, 20, "Character attribute test display");
-
-- for (j = 0; j < SIZEOF(attrs_to_test); ++j) {
-- row = wide_show_attr(row, n, j == k,
-- ((attr_t) ac |
-- attrs_to_test[j].attr |
-- attrs_to_test[k].attr),
-- extras,
-- attrs_to_test[j].name);
-- }
--
-- MvPrintw(row, 8,
-- "This terminal does %shave the magic-cookie glitch",
-- get_xmc() > -1 ? "" : "not ");
-- MvPrintw(row + 1, 8, "Enter '?' for help.");
-- show_color_attr(fg, bg, tx);
-- printw(" ACS (%d)", ac != 0);
-+ for (j = 0; j < my_size; ++j) {
-+ row = wide_show_attr(my_wins[j], row, n, (j == k),
-+ ((attr_t) ac |
-+ my_list[j].attr |
-+ my_list[k].attr),
-+ extras,
-+ my_list[j].name);
-+ }
-+
-+ MvPrintw(row, 8,
-+ "This terminal does %shave the magic-cookie glitch",
-+ get_xmc() > -1 ? "" : "not ");
-+ MvPrintw(row + 1, 8, "Enter '?' for help.");
-+ show_color_attr(fg, bg, tx);
-+ printw(" ACS (%d)", ac != 0);
-
-- refresh();
-- } while (wide_attr_getc(&n, &fg, &bg, &tx, &ac, &k));
-+ refresh();
-+ } while (wide_attr_getc(&n, &fg, &bg, &tx, &ac, &k, my_size));
-
-- set_wide_background(0);
-- erase();
-- endwin();
-+ set_wide_background(0);
-+ erase();
-+ endwin();
-+ } else {
-+ Cannot("does not support extended video attributes.");
-+ }
- }
- #endif
-
-@@ -1895,7 +2072,7 @@
- } else if (color < 0) {
- strcpy(temp, "default");
- } else {
-- strcpy(temp, the_color_names[color]);
-+ sprintf(temp, "%.*s", 16, the_color_names[color]);
- }
- printw("%-*.*s", width, width, temp);
- }
-@@ -1925,6 +2102,10 @@
- " a/A toggle altcharset off/on");
- MvWPrintw(helpwin, row++, col,
- " b/B toggle bold off/on");
-+ if (has_colors()) {
-+ MvWPrintw(helpwin, row++, col,
-+ " c/C cycle used-colors through 8,16,...,COLORS");
-+ }
- MvWPrintw(helpwin, row++, col,
- " n/N toggle text/number on/off");
- MvWPrintw(helpwin, row++, col,
-@@ -1945,16 +2126,46 @@
-
- #define set_color_test(name, value) if (name != value) { name = value; base_row = 0; }
-
-+static int
-+color_cycle(int current, int step)
-+{
-+ int result = current;
-+ if (step < 0) {
-+ if (current <= 8) {
-+ result = COLORS;
-+ } else {
-+ result = 8;
-+ if ((result * 2) > COLORS) {
-+ result = COLORS;
-+ } else {
-+ while ((result * 2) < current) {
-+ result *= 2;
-+ }
-+ }
-+ }
-+ } else {
-+ if (current >= COLORS) {
-+ result = 8;
-+ } else {
-+ result *= 2;
-+ }
-+ if (result > COLORS)
-+ result = COLORS;
-+ }
-+ return result;
-+}
-+
- /* generate a color test pattern */
- static void
- color_test(void)
- {
-- short i;
-+ NCURSES_PAIRS_T i;
- int top = 0, width;
- int base_row = 0;
- int grid_top = top + 3;
- int page_size = (LINES - grid_top);
-- int pairs_max = PAIR_NUMBER(A_COLOR) + 1;
-+ int pairs_max;
-+ int colors_max = COLORS;
- int row_limit;
- int per_row;
- char numbered[80];
-@@ -1967,23 +2178,24 @@
- bool opt_wide = FALSE;
- WINDOW *helpwin;
-
-- if (COLORS * COLORS == COLOR_PAIRS) {
-- int limit = (COLORS - min_colors) * (COLORS - min_colors);
-- if (pairs_max > limit)
-- pairs_max = limit;
-- } else {
-- if (pairs_max > COLOR_PAIRS)
-- pairs_max = COLOR_PAIRS;
-- }
--
- while (!done) {
- int shown = 0;
-
-+ pairs_max = PAIR_NUMBER(A_COLOR) + 1;
-+ if (colors_max * colors_max <= COLOR_PAIRS) {
-+ int limit = (colors_max - min_colors) * (colors_max - min_colors);
-+ if (pairs_max > limit)
-+ pairs_max = limit;
-+ } else {
-+ if (pairs_max > COLOR_PAIRS)
-+ pairs_max = COLOR_PAIRS;
-+ }
-+
- /* this assumes an 80-column line */
- if (opt_wide) {
- width = 4;
- hello = "Test";
-- per_row = (COLORS > 8) ? 16 : 8;
-+ per_row = (colors_max > 8) ? 16 : 8;
- } else {
- width = 8;
- hello = "Hello";
-@@ -1994,9 +2206,12 @@
- row_limit = (pairs_max + per_row - 1) / per_row;
-
- move(0, 0);
-- (void) printw("There are %d color pairs and %d colors%s\n",
-- pairs_max, COLORS,
-- min_colors ? " besides 'default'" : "");
-+ (void) printw("There are %d color pairs and %d colors",
-+ pairs_max, COLORS);
-+ if (colors_max != COLORS)
-+ (void) printw(" (using %d colors)", colors_max);
-+ if (min_colors)
-+ (void) addstr(" besides 'default'");
-
- clrtobot();
- MvPrintw(top + 1, 0,
-@@ -2010,28 +2225,28 @@
- show_color_name(top + 2, (i + 1) * width, i + min_colors, opt_wide);
-
- /* show a grid of colors, with color names/ numbers on the left */
-- for (i = (short) (base_row * per_row); i < pairs_max; i++) {
-+ for (i = (NCURSES_PAIRS_T) (base_row * per_row); i < pairs_max; i++) {
- int row = grid_top + (i / per_row) - base_row;
- int col = (i % per_row + 1) * width;
-- short pair = i;
-+ NCURSES_PAIRS_T pair = i;
-
--#define InxToFG(i) (short) ((i % (COLORS - min_colors)) + min_colors)
--#define InxToBG(i) (short) ((i / (COLORS - min_colors)) + min_colors)
-+#define InxToFG(i) (NCURSES_COLOR_T) ((i % (colors_max - min_colors)) + min_colors)
-+#define InxToBG(i) (NCURSES_COLOR_T) ((i / (colors_max - min_colors)) + min_colors)
- if (row >= 0 && move(row, col) != ERR) {
-- short fg = InxToFG(i);
-- short bg = InxToBG(i);
-+ NCURSES_COLOR_T fg = InxToFG(i);
-+ NCURSES_COLOR_T bg = InxToBG(i);
-
- init_pair(pair, fg, bg);
-- attron((attr_t) COLOR_PAIR(pair));
-+ attron(COLOR_PAIR(pair));
- if (opt_acsc)
-- attron((attr_t) A_ALTCHARSET);
-+ attron(A_ALTCHARSET);
- if (opt_bold)
-- attron((attr_t) A_BOLD);
-+ attron(A_BOLD);
- if (opt_revs)
-- attron((attr_t) A_REVERSE);
-+ attron(A_REVERSE);
-
- if (opt_nums) {
-- sprintf(numbered, "{%02X}", i);
-+ sprintf(numbered, "{%02X}", (int) i);
- hello = numbered;
- }
- printw("%-*.*s", width, width, hello);
-@@ -2059,6 +2274,12 @@
- case 'B':
- opt_bold = TRUE;
- break;
-+ case 'c':
-+ colors_max = color_cycle(colors_max, -1);
-+ break;
-+ case 'C':
-+ colors_max = color_cycle(colors_max, 1);
-+ break;
- case 'n':
- opt_nums = FALSE;
- break;
-@@ -2148,6 +2369,7 @@
- int grid_top = top + 3;
- int page_size = (LINES - grid_top);
- int pairs_max = (unsigned short) (-1);
-+ int colors_max = COLORS;
- int row_limit;
- int per_row;
- char numbered[80];
-@@ -2159,26 +2381,27 @@
- bool opt_wide = FALSE;
- bool opt_nums = FALSE;
- bool opt_xchr = FALSE;
-- wchar_t buffer[10];
-+ wchar_t buffer[80];
- WINDOW *helpwin;
-
-- if (COLORS * COLORS == COLOR_PAIRS) {
-- int limit = (COLORS - min_colors) * (COLORS - min_colors);
-- if (pairs_max > limit)
-- pairs_max = limit;
-- } else {
-- if (pairs_max > COLOR_PAIRS)
-- pairs_max = COLOR_PAIRS;
-- }
--
- while (!done) {
- int shown = 0;
-
-+ pairs_max = (unsigned short) (-1);
-+ if (colors_max * colors_max <= COLOR_PAIRS) {
-+ int limit = (colors_max - min_colors) * (colors_max - min_colors);
-+ if (pairs_max > limit)
-+ pairs_max = limit;
-+ } else {
-+ if (pairs_max > COLOR_PAIRS)
-+ pairs_max = COLOR_PAIRS;
-+ }
-+
- /* this assumes an 80-column line */
- if (opt_wide) {
- width = 4;
- hello = "Test";
-- per_row = (COLORS > 8) ? 16 : 8;
-+ per_row = (colors_max > 8) ? 16 : 8;
- } else {
- width = 8;
- hello = "Hello";
-@@ -2197,9 +2420,12 @@
- row_limit = (pairs_max + per_row - 1) / per_row;
-
- move(0, 0);
-- (void) printw("There are %d color pairs and %d colors%s\n",
-- pairs_max, COLORS,
-- min_colors ? " besides 'default'" : "");
-+ (void) printw("There are %d color pairs and %d colors",
-+ pairs_max, COLORS);
-+ if (colors_max != COLORS)
-+ (void) printw(" (using %d colors)", colors_max);
-+ if (min_colors)
-+ (void) addstr(" besides 'default'");
-
- clrtobot();
- MvPrintw(top + 1, 0,
-@@ -2216,17 +2442,17 @@
- for (i = (base_row * per_row); i < pairs_max; i++) {
- int row = grid_top + (i / per_row) - base_row;
- int col = (i % per_row + 1) * width;
-- short pair = (short) i;
-+ NCURSES_PAIRS_T pair = (NCURSES_PAIRS_T) i;
-
- if (row >= 0 && move(row, col) != ERR) {
- init_pair(pair, InxToFG(i), InxToBG(i));
-- color_set(pair, NULL);
-+ (void) color_set(pair, NULL);
- if (opt_acsc)
-- attr_on((attr_t) A_ALTCHARSET, NULL);
-+ attr_on(A_ALTCHARSET, NULL);
- if (opt_bold)
-- attr_on((attr_t) A_BOLD, NULL);
-+ attr_on(A_BOLD, NULL);
- if (opt_revs)
-- attr_on((attr_t) A_REVERSE, NULL);
-+ attr_on(A_REVERSE, NULL);
-
- if (opt_nums) {
- sprintf(numbered, "{%02X}", i);
-@@ -2261,6 +2487,12 @@
- case 'B':
- opt_bold = TRUE;
- break;
-+ case 'c':
-+ colors_max = color_cycle(colors_max, -1);
-+ break;
-+ case 'C':
-+ colors_max = color_cycle(colors_max, 1);
-+ break;
- case 'n':
- opt_nums = FALSE;
- break;
-@@ -2347,21 +2579,21 @@
- #endif /* USE_WIDEC_SUPPORT */
-
- static void
--change_color(short current, int field, int value, int usebase)
-+change_color(NCURSES_PAIRS_T current, int field, int value, int usebase)
- {
-- short red, green, blue;
-+ NCURSES_COLOR_T red, green, blue;
-
- color_content(current, &red, &green, &blue);
-
- switch (field) {
- case 0:
-- red = (short) (usebase ? (red + value) : value);
-+ red = (NCURSES_COLOR_T) (usebase ? (red + value) : value);
- break;
- case 1:
-- green = (short) (usebase ? (green + value) : value);
-+ green = (NCURSES_COLOR_T) (usebase ? (green + value) : value);
- break;
- case 2:
-- blue = (short) (usebase ? (blue + value) : value);
-+ blue = (NCURSES_COLOR_T) (usebase ? (blue + value) : value);
- break;
- }
-
-@@ -2372,7 +2604,7 @@
- static void
- init_all_colors(void)
- {
-- short c;
-+ NCURSES_PAIRS_T c;
-
- for (c = 0; c < COLORS; ++c)
- init_color(c,
-@@ -2398,18 +2630,20 @@
- refresh();
-
- for (i = 0; i < max_colors; i++)
-- init_pair((short) i, (short) COLOR_WHITE, (short) i);
-+ init_pair((NCURSES_PAIRS_T) i,
-+ (NCURSES_COLOR_T) COLOR_WHITE,
-+ (NCURSES_COLOR_T) i);
-
- MvPrintw(LINES - 2, 0, "Number: %d", value);
-
- do {
-- short red, green, blue;
-+ NCURSES_COLOR_T red, green, blue;
-
- attron(A_BOLD);
- MvAddStr(0, 20, "Color RGB Value Editing");
- attroff(A_BOLD);
-
-- for (i = (short) top_color;
-+ for (i = (NCURSES_COLOR_T) top_color;
- (i - top_color < page_size)
- && (i < max_colors); i++) {
- char numeric[80];
-@@ -2419,34 +2653,34 @@
- (i == current ? '>' : ' '),
- (i < (int) SIZEOF(the_color_names)
- ? the_color_names[i] : numeric));
-- (void) attrset((attr_t) COLOR_PAIR(i));
-+ (void) attrset(AttrArg(COLOR_PAIR(i), 0));
- addstr(" ");
- (void) attrset(A_NORMAL);
-
-- color_content((short) i, &red, &green, &blue);
-+ color_content((NCURSES_PAIRS_T) i, &red, &green, &blue);
- addstr(" R = ");
- if (current == i && field == 0)
- attron(A_STANDOUT);
-- printw("%04d", red);
-+ printw("%04d", (int) red);
- if (current == i && field == 0)
- (void) attrset(A_NORMAL);
- addstr(", G = ");
- if (current == i && field == 1)
- attron(A_STANDOUT);
-- printw("%04d", green);
-+ printw("%04d", (int) green);
- if (current == i && field == 1)
- (void) attrset(A_NORMAL);
- addstr(", B = ");
- if (current == i && field == 2)
- attron(A_STANDOUT);
-- printw("%04d", blue);
-+ printw("%04d", (int) blue);
- if (current == i && field == 2)
- (void) attrset(A_NORMAL);
- (void) attrset(A_NORMAL);
- printw(" ( %3d %3d %3d )",
-- scaled_rgb(red),
-- scaled_rgb(green),
-- scaled_rgb(blue));
-+ (int) scaled_rgb(red),
-+ (int) scaled_rgb(green),
-+ (int) scaled_rgb(blue));
- }
-
- MvAddStr(LINES - 3, 0,
-@@ -2510,15 +2744,15 @@
- break;
-
- case '+':
-- change_color((short) current, field, value, 1);
-+ change_color((NCURSES_PAIRS_T) current, field, value, 1);
- break;
-
- case '-':
-- change_color((short) current, field, -value, 1);
-+ change_color((NCURSES_PAIRS_T) current, field, -value, 1);
- break;
-
- case '=':
-- change_color((short) current, field, value, 0);
-+ change_color((NCURSES_PAIRS_T) current, field, value, 0);
- break;
-
- case '?':
-@@ -2545,7 +2779,9 @@
- endwin();
- main_menu(FALSE);
- for (i = 0; i < max_colors; i++)
-- init_pair((short) i, (short) COLOR_WHITE, (short) i);
-+ init_pair((NCURSES_PAIRS_T) i,
-+ (NCURSES_COLOR_T) COLOR_WHITE,
-+ (NCURSES_COLOR_T) i);
- refresh();
- break;
-
-@@ -2586,32 +2822,19 @@
- * Alternate character-set stuff
- *
- ****************************************************************************/
--/* *INDENT-OFF* */
--static struct {
-- chtype attr;
-- const char *name;
--} attrs_to_cycle[] = {
-- { A_NORMAL, "normal" },
-- { A_BOLD, "bold" },
-- { A_BLINK, "blink" },
-- { A_REVERSE, "reverse" },
-- { A_UNDERLINE, "underline" },
--};
--/* *INDENT-ON* */
--
- static bool
--cycle_attr(int ch, unsigned *at_code, chtype *attr)
-+cycle_attr(int ch, unsigned *at_code, chtype *attr, ATTR_TBL * list, unsigned limit)
- {
- bool result = TRUE;
-
- switch (ch) {
- case 'v':
-- if ((*at_code += 1) >= SIZEOF(attrs_to_cycle))
-+ if ((*at_code += 1) >= limit)
- *at_code = 0;
- break;
- case 'V':
- if (*at_code == 0)
-- *at_code = SIZEOF(attrs_to_cycle) - 1;
-+ *at_code = limit - 1;
- else
- *at_code -= 1;
- break;
-@@ -2620,12 +2843,12 @@
- break;
- }
- if (result)
-- *attr = attrs_to_cycle[*at_code].attr;
-+ *attr = list[*at_code].attr;
- return result;
- }
-
- static bool
--cycle_colors(int ch, int *fg, int *bg, short *pair)
-+cycle_colors(int ch, int *fg, int *bg, NCURSES_PAIRS_T *pair)
- {
- bool result = FALSE;
-
-@@ -2653,10 +2876,12 @@
- break;
- }
- if (result) {
-- *pair = (short) (*fg != COLOR_BLACK || *bg != COLOR_BLACK);
-+ *pair = (NCURSES_PAIRS_T) (*fg != COLOR_BLACK || *bg != COLOR_BLACK);
- if (*pair != 0) {
- *pair = 1;
-- if (init_pair(*pair, (short) *fg, (short) *bg) == ERR) {
-+ if (init_pair(*pair,
-+ (NCURSES_COLOR_T) *fg,
-+ (NCURSES_COLOR_T) *bg) == ERR) {
- result = FALSE;
- }
- }
-@@ -2715,7 +2940,7 @@
- static void
- call_slk_color(int fg, int bg)
- {
-- init_pair(1, (short) bg, (short) fg);
-+ init_pair(1, (NCURSES_COLOR_T) bg, (NCURSES_COLOR_T) fg);
- slk_color(1);
- MvPrintw(SLK_WORK, 0, "Colors %d/%d\n", fg, bg);
- clrtoeol();
-@@ -2737,8 +2962,10 @@
- #if HAVE_SLK_COLOR
- int fg = COLOR_BLACK;
- int bg = COLOR_WHITE;
-- short pair = 0;
-+ NCURSES_PAIRS_T pair = 0;
- #endif
-+ ATTR_TBL my_list[SIZEOF(attrs_to_test)];
-+ unsigned my_size = init_attr_list(my_list, termattrs());
-
- c = CTRL('l');
- #if HAVE_SLK_COLOR
-@@ -2800,7 +3027,7 @@
- MvAddStr(SLK_WORK, 0, "Please enter the label value: ");
- strcpy(buf, "");
- if ((s = slk_label(c - '0')) != 0) {
-- strncpy(buf, s, 8);
-+ strncpy(buf, s, (size_t) 8);
- }
- wGetstring(stdscr, buf, 8);
- slk_set((c - '0'), buf, fmt);
-@@ -2819,7 +3046,7 @@
- #endif
-
- default:
-- if (cycle_attr(c, &at_code, &attr)) {
-+ if (cycle_attr(c, &at_code, &attr, my_list, my_size)) {
- slk_attrset(attr);
- slk_touch();
- slk_noutrefresh();
-@@ -2859,7 +3086,9 @@
- unsigned at_code = 0;
- int fg = COLOR_BLACK;
- int bg = COLOR_WHITE;
-- short pair = 0;
-+ NCURSES_PAIRS_T pair = 0;
-+ ATTR_TBL my_list[SIZEOF(attrs_to_test)];
-+ unsigned my_size = init_attr_list(my_list, term_attrs());
-
- c = CTRL('l');
- if (use_colors) {
-@@ -2955,13 +3184,13 @@
-
- case 'F':
- if (use_colors) {
-- fg = (short) ((fg + 1) % COLORS);
-+ fg = (NCURSES_COLOR_T) ((fg + 1) % COLORS);
- call_slk_color(fg, bg);
- }
- break;
- case 'B':
- if (use_colors) {
-- bg = (short) ((bg + 1) % COLORS);
-+ bg = (NCURSES_COLOR_T) ((bg + 1) % COLORS);
- call_slk_color(fg, bg);
- }
- break;
-@@ -2971,8 +3200,8 @@
- break;
- #endif
- default:
-- if (cycle_attr(c, &at_code, &attr)) {
-- slk_attr_set(attr, (fg || bg), NULL);
-+ if (cycle_attr(c, &at_code, &attr, my_list, my_size)) {
-+ slk_attr_set(attr, (NCURSES_COLOR_T) (fg || bg), NULL);
- slk_touch();
- slk_noutrefresh();
- break;
-@@ -3000,15 +3229,46 @@
- #endif
- #endif /* SLK_INIT */
-
--/* ISO 6429: codes 0x80 to 0x9f may be control characters that cause the
-+static void
-+show_256_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair)
-+{
-+ unsigned first = 0;
-+ unsigned last = 255;
-+ unsigned code;
-+ int count;
-+
-+ erase();
-+ attron(A_BOLD);
-+ MvPrintw(0, 20, "Display of Character Codes %#0x to %#0x",
-+ first, last);
-+ attroff(A_BOLD);
-+ refresh();
-+
-+ for (code = first; code <= last; ++code) {
-+ int row = (int) (2 + (code / 16));
-+ int col = (int) (5 * (code % 16));
-+ IGNORE_RC(mvaddch(row, col, colored_chtype(code, attr, pair)));
-+ for (count = 1; count < repeat; ++count) {
-+ addch(colored_chtype(code, attr, pair));
-+ }
-+ }
-+
-+}
-+
-+/*
-+ * Show a slice of 32 characters, allowing those to be repeated up to the
-+ * screen's width.
-+ *
-+ * ISO 6429: codes 0x80 to 0x9f may be control characters that cause the
- * terminal to perform functions. The remaining codes can be graphic.
- */
- static void
--show_upper_chars(unsigned first, int repeat, attr_t attr, short pair)
-+show_upper_chars(int base, int pagesize, int repeat, attr_t attr, NCURSES_PAIRS_T pair)
- {
-- bool C1 = (first == 128);
- unsigned code;
-- unsigned last = first + 31;
-+ unsigned first = (unsigned) base;
-+ unsigned last = first + (unsigned) pagesize - 2;
-+ bool C1 = (first == 128);
- int reply;
-
- erase();
-@@ -3020,8 +3280,8 @@
-
- for (code = first; code <= last; code++) {
- int count = repeat;
-- int row = 2 + ((int) (code - first) % 16);
-- int col = ((int) (code - first) / 16) * COLS / 2;
-+ int row = 2 + ((int) (code - first) % (pagesize / 2));
-+ int col = ((int) (code - first) / (pagesize / 2)) * COLS / 2;
- char tmp[80];
- sprintf(tmp, "%3u (0x%x)", code, code);
- MvPrintw(row, col, "%*s: ", COLS / 4, tmp);
-@@ -3045,7 +3305,7 @@
- #define PC_COLS 4
-
- static void
--show_pc_chars(int repeat, attr_t attr, short pair)
-+show_pc_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair)
- {
- unsigned code;
-
-@@ -3086,7 +3346,7 @@
- }
-
- static void
--show_box_chars(int repeat, attr_t attr, short pair)
-+show_box_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair)
- {
- (void) repeat;
-
-@@ -3133,7 +3393,7 @@
- }
-
- static void
--show_acs_chars(int repeat, attr_t attr, short pair)
-+show_acs_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair)
- /* display the ACS character set */
- {
- int n;
-@@ -3195,6 +3455,7 @@
- acs_display(void)
- {
- int c = 'a';
-+ int pagesize = 32;
- char *term = getenv("TERM");
- const char *pch_kludge = ((term != 0 && strstr(term, "linux"))
- ? "p=PC, "
-@@ -3205,8 +3466,10 @@
- int fg = COLOR_BLACK;
- int bg = COLOR_BLACK;
- unsigned at_code = 0;
-- short pair = 0;
-- void (*last_show_acs) (int, attr_t, short) = 0;
-+ NCURSES_PAIRS_T pair = 0;
-+ void (*last_show_acs) (int, attr_t, NCURSES_PAIRS_T) = 0;
-+ ATTR_TBL my_list[SIZEOF(attrs_to_test)];
-+ unsigned my_size = init_attr_list(my_list, termattrs());
-
- do {
- switch (c) {
-@@ -3222,6 +3485,13 @@
- else
- beep();
- break;
-+ case 'w':
-+ if (pagesize == 32) {
-+ pagesize = 256;
-+ } else {
-+ pagesize = 32;
-+ }
-+ break;
- case 'x':
- ToggleAcs(last_show_acs, show_box_chars);
- break;
-@@ -3257,7 +3527,7 @@
- --repeat;
- break;
- default:
-- if (cycle_attr(c, &at_code, &attr)
-+ if (cycle_attr(c, &at_code, &attr, my_list, my_size)
- || cycle_colors(c, &fg, &bg, &pair)) {
- break;
- } else {
-@@ -3265,25 +3535,28 @@
- }
- break;
- }
-- if (last_show_acs != 0)
-+ if (pagesize != 32) {
-+ show_256_chars(repeat, attr, pair);
-+ } else if (last_show_acs != 0) {
- last_show_acs(repeat, attr, pair);
-- else
-- show_upper_chars((unsigned) (digit * 32 + 128), repeat, attr, pair);
-+ } else {
-+ show_upper_chars(digit * pagesize + 128, pagesize, repeat, attr, pair);
-+ }
-
- MvPrintw(LINES - 3, 0,
- "Note: ANSI terminals may not display C1 characters.");
- MvPrintw(LINES - 2, 0,
-- "Select: a=ACS, x=box, %s0=C1, 1-3,+/- non-ASCII, </> repeat, ESC=quit",
-+ "Select: a=ACS, w=all x=box, %s0=C1, 1-3,+/- non-ASCII, </> repeat, ESC=quit",
- pch_kludge);
- if (use_colors) {
- MvPrintw(LINES - 1, 0,
- "v/V, f/F, b/B cycle through video attributes (%s) and color %d/%d.",
-- attrs_to_cycle[at_code].name,
-+ my_list[at_code].name,
- fg, bg);
- } else {
- MvPrintw(LINES - 1, 0,
- "v/V cycles through video attributes (%s).",
-- attrs_to_cycle[at_code].name);
-+ my_list[at_code].name);
- }
- refresh();
- } while (!isQuit(c = Getchar()));
-@@ -3295,7 +3568,7 @@
-
- #if USE_WIDEC_SUPPORT
- static cchar_t *
--merge_wide_attr(cchar_t *dst, const cchar_t *src, attr_t attr, short pair)
-+merge_wide_attr(cchar_t *dst, const cchar_t *src, attr_t attr, NCURSES_PAIRS_T pair)
- {
- int count;
-
-@@ -3312,8 +3585,55 @@
- return dst;
- }
-
-+/*
-+ * Header/legend take up no more than 8 lines, leaving 16 lines on a 24-line
-+ * display. If there are no repeats, we could normally display 16 lines of 64
-+ * characters (1024 total). However, taking repeats and double-width cells
-+ * into account, use 256 characters for the page.
-+ */
-+static void
-+show_paged_widechars(int base,
-+ int pagesize,
-+ int repeat,
-+ int space,
-+ attr_t attr,
-+ NCURSES_PAIRS_T pair)
-+{
-+ int first = base * pagesize;
-+ int last = first + pagesize - 1;
-+ int per_line = 16;
-+ cchar_t temp;
-+ wchar_t code;
-+ wchar_t codes[10];
-+
-+ erase();
-+ attron(A_BOLD);
-+ MvPrintw(0, 20, "Display of Character Codes %#x to %#x", first, last);
-+ attroff(A_BOLD);
-+
-+ for (code = (wchar_t) first; (int) code <= last; code++) {
-+ int row = (2 + ((int) code - first) / per_line);
-+ int col = 5 * ((int) code % per_line);
-+ int count;
-+
-+ memset(&codes, 0, sizeof(codes));
-+ codes[0] = code;
-+ setcchar(&temp, codes, attr, pair, 0);
-+ move(row, col);
-+ if (wcwidth(code) == 0 && code != 0) {
-+ addch((chtype) space |
-+ (A_REVERSE ^ attr) |
-+ (attr_t) COLOR_PAIR(pair));
-+ }
-+ add_wch(&temp);
-+ for (count = 1; count < repeat; ++count) {
-+ add_wch(&temp);
-+ }
-+ }
-+}
-+
- static void
--show_upper_widechars(int first, int repeat, int space, attr_t attr, short pair)
-+show_upper_widechars(int first, int repeat, int space, attr_t attr, NCURSES_PAIRS_T pair)
- {
- cchar_t temp;
- wchar_t code;
-@@ -3324,7 +3644,7 @@
- MvPrintw(0, 20, "Display of Character Codes %d to %d", first, last);
- attroff(A_BOLD);
-
-- for (code = first; (int) code <= last; code++) {
-+ for (code = (wchar_t) first; (int) code <= last; code++) {
- int row = 2 + ((code - first) % 16);
- int col = ((code - first) / 16) * COLS / 2;
- wchar_t codes[10];
-@@ -3332,11 +3652,13 @@
- int count = repeat;
- int y, x;
-
-- memset(&codes, 0, sizeof(codes));
-- codes[0] = code;
- sprintf(tmp, "%3ld (0x%lx)", (long) code, (long) code);
- MvPrintw(row, col, "%*s: ", COLS / 4, tmp);
-+
-+ memset(&codes, 0, sizeof(codes));
-+ codes[0] = code;
- setcchar(&temp, codes, attr, pair, 0);
-+
- do {
- /*
- * Give non-spacing characters something to combine with. If we
-@@ -3350,16 +3672,17 @@
- (attr_t) COLOR_PAIR(pair));
- }
- /*
-- * This could use add_wch(), but is done for comparison with the
-- * normal 'f' test (and to make a test-case for echo_wchar()).
-- * The screen will flicker because the erase() at the top of the
-- * function is met by the builtin refresh() in echo_wchar().
-+ * This uses echo_wchar(), for comparison with the normal 'f'
-+ * test (and to make a test-case for echo_wchar()). The screen
-+ * may flicker because the erase() at the top of the function
-+ * is met by the builtin refresh() in echo_wchar().
- */
- echo_wchar(&temp);
- /*
- * The repeat-count may make text wrap - avoid that.
- */
- getyx(stdscr, y, x);
-+ (void) y;
- if (x >= col + (COLS / 2) - 2)
- break;
- } while (--count > 0);
-@@ -3383,7 +3706,7 @@
- #define MERGE_ATTR(wch) merge_wide_attr(&temp, wch, attr, pair)
-
- static void
--show_wacs_chars(int repeat, attr_t attr, short pair)
-+show_wacs_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair)
- /* display the wide-ACS character set */
- {
- cchar_t temp;
-@@ -3443,7 +3766,7 @@
-
- #ifdef WACS_D_PLUS
- static void
--show_wacs_chars_double(int repeat, attr_t attr, short pair)
-+show_wacs_chars_double(int repeat, attr_t attr, NCURSES_PAIRS_T pair)
- /* display the wide-ACS character set */
- {
- cchar_t temp;
-@@ -3504,7 +3827,7 @@
-
- #ifdef WACS_T_PLUS
- static void
--show_wacs_chars_thick(int repeat, attr_t attr, short pair)
-+show_wacs_chars_thick(int repeat, attr_t attr, NCURSES_PAIRS_T pair)
- /* display the wide-ACS character set */
- {
- cchar_t temp;
-@@ -3568,7 +3891,7 @@
- #define MERGE_ATTR(n,wch) merge_wide_attr(&temp[n], wch, attr, pair)
-
- static void
--show_wbox_chars(int repeat, attr_t attr, short pair)
-+show_wbox_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair)
- {
- cchar_t temp[8];
-
-@@ -3603,7 +3926,7 @@
- #undef MERGE_ATTR
-
- static int
--show_2_wacs(int n, const char *name, const char *code, attr_t attr, short pair)
-+show_2_wacs(int n, const char *name, const char *code, attr_t attr, NCURSES_PAIRS_T pair)
- {
- const int height = 16;
- int row = 2 + (n % height);
-@@ -3612,7 +3935,7 @@
-
- MvPrintw(row, col, "%*s : ", COLS / 4, name);
- (void) attr_set(attr, pair, 0);
-- addstr(strcpy(temp, code));
-+ addstr(strncpy(temp, code, 20));
- (void) attr_set(A_NORMAL, 0, 0);
- return n + 1;
- }
-@@ -3620,7 +3943,7 @@
- #define SHOW_UTF8(n, name, code) show_2_wacs(n, name, code, attr, pair)
-
- static void
--show_utf8_chars(int repeat, attr_t attr, short pair)
-+show_utf8_chars(int repeat, attr_t attr, NCURSES_PAIRS_T pair)
- {
- int n;
-
-@@ -3680,12 +4003,15 @@
- int digit = 0;
- int repeat = 1;
- int space = ' ';
-+ int pagesize = 32;
- chtype attr = A_NORMAL;
- int fg = COLOR_BLACK;
- int bg = COLOR_BLACK;
- unsigned at_code = 0;
-- short pair = 0;
-- void (*last_show_wacs) (int, attr_t, short) = 0;
-+ NCURSES_PAIRS_T pair = 0;
-+ void (*last_show_wacs) (int, attr_t, NCURSES_PAIRS_T) = 0;
-+ ATTR_TBL my_list[SIZEOF(attrs_to_test)];
-+ unsigned my_size = init_attr_list(my_list, term_attrs());
-
- do {
- switch (c) {
-@@ -3705,6 +4031,13 @@
- ToggleAcs(last_show_wacs, show_wacs_chars_thick);
- break;
- #endif
-+ case 'w':
-+ if (pagesize == 32) {
-+ pagesize = 256;
-+ } else {
-+ pagesize = 32;
-+ }
-+ break;
- case 'x':
- ToggleAcs(last_show_wacs, show_wbox_chars);
- break;
-@@ -3728,7 +4061,7 @@
- } else if (c == '_') {
- space = (space == ' ') ? '_' : ' ';
- last_show_wacs = 0;
-- } else if (cycle_attr(c, &at_code, &attr)
-+ } else if (cycle_attr(c, &at_code, &attr, my_list, my_size)
- || cycle_colors(c, &fg, &bg, &pair)) {
- if (last_show_wacs != 0)
- break;
-@@ -3738,22 +4071,27 @@
- }
- break;
- }
-- if (last_show_wacs != 0)
-+ if (pagesize != 32) {
-+ show_paged_widechars(digit, pagesize, repeat, space, attr, pair);
-+ } else if (last_show_wacs != 0) {
- last_show_wacs(repeat, attr, pair);
-- else
-+ } else {
- show_upper_widechars(digit * 32 + 128, repeat, space, attr, pair);
-+ }
-
-- MvPrintw(LINES - 3, 0,
-- "Select: a/d/t WACS, x box, u UTF-8, 0-9,+/- non-ASCII, </> repeat, ESC=quit");
-+ MvPrintw(LINES - 4, 0,
-+ "Select: a/d/t WACS, w=all x=box, u UTF-8, ^L repaint");
-+ MvPrintw(LINES - 3, 2,
-+ "0-9,+/- non-ASCII, </> repeat, _ space, ESC=quit");
- if (use_colors) {
-- MvPrintw(LINES - 2, 0,
-+ MvPrintw(LINES - 2, 2,
- "v/V, f/F, b/B cycle through video attributes (%s) and color %d/%d.",
-- attrs_to_cycle[at_code].name,
-+ my_list[at_code].name,
- fg, bg);
- } else {
-- MvPrintw(LINES - 2, 0,
-+ MvPrintw(LINES - 2, 2,
- "v/V cycles through video attributes (%s).",
-- attrs_to_cycle[at_code].name);
-+ my_list[at_code].name);
- }
- refresh();
- } while (!isQuit(c = Getchar()));
-@@ -3779,7 +4117,7 @@
- /* Use non-default colors if possible to exercise bce a little */
- if (use_colors) {
- init_pair(1, COLOR_WHITE, COLOR_BLUE);
-- normal |= COLOR_PAIR(1);
-+ normal |= (chtype) COLOR_PAIR(1);
- }
- bkgdset(normal);
- erase();
-@@ -4115,7 +4453,8 @@
- outerbox(ul, lr, TRUE);
- refresh();
-
-- wrefresh(rwindow);
-+ if (rwindow != 0)
-+ wrefresh(rwindow);
-
- move(0, 0);
- clrtoeol();
-@@ -4185,10 +4524,12 @@
- transient((FRAME *) 0, (char *) 0);
- switch (c) {
- case CTRL('C'):
-- if ((neww = typeCalloc(FRAME, 1)) == 0) {
-+ if ((neww = typeCalloc(FRAME, (size_t) 1)) == 0) {
-+ failed("acs_and_scroll");
- goto breakout;
- }
- if ((neww->wind = getwindow()) == (WINDOW *) 0) {
-+ failed("acs_and_scroll");
- free(neww);
- goto breakout;
- }
-@@ -4265,16 +4606,20 @@
- if ((fp = fopen(DUMPFILE, "r")) == (FILE *) 0) {
- transient(current, "Can't open screen dump file");
- } else {
-- if ((neww = typeCalloc(FRAME, 1)) != 0) {
-+ if ((neww = typeCalloc(FRAME, (size_t) 1)) != 0) {
-
- neww->next = current ? current->next : 0;
- neww->last = current;
-- neww->last->next = neww;
-- neww->next->last = neww;
-+ if (neww->last != 0)
-+ neww->last->next = neww;
-+ if (neww->next != 0)
-+ neww->next->last = neww;
-
- neww->wind = getwin(fp);
-
- wrefresh(neww->wind);
-+ } else {
-+ failed("acs_and_scroll");
- }
- (void) fclose(fp);
- }
-@@ -4463,7 +4808,7 @@
- mkpanel(rows,cols,tly,tlx) - alloc a win and panel and associate them
- --------------------------------------------------------------------------*/
- static PANEL *
--mkpanel(short color, int rows, int cols, int tly, int tlx)
-+mkpanel(NCURSES_COLOR_T color, int rows, int cols, int tly, int tlx)
- {
- WINDOW *win;
- PANEL *pan = 0;
-@@ -4472,8 +4817,10 @@
- if ((pan = new_panel(win)) == 0) {
- delwin(win);
- } else if (use_colors) {
-- short fg = (short) ((color == COLOR_BLUE) ? COLOR_WHITE : COLOR_BLACK);
-- short bg = color;
-+ NCURSES_COLOR_T fg = (NCURSES_COLOR_T) ((color == COLOR_BLUE)
-+ ? COLOR_WHITE
-+ : COLOR_BLACK);
-+ NCURSES_COLOR_T bg = color;
-
- init_pair(color, fg, bg);
- wbkgdset(win, (attr_t) (COLOR_PAIR(color) | ' '));
-@@ -4509,13 +4856,13 @@
- fill_panel(win)
- --------------------------------------------------------------------------*/
- static void
--init_panel(void)
-+init_panel(WINDOW *win)
- {
- register int y, x;
-
- for (y = 0; y < LINES - 1; y++) {
- for (x = 0; x < COLS; x++)
-- wprintw(stdscr, "%d", (y + x) % 10);
-+ wprintw(win, "%d", (y + x) % 10);
- }
- }
-
-@@ -4541,7 +4888,7 @@
-
- #if USE_WIDEC_SUPPORT
- static void
--init_wide_panel(void)
-+init_wide_panel(WINDOW *win)
- {
- int digit;
- cchar_t temp[10];
-@@ -4553,7 +4900,7 @@
- int y, x;
- getyx(stdscr, y, x);
- digit = (y + x / 2) % 10;
-- } while (add_wch(&temp[digit]) != ERR);
-+ } while (wadd_wch(win, &temp[digit]) != ERR);
- }
-
- static void
-@@ -4607,7 +4954,7 @@
- }
-
- static void
--demo_panels(void (*InitPanel) (void), void (*FillPanel) (PANEL *))
-+demo_panels(void (*InitPanel) (WINDOW *), void (*FillPanel) (PANEL *))
- {
- int count;
- int itmp;
-@@ -4616,7 +4963,7 @@
- scrollok(stdscr, FALSE); /* we don't want stdscr to scroll! */
- refresh();
-
-- InitPanel();
-+ InitPanel(stdscr);
- for (count = 0; count < 5; count++) {
- px[1] = mkpanel(COLOR_RED,
- LINES / 2 - 2,
-@@ -5226,7 +5573,7 @@
- #ifdef A_COLOR
- if (use_colors) {
- init_pair(2, COLOR_CYAN, COLOR_BLUE);
-- wbkgd(subWin, COLOR_PAIR(2) | ' ');
-+ wbkgd(subWin, (chtype) (COLOR_PAIR(2) | ' '));
- }
- #endif
- (void) wattrset(subWin, A_BOLD);
-@@ -5449,6 +5796,8 @@
- for (n = 0; t_tbl[n].name != 0; n++)
- need += strlen(t_tbl[n].name) + 2;
- buf = typeMalloc(char, need);
-+ if (!buf)
-+ failed("tracetrace");
- }
- sprintf(buf, "0x%02x = {", tlevel);
- if (tlevel == 0) {
-@@ -5622,10 +5971,9 @@
- set_form_sub(f, derwin(w, rows, cols, 1, 2));
- box(w, 0, 0);
- keypad(w, TRUE);
-+ if (post_form(f) != E_OK)
-+ wrefresh(w);
- }
--
-- if (post_form(f) != E_OK)
-- wrefresh(w);
- }
-
- static void
-@@ -5649,55 +5997,60 @@
- if (field_info(me, &rows, &cols, &frow, &fcol, &nrow, &nbuf) == E_OK
- && nbuf > 0) {
- char *source = field_buffer(me, 1);
-- char temp[80];
-- long len;
--
-- strcpy(temp, source ? source : "");
-- len = (long) (char *) field_userptr(me);
-- if (c <= KEY_MAX) {
-- if (isgraph(c) && (len + 1) < (int) sizeof(temp)) {
-- temp[len++] = (char) c;
-- temp[len] = 0;
-- set_field_buffer(me, 1, temp);
-- c = '*';
-- } else {
-- c = 0;
-- }
-- } else {
-- switch (c) {
-- case REQ_BEG_FIELD:
-- case REQ_CLR_EOF:
-- case REQ_CLR_EOL:
-- case REQ_DEL_LINE:
-- case REQ_DEL_WORD:
-- case REQ_DOWN_CHAR:
-- case REQ_END_FIELD:
-- case REQ_INS_CHAR:
-- case REQ_INS_LINE:
-- case REQ_LEFT_CHAR:
-- case REQ_NEW_LINE:
-- case REQ_NEXT_WORD:
-- case REQ_PREV_WORD:
-- case REQ_RIGHT_CHAR:
-- case REQ_UP_CHAR:
-- c = 0; /* we don't want to do inline editing */
-- break;
-- case REQ_CLR_FIELD:
-- if (len) {
-- temp[0] = 0;
-+ size_t have = (source ? strlen(source) : 0) + 1;
-+ size_t need = 80 + have;
-+ char *temp = malloc(need);
-+ size_t len;
-+
-+ if (temp != 0) {
-+ strncpy(temp, source ? source : "", have + 1);
-+ len = (size_t) (char *) field_userptr(me);
-+ if (c <= KEY_MAX) {
-+ if (isgraph(c) && (len + 1) < sizeof(temp)) {
-+ temp[len++] = (char) c;
-+ temp[len] = 0;
- set_field_buffer(me, 1, temp);
-+ c = '*';
-+ } else {
-+ c = 0;
- }
-- break;
-- case REQ_DEL_CHAR:
-- case REQ_DEL_PREV:
-- if (len) {
-- temp[--len] = 0;
-- set_field_buffer(me, 1, temp);
-+ } else {
-+ switch (c) {
-+ case REQ_BEG_FIELD:
-+ case REQ_CLR_EOF:
-+ case REQ_CLR_EOL:
-+ case REQ_DEL_LINE:
-+ case REQ_DEL_WORD:
-+ case REQ_DOWN_CHAR:
-+ case REQ_END_FIELD:
-+ case REQ_INS_CHAR:
-+ case REQ_INS_LINE:
-+ case REQ_LEFT_CHAR:
-+ case REQ_NEW_LINE:
-+ case REQ_NEXT_WORD:
-+ case REQ_PREV_WORD:
-+ case REQ_RIGHT_CHAR:
-+ case REQ_UP_CHAR:
-+ c = 0; /* we don't want to do inline editing */
-+ break;
-+ case REQ_CLR_FIELD:
-+ if (len) {
-+ temp[0] = 0;
-+ set_field_buffer(me, 1, temp);
-+ }
-+ break;
-+ case REQ_DEL_CHAR:
-+ case REQ_DEL_PREV:
-+ if (len) {
-+ temp[--len] = 0;
-+ set_field_buffer(me, 1, temp);
-+ }
-+ break;
- }
-- break;
- }
-+ set_field_userptr(me, (void *) len);
-+ free(temp);
- }
-- set_field_userptr(me, (void *) len);
- }
- return c;
- }
-@@ -6045,7 +6398,7 @@
- static void
- overlap_test_1_attr(WINDOW *win, int flavor, int col)
- {
-- short cpair = (short) (1 + (flavor * 2) + col);
-+ NCURSES_PAIRS_T cpair = (NCURSES_PAIRS_T) (1 + (flavor * 2) + col);
-
- switch (flavor) {
- case 0:
-@@ -6056,11 +6409,11 @@
- break;
- case 2:
- init_pair(cpair, COLOR_BLUE, COLOR_WHITE);
-- (void) wattrset(win, (attr_t) COLOR_PAIR(cpair) | A_NORMAL);
-+ (void) wattrset(win, AttrArg(COLOR_PAIR(cpair), A_NORMAL));
- break;
- case 3:
- init_pair(cpair, COLOR_WHITE, COLOR_BLUE);
-- (void) wattrset(win, (attr_t) COLOR_PAIR(cpair) | A_BOLD);
-+ (void) wattrset(win, AttrArg(COLOR_PAIR(cpair), A_BOLD));
- break;
- }
- }
-@@ -6068,7 +6421,7 @@
- static void
- overlap_test_2_attr(WINDOW *win, int flavor, int col)
- {
-- short cpair = (short) (9 + (flavor * 2) + col);
-+ NCURSES_PAIRS_T cpair = (NCURSES_PAIRS_T) (9 + (flavor * 2) + col);
-
- switch (flavor) {
- case 0:
-@@ -6483,6 +6836,9 @@
- ," -a f,b set default-colors (assumed white-on-black)"
- ," -d use default-colors if terminal supports them"
- #endif
-+#if HAVE_USE_ENV
-+ ," -E call use_env(FALSE) to ignore $LINES and $COLUMNS"
-+#endif
- #if USE_SOFTKEYS
- ," -e fmt specify format for soft-keys test (e)"
- #endif
-@@ -6495,6 +6851,9 @@
- #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(__MINGW32__)
-+ ," -T call use_tioctl(TRUE) to allow SIGWINCH to override environment"
-+#endif
- #ifdef TRACE
- ," -t mask specify default trace-level (may toggle with ^T)"
- #endif
-@@ -6517,7 +6876,7 @@
- }
-
- #ifdef SIGUSR1
--static RETSIGTYPE
-+static void
- announce_sig(int sig)
- {
- (void) fprintf(stderr, "Handled signal %d\r\n", sig);
-@@ -6613,7 +6972,7 @@
- command = 0;
- for (;;) {
- char ch = '\0';
-- if (read(fileno(stdin), &ch, 1) <= 0) {
-+ if (read(fileno(stdin), &ch, (size_t) 1) <= 0) {
- if (command == 0)
- command = 'q';
- break;
-@@ -6681,17 +7040,29 @@
-
- setlocale(LC_ALL, "");
-
-- while ((c = getopt(argc, argv, "a:de:fhmp:s:t:")) != -1) {
-+ while ((c = getopt(argc, argv, "a:dEe:fhmp:s:Tt:")) != -1) {
- switch (c) {
- #ifdef NCURSES_VERSION
- case 'a':
- assumed_colors = TRUE;
-- sscanf(optarg, "%d,%d", &default_fg, &default_bg);
-+ switch (sscanf(optarg, "%d,%d", &default_fg, &default_bg)) {
-+ case 0:
-+ default_fg = COLOR_WHITE;
-+ /* FALLTHRU */
-+ case 1:
-+ default_bg = COLOR_BLACK;
-+ break;
-+ }
- break;
- case 'd':
- default_colors = TRUE;
- break;
- #endif
-+#if HAVE_USE_ENV
-+ case 'E':
-+ use_env(FALSE);
-+ break;
-+#endif
- case 'e':
- my_e_param = atoi(optarg);
- #ifdef NCURSES_VERSION
-@@ -6721,6 +7092,11 @@
- nap_msec = (int) atol(optarg);
- break;
- #endif
-+#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714) && !defined(__MINGW32__)
-+ case 'T':
-+ use_tioctl(TRUE);
-+ break;
-+#endif
- #ifdef TRACE
- case 't':
- save_trace = (unsigned) strtol(optarg, 0, 0);
-@@ -6761,7 +7137,7 @@
- bkgdset(BLANK);
-
- /* tests, in general, will want these modes */
-- use_colors = monochrome ? FALSE : has_colors();
-+ use_colors = (bool) (monochrome ? FALSE : has_colors());
-
- if (use_colors) {
- start_color();
-@@ -6772,7 +7148,7 @@
- use_default_colors();
- min_colors = -1;
- }
--#if NCURSES_VERSION_PATCH >= 20000708
-+#if HAVE_ASSUME_DEFAULT_COLORS
- if (assumed_colors)
- assume_default_colors(default_fg, default_bg);
- #endif
-@@ -6783,8 +7159,10 @@
- max_pairs = COLOR_PAIRS; /* was > 256 ? 256 : COLOR_PAIRS */
-
- if (can_change_color()) {
-- short cp;
-+ NCURSES_PAIRS_T cp;
- all_colors = typeMalloc(RGB_DATA, (unsigned) max_colors);
-+ if (!all_colors)
-+ failed("all_colors");
- for (cp = 0; cp < max_colors; ++cp) {
- color_content(cp,
- &all_colors[cp].red,
-@@ -6809,9 +7187,10 @@
- && okRGB(red)
- && okRGB(green)
- && okRGB(blue)) {
-- all_colors[c].red = (short) ((red * 1000) / scale);
-- all_colors[c].green = (short) ((green * 1000) / scale);
-- all_colors[c].blue = (short) ((blue * 1000) / scale);
-+#define Scaled(n) (NCURSES_COLOR_T) (((n) * 1000) / scale)
-+ all_colors[c].red = Scaled(red);
-+ all_colors[c].green = Scaled(green);
-+ all_colors[c].blue = Scaled(blue);
- }
- }
- fclose(fp);
-Index: test/newdemo.c
-Prereq: 1.35
---- ncurses-5.9/test/newdemo.c 2010-12-12 00:19:15.000000000 +0000
-+++ ncurses-5.9-20141206/test/newdemo.c 2014-08-02 23:10:56.000000000 +0000
-@@ -2,7 +2,7 @@
- * newdemo.c - A demo program using PDCurses. The program illustrate
- * the use of colours for text output.
- *
-- * $Id: newdemo.c,v 1.35 2010/12/12 00:19:15 tom Exp $
-+ * $Id: newdemo.c,v 1.41 2014/08/02 23:10:56 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -47,7 +47,7 @@
- /*
- * Trap interrupt
- */
--static RETSIGTYPE
-+static void
- trap(int sig GCC_UNUSED)
- {
- endwin();
-@@ -84,7 +84,7 @@
- if (pair > COLOR_PAIRS)
- pair = COLOR_PAIRS;
- init_pair((short) pair, (short) foreground, (short) background);
-- (void) wattrset(win, (attr_t) COLOR_PAIR(pair));
-+ (void) wattrset(win, AttrArg(COLOR_PAIR(pair), 0));
- }
- }
-
-@@ -96,7 +96,7 @@
- pair = COLOR_PAIRS;
- attrs |= (chtype) COLOR_PAIR(pair);
- }
-- (void) wattrset(win, attrs);
-+ (void) wattrset(win, AttrArg(attrs, 0));
- return attrs;
- }
-
-@@ -113,12 +113,19 @@
- getbegyx(win, by, bx);
- sw = w / 3;
- sh = h / 3;
-- if ((swin1 = subwin(win, sh, sw, by + 3, bx + 5)) == NULL)
-+
-+ if ((swin1 = subwin(win, sh, sw, by + 3, bx + 5)) == NULL) {
- return 1;
-- if ((swin2 = subwin(win, sh, sw, by + 4, bx + 8)) == NULL)
-+ }
-+ if ((swin2 = subwin(win, sh, sw, by + 4, bx + 8)) == NULL) {
-+ delwin(swin1);
- return 1;
-- if ((swin3 = subwin(win, sh, sw, by + 5, bx + 11)) == NULL)
-+ }
-+ if ((swin3 = subwin(win, sh, sw, by + 5, bx + 11)) == NULL) {
-+ delwin(swin1);
-+ delwin(swin2);
- return 1;
-+ }
-
- set_colors(swin1, 8, COLOR_RED, COLOR_BLUE);
- werase(swin1);
-@@ -215,7 +222,7 @@
- {
- WINDOW *win;
- int w, x, y, i, j, k;
-- char buffer[200];
-+ char buffer[SIZEOF(messages) * 80];
- const char *message;
- int width, height;
- chtype save[80];
-Index: test/package/debian/source/format
---- ncurses-5.9/test/package/debian/source/format 2010-12-30 14:23:50.000000000 +0000
-+++ ncurses-5.9-20141206/test/package/debian/source/format 2014-06-01 23:25:24.000000000 +0000
-@@ -1 +1 @@
--3.0 (native)
-+3.0 (quilt)
-Index: test/package/mingw-ncurses-examples.spec
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/test/package/mingw-ncurses-examples.spec 2013-10-26 23:30:21.000000000 +0000
-@@ -0,0 +1,109 @@
-+Summary: ncurses-examples - example/test programs from ncurses
-+%?mingw_package_header
-+
-+%define AppProgram ncurses-examples
-+%define AppVersion MAJOR.MINOR
-+%define AppRelease YYYYMMDD
-+# $Id: mingw-ncurses-examples.spec,v 1.3 2013/10/26 23:30:21 tom Exp $
-+Name: mingw32-ncurses6-examples
-+Version: %{AppVersion}
-+Release: %{AppRelease}
-+License: X11
-+Group: Development/Libraries
-+Source: ncurses-examples-%{release}.tgz
-+# URL: http://invisible-island.net/ncurses/
-+
-+BuildRequires: mingw32-ncurses6
-+
-+BuildRequires: mingw32-filesystem >= 95
-+BuildRequires: mingw32-gcc
-+BuildRequires: mingw32-binutils
-+
-+BuildRequires: mingw64-ncurses6
-+
-+BuildRequires: mingw64-filesystem >= 95
-+BuildRequires: mingw64-gcc
-+BuildRequires: mingw64-binutils
-+
-+%define CC_NORMAL -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion
-+%define CC_STRICT %{CC_NORMAL} -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic
-+
-+%description -n mingw32-ncurses6-examples
-+Cross-compiling support for ncurses to mingw32.
-+
-+The ncurses library routines are a terminal-independent method of
-+updating character screens with reasonable optimization.
-+
-+This package is used for testing ABI 6 with cross-compiles to MinGW.
-+
-+%package -n mingw64-ncurses6-examples
-+Summary: Curses library for MinGW64
-+
-+%description -n mingw64-ncurses6-examples
-+Cross-compiling support for ncurses to mingw64.
-+
-+The ncurses library routines are a terminal-independent method of
-+updating character screens with reasonable optimization.
-+
-+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}
-+
-+%define CFG_OPTS \\\
-+ --disable-echo \\\
-+ --enable-warnings \\\
-+ --verbose
-+
-+%define debug_package %{nil}
-+%setup -q -n ncurses-examples-%{release}
-+
-+%build
-+mkdir BUILD-W32
-+pushd BUILD-W32
-+CFLAGS="%{CC_NORMAL}" \
-+CC=%{mingw32_cc} \
-+%mingw32_configure %{CFG_OPTS}
-+cp config.status /tmp/ming32-config.status
-+make
-+popd
-+
-+mkdir BUILD-W64
-+pushd BUILD-W64
-+CFLAGS="%{CC_NORMAL}" \
-+CC=%{mingw64_cc} \
-+%mingw64_configure %{CFG_OPTS}
-+cp config.status /tmp/ming64-config.status
-+make
-+popd
-+
-+%install
-+rm -rf $RPM_BUILD_ROOT
-+
-+pushd BUILD-W32
-+%{mingw32_make} install DESTDIR=$RPM_BUILD_ROOT
-+popd
-+
-+pushd BUILD-W64
-+%{mingw64_make} install DESTDIR=$RPM_BUILD_ROOT
-+popd
-+
-+%clean
-+rm -rf $RPM_BUILD_ROOT
-+
-+%files
-+%defattr(-,root,root,-)
-+
-+%files -n mingw32-ncurses6-examples
-+%{mingw32_bindir}/*
-+
-+%files -n mingw64-ncurses6-examples
-+%{mingw64_bindir}/*
-+
-+%changelog
-+
-+* Sat Oct 19 2013 Thomas E. Dickey
-+- initial version
-Index: test/package/ncurses-examples.spec
-Prereq: 1.2
---- ncurses-5.9/test/package/ncurses-examples.spec 2011-03-25 17:46:44.000000000 +0000
-+++ ncurses-5.9-20141206/test/package/ncurses-examples.spec 2013-10-05 23:44:19.000000000 +0000
-@@ -2,7 +2,7 @@
- %define AppProgram ncurses-examples
- %define AppVersion MAJOR.MINOR
- %define AppRelease YYYYMMDD
--# $Id: ncurses-examples.spec,v 1.2 2011/03/25 17:46:44 tom Exp $
-+# $Id: ncurses-examples.spec,v 1.3 2013/10/05 23:44:19 tom Exp $
- Name: %{AppProgram}
- Version: %{AppVersion}
- Release: %{AppRelease}
-@@ -51,5 +51,5 @@
- %changelog
- # each patch should add its ChangeLog entries here
-
--* Fri Mar 25 2010 Thomas Dickey
-+* Thu Mar 25 2010 Thomas Dickey
- - initial version
-Index: test/programs
-Prereq: 1.19
---- ncurses-5.9/test/programs 2009-09-12 19:44:01.000000000 +0000
-+++ ncurses-5.9-20141206/test/programs 2014-06-21 15:28:49.000000000 +0000
-@@ -1,6 +1,6 @@
--# $Id: programs,v 1.19 2009/09/12 19:44:01 tom Exp $
-+# $Id: programs,v 1.25 2014/06/21 15:28:49 tom Exp $
- ##############################################################################
--# Copyright (c) 2006-2008,2009 Free Software Foundation, Inc. #
-+# Copyright (c) 2006-2013,2014 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"), #
-@@ -47,12 +47,15 @@
- demo_terminfo $(LDFLAGS_TINFO) $(LOCAL_LIBS) demo_terminfo
- ditto $(LDFLAGS_THREADS) $(LOCAL_LIBS) ditto
- dots $(LDFLAGS_TINFO) $(LOCAL_LIBS) dots
-+dots_curses $(LDFLAGS_CURSES) $(LOCAL_LIBS) dots_curses
- dots_mvcur $(LDFLAGS_CURSES) $(LOCAL_LIBS) dots_mvcur
-+dots_termcap $(LDFLAGS_TINFO) $(LOCAL_LIBS) dots_termcap
- echochar $(LDFLAGS_CURSES) $(LOCAL_LIBS) echochar
- filter $(LDFLAGS_CURSES) $(LOCAL_LIBS) filter
- firework $(LDFLAGS_CURSES) $(LOCAL_LIBS) firework
- firstlast $(LDFLAGS_DEFAULT) $(LOCAL_LIBS) firstlast
- foldkeys $(LDFLAGS_CURSES) $(LOCAL_LIBS) foldkeys
-+form_driver_w $(LDFLAGS_DEFAULT) $(LOCAL_LIBS) form_driver_w
- gdc $(LDFLAGS_CURSES) $(LOCAL_LIBS) gdc
- hanoi $(LDFLAGS_CURSES) $(LOCAL_LIBS) hanoi
- hashtest $(LDFLAGS_CURSES) $(LOCAL_LIBS) hashtest
-@@ -83,6 +86,8 @@
- test_instr $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_instr
- test_inwstr $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_inwstr
- test_opaque $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_opaque
-+test_vid_puts $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_vid_puts
-+test_vidputs $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_vidputs
- testaddch $(LDFLAGS_CURSES) $(LOCAL_LIBS) testaddch
- testcurs $(LDFLAGS_CURSES) $(LOCAL_LIBS) testcurs
- testscanw $(LDFLAGS_CURSES) $(LOCAL_LIBS) testscanw
-Index: test/railroad.c
-Prereq: 1.19
---- ncurses-5.9/test/railroad.c 2009-10-24 21:37:56.000000000 +0000
-+++ ncurses-5.9-20141206/test/railroad.c 2013-09-28 22:02:17.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2000-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 2000-2011,2013 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 *
-@@ -29,7 +29,7 @@
- /*
- * Author: Thomas E. Dickey - 2000
- *
-- * $Id: railroad.c,v 1.19 2009/10/24 21:37:56 tom Exp $
-+ * $Id: railroad.c,v 1.21 2013/09/28 22:02:17 tom Exp $
- *
- * A simple demo of the termcap interface.
- */
-@@ -55,20 +55,20 @@
-
- static bool interrupted = FALSE;
-
--static int
--outc(TPUTS_ARG c)
-+static
-+TPUTS_PROTO(outc, c)
- {
- int rc = OK;
-
- if (interrupted) {
- char tmp = (char) c;
-- if (write(STDOUT_FILENO, &tmp, 1) == -1)
-+ if (write(STDOUT_FILENO, &tmp, (size_t) 1) == -1)
- rc = ERR;
- } else {
- if (putc(c, stdout) == EOF)
- rc = ERR;
- }
-- return rc;
-+ TPUTS_RETURN(rc);
- }
-
- static void
-Index: test/rain.c
-Prereq: 1.38
---- ncurses-5.9/test/rain.c 2010-11-13 20:11:46.000000000 +0000
-+++ ncurses-5.9-20141206/test/rain.c 2014-08-02 17:24:07.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: rain.c,v 1.38 2010/11/13 20:11:46 tom Exp $
-+ * $Id: rain.c,v 1.41 2014/08/02 17:24:07 tom Exp $
- */
- #include <test.priv.h>
-
-@@ -102,10 +102,7 @@
- --j;
- if (has_colors()) {
- int z = (int) (3 * ranf());
-- chtype color = (chtype) COLOR_PAIR(z);
-- if (z)
-- color |= A_BOLD;
-- (void) attrset(color);
-+ (void) attrset(AttrArg(COLOR_PAIR(z), (z ? A_BOLD : A_NORMAL)));
- }
- return j;
- }
-@@ -222,7 +219,7 @@
- * Find myself in the list of threads so we can count the number of loops.
- */
- for (mystats = 0; mystats < MAX_THREADS; ++mystats) {
--#ifdef __MINGW32__
-+#if defined(__MINGW32__) && !defined(__WINPTHREADS_VERSION)
- if (drop_threads[mystats].myself.p == pthread_self().p)
- #else
- if (drop_threads[mystats].myself == pthread_self())
-@@ -256,7 +253,7 @@
- /*
- * The description of pthread_create() is misleading, since it implies that
- * threads will exit cleanly after their function returns.
-- *
-+ *
- * Since they do not (and the number of threads is limited by system
- * resources), make a limited number of threads, and signal any that are
- * waiting when we want a thread past that limit.
-Index: test/redraw.c
-Prereq: 1.5
---- ncurses-5.9/test/redraw.c 2010-05-01 22:04:08.000000000 +0000
-+++ ncurses-5.9-20141206/test/redraw.c 2012-12-08 20:46:02.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2006-2007,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2006-2011,2012 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: redraw.c,v 1.5 2010/05/01 22:04:08 tom Exp $
-+ * $Id: redraw.c,v 1.8 2012/12/08 20:46:02 tom Exp $
- *
- * Demonstrate the redrawwin() and wredrawln() functions.
- * Thomas Dickey - 2006/11/4
-@@ -113,7 +113,7 @@
- * using mvcur(). It is ifdef'd for NCURSES, since X/Open does
- * not define the case where the old location is unknown.
- */
-- system("date");
-+ IGNORE_RC(system("date"));
- mvcur(-1, -1, y, x);
- break;
- #endif
-Index: test/tclock.c
-Prereq: 1.30
---- ncurses-5.9/test/tclock.c 2011-03-22 09:16:00.000000000 +0000
-+++ ncurses-5.9-20141206/test/tclock.c 2014-08-02 16:37:03.000000000 +0000
-@@ -1,4 +1,4 @@
--/* $Id: tclock.c,v 1.30 2011/03/22 09:16:00 tom Exp $ */
-+/* $Id: tclock.c,v 1.34 2014/08/02 16:37:03 tom Exp $ */
-
- #include <test.priv.h>
-
-@@ -53,14 +53,14 @@
-
- /* Plot a point */
- static void
--plot(int x, int y, char col)
-+plot(int x, int y, int col)
- {
- MvAddCh(y, x, (chtype) col);
- }
-
- /* Draw a diagonal(arbitrary) line using Bresenham's alogrithm. */
- static void
--dline(int pair, int from_x, int from_y, int x2, int y2, char ch)
-+dline(int pair, int from_x, int from_y, int x2, int y2, int ch)
- {
- int dx, dy;
- int ax, ay;
-@@ -69,7 +69,7 @@
- int d;
-
- if (has_colors())
-- (void) attrset((attr_t) COLOR_PAIR(pair));
-+ (void) attrset(AttrArg(COLOR_PAIR(pair), 0));
-
- dx = x2 - from_x;
- dy = y2 - from_y;
-@@ -135,8 +135,8 @@
- short my_bg = COLOR_BLACK;
- #if HAVE_GETTIMEOFDAY
- struct timeval current;
-- double fraction = 0.0;
- #endif
-+ double fraction = 0.0;
-
- setlocale(LC_ALL, "");
-
-@@ -216,12 +216,12 @@
- attroff(A_REVERSE);
-
- if (has_colors())
-- (void) attrset(COLOR_PAIR(1));
-+ (void) attrset(AttrArg(COLOR_PAIR(1), 0));
-
- dline(1, cx, cy, cx + sdx, cy - sdy, 'O');
-
- if (has_colors())
-- (void) attrset(COLOR_PAIR(0));
-+ (void) attrset(AttrArg(COLOR_PAIR(0), 0));
-
- text = ctime(&tim);
- MvPrintw(2, 0, "%.*s", (int) (strlen(text) - 1), text);
-Index: test/test.priv.h
-Prereq: 1.103
---- ncurses-5.9/test/test.priv.h 2011-03-22 09:15:45.000000000 +0000
-+++ ncurses-5.9-20141206/test/test.priv.h 2014-10-25 01:20:34.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -29,7 +29,7 @@
- /****************************************************************************
- * Author: Thomas E. Dickey 1996-on *
- ****************************************************************************/
--/* $Id: test.priv.h,v 1.103 2011/03/22 09:15:45 tom Exp $ */
-+/* $Id: test.priv.h,v 1.131 2014/10/25 01:20:34 tom Exp $ */
-
- #ifndef __TEST_PRIV_H
- #define __TEST_PRIV_H 1
-@@ -58,6 +58,10 @@
- /*
- * Fallback definitions to accommodate broken compilers.
- */
-+#ifndef HAVE_ASSUME_DEFAULT_COLORS
-+#define HAVE_ASSUME_DEFAULT_COLORS 0
-+#endif
-+
- #ifndef HAVE_CURSES_VERSION
- #define HAVE_CURSES_VERSION 0
- #endif
-@@ -158,6 +162,10 @@
- #define HAVE_RIPOFFLINE 0
- #endif
-
-+#ifndef HAVE_SCR_DUMP
-+#define HAVE_SCR_DUMP 0
-+#endif
-+
- #ifndef HAVE_SETUPTERM
- #define HAVE_SETUPTERM 0
- #endif
-@@ -170,14 +178,30 @@
- #define HAVE_SLK_INIT 0
- #endif
-
-+#ifndef HAVE_SYS_IOCTL_H
-+#define HAVE_SYS_IOCTL_H 0
-+#endif
-+
-+#ifndef HAVE_SYS_SELECT_H
-+#define HAVE_SYS_SELECT_H 0
-+#endif
-+
- #ifndef HAVE_TERMATTRS
- #define HAVE_TERMATTRS 0
- #endif
-
-+#ifndef HAVE_TERMIOS_H
-+#define HAVE_TERMIOS_H 0
-+#endif
-+
- #ifndef HAVE_TERMNAME
- #define HAVE_TERMNAME 0
- #endif
-
-+#ifndef HAVE_TERM_ENTRY_H
-+#define HAVE_TERM_ENTRY_H 0
-+#endif
-+
- #ifndef HAVE_TGETENT
- #define HAVE_TGETENT 0
- #endif
-@@ -202,6 +226,30 @@
- #define HAVE_USE_DEFAULT_COLORS 0
- #endif
-
-+#ifndef HAVE_USE_ENV
-+#define HAVE_USE_ENV 0
-+#endif
-+
-+#ifndef HAVE_USE_EXTENDED_NAMES
-+#define HAVE_USE_EXTENDED_NAMES 0
-+#endif
-+
-+#ifndef HAVE_USE_SCREEN
-+#define HAVE_USE_SCREEN 0
-+#endif
-+
-+#ifndef HAVE_USE_WINDOW
-+#define HAVE_USE_WINDOW 0
-+#endif
-+
-+#ifndef HAVE_VIDPUTS
-+#define HAVE_VIDPUTS 0
-+#endif
-+
-+#ifndef HAVE_VID_PUTS
-+#define HAVE_VID_PUTS 0
-+#endif
-+
- #ifndef HAVE_WRESIZE
- #define HAVE_WRESIZE 0
- #endif
-@@ -222,6 +270,13 @@
- #define NO_LEAKS 0
- #endif
-
-+/*
-+ * Workaround for HPUX
-+ */
-+#if defined(__hpux) && !defined(NCURSES_VERSION)
-+#define _ACS_COMPAT_CODE /* needed for acs_map vs __acs_map */
-+#endif
-+
- #include <stdlib.h>
- #include <stdarg.h>
- #include <string.h>
-@@ -269,21 +324,18 @@
-
- /*
- * Not all curses.h implementations include unctrl.h,
-- * Solaris 10 xpg4 for example.
- */
--#if defined(NCURSES_VERSION) || defined(_XOPEN_CURSES)
--#if defined(HAVE_NCURSESW_NCURSES_H)
-+#if defined(HAVE_NCURSESW_UNCTRL_H)
- #include <ncursesw/unctrl.h>
--#elif defined(HAVE_NCURSES_NCURSES_H)
-+#elif defined(HAVE_NCURSES_UNCTRL_H)
- #include <ncurses/unctrl.h>
--#else
-+#elif defined(HAVE_UNCTRL_H)
- #include <unctrl.h>
- #endif
--#endif
-
- #if HAVE_GETOPT_H
- #include <getopt.h>
--#else
-+#elif !defined(HAVE_GETOPT_HEADER)
- /* 'getopt()' may be prototyped in <stdlib.h>, but declaring its variables
- * doesn't hurt.
- */
-@@ -323,17 +375,20 @@
- #endif
-
- #if !USE_SOFTKEYS
--#define slk_init() /* nothing */
--#define slk_restore() /* nothing */
--#define slk_clear() /* nothing */
-+#define slk_init() /* nothing */
-+#define slk_restore() /* nothing */
-+#define slk_clear() /* nothing */
- #endif
-
- #ifndef HAVE_WSYNCDOWN
--#define wsyncdown(win) /* nothing */
-+#define wsyncdown(win) /* nothing */
- #endif
-
- #ifndef USE_WIDEC_SUPPORT
--#if (defined(_XOPEN_SOURCE_EXTENDED) || defined(_XPG5)) && defined(WACS_ULCORNER)
-+#if (defined(_XOPEN_SOURCE_EXTENDED) \
-+ || (defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE - 0 >= 500)) \
-+ || (defined(NCURSES_WIDECHAR) && (NCURSES_WIDECHAR - 0 < 1))) \
-+ && defined(WACS_ULCORNER)
- #define USE_WIDEC_SUPPORT 1
- #else
- #define USE_WIDEC_SUPPORT 0
-@@ -385,6 +440,14 @@
- #define NCURSES_CH_T cchar_t
- #endif
-
-+#ifndef NCURSES_COLOR_T
-+#define NCURSES_COLOR_T short
-+#endif
-+
-+#ifndef NCURSES_PAIRS_T
-+#define NCURSES_PAIRS_T short
-+#endif
-+
- #ifndef NCURSES_OPAQUE
- #define NCURSES_OPAQUE 0
- #endif
-@@ -507,7 +570,7 @@
- if ((count = getcchar(s, NULL, NULL, NULL, NULL)) > 0) { \
- wchar_t test_wch[CCHARW_MAX + 2]; \
- attr_t test_attrs; \
-- short test_pair; \
-+ NCURSES_PAIRS_T test_pair; \
- \
- if (getcchar( s, test_wch, &test_attrs, &test_pair, NULL) == OK \
- && test_wch[0] != L'\0') { \
-@@ -576,6 +639,17 @@
- #define TIGETSTR(ti,tc) tgetstr(tc,&area_pointer)
- #endif
-
-+/*
-+ * So far (2013 - more than ten years), only ncurses implements
-+ * use_extended_names().
-+ */
-+#if defined(NCURSES_XNAMES)
-+#elif defined(NCURSES_VERSION) && defined(HAVE_TERM_ENTRY_H) && HAVE_TERM_ENTRY_H
-+#define NCURSES_XNAMES 1
-+#else
-+#define NCURSES_XNAMES 0
-+#endif
-+
- /* ncurses implements tparm() with varargs, X/Open with a fixed-parameter list
- * (which is incompatible with legacy usage, doesn't solve any problems).
- */
-@@ -593,9 +667,9 @@
- #define ExitProgram(code) _nc_free_tinfo(code)
- #endif
- #else
--#define typeMalloc(type,n) (type *) malloc((n) * sizeof(type))
--#define typeCalloc(type,elts) (type *) calloc((elts), sizeof(type))
--#define typeRealloc(type,n,p) (type *) realloc(p, (n) * sizeof(type))
-+#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))
- #endif
-
- #ifndef ExitProgram
-@@ -609,8 +683,32 @@
- #define EXIT_FAILURE 1
- #endif
-
--#ifdef __MINGW32__
-+#if defined(__MINGW32__) || defined(USE_WIN32CON_DRIVER)
-+
-+#if defined(PDCURSES)
-+#ifdef WINVER
-+# if WINVER < 0x0501
-+# error WINVER must at least be 0x0501
-+# endif
-+#else
-+# define WINVER 0x0501
-+#endif
-+#include <windows.h>
-+#include <sys/time.h> /* for struct timeval */
-+#undef sleep
-+#define sleep(n) Sleep((n) * 1000)
-+#define SIGHUP 1
-+#define SIGKILL 9
-+#define getlogin() "username"
-+
-+#elif defined(HAVE_NCURSESW_NCURSES_H)
-+#include <ncursesw/nc_mingw.h>
-+#elif defined(HAVE_NCURSES_NCURSES_H)
-+#include <ncurses/nc_mingw.h>
-+#else
- #include <nc_mingw.h>
-+#endif
-+
- /* conflicts in test/firstlast.c */
- #undef large
- #undef small
-@@ -653,25 +751,32 @@
- * The same would be needed for HPUX 10.20
- */
- #ifndef TPUTS_ARG
-+#define TPUTS_ARG int
-+#endif
-+
- #if defined(sun) && !defined(_XOPEN_CURSES) && !defined(NCURSES_VERSION_PATCH)
-+#undef TPUTS_ARG
- #define TPUTS_ARG char
- extern char *tgoto(char *, int, int); /* available, but not prototyped */
--#else
--#define TPUTS_ARG int
- #endif
-+
-+#ifndef TPUTS_PROTO
-+#define TPUTS_PROTO(func,value) int func(TPUTS_ARG value)
-+#endif
-+
-+#ifndef TPUTS_RETURN
-+#define TPUTS_RETURN(value) return value
- #endif
-
- /*
- * Workarounds for Solaris's X/Open curses
- */
--#if defined(sun) && defined(_XOPEN_CURSES) && !defined(NCURSES_VERSION_PATCH)
- #if !defined(KEY_MIN) && defined(__KEY_MIN)
- #define KEY_MIN __KEY_MIN
- #endif
- #if !defined(KEY_MAX) && defined(__KEY_MIN)
- #define KEY_MAX __KEY_MAX
- #endif
--#endif
-
- /*
- * Workaround to build with Sun's default SVr4 curses.
-@@ -702,23 +807,10 @@
- #define CONST_MENUS /* nothing */
- #endif
-
--#ifndef HAVE_USE_WINDOW
--#if !defined(NCURSES_VERSION_PATCH) || (NCURSES_VERSION_PATCH < 20070915) || !NCURSES_EXT_FUNCS
--#define HAVE_USE_WINDOW 0
--#else
--#define HAVE_USE_WINDOW 1
--#endif
--#endif
--
- /*
- * Simplify setting up demo of threading with these macros.
- */
-
--#if !HAVE_USE_WINDOW
--typedef int (*NCURSES_WINDOW_CB) (WINDOW *, void *);
--typedef int (*NCURSES_SCREEN_CB) (SCREEN *, void *);
--#endif
--
- #if HAVE_USE_WINDOW
- #define USING_WINDOW(w,func) use_window(w, (NCURSES_WINDOW_CB) func, w)
- #define USING_WINDOW2(w,func,data) use_window(w, (NCURSES_WINDOW_CB) func, data)
-@@ -745,6 +837,8 @@
- #define USE_TRACE 0
- #endif
-
-+#define Trace2(p) /* nothing */
-+
- #define MvAddCh (void) mvaddch
- #define MvWAddCh (void) mvwaddch
- #define MvAddStr (void) mvaddstr
-@@ -758,6 +852,15 @@
- #define MvWVLine (void) mvwvline
-
- /*
-+ * The macro likely uses unsigned values, while X/Open prototype uses int.
-+ */
-+#if defined(wattrset) || defined(PDCURSES)
-+#define AttrArg(p,a) (attr_t) ((attr_t)(p) | (attr_t)(a))
-+#else
-+#define AttrArg(p,a) (int) ((attr_t)(p) | (attr_t)(a))
-+#endif
-+
-+/*
- * Workaround for defective implementation of gcc attribute warn_unused_result
- */
- #if defined(__GNUC__) && defined(_FORTIFY_SOURCE)
-Index: test/test_add_wchstr.c
-Prereq: 1.15
---- ncurses-5.9/test/test_add_wchstr.c 2011-01-15 18:15:11.000000000 +0000
-+++ ncurses-5.9-20141206/test/test_add_wchstr.c 2014-08-02 17:24:55.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2009,2010,2011 Free Software Foundation, Inc. *
-+ * Copyright (c) 2010-2012,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: test_add_wchstr.c,v 1.15 2011/01/15 18:15:11 tom Exp $
-+ * $Id: test_add_wchstr.c,v 1.21 2014/08/02 17:24:55 tom Exp $
- *
- * Demonstrate the waddwchstr() and wadd_wch functions.
- * Thomas Dickey - 2009/9/12
-@@ -90,6 +90,8 @@
- if (need > temp_length) { \
- temp_length = need * 2; \
- temp_buffer = typeRealloc(cchar_t, temp_length, temp_buffer); \
-+ if (!temp_buffer) \
-+ failed("TempBuffer"); \
- } \
- have[0] = 0; \
- have[1] = 0; \
-@@ -101,7 +103,7 @@
- && (temp = unctrl((chtype) have[0])) != 0 \
- && strlen(temp) > 1) { \
- while (*temp != '\0') { \
-- have[0] = *temp++; \
-+ have[0] = (wchar_t) *temp++; \
- setcchar(&temp_buffer[n++], have, A_NORMAL, 0, NULL); \
- } \
- } else { \
-@@ -208,7 +210,7 @@
- result += 2;
- break;
- default:
-- result += wcwidth(ch);
-+ result += wcwidth((wchar_t) ch);
- if (ch < 32)
- ++result;
- break;
-@@ -317,6 +319,15 @@
- (void) cbreak(); /* take input chars one at a time, no wait for \n */
- (void) noecho(); /* don't echo input */
- keypad(stdscr, TRUE);
-+
-+ /*
-+ * Show the characters added in color, to distinguish from those that
-+ * are shifted.
-+ */
-+ if (has_colors()) {
-+ start_color();
-+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
-+ }
- }
-
- limit = LINES - 5;
-@@ -350,14 +361,8 @@
-
- doupdate();
-
-- /*
-- * Show the characters added in color, to distinguish from those that
-- * are shifted.
-- */
- if (has_colors()) {
-- start_color();
-- init_pair(1, COLOR_WHITE, COLOR_BLUE);
-- wbkgdset(work, COLOR_PAIR(1) | ' ');
-+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' '));
- }
-
- while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) {
-@@ -366,11 +371,13 @@
- case key_RECUR:
- test_add_wchstr(level + 1);
-
-- touchwin(look);
-+ if (look)
-+ touchwin(look);
- touchwin(work);
- touchwin(show);
-
-- wnoutrefresh(look);
-+ if (look)
-+ wnoutrefresh(look);
- wnoutrefresh(work);
- wnoutrefresh(show);
-
-@@ -461,7 +468,7 @@
- }
- break;
- default:
-- buffer[length++] = ch;
-+ buffer[length++] = (wchar_t) ch;
- buffer[length] = '\0';
-
- /* put the string in, one character at a time */
-@@ -514,8 +521,8 @@
- break;
- }
- }
-+ delwin(show);
- if (level > 0) {
-- delwin(show);
- delwin(work);
- delwin(look);
- }
-Index: test/test_addchstr.c
-Prereq: 1.13
---- ncurses-5.9/test/test_addchstr.c 2010-12-12 01:28:24.000000000 +0000
-+++ ncurses-5.9-20141206/test/test_addchstr.c 2012-12-16 00:36:27.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2009-2010,2012 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: test_addchstr.c,v 1.13 2010/12/12 01:28:24 tom Exp $
-+ * $Id: test_addchstr.c,v 1.18 2012/12/16 00:36:27 tom Exp $
- *
- * Demonstrate the waddchstr() and waddch functions.
- * Thomas Dickey - 2009/9/12
-@@ -101,6 +101,8 @@
- if (need > temp_length) {
- temp_length = need * 2;
- temp_buffer = typeRealloc(chtype, temp_length, temp_buffer);
-+ if (!temp_buffer)
-+ failed("TempBuffer");
- }
- do {
- const char *s;
-@@ -237,6 +239,15 @@
- (void) cbreak(); /* take input chars one at a time, no wait for \n */
- (void) noecho(); /* don't echo input */
- keypad(stdscr, TRUE);
-+
-+ /*
-+ * Show the characters added in color, to distinguish from those that
-+ * are shifted.
-+ */
-+ if (has_colors()) {
-+ start_color();
-+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
-+ }
- }
-
- limit = LINES - 5;
-@@ -270,14 +281,8 @@
-
- doupdate();
-
-- /*
-- * Show the characters added in color, to distinguish from those that
-- * are shifted.
-- */
- if (has_colors()) {
-- start_color();
-- init_pair(1, COLOR_WHITE, COLOR_BLUE);
-- show_attr = COLOR_PAIR(1);
-+ show_attr = (attr_t) COLOR_PAIR(1);
- wbkgdset(work, show_attr | ' ');
- } else {
- show_attr = A_STANDOUT;
-@@ -289,11 +294,13 @@
- case key_RECUR:
- test_adds(level + 1);
-
-- touchwin(look);
-+ if (look)
-+ touchwin(look);
- touchwin(work);
- touchwin(show);
-
-- wnoutrefresh(look);
-+ if (look)
-+ wnoutrefresh(look);
- wnoutrefresh(work);
- wnoutrefresh(show);
-
-@@ -445,10 +452,10 @@
- }
- }
- if (level > 0) {
-- delwin(show);
- delwin(work);
- delwin(look);
- }
-+ delwin(show);
- }
-
- static void
-Index: test/test_addstr.c
-Prereq: 1.6
---- ncurses-5.9/test/test_addstr.c 2010-12-12 00:17:37.000000000 +0000
-+++ ncurses-5.9-20141206/test/test_addstr.c 2012-12-16 00:14:10.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2009-2010,2012 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: test_addstr.c,v 1.6 2010/12/12 00:17:37 tom Exp $
-+ * $Id: test_addstr.c,v 1.10 2012/12/16 00:14:10 tom Exp $
- *
- * Demonstrate the waddstr() and waddch functions.
- * Thomas Dickey - 2009/9/12
-@@ -161,6 +161,15 @@
- (void) cbreak(); /* take input chars one at a time, no wait for \n */
- (void) noecho(); /* don't echo input */
- keypad(stdscr, TRUE);
-+
-+ /*
-+ * Show the characters added in color, to distinguish from those that
-+ * are shifted.
-+ */
-+ if (has_colors()) {
-+ start_color();
-+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
-+ }
- }
-
- limit = LINES - 5;
-@@ -194,14 +203,8 @@
-
- doupdate();
-
-- /*
-- * Show the characters added in color, to distinguish from those that
-- * are shifted.
-- */
- if (has_colors()) {
-- start_color();
-- init_pair(1, COLOR_WHITE, COLOR_BLUE);
-- wbkgdset(work, COLOR_PAIR(1) | ' ');
-+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' '));
- }
-
- while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) {
-@@ -210,11 +213,13 @@
- case key_RECUR:
- test_adds(level + 1);
-
-- touchwin(look);
-+ if (look)
-+ touchwin(look);
- touchwin(work);
- touchwin(show);
-
-- wnoutrefresh(look);
-+ if (look)
-+ wnoutrefresh(look);
- wnoutrefresh(work);
- wnoutrefresh(show);
-
-@@ -361,8 +366,8 @@
- break;
- }
- }
-+ delwin(show);
- if (level > 0) {
-- delwin(show);
- delwin(work);
- delwin(look);
- }
-Index: test/test_addwstr.c
-Prereq: 1.6
---- ncurses-5.9/test/test_addwstr.c 2010-12-12 00:18:00.000000000 +0000
-+++ ncurses-5.9-20141206/test/test_addwstr.c 2014-08-02 17:24:55.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 2009-2012,2014 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: test_addwstr.c,v 1.6 2010/12/12 00:18:00 tom Exp $
-+ * $Id: test_addwstr.c,v 1.12 2014/08/02 17:24:55 tom Exp $
- *
- * Demonstrate the waddwstr() and wadd_wch functions.
- * Thomas Dickey - 2009/9/12
-@@ -137,7 +137,7 @@
- result += 2;
- break;
- default:
-- result += wcwidth(ch);
-+ result += wcwidth((wchar_t) ch);
- if (ch < 32)
- ++result;
- break;
-@@ -233,8 +233,9 @@
- WINDOW *work = 0;
- WINDOW *show = 0;
- int margin = (2 * MY_TABSIZE) - 1;
-- Options option = ((m_opt ? oMove : oDefault)
-- | ((w_opt || (level > 0)) ? oWindow : oDefault));
-+ Options option = (Options) ((int) (m_opt ? oMove : oDefault)
-+ | (int) ((w_opt || (level > 0))
-+ ? oWindow : oDefault));
-
- if (first) {
- static char cmd[80];
-@@ -246,6 +247,15 @@
- (void) cbreak(); /* take input chars one at a time, no wait for \n */
- (void) noecho(); /* don't echo input */
- keypad(stdscr, TRUE);
-+
-+ /*
-+ * Show the characters inserted in color, to distinguish from those that
-+ * are shifted.
-+ */
-+ if (has_colors()) {
-+ start_color();
-+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
-+ }
- }
-
- limit = LINES - 5;
-@@ -279,14 +289,8 @@
-
- doupdate();
-
-- /*
-- * Show the characters inserted in color, to distinguish from those that
-- * are shifted.
-- */
- if (has_colors()) {
-- start_color();
-- init_pair(1, COLOR_WHITE, COLOR_BLUE);
-- wbkgdset(work, COLOR_PAIR(1) | ' ');
-+ wbkgdset(work, (chtype) (COLOR_PAIR(1) | ' '));
- }
-
- while ((ch = read_linedata(work)) != ERR && !isQUIT(ch)) {
-@@ -295,11 +299,13 @@
- case key_RECUR:
- test_inserts(level + 1);
-
-- touchwin(look);
-+ if (look)
-+ touchwin(look);
- touchwin(work);
- touchwin(show);
-
-- wnoutrefresh(look);
-+ if (look)
-+ wnoutrefresh(look);
- wnoutrefresh(work);
- wnoutrefresh(show);
-
-@@ -392,7 +398,7 @@
- ch = '\b';
- /* FALLTHRU */
- default:
-- buffer[length++] = ch;
-+ buffer[length++] = (wchar_t) ch;
- buffer[length] = '\0';
-
- /* put the string in, one character at a time */
-@@ -445,8 +451,8 @@
- break;
- }
- }
-+ delwin(show);
- if (level > 0) {
-- delwin(show);
- delwin(work);
- delwin(look);
- }
-Index: test/test_getstr.c
-Prereq: 1.9
---- ncurses-5.9/test/test_getstr.c 2009-08-29 19:02:25.000000000 +0000
-+++ ncurses-5.9-20141206/test/test_getstr.c 2012-07-07 18:22:49.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 2007-2008,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 2007-2009,2012 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 *
-@@ -26,7 +26,7 @@
- * authorization. *
- ****************************************************************************/
- /*
-- * $Id: test_getstr.c,v 1.9 2009/08/29 19:02:25 tom Exp $
-+ * $Id: test_getstr.c,v 1.10 2012/07/07 18:22:49 tom Exp $
- *
- * Author: Thomas E Dickey
- *
-@@ -58,6 +58,15 @@
- eMaxFlavor
- } Flavors;
-
-+/*
-+ * Return-code is OK/ERR or a keyname.
-+ */
-+static const char *
-+ok_keyname(int code)
-+{
-+ return ((code == OK) ? "OK" : ((code == ERR) ? "ERR" : keyname(code)));
-+}
-+
- static bool
- Quit(int ch)
- {
-@@ -310,7 +319,7 @@
- }
- noecho();
- (void) wattrset(txtwin, A_NORMAL);
-- wprintw(strwin, "%d:%s", rc, buffer);
-+ wprintw(strwin, "%s:%s", ok_keyname(rc), buffer);
- wnoutrefresh(strwin);
- break;
- default:
-Index: test/test_vid_puts.c
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/test/test_vid_puts.c 2014-07-19 23:09:28.000000000 +0000
-@@ -0,0 +1,148 @@
-+/****************************************************************************
-+ * Copyright (c) 2013,2014 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. *
-+ ****************************************************************************/
-+/*
-+ * $Id: test_vid_puts.c,v 1.6 2014/07/19 23:09:28 tom Exp $
-+ *
-+ * Demonstrate the vid_puts and vid_attr functions.
-+ * Thomas Dickey - 2013/01/12
-+ */
-+
-+#define USE_TINFO
-+#include <test.priv.h>
-+
-+#if USE_WIDEC_SUPPORT && HAVE_SETUPTERM && HAVE_VID_PUTS
-+
-+#define valid(s) ((s != 0) && s != (char *)-1)
-+
-+static FILE *my_fp;
-+static bool p_opt = FALSE;
-+
-+static
-+TPUTS_PROTO(outc, c)
-+{
-+ int rc = c;
-+
-+ rc = putc(c, my_fp);
-+ TPUTS_RETURN(rc);
-+}
-+
-+static bool
-+outs(const char *s)
-+{
-+ if (valid(s)) {
-+ tputs(s, 1, outc);
-+ return TRUE;
-+ }
-+ return FALSE;
-+}
-+
-+static void
-+cleanup(void)
-+{
-+ outs(exit_attribute_mode);
-+ if (!outs(orig_colors))
-+ outs(orig_pair);
-+ outs(cursor_normal);
-+}
-+
-+static void
-+change_attr(chtype attr)
-+{
-+ if (p_opt) {
-+ vid_puts(attr, (short) 0, (void *) 0, outc);
-+ } else {
-+ vid_attr(attr, (short) 0, (void *) 0);
-+ }
-+}
-+
-+static void
-+test_vid_puts(void)
-+{
-+ fprintf(my_fp, "Name: ");
-+ change_attr(A_BOLD);
-+ fputs("Bold", my_fp);
-+ change_attr(A_REVERSE);
-+ fputs(" Reverse", my_fp);
-+ change_attr(A_NORMAL);
-+ fputs("\n", my_fp);
-+}
-+
-+static void
-+usage(void)
-+{
-+ static const char *tbl[] =
-+ {
-+ "Usage: test_vid_puts [options]"
-+ ,""
-+ ,"Options:"
-+ ," -e use stderr (default stdout)"
-+ ," -p use vid_puts (default vid_attr)"
-+ };
-+ unsigned n;
-+ for (n = 0; n < SIZEOF(tbl); ++n)
-+ fprintf(stderr, "%s\n", tbl[n]);
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
-+int
-+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
-+{
-+ int ch;
-+
-+ my_fp = stdout;
-+
-+ while ((ch = getopt(argc, argv, "ep")) != -1) {
-+ switch (ch) {
-+ case 'e':
-+ my_fp = stderr;
-+ break;
-+ case 'p':
-+ p_opt = TRUE;
-+ break;
-+ default:
-+ usage();
-+ break;
-+ }
-+ }
-+ if (optind < argc)
-+ usage();
-+
-+ setupterm((char *) 0, 1, (int *) 0);
-+ test_vid_puts();
-+ cleanup();
-+ ExitProgram(EXIT_SUCCESS);
-+}
-+
-+#else
-+int
-+main(void)
-+{
-+ printf("This program requires the wide-ncurses terminfo library\n");
-+ ExitProgram(EXIT_FAILURE);
-+}
-+#endif
-Index: test/test_vidputs.c
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/test/test_vidputs.c 2014-07-19 23:09:58.000000000 +0000
-@@ -0,0 +1,148 @@
-+/****************************************************************************
-+ * Copyright (c) 2013,2014 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. *
-+ ****************************************************************************/
-+/*
-+ * $Id: test_vidputs.c,v 1.5 2014/07/19 23:09:58 tom Exp $
-+ *
-+ * Demonstrate the vidputs and vidattr functions.
-+ * Thomas Dickey - 2013/01/12
-+ */
-+
-+#define USE_TINFO
-+#include <test.priv.h>
-+
-+#if HAVE_SETUPTERM && HAVE_VIDPUTS
-+
-+#define valid(s) ((s != 0) && s != (char *)-1)
-+
-+static FILE *my_fp;
-+static bool p_opt = FALSE;
-+
-+static
-+TPUTS_PROTO(outc, c)
-+{
-+ int rc = c;
-+
-+ rc = putc(c, my_fp);
-+ TPUTS_RETURN(rc);
-+}
-+
-+static bool
-+outs(const char *s)
-+{
-+ if (valid(s)) {
-+ tputs(s, 1, outc);
-+ return TRUE;
-+ }
-+ return FALSE;
-+}
-+
-+static void
-+cleanup(void)
-+{
-+ outs(exit_attribute_mode);
-+ if (!outs(orig_colors))
-+ outs(orig_pair);
-+ outs(cursor_normal);
-+}
-+
-+static void
-+change_attr(chtype attr)
-+{
-+ if (p_opt) {
-+ vidputs(attr, outc);
-+ } else {
-+ vidattr(attr);
-+ }
-+}
-+
-+static void
-+test_vidputs(void)
-+{
-+ fprintf(my_fp, "Name: ");
-+ change_attr(A_BOLD);
-+ fputs("Bold", my_fp);
-+ change_attr(A_REVERSE);
-+ fputs(" Reverse", my_fp);
-+ change_attr(A_NORMAL);
-+ fputs("\n", my_fp);
-+}
-+
-+static void
-+usage(void)
-+{
-+ static const char *tbl[] =
-+ {
-+ "Usage: test_vidputs [options]"
-+ ,""
-+ ,"Options:"
-+ ," -e use stderr (default stdout)"
-+ ," -p use vidputs (default vidattr)"
-+ };
-+ unsigned n;
-+ for (n = 0; n < SIZEOF(tbl); ++n)
-+ fprintf(stderr, "%s\n", tbl[n]);
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
-+int
-+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
-+{
-+ int ch;
-+
-+ my_fp = stdout;
-+
-+ while ((ch = getopt(argc, argv, "ep")) != -1) {
-+ switch (ch) {
-+ case 'e':
-+ my_fp = stderr;
-+ break;
-+ case 'p':
-+ p_opt = TRUE;
-+ break;
-+ default:
-+ usage();
-+ break;
-+ }
-+ }
-+ if (optind < argc)
-+ usage();
-+
-+ setupterm((char *) 0, 1, (int *) 0);
-+ test_vidputs();
-+ cleanup();
-+ ExitProgram(EXIT_SUCCESS);
-+}
-+#else
-+int
-+main(int argc GCC_UNUSED,
-+ char *argv[]GCC_UNUSED)
-+{
-+ fprintf(stderr, "This program requires terminfo\n");
-+ exit(EXIT_FAILURE);
-+}
-+#endif
-Index: test/testaddch.c
-Prereq: 1.7
---- ncurses-5.9/test/testaddch.c 2009-08-29 19:02:25.000000000 +0000
-+++ ncurses-5.9-20141206/test/testaddch.c 2014-08-02 23:11:20.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2013,2014 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 *
-@@ -29,7 +29,7 @@
- * This is an example written by Alexander V. Lukyanov <lav@yars.free.net>,
- * to demonstrate an inconsistency between ncurses and SVr4 curses.
- *
-- * $Id: testaddch.c,v 1.7 2009/08/29 19:02:25 tom Exp $
-+ * $Id: testaddch.c,v 1.12 2014/08/02 23:11:20 tom Exp $
- */
- #include <test.priv.h>
-
-@@ -63,21 +63,21 @@
- for (i = 0; i < 8; i++) {
- back = (i & 1) ? A_BOLD | 'B' : ' ';
- set = (i & 2) ? A_REVERSE : 0;
-- attr = (i & 4) ? COLOR_PAIR(4) : 0;
-+ attr = (chtype) ((i & 4) ? COLOR_PAIR(4) : 0);
-
- bkgdset(back);
-- (void) attrset(set);
-+ (void) attrset(AttrArg(set, 0));
-
- attr_addstr("Test string with spaces -> <-\n", attr);
- }
- addch('\n');
- for (i = 0; i < 8; i++) {
-- back = (i & 1) ? A_BOLD | 'B' | COLOR_PAIR(1) : ' ';
-- set = (i & 2) ? A_REVERSE | COLOR_PAIR(2) : 0;
-- attr = (i & 4) ? COLOR_PAIR(4) : 0;
-+ back = (i & 1) ? (A_BOLD | 'B' | (chtype) COLOR_PAIR(1)) : ' ';
-+ set = (i & 2) ? (A_REVERSE | (chtype) COLOR_PAIR(2)) : 0;
-+ attr = (chtype) ((i & 4) ? (chtype) COLOR_PAIR(4) : 0);
-
- bkgdset(back);
-- (void) attrset(set);
-+ (void) attrset(AttrArg(set, 0));
-
- attr_addstr("Test string with spaces -> <-\n", attr);
- }
-Index: test/testcurs.c
-Prereq: 1.43
---- ncurses-5.9/test/testcurs.c 2010-11-13 21:02:28.000000000 +0000
-+++ ncurses-5.9-20141206/test/testcurs.c 2014-07-27 00:25:14.000000000 +0000
-@@ -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.43 2010/11/13 21:02:28 tom Exp $
-+ * $Id: testcurs.c,v 1.49 2014/07/27 00:25:14 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -45,18 +45,6 @@
- };
- #define MAX_OPTIONS (int) SIZEOF(command)
-
--#if !HAVE_STRDUP
--#define strdup my_strdup
--static char *
--strdup(char *s)
--{
-- char *p = typeMalloc(char, strlen(s) + 1);
-- if (p)
-- strcpy(p, s);
-- return (p);
--}
--#endif /* not HAVE_STRDUP */
--
- static int width, height;
-
- int
-@@ -85,7 +73,7 @@
- #ifdef A_COLOR
- if (has_colors()) {
- init_pair(1, COLOR_WHITE, COLOR_BLUE);
-- wbkgd(win, COLOR_PAIR(1));
-+ wbkgd(win, (chtype) COLOR_PAIR(1));
- } else
- wbkgd(win, A_REVERSE);
- #else
-@@ -298,7 +286,7 @@
- #ifdef A_COLOR
- if (has_colors()) {
- init_pair(2, COLOR_WHITE, COLOR_RED);
-- wbkgd(subWin, COLOR_PAIR(2) | A_BOLD);
-+ wbkgd(subWin, (chtype) COLOR_PAIR(2) | A_BOLD);
- } else
- wbkgd(subWin, A_BOLD);
- #else
-@@ -353,6 +341,9 @@
- typeahead(-1);
- #endif
-
-+#ifdef NCURSES_MOUSE_VERSION
-+ mousemask(ALL_MOUSE_EVENTS, (mmask_t *) 0);
-+#endif
- #if defined(PDCURSES)
- mouse_set(ALL_MOUSE_EVENTS);
- #endif
-@@ -367,8 +358,38 @@
- wprintw(win, "Key Pressed: %c", c);
- else
- wprintw(win, "Key Pressed: %s", unctrl(UChar(c)));
--#if defined(PDCURSES)
-+#ifdef KEY_MOUSE
- if (c == KEY_MOUSE) {
-+#if defined(NCURSES_MOUSE_VERSION)
-+#define ButtonChanged(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, 037))
-+#define ButtonPressed(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, NCURSES_BUTTON_PRESSED))
-+#define ButtonDouble(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, NCURSES_DOUBLE_CLICKED))
-+#define ButtonTriple(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, NCURSES_TRIPLE_CLICKED))
-+#define ButtonRelease(n) ((event.bstate) & NCURSES_MOUSE_MASK(1, NCURSES_BUTTON_RELEASED))
-+ MEVENT event;
-+ int button = 0;
-+
-+ getmouse(&event);
-+ if (ButtonChanged(1))
-+ button = 1;
-+ else if (ButtonChanged(2))
-+ button = 2;
-+ else if (ButtonChanged(3))
-+ button = 3;
-+ else
-+ button = 0;
-+ wmove(win, 4, 18);
-+ wprintw(win, "Button %d: ", button);
-+ if (ButtonPressed(button))
-+ wprintw(win, "pressed: ");
-+ else if (ButtonDouble(button))
-+ wprintw(win, "double: ");
-+ else if (ButtonTriple(button))
-+ wprintw(win, "triple: ");
-+ else
-+ wprintw(win, "released: ");
-+ wprintw(win, " Position: Y: %d X: %d", event.y, event.x);
-+#elif defined(PDCURSES)
- int button = 0;
- request_mouse_pos();
- if (BUTTON_CHANGED(1))
-@@ -390,8 +411,9 @@
- else
- wprintw(win, "released: ");
- wprintw(win, " Position: Y: %d X: %d", MOUSE_Y_POS, MOUSE_X_POS);
-+#endif /* NCURSES_VERSION vs PDCURSES */
- }
--#endif
-+#endif /* KEY_MOUSE */
- wrefresh(win);
- if (c == ' ')
- break;
-@@ -491,7 +513,7 @@
- #ifdef A_COLOR
- if (has_colors()) {
- init_pair(3, COLOR_BLUE, COLOR_WHITE);
-- wbkgd(win1, COLOR_PAIR(3));
-+ wbkgd(win1, (chtype) COLOR_PAIR(3));
- } else
- wbkgd(win1, A_NORMAL);
- #else
-@@ -693,9 +715,11 @@
- raw();
- wgetch(pad);
-
-- spad = subpad(pad, 12, 25, 6, 52);
-- MvWAddStr(spad, 2, 2, "This is a new subpad");
-- box(spad, 0, 0);
-+ if ((spad = subpad(pad, 12, 25, 6, 52)) != 0) {
-+ MvWAddStr(spad, 2, 2, "This is a new subpad");
-+ box(spad, 0, 0);
-+ delwin(spad);
-+ }
- prefresh(pad, 0, 0, 0, 0, 15, 75);
- keypad(pad, TRUE);
- raw();
-Index: test/view.c
-Prereq: 1.81
---- ncurses-5.9/test/view.c 2010-11-14 01:06:02.000000000 +0000
-+++ ncurses-5.9-20141206/test/view.c 2013-09-28 21:58:42.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -50,10 +50,11 @@
- * scroll operation worked, and the refresh() code only had to do a
- * partial repaint.
- *
-- * $Id: view.c,v 1.81 2010/11/14 01:06:02 tom Exp $
-+ * $Id: view.c,v 1.94 2013/09/28 21:58:42 tom Exp $
- */
-
- #include <test.priv.h>
-+#include <widechars.h>
-
- #include <time.h>
-
-@@ -81,24 +82,10 @@
- #include <sys/ptem.h>
- #endif
-
--#if USE_WIDEC_SUPPORT
--#if HAVE_MBTOWC && HAVE_MBLEN
--#define reset_mbytes(state) IGNORE_RC(mblen(NULL, 0)), IGNORE_RC(mbtowc(NULL, NULL, 0))
--#define count_mbytes(buffer,length,state) mblen(buffer,length)
--#define check_mbytes(wch,buffer,length,state) \
-- (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 check_mbytes(wch,buffer,length,state) \
-- (int) mbrtowc(&wch, buffer, length, &state)
--#else
--make an error
--#endif
--#endif /* USE_WIDEC_SUPPORT */
-+#undef CTRL
-+#define CTRL(x) ((x) & 0x1f)
-
--static RETSIGTYPE finish(int sig) GCC_NORETURN;
-+static void finish(int sig) GCC_NORETURN;
- static void show_all(const char *tag);
-
- #if defined(SIGWINCH) && defined(TIOCGWINSZ) && HAVE_RESIZE_TERM
-@@ -108,11 +95,11 @@
- #endif
-
- #if CAN_RESIZE
--static RETSIGTYPE adjust(int sig);
-+static void adjust(int sig);
- static int interrupted;
-+static bool waiting = FALSE;
- #endif
-
--static bool waiting = FALSE;
- static int shift = 0;
- static bool try_color = FALSE;
-
-@@ -121,6 +108,8 @@
- static NCURSES_CH_T **lptr;
- static int num_lines;
-
-+static void usage(void) GCC_NORETURN;
-+
- static void
- usage(void)
- {
-@@ -135,6 +124,7 @@
- #if defined(KEY_RESIZE)
- ," -r use old-style sigwinch handler rather than KEY_RESIZE"
- #endif
-+ ," -s start in single-step mode, waiting for input"
- #ifdef TRACE
- ," -t trace screen updates"
- ," -T NUM specify trace mask"
-@@ -180,7 +170,7 @@
- {
- unsigned len = (unsigned) strlen(src);
- NCURSES_CH_T *dst = typeMalloc(NCURSES_CH_T, len + 1);
-- unsigned j, k;
-+ size_t j, k;
- #if USE_WIDEC_SUPPORT
- wchar_t wstr[CCHARW_MAX + 1];
- wchar_t wch;
-@@ -243,6 +233,7 @@
- int value = 0;
- bool done = FALSE;
- bool got_number = FALSE;
-+ bool single_step = FALSE;
- #if CAN_RESIZE
- bool nonposix_resize = FALSE;
- #endif
-@@ -258,7 +249,7 @@
- (void) signal(SIGINT, finish); /* arrange interrupts to terminate */
- #endif
-
-- while ((i = getopt(argc, argv, "cin:rtT:")) != -1) {
-+ while ((i = getopt(argc, argv, "cin:rstT:")) != -1) {
- switch (i) {
- case 'c':
- try_color = TRUE;
-@@ -276,9 +267,18 @@
- nonposix_resize = TRUE;
- break;
- #endif
-+ case 's':
-+ single_step = TRUE;
-+ break;
- #ifdef TRACE
- case 'T':
-- trace((unsigned) atoi(optarg));
-+ {
-+ char *next = 0;
-+ int tvalue = (int) strtol(optarg, &next, 0);
-+ if (tvalue < 0 || (next != 0 && *next != 0))
-+ usage();
-+ trace((unsigned) tvalue);
-+ }
- break;
- case 't':
- trace(TRACE_CALLS);
-@@ -306,7 +306,7 @@
- (void) signal(SIGWINCH, adjust); /* arrange interrupts to resize */
- #endif
-
-- /* slurp the file */
-+ Trace(("slurp the file"));
- for (lptr = &vec_lines[0]; (lptr - vec_lines) < MAXLINES; lptr++) {
- char temp[BUFSIZ], *s, *d;
- int col;
-@@ -314,8 +314,26 @@
- if (fgets(buf, sizeof(buf), fp) == 0)
- break;
-
-- /* convert tabs so that shift will work properly */
-+#if USE_WIDEC_SUPPORT
-+ if (lptr == vec_lines) {
-+ if (!memcmp("", buf, 3)) {
-+ Trace(("trim BOM"));
-+ s = buf + 3;
-+ d = buf;
-+ do {
-+ } while ((*d++ = *s++) != '\0');
-+ }
-+ }
-+#endif
-+
-+ /* convert tabs and nonprinting chars so that shift will work properly */
- for (s = buf, d = temp, col = 0; (*d = *s) != '\0'; s++) {
-+ if (*d == '\r') {
-+ if (s[1] == '\n')
-+ continue;
-+ else
-+ break;
-+ }
- if (*d == '\n') {
- *d = '\0';
- break;
-@@ -347,14 +365,15 @@
- (void) nonl(); /* tell curses not to do NL->CR/NL on output */
- (void) cbreak(); /* take input chars one at a time, no wait for \n */
- (void) noecho(); /* don't echo input */
-- nodelay(stdscr, TRUE);
-+ if (!single_step)
-+ nodelay(stdscr, TRUE);
- idlok(stdscr, TRUE); /* allow use of insert/delete line */
-
- if (try_color) {
- if (has_colors()) {
- start_color();
- init_pair(my_pair, COLOR_WHITE, COLOR_BLUE);
-- bkgd(COLOR_PAIR(my_pair));
-+ bkgd((chtype) COLOR_PAIR(my_pair));
- } else {
- try_color = FALSE;
- }
-@@ -373,10 +392,12 @@
- adjust(0);
- my_label = "interrupt";
- }
--#endif
- waiting = TRUE;
- c = getch();
- waiting = FALSE;
-+#else
-+ c = getch();
-+#endif
- if ((c < 127) && isdigit(c)) {
- if (!got_number) {
- MvPrintw(0, 0, "Count: ");
-@@ -466,6 +487,9 @@
- nodelay(stdscr, TRUE);
- my_delay = 0;
- break;
-+ case CTRL('L'):
-+ redrawwin(stdscr);
-+ break;
- case ERR:
- if (!my_delay)
- napms(50);
-@@ -483,7 +507,7 @@
- finish(0); /* we're done */
- }
-
--static RETSIGTYPE
-+static void
- finish(int sig)
- {
- endwin();
-@@ -510,7 +534,7 @@
- * The 'wrefresh(curscr)' is needed to force the refresh to start from the top
- * of the screen -- some xterms mangle the bitmap while resizing.
- */
--static RETSIGTYPE
-+static void
- adjust(int sig)
- {
- if (waiting || sig == 0) {
-@@ -553,7 +577,7 @@
- printw("%.*s", COLS, temp);
- clrtoeol();
- this_time = time((time_t *) 0);
-- strcpy(temp, ctime(&this_time));
-+ strncpy(temp, ctime(&this_time), (size_t) 30);
- if ((i = (int) strlen(temp)) != 0) {
- temp[--i] = 0;
- if (move(0, COLS - i - 2) != ERR)
-Index: test/widechars.h
---- /dev/null 2014-12-07 11:09:34.027922031 +0000
-+++ ncurses-5.9-20141206/test/widechars.h 2012-12-01 20:45:54.000000000 +0000
-@@ -0,0 +1,71 @@
-+/****************************************************************************
-+ * Copyright (c) 2012 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. *
-+ ****************************************************************************/
-+
-+#ifndef __WIDECHARS_H
-+#define __WIDECHARS_H 1
-+
-+#include <test.priv.h>
-+
-+#if USE_WIDEC_SUPPORT
-+
-+#if defined(__MINGW32__)
-+/*
-+ * MinGW has wide-character functions, but they do not work correctly.
-+ */
-+
-+extern int _nc_mbtowc(wchar_t *pwc, const char *s, size_t n);
-+extern int __MINGW_NOTHROW _nc_mbtowc(wchar_t *pwc, const char *s, size_t n);
-+#define mbtowc(pwc,s,n) _nc_mbtowc(pwc,s,n)
-+
-+extern int __MINGW_NOTHROW _nc_mblen(const char *, size_t);
-+#define mblen(s,n) _nc_mblen(s, n)
-+
-+#endif /* __MINGW32__ */
-+
-+#if HAVE_MBTOWC && HAVE_MBLEN
-+#define reset_mbytes(state) IGNORE_RC(mblen(NULL, 0)), IGNORE_RC(mbtowc(NULL, NULL, 0))
-+#define count_mbytes(buffer,length,state) mblen(buffer,length)
-+#define check_mbytes(wch,buffer,length,state) \
-+ (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 check_mbytes(wch,buffer,length,state) \
-+ (int) mbrtowc(&wch, buffer, length, &state)
-+#else
-+make an error
-+#endif
-+
-+#else
-+
-+#endif /* USE_WIDEC_SUPPORT */
-+
-+extern void widechars_stub(void);
-+
-+#endif /* __WIDECHARS_H */
-Index: test/worm.c
-Prereq: 1.60
---- ncurses-5.9/test/worm.c 2010-11-13 20:21:21.000000000 +0000
-+++ ncurses-5.9-20141206/test/worm.c 2013-06-22 20:01:41.000000000 +0000
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. *
-+ * Copyright (c) 1998-2012,2013 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 *
-@@ -61,7 +61,7 @@
- traces will be dumped. The program stops and waits for one character of
- input at the beginning and end of the interval.
-
-- $Id: worm.c,v 1.60 2010/11/13 20:21:21 tom Exp $
-+ $Id: worm.c,v 1.65 2013/06/22 20:01:41 tom Exp $
- */
-
- #include <test.priv.h>
-@@ -202,6 +202,14 @@
- /* *INDENT-ON* */
-
- static void
-+failed(const char *s)
-+{
-+ perror(s);
-+ endwin();
-+ ExitProgram(EXIT_FAILURE);
-+}
-+
-+static void
- cleanup(void)
- {
- USING_WINDOW(stdscr, wrefresh);
-@@ -209,7 +217,7 @@
- endwin();
- }
-
--static RETSIGTYPE
-+static void
- onsig(int sig GCC_UNUSED)
- {
- cleanup();
-@@ -354,8 +362,7 @@
- if (first) {
- first = FALSE;
- for (n = 0, w = &worm[0]; n < number; n++, w++) {
-- int rc;
-- rc = pthread_create(&(w->thread), NULL, start_worm, w);
-+ (void) pthread_create(&(w->thread), NULL, start_worm, w);
- }
- }
- #else
-@@ -391,6 +398,8 @@
- if (last_x != COLS - 1) {
- for (y = 0; y <= last_y; y++) {
- refs[y] = typeRealloc(int, (size_t) COLS, refs[y]);
-+ if (!refs[y])
-+ failed("update_refs");
- for (x = last_x + 1; x < COLS; x++)
- refs[y][x] = 0;
- }
-@@ -402,6 +411,8 @@
- refs = typeRealloc(int *, (size_t) LINES, refs);
- for (y = last_y + 1; y < LINES; y++) {
- refs[y] = typeMalloc(int, (size_t) COLS);
-+ if (!refs[y])
-+ failed("update_refs");
- for (x = 0; x < COLS; x++)
- refs[y][x] = 0;
- }
-@@ -419,6 +430,7 @@
- struct worm *w;
- int *ip;
- bool done = FALSE;
-+ int max_refs;
-
- setlocale(LC_ALL, "");
-
-@@ -489,7 +501,7 @@
-
- #define SET_COLOR(num, fg) \
- init_pair(num+1, (short) fg, (short) bg); \
-- flavor[num] |= COLOR_PAIR(num+1) | A_BOLD
-+ flavor[num] |= (chtype) COLOR_PAIR(num+1) | A_BOLD
-
- SET_COLOR(0, COLOR_GREEN);
- SET_COLOR(1, COLOR_RED);
-@@ -501,8 +513,9 @@
- }
- #endif /* A_COLOR */
-
-- refs = typeMalloc(int *, (size_t) LINES);
-- for (y = 0; y < LINES; y++) {
-+ max_refs = LINES;
-+ refs = typeMalloc(int *, (size_t) max_refs);
-+ for (y = 0; y < max_refs; y++) {
- refs[y] = typeMalloc(int, (size_t) COLS);
- for (x = 0; x < COLS; x++) {
- refs[y][x] = 0;
-@@ -596,7 +609,7 @@
- Trace(("Cleanup"));
- cleanup();
- #ifdef NO_LEAKS
-- for (y = 0; y < LINES; y++) {
-+ for (y = 0; y < max_refs; y++) {
- free(refs[y]);
- }
- free(refs);
-Index: test/xmas.c
-Prereq: 1.27
---- ncurses-5.9/test/xmas.c 2010-11-13 20:24:10.000000000 +0000
-+++ ncurses-5.9-20141206/test/xmas.c 2013-04-27 19:46:53.000000000 +0000
-@@ -92,7 +92,7 @@
- /******************************************************************************/
-
- /*
-- * $Id: xmas.c,v 1.27 2010/11/13 20:24:10 tom Exp $
-+ * $Id: xmas.c,v 1.28 2013/04/27 19:46:53 tom Exp $
- */
- #include <test.priv.h>
-
-@@ -148,7 +148,7 @@
- static int reindeer(void);
- static int blinkit(void);
-
--static RETSIGTYPE done(int sig) GCC_NORETURN;
-+static void done(int sig) GCC_NORETURN;
-
- static void
- set_color(WINDOW *win, chtype color)
-@@ -1143,7 +1143,7 @@
- return (0);
- }
-
--static RETSIGTYPE
-+static void
- done(int sig GCC_UNUSED)
- {
- CATCHALL(done);
diff --git a/source/l/ncurses/ncurses.SlackBuild b/source/l/ncurses/ncurses.SlackBuild
index 992789e36..188760785 100755
--- a/source/l/ncurses/ncurses.SlackBuild
+++ b/source/l/ncurses/ncurses.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2000-2011, 2013, 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2000-2011, 2013, 2014, 2015, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,26 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=ncurses
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | cut -f 2- -d - | cut -f 1,2 -d .)}
BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-ncurses
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,12 +70,18 @@ CFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
+ --enable-colorfgbg \
+ --enable-hard-tabs \
+ --enable-overwrite \
+ --enable-xmc-glitch \
+ --with-cxx-shared \
+ --with-ospeed=unsigned \
+ --with-termlib=tinfo \
+ --with-ticlib=tic \
--with-gpm \
- --disable-termcap \
--with-shared \
- --with-cxx-shared \
- --without-normal \
--without-debug \
+ --disable-static \
--without-profile \
--enable-symlinks \
--enable-pc-files \
@@ -86,51 +103,71 @@ tar xvf $CWD/ncurses-$VERSION.tar.?z || exit 1
cd ncurses-$VERSION || exit 1
chown -R root:root .
-# This allows some other patches to come first by making them bz2... gz next
-if [ ! -z "$(ls $CWD/patches/ncurses*bz2 2> /dev/null)" ]; then
- bzcat $CWD/patches/ncurses*bz2 > tmp-patch.sh
- bash tmp-patch.sh || exit 1
-fi
-# Apply official upstream patches.
-if [ ! -z "$(ls $CWD/patches/ncurses-$VERSION-2*.patch.gz 2> /dev/null)" ]; then
- for file in $CWD/patches/ncurses-$VERSION-2*.patch.gz ; do
- zcat $file | patch -p1 --verbose || exit 1
- done
-fi
-
-# Apply upstream patch collection:
-xzcat $CWD/ncurses-5.9-20141206-patch.sh.xz > ncurses-5.9-20141206-patch.sh
-sh ncurses-5.9-20141206-patch.sh
+## NOTE: nevermind trying this... patches have multiple failures. Use the
+## dated archive from upstream instead.
+#
+### No rollup (*.patch.sh) patch available yet for ncurses-6.1, so we'll
+### comment this out for now.
+## Apply upstream patch collection:
+#xzcat $CWD/ncurses-6.0-20160910-patch.sh.xz > ncurses-6.0-20160910-patch.sh
+#sh ncurses-6.0-20160910-patch.sh
+## Apply weekly ncurses patch updates:
+#for file in $CWD/patches/*.patch.gz ; do
+# zcat $file | patch -p1 --verbose || exit 1
+#done
zcat $CWD/ncurses.mkhashsize.diff.gz | patch -p1 --verbose || exit 1
-ncurses_configure
-make -j4 || exit 1
-# Spamming the partition.
-# Sorry, but it's about the only way to get a good 'tic'.
-make install
-# Install the package:
-make install DESTDIR=$PKG
+# Configure/build/install to package the standard ncurses libraries:
+ncurses_configure || exit 1
+make $NUMJOBS || exit 1
+make install DESTDIR=$PKG || exit 1
-# Build/install again with wide character support:
+# Configure/build/install again with wide character support:
make clean
WIDEC=--enable-widec
-ncurses_configure
-make -j4 || exit 1
-make install
-make install DESTDIR=$PKG
-
-if [ ! -d $PKG/usr/include/ncursesw -a ! -L $PKG/usr/include/ncursesw ]; then
- ( cd $PKG/usr/include ; ln -sf ncurses ncursesw )
-fi
+ncurses_configure || exit 1
+make $NUMJOBS || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Make a termcap file in case anyone actually needs it:
+echo "# /etc/termcap" > misc/termcap
+grep \$Revision: misc/terminfo.src >> misc/termcap
+grep \$Date: misc/terminfo.src >> misc/termcap
+echo "#" >> misc/termcap
+echo "# Converted from terminfo.src for Slackware:" >> misc/termcap
+echo "# tic -C -t terminfo.src > termcap" >> misc/termcap
+echo "#" >> misc/termcap
+echo "# This file is included to support legacy applications using libtermcap." >> misc/termcap
+echo "# Modern applications will use ncurses/terminfo instead." >> misc/termcap
+echo "#" >> misc/termcap
+echo "#------------------------------------------------------------------------------" >> misc/termcap
+echo "#" >> misc/termcap
+tic -C -t misc/terminfo.src >> misc/termcap
+touch -r misc/terminfo.src misc/termcap
+mkdir $PKG/etc
+cp -a misc/termcap $PKG/etc/termcap
# Strip stuff:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-# Move the include files from /usr/include into
-# /usr/include/ncurses, then make symlinks back
-# into /usr/include.
+# Remove static libraries:
+for file in libform.a libformw.a libmenu.a libmenuw.a libncurses++.a \
+ libncurses++w.a libncurses.a libncursesw.a libpanel.a libpanelw.a \
+ libtic.a libtinfo.a libcurses.a ; do
+ rm -f $PKG/usr/lib${LIBDIRSUFFIX}/$file
+done
+
+# Check for new static residue:
+if ls $PKG/usr/lib${LIBDIRSUFFIX}/*.a 1> /dev/null 2> /dev/null ; then
+ echo "BAILING OUT. A NEW STATIC LIBRARY HAS APPEARED:"
+ ls -l $PKG/usr/lib${LIBDIRSUFFIX}/*.a
+ exit 1
+fi
+
+# Move the include files from /usr/include into /usr/include/ncurses,
+# then make symlinks back into /usr/include.
( cd $PKG/usr/include
rm -rf ncurses
mkdir ncurses
@@ -138,50 +175,54 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" \
for file in ncurses/* ; do
ln -sf $file .
done
- # This shouldn't clobber the real one:
- mv termcap.h termcap-ncurses.h
)
+# Make an ncursesw symlink to /usr/include/ncurses:
+if [ ! -d $PKG/usr/include/ncursesw -a ! -L $PKG/usr/include/ncursesw ]; then
+ ( cd $PKG/usr/include ; ln -sf ncurses ncursesw )
+fi
+
# Move the ncurses libraries into /lib, since they're important:
mkdir -p $PKG/lib${LIBDIRSUFFIX}
( cd $PKG/usr/lib${LIBDIRSUFFIX}
chmod 755 *.so
chmod 644 *.a
- mv libncurses.so.5* $PKG/lib${LIBDIRSUFFIX}
- mv libncursesw.so.5* $PKG/lib${LIBDIRSUFFIX}
- rm -f libncurses.so
- ln -sf /lib${LIBDIRSUFFIX}/libncurses.so.5 libncurses.so
- rm -f libncursesw.so
- ln -sf /lib${LIBDIRSUFFIX}/libncursesw.so.5 libncursesw.so
- # Olde obsolete names, just in case
- rm -f libcurses.so
- ln -sf libncurses.so libcurses.so
- rm -f libcursesw.so
- ln -sf libncursesw.so libcursesw.so
+ mv libncurses.so.6* $PKG/lib${LIBDIRSUFFIX}
+ mv libncursesw.so.6* $PKG/lib${LIBDIRSUFFIX}
+ mv libtinfo.so.6* $PKG/lib${LIBDIRSUFFIX}
+ rm -f libtinfo.so.6
+ ln -sf ../../lib${LIBDIRSUFFIX}/libtinfo.so.6 .
+)
+
+# Use linker loader scripts to make sure -tinfo dependency works:
+( cd $PKG/usr/lib${LIBDIRSUFFIX}
+ rm -f libcurses.so libcursesw.so libncurses.so libncursesw.so libtermcap.so
+ echo "INPUT(-lncurses)" > libcurses.so
+ echo "INPUT(-lncursesw)" > libcursesw.so
+ echo "INPUT(libncurses.so.6 -ltinfo)" > libncurses.so
+ echo "INPUT(libncursesw.so.6 -ltinfo)" > libncursesw.so
+ echo "INPUT(-ltinfo)" > libtermcap.so
)
-# Set TERMINFO to point to the package:
+# Use various upstream/fixed/better terminfo files to update the terminfo
+# database. Only *.terminfo files in $CWD/terminfo will be used.
export TERMINFO=$PKG/usr/share/terminfo
-# Fix the xterm, screen, rxvt, and Eterm entries:
-for tfile in $CWD/xterm.terminfo $CWD/screeninfo.src $CWD/rxvt.terminfo $CWD/Eterm.ti ; do
+for tfile in $CWD/terminfo/*.terminfo ; do
if [ -r $tfile ]; then
progs/tic -v $tfile
fi
done
unset TERMINFO
-# Then, add /usr/doc/ncurses-xxxxx with appropriate files.
+# Add /usr/doc/ncurses-xxxxx with appropriate files:
mkdir -p $PKG/usr/doc/ncurses-$VERSION
cp -a \
- ANNOUNCE INSTALL MANIFEST NEWS README* TO-DO \
+ ANNOUNCE AUTHORS COPYING* INSTALL MANIFEST NEWS README* TO-DO VERSION \
$PKG/usr/doc/ncurses-$VERSION
mkdir -p $PKG/usr/doc/ncurses-$VERSION/c++
cp -a \
c++/NEWS c++/PROBLEMS c++/README-first \
$PKG/usr/doc/ncurses-$VERSION/c++
-if [ -r $PKG/usr/man/man1/tack.1 ]; then
- gzip -9 --force $PKG/usr/man/man1/tack.1
-fi
# We don't need the log of every change here, but we'll take some.
# If you need the whole thing probably you already extracted the
@@ -197,10 +238,10 @@ if [ -r NEWS ]; then
touch -r NEWS $DOCSDIR/NEWS
fi
-# desc file:
mkdir -p $PKG/install
+zcat $CWD/doinst.sh.gz | sed "s,usr/lib,usr/lib${LIBDIRSUFFIX},g" > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/ncurses-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/ncurses-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz
diff --git a/source/l/ncurses/rxvt.terminfo b/source/l/ncurses/rxvt.terminfo
deleted file mode 100644
index cda901821..000000000
--- a/source/l/ncurses/rxvt.terminfo
+++ /dev/null
@@ -1,55 +0,0 @@
-# From: Thomas Dickey <dickey@clark.net> 04 Oct 1997
-# Updated: Özgür Kesim <kesim@math.fu-berlin.de> 02 Nov 1997
-# Notes:
-# rxvt 2.21b uses
-# smacs=\E(B\E)U^N, rmacs=\E(B\E)0^O,
-# but some applications don't work with that.
-# It also has an AIX extension
-# box2=lqkxjmwuvtn,
-# and
-# ech=\E[%p1%dX,
-# but the latter does not work correctly.
-#
-# rxvt is normally configured to look for "xterm" or "xterm-color" as $TERM.
-# Since rxvt is not really compatible with xterm, it should be configured as
-# "rxvt-basic" (monochrom) and "rxvt"
-rxvt-basic|rxvt terminal base (X Window System),
- am, bce, eo, km, msgr, xenl, xon,
- 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=^M,
- csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
- cud=\E[%p1%dB, cud1=^J, 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, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
- flash=\E[?5h\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=^J, is1=\E[?47l\E=\E[?1l,
- is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l,
- kDC=\E[3$, kEND=\E[8$, kHOM=\E[7$, kLFT=\E[d, kNXT=\E[6$,
- kPRV=\E[5$, kRIT=\E[c, ka1=\EOw, ka3=\EOy, kb2=\EOu, kbs=^H,
- 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~, 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~,
- kmous=\E[M, knp=\E[6~, kpp=\E[5~, kslt=\E[4~, rc=\E8,
- rev=\E[7m, ri=\EM, rmacs=^O, rmcup=\E[?47l\E8,
- rmkx=\E>, 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>,
- s0ds=\E(B, s1ds=\E(0, sc=\E7,
- sgr0=\E[m\017,
- smacs=^N, smcup=\E7\E[?47h,
- smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g,
- vpa=\E[%i%p1%dd,
-rxvt|rxvt terminal emulator (X Window System),
- colors#8, pairs#64,
- op=\E[39;49m, setab=\E[%p1%{40}%+%dm,
- setaf=\E[%p1%{30}%+%dm,
- use=rxvt-basic,
diff --git a/source/l/ncurses/screeninfo.src b/source/l/ncurses/screeninfo.src
deleted file mode 100644
index c6ca4d95f..000000000
--- a/source/l/ncurses/screeninfo.src
+++ /dev/null
@@ -1,73 +0,0 @@
-screen|VT 100/ANSI X3.64 virtual terminal,
- am, km, mir, msgr, xenl,
- cols#80, it#8, lines#24, colors#8, pairs#64,
- 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=\b, 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=\EM, dch=\E[%p1%dP, dch1=\E[P,
- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
- enacs=\E(B\E)0, home=\E[H,
- ht=\t, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
- ind=\n, is2=\E)0, kcub1=\EOD, kcud1=\EOB,
- kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, 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~, kend=\E[4~,
- kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\EE,
- rc=\E8, rev=\E[7m, ri=\EM, rmcup=\E[?1049l, rmir=\E[4l,
- rmkx=\E[?1l\E>, rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7,
- sgr0=\E[m, smcup=\E[?1049h, smir=\E[4h, smkx=\E[?1h\E=,
- smso=\E[3m, smul=\E[4m, tbc=\E[3g, smacs=^N, rmacs=^O, flash=\Eg,
- civis=\E[?25l, cnorm=\E[34h\E[?25h, cvvis=\E[34l,
- op=\E[39;49m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++\054\054hhII00,
-screen-bce|VT 100/ANSI X3.64 virtual terminal with bce,
- am, bce, km, mir, msgr, xenl,
- cols#80, it#8, lines#24, colors#8, pairs#64,
- 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=\b, 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=\EM, dch=\E[%p1%dP, dch1=\E[P,
- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
- enacs=\E(B\E)0, home=\E[H,
- ht=\t, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
- ind=\n, is2=\E)0, kcub1=\EOD, kcud1=\EOB,
- kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, 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~, kend=\E[4~,
- kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\EE,
- rc=\E8, rev=\E[7m, ri=\EM, rmcup=\E[?1049l, rmir=\E[4l,
- rmkx=\E[?1l\E>, rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7,
- sgr0=\E[m, smcup=\E[?1049h, smir=\E[4h, smkx=\E[?1h\E=,
- smso=\E[3m, smul=\E[4m, tbc=\E[3g, smacs=^N, rmacs=^O, flash=\Eg,
- civis=\E[?25l, cnorm=\E[34h\E[?25h, cvvis=\E[34l,
- op=\E[39;49m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++\054\054hhII00,
-screen-s|VT 100/ANSI X3.64 virtual terminal with hardstatus line,
- am, bce, km, mir, msgr, xenl,
- cols#80, it#8, lines#24, colors#8, pairs#64,
- 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=\b, 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=\EM, dch=\E[%p1%dP, dch1=\E[P,
- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
- enacs=\E(B\E)0, home=\E[H,
- ht=\t, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
- ind=\n, is2=\E)0, kcub1=\EOD, kcud1=\EOB,
- kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, 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~, kend=\E[4~,
- kich1=\E[2~, knp=\E[6~, kpp=\E[5~, nel=\EE,
- rc=\E8, rev=\E[7m, ri=\EM, rmcup=\E[?1049l, rmir=\E[4l,
- rmkx=\E[?1l\E>, rmso=\E[23m, rmul=\E[24m, rs2=\Ec, sc=\E7,
- sgr0=\E[m, smcup=\E[?1049h, smir=\E[4h, smkx=\E[?1h\E=,
- smso=\E[3m, smul=\E[4m, tbc=\E[3g, smacs=^N, rmacs=^O, flash=\Eg,
- tsl=\E_, fsl=\E\\, dsl=\E_\E\\,
- civis=\E[?25l, cnorm=\E[34h\E[?25h, cvvis=\E[34l,
- op=\E[39;49m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++\054\054hhII00,
diff --git a/source/l/ncurses/slack-desc b/source/l/ncurses/slack-desc
index c24cc25b9..d1672d8e3 100644
--- a/source/l/ncurses/slack-desc
+++ b/source/l/ncurses/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
ncurses: ncurses (CRT screen handling and optimization package)
ncurses:
ncurses: The ncurses (new curses) library is a free software emulation of
-ncurses: curses in System V Release 4.0, and more. It uses terminfo format,
+ncurses: curses in System V Release 4.0, and more. It uses terminfo format,
ncurses: supports pads and color and multiple highlights and forms characters
ncurses: and function-key mapping, and has all the other SYSV-curses
ncurses: enhancements over BSD curses.
ncurses:
-ncurses:
+ncurses: Homepage: https://invisible-island.net/ncurses/
ncurses:
ncurses:
diff --git a/source/l/ncurses/slack-desc.aaa_terminfo b/source/l/ncurses/slack-desc.aaa_terminfo
new file mode 100644
index 000000000..6a2fd4dfc
--- /dev/null
+++ b/source/l/ncurses/slack-desc.aaa_terminfo
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+aaa_terminfo: aaa_terminfo (a basic collection of terminfo entries)
+aaa_terminfo:
+aaa_terminfo: This is a starter set of files from the terminfo database, which
+aaa_terminfo: should be enough in most cases. The complete set (from which this
+aaa_terminfo: is derived) can be found in the ncurses package.
+aaa_terminfo:
+aaa_terminfo: The terminfo database describes the characteristics of terminals, so
+aaa_terminfo: don't try to log in without this package. :-)
+aaa_terminfo:
+aaa_terminfo:
+aaa_terminfo:
diff --git a/source/l/ncurses/terminfo/tmux.terminfo b/source/l/ncurses/terminfo/tmux.terminfo
new file mode 100644
index 000000000..b088bb7ac
--- /dev/null
+++ b/source/l/ncurses/terminfo/tmux.terminfo
@@ -0,0 +1,7 @@
+tmux|tmux terminal multiplexer,
+ kbs=\177, ritm=\E[23m, rmso=\E[27m, sitm=\E[3m, smso=\E[7m, Ms@,
+ use=xterm+sl, use=xterm+tmux, use=screen,
+
+tmux-256color|tmux with 256 colors,
+ use=xterm+256setaf, use=tmux,
+
diff --git a/source/l/ncurses/terminfo/tmux.terminfo.README b/source/l/ncurses/terminfo/tmux.terminfo.README
new file mode 100644
index 000000000..67c8eb7de
--- /dev/null
+++ b/source/l/ncurses/terminfo/tmux.terminfo.README
@@ -0,0 +1,2 @@
+This is the standard terminfo from tmux's FAQ, with kbs=\177 added since this
+is what tmux is hardcoded to generate for backspace.
diff --git a/source/l/ncurses/xterm.terminfo b/source/l/ncurses/terminfo/xterm.terminfo
index 88bee44f1..7ff85bfbe 100644
--- a/source/l/ncurses/xterm.terminfo
+++ b/source/l/ncurses/terminfo/xterm.terminfo
@@ -1,12 +1,10 @@
-# $XTermId: terminfo,v 1.155 2007/11/11 23:26:52 tom Exp $
-#
-# $XFree86: xc/programs/xterm/terminfo,v 3.59 2006/02/13 01:14:59 dickey Exp $
+# $XTermId: terminfo,v 1.177 2017/12/25 21:08:55 tom Exp $
#
# Updates/notes/new entries (e.g., xterm-8bit, xterm-16color, xterm-256color)
# - Thomas E. Dickey
#
#------------------------------------------------------------------------------
-# Copyright 1996-2006,2007 by Thomas E. Dickey
+# Copyright 1996-2016,2017 by Thomas E. Dickey
#
# All Rights Reserved
#
@@ -34,6 +32,8 @@
# sale, use or other dealings in this Software without prior written
# authorization.
#------------------------------------------------------------------------------
+# format (ncurses 6.1): tic -W -1 -f -x terminfo
+#------------------------------------------------------------------------------
#
# Special Capabilities:
# --------------------
@@ -136,9 +136,22 @@ xterm-new|modern xterm terminal emulator,
kcbt=\E[Z,
kent=\EOM,
rin=\E[%p1%dT,
+ use=ansi+rep,
+ use=ecma+strikeout,
use=xterm+pcfkeys,
+ use=xterm+tmux,
use=xterm-basic,
-#
+
+# These "ansi+XXX" blocks were added in ncurses 5.0:
+ansi+rep,
+ rep=%p1%c\E[%p2%{1}%-%db,
+
+ansi+enq|ncurses extension for ANSI ENQ,
+ u6=\E[%i%d;%dR,
+ u7=\E[6n,
+ u8=\E[?%[;0123456789]c,
+ u9=\E[c,
+
# Encode modifiers using parameters (see "Xterm Control Sequences" ctlseqs.ms).
# Note that this is unrelated to PCTERM.
#
@@ -198,6 +211,32 @@ xterm+pcfkeys|fragment for PC-style keys,
use=xterm+pcf2,
use=xterm+pce2,
use=xterm+pcc2,
+
+# This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who
+# asked for some of xterm's advanced features to be added to its terminfo
+# entry. It defines extended capabilities not found in standard terminfo or
+# termcap. These are useful in tmux, for instance, hence the name.
+#
+# One caveat in adding extended capabilities in ncurses is that if the names
+# are longer than two characters, then they will not be visible through the
+# termcap interface.
+#
+# Ms modifies the selection/clipboard. Its parameters are
+# p1 = the storage unit (clipboard, selection or cut buffer)
+# p2 = the base64-encoded clipboard content.
+#
+# Ss is used to set the cursor style as described by the DECSCUSR
+# function to a block or underline.
+# Se resets the cursor style to the terminal power-on default.
+#
+# Cs and Ce set and reset the cursor colour.
+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\sq,
+ Ss=\E[%p1%d\sq,
#
# The ctrlFKeys resource is only relevant to the xterm+pcfn and xterm+pcfN
# entries, since the modifyFunctionKeys resource overrides ctrlFKeys when it is
@@ -857,6 +896,11 @@ xterm+pce0|fragment with modifyCursorKeys:0,
kPRV6=\E[5;6~,
kPRV7=\E[5;7~,
use=xterm+edit,
+
+# This is an ncurses extension
+ecma+strikeout|ECMA-48 strikeout/crossed-out,
+ rmxx=\E[29m,
+ smxx=\E[9m,
#
# This chunk is used for building the VT220/Sun/PC keyboard variants.
xterm-basic|modern xterm terminal emulator - common,
@@ -869,12 +913,14 @@ xterm-basic|modern xterm terminal emulator - common,
msgr,
xenl,
AX,
+ XT,
colors#8,
cols#80,
it#8,
lines#24,
pairs#64,
- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ acsc=``aaffggiijjkkllmmnnooppqqr
+ rssttuuvvwwxxyyzz{{||}}~~,
bel=^G,
blink=\E[5m,
bold=\E[1m,
@@ -882,12 +928,12 @@ xterm-basic|modern xterm terminal emulator - common,
civis=\E[?25l,
clear=\E[H\E[2J,
cnorm=\E[?12l\E[?25h,
- cr=^M,
+ cr=\r,
csr=\E[%i%p1%d;%p2%dr,
cub=\E[%p1%dD,
cub1=^H,
cud=\E[%p1%dB,
- cud1=^J,
+ cud1=\n,
cuf=\E[%p1%dC,
cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH,
@@ -896,6 +942,7 @@ xterm-basic|modern xterm terminal emulator - common,
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,
@@ -910,10 +957,9 @@ xterm-basic|modern xterm terminal emulator - common,
ich=\E[%p1%d@,
il=\E[%p1%dL,
il1=\E[L,
- ind=^J,
+ ind=\n,
invis=\E[8m,
is2=\E[!p\E[?3;4l\E[4l\E>,
- kbs=^H,
kmous=\E[M,
mc0=\E[i,
mc4=\E[4i,
@@ -924,9 +970,9 @@ xterm-basic|modern xterm terminal emulator - common,
rc=\E8,
rev=\E[7m,
ri=\EM,
+ ritm=\E[23m,
rmacs=\E(B,
rmam=\E[?7l,
- rmcup=\E[?1049l,
rmir=\E[4l,
rmkx=\E[?1l\E>,
rmm=\E[?1034l,
@@ -937,24 +983,88 @@ xterm-basic|modern xterm terminal emulator - common,
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}%=%t3%e%p1%d%;m,
- sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
+ 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}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ 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,
+ sitm=\E[3m,
smacs=\E(0,
smam=\E[?7h,
- smcup=\E[?1049h,
smir=\E[4h,
smkx=\E[?1h\E=,
smm=\E[?1034h,
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,
+ E3=\E[3J,
+ use=ansi+enq,
+ use=xterm+alt+title,
+ use=xterm+kbs,
#
# 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
@@ -1014,29 +1124,30 @@ xterm-vt52|xterm emulating dec vt52,
cols#80,
it#8,
lines#24,
- acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ acsc=``aaffggjjkkllmmnnooppqqrrs
+ sttuuvvwwxxyyzz{{||}}~~,
bel=^G,
clear=\EH\EJ,
- cr=^M,
+ cr=\r,
cub1=\ED,
cud1=\EB,
cuf1=\EC,
- cup=\EY%p1%' '%+%c%p2%' '%+%c,
+ cup=\EY%p1%'\s'%+%c%p2%'\s'%+%c,
cuu1=\EA,
ed=\EJ,
el=\EK,
home=\EH,
ht=^I,
- ind=^J,
- kbs=^H,
+ ind=\n,
kcub1=\ED,
kcud1=\EB,
kcuf1=\EC,
kcuu1=\EA,
- nel=^M^J,
+ nel=\r\n,
ri=\EI,
rmacs=\EG,
smacs=\EF,
+ use=xterm+kbs,
#
# Sun does not number the function keys this way in their sparse termcap; their
# terminal descriptions ignore the keypads. kb(7M) states that there are codes
@@ -1162,7 +1273,7 @@ xterm-hp|xterm with hpterm function keys,
#
xterm-sco|xterm with SCO function keys,
kbeg=\E[E,
- kdch1=\177,
+ kdch1=^?,
kf1=\E[M,
kf10=\E[V,
kf11=\E[W,
@@ -1226,6 +1337,27 @@ xterm-65|xterm with tall window 65x80 (X Window System),
lines#65,
use=xterm-old,
xterm-bold|xterm with bold instead of underline (X Window System),
+ sgr=
+ %?
+ %p9
+ %t\016
+ %e
+ \017
+ %;
+ B\E[0
+ %?
+ %p6
+ %t;1
+ %;
+ %?
+ %p2
+ %t;1
+ %;
+ %?
+ %p1%p3%|
+ %t;7
+ %;
+ m,
smso=\E[7m,
smul=\E[1m,
use=xterm-old,
@@ -1328,6 +1460,21 @@ xterm+vt+edit|fragment for vt220-style editing keypad,
kfnd=\E[1~,
kslt=\E[4~,
+xterm+noalt|xterm without altscreen,
+ rmcup@,
+ smcup@,
+
+xterm+alt1049|xterm 90 feature,
+ rmcup=\E[?1049l,
+ smcup=\E[?1049h,
+
+xterm+titlestack|xterm 251 feature,
+ rmcup=\E[23;0;0t,
+ smcup=\E[22;0;0t,
+
+xterm+alt+title|xterm 90 and 251 features combined,
+ rmcup=\E[?1049l\E[23;0;0t,
+ smcup=\E[?1049h\E[22;0;0t,
#
# This should work for the commonly used "color xterm" variations (XFree86
# xterm, color_xterm, nxterm, rxvt). Note that it does not set 'bce', so for
@@ -1372,8 +1519,100 @@ xterm-rep|xterm with repeat-character control,
# normally used only for printers). The parameter to csnm and scs is the same
# in both cases: the keyboard language parameter returned by CSI ? 2 6 n.
xterm-nrc|xterm with VT220 national replacement character sets,
- csnm=%?%p1%{1}%=%tNorth American%e%p1%{2}%=%tBritish%e%p1%{3}%=%tFlemish%e%p1%{4}%=%tFrench Canadian%e%p1%{5}%=%tDanish%e%p1%{6}%=%tFinnish%e%p1%{7}%=%tGerman%e%p1%{8}%=%tDutch%e%p1%{9}%=%tItalian%e%p1%{10}%=%tSwiss (French)%e%p1%{11}%=%tSwiss (German)%e%p1%{12}%=%tSwedish%e%p1%{13}%=%tNorwegian%e%p1%{14}%=%tFrench/Belgian%e%p1%{15}%=%tSpanish%;,
- scs=%?%p1%{1}%=%t\E(B%e%p1%{2}%=%t\E(A%e%p1%{3}%=%t\E(R%e%p1%{4}%=%t\E(9%e%p1%{5}%=%t\E(E%e%p1%{6}%=%t\E(5%e%p1%{7}%=%t\E(K%e%p1%{8}%=%t\E(4%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(=%e%p1%{11}%=%t\E(=%e%p1%{12}%=%t\E(7%e%p1%{13}%=%t\E(E%e%p1%{14}%=%t\E(R%e%p1%{15}%=%t\E(Z%;,
+ csnm=
+ %?
+ %p1%{1}%=
+ %tNorth\sAmerican
+ %e
+ %p1%{2}%=
+ %tBritish
+ %e
+ %p1%{3}%=
+ %tFlemish
+ %e
+ %p1%{4}%=
+ %tFrench\sCanadian
+ %e
+ %p1%{5}%=
+ %tDanish
+ %e
+ %p1%{6}%=
+ %tFinnish
+ %e
+ %p1%{7}%=
+ %tGerman
+ %e
+ %p1%{8}%=
+ %tDutch
+ %e
+ %p1%{9}%=
+ %tItalian
+ %e
+ %p1%{10}%=
+ %tSwiss\s(French)
+ %e
+ %p1%{11}%=
+ %tSwiss\s(German)
+ %e
+ %p1%{12}%=
+ %tSwedish
+ %e
+ %p1%{13}%=
+ %tNorwegian
+ %e
+ %p1%{14}%=
+ %tFrench/Belgian
+ %e
+ %p1%{15}%=
+ %tSpanish
+ %;,
+ scs=
+ %?
+ %p1%{1}%=
+ %t\E(B
+ %e
+ %p1%{2}%=
+ %t\E(A
+ %e
+ %p1%{3}%=
+ %t\E(R
+ %e
+ %p1%{4}%=
+ %t\E(9
+ %e
+ %p1%{5}%=
+ %t\E(E
+ %e
+ %p1%{6}%=
+ %t\E(5
+ %e
+ %p1%{7}%=
+ %t\E(K
+ %e
+ %p1%{8}%=
+ %t\E(4
+ %e
+ %p1%{9}%=
+ %t\E(Y
+ %e
+ %p1%{10}%=
+ %t\E(=
+ %e
+ %p1%{11}%=
+ %t\E(=
+ %e
+ %p1%{12}%=
+ %t\E(7
+ %e
+ %p1%{13}%=
+ %t\E(E
+ %e
+ %p1%{14}%=
+ %t\E(R
+ %e
+ %p1%{15}%=
+ %t\E(Z
+ %;,
use=xterm-new,
#
# Foreground 0-15 maps (with toggles) into 30-37 & 90-97
@@ -1388,31 +1627,143 @@ xterm-nrc|xterm with VT220 national replacement character sets,
# either for terminfo-level applications or via ncurses.
xterm-16color|xterm with 16 colors,
colors#16,
- pairs#256,
- setab=\E[%?%p1%{8}%<%t%p1%{40}%+%e%p1%{92}%+%;%dm,
- setaf=\E[%?%p1%{8}%<%t%p1%{30}%+%e%p1%{82}%+%;%dm,
- setb=%p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m,
- setf=%p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa%?%ga%{1}%=%t4%e%ga%{3}%=%t6%e%ga%{4}%=%t1%e%ga%{6}%=%t3%e%ga%d%;m,
+ pairs#0x100,
+ setab=\E[
+ %?
+ %p1%{8}%<
+ %t%p1%{40}%+
+ %e
+ %p1%{92}%+
+ %;
+ %dm,
+ setaf=\E[
+ %?
+ %p1%{8}%<
+ %t%p1%{30}%+
+ %e
+ %p1%{82}%+
+ %;
+ %dm,
+ setb=
+ %p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa
+ %?%ga%{1}%=
+ %t4
+ %e%ga%{3}%=
+ %t6
+ %e%ga%{4}%=
+ %t1
+ %e%ga%{6}%=
+ %t3
+ %e%ga%d
+ %;
+ m,
+ setf=
+ %p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa
+ %?%ga%{1}%=
+ %t4
+ %e%ga%{3}%=
+ %t6
+ %e%ga%{4}%=
+ %t1
+ %e%ga%{6}%=
+ %t3
+ %e%ga%d
+ %;
+ m,
+ use=xterm+256color,
use=xterm-new,
-#
-# This uses RGB values 0..1000
-#
-# 256 colors should give 65536 pairs, but terminfo stores numbers in a signed
-# short. Most people will not notice problems with only 32767 pairs.
-xterm-256color|xterm with 256 colors,
+
+# "indexed color" is mentioned without definition in ISO 8613-6 (ITU T.416).
+#
+# This implementation uses a 256-element color map where the first 16 entries
+# are shared with the aixterm-compatible colors (and in turn the first 8 are
+# shared with the ANSI colors). The three levels (256, 16, 8) account for the
+# use of a conditional expression in setaf/setab which reduces the number of
+# characters sent to the screen for typical applications.
+#
+# 256 colors should give 65536 pairs, but SVr4 (legacy) terminfo stores numbers
+# in a signed short. Most people will not notice problems with only 32767
+# pairs. With ncurses 6.1, numbers are stored in a signed integer (at least
+# 32-bits), and the inconsistency regarding pairs is eliminated.
+xterm+256color|xterm 256-color feature,
ccc,
- colors#256,
- pairs#32767,
- initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
- 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,
+ colors#0x100,
+ pairs#0x10000,
+ 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,
+ rs1=\Ec\E]104\007,
+ 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,
setb@,
setf@,
+xterm-256color|xterm with 256 colors,
+ use=xterm+256color,
use=xterm-new,
xterm-88color|xterm with 88 colors,
colors#88,
pairs#7744,
use=xterm-256color,
+
+# "direct color" is mentioned without definition in ISO 8613-6 (ITU T.416).
+#
+# This is a particular implementation which assume 8-bit values for red, green,
+# and blue. Other encodings are possible; none are addressed by that standard.
+#
+# The "RGB" flag is an ncurses 6.1 extension which tells the library how to
+# quickly compute the color-content for a given color value.
+#
+# Like xterm+256color, this uses a conditional expression. But it does that
+# for a different reason: to make it readily usable for applications which
+# print text but also use RGB colors, it uses a color map for the usual ANSI
+# colors (0-7) and RGB colors for the remaining range of the color value.
+xterm+direct|xterm with direct-color indexing,
+ RGB,
+ colors#0x1000000,
+ pairs#0x10000,
+ 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,
+ setb@,
+ setf@,
+xterm-direct|xterm with direct-color indexing,
+ use=xterm+direct,
+ use=xterm,
#
# This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color.
# To use it, your decTerminalID resource must be set to 200 or above, and the
@@ -1439,7 +1790,8 @@ xterm-8bit|xterm terminal emulator with 8-bit controls (X Window System),
it#8,
lines#24,
pairs#64,
- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ acsc=``aaffggiijjkkllmmnnooppqqr
+ rssttuuvvwwxxyyzz{{||}}~~,
bel=^G,
blink=\2335m,
bold=\2331m,
@@ -1447,12 +1799,12 @@ xterm-8bit|xterm terminal emulator with 8-bit controls (X Window System),
civis=\233?25l,
clear=\233H\2332J,
cnorm=\233?25l\233?25h,
- cr=^M,
+ cr=\r,
csr=\233%i%p1%d;%p2%dr,
cub=\233%p1%dD,
cub1=^H,
cud=\233%p1%dB,
- cud1=^J,
+ cud1=\n,
cuf=\233%p1%dC,
cuf1=\233C,
cup=\233%i%p1%d;%p2%dH,
@@ -1475,14 +1827,15 @@ xterm-8bit|xterm terminal emulator with 8-bit controls (X Window System),
ich=\233%p1%d@,
il=\233%p1%dL,
il1=\233L,
- ind=^J,
+ ind=\n,
invis=\2338m,
- is2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8,
+ is2=\E[62"p\E\sG\233m\233?7h\E>
+ \E7\233?1;3;4;6l\2334l\233r
+ \E8,
ka1=\217w,
ka3=\217u,
kb2=\217y,
kbeg=\217E,
- kbs=^H,
kc1=\217q,
kc3=\217s,
kcbt=\233Z,
@@ -1535,13 +1888,74 @@ xterm-8bit|xterm terminal emulator with 8-bit controls (X Window System),
rmso=\23327m,
rmul=\23324m,
rs1=\Ec,
- rs2=\E[62"p\E G\233m\233?7h\E>\E7\233?1;3;4;6l\2334l\233r\E8,
+ rs2=\E[62"p\E\sG\233m\233?7h\E>
+ \E7\233?1;3;4;6l\2334l\233r
+ \E8,
sc=\E7,
setab=\2334%p1%dm,
setaf=\2333%p1%dm,
- setb=\2334%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
- setf=\2333%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m,
- sgr=\2330%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;,
+ setb=\2334
+ %?
+ %p1%{1}%=
+ %t4
+ %e
+ %p1%{3}%=
+ %t6
+ %e
+ %p1%{4}%=
+ %t1
+ %e
+ %p1%{6}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ setf=\2333
+ %?
+ %p1%{1}%=
+ %t4
+ %e
+ %p1%{3}%=
+ %t6
+ %e
+ %p1%{4}%=
+ %t1
+ %e
+ %p1%{6}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ sgr=\2330
+ %?
+ %p6
+ %t;1
+ %;
+ %?
+ %p2
+ %t;4
+ %;
+ %?
+ %p1%p3%|
+ %t;7
+ %;
+ %?
+ %p4
+ %t;5
+ %;
+ %?
+ %p7
+ %t;8
+ %;
+ m
+ %?
+ %p9
+ %t\E(0
+ %e
+ \E(B
+ %;,
sgr0=\2330m\E(B,
smacs=\E(0,
smam=\233?7h,
@@ -1553,9 +1967,10 @@ xterm-8bit|xterm terminal emulator with 8-bit controls (X Window System),
tbc=\2333g,
u6=\233[%i%d;%dR,
u7=\E[6n,
- u8=\233[?1;2c,
+ u8=\233[?%[;0123456789]c,
u9=\E[c,
vpa=\233%i%p1%dd,
+ use=xterm+kbs,
#
xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
OTbs,
@@ -1568,12 +1983,14 @@ xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
npc,
xenl,
AX,
+ XT,
colors#8,
cols#80,
it#8,
lines#24,
pairs#64,
- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ acsc=``aaffggiijjkkllmmnnooppqqr
+ rssttuuvvwwxxyyzz{{||}}~~,
bel=^G,
blink=\E[5m,
bold=\E[1m,
@@ -1581,12 +1998,12 @@ xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
civis=\E[?25l,
clear=\E[H\E[2J,
cnorm=\E[?12l\E[?25h,
- cr=^M,
+ cr=\r,
csr=\E[%i%p1%d;%p2%dr,
cub=\E[%p1%dD,
cub1=^H,
cud=\E[%p1%dB,
- cud1=^J,
+ cud1=\n,
cuf=\E[%p1%dC,
cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH,
@@ -1610,7 +2027,7 @@ xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
ich=\E[%p1%d@,
il=\E[%p1%dL,
il1=\E[L,
- ind=^J,
+ ind=\n,
indn=\E[%p1%dS,
invis=\E[8m,
is2=\E[!p\E[?3;4l\E[4l\E>,
@@ -1623,7 +2040,6 @@ xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
kPRV=\E[5;2~,
kRIT=\E[1;2C,
kb2=\EOE,
- kbs=^H,
kcbt=\E[Z,
kcub1=\EOD,
kcud1=\EOB,
@@ -1697,7 +2113,6 @@ xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
rin=\E[%p1%dT,
rmacs=^O,
rmam=\E[?7l,
- rmcup=\E[?1049l,
rmir=\E[4l,
rmkx=\E[?1l\E>,
rmso=\E[27m,
@@ -1707,13 +2122,71 @@ xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
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}%=%t3%e%p1%d%;m,
- sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,
+ 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}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ sgr=\E[0
+ %?
+ %p6
+ %t;1
+ %;
+ %?
+ %p2
+ %t;4
+ %;
+ %?
+ %p1%p3%|
+ %t;7
+ %;
+ %?
+ %p4
+ %t;5
+ %;
+ %?
+ %p7
+ %t;8
+ %;
+ m
+ %?
+ %p9
+ %t\016
+ %e
+ \017
+ %;,
sgr0=\E[m\017,
smacs=^N,
smam=\E[?7h,
- smcup=\E[?1049h,
smir=\E[4h,
smkx=\E[?1h\E=,
smso=\E[7m,
@@ -1728,6 +2201,8 @@ xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
kb1=\EOt,
kb3=\EOv,
kc2=\EOr,
+ use=xterm+alt1049,
+ use=xterm+kbs,
xterm-xfree86|xterm terminal emulator (XFree86 4.4 Window System),
use=xterm-xf86-v44,
#
@@ -1737,7 +2212,7 @@ xterm-xfree86|xterm terminal emulator (XFree86 4.4 Window System),
# + added u6, u7, u8, u9 strings for Daniel Weaver's tack program.
# + added kmous string for ncurses.
# + added khome/kend strings (which conflict with kfnd/kslt, see note).
-xterm-r6|xterm-old|xterm X11R6 version,
+xterm-r6|xterm X11R6 version,
OTbs,
am,
km,
@@ -1747,16 +2222,17 @@ xterm-r6|xterm-old|xterm X11R6 version,
cols#80,
it#8,
lines#24,
- acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+ acsc=``aaffggiijjkkllmmnnooppqqr
+ rssttuuvvwwxxyyzz{{||}}~~,
bel=^G,
bold=\E[1m,
clear=\E[H\E[2J,
- cr=^M,
+ cr=\r,
csr=\E[%i%p1%d;%p2%dr,
cub=\E[%p1%dD,
cub1=^H,
cud=\E[%p1%dB,
- cud1=^J,
+ cud1=\n,
cuf=\E[%p1%dC,
cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH,
@@ -1774,9 +2250,9 @@ xterm-r6|xterm-old|xterm X11R6 version,
hts=\EH,
il=\E[%p1%dL,
il1=\E[L,
- ind=^J,
- is2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[?1;3;4;6l\E8,
- kbs=^H,
+ 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,
@@ -1814,7 +2290,8 @@ xterm-r6|xterm-old|xterm X11R6 version,
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,
+ rs2=\E[m\E[?7h\E[4l\E>\E7\E[r\E[
+ ?1;3;4;6l\E8,
sc=\E7,
sgr0=\E[m,
smacs=^N,
@@ -1828,7 +2305,10 @@ xterm-r6|xterm-old|xterm X11R6 version,
u7=\E[6n,
u8=\E[?1;2c,
u9=\E[c,
+ use=xterm+kbs,
use=xterm+decedit,
+xterm-old|antique xterm version,
+ use=xterm-r6,
#
# Compatible with the R5 xterm, with the following changes:
# + changed 'blink=@', to 'blink@' (the former meant that "@" would start
@@ -1854,12 +2334,12 @@ xterm-r5|xterm R5 version,
bel=^G,
bold=\E[1m,
clear=\E[H\E[2J,
- cr=^M,
+ cr=\r,
csr=\E[%i%p1%d;%p2%dr,
cub=\E[%p1%dD,
cub1=^H,
cud=\E[%p1%dB,
- cud1=^J,
+ cud1=\n,
cuf=\E[%p1%dC,
cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH,
@@ -1878,8 +2358,7 @@ xterm-r5|xterm R5 version,
ich1=\E[@,
il=\E[%p1%dL,
il1=\E[L,
- ind=^J,
- kbs=^H,
+ ind=\n,
kcub1=\EOD,
kcud1=\EOB,
kcuf1=\EOC,
@@ -1914,9 +2393,31 @@ xterm-r5|xterm R5 version,
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,
+ 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,
+ 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=,
@@ -1927,6 +2428,7 @@ xterm-r5|xterm R5 version,
u7=\E[6n,
u8=\E[?1;2c,
u9=\E[c,
+ use=xterm+kbs,
#
#
# Customization begins here.
@@ -1935,5 +2437,24 @@ xterm-r5|xterm R5 version,
# is widely used for a variety of incompatible terminal emulations including
# color_xterm and rxvt.
xterm|X11 terminal emulator,
- use=xterm-new,
+# use=xterm-new,
# use=xterm-r6,
+# For compatibility purposes, use the same contents as the xterm-new entry,
+# but without "use=ansi+rep,"
+ npc,
+ indn=\E[%p1%dS,
+ kb2=\EOE,
+ kcbt=\E[Z,
+ kent=\EOM,
+ rin=\E[%p1%dT,
+# use=ansi+rep,
+ use=ecma+strikeout,
+ use=xterm+pcfkeys,
+ use=xterm+tmux,
+ use=xterm-basic,
+
+# This fragment is for people who cannot agree on what the backspace key
+# should send.
+xterm+kbs|fragment for backspace key,
+ kbs=^H,
+# kbs=^?,
diff --git a/source/l/ncurses/terminfo/xterm.terminfo.README b/source/l/ncurses/terminfo/xterm.terminfo.README
new file mode 100644
index 000000000..28cd13d6c
--- /dev/null
+++ b/source/l/ncurses/terminfo/xterm.terminfo.README
@@ -0,0 +1,6 @@
+This is based on the xterm terminfo definition file from xterm-331, but the
+xterm definition has been changed to remove use=ansi+rep which was causing
+problems with terminals that set themselves to xterm but aren't compatible
+with use=ansi+rep (including Konsole and the console app in OSX).
+
+The definition that includes the rep= feature remains available as xterm-new.
diff --git a/source/l/ncurses/terminfo/xterm.terminfo.diff b/source/l/ncurses/terminfo/xterm.terminfo.diff
new file mode 100644
index 000000000..e6bd6bdc9
--- /dev/null
+++ b/source/l/ncurses/terminfo/xterm.terminfo.diff
@@ -0,0 +1,25 @@
+--- xterm.terminfo.orig 2017-12-25 15:08:55.000000000 -0600
++++ xterm.terminfo 2018-04-14 12:28:57.405002630 -0500
+@@ -2437,8 +2437,21 @@
+ # is widely used for a variety of incompatible terminal emulations including
+ # color_xterm and rxvt.
+ xterm|X11 terminal emulator,
+- use=xterm-new,
++# use=xterm-new,
+ # use=xterm-r6,
++# For compatibility purposes, use the same contents as the xterm-new entry,
++# but without "use=ansi+rep,"
++ npc,
++ indn=\E[%p1%dS,
++ kb2=\EOE,
++ kcbt=\E[Z,
++ kent=\EOM,
++ rin=\E[%p1%dT,
++# use=ansi+rep,
++ use=ecma+strikeout,
++ use=xterm+pcfkeys,
++ use=xterm+tmux,
++ use=xterm-basic,
+
+ # This fragment is for people who cannot agree on what the backspace key
+ # should send.
diff --git a/source/l/ncurses/terminfo/xterm.terminfo.orig b/source/l/ncurses/terminfo/xterm.terminfo.orig
new file mode 100644
index 000000000..ee558e4d4
--- /dev/null
+++ b/source/l/ncurses/terminfo/xterm.terminfo.orig
@@ -0,0 +1,2447 @@
+# $XTermId: terminfo,v 1.177 2017/12/25 21:08:55 tom Exp $
+#
+# Updates/notes/new entries (e.g., xterm-8bit, xterm-16color, xterm-256color)
+# - Thomas E. Dickey
+#
+#------------------------------------------------------------------------------
+# Copyright 1996-2016,2017 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.
+#------------------------------------------------------------------------------
+# format (ncurses 6.1): tic -W -1 -f -x terminfo
+#------------------------------------------------------------------------------
+#
+# Special Capabilities:
+# --------------------
+# ich has a corresponding capability that inserts a single blank. We could
+# have used ich1=\E[@, which works with ncurses, but that is not standard
+# behavior. If it is set, then SVr4 vi (e.g., Solaris 2.6) emits both
+# smir/rmir and ich1.
+# meml locks memory above the cursor; memu unlocks (ala HP terminals). This
+# is not recognized by some older (e.g., SVr3) tic programs, but none
+# do more than warn about it. Ignore the warning.
+# smcup clears memory before switching to the alternate screen. The older
+# (deprecated) \E[?47h did not do this, requiring applications to
+# embed a \E[2J in the rmcup string. However, that behavior cannot
+# be disabled via titeInhibit, making that resource not function as
+# intended on systems with terminfo.
+# rs2/is2 are shorter with XFree86 xterm because it supports DECSTR. We
+# use the shorter sequence for compatibility with the termcap, which
+# is trimmed to keep it shorter than 1023 characters. It (escape \E[!p)
+# replaces these in the conventional vt100 reset-string:
+# \E7 - save cursor (fixes origin-mode side-effect)
+# \E[r - reset scrolling margins
+# \E[m - reset SGR (including color)
+# \E[?7h - reset wraparound mode (DECAWM)
+# \E[?1l - reset application cursor keys (DECCKM)
+# \E[?6l - reset origin mode (DECOM)
+# \E8 - restore cursor
+# DECSTR is recognized by XFree86 xterm even in vt52 mode.
+#
+# Editing Keypad:
+# --------------
+# XFree86 xterm emulates vt220 if the decTerminalID resource is set to 200 or
+# higher. Otherwise it emulates a vt100 or vt52 depending on the value of the
+# resource. When emulating a vt220, we support the editing keypad. Sun and PC
+# keyboards have an editing keypad which is similar to the vt220:
+#
+# VT220 editing keypad
+# ----------------------------
+# Find Insert Remove
+# Select Prev Next
+# ----------------------------
+#
+# Sun/PC editing keypad
+# ----------------------------
+# Insert Home PageUp
+# Delete End PageDn
+# ----------------------------
+#
+# If the sunKeyboard resource is true, we map it this way (adjusting the values
+# of Home, End and Delete):
+# VT220 Sun/PC
+# ----------------------------
+# Find Home
+# Select End
+# Insert Insert
+# Remove Delete
+# Prev PageUp
+# Next PageDn
+# ----------------------------
+#
+# Note that all of the keys on the editing keypad transmit escape sequences. A
+# vt220 does this only when in vt220 mode; when emulating a vt100 the editing
+# keypad is inactive.
+#
+# Alternative keycodes:
+# --------------------
+# Several of the function keys have alternative names, depending on the type of
+# host which your xterm is connected to. DEC (i.e., the VMS system) uses F15
+# as the HELP key, F16 as the DO key. Unix applications generally do not do
+# this. Curses applications in particular, assign a unique keycode to each
+# capability string. These terminal descriptions do not have conflicting
+# definitions, to ensure that Unix curses applications use a consistent set of
+# keycodes. To get a VMS-bias, make these substitutions:
+# 1. change khome to kfnd
+# 2. change kend to kslt
+# The original xterm-r6 entry does in fact have a VMS bias.
+#
+# Some legacy applications using the termcap emulation may expect kll where
+# we have specified kend.
+#
+# Function keys with modifiers (Sun/PC):
+# -------------------------------------
+# Shift-Fx - kf{12+x}
+# Control-Fx - kf{24+x}
+# Shift-Control-Fx - kf{36+x}
+#
+# The terminfo defines some special keys which are documented as "shifted",
+# e.g., kDC is shifted-delete-character.
+#
+# Note however, that even though the terminfo says a key might be sent, there
+# may be conflicts which prevent this. For example, it is common to use
+# shifted pageup and pagedown for window manager functions. The default
+# translation for xterm since X11R4 has overridden shifted Insert, Select,
+# PageUp and PageDown, which correspond to terminfo kIC, kEND, kPRV and kNXT
+# respectively.
+#
+xterm-new|modern xterm terminal emulator,
+ npc,
+ indn=\E[%p1%dS,
+ kb2=\EOE,
+ kcbt=\E[Z,
+ kent=\EOM,
+ rin=\E[%p1%dT,
+ use=ansi+rep,
+ use=ecma+strikeout,
+ use=xterm+pcfkeys,
+ use=xterm+tmux,
+ use=xterm-basic,
+
+# These "ansi+XXX" blocks were added in ncurses 5.0:
+ansi+rep,
+ rep=%p1%c\E[%p2%{1}%-%db,
+
+ansi+enq|ncurses extension for ANSI ENQ,
+ u6=\E[%i%d;%dR,
+ u7=\E[6n,
+ u8=\E[?%[;0123456789]c,
+ u9=\E[c,
+
+# Encode modifiers using parameters (see "Xterm Control Sequences" ctlseqs.ms).
+# Note that this is unrelated to PCTERM.
+#
+# Some names are extensions allowed by ncurses, e.g.,
+# kDN, kDN5, kDN6, kLFT5, kLFT6, kRIT5, kRIT6, kUP, kUP5, kUP6
+#
+# The uppercase names are made up, since there are no standards that apply.
+# If they were limited to two characters, they could in principle be translated
+# to termcap. However, termcap sizes are limited to 1023 bytes, so there is
+# little point in ensuring that extended key names can be translated to
+# termcap. A terminfo file can be up to 4096 bytes; using all extended keys
+# that xterm can generate would in fact exceed that limit.
+#
+# The numbers correspond to the modifier parameters documented in Xterm
+# Control Sequences:
+#
+# 2 Shift
+# 3 Alt
+# 4 Shift + Alt
+# 5 Control
+# 6 Shift + Control
+# 7 Alt + Control
+# 8 Shift + Alt + Control
+#
+# X/Open Curses defines some shift combinations, which are also used here
+# where applicable. Since it does define some shift combinations, no number
+# (2) is used for suffixing the made-up names. Some combinations are not
+# useful, e.g., they may reboot your computer, or they may require too many
+# fingers. I stopped at modifier 7, just to keep things simple -TD
+#
+# XTerm resources:
+# ---------------
+# The xterm+pcfn, xterm+pcf0, xterm+pcf1, xterm+pcf2 and xterm+pcf3 fragments
+# correspond to default resource settings for xterm on a 104-key PC keyboard
+# with 12 function-keys:
+#
+# *sunKeyboard:false
+# *oldXtermFKeys:false
+# *modifyCursorKeys:2
+# *modifyFunctionKeys:2
+# *ctrlFKeys:10
+#
+# The key numbers are computed based on the modifiers:
+#
+# kf1-kf12 are F1-F12
+# kf13-kf24 are shift F1-F12
+# kf25-kf36 are control F1-F12
+# kf37-kf48 are control+shift F1-F12
+# kf49-kf60 are alt F1-F12
+# kf61-kf63 are shift-alt F1-F3
+#
+# Note that ncurses would allow definition of kf64 and beyond, if there were
+# an application that required it.
+#
+xterm+pcfkeys|fragment for PC-style keys,
+ use=xterm+app,
+ use=xterm+pcf2,
+ use=xterm+pce2,
+ use=xterm+pcc2,
+
+# This chunk is based on suggestions by Ailin Nemui and Nicholas Marriott, who
+# asked for some of xterm's advanced features to be added to its terminfo
+# entry. It defines extended capabilities not found in standard terminfo or
+# termcap. These are useful in tmux, for instance, hence the name.
+#
+# One caveat in adding extended capabilities in ncurses is that if the names
+# are longer than two characters, then they will not be visible through the
+# termcap interface.
+#
+# Ms modifies the selection/clipboard. Its parameters are
+# p1 = the storage unit (clipboard, selection or cut buffer)
+# p2 = the base64-encoded clipboard content.
+#
+# Ss is used to set the cursor style as described by the DECSCUSR
+# function to a block or underline.
+# Se resets the cursor style to the terminal power-on default.
+#
+# Cs and Ce set and reset the cursor colour.
+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\sq,
+ Ss=\E[%p1%d\sq,
+#
+# The ctrlFKeys resource is only relevant to the xterm+pcfn and xterm+pcfN
+# entries, since the modifyFunctionKeys resource overrides ctrlFKeys when it is
+# positive. A different choice of ctrlFKeys would give a different set of
+# function-key strings.
+xterm+pcfn|fragment with modifyFunctionKeys:-1 and ctrlFKeys:10,
+ 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~,
+ 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=\EOR,
+ 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=\EOS,
+ kf40=\E[61~,
+ kf41=\E[62~,
+ kf42=\E[63~,
+ kf43=\E[64~,
+ kf44=\E[65~,
+ kf45=\E[66~,
+ kf46=\E[67~,
+ kf47=\E[68~,
+ kf48=\E[69~,
+ kf5=\E[15~,
+ kf6=\E[17~,
+ kf7=\E[18~,
+ kf8=\E[19~,
+ kf9=\E[20~,
+
+# Changing ctrlFKeys to 12 would let us number the keys using just shift- and
+# control- modifiers:
+# kf1-kf12 are F1-F12
+# kf13-kf24 are shift F1-F12
+# kf25-kf36 are control F1-F12
+# kf37-kf48 are control+shift F1-F12
+xterm+pcfN|fragment with modifyFunctionKeys:-1 and ctrlFKeys:12,
+ 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~,
+ 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=\EOR,
+ 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=\EOS,
+ kf40=\E[61~,
+ kf41=\E[62~,
+ kf42=\E[63~,
+ kf43=\E[64~,
+ kf44=\E[65~,
+ kf45=\E[66~,
+ kf46=\E[67~,
+ kf47=\E[68~,
+ kf48=\E[69~,
+ kf5=\E[15~,
+ kf6=\E[17~,
+ kf7=\E[18~,
+ kf8=\E[19~,
+ kf9=\E[20~,
+
+xterm+pcf0|fragment with modifyFunctionKeys:0,
+ kf1=\EOP,
+ kf10=\E[21~,
+ kf11=\E[23~,
+ kf12=\E[24~,
+ kf13=\EO2P,
+ kf14=\EO2Q,
+ kf15=\EO2R,
+ kf16=\EO2S,
+ 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=\EO5P,
+ kf26=\EO5Q,
+ kf27=\EO5R,
+ kf28=\EO5S,
+ 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=\EO6P,
+ kf38=\EO6Q,
+ kf39=\EO6R,
+ kf4=\EOS,
+ kf40=\EO6S,
+ 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=\EO3P,
+ kf5=\E[15~,
+ kf50=\EO3Q,
+ kf51=\EO3R,
+ kf52=\EO3S,
+ 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=\EO4P,
+ kf62=\EO4Q,
+ kf63=\EO4R,
+ kf7=\E[18~,
+ kf8=\E[19~,
+ kf9=\E[20~,
+
+# This is almost the same as xterm+pcf2 because the unmodified keys all happen
+# to have a pattern that forces the modifier to the same position.
+xterm+pcf1|fragment with modifyFunctionKeys:1,
+ kf1=\EOP,
+ kf10=\E[21~,
+ kf11=\E[23~,
+ kf12=\E[24~,
+ kf13=\E[2P,
+ kf14=\E[2Q,
+ kf15=\E[2R,
+ kf16=\E[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[5P,
+ kf26=\E[5Q,
+ kf27=\E[5R,
+ kf28=\E[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[6P,
+ kf38=\E[6Q,
+ kf39=\E[6R,
+ kf4=\EOS,
+ kf40=\E[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[3P,
+ kf5=\E[15~,
+ kf50=\E[3Q,
+ kf51=\E[3R,
+ kf52=\E[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[4P,
+ kf62=\E[4Q,
+ kf63=\E[4R,
+ kf7=\E[18~,
+ kf8=\E[19~,
+ kf9=\E[20~,
+
+xterm+pcf2|fragment with modifyFunctionKeys:2,
+ 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~,
+
+xterm+pcf3|fragment with modifyFunctionKeys:3,
+ 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~,
+#
+# The "PC-style" modifier scheme was introduced in xterm patch #94 (1999/3/27)
+# and revised in patch #167 (2002/8/24).
+#
+# The original assignments from patch #94 for cursor-keys had some technical
+# issues:
+#
+# A parameter for a function-key to represent a modifier is just more
+# bits. But for a cursor-key it may change the behavior of the
+# application. For instance, emacs decodes the first parameter of a
+# cursor-key as a repeat count.
+#
+# A parameterized string should (really) not begin with SS3 (\EO).
+# Rather, CSI (\E[) should be used.
+#
+# For these reasons, the original assignments were deprecated. For
+# compatibility reasons, they are still available as a setting of xterm's
+# modifyCursorKeys resource. These fragments list the modified cursor-keys
+# that might apply to xterm+pcfkeys with different values of that resource.
+xterm+pcc3|fragment with modifyCursorKeys:3,
+ kLFT=\E[>1;2D,
+ kRIT=\E[>1;2C,
+ kind=\E[>1;2B,
+ kri=\E[>1;2A,
+ kDN=\E[>1;2B,
+ kDN3=\E[>1;3B,
+ kDN4=\E[>1;4B,
+ kDN5=\E[>1;5B,
+ kDN6=\E[>1;6B,
+ kDN7=\E[>1;7B,
+ kLFT3=\E[>1;3D,
+ kLFT4=\E[>1;4D,
+ kLFT5=\E[>1;5D,
+ kLFT6=\E[>1;6D,
+ kLFT7=\E[>1;7D,
+ kRIT3=\E[>1;3C,
+ kRIT4=\E[>1;4C,
+ kRIT5=\E[>1;5C,
+ kRIT6=\E[>1;6C,
+ kRIT7=\E[>1;7C,
+ kUP=\E[>1;2A,
+ kUP3=\E[>1;3A,
+ kUP4=\E[>1;4A,
+ kUP5=\E[>1;5A,
+ kUP6=\E[>1;6A,
+ kUP7=\E[>1;7A,
+
+xterm+pcc2|fragment with modifyCursorKeys:2,
+ kLFT=\E[1;2D,
+ kRIT=\E[1;2C,
+ kind=\E[1;2B,
+ kri=\E[1;2A,
+ kDN=\E[1;2B,
+ kDN3=\E[1;3B,
+ kDN4=\E[1;4B,
+ kDN5=\E[1;5B,
+ kDN6=\E[1;6B,
+ kDN7=\E[1;7B,
+ kLFT3=\E[1;3D,
+ kLFT4=\E[1;4D,
+ kLFT5=\E[1;5D,
+ kLFT6=\E[1;6D,
+ kLFT7=\E[1;7D,
+ kRIT3=\E[1;3C,
+ kRIT4=\E[1;4C,
+ kRIT5=\E[1;5C,
+ kRIT6=\E[1;6C,
+ kRIT7=\E[1;7C,
+ kUP=\E[1;2A,
+ kUP3=\E[1;3A,
+ kUP4=\E[1;4A,
+ kUP5=\E[1;5A,
+ kUP6=\E[1;6A,
+ kUP7=\E[1;7A,
+
+xterm+pcc1|fragment with modifyCursorKeys:1,
+ kLFT=\E[2D,
+ kRIT=\E[2C,
+ kind=\E[2B,
+ kri=\E[2A,
+ kDN=\E[2B,
+ kDN3=\E[3B,
+ kDN4=\E[4B,
+ kDN5=\E[5B,
+ kDN6=\E[6B,
+ kDN7=\E[7B,
+ kLFT3=\E[3D,
+ kLFT4=\E[4D,
+ kLFT5=\E[5D,
+ kLFT6=\E[6D,
+ kLFT7=\E[7D,
+ kRIT3=\E[3C,
+ kRIT4=\E[4C,
+ kRIT5=\E[5C,
+ kRIT6=\E[6C,
+ kRIT7=\E[7C,
+ kUP=\E[2A,
+ kUP3=\E[3A,
+ kUP4=\E[4A,
+ kUP5=\E[5A,
+ kUP6=\E[6A,
+ kUP7=\E[7A,
+
+xterm+pcc0|fragment with modifyCursorKeys:0,
+ kLFT=\EO2D,
+ kRIT=\EO2C,
+ kind=\EO2B,
+ kri=\EO2A,
+ kDN=\EO2B,
+ kDN3=\EO3B,
+ kDN4=\EO4B,
+ kDN5=\EO5B,
+ kDN6=\EO6B,
+ kDN7=\EO7B,
+ kLFT3=\EO3D,
+ kLFT4=\EO4D,
+ kLFT5=\EO5D,
+ kLFT6=\EO6D,
+ kLFT7=\EO7D,
+ kRIT3=\EO3C,
+ kRIT4=\EO4C,
+ kRIT5=\EO5C,
+ kRIT6=\EO6C,
+ kRIT7=\EO7C,
+ kUP=\EO2A,
+ kUP3=\EO3A,
+ kUP4=\EO4A,
+ kUP5=\EO5A,
+ kUP6=\EO6A,
+ kUP7=\EO7A,
+
+# The home/end keys on the editing keypad are also treated as cursor keys.
+xterm+pce3|fragment with modifyCursorKeys:3,
+ kDC=\E[>3;2~,
+ kEND=\E[>1;2F,
+ kHOM=\E[>1;2H,
+ kIC=\E[>2;2~,
+ kNXT=\E[>6;2~,
+ kPRV=\E[>5;2~,
+ kDC3=\E[>3;3~,
+ kDC4=\E[>3;4~,
+ kDC5=\E[>3;5~,
+ kDC6=\E[>3;6~,
+ kDC7=\E[>3;7~,
+ kEND3=\E[>1;3F,
+ kEND4=\E[>1;4F,
+ kEND5=\E[>1;5F,
+ kEND6=\E[>1;6F,
+ kEND7=\E[>1;7F,
+ kHOM3=\E[>1;3H,
+ kHOM4=\E[>1;4H,
+ kHOM5=\E[>1;5H,
+ kHOM6=\E[>1;6H,
+ kHOM7=\E[>1;7H,
+ kIC3=\E[>2;3~,
+ kIC4=\E[>2;4~,
+ kIC5=\E[>2;5~,
+ kIC6=\E[>2;6~,
+ kIC7=\E[>2;7~,
+ kNXT3=\E[>6;3~,
+ kNXT4=\E[>6;4~,
+ kNXT5=\E[>6;5~,
+ kNXT6=\E[>6;6~,
+ kNXT7=\E[>6;7~,
+ kPRV3=\E[>5;3~,
+ kPRV4=\E[>5;4~,
+ kPRV5=\E[>5;5~,
+ kPRV6=\E[>5;6~,
+ kPRV7=\E[>5;7~,
+ use=xterm+pce0,
+
+xterm+pce2|fragment with modifyCursorKeys:2,
+ kDC=\E[3;2~,
+ kEND=\E[1;2F,
+ kHOM=\E[1;2H,
+ kIC=\E[2;2~,
+ kNXT=\E[6;2~,
+ kPRV=\E[5;2~,
+ kDC3=\E[3;3~,
+ kDC4=\E[3;4~,
+ kDC5=\E[3;5~,
+ kDC6=\E[3;6~,
+ kDC7=\E[3;7~,
+ kEND3=\E[1;3F,
+ kEND4=\E[1;4F,
+ kEND5=\E[1;5F,
+ kEND6=\E[1;6F,
+ kEND7=\E[1;7F,
+ kHOM3=\E[1;3H,
+ kHOM4=\E[1;4H,
+ kHOM5=\E[1;5H,
+ kHOM6=\E[1;6H,
+ kHOM7=\E[1;7H,
+ kIC3=\E[2;3~,
+ kIC4=\E[2;4~,
+ kIC5=\E[2;5~,
+ kIC6=\E[2;6~,
+ kIC7=\E[2;7~,
+ kNXT3=\E[6;3~,
+ kNXT4=\E[6;4~,
+ kNXT5=\E[6;5~,
+ kNXT6=\E[6;6~,
+ kNXT7=\E[6;7~,
+ kPRV3=\E[5;3~,
+ kPRV4=\E[5;4~,
+ kPRV5=\E[5;5~,
+ kPRV6=\E[5;6~,
+ kPRV7=\E[5;7~,
+ use=xterm+pce0,
+
+xterm+pce1|fragment with modifyCursorKeys:1,
+ kDC=\E[3;2~,
+ kEND=\E[2F,
+ kHOM=\E[2H,
+ kIC=\E[2;2~,
+ kNXT=\E[6;2~,
+ kPRV=\E[5;2~,
+ kDC3=\E[3;3~,
+ kDC4=\E[3;4~,
+ kDC5=\E[3;5~,
+ kDC6=\E[3;6~,
+ kDC7=\E[3;7~,
+ kEND3=\E[3F,
+ kEND4=\E[4F,
+ kEND5=\E[5F,
+ kEND6=\E[6F,
+ kEND7=\E[7F,
+ kHOM3=\E[3H,
+ kHOM4=\E[4H,
+ kHOM5=\E[5H,
+ kHOM6=\E[6H,
+ kHOM7=\E[7H,
+ kIC3=\E[2;3~,
+ kIC4=\E[2;4~,
+ kIC5=\E[2;5~,
+ kIC6=\E[2;6~,
+ kIC7=\E[2;7~,
+ kNXT3=\E[6;3~,
+ kNXT4=\E[6;4~,
+ kNXT5=\E[6;5~,
+ kNXT6=\E[6;6~,
+ kNXT7=\E[6;7~,
+ kPRV3=\E[5;3~,
+ kPRV4=\E[5;4~,
+ kPRV5=\E[5;5~,
+ kPRV6=\E[5;6~,
+ kPRV7=\E[5;7~,
+ use=xterm+pce0,
+
+xterm+pce0|fragment with modifyCursorKeys:0,
+ kDC=\E[3;2~,
+ kEND=\EO2F,
+ kHOM=\EO2H,
+ kIC=\E[2;2~,
+ kNXT=\E[6;2~,
+ kPRV=\E[5;2~,
+ kDC3=\E[3;3~,
+ kDC4=\E[3;4~,
+ kDC5=\E[3;5~,
+ kDC6=\E[3;6~,
+ kDC7=\E[3;7~,
+ kEND3=\EO3F,
+ kEND4=\EO4F,
+ kEND5=\EO5F,
+ kEND6=\EO6F,
+ kEND7=\EO7F,
+ kHOM3=\EO3H,
+ kHOM4=\EO4H,
+ kHOM5=\EO5H,
+ kHOM6=\EO6H,
+ kHOM7=\EO7H,
+ kIC3=\E[2;3~,
+ kIC4=\E[2;4~,
+ kIC5=\E[2;5~,
+ kIC6=\E[2;6~,
+ kIC7=\E[2;7~,
+ kNXT3=\E[6;3~,
+ kNXT4=\E[6;4~,
+ kNXT5=\E[6;5~,
+ kNXT6=\E[6;6~,
+ kNXT7=\E[6;7~,
+ kPRV3=\E[5;3~,
+ kPRV4=\E[5;4~,
+ kPRV5=\E[5;5~,
+ kPRV6=\E[5;6~,
+ kPRV7=\E[5;7~,
+ use=xterm+edit,
+
+# This is an ncurses extension
+ecma+strikeout|ECMA-48 strikeout/crossed-out,
+ rmxx=\E[29m,
+ smxx=\E[9m,
+#
+# This chunk is used for building the VT220/Sun/PC keyboard variants.
+xterm-basic|modern xterm terminal emulator - common,
+ OTbs,
+ am,
+ bce,
+ km,
+ mc5i,
+ mir,
+ msgr,
+ xenl,
+ AX,
+ XT,
+ colors#8,
+ cols#80,
+ it#8,
+ lines#24,
+ pairs#64,
+ acsc=``aaffggiijjkkllmmnnooppqqr
+ rssttuuvvwwxxyyzz{{||}}~~,
+ 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,
+ 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,
+ mc0=\E[i,
+ mc4=\E[4i,
+ mc5=\E[5i,
+ meml=\El,
+ memu=\Em,
+ op=\E[39;49m,
+ rc=\E8,
+ rev=\E[7m,
+ ri=\EM,
+ ritm=\E[23m,
+ rmacs=\E(B,
+ rmam=\E[?7l,
+ rmir=\E[4l,
+ rmkx=\E[?1l\E>,
+ rmm=\E[?1034l,
+ 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}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ setf=\E[3
+ %?
+ %p1%{1}%=
+ %t4
+ %e
+ %p1%{3}%=
+ %t6
+ %e
+ %p1%{4}%=
+ %t1
+ %e
+ %p1%{6}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ 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,
+ sitm=\E[3m,
+ 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=ansi+enq,
+ use=xterm+alt+title,
+ use=xterm+kbs,
+#
+# 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
+# sunKeyboard resource to true:
+# + maps the editing keypad
+# + interprets control-function-key as a second array of keys, so a
+# 12-fkey keyboard can support vt220's 20-fkeys.
+# + maps numeric keypad "+" to ",".
+# + uses DEC-style control sequences for the application keypad.
+#
+# Some packagers modify xterm's resource definitions to provide extra function
+# keys by using the shift-modifier in the translations resource. However, that
+# interferes with the DECUDK functionality.
+#
+xterm-vt220|xterm emulating vt220,
+ ka1=\EOw,
+ ka3=\EOy,
+ kb2=\EOu,
+ kc1=\EOq,
+ kc3=\EOs,
+ kcbt=\E[Z,
+ kend=\E[4~,
+ kent=\EOM,
+ 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~,
+ knp=\E[6~,
+ kpp=\E[5~,
+ ka2=\EOx,
+ kb1=\EOt,
+ kb3=\EOv,
+ kc2=\EOr,
+ use=xterm+app,
+ use=xterm+edit,
+ use=xterm-basic,
+#
+xterm-vt52|xterm emulating dec vt52,
+ cols#80,
+ it#8,
+ lines#24,
+ acsc=``aaffggjjkkllmmnnooppqqrrs
+ sttuuvvwwxxyyzz{{||}}~~,
+ bel=^G,
+ clear=\EH\EJ,
+ cr=\r,
+ cub1=\ED,
+ cud1=\EB,
+ cuf1=\EC,
+ cup=\EY%p1%'\s'%+%c%p2%'\s'%+%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,
+#
+# Sun does not number the function keys this way in their sparse termcap; their
+# terminal descriptions ignore the keypads. kb(7M) states that there are codes
+# reserved for 64 function keys, 16 each in left, right, top and bottom. Each
+# keyboard type has a different number of function keys in different
+# arrangements. Using xkeycaps for reference:
+#
+# Type 3: left 10, top 9, right 15
+# ------
+# kf1-kf9 are XK_F1-XK_F9
+# There is no kf10 on this keyboard type.
+# kf11-kf20 are keysyms XK_L1 through XK_L10.
+# kf31-kf45 are keysyms XK_R1 through XK_R15.
+#
+# However, X's keysymdef.h is hard-coded to make
+# XK_L1==XK_F11 and
+# XK_R1==XK_F21,
+# by someone who was unfamiliar with terminal types other than Sun's. So
+# xterm uses the internal X keysymbols, but the terminfo entry uses the Sun
+# numbering scheme.
+#
+# Type 4: left 11, top 12, right 15
+# ------
+# The left-keypad contains an unnumbered Help-key.
+# The right-keypad also contains NumLock, Ins, Del, Enter, + and - keys which
+# do not appear to be part of the R-sequence.
+#
+# Type 5: left 9, top 12, right (more than one keypad)
+# ------
+# These keyboards do not use the same naming convention, look like a hybrid of
+# the type 4 and IBM keyboards.
+#
+# XTerm resources:
+# ---------------
+# Set the modifyFunctionKeys resource to negative (-1) to make it simple to
+# enter the higher function-key values using shift- and control-modifiers.
+#
+xterm-sun|xterm with sun function keys,
+ kb2=\E[218z,
+ kcpy=\E[197z,
+ kcub1=\EOD,
+ kcud1=\EOB,
+ kcuf1=\EOC,
+ kcuu1=\EOA,
+ kdch1=\E[3z,
+ kend=\E[220z,
+ kent=\EOM,
+ kf1=\E[224z,
+ kf10=\E[233z,
+ kf11=\E[192z,
+ kf12=\E[193z,
+ kf13=\E[194z,
+ kf14=\E[195z,
+ kf15=\E[196z,
+ kf17=\E[198z,
+ kf18=\E[199z,
+ kf19=\E[200z,
+ kf2=\E[225z,
+ kf20=\E[201z,
+ kf3=\E[226z,
+ kf31=\E[208z,
+ kf32=\E[209z,
+ kf33=\E[210z,
+ kf34=\E[211z,
+ kf35=\E[212z,
+ kf36=\E[213z,
+ kf38=\E[215z,
+ kf4=\E[227z,
+ kf40=\E[217z,
+ kf42=\E[219z,
+ kf44=\E[221z,
+ kf45=\E[222z,
+ kf46=\E[234z,
+ kf47=\E[235z,
+ 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,
+#
+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,
+#
+# scoterm implements 48 function-keys using shift- and control-modifiers to
+# multiple 12 function-keys. X has a hard-coded limit of 35 function-keys,
+# but xterm can represent larger values.
+#
+# XTerm resources:
+# ---------------
+# Set the modifyFunctionKeys resource to negative (-1) to make it simple to
+# enter the higher function-key values using shift- and control-modifiers.
+#
+# Also, set ctrlFKeys resource to 12 (the default is 10) to make xterm see 48
+# function-keys on a keyboard with 12 function-keys and 4 control/shift
+# modifier combinations.
+#
+xterm-sco|xterm with SCO function keys,
+ kbeg=\E[E,
+ kdch1=^?,
+ kf1=\E[M,
+ kf10=\E[V,
+ kf11=\E[W,
+ kf12=\E[X,
+ kf13=\E[Y,
+ kf14=\E[Z,
+ kf15=\E[a,
+ kf16=\E[b,
+ kf17=\E[c,
+ kf18=\E[d,
+ kf19=\E[e,
+ kf2=\E[N,
+ kf20=\E[f,
+ kf21=\E[g,
+ kf22=\E[h,
+ kf23=\E[i,
+ kf24=\E[j,
+ kf25=\E[k,
+ kf26=\E[l,
+ kf27=\E[m,
+ kf28=\E[n,
+ kf29=\E[o,
+ kf3=\E[O,
+ kf30=\E[p,
+ kf31=\E[q,
+ kf32=\E[r,
+ kf33=\E[s,
+ kf34=\E[t,
+ kf35=\E[u,
+ kf36=\E[v,
+ kf37=\E[w,
+ kf38=\E[x,
+ kf39=\E[y,
+ kf4=\E[P,
+ kf40=\E[z,
+ kf41=\E[@,
+ kf42=\E[[,
+ kf43=\E[\\,
+ 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,
+ kich1=\E[L,
+ kmous=\E[>M,
+ knp=\E[G,
+ kpp=\E[I,
+ use=xterm+noapp,
+ use=xterm-basic,
+#
+# Other variants (these are all very old entries, from X11R5):
+xterm-24|xterms|vs100|xterm terminal emulator (X Window System),
+ lines#24,
+ use=xterm-old,
+xterm-65|xterm with tall window 65x80 (X Window System),
+ lines#65,
+ use=xterm-old,
+xterm-bold|xterm with bold instead of underline (X Window System),
+ sgr=
+ %?
+ %p9
+ %t\016
+ %e
+ \017
+ %;
+ B\E[0
+ %?
+ %p6
+ %t;1
+ %;
+ %?
+ %p2
+ %t;1
+ %;
+ %?
+ %p1%p3%|
+ %t;7
+ %;
+ m,
+ smso=\E[7m,
+ smul=\E[1m,
+ use=xterm-old,
+xterm-boldso|xterm with bold for standout (X Window System),
+ rmso=\E[m,
+ smso=\E[1m,
+ use=xterm-old,
+xterm-mono|monochrome xterm,
+ bce@,
+ colors@,
+ ncv@,
+ pairs@,
+ op@,
+ setab@,
+ setaf@,
+ setb@,
+ setf@,
+ sgr@,
+ use=xterm-old,
+#
+# VTxxx terminals are usually set up so that full-screen applications will use
+# the cursor application mode strings. This is good for full-screen
+# applications, including legacy applications which may have hard-coded
+# behavior, but bad for interactive shells (e.g., tcsh, bash) which use arrow
+# keys to scroll through a history of command strings.
+#
+# To see the difference between normal/application modes, consider this example:
+# + In normal (non-application) mode, the terminal transmits a down-arrow
+# as \E[C, which happens to echo as a down-arrow.
+# + In application mode the terminal transmits \EOC, which echoes as C.
+# That is because the \EO is the SS3 control, which says to use the
+# character from the G3 character set for the next cell.
+#
+# One example of hard-coded behavior would be for applications written to work
+# with VT52 and VT100 terminals. If the application's parser ignores 'O' and
+# '?' characters after the escape, then the cursor and keypad strings for the
+# two terminals are the same. (Indeed, one of the first curses applications
+# which I used did something like this to cover "ANSI" terminals -TD).
+#
+# To make this work (leaving the cursor keys in normal mode), we have to adjust
+# the terminal initialization sequences:
+#
+# smkx/rmkx set/reset the cursor and keypad application modes. We retain
+# the latter (otherwise many applications fail).
+#
+# smcup/rmcup set/restore cursor-addressing mode for full-screen
+# applications. For xterm, this normally means the alternate
+# screen, which is not compatible with interactive shells. Some
+# programs are "smart" and disable these.
+#
+xterm-noapp|xterm with cursor keys in normal mode,
+ rmcup@,
+ rmkx=\E>,
+ smcup@,
+ smkx=\E=,
+ use=xterm+noapp,
+ use=xterm,
+
+xterm+noapp|fragment with cursor keys in normal mode,
+ kcub1=\E[D,
+ kcud1=\E[B,
+ kcuf1=\E[C,
+ kcuu1=\E[A,
+ use=xterm+noapp+pc,
+
+xterm+app|fragment with cursor keys in application mode,
+ kcub1=\EOD,
+ kcud1=\EOB,
+ kcuf1=\EOC,
+ kcuu1=\EOA,
+ use=xterm+app+pc,
+
+xterm+noapp+pc|fragment for noapp pc-style home/end,
+ kend=\E[F,
+ khome=\E[H,
+
+xterm+app+pc|fragment for app pc-style home/end,
+ kend=\EOF,
+ khome=\EOH,
+
+xterm+edit|fragment for 6-key editing-keypad,
+ kdch1=\E[3~,
+ kich1=\E[2~,
+ knp=\E[6~,
+ kpp=\E[5~,
+ use=xterm+pc+edit,
+
+xterm+decedit|fragment for vt220 6-key editing-keypad,
+ kdch1=\E[3~,
+ kich1=\E[2~,
+ knp=\E[6~,
+ kpp=\E[5~,
+ use=xterm+vt+edit,
+
+xterm+pc+edit|fragment for pc-style editing keypad,
+ kend=\E[4~,
+ khome=\E[1~,
+
+xterm+vt+edit|fragment for vt220-style editing keypad,
+ kfnd=\E[1~,
+ kslt=\E[4~,
+
+xterm+noalt|xterm without altscreen,
+ rmcup@,
+ smcup@,
+
+xterm+alt1049|xterm 90 feature,
+ rmcup=\E[?1049l,
+ smcup=\E[?1049h,
+
+xterm+titlestack|xterm 251 feature,
+ rmcup=\E[23;0;0t,
+ smcup=\E[22;0;0t,
+
+xterm+alt+title|xterm 90 and 251 features combined,
+ rmcup=\E[?1049l\E[23;0;0t,
+ smcup=\E[?1049h\E[22;0;0t,
+#
+# This should work for the commonly used "color xterm" variations (XFree86
+# xterm, color_xterm, nxterm, rxvt). Note that it does not set 'bce', so for
+# XFree86 and and rxvt, some applications that use colors will be less
+# efficient, and in a few special cases (with "smart" optimization) the wrong
+# color will be painted in spots.
+xterm-color|generic "ANSI" color xterm (X Window System),
+ colors#8,
+ ncv@,
+ pairs#64,
+ op=\E[m,
+ setab=\E[4%p1%dm,
+ setaf=\E[3%p1%dm,
+ use=xterm-r6,
+#
+# vi may work better with this entry, because vi
+# doesn't use insert mode much
+xterm-ic|xterm-vi|xterm with insert character instead of insert mode,
+ mir@,
+ ich=\E[%p1%d@,
+ ich1=\E[@,
+ rmir@,
+ smir@,
+ use=xterm,
+#
+# This is used only for testing (it's not relevant to DEC VTxxx terminals, but
+# to ncurses).
+xterm-xmc|xterm with magic-cookie glitch,
+ xmc#1,
+ use=xterm-new,
+#
+# This one also is primarily for testing ncurses; while the ISO 6429 defines
+# the REP control, none of the DEC VTxxx terminals (VT52 through VT420) support
+# it.
+xterm-rep|xterm with repeat-character control,
+ rep=%p1%c\E[%p2%{1}%-%db,
+ use=xterm-new,
+#
+# This is mainly for testing xterm; the real VT220 will not let you switch
+# character sets without first altering the keyboard language in the setup
+# screen. Some emulators allow this anyway. (Note that these strings are
+# normally used only for printers). The parameter to csnm and scs is the same
+# in both cases: the keyboard language parameter returned by CSI ? 2 6 n.
+xterm-nrc|xterm with VT220 national replacement character sets,
+ csnm=
+ %?
+ %p1%{1}%=
+ %tNorth\sAmerican
+ %e
+ %p1%{2}%=
+ %tBritish
+ %e
+ %p1%{3}%=
+ %tFlemish
+ %e
+ %p1%{4}%=
+ %tFrench\sCanadian
+ %e
+ %p1%{5}%=
+ %tDanish
+ %e
+ %p1%{6}%=
+ %tFinnish
+ %e
+ %p1%{7}%=
+ %tGerman
+ %e
+ %p1%{8}%=
+ %tDutch
+ %e
+ %p1%{9}%=
+ %tItalian
+ %e
+ %p1%{10}%=
+ %tSwiss\s(French)
+ %e
+ %p1%{11}%=
+ %tSwiss\s(German)
+ %e
+ %p1%{12}%=
+ %tSwedish
+ %e
+ %p1%{13}%=
+ %tNorwegian
+ %e
+ %p1%{14}%=
+ %tFrench/Belgian
+ %e
+ %p1%{15}%=
+ %tSpanish
+ %;,
+ scs=
+ %?
+ %p1%{1}%=
+ %t\E(B
+ %e
+ %p1%{2}%=
+ %t\E(A
+ %e
+ %p1%{3}%=
+ %t\E(R
+ %e
+ %p1%{4}%=
+ %t\E(9
+ %e
+ %p1%{5}%=
+ %t\E(E
+ %e
+ %p1%{6}%=
+ %t\E(5
+ %e
+ %p1%{7}%=
+ %t\E(K
+ %e
+ %p1%{8}%=
+ %t\E(4
+ %e
+ %p1%{9}%=
+ %t\E(Y
+ %e
+ %p1%{10}%=
+ %t\E(=
+ %e
+ %p1%{11}%=
+ %t\E(=
+ %e
+ %p1%{12}%=
+ %t\E(7
+ %e
+ %p1%{13}%=
+ %t\E(E
+ %e
+ %p1%{14}%=
+ %t\E(R
+ %e
+ %p1%{15}%=
+ %t\E(Z
+ %;,
+ use=xterm-new,
+#
+# Foreground 0-15 maps (with toggles) into 30-37 & 90-97
+# Background 0-15 maps (with toggles) into 40-47 & 100-107
+#
+# Originally I suppressed setaf/setab, since ANSI specifies only 8 colors, but
+# Stephen Marley persuaded me to allow the "ANSI" color controls to extend to
+# 16 colors. (Note that ncurses 4.2 uses setf/setb from this description;
+# however 5.0 selects either according to their availability). - T.Dickey
+#
+# SVr4 curses does not use more than 8 colors anyway, so using 16 colors is
+# either for terminfo-level applications or via ncurses.
+xterm-16color|xterm with 16 colors,
+ colors#16,
+ pairs#0x100,
+ setab=\E[
+ %?
+ %p1%{8}%<
+ %t%p1%{40}%+
+ %e
+ %p1%{92}%+
+ %;
+ %dm,
+ setaf=\E[
+ %?
+ %p1%{8}%<
+ %t%p1%{30}%+
+ %e
+ %p1%{82}%+
+ %;
+ %dm,
+ setb=
+ %p1%{8}%/%{6}%*%{4}%+\E[%d%p1%{8}%m%Pa
+ %?%ga%{1}%=
+ %t4
+ %e%ga%{3}%=
+ %t6
+ %e%ga%{4}%=
+ %t1
+ %e%ga%{6}%=
+ %t3
+ %e%ga%d
+ %;
+ m,
+ setf=
+ %p1%{8}%/%{6}%*%{3}%+\E[%d%p1%{8}%m%Pa
+ %?%ga%{1}%=
+ %t4
+ %e%ga%{3}%=
+ %t6
+ %e%ga%{4}%=
+ %t1
+ %e%ga%{6}%=
+ %t3
+ %e%ga%d
+ %;
+ m,
+ use=xterm+256color,
+ use=xterm-new,
+
+# "indexed color" is mentioned without definition in ISO 8613-6 (ITU T.416).
+#
+# This implementation uses a 256-element color map where the first 16 entries
+# are shared with the aixterm-compatible colors (and in turn the first 8 are
+# shared with the ANSI colors). The three levels (256, 16, 8) account for the
+# use of a conditional expression in setaf/setab which reduces the number of
+# characters sent to the screen for typical applications.
+#
+# 256 colors should give 65536 pairs, but SVr4 (legacy) terminfo stores numbers
+# in a signed short. Most people will not notice problems with only 32767
+# pairs. With ncurses 6.1, numbers are stored in a signed integer (at least
+# 32-bits), and the inconsistency regarding pairs is eliminated.
+xterm+256color|xterm 256-color feature,
+ ccc,
+ colors#0x100,
+ pairs#0x10000,
+ 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,
+ rs1=\Ec\E]104\007,
+ 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,
+ setb@,
+ setf@,
+xterm-256color|xterm with 256 colors,
+ use=xterm+256color,
+ use=xterm-new,
+xterm-88color|xterm with 88 colors,
+ colors#88,
+ pairs#7744,
+ use=xterm-256color,
+
+# "direct color" is mentioned without definition in ISO 8613-6 (ITU T.416).
+#
+# This is a particular implementation which assume 8-bit values for red, green,
+# and blue. Other encodings are possible; none are addressed by that standard.
+#
+# The "RGB" flag is an ncurses 6.1 extension which tells the library how to
+# quickly compute the color-content for a given color value.
+#
+# Like xterm+256color, this uses a conditional expression. But it does that
+# for a different reason: to make it readily usable for applications which
+# print text but also use RGB colors, it uses a color map for the usual ANSI
+# colors (0-7) and RGB colors for the remaining range of the color value.
+xterm+direct|xterm with direct-color indexing,
+ RGB,
+ colors#0x1000000,
+ pairs#0x10000,
+ 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,
+ setb@,
+ setf@,
+xterm-direct|xterm with direct-color indexing,
+ use=xterm+direct,
+ use=xterm,
+#
+# This is an 8-bit version of xterm, which emulates DEC vt220 with ANSI color.
+# To use it, your decTerminalID resource must be set to 200 or above, and the
+# sunKeyboard resource set to true.
+#
+# HTS \E H \210
+# RI \E M \215
+# SS3 \E O \217
+# CSI \E [ \233
+#
+xterm-8bit|xterm terminal emulator with 8-bit controls (X Window System),
+ OTbs,
+ am,
+ bce,
+ km,
+ mc5i,
+ mir,
+ msgr,
+ npc,
+ xenl,
+ AX,
+ colors#8,
+ cols#80,
+ it#8,
+ lines#24,
+ pairs#64,
+ acsc=``aaffggiijjkkllmmnnooppqqr
+ rssttuuvvwwxxyyzz{{||}}~~,
+ bel=^G,
+ blink=\2335m,
+ bold=\2331m,
+ cbt=\233Z,
+ civis=\233?25l,
+ clear=\233H\2332J,
+ cnorm=\233?25l\233?25h,
+ cr=\r,
+ csr=\233%i%p1%d;%p2%dr,
+ cub=\233%p1%dD,
+ cub1=^H,
+ cud=\233%p1%dB,
+ cud1=\n,
+ cuf=\233%p1%dC,
+ cuf1=\233C,
+ cup=\233%i%p1%d;%p2%dH,
+ cuu=\233%p1%dA,
+ cuu1=\233A,
+ cvvis=\233?12;25h,
+ dch=\233%p1%dP,
+ dch1=\233P,
+ dl=\233%p1%dM,
+ dl1=\233M,
+ ech=\233%p1%dX,
+ ed=\233J,
+ el=\233K,
+ el1=\2331K,
+ flash=\233?5h$<100/>\233?5l,
+ home=\233H,
+ hpa=\233%i%p1%dG,
+ ht=^I,
+ hts=\210,
+ ich=\233%p1%d@,
+ il=\233%p1%dL,
+ il1=\233L,
+ ind=\n,
+ invis=\2338m,
+ is2=\E[62"p\E\sG\233m\233?7h\E>
+ \E7\233?1;3;4;6l\2334l\233r
+ \E8,
+ ka1=\217w,
+ ka3=\217u,
+ kb2=\217y,
+ kbeg=\217E,
+ kc1=\217q,
+ kc3=\217s,
+ kcbt=\233Z,
+ kcub1=\217D,
+ kcud1=\217B,
+ kcuf1=\217C,
+ kcuu1=\217A,
+ kdch1=\2333~,
+ kend=\2334~,
+ kent=\217M,
+ kf1=\23311~,
+ kf10=\23321~,
+ kf11=\23323~,
+ kf12=\23324~,
+ kf13=\23325~,
+ kf14=\23326~,
+ kf15=\23328~,
+ kf16=\23329~,
+ kf17=\23331~,
+ kf18=\23332~,
+ kf19=\23333~,
+ kf2=\23312~,
+ kf20=\23334~,
+ kf3=\23313~,
+ kf4=\23314~,
+ kf5=\23315~,
+ kf6=\23317~,
+ kf7=\23318~,
+ kf8=\23319~,
+ kf9=\23320~,
+ khome=\2331~,
+ kich1=\2332~,
+ kmous=\233M,
+ knp=\2336~,
+ kpp=\2335~,
+ mc0=\233i,
+ mc4=\2334i,
+ mc5=\2335i,
+ meml=\El,
+ memu=\Em,
+ op=\23339;49m,
+ rc=\E8,
+ rev=\2337m,
+ ri=\215,
+ rmacs=\E(B,
+ rmam=\233?7l,
+ rmcup=\233?1049l,
+ rmir=\2334l,
+ rmkx=\233?1l\E>,
+ rmso=\23327m,
+ rmul=\23324m,
+ rs1=\Ec,
+ rs2=\E[62"p\E\sG\233m\233?7h\E>
+ \E7\233?1;3;4;6l\2334l\233r
+ \E8,
+ sc=\E7,
+ setab=\2334%p1%dm,
+ setaf=\2333%p1%dm,
+ setb=\2334
+ %?
+ %p1%{1}%=
+ %t4
+ %e
+ %p1%{3}%=
+ %t6
+ %e
+ %p1%{4}%=
+ %t1
+ %e
+ %p1%{6}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ setf=\2333
+ %?
+ %p1%{1}%=
+ %t4
+ %e
+ %p1%{3}%=
+ %t6
+ %e
+ %p1%{4}%=
+ %t1
+ %e
+ %p1%{6}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ sgr=\2330
+ %?
+ %p6
+ %t;1
+ %;
+ %?
+ %p2
+ %t;4
+ %;
+ %?
+ %p1%p3%|
+ %t;7
+ %;
+ %?
+ %p4
+ %t;5
+ %;
+ %?
+ %p7
+ %t;8
+ %;
+ m
+ %?
+ %p9
+ %t\E(0
+ %e
+ \E(B
+ %;,
+ sgr0=\2330m\E(B,
+ smacs=\E(0,
+ smam=\233?7h,
+ smcup=\233?1049h,
+ smir=\2334h,
+ smkx=\233?1h\E=,
+ smso=\2337m,
+ smul=\2334m,
+ tbc=\2333g,
+ u6=\233[%i%d;%dR,
+ u7=\E[6n,
+ u8=\233[?%[;0123456789]c,
+ u9=\E[c,
+ vpa=\233%i%p1%dd,
+ use=xterm+kbs,
+#
+xterm-xf86-v44|xterm terminal emulator (XFree86 4.4 Window System),
+ OTbs,
+ am,
+ bce,
+ km,
+ mc5i,
+ mir,
+ msgr,
+ npc,
+ xenl,
+ AX,
+ XT,
+ colors#8,
+ cols#80,
+ it#8,
+ lines#24,
+ pairs#64,
+ acsc=``aaffggiijjkkllmmnnooppqqr
+ rssttuuvvwwxxyyzz{{||}}~~,
+ 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,
+ 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,
+ 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,
+ ich=\E[%p1%d@,
+ il=\E[%p1%dL,
+ il1=\E[L,
+ ind=\n,
+ indn=\E[%p1%dS,
+ invis=\E[8m,
+ is2=\E[!p\E[?3;4l\E[4l\E>,
+ kDC=\E[3;2~,
+ kEND=\E[1;2F,
+ kHOM=\E[1;2H,
+ kIC=\E[2;2~,
+ kLFT=\E[1;2D,
+ kNXT=\E[6;2~,
+ kPRV=\E[5;2~,
+ kRIT=\E[1;2C,
+ kb2=\EOE,
+ kcbt=\E[Z,
+ kcub1=\EOD,
+ kcud1=\EOB,
+ kcuf1=\EOC,
+ kcuu1=\EOA,
+ kdch1=\E[3~,
+ kend=\EOF,
+ kent=\EOM,
+ kf1=\EOP,
+ kf10=\E[21~,
+ kf11=\E[23~,
+ kf12=\E[24~,
+ kf13=\EO2P,
+ kf14=\EO2Q,
+ kf15=\EO2R,
+ kf16=\EO2S,
+ 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=\EO5P,
+ kf26=\EO5Q,
+ kf27=\EO5R,
+ kf28=\EO5S,
+ 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=\EO6P,
+ kf38=\EO6Q,
+ kf39=\EO6R,
+ kf4=\EOS,
+ kf40=\EO6S,
+ 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~,
+ kf5=\E[15~,
+ kf6=\E[17~,
+ kf7=\E[18~,
+ kf8=\E[19~,
+ kf9=\E[20~,
+ khome=\EOH,
+ kich1=\E[2~,
+ kmous=\E[M,
+ knp=\E[6~,
+ kpp=\E[5~,
+ mc0=\E[i,
+ mc4=\E[4i,
+ mc5=\E[5i,
+ meml=\El,
+ memu=\Em,
+ op=\E[39;49m,
+ rc=\E8,
+ rev=\E[7m,
+ ri=\EM,
+ rin=\E[%p1%dT,
+ rmacs=^O,
+ 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}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ setf=\E[3
+ %?
+ %p1%{1}%=
+ %t4
+ %e
+ %p1%{3}%=
+ %t6
+ %e
+ %p1%{4}%=
+ %t1
+ %e
+ %p1%{6}%=
+ %t3
+ %e
+ %p1%d
+ %;
+ m,
+ sgr=\E[0
+ %?
+ %p6
+ %t;1
+ %;
+ %?
+ %p2
+ %t;4
+ %;
+ %?
+ %p1%p3%|
+ %t;7
+ %;
+ %?
+ %p4
+ %t;5
+ %;
+ %?
+ %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,
+ tbc=\E[3g,
+ u6=\E[%i%d;%dR,
+ u7=\E[6n,
+ u8=\E[?1;2c,
+ u9=\E[c,
+ vpa=\E[%i%p1%dd,
+ ka2=\EOx,
+ kb1=\EOt,
+ kb3=\EOv,
+ kc2=\EOr,
+ use=xterm+alt1049,
+ use=xterm+kbs,
+xterm-xfree86|xterm terminal emulator (XFree86 4.4 Window System),
+ use=xterm-xf86-v44,
+#
+# Compatible with the R6 xterm, with the following changes:
+# + added acsc (perhaps some versions of tic assume the standard vt100
+# alternate character set)
+# + added u6, u7, u8, u9 strings for Daniel Weaver's tack program.
+# + added kmous string for ncurses.
+# + added khome/kend strings (which conflict with kfnd/kslt, see note).
+xterm-r6|xterm X11R6 version,
+ OTbs,
+ am,
+ km,
+ mir,
+ msgr,
+ xenl,
+ cols#80,
+ it#8,
+ lines#24,
+ acsc=``aaffggiijjkkllmmnnooppqqr
+ rssttuuvvwwxxyyzz{{||}}~~,
+ bel=^G,
+ 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,
+ dl=\E[%p1%dM,
+ dl1=\E[M,
+ ed=\E[J,
+ 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~,
+ 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,
+ u6=\E[%i%d;%dR,
+ u7=\E[6n,
+ u8=\E[?1;2c,
+ u9=\E[c,
+ use=xterm+kbs,
+ use=xterm+decedit,
+xterm-old|antique xterm version,
+ use=xterm-r6,
+#
+# Compatible with the R5 xterm, with the following changes:
+# + changed 'blink=@', to 'blink@' (the former meant that "@" would start
+# a blink, the latter that it is not supported).
+# + changed kf1 through kf4 to correspond with actual usage. Though X
+# supports keypad symbols for PF1 to PF4, and xterm interprets these
+# correctly, the F1 to F4 codes are commonly (but incorrectly) used.
+# + moved reset string from rs1 to rs2, to correlate better with termcap.
+# + make khome consistent with other entries.
+# + use rmul/smul, rmir/smir from termcap, but not rmcup/smcup because
+# not everyone wants the alternate screen.
+# + added u6, u7, u8, u9 strings for Daniel Weaver's tack program.
+# + added kmous string for ncurses.
+xterm-r5|xterm R5 version,
+ OTbs,
+ am,
+ km,
+ msgr,
+ xenl,
+ cols#80,
+ it#8,
+ lines#24,
+ bel=^G,
+ 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,
+ 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,
+ 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,
+ u6=\E[%i%d;%dR,
+ u7=\E[6n,
+ u8=\E[?1;2c,
+ u9=\E[c,
+ use=xterm+kbs,
+#
+#
+# Customization begins here.
+#
+# This is the only entry which you should have to customize, since "xterm"
+# is widely used for a variety of incompatible terminal emulations including
+# color_xterm and rxvt.
+xterm|X11 terminal emulator,
+ use=xterm-new,
+# use=xterm-r6,
+
+# This fragment is for people who cannot agree on what the backspace key
+# should send.
+xterm+kbs|fragment for backspace key,
+ kbs=^H,
+# kbs=^?,
diff --git a/source/l/neon/neon.SlackBuild b/source/l/neon/neon.SlackBuild
index 980e51dc5..da5e2fa75 100755
--- a/source/l/neon/neon.SlackBuild
+++ b/source/l/neon/neon.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009, 2011, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2011, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=neon
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -48,7 +57,6 @@ elif [ "$ARCH" = "x86_64" ]; then
LIBDIRSUFFIX="64"
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -57,7 +65,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -79,12 +87,15 @@ CFLAGS="$SLKCFLAGS" \
--enable-shared \
--disable-static \
--with-ssl=openssl \
- $ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Relocate docs:
mv $PKG/usr/share/doc $PKG/usr
rmdir $PKG/usr/share
diff --git a/source/l/neon/neon.url b/source/l/neon/neon.url
new file mode 100644
index 000000000..e250f239e
--- /dev/null
+++ b/source/l/neon/neon.url
@@ -0,0 +1 @@
+https://fossies.org/linux/www/neon-0.30.2.tar.gz
diff --git a/source/l/neon/slack-desc b/source/l/neon/slack-desc
index f0db7a947..61d735a60 100644
--- a/source/l/neon/slack-desc
+++ b/source/l/neon/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ neon: neon (HTTP and WebDAV client library)
neon:
neon: neon is an HTTP and WebDAV client library, with a C language API.
neon: Bindings for other languages may also be available, see the web site
-neon: for more details: http://www.webdav.org/neon/
+neon: for more details: http://www.webdav.org/neon/
neon:
neon: The neon library is used by projects such as subversion.
neon:
diff --git a/source/l/netpbm/netpbm.SlackBuild b/source/l/netpbm/netpbm.SlackBuild
index 2619ef503..962748eca 100755
--- a/source/l/netpbm/netpbm.SlackBuild
+++ b/source/l/netpbm/netpbm.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=netpbm
VERSION=${VERSION:-10.66.02}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-5}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -49,7 +58,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
diff --git a/source/l/netpbm/slack-desc b/source/l/netpbm/slack-desc
index e4265bef0..c72599670 100644
--- a/source/l/netpbm/slack-desc
+++ b/source/l/netpbm/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/newt/newt.SlackBuild b/source/l/newt/newt.SlackBuild
index e70bf710b..4cc104484 100755
--- a/source/l/newt/newt.SlackBuild
+++ b/source/l/newt/newt.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for newt
# Copyright 2014 Robby Workman, Northport, Alabama, USA
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=newt
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -55,6 +64,9 @@ fi
NUMJOBS=${NUMJOBS:-" -j7 "}
+PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
@@ -87,6 +99,12 @@ make install DESTDIR=$PKG || exit 1
# Since this ignores --disable-static:
rm $PKG/usr/lib${LIBDIRSUFFIX}/libnewt.a
+# Generate .pyc files
+python -m compileall "${PKG}$PYTHONLIB"
+python -O -m compileall "${PKG}$PYTHONLIB"
+python3 -m compileall "${PKG}$PYTHON3LIB"
+python3 -O -m compileall "${PKG}$PYTHON3LIB"
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/newt/slack-desc b/source/l/newt/slack-desc
index d14ebdf55..e6bb5c5f9 100644
--- a/source/l/newt/slack-desc
+++ b/source/l/newt/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/notify-python/libnotify07.patch b/source/l/notify-python/libnotify07.patch
deleted file mode 100644
index b7bf44b5e..000000000
--- a/source/l/notify-python/libnotify07.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-http://pkgs.fedoraproject.org/gitweb/?p=notify-python.git;a=blob_plain;f=libnotify07.patch;hb=HEAD
-
-diff -up notify-python-0.1.1/src/pynotify.defs.notify070 notify-python-0.1.1/src/pynotify.defs
---- notify-python-0.1.1/src/pynotify.defs.notify070 2010-11-02 17:11:14.928179237 -0400
-+++ notify-python-0.1.1/src/pynotify.defs 2010-11-02 17:11:51.153180231 -0400
-@@ -38,7 +38,6 @@
- '("const-gchar*" "summary")
- '("const-gchar*" "message" (null-ok) (default "NULL"))
- '("const-gchar*" "icon" (null-ok) (default "NULL"))
-- '("GtkWidget*" "attach" (null-ok) (default "NULL"))
- )
- )
-
-@@ -53,24 +52,6 @@
- )
- )
-
--(define-method attach_to_widget
-- (of-object "NotifyNotification")
-- (c-name "notify_notification_attach_to_widget")
-- (return-type "none")
-- (parameters
-- '("GtkWidget*" "attach")
-- )
--)
--
--(define-method attach_to_status_icon
-- (of-object "NotifyNotification")
-- (c-name "notify_notification_attach_to_status_icon")
-- (return-type "none")
-- (parameters
-- '("GtkStatusIcon*" "attach")
-- )
--)
--
- (define-method show
- (of-object "NotifyNotification")
- (c-name "notify_notification_show")
diff --git a/source/l/notify-python/notify-python-0.1.1-fix-GTK-symbols.patch b/source/l/notify-python/notify-python-0.1.1-fix-GTK-symbols.patch
deleted file mode 100644
index f985c0136..000000000
--- a/source/l/notify-python/notify-python-0.1.1-fix-GTK-symbols.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -up notify-python-0.1.1/src/__init__.py.BAD notify-python-0.1.1/src/__init__.py
---- notify-python-0.1.1/src/__init__.py.BAD 2010-08-31 09:04:45.353844005 -0400
-+++ notify-python-0.1.1/src/__init__.py 2010-08-31 09:04:49.281844300 -0400
-@@ -1 +1,21 @@
-+"""
-+Fedora's libnotify.so is not linked against GTK2 or GTK3. The idea
-+was to support being linked against different parallel-installable
-+GTK stacks.
-+
-+Unfortunately, python needs to jump through some special hoops in order
-+to share symbols with extension modules, specifically, pygtk, which does
-+link against GTK2.
-+
-+Without using sys.setdlopenflags(sys.getdlopenflags() | ctypes.RTLD_GLOBAL),
-+the result is:
-+libnotify-WARNING **: Missing symbol 'gdk_screen_make_display_name'
-+
-+Thanks to David Malcolm for figuring out the workaround.
-+"""
-+import ctypes
-+import sys
-+sys.setdlopenflags(sys.getdlopenflags() | ctypes.RTLD_GLOBAL)
-+import gtk
-+
- from _pynotify import *
diff --git a/source/l/notify-python/notify-python.SlackBuild b/source/l/notify-python/notify-python.SlackBuild
deleted file mode 100755
index 21b76ed94..000000000
--- a/source/l/notify-python/notify-python.SlackBuild
+++ /dev/null
@@ -1,105 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for notify-python
-
-# Copyright 2009 Erik W. Hanson, Minneapolis, MN, USA
-# Copyright 2010, 2015 Patrick J. Volkerding, Sebeka, MN, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PKGNAM=notify-python
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-5}
-
-# Automatically determine the architecture we're building on:
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PKGNAM
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG
-cd $TMP
-rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION || exit 1
-chown -R root:root .
-chmod -R u+w,go+r-w,a-s .
-
-# Fix http://trac.galago-project.org/ticket/121
-rm -f src/pynotify.c
-
-# Fix build with libnotify-0.7 (thanks, Fedora)
-zcat $CWD/libnotify07.patch.gz | patch -p1 --verbose || exit 1
-
-# Fix for hplip-tools:
-zcat $CWD/notify-python-0.1.1-fix-GTK-symbols.patch.gz | patch -p1 --verbose || exit 1
-
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --build=$ARCH-slackware-linux
-
-make || exit 1
-make install-strip DESTDIR=$PKG || exit 1
-
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a \
- AUTHORS COPYING INSTALL NEWS README \
- $PKG/usr/doc/$PKGNAM-$VERSION
-
-# If there's a ChangeLog, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r ChangeLog ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
- cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
- touch -r ChangeLog $DOCSDIR/ChangeLog
-fi
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/notify-python/slack-desc b/source/l/notify-python/slack-desc
deleted file mode 100644
index e7718b42f..000000000
--- a/source/l/notify-python/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-notify-python: notify-python (Python bindings for libnotify)
-notify-python:
-notify-python: The notify-python package contains bindings to use libnotify with
-notify-python: Python programs.
-notify-python:
-notify-python: Homepage for notify-python: http://www.galago-project.org/
-notify-python:
-notify-python:
-notify-python:
-notify-python:
-notify-python:
diff --git a/source/l/ocl-icd/ocl-icd.SlackBuild b/source/l/ocl-icd/ocl-icd.SlackBuild
new file mode 100755
index 000000000..2989e0e43
--- /dev/null
+++ b/source/l/ocl-icd/ocl-icd.SlackBuild
@@ -0,0 +1,128 @@
+#!/bin/bash
+
+# Slackware build script for ocl-icd
+
+# Copyright 2016 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=ocl-icd
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+NUMJOBS=${NUMJOBS:--j7}
+
+# Automatically determine the architecture we're building on:
+MARCH=$( uname -m )
+if [ -z "$ARCH" ]; then
+ case "$MARCH" in
+ i?86) export ARCH=i586 ;;
+ armv7hl) export ARCH=$MARCH ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$MARCH ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-ocl-icd
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf ocl-icd-$VERSION
+tar xvf $CWD/ocl-icd-$VERSION.tar.?z || exit 1
+cd ocl-icd-$VERSION || exit 1
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CPPFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --mandir=/usr/man \
+ --disable-debug \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install-strip DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a COPYING NEWS README \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/ocl-icd/slack-desc b/source/l/ocl-icd/slack-desc
new file mode 100644
index 000000000..c224aa923
--- /dev/null
+++ b/source/l/ocl-icd/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+ocl-icd: ocl-icd (OpenCL ICD bindings)
+ocl-icd:
+ocl-icd: OpenCL implementations are provided as ICD (Installable Client
+ocl-icd: Driver). An OpenCL program can use several ICD thanks to the use of
+ocl-icd: an ICD Loader as provided by this project. This free ICD Loader can
+ocl-icd: load any (free or non free) ICD.
+ocl-icd:
+ocl-icd: Homepage: https://forge.imag.fr/projects/ocl-icd/
+ocl-icd:
+ocl-icd:
+ocl-icd:
diff --git a/source/l/openexr/openexr.CVE-2017-9110-to-9116.patch b/source/l/openexr/openexr.CVE-2017-9110-to-9116.patch
new file mode 100644
index 000000000..98c03a997
--- /dev/null
+++ b/source/l/openexr/openexr.CVE-2017-9110-to-9116.patch
@@ -0,0 +1,82 @@
+--- a/IlmImf/ImfDwaCompressor.cpp
++++ b/IlmImf/ImfDwaCompressor.cpp
+@@ -2377,7 +2377,12 @@ DwaCompressor::uncompress
+
+ const char *dataPtr = inPtr + NUM_SIZES_SINGLE * sizeof(Int64);
+
+- if (inSize < headerSize + compressedSize)
++ /* Both the sum and individual sizes are checked in case of overflow. */
++ if (inSize < (headerSize + compressedSize) ||
++ inSize < unknownCompressedSize ||
++ inSize < acCompressedSize ||
++ inSize < dcCompressedSize ||
++ inSize < rleCompressedSize)
+ {
+ throw Iex::InputExc("Error uncompressing DWA data"
+ "(truncated file).");
+diff --git a/IlmImf/ImfHuf.cpp b/IlmImf/ImfHuf.cpp
+index a375d05..97909a5 100644
+--- a/IlmImf/ImfHuf.cpp
++++ b/IlmImf/ImfHuf.cpp
+@@ -822,7 +822,7 @@ hufEncode // return: output size (in bits)
+ }
+
+
+-#define getCode(po, rlc, c, lc, in, out, oe) \
++#define getCode(po, rlc, c, lc, in, out, ob, oe)\
+ { \
+ if (po == rlc) \
+ { \
+@@ -835,6 +835,8 @@ hufEncode // return: output size (in bits)
+ \
+ if (out + cs > oe) \
+ tooMuchData(); \
++ else if (out - 1 < ob) \
++ notEnoughData(); \
+ \
+ unsigned short s = out[-1]; \
+ \
+@@ -895,7 +897,7 @@ hufDecode
+ //
+
+ lc -= pl.len;
+- getCode (pl.lit, rlc, c, lc, in, out, oe);
++ getCode (pl.lit, rlc, c, lc, in, out, outb, oe);
+ }
+ else
+ {
+@@ -925,7 +927,7 @@ hufDecode
+ //
+
+ lc -= l;
+- getCode (pl.p[j], rlc, c, lc, in, out, oe);
++ getCode (pl.p[j], rlc, c, lc, in, out, outb, oe);
+ break;
+ }
+ }
+@@ -952,7 +954,7 @@ hufDecode
+ if (pl.len)
+ {
+ lc -= pl.len;
+- getCode (pl.lit, rlc, c, lc, in, out, oe);
++ getCode (pl.lit, rlc, c, lc, in, out, outb, oe);
+ }
+ else
+ {
+diff --git a/IlmImf/ImfPizCompressor.cpp b/IlmImf/ImfPizCompressor.cpp
+index 46c6fba..8b3ee38 100644
+--- a/IlmImf/ImfPizCompressor.cpp
++++ b/IlmImf/ImfPizCompressor.cpp
+@@ -573,6 +573,12 @@ PizCompressor::uncompress (const char *inPtr,
+ int length;
+ Xdr::read <CharPtrIO> (inPtr, length);
+
++ if (length > inSize)
++ {
++ throw InputExc ("Error in header for PIZ-compressed data "
++ "(invalid array length).");
++ }
++
+ hufUncompress (inPtr, length, _tmpBuffer, tmpBufferEnd - _tmpBuffer);
+
+ //
diff --git a/source/l/openexr/openexr.SlackBuild b/source/l/openexr/openexr.SlackBuild
index 3be5b97b9..0610c1a6c 100755
--- a/source/l/openexr/openexr.SlackBuild
+++ b/source/l/openexr/openexr.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2013, 2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2008, 2009, 2010, 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2014, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,29 +23,37 @@
# Modified by Robby Workman <rworkman@slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=openexr
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-NUMJOBS=${NUMJOBS:--j6}
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:--j7}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -71,6 +79,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Patch security issues:
+zcat $CWD/openexr.CVE-2017-9110-to-9116.patch.gz | patch -p1 --verbose || exit 1
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -79,11 +90,14 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/openexr/slack-desc b/source/l/openexr/slack-desc
index cf0b46a62..1e830614d 100644
--- a/source/l/openexr/slack-desc
+++ b/source/l/openexr/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
openexr: openexr (HDR Image File Format & Library)
openexr:
openexr: OpenEXR is an image file format and library developed by Industrial
-openexr: Light & Magic, and later released to the public. It provides support
+openexr: Light & Magic, and later released to the public. It provides support
openexr: for high dynamic range and a 16-bit floating point "half" data type
openexr: which is compatible with the half data type in the Cg programming
openexr: language.
diff --git a/source/l/openjpeg/openjpeg.SlackBuild b/source/l/openjpeg/openjpeg.SlackBuild
index 4871bf5bb..d9a23fd18 100755
--- a/source/l/openjpeg/openjpeg.SlackBuild
+++ b/source/l/openjpeg/openjpeg.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for openjpeg
# Copyright 2008-2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=openjpeg
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -33,7 +35,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -41,8 +43,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -58,7 +68,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-openjpeg
@@ -75,6 +84,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+zcat $CWD/openjpeg2_remove-thirdparty.patch.gz | patch -p1 --verbose || exit 1
+
mkdir -p build
cd build
cmake \
@@ -89,7 +100,7 @@ cd build
-DBUILD_MJ2:BOOL=ON \
-DBUILD_JPIP:BOOL=ON \
-DBUILD_JP3D:BOOL=ON \
- ..
+ .. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -109,7 +120,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/openjpeg-$VERSION
-cp -a AUTHORS CHANGES INSTALL LICENSE NEWS README THANKS \
+cp -a AUTHORS* CHANGES* INSTALL* LICENSE* NEWS* README* THANKS* \
$PKG/usr/doc/openjpeg-$VERSION
mkdir -p $PKG/install
diff --git a/source/l/openjpeg/openjpeg2_remove-thirdparty.patch b/source/l/openjpeg/openjpeg2_remove-thirdparty.patch
new file mode 100644
index 000000000..6987fc240
--- /dev/null
+++ b/source/l/openjpeg/openjpeg2_remove-thirdparty.patch
@@ -0,0 +1,11 @@
+diff -rupN openjpeg-2.1.1/CMakeLists.txt openjpeg-2.1.1-new/CMakeLists.txt
+--- openjpeg-2.1.1/CMakeLists.txt 2016-07-05 16:54:17.000000000 +0200
++++ openjpeg-2.1.1-new/CMakeLists.txt 2016-07-06 09:38:26.083029127 +0200
+@@ -270,7 +270,6 @@ if(BUILD_CODEC OR BUILD_MJ2)
+ # OFF: It will only build 3rd party libs if they are not found on the system
+ # ON: 3rd party libs will ALWAYS be build, and used
+ option(BUILD_THIRDPARTY "Build the thirdparty executables if it is needed" OFF)
+- add_subdirectory(thirdparty)
+ add_subdirectory(src/bin)
+ endif ()
+ add_subdirectory(wrapping)
diff --git a/source/l/openjpeg/slack-desc b/source/l/openjpeg/slack-desc
index 7c0b6ef5c..fc734acff 100644
--- a/source/l/openjpeg/slack-desc
+++ b/source/l/openjpeg/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/opus/opus.SlackBuild b/source/l/opus/opus.SlackBuild
new file mode 100755
index 000000000..3e6d41c72
--- /dev/null
+++ b/source/l/opus/opus.SlackBuild
@@ -0,0 +1,152 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=opus
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION | tr '-' '_')-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/${PKGNAM}-$VERSION \
+ --infodir=/usr/info \
+ --disable-static \
+ --enable-custom-modes \
+ --enable-rtcd \
+ --enable-intrinsics \
+ --enable-ambisonics \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* NEWS README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION | tr '-' '_')-$ARCH-$BUILD.txz
+
diff --git a/source/l/opus/slack-desc b/source/l/opus/slack-desc
new file mode 100644
index 000000000..117ff35ad
--- /dev/null
+++ b/source/l/opus/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+opus: opus (efficient, low-latency audio codec)
+opus:
+opus: Opus is a totally open, royalty-free, highly versatile audio codec.
+opus: Opus is unmatched for interactive speech and music transmission over
+opus: the Internet, but is also intended for storage and streaming
+opus: applications. It is standardized by the Internet Engineering Task
+opus: Force (IETF) as RFC 6716 which incorporated technology from Skype's
+opus: SILK codec and Xiph.Org's CELT codec.
+opus:
+opus: Homepage: https://opus-codec.org/
+opus:
diff --git a/source/l/opusfile/opusfile.SlackBuild b/source/l/opusfile/opusfile.SlackBuild
new file mode 100755
index 000000000..fcfa04c4d
--- /dev/null
+++ b/source/l/opusfile/opusfile.SlackBuild
@@ -0,0 +1,148 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=opusfile
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
+BUILD=${BUILD:-4}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION | tr '-' '_')-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/${PKGNAM}-$VERSION \
+ --infodir=/usr/info \
+ --disable-static \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* NEWS README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION | tr '-' '_')-$ARCH-$BUILD.txz
+
diff --git a/source/l/opusfile/slack-desc b/source/l/opusfile/slack-desc
new file mode 100644
index 000000000..7e0de6c2c
--- /dev/null
+++ b/source/l/opusfile/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+opusfile: opusfile (Opus file handling libraries)
+opusfile:
+opusfile: The opusfile and opusurl libraries provide a high-level API for
+opusfile: decoding and seeking within .opus files on disk or over http(s).
+opusfile:
+opusfile: Programming documentation is available in tree and online at:
+opusfile: https://opus-codec.org/docs/
+opusfile:
+opusfile: Homepage: https://opus-codec.org/
+opusfile:
+opusfile:
diff --git a/source/l/orc/orc.SlackBuild b/source/l/orc/orc.SlackBuild
index e424fa6ae..454210083 100755
--- a/source/l/orc/orc.SlackBuild
+++ b/source/l/orc/orc.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2014 Eric Hameleers, Eindhoven, NL
-# Copyright 2014, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,14 +21,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=orc
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -43,6 +43,14 @@ if [ -z "$ARCH" ]; then
export ARCH
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
SLKLDFLAGS=""
@@ -103,6 +111,9 @@ LDFLAGS="$SLKLDFLAGS" \
make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -134,5 +145,5 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
# Create the package:
cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/orc/slack-desc b/source/l/orc/slack-desc
index f76fe21ea..a9ee320fd 100644
--- a/source/l/orc/slack-desc
+++ b/source/l/orc/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -15,5 +15,5 @@ orc: available in SIMD architectures, including saturated addition and
orc: subtraction, and many arithmetic operations.
orc:
orc:
-orc: Homepage: http://code.entropywave.com/projects/orc/
+orc: Homepage: https://gstreamer.freedesktop.org/src/orc/
orc:
diff --git a/source/l/pango/pango.SlackBuild b/source/l/pango/pango.SlackBuild
index 34d4f7eb7..a83f0c77b 100755
--- a/source/l/pango/pango.SlackBuild
+++ b/source/l/pango/pango.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2015, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=pango
VERSION=${VERSION:-$(echo pango-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -34,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -50,7 +60,6 @@ fi
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-pango
@@ -59,8 +68,7 @@ mkdir -p $TMP $PKG/usr
cd $TMP
rm -rf pango-$VERSION
tar xvf $CWD/pango-$VERSION.tar.?z* || exit 1
-
-cd pango-$VERSION
+cd pango-$VERSION || exit 1
chown -R root:root .
find . \
@@ -79,11 +87,14 @@ CFLAGS="$SLKCFLAGS" \
--with-xft \
--build=$ARCH-slackware-linux \
--host=$ARCH-slackware-linux \
- --target=$ARCH-slackware-linux
+ --target=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Do not remove pangox.aliases
#rm -f $PKG/etc/pango/pango.modules
#mkdir -p $PKG/etc/pango/$host
diff --git a/source/l/pango/slack-desc b/source/l/pango/slack-desc
index 31be0ffe7..cda4803d9 100644
--- a/source/l/pango/slack-desc
+++ b/source/l/pango/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/pangomm/pangomm.SlackBuild b/source/l/pangomm/pangomm.SlackBuild
index 4f5829470..9357d1b5d 100755
--- a/source/l/pangomm/pangomm.SlackBuild
+++ b/source/l/pangomm/pangomm.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=pangomm
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -32,9 +34,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -79,6 +88,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/pangomm/slack-desc b/source/l/pangomm/slack-desc
index a6262aebe..a1efc3be9 100644
--- a/source/l/pangomm/slack-desc
+++ b/source/l/pangomm/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,8 @@ pangomm: pangomm (C++ API for Pango)
pangomm:
pangomm: Pangomm is a C++ API for Pango.
pangomm:
-pangomm: Homepage: http://gtkmm.org
+pangomm: Homepage: http://gtkmm.org
+pangomm:
pangomm:
pangomm:
pangomm:
diff --git a/source/l/parted/parted.SlackBuild b/source/l/parted/parted.SlackBuild
index 71d47f395..fb77a67ab 100755
--- a/source/l/parted/parted.SlackBuild
+++ b/source/l/parted/parted.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=parted
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -37,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
zcat $CWD/parted.configure.diff.gz | patch -p1 || exit 1
@@ -82,10 +90,13 @@ CFLAGS="$SLKCFLAGS" \
--enable-static=no \
--enable-device-mapper=yes \
--with-readline \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
# Strip binaries:
( cd $PKG
diff --git a/source/l/parted/parted.SlackBuild.static b/source/l/parted/parted.SlackBuild.static
index d3bf359a4..eca8f1653 100755
--- a/source/l/parted/parted.SlackBuild.static
+++ b/source/l/parted/parted.SlackBuild.static
@@ -23,7 +23,7 @@
PKGNAM=parted
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j7 "}
diff --git a/source/l/parted/slack-desc b/source/l/parted/slack-desc
index 77e79e46f..8f75a1b68 100644
--- a/source/l/parted/slack-desc
+++ b/source/l/parted/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
parted: parted (GNU disk partitioning tool)
parted:
parted: GNU Parted is a program for creating, destroying, resizing, checking
-parted: and copying partitions, and the filesystems on them. This is useful
+parted: and copying partitions, and the filesystems on them. This is useful
parted: for creating space for new operating systems, reorganizing disk
parted: usage, copying data between hard disks, and disk imaging.
parted:
diff --git a/source/l/pcre/pcre.SlackBuild b/source/l/pcre/pcre.SlackBuild
index ef07ce1fa..c2fb659ee 100755
--- a/source/l/pcre/pcre.SlackBuild
+++ b/source/l/pcre/pcre.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pcre
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-pcre
@@ -60,8 +68,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf pcre-$VERSION
-tar xvf $CWD/pcre-$VERSION.tar.?z* || exit 1
-cd pcre-$VERSION
+tar xvf $CWD/pcre-$VERSION.tar.?z || exit 1
+cd pcre-$VERSION || exit 1
chown -R root:root .
@@ -89,6 +97,9 @@ CFLAGS="$SLKCFLAGS" \
CFLAGS="$SLKCFLAGS" make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/libpcre.so.* \
$PKG/usr/lib${LIBDIRSUFFIX}/libpcreposix.so.*
diff --git a/source/l/pcre/slack-desc b/source/l/pcre/slack-desc
index 644734e9e..010ce4875 100644
--- a/source/l/pcre/slack-desc
+++ b/source/l/pcre/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/pcre2/pcre2.SlackBuild b/source/l/pcre2/pcre2.SlackBuild
new file mode 100755
index 000000000..f38ef39fa
--- /dev/null
+++ b/source/l/pcre2/pcre2.SlackBuild
@@ -0,0 +1,139 @@
+#!/bin/bash
+
+# Slackware build script for pcre2
+
+# Copyright 2016-2017 Larry Hajali <larryhaja[at]gmail[dot]com>
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=pcre2
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PKGNAM-$VERSION \
+ --disable-silent-rules \
+ --enable-static=no \
+ --enable-pcre2-16 \
+ --enable-pcre2-32 \
+ --enable-jit \
+ --enable-pcre2grep-libz \
+ --enable-pcre2grep-libbz2 \
+ --enable-pcre2test-libreadline \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* ChangeLog HACKING INSTALL LICENCE* NEWS* NON-AUTOTOOLS-BUILD README* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/pcre2/pcre2.url b/source/l/pcre2/pcre2.url
new file mode 100644
index 000000000..249757b9c
--- /dev/null
+++ b/source/l/pcre2/pcre2.url
@@ -0,0 +1 @@
+ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
diff --git a/source/l/pcre2/slack-desc b/source/l/pcre2/slack-desc
new file mode 100644
index 000000000..afd72b178
--- /dev/null
+++ b/source/l/pcre2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+pcre2: pcre2 (Perl-compatible regular expression library v2)
+pcre2:
+pcre2: PCRE2 is a re-working of the original PCRE library to provide a
+pcre2: new and improved API.
+pcre2:
+pcre2: Homepage: http://www.pcre.org/
+pcre2:
+pcre2:
+pcre2:
+pcre2:
+pcre2:
diff --git a/source/l/phonon-gstreamer/phonon-gstreamer.SlackBuild b/source/l/phonon-gstreamer/phonon-gstreamer.SlackBuild
index c36c22031..6655ad2b8 100755
--- a/source/l/phonon-gstreamer/phonon-gstreamer.SlackBuild
+++ b/source/l/phonon-gstreamer/phonon-gstreamer.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2011, 2012, 2014 Eric Hameleers, Eindhoven, NL
-# Copyright 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -22,11 +22,12 @@
# SUCH DAMAGE.
# -----------------------------------------------------------------------------
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=phonon-gstreamer
SRCNAM=phonon-backend-gstreamer
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d- | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:" -j7 "}
@@ -34,7 +35,7 @@ NUMJOBS=${NUMJOBS:" -j7 "}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -42,8 +43,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,7 +68,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -90,9 +98,9 @@ cd build
-DMAN_INSTALL_DIR=/usr/man \
-DSYSCONF_INSTALL_DIR=/etc \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- ..
- make $NUMJOBS
- make DESTDIR=$PKG install
+ .. || exit 1
+ make $NUMJOBS || exit 1
+ make DESTDIR=$PKG install || exit 1
cd -
# Conditional build of Qt5 support:
@@ -110,9 +118,9 @@ if qtpaths-qt5 --qt-version 1>/dev/null 2>/dev/null ; then
-DSYSCONF_INSTALL_DIR=/etc \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DPHONON_BUILD_PHONON4QT5=ON \
- ..
- make $NUMJOBS
- make DESTDIR=$PKG install
+ .. || exit 1
+ make $NUMJOBS || exit 1
+ make DESTDIR=$PKG install || exit 1
cd -
fi
diff --git a/source/l/phonon-gstreamer/slack-desc b/source/l/phonon-gstreamer/slack-desc
index ee2a434c8..924967e0c 100644
--- a/source/l/phonon-gstreamer/slack-desc
+++ b/source/l/phonon-gstreamer/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/phonon/phonon.SlackBuild b/source/l/phonon/phonon.SlackBuild
index 1ff8f1fab..7d31d9d9f 100755
--- a/source/l/phonon/phonon.SlackBuild
+++ b/source/l/phonon/phonon.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/sh
# Copyright 2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009, 2010, 2011, 2012, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,11 @@
# Modified 2010, 2011, 2012, 2014 Eric Hameleers, Eindhoven, NL
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=phonon
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j7}
@@ -59,7 +60,22 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
+# Configure for ALSA only if PulseAudio is not installed:
+if [ ! -r /usr/lib${LIBDIRSUFFIX}/pkgconfig/libpulse.pc ]; then
+ TAG="_alsa"
+ PULSEAUDIO=OFF
+else
+ PULSEAUDIO=ON
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-phonon
@@ -88,7 +104,7 @@ cd build
-DPHONON_INSTALL_QT_EXTENSIONS_INTO_SYSTEM_QT:BOOL=ON \
-DPHONON_QT_PLUGIN_INSTALL_DIR=/usr/lib$LIBDIRSUFFIX/qt/plugins/designer \
-DWITH_QZeitgeist=BOOL:OFF \
- -DWITH_PulseAudio=BOOL:ON \
+ -DWITH_PulseAudio=BOOL:${PULSEAUDIO} \
..
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -144,5 +160,5 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/phonon-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/phonon-$VERSION-$ARCH-$BUILD$TAG.txz
diff --git a/source/l/phonon/slack-desc b/source/l/phonon/slack-desc
index 12acecb69..97f667a4f 100644
--- a/source/l/phonon/slack-desc
+++ b/source/l/phonon/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,10 +10,10 @@ phonon: phonon (multimedia framework for KDE4)
phonon:
phonon: Phonon is the multimedia API provided by Qt and is the standard
phonon: abstraction for handling multimedia streams within the KDE Software
-phonon: Compilation. Phonon provides an API for multimedia using various
+phonon: Compilation. Phonon provides an API for multimedia using various
phonon: backends (gstreamer, mplayer, xine) to handle the lower level I/O.
phonon:
-phonon: Homepage: http://phonon.kde.org
+phonon: Homepage: http://phonon.kde.org
phonon:
phonon:
phonon:
diff --git a/source/l/pilot-link/pilot-link.SlackBuild b/source/l/pilot-link/pilot-link.SlackBuild
index 41f69b27d..73277c089 100755
--- a/source/l/pilot-link/pilot-link.SlackBuild
+++ b/source/l/pilot-link/pilot-link.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,8 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=pilot-link
VERSION=${VERSION:-0.12.5}
-BUILD=${BUILD:-10}
+BUILD=${BUILD:-13}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -33,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-pilot-link
rm -rf $PKG
@@ -58,7 +68,7 @@ fi
cd $TMP
rm -rf pilot-link-$VERSION
tar xvf $CWD/pilot-link-$VERSION.tar.bz2 || exit 1
-cd pilot-link-$VERSION
+cd pilot-link-$VERSION || exit 1
zcat $CWD/pilot-link.png14.diff.gz | patch -p1 --verbose || exit 1
zcat $CWD/pilot-link-0.12.5-redefinePerlsymbols.patch.gz | patch -p1 --verbose || exit 1
@@ -86,10 +96,13 @@ CFLAGS="$SLKCFLAGS" \
--with-python \
--program-prefix="" \
--program-suffix="" \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
-make -i $NUMJOBS || make -i || exit 1
-make -i install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
# Get rid of perllocal.pod:
( cd $PKG ; find . -name perllocal.pod -exec rm "{}" \; )
diff --git a/source/l/pilot-link/slack-desc b/source/l/pilot-link/slack-desc
index de19fb3f3..fad94e28f 100644
--- a/source/l/pilot-link/slack-desc
+++ b/source/l/pilot-link/slack-desc
@@ -1,14 +1,14 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
pilot-link: pilot-link (library for communicating with PalmOS devices)
pilot-link:
-pilot-link: This is a library for communicating with Palm Computing, Inc. Palm
+pilot-link: This is a library for communicating with Palm Computing, Inc. Palm
pilot-link: Devices as well as the Handspring Visor, TRGPro, and other devices
pilot-link: which conform to this standard (PalmOS licensed devices).
pilot-link:
diff --git a/source/l/polkit-gnome/polkit-gnome.SlackBuild b/source/l/polkit-gnome/polkit-gnome.SlackBuild
index 4f414e271..7fdb5f9dd 100755
--- a/source/l/polkit-gnome/polkit-gnome.SlackBuild
+++ b/source/l/polkit-gnome/polkit-gnome.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for polkit-gnome
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=polkit-gnome
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -36,9 +38,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -61,7 +70,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
-cd $PKGNAM-$VERSION
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -79,10 +88,10 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--mandir=/usr/man \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
# Install the "old" autostart desktop file
mkdir -p $PKG/etc/xdg/autostart
diff --git a/source/l/polkit-gnome/slack-desc b/source/l/polkit-gnome/slack-desc
index a9d545bee..f36d7325e 100644
--- a/source/l/polkit-gnome/slack-desc
+++ b/source/l/polkit-gnome/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
diff --git a/source/l/polkit-qt-1/polkit-qt-1.SlackBuild b/source/l/polkit-qt-1/polkit-qt-1.SlackBuild
index 92e218ea2..067d74915 100755
--- a/source/l/polkit-qt-1/polkit-qt-1.SlackBuild
+++ b/source/l/polkit-qt-1/polkit-qt-1.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2012, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=polkit-qt-1
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -31,7 +32,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -39,8 +40,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,7 +70,6 @@ if [ -d /usr/lib${LIBDIRSUFFIX}/qt ]; then
QTDIR=/usr/lib${LIBDIRSUFFIX}/qt
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -88,7 +96,7 @@ cd build
-DCMAKE_INSTALL_PREFIX=/usr \
-DMAN_INSTALL_DIR=/usr/man \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- ..
+ .. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
cd -
diff --git a/source/l/polkit-qt-1/slack-desc b/source/l/polkit-qt-1/slack-desc
index ed2cf40c1..92ecd543d 100644
--- a/source/l/polkit-qt-1/slack-desc
+++ b/source/l/polkit-qt-1/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
polkit-qt-1: polkit-qt-1 (Qt polkit API wrapper)
polkit-qt-1:
polkit-qt-1: polkit-qt-1 aims to make it easy for Qt developers to take advantage
-polkit-qt-1: of the polkit API. It is a convenience wrapper around QAction and
+polkit-qt-1: of the polkit API. It is a convenience wrapper around QAction and
polkit-qt-1: QAbstractButton that lets you integrate those two components
polkit-qt-1: easily with polkit.
polkit-qt-1:
diff --git a/source/l/polkit/0001-Fix-a-memory-leak-of-PolkitAgentListener-s-Server-ob.patch b/source/l/polkit/0001-Fix-a-memory-leak-of-PolkitAgentListener-s-Server-ob.patch
new file mode 100644
index 000000000..1d319fd69
--- /dev/null
+++ b/source/l/polkit/0001-Fix-a-memory-leak-of-PolkitAgentListener-s-Server-ob.patch
@@ -0,0 +1,27 @@
+From f529fa4ac03f491678c7520d7a2d1c05491feab1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miloslav=20Trma=C4=8D?= <mitr@redhat.com>
+Date: Sat, 12 Mar 2016 03:40:20 +0100
+Subject: [PATCH 01/16] Fix a memory leak of PolkitAgentListener's Server
+ object
+
+https://bugs.freedesktop.org/show_bug.cgi?id=94506
+---
+ src/polkitagent/polkitagentlistener.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/polkitagent/polkitagentlistener.c b/src/polkitagent/polkitagentlistener.c
+index 491e4b9..4704b03 100644
+--- a/src/polkitagent/polkitagentlistener.c
++++ b/src/polkitagent/polkitagentlistener.c
+@@ -129,6 +129,8 @@ server_free (Server *server)
+ g_object_unref (server->subject);
+
+ g_free (server->object_path);
++
++ g_free (server);
+ }
+
+ static gboolean
+--
+2.13.0
+
diff --git a/source/l/polkit/0004-polkit-Add-g_autoptr-support-for-GObject-derived-pol.patch b/source/l/polkit/0004-polkit-Add-g_autoptr-support-for-GObject-derived-pol.patch
new file mode 100644
index 000000000..b3bf1056b
--- /dev/null
+++ b/source/l/polkit/0004-polkit-Add-g_autoptr-support-for-GObject-derived-pol.patch
@@ -0,0 +1,49 @@
+From 004bd37d0b33eb39372bd0e0bed8ab9c1ac2c50c Mon Sep 17 00:00:00 2001
+From: Philip Withnall <philip.withnall@collabora.co.uk>
+Date: Fri, 22 Apr 2016 12:34:18 +0100
+Subject: [PATCH 04/16] polkit: Add g_autoptr() support for GObject-derived
+ polkit types
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Add G_DEFINE_AUTOPTR_CLEANUP_FUNC calls to polkittypes.h, so that
+g_autoptr() can be used with polkit objects.
+
+This is conditional on GLib ≥ 2.44.0 being available. It does not bump
+polkit’s dependency on GLib.
+
+https://bugs.freedesktop.org/show_bug.cgi?id=95065
+---
+ src/polkit/polkittypes.h | 17 +++++++++++++++++
+ 1 file changed, 17 insertions(+)
+
+diff --git a/src/polkit/polkittypes.h b/src/polkit/polkittypes.h
+index 3de1778..e0cf653 100644
+--- a/src/polkit/polkittypes.h
++++ b/src/polkit/polkittypes.h
+@@ -64,4 +64,21 @@ typedef struct _PolkitTemporaryAuthorization PolkitTemporaryAuthorization;
+ struct _PolkitPermission;
+ typedef struct _PolkitPermission PolkitPermission;
+
++#if GLIB_CHECK_VERSION(2, 44, 0)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitAuthority, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitActionDescription, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitSubject, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitUnixProcess, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitUnixSession, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitSystemBusName, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitIdentity, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitUnixUser, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitUnixGroup, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitUnixNetgroup, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitAuthorizationResult, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitDetails, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitTemporaryAuthorization, g_object_unref)
++G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitPermission, g_object_unref)
++#endif
++
+ #endif /* __POLKIT_TYPES_H */
+--
+2.13.0
+
diff --git a/source/l/polkit/0005-data-Set-GIO_USE_VFS-local-in-the-environment.patch b/source/l/polkit/0005-data-Set-GIO_USE_VFS-local-in-the-environment.patch
new file mode 100644
index 000000000..b5d8ae0fe
--- /dev/null
+++ b/source/l/polkit/0005-data-Set-GIO_USE_VFS-local-in-the-environment.patch
@@ -0,0 +1,127 @@
+From daf3d5c2d15466a267221fcb099c59c870098e03 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <philip.withnall@collabora.co.uk>
+Date: Thu, 19 May 2016 10:08:08 +0100
+Subject: [PATCH 05/16] data: Set GIO_USE_VFS=local in the environment
+
+There is no need for polkit to ever use GVFS to load files from
+non-local sources, so it's best to avoid loading GVFS code, and to just
+rely on the local implementation in GIO instead. This reduces the attack
+surface of polkit.
+
+Implemented for the daemon, pkaction, pkcheck, pkexec and pkttyagent,
+because none of them need remote file access.
+
+https://bugs.freedesktop.org/show_bug.cgi?id=95487
+---
+ src/polkitbackend/polkitd.c | 4 ++++
+ src/programs/pkaction.c | 4 ++++
+ src/programs/pkcheck.c | 4 ++++
+ src/programs/pkexec.c | 3 +++
+ src/programs/pkttyagent.c | 4 ++++
+ 5 files changed, 19 insertions(+)
+
+diff --git a/src/polkitbackend/polkitd.c b/src/polkitbackend/polkitd.c
+index d1527fb..8d54ed7 100644
+--- a/src/polkitbackend/polkitd.c
++++ b/src/polkitbackend/polkitd.c
+@@ -22,6 +22,7 @@
+ #include "config.h"
+
+ #include <signal.h>
++#include <stdlib.h>
+
+ #include <glib-unix.h>
+
+@@ -169,6 +170,9 @@ main (int argc,
+ sigint_id = 0;
+ registration_id = NULL;
+
++ /* Disable remote file access from GIO. */
++ setenv ("GIO_USE_VFS", "local", 1);
++
+ g_type_init ();
+
+ opt_context = g_option_context_new ("polkit system daemon");
+diff --git a/src/programs/pkaction.c b/src/programs/pkaction.c
+index f17a7dc..221662a 100644
+--- a/src/programs/pkaction.c
++++ b/src/programs/pkaction.c
+@@ -24,6 +24,7 @@
+ #endif
+
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <glib/gi18n.h>
+ #include <polkit/polkit.h>
+
+@@ -121,6 +122,9 @@ main (int argc, char *argv[])
+ actions = NULL;
+ ret = 1;
+
++ /* Disable remote file access from GIO. */
++ setenv ("GIO_USE_VFS", "local", 1);
++
+ g_type_init ();
+
+ opt_show_version = FALSE;
+diff --git a/src/programs/pkcheck.c b/src/programs/pkcheck.c
+index 5781893..33db128 100644
+--- a/src/programs/pkcheck.c
++++ b/src/programs/pkcheck.c
+@@ -24,6 +24,7 @@
+ #endif
+
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <glib/gi18n.h>
+ #include <polkit/polkit.h>
+ #define POLKIT_AGENT_I_KNOW_API_IS_SUBJECT_TO_CHANGE
+@@ -362,6 +363,9 @@ main (int argc, char *argv[])
+ local_agent_handle = NULL;
+ ret = 126;
+
++ /* Disable remote file access from GIO. */
++ setenv ("GIO_USE_VFS", "local", 1);
++
+ g_type_init ();
+
+ details = polkit_details_new ();
+diff --git a/src/programs/pkexec.c b/src/programs/pkexec.c
+index 50de92c..3b29b24 100644
+--- a/src/programs/pkexec.c
++++ b/src/programs/pkexec.c
+@@ -503,6 +503,9 @@ main (int argc, char *argv[])
+ opt_user = NULL;
+ local_agent_handle = NULL;
+
++ /* Disable remote file access from GIO. */
++ setenv ("GIO_USE_VFS", "local", 1);
++
+ /* check for correct invocation */
+ if (geteuid () != 0)
+ {
+diff --git a/src/programs/pkttyagent.c b/src/programs/pkttyagent.c
+index 423b728..8aac7dd 100644
+--- a/src/programs/pkttyagent.c
++++ b/src/programs/pkttyagent.c
+@@ -24,6 +24,7 @@
+ #endif
+
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <glib/gi18n.h>
+ #include <polkit/polkit.h>
+ #define POLKIT_AGENT_I_KNOW_API_IS_SUBJECT_TO_CHANGE
+@@ -74,6 +75,9 @@ main (int argc, char *argv[])
+ guint ret = 126;
+ GVariantBuilder builder;
+
++ /* Disable remote file access from GIO. */
++ setenv ("GIO_USE_VFS", "local", 1);
++
+ g_type_init ();
+
+ error = NULL;
+--
+2.13.0
+
diff --git a/source/l/polkit/0015-polkitpermission-Fix-a-memory-leak-on-authority-chan.patch b/source/l/polkit/0015-polkitpermission-Fix-a-memory-leak-on-authority-chan.patch
new file mode 100644
index 000000000..24e4bc461
--- /dev/null
+++ b/source/l/polkit/0015-polkitpermission-Fix-a-memory-leak-on-authority-chan.patch
@@ -0,0 +1,28 @@
+From df6488c0a5b2a6c7a2d4f6a55008263635c5571b Mon Sep 17 00:00:00 2001
+From: Rui Matos <tiagomatos@gmail.com>
+Date: Thu, 2 Mar 2017 14:50:31 +0100
+Subject: [PATCH 15/16] polkitpermission: Fix a memory leak on authority
+ changes
+
+Signed-off-by: Rui Matos <tiagomatos@gmail.com>
+
+https://bugs.freedesktop.org/show_bug.cgi?id=99741
+---
+ src/polkit/polkitpermission.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/polkit/polkitpermission.c b/src/polkit/polkitpermission.c
+index f8a666e..f264094 100644
+--- a/src/polkit/polkitpermission.c
++++ b/src/polkit/polkitpermission.c
+@@ -454,6 +454,7 @@ changed_check_cb (GObject *source_object,
+ if (result != NULL)
+ {
+ process_result (permission, result);
++ g_object_unref (result);
+ }
+ else
+ {
+--
+2.13.0
+
diff --git a/source/l/polkit/polkit.SlackBuild b/source/l/polkit/polkit.SlackBuild
index 0d89e18b6..2d0e92457 100755
--- a/source/l/polkit/polkit.SlackBuild
+++ b/source/l/polkit/polkit.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009, 2011, 2015 Robby Workman, Northport, Alabama, USA
# Copyright 2010 Eric Hameleers, Eindhoven, NL
-# Copyright 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2012, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=polkit
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.gz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -37,9 +38,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -74,6 +82,12 @@ find . \
zcat $CWD/dont-set-wheel-group-as-admin.diff.gz | patch -p1 || exit 1
+# Add some patches from git
+zcat $CWD/0001-Fix-a-memory-leak-of-PolkitAgentListener-s-Server-ob.patch | patch -p1 || exit 1
+zcat $CWD/0004-polkit-Add-g_autoptr-support-for-GObject-derived-pol.patch | patch -p1 || exit 1
+zcat $CWD/0005-data-Set-GIO_USE_VFS-local-in-the-environment.patch | patch -p1 || exit 1
+zcat $CWD/0015-polkitpermission-Fix-a-memory-leak-on-authority-chan.patch | patch -p1 || exit 1
+
# If we get here and don't have a polkitd user/group, add one.
# Otherwise a few directories in the package will have wrong permissions.
if ! grep -q "^polkitd:" /etc/passwd ; then
@@ -99,12 +113,15 @@ CXXFLAGS="$SLKCFLAGS" \
--with-authfw=shadow \
--enable-verbose-mode \
--with-os-type=Slackware \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Create homedir for polkit. This is mentioned in /etc/passwd, but isn't
# actually used for anything later. Perms don't matter.
mkdir -p $PKG/var/lib/polkit
diff --git a/source/l/polkit/slack-desc b/source/l/polkit/slack-desc
index 006d8a8e5..ebb01658d 100644
--- a/source/l/polkit/slack-desc
+++ b/source/l/polkit/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
@@ -10,7 +10,7 @@ polkit: polkit (authentication framework)
polkit:
polkit: PolicyKit is an application-level toolkit for defining and handling
polkit: the policy that allows unprivileged processes to speak to privileged
-polkit: processes. PolicyKit is specifically targeting applications in rich
+polkit: processes. PolicyKit is specifically targeting applications in rich
polkit: desktop environments on multi-user UNIX-like operating systems.
polkit:
polkit:
diff --git a/source/l/poppler-data/poppler-data.SlackBuild b/source/l/poppler-data/poppler-data.SlackBuild
index c9937e7f0..886ff1a2d 100755
--- a/source/l/poppler-data/poppler-data.SlackBuild
+++ b/source/l/poppler-data/poppler-data.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,13 +20,21 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=poppler-data
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
ARCH=noarch
BUILD=${BUILD:-1}
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
@@ -34,8 +42,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1
+cd ${PKGNAM}-$VERSION || exit 1
chown -R root:root .
find . \
@@ -45,7 +53,7 @@ find . \
-exec chmod 644 {} \;
# install:
-make install datadir=/usr/share DESTDIR=$PKG
+make install datadir=/usr/share DESTDIR=$PKG || exit 1
# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
diff --git a/source/l/poppler-data/slack-desc b/source/l/poppler-data/slack-desc
index b54e6ed19..eba010b4d 100644
--- a/source/l/poppler-data/slack-desc
+++ b/source/l/poppler-data/slack-desc
@@ -1,17 +1,17 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
poppler-data: poppler-data (data files used by poppler)
poppler-data:
-poppler-data: This package consists of encoding files for use with poppler. The
+poppler-data: This package consists of encoding files for use with poppler. The
poppler-data: encoding files are optional and poppler will automatically read them
-poppler-data: if they are present. When installed, the encoding files enables
-poppler-data: poppler to correctly render CJK and Cyrillic properly. While poppler
+poppler-data: if they are present. When installed, the encoding files enables
+poppler-data: poppler to correctly render CJK and Cyrillic properly. While poppler
poppler-data: is licensed under the GPL, these encoding files are copyright Adobe
poppler-data: and licensed much more strictly, and thus distributed separately.
poppler-data:
diff --git a/source/l/poppler/poppler.SlackBuild b/source/l/poppler/poppler.SlackBuild
index 7fbf53f5d..1a7481565 100755
--- a/source/l/poppler/poppler.SlackBuild
+++ b/source/l/poppler/poppler.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,6 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=poppler
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
@@ -35,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
rm -rf $PKG
@@ -69,22 +77,38 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --enable-xpdf-headers \
- --enable-poppler-qt4 \
- --enable-cairo-output \
- --mandir=/usr/man \
- --disable-static \
- --enable-zlib \
- --build=$ARCH-slackware-linux
+# At least for now, we will revert this patch since we have
+# things that depend on it:
+xzcat $CWD/poppler.remove.qt4.frontend.diff.xz | patch -p1 -R --verbose || exit 1
+
+# Revert a change to SplashPath.h (in 0.63.0) that breaks compiling the qt4 frontend:
+zcat $CWD/poppler.splashpath.h.revert.diff.gz | patch -p1 --verbose || exit 1
+
+mkdir build
+cd build
+
+CXXFLAGS="$SLKCFLAGS -std=c++11 -fpermissive" \
+cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DBUILD_SHARED_LIBS=ON \
+ -DENABLE_QT4=ON \
+ -DENABLE_QT5=OFF \
+ -DENABLE_XPDF_HEADERS=ON \
+ -DENABLE_CMS=lcms2 \
+ -DENABLE_DCTDECODER=libjpeg \
+ -DENABLE_GTK_DOC=ON \
+ -DENABLE_LIBOPENJPEG=openjpeg2 \
+ -DENABLE_XPDF_HEADERS=ON \
+ -DENABLE_ZLIB=ON \
+ .. || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Back to source tarball root directory:
+cd ..
+
# Remove files that overlap with the xpdf package:
rm -f $PKG/usr/bin/pdfdetach $PKG/usr/man/man1/pdfdetach.1
@@ -107,7 +131,7 @@ if [ -d $PKG/usr/man ]; then
fi
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
-cp -a AUTHORS COPYING* INSTALL NEWS README README-XPDF TODO \
+cp -a AUTHORS COPYING* INSTALL NEWS README* TODO \
$PKG/usr/doc/${PKGNAM}-$VERSION
( cd $PKG/usr/doc/${PKGNAM}-$VERSION
ln -s /usr/share/gtk-doc/html/poppler html )
diff --git a/source/l/poppler/poppler.remove.qt4.frontend.diff b/source/l/poppler/poppler.remove.qt4.frontend.diff
new file mode 100644
index 000000000..2b58eb56f
--- /dev/null
+++ b/source/l/poppler/poppler.remove.qt4.frontend.diff
@@ -0,0 +1,26533 @@
+From fb4c69d270a618bb23791e52f46ec73c86574294 Mon Sep 17 00:00:00 2001
+From: Albert Astals Cid <aacid@kde.org>
+Date: Fri, 1 Dec 2017 23:44:17 +0100
+Subject: [PATCH] Remove the Qt4 frontend
+
+---
+ .gitignore | 2 -
+ CMakeLists.txt | 17 -
+ cmake/modules/FindQt4.cmake | 1311 -------
+ poppler-qt4.pc.cmake | 12 -
+ qt4/.gitignore | 4 -
+ qt4/CMakeLists.txt | 6 -
+ qt4/demos/.gitignore | 4 -
+ qt4/demos/CMakeLists.txt | 28 -
+ qt4/demos/abstractinfodock.cpp | 57 -
+ qt4/demos/abstractinfodock.h | 48 -
+ qt4/demos/documentobserver.cpp | 50 -
+ qt4/demos/documentobserver.h | 50 -
+ qt4/demos/embeddedfiles.cpp | 82 -
+ qt4/demos/embeddedfiles.h | 44 -
+ qt4/demos/fonts.cpp | 72 -
+ qt4/demos/fonts.h | 43 -
+ qt4/demos/info.cpp | 72 -
+ qt4/demos/info.h | 43 -
+ qt4/demos/main_viewer.cpp | 33 -
+ qt4/demos/metadata.cpp | 50 -
+ qt4/demos/metadata.h | 43 -
+ qt4/demos/navigationtoolbar.cpp | 144 -
+ qt4/demos/navigationtoolbar.h | 65 -
+ qt4/demos/optcontent.cpp | 69 -
+ qt4/demos/optcontent.h | 47 -
+ qt4/demos/pageview.cpp | 101 -
+ qt4/demos/pageview.h | 53 -
+ qt4/demos/permissions.cpp | 66 -
+ qt4/demos/permissions.h | 43 -
+ qt4/demos/thumbnails.cpp | 84 -
+ qt4/demos/thumbnails.h | 48 -
+ qt4/demos/toc.cpp | 88 -
+ qt4/demos/toc.h | 43 -
+ qt4/demos/viewer.cpp | 319 --
+ qt4/demos/viewer.h | 73 -
+ qt4/src/.gitignore | 9 -
+ qt4/src/ArthurOutputDev.cc | 812 ----
+ qt4/src/ArthurOutputDev.h | 170 -
+ qt4/src/CMakeLists.txt | 54 -
+ qt4/src/Doxyfile | 1637 ---------
+ qt4/src/Mainpage.dox | 85 -
+ qt4/src/poppler-annotation-helper.h | 181 -
+ qt4/src/poppler-annotation-private.h | 112 -
+ qt4/src/poppler-annotation.cc | 5089 --------------------------
+ qt4/src/poppler-annotation.h | 1375 -------
+ qt4/src/poppler-base-converter.cc | 105 -
+ qt4/src/poppler-converter-private.h | 49 -
+ qt4/src/poppler-document.cc | 850 -----
+ qt4/src/poppler-embeddedfile-private.h | 42 -
+ qt4/src/poppler-embeddedfile.cc | 135 -
+ qt4/src/poppler-export.h | 20 -
+ qt4/src/poppler-fontinfo.cc | 150 -
+ qt4/src/poppler-form.cc | 416 ---
+ qt4/src/poppler-form.h | 343 --
+ qt4/src/poppler-link-extractor-private.h | 57 -
+ qt4/src/poppler-link-extractor.cc | 84 -
+ qt4/src/poppler-link-private.h | 57 -
+ qt4/src/poppler-link.cc | 710 ----
+ qt4/src/poppler-link.h | 641 ----
+ qt4/src/poppler-media.cc | 168 -
+ qt4/src/poppler-media.h | 100 -
+ qt4/src/poppler-movie.cc | 110 -
+ qt4/src/poppler-optcontent-private.h | 124 -
+ qt4/src/poppler-optcontent.cc | 456 ---
+ qt4/src/poppler-optcontent.h | 84 -
+ qt4/src/poppler-page-private.h | 57 -
+ qt4/src/poppler-page-transition-private.h | 28 -
+ qt4/src/poppler-page-transition.cc | 101 -
+ qt4/src/poppler-page-transition.h | 158 -
+ qt4/src/poppler-page.cc | 810 ----
+ qt4/src/poppler-pdf-converter.cc | 115 -
+ qt4/src/poppler-private.cc | 296 --
+ qt4/src/poppler-private.h | 241 --
+ qt4/src/poppler-ps-converter.cc | 280 --
+ qt4/src/poppler-qiodeviceoutstream-private.h | 47 -
+ qt4/src/poppler-qiodeviceoutstream.cc | 64 -
+ qt4/src/poppler-qt4.h | 1990 ----------
+ qt4/src/poppler-sound.cc | 132 -
+ qt4/src/poppler-textbox.cc | 63 -
+ qt4/tests/.gitignore | 33 -
+ qt4/tests/CMakeLists.txt | 67 -
+ qt4/tests/README.unittest | 23 -
+ qt4/tests/check_actualtext.cpp | 33 -
+ qt4/tests/check_attachments.cpp | 157 -
+ qt4/tests/check_dateConversion.cpp | 142 -
+ qt4/tests/check_fonts.cpp | 248 --
+ qt4/tests/check_goostring.cpp | 127 -
+ qt4/tests/check_lexer.cpp | 107 -
+ qt4/tests/check_links.cpp | 98 -
+ qt4/tests/check_metadata.cpp | 275 --
+ qt4/tests/check_optcontent.cpp | 446 ---
+ qt4/tests/check_pagelabelinfo.cpp | 43 -
+ qt4/tests/check_pagelayout.cpp | 49 -
+ qt4/tests/check_pagemode.cpp | 73 -
+ qt4/tests/check_password.cpp | 88 -
+ qt4/tests/check_permissions.cpp | 44 -
+ qt4/tests/check_search.cpp | 175 -
+ qt4/tests/check_strings.cpp | 250 --
+ qt4/tests/poppler-attachments.cpp | 39 -
+ qt4/tests/poppler-fonts.cpp | 89 -
+ qt4/tests/poppler-forms.cpp | 166 -
+ qt4/tests/poppler-texts.cpp | 40 -
+ qt4/tests/stress-poppler-dir.cpp | 67 -
+ qt4/tests/stress-poppler-qt4.cpp | 74 -
+ qt4/tests/stress-threads-qt4.cpp | 309 --
+ qt4/tests/test-password-qt4.cpp | 136 -
+ qt4/tests/test-poppler-qt4.cpp | 235 --
+ qt4/tests/test-render-to-file.cpp | 69 -
+ 108 files changed, 25623 deletions(-)
+ delete mode 100644 cmake/modules/FindQt4.cmake
+ delete mode 100644 poppler-qt4.pc.cmake
+ delete mode 100644 qt4/.gitignore
+ delete mode 100644 qt4/CMakeLists.txt
+ delete mode 100644 qt4/demos/.gitignore
+ delete mode 100644 qt4/demos/CMakeLists.txt
+ delete mode 100644 qt4/demos/abstractinfodock.cpp
+ delete mode 100644 qt4/demos/abstractinfodock.h
+ delete mode 100644 qt4/demos/documentobserver.cpp
+ delete mode 100644 qt4/demos/documentobserver.h
+ delete mode 100644 qt4/demos/embeddedfiles.cpp
+ delete mode 100644 qt4/demos/embeddedfiles.h
+ delete mode 100644 qt4/demos/fonts.cpp
+ delete mode 100644 qt4/demos/fonts.h
+ delete mode 100644 qt4/demos/info.cpp
+ delete mode 100644 qt4/demos/info.h
+ delete mode 100644 qt4/demos/main_viewer.cpp
+ delete mode 100644 qt4/demos/metadata.cpp
+ delete mode 100644 qt4/demos/metadata.h
+ delete mode 100644 qt4/demos/navigationtoolbar.cpp
+ delete mode 100644 qt4/demos/navigationtoolbar.h
+ delete mode 100644 qt4/demos/optcontent.cpp
+ delete mode 100644 qt4/demos/optcontent.h
+ delete mode 100644 qt4/demos/pageview.cpp
+ delete mode 100644 qt4/demos/pageview.h
+ delete mode 100644 qt4/demos/permissions.cpp
+ delete mode 100644 qt4/demos/permissions.h
+ delete mode 100644 qt4/demos/thumbnails.cpp
+ delete mode 100644 qt4/demos/thumbnails.h
+ delete mode 100644 qt4/demos/toc.cpp
+ delete mode 100644 qt4/demos/toc.h
+ delete mode 100644 qt4/demos/viewer.cpp
+ delete mode 100644 qt4/demos/viewer.h
+ delete mode 100644 qt4/src/.gitignore
+ delete mode 100644 qt4/src/ArthurOutputDev.cc
+ delete mode 100644 qt4/src/ArthurOutputDev.h
+ delete mode 100644 qt4/src/CMakeLists.txt
+ delete mode 100644 qt4/src/Doxyfile
+ delete mode 100644 qt4/src/Mainpage.dox
+ delete mode 100644 qt4/src/poppler-annotation-helper.h
+ delete mode 100644 qt4/src/poppler-annotation-private.h
+ delete mode 100644 qt4/src/poppler-annotation.cc
+ delete mode 100644 qt4/src/poppler-annotation.h
+ delete mode 100644 qt4/src/poppler-base-converter.cc
+ delete mode 100644 qt4/src/poppler-converter-private.h
+ delete mode 100644 qt4/src/poppler-document.cc
+ delete mode 100644 qt4/src/poppler-embeddedfile-private.h
+ delete mode 100644 qt4/src/poppler-embeddedfile.cc
+ delete mode 100644 qt4/src/poppler-export.h
+ delete mode 100644 qt4/src/poppler-fontinfo.cc
+ delete mode 100644 qt4/src/poppler-form.cc
+ delete mode 100644 qt4/src/poppler-form.h
+ delete mode 100644 qt4/src/poppler-link-extractor-private.h
+ delete mode 100644 qt4/src/poppler-link-extractor.cc
+ delete mode 100644 qt4/src/poppler-link-private.h
+ delete mode 100644 qt4/src/poppler-link.cc
+ delete mode 100644 qt4/src/poppler-link.h
+ delete mode 100644 qt4/src/poppler-media.cc
+ delete mode 100644 qt4/src/poppler-media.h
+ delete mode 100644 qt4/src/poppler-movie.cc
+ delete mode 100644 qt4/src/poppler-optcontent-private.h
+ delete mode 100644 qt4/src/poppler-optcontent.cc
+ delete mode 100644 qt4/src/poppler-optcontent.h
+ delete mode 100644 qt4/src/poppler-page-private.h
+ delete mode 100644 qt4/src/poppler-page-transition-private.h
+ delete mode 100644 qt4/src/poppler-page-transition.cc
+ delete mode 100644 qt4/src/poppler-page-transition.h
+ delete mode 100644 qt4/src/poppler-page.cc
+ delete mode 100644 qt4/src/poppler-pdf-converter.cc
+ delete mode 100644 qt4/src/poppler-private.cc
+ delete mode 100644 qt4/src/poppler-private.h
+ delete mode 100644 qt4/src/poppler-ps-converter.cc
+ delete mode 100644 qt4/src/poppler-qiodeviceoutstream-private.h
+ delete mode 100644 qt4/src/poppler-qiodeviceoutstream.cc
+ delete mode 100644 qt4/src/poppler-qt4.h
+ delete mode 100644 qt4/src/poppler-sound.cc
+ delete mode 100644 qt4/src/poppler-textbox.cc
+ delete mode 100644 qt4/tests/.gitignore
+ delete mode 100644 qt4/tests/CMakeLists.txt
+ delete mode 100644 qt4/tests/README.unittest
+ delete mode 100644 qt4/tests/check_actualtext.cpp
+ delete mode 100644 qt4/tests/check_attachments.cpp
+ delete mode 100644 qt4/tests/check_dateConversion.cpp
+ delete mode 100644 qt4/tests/check_fonts.cpp
+ delete mode 100644 qt4/tests/check_goostring.cpp
+ delete mode 100644 qt4/tests/check_lexer.cpp
+ delete mode 100644 qt4/tests/check_links.cpp
+ delete mode 100644 qt4/tests/check_metadata.cpp
+ delete mode 100644 qt4/tests/check_optcontent.cpp
+ delete mode 100644 qt4/tests/check_pagelabelinfo.cpp
+ delete mode 100644 qt4/tests/check_pagelayout.cpp
+ delete mode 100644 qt4/tests/check_pagemode.cpp
+ delete mode 100644 qt4/tests/check_password.cpp
+ delete mode 100644 qt4/tests/check_permissions.cpp
+ delete mode 100644 qt4/tests/check_search.cpp
+ delete mode 100644 qt4/tests/check_strings.cpp
+ delete mode 100644 qt4/tests/poppler-attachments.cpp
+ delete mode 100644 qt4/tests/poppler-fonts.cpp
+ delete mode 100644 qt4/tests/poppler-forms.cpp
+ delete mode 100644 qt4/tests/poppler-texts.cpp
+ delete mode 100644 qt4/tests/stress-poppler-dir.cpp
+ delete mode 100644 qt4/tests/stress-poppler-qt4.cpp
+ delete mode 100644 qt4/tests/stress-threads-qt4.cpp
+ delete mode 100644 qt4/tests/test-password-qt4.cpp
+ delete mode 100644 qt4/tests/test-poppler-qt4.cpp
+ delete mode 100644 qt4/tests/test-render-to-file.cpp
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 0d753efe..2ed1398a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -40,7 +40,6 @@ set (CMAKE_CXX_EXTENSIONS OFF)
+ # command line switches
+ option(ENABLE_XPDF_HEADERS "Install unsupported xpdf headers." OFF)
+ option(BUILD_GTK_TESTS "Whether compile the GTK+ test programs." ON)
+-option(BUILD_QT4_TESTS "Whether compile the Qt4 test programs." ON)
+ option(BUILD_QT5_TESTS "Whether compile the Qt5 test programs." ON)
+ option(BUILD_CPP_TESTS "Whether compile the CPP test programs." ON)
+ option(ENABLE_SPLASH "Build the Splash graphics backend." ON)
+@@ -48,7 +47,6 @@ option(ENABLE_UTILS "Compile poppler command line utils." ON)
+ option(ENABLE_CPP "Compile poppler cpp wrapper." ON)
+ option(ENABLE_GLIB "Compile poppler glib wrapper." ON)
+ option(ENABLE_GTK_DOC "Whether to generate glib API documentation." OFF)
+-option(ENABLE_QT4 "Compile poppler qt4 wrapper." ON)
+ option(ENABLE_QT5 "Compile poppler qt5 wrapper." ON)
+ set(ENABLE_LIBOPENJPEG "openjpeg2" CACHE STRING "Use libopenjpeg for JPX streams. Possible values: openjpeg2, unmaintained, none. 'unmaintained' gives you the internal unmaintained decoder. Use at your own risk. 'none' compiles no JPX decoder at all. Default: openjpeg2")
+ set(ENABLE_CMS "lcms2" CACHE STRING "Use color management system. Possible values: lcms2, none. 'none' disables color management system.")
+@@ -114,7 +112,6 @@ set(OPI_SUPPORT ON)
+ set(TEXTOUT_WORD_LIST ON)
+
+ # setting the minimum required versions for some components
+-set(QT4_MIN_VERSION "4.7.0")
+ set(CAIRO_VERSION "1.10.0")
+ set(GLIB_REQUIRED "2.41")
+
+@@ -144,13 +141,6 @@ else()
+ message(FATAL_ERROR "Invalid ENABLE_DCTDECODER value.")
+ endif()
+
+-if (ENABLE_QT4)
+- macro_optional_find_package(Qt4)
+- if (NOT QT4_FOUND)
+- set(ENABLE_QT4 OFF)
+- endif()
+-endif()
+-
+ if (ENABLE_QT5)
+ find_package(Qt5Core)
+ find_package(Qt5Gui)
+@@ -670,9 +660,6 @@ if(ENABLE_GLIB)
+ add_subdirectory(glib)
+ endif()
+ add_subdirectory(test)
+-if(ENABLE_QT4)
+- add_subdirectory(qt4)
+-endif()
+ if(ENABLE_QT5)
+ add_subdirectory(qt5)
+ endif()
+@@ -697,9 +684,6 @@ poppler_create_install_pkgconfig(poppler.pc ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+ if(ENABLE_SPLASH)
+ poppler_create_install_pkgconfig(poppler-splash.pc ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+ endif()
+-if(ENABLE_QT4)
+- poppler_create_install_pkgconfig(poppler-qt4.pc ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+-endif()
+ if(ENABLE_QT5)
+ poppler_create_install_pkgconfig(poppler-qt5.pc ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+ endif()
+@@ -721,7 +705,6 @@ if(SPLASH_CMYK)
+ message(" with CMYK support")
+ endif()
+ show_end_message_yesno("cairo output" CAIRO_FOUND)
+-show_end_message_yesno("qt4 wrapper" ENABLE_QT4)
+ show_end_message_yesno("qt5 wrapper" ENABLE_QT5)
+ show_end_message_yesno("glib wrapper" ENABLE_GLIB)
+ show_end_message_yesno(" introspection" INTROSPECTION_FOUND)
+diff --git a/cmake/modules/FindQt4.cmake b/cmake/modules/FindQt4.cmake
+deleted file mode 100644
+index 79378b0c..00000000
+--- a/cmake/modules/FindQt4.cmake
++++ /dev/null
+@@ -1,1311 +0,0 @@
+-# - Find QT 4
+-# This module can be used to find Qt4.
+-# The most important issue is that the Qt4 qmake is available via the system path.
+-# This qmake is then used to detect basically everything else.
+-# This module defines a number of key variables and macros. First is
+-# QT_USE_FILE which is the path to a CMake file that can be included to compile
+-# Qt 4 applications and libraries. By default, the QtCore and QtGui
+-# libraries are loaded. This behavior can be changed by setting one or more
+-# of the following variables to true:
+-# QT_DONT_USE_QTCORE
+-# QT_DONT_USE_QTGUI
+-# QT_USE_QT3SUPPORT
+-# QT_USE_QTASSISTANT
+-# QT_USE_QTDESIGNER
+-# QT_USE_QTMOTIF
+-# QT_USE_QTMAIN
+-# QT_USE_QTNETWORK
+-# QT_USE_QTNSPLUGIN
+-# QT_USE_QTOPENGL
+-# QT_USE_QTSQL
+-# QT_USE_QTXML
+-# QT_USE_QTSVG
+-# QT_USE_QTTEST
+-# QT_USE_QTUITOOLS
+-# QT_USE_QTDBUS
+-# QT_USE_QTSCRIPT
+-#
+-# All the libraries required are stored in a variable called QT_LIBRARIES.
+-# Add this variable to your TARGET_LINK_LIBRARIES.
+-#
+-# macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...)
+-# create moc code from a list of files containing Qt class with
+-# the Q_OBJECT declaration. Options may be given to moc, such as those found
+-# when executing "moc -help"
+-#
+-# macro QT4_WRAP_UI(outfiles inputfile ... OPTIONS ...)
+-# create code from a list of Qt designer ui files.
+-# Options may be given to uic, such as those found
+-# when executing "uic -help"
+-#
+-# macro QT4_ADD_RESOURCES(outfiles inputfile ... OPTIONS ...)
+-# create code from a list of Qt resource files.
+-# Options may be given to rcc, such as those found
+-# when executing "rcc -help"
+-#
+-# macro QT4_AUTOMOC(inputfile ... )
+-# macro QT4_GENERATE_MOC(inputfile outputfile )
+-#
+-# macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename)
+-# create a the interface header and implementation files with the
+-# given basename from the given interface xml file and add it to
+-# the list of sources.
+-# To disable generating a namespace header, set the source file property
+-# NO_NAMESPACE to TRUE on the interface file.
+-#
+-# macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... )
+-# create the interface header and implementation files
+-# for all listed interface xml files
+-# the name will be automatically determined from the name of the xml file
+-# To disable generating namespace headers, set the source file property
+-# NO_NAMESPACE to TRUE for these inputfiles.
+-#
+-# macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] [classname])
+-# create a dbus adaptor (header and implementation file) from the xml file
+-# describing the interface, and add it to the list of sources. The adaptor
+-# forwards the calls to a parent class, defined in parentheader and named
+-# parentclassname. The name of the generated files will be
+-# <basename>adaptor.{cpp,h} where basename defaults to the basename of the xml file.
+-# If <classname> is provided, then it will be used as the classname of the
+-# adaptor itself.
+-#
+-# macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] OPTIONS ...)
+-# generate the xml interface file from the given header.
+-# If the optional argument interfacename is omitted, the name of the
+-# interface file is constructed from the basename of the header with
+-# the suffix .xml appended.
+-# Options may be given to uic, such as those found when executing "qdbuscpp2xml --help"
+-#
+-# QT_FOUND If false, don't try to use Qt.
+-# QT4_FOUND If false, don't try to use Qt 4.
+-#
+-# QT4_QTCORE_FOUND True if QtCore was found.
+-# QT4_QTGUI_FOUND True if QtGui was found.
+-# QT4_QT3SUPPORT_FOUND True if Qt3Support was found.
+-# QT4_QTASSISTANT_FOUND True if QtAssistant was found.
+-# QT4_QTDBUS_FOUND True if QtDBus was found.
+-# QT4_QTDESIGNER_FOUND True if QtDesigner was found.
+-# QT4_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found.
+-# QT4_QTMOTIF_FOUND True if QtMotif was found.
+-# QT4_QTNETWORK_FOUND True if QtNetwork was found.
+-# QT4_QTNSPLUGIN_FOUND True if QtNsPlugin was found.
+-# QT4_QTOPENGL_FOUND True if QtOpenGL was found.
+-# QT4_QTSQL_FOUND True if QtSql was found.
+-# QT4_QTXML_FOUND True if QtXml was found.
+-# QT4_QTSVG_FOUND True if QtSvg was found.
+-# QT4_QTSCRIPT_FOUND True if QtScript was found.
+-# QT4_QTTEST_FOUND True if QtTest was found.
+-# QT4_QTUITOOLS_FOUND True if QtUiTools was found.
+-#
+-# QT4_DEFINITIONS Definitions to use when compiling code that uses Qt.
+-#
+-# QT4_INCLUDES List of paths to all include directories of
+-# Qt4 QT4_INCLUDE_DIR and QT4_QTCORE_INCLUDE_DIR are
+-# always in this variable even if NOTFOUND,
+-# all other INCLUDE_DIRS are
+-# only added if they are found.
+-#
+-# QT4_INCLUDE_DIR Path to "include" of Qt4
+-# QT4_QT4_INCLUDE_DIR Path to "include/Qt"
+-# QT4_QT3SUPPORT_INCLUDE_DIR Path to "include/Qt3Support"
+-# QT4_QTASSISTANT_INCLUDE_DIR Path to "include/QtAssistant"
+-# QT4_QTCORE_INCLUDE_DIR Path to "include/QtCore"
+-# QT4_QTDESIGNER_INCLUDE_DIR Path to "include/QtDesigner"
+-# QT4_QTDESIGNERCOMPONENTS_INCLUDE_DIR Path to "include/QtDesigner"
+-# QT4_QTDBUS_INCLUDE_DIR Path to "include/QtDBus"
+-# QT4_QTGUI_INCLUDE_DIR Path to "include/QtGui"
+-# QT4_QTMOTIF_INCLUDE_DIR Path to "include/QtMotif"
+-# QT4_QTNETWORK_INCLUDE_DIR Path to "include/QtNetwork"
+-# QT4_QTNSPLUGIN_INCLUDE_DIR Path to "include/QtNsPlugin"
+-# QT4_QTOPENGL_INCLUDE_DIR Path to "include/QtOpenGL"
+-# QT4_QTSQL_INCLUDE_DIR Path to "include/QtSql"
+-# QT4_QTXML_INCLUDE_DIR Path to "include/QtXml"
+-# QT4_QTSVG_INCLUDE_DIR Path to "include/QtSvg"
+-# QT4_QTSCRIPT_INCLUDE_DIR Path to "include/QtScript"
+-# QT4_QTTEST_INCLUDE_DIR Path to "include/QtTest"
+-#
+-# QT4_LIBRARY_DIR Path to "lib" of Qt4
+-#
+-# QT4_PLUGINS_DIR Path to "plugins" for Qt4
+-#
+-# For every library of Qt, a QT4_QTFOO_LIBRARY variable is defined, with the full path to the library.
+-#
+-# So there are the following variables:
+-# The Qt3Support library: QT4_QT3SUPPORT_LIBRARY
+-#
+-# The QtAssistant library: QT4_QTASSISTANT_LIBRARY
+-#
+-# The QtCore library: QT4_QTCORE_LIBRARY
+-#
+-# The QtDBus library: QT4_QTDBUS_LIBRARY
+-#
+-# The QtDesigner library: QT4_QTDESIGNER_LIBRARY
+-#
+-# The QtDesignerComponents library: QT4_QTDESIGNERCOMPONENTS_LIBRARY
+-#
+-# The QtGui library: QT4_QTGUI_LIBRARY
+-#
+-# The QtMotif library: QT4_QTMOTIF_LIBRARY
+-#
+-# The QtNetwork library: QT4_QTNETWORK_LIBRARY
+-#
+-# The QtNsPLugin library: QT4_QTNSPLUGIN_LIBRARY
+-#
+-# The QtOpenGL library: QT4_QTOPENGL_LIBRARY
+-#
+-# The QtSql library: QT4_QTSQL_LIBRARY
+-#
+-# The QtXml library: QT4_QTXML_LIBRARY
+-#
+-# The QtSvg library: QT4_QTSVG_LIBRARY
+-#
+-# The QtScript library: QT4_QTSCRIPT_LIBRARY
+-#
+-# The QtTest library: QT4_QTTEST_LIBRARY
+-#
+-# The qtmain library for Windows QT4_QTMAIN_LIBRARY
+-#
+-# The QtUiTools library: QT4_QTUITOOLS_LIBRARY
+-#
+-# also defined, but NOT for general use are
+-# QT4_MOC_EXECUTABLE Where to find the moc tool.
+-# QT4_UIC_EXECUTABLE Where to find the uic tool.
+-# QT_UIC3_EXECUTABLE Where to find the uic3 tool.
+-# QT_RCC_EXECUTABLE Where to find the rcc tool
+-# QT_DBUSCPP2XML_EXECUTABLE Where to find the qdbuscpp2xml tool.
+-# QT_DBUSXML2CPP_EXECUTABLE Where to find the qdbusxml2cpp tool.
+-#
+-# QT_DOC_DIR Path to "doc" of Qt4
+-# QT_MKSPECS_DIR Path to "mkspecs" of Qt4
+-#
+-#
+-# These are around for backwards compatibility
+-# they will be set
+-# QT_WRAP_CPP Set true if QT4_MOC_EXECUTABLE is found
+-# QT_WRAP_UI Set true if QT4_UIC_EXECUTABLE is found
+-#
+-# These variables do _NOT_ have any effect anymore (compared to FindQt.cmake)
+-# QT_MT_REQUIRED Qt4 is now always multithreaded
+-#
+-# These variables are set to "" Because Qt structure changed
+-# (They make no sense in Qt4)
+-# QT4_QT_LIBRARY Qt-Library is now split
+-
+-# Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
+-# See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
+-
+-if (QT4_QMAKE_FOUND)
+- # Check already done in this cmake run, nothing more to do
+-
+-else (QT4_QMAKE_FOUND)
+-
+-# check that QT_NO_DEBUG is defined for release configurations
+-MACRO(QT_CHECK_FLAG_EXISTS FLAG VAR DOC)
+- IF(NOT ${VAR} MATCHES "${FLAG}")
+- SET(${VAR} "${${VAR}} ${FLAG}"
+- CACHE STRING "Flags used by the compiler during ${DOC} builds." FORCE)
+- ENDIF(NOT ${VAR} MATCHES "${FLAG}")
+-ENDMACRO(QT_CHECK_FLAG_EXISTS FLAG VAR)
+-QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO "Release with Debug Info")
+-QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_RELEASE "release")
+-QT_CHECK_FLAG_EXISTS(-DQT_NO_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL "release minsize")
+-
+-INCLUDE(CheckSymbolExists)
+-INCLUDE(MacroAddFileDependencies)
+-INCLUDE(MacroPushRequiredVars)
+-
+-SET(QT_USE_FILE ${CMAKE_ROOT}/Modules/UseQt4.cmake)
+-
+-SET( QT4_DEFINITIONS "")
+-
+-IF (WIN32)
+- SET(QT4_DEFINITIONS -DQT_DLL)
+-ENDIF(WIN32)
+-
+-SET(QT4_INSTALLED_VERSION_TOO_OLD FALSE)
+-
+-# macro for asking qmake to process pro files
+-MACRO(QT_QUERY_QMAKE outvar invar)
+- FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake/tmp.pro
+- "message(CMAKE_MESSAGE<$$${invar}>)")
+-
+- # Invoke qmake with the tmp.pro program to get the desired
+- # information. Use the same variable for both stdout and stderr
+- # to make sure we get the output on all platforms.
+- EXECUTE_PROCESS(COMMAND ${QT_QMAKE_EXECUTABLE}
+- WORKING_DIRECTORY
+- ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake
+- OUTPUT_VARIABLE _qmake_query_output
+- RESULT_VARIABLE _qmake_result
+- ERROR_VARIABLE _qmake_query_output )
+-
+- FILE(REMOVE_RECURSE
+- "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmpQmake")
+-
+- IF(_qmake_result)
+- MESSAGE(WARNING " querying qmake for ${invar}. qmake reported:\n${_qmake_query_output}")
+- ELSE(_qmake_result)
+- STRING(REGEX REPLACE ".*CMAKE_MESSAGE<([^>]*).*" "\\1" ${outvar} "${_qmake_query_output}")
+- ENDIF(_qmake_result)
+-
+-ENDMACRO(QT_QUERY_QMAKE)
+-
+-MACRO(VERIFY_QMAKE_QT4)
+- EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE} ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION)
+-
+- # check for qt3 qmake and then try and find qmake4 or qmake-qt4 in the path
+- IF("${QTVERSION}" MATCHES "Unknown")
+- SET(QT_QMAKE_EXECUTABLE NOTFOUND CACHE FILEPATH "" FORCE)
+- FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 PATHS
+- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin"
+- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin"
+- $ENV{QTDIR}/bin
+- )
+- IF(QT_QMAKE_EXECUTABLE)
+- EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE}
+- ARGS "-query QT_VERSION" OUTPUT_VARIABLE QTVERSION)
+- ENDIF(QT_QMAKE_EXECUTABLE)
+- ENDIF("${QTVERSION}" MATCHES "Unknown")
+-
+- # check that we found the Qt4 qmake, Qt3 qmake output won't match here
+- STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" qt_version_tmp "${QTVERSION}")
+- IF (qt_version_tmp)
+-
+- # we need at least version 4.0.0
+- IF (NOT QT4_MIN_VERSION)
+- SET(QT4_MIN_VERSION "4.0.0")
+- ENDIF (NOT QT4_MIN_VERSION)
+-
+- #now parse the parts of the user given version string into variables
+- STRING(REGEX MATCH "^[0-9]+\\.[0-9]+\\.[0-9]+" req_qt_major_vers "${QT4_MIN_VERSION}")
+- IF (NOT req_qt_major_vers)
+- MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT4_MIN_VERSION}\", expected e.g. \"4.0.1\"")
+- ENDIF (NOT req_qt_major_vers)
+-
+- # now parse the parts of the user given version string into variables
+- STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" req_qt_major_vers "${QT4_MIN_VERSION}")
+- STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" req_qt_minor_vers "${QT4_MIN_VERSION}")
+- STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" req_qt_patch_vers "${QT4_MIN_VERSION}")
+-
+- IF (NOT req_qt_major_vers EQUAL 4)
+- MESSAGE( FATAL_ERROR "Invalid Qt version string given: \"${QT4_MIN_VERSION}\", major version 4 is required, e.g. \"4.0.1\"")
+- ENDIF (NOT req_qt_major_vers EQUAL 4)
+-
+- # and now the version string given by qmake
+- STRING(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" found_qt_major_vers "${QTVERSION}")
+- STRING(REGEX REPLACE "^[0-9]+\\.([0-9])+\\.[0-9]+.*" "\\1" found_qt_minor_vers "${QTVERSION}")
+- STRING(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" found_qt_patch_vers "${QTVERSION}")
+- IF (${found_qt_major_vers} EQUAL 4)
+- # compute an overall version number which can be compared at once
+- MATH(EXPR req_vers "${req_qt_major_vers}*10000 + ${req_qt_minor_vers}*100 + ${req_qt_patch_vers}")
+- MATH(EXPR found_vers "${found_qt_major_vers}*10000 + ${found_qt_minor_vers}*100 + ${found_qt_patch_vers}")
+-
+-
+- IF (found_vers LESS req_vers)
+- SET(QT4_QMAKE_FOUND FALSE)
+- SET(QT4_INSTALLED_VERSION_TOO_OLD TRUE)
+- ELSE (found_vers LESS req_vers)
+- SET(QT4_QMAKE_FOUND TRUE)
+- ENDIF (found_vers LESS req_vers)
+- ENDIF ()
+- ENDIF (qt_version_tmp)
+-ENDMACRO()
+-
+-GET_FILENAME_COMPONENT(qt_install_version "[HKEY_CURRENT_USER\\Software\\trolltech\\Versions;DefaultQtVersion]" NAME)
+-# check for qmake
+-FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS
+- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin"
+- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin"
+- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin"
+- $ENV{QTDIR}/bin
+-)
+-
+-IF (QT_QMAKE_EXECUTABLE)
+-
+- SET(QT4_QMAKE_FOUND FALSE)
+- VERIFY_QMAKE_QT4()
+-
+- IF (NOT QT4_QMAKE_FOUND)
+- FIND_PROGRAM(QT_QMAKE_EXECUTABLE2 NAMES qmake4 qmake-qt4 PATHS
+- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin"
+- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin"
+- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin"
+- $ENV{QTDIR}/bin
+- )
+- SET(QT_QMAKE_EXECUTABLE ${QT_QMAKE_EXECUTABLE2})
+- VERIFY_QMAKE_QT4()
+- ENDIF()
+-
+-ENDIF (QT_QMAKE_EXECUTABLE)
+-
+-IF (QT4_QMAKE_FOUND)
+-
+- if (WIN32)
+- # get qt install dir
+- get_filename_component(_DIR ${QT_QMAKE_EXECUTABLE} PATH )
+- get_filename_component(QT_INSTALL_DIR ${_DIR} PATH )
+- endif (WIN32)
+-
+- # ask qmake for the library dir
+- # Set QT4_LIBRARY_DIR
+- IF (NOT QT4_LIBRARY_DIR)
+- EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
+- ARGS "-query QT_INSTALL_LIBS"
+- OUTPUT_VARIABLE QT4_LIBRARY_DIR_TMP )
+- IF(EXISTS "${QT4_LIBRARY_DIR_TMP}")
+- SET(QT4_LIBRARY_DIR ${QT4_LIBRARY_DIR_TMP} CACHE PATH "Qt library dir")
+- ELSE(EXISTS "${QT4_LIBRARY_DIR_TMP}")
+- MESSAGE("Warning: QT_QMAKE_EXECUTABLE reported QT_INSTALL_LIBS as ${QT4_LIBRARY_DIR_TMP}")
+- MESSAGE("Warning: ${QT4_LIBRARY_DIR_TMP} does NOT exist, Qt must NOT be installed correctly.")
+- ENDIF(EXISTS "${QT4_LIBRARY_DIR_TMP}")
+- ENDIF(NOT QT4_LIBRARY_DIR)
+-
+- IF (APPLE)
+- IF (EXISTS ${QT4_LIBRARY_DIR}/QtCore.framework)
+- SET(QT_USE_FRAMEWORKS ON
+- CACHE BOOL "Set to ON if Qt build uses frameworks.")
+- ELSE (EXISTS ${QT4_LIBRARY_DIR}/QtCore.framework)
+- SET(QT_USE_FRAMEWORKS OFF
+- CACHE BOOL "Set to ON if Qt build uses frameworks.")
+- ENDIF (EXISTS ${QT4_LIBRARY_DIR}/QtCore.framework)
+-
+- MARK_AS_ADVANCED(QT_USE_FRAMEWORKS)
+- ENDIF (APPLE)
+-
+- # ask qmake for the binary dir
+- IF (NOT QT_BINARY_DIR)
+- EXEC_PROGRAM(${QT_QMAKE_EXECUTABLE}
+- ARGS "-query QT_INSTALL_BINS"
+- OUTPUT_VARIABLE qt_bins )
+- SET(QT_BINARY_DIR ${qt_bins} CACHE INTERNAL "")
+- ENDIF (NOT QT_BINARY_DIR)
+-
+- # ask qmake for the include dir
+- IF (NOT QT_HEADERS_DIR)
+- EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
+- ARGS "-query QT_INSTALL_HEADERS"
+- OUTPUT_VARIABLE qt_headers )
+- SET(QT_HEADERS_DIR ${qt_headers} CACHE INTERNAL "")
+- ENDIF(NOT QT_HEADERS_DIR)
+-
+-
+- # ask qmake for the documentation directory
+- IF (NOT QT_DOC_DIR)
+- EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
+- ARGS "-query QT_INSTALL_DOCS"
+- OUTPUT_VARIABLE qt_doc_dir )
+- SET(QT_DOC_DIR ${qt_doc_dir} CACHE PATH "The location of the Qt docs")
+- ENDIF (NOT QT_DOC_DIR)
+-
+- # ask qmake for the mkspecs directory
+- IF (NOT QT_MKSPECS_DIR)
+- EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
+- ARGS "-query QMAKE_MKSPECS"
+- OUTPUT_VARIABLE qt_mkspecs_dirs )
+- STRING(REPLACE ":" ";" qt_mkspecs_dirs "${qt_mkspecs_dirs}")
+- FIND_PATH(QT_MKSPECS_DIR qconfig.pri PATHS ${qt_mkspecs_dirs}
+- DOC "The location of the Qt mkspecs containing qconfig.pri"
+- NO_DEFAULT_PATH )
+- ENDIF (NOT QT_MKSPECS_DIR)
+-
+- # ask qmake for the plugins directory
+- IF (NOT QT4_PLUGINS_DIR)
+- EXEC_PROGRAM( ${QT_QMAKE_EXECUTABLE}
+- ARGS "-query QT_INSTALL_PLUGINS"
+- OUTPUT_VARIABLE qt_plugins_dir )
+- SET(QT4_PLUGINS_DIR ${qt_plugins_dir} CACHE PATH "The location of the Qt plugins")
+- ENDIF (NOT QT4_PLUGINS_DIR)
+- ########################################
+- #
+- # Setting the INCLUDE-Variables
+- #
+- ########################################
+-
+- FIND_PATH(QT4_QTCORE_INCLUDE_DIR QtGlobal
+- ${QT_HEADERS_DIR}/QtCore
+- ${QT4_LIBRARY_DIR}/QtCore.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_INCLUDE_DIR by removine "/QtCore" in the string ${QT4_QTCORE_INCLUDE_DIR}
+- IF( QT4_QTCORE_INCLUDE_DIR AND NOT QT4_INCLUDE_DIR)
+- IF (QT_USE_FRAMEWORKS)
+- SET(QT4_INCLUDE_DIR ${QT_HEADERS_DIR})
+- ELSE (QT_USE_FRAMEWORKS)
+- STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT4_QTCORE_INCLUDE_DIR})
+- SET( QT4_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "")
+- ENDIF (QT_USE_FRAMEWORKS)
+- ENDIF( QT4_QTCORE_INCLUDE_DIR AND NOT QT4_INCLUDE_DIR)
+-
+- IF( NOT QT4_INCLUDE_DIR)
+- IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED)
+- MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header")
+- ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED)
+- ENDIF( NOT QT4_INCLUDE_DIR)
+-
+- #############################################
+- #
+- # Find out what window system we're using
+- #
+- #############################################
+- # Save required includes and required_flags variables
+- macro_push_required_vars()
+- # Add QT4_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES
+- SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT4_INCLUDE_DIR}")
+- # On Mac OS X when Qt has framework support, also add the framework path
+- IF( QT_USE_FRAMEWORKS )
+- SET(CMAKE_REQUIRED_FLAGS "-F${QT4_LIBRARY_DIR} ")
+- ENDIF( QT_USE_FRAMEWORKS )
+- # Check for Window system symbols (note: only one should end up being set)
+- CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11)
+- CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN)
+- CHECK_SYMBOL_EXISTS(Q_WS_QWS "QtCore/qglobal.h" Q_WS_QWS)
+- CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC)
+-
+- IF (QT4_QTCOPY_REQUIRED)
+- CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY)
+- IF (NOT QT_IS_QTCOPY)
+- MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found")
+- ENDIF (NOT QT_IS_QTCOPY)
+- ENDIF (QT4_QTCOPY_REQUIRED)
+-
+- # Restore CMAKE_REQUIRED_INCLUDES+CMAKE_REQUIRED_FLAGS variables
+- macro_pop_required_vars()
+- #
+- #############################################
+-
+- IF (QT_USE_FRAMEWORKS)
+- SET(QT4_DEFINITIONS ${QT4_DEFINITIONS} -F${QT4_LIBRARY_DIR} -L${QT4_LIBRARY_DIR} )
+- ENDIF (QT_USE_FRAMEWORKS)
+-
+- # Set QT4_QT3SUPPORT_INCLUDE_DIR
+- FIND_PATH(QT4_QT3SUPPORT_INCLUDE_DIR Qt3Support
+- PATHS
+- ${QT4_INCLUDE_DIR}/Qt3Support
+- ${QT4_LIBRARY_DIR}/Qt3Support.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QT4_INCLUDE_DIR
+- FIND_PATH(QT4_QT4_INCLUDE_DIR qglobal.h
+- PATHS
+- ${QT4_INCLUDE_DIR}/Qt
+- ${QT4_LIBRARY_DIR}/QtCore.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTGUI_INCLUDE_DIR
+- FIND_PATH(QT4_QTGUI_INCLUDE_DIR QtGui
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtGui
+- ${QT4_LIBRARY_DIR}/QtGui.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTSVG_INCLUDE_DIR
+- FIND_PATH(QT4_QTSVG_INCLUDE_DIR QtSvg
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtSvg
+- ${QT4_LIBRARY_DIR}/QtSvg.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTSCRIPT_INCLUDE_DIR
+- FIND_PATH(QT4_QTSCRIPT_INCLUDE_DIR QtScript
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtScript
+- ${QT4_LIBRARY_DIR}/QtScript.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTTEST_INCLUDE_DIR
+- FIND_PATH(QT4_QTTEST_INCLUDE_DIR QtTest
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtTest
+- ${QT4_LIBRARY_DIR}/QtTest.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTUITOOLS_INCLUDE_DIR
+- FIND_PATH(QT4_QTUITOOLS_INCLUDE_DIR QtUiTools
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtUiTools
+- ${QT4_LIBRARY_DIR}/QtUiTools.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+-
+-
+- # Set QT4_QTMOTIF_INCLUDE_DIR
+- IF(Q_WS_X11)
+- FIND_PATH(QT4_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT4_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH )
+- ENDIF(Q_WS_X11)
+-
+- # Set QT4_QTNETWORK_INCLUDE_DIR
+- FIND_PATH(QT4_QTNETWORK_INCLUDE_DIR QtNetwork
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtNetwork
+- ${QT4_LIBRARY_DIR}/QtNetwork.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTNSPLUGIN_INCLUDE_DIR
+- FIND_PATH(QT4_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtNsPlugin
+- ${QT4_LIBRARY_DIR}/QtNsPlugin.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTOPENGL_INCLUDE_DIR
+- FIND_PATH(QT4_QTOPENGL_INCLUDE_DIR QtOpenGL
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtOpenGL
+- ${QT4_LIBRARY_DIR}/QtOpenGL.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTSQL_INCLUDE_DIR
+- FIND_PATH(QT4_QTSQL_INCLUDE_DIR QtSql
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtSql
+- ${QT4_LIBRARY_DIR}/QtSql.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTXML_INCLUDE_DIR
+- FIND_PATH(QT4_QTXML_INCLUDE_DIR QtXml
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtXml
+- ${QT4_LIBRARY_DIR}/QtXml.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTASSISTANT_INCLUDE_DIR
+- FIND_PATH(QT4_QTASSISTANT_INCLUDE_DIR QtAssistant
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtAssistant
+- ${QT_HEADERS_DIR}/QtAssistant
+- ${QT4_LIBRARY_DIR}/QtAssistant.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTDESIGNER_INCLUDE_DIR
+- FIND_PATH(QT4_QTDESIGNER_INCLUDE_DIR QDesignerComponents
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtDesigner
+- ${QT_HEADERS_DIR}/QtDesigner
+- ${QT4_LIBRARY_DIR}/QtDesigner.framework/Headers
+- NO_DEFAULT_PATH
+- )
+-
+- # Set QT4_QTDESIGNERCOMPONENTS_INCLUDE_DIR
+- FIND_PATH(QT4_QTDESIGNERCOMPONENTS_INCLUDE_DIR QDesignerComponents
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtDesigner
+- ${QT_HEADERS_DIR}/QtDesigner
+- NO_DEFAULT_PATH
+- )
+-
+-
+- # Set QT4_QTDBUS_INCLUDE_DIR
+- FIND_PATH(QT4_QTDBUS_INCLUDE_DIR QtDBus
+- PATHS
+- ${QT4_INCLUDE_DIR}/QtDBus
+- ${QT_HEADERS_DIR}/QtDBus
+- NO_DEFAULT_PATH
+- )
+-
+- # Make variables changeble to the advanced user
+- MARK_AS_ADVANCED( QT4_LIBRARY_DIR QT4_INCLUDE_DIR QT4_QT4_INCLUDE_DIR QT_DOC_DIR QT_MKSPECS_DIR QT4_PLUGINS_DIR)
+-
+- # Set QT4_INCLUDES
+- SET( QT4_INCLUDES ${QT4_QT4_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default ${QT4_INCLUDE_DIR})
+-
+-
+- ########################################
+- #
+- # Setting the LIBRARY-Variables
+- #
+- ########################################
+-
+- IF (QT_USE_FRAMEWORKS)
+- # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have
+- # to jump through these hoops.
+- IF(EXISTS ${QT4_LIBRARY_DIR}/QtCore.framework)
+- SET(QT4_QTCORE_FOUND TRUE)
+- SET(QT4_QTCORE_LIBRARY "-F${QT4_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/QtCore.framework)
+- SET(QT4_QTCORE_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/QtCore.framework)
+-
+- IF(EXISTS ${QT4_LIBRARY_DIR}/QtGui.framework)
+- SET(QT4_QTGUI_FOUND TRUE)
+- SET(QT4_QTGUI_LIBRARY "-F${QT4_LIBRARY_DIR} -framework QtGui" CACHE STRING "The QtGui library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/QtGui.framework)
+- SET(QT4_QTGUI_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/QtGui.framework)
+-
+- IF(EXISTS ${QT4_LIBRARY_DIR}/Qt3Support.framework)
+- SET(QT4_QT3SUPPORT_FOUND TRUE)
+- SET(QT4_QT3SUPPORT_LIBRARY "-F${QT4_LIBRARY_DIR} -framework Qt3Support" CACHE STRING "The Qt3Support library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/Qt3Support.framework)
+- SET(QT4_QT3SUPPORT_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/Qt3Support.framework)
+-
+- IF(EXISTS ${QT4_LIBRARY_DIR}/QtNetwork.framework)
+- SET(QT4_QTNETWORK_FOUND TRUE)
+- SET(QT4_QTNETWORK_LIBRARY "-F${QT4_LIBRARY_DIR} -framework QtNetwork" CACHE STRING "The QtNetwork library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/QtNetwork.framework)
+- SET(QT4_QTNETWORK_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/QtNetwork.framework)
+-
+- IF(EXISTS ${QT4_LIBRARY_DIR}/QtOpenGL.framework)
+- SET(QT4_QTOPENGL_FOUND TRUE)
+- SET(QT4_QTOPENGL_LIBRARY "-F${QT4_LIBRARY_DIR} -framework QtOpenGL" CACHE STRING "The QtOpenGL library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/QtOpenGL.framework)
+- SET(QT4_QTOPENGL_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/QtOpenGL.framework)
+-
+- IF(EXISTS ${QT4_LIBRARY_DIR}/QtSql.framework)
+- SET(QT4_QTSQL_FOUND TRUE)
+- SET(QT4_QTSQL_LIBRARY "-F${QT4_LIBRARY_DIR} -framework QtSql" CACHE STRING "The QtSql library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/QtSql.framework)
+- SET(QT4_QTSQL_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/QtSql.framework)
+-
+- IF(EXISTS ${QT4_LIBRARY_DIR}/QtXml.framework)
+- SET(QT4_QTXML_FOUND TRUE)
+- SET(QT4_QTXML_LIBRARY "-F${QT4_LIBRARY_DIR} -framework QtXml" CACHE STRING "The QtXml library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/QtXml.framework)
+- SET(QT4_QTXML_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/QtXml.framework)
+-
+- IF(EXISTS ${QT4_LIBRARY_DIR}/QtSvg.framework)
+- SET(QT4_QTSVG_FOUND TRUE)
+- SET(QT4_QTSVG_LIBRARY "-F${QT4_LIBRARY_DIR} -framework QtSvg" CACHE STRING "The QtSvg library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/QtSvg.framework)
+- SET(QT4_QTSVG_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/QtSvg.framework)
+-
+- IF(EXISTS ${QT4_LIBRARY_DIR}/QtDBus.framework)
+- SET(QT4_QTDBUS_FOUND TRUE)
+- SET(QT4_QTDBUS_LIBRARY "-F${QT4_LIBRARY_DIR} -framework QtDBus" CACHE STRING "The QtDBus library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/QtDBus.framework)
+- SET(QT4_QTDBUS_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/QtDBus.framework)
+-
+- IF(EXISTS ${QT4_LIBRARY_DIR}/QtTest.framework)
+- SET(QT4_QTTEST_FOUND TRUE)
+- SET(QT4_QTTEST_LIBRARY "-F${QT4_LIBRARY_DIR} -framework QtTest" CACHE STRING "The QtTest library.")
+- ELSE(EXISTS ${QT4_LIBRARY_DIR}/QtTest.framework)
+- SET(QT4_QTTEST_FOUND FALSE)
+- ENDIF(EXISTS ${QT4_LIBRARY_DIR}/QtTest.framework)
+-
+- # WTF? why don't we have frameworks? :P
+- # Set QT4_QTUITOOLS_LIBRARY
+- FIND_LIBRARY(QT4_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT4_LIBRARY_DIR} )
+- # Set QT4_QTSCRIPT_LIBRARY
+- FIND_LIBRARY(QT4_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT4_LIBRARY_DIR} )
+-
+- ELSE (QT_USE_FRAMEWORKS)
+-
+- # Set QT4_QTCORE_LIBRARY by searching for a lib with "QtCore." as part of the filename
+- FIND_LIBRARY(QT4_QTCORE_LIBRARY NAMES QtCore QtCore4 QtCored4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH )
+-
+- # Set QT4_QT3SUPPORT_LIBRARY
+- FIND_LIBRARY(QT4_QT3SUPPORT_LIBRARY NAMES Qt3Support Qt3Support4 Qt3Supportd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTGUI_LIBRARY
+- FIND_LIBRARY(QT4_QTGUI_LIBRARY NAMES QtGui QtGui4 QtGuid4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTMOTIF_LIBRARY
+- IF(Q_WS_X11)
+- FIND_LIBRARY(QT4_QTMOTIF_LIBRARY NAMES QtMotif PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- ENDIF(Q_WS_X11)
+-
+- # Set QT4_QTNETWORK_LIBRARY
+- FIND_LIBRARY(QT4_QTNETWORK_LIBRARY NAMES QtNetwork QtNetwork4 QtNetworkd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTNSPLUGIN_LIBRARY
+- FIND_LIBRARY(QT4_QTNSPLUGIN_LIBRARY NAMES QtNsPlugin PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTOPENGL_LIBRARY
+- FIND_LIBRARY(QT4_QTOPENGL_LIBRARY NAMES QtOpenGL QtOpenGL4 QtOpenGLd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTSQL_LIBRARY
+- FIND_LIBRARY(QT4_QTSQL_LIBRARY NAMES QtSql QtSql4 QtSqld4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTXML_LIBRARY
+- FIND_LIBRARY(QT4_QTXML_LIBRARY NAMES QtXml QtXml4 QtXmld4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTSVG_LIBRARY
+- FIND_LIBRARY(QT4_QTSVG_LIBRARY NAMES QtSvg QtSvg4 QtSvgd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTSCRIPT_LIBRARY
+- FIND_LIBRARY(QT4_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 QtScriptd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTUITOOLS_LIBRARY
+- FIND_LIBRARY(QT4_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 QtUiToolsd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTTEST_LIBRARY
+- FIND_LIBRARY(QT4_QTTEST_LIBRARY NAMES QtTest QtTest4 QtTestd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- FIND_LIBRARY(QT4_QTDBUS_LIBRARY NAMES QtDBus QtDBus4 QtDBusd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- IF(MSVC)
+- FIND_LIBRARY(QT4_QTCORE_LIBRARY_RELEASE NAMES QtCore4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTCORE_LIBRARY_DEBUG NAMES QtCored4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QT3SUPPORT_LIBRARY_DEBUG NAMES Qt3Supportd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTGUI_LIBRARY_RELEASE NAMES QtGui4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTGUI_LIBRARY_DEBUG NAMES QtGuid4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTNETWORK_LIBRARY_DEBUG NAMES QtNetworkd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTOPENGL_LIBRARY_DEBUG NAMES QtOpenGLd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTSQL_LIBRARY_RELEASE NAMES QtSql4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTSQL_LIBRARY_DEBUG NAMES QtSqld4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTXML_LIBRARY_RELEASE NAMES QtXml4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTXML_LIBRARY_DEBUG NAMES QtXmld4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTSVG_LIBRARY_RELEASE NAMES QtSvg4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTSVG_LIBRARY_DEBUG NAMES QtSvgd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTSCRIPT_LIBRARY_RELEASE NAMES QtScript4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTSCRIPT_LIBRARY_DEBUG NAMES QtScriptd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTUITOOLS_LIBRARY_DEBUG NAMES QtUiToolsd QtUiToolsd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTTEST_LIBRARY_RELEASE NAMES QtTest4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTTEST_LIBRARY_DEBUG NAMES QtTestd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTDBUS_LIBRARY_RELEASE NAMES QtDBus4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTDBUS_LIBRARY_DEBUG NAMES QtDBusd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTASSISTANT_LIBRARY_DEBUG NAMES QtAssistantClientd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTDESIGNER_LIBRARY_DEBUG NAMES QtDesignerd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTDESIGNERCOMPONENTS_LIBRARY_RELEASE NAMES QtDesignerComponents4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTDESIGNERCOMPONENTS_LIBRARY_DEBUG NAMES QtDesignerComponentsd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- FIND_LIBRARY(QT4_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- ENDIF(MSVC)
+- ENDIF (QT_USE_FRAMEWORKS)
+-
+- IF( NOT QT4_QTCORE_LIBRARY )
+- IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED)
+- MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log for more details.")
+- ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED)
+- ENDIF( NOT QT4_QTCORE_LIBRARY )
+-
+- # Set QT4_QTASSISTANT_LIBRARY
+- FIND_LIBRARY(QT4_QTASSISTANT_LIBRARY NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 QtAssistantd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTDESIGNER_LIBRARY
+- FIND_LIBRARY(QT4_QTDESIGNER_LIBRARY NAMES QtDesigner QtDesigner4 QtDesignerd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTDESIGNERCOMPONENTS_LIBRARY
+- FIND_LIBRARY(QT4_QTDESIGNERCOMPONENTS_LIBRARY NAMES QtDesignerComponents QtDesignerComponents4 QtDesignerComponentsd4 PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+-
+- # Set QT4_QTMAIN_LIBRARY
+- IF(WIN32)
+- FIND_LIBRARY(QT4_QTMAIN_LIBRARY NAMES qtmain qtmaind PATHS ${QT4_LIBRARY_DIR} NO_DEFAULT_PATH)
+- ENDIF(WIN32)
+-
+- ############################################
+- #
+- # Check the existence of the libraries.
+- #
+- ############################################
+-
+- MACRO (_QT4_ADJUST_LIB_VARS basename)
+- IF (QT4_${basename}_LIBRARY OR QT4_${basename}_LIBRARY_DEBUG)
+-
+- IF(MSVC)
+- # Both set
+- IF (QT4_${basename}_LIBRARY_RELEASE AND QT4_${basename}_LIBRARY_DEBUG)
+- SET(QT4_${basename}_LIBRARY optimized ${QT4_${basename}_LIBRARY_RELEASE} debug ${QT4_${basename}_LIBRARY_DEBUG})
+- ENDIF (QT4_${basename}_LIBRARY_RELEASE AND QT4_${basename}_LIBRARY_DEBUG)
+-
+- # Only debug was found
+- IF (NOT QT4_${basename}_LIBRARY_RELEASE AND QT4_${basename}_LIBRARY_DEBUG)
+- SET(QT4_${basename}_LIBRARY ${QT4_${basename}_LIBRARY_DEBUG})
+- ENDIF (NOT QT4_${basename}_LIBRARY_RELEASE AND QT4_${basename}_LIBRARY_DEBUG)
+-
+- # Only release was found
+- IF (QT4_${basename}_LIBRARY_RELEASE AND NOT QT4_${basename}_LIBRARY_DEBUG)
+- SET(QT4_${basename}_LIBRARY ${QT4_${basename}_LIBRARY_RELEASE})
+- ENDIF (QT4_${basename}_LIBRARY_RELEASE AND NOT QT4_${basename}_LIBRARY_DEBUG)
+-
+- # Hmm, is this used anywhere ? Yes, in UseQt4.cmake. We are currently incompatible :-(
+- SET(QT4_${basename}_LIBRARIES optimized ${QT4_${basename}_LIBRARY} debug ${QT4_${basename}_LIBRARY_DEBUG})
+-
+- ENDIF(MSVC)
+-
+- SET(QT4_${basename}_LIBRARY ${QT4_${basename}_LIBRARY} CACHE FILEPATH "The Qt4 ${basename} library")
+-
+- IF (QT4_${basename}_LIBRARY)
+- SET(QT4_${basename}_FOUND 1)
+- ENDIF (QT4_${basename}_LIBRARY)
+-
+- ENDIF (QT4_${basename}_LIBRARY OR QT4_${basename}_LIBRARY_DEBUG)
+-
+- IF (QT4_${basename}_INCLUDE_DIR)
+- #add the include directory to QT4_INCLUDES
+- SET(QT4_INCLUDES "${QT4_${basename}_INCLUDE_DIR}" ${QT4_INCLUDES})
+- ENDIF (QT4_${basename}_INCLUDE_DIR)
+-
+- # Make variables changeble to the advanced user
+- MARK_AS_ADVANCED(QT4_${basename}_LIBRARY QT4_${basename}_INCLUDE_DIR)
+- ENDMACRO (_QT4_ADJUST_LIB_VARS)
+-
+-
+- # Set QT_xyz_LIBRARY variable and add
+- # library include path to QT4_INCLUDES
+- _QT4_ADJUST_LIB_VARS(QTCORE)
+- _QT4_ADJUST_LIB_VARS(QTGUI)
+- _QT4_ADJUST_LIB_VARS(QT3SUPPORT)
+- _QT4_ADJUST_LIB_VARS(QTASSISTANT)
+- _QT4_ADJUST_LIB_VARS(QTDESIGNER)
+- _QT4_ADJUST_LIB_VARS(QTDESIGNERCOMPONENTS)
+- _QT4_ADJUST_LIB_VARS(QTNETWORK)
+- _QT4_ADJUST_LIB_VARS(QTNSPLUGIN)
+- _QT4_ADJUST_LIB_VARS(QTOPENGL)
+- _QT4_ADJUST_LIB_VARS(QTSQL)
+- _QT4_ADJUST_LIB_VARS(QTXML)
+- _QT4_ADJUST_LIB_VARS(QTSVG)
+- _QT4_ADJUST_LIB_VARS(QTSCRIPT)
+- _QT4_ADJUST_LIB_VARS(QTUITOOLS)
+- _QT4_ADJUST_LIB_VARS(QTTEST)
+- _QT4_ADJUST_LIB_VARS(QTDBUS)
+-
+- # platform dependent libraries
+- IF(Q_WS_X11)
+- _QT4_ADJUST_LIB_VARS(QTMOTIF)
+- ENDIF(Q_WS_X11)
+- IF(WIN32)
+- _QT4_ADJUST_LIB_VARS(QTMAIN)
+- ENDIF(WIN32)
+-
+-
+- #######################################
+- #
+- # Check the executables of Qt
+- # ( moc, uic, rcc )
+- #
+- #######################################
+-
+-
+- # find moc and uic using qmake
+- QT_QUERY_QMAKE(QT4_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC")
+- QT_QUERY_QMAKE(QT4_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC")
+-
+- FILE(TO_CMAKE_PATH
+- "${QT4_MOC_EXECUTABLE_INTERNAL}" QT4_MOC_EXECUTABLE_INTERNAL)
+- FILE(TO_CMAKE_PATH
+- "${QT4_UIC_EXECUTABLE_INTERNAL}" QT4_UIC_EXECUTABLE_INTERNAL)
+-
+- SET(QT4_MOC_EXECUTABLE
+- ${QT4_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable")
+- SET(QT4_UIC_EXECUTABLE
+- ${QT4_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable")
+-
+- FIND_PROGRAM(QT_UIC3_EXECUTABLE
+- NAMES uic3
+- PATHS ${QT_BINARY_DIR}
+- NO_DEFAULT_PATH
+- )
+-
+- FIND_PROGRAM(QT_RCC_EXECUTABLE
+- NAMES rcc
+- PATHS ${QT_BINARY_DIR}
+- NO_DEFAULT_PATH
+- )
+-
+- FIND_PROGRAM(QT_DBUSCPP2XML_EXECUTABLE
+- NAMES qdbuscpp2xml
+- PATHS ${QT_BINARY_DIR}
+- NO_DEFAULT_PATH
+- )
+-
+- FIND_PROGRAM(QT_DBUSXML2CPP_EXECUTABLE
+- NAMES qdbusxml2cpp
+- PATHS ${QT_BINARY_DIR}
+- NO_DEFAULT_PATH
+- )
+-
+- IF (QT4_MOC_EXECUTABLE)
+- SET(QT_WRAP_CPP "YES")
+- ENDIF (QT4_MOC_EXECUTABLE)
+-
+- IF (QT4_UIC_EXECUTABLE)
+- SET(QT_WRAP_UI "YES")
+- ENDIF (QT4_UIC_EXECUTABLE)
+-
+-
+-
+- MARK_AS_ADVANCED( QT4_UIC_EXECUTABLE QT_UIC3_EXECUTABLE QT4_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_DBUSXML2CPP_EXECUTABLE QT_DBUSCPP2XML_EXECUTABLE)
+-
+- ######################################
+- #
+- # Macros for building Qt files
+- #
+- ######################################
+- MACRO (QT4_EXTRACT_OPTIONS _qt4_files _qt4_options)
+- SET(${_qt4_files})
+- SET(${_qt4_options})
+- SET(_QT4_DOING_OPTIONS FALSE)
+- FOREACH(_currentArg ${ARGN})
+- IF ("${_currentArg}" STREQUAL "OPTIONS")
+- SET(_QT4_DOING_OPTIONS TRUE)
+- ELSE ("${_currentArg}" STREQUAL "OPTIONS")
+- IF(_QT4_DOING_OPTIONS)
+- LIST(APPEND ${_qt4_options} "${_currentArg}")
+- ELSE(_QT4_DOING_OPTIONS)
+- LIST(APPEND ${_qt4_files} "${_currentArg}")
+- ENDIF(_QT4_DOING_OPTIONS)
+- ENDIF ("${_currentArg}" STREQUAL "OPTIONS")
+- ENDFOREACH(_currentArg)
+- ENDMACRO (QT4_EXTRACT_OPTIONS)
+-
+- MACRO (QT4_GET_MOC_INC_DIRS _moc_INC_DIRS)
+- SET(${_moc_INC_DIRS})
+- GET_DIRECTORY_PROPERTY(_inc_DIRS INCLUDE_DIRECTORIES)
+-
+- FOREACH(_current ${_inc_DIRS})
+- SET(${_moc_INC_DIRS} ${${_moc_INC_DIRS}} "-I" ${_current})
+- ENDFOREACH(_current ${_inc_DIRS})
+-
+- ENDMACRO(QT4_GET_MOC_INC_DIRS)
+-
+-
+- MACRO (QT4_GENERATE_MOC infile outfile )
+- # get include dirs
+- QT4_GET_MOC_INC_DIRS(moc_includes)
+-
+- GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE)
+-
+- IF (MSVC_IDE)
+- SET (_moc_parameter_file ${outfile}_parameters)
+- SET (_moc_param "${moc_includes} \n-o${outfile} \n${abs_infile}")
+- STRING(REGEX REPLACE ";-I;" "\\n-I" _moc_param "${_moc_param}")
+- FILE (WRITE ${_moc_parameter_file} "${_moc_param}")
+- ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
+- COMMAND ${QT4_MOC_EXECUTABLE}
+- ARGS @"${_moc_parameter_file}"
+- DEPENDS ${abs_infile})
+- ELSE (MSVC_IDE)
+- ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
+- COMMAND ${QT4_MOC_EXECUTABLE}
+- ARGS ${moc_includes} -o ${outfile} ${abs_infile}
+- DEPENDS ${abs_infile})
+- ENDIF (MSVC_IDE)
+-
+- SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE) # dont run automoc on this file
+-
+- MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile})
+- ENDMACRO (QT4_GENERATE_MOC)
+-
+-
+- # QT4_WRAP_CPP(outfiles inputfile ... )
+- # TODO perhaps add support for -D, -U and other minor options
+-
+- MACRO (QT4_WRAP_CPP outfiles )
+- # get include dirs
+- QT4_GET_MOC_INC_DIRS(moc_includes)
+- QT4_EXTRACT_OPTIONS(moc_files moc_options ${ARGN})
+-
+- FOREACH (it ${moc_files})
+- GET_FILENAME_COMPONENT(it ${it} ABSOLUTE)
+- GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
+-
+- SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx)
+- ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
+- COMMAND ${QT4_MOC_EXECUTABLE}
+- ARGS ${moc_includes} ${moc_options} -o ${outfile} ${it}
+- DEPENDS ${it})
+- SET(${outfiles} ${${outfiles}} ${outfile})
+- ENDFOREACH(it)
+-
+- ENDMACRO (QT4_WRAP_CPP)
+-
+-
+- # QT4_WRAP_UI(outfiles inputfile ... )
+-
+- MACRO (QT4_WRAP_UI outfiles )
+- QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN})
+-
+- FOREACH (it ${ui_files})
+- GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
+- GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
+- SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h)
+- ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
+- COMMAND ${QT4_UIC_EXECUTABLE}
+- ARGS ${ui_options} -o ${outfile} ${infile}
+- MAIN_DEPENDENCY ${infile})
+- SET(${outfiles} ${${outfiles}} ${outfile})
+- ENDFOREACH (it)
+-
+- ENDMACRO (QT4_WRAP_UI)
+-
+-
+- # QT4_ADD_RESOURCES(outfiles inputfile ... )
+- # TODO perhaps consider adding support for compression and root options to rcc
+-
+- MACRO (QT4_ADD_RESOURCES outfiles )
+- QT4_EXTRACT_OPTIONS(rcc_files rcc_options ${ARGN})
+-
+- FOREACH (it ${rcc_files})
+- GET_FILENAME_COMPONENT(outfilename ${it} NAME_WE)
+- GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
+- GET_FILENAME_COMPONENT(rc_path ${infile} PATH)
+- SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx)
+- # parse file for dependencies
+- # all files are absolute paths or relative to the location of the qrc file
+- FILE(READ "${infile}" _RC_FILE_CONTENTS)
+- STRING(REGEX MATCHALL "<file[^<]+" _RC_FILES "${_RC_FILE_CONTENTS}")
+- SET(_RC_DEPENDS)
+- FOREACH(_RC_FILE ${_RC_FILES})
+- STRING(REGEX REPLACE "^<file[^>]*>" "" _RC_FILE "${_RC_FILE}")
+- STRING(REGEX MATCH "^/|([A-Za-z]:/)" _ABS_PATH_INDICATOR "${_RC_FILE}")
+- IF(NOT _ABS_PATH_INDICATOR)
+- SET(_RC_FILE "${rc_path}/${_RC_FILE}")
+- ENDIF(NOT _ABS_PATH_INDICATOR)
+- SET(_RC_DEPENDS ${_RC_DEPENDS} "${_RC_FILE}")
+- ENDFOREACH(_RC_FILE)
+- ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
+- COMMAND ${QT_RCC_EXECUTABLE}
+- ARGS ${rcc_options} -name ${outfilename} -o ${outfile} ${infile}
+- MAIN_DEPENDENCY ${infile}
+- DEPENDS ${_RC_DEPENDS})
+- SET(${outfiles} ${${outfiles}} ${outfile})
+- ENDFOREACH (it)
+-
+- ENDMACRO (QT4_ADD_RESOURCES)
+-
+- MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _basename)
+- GET_FILENAME_COMPONENT(_infile ${_interface} ABSOLUTE)
+- SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h)
+- SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp)
+- SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc)
+-
+- GET_SOURCE_FILE_PROPERTY(_nonamespace ${_interface} NO_NAMESPACE)
+- IF ( _nonamespace )
+- SET(_params -N -m)
+- ELSE ( _nonamespace )
+- SET(_params -m)
+- ENDIF ( _nonamespace )
+-
+- GET_SOURCE_FILE_PROPERTY(_include ${_interface} INCLUDE)
+- IF ( _include )
+- SET(_params ${_params} -i ${_include})
+- ENDIF ( _include )
+-
+- ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header}
+- COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} -p ${_basename} ${_infile}
+- DEPENDS ${_infile})
+-
+- SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE)
+-
+- QT4_GENERATE_MOC(${_header} ${_moc})
+-
+- SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc})
+- MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc})
+-
+- ENDMACRO(QT4_ADD_DBUS_INTERFACE)
+-
+-
+- MACRO(QT4_ADD_DBUS_INTERFACES _sources)
+- FOREACH (_current_FILE ${ARGN})
+- GET_FILENAME_COMPONENT(_infile ${_current_FILE} ABSOLUTE)
+- # get the part before the ".xml" suffix
+- STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2" _basename ${_current_FILE})
+- STRING(TOLOWER ${_basename} _basename)
+- QT4_ADD_DBUS_INTERFACE(${_sources} ${_infile} ${_basename}interface)
+- ENDFOREACH (_current_FILE)
+- ENDMACRO(QT4_ADD_DBUS_INTERFACES)
+-
+-
+- MACRO(QT4_GENERATE_DBUS_INTERFACE _header) # _customName OPTIONS -some -options )
+- QT4_EXTRACT_OPTIONS(_customName _qt4_dbus_options ${ARGN})
+-
+- GET_FILENAME_COMPONENT(_in_file ${_header} ABSOLUTE)
+- GET_FILENAME_COMPONENT(_basename ${_header} NAME_WE)
+-
+- IF (_customName)
+- SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_customName})
+- ELSE (_customName)
+- SET(_target ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.xml)
+- ENDIF (_customName)
+-
+- ADD_CUSTOM_COMMAND(OUTPUT ${_target}
+- COMMAND ${QT_DBUSCPP2XML_EXECUTABLE} ${_qt4_dbus_options} ${_in_file} > ${_target}
+- DEPENDS ${_in_file}
+- )
+- ENDMACRO(QT4_GENERATE_DBUS_INTERFACE)
+-
+-
+- MACRO(QT4_ADD_DBUS_ADAPTOR _sources _xml_file _include _parentClass) # _optionalBasename _optionalClassName)
+- GET_FILENAME_COMPONENT(_infile ${_xml_file} ABSOLUTE)
+-
+- SET(_optionalBasename "${ARGV4}")
+- IF (_optionalBasename)
+- SET(_basename ${_optionalBasename} )
+- ELSE (_optionalBasename)
+- STRING(REGEX REPLACE "(.*[/\\.])?([^\\.]+)\\.xml" "\\2adaptor" _basename ${_infile})
+- STRING(TOLOWER ${_basename} _basename)
+- ENDIF (_optionalBasename)
+-
+- SET(_optionalClassName "${ARGV5}")
+- SET(_header ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.h)
+- SET(_impl ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp)
+- SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc)
+-
+- IF(_optionalClassName)
+- ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header}
+- COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -c ${_optionalClassName} -i ${_include} -l ${_parentClass} ${_infile}
+- DEPENDS ${_infile}
+- )
+- ELSE(_optionalClassName)
+- ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header}
+- COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} -m -a ${_basename} -i ${_include} -l ${_parentClass} ${_infile}
+- DEPENDS ${_infile}
+- )
+- ENDIF(_optionalClassName)
+-
+- QT4_GENERATE_MOC(${_header} ${_moc})
+- SET_SOURCE_FILES_PROPERTIES(${_impl} PROPERTIES SKIP_AUTOMOC TRUE)
+- MACRO_ADD_FILE_DEPENDENCIES(${_impl} ${_moc})
+-
+- SET(${_sources} ${${_sources}} ${_impl} ${_header} ${_moc})
+- ENDMACRO(QT4_ADD_DBUS_ADAPTOR)
+-
+- MACRO(QT4_AUTOMOC)
+- QT4_GET_MOC_INC_DIRS(_moc_INCS)
+-
+- SET(_matching_FILES )
+- FOREACH (_current_FILE ${ARGN})
+-
+- GET_FILENAME_COMPONENT(_abs_FILE ${_current_FILE} ABSOLUTE)
+- # if "SKIP_AUTOMOC" is set to true, we will not handle this file here.
+- # here. this is required to make bouic work correctly:
+- # we need to add generated .cpp files to the sources (to compile them),
+- # but we cannot let automoc handle them, as the .cpp files don't exist yet when
+- # cmake is run for the very first time on them -> however the .cpp files might
+- # exist at a later run. at that time we need to skip them, so that we don't add two
+- # different rules for the same moc file
+- GET_SOURCE_FILE_PROPERTY(_skip ${_abs_FILE} SKIP_AUTOMOC)
+-
+- IF ( NOT _skip AND EXISTS ${_abs_FILE} )
+-
+- FILE(READ ${_abs_FILE} _contents)
+-
+- GET_FILENAME_COMPONENT(_abs_PATH ${_abs_FILE} PATH)
+-
+- STRING(REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _match "${_contents}")
+- IF(_match)
+- FOREACH (_current_MOC_INC ${_match})
+- STRING(REGEX MATCH "[^ <\"]+\\.moc" _current_MOC "${_current_MOC_INC}")
+-
+- GET_filename_component(_basename ${_current_MOC} NAME_WE)
+- # SET(_header ${CMAKE_CURRENT_SOURCE_DIR}/${_basename}.h)
+- IF (EXISTS ${_abs_PATH}/${_basename}.h)
+- SET(_header ${_abs_PATH}/${_basename}.h)
+- ELSE (EXISTS ${_abs_PATH}/${_basename}.h)
+- SET(_header ${_abs_FILE})
+- ENDIF (EXISTS ${_abs_PATH}/${_basename}.h)
+- SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_current_MOC})
+- ADD_CUSTOM_COMMAND(OUTPUT ${_moc}
+- COMMAND ${QT4_MOC_EXECUTABLE}
+- ARGS ${_moc_INCS} ${_header} -o ${_moc}
+- DEPENDS ${_header}
+- )
+-
+- MACRO_ADD_FILE_DEPENDENCIES(${_abs_FILE} ${_moc})
+- ENDFOREACH (_current_MOC_INC)
+- ENDIF(_match)
+- ENDIF ( NOT _skip AND EXISTS ${_abs_FILE} )
+- ENDFOREACH (_current_FILE)
+- ENDMACRO(QT4_AUTOMOC)
+-
+-
+-
+- ######################################
+- #
+- # decide if Qt got found
+- #
+- ######################################
+-
+- # if the includes,libraries,moc,uic and rcc are found then we have it
+- IF( QT4_LIBRARY_DIR AND QT4_INCLUDE_DIR AND QT4_MOC_EXECUTABLE AND QT4_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE)
+- SET( QT4_FOUND "YES" )
+- IF( NOT Qt4_FIND_QUIETLY)
+- MESSAGE(STATUS "Found Qt-Version ${QTVERSION} (using ${QT_QMAKE_EXECUTABLE})")
+- ENDIF( NOT Qt4_FIND_QUIETLY)
+- ELSE( QT4_LIBRARY_DIR AND QT4_INCLUDE_DIR AND QT4_MOC_EXECUTABLE AND QT4_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE)
+- SET( QT4_FOUND "NO")
+- SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE)
+- IF( Qt4_FIND_REQUIRED)
+- IF ( NOT QT4_LIBRARY_DIR )
+- MESSAGE(STATUS "Qt libraries NOT found!")
+- ENDIF(NOT QT4_LIBRARY_DIR )
+- IF ( NOT QT4_INCLUDE_DIR )
+- MESSAGE(STATUS "Qt includes NOT found!")
+- ENDIF( NOT QT4_INCLUDE_DIR )
+- IF ( NOT QT4_MOC_EXECUTABLE )
+- MESSAGE(STATUS "Qt's moc NOT found!")
+- ENDIF( NOT QT4_MOC_EXECUTABLE )
+- IF ( NOT QT4_UIC_EXECUTABLE )
+- MESSAGE(STATUS "Qt's uic NOT found!")
+- ENDIF( NOT QT4_UIC_EXECUTABLE )
+- IF ( NOT QT_RCC_EXECUTABLE )
+- MESSAGE(STATUS "Qt's rcc NOT found!")
+- ENDIF( NOT QT_RCC_EXECUTABLE )
+- MESSAGE( FATAL_ERROR "Qt libraries, includes, moc, uic or/and rcc NOT found!")
+- ENDIF( Qt4_FIND_REQUIRED)
+- ENDIF( QT4_LIBRARY_DIR AND QT4_INCLUDE_DIR AND QT4_MOC_EXECUTABLE AND QT4_UIC_EXECUTABLE AND QT_RCC_EXECUTABLE)
+- SET(QT_FOUND ${QT4_FOUND})
+-
+-
+- #######################################
+- #
+- # System dependent settings
+- #
+- #######################################
+- # for unix add X11 stuff
+- IF(UNIX)
+- # on OS X X11 may not be required
+- IF (Q_WS_X11)
+- FIND_PACKAGE(X11 REQUIRED)
+- ENDIF (Q_WS_X11)
+- FIND_PACKAGE(Threads)
+- SET(QT4_QTCORE_LIBRARY ${QT4_QTCORE_LIBRARY} ${CMAKE_THREAD_LIBS_INIT})
+- ENDIF(UNIX)
+-
+-
+- #######################################
+- #
+- # compatibility settings
+- #
+- #######################################
+- # Backwards compatibility for CMake1.4 and 1.2
+- SET (QT_MOC_EXE ${QT4_MOC_EXECUTABLE} )
+- SET (QT_UIC_EXE ${QT4_UIC_EXECUTABLE} )
+-
+- SET( QT4_QT_LIBRARY "")
+-
+-ELSE(QT4_QMAKE_FOUND)
+-
+- SET(QT_QMAKE_EXECUTABLE "${QT_QMAKE_EXECUTABLE}-NOTFOUND" CACHE FILEPATH "Invalid qmake found" FORCE)
+- IF(Qt4_FIND_REQUIRED)
+- IF(QT4_INSTALLED_VERSION_TOO_OLD)
+- MESSAGE(FATAL_ERROR "The installed Qt version ${QTVERSION} is too old, at least version ${QT4_MIN_VERSION} is required")
+- ELSE(QT4_INSTALLED_VERSION_TOO_OLD)
+- MESSAGE( FATAL_ERROR "Qt qmake not found!")
+- ENDIF(QT4_INSTALLED_VERSION_TOO_OLD)
+- ELSE(Qt4_FIND_REQUIRED)
+- IF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY)
+- MESSAGE(STATUS "The installed Qt version ${QTVERSION} is too old, at least version ${QT4_MIN_VERSION} is required")
+- ENDIF(QT4_INSTALLED_VERSION_TOO_OLD AND NOT Qt4_FIND_QUIETLY)
+- ENDIF(Qt4_FIND_REQUIRED)
+-
+-ENDIF (QT4_QMAKE_FOUND)
+-ENDIF (QT4_QMAKE_FOUND)
+-
+diff --git a/poppler-qt4.pc.cmake b/poppler-qt4.pc.cmake
+deleted file mode 100644
+index 46a37f6d..00000000
+--- a/poppler-qt4.pc.cmake
++++ /dev/null
+@@ -1,12 +0,0 @@
+-prefix=@CMAKE_INSTALL_PREFIX@
+-libdir=@CMAKE_INSTALL_FULL_LIBDIR@
+-includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
+-
+-Name: poppler-qt4
+-Description: Qt4 bindings for poppler
+-Version: @POPPLER_VERSION@
+-Requires: @PC_REQUIRES@
+-@PC_REQUIRES_PRIVATE@
+-
+-Libs: -L${libdir} -lpoppler-qt4
+-Cflags: -I${includedir}/poppler/qt4
+diff --git a/qt4/.gitignore b/qt4/.gitignore
+deleted file mode 100644
+index 5540f35d..00000000
+--- a/qt4/.gitignore
++++ /dev/null
+@@ -1,4 +0,0 @@
+-Makefile
+-Makefile.in
+-*~
+-
+diff --git a/qt4/CMakeLists.txt b/qt4/CMakeLists.txt
+deleted file mode 100644
+index 4d345681..00000000
+--- a/qt4/CMakeLists.txt
++++ /dev/null
+@@ -1,6 +0,0 @@
+-# Qt4 headers are not override clean so disable suggest-override if it's there
+-string(REPLACE "-Wsuggest-override" " " CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
+-
+-add_subdirectory(src)
+-add_subdirectory(tests)
+-add_subdirectory(demos)
+diff --git a/qt4/demos/.gitignore b/qt4/demos/.gitignore
+deleted file mode 100644
+index 9639e685..00000000
+--- a/qt4/demos/.gitignore
++++ /dev/null
+@@ -1,4 +0,0 @@
+-.deps
+-.libs
+-*moc
+-poppler_qt4viewer
+diff --git a/qt4/demos/CMakeLists.txt b/qt4/demos/CMakeLists.txt
+deleted file mode 100644
+index 76accf81..00000000
+--- a/qt4/demos/CMakeLists.txt
++++ /dev/null
+@@ -1,28 +0,0 @@
+-add_definitions(${QT4_DEFINITIONS})
+-
+-include_directories(
+- ${CMAKE_CURRENT_SOURCE_DIR}
+- ${CMAKE_CURRENT_SOURCE_DIR}/../src
+- ${CMAKE_CURRENT_BINARY_DIR}
+- ${QT4_INCLUDE_DIR}
+-)
+-
+-set(poppler_qt4viewer_SRCS
+- abstractinfodock.cpp
+- documentobserver.cpp
+- embeddedfiles.cpp
+- fonts.cpp
+- info.cpp
+- main_viewer.cpp
+- metadata.cpp
+- navigationtoolbar.cpp
+- optcontent.cpp
+- pageview.cpp
+- permissions.cpp
+- thumbnails.cpp
+- toc.cpp
+- viewer.cpp
+-)
+-qt4_automoc(${poppler_qt4viewer_SRCS})
+-poppler_add_test(poppler_qt4viewer BUILD_QT4_TESTS ${poppler_qt4viewer_SRCS})
+-target_link_libraries(poppler_qt4viewer poppler-qt4)
+diff --git a/qt4/demos/abstractinfodock.cpp b/qt4/demos/abstractinfodock.cpp
+deleted file mode 100644
+index 7b306d82..00000000
+--- a/qt4/demos/abstractinfodock.cpp
++++ /dev/null
+@@ -1,57 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "fonts.h"
+-
+-AbstractInfoDock::AbstractInfoDock(QWidget *parent)
+- : QDockWidget(parent), m_filled(false)
+-{
+- connect(this, SIGNAL(visibilityChanged(bool)), SLOT(slotVisibilityChanged(bool)));
+-}
+-
+-AbstractInfoDock::~AbstractInfoDock()
+-{
+-}
+-
+-void AbstractInfoDock::documentLoaded()
+-{
+- if (!isHidden()) {
+- fillInfo();
+- m_filled = true;
+- }
+-}
+-
+-void AbstractInfoDock::documentClosed()
+-{
+- m_filled = false;
+-}
+-
+-void AbstractInfoDock::pageChanged(int page)
+-{
+- Q_UNUSED(page)
+-}
+-
+-void AbstractInfoDock::slotVisibilityChanged(bool visible)
+-{
+- if (visible && document() && !m_filled) {
+- fillInfo();
+- m_filled = true;
+- }
+-}
+-
+-#include "abstractinfodock.moc"
+diff --git a/qt4/demos/abstractinfodock.h b/qt4/demos/abstractinfodock.h
+deleted file mode 100644
+index 2593325a..00000000
+--- a/qt4/demos/abstractinfodock.h
++++ /dev/null
+@@ -1,48 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef ABSTRACTINFODOCK_H
+-#define ABSTRACTINFODOCK_H
+-
+-#include <QtGui/QDockWidget>
+-
+-#include "documentobserver.h"
+-
+-class AbstractInfoDock : public QDockWidget, public DocumentObserver
+-{
+- Q_OBJECT
+-
+-public:
+- AbstractInfoDock(QWidget *parent = 0);
+- ~AbstractInfoDock();
+-
+- /*virtual*/ void documentLoaded();
+- /*virtual*/ void documentClosed();
+- /*virtual*/ void pageChanged(int page);
+-
+-protected:
+- virtual void fillInfo() = 0;
+-
+-private Q_SLOTS:
+- void slotVisibilityChanged(bool visible);
+-
+-private:
+- bool m_filled;
+-};
+-
+-#endif
+diff --git a/qt4/demos/documentobserver.cpp b/qt4/demos/documentobserver.cpp
+deleted file mode 100644
+index e5c283db..00000000
+--- a/qt4/demos/documentobserver.cpp
++++ /dev/null
+@@ -1,50 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "documentobserver.h"
+-
+-#include "viewer.h"
+-
+-DocumentObserver::DocumentObserver()
+- : m_viewer(0)
+-{
+-}
+-
+-DocumentObserver::~DocumentObserver()
+-{
+-}
+-
+-Poppler::Document* DocumentObserver::document() const
+-{
+- return m_viewer->m_doc;
+-}
+-
+-void DocumentObserver::setPage(int page)
+-{
+- m_viewer->setPage(page);
+-}
+-
+-int DocumentObserver::page() const
+-{
+- return m_viewer->page();
+-}
+-
+-void DocumentObserver::reloadPage()
+-{
+- m_viewer->setPage(m_viewer->page());
+-}
+diff --git a/qt4/demos/documentobserver.h b/qt4/demos/documentobserver.h
+deleted file mode 100644
+index 38fe2043..00000000
+--- a/qt4/demos/documentobserver.h
++++ /dev/null
+@@ -1,50 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef DOCUMENTOBSERVER_H
+-#define DOCUMENTOBSERVER_H
+-
+-class PdfViewer;
+-namespace Poppler {
+-class Document;
+-}
+-
+-class DocumentObserver
+-{
+-friend class PdfViewer;
+-
+-public:
+- virtual ~DocumentObserver();
+-
+- virtual void documentLoaded() = 0;
+- virtual void documentClosed() = 0;
+- virtual void pageChanged(int page) = 0;
+-
+-protected:
+- DocumentObserver();
+-
+- Poppler::Document* document() const;
+- void setPage(int page);
+- int page() const;
+- void reloadPage();
+-
+-private:
+- PdfViewer *m_viewer;
+-};
+-
+-#endif
+diff --git a/qt4/demos/embeddedfiles.cpp b/qt4/demos/embeddedfiles.cpp
+deleted file mode 100644
+index 22f9da7a..00000000
+--- a/qt4/demos/embeddedfiles.cpp
++++ /dev/null
+@@ -1,82 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "embeddedfiles.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QTableWidget>
+-
+-EmbeddedFilesDock::EmbeddedFilesDock(QWidget *parent)
+- : AbstractInfoDock(parent)
+-{
+- m_table = new QTableWidget(this);
+- setWidget(m_table);
+- setWindowTitle(tr("Embedded files"));
+- m_table->setColumnCount(6);
+- m_table->setHorizontalHeaderLabels(
+- QStringList() << tr("Name") << tr("Description") << tr("Size") << tr("Creation date")
+- << tr("Modification date") << tr("Checksum"));
+- m_table->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);
+-}
+-
+-EmbeddedFilesDock::~EmbeddedFilesDock()
+-{
+-}
+-
+-void EmbeddedFilesDock::fillInfo()
+-{
+- m_table->setHorizontalHeaderLabels(
+- QStringList() << tr("Name") << tr("Description") << tr("Size") << tr("Creation date")
+- << tr("Modification date") << tr("Checksum"));
+- if (!document()->hasEmbeddedFiles()) {
+- m_table->setItem(0, 0, new QTableWidgetItem(tr("No files")));
+- return;
+- }
+-
+- const QList<Poppler::EmbeddedFile*> files = document()->embeddedFiles();
+- m_table->setRowCount(files.count());
+- int i = 0;
+- Q_FOREACH(Poppler::EmbeddedFile *file, files) {
+- m_table->setItem(i, 0, new QTableWidgetItem(file->name()));
+- m_table->setItem(i, 1, new QTableWidgetItem(file->description()));
+- m_table->setItem(i, 2, new QTableWidgetItem(QString::number(file->size())));
+- m_table->setItem(i, 3, new QTableWidgetItem(file->createDate().toString(Qt::SystemLocaleDate)));
+- m_table->setItem(i, 4, new QTableWidgetItem(file->modDate().toString(Qt::SystemLocaleDate)));
+- const QByteArray checksum = file->checksum();
+- const QString checksumString = !checksum.isEmpty() ? QString::fromAscii(checksum.toHex()) : QString::fromLatin1("n/a");
+- m_table->setItem(i, 5, new QTableWidgetItem(checksumString));
+- ++i;
+- }
+-}
+-
+-void EmbeddedFilesDock::documentLoaded()
+-{
+- if ( document()->pageMode() == Poppler::Document::UseAttach ) {
+- show();
+- }
+-}
+-
+-void EmbeddedFilesDock::documentClosed()
+-{
+- m_table->clear();
+- m_table->setRowCount(0);
+- AbstractInfoDock::documentClosed();
+-}
+-
+-#include "embeddedfiles.moc"
+diff --git a/qt4/demos/embeddedfiles.h b/qt4/demos/embeddedfiles.h
+deleted file mode 100644
+index 7cd60397..00000000
+--- a/qt4/demos/embeddedfiles.h
++++ /dev/null
+@@ -1,44 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef ATTACHMENTS_H
+-#define ATTACHMENTS_H
+-
+-#include "abstractinfodock.h"
+-
+-class QTableWidget;
+-
+-class EmbeddedFilesDock : public AbstractInfoDock
+-{
+- Q_OBJECT
+-
+-public:
+- EmbeddedFilesDock(QWidget *parent = 0);
+- ~EmbeddedFilesDock();
+-
+- virtual void documentLoaded();
+- /*virtual*/ void documentClosed();
+-
+-protected:
+- /*virtual*/ void fillInfo();
+-
+-private:
+- QTableWidget *m_table;
+-};
+-
+-#endif
+diff --git a/qt4/demos/fonts.cpp b/qt4/demos/fonts.cpp
+deleted file mode 100644
+index bd342bd2..00000000
+--- a/qt4/demos/fonts.cpp
++++ /dev/null
+@@ -1,72 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "fonts.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QTableWidget>
+-
+-static QString yesNoStatement(bool value)
+-{
+- return value ? QString::fromLatin1("yes") : QString::fromLatin1("no");
+-}
+-
+-FontsDock::FontsDock(QWidget *parent)
+- : AbstractInfoDock(parent)
+-{
+- m_table = new QTableWidget(this);
+- setWidget(m_table);
+- setWindowTitle(tr("Fonts"));
+- m_table->setColumnCount(5);
+- m_table->setHorizontalHeaderLabels(QStringList() << tr("Name") << tr("Type") << tr("Embedded") << tr("Subset") << tr("File"));
+- m_table->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);
+-}
+-
+-FontsDock::~FontsDock()
+-{
+-}
+-
+-void FontsDock::fillInfo()
+-{
+- const QList<Poppler::FontInfo> fonts = document()->fonts();
+- m_table->setHorizontalHeaderLabels(QStringList() << tr("Name") << tr("Type") << tr("Embedded") << tr("Subset") << tr("File"));
+- m_table->setRowCount(fonts.count());
+- int i = 0;
+- Q_FOREACH(const Poppler::FontInfo &font, fonts) {
+- if (font.name().isNull()) {
+- m_table->setItem(i, 0, new QTableWidgetItem(QString::fromLatin1("[none]")));
+- } else {
+- m_table->setItem(i, 0, new QTableWidgetItem(font.name()));
+- }
+- m_table->setItem(i, 1, new QTableWidgetItem(font.typeName()));
+- m_table->setItem(i, 2, new QTableWidgetItem(yesNoStatement(font.isEmbedded())));
+- m_table->setItem(i, 3, new QTableWidgetItem(yesNoStatement(font.isSubset())));
+- m_table->setItem(i, 4, new QTableWidgetItem(font.file()));
+- ++i;
+- }
+-}
+-
+-void FontsDock::documentClosed()
+-{
+- m_table->clear();
+- m_table->setRowCount(0);
+- AbstractInfoDock::documentClosed();
+-}
+-
+-#include "fonts.moc"
+diff --git a/qt4/demos/fonts.h b/qt4/demos/fonts.h
+deleted file mode 100644
+index 81afa579..00000000
+--- a/qt4/demos/fonts.h
++++ /dev/null
+@@ -1,43 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef FONTS_H
+-#define FONTS_H
+-
+-#include "abstractinfodock.h"
+-
+-class QTableWidget;
+-
+-class FontsDock : public AbstractInfoDock
+-{
+- Q_OBJECT
+-
+-public:
+- FontsDock(QWidget *parent = 0);
+- ~FontsDock();
+-
+- /*virtual*/ void documentClosed();
+-
+-protected:
+- /*virtual*/ void fillInfo();
+-
+-private:
+- QTableWidget *m_table;
+-};
+-
+-#endif
+diff --git a/qt4/demos/info.cpp b/qt4/demos/info.cpp
+deleted file mode 100644
+index 6491e0e4..00000000
+--- a/qt4/demos/info.cpp
++++ /dev/null
+@@ -1,72 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "info.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QTableWidget>
+-
+-InfoDock::InfoDock(QWidget *parent)
+- : AbstractInfoDock(parent)
+-{
+- m_table = new QTableWidget(this);
+- setWidget(m_table);
+- setWindowTitle(tr("Information"));
+- m_table->setColumnCount(2);
+- m_table->setHorizontalHeaderLabels(QStringList() << tr("Key") << tr("Value"));
+- m_table->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);
+-}
+-
+-InfoDock::~InfoDock()
+-{
+-}
+-
+-void InfoDock::fillInfo()
+-{
+- QStringList keys = document()->infoKeys();
+- m_table->setHorizontalHeaderLabels(QStringList() << tr("Key") << tr("Value"));
+- m_table->setRowCount(keys.count());
+- QStringList dateKeys;
+- dateKeys << QString::fromLatin1("CreationDate");
+- dateKeys << QString::fromLatin1("ModDate");
+- int i = 0;
+- Q_FOREACH(const QString &date, dateKeys) {
+- const int id = keys.indexOf(date);
+- if (id != -1) {
+- m_table->setItem(i, 0, new QTableWidgetItem(date));
+- m_table->setItem(i, 1, new QTableWidgetItem(document()->date(date).toString(Qt::SystemLocaleDate)));
+- ++i;
+- keys.removeAt(id);
+- }
+- }
+- Q_FOREACH(const QString &key, keys) {
+- m_table->setItem(i, 0, new QTableWidgetItem(key));
+- m_table->setItem(i, 1, new QTableWidgetItem(document()->info(key)));
+- ++i;
+- }
+-}
+-
+-void InfoDock::documentClosed()
+-{
+- m_table->clear();
+- m_table->setRowCount(0);
+- AbstractInfoDock::documentClosed();
+-}
+-
+-#include "info.moc"
+diff --git a/qt4/demos/info.h b/qt4/demos/info.h
+deleted file mode 100644
+index d294b430..00000000
+--- a/qt4/demos/info.h
++++ /dev/null
+@@ -1,43 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef INFO_H
+-#define INFO_H
+-
+-#include "abstractinfodock.h"
+-
+-class QTableWidget;
+-
+-class InfoDock : public AbstractInfoDock
+-{
+- Q_OBJECT
+-
+-public:
+- InfoDock(QWidget *parent = 0);
+- ~InfoDock();
+-
+- /*virtual*/ void documentClosed();
+-
+-protected:
+- /*virtual*/ void fillInfo();
+-
+-private:
+- QTableWidget *m_table;
+-};
+-
+-#endif
+diff --git a/qt4/demos/main_viewer.cpp b/qt4/demos/main_viewer.cpp
+deleted file mode 100644
+index 3f7080f2..00000000
+--- a/qt4/demos/main_viewer.cpp
++++ /dev/null
+@@ -1,33 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "viewer.h"
+-
+-#include <QtGui/QApplication>
+-
+-int main(int argc, char *argv[])
+-{
+- QApplication app(argc, argv);
+- const QStringList args = QCoreApplication::arguments();
+- PdfViewer *viewer = new PdfViewer();
+- viewer->show();
+- if (args.count() > 1) {
+- viewer->loadDocument(args.at(1));
+- }
+- return app.exec();
+-}
+diff --git a/qt4/demos/metadata.cpp b/qt4/demos/metadata.cpp
+deleted file mode 100644
+index e5c7111d..00000000
+--- a/qt4/demos/metadata.cpp
++++ /dev/null
+@@ -1,50 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "metadata.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QTextEdit>
+-
+-MetadataDock::MetadataDock(QWidget *parent)
+- : AbstractInfoDock(parent)
+-{
+- m_edit = new QTextEdit(this);
+- setWidget(m_edit);
+- setWindowTitle(tr("Metadata"));
+- m_edit->setAcceptRichText(false);
+- m_edit->setReadOnly(true);
+-}
+-
+-MetadataDock::~MetadataDock()
+-{
+-}
+-
+-void MetadataDock::fillInfo()
+-{
+- m_edit->setPlainText(document()->metadata());
+-}
+-
+-void MetadataDock::documentClosed()
+-{
+- m_edit->clear();
+- AbstractInfoDock::documentClosed();
+-}
+-
+-#include "metadata.moc"
+diff --git a/qt4/demos/metadata.h b/qt4/demos/metadata.h
+deleted file mode 100644
+index 6f1507a6..00000000
+--- a/qt4/demos/metadata.h
++++ /dev/null
+@@ -1,43 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef METADATA_H
+-#define METADATA_H
+-
+-#include "abstractinfodock.h"
+-
+-class QTextEdit;
+-
+-class MetadataDock : public AbstractInfoDock
+-{
+- Q_OBJECT
+-
+-public:
+- MetadataDock(QWidget *parent = 0);
+- ~MetadataDock();
+-
+- /*virtual*/ void documentClosed();
+-
+-protected:
+- /*virtual*/ void fillInfo();
+-
+-private:
+- QTextEdit *m_edit;
+-};
+-
+-#endif
+diff --git a/qt4/demos/navigationtoolbar.cpp b/qt4/demos/navigationtoolbar.cpp
+deleted file mode 100644
+index 79dd418a..00000000
+--- a/qt4/demos/navigationtoolbar.cpp
++++ /dev/null
+@@ -1,144 +0,0 @@
+-/*
+- * Copyright (C) 2008-2009, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2013, Fabio D'Urso <fabiodurso@hotmail.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "navigationtoolbar.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QAction>
+-#include <QtGui/QComboBox>
+-
+-NavigationToolBar::NavigationToolBar(QWidget *parent)
+- : QToolBar(parent)
+-{
+- m_firstAct = addAction(tr("First"), this, SLOT(slotGoFirst()));
+- m_prevAct = addAction(tr("Previous"), this, SLOT(slotGoPrev()));
+- m_pageCombo = new QComboBox(this);
+- connect(m_pageCombo, SIGNAL(activated(int)), this, SLOT(slotComboActivated(int)));
+- addWidget(m_pageCombo);
+- m_nextAct = addAction(tr("Next"), this, SLOT(slotGoNext()));
+- m_lastAct = addAction(tr("Last"), this, SLOT(slotGoLast()));
+-
+- addSeparator();
+-
+- m_zoomCombo = new QComboBox(this);
+- m_zoomCombo->setEditable(true);
+- m_zoomCombo->addItem(tr("10%"));
+- m_zoomCombo->addItem(tr("25%"));
+- m_zoomCombo->addItem(tr("33%"));
+- m_zoomCombo->addItem(tr("50%"));
+- m_zoomCombo->addItem(tr("66%"));
+- m_zoomCombo->addItem(tr("75%"));
+- m_zoomCombo->addItem(tr("100%"));
+- m_zoomCombo->addItem(tr("125%"));
+- m_zoomCombo->addItem(tr("150%"));
+- m_zoomCombo->addItem(tr("200%"));
+- m_zoomCombo->addItem(tr("300%"));
+- m_zoomCombo->addItem(tr("400%"));
+- m_zoomCombo->setCurrentIndex(6); // "100%"
+- connect(m_zoomCombo, SIGNAL(currentIndexChanged(QString)), this, SLOT(slotZoomComboChanged(QString)));
+- addWidget(m_zoomCombo);
+-
+- m_rotationCombo = new QComboBox(this);
+- // NOTE: \302\260 = degree symbol
+- m_rotationCombo->addItem(trUtf8("0\302\260"));
+- m_rotationCombo->addItem(trUtf8("90\302\260"));
+- m_rotationCombo->addItem(trUtf8("180\302\260"));
+- m_rotationCombo->addItem(trUtf8("270\302\260"));
+- connect(m_rotationCombo, SIGNAL(currentIndexChanged(int)), this, SLOT(slotRotationComboChanged(int)));
+- addWidget(m_rotationCombo);
+-
+- documentClosed();
+-}
+-
+-NavigationToolBar::~NavigationToolBar()
+-{
+-}
+-
+-void NavigationToolBar::documentLoaded()
+-{
+- const int pageCount = document()->numPages();
+- for (int i = 0; i < pageCount; ++i) {
+- m_pageCombo->addItem(QString::number(i + 1));
+- }
+- m_pageCombo->setEnabled(true);
+-}
+-
+-void NavigationToolBar::documentClosed()
+-{
+- m_firstAct->setEnabled(false);
+- m_prevAct->setEnabled(false);
+- m_nextAct->setEnabled(false);
+- m_lastAct->setEnabled(false);
+- m_pageCombo->clear();
+- m_pageCombo->setEnabled(false);
+-}
+-
+-void NavigationToolBar::pageChanged(int page)
+-{
+- const int pageCount = document()->numPages();
+- m_firstAct->setEnabled(page > 0);
+- m_prevAct->setEnabled(page > 0);
+- m_nextAct->setEnabled(page < (pageCount - 1));
+- m_lastAct->setEnabled(page < (pageCount - 1));
+- m_pageCombo->setCurrentIndex(page);
+-}
+-
+-void NavigationToolBar::slotGoFirst()
+-{
+- setPage(0);
+-}
+-
+-void NavigationToolBar::slotGoPrev()
+-{
+- setPage(page() - 1);
+-}
+-
+-void NavigationToolBar::slotGoNext()
+-{
+- setPage(page() + 1);
+-}
+-
+-void NavigationToolBar::slotGoLast()
+-{
+- setPage(document()->numPages() - 1);
+-}
+-
+-void NavigationToolBar::slotComboActivated(int index)
+-{
+- setPage(index);
+-}
+-
+-void NavigationToolBar::slotZoomComboChanged(const QString &_text)
+-{
+- QString text = _text;
+- text.remove(QLatin1Char('%'));
+- bool ok = false;
+- int value = text.toInt(&ok);
+- if (ok && value >= 10) {
+- emit zoomChanged(qreal(value) / 100);
+- }
+-}
+-
+-void NavigationToolBar::slotRotationComboChanged(int idx)
+-{
+- emit rotationChanged(idx * 90);
+-}
+-
+-#include "navigationtoolbar.moc"
+diff --git a/qt4/demos/navigationtoolbar.h b/qt4/demos/navigationtoolbar.h
+deleted file mode 100644
+index d7dbd5dd..00000000
+--- a/qt4/demos/navigationtoolbar.h
++++ /dev/null
+@@ -1,65 +0,0 @@
+-/*
+- * Copyright (C) 2008-2009, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2013, Fabio D'Urso <fabiodurso@hotmail.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef NAVIGATIONTOOLBAR_H
+-#define NAVIGATIONTOOLBAR_H
+-
+-#include <QtGui/QToolBar>
+-
+-#include "documentobserver.h"
+-
+-class QAction;
+-class QComboBox;
+-
+-class NavigationToolBar : public QToolBar, public DocumentObserver
+-{
+- Q_OBJECT
+-
+-public:
+- NavigationToolBar(QWidget *parent = 0);
+- ~NavigationToolBar();
+-
+- /*virtual*/ void documentLoaded();
+- /*virtual*/ void documentClosed();
+- /*virtual*/ void pageChanged(int page);
+-
+-Q_SIGNALS:
+- void zoomChanged(qreal value);
+- void rotationChanged(int rotation);
+-
+-private Q_SLOTS:
+- void slotGoFirst();
+- void slotGoPrev();
+- void slotGoNext();
+- void slotGoLast();
+- void slotComboActivated(int index);
+- void slotZoomComboChanged(const QString &text);
+- void slotRotationComboChanged(int idx);
+-
+-private:
+- QAction *m_firstAct;
+- QAction *m_prevAct;
+- QComboBox *m_pageCombo;
+- QAction *m_nextAct;
+- QAction *m_lastAct;
+- QComboBox *m_zoomCombo;
+- QComboBox *m_rotationCombo;
+-};
+-
+-#endif
+diff --git a/qt4/demos/optcontent.cpp b/qt4/demos/optcontent.cpp
+deleted file mode 100644
+index 0c1015b9..00000000
+--- a/qt4/demos/optcontent.cpp
++++ /dev/null
+@@ -1,69 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "optcontent.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QTreeView>
+-
+-OptContentDock::OptContentDock(QWidget *parent)
+- : AbstractInfoDock(parent)
+-{
+- m_view = new QTreeView(this);
+- setWidget(m_view);
+- setWindowTitle(tr("Optional content"));
+- m_view->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);
+-}
+-
+-OptContentDock::~OptContentDock()
+-{
+-}
+-
+-
+-void OptContentDock::documentLoaded()
+-{
+- AbstractInfoDock::documentLoaded();
+- if ( document()->pageMode() == Poppler::Document::UseOC ) {
+- show();
+- }
+-}
+-
+-void OptContentDock::fillInfo()
+-{
+- if (!document()->hasOptionalContent()) {
+- return;
+- }
+-
+- m_view->setModel(document()->optionalContentModel());
+- connect(m_view->model(), SIGNAL(dataChanged(QModelIndex, QModelIndex)), this, SLOT(reloadImage()));
+- m_view->expandToDepth(1);
+-}
+-
+-void OptContentDock::documentClosed()
+-{
+- m_view->setModel(0);
+- AbstractInfoDock::documentClosed();
+-}
+-
+-void OptContentDock::reloadImage()
+-{
+- reloadPage();
+-}
+-
+-#include "optcontent.moc"
+diff --git a/qt4/demos/optcontent.h b/qt4/demos/optcontent.h
+deleted file mode 100644
+index b933f5cd..00000000
+--- a/qt4/demos/optcontent.h
++++ /dev/null
+@@ -1,47 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef OPTCONTENT_H
+-#define OPTCONTENT_H
+-
+-#include "abstractinfodock.h"
+-
+-class QTreeView;
+-
+-class OptContentDock : public AbstractInfoDock
+-{
+- Q_OBJECT
+-
+-public:
+- OptContentDock(QWidget *parent = 0);
+- ~OptContentDock();
+-
+- /*virtual*/ void documentLoaded();
+- /*virtual*/ void documentClosed();
+-
+-protected:
+- /*virtual*/ void fillInfo();
+-
+-private Q_SLOTS:
+- void reloadImage();
+-
+-private:
+- QTreeView *m_view;
+-};
+-
+-#endif
+diff --git a/qt4/demos/pageview.cpp b/qt4/demos/pageview.cpp
+deleted file mode 100644
+index 0dfa5e9e..00000000
+--- a/qt4/demos/pageview.cpp
++++ /dev/null
+@@ -1,101 +0,0 @@
+-/*
+- * Copyright (C) 2008-2009, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2013, Fabio D'Urso <fabiodurso@hotmail.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "pageview.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QApplication>
+-#include <QtGui/QDesktopWidget>
+-#include <QtGui/QImage>
+-#include <QtGui/QLabel>
+-#include <QtGui/QPixmap>
+-
+-PageView::PageView(QWidget *parent)
+- : QScrollArea(parent)
+- , m_zoom(1.0)
+- , m_rotation(0)
+- , m_dpiX(QApplication::desktop()->physicalDpiX())
+- , m_dpiY(QApplication::desktop()->physicalDpiY())
+-{
+- m_imageLabel = new QLabel(this);
+- m_imageLabel->resize(0, 0);
+- setWidget(m_imageLabel);
+-}
+-
+-PageView::~PageView()
+-{
+-}
+-
+-void PageView::documentLoaded()
+-{
+-}
+-
+-void PageView::documentClosed()
+-{
+- m_imageLabel->clear();
+- m_imageLabel->resize(0, 0);
+-}
+-
+-void PageView::pageChanged(int page)
+-{
+- Poppler::Page *popplerPage = document()->page(page);
+- const double resX = m_dpiX * m_zoom;
+- const double resY = m_dpiY * m_zoom;
+-
+- Poppler::Page::Rotation rot;
+- if (m_rotation == 0)
+- rot = Poppler::Page::Rotate0;
+- else if (m_rotation == 90)
+- rot = Poppler::Page::Rotate90;
+- else if (m_rotation == 180)
+- rot = Poppler::Page::Rotate180;
+- else // m_rotation == 270
+- rot = Poppler::Page::Rotate270;
+-
+- QImage image = popplerPage->renderToImage(resX, resY, -1, -1, -1, -1, rot);
+- if (!image.isNull()) {
+- m_imageLabel->resize(image.size());
+- m_imageLabel->setPixmap(QPixmap::fromImage(image));
+- } else {
+- m_imageLabel->resize(0, 0);
+- m_imageLabel->setPixmap(QPixmap());
+- }
+- delete popplerPage;
+-}
+-
+-void PageView::slotZoomChanged(qreal value)
+-{
+- m_zoom = value;
+- if (!document()) {
+- return;
+- }
+- reloadPage();
+-}
+-
+-void PageView::slotRotationChanged(int value)
+-{
+- m_rotation = value;
+- if (!document()) {
+- return;
+- }
+- reloadPage();
+-}
+-
+-#include "pageview.moc"
+diff --git a/qt4/demos/pageview.h b/qt4/demos/pageview.h
+deleted file mode 100644
+index 24065028..00000000
+--- a/qt4/demos/pageview.h
++++ /dev/null
+@@ -1,53 +0,0 @@
+-/*
+- * Copyright (C) 2008-2009, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2013, Fabio D'Urso <fabiodurso@hotmail.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef PAGEVIEW_H
+-#define PAGEVIEW_H
+-
+-#include <QtGui/QScrollArea>
+-
+-#include "documentobserver.h"
+-
+-class QLabel;
+-
+-class PageView : public QScrollArea, public DocumentObserver
+-{
+- Q_OBJECT
+-
+-public:
+- PageView(QWidget *parent = 0);
+- ~PageView();
+-
+- /*virtual*/ void documentLoaded();
+- /*virtual*/ void documentClosed();
+- /*virtual*/ void pageChanged(int page);
+-
+-private Q_SLOTS:
+- void slotZoomChanged(qreal value);
+- void slotRotationChanged(int value);
+-
+-private:
+- QLabel *m_imageLabel;
+- qreal m_zoom;
+- int m_rotation;
+- int m_dpiX;
+- int m_dpiY;
+-};
+-
+-#endif
+diff --git a/qt4/demos/permissions.cpp b/qt4/demos/permissions.cpp
+deleted file mode 100644
+index 38205b2e..00000000
+--- a/qt4/demos/permissions.cpp
++++ /dev/null
+@@ -1,66 +0,0 @@
+-/*
+- * Copyright (C) 2008-2009, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "permissions.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QListWidget>
+-
+-PermissionsDock::PermissionsDock(QWidget *parent)
+- : AbstractInfoDock(parent)
+-{
+- m_table = new QListWidget(this);
+- setWidget(m_table);
+- setWindowTitle(tr("Permissions"));
+- m_table->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);
+-}
+-
+-PermissionsDock::~PermissionsDock()
+-{
+-}
+-
+-void PermissionsDock::fillInfo()
+-{
+-#define ADD_ROW(title, function) \
+-do { \
+- QListWidgetItem *item = new QListWidgetItem(); \
+- item->setFlags(item->flags() & ~Qt::ItemIsEnabled); \
+- item->setText(title); \
+- item->setCheckState(document()->function() ? Qt::Checked : Qt::Unchecked); \
+- m_table->addItem(item); \
+-} while (0)
+- ADD_ROW("Print", okToPrint);
+- ADD_ROW("PrintHiRes", okToPrintHighRes);
+- ADD_ROW("Change", okToChange);
+- ADD_ROW("Copy", okToCopy);
+- ADD_ROW("Add Notes", okToAddNotes);
+- ADD_ROW("Fill Forms", okToFillForm);
+- ADD_ROW("Create Forms", okToCreateFormFields);
+- ADD_ROW("Extract for accessibility", okToExtractForAccessibility);
+- ADD_ROW("Assemble", okToAssemble);
+-#undef ADD_ROW
+-}
+-
+-void PermissionsDock::documentClosed()
+-{
+- m_table->clear();
+- AbstractInfoDock::documentClosed();
+-}
+-
+-#include "permissions.moc"
+diff --git a/qt4/demos/permissions.h b/qt4/demos/permissions.h
+deleted file mode 100644
+index 13bcbbf0..00000000
+--- a/qt4/demos/permissions.h
++++ /dev/null
+@@ -1,43 +0,0 @@
+-/*
+- * Copyright (C) 2008-2009, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef PERMISSIONS_H
+-#define PERMISSIONS_H
+-
+-#include "abstractinfodock.h"
+-
+-class QListWidget;
+-
+-class PermissionsDock : public AbstractInfoDock
+-{
+- Q_OBJECT
+-
+-public:
+- PermissionsDock(QWidget *parent = 0);
+- ~PermissionsDock();
+-
+- /*virtual*/ void documentClosed();
+-
+-protected:
+- /*virtual*/ void fillInfo();
+-
+-private:
+- QListWidget *m_table;
+-};
+-
+-#endif
+diff --git a/qt4/demos/thumbnails.cpp b/qt4/demos/thumbnails.cpp
+deleted file mode 100644
+index 07b19ca7..00000000
+--- a/qt4/demos/thumbnails.cpp
++++ /dev/null
+@@ -1,84 +0,0 @@
+-/*
+- * Copyright (C) 2009, Shawn Rutledge <shawn.t.rutledge@gmail.com>
+- * Copyright (C) 2009, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "thumbnails.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QListWidget>
+-
+-static const int PageRole = Qt::UserRole + 1;
+-
+-ThumbnailsDock::ThumbnailsDock(QWidget *parent)
+- : AbstractInfoDock(parent)
+-{
+- m_list = new QListWidget(this);
+- setWidget(m_list);
+- setWindowTitle(tr("Thumbnails"));
+- m_list->setViewMode(QListView::ListMode);
+- m_list->setMovement(QListView::Static);
+- m_list->setVerticalScrollMode(QListView::ScrollPerPixel);
+- connect(m_list, SIGNAL(itemActivated(QListWidgetItem*)),
+- this, SLOT(slotItemActivated(QListWidgetItem*)));
+-}
+-
+-ThumbnailsDock::~ThumbnailsDock()
+-{
+-}
+-
+-void ThumbnailsDock::fillInfo()
+-{
+- const int num = document()->numPages();
+- QSize maxSize;
+- for (int i = 0; i < num; ++i) {
+- const Poppler::Page *page = document()->page(i);
+- const QImage image = page->thumbnail();
+- if (!image.isNull()) {
+- QListWidgetItem *item = new QListWidgetItem();
+- item->setText(QString::number(i + 1));
+- item->setData(Qt::DecorationRole, QPixmap::fromImage(image));
+- item->setData(PageRole, i);
+- m_list->addItem(item);
+- maxSize.setWidth(qMax(maxSize.width(), image.width()));
+- maxSize.setHeight(qMax(maxSize.height(), image.height()));
+- }
+- delete page;
+- }
+- if (num > 0) {
+- m_list->setGridSize(maxSize);
+- m_list->setIconSize(maxSize);
+- }
+-}
+-
+-void ThumbnailsDock::documentClosed()
+-{
+- m_list->clear();
+- AbstractInfoDock::documentClosed();
+-}
+-
+-void ThumbnailsDock::slotItemActivated(QListWidgetItem *item)
+-{
+- if (!item) {
+- return;
+- }
+-
+- setPage(item->data(PageRole).toInt());
+-}
+-
+-#include "thumbnails.moc"
+diff --git a/qt4/demos/thumbnails.h b/qt4/demos/thumbnails.h
+deleted file mode 100644
+index 076d5aee..00000000
+--- a/qt4/demos/thumbnails.h
++++ /dev/null
+@@ -1,48 +0,0 @@
+-/*
+- * Copyright (C) 2009, Shawn Rutledge <shawn.t.rutledge@gmail.com>
+- * Copyright (C) 2009, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef THUMBNAILS_H
+-#define THUMBNAILS_H
+-
+-#include "abstractinfodock.h"
+-
+-class QListWidget;
+-class QListWidgetItem;
+-
+-class ThumbnailsDock : public AbstractInfoDock
+-{
+- Q_OBJECT
+-
+-public:
+- ThumbnailsDock(QWidget *parent = 0);
+- ~ThumbnailsDock();
+-
+- /*virtual*/ void documentClosed();
+-
+-protected:
+- /*virtual*/ void fillInfo();
+-
+-private Q_SLOTS:
+- void slotItemActivated(QListWidgetItem *item);
+-
+-private:
+- QListWidget *m_list;
+-};
+-
+-#endif
+diff --git a/qt4/demos/toc.cpp b/qt4/demos/toc.cpp
+deleted file mode 100644
+index bf3e5cbb..00000000
+--- a/qt4/demos/toc.cpp
++++ /dev/null
+@@ -1,88 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "toc.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtGui/QHeaderView>
+-#include <QtGui/QTreeWidget>
+-
+-static void fillToc(const QDomNode &parent, QTreeWidget *tree, QTreeWidgetItem *parentItem)
+-{
+- QTreeWidgetItem *newitem = 0;
+- for (QDomNode node = parent.firstChild(); !node.isNull(); node = node.nextSibling()) {
+- QDomElement e = node.toElement();
+-
+- if (!parentItem) {
+- newitem = new QTreeWidgetItem(tree, newitem);
+- } else {
+- newitem = new QTreeWidgetItem(parentItem, newitem);
+- }
+- newitem->setText(0, e.tagName());
+-
+- bool isOpen = false;
+- if (e.hasAttribute(QString::fromLatin1("Open"))) {
+- isOpen = QVariant(e.attribute(QString::fromLatin1("Open"))).toBool();
+- }
+- if (isOpen) {
+- tree->expandItem(newitem);
+- }
+-
+- if (e.hasChildNodes()) {
+- fillToc(node, tree, newitem);
+- }
+- }
+-}
+-
+-
+-TocDock::TocDock(QWidget *parent)
+- : AbstractInfoDock(parent)
+-{
+- m_tree = new QTreeWidget(this);
+- setWidget(m_tree);
+- m_tree->setAlternatingRowColors(true);
+- m_tree->header()->hide();
+- setWindowTitle(tr("TOC"));
+- m_tree->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);
+-}
+-
+-TocDock::~TocDock()
+-{
+-}
+-
+-void TocDock::fillInfo()
+-{
+- const QDomDocument *toc = document()->toc();
+- if (toc) {
+- fillToc(*toc, m_tree, 0);
+- } else {
+- QTreeWidgetItem *item = new QTreeWidgetItem();
+- item->setText(0, tr("No TOC"));
+- item->setFlags(item->flags() & ~Qt::ItemIsEnabled);
+- m_tree->addTopLevelItem(item);
+- }
+-}
+-
+-void TocDock::documentClosed()
+-{
+- m_tree->clear();
+- AbstractInfoDock::documentClosed();
+-}
+-
+-#include "toc.moc"
+diff --git a/qt4/demos/toc.h b/qt4/demos/toc.h
+deleted file mode 100644
+index bbc90827..00000000
+--- a/qt4/demos/toc.h
++++ /dev/null
+@@ -1,43 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef TOC_H
+-#define TOC_H
+-
+-#include "abstractinfodock.h"
+-
+-class QTreeWidget;
+-
+-class TocDock : public AbstractInfoDock
+-{
+- Q_OBJECT
+-
+-public:
+- TocDock(QWidget *parent = 0);
+- ~TocDock();
+-
+- /*virtual*/ void documentClosed();
+-
+-protected:
+- /*virtual*/ void fillInfo();
+-
+-private:
+- QTreeWidget *m_tree;
+-};
+-
+-#endif
+diff --git a/qt4/demos/viewer.cpp b/qt4/demos/viewer.cpp
+deleted file mode 100644
+index c34af23f..00000000
+--- a/qt4/demos/viewer.cpp
++++ /dev/null
+@@ -1,319 +0,0 @@
+-/*
+- * Copyright (C) 2008-2009, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2008, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2009, Shawn Rutledge <shawn.t.rutledge@gmail.com>
+- * Copyright (C) 2013, Fabio D'Urso <fabiodurso@hotmail.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "viewer.h"
+-
+-#include "embeddedfiles.h"
+-#include "fonts.h"
+-#include "info.h"
+-#include "metadata.h"
+-#include "navigationtoolbar.h"
+-#include "optcontent.h"
+-#include "pageview.h"
+-#include "permissions.h"
+-#include "thumbnails.h"
+-#include "toc.h"
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtCore/QDir>
+-#include <QtGui/QAction>
+-#include <QtGui/QApplication>
+-#include <QtGui/QFileDialog>
+-#include <QtGui/QInputDialog>
+-#include <QtGui/QMenu>
+-#include <QtGui/QMenuBar>
+-#include <QtGui/QMessageBox>
+-
+-PdfViewer::PdfViewer()
+- : QMainWindow(), m_currentPage(0), m_doc(0)
+-{
+- setWindowTitle(tr("Poppler-Qt4 Demo"));
+-
+- // setup the menus
+- QMenu *fileMenu = menuBar()->addMenu(tr("&File"));
+- m_fileOpenAct = fileMenu->addAction(tr("&Open"), this, SLOT(slotOpenFile()));
+- m_fileOpenAct->setShortcut(Qt::CTRL + Qt::Key_O);
+- fileMenu->addSeparator();
+- m_fileSaveCopyAct = fileMenu->addAction(tr("&Save a Copy..."), this, SLOT(slotSaveCopy()));
+- m_fileSaveCopyAct->setShortcut(Qt::CTRL + Qt::SHIFT + Qt::Key_S);
+- m_fileSaveCopyAct->setEnabled(false);
+- fileMenu->addSeparator();
+- QAction *act = fileMenu->addAction(tr("&Quit"), qApp, SLOT(closeAllWindows()));
+- act->setShortcut(Qt::CTRL + Qt::Key_Q);
+-
+- QMenu *viewMenu = menuBar()->addMenu(tr("&View"));
+-
+- QMenu *settingsMenu = menuBar()->addMenu(tr("&Settings"));
+- m_settingsTextAAAct = settingsMenu->addAction(tr("Text Antialias"));
+- m_settingsTextAAAct->setCheckable(true);
+- connect(m_settingsTextAAAct, SIGNAL(toggled(bool)), this, SLOT(slotToggleTextAA(bool)));
+- m_settingsGfxAAAct = settingsMenu->addAction(tr("Graphics Antialias"));
+- m_settingsGfxAAAct->setCheckable(true);
+- connect(m_settingsGfxAAAct, SIGNAL(toggled(bool)), this, SLOT(slotToggleGfxAA(bool)));
+- QMenu *settingsRenderMenu = settingsMenu->addMenu(tr("Render Backend"));
+- m_settingsRenderBackendGrp = new QActionGroup(settingsRenderMenu);
+- m_settingsRenderBackendGrp->setExclusive(true);
+- act = settingsRenderMenu->addAction(tr("Splash"));
+- act->setCheckable(true);
+- act->setChecked(true);
+- act->setData(qVariantFromValue(0));
+- m_settingsRenderBackendGrp->addAction(act);
+- act = settingsRenderMenu->addAction(tr("Arthur"));
+- act->setCheckable(true);
+- act->setData(qVariantFromValue(1));
+- m_settingsRenderBackendGrp->addAction(act);
+- connect(m_settingsRenderBackendGrp, SIGNAL(triggered(QAction*)),
+- this, SLOT(slotRenderBackend(QAction*)));
+-
+- QMenu *helpMenu = menuBar()->addMenu(tr("&Help"));
+- act = helpMenu->addAction(tr("&About"), this, SLOT(slotAbout()));
+- act = helpMenu->addAction(tr("About &Qt"), this, SLOT(slotAboutQt()));
+-
+- NavigationToolBar *navbar = new NavigationToolBar(this);
+- addToolBar(navbar);
+- m_observers.append(navbar);
+-
+- PageView *view = new PageView(this);
+- setCentralWidget(view);
+- m_observers.append(view);
+-
+- InfoDock *infoDock = new InfoDock(this);
+- addDockWidget(Qt::LeftDockWidgetArea, infoDock);
+- infoDock->hide();
+- viewMenu->addAction(infoDock->toggleViewAction());
+- m_observers.append(infoDock);
+-
+- TocDock *tocDock = new TocDock(this);
+- addDockWidget(Qt::LeftDockWidgetArea, tocDock);
+- tocDock->hide();
+- viewMenu->addAction(tocDock->toggleViewAction());
+- m_observers.append(tocDock);
+-
+- FontsDock *fontsDock = new FontsDock(this);
+- addDockWidget(Qt::LeftDockWidgetArea, fontsDock);
+- fontsDock->hide();
+- viewMenu->addAction(fontsDock->toggleViewAction());
+- m_observers.append(fontsDock);
+-
+- PermissionsDock *permissionsDock = new PermissionsDock(this);
+- addDockWidget(Qt::LeftDockWidgetArea, permissionsDock);
+- permissionsDock->hide();
+- viewMenu->addAction(permissionsDock->toggleViewAction());
+- m_observers.append(permissionsDock);
+-
+- ThumbnailsDock *thumbnailsDock = new ThumbnailsDock(this);
+- addDockWidget(Qt::LeftDockWidgetArea, thumbnailsDock);
+- thumbnailsDock->hide();
+- viewMenu->addAction(thumbnailsDock->toggleViewAction());
+- m_observers.append(thumbnailsDock);
+-
+- EmbeddedFilesDock *embfilesDock = new EmbeddedFilesDock(this);
+- addDockWidget(Qt::BottomDockWidgetArea, embfilesDock);
+- embfilesDock->hide();
+- viewMenu->addAction(embfilesDock->toggleViewAction());
+- m_observers.append(embfilesDock);
+-
+- MetadataDock *metadataDock = new MetadataDock(this);
+- addDockWidget(Qt::BottomDockWidgetArea, metadataDock);
+- metadataDock->hide();
+- viewMenu->addAction(metadataDock->toggleViewAction());
+- m_observers.append(metadataDock);
+-
+- OptContentDock *optContentDock = new OptContentDock(this);
+- addDockWidget(Qt::LeftDockWidgetArea, optContentDock);
+- optContentDock->hide();
+- viewMenu->addAction(optContentDock->toggleViewAction());
+- m_observers.append(optContentDock);
+-
+- Q_FOREACH(DocumentObserver *obs, m_observers) {
+- obs->m_viewer = this;
+- }
+-
+- connect(navbar, SIGNAL(zoomChanged(qreal)), view, SLOT(slotZoomChanged(qreal)));
+- connect(navbar, SIGNAL(rotationChanged(int)), view, SLOT(slotRotationChanged(int)));
+-
+- // activate AA by default
+- m_settingsTextAAAct->setChecked(true);
+- m_settingsGfxAAAct->setChecked(true);
+-}
+-
+-PdfViewer::~PdfViewer()
+-{
+- closeDocument();
+-}
+-
+-QSize PdfViewer::sizeHint() const
+-{
+- return QSize(500, 600);
+-}
+-
+-void PdfViewer::loadDocument(const QString &file)
+-{
+- Poppler::Document *newdoc = Poppler::Document::load(file);
+- if (!newdoc) {
+- QMessageBox msgbox(QMessageBox::Critical, tr("Open Error"), tr("Cannot open:\n") + file,
+- QMessageBox::Ok, this);
+- msgbox.exec();
+- return;
+- }
+-
+- while (newdoc->isLocked()) {
+- bool ok = true;
+- QString password = QInputDialog::getText(this, tr("Document Password"),
+- tr("Please insert the password of the document:"),
+- QLineEdit::Password, QString(), &ok);
+- if (!ok) {
+- delete newdoc;
+- return;
+- }
+- newdoc->unlock(password.toLatin1(), password.toLatin1());
+- }
+-
+- closeDocument();
+-
+- m_doc = newdoc;
+-
+- m_doc->setRenderHint(Poppler::Document::TextAntialiasing, m_settingsTextAAAct->isChecked());
+- m_doc->setRenderHint(Poppler::Document::Antialiasing, m_settingsGfxAAAct->isChecked());
+- m_doc->setRenderBackend((Poppler::Document::RenderBackend)m_settingsRenderBackendGrp->checkedAction()->data().toInt());
+-
+- Q_FOREACH(DocumentObserver *obs, m_observers) {
+- obs->documentLoaded();
+- obs->pageChanged(0);
+- }
+-
+- m_fileSaveCopyAct->setEnabled(true);
+-}
+-
+-void PdfViewer::closeDocument()
+-{
+- if (!m_doc) {
+- return;
+- }
+-
+- Q_FOREACH(DocumentObserver *obs, m_observers) {
+- obs->documentClosed();
+- }
+-
+- m_currentPage = 0;
+- delete m_doc;
+- m_doc = 0;
+-
+- m_fileSaveCopyAct->setEnabled(false);
+-}
+-
+-void PdfViewer::slotOpenFile()
+-{
+- QString fileName = QFileDialog::getOpenFileName(this, tr("Open PDF Document"), QDir::homePath(), tr("PDF Documents (*.pdf)"));
+- if (fileName.isEmpty()) {
+- return;
+- }
+-
+- loadDocument(fileName);
+-}
+-
+-void PdfViewer::slotSaveCopy()
+-{
+- if (!m_doc) {
+- return;
+- }
+-
+- QString fileName = QFileDialog::getSaveFileName(this, tr("Save Copy"), QDir::homePath(), tr("PDF Documents (*.pdf)"));
+- if (fileName.isEmpty()) {
+- return;
+- }
+-
+- Poppler::PDFConverter *converter = m_doc->pdfConverter();
+- converter->setOutputFileName(fileName);
+- converter->setPDFOptions(converter->pdfOptions() & ~Poppler::PDFConverter::WithChanges);
+- if (!converter->convert()) {
+- QMessageBox msgbox(QMessageBox::Critical, tr("Save Error"), tr("Cannot export to:\n%1").arg(fileName),
+- QMessageBox::Ok, this);
+- }
+- delete converter;
+-}
+-
+-void PdfViewer::slotAbout()
+-{
+- const QString text("This is a demo of the Poppler-Qt4 library.");
+- QMessageBox::about(this, QString::fromLatin1("About Poppler-Qt4 Demo"), text);
+-}
+-
+-void PdfViewer::slotAboutQt()
+-{
+- QMessageBox::aboutQt(this);
+-}
+-
+-void PdfViewer::slotToggleTextAA(bool value)
+-{
+- if (!m_doc) {
+- return;
+- }
+-
+- m_doc->setRenderHint(Poppler::Document::TextAntialiasing, value);
+-
+- Q_FOREACH(DocumentObserver *obs, m_observers) {
+- obs->pageChanged(m_currentPage);
+- }
+-}
+-
+-void PdfViewer::slotToggleGfxAA(bool value)
+-{
+- if (!m_doc) {
+- return;
+- }
+-
+- m_doc->setRenderHint(Poppler::Document::Antialiasing, value);
+-
+- Q_FOREACH(DocumentObserver *obs, m_observers) {
+- obs->pageChanged(m_currentPage);
+- }
+-}
+-
+-void PdfViewer::slotRenderBackend(QAction *act)
+-{
+- if (!m_doc || !act) {
+- return;
+- }
+-
+- m_doc->setRenderBackend((Poppler::Document::RenderBackend)act->data().toInt());
+-
+- Q_FOREACH(DocumentObserver *obs, m_observers) {
+- obs->pageChanged(m_currentPage);
+- }
+-}
+-
+-void PdfViewer::setPage(int page)
+-{
+- Q_FOREACH(DocumentObserver *obs, m_observers) {
+- obs->pageChanged(page);
+- }
+-
+- m_currentPage = page;
+-}
+-
+-int PdfViewer::page() const
+-{
+- return m_currentPage;
+-}
+-
+-#include "viewer.moc"
+diff --git a/qt4/demos/viewer.h b/qt4/demos/viewer.h
+deleted file mode 100644
+index 5e0eaaff..00000000
+--- a/qt4/demos/viewer.h
++++ /dev/null
+@@ -1,73 +0,0 @@
+-/*
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef PDFVIEWER_H
+-#define PDFVIEWER_H
+-
+-#include <QtGui/QMainWindow>
+-
+-class QAction;
+-class QActionGroup;
+-class QLabel;
+-class DocumentObserver;
+-namespace Poppler {
+-class Document;
+-}
+-
+-class PdfViewer : public QMainWindow
+-{
+- Q_OBJECT
+-
+- friend class DocumentObserver;
+-
+-public:
+- PdfViewer();
+- ~PdfViewer();
+-
+- /*virtual*/ QSize sizeHint() const;
+-
+- void loadDocument(const QString &file);
+- void closeDocument();
+-
+-private Q_SLOTS:
+- void slotOpenFile();
+- void slotSaveCopy();
+- void slotAbout();
+- void slotAboutQt();
+- void slotToggleTextAA(bool value);
+- void slotToggleGfxAA(bool value);
+- void slotRenderBackend(QAction *act);
+-
+-private:
+- void setPage(int page);
+- int page() const;
+-
+- int m_currentPage;
+-
+- QAction *m_fileOpenAct;
+- QAction *m_fileSaveCopyAct;
+- QAction *m_settingsTextAAAct;
+- QAction *m_settingsGfxAAAct;
+- QActionGroup *m_settingsRenderBackendGrp;
+-
+- QList<DocumentObserver *> m_observers;
+-
+- Poppler::Document *m_doc;
+-};
+-
+-#endif
+diff --git a/qt4/src/.gitignore b/qt4/src/.gitignore
+deleted file mode 100644
+index 3d124ddd..00000000
+--- a/qt4/src/.gitignore
++++ /dev/null
+@@ -1,9 +0,0 @@
+-.deps
+-.libs
+-*.la
+-*.lo
+-Makefile
+-Makefile.in
+-APIDOCS-html
+-APIDOCS-latex
+-*.moc
+diff --git a/qt4/src/ArthurOutputDev.cc b/qt4/src/ArthurOutputDev.cc
+deleted file mode 100644
+index f2fa6f17..00000000
+--- a/qt4/src/ArthurOutputDev.cc
++++ /dev/null
+@@ -1,812 +0,0 @@
+-//========================================================================
+-//
+-// ArthurOutputDev.cc
+-//
+-// Copyright 2003 Glyph & Cog, LLC
+-//
+-//========================================================================
+-
+-//========================================================================
+-//
+-// Modified under the Poppler project - http://poppler.freedesktop.org
+-//
+-// All changes made under the Poppler project to this file are licensed
+-// under GPL version 2 or later
+-//
+-// Copyright (C) 2005 Brad Hards <bradh@frogmouth.net>
+-// Copyright (C) 2005-2009, 2011, 2012, 2014, 2015 Albert Astals Cid <aacid@kde.org>
+-// Copyright (C) 2008, 2010 Pino Toscano <pino@kde.org>
+-// Copyright (C) 2009, 2011 Carlos Garcia Campos <carlosgc@gnome.org>
+-// Copyright (C) 2009 Petr Gajdos <pgajdos@novell.com>
+-// Copyright (C) 2010 Matthias Fauconneau <matthias.fauconneau@gmail.com>
+-// Copyright (C) 2011 Andreas Hartmetz <ahartmetz@gmail.com>
+-// Copyright (C) 2013 Thomas Freitag <Thomas.Freitag@alfa.de>
+-// Copyright (C) 2013 Dominik Haumann <dhaumann@kde.org>
+-// Copyright (C) 2017 Adrian Johnson <ajohnson@redneon.com>
+-//
+-// To see a description of the changes please see the Changelog file that
+-// came with your tarball or type make ChangeLog if you are building from git
+-//
+-//========================================================================
+-
+-#include <config.h>
+-
+-#ifdef USE_GCC_PRAGMAS
+-#pragma implementation
+-#endif
+-
+-#include <string.h>
+-#include <math.h>
+-
+-#include "goo/gfile.h"
+-#include "GlobalParams.h"
+-#include "Error.h"
+-#include "Object.h"
+-#include "GfxState.h"
+-#include "GfxFont.h"
+-#include "Link.h"
+-#include "FontEncodingTables.h"
+-#include <fofi/FoFiTrueType.h>
+-#include "ArthurOutputDev.h"
+-
+-#include <QtCore/QtDebug>
+-#include <QtGui/QPainterPath>
+-//------------------------------------------------------------------------
+-
+-#ifdef HAVE_SPLASH
+-#include "splash/SplashFontFileID.h"
+-#include "splash/SplashFontFile.h"
+-#include "splash/SplashFontEngine.h"
+-#include "splash/SplashFont.h"
+-#include "splash/SplashMath.h"
+-#include "splash/SplashPath.h"
+-#include "splash/SplashGlyphBitmap.h"
+-//------------------------------------------------------------------------
+-// SplashOutFontFileID
+-//------------------------------------------------------------------------
+-
+-class SplashOutFontFileID: public SplashFontFileID {
+-public:
+-
+- SplashOutFontFileID(Ref *rA) { r = *rA; }
+-
+- ~SplashOutFontFileID() {}
+-
+- GBool matches(SplashFontFileID *id) {
+- return ((SplashOutFontFileID *)id)->r.num == r.num &&
+- ((SplashOutFontFileID *)id)->r.gen == r.gen;
+- }
+-
+-private:
+-
+- Ref r;
+-};
+-
+-#endif
+-
+-//------------------------------------------------------------------------
+-// ArthurOutputDev
+-//------------------------------------------------------------------------
+-
+-ArthurOutputDev::ArthurOutputDev(QPainter *painter):
+- m_painter(painter),
+- m_fontHinting(NoHinting)
+-{
+- m_currentBrush = QBrush(Qt::SolidPattern);
+- m_fontEngine = 0;
+- m_font = 0;
+-}
+-
+-ArthurOutputDev::~ArthurOutputDev()
+-{
+-#ifdef HAVE_SPLASH
+- delete m_fontEngine;
+-#endif
+-}
+-
+-void ArthurOutputDev::startDoc(XRef *xrefA) {
+- xref = xrefA;
+-#ifdef HAVE_SPLASH
+- delete m_fontEngine;
+-
+- const bool isHintingEnabled = m_fontHinting != NoHinting;
+- const bool isSlightHinting = m_fontHinting == SlightHinting;
+-
+- m_fontEngine = new SplashFontEngine(
+- globalParams->getEnableFreeType(),
+- isHintingEnabled,
+- isSlightHinting,
+- m_painter->testRenderHint(QPainter::TextAntialiasing));
+-#endif
+-}
+-
+-void ArthurOutputDev::startPage(int pageNum, GfxState *state, XRef *xref)
+-{
+- // fill page with white background.
+- int w = static_cast<int>(state->getPageWidth());
+- int h = static_cast<int>(state->getPageHeight());
+- QColor fillColour(Qt::white);
+- QBrush fill(fillColour);
+- m_painter->save();
+- m_painter->setPen(fillColour);
+- m_painter->setBrush(fill);
+- m_painter->drawRect(0, 0, w, h);
+- m_painter->restore();
+-}
+-
+-void ArthurOutputDev::endPage() {
+-}
+-
+-void ArthurOutputDev::saveState(GfxState *state)
+-{
+- m_painter->save();
+-}
+-
+-void ArthurOutputDev::restoreState(GfxState *state)
+-{
+- m_painter->restore();
+-}
+-
+-void ArthurOutputDev::updateAll(GfxState *state)
+-{
+- OutputDev::updateAll(state);
+- m_needFontUpdate = gTrue;
+-}
+-
+-// This looks wrong - why aren't adjusting the matrix?
+-void ArthurOutputDev::updateCTM(GfxState *state, double m11, double m12,
+- double m21, double m22,
+- double m31, double m32)
+-{
+- updateLineDash(state);
+- updateLineJoin(state);
+- updateLineCap(state);
+- updateLineWidth(state);
+-}
+-
+-void ArthurOutputDev::updateLineDash(GfxState *state)
+-{
+- double *dashPattern;
+- int dashLength;
+- double dashStart;
+- state->getLineDash(&dashPattern, &dashLength, &dashStart);
+- QVector<qreal> pattern(dashLength);
+- for (int i = 0; i < dashLength; ++i) {
+- pattern[i] = dashPattern[i];
+- }
+- m_currentPen.setDashPattern(pattern);
+- m_currentPen.setDashOffset(dashStart);
+- m_painter->setPen(m_currentPen);
+-}
+-
+-void ArthurOutputDev::updateFlatness(GfxState *state)
+-{
+- // qDebug() << "updateFlatness";
+-}
+-
+-void ArthurOutputDev::updateLineJoin(GfxState *state)
+-{
+- switch (state->getLineJoin()) {
+- case 0:
+- m_currentPen.setJoinStyle(Qt::MiterJoin);
+- break;
+- case 1:
+- m_currentPen.setJoinStyle(Qt::RoundJoin);
+- break;
+- case 2:
+- m_currentPen.setJoinStyle(Qt::BevelJoin);
+- break;
+- }
+- m_painter->setPen(m_currentPen);
+-}
+-
+-void ArthurOutputDev::updateLineCap(GfxState *state)
+-{
+- switch (state->getLineCap()) {
+- case 0:
+- m_currentPen.setCapStyle(Qt::FlatCap);
+- break;
+- case 1:
+- m_currentPen.setCapStyle(Qt::RoundCap);
+- break;
+- case 2:
+- m_currentPen.setCapStyle(Qt::SquareCap);
+- break;
+- }
+- m_painter->setPen(m_currentPen);
+-}
+-
+-void ArthurOutputDev::updateMiterLimit(GfxState *state)
+-{
+- m_currentPen.setMiterLimit(state->getMiterLimit());
+- m_painter->setPen(m_currentPen);
+-}
+-
+-void ArthurOutputDev::updateLineWidth(GfxState *state)
+-{
+- m_currentPen.setWidthF(state->getLineWidth());
+- m_painter->setPen(m_currentPen);
+-}
+-
+-void ArthurOutputDev::updateFillColor(GfxState *state)
+-{
+- GfxRGB rgb;
+- QColor brushColour = m_currentBrush.color();
+- state->getFillRGB(&rgb);
+- brushColour.setRgbF(colToDbl(rgb.r), colToDbl(rgb.g), colToDbl(rgb.b), brushColour.alphaF());
+- m_currentBrush.setColor(brushColour);
+-}
+-
+-void ArthurOutputDev::updateStrokeColor(GfxState *state)
+-{
+- GfxRGB rgb;
+- QColor penColour = m_currentPen.color();
+- state->getStrokeRGB(&rgb);
+- penColour.setRgbF(colToDbl(rgb.r), colToDbl(rgb.g), colToDbl(rgb.b), penColour.alphaF());
+- m_currentPen.setColor(penColour);
+- m_painter->setPen(m_currentPen);
+-}
+-
+-void ArthurOutputDev::updateFillOpacity(GfxState *state)
+-{
+- QColor brushColour= m_currentBrush.color();
+- brushColour.setAlphaF(state->getFillOpacity());
+- m_currentBrush.setColor(brushColour);
+-}
+-
+-void ArthurOutputDev::updateStrokeOpacity(GfxState *state)
+-{
+- QColor penColour= m_currentPen.color();
+- penColour.setAlphaF(state->getStrokeOpacity());
+- m_currentPen.setColor(penColour);
+- m_painter->setPen(m_currentPen);
+-}
+-
+-void ArthurOutputDev::updateFont(GfxState *state)
+-{
+-#ifdef HAVE_SPLASH
+- GfxFont *gfxFont;
+- GfxFontLoc *fontLoc;
+- GfxFontType fontType;
+- SplashOutFontFileID *id;
+- SplashFontFile *fontFile;
+- SplashFontSrc *fontsrc = NULL;
+- FoFiTrueType *ff;
+- Object refObj, strObj;
+- GooString *fileName;
+- char *tmpBuf;
+- int tmpBufLen = 0;
+- int *codeToGID;
+- double *textMat;
+- double m11, m12, m21, m22, fontSize;
+- SplashCoord mat[4];
+- int n;
+- int faceIndex = 0;
+- SplashCoord matrix[6];
+-
+- m_needFontUpdate = false;
+- m_font = NULL;
+- fileName = NULL;
+- tmpBuf = NULL;
+- fontLoc = NULL;
+-
+- if (!(gfxFont = state->getFont())) {
+- goto err1;
+- }
+- fontType = gfxFont->getType();
+- if (fontType == fontType3) {
+- goto err1;
+- }
+-
+- // check the font file cache
+- id = new SplashOutFontFileID(gfxFont->getID());
+- if ((fontFile = m_fontEngine->getFontFile(id))) {
+- delete id;
+-
+- } else {
+-
+- if (!(fontLoc = gfxFont->locateFont(xref, NULL))) {
+- error(errSyntaxError, -1, "Couldn't find a font for '{0:s}'",
+- gfxFont->getName() ? gfxFont->getName()->getCString()
+- : "(unnamed)");
+- goto err2;
+- }
+-
+- // embedded font
+- if (fontLoc->locType == gfxFontLocEmbedded) {
+- // if there is an embedded font, read it to memory
+- tmpBuf = gfxFont->readEmbFontFile(xref, &tmpBufLen);
+- if (! tmpBuf)
+- goto err2;
+-
+- // external font
+- } else { // gfxFontLocExternal
+- fileName = fontLoc->path;
+- fontType = fontLoc->fontType;
+- }
+-
+- fontsrc = new SplashFontSrc;
+- if (fileName)
+- fontsrc->setFile(fileName, gFalse);
+- else
+- fontsrc->setBuf(tmpBuf, tmpBufLen, gTrue);
+-
+- // load the font file
+- switch (fontType) {
+- case fontType1:
+- if (!(fontFile = m_fontEngine->loadType1Font(
+- id,
+- fontsrc,
+- (const char **)((Gfx8BitFont *)gfxFont)->getEncoding()))) {
+- error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
+- gfxFont->getName() ? gfxFont->getName()->getCString()
+- : "(unnamed)");
+- goto err2;
+- }
+- break;
+- case fontType1C:
+- if (!(fontFile = m_fontEngine->loadType1CFont(
+- id,
+- fontsrc,
+- (const char **)((Gfx8BitFont *)gfxFont)->getEncoding()))) {
+- error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
+- gfxFont->getName() ? gfxFont->getName()->getCString()
+- : "(unnamed)");
+- goto err2;
+- }
+- break;
+- case fontType1COT:
+- if (!(fontFile = m_fontEngine->loadOpenTypeT1CFont(
+- id,
+- fontsrc,
+- (const char **)((Gfx8BitFont *)gfxFont)->getEncoding()))) {
+- error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
+- gfxFont->getName() ? gfxFont->getName()->getCString()
+- : "(unnamed)");
+- goto err2;
+- }
+- break;
+- case fontTrueType:
+- case fontTrueTypeOT:
+- if (fileName)
+- ff = FoFiTrueType::load(fileName->getCString());
+- else
+- ff = FoFiTrueType::make(tmpBuf, tmpBufLen);
+- if (ff) {
+- codeToGID = ((Gfx8BitFont *)gfxFont)->getCodeToGIDMap(ff);
+- n = 256;
+- delete ff;
+- } else {
+- codeToGID = NULL;
+- n = 0;
+- }
+- if (!(fontFile = m_fontEngine->loadTrueTypeFont(
+- id,
+- fontsrc,
+- codeToGID, n))) {
+- error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
+- gfxFont->getName() ? gfxFont->getName()->getCString()
+- : "(unnamed)");
+- goto err2;
+- }
+- break;
+- case fontCIDType0:
+- case fontCIDType0C:
+- if (!(fontFile = m_fontEngine->loadCIDFont(
+- id,
+- fontsrc))) {
+- error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
+- gfxFont->getName() ? gfxFont->getName()->getCString()
+- : "(unnamed)");
+- goto err2;
+- }
+- break;
+- case fontCIDType0COT:
+- if (((GfxCIDFont *)gfxFont)->getCIDToGID()) {
+- n = ((GfxCIDFont *)gfxFont)->getCIDToGIDLen();
+- codeToGID = (int *)gmallocn(n, sizeof(int));
+- memcpy(codeToGID, ((GfxCIDFont *)gfxFont)->getCIDToGID(),
+- n * sizeof(int));
+- } else {
+- codeToGID = NULL;
+- n = 0;
+- }
+- if (!(fontFile = m_fontEngine->loadOpenTypeCFFFont(
+- id,
+- fontsrc,
+- codeToGID, n))) {
+- error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
+- gfxFont->getName() ? gfxFont->getName()->getCString()
+- : "(unnamed)");
+- goto err2;
+- }
+- break;
+- case fontCIDType2:
+- case fontCIDType2OT:
+- codeToGID = NULL;
+- n = 0;
+- if (((GfxCIDFont *)gfxFont)->getCIDToGID()) {
+- n = ((GfxCIDFont *)gfxFont)->getCIDToGIDLen();
+- if (n) {
+- codeToGID = (int *)gmallocn(n, sizeof(int));
+- memcpy(codeToGID, ((GfxCIDFont *)gfxFont)->getCIDToGID(),
+- n * sizeof(Gushort));
+- }
+- } else {
+- if (fileName)
+- ff = FoFiTrueType::load(fileName->getCString());
+- else
+- ff = FoFiTrueType::make(tmpBuf, tmpBufLen);
+- if (! ff)
+- goto err2;
+- codeToGID = ((GfxCIDFont *)gfxFont)->getCodeToGIDMap(ff, &n);
+- delete ff;
+- }
+- if (!(fontFile = m_fontEngine->loadTrueTypeFont(
+- id,
+- fontsrc,
+- codeToGID, n, faceIndex))) {
+- error(errSyntaxError, -1, "Couldn't create a font for '{0:s}'",
+- gfxFont->getName() ? gfxFont->getName()->getCString()
+- : "(unnamed)");
+- goto err2;
+- }
+- break;
+- default:
+- // this shouldn't happen
+- goto err2;
+- }
+- }
+-
+- // get the font matrix
+- textMat = state->getTextMat();
+- fontSize = state->getFontSize();
+- m11 = textMat[0] * fontSize * state->getHorizScaling();
+- m12 = textMat[1] * fontSize * state->getHorizScaling();
+- m21 = textMat[2] * fontSize;
+- m22 = textMat[3] * fontSize;
+-
+- {
+- QMatrix painterMatrix = m_painter->worldMatrix();
+- matrix[0] = painterMatrix.m11();
+- matrix[1] = painterMatrix.m12();
+- matrix[2] = painterMatrix.m21();
+- matrix[3] = painterMatrix.m22();
+- matrix[4] = painterMatrix.dx();
+- matrix[5] = painterMatrix.dy();
+- }
+-
+- // create the scaled font
+- mat[0] = m11; mat[1] = -m12;
+- mat[2] = m21; mat[3] = -m22;
+- m_font = m_fontEngine->getFont(fontFile, mat, matrix);
+-
+- delete fontLoc;
+- if (fontsrc && !fontsrc->isFile)
+- fontsrc->unref();
+- return;
+-
+- err2:
+- delete id;
+- delete fontLoc;
+- err1:
+- if (fontsrc && !fontsrc->isFile)
+- fontsrc->unref();
+- return;
+-#endif
+-}
+-
+-static QPainterPath convertPath(GfxState *state, GfxPath *path, Qt::FillRule fillRule)
+-{
+- GfxSubpath *subpath;
+- double x1, y1, x2, y2, x3, y3;
+- int i, j;
+-
+- QPainterPath qPath;
+- qPath.setFillRule(fillRule);
+- for (i = 0; i < path->getNumSubpaths(); ++i) {
+- subpath = path->getSubpath(i);
+- if (subpath->getNumPoints() > 0) {
+- state->transform(subpath->getX(0), subpath->getY(0), &x1, &y1);
+- qPath.moveTo(x1, y1);
+- j = 1;
+- while (j < subpath->getNumPoints()) {
+- if (subpath->getCurve(j)) {
+- state->transform(subpath->getX(j), subpath->getY(j), &x1, &y1);
+- state->transform(subpath->getX(j+1), subpath->getY(j+1), &x2, &y2);
+- state->transform(subpath->getX(j+2), subpath->getY(j+2), &x3, &y3);
+- qPath.cubicTo( x1, y1, x2, y2, x3, y3);
+- j += 3;
+- } else {
+- state->transform(subpath->getX(j), subpath->getY(j), &x1, &y1);
+- qPath.lineTo(x1, y1);
+- ++j;
+- }
+- }
+- if (subpath->isClosed()) {
+- qPath.closeSubpath();
+- }
+- }
+- }
+- return qPath;
+-}
+-
+-void ArthurOutputDev::stroke(GfxState *state)
+-{
+- m_painter->strokePath( convertPath( state, state->getPath(), Qt::OddEvenFill ), m_currentPen );
+-}
+-
+-void ArthurOutputDev::fill(GfxState *state)
+-{
+- m_painter->fillPath( convertPath( state, state->getPath(), Qt::WindingFill ), m_currentBrush );
+-}
+-
+-void ArthurOutputDev::eoFill(GfxState *state)
+-{
+- m_painter->fillPath( convertPath( state, state->getPath(), Qt::OddEvenFill ), m_currentBrush );
+-}
+-
+-void ArthurOutputDev::clip(GfxState *state)
+-{
+- m_painter->setClipPath(convertPath( state, state->getPath(), Qt::WindingFill ) );
+-}
+-
+-void ArthurOutputDev::eoClip(GfxState *state)
+-{
+- m_painter->setClipPath(convertPath( state, state->getPath(), Qt::OddEvenFill ) );
+-}
+-
+-void ArthurOutputDev::drawChar(GfxState *state, double x, double y,
+- double dx, double dy,
+- double originX, double originY,
+- CharCode code, int nBytes, Unicode *u, int uLen) {
+-#ifdef HAVE_SPLASH
+- double x1, y1;
+- double x2, y2;
+-// SplashPath *path;
+- int render;
+-
+- if (m_needFontUpdate) {
+- updateFont(state);
+- }
+- if (!m_font) {
+- return;
+- }
+-
+- // check for invisible text -- this is used by Acrobat Capture
+- render = state->getRender();
+- if (render == 3) {
+- return;
+- }
+-
+- x -= originX;
+- y -= originY;
+-
+- // fill
+- if (!(render & 1)) {
+- SplashPath * fontPath;
+- fontPath = m_font->getGlyphPath(code);
+- if (fontPath) {
+- QPainterPath qPath;
+- qPath.setFillRule(Qt::WindingFill);
+- for (int i = 0; i < fontPath->length; ++i) {
+- // SplashPath.flags: bitwise or allowed
+- if (fontPath->flags[i] & splashPathLast || fontPath->flags[i] & splashPathClosed) {
+- qPath.closeSubpath();
+- }
+- if (fontPath->flags[i] & splashPathFirst) {
+- state->transform(fontPath->pts[i].x+x, -fontPath->pts[i].y+y, &x1, &y1);
+- qPath.moveTo(x1,y1);
+- }
+- if (fontPath->flags[i] & splashPathCurve) {
+- state->transform(fontPath->pts[i].x+x, -fontPath->pts[i].y+y, &x1, &y1);
+- state->transform(fontPath->pts[i+1].x+x, -fontPath->pts[i+1].y+y, &x2, &y2);
+- qPath.quadTo(x1,y1,x2,y2);
+- ++i;
+- }
+- // FIXME fix this
+- // else if (fontPath->flags[i] & splashPathArcCW) {
+- // qDebug() << "Need to implement arc";
+- // }
+- else {
+- state->transform(fontPath->pts[i].x+x, -fontPath->pts[i].y+y, &x1, &y1);
+- qPath.lineTo(x1,y1);
+- }
+- }
+- GfxRGB rgb;
+- QColor brushColour = m_currentBrush.color();
+- state->getFillRGB(&rgb);
+- brushColour.setRgbF(colToDbl(rgb.r), colToDbl(rgb.g), colToDbl(rgb.b), state->getFillOpacity());
+- m_painter->setBrush(brushColour);
+- m_painter->setPen(Qt::NoPen);
+- m_painter->drawPath(qPath);
+- delete fontPath;
+- }
+- }
+-
+- // stroke
+- if ((render & 3) == 1 || (render & 3) == 2) {
+- qDebug() << "no stroke";
+- /*
+- if ((path = m_font->getGlyphPath(code))) {
+- path->offset((SplashCoord)x1, (SplashCoord)y1);
+- splash->stroke(path);
+- delete path;
+- }
+- */
+- }
+-
+- // clip
+- if (render & 4) {
+- qDebug() << "no clip";
+- /*
+- path = m_font->getGlyphPath(code);
+- path->offset((SplashCoord)x1, (SplashCoord)y1);
+- if (textClipPath) {
+- textClipPath->append(path);
+- delete path;
+- } else {
+- textClipPath = path;
+- }
+- */
+- }
+-#endif
+-}
+-
+-GBool ArthurOutputDev::beginType3Char(GfxState *state, double x, double y,
+- double dx, double dy,
+- CharCode code, Unicode *u, int uLen)
+-{
+- return gFalse;
+-}
+-
+-void ArthurOutputDev::endType3Char(GfxState *state)
+-{
+-}
+-
+-void ArthurOutputDev::type3D0(GfxState *state, double wx, double wy)
+-{
+-}
+-
+-void ArthurOutputDev::type3D1(GfxState *state, double wx, double wy,
+- double llx, double lly, double urx, double ury)
+-{
+-}
+-
+-void ArthurOutputDev::endTextObject(GfxState *state)
+-{
+-}
+-
+-
+-void ArthurOutputDev::drawImageMask(GfxState *state, Object *ref, Stream *str,
+- int width, int height, GBool invert,
+- GBool interpolate, GBool inlineImg)
+-{
+- qDebug() << "drawImageMask";
+-#if 0
+- unsigned char *buffer;
+- unsigned char *dest;
+- cairo_surface_t *image;
+- cairo_pattern_t *pattern;
+- int x, y;
+- ImageStream *imgStr;
+- Guchar *pix;
+- double *ctm;
+- cairo_matrix_t matrix;
+- int invert_bit;
+- int row_stride;
+-
+- row_stride = (width + 3) & ~3;
+- buffer = (unsigned char *) malloc (height * row_stride);
+- if (buffer == NULL) {
+- error(-1, "Unable to allocate memory for image.");
+- return;
+- }
+-
+- /* TODO: Do we want to cache these? */
+- imgStr = new ImageStream(str, width, 1, 1);
+- imgStr->reset();
+-
+- invert_bit = invert ? 1 : 0;
+-
+- for (y = 0; y < height; y++) {
+- pix = imgStr->getLine();
+- dest = buffer + y * row_stride;
+- for (x = 0; x < width; x++) {
+-
+- if (pix[x] ^ invert_bit)
+- *dest++ = 0;
+- else
+- *dest++ = 255;
+- }
+- }
+-
+- image = cairo_image_surface_create_for_data (buffer, CAIRO_FORMAT_A8,
+- width, height, row_stride);
+- if (image == NULL)
+- return;
+- pattern = cairo_pattern_create_for_surface (image);
+- if (pattern == NULL)
+- return;
+-
+- ctm = state->getCTM();
+- LOG (printf ("drawImageMask %dx%d, matrix: %f, %f, %f, %f, %f, %f\n",
+- width, height, ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]));
+- matrix.xx = ctm[0] / width;
+- matrix.xy = -ctm[2] / height;
+- matrix.yx = ctm[1] / width;
+- matrix.yy = -ctm[3] / height;
+- matrix.x0 = ctm[2] + ctm[4];
+- matrix.y0 = ctm[3] + ctm[5];
+- cairo_matrix_invert (&matrix);
+- cairo_pattern_set_matrix (pattern, &matrix);
+-
+- cairo_pattern_set_filter (pattern, CAIRO_FILTER_BEST);
+- /* FIXME: Doesn't the image mask support any colorspace? */
+- cairo_set_source_rgb (cairo, fill_color.r, fill_color.g, fill_color.b);
+- cairo_mask (cairo, pattern);
+-
+- cairo_pattern_destroy (pattern);
+- cairo_surface_destroy (image);
+- free (buffer);
+- imgStr->close ();
+- delete imgStr;
+-#endif
+-}
+-
+-//TODO: lots more work here.
+-void ArthurOutputDev::drawImage(GfxState *state, Object *ref, Stream *str,
+- int width, int height,
+- GfxImageColorMap *colorMap,
+- GBool interpolate, int *maskColors, GBool inlineImg)
+-{
+- unsigned int *data;
+- unsigned int *line;
+- int x, y;
+- ImageStream *imgStr;
+- Guchar *pix;
+- int i;
+- double *ctm;
+- QMatrix matrix;
+- QImage image;
+- int stride;
+-
+- /* TODO: Do we want to cache these? */
+- imgStr = new ImageStream(str, width,
+- colorMap->getNumPixelComps(),
+- colorMap->getBits());
+- imgStr->reset();
+-
+- image = QImage(width, height, QImage::Format_ARGB32);
+- data = (unsigned int *)image.bits();
+- stride = image.bytesPerLine()/4;
+- for (y = 0; y < height; y++) {
+- pix = imgStr->getLine();
+- line = data+y*stride;
+- colorMap->getRGBLine(pix, line, width);
+-
+- if (maskColors) {
+- for (x = 0; x < width; x++) {
+- for (i = 0; i < colorMap->getNumPixelComps(); ++i) {
+- if (pix[i] < maskColors[2*i] * 255||
+- pix[i] > maskColors[2*i+1] * 255) {
+- *line = *line | 0xff000000;
+- break;
+- }
+- }
+- pix += colorMap->getNumPixelComps();
+- line++;
+- }
+- } else {
+- for (x = 0; x < width; x++) { *line = *line | 0xff000000; line++; }
+- }
+- }
+-
+- ctm = state->getCTM();
+- matrix.setMatrix(ctm[0] / width, ctm[1] / width, -ctm[2] / height, -ctm[3] / height, ctm[2] + ctm[4], ctm[3] + ctm[5]);
+-
+- m_painter->setMatrix(matrix, true);
+- m_painter->drawImage( QPoint(0,0), image );
+- delete imgStr;
+-
+-}
+diff --git a/qt4/src/ArthurOutputDev.h b/qt4/src/ArthurOutputDev.h
+deleted file mode 100644
+index 9d5e8679..00000000
+--- a/qt4/src/ArthurOutputDev.h
++++ /dev/null
+@@ -1,170 +0,0 @@
+-//========================================================================
+-//
+-// ArthurOutputDev.h
+-//
+-// Copyright 2003 Glyph & Cog, LLC
+-//
+-//========================================================================
+-
+-//========================================================================
+-//
+-// Modified under the Poppler project - http://poppler.freedesktop.org
+-//
+-// All changes made under the Poppler project to this file are licensed
+-// under GPL version 2 or later
+-//
+-// Copyright (C) 2005 Brad Hards <bradh@frogmouth.net>
+-// Copyright (C) 2005 Albert Astals Cid <aacid@kde.org>
+-// Copyright (C) 2009, 2011 Carlos Garcia Campos <carlosgc@gnome.org>
+-// Copyright (C) 2010 Pino Toscano <pino@kde.org>
+-// Copyright (C) 2011 Andreas Hartmetz <ahartmetz@gmail.com>
+-// Copyright (C) 2013 Thomas Freitag <Thomas.Freitag@alfa.de>
+-//
+-// To see a description of the changes please see the Changelog file that
+-// came with your tarball or type make ChangeLog if you are building from git
+-//
+-//========================================================================
+-
+-#ifndef ARTHUROUTPUTDEV_H
+-#define ARTHUROUTPUTDEV_H
+-
+-#ifdef USE_GCC_PRAGMAS
+-#pragma interface
+-#endif
+-
+-#include "goo/gtypes.h"
+-#include "OutputDev.h"
+-#include "GfxState.h"
+-
+-#include <QtGui/QPainter>
+-
+-class GfxState;
+-class GfxPath;
+-class Gfx8BitFont;
+-struct GfxRGB;
+-
+-class SplashFont;
+-class SplashFontEngine;
+-struct SplashGlyphBitmap;
+-
+-//------------------------------------------------------------------------
+-// ArthurOutputDev - Qt 4 QPainter renderer
+-//------------------------------------------------------------------------
+-
+-class ArthurOutputDev: public OutputDev {
+-public:
+- /**
+- * Describes how fonts are distorted (aka hinted) to fit the pixel grid.
+- * More hinting means sharper edges and less adherence to the true letter shapes.
+- */
+- enum FontHinting {
+- NoHinting = 0, ///< Font shapes are left unchanged
+- SlightHinting, ///< Font shapes are distorted vertically only
+- FullHinting ///< Font shapes are distorted horizontally and vertically
+- };
+-
+- // Constructor.
+- ArthurOutputDev(QPainter *painter );
+-
+- // Destructor.
+- virtual ~ArthurOutputDev();
+-
+- void setFontHinting(FontHinting hinting) { m_fontHinting = hinting; }
+-
+- //----- get info about output device
+-
+- // Does this device use upside-down coordinates?
+- // (Upside-down means (0,0) is the top left corner of the page.)
+- virtual GBool upsideDown() { return gTrue; }
+-
+- // Does this device use drawChar() or drawString()?
+- virtual GBool useDrawChar() { return gTrue; }
+-
+- // Does this device use beginType3Char/endType3Char? Otherwise,
+- // text in Type 3 fonts will be drawn with drawChar/drawString.
+- virtual GBool interpretType3Chars() { return gTrue; }
+-
+- //----- initialization and control
+-
+- // Start a page.
+- virtual void startPage(int pageNum, GfxState *state, XRef *xref);
+-
+- // End a page.
+- virtual void endPage();
+-
+- //----- save/restore graphics state
+- virtual void saveState(GfxState *state);
+- virtual void restoreState(GfxState *state);
+-
+- //----- update graphics state
+- virtual void updateAll(GfxState *state);
+- virtual void updateCTM(GfxState *state, double m11, double m12,
+- double m21, double m22, double m31, double m32);
+- virtual void updateLineDash(GfxState *state);
+- virtual void updateFlatness(GfxState *state);
+- virtual void updateLineJoin(GfxState *state);
+- virtual void updateLineCap(GfxState *state);
+- virtual void updateMiterLimit(GfxState *state);
+- virtual void updateLineWidth(GfxState *state);
+- virtual void updateFillColor(GfxState *state);
+- virtual void updateStrokeColor(GfxState *state);
+- virtual void updateFillOpacity(GfxState *state);
+- virtual void updateStrokeOpacity(GfxState *state);
+-
+- //----- update text state
+- virtual void updateFont(GfxState *state);
+-
+- //----- path painting
+- virtual void stroke(GfxState *state);
+- virtual void fill(GfxState *state);
+- virtual void eoFill(GfxState *state);
+-
+- //----- path clipping
+- virtual void clip(GfxState *state);
+- virtual void eoClip(GfxState *state);
+-
+- //----- text drawing
+- // virtual void drawString(GfxState *state, GooString *s);
+- virtual void drawChar(GfxState *state, double x, double y,
+- double dx, double dy,
+- double originX, double originY,
+- CharCode code, int nBytes, Unicode *u, int uLen);
+- virtual GBool beginType3Char(GfxState *state, double x, double y,
+- double dx, double dy,
+- CharCode code, Unicode *u, int uLen);
+- virtual void endType3Char(GfxState *state);
+- virtual void endTextObject(GfxState *state);
+-
+- //----- image drawing
+- virtual void drawImageMask(GfxState *state, Object *ref, Stream *str,
+- int width, int height, GBool invert,
+- GBool interpolate, GBool inlineImg);
+- virtual void drawImage(GfxState *state, Object *ref, Stream *str,
+- int width, int height, GfxImageColorMap *colorMap,
+- GBool interpolate, int *maskColors, GBool inlineImg);
+-
+- //----- Type 3 font operators
+- virtual void type3D0(GfxState *state, double wx, double wy);
+- virtual void type3D1(GfxState *state, double wx, double wy,
+- double llx, double lly, double urx, double ury);
+-
+- //----- special access
+-
+- // Called to indicate that a new PDF document has been loaded.
+- void startDoc(XRef *xrefA);
+-
+- GBool isReverseVideo() { return gFalse; }
+-
+-private:
+- QPainter *m_painter;
+- FontHinting m_fontHinting;
+- QFont m_currentFont;
+- QPen m_currentPen;
+- QBrush m_currentBrush;
+- GBool m_needFontUpdate; // set when the font needs to be updated
+- SplashFontEngine *m_fontEngine;
+- SplashFont *m_font; // current font
+- XRef *xref; // xref table for current document
+-};
+-
+-#endif
+diff --git a/qt4/src/CMakeLists.txt b/qt4/src/CMakeLists.txt
+deleted file mode 100644
+index f6547726..00000000
+--- a/qt4/src/CMakeLists.txt
++++ /dev/null
+@@ -1,54 +0,0 @@
+-add_definitions(${QT4_DEFINITIONS})
+-
+-include_directories(
+- ${CMAKE_CURRENT_SOURCE_DIR}
+- ${QT4_INCLUDE_DIR}
+- ${CMAKE_CURRENT_BINARY_DIR}
+-)
+-
+-set(poppler_qt4_SRCS
+- poppler-annotation.cc
+- poppler-document.cc
+- poppler-embeddedfile.cc
+- poppler-fontinfo.cc
+- poppler-form.cc
+- poppler-link.cc
+- poppler-link-extractor.cc
+- poppler-movie.cc
+- poppler-optcontent.cc
+- poppler-page.cc
+- poppler-base-converter.cc
+- poppler-pdf-converter.cc
+- poppler-private.cc
+- poppler-ps-converter.cc
+- poppler-qiodeviceoutstream.cc
+- poppler-sound.cc
+- poppler-textbox.cc
+- poppler-page-transition.cc
+- poppler-media.cc
+- ArthurOutputDev.cc
+-)
+-qt4_automoc(${poppler_qt4_SRCS})
+-add_library(poppler-qt4 SHARED ${poppler_qt4_SRCS})
+-set_target_properties(poppler-qt4 PROPERTIES VERSION 4.11.0 SOVERSION 4)
+-if(MINGW)
+- get_target_property(POPPLER_QT4_SOVERSION poppler-qt4 SOVERSION)
+- set_target_properties(poppler-qt4 PROPERTIES SUFFIX "-${POPPLER_QT4_SOVERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}")
+-endif()
+-target_link_libraries(poppler-qt4 poppler ${QT4_QTCORE_LIBRARY} ${QT4_QTGUI_LIBRARY} ${QT4_QTXML_LIBRARY})
+-if(MSVC)
+-target_link_libraries(poppler-qt4 poppler ${poppler_LIBS})
+-endif()
+-install(TARGETS poppler-qt4 RUNTIME DESTINATION bin LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
+-
+-install(FILES
+- poppler-qt4.h
+- poppler-link.h
+- poppler-annotation.h
+- poppler-form.h
+- poppler-optcontent.h
+- poppler-export.h
+- poppler-page-transition.h
+- poppler-media.h
+- DESTINATION include/poppler/qt4)
+-
+diff --git a/qt4/src/Doxyfile b/qt4/src/Doxyfile
+deleted file mode 100644
+index e68690ac..00000000
+--- a/qt4/src/Doxyfile
++++ /dev/null
+@@ -1,1637 +0,0 @@
+-# Doxyfile 1.7.1
+-
+-# This file describes the settings to be used by the documentation system
+-# doxygen (www.doxygen.org) for a project
+-#
+-# All text after a hash (#) is considered a comment and will be ignored
+-# The format is:
+-# TAG = value [value, ...]
+-# For lists items can also be appended using:
+-# TAG += value [value, ...]
+-# Values that contain spaces should be placed between quotes (" ")
+-
+-#---------------------------------------------------------------------------
+-# Project related configuration options
+-#---------------------------------------------------------------------------
+-
+-# This tag specifies the encoding used for all characters in the config file
+-# that follow. The default is UTF-8 which is also the encoding used for all
+-# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+-# iconv built into libc) for the transcoding. See
+-# http://www.gnu.org/software/libiconv for the list of possible encodings.
+-
+-DOXYFILE_ENCODING = UTF-8
+-
+-# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+-# by quotes) that should identify the project.
+-
+-PROJECT_NAME = "Poppler Qt4 "
+-
+-# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+-# This could be handy for archiving the generated documentation or
+-# if some version control system is used.
+-
+-PROJECT_NUMBER = 0.61.1
+-
+-# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+-# base path where the generated documentation will be put.
+-# If a relative path is entered, it will be relative to the location
+-# where doxygen was started. If left blank the current directory will be used.
+-
+-OUTPUT_DIRECTORY =
+-
+-# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+-# 4096 sub-directories (in 2 levels) under the output directory of each output
+-# format and will distribute the generated files over these directories.
+-# Enabling this option can be useful when feeding doxygen a huge amount of
+-# source files, where putting all generated files in the same directory would
+-# otherwise cause performance problems for the file system.
+-
+-CREATE_SUBDIRS = NO
+-
+-# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+-# documentation generated by doxygen is written. Doxygen will use this
+-# information to generate all constant output in the proper language.
+-# The default language is English, other supported languages are:
+-# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
+-# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
+-# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
+-# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
+-# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak,
+-# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
+-
+-OUTPUT_LANGUAGE = English
+-
+-# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+-# include brief member descriptions after the members that are listed in
+-# the file and class documentation (similar to JavaDoc).
+-# Set to NO to disable this.
+-
+-BRIEF_MEMBER_DESC = NO
+-
+-# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+-# the brief description of a member or function before the detailed description.
+-# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+-# brief descriptions will be completely suppressed.
+-
+-REPEAT_BRIEF = YES
+-
+-# This tag implements a quasi-intelligent brief description abbreviator
+-# that is used to form the text in various listings. Each string
+-# in this list, if found as the leading text of the brief description, will be
+-# stripped from the text and the result after processing the whole list, is
+-# used as the annotated text. Otherwise, the brief description is used as-is.
+-# If left blank, the following values are used ("$name" is automatically
+-# replaced with the name of the entity): "The $name class" "The $name widget"
+-# "The $name file" "is" "provides" "specifies" "contains"
+-# "represents" "a" "an" "the"
+-
+-ABBREVIATE_BRIEF =
+-
+-# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+-# Doxygen will generate a detailed section even if there is only a brief
+-# description.
+-
+-ALWAYS_DETAILED_SEC = NO
+-
+-# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+-# inherited members of a class in the documentation of that class as if those
+-# members were ordinary class members. Constructors, destructors and assignment
+-# operators of the base classes will not be shown.
+-
+-INLINE_INHERITED_MEMB = NO
+-
+-# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+-# path before files name in the file list and in the header files. If set
+-# to NO the shortest path that makes the file name unique will be used.
+-
+-FULL_PATH_NAMES = YES
+-
+-# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+-# can be used to strip a user-defined part of the path. Stripping is
+-# only done if one of the specified strings matches the left-hand part of
+-# the path. The tag can be used to show relative paths in the file list.
+-# If left blank the directory from which doxygen is run is used as the
+-# path to strip.
+-
+-STRIP_FROM_PATH =
+-
+-# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+-# the path mentioned in the documentation of a class, which tells
+-# the reader which header file to include in order to use a class.
+-# If left blank only the name of the header file containing the class
+-# definition is used. Otherwise one should specify the include paths that
+-# are normally passed to the compiler using the -I flag.
+-
+-STRIP_FROM_INC_PATH =
+-
+-# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+-# (but less readable) file names. This can be useful is your file systems
+-# doesn't support long names like on DOS, Mac, or CD-ROM.
+-
+-SHORT_NAMES = NO
+-
+-# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+-# will interpret the first line (until the first dot) of a JavaDoc-style
+-# comment as the brief description. If set to NO, the JavaDoc
+-# comments will behave just like regular Qt-style comments
+-# (thus requiring an explicit @brief command for a brief description.)
+-
+-JAVADOC_AUTOBRIEF = YES
+-
+-# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
+-# interpret the first line (until the first dot) of a Qt-style
+-# comment as the brief description. If set to NO, the comments
+-# will behave just like regular Qt-style comments (thus requiring
+-# an explicit \brief command for a brief description.)
+-
+-QT_AUTOBRIEF = NO
+-
+-# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+-# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+-# comments) as a brief description. This used to be the default behaviour.
+-# The new default is to treat a multi-line C++ comment block as a detailed
+-# description. Set this tag to YES if you prefer the old behaviour instead.
+-
+-MULTILINE_CPP_IS_BRIEF = NO
+-
+-# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+-# member inherits the documentation from any documented member that it
+-# re-implements.
+-
+-INHERIT_DOCS = YES
+-
+-# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
+-# a new page for each member. If set to NO, the documentation of a member will
+-# be part of the file/class/namespace that contains it.
+-
+-SEPARATE_MEMBER_PAGES = NO
+-
+-# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+-# Doxygen uses this value to replace tabs by spaces in code fragments.
+-
+-TAB_SIZE = 8
+-
+-# This tag can be used to specify a number of aliases that acts
+-# as commands in the documentation. An alias has the form "name=value".
+-# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+-# put the command \sideeffect (or @sideeffect) in the documentation, which
+-# will result in a user-defined paragraph with heading "Side Effects:".
+-# You can put \n's in the value part of an alias to insert newlines.
+-
+-ALIASES =
+-
+-# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
+-# sources only. Doxygen will then generate output that is more tailored for C.
+-# For instance, some of the names that are used will be different. The list
+-# of all members will be omitted, etc.
+-
+-OPTIMIZE_OUTPUT_FOR_C = NO
+-
+-# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
+-# sources only. Doxygen will then generate output that is more tailored for
+-# Java. For instance, namespaces will be presented as packages, qualified
+-# scopes will look different, etc.
+-
+-OPTIMIZE_OUTPUT_JAVA = NO
+-
+-# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+-# sources only. Doxygen will then generate output that is more tailored for
+-# Fortran.
+-
+-OPTIMIZE_FOR_FORTRAN = NO
+-
+-# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+-# sources. Doxygen will then generate output that is tailored for
+-# VHDL.
+-
+-OPTIMIZE_OUTPUT_VHDL = NO
+-
+-# Doxygen selects the parser to use depending on the extension of the files it
+-# parses. With this tag you can assign which parser to use for a given extension.
+-# Doxygen has a built-in mapping, but you can override or extend it using this
+-# tag. The format is ext=language, where ext is a file extension, and language
+-# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C,
+-# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make
+-# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
+-# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions
+-# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
+-
+-EXTENSION_MAPPING =
+-
+-# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+-# to include (a tag file for) the STL sources as input, then you should
+-# set this tag to YES in order to let doxygen match functions declarations and
+-# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
+-# func(std::string) {}). This also make the inheritance and collaboration
+-# diagrams that involve STL classes more complete and accurate.
+-
+-BUILTIN_STL_SUPPORT = NO
+-
+-# If you use Microsoft's C++/CLI language, you should set this option to YES to
+-# enable parsing support.
+-
+-CPP_CLI_SUPPORT = NO
+-
+-# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
+-# Doxygen will parse them like normal C++ but will assume all classes use public
+-# instead of private inheritance when no explicit protection keyword is present.
+-
+-SIP_SUPPORT = NO
+-
+-# For Microsoft's IDL there are propget and propput attributes to indicate getter
+-# and setter methods for a property. Setting this option to YES (the default)
+-# will make doxygen to replace the get and set methods by a property in the
+-# documentation. This will only work if the methods are indeed getting or
+-# setting a simple type. If this is not the case, or you want to show the
+-# methods anyway, you should set this option to NO.
+-
+-IDL_PROPERTY_SUPPORT = YES
+-
+-# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+-# tag is set to YES, then doxygen will reuse the documentation of the first
+-# member in the group (if any) for the other members of the group. By default
+-# all members of a group must be documented explicitly.
+-
+-DISTRIBUTE_GROUP_DOC = NO
+-
+-# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+-# the same type (for instance a group of public functions) to be put as a
+-# subgroup of that type (e.g. under the Public Functions section). Set it to
+-# NO to prevent subgrouping. Alternatively, this can be done per class using
+-# the \nosubgrouping command.
+-
+-SUBGROUPING = YES
+-
+-# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
+-# is documented as struct, union, or enum with the name of the typedef. So
+-# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+-# with name TypeT. When disabled the typedef will appear as a member of a file,
+-# namespace, or class. And the struct will be named TypeS. This can typically
+-# be useful for C code in case the coding convention dictates that all compound
+-# types are typedef'ed and only the typedef is referenced, never the tag name.
+-
+-TYPEDEF_HIDES_STRUCT = NO
+-
+-# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
+-# determine which symbols to keep in memory and which to flush to disk.
+-# When the cache is full, less often used symbols will be written to disk.
+-# For small to medium size projects (<1000 input files) the default value is
+-# probably good enough. For larger projects a too small cache size can cause
+-# doxygen to be busy swapping symbols to and from disk most of the time
+-# causing a significant performance penality.
+-# If the system has enough physical memory increasing the cache will improve the
+-# performance by keeping more symbols in memory. Note that the value works on
+-# a logarithmic scale so increasing the size by one will rougly double the
+-# memory usage. The cache size is given by this formula:
+-# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
+-# corresponding to a cache size of 2^16 = 65536 symbols
+-
+-SYMBOL_CACHE_SIZE = 0
+-
+-#---------------------------------------------------------------------------
+-# Build related configuration options
+-#---------------------------------------------------------------------------
+-
+-# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+-# documentation are documented, even if no documentation was available.
+-# Private class members and static file members will be hidden unless
+-# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+-
+-EXTRACT_ALL = NO
+-
+-# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+-# will be included in the documentation.
+-
+-EXTRACT_PRIVATE = NO
+-
+-# If the EXTRACT_STATIC tag is set to YES all static members of a file
+-# will be included in the documentation.
+-
+-EXTRACT_STATIC = NO
+-
+-# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+-# defined locally in source files will be included in the documentation.
+-# If set to NO only classes defined in header files are included.
+-
+-EXTRACT_LOCAL_CLASSES = NO
+-
+-# This flag is only useful for Objective-C code. When set to YES local
+-# methods, which are defined in the implementation section but not in
+-# the interface are included in the documentation.
+-# If set to NO (the default) only methods in the interface are included.
+-
+-EXTRACT_LOCAL_METHODS = NO
+-
+-# If this flag is set to YES, the members of anonymous namespaces will be
+-# extracted and appear in the documentation as a namespace called
+-# 'anonymous_namespace{file}', where file will be replaced with the base
+-# name of the file that contains the anonymous namespace. By default
+-# anonymous namespace are hidden.
+-
+-EXTRACT_ANON_NSPACES = NO
+-
+-# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+-# undocumented members of documented classes, files or namespaces.
+-# If set to NO (the default) these members will be included in the
+-# various overviews, but no documentation section is generated.
+-# This option has no effect if EXTRACT_ALL is enabled.
+-
+-HIDE_UNDOC_MEMBERS = NO
+-
+-# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+-# undocumented classes that are normally visible in the class hierarchy.
+-# If set to NO (the default) these classes will be included in the various
+-# overviews. This option has no effect if EXTRACT_ALL is enabled.
+-
+-HIDE_UNDOC_CLASSES = NO
+-
+-# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+-# friend (class|struct|union) declarations.
+-# If set to NO (the default) these declarations will be included in the
+-# documentation.
+-
+-HIDE_FRIEND_COMPOUNDS = YES
+-
+-# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+-# documentation blocks found inside the body of a function.
+-# If set to NO (the default) these blocks will be appended to the
+-# function's detailed documentation block.
+-
+-HIDE_IN_BODY_DOCS = NO
+-
+-# The INTERNAL_DOCS tag determines if documentation
+-# that is typed after a \internal command is included. If the tag is set
+-# to NO (the default) then the documentation will be excluded.
+-# Set it to YES to include the internal documentation.
+-
+-INTERNAL_DOCS = NO
+-
+-# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+-# file names in lower-case letters. If set to YES upper-case letters are also
+-# allowed. This is useful if you have classes or files whose names only differ
+-# in case and if your file system supports case sensitive file names. Windows
+-# and Mac users are advised to set this option to NO.
+-
+-CASE_SENSE_NAMES = YES
+-
+-# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+-# will show members with their full class and namespace scopes in the
+-# documentation. If set to YES the scope will be hidden.
+-
+-HIDE_SCOPE_NAMES = NO
+-
+-# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+-# will put a list of the files that are included by a file in the documentation
+-# of that file.
+-
+-SHOW_INCLUDE_FILES = YES
+-
+-# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
+-# will list include files with double quotes in the documentation
+-# rather than with sharp brackets.
+-
+-FORCE_LOCAL_INCLUDES = NO
+-
+-# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+-# is inserted in the documentation for inline members.
+-
+-INLINE_INFO = NO
+-
+-# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+-# will sort the (detailed) documentation of file and class members
+-# alphabetically by member name. If set to NO the members will appear in
+-# declaration order.
+-
+-SORT_MEMBER_DOCS = YES
+-
+-# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+-# brief documentation of file, namespace and class members alphabetically
+-# by member name. If set to NO (the default) the members will appear in
+-# declaration order.
+-
+-SORT_BRIEF_DOCS = YES
+-
+-# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen
+-# will sort the (brief and detailed) documentation of class members so that
+-# constructors and destructors are listed first. If set to NO (the default)
+-# the constructors will appear in the respective orders defined by
+-# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS.
+-# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO
+-# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
+-
+-SORT_MEMBERS_CTORS_1ST = NO
+-
+-# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
+-# hierarchy of group names into alphabetical order. If set to NO (the default)
+-# the group names will appear in their defined order.
+-
+-SORT_GROUP_NAMES = NO
+-
+-# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+-# sorted by fully-qualified names, including namespaces. If set to
+-# NO (the default), the class list will be sorted only by class name,
+-# not including the namespace part.
+-# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+-# Note: This option applies only to the class list, not to the
+-# alphabetical list.
+-
+-SORT_BY_SCOPE_NAME = YES
+-
+-# The GENERATE_TODOLIST tag can be used to enable (YES) or
+-# disable (NO) the todo list. This list is created by putting \todo
+-# commands in the documentation.
+-
+-GENERATE_TODOLIST = YES
+-
+-# The GENERATE_TESTLIST tag can be used to enable (YES) or
+-# disable (NO) the test list. This list is created by putting \test
+-# commands in the documentation.
+-
+-GENERATE_TESTLIST = YES
+-
+-# The GENERATE_BUGLIST tag can be used to enable (YES) or
+-# disable (NO) the bug list. This list is created by putting \bug
+-# commands in the documentation.
+-
+-GENERATE_BUGLIST = YES
+-
+-# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+-# disable (NO) the deprecated list. This list is created by putting
+-# \deprecated commands in the documentation.
+-
+-GENERATE_DEPRECATEDLIST= YES
+-
+-# The ENABLED_SECTIONS tag can be used to enable conditional
+-# documentation sections, marked by \if sectionname ... \endif.
+-
+-ENABLED_SECTIONS =
+-
+-# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+-# the initial value of a variable or define consists of for it to appear in
+-# the documentation. If the initializer consists of more lines than specified
+-# here it will be hidden. Use a value of 0 to hide initializers completely.
+-# The appearance of the initializer of individual variables and defines in the
+-# documentation can be controlled using \showinitializer or \hideinitializer
+-# command in the documentation regardless of this setting.
+-
+-MAX_INITIALIZER_LINES = 30
+-
+-# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+-# at the bottom of the documentation of classes and structs. If set to YES the
+-# list will mention the files that were used to generate the documentation.
+-
+-SHOW_USED_FILES = YES
+-
+-# If the sources in your project are distributed over multiple directories
+-# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
+-# in the documentation. The default is NO.
+-
+-SHOW_DIRECTORIES = NO
+-
+-# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
+-# This will remove the Files entry from the Quick Index and from the
+-# Folder Tree View (if specified). The default is YES.
+-
+-SHOW_FILES = YES
+-
+-# Set the SHOW_NAMESPACES tag to NO to disable the generation of the
+-# Namespaces page.
+-# This will remove the Namespaces entry from the Quick Index
+-# and from the Folder Tree View (if specified). The default is YES.
+-
+-SHOW_NAMESPACES = YES
+-
+-# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+-# doxygen should invoke to get the current version for each file (typically from
+-# the version control system). Doxygen will invoke the program by executing (via
+-# popen()) the command <command> <input-file>, where <command> is the value of
+-# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
+-# provided by doxygen. Whatever the program writes to standard output
+-# is used as the file version. See the manual for examples.
+-
+-FILE_VERSION_FILTER =
+-
+-# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+-# by doxygen. The layout file controls the global structure of the generated
+-# output files in an output format independent way. The create the layout file
+-# that represents doxygen's defaults, run doxygen with the -l option.
+-# You can optionally specify a file name after the option, if omitted
+-# DoxygenLayout.xml will be used as the name of the layout file.
+-
+-LAYOUT_FILE =
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to warning and progress messages
+-#---------------------------------------------------------------------------
+-
+-# The QUIET tag can be used to turn on/off the messages that are generated
+-# by doxygen. Possible values are YES and NO. If left blank NO is used.
+-
+-QUIET = NO
+-
+-# The WARNINGS tag can be used to turn on/off the warning messages that are
+-# generated by doxygen. Possible values are YES and NO. If left blank
+-# NO is used.
+-
+-WARNINGS = YES
+-
+-# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+-# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+-# automatically be disabled.
+-
+-WARN_IF_UNDOCUMENTED = YES
+-
+-# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+-# potential errors in the documentation, such as not documenting some
+-# parameters in a documented function, or documenting parameters that
+-# don't exist or using markup commands wrongly.
+-
+-WARN_IF_DOC_ERROR = YES
+-
+-# This WARN_NO_PARAMDOC option can be abled to get warnings for
+-# functions that are documented, but have no documentation for their parameters
+-# or return value. If set to NO (the default) doxygen will only warn about
+-# wrong or incomplete parameter documentation, but not about the absence of
+-# documentation.
+-
+-WARN_NO_PARAMDOC = NO
+-
+-# The WARN_FORMAT tag determines the format of the warning messages that
+-# doxygen can produce. The string should contain the $file, $line, and $text
+-# tags, which will be replaced by the file and line number from which the
+-# warning originated and the warning text. Optionally the format may contain
+-# $version, which will be replaced by the version of the file (if it could
+-# be obtained via FILE_VERSION_FILTER)
+-
+-WARN_FORMAT = "$file:$line: $text "
+-
+-# The WARN_LOGFILE tag can be used to specify a file to which warning
+-# and error messages should be written. If left blank the output is written
+-# to stderr.
+-
+-WARN_LOGFILE =
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to the input files
+-#---------------------------------------------------------------------------
+-
+-# The INPUT tag can be used to specify the files and/or directories that contain
+-# documented source files. You may enter file names like "myfile.cpp" or
+-# directories like "/usr/src/myproject". Separate the files or directories
+-# with spaces.
+-
+-INPUT = Mainpage.dox \
+- poppler-annotation.h \
+- poppler-form.h \
+- poppler-link.h \
+- poppler-qt4.h \
+- poppler-optcontent.h \
+- poppler-page-transition.h
+-
+-# This tag can be used to specify the character encoding of the source files
+-# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
+-# also the default input encoding. Doxygen uses libiconv (or the iconv built
+-# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
+-# the list of possible encodings.
+-
+-INPUT_ENCODING = UTF-8
+-
+-# If the value of the INPUT tag contains directories, you can use the
+-# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+-# and *.h) to filter out the source-files in the directories. If left
+-# blank the following patterns are tested:
+-# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
+-# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90
+-
+-FILE_PATTERNS =
+-
+-# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+-# should be searched for input files as well. Possible values are YES and NO.
+-# If left blank NO is used.
+-
+-RECURSIVE = NO
+-
+-# The EXCLUDE tag can be used to specify files and/or directories that should
+-# excluded from the INPUT source files. This way you can easily exclude a
+-# subdirectory from a directory tree whose root is specified with the INPUT tag.
+-
+-EXCLUDE =
+-
+-# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
+-# directories that are symbolic links (a Unix filesystem feature) are excluded
+-# from the input.
+-
+-EXCLUDE_SYMLINKS = NO
+-
+-# If the value of the INPUT tag contains directories, you can use the
+-# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+-# certain files from those directories. Note that the wildcards are matched
+-# against the file with absolute path, so to exclude all test directories
+-# for example use the pattern */test/*
+-
+-EXCLUDE_PATTERNS =
+-
+-# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+-# (namespaces, classes, functions, etc.) that should be excluded from the
+-# output. The symbol name can be a fully qualified name, a word, or if the
+-# wildcard * is used, a substring. Examples: ANamespace, AClass,
+-# AClass::ANamespace, ANamespace::*Test
+-
+-EXCLUDE_SYMBOLS =
+-
+-# The EXAMPLE_PATH tag can be used to specify one or more files or
+-# directories that contain example code fragments that are included (see
+-# the \include command).
+-
+-EXAMPLE_PATH =
+-
+-# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+-# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+-# and *.h) to filter out the source-files in the directories. If left
+-# blank all files are included.
+-
+-EXAMPLE_PATTERNS =
+-
+-# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+-# searched for input files to be used with the \include or \dontinclude
+-# commands irrespective of the value of the RECURSIVE tag.
+-# Possible values are YES and NO. If left blank NO is used.
+-
+-EXAMPLE_RECURSIVE = NO
+-
+-# The IMAGE_PATH tag can be used to specify one or more files or
+-# directories that contain image that are included in the documentation (see
+-# the \image command).
+-
+-IMAGE_PATH =
+-
+-# The INPUT_FILTER tag can be used to specify a program that doxygen should
+-# invoke to filter for each input file. Doxygen will invoke the filter program
+-# by executing (via popen()) the command <filter> <input-file>, where <filter>
+-# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+-# input file. Doxygen will then use the output that the filter program writes
+-# to standard output.
+-# If FILTER_PATTERNS is specified, this tag will be
+-# ignored.
+-
+-INPUT_FILTER =
+-
+-# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+-# basis.
+-# Doxygen will compare the file name with each pattern and apply the
+-# filter if there is a match.
+-# The filters are a list of the form:
+-# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
+-# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
+-# is applied to all files.
+-
+-FILTER_PATTERNS =
+-
+-# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+-# INPUT_FILTER) will be used to filter the input files when producing source
+-# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+-
+-FILTER_SOURCE_FILES = NO
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to source browsing
+-#---------------------------------------------------------------------------
+-
+-# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+-# be generated. Documented entities will be cross-referenced with these sources.
+-# Note: To get rid of all source code in the generated output, make sure also
+-# VERBATIM_HEADERS is set to NO.
+-
+-SOURCE_BROWSER = NO
+-
+-# Setting the INLINE_SOURCES tag to YES will include the body
+-# of functions and classes directly in the documentation.
+-
+-INLINE_SOURCES = NO
+-
+-# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+-# doxygen to hide any special comment blocks from generated source code
+-# fragments. Normal C and C++ comments will always remain visible.
+-
+-STRIP_CODE_COMMENTS = YES
+-
+-# If the REFERENCED_BY_RELATION tag is set to YES
+-# then for each documented function all documented
+-# functions referencing it will be listed.
+-
+-REFERENCED_BY_RELATION = YES
+-
+-# If the REFERENCES_RELATION tag is set to YES
+-# then for each documented function all documented entities
+-# called/used by that function will be listed.
+-
+-REFERENCES_RELATION = YES
+-
+-# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
+-# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
+-# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
+-# link to the source code.
+-# Otherwise they will link to the documentation.
+-
+-REFERENCES_LINK_SOURCE = YES
+-
+-# If the USE_HTAGS tag is set to YES then the references to source code
+-# will point to the HTML generated by the htags(1) tool instead of doxygen
+-# built-in source browser. The htags tool is part of GNU's global source
+-# tagging system (see http://www.gnu.org/software/global/global.html). You
+-# will need version 4.8.6 or higher.
+-
+-USE_HTAGS = NO
+-
+-# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+-# will generate a verbatim copy of the header file for each class for
+-# which an include is specified. Set to NO to disable this.
+-
+-VERBATIM_HEADERS = YES
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to the alphabetical class index
+-#---------------------------------------------------------------------------
+-
+-# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+-# of all compounds will be generated. Enable this if the project
+-# contains a lot of classes, structs, unions or interfaces.
+-
+-ALPHABETICAL_INDEX = YES
+-
+-# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+-# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+-# in which this list will be split (can be a number in the range [1..20])
+-
+-COLS_IN_ALPHA_INDEX = 5
+-
+-# In case all classes in a project start with a common prefix, all
+-# classes will be put under the same header in the alphabetical index.
+-# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+-# should be ignored while generating the index headers.
+-
+-IGNORE_PREFIX =
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to the HTML output
+-#---------------------------------------------------------------------------
+-
+-# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+-# generate HTML output.
+-
+-GENERATE_HTML = YES
+-
+-# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+-# put in front of it. If left blank `html' will be used as the default path.
+-
+-HTML_OUTPUT = APIDOCS-html
+-
+-# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+-# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+-# doxygen will generate files with .html extension.
+-
+-HTML_FILE_EXTENSION = .html
+-
+-# The HTML_HEADER tag can be used to specify a personal HTML header for
+-# each generated HTML page. If it is left blank doxygen will generate a
+-# standard header.
+-
+-HTML_HEADER =
+-
+-# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+-# each generated HTML page. If it is left blank doxygen will generate a
+-# standard footer.
+-
+-HTML_FOOTER =
+-
+-# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+-# style sheet that is used by each HTML page. It can be used to
+-# fine-tune the look of the HTML output. If the tag is left blank doxygen
+-# will generate a default style sheet. Note that doxygen will try to copy
+-# the style sheet file to the HTML output directory, so don't put your own
+-# stylesheet in the HTML output directory as well, or it will be erased!
+-
+-HTML_STYLESHEET =
+-
+-# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
+-# Doxygen will adjust the colors in the stylesheet and background images
+-# according to this color. Hue is specified as an angle on a colorwheel,
+-# see http://en.wikipedia.org/wiki/Hue for more information.
+-# For instance the value 0 represents red, 60 is yellow, 120 is green,
+-# 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
+-# The allowed range is 0 to 359.
+-
+-HTML_COLORSTYLE_HUE = 220
+-
+-# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
+-# the colors in the HTML output. For a value of 0 the output will use
+-# grayscales only. A value of 255 will produce the most vivid colors.
+-
+-HTML_COLORSTYLE_SAT = 100
+-
+-# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
+-# the luminance component of the colors in the HTML output. Values below
+-# 100 gradually make the output lighter, whereas values above 100 make
+-# the output darker. The value divided by 100 is the actual gamma applied,
+-# so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
+-# and 100 does not change the gamma.
+-
+-HTML_COLORSTYLE_GAMMA = 80
+-
+-# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+-# page will contain the date and time when the page was generated. Setting
+-# this to NO can help when comparing the output of multiple runs.
+-
+-HTML_TIMESTAMP = YES
+-
+-# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+-# files or namespaces will be aligned in HTML using tables. If set to
+-# NO a bullet list will be used.
+-
+-HTML_ALIGN_MEMBERS = YES
+-
+-# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+-# documentation will contain sections that can be hidden and shown after the
+-# page has loaded. For this to work a browser that supports
+-# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
+-# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
+-
+-HTML_DYNAMIC_SECTIONS = NO
+-
+-# If the GENERATE_DOCSET tag is set to YES, additional index files
+-# will be generated that can be used as input for Apple's Xcode 3
+-# integrated development environment, introduced with OSX 10.5 (Leopard).
+-# To create a documentation set, doxygen will generate a Makefile in the
+-# HTML output directory. Running make will produce the docset in that
+-# directory and running "make install" will install the docset in
+-# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
+-# it at startup.
+-# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+-# for more information.
+-
+-GENERATE_DOCSET = NO
+-
+-# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
+-# feed. A documentation feed provides an umbrella under which multiple
+-# documentation sets from a single provider (such as a company or product suite)
+-# can be grouped.
+-
+-DOCSET_FEEDNAME = "Doxygen generated docs"
+-
+-# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
+-# should uniquely identify the documentation set bundle. This should be a
+-# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
+-# will append .docset to the name.
+-
+-DOCSET_BUNDLE_ID = org.doxygen.Project
+-
+-# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify
+-# the documentation publisher. This should be a reverse domain-name style
+-# string, e.g. com.mycompany.MyDocSet.documentation.
+-
+-DOCSET_PUBLISHER_ID = org.doxygen.Publisher
+-
+-# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
+-
+-DOCSET_PUBLISHER_NAME = Publisher
+-
+-# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+-# will be generated that can be used as input for tools like the
+-# Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
+-# of the generated HTML documentation.
+-
+-GENERATE_HTMLHELP = NO
+-
+-# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+-# be used to specify the file name of the resulting .chm file. You
+-# can add a path in front of the file if the result should not be
+-# written to the html output directory.
+-
+-CHM_FILE =
+-
+-# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+-# be used to specify the location (absolute path including file name) of
+-# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+-# the HTML help compiler on the generated index.hhp.
+-
+-HHC_LOCATION =
+-
+-# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+-# controls if a separate .chi index file is generated (YES) or that
+-# it should be included in the master .chm file (NO).
+-
+-GENERATE_CHI = NO
+-
+-# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
+-# is used to encode HtmlHelp index (hhk), content (hhc) and project file
+-# content.
+-
+-CHM_INDEX_ENCODING =
+-
+-# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+-# controls whether a binary table of contents is generated (YES) or a
+-# normal table of contents (NO) in the .chm file.
+-
+-BINARY_TOC = NO
+-
+-# The TOC_EXPAND flag can be set to YES to add extra items for group members
+-# to the contents of the HTML help documentation and to the tree view.
+-
+-TOC_EXPAND = NO
+-
+-# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+-# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated
+-# that can be used as input for Qt's qhelpgenerator to generate a
+-# Qt Compressed Help (.qch) of the generated HTML documentation.
+-
+-GENERATE_QHP = YES
+-
+-# If the QHG_LOCATION tag is specified, the QCH_FILE tag can
+-# be used to specify the file name of the resulting .qch file.
+-# The path specified is relative to the HTML output folder.
+-
+-QCH_FILE = poppler-qt4.qch
+-
+-# The QHP_NAMESPACE tag specifies the namespace to use when generating
+-# Qt Help Project output. For more information please see
+-# http://doc.trolltech.com/qthelpproject.html#namespace
+-
+-QHP_NAMESPACE = org.freedesktop.poppler.qt4
+-
+-# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
+-# Qt Help Project output. For more information please see
+-# http://doc.trolltech.com/qthelpproject.html#virtual-folders
+-
+-QHP_VIRTUAL_FOLDER = doc
+-
+-# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to
+-# add. For more information please see
+-# http://doc.trolltech.com/qthelpproject.html#custom-filters
+-
+-QHP_CUST_FILTER_NAME = "Poppler 0.15.0"
+-
+-# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the
+-# custom filter to add. For more information please see
+-# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">
+-# Qt Help Project / Custom Filters</a>.
+-
+-QHP_CUST_FILTER_ATTRS = poppler
+-
+-# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+-# project's
+-# filter section matches.
+-# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">
+-# Qt Help Project / Filter Attributes</a>.
+-
+-QHP_SECT_FILTER_ATTRS = poppler
+-
+-# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
+-# be used to specify the location of Qt's qhelpgenerator.
+-# If non-empty doxygen will try to run qhelpgenerator on the generated
+-# .qhp file.
+-
+-QHG_LOCATION = qhelpgenerator
+-
+-# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
+-# will be generated, which together with the HTML files, form an Eclipse help
+-# plugin. To install this plugin and make it available under the help contents
+-# menu in Eclipse, the contents of the directory containing the HTML and XML
+-# files needs to be copied into the plugins directory of eclipse. The name of
+-# the directory within the plugins directory should be the same as
+-# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before
+-# the help appears.
+-
+-GENERATE_ECLIPSEHELP = NO
+-
+-# A unique identifier for the eclipse help plugin. When installing the plugin
+-# the directory name containing the HTML and XML files should also have
+-# this name.
+-
+-ECLIPSE_DOC_ID = org.doxygen.Project
+-
+-# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+-# top of each HTML page. The value NO (the default) enables the index and
+-# the value YES disables it.
+-
+-DISABLE_INDEX = NO
+-
+-# This tag can be used to set the number of enum values (range [1..20])
+-# that doxygen will group on one line in the generated HTML documentation.
+-
+-ENUM_VALUES_PER_LINE = 4
+-
+-# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+-# structure should be generated to display hierarchical information.
+-# If the tag value is set to YES, a side panel will be generated
+-# containing a tree-like index structure (just like the one that
+-# is generated for HTML Help). For this to work a browser that supports
+-# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
+-# Windows users are probably better off using the HTML help feature.
+-
+-GENERATE_TREEVIEW = NO
+-
+-# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
+-# and Class Hierarchy pages using a tree view instead of an ordered list.
+-
+-USE_INLINE_TREES = NO
+-
+-# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+-# used to set the initial width (in pixels) of the frame in which the tree
+-# is shown.
+-
+-TREEVIEW_WIDTH = 250
+-
+-# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open
+-# links to external symbols imported via tag files in a separate window.
+-
+-EXT_LINKS_IN_WINDOW = NO
+-
+-# Use this tag to change the font size of Latex formulas included
+-# as images in the HTML documentation. The default is 10. Note that
+-# when you change the font size after a successful doxygen run you need
+-# to manually remove any form_*.png images from the HTML output directory
+-# to force them to be regenerated.
+-
+-FORMULA_FONTSIZE = 10
+-
+-# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+-# generated for formulas are transparent PNGs. Transparent PNGs are
+-# not supported properly for IE 6.0, but are supported on all modern browsers.
+-# Note that when changing this option you need to delete any form_*.png files
+-# in the HTML output before the changes have effect.
+-
+-FORMULA_TRANSPARENT = YES
+-
+-# When the SEARCHENGINE tag is enabled doxygen will generate a search box
+-# for the HTML output. The underlying search engine uses javascript
+-# and DHTML and should work on any modern browser. Note that when using
+-# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets
+-# (GENERATE_DOCSET) there is already a search function so this one should
+-# typically be disabled. For large projects the javascript based search engine
+-# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
+-
+-SEARCHENGINE = NO
+-
+-# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+-# implemented using a PHP enabled web server instead of at the web client
+-# using Javascript. Doxygen will generate the search PHP script and index
+-# file to put on the web server. The advantage of the server
+-# based approach is that it scales better to large projects and allows
+-# full text search. The disadvances is that it is more difficult to setup
+-# and does not have live searching capabilities.
+-
+-SERVER_BASED_SEARCH = NO
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to the LaTeX output
+-#---------------------------------------------------------------------------
+-
+-# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+-# generate Latex output.
+-
+-GENERATE_LATEX = YES
+-
+-# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+-# put in front of it. If left blank `latex' will be used as the default path.
+-
+-LATEX_OUTPUT = APIDOCS-latex
+-
+-# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+-# invoked. If left blank `latex' will be used as the default command name.
+-# Note that when enabling USE_PDFLATEX this option is only used for
+-# generating bitmaps for formulas in the HTML output, but not in the
+-# Makefile that is written to the output directory.
+-
+-LATEX_CMD_NAME = latex
+-
+-# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+-# generate index for LaTeX. If left blank `makeindex' will be used as the
+-# default command name.
+-
+-MAKEINDEX_CMD_NAME = makeindex
+-
+-# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+-# LaTeX documents. This may be useful for small projects and may help to
+-# save some trees in general.
+-
+-COMPACT_LATEX = NO
+-
+-# The PAPER_TYPE tag can be used to set the paper type that is used
+-# by the printer. Possible values are: a4, a4wide, letter, legal and
+-# executive. If left blank a4wide will be used.
+-
+-PAPER_TYPE = a4wide
+-
+-# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+-# packages that should be included in the LaTeX output.
+-
+-EXTRA_PACKAGES =
+-
+-# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+-# the generated latex document. The header should contain everything until
+-# the first chapter. If it is left blank doxygen will generate a
+-# standard header. Notice: only use this tag if you know what you are doing!
+-
+-LATEX_HEADER =
+-
+-# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+-# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+-# contain links (just like the HTML output) instead of page references
+-# This makes the output suitable for online browsing using a pdf viewer.
+-
+-PDF_HYPERLINKS = NO
+-
+-# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+-# plain latex in the generated Makefile. Set this option to YES to get a
+-# higher quality PDF documentation.
+-
+-USE_PDFLATEX = NO
+-
+-# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+-# command to the generated LaTeX files. This will instruct LaTeX to keep
+-# running if errors occur, instead of asking the user for help.
+-# This option is also used when generating formulas in HTML.
+-
+-LATEX_BATCHMODE = NO
+-
+-# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+-# include the index chapters (such as File Index, Compound Index, etc.)
+-# in the output.
+-
+-LATEX_HIDE_INDICES = NO
+-
+-# If LATEX_SOURCE_CODE is set to YES then doxygen will include
+-# source code with syntax highlighting in the LaTeX output.
+-# Note that which sources are shown also depends on other settings
+-# such as SOURCE_BROWSER.
+-
+-LATEX_SOURCE_CODE = NO
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to the RTF output
+-#---------------------------------------------------------------------------
+-
+-# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+-# The RTF output is optimized for Word 97 and may not look very pretty with
+-# other RTF readers or editors.
+-
+-GENERATE_RTF = NO
+-
+-# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+-# put in front of it. If left blank `rtf' will be used as the default path.
+-
+-RTF_OUTPUT = rtf
+-
+-# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+-# RTF documents. This may be useful for small projects and may help to
+-# save some trees in general.
+-
+-COMPACT_RTF = NO
+-
+-# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+-# will contain hyperlink fields. The RTF file will
+-# contain links (just like the HTML output) instead of page references.
+-# This makes the output suitable for online browsing using WORD or other
+-# programs which support those fields.
+-# Note: wordpad (write) and others do not support links.
+-
+-RTF_HYPERLINKS = NO
+-
+-# Load stylesheet definitions from file. Syntax is similar to doxygen's
+-# config file, i.e. a series of assignments. You only have to provide
+-# replacements, missing definitions are set to their default value.
+-
+-RTF_STYLESHEET_FILE =
+-
+-# Set optional variables used in the generation of an rtf document.
+-# Syntax is similar to doxygen's config file.
+-
+-RTF_EXTENSIONS_FILE =
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to the man page output
+-#---------------------------------------------------------------------------
+-
+-# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+-# generate man pages
+-
+-GENERATE_MAN = NO
+-
+-# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+-# put in front of it. If left blank `man' will be used as the default path.
+-
+-MAN_OUTPUT = man
+-
+-# The MAN_EXTENSION tag determines the extension that is added to
+-# the generated man pages (default is the subroutine's section .3)
+-
+-MAN_EXTENSION = .3
+-
+-# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+-# then it will generate one additional man file for each entity
+-# documented in the real man page(s). These additional files
+-# only source the real man page, but without them the man command
+-# would be unable to find the correct page. The default is NO.
+-
+-MAN_LINKS = NO
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to the XML output
+-#---------------------------------------------------------------------------
+-
+-# If the GENERATE_XML tag is set to YES Doxygen will
+-# generate an XML file that captures the structure of
+-# the code including all documentation.
+-
+-GENERATE_XML = NO
+-
+-# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+-# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+-# put in front of it. If left blank `xml' will be used as the default path.
+-
+-XML_OUTPUT = xml
+-
+-# The XML_SCHEMA tag can be used to specify an XML schema,
+-# which can be used by a validating XML parser to check the
+-# syntax of the XML files.
+-
+-XML_SCHEMA =
+-
+-# The XML_DTD tag can be used to specify an XML DTD,
+-# which can be used by a validating XML parser to check the
+-# syntax of the XML files.
+-
+-XML_DTD =
+-
+-# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+-# dump the program listings (including syntax highlighting
+-# and cross-referencing information) to the XML output. Note that
+-# enabling this will significantly increase the size of the XML output.
+-
+-XML_PROGRAMLISTING = YES
+-
+-#---------------------------------------------------------------------------
+-# configuration options for the AutoGen Definitions output
+-#---------------------------------------------------------------------------
+-
+-# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+-# generate an AutoGen Definitions (see autogen.sf.net) file
+-# that captures the structure of the code including all
+-# documentation. Note that this feature is still experimental
+-# and incomplete at the moment.
+-
+-GENERATE_AUTOGEN_DEF = NO
+-
+-#---------------------------------------------------------------------------
+-# configuration options related to the Perl module output
+-#---------------------------------------------------------------------------
+-
+-# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+-# generate a Perl module file that captures the structure of
+-# the code including all documentation. Note that this
+-# feature is still experimental and incomplete at the
+-# moment.
+-
+-GENERATE_PERLMOD = NO
+-
+-# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+-# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+-# to generate PDF and DVI output from the Perl module output.
+-
+-PERLMOD_LATEX = NO
+-
+-# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+-# nicely formatted so it can be parsed by a human reader.
+-# This is useful
+-# if you want to understand what is going on.
+-# On the other hand, if this
+-# tag is set to NO the size of the Perl module output will be much smaller
+-# and Perl will parse it just the same.
+-
+-PERLMOD_PRETTY = YES
+-
+-# The names of the make variables in the generated doxyrules.make file
+-# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+-# This is useful so different doxyrules.make files included by the same
+-# Makefile don't overwrite each other's variables.
+-
+-PERLMOD_MAKEVAR_PREFIX =
+-
+-#---------------------------------------------------------------------------
+-# Configuration options related to the preprocessor
+-#---------------------------------------------------------------------------
+-
+-# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+-# evaluate all C-preprocessor directives found in the sources and include
+-# files.
+-
+-ENABLE_PREPROCESSING = YES
+-
+-# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+-# names in the source code. If set to NO (the default) only conditional
+-# compilation will be performed. Macro expansion can be done in a controlled
+-# way by setting EXPAND_ONLY_PREDEF to YES.
+-
+-MACRO_EXPANSION = YES
+-
+-# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+-# then the macro expansion is limited to the macros specified with the
+-# PREDEFINED and EXPAND_AS_DEFINED tags.
+-
+-EXPAND_ONLY_PREDEF = YES
+-
+-# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+-# in the INCLUDE_PATH (see below) will be search if a #include is found.
+-
+-SEARCH_INCLUDES = YES
+-
+-# The INCLUDE_PATH tag can be used to specify one or more directories that
+-# contain include files that are not input files but should be processed by
+-# the preprocessor.
+-
+-INCLUDE_PATH =
+-
+-# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+-# patterns (like *.h and *.hpp) to filter out the header-files in the
+-# directories. If left blank, the patterns specified with FILE_PATTERNS will
+-# be used.
+-
+-INCLUDE_FILE_PATTERNS =
+-
+-# The PREDEFINED tag can be used to specify one or more macro names that
+-# are defined before the preprocessor is started (similar to the -D option of
+-# gcc). The argument of the tag is a list of macros of the form: name
+-# or name=definition (no spaces). If the definition and the = are
+-# omitted =1 is assumed. To prevent a macro definition from being
+-# undefined via #undef or recursively expanded use the := operator
+-# instead of the = operator.
+-
+-PREDEFINED = "Q_DECL_DEPRECATED=" \
+- "POPPLER_QT4_EXPORT="
+-
+-# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+-# this tag can be used to specify a list of macro names that should be expanded.
+-# The macro definition that is found in the sources will be used.
+-# Use the PREDEFINED tag if you want to use a different macro definition.
+-
+-EXPAND_AS_DEFINED =
+-
+-# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+-# doxygen's preprocessor will remove all function-like macros that are alone
+-# on a line, have an all uppercase name, and do not end with a semicolon. Such
+-# function macros are typically used for boiler-plate code, and will confuse
+-# the parser if not removed.
+-
+-SKIP_FUNCTION_MACROS = YES
+-
+-#---------------------------------------------------------------------------
+-# Configuration::additions related to external references
+-#---------------------------------------------------------------------------
+-
+-# The TAGFILES option can be used to specify one or more tagfiles.
+-# Optionally an initial location of the external documentation
+-# can be added for each tagfile. The format of a tag file without
+-# this location is as follows:
+-#
+-# TAGFILES = file1 file2 ...
+-# Adding location for the tag files is done as follows:
+-#
+-# TAGFILES = file1=loc1 "file2 = loc2" ...
+-# where "loc1" and "loc2" can be relative or absolute paths or
+-# URLs. If a location is present for each tag, the installdox tool
+-# does not have to be run to correct the links.
+-# Note that each tag file must have a unique name
+-# (where the name does NOT include the path)
+-# If a tag file is not located in the directory in which doxygen
+-# is run, you must also specify the path to the tagfile here.
+-
+-TAGFILES =
+-
+-# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+-# a tag file that is based on the input files it reads.
+-
+-GENERATE_TAGFILE =
+-
+-# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+-# in the class index. If set to NO only the inherited external classes
+-# will be listed.
+-
+-ALLEXTERNALS = NO
+-
+-# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+-# in the modules index. If set to NO, only the current project's groups will
+-# be listed.
+-
+-EXTERNAL_GROUPS = YES
+-
+-# The PERL_PATH should be the absolute path and name of the perl script
+-# interpreter (i.e. the result of `which perl').
+-
+-PERL_PATH = /usr/bin/perl
+-
+-#---------------------------------------------------------------------------
+-# Configuration options related to the dot tool
+-#---------------------------------------------------------------------------
+-
+-# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+-# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
+-# or super classes. Setting the tag to NO turns the diagrams off. Note that
+-# this option is superseded by the HAVE_DOT option below. This is only a
+-# fallback. It is recommended to install and use dot, since it yields more
+-# powerful graphs.
+-
+-CLASS_DIAGRAMS = YES
+-
+-# You can define message sequence charts within doxygen comments using the \msc
+-# command. Doxygen will then run the mscgen tool (see
+-# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
+-# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+-# the mscgen tool resides. If left empty the tool is assumed to be found in the
+-# default search path.
+-
+-MSCGEN_PATH =
+-
+-# If set to YES, the inheritance and collaboration graphs will hide
+-# inheritance and usage relations if the target is undocumented
+-# or is not a class.
+-
+-HIDE_UNDOC_RELATIONS = YES
+-
+-# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+-# available from the path. This tool is part of Graphviz, a graph visualization
+-# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+-# have no effect if this option is set to NO (the default)
+-
+-HAVE_DOT = YES
+-
+-# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is
+-# allowed to run in parallel. When set to 0 (the default) doxygen will
+-# base this on the number of processors available in the system. You can set it
+-# explicitly to a value larger than 0 to get control over the balance
+-# between CPU load and processing speed.
+-
+-DOT_NUM_THREADS = 0
+-
+-# By default doxygen will write a font called FreeSans.ttf to the output
+-# directory and reference it in all dot files that doxygen generates. This
+-# font does not include all possible unicode characters however, so when you need
+-# these (or just want a differently looking font) you can specify the font name
+-# using DOT_FONTNAME. You need need to make sure dot is able to find the font,
+-# which can be done by putting it in a standard location or by setting the
+-# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory
+-# containing the font.
+-
+-DOT_FONTNAME = FreeSans.ttf
+-
+-# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
+-# The default size is 10pt.
+-
+-DOT_FONTSIZE = 10
+-
+-# By default doxygen will tell dot to use the output directory to look for the
+-# FreeSans.ttf font (which doxygen will put there itself). If you specify a
+-# different font using DOT_FONTNAME you can set the path where dot
+-# can find it using this tag.
+-
+-DOT_FONTPATH =
+-
+-# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+-# will generate a graph for each documented class showing the direct and
+-# indirect inheritance relations. Setting this tag to YES will force the
+-# the CLASS_DIAGRAMS tag to NO.
+-
+-CLASS_GRAPH = YES
+-
+-# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+-# will generate a graph for each documented class showing the direct and
+-# indirect implementation dependencies (inheritance, containment, and
+-# class references variables) of the class with other documented classes.
+-
+-COLLABORATION_GRAPH = YES
+-
+-# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
+-# will generate a graph for groups, showing the direct groups dependencies
+-
+-GROUP_GRAPHS = YES
+-
+-# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+-# collaboration diagrams in a style similar to the OMG's Unified Modeling
+-# Language.
+-
+-UML_LOOK = NO
+-
+-# If set to YES, the inheritance and collaboration graphs will show the
+-# relations between templates and their instances.
+-
+-TEMPLATE_RELATIONS = NO
+-
+-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+-# tags are set to YES then doxygen will generate a graph for each documented
+-# file showing the direct and indirect include dependencies of the file with
+-# other documented files.
+-
+-INCLUDE_GRAPH = YES
+-
+-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+-# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+-# documented header file showing the documented files that directly or
+-# indirectly include this file.
+-
+-INCLUDED_BY_GRAPH = YES
+-
+-# If the CALL_GRAPH and HAVE_DOT options are set to YES then
+-# doxygen will generate a call dependency graph for every global function
+-# or class method. Note that enabling this option will significantly increase
+-# the time of a run. So in most cases it will be better to enable call graphs
+-# for selected functions only using the \callgraph command.
+-
+-CALL_GRAPH = NO
+-
+-# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
+-# doxygen will generate a caller dependency graph for every global function
+-# or class method. Note that enabling this option will significantly increase
+-# the time of a run. So in most cases it will be better to enable caller
+-# graphs for selected functions only using the \callergraph command.
+-
+-CALLER_GRAPH = NO
+-
+-# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+-# will graphical hierarchy of all classes instead of a textual one.
+-
+-GRAPHICAL_HIERARCHY = YES
+-
+-# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
+-# then doxygen will show the dependencies a directory has on other directories
+-# in a graphical way. The dependency relations are determined by the #include
+-# relations between the files in the directories.
+-
+-DIRECTORY_GRAPH = YES
+-
+-# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+-# generated by dot. Possible values are png, jpg, or gif
+-# If left blank png will be used.
+-
+-DOT_IMAGE_FORMAT = png
+-
+-# The tag DOT_PATH can be used to specify the path where the dot tool can be
+-# found. If left blank, it is assumed the dot tool can be found in the path.
+-
+-DOT_PATH =
+-
+-# The DOTFILE_DIRS tag can be used to specify one or more directories that
+-# contain dot files that are included in the documentation (see the
+-# \dotfile command).
+-
+-DOTFILE_DIRS =
+-
+-# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
+-# nodes that will be shown in the graph. If the number of nodes in a graph
+-# becomes larger than this value, doxygen will truncate the graph, which is
+-# visualized by representing a node as a red box. Note that doxygen if the
+-# number of direct children of the root node in a graph is already larger than
+-# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
+-# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+-
+-DOT_GRAPH_MAX_NODES = 50
+-
+-# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+-# graphs generated by dot. A depth value of 3 means that only nodes reachable
+-# from the root by following a path via at most 3 edges will be shown. Nodes
+-# that lay further from the root node will be omitted. Note that setting this
+-# option to 1 or 2 may greatly reduce the computation time needed for large
+-# code bases. Also note that the size of a graph can be further restricted by
+-# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+-
+-MAX_DOT_GRAPH_DEPTH = 0
+-
+-# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+-# background. This is disabled by default, because dot on Windows does not
+-# seem to support this out of the box. Warning: Depending on the platform used,
+-# enabling this option may lead to badly anti-aliased labels on the edges of
+-# a graph (i.e. they become hard to read).
+-
+-DOT_TRANSPARENT = NO
+-
+-# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+-# files in one run (i.e. multiple -o and -T options on the command line). This
+-# makes dot run faster, but since only newer versions of dot (>1.8.10)
+-# support this, this feature is disabled by default.
+-
+-DOT_MULTI_TARGETS = NO
+-
+-# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+-# generate a legend page explaining the meaning of the various boxes and
+-# arrows in the dot generated graphs.
+-
+-GENERATE_LEGEND = YES
+-
+-# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+-# remove the intermediate dot files that are used to generate
+-# the various graphs.
+-
+-DOT_CLEANUP = YES
+diff --git a/qt4/src/Mainpage.dox b/qt4/src/Mainpage.dox
+deleted file mode 100644
+index 30398c3d..00000000
+--- a/qt4/src/Mainpage.dox
++++ /dev/null
+@@ -1,85 +0,0 @@
+-/**
+-@mainpage The Poppler Qt4 interface library
+-
+-The %Poppler Qt4 interface library, libpoppler-qt4, is a library that
+-allows Qt4 programmers to easily load and render PDF files. The
+-%Poppler Qt4 interface library uses poppler internally to do its job,
+-but the Qt4 programmer will never have to worry about poppler
+-internals.
+-
+-
+-@section help Current Status
+-
+-The %Poppler Qt4 interface library is quite stable and working.
+-
+-@section refimpl Example Programs
+-
+-Examples programs can be found in the qt4/test directory. The %Poppler
+-Qt4 interface library is also used in the KDE's
+-document viewer <a href="http://okular.kde.org">Okular</a>. The source files
+-for Okular's PDF plugin (%Poppler-based) can be found on the git server
+-of the KDE project, under
+-<a
+-href="http://quickgit.kde.org/?p=okular.git&a=tree&f=generators/poppler">this
+-URL</a>.
+-
+-
+-@section req How to use the Poppler Qt4 interface library in three easy steps
+-
+-Programmer who would like to use the %Poppler Qt4 interface library
+-simply need to add the following line to their C++ source files:
+-
+-@code
+-#include <poppler-qt4.h>
+-@endcode
+-
+-A PDF document can then be loaded as follows:
+-@code
+-QString filename;
+-
+-Poppler::Document* document = Poppler::Document::load(filename);
+-if (!document || document->isLocked()) {
+-
+- // ... error message ....
+-
+- delete document;
+- return;
+-}
+-@endcode
+-
+-Pages can be rendered to QImages with the following commands:
+-
+-@code
+-// Paranoid safety check
+-if (document == 0) {
+- // ... error message ...
+- return;
+-}
+-
+-// Access page of the PDF file
+-Poppler::Page* pdfPage = document->page(pageNumber); // Document starts at page 0
+-if (pdfPage == 0) {
+- // ... error message ...
+- return;
+-}
+-
+-// Generate a QImage of the rendered page
+-QImage image = pdfPage->renderToImage(xres, yres, x, y, width, height);
+-if (image.isNull()) {
+- // ... error message ...
+- return;
+-}
+-
+-// ... use image ...
+-
+-// after the usage, the page must be deleted
+-delete pdfPage;
+-@endcode
+-
+-Finally, don't forget to destroy the document:
+-
+-@code
+-delete document;
+-@endcode
+- */
+-
+diff --git a/qt4/src/poppler-annotation-helper.h b/qt4/src/poppler-annotation-helper.h
+deleted file mode 100644
+index 3150569c..00000000
+--- a/qt4/src/poppler-annotation-helper.h
++++ /dev/null
+@@ -1,181 +0,0 @@
+-/* poppler-annotation-helper.h: qt interface to poppler
+- * Copyright (C) 2006, 2008, 2017, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2012, Fabio D'Urso <fabiodurso@hotmail.it>
+- * Adapting code from
+- * Copyright (C) 2004 by Enrico Ros <eros.kde@email.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include <QtCore/QDebug>
+-
+-#include <Object.h>
+-
+-class QColor;
+-
+-class AnnotColor;
+-
+-namespace Poppler {
+-
+-class XPDFReader
+-{
+- public:
+- // find named symbol and parse it
+- static inline void lookupName( Dict *, char *, QString & dest );
+- static inline void lookupString( Dict *, char *, QString & dest );
+- static inline void lookupBool( Dict *, char *, bool & dest );
+- static inline void lookupInt( Dict *, char *, int & dest );
+- static inline void lookupNum( Dict *, char *, double & dest );
+- static inline int lookupNumArray( Dict *, char *, double * dest, int len );
+- static inline void lookupColor( Dict *, char *, QColor & color );
+- static inline void lookupIntRef( Dict *, char *, int & dest );
+- static inline void lookupDate( Dict *, char *, QDateTime & dest );
+- // transform from user coords to normalized ones using the matrix M
+- static inline void transform( double * M, double x, double y, QPointF &res );
+- static inline void invTransform( double * M, const QPointF &p, double &x, double &y );
+-};
+-
+-void XPDFReader::lookupName( Dict * dict, char * type, QString & dest )
+-{
+- Object nameObj = dict->lookup( type );
+- if ( nameObj.isNull() )
+- return;
+- if ( nameObj.isName() )
+- dest = nameObj.getName();
+- else
+- qDebug() << type << " is not Name." << endl;
+-}
+-
+-void XPDFReader::lookupString( Dict * dict, char * type, QString & dest )
+-{
+- Object stringObj = dict->lookup( type );
+- if ( stringObj.isNull() )
+- return;
+- if ( stringObj.isString() )
+- dest = stringObj.getString()->getCString();
+- else
+- qDebug() << type << " is not String." << endl;
+-}
+-
+-void XPDFReader::lookupBool( Dict * dict, char * type, bool & dest )
+-{
+- Object boolObj = dict->lookup( type );
+- if ( boolObj.isNull() )
+- return;
+- if ( boolObj.isBool() )
+- dest = boolObj.getBool() == gTrue;
+- else
+- qDebug() << type << " is not Bool." << endl;
+-}
+-
+-void XPDFReader::lookupInt( Dict * dict, char * type, int & dest )
+-{
+- Object intObj = dict->lookup( type );
+- if ( intObj.isNull() )
+- return;
+- if ( intObj.isInt() )
+- dest = intObj.getInt();
+- else
+- qDebug() << type << " is not Int." << endl;
+-}
+-
+-void XPDFReader::lookupNum( Dict * dict, char * type, double & dest )
+-{
+- Object numObj = dict->lookup( type );
+- if ( numObj.isNull() )
+- return;
+- if ( numObj.isNum() )
+- dest = numObj.getNum();
+- else
+- qDebug() << type << " is not Num." << endl;
+-}
+-
+-int XPDFReader::lookupNumArray( Dict * dict, char * type, double * dest, int len )
+-{
+- Object arrObj = dict->lookup( type );
+- if ( arrObj.isNull() )
+- return 0;
+- if ( arrObj.isArray() )
+- {
+- len = qMin( len, arrObj.arrayGetLength() );
+- for ( int i = 0; i < len; i++ )
+- {
+- Object numObj = arrObj.arrayGet( i );
+- dest[i] = numObj.getNum();
+- }
+- }
+- else
+- {
+- len = 0;
+- qDebug() << type << "is not Array." << endl;
+- }
+- return len;
+-}
+-
+-void XPDFReader::lookupColor( Dict * dict, char * type, QColor & dest )
+-{
+- double c[3];
+- if ( XPDFReader::lookupNumArray( dict, type, c, 3 ) == 3 )
+- dest = QColor( (int)(c[0]*255.0), (int)(c[1]*255.0), (int)(c[2]*255.0));
+-}
+-
+-void XPDFReader::lookupIntRef( Dict * dict, char * type, int & dest )
+-{
+- Object refObj = dict->lookupNF( type );
+- if ( refObj.isNull() )
+- return;
+- if ( refObj.isRef() )
+- dest = refObj.getRefNum();
+- else
+- qDebug() << type << " is not Ref." << endl;
+-}
+-
+-void XPDFReader::lookupDate( Dict * dict, char * type, QDateTime & dest )
+-{
+- Object dateObj = dict->lookup( type );
+- if ( dateObj.isNull() )
+- return;
+- if ( dateObj.isString() )
+- {
+- dest = convertDate( dateObj.getString()->getCString() );
+- }
+- else
+- qDebug() << type << " is not Date" << endl;
+-}
+-
+-void XPDFReader::transform( double * M, double x, double y, QPointF &res )
+-{
+- res.setX( M[0] * x + M[2] * y + M[4] );
+- res.setY( M[1] * x + M[3] * y + M[5] );
+-}
+-
+-void XPDFReader::invTransform( double * M, const QPointF &p, double &x, double &y )
+-{
+- const double det = M[0]*M[3] - M[1]*M[2];
+- Q_ASSERT(det != 0);
+-
+- const double invM[4] = { M[3]/det, -M[1]/det, -M[2]/det, M[0]/det };
+- const double xt = p.x() - M[4];
+- const double yt = p.y() - M[5];
+-
+- x = invM[0] * xt + invM[2] * yt;
+- y = invM[1] * xt + invM[3] * yt;
+-}
+-
+-QColor convertAnnotColor( AnnotColor *color );
+-AnnotColor* convertQColor( const QColor &color );
+-
+-}
+diff --git a/qt4/src/poppler-annotation-private.h b/qt4/src/poppler-annotation-private.h
+deleted file mode 100644
+index b530e2f2..00000000
+--- a/qt4/src/poppler-annotation-private.h
++++ /dev/null
+@@ -1,112 +0,0 @@
+-/* poppler-annotation-private.h: qt interface to poppler
+- * Copyright (C) 2007, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2012, Tobias Koenig <tokoe@kdab.com>
+- * Copyright (C) 2012, 2013 Fabio D'Urso <fabiodurso@hotmail.it>
+- * Copyright (C) 2012, 2014, Albert Astals Cid <aacid@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef _POPPLER_ANNOTATION_PRIVATE_H_
+-#define _POPPLER_ANNOTATION_PRIVATE_H_
+-
+-#include <QtCore/QLinkedList>
+-#include <QtCore/QPointF>
+-#include <QtCore/QSharedDataPointer>
+-
+-#include "poppler-annotation.h"
+-
+-#include <Object.h>
+-
+-class Annot;
+-class AnnotPath;
+-class Link;
+-class Page;
+-class PDFRectangle;
+-
+-namespace Poppler
+-{
+-class DocumentData;
+-
+-class AnnotationPrivate : public QSharedData
+-{
+- public:
+- AnnotationPrivate();
+- virtual ~AnnotationPrivate();
+-
+- void addRevision(Annotation *ann, Annotation::RevScope scope, Annotation::RevType type);
+-
+- /* Returns an Annotation of the right subclass whose d_ptr points to
+- * this AnnotationPrivate */
+- virtual Annotation * makeAlias() = 0;
+-
+- /* properties: contents related */
+- QString author;
+- QString contents;
+- QString uniqueName;
+- QDateTime modDate; // before or equal to currentDateTime()
+- QDateTime creationDate; // before or equal to modifyDate
+-
+- /* properties: look/interaction related */
+- int flags;
+- QRectF boundary;
+-
+- /* style and popup */
+- Annotation::Style style;
+- Annotation::Popup popup;
+-
+- /* revisions */
+- Annotation::RevScope revisionScope;
+- Annotation::RevType revisionType;
+- QList<Annotation*> revisions;
+-
+- /* After this call, the Annotation object will behave like a wrapper for
+- * the specified Annot object. All cached values are discarded */
+- void tieToNativeAnnot(Annot *ann, ::Page *page, DocumentData *doc);
+-
+- /* Creates a new Annot object on the specified page, flushes current
+- * values to that object and ties this Annotation to that object */
+- virtual Annot* createNativeAnnot(::Page *destPage, DocumentData *doc) = 0;
+-
+- /* Inited to 0 (i.e. untied annotation) */
+- Annot *pdfAnnot;
+- ::Page *pdfPage;
+- DocumentData * parentDoc;
+-
+- /* The following helpers only work if pdfPage is set */
+- void flushBaseAnnotationProperties();
+- void fillNormalizationMTX(double MTX[6], int pageRotation) const;
+- void fillTransformationMTX(double MTX[6]) const;
+- QRectF fromPdfRectangle(const PDFRectangle &r) const;
+- PDFRectangle boundaryToPdfRectangle(const QRectF &r, int flags) const;
+- AnnotPath * toAnnotPath(const QLinkedList<QPointF> &l) const;
+-
+- /* Scan page for annotations, parentId=0 searches for root annotations, subtypes empty means all subtypes */
+- static QList<Annotation*> findAnnotations(::Page *pdfPage, DocumentData *doc, const QSet<Annotation::SubType> &subtypes, int parentId = 0);
+-
+- /* Add given annotation to given page */
+- static void addAnnotationToPage(::Page *pdfPage, DocumentData *doc, const Annotation * ann);
+-
+- /* Remove annotation from page and destroy ann */
+- static void removeAnnotationFromPage(::Page *pdfPage, const Annotation * ann);
+-
+- Ref pdfObjectReference() const;
+-
+- Link* additionalAction( Annotation::AdditionalActionType type ) const;
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-annotation.cc b/qt4/src/poppler-annotation.cc
+deleted file mode 100644
+index 8a7f60b1..00000000
+--- a/qt4/src/poppler-annotation.cc
++++ /dev/null
+@@ -1,5089 +0,0 @@
+-/* poppler-annotation.cc: qt interface to poppler
+- * Copyright (C) 2006, 2009, 2012-2015 Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2006, 2008, 2010 Pino Toscano <pino@kde.org>
+- * Copyright (C) 2012, Guillermo A. Amaral B. <gamaral@kde.org>
+- * Copyright (C) 2012-2014 Fabio D'Urso <fabiodurso@hotmail.it>
+- * Copyright (C) 2012, 2015, Tobias Koenig <tokoe@kdab.com>
+- * Adapting code from
+- * Copyright (C) 2004 by Enrico Ros <eros.kde@email.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-// qt/kde includes
+-#include <QtCore/QRegExp>
+-#include <QtCore/QtAlgorithms>
+-#include <QtXml/QDomElement>
+-#include <QtGui/QColor>
+-#include <QtGui/QTransform>
+-
+-// local includes
+-#include "poppler-annotation.h"
+-#include "poppler-link.h"
+-#include "poppler-qt4.h"
+-#include "poppler-annotation-helper.h"
+-#include "poppler-annotation-private.h"
+-#include "poppler-page-private.h"
+-#include "poppler-private.h"
+-
+-// poppler includes
+-#include <Page.h>
+-#include <Annot.h>
+-#include <Gfx.h>
+-#include <Error.h>
+-#include <FileSpec.h>
+-#include <Link.h>
+-
+-/* Almost all getters directly query the underlying poppler annotation, with
+- * the exceptions of link, file attachment, sound, movie and screen annotations,
+- * Whose data retrieval logic has not been moved yet. Their getters return
+- * static data set at creation time by findAnnotations
+- */
+-
+-namespace Poppler {
+-
+-//BEGIN AnnotationUtils implementation
+-Annotation * AnnotationUtils::createAnnotation( const QDomElement & annElement )
+-{
+- // safety check on annotation element
+- if ( !annElement.hasAttribute( "type" ) )
+- return 0;
+-
+- // build annotation of given type
+- Annotation * annotation = 0;
+- int typeNumber = annElement.attribute( "type" ).toInt();
+- switch ( typeNumber )
+- {
+- case Annotation::AText:
+- annotation = new TextAnnotation( annElement );
+- break;
+- case Annotation::ALine:
+- annotation = new LineAnnotation( annElement );
+- break;
+- case Annotation::AGeom:
+- annotation = new GeomAnnotation( annElement );
+- break;
+- case Annotation::AHighlight:
+- annotation = new HighlightAnnotation( annElement );
+- break;
+- case Annotation::AStamp:
+- annotation = new StampAnnotation( annElement );
+- break;
+- case Annotation::AInk:
+- annotation = new InkAnnotation( annElement );
+- break;
+- case Annotation::ACaret:
+- annotation = new CaretAnnotation( annElement );
+- break;
+- }
+-
+- // return created annotation
+- return annotation;
+-}
+-
+-void AnnotationUtils::storeAnnotation( const Annotation * ann, QDomElement & annElement,
+- QDomDocument & document )
+-{
+- // save annotation's type as element's attribute
+- annElement.setAttribute( "type", (uint)ann->subType() );
+-
+- // append all annotation data as children of this node
+- ann->store( annElement, document );
+-}
+-
+-QDomElement AnnotationUtils::findChildElement( const QDomNode & parentNode,
+- const QString & name )
+-{
+- // loop through the whole children and return a 'name' named element
+- QDomNode subNode = parentNode.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement element = subNode.toElement();
+- if ( element.tagName() == name )
+- return element;
+- subNode = subNode.nextSibling();
+- }
+- // if the name can't be found, return a dummy null element
+- return QDomElement();
+-}
+-//END AnnotationUtils implementation
+-
+-
+-//BEGIN Annotation implementation
+-AnnotationPrivate::AnnotationPrivate()
+- : flags( 0 ), revisionScope ( Annotation::Root ),
+- revisionType ( Annotation::None ), pdfAnnot ( 0 ), pdfPage ( 0 ),
+- parentDoc ( 0 )
+-{
+-}
+-
+-void AnnotationPrivate::addRevision( Annotation *ann, Annotation::RevScope scope, Annotation::RevType type )
+-{
+- /* Since ownership stays with the caller, create an alias of ann */
+- revisions.append( ann->d_ptr->makeAlias() );
+-
+- /* Set revision properties */
+- revisionScope = scope;
+- revisionType = type;
+-}
+-
+-AnnotationPrivate::~AnnotationPrivate()
+-{
+- // Delete all children revisions
+- qDeleteAll( revisions );
+-
+- // Release Annot object
+- if (pdfAnnot)
+- pdfAnnot->decRefCnt();
+-}
+-
+-void AnnotationPrivate::tieToNativeAnnot(Annot *ann, ::Page *page, Poppler::DocumentData * doc)
+-{
+- if (pdfAnnot)
+- {
+- error(errIO, -1, "Annotation is already tied");
+- return;
+- }
+-
+- pdfAnnot = ann;
+- pdfPage = page;
+- parentDoc = doc;
+-
+- pdfAnnot->incRefCnt();
+-}
+-
+-/* This method is called when a new annotation is created, after pdfAnnot and
+- * pdfPage have been set */
+-void AnnotationPrivate::flushBaseAnnotationProperties()
+-{
+- Q_ASSERT ( pdfPage );
+-
+- Annotation *q = makeAlias(); // Setters are defined in the public class
+-
+- // Since pdfAnnot has been set, this calls will write in the Annot object
+- q->setAuthor(author);
+- q->setContents(contents);
+- q->setUniqueName(uniqueName);
+- q->setModificationDate(modDate);
+- q->setCreationDate(creationDate);
+- q->setFlags(flags);
+- //q->setBoundary(boundary); -- already set by subclass-specific code
+- q->setStyle(style);
+- q->setPopup(popup);
+-
+- // Flush revisions
+- foreach (Annotation *r, revisions)
+- {
+- // TODO: Flush revision
+- delete r; // Object is no longer needed
+- }
+-
+- delete q;
+-
+- // Clear some members to save memory
+- author.clear();
+- contents.clear();
+- uniqueName.clear();
+- revisions.clear();
+-}
+-
+-// Returns matrix to convert from user space coords (oriented according to the
+-// specified rotation) to normalized coords
+-void AnnotationPrivate::fillNormalizationMTX(double MTX[6], int pageRotation) const
+-{
+- Q_ASSERT ( pdfPage );
+-
+- // build a normalized transform matrix for this page at 100% scale
+- GfxState * gfxState = new GfxState( 72.0, 72.0, pdfPage->getCropBox(), pageRotation, gTrue );
+- double * gfxCTM = gfxState->getCTM();
+-
+- double w = pdfPage->getCropWidth();
+- double h = pdfPage->getCropHeight();
+-
+- // Swap width and height if the page is rotated landscape or seascape
+- if ( pageRotation == 90 || pageRotation == 270 )
+- {
+- double t = w;
+- w = h;
+- h = t;
+- }
+-
+- for ( int i = 0; i < 6; i+=2 )
+- {
+- MTX[i] = gfxCTM[i] / w;
+- MTX[i+1] = gfxCTM[i+1] / h;
+- }
+- delete gfxState;
+-}
+-
+-// Returns matrix to convert from user space coords (i.e. those that are stored
+-// in the PDF file) to normalized coords (i.e. those that we expose to clients).
+-// This method also applies a rotation around the top-left corner if the
+-// FixedRotation flag is set.
+-void AnnotationPrivate::fillTransformationMTX(double MTX[6]) const
+-{
+- Q_ASSERT ( pdfPage );
+- Q_ASSERT ( pdfAnnot );
+-
+- const int pageRotate = pdfPage->getRotate();
+-
+- if ( pageRotate == 0 || ( pdfAnnot->getFlags() & Annot::flagNoRotate ) == 0 )
+- {
+- // Use the normalization matrix for this page's rotation
+- fillNormalizationMTX( MTX, pageRotate );
+- }
+- else
+- {
+- // Clients expect coordinates relative to this page's rotation, but
+- // FixedRotation annotations internally use unrotated coordinates:
+- // construct matrix to both normalize and rotate coordinates using the
+- // top-left corner as rotation pivot
+-
+- double MTXnorm[6];
+- fillNormalizationMTX( MTXnorm, pageRotate );
+-
+- QTransform transform( MTXnorm[0], MTXnorm[1], MTXnorm[2],
+- MTXnorm[3], MTXnorm[4], MTXnorm[5] );
+- transform.translate( +pdfAnnot->getXMin(), +pdfAnnot->getYMax() );
+- transform.rotate( pageRotate );
+- transform.translate( -pdfAnnot->getXMin(), -pdfAnnot->getYMax() );
+-
+- MTX[0] = transform.m11();
+- MTX[1] = transform.m12();
+- MTX[2] = transform.m21();
+- MTX[3] = transform.m22();
+- MTX[4] = transform.dx();
+- MTX[5] = transform.dy();
+- }
+-}
+-
+-QRectF AnnotationPrivate::fromPdfRectangle(const PDFRectangle &r) const
+-{
+- double swp, MTX[6];
+- fillTransformationMTX(MTX);
+-
+- QPointF p1, p2;
+- XPDFReader::transform( MTX, r.x1, r.y1, p1 );
+- XPDFReader::transform( MTX, r.x2, r.y2, p2 );
+-
+- double tl_x = p1.x();
+- double tl_y = p1.y();
+- double br_x = p2.x();
+- double br_y = p2.y();
+-
+- if (tl_x > br_x)
+- {
+- swp = tl_x;
+- tl_x = br_x;
+- br_x = swp;
+- }
+-
+- if (tl_y > br_y)
+- {
+- swp = tl_y;
+- tl_y = br_y;
+- br_y = swp;
+- }
+-
+- return QRectF( QPointF(tl_x,tl_y) , QPointF(br_x,br_y) );
+-}
+-
+-// This function converts a boundary QRectF in normalized coords to a
+-// PDFRectangle in user coords. If the FixedRotation flag is set, this function
+-// also applies a rotation around the top-left corner: it's the inverse of
+-// the transformation produced by fillTransformationMTX, but we can't use
+-// fillTransformationMTX here because it relies on the native annotation
+-// object's boundary rect to be already set up.
+-PDFRectangle AnnotationPrivate::boundaryToPdfRectangle(const QRectF &r, int flags) const
+-{
+- Q_ASSERT ( pdfPage );
+-
+- const int pageRotate = pdfPage->getRotate();
+-
+- double MTX[6];
+- fillNormalizationMTX( MTX, pageRotate );
+-
+- double tl_x, tl_y, br_x, br_y, swp;
+- XPDFReader::invTransform( MTX, r.topLeft(), tl_x, tl_y );
+- XPDFReader::invTransform( MTX, r.bottomRight(), br_x, br_y );
+-
+- if (tl_x > br_x)
+- {
+- swp = tl_x;
+- tl_x = br_x;
+- br_x = swp;
+- }
+-
+- if (tl_y > br_y)
+- {
+- swp = tl_y;
+- tl_y = br_y;
+- br_y = swp;
+- }
+-
+- const int rotationFixUp = ( flags & Annotation::FixedRotation ) ? pageRotate : 0;
+- const double width = br_x - tl_x;
+- const double height = br_y - tl_y;
+-
+- if ( rotationFixUp == 0 )
+- return PDFRectangle(tl_x, tl_y, br_x, br_y);
+- else if ( rotationFixUp == 90 )
+- return PDFRectangle(tl_x, tl_y - width, tl_x + height, tl_y);
+- else if ( rotationFixUp == 180 )
+- return PDFRectangle(br_x, tl_y - height, br_x + width, tl_y);
+- else // rotationFixUp == 270
+- return PDFRectangle(br_x, br_y - width, br_x + height, br_y);
+-}
+-
+-AnnotPath * AnnotationPrivate::toAnnotPath(const QLinkedList<QPointF> &list) const
+-{
+- const int count = list.size();
+- AnnotCoord **ac = (AnnotCoord **) gmallocn(count, sizeof(AnnotCoord*));
+-
+- double MTX[6];
+- fillTransformationMTX(MTX);
+-
+- int pos = 0;
+- foreach (const QPointF &p, list)
+- {
+- double x, y;
+- XPDFReader::invTransform( MTX, p, x, y );
+- ac[pos++] = new AnnotCoord(x, y);
+- }
+-
+- return new AnnotPath(ac, count);
+-}
+-
+-QList<Annotation*> AnnotationPrivate::findAnnotations(::Page *pdfPage, DocumentData *doc, const QSet<Annotation::SubType> &subtypes, int parentID)
+-{
+- Annots* annots = pdfPage->getAnnots();
+- const uint numAnnotations = annots->getNumAnnots();
+- if ( numAnnotations == 0 )
+- {
+- return QList<Annotation*>();
+- }
+-
+- const bool wantTextAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::AText);
+- const bool wantLineAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::ALine);
+- const bool wantGeomAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::AGeom);
+- const bool wantHighlightAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::AHighlight);
+- const bool wantStampAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::AStamp);
+- const bool wantInkAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::AInk);
+- const bool wantLinkAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::ALink);
+- const bool wantCaretAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::ACaret);
+- const bool wantFileAttachmentAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::AFileAttachment);
+- const bool wantSoundAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::ASound);
+- const bool wantMovieAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::AMovie);
+- const bool wantScreenAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::AScreen);
+- const bool wantWidgetAnnotations = subtypes.isEmpty() || subtypes.contains(Annotation::AWidget);
+-
+- // Create Annotation objects and tie to their native Annot
+- QList<Annotation*> res;
+- for ( uint j = 0; j < numAnnotations; j++ )
+- {
+- // get the j-th annotation
+- Annot * ann = annots->getAnnot( j );
+- if ( !ann )
+- {
+- error(errInternal, -1, "Annot {0:ud} is null", j);
+- continue;
+- }
+-
+- // Check parent annotation
+- AnnotMarkup * markupann = dynamic_cast< AnnotMarkup * >( ann );
+- if (!markupann)
+- {
+- // Assume it's a root annotation, and skip if user didn't request it
+- if (parentID != 0)
+- continue;
+- }
+- else if (markupann->getInReplyToID() != parentID)
+- continue;
+-
+- /* Create Annotation of the right subclass */
+- Annotation * annotation = 0;
+- Annot::AnnotSubtype subType = ann->getType();
+-
+- switch ( subType )
+- {
+- case Annot::typeText:
+- if (!wantTextAnnotations)
+- continue;
+- annotation = new TextAnnotation(TextAnnotation::Linked);
+- break;
+- case Annot::typeFreeText:
+- if (!wantTextAnnotations)
+- continue;
+- annotation = new TextAnnotation(TextAnnotation::InPlace);
+- break;
+- case Annot::typeLine:
+- if (!wantLineAnnotations)
+- continue;
+- annotation = new LineAnnotation(LineAnnotation::StraightLine);
+- break;
+- case Annot::typePolygon:
+- case Annot::typePolyLine:
+- if (!wantLineAnnotations)
+- continue;
+- annotation = new LineAnnotation(LineAnnotation::Polyline);
+- break;
+- case Annot::typeSquare:
+- case Annot::typeCircle:
+- if (!wantGeomAnnotations)
+- continue;
+- annotation = new GeomAnnotation();
+- break;
+- case Annot::typeHighlight:
+- case Annot::typeUnderline:
+- case Annot::typeSquiggly:
+- case Annot::typeStrikeOut:
+- if (!wantHighlightAnnotations)
+- continue;
+- annotation = new HighlightAnnotation();
+- break;
+- case Annot::typeStamp:
+- if (!wantStampAnnotations)
+- continue;
+- annotation = new StampAnnotation();
+- break;
+- case Annot::typeInk:
+- if (!wantInkAnnotations)
+- continue;
+- annotation = new InkAnnotation();
+- break;
+- case Annot::typeLink: /* TODO: Move logic to getters */
+- {
+- if (!wantLinkAnnotations)
+- continue;
+- // parse Link params
+- AnnotLink * linkann = static_cast< AnnotLink * >( ann );
+- LinkAnnotation * l = new LinkAnnotation();
+- annotation = l;
+-
+- // -> hlMode
+- l->setLinkHighlightMode( (LinkAnnotation::HighlightMode)linkann->getLinkEffect() );
+-
+- // -> link region
+- // TODO
+-
+- // reading link action
+- if ( linkann->getAction() )
+- {
+- Link * popplerLink = PageData::convertLinkActionToLink( linkann->getAction(), doc, QRectF() );
+- if ( popplerLink )
+- {
+- l->setLinkDestination( popplerLink );
+- }
+- }
+- break;
+- }
+- case Annot::typeCaret:
+- if (!wantCaretAnnotations)
+- continue;
+- annotation = new CaretAnnotation();
+- break;
+- case Annot::typeFileAttachment: /* TODO: Move logic to getters */
+- {
+- if (!wantFileAttachmentAnnotations)
+- continue;
+- AnnotFileAttachment * attachann = static_cast< AnnotFileAttachment * >( ann );
+- FileAttachmentAnnotation * f = new FileAttachmentAnnotation();
+- annotation = f;
+- // -> fileIcon
+- f->setFileIconName( QString::fromLatin1( attachann->getName()->getCString() ) );
+- // -> embeddedFile
+- FileSpec *filespec = new FileSpec( attachann->getFile() );
+- f->setEmbeddedFile( new EmbeddedFile( *new EmbeddedFileData( filespec ) ) );
+- break;
+- }
+- case Annot::typeSound: /* TODO: Move logic to getters */
+- {
+- if (!wantSoundAnnotations)
+- continue;
+- AnnotSound * soundann = static_cast< AnnotSound * >( ann );
+- SoundAnnotation * s = new SoundAnnotation();
+- annotation = s;
+-
+- // -> soundIcon
+- s->setSoundIconName( QString::fromLatin1( soundann->getName()->getCString() ) );
+- // -> sound
+- s->setSound( new SoundObject( soundann->getSound() ) );
+- break;
+- }
+- case Annot::typeMovie: /* TODO: Move logic to getters */
+- {
+- if (!wantMovieAnnotations)
+- continue;
+- AnnotMovie * movieann = static_cast< AnnotMovie * >( ann );
+- MovieAnnotation * m = new MovieAnnotation();
+- annotation = m;
+-
+- // -> movie
+- MovieObject *movie = new MovieObject( movieann );
+- m->setMovie( movie );
+- // -> movieTitle
+- GooString * movietitle = movieann->getTitle();
+- if ( movietitle )
+- m->setMovieTitle( QString::fromLatin1( movietitle->getCString() ) );
+- break;
+- }
+- case Annot::typeScreen:
+- {
+- if (!wantScreenAnnotations)
+- continue;
+- AnnotScreen * screenann = static_cast< AnnotScreen * >( ann );
+- if (!screenann->getAction())
+- continue;
+- ScreenAnnotation * s = new ScreenAnnotation();
+- annotation = s;
+-
+- // -> screen
+- Link * popplerLink = PageData::convertLinkActionToLink( screenann->getAction(), doc, QRectF() );
+- s->setAction( static_cast<Poppler::LinkRendition *>(popplerLink) );
+-
+- // -> screenTitle
+- GooString * screentitle = screenann->getTitle();
+- if ( screentitle )
+- s->setScreenTitle( UnicodeParsedString( screentitle ) );
+- break;
+- }
+- case Annot::typePopup:
+- continue; // popups are parsed by Annotation's window() getter
+- case Annot::typeUnknown:
+- continue; // special case for ignoring unknown annotations
+- case Annot::typeWidget:
+- if (!wantWidgetAnnotations)
+- continue;
+- annotation = new WidgetAnnotation();
+- break;
+- case Annot::typeRichMedia:
+- {
+- const AnnotRichMedia * annotRichMedia = static_cast< AnnotRichMedia * >( ann );
+-
+- RichMediaAnnotation *richMediaAnnotation = new RichMediaAnnotation;
+-
+- const AnnotRichMedia::Settings *annotSettings = annotRichMedia->getSettings();
+- if ( annotSettings ) {
+- RichMediaAnnotation::Settings *settings = new RichMediaAnnotation::Settings;
+-
+- if ( annotSettings->getActivation() ) {
+- RichMediaAnnotation::Activation *activation = new RichMediaAnnotation::Activation;
+-
+- switch ( annotSettings->getActivation()->getCondition() )
+- {
+- case AnnotRichMedia::Activation::conditionPageOpened:
+- activation->setCondition( RichMediaAnnotation::Activation::PageOpened );
+- break;
+- case AnnotRichMedia::Activation::conditionPageVisible:
+- activation->setCondition( RichMediaAnnotation::Activation::PageVisible );
+- break;
+- case AnnotRichMedia::Activation::conditionUserAction:
+- activation->setCondition( RichMediaAnnotation::Activation::UserAction );
+- break;
+- }
+-
+- settings->setActivation( activation );
+- }
+-
+- if ( annotSettings->getDeactivation() ) {
+- RichMediaAnnotation::Deactivation *deactivation = new RichMediaAnnotation::Deactivation;
+-
+- switch ( annotSettings->getDeactivation()->getCondition() )
+- {
+- case AnnotRichMedia::Deactivation::conditionPageClosed:
+- deactivation->setCondition( RichMediaAnnotation::Deactivation::PageClosed );
+- break;
+- case AnnotRichMedia::Deactivation::conditionPageInvisible:
+- deactivation->setCondition( RichMediaAnnotation::Deactivation::PageInvisible );
+- break;
+- case AnnotRichMedia::Deactivation::conditionUserAction:
+- deactivation->setCondition( RichMediaAnnotation::Deactivation::UserAction );
+- break;
+- }
+-
+- settings->setDeactivation( deactivation );
+- }
+-
+- richMediaAnnotation->setSettings( settings );
+- }
+-
+- const AnnotRichMedia::Content *annotContent = annotRichMedia->getContent();
+- if ( annotContent ) {
+- RichMediaAnnotation::Content *content = new RichMediaAnnotation::Content;
+-
+- const int configurationsCount = annotContent->getConfigurationsCount();
+- if ( configurationsCount > 0 ) {
+- QList< RichMediaAnnotation::Configuration* > configurations;
+-
+- for ( int i = 0; i < configurationsCount; ++i ) {
+- const AnnotRichMedia::Configuration *annotConfiguration = annotContent->getConfiguration( i );
+- if ( !annotConfiguration )
+- continue;
+-
+- RichMediaAnnotation::Configuration *configuration = new RichMediaAnnotation::Configuration;
+-
+- if ( annotConfiguration->getName() )
+- configuration->setName( UnicodeParsedString( annotConfiguration->getName() ) );
+-
+- switch ( annotConfiguration->getType() )
+- {
+- case AnnotRichMedia::Configuration::type3D:
+- configuration->setType( RichMediaAnnotation::Configuration::Type3D );
+- break;
+- case AnnotRichMedia::Configuration::typeFlash:
+- configuration->setType( RichMediaAnnotation::Configuration::TypeFlash );
+- break;
+- case AnnotRichMedia::Configuration::typeSound:
+- configuration->setType( RichMediaAnnotation::Configuration::TypeSound );
+- break;
+- case AnnotRichMedia::Configuration::typeVideo:
+- configuration->setType( RichMediaAnnotation::Configuration::TypeVideo );
+- break;
+- }
+-
+- const int instancesCount = annotConfiguration->getInstancesCount();
+- if ( instancesCount > 0 ) {
+- QList< RichMediaAnnotation::Instance* > instances;
+-
+- for ( int j = 0; j < instancesCount; ++j ) {
+- const AnnotRichMedia::Instance *annotInstance = annotConfiguration->getInstance( j );
+- if ( !annotInstance )
+- continue;
+-
+- RichMediaAnnotation::Instance *instance = new RichMediaAnnotation::Instance;
+-
+- switch ( annotInstance->getType() )
+- {
+- case AnnotRichMedia::Instance::type3D:
+- instance->setType( RichMediaAnnotation::Instance::Type3D );
+- break;
+- case AnnotRichMedia::Instance::typeFlash:
+- instance->setType( RichMediaAnnotation::Instance::TypeFlash );
+- break;
+- case AnnotRichMedia::Instance::typeSound:
+- instance->setType( RichMediaAnnotation::Instance::TypeSound );
+- break;
+- case AnnotRichMedia::Instance::typeVideo:
+- instance->setType( RichMediaAnnotation::Instance::TypeVideo );
+- break;
+- }
+-
+- const AnnotRichMedia::Params *annotParams = annotInstance->getParams();
+- if ( annotParams ) {
+- RichMediaAnnotation::Params *params = new RichMediaAnnotation::Params;
+-
+- if ( annotParams->getFlashVars() )
+- params->setFlashVars( UnicodeParsedString( annotParams->getFlashVars() ) );
+-
+- instance->setParams( params );
+- }
+-
+- instances.append( instance );
+- }
+-
+- configuration->setInstances( instances );
+- }
+-
+- configurations.append( configuration );
+- }
+-
+- content->setConfigurations( configurations );
+- }
+-
+- const int assetsCount = annotContent->getAssetsCount();
+- if ( assetsCount > 0 ) {
+- QList< RichMediaAnnotation::Asset* > assets;
+-
+- for ( int i = 0; i < assetsCount; ++i ) {
+- const AnnotRichMedia::Asset *annotAsset = annotContent->getAsset( i );
+- if ( !annotAsset )
+- continue;
+-
+- RichMediaAnnotation::Asset *asset = new RichMediaAnnotation::Asset;
+-
+- if ( annotAsset->getName() )
+- asset->setName( UnicodeParsedString( annotAsset->getName() ) );
+-
+- FileSpec *fileSpec = new FileSpec( annotAsset->getFileSpec() );
+- asset->setEmbeddedFile( new EmbeddedFile( *new EmbeddedFileData( fileSpec ) ) );
+-
+- assets.append( asset );
+- }
+-
+- content->setAssets( assets );
+- }
+-
+- richMediaAnnotation->setContent( content );
+- }
+-
+- annotation = richMediaAnnotation;
+-
+- break;
+- }
+- default:
+- {
+-#define CASE_FOR_TYPE( thetype ) \
+- case Annot::type ## thetype: \
+- error(errUnimplemented, -1, "Annotation " #thetype " not supported"); \
+- break;
+- switch ( subType )
+- {
+- CASE_FOR_TYPE( PrinterMark )
+- CASE_FOR_TYPE( TrapNet )
+- CASE_FOR_TYPE( Watermark )
+- CASE_FOR_TYPE( 3D )
+- default: error(errUnimplemented, -1, "Annotation {0:d} not supported", subType);
+- }
+- continue;
+-#undef CASE_FOR_TYPE
+- }
+- }
+-
+- annotation->d_ptr->tieToNativeAnnot(ann, pdfPage, doc);
+- res.append(annotation);
+- }
+-
+- return res;
+-}
+-
+-Ref AnnotationPrivate::pdfObjectReference() const
+-{
+- if (pdfAnnot == 0)
+- {
+- const Ref invalid_ref = { -1, -1 };
+- return invalid_ref;
+- }
+-
+- return pdfAnnot->getRef();
+-}
+-
+-Link* AnnotationPrivate::additionalAction( Annotation::AdditionalActionType type ) const
+-{
+- if ( pdfAnnot->getType() != Annot::typeScreen && pdfAnnot->getType() != Annot::typeWidget )
+- return 0;
+-
+- Annot::AdditionalActionsType actionType = Annot::actionCursorEntering;
+- switch ( type )
+- {
+- case Annotation::CursorEnteringAction: actionType = Annot::actionCursorEntering; break;
+- case Annotation::CursorLeavingAction: actionType = Annot::actionCursorLeaving; break;
+- case Annotation::MousePressedAction: actionType = Annot::actionMousePressed; break;
+- case Annotation::MouseReleasedAction: actionType = Annot::actionMouseReleased; break;
+- case Annotation::FocusInAction: actionType = Annot::actionFocusIn; break;
+- case Annotation::FocusOutAction: actionType = Annot::actionFocusOut; break;
+- case Annotation::PageOpeningAction: actionType = Annot::actionPageOpening; break;
+- case Annotation::PageClosingAction: actionType = Annot::actionPageClosing; break;
+- case Annotation::PageVisibleAction: actionType = Annot::actionPageVisible; break;
+- case Annotation::PageInvisibleAction: actionType = Annot::actionPageInvisible; break;
+- }
+-
+- ::LinkAction *linkAction = 0;
+- if ( pdfAnnot->getType() == Annot::typeScreen )
+- linkAction = static_cast<AnnotScreen*>( pdfAnnot )->getAdditionalAction( actionType );
+- else
+- linkAction = static_cast<AnnotWidget*>( pdfAnnot )->getAdditionalAction( actionType );
+-
+- Link *link = 0;
+-
+- if ( linkAction )
+- link = PageData::convertLinkActionToLink( linkAction, parentDoc, QRectF() );
+-
+- return link;
+-}
+-
+-void AnnotationPrivate::addAnnotationToPage(::Page *pdfPage, DocumentData *doc, const Annotation * ann)
+-{
+- if (ann->d_ptr->pdfAnnot != 0)
+- {
+- error(errIO, -1, "Annotation is already tied");
+- return;
+- }
+-
+- // Unimplemented annotations can't be created by the user because their ctor
+- // is private. Therefore, createNativeAnnot will never return 0
+- Annot *nativeAnnot = ann->d_ptr->createNativeAnnot(pdfPage, doc);
+- Q_ASSERT(nativeAnnot);
+- pdfPage->addAnnot(nativeAnnot);
+-}
+-
+-void AnnotationPrivate::removeAnnotationFromPage(::Page *pdfPage, const Annotation * ann)
+-{
+- if (ann->d_ptr->pdfAnnot == 0)
+- {
+- error(errIO, -1, "Annotation is not tied");
+- return;
+- }
+-
+- if (ann->d_ptr->pdfPage != pdfPage)
+- {
+- error(errIO, -1, "Annotation doesn't belong to the specified page");
+- return;
+- }
+-
+- // Remove annotation
+- pdfPage->removeAnnot(ann->d_ptr->pdfAnnot);
+-
+- // Destroy object
+- delete ann;
+-}
+-
+-class Annotation::Style::Private : public QSharedData
+-{
+- public:
+- Private()
+- : opacity( 1.0 ), width( 1.0 ), lineStyle( Solid ), xCorners( 0.0 ),
+- yCorners( 0.0 ), lineEffect( NoEffect ), effectIntensity( 1.0 )
+- {
+- dashArray.resize(1);
+- dashArray[0] = 3;
+- }
+-
+- QColor color;
+- double opacity;
+- double width;
+- Annotation::LineStyle lineStyle;
+- double xCorners;
+- double yCorners;
+- QVector<double> dashArray;
+- Annotation::LineEffect lineEffect;
+- double effectIntensity;
+-};
+-
+-Annotation::Style::Style()
+- : d ( new Private )
+-{
+-}
+-
+-Annotation::Style::Style( const Style &other )
+- : d( other.d )
+-{
+-}
+-
+-Annotation::Style& Annotation::Style::operator=( const Style &other )
+-{
+- if ( this != &other )
+- d = other.d;
+-
+- return *this;
+-}
+-
+-Annotation::Style::~Style()
+-{
+-}
+-
+-QColor Annotation::Style::color() const
+-{
+- return d->color;
+-}
+-
+-void Annotation::Style::setColor(const QColor &color)
+-{
+- d->color = color;
+-}
+-
+-double Annotation::Style::opacity() const
+-{
+- return d->opacity;
+-}
+-
+-void Annotation::Style::setOpacity(double opacity)
+-{
+- d->opacity = opacity;
+-}
+-
+-double Annotation::Style::width() const
+-{
+- return d->width;
+-}
+-
+-void Annotation::Style::setWidth(double width)
+-{
+- d->width = width;
+-}
+-
+-Annotation::LineStyle Annotation::Style::lineStyle() const
+-{
+- return d->lineStyle;
+-}
+-
+-void Annotation::Style::setLineStyle(Annotation::LineStyle style)
+-{
+- d->lineStyle = style;
+-}
+-
+-double Annotation::Style::xCorners() const
+-{
+- return d->xCorners;
+-}
+-
+-void Annotation::Style::setXCorners(double radius)
+-{
+- d->xCorners = radius;
+-}
+-
+-double Annotation::Style::yCorners() const
+-{
+- return d->yCorners;
+-}
+-
+-void Annotation::Style::setYCorners(double radius)
+-{
+- d->yCorners = radius;
+-}
+-
+-const QVector<double>& Annotation::Style::dashArray() const
+-{
+- return d->dashArray;
+-}
+-
+-void Annotation::Style::setDashArray(const QVector<double> &array)
+-{
+- d->dashArray = array;
+-}
+-
+-Annotation::LineEffect Annotation::Style::lineEffect() const
+-{
+- return d->lineEffect;
+-}
+-
+-void Annotation::Style::setLineEffect(Annotation::LineEffect effect)
+-{
+- d->lineEffect = effect;
+-}
+-
+-double Annotation::Style::effectIntensity() const
+-{
+- return d->effectIntensity;
+-}
+-
+-void Annotation::Style::setEffectIntensity(double intens)
+-{
+- d->effectIntensity = intens;
+-}
+-
+-class Annotation::Popup::Private : public QSharedData
+-{
+- public:
+- Private()
+- : flags( -1 ) {}
+-
+- int flags;
+- QRectF geometry;
+- QString title;
+- QString summary;
+- QString text;
+-};
+-
+-Annotation::Popup::Popup()
+- : d ( new Private )
+-{
+-}
+-
+-Annotation::Popup::Popup( const Popup &other )
+- : d( other.d )
+-{
+-}
+-
+-Annotation::Popup& Annotation::Popup::operator=( const Popup &other )
+-{
+- if ( this != &other )
+- d = other.d;
+-
+- return *this;
+-}
+-
+-Annotation::Popup::~Popup()
+-{
+-}
+-
+-int Annotation::Popup::flags() const
+-{
+- return d->flags;
+-}
+-
+-void Annotation::Popup::setFlags( int flags )
+-{
+- d->flags = flags;
+-}
+-
+-QRectF Annotation::Popup::geometry() const
+-{
+- return d->geometry;
+-}
+-
+-void Annotation::Popup::setGeometry( const QRectF &geom )
+-{
+- d->geometry = geom;
+-}
+-
+-QString Annotation::Popup::title() const
+-{
+- return d->title;
+-}
+-
+-void Annotation::Popup::setTitle( const QString &title )
+-{
+- d->title = title;
+-}
+-
+-QString Annotation::Popup::summary() const
+-{
+- return d->summary;
+-}
+-
+-void Annotation::Popup::setSummary( const QString &summary )
+-{
+- d->summary = summary;
+-}
+-
+-QString Annotation::Popup::text() const
+-{
+- return d->text;
+-}
+-
+-void Annotation::Popup::setText( const QString &text )
+-{
+- d->text = text;
+-}
+-
+-Annotation::Annotation( AnnotationPrivate &dd )
+- : d_ptr( &dd )
+-{
+- window.width = window.height = 0;
+-}
+-
+-Annotation::~Annotation()
+-{
+-}
+-
+-Annotation::Annotation( AnnotationPrivate &dd, const QDomNode &annNode )
+- : d_ptr( &dd )
+-{
+- Q_D( Annotation );
+-
+- window.width = window.height = 0;
+-
+- // get the [base] element of the annotation node
+- QDomElement e = AnnotationUtils::findChildElement( annNode, "base" );
+- if ( e.isNull() )
+- return;
+-
+- Style s;
+- Popup w;
+-
+- // parse -contents- attributes
+- if ( e.hasAttribute( "author" ) )
+- setAuthor(e.attribute( "author" ));
+- if ( e.hasAttribute( "contents" ) )
+- setContents(e.attribute( "contents" ));
+- if ( e.hasAttribute( "uniqueName" ) )
+- setUniqueName(e.attribute( "uniqueName" ));
+- if ( e.hasAttribute( "modifyDate" ) )
+- setModificationDate(QDateTime::fromString( e.attribute( "modifyDate" ) ));
+- if ( e.hasAttribute( "creationDate" ) )
+- setCreationDate(QDateTime::fromString( e.attribute( "creationDate" ) ));
+-
+- // parse -other- attributes
+- if ( e.hasAttribute( "flags" ) )
+- setFlags(e.attribute( "flags" ).toInt());
+- if ( e.hasAttribute( "color" ) )
+- s.setColor(QColor( e.attribute( "color" ) ));
+- if ( e.hasAttribute( "opacity" ) )
+- s.setOpacity(e.attribute( "opacity" ).toDouble());
+-
+- // parse -the-subnodes- (describing Style, Window, Revision(s) structures)
+- // Note: all subnodes if present must be 'attributes complete'
+- QDomNode eSubNode = e.firstChild();
+- while ( eSubNode.isElement() )
+- {
+- QDomElement ee = eSubNode.toElement();
+- eSubNode = eSubNode.nextSibling();
+-
+- // parse boundary
+- if ( ee.tagName() == "boundary" )
+- {
+- QRectF brect;
+- brect.setLeft(ee.attribute( "l" ).toDouble());
+- brect.setTop(ee.attribute( "t" ).toDouble());
+- brect.setRight(ee.attribute( "r" ).toDouble());
+- brect.setBottom(ee.attribute( "b" ).toDouble());
+- setBoundary(brect);
+- }
+- // parse penStyle if not default
+- else if ( ee.tagName() == "penStyle" )
+- {
+- s.setWidth(ee.attribute( "width" ).toDouble());
+- s.setLineStyle((LineStyle)ee.attribute( "style" ).toInt());
+- s.setXCorners(ee.attribute( "xcr" ).toDouble());
+- s.setYCorners(ee.attribute( "ycr" ).toDouble());
+-
+- // Try to parse dash array (new format)
+- QVector<double> dashArray;
+-
+- QDomNode eeSubNode = ee.firstChild();
+- while ( eeSubNode.isElement() )
+- {
+- QDomElement eee = eeSubNode.toElement();
+- eeSubNode = eeSubNode.nextSibling();
+-
+- if ( eee.tagName() != "dashsegm" )
+- continue;
+-
+- dashArray.append(eee.attribute( "len" ).toDouble());
+- }
+-
+- // If no segments were found use marks/spaces (old format)
+- if ( dashArray.size() == 0 )
+- {
+- dashArray.append(ee.attribute( "marks" ).toDouble());
+- dashArray.append(ee.attribute( "spaces" ).toDouble());
+- }
+-
+- s.setDashArray(dashArray);
+- }
+- // parse effectStyle if not default
+- else if ( ee.tagName() == "penEffect" )
+- {
+- s.setLineEffect((LineEffect)ee.attribute( "effect" ).toInt());
+- s.setEffectIntensity(ee.attribute( "intensity" ).toDouble());
+- }
+- // parse window if present
+- else if ( ee.tagName() == "window" )
+- {
+- QRectF geom;
+- geom.setX(ee.attribute( "top" ).toDouble());
+- geom.setY(ee.attribute( "left" ).toDouble());
+-
+- if (ee.hasAttribute("widthDouble"))
+- geom.setWidth(ee.attribute( "widthDouble" ).toDouble());
+- else
+- geom.setWidth(ee.attribute( "width" ).toDouble());
+-
+- if (ee.hasAttribute("widthDouble"))
+- geom.setHeight(ee.attribute( "heightDouble" ).toDouble());
+- else
+- geom.setHeight(ee.attribute( "height" ).toDouble());
+-
+- w.setGeometry(geom);
+-
+- w.setFlags(ee.attribute( "flags" ).toInt());
+- w.setTitle(ee.attribute( "title" ));
+- w.setSummary(ee.attribute( "summary" ));
+- // parse window subnodes
+- QDomNode winNode = ee.firstChild();
+- for ( ; winNode.isElement(); winNode = winNode.nextSibling() )
+- {
+- QDomElement winElement = winNode.toElement();
+- if ( winElement.tagName() == "text" )
+- w.setText(winElement.firstChild().toCDATASection().data());
+- }
+- }
+- }
+-
+- setStyle(s); // assign parsed style
+- setPopup(w); // assign parsed window
+-
+- // get the [revisions] element of the annotation node
+- QDomNode revNode = annNode.firstChild();
+- for ( ; revNode.isElement(); revNode = revNode.nextSibling() )
+- {
+- QDomElement revElement = revNode.toElement();
+- if ( revElement.tagName() != "revision" )
+- continue;
+-
+- Annotation *reply = AnnotationUtils::createAnnotation( revElement );
+-
+- if (reply) // if annotation is valid, add as a revision of this annotation
+- {
+- RevScope scope = (RevScope)revElement.attribute( "revScope" ).toInt();
+- RevType type = (RevType)revElement.attribute( "revType" ).toInt();
+- d->addRevision(reply, scope, type);
+- delete reply;
+- }
+- }
+-}
+-
+-void Annotation::storeBaseAnnotationProperties( QDomNode & annNode, QDomDocument & document ) const
+-{
+- // create [base] element of the annotation node
+- QDomElement e = document.createElement( "base" );
+- annNode.appendChild( e );
+-
+- const Style s = style();
+- const Popup w = popup();
+-
+- // store -contents- attributes
+- if ( !author().isEmpty() )
+- e.setAttribute( "author", author() );
+- if ( !contents().isEmpty() )
+- e.setAttribute( "contents", contents() );
+- if ( !uniqueName().isEmpty() )
+- e.setAttribute( "uniqueName", uniqueName() );
+- if ( modificationDate().isValid() )
+- e.setAttribute( "modifyDate", modificationDate().toString() );
+- if ( creationDate().isValid() )
+- e.setAttribute( "creationDate", creationDate().toString() );
+-
+- // store -other- attributes
+- if ( flags() )
+- e.setAttribute( "flags", flags() );
+- if ( s.color().isValid() )
+- e.setAttribute( "color", s.color().name() );
+- if ( s.opacity() != 1.0 )
+- e.setAttribute( "opacity", QString::number( s.opacity() ) );
+-
+- // Sub-Node-1 - boundary
+- const QRectF brect = boundary();
+- QDomElement bE = document.createElement( "boundary" );
+- e.appendChild( bE );
+- bE.setAttribute( "l", QString::number( (double)brect.left() ) );
+- bE.setAttribute( "t", QString::number( (double)brect.top() ) );
+- bE.setAttribute( "r", QString::number( (double)brect.right() ) );
+- bE.setAttribute( "b", QString::number( (double)brect.bottom() ) );
+-
+- // Sub-Node-2 - penStyle
+- const QVector<double> dashArray = s.dashArray();
+- if ( s.width() != 1 || s.lineStyle() != Solid || s.xCorners() != 0 ||
+- s.yCorners() != 0.0 || dashArray.size() != 1 || dashArray[0] != 3 )
+- {
+- QDomElement psE = document.createElement( "penStyle" );
+- e.appendChild( psE );
+- psE.setAttribute( "width", QString::number( s.width() ) );
+- psE.setAttribute( "style", (int)s.lineStyle() );
+- psE.setAttribute( "xcr", QString::number( s.xCorners() ) );
+- psE.setAttribute( "ycr", QString::number( s.yCorners() ) );
+-
+- int marks = 3, spaces = 0; // Do not break code relying on marks/spaces
+- if (dashArray.size() != 0)
+- marks = (int)dashArray[0];
+- if (dashArray.size() > 1)
+- spaces = (int)dashArray[1];
+-
+- psE.setAttribute( "marks", marks );
+- psE.setAttribute( "spaces", spaces );
+-
+- foreach (double segm, dashArray)
+- {
+- QDomElement pattE = document.createElement( "dashsegm" );
+- pattE.setAttribute( "len", QString::number( segm ) );
+- psE.appendChild(pattE);
+- }
+- }
+-
+- // Sub-Node-3 - penEffect
+- if ( s.lineEffect() != NoEffect || s.effectIntensity() != 1.0 )
+- {
+- QDomElement peE = document.createElement( "penEffect" );
+- e.appendChild( peE );
+- peE.setAttribute( "effect", (int)s.lineEffect() );
+- peE.setAttribute( "intensity", QString::number( s.effectIntensity() ) );
+- }
+-
+- // Sub-Node-4 - window
+- if ( w.flags() != -1 || !w.title().isEmpty() || !w.summary().isEmpty() ||
+- !w.text().isEmpty() )
+- {
+- QDomElement wE = document.createElement( "window" );
+- const QRectF geom = w.geometry();
+- e.appendChild( wE );
+- wE.setAttribute( "flags", w.flags() );
+- wE.setAttribute( "top", QString::number( geom.x() ) );
+- wE.setAttribute( "left", QString::number( geom.y() ) );
+- wE.setAttribute( "width", (int)geom.width() );
+- wE.setAttribute( "height", (int)geom.height() );
+- wE.setAttribute( "widthDouble", QString::number( geom.width() ) );
+- wE.setAttribute( "heightDouble", QString::number( geom.height() ) );
+- wE.setAttribute( "title", w.title() );
+- wE.setAttribute( "summary", w.summary() );
+- // store window.text as a subnode, because we need escaped data
+- if ( !w.text().isEmpty() )
+- {
+- QDomElement escapedText = document.createElement( "text" );
+- wE.appendChild( escapedText );
+- QDomCDATASection textCData = document.createCDATASection( w.text() );
+- escapedText.appendChild( textCData );
+- }
+- }
+-
+- const QList<Annotation*> revs = revisions();
+-
+- // create [revision] element of the annotation node (if any)
+- if ( revs.isEmpty() )
+- return;
+-
+- // add all revisions as children of revisions element
+- foreach (const Annotation *rev, revs)
+- {
+- QDomElement r = document.createElement( "revision" );
+- annNode.appendChild( r );
+- // set element attributes
+- r.setAttribute( "revScope", (int)rev->revisionScope() );
+- r.setAttribute( "revType", (int)rev->revisionType() );
+- // use revision as the annotation element, so fill it up
+- AnnotationUtils::storeAnnotation( rev, r, document );
+- delete rev;
+- }
+-}
+-
+-QString Annotation::author() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->author;
+-
+- const AnnotMarkup *markupann = dynamic_cast<const AnnotMarkup*>(d->pdfAnnot);
+- return markupann ? UnicodeParsedString( markupann->getLabel() ) : QString();
+-}
+-
+-void Annotation::setAuthor( const QString &author )
+-{
+- Q_D( Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->author = author;
+- return;
+- }
+-
+- AnnotMarkup *markupann = dynamic_cast<AnnotMarkup*>(d->pdfAnnot);
+- if (markupann)
+- {
+- GooString *s = QStringToUnicodeGooString(author);
+- markupann->setLabel(s);
+- delete s;
+- }
+-}
+-
+-QString Annotation::contents() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->contents;
+-
+- return UnicodeParsedString( d->pdfAnnot->getContents() );
+-}
+-
+-void Annotation::setContents( const QString &contents )
+-{
+- Q_D( Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->contents = contents;
+- return;
+- }
+-
+- GooString *s = QStringToUnicodeGooString(contents);
+- d->pdfAnnot->setContents(s);
+- delete s;
+-}
+-
+-QString Annotation::uniqueName() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->uniqueName;
+-
+- return UnicodeParsedString( d->pdfAnnot->getName() );
+-}
+-
+-void Annotation::setUniqueName( const QString &uniqueName )
+-{
+- Q_D( Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->uniqueName = uniqueName;
+- return;
+- }
+-
+- QByteArray ascii = uniqueName.toAscii();
+- GooString s(ascii.constData());
+- d->pdfAnnot->setName(&s);
+-}
+-
+-QDateTime Annotation::modificationDate() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->modDate;
+-
+- if ( d->pdfAnnot->getModified() )
+- return convertDate( d->pdfAnnot->getModified()->getCString() );
+- else
+- return QDateTime();
+-}
+-
+-void Annotation::setModificationDate( const QDateTime &date )
+-{
+- Q_D( Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->modDate = date;
+- return;
+- }
+-
+-#if 0 // TODO: Conversion routine is broken
+- if (d->pdfAnnot)
+- {
+- time_t t = date.toTime_t();
+- GooString *s = timeToDateString(&t);
+- d->pdfAnnot->setModified(s);
+- delete s;
+- }
+-#endif
+-}
+-
+-QDateTime Annotation::creationDate() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->creationDate;
+-
+- const AnnotMarkup *markupann = dynamic_cast<const AnnotMarkup*>(d->pdfAnnot);
+-
+- if (markupann && markupann->getDate())
+- return convertDate( markupann->getDate()->getCString() );
+-
+- return modificationDate();
+-}
+-
+-void Annotation::setCreationDate( const QDateTime &date )
+-{
+- Q_D( Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->creationDate = date;
+- return;
+- }
+-
+-#if 0 // TODO: Conversion routine is broken
+- AnnotMarkup *markupann = dynamic_cast<AnnotMarkup*>(d->pdfAnnot);
+- if (markupann)
+- {
+- time_t t = date.toTime_t();
+- GooString *s = timeToDateString(&t);
+- markupann->setDate(s);
+- delete s;
+- }
+-#endif
+-}
+-
+-static int fromPdfFlags(int flags)
+-{
+- int qtflags = 0;
+-
+- if ( flags & Annot::flagHidden )
+- qtflags |= Annotation::Hidden;
+- if ( flags & Annot::flagNoZoom )
+- qtflags |= Annotation::FixedSize;
+- if ( flags & Annot::flagNoRotate )
+- qtflags |= Annotation::FixedRotation;
+- if ( !( flags & Annot::flagPrint ) )
+- qtflags |= Annotation::DenyPrint;
+- if ( flags & Annot::flagReadOnly )
+- qtflags |= (Annotation::DenyWrite | Annotation::DenyDelete);
+- if ( flags & Annot::flagLocked )
+- qtflags |= Annotation::DenyDelete;
+- if ( flags & Annot::flagToggleNoView )
+- qtflags |= Annotation::ToggleHidingOnMouse;
+-
+- return qtflags;
+-}
+-
+-static int toPdfFlags(int qtflags)
+-{
+- int flags = 0;
+-
+- if ( qtflags & Annotation::Hidden )
+- flags |= Annot::flagHidden;
+- if ( qtflags & Annotation::FixedSize )
+- flags |= Annot::flagNoZoom;
+- if ( qtflags & Annotation::FixedRotation )
+- flags |= Annot::flagNoRotate;
+- if ( !( qtflags & Annotation::DenyPrint ) )
+- flags |= Annot::flagPrint;
+- if ( qtflags & Annotation::DenyWrite )
+- flags |= Annot::flagReadOnly;
+- if ( qtflags & Annotation::DenyDelete )
+- flags |= Annot::flagLocked;
+- if ( qtflags & Annotation::ToggleHidingOnMouse )
+- flags |= Annot::flagToggleNoView;
+-
+- return flags;
+-}
+-
+-int Annotation::flags() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->flags;
+-
+- return fromPdfFlags( d->pdfAnnot->getFlags() );
+-}
+-
+-void Annotation::setFlags( int flags )
+-{
+- Q_D( Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->flags = flags;
+- return;
+- }
+-
+- d->pdfAnnot->setFlags(toPdfFlags( flags ));
+-}
+-
+-QRectF Annotation::boundary() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->boundary;
+-
+- const PDFRectangle * rect = d->pdfAnnot->getRect();
+- return d->fromPdfRectangle( *rect );
+-}
+-
+-void Annotation::setBoundary( const QRectF &boundary )
+-{
+- Q_D( Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->boundary = boundary;
+- return;
+- }
+-
+- PDFRectangle rect = d->boundaryToPdfRectangle( boundary, flags() );
+- d->pdfAnnot->setRect(&rect);
+-}
+-
+-Annotation::Style Annotation::style() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->style;
+-
+- Style s;
+- s.setColor(convertAnnotColor( d->pdfAnnot->getColor() ));
+-
+- const AnnotMarkup *markupann = dynamic_cast<const AnnotMarkup*>(d->pdfAnnot);
+- if (markupann)
+- s.setOpacity( markupann->getOpacity() );
+-
+- const AnnotBorder *border = d->pdfAnnot->getBorder();
+- if (border)
+- {
+- if ( border->getType() == AnnotBorder::typeArray )
+- {
+- const AnnotBorderArray *border_array = static_cast<const AnnotBorderArray*>(border);
+- s.setXCorners( border_array->getHorizontalCorner() );
+- s.setYCorners( border_array->getVerticalCorner() );
+- }
+-
+- s.setWidth( border->getWidth() );
+- s.setLineStyle((Annotation::LineStyle)( 1 << border->getStyle() ));
+-
+- const int dashArrLen = border->getDashLength();
+- const double* dashArrData = border->getDash();
+- QVector<double> dashArrVect( dashArrLen );
+- for (int i = 0; i < dashArrLen; ++i)
+- dashArrVect[i] = dashArrData[i];
+- s.setDashArray(dashArrVect);
+- }
+-
+- AnnotBorderEffect *border_effect;
+- switch (d->pdfAnnot->getType())
+- {
+- case Annot::typeFreeText:
+- border_effect = static_cast<AnnotFreeText*>(d->pdfAnnot)->getBorderEffect();
+- break;
+- case Annot::typeSquare:
+- case Annot::typeCircle:
+- border_effect = static_cast<AnnotGeometry*>(d->pdfAnnot)->getBorderEffect();
+- break;
+- default:
+- border_effect = 0;
+- }
+- if (border_effect)
+- {
+- s.setLineEffect( (Annotation::LineEffect)border_effect->getEffectType() );
+- s.setEffectIntensity( border_effect->getIntensity() );
+- }
+-
+- return s;
+-}
+-
+-void Annotation::setStyle( const Annotation::Style& style )
+-{
+- Q_D( Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->style = style;
+- return;
+- }
+-
+- d->pdfAnnot->setColor(convertQColor( style.color() ));
+-
+- AnnotMarkup *markupann = dynamic_cast<AnnotMarkup*>(d->pdfAnnot);
+- if (markupann)
+- markupann->setOpacity( style.opacity() );
+-
+- AnnotBorderArray * border = new AnnotBorderArray();
+- border->setWidth( style.width() );
+- border->setHorizontalCorner( style.xCorners() );
+- border->setVerticalCorner( style.yCorners() );
+- d->pdfAnnot->setBorder(border);
+-}
+-
+-Annotation::Popup Annotation::popup() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->popup;
+-
+- Popup w;
+- AnnotPopup *popup = 0;
+- int flags = -1; // Not initialized
+-
+- const AnnotMarkup *markupann = dynamic_cast<const AnnotMarkup*>(d->pdfAnnot);
+- if (markupann)
+- {
+- popup = markupann->getPopup();
+- w.setSummary(UnicodeParsedString( markupann->getSubject() ));
+- }
+-
+- if (popup)
+- {
+- flags = fromPdfFlags( popup->getFlags() ) & ( Annotation::Hidden |
+- Annotation::FixedSize | Annotation::FixedRotation );
+-
+- if (!popup->getOpen())
+- flags |= Annotation::Hidden;
+-
+- const PDFRectangle * rect = popup->getRect();
+- w.setGeometry( d->fromPdfRectangle( *rect ) );
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeText)
+- {
+- const AnnotText * textann = static_cast<const AnnotText*>(d->pdfAnnot);
+-
+- // Text annotations default to same rect as annotation
+- if (flags == -1)
+- {
+- flags = 0;
+- w.setGeometry( boundary() );
+- }
+-
+- // If text is not 'opened', force window hiding. if the window
+- // was parsed from popup, the flag should already be set
+- if ( !textann->getOpen() && flags != -1 )
+- flags |= Annotation::Hidden;
+- }
+-
+- w.setFlags(flags);
+-
+- return w;
+-}
+-
+-void Annotation::setPopup( const Annotation::Popup& popup )
+-{
+- Q_D( Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->popup = popup;
+- return;
+- }
+-
+-#if 0 /* TODO: Remove old popup and add AnnotPopup to page */
+- AnnotMarkup *markupann = dynamic_cast<AnnotMarkup*>(d->pdfAnnot);
+- if (!markupann)
+- return;
+-
+- // Create a new AnnotPopup and assign it to pdfAnnot
+- PDFRectangle rect = d->toPdfRectangle( popup.geometry() );
+- AnnotPopup * p = new AnnotPopup( d->pdfPage->getDoc(), &rect );
+- p->setOpen( !(popup.flags() & Annotation::Hidden) );
+- if (!popup.summary().isEmpty())
+- {
+- GooString *s = QStringToUnicodeGooString(popup.summary());
+- markupann->setLabel(s);
+- delete s;
+- }
+- markupann->setPopup(p);
+-#endif
+-}
+-
+-Annotation::RevScope Annotation::revisionScope() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->revisionScope;
+-
+- const AnnotMarkup *markupann = dynamic_cast<const AnnotMarkup*>(d->pdfAnnot);
+-
+- if (markupann && markupann->getInReplyToID() != 0)
+- {
+- switch (markupann->getReplyTo())
+- {
+- case AnnotMarkup::replyTypeR:
+- return Annotation::Reply;
+- case AnnotMarkup::replyTypeGroup:
+- return Annotation::Group;
+- }
+- }
+-
+- return Annotation::Root; // It's not a revision
+-}
+-
+-Annotation::RevType Annotation::revisionType() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- return d->revisionType;
+-
+- const AnnotText *textann = dynamic_cast<const AnnotText*>(d->pdfAnnot);
+-
+- if (textann && textann->getInReplyToID() != 0)
+- {
+- switch (textann->getState())
+- {
+- case AnnotText::stateMarked:
+- return Annotation::Marked;
+- case AnnotText::stateUnmarked:
+- return Annotation::Unmarked;
+- case AnnotText::stateAccepted:
+- return Annotation::Accepted;
+- case AnnotText::stateRejected:
+- return Annotation::Rejected;
+- case AnnotText::stateCancelled:
+- return Annotation::Cancelled;
+- case AnnotText::stateCompleted:
+- return Annotation::Completed;
+- default:
+- break;
+- }
+- }
+-
+- return Annotation::None;
+-}
+-
+-QList<Annotation*> Annotation::revisions() const
+-{
+- Q_D( const Annotation );
+-
+- if (!d->pdfAnnot)
+- {
+- /* Return aliases, whose ownership goes to the caller */
+- QList<Annotation*> res;
+- foreach (Annotation *rev, d->revisions)
+- res.append( rev->d_ptr->makeAlias() );
+- return res;
+- }
+-
+- /* If the annotation doesn't live in a object on its own (eg bug51361), it
+- * has no ref, therefore it can't have revisions */
+- if ( !d->pdfAnnot->getHasRef() )
+- return QList<Annotation*>();
+-
+- return AnnotationPrivate::findAnnotations( d->pdfPage, d->parentDoc, QSet<Annotation::SubType>(), d->pdfAnnot->getId() );
+-}
+-
+-//END Annotation implementation
+-
+-
+-/** TextAnnotation [Annotation] */
+-class TextAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- TextAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- TextAnnotation::TextType textType;
+- QString textIcon;
+- QFont textFont;
+- int inplaceAlign; // 0:left, 1:center, 2:right
+- QVector<QPointF> inplaceCallout;
+- TextAnnotation::InplaceIntent inplaceIntent;
+-
+- // Helper
+- static GooString * toAppearanceString(const QFont &font);
+-};
+-
+-TextAnnotationPrivate::TextAnnotationPrivate()
+- : AnnotationPrivate(), textType( TextAnnotation::Linked ),
+- textIcon( "Note" ), inplaceAlign( 0 ),
+- inplaceIntent( TextAnnotation::Unknown )
+-{
+-}
+-
+-Annotation * TextAnnotationPrivate::makeAlias()
+-{
+- return new TextAnnotation(*this);
+-}
+-
+-GooString * TextAnnotationPrivate::toAppearanceString(const QFont &font)
+-{
+- GooString * s = GooString::format("/Invalid_font {0:d} Tf", font.pointSize());
+- // TODO: Font family, style (bold, italic, ...) and pointSize as float
+- return s;
+-}
+-
+-Annot* TextAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- // Setters are defined in the public class
+- TextAnnotation *q = static_cast<TextAnnotation*>( makeAlias() );
+-
+- // Set page and contents
+- pdfPage = destPage;
+- parentDoc = doc;
+-
+- // Set pdfAnnot
+- PDFRectangle rect = boundaryToPdfRectangle(boundary, flags);
+- if (textType == TextAnnotation::Linked)
+- {
+- pdfAnnot = new AnnotText(destPage->getDoc(), &rect);
+- }
+- else
+- {
+- GooString * da = toAppearanceString(textFont);
+- pdfAnnot = new AnnotFreeText(destPage->getDoc(), &rect, da);
+- delete da;
+- }
+-
+- // Set properties
+- flushBaseAnnotationProperties();
+- q->setTextIcon(textIcon);
+- q->setInplaceAlign(inplaceAlign);
+- q->setCalloutPoints(inplaceCallout);
+- q->setInplaceIntent(inplaceIntent);
+-
+- delete q;
+-
+- inplaceCallout.clear(); // Free up memory
+-
+- return pdfAnnot;
+-}
+-
+-TextAnnotation::TextAnnotation( TextAnnotation::TextType type )
+- : Annotation( *new TextAnnotationPrivate() )
+-{
+- setTextType( type );
+-}
+-
+-TextAnnotation::TextAnnotation(TextAnnotationPrivate &dd)
+- : Annotation( dd )
+-{}
+-
+-TextAnnotation::TextAnnotation( const QDomNode & node )
+- : Annotation( *new TextAnnotationPrivate, node )
+-{
+- // loop through the whole children looking for a 'text' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "text" )
+- continue;
+-
+- // parse the attributes
+- if ( e.hasAttribute( "type" ) )
+- setTextType((TextAnnotation::TextType)e.attribute( "type" ).toInt());
+- if ( e.hasAttribute( "icon" ) )
+- setTextIcon(e.attribute( "icon" ));
+- if ( e.hasAttribute( "font" ) )
+- {
+- QFont font;
+- font.fromString( e.attribute( "font" ) );
+- setTextFont(font);
+- }
+- if ( e.hasAttribute( "align" ) )
+- setInplaceAlign(e.attribute( "align" ).toInt());
+- if ( e.hasAttribute( "intent" ) )
+- setInplaceIntent((TextAnnotation::InplaceIntent)e.attribute( "intent" ).toInt());
+-
+- // parse the subnodes
+- QDomNode eSubNode = e.firstChild();
+- while ( eSubNode.isElement() )
+- {
+- QDomElement ee = eSubNode.toElement();
+- eSubNode = eSubNode.nextSibling();
+-
+- if ( ee.tagName() == "escapedText" )
+- {
+- setInplaceText(ee.firstChild().toCDATASection().data());
+- }
+- else if ( ee.tagName() == "callout" )
+- {
+- QVector<QPointF> points(3);
+- points[0] = QPointF(ee.attribute( "ax" ).toDouble(),
+- ee.attribute( "ay" ).toDouble());
+- points[1] = QPointF(ee.attribute( "bx" ).toDouble(),
+- ee.attribute( "by" ).toDouble());
+- points[2] = QPointF(ee.attribute( "cx" ).toDouble(),
+- ee.attribute( "cy" ).toDouble());
+- setCalloutPoints(points);
+- }
+- }
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-TextAnnotation::~TextAnnotation()
+-{
+-}
+-
+-void TextAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [text] element
+- QDomElement textElement = document.createElement( "text" );
+- node.appendChild( textElement );
+-
+- // store the optional attributes
+- if ( textType() != Linked )
+- textElement.setAttribute( "type", (int)textType() );
+- if ( textIcon() != "Note" )
+- textElement.setAttribute( "icon", textIcon() );
+- if ( inplaceAlign() )
+- textElement.setAttribute( "align", inplaceAlign() );
+- if ( inplaceIntent() != Unknown )
+- textElement.setAttribute( "intent", (int)inplaceIntent() );
+-
+- textElement.setAttribute( "font", textFont().toString() );
+-
+- // Sub-Node-1 - escapedText
+- if ( !inplaceText().isEmpty() )
+- {
+- QDomElement escapedText = document.createElement( "escapedText" );
+- textElement.appendChild( escapedText );
+- QDomCDATASection textCData = document.createCDATASection( inplaceText() );
+- escapedText.appendChild( textCData );
+- }
+-
+- // Sub-Node-2 - callout
+- if ( calloutPoint(0).x() != 0.0 )
+- {
+- QDomElement calloutElement = document.createElement( "callout" );
+- textElement.appendChild( calloutElement );
+- calloutElement.setAttribute( "ax", QString::number( calloutPoint(0).x() ) );
+- calloutElement.setAttribute( "ay", QString::number( calloutPoint(0).y() ) );
+- calloutElement.setAttribute( "bx", QString::number( calloutPoint(1).x() ) );
+- calloutElement.setAttribute( "by", QString::number( calloutPoint(1).y() ) );
+- calloutElement.setAttribute( "cx", QString::number( calloutPoint(2).x() ) );
+- calloutElement.setAttribute( "cy", QString::number( calloutPoint(2).y() ) );
+- }
+-}
+-
+-Annotation::SubType TextAnnotation::subType() const
+-{
+- return AText;
+-}
+-
+-TextAnnotation::TextType TextAnnotation::textType() const
+-{
+- Q_D( const TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->textType;
+-
+- return d->pdfAnnot->getType() == Annot::typeText ?
+- TextAnnotation::Linked : TextAnnotation::InPlace;
+-}
+-
+-void TextAnnotation::setTextType( TextAnnotation::TextType type )
+-{
+- Q_D( TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->textType = type;
+- return;
+- }
+-
+- // Type cannot be changed if annotation is already tied
+-}
+-
+-QString TextAnnotation::textIcon() const
+-{
+- Q_D( const TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->textIcon;
+-
+- if (d->pdfAnnot->getType() == Annot::typeText)
+- {
+- const AnnotText * textann = static_cast<const AnnotText*>(d->pdfAnnot);
+- return QString::fromLatin1( textann->getIcon()->getCString() );
+- }
+-
+- return QString();
+-}
+-
+-void TextAnnotation::setTextIcon( const QString &icon )
+-{
+- Q_D( TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->textIcon = icon;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeText)
+- {
+- AnnotText * textann = static_cast<AnnotText*>(d->pdfAnnot);
+- QByteArray encoded = icon.toLatin1();
+- GooString s(encoded.constData());
+- textann->setIcon(&s);
+- }
+-}
+-
+-QFont TextAnnotation::textFont() const
+-{
+- Q_D( const TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->textFont;
+-
+- QFont font;
+-
+- if (d->pdfAnnot->getType() == Annot::typeFreeText)
+- {
+- const AnnotFreeText * ftextann = static_cast<const AnnotFreeText*>(d->pdfAnnot);
+- const GooString * da = ftextann->getAppearanceString();
+- if (da)
+- {
+- // At the moment, only font size is parsed
+- QString style = QString::fromLatin1( da->getCString() );
+- QRegExp rx("(\\d+)(\\.\\d*)? Tf");
+- if (rx.indexIn(style) != -1)
+- font.setPointSize( rx.cap(1).toInt() );
+- // TODO: Other properties
+- }
+- }
+-
+- return font;
+-}
+-
+-void TextAnnotation::setTextFont( const QFont &font )
+-{
+- Q_D( TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->textFont = font;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() != Annot::typeFreeText)
+- return;
+-
+- AnnotFreeText * ftextann = static_cast<AnnotFreeText*>(d->pdfAnnot);
+- GooString * da = TextAnnotationPrivate::toAppearanceString(font);
+- ftextann->setAppearanceString(da);
+- delete da;
+-}
+-
+-int TextAnnotation::inplaceAlign() const
+-{
+- Q_D( const TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->inplaceAlign;
+-
+- if (d->pdfAnnot->getType() == Annot::typeFreeText)
+- {
+- const AnnotFreeText * ftextann = static_cast<const AnnotFreeText*>(d->pdfAnnot);
+- return ftextann->getQuadding();
+- }
+-
+- return 0;
+-}
+-
+-void TextAnnotation::setInplaceAlign( int align )
+-{
+- Q_D( TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->inplaceAlign = align;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeFreeText)
+- {
+- AnnotFreeText * ftextann = static_cast<AnnotFreeText*>(d->pdfAnnot);
+- ftextann->setQuadding((AnnotFreeText::AnnotFreeTextQuadding)align);
+- }
+-}
+-
+-QString TextAnnotation::inplaceText() const
+-{
+- return contents();
+-}
+-
+-void TextAnnotation::setInplaceText( const QString &text )
+-{
+- setContents(text);
+-}
+-
+-QPointF TextAnnotation::calloutPoint( int id ) const
+-{
+- const QVector<QPointF> points = calloutPoints();
+- if ( id < 0 || id >= points.size() )
+- return QPointF();
+- else
+- return points[id];
+-}
+-
+-QVector<QPointF> TextAnnotation::calloutPoints() const
+-{
+- Q_D( const TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->inplaceCallout;
+-
+- if (d->pdfAnnot->getType() == Annot::typeText)
+- return QVector<QPointF>();
+-
+- const AnnotFreeText * ftextann = static_cast<const AnnotFreeText*>(d->pdfAnnot);
+- const AnnotCalloutLine *callout = ftextann->getCalloutLine();
+-
+- if (!callout)
+- return QVector<QPointF>();
+-
+- double MTX[6];
+- d->fillTransformationMTX(MTX);
+-
+- const AnnotCalloutMultiLine * callout_v6 = dynamic_cast<const AnnotCalloutMultiLine*>(callout);
+- QVector<QPointF> res(callout_v6 ? 3 : 2);
+- XPDFReader::transform(MTX, callout->getX1(), callout->getY1(), res[0]);
+- XPDFReader::transform(MTX, callout->getX2(), callout->getY2(), res[1]);
+- if (callout_v6)
+- XPDFReader::transform(MTX, callout_v6->getX3(), callout_v6->getY3(), res[2]);
+- return res;
+-}
+-
+-void TextAnnotation::setCalloutPoints( const QVector<QPointF> &points )
+-{
+- Q_D( TextAnnotation );
+- if (!d->pdfAnnot)
+- {
+- d->inplaceCallout = points;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() != Annot::typeFreeText)
+- return;
+-
+- AnnotFreeText * ftextann = static_cast<AnnotFreeText*>(d->pdfAnnot);
+- const int count = points.size();
+-
+- if (count == 0)
+- {
+- ftextann->setCalloutLine(0);
+- return;
+- }
+-
+- if (count != 2 && count != 3)
+- {
+- error(errSyntaxError, -1, "Expected zero, two or three points for callout");
+- return;
+- }
+-
+- AnnotCalloutLine *callout;
+- double x1, y1, x2, y2;
+- double MTX[6];
+- d->fillTransformationMTX(MTX);
+-
+- XPDFReader::invTransform( MTX, points[0], x1, y1 );
+- XPDFReader::invTransform( MTX, points[1], x2, y2 );
+- if (count == 3)
+- {
+- double x3, y3;
+- XPDFReader::invTransform( MTX, points[2], x3, y3 );
+- callout = new AnnotCalloutMultiLine(x1, y1, x2, y2, x3, y3);
+- }
+- else
+- {
+- callout = new AnnotCalloutLine(x1, y1, x2, y2);
+- }
+-
+- ftextann->setCalloutLine(callout);
+- delete callout;
+-}
+-
+-TextAnnotation::InplaceIntent TextAnnotation::inplaceIntent() const
+-{
+- Q_D( const TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->inplaceIntent;
+-
+- if (d->pdfAnnot->getType() == Annot::typeFreeText)
+- {
+- const AnnotFreeText * ftextann = static_cast<const AnnotFreeText*>(d->pdfAnnot);
+- return (TextAnnotation::InplaceIntent)ftextann->getIntent();
+- }
+-
+- return TextAnnotation::Unknown;
+-}
+-
+-void TextAnnotation::setInplaceIntent( TextAnnotation::InplaceIntent intent )
+-{
+- Q_D( TextAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->inplaceIntent = intent;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeFreeText)
+- {
+- AnnotFreeText * ftextann = static_cast<AnnotFreeText*>(d->pdfAnnot);
+- ftextann->setIntent((AnnotFreeText::AnnotFreeTextIntent)intent);
+- }
+-}
+-
+-
+-/** LineAnnotation [Annotation] */
+-class LineAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- LineAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields (note uses border for rendering style)
+- QLinkedList<QPointF> linePoints;
+- LineAnnotation::TermStyle lineStartStyle;
+- LineAnnotation::TermStyle lineEndStyle;
+- bool lineClosed : 1; // (if true draw close shape)
+- bool lineShowCaption : 1;
+- LineAnnotation::LineType lineType;
+- QColor lineInnerColor;
+- double lineLeadingFwdPt;
+- double lineLeadingBackPt;
+- LineAnnotation::LineIntent lineIntent;
+-};
+-
+-LineAnnotationPrivate::LineAnnotationPrivate()
+- : AnnotationPrivate(), lineStartStyle( LineAnnotation::None ),
+- lineEndStyle( LineAnnotation::None ), lineClosed( false ),
+- lineShowCaption( false ), lineLeadingFwdPt( 0 ),
+- lineLeadingBackPt( 0 ), lineIntent( LineAnnotation::Unknown )
+-{
+-}
+-
+-Annotation * LineAnnotationPrivate::makeAlias()
+-{
+- return new LineAnnotation(*this);
+-}
+-
+-Annot* LineAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- // Setters are defined in the public class
+- LineAnnotation *q = static_cast<LineAnnotation*>( makeAlias() );
+-
+- // Set page and document
+- pdfPage = destPage;
+- parentDoc = doc;
+-
+- // Set pdfAnnot
+- PDFRectangle rect = boundaryToPdfRectangle(boundary, flags);
+- if (lineType == LineAnnotation::StraightLine)
+- {
+- pdfAnnot = new AnnotLine(doc->doc, &rect);
+- }
+- else
+- {
+- pdfAnnot = new AnnotPolygon(doc->doc, &rect,
+- lineClosed ? Annot::typePolygon : Annot::typePolyLine );
+- }
+-
+- // Set properties
+- flushBaseAnnotationProperties();
+- q->setLinePoints(linePoints);
+- q->setLineStartStyle(lineStartStyle);
+- q->setLineEndStyle(lineEndStyle);
+- q->setLineInnerColor(lineInnerColor);
+- q->setLineLeadingForwardPoint(lineLeadingFwdPt);
+- q->setLineLeadingBackPoint(lineLeadingBackPt);
+- q->setLineShowCaption(lineShowCaption);
+- q->setLineIntent(lineIntent);
+-
+- delete q;
+-
+- linePoints.clear(); // Free up memory
+-
+- return pdfAnnot;
+-}
+-
+-LineAnnotation::LineAnnotation( LineAnnotation::LineType type )
+- : Annotation( *new LineAnnotationPrivate() )
+-{
+- setLineType(type);
+-}
+-
+-LineAnnotation::LineAnnotation(LineAnnotationPrivate &dd)
+- : Annotation( dd )
+-{}
+-
+-LineAnnotation::LineAnnotation( const QDomNode & node )
+- : Annotation( *new LineAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'line' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "line" )
+- continue;
+-
+- // parse the attributes
+- if ( e.hasAttribute( "startStyle" ) )
+- setLineStartStyle((LineAnnotation::TermStyle)e.attribute( "startStyle" ).toInt());
+- if ( e.hasAttribute( "endStyle" ) )
+- setLineEndStyle((LineAnnotation::TermStyle)e.attribute( "endStyle" ).toInt());
+- if ( e.hasAttribute( "closed" ) )
+- setLineClosed(e.attribute( "closed" ).toInt());
+- if ( e.hasAttribute( "innerColor" ) )
+- setLineInnerColor(QColor( e.attribute( "innerColor" ) ));
+- if ( e.hasAttribute( "leadFwd" ) )
+- setLineLeadingForwardPoint(e.attribute( "leadFwd" ).toDouble());
+- if ( e.hasAttribute( "leadBack" ) )
+- setLineLeadingBackPoint(e.attribute( "leadBack" ).toDouble());
+- if ( e.hasAttribute( "showCaption" ) )
+- setLineShowCaption(e.attribute( "showCaption" ).toInt());
+- if ( e.hasAttribute( "intent" ) )
+- setLineIntent((LineAnnotation::LineIntent)e.attribute( "intent" ).toInt());
+-
+- // parse all 'point' subnodes
+- QLinkedList<QPointF> points;
+- QDomNode pointNode = e.firstChild();
+- while ( pointNode.isElement() )
+- {
+- QDomElement pe = pointNode.toElement();
+- pointNode = pointNode.nextSibling();
+-
+- if ( pe.tagName() != "point" )
+- continue;
+-
+- QPointF p(pe.attribute( "x", "0.0" ).toDouble(), pe.attribute( "y", "0.0" ).toDouble());
+- points.append( p );
+- }
+- setLinePoints(points);
+- setLineType(points.size() == 2 ? StraightLine : Polyline);
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-LineAnnotation::~LineAnnotation()
+-{
+-}
+-
+-void LineAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [line] element
+- QDomElement lineElement = document.createElement( "line" );
+- node.appendChild( lineElement );
+-
+- // store the attributes
+- if ( lineStartStyle() != None )
+- lineElement.setAttribute( "startStyle", (int)lineStartStyle() );
+- if ( lineEndStyle() != None )
+- lineElement.setAttribute( "endStyle", (int)lineEndStyle() );
+- if ( isLineClosed() )
+- lineElement.setAttribute( "closed", isLineClosed() );
+- if ( lineInnerColor().isValid() )
+- lineElement.setAttribute( "innerColor", lineInnerColor().name() );
+- if ( lineLeadingForwardPoint() != 0.0 )
+- lineElement.setAttribute( "leadFwd", QString::number( lineLeadingForwardPoint() ) );
+- if ( lineLeadingBackPoint() != 0.0 )
+- lineElement.setAttribute( "leadBack", QString::number( lineLeadingBackPoint() ) );
+- if ( lineShowCaption() )
+- lineElement.setAttribute( "showCaption", lineShowCaption() );
+- if ( lineIntent() != Unknown )
+- lineElement.setAttribute( "intent", lineIntent() );
+-
+- // append the list of points
+- const QLinkedList<QPointF> points = linePoints();
+- if ( points.count() > 1 )
+- {
+- QLinkedList<QPointF>::const_iterator it = points.begin(), end = points.end();
+- while ( it != end )
+- {
+- const QPointF & p = *it;
+- QDomElement pElement = document.createElement( "point" );
+- lineElement.appendChild( pElement );
+- pElement.setAttribute( "x", QString::number( p.x() ) );
+- pElement.setAttribute( "y", QString::number( p.y() ) );
+- ++it;
+- }
+- }
+-}
+-
+-Annotation::SubType LineAnnotation::subType() const
+-{
+- return ALine;
+-}
+-
+-LineAnnotation::LineType LineAnnotation::lineType() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->lineType;
+-
+- return (d->pdfAnnot->getType() == Annot::typeLine) ?
+- LineAnnotation::StraightLine : LineAnnotation::Polyline;
+-}
+-
+-void LineAnnotation::setLineType( LineAnnotation::LineType type )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->lineType = type;
+- return;
+- }
+-
+- // Type cannot be changed if annotation is already tied
+-}
+-
+-QLinkedList<QPointF> LineAnnotation::linePoints() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->linePoints;
+-
+- double MTX[6];
+- d->fillTransformationMTX(MTX);
+-
+- QLinkedList<QPointF> res;
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- const AnnotLine * lineann = static_cast<const AnnotLine*>(d->pdfAnnot);
+- QPointF p;
+- XPDFReader::transform(MTX, lineann->getX1(), lineann->getY1(), p);
+- res.append(p);
+- XPDFReader::transform(MTX, lineann->getX2(), lineann->getY2(), p);
+- res.append(p);
+- }
+- else
+- {
+- const AnnotPolygon * polyann = static_cast<const AnnotPolygon*>(d->pdfAnnot);
+- const AnnotPath * vertices = polyann->getVertices();
+-
+- for (int i = 0; i < vertices->getCoordsLength(); ++i)
+- {
+- QPointF p;
+- XPDFReader::transform(MTX, vertices->getX(i), vertices->getY(i), p);
+- res.append(p);
+- }
+- }
+-
+- return res;
+-}
+-
+-void LineAnnotation::setLinePoints( const QLinkedList<QPointF> &points )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->linePoints = points;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- AnnotLine *lineann = static_cast<AnnotLine*>(d->pdfAnnot);
+- if (points.size() != 2)
+- {
+- error(errSyntaxError, -1, "Expected two points for a straight line");
+- return;
+- }
+- double x1, y1, x2, y2;
+- double MTX[6];
+- d->fillTransformationMTX(MTX);
+- XPDFReader::invTransform( MTX, points.first(), x1, y1 );
+- XPDFReader::invTransform( MTX, points.last(), x2, y2 );
+- lineann->setVertices(x1, y1, x2, y2);
+- }
+- else
+- {
+- AnnotPolygon *polyann = static_cast<AnnotPolygon*>(d->pdfAnnot);
+- AnnotPath * p = d->toAnnotPath(points);
+- polyann->setVertices(p);
+- delete p;
+- }
+-}
+-
+-LineAnnotation::TermStyle LineAnnotation::lineStartStyle() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->lineStartStyle;
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- const AnnotLine * lineann = static_cast<const AnnotLine*>(d->pdfAnnot);
+- return (LineAnnotation::TermStyle)lineann->getStartStyle();
+- }
+- else
+- {
+- const AnnotPolygon * polyann = static_cast<const AnnotPolygon*>(d->pdfAnnot);
+- return (LineAnnotation::TermStyle)polyann->getStartStyle();
+- }
+-}
+-
+-void LineAnnotation::setLineStartStyle( LineAnnotation::TermStyle style )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->lineStartStyle = style;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- AnnotLine *lineann = static_cast<AnnotLine*>(d->pdfAnnot);
+- lineann->setStartEndStyle((AnnotLineEndingStyle)style, lineann->getEndStyle());
+- }
+- else
+- {
+- AnnotPolygon *polyann = static_cast<AnnotPolygon*>(d->pdfAnnot);
+- polyann->setStartEndStyle((AnnotLineEndingStyle)style, polyann->getEndStyle());
+- }
+-}
+-
+-LineAnnotation::TermStyle LineAnnotation::lineEndStyle() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->lineEndStyle;
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- const AnnotLine * lineann = static_cast<const AnnotLine*>(d->pdfAnnot);
+- return (LineAnnotation::TermStyle)lineann->getEndStyle();
+- }
+- else
+- {
+- const AnnotPolygon * polyann = static_cast<const AnnotPolygon*>(d->pdfAnnot);
+- return (LineAnnotation::TermStyle)polyann->getEndStyle();
+- }
+-}
+-
+-void LineAnnotation::setLineEndStyle( LineAnnotation::TermStyle style )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->lineEndStyle = style;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- AnnotLine *lineann = static_cast<AnnotLine*>(d->pdfAnnot);
+- lineann->setStartEndStyle(lineann->getStartStyle(), (AnnotLineEndingStyle)style);
+- }
+- else
+- {
+- AnnotPolygon *polyann = static_cast<AnnotPolygon*>(d->pdfAnnot);
+- polyann->setStartEndStyle(polyann->getStartStyle(), (AnnotLineEndingStyle)style);
+- }
+-}
+-
+-bool LineAnnotation::isLineClosed() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->lineClosed;
+-
+- return d->pdfAnnot->getType() == Annot::typePolygon;
+-}
+-
+-void LineAnnotation::setLineClosed( bool closed )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->lineClosed = closed;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() != Annot::typeLine)
+- {
+- AnnotPolygon *polyann = static_cast<AnnotPolygon*>(d->pdfAnnot);
+-
+- // Set new subtype and switch intent if necessary
+- if (closed)
+- {
+- polyann->setType(Annot::typePolygon);
+- if (polyann->getIntent() == AnnotPolygon::polylineDimension)
+- polyann->setIntent( AnnotPolygon::polygonDimension );
+- }
+- else
+- {
+- polyann->setType(Annot::typePolyLine);
+- if (polyann->getIntent() == AnnotPolygon::polygonDimension)
+- polyann->setIntent( AnnotPolygon::polylineDimension );
+- }
+- }
+-}
+-
+-QColor LineAnnotation::lineInnerColor() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->lineInnerColor;
+-
+- AnnotColor * c;
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- const AnnotLine * lineann = static_cast<const AnnotLine*>(d->pdfAnnot);
+- c = lineann->getInteriorColor();
+- }
+- else
+- {
+- const AnnotPolygon * polyann = static_cast<const AnnotPolygon*>(d->pdfAnnot);
+- c = polyann->getInteriorColor();
+- }
+-
+- return convertAnnotColor(c);
+-}
+-
+-void LineAnnotation::setLineInnerColor( const QColor &color )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->lineInnerColor = color;
+- return;
+- }
+-
+- AnnotColor * c = convertQColor(color);
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- AnnotLine *lineann = static_cast<AnnotLine*>(d->pdfAnnot);
+- lineann->setInteriorColor(c);
+- }
+- else
+- {
+- AnnotPolygon *polyann = static_cast<AnnotPolygon*>(d->pdfAnnot);
+- polyann->setInteriorColor(c);
+- }
+-}
+-
+-double LineAnnotation::lineLeadingForwardPoint() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->lineLeadingFwdPt;
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- const AnnotLine * lineann = static_cast<const AnnotLine*>(d->pdfAnnot);
+- return lineann->getLeaderLineLength();
+- }
+-
+- return 0;
+-}
+-
+-void LineAnnotation::setLineLeadingForwardPoint( double point )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->lineLeadingFwdPt = point;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- AnnotLine *lineann = static_cast<AnnotLine*>(d->pdfAnnot);
+- lineann->setLeaderLineLength(point);
+- }
+-}
+-
+-double LineAnnotation::lineLeadingBackPoint() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->lineLeadingBackPt;
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- const AnnotLine * lineann = static_cast<const AnnotLine*>(d->pdfAnnot);
+- return lineann->getLeaderLineExtension();
+- }
+-
+- return 0;
+-}
+-
+-void LineAnnotation::setLineLeadingBackPoint( double point )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->lineLeadingBackPt = point;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- AnnotLine *lineann = static_cast<AnnotLine*>(d->pdfAnnot);
+- lineann->setLeaderLineExtension(point);
+- }
+-}
+-
+-bool LineAnnotation::lineShowCaption() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->lineShowCaption;
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- const AnnotLine * lineann = static_cast<const AnnotLine*>(d->pdfAnnot);
+- return lineann->getCaption();
+- }
+-
+- return false;
+-}
+-
+-void LineAnnotation::setLineShowCaption( bool show )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->lineShowCaption = show;
+- return;
+- }
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- AnnotLine *lineann = static_cast<AnnotLine*>(d->pdfAnnot);
+- lineann->setCaption(show);
+- }
+-}
+-
+-LineAnnotation::LineIntent LineAnnotation::lineIntent() const
+-{
+- Q_D( const LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->lineIntent;
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- const AnnotLine * lineann = static_cast<const AnnotLine*>(d->pdfAnnot);
+- return (LineAnnotation::LineIntent)( lineann->getIntent() + 1 );
+- }
+- else
+- {
+- const AnnotPolygon * polyann = static_cast<const AnnotPolygon*>(d->pdfAnnot);
+- if ( polyann->getIntent() == AnnotPolygon::polygonCloud )
+- return LineAnnotation::PolygonCloud;
+- else // AnnotPolygon::polylineDimension, AnnotPolygon::polygonDimension
+- return LineAnnotation::Dimension;
+- }
+-}
+-
+-void LineAnnotation::setLineIntent( LineAnnotation::LineIntent intent )
+-{
+- Q_D( LineAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->lineIntent = intent;
+- return;
+- }
+-
+- if ( intent == LineAnnotation::Unknown )
+- return; // Do not set (actually, it should clear the property)
+-
+- if (d->pdfAnnot->getType() == Annot::typeLine)
+- {
+- AnnotLine * lineann = static_cast<AnnotLine*>(d->pdfAnnot);
+- lineann->setIntent((AnnotLine::AnnotLineIntent)( intent - 1 ));
+- }
+- else
+- {
+- AnnotPolygon * polyann = static_cast<AnnotPolygon*>(d->pdfAnnot);
+- if ( intent == LineAnnotation::PolygonCloud)
+- polyann->setIntent( AnnotPolygon::polygonCloud );
+- else // LineAnnotation::Dimension
+- {
+- if ( d->pdfAnnot->getType() == Annot::typePolygon )
+- polyann->setIntent( AnnotPolygon::polygonDimension );
+- else // Annot::typePolyLine
+- polyann->setIntent( AnnotPolygon::polylineDimension );
+- }
+- }
+-}
+-
+-
+-/** GeomAnnotation [Annotation] */
+-class GeomAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- GeomAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields (note uses border for rendering style)
+- GeomAnnotation::GeomType geomType;
+- QColor geomInnerColor;
+-};
+-
+-GeomAnnotationPrivate::GeomAnnotationPrivate()
+- : AnnotationPrivate(), geomType( GeomAnnotation::InscribedSquare )
+-{
+-}
+-
+-Annotation * GeomAnnotationPrivate::makeAlias()
+-{
+- return new GeomAnnotation(*this);
+-}
+-
+-Annot* GeomAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- // Setters are defined in the public class
+- GeomAnnotation *q = static_cast<GeomAnnotation*>( makeAlias() );
+-
+- // Set page and document
+- pdfPage = destPage;
+- parentDoc = doc;
+-
+- Annot::AnnotSubtype type;
+- if (geomType == GeomAnnotation::InscribedSquare)
+- type = Annot::typeSquare;
+- else // GeomAnnotation::InscribedCircle
+- type = Annot::typeCircle;
+-
+- // Set pdfAnnot
+- PDFRectangle rect = boundaryToPdfRectangle(boundary, flags);
+- pdfAnnot = new AnnotGeometry(destPage->getDoc(), &rect, type);
+-
+- // Set properties
+- flushBaseAnnotationProperties();
+- q->setGeomInnerColor(geomInnerColor);
+-
+- delete q;
+- return pdfAnnot;
+-}
+-
+-GeomAnnotation::GeomAnnotation()
+- : Annotation( *new GeomAnnotationPrivate() )
+-{}
+-
+-GeomAnnotation::GeomAnnotation(GeomAnnotationPrivate &dd)
+- : Annotation( dd )
+-{}
+-
+-GeomAnnotation::GeomAnnotation( const QDomNode & node )
+- : Annotation( *new GeomAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'geom' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "geom" )
+- continue;
+-
+- // parse the attributes
+- if ( e.hasAttribute( "type" ) )
+- setGeomType((GeomAnnotation::GeomType)e.attribute( "type" ).toInt());
+- if ( e.hasAttribute( "color" ) )
+- setGeomInnerColor(QColor( e.attribute( "color" ) ));
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-GeomAnnotation::~GeomAnnotation()
+-{
+-}
+-
+-void GeomAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [geom] element
+- QDomElement geomElement = document.createElement( "geom" );
+- node.appendChild( geomElement );
+-
+- // append the optional attributes
+- if ( geomType() != InscribedSquare )
+- geomElement.setAttribute( "type", (int)geomType() );
+- if ( geomInnerColor().isValid() )
+- geomElement.setAttribute( "color", geomInnerColor().name() );
+-}
+-
+-Annotation::SubType GeomAnnotation::subType() const
+-{
+- return AGeom;
+-}
+-
+-GeomAnnotation::GeomType GeomAnnotation::geomType() const
+-{
+- Q_D( const GeomAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->geomType;
+-
+- if (d->pdfAnnot->getType() == Annot::typeSquare)
+- return GeomAnnotation::InscribedSquare;
+- else // Annot::typeCircle
+- return GeomAnnotation::InscribedCircle;
+-}
+-
+-void GeomAnnotation::setGeomType( GeomAnnotation::GeomType type )
+-{
+- Q_D( GeomAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->geomType = type;
+- return;
+- }
+-
+- AnnotGeometry * geomann = static_cast<AnnotGeometry*>(d->pdfAnnot);
+- if (type == GeomAnnotation::InscribedSquare)
+- geomann->setType(Annot::typeSquare);
+- else // GeomAnnotation::InscribedCircle
+- geomann->setType(Annot::typeCircle);
+-}
+-
+-QColor GeomAnnotation::geomInnerColor() const
+-{
+- Q_D( const GeomAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->geomInnerColor;
+-
+- const AnnotGeometry * geomann = static_cast<const AnnotGeometry*>(d->pdfAnnot);
+- return convertAnnotColor( geomann->getInteriorColor() );
+-}
+-
+-void GeomAnnotation::setGeomInnerColor( const QColor &color )
+-{
+- Q_D( GeomAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->geomInnerColor = color;
+- return;
+- }
+-
+- AnnotGeometry * geomann = static_cast<AnnotGeometry*>(d->pdfAnnot);
+- geomann->setInteriorColor(convertQColor( color ));
+-}
+-
+-
+-/** HighlightAnnotation [Annotation] */
+-class HighlightAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- HighlightAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- HighlightAnnotation::HighlightType highlightType;
+- QList< HighlightAnnotation::Quad > highlightQuads; // not empty
+-
+- // helpers
+- static Annot::AnnotSubtype toAnnotSubType( HighlightAnnotation::HighlightType type );
+- QList< HighlightAnnotation::Quad > fromQuadrilaterals(AnnotQuadrilaterals *quads) const;
+- AnnotQuadrilaterals * toQuadrilaterals(const QList< HighlightAnnotation::Quad > &quads) const;
+-};
+-
+-HighlightAnnotationPrivate::HighlightAnnotationPrivate()
+- : AnnotationPrivate(), highlightType( HighlightAnnotation::Highlight )
+-{
+-}
+-
+-Annotation * HighlightAnnotationPrivate::makeAlias()
+-{
+- return new HighlightAnnotation(*this);
+-}
+-
+-Annot::AnnotSubtype HighlightAnnotationPrivate::toAnnotSubType( HighlightAnnotation::HighlightType type )
+-{
+- switch (type)
+- {
+- default: // HighlightAnnotation::Highlight:
+- return Annot::typeHighlight;
+- case HighlightAnnotation::Underline:
+- return Annot::typeUnderline;
+- case HighlightAnnotation::Squiggly:
+- return Annot::typeSquiggly;
+- case HighlightAnnotation::StrikeOut:
+- return Annot::typeStrikeOut;
+- }
+-}
+-
+-QList< HighlightAnnotation::Quad > HighlightAnnotationPrivate::fromQuadrilaterals(AnnotQuadrilaterals *hlquads) const
+-{
+- QList< HighlightAnnotation::Quad > quads;
+-
+- if ( !hlquads || !hlquads->getQuadrilateralsLength() )
+- return quads;
+- const int quadsCount = hlquads->getQuadrilateralsLength();
+-
+- double MTX[6];
+- fillTransformationMTX(MTX);
+-
+- quads.reserve(quadsCount);
+- for (int q = 0; q < quadsCount; ++q)
+- {
+- HighlightAnnotation::Quad quad;
+- XPDFReader::transform( MTX, hlquads->getX1( q ), hlquads->getY1( q ), quad.points[ 0 ] );
+- XPDFReader::transform( MTX, hlquads->getX2( q ), hlquads->getY2( q ), quad.points[ 1 ] );
+- XPDFReader::transform( MTX, hlquads->getX3( q ), hlquads->getY3( q ), quad.points[ 2 ] );
+- XPDFReader::transform( MTX, hlquads->getX4( q ), hlquads->getY4( q ), quad.points[ 3 ] );
+- // ### PDF1.6 specs says that point are in ccw order, but in fact
+- // points 3 and 4 are swapped in every PDF around!
+- QPointF tmpPoint = quad.points[ 2 ];
+- quad.points[ 2 ] = quad.points[ 3 ];
+- quad.points[ 3 ] = tmpPoint;
+- // initialize other properties and append quad
+- quad.capStart = true; // unlinked quads are always capped
+- quad.capEnd = true; // unlinked quads are always capped
+- quad.feather = 0.1; // default feather
+- quads.append( quad );
+- }
+-
+- return quads;
+-}
+-
+-AnnotQuadrilaterals * HighlightAnnotationPrivate::toQuadrilaterals(const QList< HighlightAnnotation::Quad > &quads) const
+-{
+- const int count = quads.size();
+- AnnotQuadrilaterals::AnnotQuadrilateral **ac =
+- (AnnotQuadrilaterals::AnnotQuadrilateral**)
+- gmallocn( count, sizeof(AnnotQuadrilaterals::AnnotQuadrilateral*) );
+-
+- double MTX[6];
+- fillTransformationMTX(MTX);
+-
+- int pos = 0;
+- foreach (const HighlightAnnotation::Quad &q, quads)
+- {
+- double x1, y1, x2, y2, x3, y3, x4, y4;
+- XPDFReader::invTransform( MTX, q.points[0], x1, y1 );
+- XPDFReader::invTransform( MTX, q.points[1], x2, y2 );
+- // Swap points 3 and 4 (see HighlightAnnotationPrivate::fromQuadrilaterals)
+- XPDFReader::invTransform( MTX, q.points[3], x3, y3 );
+- XPDFReader::invTransform( MTX, q.points[2], x4, y4 );
+- ac[pos++] = new AnnotQuadrilaterals::AnnotQuadrilateral(x1, y1, x2, y2, x3, y3, x4, y4);
+- }
+-
+- return new AnnotQuadrilaterals(ac, count);
+-}
+-
+-Annot* HighlightAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- // Setters are defined in the public class
+- HighlightAnnotation *q = static_cast<HighlightAnnotation*>( makeAlias() );
+-
+- // Set page and document
+- pdfPage = destPage;
+- parentDoc = doc;
+-
+- // Set pdfAnnot
+- PDFRectangle rect = boundaryToPdfRectangle(boundary, flags);
+- pdfAnnot = new AnnotTextMarkup(destPage->getDoc(), &rect, toAnnotSubType(highlightType));
+-
+- // Set properties
+- flushBaseAnnotationProperties();
+- q->setHighlightQuads(highlightQuads);
+-
+- highlightQuads.clear(); // Free up memory
+-
+- delete q;
+-
+- return pdfAnnot;
+-}
+-
+-HighlightAnnotation::HighlightAnnotation()
+- : Annotation( *new HighlightAnnotationPrivate() )
+-{}
+-
+-HighlightAnnotation::HighlightAnnotation(HighlightAnnotationPrivate &dd)
+- : Annotation( dd )
+-{}
+-
+-HighlightAnnotation::HighlightAnnotation( const QDomNode & node )
+- : Annotation( *new HighlightAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'hl' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "hl" )
+- continue;
+-
+- // parse the attributes
+- if ( e.hasAttribute( "type" ) )
+- setHighlightType((HighlightAnnotation::HighlightType)e.attribute( "type" ).toInt());
+-
+- // parse all 'quad' subnodes
+- QList<HighlightAnnotation::Quad> quads;
+- QDomNode quadNode = e.firstChild();
+- for ( ; quadNode.isElement(); quadNode = quadNode.nextSibling() )
+- {
+- QDomElement qe = quadNode.toElement();
+- if ( qe.tagName() != "quad" )
+- continue;
+-
+- Quad q;
+- q.points[0].setX(qe.attribute( "ax", "0.0" ).toDouble());
+- q.points[0].setY(qe.attribute( "ay", "0.0" ).toDouble());
+- q.points[1].setX(qe.attribute( "bx", "0.0" ).toDouble());
+- q.points[1].setY(qe.attribute( "by", "0.0" ).toDouble());
+- q.points[2].setX(qe.attribute( "cx", "0.0" ).toDouble());
+- q.points[2].setY(qe.attribute( "cy", "0.0" ).toDouble());
+- q.points[3].setX(qe.attribute( "dx", "0.0" ).toDouble());
+- q.points[3].setY(qe.attribute( "dy", "0.0" ).toDouble());
+- q.capStart = qe.hasAttribute( "start" );
+- q.capEnd = qe.hasAttribute( "end" );
+- q.feather = qe.attribute( "feather", "0.1" ).toDouble();
+- quads.append( q );
+- }
+- setHighlightQuads(quads);
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-HighlightAnnotation::~HighlightAnnotation()
+-{
+-}
+-
+-void HighlightAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [hl] element
+- QDomElement hlElement = document.createElement( "hl" );
+- node.appendChild( hlElement );
+-
+- // append the optional attributes
+- if ( highlightType() != Highlight )
+- hlElement.setAttribute( "type", (int)highlightType() );
+-
+- const QList<HighlightAnnotation::Quad> quads = highlightQuads();
+- if ( quads.count() < 1 )
+- return;
+- // append highlight quads, all children describe quads
+- QList< HighlightAnnotation::Quad >::const_iterator it = quads.begin(), end = quads.end();
+- for ( ; it != end; ++it )
+- {
+- QDomElement quadElement = document.createElement( "quad" );
+- hlElement.appendChild( quadElement );
+- const Quad & q = *it;
+- quadElement.setAttribute( "ax", QString::number( q.points[0].x() ) );
+- quadElement.setAttribute( "ay", QString::number( q.points[0].y() ) );
+- quadElement.setAttribute( "bx", QString::number( q.points[1].x() ) );
+- quadElement.setAttribute( "by", QString::number( q.points[1].y() ) );
+- quadElement.setAttribute( "cx", QString::number( q.points[2].x() ) );
+- quadElement.setAttribute( "cy", QString::number( q.points[2].y() ) );
+- quadElement.setAttribute( "dx", QString::number( q.points[3].x() ) );
+- quadElement.setAttribute( "dy", QString::number( q.points[3].y() ) );
+- if ( q.capStart )
+- quadElement.setAttribute( "start", 1 );
+- if ( q.capEnd )
+- quadElement.setAttribute( "end", 1 );
+- quadElement.setAttribute( "feather", QString::number( q.feather ) );
+- }
+-}
+-
+-Annotation::SubType HighlightAnnotation::subType() const
+-{
+- return AHighlight;
+-}
+-
+-HighlightAnnotation::HighlightType HighlightAnnotation::highlightType() const
+-{
+- Q_D( const HighlightAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->highlightType;
+-
+- Annot::AnnotSubtype subType = d->pdfAnnot->getType();
+-
+- if ( subType == Annot::typeHighlight )
+- return HighlightAnnotation::Highlight;
+- else if ( subType == Annot::typeUnderline )
+- return HighlightAnnotation::Underline;
+- else if ( subType == Annot::typeSquiggly )
+- return HighlightAnnotation::Squiggly;
+- else // Annot::typeStrikeOut
+- return HighlightAnnotation::StrikeOut;
+-}
+-
+-void HighlightAnnotation::setHighlightType( HighlightAnnotation::HighlightType type )
+-{
+- Q_D( HighlightAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->highlightType = type;
+- return;
+- }
+-
+- AnnotTextMarkup * hlann = static_cast<AnnotTextMarkup*>(d->pdfAnnot);
+- hlann->setType(HighlightAnnotationPrivate::toAnnotSubType( type ));
+-}
+-
+-QList< HighlightAnnotation::Quad > HighlightAnnotation::highlightQuads() const
+-{
+- Q_D( const HighlightAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->highlightQuads;
+-
+- const AnnotTextMarkup * hlann = static_cast<AnnotTextMarkup*>(d->pdfAnnot);
+- return d->fromQuadrilaterals( hlann->getQuadrilaterals() );
+-}
+-
+-void HighlightAnnotation::setHighlightQuads( const QList< HighlightAnnotation::Quad > &quads )
+-{
+- Q_D( HighlightAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->highlightQuads = quads;
+- return;
+- }
+-
+- AnnotTextMarkup * hlann = static_cast<AnnotTextMarkup*>(d->pdfAnnot);
+- AnnotQuadrilaterals * quadrilaterals = d->toQuadrilaterals(quads);
+- hlann->setQuadrilaterals(quadrilaterals);
+- delete quadrilaterals;
+-}
+-
+-
+-/** StampAnnotation [Annotation] */
+-class StampAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- StampAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- QString stampIconName;
+-};
+-
+-StampAnnotationPrivate::StampAnnotationPrivate()
+- : AnnotationPrivate(), stampIconName( "Draft" )
+-{
+-}
+-
+-Annotation * StampAnnotationPrivate::makeAlias()
+-{
+- return new StampAnnotation(*this);
+-}
+-
+-Annot* StampAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- StampAnnotation *q = static_cast<StampAnnotation*>( makeAlias() );
+-
+- // Set page and document
+- pdfPage = destPage;
+- parentDoc = doc;
+-
+- // Set pdfAnnot
+- PDFRectangle rect = boundaryToPdfRectangle(boundary, flags);
+- pdfAnnot = new AnnotStamp(destPage->getDoc(), &rect);
+-
+- // Set properties
+- flushBaseAnnotationProperties();
+- q->setStampIconName(stampIconName);
+-
+- delete q;
+-
+- stampIconName.clear(); // Free up memory
+-
+- return pdfAnnot;
+-}
+-
+-StampAnnotation::StampAnnotation()
+- : Annotation( *new StampAnnotationPrivate() )
+-{}
+-
+-StampAnnotation::StampAnnotation(StampAnnotationPrivate &dd)
+- : Annotation( dd )
+-{}
+-
+-StampAnnotation::StampAnnotation( const QDomNode & node )
+- : Annotation( *new StampAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'stamp' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "stamp" )
+- continue;
+-
+- // parse the attributes
+- if ( e.hasAttribute( "icon" ) )
+- setStampIconName(e.attribute( "icon" ));
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-StampAnnotation::~StampAnnotation()
+-{
+-}
+-
+-void StampAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [stamp] element
+- QDomElement stampElement = document.createElement( "stamp" );
+- node.appendChild( stampElement );
+-
+- // append the optional attributes
+- if ( stampIconName() != "Draft" )
+- stampElement.setAttribute( "icon", stampIconName() );
+-}
+-
+-Annotation::SubType StampAnnotation::subType() const
+-{
+- return AStamp;
+-}
+-
+-QString StampAnnotation::stampIconName() const
+-{
+- Q_D( const StampAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->stampIconName;
+-
+- const AnnotStamp * stampann = static_cast<const AnnotStamp*>(d->pdfAnnot);
+- return QString::fromLatin1( stampann->getIcon()->getCString() );
+-}
+-
+-void StampAnnotation::setStampIconName( const QString &name )
+-{
+- Q_D( StampAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->stampIconName = name;
+- return;
+- }
+-
+- AnnotStamp * stampann = static_cast<AnnotStamp*>(d->pdfAnnot);
+- QByteArray encoded = name.toLatin1();
+- GooString s(encoded.constData());
+- stampann->setIcon(&s);
+-}
+-
+-/** InkAnnotation [Annotation] */
+-class InkAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- InkAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- QList< QLinkedList<QPointF> > inkPaths;
+-
+- // helper
+- AnnotPath **toAnnotPaths(const QList< QLinkedList<QPointF> > &inkPaths);
+-};
+-
+-InkAnnotationPrivate::InkAnnotationPrivate()
+- : AnnotationPrivate()
+-{
+-}
+-
+-Annotation * InkAnnotationPrivate::makeAlias()
+-{
+- return new InkAnnotation(*this);
+-}
+-
+-// Note: Caller is required to delete array elements and the array itself after use
+-AnnotPath **InkAnnotationPrivate::toAnnotPaths(const QList< QLinkedList<QPointF> > &inkPaths)
+-{
+- const int pathsNumber = inkPaths.size();
+- AnnotPath **res = new AnnotPath*[pathsNumber];
+- for (int i = 0; i < pathsNumber; ++i)
+- res[i] = toAnnotPath( inkPaths[i] );
+- return res;
+-}
+-
+-Annot* InkAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- // Setters are defined in the public class
+- InkAnnotation *q = static_cast<InkAnnotation*>( makeAlias() );
+-
+- // Set page and document
+- pdfPage = destPage;
+- parentDoc = doc;
+-
+- // Set pdfAnnot
+- PDFRectangle rect = boundaryToPdfRectangle(boundary, flags);
+- pdfAnnot = new AnnotInk(destPage->getDoc(), &rect);
+-
+- // Set properties
+- flushBaseAnnotationProperties();
+- q->setInkPaths(inkPaths);
+-
+- inkPaths.clear(); // Free up memory
+-
+- delete q;
+-
+- return pdfAnnot;
+-}
+-
+-InkAnnotation::InkAnnotation()
+- : Annotation( *new InkAnnotationPrivate() )
+-{}
+-
+-InkAnnotation::InkAnnotation(InkAnnotationPrivate &dd)
+- : Annotation( dd )
+-{}
+-
+-InkAnnotation::InkAnnotation( const QDomNode & node )
+- : Annotation( *new InkAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'ink' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "ink" )
+- continue;
+-
+- // parse the 'path' subnodes
+- QList< QLinkedList<QPointF> > paths;
+- QDomNode pathNode = e.firstChild();
+- while ( pathNode.isElement() )
+- {
+- QDomElement pathElement = pathNode.toElement();
+- pathNode = pathNode.nextSibling();
+-
+- if ( pathElement.tagName() != "path" )
+- continue;
+-
+- // build each path parsing 'point' subnodes
+- QLinkedList<QPointF> path;
+- QDomNode pointNode = pathElement.firstChild();
+- while ( pointNode.isElement() )
+- {
+- QDomElement pointElement = pointNode.toElement();
+- pointNode = pointNode.nextSibling();
+-
+- if ( pointElement.tagName() != "point" )
+- continue;
+-
+- QPointF p(pointElement.attribute( "x", "0.0" ).toDouble(), pointElement.attribute( "y", "0.0" ).toDouble());
+- path.append( p );
+- }
+-
+- // add the path to the path list if it contains at least 2 nodes
+- if ( path.count() >= 2 )
+- paths.append( path );
+- }
+- setInkPaths(paths);
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-InkAnnotation::~InkAnnotation()
+-{
+-}
+-
+-void InkAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [ink] element
+- QDomElement inkElement = document.createElement( "ink" );
+- node.appendChild( inkElement );
+-
+- // append the optional attributes
+- const QList< QLinkedList<QPointF> > paths = inkPaths();
+- if ( paths.count() < 1 )
+- return;
+- QList< QLinkedList<QPointF> >::const_iterator pIt = paths.begin(), pEnd = paths.end();
+- for ( ; pIt != pEnd; ++pIt )
+- {
+- QDomElement pathElement = document.createElement( "path" );
+- inkElement.appendChild( pathElement );
+- const QLinkedList<QPointF> & path = *pIt;
+- QLinkedList<QPointF>::const_iterator iIt = path.begin(), iEnd = path.end();
+- for ( ; iIt != iEnd; ++iIt )
+- {
+- const QPointF & point = *iIt;
+- QDomElement pointElement = document.createElement( "point" );
+- pathElement.appendChild( pointElement );
+- pointElement.setAttribute( "x", QString::number( point.x() ) );
+- pointElement.setAttribute( "y", QString::number( point.y() ) );
+- }
+- }
+-}
+-
+-Annotation::SubType InkAnnotation::subType() const
+-{
+- return AInk;
+-}
+-
+-QList< QLinkedList<QPointF> > InkAnnotation::inkPaths() const
+-{
+- Q_D( const InkAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->inkPaths;
+-
+- const AnnotInk * inkann = static_cast<const AnnotInk *>(d->pdfAnnot);
+-
+- const AnnotPath * const* paths = inkann->getInkList();
+- if ( !paths || !inkann->getInkListLength() )
+- return QList< QLinkedList<QPointF> >();
+-
+- double MTX[6];
+- d->fillTransformationMTX(MTX);
+-
+- const int pathsNumber = inkann->getInkListLength();
+- QList< QLinkedList<QPointF> > inkPaths;
+- inkPaths.reserve(pathsNumber);
+- for (int m = 0; m < pathsNumber; ++m)
+- {
+- // transform each path in a list of normalized points ..
+- QLinkedList<QPointF> localList;
+- const AnnotPath * path = paths[ m ];
+- const int pointsNumber = path ? path->getCoordsLength() : 0;
+- for (int n = 0; n < pointsNumber; ++n)
+- {
+- QPointF point;
+- XPDFReader::transform(MTX, path->getX(n), path->getY(n), point);
+- localList.append(point);
+- }
+- // ..and add it to the annotation
+- inkPaths.append( localList );
+- }
+- return inkPaths;
+-}
+-
+-void InkAnnotation::setInkPaths( const QList< QLinkedList<QPointF> > &paths )
+-{
+- Q_D( InkAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->inkPaths = paths;
+- return;
+- }
+-
+- AnnotInk * inkann = static_cast<AnnotInk*>(d->pdfAnnot);
+- AnnotPath **annotpaths = d->toAnnotPaths(paths);
+- const int pathsNumber = paths.size();
+- inkann->setInkList(annotpaths, pathsNumber);
+-
+- for (int i = 0; i < pathsNumber; ++i)
+- delete annotpaths[i];
+- delete[] annotpaths;
+-}
+-
+-
+-/** LinkAnnotation [Annotation] */
+-class LinkAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- LinkAnnotationPrivate();
+- ~LinkAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- Link * linkDestination;
+- LinkAnnotation::HighlightMode linkHLMode;
+- QPointF linkRegion[4];
+-};
+-
+-LinkAnnotationPrivate::LinkAnnotationPrivate()
+- : AnnotationPrivate(), linkDestination( 0 ), linkHLMode( LinkAnnotation::Invert )
+-{
+-}
+-
+-LinkAnnotationPrivate::~LinkAnnotationPrivate()
+-{
+- delete linkDestination;
+-}
+-
+-Annotation * LinkAnnotationPrivate::makeAlias()
+-{
+- return new LinkAnnotation(*this);
+-}
+-
+-Annot* LinkAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- return 0; // Not implemented
+-}
+-
+-LinkAnnotation::LinkAnnotation()
+- : Annotation( *new LinkAnnotationPrivate() )
+-{}
+-
+-LinkAnnotation::LinkAnnotation(LinkAnnotationPrivate &dd)
+- : Annotation( dd )
+-{}
+-
+-LinkAnnotation::LinkAnnotation( const QDomNode & node )
+- : Annotation( *new LinkAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'link' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "link" )
+- continue;
+-
+- // parse the attributes
+- if ( e.hasAttribute( "hlmode" ) )
+- setLinkHighlightMode((LinkAnnotation::HighlightMode)e.attribute( "hlmode" ).toInt());
+-
+- // parse all 'quad' subnodes
+- QDomNode quadNode = e.firstChild();
+- for ( ; quadNode.isElement(); quadNode = quadNode.nextSibling() )
+- {
+- QDomElement qe = quadNode.toElement();
+- if ( qe.tagName() == "quad" )
+- {
+- setLinkRegionPoint(0, QPointF(qe.attribute( "ax", "0.0" ).toDouble(),
+- qe.attribute( "ay", "0.0" ).toDouble()));
+- setLinkRegionPoint(1, QPointF(qe.attribute( "bx", "0.0" ).toDouble(),
+- qe.attribute( "by", "0.0" ).toDouble()));
+- setLinkRegionPoint(2, QPointF(qe.attribute( "cx", "0.0" ).toDouble(),
+- qe.attribute( "cy", "0.0" ).toDouble()));
+- setLinkRegionPoint(3, QPointF(qe.attribute( "dx", "0.0" ).toDouble(),
+- qe.attribute( "dy", "0.0" ).toDouble()));
+- }
+- else if ( qe.tagName() == "link" )
+- {
+- QString type = qe.attribute( "type" );
+- if ( type == "GoTo" )
+- {
+- Poppler::LinkGoto * go = new Poppler::LinkGoto( QRect(), qe.attribute( "filename" ), LinkDestination( qe.attribute( "destination" ) ) );
+- setLinkDestination(go);
+- }
+- else if ( type == "Exec" )
+- {
+- Poppler::LinkExecute * exec = new Poppler::LinkExecute( QRect(), qe.attribute( "filename" ), qe.attribute( "parameters" ) );
+- setLinkDestination(exec);
+- }
+- else if ( type == "Browse" )
+- {
+- Poppler::LinkBrowse * browse = new Poppler::LinkBrowse( QRect(), qe.attribute( "url" ) );
+- setLinkDestination(browse);
+- }
+- else if ( type == "Action" )
+- {
+- Poppler::LinkAction::ActionType act;
+- QString actString = qe.attribute( "action" );
+- bool found = true;
+- if ( actString == "PageFirst" )
+- act = Poppler::LinkAction::PageFirst;
+- else if ( actString == "PagePrev" )
+- act = Poppler::LinkAction::PagePrev;
+- else if ( actString == "PageNext" )
+- act = Poppler::LinkAction::PageNext;
+- else if ( actString == "PageLast" )
+- act = Poppler::LinkAction::PageLast;
+- else if ( actString == "HistoryBack" )
+- act = Poppler::LinkAction::HistoryBack;
+- else if ( actString == "HistoryForward" )
+- act = Poppler::LinkAction::HistoryForward;
+- else if ( actString == "Quit" )
+- act = Poppler::LinkAction::Quit;
+- else if ( actString == "Presentation" )
+- act = Poppler::LinkAction::Presentation;
+- else if ( actString == "EndPresentation" )
+- act = Poppler::LinkAction::EndPresentation;
+- else if ( actString == "Find" )
+- act = Poppler::LinkAction::Find;
+- else if ( actString == "GoToPage" )
+- act = Poppler::LinkAction::GoToPage;
+- else if ( actString == "Close" )
+- act = Poppler::LinkAction::Close;
+- else if ( actString == "Print" )
+- act = Poppler::LinkAction::Print;
+- else
+- found = false;
+- if (found)
+- {
+- Poppler::LinkAction * action = new Poppler::LinkAction( QRect(), act );
+- setLinkDestination(action);
+- }
+- }
+-#if 0
+- else if ( type == "Movie" )
+- {
+- Poppler::LinkMovie * movie = new Poppler::LinkMovie( QRect() );
+- setLinkDestination(movie);
+- }
+-#endif
+- }
+- }
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-LinkAnnotation::~LinkAnnotation()
+-{
+-}
+-
+-void LinkAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [hl] element
+- QDomElement linkElement = document.createElement( "link" );
+- node.appendChild( linkElement );
+-
+- // append the optional attributes
+- if ( linkHighlightMode() != Invert )
+- linkElement.setAttribute( "hlmode", (int)linkHighlightMode() );
+-
+- // saving region
+- QDomElement quadElement = document.createElement( "quad" );
+- linkElement.appendChild( quadElement );
+- quadElement.setAttribute( "ax", QString::number( linkRegionPoint(0).x() ) );
+- quadElement.setAttribute( "ay", QString::number( linkRegionPoint(0).y() ) );
+- quadElement.setAttribute( "bx", QString::number( linkRegionPoint(1).x() ) );
+- quadElement.setAttribute( "by", QString::number( linkRegionPoint(1).y() ) );
+- quadElement.setAttribute( "cx", QString::number( linkRegionPoint(2).x() ) );
+- quadElement.setAttribute( "cy", QString::number( linkRegionPoint(2).y() ) );
+- quadElement.setAttribute( "dx", QString::number( linkRegionPoint(3).x() ) );
+- quadElement.setAttribute( "dy", QString::number( linkRegionPoint(3).y() ) );
+-
+- // saving link
+- QDomElement hyperlinkElement = document.createElement( "link" );
+- linkElement.appendChild( hyperlinkElement );
+- if ( linkDestination() )
+- {
+- switch( linkDestination()->linkType() )
+- {
+- case Poppler::Link::Goto:
+- {
+- Poppler::LinkGoto * go = static_cast< Poppler::LinkGoto * >( linkDestination() );
+- hyperlinkElement.setAttribute( "type", "GoTo" );
+- hyperlinkElement.setAttribute( "filename", go->fileName() );
+- hyperlinkElement.setAttribute( "destionation", go->destination().toString() ); // TODO Remove for poppler 0.28
+- hyperlinkElement.setAttribute( "destination", go->destination().toString() );
+- break;
+- }
+- case Poppler::Link::Execute:
+- {
+- Poppler::LinkExecute * exec = static_cast< Poppler::LinkExecute * >( linkDestination() );
+- hyperlinkElement.setAttribute( "type", "Exec" );
+- hyperlinkElement.setAttribute( "filename", exec->fileName() );
+- hyperlinkElement.setAttribute( "parameters", exec->parameters() );
+- break;
+- }
+- case Poppler::Link::Browse:
+- {
+- Poppler::LinkBrowse * browse = static_cast< Poppler::LinkBrowse * >( linkDestination() );
+- hyperlinkElement.setAttribute( "type", "Browse" );
+- hyperlinkElement.setAttribute( "url", browse->url() );
+- break;
+- }
+- case Poppler::Link::Action:
+- {
+- Poppler::LinkAction * action = static_cast< Poppler::LinkAction * >( linkDestination() );
+- hyperlinkElement.setAttribute( "type", "Action" );
+- switch ( action->actionType() )
+- {
+- case Poppler::LinkAction::PageFirst:
+- hyperlinkElement.setAttribute( "action", "PageFirst" );
+- break;
+- case Poppler::LinkAction::PagePrev:
+- hyperlinkElement.setAttribute( "action", "PagePrev" );
+- break;
+- case Poppler::LinkAction::PageNext:
+- hyperlinkElement.setAttribute( "action", "PageNext" );
+- break;
+- case Poppler::LinkAction::PageLast:
+- hyperlinkElement.setAttribute( "action", "PageLast" );
+- break;
+- case Poppler::LinkAction::HistoryBack:
+- hyperlinkElement.setAttribute( "action", "HistoryBack" );
+- break;
+- case Poppler::LinkAction::HistoryForward:
+- hyperlinkElement.setAttribute( "action", "HistoryForward" );
+- break;
+- case Poppler::LinkAction::Quit:
+- hyperlinkElement.setAttribute( "action", "Quit" );
+- break;
+- case Poppler::LinkAction::Presentation:
+- hyperlinkElement.setAttribute( "action", "Presentation" );
+- break;
+- case Poppler::LinkAction::EndPresentation:
+- hyperlinkElement.setAttribute( "action", "EndPresentation" );
+- break;
+- case Poppler::LinkAction::Find:
+- hyperlinkElement.setAttribute( "action", "Find" );
+- break;
+- case Poppler::LinkAction::GoToPage:
+- hyperlinkElement.setAttribute( "action", "GoToPage" );
+- break;
+- case Poppler::LinkAction::Close:
+- hyperlinkElement.setAttribute( "action", "Close" );
+- break;
+- case Poppler::LinkAction::Print:
+- hyperlinkElement.setAttribute( "action", "Print" );
+- break;
+- }
+- break;
+- }
+- case Poppler::Link::Movie:
+- {
+- hyperlinkElement.setAttribute( "type", "Movie" );
+- break;
+- }
+- case Poppler::Link::Rendition:
+- {
+- hyperlinkElement.setAttribute( "type", "Rendition" );
+- break;
+- }
+- case Poppler::Link::Sound:
+- {
+- // FIXME: implement me
+- break;
+- }
+- case Poppler::Link::None:
+- break;
+- }
+- }
+-}
+-
+-Annotation::SubType LinkAnnotation::subType() const
+-{
+- return ALink;
+-}
+-
+-Link* LinkAnnotation::linkDestination() const
+-{
+- Q_D( const LinkAnnotation );
+- return d->linkDestination;
+-}
+-
+-void LinkAnnotation::setLinkDestination( Link *link )
+-{
+- Q_D( LinkAnnotation );
+- delete d->linkDestination;
+- d->linkDestination = link;
+-}
+-
+-LinkAnnotation::HighlightMode LinkAnnotation::linkHighlightMode() const
+-{
+- Q_D( const LinkAnnotation );
+- return d->linkHLMode;
+-}
+-
+-void LinkAnnotation::setLinkHighlightMode( LinkAnnotation::HighlightMode mode )
+-{
+- Q_D( LinkAnnotation );
+- d->linkHLMode = mode;
+-}
+-
+-QPointF LinkAnnotation::linkRegionPoint( int id ) const
+-{
+- if ( id < 0 || id >= 4 )
+- return QPointF();
+-
+- Q_D( const LinkAnnotation );
+- return d->linkRegion[id];
+-}
+-
+-void LinkAnnotation::setLinkRegionPoint( int id, const QPointF &point )
+-{
+- if ( id < 0 || id >= 4 )
+- return;
+-
+- Q_D( LinkAnnotation );
+- d->linkRegion[id] = point;
+-}
+-
+-/** CaretAnnotation [Annotation] */
+-class CaretAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- CaretAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- CaretAnnotation::CaretSymbol symbol;
+-};
+-
+-static QString caretSymbolToString( CaretAnnotation::CaretSymbol symbol )
+-{
+- switch ( symbol )
+- {
+- case CaretAnnotation::None:
+- return QString::fromLatin1( "None" );
+- case CaretAnnotation::P:
+- return QString::fromLatin1( "P" );
+- }
+- return QString();
+-}
+-
+-static CaretAnnotation::CaretSymbol caretSymbolFromString( const QString &symbol )
+-{
+- if ( symbol == QLatin1String( "None" ) )
+- return CaretAnnotation::None;
+- else if ( symbol == QLatin1String( "P" ) )
+- return CaretAnnotation::P;
+- return CaretAnnotation::None;
+-}
+-
+-CaretAnnotationPrivate::CaretAnnotationPrivate()
+- : AnnotationPrivate(), symbol( CaretAnnotation::None )
+-{
+-}
+-
+-Annotation * CaretAnnotationPrivate::makeAlias()
+-{
+- return new CaretAnnotation(*this);
+-}
+-
+-Annot* CaretAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- // Setters are defined in the public class
+- CaretAnnotation *q = static_cast<CaretAnnotation*>( makeAlias() );
+-
+- // Set page and document
+- pdfPage = destPage;
+- parentDoc = doc;
+-
+- // Set pdfAnnot
+- PDFRectangle rect = boundaryToPdfRectangle(boundary, flags);
+- pdfAnnot = new AnnotCaret(destPage->getDoc(), &rect);
+-
+- // Set properties
+- flushBaseAnnotationProperties();
+- q->setCaretSymbol(symbol);
+-
+- delete q;
+- return pdfAnnot;
+-}
+-
+-CaretAnnotation::CaretAnnotation()
+- : Annotation( *new CaretAnnotationPrivate() )
+-{
+-}
+-
+-CaretAnnotation::CaretAnnotation(CaretAnnotationPrivate &dd)
+- : Annotation( dd )
+-{
+-}
+-
+-CaretAnnotation::CaretAnnotation( const QDomNode & node )
+- : Annotation( *new CaretAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'caret' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "caret" )
+- continue;
+-
+- // parse the attributes
+- if ( e.hasAttribute( "symbol" ) )
+- setCaretSymbol(caretSymbolFromString( e.attribute( "symbol" ) ));
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-CaretAnnotation::~CaretAnnotation()
+-{
+-}
+-
+-void CaretAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [caret] element
+- QDomElement caretElement = document.createElement( "caret" );
+- node.appendChild( caretElement );
+-
+- // append the optional attributes
+- if ( caretSymbol() != CaretAnnotation::None )
+- caretElement.setAttribute( "symbol", caretSymbolToString( caretSymbol() ) );
+-}
+-
+-Annotation::SubType CaretAnnotation::subType() const
+-{
+- return ACaret;
+-}
+-
+-CaretAnnotation::CaretSymbol CaretAnnotation::caretSymbol() const
+-{
+- Q_D( const CaretAnnotation );
+-
+- if (!d->pdfAnnot)
+- return d->symbol;
+-
+- const AnnotCaret * caretann = static_cast<const AnnotCaret *>(d->pdfAnnot);
+- return (CaretAnnotation::CaretSymbol)caretann->getSymbol();
+-}
+-
+-void CaretAnnotation::setCaretSymbol( CaretAnnotation::CaretSymbol symbol )
+-{
+- Q_D( CaretAnnotation );
+-
+- if (!d->pdfAnnot)
+- {
+- d->symbol = symbol;
+- return;
+- }
+-
+- AnnotCaret * caretann = static_cast<AnnotCaret *>(d->pdfAnnot);
+- caretann->setSymbol((AnnotCaret::AnnotCaretSymbol)symbol);
+-}
+-
+-/** FileAttachmentAnnotation [Annotation] */
+-class FileAttachmentAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- FileAttachmentAnnotationPrivate();
+- ~FileAttachmentAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- QString icon;
+- EmbeddedFile *embfile;
+-};
+-
+-FileAttachmentAnnotationPrivate::FileAttachmentAnnotationPrivate()
+- : AnnotationPrivate(), icon( "PushPin" ), embfile( 0 )
+-{
+-}
+-
+-FileAttachmentAnnotationPrivate::~FileAttachmentAnnotationPrivate()
+-{
+- delete embfile;
+-}
+-
+-Annotation * FileAttachmentAnnotationPrivate::makeAlias()
+-{
+- return new FileAttachmentAnnotation(*this);
+-}
+-
+-Annot* FileAttachmentAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- return 0; // Not implemented
+-}
+-
+-FileAttachmentAnnotation::FileAttachmentAnnotation()
+- : Annotation( *new FileAttachmentAnnotationPrivate() )
+-{
+-}
+-
+-FileAttachmentAnnotation::FileAttachmentAnnotation(FileAttachmentAnnotationPrivate &dd)
+- : Annotation( dd )
+-{
+-}
+-
+-FileAttachmentAnnotation::FileAttachmentAnnotation( const QDomNode & node )
+- : Annotation( *new FileAttachmentAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'fileattachment' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "fileattachment" )
+- continue;
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-FileAttachmentAnnotation::~FileAttachmentAnnotation()
+-{
+-}
+-
+-void FileAttachmentAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [fileattachment] element
+- QDomElement fileAttachmentElement = document.createElement( "fileattachment" );
+- node.appendChild( fileAttachmentElement );
+-}
+-
+-Annotation::SubType FileAttachmentAnnotation::subType() const
+-{
+- return AFileAttachment;
+-}
+-
+-QString FileAttachmentAnnotation::fileIconName() const
+-{
+- Q_D( const FileAttachmentAnnotation );
+- return d->icon;
+-}
+-
+-void FileAttachmentAnnotation::setFileIconName( const QString &icon )
+-{
+- Q_D( FileAttachmentAnnotation );
+- d->icon = icon;
+-}
+-
+-EmbeddedFile* FileAttachmentAnnotation::embeddedFile() const
+-{
+- Q_D( const FileAttachmentAnnotation );
+- return d->embfile;
+-}
+-
+-void FileAttachmentAnnotation::setEmbeddedFile( EmbeddedFile *ef )
+-{
+- Q_D( FileAttachmentAnnotation );
+- d->embfile = ef;
+-}
+-
+-/** SoundAnnotation [Annotation] */
+-class SoundAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- SoundAnnotationPrivate();
+- ~SoundAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- QString icon;
+- SoundObject *sound;
+-};
+-
+-SoundAnnotationPrivate::SoundAnnotationPrivate()
+- : AnnotationPrivate(), icon( "Speaker" ), sound( 0 )
+-{
+-}
+-
+-SoundAnnotationPrivate::~SoundAnnotationPrivate()
+-{
+- delete sound;
+-}
+-
+-Annotation * SoundAnnotationPrivate::makeAlias()
+-{
+- return new SoundAnnotation(*this);
+-}
+-
+-Annot* SoundAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- return 0; // Not implemented
+-}
+-
+-SoundAnnotation::SoundAnnotation()
+- : Annotation( *new SoundAnnotationPrivate() )
+-{
+-}
+-
+-SoundAnnotation::SoundAnnotation(SoundAnnotationPrivate &dd)
+- : Annotation( dd )
+-{
+-}
+-
+-SoundAnnotation::SoundAnnotation( const QDomNode & node )
+- : Annotation( *new SoundAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'sound' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "sound" )
+- continue;
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-SoundAnnotation::~SoundAnnotation()
+-{
+-}
+-
+-void SoundAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [sound] element
+- QDomElement soundElement = document.createElement( "sound" );
+- node.appendChild( soundElement );
+-}
+-
+-Annotation::SubType SoundAnnotation::subType() const
+-{
+- return ASound;
+-}
+-
+-QString SoundAnnotation::soundIconName() const
+-{
+- Q_D( const SoundAnnotation );
+- return d->icon;
+-}
+-
+-void SoundAnnotation::setSoundIconName( const QString &icon )
+-{
+- Q_D( SoundAnnotation );
+- d->icon = icon;
+-}
+-
+-SoundObject* SoundAnnotation::sound() const
+-{
+- Q_D( const SoundAnnotation );
+- return d->sound;
+-}
+-
+-void SoundAnnotation::setSound( SoundObject *s )
+-{
+- Q_D( SoundAnnotation );
+- d->sound = s;
+-}
+-
+-/** MovieAnnotation [Annotation] */
+-class MovieAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- MovieAnnotationPrivate();
+- ~MovieAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- MovieObject *movie;
+- QString title;
+-};
+-
+-MovieAnnotationPrivate::MovieAnnotationPrivate()
+- : AnnotationPrivate(), movie( 0 )
+-{
+-}
+-
+-MovieAnnotationPrivate::~MovieAnnotationPrivate()
+-{
+- delete movie;
+-}
+-
+-Annotation * MovieAnnotationPrivate::makeAlias()
+-{
+- return new MovieAnnotation(*this);
+-}
+-
+-Annot* MovieAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- return 0; // Not implemented
+-}
+-
+-MovieAnnotation::MovieAnnotation()
+- : Annotation( *new MovieAnnotationPrivate() )
+-{
+-}
+-
+-MovieAnnotation::MovieAnnotation(MovieAnnotationPrivate &dd)
+- : Annotation( dd )
+-{
+-}
+-
+-MovieAnnotation::MovieAnnotation( const QDomNode & node )
+- : Annotation( *new MovieAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'movie' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "movie" )
+- continue;
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-MovieAnnotation::~MovieAnnotation()
+-{
+-}
+-
+-void MovieAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [movie] element
+- QDomElement movieElement = document.createElement( "movie" );
+- node.appendChild( movieElement );
+-}
+-
+-Annotation::SubType MovieAnnotation::subType() const
+-{
+- return AMovie;
+-}
+-
+-MovieObject* MovieAnnotation::movie() const
+-{
+- Q_D( const MovieAnnotation );
+- return d->movie;
+-}
+-
+-void MovieAnnotation::setMovie( MovieObject *movie )
+-{
+- Q_D( MovieAnnotation );
+- d->movie = movie;
+-}
+-
+-QString MovieAnnotation::movieTitle() const
+-{
+- Q_D( const MovieAnnotation );
+- return d->title;
+-}
+-
+-void MovieAnnotation::setMovieTitle( const QString &title )
+-{
+- Q_D( MovieAnnotation );
+- d->title = title;
+-}
+-
+-/** ScreenAnnotation [Annotation] */
+-class ScreenAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- ScreenAnnotationPrivate();
+- ~ScreenAnnotationPrivate();
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-
+- // data fields
+- LinkRendition *action;
+- QString title;
+-};
+-
+-ScreenAnnotationPrivate::ScreenAnnotationPrivate()
+- : AnnotationPrivate(), action( 0 )
+-{
+-}
+-
+-ScreenAnnotationPrivate::~ScreenAnnotationPrivate()
+-{
+- delete action;
+-}
+-
+-ScreenAnnotation::ScreenAnnotation(ScreenAnnotationPrivate &dd)
+- : Annotation( dd )
+-{}
+-
+-Annotation * ScreenAnnotationPrivate::makeAlias()
+-{
+- return new ScreenAnnotation(*this);
+-}
+-
+-Annot* ScreenAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- return 0; // Not implemented
+-}
+-
+-ScreenAnnotation::ScreenAnnotation()
+- : Annotation( *new ScreenAnnotationPrivate() )
+-{
+-}
+-
+-ScreenAnnotation::~ScreenAnnotation()
+-{
+-}
+-
+-void ScreenAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [screen] element
+- QDomElement screenElement = document.createElement( "screen" );
+- node.appendChild( screenElement );
+-}
+-
+-Annotation::SubType ScreenAnnotation::subType() const
+-{
+- return AScreen;
+-}
+-
+-LinkRendition* ScreenAnnotation::action() const
+-{
+- Q_D( const ScreenAnnotation );
+- return d->action;
+-}
+-
+-void ScreenAnnotation::setAction( LinkRendition *action )
+-{
+- Q_D( ScreenAnnotation );
+- d->action = action;
+-}
+-
+-QString ScreenAnnotation::screenTitle() const
+-{
+- Q_D( const ScreenAnnotation );
+- return d->title;
+-}
+-
+-void ScreenAnnotation::setScreenTitle( const QString &title )
+-{
+- Q_D( ScreenAnnotation );
+- d->title = title;
+-}
+-
+-Link* ScreenAnnotation::additionalAction( AdditionalActionType type ) const
+-{
+- Q_D( const ScreenAnnotation );
+- return d->additionalAction( type );
+-}
+-
+-/** WidgetAnnotation [Annotation] */
+-class WidgetAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- Annotation * makeAlias();
+- Annot* createNativeAnnot(::Page *destPage, DocumentData *doc);
+-};
+-
+-Annotation * WidgetAnnotationPrivate::makeAlias()
+-{
+- return new WidgetAnnotation(*this);
+-}
+-
+-Annot* WidgetAnnotationPrivate::createNativeAnnot(::Page *destPage, DocumentData *doc)
+-{
+- return 0; // Not implemented
+-}
+-
+-WidgetAnnotation::WidgetAnnotation(WidgetAnnotationPrivate &dd)
+- : Annotation( dd )
+-{}
+-
+-WidgetAnnotation::WidgetAnnotation()
+- : Annotation( *new WidgetAnnotationPrivate() )
+-{
+-}
+-
+-WidgetAnnotation::~WidgetAnnotation()
+-{
+-}
+-
+-void WidgetAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [widget] element
+- QDomElement widgetElement = document.createElement( "widget" );
+- node.appendChild( widgetElement );
+-}
+-
+-Annotation::SubType WidgetAnnotation::subType() const
+-{
+- return AWidget;
+-}
+-
+-Link* WidgetAnnotation::additionalAction( AdditionalActionType type ) const
+-{
+- Q_D( const WidgetAnnotation );
+- return d->additionalAction( type );
+-}
+-
+-/** RichMediaAnnotation [Annotation] */
+-class RichMediaAnnotation::Params::Private
+-{
+- public:
+- Private() {}
+-
+- QString flashVars;
+-};
+-
+-RichMediaAnnotation::Params::Params()
+- : d( new Private )
+-{
+-}
+-
+-RichMediaAnnotation::Params::~Params()
+-{
+-}
+-
+-void RichMediaAnnotation::Params::setFlashVars( const QString &flashVars )
+-{
+- d->flashVars = flashVars;
+-}
+-
+-QString RichMediaAnnotation::Params::flashVars() const
+-{
+- return d->flashVars;
+-}
+-
+-
+-class RichMediaAnnotation::Instance::Private
+-{
+- public:
+- Private()
+- : params( 0 )
+- {
+- }
+-
+- ~Private()
+- {
+- delete params;
+- }
+-
+- RichMediaAnnotation::Instance::Type type;
+- RichMediaAnnotation::Params *params;
+-};
+-
+-RichMediaAnnotation::Instance::Instance()
+- : d( new Private )
+-{
+-}
+-
+-RichMediaAnnotation::Instance::~Instance()
+-{
+-}
+-
+-void RichMediaAnnotation::Instance::setType( Type type )
+-{
+- d->type = type;
+-}
+-
+-RichMediaAnnotation::Instance::Type RichMediaAnnotation::Instance::type() const
+-{
+- return d->type;
+-}
+-
+-void RichMediaAnnotation::Instance::setParams( RichMediaAnnotation::Params *params )
+-{
+- delete d->params;
+- d->params = params;
+-}
+-
+-RichMediaAnnotation::Params* RichMediaAnnotation::Instance::params() const
+-{
+- return d->params;
+-}
+-
+-
+-class RichMediaAnnotation::Configuration::Private
+-{
+- public:
+- Private() {}
+- ~Private()
+- {
+- qDeleteAll( instances );
+- instances.clear();
+- }
+-
+- RichMediaAnnotation::Configuration::Type type;
+- QString name;
+- QList< RichMediaAnnotation::Instance* > instances;
+-};
+-
+-RichMediaAnnotation::Configuration::Configuration()
+- : d( new Private )
+-{
+-}
+-
+-RichMediaAnnotation::Configuration::~Configuration()
+-{
+-}
+-
+-void RichMediaAnnotation::Configuration::setType( Type type )
+-{
+- d->type = type;
+-}
+-
+-RichMediaAnnotation::Configuration::Type RichMediaAnnotation::Configuration::type() const
+-{
+- return d->type;
+-}
+-
+-void RichMediaAnnotation::Configuration::setName( const QString &name )
+-{
+- d->name = name;
+-}
+-
+-QString RichMediaAnnotation::Configuration::name() const
+-{
+- return d->name;
+-}
+-
+-void RichMediaAnnotation::Configuration::setInstances( const QList< RichMediaAnnotation::Instance* > &instances )
+-{
+- qDeleteAll( d->instances );
+- d->instances.clear();
+-
+- d->instances = instances;
+-}
+-
+-QList< RichMediaAnnotation::Instance* > RichMediaAnnotation::Configuration::instances() const
+-{
+- return d->instances;
+-}
+-
+-
+-class RichMediaAnnotation::Asset::Private
+-{
+- public:
+- Private()
+- : embeddedFile( 0 )
+- {
+- }
+-
+- ~Private()
+- {
+- delete embeddedFile;
+- }
+-
+- QString name;
+- EmbeddedFile *embeddedFile;
+-};
+-
+-RichMediaAnnotation::Asset::Asset()
+- : d( new Private )
+-{
+-}
+-
+-RichMediaAnnotation::Asset::~Asset()
+-{
+-}
+-
+-void RichMediaAnnotation::Asset::setName( const QString &name )
+-{
+- d->name = name;
+-}
+-
+-QString RichMediaAnnotation::Asset::name() const
+-{
+- return d->name;
+-}
+-
+-void RichMediaAnnotation::Asset::setEmbeddedFile( EmbeddedFile * embeddedFile )
+-{
+- delete d->embeddedFile;
+- d->embeddedFile = embeddedFile;
+-}
+-
+-EmbeddedFile* RichMediaAnnotation::Asset::embeddedFile() const
+-{
+- return d->embeddedFile;
+-}
+-
+-
+-class RichMediaAnnotation::Content::Private
+-{
+- public:
+- Private() {}
+- ~Private()
+- {
+- qDeleteAll( configurations );
+- configurations.clear();
+-
+- qDeleteAll( assets );
+- assets.clear();
+- }
+-
+- QList< RichMediaAnnotation::Configuration* > configurations;
+- QList< RichMediaAnnotation::Asset* > assets;
+-};
+-
+-RichMediaAnnotation::Content::Content()
+- : d( new Private )
+-{
+-}
+-
+-RichMediaAnnotation::Content::~Content()
+-{
+-}
+-
+-void RichMediaAnnotation::Content::setConfigurations( const QList< RichMediaAnnotation::Configuration* > &configurations )
+-{
+- qDeleteAll( d->configurations );
+- d->configurations.clear();
+-
+- d->configurations = configurations;
+-}
+-
+-QList< RichMediaAnnotation::Configuration* > RichMediaAnnotation::Content::configurations() const
+-{
+- return d->configurations;
+-}
+-
+-void RichMediaAnnotation::Content::setAssets( const QList< RichMediaAnnotation::Asset* > &assets )
+-{
+- qDeleteAll( d->assets );
+- d->assets.clear();
+-
+- d->assets = assets;
+-}
+-
+-QList< RichMediaAnnotation::Asset* > RichMediaAnnotation::Content::assets() const
+-{
+- return d->assets;
+-}
+-
+-
+-class RichMediaAnnotation::Activation::Private
+-{
+- public:
+- Private()
+- : condition( RichMediaAnnotation::Activation::UserAction )
+- {
+- }
+-
+- RichMediaAnnotation::Activation::Condition condition;
+-};
+-
+-RichMediaAnnotation::Activation::Activation()
+- : d( new Private )
+-{
+-}
+-
+-RichMediaAnnotation::Activation::~Activation()
+-{
+-}
+-
+-void RichMediaAnnotation::Activation::setCondition( Condition condition )
+-{
+- d->condition = condition;
+-}
+-
+-RichMediaAnnotation::Activation::Condition RichMediaAnnotation::Activation::condition() const
+-{
+- return d->condition;
+-}
+-
+-
+-class RichMediaAnnotation::Deactivation::Private : public QSharedData
+-{
+- public:
+- Private()
+- : condition( RichMediaAnnotation::Deactivation::UserAction )
+- {
+- }
+-
+- RichMediaAnnotation::Deactivation::Condition condition;
+-};
+-
+-RichMediaAnnotation::Deactivation::Deactivation()
+- : d( new Private )
+-{
+-}
+-
+-RichMediaAnnotation::Deactivation::~Deactivation()
+-{
+-}
+-
+-void RichMediaAnnotation::Deactivation::setCondition( Condition condition )
+-{
+- d->condition = condition;
+-}
+-
+-RichMediaAnnotation::Deactivation::Condition RichMediaAnnotation::Deactivation::condition() const
+-{
+- return d->condition;
+-}
+-
+-
+-class RichMediaAnnotation::Settings::Private : public QSharedData
+-{
+- public:
+- Private()
+- : activation( 0 ), deactivation( 0 )
+- {
+- }
+-
+- RichMediaAnnotation::Activation *activation;
+- RichMediaAnnotation::Deactivation *deactivation;
+-};
+-
+-RichMediaAnnotation::Settings::Settings()
+- : d( new Private )
+-{
+-}
+-
+-RichMediaAnnotation::Settings::~Settings()
+-{
+-}
+-
+-void RichMediaAnnotation::Settings::setActivation( RichMediaAnnotation::Activation *activation )
+-{
+- delete d->activation;
+- d->activation = activation;
+-}
+-
+-RichMediaAnnotation::Activation* RichMediaAnnotation::Settings::activation() const
+-{
+- return d->activation;
+-}
+-
+-void RichMediaAnnotation::Settings::setDeactivation( RichMediaAnnotation::Deactivation *deactivation )
+-{
+- delete d->deactivation;
+- d->deactivation = deactivation;
+-}
+-
+-RichMediaAnnotation::Deactivation* RichMediaAnnotation::Settings::deactivation() const
+-{
+- return d->deactivation;
+-}
+-
+-
+-class RichMediaAnnotationPrivate : public AnnotationPrivate
+-{
+- public:
+- RichMediaAnnotationPrivate()
+- : settings( 0 ), content( 0 )
+- {
+- }
+-
+- ~RichMediaAnnotationPrivate()
+- {
+- delete settings;
+- delete content;
+- }
+-
+- Annotation * makeAlias()
+- {
+- return new RichMediaAnnotation( *this );
+- }
+-
+- Annot* createNativeAnnot( ::Page *destPage, DocumentData *doc )
+- {
+- Q_UNUSED( destPage );
+- Q_UNUSED( doc );
+-
+- return 0;
+- }
+-
+- RichMediaAnnotation::Settings *settings;
+- RichMediaAnnotation::Content *content;
+-};
+-
+-RichMediaAnnotation::RichMediaAnnotation()
+- : Annotation( *new RichMediaAnnotationPrivate() )
+-{
+-}
+-
+-RichMediaAnnotation::RichMediaAnnotation( RichMediaAnnotationPrivate &dd )
+- : Annotation( dd )
+-{
+-}
+-
+-RichMediaAnnotation::RichMediaAnnotation( const QDomNode & node )
+- : Annotation( *new RichMediaAnnotationPrivate(), node )
+-{
+- // loop through the whole children looking for a 'richMedia' element
+- QDomNode subNode = node.firstChild();
+- while( subNode.isElement() )
+- {
+- QDomElement e = subNode.toElement();
+- subNode = subNode.nextSibling();
+- if ( e.tagName() != "richMedia" )
+- continue;
+-
+- // loading complete
+- break;
+- }
+-}
+-
+-RichMediaAnnotation::~RichMediaAnnotation()
+-{
+-}
+-
+-void RichMediaAnnotation::store( QDomNode & node, QDomDocument & document ) const
+-{
+- // store base annotation properties
+- storeBaseAnnotationProperties( node, document );
+-
+- // create [richMedia] element
+- QDomElement richMediaElement = document.createElement( "richMedia" );
+- node.appendChild( richMediaElement );
+-}
+-
+-Annotation::SubType RichMediaAnnotation::subType() const
+-{
+- return ARichMedia;
+-}
+-
+-void RichMediaAnnotation::setSettings( RichMediaAnnotation::Settings *settings )
+-{
+- Q_D( RichMediaAnnotation );
+-
+- delete d->settings;
+- d->settings = settings;
+-}
+-
+-RichMediaAnnotation::Settings* RichMediaAnnotation::settings() const
+-{
+- Q_D( const RichMediaAnnotation );
+-
+- return d->settings;
+-}
+-
+-void RichMediaAnnotation::setContent( RichMediaAnnotation::Content *content )
+-{
+- Q_D( RichMediaAnnotation );
+-
+- delete d->content;
+- d->content = content;
+-}
+-
+-RichMediaAnnotation::Content* RichMediaAnnotation::content() const
+-{
+- Q_D( const RichMediaAnnotation );
+-
+- return d->content;
+-}
+-
+-//BEGIN utility annotation functions
+-QColor convertAnnotColor( AnnotColor *color )
+-{
+- if ( !color )
+- return QColor();
+-
+- QColor newcolor;
+- const double *color_data = color->getValues();
+- switch ( color->getSpace() )
+- {
+- case AnnotColor::colorTransparent: // = 0,
+- newcolor = Qt::transparent;
+- break;
+- case AnnotColor::colorGray: // = 1,
+- newcolor.setRgbF( color_data[0], color_data[0], color_data[0] );
+- break;
+- case AnnotColor::colorRGB: // = 3,
+- newcolor.setRgbF( color_data[0], color_data[1], color_data[2] );
+- break;
+- case AnnotColor::colorCMYK: // = 4
+- newcolor.setCmykF( color_data[0], color_data[1], color_data[2], color_data[3] );
+- break;
+- }
+- return newcolor;
+-}
+-
+-AnnotColor* convertQColor( const QColor &c )
+-{
+- if (!c.isValid() || c.alpha() == 0)
+- return new AnnotColor(); // Transparent
+- else
+- return new AnnotColor(c.redF(), c.greenF(), c.blueF());
+-}
+-//END utility annotation functions
+-
+-}
+diff --git a/qt4/src/poppler-annotation.h b/qt4/src/poppler-annotation.h
+deleted file mode 100644
+index ac77c421..00000000
+--- a/qt4/src/poppler-annotation.h
++++ /dev/null
+@@ -1,1375 +0,0 @@
+-/* poppler-annotation.h: qt interface to poppler
+- * Copyright (C) 2006-2008, 2012 Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2006, 2008 Pino Toscano <pino@kde.org>
+- * Copyright (C) 2007, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2010, Philip Lorenz <lorenzph+freedesktop@gmail.com>
+- * Copyright (C) 2012, 2015, Tobias Koenig <tobias.koenig@kdab.com>
+- * Copyright (C) 2012, Guillermo A. Amaral B. <gamaral@kde.org>
+- * Copyright (C) 2012, 2013 Fabio D'Urso <fabiodurso@hotmail.it>
+- * Adapting code from
+- * Copyright (C) 2004 by Enrico Ros <eros.kde@email.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef _POPPLER_ANNOTATION_H_
+-#define _POPPLER_ANNOTATION_H_
+-
+-#include <QtCore/QDateTime>
+-#include <QtCore/QSharedDataPointer>
+-#include <QtCore/QLinkedList>
+-#include <QtCore/QList>
+-#include <QtCore/QPointF>
+-#include <QtCore/QRectF>
+-#include <QtCore/QVector>
+-#include <QtGui/QColor>
+-#include <QtGui/QFont>
+-#include <QtXml/QDomDocument>
+-#include "poppler-export.h"
+-
+-namespace Poppler {
+-
+-class Annotation;
+-class AnnotationPrivate;
+-class TextAnnotationPrivate;
+-class LineAnnotationPrivate;
+-class GeomAnnotationPrivate;
+-class HighlightAnnotationPrivate;
+-class StampAnnotationPrivate;
+-class InkAnnotationPrivate;
+-class LinkAnnotationPrivate;
+-class CaretAnnotationPrivate;
+-class FileAttachmentAnnotationPrivate;
+-class SoundAnnotationPrivate;
+-class MovieAnnotationPrivate;
+-class ScreenAnnotationPrivate;
+-class WidgetAnnotationPrivate;
+-class RichMediaAnnotationPrivate;
+-class EmbeddedFile;
+-class Link;
+-class SoundObject;
+-class MovieObject;
+-class LinkRendition;
+-class Page;
+-
+-/**
+- * \short Helper class for (recursive) Annotation retrieval/storage.
+- *
+- */
+-class POPPLER_QT4_EXPORT AnnotationUtils
+-{
+- public:
+- /**
+- * Restore an Annotation (with revisions if needed) from the DOM
+- * element \p annElement.
+- * \returns a pointer to the complete Annotation or 0 if element is
+- * invalid.
+- */
+- static Annotation * createAnnotation( const QDomElement & annElement );
+-
+- /**
+- * Save the Annotation \p ann as a child of \p annElement taking
+- * care of saving all revisions if \p ann has any.
+- */
+- static void storeAnnotation( const Annotation * ann,
+- QDomElement & annElement, QDomDocument & document );
+-
+- /**
+- * Returns an element called \p name from the direct children of
+- * \p parentNode or a null element if not found.
+- */
+- static QDomElement findChildElement( const QDomNode & parentNode,
+- const QString & name );
+-};
+-
+-
+-/**
+- * \short Annotation class holding properties shared by all annotations.
+- *
+- * An Annotation is an object (text note, highlight, sound, popup window, ..)
+- * contained by a Page in the document.
+- *
+- * \warning Different Annotation objects might point to the same annotation.
+- *
+- * \section annotCreation How to add annotations
+- *
+- * Create an Annotation object of the desired subclass (for example
+- * TextAnnotation) and set its properties:
+- * @code
+- * Poppler::TextAnnotation* myann = new Poppler::TextAnnotation(Poppler::TextAnnotation::InPlace);
+- * myann->setBoundary(QRectF(0.1, 0.1, 0.2, 0.2)); // normalized coordinates: (0,0) is top-left, (1,1) is bottom-right
+- * myann->setContents("Hello, world!");
+- * @endcode
+- * \note Always set a boundary rectangle, or nothing will be shown!
+- *
+- * Obtain a pointer to the Page where you want to add the annotation (refer to
+- * \ref req for instructions) and add the annotation:
+- * @code
+- * Poppler::Page* mypage = ...;
+- * mypage->addAnnotation(myann);
+- * @endcode
+- *
+- * You can keep on editing the annotation after it has been added to the page:
+- * @code
+- * myann->setContents("World, hello!"); // Let's change text...
+- * myann->setAuthor("Your name here"); // ...and set an author too
+- * @endcode
+- *
+- * When you're done with editing the annotation, you must destroy the Annotation
+- * object:
+- * @code
+- * delete myann;
+- * @endcode
+- *
+- * Use the PDFConverter class to save the modified document.
+- *
+- * \section annotFixedRotation FixedRotation flag specifics
+- *
+- * According to the PDF specification, annotations whose
+- * Annotation::FixedRotation flag is set must always be shown in their original
+- * orientation, no matter what the current rendering rotation or the page's
+- * Page::orientation() values are. In comparison with regular annotations, such
+- * annotations should therefore be transformed by an extra rotation at rendering
+- * time to "undo" such context-related rotations, which is equal to
+- * <code>-(rendering_rotation + page_orientation)</code>. The rotation pivot
+- * is the top-left corner of the boundary rectangle.
+- *
+- * In practice, %Poppler's \ref Page::renderToImage only "unrotates" the
+- * page orientation, and does <b>not</b> unrotate the rendering rotation.
+- * This ensures consistent renderings at different Page::Rotation values:
+- * annotations are always positioned as if they were being positioned at the
+- * default page orientation.
+- *
+- * Just like regular annotations, %Poppler Qt4 exposes normalized coordinates
+- * relative to the page's default orientation. However, behind the scenes, the
+- * coordinate system is different and %Poppler transparently transforms each
+- * shape. If you never call either Annotation::setFlags or
+- * Annotation::setBoundary, you don't need to worry about this; but if you do
+- * call them, then you need to adhere to the following rules:
+- * - Whenever you toggle the Annotation::FixedRotation flag, you <b>must</b>
+- * set again the boundary rectangle first, and then you <b>must</b> set
+- * again any other geometry-related property.
+- * - Whenever you modify the boundary rectangle of an annotation whose
+- * Annotation::FixedRotation flag is set, you <b>must</b> set again any other
+- * geometry-related property.
+- *
+- * These two rules are necessary to make %Poppler's transparent coordinate
+- * conversion work properly.
+- */
+-class POPPLER_QT4_EXPORT Annotation
+-{
+- friend class AnnotationUtils;
+- friend class LinkMovie;
+- friend class LinkRendition;
+-
+- public:
+- // enum definitions
+- /**
+- * Annotation subclasses
+- *
+- * \sa subType()
+- */
+- // WARNING!!! oKular uses that very same values so if you change them notify the author!
+- enum SubType
+- {
+- AText = 1, ///< TextAnnotation
+- ALine = 2, ///< LineAnnotation
+- AGeom = 3, ///< GeomAnnotation
+- AHighlight = 4, ///< HighlightAnnotation
+- AStamp = 5, ///< StampAnnotation
+- AInk = 6, ///< InkAnnotation
+- ALink = 7, ///< LinkAnnotation
+- ACaret = 8, ///< CaretAnnotation
+- AFileAttachment = 9, ///< FileAttachmentAnnotation
+- ASound = 10, ///< SoundAnnotation
+- AMovie = 11, ///< MovieAnnotation
+- AScreen = 12, ///< ScreenAnnotation \since 0.20
+- AWidget = 13, ///< WidgetAnnotation \since 0.22
+- ARichMedia = 14, ///< RichMediaAnnotation \since 0.36
+- A_BASE = 0
+- };
+-
+- /**
+- * Annotation flags
+- *
+- * They can be OR'd together (e.g. Annotation::FixedRotation | Annotation::DenyPrint).
+- *
+- * \sa flags(), setFlags(int)
+- */
+- // NOTE: Only flags that are known to work are documented
+- enum Flag
+- {
+- Hidden = 1, ///< Do not display or print the annotation
+- FixedSize = 2,
+- FixedRotation = 4, ///< Do not rotate the annotation according to page orientation and rendering rotation \warning Extra care is needed with this flag: see \ref annotFixedRotation
+- DenyPrint = 8, ///< Do not print the annotation
+- DenyWrite = 16,
+- DenyDelete = 32,
+- ToggleHidingOnMouse = 64,
+- External = 128
+- };
+-
+- enum LineStyle { Solid = 1, Dashed = 2, Beveled = 4, Inset = 8, Underline = 16 };
+- enum LineEffect { NoEffect = 1, Cloudy = 2};
+- enum RevScope { Root = 0 /** \since 0.20 */, Reply = 1, Group = 2, Delete = 4 };
+- enum RevType { None = 1, Marked = 2, Unmarked = 4, Accepted = 8, Rejected = 16, Cancelled = 32, Completed = 64 };
+-
+- /**
+- * Returns the author of the annotation.
+- */
+- QString author() const;
+- /**
+- * Sets a new author for the annotation.
+- */
+- void setAuthor( const QString &author );
+-
+- QString contents() const;
+- void setContents( const QString &contents );
+-
+- /**
+- * Returns the unique name (ID) of the annotation.
+- */
+- QString uniqueName() const;
+- /**
+- * Sets a new unique name for the annotation.
+- *
+- * \note no check of the new uniqueName is done
+- */
+- void setUniqueName( const QString &uniqueName );
+-
+- QDateTime modificationDate() const;
+- void setModificationDate( const QDateTime &date );
+-
+- QDateTime creationDate() const;
+- void setCreationDate( const QDateTime &date );
+-
+- /**
+- * Returns this annotation's flags
+- *
+- * \sa Flag, setFlags(int)
+- */
+- int flags() const;
+- /**
+- * Sets this annotation's flags
+- *
+- * \sa Flag, flags(), \ref annotFixedRotation
+- */
+- void setFlags( int flags );
+-
+- /**
+- * Returns this annotation's boundary rectangle in normalized coordinates
+- *
+- * \sa setBoundary(const QRectF&)
+- */
+- QRectF boundary() const;
+- /**
+- * Sets this annotation's boundary rectangle
+- *
+- * The boundary rectangle is the smallest rectangle that contains the
+- * annotation.
+- *
+- * \warning This property is mandatory: you must always set this.
+- *
+- * \sa boundary(), \ref annotFixedRotation
+- */
+- void setBoundary( const QRectF &boundary );
+-
+- /**
+- * \short Container class for Annotation style information
+- *
+- * \since 0.20
+- */
+- class POPPLER_QT4_EXPORT Style
+- {
+- public:
+- Style();
+- Style( const Style &other );
+- Style& operator=( const Style &other );
+- ~Style();
+-
+- // appearance properties
+- QColor color() const; // black
+- void setColor(const QColor &color);
+- double opacity() const; // 1.0
+- void setOpacity(double opacity);
+-
+- // pen properties
+- double width() const; // 1.0
+- void setWidth(double width);
+- LineStyle lineStyle() const; // LineStyle::Solid
+- void setLineStyle(LineStyle style);
+- double xCorners() const; // 0.0
+- void setXCorners(double radius);
+- double yCorners() const; // 0.0
+- void setYCorners(double radius);
+- const QVector<double>& dashArray() const; // [ 3 ]
+- void setDashArray(const QVector<double> &array);
+-
+- // pen effects
+- LineEffect lineEffect() const; // LineEffect::NoEffect
+- void setLineEffect(LineEffect effect);
+- double effectIntensity() const; // 1.0
+- void setEffectIntensity(double intens);
+-
+- private:
+- class Private;
+- QSharedDataPointer<Private> d;
+- };
+-
+- /// \since 0.20
+- Style style() const;
+- /// \since 0.20
+- void setStyle( const Style& style );
+-
+- /**
+- * \short Container class for Annotation pop-up window information
+- *
+- * \since 0.20
+- */
+- class POPPLER_QT4_EXPORT Popup
+- {
+- public:
+- Popup();
+- Popup( const Popup &other );
+- Popup& operator=( const Popup &other );
+- ~Popup();
+-
+- // window state (Hidden, FixedRotation, Deny* flags allowed)
+- int flags() const; // -1 (never initialized) -> 0 (if inited and shown)
+- void setFlags( int flags );
+-
+- // geometric properties
+- QRectF geometry() const; // no default
+- void setGeometry( const QRectF &geom );
+-
+- // window contens/override properties
+- QString title() const; // '' text in the titlebar (overrides author)
+- void setTitle( const QString &title );
+- QString summary() const; // '' short description (displayed if not empty)
+- void setSummary( const QString &summary );
+- QString text() const; // '' text for the window (overrides annot->contents)
+- void setText( const QString &text );
+-
+- private:
+- class Private;
+- QSharedDataPointer<Private> d;
+- };
+-
+- /// \since 0.20
+- Popup popup() const;
+- /// \warning Currently does nothing \since 0.20
+- void setPopup( const Popup& popup );
+-
+- /// \cond PRIVATE
+- // This field is deprecated and not used any more. Use popup
+- Q_DECL_DEPRECATED struct { int width, height; } window; // Always set to zero
+- /// \endcond
+-
+- /// \since 0.20
+- RevScope revisionScope() const; // Root
+-
+- /// \since 0.20
+- RevType revisionType() const; // None
+-
+- /**
+- * Returns the revisions of this annotation
+- *
+- * \note The caller owns the returned annotations and they should
+- * be deleted when no longer required.
+- *
+- * \since 0.20
+- */
+- QList<Annotation*> revisions() const;
+-
+- /**
+- * The type of the annotation.
+- */
+- virtual SubType subType() const = 0;
+-
+- /**
+- * Destructor.
+- */
+- virtual ~Annotation();
+-
+- /**
+- * Describes the flags from an annotations 'AA' dictionary.
+- *
+- * This flag is used by the additionalAction() method for ScreenAnnotation
+- * and WidgetAnnotation.
+- *
+- * \since 0.22
+- */
+- enum AdditionalActionType
+- {
+- CursorEnteringAction, ///< Performed when the cursor enters the annotation's active area
+- CursorLeavingAction, ///< Performed when the cursor exists the annotation's active area
+- MousePressedAction, ///< Performed when the mouse button is pressed inside the annotation's active area
+- MouseReleasedAction, ///< Performed when the mouse button is released inside the annotation's active area
+- FocusInAction, ///< Performed when the annotation receives the input focus
+- FocusOutAction, ///< Performed when the annotation loses the input focus
+- PageOpeningAction, ///< Performed when the page containing the annotation is opened
+- PageClosingAction, ///< Performed when the page containing the annotation is closed
+- PageVisibleAction, ///< Performed when the page containing the annotation becomes visible
+- PageInvisibleAction ///< Performed when the page containing the annotation becomes invisible
+- };
+-
+- protected:
+- /// \cond PRIVATE
+- Annotation( AnnotationPrivate &dd );
+- Annotation( AnnotationPrivate &dd, const QDomNode &description );
+- void storeBaseAnnotationProperties( QDomNode & parentNode, QDomDocument & document ) const;
+- Q_DECLARE_PRIVATE( Annotation )
+- QExplicitlySharedDataPointer<AnnotationPrivate> d_ptr;
+- /// \endcond
+-
+- private:
+- virtual void store( QDomNode & parentNode, QDomDocument & document ) const = 0;
+- Q_DISABLE_COPY( Annotation )
+-};
+-
+-/**
+- * \short Annotation containing text.
+- *
+- * A text annotation is an object showing some text directly on the page, or
+- * linked to the contents using an icon shown on a page.
+- */
+-class POPPLER_QT4_EXPORT TextAnnotation : public Annotation
+-{
+- friend class AnnotationUtils;
+- friend class AnnotationPrivate;
+-
+- public:
+- // local enums
+- enum TextType { Linked, InPlace };
+- enum InplaceIntent { Unknown, Callout, TypeWriter };
+-
+- TextAnnotation( TextType type );
+- ~TextAnnotation();
+- SubType subType() const override;
+-
+- /**
+- The type of text annotation represented by this object
+- */
+- TextType textType() const;
+-
+- /**
+- The name of the icon for this text annotation.
+-
+- Standard names for text annotation icons are:
+- - Comment
+- - Help
+- - Insert
+- - Key
+- - NewParagraph
+- - Note (this is the default icon to use)
+- - Paragraph
+- */
+- QString textIcon() const;
+-
+- /**
+- Set the name of the icon to use for this text annotation.
+-
+- \sa textIcon for the list of standard names
+- */
+- void setTextIcon( const QString &icon );
+-
+- QFont textFont() const;
+- void setTextFont( const QFont &font );
+-
+- int inplaceAlign() const;
+- void setInplaceAlign( int align );
+-
+- /**
+- Synonym for contents()
+-
+- \deprecated Use contents() instead
+- */
+- QString inplaceText() const;
+- /**
+- Synonym for setContents()
+-
+- \deprecated Use setContents() instead
+- */
+- void setInplaceText( const QString &text );
+-
+- QPointF calloutPoint( int id ) const;
+- /// \since 0.20
+- QVector<QPointF> calloutPoints() const;
+- /// \since 0.20
+- void setCalloutPoints( const QVector<QPointF> &points );
+-
+- InplaceIntent inplaceIntent() const;
+- void setInplaceIntent( InplaceIntent intent );
+-
+- private:
+- TextAnnotation( const QDomNode &node );
+- TextAnnotation( TextAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- void setTextType( TextType type );
+- Q_DECLARE_PRIVATE( TextAnnotation )
+- Q_DISABLE_COPY( TextAnnotation )
+-};
+-
+-/**
+- * \short Polygon/polyline annotation.
+- *
+- * This annotation represents a polygon (or polyline) to be drawn on a page.
+- */
+-class POPPLER_QT4_EXPORT LineAnnotation : public Annotation
+-{
+- friend class AnnotationUtils;
+- friend class AnnotationPrivate;
+-
+- public:
+- // local enums
+- /// \since 0.20
+- enum LineType { StraightLine, Polyline };
+- enum TermStyle { Square, Circle, Diamond, OpenArrow, ClosedArrow, None,
+- Butt, ROpenArrow, RClosedArrow, Slash };
+- enum LineIntent { Unknown, Arrow, Dimension, PolygonCloud };
+-
+- /// \since 0.20
+- LineAnnotation( LineType type );
+- ~LineAnnotation();
+- SubType subType() const override;
+-
+- /// \since 0.20
+- LineType lineType() const;
+-
+- QLinkedList<QPointF> linePoints() const;
+- void setLinePoints( const QLinkedList<QPointF> &points );
+-
+- TermStyle lineStartStyle() const;
+- void setLineStartStyle( TermStyle style );
+-
+- TermStyle lineEndStyle() const;
+- void setLineEndStyle( TermStyle style );
+-
+- bool isLineClosed() const;
+- void setLineClosed( bool closed );
+-
+- QColor lineInnerColor() const;
+- void setLineInnerColor( const QColor &color );
+-
+- double lineLeadingForwardPoint() const;
+- void setLineLeadingForwardPoint( double point );
+-
+- double lineLeadingBackPoint() const;
+- void setLineLeadingBackPoint( double point );
+-
+- bool lineShowCaption() const;
+- void setLineShowCaption( bool show );
+-
+- LineIntent lineIntent() const;
+- void setLineIntent( LineIntent intent );
+-
+- private:
+- LineAnnotation( const QDomNode &node );
+- LineAnnotation( LineAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- void setLineType( LineType type );
+- Q_DECLARE_PRIVATE( LineAnnotation )
+- Q_DISABLE_COPY( LineAnnotation )
+-};
+-
+-/**
+- * \short Geometric annotation.
+- *
+- * The geometric annotation represents a geometric figure, like a rectangle or
+- * an ellipse.
+- */
+-class POPPLER_QT4_EXPORT GeomAnnotation : public Annotation
+-{
+- friend class AnnotationUtils;
+- friend class AnnotationPrivate;
+-
+- public:
+- GeomAnnotation();
+- virtual ~GeomAnnotation();
+- virtual SubType subType() const;
+-
+- // common enums
+- enum GeomType { InscribedSquare, InscribedCircle };
+-
+- GeomType geomType() const;
+- void setGeomType( GeomType style );
+-
+- QColor geomInnerColor() const;
+- void setGeomInnerColor( const QColor &color );
+-
+- private:
+- GeomAnnotation( const QDomNode &node );
+- GeomAnnotation( GeomAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- Q_DECLARE_PRIVATE( GeomAnnotation )
+- Q_DISABLE_COPY( GeomAnnotation )
+-};
+-
+-/**
+- * \short Text highlight annotation.
+- *
+- * The higlight annotation represents some areas of text being "highlighted".
+- */
+-class POPPLER_QT4_EXPORT HighlightAnnotation : public Annotation
+-{
+- friend class AnnotationUtils;
+- friend class AnnotationPrivate;
+-
+- public:
+- HighlightAnnotation();
+- virtual ~HighlightAnnotation();
+- virtual SubType subType() const;
+-
+- /**
+- The type of highlight
+- */
+- enum HighlightType { Highlight, ///< highlighter pen style annotation
+- Squiggly, ///< jagged or squiggly underline
+- Underline, ///< straight line underline
+- StrikeOut ///< straight line through-line
+- };
+-
+- /**
+- Structure corresponding to a QuadPoints array. This matches a
+- quadrilateral that describes the area around a word (or set of
+- words) that are to be highlighted.
+- */
+- struct Quad
+- {
+- QPointF points[4]; // 8 valid coords
+- bool capStart; // false (vtx 1-4) [K]
+- bool capEnd; // false (vtx 2-3) [K]
+- double feather; // 0.1 (in range 0..1) [K]
+- };
+-
+- /**
+- The type (style) of highlighting to use for this area
+- or these areas.
+- */
+- HighlightType highlightType() const;
+-
+- /**
+- Set the type of highlighting to use for the given area
+- or areas.
+- */
+- void setHighlightType( HighlightType type );
+-
+- /**
+- The list of areas to highlight.
+- */
+- QList< Quad > highlightQuads() const;
+-
+- /**
+- Set the areas to highlight.
+- */
+- void setHighlightQuads( const QList< Quad > &quads );
+-
+- private:
+- HighlightAnnotation( const QDomNode &node );
+- HighlightAnnotation( HighlightAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- Q_DECLARE_PRIVATE( HighlightAnnotation )
+- Q_DISABLE_COPY( HighlightAnnotation )
+-};
+-
+-/**
+- * \short Stamp annotation.
+- *
+- * A simple annotation drawing a stamp on a page.
+- */
+-class POPPLER_QT4_EXPORT StampAnnotation : public Annotation
+-{
+- friend class AnnotationUtils;
+- friend class AnnotationPrivate;
+-
+- public:
+- StampAnnotation();
+- virtual ~StampAnnotation();
+- virtual SubType subType() const;
+-
+- /**
+- The name of the icon for this stamp annotation.
+-
+- Standard names for stamp annotation icons are:
+- - Approved
+- - AsIs
+- - Confidential
+- - Departmental
+- - Draft (this is the default icon type)
+- - Experimental
+- - Expired
+- - Final
+- - ForComment
+- - ForPublicRelease
+- - NotApproved
+- - NotForPublicRelease
+- - Sold
+- - TopSecret
+- */
+- QString stampIconName() const;
+-
+- /**
+- Set the icon type for this stamp annotation.
+-
+- \sa stampIconName for the list of standard icon names
+- */
+- void setStampIconName( const QString &name );
+-
+- private:
+- StampAnnotation( const QDomNode &node );
+- StampAnnotation( StampAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- Q_DECLARE_PRIVATE( StampAnnotation )
+- Q_DISABLE_COPY( StampAnnotation )
+-};
+-
+-/**
+- * \short Ink Annotation.
+- *
+- * Annotation representing an ink path on a page.
+- */
+-class POPPLER_QT4_EXPORT InkAnnotation : public Annotation
+-{
+- friend class AnnotationUtils;
+- friend class AnnotationPrivate;
+-
+- public:
+- InkAnnotation();
+- virtual ~InkAnnotation();
+- virtual SubType subType() const;
+-
+- QList< QLinkedList<QPointF> > inkPaths() const;
+- void setInkPaths( const QList< QLinkedList<QPointF> > &paths );
+-
+- private:
+- InkAnnotation( const QDomNode &node );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- InkAnnotation(InkAnnotationPrivate &dd);
+- Q_DECLARE_PRIVATE( InkAnnotation )
+- Q_DISABLE_COPY( InkAnnotation )
+-};
+-
+-class POPPLER_QT4_EXPORT LinkAnnotation : public Annotation
+-{
+- friend class AnnotationUtils;
+- friend class AnnotationPrivate;
+-
+- public:
+- virtual ~LinkAnnotation();
+- virtual SubType subType() const;
+-
+- // local enums
+- enum HighlightMode { None, Invert, Outline, Push };
+-
+- /** \since 0.20 */
+- Link* linkDestination() const;
+- void setLinkDestination( Link *link );
+-
+- HighlightMode linkHighlightMode() const;
+- void setLinkHighlightMode( HighlightMode mode );
+-
+- QPointF linkRegionPoint( int id ) const;
+- void setLinkRegionPoint( int id, const QPointF &point );
+-
+- private:
+- LinkAnnotation();
+- LinkAnnotation( const QDomNode &node );
+- LinkAnnotation( LinkAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- Q_DECLARE_PRIVATE( LinkAnnotation )
+- Q_DISABLE_COPY( LinkAnnotation )
+-};
+-
+-/**
+- * \short Caret annotation.
+- *
+- * The caret annotation represents a symbol to indicate the presence of text.
+- */
+-class POPPLER_QT4_EXPORT CaretAnnotation : public Annotation
+-{
+- friend class AnnotationUtils;
+- friend class AnnotationPrivate;
+-
+- public:
+- CaretAnnotation();
+- virtual ~CaretAnnotation();
+- virtual SubType subType() const;
+-
+- /**
+- * The symbols for the caret annotation.
+- */
+- enum CaretSymbol { None, P };
+-
+- CaretSymbol caretSymbol() const;
+- void setCaretSymbol( CaretSymbol symbol );
+-
+- private:
+- CaretAnnotation( const QDomNode &node );
+- CaretAnnotation( CaretAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- Q_DECLARE_PRIVATE( CaretAnnotation )
+- Q_DISABLE_COPY( CaretAnnotation )
+-};
+-
+-/**
+- * \short File attachment annotation.
+- *
+- * The file attachment annotation represents a file embedded in the document.
+- *
+- * \since 0.10
+- */
+-class POPPLER_QT4_EXPORT FileAttachmentAnnotation : public Annotation
+-{
+- friend class AnnotationPrivate;
+-
+- public:
+- virtual ~FileAttachmentAnnotation();
+- virtual SubType subType() const;
+-
+- /**
+- * Returns the name of the icon of this annotation.
+- */
+- QString fileIconName() const;
+- /**
+- * Sets a new name for the icon of this annotation.
+- */
+- void setFileIconName( const QString &icon );
+-
+- /**
+- * Returns the EmbeddedFile of this annotation.
+- */
+- EmbeddedFile* embeddedFile() const;
+- /**
+- * Sets a new EmbeddedFile for this annotation.
+- *
+- * \note FileAttachmentAnnotation takes ownership of the object
+- */
+- void setEmbeddedFile( EmbeddedFile *ef );
+-
+- private:
+- FileAttachmentAnnotation();
+- FileAttachmentAnnotation( const QDomNode &node );
+- FileAttachmentAnnotation( FileAttachmentAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- Q_DECLARE_PRIVATE( FileAttachmentAnnotation )
+- Q_DISABLE_COPY( FileAttachmentAnnotation )
+-};
+-
+-/**
+- * \short Sound annotation.
+- *
+- * The sound annotation represents a sound to be played when activated.
+- *
+- * \since 0.10
+- */
+-class POPPLER_QT4_EXPORT SoundAnnotation : public Annotation
+-{
+- friend class AnnotationPrivate;
+-
+- public:
+- virtual ~SoundAnnotation();
+- virtual SubType subType() const;
+-
+- /**
+- * Returns the name of the icon of this annotation.
+- */
+- QString soundIconName() const;
+- /**
+- * Sets a new name for the icon of this annotation.
+- */
+- void setSoundIconName( const QString &icon );
+-
+- /**
+- * Returns the SoundObject of this annotation.
+- */
+- SoundObject* sound() const;
+- /**
+- * Sets a new SoundObject for this annotation.
+- *
+- * \note SoundAnnotation takes ownership of the object
+- */
+- void setSound( SoundObject *ef );
+-
+- private:
+- SoundAnnotation();
+- SoundAnnotation( const QDomNode &node );
+- SoundAnnotation( SoundAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- Q_DECLARE_PRIVATE( SoundAnnotation )
+- Q_DISABLE_COPY( SoundAnnotation )
+-};
+-
+-/**
+- * \short Movie annotation.
+- *
+- * The movie annotation represents a movie to be played when activated.
+- *
+- * \since 0.10
+- */
+-class POPPLER_QT4_EXPORT MovieAnnotation : public Annotation
+-{
+- friend class AnnotationPrivate;
+-
+- public:
+- virtual ~MovieAnnotation();
+- virtual SubType subType() const;
+-
+- /**
+- * Returns the MovieObject of this annotation.
+- */
+- MovieObject* movie() const;
+- /**
+- * Sets a new MovieObject for this annotation.
+- *
+- * \note MovieAnnotation takes ownership of the object
+- */
+- void setMovie( MovieObject *movie );
+-
+- /**
+- * Returns the title of the movie of this annotation.
+- */
+- QString movieTitle() const;
+- /**
+- * Sets a new title for the movie of this annotation.
+- */
+- void setMovieTitle( const QString &title );
+-
+- private:
+- MovieAnnotation();
+- MovieAnnotation( const QDomNode &node );
+- MovieAnnotation( MovieAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- Q_DECLARE_PRIVATE( MovieAnnotation )
+- Q_DISABLE_COPY( MovieAnnotation )
+-};
+-
+-/**
+- * \short Screen annotation.
+- *
+- * The screen annotation represents a screen to be played when activated.
+- *
+- * \since 0.20
+- */
+-class POPPLER_QT4_EXPORT ScreenAnnotation : public Annotation
+-{
+- friend class AnnotationPrivate;
+-
+- public:
+- virtual ~ScreenAnnotation();
+-
+- virtual SubType subType() const;
+-
+- /**
+- * Returns the LinkRendition of this annotation.
+- */
+- LinkRendition* action() const;
+-
+- /**
+- * Sets a new LinkRendition for this annotation.
+- *
+- * \note ScreenAnnotation takes ownership of the object
+- */
+- void setAction( LinkRendition *action );
+-
+- /**
+- * Returns the title of the screen of this annotation.
+- */
+- QString screenTitle() const;
+-
+- /**
+- * Sets a new title for the screen of this annotation.
+- */
+- void setScreenTitle( const QString &title );
+-
+- /**
+- * Returns the additional action of the given @p type fo the annotation or
+- * @c 0 if no action has been defined.
+- *
+- * \since 0.22
+- */
+- Link* additionalAction( AdditionalActionType type ) const;
+-
+- private:
+- ScreenAnnotation();
+- ScreenAnnotation( ScreenAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const; // stub
+- Q_DECLARE_PRIVATE( ScreenAnnotation )
+- Q_DISABLE_COPY( ScreenAnnotation )
+-};
+-
+-/**
+- * \short Widget annotation.
+- *
+- * The widget annotation represents a widget (form field) on a page.
+- *
+- * \note This class is just provided for consistency of the annotation API,
+- * use the FormField classes to get all the form-related information.
+- *
+- * \since 0.22
+- */
+-class POPPLER_QT4_EXPORT WidgetAnnotation : public Annotation
+-{
+- friend class AnnotationPrivate;
+-
+- public:
+- virtual ~WidgetAnnotation();
+-
+- virtual SubType subType() const;
+-
+- /**
+- * Returns the additional action of the given @p type fo the annotation or
+- * @c 0 if no action has been defined.
+- *
+- * \since 0.22
+- */
+- Link* additionalAction( AdditionalActionType type ) const;
+-
+- private:
+- WidgetAnnotation();
+- WidgetAnnotation( WidgetAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const; // stub
+- Q_DECLARE_PRIVATE( WidgetAnnotation )
+- Q_DISABLE_COPY( WidgetAnnotation )
+-};
+-
+-/**
+- * \short RichMedia annotation.
+- *
+- * The RichMedia annotation represents a video or sound on a page.
+- *
+- * \since 0.36
+- */
+-class POPPLER_QT4_EXPORT RichMediaAnnotation : public Annotation
+-{
+- friend class AnnotationPrivate;
+-
+- public:
+- virtual ~RichMediaAnnotation();
+-
+- virtual SubType subType() const;
+-
+- /**
+- * The params object of a RichMediaAnnotation::Instance object.
+- *
+- * The params object provides media specific parameters, to play
+- * back the media inside the PDF viewer.
+- *
+- * At the moment only parameters for flash player are supported.
+- */
+- class POPPLER_QT4_EXPORT Params
+- {
+- friend class AnnotationPrivate;
+-
+- public:
+- Params();
+- ~Params();
+-
+- /**
+- * Returns the parameters for the flash player.
+- */
+- QString flashVars() const;
+-
+- private:
+- void setFlashVars( const QString &flashVars );
+-
+- class Private;
+- QScopedPointer<Private> d;
+- };
+-
+- /**
+- * The instance object of a RichMediaAnnotation::Configuration object.
+- *
+- * The instance object represents one media object, that should be shown
+- * on the page. It has a media type and a Params object, to define the
+- * media specific parameters.
+- */
+- class POPPLER_QT4_EXPORT Instance
+- {
+- friend class AnnotationPrivate;
+-
+- public:
+- /**
+- * Describes the media type of the instance.
+- */
+- enum Type
+- {
+- Type3D, ///< A 3D media file.
+- TypeFlash, ///< A Flash media file.
+- TypeSound, ///< A sound media file.
+- TypeVideo ///< A video media file.
+- };
+-
+- Instance();
+- ~Instance();
+-
+- /**
+- * Returns the media type of the instance.
+- */
+- Type type() const;
+-
+- /**
+- * Returns the params object of the instance or @c 0 if it doesn't exist.
+- */
+- RichMediaAnnotation::Params* params() const;
+-
+- private:
+- void setType( Type type );
+- void setParams( RichMediaAnnotation::Params *params );
+-
+- class Private;
+- QScopedPointer<Private> d;
+- };
+-
+- /**
+- * The configuration object of a RichMediaAnnotation::Content object.
+- *
+- * The configuration object provides access to the various Instance objects
+- * of the rich media annotation.
+- */
+- class POPPLER_QT4_EXPORT Configuration
+- {
+- friend class AnnotationPrivate;
+-
+- public:
+- /**
+- * Describes the media type of the configuration.
+- */
+- enum Type
+- {
+- Type3D, ///< A 3D media file.
+- TypeFlash, ///< A Flash media file.
+- TypeSound, ///< A sound media file.
+- TypeVideo ///< A video media file.
+- };
+-
+- Configuration();
+- ~Configuration();
+-
+- /**
+- * Returns the media type of the configuration.
+- */
+- Type type() const;
+-
+- /**
+- * Returns the name of the configuration.
+- */
+- QString name() const;
+-
+- /**
+- * Returns the list of Instance objects of the configuration.
+- */
+- QList< RichMediaAnnotation::Instance* > instances() const;
+-
+- private:
+- void setType( Type type );
+- void setName( const QString &name );
+- void setInstances( const QList< RichMediaAnnotation::Instance* > &instances );
+-
+- class Private;
+- QScopedPointer<Private> d;
+- };
+-
+- /**
+- * The asset object of a RichMediaAnnotation::Content object.
+- *
+- * The asset object provides a mapping between identifier name, as
+- * used in the flash vars string of RichMediaAnnotation::Params, and the
+- * associated file spec object.
+- */
+- class POPPLER_QT4_EXPORT Asset
+- {
+- friend class AnnotationPrivate;
+-
+- public:
+- Asset();
+- ~Asset();
+-
+- /**
+- * Returns the identifier name of the asset.
+- */
+- QString name() const;
+-
+- /**
+- * Returns the embedded file the asset points to.
+- */
+- EmbeddedFile* embeddedFile() const;
+-
+- private:
+- void setName( const QString &name );
+- void setEmbeddedFile( EmbeddedFile *embeddedFile );
+-
+- class Private;
+- QScopedPointer<Private> d;
+- };
+-
+- /**
+- * The content object of a RichMediaAnnotation.
+- *
+- * The content object provides access to the list of configurations
+- * and assets of the rich media annotation.
+- */
+- class POPPLER_QT4_EXPORT Content
+- {
+- friend class AnnotationPrivate;
+-
+- public:
+- Content();
+- ~Content();
+-
+- /**
+- * Returns the list of configuration objects of the content object.
+- */
+- QList< RichMediaAnnotation::Configuration* > configurations() const;
+-
+- /**
+- * Returns the list of asset objects of the content object.
+- */
+- QList< RichMediaAnnotation::Asset* > assets() const;
+-
+- private:
+- void setConfigurations( const QList< RichMediaAnnotation::Configuration* > &configurations );
+- void setAssets( const QList< RichMediaAnnotation::Asset* > &assets );
+-
+- class Private;
+- QScopedPointer<Private> d;
+- };
+-
+- /**
+- * The activation object of the RichMediaAnnotation::Settings object.
+- *
+- * The activation object is a wrapper around the settings for the activation
+- * state. At the moment it provides only the activation condition.
+- */
+- class POPPLER_QT4_EXPORT Activation
+- {
+- friend class AnnotationPrivate;
+-
+- public:
+- /**
+- * Describes the condition for activating the rich media.
+- */
+- enum Condition {
+- PageOpened, ///< Activate when page is opened.
+- PageVisible, ///< Activate when page becomes visible.
+- UserAction ///< Activate when user interacts with the annotation.
+- };
+-
+- Activation();
+- ~Activation();
+-
+- /**
+- * Returns the activation condition.
+- */
+- Condition condition() const;
+-
+- private:
+- void setCondition( Condition condition );
+-
+- class Private;
+- QScopedPointer<Private> d;
+- };
+-
+- /**
+- * The deactivation object of the RichMediaAnnotation::Settings object.
+- *
+- * The deactivation object is a wrapper around the settings for the deactivation
+- * state. At the moment it provides only the deactivation condition.
+- */
+- class POPPLER_QT4_EXPORT Deactivation
+- {
+- friend class AnnotationPrivate;
+-
+- public:
+- /**
+- * Describes the condition for deactivating the rich media.
+- */
+- enum Condition {
+- PageClosed, ///< Deactivate when page is closed.
+- PageInvisible, ///< Deactivate when page becomes invisible.
+- UserAction ///< Deactivate when user interacts with the annotation.
+- };
+-
+- Deactivation();
+- ~Deactivation();
+-
+- /**
+- * Returns the deactivation condition.
+- */
+- Condition condition() const;
+-
+- private:
+- void setCondition( Condition condition );
+-
+- class Private;
+- QScopedPointer<Private> d;
+- };
+-
+- /**
+- * The settings object of a RichMediaAnnotation.
+- *
+- * The settings object provides access to the configuration objects
+- * for annotation activation and deactivation.
+- */
+- class POPPLER_QT4_EXPORT Settings
+- {
+- friend class AnnotationPrivate;
+-
+- public:
+- Settings();
+- ~Settings();
+-
+- /**
+- * Returns the Activation object of the settings object or @c 0 if it doesn't exist.
+- */
+- RichMediaAnnotation::Activation* activation() const;
+-
+- /**
+- * Returns the Deactivation object of the settings object or @c 0 if it doesn't exist.
+- */
+- RichMediaAnnotation::Deactivation* deactivation() const;
+-
+- private:
+- void setActivation( RichMediaAnnotation::Activation *activation );
+- void setDeactivation( RichMediaAnnotation::Deactivation *deactivation );
+-
+- class Private;
+- QScopedPointer<Private> d;
+- };
+-
+- /**
+- * Returns the Settings object of the rich media annotation or @c 0 if it doesn't exist.
+- */
+- RichMediaAnnotation::Settings* settings() const;
+-
+- /**
+- * Returns the Content object of the rich media annotation or @c 0 if it doesn't exist.
+- */
+- RichMediaAnnotation::Content* content() const;
+-
+- private:
+- void setSettings( RichMediaAnnotation::Settings *settings );
+- void setContent( RichMediaAnnotation::Content *content );
+-
+- RichMediaAnnotation();
+- RichMediaAnnotation( const QDomNode &node );
+- RichMediaAnnotation( RichMediaAnnotationPrivate &dd );
+- virtual void store( QDomNode &parentNode, QDomDocument &document ) const;
+- Q_DECLARE_PRIVATE( RichMediaAnnotation )
+- Q_DISABLE_COPY( RichMediaAnnotation )
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-base-converter.cc b/qt4/src/poppler-base-converter.cc
+deleted file mode 100644
+index 11ff17ca..00000000
+--- a/qt4/src/poppler-base-converter.cc
++++ /dev/null
+@@ -1,105 +0,0 @@
+-/* poppler-base-converter.cc: qt interface to poppler
+- * Copyright (C) 2007, 2009, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-
+-#include "poppler-converter-private.h"
+-
+-#include <QtCore/QFile>
+-
+-namespace Poppler {
+-
+-BaseConverterPrivate::BaseConverterPrivate()
+- : document(0), iodev(0), ownIodev(true)
+-{
+-}
+-
+-BaseConverterPrivate::~BaseConverterPrivate()
+-{
+-}
+-
+-QIODevice* BaseConverterPrivate::openDevice()
+-{
+- if (!iodev)
+- {
+- Q_ASSERT(!outputFileName.isEmpty());
+- QFile *f = new QFile(outputFileName);
+- iodev = f;
+- ownIodev = true;
+- }
+- Q_ASSERT(iodev);
+- if (!iodev->isOpen())
+- {
+- if (!iodev->open(QIODevice::WriteOnly))
+- {
+- if (ownIodev)
+- {
+- delete iodev;
+- iodev = 0;
+- }
+- else
+- {
+- return 0;
+- }
+- }
+- }
+- return iodev;
+-}
+-
+-void BaseConverterPrivate::closeDevice()
+-{
+- if (ownIodev)
+- {
+- iodev->close();
+- delete iodev;
+- iodev = 0;
+- }
+-}
+-
+-
+-BaseConverter::BaseConverter(BaseConverterPrivate &dd)
+- : d_ptr(&dd)
+-{
+-}
+-
+-BaseConverter::~BaseConverter()
+-{
+- delete d_ptr;
+-}
+-
+-void BaseConverter::setOutputFileName(const QString &outputFileName)
+-{
+- Q_D(BaseConverter);
+- d->outputFileName = outputFileName;
+-}
+-
+-void BaseConverter::setOutputDevice(QIODevice *device)
+-{
+- Q_D(BaseConverter);
+- d->iodev = device;
+- d->ownIodev = false;
+-}
+-
+-BaseConverter::Error BaseConverter::lastError() const
+-{
+- Q_D(const BaseConverter);
+- return d->lastError;
+-}
+-
+-}
+diff --git a/qt4/src/poppler-converter-private.h b/qt4/src/poppler-converter-private.h
+deleted file mode 100644
+index dc3e9437..00000000
+--- a/qt4/src/poppler-converter-private.h
++++ /dev/null
+@@ -1,49 +0,0 @@
+-/* poppler-converter-private.h: Qt4 interface to poppler
+- * Copyright (C) 2007, 2009, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef POPPLER_QT4_CONVERTER_PRIVATE_H
+-#define POPPLER_QT4_CONVERTER_PRIVATE_H
+-
+-#include <QtCore/QString>
+-
+-class QIODevice;
+-
+-namespace Poppler {
+-
+-class DocumentData;
+-
+-class BaseConverterPrivate
+-{
+- public:
+- BaseConverterPrivate();
+- virtual ~BaseConverterPrivate();
+-
+- QIODevice* openDevice();
+- void closeDevice();
+-
+- DocumentData *document;
+- QString outputFileName;
+- QIODevice *iodev;
+- bool ownIodev : 1;
+- BaseConverter::Error lastError;
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-document.cc b/qt4/src/poppler-document.cc
+deleted file mode 100644
+index d6e2fbf7..00000000
+--- a/qt4/src/poppler-document.cc
++++ /dev/null
+@@ -1,850 +0,0 @@
+-/* poppler-document.cc: qt interface to poppler
+- * Copyright (C) 2005, Net Integration Technologies, Inc.
+- * Copyright (C) 2005, 2008, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2005-2010, 2012, 2013, 2015-2017, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2006-2010, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2010, 2011 Hib Eris <hib@hiberis.nl>
+- * Copyright (C) 2012 Koji Otani <sho@bbr.jp>
+- * Copyright (C) 2012, 2013 Thomas Freitag <Thomas.Freitag@alfa.de>
+- * Copyright (C) 2012 Fabio D'Urso <fabiodurso@hotmail.it>
+- * Copyright (C) 2014 Adam Reichold <adamreichold@myopera.com>
+- * Copyright (C) 2015 William Bader <williambader@hotmail.com>
+- * Copyright (C) 2016 Jakub Alba <jakubalba@gmail.com>
+- * Copyright (C) 2017 Adrian Johnson <ajohnson@redneon.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-
+-#include <config.h>
+-#include <ErrorCodes.h>
+-#include <GlobalParams.h>
+-#include <Outline.h>
+-#include <PDFDoc.h>
+-#include <Stream.h>
+-#include <Catalog.h>
+-#include <ViewerPreferences.h>
+-#include <DateInfo.h>
+-#include <GfxState.h>
+-
+-#include <QtCore/QDebug>
+-#include <QtCore/QFile>
+-#include <QtCore/QByteArray>
+-
+-#include "poppler-private.h"
+-#include "poppler-page-private.h"
+-
+-#if defined(USE_CMS)
+-#if defined(USE_LCMS1)
+-#include <lcms.h>
+-#else
+-#include <lcms2.h>
+-#endif
+-#endif
+-
+-namespace Poppler {
+-
+- int DocumentData::count = 0;
+-
+- Document *Document::load(const QString &filePath, const QByteArray &ownerPassword,
+- const QByteArray &userPassword)
+- {
+- DocumentData *doc = new DocumentData(filePath,
+- new GooString(ownerPassword.data()),
+- new GooString(userPassword.data()));
+- return DocumentData::checkDocument(doc);
+- }
+-
+- Document *Document::loadFromData(const QByteArray &fileContents,
+- const QByteArray &ownerPassword,
+- const QByteArray &userPassword)
+- {
+- // create stream
+- DocumentData *doc = new DocumentData(fileContents,
+- new GooString(ownerPassword.data()),
+- new GooString(userPassword.data()));
+- return DocumentData::checkDocument(doc);
+- }
+-
+- Document *DocumentData::checkDocument(DocumentData *doc)
+- {
+- Document *pdoc;
+- if (doc->doc->isOk() || doc->doc->getErrorCode() == errEncrypted) {
+- pdoc = new Document(doc);
+- if (doc->doc->getErrorCode() == errEncrypted)
+- pdoc->m_doc->locked = true;
+- else
+- {
+- pdoc->m_doc->locked = false;
+- pdoc->m_doc->fillMembers();
+- }
+- return pdoc;
+- }
+- else
+- {
+- delete doc;
+- }
+- return NULL;
+- }
+-
+- Document::Document(DocumentData *dataA)
+- {
+- m_doc = dataA;
+- }
+-
+- Document::~Document()
+- {
+- delete m_doc;
+- }
+-
+- Page *Document::page(int index) const
+- {
+- Page *page = new Page(m_doc, index);
+- if (page->m_page->page == NULL) {
+- delete page;
+- return NULL;
+- }
+-
+- return page;
+- }
+-
+- bool Document::isLocked() const
+- {
+- return m_doc->locked;
+- }
+-
+- bool Document::unlock(const QByteArray &ownerPassword,
+- const QByteArray &userPassword)
+- {
+- if (m_doc->locked) {
+- /* racier then it needs to be */
+- DocumentData *doc2;
+- if (!m_doc->fileContents.isEmpty())
+- {
+- doc2 = new DocumentData(m_doc->fileContents,
+- new GooString(ownerPassword.data()),
+- new GooString(userPassword.data()));
+- }
+- else
+- {
+- doc2 = new DocumentData(m_doc->m_filePath,
+- new GooString(ownerPassword.data()),
+- new GooString(userPassword.data()));
+- }
+- if (!doc2->doc->isOk()) {
+- delete doc2;
+- } else {
+- delete m_doc;
+- m_doc = doc2;
+- m_doc->locked = false;
+- m_doc->fillMembers();
+- }
+- }
+- return m_doc->locked;
+- }
+-
+- Document::PageMode Document::pageMode() const
+- {
+- switch (m_doc->doc->getCatalog()->getPageMode()) {
+- case Catalog::pageModeNone:
+- return UseNone;
+- case Catalog::pageModeOutlines:
+- return UseOutlines;
+- case Catalog::pageModeThumbs:
+- return UseThumbs;
+- case Catalog::pageModeFullScreen:
+- return FullScreen;
+- case Catalog::pageModeOC:
+- return UseOC;
+- case Catalog::pageModeAttach:
+- return UseAttach;
+- default:
+- return UseNone;
+- }
+- }
+-
+- Document::PageLayout Document::pageLayout() const
+- {
+- switch (m_doc->doc->getCatalog()->getPageLayout()) {
+- case Catalog::pageLayoutNone:
+- return NoLayout;
+- case Catalog::pageLayoutSinglePage:
+- return SinglePage;
+- case Catalog::pageLayoutOneColumn:
+- return OneColumn;
+- case Catalog::pageLayoutTwoColumnLeft:
+- return TwoColumnLeft;
+- case Catalog::pageLayoutTwoColumnRight:
+- return TwoColumnRight;
+- case Catalog::pageLayoutTwoPageLeft:
+- return TwoPageLeft;
+- case Catalog::pageLayoutTwoPageRight:
+- return TwoPageRight;
+- default:
+- return NoLayout;
+- }
+- }
+-
+- Qt::LayoutDirection Document::textDirection() const
+- {
+- if (!m_doc->doc->getCatalog()->getViewerPreferences())
+- return Qt::LayoutDirectionAuto;
+-
+- switch (m_doc->doc->getCatalog()->getViewerPreferences()->getDirection()) {
+- case ViewerPreferences::directionL2R:
+- return Qt::LeftToRight;
+- case ViewerPreferences::directionR2L:
+- return Qt::RightToLeft;
+- default:
+- return Qt::LayoutDirectionAuto;
+- }
+- }
+-
+- int Document::numPages() const
+- {
+- return m_doc->doc->getNumPages();
+- }
+-
+- QList<FontInfo> Document::fonts() const
+- {
+- QList<FontInfo> ourList;
+- FontIterator it( 0, m_doc );
+- while ( it.hasNext() )
+- {
+- ourList += it.next();
+- }
+- return ourList;
+- }
+-
+- QList<EmbeddedFile*> Document::embeddedFiles() const
+- {
+- return m_doc->m_embeddedFiles;
+- }
+-
+- bool Document::scanForFonts( int numPages, QList<FontInfo> *fontList ) const
+- {
+- if ( !m_doc->m_fontInfoIterator )
+- return false;
+- if ( !m_doc->m_fontInfoIterator->hasNext() )
+- return false;
+- while ( m_doc->m_fontInfoIterator->hasNext() && numPages )
+- {
+- (*fontList) += m_doc->m_fontInfoIterator->next();
+- --numPages;
+- }
+- return true;
+- }
+-
+- FontIterator* Document::newFontIterator( int startPage ) const
+- {
+- return new FontIterator( startPage, m_doc );
+- }
+-
+- QByteArray Document::fontData(const FontInfo &fi) const
+- {
+- QByteArray result;
+- if (fi.isEmbedded())
+- {
+- XRef *xref = m_doc->doc->getXRef()->copy();
+-
+- Object refObj(fi.m_data->embRef.num, fi.m_data->embRef.gen);
+- Object strObj = refObj.fetch(xref);
+- if (strObj.isStream())
+- {
+- int c;
+- strObj.streamReset();
+- while ((c = strObj.streamGetChar()) != EOF)
+- {
+- result.append((char)c);
+- }
+- strObj.streamClose();
+- }
+- delete xref;
+- }
+- return result;
+- }
+-
+- QString Document::info( const QString & type ) const
+- {
+- if (m_doc->locked) {
+- return QString();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoStringEntry(type.toLatin1().constData()));
+- return UnicodeParsedString(goo.data());
+- }
+-
+- bool Document::setInfo( const QString & key, const QString & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- GooString *goo = QStringToUnicodeGooString(val);
+- m_doc->doc->setDocInfoStringEntry(key.toLatin1().constData(), goo);
+- return true;
+- }
+-
+- QString Document::title() const
+- {
+- if (m_doc->locked) {
+- return QString();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoTitle());
+- return UnicodeParsedString(goo.data());
+- }
+-
+- bool Document::setTitle( const QString & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->setDocInfoTitle(QStringToUnicodeGooString(val));
+- return true;
+- }
+-
+- QString Document::author() const
+- {
+- if (m_doc->locked) {
+- return QString();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoAuthor());
+- return UnicodeParsedString(goo.data());
+- }
+-
+- bool Document::setAuthor( const QString & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->setDocInfoAuthor(QStringToUnicodeGooString(val));
+- return true;
+- }
+-
+- QString Document::subject() const
+- {
+- if (m_doc->locked) {
+- return QString();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoSubject());
+- return UnicodeParsedString(goo.data());
+- }
+-
+- bool Document::setSubject( const QString & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->setDocInfoSubject(QStringToUnicodeGooString(val));
+- return true;
+- }
+-
+- QString Document::keywords() const
+- {
+- if (m_doc->locked) {
+- return QString();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoKeywords());
+- return UnicodeParsedString(goo.data());
+- }
+-
+- bool Document::setKeywords( const QString & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->setDocInfoKeywords(QStringToUnicodeGooString(val));
+- return true;
+- }
+-
+- QString Document::creator() const
+- {
+- if (m_doc->locked) {
+- return QString();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoCreator());
+- return UnicodeParsedString(goo.data());
+- }
+-
+- bool Document::setCreator( const QString & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->setDocInfoCreator(QStringToUnicodeGooString(val));
+- return true;
+- }
+-
+- QString Document::producer() const
+- {
+- if (m_doc->locked) {
+- return QString();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoProducer());
+- return UnicodeParsedString(goo.data());
+- }
+-
+- bool Document::setProducer( const QString & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->setDocInfoProducer(QStringToUnicodeGooString(val));
+- return true;
+- }
+-
+- bool Document::removeInfo()
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->removeDocInfo();
+- return true;
+- }
+-
+- QStringList Document::infoKeys() const
+- {
+- QStringList keys;
+-
+- if ( m_doc->locked )
+- return QStringList();
+-
+- QScopedPointer<XRef> xref(m_doc->doc->getXRef()->copy());
+- if (!xref)
+- return QStringList();
+- Object info = xref->getDocInfo();
+- if ( !info.isDict() )
+- return QStringList();
+-
+- Dict *infoDict = info.getDict();
+- // somehow iterate over keys in infoDict
+- keys.reserve( infoDict->getLength() );
+- for( int i=0; i < infoDict->getLength(); ++i ) {
+- keys.append( QString::fromAscii(infoDict->getKey(i)) );
+- }
+-
+- return keys;
+- }
+-
+- QDateTime Document::date( const QString & type ) const
+- {
+- if (m_doc->locked) {
+- return QDateTime();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoStringEntry(type.toLatin1().constData()));
+- QString str = UnicodeParsedString(goo.data());
+- return Poppler::convertDate(str.toLatin1().data());
+- }
+-
+- bool Document::setDate( const QString & key, const QDateTime & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->setDocInfoStringEntry(key.toLatin1().constData(), QDateTimeToUnicodeGooString(val));
+- return true;
+- }
+-
+- QDateTime Document::creationDate() const
+- {
+- if (m_doc->locked) {
+- return QDateTime();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoCreatDate());
+- QString str = UnicodeParsedString(goo.data());
+- return Poppler::convertDate(str.toLatin1().data());
+- }
+-
+- bool Document::setCreationDate( const QDateTime & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->setDocInfoCreatDate(QDateTimeToUnicodeGooString(val));
+- return true;
+- }
+-
+- QDateTime Document::modificationDate() const
+- {
+- if (m_doc->locked) {
+- return QDateTime();
+- }
+-
+- QScopedPointer<GooString> goo(m_doc->doc->getDocInfoModDate());
+- QString str = UnicodeParsedString(goo.data());
+- return Poppler::convertDate(str.toLatin1().data());
+- }
+-
+- bool Document::setModificationDate( const QDateTime & val )
+- {
+- if (m_doc->locked) {
+- return false;
+- }
+-
+- m_doc->doc->setDocInfoModDate(QDateTimeToUnicodeGooString(val));
+- return true;
+- }
+-
+- bool Document::isEncrypted() const
+- {
+- return m_doc->doc->isEncrypted();
+- }
+-
+- bool Document::isLinearized() const
+- {
+- return m_doc->doc->isLinearized();
+- }
+-
+- bool Document::okToPrint() const
+- {
+- return m_doc->doc->okToPrint();
+- }
+-
+- bool Document::okToPrintHighRes() const
+- {
+- return m_doc->doc->okToPrintHighRes();
+- }
+-
+- bool Document::okToChange() const
+- {
+- return m_doc->doc->okToChange();
+- }
+-
+- bool Document::okToCopy() const
+- {
+- return m_doc->doc->okToCopy();
+- }
+-
+- bool Document::okToAddNotes() const
+- {
+- return m_doc->doc->okToAddNotes();
+- }
+-
+- bool Document::okToFillForm() const
+- {
+- return m_doc->doc->okToFillForm();
+- }
+-
+- bool Document::okToCreateFormFields() const
+- {
+- return ( okToFillForm() && okToChange() );
+- }
+-
+- bool Document::okToExtractForAccessibility() const
+- {
+- return m_doc->doc->okToAccessibility();
+- }
+-
+- bool Document::okToAssemble() const
+- {
+- return m_doc->doc->okToAssemble();
+- }
+-
+- double Document::pdfVersion() const
+- {
+- return m_doc->doc->getPDFMajorVersion () + m_doc->doc->getPDFMinorVersion() / 10.0;
+- }
+-
+- void Document::getPdfVersion(int *major, int *minor) const
+- {
+- if (major)
+- *major = m_doc->doc->getPDFMajorVersion();
+- if (minor)
+- *minor = m_doc->doc->getPDFMinorVersion();
+- }
+-
+- Page *Document::page(const QString &label) const
+- {
+- GooString label_g(label.toAscii().data());
+- int index;
+-
+- if (!m_doc->doc->getCatalog()->labelToIndex (&label_g, &index))
+- return NULL;
+-
+- return page(index);
+- }
+-
+- bool Document::hasEmbeddedFiles() const
+- {
+- return (!(0 == m_doc->doc->getCatalog()->numEmbeddedFiles()));
+- }
+-
+- QDomDocument *Document::toc() const
+- {
+- Outline * outline = m_doc->doc->getOutline();
+- if ( !outline )
+- return NULL;
+-
+- GooList * items = outline->getItems();
+- if ( !items || items->getLength() < 1 )
+- return NULL;
+-
+- QDomDocument *toc = new QDomDocument();
+- if ( items->getLength() > 0 )
+- m_doc->addTocChildren( toc, toc, items );
+-
+- return toc;
+- }
+-
+- LinkDestination *Document::linkDestination( const QString &name )
+- {
+- GooString * namedDest = QStringToGooString( name );
+- LinkDestinationData ldd(NULL, namedDest, m_doc, false);
+- LinkDestination *ld = new LinkDestination(ldd);
+- delete namedDest;
+- return ld;
+- }
+-
+- void Document::setPaperColor(const QColor &color)
+- {
+- m_doc->setPaperColor(color);
+- }
+-
+- void Document::setColorDisplayProfile(void* outputProfileA)
+- {
+-#if defined(USE_CMS)
+- GfxColorSpace::setDisplayProfile((cmsHPROFILE)outputProfileA);
+-#else
+- Q_UNUSED(outputProfileA);
+-#endif
+- }
+-
+- void Document::setColorDisplayProfileName(const QString &name)
+- {
+-#if defined(USE_CMS)
+- GooString *profileName = QStringToGooString( name );
+- GfxColorSpace::setDisplayProfileName(profileName);
+- delete profileName;
+-#else
+- Q_UNUSED(name);
+-#endif
+- }
+-
+- void* Document::colorRgbProfile() const
+- {
+-#if defined(USE_CMS)
+- return (void*)GfxColorSpace::getRGBProfile();
+-#else
+- return NULL;
+-#endif
+- }
+-
+- void* Document::colorDisplayProfile() const
+- {
+-#if defined(USE_CMS)
+- return (void*)GfxColorSpace::getDisplayProfile();
+-#else
+- return NULL;
+-#endif
+- }
+-
+- QColor Document::paperColor() const
+- {
+- return m_doc->paperColor;
+- }
+-
+- void Document::setRenderBackend( Document::RenderBackend backend )
+- {
+- // no need to delete the outputdev as for the moment we always create a splash one
+- // as the arthur one does not allow "precaching" due to it's signature
+- // delete m_doc->m_outputDev;
+- // m_doc->m_outputDev = NULL;
+- m_doc->m_backend = backend;
+- }
+-
+- Document::RenderBackend Document::renderBackend() const
+- {
+- return m_doc->m_backend;
+- }
+-
+- QSet<Document::RenderBackend> Document::availableRenderBackends()
+- {
+- QSet<Document::RenderBackend> ret;
+-#if defined(HAVE_SPLASH)
+- ret << Document::SplashBackend;
+-#endif
+- ret << Document::ArthurBackend;
+- return ret;
+- }
+-
+- void Document::setRenderHint( Document::RenderHint hint, bool on )
+- {
+- const bool touchesOverprinting = hint & Document::OverprintPreview;
+-
+- int hintForOperation = hint;
+- if (touchesOverprinting && !isOverprintPreviewAvailable())
+- hintForOperation = hintForOperation & ~(int)Document::OverprintPreview;
+-
+- if ( on )
+- m_doc->m_hints |= hintForOperation;
+- else
+- m_doc->m_hints &= ~hintForOperation;
+-
+- }
+-
+- Document::RenderHints Document::renderHints() const
+- {
+- return Document::RenderHints( m_doc->m_hints );
+- }
+-
+- PSConverter *Document::psConverter() const
+- {
+- return new PSConverter(m_doc);
+- }
+-
+- PDFConverter *Document::pdfConverter() const
+- {
+- return new PDFConverter(m_doc);
+- }
+-
+- QString Document::metadata() const
+- {
+- QString result;
+- Catalog *catalog = m_doc->doc->getCatalog();
+- if (catalog && catalog->isOk())
+- {
+- GooString *s = catalog->readMetadata();
+- if (s) result = UnicodeParsedString(s);
+- delete s;
+- }
+- return result;
+- }
+-
+- bool Document::hasOptionalContent() const
+- {
+- return ( m_doc->doc->getOptContentConfig() && m_doc->doc->getOptContentConfig()->hasOCGs() );
+- }
+-
+- OptContentModel *Document::optionalContentModel()
+- {
+- if (m_doc->m_optContentModel.isNull()) {
+- m_doc->m_optContentModel = new OptContentModel(m_doc->doc->getOptContentConfig(), 0);
+- }
+- return (OptContentModel *)m_doc->m_optContentModel;
+- }
+-
+- QStringList Document::scripts() const
+- {
+- Catalog *catalog = m_doc->doc->getCatalog();
+- const int numScripts = catalog->numJS();
+- QStringList scripts;
+- for (int i = 0; i < numScripts; ++i) {
+- GooString *s = catalog->getJS(i);
+- if (s) {
+- scripts.append(UnicodeParsedString(s));
+- delete s;
+- }
+- }
+- return scripts;
+- }
+-
+- bool Document::getPdfId(QByteArray *permanentId, QByteArray *updateId) const
+- {
+- GooString gooPermanentId;
+- GooString gooUpdateId;
+-
+- if (!m_doc->doc->getID(permanentId ? &gooPermanentId : 0, updateId ? &gooUpdateId : 0))
+- return false;
+-
+- if (permanentId)
+- *permanentId = gooPermanentId.getCString();
+- if (updateId)
+- *updateId = gooUpdateId.getCString();
+-
+- return true;
+- }
+-
+- Document::FormType Document::formType() const
+- {
+- switch ( m_doc->doc->getCatalog()->getFormType() )
+- {
+- case Catalog::NoForm:
+- return Document::NoForm;
+- case Catalog::AcroForm:
+- return Document::AcroForm;
+- case Catalog::XfaForm:
+- return Document::XfaForm;
+- }
+-
+- return Document::NoForm; // make gcc happy
+- }
+-
+- QDateTime convertDate( char *dateString )
+- {
+- int year, mon, day, hour, min, sec, tzHours, tzMins;
+- char tz;
+-
+- if ( parseDateString( dateString, &year, &mon, &day, &hour, &min, &sec, &tz, &tzHours, &tzMins ) )
+- {
+- QDate d( year, mon, day );
+- QTime t( hour, min, sec );
+- if ( d.isValid() && t.isValid() ) {
+- QDateTime dt( d, t, Qt::UTC );
+- if ( tz ) {
+- // then we have some form of timezone
+- if ( 'Z' == tz ) {
+- // We are already at UTC
+- } else if ( '+' == tz ) {
+- // local time is ahead of UTC
+- dt = dt.addSecs(-1*((tzHours*60)+tzMins)*60);
+- } else if ( '-' == tz ) {
+- // local time is behind UTC
+- dt = dt.addSecs(((tzHours*60)+tzMins)*60);
+- } else {
+- qWarning("unexpected tz val");
+- }
+- }
+- return dt;
+- }
+- }
+- return QDateTime();
+- }
+-
+- bool isCmsAvailable()
+- {
+-#if defined(USE_CMS)
+- return true;
+-#else
+- return false;
+-#endif
+- }
+-
+- bool isOverprintPreviewAvailable() {
+-#ifdef SPLASH_CMYK
+- return true;
+-#else
+- return false;
+-#endif
+- }
+-
+-}
+diff --git a/qt4/src/poppler-embeddedfile-private.h b/qt4/src/poppler-embeddedfile-private.h
+deleted file mode 100644
+index 83549dad..00000000
+--- a/qt4/src/poppler-embeddedfile-private.h
++++ /dev/null
+@@ -1,42 +0,0 @@
+-/* poppler-embeddedfile-private.h: Qt4 interface to poppler
+- * Copyright (C) 2005, 2008, 2009, 2012, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2005, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2008, 2011, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef POPPLER_EMBEDDEDFILE_PRIVATE_H
+-#define POPPLER_EMBEDDEDFILE_PRIVATE_H
+-
+-class FileSpec;
+-
+-namespace Poppler
+-{
+-
+-class EmbeddedFileData
+-{
+-public:
+- EmbeddedFileData(FileSpec *fs);
+- ~EmbeddedFileData();
+-
+- EmbFile *embFile() const;
+-
+- FileSpec *filespec;
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-embeddedfile.cc b/qt4/src/poppler-embeddedfile.cc
+deleted file mode 100644
+index f70573ac..00000000
+--- a/qt4/src/poppler-embeddedfile.cc
++++ /dev/null
+@@ -1,135 +0,0 @@
+-/* poppler-document.cc: qt interface to poppler
+- * Copyright (C) 2005, 2008, 2009, 2012, 2013, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2005, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2008, 2011, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-
+-#include <QtCore/QString>
+-#include <QtCore/QDateTime>
+-
+-#include "Object.h"
+-#include "Stream.h"
+-#include "Catalog.h"
+-#include "FileSpec.h"
+-
+-#include "poppler-private.h"
+-#include "poppler-embeddedfile-private.h"
+-
+-namespace Poppler
+-{
+-
+-EmbeddedFileData::EmbeddedFileData(FileSpec *fs)
+- : filespec(fs)
+-{
+-}
+-
+-EmbeddedFileData::~EmbeddedFileData()
+-{
+- delete filespec;
+-}
+-
+-EmbFile *EmbeddedFileData::embFile() const
+-{
+- return filespec->isOk() ? filespec->getEmbeddedFile() : NULL;
+-}
+-
+-
+-EmbeddedFile::EmbeddedFile(EmbFile *embfile)
+- : m_embeddedFile(0)
+-{
+- assert(!"You must not use this private constructor!");
+-}
+-
+-EmbeddedFile::EmbeddedFile(EmbeddedFileData &dd)
+- : m_embeddedFile(&dd)
+-{
+-}
+-
+-EmbeddedFile::~EmbeddedFile()
+-{
+- delete m_embeddedFile;
+-}
+-
+-QString EmbeddedFile::name() const
+-{
+- GooString *goo = m_embeddedFile->filespec->getFileName();
+- return goo ? UnicodeParsedString(goo) : QString();
+-}
+-
+-QString EmbeddedFile::description() const
+-{
+- GooString *goo = m_embeddedFile->filespec->getDescription();
+- return goo ? UnicodeParsedString(goo) : QString();
+-}
+-
+-int EmbeddedFile::size() const
+-{
+- return m_embeddedFile->embFile() ? m_embeddedFile->embFile()->size() : -1;
+-}
+-
+-QDateTime EmbeddedFile::modDate() const
+-{
+- GooString *goo = m_embeddedFile->embFile() ? m_embeddedFile->embFile()->modDate() : NULL;
+- return goo ? convertDate(goo->getCString()) : QDateTime();
+-}
+-
+-QDateTime EmbeddedFile::createDate() const
+-{
+- GooString *goo = m_embeddedFile->embFile() ? m_embeddedFile->embFile()->createDate() : NULL;
+- return goo ? convertDate(goo->getCString()) : QDateTime();
+-}
+-
+-QByteArray EmbeddedFile::checksum() const
+-{
+- GooString *goo = m_embeddedFile->embFile() ? m_embeddedFile->embFile()->checksum() : NULL;
+- return goo ? QByteArray::fromRawData(goo->getCString(), goo->getLength()) : QByteArray();
+-}
+-
+-QString EmbeddedFile::mimeType() const
+-{
+- GooString *goo = m_embeddedFile->embFile() ? m_embeddedFile->embFile()->mimeType() : NULL;
+- return goo ? QString(goo->getCString()) : QString();
+-}
+-
+-QByteArray EmbeddedFile::data()
+-{
+- if (!isValid())
+- return QByteArray();
+- Stream *stream = m_embeddedFile->embFile() ? m_embeddedFile->embFile()->stream() : NULL;
+- if (!stream)
+- return QByteArray();
+-
+- stream->reset();
+- int dataLen = 0;
+- QByteArray fileArray;
+- int i;
+- while ( (i = stream->getChar()) != EOF) {
+- fileArray[dataLen] = (char)i;
+- ++dataLen;
+- }
+- fileArray.resize(dataLen);
+- return fileArray;
+-}
+-
+-bool EmbeddedFile::isValid() const
+-{
+- return m_embeddedFile->filespec->isOk();
+-}
+-
+-}
+diff --git a/qt4/src/poppler-export.h b/qt4/src/poppler-export.h
+deleted file mode 100644
+index 2e2f6ff8..00000000
+--- a/qt4/src/poppler-export.h
++++ /dev/null
+@@ -1,20 +0,0 @@
+-/*
+-* This file is used to set the poppler_qt4_EXPORT macros right.
+-* This is needed for setting the visibility on windows, it will have no effect on other platforms.
+-*/
+-#if defined(_WIN32)
+-# define _POPPLER_QT4_LIB_EXPORT __declspec(dllexport)
+-# define _POPPLER_QT4_LIB_IMPORT __declspec(dllimport)
+-#elif defined(__GNUC__)
+-# define _POPPLER_QT4_LIB_EXPORT __attribute__((visibility("default")))
+-# define _POPPLER_QT4_LIB_IMPORT
+-#else
+-# define _POPPLER_QT4_LIB_EXPORT
+-# define _POPPLER_QT4_LIB_IMPORT
+-#endif
+-
+-#ifdef poppler_qt4_EXPORTS
+-# define POPPLER_QT4_EXPORT _POPPLER_QT4_LIB_EXPORT
+-#else
+-# define POPPLER_QT4_EXPORT _POPPLER_QT4_LIB_IMPORT
+-#endif
+diff --git a/qt4/src/poppler-fontinfo.cc b/qt4/src/poppler-fontinfo.cc
+deleted file mode 100644
+index 5bb9e3a8..00000000
+--- a/qt4/src/poppler-fontinfo.cc
++++ /dev/null
+@@ -1,150 +0,0 @@
+-/* poppler-qt.h: qt interface to poppler
+- * Copyright (C) 2005, Net Integration Technologies, Inc.
+- * Copyright (C) 2005, Tobias Koening <tokoe@kde.org>
+- * Copyright (C) 2005, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2005-2008, 2015, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2008, 2009, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-#include "poppler-private.h"
+-
+-namespace Poppler {
+-
+-FontInfo::FontInfo()
+-{
+- m_data = new FontInfoData();
+-}
+-
+-FontInfo::FontInfo( const FontInfoData &fid )
+-{
+- m_data = new FontInfoData(fid);
+-}
+-
+-FontInfo::FontInfo( const FontInfo &fi )
+-{
+- m_data = new FontInfoData(*fi.m_data);
+-}
+-
+-FontInfo::~FontInfo()
+-{
+- delete m_data;
+-}
+-
+-QString FontInfo::name() const
+-{
+- return m_data->fontName;
+-}
+-
+-QString FontInfo::file() const
+-{
+- return m_data->fontFile;
+-}
+-
+-bool FontInfo::isEmbedded() const
+-{
+- return m_data->isEmbedded;
+-}
+-
+-bool FontInfo::isSubset() const
+-{
+- return m_data->isSubset;
+-}
+-
+-FontInfo::Type FontInfo::type() const
+-{
+- return m_data->type;
+-}
+-
+-QString FontInfo::typeName() const
+-{
+- switch (type()) {
+- case unknown:
+- return QObject::tr("unknown");
+- case Type1:
+- return QObject::tr("Type 1");
+- case Type1C:
+- return QObject::tr("Type 1C");
+- case Type3:
+- return QObject::tr("Type 3");
+- case TrueType:
+- return QObject::tr("TrueType");
+- case CIDType0:
+- return QObject::tr("CID Type 0");
+- case CIDType0C:
+- return QObject::tr("CID Type 0C");
+- case CIDTrueType:
+- return QObject::tr("CID TrueType");
+- case Type1COT:
+- return QObject::tr("Type 1C (OpenType)");
+- case TrueTypeOT:
+- return QObject::tr("TrueType (OpenType)");
+- case CIDType0COT:
+- return QObject::tr("CID Type 0C (OpenType)");
+- case CIDTrueTypeOT:
+- return QObject::tr("CID TrueType (OpenType)");
+- }
+- return QObject::tr("Bug: unexpected font type. Notify poppler mailing list!");
+-}
+-
+-FontInfo& FontInfo::operator=( const FontInfo &fi )
+-{
+- if (this == &fi)
+- return *this;
+-
+- *m_data = *fi.m_data;
+- return *this;
+-}
+-
+-
+-FontIterator::FontIterator( int startPage, DocumentData *dd )
+- : d( new FontIteratorData( startPage, dd ) )
+-{
+-}
+-
+-FontIterator::~FontIterator()
+-{
+- delete d;
+-}
+-
+-QList<FontInfo> FontIterator::next()
+-{
+- ++d->currentPage;
+-
+- QList<FontInfo> fonts;
+- GooList *items = d->fontInfoScanner.scan( 1 );
+- if ( !items )
+- return fonts;
+- fonts.reserve( items->getLength() );
+- for ( int i = 0; i < items->getLength(); ++i ) {
+- fonts.append( FontInfo( FontInfoData( ( ::FontInfo* )items->get( i ) ) ) );
+- }
+- deleteGooList( items, ::FontInfo );
+- return fonts;
+-}
+-
+-bool FontIterator::hasNext() const
+-{
+- return ( d->currentPage + 1 ) < d->totalPages;
+-}
+-
+-int FontIterator::currentPage() const
+-{
+- return d->currentPage;
+-}
+-
+-}
+diff --git a/qt4/src/poppler-form.cc b/qt4/src/poppler-form.cc
+deleted file mode 100644
+index 57cde574..00000000
+--- a/qt4/src/poppler-form.cc
++++ /dev/null
+@@ -1,416 +0,0 @@
+-/* poppler-form.h: qt4 interface to poppler
+- * Copyright (C) 2007-2008, 2011, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2008, 2011, 2012, 2015, 2017, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2011 Carlos Garcia Campos <carlosgc@gnome.org>
+- * Copyright (C) 2012, Adam Reichold <adamreichold@myopera.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-
+-#include <QtCore/QSizeF>
+-
+-#include <Form.h>
+-#include <Object.h>
+-#include <Link.h>
+-
+-#include "poppler-form.h"
+-#include "poppler-page-private.h"
+-#include "poppler-private.h"
+-#include "poppler-annotation-helper.h"
+-
+-#include <math.h>
+-
+-namespace {
+-
+-Qt::Alignment formTextAlignment(::FormWidget *fm)
+-{
+- Qt::Alignment qtalign = Qt::AlignLeft;
+- switch (fm->getField()->getTextQuadding())
+- {
+- case quaddingCentered:
+- qtalign = Qt::AlignHCenter;
+- break;
+- case quaddingRightJustified:
+- qtalign = Qt::AlignRight;
+- break;
+- case quaddingLeftJustified:
+- qtalign = Qt::AlignLeft;
+- }
+- return qtalign;
+-}
+-
+-}
+-
+-namespace Poppler {
+-
+-FormField::FormField(FormFieldData &dd)
+- : m_formData(&dd)
+-{
+- const int rotation = m_formData->page->getRotate();
+- // reading the coords
+- double left, top, right, bottom;
+- m_formData->fm->getRect(&left, &bottom, &right, &top);
+- // build a normalized transform matrix for this page at 100% scale
+- GfxState gfxState( 72.0, 72.0, m_formData->page->getCropBox(), rotation, gTrue );
+- double * gfxCTM = gfxState.getCTM();
+- double MTX[6];
+- double pageWidth = m_formData->page->getCropWidth();
+- double pageHeight = m_formData->page->getCropHeight();
+- // landscape and seascape page rotation: be sure to use the correct (== rotated) page size
+- if (((rotation / 90) % 2) == 1)
+- qSwap(pageWidth, pageHeight);
+- for ( int i = 0; i < 6; i+=2 )
+- {
+- MTX[i] = gfxCTM[i] / pageWidth;
+- MTX[i+1] = gfxCTM[i+1] / pageHeight;
+- }
+- QPointF topLeft;
+- XPDFReader::transform( MTX, qMin( left, right ), qMax( top, bottom ), topLeft );
+- QPointF bottomRight;
+- XPDFReader::transform( MTX, qMax( left, right ), qMin( top, bottom ), bottomRight );
+- m_formData->box = QRectF(topLeft, QSizeF(bottomRight.x() - topLeft.x(), bottomRight.y() - topLeft.y()));
+-}
+-
+-FormField::~FormField()
+-{
+- delete m_formData;
+- m_formData = 0;
+-}
+-
+-QRectF FormField::rect() const
+-{
+- return m_formData->box;
+-}
+-
+-int FormField::id() const
+-{
+- return m_formData->fm->getID();
+-}
+-
+-QString FormField::name() const
+-{
+- QString name;
+- if (GooString *goo = m_formData->fm->getPartialName())
+- {
+- name = QString::fromLatin1(goo->getCString());
+- }
+- return name;
+-}
+-
+-QString FormField::fullyQualifiedName() const
+-{
+- QString name;
+- if (GooString *goo = m_formData->fm->getFullyQualifiedName())
+- {
+- name = UnicodeParsedString(goo);
+- }
+- return name;
+-}
+-
+-QString FormField::uiName() const
+-{
+- QString name;
+- if (GooString *goo = m_formData->fm->getAlternateUiName())
+- {
+- name = QString::fromLatin1(goo->getCString());
+- }
+- return name;
+-}
+-
+-bool FormField::isReadOnly() const
+-{
+- return m_formData->fm->isReadOnly();
+-}
+-
+-bool FormField::isVisible() const
+-{
+- return !(m_formData->fm->getWidgetAnnotation()->getFlags() & Annot::flagHidden);
+-}
+-
+-Link* FormField::activationAction() const
+-{
+- Link* action = 0;
+- if (::LinkAction *act = m_formData->fm->getActivationAction())
+- {
+- action = PageData::convertLinkActionToLink(act, m_formData->doc, QRectF());
+- }
+- return action;
+-}
+-
+-
+-FormFieldButton::FormFieldButton(DocumentData *doc, ::Page *p, ::FormWidgetButton *w)
+- : FormField(*new FormFieldData(doc, p, w))
+-{
+-}
+-
+-FormFieldButton::~FormFieldButton()
+-{
+-}
+-
+-FormFieldButton::FormType FormFieldButton::type() const
+-{
+- return FormField::FormButton;
+-}
+-
+-FormFieldButton::ButtonType FormFieldButton::buttonType() const
+-{
+- FormWidgetButton* fwb = static_cast<FormWidgetButton*>(m_formData->fm);
+- switch (fwb->getButtonType())
+- {
+- case formButtonCheck:
+- return FormFieldButton::CheckBox;
+- break;
+- case formButtonPush:
+- return FormFieldButton::Push;
+- break;
+- case formButtonRadio:
+- return FormFieldButton::Radio;
+- break;
+- }
+- return FormFieldButton::CheckBox;
+-}
+-
+-QString FormFieldButton::caption() const
+-{
+- FormWidgetButton* fwb = static_cast<FormWidgetButton*>(m_formData->fm);
+- QString ret;
+- if (fwb->getButtonType() == formButtonPush)
+- {
+- Dict *dict = m_formData->fm->getObj()->getDict();
+- Object obj1 = dict->lookup("MK");
+- if (obj1.isDict())
+- {
+- AnnotAppearanceCharacs appearCharacs(obj1.getDict());
+- if (appearCharacs.getNormalCaption())
+- {
+- ret = UnicodeParsedString(appearCharacs.getNormalCaption());
+- }
+- }
+- }
+- else
+- {
+- if (const char *goo = fwb->getOnStr())
+- {
+- ret = QString::fromUtf8(goo);
+- }
+- }
+- return ret;
+-}
+-
+-bool FormFieldButton::state() const
+-{
+- FormWidgetButton* fwb = static_cast<FormWidgetButton*>(m_formData->fm);
+- return fwb->getState();
+-}
+-
+-void FormFieldButton::setState( bool state )
+-{
+- FormWidgetButton* fwb = static_cast<FormWidgetButton*>(m_formData->fm);
+- fwb->setState((GBool)state);
+-}
+-
+-QList<int> FormFieldButton::siblings() const
+-{
+- FormWidgetButton* fwb = static_cast<FormWidgetButton*>(m_formData->fm);
+- ::FormFieldButton* ffb = static_cast< ::FormFieldButton* >(fwb->getField());
+- if (fwb->getButtonType() == formButtonPush)
+- return QList<int>();
+-
+- QList<int> ret;
+- for (int i = 0; i < ffb->getNumSiblings(); ++i)
+- {
+- ::FormFieldButton* sibling = static_cast< ::FormFieldButton* >(ffb->getSibling(i));
+- for (int j = 0; j < sibling->getNumWidgets(); ++j)
+- {
+- FormWidget *w = sibling->getWidget(j);
+- if (w) ret.append(w->getID());
+- }
+- }
+-
+- return ret;
+-}
+-
+-
+-FormFieldText::FormFieldText(DocumentData *doc, ::Page *p, ::FormWidgetText *w)
+- : FormField(*new FormFieldData(doc, p, w))
+-{
+-}
+-
+-FormFieldText::~FormFieldText()
+-{
+-}
+-
+-FormField::FormType FormFieldText::type() const
+-{
+- return FormField::FormText;
+-}
+-
+-FormFieldText::TextType FormFieldText::textType() const
+-{
+- FormWidgetText* fwt = static_cast<FormWidgetText*>(m_formData->fm);
+- if (fwt->isFileSelect())
+- return FormFieldText::FileSelect;
+- else if (fwt->isMultiline())
+- return FormFieldText::Multiline;
+- return FormFieldText::Normal;
+-}
+-
+-QString FormFieldText::text() const
+-{
+- GooString *goo = static_cast<FormWidgetText*>(m_formData->fm)->getContent();
+- return UnicodeParsedString(goo);
+-}
+-
+-void FormFieldText::setText( const QString& text )
+-{
+- FormWidgetText* fwt = static_cast<FormWidgetText*>(m_formData->fm);
+- GooString * goo = QStringToUnicodeGooString( text );
+- fwt->setContent( goo );
+- delete goo;
+-}
+-
+-bool FormFieldText::isPassword() const
+-{
+- FormWidgetText* fwt = static_cast<FormWidgetText*>(m_formData->fm);
+- return fwt->isPassword();
+-}
+-
+-bool FormFieldText::isRichText() const
+-{
+- FormWidgetText* fwt = static_cast<FormWidgetText*>(m_formData->fm);
+- return fwt->isRichText();
+-}
+-
+-int FormFieldText::maximumLength() const
+-{
+- FormWidgetText* fwt = static_cast<FormWidgetText*>(m_formData->fm);
+- const int maxlen = fwt->getMaxLen();
+- return maxlen > 0 ? maxlen : -1;
+-}
+-
+-Qt::Alignment FormFieldText::textAlignment() const
+-{
+- return formTextAlignment(m_formData->fm);
+-}
+-
+-bool FormFieldText::canBeSpellChecked() const
+-{
+- FormWidgetText* fwt = static_cast<FormWidgetText*>(m_formData->fm);
+- return !fwt->noSpellCheck();
+-}
+-
+-
+-FormFieldChoice::FormFieldChoice(DocumentData *doc, ::Page *p, ::FormWidgetChoice *w)
+- : FormField(*new FormFieldData(doc, p, w))
+-{
+-}
+-
+-FormFieldChoice::~FormFieldChoice()
+-{
+-}
+-
+-FormFieldChoice::FormType FormFieldChoice::type() const
+-{
+- return FormField::FormChoice;
+-}
+-
+-FormFieldChoice::ChoiceType FormFieldChoice::choiceType() const
+-{
+- FormWidgetChoice* fwc = static_cast<FormWidgetChoice*>(m_formData->fm);
+- if (fwc->isCombo())
+- return FormFieldChoice::ComboBox;
+- return FormFieldChoice::ListBox;
+-}
+-
+-QStringList FormFieldChoice::choices() const
+-{
+- FormWidgetChoice* fwc = static_cast<FormWidgetChoice*>(m_formData->fm);
+- QStringList ret;
+- int num = fwc->getNumChoices();
+- ret.reserve(num);
+- for (int i = 0; i < num; ++i)
+- {
+- ret.append(UnicodeParsedString(fwc->getChoice(i)));
+- }
+- return ret;
+-}
+-
+-bool FormFieldChoice::isEditable() const
+-{
+- FormWidgetChoice* fwc = static_cast<FormWidgetChoice*>(m_formData->fm);
+- return fwc->isCombo() ? fwc->hasEdit() : false;
+-}
+-
+-bool FormFieldChoice::multiSelect() const
+-{
+- FormWidgetChoice* fwc = static_cast<FormWidgetChoice*>(m_formData->fm);
+- return !fwc->isCombo() ? fwc->isMultiSelect() : false;
+-}
+-
+-QList<int> FormFieldChoice::currentChoices() const
+-{
+- FormWidgetChoice* fwc = static_cast<FormWidgetChoice*>(m_formData->fm);
+- int num = fwc->getNumChoices();
+- QList<int> choices;
+- for ( int i = 0; i < num; ++i )
+- if ( fwc->isSelected( i ) )
+- choices.append( i );
+- return choices;
+-}
+-
+-void FormFieldChoice::setCurrentChoices( const QList<int> &choice )
+-{
+- FormWidgetChoice* fwc = static_cast<FormWidgetChoice*>(m_formData->fm);
+- fwc->deselectAll();
+- for ( int i = 0; i < choice.count(); ++i )
+- fwc->select( choice.at( i ) );
+-}
+-
+-QString FormFieldChoice::editChoice() const
+-{
+- FormWidgetChoice* fwc = static_cast<FormWidgetChoice*>(m_formData->fm);
+-
+- if ( fwc->isCombo() && fwc->hasEdit() )
+- return UnicodeParsedString(fwc->getEditChoice());
+- else
+- return QString();
+-}
+-
+-void FormFieldChoice::setEditChoice(const QString& text)
+-{
+- FormWidgetChoice* fwc = static_cast<FormWidgetChoice*>(m_formData->fm);
+-
+- if ( fwc->isCombo() && fwc->hasEdit() )
+- {
+- GooString* goo = QStringToUnicodeGooString( text );
+- fwc->setEditChoice( goo );
+- delete goo;
+- }
+-}
+-
+-Qt::Alignment FormFieldChoice::textAlignment() const
+-{
+- return formTextAlignment(m_formData->fm);
+-}
+-
+-bool FormFieldChoice::canBeSpellChecked() const
+-{
+- FormWidgetChoice* fwc = static_cast<FormWidgetChoice*>(m_formData->fm);
+- return !fwc->noSpellCheck();
+-}
+-
+-}
+diff --git a/qt4/src/poppler-form.h b/qt4/src/poppler-form.h
+deleted file mode 100644
+index 79ed3932..00000000
+--- a/qt4/src/poppler-form.h
++++ /dev/null
+@@ -1,343 +0,0 @@
+-/* poppler-form.h: qt4 interface to poppler
+- * Copyright (C) 2007-2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2008, 2011, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2012, Adam Reichold <adamreichold@myopera.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef _POPPLER_QT4_FORM_H_
+-#define _POPPLER_QT4_FORM_H_
+-
+-#include <QtCore/QRectF>
+-#include <QtCore/QStringList>
+-#include "poppler-export.h"
+-
+-class Page;
+-class FormWidget;
+-class FormWidgetButton;
+-class FormWidgetText;
+-class FormWidgetChoice;
+-
+-namespace Poppler {
+-
+- class DocumentData;
+- class Link;
+-
+- class FormFieldData;
+- /**
+- The base class representing a form field.
+-
+- \since 0.6
+- */
+- class POPPLER_QT4_EXPORT FormField {
+- public:
+-
+- /**
+- The different types of form field.
+- */
+- enum FormType {
+- FormButton, ///< A button field. See \ref Poppler::FormFieldButton::ButtonType "ButtonType"
+- FormText, ///< A text field. See \ref Poppler::FormFieldText::TextType "TextType"
+- FormChoice, ///< A single choice field. See \ref Poppler::FormFieldChoice::ChoiceType "ChoiceType"
+- FormSignature ///< A signature field.
+- };
+-
+- virtual ~FormField();
+-
+- /**
+- The type of the field.
+- */
+- virtual FormType type() const = 0;
+-
+- /**
+- \return The size of the field, in normalized coordinates, i.e.
+- [0..1] with regard to the dimensions (cropbox) of the page
+- */
+- QRectF rect() const;
+-
+- /**
+- The ID of the field.
+- */
+- int id() const;
+-
+- /**
+- The internal name of the field.
+- */
+- QString name() const;
+-
+- /**
+- The internal fully qualified name of the field.
+- \since 0.18
+- */
+- QString fullyQualifiedName() const;
+-
+- /**
+- The name of the field to be used in user interface (eg messages to
+- the user).
+- */
+- QString uiName() const;
+-
+- /**
+- Whether this form field is read-only.
+- */
+- bool isReadOnly() const;
+-
+- /**
+- Whether this form field is visible.
+- */
+- bool isVisible() const;
+-
+- /**
+- The activation action of this form field.
+-
+- \note It may be null.
+- */
+- Link* activationAction() const;
+-
+- protected:
+- /// \cond PRIVATE
+- FormField(FormFieldData &dd);
+-
+- FormFieldData *m_formData;
+- /// \endcond
+-
+- private:
+- Q_DISABLE_COPY(FormField)
+- };
+-
+- /**
+- A form field that represents a "button".
+-
+- \since 0.8
+- */
+- class POPPLER_QT4_EXPORT FormFieldButton : public FormField {
+- public:
+-
+- /**
+- * The types of button field.
+- */
+- enum ButtonType
+- {
+- Push, ///< A simple push button.
+- CheckBox, ///< A check box.
+- Radio ///< A radio button.
+- };
+-
+- /// \cond PRIVATE
+- FormFieldButton(DocumentData *doc, ::Page *p, ::FormWidgetButton *w);
+- /// \endcond
+- virtual ~FormFieldButton();
+-
+- virtual FormType type() const;
+-
+- /**
+- The particular type of the button field.
+- */
+- ButtonType buttonType() const;
+-
+- /**
+- * The caption to be used for the button.
+- */
+- QString caption() const;
+-
+- /**
+- The state of the button.
+- */
+- bool state() const;
+-
+- /**
+- Sets the state of the button to the new \p state .
+- */
+- void setState( bool state );
+-
+- /**
+- The list with the IDs of siblings (ie, buttons belonging to the same
+- group as the current one.
+-
+- Valid only for \ref Radio buttons, an empty list otherwise.
+- */
+- QList<int> siblings() const;
+-
+- private:
+- Q_DISABLE_COPY(FormFieldButton)
+- };
+-
+- /**
+- A form field that represents a text input.
+-
+- \since 0.6
+- */
+- class POPPLER_QT4_EXPORT FormFieldText : public FormField {
+- public:
+-
+- /**
+- The particular type of this text field.
+- */
+- enum TextType {
+- Normal, ///< A simple singleline text field.
+- Multiline, ///< A multiline text field.
+- FileSelect ///< An input field to select the path of a file on disk.
+- };
+-
+- /// \cond PRIVATE
+- FormFieldText(DocumentData *doc, ::Page *p, ::FormWidgetText *w);
+- /// \endcond
+- virtual ~FormFieldText();
+-
+- virtual FormType type() const;
+-
+- /**
+- The text type of the text field.
+- */
+- TextType textType() const;
+-
+- /**
+- The text associated with the text field.
+- */
+- QString text() const;
+-
+- /**
+- Sets the text associated with the text field to the specified
+- \p text.
+- */
+- void setText( const QString& text );
+-
+- /**
+- Whether this text field is a password input, eg its text \b must be
+- replaced with asterisks.
+-
+- Always false for \ref FileSelect text fields.
+- */
+- bool isPassword() const;
+-
+- /**
+- Whether this text field should allow rich text.
+- */
+- bool isRichText() const;
+-
+- /**
+- The maximum length for the text of this field, or -1 if not set.
+- */
+- int maximumLength() const;
+-
+- /**
+- The horizontal alignment for the text of this text field.
+- */
+- Qt::Alignment textAlignment() const;
+-
+- /**
+- Whether the text inserted manually in the field (where possible)
+- can be spell-checked.
+- */
+- bool canBeSpellChecked() const;
+-
+- private:
+- Q_DISABLE_COPY(FormFieldText)
+- };
+-
+- /**
+- A form field that represents a choice field.
+-
+- \since 0.6
+- */
+- class POPPLER_QT4_EXPORT FormFieldChoice : public FormField {
+- public:
+-
+- /**
+- The particular type of this choice field.
+- */
+- enum ChoiceType {
+- ComboBox, ///< A simple singleline text field.
+- ListBox ///< A multiline text field.
+- };
+-
+- /// \cond PRIVATE
+- FormFieldChoice(DocumentData *doc, ::Page *p, ::FormWidgetChoice *w);
+- /// \endcond
+- virtual ~FormFieldChoice();
+-
+- virtual FormType type() const;
+-
+- /**
+- The choice type of the choice field.
+- */
+- ChoiceType choiceType() const;
+-
+- /**
+- The possible choices of the choice field.
+- */
+- QStringList choices() const;
+-
+- /**
+- Whether this FormFieldChoice::ComboBox is editable, i.e. the user
+- can type in a custom value.
+-
+- Always false for the other types of choices.
+- */
+- bool isEditable() const;
+-
+- /**
+- Whether more than one choice of this FormFieldChoice::ListBox
+- can be selected at the same time.
+-
+- Always false for the other types of choices.
+- */
+- bool multiSelect() const;
+-
+- /**
+- The currently selected choices.
+- */
+- QList<int> currentChoices() const;
+-
+- /**
+- Sets the selected choices to \p choice.
+- */
+- void setCurrentChoices( const QList<int> &choice );
+-
+- /**
+- The text entered into an editable combo box choice field. Otherwise a null string.
+-
+- \since 0.22
+- */
+- QString editChoice() const;
+-
+- /**
+- Sets the text entered into an editable combo box choice field. Otherwise does nothing.
+-
+- \since 0.22
+- */
+- void setEditChoice(const QString& text);
+-
+- /**
+- The horizontal alignment for the text of this text field.
+- */
+- Qt::Alignment textAlignment() const;
+-
+- /**
+- Whether the text inserted manually in the field (where possible)
+- can be spell-checked.
+-
+- Returns false if the field is not an editable text field.
+- */
+- bool canBeSpellChecked() const;
+-
+- private:
+- Q_DISABLE_COPY(FormFieldChoice)
+- };
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-link-extractor-private.h b/qt4/src/poppler-link-extractor-private.h
+deleted file mode 100644
+index 32ddd038..00000000
+--- a/qt4/src/poppler-link-extractor-private.h
++++ /dev/null
+@@ -1,57 +0,0 @@
+-/* poppler-link-extractor_p.h: qt interface to poppler
+- * Copyright (C) 2007, 2008, 2011, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef _POPPLER_LINK_EXTRACTOR_H_
+-#define _POPPLER_LINK_EXTRACTOR_H_
+-
+-#include <Object.h>
+-#include <OutputDev.h>
+-
+-#include <QtCore/QList>
+-
+-namespace Poppler
+-{
+-
+-class Link;
+-class PageData;
+-
+-class LinkExtractorOutputDev : public OutputDev
+-{
+- public:
+- LinkExtractorOutputDev(PageData *data);
+- virtual ~LinkExtractorOutputDev();
+-
+- // inherited from OutputDev
+- virtual GBool upsideDown() { return gFalse; }
+- virtual GBool useDrawChar() { return gFalse; }
+- virtual GBool interpretType3Chars() { return gFalse; }
+- virtual void processLink(::AnnotLink *link);
+-
+- // our stuff
+- QList< Link* > links();
+-
+- private:
+- PageData *m_data;
+- double m_pageCropWidth;
+- double m_pageCropHeight;
+- QList< Link* > m_links;
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-link-extractor.cc b/qt4/src/poppler-link-extractor.cc
+deleted file mode 100644
+index 0b1563b6..00000000
+--- a/qt4/src/poppler-link-extractor.cc
++++ /dev/null
+@@ -1,84 +0,0 @@
+-/* poppler-link-extractor_p.h: qt interface to poppler
+- * Copyright (C) 2007, 2008, 2011, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2008, Albert Astals Cid <aacid@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-link-extractor-private.h"
+-
+-#include <GfxState.h>
+-#include <Link.h>
+-#include <Object.h>
+-#include <Page.h>
+-#include <Annot.h>
+-
+-#include "poppler-qt4.h"
+-#include "poppler-page-private.h"
+-
+-namespace Poppler
+-{
+-
+-LinkExtractorOutputDev::LinkExtractorOutputDev(PageData *data)
+- : m_data(data)
+-{
+- Q_ASSERT(m_data);
+- ::Page *popplerPage = m_data->page;
+- m_pageCropWidth = popplerPage->getCropWidth();
+- m_pageCropHeight = popplerPage->getCropHeight();
+- if (popplerPage->getRotate() == 90 || popplerPage->getRotate() == 270)
+- qSwap(m_pageCropWidth, m_pageCropHeight);
+- GfxState gfxState(72.0, 72.0, popplerPage->getCropBox(), popplerPage->getRotate(), gTrue);
+- setDefaultCTM(gfxState.getCTM());
+-}
+-
+-LinkExtractorOutputDev::~LinkExtractorOutputDev()
+-{
+- qDeleteAll(m_links);
+-}
+-
+-void LinkExtractorOutputDev::processLink(::AnnotLink *link)
+-{
+- if (!link->isOk())
+- return;
+-
+- double left, top, right, bottom;
+- int leftAux, topAux, rightAux, bottomAux;
+- link->getRect(&left, &top, &right, &bottom);
+- QRectF linkArea;
+-
+- cvtUserToDev(left, top, &leftAux, &topAux);
+- cvtUserToDev(right, bottom, &rightAux, &bottomAux);
+- linkArea.setLeft((double)leftAux / m_pageCropWidth);
+- linkArea.setTop((double)topAux / m_pageCropHeight);
+- linkArea.setRight((double)rightAux / m_pageCropWidth);
+- linkArea.setBottom((double)bottomAux / m_pageCropHeight);
+-
+- Link *popplerLink = m_data->convertLinkActionToLink(link->getAction(), linkArea);
+- if (popplerLink)
+- {
+- m_links.append(popplerLink);
+- }
+- OutputDev::processLink(link);
+-}
+-
+-QList< Link* > LinkExtractorOutputDev::links()
+-{
+- QList< Link* > ret = m_links;
+- m_links.clear();
+- return ret;
+-}
+-
+-}
+diff --git a/qt4/src/poppler-link-private.h b/qt4/src/poppler-link-private.h
+deleted file mode 100644
+index 7b03c1c3..00000000
+--- a/qt4/src/poppler-link-private.h
++++ /dev/null
+@@ -1,57 +0,0 @@
+-/* poppler-link-private.h: qt interface to poppler
+- * Copyright (C) 2016, Albert Astals Cid <aacid@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef _POPPLER_LINK_PRIVATE_H_
+-#define _POPPLER_LINK_PRIVATE_H_
+-
+-class LinkOCGState;
+-
+-namespace Poppler {
+-
+-class LinkPrivate
+-{
+-public:
+- LinkPrivate( const QRectF &area )
+- : linkArea( area )
+- {
+- }
+-
+- virtual ~LinkPrivate()
+- {
+- }
+-
+- QRectF linkArea;
+-};
+-
+-
+-
+-class LinkOCGStatePrivate : public LinkPrivate
+-{
+-public:
+- LinkOCGStatePrivate( const QRectF &area, ::LinkOCGState *plocg )
+- : LinkPrivate( area )
+- , popplerLinkOCGState( plocg )
+- {
+- }
+-
+- ::LinkOCGState *popplerLinkOCGState;
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-link.cc b/qt4/src/poppler-link.cc
+deleted file mode 100644
+index 1e37f5bd..00000000
+--- a/qt4/src/poppler-link.cc
++++ /dev/null
+@@ -1,710 +0,0 @@
+-/* poppler-link.cc: qt interface to poppler
+- * Copyright (C) 2006-2007, 2016, 2017, Albert Astals Cid
+- * Copyright (C) 2007-2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2010 Hib Eris <hib@hiberis.nl>
+- * Copyright (C) 2012, Tobias Koenig <tokoe@kdab.com>
+- * Copyright (C) 2012, Guillermo A. Amaral B. <gamaral@kde.org>
+- * Adapting code from
+- * Copyright (C) 2004 by Enrico Ros <eros.kde@email.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include <poppler-qt4.h>
+-#include <poppler-link-private.h>
+-#include <poppler-private.h>
+-#include <poppler-media.h>
+-
+-#include <QtCore/QStringList>
+-
+-#include "poppler-annotation-private.h"
+-
+-#include "Link.h"
+-#include "Rendition.h"
+-
+-static bool operator==( const Ref &r1, const Ref &r2 )
+-{
+- return r1.num == r2.num && r1.gen == r2.gen;
+-}
+-
+-namespace Poppler {
+-
+-class LinkDestinationPrivate : public QSharedData
+-{
+- public:
+- LinkDestinationPrivate();
+-
+- LinkDestination::Kind kind; // destination type
+- QString name;
+- int pageNum; // page number
+- double left, bottom; // position
+- double right, top;
+- double zoom; // zoom factor
+- bool changeLeft : 1, changeTop : 1; // for destXYZ links, which position
+- bool changeZoom : 1; // components to change
+-};
+-
+- LinkDestinationPrivate::LinkDestinationPrivate()
+- {
+- // sane defaults
+- kind = LinkDestination::destXYZ;
+- pageNum = 0;
+- left = 0;
+- bottom = 0;
+- right = 0;
+- top = 0;
+- zoom = 1;
+- changeLeft = true;
+- changeTop = true;
+- changeZoom = false;
+- }
+-
+-class LinkGotoPrivate : public LinkPrivate
+-{
+- public:
+- LinkGotoPrivate( const QRectF &area, const LinkDestination &dest );
+-
+- QString extFileName;
+- LinkDestination destination;
+-};
+-
+- LinkGotoPrivate::LinkGotoPrivate( const QRectF &area, const LinkDestination &dest )
+- : LinkPrivate( area ), destination( dest )
+- {
+- }
+-
+-class LinkExecutePrivate : public LinkPrivate
+-{
+- public:
+- LinkExecutePrivate( const QRectF &area );
+-
+- QString fileName;
+- QString parameters;
+-};
+-
+- LinkExecutePrivate::LinkExecutePrivate( const QRectF &area )
+- : LinkPrivate( area )
+- {
+- }
+-
+-class LinkBrowsePrivate : public LinkPrivate
+-{
+- public:
+- LinkBrowsePrivate( const QRectF &area );
+-
+- QString url;
+-};
+-
+- LinkBrowsePrivate::LinkBrowsePrivate( const QRectF &area )
+- : LinkPrivate( area )
+- {
+- }
+-
+-class LinkActionPrivate : public LinkPrivate
+-{
+- public:
+- LinkActionPrivate( const QRectF &area );
+-
+- LinkAction::ActionType type;
+-};
+-
+- LinkActionPrivate::LinkActionPrivate( const QRectF &area )
+- : LinkPrivate( area )
+- {
+- }
+-
+-class LinkSoundPrivate : public LinkPrivate
+-{
+- public:
+- LinkSoundPrivate( const QRectF &area );
+- ~LinkSoundPrivate();
+-
+- double volume;
+- bool sync : 1;
+- bool repeat : 1;
+- bool mix : 1;
+- SoundObject *sound;
+-};
+-
+- LinkSoundPrivate::LinkSoundPrivate( const QRectF &area )
+- : LinkPrivate( area ), sound( 0 )
+- {
+- }
+-
+- LinkSoundPrivate::~LinkSoundPrivate()
+- {
+- delete sound;
+- }
+-
+-class LinkRenditionPrivate : public LinkPrivate
+-{
+- public:
+- LinkRenditionPrivate( const QRectF &area, ::MediaRendition *rendition, ::LinkRendition::RenditionOperation operation, const QString &script, const Ref &annotationReference );
+- ~LinkRenditionPrivate();
+-
+- MediaRendition *rendition;
+- LinkRendition::RenditionAction action;
+- QString script;
+- Ref annotationReference;
+-};
+-
+- LinkRenditionPrivate::LinkRenditionPrivate( const QRectF &area, ::MediaRendition *r, ::LinkRendition::RenditionOperation operation, const QString &javaScript, const Ref &ref )
+- : LinkPrivate( area )
+- , rendition( r ? new MediaRendition( r ) : 0 )
+- , action( LinkRendition::PlayRendition )
+- , script( javaScript )
+- , annotationReference( ref )
+- {
+- switch ( operation )
+- {
+- case ::LinkRendition::NoRendition:
+- action = LinkRendition::NoRendition;
+- break;
+- case ::LinkRendition::PlayRendition:
+- action = LinkRendition::PlayRendition;
+- break;
+- case ::LinkRendition::StopRendition:
+- action = LinkRendition::StopRendition;
+- break;
+- case ::LinkRendition::PauseRendition:
+- action = LinkRendition::PauseRendition;
+- break;
+- case ::LinkRendition::ResumeRendition:
+- action = LinkRendition::ResumeRendition;
+- break;
+- }
+- }
+-
+- LinkRenditionPrivate::~LinkRenditionPrivate()
+- {
+- delete rendition;
+- }
+-
+-class LinkJavaScriptPrivate : public LinkPrivate
+-{
+- public:
+- LinkJavaScriptPrivate( const QRectF &area );
+-
+- QString js;
+-};
+-
+- LinkJavaScriptPrivate::LinkJavaScriptPrivate( const QRectF &area )
+- : LinkPrivate( area )
+- {
+- }
+-
+-class LinkMoviePrivate : public LinkPrivate
+-{
+- public:
+- LinkMoviePrivate( const QRectF &area, LinkMovie::Operation operation, const QString &title, const Ref &reference );
+-
+- LinkMovie::Operation operation;
+- QString annotationTitle;
+- Ref annotationReference;
+-};
+-
+- LinkMoviePrivate::LinkMoviePrivate( const QRectF &area, LinkMovie::Operation _operation, const QString &title, const Ref &reference )
+- : LinkPrivate( area ), operation( _operation ), annotationTitle( title ), annotationReference( reference )
+- {
+- }
+-
+- static void cvtUserToDev(::Page *page, double xu, double yu, int *xd, int *yd) {
+- double ctm[6];
+-
+- page->getDefaultCTM(ctm, 72.0, 72.0, 0, false, true);
+- *xd = (int)(ctm[0] * xu + ctm[2] * yu + ctm[4] + 0.5);
+- *yd = (int)(ctm[1] * xu + ctm[3] * yu + ctm[5] + 0.5);
+- }
+-
+- LinkDestination::LinkDestination(const LinkDestinationData &data)
+- : d( new LinkDestinationPrivate )
+- {
+- bool deleteDest = false;
+- LinkDest *ld = data.ld;
+-
+- if ( data.namedDest && !ld && !data.externalDest )
+- {
+- deleteDest = true;
+- ld = data.doc->doc->findDest( data.namedDest );
+- }
+- // in case this destination was named one, and it was not resolved
+- if ( data.namedDest && !ld )
+- {
+- d->name = QString::fromLatin1( data.namedDest->getCString() );
+- }
+-
+- if (!ld) return;
+-
+- if (ld->getKind() == ::destXYZ) d->kind = destXYZ;
+- else if (ld->getKind() == ::destFit) d->kind = destFit;
+- else if (ld->getKind() == ::destFitH) d->kind = destFitH;
+- else if (ld->getKind() == ::destFitV) d->kind = destFitV;
+- else if (ld->getKind() == ::destFitR) d->kind = destFitR;
+- else if (ld->getKind() == ::destFitB) d->kind = destFitB;
+- else if (ld->getKind() == ::destFitBH) d->kind = destFitBH;
+- else if (ld->getKind() == ::destFitBV) d->kind = destFitBV;
+-
+- if ( !ld->isPageRef() ) d->pageNum = ld->getPageNum();
+- else
+- {
+- Ref ref = ld->getPageRef();
+- d->pageNum = data.doc->doc->findPage( ref.num, ref.gen );
+- }
+- double left = ld->getLeft();
+- double bottom = ld->getBottom();
+- double right = ld->getRight();
+- double top = ld->getTop();
+- d->zoom = ld->getZoom();
+- d->changeLeft = ld->getChangeLeft();
+- d->changeTop = ld->getChangeTop();
+- d->changeZoom = ld->getChangeZoom();
+-
+- int leftAux = 0, topAux = 0, rightAux = 0, bottomAux = 0;
+-
+- if (!data.externalDest) {
+- ::Page *page;
+- if (d->pageNum > 0 &&
+- d->pageNum <= data.doc->doc->getNumPages() &&
+- (page = data.doc->doc->getPage( d->pageNum )))
+- {
+- cvtUserToDev( page, left, top, &leftAux, &topAux );
+- cvtUserToDev( page, right, bottom, &rightAux, &bottomAux );
+-
+- d->left = leftAux / (double)page->getCropWidth();
+- d->top = topAux / (double)page->getCropHeight();
+- d->right = rightAux/ (double)page->getCropWidth();
+- d->bottom = bottomAux / (double)page->getCropHeight();
+- }
+- else d->pageNum = 0;
+- }
+-
+- if (deleteDest) delete ld;
+- }
+-
+- LinkDestination::LinkDestination(const QString &description)
+- : d( new LinkDestinationPrivate )
+- {
+- QStringList tokens = description.split( ';' );
+- d->kind = static_cast<Kind>(tokens.at(0).toInt());
+- d->pageNum = tokens.at(1).toInt();
+- d->left = tokens.at(2).toDouble();
+- d->bottom = tokens.at(3).toDouble();
+- d->right = tokens.at(4).toDouble();
+- d->top = tokens.at(5).toDouble();
+- d->zoom = tokens.at(6).toDouble();
+- d->changeLeft = static_cast<bool>(tokens.at(7).toInt());
+- d->changeTop = static_cast<bool>(tokens.at(8).toInt());
+- d->changeZoom = static_cast<bool>(tokens.at(9).toInt());
+- }
+-
+- LinkDestination::LinkDestination(const LinkDestination &other)
+- : d( other.d )
+- {
+- }
+-
+- LinkDestination::~LinkDestination()
+- {
+- }
+-
+- LinkDestination::Kind LinkDestination::kind() const
+- {
+- return d->kind;
+- }
+-
+- int LinkDestination::pageNumber() const
+- {
+- return d->pageNum;
+- }
+-
+- double LinkDestination::left() const
+- {
+- return d->left;
+- }
+-
+- double LinkDestination::bottom() const
+- {
+- return d->bottom;
+- }
+-
+- double LinkDestination::right() const
+- {
+- return d->right;
+- }
+-
+- double LinkDestination::top() const
+- {
+- return d->top;
+- }
+-
+- double LinkDestination::zoom() const
+- {
+- return d->zoom;
+- }
+-
+- bool LinkDestination::isChangeLeft() const
+- {
+- return d->changeLeft;
+- }
+-
+- bool LinkDestination::isChangeTop() const
+- {
+- return d->changeTop;
+- }
+-
+- bool LinkDestination::isChangeZoom() const
+- {
+- return d->changeZoom;
+- }
+-
+- QString LinkDestination::toString() const
+- {
+- QString s = QString::number( (qint8)d->kind );
+- s += ";" + QString::number( d->pageNum );
+- s += ";" + QString::number( d->left );
+- s += ";" + QString::number( d->bottom );
+- s += ";" + QString::number( d->right );
+- s += ";" + QString::number( d->top );
+- s += ";" + QString::number( d->zoom );
+- s += ";" + QString::number( (qint8)d->changeLeft );
+- s += ";" + QString::number( (qint8)d->changeTop );
+- s += ";" + QString::number( (qint8)d->changeZoom );
+- return s;
+- }
+-
+- QString LinkDestination::destinationName() const
+- {
+- return d->name;
+- }
+-
+- LinkDestination& LinkDestination::operator=(const LinkDestination &other)
+- {
+- if ( this == &other )
+- return *this;
+-
+- d = other.d;
+- return *this;
+- }
+-
+-
+- // Link
+- Link::~Link()
+- {
+- delete d_ptr;
+- }
+-
+- Link::Link(const QRectF &linkArea)
+- : d_ptr( new LinkPrivate( linkArea ) )
+- {
+- }
+-
+- Link::Link( LinkPrivate &dd )
+- : d_ptr( &dd )
+- {
+- }
+-
+- Link::LinkType Link::linkType() const
+- {
+- return None;
+- }
+-
+- QRectF Link::linkArea() const
+- {
+- Q_D( const Link );
+- return d->linkArea;
+- }
+-
+- // LinkGoto
+- LinkGoto::LinkGoto( const QRectF &linkArea, QString extFileName, const LinkDestination & destination )
+- : Link( *new LinkGotoPrivate( linkArea, destination ) )
+- {
+- Q_D( LinkGoto );
+- d->extFileName = extFileName;
+- }
+-
+- LinkGoto::~LinkGoto()
+- {
+- }
+-
+- bool LinkGoto::isExternal() const
+- {
+- Q_D( const LinkGoto );
+- return !d->extFileName.isEmpty();
+- }
+-
+- QString LinkGoto::fileName() const
+- {
+- Q_D( const LinkGoto );
+- return d->extFileName;
+- }
+-
+- LinkDestination LinkGoto::destination() const
+- {
+- Q_D( const LinkGoto );
+- return d->destination;
+- }
+-
+- Link::LinkType LinkGoto::linkType() const
+- {
+- return Goto;
+- }
+-
+- // LinkExecute
+- LinkExecute::LinkExecute( const QRectF &linkArea, const QString & file, const QString & params )
+- : Link( *new LinkExecutePrivate( linkArea ) )
+- {
+- Q_D( LinkExecute );
+- d->fileName = file;
+- d->parameters = params;
+- }
+-
+- LinkExecute::~LinkExecute()
+- {
+- }
+-
+- QString LinkExecute::fileName() const
+- {
+- Q_D( const LinkExecute );
+- return d->fileName;
+- }
+- QString LinkExecute::parameters() const
+- {
+- Q_D( const LinkExecute );
+- return d->parameters;
+- }
+-
+- Link::LinkType LinkExecute::linkType() const
+- {
+- return Execute;
+- }
+-
+- // LinkBrowse
+- LinkBrowse::LinkBrowse( const QRectF &linkArea, const QString &url )
+- : Link( *new LinkBrowsePrivate( linkArea ) )
+- {
+- Q_D( LinkBrowse );
+- d->url = url;
+- }
+-
+- LinkBrowse::~LinkBrowse()
+- {
+- }
+-
+- QString LinkBrowse::url() const
+- {
+- Q_D( const LinkBrowse );
+- return d->url;
+- }
+-
+- Link::LinkType LinkBrowse::linkType() const
+- {
+- return Browse;
+- }
+-
+- // LinkAction
+- LinkAction::LinkAction( const QRectF &linkArea, ActionType actionType )
+- : Link( *new LinkActionPrivate( linkArea ) )
+- {
+- Q_D( LinkAction );
+- d->type = actionType;
+- }
+-
+- LinkAction::~LinkAction()
+- {
+- }
+-
+- LinkAction::ActionType LinkAction::actionType() const
+- {
+- Q_D( const LinkAction );
+- return d->type;
+- }
+-
+- Link::LinkType LinkAction::linkType() const
+- {
+- return Action;
+- }
+-
+- // LinkSound
+- LinkSound::LinkSound( const QRectF &linkArea, double volume, bool sync, bool repeat, bool mix, SoundObject *sound )
+- : Link( *new LinkSoundPrivate( linkArea ) )
+- {
+- Q_D( LinkSound );
+- d->volume = volume;
+- d->sync = sync;
+- d->repeat = repeat;
+- d->mix = mix;
+- d->sound = sound;
+- }
+-
+- LinkSound::~LinkSound()
+- {
+- }
+-
+- Link::LinkType LinkSound::linkType() const
+- {
+- return Sound;
+- }
+-
+- double LinkSound::volume() const
+- {
+- Q_D( const LinkSound );
+- return d->volume;
+- }
+-
+- bool LinkSound::synchronous() const
+- {
+- Q_D( const LinkSound );
+- return d->sync;
+- }
+-
+- bool LinkSound::repeat() const
+- {
+- Q_D( const LinkSound );
+- return d->repeat;
+- }
+-
+- bool LinkSound::mix() const
+- {
+- Q_D( const LinkSound );
+- return d->mix;
+- }
+-
+- SoundObject *LinkSound::sound() const
+- {
+- Q_D( const LinkSound );
+- return d->sound;
+- }
+-
+- // LinkRendition
+- LinkRendition::LinkRendition( const QRectF &linkArea, ::MediaRendition *rendition )
+- : Link( *new LinkRenditionPrivate( linkArea, rendition, ::LinkRendition::NoRendition, QString(), Ref() ) )
+- {
+- }
+-
+- LinkRendition::LinkRendition( const QRectF &linkArea, ::MediaRendition *rendition, int operation, const QString &script, const Ref &annotationReference )
+- : Link( *new LinkRenditionPrivate( linkArea, rendition, static_cast<enum ::LinkRendition::RenditionOperation>(operation), script, annotationReference ) )
+- {
+- }
+-
+- LinkRendition::~LinkRendition()
+- {
+- }
+-
+- Link::LinkType LinkRendition::linkType() const
+- {
+- return Rendition;
+- }
+-
+- MediaRendition * LinkRendition::rendition() const
+- {
+- Q_D( const LinkRendition );
+- return d->rendition;
+- }
+-
+- LinkRendition::RenditionAction LinkRendition::action() const
+- {
+- Q_D( const LinkRendition );
+- return d->action;
+- }
+-
+- QString LinkRendition::script() const
+- {
+- Q_D( const LinkRendition );
+- return d->script;
+- }
+-
+- bool LinkRendition::isReferencedAnnotation( const ScreenAnnotation *annotation ) const
+- {
+- Q_D( const LinkRendition );
+- if ( d->annotationReference.num != -1 && d->annotationReference == annotation->d_ptr->pdfObjectReference() )
+- {
+- return true;
+- }
+-
+- return false;
+- }
+-
+- // LinkJavaScript
+- LinkJavaScript::LinkJavaScript( const QRectF &linkArea, const QString &js )
+- : Link( *new LinkJavaScriptPrivate( linkArea ) )
+- {
+- Q_D( LinkJavaScript );
+- d->js = js;
+- }
+-
+- LinkJavaScript::~LinkJavaScript()
+- {
+- }
+-
+- Link::LinkType LinkJavaScript::linkType() const
+- {
+- return JavaScript;
+- }
+-
+- QString LinkJavaScript::script() const
+- {
+- Q_D( const LinkJavaScript );
+- return d->js;
+- }
+-
+- // LinkMovie
+- LinkMovie::LinkMovie( const QRectF &linkArea, Operation operation, const QString &annotationTitle, const Ref &annotationReference )
+- : Link( *new LinkMoviePrivate( linkArea, operation, annotationTitle, annotationReference ) )
+- {
+- }
+-
+- LinkMovie::~LinkMovie()
+- {
+- }
+-
+- Link::LinkType LinkMovie::linkType() const
+- {
+- return Movie;
+- }
+-
+- LinkMovie::Operation LinkMovie::operation() const
+- {
+- Q_D( const LinkMovie );
+- return d->operation;
+- }
+-
+- bool LinkMovie::isReferencedAnnotation( const MovieAnnotation *annotation ) const
+- {
+- Q_D( const LinkMovie );
+- if ( d->annotationReference.num != -1 && d->annotationReference == annotation->d_ptr->pdfObjectReference() )
+- {
+- return true;
+- }
+- else if ( !d->annotationTitle.isNull() )
+- {
+- return ( annotation->movieTitle() == d->annotationTitle );
+- }
+-
+- return false;
+- }
+-
+- LinkOCGState::LinkOCGState( LinkOCGStatePrivate *ocgp )
+- : Link ( *ocgp )
+- {
+- }
+-
+- LinkOCGState::~LinkOCGState()
+- {
+- }
+-
+- Link::LinkType LinkOCGState::linkType() const
+- {
+- return OCGState;
+- }
+-}
+diff --git a/qt4/src/poppler-link.h b/qt4/src/poppler-link.h
+deleted file mode 100644
+index 42a8c1fc..00000000
+--- a/qt4/src/poppler-link.h
++++ /dev/null
+@@ -1,641 +0,0 @@
+-/* poppler-link.h: qt interface to poppler
+- * Copyright (C) 2006, 2013, 2016, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2007-2008, 2010, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2010, 2012, Guillermo Amaral <gamaral@kdab.com>
+- * Copyright (C) 2012, Tobias Koenig <tokoe@kdab.com>
+- * Adapting code from
+- * Copyright (C) 2004 by Enrico Ros <eros.kde@email.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef _POPPLER_LINK_H_
+-#define _POPPLER_LINK_H_
+-
+-#include <QtCore/QString>
+-#include <QtCore/QRectF>
+-#include <QtCore/QSharedDataPointer>
+-#include "poppler-export.h"
+-
+-struct Ref;
+-class MediaRendition;
+-class MovieAnnotation;
+-class ScreenAnnotation;
+-
+-namespace Poppler {
+-
+-class LinkPrivate;
+-class LinkGotoPrivate;
+-class LinkExecutePrivate;
+-class LinkBrowsePrivate;
+-class LinkActionPrivate;
+-class LinkSoundPrivate;
+-class LinkJavaScriptPrivate;
+-class LinkMoviePrivate;
+-class LinkDestinationData;
+-class LinkDestinationPrivate;
+-class LinkRenditionPrivate;
+-class LinkOCGStatePrivate;
+-class MediaRendition;
+-class SoundObject;
+-
+-/**
+- * \short A destination.
+- *
+- * The LinkDestination class represent a "destination" (in terms of visual
+- * viewport to be displayed) for \link Poppler::LinkGoto GoTo\endlink links,
+- * and items in the table of contents (TOC) of a document.
+- *
+- * Coordinates are in 0..1 range
+- */
+-class POPPLER_QT4_EXPORT LinkDestination
+-{
+- public:
+- /**
+- * The possible kind of "viewport destination".
+- */
+- enum Kind
+- {
+- /**
+- * The new viewport is specified in terms of:
+- * - possibile new left coordinate (see isChangeLeft() )
+- * - possibile new top coordinate (see isChangeTop() )
+- * - possibile new zoom level (see isChangeZoom() )
+- */
+- destXYZ = 1,
+- destFit = 2,
+- destFitH = 3,
+- destFitV = 4,
+- destFitR = 5,
+- destFitB = 6,
+- destFitBH = 7,
+- destFitBV = 8
+- };
+-
+- /// \cond PRIVATE
+- LinkDestination(const LinkDestinationData &data);
+- LinkDestination(const QString &description);
+- /// \endcond
+- /**
+- * Copy constructor.
+- */
+- LinkDestination(const LinkDestination &other);
+- /**
+- * Destructor.
+- */
+- ~LinkDestination();
+-
+- // Accessors.
+- /**
+- * The kind of destination.
+- */
+- Kind kind() const;
+- /**
+- * Which page is the target of this destination.
+- *
+- * \note this number is 1-based, so for a 5 pages document the
+- * valid page numbers go from 1 to 5 (both included).
+- */
+- int pageNumber() const;
+- /**
+- * The new left for the viewport of the target page, in case
+- * it is specified to be changed (see isChangeLeft() )
+- */
+- double left() const;
+- double bottom() const;
+- double right() const;
+- /**
+- * The new top for the viewport of the target page, in case
+- * it is specified to be changed (see isChangeTop() )
+- */
+- double top() const;
+- double zoom() const;
+- /**
+- * Whether the left of the viewport on the target page should
+- * be changed.
+- *
+- * \see left()
+- */
+- bool isChangeLeft() const;
+- /**
+- * Whether the top of the viewport on the target page should
+- * be changed.
+- *
+- * \see top()
+- */
+- bool isChangeTop() const;
+- /**
+- * Whether the zoom level should be changed.
+- *
+- * \see zoom()
+- */
+- bool isChangeZoom() const;
+-
+- /**
+- * Return a string repesentation of this destination.
+- */
+- QString toString() const;
+-
+- /**
+- * Return the name of this destination.
+- *
+- * \since 0.12
+- */
+- QString destinationName() const;
+-
+- /**
+- * Assignment operator.
+- */
+- LinkDestination& operator=(const LinkDestination &other);
+-
+- private:
+- QSharedDataPointer< LinkDestinationPrivate > d;
+-};
+-
+-/**
+- * \short Encapsulates data that describes a link.
+- *
+- * This is the base class for links. It makes mandatory for inherited
+- * kind of links to reimplement the linkType() method and return the type of
+- * the link described by the reimplemented class.
+- */
+-class POPPLER_QT4_EXPORT Link
+-{
+- friend class OptContentModel;
+-
+- public:
+- /// \cond PRIVATE
+- Link( const QRectF &linkArea );
+- /// \endcond
+-
+- /**
+- * The possible kinds of link.
+- *
+- * Inherited classes must return an unique identifier
+- */
+- enum LinkType
+- {
+- None, ///< Unknown link
+- Goto, ///< A "Go To" link
+- Execute, ///< A command to be executed
+- Browse, ///< An URL to be browsed (eg "http://poppler.freedesktop.org")
+- Action, ///< A "standard" action to be executed in the viewer
+- Sound, ///< A link representing a sound to be played
+- Movie, ///< An action to be executed on a movie
+- Rendition, ///< A rendition link \since 0.20
+- JavaScript, ///< A JavaScript code to be interpreted \since 0.10
+- OCGState ///< An Optional Content Group state change \since 0.50
+- };
+-
+- /**
+- * The type of this link.
+- */
+- virtual LinkType linkType() const;
+-
+- /**
+- * Destructor.
+- */
+- virtual ~Link();
+-
+- /**
+- * The area of a Page where the link should be active.
+- *
+- * \note this can be a null rect, in this case the link represents
+- * a general action. The area is given in 0..1 range
+- */
+- QRectF linkArea() const;
+-
+- protected:
+- /// \cond PRIVATE
+- Link( LinkPrivate &dd );
+- Q_DECLARE_PRIVATE( Link )
+- LinkPrivate *d_ptr;
+- /// \endcond
+-
+- private:
+- Q_DISABLE_COPY( Link )
+-};
+-
+-
+-/**
+- * \brief Viewport reaching request.
+- *
+- * With a LinkGoto link, the document requests the specified viewport to be
+- * reached (aka, displayed in a viewer). Furthermore, if a file name is specified,
+- * then the destination refers to that document (and not to the document the
+- * current LinkGoto belongs to).
+- */
+-class POPPLER_QT4_EXPORT LinkGoto : public Link
+-{
+- public:
+- /**
+- * Create a new Goto link.
+- *
+- * \param linkArea the active area of the link
+- * \param extFileName if not empty, the file name to be open
+- * \param destination the destination to be reached
+- */
+- LinkGoto( const QRectF &linkArea, QString extFileName, const LinkDestination & destination );
+- /**
+- * Destructor.
+- */
+- ~LinkGoto();
+-
+- /**
+- * Whether the destination is in an external document
+- * (i.e. not the current document)
+- */
+- bool isExternal() const;
+- // query for goto parameters
+- /**
+- * The file name of the document the destination() refers to,
+- * or an empty string in case it refers to the current document.
+- */
+- QString fileName() const;
+- /**
+- * The destination to reach.
+- */
+- LinkDestination destination() const;
+- LinkType linkType() const override;
+-
+- private:
+- Q_DECLARE_PRIVATE( LinkGoto )
+- Q_DISABLE_COPY( LinkGoto )
+-};
+-
+-/**
+- * \brief Generic execution request.
+- *
+- * The LinkExecute link represent a "file name" execution request. The result
+- * depends on the \link fileName() file name\endlink:
+- * - if it is a document, then it is requested to be open
+- * - otherwise, it represents an executable to be run with the specified parameters
+- */
+-class POPPLER_QT4_EXPORT LinkExecute : public Link
+-{
+- public:
+- /**
+- * The file name to be executed
+- */
+- QString fileName() const;
+- /**
+- * The parameters for the command.
+- */
+- QString parameters() const;
+-
+- /**
+- * Create a new Execute link.
+- *
+- * \param linkArea the active area of the link
+- * \param file the file name to be open, or the program to be execute
+- * \param params the parameters for the program to execute
+- */
+- LinkExecute( const QRectF &linkArea, const QString & file, const QString & params );
+- /**
+- * Destructor.
+- */
+- ~LinkExecute();
+- LinkType linkType() const;
+-
+- private:
+- Q_DECLARE_PRIVATE( LinkExecute )
+- Q_DISABLE_COPY( LinkExecute )
+-};
+-
+-/**
+- * \brief An URL to browse.
+- *
+- * The LinkBrowse link holds a URL (eg 'http://poppler.freedesktop.org',
+- * 'mailto:john@some.org', etc) to be open.
+- *
+- * The format of the URL is specified by RFC 2396 (http://www.ietf.org/rfc/rfc2396.txt)
+- */
+-class POPPLER_QT4_EXPORT LinkBrowse : public Link
+-{
+- public:
+- /**
+- * The URL to open
+- */
+- QString url() const;
+-
+- /**
+- * Create a new browse link.
+- *
+- * \param linkArea the active area of the link
+- * \param url the URL to be open
+- */
+- LinkBrowse( const QRectF &linkArea, const QString &url );
+- /**
+- * Destructor.
+- */
+- ~LinkBrowse();
+- LinkType linkType() const;
+-
+- private:
+- Q_DECLARE_PRIVATE( LinkBrowse )
+- Q_DISABLE_COPY( LinkBrowse )
+-};
+-
+-/**
+- * \brief "Standard" action request.
+- *
+- * The LinkAction class represents a link that request a "standard" action
+- * to be performed by the viewer on the displayed document.
+- */
+-class POPPLER_QT4_EXPORT LinkAction : public Link
+-{
+- public:
+- /**
+- * The possible types of actions
+- */
+- enum ActionType { PageFirst = 1,
+- PagePrev = 2,
+- PageNext = 3,
+- PageLast = 4,
+- HistoryBack = 5,
+- HistoryForward = 6,
+- Quit = 7,
+- Presentation = 8,
+- EndPresentation = 9,
+- Find = 10,
+- GoToPage = 11,
+- Close = 12,
+- Print = 13 ///< \since 0.16
+- };
+-
+- /**
+- * The action of the current LinkAction
+- */
+- ActionType actionType() const;
+-
+- /**
+- * Create a new Action link, that executes a specified action
+- * on the document.
+- *
+- * \param linkArea the active area of the link
+- * \param actionType which action should be executed
+- */
+- LinkAction( const QRectF &linkArea, ActionType actionType );
+- /**
+- * Destructor.
+- */
+- ~LinkAction();
+- LinkType linkType() const;
+-
+- private:
+- Q_DECLARE_PRIVATE( LinkAction )
+- Q_DISABLE_COPY( LinkAction )
+-};
+-
+-/**
+- * Sound: a sound to be played.
+- *
+- * \since 0.6
+- */
+-class POPPLER_QT4_EXPORT LinkSound : public Link
+-{
+- public:
+- // create a Link_Sound
+- LinkSound( const QRectF &linkArea, double volume, bool sync, bool repeat, bool mix, SoundObject *sound );
+- /**
+- * Destructor.
+- */
+- virtual ~LinkSound();
+-
+- LinkType linkType() const;
+-
+- /**
+- * The volume to be used when playing the sound.
+- *
+- * The volume is in the range [ -1, 1 ], where:
+- * - a negative number: no volume (mute)
+- * - 1: full volume
+- */
+- double volume() const;
+- /**
+- * Whether the playback of the sound should be synchronous
+- * (thus blocking, waiting for the end of the sound playback).
+- */
+- bool synchronous() const;
+- /**
+- * Whether the sound should be played continuously (that is,
+- * started again when it ends)
+- */
+- bool repeat() const;
+- /**
+- * Whether the playback of this sound can be mixed with
+- * playbacks with other sounds of the same document.
+- *
+- * \note When false, any other playback must be stopped before
+- * playing the sound.
+- */
+- bool mix() const;
+- /**
+- * The sound object to be played
+- */
+- SoundObject *sound() const;
+-
+- private:
+- Q_DECLARE_PRIVATE( LinkSound )
+- Q_DISABLE_COPY( LinkSound )
+-};
+-
+-/**
+- * Rendition: Rendition link.
+- *
+- * \since 0.20
+- */
+-class POPPLER_QT4_EXPORT LinkRendition : public Link
+-{
+- public:
+- /**
+- * Describes the possible rendition actions.
+- *
+- * \since 0.22
+- */
+- enum RenditionAction {
+- NoRendition,
+- PlayRendition,
+- StopRendition,
+- PauseRendition,
+- ResumeRendition
+- };
+-
+- /**
+- * Create a new rendition link.
+- *
+- * \param linkArea the active area of the link
+- * \param rendition the media rendition object. Ownership is taken
+- *
+- * \deprecated Use the constructor that takes all parameter instead
+- */
+- Q_DECL_DEPRECATED LinkRendition( const QRectF &linkArea, ::MediaRendition *rendition );
+-
+- /**
+- * Create a new rendition link.
+- *
+- * \param linkArea the active area of the link
+- * \param rendition the media rendition object. Ownership is taken
+- * \param operation the numeric operation (action) (@see ::LinkRendition::RenditionOperation)
+- * \param script the java script code
+- * \param annotationReference the object reference of the screen annotation associated with this rendition action
+- * \since 0.22
+- */
+- LinkRendition( const QRectF &linkArea, ::MediaRendition *rendition, int operation, const QString &script, const Ref &annotationReference );
+-
+- /**
+- * Destructor.
+- */
+- virtual ~LinkRendition();
+-
+- LinkType linkType() const;
+-
+- /**
+- * Returns the media rendition object if the redition provides one, @c 0 otherwise
+- */
+- MediaRendition *rendition() const;
+-
+- /**
+- * Returns the action that should be executed if a rendition object is provided.
+- *
+- * \since 0.22
+- */
+- RenditionAction action() const;
+-
+- /**
+- * The JS code that shall be executed or an empty string.
+- *
+- * \since 0.22
+- */
+- QString script() const;
+-
+- /**
+- * Returns whether the given @p annotation is the referenced screen annotation for this rendition @p link.
+- *
+- * \since 0.22
+- */
+- bool isReferencedAnnotation( const ScreenAnnotation *annotation ) const;
+-
+- private:
+- Q_DECLARE_PRIVATE( LinkRendition )
+- Q_DISABLE_COPY( LinkRendition )
+-};
+-
+-/**
+- * JavaScript: a JavaScript code to be interpreted.
+- *
+- * \since 0.10
+- */
+-class POPPLER_QT4_EXPORT LinkJavaScript : public Link
+-{
+- public:
+- /**
+- * Create a new JavaScript link.
+- *
+- * \param linkArea the active area of the link
+- * \param js the JS code to be interpreted
+- */
+- LinkJavaScript( const QRectF &linkArea, const QString &js );
+- /**
+- * Destructor.
+- */
+- virtual ~LinkJavaScript();
+-
+- LinkType linkType() const;
+-
+- /**
+- * The JS code
+- */
+- QString script() const;
+-
+- private:
+- Q_DECLARE_PRIVATE( LinkJavaScript )
+- Q_DISABLE_COPY( LinkJavaScript )
+-};
+-
+-/**
+- * Movie: a movie to be played.
+- *
+- * \since 0.20
+- */
+-class POPPLER_QT4_EXPORT LinkMovie : public Link
+-{
+- public:
+- /**
+- * Describes the operation to be performed on the movie.
+- */
+- enum Operation { Play,
+- Stop,
+- Pause,
+- Resume
+- };
+-
+- /**
+- * Create a new Movie link.
+- *
+- * \param linkArea the active area of the link
+- * \param operation the operation to be performed on the movie
+- * \param annotationTitle the title of the movie annotation identifying the movie to be played
+- * \param annotationReference the object reference of the movie annotation identifying the movie to be played
+- *
+- * Note: This constructor is supposed to be used by Poppler::Page only.
+- */
+- LinkMovie( const QRectF &linkArea, Operation operation, const QString &annotationTitle, const Ref &annotationReference );
+- /**
+- * Destructor.
+- */
+- ~LinkMovie();
+- LinkType linkType() const;
+- /**
+- * Returns the operation to be performed on the movie.
+- */
+- Operation operation() const;
+- /**
+- * Returns whether the given @p annotation is the referenced movie annotation for this movie @p link.
+- */
+- bool isReferencedAnnotation( const MovieAnnotation *annotation ) const;
+-
+- private:
+- Q_DECLARE_PRIVATE( LinkMovie )
+- Q_DISABLE_COPY( LinkMovie )
+-};
+-
+-/**
+- * OCGState: an optional content group state change.
+- *
+- * \since 0.50
+- */
+-class POPPLER_QT4_EXPORT LinkOCGState : public Link
+-{
+- public:
+- /**
+- * Create a new OCGState link. This is only used by Poppler::Page.
+- */
+- LinkOCGState( LinkOCGStatePrivate *ocgp );
+- /**
+- * Destructor.
+- */
+- ~LinkOCGState();
+-
+- LinkType linkType() const;
+-
+- private:
+- Q_DECLARE_PRIVATE( LinkOCGState )
+- Q_DISABLE_COPY( LinkOCGState )
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-media.cc b/qt4/src/poppler-media.cc
+deleted file mode 100644
+index f385f02e..00000000
+--- a/qt4/src/poppler-media.cc
++++ /dev/null
+@@ -1,168 +0,0 @@
+-/* poppler-media.cc: qt interface to poppler
+- * Copyright (C) 2012 Guillermo A. Amaral B. <gamaral@kde.org>
+- * Copyright (C) 2013 Albert Astals Cid <aacid@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-media.h"
+-
+-#include "Rendition.h"
+-
+-#include "poppler-private.h"
+-
+-#include <QtCore/QBuffer>
+-
+-#define BUFFER_MAX 4096
+-
+-namespace Poppler
+-{
+-
+-class MediaRenditionPrivate
+-{
+-public:
+-
+- MediaRenditionPrivate(::MediaRendition *rendition)
+- : rendition(rendition)
+- {
+- }
+-
+- ~MediaRenditionPrivate()
+- {
+- delete rendition;
+- }
+-
+- ::MediaRendition *rendition;
+-};
+-
+-MediaRendition::MediaRendition(::MediaRendition *rendition)
+- : d_ptr(new MediaRenditionPrivate(rendition))
+-{
+-}
+-
+-MediaRendition::~MediaRendition()
+-{
+- delete d_ptr;
+-}
+-
+-bool
+-MediaRendition::isValid() const
+-{
+- Q_D( const MediaRendition );
+- return d->rendition && d->rendition->isOk();
+-}
+-
+-QString
+-MediaRendition::contentType() const
+-{
+- Q_ASSERT(isValid() && "Invalid media rendition.");
+- Q_D( const MediaRendition );
+- return UnicodeParsedString(d->rendition->getContentType());
+-}
+-
+-QString
+-MediaRendition::fileName() const
+-{
+- Q_ASSERT(isValid() && "Invalid media rendition.");
+- Q_D( const MediaRendition );
+- return UnicodeParsedString(d->rendition->getFileName());
+-}
+-
+-bool
+-MediaRendition::isEmbedded() const
+-{
+- Q_ASSERT(isValid() && "Invalid media rendition.");
+- Q_D( const MediaRendition );
+- return d->rendition->getIsEmbedded();
+-}
+-
+-QByteArray
+-MediaRendition::data() const
+-{
+- Q_ASSERT(isValid() && "Invalid media rendition.");
+- Q_D( const MediaRendition );
+-
+- Stream *s = d->rendition->getEmbbededStream();
+- if (!s)
+- return QByteArray();
+-
+- QBuffer buffer;
+- Guchar data[BUFFER_MAX];
+- int bread;
+-
+- buffer.open(QIODevice::WriteOnly);
+- s->reset();
+- while ((bread = s->doGetChars(BUFFER_MAX, data)) != 0)
+- buffer.write(reinterpret_cast<const char *>(data), bread);
+- buffer.close();
+-
+- return buffer.data();
+-}
+-
+-bool
+-MediaRendition::autoPlay() const
+-{
+- Q_D( const MediaRendition );
+- if (d->rendition->getBEParameters()) {
+- return d->rendition->getBEParameters()->autoPlay;
+- } else if (d->rendition->getMHParameters()) {
+- return d->rendition->getMHParameters()->autoPlay;
+- } else qDebug("No BE or MH parameters to reference!");
+- return false;
+-}
+-
+-bool
+-MediaRendition::showControls() const
+-{
+- Q_D( const MediaRendition );
+- if (d->rendition->getBEParameters()) {
+- return d->rendition->getBEParameters()->showControls;
+- } else if (d->rendition->getMHParameters()) {
+- return d->rendition->getMHParameters()->showControls;
+- } else qDebug("No BE or MH parameters to reference!");
+- return false;
+-}
+-
+-float
+-MediaRendition::repeatCount() const
+-{
+- Q_D( const MediaRendition );
+- if (d->rendition->getBEParameters()) {
+- return d->rendition->getBEParameters()->repeatCount;
+- } else if (d->rendition->getMHParameters()) {
+- return d->rendition->getMHParameters()->repeatCount;
+- } else qDebug("No BE or MH parameters to reference!");
+- return 1.f;
+-}
+-
+-QSize
+-MediaRendition::size() const
+-{
+- Q_D( const MediaRendition );
+- MediaParameters *mp = 0;
+-
+- if (d->rendition->getBEParameters())
+- mp = d->rendition->getBEParameters();
+- else if (d->rendition->getMHParameters())
+- mp = d->rendition->getMHParameters();
+- else qDebug("No BE or MH parameters to reference!");
+-
+- if (mp)
+- return QSize(mp->windowParams.width, mp->windowParams.height);
+- return QSize();
+-}
+-
+-}
+-
+diff --git a/qt4/src/poppler-media.h b/qt4/src/poppler-media.h
+deleted file mode 100644
+index 34e5c361..00000000
+--- a/qt4/src/poppler-media.h
++++ /dev/null
+@@ -1,100 +0,0 @@
+-/* poppler-media.h: qt interface to poppler
+- * Copyright (C) 2012 Guillermo A. Amaral B. <gamaral@kde.org>
+- * Copyright (C) 2012, 2013 Albert Astals Cid <aacid@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef __POPPLER_MEDIARENDITION_H__
+-#define __POPPLER_MEDIARENDITION_H__
+-
+-#include "poppler-export.h"
+-
+-#include <QtCore/QSize>
+-#include <QtCore/QString>
+-
+-class MediaRendition;
+-class QIODevice;
+-
+-namespace Poppler
+-{
+- class MediaRenditionPrivate;
+-
+- /**
+- Qt wrapper for MediaRendition.
+-
+- \since 0.20
+- */
+- class POPPLER_QT4_EXPORT MediaRendition {
+- public:
+- /**
+- Constructs a MediaRendition. Takes ownership of the passed rendition
+- */
+- MediaRendition(::MediaRendition *rendition);
+- ~MediaRendition();
+-
+- /**
+- Check if wrapper is holding a valid rendition object.
+- */
+- bool isValid() const;
+-
+- /**
+- Returns content type.
+- */
+- QString contentType() const;
+-
+- /**
+- Returns file name.
+- */
+- QString fileName() const;
+-
+- /**
+- Returns true if media is embedded.
+- */
+- bool isEmbedded() const;
+-
+- /**
+- Returns data buffer.
+- */
+- QByteArray data() const;
+-
+- /**
+- Convenience accessor for auto-play parameter.
+- */
+- bool autoPlay() const;
+-
+- /**
+- Convenience accessor for show controls parameter.
+- */
+- bool showControls() const;
+-
+- /**
+- Convenience accessor for repeat count parameter.
+- */
+- float repeatCount() const;
+-
+- /**
+- Convenience accessor for size parameter.
+- */
+- QSize size() const;
+-
+- private:
+- Q_DECLARE_PRIVATE( MediaRendition )
+- MediaRenditionPrivate *d_ptr;
+- Q_DISABLE_COPY( MediaRendition )
+- };
+-}
+-
+-#endif /* __POPPLER_MEDIARENDITION_H__ */
+diff --git a/qt4/src/poppler-movie.cc b/qt4/src/poppler-movie.cc
+deleted file mode 100644
+index a64847c0..00000000
+--- a/qt4/src/poppler-movie.cc
++++ /dev/null
+@@ -1,110 +0,0 @@
+-/* poppler-sound.cc: qt interface to poppler
+- * Copyright (C) 2008, 2010, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2008, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2010, Carlos Garcia Campos <carlosgc@gnome.org>
+- * Copyright (C) 2012, Tobias Koenig <tobias.koenig@kdab.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-
+-#include "Object.h"
+-#include "Annot.h"
+-#include "Movie.h"
+-
+-#include <QtGui/QImage>
+-
+-namespace Poppler
+-{
+-
+-class MovieData
+-{
+-public:
+- MovieData()
+- : m_movieObj( 0 )
+- {
+- }
+-
+- ~MovieData()
+- {
+- delete m_movieObj;
+- }
+-
+- Movie *m_movieObj;
+- QSize m_size;
+- int m_rotation;
+- QImage m_posterImage;
+- MovieObject::PlayMode m_playMode : 3;
+- bool m_showControls : 1;
+-};
+-
+-MovieObject::MovieObject( AnnotMovie *ann )
+-{
+- m_movieData = new MovieData();
+- m_movieData->m_movieObj = ann->getMovie()->copy();
+- //TODO: copy poster image
+-
+- MovieActivationParameters *mp = m_movieData->m_movieObj->getActivationParameters();
+- int width, height;
+- m_movieData->m_movieObj->getFloatingWindowSize(&width, &height);
+- m_movieData->m_size = QSize(width, height);
+- m_movieData->m_rotation = m_movieData->m_movieObj->getRotationAngle();
+- m_movieData->m_showControls = mp->showControls;
+- m_movieData->m_playMode = (MovieObject::PlayMode)mp->repeatMode;
+-}
+-
+-MovieObject::~MovieObject()
+-{
+- delete m_movieData;
+-}
+-
+-QString MovieObject::url() const
+-{
+- GooString * goo = m_movieData->m_movieObj->getFileName();
+- return goo ? QString( goo->getCString() ) : QString();
+-}
+-
+-QSize MovieObject::size() const
+-{
+- return m_movieData->m_size;
+-}
+-
+-int MovieObject::rotation() const
+-{
+- return m_movieData->m_rotation;
+-}
+-
+-bool MovieObject::showControls() const
+-{
+- return m_movieData->m_showControls;
+-}
+-
+-MovieObject::PlayMode MovieObject::playMode() const
+-{
+- return m_movieData->m_playMode;
+-}
+-
+-bool MovieObject::showPosterImage() const
+-{
+- return (m_movieData->m_movieObj->getShowPoster() == gTrue);
+-}
+-
+-QImage MovieObject::posterImage() const
+-{
+- return m_movieData->m_posterImage;
+-}
+-
+-}
+diff --git a/qt4/src/poppler-optcontent-private.h b/qt4/src/poppler-optcontent-private.h
+deleted file mode 100644
+index b5e52999..00000000
+--- a/qt4/src/poppler-optcontent-private.h
++++ /dev/null
+@@ -1,124 +0,0 @@
+-/* poppler-optcontent-private.h: qt interface to poppler
+- *
+- * Copyright (C) 2007, Brad Hards <bradh@kde.org>
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2016, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2017, Hubert Figuière <hub@figuiere.net>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef POPPLER_OPTCONTENT_PRIVATE_H
+-#define POPPLER_OPTCONTENT_PRIVATE_H
+-
+-#include <QtCore/QMap>
+-#include <QtCore/QSet>
+-#include <QtCore/QString>
+-
+-class Array;
+-class OCGs;
+-class OptionalContentGroup;
+-
+-class QModelIndex;
+-
+-namespace Poppler
+-{
+- class OptContentItem;
+- class OptContentModel;
+- class OptContentModelPrivate;
+-
+- class RadioButtonGroup
+- {
+- public:
+- RadioButtonGroup( OptContentModelPrivate *ocModel, Array *rbarray);
+- ~RadioButtonGroup();
+- QSet<OptContentItem *> setItemOn( OptContentItem *itemToSetOn );
+-
+- private:
+- QList<OptContentItem*> itemsInGroup;
+- };
+-
+- class OptContentItem
+- {
+- public:
+- enum ItemState { On, Off, HeadingOnly };
+-
+- OptContentItem( OptionalContentGroup *group );
+- OptContentItem( const QString &label );
+- OptContentItem();
+- ~OptContentItem();
+-
+- QString name() const { return m_name; }
+- ItemState state() const { return m_stateBackup; }
+- void setState(ItemState state, bool obeyRadioGroups, QSet<OptContentItem *> &changedItems);
+-
+- QList<OptContentItem*> childList() { return m_children; }
+-
+- void setParent( OptContentItem* parent) { m_parent = parent; }
+- OptContentItem* parent() { return m_parent; }
+-
+- void addChild( OptContentItem *child );
+-
+- void appendRBGroup( RadioButtonGroup *rbgroup );
+-
+- bool isEnabled() const { return m_enabled; }
+-
+- QSet<OptContentItem*> recurseListChildren(bool includeMe = false) const;
+-
+- private:
+- OptionalContentGroup *m_group;
+- QString m_name;
+- ItemState m_state; // true for ON, false for OFF
+- ItemState m_stateBackup;
+- QList<OptContentItem*> m_children;
+- OptContentItem *m_parent;
+- QList<RadioButtonGroup*> m_rbGroups;
+- bool m_enabled;
+- };
+-
+- class OptContentModelPrivate
+- {
+- public:
+- OptContentModelPrivate( OptContentModel *qq, OCGs *optContent );
+- ~OptContentModelPrivate();
+-
+- void parseRBGroupsArray( Array *rBGroupArray );
+- OptContentItem *nodeFromIndex(const QModelIndex &index, bool canBeNull = false) const;
+- QModelIndex indexFromItem(OptContentItem *node, int column) const;
+-
+- /**
+- Get the OptContentItem corresponding to a given reference value.
+-
+- \param ref the reference number (e.g. from Object.getRefNum()) to look up
+-
+- \return the matching optional content item, or null if the reference wasn't found
+- */
+- OptContentItem *itemFromRef( const QString &ref ) const;
+- void setRootNode(OptContentItem *node);
+-
+- OptContentModel *q;
+-
+- QMap<QString, OptContentItem*> m_optContentItems;
+- QList<OptContentItem*> m_headerOptContentItems;
+- QList<RadioButtonGroup*> m_rbgroups;
+- OptContentItem *m_rootNode;
+-
+- private:
+- void addChild( OptContentItem *parent, OptContentItem *child);
+- void parseOrderArray( OptContentItem *parentNode, Array *orderArray );
+- };
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-optcontent.cc b/qt4/src/poppler-optcontent.cc
+deleted file mode 100644
+index 0e7b5345..00000000
+--- a/qt4/src/poppler-optcontent.cc
++++ /dev/null
+@@ -1,456 +0,0 @@
+-/* poppler-optcontent.cc: qt interface to poppler
+- *
+- * Copyright (C) 2007, Brad Hards <bradh@kde.org>
+- * Copyright (C) 2008, 2014, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2008, Carlos Garcia Campos <carlosgc@gnome.org>
+- * Copyright (C) 2015-2017, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2017, Hubert Figuière <hub@figuiere.net>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-optcontent.h"
+-
+-#include "poppler-optcontent-private.h"
+-
+-#include "poppler-private.h"
+-#include "poppler-link-private.h"
+-
+-#include <QtCore/QDebug>
+-#include <QtCore/QtAlgorithms>
+-
+-#include "poppler/OptionalContent.h"
+-#include "poppler/Link.h"
+-
+-namespace Poppler
+-{
+-
+- RadioButtonGroup::RadioButtonGroup( OptContentModelPrivate *ocModel, Array *rbarray )
+- {
+- itemsInGroup.reserve( rbarray->getLength() );
+- for (int i = 0; i < rbarray->getLength(); ++i) {
+- Object ref = rbarray->getNF( i );
+- if ( ! ref.isRef() ) {
+- qDebug() << "expected ref, but got:" << ref.getType();
+- }
+- OptContentItem *item = ocModel->itemFromRef( QString::number(ref.getRefNum() ) );
+- itemsInGroup.append( item );
+- }
+- for (int i = 0; i < itemsInGroup.size(); ++i) {
+- OptContentItem *item = itemsInGroup.at(i);
+- item->appendRBGroup( this );
+- }
+- }
+-
+- RadioButtonGroup::~RadioButtonGroup()
+- {
+- }
+-
+- QSet<OptContentItem *> RadioButtonGroup::setItemOn( OptContentItem *itemToSetOn )
+- {
+- QSet<OptContentItem *> changedItems;
+- for (int i = 0; i < itemsInGroup.size(); ++i) {
+- OptContentItem *thisItem = itemsInGroup.at(i);
+- if (thisItem != itemToSetOn) {
+- QSet<OptContentItem *> newChangedItems;
+- thisItem->setState(OptContentItem::Off, false /*obeyRadioGroups*/, newChangedItems);
+- changedItems += newChangedItems;
+- }
+- }
+- return changedItems;
+- }
+-
+-
+-
+- OptContentItem::OptContentItem( OptionalContentGroup *group )
+- {
+- m_group = group;
+- m_parent = 0;
+- m_name = UnicodeParsedString( group->getName() );
+- if ( group->getState() == OptionalContentGroup::On ) {
+- m_state = OptContentItem::On;
+- } else {
+- m_state = OptContentItem::Off;
+- }
+- m_stateBackup = m_state;
+- m_enabled = true;
+- }
+-
+- OptContentItem::OptContentItem( const QString &label )
+- {
+- m_parent = 0;
+- m_name = label;
+- m_group = 0;
+- m_state = OptContentItem::HeadingOnly;
+- m_stateBackup = m_state;
+- m_enabled = true;
+- }
+-
+- OptContentItem::OptContentItem() :
+- m_parent( 0 ), m_enabled(true)
+- {
+- }
+-
+- OptContentItem::~OptContentItem()
+- {
+- }
+-
+- void OptContentItem::appendRBGroup( RadioButtonGroup *rbgroup )
+- {
+- m_rbGroups.append( rbgroup );
+- }
+-
+-
+- void OptContentItem::setState(ItemState state, bool obeyRadioGroups, QSet<OptContentItem *> &changedItems)
+- {
+- if (state == m_state)
+- return;
+-
+- m_state = state;
+- m_stateBackup = m_state;
+- changedItems.insert(this);
+- QSet<OptContentItem *> empty;
+- Q_FOREACH (OptContentItem *child, m_children) {
+- ItemState oldState = child->m_stateBackup;
+- child->setState(state == OptContentItem::On ? child->m_stateBackup : OptContentItem::Off, true /*obeyRadioGroups*/, empty);
+- child->m_enabled = state == OptContentItem::On;
+- child->m_stateBackup = oldState;
+- }
+- if (!m_group || !obeyRadioGroups) {
+- return;
+- }
+- if ( state == OptContentItem::On ) {
+- m_group->setState( OptionalContentGroup::On );
+- for (int i = 0; i < m_rbGroups.size(); ++i) {
+- RadioButtonGroup *rbgroup = m_rbGroups.at(i);
+- changedItems += rbgroup->setItemOn( this );
+- }
+- } else if ( state == OptContentItem::Off ) {
+- m_group->setState( OptionalContentGroup::Off );
+- }
+- }
+-
+- void OptContentItem::addChild( OptContentItem *child )
+- {
+- m_children += child;
+- child->setParent( this );
+- }
+-
+- QSet<OptContentItem*> OptContentItem::recurseListChildren(bool includeMe) const
+- {
+- QSet<OptContentItem*> ret;
+- if (includeMe) {
+- ret.insert(const_cast<OptContentItem*>(this));
+- }
+- Q_FOREACH (OptContentItem *child, m_children) {
+- ret += child->recurseListChildren(true);
+- }
+- return ret;
+- }
+-
+- OptContentModelPrivate::OptContentModelPrivate( OptContentModel *qq, OCGs *optContent )
+- : q(qq)
+- {
+- m_rootNode = new OptContentItem();
+- GooList *ocgs = optContent->getOCGs();
+-
+- for (int i = 0; i < ocgs->getLength(); ++i) {
+- OptionalContentGroup *ocg = static_cast<OptionalContentGroup*>(ocgs->get(i));
+- OptContentItem *node = new OptContentItem( ocg );
+- m_optContentItems.insert( QString::number(ocg->getRef().num), node);
+- }
+-
+- if ( optContent->getOrderArray() == 0 ) {
+- // no Order array, so drop them all at the top level
+- QMapIterator<QString, OptContentItem*> i(m_optContentItems);
+- while ( i.hasNext() ) {
+- i.next();
+- addChild( m_rootNode, i.value() );
+- }
+- } else {
+- parseOrderArray( m_rootNode, optContent->getOrderArray() );
+- }
+-
+- parseRBGroupsArray( optContent->getRBGroupsArray() );
+- }
+-
+- OptContentModelPrivate::~OptContentModelPrivate()
+- {
+- qDeleteAll( m_optContentItems );
+- qDeleteAll( m_rbgroups );
+- qDeleteAll( m_headerOptContentItems );
+- delete m_rootNode;
+- }
+-
+- void OptContentModelPrivate::parseOrderArray( OptContentItem *parentNode, Array *orderArray )
+- {
+- OptContentItem *lastItem = parentNode;
+- for (int i = 0; i < orderArray->getLength(); ++i) {
+- Object orderItem = orderArray->get(i);
+- if ( orderItem.isDict() ) {
+- Object item = orderArray->getNF(i);
+- if (item.isRef() ) {
+- OptContentItem *ocItem = m_optContentItems.value(QString::number(item.getRefNum()), 0);
+- if (ocItem) {
+- addChild( parentNode, ocItem );
+- lastItem = ocItem;
+- } else {
+- qDebug() << "could not find group for object" << item.getRefNum();
+- }
+- }
+- } else if ( (orderItem.isArray()) && (orderItem.arrayGetLength() > 0) ) {
+- parseOrderArray(lastItem, orderItem.getArray());
+- } else if ( orderItem.isString() ) {
+- GooString *label = orderItem.getString();
+- OptContentItem *header = new OptContentItem ( UnicodeParsedString ( label ) );
+- m_headerOptContentItems.append( header );
+- addChild( parentNode, header );
+- parentNode = header;
+- lastItem = header;
+- } else {
+- qDebug() << "something unexpected";
+- }
+- }
+- }
+-
+- void OptContentModelPrivate::parseRBGroupsArray( Array *rBGroupArray )
+- {
+- if (! rBGroupArray) {
+- return;
+- }
+- // This is an array of array(s)
+- for (int i = 0; i < rBGroupArray->getLength(); ++i) {
+- Object rbObj = rBGroupArray->get(i);
+- if ( ! rbObj.isArray() ) {
+- qDebug() << "expected inner array, got:" << rbObj.getType();
+- return;
+- }
+- Array *rbarray = rbObj.getArray();
+- RadioButtonGroup *rbg = new RadioButtonGroup( this, rbarray );
+- m_rbgroups.append( rbg );
+- }
+- }
+-
+- OptContentModel::OptContentModel( OCGs *optContent, QObject *parent)
+- : QAbstractItemModel(parent)
+- {
+- d = new OptContentModelPrivate( this, optContent );
+- }
+-
+- OptContentModel::~OptContentModel()
+- {
+- delete d;
+- }
+-
+- void OptContentModelPrivate::setRootNode(OptContentItem *node)
+- {
+- delete m_rootNode;
+- m_rootNode = node;
+- q->reset();
+- }
+-
+- QModelIndex OptContentModel::index(int row, int column, const QModelIndex &parent) const
+- {
+- if (row < 0 || column != 0) {
+- return QModelIndex();
+- }
+-
+- OptContentItem *parentNode = d->nodeFromIndex( parent );
+- if (row < parentNode->childList().count()) {
+- return createIndex(row, column, parentNode->childList().at(row));
+- }
+- return QModelIndex();
+- }
+-
+- QModelIndex OptContentModel::parent(const QModelIndex &child) const
+- {
+- OptContentItem *childNode = d->nodeFromIndex( child );
+- if (!childNode) {
+- return QModelIndex();
+- }
+- return d->indexFromItem(childNode->parent(), child.column());
+- }
+-
+- QModelIndex OptContentModelPrivate::indexFromItem(OptContentItem *node, int column) const
+- {
+- if (!node) {
+- return QModelIndex();
+- }
+- OptContentItem *parentNode = node->parent();
+- if (!parentNode) {
+- return QModelIndex();
+- }
+- const int row = parentNode->childList().indexOf(node);
+- return q->createIndex(row, column, node);
+- }
+-
+- int OptContentModel::rowCount(const QModelIndex &parent) const
+- {
+- OptContentItem *parentNode = d->nodeFromIndex( parent );
+- if (!parentNode) {
+- return 0;
+- } else {
+- return parentNode->childList().count();
+- }
+- }
+-
+- int OptContentModel::columnCount(const QModelIndex &parent) const
+- {
+- return 1;
+- }
+-
+-
+- QVariant OptContentModel::data(const QModelIndex &index, int role) const
+- {
+- OptContentItem *node = d->nodeFromIndex(index, true);
+- if (!node) {
+- return QVariant();
+- }
+-
+- switch (role) {
+- case Qt::DisplayRole:
+- return node->name();
+- break;
+- case Qt::EditRole:
+- if (node->state() == OptContentItem::On) {
+- return true;
+- } else if (node->state() == OptContentItem::Off) {
+- return false;
+- }
+- break;
+- case Qt::CheckStateRole:
+- if (node->state() == OptContentItem::On) {
+- return Qt::Checked;
+- } else if (node->state() == OptContentItem::Off) {
+- return Qt::Unchecked;
+- }
+- break;
+- }
+-
+- return QVariant();
+- }
+-
+- bool OptContentModel::setData ( const QModelIndex & index, const QVariant & value, int role )
+- {
+- OptContentItem *node = d->nodeFromIndex(index, true);
+- if (!node) {
+- return false;
+- }
+-
+- switch (role) {
+- case Qt::CheckStateRole:
+- {
+- const bool newvalue = value.toBool();
+- QSet<OptContentItem *> changedItems;
+- node->setState(newvalue ? OptContentItem::On : OptContentItem::Off, true /*obeyRadioGroups*/, changedItems);
+-
+- if (!changedItems.isEmpty()) {
+- changedItems += node->recurseListChildren(false);
+- QModelIndexList indexes;
+- Q_FOREACH (OptContentItem *item, changedItems) {
+- indexes.append(d->indexFromItem(item, 0));
+- }
+- qStableSort(indexes);
+- Q_FOREACH (const QModelIndex &changedIndex, indexes) {
+- emit dataChanged(changedIndex, changedIndex);
+- }
+- return true;
+- }
+- break;
+- }
+- }
+-
+- return false;
+- }
+-
+- Qt::ItemFlags OptContentModel::flags ( const QModelIndex & index ) const
+- {
+- OptContentItem *node = d->nodeFromIndex(index);
+- Qt::ItemFlags itemFlags = Qt::ItemIsSelectable | Qt::ItemIsUserCheckable;
+- if (node->isEnabled()) {
+- itemFlags |= Qt::ItemIsEnabled;
+- }
+- return itemFlags;
+- }
+-
+- QVariant OptContentModel::headerData( int section, Qt::Orientation orientation, int role ) const
+- {
+- return QAbstractItemModel::headerData( section, orientation, role );
+- }
+-
+- void OptContentModel::applyLink( LinkOCGState *link )
+- {
+- ::LinkOCGState *popplerLinkOCGState = static_cast<LinkOCGStatePrivate*>(link->d_ptr)->popplerLinkOCGState;
+-
+- QSet<OptContentItem *> changedItems;
+-
+- GooList *statesList = popplerLinkOCGState->getStateList();
+- for (int i = 0; i < statesList->getLength(); ++i) {
+- ::LinkOCGState::StateList *stateList = (::LinkOCGState::StateList*)statesList->get(i);
+-
+- GooList *refsList = stateList->list;
+- for (int j = 0; j < refsList->getLength(); ++j) {
+- Ref *ref = (Ref *)refsList->get(j);
+- OptContentItem *item = d->itemFromRef(QString::number(ref->num));
+-
+- if (stateList->st == ::LinkOCGState::On) {
+- item->setState(OptContentItem::On, popplerLinkOCGState->getPreserveRB(), changedItems);
+- } else if (stateList->st == ::LinkOCGState::Off) {
+- item->setState(OptContentItem::Off, popplerLinkOCGState->getPreserveRB(), changedItems);
+- } else {
+- OptContentItem::ItemState newState = item->state() == OptContentItem::On ? OptContentItem::Off : OptContentItem::On;
+- item->setState(newState, popplerLinkOCGState->getPreserveRB(), changedItems);
+- }
+- }
+- }
+-
+- if (!changedItems.isEmpty()) {
+- QSet<OptContentItem *> aux;
+- Q_FOREACH (OptContentItem *item, aux) {
+- changedItems += item->recurseListChildren(false);
+- }
+-
+- QModelIndexList indexes;
+- Q_FOREACH (OptContentItem *item, changedItems) {
+- indexes.append(d->indexFromItem(item, 0));
+- }
+- qStableSort(indexes);
+- Q_FOREACH (const QModelIndex &changedIndex, indexes) {
+- emit dataChanged(changedIndex, changedIndex);
+- }
+- }
+- }
+-
+- void OptContentModelPrivate::addChild( OptContentItem *parent, OptContentItem *child )
+- {
+- parent->addChild( child );
+- }
+-
+- OptContentItem* OptContentModelPrivate::itemFromRef( const QString &ref ) const
+- {
+- return m_optContentItems.value(ref, 0);
+- }
+-
+- OptContentItem* OptContentModelPrivate::nodeFromIndex(const QModelIndex &index, bool canBeNull) const
+- {
+- if (index.isValid()) {
+- return static_cast<OptContentItem *>(index.internalPointer());
+- } else {
+- return canBeNull ? 0 : m_rootNode;
+- }
+- }
+-}
+-
+-#include "poppler-optcontent.moc"
+diff --git a/qt4/src/poppler-optcontent.h b/qt4/src/poppler-optcontent.h
+deleted file mode 100644
+index bf00a88d..00000000
+--- a/qt4/src/poppler-optcontent.h
++++ /dev/null
+@@ -1,84 +0,0 @@
+-/* poppler-optcontent.h: qt interface to poppler
+- *
+- * Copyright (C) 2007, Brad Hards <bradh@kde.org>
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2016, Albert Astals Cid <aacid@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef POPPLER_OPTCONTENT_H
+-#define POPPLER_OPTCONTENT_H
+-
+-#include <QtCore/QAbstractListModel>
+-
+-#include "poppler-export.h"
+-#include "poppler-link.h"
+-
+-class OCGs;
+-
+-namespace Poppler
+-{
+- class Document;
+- class OptContentModelPrivate;
+-
+- /**
+- * \brief Model for optional content
+- *
+- * OptContentModel is an item model representing the optional content items
+- * that can be found in PDF documents.
+- *
+- * The model offers a mostly read-only display of the data, allowing to
+- * enable/disable some contents setting the Qt::CheckStateRole data role.
+- *
+- * \since 0.8
+- */
+- class POPPLER_QT4_EXPORT OptContentModel : public QAbstractItemModel
+- {
+- friend class Document;
+-
+- Q_OBJECT
+-
+- public:
+- virtual ~OptContentModel();
+-
+- QModelIndex index(int row, int column, const QModelIndex &parent) const;
+- QModelIndex parent(const QModelIndex &child) const;
+-
+- int rowCount(const QModelIndex &parent = QModelIndex()) const;
+- int columnCount(const QModelIndex &parent) const;
+-
+- QVariant data(const QModelIndex &index, int role) const;
+- virtual bool setData ( const QModelIndex & index, const QVariant & value, int role = Qt::EditRole );
+-
+- Qt::ItemFlags flags ( const QModelIndex & index ) const;
+-
+- virtual QVariant headerData( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const;
+-
+- /**
+- * Applies the Optional Content Changes specified by that link.
+- * \since 0.50
+- */
+- void applyLink( LinkOCGState *link );
+-
+- private:
+- OptContentModel( OCGs *optContent, QObject *parent = 0);
+-
+- friend class OptContentModelPrivate;
+- OptContentModelPrivate *d;
+- };
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-page-private.h b/qt4/src/poppler-page-private.h
+deleted file mode 100644
+index 1cb63e9f..00000000
+--- a/qt4/src/poppler-page-private.h
++++ /dev/null
+@@ -1,57 +0,0 @@
+-/* poppler-page.cc: qt interface to poppler
+- * Copyright (C) 2005, Net Integration Technologies, Inc.
+- * Copyright (C) 2007, 2012, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2015 Adam Reichold <adamreichold@myopera.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef _POPPLER_PAGE_PRIVATE_H_
+-#define _POPPLER_PAGE_PRIVATE_H_
+-
+-#include "CharTypes.h"
+-
+-class QRectF;
+-
+-class LinkAction;
+-class Page;
+-class TextPage;
+-
+-namespace Poppler
+-{
+-
+-class DocumentData;
+-class PageTransition;
+-
+-class PageData {
+-public:
+- Link* convertLinkActionToLink(::LinkAction * a, const QRectF &linkArea);
+-
+- DocumentData *parentDoc;
+- ::Page *page;
+- int index;
+- PageTransition *transition;
+-
+- static Link* convertLinkActionToLink(::LinkAction * a, DocumentData *parentDoc, const QRectF &linkArea);
+-
+- TextPage *prepareTextSearch(const QString &text, Page::Rotation rotate, QVector<Unicode> *u);
+- GBool performSingleTextSearch(TextPage* textPage, QVector<Unicode> &u, double &sLeft, double &sTop, double &sRight, double &sBottom, Page::SearchDirection direction, GBool sCase, GBool sWords);
+- QList<QRectF> performMultipleTextSearch(TextPage* textPage, QVector<Unicode> &u, GBool sCase, GBool sWords);
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-page-transition-private.h b/qt4/src/poppler-page-transition-private.h
+deleted file mode 100644
+index 63febb09..00000000
+--- a/qt4/src/poppler-page-transition-private.h
++++ /dev/null
+@@ -1,28 +0,0 @@
+-/*
+- * Copyright (C) 2005, Albert Astals Cid
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-class Object;
+-
+-namespace Poppler {
+-
+-class PageTransitionParams {
+- public:
+- Object *dictObj;
+-};
+-
+-}
+diff --git a/qt4/src/poppler-page-transition.cc b/qt4/src/poppler-page-transition.cc
+deleted file mode 100644
+index 4fa39edd..00000000
+--- a/qt4/src/poppler-page-transition.cc
++++ /dev/null
+@@ -1,101 +0,0 @@
+-/* PageTransition.cc
+- * Copyright (C) 2005, Net Integration Technologies, Inc.
+- * Copyright (C) 2015, Arseniy Lartsev <arseniy@alumni.chalmers.se>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "PageTransition.h"
+-#include "poppler-page-transition.h"
+-#include "poppler-page-transition-private.h"
+-
+-namespace Poppler {
+-
+-class PageTransitionData
+-{
+- public:
+- PageTransitionData(Object *trans)
+- {
+- pt = new ::PageTransition(trans);
+- }
+-
+- PageTransitionData(const PageTransitionData &ptd)
+- {
+- pt = new ::PageTransition(*ptd.pt);
+- }
+-
+- ~PageTransitionData()
+- {
+- delete pt;
+- }
+-
+- ::PageTransition *pt;
+-};
+-
+-PageTransition::PageTransition(const PageTransitionParams &params)
+-{
+- data = new PageTransitionData(params.dictObj);
+-}
+-
+-PageTransition::PageTransition(const PageTransition &pt)
+-{
+- data = new PageTransitionData(*pt.data);
+-}
+-
+-PageTransition::~PageTransition()
+-{
+- delete data;
+-}
+-
+-PageTransition::Type PageTransition::type() const
+-{
+- return (Poppler::PageTransition::Type)data->pt->getType();
+-}
+-
+-int PageTransition::duration() const
+-{
+- return data->pt->getDuration();
+-}
+-
+-double PageTransition::durationReal() const
+-{
+- return data->pt->getDuration();
+-}
+-
+-PageTransition::Alignment PageTransition::alignment() const
+-{
+- return (Poppler::PageTransition::Alignment)data->pt->getAlignment();
+-}
+-
+-PageTransition::Direction PageTransition::direction() const
+-{
+- return (Poppler::PageTransition::Direction)data->pt->getDirection();
+-}
+-
+-int PageTransition::angle() const
+-{
+- return data->pt->getAngle();
+-}
+-
+-double PageTransition::scale() const
+-{
+- return data->pt->getScale();
+-}
+-bool PageTransition::isRectangular() const
+-{
+- return data->pt->isRectangular();
+-}
+-
+-}
+diff --git a/qt4/src/poppler-page-transition.h b/qt4/src/poppler-page-transition.h
+deleted file mode 100644
+index e92adbd8..00000000
+--- a/qt4/src/poppler-page-transition.h
++++ /dev/null
+@@ -1,158 +0,0 @@
+-/* PageTransition.h
+- * Copyright (C) 2005, Net Integration Technologies, Inc.
+- * Copyright (C) 2005, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2015, Arseniy Lartsev <arseniy@alumni.chalmers.se>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef __PAGETRANSITION_X_H__
+-#define __PAGETRANSITION_X_H__
+-
+-#include "poppler-export.h"
+-
+-#include <QtCore/qglobal.h>
+-
+-namespace Poppler {
+-
+-class PageTransitionParams;
+-class PageTransitionData;
+-
+-/**
+- \brief Describes how a PDF file viewer shall perform the transition
+- from one page to another
+-
+- In PDF files there is a way to specify if the viewer shall use
+- certain effects to perform the transition from one page to
+- another. This feature can be used, e.g., in a PDF-based beamer
+- presentation.
+-
+- This utility class represents the transition effect, and can be
+- used to extract the information from a PDF object.
+-*/
+-
+-
+-class POPPLER_QT4_EXPORT PageTransition {
+- public:
+-
+- /** \brief transition effect that shall be used
+- */
+- // if changed remember to keep in sync with PageTransition.h enum
+- enum Type {
+- Replace = 0,
+- Split,
+- Blinds,
+- Box,
+- Wipe,
+- Dissolve,
+- Glitter,
+- Fly,
+- Push,
+- Cover,
+- Uncover,
+- Fade
+- };
+-
+- /** \brief alignment of the transition effect that shall be used
+- */
+- // if changed remember to keep in sync with PageTransition.h enum
+- enum Alignment {
+- Horizontal = 0,
+- Vertical
+- };
+-
+- /** \brief direction of the transition effect that shall be used
+- */
+- // if changed remember to keep in sync with PageTransition.h enum
+- enum Direction {
+- Inward = 0,
+- Outward
+- };
+-
+- /** \brief Construct a new PageTransition object from a page dictionary.
+-
+- Users of the library will rarely need to construct a
+- PageTransition object themselves. Instead, the method
+- Poppler::Page::transition() can be used to find out if a certain
+- transition effect is specified.
+-
+- @warning In case or error, this method will print an error message to stderr,
+- and construct a default object.
+-
+- @param params an object whose dictionary will be read and
+- parsed. This must be a valid object, whose dictionaries are
+- accessed by the constructor. The object is only accessed by this
+- constructor, and may be deleted after the constructor returns.
+- */
+- PageTransition(const PageTransitionParams &params);
+-
+- /** \brief copy constructor */
+- PageTransition(const PageTransition &pt);
+-
+- /**
+- Destructor
+- */
+- ~PageTransition();
+-
+- /**
+- \brief Get type of the transition.
+- */
+- Type type() const;
+-
+- /**
+- \brief Get duration of the transition in seconds as integer
+-
+- \deprecated This function is left for backward compatibility, use durationReal() instead.
+- */
+- Q_DECL_DEPRECATED int duration() const;
+-
+- /**
+- \brief Get duration of the transition in seconds
+- */
+- double durationReal() const;
+-
+- /**
+- \brief Get dimension in which the transition effect occurs.
+- */
+- Alignment alignment() const;
+-
+- /**
+- \brief Get direction of motion of the transition effect.
+- */
+- Direction direction() const;
+-
+- /**
+- \brief Get direction in which the transition effect moves.
+- */
+- int angle() const;
+-
+- /**
+- \brief Get starting or ending scale.
+- */
+- double scale() const;
+-
+- /**
+- \brief Returns true if the area to be flown is rectangular and
+- opaque.
+- */
+- bool isRectangular() const;
+-
+- private:
+- PageTransitionData *data;
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-page.cc b/qt4/src/poppler-page.cc
+deleted file mode 100644
+index ffe6e99c..00000000
+--- a/qt4/src/poppler-page.cc
++++ /dev/null
+@@ -1,810 +0,0 @@
+-/* poppler-page.cc: qt interface to poppler
+- * Copyright (C) 2005, Net Integration Technologies, Inc.
+- * Copyright (C) 2005, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2005-2017, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2005, Stefan Kebekus <stefan.kebekus@math.uni-koeln.de>
+- * Copyright (C) 2006-2011, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+- * Copyright (C) 2009 Shawn Rutledge <shawn.t.rutledge@gmail.com>
+- * Copyright (C) 2010, 2012, Guillermo Amaral <gamaral@kdab.com>
+- * Copyright (C) 2010 Suzuki Toshiya <mpsuzuki@hiroshima-u.ac.jp>
+- * Copyright (C) 2010 Matthias Fauconneau <matthias.fauconneau@gmail.com>
+- * Copyright (C) 2010 Hib Eris <hib@hiberis.nl>
+- * Copyright (C) 2012 Tobias Koenig <tokoe@kdab.com>
+- * Copyright (C) 2012 Fabio D'Urso <fabiodurso@hotmail.it>
+- * Copyright (C) 2012, 2015 Adam Reichold <adamreichold@myopera.com>
+- * Copyright (C) 2012, 2013 Thomas Freitag <Thomas.Freitag@alfa.de>
+- * Copyright (C) 2015 William Bader <williambader@hotmail.com>
+- * Copyright (C) 2016 Arseniy Lartsev <arseniy@alumni.chalmers.se>
+- * Copyright (C) 2017 Adrian Johnson <ajohnson@redneon.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtCore/QHash>
+-#include <QtCore/QMap>
+-#include <QtCore/QVarLengthArray>
+-#include <QtGui/QImage>
+-#include <QtGui/QPainter>
+-
+-#include <config.h>
+-#include <PDFDoc.h>
+-#include <Catalog.h>
+-#include <Form.h>
+-#include <ErrorCodes.h>
+-#include <TextOutputDev.h>
+-#include <Annot.h>
+-#include <Link.h>
+-#include <ArthurOutputDev.h>
+-#include <Rendition.h>
+-#if defined(HAVE_SPLASH)
+-#include <SplashOutputDev.h>
+-#include <splash/SplashBitmap.h>
+-#endif
+-
+-#include "poppler-private.h"
+-#include "poppler-page-transition-private.h"
+-#include "poppler-page-private.h"
+-#include "poppler-link-extractor-private.h"
+-#include "poppler-link-private.h"
+-#include "poppler-annotation-private.h"
+-#include "poppler-form.h"
+-#include "poppler-media.h"
+-
+-namespace Poppler {
+-
+-Link* PageData::convertLinkActionToLink(::LinkAction * a, const QRectF &linkArea)
+-{
+- return convertLinkActionToLink(a, parentDoc, linkArea);
+-}
+-
+-Link* PageData::convertLinkActionToLink(::LinkAction * a, DocumentData *parentDoc, const QRectF &linkArea)
+-{
+- if ( !a )
+- return NULL;
+-
+- Link * popplerLink = NULL;
+- switch ( a->getKind() )
+- {
+- case actionGoTo:
+- {
+- LinkGoTo * g = (LinkGoTo *) a;
+- const LinkDestinationData ldd( g->getDest(), g->getNamedDest(), parentDoc, false );
+- // create link: no ext file, namedDest, object pointer
+- popplerLink = new LinkGoto( linkArea, QString::null, LinkDestination( ldd ) );
+- }
+- break;
+-
+- case actionGoToR:
+- {
+- LinkGoToR * g = (LinkGoToR *) a;
+- // copy link file
+- const QString fileName = UnicodeParsedString( g->getFileName() );
+- const LinkDestinationData ldd( g->getDest(), g->getNamedDest(), parentDoc, !fileName.isEmpty() );
+- // ceate link: fileName, namedDest, object pointer
+- popplerLink = new LinkGoto( linkArea, fileName, LinkDestination( ldd ) );
+- }
+- break;
+-
+- case actionLaunch:
+- {
+- LinkLaunch * e = (LinkLaunch *)a;
+- GooString * p = e->getParams();
+- popplerLink = new LinkExecute( linkArea, e->getFileName()->getCString(), p ? p->getCString() : 0 );
+- }
+- break;
+-
+- case actionNamed:
+- {
+- const char * name = ((LinkNamed *)a)->getName()->getCString();
+- if ( !strcmp( name, "NextPage" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::PageNext );
+- else if ( !strcmp( name, "PrevPage" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::PagePrev );
+- else if ( !strcmp( name, "FirstPage" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::PageFirst );
+- else if ( !strcmp( name, "LastPage" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::PageLast );
+- else if ( !strcmp( name, "GoBack" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::HistoryBack );
+- else if ( !strcmp( name, "GoForward" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::HistoryForward );
+- else if ( !strcmp( name, "Quit" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::Quit );
+- else if ( !strcmp( name, "GoToPage" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::GoToPage );
+- else if ( !strcmp( name, "Find" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::Find );
+- else if ( !strcmp( name, "FullScreen" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::Presentation );
+- else if ( !strcmp( name, "Print" ) )
+- popplerLink = new LinkAction( linkArea, LinkAction::Print );
+- else if ( !strcmp( name, "Close" ) )
+- {
+- // acroread closes the document always, doesnt care whether
+- // its presentation mode or not
+- // popplerLink = new LinkAction( linkArea, LinkAction::EndPresentation );
+- popplerLink = new LinkAction( linkArea, LinkAction::Close );
+- }
+- else
+- {
+- // TODO
+- }
+- }
+- break;
+-
+- case actionURI:
+- {
+- popplerLink = new LinkBrowse( linkArea, ((LinkURI *)a)->getURI()->getCString() );
+- }
+- break;
+-
+- case actionSound:
+- {
+- ::LinkSound *ls = (::LinkSound *)a;
+- popplerLink = new LinkSound( linkArea, ls->getVolume(), ls->getSynchronous(), ls->getRepeat(), ls->getMix(), new SoundObject( ls->getSound() ) );
+- }
+- break;
+-
+- case actionJavaScript:
+- {
+- ::LinkJavaScript *ljs = (::LinkJavaScript *)a;
+- popplerLink = new LinkJavaScript( linkArea, UnicodeParsedString(ljs->getScript()) );
+- }
+- break;
+-
+- case actionMovie:
+- {
+- ::LinkMovie *lm = (::LinkMovie *)a;
+-
+- const QString title = ( lm->hasAnnotTitle() ? UnicodeParsedString( lm->getAnnotTitle() ) : QString() );
+-
+- Ref reference;
+- reference.num = reference.gen = -1;
+- if ( lm->hasAnnotRef() )
+- reference = *lm->getAnnotRef();
+-
+- LinkMovie::Operation operation = LinkMovie::Play;
+- switch ( lm->getOperation() )
+- {
+- case ::LinkMovie::operationTypePlay:
+- operation = LinkMovie::Play;
+- break;
+- case ::LinkMovie::operationTypePause:
+- operation = LinkMovie::Pause;
+- break;
+- case ::LinkMovie::operationTypeResume:
+- operation = LinkMovie::Resume;
+- break;
+- case ::LinkMovie::operationTypeStop:
+- operation = LinkMovie::Stop;
+- break;
+- };
+-
+- popplerLink = new LinkMovie( linkArea, operation, title, reference );
+- }
+- break;
+-
+- case actionRendition:
+- {
+- ::LinkRendition *lrn = (::LinkRendition *)a;
+-
+- Ref reference;
+- reference.num = reference.gen = -1;
+- if ( lrn->hasScreenAnnot() )
+- reference = lrn->getScreenAnnot();
+-
+- popplerLink = new LinkRendition( linkArea, lrn->getMedia() ? lrn->getMedia()->copy() : NULL, lrn->getOperation(), UnicodeParsedString( lrn->getScript() ), reference );
+- }
+- break;
+-
+- case actionOCGState:
+- {
+- ::LinkOCGState *plocg = (::LinkOCGState *)a;
+-
+- LinkOCGStatePrivate *locgp = new LinkOCGStatePrivate( linkArea, plocg );
+- popplerLink = new LinkOCGState( locgp );
+- }
+-
+- case actionUnknown:
+- break;
+- }
+-
+- return popplerLink;
+-}
+-
+-inline TextPage *PageData::prepareTextSearch(const QString &text, Page::Rotation rotate, QVector<Unicode> *u)
+-{
+- const QChar * str = text.unicode();
+- const int len = text.length();
+- u->resize(len);
+- for (int i = 0; i < len; ++i) (*u)[i] = str[i].unicode();
+-
+- const int rotation = (int)rotate * 90;
+-
+- // fetch ourselves a textpage
+- TextOutputDev td(NULL, gTrue, 0, gFalse, gFalse);
+- parentDoc->doc->displayPage( &td, index + 1, 72, 72, rotation, false, true, false,
+- NULL, NULL, NULL, NULL, gTrue);
+- TextPage *textPage=td.takeText();
+-
+- return textPage;
+-}
+-
+-inline GBool PageData::performSingleTextSearch(TextPage* textPage, QVector<Unicode> &u, double &sLeft, double &sTop, double &sRight, double &sBottom, Page::SearchDirection direction, GBool sCase, GBool sWords)
+-{
+- if (direction == Page::FromTop)
+- return textPage->findText( u.data(), u.size(),
+- gTrue, gTrue, gFalse, gFalse, sCase, gFalse, sWords, &sLeft, &sTop, &sRight, &sBottom );
+- else if ( direction == Page::NextResult )
+- return textPage->findText( u.data(), u.size(),
+- gFalse, gTrue, gTrue, gFalse, sCase, gFalse, sWords, &sLeft, &sTop, &sRight, &sBottom );
+- else if ( direction == Page::PreviousResult )
+- return textPage->findText( u.data(), u.size(),
+- gFalse, gTrue, gTrue, gFalse, sCase, gTrue, sWords, &sLeft, &sTop, &sRight, &sBottom );
+-
+- return gFalse;
+-}
+-
+-inline QList<QRectF> PageData::performMultipleTextSearch(TextPage* textPage, QVector<Unicode> &u, GBool sCase, GBool sWords)
+-{
+- QList<QRectF> results;
+- double sLeft = 0.0, sTop = 0.0, sRight = 0.0, sBottom = 0.0;
+-
+- while(textPage->findText( u.data(), u.size(),
+- gFalse, gTrue, gTrue, gFalse, sCase, gFalse, sWords, &sLeft, &sTop, &sRight, &sBottom ))
+- {
+- QRectF result;
+-
+- result.setLeft(sLeft);
+- result.setTop(sTop);
+- result.setRight(sRight);
+- result.setBottom(sBottom);
+-
+- results.append(result);
+- }
+-
+- return results;
+-}
+-
+-Page::Page(DocumentData *doc, int index) {
+- m_page = new PageData();
+- m_page->index = index;
+- m_page->parentDoc = doc;
+- m_page->page = doc->doc->getPage(m_page->index + 1);
+- m_page->transition = 0;
+-}
+-
+-Page::~Page()
+-{
+- delete m_page->transition;
+- delete m_page;
+-}
+-
+-QImage Page::renderToImage(double xres, double yres, int x, int y, int w, int h, Rotation rotate) const
+-{
+- int rotation = (int)rotate * 90;
+- QImage img;
+- switch(m_page->parentDoc->m_backend)
+- {
+- case Poppler::Document::SplashBackend:
+- {
+-#if defined(HAVE_SPLASH)
+- SplashColor bgColor;
+- GBool overprintPreview = gFalse;
+-#ifdef SPLASH_CMYK
+- overprintPreview = m_page->parentDoc->m_hints & Document::OverprintPreview ? gTrue : gFalse;
+- if (overprintPreview)
+- {
+- Guchar c, m, y, k;
+-
+- c = 255 - m_page->parentDoc->paperColor.blue();
+- m = 255 - m_page->parentDoc->paperColor.red();
+- y = 255 - m_page->parentDoc->paperColor.green();
+- k = c;
+- if (m < k) {
+- k = m;
+- }
+- if (y < k) {
+- k = y;
+- }
+- bgColor[0] = c - k;
+- bgColor[1] = m - k;
+- bgColor[2] = y - k;
+- bgColor[3] = k;
+- for (int i = 4; i < SPOT_NCOMPS + 4; i++) {
+- bgColor[i] = 0;
+- }
+- }
+- else
+-#endif
+- {
+- bgColor[0] = m_page->parentDoc->paperColor.blue();
+- bgColor[1] = m_page->parentDoc->paperColor.green();
+- bgColor[2] = m_page->parentDoc->paperColor.red();
+- }
+-
+- SplashColorMode colorMode = splashModeXBGR8;
+-#ifdef SPLASH_CMYK
+- if (overprintPreview) colorMode = splashModeDeviceN8;
+-#endif
+-
+- SplashThinLineMode thinLineMode = splashThinLineDefault;
+- if (m_page->parentDoc->m_hints & Document::ThinLineShape) thinLineMode = splashThinLineShape;
+- if (m_page->parentDoc->m_hints & Document::ThinLineSolid) thinLineMode = splashThinLineSolid;
+-
+- const bool ignorePaperColor = m_page->parentDoc->m_hints & Document::IgnorePaperColor;
+-
+- SplashOutputDev splash_output(
+- colorMode, 4,
+- gFalse,
+- ignorePaperColor ? NULL : bgColor,
+- gTrue,
+- thinLineMode,
+- overprintPreview);
+-
+- splash_output.setFontAntialias(m_page->parentDoc->m_hints & Document::TextAntialiasing ? gTrue : gFalse);
+- splash_output.setVectorAntialias(m_page->parentDoc->m_hints & Document::Antialiasing ? gTrue : gFalse);
+- splash_output.setFreeTypeHinting(m_page->parentDoc->m_hints & Document::TextHinting ? gTrue : gFalse,
+- m_page->parentDoc->m_hints & Document::TextSlightHinting ? gTrue : gFalse);
+-
+- splash_output.startDoc(m_page->parentDoc->doc);
+-
+- m_page->parentDoc->doc->displayPageSlice(&splash_output, m_page->index + 1, xres, yres,
+- rotation, false, true, false, x, y, w, h,
+- NULL, NULL, NULL, NULL, gTrue);
+-
+- SplashBitmap *bitmap = splash_output.getBitmap();
+-
+- const int bw = bitmap->getWidth();
+- const int bh = bitmap->getHeight();
+- const int brs = bitmap->getRowSize();
+-
+- // If we use DeviceN8, convert to XBGR8.
+- // If requested, also transfer Splash's internal alpha channel.
+- const SplashBitmap::ConversionMode mode = ignorePaperColor
+- ? SplashBitmap::conversionAlphaPremultiplied
+- : SplashBitmap::conversionOpaque;
+-
+- const QImage::Format format = ignorePaperColor
+- ? QImage::Format_ARGB32_Premultiplied
+- : QImage::Format_RGB32;
+-
+- if (bitmap->convertToXBGR(mode)) {
+- SplashColorPtr data = bitmap->getDataPtr();
+-
+- if (QSysInfo::ByteOrder == QSysInfo::BigEndian) {
+- // Convert byte order from RGBX to XBGR.
+- for (int i = 0; i < bh; ++i) {
+- for (int j = 0; j < bw; ++j) {
+- SplashColorPtr pixel = &data[i * brs + j];
+-
+- qSwap(pixel[0], pixel[3]);
+- qSwap(pixel[1], pixel[2]);
+- }
+- }
+- }
+-
+- // Construct a Qt image sharing the raw bitmap data.
+- img = QImage(data, bw, bh, brs, format).copy();
+- }
+-#endif
+- break;
+- }
+- case Poppler::Document::ArthurBackend:
+- {
+- QSize size = pageSize();
+- QImage tmpimg(w == -1 ? qRound( size.width() * xres / 72.0 ) : w, h == -1 ? qRound( size.height() * yres / 72.0 ) : h, QImage::Format_ARGB32);
+-
+- QPainter painter(&tmpimg);
+- renderToPainter(&painter, xres, yres, x, y, w, h, rotate, DontSaveAndRestore);
+- painter.end();
+- img = tmpimg;
+- break;
+- }
+- }
+-
+- return img;
+-}
+-
+-bool Page::renderToPainter(QPainter* painter, double xres, double yres, int x, int y, int w, int h, Rotation rotate, PainterFlags flags) const
+-{
+- if (!painter)
+- return false;
+-
+- switch(m_page->parentDoc->m_backend)
+- {
+- case Poppler::Document::SplashBackend:
+- return false;
+- case Poppler::Document::ArthurBackend:
+- {
+- const bool savePainter = !(flags & DontSaveAndRestore);
+- if (savePainter)
+- painter->save();
+- if (m_page->parentDoc->m_hints & Document::Antialiasing)
+- painter->setRenderHint(QPainter::Antialiasing);
+- if (m_page->parentDoc->m_hints & Document::TextAntialiasing)
+- painter->setRenderHint(QPainter::TextAntialiasing);
+- painter->translate(x == -1 ? 0 : -x, y == -1 ? 0 : -y);
+- ArthurOutputDev arthur_output(painter);
+- arthur_output.startDoc(m_page->parentDoc->doc->getXRef());
+- m_page->parentDoc->doc->displayPageSlice(&arthur_output,
+- m_page->index + 1,
+- xres,
+- yres,
+- (int)rotate * 90,
+- false,
+- true,
+- false,
+- x,
+- y,
+- w,
+- h);
+- if (savePainter)
+- painter->restore();
+- return true;
+- }
+- }
+- return false;
+-}
+-
+-QImage Page::thumbnail() const
+-{
+- unsigned char* data = 0;
+- int w = 0;
+- int h = 0;
+- int rowstride = 0;
+- GBool r = m_page->page->loadThumb(&data, &w, &h, &rowstride);
+- QImage ret;
+- if (r)
+- {
+- // first construct a temporary image with the data got,
+- // then force a copy of it so we can free the raw thumbnail data
+- ret = QImage(data, w, h, rowstride, QImage::Format_RGB888).copy();
+- gfree(data);
+- }
+- return ret;
+-}
+-
+-QString Page::text(const QRectF &r, TextLayout textLayout) const
+-{
+- TextOutputDev *output_dev;
+- GooString *s;
+- PDFRectangle *rect;
+- QString result;
+-
+- const GBool rawOrder = textLayout == RawOrderLayout;
+- output_dev = new TextOutputDev(0, gFalse, 0, rawOrder, gFalse);
+- m_page->parentDoc->doc->displayPageSlice(output_dev, m_page->index + 1, 72, 72,
+- 0, false, true, false, -1, -1, -1, -1,
+- NULL, NULL, NULL, NULL, gTrue);
+- if (r.isNull())
+- {
+- rect = m_page->page->getCropBox();
+- s = output_dev->getText(rect->x1, rect->y1, rect->x2, rect->y2);
+- }
+- else
+- {
+- s = output_dev->getText(r.left(), r.top(), r.right(), r.bottom());
+- }
+-
+- result = QString::fromUtf8(s->getCString());
+-
+- delete output_dev;
+- delete s;
+- return result;
+-}
+-
+-QString Page::text(const QRectF &r) const
+-{
+- return text(r, PhysicalLayout);
+-}
+-
+-bool Page::search(const QString &text, double &sLeft, double &sTop, double &sRight, double &sBottom, SearchDirection direction, SearchMode caseSensitive, Rotation rotate) const
+-{
+- const GBool sCase = caseSensitive == Page::CaseSensitive ? gTrue : gFalse;
+-
+- QVector<Unicode> u;
+- TextPage *textPage = m_page->prepareTextSearch(text, rotate, &u);
+-
+- const bool found = m_page->performSingleTextSearch(textPage, u, sLeft, sTop, sRight, sBottom, direction, sCase, gFalse);
+-
+- textPage->decRefCnt();
+-
+- return found;
+-}
+-
+-bool Page::search(const QString &text, double &sLeft, double &sTop, double &sRight, double &sBottom, SearchDirection direction, SearchFlags flags, Rotation rotate) const
+-{
+- const GBool sCase = flags.testFlag(IgnoreCase) ? gFalse : gTrue;
+- const GBool sWords = flags.testFlag(WholeWords) ? gTrue : gFalse;
+-
+- QVector<Unicode> u;
+- TextPage *textPage = m_page->prepareTextSearch(text, rotate, &u);
+-
+- const bool found = m_page->performSingleTextSearch(textPage, u, sLeft, sTop, sRight, sBottom, direction, sCase, sWords);
+-
+- textPage->decRefCnt();
+-
+- return found;
+-}
+-
+-bool Page::search(const QString &text, QRectF &rect, SearchDirection direction, SearchMode caseSensitive, Rotation rotate) const
+-{
+- double sLeft, sTop, sRight, sBottom;
+- sLeft = rect.left();
+- sTop = rect.top();
+- sRight = rect.right();
+- sBottom = rect.bottom();
+-
+- bool found = search(text, sLeft, sTop, sRight, sBottom, direction, caseSensitive, rotate);
+-
+- rect.setLeft( sLeft );
+- rect.setTop( sTop );
+- rect.setRight( sRight );
+- rect.setBottom( sBottom );
+-
+- return found;
+-}
+-
+-QList<QRectF> Page::search(const QString &text, SearchMode caseSensitive, Rotation rotate) const
+-{
+- const GBool sCase = caseSensitive == Page::CaseSensitive ? gTrue : gFalse;
+-
+- QVector<Unicode> u;
+- TextPage *textPage = m_page->prepareTextSearch(text, rotate, &u);
+-
+- const QList<QRectF> results = m_page->performMultipleTextSearch(textPage, u, sCase, gFalse);
+-
+- textPage->decRefCnt();
+-
+- return results;
+-}
+-
+-QList<QRectF> Page::search(const QString &text, SearchFlags flags, Rotation rotate) const
+-{
+- const GBool sCase = flags.testFlag(IgnoreCase) ? gFalse : gTrue;
+- const GBool sWords = flags.testFlag(WholeWords) ? gTrue : gFalse;
+-
+- QVector<Unicode> u;
+- TextPage *textPage = m_page->prepareTextSearch(text, rotate, &u);
+-
+- const QList<QRectF> results = m_page->performMultipleTextSearch(textPage, u, sCase, sWords);
+-
+- textPage->decRefCnt();
+-
+- return results;
+-}
+-
+-QList<TextBox*> Page::textList(Rotation rotate) const
+-{
+- TextOutputDev *output_dev;
+-
+- QList<TextBox*> output_list;
+-
+- output_dev = new TextOutputDev(0, gFalse, 0, gFalse, gFalse);
+-
+- int rotation = (int)rotate * 90;
+-
+- m_page->parentDoc->doc->displayPageSlice(output_dev, m_page->index + 1, 72, 72,
+- rotation, false, false, false, -1, -1, -1, -1,
+- NULL, NULL, NULL, NULL, gTrue);
+-
+- TextWordList *word_list = output_dev->makeWordList();
+-
+- if (!word_list) {
+- delete output_dev;
+- return output_list;
+- }
+-
+- QHash<TextWord *, TextBox*> wordBoxMap;
+-
+- output_list.reserve(word_list->getLength());
+- for (int i = 0; i < word_list->getLength(); i++) {
+- TextWord *word = word_list->get(i);
+- GooString *gooWord = word->getText();
+- QString string = QString::fromUtf8(gooWord->getCString());
+- delete gooWord;
+- double xMin, yMin, xMax, yMax;
+- word->getBBox(&xMin, &yMin, &xMax, &yMax);
+-
+- TextBox* text_box = new TextBox(string, QRectF(xMin, yMin, xMax-xMin, yMax-yMin));
+- text_box->m_data->hasSpaceAfter = word->hasSpaceAfter() == gTrue;
+- text_box->m_data->charBBoxes.reserve(word->getLength());
+- for (int j = 0; j < word->getLength(); ++j)
+- {
+- word->getCharBBox(j, &xMin, &yMin, &xMax, &yMax);
+- text_box->m_data->charBBoxes.append(QRectF(xMin, yMin, xMax-xMin, yMax-yMin));
+- }
+-
+- wordBoxMap.insert(word, text_box);
+-
+- output_list.append(text_box);
+- }
+-
+- for (int i = 0; i < word_list->getLength(); i++) {
+- TextWord *word = word_list->get(i);
+- TextBox* text_box = wordBoxMap.value(word);
+- text_box->m_data->nextWord = wordBoxMap.value(word->nextWord());
+- }
+-
+- delete word_list;
+- delete output_dev;
+-
+- return output_list;
+-}
+-
+-PageTransition *Page::transition() const
+-{
+- if (!m_page->transition) {
+- PageTransitionParams params;
+- Object o = m_page->page->getTrans();
+- params.dictObj = &o;
+- if (o.isDict()) m_page->transition = new PageTransition(params);
+- }
+- return m_page->transition;
+-}
+-
+-Link *Page::action( PageAction act ) const
+-{
+- if ( act == Page::Opening || act == Page::Closing )
+- {
+- Object o = m_page->page->getActions();
+- if (!o.isDict())
+- {
+- return 0;
+- }
+- Dict *dict = o.getDict();
+- const char *key = act == Page::Opening ? "O" : "C";
+- Object o2 = dict->lookup((char*)key);
+- ::LinkAction *lact = ::LinkAction::parseAction(&o2, m_page->parentDoc->doc->getCatalog()->getBaseURI() );
+- Link *popplerLink = NULL;
+- if (lact != NULL)
+- {
+- popplerLink = m_page->convertLinkActionToLink(lact, QRectF());
+- delete lact;
+- }
+- return popplerLink;
+- }
+- return 0;
+-}
+-
+-QSizeF Page::pageSizeF() const
+-{
+- Page::Orientation orient = orientation();
+- if ( ( Page::Landscape == orient ) || (Page::Seascape == orient ) ) {
+- return QSizeF( m_page->page->getCropHeight(), m_page->page->getCropWidth() );
+- } else {
+- return QSizeF( m_page->page->getCropWidth(), m_page->page->getCropHeight() );
+- }
+-}
+-
+-QSize Page::pageSize() const
+-{
+- return pageSizeF().toSize();
+-}
+-
+-Page::Orientation Page::orientation() const
+-{
+- const int rotation = m_page->page->getRotate();
+- switch (rotation) {
+- case 90:
+- return Page::Landscape;
+- break;
+- case 180:
+- return Page::UpsideDown;
+- break;
+- case 270:
+- return Page::Seascape;
+- break;
+- default:
+- return Page::Portrait;
+- }
+-}
+-
+-void Page::defaultCTM(double *CTM, double dpiX, double dpiY, int rotate, bool upsideDown)
+-{
+- m_page->page->getDefaultCTM(CTM, dpiX, dpiY, rotate, gFalse, upsideDown);
+-}
+-
+-QList<Link*> Page::links() const
+-{
+- LinkExtractorOutputDev link_dev(m_page);
+- m_page->parentDoc->doc->processLinks(&link_dev, m_page->index + 1);
+- QList<Link*> popplerLinks = link_dev.links();
+-
+- return popplerLinks;
+-}
+-
+-QList<Annotation*> Page::annotations() const
+-{
+- return AnnotationPrivate::findAnnotations(m_page->page, m_page->parentDoc, QSet<Annotation::SubType>());
+-}
+-
+-QList<Annotation*> Page::annotations(const QSet<Annotation::SubType> &subtypes) const
+-{
+- return AnnotationPrivate::findAnnotations(m_page->page, m_page->parentDoc, subtypes);
+-}
+-
+-void Page::addAnnotation( const Annotation *ann )
+-{
+- AnnotationPrivate::addAnnotationToPage(m_page->page, m_page->parentDoc, ann);
+-}
+-
+-void Page::removeAnnotation( const Annotation *ann )
+-{
+- AnnotationPrivate::removeAnnotationFromPage(m_page->page, ann);
+-}
+-
+-QList<FormField*> Page::formFields() const
+-{
+- QList<FormField*> fields;
+- ::Page *p = m_page->page;
+- ::FormPageWidgets * form = p->getFormWidgets();
+- int formcount = form->getNumWidgets();
+- for (int i = 0; i < formcount; ++i)
+- {
+- ::FormWidget *fm = form->getWidget(i);
+- FormField * ff = NULL;
+- switch (fm->getType())
+- {
+- case formButton:
+- {
+- ff = new FormFieldButton(m_page->parentDoc, p, static_cast<FormWidgetButton*>(fm));
+- }
+- break;
+-
+- case formText:
+- {
+- ff = new FormFieldText(m_page->parentDoc, p, static_cast<FormWidgetText*>(fm));
+- }
+- break;
+-
+- case formChoice:
+- {
+- ff = new FormFieldChoice(m_page->parentDoc, p, static_cast<FormWidgetChoice*>(fm));
+- }
+- break;
+-
+- default: ;
+- }
+-
+- if (ff)
+- fields.append(ff);
+- }
+-
+- delete form;
+-
+- return fields;
+-}
+-
+-double Page::duration() const
+-{
+- return m_page->page->getDuration();
+-}
+-
+-QString Page::label() const
+-{
+- GooString goo;
+- if (!m_page->parentDoc->doc->getCatalog()->indexToLabel(m_page->index, &goo))
+- return QString();
+-
+- return UnicodeParsedString(&goo);
+-}
+-
+-
+-}
+diff --git a/qt4/src/poppler-pdf-converter.cc b/qt4/src/poppler-pdf-converter.cc
+deleted file mode 100644
+index 9699b75b..00000000
+--- a/qt4/src/poppler-pdf-converter.cc
++++ /dev/null
+@@ -1,115 +0,0 @@
+-/* poppler-pdf-converter.cc: qt4 interface to poppler
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2008, 2009, Albert Astals Cid <aacid@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-
+-#include "poppler-private.h"
+-#include "poppler-converter-private.h"
+-#include "poppler-qiodeviceoutstream-private.h"
+-
+-#include <QtCore/QFile>
+-
+-#include <ErrorCodes.h>
+-
+-namespace Poppler {
+-
+-class PDFConverterPrivate : public BaseConverterPrivate
+-{
+- public:
+- PDFConverterPrivate();
+-
+- PDFConverter::PDFOptions opts;
+-};
+-
+-PDFConverterPrivate::PDFConverterPrivate()
+- : BaseConverterPrivate(), opts(0)
+-{
+-}
+-
+-
+-PDFConverter::PDFConverter(DocumentData *document)
+- : BaseConverter(*new PDFConverterPrivate())
+-{
+- Q_D(PDFConverter);
+- d->document = document;
+-}
+-
+-PDFConverter::~PDFConverter()
+-{
+-}
+-
+-void PDFConverter::setPDFOptions(PDFConverter::PDFOptions options)
+-{
+- Q_D(PDFConverter);
+- d->opts = options;
+-}
+-
+-PDFConverter::PDFOptions PDFConverter::pdfOptions() const
+-{
+- Q_D(const PDFConverter);
+- return d->opts;
+-}
+-
+-bool PDFConverter::convert()
+-{
+- Q_D(PDFConverter);
+- d->lastError = NoError;
+-
+- if (d->document->locked)
+- {
+- d->lastError = FileLockedError;
+- return false;
+- }
+-
+- QIODevice *dev = d->openDevice();
+- if (!dev)
+- {
+- d->lastError = OpenOutputError;
+- return false;
+- }
+-
+- bool deleteFile = false;
+- if (QFile *file = qobject_cast<QFile*>(dev))
+- deleteFile = !file->exists();
+-
+- int errorCode = errNone;
+- QIODeviceOutStream stream(dev);
+- if (d->opts & WithChanges)
+- {
+- errorCode = d->document->doc->saveAs(&stream);
+- }
+- else
+- {
+- errorCode = d->document->doc->saveWithoutChangesAs(&stream);
+- }
+- d->closeDevice();
+- if (errorCode != errNone)
+- {
+- if (deleteFile)
+- {
+- qobject_cast<QFile*>(dev)->remove();
+- }
+- if (errorCode == errOpenFile) d->lastError = OpenOutputError;
+- else d->lastError = NotSupportedInputFileError;
+- }
+-
+- return (errorCode == errNone);
+-}
+-
+-}
+diff --git a/qt4/src/poppler-private.cc b/qt4/src/poppler-private.cc
+deleted file mode 100644
+index 1338a185..00000000
+--- a/qt4/src/poppler-private.cc
++++ /dev/null
+@@ -1,296 +0,0 @@
+-/* poppler-private.cc: qt interface to poppler
+- * Copyright (C) 2005, Net Integration Technologies, Inc.
+- * Copyright (C) 2006, 2011, 2015, 2017 by Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2008, 2010, 2011 by Pino Toscano <pino@kde.org>
+- * Copyright (C) 2013 by Thomas Freitag <Thomas.Freitag@alfa.de>
+- * Copyright (C) 2013 Adrian Johnson <ajohnson@redneon.com>
+- * Copyright (C) 2016 Jakub Alba <jakubalba@gmail.com>
+- * Inspired on code by
+- * Copyright (C) 2004 by Albert Astals Cid <tsdgeos@terra.es>
+- * Copyright (C) 2004 by Enrico Ros <eros.kde@email.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-private.h"
+-
+-#include <QtCore/QByteArray>
+-#include <QtCore/QDebug>
+-#include <QtCore/QVariant>
+-
+-#include <Link.h>
+-#include <Outline.h>
+-#include <PDFDocEncoding.h>
+-#include <UnicodeMap.h>
+-
+-namespace Poppler {
+-
+-namespace Debug {
+-
+- static void qDebugDebugFunction(const QString &message, const QVariant & /*closure*/)
+- {
+- qDebug() << message;
+- }
+-
+- PopplerDebugFunc debugFunction = qDebugDebugFunction;
+- QVariant debugClosure;
+-
+-}
+-
+- static UnicodeMap *utf8Map = 0;
+-
+- void setDebugErrorFunction(PopplerDebugFunc function, const QVariant &closure)
+- {
+- Debug::debugFunction = function ? function : Debug::qDebugDebugFunction;
+- Debug::debugClosure = closure;
+- }
+-
+- static void qt4ErrorFunction(void * /*data*/, ErrorCategory /*category*/, Goffset pos, char *msg)
+- {
+- QString emsg;
+-
+- if (pos >= 0)
+- {
+- emsg = QString::fromLatin1("Error (%1): ").arg(pos);
+- }
+- else
+- {
+- emsg = QString::fromLatin1("Error: ");
+- }
+- emsg += QString::fromAscii(msg);
+- (*Debug::debugFunction)(emsg, Debug::debugClosure);
+- }
+-
+- QString unicodeToQString(Unicode* u, int len) {
+- if (!utf8Map)
+- {
+- GooString enc("UTF-8");
+- utf8Map = globalParams->getUnicodeMap(&enc);
+- utf8Map->incRefCnt();
+- }
+-
+- // ignore the last character if it is 0x0
+- if ((len > 0) && (u[len - 1] == 0))
+- {
+- --len;
+- }
+-
+- GooString convertedStr;
+- for (int i = 0; i < len; ++i)
+- {
+- char buf[8];
+- const int n = utf8Map->mapUnicode(u[i], buf, sizeof(buf));
+- convertedStr.append(buf, n);
+- }
+-
+- return QString::fromUtf8(convertedStr.getCString(), convertedStr.getLength());
+- }
+-
+- QString UnicodeParsedString(GooString *s1) {
+- if ( !s1 || s1->getLength() == 0 )
+- return QString();
+-
+- char *cString;
+- int stringLength;
+- bool deleteCString;
+- if ( ( s1->getChar(0) & 0xff ) == 0xfe && ( s1->getLength() > 1 && ( s1->getChar(1) & 0xff ) == 0xff ) )
+- {
+- cString = s1->getCString();
+- stringLength = s1->getLength();
+- deleteCString = false;
+- }
+- else
+- {
+- cString = pdfDocEncodingToUTF16(s1, &stringLength);
+- deleteCString = true;
+- }
+-
+- QString result;
+- // i = 2 to skip the unicode marker
+- for ( int i = 2; i < stringLength; i += 2 )
+- {
+- const Unicode u = ( ( cString[i] & 0xff ) << 8 ) | ( cString[i+1] & 0xff );
+- result += QChar( u );
+- }
+- if (deleteCString)
+- delete[] cString;
+- return result;
+- }
+-
+- GooString *QStringToUnicodeGooString(const QString &s) {
+- int len = s.length() * 2 + 2;
+- char *cstring = (char *)gmallocn(len, sizeof(char));
+- cstring[0] = (char)0xfe;
+- cstring[1] = (char)0xff;
+- for (int i = 0; i < s.length(); ++i)
+- {
+- cstring[2+i*2] = s.at(i).row();
+- cstring[3+i*2] = s.at(i).cell();
+- }
+- GooString *ret = new GooString(cstring, len);
+- gfree(cstring);
+- return ret;
+- }
+-
+- GooString *QStringToGooString(const QString &s) {
+- int len = s.length();
+- char *cstring = (char *)gmallocn(s.length(), sizeof(char));
+- for (int i = 0; i < len; ++i)
+- cstring[i] = s.at(i).unicode();
+- GooString *ret = new GooString(cstring, len);
+- gfree(cstring);
+- return ret;
+- }
+-
+- GooString *QDateTimeToUnicodeGooString(const QDateTime &dt) {
+- if (!dt.isValid()) {
+- return NULL;
+- }
+-
+- return QStringToUnicodeGooString(dt.toUTC().toString("yyyyMMddhhmmss+00'00'"));
+- }
+-
+- static void linkActionToTocItem( ::LinkAction * a, DocumentData * doc, QDomElement * e )
+- {
+- if ( !a || !e )
+- return;
+-
+- switch ( a->getKind() )
+- {
+- case actionGoTo:
+- {
+- // page number is contained/referenced in a LinkGoTo
+- LinkGoTo * g = static_cast< LinkGoTo * >( a );
+- LinkDest * destination = g->getDest();
+- if ( !destination && g->getNamedDest() )
+- {
+- // no 'destination' but an internal 'named reference'. we could
+- // get the destination for the page now, but it's VERY time consuming,
+- // so better storing the reference and provide the viewport on demand
+- GooString *s = g->getNamedDest();
+- QChar *charArray = new QChar[s->getLength()];
+- for (int i = 0; i < s->getLength(); ++i) charArray[i] = QChar(s->getCString()[i]);
+- QString aux(charArray, s->getLength());
+- e->setAttribute( "DestinationName", aux );
+- delete[] charArray;
+- }
+- else if ( destination && destination->isOk() )
+- {
+- LinkDestinationData ldd(destination, NULL, doc, false);
+- e->setAttribute( "Destination", LinkDestination(ldd).toString() );
+- }
+- break;
+- }
+- case actionGoToR:
+- {
+- // page number is contained/referenced in a LinkGoToR
+- LinkGoToR * g = static_cast< LinkGoToR * >( a );
+- LinkDest * destination = g->getDest();
+- if ( !destination && g->getNamedDest() )
+- {
+- // no 'destination' but an internal 'named reference'. we could
+- // get the destination for the page now, but it's VERY time consuming,
+- // so better storing the reference and provide the viewport on demand
+- GooString *s = g->getNamedDest();
+- QChar *charArray = new QChar[s->getLength()];
+- for (int i = 0; i < s->getLength(); ++i) charArray[i] = QChar(s->getCString()[i]);
+- QString aux(charArray, s->getLength());
+- e->setAttribute( "DestinationName", aux );
+- delete[] charArray;
+- }
+- else if ( destination && destination->isOk() )
+- {
+- LinkDestinationData ldd(destination, NULL, doc, g->getFileName() != 0);
+- e->setAttribute( "Destination", LinkDestination(ldd).toString() );
+- }
+- e->setAttribute( "ExternalFileName", g->getFileName()->getCString() );
+- break;
+- }
+- case actionURI:
+- {
+- LinkURI * u = static_cast< LinkURI * >( a );
+- e->setAttribute( "DestinationURI", u->getURI()->getCString() );
+- }
+- default: ;
+- }
+- }
+-
+- DocumentData::~DocumentData()
+- {
+- qDeleteAll(m_embeddedFiles);
+- delete (OptContentModel *)m_optContentModel;
+- delete doc;
+- delete m_fontInfoIterator;
+-
+- count --;
+- if ( count == 0 )
+- {
+- utf8Map = 0;
+- delete globalParams;
+- }
+- }
+-
+- void DocumentData::init()
+- {
+- m_fontInfoIterator = 0;
+- m_backend = Document::SplashBackend;
+- paperColor = Qt::white;
+- m_hints = 0;
+- m_optContentModel = 0;
+-
+- if ( count == 0 )
+- {
+- utf8Map = 0;
+- globalParams = new GlobalParams();
+- setErrorCallback(qt4ErrorFunction, NULL);
+- }
+- count ++;
+- }
+-
+-
+- void DocumentData::addTocChildren( QDomDocument * docSyn, QDomNode * parent, GooList * items )
+- {
+- int numItems = items->getLength();
+- for ( int i = 0; i < numItems; ++i )
+- {
+- // iterate over every object in 'items'
+- OutlineItem * outlineItem = (OutlineItem *)items->get( i );
+-
+- // 1. create element using outlineItem's title as tagName
+- QString name;
+- Unicode * uniChar = outlineItem->getTitle();
+- int titleLength = outlineItem->getTitleLength();
+- name = unicodeToQString(uniChar, titleLength);
+- if ( name.isEmpty() )
+- continue;
+-
+- QDomElement item = docSyn->createElement( name );
+- parent->appendChild( item );
+-
+- // 2. find the page the link refers to
+- ::LinkAction * a = outlineItem->getAction();
+- linkActionToTocItem( a, this, &item );
+-
+- item.setAttribute( "Open", QVariant( (bool)outlineItem->isOpen() ).toString() );
+-
+- // 3. recursively descend over children
+- outlineItem->open();
+- GooList * children = outlineItem->getKids();
+- if ( children )
+- addTocChildren( docSyn, &item, children );
+- }
+- }
+-
+-}
+diff --git a/qt4/src/poppler-private.h b/qt4/src/poppler-private.h
+deleted file mode 100644
+index a5ad3f3e..00000000
+--- a/qt4/src/poppler-private.h
++++ /dev/null
+@@ -1,241 +0,0 @@
+-/* poppler-private.h: qt interface to poppler
+- * Copyright (C) 2005, Net Integration Technologies, Inc.
+- * Copyright (C) 2005, 2008, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2006-2009, 2011, 2012, 2017 by Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2007-2009, 2011 by Pino Toscano <pino@kde.org>
+- * Copyright (C) 2011 Andreas Hartmetz <ahartmetz@gmail.com>
+- * Copyright (C) 2011 Hib Eris <hib@hiberis.nl>
+- * Copyright (C) 2012, 2013 Thomas Freitag <Thomas.Freitag@alfa.de>
+- * Copyright (C) 2013 Julien Nabet <serval2412@yahoo.fr>
+- * Copyright (C) 2016 Jakub Alba <jakubalba@gmail.com>
+- * Inspired on code by
+- * Copyright (C) 2004 by Albert Astals Cid <tsdgeos@terra.es>
+- * Copyright (C) 2004 by Enrico Ros <eros.kde@email.it>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef _POPPLER_PRIVATE_H_
+-#define _POPPLER_PRIVATE_H_
+-
+-#include <QtCore/QFile>
+-#include <QtCore/QPointer>
+-#include <QtCore/QVector>
+-
+-#include <config.h>
+-#include <GfxState.h>
+-#include <GlobalParams.h>
+-#include <PDFDoc.h>
+-#include <FontInfo.h>
+-#include <OutputDev.h>
+-#include <Error.h>
+-#if defined(HAVE_SPLASH)
+-#include <SplashOutputDev.h>
+-#endif
+-
+-#include "poppler-qt4.h"
+-#include "poppler-embeddedfile-private.h"
+-
+-class LinkDest;
+-class FormWidget;
+-
+-namespace Poppler {
+-
+- /* borrowed from kpdf */
+- QString unicodeToQString(Unicode* u, int len);
+-
+- QString UnicodeParsedString(GooString *s1);
+-
+- GooString *QStringToUnicodeGooString(const QString &s);
+-
+- GooString *QStringToGooString(const QString &s);
+-
+- GooString *QDateTimeToUnicodeGooString(const QDateTime &dt);
+-
+- void qt4ErrorFunction(int pos, char *msg, va_list args);
+-
+- class LinkDestinationData
+- {
+- public:
+- LinkDestinationData( LinkDest *l, GooString *nd, Poppler::DocumentData *pdfdoc, bool external )
+- : ld(l), namedDest(nd), doc(pdfdoc), externalDest(external)
+- {
+- }
+-
+- LinkDest *ld;
+- GooString *namedDest;
+- Poppler::DocumentData *doc;
+- bool externalDest;
+- };
+-
+- class DocumentData {
+- public:
+- DocumentData(const QString &filePath, GooString *ownerPassword, GooString *userPassword)
+- {
+- init();
+- m_filePath = filePath;
+-
+-#if defined(_WIN32)
+- wchar_t *fileName = new WCHAR[filePath.length()];
+- int length = filePath.toWCharArray(fileName);
+- doc = new PDFDoc(fileName, length, ownerPassword, userPassword);
+- delete[] fileName;
+-#else
+- GooString *fileName = new GooString(QFile::encodeName(filePath));
+- doc = new PDFDoc(fileName, ownerPassword, userPassword);
+-#endif
+-
+- delete ownerPassword;
+- delete userPassword;
+- }
+-
+- DocumentData(const QByteArray &data, GooString *ownerPassword, GooString *userPassword)
+- {
+- fileContents = data;
+- MemStream *str = new MemStream((char*)fileContents.data(), 0, fileContents.length(), Object(objNull));
+- init();
+- doc = new PDFDoc(str, ownerPassword, userPassword);
+- delete ownerPassword;
+- delete userPassword;
+- }
+-
+- void init();
+-
+- ~DocumentData();
+-
+- void addTocChildren( QDomDocument * docSyn, QDomNode * parent, GooList * items );
+-
+- void setPaperColor(const QColor &color)
+- {
+- paperColor = color;
+- }
+-
+- void fillMembers()
+- {
+- m_fontInfoIterator = new FontIterator(0, this);
+- int numEmb = doc->getCatalog()->numEmbeddedFiles();
+- if (!(0 == numEmb)) {
+- // we have some embedded documents, build the list
+- for (int yalv = 0; yalv < numEmb; ++yalv) {
+- FileSpec *fs = doc->getCatalog()->embeddedFile(yalv);
+- m_embeddedFiles.append(new EmbeddedFile(*new EmbeddedFileData(fs)));
+- }
+- }
+- }
+-
+- static Document *checkDocument(DocumentData *doc);
+-
+- PDFDoc *doc;
+- QString m_filePath;
+- QByteArray fileContents;
+- bool locked;
+- FontIterator *m_fontInfoIterator;
+- Document::RenderBackend m_backend;
+- QList<EmbeddedFile*> m_embeddedFiles;
+- QPointer<OptContentModel> m_optContentModel;
+- QColor paperColor;
+- int m_hints;
+- static int count;
+- };
+-
+- class FontInfoData
+- {
+- public:
+- FontInfoData()
+- {
+- isEmbedded = false;
+- isSubset = false;
+- type = FontInfo::unknown;
+- }
+-
+- FontInfoData( const FontInfoData &fid )
+- {
+- fontName = fid.fontName;
+- fontFile = fid.fontFile;
+- isEmbedded = fid.isEmbedded;
+- isSubset = fid.isSubset;
+- type = fid.type;
+- embRef = fid.embRef;
+- }
+-
+- FontInfoData( ::FontInfo* fi )
+- {
+- if (fi->getName()) fontName = fi->getName()->getCString();
+- if (fi->getFile()) fontFile = fi->getFile()->getCString();
+- isEmbedded = fi->getEmbedded();
+- isSubset = fi->getSubset();
+- type = (Poppler::FontInfo::Type)fi->getType();
+- embRef = fi->getEmbRef();
+- }
+-
+- QString fontName;
+- QString fontFile;
+- bool isEmbedded : 1;
+- bool isSubset : 1;
+- FontInfo::Type type;
+- Ref embRef;
+- };
+-
+- class FontIteratorData
+- {
+- public:
+- FontIteratorData( int startPage, DocumentData *dd )
+- : fontInfoScanner( dd->doc, startPage )
+- , totalPages( dd->doc->getNumPages() )
+- , currentPage( qMax( startPage, 0 ) - 1 )
+- {
+- }
+-
+- ~FontIteratorData()
+- {
+- }
+-
+- FontInfoScanner fontInfoScanner;
+- int totalPages;
+- int currentPage;
+- };
+-
+- class TextBoxData
+- {
+- public:
+- TextBoxData()
+- : nextWord(0), hasSpaceAfter(false)
+- {
+- }
+-
+- QString text;
+- QRectF bBox;
+- TextBox *nextWord;
+- QVector<QRectF> charBBoxes; // the boundingRect of each character
+- bool hasSpaceAfter;
+- };
+-
+- class FormFieldData
+- {
+- public:
+- FormFieldData(DocumentData *_doc, ::Page *p, ::FormWidget *w) :
+- doc(_doc), page(p), fm(w)
+- {
+- }
+-
+- DocumentData *doc;
+- ::Page *page;
+- ::FormWidget *fm;
+- QRectF box;
+- };
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-ps-converter.cc b/qt4/src/poppler-ps-converter.cc
+deleted file mode 100644
+index 4b43d8ec..00000000
+--- a/qt4/src/poppler-ps-converter.cc
++++ /dev/null
+@@ -1,280 +0,0 @@
+-/* poppler-ps-converter.cc: qt interface to poppler
+- * Copyright (C) 2007, 2009, 2010, 2015, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2010 Hib Eris <hib@hiberis.nl>
+- * Copyright (C) 2011 Glad Deschrijver <glad.deschrijver@gmail.com>
+- * Copyright (C) 2012 Fabio D'Urso <fabiodurso@hotmail.it>
+- * Copyright (C) 2013 Thomas Freitag <Thomas.Freitag@alfa.de>
+- * Copyright (C) 2014 Adrian Johnson <ajohnson@redneon.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-
+-#include "poppler-private.h"
+-#include "poppler-converter-private.h"
+-
+-#include "PSOutputDev.h"
+-
+-static void outputToQIODevice(void *stream, const char *data, int len)
+-{
+- static_cast<QIODevice*>(stream)->write(data, len);
+-}
+-
+-namespace Poppler {
+-
+-class PSConverterPrivate : public BaseConverterPrivate
+-{
+- public:
+- PSConverterPrivate();
+-
+- QList<int> pageList;
+- QString title;
+- double hDPI;
+- double vDPI;
+- int rotate;
+- int paperWidth;
+- int paperHeight;
+- int marginRight;
+- int marginBottom;
+- int marginLeft;
+- int marginTop;
+- PSConverter::PSOptions opts;
+- void (* pageConvertedCallback)(int page, void *payload);
+- void *pageConvertedPayload;
+-};
+-
+-PSConverterPrivate::PSConverterPrivate()
+- : BaseConverterPrivate(),
+- hDPI(72), vDPI(72), rotate(0), paperWidth(-1), paperHeight(-1),
+- marginRight(0), marginBottom(0), marginLeft(0), marginTop(0),
+- opts(PSConverter::Printing), pageConvertedCallback(0),
+- pageConvertedPayload(0)
+-{
+-}
+-
+-
+-PSConverter::PSConverter(DocumentData *document)
+- : BaseConverter(*new PSConverterPrivate())
+-{
+- Q_D(PSConverter);
+- d->document = document;
+-}
+-
+-PSConverter::~PSConverter()
+-{
+-}
+-
+-void PSConverter::setPageList(const QList<int> &pageList)
+-{
+- Q_D(PSConverter);
+- d->pageList = pageList;
+-}
+-
+-void PSConverter::setTitle(const QString &title)
+-{
+- Q_D(PSConverter);
+- d->title = title;
+-}
+-
+-void PSConverter::setHDPI(double hDPI)
+-{
+- Q_D(PSConverter);
+- d->hDPI = hDPI;
+-}
+-
+-void PSConverter::setVDPI(double vDPI)
+-{
+- Q_D(PSConverter);
+- d->vDPI = vDPI;
+-}
+-
+-void PSConverter::setRotate(int rotate)
+-{
+- Q_D(PSConverter);
+- d->rotate = rotate;
+-}
+-
+-void PSConverter::setPaperWidth(int paperWidth)
+-{
+- Q_D(PSConverter);
+- d->paperWidth = paperWidth;
+-}
+-
+-void PSConverter::setPaperHeight(int paperHeight)
+-{
+- Q_D(PSConverter);
+- d->paperHeight = paperHeight;
+-}
+-
+-void PSConverter::setRightMargin(int marginRight)
+-{
+- Q_D(PSConverter);
+- d->marginRight = marginRight;
+-}
+-
+-void PSConverter::setBottomMargin(int marginBottom)
+-{
+- Q_D(PSConverter);
+- d->marginBottom = marginBottom;
+-}
+-
+-void PSConverter::setLeftMargin(int marginLeft)
+-{
+- Q_D(PSConverter);
+- d->marginLeft = marginLeft;
+-}
+-
+-void PSConverter::setTopMargin(int marginTop)
+-{
+- Q_D(PSConverter);
+- d->marginTop = marginTop;
+-}
+-
+-void PSConverter::setStrictMargins(bool strictMargins)
+-{
+- Q_D(PSConverter);
+- if (strictMargins)
+- d->opts |= StrictMargins;
+- else
+- d->opts &= ~StrictMargins;
+-}
+-
+-void PSConverter::setForceRasterize(bool forceRasterize)
+-{
+- Q_D(PSConverter);
+- if (forceRasterize)
+- d->opts |= ForceRasterization;
+- else
+- d->opts &= ~ForceRasterization;
+-}
+-
+-void PSConverter::setPSOptions(PSConverter::PSOptions options)
+-{
+- Q_D(PSConverter);
+- d->opts = options;
+-}
+-
+-PSConverter::PSOptions PSConverter::psOptions() const
+-{
+- Q_D(const PSConverter);
+- return d->opts;
+-}
+-
+-void PSConverter::setPageConvertedCallback(void (* callback)(int page, void *payload), void *payload)
+-{
+- Q_D(PSConverter);
+- d->pageConvertedCallback = callback;
+- d->pageConvertedPayload = payload;
+-}
+-
+-static GBool annotDisplayDecideCbk(Annot *annot, void *user_data)
+-{
+- if (annot->getType() == Annot::typeWidget)
+- return gTrue; // Never hide forms
+- else
+- return *(GBool*)user_data;
+-}
+-
+-bool PSConverter::convert()
+-{
+- Q_D(PSConverter);
+- d->lastError = NoError;
+-
+- Q_ASSERT(!d->pageList.isEmpty());
+- Q_ASSERT(d->paperWidth != -1);
+- Q_ASSERT(d->paperHeight != -1);
+-
+- if (d->document->locked)
+- {
+- d->lastError = FileLockedError;
+- return false;
+- }
+-
+- QIODevice *dev = d->openDevice();
+- if (!dev)
+- {
+- d->lastError = OpenOutputError;
+- return false;
+- }
+-
+- QByteArray pstitle8Bit = d->title.toLocal8Bit();
+- char* pstitlechar;
+- if (!d->title.isEmpty()) pstitlechar = pstitle8Bit.data();
+- else pstitlechar = 0;
+-
+- std::vector<int> pages;
+- foreach(int page, d->pageList)
+- {
+- pages.push_back(page);
+- }
+-
+- PSOutputDev *psOut = new PSOutputDev(outputToQIODevice, dev,
+- pstitlechar,
+- d->document->doc,
+- pages,
+- (d->opts & PrintToEPS) ? psModeEPS : psModePS,
+- d->paperWidth,
+- d->paperHeight,
+- gFalse,
+- gFalse,
+- d->marginLeft,
+- d->marginBottom,
+- d->paperWidth - d->marginRight,
+- d->paperHeight - d->marginTop,
+- (d->opts & ForceRasterization));
+-
+- if (d->opts & StrictMargins)
+- {
+- double xScale = ((double)d->paperWidth - (double)d->marginLeft - (double)d->marginRight) / (double)d->paperWidth;
+- double yScale = ((double)d->paperHeight - (double)d->marginBottom - (double)d->marginTop) / (double)d->paperHeight;
+- psOut->setScale(xScale, yScale);
+- }
+-
+- if (psOut->isOk())
+- {
+- GBool isPrinting = (d->opts & Printing) ? gTrue : gFalse;
+- GBool showAnnotations = (d->opts & HideAnnotations) ? gFalse : gTrue;
+- foreach(int page, d->pageList)
+- {
+- d->document->doc->displayPage(psOut,
+- page,
+- d->hDPI,
+- d->vDPI,
+- d->rotate,
+- gFalse,
+- gTrue,
+- isPrinting,
+- NULL,
+- NULL,
+- annotDisplayDecideCbk,
+- &showAnnotations, gTrue);
+- if (d->pageConvertedCallback)
+- (*d->pageConvertedCallback)(page, d->pageConvertedPayload);
+- }
+- delete psOut;
+- d->closeDevice();
+- return true;
+- }
+- else
+- {
+- delete psOut;
+- d->closeDevice();
+- return false;
+- }
+-}
+-
+-}
+diff --git a/qt4/src/poppler-qiodeviceoutstream-private.h b/qt4/src/poppler-qiodeviceoutstream-private.h
+deleted file mode 100644
+index d0d20073..00000000
+--- a/qt4/src/poppler-qiodeviceoutstream-private.h
++++ /dev/null
+@@ -1,47 +0,0 @@
+-/* poppler-qiodevicestream-private.h: Qt4 interface to poppler
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2013 Adrian Johnson <ajohnson@redneon.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef POPPLER_QIODEVICESTREAM_PRIVATE_H
+-#define POPPLER_QIODEVICESTREAM_PRIVATE_H
+-
+-#include "Object.h"
+-#include "Stream.h"
+-
+-class QIODevice;
+-
+-namespace Poppler {
+-
+-class QIODeviceOutStream : public OutStream
+-{
+- public:
+- QIODeviceOutStream(QIODevice* device);
+- virtual ~QIODeviceOutStream();
+-
+- virtual void close();
+- virtual Goffset getPos();
+- virtual void put(char c);
+- virtual void printf(const char *format, ...);
+-
+- private:
+- QIODevice *m_device;
+-};
+-
+-}
+-
+-#endif
+diff --git a/qt4/src/poppler-qiodeviceoutstream.cc b/qt4/src/poppler-qiodeviceoutstream.cc
+deleted file mode 100644
+index e3e9f895..00000000
+--- a/qt4/src/poppler-qiodeviceoutstream.cc
++++ /dev/null
+@@ -1,64 +0,0 @@
+-/* poppler-qiodevicestream.cc: Qt4 interface to poppler
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2013 Adrian Johnson <ajohnson@redneon.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qiodeviceoutstream-private.h"
+-
+-#include <QtCore/QIODevice>
+-
+-#include <stdio.h>
+-
+-#define QIODeviceOutStreamBufSize 8192
+-
+-namespace Poppler {
+-
+-QIODeviceOutStream::QIODeviceOutStream(QIODevice* device)
+- : m_device(device)
+-{
+-}
+-
+-QIODeviceOutStream::~QIODeviceOutStream()
+-{
+-}
+-
+-void QIODeviceOutStream::close()
+-{
+-}
+-
+-Goffset QIODeviceOutStream::getPos()
+-{
+- return m_device->pos();
+-}
+-
+-void QIODeviceOutStream::put(char c)
+-{
+- m_device->putChar(c);
+-}
+-
+-void QIODeviceOutStream::printf(const char *format, ...)
+-{
+- va_list ap;
+- va_start(ap, format);
+- char buf[QIODeviceOutStreamBufSize];
+- size_t bufsize = 0;
+- bufsize = qvsnprintf(buf, QIODeviceOutStreamBufSize - 1, format, ap);
+- va_end(ap);
+- m_device->write(buf, bufsize);
+-}
+-
+-}
+diff --git a/qt4/src/poppler-qt4.h b/qt4/src/poppler-qt4.h
+deleted file mode 100644
+index 1b5afb2e..00000000
+--- a/qt4/src/poppler-qt4.h
++++ /dev/null
+@@ -1,1990 +0,0 @@
+-/* poppler-qt.h: qt interface to poppler
+- * Copyright (C) 2005, Net Integration Technologies, Inc.
+- * Copyright (C) 2005, 2007, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2005-2012, 2014, 2015, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2005, Stefan Kebekus <stefan.kebekus@math.uni-koeln.de>
+- * Copyright (C) 2006-2011, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2009 Shawn Rutledge <shawn.t.rutledge@gmail.com>
+- * Copyright (C) 2010 Suzuki Toshiya <mpsuzuki@hiroshima-u.ac.jp>
+- * Copyright (C) 2010 Matthias Fauconneau <matthias.fauconneau@gmail.com>
+- * Copyright (C) 2011 Andreas Hartmetz <ahartmetz@gmail.com>
+- * Copyright (C) 2011 Glad Deschrijver <glad.deschrijver@gmail.com>
+- * Copyright (C) 2012, Guillermo A. Amaral B. <gamaral@kde.org>
+- * Copyright (C) 2012, Fabio D'Urso <fabiodurso@hotmail.it>
+- * Copyright (C) 2012, Tobias Koenig <tobias.koenig@kdab.com>
+- * Copyright (C) 2012, 2014, 2015 Adam Reichold <adamreichold@myopera.com>
+- * Copyright (C) 2012, 2013 Thomas Freitag <Thomas.Freitag@alfa.de>
+- * Copyright (C) 2016 Jakub Alba <jakubalba@gmail.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#ifndef __POPPLER_QT_H__
+-#define __POPPLER_QT_H__
+-
+-#include "poppler-annotation.h"
+-#include "poppler-link.h"
+-#include "poppler-optcontent.h"
+-#include "poppler-page-transition.h"
+-
+-#include <QtCore/QByteArray>
+-#include <QtCore/QDateTime>
+-#include <QtCore/QSet>
+-#include <QtXml/QDomDocument>
+-#include "poppler-export.h"
+-
+-class EmbFile;
+-class Sound;
+-class AnnotMovie;
+-
+-/**
+- The %Poppler Qt4 binding.
+-*/
+-namespace Poppler {
+-
+- class Document;
+- class DocumentData;
+-
+- class PageData;
+-
+- class FormField;
+-
+- class TextBoxData;
+-
+- class PDFConverter;
+- class PSConverter;
+-
+- /**
+- Debug/error function.
+-
+- This function type is used for debugging & error output;
+- the first parameter is the actual message, the second is the unaltered
+- closure argument which was passed to the setDebugErrorFunction call.
+-
+- \since 0.16
+- */
+- typedef void (*PopplerDebugFunc)(const QString & /*message*/, const QVariant & /*closure*/);
+-
+- /**
+- Set a new debug/error output function.
+-
+- If not set, by default error and debug messages will be sent to the
+- Qt \p qDebug() function.
+-
+- \param debugFunction the new debug function
+- \param closure user data which will be passes as-is to the debug function
+-
+- \since 0.16
+- */
+- POPPLER_QT4_EXPORT void setDebugErrorFunction(PopplerDebugFunc debugFunction, const QVariant &closure);
+-
+- /**
+- Describes the physical location of text on a document page
+-
+- This very simple class describes the physical location of text
+- on the page. It consists of
+- - a QString that contains the text
+- - a QRectF that gives a box that describes where on the page
+- the text is found.
+- */
+- class POPPLER_QT4_EXPORT TextBox {
+- friend class Page;
+- public:
+- /**
+- The default constructor sets the \p text and the rectangle that
+- contains the text. Coordinates for the \p bBox are in points =
+- 1/72 of an inch.
+- */
+- TextBox(const QString& text, const QRectF &bBox);
+- /**
+- Destructor.
+- */
+- ~TextBox();
+-
+- /**
+- Returns the text of this text box
+- */
+- QString text() const;
+-
+- /**
+- Returns the position of the text, in point, i.e., 1/72 of
+- an inch
+-
+- \since 0.8
+- */
+- QRectF boundingBox() const;
+-
+- /**
+- Returns the pointer to the next text box, if there is one.
+-
+- Otherwise, it returns a null pointer.
+- */
+- TextBox *nextWord() const;
+-
+- /**
+- Returns the bounding box of the \p i -th characted of the word.
+- */
+- QRectF charBoundingBox(int i) const;
+-
+- /**
+- Returns whether there is a space character after this text box
+- */
+- bool hasSpaceAfter() const;
+-
+- private:
+- Q_DISABLE_COPY(TextBox)
+-
+- TextBoxData *m_data;
+- };
+-
+-
+- class FontInfoData;
+- /**
+- Container class for information about a font within a PDF
+- document
+- */
+- class POPPLER_QT4_EXPORT FontInfo {
+- friend class Document;
+- public:
+- /**
+- The type of font.
+- */
+- enum Type {
+- unknown,
+- Type1,
+- Type1C,
+- Type1COT,
+- Type3,
+- TrueType,
+- TrueTypeOT,
+- CIDType0,
+- CIDType0C,
+- CIDType0COT,
+- CIDTrueType,
+- CIDTrueTypeOT
+- };
+-
+- /// \cond PRIVATE
+- /**
+- Create a new font information container.
+- */
+- FontInfo();
+-
+- /**
+- Create a new font information container.
+- */
+- FontInfo( const FontInfoData &fid );
+- /// \endcond
+-
+- /**
+- Copy constructor.
+- */
+- FontInfo( const FontInfo &fi );
+-
+- /**
+- Destructor.
+- */
+- ~FontInfo();
+-
+- /**
+- The name of the font. Can be QString::null if the font has no name
+- */
+- QString name() const;
+-
+- /**
+- The path of the font file used to represent this font on this system,
+- or a null string is the font is embedded
+- */
+- QString file() const;
+-
+- /**
+- Whether the font is embedded in the file, or not
+-
+- \return true if the font is embedded
+- */
+- bool isEmbedded() const;
+-
+- /**
+- Whether the font provided is only a subset of the full
+- font or not. This only has meaning if the font is embedded.
+-
+- \return true if the font is only a subset
+- */
+- bool isSubset() const;
+-
+- /**
+- The type of font encoding
+-
+- \return a enumerated value corresponding to the font encoding used
+-
+- \sa typeName for a string equivalent
+- */
+- Type type() const;
+-
+- /**
+- The name of the font encoding used
+-
+- \note if you are looking for the name of the font (as opposed to the
+- encoding format used), you probably want name().
+-
+- \sa type for a enumeration version
+- */
+- QString typeName() const;
+-
+- /**
+- Standard assignment operator
+- */
+- FontInfo& operator=( const FontInfo &fi );
+-
+- private:
+- FontInfoData *m_data;
+- };
+-
+-
+- class FontIteratorData;
+- /**
+- Iterator for reading the fonts in a document.
+-
+- FontIterator provides a Java-style iterator for reading the fonts in a
+- document.
+-
+- You can use it in the following way:
+- \code
+-Poppler::FontIterator* it = doc->newFontIterator();
+-while (it->hasNext()) {
+- QList<Poppler::FontInfo> fonts = it->next();
+- // do something with the fonts
+-}
+-// after doing the job, the iterator must be freed
+-delete it;
+- \endcode
+-
+- \since 0.12
+- */
+- class POPPLER_QT4_EXPORT FontIterator {
+- friend class Document;
+- friend class DocumentData;
+- public:
+- /**
+- Destructor.
+- */
+- ~FontIterator();
+-
+- /**
+- Returns the fonts of the current page and then advances the iterator
+- to the next page.
+- */
+- QList<FontInfo> next();
+-
+- /**
+- Checks whether there is at least one more page to iterate, ie returns
+- false when the iterator is beyond the last page.
+- */
+- bool hasNext() const;
+-
+- /**
+- Returns the current page where the iterator is.
+- */
+- int currentPage() const;
+-
+- private:
+- Q_DISABLE_COPY( FontIterator )
+- FontIterator( int, DocumentData *dd );
+-
+- FontIteratorData *d;
+- };
+-
+-
+- class EmbeddedFileData;
+- /**
+- Container class for an embedded file with a PDF document
+- */
+- class POPPLER_QT4_EXPORT EmbeddedFile {
+- friend class DocumentData;
+- friend class AnnotationPrivate;
+- public:
+- /// \cond PRIVATE
+- EmbeddedFile(EmbFile *embfile);
+- /// \endcond
+-
+- /**
+- Destructor.
+- */
+- ~EmbeddedFile();
+-
+- /**
+- The name associated with the file
+- */
+- QString name() const;
+-
+- /**
+- The description associated with the file, if any.
+-
+- This will return an empty QString if there is no description element
+- */
+- QString description() const;
+-
+- /**
+- The size of the file.
+-
+- This will return < 0 if there is no size element
+- */
+- int size() const;
+-
+- /**
+- The modification date for the embedded file, if known.
+- */
+- QDateTime modDate() const;
+-
+- /**
+- The creation date for the embedded file, if known.
+- */
+- QDateTime createDate() const;
+-
+- /**
+- The MD5 checksum of the file.
+-
+- This will return an empty QByteArray if there is no checksum element.
+- */
+- QByteArray checksum() const;
+-
+- /**
+- The MIME type of the file, if known.
+-
+- \since 0.8
+- */
+- QString mimeType() const;
+-
+- /**
+- The data as a byte array
+- */
+- QByteArray data();
+-
+- /**
+- Is the embedded file valid?
+-
+- \since 0.12
+- */
+- bool isValid() const;
+-
+- /**
+- A QDataStream for the actual data?
+- */
+- //QDataStream dataStream() const;
+-
+- private:
+- Q_DISABLE_COPY(EmbeddedFile)
+- EmbeddedFile(EmbeddedFileData &dd);
+-
+- EmbeddedFileData *m_embeddedFile;
+- };
+-
+-
+- /**
+- \brief A page in a document.
+-
+- The Page class represents a single page within a PDF document.
+-
+- You cannot construct a Page directly, but you have to use the Document
+- functions that return a new Page out of an index or a label.
+- */
+- class POPPLER_QT4_EXPORT Page {
+- friend class Document;
+- public:
+- /**
+- Destructor.
+- */
+- ~Page();
+-
+- /**
+- The type of rotation to apply for an operation
+- */
+- enum Rotation { Rotate0 = 0, ///< Do not rotate
+- Rotate90 = 1, ///< Rotate 90 degrees clockwise
+- Rotate180 = 2, ///< Rotate 180 degrees
+- Rotate270 = 3 ///< Rotate 270 degrees clockwise (90 degrees counterclockwise)
+- };
+-
+- /**
+- The kinds of page actions
+- */
+- enum PageAction {
+- Opening, ///< The action when a page is "opened"
+- Closing ///< The action when a page is "closed"
+- };
+-
+- /**
+- How the text is going to be returned
+- \since 0.16
+- */
+- enum TextLayout {
+- PhysicalLayout, ///< The text is layouted to resemble the real page layout
+- RawOrderLayout ///< The text is returned without any type of processing
+- };
+-
+- /**
+- Additional flags for the renderToPainter method
+- \since 0.16
+- */
+- enum PainterFlag {
+- /**
+- Do not save/restore the caller-owned painter.
+-
+- renderToPainter() by default preserves, using save() + restore(),
+- the state of the painter specified; if this is not needed, this
+- flag can avoid this job
+- */
+- DontSaveAndRestore = 0x00000001
+- };
+- Q_DECLARE_FLAGS( PainterFlags, PainterFlag )
+-
+- /**
+- Render the page to a QImage using the current
+- \link Document::renderBackend() Document renderer\endlink.
+-
+- If \p x = \p y = \p w = \p h = -1, the method will automatically
+- compute the size of the image from the horizontal and vertical
+- resolutions specified in \p xres and \p yres. Otherwise, the
+- method renders only a part of the page, specified by the
+- parameters (\p x, \p y, \p w, \p h) in pixel coordinates. The returned
+- QImage then has size (\p w, \p h), independent of the page
+- size.
+-
+- \param x specifies the left x-coordinate of the box, in
+- pixels.
+-
+- \param y specifies the top y-coordinate of the box, in
+- pixels.
+-
+- \param w specifies the width of the box, in pixels.
+-
+- \param h specifies the height of the box, in pixels.
+-
+- \param xres horizontal resolution of the graphics device,
+- in dots per inch
+-
+- \param yres vertical resolution of the graphics device, in
+- dots per inch
+-
+- \param rotate how to rotate the page
+-
+- \warning The parameter (\p x, \p y, \p w, \p h) are not
+- well-tested. Unusual or meaningless parameters may lead to
+- rather unexpected results.
+-
+- \returns a QImage of the page, or a null image on failure.
+-
+- \since 0.6
+- */
+- QImage renderToImage(double xres=72.0, double yres=72.0, int x=-1, int y=-1, int w=-1, int h=-1, Rotation rotate = Rotate0) const;
+-
+- /**
+- Render the page to the specified QPainter using the current
+- \link Document::renderBackend() Document renderer\endlink.
+-
+- If \p x = \p y = \p w = \p h = -1, the method will automatically
+- compute the size of the page area from the horizontal and vertical
+- resolutions specified in \p xres and \p yres. Otherwise, the
+- method renders only a part of the page, specified by the
+- parameters (\p x, \p y, \p w, \p h) in pixel coordinates.
+-
+- \param painter the painter to paint on
+-
+- \param x specifies the left x-coordinate of the box, in
+- pixels.
+-
+- \param y specifies the top y-coordinate of the box, in
+- pixels.
+-
+- \param w specifies the width of the box, in pixels.
+-
+- \param h specifies the height of the box, in pixels.
+-
+- \param xres horizontal resolution of the graphics device,
+- in dots per inch
+-
+- \param yres vertical resolution of the graphics device, in
+- dots per inch
+-
+- \param rotate how to rotate the page
+-
+- \param flags additional painter flags
+-
+- \warning The parameter (\p x, \p y, \p w, \p h) are not
+- well-tested. Unusual or meaningless parameters may lead to
+- rather unexpected results.
+-
+- \returns whether the painting succeeded
+-
+- \note This method is only supported for Arthur
+-
+- \since 0.16
+- */
+- bool renderToPainter(QPainter* painter, double xres=72.0, double yres=72.0, int x=-1, int y=-1, int w=-1, int h=-1,
+- Rotation rotate = Rotate0, PainterFlags flags = 0) const;
+-
+- /**
+- Get the page thumbnail if it exists.
+-
+- \return a QImage of the thumbnail, or a null image
+- if the PDF does not contain one for this page
+-
+- \since 0.12
+- */
+- QImage thumbnail() const;
+-
+- /**
+- Returns the text that is inside a specified rectangle
+-
+- \param rect the rectangle specifying the area of interest,
+- with coordinates given in points, i.e., 1/72th of an inch.
+- If rect is null, all text on the page is given
+-
+- \since 0.16
+- **/
+- QString text(const QRectF &rect, TextLayout textLayout) const;
+-
+- /**
+- Returns the text that is inside a specified rectangle.
+- The text is returned using the physical layout of the page
+-
+- \param rect the rectangle specifying the area of interest,
+- with coordinates given in points, i.e., 1/72th of an inch.
+- If rect is null, all text on the page is given
+- **/
+- QString text(const QRectF &rect) const;
+-
+- /**
+- The starting point for a search
+- */
+- enum SearchDirection { FromTop, ///< Start sorting at the top of the document
+- NextResult, ///< Find the next result, moving "down the page"
+- PreviousResult ///< Find the previous result, moving "up the page"
+- };
+-
+- /**
+- The type of search to perform
+- */
+- enum SearchMode { CaseSensitive, ///< Case differences cause no match in searching
+- CaseInsensitive ///< Case differences are ignored in matching
+- };
+-
+- /**
+- Flags to modify the search behaviour \since 0.31
+- */
+- enum SearchFlag
+- {
+- IgnoreCase = 0x00000001, ///< Case differences are ignored
+- WholeWords = 0x00000002 ///< Only whole words are matched
+- };
+- Q_DECLARE_FLAGS( SearchFlags, SearchFlag )
+-
+- /**
+- Returns true if the specified text was found.
+-
+- \param text the text the search
+- \param rect in all directions is used to return where the text was found, for NextResult and PreviousResult
+- indicates where to continue searching for
+- \param direction in which direction do the search
+- \param caseSensitive be case sensitive?
+- \param rotate the rotation to apply for the search order
+- **/
+- Q_DECL_DEPRECATED bool search(const QString &text, QRectF &rect, SearchDirection direction, SearchMode caseSensitive, Rotation rotate = Rotate0) const;
+-
+- /**
+- Returns true if the specified text was found.
+-
+- \param text the text the search
+- \param rectXXX in all directions is used to return where the text was found, for NextResult and PreviousResult
+- indicates where to continue searching for
+- \param direction in which direction do the search
+- \param caseSensitive be case sensitive?
+- \param rotate the rotation to apply for the search order
+- \since 0.14
+- **/
+- Q_DECL_DEPRECATED bool search(const QString &text, double &rectLeft, double &rectTop, double &rectRight, double &rectBottom, SearchDirection direction, SearchMode caseSensitive, Rotation rotate = Rotate0) const;
+-
+- /**
+- Returns true if the specified text was found.
+-
+- \param text the text the search
+- \param rectXXX in all directions is used to return where the text was found, for NextResult and PreviousResult
+- indicates where to continue searching for
+- \param direction in which direction do the search
+- \param flags the flags to consider during matching
+- \param rotate the rotation to apply for the search order
+-
+- \since 0.31
+- **/
+- bool search(const QString &text, double &rectLeft, double &rectTop, double &rectRight, double &rectBottom, SearchDirection direction, SearchFlags flags = 0, Rotation rotate = Rotate0) const;
+-
+- /**
+- Returns a list of all occurrences of the specified text on the page.
+-
+- \param text the text to search
+- \param caseSensitive whether to be case sensitive
+- \param rotate the rotation to apply for the search order
+-
+- \warning Do not use the returned QRectF as arguments of another search call because of truncation issues if qreal is defined as float.
+-
+- \since 0.22
+- **/
+- Q_DECL_DEPRECATED QList<QRectF> search(const QString &text, SearchMode caseSensitive, Rotation rotate = Rotate0) const;
+-
+- /**
+- Returns a list of all occurrences of the specified text on the page.
+-
+- \param text the text to search
+- \param flags the flags to consider during matching
+- \param rotate the rotation to apply for the search order
+-
+- \warning Do not use the returned QRectF as arguments of another search call because of truncation issues if qreal is defined as float.
+-
+- \since 0.31
+- **/
+- QList<QRectF> search(const QString &text, SearchFlags flags = 0, Rotation rotate = Rotate0) const;
+-
+- /**
+- Returns a list of text of the page
+-
+- This method returns a QList of TextBoxes that contain all
+- the text of the page, with roughly one text word of text
+- per TextBox item.
+-
+- For text written in western languages (left-to-right and
+- up-to-down), the QList contains the text in the proper
+- order.
+-
+- \note The caller owns the text boxes and they should
+- be deleted when no longer required.
+-
+- \warning This method is not tested with Asian scripts
+- */
+- QList<TextBox*> textList(Rotation rotate = Rotate0) const;
+-
+- /**
+- \return The dimensions (cropbox) of the page, in points (i.e. 1/72th of an inch)
+- */
+- QSizeF pageSizeF() const;
+-
+- /**
+- \return The dimensions (cropbox) of the page, in points (i.e. 1/72th of an inch)
+- */
+- QSize pageSize() const;
+-
+- /**
+- Returns the transition of this page
+-
+- \returns a pointer to a PageTransition structure that
+- defines how transition to this page shall be performed.
+-
+- \note The PageTransition structure is owned by this page, and will
+- automatically be destroyed when this page class is
+- destroyed.
+- **/
+- PageTransition *transition() const;
+-
+- /**
+- Gets the page action specified, or NULL if there is no action.
+-
+- \since 0.6
+- **/
+- Link *action( PageAction act ) const;
+-
+- /**
+- Types of orientations that are possible
+- */
+- enum Orientation {
+- Landscape, ///< Landscape orientation (portrait, with 90 degrees clockwise rotation )
+- Portrait, ///< Normal portrait orientation
+- Seascape, ///< Seascape orientation (portrait, with 270 degrees clockwise rotation)
+- UpsideDown ///< Upside down orientation (portrait, with 180 degrees rotation)
+- };
+-
+- /**
+- The orientation of the page
+- */
+- Orientation orientation() const;
+-
+- /**
+- The default CTM
+- */
+- void defaultCTM(double *CTM, double dpiX, double dpiY, int rotate, bool upsideDown);
+-
+- /**
+- Gets the links of the page
+- */
+- QList<Link*> links() const;
+-
+- /**
+- Returns the annotations of the page
+-
+- \note If you call this method twice, you get different objects
+- pointing to the same annotations (see Annotation).
+- The caller owns the returned objects and they should be deleted
+- when no longer required.
+- */
+- QList<Annotation*> annotations() const;
+-
+- /**
+- Returns the annotations of the page
+-
+- \param subtypes the subtypes of annotations you are interested in
+-
+- \note If you call this method twice, you get different objects
+- pointing to the same annotations (see Annotation).
+- The caller owns the returned objects and they should be deleted
+- when no longer required.
+-
+- \since 0.28
+- */
+- QList<Annotation*> annotations(const QSet<Annotation::SubType> &subtypes) const;
+-
+- /**
+- Adds an annotation to the page
+-
+- \note Ownership of the annotation object stays with the caller, who can
+- delete it at any time.
+- \since 0.20
+- */
+- void addAnnotation( const Annotation *ann );
+-
+- /**
+- Removes an annotation from the page and destroys the annotation object
+-
+- \note There mustn't be other Annotation objects pointing this annotation
+- \since 0.20
+- */
+- void removeAnnotation( const Annotation *ann );
+-
+- /**
+- Returns the form fields on the page
+- The caller gets the ownership of the returned objects.
+-
+- \since 0.6
+- */
+- QList<FormField*> formFields() const;
+-
+- /**
+- Returns the page duration. That is the time, in seconds, that the page
+- should be displayed before the presentation automatically advances to the next page.
+- Returns < 0 if duration is not set.
+-
+- \since 0.6
+- */
+- double duration() const;
+-
+- /**
+- Returns the label of the page, or a null string is the page has no label.
+-
+- \since 0.6
+- **/
+- QString label() const;
+-
+- private:
+- Q_DISABLE_COPY(Page)
+-
+- Page(DocumentData *doc, int index);
+- PageData *m_page;
+- };
+-
+-/**
+- \brief PDF document.
+-
+- The Document class represents a PDF document: its pages, and all the global
+- properties, metadata, etc.
+-
+- \section ownership Ownership of the returned objects
+-
+- All the functions that returns class pointers create new object, and the
+- responsability of those is given to the callee.
+-
+- The only exception is \link Poppler::Page::transition() Page::transition()\endlink.
+-
+- \section document-loading Loading
+-
+- To get a Document, you have to load it via the load() & loadFromData()
+- functions.
+-
+- In all the functions that have passwords as arguments, they \b must be Latin1
+- encoded. If you have a password that is a UTF-8 string, you need to use
+- QString::toLatin1() (or similar) to convert the password first.
+- If you have a UTF-8 character array, consider converting it to a QString first
+- (QString::fromUtf8(), or similar) before converting to Latin1 encoding.
+-
+- \section document-rendering Rendering
+-
+- To render pages of a document, you have different Document functions to set
+- various options.
+-
+- \subsection document-rendering-backend Backends
+-
+- %Poppler offers a different backends for rendering the pages. Currently
+- there are two backends (see #RenderBackend), but only the Splash engine works
+- well and has been tested.
+-
+- The available rendering backends can be discovered via availableRenderBackends().
+- The current rendering backend can be changed using setRenderBackend().
+- Please note that setting a backend not listed in the available ones
+- will always result in null QImage's.
+-
+- \section document-cms Color management support
+-
+- %Poppler, if compiled with this support, provides functions to handle color
+- profiles.
+-
+- To know whether the %Poppler version you are using has support for color
+- management, you can query Poppler::isCmsAvailable(). In case it is not
+- avilable, all the color management-related functions will either do nothing
+- or return null.
+-*/
+- class POPPLER_QT4_EXPORT Document {
+- friend class Page;
+- friend class DocumentData;
+-
+- public:
+- /**
+- The page mode
+- */
+- enum PageMode {
+- UseNone, ///< No mode - neither document outline nor thumbnail images are visible
+- UseOutlines, ///< Document outline visible
+- UseThumbs, ///< Thumbnail images visible
+- FullScreen, ///< Fullscreen mode (no menubar, windows controls etc)
+- UseOC, ///< Optional content group panel visible
+- UseAttach ///< Attachments panel visible
+- };
+-
+- /**
+- The page layout
+- */
+- enum PageLayout {
+- NoLayout, ///< Layout not specified
+- SinglePage, ///< Display a single page
+- OneColumn, ///< Display a single column of pages
+- TwoColumnLeft, ///< Display the pages in two columns, with odd-numbered pages on the left
+- TwoColumnRight, ///< Display the pages in two columns, with odd-numbered pages on the right
+- TwoPageLeft, ///< Display the pages two at a time, with odd-numbered pages on the left
+- TwoPageRight ///< Display the pages two at a time, with odd-numbered pages on the right
+- };
+-
+- /**
+- The render backends available
+-
+- \since 0.6
+- */
+- enum RenderBackend {
+- SplashBackend, ///< Splash backend
+- ArthurBackend ///< Arthur (Qt4) backend
+- };
+-
+- /**
+- The render hints available
+-
+- \since 0.6
+- */
+- enum RenderHint {
+- Antialiasing = 0x00000001, ///< Antialiasing for graphics
+- TextAntialiasing = 0x00000002, ///< Antialiasing for text
+- TextHinting = 0x00000004, ///< Hinting for text \since 0.12.1
+- TextSlightHinting = 0x00000008, ///< Lighter hinting for text when combined with TextHinting \since 0.18
+- OverprintPreview = 0x00000010, ///< Overprint preview \since 0.22
+- ThinLineSolid = 0x00000020, ///< Enhance thin lines solid \since 0.24
+- ThinLineShape = 0x00000040, ///< Enhance thin lines shape. Wins over ThinLineSolid \since 0.24
+- IgnorePaperColor = 0x00000080 ///< Do not compose with the paper color \since 0.35
+- };
+- Q_DECLARE_FLAGS( RenderHints, RenderHint )
+-
+- /**
+- Form types
+-
+- \since 0.22
+- */
+- enum FormType {
+- NoForm, ///< Document doesn't contain forms
+- AcroForm, ///< AcroForm
+- XfaForm ///< Adobe XML Forms Architecture (XFA), currently unsupported
+- };
+-
+- /**
+- Set a color display profile for the current document.
+-
+- \param outputProfileA is a \c cmsHPROFILE of the LCMS library.
+-
+- \since 0.12
+- */
+- void setColorDisplayProfile(void *outputProfileA);
+- /**
+- Set a color display profile for the current document.
+-
+- \param name is the name of the display profile to set.
+-
+- \since 0.12
+- */
+- void setColorDisplayProfileName(const QString &name);
+- /**
+- Return the current RGB profile.
+-
+- \return a \c cmsHPROFILE of the LCMS library.
+-
+- \since 0.12
+- */
+- void* colorRgbProfile() const;
+- /**
+- Return the current display profile.
+-
+- \return a \c cmsHPROFILE of the LCMS library.
+-
+- \since 0.12
+- */
+- void *colorDisplayProfile() const;
+-
+- /**
+- Load the document from a file on disk
+-
+- \param filePath the name (and path, if required) of the file to load
+- \param ownerPassword the Latin1-encoded owner password to use in
+- loading the file
+- \param userPassword the Latin1-encoded user ("open") password
+- to use in loading the file
+-
+- \return the loaded document, or NULL on error
+-
+- \note The caller owns the pointer to Document, and this should
+- be deleted when no longer required.
+-
+- \warning The returning document may be locked if a password is required
+- to open the file, and one is not provided (as the userPassword).
+- */
+- static Document *load(const QString & filePath,
+- const QByteArray &ownerPassword=QByteArray(),
+- const QByteArray &userPassword=QByteArray());
+-
+- /**
+- Load the document from memory
+-
+- \param fileContents the file contents. They are copied so there is no need
+- to keep the byte array around for the full life time of
+- the document.
+- \param ownerPassword the Latin1-encoded owner password to use in
+- loading the file
+- \param userPassword the Latin1-encoded user ("open") password
+- to use in loading the file
+-
+- \return the loaded document, or NULL on error
+-
+- \note The caller owns the pointer to Document, and this should
+- be deleted when no longer required.
+-
+- \warning The returning document may be locked if a password is required
+- to open the file, and one is not provided (as the userPassword).
+-
+- \since 0.6
+- */
+- static Document *loadFromData(const QByteArray &fileContents,
+- const QByteArray &ownerPassword=QByteArray(),
+- const QByteArray &userPassword=QByteArray());
+-
+- /**
+- Get a specified Page
+-
+- Note that this follows the PDF standard of being zero based - if you
+- want the first page, then you need an index of zero.
+-
+- The caller gets the ownership of the returned object.
+-
+- \param index the page number index
+- */
+- Page *page(int index) const;
+-
+- /**
+- \overload
+-
+-
+- The intent is that you can pass in a label like \c "ix" and
+- get the page with that label (which might be in the table of
+- contents), or pass in \c "1" and get the page that the user
+- expects (which might not be the first page, if there is a
+- title page and a table of contents).
+-
+- \param label the page label
+- */
+- Page *page(const QString &label) const;
+-
+- /**
+- The number of pages in the document
+- */
+- int numPages() const;
+-
+- /**
+- The type of mode that should be used by the application
+- when the document is opened. Note that while this is
+- called page mode, it is really viewer application mode.
+- */
+- PageMode pageMode() const;
+-
+- /**
+- The layout that pages should be shown in when the document
+- is first opened. This basically describes how pages are
+- shown relative to each other.
+- */
+- PageLayout pageLayout() const;
+-
+- /**
+- The predominant reading order for text as supplied by
+- the document's viewer preferences.
+-
+- \since 0.26
+- */
+- Qt::LayoutDirection textDirection() const;
+-
+- /**
+- Provide the passwords required to unlock the document
+-
+- \param ownerPassword the Latin1-encoded owner password to use in
+- loading the file
+- \param userPassword the Latin1-encoded user ("open") password
+- to use in loading the file
+- */
+- bool unlock(const QByteArray &ownerPassword, const QByteArray &userPassword);
+-
+- /**
+- Determine if the document is locked
+- */
+- bool isLocked() const;
+-
+- /**
+- The date associated with the document
+-
+- You would use this method with something like:
+- \code
+-QDateTime created = m_doc->date("CreationDate");
+-QDateTime modified = m_doc->date("ModDate");
+- \endcode
+-
+- The available dates are:
+- - CreationDate: the date of creation of the document
+- - ModDate: the date of the last change in the document
+-
+- \param data the type of date that is required
+- */
+- QDateTime date( const QString & data ) const;
+-
+- /**
+- Set the Info dict date entry specified by \param key to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setDate( const QString & key, const QDateTime & val );
+-
+- /**
+- The date of the creation of the document
+- */
+- QDateTime creationDate() const;
+-
+- /**
+- Set the creation date of the document to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setCreationDate( const QDateTime & val );
+-
+- /**
+- The date of the last change in the document
+- */
+- QDateTime modificationDate() const;
+-
+- /**
+- Set the modification date of the document to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setModificationDate( const QDateTime & val );
+-
+- /**
+- Get specified information associated with the document
+-
+- You would use this method with something like:
+- \code
+-QString title = m_doc->info("Title");
+-QString subject = m_doc->info("Subject");
+- \endcode
+-
+- In addition to \c Title and \c Subject, other information that may
+- be available include \c Author, \c Keywords, \c Creator and \c Producer.
+-
+- \param data the information that is required
+-
+- \sa infoKeys() to get a list of the available keys
+- */
+- QString info( const QString & data ) const;
+-
+- /**
+- Set the value of the document's Info dictionary entry specified by \param key to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setInfo( const QString & key, const QString & val );
+-
+- /**
+- The title of the document
+- */
+- QString title() const;
+-
+- /**
+- Set the title of the document to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setTitle( const QString & val );
+-
+- /**
+- The author of the document
+- */
+- QString author() const;
+-
+- /**
+- Set the author of the document to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setAuthor( const QString & val );
+-
+- /**
+- The subject of the document
+- */
+- QString subject() const;
+-
+- /**
+- Set the subject of the document to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setSubject( const QString & val );
+-
+- /**
+- The keywords of the document
+- */
+- QString keywords() const;
+-
+- /**
+- Set the keywords of the document to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setKeywords( const QString & val );
+-
+- /**
+- The creator of the document
+- */
+- QString creator() const;
+-
+- /**
+- Set the creator of the document to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setCreator( const QString & val );
+-
+- /**
+- The producer of the document
+- */
+- QString producer() const;
+-
+- /**
+- Set the producer of the document to \param val
+-
+- \returns true on success, false on failure
+- */
+- bool setProducer( const QString & val );
+-
+- /**
+- Remove the document's Info dictionary
+-
+- \returns true on success, false on failure
+- */
+- bool removeInfo();
+-
+- /**
+- Obtain a list of the available string information keys.
+- */
+- QStringList infoKeys() const;
+-
+- /**
+- Test if the document is encrypted
+- */
+- bool isEncrypted() const;
+-
+- /**
+- Test if the document is linearised
+-
+- In some cases, this is called "fast web view", since it
+- is mostly an optimisation for viewing over the Web.
+- */
+- bool isLinearized() const;
+-
+- /**
+- Test if the permissions on the document allow it to be
+- printed
+- */
+- bool okToPrint() const;
+-
+- /**
+- Test if the permissions on the document allow it to be
+- printed at high resolution
+- */
+- bool okToPrintHighRes() const;
+-
+- /**
+- Test if the permissions on the document allow it to be
+- changed.
+-
+- \note depending on the type of change, it may be more
+- appropriate to check other properties as well.
+- */
+- bool okToChange() const;
+-
+- /**
+- Test if the permissions on the document allow the
+- contents to be copied / extracted
+- */
+- bool okToCopy() const;
+-
+- /**
+- Test if the permissions on the document allow annotations
+- to be added or modified, and interactive form fields (including
+- signature fields) to be completed.
+- */
+- bool okToAddNotes() const;
+-
+- /**
+- Test if the permissions on the document allow interactive
+- form fields (including signature fields) to be completed.
+-
+- \note this can be true even if okToAddNotes() is false - this
+- means that only form completion is permitted.
+- */
+- bool okToFillForm() const;
+-
+- /**
+- Test if the permissions on the document allow interactive
+- form fields (including signature fields) to be set, created and
+- modified
+- */
+- bool okToCreateFormFields() const;
+-
+- /**
+- Test if the permissions on the document allow content extraction
+- (text and perhaps other content) for accessibility usage (eg for
+- a screen reader)
+- */
+- bool okToExtractForAccessibility() const;
+-
+- /**
+- Test if the permissions on the document allow it to be
+- "assembled" - insertion, rotation and deletion of pages;
+- or creation of bookmarks and thumbnail images.
+-
+- \note this can be true even if okToChange() is false
+- */
+- bool okToAssemble() const;
+-
+- /**
+- The version of the PDF specification that the document
+- conforms to
+-
+- \deprecated use getPdfVersion and avoid float point
+- comparisons/handling
+- */
+- Q_DECL_DEPRECATED double pdfVersion() const;
+-
+- /**
+- The version of the PDF specification that the document
+- conforms to
+-
+- \param major an optional pointer to a variable where store the
+- "major" number of the version
+- \param minor an optional pointer to a variable where store the
+- "minor" number of the version
+-
+- \since 0.12
+- */
+- void getPdfVersion(int *major, int *minor) const;
+-
+- /**
+- The fonts within the PDF document.
+-
+- This is a shorthand for getting all the fonts at once.
+-
+- \note this can take a very long time to run with a large
+- document. You may wish to use a FontIterator if you have more
+- than say 20 pages
+-
+- \see newFontIterator()
+- */
+- QList<FontInfo> fonts() const;
+-
+- /**
+- Scans for fonts within the PDF document.
+-
+- \param numPages the number of pages to scan
+- \param fontList pointer to the list where the font information
+- should be placed
+-
+- \note with this method you can scan for fonts only \em once for each
+- document; once the end is reached, no more scanning with this method
+- can be done
+-
+- \return false if the end of the document has been reached
+-
+- \deprecated this function is quite limited in its job (see note),
+- better use fonts() or newFontIterator()
+-
+- \see fonts(), newFontIterator()
+- */
+- Q_DECL_DEPRECATED bool scanForFonts( int numPages, QList<FontInfo> *fontList ) const;
+-
+- /**
+- Creates a new FontIterator object for font scanning.
+-
+- The new iterator can be used for reading the font information of the
+- document, reading page by page.
+-
+- The caller is responsible for the returned object, ie it should freed
+- it when no more useful.
+-
+- \param startPage the initial page from which start reading fonts
+-
+- \see fonts()
+-
+- \since 0.12
+- */
+- FontIterator* newFontIterator( int startPage = 0 ) const;
+-
+- /**
+- The font data if the font is an embedded one.
+-
+- \since 0.10
+- */
+- QByteArray fontData(const FontInfo &font) const;
+-
+- /**
+- The documents embedded within the PDF document.
+-
+- \note there are two types of embedded document - this call
+- only accesses documents that are embedded at the document level.
+- */
+- QList<EmbeddedFile*> embeddedFiles() const;
+-
+- /**
+- Whether there are any documents embedded in this PDF document.
+- */
+- bool hasEmbeddedFiles() const;
+-
+- /**
+- Gets the table of contents (TOC) of the Document.
+-
+- The caller is responsable for the returned object.
+-
+- In the tree the tag name is the 'screen' name of the entry. A tag can have
+- attributes. Here follows the list of tag attributes with meaning:
+- - Destination: A string description of the referred destination
+- - DestinationName: A 'named reference' to the viewport
+- - ExternalFileName: A link to a external filename
+- - Open: A bool value that tells whether the subbranch of the item is open or not
+-
+- Resolving the final destination for each item can be done in the following way:
+- - first, checking for 'Destination': if not empty, then a LinkDestination
+- can be constructed straight with it
+- - as second step, if the 'DestinationName' is not empty, then the destination
+- can be resolved using linkDestination()
+-
+- Note also that if 'ExternalFileName' is not emtpy, then the destination refers
+- to that document (and not to the current one).
+-
+- \returns the TOC, or NULL if the Document does not have one
+- */
+- QDomDocument *toc() const;
+-
+- /**
+- Tries to resolve the named destination \p name.
+-
+- \note this operation starts a search through the whole document
+-
+- \returns a new LinkDestination object if the named destination was
+- actually found, or NULL otherwise
+- */
+- LinkDestination *linkDestination( const QString &name );
+-
+- /**
+- Sets the paper color
+-
+- \param color the new paper color
+- */
+- void setPaperColor(const QColor &color);
+- /**
+- The paper color
+-
+- The default color is white.
+- */
+- QColor paperColor() const;
+-
+- /**
+- Sets the backend used to render the pages.
+-
+- \param backend the new rendering backend
+-
+- \since 0.6
+- */
+- void setRenderBackend( RenderBackend backend );
+- /**
+- The currently set render backend
+-
+- The default backend is \ref SplashBackend
+-
+- \since 0.6
+- */
+- RenderBackend renderBackend() const;
+-
+- /**
+- The available rendering backends.
+-
+- \since 0.6
+- */
+- static QSet<RenderBackend> availableRenderBackends();
+-
+- /**
+- Sets the render \p hint .
+-
+- \note some hints may not be supported by some rendering backends.
+-
+- \param on whether the flag should be added or removed.
+-
+- \since 0.6
+- */
+- void setRenderHint( RenderHint hint, bool on = true );
+- /**
+- The currently set render hints.
+-
+- \since 0.6
+- */
+- RenderHints renderHints() const;
+-
+- /**
+- Gets a new PS converter for this document.
+-
+- The caller gets the ownership of the returned converter.
+-
+- \since 0.6
+- */
+- PSConverter *psConverter() const;
+-
+- /**
+- Gets a new PDF converter for this document.
+-
+- The caller gets the ownership of the returned converter.
+-
+- \since 0.8
+- */
+- PDFConverter *pdfConverter() const;
+-
+- /**
+- Gets the metadata stream contents
+-
+- \since 0.6
+- */
+- QString metadata() const;
+-
+- /**
+- Test whether this document has "optional content".
+-
+- Optional content is used to optionally turn on (display)
+- and turn off (not display) some elements of the document.
+- The most common use of this is for layers in design
+- applications, but it can be used for a range of things,
+- such as not including some content in printing, and
+- displaying content in the appropriate language.
+-
+- \since 0.8
+- */
+- bool hasOptionalContent() const;
+-
+- /**
+- Itemviews model for optional content.
+-
+- The model is owned by the document.
+-
+- \since 0.8
+- */
+- OptContentModel *optionalContentModel();
+-
+- /**
+- Document-level JavaScript scripts.
+-
+- Returns the list of document level JavaScript scripts to be always
+- executed before any other script.
+-
+- \since 0.10
+- */
+- QStringList scripts() const;
+-
+- /**
+- The PDF identifiers.
+-
+- \param permanentId an optional pointer to a variable where store the
+- permanent ID of the document
+- \param updateId an optional pointer to a variable where store the
+- update ID of the document
+-
+- \return whether the document has the IDs
+-
+- \since 0.16
+- */
+- bool getPdfId(QByteArray *permanentId, QByteArray *updateId) const;
+-
+- /**
+- Returns the type of forms contained in the document
+-
+- \since 0.22
+- */
+- FormType formType() const;
+-
+- /**
+- Destructor.
+- */
+- ~Document();
+-
+- private:
+- Q_DISABLE_COPY(Document)
+-
+- DocumentData *m_doc;
+-
+- Document(DocumentData *dataA);
+- };
+-
+- class BaseConverterPrivate;
+- class PSConverterPrivate;
+- class PDFConverterPrivate;
+- /**
+- \brief Base converter.
+-
+- This is the base class for the converters.
+-
+- \since 0.8
+- */
+- class POPPLER_QT4_EXPORT BaseConverter
+- {
+- friend class Document;
+- public:
+- /**
+- Destructor.
+- */
+- virtual ~BaseConverter();
+-
+- /** Sets the output file name. You must set this or the output device. */
+- void setOutputFileName(const QString &outputFileName);
+-
+- /**
+- * Sets the output device. You must set this or the output file name.
+- *
+- * \since 0.8
+- */
+- void setOutputDevice(QIODevice *device);
+-
+- /**
+- Does the conversion.
+-
+- \return whether the conversion succeeded
+- */
+- virtual bool convert() = 0;
+-
+- enum Error
+- {
+- NoError,
+- FileLockedError,
+- OpenOutputError,
+- NotSupportedInputFileError
+- };
+-
+- /**
+- Returns the last error
+- \since 0.12.1
+- */
+- Error lastError() const;
+-
+- protected:
+- /// \cond PRIVATE
+- BaseConverter(BaseConverterPrivate &dd);
+- Q_DECLARE_PRIVATE(BaseConverter)
+- BaseConverterPrivate *d_ptr;
+- /// \endcond
+-
+- private:
+- Q_DISABLE_COPY(BaseConverter)
+- };
+-
+- /**
+- Converts a PDF to PS
+-
+- Sizes have to be in Points (1/72 inch)
+-
+- If you are using QPrinter you can get paper size by doing:
+- \code
+-QPrinter dummy(QPrinter::PrinterResolution);
+-dummy.setFullPage(true);
+-dummy.setPageSize(myPageSize);
+-width = dummy.width();
+-height = dummy.height();
+- \endcode
+-
+- \since 0.6
+- */
+- class POPPLER_QT4_EXPORT PSConverter : public BaseConverter
+- {
+- friend class Document;
+- public:
+- /**
+- Options for the PS export.
+-
+- \since 0.10
+- */
+- enum PSOption {
+- Printing = 0x00000001, ///< The PS is generated for printing purposes
+- StrictMargins = 0x00000002,
+- ForceRasterization = 0x00000004,
+- PrintToEPS = 0x00000008, ///< Output EPS instead of PS \since 0.20
+- HideAnnotations = 0x00000010 ///< Don't print annotations \since 0.20
+- };
+- Q_DECLARE_FLAGS( PSOptions, PSOption )
+-
+- /**
+- Destructor.
+- */
+- ~PSConverter();
+-
+- /** Sets the list of pages to print. Mandatory. */
+- void setPageList(const QList<int> &pageList);
+-
+- /**
+- Sets the title of the PS Document. Optional
+- */
+- void setTitle(const QString &title);
+-
+- /**
+- Sets the horizontal DPI. Defaults to 72.0
+- */
+- void setHDPI(double hDPI);
+-
+- /**
+- Sets the vertical DPI. Defaults to 72.0
+- */
+- void setVDPI(double vDPI);
+-
+- /**
+- Sets the rotate. Defaults to not rotated
+- */
+- void setRotate(int rotate);
+-
+- /**
+- Sets the output paper width. Has to be set.
+- */
+- void setPaperWidth(int paperWidth);
+-
+- /**
+- Sets the output paper height. Has to be set.
+- */
+- void setPaperHeight(int paperHeight);
+-
+- /**
+- Sets the output right margin. Defaults to 0
+- */
+- void setRightMargin(int marginRight);
+-
+- /**
+- Sets the output bottom margin. Defaults to 0
+- */
+- void setBottomMargin(int marginBottom);
+-
+- /**
+- Sets the output left margin. Defaults to 0
+- */
+- void setLeftMargin(int marginLeft);
+-
+- /**
+- Sets the output top margin. Defaults to 0
+- */
+- void setTopMargin(int marginTop);
+-
+- /**
+- Defines if margins have to be strictly followed (even if that
+- means changing aspect ratio), or if the margins can be adapted
+- to keep aspect ratio.
+-
+- Defaults to false.
+- */
+- void setStrictMargins(bool strictMargins);
+-
+- /** Defines if the page will be rasterized to an image before printing. Defaults to false */
+- void setForceRasterize(bool forceRasterize);
+-
+- /**
+- Sets the options for the PS export.
+-
+- \since 0.10
+- */
+- void setPSOptions(PSOptions options);
+-
+- /**
+- The currently set options for the PS export.
+-
+- The default flags are: Printing.
+-
+- \since 0.10
+- */
+- PSOptions psOptions() const;
+-
+- /**
+- Sets a function that will be called each time a page is converted.
+-
+- The payload belongs to the caller.
+-
+- \since 0.16
+- */
+- void setPageConvertedCallback(void (* callback)(int page, void *payload), void *payload);
+-
+- bool convert();
+-
+- private:
+- Q_DECLARE_PRIVATE(PSConverter)
+- Q_DISABLE_COPY(PSConverter)
+-
+- PSConverter(DocumentData *document);
+- };
+-
+- /**
+- Converts a PDF to PDF (thus saves a copy of the document).
+-
+- \since 0.8
+- */
+- class POPPLER_QT4_EXPORT PDFConverter : public BaseConverter
+- {
+- friend class Document;
+- public:
+- /**
+- Options for the PDF export.
+- */
+- enum PDFOption {
+- WithChanges = 0x00000001 ///< The changes done to the document are saved as well
+- };
+- Q_DECLARE_FLAGS( PDFOptions, PDFOption )
+-
+- /**
+- Destructor.
+- */
+- virtual ~PDFConverter();
+-
+- /**
+- Sets the options for the PDF export.
+- */
+- void setPDFOptions(PDFOptions options);
+- /**
+- The currently set options for the PDF export.
+- */
+- PDFOptions pdfOptions() const;
+-
+- bool convert();
+-
+- private:
+- Q_DECLARE_PRIVATE(PDFConverter)
+- Q_DISABLE_COPY(PDFConverter)
+-
+- PDFConverter(DocumentData *document);
+- };
+-
+- /**
+- Conversion from PDF date string format to QDateTime
+- */
+- POPPLER_QT4_EXPORT QDateTime convertDate( char *dateString );
+-
+- /**
+- Whether the color management functions are available.
+-
+- \since 0.12
+- */
+- POPPLER_QT4_EXPORT bool isCmsAvailable();
+-
+- /**
+- Whether the overprint preview functionality is available.
+-
+- \since 0.22
+- */
+- POPPLER_QT4_EXPORT bool isOverprintPreviewAvailable();
+-
+- class SoundData;
+- /**
+- Container class for a sound file in a PDF document.
+-
+- A sound can be either External (in that case should be loaded the file
+- whose url is represented by url() ), or Embedded, and the player has to
+- play the data contained in data().
+-
+- \since 0.6
+- */
+- class POPPLER_QT4_EXPORT SoundObject {
+- public:
+- /**
+- The type of sound
+- */
+- enum SoundType {
+- External, ///< The real sound file is external
+- Embedded ///< The sound is contained in the data
+- };
+-
+- /**
+- The encoding format used for the sound
+- */
+- enum SoundEncoding {
+- Raw, ///< Raw encoding, with unspecified or unsigned values in the range [ 0, 2^B - 1 ]
+- Signed, ///< Twos-complement values
+- muLaw, ///< mu-law-encoded samples
+- ALaw ///< A-law-encoded samples
+- };
+-
+- /// \cond PRIVATE
+- SoundObject(Sound *popplersound);
+- /// \endcond
+-
+- ~SoundObject();
+-
+- /**
+- Is the sound embedded (SoundObject::Embedded) or external (SoundObject::External)?
+- */
+- SoundType soundType() const;
+-
+- /**
+- The URL of the sound file to be played, in case of SoundObject::External
+- */
+- QString url() const;
+-
+- /**
+- The data of the sound, in case of SoundObject::Embedded
+- */
+- QByteArray data() const;
+-
+- /**
+- The sampling rate of the sound
+- */
+- double samplingRate() const;
+-
+- /**
+- The number of sound channels to use to play the sound
+- */
+- int channels() const;
+-
+- /**
+- The number of bits per sample value per channel
+- */
+- int bitsPerSample() const;
+-
+- /**
+- The encoding used for the sound
+- */
+- SoundEncoding soundEncoding() const;
+-
+- private:
+- Q_DISABLE_COPY(SoundObject)
+-
+- SoundData *m_soundData;
+- };
+-
+- class MovieData;
+- /**
+- Container class for a movie object in a PDF document.
+-
+- \since 0.10
+- */
+- class POPPLER_QT4_EXPORT MovieObject {
+- friend class AnnotationPrivate;
+- public:
+- /**
+- The play mode for playing the movie
+- */
+- enum PlayMode {
+- PlayOnce, ///< Play the movie once, closing the movie controls at the end
+- PlayOpen, ///< Like PlayOnce, but leaving the controls open
+- PlayRepeat, ///< Play continuously until stopped
+- PlayPalindrome ///< Play forward, then backward, then again foward and so on until stopped
+- };
+-
+- ~MovieObject();
+-
+- /**
+- The URL of the movie to be played
+- */
+- QString url() const;
+-
+- /**
+- The size of the movie
+- */
+- QSize size() const;
+-
+- /**
+- The rotation (either 0, 90, 180, or 270 degrees clockwise) for the movie,
+- */
+- int rotation() const;
+-
+- /**
+- Whether show a bar with movie controls
+- */
+- bool showControls() const;
+-
+- /**
+- How to play the movie
+- */
+- PlayMode playMode() const;
+-
+- /**
+- Returns whether a poster image should be shown if the movie is not playing.
+- \since 0.22
+- */
+- bool showPosterImage() const;
+-
+- /**
+- Returns the poster image that should be shown if the movie is not playing.
+- If the image is null but showImagePoster() returns @c true, the first frame of the movie
+- should be used as poster image.
+- \since 0.22
+- */
+- QImage posterImage() const;
+-
+- private:
+- /// \cond PRIVATE
+- MovieObject( AnnotMovie *ann );
+- /// \endcond
+-
+- Q_DISABLE_COPY(MovieObject)
+-
+- MovieData *m_movieData;
+- };
+-
+-}
+-
+-Q_DECLARE_OPERATORS_FOR_FLAGS(Poppler::Page::PainterFlags)
+-Q_DECLARE_OPERATORS_FOR_FLAGS(Poppler::Page::SearchFlags)
+-Q_DECLARE_OPERATORS_FOR_FLAGS(Poppler::Document::RenderHints)
+-Q_DECLARE_OPERATORS_FOR_FLAGS(Poppler::PDFConverter::PDFOptions)
+-Q_DECLARE_OPERATORS_FOR_FLAGS(Poppler::PSConverter::PSOptions)
+-
+-#endif
+diff --git a/qt4/src/poppler-sound.cc b/qt4/src/poppler-sound.cc
+deleted file mode 100644
+index eb19b9d3..00000000
+--- a/qt4/src/poppler-sound.cc
++++ /dev/null
+@@ -1,132 +0,0 @@
+-/* poppler-sound.cc: qt interface to poppler
+- * Copyright (C) 2006-2007, Pino Toscano <pino@kde.org>
+- * Copyright (C) 2008, Albert Astals Cid <aacid@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-
+-#include "Object.h"
+-#include "Stream.h"
+-#include "Sound.h"
+-
+-namespace Poppler
+-{
+-
+-class SoundData
+-{
+-public:
+- SoundData()
+- : m_soundObj( 0 )
+- {
+- }
+-
+- ~SoundData()
+- {
+- delete m_soundObj;
+- }
+-
+- SoundObject::SoundType m_type;
+- Sound *m_soundObj;
+-};
+-
+-SoundObject::SoundObject(Sound *popplersound)
+-{
+- m_soundData = new SoundData();
+- switch ( popplersound->getSoundKind() )
+- {
+- case soundEmbedded:
+- m_soundData->m_type = SoundObject::Embedded;
+- break;
+- case soundExternal:
+- default:
+- m_soundData->m_type = SoundObject::External;
+- break;
+- }
+-
+- m_soundData->m_soundObj = popplersound->copy();
+-}
+-
+-SoundObject::~SoundObject()
+-{
+- delete m_soundData;
+-}
+-
+-SoundObject::SoundType SoundObject::soundType() const
+-{
+- return m_soundData->m_type;
+-}
+-
+-QString SoundObject::url() const
+-{
+- if ( m_soundData->m_type != SoundObject::External )
+- return QString();
+-
+- GooString * goo = m_soundData->m_soundObj->getFileName();
+- return goo ? QString( goo->getCString() ) : QString();
+-}
+-
+-QByteArray SoundObject::data() const
+-{
+- if ( m_soundData->m_type != SoundObject::Embedded )
+- return QByteArray();
+-
+- Stream *stream = m_soundData->m_soundObj->getStream();
+- stream->reset();
+- int dataLen = 0;
+- QByteArray fileArray;
+- int i;
+- while ( (i = stream->getChar()) != EOF) {
+- fileArray[dataLen] = (char)i;
+- ++dataLen;
+- }
+- fileArray.resize(dataLen);
+-
+- return fileArray;
+-}
+-
+-double SoundObject::samplingRate() const
+-{
+- return m_soundData->m_soundObj->getSamplingRate();
+-}
+-
+-int SoundObject::channels() const
+-{
+- return m_soundData->m_soundObj->getChannels();
+-}
+-
+-int SoundObject::bitsPerSample() const
+-{
+- return m_soundData->m_soundObj->getBitsPerSample();
+-}
+-
+-SoundObject::SoundEncoding SoundObject::soundEncoding() const
+-{
+- switch ( m_soundData->m_soundObj->getEncoding() )
+- {
+- case soundRaw:
+- return SoundObject::Raw;
+- case soundSigned:
+- return SoundObject::Signed;
+- case soundMuLaw:
+- return SoundObject::muLaw;
+- case soundALaw:
+- return SoundObject::ALaw;
+- }
+- return SoundObject::Raw;
+-}
+-
+-}
+diff --git a/qt4/src/poppler-textbox.cc b/qt4/src/poppler-textbox.cc
+deleted file mode 100644
+index 88cf2a9e..00000000
+--- a/qt4/src/poppler-textbox.cc
++++ /dev/null
+@@ -1,63 +0,0 @@
+-/* poppler-qt.h: qt interface to poppler
+- * Copyright (C) 2005, Brad Hards <bradh@frogmouth.net>
+- * Copyright (C) 2006-2008, Albert Astals Cid <aacid@kde.org>
+- * Copyright (C) 2008, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include "poppler-qt4.h"
+-#include "poppler-private.h"
+-
+-namespace Poppler {
+-
+-TextBox::TextBox(const QString& text, const QRectF &bBox)
+-{
+- m_data = new TextBoxData();
+- m_data->text = text;
+- m_data->bBox = bBox;
+-}
+-
+-TextBox::~TextBox()
+-{
+- delete m_data;
+-}
+-
+-QString TextBox::text() const
+-{
+- return m_data->text;
+-}
+-
+-QRectF TextBox::boundingBox() const
+-{
+- return m_data->bBox;
+-}
+-
+-TextBox *TextBox::nextWord() const
+-{
+- return m_data->nextWord;
+-}
+-
+-QRectF TextBox::charBoundingBox(int i) const
+-{
+- return m_data->charBBoxes.value(i);
+-}
+-
+-bool TextBox::hasSpaceAfter() const
+-{
+- return m_data->hasSpaceAfter;
+-}
+-
+-}
+diff --git a/qt4/tests/.gitignore b/qt4/tests/.gitignore
+deleted file mode 100644
+index 3746eb87..00000000
+--- a/qt4/tests/.gitignore
++++ /dev/null
+@@ -1,33 +0,0 @@
+-.deps
+-.libs
+-*.la
+-*.lo
+-*.moc
+-Makefile
+-Makefile.in
+-stress-poppler-qt4
+-stress-poppler-dir
+-test-poppler-qt4
+-test-password-qt4
+-poppler-attachments
+-poppler-fonts
+-poppler-texts
+-poppler-forms
+-stress-threads-qt4
+-test-render-to-file
+-check_actualtext
+-check_attachments
+-check_dateConversion
+-check_fonts
+-check_goostring
+-check_lexer
+-check_links
+-check_metadata
+-check_optcontent
+-check_permissions
+-check_pagelayout
+-check_pagemode
+-check_password
+-check_search
+-check_strings
+-
+diff --git a/qt4/tests/CMakeLists.txt b/qt4/tests/CMakeLists.txt
+deleted file mode 100644
+index a01a638a..00000000
+--- a/qt4/tests/CMakeLists.txt
++++ /dev/null
+@@ -1,67 +0,0 @@
+-add_definitions(${QT4_DEFINITIONS})
+-add_definitions(-DTESTDATADIR=\"${TESTDATADIR}\")
+-
+-include_directories(
+- ${CMAKE_CURRENT_SOURCE_DIR}
+- ${CMAKE_CURRENT_SOURCE_DIR}/../src
+- ${CMAKE_CURRENT_BINARY_DIR}
+- ${QT4_INCLUDE_DIR}
+-)
+-
+-macro(QT4_ADD_SIMPLETEST exe source)
+- string(REPLACE "-" "" test_name ${exe})
+- set(${test_name}_SOURCES
+- ${source}
+- )
+- poppler_add_test(${exe} BUILD_QT4_TESTS ${${test_name}_SOURCES})
+- target_link_libraries(${exe} poppler-qt4)
+- if(MSVC)
+- target_link_libraries(${exe} poppler ${poppler_LIBS})
+- endif()
+-endmacro(QT4_ADD_SIMPLETEST)
+-
+-macro(QT4_ADD_QTEST exe source)
+- if (QT4_QTTEST_FOUND)
+- string(REPLACE "-" "" test_name ${exe})
+- set(${test_name}_SOURCES
+- ${source}
+- )
+- poppler_add_unittest(${exe} BUILD_QT4_TESTS ${${test_name}_SOURCES})
+- qt4_automoc(${${test_name}_SOURCES})
+- target_link_libraries(${exe} poppler-qt4 ${QT4_QTTEST_LIBRARY})
+- if(MSVC)
+- target_link_libraries(${exe} poppler ${poppler_LIBS})
+- endif()
+- endif ()
+-endmacro(QT4_ADD_QTEST)
+-
+-
+-qt4_add_simpletest(test-poppler-qt4 test-poppler-qt4.cpp)
+-qt4_add_simpletest(test-password-qt4 test-password-qt4.cpp)
+-qt4_add_simpletest(test-render-to-file-qt4 test-render-to-file.cpp)
+-qt4_add_simpletest(poppler-qt4-forms poppler-forms.cpp)
+-qt4_add_simpletest(poppler-qt4-fonts poppler-fonts.cpp)
+-qt4_add_simpletest(poppler-qt4-attachments poppler-attachments.cpp)
+-qt4_add_simpletest(stress-poppler-qt4 stress-poppler-qt4.cpp)
+-qt4_add_simpletest(stress-poppler-dir-qt4 stress-poppler-dir.cpp)
+-qt4_add_simpletest(stress-threads-qt4 stress-threads-qt4.cpp)
+-qt4_add_simpletest(poppler-qt4-texts poppler-texts.cpp)
+-
+-qt4_add_qtest(check_qt4_attachments check_attachments.cpp)
+-qt4_add_qtest(check_qt4_dateConversion check_dateConversion.cpp)
+-qt4_add_qtest(check_qt4_fonts check_fonts.cpp)
+-qt4_add_qtest(check_qt4_links check_links.cpp)
+-qt4_add_qtest(check_qt4_metadata check_metadata.cpp)
+-qt4_add_qtest(check_qt4_optcontent check_optcontent.cpp)
+-qt4_add_qtest(check_qt4_pagelayout check_pagelayout.cpp)
+-qt4_add_qtest(check_qt4_pagemode check_pagemode.cpp)
+-qt4_add_qtest(check_qt4_password check_password.cpp)
+-qt4_add_qtest(check_qt4_permissions check_permissions.cpp)
+-qt4_add_qtest(check_qt4_search check_search.cpp)
+-qt4_add_qtest(check_qt4_actualtext check_actualtext.cpp)
+-qt4_add_qtest(check_qt4_lexer check_lexer.cpp)
+-qt4_add_qtest(check_qt4_pagelabelinfo check_pagelabelinfo.cpp)
+-qt4_add_qtest(check_qt4_goostring check_goostring.cpp)
+-if (NOT WIN32)
+- qt4_add_qtest(check_qt4_strings check_strings.cpp)
+-endif ()
+diff --git a/qt4/tests/README.unittest b/qt4/tests/README.unittest
+deleted file mode 100644
+index 02296e08..00000000
+--- a/qt4/tests/README.unittest
++++ /dev/null
+@@ -1,23 +0,0 @@
+-The unittests for the Qt4 bindings rely on the QtTestLib package, and
+-will not be built until this is installed. If you do not have it, then
+-you can download it from the Trolltech website.
+-
+-Note that there are a range of ways in which you can run the tests:
+-1. "make check" will run all the tests.
+-2. You can run a single test by executing the applicable
+-executable. For example, you can run the PageMode tests by
+-"./check_pagemode"
+-3. You can run a single function within a single test by appending the
+-name of the function to the executable. For example, if you just want
+-to run the FullScreen test within the PageMode tests, you can
+-"./check_pagemode checkFullScreen". Run the executable with -functions
+-to get a list of all the functions.
+-4. You can run a single function with specific data by appending the
+-name of the function, followed by a colon, then the data label to the
+-executable. For example, to just do the Author check within the
+-metadata checks, you can "./check_metadata checkStrings:Author".
+-
+-For a full list of options, run a executable with "-help".
+-
+-Brad Hards
+-bradh@frogmouth.net
+diff --git a/qt4/tests/check_actualtext.cpp b/qt4/tests/check_actualtext.cpp
+deleted file mode 100644
+index 5c765c51..00000000
+--- a/qt4/tests/check_actualtext.cpp
++++ /dev/null
+@@ -1,33 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtCore/QFile>
+-
+-class TestActualText: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void checkActualText1();
+-};
+-
+-void TestActualText::checkActualText1()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/WithActualText.pdf");
+- QVERIFY( doc );
+-
+- Poppler::Page *page = doc->page(0);
+- QVERIFY( page );
+-
+- QCOMPARE( page->text(QRectF()), QString("The slow brown fox jumps over the black dog.") );
+-
+- delete page;
+-
+- delete doc;
+-}
+-
+-QTEST_MAIN(TestActualText)
+-
+-#include "check_actualtext.moc"
+-
+diff --git a/qt4/tests/check_attachments.cpp b/qt4/tests/check_attachments.cpp
+deleted file mode 100644
+index 73e31502..00000000
+--- a/qt4/tests/check_attachments.cpp
++++ /dev/null
+@@ -1,157 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-#include <QtCore/QFile>
+-
+-class TestAttachments: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void checkNoAttachments();
+- void checkAttach1();
+- void checkAttach2();
+- void checkAttach3();
+- void checkAttach4();
+-};
+-
+-void TestAttachments::checkNoAttachments()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/truetype.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->hasEmbeddedFiles(), false );
+-
+- delete doc;
+-}
+-
+-void TestAttachments::checkAttach1()
+-{
+-
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/WithAttachments.pdf");
+- QVERIFY( doc );
+-
+- QVERIFY( doc->hasEmbeddedFiles() );
+-
+- QList<Poppler::EmbeddedFile*> fileList = doc->embeddedFiles();
+- QCOMPARE( fileList.size(), 2 );
+-
+- Poppler::EmbeddedFile *embfile = fileList.at(0);
+- QCOMPARE( embfile->name(), QString( "kroller.png" ) );
+- QCOMPARE( embfile->description(), QString() );
+- QCOMPARE( embfile->createDate(), QDateTime( QDate(), QTime() ) );
+- QCOMPARE( embfile->modDate(), QDateTime( QDate(), QTime() ) );
+- QCOMPARE( embfile->mimeType(), QString() );
+-
+- QFile file(TESTDATADIR "/unittestcases/kroller.png" );
+- QVERIFY( file.open( QIODevice::ReadOnly ) );
+- QByteArray krollerData = file.readAll();
+- QByteArray embdata = embfile->data();
+- QCOMPARE( krollerData, embdata );
+-
+-
+- Poppler::EmbeddedFile *embfile2 = fileList.at(1);
+- QCOMPARE( embfile2->name(), QString("gnome-64.gif") );
+- QCOMPARE( embfile2->description(), QString() );
+- QCOMPARE( embfile2->modDate(), QDateTime( QDate(), QTime() ) );
+- QCOMPARE( embfile2->createDate(), QDateTime( QDate(), QTime() ) );
+- QCOMPARE( embfile2->mimeType(), QString() );
+-
+- QFile file2(TESTDATADIR "/unittestcases/gnome-64.gif" );
+- QVERIFY( file2.open( QIODevice::ReadOnly ) );
+- QByteArray g64Data = file2.readAll();
+- QByteArray emb2data = embfile2->data();
+- QCOMPARE( g64Data, emb2data );
+-
+- delete doc;
+-}
+-
+-
+-void TestAttachments::checkAttach2()
+-{
+-
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/A6EmbeddedFiles.pdf");
+- QVERIFY( doc );
+-
+- QVERIFY( doc->hasEmbeddedFiles() );
+-
+- QList<Poppler::EmbeddedFile*> fileList;
+- fileList = doc->embeddedFiles();
+- QCOMPARE( fileList.size(), 3 );
+-
+- Poppler::EmbeddedFile *embfile1 = fileList.at(0);
+- QCOMPARE( embfile1->name(), QString("Acro7 thoughts") );
+- QCOMPARE( embfile1->description(), QString() );
+- QCOMPARE( embfile1->createDate(), QDateTime( QDate( 2003, 8, 4 ), QTime( 13, 54, 54), Qt::UTC ) );
+- QCOMPARE( embfile1->modDate(), QDateTime( QDate( 2003, 8, 4 ), QTime( 14, 15, 27), Qt::UTC ) );
+- QCOMPARE( embfile1->mimeType(), QString("text/xml") );
+-
+- Poppler::EmbeddedFile *embfile2 = fileList.at(1);
+- QCOMPARE( embfile2->name(), QString("acro transitions 1.xls") );
+- QCOMPARE( embfile2->description(), QString() );
+- QCOMPARE( embfile2->createDate(), QDateTime( QDate( 2003, 7, 18 ), QTime( 21, 7, 16), Qt::UTC ) );
+- QCOMPARE( embfile2->modDate(), QDateTime( QDate( 2003, 7, 22 ), QTime( 13, 4, 40), Qt::UTC ) );
+- QCOMPARE( embfile2->mimeType(), QString("application/excel") );
+-
+- Poppler::EmbeddedFile *embfile3 = fileList.at(2);
+- QCOMPARE( embfile3->name(), QString("apago_pdfe_wide.gif") );
+- QCOMPARE( embfile3->description(), QString() );
+- QCOMPARE( embfile3->createDate(), QDateTime( QDate( 2003, 1, 31 ), QTime( 15, 54, 29), Qt::UTC ) );
+- QCOMPARE( embfile3->modDate(), QDateTime( QDate( 2003, 1, 31 ), QTime( 15, 52, 58), Qt::UTC ) );
+- QCOMPARE( embfile3->mimeType(), QString() );
+-
+- delete doc;
+-}
+-
+-void TestAttachments::checkAttach3()
+-{
+-
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/shapes+attachments.pdf");
+- QVERIFY( doc );
+-
+- QVERIFY( doc->hasEmbeddedFiles() );
+-
+- QList<Poppler::EmbeddedFile*> fileList;
+- fileList = doc->embeddedFiles();
+- QCOMPARE( fileList.size(), 1 );
+-
+- Poppler::EmbeddedFile *embfile = fileList.at(0);
+- QCOMPARE( embfile->name(), QString( "ADEX1.xpdf.pgp" ) );
+- QCOMPARE( embfile->description(), QString() );
+- QCOMPARE( embfile->createDate(), QDateTime( QDate( 2004, 3, 29 ), QTime( 19, 37, 16), Qt::UTC ) );
+- QCOMPARE( embfile->modDate(), QDateTime( QDate( 2004, 3, 29 ), QTime( 19, 37, 16), Qt::UTC ) );
+- QCOMPARE( embfile->mimeType(), QString() );
+- delete doc;
+-
+-}
+-
+-void TestAttachments::checkAttach4()
+-{
+-
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/imageretrieve+attachment.pdf");
+- QVERIFY( doc );
+-
+- QVERIFY( doc->hasEmbeddedFiles() );
+-
+- QList<Poppler::EmbeddedFile*> fileList;
+- fileList = doc->embeddedFiles();
+- QCOMPARE( fileList.size(), 1 );
+-
+- Poppler::EmbeddedFile *embfile = fileList.at(0);
+- QCOMPARE( embfile->name(), QString( "export-altona.csv" ) );
+- QCOMPARE( embfile->description(), QString("Altona Export") );
+- QCOMPARE( embfile->createDate(), QDateTime( QDate( 2005, 8, 30 ), QTime( 20, 49, 35), Qt::UTC ) );
+- QCOMPARE( embfile->modDate(), QDateTime( QDate( 2005, 8, 30 ), QTime( 20, 49, 52), Qt::UTC ) );
+- QCOMPARE( embfile->mimeType(), QString("application/vnd.ms-excel") );
+- delete doc;
+-
+-}
+-
+-QTEST_MAIN(TestAttachments)
+-#include "check_attachments.moc"
+-
+diff --git a/qt4/tests/check_dateConversion.cpp b/qt4/tests/check_dateConversion.cpp
+deleted file mode 100644
+index c1f84e2f..00000000
+--- a/qt4/tests/check_dateConversion.cpp
++++ /dev/null
+@@ -1,142 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-Q_DECLARE_METATYPE(QDate)
+-Q_DECLARE_METATYPE(QTime)
+-
+-#include <poppler-qt4.h>
+-
+-class TestDateConv: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void initTestCase();
+- void checkDates_data();
+- void checkDates();
+- void checkInvalidDates_data();
+- void checkInvalidDates();
+-};
+-
+-void TestDateConv::initTestCase()
+-{
+- qRegisterMetaType<QDate>("QDate");
+- qRegisterMetaType<QTime>("QTime");
+-}
+-
+-void TestDateConv::checkDates_data()
+-{
+- QTest::addColumn<QByteArray>("input");
+- QTest::addColumn<QDate>("day");
+- QTest::addColumn<QTime>("time");
+-
+- // This is a typical case - all data provided
+- QTest::newRow("D:20040101121110")
+- << QByteArray("D:20040101121110Z")
+- << QDate( 2004, 1, 1)
+- << QTime( 12, 11, 10);
+-
+- // The D: is strongly recommended, but optional
+- QTest::newRow("20040101121110")
+- << QByteArray("20040101121110Z")
+- << QDate( 2004, 1, 1)
+- << QTime( 12, 11, 10);
+-
+- // Only the year is actually required
+- QTest::newRow("D:2006")
+- << QByteArray("D:2006")
+- << QDate( 2006, 1, 1)
+- << QTime( 0, 0, 0);
+-
+- QTest::newRow("D:200602")
+- << QByteArray("D:200602")
+- << QDate( 2006, 2, 1)
+- << QTime( 0, 0, 0);
+-
+- QTest::newRow("D:20060304")
+- << QByteArray("D:20060304")
+- << QDate( 2006, 3, 4)
+- << QTime( 0, 0, 0);
+-
+- QTest::newRow("D:2006030405")
+- << QByteArray("D:2006030405")
+- << QDate( 2006, 3, 4)
+- << QTime( 5, 0, 0);
+-
+- QTest::newRow("D:200603040512")
+- << QByteArray("D:200603040512")
+- << QDate( 2006, 3, 4)
+- << QTime( 5, 12, 0);
+-
+- // If the timezone isn't specified, I assume UTC
+- QTest::newRow("D:20060304051226")
+- << QByteArray("D:20060304051226")
+- << QDate( 2006, 3, 4)
+- << QTime( 5, 12, 26);
+-
+- // Check for real timezone conversions
+- QTest::newRow("D:20030131115258-04'00'")
+- << QByteArray("D:20030131115258-04'00'")
+- << QDate( 2003, 1, 31)
+- << QTime( 15, 52, 58);
+-
+- QTest::newRow("D:20030131115258+05'00'")
+- << QByteArray("D:20030131115258+05'00'")
+- << QDate( 2003, 1, 31)
+- << QTime( 6, 52, 58);
+-
+- // There are places that have non-hour offsets
+- // Yep, that means you Adelaide.
+- QTest::newRow("D:20030131115258+08'30'")
+- << QByteArray("D:20030131115258+08'30'")
+- << QDate( 2003, 1, 31)
+- << QTime( 3, 22, 58);
+-
+- QTest::newRow("D:20030131115258-08'30'")
+- << QByteArray("D:20030131115258-08'30'")
+- << QDate( 2003, 1, 31)
+- << QTime( 20, 22, 58);
+-}
+-
+-void TestDateConv::checkDates()
+-{
+- QFETCH(QByteArray, input);
+- QFETCH(QDate, day);
+- QFETCH(QTime, time);
+-
+- QCOMPARE( Poppler::convertDate(input.data()), QDateTime(day, time, Qt::UTC) );
+-}
+-
+-void TestDateConv::checkInvalidDates_data()
+-{
+- QTest::addColumn<QByteArray>("input");
+-
+- // Null data
+- QTest::newRow("Null data")
+- << QByteArray();
+-
+- // Empty data
+- QTest::newRow("Empty data")
+- << QByteArray("");
+-
+- // Empty data
+- QTest::newRow("One character")
+- << QByteArray("D");
+-
+- // Empty data
+- QTest::newRow("'D:'")
+- << QByteArray("D:");
+-
+- // Empty data
+- QTest::newRow("Not a date")
+- << QByteArray("D:IAmNotAValidDate");
+-}
+-
+-void TestDateConv::checkInvalidDates()
+-{
+- QFETCH(QByteArray, input);
+-
+- QCOMPARE(Poppler::convertDate(input.data()), QDateTime());
+-}
+-
+-QTEST_MAIN(TestDateConv)
+-
+-#include "check_dateConversion.moc"
+diff --git a/qt4/tests/check_fonts.cpp b/qt4/tests/check_fonts.cpp
+deleted file mode 100644
+index 77579a97..00000000
+--- a/qt4/tests/check_fonts.cpp
++++ /dev/null
+@@ -1,248 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-#include <memory>
+-
+-class TestFontsData: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void checkNoFonts();
+- void checkType1();
+- void checkType3();
+- void checkTrueType();
+- void checkFontIterator();
+- void checkSecondDocumentQuery();
+- void checkMultipleIterations();
+- void checkScanForFonts();
+-};
+-
+-
+-static QList<Poppler::FontInfo> loadFontsViaIterator( Poppler::Document *doc, int from = 0, int count = -1 )
+-{
+- int num = count == -1 ? doc->numPages() - from : count;
+- QList<Poppler::FontInfo> list;
+- std::unique_ptr< Poppler::FontIterator > it( doc->newFontIterator( from ) );
+- while ( it->hasNext() && num )
+- {
+- list += it->next();
+- --num;
+- }
+- return list;
+-}
+-
+-namespace Poppler
+-{
+-static bool operator==( const FontInfo &f1, const FontInfo &f2 )
+-{
+- if ( f1.name() != f2.name() )
+- return false;
+- if ( f1.file() != f2.file() )
+- return false;
+- if ( f1.isEmbedded() != f2.isEmbedded() )
+- return false;
+- if ( f1.isSubset() != f2.isSubset() )
+- return false;
+- if ( f1.type() != f2.type() )
+- return false;
+- if ( f1.typeName() != f2.typeName() )
+- return false;
+- return true;
+-}
+-}
+-
+-void TestFontsData::checkNoFonts()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/tests/image.pdf");
+- QVERIFY( doc );
+-
+- QList<Poppler::FontInfo> listOfFonts = doc->fonts();
+- QCOMPARE( listOfFonts.size(), 0 );
+-
+- delete doc;
+-}
+-
+-void TestFontsData::checkType1()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/tests/text.pdf");
+- QVERIFY( doc );
+-
+- QList<Poppler::FontInfo> listOfFonts = doc->fonts();
+- QCOMPARE( listOfFonts.size(), 1 );
+- QCOMPARE( listOfFonts.at(0).name(), QString("Helvetica") );
+- QCOMPARE( listOfFonts.at(0).type(), Poppler::FontInfo::Type1 );
+- QCOMPARE( listOfFonts.at(0).typeName(), QString("Type 1") );
+-
+- QCOMPARE( listOfFonts.at(0).isEmbedded(), false );
+- QCOMPARE( listOfFonts.at(0).isSubset(), false );
+-
+- delete doc;
+-}
+-
+-void TestFontsData::checkType3()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/tests/type3.pdf");
+- QVERIFY( doc );
+-
+- QList<Poppler::FontInfo> listOfFonts = doc->fonts();
+- QCOMPARE( listOfFonts.size(), 2 );
+- QCOMPARE( listOfFonts.at(0).name(), QString("Helvetica") );
+- QCOMPARE( listOfFonts.at(0).type(), Poppler::FontInfo::Type1 );
+- QCOMPARE( listOfFonts.at(0).typeName(), QString("Type 1") );
+-
+- QCOMPARE( listOfFonts.at(0).isEmbedded(), false );
+- QCOMPARE( listOfFonts.at(0).isSubset(), false );
+-
+- QCOMPARE( listOfFonts.at(1).name(), QString("") );
+- QCOMPARE( listOfFonts.at(1).type(), Poppler::FontInfo::Type3 );
+- QCOMPARE( listOfFonts.at(1).typeName(), QString("Type 3") );
+-
+- QCOMPARE( listOfFonts.at(1).isEmbedded(), true );
+- QCOMPARE( listOfFonts.at(1).isSubset(), false );
+-
+- delete doc;
+-}
+-
+-void TestFontsData::checkTrueType()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/truetype.pdf");
+- QVERIFY( doc );
+-
+- QList<Poppler::FontInfo> listOfFonts = doc->fonts();
+- QCOMPARE( listOfFonts.size(), 2 );
+- QCOMPARE( listOfFonts.at(0).name(), QString("Arial-BoldMT") );
+- QCOMPARE( listOfFonts.at(0).type(), Poppler::FontInfo::TrueType );
+- QCOMPARE( listOfFonts.at(0).typeName(), QString("TrueType") );
+-
+- QCOMPARE( listOfFonts.at(0).isEmbedded(), false );
+- QCOMPARE( listOfFonts.at(0).isSubset(), false );
+-
+- QCOMPARE( listOfFonts.at(1).name(), QString("ArialMT") );
+- QCOMPARE( listOfFonts.at(1).type(), Poppler::FontInfo::TrueType );
+- QCOMPARE( listOfFonts.at(1).typeName(), QString("TrueType") );
+-
+- QCOMPARE( listOfFonts.at(1).isEmbedded(), false );
+- QCOMPARE( listOfFonts.at(1).isSubset(), false );
+-
+- delete doc;
+-}
+-
+-void TestFontsData::checkFontIterator()
+-{
+- // loading a 1-page document
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/tests/type3.pdf");
+- QVERIFY( doc );
+- // loading a 6-pages document
+- Poppler::Document *doc6 = Poppler::Document::load(TESTDATADIR "/tests/cropbox.pdf");
+- QVERIFY( doc6 );
+-
+- std::unique_ptr< Poppler::FontIterator > it;
+-
+- // some tests with the 1-page document:
+- // - check a default iterator
+- it.reset( doc->newFontIterator() );
+- QVERIFY( it->hasNext() );
+- // - check an iterator for negative pages to behave as 0
+- it.reset( doc->newFontIterator( -1 ) );
+- QVERIFY( it->hasNext() );
+- // - check an iterator for pages out of the page limit
+- it.reset( doc->newFontIterator( 1 ) );
+- QVERIFY( !it->hasNext() );
+- // - check that it reaches the end after 1 iteration
+- it.reset( doc->newFontIterator() );
+- QVERIFY( it->hasNext() );
+- it->next();
+- QVERIFY( !it->hasNext() );
+-
+- // some tests with the 6-page document:
+- // - check a default iterator
+- it.reset( doc6->newFontIterator() );
+- QVERIFY( it->hasNext() );
+- // - check an iterator for pages out of the page limit
+- it.reset( doc6->newFontIterator( 6 ) );
+- QVERIFY( !it->hasNext() );
+- // - check that it reaches the end after 6 iterations
+- it.reset( doc6->newFontIterator() );
+- QVERIFY( it->hasNext() );
+- it->next();
+- QVERIFY( it->hasNext() );
+- it->next();
+- QVERIFY( it->hasNext() );
+- it->next();
+- QVERIFY( it->hasNext() );
+- it->next();
+- QVERIFY( it->hasNext() );
+- it->next();
+- QVERIFY( it->hasNext() );
+- it->next();
+- QVERIFY( !it->hasNext() );
+-
+- delete doc;
+- delete doc6;
+-}
+-
+-void TestFontsData::checkSecondDocumentQuery()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/tests/type3.pdf");
+- QVERIFY( doc );
+-
+- QList<Poppler::FontInfo> listOfFonts = doc->fonts();
+- QCOMPARE( listOfFonts.size(), 2 );
+- // check we get the very same result when calling fonts() again (#19405)
+- QList<Poppler::FontInfo> listOfFonts2 = doc->fonts();
+- QCOMPARE( listOfFonts, listOfFonts2 );
+-
+- delete doc;
+-}
+-
+-void TestFontsData::checkMultipleIterations()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/tests/type3.pdf");
+- QVERIFY( doc );
+-
+- QList<Poppler::FontInfo> listOfFonts = loadFontsViaIterator( doc );
+- QCOMPARE( listOfFonts.size(), 2 );
+- QList<Poppler::FontInfo> listOfFonts2 = loadFontsViaIterator( doc );
+- QCOMPARE( listOfFonts, listOfFonts2 );
+-
+- delete doc;
+-}
+-
+-void TestFontsData::checkScanForFonts()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/tests/fonts.pdf");
+- QVERIFY( doc );
+-
+- QList<Poppler::FontInfo> listOfFonts = doc->fonts();
+- QCOMPARE( listOfFonts.size(), 3 );
+- // check we get the very same result when gatering fonts using scanForFonts
+- QList<Poppler::FontInfo> listOfFonts2;
+- for ( int i = 0; i < doc->numPages(); ++i )
+- {
+- doc->scanForFonts( 1, &listOfFonts2 );
+- }
+- QCOMPARE( listOfFonts, listOfFonts2 );
+-
+- // check doing a second scanForFonts gives no result
+- QList<Poppler::FontInfo> listOfFonts3;
+- for ( int i = 0; i < doc->numPages(); ++i )
+- {
+- doc->scanForFonts( 1, &listOfFonts3 );
+- }
+- QVERIFY( listOfFonts3.isEmpty() );
+-
+- delete doc;
+-}
+-
+-QTEST_MAIN(TestFontsData)
+-#include "check_fonts.moc"
+-
+diff --git a/qt4/tests/check_goostring.cpp b/qt4/tests/check_goostring.cpp
+deleted file mode 100644
+index 69f7cdc5..00000000
+--- a/qt4/tests/check_goostring.cpp
++++ /dev/null
+@@ -1,127 +0,0 @@
+-#include <QtCore/QScopedPointer>
+-#include <QtTest/QtTest>
+-
+-#include "goo/GooString.h"
+-
+-class TestGooString : public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void testInsertData_data();
+- void testInsertData();
+- void testInsert();
+- void testFormat();
+-};
+-
+-void TestGooString::testInsertData_data()
+-{
+- QTest::addColumn<QByteArray>("string");
+- QTest::addColumn<QByteArray>("addition");
+- QTest::addColumn<int>("position");
+- QTest::addColumn<QByteArray>("result");
+-
+- QTest::newRow("foo") << QByteArray("foo") << QByteArray("bar") << 0 << QByteArray("barfoo");
+- QTest::newRow("<empty>") << QByteArray() << QByteArray("bar") << 0 << QByteArray("bar");
+- QTest::newRow("foo+bar #1") << QByteArray("f+bar") << QByteArray("oo") << 1 << QByteArray("foo+bar");
+- QTest::newRow("foo+bar #2") << QByteArray("fobar") << QByteArray("o+") << 2 << QByteArray("foo+bar");
+- QTest::newRow("foo+bar #last") << QByteArray("foo+r") << QByteArray("ba") << 4 << QByteArray("foo+bar");
+- QTest::newRow("foo+bar #end") << QByteArray("foo+") << QByteArray("bar") << 4 << QByteArray("foo+bar");
+- QTest::newRow("long #start") << QByteArray("very string") << QByteArray("long long long long long ") << 5 << QByteArray("very long long long long long string");
+-}
+-
+-void TestGooString::testInsertData()
+-{
+- QFETCH(QByteArray, string);
+- QFETCH(QByteArray, addition);
+- QFETCH(int, position);
+- QFETCH(QByteArray, result);
+-
+- GooString goo(string.constData());
+- QCOMPARE(goo.getCString(), string.constData());
+- goo.insert(position, addition.constData());
+- QCOMPARE(goo.getCString(), result.constData());
+-}
+-
+-void TestGooString::testInsert()
+-{
+- {
+- GooString goo;
+- goo.insert(0, ".");
+- goo.insert(0, "This is a very long long test string");
+- QCOMPARE(goo.getCString(), "This is a very long long test string.");
+- }
+- {
+- GooString goo;
+- goo.insert(0, "second-part-third-part");
+- goo.insert(0, "first-part-");
+- QCOMPARE(goo.getCString(), "first-part-second-part-third-part");
+- }
+-}
+-
+-void TestGooString::testFormat()
+-{
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{0:d},{1:x}", 1, 0xF));
+- QCOMPARE(goo->getCString(), "1,f");
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{0:d},{0:x},{0:X},{0:o},{0:b},{0:w}", 0xA));
+- QCOMPARE(goo->getCString(), "10,a,A,12,1010, ");
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{0:d},{0:x},{0:X},{0:o},{0:b}", -0xA));
+- QCOMPARE(goo->getCString(), "-10,-a,-A,-12,-1010");
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{0:c}{1:c}{2:c}{3:c}",
+- 'T', (char)'E', (short)'S', (int)'T'));
+- QCOMPARE(goo->getCString(), "TEST");
+-
+- const QScopedPointer<GooString> goo2(GooString::format("{0:s} {1:t}", "TEST", goo.data()));
+- QCOMPARE(goo2->getCString(), "TEST TEST");
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{0:ud} {1:d} {2:d}",
+- UINT_MAX, INT_MAX, INT_MIN));
+- const QByteArray expected = QString("%1 %2 %3").arg(UINT_MAX).arg(INT_MAX).arg(INT_MIN).toLatin1();
+- QCOMPARE(goo->getCString(), expected.constData());
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{0:uld} {1:ld} {2:ld}",
+- ULONG_MAX, LONG_MAX, LONG_MIN));
+- const QByteArray expected = QString("%1 %2 %3").arg(ULONG_MAX).arg(LONG_MAX).arg(LONG_MIN).toLatin1();
+- QCOMPARE(goo->getCString(), expected.constData());
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{0:ulld} {1:lld} {2:lld}",
+- ULLONG_MAX, LLONG_MAX, LLONG_MIN));
+- const QByteArray expected = QString("%1 %2 %3").arg(ULLONG_MAX).arg(LLONG_MAX).arg(LLONG_MIN).toLatin1();
+- QCOMPARE(goo->getCString(), expected.constData());
+- }
+- {
+- const QScopedPointer<GooString> gooD(GooString::format("{0:.1f} {0:.1g} {0:.1gs} | {1:.1f} {1:.1g} {1:.1gs}", 1., .012));
+- const QScopedPointer<GooString> gooF(GooString::format("{0:.1f} {0:.1g} {0:.1gs} | {1:.1f} {1:.1g} {1:.1gs}", 1.f, .012f));
+- QCOMPARE(gooD->getCString(), "1.0 1 1 | 0.0 0 0.01");
+- QCOMPARE(gooF->getCString(), "1.0 1 1 | 0.0 0 0.01");
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{0:.4f} {0:.4g} {0:.4gs}", .012));
+- QCOMPARE(goo->getCString(), "0.0120 0.012 0.012");
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{{ SomeText {0:d} }}", 1));
+- QCOMPARE(goo->getCString(), "{ SomeText 1 }");
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("{{{{ {{ SomeText {0:d}", 2));
+- QCOMPARE(goo->getCString(), "{{ { SomeText 2");
+- }
+- {
+- const QScopedPointer<GooString> goo(GooString::format("SomeText {0:d} }} }}}}", 3));
+- QCOMPARE(goo->getCString(), "SomeText 3 } }}");
+- }
+-}
+-
+-QTEST_MAIN(TestGooString)
+-#include "check_goostring.moc"
+-
+diff --git a/qt4/tests/check_lexer.cpp b/qt4/tests/check_lexer.cpp
+deleted file mode 100644
+index 93c3621d..00000000
+--- a/qt4/tests/check_lexer.cpp
++++ /dev/null
+@@ -1,107 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include "Object.h"
+-#include "Lexer.h"
+-
+-class TestLexer : public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void testNumbers();
+-};
+-
+-void TestLexer::testNumbers()
+-{
+- char data[] = "0 1 -1 2147483647 -2147483647 2147483648 -2147483648 4294967297 -2147483649 0.1 1.1 -1.1 2147483647.1 -2147483647.1 2147483648.1 -2147483648.1 4294967297.1 -2147483649.1 9223372036854775807 18446744073709551615";
+- MemStream *stream = new MemStream(data, 0, strlen(data), Object(objNull));
+- Lexer *lexer = new Lexer(NULL, stream);
+- QVERIFY( lexer );
+-
+- Object obj;
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt);
+- QCOMPARE(obj.getInt(), 0);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt);
+- QCOMPARE(obj.getInt(), 1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt);
+- QCOMPARE(obj.getInt(), -1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt);
+- QCOMPARE(obj.getInt(), 2147483647);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt);
+- QCOMPARE(obj.getInt(), -2147483647);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt64);
+- QCOMPARE(obj.getInt64(), 2147483648ll);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt);
+- QCOMPARE(obj.getInt(), -2147483647-1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt64);
+- QCOMPARE(obj.getInt64(), 4294967297ll);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt64);
+- QCOMPARE(obj.getInt64(), -2147483649ll);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), 0.1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), 1.1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), -1.1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), 2147483647.1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), -2147483647.1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), 2147483648.1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), -2147483648.1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), 4294967297.1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), -2147483649.1);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objInt64);
+- QCOMPARE(obj.getInt64(), 9223372036854775807ll);
+-
+- obj = lexer->getObj();
+- QCOMPARE(obj.getType(), objReal);
+- QCOMPARE(obj.getReal(), 18446744073709551616.);
+-
+- delete lexer;
+-}
+-
+-QTEST_MAIN(TestLexer)
+-#include "check_lexer.moc"
+-
+diff --git a/qt4/tests/check_links.cpp b/qt4/tests/check_links.cpp
+deleted file mode 100644
+index e5c17368..00000000
+--- a/qt4/tests/check_links.cpp
++++ /dev/null
+@@ -1,98 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-#include <memory>
+-
+-class TestLinks : public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void checkDocumentWithNoDests();
+- void checkDests_xr01();
+- void checkDests_xr02();
+-};
+-
+-static bool isDestinationValid_pageNumber( const Poppler::LinkDestination *dest, const Poppler::Document *doc )
+-{
+- return dest->pageNumber() > 0 && dest->pageNumber() <= doc->numPages();
+-}
+-
+-static bool isDestinationValid_name( const Poppler::LinkDestination *dest )
+-{
+- return !dest->destinationName().isEmpty();
+-}
+-
+-
+-void TestLinks::checkDocumentWithNoDests()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/WithAttachments.pdf");
+- QVERIFY( doc );
+-
+- std::unique_ptr< Poppler::LinkDestination > dest;
+- dest.reset( doc->linkDestination("no.dests.in.this.document") );
+- QVERIFY( !isDestinationValid_pageNumber( dest.get(), doc ) );
+- QVERIFY( isDestinationValid_name( dest.get() ) );
+-
+- delete doc;
+-}
+-
+-void TestLinks::checkDests_xr01()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/xr01.pdf");
+- QVERIFY( doc );
+-
+- Poppler::Page *page = doc->page(0);
+- QVERIFY( page );
+-
+- QList< Poppler::Link* > links = page->links();
+- QCOMPARE( links.count(), 2 );
+-
+- {
+- QCOMPARE( links.at(0)->linkType(), Poppler::Link::Goto );
+- Poppler::LinkGoto *link = static_cast< Poppler::LinkGoto * >( links.at(0) );
+- const Poppler::LinkDestination dest = link->destination();
+- QVERIFY( !isDestinationValid_pageNumber( &dest, doc ) );
+- QVERIFY( isDestinationValid_name( &dest ) );
+- QCOMPARE( dest.destinationName(), QString::fromLatin1("section.1") );
+- }
+-
+- {
+- QCOMPARE( links.at(1)->linkType(), Poppler::Link::Goto );
+- Poppler::LinkGoto *link = static_cast< Poppler::LinkGoto * >( links.at(1) );
+- const Poppler::LinkDestination dest = link->destination();
+- QVERIFY( !isDestinationValid_pageNumber( &dest, doc ) );
+- QVERIFY( isDestinationValid_name( &dest ) );
+- QCOMPARE( dest.destinationName(), QString::fromLatin1("section.2") );
+- }
+-
+- qDeleteAll(links);
+- delete page;
+- delete doc;
+-}
+-
+-void TestLinks::checkDests_xr02()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/xr02.pdf");
+- QVERIFY( doc );
+-
+- std::unique_ptr< Poppler::LinkDestination > dest;
+- dest.reset( doc->linkDestination("section.1") );
+- QVERIFY( isDestinationValid_pageNumber( dest.get(), doc ) );
+- QVERIFY( !isDestinationValid_name( dest.get() ) );
+- dest.reset( doc->linkDestination("section.2") );
+- QVERIFY( isDestinationValid_pageNumber( dest.get(), doc ) );
+- QVERIFY( !isDestinationValid_name( dest.get() ) );
+- dest.reset( doc->linkDestination("section.3") );
+- QVERIFY( !isDestinationValid_pageNumber( dest.get(), doc ) );
+- QVERIFY( isDestinationValid_name( dest.get() ) );
+-
+- delete doc;
+-}
+-
+-QTEST_MAIN(TestLinks)
+-
+-#include "check_links.moc"
+diff --git a/qt4/tests/check_metadata.cpp b/qt4/tests/check_metadata.cpp
+deleted file mode 100644
+index fb4f7163..00000000
+--- a/qt4/tests/check_metadata.cpp
++++ /dev/null
+@@ -1,275 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-class TestMetaData: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void checkStrings_data();
+- void checkStrings();
+- void checkStrings2_data();
+- void checkStrings2();
+- void checkStringKeys();
+- void checkLinearised();
+- void checkNumPages();
+- void checkDate();
+- void checkPageSize();
+- void checkPortraitOrientation();
+- void checkLandscapeOrientation();
+- void checkUpsideDownOrientation();
+- void checkSeascapeOrientation();
+- void checkVersion();
+- void checkPdfId();
+- void checkNoPdfId();
+-};
+-
+-void TestMetaData::checkStrings_data()
+-{
+- QTest::addColumn<QString>("key");
+- QTest::addColumn<QString>("value");
+-
+- QTest::newRow( "Author" ) << "Author" << "Brad Hards";
+- QTest::newRow( "Title" ) << "Title" << "Two pages";
+- QTest::newRow( "Subject" ) << "Subject"
+- << "A two page layout for poppler testing";
+- QTest::newRow( "Keywords" ) << "Keywords" << "Qt4 bindings";
+- QTest::newRow( "Creator" ) << "Creator" << "iText: cgpdftops CUPS filter";
+- QTest::newRow( "Producer" ) << "Producer" << "Acrobat Distiller 7.0 for Macintosh";
+-}
+-
+-void TestMetaData::checkStrings()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/doublepage.pdf");
+- QVERIFY( doc );
+-
+- QFETCH( QString, key );
+- QFETCH( QString, value );
+- QCOMPARE( doc->info(key), value );
+-
+- delete doc;
+-}
+-
+-void TestMetaData::checkStrings2_data()
+-{
+- QTest::addColumn<QString>("key");
+- QTest::addColumn<QString>("value");
+-
+- QTest::newRow( "Title" ) << "Title" << "Malaga hotels";
+- QTest::newRow( "Author" ) << "Author" << "Brad Hards";
+- QTest::newRow( "Creator" ) << "Creator" << "Safari: cgpdftops CUPS filter";
+- QTest::newRow( "Producer" ) << "Producer" << "Acrobat Distiller 7.0 for Macintosh";
+- QTest::newRow( "Keywords" ) << "Keywords" << "First\rSecond\rthird";
+- QTest::newRow( "Custom1" ) << "Custom1" << "CustomValue1";
+- QTest::newRow( "Custom2" ) << "Custom2" << "CustomValue2";
+-}
+-
+-void TestMetaData::checkStrings2()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/truetype.pdf");
+- QVERIFY( doc );
+-
+- QFETCH( QString, key );
+- QFETCH( QString, value );
+- QCOMPARE( doc->info(key), value );
+-
+- delete doc;
+-}
+-
+-void TestMetaData::checkStringKeys()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/truetype.pdf");
+- QVERIFY( doc );
+-
+- QStringList keyList;
+- keyList << "Title" << "Author" << "Creator" << "Keywords" << "CreationDate";
+- keyList << "Producer" << "ModDate" << "Custom1" << "Custom2";
+- keyList.sort();
+- QStringList keysInDoc = doc->infoKeys();
+- keysInDoc.sort();
+- QCOMPARE( keysInDoc, keyList );
+-
+- delete doc;
+-}
+-
+-void TestMetaData::checkLinearised()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/orientation.pdf");
+- QVERIFY( doc );
+-
+- QVERIFY( doc->isLinearized() );
+-
+- delete doc;
+-
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/truetype.pdf");
+- QVERIFY( doc );
+- QCOMPARE( doc->isLinearized(), false );
+-
+- delete doc;
+-}
+-
+-void TestMetaData::checkPortraitOrientation()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/orientation.pdf");
+- QVERIFY( doc );
+-
+- Poppler::Page *page = doc->page(0);
+- QCOMPARE( page->orientation(), Poppler::Page::Portrait );
+-
+- delete page;
+- delete doc;
+-}
+-
+-void TestMetaData::checkNumPages()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/doublepage.pdf");
+- QVERIFY( doc );
+- QCOMPARE( doc->numPages(), 2 );
+-
+- delete doc;
+-
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/truetype.pdf");
+- QVERIFY( doc );
+- QCOMPARE( doc->numPages(), 1 );
+-
+- delete doc;
+-}
+-
+-void TestMetaData::checkDate()
+-{
+- Poppler::Document *doc;
+-
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/truetype.pdf");
+- QVERIFY( doc );
+- QCOMPARE( doc->date("ModDate"), QDateTime(QDate(2005, 12, 5), QTime(9,44,46), Qt::UTC ) );
+- QCOMPARE( doc->date("CreationDate"), QDateTime(QDate(2005, 8, 13), QTime(1,12,11), Qt::UTC ) );
+-
+- delete doc;
+-}
+-
+-void TestMetaData::checkPageSize()
+-{
+- Poppler::Document *doc;
+-
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/truetype.pdf");
+- QVERIFY( doc );
+- Poppler::Page *page = doc->page(0);
+- QCOMPARE( page->pageSize(), QSize(595, 842) );
+- QCOMPARE( page->pageSizeF(), QSizeF(595.22, 842) );
+-
+- delete page;
+- delete doc;
+-}
+-
+-
+-void TestMetaData::checkLandscapeOrientation()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/orientation.pdf");
+- QVERIFY( doc );
+-
+- Poppler::Page *page = doc->page(1);
+- QCOMPARE( page->orientation(), Poppler::Page::Landscape );
+-
+- delete page;
+- delete doc;
+-}
+-
+-void TestMetaData::checkUpsideDownOrientation()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/orientation.pdf");
+- QVERIFY( doc );
+-
+- Poppler::Page *page = doc->page(2);
+- QCOMPARE( page->orientation(), Poppler::Page::UpsideDown );
+-
+- delete page;
+- delete doc;
+-}
+-
+-void TestMetaData::checkSeascapeOrientation()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/orientation.pdf");
+- QVERIFY( doc );
+-
+- Poppler::Page *page = doc->page(3);
+- QCOMPARE( page->orientation(), Poppler::Page::Seascape );
+-
+- delete page;
+- delete doc;
+-}
+-
+-void TestMetaData::checkVersion()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/doublepage.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->pdfVersion(), 1.6 );
+- int major = 0, minor = 0;
+- doc->getPdfVersion( &major, &minor );
+- QCOMPARE( major, 1 );
+- QCOMPARE( minor, 6 );
+-
+- delete doc;
+-}
+-
+-void TestMetaData::checkPdfId()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/A6EmbeddedFiles.pdf");
+- QVERIFY( doc );
+-
+- const QByteArray referencePermanentId( "00C9D5B6D8FB11D7A902003065D630AA" );
+- const QByteArray referenceUpdateId( "39AECAE6D8FB11D7A902003065D630AA" );
+-
+- {
+- // no IDs wanted, just existance check
+- QVERIFY( doc->getPdfId( 0, 0 ) );
+- }
+- {
+- // only permanent ID
+- QByteArray permanentId;
+- QVERIFY( doc->getPdfId( &permanentId, 0 ) );
+- QCOMPARE( permanentId.toUpper(), referencePermanentId );
+- }
+- {
+- // only update ID
+- QByteArray updateId;
+- QVERIFY( doc->getPdfId( 0, &updateId ) );
+- QCOMPARE( updateId.toUpper(), referenceUpdateId );
+- }
+- {
+- // both IDs
+- QByteArray permanentId;
+- QByteArray updateId;
+- QVERIFY( doc->getPdfId( &permanentId, &updateId ) );
+- QCOMPARE( permanentId.toUpper(), referencePermanentId );
+- QCOMPARE( updateId.toUpper(), referenceUpdateId );
+- }
+-
+- delete doc;
+-}
+-
+-void TestMetaData::checkNoPdfId()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/WithActualText.pdf");
+- QVERIFY( doc );
+-
+- QVERIFY( !doc->getPdfId( 0, 0 ) );
+-
+- delete doc;
+-}
+-
+-QTEST_MAIN(TestMetaData)
+-#include "check_metadata.moc"
+-
+diff --git a/qt4/tests/check_optcontent.cpp b/qt4/tests/check_optcontent.cpp
+deleted file mode 100644
+index 2de29952..00000000
+--- a/qt4/tests/check_optcontent.cpp
++++ /dev/null
+@@ -1,446 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include "PDFDoc.h"
+-#include "GlobalParams.h"
+-
+-#include <poppler-qt4.h>
+-
+-class TestOptionalContent: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void checkVisPolicy();
+- void checkNestedLayers();
+- void checkNoOptionalContent();
+- void checkIsVisible();
+- void checkVisibilitySetting();
+- void checkRadioButtons();
+-};
+-
+-void TestOptionalContent::checkVisPolicy()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/vis_policy_test.pdf");
+- QVERIFY( doc );
+-
+- QVERIFY( doc->hasOptionalContent() );
+-
+- Poppler::OptContentModel *optContent = doc->optionalContentModel();
+- QModelIndex index;
+- index = optContent->index( 0, 0, QModelIndex() );
+- QCOMPARE( optContent->data( index, Qt::DisplayRole ).toString(), QString( "A" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( index, Qt::CheckStateRole ).toInt() ), Qt::Checked );
+- index = optContent->index( 1, 0, QModelIndex() );
+- QCOMPARE( optContent->data( index, Qt::DisplayRole ).toString(), QString( "B" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( index, Qt::CheckStateRole ).toInt() ), Qt::Checked );
+-
+- delete doc;
+-}
+-
+-void TestOptionalContent::checkNestedLayers()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/NestedLayers.pdf");
+- QVERIFY( doc );
+-
+- QVERIFY( doc->hasOptionalContent() );
+-
+- Poppler::OptContentModel *optContent = doc->optionalContentModel();
+- QModelIndex index;
+-
+- index = optContent->index( 0, 0, QModelIndex() );
+- QCOMPARE( optContent->data( index, Qt::DisplayRole ).toString(), QString( "Black Text and Green Snow" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( index, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- index = optContent->index( 1, 0, QModelIndex() );
+- QCOMPARE( optContent->data( index, Qt::DisplayRole ).toString(), QString( "Mountains and Image" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( index, Qt::CheckStateRole ).toInt() ), Qt::Checked );
+-
+- // This is a sub-item of "Mountains and Image"
+- QModelIndex subindex = optContent->index( 0, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "Image" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( index, Qt::CheckStateRole ).toInt() ), Qt::Checked );
+-
+- index = optContent->index( 2, 0, QModelIndex() );
+- QCOMPARE( optContent->data( index, Qt::DisplayRole ).toString(), QString( "Starburst" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( index, Qt::CheckStateRole ).toInt() ), Qt::Checked );
+-
+- index = optContent->index( 3, 0, QModelIndex() );
+- QCOMPARE( optContent->data( index, Qt::DisplayRole ).toString(), QString( "Watermark" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( index, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- delete doc;
+-}
+-
+-void TestOptionalContent::checkNoOptionalContent()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/orientation.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->hasOptionalContent(), false );
+-
+- delete doc;
+-}
+-
+-void TestOptionalContent::checkIsVisible()
+-{
+- GooString *fileName = new GooString(TESTDATADIR "/unittestcases/vis_policy_test.pdf");
+- globalParams = new GlobalParams();
+- PDFDoc *doc = new PDFDoc( fileName );
+- QVERIFY( doc );
+-
+- OCGs *ocgs = doc->getOptContentConfig();
+- QVERIFY( ocgs );
+-
+- XRef *xref = doc->getXRef();
+-
+- Object obj;
+-
+- // In this test, both Ref(21,0) and Ref(2,0) are set to On
+-
+- // AnyOn, one element array:
+- // 22 0 obj<</Type/OCMD/OCGs[21 0 R]/P/AnyOn>>endobj
+- obj = xref->fetch( 22, 0 );
+- QVERIFY( obj.isDict() );
+- QVERIFY( ocgs->optContentIsVisible( &obj ) );
+-
+- // Same again, looking for any leaks or dubious free()'s
+- obj = xref->fetch( 22, 0 );
+- QVERIFY( obj.isDict() );
+- QVERIFY( ocgs->optContentIsVisible( &obj ) );
+-
+- // AnyOff, one element array:
+- // 29 0 obj<</Type/OCMD/OCGs[21 0 R]/P/AnyOff>>endobj
+- obj = xref->fetch( 29, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AllOn, one element array:
+- // 36 0 obj<</Type/OCMD/OCGs[28 0 R]/P/AllOn>>endobj
+- obj = xref->fetch( 36, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+-
+- // AllOff, one element array:
+- // 43 0 obj<</Type/OCMD/OCGs[28 0 R]/P/AllOff>>endobj
+- obj = xref->fetch( 43, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AnyOn, multi-element array:
+- // 50 0 obj<</Type/OCMD/OCGs[21 0 R 28 0 R]/P/AnyOn>>endobj
+- obj = xref->fetch( 50, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AnyOff, multi-element array:
+- // 57 0 obj<</Type/OCMD/P/AnyOff/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 57, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AllOn, multi-element array:
+- // 64 0 obj<</Type/OCMD/P/AllOn/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 64, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AllOff, multi-element array:
+- // 71 0 obj<</Type/OCMD/P/AllOff/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 71, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- delete doc;
+- delete globalParams;
+-}
+-
+-void TestOptionalContent::checkVisibilitySetting()
+-{
+- globalParams = new GlobalParams();
+- GooString *fileName = new GooString(TESTDATADIR "/unittestcases/vis_policy_test.pdf");
+- PDFDoc *doc = new PDFDoc( fileName );
+- QVERIFY( doc );
+-
+- OCGs *ocgs = doc->getOptContentConfig();
+- QVERIFY( ocgs );
+-
+- XRef *xref = doc->getXRef();
+-
+- Object obj;
+-
+- // In this test, both Ref(21,0) and Ref(28,0) start On,
+- // based on the file settings
+- Object ref21obj( 21, 0 );
+- Ref ref21 = ref21obj.getRef();
+- OptionalContentGroup *ocgA = ocgs->findOcgByRef( ref21 );
+- QVERIFY( ocgA );
+-
+- QVERIFY( (ocgA->getName()->cmp("A")) == 0 );
+- QCOMPARE( ocgA->getState(), OptionalContentGroup::On );
+-
+- Object ref28obj( 28, 0 );
+- Ref ref28 = ref28obj.getRef();
+- OptionalContentGroup *ocgB = ocgs->findOcgByRef( ref28 );
+- QVERIFY( ocgB );
+-
+- QVERIFY( (ocgB->getName()->cmp("B")) == 0 );
+- QCOMPARE( ocgB->getState(), OptionalContentGroup::On );
+-
+- // turn one Off
+- ocgA->setState( OptionalContentGroup::Off );
+-
+- // AnyOn, one element array:
+- // 22 0 obj<</Type/OCMD/OCGs[21 0 R]/P/AnyOn>>endobj
+- obj = xref->fetch( 22, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // Same again, looking for any leaks or dubious free()'s
+- obj = xref->fetch( 22, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AnyOff, one element array:
+- // 29 0 obj<</Type/OCMD/OCGs[21 0 R]/P/AnyOff>>endobj
+- obj = xref->fetch( 29, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AllOn, one element array:
+- // 36 0 obj<</Type/OCMD/OCGs[28 0 R]/P/AllOn>>endobj
+- obj = xref->fetch( 36, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AllOff, one element array:
+- // 43 0 obj<</Type/OCMD/OCGs[28 0 R]/P/AllOff>>endobj
+- obj = xref->fetch( 43, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AnyOn, multi-element array:
+- // 50 0 obj<</Type/OCMD/OCGs[21 0 R 28 0 R]/P/AnyOn>>endobj
+- obj = xref->fetch( 50, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AnyOff, multi-element array:
+- // 57 0 obj<</Type/OCMD/P/AnyOff/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 57, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AllOn, multi-element array:
+- // 64 0 obj<</Type/OCMD/P/AllOn/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 64, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AllOff, multi-element array:
+- // 71 0 obj<</Type/OCMD/P/AllOff/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 71, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+-
+- // Turn the other one off as well (i.e. both are Off)
+- ocgB->setState(OptionalContentGroup::Off);
+-
+- // AnyOn, one element array:
+- // 22 0 obj<</Type/OCMD/OCGs[21 0 R]/P/AnyOn>>endobj
+- obj = xref->fetch( 22, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // Same again, looking for any leaks or dubious free()'s
+- obj = xref->fetch( 22, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AnyOff, one element array:
+- // 29 0 obj<</Type/OCMD/OCGs[21 0 R]/P/AnyOff>>endobj
+- obj = xref->fetch( 29, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AllOn, one element array:
+- // 36 0 obj<</Type/OCMD/OCGs[28 0 R]/P/AllOn>>endobj
+- obj = xref->fetch( 36, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AllOff, one element array:
+- // 43 0 obj<</Type/OCMD/OCGs[28 0 R]/P/AllOff>>endobj
+- obj = xref->fetch( 43, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AnyOn, multi-element array:
+- // 50 0 obj<</Type/OCMD/OCGs[21 0 R 28 0 R]/P/AnyOn>>endobj
+- obj = xref->fetch( 50, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AnyOff, multi-element array:
+- // 57 0 obj<</Type/OCMD/P/AnyOff/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 57, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AllOn, multi-element array:
+- // 64 0 obj<</Type/OCMD/P/AllOn/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 64, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AllOff, multi-element array:
+- // 71 0 obj<</Type/OCMD/P/AllOff/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 71, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+-
+- // Turn the first one on again (21 is On, 28 is Off)
+- ocgA->setState(OptionalContentGroup::On);
+-
+- // AnyOn, one element array:
+- // 22 0 obj<</Type/OCMD/OCGs[21 0 R]/P/AnyOn>>endobj
+- obj = xref->fetch( 22, 0);
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // Same again, looking for any leaks or dubious free()'s
+- obj = xref->fetch( 22, 0);
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AnyOff, one element array:
+- // 29 0 obj<</Type/OCMD/OCGs[21 0 R]/P/AnyOff>>endobj
+- obj = xref->fetch( 29, 0);
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AllOn, one element array:
+- // 36 0 obj<</Type/OCMD/OCGs[28 0 R]/P/AllOn>>endobj
+- obj = xref->fetch( 36, 0);
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AllOff, one element array:
+- // 43 0 obj<</Type/OCMD/OCGs[28 0 R]/P/AllOff>>endobj
+- obj = xref->fetch( 43, 0);
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AnyOn, multi-element array:
+- // 50 0 obj<</Type/OCMD/OCGs[21 0 R 28 0 R]/P/AnyOn>>endobj
+- obj = xref->fetch( 50, 0);
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AnyOff, multi-element array:
+- // 57 0 obj<</Type/OCMD/P/AnyOff/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 57, 0);
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), true );
+-
+- // AllOn, multi-element array:
+- // 64 0 obj<</Type/OCMD/P/AllOn/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 64, 0);
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- // AllOff, multi-element array:
+- // 71 0 obj<</Type/OCMD/P/AllOff/OCGs[21 0 R 28 0 R]>>endobj
+- obj = xref->fetch( 71, 0 );
+- QVERIFY( obj.isDict() );
+- QCOMPARE( ocgs->optContentIsVisible( &obj ), false );
+-
+- delete doc;
+- delete globalParams;
+-}
+-
+-void TestOptionalContent::checkRadioButtons()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/ClarityOCGs.pdf");
+- QVERIFY( doc );
+-
+- QVERIFY( doc->hasOptionalContent() );
+-
+- Poppler::OptContentModel *optContent = doc->optionalContentModel();
+- QModelIndex index;
+-
+- index = optContent->index( 0, 0, QModelIndex() );
+- QCOMPARE( optContent->data( index, Qt::DisplayRole ).toString(), QString( "Languages" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( index, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- // These are sub-items of the "Languages" label
+- QModelIndex subindex = optContent->index( 0, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "English" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Checked );
+-
+- subindex = optContent->index( 1, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "French" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- subindex = optContent->index( 2, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "Japanese" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- // RBGroup of languages, so turning on Japanese should turn off English
+- QVERIFY( optContent->setData( subindex, QVariant( true ), Qt::CheckStateRole ) );
+-
+- subindex = optContent->index( 0, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "English" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- subindex = optContent->index( 2, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "Japanese" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Checked );
+-
+- subindex = optContent->index( 1, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "French" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- // and turning on French should turn off Japanese
+- QVERIFY( optContent->setData( subindex, QVariant( true ), Qt::CheckStateRole ) );
+-
+- subindex = optContent->index( 0, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "English" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- subindex = optContent->index( 2, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "Japanese" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- subindex = optContent->index( 1, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "French" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Checked );
+-
+-
+- // and turning off French should leave them all off
+- QVERIFY( optContent->setData( subindex, QVariant( false ), Qt::CheckStateRole ) );
+-
+- subindex = optContent->index( 0, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "English" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- subindex = optContent->index( 2, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "Japanese" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- subindex = optContent->index( 1, 0, index );
+- QCOMPARE( optContent->data( subindex, Qt::DisplayRole ).toString(), QString( "French" ) );
+- QCOMPARE( static_cast<Qt::CheckState>( optContent->data( subindex, Qt::CheckStateRole ).toInt() ), Qt::Unchecked );
+-
+- delete doc;
+-}
+-
+-QTEST_MAIN(TestOptionalContent)
+-
+-#include "check_optcontent.moc"
+-
+diff --git a/qt4/tests/check_pagelabelinfo.cpp b/qt4/tests/check_pagelabelinfo.cpp
+deleted file mode 100644
+index 4eb1ec36..00000000
+--- a/qt4/tests/check_pagelabelinfo.cpp
++++ /dev/null
+@@ -1,43 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include "PageLabelInfo_p.h"
+-
+-class TestPageLabelInfo : public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void testToRoman();
+- void testFromRoman();
+- void testToLatin();
+- void testFromLatin();
+-};
+-
+-void TestPageLabelInfo::testToRoman()
+-{
+- GooString str;
+- toRoman(177, &str, gFalse);
+- QCOMPARE (str.getCString(), "clxxvii");
+-}
+-
+-void TestPageLabelInfo::testFromRoman()
+-{
+- GooString roman("clxxvii");
+- QCOMPARE(fromRoman(roman.getCString()), 177);
+-}
+-
+-void TestPageLabelInfo::testToLatin()
+-{
+- GooString str;
+- toLatin(54, &str, gFalse);
+- QCOMPARE(str.getCString(), "bbb");
+-}
+-
+-void TestPageLabelInfo::testFromLatin()
+-{
+- GooString latin("ddd");
+- QCOMPARE(fromLatin(latin.getCString()), 56);
+-}
+-
+-QTEST_MAIN(TestPageLabelInfo)
+-#include "check_pagelabelinfo.moc"
+-
+diff --git a/qt4/tests/check_pagelayout.cpp b/qt4/tests/check_pagelayout.cpp
+deleted file mode 100644
+index 6108f886..00000000
+--- a/qt4/tests/check_pagelayout.cpp
++++ /dev/null
+@@ -1,49 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-class TestPageLayout: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void checkNone();
+- void checkSingle();
+- void checkFacing();
+-};
+-
+-void TestPageLayout::checkNone()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/UseNone.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->pageLayout(), Poppler::Document::NoLayout );
+-
+- delete doc;
+-}
+-
+-void TestPageLayout::checkSingle()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/FullScreen.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->pageLayout(), Poppler::Document::SinglePage );
+-
+- delete doc;
+-}
+-
+-void TestPageLayout::checkFacing()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/doublepage.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->pageLayout(), Poppler::Document::TwoPageRight );
+-
+- delete doc;
+-}
+-
+-QTEST_MAIN(TestPageLayout)
+-#include "check_pagelayout.moc"
+-
+diff --git a/qt4/tests/check_pagemode.cpp b/qt4/tests/check_pagemode.cpp
+deleted file mode 100644
+index 0565fe20..00000000
+--- a/qt4/tests/check_pagemode.cpp
++++ /dev/null
+@@ -1,73 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-class TestPageMode: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void checkNone();
+- void checkFullScreen();
+- void checkAttachments();
+- void checkThumbs();
+- void checkOC();
+-};
+-
+-void TestPageMode::checkNone()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/UseNone.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->pageMode(), Poppler::Document::UseNone );
+-
+- delete doc;
+-}
+-
+-void TestPageMode::checkFullScreen()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/FullScreen.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->pageMode(), Poppler::Document::FullScreen );
+-
+- delete doc;
+-}
+-
+-void TestPageMode::checkAttachments()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/UseAttachments.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->pageMode(), Poppler::Document::UseAttach );
+-
+- delete doc;
+-}
+-
+-void TestPageMode::checkThumbs()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/UseThumbs.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->pageMode(), Poppler::Document::UseThumbs );
+-
+- delete doc;
+-}
+-
+-void TestPageMode::checkOC()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/UseOC.pdf");
+- QVERIFY( doc );
+-
+- QCOMPARE( doc->pageMode(), Poppler::Document::UseOC );
+-
+- delete doc;
+-}
+-
+-QTEST_MAIN(TestPageMode)
+-#include "check_pagemode.moc"
+-
+diff --git a/qt4/tests/check_password.cpp b/qt4/tests/check_password.cpp
+deleted file mode 100644
+index 4c7dcd1c..00000000
+--- a/qt4/tests/check_password.cpp
++++ /dev/null
+@@ -1,88 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-class TestPassword: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void password1();
+- void password1a();
+- void password2();
+- void password2a();
+- void password2b();
+- void password3();
+-};
+-
+-
+-// BUG:4557
+-void TestPassword::password1()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(QString::fromUtf8(TESTDATADIR "/unittestcases/Gday garçon - open.pdf"), "", QString::fromUtf8("garçon").toLatin1() );
+- QVERIFY( doc );
+- QVERIFY( !doc->isLocked() );
+-
+- delete doc;
+-}
+-
+-
+-void TestPassword::password1a()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(QString::fromUtf8(TESTDATADIR "/unittestcases/Gday garçon - open.pdf") );
+- QVERIFY( doc );
+- QVERIFY( doc->isLocked() );
+- QVERIFY( !doc->unlock( "", QString::fromUtf8("garçon").toLatin1() ) );
+- QVERIFY( !doc->isLocked() );
+-
+- delete doc;
+-}
+-
+-void TestPassword::password2()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(QString::fromUtf8(TESTDATADIR "/unittestcases/Gday garçon - owner.pdf"), QString::fromUtf8("garçon").toLatin1(), "" );
+- QVERIFY( doc );
+- QVERIFY( !doc->isLocked() );
+-
+- delete doc;
+-}
+-
+-void TestPassword::password2a()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(QString::fromUtf8(TESTDATADIR "/unittestcases/Gday garçon - owner.pdf"), QString::fromUtf8("garçon").toLatin1() );
+- QVERIFY( doc );
+- QVERIFY( !doc->isLocked() );
+-
+- delete doc;
+-}
+-
+-void TestPassword::password2b()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(QString::fromUtf8(TESTDATADIR "/unittestcases/Gday garçon - owner.pdf") );
+- QVERIFY( doc );
+- QVERIFY( !doc->isLocked() );
+- QVERIFY( !doc->unlock( QString::fromUtf8("garçon").toLatin1(), "" ) );
+- QVERIFY( !doc->isLocked() );
+-
+- delete doc;
+-}
+-
+-void TestPassword::password3()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load( QString::fromUtf8(TESTDATADIR "/unittestcases/PasswordEncrypted.pdf") );
+- QVERIFY( doc );
+- QVERIFY( doc->isLocked() );
+- QVERIFY( !doc->unlock( "", "password" ) );
+- QVERIFY( !doc->isLocked() );
+-
+- delete doc;
+-}
+-
+-QTEST_MAIN(TestPassword)
+-#include "check_password.moc"
+-
+diff --git a/qt4/tests/check_permissions.cpp b/qt4/tests/check_permissions.cpp
+deleted file mode 100644
+index a3f3bdc6..00000000
+--- a/qt4/tests/check_permissions.cpp
++++ /dev/null
+@@ -1,44 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-class TestPermissions: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void permissions1();
+-};
+-
+-void TestPermissions::permissions1()
+-{
+- Poppler::Document *doc;
+- doc = Poppler::Document::load(TESTDATADIR "/unittestcases/orientation.pdf");
+- QVERIFY( doc );
+-
+- // we are allowed to print
+- QVERIFY( doc->okToPrint() );
+-
+- // we are not allowed to change
+- QVERIFY( !(doc->okToChange()) );
+-
+- // we are not allowed to copy or extract content
+- QVERIFY( !(doc->okToCopy()) );
+-
+- // we are not allowed to print at high resolution
+- QVERIFY( !(doc->okToPrintHighRes()) );
+-
+- // we are not allowed to fill forms
+- QVERIFY( !(doc->okToFillForm()) );
+-
+- // we are allowed to extract content for accessibility
+- QVERIFY( doc->okToExtractForAccessibility() );
+-
+- // we are allowed to assemble this document
+- QVERIFY( doc->okToAssemble() );
+-
+- delete doc;
+-}
+-
+-QTEST_MAIN(TestPermissions)
+-#include "check_permissions.moc"
+-
+diff --git a/qt4/tests/check_search.cpp b/qt4/tests/check_search.cpp
+deleted file mode 100644
+index 99659e04..00000000
+--- a/qt4/tests/check_search.cpp
++++ /dev/null
+@@ -1,175 +0,0 @@
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-
+-class TestSearch: public QObject
+-{
+- Q_OBJECT
+-private slots:
+- void bug7063();
+- void testNextAndPrevious();
+- void testWholeWordsOnly();
+-};
+-
+-void TestSearch::bug7063()
+-{
+- QScopedPointer< Poppler::Document > document(Poppler::Document::load(TESTDATADIR "/unittestcases/bug7063.pdf"));
+- QVERIFY( document );
+-
+- QScopedPointer< Poppler::Page > page(document->page(0));
+- QVERIFY( page );
+-
+- QRectF pageRegion( QPointF(0,0), page->pageSize() );
+- QCOMPARE( page->search(QString("non-ascii:"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
+-
+- QCOMPARE( page->search(QString("Ascii"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), false );
+- QCOMPARE( page->search(QString("Ascii"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseInsensitive), true );
+-
+- QCOMPARE( page->search(QString("latin1:"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), false );
+-
+- QCOMPARE( page->search(QString::fromUtf8("é"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
+- QCOMPARE( page->search(QString::fromUtf8("à"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
+- QCOMPARE( page->search(QString::fromUtf8("ç"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
+- QCOMPARE( page->search(QString::fromUtf8("search \"é\", \"à\" or \"ç\""), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
+- QCOMPARE( page->search(QString::fromUtf8("¥µ©"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
+- QCOMPARE( page->search(QString::fromUtf8("¥©"), pageRegion, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), false );
+-
+- double rectLeft = 0.0, rectTop = 0.0, rectRight = page->pageSizeF().width(), rectBottom = page->pageSizeF().height();
+-
+- QCOMPARE( page->search(QString("non-ascii:"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true );
+-
+- QCOMPARE( page->search(QString("Ascii"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), false );
+- QCOMPARE( page->search(QString("Ascii"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop, Poppler::Page::IgnoreCase), true );
+-
+- QCOMPARE( page->search(QString("latin1:"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), false );
+-
+- QCOMPARE( page->search(QString::fromUtf8("é"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true );
+- QCOMPARE( page->search(QString::fromUtf8("à"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true );
+- QCOMPARE( page->search(QString::fromUtf8("ç"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true );
+- QCOMPARE( page->search(QString::fromUtf8("search \"é\", \"à\" or \"ç\""), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true );
+- QCOMPARE( page->search(QString::fromUtf8("¥µ©"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true );
+- QCOMPARE( page->search(QString::fromUtf8("¥©"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), false );
+-}
+-
+-void TestSearch::testNextAndPrevious()
+-{
+- QScopedPointer< Poppler::Document > document(Poppler::Document::load(TESTDATADIR "/unittestcases/xr01.pdf"));
+- QVERIFY( document );
+-
+- QScopedPointer< Poppler::Page > page(document->page(0));
+- QVERIFY( page );
+-
+- QRectF region( QPointF(0,0), page->pageSize() );
+-
+- QCOMPARE( page->search(QString("is"), region, Poppler::Page::FromTop, Poppler::Page::CaseSensitive), true );
+- QVERIFY( qAbs(region.x() - 161.44) < 0.01 );
+- QVERIFY( qAbs(region.y() - 127.85) < 0.01 );
+- QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
+- QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), region, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), true );
+- QVERIFY( qAbs(region.x() - 171.46) < 0.01 );
+- QVERIFY( qAbs(region.y() - 127.85) < 0.01 );
+- QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
+- QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), region, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), true );
+- QVERIFY( qAbs(region.x() - 161.44) < 0.01 );
+- QVERIFY( qAbs(region.y() - 139.81) < 0.01 );
+- QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
+- QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), region, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), true );
+- QVERIFY( qAbs(region.x() - 171.46) < 0.01 );
+- QVERIFY( qAbs(region.y() - 139.81) < 0.01 );
+- QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
+- QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), region, Poppler::Page::NextResult, Poppler::Page::CaseSensitive), false );
+- QCOMPARE( page->search(QString("is"), region, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), true );
+- QVERIFY( qAbs(region.x() - 161.44) < 0.01 );
+- QVERIFY( qAbs(region.y() - 139.81) < 0.01 );
+- QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
+- QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), region, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), true );
+- QVERIFY( qAbs(region.x() - 171.46) < 0.01 );
+- QVERIFY( qAbs(region.y() - 127.85) < 0.01 );
+- QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
+- QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), region, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), true );
+- QVERIFY( qAbs(region.x() - 161.44) < 0.01 );
+- QVERIFY( qAbs(region.y() - 127.85) < 0.01 );
+- QVERIFY( qAbs(region.width() - 6.70) < 0.01 );
+- QVERIFY( qAbs(region.height() - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), region, Poppler::Page::PreviousResult, Poppler::Page::CaseSensitive), false );
+-
+- double rectLeft = 0.0, rectTop = 0.0, rectRight = page->pageSizeF().width(), rectBottom = page->pageSizeF().height();
+-
+- QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::FromTop), true );
+- QVERIFY( qAbs(rectLeft - 161.44) < 0.01 );
+- QVERIFY( qAbs(rectTop - 127.85) < 0.01 );
+- QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 );
+- QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult), true );
+- QVERIFY( qAbs(rectLeft - 171.46) < 0.01 );
+- QVERIFY( qAbs(rectTop - 127.85) < 0.01 );
+- QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 );
+- QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult), true );
+- QVERIFY( qAbs(rectLeft - 161.44) < 0.01 );
+- QVERIFY( qAbs(rectTop - 139.81) < 0.01 );
+- QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 );
+- QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult), true );
+- QVERIFY( qAbs(rectLeft - 171.46) < 0.01 );
+- QVERIFY( qAbs(rectTop - 139.81) < 0.01 );
+- QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 );
+- QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::NextResult), false );
+- QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult), true );
+- QVERIFY( qAbs(rectLeft - 161.44) < 0.01 );
+- QVERIFY( qAbs(rectTop - 139.81) < 0.01 );
+- QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 );
+- QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult), true );
+- QVERIFY( qAbs(rectLeft - 171.46) < 0.01 );
+- QVERIFY( qAbs(rectTop - 127.85) < 0.01 );
+- QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 );
+- QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult), true );
+- QVERIFY( qAbs(rectLeft - 161.44) < 0.01 );
+- QVERIFY( qAbs(rectTop - 127.85) < 0.01 );
+- QVERIFY( qAbs(rectRight - rectLeft - 6.70) < 0.01 );
+- QVERIFY( qAbs(rectBottom - rectTop - 8.85) < 0.01 );
+- QCOMPARE( page->search(QString("is"), rectLeft, rectTop, rectRight, rectBottom, Poppler::Page::PreviousResult), false );
+-}
+-
+-void TestSearch::testWholeWordsOnly()
+-{
+- QScopedPointer< Poppler::Document > document(Poppler::Document::load(TESTDATADIR "/unittestcases/WithActualText.pdf"));
+- QVERIFY( document );
+-
+- QScopedPointer< Poppler::Page > page(document->page(0));
+- QVERIFY( page );
+-
+- const Poppler::Page::SearchDirection direction = Poppler::Page::FromTop;
+-
+- const Poppler::Page::SearchFlags mode0 = 0;
+- const Poppler::Page::SearchFlags mode1 = Poppler::Page::IgnoreCase;
+- const Poppler::Page::SearchFlags mode2 = Poppler::Page::WholeWords;
+- const Poppler::Page::SearchFlags mode3 = Poppler::Page::IgnoreCase | Poppler::Page::WholeWords;
+-
+- double left, top, right, bottom;
+-
+- QCOMPARE( page->search(QLatin1String("brown"), left, top, right, bottom, direction, mode0), true );
+- QCOMPARE( page->search(QLatin1String("brOwn"), left, top, right, bottom, direction, mode0), false );
+-
+- QCOMPARE( page->search(QLatin1String("brOwn"), left, top, right, bottom, direction, mode1), true );
+- QCOMPARE( page->search(QLatin1String("brawn"), left, top, right, bottom, direction, mode1), false );
+-
+- QCOMPARE( page->search(QLatin1String("brown"), left, top, right, bottom, direction, mode2), true );
+- QCOMPARE( page->search(QLatin1String("own"), left, top, right, bottom, direction, mode2), false );
+-
+- QCOMPARE( page->search(QLatin1String("brOwn"), left, top, right, bottom, direction, mode3), true );
+- QCOMPARE( page->search(QLatin1String("Own"), left, top, right, bottom, direction, mode3), false );
+-}
+-
+-QTEST_MAIN(TestSearch)
+-#include "check_search.moc"
+-
+diff --git a/qt4/tests/check_strings.cpp b/qt4/tests/check_strings.cpp
+deleted file mode 100644
+index 700ae9c2..00000000
+--- a/qt4/tests/check_strings.cpp
++++ /dev/null
+@@ -1,250 +0,0 @@
+-/*
+- * Copyright (C) 2010, 2011, Pino Toscano <pino@kde.org>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License as published by
+- * the Free Software Foundation; either version 2, or (at your option)
+- * any later version.
+- *
+- * This program is distributed in the hope that it will be useful,
+- * but WITHOUT ANY WARRANTY; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- * GNU General Public License for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program; if not, write to the Free Software
+- * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+- */
+-
+-#include <QtTest/QtTest>
+-
+-#include <poppler-qt4.h>
+-#include <poppler-private.h>
+-
+-#include <GlobalParams.h>
+-
+-Q_DECLARE_METATYPE(GooString*)
+-Q_DECLARE_METATYPE(Unicode*)
+-
+-class TestStrings : public QObject
+-{
+- Q_OBJECT
+-
+-private slots:
+- void initTestCase();
+- void cleanupTestCase();
+- void check_unicodeToQString_data();
+- void check_unicodeToQString();
+- void check_UnicodeParsedString_data();
+- void check_UnicodeParsedString();
+- void check_QStringToUnicodeGooString_data();
+- void check_QStringToUnicodeGooString();
+- void check_QStringToGooString_data();
+- void check_QStringToGooString();
+-
+-private:
+- GooString* newGooString(const char *s);
+- GooString* newGooString(const char *s, int l);
+-
+- QVector<GooString *> m_gooStrings;
+-};
+-
+-void TestStrings::initTestCase()
+-{
+- qRegisterMetaType<GooString*>("GooString*");
+- qRegisterMetaType<Unicode*>("Unicode*");
+-
+- globalParams = new GlobalParams();
+-}
+-
+-void TestStrings::cleanupTestCase()
+-{
+- qDeleteAll(m_gooStrings);
+-
+- delete globalParams;
+-}
+-
+-void TestStrings::check_unicodeToQString_data()
+-{
+- QTest::addColumn<Unicode*>("data");
+- QTest::addColumn<int>("length");
+- QTest::addColumn<QString>("result");
+-
+- {
+- const int l = 1;
+- Unicode *u = new Unicode[l];
+- u[0] = int('a');
+- QTest::newRow("a") << u << l << QString::fromUtf8("a");
+- }
+- {
+- const int l = 1;
+- Unicode *u = new Unicode[l];
+- u[0] = 0x0161;
+- QTest::newRow("\u0161") << u << l << QString::fromUtf8("\u0161");
+- }
+- {
+- const int l = 2;
+- Unicode *u = new Unicode[l];
+- u[0] = int('a');
+- u[1] = int('b');
+- QTest::newRow("ab") << u << l << QString::fromUtf8("ab");
+- }
+- {
+- const int l = 2;
+- Unicode *u = new Unicode[l];
+- u[0] = int('a');
+- u[1] = 0x0161;
+- QTest::newRow("a\u0161") << u << l << QString::fromUtf8("a\u0161");
+- }
+- {
+- const int l = 2;
+- Unicode *u = new Unicode[l];
+- u[0] = 0x5c01;
+- u[1] = 0x9762;
+- QTest::newRow("\xe5\xb0\x81\xe9\x9d\xa2") << u << l << QString::fromUtf8("\xe5\xb0\x81\xe9\x9d\xa2");
+- }
+- {
+- const int l = 3;
+- Unicode *u = new Unicode[l];
+- u[0] = 0x5c01;
+- u[1] = 0x9762;
+- u[2] = 0x0;
+- QTest::newRow("\xe5\xb0\x81\xe9\x9d\xa2 + 0") << u << l << QString::fromUtf8("\xe5\xb0\x81\xe9\x9d\xa2");
+- }
+-}
+-
+-void TestStrings::check_unicodeToQString()
+-{
+- QFETCH(Unicode*, data);
+- QFETCH(int, length);
+- QFETCH(QString, result);
+-
+- QCOMPARE(Poppler::unicodeToQString(data, length), result);
+-
+- delete [] data;
+-}
+-
+-void TestStrings::check_UnicodeParsedString_data()
+-{
+- QTest::addColumn<GooString*>("string");
+- QTest::addColumn<QString>("result");
+-
+- // non-unicode strings
+- QTest::newRow("<empty>") << newGooString("")
+- << QString();
+- QTest::newRow("a") << newGooString("a")
+- << QString::fromUtf8("a");
+- QTest::newRow("ab") << newGooString("ab")
+- << QString::fromUtf8("ab");
+- QTest::newRow("~") << newGooString("~")
+- << QString::fromUtf8("~");
+- QTest::newRow("test string") << newGooString("test string")
+- << QString::fromUtf8("test string");
+-
+- // unicode strings
+- QTest::newRow("<unicode marks>") << newGooString("\xFE\xFF")
+- << QString();
+- QTest::newRow("U a") << newGooString("\xFE\xFF\0a", 4)
+- << QString::fromUtf8("a");
+- QTest::newRow("U ~") << newGooString("\xFE\xFF\0~", 4)
+- << QString::fromUtf8("~");
+- QTest::newRow("U aa") << newGooString("\xFE\xFF\0a\0a", 6)
+- << QString::fromUtf8("aa");
+- QTest::newRow("U \xC3\x9F") << newGooString("\xFE\xFF\0\xDF", 4)
+- << QString::fromUtf8("\xC3\x9F");
+- QTest::newRow("U \xC3\x9F\x61") << newGooString("\xFE\xFF\0\xDF\0\x61", 6)
+- << QString::fromUtf8("\xC3\x9F\x61");
+- QTest::newRow("U \xC5\xA1") << newGooString("\xFE\xFF\x01\x61", 4)
+- << QString::fromUtf8("\xC5\xA1");
+- QTest::newRow("U \xC5\xA1\x61") << newGooString("\xFE\xFF\x01\x61\0\x61", 6)
+- << QString::fromUtf8("\xC5\xA1\x61");
+- QTest::newRow("test string") << newGooString("\xFE\xFF\0t\0e\0s\0t\0 \0s\0t\0r\0i\0n\0g", 24)
+- << QString::fromUtf8("test string");
+-}
+-
+-void TestStrings::check_UnicodeParsedString()
+-{
+- QFETCH(GooString*, string);
+- QFETCH(QString, result);
+-
+- QCOMPARE(Poppler::UnicodeParsedString(string), result);
+-}
+-
+-void TestStrings::check_QStringToUnicodeGooString_data()
+-{
+- QTest::addColumn<QString>("string");
+- QTest::addColumn<QByteArray>("result");
+-
+-
+- QTest::newRow("<null>") << QString()
+- << QByteArray("");
+- QTest::newRow("<empty>") << QString::fromUtf8("")
+- << QByteArray("");
+- QTest::newRow("a") << QString::fromUtf8("a")
+- << QByteArray("\0a", 2);
+- QTest::newRow("ab") << QString::fromUtf8("ab")
+- << QByteArray("\0a\0b", 4);
+- QTest::newRow("test string") << QString::fromUtf8("test string")
+- << QByteArray("\0t\0e\0s\0t\0 \0s\0t\0r\0i\0n\0g", 22);
+- QTest::newRow("\xC3\x9F") << QString::fromUtf8("\xC3\x9F")
+- << QByteArray("\0\xDF", 2);
+- QTest::newRow("\xC3\x9F\x61") << QString::fromUtf8("\xC3\x9F\x61")
+- << QByteArray("\0\xDF\0\x61", 4);
+-}
+-
+-void TestStrings::check_QStringToUnicodeGooString()
+-{
+- QFETCH(QString, string);
+- QFETCH(QByteArray, result);
+-
+- GooString *goo = Poppler::QStringToUnicodeGooString(string);
+- QVERIFY(goo->hasUnicodeMarker());
+- QCOMPARE(goo->getLength(), string.length() * 2 + 2);
+- QCOMPARE(result, QByteArray::fromRawData(goo->getCString() + 2, goo->getLength() - 2));
+-
+- delete goo;
+-}
+-
+-void TestStrings::check_QStringToGooString_data()
+-{
+- QTest::addColumn<QString>("string");
+- QTest::addColumn<GooString*>("result");
+-
+- QTest::newRow("<null>") << QString()
+- << newGooString("");
+- QTest::newRow("<empty>") << QString::fromUtf8("")
+- << newGooString("");
+- QTest::newRow("a") << QString::fromUtf8("a")
+- << newGooString("a");
+- QTest::newRow("ab") << QString::fromUtf8("ab")
+- << newGooString("ab");
+-}
+-
+-void TestStrings::check_QStringToGooString()
+-{
+- QFETCH(QString, string);
+- QFETCH(GooString*, result);
+-
+- GooString *goo = Poppler::QStringToGooString(string);
+- QCOMPARE(goo->getCString(), result->getCString());
+-
+- delete goo;
+-}
+-
+-GooString* TestStrings::newGooString(const char *s)
+-{
+- GooString *goo = new GooString(s);
+- m_gooStrings.append(goo);
+- return goo;
+-}
+-
+-GooString* TestStrings::newGooString(const char *s, int l)
+-{
+- GooString *goo = new GooString(s, l);
+- m_gooStrings.append(goo);
+- return goo;
+-}
+-
+-QTEST_MAIN(TestStrings)
+-
+-#include "check_strings.moc"
+diff --git a/qt4/tests/poppler-attachments.cpp b/qt4/tests/poppler-attachments.cpp
+deleted file mode 100644
+index 992dc565..00000000
+--- a/qt4/tests/poppler-attachments.cpp
++++ /dev/null
+@@ -1,39 +0,0 @@
+-#include <QtCore/QCoreApplication>
+-#include <QtCore/QDebug>
+-
+-#include <iostream>
+-
+-#include <poppler-qt4.h>
+-
+-int main( int argc, char **argv )
+-{
+- QCoreApplication a( argc, argv ); // QApplication required!
+-
+- if (!( argc == 2 ))
+- {
+- qWarning() << "usage: poppler-attachments filename";
+- exit(1);
+- }
+-
+- Poppler::Document *doc = Poppler::Document::load(argv[1]);
+- if (!doc)
+- {
+- qWarning() << "doc not loaded";
+- exit(1);
+- }
+-
+- if (doc->hasEmbeddedFiles()) {
+- std::cout << "Embedded files: " << std::endl;
+- foreach(Poppler::EmbeddedFile *file, doc->embeddedFiles()) {
+- std::cout << " " << qPrintable(file->name()) << std::endl;
+- std::cout << " desc:" << qPrintable(file->description()) << std::endl;
+- QByteArray data = file->data();
+- std::cout << " data: " << data.constData() << std::endl;
+- }
+-
+- } else {
+- std::cout << "There are no embedded document at the top level" << std::endl;
+- }
+- delete doc;
+-
+-}
+diff --git a/qt4/tests/poppler-fonts.cpp b/qt4/tests/poppler-fonts.cpp
+deleted file mode 100644
+index 6b66ec42..00000000
+--- a/qt4/tests/poppler-fonts.cpp
++++ /dev/null
+@@ -1,89 +0,0 @@
+-#include <QtCore/QCoreApplication>
+-#include <QtCore/QDebug>
+-
+-#include <iostream>
+-
+-#include <poppler-qt4.h>
+-
+-int main( int argc, char **argv )
+-{
+- QCoreApplication a( argc, argv ); // QApplication required!
+-
+- if (!( argc == 2 ))
+- {
+- qWarning() << "usage: poppler-fonts filename";
+- exit(1);
+- }
+-
+- Poppler::Document *doc = Poppler::Document::load(argv[1]);
+- if (!doc)
+- {
+- qWarning() << "doc not loaded";
+- exit(1);
+- }
+-
+- std::cout << "name type emb sub font file";
+- std::cout << std::endl;
+- std::cout << "------------------------------------ ------------ --- --- ---------";
+- std::cout << std::endl;
+-
+- foreach( const Poppler::FontInfo &font, doc->fonts() ) {
+- if (font.name().isNull()) {
+- std::cout << qPrintable( QString("%1").arg(QString("[none]"), -37) );
+- } else {
+- std::cout << qPrintable( QString("%1").arg(font.name(), -37) );
+- }
+- switch( font.type() ) {
+- case Poppler::FontInfo::unknown:
+- std::cout << "unknown ";
+- break;
+- case Poppler::FontInfo::Type1:
+- std::cout << "Type 1 ";
+- break;
+- case Poppler::FontInfo::Type1C:
+- std::cout << "Type 1C ";
+- break;
+- case Poppler::FontInfo::Type3:
+- std::cout << "Type 3 ";
+- break;
+- case Poppler::FontInfo::TrueType:
+- std::cout << "TrueType ";
+- break;
+- case Poppler::FontInfo::CIDType0:
+- std::cout << "CID Type 0 ";
+- break;
+- case Poppler::FontInfo::CIDType0C:
+- std::cout << "CID Type 0C ";
+- break;
+- case Poppler::FontInfo::CIDTrueType:
+- std::cout << "CID TrueType ";
+- break;
+- case Poppler::FontInfo::Type1COT:
+- std::cout << "Type 1C (OT) ";
+- break;
+- case Poppler::FontInfo::TrueTypeOT:
+- std::cout << "TrueType (OT) ";
+- break;
+- case Poppler::FontInfo::CIDType0COT:
+- std::cout << "CID Type 0C (OT) ";
+- break;
+- case Poppler::FontInfo::CIDTrueTypeOT:
+- std::cout << "CID TrueType (OT) ";
+- break;
+- }
+-
+- if ( font.isEmbedded() ) {
+- std::cout << "yes ";
+- } else {
+- std::cout << "no ";
+- }
+- if ( font.isSubset() ) {
+- std::cout << "yes ";
+- } else {
+- std::cout << "no ";
+- }
+- std::cout << qPrintable( QString("%1").arg(font.file()) );
+- std::cout << std::endl;
+- }
+- delete doc;
+-}
+diff --git a/qt4/tests/poppler-forms.cpp b/qt4/tests/poppler-forms.cpp
+deleted file mode 100644
+index 98891a91..00000000
+--- a/qt4/tests/poppler-forms.cpp
++++ /dev/null
+@@ -1,166 +0,0 @@
+-#include <QtCore/QCoreApplication>
+-#include <QtCore/QDebug>
+-
+-#include <iostream>
+-
+-#include <poppler-qt4.h>
+-#include <poppler-form.h>
+-
+-static std::ostream& operator<< (std::ostream &out, Poppler::FormField::FormType type)
+-{
+- switch (type) {
+- case Poppler::FormField::FormButton: out << "Button"; break;
+- case Poppler::FormField::FormText: out << "Text"; break;
+- case Poppler::FormField::FormChoice: out << "Choice"; break;
+- case Poppler::FormField::FormSignature: out << "Signature"; break;
+- }
+- return out;
+-}
+-
+-static std::ostream& operator<< (std::ostream &out, Poppler::FormFieldButton::ButtonType type)
+-{
+- switch (type) {
+- case Poppler::FormFieldButton::Push: out << "Push"; break;
+- case Poppler::FormFieldButton::CheckBox: out << "CheckBox"; break;
+- case Poppler::FormFieldButton::Radio: out << "Radio"; break;
+- }
+- return out;
+-}
+-
+-static std::ostream& operator<< (std::ostream &out, Poppler::FormFieldText::TextType type)
+-{
+- switch (type) {
+- case Poppler::FormFieldText::Normal: out << "Normal"; break;
+- case Poppler::FormFieldText::Multiline: out << "Multiline"; break;
+- case Poppler::FormFieldText::FileSelect: out << "FileSelect"; break;
+- }
+- return out;
+-}
+-
+-static std::ostream& operator<< (std::ostream &out, Poppler::FormFieldChoice::ChoiceType type)
+-{
+- switch (type) {
+- case Poppler::FormFieldChoice::ComboBox: out << "ComboBox"; break;
+- case Poppler::FormFieldChoice::ListBox: out << "ListBox"; break;
+- }
+- return out;
+-}
+-
+-static std::ostream& operator<< (std::ostream &out, Qt::Alignment alignment)
+-{
+- switch (alignment) {
+- case Qt::AlignLeft: out << "Left"; break;
+- case Qt::AlignRight: out << "Right"; break;
+- case Qt::AlignHCenter: out << "HCenter"; break;
+- case Qt::AlignJustify: out << "Justify"; break;
+- case Qt::AlignTop: out << "Top"; break;
+- case Qt::AlignBottom: out << "Bottom"; break;
+- case Qt::AlignVCenter: out << "VCenter"; break;
+- case Qt::AlignCenter: out << "Center"; break;
+- case Qt::AlignAbsolute: out << "Absolute"; break;
+- }
+- return out;
+-}
+-
+-static std::ostream& operator<< (std::ostream &out, const QString &string)
+-{
+- out << string.toUtf8().constData();
+- return out;
+-}
+-
+-static std::ostream& operator<< (std::ostream &out, const QRectF &rect)
+-{
+- out << QString("top: %1 left: %2 width: %3 height: %4").arg(rect.x()).arg(rect.y()).arg(rect.width()).arg(rect.height());
+- return out;
+-}
+-
+-template<typename T>
+-std::ostream& operator<< (std::ostream &out, const QList<T> &elems)
+-{
+- bool isFirst = true;
+- for (int i = 0; i < elems.count(); ++i) {
+- if (!isFirst)
+- out << " ";
+- out << elems[i];
+- isFirst = false;
+- }
+- return out;
+-}
+-
+-int main( int argc, char **argv )
+-{
+- QCoreApplication a( argc, argv );
+-
+- if (!( argc == 2 ))
+- {
+- qWarning() << "usage: poppler-forms filename";
+- exit(1);
+- }
+-
+- Poppler::Document *doc = Poppler::Document::load(argv[1]);
+- if (!doc)
+- {
+- qWarning() << "doc not loaded";
+- exit(1);
+- }
+-
+- std::cout << "Forms for file " << argv[1] << std::endl;
+- for (int i = 0; i < doc->numPages(); ++i) {
+- Poppler::Page *page = doc->page(i);
+- if (page) {
+- QList<Poppler::FormField*> forms = page->formFields();
+- std::cout << "\tPage " << i + 1 << std::endl;
+- foreach( const Poppler::FormField *form, forms ) {
+- std::cout << "\t\tForm" << std::endl;
+- std::cout << "\t\t\tType: " << form->type() << std::endl;
+- std::cout << "\t\t\tRect: " << form->rect() << std::endl;
+- std::cout << "\t\t\tID: " << form->id() << std::endl;
+- std::cout << "\t\t\tName: " << form->name() << std::endl;
+- std::cout << "\t\t\tFullyQualifiedName: " << form->fullyQualifiedName() << std::endl;
+- std::cout << "\t\t\tUIName: " << form->uiName() << std::endl;
+- std::cout << "\t\t\tReadOnly: " << form->isReadOnly() << std::endl;
+- std::cout << "\t\t\tVisible: " << form->isVisible() << std::endl;
+- switch (form->type()) {
+- case Poppler::FormField::FormButton: {
+- const Poppler::FormFieldButton *buttonForm = static_cast<const Poppler::FormFieldButton *>(form);
+- std::cout << "\t\t\tButtonType: " << buttonForm->buttonType() << std::endl;
+- std::cout << "\t\t\tCaption: " << buttonForm->caption() << std::endl;
+- std::cout << "\t\t\tState: " << buttonForm->state() << std::endl;
+- std::cout << "\t\t\tSiblings: " << buttonForm->siblings() << std::endl;
+- }
+- break;
+-
+- case Poppler::FormField::FormText: {
+- const Poppler::FormFieldText *textForm = static_cast<const Poppler::FormFieldText *>(form);
+- std::cout << "\t\t\tTextType: " << textForm->textType() << std::endl;
+- std::cout << "\t\t\tText: " << textForm->text() << std::endl;
+- std::cout << "\t\t\tIsPassword: " << textForm->isPassword() << std::endl;
+- std::cout << "\t\t\tIsRichText: " << textForm->isRichText() << std::endl;
+- std::cout << "\t\t\tMaximumLength: " << textForm->maximumLength() << std::endl;
+- std::cout << "\t\t\tTextAlignment: " << textForm->textAlignment() << std::endl;
+- std::cout << "\t\t\tCanBeSpellChecked: " << textForm->canBeSpellChecked() << std::endl;
+- }
+- break;
+-
+- case Poppler::FormField::FormChoice: {
+- const Poppler::FormFieldChoice *choiceForm = static_cast<const Poppler::FormFieldChoice *>(form);
+- std::cout << "\t\t\tChoiceType: " << choiceForm->choiceType() << std::endl;
+- std::cout << "\t\t\tChoices: " << choiceForm->choices() << std::endl;
+- std::cout << "\t\t\tIsEditable: " << choiceForm->isEditable() << std::endl;
+- std::cout << "\t\t\tIsMultiSelect: " << choiceForm->multiSelect() << std::endl;
+- std::cout << "\t\t\tCurrentChoices: " << choiceForm->currentChoices() << std::endl;
+- std::cout << "\t\t\tEditChoice: " << choiceForm->editChoice() << std::endl;
+- std::cout << "\t\t\tTextAlignment: " << choiceForm->textAlignment() << std::endl;
+- std::cout << "\t\t\tCanBeSpellChecked: " << choiceForm->canBeSpellChecked() << std::endl;
+- }
+- break;
+-
+- case Poppler::FormField::FormSignature:
+- break;
+- }
+- }
+- qDeleteAll(forms);
+- }
+- }
+- delete doc;
+-}
+diff --git a/qt4/tests/poppler-texts.cpp b/qt4/tests/poppler-texts.cpp
+deleted file mode 100644
+index ec283531..00000000
+--- a/qt4/tests/poppler-texts.cpp
++++ /dev/null
+@@ -1,40 +0,0 @@
+-#include <QtCore/QCoreApplication>
+-#include <QtCore/QDebug>
+-
+-#include <iostream>
+-
+-#include <poppler-qt4.h>
+-
+-int main( int argc, char **argv )
+-{
+- QCoreApplication a( argc, argv ); // QApplication required!
+-
+- if (!( argc == 2 ))
+- {
+- qWarning() << "usage: poppler-texts filename";
+- exit(1);
+- }
+-
+- Poppler::Document *doc = Poppler::Document::load(argv[1]);
+- if (!doc)
+- {
+- qWarning() << "doc not loaded";
+- exit(1);
+- }
+-
+- for ( int i = 0; i < doc->numPages(); i++ )
+- {
+- int j = 0;
+- std::cout << "*** Page " << i << std::endl;
+- std::cout << std::flush;
+-
+- Poppler::Page *page = doc->page(i);
+- const QByteArray utf8str = page->text( QRectF(), Poppler::Page::RawOrderLayout ).toUtf8();
+- std::cout << std::flush;
+- for ( j = 0; j < utf8str.size(); j++ )
+- std::cout << utf8str[j];
+- std::cout << std::endl;
+- delete page;
+- }
+- delete doc;
+-}
+diff --git a/qt4/tests/stress-poppler-dir.cpp b/qt4/tests/stress-poppler-dir.cpp
+deleted file mode 100644
+index 6eeab6fa..00000000
+--- a/qt4/tests/stress-poppler-dir.cpp
++++ /dev/null
+@@ -1,67 +0,0 @@
+-#include <QtCore/QDebug>
+-#include <QtCore/QDir>
+-#include <QtCore/QTime>
+-#include <QtGui/QApplication>
+-#include <QtGui/QImage>
+-
+-#include <iostream>
+-
+-#include <poppler-qt4.h>
+-
+-int main( int argc, char **argv )
+-{
+- QApplication a( argc, argv ); // QApplication required!
+-
+- QTime t;
+- t.start();
+-
+- QDir directory( argv[1] );
+- foreach ( const QString &fileName, directory.entryList() ) {
+- if (fileName.endsWith("pdf") ) {
+- qDebug() << "Doing" << fileName.toLatin1().data() << ":";
+- Poppler::Document *doc = Poppler::Document::load( directory.canonicalPath()+"/"+fileName );
+- if (!doc) {
+- qWarning() << "doc not loaded";
+- } else if ( doc->isLocked() ) {
+- if (! doc->unlock( "", "password" ) ) {
+- qWarning() << "couldn't unlock document";
+- delete doc;
+- }
+- } else {
+- int major = 0, minor = 0;
+- doc->getPdfVersion( &major, &minor );
+- doc->info("Title");
+- doc->info("Subject");
+- doc->info("Author");
+- doc->info("Keywords");
+- doc->info("Creator");
+- doc->info("Producer");
+- doc->date("CreationDate").toString();
+- doc->date("ModDate").toString();
+- doc->numPages();
+- doc->isLinearized();
+- doc->isEncrypted();
+- doc->okToPrint();
+- doc->okToCopy();
+- doc->okToChange();
+- doc->okToAddNotes();
+- doc->pageMode();
+-
+- for( int index = 0; index < doc->numPages(); ++index ) {
+- Poppler::Page *page = doc->page( index );
+- QImage image = page->renderToImage();
+- page->pageSize();
+- page->orientation();
+- delete page;
+- std::cout << ".";
+- std::cout.flush();
+- }
+- std::cout << std::endl;
+- delete doc;
+- }
+- }
+- }
+-
+- std::cout << "Elapsed time: " << (t.elapsed()/1000) << "seconds" << std::endl;
+-
+-}
+diff --git a/qt4/tests/stress-poppler-qt4.cpp b/qt4/tests/stress-poppler-qt4.cpp
+deleted file mode 100644
+index 56844543..00000000
+--- a/qt4/tests/stress-poppler-qt4.cpp
++++ /dev/null
+@@ -1,74 +0,0 @@
+-#include <QtCore/QDebug>
+-#include <QtCore/QDir>
+-#include <QtCore/QTime>
+-#include <QtGui/QApplication>
+-#include <QtGui/QImage>
+-
+-#include <iostream>
+-
+-#include <poppler-qt4.h>
+-
+-int main( int argc, char **argv )
+-{
+- QApplication a( argc, argv ); // QApplication required!
+-
+- Q_UNUSED( argc );
+- Q_UNUSED( argv );
+-
+- QTime t;
+- t.start();
+- QDir dbDir( QString( "./pdfdb" ) );
+- if ( !dbDir.exists() ) {
+- qWarning() << "Database directory does not exist";
+- }
+-
+- QStringList excludeSubDirs;
+- excludeSubDirs << "000048" << "000607";
+-
+- foreach ( const QString &subdir, dbDir.entryList(QStringList() << "0000*", QDir::Dirs) ) {
+- if ( excludeSubDirs.contains(subdir) ) {
+- // then skip it
+- } else {
+- QString path = "./pdfdb/" + subdir + "/data.pdf";
+- std::cout <<"Doing " << path.toLatin1().data() << " :";
+- Poppler::Document *doc = Poppler::Document::load( path );
+- if (!doc) {
+- qWarning() << "doc not loaded";
+- } else {
+- int major = 0, minor = 0;
+- doc->getPdfVersion( &major, &minor );
+- doc->info("Title");
+- doc->info("Subject");
+- doc->info("Author");
+- doc->info("Keywords");
+- doc->info("Creator");
+- doc->info("Producer");
+- doc->date("CreationDate").toString();
+- doc->date("ModDate").toString();
+- doc->numPages();
+- doc->isLinearized();
+- doc->isEncrypted();
+- doc->okToPrint();
+- doc->okToCopy();
+- doc->okToChange();
+- doc->okToAddNotes();
+- doc->pageMode();
+-
+- for( int index = 0; index < doc->numPages(); ++index ) {
+- Poppler::Page *page = doc->page( index );
+- QImage image = page->renderToImage();
+- page->pageSize();
+- page->orientation();
+- delete page;
+- std::cout << ".";
+- std::cout.flush();
+- }
+- std::cout << std::endl;
+- delete doc;
+- }
+- }
+- }
+-
+- std::cout << "Elapsed time: " << (t.elapsed()/1000) << std::endl;
+-
+-}
+diff --git a/qt4/tests/stress-threads-qt4.cpp b/qt4/tests/stress-threads-qt4.cpp
+deleted file mode 100644
+index 00968de1..00000000
+--- a/qt4/tests/stress-threads-qt4.cpp
++++ /dev/null
+@@ -1,309 +0,0 @@
+-
+-#ifndef _WIN32
+-#include <unistd.h>
+-#else
+-#include <windows.h>
+-#define sleep Sleep
+-#endif
+-#include <time.h>
+-
+-#include <poppler-qt4.h>
+-#include <poppler-form.h>
+-
+-#include <QtCore/QDebug>
+-#include <QtCore/QFile>
+-#include <QtCore/QMutex>
+-#include <QtCore/QThread>
+-#include <QtGui/QImage>
+-
+-class SillyThread : public QThread
+-{
+-public:
+- SillyThread(Poppler::Document* document, QObject* parent = 0);
+-
+- void run();
+-
+-private:
+- Poppler::Document* m_document;
+- QVector< Poppler::Page* > m_pages;
+-
+-};
+-
+-class CrazyThread : public QThread
+-{
+-public:
+- CrazyThread(uint seed, Poppler::Document* document, QMutex* annotationMutex, QObject* parent = 0);
+-
+- void run();
+-
+-private:
+- uint m_seed;
+- Poppler::Document* m_document;
+- QMutex* m_annotationMutex;
+-
+-};
+-
+-static Poppler::Page* loadPage(Poppler::Document* document, int index)
+-{
+- Poppler::Page* page = document->page(index);
+-
+- if(page == 0)
+- {
+- qDebug() << "!Document::page";
+-
+- exit(EXIT_FAILURE);
+- }
+-
+- return page;
+-}
+-
+-static Poppler::Page* loadRandomPage(Poppler::Document* document)
+-{
+- return loadPage(document, qrand() % document->numPages());
+-}
+-
+-SillyThread::SillyThread(Poppler::Document* document, QObject* parent) : QThread(parent),
+- m_document(document),
+- m_pages()
+-{
+- m_pages.reserve(m_document->numPages());
+-
+- for(int index = 0; index < m_document->numPages(); ++index)
+- {
+- m_pages.append(loadPage(m_document, index));
+- }
+-}
+-
+-
+-void SillyThread::run()
+-{
+- forever
+- {
+- foreach(Poppler::Page* page, m_pages)
+- {
+- QImage image = page->renderToImage();
+-
+- if(image.isNull())
+- {
+- qDebug() << "!Page::renderToImage";
+-
+- ::exit(EXIT_FAILURE);
+- }
+- }
+- }
+-}
+-
+-CrazyThread::CrazyThread(uint seed, Poppler::Document* document, QMutex* annotationMutex, QObject* parent) : QThread(parent),
+- m_seed(seed),
+- m_document(document),
+- m_annotationMutex(annotationMutex)
+-{
+-}
+-
+-void CrazyThread::run()
+-{
+- typedef QScopedPointer< Poppler::Page > PagePointer;
+-
+- qsrand(m_seed);
+-
+- forever
+- {
+- if(qrand() % 2 == 0)
+- {
+- qDebug() << "search...";
+-
+- PagePointer page(loadRandomPage(m_document));
+-
+- page->search("c", Poppler::Page::CaseInsensitive);
+- page->search("r", Poppler::Page::CaseSensitive);
+- page->search("a", Poppler::Page::CaseInsensitive);
+- page->search("z", Poppler::Page::CaseSensitive);
+- page->search("y", Poppler::Page::CaseInsensitive);
+- }
+-
+- if(qrand() % 2 == 0)
+- {
+- qDebug() << "links...";
+-
+- PagePointer page(loadRandomPage(m_document));
+-
+- QList< Poppler::Link* > links = page->links();
+-
+- qDeleteAll(links);
+- }
+-
+- if(qrand() % 2 == 0)
+- {
+- qDebug() << "form fields...";
+-
+- PagePointer page(loadRandomPage(m_document));
+-
+- QList< Poppler::FormField* > formFields = page->formFields();
+-
+- qDeleteAll(formFields);
+- }
+-
+- if(qrand() % 2 == 0)
+- {
+- qDebug() << "thumbnail...";
+-
+- PagePointer page(loadRandomPage(m_document));
+-
+- page->thumbnail();
+- }
+-
+- if(qrand() % 2 == 0)
+- {
+- qDebug() << "text...";
+-
+- PagePointer page(loadRandomPage(m_document));
+-
+- page->text(QRectF(QPointF(), page->pageSizeF()));
+- }
+-
+- if(qrand() % 2 == 0)
+- {
+- QMutexLocker mutexLocker(m_annotationMutex);
+-
+- qDebug() << "add annotation...";
+-
+- PagePointer page(loadRandomPage(m_document));
+-
+- Poppler::Annotation* annotation = 0;
+-
+- switch(qrand() % 3)
+- {
+- default:
+- case 0:
+- annotation = new Poppler::TextAnnotation(qrand() % 2 == 0 ? Poppler::TextAnnotation::Linked : Poppler::TextAnnotation::InPlace);
+- break;
+- case 1:
+- annotation = new Poppler::HighlightAnnotation();
+- break;
+- case 2:
+- annotation = new Poppler::InkAnnotation();
+- break;
+- }
+-
+- annotation->setBoundary(QRectF(0.0, 0.0, 0.5, 0.5));
+- annotation->setContents("crazy");
+-
+- page->addAnnotation(annotation);
+-
+- delete annotation;
+- }
+-
+- if(qrand() % 2 == 0)
+- {
+- QMutexLocker mutexLocker(m_annotationMutex);
+-
+- for(int index = 0; index < m_document->numPages(); ++index)
+- {
+- PagePointer page(loadPage(m_document, index));
+-
+- QList< Poppler::Annotation* > annotations = page->annotations();
+-
+- if(!annotations.isEmpty())
+- {
+- qDebug() << "modify annotation...";
+-
+- annotations.at(qrand() % annotations.size())->setBoundary(QRectF(0.5, 0.5, 0.25, 0.25));
+- annotations.at(qrand() % annotations.size())->setAuthor("foo");
+- annotations.at(qrand() % annotations.size())->setContents("bar");
+- annotations.at(qrand() % annotations.size())->setCreationDate(QDateTime::currentDateTime());
+- annotations.at(qrand() % annotations.size())->setModificationDate(QDateTime::currentDateTime());
+- }
+-
+- qDeleteAll(annotations);
+-
+- if(!annotations.isEmpty())
+- {
+- break;
+- }
+- }
+- }
+-
+- if(qrand() % 2 == 0)
+- {
+- QMutexLocker mutexLocker(m_annotationMutex);
+-
+- for(int index = 0; index < m_document->numPages(); ++index)
+- {
+- PagePointer page(loadPage(m_document, index));
+-
+- QList< Poppler::Annotation* > annotations = page->annotations();
+-
+- if(!annotations.isEmpty())
+- {
+- qDebug() << "remove annotation...";
+-
+- page->removeAnnotation(annotations.takeAt(qrand() % annotations.size()));
+- }
+-
+- qDeleteAll(annotations);
+-
+- if(!annotations.isEmpty())
+- {
+- break;
+- }
+- }
+- }
+-
+- if(qrand() % 2 == 0)
+- {
+- qDebug() << "fonts...";
+-
+- m_document->fonts();
+- }
+- }
+-}
+-
+-int main(int argc, char** argv)
+-{
+- if(argc < 5)
+- {
+- qDebug() << "usage: stress-threads-qt duration sillyCount crazyCount file(s)";
+-
+- return EXIT_FAILURE;
+- }
+-
+- const int duration = atoi(argv[1]);
+- const int sillyCount = atoi(argv[2]);
+- const int crazyCount = atoi(argv[3]);
+-
+- qsrand(time(0));
+-
+- for(int argi = 4; argi < argc; ++argi)
+- {
+- const QString file = QFile::decodeName(argv[argi]);
+- Poppler::Document* document = Poppler::Document::load(file);
+-
+- if(document == 0)
+- {
+- qDebug() << "Could not load" << file;
+- continue;
+- }
+-
+- if(document->isLocked())
+- {
+- qDebug() << file << "is locked";
+- continue;
+- }
+-
+- for(int i = 0; i < sillyCount; ++i)
+- {
+- (new SillyThread(document))->start();
+- }
+-
+- QMutex* annotationMutex = new QMutex();
+-
+- for(int i = 0; i < crazyCount; ++i)
+- {
+- (new CrazyThread(qrand(), document, annotationMutex))->start();
+- }
+- }
+-
+- sleep(duration);
+-
+- return EXIT_SUCCESS;
+-}
+diff --git a/qt4/tests/test-password-qt4.cpp b/qt4/tests/test-password-qt4.cpp
+deleted file mode 100644
+index c961874d..00000000
+--- a/qt4/tests/test-password-qt4.cpp
++++ /dev/null
+@@ -1,136 +0,0 @@
+-#include <QtCore/QDebug>
+-#include <QtGui/QApplication>
+-#include <QtGui/QImage>
+-#include <QtGui/QPainter>
+-#include <QtGui/QPaintEvent>
+-#include <QtGui/QWidget>
+-
+-#include <poppler-qt4.h>
+-
+-class PDFDisplay : public QWidget // picture display widget
+-{
+-public:
+- PDFDisplay( Poppler::Document *d );
+- ~PDFDisplay();
+-protected:
+- void paintEvent( QPaintEvent * );
+- void keyPressEvent( QKeyEvent * );
+-private:
+- void display();
+- int m_currentPage;
+- QImage image;
+- Poppler::Document *doc;
+-};
+-
+-PDFDisplay::PDFDisplay( Poppler::Document *d )
+-{
+- doc = d;
+- m_currentPage = 0;
+- display();
+-}
+-
+-void PDFDisplay::display()
+-{
+- if (doc) {
+- Poppler::Page *page = doc->page(m_currentPage);
+- if (page) {
+- qDebug() << "Displaying page: " << m_currentPage;
+- image = page->renderToImage();
+- update();
+- delete page;
+- }
+- } else {
+- qWarning() << "doc not loaded";
+- }
+-}
+-
+-PDFDisplay::~PDFDisplay()
+-{
+- delete doc;
+-}
+-
+-void PDFDisplay::paintEvent( QPaintEvent *e )
+-{
+- QPainter paint( this ); // paint widget
+- if (!image.isNull()) {
+- paint.drawImage(0, 0, image);
+- } else {
+- qWarning() << "null image";
+- }
+-}
+-
+-void PDFDisplay::keyPressEvent( QKeyEvent *e )
+-{
+- if (e->key() == Qt::Key_Down)
+- {
+- if (m_currentPage + 1 < doc->numPages())
+- {
+- m_currentPage++;
+- display();
+- }
+- }
+- else if (e->key() == Qt::Key_Up)
+- {
+- if (m_currentPage > 0)
+- {
+- m_currentPage--;
+- display();
+- }
+- }
+- else if (e->key() == Qt::Key_Q)
+- {
+- exit(0);
+- }
+-}
+-
+-int main( int argc, char **argv )
+-{
+- QApplication a( argc, argv ); // QApplication required!
+-
+- if ( argc != 3)
+- {
+- qWarning() << "usage: test-password-qt4 owner-password filename";
+- exit(1);
+- }
+-
+- Poppler::Document *doc = Poppler::Document::load(argv[2], argv[1]);
+- if (!doc)
+- {
+- qWarning() << "doc not loaded";
+- exit(1);
+- }
+-
+- // output some meta-data
+- int major = 0, minor = 0;
+- doc->getPdfVersion( &major, &minor );
+- qDebug() << " PDF Version: " << qPrintable(QString::fromLatin1("%1.%2").arg(major).arg(minor));
+- qDebug() << " Title: " << doc->info("Title");
+- qDebug() << " Subject: " << doc->info("Subject");
+- qDebug() << " Author: " << doc->info("Author");
+- qDebug() << " Key words: " << doc->info("Keywords");
+- qDebug() << " Creator: " << doc->info("Creator");
+- qDebug() << " Producer: " << doc->info("Producer");
+- qDebug() << " Date created: " << doc->date("CreationDate").toString();
+- qDebug() << " Date modified: " << doc->date("ModDate").toString();
+- qDebug() << "Number of pages: " << doc->numPages();
+- qDebug() << " Linearised: " << doc->isLinearized();
+- qDebug() << " Encrypted: " << doc->isEncrypted();
+- qDebug() << " OK to print: " << doc->okToPrint();
+- qDebug() << " OK to copy: " << doc->okToCopy();
+- qDebug() << " OK to change: " << doc->okToChange();
+- qDebug() << "OK to add notes: " << doc->okToAddNotes();
+- qDebug() << " Page mode: " << doc->pageMode();
+- QStringList fontNameList;
+- foreach( const Poppler::FontInfo &font, doc->fonts() )
+- fontNameList += font.name();
+- qDebug() << " Fonts: " << fontNameList.join( ", " );
+-
+- Poppler::Page *page = doc->page(0);
+- qDebug() << " Page 1 size: " << page->pageSize().width()/72 << "inches x " << page->pageSize().height()/72 << "inches";
+-
+- PDFDisplay test( doc ); // create picture display
+- test.setWindowTitle("Poppler-Qt4 Test");
+- test.show(); // show it
+-
+- return a.exec(); // start event loop
+-}
+diff --git a/qt4/tests/test-poppler-qt4.cpp b/qt4/tests/test-poppler-qt4.cpp
+deleted file mode 100644
+index ae6b11f3..00000000
+--- a/qt4/tests/test-poppler-qt4.cpp
++++ /dev/null
+@@ -1,235 +0,0 @@
+-#include <QtCore/QDebug>
+-#include <QtCore/QFile>
+-#include <QtGui/QApplication>
+-#include <QtGui/QImage>
+-#include <QtGui/QLabel>
+-#include <QtGui/QMouseEvent>
+-#include <QtGui/QPainter>
+-#include <QtGui/QPaintEvent>
+-#include <QtGui/QToolTip>
+-#include <QtGui/QWidget>
+-
+-#include <poppler-qt4.h>
+-
+-class PDFDisplay : public QWidget // picture display widget
+-{
+-public:
+- PDFDisplay( Poppler::Document *d, bool arthur );
+- ~PDFDisplay();
+- void setShowTextRects(bool show);
+- void display();
+-protected:
+- void paintEvent( QPaintEvent * );
+- void keyPressEvent( QKeyEvent * );
+- void mousePressEvent( QMouseEvent * );
+-private:
+- int m_currentPage;
+- QImage image;
+- Poppler::Document *doc;
+- QString backendString;
+- bool showTextRects;
+- QList<Poppler::TextBox*> textRects;
+-};
+-
+-PDFDisplay::PDFDisplay( Poppler::Document *d, bool arthur )
+-{
+- showTextRects = false;
+- doc = d;
+- m_currentPage = 0;
+- if (arthur)
+- {
+- backendString = "Arthur";
+- doc->setRenderBackend(Poppler::Document::ArthurBackend);
+- }
+- else
+- {
+- backendString = "Splash";
+- doc->setRenderBackend(Poppler::Document::SplashBackend);
+- }
+- doc->setRenderHint(Poppler::Document::Antialiasing, true);
+- doc->setRenderHint(Poppler::Document::TextAntialiasing, true);
+-}
+-
+-void PDFDisplay::setShowTextRects(bool show)
+-{
+- showTextRects = show;
+-}
+-
+-void PDFDisplay::display()
+-{
+- if (doc) {
+- Poppler::Page *page = doc->page(m_currentPage);
+- if (page) {
+- qDebug() << "Displaying page using" << backendString << "backend: " << m_currentPage;
+- QTime t = QTime::currentTime();
+- image = page->renderToImage();
+- qDebug() << "Rendering took" << t.msecsTo(QTime::currentTime()) << "msecs";
+- qDeleteAll(textRects);
+- if (showTextRects)
+- {
+- QPainter painter(&image);
+- painter.setPen(Qt::red);
+- textRects = page->textList();
+- foreach(Poppler::TextBox *tb, textRects)
+- {
+- painter.drawRect(tb->boundingBox());
+- }
+- }
+- else textRects.clear();
+- update();
+- delete page;
+- }
+- } else {
+- qWarning() << "doc not loaded";
+- }
+-}
+-
+-PDFDisplay::~PDFDisplay()
+-{
+- qDeleteAll(textRects);
+- delete doc;
+-}
+-
+-void PDFDisplay::paintEvent( QPaintEvent *e )
+-{
+- QPainter paint( this ); // paint widget
+- if (!image.isNull()) {
+- paint.drawImage(0, 0, image);
+- } else {
+- qWarning() << "null image";
+- }
+-}
+-
+-void PDFDisplay::keyPressEvent( QKeyEvent *e )
+-{
+- if (e->key() == Qt::Key_Down)
+- {
+- if (m_currentPage + 1 < doc->numPages())
+- {
+- m_currentPage++;
+- display();
+- }
+- }
+- else if (e->key() == Qt::Key_Up)
+- {
+- if (m_currentPage > 0)
+- {
+- m_currentPage--;
+- display();
+- }
+- }
+- else if (e->key() == Qt::Key_Q)
+- {
+- exit(0);
+- }
+-}
+-
+-void PDFDisplay::mousePressEvent( QMouseEvent *e )
+-{
+- int i = 0;
+- foreach(Poppler::TextBox *tb, textRects)
+- {
+- if (tb->boundingBox().contains(e->pos()))
+- {
+- QString tt = QString("Text: \"%1\"\nIndex in text list: %2").arg(tb->text()).arg(i);
+- QToolTip::showText(e->globalPos(), tt, this);
+- break;
+- }
+- ++i;
+- }
+-}
+-
+-int main( int argc, char **argv )
+-{
+- QApplication a( argc, argv ); // QApplication required!
+-
+- if ( argc < 2 ||
+- (argc == 3 && strcmp(argv[2], "-extract") != 0 && strcmp(argv[2], "-arthur") != 0 && strcmp(argv[2], "-textRects") != 0) ||
+- argc > 3)
+- {
+- // use argument as file name
+- qWarning() << "usage: test-poppler-qt4 filename [-extract|-arthur|-textRects]";
+- exit(1);
+- }
+-
+- Poppler::Document *doc = Poppler::Document::load(QFile::decodeName(argv[1]));
+- if (!doc)
+- {
+- qWarning() << "doc not loaded";
+- exit(1);
+- }
+-
+- if (doc->isLocked())
+- {
+- qWarning() << "document locked (needs password)";
+- exit(0);
+- }
+-
+- // output some meta-data
+- int major = 0, minor = 0;
+- doc->getPdfVersion( &major, &minor );
+- qDebug() << " PDF Version: " << qPrintable(QString::fromLatin1("%1.%2").arg(major).arg(minor));
+- qDebug() << " Title: " << doc->info("Title");
+- qDebug() << " Subject: " << doc->info("Subject");
+- qDebug() << " Author: " << doc->info("Author");
+- qDebug() << " Key words: " << doc->info("Keywords");
+- qDebug() << " Creator: " << doc->info("Creator");
+- qDebug() << " Producer: " << doc->info("Producer");
+- qDebug() << " Date created: " << doc->date("CreationDate").toString();
+- qDebug() << " Date modified: " << doc->date("ModDate").toString();
+- qDebug() << "Number of pages: " << doc->numPages();
+- qDebug() << " Linearised: " << doc->isLinearized();
+- qDebug() << " Encrypted: " << doc->isEncrypted();
+- qDebug() << " OK to print: " << doc->okToPrint();
+- qDebug() << " OK to copy: " << doc->okToCopy();
+- qDebug() << " OK to change: " << doc->okToChange();
+- qDebug() << "OK to add notes: " << doc->okToAddNotes();
+- qDebug() << " Page mode: " << doc->pageMode();
+- qDebug() << " Metadata: " << doc->metadata();
+-
+- if ( doc->hasEmbeddedFiles() ) {
+- qDebug() << "Embedded files:";
+- foreach( Poppler::EmbeddedFile *file, doc->embeddedFiles() ) {
+- qDebug() << " " << file->name();
+- }
+- qDebug();
+- } else {
+- qDebug() << "No embedded files";
+- }
+-
+- if (doc->numPages() <= 0)
+- {
+- delete doc;
+- qDebug() << "Doc has no pages";
+- return 0;
+- }
+-
+- Poppler::Page *page = doc->page(0);
+- if (page)
+- {
+- qDebug() << "Page 1 size: " << page->pageSize().width()/72 << "inches x " << page->pageSize().height()/72 << "inches";
+- delete page;
+- }
+-
+- if (argc == 2 || (argc == 3 && strcmp(argv[2], "-arthur") == 0) || (argc == 3 && strcmp(argv[2], "-textRects") == 0))
+- {
+- bool useArthur = (argc == 3 && strcmp(argv[2], "-arthur") == 0);
+- PDFDisplay test( doc, useArthur ); // create picture display
+- test.setWindowTitle("Poppler-Qt4 Test");
+- test.setShowTextRects(argc == 3 && strcmp(argv[2], "-textRects") == 0);
+- test.display();
+- test.show(); // show it
+-
+- return a.exec(); // start event loop
+- }
+- else
+- {
+- Poppler::Page *page = doc->page(0);
+-
+- QLabel *l = new QLabel(page->text(QRectF()), 0);
+- l->show();
+- delete page;
+- delete doc;
+- return a.exec();
+- }
+-}
+diff --git a/qt4/tests/test-render-to-file.cpp b/qt4/tests/test-render-to-file.cpp
+deleted file mode 100644
+index b01aa03c..00000000
+--- a/qt4/tests/test-render-to-file.cpp
++++ /dev/null
+@@ -1,69 +0,0 @@
+-#include <QtCore/QDebug>
+-#include <QtCore/QFile>
+-#include <QtGui/QApplication>
+-#include <QtGui/QImage>
+-
+-#include <poppler-qt4.h>
+-
+-int main( int argc, char **argv )
+-{
+- QApplication a( argc, argv ); // QApplication required!
+-
+- if ( argc < 2 ||
+- (argc == 3 && strcmp(argv[2], "-arthur") != 0) ||
+- argc > 3)
+- {
+- // use argument as file name
+- qWarning() << "usage: test-poppler-qt4 filename [-arthur]";
+- exit(1);
+- }
+-
+- Poppler::Document *doc = Poppler::Document::load(QFile::decodeName(argv[1]));
+- if (!doc)
+- {
+- qWarning() << "doc not loaded";
+- exit(1);
+- }
+-
+- if (doc->isLocked())
+- {
+- qWarning() << "document locked (needs password)";
+- exit(0);
+- }
+-
+- if (doc->numPages() <= 0)
+- {
+- delete doc;
+- qDebug() << "Doc has no pages";
+- return 0;
+- }
+-
+- QString backendString;
+- if (argc == 3 && strcmp(argv[2], "-arthur") == 0)
+- {
+- backendString = "Arthur";
+- doc->setRenderBackend(Poppler::Document::ArthurBackend);
+- }
+- else
+- {
+- backendString = "Splash";
+- doc->setRenderBackend(Poppler::Document::SplashBackend);
+- }
+- doc->setRenderHint(Poppler::Document::Antialiasing, true);
+- doc->setRenderHint(Poppler::Document::TextAntialiasing, true);
+-
+- for (int i = 0; i < doc->numPages(); ++i)
+- {
+- Poppler::Page *page = doc->page(i);
+- if (page) {
+- qDebug() << "Rendering page using" << backendString << "backend: " << i;
+- QTime t = QTime::currentTime();
+- QImage image = page->renderToImage();
+- qDebug() << "Rendering took" << t.msecsTo(QTime::currentTime()) << "msecs";
+- image.save(QString("test-rennder-to-file%1.ppm").arg(i));
+- delete page;
+- }
+- }
+-
+- return 0;
+-}
+
diff --git a/source/l/poppler/poppler.splashpath.h.revert.diff b/source/l/poppler/poppler.splashpath.h.revert.diff
new file mode 100644
index 000000000..64086067a
--- /dev/null
+++ b/source/l/poppler/poppler.splashpath.h.revert.diff
@@ -0,0 +1,42 @@
+--- ./splash/SplashPath.h.orig 2018-03-18 13:23:49.000000000 -0500
++++ ./splash/SplashPath.h 2017-12-03 13:25:06.000000000 -0600
+@@ -4,20 +4,6 @@
+ //
+ //========================================================================
+
+-//========================================================================
+-//
+-// Modified under the Poppler project - http://poppler.freedesktop.org
+-//
+-// All changes made under the Poppler project to this file are licensed
+-// under GPL version 2 or later
+-//
+-// Copyright (C) 2018 Albert Astals Cid <aacid@kde.org>
+-//
+-// To see a description of the changes please see the Changelog file that
+-// came with your tarball or type make ChangeLog if you are building from git
+-//
+-//========================================================================
+-
+ #ifndef SPLASHPATH_H
+ #define SPLASHPATH_H
+
+@@ -76,9 +62,6 @@
+
+ ~SplashPath();
+
+- SplashPath(const SplashPath&) = delete;
+- SplashPath& operator=(const SplashPath&) = delete;
+-
+ // Append <path> to <this>.
+ void append(SplashPath *path);
+
+@@ -133,6 +116,8 @@
+
+ friend class SplashXPath;
+ friend class Splash;
++ // this is a temporary hack, until we read FreeType paths directly
++ friend class ArthurOutputDev;
+ };
+
+ #endif
diff --git a/source/l/poppler/slack-desc b/source/l/poppler/slack-desc
index c32595646..baba4a307 100644
--- a/source/l/poppler/slack-desc
+++ b/source/l/poppler/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
poppler: poppler (a library for rendering PDF documents)
poppler:
poppler: Poppler is a library based on the xpdf PDF viewer developed by Derek
-poppler: Noonburg of Glyph and Cog, LLC. Since xpdf does not provide a shared
+poppler: Noonburg of Glyph and Cog, LLC. Since xpdf does not provide a shared
poppler: library, whenever a flaw was found potentially dozens of applications
-poppler: incorporating code from xpdf would have to be patched. By providing
+poppler: incorporating code from xpdf would have to be patched. By providing
poppler: a centralized PDF library this duplicated effort will be eliminated.
poppler:
-poppler: Homepage: http://poppler.freedesktop.org
+poppler: Homepage: http://poppler.freedesktop.org
poppler:
poppler:
diff --git a/source/l/popt/popt.SlackBuild b/source/l/popt/popt.SlackBuild
index e9f749211..30cf3c762 100755
--- a/source/l/popt/popt.SlackBuild
+++ b/source/l/popt/popt.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,28 +20,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=popt
VERSION=${VERSION:-1.16}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine architecture for build & packaging:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,7 +67,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -78,12 +86,15 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Move the binary and shared library to /sbin and /lib(64)
mkdir -p $PKG/lib${LIBDIRSUFFIX}
( cd $PKG/usr/lib${LIBDIRSUFFIX}
diff --git a/source/l/popt/slack-desc b/source/l/popt/slack-desc
index 46e60e6d8..9ea6f5584 100644
--- a/source/l/popt/slack-desc
+++ b/source/l/popt/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
popt: popt (command line parsing library)
popt:
-popt: Popt is a C library for parsing command line parameters. Popt was
+popt: Popt is a C library for parsing command line parameters. Popt was
popt: heavily influenced by the getopt() and getopt_long() functions, but it
-popt: improves on them by allowing more powerful argument expansion. Popt
+popt: improves on them by allowing more powerful argument expansion. Popt
popt: can parse arbitrary argv[] style arrays and automatically set
-popt: variables based on command line arguments. Popt allows command line
+popt: variables based on command line arguments. Popt allows command line
popt: arguments to be aliased via configuration files and includes utility
popt: functions for parsing arbitrary strings into argv[] arrays using
popt: shell-like rules.
diff --git a/source/l/pulseaudio/0001-memfd-wrappers-only-define-memfd_create-if-not-alrea.patch b/source/l/pulseaudio/0001-memfd-wrappers-only-define-memfd_create-if-not-alrea.patch
new file mode 100644
index 000000000..2c9f7497a
--- /dev/null
+++ b/source/l/pulseaudio/0001-memfd-wrappers-only-define-memfd_create-if-not-alrea.patch
@@ -0,0 +1,63 @@
+From 01239c23f57e74ec40c92144d22fe153ee65f4ff Mon Sep 17 00:00:00 2001
+From: Tanu Kaskinen <tanuk@iki.fi>
+Date: Wed, 24 Jan 2018 03:51:49 +0200
+Subject: [PATCH] memfd-wrappers: only define memfd_create() if not already
+ defined
+
+glibc 2.27 is to be released soon, and it will provide memfd_create().
+If glibc provides the function, we must not define it ourselves,
+otherwise building fails due to conflict between the two implementations
+of the same function.
+
+BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=104733
+---
+ configure.ac | 3 +++
+ src/pulsecore/memfd-wrappers.h | 7 ++++---
+ 2 files changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 013918f1a..1095ae8cb 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -607,6 +607,9 @@ AS_IF([test "x$enable_memfd" = "xyes" && test "x$HAVE_MEMFD" = "x0"],
+ [AC_MSG_ERROR([*** Your Linux kernel does not support memfd shared memory.
+ *** Use linux v3.17 or higher for such a feature.])])
+
++AS_IF([test "x$HAVE_MEMFD" = "x1"],
++ AC_CHECK_FUNCS([memfd_create]))
++
+ AC_SUBST(HAVE_MEMFD)
+ AM_CONDITIONAL([HAVE_MEMFD], [test "x$HAVE_MEMFD" = x1])
+ AS_IF([test "x$HAVE_MEMFD" = "x1"], AC_DEFINE([HAVE_MEMFD], 1, [Have memfd shared memory.]))
+diff --git a/src/pulsecore/memfd-wrappers.h b/src/pulsecore/memfd-wrappers.h
+index 3bed9b2b1..c7aadfd3c 100644
+--- a/src/pulsecore/memfd-wrappers.h
++++ b/src/pulsecore/memfd-wrappers.h
+@@ -20,13 +20,14 @@
+ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
+ ***/
+
+-#ifdef HAVE_MEMFD
++#if defined(HAVE_MEMFD) && !defined(HAVE_MEMFD_CREATE)
+
+ #include <sys/syscall.h>
+ #include <fcntl.h>
+
+ /*
+- * No glibc wrappers exist for memfd_create(2), so provide our own.
++ * Before glibc version 2.27 there was no wrapper for memfd_create(2),
++ * so we have to provide our own.
+ *
+ * Also define memfd fcntl sealing macros. While they are already
+ * defined in the kernel header file <linux/fcntl.h>, that file as
+@@ -63,6 +64,6 @@ static inline int memfd_create(const char *name, unsigned int flags) {
+ #define F_SEAL_WRITE 0x0008 /* prevent writes */
+ #endif
+
+-#endif /* HAVE_MEMFD */
++#endif /* HAVE_MEMFD && !HAVE_MEMFD_CREATE */
+
+ #endif
+--
+2.15.1
+
diff --git a/source/l/pulseaudio/pulseaudio.SlackBuild b/source/l/pulseaudio/pulseaudio.SlackBuild
index b9b28d151..62b21827c 100755
--- a/source/l/pulseaudio/pulseaudio.SlackBuild
+++ b/source/l/pulseaudio/pulseaudio.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pulseaudio
-# Copyright 2015 Christoph Willing Brisbane, Australia
-# Copyright 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015 Christoph Willing Brisbane, Australia
+# Copyright 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=pulseaudio
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -75,6 +84,9 @@ zcat $CWD/030_posix-completion.diff.gz | patch -p0 --verbose || exit 1
zcat $CWD/0001-client-conf-Add-allow-autospawn-for-root.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/0002-allow-autospawn-for-root-default.diff.gz | patch -p1 --verbose || exit 1
+# Fix for glibc-2.27:
+zcat $CWD/0001-memfd-wrappers-only-define-memfd_create-if-not-alrea.patch.gz | patch -p1 --verbose || exit 1
+
# Do not log a warning every time root uses PulseAudio:
zcat $CWD/0003-no-root-warn.diff.gz | patch -p1 --verbose || exit 1
@@ -114,8 +126,6 @@ make install-strip DESTDIR=$PKG || exit 1
# Remove .la files:
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/lib*.la
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/pulseaudio/lib*.la
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/pulse-*/modules/*.la
# Move config files to .new:
for f in $( find $PKG/etc/pulse/ -type f ) ; do mv $f $f.new ; done
diff --git a/source/l/pulseaudio/slack-desc b/source/l/pulseaudio/slack-desc
index cae1b57b8..4bb3ac3b7 100644
--- a/source/l/pulseaudio/slack-desc
+++ b/source/l/pulseaudio/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -11,7 +11,7 @@ pulseaudio:
pulseaudio: pulseaudio is a networked low-latency sound server intended to be an
pulseaudio: improved replacement for the Enlightened Sound Daemon (EsounD).
pulseaudio:
-pulseaudio: Homepage: http://www.pulseaudio.org
+pulseaudio: Homepage: http://www.pulseaudio.org
pulseaudio:
pulseaudio:
pulseaudio:
diff --git a/source/l/pycairo/pycairo.SlackBuild b/source/l/pycairo/pycairo.SlackBuild
index 009641f48..02d7aec1d 100755
--- a/source/l/pycairo/pycairo.SlackBuild
+++ b/source/l/pycairo/pycairo.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pycairo
# Copyright 2007 by Eric Hameleers <alien@slackbuilds.org>
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,26 +23,32 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pycairo
-SRCNAM=py2cairo
-VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
-# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -58,7 +64,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -67,8 +72,8 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
-cd $SRCNAM-$VERSION || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -76,38 +81,17 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-autoreconf -fi
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --localstatedir=/var \
- --sysconfdir=/etc \
- --program-prefix="" \
- --program-suffix="" \
- --build=$ARCH-slackware-linux
-
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS COPYING* INSTALL NEWS README \
+ AUTHORS COPYING* INSTALL NEWS PKG-INFO README* \
$PKG/usr/doc/$PKGNAM-$VERSION
-# If there's a ChangeLog, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r ChangeLog ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
- cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
- touch -r ChangeLog $DOCSDIR/ChangeLog
-fi
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/source/l/pycairo/pycairo.url b/source/l/pycairo/pycairo.url
index afad76d4d..2733937d0 100644
--- a/source/l/pycairo/pycairo.url
+++ b/source/l/pycairo/pycairo.url
@@ -1,2 +1,2 @@
-http://cairographics.org/pycairo
-http://cairographics.org/releases/
+https://pycairo.readthedocs.io/en/latest/
+https://github.com/pygobject/pycairo/releases
diff --git a/source/l/pycairo/slack-desc b/source/l/pycairo/slack-desc
index e6b4d76ce..6d4c3754a 100644
--- a/source/l/pycairo/slack-desc
+++ b/source/l/pycairo/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ pycairo: pycairo (a set of Python bindings for the cairo graphics library)
pycairo:
pycairo: Pycairo is set of Python bindings for the cairo graphics library.
pycairo:
-pycairo: Pycairo's web site: http://cairographics.org/pycairo
+pycairo: Pycairo's web site: https://pycairo.readthedocs.io/en/latest/
pycairo:
pycairo:
pycairo:
diff --git a/source/l/pycups/pycups.SlackBuild b/source/l/pycups/pycups.SlackBuild
index 29967ee89..f122e2547 100755
--- a/source/l/pycups/pycups.SlackBuild
+++ b/source/l/pycups/pycups.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008 Heinz Wiesinger <hmwiesinger@gmx.at>
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008 Heinz Wiesinger, Oggau, AT
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,11 @@
# Modified by Robby Workman <rworkman@slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pycups
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -38,9 +39,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -57,8 +65,10 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+make install-rpmhook DESTDIR=$PKG || exit 1
find $PKG | xargs file | grep -e "shared object" -e "executable" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/pycups/pycups.info b/source/l/pycups/pycups.info
deleted file mode 100644
index caf5cf58f..000000000
--- a/source/l/pycups/pycups.info
+++ /dev/null
@@ -1,2 +0,0 @@
-HOMEPAGE="http://cyberelk.net/tim/software/pycups/"
-DOWNLOAD="http://cyberelk.net/tim/data/pycups/pycups-1.9.41.tar.bz2"
diff --git a/source/l/pycups/slack-desc b/source/l/pycups/slack-desc
index 0d79a0aef..679e9e579 100644
--- a/source/l/pycups/slack-desc
+++ b/source/l/pycups/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler----------------------------------------------|
@@ -10,7 +10,7 @@ pycups: pycups (Python bindings for the CUPS API)
pycups:
pycups: These Python bindings are intended to wrap the CUPS API.
pycups:
-pycups: Homepage: http://cyberelk.net/tim/software/pycups/
+pycups: Homepage: http://cyberelk.net/tim/software/pycups/
pycups:
pycups:
pycups:
diff --git a/source/l/pycurl/pycurl.SlackBuild b/source/l/pycurl/pycurl.SlackBuild
index f4ed56c05..032bac66f 100755
--- a/source/l/pycurl/pycurl.SlackBuild
+++ b/source/l/pycurl/pycurl.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pycurl
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -45,7 +53,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP || exit 1
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -55,6 +63,7 @@ find . \
-exec chmod 644 {} \;
python setup.py --with-ssl install --root=$PKG || exit 1
+python3 setup.py --with-ssl install --root=$PKG || exit 1
find $PKG | xargs file | grep -e "shared object" -e "executable" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/pycurl/slack-desc b/source/l/pycurl/slack-desc
index 0ba82db14..a4c7559f0 100644
--- a/source/l/pycurl/slack-desc
+++ b/source/l/pycurl/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler----------------------------------------------|
pycurl: pycurl (Python interface to cURL library)
pycurl:
-pycurl: PycURL is a Python interface to libcurl. PycURL can be used
+pycurl: PycURL is a Python interface to libcurl. PycURL can be used
pycurl: to fetch objects identified by a URL from a Python program,
-pycurl: similar to the urllib Python module. PycURL is mature, very
+pycurl: similar to the urllib Python module. PycURL is mature, very
pycurl: fast, and supports a lot of features.
pycurl:
-pycurl: Homepage: http://pycurl.sourceforge.net
+pycurl: Homepage: http://pycurl.sourceforge.net
pycurl:
pycurl:
pycurl:
diff --git a/source/l/pygobject/pygobject.SlackBuild b/source/l/pygobject/pygobject.SlackBuild
index e39feacb0..054b1d72e 100755
--- a/source/l/pygobject/pygobject.SlackBuild
+++ b/source/l/pygobject/pygobject.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2008 Erik Hanson erik@slackbuilds.org
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,6 +21,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pygobject
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
@@ -28,18 +29,24 @@ BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
-# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -55,7 +62,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -66,8 +72,6 @@ rm -rf $PKGNAM-$VERSION
tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
cd $PKGNAM-$VERSION || exit 1
-zcat $CWD/pygobject.flags.diff.gz | patch -p1 --verbose || exit 1
-
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -76,6 +80,22 @@ find . \
-exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
+PYTHON=python3 \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --disable-introspection \
+ --build=$ARCH-slackware-linux \
+ || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+make clean
+
+CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -88,6 +108,9 @@ CFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/pygobject/pygobject.flags.diff b/source/l/pygobject/pygobject.flags.diff
deleted file mode 100644
index 6a0e99e1f..000000000
--- a/source/l/pygobject/pygobject.flags.diff
+++ /dev/null
@@ -1,49 +0,0 @@
-From 42d01f060c5d764baa881d13c103d68897163a49 Mon Sep 17 00:00:00 2001
-From: Ryan Lortie <desrt@desrt.ca>
-Date: Mon, 12 Mar 2012 16:44:14 -0400
-Subject: [PATCH] gio-types.defs: change some enums to flags
-
-These flags types were originally incorrectly handled in glib as being
-enums. That bug was fixed, but they're still enums here, leading to
-warnings about the mismatch.
-
-Change them to flags.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=668522
----
- gio/gio-types.defs | 6 +++---
- 1 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/gio/gio-types.defs b/gio/gio-types.defs
-index 331e0bc..7eee5c8 100644
---- a/gio/gio-types.defs
-+++ b/gio/gio-types.defs
-@@ -526,7 +526,7 @@
- )
- )
-
--(define-enum MountMountFlags
-+(define-flags MountMountFlags
- (in-module "gio")
- (c-name "GMountMountFlags")
- (gtype-id "G_TYPE_MOUNT_MOUNT_FLAGS")
-@@ -545,7 +545,7 @@
- )
- )
-
--(define-enum DriveStartFlags
-+(define-flags DriveStartFlags
- (in-module "gio")
- (c-name "GDriveStartFlags")
- (gtype-id "G_TYPE_DRIVE_START_FLAGS")
-@@ -770,7 +770,7 @@
- )
- )
-
--(define-enum SocketMsgFlags
-+(define-flags SocketMsgFlags
- (in-module "gio")
- (c-name "GSocketMsgFlags")
- (gtype-id "G_TYPE_SOCKET_MSG_FLAGS")
---
-1.7.9.1
diff --git a/source/l/pygobject/slack-desc b/source/l/pygobject/slack-desc
index f1bdf798f..b11f12ed0 100644
--- a/source/l/pygobject/slack-desc
+++ b/source/l/pygobject/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -12,7 +12,7 @@ pygobject: This archive contains bindings for the GObject, to be used in Python.
pygobject: It is a fairly complete set of bindings, it's already rather useful,
pygobject: and is usable to write moderately complex programs.
pygobject:
-pygobject: pygobject's home page: http://www.pygtk.org/
+pygobject: pygobject's home page: http://www.pygtk.org/
pygobject:
pygobject:
pygobject:
diff --git a/source/l/pygobject3/pygobject3.SlackBuild b/source/l/pygobject3/pygobject3.SlackBuild
index 9a1bce192..776d502a6 100755
--- a/source/l/pygobject3/pygobject3.SlackBuild
+++ b/source/l/pygobject3/pygobject3.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2008 Erik Hanson erik@slackbuilds.org
-# Copyright 2008, 2009, 2010, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,11 +21,12 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pygobject3
SRCNAM=pygobject
VERSION=${VERSION:-$(echo $SRCNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,9 +36,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -55,6 +63,8 @@ else
LIBDIRSUFFIX=""
fi
+PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
@@ -74,8 +84,22 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
- --build=$ARCH-slackware-linux \
- || exit 1
+ --with-python=python3 \
+ --build=$ARCH-slackware-linux || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+make clean
+
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --with-python=python \
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/l/pygobject3/slack-desc b/source/l/pygobject3/slack-desc
index f9b63c571..0d80cf808 100644
--- a/source/l/pygobject3/slack-desc
+++ b/source/l/pygobject3/slack-desc
@@ -2,17 +2,17 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-pygobject3: pygobject3 (GObject bindings for Python)
+pygobject3: pygobject3 (GObject bindings for Python3)
pygobject3:
pygobject3: This archive contains bindings for the GObject, to be used in Python.
pygobject3: It is a fairly complete set of bindings, it's already rather useful,
pygobject3: and is usable to write moderately complex programs.
pygobject3:
-pygobject3: Homepage: https://live.gnome.org/PyGObject
+pygobject3: Homepage: https://live.gnome.org/PyGObject
pygobject3:
pygobject3:
pygobject3:
diff --git a/source/l/pygtk/pygtk-fix-pango-object-leaks.patch b/source/l/pygtk/pygtk-fix-pango-object-leaks.patch
new file mode 100644
index 000000000..fb8f5f9ed
--- /dev/null
+++ b/source/l/pygtk/pygtk-fix-pango-object-leaks.patch
@@ -0,0 +1,63 @@
+From eca72baa5616fbe4dbebea43c7e5940847dc5ab8 Mon Sep 17 00:00:00 2001
+From: "Owen W. Taylor" <otaylor@fishsoup.net>
+Date: Tue, 27 Sep 2011 00:17:52 -0400
+Subject: Fix leaks of Pango objects
+
+Gtk.PrintContext.create_pango_context()
+Gtk.PrintContext.create_pango_layout()
+pangocairo.CairoContext.create_layout()
+
+were leaking the objects they returned.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=660216
+---
+ gtk/gtk-2.10.defs | 2 ++
+ pangocairo.override | 11 ++++++++---
+ 2 files changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/gtk/gtk-2.10.defs b/gtk/gtk-2.10.defs
+index 69c7e0c..faa45e1 100644
+--- a/gtk/gtk-2.10.defs
++++ b/gtk/gtk-2.10.defs
+@@ -1388,12 +1388,14 @@
+ (define-method create_pango_context
+ (of-object "GtkPrintContext")
+ (c-name "gtk_print_context_create_pango_context")
++ (caller-owns-return #t)
+ (return-type "PangoContext*")
+ )
+
+ (define-method create_pango_layout
+ (of-object "GtkPrintContext")
+ (c-name "gtk_print_context_create_pango_layout")
++ (caller-owns-return #t)
+ (return-type "PangoLayout*")
+ )
+
+diff --git a/pangocairo.override b/pangocairo.override
+index bb923e6..5101107 100644
+--- a/pangocairo.override
++++ b/pangocairo.override
+@@ -118,11 +118,16 @@ _wrap_pango_cairo_update_context(PyGObject *self, PyObject *args, PyObject *kwar
+ static PyObject *
+ _wrap_pango_cairo_create_layout(PyGObject *self)
+ {
+- PangoLayout *ret;
++ PangoLayout *layout;
++ PyObject *ret;
+
+- ret = pango_cairo_create_layout(PycairoContext_GET(self));
++ layout = pango_cairo_create_layout(PycairoContext_GET(self));
+ /* pygobject_new handles NULL checking */
+- return pygobject_new((GObject *)ret);
++ ret = pygobject_new((GObject *)layout);
++ if (layout)
++ g_object_unref(layout);
++
++ return ret;
+ }
+
+ static PyObject *
+--
+cgit v0.12
+
diff --git a/source/l/pygtk/pygtk.SlackBuild b/source/l/pygtk/pygtk.SlackBuild
index 7e3a32a88..81b535f7f 100755
--- a/source/l/pygtk/pygtk.SlackBuild
+++ b/source/l/pygtk/pygtk.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007 Erik Hanson erik@slackbuilds.org
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=pygtk
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-5}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -38,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -72,6 +80,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# https://bugzilla.gnome.org/show_bug.cgi?id=660216
+zcat $CWD/pygtk-fix-pango-object-leaks.patch.gz | patch -p1 --verbose || exit 1
+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/source/l/pygtk/slack-desc b/source/l/pygtk/slack-desc
index c83785e95..ee31d102c 100644
--- a/source/l/pygtk/slack-desc
+++ b/source/l/pygtk/slack-desc
@@ -1,9 +1,9 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -13,7 +13,7 @@ pygtk: PyGTK provides a convenient wrapper for the GTK+ library for use in
pygtk: Python programs, taking care of many of the boring details such as
pygtk: managing memory and type casting.
pygtk:
-pygtk: PyGTK's web page: http://www.pygtk.org/
+pygtk: PyGTK's web page: http://www.pygtk.org/
pygtk:
pygtk:
pygtk:
diff --git a/source/l/pyparsing/pyparsing.SlackBuild b/source/l/pyparsing/pyparsing.SlackBuild
new file mode 100755
index 000000000..7e1f56731
--- /dev/null
+++ b/source/l/pyparsing/pyparsing.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for pyparsing
+
+# Copyright 2008-2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# Modified by Barry Grundy (bgrundy<at>linuxleo.com)
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=pyparsing
+VERSION=${VERSION:-$(echo pyparsing-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+cd $PKGNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a CHANGES LICENSE* PKG-INFO README* HowToUsePyparsing.html \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/pyparsing/slack-desc b/source/l/pyparsing/slack-desc
new file mode 100644
index 000000000..66a2a3804
--- /dev/null
+++ b/source/l/pyparsing/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+pyparsing: pyparsing (parsing module for python)
+pyparsing:
+pyparsing: The pyparsing module is an alternative approach to creating and
+pyparsing: executing simple grammars, vs. the traditional lex/yacc approach, or
+pyparsing: the use of regular expressions. The pyparsing module provides a
+pyparsing: library of classes that client code uses to construct the grammar
+pyparsing: directly in Python code.
+pyparsing:
+pyparsing: Homepage: http://pyparsing.wikispaces.com/
+pyparsing:
+pyparsing:
diff --git a/source/l/pyrex/Pyrex.url b/source/l/pyrex/Pyrex.url
deleted file mode 100644
index d013d06b9..000000000
--- a/source/l/pyrex/Pyrex.url
+++ /dev/null
@@ -1 +0,0 @@
-http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/
diff --git a/source/l/pyrex/slack-desc b/source/l/pyrex/slack-desc
deleted file mode 100644
index 5f9e08506..000000000
--- a/source/l/pyrex/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler-----------------------------------------------------|
-pyrex: pyrex (A Python extension modules language)
-pyrex:
-pyrex: Pyrex is a language for writing Python extension modules.
-pyrex: Pyrex lets you write code that mixes Python and C data types any
-pyrex: way you want, and then compiles it into a C extension for Python.
-pyrex:
-pyrex: The home page for Pyrex is:
-pyrex: http://www.cosc.canterbury.ac.nz/~greg/python/Pyrex/
-pyrex:
-pyrex:
-pyrex:
diff --git a/source/l/python-appdirs/python-appdirs.SlackBuild b/source/l/python-appdirs/python-appdirs.SlackBuild
new file mode 100755
index 000000000..27194d697
--- /dev/null
+++ b/source/l/python-appdirs/python-appdirs.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-appdirs
+VERSION=${VERSION:-$(echo appdirs-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+SRCNAM=appdirs
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+# If there's a CHANGES.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGES.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGES.rst | head -n 1000 > $DOCSDIR/CHANGES.rst
+ touch -r CHANGES.rst $DOCSDIR/CHANGES.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-appdirs/slack-desc b/source/l/python-appdirs/slack-desc
new file mode 100644
index 000000000..02b8ef2c5
--- /dev/null
+++ b/source/l/python-appdirs/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-appdirs: python-appdirs (Python module for determining platform-specific dirs)
+python-appdirs:
+python-appdirs: A small Python module for determining appropriate platform-specific
+python-appdirs: dirs, e.g. a "user data dir".
+python-appdirs:
+python-appdirs: Homepage: https://github.com/ActiveState/appdirs
+python-appdirs:
+python-appdirs:
+python-appdirs:
+python-appdirs:
+python-appdirs:
diff --git a/source/l/python-certifi/python-certifi.SlackBuild b/source/l/python-certifi/python-certifi.SlackBuild
new file mode 100755
index 000000000..56e0ba60e
--- /dev/null
+++ b/source/l/python-certifi/python-certifi.SlackBuild
@@ -0,0 +1,76 @@
+#!/bin/bash
+
+# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-certifi
+VERSION=${VERSION:-$(echo certifi-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+SRCNAM=certifi
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-certifi/python-certifi.url b/source/l/python-certifi/python-certifi.url
new file mode 100644
index 000000000..3970169e4
--- /dev/null
+++ b/source/l/python-certifi/python-certifi.url
@@ -0,0 +1 @@
+https://pypi.python.org/pypi/certifi
diff --git a/source/l/python-certifi/slack-desc b/source/l/python-certifi/slack-desc
new file mode 100644
index 000000000..83be6758d
--- /dev/null
+++ b/source/l/python-certifi/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-certifi: python-certifi (Python package for providing Mozilla's CA Bundle)
+python-certifi:
+python-certifi: Certifi is a carefully curated collection of Root Certificates for
+python-certifi: validating the trustworthiness of SSL certificates while verifying
+python-certifi: the identity of TLS hosts.
+python-certifi:
+python-certifi: Homepage: http://certifi.io/
+python-certifi:
+python-certifi:
+python-certifi:
+python-certifi:
diff --git a/source/l/python-chardet/python-chardet.SlackBuild b/source/l/python-chardet/python-chardet.SlackBuild
new file mode 100755
index 000000000..d64620b90
--- /dev/null
+++ b/source/l/python-chardet/python-chardet.SlackBuild
@@ -0,0 +1,79 @@
+#!/bin/bash
+
+# Copyright 2017 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-chardet
+VERSION=${VERSION:-$(echo chardet-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+SRCNAM=chardet
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python3 setup.py install --root=$PKG || exit 1
+
+mv $PKG/usr/bin/chardetect $PKG/usr/bin/chardetect-py3
+
+python setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-chardet/slack-desc b/source/l/python-chardet/slack-desc
new file mode 100644
index 000000000..ea59082bb
--- /dev/null
+++ b/source/l/python-chardet/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-chardet: python-chardet (Universal encoding detector for Python 2 and 3)
+python-chardet:
+python-chardet: Character encoding auto-detection in Python. As smart as your
+python-chardet: browser. Open source.
+python-chardet:
+python-chardet: Homepage: https://chardet.readthedocs.io
+python-chardet:
+python-chardet:
+python-chardet:
+python-chardet:
+python-chardet:
diff --git a/source/l/python-docutils/python-docutils.SlackBuild b/source/l/python-docutils/python-docutils.SlackBuild
new file mode 100755
index 000000000..d52853b7b
--- /dev/null
+++ b/source/l/python-docutils/python-docutils.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-docutils
+VERSION=${VERSION:-$(echo docutils-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+SRCNAM=docutils
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Build python3 version first, so binaries in /usr/bin get overwritten
+# by the python2 versions. We prefer these ones for the time being.
+
+python3 setup.py build --build-lib=build/python3 install --root=$PKG || exit 1
+python setup.py build --build-lib=build/python install --root=$PKG || exit 1
+
+cd $PKG/usr/bin
+ for i in *.py; do
+ ln -s "$i" "$PKG/usr/bin/$(basename $i .py)"
+ done
+cd -
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.txt PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+# If there's a HISTORY.txt, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.txt ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.txt | head -n 1000 > $DOCSDIR/HISTORY.txt
+ touch -r HISTORY.txt $DOCSDIR/HISTORY.txt
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-docutils/slack-desc b/source/l/python-docutils/slack-desc
new file mode 100644
index 000000000..6f72da46c
--- /dev/null
+++ b/source/l/python-docutils/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-docutils: python-docutils (Python Documentation Utilities)
+python-docutils:
+python-docutils: Docutils is an open-source text processing system for processing
+python-docutils: plaintext documentation into useful formats, such as HTML, LaTeX,
+python-docutils: man-pages, open-document or XML. It includes reStructuredText, the
+python-docutils: easy to read, easy to use, what-you-see-is-what-you-get plaintext
+python-docutils: markup language.
+python-docutils:
+python-docutils: Homepage: http://docutils.sourceforge.net/
+python-docutils:
+python-docutils:
diff --git a/source/l/python-idna/python-idna.SlackBuild b/source/l/python-idna/python-idna.SlackBuild
new file mode 100755
index 000000000..1ffd644e8
--- /dev/null
+++ b/source/l/python-idna/python-idna.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-idna
+VERSION=${VERSION:-$(echo idna-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+SRCNAM=idna
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-idna/slack-desc b/source/l/python-idna/slack-desc
new file mode 100644
index 000000000..7ab1b383c
--- /dev/null
+++ b/source/l/python-idna/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-idna: python-idna (Internationalized Domain Names for Python)
+python-idna:
+python-idna: Support for the Internationalised Domain Names in Applications (IDNA)
+python-idna: protocol as specified in RFC 5891. This is the latest version of the
+python-idna: protocol and is sometimes referred to as IDNA 2008.
+python-idna:
+python-idna: This library also provides support for Unicode Technical Standard 46,
+python-idna: Unicode IDNA Compatibility Processing.
+python-idna:
+python-idna: Homepage: https://github.com/kjd/idna
+python-idna:
diff --git a/source/l/python-notify2/python-notify2.SlackBuild b/source/l/python-notify2/python-notify2.SlackBuild
new file mode 100755
index 000000000..971a47120
--- /dev/null
+++ b/source/l/python-notify2/python-notify2.SlackBuild
@@ -0,0 +1,76 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-notify2
+VERSION=${VERSION:-$(echo notify2-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+SRCNAM=notify2
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-notify2/python-notify2.url b/source/l/python-notify2/python-notify2.url
new file mode 100644
index 000000000..340ff34bf
--- /dev/null
+++ b/source/l/python-notify2/python-notify2.url
@@ -0,0 +1 @@
+https://pypi.python.org/pypi/notify2
diff --git a/source/l/python-notify2/slack-desc b/source/l/python-notify2/slack-desc
new file mode 100644
index 000000000..080bf34e4
--- /dev/null
+++ b/source/l/python-notify2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-notify2: python-notify2 (Python interface to DBus notifications)
+python-notify2:
+python-notify2: This is a pure-python replacement for notify-python, using python-dbus
+python-notify2: to communicate with the notifications server directly. It's compatible
+python-notify2: with Python 2 and 3, and its callbacks can work with Gtk 3 or Qt 4
+python-notify2: applications.
+python-notify2:
+python-notify2: Homepage: https://pypi.python.org/pypi/notify2
+python-notify2:
+python-notify2:
+python-notify2:
diff --git a/source/l/python-packaging/python-packaging.SlackBuild b/source/l/python-packaging/python-packaging.SlackBuild
new file mode 100755
index 000000000..3e1a64bb7
--- /dev/null
+++ b/source/l/python-packaging/python-packaging.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-packaging
+VERSION=${VERSION:-$(echo packaging-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+SRCNAM=packaging
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+# If there's a CHANGELOG.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGELOG.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGELOG.rst | head -n 1000 > $DOCSDIR/CHANGELOG.rst
+ touch -r CHANGELOG.rst $DOCSDIR/CHANGELOG.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-packaging/slack-desc b/source/l/python-packaging/slack-desc
new file mode 100644
index 000000000..c117eeac1
--- /dev/null
+++ b/source/l/python-packaging/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-packaging: python-packaging (Core utilities for Python packages)
+python-packaging:
+python-packaging: Core utilities for Python packages
+python-packaging:
+python-packaging: Homepage: https://github.com/pypa/packaging
+python-packaging:
+python-packaging:
+python-packaging:
+python-packaging:
+python-packaging:
+python-packaging:
diff --git a/source/l/python-pillow/python-pillow.SlackBuild b/source/l/python-pillow/python-pillow.SlackBuild
index e66ed8493..dbd8ae1d0 100755
--- a/source/l/python-pillow/python-pillow.SlackBuild
+++ b/source/l/python-pillow/python-pillow.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2009, 2010, 2013, 2014 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2013, 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2014 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
@@ -21,11 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=python-pillow
VERSION=${VERSION:-$(echo Pillow-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-SANE_VERSION=${SANE_VERSION:-$(echo Sane-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -37,6 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "${ARCH}" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -51,7 +59,9 @@ elif [ "$ARCH" = "x86_64" ]; then
LIBDIRSUFFIX="64"
fi
-CWD=$(pwd)
+PYTHONINC=$( python -c 'from distutils.sysconfig import get_python_inc; print(get_python_inc())' )
+PYTHON3INC=$( python3 -c 'from distutils.sysconfig import get_python_inc; print(get_python_inc())' )
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -71,33 +81,23 @@ find . \
python setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION/Sane
-cp -a \
- *.md *.rst docs/BUILDME docs/COPYING \
- $PKG/usr/doc/$PKGNAM-$VERSION
+# install headers
+mkdir -p ${PKG}$PYTHONINC/Imaging
+install -m 644 src/libImaging/*.h ${PKG}$PYTHONINC/Imaging
-cd $TMP
-rm -rf Sane-$SANE_VERSION
-tar xvf $CWD/Sane-$SANE_VERSION.tar.*z* || exit 1
-cd Sane-$SANE_VERSION
-chown -R root:root .
-find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+python3 setup.py install --root=$PKG || exit 1
-# Don't require Pillow to be installed before building Sane
-sed -i "s|os.path.join|'$TMP/Pillow-$VERSION/libImaging', &|" setup.py
-
-python setup.py install --root=$PKG || exit 1
+# install headers
+mkdir -p ${PKG}$PYTHON3INC/Imaging
+install -m 644 src/libImaging/*.h ${PKG}$PYTHON3INC/Imaging
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- *.md *.rst COPYING \
- $PKG/usr/doc/$PKGNAM-$VERSION/Sane
+ *.md *.rst docs/BUILDME docs/COPYING \
+ $PKG/usr/doc/$PKGNAM-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/source/l/python-pillow/slack-desc b/source/l/python-pillow/slack-desc
index d9ac65681..f8fffcd8d 100644
--- a/source/l/python-pillow/slack-desc
+++ b/source/l/python-pillow/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
python-pillow: python-pillow (Python Imaging Library)
python-pillow:
python-pillow: The Python Imaging Library (PIL) adds image processing capabilities
-python-pillow: to your Python environment. This library provides extensive file
+python-pillow: to your Python environment. This library provides extensive file
python-pillow: format support, an efficient internal representation, and powerful
python-pillow: image processing capabilities.
python-pillow:
python-pillow: PIL is used by the scanning component of HPLIP.
python-pillow:
-python-pillow: PIL homepage: https://python-pillow.github.io/
+python-pillow: PIL homepage: https://python-pillow.github.io/
python-pillow:
diff --git a/source/l/python-requests/python-requests.SlackBuild b/source/l/python-requests/python-requests.SlackBuild
new file mode 100755
index 000000000..8ba8cc20b
--- /dev/null
+++ b/source/l/python-requests/python-requests.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-requests
+VERSION=${VERSION:-$(echo requests-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+SRCNAM=requests
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst LICENSE* NOTICE PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+# If there's a HISTORY.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r HISTORY.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat HISTORY.rst | head -n 1000 > $DOCSDIR/HISTORY.rst
+ touch -r HISTORY.rst $DOCSDIR/HISTORY.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-requests/slack-desc b/source/l/python-requests/slack-desc
new file mode 100644
index 000000000..99d9c9798
--- /dev/null
+++ b/source/l/python-requests/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-requests: python-requests (HTTP request library for python)
+python-requests:
+python-requests: Requests allows you to send organic, grass-fed HTTP/1.1 requests,
+python-requests: without the need for manual labor. There's no need to manually add
+python-requests: query strings to your URLs, or to form-encode your POST data.
+python-requests: Keep-alive and HTTP connection pooling are 100% automatic, powered by
+python-requests: urllib3, which is embedded within Requests.
+python-requests:
+python-requests: Homepage: http://docs.python-requests.org/en/master/
+python-requests:
+python-requests:
diff --git a/source/l/pyrex/pyrex.SlackBuild b/source/l/python-sane/python-sane.SlackBuild
index 94b34c2eb..4e296a2c6 100755
--- a/source/l/pyrex/pyrex.SlackBuild
+++ b/source/l/python-sane/python-sane.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2007 David Somero <dsomero@hotmail.com>
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2013, 2014, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,23 +21,32 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=Pyrex
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+PKGNAM=python-sane
+VERSION=${VERSION:-$(echo Sane-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "${ARCH}" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -48,22 +57,18 @@ elif [ "$ARCH" = "s390" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-Pyrex
+PKG=$TMP/package-$PKGNAM
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf Pyrex-$VERSION
-tar xvf $CWD/Pyrex-$VERSION.tar.?z* || exit 1
-cd Pyrex-$VERSION
+rm -rf Sane-$VERSION
+tar xvf $CWD/Sane-$VERSION.tar.*z* || exit 1
+cd Sane-$VERSION
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -72,26 +77,19 @@ find . \
-exec chmod 644 {} \;
python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-mkdir -p $PKG/usr/doc/Pyrex-$VERSION
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- README* INSTALL* USAGE* ToDo* \
- $PKG/usr/doc/Pyrex-$VERSION
-
-# If there's a ChangeLog, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r CHANGES.txt ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
- cat CHANGES.txt | head -n 1000 > $DOCSDIR/CHANGES.txt
- touch -r CHANGES.txt $DOCSDIR/CHANGES.txt
-fi
+ *.md *.rst COPYING \
+ $PKG/usr/doc/$PKGNAM-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/pyrex-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-sane/slack-desc b/source/l/python-sane/slack-desc
new file mode 100644
index 000000000..e8c0a1ce9
--- /dev/null
+++ b/source/l/python-sane/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+python-sane: python-sane (SANE interface for python)
+python-sane:
+python-sane: The SANE module provides an interface to the SANE scanner and frame
+python-sane: grabber interface for Linux.
+python-sane:
+python-sane: Homepage: https://github.com/python-pillow/Sane
+python-sane:
+python-sane:
+python-sane:
+python-sane:
+python-sane:
diff --git a/source/l/herqq/herqq.SlackBuild b/source/l/python-six/python-six.SlackBuild
index b55d06e92..6f492f7bf 100755
--- a/source/l/herqq/herqq.SlackBuild
+++ b/source/l/python-six/python-six.SlackBuild
@@ -1,7 +1,9 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2011 Patrick J. Volkerding, Sebeka, MN, USA
-# Copyright 2011 Eric Hameleers, Eindhoven, NL
+# Slackware build script for python-six
+
+# Copyright 2012-2015 Larry Hajali <larryhaja[at]gmail[dot]com>
+# Copyright 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -10,7 +12,7 @@
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
@@ -21,78 +23,72 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=herqq
-VERSION=${VERSION:-$(echo $PKGNAM-*.zip | rev | cut -f 2- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
-
-NUMJOBS=${NUMJOBS:--j7}
+PKGNAM=python-six
+VERSION=${VERSION:-$(echo six-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
-MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
- case "$MARCH" in
- i?86) export ARCH=i486 ;;
- armv7hl) export ARCH=$MARCH ;;
- arm*) export ARCH=arm ;;
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$MARCH ;;
+ *) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "${ARCH}" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "armv7hl" ]; then
- SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
- LIBDIRSUFFIX=""
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
rm -rf $PKG
mkdir -p $TMP $PKG
-cd $TMP
-rm -rf $PKGNAM-$VERSION
-unzip $CWD/$PKGNAM-$VERSION.zip || exit 1
-cd $PKGNAM-$VERSION || exit 1
-
-# Fix 64-bit installation path:
-sed -i -e "s#PREFIX/lib#&${LIBDIRSUFFIX}#" $(find . -name "*.pro")
+cd $TMP
+rm -rf six-$VERSION
+tar xvf $CWD/six-$VERSION.tar.*z* || exit 1
+cd six-$VERSION
chown -R root:root .
find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
-qmake PREFIX=/usr
-make $NUMJOBS || make || exit 1
-make install INSTALL_ROOT=$PKG || exit 1
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a \
- hupnp/ChangeLog hupnp/LICENSE_LGPLv3.txt \
- $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-find $PKG | xargs file | grep -e "executable" -e "shared object" \
- | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a LICENSE PKG-INFO README $PKG/usr/doc/$PKGNAM-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/python-six/slack-desc b/source/l/python-six/slack-desc
new file mode 100644
index 000000000..21ff162a2
--- /dev/null
+++ b/source/l/python-six/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-six: python-six (Python 2 and 3 compatibility library)
+python-six:
+python-six: Six is a Python 2 and 3 compatibility library. It provides utility
+python-six: functions for smoothing over the differences between the Python
+python-six: versions with the goal of writing Python code that is compatible on
+python-six: both Python versions. See the documentation for more information on
+python-six: what is provided.
+python-six:
+python-six: Homepage: http://pypi.python.org/pypi/six/
+python-six:
+python-six:
diff --git a/source/l/python-urllib3/python-urllib3.SlackBuild b/source/l/python-urllib3/python-urllib3.SlackBuild
new file mode 100755
index 000000000..c42396e59
--- /dev/null
+++ b/source/l/python-urllib3/python-urllib3.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017 Heinz Wiesinger, Amsterdam, NL
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=python-urllib3
+VERSION=${VERSION:-$(echo urllib3-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+SRCNAM=urllib3
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.?z* || exit 1
+cd $SRCNAM-$VERSION || exit 1
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a *.rst *.txt PKG-INFO \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \;
+
+# If there's a CHANGES.rst, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r CHANGES.rst ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat CHANGES.rst | head -n 1000 > $DOCSDIR/CHANGES.rst
+ touch -r CHANGES.rst $DOCSDIR/CHANGES.rst
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/python-urllib3/slack-desc b/source/l/python-urllib3/slack-desc
new file mode 100644
index 000000000..f23bdf912
--- /dev/null
+++ b/source/l/python-urllib3/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+python-urllib3: python-urllib3 (Powerful, sanity-friendly HTTP client for Python)
+python-urllib3:
+python-urllib3: urllib3 is a powerful, sanity-friendly HTTP client for Python. Much
+python-urllib3: of the Python ecosystem already uses urllib3 and you should too.
+python-urllib3:
+python-urllib3: Homepage: https://urllib3.readthedocs.io/
+python-urllib3:
+python-urllib3:
+python-urllib3:
+python-urllib3:
+python-urllib3:
diff --git a/source/l/qca/0011-use-_DEFAULT_SOURCE-instead-of-_BSD_SOURCE.patch b/source/l/qca/0011-use-_DEFAULT_SOURCE-instead-of-_BSD_SOURCE.patch
deleted file mode 100644
index f6514c745..000000000
--- a/source/l/qca/0011-use-_DEFAULT_SOURCE-instead-of-_BSD_SOURCE.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 1ff36f4030287f1c263eb344d84cd4a43b1546d2 Mon Sep 17 00:00:00 2001
-From: Rex Dieter <rdieter@math.unl.edu>
-Date: Thu, 19 Nov 2015 13:23:16 -0600
-Subject: [PATCH 11/11] use _DEFAULT_SOURCE instead of _BSD_SOURCE
-
-the former is used in other kde software in general, and
-the latter is generally deprecated on modern glibc's
----
- CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index dbce082..051ae6d 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -115,7 +115,7 @@ endif (WIN32)
-
- if (CMAKE_COMPILER_IS_GNUCXX)
- if (CMAKE_SYSTEM_NAME MATCHES Linux)
-- add_definitions (-D_BSD_SOURCE)
-+ add_definitions (-D_DEFAULT_SOURCE)
- # on arm -Wcast-align throws many internal qt warning
- if(NOT CMAKE_SYSTEM_PROCESSOR MATCHES "^arm")
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wcast-align")
---
-2.5.0
-
diff --git a/source/l/qca/Add_support_for_OpenSSL_1.1.0.diff b/source/l/qca/Add_support_for_OpenSSL_1.1.0.diff
new file mode 100644
index 000000000..01d8bab5a
--- /dev/null
+++ b/source/l/qca/Add_support_for_OpenSSL_1.1.0.diff
@@ -0,0 +1,1720 @@
+From d58e20ee652038dc4ec4fe4765dc3639ed735526 Mon Sep 17 00:00:00 2001
+From: Fabian Vogt <fabian@ritter-vogt.de>
+Date: Sat, 16 Dec 2017 22:29:40 +0100
+Subject: Add support for OpenSSL 1.1.0
+
+Test Plan:
+Ran the testsuite with OpenSSL 1.1.0g and 1.0.2j, all passed.
+Using this code with kdeconnect and okteta successfully on my system now.
+
+Reviewers: iromanov
+
+Subscribers: anthonyfieroni, alonbl, heikobecker, cfeck, asturmlechner, bero, rdieter
+
+Differential Revision: https://phabricator.kde.org/D9416
+---
+ plugins/qca-ossl/ossl110-compat.h | 283 ++++++++++++++++++
+ plugins/qca-ossl/qca-ossl.cpp | 583 ++++++++++++++++++++++++--------------
+ create mode 100644 plugins/qca-ossl/ossl110-compat.h
+
+diff --git a/plugins/qca-ossl/ossl110-compat.h b/plugins/qca-ossl/ossl110-compat.h
+new file mode 100644
+index 0000000..ec15475
+--- /dev/null
++++ b/plugins/qca-ossl/ossl110-compat.h
+@@ -0,0 +1,283 @@
++/*
++ * Copyright (C) 2017 Gabriel Souza Franco <gabrielfrancosouza@gmail.com>
++ *
++ * This library is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU Lesser General Public
++ * License as published by the Free Software Foundation; either
++ * version 2.1 of the License, or (at your option) any later version.
++ *
++ * This library is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public
++ * License along with this library; if not, write to the Free Software
++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
++ *
++ */
++
++#ifndef OSSL110COMPAT_H
++#define OSSL110COMPAT_H
++
++#include <openssl/evp.h>
++#include <openssl/hmac.h>
++#include <openssl/rsa.h>
++#include <openssl/dsa.h>
++
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#define RSA_F_RSA_METH_DUP 161
++
++static void DSA_SIG_get0(const DSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps)
++{
++ if (pr)
++ *pr = sig->r;
++ if (ps)
++ *ps = sig->s;
++}
++
++static int DSA_SIG_set0(DSA_SIG *sig, BIGNUM *r, BIGNUM *s)
++{
++ if (!sig) return 0;
++ sig->r = r;
++ sig->s = s;
++ return 1;
++}
++
++static void DSA_get0_pqg(const DSA *dsa, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g)
++{
++ if (p)
++ *p = dsa->p;
++ if (q)
++ *q = dsa->q;
++ if (g)
++ *g = dsa->g;
++}
++
++static int DSA_set0_pqg(DSA *dsa, BIGNUM *p, BIGNUM *q, BIGNUM *g)
++{
++ if (!dsa) return 0;
++ dsa->p = p;
++ dsa->q = q;
++ dsa->g = g;
++ return 1;
++}
++
++static void RSA_get0_key(const RSA *rsa, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d)
++{
++ if (n)
++ *n = rsa->n;
++ if (e)
++ *e = rsa->e;
++ if (d)
++ *d = rsa->d;
++}
++
++static int RSA_set0_key(RSA *rsa, BIGNUM *n, BIGNUM *e, BIGNUM *d)
++{
++ if (!rsa) return 0;
++ rsa->n = n;
++ rsa->e = e;
++ rsa->d = d;
++ return 1;
++}
++
++static void RSA_get0_factors(const RSA *rsa, const BIGNUM **p, const BIGNUM **q)
++{
++ if (p)
++ *p = rsa->p;
++ if (q)
++ *q = rsa->q;
++}
++
++static int RSA_set0_factors(RSA *rsa, BIGNUM *p, BIGNUM *q)
++{
++ if (!rsa) return 0;
++ rsa->p = p;
++ rsa->q = q;
++ return 1;
++}
++
++static void DH_get0_pqg(const DH *dh, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g)
++{
++ if (p)
++ *p = dh->p;
++ if (q)
++ *q = dh->q;
++ if (g)
++ *g = dh->g;
++}
++
++static int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g)
++{
++ if (!dh) return 0;
++ dh->p = p;
++ dh->q = q;
++ dh->g = g;
++ return 1;
++}
++
++static void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key)
++{
++ if (pub_key)
++ *pub_key = dh->pub_key;
++ if (priv_key)
++ *priv_key = dh->priv_key;
++}
++
++static int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key)
++{
++ if (!dh) return 0;
++ dh->pub_key = pub_key;
++ dh->priv_key = priv_key;
++ return 1;
++}
++
++static void DSA_get0_key(const DSA *dsa, const BIGNUM **pub_key, const BIGNUM **priv_key)
++{
++ if (pub_key)
++ *pub_key = dsa->pub_key;
++ if (priv_key)
++ *priv_key = dsa->priv_key;
++}
++
++static int DSA_set0_key(DSA *dsa, BIGNUM *pub_key, BIGNUM *priv_key)
++{
++ if (!dsa) return 0;
++ dsa->pub_key = pub_key;
++ dsa->priv_key = priv_key;
++ return 1;
++}
++
++static void X509_SIG_getm(const X509_SIG *sig, X509_ALGOR **palg, ASN1_OCTET_STRING **pdigest)
++{
++ if (palg)
++ *palg = sig->algor;
++ if (pdigest)
++ *pdigest = sig->digest;
++}
++
++static void X509_REQ_get0_signature(const X509_REQ *req, const ASN1_BIT_STRING **psig, const X509_ALGOR **palg)
++{
++ if (psig)
++ *psig = req->signature;
++ if (palg)
++ *palg = req->sig_alg;
++}
++
++static void X509_CRL_get0_signature(const X509_CRL *crl, const ASN1_BIT_STRING **psig, const X509_ALGOR **palg)
++{
++ if (psig)
++ *psig = crl->signature;
++ if (palg)
++ *palg = crl->sig_alg;
++}
++
++static RSA_METHOD *RSA_meth_dup(const RSA_METHOD *meth)
++{
++ if (!meth)
++ return NULL;
++
++ RSA_METHOD *_meth = (RSA_METHOD *) OPENSSL_malloc(sizeof(*_meth));
++
++ if (!_meth)
++ {
++ RSAerr(RSA_F_RSA_METH_DUP, ERR_R_MALLOC_FAILURE);
++ return NULL;
++ }
++
++ memcpy(_meth, meth, sizeof(*_meth));
++ _meth->name = strdup(meth->name);
++ if (!_meth->name) {
++ OPENSSL_free(_meth);
++ RSAerr(RSA_F_RSA_METH_DUP, ERR_R_MALLOC_FAILURE);
++ return NULL;
++ }
++
++ return _meth;
++}
++
++static int RSA_meth_set_priv_enc(RSA_METHOD *rsa, int (*priv_enc) (int flen, const unsigned char *from,
++ unsigned char *to, RSA *rsa, int padding))
++{
++ if (!rsa) return 0;
++ rsa->rsa_priv_enc = priv_enc;
++ return 1;
++}
++
++static int RSA_meth_set_priv_dec(RSA_METHOD *rsa, int (*priv_dec) (int flen, const unsigned char *from,
++ unsigned char *to, RSA *rsa, int padding))
++{
++ if (!rsa) return 0;
++ rsa->rsa_priv_dec = priv_dec;
++ return 1;
++}
++
++static int RSA_meth_set_sign(RSA_METHOD *meth, int (*sign) (int type, const unsigned char *m,
++ unsigned int m_length, unsigned char *sigret, unsigned int *siglen, const RSA *rsa))
++{
++ if (!meth) return 0;
++ meth->rsa_sign = sign;
++ return 1;
++}
++
++static int RSA_meth_set_verify(RSA_METHOD *meth, int (*verify) (int dtype, const unsigned char *m,
++ unsigned int m_length, const unsigned char *sigbuf, unsigned int siglen, const RSA *rsa))
++{
++ if (!meth) return 0;
++ meth->rsa_verify = verify;
++ return 1;
++}
++
++static int RSA_meth_set_finish(RSA_METHOD *meth, int (*finish) (RSA *rsa))
++{
++ if (!meth) return 0;
++ meth->finish = finish;
++ return 1;
++}
++
++static HMAC_CTX *HMAC_CTX_new()
++{
++ HMAC_CTX *ctx = (HMAC_CTX *) OPENSSL_malloc(sizeof(HMAC_CTX));
++ if (ctx)
++ HMAC_CTX_init(ctx);
++ return ctx;
++}
++
++static void HMAC_CTX_free(HMAC_CTX *ctx)
++{
++ if (!ctx)
++ return;
++ HMAC_CTX_cleanup(ctx);
++ EVP_MD_CTX_cleanup(&ctx->i_ctx);
++ EVP_MD_CTX_cleanup(&ctx->o_ctx);
++ EVP_MD_CTX_cleanup(&ctx->md_ctx);
++ OPENSSL_free(ctx);
++}
++
++#define ASN1_STRING_get0_data(...) (const unsigned char*)ASN1_STRING_data(__VA_ARGS__)
++
++#define EVP_MD_CTX_new(...) EVP_MD_CTX_create(__VA_ARGS__)
++#define EVP_MD_CTX_free(...) EVP_MD_CTX_destroy(__VA_ARGS__)
++
++#define EVP_PKEY_up_ref(pkey) CRYPTO_add(&(pkey)->references, 1, CRYPTO_LOCK_EVP_PKEY)
++#define X509_up_ref(cert) CRYPTO_add(&(cert)->references, 1, CRYPTO_LOCK_X509)
++#define X509_CRL_up_ref(crl) CRYPTO_add(&(crl)->references, 1, CRYPTO_LOCK_X509_CRL)
++
++#define EVP_PKEY_id(pky) (pky)->type
++#define EVP_PKEY_get0_DSA(pky) (pky)->pkey.dsa
++#define EVP_PKEY_get0_RSA(pky) (pky)->pkey.rsa
++#define EVP_PKEY_get0_DH(pky) (pky)->pkey.dh
++
++#define X509_CRL_get0_lastUpdate X509_CRL_get_lastUpdate
++#define X509_CRL_get0_nextUpdate X509_CRL_get_nextUpdate
++
++#define X509_REQ_get_signature_nid(req) OBJ_obj2nid((req)->sig_alg->algorithm)
++#define X509_CRL_get_signature_nid(crl) OBJ_obj2nid((crl)->sig_alg->algorithm)
++
++#define X509_REVOKED_get0_serialNumber(rev) (rev)->serialNumber
++#define X509_REVOKED_get0_revocationDate(rev) (rev)->revocationDate
++
++#endif // OPENSSL_VERSION_NUMBER < 0x10100000L
++
++#endif // OSSL110COMPAT_H
+diff --git a/plugins/qca-ossl/qca-ossl.cpp b/plugins/qca-ossl/qca-ossl.cpp
+index a507604..39dbc2b 100644
+--- a/plugins/qca-ossl/qca-ossl.cpp
++++ b/plugins/qca-ossl/qca-ossl.cpp
+@@ -2,6 +2,7 @@
+ /*
+ * Copyright (C) 2004-2007 Justin Karneges <justin@affinix.com>
+ * Copyright (C) 2004-2006 Brad Hards <bradh@frogmouth.net>
++ * Copyright (C) 2017 Fabian Vogt <fabian@ritter-vogt.de>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+@@ -39,6 +40,8 @@
+ #include <openssl/pkcs12.h>
+ #include <openssl/ssl.h>
+
++#include "ossl110-compat.h"
++
+ #ifndef OSSL_097
+ // comment this out if you'd rather use openssl 0.9.6
+ #define OSSL_097
+@@ -53,6 +56,16 @@
+ ((_STACK*) (1 ? p : (type*)0))
+ #endif
+
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ #define OSSL_110
++#endif
++
++// OpenSSL 1.1.0 compatibility macros
++#ifdef OSSL_110
++#define M_ASN1_IA5STRING_new() ASN1_IA5STRING_new()
++#define RSA_F_RSA_EAY_PRIVATE_DECRYPT RSA_F_RSA_OSSL_PRIVATE_DECRYPT
++#endif
++
+ using namespace QCA;
+
+ namespace opensslQCAPlugin {
+@@ -94,7 +107,7 @@ static QByteArray bio2ba(BIO *b)
+ return buf;
+ }
+
+-static BigInteger bn2bi(BIGNUM *n)
++static BigInteger bn2bi(const BIGNUM *n)
+ {
+ SecureArray buf(BN_num_bytes(n) + 1);
+ buf[0] = 0; // positive
+@@ -110,7 +123,7 @@ static BIGNUM *bi2bn(const BigInteger &n)
+
+ // take lowest bytes of BIGNUM to fit
+ // pad with high byte zeroes to fit
+-static SecureArray bn2fixedbuf(BIGNUM *n, int size)
++static SecureArray bn2fixedbuf(const BIGNUM *n, int size)
+ {
+ SecureArray buf(BN_num_bytes(n));
+ BN_bn2bin(n, (unsigned char *)buf.data());
+@@ -128,8 +141,11 @@ static SecureArray dsasig_der_to_raw(const SecureArray &in)
+ const unsigned char *inp = (const unsigned char *)in.data();
+ d2i_DSA_SIG(&sig, &inp, in.size());
+
+- SecureArray part_r = bn2fixedbuf(sig->r, 20);
+- SecureArray part_s = bn2fixedbuf(sig->s, 20);
++ const BIGNUM *bnr, *bns;
++ DSA_SIG_get0(sig, &bnr, &bns);
++
++ SecureArray part_r = bn2fixedbuf(bnr, 20);
++ SecureArray part_s = bn2fixedbuf(bns, 20);
+ SecureArray result;
+ result.append(part_r);
+ result.append(part_s);
+@@ -144,12 +160,16 @@ static SecureArray dsasig_raw_to_der(const SecureArray &in)
+ return SecureArray();
+
+ DSA_SIG *sig = DSA_SIG_new();
+- SecureArray part_r(20);
+- SecureArray part_s(20);
++ SecureArray part_r(20); BIGNUM *bnr;
++ SecureArray part_s(20); BIGNUM *bns;
+ memcpy(part_r.data(), in.data(), 20);
+ memcpy(part_s.data(), in.data() + 20, 20);
+- sig->r = BN_bin2bn((const unsigned char *)part_r.data(), part_r.size(), NULL);
+- sig->s = BN_bin2bn((const unsigned char *)part_s.data(), part_s.size(), NULL);
++ bnr = BN_bin2bn((const unsigned char *)part_r.data(), part_r.size(), NULL);
++ bns = BN_bin2bn((const unsigned char *)part_s.data(), part_s.size(), NULL);
++
++ if(DSA_SIG_set0(sig, bnr, bns) == 0)
++ return SecureArray();
++ // Not documented what happens in the failure case, free bnr and bns?
+
+ int len = i2d_DSA_SIG(sig, NULL);
+ SecureArray result(len);
+@@ -1005,29 +1025,39 @@ public:
+ opensslHashContext(const EVP_MD *algorithm, Provider *p, const QString &type) : HashContext(p, type)
+ {
+ m_algorithm = algorithm;
+- EVP_DigestInit( &m_context, m_algorithm );
++ m_context = EVP_MD_CTX_new();
++ EVP_DigestInit( m_context, m_algorithm );
++ }
++
++ opensslHashContext(const opensslHashContext &other)
++ : HashContext(other)
++ {
++ m_algorithm = other.m_algorithm;
++ m_context = EVP_MD_CTX_new();
++ EVP_MD_CTX_copy_ex(m_context, other.m_context);
+ }
+
+ ~opensslHashContext()
+ {
+- EVP_MD_CTX_cleanup(&m_context);
++ EVP_MD_CTX_free(m_context);
+ }
+
+ void clear()
+ {
+- EVP_MD_CTX_cleanup(&m_context);
+- EVP_DigestInit( &m_context, m_algorithm );
++ EVP_MD_CTX_free(m_context);
++ m_context = EVP_MD_CTX_new();
++ EVP_DigestInit( m_context, m_algorithm );
+ }
+
+ void update(const MemoryRegion &a)
+ {
+- EVP_DigestUpdate( &m_context, (unsigned char*)a.data(), a.size() );
++ EVP_DigestUpdate( m_context, (unsigned char*)a.data(), a.size() );
+ }
+
+ MemoryRegion final()
+ {
+ SecureArray a( EVP_MD_size( m_algorithm ) );
+- EVP_DigestFinal( &m_context, (unsigned char*)a.data(), 0 );
++ EVP_DigestFinal( m_context, (unsigned char*)a.data(), 0 );
+ return a;
+ }
+
+@@ -1038,7 +1068,7 @@ public:
+
+ protected:
+ const EVP_MD *m_algorithm;
+- EVP_MD_CTX m_context;
++ EVP_MD_CTX *m_context;
+ };
+
+
+@@ -1048,7 +1078,21 @@ public:
+ opensslPbkdf1Context(const EVP_MD *algorithm, Provider *p, const QString &type) : KDFContext(p, type)
+ {
+ m_algorithm = algorithm;
+- EVP_DigestInit( &m_context, m_algorithm );
++ m_context = EVP_MD_CTX_new();
++ EVP_DigestInit( m_context, m_algorithm );
++ }
++
++ opensslPbkdf1Context(const opensslPbkdf1Context &other)
++ : KDFContext(other)
++ {
++ m_algorithm = other.m_algorithm;
++ m_context = EVP_MD_CTX_new();
++ EVP_MD_CTX_copy(m_context, other.m_context);
++ }
++
++ ~opensslPbkdf1Context()
++ {
++ EVP_MD_CTX_free(m_context);
+ }
+
+ Provider::Context *clone() const
+@@ -1082,16 +1126,16 @@ public:
+ DK = Tc<0..dkLen-1>
+ */
+ // calculate T_1
+- EVP_DigestUpdate( &m_context, (unsigned char*)secret.data(), secret.size() );
+- EVP_DigestUpdate( &m_context, (unsigned char*)salt.data(), salt.size() );
++ EVP_DigestUpdate( m_context, (unsigned char*)secret.data(), secret.size() );
++ EVP_DigestUpdate( m_context, (unsigned char*)salt.data(), salt.size() );
+ SecureArray a( EVP_MD_size( m_algorithm ) );
+- EVP_DigestFinal( &m_context, (unsigned char*)a.data(), 0 );
++ EVP_DigestFinal( m_context, (unsigned char*)a.data(), 0 );
+
+ // calculate T_2 up to T_c
+ for ( unsigned int i = 2; i <= iterationCount; ++i ) {
+- EVP_DigestInit( &m_context, m_algorithm );
+- EVP_DigestUpdate( &m_context, (unsigned char*)a.data(), a.size() );
+- EVP_DigestFinal( &m_context, (unsigned char*)a.data(), 0 );
++ EVP_DigestInit( m_context, m_algorithm );
++ EVP_DigestUpdate( m_context, (unsigned char*)a.data(), a.size() );
++ EVP_DigestFinal( m_context, (unsigned char*)a.data(), 0 );
+ }
+
+ // shrink a to become DK, of the required length
+@@ -1137,19 +1181,19 @@ public:
+ DK = Tc<0..dkLen-1>
+ */
+ // calculate T_1
+- EVP_DigestUpdate( &m_context, (unsigned char*)secret.data(), secret.size() );
+- EVP_DigestUpdate( &m_context, (unsigned char*)salt.data(), salt.size() );
++ EVP_DigestUpdate( m_context, (unsigned char*)secret.data(), secret.size() );
++ EVP_DigestUpdate( m_context, (unsigned char*)salt.data(), salt.size() );
+ SecureArray a( EVP_MD_size( m_algorithm ) );
+- EVP_DigestFinal( &m_context, (unsigned char*)a.data(), 0 );
++ EVP_DigestFinal( m_context, (unsigned char*)a.data(), 0 );
+
+ // calculate T_2 up to T_c
+ *iterationCount = 2 - 1; // <- Have to remove 1, unless it computes one
+ timer.start(); // ^ time more than the base function
+ // ^ with the same iterationCount
+ while (timer.elapsed() < msecInterval) {
+- EVP_DigestInit( &m_context, m_algorithm );
+- EVP_DigestUpdate( &m_context, (unsigned char*)a.data(), a.size() );
+- EVP_DigestFinal( &m_context, (unsigned char*)a.data(), 0 );
++ EVP_DigestInit( m_context, m_algorithm );
++ EVP_DigestUpdate( m_context, (unsigned char*)a.data(), a.size() );
++ EVP_DigestFinal( m_context, (unsigned char*)a.data(), 0 );
+ ++(*iterationCount);
+ }
+
+@@ -1164,7 +1208,7 @@ public:
+
+ protected:
+ const EVP_MD *m_algorithm;
+- EVP_MD_CTX m_context;
++ EVP_MD_CTX *m_context;
+ };
+
+ class opensslPbkdf2Context : public KDFContext
+@@ -1232,12 +1276,28 @@ public:
+ opensslHMACContext(const EVP_MD *algorithm, Provider *p, const QString &type) : MACContext(p, type)
+ {
+ m_algorithm = algorithm;
+- HMAC_CTX_init( &m_context );
++ m_context = HMAC_CTX_new();
++#ifndef OSSL_110
++ HMAC_CTX_init( m_context );
++#endif
++ }
++
++ opensslHMACContext(const opensslHMACContext &other)
++ : MACContext(other)
++ {
++ m_algorithm = other.m_algorithm;
++ m_context = HMAC_CTX_new();
++ HMAC_CTX_copy(m_context, other.m_context);
++ }
++
++ ~opensslHMACContext()
++ {
++ HMAC_CTX_free(m_context);
+ }
+
+ void setup(const SymmetricKey &key)
+ {
+- HMAC_Init_ex( &m_context, key.data(), key.size(), m_algorithm, 0 );
++ HMAC_Init_ex( m_context, key.data(), key.size(), m_algorithm, 0 );
+ }
+
+ KeyLength keyLength() const
+@@ -1247,14 +1307,18 @@ public:
+
+ void update(const MemoryRegion &a)
+ {
+- HMAC_Update( &m_context, (unsigned char *)a.data(), a.size() );
++ HMAC_Update( m_context, (unsigned char *)a.data(), a.size() );
+ }
+
+ void final(MemoryRegion *out)
+ {
+ SecureArray sa( EVP_MD_size( m_algorithm ), 0 );
+- HMAC_Final(&m_context, (unsigned char *)sa.data(), 0 );
+- HMAC_CTX_cleanup(&m_context);
++ HMAC_Final(m_context, (unsigned char *)sa.data(), 0 );
++#ifdef OSSL_110
++ HMAC_CTX_reset(m_context);
++#else
++ HMAC_CTX_cleanup(m_context);
++#endif
+ *out = sa;
+ }
+
+@@ -1264,7 +1328,7 @@ public:
+ }
+
+ protected:
+- HMAC_CTX m_context;
++ HMAC_CTX *m_context;
+ const EVP_MD *m_algorithm;
+ };
+
+@@ -1278,7 +1342,7 @@ class EVPKey
+ public:
+ enum State { Idle, SignActive, SignError, VerifyActive, VerifyError };
+ EVP_PKEY *pkey;
+- EVP_MD_CTX mdctx;
++ EVP_MD_CTX *mdctx;
+ State state;
+ bool raw_type;
+ SecureArray raw;
+@@ -1288,19 +1352,23 @@ public:
+ pkey = 0;
+ raw_type = false;
+ state = Idle;
++ mdctx = EVP_MD_CTX_new();
+ }
+
+ EVPKey(const EVPKey &from)
+ {
+ pkey = from.pkey;
+- CRYPTO_add(&pkey->references, 1, CRYPTO_LOCK_EVP_PKEY);
++ EVP_PKEY_up_ref(pkey);
+ raw_type = false;
+ state = Idle;
++ mdctx = EVP_MD_CTX_new();
++ EVP_MD_CTX_copy(mdctx, from.mdctx);
+ }
+
+ ~EVPKey()
+ {
+ reset();
++ EVP_MD_CTX_free(mdctx);
+ }
+
+ void reset()
+@@ -1323,8 +1391,8 @@ public:
+ else
+ {
+ raw_type = false;
+- EVP_MD_CTX_init(&mdctx);
+- if(!EVP_SignInit_ex(&mdctx, type, NULL))
++ EVP_MD_CTX_init(mdctx);
++ if(!EVP_SignInit_ex(mdctx, type, NULL))
+ state = SignError;
+ }
+ }
+@@ -1340,8 +1408,8 @@ public:
+ else
+ {
+ raw_type = false;
+- EVP_MD_CTX_init(&mdctx);
+- if(!EVP_VerifyInit_ex(&mdctx, type, NULL))
++ EVP_MD_CTX_init(mdctx);
++ if(!EVP_VerifyInit_ex(mdctx, type, NULL))
+ state = VerifyError;
+ }
+ }
+@@ -1353,7 +1421,7 @@ public:
+ if (raw_type)
+ raw += in;
+ else
+- if(!EVP_SignUpdate(&mdctx, in.data(), (unsigned int)in.size()))
++ if(!EVP_SignUpdate(mdctx, in.data(), (unsigned int)in.size()))
+ state = SignError;
+ }
+ else if(state == VerifyActive)
+@@ -1361,7 +1429,7 @@ public:
+ if (raw_type)
+ raw += in;
+ else
+- if(!EVP_VerifyUpdate(&mdctx, in.data(), (unsigned int)in.size()))
++ if(!EVP_VerifyUpdate(mdctx, in.data(), (unsigned int)in.size()))
+ state = VerifyError;
+ }
+ }
+@@ -1374,17 +1442,20 @@ public:
+ unsigned int len = out.size();
+ if (raw_type)
+ {
+- if (pkey->type == EVP_PKEY_RSA)
++ int type = EVP_PKEY_id(pkey);
++
++ if (type == EVP_PKEY_RSA)
+ {
++ RSA *rsa = EVP_PKEY_get0_RSA(pkey);
+ if(RSA_private_encrypt (raw.size(), (unsigned char *)raw.data(),
+- (unsigned char *)out.data(), pkey->pkey.rsa,
++ (unsigned char *)out.data(), rsa,
+ RSA_PKCS1_PADDING) == -1) {
+
+ state = SignError;
+ return SecureArray ();
+ }
+ }
+- else if (pkey->type == EVP_PKEY_DSA)
++ else if (type == EVP_PKEY_DSA)
+ {
+ state = SignError;
+ return SecureArray ();
+@@ -1396,7 +1467,7 @@ public:
+ }
+ }
+ else {
+- if(!EVP_SignFinal(&mdctx, (unsigned char *)out.data(), &len, pkey))
++ if(!EVP_SignFinal(mdctx, (unsigned char *)out.data(), &len, pkey))
+ {
+ state = SignError;
+ return SecureArray();
+@@ -1419,16 +1490,19 @@ public:
+ SecureArray out(EVP_PKEY_size(pkey));
+ int len = 0;
+
+- if (pkey->type == EVP_PKEY_RSA) {
++ int type = EVP_PKEY_id(pkey);
++
++ if (type == EVP_PKEY_RSA) {
++ RSA *rsa = EVP_PKEY_get0_RSA(pkey);
+ if((len = RSA_public_decrypt (sig.size(), (unsigned char *)sig.data(),
+- (unsigned char *)out.data (), pkey->pkey.rsa,
++ (unsigned char *)out.data (), rsa,
+ RSA_PKCS1_PADDING)) == -1) {
+
+ state = VerifyError;
+ return false;
+ }
+ }
+- else if (pkey->type == EVP_PKEY_DSA)
++ else if (type == EVP_PKEY_DSA)
+ {
+ state = VerifyError;
+ return false;
+@@ -1448,7 +1522,7 @@ public:
+ }
+ else
+ {
+- if(EVP_VerifyFinal(&mdctx, (unsigned char *)sig.data(), (unsigned int)sig.size(), pkey) != 1)
++ if(EVP_VerifyFinal(mdctx, (unsigned char *)sig.data(), (unsigned int)sig.size(), pkey) != 1)
+ {
+ state = VerifyError;
+ return false;
+@@ -1562,9 +1636,11 @@ static bool make_dlgroup(const QByteArray &seed, int bits, int counter, DLParams
+ return false;
+ if(ret_counter != counter)
+ return false;
+- params->p = bn2bi(dsa->p);
+- params->q = bn2bi(dsa->q);
+- params->g = bn2bi(dsa->g);
++ const BIGNUM *bnp, *bnq, *bng;
++ DSA_get0_pqg(dsa, &bnp, &bnq, &bng);
++ params->p = bn2bi(bnp);
++ params->q = bn2bi(bnq);
++ params->g = bn2bi(bng);
+ DSA_free(dsa);
+ return true;
+ }
+@@ -1827,10 +1903,11 @@ public:
+ return;
+
+ // extract the public key into DER format
+- int len = i2d_RSAPublicKey(evp.pkey->pkey.rsa, NULL);
++ RSA *rsa_pkey = EVP_PKEY_get0_RSA(evp.pkey);
++ int len = i2d_RSAPublicKey(rsa_pkey, NULL);
+ SecureArray result(len);
+ unsigned char *p = (unsigned char *)result.data();
+- i2d_RSAPublicKey(evp.pkey->pkey.rsa, &p);
++ i2d_RSAPublicKey(rsa_pkey, &p);
+ p = (unsigned char *)result.data();
+
+ // put the DER public key back into openssl
+@@ -1853,7 +1930,7 @@ public:
+
+ virtual int maximumEncryptSize(EncryptionAlgorithm alg) const
+ {
+- RSA *rsa = evp.pkey->pkey.rsa;
++ RSA *rsa = EVP_PKEY_get0_RSA(evp.pkey);
+ int size = 0;
+ switch(alg)
+ {
+@@ -1868,7 +1945,7 @@ public:
+
+ virtual SecureArray encrypt(const SecureArray &in, EncryptionAlgorithm alg)
+ {
+- RSA *rsa = evp.pkey->pkey.rsa;
++ RSA *rsa = EVP_PKEY_get0_RSA(evp.pkey);
+ SecureArray buf = in;
+ int max = maximumEncryptSize(alg);
+
+@@ -1901,7 +1978,7 @@ public:
+
+ virtual bool decrypt(const SecureArray &in, SecureArray *out, EncryptionAlgorithm alg)
+ {
+- RSA *rsa = evp.pkey->pkey.rsa;
++ RSA *rsa = EVP_PKEY_get0_RSA(evp.pkey);
+ SecureArray result(RSA_size(rsa));
+ int pad;
+
+@@ -2022,14 +2099,10 @@ public:
+ evp.reset();
+
+ RSA *rsa = RSA_new();
+- rsa->n = bi2bn(n);
+- rsa->e = bi2bn(e);
+- rsa->p = bi2bn(p);
+- rsa->q = bi2bn(q);
+- rsa->d = bi2bn(d);
+-
+- if(!rsa->n || !rsa->e || !rsa->p || !rsa->q || !rsa->d)
++ if(RSA_set0_key(rsa, bi2bn(n), bi2bn(e), bi2bn(d)) == 0
++ || RSA_set0_factors(rsa, bi2bn(p), bi2bn(q)) == 0)
+ {
++ // Free BIGNUMS?
+ RSA_free(rsa);
+ return;
+ }
+@@ -2037,7 +2110,7 @@ public:
+ // When private key has no Public Exponent (e) or Private Exponent (d)
+ // need to disable blinding. Otherwise decryption will be broken.
+ // http://www.mail-archive.com/openssl-users@openssl.org/msg63530.html
+- if(BN_is_zero(rsa->e) || BN_is_zero(rsa->d))
++ if(e == BigInteger(0) || d == BigInteger(0))
+ RSA_blinding_off(rsa);
+
+ evp.pkey = EVP_PKEY_new();
+@@ -2050,10 +2123,7 @@ public:
+ evp.reset();
+
+ RSA *rsa = RSA_new();
+- rsa->n = bi2bn(n);
+- rsa->e = bi2bn(e);
+-
+- if(!rsa->n || !rsa->e)
++ if(RSA_set0_key(rsa, bi2bn(n), bi2bn(e), NULL) == 0)
+ {
+ RSA_free(rsa);
+ return;
+@@ -2066,27 +2136,42 @@ public:
+
+ virtual BigInteger n() const
+ {
+- return bn2bi(evp.pkey->pkey.rsa->n);
++ RSA *rsa = EVP_PKEY_get0_RSA(evp.pkey);
++ const BIGNUM *bnn;
++ RSA_get0_key(rsa, &bnn, NULL, NULL);
++ return bn2bi(bnn);
+ }
+
+ virtual BigInteger e() const
+ {
+- return bn2bi(evp.pkey->pkey.rsa->e);
++ RSA *rsa = EVP_PKEY_get0_RSA(evp.pkey);
++ const BIGNUM *bne;
++ RSA_get0_key(rsa, NULL, &bne, NULL);
++ return bn2bi(bne);
+ }
+
+ virtual BigInteger p() const
+ {
+- return bn2bi(evp.pkey->pkey.rsa->p);
++ RSA *rsa = EVP_PKEY_get0_RSA(evp.pkey);
++ const BIGNUM *bnp;
++ RSA_get0_factors(rsa, &bnp, NULL);
++ return bn2bi(bnp);
+ }
+
+ virtual BigInteger q() const
+ {
+- return bn2bi(evp.pkey->pkey.rsa->q);
++ RSA *rsa = EVP_PKEY_get0_RSA(evp.pkey);
++ const BIGNUM *bnq;
++ RSA_get0_factors(rsa, NULL, &bnq);
++ return bn2bi(bnq);
+ }
+
+ virtual BigInteger d() const
+ {
+- return bn2bi(evp.pkey->pkey.rsa->d);
++ RSA *rsa = EVP_PKEY_get0_RSA(evp.pkey);
++ const BIGNUM *bnd;
++ RSA_get0_key(rsa, NULL, NULL, &bnd);
++ return bn2bi(bnd);
+ }
+
+ private slots:
+@@ -2135,10 +2220,12 @@ public:
+ virtual void run()
+ {
+ DSA *dsa = DSA_new();
+- dsa->p = bi2bn(domain.p());
+- dsa->q = bi2bn(domain.q());
+- dsa->g = bi2bn(domain.g());
+- if(!DSA_generate_key(dsa))
++ BIGNUM *pne = bi2bn(domain.p()),
++ *qne = bi2bn(domain.q()),
++ *gne = bi2bn(domain.g());
++
++ if(!DSA_set0_pqg(dsa, pne, qne, gne)
++ || !DSA_generate_key(dsa))
+ {
+ DSA_free(dsa);
+ return;
+@@ -2213,10 +2300,11 @@ public:
+ return;
+
+ // extract the public key into DER format
+- int len = i2d_DSAPublicKey(evp.pkey->pkey.dsa, NULL);
++ DSA *dsa_pkey = EVP_PKEY_get0_DSA(evp.pkey);
++ int len = i2d_DSAPublicKey(dsa_pkey, NULL);
+ SecureArray result(len);
+ unsigned char *p = (unsigned char *)result.data();
+- i2d_DSAPublicKey(evp.pkey->pkey.dsa, &p);
++ i2d_DSAPublicKey(dsa_pkey, &p);
+ p = (unsigned char *)result.data();
+
+ // put the DER public key back into openssl
+@@ -2245,7 +2333,7 @@ public:
+ else
+ transformsig = false;
+
+- evp.startSign(EVP_dss1());
++ evp.startSign(EVP_sha1());
+ }
+
+ virtual void startVerify(SignatureAlgorithm, SignatureFormat format)
+@@ -2256,7 +2344,7 @@ public:
+ else
+ transformsig = false;
+
+- evp.startVerify(EVP_dss1());
++ evp.startVerify(EVP_sha1());
+ }
+
+ virtual void update(const MemoryRegion &in)
+@@ -2306,13 +2394,14 @@ public:
+ evp.reset();
+
+ DSA *dsa = DSA_new();
+- dsa->p = bi2bn(domain.p());
+- dsa->q = bi2bn(domain.q());
+- dsa->g = bi2bn(domain.g());
+- dsa->pub_key = bi2bn(y);
+- dsa->priv_key = bi2bn(x);
++ BIGNUM *bnp = bi2bn(domain.p());
++ BIGNUM *bnq = bi2bn(domain.q());
++ BIGNUM *bng = bi2bn(domain.g());
++ BIGNUM *bnpub_key = bi2bn(y);
++ BIGNUM *bnpriv_key = bi2bn(x);
+
+- if(!dsa->p || !dsa->q || !dsa->g || !dsa->pub_key || !dsa->priv_key)
++ if(!DSA_set0_pqg(dsa, bnp, bnq, bng)
++ || !DSA_set0_key(dsa, bnpub_key, bnpriv_key))
+ {
+ DSA_free(dsa);
+ return;
+@@ -2328,12 +2417,13 @@ public:
+ evp.reset();
+
+ DSA *dsa = DSA_new();
+- dsa->p = bi2bn(domain.p());
+- dsa->q = bi2bn(domain.q());
+- dsa->g = bi2bn(domain.g());
+- dsa->pub_key = bi2bn(y);
++ BIGNUM *bnp = bi2bn(domain.p());
++ BIGNUM *bnq = bi2bn(domain.q());
++ BIGNUM *bng = bi2bn(domain.g());
++ BIGNUM *bnpub_key = bi2bn(y);
+
+- if(!dsa->p || !dsa->q || !dsa->g || !dsa->pub_key)
++ if(!DSA_set0_pqg(dsa, bnp, bnq, bng)
++ || !DSA_set0_key(dsa, bnpub_key, NULL))
+ {
+ DSA_free(dsa);
+ return;
+@@ -2346,17 +2436,26 @@ public:
+
+ virtual DLGroup domain() const
+ {
+- return DLGroup(bn2bi(evp.pkey->pkey.dsa->p), bn2bi(evp.pkey->pkey.dsa->q), bn2bi(evp.pkey->pkey.dsa->g));
++ DSA *dsa = EVP_PKEY_get0_DSA(evp.pkey);
++ const BIGNUM *bnp, *bnq, *bng;
++ DSA_get0_pqg(dsa, &bnp, &bnq, &bng);
++ return DLGroup(bn2bi(bnp), bn2bi(bnq), bn2bi(bng));
+ }
+
+ virtual BigInteger y() const
+ {
+- return bn2bi(evp.pkey->pkey.dsa->pub_key);
++ DSA *dsa = EVP_PKEY_get0_DSA(evp.pkey);
++ const BIGNUM *bnpub_key;
++ DSA_get0_key(dsa, &bnpub_key, NULL);
++ return bn2bi(bnpub_key);
+ }
+
+ virtual BigInteger x() const
+ {
+- return bn2bi(evp.pkey->pkey.dsa->priv_key);
++ DSA *dsa = EVP_PKEY_get0_DSA(evp.pkey);
++ const BIGNUM *bnpriv_key;
++ DSA_get0_key(dsa, NULL, &bnpriv_key);
++ return bn2bi(bnpriv_key);
+ }
+
+ private slots:
+@@ -2405,9 +2504,10 @@ public:
+ virtual void run()
+ {
+ DH *dh = DH_new();
+- dh->p = bi2bn(domain.p());
+- dh->g = bi2bn(domain.g());
+- if(!DH_generate_key(dh))
++ BIGNUM *bnp = bi2bn(domain.p());
++ BIGNUM *bng = bi2bn(domain.g());
++ if(!DH_set0_pqg(dh, bnp, NULL, bng)
++ || !DH_generate_key(dh))
+ {
+ DH_free(dh);
+ return;
+@@ -2479,11 +2579,14 @@ public:
+ if(!sec)
+ return;
+
+- DH *orig = evp.pkey->pkey.dh;
++ DH *orig = EVP_PKEY_get0_DH(evp.pkey);
+ DH *dh = DH_new();
+- dh->p = BN_dup(orig->p);
+- dh->g = BN_dup(orig->g);
+- dh->pub_key = BN_dup(orig->pub_key);
++ const BIGNUM *bnp, *bng, *bnpub_key;
++ DH_get0_pqg(orig, &bnp, NULL, &bng);
++ DH_get0_key(orig, &bnpub_key, NULL);
++
++ DH_set0_key(dh, BN_dup(bnpub_key), NULL);
++ DH_set0_pqg(dh, BN_dup(bnp), NULL, BN_dup(bng));
+
+ evp.reset();
+
+@@ -2499,10 +2602,13 @@ public:
+
+ virtual SymmetricKey deriveKey(const PKeyBase &theirs)
+ {
+- DH *dh = evp.pkey->pkey.dh;
+- DH *them = static_cast<const DHKey *>(&theirs)->evp.pkey->pkey.dh;
++ DH *dh = EVP_PKEY_get0_DH(evp.pkey);
++ DH *them = EVP_PKEY_get0_DH(static_cast<const DHKey *>(&theirs)->evp.pkey);
++ const BIGNUM *bnpub_key;
++ DH_get0_key(them, &bnpub_key, NULL);
++
+ SecureArray result(DH_size(dh));
+- int ret = DH_compute_key((unsigned char *)result.data(), them->pub_key, dh);
++ int ret = DH_compute_key((unsigned char *)result.data(), bnpub_key, dh);
+ if(ret <= 0)
+ return SymmetricKey();
+ result.resize(ret);
+@@ -2532,12 +2638,13 @@ public:
+ evp.reset();
+
+ DH *dh = DH_new();
+- dh->p = bi2bn(domain.p());
+- dh->g = bi2bn(domain.g());
+- dh->pub_key = bi2bn(y);
+- dh->priv_key = bi2bn(x);
++ BIGNUM *bnp = bi2bn(domain.p());
++ BIGNUM *bng = bi2bn(domain.g());
++ BIGNUM *bnpub_key = bi2bn(y);
++ BIGNUM *bnpriv_key = bi2bn(x);
+
+- if(!dh->p || !dh->g || !dh->pub_key || !dh->priv_key)
++ if(!DH_set0_key(dh, bnpub_key, bnpriv_key)
++ || !DH_set0_pqg(dh, bnp, NULL, bng))
+ {
+ DH_free(dh);
+ return;
+@@ -2553,11 +2660,12 @@ public:
+ evp.reset();
+
+ DH *dh = DH_new();
+- dh->p = bi2bn(domain.p());
+- dh->g = bi2bn(domain.g());
+- dh->pub_key = bi2bn(y);
++ BIGNUM *bnp = bi2bn(domain.p());
++ BIGNUM *bng = bi2bn(domain.g());
++ BIGNUM *bnpub_key = bi2bn(y);
+
+- if(!dh->p || !dh->g || !dh->pub_key)
++ if(!DH_set0_key(dh, bnpub_key, NULL)
++ || !DH_set0_pqg(dh, bnp, NULL, bng))
+ {
+ DH_free(dh);
+ return;
+@@ -2570,17 +2678,26 @@ public:
+
+ virtual DLGroup domain() const
+ {
+- return DLGroup(bn2bi(evp.pkey->pkey.dh->p), bn2bi(evp.pkey->pkey.dh->g));
++ DH *dh = EVP_PKEY_get0_DH(evp.pkey);
++ const BIGNUM *bnp, *bng;
++ DH_get0_pqg(dh, &bnp, NULL, &bng);
++ return DLGroup(bn2bi(bnp), bn2bi(bng));
+ }
+
+ virtual BigInteger y() const
+ {
+- return bn2bi(evp.pkey->pkey.dh->pub_key);
++ DH *dh = EVP_PKEY_get0_DH(evp.pkey);
++ const BIGNUM *bnpub_key;
++ DH_get0_key(dh, &bnpub_key, NULL);
++ return bn2bi(bnpub_key);
+ }
+
+ virtual BigInteger x() const
+ {
+- return bn2bi(evp.pkey->pkey.dh->priv_key);
++ DH *dh = EVP_PKEY_get0_DH(evp.pkey);
++ const BIGNUM *bnpriv_key;
++ DH_get0_key(dh, NULL, &bnpriv_key);
++ return bn2bi(bnpriv_key);
+ }
+
+ private slots:
+@@ -2619,10 +2736,14 @@ public:
+ {
+ key = _key;
+ RSA_set_method(rsa, rsa_method());
++#ifndef OSSL_110
+ rsa->flags |= RSA_FLAG_SIGN_VER;
++#endif
+ RSA_set_app_data(rsa, this);
+- rsa->n = bi2bn(_key.n());
+- rsa->e = bi2bn(_key.e());
++ BIGNUM *bnn = bi2bn(_key.n());
++ BIGNUM *bne = bi2bn(_key.e());
++
++ RSA_set0_key(rsa, bnn, bne, NULL);
+ }
+
+ RSA_METHOD *rsa_method()
+@@ -2631,12 +2752,16 @@ public:
+
+ if(!ops)
+ {
+- ops = new RSA_METHOD(*RSA_get_default_method());
+- ops->rsa_priv_enc = 0;//pkcs11_rsa_encrypt;
+- ops->rsa_priv_dec = rsa_priv_dec;
+- ops->rsa_sign = rsa_sign;
+- ops->rsa_verify = 0;//pkcs11_rsa_verify;
+- ops->finish = rsa_finish;
++ ops = RSA_meth_dup(RSA_get_default_method());
++ RSA_meth_set_priv_enc(ops, NULL); //pkcs11_rsa_encrypt
++ RSA_meth_set_priv_dec(ops, rsa_priv_dec); //pkcs11_rsa_encrypt
++#ifdef OSSL_110
++ RSA_meth_set_sign(ops, NULL);
++#else
++ RSA_meth_set_sign(ops, rsa_sign);
++#endif
++ RSA_meth_set_verify(ops, NULL); //pkcs11_rsa_verify
++ RSA_meth_set_finish(ops, rsa_finish);
+ }
+ return ops;
+ }
+@@ -2676,6 +2801,7 @@ public:
+ return -1;
+ }
+
++#ifndef OSSL_110
+ static int rsa_sign(int type, const unsigned char *m, unsigned int m_len, unsigned char *sigret, unsigned int *siglen, const RSA *rsa)
+ {
+ QCA_RSA_METHOD *self = (QCA_RSA_METHOD *)RSA_get_app_data(rsa);
+@@ -2692,7 +2818,6 @@ public:
+ }
+ else
+ {
+-
+ // make X509 packet
+ X509_SIG sig;
+ ASN1_TYPE parameter;
+@@ -2766,6 +2891,7 @@ public:
+
+ return 1;
+ }
++#endif
+
+ static int rsa_finish(RSA *rsa)
+ {
+@@ -2867,21 +2993,22 @@ public:
+ PKeyBase *pkeyToBase(EVP_PKEY *pkey, bool sec) const
+ {
+ PKeyBase *nk = 0;
+- if(pkey->type == EVP_PKEY_RSA)
++ int pkey_type = EVP_PKEY_type(EVP_PKEY_id(pkey));
++ if(pkey_type == EVP_PKEY_RSA)
+ {
+ RSAKey *c = new RSAKey(provider());
+ c->evp.pkey = pkey;
+ c->sec = sec;
+ nk = c;
+ }
+- else if(pkey->type == EVP_PKEY_DSA)
++ else if(pkey_type == EVP_PKEY_DSA)
+ {
+ DSAKey *c = new DSAKey(provider());
+ c->evp.pkey = pkey;
+ c->sec = sec;
+ nk = c;
+ }
+- else if(pkey->type == EVP_PKEY_DH)
++ else if(pkey_type == EVP_PKEY_DH)
+ {
+ DHKey *c = new DHKey(provider());
+ c->evp.pkey = pkey;
+@@ -2899,8 +3026,10 @@ public:
+ {
+ EVP_PKEY *pkey = get_pkey();
+
++ int pkey_type = EVP_PKEY_type(EVP_PKEY_id(pkey));
++
+ // OpenSSL does not have DH import/export support
+- if(pkey->type == EVP_PKEY_DH)
++ if(pkey_type == EVP_PKEY_DH)
+ return QByteArray();
+
+ BIO *bo = BIO_new(BIO_s_mem());
+@@ -2913,8 +3042,10 @@ public:
+ {
+ EVP_PKEY *pkey = get_pkey();
+
++ int pkey_type = EVP_PKEY_type(EVP_PKEY_id(pkey));
++
+ // OpenSSL does not have DH import/export support
+- if(pkey->type == EVP_PKEY_DH)
++ if(pkey_type == EVP_PKEY_DH)
+ return QString();
+
+ BIO *bo = BIO_new(BIO_s_mem());
+@@ -2979,9 +3110,10 @@ public:
+ return SecureArray();
+
+ EVP_PKEY *pkey = get_pkey();
++ int pkey_type = EVP_PKEY_type(EVP_PKEY_id(pkey));
+
+ // OpenSSL does not have DH import/export support
+- if(pkey->type == EVP_PKEY_DH)
++ if(pkey_type == EVP_PKEY_DH)
+ return SecureArray();
+
+ BIO *bo = BIO_new(BIO_s_mem());
+@@ -3008,9 +3140,10 @@ public:
+ return QString();
+
+ EVP_PKEY *pkey = get_pkey();
++ int pkey_type = EVP_PKEY_type(EVP_PKEY_id(pkey));
+
+ // OpenSSL does not have DH import/export support
+- if(pkey->type == EVP_PKEY_DH)
++ if(pkey_type == EVP_PKEY_DH)
+ return QString();
+
+ BIO *bo = BIO_new(BIO_s_mem());
+@@ -3111,11 +3244,18 @@ public:
+ crl = from.crl;
+
+ if(cert)
+- CRYPTO_add(&cert->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(cert);
+ if(req)
++ {
++#ifdef OSSL_110
++ // Not exposed, so copy
++ req = X509_REQ_dup(req);
++#else
+ CRYPTO_add(&req->references, 1, CRYPTO_LOCK_X509_REQ);
++#endif
++ }
+ if(crl)
+- CRYPTO_add(&crl->references, 1, CRYPTO_LOCK_X509_CRL);
++ X509_CRL_up_ref(crl);
+ }
+
+ return *this;
+@@ -3221,7 +3361,7 @@ public:
+ //
+ // This code is mostly taken from OpenSSL v0.9.5a
+ // by Eric Young
+-QDateTime ASN1_UTCTIME_QDateTime(ASN1_UTCTIME *tm, int *isGmt)
++QDateTime ASN1_UTCTIME_QDateTime(const ASN1_UTCTIME *tm, int *isGmt)
+ {
+ QDateTime qdt;
+ char *v;
+@@ -3319,7 +3459,7 @@ public:
+
+ void fromX509(X509 *x)
+ {
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ item.cert = x;
+ make_props();
+ }
+@@ -3350,7 +3490,7 @@ public:
+ if(priv.key()->type() == PKey::RSA)
+ md = EVP_sha1();
+ else if(priv.key()->type() == PKey::DSA)
+- md = EVP_dss1();
++ md = EVP_sha1();
+ else
+ return false;
+
+@@ -3481,7 +3621,7 @@ public:
+
+ const MyCertContext *our_cc = this;
+ X509 *x = our_cc->item.cert;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ sk_X509_push(untrusted_list, x);
+
+ const MyCertContext *other_cc = static_cast<const MyCertContext *>(other);
+@@ -3596,14 +3736,21 @@ public:
+ p.policies = get_cert_policies(ex);
+ }
+
+- if (x->signature)
++#ifdef OSSL_110
++ const
++#endif
++ ASN1_BIT_STRING *signature;
++
++ X509_get0_signature(&signature, NULL, x);
++ if(signature)
+ {
+- p.sig = QByteArray(x->signature->length, 0);
+- for (int i=0; i< x->signature->length; i++)
+- p.sig[i] = x->signature->data[i];
++ p.sig = QByteArray(signature->length, 0);
++ for (int i=0; i< signature->length; i++)
++ p.sig[i] = signature->data[i];
+ }
+
+- switch( OBJ_obj2nid(x->cert_info->signature->algorithm) )
++
++ switch( X509_get_signature_nid(x) )
+ {
+ case NID_sha1WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_SHA1;
+@@ -3635,7 +3782,7 @@ public:
+ p.sigalgo = QCA::EMSA3_SHA512;
+ break;
+ default:
+- qDebug() << "Unknown signature value: " << OBJ_obj2nid(x->cert_info->signature->algorithm);
++ qDebug() << "Unknown signature value: " << X509_get_signature_nid(x);
+ p.sigalgo = QCA::SignatureUnknown;
+ }
+
+@@ -3752,7 +3899,7 @@ public:
+ if(privateKey -> key()->type() == PKey::RSA)
+ md = EVP_sha1();
+ else if(privateKey -> key()->type() == PKey::DSA)
+- md = EVP_dss1();
++ md = EVP_sha1();
+ else
+ return 0;
+
+@@ -3935,7 +4082,7 @@ public:
+ if(priv.key()->type() == PKey::RSA)
+ md = EVP_sha1();
+ else if(priv.key()->type() == PKey::DSA)
+- md = EVP_dss1();
++ md = EVP_sha1();
+ else
+ return false;
+
+@@ -4096,14 +4243,17 @@ public:
+
+ sk_X509_EXTENSION_pop_free(exts, X509_EXTENSION_free);
+
+- if (x->signature)
++ const ASN1_BIT_STRING *signature;
++
++ X509_REQ_get0_signature(x, &signature, NULL);
++ if(signature)
+ {
+- p.sig = QByteArray(x->signature->length, 0);
+- for (int i=0; i< x->signature->length; i++)
+- p.sig[i] = x->signature->data[i];
++ p.sig = QByteArray(signature->length, 0);
++ for (int i=0; i< signature->length; i++)
++ p.sig[i] = signature->data[i];
+ }
+
+- switch( OBJ_obj2nid(x->sig_alg->algorithm) )
++ switch( X509_REQ_get_signature_nid(x) )
+ {
+ case NID_sha1WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_SHA1;
+@@ -4123,7 +4273,7 @@ public:
+ p.sigalgo = QCA::EMSA1_SHA1;
+ break;
+ default:
+- qDebug() << "Unknown signature value: " << OBJ_obj2nid(x->sig_alg->algorithm);
++ qDebug() << "Unknown signature value: " << X509_REQ_get_signature_nid(x);
+ p.sigalgo = QCA::SignatureUnknown;
+ }
+
+@@ -4187,7 +4337,7 @@ public:
+
+ void fromX509(X509_CRL *x)
+ {
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509_CRL);
++ X509_CRL_up_ref(x);
+ item.crl = x;
+ make_props();
+ }
+@@ -4232,15 +4382,15 @@ public:
+
+ issuer = get_cert_name(X509_CRL_get_issuer(x));
+
+- p.thisUpdate = ASN1_UTCTIME_QDateTime(X509_CRL_get_lastUpdate(x), NULL);
+- p.nextUpdate = ASN1_UTCTIME_QDateTime(X509_CRL_get_nextUpdate(x), NULL);
++ p.thisUpdate = ASN1_UTCTIME_QDateTime(X509_CRL_get0_lastUpdate(x), NULL);
++ p.nextUpdate = ASN1_UTCTIME_QDateTime(X509_CRL_get0_nextUpdate(x), NULL);
+
+ STACK_OF(X509_REVOKED)* revokeStack = X509_CRL_get_REVOKED(x);
+
+ for (int i = 0; i < sk_X509_REVOKED_num(revokeStack); ++i) {
+ X509_REVOKED *rev = sk_X509_REVOKED_value(revokeStack, i);
+- BigInteger serial = bn2bi(ASN1_INTEGER_to_BN(rev->serialNumber, NULL));
+- QDateTime time = ASN1_UTCTIME_QDateTime( rev->revocationDate, NULL);
++ BigInteger serial = bn2bi(ASN1_INTEGER_to_BN(X509_REVOKED_get0_serialNumber(rev), NULL));
++ QDateTime time = ASN1_UTCTIME_QDateTime( X509_REVOKED_get0_revocationDate(rev), NULL);
+ QCA::CRLEntry::Reason reason = QCA::CRLEntry::Unspecified;
+ int pos = X509_REVOKED_get_ext_by_NID(rev, NID_crl_reason, -1);
+ if (pos != -1) {
+@@ -4289,13 +4439,18 @@ public:
+ p.revoked.append(thisEntry);
+ }
+
+- if (x->signature)
++ const ASN1_BIT_STRING *signature;
++
++ X509_CRL_get0_signature(x, &signature, NULL);
++ if(signature)
+ {
+- p.sig = QByteArray(x->signature->length, 0);
+- for (int i=0; i< x->signature->length; i++)
+- p.sig[i] = x->signature->data[i];
++ p.sig = QByteArray(signature->length, 0);
++ for (int i=0; i< signature->length; i++)
++ p.sig[i] = signature->data[i];
+ }
+- switch( OBJ_obj2nid(x->sig_alg->algorithm) )
++
++
++ switch( X509_CRL_get_signature_nid(x) )
+ {
+ case NID_sha1WithRSAEncryption:
+ p.sigalgo = QCA::EMSA3_SHA1;
+@@ -4327,7 +4482,7 @@ public:
+ p.sigalgo = QCA::EMSA3_SHA512;
+ break;
+ default:
+- qWarning() << "Unknown signature value: " << OBJ_obj2nid(x->sig_alg->algorithm);
++ qWarning() << "Unknown signature value: " << X509_CRL_get_signature_nid(x);
+ p.sigalgo = QCA::SignatureUnknown;
+ }
+
+@@ -4488,21 +4643,21 @@ Validity MyCertContext::validate(const QList<CertContext*> &trusted, const QList
+ {
+ const MyCertContext *cc = static_cast<const MyCertContext *>(trusted[n]);
+ X509 *x = cc->item.cert;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ sk_X509_push(trusted_list, x);
+ }
+ for(n = 0; n < untrusted.count(); ++n)
+ {
+ const MyCertContext *cc = static_cast<const MyCertContext *>(untrusted[n]);
+ X509 *x = cc->item.cert;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ sk_X509_push(untrusted_list, x);
+ }
+ for(n = 0; n < crls.count(); ++n)
+ {
+ const MyCRLContext *cc = static_cast<const MyCRLContext *>(crls[n]);
+ X509_CRL *x = cc->item.crl;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509_CRL);
++ X509_CRL_up_ref(x);
+ crl_list.append(x);
+ }
+
+@@ -4527,7 +4682,7 @@ Validity MyCertContext::validate(const QList<CertContext*> &trusted, const QList
+ int ret = X509_verify_cert(ctx);
+ int err = -1;
+ if(!ret)
+- err = ctx->error;
++ err = X509_STORE_CTX_get_error(ctx);
+
+ // cleanup
+ X509_STORE_CTX_free(ctx);
+@@ -4561,21 +4716,21 @@ Validity MyCertContext::validate_chain(const QList<CertContext*> &chain, const Q
+ {
+ const MyCertContext *cc = static_cast<const MyCertContext *>(trusted[n]);
+ X509 *x = cc->item.cert;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ sk_X509_push(trusted_list, x);
+ }
+ for(n = 1; n < chain.count(); ++n)
+ {
+ const MyCertContext *cc = static_cast<const MyCertContext *>(chain[n]);
+ X509 *x = cc->item.cert;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ sk_X509_push(untrusted_list, x);
+ }
+ for(n = 0; n < crls.count(); ++n)
+ {
+ const MyCRLContext *cc = static_cast<const MyCRLContext *>(crls[n]);
+ X509_CRL *x = cc->item.crl;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509_CRL);
++ X509_CRL_up_ref(x);
+ crl_list.append(x);
+ }
+
+@@ -4600,7 +4755,7 @@ Validity MyCertContext::validate_chain(const QList<CertContext*> &chain, const Q
+ int ret = X509_verify_cert(ctx);
+ int err = -1;
+ if(!ret)
+- err = ctx->error;
++ err = X509_STORE_CTX_get_error(ctx);
+
+ // grab the chain, which may not be fully populated
+ STACK_OF(X509) *xchain = X509_STORE_CTX_get_chain(ctx);
+@@ -4664,7 +4819,7 @@ public:
+ for(int n = 1; n < chain.count(); ++n)
+ {
+ X509 *x = static_cast<const MyCertContext *>(chain[n])->item.cert;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ sk_X509_push(ca, x);
+ }
+ }
+@@ -5399,7 +5554,7 @@ public:
+ OpenSSL_add_ssl_algorithms();
+ SSL_CTX *ctx = 0;
+ switch (version) {
+-#ifndef OPENSSL_NO_SSL2
++#if !defined(OPENSSL_NO_SSL2) && !defined(OSSL_110)
+ case TLS::SSL_v2:
+ ctx = SSL_CTX_new(SSLv2_client_method());
+ break;
+@@ -5430,8 +5585,8 @@ public:
+ STACK_OF(SSL_CIPHER) *sk = SSL_get_ciphers(ssl);
+ QStringList cipherList;
+ for(int i = 0; i < sk_SSL_CIPHER_num(sk); ++i) {
+- SSL_CIPHER *thisCipher = sk_SSL_CIPHER_value(sk, i);
+- cipherList += cipherIDtoString(version, thisCipher->id);
++ const SSL_CIPHER *thisCipher = sk_SSL_CIPHER_value(sk, i);
++ cipherList += cipherIDtoString(version, SSL_CIPHER_get_id(thisCipher));
+ }
+
+ SSL_free(ssl);
+@@ -5808,13 +5963,15 @@ public:
+ {
+ SessionInfo sessInfo;
+
+- sessInfo.isCompressed = (0 != SSL_SESSION_get_compress_id(ssl->session));
++ SSL_SESSION *session = SSL_get0_session(ssl);
++ sessInfo.isCompressed = (0 != SSL_SESSION_get_compress_id(session));
++ int ssl_version = SSL_version(ssl);
+
+- if (ssl->version == TLS1_VERSION)
++ if (ssl_version == TLS1_VERSION)
+ sessInfo.version = TLS::TLS_v1;
+- else if (ssl->version == SSL3_VERSION)
++ else if (ssl_version == SSL3_VERSION)
+ sessInfo.version = TLS::SSL_v3;
+- else if (ssl->version == SSL2_VERSION)
++ else if (ssl_version == SSL2_VERSION)
+ sessInfo.version = TLS::SSL_v2;
+ else {
+ qDebug("unexpected version response");
+@@ -5822,7 +5979,7 @@ public:
+ }
+
+ sessInfo.cipherSuite = cipherIDtoString( sessInfo.version,
+- SSL_get_current_cipher(ssl)->id);
++ SSL_CIPHER_get_id(SSL_get_current_cipher(ssl)));
+
+ sessInfo.cipherMaxBits = SSL_get_cipher_bits(ssl, &(sessInfo.cipherBits));
+
+@@ -6394,7 +6551,7 @@ public:
+ for(int n = 0; n < nonroots.count(); ++n)
+ {
+ X509 *x = static_cast<MyCertContext *>(nonroots[n].context())->item.cert;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ sk_X509_push(other_certs, x);
+ }
+
+@@ -6436,7 +6593,7 @@ public:
+
+ other_certs = sk_X509_new_null();
+ X509 *x = static_cast<MyCertContext *>(target.context())->item.cert;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ sk_X509_push(other_certs, x);
+
+ bi = BIO_new(BIO_s_mem());
+@@ -6499,7 +6656,7 @@ public:
+ for(int n = 0; n < untrusted_list.count(); ++n)
+ {
+ X509 *x = static_cast<MyCertContext *>(untrusted_list[n].context())->item.cert;
+- CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509);
++ X509_up_ref(x);
+ sk_X509_push(other_certs, x);
+ }
+
+@@ -6750,14 +6907,27 @@ public:
+ opensslCipherContext(const EVP_CIPHER *algorithm, const int pad, Provider *p, const QString &type) : CipherContext(p, type)
+ {
+ m_cryptoAlgorithm = algorithm;
+- EVP_CIPHER_CTX_init(&m_context);
++ m_context = EVP_CIPHER_CTX_new();
++ EVP_CIPHER_CTX_init(m_context);
+ m_pad = pad;
+ m_type = type;
+ }
+
++ opensslCipherContext(const opensslCipherContext &other)
++ : CipherContext(other)
++ {
++ m_cryptoAlgorithm = other.m_cryptoAlgorithm;
++ m_context = EVP_CIPHER_CTX_new();
++ EVP_CIPHER_CTX_copy(m_context, other.m_context);
++ m_direction = other.m_direction;
++ m_pad = other.m_pad;
++ m_type = other.m_type;
++ }
++
+ ~opensslCipherContext()
+ {
+- EVP_CIPHER_CTX_cleanup(&m_context);
++ EVP_CIPHER_CTX_cleanup(m_context);
++ EVP_CIPHER_CTX_free(m_context);
+ }
+
+ void setup(Direction dir,
+@@ -6772,20 +6943,20 @@ public:
+ m_cryptoAlgorithm = EVP_des_ede();
+ }
+ if (Encode == m_direction) {
+- EVP_EncryptInit_ex(&m_context, m_cryptoAlgorithm, 0, 0, 0);
+- EVP_CIPHER_CTX_set_key_length(&m_context, key.size());
++ EVP_EncryptInit_ex(m_context, m_cryptoAlgorithm, 0, 0, 0);
++ EVP_CIPHER_CTX_set_key_length(m_context, key.size());
+- EVP_EncryptInit_ex(&m_context, 0, 0,
++ EVP_EncryptInit_ex(m_context, 0, 0,
+ (const unsigned char*)(key.data()),
+ (const unsigned char*)(iv.data()));
+ } else {
+- EVP_DecryptInit_ex(&m_context, m_cryptoAlgorithm, 0, 0, 0);
+- EVP_CIPHER_CTX_set_key_length(&m_context, key.size());
++ EVP_DecryptInit_ex(m_context, m_cryptoAlgorithm, 0, 0, 0);
++ EVP_CIPHER_CTX_set_key_length(m_context, key.size());
+- EVP_DecryptInit_ex(&m_context, 0, 0,
++ EVP_DecryptInit_ex(m_context, 0, 0,
+ (const unsigned char*)(key.data()),
+ (const unsigned char*)(iv.data()));
+ }
+
+- EVP_CIPHER_CTX_set_padding(&m_context, m_pad);
++ EVP_CIPHER_CTX_set_padding(m_context, m_pad);
+ }
+
+ Provider::Context *clone() const
+@@ -6803,7 +6974,7 @@ public:
+
+ int blockSize() const
+ {
+- return EVP_CIPHER_CTX_block_size(&m_context);
++ return EVP_CIPHER_CTX_block_size(m_context);
+ }
+
+ bool update(const SecureArray &in, SecureArray *out)
+@@ -6821,7 +6992,7 @@ public:
+ out->resize(in.size()+blockSize());
+ int resultLength;
+ if (Encode == m_direction) {
+- if (0 == EVP_EncryptUpdate(&m_context,
++ if (0 == EVP_EncryptUpdate(m_context,
+ (unsigned char*)out->data(),
+ &resultLength,
+ (unsigned char*)in.data(),
+@@ -6829,7 +7000,7 @@ public:
+ return false;
+ }
+ } else {
+- if (0 == EVP_DecryptUpdate(&m_context,
++ if (0 == EVP_DecryptUpdate(m_context,
+ (unsigned char*)out->data(),
+ &resultLength,
+ (unsigned char*)in.data(),
+@@ -6846,13 +7017,13 @@ public:
+ out->resize(blockSize());
+ int resultLength;
+ if (Encode == m_direction) {
+- if (0 == EVP_EncryptFinal_ex(&m_context,
++ if (0 == EVP_EncryptFinal_ex(m_context,
+ (unsigned char*)out->data(),
+ &resultLength)) {
+ return false;
+ }
+ } else {
+- if (0 == EVP_DecryptFinal_ex(&m_context,
++ if (0 == EVP_DecryptFinal_ex(m_context,
+ (unsigned char*)out->data(),
+ &resultLength)) {
+ return false;
+@@ -6899,7 +7070,7 @@ public:
+
+
+ protected:
+- EVP_CIPHER_CTX m_context;
++ EVP_CIPHER_CTX *m_context;
+ const EVP_CIPHER *m_cryptoAlgorithm;
+ Direction m_direction;
+ int m_pad;
diff --git a/source/l/qca/qca.SlackBuild b/source/l/qca/qca.SlackBuild
index 2adbe7e92..d40821b66 100755
--- a/source/l/qca/qca.SlackBuild
+++ b/source/l/qca/qca.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2008, 2009, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2008, 2009, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# Modified by Robby Workman <rworkman@slackware.com> for qca-2.0.0
# No additional license terms and no copyright claim
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=qca
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j6}
# Automatically determine architecture for build & packaging:
@@ -37,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
@@ -56,7 +65,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -65,7 +74,11 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-zcat $CWD/0011-use-_DEFAULT_SOURCE-instead-of-_BSD_SOURCE.patch.gz | patch -p1 --verbose || exit 1
+# Support OpenSSL-1.1.x:
+zcat $CWD/Add_support_for_OpenSSL_1.1.0.diff.gz | patch -p1 --verbose || exit 1
+
+# This unit test patch won't apply, so whatever. Don't need it.
+#qca.tlsunittest.cpp.diff.gz | patch -p1 --verbose || exit 1
mkdir build
cd build
diff --git a/source/l/qca/qca.tlsunittest.cpp.diff b/source/l/qca/qca.tlsunittest.cpp.diff
new file mode 100644
index 000000000..0b3d6090a
--- /dev/null
+++ b/source/l/qca/qca.tlsunittest.cpp.diff
@@ -0,0 +1,58 @@
+diff --git a/unittest/tls/tlsunittest.cpp b/unittest/tls/tlsunittest.cpp
+index 38caf2d..ba8ed94 100644
+--- a/unittest/tls/tlsunittest.cpp
++++ b/unittest/tls/tlsunittest.cpp
+@@ -60,14 +60,16 @@ void TLSUnitTest::testCipherList()
+ QCA::TLS *tls = new QCA::TLS(QCA::TLS::Stream, 0, "qca-ossl");
+ QStringList cipherList = tls->supportedCipherSuites(QCA::TLS::TLS_v1);
+ QVERIFY( cipherList.contains("TLS_DHE_RSA_WITH_AES_256_CBC_SHA") );
+- QVERIFY( cipherList.contains("TLS_DHE_DSS_WITH_AES_256_CBC_SHA") );
+ QVERIFY( cipherList.contains("TLS_RSA_WITH_AES_256_CBC_SHA") );
+- QVERIFY( cipherList.contains("TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA") );
+- QVERIFY( cipherList.contains("TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA") );
+- QVERIFY( cipherList.contains("TLS_RSA_WITH_3DES_EDE_CBC_SHA") );
+ QVERIFY( cipherList.contains("TLS_DHE_RSA_WITH_AES_128_CBC_SHA") );
+- QVERIFY( cipherList.contains("TLS_DHE_DSS_WITH_AES_128_CBC_SHA") );
+- QVERIFY( cipherList.contains("TLS_RSA_WITH_AES_128_CBC_SHA") );
++
++ // openSUSE TW OpenSSL 1.1 does not have this
++ // QVERIFY( cipherList.contains("TLS_DHE_DSS_WITH_AES_256_CBC_SHA") );
++ // QVERIFY( cipherList.contains("TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA") );
++ // QVERIFY( cipherList.contains("TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA") );
++ // QVERIFY( cipherList.contains("TLS_RSA_WITH_3DES_EDE_CBC_SHA") );
++ // QVERIFY( cipherList.contains("TLS_RSA_WITH_AES_128_CBC_SHA") );
++ // QVERIFY( cipherList.contains("TLS_DHE_DSS_WITH_AES_128_CBC_SHA") );
+
+ // Fedora 26 openssl has no this cipher suites.
+ // QVERIFY( cipherList.contains("TLS_RSA_WITH_RC4_128_SHA") );
+@@ -89,16 +91,17 @@ void TLSUnitTest::testCipherList()
+ // QVERIFY( cipherList.contains("TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5") );
+ // QVERIFY( cipherList.contains("TLS_RSA_EXPORT_WITH_RC4_40_MD5") );
+
+- cipherList = tls->supportedCipherSuites(QCA::TLS::SSL_v3);
+- QVERIFY( cipherList.contains("SSL_DHE_RSA_WITH_AES_256_CBC_SHA") );
+- QVERIFY( cipherList.contains("SSL_DHE_DSS_WITH_AES_256_CBC_SHA") );
+- QVERIFY( cipherList.contains("SSL_RSA_WITH_AES_256_CBC_SHA") );
+- QVERIFY( cipherList.contains("SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA") );
+- QVERIFY( cipherList.contains("SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA") );
+- QVERIFY( cipherList.contains("SSL_RSA_WITH_3DES_EDE_CBC_SHA") );
+- QVERIFY( cipherList.contains("SSL_DHE_RSA_WITH_AES_128_CBC_SHA") );
+- QVERIFY( cipherList.contains("SSL_DHE_DSS_WITH_AES_128_CBC_SHA") );
+- QVERIFY( cipherList.contains("SSL_RSA_WITH_AES_128_CBC_SHA") );
++ // OpenSSL 1.1 in openSUSE TW has it disabled by default
++ // cipherList = tls->supportedCipherSuites(QCA::TLS::SSL_v3);
++ // QVERIFY( cipherList.contains("SSL_DHE_RSA_WITH_AES_256_CBC_SHA") );
++ // QVERIFY( cipherList.contains("SSL_DHE_DSS_WITH_AES_256_CBC_SHA") );
++ // QVERIFY( cipherList.contains("SSL_RSA_WITH_AES_256_CBC_SHA") );
++ // QVERIFY( cipherList.contains("SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA") );
++ // QVERIFY( cipherList.contains("SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA") );
++ // QVERIFY( cipherList.contains("SSL_RSA_WITH_3DES_EDE_CBC_SHA") );
++ // QVERIFY( cipherList.contains("SSL_DHE_RSA_WITH_AES_128_CBC_SHA") );
++ // QVERIFY( cipherList.contains("SSL_DHE_DSS_WITH_AES_128_CBC_SHA") );
++ // QVERIFY( cipherList.contains("SSL_RSA_WITH_AES_128_CBC_SHA") );
+
+ // Fedora 22 has no SSL_RSA_WITH_RC4_128_MD5
+ // QVERIFY( cipherList.contains("SSL_RSA_WITH_RC4_128_MD5") );
+--
+cgit v0.11.2
+
diff --git a/source/l/qca/slack-desc b/source/l/qca/slack-desc
index 91a68dd9f..fe30b1a34 100644
--- a/source/l/qca/slack-desc
+++ b/source/l/qca/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
qca: qca (Qt Cryptographic Architecture)
qca:
qca: QCA aims to provide a straightforward and cross-platform crypto API,
-qca: using Qt datatypes and conventions. QCA separates the API from the
-qca: implementation, using plugins known as Providers. The advantage of
+qca: using Qt datatypes and conventions. QCA separates the API from the
+qca: implementation, using plugins known as Providers. The advantage of
qca: this model is to allow applications to avoid linking to or explicitly
-qca: depending on any particular cryptographic library. This allows one
+qca: depending on any particular cryptographic library. This allows one
qca: to easily change or upgrade crypto implementations without needing
qca: to recompile the application.
qca:
diff --git a/source/l/qimageblitz/qimageblitz.SlackBuild b/source/l/qimageblitz/qimageblitz.SlackBuild
index 29abf6d63..c514d4f73 100755
--- a/source/l/qimageblitz/qimageblitz.SlackBuild
+++ b/source/l/qimageblitz/qimageblitz.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007-2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -21,27 +21,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=qimageblitz
VERSION=0.0.6
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-qimageblitz
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
diff --git a/source/l/qimageblitz/slack-desc b/source/l/qimageblitz/slack-desc
index 3179eef15..00ecc9655 100644
--- a/source/l/qimageblitz/slack-desc
+++ b/source/l/qimageblitz/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------|
diff --git a/source/l/qjson/qjson.SlackBuild b/source/l/qjson/qjson.SlackBuild
index a69a1882c..7a016e998 100755
--- a/source/l/qjson/qjson.SlackBuild
+++ b/source/l/qjson/qjson.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2013 Eric Hameleers, Eindhoven, NL
-# Copyright 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=qjson
VERSION=${VERSION:-0.8.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -32,7 +33,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -40,8 +41,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -57,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/qjson/slack-desc b/source/l/qjson/slack-desc
index e13439412..118b7c874 100644
--- a/source/l/qjson/slack-desc
+++ b/source/l/qjson/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/qt-gstreamer/qt-gstreamer.SlackBuild b/source/l/qt-gstreamer/qt-gstreamer.SlackBuild
index b905009ea..c696b6a79 100755
--- a/source/l/qt-gstreamer/qt-gstreamer.SlackBuild
+++ b/source/l/qt-gstreamer/qt-gstreamer.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2014 Eric Hameleers, Eindhoven, NL
# All rights reserved.
#
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=qt-gstreamer
VERSION=${VERSION:-1.2.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -32,7 +33,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -40,8 +41,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -57,7 +66,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/qt-gstreamer/slack-desc b/source/l/qt-gstreamer/slack-desc
index 3ae66051c..08d633d91 100644
--- a/source/l/qt-gstreamer/slack-desc
+++ b/source/l/qt-gstreamer/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
@@ -15,5 +15,5 @@ qt-gstreamer: The goal of this module is to allow easy use of GStreamer for
qt-gstreamer: applications targetting MeeGo Mobile or the KDE desktop.
qt-gstreamer:
qt-gstreamer: Homepage:
-qt-gstreamer: http://gstreamer.freedesktop.org/modules/qt-gstreamer.html
+qt-gstreamer: http://gstreamer.freedesktop.org/modules/qt-gstreamer.html
qt-gstreamer:
diff --git a/source/l/qt/qt-nowebkit.SlackBuild b/source/l/qt/qt-nowebkit.SlackBuild
index cb25ba647..8637d20e6 100755
--- a/source/l/qt/qt-nowebkit.SlackBuild
+++ b/source/l/qt/qt-nowebkit.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -39,9 +39,11 @@
# Modifications 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL
# qt 4.7.3, 4.7.4, 4.8.0, 4.8.1, 4.8.2, 4.8.4, 4.8.5, 4.8.6 are built from original nokia sources.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=qt
VERSION=$(ls qt-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-10}
NUMJOBS=${NUMJOBS:--j7}
@@ -57,6 +59,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
@@ -85,7 +95,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
@@ -125,19 +134,51 @@ zcat $CWD/qt.glib-honor-ExcludeSocketNotifiers-flag.diff.gz | patch -p1 --verbos
zcat $CWD/qt.qclipboard_fix_recursive.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/qt.qclipboard_delay.patch.gz | patch -p1 --verbose || exit 1
+# Fix for moc with glibc-2.25+:
+zcat $CWD/qt.QTBUG-22829.diff.gz | patch -p1 --verbose || exit 1
+
+# Another macro definition workaround with newer libraries:
+zcat $CWD/qt.QT_VERSION_CHECK.diff.gz | patch -p1 --verbose || exit 1
+
+# Fix build with gcc 6 or gcc 7:
+zcat $CWD/qt.gcc6.diff.gz | patch -p1 --verbose || exit 1
+
+# Fix test with ALSA 1.1.x:
+zcat $CWD/qt.alsa-1.1.diff.gz | patch -p1 --verbose || exit 1
+
+# Fix QTreeView crash:
+zcat $CWD/qt.qtreeview.crash.diff.gz | patch -p1 --verbose || exit 1
+
+# Increase entity limit:
+zcat $CWD/qt.QTBUG-35459.diff.gz | patch -p1 --verbose || exit 1
+
+# Don't emit a misleading icu4c debug error:
+zcat $CWD/qt.icu4c.nodebug.diff.gz | patch -p1 --verbose || exit 1
+
+## Fix building with icu4c >= 59
+#zcat $CWD/qt.icu59.patch.gz | patch -p1 --verbose || exit 1
+
+# The header files for icu59+ require C++11, so compile only the source file
+# that uses them with that C++ standard:
+zcat $CWD/qt.icu59.c++11.diff.gz | patch -p1 --verbose || exit 1
+
+# Support OpenSSL 1.1.x:
+zcat $CWD/qt4.openssl-1.1.diff.gz | patch -p1 --verbose || exit 1
+
# All other distros I checked build with -no-webkit. But this has the downside of
# breaking the build when QtWebKit is present on the build system and some things
# (assistant for one) are built without support for QtWebKit. So let's go with
# -webkit and remove the built files later from the package. -HW
export CFLAGS="$SLKCFLAGS"
-export CXXFLAGS="$SLKCFLAGS"
-export OPENSOURCE_CXXFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
+export OPENSOURCE_CXXFLAGS="$SLKCFLAGS -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
./configure \
-confirm-license \
-opensource \
-prefix /usr/lib${LIBDIRSUFFIX}/qt \
-fast \
+ -release \
-system-libpng \
-system-libjpeg \
-system-zlib \
@@ -192,8 +233,8 @@ EOF
sed -i "s,-ljscore,,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc
sed -i "s,-L../JavaScriptCore/release,,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc
-# Make sure that .la and .pc files use the correct $LIBDIRSUFFIX:
-sed -i "s,-L/usr/X11R6/lib,-L/usr/X11R6/lib${LIBDIRSUFFIX},g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc
+# Make sure that .la, .pc, and .prl files use the correct $LIBDIRSUFFIX:
+sed -i "s,-L/usr/X11R6/lib ,-L/usr/X11R6/lib${LIBDIRSUFFIX} ,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.prl
# Link the shared libraries into /usr/lib:
( cd $PKG/usr/lib${LIBDIRSUFFIX}
diff --git a/source/l/qt/qt.QTBUG-22829.diff b/source/l/qt/qt.QTBUG-22829.diff
new file mode 100644
index 000000000..b6f5525dc
--- /dev/null
+++ b/source/l/qt/qt.QTBUG-22829.diff
@@ -0,0 +1,17 @@
+diff -up qt-everywhere-opensource-src-4.8.7/src/tools/moc/main.cpp.QTBUG-22829 qt-everywhere-opensource-src-4.8.7/src/tools/moc/main.cpp
+--- qt-everywhere-opensource-src-4.8.7/src/tools/moc/main.cpp.QTBUG-22829 2015-05-07 09:14:44.000000000 -0500
++++ qt-everywhere-opensource-src-4.8.7/src/tools/moc/main.cpp 2016-12-08 12:32:46.638962448 -0600
+@@ -188,8 +188,12 @@ int runMoc(int _argc, char **_argv)
+ pp.macros["Q_MOC_RUN"];
+ pp.macros["__cplusplus"];
+
+- // Workaround a bug while parsing the boost/type_traits/has_operator.hpp header. See QTBUG-22829
++ // Workaround a bugs while parsing some boost headers. See QTBUG-22829
+ pp.macros["BOOST_TT_HAS_OPERATOR_HPP_INCLUDED"];
++ pp.macros["BOOST_LEXICAL_CAST_INCLUDED"];
++ pp.macros["BOOST_NEXT_PRIOR_HPP_INCLUDED"];
++ pp.macros["BOOST_TYPE_TRAITS_HPP"];
++ pp.macros["_SYS_SYSMACROS_H_OUTER"];
+
+ QByteArray filename;
+ QByteArray output;
diff --git a/source/l/qt/qt.QTBUG-35459.diff b/source/l/qt/qt.QTBUG-35459.diff
new file mode 100644
index 000000000..dede8324d
--- /dev/null
+++ b/source/l/qt/qt.QTBUG-35459.diff
@@ -0,0 +1,12 @@
+diff -ur qt-everywhere-opensource-src-4.8.5-CVE-2013-4549/src/xml/sax/qxml.cpp qt-everywhere-opensource-src-4.8.5-QTBUG-35459/src/xml/sax/qxml.cpp
+--- qt-everywhere-opensource-src-4.8.5-CVE-2013-4549/src/xml/sax/qxml.cpp 2013-12-05 19:23:33.000000000 +0100
++++ qt-everywhere-opensource-src-4.8.5-QTBUG-35459/src/xml/sax/qxml.cpp 2014-01-13 20:13:59.000000000 +0100
+@@ -428,7 +428,7 @@
+ // for the DTD currently being parsed.
+ static const int dtdRecursionLimit = 2;
+ // The maximum amount of characters an entity value may contain, after expansion.
+- static const int entityCharacterLimit = 1024;
++ static const int entityCharacterLimit = 65536;
+
+ const QString &string();
+ void stringClear();
diff --git a/source/l/qt/qt.QT_VERSION_CHECK.diff b/source/l/qt/qt.QT_VERSION_CHECK.diff
new file mode 100644
index 000000000..9bce98ff8
--- /dev/null
+++ b/source/l/qt/qt.QT_VERSION_CHECK.diff
@@ -0,0 +1,12 @@
+diff -up qt-everywhere-opensource-src-4.8.7/src/corelib/global/qglobal.h.majmin qt-everywhere-opensource-src-4.8.7/src/corelib/global/qglobal.h
+--- qt-everywhere-opensource-src-4.8.7/src/corelib/global/qglobal.h.majmin 2015-05-07 09:14:48.000000000 -0500
++++ qt-everywhere-opensource-src-4.8.7/src/corelib/global/qglobal.h 2016-12-08 12:10:29.677359701 -0600
+@@ -52,7 +52,7 @@
+ /*
+ can be used like #if (QT_VERSION >= QT_VERSION_CHECK(4, 4, 0))
+ */
+-#define QT_VERSION_CHECK(major, minor, patch) ((major<<16)|(minor<<8)|(patch))
++#define QT_VERSION_CHECK(qt_version_check_major, qt_version_check_minor, qt_version_check_patch) ((qt_version_check_major<<16)|(qt_version_check_minor<<8)|(qt_version_check_patch))
+
+ #define QT_PACKAGEDATE_STR "2015-05-07"
+
diff --git a/source/l/qt/qt.SlackBuild b/source/l/qt/qt.SlackBuild
index 3c4ca01d1..01ddf720e 100755
--- a/source/l/qt/qt.SlackBuild
+++ b/source/l/qt/qt.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
@@ -24,6 +24,9 @@
# a WebKit-less Qt, builds a WebKit package, merges the two packages, and
# finally upgrades the machine to a combined package.
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=qt
QTVERSION=$(ls qt-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
# Adjust the combined package $BUILD in qt-nowebkit.SlackBuild:
QTBUILD=$(grep BUILD= qt-nowebkit.SlackBuild | cut -f 2 -d - | cut -f 1 -d \})
@@ -43,6 +46,20 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-${QTVERSION}-${ARCH}-${QTBUILD}.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+else
+ LIBDIRSUFFIX=""
+fi
+
TMP=${TMP:-/tmp}
# Build Qt and package it without WebKit:
@@ -74,6 +91,15 @@ mkdir -p $TMP/package-qt
/sbin/explodepkg $TMP/qt-${QTVERSION}-${ARCH}-${QTBUILD}.txz
cat $TMP/package-qtwebkit/install/doinst.sh | grep '^(' >> install/doinst.sh
mv usr/doc/qtwebkit-* usr/doc/qt-*
+ # Remove rpaths:
+ for file in $(find . | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : 2> /dev/null) ; do
+ if [ ! "$(patchelf --print-rpath $file 2> /dev/null)" = "" ]; then
+ patchelf --remove-rpath $file
+ fi
+ done
+ # Don't ship .la files:
+ rm -f usr/lib${LIBDIRSUFFIX}/*.la
+ rm -f usr/lib${LIBDIRSUFFIX}/qt/lib/*.la
/sbin/makepkg -l y -c n ../qt-${QTVERSION}-${ARCH}-${QTBUILD}.txz
)
diff --git a/source/l/qt/qt.alsa-1.1.diff b/source/l/qt/qt.alsa-1.1.diff
new file mode 100644
index 000000000..aaa15cb77
--- /dev/null
+++ b/source/l/qt/qt.alsa-1.1.diff
@@ -0,0 +1,12 @@
+diff -up qt-everywhere-opensource-src-4.8.7/config.tests/unix/alsa/alsatest.cpp.than qt-everywhere-opensource-src-4.8.7/config.tests/unix/alsa/alsatest.cpp
+--- qt-everywhere-opensource-src-4.8.7/config.tests/unix/alsa/alsatest.cpp.than 2016-02-10 16:31:02.450152334 +0100
++++ qt-everywhere-opensource-src-4.8.7/config.tests/unix/alsa/alsatest.cpp 2016-02-10 16:31:51.495307579 +0100
+@@ -40,7 +40,7 @@
+ ****************************************************************************/
+
+ #include <alsa/asoundlib.h>
+-#if(!(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 10))
++#if(!(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 10)))
+ #error "Alsa version found too old, require >= 1.0.10"
+ #endif
+
diff --git a/source/l/qt/qt.gcc6.diff b/source/l/qt/qt.gcc6.diff
new file mode 100644
index 000000000..aaf1c497f
--- /dev/null
+++ b/source/l/qt/qt.gcc6.diff
@@ -0,0 +1,35 @@
+diff -up qt-everywhere-opensource-src-4.8.7/configure.gcc6 qt-everywhere-opensource-src-4.8.7/configure
+--- qt-everywhere-opensource-src-4.8.7/configure.gcc6 2016-04-15 07:04:19.430268222 -0500
++++ qt-everywhere-opensource-src-4.8.7/configure 2016-04-15 07:05:22.157568689 -0500
+@@ -7744,7 +7744,7 @@ case "$XPLATFORM" in
+ *-g++*)
+ # Check gcc's version
+ case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
+- 5*|4*|3.4*)
++ 8*|7*|6*|5*|4*|3.4*)
+ ;;
+ 3.3*)
+ canBuildWebKit="no"
+@@ -8060,7 +8060,7 @@ g++*)
+ 3.*)
+ COMPILER_VERSION="3.*"
+ ;;
+- 5*|4.*)
++ 8*|7*|6*|5*|4.*)
+ COMPILER_VERSION="4"
+ ;;
+ *)
+diff -up qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h.gcc6 qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h
+--- qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h.gcc6 2015-05-07 09:14:48.000000000 -0500
++++ qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h 2016-04-15 07:04:19.431268227 -0500
+@@ -70,8 +70,8 @@ namespace QPatternist
+ ForegroundShift = 10,
+ BackgroundShift = 20,
+ SpecialShift = 20,
+- ForegroundMask = ((1 << ForegroundShift) - 1) << ForegroundShift,
+- BackgroundMask = ((1 << BackgroundShift) - 1) << BackgroundShift
++ ForegroundMask = 0x1f << ForegroundShift,
++ BackgroundMask = 0x7 << BackgroundShift
+ };
+
+ public:
diff --git a/source/l/qt/qt.icu4c.nodebug.diff b/source/l/qt/qt.icu4c.nodebug.diff
new file mode 100644
index 000000000..9c53f3c26
--- /dev/null
+++ b/source/l/qt/qt.icu4c.nodebug.diff
@@ -0,0 +1,23 @@
+diff -up qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp.icu_no_debug qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp
+--- qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp.icu_no_debug 2012-09-06 02:33:45.000000000 -0500
++++ qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp 2012-09-11 09:04:21.542379795 -0500
+@@ -84,7 +84,9 @@ bool qt_initIcu(const QString &localeStr
+ QLibrary lib(QLatin1String("icui18n"), QLatin1String(U_ICU_VERSION_SHORT));
+ lib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
+ if (!lib.load()) {
++#ifndef QT_NO_DEBUG
+ qWarning() << "Unable to load library icui18n" << lib.errorString();
++#endif
+ status = ErrorLoading;
+ return false;
+ }
+@@ -114,7 +116,9 @@ bool qt_initIcu(const QString &localeStr
+ QLibrary ucLib(QLatin1String("icuuc"), QLatin1String(U_ICU_VERSION_SHORT));
+ ucLib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
+ if (!ucLib.load()) {
++#ifndef QT_NO_DEBUG
+ qWarning() << "Unable to load library icuuc" << ucLib.errorString();
++#endif
+ status = ErrorLoading;
+ return false;
+ }
diff --git a/source/l/qt/qt.icu59.c++11.diff b/source/l/qt/qt.icu59.c++11.diff
new file mode 100644
index 000000000..3edcdef02
--- /dev/null
+++ b/source/l/qt/qt.icu59.c++11.diff
@@ -0,0 +1,28 @@
+From: Fabian Vogt <fabian@ritter-vogt.de>
+Subject: Fix build with ICU >= 59
+
+ICU >= 59 requires C++11 for its header files.
+Qt can't be compiled with -std=c++11 as a whole, so only enable
+it for qlocale_icu.cpp.
+
+Index: qt-everywhere-opensource-src-4.8.7/src/corelib/tools/tools.pri
+===================================================================
+--- qt-everywhere-opensource-src-4.8.7.orig/src/corelib/tools/tools.pri
++++ qt-everywhere-opensource-src-4.8.7/src/corelib/tools/tools.pri
+@@ -102,7 +102,15 @@ contains(QT_CONFIG, zlib):include($$PWD/
+ else:include($$PWD/../../3rdparty/zlib_dependency.pri)
+
+ contains(QT_CONFIG,icu) {
+- SOURCES += tools/qlocale_icu.cpp
++ cpp11.name = cpp11
++ cpp11.input = SOURCES_CPP11
++ cpp11.dependency_type = TYPE_C
++ cpp11.variable_out = OBJECTS
++ cpp11.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_IN_BASE}$${first(QMAKE_EXT_OBJ)}
++ cpp11.commands = $${QMAKE_CXX} $(CXXFLAGS) -std=c++11 $(INCPATH) -c ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
++ QMAKE_EXTRA_COMPILERS += cpp11
++
++ SOURCES_CPP11 += tools/qlocale_icu.cpp
+ DEFINES += QT_USE_ICU
+ }
+
diff --git a/source/l/qt/qt.icu59.patch b/source/l/qt/qt.icu59.patch
new file mode 100644
index 000000000..ed6a8b52b
--- /dev/null
+++ b/source/l/qt/qt.icu59.patch
@@ -0,0 +1,11 @@
+--- qt-everywhere-opensource-src-4.8.7/src/corelib/tools/qlocale_icu.cpp~ 2017-04-25 07:42:22.000000000 +0000
++++ qt-everywhere-opensource-src-4.8.7/src/corelib/tools/qlocale_icu.cpp 2017-04-25 07:44:34.675363008 +0000
+@@ -43,6 +43,8 @@
+ #include "qlibrary.h"
+ #include "qdebug.h"
+
++#define UCHAR_TYPE unsigned short
++
+ #include "unicode/uversion.h"
+ #include "unicode/ucol.h"
+
diff --git a/source/l/qt/qt.qtreeview.crash.diff b/source/l/qt/qt.qtreeview.crash.diff
new file mode 100644
index 000000000..947f7582d
--- /dev/null
+++ b/source/l/qt/qt.qtreeview.crash.diff
@@ -0,0 +1,12 @@
+diff -up qt-everywhere-opensource-src-4.8.0-tp/src/gui/itemviews/qtreeview.cpp.qtreeview-kpackagekit-crash qt-everywhere-opensource-src-4.8.0-tp/src/gui/itemviews/qtreeview.cpp
+--- qt-everywhere-opensource-src-4.8.0-tp/src/gui/itemviews/qtreeview.cpp.qtreeview-kpackagekit-crash 2011-05-23 12:26:21.000000000 +0200
++++ qt-everywhere-opensource-src-4.8.0-tp/src/gui/itemviews/qtreeview.cpp 2011-05-25 13:24:33.137315194 +0200
+@@ -3215,7 +3215,7 @@ int QTreeViewPrivate::itemHeight(int ite
+ return defaultItemHeight;
+ if (viewItems.isEmpty())
+ return 0;
+- const QModelIndex &index = viewItems.at(item).index;
++ QModelIndex index = viewItems.at(item).index;
+ if (!index.isValid())
+ return 0;
+ int height = viewItems.at(item).height;
diff --git a/source/l/qt/qt4.openssl-1.1.diff b/source/l/qt/qt4.openssl-1.1.diff
new file mode 100644
index 000000000..607613e58
--- /dev/null
+++ b/source/l/qt/qt4.openssl-1.1.diff
@@ -0,0 +1,646 @@
+--- ./src/network/ssl/qsslsocket_openssl_symbols_p.h.orig 2015-05-07 09:14:44.000000000 -0500
++++ ./src/network/ssl/qsslsocket_openssl_symbols_p.h 2018-05-06 14:40:01.247000361 -0500
+@@ -213,9 +213,15 @@
+ BIO_METHOD *q_BIO_s_mem();
+ int q_BIO_write(BIO *a, const void *b, int c);
+ int q_BN_num_bits(const BIGNUM *a);
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ int q_CRYPTO_num_locks();
+ void q_CRYPTO_set_locking_callback(void (*a)(int, int, const char *, int));
+ void q_CRYPTO_set_id_callback(unsigned long (*a)());
++#else
++#define q_CRYPTO_num_locks() 1
++#define q_CRYPTO_set_locking_callback(a)
++#define q_CRYPTO_set_id_callback(a)
++#endif
+ void q_CRYPTO_free(void *a);
+ void q_DSA_free(DSA *a);
+ #if OPENSSL_VERSION_NUMBER >= 0x00908000L
+@@ -258,6 +264,7 @@
+ void q_RAND_seed(const void *a, int b);
+ int q_RAND_status();
+ void q_RSA_free(RSA *a);
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ int q_sk_num(STACK *a);
+ void q_sk_pop_free(STACK *a, void (*b)(void *));
+ #if OPENSSL_VERSION_NUMBER >= 0x10000000L
+@@ -267,6 +274,16 @@
+ void q_sk_free(STACK *a);
+ char * q_sk_value(STACK *a, int b);
+ #endif
++#else
++int q_OPENSSL_sk_num(STACK *a);
++void q_OPENSSL_sk_pop_free(STACK *a, void (*b)(void *));
++void q_OPENSSL_sk_free(_STACK *a);
++void * q_OPENSSL_sk_value(STACK *a, int b);
++#define q_sk_num q_OPENSSL_sk_num
++#define q_sk_pop_free q_OPENSSL_sk_pop_free
++#define q_sk_free q_OPENSSL_sk_free
++#define q_sk_value q_OPENSSL_sk_value
++#endif
+ int q_SSL_accept(SSL *a);
+ int q_SSL_clear(SSL *a);
+ char *q_SSL_CIPHER_description(SSL_CIPHER *a, char *b, int c);
+@@ -314,8 +331,14 @@
+ #else
+ long q_SSL_get_verify_result(SSL *a);
+ #endif
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ int q_SSL_library_init();
+ void q_SSL_load_error_strings();
++#else
++int q_OPENSSL_init_ssl(uint64_t opts, void *settings);
++#define q_SSL_library_init() q_OPENSSL_init_ssl(0, NULL)
++#define q_SSL_load_error_strings() q_OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS | OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL)
++#endif
+ SSL *q_SSL_new(SSL_CTX *a);
+ #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
+ long q_SSL_ctrl(SSL *ssl,int cmd, long larg, void *parg);
+@@ -328,11 +351,21 @@
+ #if OPENSSL_VERSION_NUMBER >= 0x10000000L
+ const SSL_METHOD *q_SSLv2_client_method();
+ const SSL_METHOD *q_SSLv3_client_method();
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ const SSL_METHOD *q_SSLv23_client_method();
++#else
++const SSL_METHOD *q_TLS_client_method();
++#define q_SSLv23_client_method q_TLS_client_method
++#endif
+ const SSL_METHOD *q_TLSv1_client_method();
+ const SSL_METHOD *q_SSLv2_server_method();
+ const SSL_METHOD *q_SSLv3_server_method();
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ const SSL_METHOD *q_SSLv23_server_method();
++#else
++const SSL_METHOD *q_TLS_server_method();
++#define q_SSLv23_server_method q_TLS_server_method
++#endif
+ const SSL_METHOD *q_TLSv1_server_method();
+ #else
+ SSL_METHOD *q_SSLv2_client_method();
+@@ -377,7 +410,12 @@
+ int q_X509_STORE_CTX_get_error(X509_STORE_CTX *ctx);
+ int q_X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx);
+ X509 *q_X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx);
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ STACK_OF(X509) *q_X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx);
++#else
++STACK_OF(X509) *q_X509_STORE_CTX_get0_chain(X509_STORE_CTX *ctx);
++#define q_X509_STORE_CTX_get_chain q_X509_STORE_CTX_get0_chain
++#endif
+
+ #define q_BIO_get_mem_data(b, pp) (int)q_BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)pp)
+ #define q_BIO_pending(b) (int)q_BIO_ctrl(b,BIO_CTRL_PENDING,0,NULL)
+@@ -399,7 +437,25 @@
+ PEM_ASN1_write_bio((int (*)(void*, unsigned char**))q_i2d_DSAPrivateKey,PEM_STRING_DSA,\
+ bp,(char *)x,enc,kstr,klen,cb,u)
+ #endif
++
++X509_STORE * q_SSL_CTX_get_cert_store(const SSL_CTX *ctx);
++ASN1_INTEGER * q_X509_get_serialNumber(X509 *x);
++
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ #define q_SSL_CTX_set_options(ctx,op) q_SSL_CTX_ctrl((ctx),SSL_CTRL_OPTIONS,(op),NULL)
++#define q_X509_get_version(x) X509_get_version(x)
++#else
++int q_EVP_PKEY_id(const EVP_PKEY *pkey);
++int q_EVP_PKEY_base_id(const EVP_PKEY *pkey);
++int q_SSL_CIPHER_get_bits(const SSL_CIPHER *cipher, int *alg_bits);
++long q_SSL_CTX_set_options(SSL_CTX *ctx, long options);
++long q_X509_get_version(X509 *x);
++X509_PUBKEY * q_X509_get_X509_PUBKEY(X509 *x);
++int q_RSA_bits(const RSA *rsa);
++int q_DSA_security_bits(const DSA *dsa);
++void q_DSA_get0_pqg(const DSA *d, BIGNUM **p, BIGNUM **q, BIGNUM **g);
++#endif
++
+ #define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)
+ #define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_sk_value)(st, i)
+ #define q_sk_GENERAL_NAME_num(st) q_SKM_sk_num(GENERAL_NAME, (st))
+@@ -410,8 +466,17 @@
+ #define q_sk_SSL_CIPHER_value(st, i) q_SKM_sk_value(SSL_CIPHER, (st), (i))
+ #define q_SSL_CTX_add_extra_chain_cert(ctx,x509) \
+ q_SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)x509)
++
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ #define q_X509_get_notAfter(x) X509_get_notAfter(x)
+ #define q_X509_get_notBefore(x) X509_get_notBefore(x)
++#else
++ASN1_TIME *q_X509_getm_notAfter(X509 *x);
++ASN1_TIME *q_X509_getm_notBefore(X509 *x);
++#define q_X509_get_notAfter(x) q_X509_getm_notAfter(x)
++#define q_X509_get_notBefore(x) q_X509_getm_notBefore(x)
++#endif
++
+ #define q_EVP_PKEY_assign_RSA(pkey,rsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_RSA,\
+ (char *)(rsa))
+ #define q_EVP_PKEY_assign_DSA(pkey,dsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_DSA,\
+@@ -421,10 +486,21 @@
+ #else
+ #define q_OpenSSL_add_all_algorithms() q_OPENSSL_add_all_algorithms_noconf()
+ #endif
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ void q_OPENSSL_add_all_algorithms_noconf();
+ void q_OPENSSL_add_all_algorithms_conf();
++#else
++int q_OPENSSL_init_crypto(uint64_t opts, void *settings);
++#define q_OPENSSL_add_all_algorithms_conf() q_OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS | OPENSSL_INIT_LOAD_CONFIG, NULL)
++# define q_OPENSSL_add_all_algorithms_noconf() q_OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS, NULL)
++#endif
+ int q_SSL_CTX_load_verify_locations(SSL_CTX *ctx, const char *CAfile, const char *CApath);
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ long q_SSLeay();
++#else
++unsigned long q_OpenSSL_version_num();
++#define q_SSLeay q_OpenSSL_version_num
++#endif
+
+ // Helper function
+ class QDateTime;
+--- ./src/network/ssl/qsslcertificate.cpp.orig 2015-05-07 09:14:44.000000000 -0500
++++ ./src/network/ssl/qsslcertificate.cpp 2018-05-06 14:40:01.246000361 -0500
+@@ -259,10 +259,10 @@
+ QByteArray QSslCertificate::version() const
+ {
+ QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
+- if (d->versionString.isEmpty() && d->x509)
++ if (d->versionString.isEmpty() && d->x509) {
+ d->versionString =
+- QByteArray::number(qlonglong(q_ASN1_INTEGER_get(d->x509->cert_info->version)) + 1);
+-
++ QByteArray::number(qlonglong(q_X509_get_version(d->x509)) + 1);
++ }
+ return d->versionString;
+ }
+
+@@ -276,7 +276,7 @@
+ {
+ QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
+ if (d->serialNumberString.isEmpty() && d->x509) {
+- ASN1_INTEGER *serialNumber = d->x509->cert_info->serialNumber;
++ ASN1_INTEGER *serialNumber = q_X509_get_serialNumber(d->x509);
+ // if we cannot convert to a long, just output the hexadecimal number
+ if (serialNumber->length > 4) {
+ QByteArray hexString;
+@@ -489,24 +489,33 @@
+ QSslKey key;
+
+ key.d->type = QSsl::PublicKey;
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ X509_PUBKEY *xkey = d->x509->cert_info->key;
++#else
++ X509_PUBKEY *xkey = q_X509_get_X509_PUBKEY(d->x509);
++#endif
+ EVP_PKEY *pkey = q_X509_PUBKEY_get(xkey);
+ Q_ASSERT(pkey);
+
+- if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_RSA) {
++ int key_id;
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++ key_id = q_EVP_PKEY_type(pkey->type);
++#else
++ key_id = q_EVP_PKEY_base_id(pkey);
++#endif
++ if (key_id == EVP_PKEY_RSA) {
+ key.d->rsa = q_EVP_PKEY_get1_RSA(pkey);
+ key.d->algorithm = QSsl::Rsa;
+ key.d->isNull = false;
+- } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DSA) {
++ } else if (key_id == EVP_PKEY_DSA) {
+ key.d->dsa = q_EVP_PKEY_get1_DSA(pkey);
+ key.d->algorithm = QSsl::Dsa;
+ key.d->isNull = false;
+- } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DH) {
++ } else if (key_id == EVP_PKEY_DH) {
+ // DH unsupported
+ } else {
+ // error?
+ }
+-
+ q_EVP_PKEY_free(pkey);
+ return key;
+ }
+--- ./src/network/ssl/qsslkey.cpp.orig 2015-05-07 09:14:44.000000000 -0500
++++ ./src/network/ssl/qsslkey.cpp 2018-05-06 14:40:01.246000361 -0500
+@@ -321,8 +321,19 @@
+ {
+ if (d->isNull)
+ return -1;
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ return (d->algorithm == QSsl::Rsa)
+ ? q_BN_num_bits(d->rsa->n) : q_BN_num_bits(d->dsa->p);
++#else
++ if (d->algorithm == QSsl::Rsa) {
++ return q_RSA_bits(d->rsa);
++ }else{
++ BIGNUM *p = NULL;
++ q_DSA_get0_pqg(d->dsa, &p, NULL, NULL);
++ return q_BN_num_bits(p);
++ }
++#endif
++
+ }
+
+ /*!
+--- ./src/network/ssl/qsslsocket_openssl_symbols.cpp.orig 2015-05-07 09:14:44.000000000 -0500
++++ ./src/network/ssl/qsslsocket_openssl_symbols.cpp 2018-05-06 14:48:20.109000379 -0500
+@@ -117,9 +117,11 @@
+ DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
+ DEFINEFUNC3(int, BIO_write, BIO *a, a, const void *b, b, int c, c, return -1, return)
+ DEFINEFUNC(int, BN_num_bits, const BIGNUM *a, a, return 0, return)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ DEFINEFUNC(int, CRYPTO_num_locks, DUMMYARG, DUMMYARG, return 0, return)
+ DEFINEFUNC(void, CRYPTO_set_locking_callback, void (*a)(int, int, const char *, int), a, return, DUMMYARG)
+ DEFINEFUNC(void, CRYPTO_set_id_callback, unsigned long (*a)(), a, return, DUMMYARG)
++#endif
+ DEFINEFUNC(void, CRYPTO_free, void *a, a, return, DUMMYARG)
+ DEFINEFUNC(void, DSA_free, DSA *a, a, return, DUMMYARG)
+ #if OPENSSL_VERSION_NUMBER < 0x00908000L
+@@ -157,6 +159,7 @@
+ DEFINEFUNC2(void, RAND_seed, const void *a, a, int b, b, return, DUMMYARG)
+ DEFINEFUNC(int, RAND_status, void, DUMMYARG, return -1, return)
+ DEFINEFUNC(void, RSA_free, RSA *a, a, return, DUMMYARG)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ DEFINEFUNC(int, sk_num, STACK *a, a, return -1, return)
+ DEFINEFUNC2(void, sk_pop_free, STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
+ #if OPENSSL_VERSION_NUMBER >= 0x10000000L
+@@ -166,6 +169,12 @@
+ DEFINEFUNC(void, sk_free, STACK *a, a, return, DUMMYARG)
+ DEFINEFUNC2(char *, sk_value, STACK *a, a, int b, b, return 0, return)
+ #endif
++#else
++DEFINEFUNC(int, OPENSSL_sk_num, STACK *a, a, return -1, return)
++DEFINEFUNC2(void, OPENSSL_sk_pop_free, STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
++DEFINEFUNC(void, OPENSSL_sk_free, _STACK *a, a, return, DUMMYARG)
++DEFINEFUNC2(void *, OPENSSL_sk_value, STACK *a, a, int b, b, return 0, return)
++#endif
+ DEFINEFUNC(int, SSL_accept, SSL *a, a, return -1, return)
+ DEFINEFUNC(int, SSL_clear, SSL *a, a, return -1, return)
+ DEFINEFUNC3(char *, SSL_CIPHER_description, SSL_CIPHER *a, a, char *b, b, int c, c, return 0, return)
+@@ -213,8 +222,12 @@
+ #else
+ DEFINEFUNC(long, SSL_get_verify_result, SSL *a, a, return -1, return)
+ #endif
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ DEFINEFUNC(int, SSL_library_init, void, DUMMYARG, return -1, return)
+ DEFINEFUNC(void, SSL_load_error_strings, void, DUMMYARG, return, DUMMYARG)
++#else
++DEFINEFUNC2(int, OPENSSL_init_ssl, uint64_t opts, opts, void *settings, settings, return -1, return)
++#endif
+ DEFINEFUNC(SSL *, SSL_new, SSL_CTX *a, a, return 0, return)
+ #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
+ DEFINEFUNC4(long, SSL_ctrl, SSL *a, a, int cmd, cmd, long larg, larg, void *parg, parg, return -1, return)
+@@ -229,13 +242,21 @@
+ DEFINEFUNC(const SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
+ #endif
+ DEFINEFUNC(const SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ DEFINEFUNC(const SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#else
++DEFINEFUNC(const SSL_METHOD *, TLS_client_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
+ DEFINEFUNC(const SSL_METHOD *, TLSv1_client_method, DUMMYARG, DUMMYARG, return 0, return)
+ #ifndef OPENSSL_NO_SSL2
+ DEFINEFUNC(const SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
+ #endif
+ DEFINEFUNC(const SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ DEFINEFUNC(const SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#else
++DEFINEFUNC(const SSL_METHOD *, TLS_server_method, DUMMYARG, DUMMYARG, return 0, return)
++#endif
+ DEFINEFUNC(const SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
+ #else
+ DEFINEFUNC(SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
+@@ -274,7 +295,11 @@
+ DEFINEFUNC(int, X509_STORE_CTX_get_error, X509_STORE_CTX *a, a, return -1, return)
+ DEFINEFUNC(int, X509_STORE_CTX_get_error_depth, X509_STORE_CTX *a, a, return -1, return)
+ DEFINEFUNC(X509 *, X509_STORE_CTX_get_current_cert, X509_STORE_CTX *a, a, return 0, return)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ DEFINEFUNC(STACK_OF(X509) *, X509_STORE_CTX_get_chain, X509_STORE_CTX *a, a, return 0, return)
++#else
++DEFINEFUNC(STACK_OF(X509) *, X509_STORE_CTX_get0_chain, X509_STORE_CTX *a, a, return 0, return)
++#endif
+ DEFINEFUNC(X509_STORE_CTX *, X509_STORE_CTX_new, DUMMYARG, DUMMYARG, return 0, return)
+ #ifdef SSLEAY_MACROS
+ DEFINEFUNC2(int, i2d_DSAPrivateKey, const DSA *a, a, unsigned char **b, b, return -1, return)
+@@ -282,10 +307,39 @@
+ DEFINEFUNC3(RSA *, d2i_RSAPrivateKey, RSA **a, a, unsigned char **b, b, long c, c, return 0, return)
+ DEFINEFUNC3(DSA *, d2i_DSAPrivateKey, DSA **a, a, unsigned char **b, b, long c, c, return 0, return)
+ #endif
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ DEFINEFUNC(void, OPENSSL_add_all_algorithms_noconf, void, DUMMYARG, return, DUMMYARG)
+ DEFINEFUNC(void, OPENSSL_add_all_algorithms_conf, void, DUMMYARG, return, DUMMYARG)
++#else
++DEFINEFUNC2(int, OPENSSL_init_crypto, uint64_t opts, opts, void *settings, settings, return -1, return)
++#endif
+ DEFINEFUNC3(int, SSL_CTX_load_verify_locations, SSL_CTX *ctx, ctx, const char *CAfile, CAfile, const char *CApath, CApath, return 0, return)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ DEFINEFUNC(long, SSLeay, void, DUMMYARG, return 0, return)
++#else
++DEFINEFUNC(unsigned long, OpenSSL_version_num, void, DUMMYARG, return 0, return)
++#endif
++DEFINEFUNC(X509_STORE *, SSL_CTX_get_cert_store, const SSL_CTX *ctx, ctx, return 0, return)
++
++DEFINEFUNC(ASN1_INTEGER *, X509_get_serialNumber, X509 *x, x, return 0, return)
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++DEFINEFUNC(int, EVP_PKEY_id, const EVP_PKEY *pkey, pkey, return 0, return)
++DEFINEFUNC(int, EVP_PKEY_base_id, const EVP_PKEY *pkey, pkey, return 0, return)
++DEFINEFUNC2(int, SSL_CIPHER_get_bits, const SSL_CIPHER *cipher, cipher, int *alg_bits, alg_bits, return 0, return)
++DEFINEFUNC2(long, SSL_CTX_set_options, SSL_CTX *ctx, ctx, long options, options, return 0, return)
++DEFINEFUNC(long, X509_get_version, X509 *x, x, return 0, return)
++DEFINEFUNC(X509_PUBKEY *, X509_get_X509_PUBKEY, X509 *x, x, return 0, return)
++DEFINEFUNC(int, RSA_bits, const RSA *rsa, rsa, return 0, return)
++DEFINEFUNC(int, DSA_security_bits, const DSA *dsa, dsa, return 0, return)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++DEFINEFUNC(ASN1_TIME *, X509_get_notAfter, X509 *x, x, return 0, return)
++DEFINEFUNC(ASN1_TIME *, X509_get_notBefore, X509 *x, x, return 0, return)
++#else
++DEFINEFUNC(ASN1_TIME *, X509_getm_notAfter, X509 *x, x, return 0, return)
++DEFINEFUNC(ASN1_TIME *, X509_getm_notBefore, X509 *x, x, return 0, return)
++#endif
++DEFINEFUNC4(void, DSA_get0_pqg, const DSA *d, d, BIGNUM **p, p, BIGNUM **q, q, BIGNUM **g, g, return, return)
++#endif
+
+ #ifdef Q_OS_SYMBIAN
+ #define RESOLVEFUNC(func, ordinal, lib) \
+@@ -580,7 +634,11 @@
+ static volatile bool symbolsResolved = false;
+ static volatile bool triedToResolveSymbols = false;
+ #ifndef QT_NO_THREAD
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ QMutexLocker locker(QMutexPool::globalInstanceGet((void *)&q_SSL_library_init));
++#else
++ QMutexLocker locker(QMutexPool::globalInstanceGet((void *)&q_OPENSSL_init_ssl));
++#endif
+ #endif
+ if (symbolsResolved)
+ return true;
+@@ -614,9 +672,11 @@
+ RESOLVEFUNC(BIO_write, 269, libs.second )
+ RESOLVEFUNC(BN_num_bits, 387, libs.second )
+ RESOLVEFUNC(CRYPTO_free, 469, libs.second )
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(CRYPTO_num_locks, 500, libs.second )
+ RESOLVEFUNC(CRYPTO_set_id_callback, 513, libs.second )
+ RESOLVEFUNC(CRYPTO_set_locking_callback, 516, libs.second )
++#endif
+ RESOLVEFUNC(DSA_free, 594, libs.second )
+ RESOLVEFUNC(ERR_error_string, 744, libs.second )
+ RESOLVEFUNC(ERR_get_error, 749, libs.second )
+@@ -674,8 +734,10 @@
+ RESOLVEFUNC(SSL_get_peer_cert_chain, 117, libs.first )
+ RESOLVEFUNC(SSL_get_peer_certificate, 118, libs.first )
+ RESOLVEFUNC(SSL_get_verify_result, 132, libs.first )
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(SSL_library_init, 137, libs.first )
+ RESOLVEFUNC(SSL_load_error_strings, 139, libs.first )
++#endif
+ RESOLVEFUNC(SSL_new, 140, libs.first )
+ #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
+ RESOLVEFUNC(SSL_ctrl, 95, libs.first )
+@@ -747,9 +809,11 @@
+ RESOLVEFUNC(BIO_write)
+ RESOLVEFUNC(BN_num_bits)
+ RESOLVEFUNC(CRYPTO_free)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(CRYPTO_num_locks)
+ RESOLVEFUNC(CRYPTO_set_id_callback)
+ RESOLVEFUNC(CRYPTO_set_locking_callback)
++#endif
+ RESOLVEFUNC(DSA_free)
+ RESOLVEFUNC(ERR_error_string)
+ RESOLVEFUNC(ERR_get_error)
+@@ -779,10 +843,17 @@
+ RESOLVEFUNC(RAND_seed)
+ RESOLVEFUNC(RAND_status)
+ RESOLVEFUNC(RSA_free)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(sk_free)
+ RESOLVEFUNC(sk_num)
+ RESOLVEFUNC(sk_pop_free)
+ RESOLVEFUNC(sk_value)
++#else
++ RESOLVEFUNC(OPENSSL_sk_free)
++ RESOLVEFUNC(OPENSSL_sk_num)
++ RESOLVEFUNC(OPENSSL_sk_pop_free)
++ RESOLVEFUNC(OPENSSL_sk_value)
++#endif
+ RESOLVEFUNC(SSL_CIPHER_description)
+ RESOLVEFUNC(SSL_CTX_check_private_key)
+ RESOLVEFUNC(SSL_CTX_ctrl)
+@@ -797,6 +868,7 @@
+ RESOLVEFUNC(SSL_CTX_use_PrivateKey)
+ RESOLVEFUNC(SSL_CTX_use_RSAPrivateKey)
+ RESOLVEFUNC(SSL_CTX_use_PrivateKey_file)
++ RESOLVEFUNC(SSL_CTX_get_cert_store)
+ RESOLVEFUNC(SSL_accept)
+ RESOLVEFUNC(SSL_clear)
+ RESOLVEFUNC(SSL_connect)
+@@ -807,8 +879,12 @@
+ RESOLVEFUNC(SSL_get_peer_cert_chain)
+ RESOLVEFUNC(SSL_get_peer_certificate)
+ RESOLVEFUNC(SSL_get_verify_result)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(SSL_library_init)
+ RESOLVEFUNC(SSL_load_error_strings)
++#else
++ RESOLVEFUNC(OPENSSL_init_ssl)
++#endif
+ RESOLVEFUNC(SSL_new)
+ #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
+ RESOLVEFUNC(SSL_ctrl)
+@@ -819,17 +895,47 @@
+ RESOLVEFUNC(SSL_set_connect_state)
+ RESOLVEFUNC(SSL_shutdown)
+ RESOLVEFUNC(SSL_write)
++
++ RESOLVEFUNC(X509_get_serialNumber)
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ RESOLVEFUNC(SSL_CTX_ctrl)
++ RESOLVEFUNC(EVP_PKEY_id)
++ RESOLVEFUNC(EVP_PKEY_base_id)
++ RESOLVEFUNC(SSL_CIPHER_get_bits)
++ RESOLVEFUNC(SSL_CTX_set_options)
++ RESOLVEFUNC(X509_get_version)
++ RESOLVEFUNC(X509_get_X509_PUBKEY)
++ RESOLVEFUNC(RSA_bits)
++ RESOLVEFUNC(DSA_security_bits)
++ RESOLVEFUNC(DSA_get0_pqg)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++ RESOLVEFUNC(X509_get_notAfter)
++ RESOLVEFUNC(X509_get_notBefore)
++#else
++ RESOLVEFUNC(X509_getm_notAfter)
++ RESOLVEFUNC(X509_getm_notBefore)
++#endif
++#endif
++
+ #ifndef OPENSSL_NO_SSL2
+ RESOLVEFUNC(SSLv2_client_method)
+ #endif
+ RESOLVEFUNC(SSLv3_client_method)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(SSLv23_client_method)
++#else
++ RESOLVEFUNC(TLS_client_method)
++#endif
+ RESOLVEFUNC(TLSv1_client_method)
+ #ifndef OPENSSL_NO_SSL2
+ RESOLVEFUNC(SSLv2_server_method)
+ #endif
+ RESOLVEFUNC(SSLv3_server_method)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(SSLv23_server_method)
++#else
++ RESOLVEFUNC(TLS_server_method)
++#endif
+ RESOLVEFUNC(TLSv1_server_method)
+ RESOLVEFUNC(X509_NAME_entry_count)
+ RESOLVEFUNC(X509_NAME_get_entry)
+@@ -846,7 +952,11 @@
+ RESOLVEFUNC(X509_STORE_CTX_get_error)
+ RESOLVEFUNC(X509_STORE_CTX_get_error_depth)
+ RESOLVEFUNC(X509_STORE_CTX_get_current_cert)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(X509_STORE_CTX_get_chain)
++#else
++ RESOLVEFUNC(X509_STORE_CTX_get0_chain)
++#endif
+ RESOLVEFUNC(X509_cmp)
+ #ifndef SSLEAY_MACROS
+ RESOLVEFUNC(X509_dup)
+@@ -867,10 +977,18 @@
+ RESOLVEFUNC(d2i_DSAPrivateKey)
+ RESOLVEFUNC(d2i_RSAPrivateKey)
+ #endif
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(OPENSSL_add_all_algorithms_noconf)
+ RESOLVEFUNC(OPENSSL_add_all_algorithms_conf)
++#else
++ RESOLVEFUNC(OPENSSL_init_crypto)
++#endif
+ RESOLVEFUNC(SSL_CTX_load_verify_locations)
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ RESOLVEFUNC(SSLeay)
++#else
++ RESOLVEFUNC(OpenSSL_version_num)
++#endif
+ #endif // Q_OS_SYMBIAN
+ symbolsResolved = true;
+ delete libs.first;
+--- ./src/network/ssl/qsslsocket_openssl_p.h.orig 2015-05-07 09:14:44.000000000 -0500
++++ ./src/network/ssl/qsslsocket_openssl_p.h 2018-05-06 14:40:01.249000361 -0500
+@@ -84,6 +84,10 @@
+ #include <openssl/tls1.h>
+ #endif
+
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#define OPENSSL_NO_SSL2
++#endif
++
+ #if OPENSSL_VERSION_NUMBER >= 0x10000000L
+ typedef _STACK STACK;
+ #endif
+--- ./src/network/ssl/qsslsocket_openssl.cpp.orig 2015-05-07 09:14:44.000000000 -0500
++++ ./src/network/ssl/qsslsocket_openssl.cpp 2018-05-06 14:40:01.247000361 -0500
+@@ -93,6 +93,7 @@
+ bool QSslSocketPrivate::s_loadedCiphersAndCerts = false;
+ bool QSslSocketPrivate::s_loadRootCertsOnDemand = false;
+
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ /* \internal
+
+ From OpenSSL's thread(3) manual page:
+@@ -174,6 +175,8 @@
+ }
+ } // extern "C"
+
++#endif //OPENSSL_VERSION_NUMBER >= 0x10100000L
++
+ QSslSocketBackendPrivate::QSslSocketBackendPrivate()
+ : ssl(0),
+ ctx(0),
+@@ -222,9 +225,12 @@
+ ciph.d->encryptionMethod = descriptionList.at(4).mid(4);
+ ciph.d->exportable = (descriptionList.size() > 6 && descriptionList.at(6) == QLatin1String("export"));
+
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ ciph.d->bits = cipher->strength_bits;
+ ciph.d->supportedBits = cipher->alg_bits;
+-
++#else
++ ciph.d->bits = q_SSL_CIPHER_get_bits(cipher, &ciph.d->supportedBits);
++#endif
+ }
+ return ciph;
+ }
+@@ -363,7 +369,7 @@
+ //
+ // See also: QSslContext::fromConfiguration()
+ if (caCertificate.expiryDate() >= QDateTime::currentDateTime()) {
+- q_X509_STORE_add_cert(ctx->cert_store, (X509 *)caCertificate.handle());
++ q_X509_STORE_add_cert(q_SSL_CTX_get_cert_store(ctx), (X509 *)caCertificate.handle());
+ }
+ }
+
+@@ -500,8 +506,10 @@
+ */
+ void QSslSocketPrivate::deinitialize()
+ {
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ q_CRYPTO_set_id_callback(0);
+ q_CRYPTO_set_locking_callback(0);
++#endif
+ }
+
+ /*!
+@@ -522,13 +530,17 @@
+ return false;
+
+ // Check if the library itself needs to be initialized.
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ QMutexLocker locker(openssl_locks()->initLock());
++#endif
+ if (!s_libraryLoaded) {
+ s_libraryLoaded = true;
+
+ // Initialize OpenSSL.
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ q_CRYPTO_set_id_callback(id_function);
+ q_CRYPTO_set_locking_callback(locking_function);
++#endif
+ if (q_SSL_library_init() != 1)
+ return false;
+ q_SSL_load_error_strings();
+@@ -567,7 +579,9 @@
+
+ void QSslSocketPrivate::ensureCiphersAndCertsLoaded()
+ {
+- QMutexLocker locker(openssl_locks()->initLock());
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++ QMutexLocker locker(openssl_locks()->initLock());
++#endif
+ if (s_loadedCiphersAndCerts)
+ return;
+ s_loadedCiphersAndCerts = true;
+@@ -659,13 +673,18 @@
+ STACK_OF(SSL_CIPHER) *supportedCiphers = q_SSL_get_ciphers(mySsl);
+ for (int i = 0; i < q_sk_SSL_CIPHER_num(supportedCiphers); ++i) {
+ if (SSL_CIPHER *cipher = q_sk_SSL_CIPHER_value(supportedCiphers, i)) {
+- if (cipher->valid) {
++
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++ if (cipher->valid) {
++#endif
+ QSslCipher ciph = QSslSocketBackendPrivate::QSslCipher_from_SSL_CIPHER(cipher);
+ if (!ciph.isNull()) {
+ if (!ciph.name().toLower().startsWith(QLatin1String("adh")))
+ ciphers << ciph;
+ }
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ }
++#endif
+ }
+ }
+
diff --git a/source/l/qt/qtwebkit/qtwebkit.SlackBuild b/source/l/qt/qtwebkit/qtwebkit.SlackBuild
index 9524d836f..6ba9301f8 100755
--- a/source/l/qt/qtwebkit/qtwebkit.SlackBuild
+++ b/source/l/qt/qtwebkit/qtwebkit.SlackBuild
@@ -23,6 +23,8 @@
#
# Derived from the main qt SlackBuild
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=qtwebkit
VERSION=$(ls qtwebkit-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
BUILD=${BUILD:-1}
@@ -42,30 +44,30 @@ if [ -z "$ARCH" ]; then
fi
if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686 -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
LIBDIRSUFFIX=""
WEBKITFLAGS="--no-force-sse2"
elif [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686 -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
LIBDIRSUFFIX=""
WEBKITFLAGS="--no-force-sse2"
elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
LIBDIRSUFFIX=""
WEBKITFLAGS="--no-force-sse2"
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -fPIC -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
LIBDIRSUFFIX="64"
WEBKITFLAGS=""
elif [ "$ARCH" = "armv7hl" ]; then
# To prevent "qatomic_armv6.h error: output number 2 not directly addressable"
# More permanent solution is to patch gcc:
# http://bazaar.launchpad.net/~linaro-toolchain-dev/gcc-linaro/4.6/revision/106731
- SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16 -fno-strict-volatile-bitfields"
+ SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16 -fno-strict-volatile-bitfields -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
LIBDIRSUFFIX=""
WEBKITFLAGS="--no-force-sse2"
else
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
LIBDIRSUFFIX=""
WEBKITFLAGS="--no-force-sse2"
fi
@@ -75,7 +77,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
diff --git a/source/l/qt/qtwebkit/slack-desc b/source/l/qt/qtwebkit/slack-desc
index 0bd175744..2971354cf 100644
--- a/source/l/qt/qtwebkit/slack-desc
+++ b/source/l/qt/qtwebkit/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ qtwebkit: QtWebKit (Qt bindings for the WebKit browser engine)
qtwebkit:
qtwebkit: WebKit is an open source web browser engine. WebKit's HTML and
qtwebkit: JavaScript code began as a branch of the KHTML and KJS libraries from
-qtwebkit: KDE. As part of KDE framework KHTML was based on Qt but during their
+qtwebkit: KDE. As part of KDE framework KHTML was based on Qt but during their
qtwebkit: porting efforts Apple's engineers made WebKit toolkit independent.
qtwebkit: QtWebKit is a project aiming at porting this fabulous engine back
qtwebkit: to Qt.
diff --git a/source/l/qt/slack-desc b/source/l/qt/slack-desc
index 4ebd42dfa..7b0bb0dae 100755
--- a/source/l/qt/slack-desc
+++ b/source/l/qt/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/qtscriptgenerator/qtscriptgenerator.SlackBuild b/source/l/qtscriptgenerator/qtscriptgenerator.SlackBuild
index 252adbdf4..1b408c0a4 100755
--- a/source/l/qtscriptgenerator/qtscriptgenerator.SlackBuild
+++ b/source/l/qtscriptgenerator/qtscriptgenerator.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for qtscriptgenerator
# Copyright 2009 Heinz Wiesinger <pprkut@liwjatan.at>
-# Copyright 2009, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2012, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,46 +23,55 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=qtscriptgenerator
VERSION=${VERSION:-0.2.0}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686 -fpermissive"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686 -fpermissive"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -fpermissive"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -fPIC -fpermissive"
LIBDIRSUFFIX="64"
elif [ "$ARCH" = "arm" ]; then
- SLKCFLAGS="-O2 -march=armv4 -mtune=xscale"
+ SLKCFLAGS="-O2 -march=armv4 -mtune=xscale -fpermissive"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "armel" ]; then
- SLKCFLAGS="-O2 -march=armv4t"
+ SLKCFLAGS="-O2 -march=armv4t -fpermissive"
LIBDIRSUFFIX=""
else
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -fpermissive"
LIBDIRSUFFIX=""
fi
@@ -88,15 +97,18 @@ find . \
zcat $CWD/include-everything.patch.gz | patch -p1 --verbose || exit 1
cd generator
- qmake
- make $NUMJOBS
- ./generator --include-paths=/usr/lib${LIBDIRSUFFIX}/qt/include:/usr/include
+ echo "Building generator..."
+ qmake || exit 1
+ make $NUMJOBS || exit 1
+ ./generator --include-paths=/usr/lib${LIBDIRSUFFIX}/qt/include:/usr/include || exit 1
cd -
+# Leaving off the || exit 1 in two make statements below, or we get nowhere :/
cd qtbindings
+ echo "Building qtbindings..."
sed -i "s|CONFIG += debug_and_release|CONFIG += release|" \
qtbindingsbase.pri
- qmake
+ qmake || exit 1
make $NUMJOBS qmake_all
sed -i "s|-I/usr/lib${LIBDIRSUFFIX}/qt/include/phonon|-I/usr/include/phonon|" \
qtscript_phonon/Makefile
@@ -104,19 +116,21 @@ cd qtbindings
cd -
cd tools/qsexec/src
- qmake
- make $NUMJOBS
+ echo "Building tools/qsexec/src..."
+ qmake || exit 1
+ make $NUMJOBS || exit 1
cd -
cd qtbindings/qtscript_uitools
- qmake
- make $NUMJOBS all
+ echo "Building qtbindings/qtscript_uitools..."
+ qmake || exit 1
+ make $NUMJOBS all || exit 1
cd -
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/qt/{bin,plugins/script}
-install -m 755 tools/qsexec/qsexec $PKG/usr/lib${LIBDIRSUFFIX}/qt/bin/qsexec
-install -m 755 generator/generator $PKG/usr/lib${LIBDIRSUFFIX}/qt/bin/generator
+install -m 755 tools/qsexec/qsexec $PKG/usr/lib${LIBDIRSUFFIX}/qt/bin/qsexec || exit 1
+install -m 755 generator/generator $PKG/usr/lib${LIBDIRSUFFIX}/qt/bin/generator || exit 1
cp -a plugins/script/libqtscript* $PKG/usr/lib${LIBDIRSUFFIX}/qt/plugins/script/
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/source/l/qtscriptgenerator/slack-desc b/source/l/qtscriptgenerator/slack-desc
index 16f2ba052..c4f2e096a 100644
--- a/source/l/qtscriptgenerator/slack-desc
+++ b/source/l/qtscriptgenerator/slack-desc
@@ -1,16 +1,16 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
qtscriptgenerator: qtscriptgenerator (Qt API Bindings for QtScript)
qtscriptgenerator:
qtscriptgenerator: Qt Script Generator is a tool that generates Qt bindings for Qt
-qtscriptgenerator: Script. With the generated bindings you get access to substantial
-qtscriptgenerator: portions of the Qt API from within Qt Script.
+qtscriptgenerator: Script. With the generated bindings you get access to substantial
+qtscriptgenerator: portions of the Qt API from within QtScript.
qtscriptgenerator:
qtscriptgenerator: Homepage: http://code.google.com/p/qtscriptgenerator/
qtscriptgenerator:
diff --git a/source/l/raptor2/raptor2.SlackBuild b/source/l/raptor2/raptor2.SlackBuild
index a4492c0fe..b86d980a6 100755
--- a/source/l/raptor2/raptor2.SlackBuild
+++ b/source/l/raptor2/raptor2.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2012, 2013 Heinz Wiesinger, Amsterdam, NL
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,10 +25,11 @@
# Modified by Eric Hameleers <alien@slackware.com>
# No added terms or copyright claims
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=raptor2
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-5}
NUMJOBS=${NUMJOBS:--j7}
@@ -44,6 +45,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -66,7 +75,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -93,11 +101,14 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--disable-static \
--with-icu-config=/usr/bin/icu-config \
- --build=$TARGET
+ --build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/raptor2/slack-desc b/source/l/raptor2/slack-desc
index 309b74a13..8842687d0 100644
--- a/source/l/raptor2/slack-desc
+++ b/source/l/raptor2/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -11,9 +11,9 @@ raptor2:
raptor2: Raptor is a free software/Open Source C library that provides a set of
raptor2: parsers and serializers that generate Resource Description Framework
raptor2: (RDF) triples by parsing syntaxes or serialize the triples into a
-raptor2: syntax. The supported parsing syntaxes are RDF/XML, N-Triples, TRiG,
+raptor2: syntax. The supported parsing syntaxes are RDF/XML, N-Triples, TRiG,
raptor2: Turtle, RSS tag soup including all versions of RSS, Atom 1.0 and 0.3,
raptor2: GRDDL and microformats for HTML, XHTML and XML.
raptor2:
-raptor2: Homepage: http://librdf.org/
+raptor2: Homepage: http://librdf.org/
raptor2:
diff --git a/source/l/rasqal/rasqal.SlackBuild b/source/l/rasqal/rasqal.SlackBuild
index c8c74a9f3..6ede143c2 100755
--- a/source/l/rasqal/rasqal.SlackBuild
+++ b/source/l/rasqal/rasqal.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2013 Heinz Wiesinger, Amsterdam, NL
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,9 +25,11 @@
# Modified by Eric Hameleers <alien@slackware.com>
# No added terms or copyright claims
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=rasqal
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:--j7}
@@ -35,7 +37,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -43,8 +45,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -65,7 +75,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -91,11 +100,14 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--disable-static \
- --build=$TARGET
+ --build=$TARGET || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/rasqal/slack-desc b/source/l/rasqal/slack-desc
index 00e549d0c..e65a98f7d 100644
--- a/source/l/rasqal/slack-desc
+++ b/source/l/rasqal/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -14,6 +14,6 @@ rasqal: constructing the queries, executing them and returning result formats.
rasqal: It currently handles the RDF Data Query Language (RDQL) and SPARQL
rasqal: Query language.
rasqal:
-rasqal: Homepage: http://librdf.org/
+rasqal: Homepage: http://librdf.org/
rasqal:
rasqal:
diff --git a/source/l/readline/readline-6.3-patches/readline63-001 b/source/l/readline/readline-6.3-patches/readline63-001
deleted file mode 100644
index bae6a2f52..000000000
--- a/source/l/readline/readline-6.3-patches/readline63-001
+++ /dev/null
@@ -1,43 +0,0 @@
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 6.3
-Patch-ID: readline63-001
-
-Bug-Reported-by: Daan van Rossum <daan@flash.uchicago.edu>
-Bug-Reference-ID: <20140307072523.GA14250@flash.uchicago.edu>
-Bug-Reference-URL:
-
-Bug-Description:
-
-The `.' command in vi mode cannot undo multi-key commands beginning with
-`c', `d', and `y' (command plus motion specifier).
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400
---- readline.c 2014-03-07 15:20:33.000000000 -0500
-***************
-*** 965,969 ****
- if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
- key != ANYOTHERKEY &&
-! rl_key_sequence_length == 1 && /* XXX */
- _rl_vi_textmod_command (key))
- _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
---- 965,969 ----
- if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
- key != ANYOTHERKEY &&
-! _rl_dispatching_keymap == vi_movement_keymap &&
- _rl_vi_textmod_command (key))
- _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
-*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
---- patchlevel 2014-03-21 08:28:40.000000000 -0400
-***************
-*** 1,3 ****
- # Do not edit -- exists only for use by patch
-
-! 5
---- 1,3 ----
- # Do not edit -- exists only for use by patch
-
-! 1
diff --git a/source/l/readline/readline-6.3-patches/readline63-002 b/source/l/readline/readline-6.3-patches/readline63-002
deleted file mode 100644
index 0e79f13f6..000000000
--- a/source/l/readline/readline-6.3-patches/readline63-002
+++ /dev/null
@@ -1,44 +0,0 @@
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 6.3
-Patch-ID: readline63-002
-
-Bug-Reported-by: Anatol Pomozov <anatol.pomozov@gmail.com>
-Bug-Reference-ID: <CAOMFOmXy3mT2So5GQ5F-smCVArQuAeBwZ2QKzgCtMeXJoDeYOQ@mail.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00010.html
-
-Bug-Description:
-
-When in callback mode, some readline commands can cause readline to seg
-fault by passing invalid contexts to callback functions.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400
---- readline.c 2014-03-10 14:15:02.000000000 -0400
-***************
-*** 745,749 ****
-
- RL_CHECK_SIGNALS ();
-! if (r == 0) /* success! */
- {
- _rl_keyseq_chain_dispose ();
---- 745,750 ----
-
- RL_CHECK_SIGNALS ();
-! /* We only treat values < 0 specially to simulate recursion. */
-! if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0)) /* success! or failure! */
- {
- _rl_keyseq_chain_dispose ();
-*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
---- patchlevel 2014-03-21 08:28:40.000000000 -0400
-***************
-*** 1,3 ****
- # Do not edit -- exists only for use by patch
-
-! 1
---- 1,3 ----
- # Do not edit -- exists only for use by patch
-
-! 2
diff --git a/source/l/readline/readline-6.3-patches/readline63-003 b/source/l/readline/readline-6.3-patches/readline63-003
deleted file mode 100644
index d2cad94f9..000000000
--- a/source/l/readline/readline-6.3-patches/readline63-003
+++ /dev/null
@@ -1,47 +0,0 @@
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 6.3
-Patch-ID: readline63-003
-
-Bug-Reported-by:
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-There are debugging functions in the readline release that are theoretically
-exploitable as security problems. They are not public functions, but have
-global linkage.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.3/util.c 2013-09-02 13:36:12.000000000 -0400
---- util.c 2014-03-20 10:25:53.000000000 -0400
-***************
-*** 477,480 ****
---- 479,483 ----
- }
-
-+ #if defined (DEBUG)
- #if defined (USE_VARARGS)
- static FILE *_rl_tracefp;
-***************
-*** 539,542 ****
---- 542,546 ----
- }
- #endif
-+ #endif /* DEBUG */
-
-
-*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
---- patchlevel 2014-03-21 08:28:40.000000000 -0400
-***************
-*** 1,3 ****
- # Do not edit -- exists only for use by patch
-
-! 2
---- 1,3 ----
- # Do not edit -- exists only for use by patch
-
-! 3
diff --git a/source/l/readline/readline-6.3-patches/readline63-004 b/source/l/readline/readline-6.3-patches/readline63-004
deleted file mode 100644
index 3cd89e3a0..000000000
--- a/source/l/readline/readline-6.3-patches/readline63-004
+++ /dev/null
@@ -1,45 +0,0 @@
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 6.3
-Patch-ID: readline63-004
-
-Bug-Reported-by: Egmont Koblinger <egmont@gmail.com>
-Bug-Reference-ID: <CAGWcZk+bU5Jo1M+tutGvL-250UBE9DXjpeJVofYJSFcqFEVfMg@mail.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00153.html
-
-Bug-Description:
-
-The signal handling changes to bash and readline (to avoid running any code
-in a signal handler context) cause the cursor to be placed on the wrong
-line of a multi-line command after a ^C interrupts editing.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.3-patched/display.c 2013-12-27 13:10:56.000000000 -0500
---- display.c 2014-03-27 11:52:45.000000000 -0400
-***************
-*** 2678,2682 ****
- if (_rl_echoing_p)
- {
-! _rl_move_vert (_rl_vis_botlin);
- _rl_vis_botlin = 0;
- fflush (rl_outstream);
---- 2678,2683 ----
- if (_rl_echoing_p)
- {
-! if (_rl_vis_botlin > 0) /* minor optimization plus bug fix */
-! _rl_move_vert (_rl_vis_botlin);
- _rl_vis_botlin = 0;
- fflush (rl_outstream);
-*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
---- patchlevel 2014-03-21 08:28:40.000000000 -0400
-***************
-*** 1,3 ****
- # Do not edit -- exists only for use by patch
-
-! 3
---- 1,3 ----
- # Do not edit -- exists only for use by patch
-
-! 4
diff --git a/source/l/readline/readline-6.3-patches/readline63-005 b/source/l/readline/readline-6.3-patches/readline63-005
deleted file mode 100644
index 8a6373849..000000000
--- a/source/l/readline/readline-6.3-patches/readline63-005
+++ /dev/null
@@ -1,58 +0,0 @@
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 6.3
-Patch-ID: readline63-005
-
-Bug-Reported-by: Juergen Daubert <jue@jue.li>
-Bug-Reference-ID: <20140303180430.GA7346@jue.netz>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00002.html
-
-Bug-Description:
-
-There are still applications using the deprecated Function/VFunction/etc.
-typedefs in rltypedefs.h. This patch restores the typedefs, but attempts
-to mark them as deprecated using gcc/clang attributes. Thanks to Max Horn
-for the suggestion.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.3-patched/rltypedefs.h 2011-03-26 14:53:31.000000000 -0400
---- rltypedefs.h 2014-04-10 11:30:45.000000000 -0400
-***************
-*** 27,30 ****
---- 27,49 ----
- #endif
-
-+ /* Old-style, attempt to mark as deprecated in some way people will notice. */
-+
-+ #if !defined (_FUNCTION_DEF)
-+ # define _FUNCTION_DEF
-+
-+ #if defined(__GNUC__) || defined(__clang__)
-+ typedef int Function () __attribute__ ((deprecated));
-+ typedef void VFunction () __attribute__ ((deprecated));
-+ typedef char *CPFunction () __attribute__ ((deprecated));
-+ typedef char **CPPFunction () __attribute__ ((deprecated));
-+ #else
-+ typedef int Function ();
-+ typedef void VFunction ();
-+ typedef char *CPFunction ();
-+ typedef char **CPPFunction ();
-+ #endif
-+
-+ #endif /* _FUNCTION_DEF */
-+
- /* New style. */
-
-*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
---- patchlevel 2014-03-21 08:28:40.000000000 -0400
-***************
-*** 1,3 ****
- # Do not edit -- exists only for use by patch
-
-! 4
---- 1,3 ----
- # Do not edit -- exists only for use by patch
-
-! 5
diff --git a/source/l/readline/readline-6.3-patches/readline63-006 b/source/l/readline/readline-6.3-patches/readline63-006
deleted file mode 100644
index a3f09304a..000000000
--- a/source/l/readline/readline-6.3-patches/readline63-006
+++ /dev/null
@@ -1,63 +0,0 @@
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 6.3
-Patch-ID: readline63-006
-
-Bug-Reported-by: <Trond.Endrestol@ximalas.info>
-Bug-Reference-ID: <alpine.BSF.2.03.1404192114310.1973@enterprise.ximalas.info>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00069.html
-
-Bug-Description:
-
-Using reverse-i-search when horizontal scrolling is enabled does not redisplay
-the entire line containing the successful search results.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.3-patched/display.c 2014-04-08 18:19:36.000000000 -0400
---- display.c 2014-04-20 18:32:52.000000000 -0400
-***************
-*** 1638,1642 ****
- the spot of first difference is before the end of the invisible chars,
- lendiff needs to be adjusted. */
-! if (current_line == 0 && !_rl_horizontal_scroll_mode &&
- current_invis_chars != visible_wrap_offset)
- {
---- 1638,1642 ----
- the spot of first difference is before the end of the invisible chars,
- lendiff needs to be adjusted. */
-! if (current_line == 0 && /* !_rl_horizontal_scroll_mode && */
- current_invis_chars != visible_wrap_offset)
- {
-***************
-*** 1826,1831 ****
- _rl_last_c_pos += bytes_to_insert;
-
- if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
-! goto clear_rest_of_line;
- }
- }
---- 1826,1836 ----
- _rl_last_c_pos += bytes_to_insert;
-
-+ /* XXX - we only want to do this if we are at the end of the line
-+ so we move there with _rl_move_cursor_relative */
- if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
-! {
-! _rl_move_cursor_relative (ne-new, new);
-! goto clear_rest_of_line;
-! }
- }
- }
-*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
---- patchlevel 2014-03-21 08:28:40.000000000 -0400
-***************
-*** 1,3 ****
- # Do not edit -- exists only for use by patch
-
-! 5
---- 1,3 ----
- # Do not edit -- exists only for use by patch
-
-! 6
diff --git a/source/l/readline/readline-6.3-patches/readline63-007 b/source/l/readline/readline-6.3-patches/readline63-007
deleted file mode 100644
index 1b657924d..000000000
--- a/source/l/readline/readline-6.3-patches/readline63-007
+++ /dev/null
@@ -1,47 +0,0 @@
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 6.3
-Patch-ID: readline63-007
-
-Bug-Reported-by: John Lenton
-Bug-Reference-ID:
-Bug-Reference-URL: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1317476
-
-Bug-Description:
-
-Readline should allow SIGALRM and SIGVTALRM (if available) to `interrupt'
-rl_getc and cause the handler to run when not in a signal handling context.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.3-patched/input.c 2014-01-10 15:07:08.000000000 -0500
---- input.c 2014-05-30 16:20:56.000000000 -0400
-***************
-*** 535,540 ****
---- 538,551 ----
- else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM)
- return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
-+ /* keyboard-generated signals of interest */
- else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT)
- RL_CHECK_SIGNALS ();
-+ /* non-keyboard-generated signals of interest */
-+ else if (_rl_caught_signal == SIGALRM
-+ #if defined (SIGVTALRM)
-+ || _rl_caught_signal == SIGVTALRM
-+ #endif
-+ )
-+ RL_CHECK_SIGNALS ();
-
- if (rl_signal_event_hook)
-*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
---- patchlevel 2014-03-21 08:28:40.000000000 -0400
-***************
-*** 1,3 ****
- # Do not edit -- exists only for use by patch
-
-! 6
---- 1,3 ----
- # Do not edit -- exists only for use by patch
-
-! 7
diff --git a/source/l/readline/readline-6.3-patches/readline63-008 b/source/l/readline/readline-6.3-patches/readline63-008
deleted file mode 100644
index 691016f75..000000000
--- a/source/l/readline/readline-6.3-patches/readline63-008
+++ /dev/null
@@ -1,47 +0,0 @@
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 6.3
-Patch-ID: readline63-008
-
-Bug-Reported-by: Jared Yanovich <slovichon@gmail.com>
-Bug-Reference-ID: <20140625225019.GJ17044@nightderanger.psc.edu>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00070.html
-
-Bug-Description:
-
-When the readline `revert-all-at-newline' option is set, pressing newline
-when the current line is one retrieved from history results in a double free
-and a segmentation fault.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.3-patched/misc.c 2012-09-01 18:03:11.000000000 -0400
---- misc.c 2014-06-30 13:41:19.000000000 -0400
-***************
-*** 462,465 ****
---- 462,466 ----
- /* Set up rl_line_buffer and other variables from history entry */
- rl_replace_from_history (entry, 0); /* entry->line is now current */
-+ entry->data = 0; /* entry->data is now current undo list */
- /* Undo all changes to this history entry */
- while (rl_undo_list)
-***************
-*** 469,473 ****
- FREE (entry->line);
- entry->line = savestring (rl_line_buffer);
-- entry->data = 0;
- }
- entry = previous_history ();
---- 470,473 ----
-*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
---- patchlevel 2014-03-21 08:28:40.000000000 -0400
-***************
-*** 1,3 ****
- # Do not edit -- exists only for use by patch
-
-! 7
---- 1,3 ----
- # Do not edit -- exists only for use by patch
-
-! 8
diff --git a/source/l/readline/readline-7.0-patches/readline70-001 b/source/l/readline/readline-7.0-patches/readline70-001
new file mode 100644
index 000000000..437a4401d
--- /dev/null
+++ b/source/l/readline/readline-7.0-patches/readline70-001
@@ -0,0 +1,57 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 7.0
+Patch-ID: readline70-001
+
+Bug-Reported-by: Sean Zha <freeman_cha@hotmail.com>
+Bug-Reference-ID: <BN3PR01MB13657D9303EB94BF6E54216E8CCA0@BN3PR01MB1365.prod.exchangelabs.com>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-09/msg00107.html
+
+Bug-Description:
+
+Readline-7.0 changed the way the history list is initially allocated to reduce
+the number of reallocations and copies. Users who set the readline
+history-size variable to a very large number to essentially unlimit the size
+of the history list will get memory allocation errors
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-7.0/history.c 2015-12-28 13:50:31.000000000 -0500
+--- history.c 2016-09-30 14:28:40.000000000 -0400
+***************
+*** 58,61 ****
+--- 58,63 ----
+ #define DEFAULT_HISTORY_INITIAL_SIZE 502
+
++ #define MAX_HISTORY_INITIAL_SIZE 8192
++
+ /* The number of slots to increase the_history by. */
+ #define DEFAULT_HISTORY_GROW_SIZE 50
+***************
+*** 308,312 ****
+ {
+ if (history_stifled && history_max_entries > 0)
+! history_size = history_max_entries + 2;
+ else
+ history_size = DEFAULT_HISTORY_INITIAL_SIZE;
+--- 310,316 ----
+ {
+ if (history_stifled && history_max_entries > 0)
+! history_size = (history_max_entries > MAX_HISTORY_INITIAL_SIZE)
+! ? MAX_HISTORY_INITIAL_SIZE
+! : history_max_entries + 2;
+ else
+ history_size = DEFAULT_HISTORY_INITIAL_SIZE;
+
+*** ../readline-7.0/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 0
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 1
diff --git a/source/l/readline/readline-7.0-patches/readline70-002 b/source/l/readline/readline-7.0-patches/readline70-002
new file mode 100644
index 000000000..ac76daec7
--- /dev/null
+++ b/source/l/readline/readline-7.0-patches/readline70-002
@@ -0,0 +1,103 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 7.0
+Patch-ID: readline70-002
+
+Bug-Reported-by: Hong Cho <hong.cho@citrix.com>
+Bug-Reference-ID: <c30b5fe62b2543af8297e47ca487c29c@SJCPEX02CL02.citrite.net>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2016-12/msg00002.html
+
+Bug-Description:
+
+There is a race condition in add_history() that can be triggered by a fatal
+signal arriving between the time the history length is updated and the time
+the history list update is completed. A later attempt to reference an
+invalid history entry can cause a crash.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-7.0-patched/history.c 2016-11-11 13:42:49.000000000 -0500
+--- history.c 2016-12-05 10:37:51.000000000 -0500
+***************
+*** 280,283 ****
+--- 280,284 ----
+ {
+ HIST_ENTRY *temp;
++ int new_length;
+
+ if (history_stifled && (history_length == history_max_entries))
+***************
+*** 296,306 ****
+ /* Copy the rest of the entries, moving down one slot. Copy includes
+ trailing NULL. */
+- #if 0
+- for (i = 0; i < history_length; i++)
+- the_history[i] = the_history[i + 1];
+- #else
+ memmove (the_history, the_history + 1, history_length * sizeof (HIST_ENTRY *));
+- #endif
+
+ history_base++;
+ }
+--- 297,303 ----
+ /* Copy the rest of the entries, moving down one slot. Copy includes
+ trailing NULL. */
+ memmove (the_history, the_history + 1, history_length * sizeof (HIST_ENTRY *));
+
++ new_length = history_length;
+ history_base++;
+ }
+***************
+*** 316,320 ****
+ history_size = DEFAULT_HISTORY_INITIAL_SIZE;
+ the_history = (HIST_ENTRY **)xmalloc (history_size * sizeof (HIST_ENTRY *));
+! history_length = 1;
+ }
+ else
+--- 313,317 ----
+ history_size = DEFAULT_HISTORY_INITIAL_SIZE;
+ the_history = (HIST_ENTRY **)xmalloc (history_size * sizeof (HIST_ENTRY *));
+! new_length = 1;
+ }
+ else
+***************
+*** 326,330 ****
+ xrealloc (the_history, history_size * sizeof (HIST_ENTRY *));
+ }
+! history_length++;
+ }
+ }
+--- 323,327 ----
+ xrealloc (the_history, history_size * sizeof (HIST_ENTRY *));
+ }
+! new_length = history_length + 1;
+ }
+ }
+***************
+*** 332,337 ****
+ temp = alloc_history_entry ((char *)string, hist_inittime ());
+
+! the_history[history_length] = (HIST_ENTRY *)NULL;
+! the_history[history_length - 1] = temp;
+ }
+
+--- 329,335 ----
+ temp = alloc_history_entry ((char *)string, hist_inittime ());
+
+! the_history[new_length] = (HIST_ENTRY *)NULL;
+! the_history[new_length - 1] = temp;
+! history_length = new_length;
+ }
+
+*** ../readline-7.0/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 1
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 2
diff --git a/source/l/readline/readline-7.0-patches/readline70-003 b/source/l/readline/readline-7.0-patches/readline70-003
new file mode 100644
index 000000000..a19cae6ef
--- /dev/null
+++ b/source/l/readline/readline-7.0-patches/readline70-003
@@ -0,0 +1,40 @@
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 7.0
+Patch-ID: readline70-003
+
+Bug-Reported-by: Frédéric Brière <fbriere@fbriere.net>
+Bug-Reference-ID: <20170120180724.7ydq7fb2hsp366dj@fabul.fbriere.net>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2017-01/msg00002.html
+
+Bug-Description:
+
+Readline-7.0 uses pselect(2) to allow readline to handle signals that do not
+interrupt read(2), such as SIGALRM, before reading another character. The
+signal mask used in the pselect call did not take into account signals the
+calling application blocked before calling readline().
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-7.0-patched/input.c 2016-08-30 10:21:47.000000000 -0400
+--- input.c 2017-01-23 10:21:56.000000000 -0500
+***************
+*** 514,517 ****
+--- 514,518 ----
+ #if defined (HAVE_PSELECT)
+ sigemptyset (&empty_set);
++ sigprocmask (SIG_BLOCK, (sigset_t *)NULL, &empty_set);
+ FD_ZERO (&readfds);
+ FD_SET (fileno (stream), &readfds);
+*** ../readline-7.0/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 2
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 3
diff --git a/source/l/readline/readline.SlackBuild b/source/l/readline/readline.SlackBuild
index 169b42061..10f83fdb8 100755
--- a/source/l/readline/readline.SlackBuild
+++ b/source/l/readline/readline.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2005-2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2005-2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,6 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=readline
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
@@ -37,7 +38,6 @@ fi
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-readline
@@ -58,6 +58,20 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG
+# Determine readline patchlevel:
+PATCHLEVEL="$( cd $CWD/readline-${VERSION}-patches ; /bin/ls readline7?-??? | tail -1 | cut -f 2 -d - 2> /dev/null )"
+if [ "$PATCHLEVEL" = "" ]; then
+ PATCHLEVEL=000
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION.$PATCHLEVEL-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
cd $TMP
rm -rf readline-$VERSION
tar xvf $CWD/readline-$VERSION.tar.?z* || exit 1
@@ -85,9 +99,27 @@ CFLAGS="$SLKCFLAGS" \
--disable-static \
--build=$ARCH-slackware-linux-gnu || exit 1
-make $NUMJOBS static shared || make static shared || exit 1
+# Link with libtinfo:
+make $NUMJOBS static shared SHLIB_LIBS=-ltinfo || make static shared SHLIB_LIBS=-ltinfo || exit 1
make install DESTDIR=$PKG || exit 1
+# build rlfe (ReadLine Front-End) from examples/
+# NOTE: This will link against the currently installed libreadline!
+# Build/install this package twice whenever there is an .soname bump.
+( cd examples/rlfe || exit 1
+ CFLAGS="$SLKCFLAGS" \
+ ./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --docdir=/usr/doc/readline-$VERSION \
+ --build=$ARCH-slackware-linux-gnu || exit 1
+ make $NUMJOBS || exit 1
+ install -m 755 rlfe $PKG/usr/bin
+ cp -a README $PKG/usr/doc/readline-$VERSION/README.rlfe
+) || exit 1
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -118,5 +150,5 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
# Build the package:
cd $PKG
-/sbin/makepkg -l y -c n $TMP/readline-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/readline-$VERSION.$PATCHLEVEL-$ARCH-$BUILD.txz
diff --git a/source/l/readline/slack-desc b/source/l/readline/slack-desc
index 76d7fb96b..451ec1303 100644
--- a/source/l/readline/slack-desc
+++ b/source/l/readline/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,10 +10,10 @@ readline: readline (line input library with editing features)
readline:
readline: The GNU Readline library provides a set of functions for use by
readline: applications that allow users to edit command lines as they are typed
-readline: in. Both Emacs and vi editing modes are available. The Readline
+readline: in. Both Emacs and vi editing modes are available. The Readline
readline: library includes additional functions to maintain a list of previously
readline: entered command lines, to recall and perhaps edit those lines, and
-readline: perform csh-like history expansion on previous commands.
+readline: perform csh-like history expansion on previous commands.
readline:
readline:
readline:
diff --git a/source/l/redland/redland.SlackBuild b/source/l/redland/redland.SlackBuild
index 2e8dc2ce9..a0d70158c 100755
--- a/source/l/redland/redland.SlackBuild
+++ b/source/l/redland/redland.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007, 2013 Heinz Wiesinger, Amsterdam, NL
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,10 +25,11 @@
# Modified by Eric Hameleers <alien@slackware.com>
# No added terms and no copyright claims
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=redland
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-5}
NUMJOBS=${NUMJOBS:--j7}
@@ -36,7 +37,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -44,8 +45,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -66,7 +75,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -102,6 +110,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/redland/slack-desc b/source/l/redland/slack-desc
index f16c1d450..eff13c477 100644
--- a/source/l/redland/slack-desc
+++ b/source/l/redland/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler----------------------------------------------------|
@@ -10,10 +10,10 @@ redland: redland (RDF high-level interface library)
redland:
redland: Redland is a library that provides a high-level interface for the
redland: Resource Description Framework (RDF) allowing the RDF graph to be
-redland: parsed from XML, stored, queried and manipulated. Redland
+redland: parsed from XML, stored, queried and manipulated. Redland
redland: implements each of the RDF concepts in its own class via an object
redland: based API, reflected into the language APIs, currently C#, Java,
redland: Perl, PHP, Python, Ruby and Tcl.
redland:
-redland: Homepage: http://librdf.org/
+redland: Homepage: http://librdf.org/
redland:
diff --git a/source/l/sbc/sbc.SlackBuild b/source/l/sbc/sbc.SlackBuild
index bf5a0e874..df17b4b21 100755
--- a/source/l/sbc/sbc.SlackBuild
+++ b/source/l/sbc/sbc.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sbc
@@ -22,9 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=sbc
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -38,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -82,6 +91,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/sbc/slack-desc b/source/l/sbc/slack-desc
index 6651f38ec..fd68cf21e 100644
--- a/source/l/sbc/slack-desc
+++ b/source/l/sbc/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -10,10 +10,10 @@ sbc: sbc (Sub Band Codec for bluetooth audio output)
sbc:
sbc: SBC (Sub Band Codec) is a low-complexity audio codec used in the
sbc: Advanced Audio Distribution Profile (A2DP) bluetooth standard, but can
-sbc: also be used standalone. It uses 4 or 8 subbands, an adaptive bit
+sbc: also be used standalone. It uses 4 or 8 subbands, an adaptive bit
sbc: allocation algorithm, and adaptive block PCM quantizers.
sbc:
-sbc: Homepage: http://www.kernel.org/pub/linux/bluetooth
+sbc: Homepage: http://www.kernel.org/pub/linux/bluetooth
sbc:
sbc:
sbc:
diff --git a/source/l/sdl/sdl.SlackBuild b/source/l/sdl/sdl.SlackBuild
index 80466266f..9f886303f 100755
--- a/source/l/sdl/sdl.SlackBuild
+++ b/source/l/sdl/sdl.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2016, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,13 +20,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=sdl
VERSION=${VERSION:-$(echo SDL-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
IMAGE=${IMAGE:-$(echo SDL_image-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
MIXER=${MIXER:-$(echo SDL_mixer-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
NET=${NET:-$(echo SDL_net-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
TTF=${TTF:-$(echo SDL_ttf-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-7}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -38,6 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -54,7 +65,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-sdl
@@ -86,12 +96,14 @@ CFLAGS="$SLKCFLAGS" \
--disable-esd \
--enable-shared=yes \
--enable-static=no \
- --disable-x11-shared
+ --disable-x11-shared || exit 1
make $NUMJOBS || make || exit 1
# Spam /, for mixer/image later on:
-make install
+make install || exit 1
+# Later we will need to remove .la files installed to the system by the above.
+
# install to package:
make install DESTDIR=$PKG || exit 1
mkdir -p $PKG/usr/doc/SDL-$VERSION/html
@@ -108,7 +120,7 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cd $TMP
rm -rf SDL_image-$IMAGE
tar xf $CWD/SDL_image-$IMAGE.tar.?z* || exit 1
-cd SDL_image-$IMAGE
+cd SDL_image-$IMAGE || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -126,7 +138,7 @@ CFLAGS="$SLKCFLAGS" \
--enable-static=no \
--enable-jpg-shared=no \
--enable-png-shared=no \
- --enable-tif-shared=no
+ --enable-tif-shared=no || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -139,23 +151,24 @@ cp -a \
cd $TMP
rm -rf SDL_mixer-$MIXER
tar xf $CWD/SDL_mixer-$MIXER.tar.?z* || exit 1
-cd SDL_mixer-$MIXER
+cd SDL_mixer-$MIXER || exit 1
# Fix default library path. Don't use /usr/local, and use lib64 where needed:
sed -i "s,usr/local/lib,usr/lib${LIBDIRSUFFIX},g" timidity/config.h
# Install patched static libmikmod:
-unzip libmikmod-3.1.12.zip
-( cd libmikmod-3.1.12.patched
+tar xf $CWD/libmikmod-3.1.20.tar.xz
+( cd libmikmod-3.1.20
+ CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr/local \
--libdir=/usr/local/lib${LIBDIRSUFFIX} \
--with-pic \
--enable-shared=no \
- --enable-static=yes
+ --enable-static=yes || exit 1
make $NUMJOBS || make || exit 1
- make install
-)
+ make install || exit 1
+) || exit 1
chown -R root:root .
find . \
@@ -171,7 +184,7 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--enable-music-mod \
--enable-shared=yes \
- --enable-static=no
+ --enable-static=no || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -188,7 +201,7 @@ sed -i -e "s/ -lmikmod//g" $PKG/usr/lib${LIBDIRSUFFIX}/libSDL_mixer.la
cd $TMP
rm -rf SDL_net-$NET
tar xf $CWD/SDL_net-$NET.tar.?z* || exit 1
-cd SDL_net-$NET
+cd SDL_net-$NET || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -202,7 +215,7 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--enable-shared=yes \
- --enable-static=no
+ --enable-static=no || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -216,7 +229,7 @@ cp -a \
cd $TMP
rm -rf SDL_ttf-$TTF
tar xf $CWD/SDL_ttf-$TTF.tar.?z* || exit 1
-cd SDL_ttf-$TTF
+cd SDL_ttf-$TTF || exit 1
#zcat $CWD/SDL_ttf-2.0.8-noftinternals.diff.gz | patch -p1 --verbose || exit 1
zcat $CWD/SDL_ttf.shaded.text.diff.gz | patch -p1 --verbose || exit 1
@@ -234,7 +247,7 @@ CFLAGS="$SLKCFLAGS" \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--enable-shared=yes \
- --enable-static=no
+ --enable-static=no || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
@@ -244,6 +257,13 @@ cp -a \
CHANGES COPYING README \
$PKG/usr/doc/SDL_ttf-$TTF
+# Remove .la files from the package and the system (due to make install):
+pushd $PKG
+ for lafile in usr/lib${LIBDIRSUFFIX}/*.la ; do
+ rm -f ${lafile} /${lafile}
+ done
+popd
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/sdl/slack-desc b/source/l/sdl/slack-desc
index 1d5d5c011..3ee1d4571 100644
--- a/source/l/sdl/slack-desc
+++ b/source/l/sdl/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -12,8 +12,8 @@ sdl: This is the Simple DirectMedia Layer, a generic API that provides low
sdl: level access to audio, keyboard, mouse, joystick, 3D hardware via
sdl: OpenGL, and 2D framebuffer across multiple platforms.
sdl:
-sdl: SDL links against alsa-lib, arts, audiofile, esound, and the X11
-sdl: libraries. Make sure all of these are installed if you're planning to
-sdl: use SDL (a full installation will cover all of the prerequisites).
+sdl: SDL links against alsa-lib, audiofile, esound, and the X11 libraries.
+sdl: Make sure all of these are installed if you're planning to use SDL
+sdl: (a full installation will cover all of the prerequisites).
sdl:
sdl:
diff --git a/source/l/serf/serf.SlackBuild b/source/l/serf/serf.SlackBuild
index 2d6f533f0..e79ca53b1 100755
--- a/source/l/serf/serf.SlackBuild
+++ b/source/l/serf/serf.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for serf
# Copyright 2014 Andrzej Telszewski, Sabadell
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=serf
VERSION=${VERSION:-$(echo serf-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -37,9 +39,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j6}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-serf
diff --git a/source/l/serf/slack-desc b/source/l/serf/slack-desc
index add9fb4ed..4e31ed2ec 100644
--- a/source/l/serf/slack-desc
+++ b/source/l/serf/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -15,5 +15,5 @@ serf: * SSL/TLS support, full HTTP pipelining,
serf: * multiple authentication modes (Basic, Digest, Kerberos/NTLM),
serf: * zero-copy support for increased throughput.
serf:
-serf: Homepage: http://serf.apache.org/
+serf: Homepage: http://serf.apache.org/
serf:
diff --git a/source/l/sg3_utils/sg3_utils.SlackBuild b/source/l/sg3_utils/sg3_utils.SlackBuild
index 9a128d966..4cb7d1fd3 100755
--- a/source/l/sg3_utils/sg3_utils.SlackBuild
+++ b/source/l/sg3_utils/sg3_utils.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sg3_utils
# Copyright 2010 Robby Workman Northport, AL, USA
-# Copyright 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,9 +23,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=sg3_utils
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -41,6 +43,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -63,7 +73,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -89,11 +98,14 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
- --build=$TARGET
+ --build=$TARGET || exit 1
make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/sg3_utils/slack-desc b/source/l/sg3_utils/slack-desc
index b086caf68..6635f7e26 100644
--- a/source/l/sg3_utils/slack-desc
+++ b/source/l/sg3_utils/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/shared-desktop-ontologies/shared-desktop-ontologies.SlackBuild b/source/l/shared-desktop-ontologies/shared-desktop-ontologies.SlackBuild
index af2aaeb8a..8f196aae5 100755
--- a/source/l/shared-desktop-ontologies/shared-desktop-ontologies.SlackBuild
+++ b/source/l/shared-desktop-ontologies/shared-desktop-ontologies.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=shared-desktop-ontologies
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -31,7 +32,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -39,8 +40,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -56,7 +65,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/$PKGNAM
diff --git a/source/l/shared-desktop-ontologies/slack-desc b/source/l/shared-desktop-ontologies/slack-desc
index 18412ab50..11c874f38 100644
--- a/source/l/shared-desktop-ontologies/slack-desc
+++ b/source/l/shared-desktop-ontologies/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-------------------------------------------------------|
diff --git a/source/l/shared-mime-info/shared-mime-info.SlackBuild b/source/l/shared-mime-info/shared-mime-info.SlackBuild
index 91ff05a0a..2157d91f6 100755
--- a/source/l/shared-mime-info/shared-mime-info.SlackBuild
+++ b/source/l/shared-mime-info/shared-mime-info.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=shared-mime-info
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -37,6 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
diff --git a/source/l/shared-mime-info/slack-desc b/source/l/shared-mime-info/slack-desc
index deea912c6..f41003398 100644
--- a/source/l/shared-mime-info/slack-desc
+++ b/source/l/shared-mime-info/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -14,6 +14,6 @@ shared-mime-info: The freedesktop.org shared MIME database spec.
shared-mime-info: The merged GNOME and KDE databases, in the new format.
shared-mime-info: The update-mime-database command, used to install new MIME data.
shared-mime-info:
-shared-mime-info: Homepage: https://freedesktop.org/wiki/Software/shared-mime-info/
+shared-mime-info: Homepage: https://freedesktop.org/wiki/Software/shared-mime-info/
shared-mime-info:
shared-mime-info:
diff --git a/source/l/sip/sip.SlackBuild b/source/l/sip/sip.SlackBuild
index b75290cc9..c62362f63 100755
--- a/source/l/sip/sip.SlackBuild
+++ b/source/l/sip/sip.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2008 Aleksandar Samardzic <asamardzic@gmail.com>
-# Copyright 2008, 2009, 2010, 2011 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,10 +24,11 @@
# Modified by Robby Workman <rworkman@slackware.com>
# Modified by Eric Hameleers <alien@slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=sip
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -43,6 +44,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION |tr - _)-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
@@ -56,9 +65,11 @@ else
fi
PYTHONVER=$(python -V 2>&1 | cut -f 2 -d' ' | cut -f 1-2 -d.)
-PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print get_python_lib()' )
+PYTHONLIB=$( python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
+
+PYTHON3VER=$(python3 -V 2>&1 | cut -f 2 -d' ' | cut -f 1-2 -d.)
+PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' )
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -66,7 +77,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
@@ -75,12 +86,22 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+python3 configure.py \
+ -b "/usr/bin" \
+ -d "$PYTHON3LIB" \
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" || exit 1
+
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+mv $PKG/usr/bin/sip $PKG/usr/bin/sip3
+
python configure.py \
-b "/usr/bin" \
-d "$PYTHONLIB" \
- -e "/usr/include/python$PYTHONVER" \
CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS"
+ CXXFLAGS="$SLKCFLAGS" || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/l/sip/slack-desc b/source/l/sip/slack-desc
index d2fae243e..352824fca 100644
--- a/source/l/sip/slack-desc
+++ b/source/l/sip/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
sip: SIP (a tool for generating Python bindings)
sip:
sip: SIP is a tool that makes it very easy to create Python bindings for
-sip: C and C++ libraries. It was originally developed to create PyQt,
+sip: C and C++ libraries. It was originally developed to create PyQt,
sip: the Python bindings for the Qt toolkit, but can be used to create
sip: bindings for any C or C++ library.
sip:
-sip: Homepage: http://www.riverbankcomputing.co.uk/software/sip/
+sip: Homepage: http://www.riverbankcomputing.co.uk/software/sip/
sip:
sip:
sip:
diff --git a/source/l/slang/slack-desc b/source/l/slang/slack-desc
index f821c96cc..7628af910 100644
--- a/source/l/slang/slack-desc
+++ b/source/l/slang/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,10 +10,10 @@ slang: slang (S-Lang interpreter version 2)
slang:
slang: S-Lang is an interpreted language that was designed from the start
slang: to be easily embedded into a program to provide it with a powerful
-slang: extension language. S-Lang is also a programmer's library that
+slang: extension language. S-Lang is also a programmer's library that
slang: permits a programmer to develop sophisticated platform-independent
-slang: software. In addition to providing the S-Lang extension language,
+slang: software. In addition to providing the S-Lang extension language,
slang: the library provides facilities for screen management, keymaps,
slang: and low-level terminal I/O.
slang:
-slang:
+slang: Homepage: http://www.jedsoft.org/slang/
diff --git a/source/l/slang/slang.SlackBuild b/source/l/slang/slang.SlackBuild
index caaa320df..2f7b90763 100755
--- a/source/l/slang/slang.SlackBuild
+++ b/source/l/slang/slang.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2015, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,28 +20,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=slang
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
# This doesn't handle multiple jobs well
NUMJOBS=${NUMJOBS:-" -j1 "}
# -fno-tree-dse is needed avoid optimization bugs
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -fno-tree-dse -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -fno-tree-dse -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2 -fno-tree-dse"
@@ -54,7 +63,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-slang
rm -rf $PKG
@@ -62,7 +70,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf slang-$VERSION
-tar xvf $CWD/slang-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/slang-$VERSION.tar.?z || exit 1
cd slang-$VERSION || exit 1
chown -R root:root .
find . \
@@ -79,14 +87,16 @@ CFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--includedir=/usr/include \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
make -j4 elf || exit 1
make install-elf DESTDIR=$PKG || exit 1
-chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/libslang.so.$VERSION
+# Make sure shared libraries are executable:
+chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/lib*.so.*
+
# --disable-static doesn't always work, but this is guaranteed:
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.a
diff --git a/source/l/slang1/slack-desc b/source/l/slang1/slack-desc
index 502cd5207..298cc5145 100644
--- a/source/l/slang1/slack-desc
+++ b/source/l/slang1/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,9 +10,9 @@ slang1: slang (S-Lang interpreter version 1)
slang1:
slang1: S-Lang is an interpreted language that was designed from the start
slang1: to be easily embedded into a program to provide it with a powerful
-slang1: extension language. S-Lang is also a programmer's library that
+slang1: extension language. S-Lang is also a programmer's library that
slang1: permits a programmer to develop sophisticated platform-independent
-slang1: software. In addition to providing the S-Lang extension language,
+slang1: software. In addition to providing the S-Lang extension language,
slang1: the library provides facilities for screen management, keymaps,
slang1: and low-level terminal I/O.
slang1:
diff --git a/source/l/slang1/slang1.SlackBuild b/source/l/slang1/slang1.SlackBuild
index 9eb8472fa..1344fd393 100755
--- a/source/l/slang1/slang1.SlackBuild
+++ b/source/l/slang1/slang1.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,35 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=slang1
VERSION=${VERSION:-1.4.9}
#DOCV=${DOCV:-2.0.4}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +61,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-slang1
rm -rf $PKG
diff --git a/source/l/soprano/slack-desc b/source/l/soprano/slack-desc
index 44327e074..1b3dca07e 100644
--- a/source/l/soprano/slack-desc
+++ b/source/l/soprano/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
soprano: soprano (C++/Qt4 framework for RDF data)
soprano:
soprano: Soprano (formally known as QRDF) is a library which provides
-soprano: a nice Qt interface to RDF storage solutions. It has a modular
+soprano: a nice Qt interface to RDF storage solutions. It has a modular
soprano: structure which allows to replace the actual RDF storage
soprano: implementation used.
soprano:
-soprano: Homepage: http://soprano.sourceforge.net/
+soprano: Homepage: http://soprano.sourceforge.net/
soprano:
soprano:
soprano:
diff --git a/source/l/soprano/soprano.SlackBuild b/source/l/soprano/soprano.SlackBuild
index 10dcb82d7..4594d3c46 100755
--- a/source/l/soprano/soprano.SlackBuild
+++ b/source/l/soprano/soprano.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007-2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,11 @@
# Modified 2012 by Eric Hameleers <alien at slackware.com> for ARM port.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=soprano
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -34,7 +35,7 @@ NUMJOBS=${NUMJOBS:--j7}
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
armv7hl) export ARCH=$MARCH ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
@@ -42,8 +43,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -59,7 +68,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-soprano
diff --git a/source/l/sound-theme-freedesktop/slack-desc b/source/l/sound-theme-freedesktop/slack-desc
index 78db32b43..eecfcf331 100644
--- a/source/l/sound-theme-freedesktop/slack-desc
+++ b/source/l/sound-theme-freedesktop/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/sound-theme-freedesktop/sound-theme-freedesktop.SlackBuild b/source/l/sound-theme-freedesktop/sound-theme-freedesktop.SlackBuild
index e9ab1b542..1ec741040 100755
--- a/source/l/sound-theme-freedesktop/sound-theme-freedesktop.SlackBuild
+++ b/source/l/sound-theme-freedesktop/sound-theme-freedesktop.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sound-theme-freedesktop
@@ -22,13 +22,22 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=sound-theme-freedesktop
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
diff --git a/source/l/speex/slack-desc b/source/l/speex/slack-desc
new file mode 100644
index 000000000..3f4f526dc
--- /dev/null
+++ b/source/l/speex/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+speex: speex (low-bitrate voice audio codec)
+speex:
+speex: Speex is a patent-free, Open Source/Free Software voice codec. Unlike
+speex: other codecs like MP3 and Ogg Vorbis, Speex is designed to compress
+speex: voice at bitrates in the 2-45 kbps range. Possible applications
+speex: include VoIP, internet audio streaming, archiving of speech data
+speex: (e.g. voice mail), and audio books. It is meant to be complementary
+speex: to the Ogg Vorbis codec.
+speex:
+speex: Homepage: https://www.speex.org/
+speex:
diff --git a/source/l/speex/speex.SlackBuild b/source/l/speex/speex.SlackBuild
new file mode 100755
index 000000000..63d72adf6
--- /dev/null
+++ b/source/l/speex/speex.SlackBuild
@@ -0,0 +1,149 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=speex
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | rev | cut -f 2- -d -)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$(echo $VERSION | tr '-' '_')-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --docdir=/usr/doc/${PKGNAM}-$VERSION \
+ --disable-static \
+ --enable-binaries \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* ChangeLog NEWS* README* TODO \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$(echo $VERSION | tr '-' '_')-$ARCH-$BUILD.txz
+
diff --git a/source/l/speexdsp/slack-desc b/source/l/speexdsp/slack-desc
index 1726421e0..493ba96c7 100644
--- a/source/l/speexdsp/slack-desc
+++ b/source/l/speexdsp/slack-desc
@@ -2,7 +2,7 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ speexdsp: SpeexDSP (DSP library)
speexdsp:
speexdsp: SpeexDSP is a patent-free, Open Source/Free Software DSP library.
speexdsp:
-speexdsp: Homepage: http://www.speex.org/
+speexdsp: Homepage: http://www.speex.org/
speexdsp:
speexdsp:
speexdsp:
diff --git a/source/l/speexdsp/speexdsp.SlackBuild b/source/l/speexdsp/speexdsp.SlackBuild
index 24cec20d7..84f85f916 100755
--- a/source/l/speexdsp/speexdsp.SlackBuild
+++ b/source/l/speexdsp/speexdsp.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -22,13 +22,14 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=speexdsp
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -44,6 +45,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -84,6 +93,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/source/l/startup-notification/slack-desc b/source/l/startup-notification/slack-desc
index ba4e2a5ff..a06fa4a5b 100644
--- a/source/l/startup-notification/slack-desc
+++ b/source/l/startup-notification/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/startup-notification/startup-notification.SlackBuild b/source/l/startup-notification/startup-notification.SlackBuild
index e749601f0..e9f0eec88 100755
--- a/source/l/startup-notification/startup-notification.SlackBuild
+++ b/source/l/startup-notification/startup-notification.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,25 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=startup-notification
VERSION=${VERSION:-$(echo startup-notification-*.tar.?z* | cut -d - -f 3 | rev | cut -f 3- -d . | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:-" -j7 "}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-startup-notification
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf startup-notification-$VERSION
tar xvf $CWD/startup-notification-$VERSION.tar.xz || exit 1
-cd startup-notification-$VERSION
+cd startup-notification-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -75,11 +83,14 @@ CFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var/lib \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/strigi/slack-desc b/source/l/strigi/slack-desc
index 16dda7ee6..adc25f5ff 100644
--- a/source/l/strigi/slack-desc
+++ b/source/l/strigi/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
strigi: strigi (fast and light desktop search engine)
strigi:
-strigi: Strigi is a fast and light desktop search engine. It can handle a
+strigi: Strigi is a fast and light desktop search engine. It can handle a
strigi: large range of file formats such as emails, office documents, media
-strigi: files, and file archives. It can index files that are embedded in
-strigi: other files. This means email attachments and files in zip files
+strigi: files, and file archives. It can index files that are embedded in
+strigi: other files. This means email attachments and files in zip files
strigi: are searchable as if they were normal files on your harddisk.
strigi:
-strigi: Homepage: http://strigi.sourceforge.net/
+strigi: Homepage: http://strigi.sourceforge.net/
strigi:
strigi:
diff --git a/source/l/strigi/strigi.SlackBuild b/source/l/strigi/strigi.SlackBuild
index cefa4242d..74824e2f9 100755
--- a/source/l/strigi/strigi.SlackBuild
+++ b/source/l/strigi/strigi.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007-2008 Robby Workman, Northport, Alabama, USA
-# Copyright 2008, 2009, 2010, 2011, 2012, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2011, 2012, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,11 @@
# Modified 2012 by Eric Hameleers <alien at slackware.com> for ARM port.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=strigi
VERSION=${VERSION:-0.7.8}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
NUMJOBS=${NUMJOBS:--j7}
@@ -42,24 +43,31 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686 -std=gnu++98"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -std=gnu++98"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -fPIC -std=gnu++98"
LIBDIRSUFFIX="64"
elif [ "$ARCH" = "armv7hl" ]; then
- SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
+ SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16 -std=gnu++98"
LIBDIRSUFFIX=""
else
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -std=gnu++98"
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -93,6 +101,7 @@ cd build
-DENABLE_INOTIFY:BOOL=ON \
-DENABLE_DBUS:BOOL=ON \
-DENABLE_EXPAT:BOOL=ON \
+ -DENABLE_FFMPEG:BOOL=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
diff --git a/source/l/svgalib/slack-desc b/source/l/svgalib/slack-desc
index 9205ef1b0..bf3453553 100644
--- a/source/l/svgalib/slack-desc
+++ b/source/l/svgalib/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
svgalib: svgalib (A low level graphics library for Linux)
svgalib:
svgalib: This is a low level graphics library for Linux, originally based on
-svgalib: VGAlib 1.2 by Tommy Frandsen. Support for many more chipsets has
+svgalib: VGAlib 1.2 by Tommy Frandsen. Support for many more chipsets has
svgalib: been added.
svgalib:
svgalib: svgalib is currently maintained by Matan Ziv-Av.
diff --git a/source/l/svgalib/svgalib-1.9.25-quickmath-h-redefinitions.patch b/source/l/svgalib/svgalib-1.9.25-quickmath-h-redefinitions.patch
new file mode 100644
index 000000000..c713489ae
--- /dev/null
+++ b/source/l/svgalib/svgalib-1.9.25-quickmath-h-redefinitions.patch
@@ -0,0 +1,91 @@
+diff -Naur svgalib-1.9.25.orig/threeDKit/quickmath.h svgalib-1.9.25/threeDKit/quickmath.h
+--- svgalib-1.9.25.orig/threeDKit/quickmath.h 2005-08-03 15:07:32.000000000 +0200
++++ svgalib-1.9.25/threeDKit/quickmath.h 2015-08-03 19:45:12.864161135 +0200
+@@ -76,76 +76,17 @@
+
+ #else
+
+-extern inline double fsqr (double x)
+-{
+- return x * x;
+-}
+-
+-extern inline int lsqr (int x)
+-{
+- return (int) x *x;
+-}
+-
+-extern inline double fmax (double a, double b)
+-{
+- return max (a, b);
+-}
+-
+-extern inline double fmin (double a, double b)
+-{
+- return min (a, b);
+-}
+-
+-extern inline double fsgn (double a)
+-{
+- return (a == 0.0 ? 0.0 : (a > 0.0 ? 1.0 : -1.0));
+-}
+-
+-extern inline double dot (Vec a, Vec b)
+-{
+- return a.x * b.x + a.y * b.y + a.z * b.z;
+-}
+-
+-extern inline Vec cross (Vec a, Vec b)
+-{
+- Vec c;
+- c.x = a.y * b.z - a.z * b.y;
+- c.y = a.z * b.x - a.x * b.z;
+- c.z = a.x * b.y - a.y * b.x;
+- return c;
+-}
+-
+-extern inline Vec plus (Vec a, Vec b)
+-{
+- Vec c;
+- c.x = a.x + b.x;
+- c.y = a.y + b.y;
+- c.z = a.z + b.z;
+- return c;
+-}
+-
+-extern inline Vec minus (Vec a, Vec b)
+-{
+- Vec c;
+- c.x = a.x - b.x;
+- c.y = a.y - b.y;
+- c.z = a.z - b.z;
+- return c;
+-}
+-
+-extern inline Vec times (Vec a, double f)
+-{
+- Vec c;
+- c.x = a.x * f;
+- c.y = a.y * f;
+- c.z = a.z * f;
+- return c;
+-}
+-
+-extern inline double norm (Vec a)
+-{
+- return sqrt (sqr (a.x) + sqr (a.y) + sqr (a.z));
+-}
++extern inline double fsqr (double x);
++extern inline int lsqr (int x);
++extern inline double fmax (double a, double b);
++extern inline double fmin (double a, double b);
++extern inline double fsgn (double a);
++extern inline double dot (Vec a, Vec b);
++extern inline Vec cross (Vec a, Vec b);
++extern inline Vec plus (Vec a, Vec b);
++extern inline Vec minus (Vec a, Vec b);
++extern inline Vec times (Vec a, double f);
++extern inline double norm (Vec a);
+
+ #endif
+
diff --git a/source/l/svgalib/svgalib.SlackBuild b/source/l/svgalib/svgalib.SlackBuild
index 1e95669f0..0400b2fa0 100755
--- a/source/l/svgalib/svgalib.SlackBuild
+++ b/source/l/svgalib/svgalib.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,23 +20,32 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=svgalib
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -49,7 +58,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-svgalib
rm -rf $PKG
@@ -80,6 +88,7 @@ zcat $CWD/svgalib-1.9.25-kernel-2.6.26.diff.gz | patch -p1 --verbose || exit 1
zcat $CWD/svgalib.nohelper.diff.gz | patch -p1 --verbose || exit 1
zcat $CWD/svgalib-1.9.25-round_gtf_gtfcalc_c.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/svgalib-1.9.25-vga_getmodenumber.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/svgalib-1.9.25-quickmath-h-redefinitions.patch.gz | patch -p1 --verbose || exit 1
# Build and install - spamming your partition first...:
make install NO_HELPER=y || exit 1
diff --git a/source/l/system-config-printer/slack-desc b/source/l/system-config-printer/slack-desc
index fea4646e9..c1b638a71 100644
--- a/source/l/system-config-printer/slack-desc
+++ b/source/l/system-config-printer/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
system-config-printer: system-config-printer (CUPS printer administration tool)
system-config-printer:
system-config-printer: The purpose of the tool is to configure a CUPS server (often the local
-system-config-printer: machine) using the CUPS API. The tool is written in Python, using
+system-config-printer: machine) using the CUPS API. The tool is written in Python, using
system-config-printer: pygtk for the graphical parts and Python bindings (pycups) for the
-system-config-printer: CUPS API. It is largely the same as using the CUPS web interface for
+system-config-printer: CUPS API. It is largely the same as using the CUPS web interface for
system-config-printer: configuring printers, but has the advantage of being a native
system-config-printer: application rather than a web page.
system-config-printer:
-system-config-printer: Home: http://cyberelk.net/tim/software/system-config-printer/
+system-config-printer: Home: https://github.com/zdohnal/system-config-printer
system-config-printer:
diff --git a/source/l/system-config-printer/system-config-printer.SlackBuild b/source/l/system-config-printer/system-config-printer.SlackBuild
index bea868560..794a1c4bf 100755
--- a/source/l/system-config-printer/system-config-printer.SlackBuild
+++ b/source/l/system-config-printer/system-config-printer.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2010, 2011, 2012, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -23,10 +23,11 @@
# SUCH DAMAGE.
# -----------------------------------------------------------------------------
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=system-config-printer
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-3}
NUMJOBS=${NUMJOBS:" -j7 "}
@@ -42,6 +43,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -64,7 +73,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -72,7 +80,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
@@ -83,6 +91,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+zcat $CWD/system-config-printer.auth.dialog.2766d74a.patch.gz | patch -p1 --verbose || exit 1
+
# Configure:
LDFLAGS="$SLKLDFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -97,11 +107,18 @@ CFLAGS="$SLKCFLAGS" \
--with-udev-rules \
--program-prefix= \
--program-suffix= \
- --build=$TARGET
+ --build=$TARGET || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG || exit 1
+
+# install python2 cupshelpers
+python setup.py install --root=$PKG || exit 1
+
+# Generate .pyc files
+python3 -m compileall "${PKG}/usr/share/system-config-printer"
+python3 -O -m compileall "${PKG}/usr/share/system-config-printer"
# Move the udev files to the usual Slackware location:
mkdir -p $PKG/lib
@@ -109,7 +126,7 @@ mv $PKG/etc/udev $PKG/lib/
# Slackware does not use PAM. Instead, your user must be in group 'lp'.
sed -i -e 's/at_console="true"/group="lp"/g' \
- $PKG/etc/dbus-1/system.d/newprinternotification.conf
+ $PKG/etc/dbus-1/system.d/com.redhat.NewPrinterNotification.conf
# Don't clobber the configuration file:
mv $PKG/etc/dbus-1/system.d/com.redhat.NewPrinterNotification.conf{,.new}
diff --git a/source/l/system-config-printer/system-config-printer.auth.dialog.2766d74a.patch b/source/l/system-config-printer/system-config-printer.auth.dialog.2766d74a.patch
new file mode 100644
index 000000000..1c67f1a56
--- /dev/null
+++ b/source/l/system-config-printer/system-config-printer.auth.dialog.2766d74a.patch
@@ -0,0 +1,28 @@
+From 2766d74a98e44693f5e966d541a6303b966c088b Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Thu, 8 Feb 2018 17:01:01 +0100
+Subject: [PATCH] Fix constructing the auth dialog
+
+47973c80 (Remove deprecated Gtk objects) broke the auth dialog.
+
+Fixes https://bugs.archlinux.org/task/57364.
+---
+ authconn.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/authconn.py b/authconn.py
+index 2a645dccf..0f3021cb3 100644
+--- a/authconn.py
++++ b/authconn.py
+@@ -78,11 +78,9 @@ def __init__ (self, title=None, parent=None,
+ field = auth_info_required[i]
+ label = Gtk.Label (label=_(self.AUTH_FIELD.get (field, field)))
+ label.set_alignment (0, 0.5)
+- grid.attach (label, 0, 1, i, i + 1)
+ grid.attach (label, 0, i, 1, 1)
+ entry = Gtk.Entry ()
+ entry.set_visibility (field != 'password')
+- grid.attach (entry, 1, 2, i, i + 1, 0, 0)
+ grid.attach (entry, 1, i, 1, 1)
+ self.field_entry.append (entry)
+
diff --git a/source/l/t1lib/slack-desc b/source/l/t1lib/slack-desc
index 293af0cb9..c1700b3a5 100644
--- a/source/l/t1lib/slack-desc
+++ b/source/l/t1lib/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
@@ -10,7 +10,7 @@ t1lib: t1lib (Type 1 font rasterizer library)
t1lib:
t1lib: t1lib is a library distributed under the GNU General Public Library
t1lib: License for generating character and string glyphs from Adobe Type 1
-t1lib: fonts under UNIX. t1lib uses most of the code of the X11 rasterizer
+t1lib: fonts under UNIX. t1lib uses most of the code of the X11 rasterizer
t1lib: donated by IBM to the X11 project.
t1lib:
t1lib:
diff --git a/source/l/t1lib/t1lib.SlackBuild b/source/l/t1lib/t1lib.SlackBuild
index dc6c69b01..8115f453b 100755
--- a/source/l/t1lib/t1lib.SlackBuild
+++ b/source/l/t1lib/t1lib.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2011, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,23 +20,32 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=t1lib
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -48,7 +57,6 @@ fi
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-t1lib
rm -rf $PKG
@@ -57,7 +65,7 @@ mkdir -p $TMP $PKG/usr
cd $TMP
rm -rf t1lib-$VERSION
tar xvf $CWD/t1lib-$VERSION.tar.?z* || exit 1
-cd t1lib-$VERSION
+cd t1lib-$VERSION || exit 1
# Apply Debian's patch since upstream seems inactive:
zcat $CWD/t1lib_5.1.2-3.5.diff.gz | patch -p1 --verbose || exit 1
@@ -85,11 +93,14 @@ CFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--enable-static=no \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install prefix=$PKG/usr libdir=$PKG/usr/lib${LIBDIRSUFFIX} || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/taglib-extras/slack-desc b/source/l/taglib-extras/slack-desc
index 3af63b48d..84a5daaaf 100644
--- a/source/l/taglib-extras/slack-desc
+++ b/source/l/taglib-extras/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/taglib-extras/taglib-extras-0.1-multilib-1.patch b/source/l/taglib-extras/taglib-extras-0.1-multilib-1.patch
new file mode 100644
index 000000000..ad67e17cf
--- /dev/null
+++ b/source/l/taglib-extras/taglib-extras-0.1-multilib-1.patch
@@ -0,0 +1,20 @@
+diff -up taglib-extras-0.1/taglib-extras-config.cmake.multilib taglib-extras-0.1/taglib-extras-config.cmake
+--- taglib-extras-0.1/taglib-extras-config.cmake.multilib 2009-03-12 11:12:04.000000000 -0500
++++ taglib-extras-0.1/taglib-extras-config.cmake 2009-03-23 07:57:25.000000000 -0500
+@@ -16,7 +16,6 @@ EOH
+
+ prefix=${CMAKE_INSTALL_PREFIX}
+ exec_prefix=${CMAKE_INSTALL_PREFIX}
+-libdir=${LIB_INSTALL_DIR}
+ includedir=${INCLUDE_INSTALL_DIR}
+
+ flags=""
+@@ -29,7 +28,7 @@ while test $# -gt 0
+ do
+ case $1 in
+ --libs)
+- flags="$flags -L$libdir -ltag-extras"
++ flags="$flags -ltag-extras"
+ ;;
+ --cflags)
+ flags="$flags -I$includedir/taglib-extras"
diff --git a/source/l/taglib-extras/taglib-extras-1.0.1-taglib_ver.patch b/source/l/taglib-extras/taglib-extras-1.0.1-taglib_ver.patch
new file mode 100644
index 000000000..4f5d18708
--- /dev/null
+++ b/source/l/taglib-extras/taglib-extras-1.0.1-taglib_ver.patch
@@ -0,0 +1,25 @@
+diff -up taglib-extras-1.0.1/cmake/modules/FindTaglib.cmake.taglib taglib-extras-1.0.1/cmake/modules/FindTaglib.cmake
+--- taglib-extras-1.0.1/cmake/modules/FindTaglib.cmake.taglib 2009-03-13 16:40:24.000000000 -0500
++++ taglib-extras-1.0.1/cmake/modules/FindTaglib.cmake 2016-02-14 09:06:57.209838045 -0600
+@@ -29,10 +29,10 @@ if(TAGLIBCONFIG_EXECUTABLE)
+
+ exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_VERSION)
+
+- if(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}")
++ if("${TAGLIB_MIN_VERSION}" VERSION_GREATER TAGLIB_VERSION)
+ message(STATUS "TagLib version not found: version searched :${TAGLIB_MIN_VERSION}, found ${TAGLIB_VERSION}")
+ set(TAGLIB_FOUND FALSE)
+- else(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}")
++ else("${TAGLIB_MIN_VERSION}" VERSION_GREATER TAGLIB_VERSION)
+
+ exec_program(${TAGLIBCONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE TAGLIB_LIBRARIES)
+
+@@ -42,7 +42,7 @@ if(TAGLIBCONFIG_EXECUTABLE)
+ set(TAGLIB_FOUND TRUE)
+ endif(TAGLIB_LIBRARIES AND TAGLIB_CFLAGS)
+ string(REGEX REPLACE " *-I" ";" TAGLIB_INCLUDES "${TAGLIB_CFLAGS}")
+- endif(TAGLIB_VERSION STRLESS "${TAGLIB_MIN_VERSION}")
++ endif("${TAGLIB_MIN_VERSION}" VERSION_GREATER TAGLIB_VERSION)
+ mark_as_advanced(TAGLIB_CFLAGS TAGLIB_LIBRARIES TAGLIB_INCLUDES)
+
+ else(TAGLIBCONFIG_EXECUTABLE)
diff --git a/source/l/taglib-extras/taglib-extras-1.0.1-version.patch b/source/l/taglib-extras/taglib-extras-1.0.1-version.patch
new file mode 100644
index 000000000..911b9178e
--- /dev/null
+++ b/source/l/taglib-extras/taglib-extras-1.0.1-version.patch
@@ -0,0 +1,12 @@
+diff -up taglib-extras-1.0.1/CMakeLists.txt.version taglib-extras-1.0.1/CMakeLists.txt
+--- taglib-extras-1.0.1/CMakeLists.txt.version 2009-09-17 14:31:50.000000000 -0500
++++ taglib-extras-1.0.1/CMakeLists.txt 2009-09-21 19:40:38.076666807 -0500
+@@ -29,7 +29,7 @@ endif (WIN32)
+
+ set(TAGLIB-EXTRAS_LIB_MAJOR_VERSION "1")
+ set(TAGLIB-EXTRAS_LIB_MINOR_VERSION "0")
+-set(TAGLIB-EXTRAS_LIB_PATCH_VERSION "0")
++set(TAGLIB-EXTRAS_LIB_PATCH_VERSION "1")
+
+ set(TAGLIB-EXTRAS_LIB_VERSION_STRING "${TAGLIB-EXTRAS_LIB_MAJOR_VERSION}.${TAGLIB-EXTRAS_LIB_MINOR_VERSION}.${TAGLIB-EXTRAS_LIB_PATCH_VERSION}")
+
diff --git a/source/l/taglib-extras/taglib-extras.SlackBuild b/source/l/taglib-extras/taglib-extras.SlackBuild
index 127a70cbe..8ba6ed46e 100755
--- a/source/l/taglib-extras/taglib-extras.SlackBuild
+++ b/source/l/taglib-extras/taglib-extras.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2009 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2009, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,24 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=taglib-extras
VERSION=${VERSION:-1.0.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -50,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=/tmp/package-taglib-extras
@@ -67,6 +76,10 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+zcat $CWD/taglib-extras-0.1-multilib-1.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/taglib-extras-1.0.1-taglib_ver.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/taglib-extras-1.0.1-version.patch.gz | patch -p1 --verbose || exit 1
+
mkdir -p build
cd build
cmake \
@@ -77,9 +90,9 @@ cd build
-DMAN_INSTALL_DIR=/usr/man \
-DSYSCONF_INSTALL_DIR=/etc/kde \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- ..
+ .. || exit 1
make $NUMJOBS || make || exit 1
- make install DESTDIR=$PKG
+ make install DESTDIR=$PKG || exit 1
cd -
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/source/l/taglib/slack-desc b/source/l/taglib/slack-desc
index 8331c5d0a..b615b1804 100644
--- a/source/l/taglib/slack-desc
+++ b/source/l/taglib/slack-desc
@@ -1,15 +1,15 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
taglib: taglib (audio meta-data library)
taglib:
taglib: TagLib is a library for reading and editing the meta-data of several
-taglib: popular audio formats. Currently it supports both ID3v1 and ID3v2
+taglib: popular audio formats. Currently it supports both ID3v1 and ID3v2
taglib: for MP3 files, Ogg Vorbis comments and ID3 tags and Vorbis comments
taglib: in FLAC files.
taglib:
diff --git a/source/l/taglib/taglib.SlackBuild b/source/l/taglib/taglib.SlackBuild
index 9841c232b..94e93a0c2 100755
--- a/source/l/taglib/taglib.SlackBuild
+++ b/source/l/taglib/taglib.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,8 +21,11 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=taglib
VERSION=${VERSION:-$(echo taglib-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -34,6 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -50,7 +61,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=/tmp/package-taglib
@@ -75,6 +85,7 @@ cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SHARED_LINKER_FLAGS="-lstdc++" \
-DLIB_SUFFIX="${LIBDIRSUFFIX}" \
+ -DBUILD_SHARED_LIBS=ON \
-DWITH_MP4=ON \
-DWITH_ASF=ON \
.
diff --git a/source/l/talloc/slack-desc b/source/l/talloc/slack-desc
new file mode 100644
index 000000000..ca91dee12
--- /dev/null
+++ b/source/l/talloc/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+talloc: talloc (memory pool system library)
+talloc:
+talloc: Talloc is a hierarchical, reference counted memory pool system with
+talloc: destructors. It is the core memory allocator used in Samba.
+talloc:
+talloc: Homepage: https://talloc.samba.org
+talloc:
+talloc:
+talloc:
+talloc:
+talloc:
diff --git a/source/l/talloc/talloc.SlackBuild b/source/l/talloc/talloc.SlackBuild
new file mode 100755
index 000000000..aeab90c74
--- /dev/null
+++ b/source/l/talloc/talloc.SlackBuild
@@ -0,0 +1,153 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=talloc
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-rpath \
+ --disable-rpath-install \
+ --bundled-libraries=NONE \
+ --builtin-libraries=replace \
+ --disable-silent-rules \
+ --extra-python=/usr/bin/python3 \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS COPYING* NEWS README* THANKS TODO \
+ web/index.html \
+ doc \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/tango-icon-theme-extras/slack-desc b/source/l/tango-icon-theme-extras/slack-desc
index a49bc5d40..c365a206c 100644
--- a/source/l/tango-icon-theme-extras/slack-desc
+++ b/source/l/tango-icon-theme-extras/slack-desc
@@ -1,18 +1,18 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
tango-icon-theme-extras: tango-icon-theme-extras (Extras for the Tango icon theme)
tango-icon-theme-extras:
-tango-icon-theme-extras: This is an extension to the Tango Icon Theme. Currently it includes
+tango-icon-theme-extras: This is an extension to the Tango Icon Theme. Currently it includes
tango-icon-theme-extras: Tango icons for iPod Digital Audio Player (DAP) devices and the Dell
tango-icon-theme-extras: Pocket DJ DAP.
tango-icon-theme-extras:
-tango-icon-theme-extras: Visit the Tango project at: http://tango-project.org/
+tango-icon-theme-extras: Visit the Tango project at: http://tango-project.org/
tango-icon-theme-extras:
tango-icon-theme-extras:
tango-icon-theme-extras:
diff --git a/source/l/tango-icon-theme-extras/tango-icon-theme-extras.SlackBuild b/source/l/tango-icon-theme-extras/tango-icon-theme-extras.SlackBuild
index 1f742e16a..c08c944cd 100755
--- a/source/l/tango-icon-theme-extras/tango-icon-theme-extras.SlackBuild
+++ b/source/l/tango-icon-theme-extras/tango-icon-theme-extras.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2006 Robby Workman (http://rlworkman.net)
-# Copyright 2007, 2008, 2009 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2007, 2008, 2009, 2018 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,16 +23,16 @@
# Modified by the SlackBuilds.org project
+cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=tango-icon-theme-extras
+PKGNAM=tango-icon-theme-extras
VERSION=0.1.0
ARCH=${ARCH:-noarch}
NUMJOBS=${NUMJOBS:-" -j7 "}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-$PRGNAM
+PKG=$TMP/package-$PKGNAM
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
@@ -44,13 +44,21 @@ elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2 || exit 1
-cd $PRGNAM-$VERSION || exit 1
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.bz2 || exit 1
+cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -72,10 +80,10 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
AUTHORS COPYING INSTALL NEWS README \
- $PKG/usr/doc/$PRGNAM-$VERSION
+ $PKG/usr/doc/$PKGNAM-$VERSION
# Compress and if needed symlink the man pages:
if [ -d $PKG/usr/man ]; then
@@ -96,5 +104,5 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PRGNAM-$VERSION-$ARCH-$BUILD.txz
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/tango-icon-theme/slack-desc b/source/l/tango-icon-theme/slack-desc
index 43ddaf433..171cfa21b 100644
--- a/source/l/tango-icon-theme/slack-desc
+++ b/source/l/tango-icon-theme/slack-desc
@@ -1,18 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
tango-icon-theme: Tango icon theme (Another standard icon theme)
tango-icon-theme:
tango-icon-theme: The Tango Desktop Project has designed a basic set of desktop icons
-tango-icon-theme: that follow the style guidelines. The set has been created as a
+tango-icon-theme: that follow the style guidelines. The set has been created as a
tango-icon-theme: proof of concept for the style, but works rather well as a replacement
tango-icon-theme: for the base theme under GNOME and KDE.
tango-icon-theme:
-tango-icon-theme: Tango's home page is: http://tango.freedesktop.org
+tango-icon-theme: Tango's home page is: http://tango.freedesktop.org
+tango-icon-theme:
tango-icon-theme:
tango-icon-theme:
diff --git a/source/l/tango-icon-theme/tango-icon-theme.SlackBuild b/source/l/tango-icon-theme/tango-icon-theme.SlackBuild
index a0ddd295a..f1647d1c5 100755
--- a/source/l/tango-icon-theme/tango-icon-theme.SlackBuild
+++ b/source/l/tango-icon-theme/tango-icon-theme.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009 Patrick Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2018 Patrick Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,12 +20,21 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=tango-icon-theme
VERSION=0.8.90
ARCH=noarch
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-tango-icon-theme
diff --git a/source/l/tdb/slack-desc b/source/l/tdb/slack-desc
new file mode 100644
index 000000000..bcb4907ad
--- /dev/null
+++ b/source/l/tdb/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+tdb: tdb (a trivial database library)
+tdb:
+tdb: Tdb is a simple database API. It was inspired by the realisation that
+tdb: in Samba there were several ad-hoc bits of code that essentially
+tdb: implement small databases for sharing structures.
+tdb:
+tdb: Homepage: https://tdb.samba.org
+tdb:
+tdb:
+tdb:
+tdb:
diff --git a/source/l/libmowgli/libmowgli.SlackBuild b/source/l/tdb/tdb.SlackBuild
index a43755588..a6866b2f8 100755
--- a/source/l/libmowgli/libmowgli.SlackBuild
+++ b/source/l/tdb/tdb.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,49 +20,64 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=libmowgli
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+PKGNAM=tdb
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
- arm*) export ARCH=arm ;;
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
# Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$( uname -m ) ;;
+ *) ARCH=$(uname -m) ;;
esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
fi
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
-PKG=$TMP/package-${PKGNAM}
+PKG=$TMP/package-$PKGNAM
+
rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
-rm -rf ${PKGNAM}-${VERSION}
-tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+cd $PKGNAM-$VERSION || exit 1
-# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -74,27 +89,43 @@ find . \
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --sysconfdir=/etc \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --disable-static \
- --build=$ARCH-slackware-linux
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-rpath \
+ --disable-rpath-install \
+ --bundled-libraries=NONE \
+ --builtin-libraries=replace \
+ --disable-silent-rules \
+ --extra-python=/usr/bin/python3 \
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
-# Hey ./configure, I wasn't joking:
-rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libgpod.a
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
# Strip binaries:
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ docs/* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
# Compress and link manpages, if any:
if [ -d $PKG/usr/man ]; then
( cd $PKG/usr/man
for manpagedir in $(find . -type d -name "man*") ; do
( cd $manpagedir
- for eachpage in $( find . -type l -maxdepth 1) ; do
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
ln -s $( readlink $eachpage ).gz $eachpage.gz
rm $eachpage
done
@@ -112,18 +143,9 @@ if [ -d $PKG/usr/info ]; then
)
fi
-# Add a documentation directory:
-mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
-# Usually I no longer install bloated ChangeLogs (unless I wrote them ;-),
-# or empty doc stubs, but if they are small, they don't hurt. And someday
-# the above mentioned files may contain something useful! :-)
-cp -a \
- AUTHORS COPYING* ChangeLog INSTALL NEWS README* TODO \
- $PKG/usr/doc/${PKGNAM}-$VERSION
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
-cd $TMP/package-${PKGNAM}
-/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/l/tevent/slack-desc b/source/l/tevent/slack-desc
new file mode 100644
index 000000000..58aa8023d
--- /dev/null
+++ b/source/l/tevent/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+tevent: tevent (event system library)
+tevent:
+tevent: Tevent is an event system based on the talloc memory management
+tevent: library. It is the core event system used in Samba.
+tevent:
+tevent: Homepage: https://tevent.samba.org
+tevent:
+tevent:
+tevent:
+tevent:
+tevent:
diff --git a/source/l/tevent/tevent.SlackBuild b/source/l/tevent/tevent.SlackBuild
new file mode 100755
index 000000000..cfeee1194
--- /dev/null
+++ b/source/l/tevent/tevent.SlackBuild
@@ -0,0 +1,151 @@
+#!/bin/bash
+
+# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=tevent
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Configure:
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --disable-rpath \
+ --disable-rpath-install \
+ --bundled-libraries=NONE \
+ --builtin-libraries=replace \
+ --disable-silent-rules \
+ --extra-python=/usr/bin/python3 \
+ --build=$ARCH-slackware-linux || exit 1
+
+# Build and install:
+make $NUMJOBS || make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ doc \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.?
+ )
+ done
+ )
+fi
+
+# Compress info files, if any:
+if [ -d $PKG/usr/info ]; then
+ ( cd $PKG/usr/info
+ rm -f dir
+ gzip -9 *
+ )
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/urwid/slack-desc b/source/l/urwid/slack-desc
index 5b1c5ac88..793c35ff1 100644
--- a/source/l/urwid/slack-desc
+++ b/source/l/urwid/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-------------------------------------------------------|
diff --git a/source/l/urwid/urwid.SlackBuild b/source/l/urwid/urwid.SlackBuild
index 084fc74ea..2786d54d0 100755
--- a/source/l/urwid/urwid.SlackBuild
+++ b/source/l/urwid/urwid.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for urwid
# Copyright 2009 Andrew Psaltis <ampsaltis@gmail.com>
-# Copyright 2012, 2016 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2012, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,9 +25,11 @@
# Modified by Robby Workman <rworkman@slackware.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=urwid
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -39,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -56,9 +65,10 @@ find . \
-exec chmod 644 {} \;
python setup.py install --root=$PKG || exit 1
+python3 setup.py install --root=$PKG || exit 1
-# Strip this package's sole library, wherever it might be
-find $PKG -name "str_util.so" -exec strip --strip-unneeded $PKG 2> /dev/null {} \;
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
# Include the code examples. They're pretty small, so they can't hurt, I guess.
diff --git a/source/l/utf8proc/slack-desc b/source/l/utf8proc/slack-desc
new file mode 100644
index 000000000..0f58d6b53
--- /dev/null
+++ b/source/l/utf8proc/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+utf8proc: utf8proc (Unicode processing library)
+utf8proc:
+utf8proc: utf8proc is a small, clean C library that provides Unicode
+utf8proc: normalization, case-folding, and other operations for data in the
+utf8proc: UTF-8 encoding. It was initially developed by Jan Behrens and the
+utf8proc: rest of the Public Software Group, who deserve nearly all of the
+utf8proc: credit for this package. With the blessing of the Public Software
+utf8proc: Group, the Julia developers have taken over development of utf8proc.
+utf8proc:
+utf8proc: Homepage: http://julialang.org/utf8proc/
+utf8proc:
diff --git a/source/l/utf8proc/utf8proc.SlackBuild b/source/l/utf8proc/utf8proc.SlackBuild
new file mode 100755
index 000000000..ae2110291
--- /dev/null
+++ b/source/l/utf8proc/utf8proc.SlackBuild
@@ -0,0 +1,144 @@
+#!/bin/bash
+
+# Copyright 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=utf8proc
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Get rid of /usr/local paths:
+sed -i "s|/usr/local|/usr|g" Makefile
+
+# Fix library directory:
+sed -i "s|libdir=\$(prefix)/lib|libdir=\$(prefix)/lib${LIBDIRSUFFIX}|g" Makefile
+
+# Configure, build, and install:
+mkdir build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DDOC_INSTALL_DIR="doc" \
+ -DMAN_INSTALL_DIR=/usr/man \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+cd ..
+make install DESTDIR=$PKG || exit 1
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+# Don't ship static libraries:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.a
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+## Compress manual pages:
+#find $PKG/usr/man -type f -exec gzip -9 {} \;
+#for i in $( find $PKG/usr/man -type l ) ; do
+# ln -s $( readlink $i ).gz $i.gz
+# rm $i
+#done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ AUTHORS* ChangeLog CHANGES COPYING* LICENSE* NEWS* README* THANKS* TODO* \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/source/l/v4l-utils/slack-desc b/source/l/v4l-utils/slack-desc
index 1f235d185..ea32c3682 100644
--- a/source/l/v4l-utils/slack-desc
+++ b/source/l/v4l-utils/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
v4l-utils: v4l-utils (libraries and utilities for video4linux)
v4l-utils:
v4l-utils: libv4l is a collection of libraries which adds a thin abstraction
-v4l-utils: layer on top of video4linux2 devices. The purpose of this (thin)
+v4l-utils: layer on top of video4linux2 devices. The purpose of this (thin)
v4l-utils: layer is to make it easy for application writers to support a wide
v4l-utils: variety of devices without having to write separate code for
-v4l-utils: different devices in the same class. Linux V4L2 and DVB API
+v4l-utils: different devices in the same class. Linux V4L2 and DVB API
v4l-utils: utilities are also included.
v4l-utils:
-v4l-utils: Homepage: http://linuxtv.org
+v4l-utils: Homepage: http://linuxtv.org
v4l-utils:
diff --git a/source/l/v4l-utils/v4l-utils.SlackBuild b/source/l/v4l-utils/v4l-utils.SlackBuild
index 38bf8385f..936732617 100755
--- a/source/l/v4l-utils/v4l-utils.SlackBuild
+++ b/source/l/v4l-utils/v4l-utils.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009 Eric Hameleers, Eindhoven, NL
-# Copyright 2009, 2010, 2011, 2013 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -21,10 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=v4l-utils
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j6}
@@ -38,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -60,7 +68,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
@@ -81,7 +89,7 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--infodir=/usr/info \
--disable-static \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
@@ -90,20 +98,6 @@ make install DESTDIR=$PKG || exit 1
# These shouldn't be used:
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
-# System udev files should go under /lib:
-if [ -r $PKG/etc/udev/rules.d/70-infrared.rules ]; then
- mkdir -p $PKG/lib/udev/rules.d
- mv $PKG/etc/udev/rules.d/70-infrared.rules $PKG/lib/udev/rules.d
- rmdir $PKG/etc/udev/rules.d 2> /dev/null
- rmdir $PKG/etc/udev 2> /dev/null
- rmdir $PKG/etc 2> /dev/null
- sed -i "s,/etc/udev/rules.d,/lib/udev/rules.d,g" $PKG/lib/udev/rules.d/70-infrared.rules
-fi
-
-# I'd rather see these remain in /etc where they have been:
-mv $PKG/lib/udev/rc_keymaps/* $PKG/etc/rc_keymaps
-rmdir $PKG/lib/udev/rc_keymaps
-
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/v4l-utils/v4l-utils.url b/source/l/v4l-utils/v4l-utils.url
new file mode 100644
index 000000000..ba7e09279
--- /dev/null
+++ b/source/l/v4l-utils/v4l-utils.url
@@ -0,0 +1 @@
+https://linuxtv.org/downloads/v4l-utils/
diff --git a/source/l/virtuoso-ose/slack-desc b/source/l/virtuoso-ose/slack-desc
index dd37d0c20..87d1732bd 100644
--- a/source/l/virtuoso-ose/slack-desc
+++ b/source/l/virtuoso-ose/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler-----------------------------------------------------|
diff --git a/source/l/virtuoso-ose/virtuoso-ose.SlackBuild b/source/l/virtuoso-ose/virtuoso-ose.SlackBuild
index 87454bb78..b7c6b9883 100755
--- a/source/l/virtuoso-ose/virtuoso-ose.SlackBuild
+++ b/source/l/virtuoso-ose/virtuoso-ose.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009, 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL
-# Copyright 2009, 2010, 2011, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=virtuoso-opensource
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-9}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -35,9 +37,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "virtuoso-ose-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:--j7}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-virtuoso-ose
@@ -73,8 +82,9 @@ find . \
# We disable building of all VADs because Slackware's version of Virtuoso is
# only used as backend for the Soprano/Nepomuk desktop search.
# This saves us a lot of megabytes.
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -I/usr/include/openssl-1.0" \
+CXXFLAGS="$SLKCFLAGS -I/usr/include/openssl-1.0" \
+LIBS="-L/usr/lib${LIBDIRSUFFIX}/openssl-1.0" \
LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
./configure \
--prefix=/usr \
@@ -89,12 +99,15 @@ LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
--disable-all-vads \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Do not clobber an existing .ini file:
mkdir -p $PKG/etc
mv $PKG/var/lib/virtuoso/db/virtuoso.ini $PKG/etc/virtuoso.ini.new
@@ -105,7 +118,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" \
mkdir -p $PKG/usr/doc/virtuoso-ose-$VERSION
cp -a \
- AUTHORS COPYING CREDITS LICENSE NEWS README* \
+ AUTHORS COPYING* CREDITS LICENSE NEWS README* \
$PKG/usr/doc/virtuoso-ose-$VERSION
mkdir -p $PKG/install
diff --git a/source/l/vte/fix_meta_alt_keybinding.patch b/source/l/vte/fix_meta_alt_keybinding.patch
deleted file mode 100644
index bd364be58..000000000
--- a/source/l/vte/fix_meta_alt_keybinding.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 180dcc578e13c6096e277fb853e7162db640f207 Mon Sep 17 00:00:00 2001
-From: Alexandre Rostovtsev <tetromino@gentoo.org>
-Date: Tue, 15 Nov 2011 03:06:40 -0500
-Subject: [PATCH] Map both gdk's Meta and Alt to vte's Meta for >=gtk+-3.2.2
- compatibility
-
-Also, since VTE_META_MASK is now a mask with multiple bits set, code that
-compares gdk key modifiers to VTE_META_MASK by numerical equality is no
-longer guaranteed to work. Therefore, for such comparisons a new function,
-vte_keymap_fixup_modifiers, is introduced; it ensures that if any bits
-matching matching VTE_META_MASK are set, then all are set.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=663779
----
- src/keymap.c | 15 +++++++++++++--
- src/keymap.h | 2 +-
- 2 files changed, 14 insertions(+), 3 deletions(-)
-
-diff --git a/src/keymap.c b/src/keymap.c
-index 9a21669..95b4c5b 100644
---- a/src/keymap.c
-+++ b/src/keymap.c
-@@ -990,6 +990,17 @@ static const struct _vte_keymap_group {
- {GDK_KEY (F35), _vte_keymap_GDK_F35},
- };
-
-+/* Restrict modifiers to the specified mask and ensure that VTE_META_MASK,
-+ * despite being a compound mask, is treated as indivisible. */
-+GdkModifierType
-+_vte_keymap_fixup_modifiers(GdkModifierType modifiers,
-+ GdkModifierType mask)
-+{
-+ if (modifiers & VTE_META_MASK)
-+ modifiers |= VTE_META_MASK;
-+ return modifiers & mask;
-+}
-+
- /* Map the specified keyval/modifier setup, dependent on the mode, to either
- * a literal string or a capability name. */
- void
-@@ -1104,7 +1115,7 @@ _vte_keymap_map(guint keyval,
- } else {
- fkey_mode = fkey_default;
- }
-- modifiers &= (GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
-+ modifiers = _vte_keymap_fixup_modifiers(modifiers, GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
-
- /* Search for the conditions. */
- for (i = 0; entries[i].normal_length || entries[i].special[0]; i++)
-@@ -1375,7 +1386,7 @@ _vte_keymap_key_add_key_modifiers(guint keyval,
- return;
- }
-
-- switch (modifiers & significant_modifiers) {
-+ switch (_vte_keymap_fixup_modifiers(modifiers, significant_modifiers)) {
- case 0:
- modifier = 0;
- break;
-diff --git a/src/keymap.h b/src/keymap.h
-index 243e22e..21d9b8e 100644
---- a/src/keymap.h
-+++ b/src/keymap.h
-@@ -27,7 +27,7 @@
-
- G_BEGIN_DECLS
-
--#define VTE_META_MASK GDK_META_MASK
-+#define VTE_META_MASK (GDK_META_MASK | GDK_MOD1_MASK)
- #define VTE_NUMLOCK_MASK GDK_MOD2_MASK
-
- /* Map the specified keyval/modifier setup, dependent on the mode, to either
---
-1.7.8.rc3
-
diff --git a/source/l/vte/slack-desc b/source/l/vte/slack-desc
index cc19a3e09..21d5b0c52 100644
--- a/source/l/vte/slack-desc
+++ b/source/l/vte/slack-desc
@@ -1,14 +1,14 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
vte: vte (terminal emulator widget)
vte:
-vte: VTE is a terminal emulator widget for use with GTK+. This package
+vte: VTE is a terminal emulator widget for use with GTK+. This package
vte: contains the VTE library and development files and a sample
vte: implementation (vte).
vte:
diff --git a/source/l/vte/vte.SlackBuild b/source/l/vte/vte.SlackBuild
index 34debeb33..3d77a8e8e 100755
--- a/source/l/vte/vte.SlackBuild
+++ b/source/l/vte/vte.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2006, 2007, 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2006, 2007, 2008, 2009, 2010, 2012, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=vte
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j7 "}
@@ -37,6 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -51,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}
@@ -60,7 +68,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1
-cd ${PKGNAM}-$VERSION
+cd ${PKGNAM}-$VERSION || exit 1
# Make sure ownerships and permissions are sane:
chown -R root:root .
@@ -70,11 +78,7 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# https://bugzilla.gnome.org/show_bug.cgi?id=663779
-zcat $CWD/fix_meta_alt_keybinding.patch.gz | patch -p1 || exit 1
-
-# Escape sequences can cause high CPU usage (CVE-2012-2738):
-zcat $CWD/vte.escape.cpu.usage.diff.gz | patch -p1 || exit 1
+./autogen.sh
# Configure:
CFLAGS="$SLKCFLAGS" \
@@ -85,17 +89,17 @@ CFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static \
- --disable-introspection \
- --enable-python \
- --enable-gnome-pty-helper \
- --with-gtk=2.0 \
- --with-default-emulation=xterm \
+ --enable-introspection \
+ --disable-vala \
--build=$ARCH-slackware-linux || exit 1
# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -128,7 +132,7 @@ mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
AUTHORS COPYING* HACKING INSTALL MAINTAINERS NEWS README* \
$PKG/usr/doc/${PKGNAM}-$VERSION
-ln -s /usr/share/gtk-doc/html/vte-0.0 $PKG/usr/doc/vte-$VERSION/html
+ln -s /usr/share/gtk-doc/html/vte-* $PKG/usr/doc/vte-$VERSION/html
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control:
diff --git a/source/l/vte/vte.escape.cpu.usage.diff b/source/l/vte/vte.escape.cpu.usage.diff
deleted file mode 100644
index e82cf4687..000000000
--- a/source/l/vte/vte.escape.cpu.usage.diff
+++ /dev/null
@@ -1,89 +0,0 @@
---- ./src/table.c.orig 2011-08-16 16:52:48.000000000 -0500
-+++ ./src/table.c 2012-08-08 21:25:15.080344805 -0500
-@@ -550,7 +550,7 @@
- if (G_UNLIKELY (*array == NULL)) {
- *array = g_value_array_new(1);
- }
-- g_value_set_long(&value, total);
-+ g_value_set_long(&value, CLAMP (total, 0, G_MAXUSHORT));
- g_value_array_append(*array, &value);
- } while (i++ < arginfo->length);
- g_value_unset(&value);
---- ./src/vteseq.c.orig 2011-08-16 16:52:48.000000000 -0500
-+++ ./src/vteseq.c 2012-08-08 21:25:15.104344804 -0500
-@@ -557,7 +557,7 @@
- GValueArray *params,
- VteTerminalSequenceHandler handler)
- {
-- vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXLONG);
-+ vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXUSHORT);
- }
-
- static void
-@@ -1392,7 +1392,7 @@
- static void
- vte_sequence_handler_DC (VteTerminal *terminal, GValueArray *params)
- {
-- vte_sequence_handler_multiple(terminal, params, vte_sequence_handler_dc);
-+ vte_sequence_handler_multiple_r(terminal, params, vte_sequence_handler_dc);
- }
-
- /* Delete a line at the current cursor position. */
-@@ -1785,7 +1785,7 @@
- static void
- vte_sequence_handler_RI (VteTerminal *terminal, GValueArray *params)
- {
-- vte_sequence_handler_multiple(terminal, params, vte_sequence_handler_nd);
-+ vte_sequence_handler_multiple_r(terminal, params, vte_sequence_handler_nd);
- }
-
- /* Save cursor (position). */
-@@ -2777,8 +2777,7 @@
- {
- GValue *value;
- VteScreen *screen;
-- long param, end, row;
-- int i;
-+ long param, end, row, i, limit;
- screen = terminal->pvt->screen;
- /* The default is one. */
- param = 1;
-@@ -2796,7 +2795,13 @@
- } else {
- end = screen->insert_delta + terminal->row_count - 1;
- }
-- /* Insert the new lines at the cursor. */
-+
-+ /* Only allow to insert as many lines as there are between this row
-+ * and the end of the scrolling region. See bug #676090.
-+ */
-+ limit = end - row + 1;
-+ param = MIN (param, limit);
-+
- for (i = 0; i < param; i++) {
- /* Clear a line off the end of the region and add one to the
- * top of the region. */
-@@ -2817,8 +2822,7 @@
- {
- GValue *value;
- VteScreen *screen;
-- long param, end, row;
-- int i;
-+ long param, end, row, i, limit;
-
- screen = terminal->pvt->screen;
- /* The default is one. */
-@@ -2837,6 +2841,13 @@
- } else {
- end = screen->insert_delta + terminal->row_count - 1;
- }
-+
-+ /* Only allow to delete as many lines as there are between this row
-+ * and the end of the scrolling region. See bug #676090.
-+ */
-+ limit = end - row + 1;
-+ param = MIN (param, limit);
-+
- /* Clear them from below the current cursor. */
- for (i = 0; i < param; i++) {
- /* Insert a line at the end of the region and remove one from
diff --git a/source/l/wavpack/slack-desc b/source/l/wavpack/slack-desc
index c53431229..981b6a6d6 100644
--- a/source/l/wavpack/slack-desc
+++ b/source/l/wavpack/slack-desc
@@ -1,20 +1,20 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
wavpack: wavpack (A lossless WAV file compressor)
wavpack:
-wavpack: Wavpack is a hybrid lossless wavefile compressor. Wavfile is
-wavpack: Copyright (c) 1998 - 2006 Conifer Software. All Rights Reserved.
+wavpack: Wavpack is a hybrid lossless wavefile compressor. Wavfile is
+wavpack: Copyright (c) 1998 - 2006 Conifer Software. All Rights Reserved.
wavpack:
wavpack: Wavpack is distributed under the BSD Software License.
wavpack:
-wavpack: Visit the wavpack project online: http://www.wavpack.com
+wavpack: Visit the wavpack project online: http://www.wavpack.com
wavpack:
wavpack:
wavpack:
diff --git a/source/l/wavpack/wavpack.SlackBuild b/source/l/wavpack/wavpack.SlackBuild
index 2f6ba82a5..ab3e0b1c2 100755
--- a/source/l/wavpack/wavpack.SlackBuild
+++ b/source/l/wavpack/wavpack.SlackBuild
@@ -1,11 +1,11 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2007 Erik Hanson erik@slackbuilds.org
# All rights reserved.
# Updated by Andrew Brouwers, abrouwers@gmail.com
# Modified by the SlackBuilds.org project
# Modified to build wavpack.
-# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,10 +25,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=wavpack
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -40,9 +41,16 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -89,6 +97,9 @@ CFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install-strip DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
AUTHORS NEWS README* \
diff --git a/source/l/xapian-core/slack-desc b/source/l/xapian-core/slack-desc
index 9505e7b8d..2b7ce8e7b 100644
--- a/source/l/xapian-core/slack-desc
+++ b/source/l/xapian-core/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
diff --git a/source/l/xapian-core/xapian-core.SlackBuild b/source/l/xapian-core/xapian-core.SlackBuild
index a98644ee1..b461bf624 100755
--- a/source/l/xapian-core/xapian-core.SlackBuild
+++ b/source/l/xapian-core/xapian-core.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2014, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# Copyright 2014 Eric Hameleers, Eindhoven, NL
# All rights reserved.
@@ -21,9 +21,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=xapian-core
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
NUMJOBS=${NUMJOBS:--j7}
@@ -39,6 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -61,7 +71,6 @@ case "$ARCH" in
*) TARGET=$ARCH-slackware-linux ;;
esac
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-$PKGNAM
@@ -69,7 +78,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $PKGNAM-$VERSION
-tar xvf $CWD/$PKGNAM-$VERSION.tar.xz || exit 1
+tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
cd $PKGNAM-$VERSION || exit 1
chown -R root:root .
@@ -95,6 +104,9 @@ CXXFLAGS="$SLKCFLAGS" \
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# Don't ship .la files:
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/zlib/slack-desc b/source/l/zlib/slack-desc
index 41f7b6455..92b39c809 100644
--- a/source/l/zlib/slack-desc
+++ b/source/l/zlib/slack-desc
@@ -1,19 +1,19 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
zlib: zlib (compression library)
zlib:
-zlib: zlib is a general purpose thread safe data compression library. The
+zlib: zlib is a general purpose thread safe data compression library. The
zlib: data format used by the zlib library is described by RFCs 1950 to
zlib: 1952 in the files ftp://ds.internic.net/rfc/rfc1950.txt (zlib format)
zlib: rfc1951.txt (deflate format) and rfc1952.txt (gzip format).
zlib:
-zlib:
+zlib: Homepage: http://www.zlib.net
zlib:
zlib:
zlib:
diff --git a/source/l/zlib/zlib.SlackBuild b/source/l/zlib/zlib.SlackBuild
index eb2842806..93a0e3787 100755
--- a/source/l/zlib/zlib.SlackBuild
+++ b/source/l/zlib/zlib.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2005-2012 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2005-2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,30 +20,35 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=zlib
-VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-zlib
-if [ "$ARCH" = "i386" ]; then
- SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -61,7 +66,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf zlib-$VERSION
-tar xvf $CWD/zlib-$VERSION.tar.?z* || exit 1
+tar xvf $CWD/zlib-$VERSION.tar.xz || exit 1
cd zlib-$VERSION || exit 1
chown -R root:root .
@@ -73,29 +78,11 @@ find . \
CFLAGS="$SLKCFLAGS" \
./configure \
- --prefix=/usr
-make clean
-make || exit 1
-CFLAGS="$SLKCFLAGS" \
-./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --shared
+ --shared || exit 1
make || exit 1
-
-mkdir -p $PKG/usr/include
-cp -a zlib.h zconf.h $PKG/usr/include
-chmod 644 $PKG/usr/include/*
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}
-cp -a libz.a libz.so* $PKG/usr/lib${LIBDIRSUFFIX}
-chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/*
-chmod 644 $PKG/usr/lib${LIBDIRSUFFIX}/libz.a
-mkdir -p $PKG/usr/man/man3
-cat zlib.3 | gzip -9c > $PKG/usr/man/man3/zlib.3.gz
-
-# Add pkgconfig file:
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
-cat zlib.pc > $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/zlib.pc
+make install DESTDIR=$PKG || exit 1
# Now that libkmod requires libz, we had better move the shared library
# up a level:
@@ -114,6 +101,17 @@ mkdir $PKG/lib${LIBDIRSUFFIX}
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
)
+# Move man page directory:
+mv $PKG/usr/share/man $PKG/usr
+rmdir $PKG/usr/share
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
mkdir -p $PKG/usr/doc/zlib-$VERSION
cp -a \
FAQ INDEX README* \